From 0cb0b0e5514f0ab81bc2c6d0ac3182ac67bbf3e3 Mon Sep 17 00:00:00 2001 From: oak Date: Tue, 12 Nov 2024 17:56:07 +0300 Subject: [PATCH] carrier instructions added in product --- proto | 2 +- .../managers/hero/utility/mapHeroFunction.ts | 12 + .../utility/validationForSelectHeroType.ts | 2 + .../genericProductComponent/care/care.scss | 61 ++ .../genericProductComponent/care/care.tsx | 72 ++ .../care/careInstruction.ts | 99 +++ .../care/careInstructions.tsx | 148 ++++ .../laundrySymbols/bleaching/Bleichen.svg | 18 + .../bleaching/Nicht_bleichen_v2.svg | 30 + .../bleaching/Sauerstoffbleichen.svg | 30 + .../care/laundrySymbols/drying/Chem_nein.svg | 80 +++ .../drying/Trocknen_(leine).svg | 25 + .../drying/Trocknen_(leine_im_schatten).svg | 36 + .../drying/Trocknen_(liegend).svg | 25 + .../drying/Trocknen_(liegend_im_schatten).svg | 36 + .../drying/Trocknen_(schatten).svg | 29 + .../drying/Trocknen_(tropfnass).svg | 33 + .../Trocknen_(tropfnass_im_schatten).svg | 44 ++ .../drying/Trockner_hohe_Temperatur.svg | 634 ++++++++++++++++++ .../drying/Trockner_wenig_Temperatur.svg | 624 +++++++++++++++++ .../laundrySymbols/drying/Trommeltrocknen.svg | 25 + ...undry-tumble-dry-high-temperature-icon.svg | 1 + .../ironing/B\303\274geln_1.svg" | 34 + .../ironing/B\303\274geln_2.svg" | 38 ++ .../ironing/B\303\274geln_3.svg" | 45 ++ .../ironing/Nicht_b\303\274geln.svg" | 43 ++ .../laundry-iron-do-not-steam-icon.svg | 1 + .../0596f341-6ef0-4c83-b0a4-cd2cc052ab5b.svg | 1 + .../dry/Nicht_chemisch_reinigen.svg | 44 ++ .../dry/Professionelle_reinigung_(F).svg | 23 + .../dry/Professionelle_reinigung_(P).svg | 23 + .../dry/Professionelle_reinigung_(P)s.svg | 27 + .../dry/Professionelle_reinigung_(P)ss.svg | 31 + .../wet/Professionelle_reinigung_(W).svg | 23 + .../wet/Professionelle_reinigung_(W)s.svg | 27 + .../wet/Professionelle_reinigung_(W)ss.svg | 31 + ...0\265\321\211\320\265\320\275\320\260.svg" | 85 +++ .../washing/Handw\303\244sche.svg" | 33 + .../washing/ISO_7000_-_Ref-No_3097.svg | 15 + .../washing/Laundry_symbol_wash_delicate.svg | 1 + .../Laundry_symbol_wash_very_delicate.svg | 1 + .../laundrySymbols/washing/Nicht_waschen.svg | 52 ++ .../care/laundrySymbols/washing/Waschen.svg | 25 + .../laundrySymbols/washing/Waschen_30 (1).svg | 6 + .../laundrySymbols/washing/Waschen_40.svg | 42 ++ .../laundrySymbols/washing/Waschen_50.svg | 30 + .../laundrySymbols/washing/Waschen_60.svg | 30 + .../genericProductComponent.tsx | 8 + .../utility/productInitialValues.ts | 2 + src/types/svg.d.ts | 4 + webpack.config.js | 4 + 51 files changed, 2794 insertions(+), 1 deletion(-) create mode 100644 src/components/managers/products/genericProductComponent/care/care.scss create mode 100644 src/components/managers/products/genericProductComponent/care/care.tsx create mode 100644 src/components/managers/products/genericProductComponent/care/careInstruction.ts create mode 100644 src/components/managers/products/genericProductComponent/care/careInstructions.tsx create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Bleichen.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Nicht_bleichen_v2.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Sauerstoffbleichen.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Chem_nein.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(leine).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(leine_im_schatten).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(liegend).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(liegend_im_schatten).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(schatten).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(tropfnass).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(tropfnass_im_schatten).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trockner_hohe_Temperatur.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trockner_wenig_Temperatur.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trommeltrocknen.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/laundry-tumble-dry-high-temperature-icon.svg create mode 100644 "src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_1.svg" create mode 100644 "src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_2.svg" create mode 100644 "src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_3.svg" create mode 100644 "src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/Nicht_b\303\274geln.svg" create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/laundry-iron-do-not-steam-icon.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/0596f341-6ef0-4c83-b0a4-cd2cc052ab5b.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Nicht_chemisch_reinigen.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(F).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)s.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)ss.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)s.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)ss.svg create mode 100644 "src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/\320\234\320\276\320\272\321\200\320\260\321\217_\321\207\320\270\321\201\321\202\320\272\320\260_\320\267\320\260\320\277\321\200\320\265\321\211\320\265\320\275\320\260.svg" create mode 100644 "src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Handw\303\244sche.svg" create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/ISO_7000_-_Ref-No_3097.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Laundry_symbol_wash_delicate.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Laundry_symbol_wash_very_delicate.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Nicht_waschen.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_30 (1).svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_40.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_50.svg create mode 100644 src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_60.svg create mode 100644 src/types/svg.d.ts diff --git a/proto b/proto index ebee71bb..baddaf68 160000 --- a/proto +++ b/proto @@ -1 +1 @@ -Subproject commit ebee71bb656ba4f34aedeca192a66c250661242a +Subproject commit baddaf688e259f3076dd21cc72ff9499b87b804e diff --git a/src/components/managers/hero/utility/mapHeroFunction.ts b/src/components/managers/hero/utility/mapHeroFunction.ts index 083c3ec3..6e81bbe5 100644 --- a/src/components/managers/hero/utility/mapHeroFunction.ts +++ b/src/components/managers/hero/utility/mapHeroFunction.ts @@ -46,6 +46,12 @@ export const mapHeroFunction = (hero?: common_HeroFull | undefined): common_Hero exploreLink: entity.featuredProducts?.exploreLink, exploreText: entity.featuredProducts?.exploreText, }, + featuredProductsTag: { + tag: entity.featuredProductsTag?.tag, + title: entity.featuredProductsTag?.products?.title, + exploreLink: entity.featuredProductsTag?.products?.exploreLink, + exploreText: entity.featuredProductsTag?.products?.exploreText + } })), }; }; @@ -83,6 +89,12 @@ export const emptyHeroForm: common_HeroFullInsert = { title: '', exploreLink: '', exploreText: '' + }, + featuredProductsTag: { + tag: '', + title: '', + exploreLink: '', + exploreText: '' } } ] diff --git a/src/components/managers/hero/utility/validationForSelectHeroType.ts b/src/components/managers/hero/utility/validationForSelectHeroType.ts index f4b36632..1be4c3f5 100644 --- a/src/components/managers/hero/utility/validationForSelectHeroType.ts +++ b/src/components/managers/hero/utility/validationForSelectHeroType.ts @@ -14,6 +14,8 @@ export const validationForSelectHeroType: Record !entity.featuredProducts?.productIds || entity.featuredProducts.productIds.length === 0, + HERO_TYPE_FEATURED_PRODUCTS_TAG: (entity: common_HeroEntityInsert) => + !entity.featuredProductsTag?.tag, HERO_TYPE_UNKNOWN: (entity: common_HeroEntityInsert) => false, } \ No newline at end of file diff --git a/src/components/managers/products/genericProductComponent/care/care.scss b/src/components/managers/products/genericProductComponent/care/care.scss new file mode 100644 index 00000000..7bcd421e --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/care.scss @@ -0,0 +1,61 @@ +.care-instructions-container { + cursor: pointer; + border: 1px solid #000; + padding: 0.5rem; + position: relative; + transition: all 0.2s ease; + display: grid; + + align-items: center; + justify-content: center; + + .care-card { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + padding: 0.5rem; + + .care-card-img-container { + display: flex; + justify-content: center; + flex: 0 0 auto; + } + + .care-card-text { + flex: 1 1 auto; + display: flex; + align-items: center; + justify-content: center; + text-align: center; + max-width: 100%; + overflow-wrap: break-word; + + .text { + word-break: break-word; + hyphens: auto; + width: 100%; + } + } + } + + &[data-selected='true'] { + border-color: var(--mui-primary-main, #000); + background-color: var(--mui-action-selected, rgba(0, 0, 0, 0.08)); + } + + &:hover { + background-color: rgba(0, 0, 0, 0.04); + } + + &:before { + content: ''; + display: block; + padding-top: 100%; + } +} diff --git a/src/components/managers/products/genericProductComponent/care/care.tsx b/src/components/managers/products/genericProductComponent/care/care.tsx new file mode 100644 index 00000000..37d6b81a --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/care.tsx @@ -0,0 +1,72 @@ +import { Button, Grid, Typography } from '@mui/material'; +import { common_ProductNew } from 'api/proto-http/admin'; +import { useFormikContext } from 'formik'; +import { FC, useState } from 'react'; +import { CareInstructions } from './careInstructions'; + +interface SelectedInstructions { + [category: string]: string; +} + +export const Care: FC = () => { + const [isCareTableOpen, setIsCareTableOpen] = useState(false); + const { values, setFieldValue } = useFormikContext(); + const [selectedInstructions, setSelectedInstructions] = useState({}); + + // ... existing code ... + const handleSelectCareInstruction = ( + category: string, + method: string, + code: string, + subCategory?: string, + ) => { + setSelectedInstructions((prev) => { + const newState = { ...prev }; + + if (category === 'Professional Care' && subCategory) { + const selectionKey = `${category}-${subCategory}`; + + if (prev[selectionKey] === code) { + delete newState[selectionKey]; + } else { + newState[selectionKey] = code; + } + } else { + if (prev[category] === code) { + delete newState[category]; + } else { + newState[category] = code; + } + } + + setFieldValue('product.productBody.careInstructions', Object.values(newState).join(',')); + return newState; + }); + }; + + const handleOpenCareTable = () => { + setIsCareTableOpen(true); + }; + + const handleCloseCareTable = () => { + setIsCareTableOpen(false); + }; + + return ( + + + {Object.keys(selectedInstructions).length > 0 && ( + + Selected Instructions: + {Object.values(selectedInstructions).join(', ')} + + )} + + + ); +}; diff --git a/src/components/managers/products/genericProductComponent/care/careInstruction.ts b/src/components/managers/products/genericProductComponent/care/careInstruction.ts new file mode 100644 index 00000000..9310c797 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/careInstruction.ts @@ -0,0 +1,99 @@ +import BA from './laundrySymbols/bleaching/Bleichen.svg'; +import DNB from './laundrySymbols/bleaching/Nicht_bleichen_v2.svg'; +import NCB from './laundrySymbols/bleaching/Sauerstoffbleichen.svg'; +import DNTD from './laundrySymbols/drying/Chem_nein.svg'; +import TDH from './laundrySymbols/drying/laundry-tumble-dry-high-temperature-icon.svg'; +import LD from './laundrySymbols/drying/Trocknen_(leine).svg'; +import LDS from './laundrySymbols/drying/Trocknen_(leine_im_schatten).svg'; +import DF from './laundrySymbols/drying/Trocknen_(liegend).svg'; +import DFS from './laundrySymbols/drying/Trocknen_(liegend_im_schatten).svg'; +import DIS from './laundrySymbols/drying/Trocknen_(schatten).svg'; +import DD from './laundrySymbols/drying/Trocknen_(tropfnass).svg'; +import DDS from './laundrySymbols/drying/Trocknen_(tropfnass_im_schatten).svg'; +import TDM from './laundrySymbols/drying/Trockner_hohe_Temperatur.svg'; +import TDL from './laundrySymbols/drying/Trockner_wenig_Temperatur.svg'; +import TDN from './laundrySymbols/drying/Trommeltrocknen.svg'; +import IL from './laundrySymbols/ironing/Bügeln_1.svg'; +import IM from './laundrySymbols/ironing/Bügeln_2.svg'; +import IH from './laundrySymbols/ironing/Bügeln_3.svg'; +import DNS from './laundrySymbols/ironing/laundry-iron-do-not-steam-icon.svg'; +import DNI from './laundrySymbols/ironing/Nicht_bügeln.svg'; +import DCAS from './laundrySymbols/professional-care/dry/0596f341-6ef0-4c83-b0a4-cd2cc052ab5b.svg'; +import DNDC from './laundrySymbols/professional-care/dry/Nicht_chemisch_reinigen.svg'; +import DCPS from './laundrySymbols/professional-care/dry/Professionelle_reinigung_(F).svg'; +import DCASE from './laundrySymbols/professional-care/dry/Professionelle_reinigung_(P).svg'; +import GDC from './laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)s.svg'; +import VGDC from './laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)ss.svg'; +import PWC from './laundrySymbols/professional-care/wet/Professionelle_reinigung_(W).svg'; +import GPWC from './laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)s.svg'; +import VGPWC from './laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)ss.svg'; +import DNWC from './laundrySymbols/professional-care/wet/Мокрая_чистка_запрещена.svg'; +import HW from './laundrySymbols/washing/Handwäsche.svg'; +import MW95 from './laundrySymbols/washing/ISO_7000_-_Ref-No_3097.svg'; +import GW from './laundrySymbols/washing/Laundry_symbol_wash_delicate.svg'; +import VGW from './laundrySymbols/washing/Laundry_symbol_wash_very_delicate.svg'; +import DNW from './laundrySymbols/washing/Nicht_waschen.svg'; +import MWN from './laundrySymbols/washing/Waschen.svg'; +import MW30 from './laundrySymbols/washing/Waschen_30 (1).svg'; +import MW40 from './laundrySymbols/washing/Waschen_40.svg'; +import MW50 from './laundrySymbols/washing/Waschen_50.svg'; +import MW60 from './laundrySymbols/washing/Waschen_60.svg'; + +export const careInstruction = { + "care_instructions": { + "Washing": { + "Machine Wash Normal": { code: "MWN", img: MWN }, + "Machine Wash Cold (30°C)": { code: "MW30", img: MW30 }, + "Machine Wash Warm (40°C)": { code: "MW40", img: MW40 }, + "Machine Wash Hot (50°C)": { code: "MW50", img: MW50 }, + "Machine Wash Very Hot (60°C)": { code: "MW60", img: MW60 }, + "Machine Wash Boiling (95°C)": { code: "MW95", img: MW95 }, + "Gentle Wash": { code: "GW", img: GW }, + "Very Gentle Wash": { code: "VGW", img: VGW }, + "Hand Wash Only": { code: "HW", img: HW }, + "Do Not Wash": { code: "DNW", img: DNW } + }, + "Bleaching": { + "Bleach Allowed": { code: "BA", img: BA }, + "Non-Chlorine Bleach Only": { code: "NCB", img: NCB }, + "Do Not Bleach": { code: "DNB", img: DNB } + }, + "Drying": { + "Tumble Dry Normal": { code: "TDN", img: TDN }, + "Tumble Dry Low Heat": { code: "TDL", img: TDL }, + "Tumble Dry Medium Heat": { code: "TDM", img: TDM }, + "Tumble Dry High Heat": { code: "TDH", img: TDH }, + "Do Not Tumble Dry": { code: "DNTD", img: DNTD }, + "Line Dry": { code: "LD", img: LD }, + "Dry Flat": { code: "DF", img: DF }, + "Drip Dry": { code: "DD", img: DD }, + "Dry in Shade": { code: "DIS", img: DIS }, + "Line Dry in Shade": { code: "LDS", img: LDS }, + "Dry Flat in Shade": { code: "DFS", img: DFS }, + "Drip Dry in Shade": { code: "DDS", img: DDS } + }, + "Ironing": { + "Iron at Low Temperature (110°C)": { code: "IL", img: IL }, + "Iron at Medium Temperature (150°C)": { code: "IM", img: IM }, + "Iron at High Temperature (200°C)": { code: "IH", img: IH }, + "Do Not Steam": { code: "DNS", img: DNS }, + "Do Not Iron": { code: "DNI", img: DNI } + }, + "Professional Care": { + "Dry Cleaning": { + "Dry Clean with Any Solvent": { code: "DCAS", img: DCAS }, + "Dry Clean with Petroleum Solvent Only": { code: "DCPS", img: DCPS }, + "Dry Clean with Any Solvent Except Trichloroethylene": { code: "DCASE", img: DCASE }, + "Gentle Dry Clean with Any Solvent Except Trichloroethylene": { code: "GDC", img: GDC }, + "Very Gentle Dry Clean with Any Solvent Except Trichloroethylene": { code: "VGDC", img: VGDC }, + "Do Not Dry Clean": { code: "DNDC", img: DNDC } + }, + "Wet Cleaning": { + "Professional Wet Clean": { code: "PWC", img: PWC }, + "Gentle Professional Wet Clean": { code: "GPWC", img: GPWC }, + "Very Gentle Professional Wet Clean": { code: "VGPWC", img: VGPWC }, + "Do Not Wet Clean": { code: "DNWC", img: DNWC } + } + } + }, +}; diff --git a/src/components/managers/products/genericProductComponent/care/careInstructions.tsx b/src/components/managers/products/genericProductComponent/care/careInstructions.tsx new file mode 100644 index 00000000..b83fad94 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/careInstructions.tsx @@ -0,0 +1,148 @@ +import { + Dialog, + FormControl, + FormControlLabel, + Grid, + Radio, + RadioGroup, + Typography, + useMediaQuery, + useTheme, +} from '@mui/material'; +import { FC, useState } from 'react'; +import styles from './care.scss'; +import { careInstruction } from './careInstruction'; + +interface SelectedInstructions { + [category: string]: string; +} + +interface CareInstructionsProps { + isCareTableOpen: boolean; + close: () => void; + onSelectCareInstruction: ( + category: string, + method: string, + code: string, + subCategory?: string, + ) => void; + selectedInstructions: SelectedInstructions; +} + +export const CareInstructions: FC = ({ + isCareTableOpen, + close, + onSelectCareInstruction, + selectedInstructions, +}) => { + const careCategories = Object.keys(careInstruction.care_instructions); + const [selectedCare, setSelectedCare] = useState(null); + const theme = useTheme(); + const isMobile = useMediaQuery(theme.breakpoints.down('sm')); + + const handleSelectCare = (category: string) => { + setSelectedCare(category); + }; + + const renderCareMethods = (methods: Record, subCategory?: string) => { + return Object.entries(methods).map(([method, codeOrSubMethods]) => { + if (typeof codeOrSubMethods === 'object' && codeOrSubMethods !== null) { + if ('code' in codeOrSubMethods || 'img' in codeOrSubMethods) { + const { code, img } = codeOrSubMethods; + const selectionKey = subCategory ? `${selectedCare!}-${subCategory}` : selectedCare!; + const isSelected = selectedInstructions[selectionKey] === code; + + return ( + + onSelectCareInstruction(selectedCare!, method, code, subCategory)} + className={styles['care-instructions-container']} + data-selected={isSelected} + > + + {img && ( + + {method} + + )} + + + {method} + + + + + + ); + } else { + return ( + + + {method} + + + {renderCareMethods(codeOrSubMethods, method)} + + + ); + } + } + return null; + }); + }; + + return ( + + + + + handleSelectCare(e.target.value)} + sx={{ gap: 4 }} + > + {careCategories.map((category) => ( + } + label={category} + /> + ))} + + + + {selectedCare && ( + + + {renderCareMethods( + careInstruction.care_instructions[ + selectedCare as keyof typeof careInstruction.care_instructions + ], + )} + + + )} + + + ); +}; diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Bleichen.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Bleichen.svg new file mode 100644 index 00000000..897afe70 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Bleichen.svg @@ -0,0 +1,18 @@ + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Nicht_bleichen_v2.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Nicht_bleichen_v2.svg new file mode 100644 index 00000000..a2ab89ea --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Nicht_bleichen_v2.svg @@ -0,0 +1,30 @@ + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Sauerstoffbleichen.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Sauerstoffbleichen.svg new file mode 100644 index 00000000..526dbc1f --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/bleaching/Sauerstoffbleichen.svg @@ -0,0 +1,30 @@ + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Chem_nein.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Chem_nein.svg new file mode 100644 index 00000000..272573e8 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Chem_nein.svg @@ -0,0 +1,80 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(leine).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(leine).svg new file mode 100644 index 00000000..a4c0e94a --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(leine).svg @@ -0,0 +1,25 @@ + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(leine_im_schatten).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(leine_im_schatten).svg new file mode 100644 index 00000000..2b1904c2 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(leine_im_schatten).svg @@ -0,0 +1,36 @@ + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(liegend).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(liegend).svg new file mode 100644 index 00000000..7b6ff347 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(liegend).svg @@ -0,0 +1,25 @@ + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(liegend_im_schatten).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(liegend_im_schatten).svg new file mode 100644 index 00000000..849d1470 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(liegend_im_schatten).svg @@ -0,0 +1,36 @@ + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(schatten).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(schatten).svg new file mode 100644 index 00000000..9ffa7fc7 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(schatten).svg @@ -0,0 +1,29 @@ + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(tropfnass).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(tropfnass).svg new file mode 100644 index 00000000..89e4beb7 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(tropfnass).svg @@ -0,0 +1,33 @@ + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(tropfnass_im_schatten).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(tropfnass_im_schatten).svg new file mode 100644 index 00000000..1c606405 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trocknen_(tropfnass_im_schatten).svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trockner_hohe_Temperatur.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trockner_hohe_Temperatur.svg new file mode 100644 index 00000000..d813f0a9 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trockner_hohe_Temperatur.svg @@ -0,0 +1,634 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trockner_wenig_Temperatur.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trockner_wenig_Temperatur.svg new file mode 100644 index 00000000..46a3536d --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trockner_wenig_Temperatur.svg @@ -0,0 +1,624 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trommeltrocknen.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trommeltrocknen.svg new file mode 100644 index 00000000..b42b2f46 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/Trommeltrocknen.svg @@ -0,0 +1,25 @@ + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/laundry-tumble-dry-high-temperature-icon.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/laundry-tumble-dry-high-temperature-icon.svg new file mode 100644 index 00000000..d1527d02 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/drying/laundry-tumble-dry-high-temperature-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git "a/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_1.svg" "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_1.svg" new file mode 100644 index 00000000..df8075eb --- /dev/null +++ "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_1.svg" @@ -0,0 +1,34 @@ + + + + + + + + + + + + diff --git "a/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_2.svg" "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_2.svg" new file mode 100644 index 00000000..038fcbca --- /dev/null +++ "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_2.svg" @@ -0,0 +1,38 @@ + + + + + + + + + + + + + diff --git "a/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_3.svg" "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_3.svg" new file mode 100644 index 00000000..9e3fdb88 --- /dev/null +++ "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/B\303\274geln_3.svg" @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + diff --git "a/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/Nicht_b\303\274geln.svg" "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/Nicht_b\303\274geln.svg" new file mode 100644 index 00000000..11c5877e --- /dev/null +++ "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/Nicht_b\303\274geln.svg" @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/laundry-iron-do-not-steam-icon.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/laundry-iron-do-not-steam-icon.svg new file mode 100644 index 00000000..16d48468 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/ironing/laundry-iron-do-not-steam-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/0596f341-6ef0-4c83-b0a4-cd2cc052ab5b.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/0596f341-6ef0-4c83-b0a4-cd2cc052ab5b.svg new file mode 100644 index 00000000..ae0c6464 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/0596f341-6ef0-4c83-b0a4-cd2cc052ab5b.svg @@ -0,0 +1 @@ +dryclean-any-solvent \ No newline at end of file diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Nicht_chemisch_reinigen.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Nicht_chemisch_reinigen.svg new file mode 100644 index 00000000..2ed60403 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Nicht_chemisch_reinigen.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(F).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(F).svg new file mode 100644 index 00000000..69533ef9 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(F).svg @@ -0,0 +1,23 @@ + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P).svg new file mode 100644 index 00000000..b451e958 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P).svg @@ -0,0 +1,23 @@ + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)s.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)s.svg new file mode 100644 index 00000000..856b96b4 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)s.svg @@ -0,0 +1,27 @@ + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)ss.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)ss.svg new file mode 100644 index 00000000..7c0ec336 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/dry/Professionelle_reinigung_(P)ss.svg @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W).svg new file mode 100644 index 00000000..a7f1f1d7 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W).svg @@ -0,0 +1,23 @@ + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)s.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)s.svg new file mode 100644 index 00000000..4032908e --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)s.svg @@ -0,0 +1,27 @@ + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)ss.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)ss.svg new file mode 100644 index 00000000..0435f287 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/Professionelle_reinigung_(W)ss.svg @@ -0,0 +1,31 @@ + + + + + + + + + diff --git "a/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/\320\234\320\276\320\272\321\200\320\260\321\217_\321\207\320\270\321\201\321\202\320\272\320\260_\320\267\320\260\320\277\321\200\320\265\321\211\320\265\320\275\320\260.svg" "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/\320\234\320\276\320\272\321\200\320\260\321\217_\321\207\320\270\321\201\321\202\320\272\320\260_\320\267\320\260\320\277\321\200\320\265\321\211\320\265\320\275\320\260.svg" new file mode 100644 index 00000000..47bee308 --- /dev/null +++ "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/professional-care/wet/\320\234\320\276\320\272\321\200\320\260\321\217_\321\207\320\270\321\201\321\202\320\272\320\260_\320\267\320\260\320\277\321\200\320\265\321\211\320\265\320\275\320\260.svg" @@ -0,0 +1,85 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git "a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Handw\303\244sche.svg" "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Handw\303\244sche.svg" new file mode 100644 index 00000000..eaa41c63 --- /dev/null +++ "b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Handw\303\244sche.svg" @@ -0,0 +1,33 @@ + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/ISO_7000_-_Ref-No_3097.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/ISO_7000_-_Ref-No_3097.svg new file mode 100644 index 00000000..097a12c9 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/ISO_7000_-_Ref-No_3097.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Laundry_symbol_wash_delicate.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Laundry_symbol_wash_delicate.svg new file mode 100644 index 00000000..a4378c34 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Laundry_symbol_wash_delicate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Laundry_symbol_wash_very_delicate.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Laundry_symbol_wash_very_delicate.svg new file mode 100644 index 00000000..72ffd5e2 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Laundry_symbol_wash_very_delicate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Nicht_waschen.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Nicht_waschen.svg new file mode 100644 index 00000000..3859f4d1 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Nicht_waschen.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen.svg new file mode 100644 index 00000000..d4691862 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen.svg @@ -0,0 +1,25 @@ + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_30 (1).svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_30 (1).svg new file mode 100644 index 00000000..6344ce85 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_30 (1).svg @@ -0,0 +1,6 @@ + + + +30 + \ No newline at end of file diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_40.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_40.svg new file mode 100644 index 00000000..a04cbfc8 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_40.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_50.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_50.svg new file mode 100644 index 00000000..c882032a --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_50.svg @@ -0,0 +1,30 @@ + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_60.svg b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_60.svg new file mode 100644 index 00000000..02cffcc3 --- /dev/null +++ b/src/components/managers/products/genericProductComponent/care/laundrySymbols/washing/Waschen_60.svg @@ -0,0 +1,30 @@ + + + + + + + + + + diff --git a/src/components/managers/products/genericProductComponent/genericProductComponent.tsx b/src/components/managers/products/genericProductComponent/genericProductComponent.tsx index 7662f565..585088dd 100644 --- a/src/components/managers/products/genericProductComponent/genericProductComponent.tsx +++ b/src/components/managers/products/genericProductComponent/genericProductComponent.tsx @@ -5,6 +5,7 @@ import { ROUTES } from 'constants/routes'; import { Field, Form, Formik, FormikHelpers } from 'formik'; import { FC, useCallback, useEffect, useMemo, useState } from 'react'; import { BasicFields } from './basicFields/basicFields'; +import { Care } from './care/care'; import { GenericProductFormInterface } from './interface/interface'; import { MediaView } from './mediaView/mediaView'; import { SizesAndMeasurements } from './sizesAndMeasurements/sizesAndMeasurements'; @@ -146,6 +147,13 @@ export const GenericProductForm: FC = ({ {...{ product, dictionary, isEditMode, isAddingProduct, isCopyMode }} /> + + +