From 4638bf660f66b62dd26d1e4853665bb4731b6e2e Mon Sep 17 00:00:00 2001 From: apud Date: Wed, 5 Feb 2025 23:54:17 +0300 Subject: [PATCH 1/9] =?UTF-8?q?[u]=20=D0=A1=D0=BE=D0=B7=D0=B4=D0=B0=D0=BB?= =?UTF-8?q?=20=D1=81=D1=82=D0=B0=D1=80=D0=BE=D0=B2=D1=8B=D0=B9=20=D0=BD?= =?UTF-8?q?=D0=B0=D0=B1=D0=BE=D1=80=20=D1=88=D0=B0=D0=B1=D0=BB=D0=BE=D0=BD?= =?UTF-8?q?=D0=BE=D0=B2.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/App.vue | 20 +- frontend/src/layouts/AppHeader.vue | 15 ++ frontend/src/layouts/AppLayout.vue | 12 ++ frontend/src/layouts/index.js | 2 + frontend/src/views/HomeView.vue | 304 +++++++++++++++++++++++++++++ 5 files changed, 343 insertions(+), 10 deletions(-) create mode 100644 frontend/src/layouts/AppHeader.vue create mode 100644 frontend/src/layouts/AppLayout.vue create mode 100644 frontend/src/layouts/index.js create mode 100644 frontend/src/views/HomeView.vue diff --git a/frontend/src/App.vue b/frontend/src/App.vue index 2f88d12a..818e305a 100644 --- a/frontend/src/App.vue +++ b/frontend/src/App.vue @@ -1,14 +1,7 @@ + diff --git a/frontend/src/layouts/AppHeader.vue b/frontend/src/layouts/AppHeader.vue new file mode 100644 index 00000000..a627910b --- /dev/null +++ b/frontend/src/layouts/AppHeader.vue @@ -0,0 +1,15 @@ + diff --git a/frontend/src/layouts/AppLayout.vue b/frontend/src/layouts/AppLayout.vue new file mode 100644 index 00000000..7a52888d --- /dev/null +++ b/frontend/src/layouts/AppLayout.vue @@ -0,0 +1,12 @@ + + diff --git a/frontend/src/layouts/index.js b/frontend/src/layouts/index.js new file mode 100644 index 00000000..03a429a6 --- /dev/null +++ b/frontend/src/layouts/index.js @@ -0,0 +1,2 @@ +export { default as AppLayout } from "./AppLayout.vue"; +export { AppHeader } from "./AppHeader.vue"; diff --git a/frontend/src/views/HomeView.vue b/frontend/src/views/HomeView.vue new file mode 100644 index 00000000..0eb39e31 --- /dev/null +++ b/frontend/src/views/HomeView.vue @@ -0,0 +1,304 @@ + From 41ef75c9c3f7287c59123163f5066317d64b8f97 Mon Sep 17 00:00:00 2001 From: apud Date: Wed, 12 Feb 2025 16:32:07 +0300 Subject: [PATCH 2/9] =?UTF-8?q?[u]=20=D0=BF=D0=BE=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D0=BB=20=D0=B8=D0=BC=D0=BF=D0=BE=D1=80=D1=82=20=D1=84?= =?UTF-8?q?=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2=20,=20=D0=B4=D0=BE=D0=B1=D0=B0?= =?UTF-8?q?=D0=B2=D0=B8=D0=BB=20=D1=81=D1=82=D0=B8=D0=BB=D0=B8=D0=B7=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/App.vue | 57 +- frontend/src/common/helpers/normalize.js | 33 + frontend/src/layouts/AppHeader.vue | 136 +++ frontend/src/layouts/AppLayout.vue | 13 +- frontend/src/layouts/index.js | 1 - frontend/src/views/HomeView.vue | 1139 ++++++++++++++++++---- frontend/src/views/index.js | 1 + 7 files changed, 1107 insertions(+), 273 deletions(-) create mode 100644 frontend/src/common/helpers/normalize.js create mode 100644 frontend/src/views/index.js diff --git a/frontend/src/App.vue b/frontend/src/App.vue index 818e305a..a77a715f 100644 --- a/frontend/src/App.vue +++ b/frontend/src/App.vue @@ -4,59 +4,14 @@ - + + diff --git a/frontend/src/common/helpers/normalize.js b/frontend/src/common/helpers/normalize.js new file mode 100644 index 00000000..c52872b1 --- /dev/null +++ b/frontend/src/common/helpers/normalize.js @@ -0,0 +1,33 @@ +import doughSizes from "@/common/data/doughSizes"; +import ingredients from "@/common/data/ingredients"; +import sauces from "@/common/data/sauces"; +import sizes from "@/common/data/sizes"; + + +export const normalizeDough = (dough) => { + return { + ...dough, + value: doughSizes[dough.id], + }; +}; + +export const normalizeSize = (size) => { + return { + ...size, + value: sizes[size.id], + }; +}; + +export const normalizeIngredients = (ingredient) => { + return { + ...ingredient, + value: ingredients[ingredient.id], + }; +}; + +export const normalizeSauces = (sauce) => { + return { + ...sauce, + value: sauces[sauce.id], + }; +}; diff --git a/frontend/src/layouts/AppHeader.vue b/frontend/src/layouts/AppHeader.vue index a627910b..c244a96f 100644 --- a/frontend/src/layouts/AppHeader.vue +++ b/frontend/src/layouts/AppHeader.vue @@ -13,3 +13,139 @@ + + diff --git a/frontend/src/layouts/AppLayout.vue b/frontend/src/layouts/AppLayout.vue index 7a52888d..3fdf59c7 100644 --- a/frontend/src/layouts/AppLayout.vue +++ b/frontend/src/layouts/AppLayout.vue @@ -1,12 +1,7 @@ - diff --git a/frontend/src/layouts/index.js b/frontend/src/layouts/index.js index 03a429a6..bb6d74fc 100644 --- a/frontend/src/layouts/index.js +++ b/frontend/src/layouts/index.js @@ -1,2 +1 @@ export { default as AppLayout } from "./AppLayout.vue"; -export { AppHeader } from "./AppHeader.vue"; diff --git a/frontend/src/views/HomeView.vue b/frontend/src/views/HomeView.vue index 0eb39e31..cc09ff83 100644 --- a/frontend/src/views/HomeView.vue +++ b/frontend/src/views/HomeView.vue @@ -11,16 +11,22 @@

Выберите тесто

- - -
@@ -33,19 +39,23 @@

Выберите размер

- - -
+ + @@ -58,13 +68,13 @@

Основной соус:

- -
@@ -72,190 +82,20 @@

Начинка:

- - - - - - - -
- - -
-
-
-
-
-
-
-
-
- -
-

Итого: 0 ₽

- -
-
+ + + + + + + + + + @@ -152,6 +31,11 @@ import { normalizeSize, } from "@/common/helpers/normalize"; +import DoughSelector from "@/common/components/DoughSelector.vue"; +import SizeSelector from "@/common/components/SizeSelector.vue"; +import IngredientsSection from "@/common/components/IngredientsSection.vue"; +import PizzaDisplay from "@/common/components/PizzaDisplay.vue"; + import doughJSON from "@/mocks/dough.json"; import ingredientsJSON from "@/mocks/ingredients.json"; import saucesJSON from "@/mocks/sauces.json"; From df0df7263693b8e65ca25c4b5f987421846023db Mon Sep 17 00:00:00 2001 From: apud Date: Wed, 26 Mar 2025 16:54:11 +0300 Subject: [PATCH 5/9] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D1=80=D0=BD=D0=B3=20=D0=BA=D0=BE=D0=BC=D0=BF=D0=BE?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/common/components/DoughSelector.vue | 11 ++- .../common/components/IngredientsSection.vue | 11 ++- .../common/components/IngredientsSelector.vue | 98 ++++++++++++++----- .../src/common/components/PizzaDisplay.vue | 40 ++++++-- .../src/common/components/SauceSelector.vue | 16 ++- .../src/common/components/SizeSelector.vue | 10 +- frontend/src/views/HomeView.vue | 59 +++++++++-- 7 files changed, 189 insertions(+), 56 deletions(-) diff --git a/frontend/src/common/components/DoughSelector.vue b/frontend/src/common/components/DoughSelector.vue index 9281c925..ada5cf95 100644 --- a/frontend/src/common/components/DoughSelector.vue +++ b/frontend/src/common/components/DoughSelector.vue @@ -14,11 +14,13 @@ name="dought" :value="doughType.value" class="visually-hidden" - v-model="selectedDough" + :checked="doughType.value === modelValue" + @change="$emit('update:modelValue', doughType.value)" /> {{ doughType.name }} {{ doughType.description }} +
{{ modelValue }}
@@ -26,16 +28,19 @@ diff --git a/frontend/src/common/components/IngredientsSelector.vue b/frontend/src/common/components/IngredientsSelector.vue index a64f5b47..f7dd99e4 100644 --- a/frontend/src/common/components/IngredientsSelector.vue +++ b/frontend/src/common/components/IngredientsSelector.vue @@ -3,20 +3,38 @@

Начинка:

  • - - - {{ ingredientType.name }} + + + + {{ ingredient.name }} +
    - - -
    @@ -27,39 +45,65 @@