@plurix/ecom-components 1.2.1-commerce.2 → 1.3.0-loyalty.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/constants/index.d.ts +0 -1
  2. package/dist/constants/index.js +2 -3
  3. package/dist/main.d.ts +0 -2
  4. package/dist/main.js +8 -10
  5. package/dist/packages/Carousel/Carousel.js +47 -46
  6. package/dist/packages/Carousel/components/Bullets.d.ts +2 -1
  7. package/dist/packages/Carousel/components/Bullets.js +10 -2
  8. package/dist/packages/Modal/Modal.d.ts +0 -1
  9. package/dist/packages/Modal/Modal.js +17 -19
  10. package/package.json +2 -2
  11. package/dist/hooks/useAnalitcsEvents.d.ts +0 -4
  12. package/dist/hooks/useAnalitcsEvents.js +0 -11
  13. package/dist/packages/ChangeOrderModal/ChangeOrderModal.d.ts +0 -14
  14. package/dist/packages/ChangeOrderModal/ChangeOrderModal.js +0 -78
  15. package/dist/packages/ChangeOrderModal/api/getProductsSimilars.d.ts +0 -12
  16. package/dist/packages/ChangeOrderModal/api/getProductsSimilars.js +0 -33
  17. package/dist/packages/ChangeOrderModal/assets/icons.d.ts +0 -9
  18. package/dist/packages/ChangeOrderModal/assets/icons.js +0 -72
  19. package/dist/packages/ChangeOrderModal/components/ModalFooter.d.ts +0 -3
  20. package/dist/packages/ChangeOrderModal/components/ModalFooter.js +0 -14
  21. package/dist/packages/ChangeOrderModal/components/ProductSelected.d.ts +0 -14
  22. package/dist/packages/ChangeOrderModal/components/ProductSelected.js +0 -44
  23. package/dist/packages/ChangeOrderModal/components/SimilarProductList.d.ts +0 -9
  24. package/dist/packages/ChangeOrderModal/components/SimilarProductList.js +0 -109
  25. package/dist/packages/ChangeOrderModal/components/SimilarProducts.d.ts +0 -11
  26. package/dist/packages/ChangeOrderModal/components/SimilarProducts.js +0 -35
  27. package/dist/packages/ChangeOrderModal/mocks.d.ts +0 -115
  28. package/dist/packages/ChangeOrderModal/mocks.js +0 -285
  29. package/dist/styles/change-order-modal.global.css +0 -1
  30. package/dist/types/ChangeOrderModal.d.ts +0 -47
  31. package/dist/types/ChangeOrderModal.js +0 -1
  32. package/dist/types/global.d.js +0 -1
  33. package/dist/utils/changerOrderModal.d.ts +0 -8
  34. package/dist/utils/changerOrderModal.js +0 -31
@@ -1,44 +0,0 @@
1
- import { jsxs as e, jsx as i } from "react/jsx-runtime";
2
- import { useMemo as m } from "react";
3
- import { isMobile as d } from "../../../constants/index.js";
4
- import { formatedQty as p, formatBrazilianPrice as h, formatedMultiply as u } from "../../../utils/changerOrderModal.js";
5
- const P = ({ selectedItem: a }) => {
6
- const {
7
- imageUrl: l,
8
- name: t,
9
- quantity: s,
10
- sellingPrice: o,
11
- measurementUnit: r,
12
- unitMultiplier: c
13
- } = a || {}, n = m(() => d ? 48 : 80, []);
14
- return /* @__PURE__ */ e("section", { className: "change-order-pre-content", children: [
15
- /* @__PURE__ */ i(
16
- "img",
17
- {
18
- height: n,
19
- width: n,
20
- style: { objectFit: "contain", width: "20%" },
21
- src: l,
22
- alt: t,
23
- className: "change-order-pre-content-img"
24
- }
25
- ),
26
- /* @__PURE__ */ e("div", { className: "change-order-pre-content-infos", children: [
27
- /* @__PURE__ */ i("h3", { className: "product-name", children: t }),
28
- /* @__PURE__ */ e("div", { className: "product-details", children: [
29
- /* @__PURE__ */ i("p", { className: "quantity", children: p(
30
- r || "",
31
- c || 0,
32
- s || 0
33
- ) }),
34
- /* @__PURE__ */ e("p", { className: "sellingPrice", children: [
35
- h(o || 0),
36
- /* @__PURE__ */ i("span", { className: "sellingPrice-multiply", children: u(r || "", c || 0) })
37
- ] })
38
- ] })
39
- ] })
40
- ] });
41
- };
42
- export {
43
- P as ProductSelected
44
- };
@@ -1,9 +0,0 @@
1
- import { Dispatch, SetStateAction } from 'react';
2
- import { SimilarProducts } from '../../../types/ChangeOrderModal';
3
-
4
- export declare const SimilarProductItem: ({ similarProduct, similarProductSelect, setSimilarProductSelect, isClubClient }: {
5
- similarProductSelect: SimilarProducts | undefined;
6
- setSimilarProductSelect: Dispatch<SetStateAction<SimilarProducts | undefined>>;
7
- similarProduct: SimilarProducts;
8
- isClubClient?: boolean;
9
- }) => import("react/jsx-runtime").JSX.Element;
@@ -1,109 +0,0 @@
1
- import { jsxs as s, jsx as e } from "react/jsx-runtime";
2
- import { useMemo as c } from "react";
3
- import { formatEspecifications as w, formatBrazilianPrice as u, formatedMultiply as z } from "../../../utils/changerOrderModal.js";
4
- import { Icons as S } from "../assets/icons.js";
5
- import { isMobile as U } from "../../../constants/index.js";
6
- const H = ({
7
- similarProduct: a,
8
- similarProductSelect: r,
9
- setSimilarProductSelect: f,
10
- isClubClient: v
11
- }) => {
12
- const {
13
- images: N,
14
- name: d,
15
- productId: m,
16
- sellingPrice: n,
17
- measurementUnit: y,
18
- unitMultiplier: b,
19
- hasDiscount: C,
20
- listPrice: o,
21
- isClub: I,
22
- skuSpecifications: h
23
- } = a, [{ imageUrl: M }] = N, l = c(() => U ? 48 : 80, []), p = c(
24
- () => m === (r == null ? void 0 : r.productId),
25
- [r]
26
- ), i = c(() => w(h || []), [h]), {
27
- discountPorcent: k,
28
- frontLstPrice: L,
29
- frontSellingPrice: P,
30
- frontPriceMultiply: j
31
- } = c(() => !n || !o ? {} : {
32
- discountPorcent: Math.round(n / o * 100 * -1),
33
- frontLstPrice: u(
34
- (o || 0) - (n || 0)
35
- ),
36
- frontSellingPrice: u(n || 0),
37
- frontPriceMultiply: z(y, b)
38
- }, [n, o]), x = {
39
- Vegano: "var(--color-seals-veg)",
40
- Orgânico: "var(--color-seals-org)",
41
- "Sem Glúten": "var(--color-seals-gluten-free)",
42
- "Sem Lactose": "var(--color-seals-lactose-free)",
43
- "Sem Açúcar": "var(--color-seals-sugar-free)"
44
- }, g = p ? "var(--color-main)" : "var(--color-grayScale-lightest)";
45
- return /* @__PURE__ */ s(
46
- "div",
47
- {
48
- className: "similar-product-list-item",
49
- onClick: () => {
50
- m !== (r == null ? void 0 : r.productId) && f(a);
51
- },
52
- style: {
53
- borderColor: g
54
- },
55
- children: [
56
- /* @__PURE__ */ e("div", { style: { width: l }, children: /* @__PURE__ */ e(
57
- "img",
58
- {
59
- height: l,
60
- width: l,
61
- src: M,
62
- alt: d,
63
- style: { objectFit: "contain" }
64
- }
65
- ) }),
66
- /* @__PURE__ */ s("div", { className: "infos", children: [
67
- /* @__PURE__ */ s("div", { className: "description", children: [
68
- /* @__PURE__ */ e("h4", { className: "product-name", children: d }),
69
- /* @__PURE__ */ e(
70
- "span",
71
- {
72
- className: "choose-icon",
73
- style: {
74
- backgroundColor: g
75
- },
76
- children: p && /* @__PURE__ */ e(S, { iconId: "Check" })
77
- }
78
- )
79
- ] }),
80
- !!(i != null && i.length) && /* @__PURE__ */ e("div", { className: "seal-container", children: i.map((t) => /* @__PURE__ */ e(
81
- "span",
82
- {
83
- className: "seal",
84
- style: { backgroundColor: x[t] },
85
- children: t
86
- }
87
- )) }),
88
- /* @__PURE__ */ s("div", { className: "prices", children: [
89
- C && /* @__PURE__ */ s("div", { className: "discount", children: [
90
- /* @__PURE__ */ e("p", { className: "list-price", children: L }),
91
- /* @__PURE__ */ s("span", { className: "badge", children: [
92
- k,
93
- "%"
94
- ] })
95
- ] }),
96
- /* @__PURE__ */ s("p", { className: "sellingPrice", children: [
97
- P,
98
- /* @__PURE__ */ e("span", { className: "sellingPrice-multiply", children: j }),
99
- I && v && /* @__PURE__ */ e("span", { className: "badge", children: "Club" })
100
- ] })
101
- ] })
102
- ] })
103
- ]
104
- }
105
- );
106
- };
107
- export {
108
- H as SimilarProductItem
109
- };
@@ -1,11 +0,0 @@
1
- import { Dispatch, SetStateAction } from 'react';
2
- import { SimilarProducts as SimilarProductProps } from '../../../types/ChangeOrderModal';
3
-
4
- interface Props {
5
- products?: SimilarProductProps[];
6
- similarProductSelect?: SimilarProductProps;
7
- setSimilarProductSelect: Dispatch<SetStateAction<SimilarProductProps | undefined>>;
8
- isClubClient?: boolean;
9
- }
10
- export declare const SimilarProducts: ({ products, isClubClient, similarProductSelect, setSimilarProductSelect }: Props) => import("react/jsx-runtime").JSX.Element | null;
11
- export {};
@@ -1,35 +0,0 @@
1
- import { jsxs as r, jsx as m } from "react/jsx-runtime";
2
- import { Icons as h } from "../assets/icons.js";
3
- import { SimilarProductItem as l } from "./SimilarProductList.js";
4
- const N = ({
5
- products: n,
6
- isClubClient: s,
7
- similarProductSelect: o,
8
- setSimilarProductSelect: i
9
- }) => n != null && n.length ? /* @__PURE__ */ r("section", { className: "change-order-similar-products", children: [
10
- /* @__PURE__ */ m("h3", { className: "title", children: "Na falta substitua por:" }),
11
- /* @__PURE__ */ m("div", { className: "similar-product-list", children: n.map((a) => /* @__PURE__ */ m(
12
- l,
13
- {
14
- isClubClient: s,
15
- similarProductSelect: o,
16
- setSimilarProductSelect: i,
17
- similarProduct: a
18
- },
19
- a.itemId
20
- )) }),
21
- o && /* @__PURE__ */ r(
22
- "button",
23
- {
24
- onClick: () => i == null ? void 0 : i(void 0),
25
- className: "remove-buttom",
26
- children: [
27
- /* @__PURE__ */ m(h, { iconId: "Trash" }),
28
- " Remover substituto"
29
- ]
30
- }
31
- )
32
- ] }) : null;
33
- export {
34
- N as SimilarProducts
35
- };
@@ -1,115 +0,0 @@
1
- export declare const productSelectedMock: {
2
- imageUrl: string;
3
- name: string;
4
- quantity: number;
5
- sellingPrice: number;
6
- measurementUnit: string;
7
- unitMultiplier: number;
8
- productOriginId: string;
9
- };
10
- export declare const SimilarItemResponse: {
11
- productOrigin: string;
12
- products: ({
13
- productId: string;
14
- itemId: string;
15
- name: string;
16
- images: {
17
- imageId: string;
18
- imageUrl: string;
19
- }[];
20
- measurementUnit: string;
21
- isWeighed: boolean;
22
- unitMultiplier: number;
23
- isClub: boolean;
24
- isValid: boolean;
25
- listPrice: number;
26
- sellingPrice: number;
27
- kgPrice: null;
28
- hasDiscount: boolean;
29
- percentageDiscount: string;
30
- brand: string;
31
- description: string;
32
- categoryTree: {
33
- name: string;
34
- }[];
35
- sellerId: string;
36
- skuSpecifications: null;
37
- clubPrice?: undefined;
38
- } | {
39
- productId: string;
40
- itemId: string;
41
- name: string;
42
- images: {
43
- imageId: string;
44
- imageUrl: string;
45
- }[];
46
- measurementUnit: string;
47
- isWeighed: boolean;
48
- unitMultiplier: number;
49
- isClub: boolean;
50
- isValid: boolean;
51
- listPrice: number;
52
- sellingPrice: number;
53
- kgPrice: null;
54
- hasDiscount: boolean;
55
- percentageDiscount: string;
56
- brand: string;
57
- description: string;
58
- categoryTree: {
59
- name: string;
60
- }[];
61
- sellerId: string;
62
- skuSpecifications: {
63
- field: {
64
- originalName: string;
65
- };
66
- values: {
67
- originalName: string;
68
- }[];
69
- }[];
70
- clubPrice: {
71
- listPrice: number;
72
- sellingPrice: number;
73
- kgPrice: null;
74
- isValid: boolean;
75
- };
76
- } | {
77
- productId: string;
78
- itemId: string;
79
- name: string;
80
- images: {
81
- imageId: string;
82
- imageUrl: string;
83
- }[];
84
- measurementUnit: string;
85
- isWeighed: boolean;
86
- unitMultiplier: number;
87
- isClub: boolean;
88
- isValid: boolean;
89
- listPrice: number;
90
- sellingPrice: number;
91
- kgPrice: number;
92
- hasDiscount: boolean;
93
- percentageDiscount: string;
94
- brand: string;
95
- description: string;
96
- categoryTree: {
97
- name: string;
98
- }[];
99
- sellerId: string;
100
- skuSpecifications: {
101
- field: {
102
- originalName: string;
103
- };
104
- values: {
105
- originalName: string;
106
- }[];
107
- }[];
108
- clubPrice: {
109
- listPrice: number;
110
- sellingPrice: number;
111
- kgPrice: number;
112
- isValid: boolean;
113
- };
114
- })[];
115
- };
@@ -1,285 +0,0 @@
1
- const e = {
2
- imageUrl: "https://smrholding.vteximg.com.br/arquivos/ids/157320-55-55/7891150061040_01.jpg?v=637994761386800000",
3
- name: "Sorvete Ovomaltine Kibon 800mL",
4
- quantity: 1,
5
- sellingPrice: 35.49,
6
- measurementUnit: "kg",
7
- unitMultiplier: 1,
8
- productOriginId: "5909"
9
- }, i = {
10
- productOrigin: "5909",
11
- products: [
12
- {
13
- productId: "5911",
14
- itemId: "5911",
15
- name: "Sorvete Phish Food Ben & Jerry's 458mL",
16
- images: [
17
- {
18
- imageId: "157324",
19
- imageUrl: "https://smrholding.vtexassets.com/arquivos/ids/157324/76840473205_01.jpg?v=637994761394600000"
20
- },
21
- {
22
- imageId: "157326",
23
- imageUrl: "https://smrholding.vtexassets.com/arquivos/ids/157326/76840473205_01.jpg?v=637994761401530000"
24
- }
25
- ],
26
- measurementUnit: "un",
27
- isWeighed: !1,
28
- unitMultiplier: 1,
29
- isClub: !1,
30
- isValid: !0,
31
- listPrice: 55.9,
32
- sellingPrice: 55.9,
33
- kgPrice: null,
34
- hasDiscount: !1,
35
- percentageDiscount: "0",
36
- brand: "Ben E Jerry'S",
37
- description: "Sorvete Phish Food Ben & Jerry's 458mL",
38
- categoryTree: [
39
- {
40
- name: "Alimentos"
41
- },
42
- {
43
- name: "Sobremesas e Sorvetes"
44
- },
45
- {
46
- name: "Sorvete"
47
- }
48
- ],
49
- sellerId: "1",
50
- skuSpecifications: null
51
- },
52
- {
53
- productId: "5913",
54
- itemId: "5913",
55
- name: "Sorvete Snickers Kibon 800mL",
56
- images: [
57
- {
58
- imageId: "157325",
59
- imageUrl: "https://smrholding.vtexassets.com/arquivos/ids/157325/7891150061033_01.jpg?v=637994761399670000"
60
- }
61
- ],
62
- measurementUnit: "un",
63
- isWeighed: !1,
64
- unitMultiplier: 1,
65
- isClub: !1,
66
- isValid: !0,
67
- listPrice: 34.49,
68
- sellingPrice: 34.49,
69
- kgPrice: null,
70
- hasDiscount: !1,
71
- percentageDiscount: "0",
72
- brand: "Intimus",
73
- description: "Sorvete Snickers Kibon 800mL",
74
- categoryTree: [
75
- {
76
- name: "Alimentos"
77
- },
78
- {
79
- name: "Sobremesas e Sorvetes"
80
- },
81
- {
82
- name: "Sorvete"
83
- }
84
- ],
85
- sellerId: "1",
86
- skuSpecifications: null
87
- },
88
- {
89
- productId: "12",
90
- itemId: "12",
91
- name: "Abóbora Pré Cozida Benassi 1Kg",
92
- images: [
93
- {
94
- imageId: "155450",
95
- imageUrl: "https://smrholding.vtexassets.com/arquivos/ids/155450/7898908023053_01.jpg?v=637994757299030000"
96
- }
97
- ],
98
- measurementUnit: "un",
99
- isWeighed: !1,
100
- unitMultiplier: 1,
101
- isClub: !0,
102
- isValid: !0,
103
- listPrice: 25,
104
- sellingPrice: 10,
105
- kgPrice: null,
106
- hasDiscount: !0,
107
- percentageDiscount: "60",
108
- brand: "Hortifruti",
109
- description: "Abóbora Pré Cozida Benassi 1Kg",
110
- categoryTree: [
111
- {
112
- name: "Alimentos"
113
- },
114
- {
115
- name: "Hortifruti"
116
- },
117
- {
118
- name: "Legumes e Vegetais"
119
- },
120
- {
121
- name: "Processados e Fracionados"
122
- }
123
- ],
124
- sellerId: "1",
125
- skuSpecifications: [
126
- {
127
- field: {
128
- originalName: "Preço 2"
129
- },
130
- values: [
131
- {
132
- originalName: "True"
133
- }
134
- ]
135
- },
136
- {
137
- field: {
138
- originalName: "Preco2"
139
- },
140
- values: [
141
- {
142
- originalName: "true"
143
- }
144
- ]
145
- }
146
- ],
147
- clubPrice: {
148
- listPrice: 25,
149
- sellingPrice: 8,
150
- kgPrice: null,
151
- isValid: !0
152
- }
153
- },
154
- {
155
- productId: "1465",
156
- itemId: "1465",
157
- name: "Carne Bovina Precoce Coxão Mole kg",
158
- images: [
159
- {
160
- imageId: "158520",
161
- imageUrl: "https://smrholding.vtexassets.com/arquivos/ids/158520/Carne-Bovina-Precoce-Coxao-Mole-Kg.png?v=638024797979570000"
162
- }
163
- ],
164
- measurementUnit: "kg",
165
- isWeighed: !0,
166
- unitMultiplier: 0.5,
167
- isClub: !0,
168
- isValid: !0,
169
- listPrice: 27.25,
170
- sellingPrice: 27.25,
171
- kgPrice: 54.5,
172
- hasDiscount: !1,
173
- percentageDiscount: "0",
174
- brand: "Açougue",
175
- description: "Carne Bovina Precoce Coxão Mole kg",
176
- categoryTree: [
177
- {
178
- name: "Alimentos"
179
- },
180
- {
181
- name: "Carnes, Aves E Peixes"
182
- },
183
- {
184
- name: "Carne Bovina"
185
- },
186
- {
187
- name: "Cortes Tradicionais"
188
- }
189
- ],
190
- sellerId: "1",
191
- skuSpecifications: [
192
- {
193
- field: {
194
- originalName: "Sem Açúcar"
195
- },
196
- values: [
197
- {
198
- originalName: "False"
199
- }
200
- ]
201
- },
202
- {
203
- field: {
204
- originalName: "Vegano"
205
- },
206
- values: [
207
- {
208
- originalName: "True"
209
- }
210
- ]
211
- },
212
- {
213
- field: {
214
- originalName: "Refrigerado"
215
- },
216
- values: [
217
- {
218
- originalName: "True"
219
- }
220
- ]
221
- },
222
- {
223
- field: {
224
- originalName: "Preco2"
225
- },
226
- values: [
227
- {
228
- originalName: "true"
229
- }
230
- ]
231
- },
232
- {
233
- field: {
234
- originalName: "Congelado"
235
- },
236
- values: [
237
- {
238
- originalName: "True"
239
- }
240
- ]
241
- },
242
- {
243
- field: {
244
- originalName: "Gelado"
245
- },
246
- values: [
247
- {
248
- originalName: "True"
249
- }
250
- ]
251
- },
252
- {
253
- field: {
254
- originalName: "Sem Glúten"
255
- },
256
- values: [
257
- {
258
- originalName: "True"
259
- }
260
- ]
261
- },
262
- {
263
- field: {
264
- originalName: "Sem Lactose"
265
- },
266
- values: [
267
- {
268
- originalName: "False"
269
- }
270
- ]
271
- }
272
- ],
273
- clubPrice: {
274
- listPrice: 25.02,
275
- sellingPrice: 25.02,
276
- kgPrice: 50.04,
277
- isValid: !0
278
- }
279
- }
280
- ]
281
- };
282
- export {
283
- i as SimilarItemResponse,
284
- e as productSelectedMock
285
- };
@@ -1 +0,0 @@
1
- .change-order-modal p{margin:0;padding:0}.change-order-modal #modal-content-container{width:100%}.change-order-modal #modal-content-container #modal-content{display:flex;flex-direction:column;background-color:var(--color-grayScale-white);border-radius:16px 16px 0 0}.change-order-modal #modal-content-container #modal-content #modal-scroll{flex:1}.change-order-modal #modal-content-container #modal-content .modal-footer{display:flex;position:relative;padding:0;border-radius:16px}.change-order-modal #modal-content-container #modal-pre-content{padding:16px}.change-order-modal #modal-content-container #modal-content header{width:100%;display:flex;justify-content:space-between;padding:16px;align-items:center}.change-order-modal #modal-content-container #modal-content header .modal-title{font-size:16px;font-weight:700;line-height:20px;color:var(--color-grayScale)}.change-order-modal .modal-close{background:none;border:none;cursor:pointer}@media (min-width: 768px){.change-order-modal #modal-content-container #modal-content{border-radius:16px}.change-order-modal header .modal-title{font-size:24px;line-height:28px}}.change-order-modal #modal-content-container #modal-content .change-order-pre-content{display:flex;margin:16px}.change-order-modal #modal-content-container #modal-content .change-order-pre-content .change-order-pre-content-infos{width:100%;margin-left:8px}.change-order-modal #modal-content-container #modal-content .change-order-pre-content .change-order-pre-content-infos .product-details{display:flex;justify-content:space-between;align-items:center}.change-order-modal #modal-content-container #modal-content .change-order-pre-content .change-order-pre-content-infos .product-details .quantity{color:var(--color-grayScale);font-size:14px;line-height:18px;font-weight:700}.change-order-modal #modal-content-container #modal-content .change-order-pre-content .change-order-pre-content-infos .product-details .sellingPrice-multiply{font-weight:400}.change-order-modal #modal-content-container{height:90%}@media (min-width: 768px){.change-order-modal #modal-content-container{max-height:90%}.change-order-modal #modal-content-container #modal-content .change-order-pre-content .change-order-pre-content-infos .product-details .quantity{font-size:16px;line-height:20px}}.change-order-modal #modal-content-container #modal-content .change-order-similar-products{overflow-y:auto;margin:0 8px;padding:8px}.change-order-modal #modal-content-container #modal-content .change-order-similar-products::-webkit-scrollbar{width:4px;background-color:var(--color-main-faded)}.change-order-modal #modal-content-container #modal-content .change-order-similar-products::-webkit-scrollbar-thumb{width:3px;padding-top:16px;background-color:var(--color-main);max-height:34px;border-radius:20px}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .remove-buttom{color:var(--color-negativeFeedback);background-color:transparent;border:none;font-weight:700;font-size:14px;line-height:18px;display:flex;align-items:center;justify-content:center;margin:22px 0;column-gap:4px;text-decoration:underline;cursor:pointer}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .title{font-size:14px;line-height:18px;font-weight:700;color:var(--color-grayScale);margin-bottom:16px}@media (min-width: 768px){.change-order-modal #modal-content-container #modal-content .change-order-similar-products .remove-buttom{margin:16px 0}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .title{font-size:20px;line-height:24px}}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list{display:flex;row-gap:16px;flex-direction:column}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item{display:flex;border-style:solid;border-width:1px;border-radius:8px;padding:8px;width:100%}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item{display:flex;cursor:pointer;background-color:var(--color-grayScale-white)}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos{width:100%}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos .description{width:100%;display:flex;justify-content:space-between}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos .seal-container{display:flex;gap:4px;flex-wrap:wrap;margin:4px 0}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos .seal{color:var(--color-grayScale-white);font-size:9px;list-style:16px;text-align:center;padding:4px;border-radius:2px}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos .description .choose-icon{width:16px;height:16px;border-radius:100%;display:flex;align-items:center;justify-content:center}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos .prices .discount .list-price{font-size:12px;line-height:16px;font-weight:400;color:var(--color-grayScale-dark);text-decoration:line-through}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos .prices .discount{display:flex;column-gap:4px;align-items:center}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos .prices .discount .badge{padding:1px 4px;color:var(--color-main);border-radius:16px;font-size:12px;font-weight:700;background-color:var(--color-secondary)}.change-order-modal #modal-content-container #modal-content .change-order-similar-products .similar-product-list .similar-product-list-item .infos .prices{display:flex;flex-direction:column;row-gap:5px}.change-order-modal .change-order-moda-footer{height:68px;background-color:#fff;border-radius:0 0 16px 16px;z-index:999;position:relative;width:100%;display:flex;flex-direction:row;align-content:center;padding:16px;box-shadow:0 -4px 4px 0 var(--color-support-shadow)}.change-order-modal .change-order-moda-footer .change-order-save-buttom{width:100%;height:34px;background-color:var(--color-main);border-color:transparent;border-radius:2px;color:var(--color-assistant-main);font-size:14px;line-height:18px;font-weight:500;cursor:pointer}.change-order-modal #modal-content-container #modal-content .product-name{font-size:14px;line-height:16px;font-weight:400;color:var(--color-grayScale);margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:start}.change-order-modal #modal-content-container #modal-content .badge{padding:1px 4px;color:var(--color-main);border-radius:16px;font-size:12px;font-weight:700;background-color:var(--color-secondary)}.change-order-modal #modal-content-container #modal-content .sellingPrice{color:var(--color-main);font-size:16px;line-height:20px;font-weight:700;display:flex;align-items:center;column-gap:1px}@media (min-width: 768px){.change-order-modal #modal-content-container #modal-content .sellingPrice{font-size:20px;line-height:24px}}
@@ -1,47 +0,0 @@
1
- export interface ResponseOk {
2
- similarProducts: {
3
- productOrigin: string;
4
- products: SimilarProducts[];
5
- }[];
6
- }
7
- export type SKUImages = {
8
- imageId?: string;
9
- imageUrl: string;
10
- };
11
- export interface SKUSpecification {
12
- field: {
13
- originalName: string;
14
- };
15
- values: {
16
- originalName: string;
17
- }[];
18
- }
19
- export interface SimilarProducts {
20
- productId: string;
21
- itemId: string;
22
- name: string;
23
- images: SKUImages[];
24
- measurementUnit: string;
25
- isWeighed: boolean;
26
- unitMultiplier: number;
27
- isClub: boolean;
28
- isValid: boolean;
29
- listPrice: number | null;
30
- sellingPrice: number | null;
31
- kgPrice: number | null;
32
- hasDiscount: boolean;
33
- percentageDiscount: string;
34
- brand: string;
35
- description: string;
36
- categoryTree: {
37
- name: string;
38
- }[];
39
- sellerId: string;
40
- skuSpecifications: SKUSpecification[] | null;
41
- clubPrice?: {
42
- listPrice?: number | null;
43
- sellingPrice?: number | null;
44
- kgPrice?: number | null;
45
- isValid?: boolean;
46
- } | null;
47
- }
@@ -1 +0,0 @@
1
-
@@ -1 +0,0 @@
1
-
@@ -1,8 +0,0 @@
1
- import { SKUSpecification } from '../types/ChangeOrderModal';
2
-
3
- export declare const formatListPrice: (listPrice: number, multiplier: number, unit?: string) => number;
4
- export declare const formatBrazilianPrice: (price: number) => string;
5
- export declare const truncPrice: (price: number) => number;
6
- export declare const formatedQty: (measurementUnit: string, unitMultiplier: number, quantity: number) => string;
7
- export declare const formatedMultiply: (measurementUnit: string, unitMultiplier: number) => string;
8
- export declare const formatEspecifications: (variantions: SKUSpecification[]) => string[];