@soma-vertical-web/multi-lib 0.0.65 → 0.0.67

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 (77) hide show
  1. package/cms/ContentTypes/HelpButton/HelpButtonContent.d.ts +1 -1
  2. package/cms/Sections/BannerCarousel/BannerCarousel.d.ts +1 -1
  3. package/cms/Sections/BannerCarousel/index.d.ts +1 -1
  4. package/cms/Sections/BennefitsBar/Component.d.ts +2 -2
  5. package/cms/Sections/BennefitsBar/index.d.ts +1 -1
  6. package/cms/Sections/Newsletter/Component.d.ts +1 -3
  7. package/cms/Sections/SectionZone.d.ts +5 -0
  8. package/cms/index.d.ts +4 -5
  9. package/cms/server.d.ts +1 -1
  10. package/contexts/contexts/plp/PLPConstants.d.ts +6 -0
  11. package/contexts/contexts/plp/PLPInfiniteContext.tsx.d.ts +1 -1
  12. package/contexts/contexts/search/Constants.d.ts +6 -0
  13. package/contexts/contexts/search/Facets.d.ts +1 -1
  14. package/contexts/contexts/search/Products.d.ts +1 -1
  15. package/contexts/contexts/search/Search.d.ts +1 -1
  16. package/contexts/hooks/useScrollRestoration.d.ts +1 -1
  17. package/contexts/index.d.ts +4 -4
  18. package/data/helpers/search/search.d.ts +2 -0
  19. package/index-BBxYNFkz.mjs +416 -0
  20. package/index-CiMxj6Pg.mjs +412 -0
  21. package/index-CwBIv223.js +1 -0
  22. package/index-DKnolQoT.mjs +412 -0
  23. package/index.js +22 -22
  24. package/index.mjs +8184 -7096
  25. package/index2.js +1 -1
  26. package/index2.mjs +97 -95
  27. package/layout/index.d.ts +54 -8
  28. package/layout/team-component/PLPNavigation/Composite/BreadCrumb.d.ts +1 -3
  29. package/layout/team-component/PLPNavigation/Composite/Content.d.ts +1 -1
  30. package/layout/team-component/PLPNavigation/Composite/Filters.d.ts +1 -3
  31. package/layout/team-component/PLPNavigation/Composite/Root.d.ts +2 -2
  32. package/layout/team-component/PLPNavigation/Composite/Selected/Item.d.ts +1 -1
  33. package/layout/team-component/PLPNavigation/Composite/Selected/Selected.d.ts +1 -1
  34. package/layout/team-component/PLPNavigation/Composite/Selected/interfaces.d.ts +1 -7
  35. package/layout/team-component/PLPNavigation/PLPNavigation.d.ts +6 -6
  36. package/layout/team-component/Sort/Sort.d.ts +1 -1
  37. package/layout/template/PDC/Composite/Empty/Empty.d.ts +1 -1
  38. package/layout/template/PDC/Composite/Filters/Filters.d.ts +3 -5
  39. package/layout/template/PDC/Composite/Grid/Banners.d.ts +1 -1
  40. package/layout/template/PDC/Composite/Grid/Grid.d.ts +1 -1
  41. package/layout/template/PDC/Composite/Grid/NavigationTotal.d.ts +2 -3
  42. package/layout/template/PDC/Composite/InfiniteScroller/Banners/Banners.d.ts +1 -1
  43. package/layout/template/PDC/Composite/InfiniteScroller/InfiniteScroller.d.ts +1 -3
  44. package/layout/template/PDC/Composite/InfiniteScroller/Page/Composite/Card.d.ts +1 -1
  45. package/layout/template/PDC/Composite/InfiniteScroller/Page/Page.d.ts +1 -1
  46. package/layout/template/PDC/Composite/InfiniteScroller/Page/index.d.ts +1 -1
  47. package/layout/template/PDC/Composite/Navigation/Navigation.d.ts +1 -3
  48. package/layout/template/PDC/Composite/Notification/Notification.d.ts +1 -1
  49. package/layout/template/PDC/Composite/Pagination/Pagination.d.ts +1 -1
  50. package/layout/template/PDC/Composite/Pagination/helpers.d.ts +1 -2
  51. package/layout/template/PDC/Composite/Products/Products.d.ts +1 -1
  52. package/layout/template/PDC/PDC.d.ts +1 -1
  53. package/layout/template/PDC/index.d.ts +8 -8
  54. package/layout/template/SearchResult/Composite/Empty.d.ts +7 -0
  55. package/layout/template/SearchResult/Composite/Grid.d.ts +7 -0
  56. package/layout/template/SearchResult/Composite/GridHeader.d.ts +3 -0
  57. package/layout/template/SearchResult/Composite/Loading.d.ts +7 -0
  58. package/layout/template/SearchResult/Composite/Sort.d.ts +4 -0
  59. package/layout/template/SearchResult/SearchContent.d.ts +4 -0
  60. package/layout/template/SearchResult/SearchResult.d.ts +7 -0
  61. package/layout/template/SearchResult/index.d.ts +1 -0
  62. package/package.json +1 -1
  63. package/style.css +1 -1
  64. package/types/cms/ContentTypes/Search/index.d.ts +2 -2
  65. package/types/cms/Sections/BannerCarousel/index.d.ts +2 -3
  66. package/types/cms/Sections/BennefitsBar/index.d.ts +2 -0
  67. package/types/cms/Sections/Newsletter/index.d.ts +6 -0
  68. package/types/cms/Sections/ProductCarousel/index.d.ts +2 -4
  69. package/types/cms/Sections/SectionZone/intex.d.ts +64 -0
  70. package/types/constants.d.ts +41 -1
  71. package/types/contexts/contexts/plp.d.ts +38 -7
  72. package/types/contexts/contexts/search.d.ts +18 -16
  73. package/types/contexts/hooks/index.d.ts +12 -0
  74. package/types/layout/team-components/PLPNavigation/index.d.ts +3 -14
  75. package/types/layout/team-components/Sort/index.d.ts +2 -5
  76. package/types/layout/templates/PLP/index.d.ts +122 -3
  77. package/types/layout/templates/SearchResult/index.d.ts +44 -0
@@ -1,3 +1,3 @@
1
1
  import { HelpButtonContentProps } from '../../../types/cms/ContentTypes/HelpButton';
2
2
 
3
- export declare const HelpButtonContent: ({ HelpButton, ICONS, className, ...props }: HelpButtonContentProps) => Promise<import("react/jsx-runtime").JSX.Element>;
3
+ export declare const HelpButtonContent: ({ HelpButton, ICONS, className, ...APIprops }: HelpButtonContentProps) => Promise<import("react/jsx-runtime").JSX.Element>;
@@ -1,3 +1,3 @@
1
1
  import { BannerCarouselProps } from '../../../types/cms/Sections/BannerCarousel';
2
2
 
3
- export declare const BannerCarousel: ({ data, ICONS }: BannerCarouselProps) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const BannerCarousel: (data: BannerCarouselProps) => import("react/jsx-runtime").JSX.Element;
@@ -4,5 +4,5 @@ export declare function generateBannerCarousel({ ICONS }: {
4
4
  ICONS: ICONSType;
5
5
  }): import('../../../types/cms/Factories').ISection;
6
6
  export declare const Component: {
7
- [x: string]: ({ data, ICONS }: import('../../../types/cms/Sections/BannerCarousel').BannerCarouselProps) => import("react/jsx-runtime").JSX.Element;
7
+ [x: string]: (data: import('../../../types/cms/Sections/BannerCarousel').BannerCarouselProps) => import("react/jsx-runtime").JSX.Element;
8
8
  };
@@ -1,3 +1,3 @@
1
- import { BennefitsBarSectionType } from '../../../types/cms/Sections/BennefitsBar';
1
+ import { BennefitsBarProps } from '../../../types/cms/Sections/BennefitsBar';
2
2
 
3
- export declare const BennefitsBarSection: ({ data, CONSTANTS }: BennefitsBarSectionType) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const BennefitsBarSection: ({ data, CONSTANTS }: BennefitsBarProps) => import("react/jsx-runtime").JSX.Element;
@@ -4,5 +4,5 @@ export declare function generateBennefitsBarSection({ ICONS }: {
4
4
  ICONS: ICONSType;
5
5
  }): import('../../../types/cms/Factories').ISection;
6
6
  export declare const Component: {
7
- 'Bennefits Bar': ({ data, CONSTANTS }: import('../../../types/cms/Sections/BennefitsBar').BennefitsBarSectionType) => import("react/jsx-runtime").JSX.Element;
7
+ 'Bennefits Bar': ({ data, CONSTANTS }: import('../../../types/cms/Sections/BennefitsBar').BennefitsBarProps) => import("react/jsx-runtime").JSX.Element;
8
8
  };
@@ -1,5 +1,3 @@
1
1
  import { NewsLetterSectionType } from '../../../types/cms/Sections/Newsletter';
2
2
 
3
- export declare const NewsletterSection: ({ data: { componentIndex, ...props }, ClientNewsletterSection, }: NewsLetterSectionType & {
4
- ClientNewsletterSection: React.ComponentType<any>;
5
- }) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const NewsletterSection: ({ data: { componentIndex, ...props }, CONSTANTS, }: NewsLetterSectionType) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { FunctionComponent } from 'react';
2
+ import { SectionZoneProps } from '../../types/cms/Sections/SectionZone/intex';
3
+
4
+ declare const SectionZone: FunctionComponent<SectionZoneProps>;
5
+ export default SectionZone;
package/cms/index.d.ts CHANGED
@@ -7,21 +7,20 @@ export declare const clientCMS: {
7
7
  BannerSection: ({ data, className, priority, creative, ...props }: import('../types/cms/Sections/Banner').IBannerSectionTypeComponent & {
8
8
  imgStyles?: import('react').HTMLAttributes<HTMLImageElement>["style"];
9
9
  } & import('react').HTMLAttributes<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
10
- BennefitsBarSection: ({ data, CONSTANTS }: import('../types/cms/Sections/BennefitsBar').BennefitsBarSectionType) => import("react/jsx-runtime").JSX.Element;
10
+ BennefitsBarSection: ({ data, CONSTANTS }: import('../types/cms/Sections/BennefitsBar').BennefitsBarProps) => import("react/jsx-runtime").JSX.Element;
11
11
  SingleBannerSection: (data: import('../types/cms/Sections/Banner').BannerSectionType) => import("react/jsx-runtime").JSX.Element;
12
12
  TextContentSection: ({ data, ICONS, }: import('../types/cms/Sections/TextContent').TextContentSectionProps) => import("react/jsx-runtime").JSX.Element;
13
- BannerCarousel: ({ data, ICONS }: import('../types/cms/Sections/BannerCarousel').BannerCarouselProps) => import("react/jsx-runtime").JSX.Element;
13
+ BannerCarousel: (data: import('../types/cms/Sections/BannerCarousel').BannerCarouselProps) => import("react/jsx-runtime").JSX.Element;
14
14
  TextAccordionSection: ({ data, id: sectionId, ICONS, }: import('../types/cms/Sections/TextAccordion').TextAccordionSectionProps) => import("react/jsx-runtime").JSX.Element;
15
15
  TipbarScreening: ({ CONSTANTS, data }: import('../types/cms/ContentTypes/Tipbar').TipbarScreeningProps) => import("react/jsx-runtime").JSX.Element;
16
16
  ImageGrid: (data: import('../types/cms/Sections/ImageGrid').ImageGridSectionType) => import("react/jsx-runtime").JSX.Element;
17
17
  SearchPageScreening: ({ children, data, SectionZone, className, }: import('../types/cms/ContentTypes/Search').SearchPageScrenningProps) => import("react/jsx-runtime").JSX.Element;
18
18
  SearchContent: ({ SectionZone, CMS_PROJECT_NAME, storeId, previewId, }: import('../types/cms/ContentTypes/Search').SearchContentProps) => import("react/jsx-runtime").JSX.Element;
19
- NewsletterSection: ({ data: { componentIndex, ...props }, ClientNewsletterSection, }: import('../types/cms/Sections/Newsletter').NewsLetterSectionType & {
20
- ClientNewsletterSection: React.ComponentType<any>;
21
- }) => import("react/jsx-runtime").JSX.Element;
19
+ NewsletterSection: ({ data: { componentIndex, ...props }, CONSTANTS, }: import('../types/cms/Sections/Newsletter').NewsLetterSectionType) => import("react/jsx-runtime").JSX.Element;
22
20
  PDPProductCarousel: ({ data, CONSTANTS, WishListToggle, }: import('../types/cms/Sections/ProductCarousel').PDPProductCarouselProps) => import("react/jsx-runtime").JSX.Element[];
23
21
  ProductCarousel: ({ data, CONSTANTS, WishListToggle, }: import('../types/cms/Sections/ProductCarousel').ProductCarouselProps) => import("react/jsx-runtime").JSX.Element[];
24
22
  EmbedLive: ({ data }: import('../types/cms/Sections/EmbedLive').EmbedLiveProps) => import("react/jsx-runtime").JSX.Element;
23
+ SectionZone: import('react').FunctionComponent<import('../types/cms/Sections/SectionZone/intex').SectionZoneProps>;
25
24
  };
26
25
  helpers: typeof helpers;
27
26
  };
package/cms/server.d.ts CHANGED
@@ -37,6 +37,6 @@ export declare const serverCMS: {
37
37
  description: string;
38
38
  } | null>;
39
39
  SearchPageContent: ({ children, SectionZone, className, ...props }: import('../types/cms/ContentTypes/Search').SearchPageContentProps) => Promise<import("react/jsx-runtime").JSX.Element>;
40
- HelpButtonContent: ({ HelpButton, ICONS, className, ...props }: import('../types/cms/ContentTypes/HelpButton').HelpButtonContentProps) => Promise<import("react/jsx-runtime").JSX.Element>;
40
+ HelpButtonContent: ({ HelpButton, ICONS, className, ...APIprops }: import('../types/cms/ContentTypes/HelpButton').HelpButtonContentProps) => Promise<import("react/jsx-runtime").JSX.Element>;
41
41
  };
42
42
  };
@@ -0,0 +1,6 @@
1
+ import { PLPConstantsContextProps, PLPConstantsProviderProps } from '../../../types/contexts/contexts/plp';
2
+
3
+ declare const PLPConstants: import('react').Context<PLPConstantsContextProps>;
4
+ declare const PLPConstantsProvider: ({ children, ...props }: PLPConstantsProviderProps) => import("react/jsx-runtime").JSX.Element;
5
+ declare const usePLPConstants: () => PLPConstantsContextProps;
6
+ export { PLPConstants, PLPConstantsProvider, usePLPConstants };
@@ -1,6 +1,6 @@
1
1
  import { PLPInfiniteContextProps, PLPInfiniteProviderProps } from '../../../types/contexts/contexts/plp';
2
2
 
3
3
  declare const PLPInfiniteContext: import('react').Context<PLPInfiniteContextProps>;
4
- declare const PLPInfiniteProvider: ({ banners, children, itemsPerPage, searchParams, Notification }: PLPInfiniteProviderProps) => import("react/jsx-runtime").JSX.Element;
4
+ declare const PLPInfiniteProvider: ({ banners, children }: PLPInfiniteProviderProps) => import("react/jsx-runtime").JSX.Element;
5
5
  declare const usePLPInfiniteContext: () => PLPInfiniteContextProps;
6
6
  export { PLPInfiniteContext, PLPInfiniteProvider, usePLPInfiniteContext };
@@ -0,0 +1,6 @@
1
+ import { SearchConstantsProviderProps, SearchConstantsContextProps } from '../../../types/contexts/contexts/search';
2
+
3
+ declare const SearchConstants: import('react').Context<SearchConstantsContextProps>;
4
+ declare const SearchConstantsProvider: ({ children, ...props }: SearchConstantsProviderProps) => import("react/jsx-runtime").JSX.Element;
5
+ declare const useSearchConstants: () => SearchConstantsContextProps;
6
+ export { SearchConstants, SearchConstantsProvider, useSearchConstants };
@@ -1,5 +1,5 @@
1
1
  import { FacetsContextProps, FacetsProviderProps } from '../../../types/contexts/contexts/search';
2
2
 
3
- declare const FacetsProvider: ({ children, searchParams, forceUpdate, PLP_SORT_DEFAULT }: FacetsProviderProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const FacetsProvider: ({ children, forceUpdate, }: FacetsProviderProps) => import("react/jsx-runtime").JSX.Element;
4
4
  declare const useFacetsContext: () => FacetsContextProps;
5
5
  export { FacetsProvider, useFacetsContext };
@@ -1,5 +1,5 @@
1
1
  import { ProductsContextProps, ProductsProviderProps } from '../../../types/contexts/contexts/search';
2
2
 
3
- declare const ProductsProvider: ({ children, query, state, selectedFacets, forceUpdate, }: ProductsProviderProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const ProductsProvider: ({ children, query, forceUpdate, }: ProductsProviderProps) => import("react/jsx-runtime").JSX.Element;
4
4
  declare const useProductsContext: () => ProductsContextProps;
5
5
  export { ProductsProvider, useProductsContext };
@@ -1,5 +1,5 @@
1
1
  import { SearchProviderProps, SearchContextProps } from '../../../types/contexts/contexts/search';
2
2
 
3
- declare const SearchProvider: ({ children, sort, state, count, collectionId, brand, CONSTANTS }: SearchProviderProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const SearchProvider: ({ children, sort, state, count, collectionId, brand, searchParams, ITEMS_PER_PAGE }: SearchProviderProps) => import("react/jsx-runtime").JSX.Element;
4
4
  declare const useSearchContext: () => SearchContextProps;
5
5
  export { SearchProvider, useSearchContext };
@@ -1,3 +1,3 @@
1
1
  import { UseScrollRestorationProps } from '../../types/contexts/hooks';
2
2
 
3
- export declare const useScrollRestoration: ({ productCount, searchParams, PLP_GRID_SCROLL_BACK }: UseScrollRestorationProps) => void;
3
+ export declare const useScrollRestoration: ({ productCount, PLP_GRID_SCROLL_BACK }: UseScrollRestorationProps) => void;
@@ -94,7 +94,7 @@ export declare const contexts: {
94
94
  hook: () => import('../types/cms/ContentTypes/PLP').PLPContentContextProps;
95
95
  };
96
96
  plpInfinite: {
97
- provider: ({ banners, children, itemsPerPage, searchParams, Notification }: import('../types/contexts/contexts/plp').PLPInfiniteProviderProps) => import("react/jsx-runtime").JSX.Element;
97
+ provider: ({ banners, children }: import('../types/contexts/contexts/plp').PLPInfiniteProviderProps) => import("react/jsx-runtime").JSX.Element;
98
98
  hook: () => import('../types/contexts/contexts/plp').PLPInfiniteContextProps;
99
99
  };
100
100
  pdpdata: {
@@ -102,11 +102,11 @@ export declare const contexts: {
102
102
  };
103
103
  searchFacets: {
104
104
  hook: () => import('../types/contexts/contexts/search').FacetsContextProps;
105
- provider: ({ children, searchParams, forceUpdate, PLP_SORT_DEFAULT }: import('../types/contexts/contexts/search').FacetsProviderProps) => import("react/jsx-runtime").JSX.Element;
105
+ provider: ({ children, forceUpdate, }: import('../types/contexts/contexts/search').FacetsProviderProps) => import("react/jsx-runtime").JSX.Element;
106
106
  };
107
107
  searchProducts: {
108
108
  hook: () => import('../types/contexts/contexts/search').ProductsContextProps;
109
- provider: ({ children, query, state, selectedFacets, forceUpdate, }: import('../types/contexts/contexts/search').ProductsProviderProps) => import("react/jsx-runtime").JSX.Element;
109
+ provider: ({ children, query, forceUpdate, }: import('../types/contexts/contexts/search').ProductsProviderProps) => import("react/jsx-runtime").JSX.Element;
110
110
  };
111
111
  searchRoot: {
112
112
  hook: () => import('../types/contexts/contexts/search').RootContextProps;
@@ -114,7 +114,7 @@ export declare const contexts: {
114
114
  };
115
115
  searchSearch: {
116
116
  hook: () => import('../types/contexts/contexts/search').SearchContextProps;
117
- provider: ({ children, sort, state, count, collectionId, brand, CONSTANTS }: import('../types/contexts/contexts/search').SearchProviderProps) => import("react/jsx-runtime").JSX.Element;
117
+ provider: ({ children, sort, state, count, collectionId, brand, searchParams, ITEMS_PER_PAGE }: import('../types/contexts/contexts/search').SearchProviderProps) => import("react/jsx-runtime").JSX.Element;
118
118
  };
119
119
  searchSuggestedTerms: {
120
120
  hook: () => import('../types/contexts/contexts/search').SuggestedTermsContextProps;
@@ -1,3 +1,4 @@
1
+ import { AppRouterInstance } from 'next/dist/shared/lib/app-router-context.shared-runtime';
1
2
  import { State } from '../../../types/data/api/search';
2
3
 
3
4
  export declare const parseSearchState: ({ pathname, searchParams }: URL, facets: string[]) => State;
@@ -5,3 +6,4 @@ export declare const createCategorySlug: (slug: string[] | string, facets: strin
5
6
  export declare const convertSearchParams: (searchParams: {
6
7
  [key: string]: string | string[] | undefined;
7
8
  }) => URLSearchParams;
9
+ export declare const navigateToSearchPage: (router: AppRouterInstance, query?: string, count?: number, page?: number, sort?: string) => void;
@@ -0,0 +1,416 @@
1
+ import { jsxs as g, Fragment as $, jsx as p } from "react/jsx-runtime";
2
+ import { Utils as S } from "@soma-vertical-web/core-components";
3
+ const b = (e, t = !0) => Intl.NumberFormat("pt-BR", {
4
+ style: "currency",
5
+ currency: "BRL",
6
+ minimumFractionDigits: t ? 2 : 0
7
+ }).format(e), R = ({ valueInCents: e, hasFree: t, freeTaxMessage: n }) => e === 0 ? t ? n : b(0) : b(e / 100), y = (e, t) => {
8
+ const [n, s] = e.split(t);
9
+ return { name: n.trim(), size: s ? s.trim() : "" };
10
+ }, T = (e, t) => {
11
+ if (!e)
12
+ return {};
13
+ const [n, s] = e.split(t);
14
+ return { color: n == null ? void 0 : n.trim(), size: s == null ? void 0 : s.trim() };
15
+ }, C = (e, t = "tamanho") => {
16
+ if (e.additionalProperty) {
17
+ const [n] = e.additionalProperty;
18
+ return n != null && n.name ? n.name.toLocaleLowerCase() === t ? n.value : e.name : "";
19
+ }
20
+ return e.name;
21
+ }, O = (e, t) => e.replace(t, "").trim(), N = (e) => e.replace(/\//g, ""), z = ({ items: e, NAME_SPLIT_SYMBOL: t }) => {
22
+ const n = {
23
+ price: 0,
24
+ listPrice: 0,
25
+ installments: {
26
+ count: 0,
27
+ value: 0
28
+ }
29
+ }, s = (a, o) => {
30
+ var _;
31
+ o && (o.sellerId = a.sellerId, o.sellerName = a.sellerName, o.available = !0, o.isSellerDefault = a.sellerDefault);
32
+ const {
33
+ Price: l,
34
+ ListPrice: u,
35
+ PaymentOptions: { installmentOptions: d }
36
+ } = a.commertialOffer;
37
+ n.price = l, n.listPrice = u;
38
+ const c = (_ = d == null ? void 0 : d[0]) == null ? void 0 : _.installments;
39
+ if (c) {
40
+ const { count: m, value: f } = c[c.length - 1];
41
+ n.installments = {
42
+ count: m,
43
+ value: f / 100
44
+ };
45
+ }
46
+ };
47
+ let r = !0;
48
+ const i = e.reduce((a, o) => {
49
+ var d;
50
+ const l = {
51
+ name: o.name,
52
+ sku: o.itemId,
53
+ value: ((d = o.Tamanho) == null ? void 0 : d[0]) ?? y(o.nameComplete ?? o.name, t).size,
54
+ available: !1,
55
+ sellerId: "",
56
+ sellerName: "",
57
+ isSellerDefault: !1
58
+ }, u = o.sellers.filter((c) => (c.sellerDefault && c.commertialOffer.IsAvailable && (l.available = !0, s(c, l)), c.commertialOffer.IsAvailable));
59
+ return !l.isSellerDefault && u.length > 0 && (l.available = !0, s(u[0], {
60
+ ...l,
61
+ sellerId: u[0].sellerId,
62
+ sellerName: u[0].sellerName
63
+ })), l.available === !1 && (r = !1), a.push(l), a;
64
+ }, []);
65
+ return {
66
+ ...n,
67
+ sizes: i,
68
+ allSizesAvailable: r
69
+ };
70
+ }, P = (e) => e ? !e.offers.offers.find(({ quantity: t = 0 }) => t > 0) : !1, x = (e, t) => {
71
+ const n = e.find(
72
+ (s) => s.availability.includes("InStock") && s.quantity && s.listPrice > 0 && s.seller.identifier === t
73
+ );
74
+ return n || e.find(
75
+ (s) => s.availability.includes("InStock") && s.quantity && s.listPrice > 0
76
+ );
77
+ }, F = ({ images: e, TEXTURE_IMAGE: t }) => e.find((n) => t.includes(n.imageLabel)) ?? e[0], j = (e, t) => {
78
+ const n = /\/ids\/(\d+)\//, s = e.match(n);
79
+ return s ? e.replace(
80
+ `/${s[1]}/`,
81
+ `/${s[1]}-${t.width}-${t.height}/`
82
+ ) : e;
83
+ }, A = (e, t) => {
84
+ const n = /\/ids\/(\d+)-(\d+)-(\d+)\//, s = e.match(n);
85
+ return s ? e.replace(
86
+ `/${s[1]}-${s[2]}-${s[3]}/`,
87
+ `/${s[1]}-${t.width}-${t.height}/`
88
+ ) : e;
89
+ }, D = ({
90
+ images: e,
91
+ label: t
92
+ }) => {
93
+ const n = e.filter(
94
+ (s) => s.keywords === t.first || s.keywords === t.second || s.alternateName === t.first || s.alternateName === t.second
95
+ );
96
+ return n.length === 0 ? e.slice(0, 2) : n;
97
+ }, B = (e) => {
98
+ const [t, n] = e.split("/").map(Number);
99
+ if (Number.isNaN(t) || Number.isNaN(n))
100
+ throw new Error("[ERROR ASPECT RATIO IMAGE]: Invalid aspect ratio format");
101
+ return n / t;
102
+ }, E = (e, t, n) => {
103
+ t && (e ? (t.getAttribute("src") || (t.src = n ?? ""), t.play()) : t.pause());
104
+ }, Ie = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
105
+ __proto__: null,
106
+ disableSKU: P,
107
+ formatPriceToCurrency: b,
108
+ freightParsePrice: R,
109
+ getAspectRatio: B,
110
+ getColorAndSizeFromSkuName: T,
111
+ getFirstImages: D,
112
+ getProductNameWithoutSku: O,
113
+ getSKUName: C,
114
+ getSkuInfos: z,
115
+ getThumbImage: F,
116
+ getValidOffer: x,
117
+ removeSlashes: N,
118
+ resizingImg: j,
119
+ setVideoPlay: E,
120
+ splitNameAndSizeFromFullName: y,
121
+ updatedResizedImg: A
122
+ }, Symbol.toStringTag, { value: "Module" })), k = "fuzzy", v = "operator", L = (e) => ({
123
+ isDepartment: e != null && e.length ? e[0].key === "category-1" : !1
124
+ }), we = (e, t) => {
125
+ const n = decodeURIComponent(t ?? "").slice(1).split("/");
126
+ return e.map((s) => {
127
+ if (s.key === "category-2" && s.__typename === "FacetBoolean") {
128
+ const r = s.values;
129
+ return {
130
+ ...s,
131
+ values: r.filter(
132
+ (i) => !n.find(
133
+ (a) => a.toLowerCase() === i.value || a.toLowerCase() === i.name.toLowerCase()
134
+ )
135
+ )
136
+ };
137
+ }
138
+ return s;
139
+ });
140
+ }, q = (e, t) => t ? e === "category-1" : !1, U = (e) => e.key === "operator" && (e.value === "and" || e.value === "or"), M = (e) => e.type === "TEXT", H = (e) => e.key === "fuzzy" && (e.value === "0" || e.value === "1" || e.value === "auto"), K = (e) => {
141
+ const { key: t, name: n, values: s } = e;
142
+ return {
143
+ __typename: "FacetBoolean",
144
+ key: t,
145
+ label: n,
146
+ values: s.slice().sort((r, i) => r.name.localeCompare(i.name))
147
+ };
148
+ }, V = ({ key: e, values: t }) => ({
149
+ __typename: "FacetRange",
150
+ key: e,
151
+ values: t
152
+ }), $e = (e, t, n) => {
153
+ if (!(e instanceof Object) || !("facets" in e))
154
+ return [];
155
+ const { facets: s = [] } = e, r = t != null && t.length ? t[0].key === "category-1" : !1;
156
+ return s.filter(
157
+ (a) => !n || !q(a.key, r)
158
+ ).map(
159
+ (a) => M(a) ? K(a) : V(a)
160
+ );
161
+ }, Se = (e, t) => {
162
+ const n = e.find(({ key: r }) => r === k) ?? null, s = e.find(({ key: r }) => r === v) ?? null;
163
+ n && H(n) && t.append(k, n.value), s && U(s) && t.append(v, s.value);
164
+ }, Y = (e) => e.map((t) => {
165
+ const [n, s] = t.split("/");
166
+ return { key: n, value: s };
167
+ }), Re = (e, t) => {
168
+ const n = decodeURIComponent(t ?? "").slice(1).split("/"), s = e.filter(({ value: i }) => !n.includes(decodeURIComponent(i))).map((i) => ({
169
+ ...i,
170
+ value: decodeURIComponent(i.value)
171
+ })), { isDepartment: r } = L(s);
172
+ return s == null ? void 0 : s.filter((i) => !q(i.key, r));
173
+ }, Te = ({ pathname: e, searchParams: t }, n) => {
174
+ const s = t.get("sort") ?? "", r = t.get("query") ?? null, i = parseInt(t.get("page") ?? "1", 10);
175
+ return {
176
+ sort: s,
177
+ facets: Y(n),
178
+ term: r,
179
+ base: r ? "" : e,
180
+ page: i
181
+ };
182
+ }, Ce = (e) => {
183
+ const t = new URLSearchParams();
184
+ return Object.entries(e).forEach(([n, s]) => {
185
+ Array.isArray(s) ? s.forEach((r) => t.append(n, r)) : s !== void 0 && t.append(n, s);
186
+ }), t;
187
+ }, Oe = (e, t, n = 24, s = 1, r) => {
188
+ const i = `/search?query=${t ?? ""}&count=${n}&page=${s}${r ? `&sort=${r.replace("_", ":")}` : ""}`;
189
+ e.push(i);
190
+ }, h = {
191
+ "responsive-mobile-flex": "_responsive-mobile-flex_t5bry_2",
192
+ "responsive-desktop-flex": "_responsive-desktop-flex_t5bry_13",
193
+ "responsive-mobile-block": "_responsive-mobile-block_t5bry_24",
194
+ "responsive-desktop-block": "_responsive-desktop-block_t5bry_35"
195
+ }, I = {}, Ne = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
196
+ __proto__: null,
197
+ default: I
198
+ }, Symbol.toStringTag, { value: "Module" })), J = "_header_qh6ki_40", W = "_actions_qh6ki_61", G = "_breadcrumb_qh6ki_72", X = "_credits_qh6ki_87", Q = "_pdplinks_qh6ki_115", Z = "_similars_qh6ki_142", ee = "_sizes_qh6ki_181", te = "_measurementTable_qh6ki_197", ne = "_measurementHead_qh6ki_210", se = "_measurementRows_qh6ki_215", ae = "_measurementRowsTitle_qh6ki_232", re = "_measurementRowsText_qh6ki_244", ie = "_measurementImage_qh6ki_255", oe = "_measurementImageContainer_qh6ki_258", ce = "_measurementContent_qh6ki_267", le = "_measurementTitle_qh6ki_271", me = "_measurementClose_qh6ki_282", _e = "_productref_qh6ki_347", ue = "_slideOut_qh6ki_1", de = "_slideIn_qh6ki_1", pe = "_content_qh6ki_327", fe = "_pdp_qh6ki_115", he = "_divider_qh6ki_510", ze = {
199
+ "bottom-navigation": "_bottom-navigation_qh6ki_1",
200
+ "bottom-navigation__credits-modifier": "_bottom-navigation__credits-modifier_qh6ki_18",
201
+ "bottom-navigation__header": "_bottom-navigation__header_qh6ki_21",
202
+ "bottom-navigation__price-and-promo": "_bottom-navigation__price-and-promo_qh6ki_31",
203
+ header: J,
204
+ actions: W,
205
+ "add-to-cart": "_add-to-cart_qh6ki_68",
206
+ breadcrumb: G,
207
+ "breadcrumb--active": "_breadcrumb--active_qh6ki_77",
208
+ credits: X,
209
+ "gallery-carousel-modifier": "_gallery-carousel-modifier_qh6ki_92",
210
+ pdplinks: Q,
211
+ "links-wrapper": "_links-wrapper_qh6ki_125",
212
+ similars: Z,
213
+ "similars-info": "_similars-info_qh6ki_154",
214
+ "toggle-style-modifier": "_toggle-style-modifier_qh6ki_163",
215
+ "accessibility-info": "_accessibility-info_qh6ki_167",
216
+ sizes: ee,
217
+ "price-wrapper": "_price-wrapper_qh6ki_193",
218
+ measurementTable: te,
219
+ measurementHead: ne,
220
+ measurementRows: se,
221
+ measurementRowsTitle: ae,
222
+ measurementRowsText: re,
223
+ measurementImage: ie,
224
+ measurementImageContainer: oe,
225
+ measurementContent: ce,
226
+ measurementTitle: le,
227
+ measurementClose: me,
228
+ "tabs-root-modifier": "_tabs-root-modifier_qh6ki_288",
229
+ "tabs-list-modifier": "_tabs-list-modifier_qh6ki_306",
230
+ "tabs-item-modifier": "_tabs-item-modifier_qh6ki_323",
231
+ "content-wrapper": "_content-wrapper_qh6ki_327",
232
+ productref: _e,
233
+ "tabs-panel": "_tabs-panel_qh6ki_358",
234
+ "tabs-panel-exit": "_tabs-panel-exit_qh6ki_364",
235
+ slideOut: ue,
236
+ "tabs-panel-enter": "_tabs-panel-enter_qh6ki_368",
237
+ slideIn: de,
238
+ content: pe,
239
+ pdp: fe,
240
+ "pdp-main": "_pdp-main_qh6ki_426",
241
+ "pdp-main__gallery-wrapper": "_pdp-main__gallery-wrapper_qh6ki_431",
242
+ "pdp-main__info": "_pdp-main__info_qh6ki_448",
243
+ "pdp-main__info-main-content": "_pdp-main__info-main-content_qh6ki_468",
244
+ "pdp-main__info-subsection": "_pdp-main__info-subsection_qh6ki_468",
245
+ "subsection-product-info": "_subsection-product-info_qh6ki_479",
246
+ "subsection-similars": "_subsection-similars_qh6ki_482",
247
+ "subsection-sizes": "_subsection-sizes_qh6ki_485",
248
+ "subsection-actions": "_subsection-actions_qh6ki_488",
249
+ "pdp-main__info-secondary-content": "_pdp-main__info-secondary-content_qh6ki_492",
250
+ "sections-title": "_sections-title_qh6ki_498",
251
+ divider: he,
252
+ "breadcrumbs-desktop": "_breadcrumbs-desktop_qh6ki_515",
253
+ "breadcrumbs-mobile": "_breadcrumbs-mobile_qh6ki_524"
254
+ }, Pe = ({
255
+ children: e,
256
+ data: t,
257
+ SectionZone: n,
258
+ className: s
259
+ }) => {
260
+ var d, c;
261
+ const r = ((d = t == null ? void 0 : t.filter((_) => {
262
+ var m, f;
263
+ return ((f = (m = _.config) == null ? void 0 : m.responsive) == null ? void 0 : f.deviceType) === "mobile";
264
+ })[0]) == null ? void 0 : d.sections) || [], i = ((c = t == null ? void 0 : t.filter((_) => {
265
+ var m, f;
266
+ return ((f = (m = _.config) == null ? void 0 : m.responsive) == null ? void 0 : f.deviceType) === "desktop";
267
+ })[0]) == null ? void 0 : c.sections) || [], a = r.slice(0, 1), o = r.slice(1, r.length), l = i.slice(0, 1), u = i.slice(1, i.length);
268
+ return /* @__PURE__ */ g($, { children: [
269
+ /* @__PURE__ */ g("div", { className: s, children: [
270
+ /* @__PURE__ */ p("div", { className: h["responsive-mobile-flex"], children: /* @__PURE__ */ p(n, { data: a ?? [] }) }),
271
+ /* @__PURE__ */ p("div", { className: h["responsive-desktop-flex"], children: /* @__PURE__ */ p(n, { data: l ?? [] }) })
272
+ ] }),
273
+ e,
274
+ /* @__PURE__ */ p("div", { className: h["responsive-mobile-flex"], children: /* @__PURE__ */ p(n, { data: o ?? [] }) }),
275
+ /* @__PURE__ */ p("div", { className: h["responsive-desktop-flex"], children: /* @__PURE__ */ p(n, { data: u ?? [] }) }),
276
+ /* @__PURE__ */ p(S.Divider, {})
277
+ ] });
278
+ };
279
+ async function be({ contentType: e, storeId: t, CMS_PROJECT_NAME: n, NextCookies: s }) {
280
+ const r = await w({
281
+ contentType: e,
282
+ storeId: t,
283
+ CMS_PROJECT_NAME: n,
284
+ NextCookies: s
285
+ });
286
+ if (r.status === 200) {
287
+ const i = {
288
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
289
+ contentType: e,
290
+ data: r.data
291
+ };
292
+ console.log("Resultado da chamada:", r);
293
+ const a = `backup-${e}-${Date.now()}.json`;
294
+ return await I.writeFile(
295
+ `./backups/${a}`,
296
+ JSON.stringify(i, null, 2),
297
+ "utf-8"
298
+ ), { success: !0, fileName: a };
299
+ }
300
+ return { success: !1, error: r.error || "No data to backup" };
301
+ }
302
+ async function ge(e) {
303
+ return be(e);
304
+ }
305
+ async function ke({
306
+ contentType: e,
307
+ documentId: t,
308
+ versionId: n,
309
+ storeId: s,
310
+ CMS_PROJECT_NAME: r
311
+ }) {
312
+ const i = t && t.length ? `/${t}` : "", a = n && n.length ? `?versionId=${n}` : "";
313
+ return fetch(
314
+ `https://${s}.myvtex.com/_v/cms/api/${r}/${e}${i}${a}`,
315
+ { cache: "no-cache" }
316
+ );
317
+ }
318
+ async function ve({
319
+ contentType: e,
320
+ documents: t,
321
+ NextCookies: n,
322
+ previewId: s,
323
+ CMS_PROJECT_NAME: r,
324
+ storeId: i
325
+ }) {
326
+ var o;
327
+ const a = JSON.parse(
328
+ s ?? ((o = n == null ? void 0 : n().get("cms_preview_data")) == null ? void 0 : o.value) ?? "{}"
329
+ );
330
+ if (a && (a == null ? void 0 : a.contentType) === e) {
331
+ const l = a.documentId && a.documentId.length ? `/${a.documentId}` : "", u = a != null && a.versionId && (a != null && a.versionId.length) ? `?versionId=${a == null ? void 0 : a.versionId}` : "", c = await (await fetch(
332
+ `https://${i}.myvtex.com/_v/cms/api/${r}/${e}${l}${u}`,
333
+ { cache: "no-store" }
334
+ )).json(), _ = t.filter(
335
+ (m) => c.id !== m.documentId
336
+ );
337
+ return _.unshift(c), _;
338
+ }
339
+ return t;
340
+ }
341
+ async function w({
342
+ contentType: e,
343
+ NextCookies: t,
344
+ CMS_PROJECT_NAME: n,
345
+ storeId: s,
346
+ previewId: r
347
+ }) {
348
+ var d, c;
349
+ const i = JSON.parse(
350
+ r ?? ((d = t == null ? void 0 : t().get("cms_preview_data")) == null ? void 0 : d.value) ?? "{}"
351
+ ), a = [];
352
+ let o = 1, l = 0, u = !0;
353
+ try {
354
+ do {
355
+ const m = await (await fetch(
356
+ `https://${s}.myvtex.com/_v/cms/api/${n}/${e}?page=${o}`
357
+ )).json();
358
+ o === 1 && (l = m.totalItems), (c = m == null ? void 0 : m.data) != null && c.length && a.push(...m.data), u = m.hasNextPage, o++;
359
+ } while (u && a.length < l);
360
+ if (i.previewMode && a.length) {
361
+ const _ = await ve({
362
+ contentType: e,
363
+ documents: a,
364
+ NextCookies: t,
365
+ CMS_PROJECT_NAME: n,
366
+ storeId: s
367
+ });
368
+ return {
369
+ status: _.length > 0 ? 200 : 404,
370
+ data: _ ?? []
371
+ };
372
+ }
373
+ return {
374
+ status: a.length ? 200 : 404,
375
+ data: a
376
+ };
377
+ } catch (_) {
378
+ return { status: "error", data: [], error: _ };
379
+ }
380
+ }
381
+ const xe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
382
+ __proto__: null,
383
+ cmsBackup: ge,
384
+ getCMSContentType: ke,
385
+ getContentType: w
386
+ }, Symbol.toStringTag, { value: "Module" }));
387
+ export {
388
+ Pe as S,
389
+ Ne as _,
390
+ z as a,
391
+ F as b,
392
+ C as c,
393
+ P as d,
394
+ Ie as e,
395
+ b as f,
396
+ T as g,
397
+ R as h,
398
+ x as i,
399
+ D as j,
400
+ E as k,
401
+ O as l,
402
+ ze as m,
403
+ j as n,
404
+ Re as o,
405
+ Te as p,
406
+ we as q,
407
+ h as r,
408
+ y as s,
409
+ Oe as t,
410
+ A as u,
411
+ w as v,
412
+ Se as w,
413
+ $e as x,
414
+ Ce as y,
415
+ xe as z
416
+ };