@envive-ai/react-toolkit 0.2.7 → 0.2.8
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.
- package/dist/Accordion/index.d.ts +2 -2
- package/dist/AnimatedChevron/index.d.cts +2 -2
- package/dist/AnimatedChevron/index.d.ts +2 -2
- package/dist/AppliedFiltersScrollbar/index.d.ts +2 -2
- package/dist/ButtonBase/index.d.cts +2 -2
- package/dist/ButtonBase/index.d.ts +2 -2
- package/dist/DynamicFiltersScrollbar/index.d.cts +2 -2
- package/dist/DynamicFiltersScrollbar/index.d.ts +2 -2
- package/dist/FilterScrollbar/index.d.cts +3 -3
- package/dist/FilterScrollbar/index.d.ts +3 -3
- package/dist/ImageWithFallback/index.d.cts +2 -2
- package/dist/ImageWithFallback/index.d.ts +2 -2
- package/dist/ModalSheet/index.d.cts +2 -2
- package/dist/ModalSheet/index.d.ts +2 -2
- package/dist/ProductCard/index.cjs +1 -1
- package/dist/ProductCard/index.d.cts +1 -1
- package/dist/ProductCard/index.d.ts +1 -1
- package/dist/ProductCard/index.js +1 -1
- package/dist/{ProductCard-BIlnM2nV.js → ProductCard-DRczevG8.js} +7 -4
- package/dist/{ProductCard-CByKIsUN.cjs → ProductCard-DksbHI3v.cjs} +8 -4
- package/dist/ProductGrid/index.cjs +2 -2
- package/dist/ProductGrid/index.d.cts +6 -6
- package/dist/ProductGrid/index.d.ts +6 -6
- package/dist/ProductGrid/index.js +2 -2
- package/dist/{ProductGrid-Cgkb4vNf.js → ProductGrid-CGHDHthe.js} +21 -24
- package/dist/{ProductGrid-BeFeluHo.cjs → ProductGrid-DxbFvnNs.cjs} +21 -24
- package/dist/RadioButton/index.d.cts +2 -2
- package/dist/RadioButton/index.d.ts +2 -2
- package/dist/RadioButtonGroup/index.d.ts +2 -2
- package/dist/SearchAutocomplete/index.cjs +1 -1
- package/dist/SearchAutocomplete/index.d.cts +2 -2
- package/dist/SearchAutocomplete/index.d.ts +2 -2
- package/dist/SearchAutocomplete/index.js +1 -1
- package/dist/SearchFilter/index.cjs +2 -2
- package/dist/SearchFilter/index.d.cts +5 -5
- package/dist/SearchFilter/index.d.ts +5 -5
- package/dist/SearchFilter/index.js +2 -2
- package/dist/{SearchFilter-DWUm2sZH.js → SearchFilter-wjDCnNiW.js} +1 -1
- package/dist/{SearchFilter-Cph7S1yF.cjs → SearchFilter-y4vrVBUC.cjs} +1 -1
- package/dist/SearchInput/index.cjs +3 -3
- package/dist/SearchInput/index.js +3 -3
- package/dist/{SearchInput-Jj8nxPA0.js → SearchInput-Q3knp7tj.js} +2 -2
- package/dist/{SearchInput-CAqNnjuE.cjs → SearchInput-Yy6NIiSk.cjs} +2 -2
- package/dist/SearchInputForm/index.cjs +4 -4
- package/dist/SearchInputForm/index.d.cts +2 -2
- package/dist/SearchInputForm/index.d.ts +2 -2
- package/dist/SearchInputForm/index.js +4 -4
- package/dist/SearchResultsContent/index.cjs +5 -5
- package/dist/SearchResultsContent/index.d.cts +4 -4
- package/dist/SearchResultsContent/index.d.ts +4 -4
- package/dist/SearchResultsContent/index.js +5 -5
- package/dist/SearchResultsFilterSidebar/index.cjs +4 -4
- package/dist/SearchResultsFilterSidebar/index.d.cts +1 -1
- package/dist/SearchResultsFilterSidebar/index.d.ts +1 -1
- package/dist/SearchResultsFilterSidebar/index.js +4 -4
- package/dist/SearchResultsStates/index.cjs +5 -5
- package/dist/SearchResultsStates/index.d.cts +2 -2
- package/dist/SearchResultsStates/index.d.ts +6 -6
- package/dist/SearchResultsStates/index.js +5 -5
- package/dist/{SearchResultsStates-CG8-Ga-G.cjs → SearchResultsStates-CP3HKZao.cjs} +3 -3
- package/dist/{SearchResultsStates-CTgVvFe9.js → SearchResultsStates-DUSTcTQK.js} +3 -3
- package/dist/SparkleAnimation/index.d.cts +2 -2
- package/dist/SparkleAnimation/index.d.ts +2 -2
- package/dist/Spinner/index.d.cts +2 -2
- package/dist/Spinner/index.d.ts +2 -2
- package/dist/SuggestionButton/index.d.cts +2 -2
- package/dist/SuggestionButton/index.d.ts +2 -2
- package/dist/TextInput/index.cjs +1 -1
- package/dist/TextInput/index.js +1 -1
- package/dist/ToggleButton/index.cjs +1 -1
- package/dist/ToggleButton/index.d.cts +2 -2
- package/dist/ToggleButton/index.d.ts +2 -2
- package/dist/ToggleButton/index.js +1 -1
- package/dist/{index-Br1B7Jta.d.cts → index-4KapT-qa.d.cts} +2 -2
- package/dist/{index-CoKLba8Y.d.ts → index-CY3-7i6i.d.cts} +7 -7
- package/dist/{index-DZG-p0HX.d.cts → index-DELwJODl.d.ts} +7 -7
- package/dist/{index-qY2eo4Dx.d.ts → index-OpwPXBH6.d.ts} +2 -2
- package/dist/{searchFilterSidebarVariants-Bv_5N0Qd.cjs → searchFilterSidebarVariants-DzCf_sfh.cjs} +1 -1
- package/dist/{searchFilterSidebarVariants-Dc0irQTl.js → searchFilterSidebarVariants-f9PS9fl6.js} +1 -1
- package/package.json +4 -4
- package/src/components/ProductCard/ProductCard.tsx +13 -9
- package/src/components/ProductGrid/ProductGrid.tsx +24 -29
- package/src/config/chatElementDisplayLocation.ts +1 -0
- /package/dist/{SearchAutocomplete-BzMueTjs.js → SearchAutocomplete-B690CIZB.js} +0 -0
- /package/dist/{SearchAutocomplete-Dv2FQmZD.cjs → SearchAutocomplete-DAEDHeqr.cjs} +0 -0
- /package/dist/{TextInput-Cih-pWCJ.cjs → TextInput-B70n36-J.cjs} +0 -0
- /package/dist/{TextInput-C9wyXFlx.js → TextInput-y6nNxaTI.js} +0 -0
- /package/dist/{ToggleButton-8P9eNKy1.js → ToggleButton-Br6MgjiG.js} +0 -0
- /package/dist/{ToggleButton-DCiR4sB5.cjs → ToggleButton-CJ74eu-N.cjs} +0 -0
- /package/dist/{colorsConfig-CJTKbJsm.cjs → colorsConfig-B3-SMUSx.cjs} +0 -0
- /package/dist/{colorsConfig-CYZ8f_gj.js → colorsConfig-DZ-GSPWy.js} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime5 from "react/jsx-runtime";
|
|
2
2
|
import { SearchFilterDatum, SelectFilterItem } from "@envive-ai/react-hooks/types";
|
|
3
3
|
|
|
4
4
|
//#region src/components/SearchResultsFilterSidebar/types.d.ts
|
|
@@ -41,6 +41,6 @@ declare const SearchResultsFilter: ({
|
|
|
41
41
|
onSelectFilterItem,
|
|
42
42
|
onClearAllFilters,
|
|
43
43
|
filterButtonText
|
|
44
|
-
}: SearchResultsFilterProps) =>
|
|
44
|
+
}: SearchResultsFilterProps) => react_jsx_runtime5.JSX.Element;
|
|
45
45
|
//#endregion
|
|
46
46
|
export { CloseIconVariant$1 as CloseIconVariant, SearchFilterSidebarVariant, SearchResultsFilter, SearchResultsFilterProps, searchFilterSidebarVariantClasses };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import * as react_jsx_runtime26 from "react/jsx-runtime";
|
|
1
|
+
import * as react_jsx_runtime22 from "react/jsx-runtime";
|
|
3
2
|
import { TestProps } from "@envive-ai/react-hooks/types";
|
|
3
|
+
import { FC } from "react";
|
|
4
4
|
import { ResponseCategory, SearchResponseProduct } from "@spiffy-ai/commerce-api-client";
|
|
5
5
|
|
|
6
6
|
//#region src/util/trim.d.ts
|
|
@@ -261,7 +261,7 @@ declare const RatingSummary: ({
|
|
|
261
261
|
stars,
|
|
262
262
|
reviewCount,
|
|
263
263
|
className
|
|
264
|
-
}: RatingSummaryProps) =>
|
|
264
|
+
}: RatingSummaryProps) => react_jsx_runtime22.JSX.Element;
|
|
265
265
|
interface PriceSectionProps {
|
|
266
266
|
originalPrice?: string;
|
|
267
267
|
salePrice?: string;
|
|
@@ -271,7 +271,7 @@ declare const PriceSection: ({
|
|
|
271
271
|
originalPrice,
|
|
272
272
|
salePrice,
|
|
273
273
|
pricePrefix
|
|
274
|
-
}: PriceSectionProps) =>
|
|
274
|
+
}: PriceSectionProps) => react_jsx_runtime22.JSX.Element;
|
|
275
275
|
interface ProductCardProps extends TestProps {
|
|
276
276
|
productCardConfig?: ProductCardConfig;
|
|
277
277
|
merchantShortName: string;
|
|
@@ -288,7 +288,7 @@ interface ProductCardProps extends TestProps {
|
|
|
288
288
|
zoomOnHover?: boolean;
|
|
289
289
|
aspectRatio?: '3:4' | 'square' | 'none';
|
|
290
290
|
growWithContainer?: boolean;
|
|
291
|
-
|
|
291
|
+
onClick?: () => void;
|
|
292
292
|
}
|
|
293
293
|
declare const ProductCard: ({
|
|
294
294
|
productCardConfig,
|
|
@@ -307,8 +307,8 @@ declare const ProductCard: ({
|
|
|
307
307
|
zoomOnHover,
|
|
308
308
|
aspectRatio,
|
|
309
309
|
growWithContainer,
|
|
310
|
-
|
|
311
|
-
}: ProductCardProps) =>
|
|
310
|
+
onClick
|
|
311
|
+
}: ProductCardProps) => react_jsx_runtime22.JSX.Element;
|
|
312
312
|
//#endregion
|
|
313
313
|
//#region src/components/ProductCard/ProductCardSkeleton.d.ts
|
|
314
314
|
declare const ProductCardSkeleton: FC<ProductCardSkeletonProps>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import * as react_jsx_runtime19 from "react/jsx-runtime";
|
|
2
|
-
import { TestProps } from "@envive-ai/react-hooks/types";
|
|
3
1
|
import { FC } from "react";
|
|
2
|
+
import * as react_jsx_runtime16 from "react/jsx-runtime";
|
|
3
|
+
import { TestProps } from "@envive-ai/react-hooks/types";
|
|
4
4
|
import { ResponseCategory, SearchResponseProduct } from "@spiffy-ai/commerce-api-client";
|
|
5
5
|
|
|
6
6
|
//#region src/util/trim.d.ts
|
|
@@ -261,7 +261,7 @@ declare const RatingSummary: ({
|
|
|
261
261
|
stars,
|
|
262
262
|
reviewCount,
|
|
263
263
|
className
|
|
264
|
-
}: RatingSummaryProps) =>
|
|
264
|
+
}: RatingSummaryProps) => react_jsx_runtime16.JSX.Element;
|
|
265
265
|
interface PriceSectionProps {
|
|
266
266
|
originalPrice?: string;
|
|
267
267
|
salePrice?: string;
|
|
@@ -271,7 +271,7 @@ declare const PriceSection: ({
|
|
|
271
271
|
originalPrice,
|
|
272
272
|
salePrice,
|
|
273
273
|
pricePrefix
|
|
274
|
-
}: PriceSectionProps) =>
|
|
274
|
+
}: PriceSectionProps) => react_jsx_runtime16.JSX.Element;
|
|
275
275
|
interface ProductCardProps extends TestProps {
|
|
276
276
|
productCardConfig?: ProductCardConfig;
|
|
277
277
|
merchantShortName: string;
|
|
@@ -288,7 +288,7 @@ interface ProductCardProps extends TestProps {
|
|
|
288
288
|
zoomOnHover?: boolean;
|
|
289
289
|
aspectRatio?: '3:4' | 'square' | 'none';
|
|
290
290
|
growWithContainer?: boolean;
|
|
291
|
-
|
|
291
|
+
onClick?: () => void;
|
|
292
292
|
}
|
|
293
293
|
declare const ProductCard: ({
|
|
294
294
|
productCardConfig,
|
|
@@ -307,8 +307,8 @@ declare const ProductCard: ({
|
|
|
307
307
|
zoomOnHover,
|
|
308
308
|
aspectRatio,
|
|
309
309
|
growWithContainer,
|
|
310
|
-
|
|
311
|
-
}: ProductCardProps) =>
|
|
310
|
+
onClick
|
|
311
|
+
}: ProductCardProps) => react_jsx_runtime16.JSX.Element;
|
|
312
312
|
//#endregion
|
|
313
313
|
//#region src/components/ProductCard/ProductCardSkeleton.d.ts
|
|
314
314
|
declare const ProductCardSkeleton: FC<ProductCardSkeletonProps>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime8 from "react/jsx-runtime";
|
|
2
2
|
import { SearchFilterDatum, SelectFilterItem } from "@envive-ai/react-hooks/types";
|
|
3
3
|
|
|
4
4
|
//#region src/components/SearchResultsFilterSidebar/types.d.ts
|
|
@@ -41,6 +41,6 @@ declare const SearchResultsFilter: ({
|
|
|
41
41
|
onSelectFilterItem,
|
|
42
42
|
onClearAllFilters,
|
|
43
43
|
filterButtonText
|
|
44
|
-
}: SearchResultsFilterProps) =>
|
|
44
|
+
}: SearchResultsFilterProps) => react_jsx_runtime8.JSX.Element;
|
|
45
45
|
//#endregion
|
|
46
46
|
export { CloseIconVariant$1 as CloseIconVariant, SearchFilterSidebarVariant, SearchResultsFilter, SearchResultsFilterProps, searchFilterSidebarVariantClasses };
|
package/dist/{searchFilterSidebarVariants-Bv_5N0Qd.cjs → searchFilterSidebarVariants-DzCf_sfh.cjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_colorsConfig = require('./colorsConfig-
|
|
1
|
+
const require_colorsConfig = require('./colorsConfig-B3-SMUSx.cjs');
|
|
2
2
|
|
|
3
3
|
//#region src/components/SearchResultsFilterSidebar/searchFilterSidebarVariants.ts
|
|
4
4
|
const searchFilterSidebarVariantClasses = {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@envive-ai/react-toolkit",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.8",
|
|
4
4
|
"description": "React component library for Envive services.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -28,16 +28,16 @@
|
|
|
28
28
|
"test": "vitest"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@envive-ai/react-hooks": "
|
|
31
|
+
"@envive-ai/react-hooks": "0.2.5",
|
|
32
32
|
"@tailwindcss/typography": "^0.5.15",
|
|
33
33
|
"classnames": "^2.5.1",
|
|
34
34
|
"react-icons": "^5.0.1",
|
|
35
35
|
"react-indiana-drag-scroll": "^3.0.3-alpha"
|
|
36
36
|
},
|
|
37
37
|
"peerDependencies": {
|
|
38
|
+
"framer-motion": ">=12.23.24",
|
|
38
39
|
"react": "^18.3.1",
|
|
39
|
-
"react-dom": "^18.3.1"
|
|
40
|
-
"framer-motion": ">=12.23.24"
|
|
40
|
+
"react-dom": "^18.3.1"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@types/node": "^24.3.2",
|
|
@@ -5,6 +5,7 @@ import { Typography } from 'src/components/Typography';
|
|
|
5
5
|
import { formatPrice } from 'src/util/formatPrice';
|
|
6
6
|
import { TestProps } from '@envive-ai/react-hooks/types';
|
|
7
7
|
import { useImageResolver } from '@envive-ai/react-hooks/hooks/ImageResolver';
|
|
8
|
+
import { PRODUCT_CARD_TESTID } from '@envive-ai/react-hooks/config';
|
|
8
9
|
import {
|
|
9
10
|
variantClassMap,
|
|
10
11
|
variantHoverClassMap,
|
|
@@ -112,7 +113,7 @@ interface ProductCardProps extends TestProps {
|
|
|
112
113
|
zoomOnHover?: boolean;
|
|
113
114
|
aspectRatio?: '3:4' | 'square' | 'none';
|
|
114
115
|
growWithContainer?: boolean;
|
|
115
|
-
|
|
116
|
+
onClick?: () => void;
|
|
116
117
|
}
|
|
117
118
|
|
|
118
119
|
export const ProductCard = ({
|
|
@@ -132,7 +133,7 @@ export const ProductCard = ({
|
|
|
132
133
|
zoomOnHover = false,
|
|
133
134
|
aspectRatio = 'none',
|
|
134
135
|
growWithContainer = false,
|
|
135
|
-
|
|
136
|
+
onClick,
|
|
136
137
|
}: ProductCardProps) => {
|
|
137
138
|
const { resolve } = useImageResolver();
|
|
138
139
|
|
|
@@ -141,6 +142,8 @@ export const ProductCard = ({
|
|
|
141
142
|
const finalLayoutVariant = layoutVariant ?? productCardConfig?.layoutVariant ?? 'normal';
|
|
142
143
|
const pricePrefix = productCardConfig?.pricePrefix;
|
|
143
144
|
|
|
145
|
+
const handleClick = () => onClick();
|
|
146
|
+
|
|
144
147
|
if (productCardConfig == null) {
|
|
145
148
|
Logger.logError('[ProductCard] productCardConfig is null', undefined, {
|
|
146
149
|
merchant: merchantShortName,
|
|
@@ -161,6 +164,7 @@ export const ProductCard = ({
|
|
|
161
164
|
'spiffy-tw-h-full': growWithContainer,
|
|
162
165
|
'spiffy-tw-w-full': growWithContainer,
|
|
163
166
|
'spiffy-tw-max-w-full': growWithContainer,
|
|
167
|
+
'spiffy-tw-rounded-[8px]': layoutVariant === 'normal',
|
|
164
168
|
},
|
|
165
169
|
!growWithContainer && layoutClasses.container,
|
|
166
170
|
variantClassMap.get(finalVariant) ?? [],
|
|
@@ -209,11 +213,11 @@ export const ProductCard = ({
|
|
|
209
213
|
linkClassnames,
|
|
210
214
|
zoomOnHover
|
|
211
215
|
? [
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
216
|
+
'spiffy-tw-transition-transform',
|
|
217
|
+
'spiffy-tw-duration-200',
|
|
218
|
+
'spiffy-tw-origin-top',
|
|
219
|
+
'hover:spiffy-tw-scale-105',
|
|
220
|
+
]
|
|
217
221
|
: [],
|
|
218
222
|
);
|
|
219
223
|
|
|
@@ -260,8 +264,8 @@ export const ProductCard = ({
|
|
|
260
264
|
);
|
|
261
265
|
|
|
262
266
|
return (
|
|
263
|
-
<div className={containerClassnames} data-testid={dataTestId}>
|
|
264
|
-
<a href={url} onClick={() => handleClick(
|
|
267
|
+
<div className={containerClassnames} data-testid={dataTestId ?? PRODUCT_CARD_TESTID}>
|
|
268
|
+
<a href={url} onClick={() => handleClick()} target="_self" draggable={false}>
|
|
265
269
|
<div className={verticalContainerClassnames}>
|
|
266
270
|
<div className={imageClipContainerClassnames}>
|
|
267
271
|
<div className={imageContainerClassnames}>
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import classNames from 'classnames';
|
|
2
|
-
import {
|
|
3
|
-
import { CamelCasedPropertiesDeep } from 'src/util/camelCasedPropertiesDeep';
|
|
2
|
+
import { SearchResponseProductAttributes } from '@envive-ai/react-hooks/application/models';
|
|
4
3
|
import { productGridVariantClasses } from './productGridVariants';
|
|
5
4
|
import { ProductGridVariant, ProductCardConfig, ProductCard } from '../ProductCard';
|
|
6
5
|
|
|
7
6
|
interface ProductGridProps {
|
|
8
|
-
productList:
|
|
7
|
+
productList: SearchResponseProductAttributes['attributes'][];
|
|
9
8
|
productGridVariant: ProductGridVariant;
|
|
10
9
|
productGridClasses: string;
|
|
11
|
-
productCardConfig
|
|
10
|
+
productCardConfig: ProductCardConfig;
|
|
12
11
|
merchantShortName: string;
|
|
13
12
|
cardsGrowWithContainer?: boolean;
|
|
14
13
|
}
|
|
@@ -36,31 +35,27 @@ export const ProductGrid = ({
|
|
|
36
35
|
|
|
37
36
|
return (
|
|
38
37
|
<div className={productGridClasses}>
|
|
39
|
-
{productList.map((product:
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
/>
|
|
61
|
-
</div>
|
|
62
|
-
);
|
|
63
|
-
})}
|
|
38
|
+
{productList.map((product: (typeof productList)[0]) => (
|
|
39
|
+
<div key={product.id} className={cardContainerClasses}>
|
|
40
|
+
<ProductCard
|
|
41
|
+
productCardConfig={productCardConfig}
|
|
42
|
+
merchantShortName={merchantShortName}
|
|
43
|
+
imageUrl={product.imageUrl}
|
|
44
|
+
title={product.title}
|
|
45
|
+
url={product.url}
|
|
46
|
+
originalPrice={product.originalPrice}
|
|
47
|
+
salePrice={product.salePrice}
|
|
48
|
+
averageRating={product.averageRating}
|
|
49
|
+
numberReviews={product.numberReviews}
|
|
50
|
+
layoutVariant={productCardLayoutVariant}
|
|
51
|
+
variant={productCardVariant}
|
|
52
|
+
hoverVariant={productCardHoverVariant}
|
|
53
|
+
zoomOnHover={zoomOnHover}
|
|
54
|
+
aspectRatio={productCardImageAspectRatio}
|
|
55
|
+
growWithContainer={cardsGrowWithContainer}
|
|
56
|
+
/>
|
|
57
|
+
</div>
|
|
58
|
+
))}
|
|
64
59
|
</div>
|
|
65
60
|
);
|
|
66
61
|
};
|
|
@@ -14,6 +14,7 @@ export enum ChatElementDisplayLocation {
|
|
|
14
14
|
SEARCH_NAV_ENTRYPOINT = 'search_nav_entrypoint',
|
|
15
15
|
SEARCH_PROMPT = 'search_prompt',
|
|
16
16
|
SEARCH_PROMPT_BUTTON = 'search_prompt_button',
|
|
17
|
+
SEARCH_ZERO_STATE_SUGGESTED_PRODUCTS = 'search_zero_state_suggested_products',
|
|
17
18
|
PRODUCT_GRID = 'product_grid',
|
|
18
19
|
UNSPECIFIED = 'unspecified',
|
|
19
20
|
FILTER_MODAL = 'filter_modal',
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|