@soma-vertical-web/multi-lib 0.0.38 → 0.0.39
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/cms/ContentTypes/Header/index.d.ts +1 -1
- package/cms/ContentTypes/Tipbar/Tipbar.d.ts +3 -0
- package/cms/ContentTypes/Tipbar/TipbarScreening.d.ts +3 -0
- package/cms/index.d.ts +1 -0
- package/cms/server.d.ts +7 -4
- package/contexts/contexts/Session.d.ts +5 -0
- package/contexts/contexts/header/UserMenuContext.d.ts +6 -0
- package/contexts/contexts/plp/PLPContext.d.ts +6 -0
- package/contexts/contexts/plp/PLPInfiniteContext.tsx.d.ts +6 -0
- package/contexts/hooks/useOnClickOutside.d.ts +3 -0
- package/contexts/index.d.ts +8 -0
- package/contexts/store/plp.d.ts +3 -0
- package/data/helpers/plp/index.d.ts +81 -0
- package/index.js +20 -20
- package/index.mjs +4277 -3866
- package/index2.js +1 -1
- package/index2.mjs +261 -243
- package/layout/index.d.ts +0 -4
- package/layout/team-component/UserMenu/Composite/Content.d.ts +7 -0
- package/layout/team-component/UserMenu/Composite/Credits.d.ts +7 -0
- package/layout/team-component/UserMenu/Composite/Login.d.ts +10 -0
- package/layout/team-component/UserMenu/Composite/Menu.d.ts +7 -0
- package/layout/team-component/UserMenu/Composite/Modal.d.ts +7 -0
- package/layout/team-component/UserMenu/Composite/Root.d.ts +7 -0
- package/layout/team-component/UserMenu/Composite/Tooltip.d.ts +4 -0
- package/layout/team-component/UserMenu/UserMenu.d.ts +31 -0
- package/layout/team-component/UserMenu/helpers.d.ts +7 -0
- package/layout/team-component/UserMenu/index.d.ts +4 -0
- package/layout/utils/SessionEvent/index.d.ts +1 -0
- package/package.json +1 -1
- package/server.d.ts +2 -5
- package/style.css +1 -1
- package/types/cms/ContentTypes/Tipbar/index.d.ts +9 -0
- package/types/contexts/contexts/plp.d.ts +48 -1
- package/types/contexts/contexts/session.d.ts +84 -0
- package/types/layout/team-components/UserMenu/index.d.ts +60 -0
package/index2.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const re=require("yup"),y=require("./__vite-browser-external-B8mGO3z6.js"),v=require("react/jsx-runtime"),T=require("@soma-vertical-web/core-components"),ne=require("sanitize-html");function oe(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const o=oe(re),d=async(e,t={})=>{const{method:r="GET",body:n,headers:a={},priority:s="auto",cache:i="default"}=t;return fetch(e,{method:r,headers:{...a,Accept:"application/json","Content-Type":"application/json"},priority:s,cache:i,...n?{body:JSON.stringify(n)}:{}}).then(c=>c.json()).catch(c=>{console.error("[ERROR FETCH VTEX]",c)})},S=new Map;async function se(e,t={}){var r;try{const{abort:n=!1}=t,a=new AbortController;n&&(S.has(e)&&((r=S.get(e))==null||r.abort(),S.delete(e)),S.set(e,a));const s=d(e,{...t,...n?{signal:a.signal}:{}});return n&&S.delete(e),s}catch(n){if(n.name==="AbortError"){console.log(`[REQUEST CANCELLED]: ${e}`);return}throw console.error(`[ERROR API]: ${n.message}`),n}}const ae=o.object({country:o.string().length(3,"Country code must be 3 characters long").required("Country is required"),postalCode:o.string().nullable()});async function ie({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ae.validate(t);const{country:n,postalCode:a}=t;return await d(`${e}/api/checkout/pub/postal-code/${n}/${a}`,{method:"POST",body:t,...r})}const ce=o.object({orderFormId:o.string().nullable(),sellerCode:o.string().nullable(),sellerName:o.string().nullable()});async function M({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ce.validate(t);const{orderFormId:n,sellerCode:a,sellerName:s}=t,i=a?`${a.trim()} - ${s}`:null;return d(`${e}/api/checkout/pub/orderForm/${n}/attachments/openTextField`,{method:"POST",body:{value:i},...r})}const le=o.object({orderFormId:o.string().nullable(),sellerCode:o.string().nullable(),marketingData:o.object()});async function x({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await le.validate(t);const{orderFormId:n,sellerCode:a,marketingData:s}=t,i=a?{utmCampaign:a?a.toUpperCase():"",utmiCampaign:a?"codigodavendedora":"semcodigo"}:{};return d(`${e}/api/checkout/pub/orderForm/${n}/attachments/marketingData`,{method:"POST",body:{...s,...i},...r})}const ue=o.object({orderFormId:o.string().nullable(),sellerCode:o.string().nullable(),sellerName:o.string().nullable()});async function de({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ue.validate(t);const n=await M({apiUrl:e,body:t,fetchOptions:r});return x({apiUrl:e,body:{...t,marketingData:n==null?void 0:n.marketingData},fetchOptions:r})}const me=o.object({orderFormId:o.string().nullable(),coupon:o.string().nullable()});async function pe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await me.validate(t);const{coupon:n="",orderFormId:a}=t;return d(`${e}/api/checkout/pub/orderForm/${a}/coupons`,{method:"POST",body:{text:n},...r})}const ge=o.object({appId:o.string().required("App ID is required"),orderFormId:o.string().nullable(),key:o.array().of(o.string())});async function fe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ge.validate(t);const{appId:n="faststore",orderFormId:a,key:s}=t;return d(`${e}/api/checkout/pub/orderForm/${a}/customData/${n}/${s}`,{method:"PUT",...r})}const he=o.object().shape({name:o.string().required("Attachment name is required"),content:o.object().nullable()});var L;const Ie=o.object().shape({attachments:(L=o.array().of(he))==null?void 0:L.nullable(),id:o.string().required("ID of SKU is required"),index:o.number().integer().nullable(),quantity:o.number().integer().nullable(),seller:o.string().required("Seller is required"),price:o.number().integer()}),be=o.object({orderFormId:o.string().required("OrderFormId is required"),orderItems:o.array().of(Ie)});async function ye({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await be.validate(t);const{orderFormId:n,orderItems:a}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/items`,{method:"POST",body:{orderItems:a},...r})}const ve=o.object({orderFormId:o.string().nullable()});async function Ce({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ve.validate(t);const{orderFormId:n}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/items/removeAll`,{method:"POST",...r})}const Re=o.object().shape({name:o.string().required("Attachment name is required"),content:o.object().nullable()});var V;const Fe=o.object().shape({attachments:(V=o.array().of(Re))==null?void 0:V.nullable(),id:o.string().required("ID of SKU is required"),index:o.number().integer().nullable(),quantity:o.number().integer().nullable(),seller:o.string().required("Seller is required"),price:o.number().integer()}),Oe=o.object({orderFormId:o.string().nullable(),orderItems:o.array().of(Fe)});async function Se({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Oe.validate(t);const{orderFormId:n,orderItems:a}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/items/update`,{method:"POST",body:{orderItems:a},...r})}const $e=o.object({orderFormId:o.string().nullable()});async function Ee({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await $e.validate(t);const{orderFormId:n}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/messages/clear`,{method:"POST",...r})}const Te=o.object({id:o.string().nullable(),itemIndex:o.number().nullable(),orderFormId:o.string().nullable(),remove:o.boolean().nullable()});async function qe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Te.validate(t);const{itemIndex:n,orderFormId:a,id:s,remove:i}=t,c=i?`/${s}/remove`:"",l=`${e}/api/checkout/pub/orderForm/${a}/items/${n}/offerings${c}`;return d(l,{method:"POST",body:{id:s},...r})}const Pe=o.object({orderFormId:o.string().nullable()});async function je({apiUrl:e,body:t,fetchOptions:r,extraData:n}){var i;if(!t){console.error("[ERROR FETCHING] Body is required");return}await Pe.validate(t);const a=new URLSearchParams({refreshOutdatedData:"true"}),s=t.orderFormId&&((i=n.orderFormPurchaseId)==null?void 0:i.value)!==t.orderFormId?`${e}/api/checkout/pub/orderForm/${t.orderFormId}?${String(a)}`:`${e}/api/checkout/pub/orderForm`;return d(s,{method:"GET",...r})}const Ae=o.object({orderFormId:o.string().nullable(),email:o.string().email().required(),firstName:o.string().required(),lastName:o.string().required(),documentType:o.string().required(),document:o.string().required(),phone:o.string().matches(/^\+\d{1,3}\d{10,11}$/)});async function Ne({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Ae.validate(t);const{orderFormId:n,...a}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/attachments/clientProfileData`,{method:"POST",body:{...a},...r})}const ke=o.object({sellerCode:o.string().nullable()});async function we({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ke.validate(t);const{sellerCode:n=""}=t;return d(`${e}/api/dataentities/VD/search?_fields=id,cod,name,ativo&cod=${n}`,{method:"GET",headers:{Accept:"application/vnd.vtex.ds.v10+json"},...r})}const _e=o.object().shape({country:o.string().length(3,"Country code must be 3 characters long").required("Country is required"),orderFormId:o.string().nullable(),postalCode:o.string().nullable()});async function De({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await _e.validate(t);const{country:n,orderFormId:a,postalCode:s}=t,i=s?{address:{addressType:"residential",postalCode:s,country:n}}:{logisticsInfo:[],clearAddressIfPostalCodeNotFound:!0};return d(`${e}/api/checkout/pub/orderForm/${a}/attachments/shippingData`,{method:"POST",body:i,...r})}const He=o.object().shape({orderFormId:o.string().nullable(),options:o.array().of(o.object().shape({itemIndex:o.number(),selectedDeliveryChannel:o.string(),selectedSla:o.string()})),selectedAddresses:o.array().of(o.object().shape({addressId:o.string().required(),addressType:o.string().required(),city:o.string().nullable(),complement:o.string().nullable(),country:o.string().required().length(3),geoCoordinates:o.array().of(o.number()).required().min(0),isDisposable:o.boolean().required(),neighborhood:o.string().nullable(),number:o.string().nullable(),postalCode:o.string().required(),receiverName:o.string().nullable(),reference:o.string().nullable(),state:o.string().nullable(),street:o.string().nullable()}))});async function Ge({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await He.validate(t);const{orderFormId:n,options:a,selectedAddresses:s}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/attachments/shippingData`,{method:"POST",body:{selectedAddresses:s,clearAddressIfPostalCodeNotFound:!1,logisticsInfo:a},...r})}const Be=o.object({country:o.string().length(3,"Country code must be 3 characters long").required("Country is required"),postalCode:o.string().nullable(),geoCoordinates:o.object().shape({longitude:o.number().required(),latitude:o.number().required()})});async function Ue({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Be.validate(t);const{country:n="",geoCoordinates:a,postalCode:s=""}=t,i=new URLSearchParams({country:String(n)});return s?i.append("postalCode",s):i.append("geoCoordinates",`${a==null?void 0:a.longitude};${a==null?void 0:a.latitude}`),await d(`${e}/api/checkout/pub/regions/?${i.toString()}`,{method:"GET",...r})}const Le=o.object({id:o.string().required("ID of SKU is required"),quantity:o.number().integer().required("Quantity of item is required"),seller:o.string()}),Ve=o.object({items:o.array().of(Le),country:o.string().length(3,"Country code must be 3 characters long").required("Country is required"),postalCode:o.string().nullable(),geoCoordinates:o.array().nullable().of(o.number()).length(2)});async function Me({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}return await Ve.validate(t),d(`${e}/api/checkout/pub/orderForms/simulation`,{method:"POST",body:t,...r})}const xe=Object.freeze(Object.defineProperty({__proto__:null,getMasterDataSellerCode:we,getOrderForm:je,postOrderFormAddCoupon:pe,postOrderFormAttachClientProfileData:Ne,postOrderFormAttachOrderFormData:de,postOrderFormAttachShippingData:De,postOrderFormAttachmentsMarketingData:x,postOrderFormAttachmentsOpenTextField:M,postOrderFormClearMessages:Ee,postOrderFormFreightSimulation:Me,postOrderFormItems:ye,postOrderFormRegion:Ue,postOrderFormRemoveAllItems:Ce,postOrderFormUpdateItems:Se,postOrderFormUpdateShippingData:Ge,postOrderformAddress:ie,putOrderFormCustomData:fe,updateOrderFormOffering:qe},Symbol.toStringTag,{value:"Module"})),ze=o.object({skuId:o.string()});async function Qe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ze.validate(t);const{skuId:n}=t;return d(`${e}/api/catalog/pvt/stockkeepingunitkit?parentSkuId=${n}`,{...r})}const Je=o.object({ids:o.array().of(o.string().required("ID are required")).required("IDs are required")});async function Ke({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Je.validate(t);const{ids:n}=t;return d(`${e}/api/catalog_system/pub/products/search?fq=${n.map(a=>`productId:${a}`).join("&fq=")}`,{...r})}const Ye=o.object({productId:o.number().required("Product ID is required")});async function We({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Ye.validate(t);const{productId:n}=t;return d(`${e}/api/catalog_system/pub/products/crossselling/similars/${n.toString()}`,{...r})}const Xe=Object.freeze(Object.defineProperty({__proto__:null,getCatalogKitProducts:Qe,getCatalogProducts:Ke,getCatalogSimilars:We},Symbol.toStringTag,{value:"Module"})),Ze=(e="")=>e.charAt(0).toUpperCase()+e.slice(1),G=(e,t=" ")=>!e||typeof e=="string"&&e.length===0?e:(Array.isArray(e)?e:e.split("-")).map(Ze).join(t),et=({canonical:e,seo:t,slug:r})=>{const n=Array.isArray(r)?r.join(", "):r;return{id:0,Title:`${Array.isArray(r)?r.map(s=>G(s)).join(","):G(r)} - ${t.title}`,MetaTagDescription:t.description,name:n,hasChildren:!1,url:e,children:[]}},tt=({canonical:e,category:t,previousImages:r,seo:n})=>({category:String(t==null?void 0:t.id),title:(t==null?void 0:t.Title)??n.title,description:(t==null?void 0:t.MetaTagDescription)??n.description,alternates:{canonical:e},openGraph:{type:"website",title:(t==null?void 0:t.Title)??n.title,description:(t==null?void 0:t.MetaTagDescription)??n.description,images:Array.isArray(r)?[...r]:[]}}),rt=({items:e,parent:t,apiUrl:r,find:n})=>{const a=e.find(i=>i.url.replace(r,"")===decodeURIComponent(t.toLowerCase()));return(a==null?void 0:a.children.find(i=>i.name.toLowerCase()===decodeURIComponent(String(n))))??a},nt=e=>{e instanceof Error?(console.error(`[ERROR CATEGORY INFO]: ${e.message}`),console.error(e.stack)):console.error("[ERROR CATEGORY INFO]: Unknown error",e)},ot=new Set(["brand","category","department","subcategory","collection","cluster"]),st=e=>typeof(e==null?void 0:e.pageType)=="string"&&ot.has(e==null?void 0:e.pageType.toLowerCase()),at=e=>({collection:e.Coleção,categoryId:e.categoryId,current_collection:e["Coleção Atual"],items:e.items}),it=(e,t)=>e.reduce((r,n)=>{if(n.items.filter(i=>i.sellers.find(c=>c.commertialOffer.IsAvailable)).length===0||(r==null?void 0:r.find(i=>(i==null?void 0:i.productId)===(n==null?void 0:n.productId)))!==void 0)return r;const s=n.items[0].images.find(i=>t.includes(i.imageLabel));return r.push({slug:`/${n.linkText}/p`,productId:n==null?void 0:n.productId,textureImage:(s==null?void 0:s.imageUrl)??"",textureAlt:(s==null?void 0:s.imageText)??""}),r},[]),ct=Object.freeze(Object.defineProperty({__proto__:null,createEmptySeoCategory:et,createSeoCategory:tt,findCategory:rt,formattedSimilars:it,isCollectionPageType:st,notFindCategoryError:nt,responseAdapter:at},Symbol.toStringTag,{value:"Module"}));async function lt({contentType:e,storeId:t,CMS_PROJECT_NAME:r,NextCookies:n}){const a=await A({contentType:e,storeId:t,CMS_PROJECT_NAME:r,NextCookies:n});if(a.status===200){const s={timestamp:new Date().toISOString(),contentType:e,data:a.data};console.log("Resultado da chamada:",a);const i=`backup-${e}-${Date.now()}.json`;return await y.fs.writeFile(`./backups/${i}`,JSON.stringify(s,null,2),"utf-8"),{success:!0,fileName:i}}return{success:!1,error:a.error||"No data to backup"}}async function ut(e){return lt(e)}async function dt({contentType:e,documentId:t,versionId:r,storeId:n,CMS_PROJECT_NAME:a}){const s=t&&t.length?`/${t}`:"",i=r&&r.length?`?versionId=${r}`:"";return fetch(`https://${n}.myvtex.com/_v/cms/api/${a}/${e}${s}${i}`,{cache:"no-cache"})}async function mt({contentType:e,documents:t,NextCookies:r,CMS_PROJECT_NAME:n,storeId:a}){var i;const s=JSON.parse(((i=r().get("cms_preview_data"))==null?void 0:i.value)??"{}");if(s&&(s==null?void 0:s.contentType)===e){const c=s.documentId&&s.documentId.length?`/${s.documentId}`:"",l=s!=null&&s.versionId&&(s!=null&&s.versionId.length)?`?versionId=${s==null?void 0:s.versionId}`:"",m=await(await fetch(`https://${a}.myvtex.com/_v/cms/api/${n}/${e}${c}${l}`,{cache:"no-store"})).json(),u=t.filter(p=>m.id!==p.documentId);return u.unshift(m),u}return t}async function A({contentType:e,NextCookies:t,CMS_PROJECT_NAME:r,storeId:n}){var g,m;const a=JSON.parse(((g=t().get("cms_preview_data"))==null?void 0:g.value)??"{}"),s=[];let i=1,c=0,l=!0;try{do{const p=await(await fetch(`https://${n}.myvtex.com/_v/cms/api/${r}/${e}?page=${i}`)).json();i===1&&(c=p.totalItems),(m=p==null?void 0:p.data)!=null&&m.length&&s.push(...p.data),l=p.hasNextPage,i++}while(l&&s.length<c);if(a.previewMode&&s.length){const u=await mt({contentType:e,documents:s,NextCookies:t,CMS_PROJECT_NAME:r,storeId:n});return{status:u.length>0?200:404,data:u??[]}}return{status:s.length?200:404,data:s}}catch(u){return{status:"error",data:[],error:u}}}const pt=Object.freeze(Object.defineProperty({__proto__:null,cmsBackup:ut,getCMSContentType:dt,getContentType:A},Symbol.toStringTag,{value:"Module"})),gt=({slug:e,data:t,SectionZone:r,COMMON_PAGE_COLUMN_GAP:n})=>{const a=t==null?void 0:t.find(m=>{var u,p,h,f;return((p=(u=m.config)==null?void 0:u.responsive)==null?void 0:p.deviceType)==="desktop"&&((f=(h=m.config)==null?void 0:h.seo)==null?void 0:f.slug)===e}),s=a==null?void 0:a.config.responsive.gapCustom,i=a==null?void 0:a.config.responsive.gapSections,c=t==null?void 0:t.find(m=>{var u,p,h,f;return((p=(u=m.config)==null?void 0:u.responsive)==null?void 0:p.deviceType)==="mobile"&&((f=(h=m.config)==null?void 0:h.seo)==null?void 0:f.slug)===e}),l=c==null?void 0:c.config.responsive.gapCustom,g=c==null?void 0:c.config.responsive.gapSections;return v.jsxs(v.Fragment,{children:[v.jsx(T.Utils.Column,{gap:s&&i?i:n,className:T.helpers.classNameConcat(y.responsive["responsive-desktop-flex"],"utils-column-modifier"),children:v.jsx(r,{data:(a==null?void 0:a.sections)??[]})}),v.jsx(T.Utils.Column,{gap:l&&g?g:n,className:T.helpers.classNameConcat(y.responsive["responsive-mobile-flex"],"utils-column-modifier"),children:v.jsx(r,{data:(c==null?void 0:c.sections)??[]})})]})},ft=async({slug:e,SectionZone:t,COMMON_PAGE_COLUMN_GAP:r,...n})=>{const{data:a}=await A({contentType:"common_page",...n});return v.jsx(gt,{data:a,slug:e,SectionZone:t,COMMON_PAGE_COLUMN_GAP:r})},ht=async({children:e,CMS_PROJECT_NAME:t,storeId:r,NextCookies:n,ClientHeaderProvider:a})=>{var c,l,g,m;const{data:s}=await A({contentType:"header",storeId:r,CMS_PROJECT_NAME:t,NextCookies:n}),i=(c=s[0])==null?void 0:c.sections.map(u=>u.data);return v.jsx(a,{headerData:{...(l=s[0])==null?void 0:l.layerConfig.config,subMenus:i??[],categories:((g=s[0])==null?void 0:g.categories.categories.items)??[],navigationLinks:((m=s[0])==null?void 0:m.navigationLinks.navigationLinks.items)??[]},children:e})},It=Object.freeze(Object.defineProperty({__proto__:null,CommonPageContent:ft,HeaderContent:ht},Symbol.toStringTag,{value:"Module"})),bt=o.object({query:o.string()});async function yt({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await bt.validate(t);const{query:n=""}=t,a=new URLSearchParams({query:n});return d(`${e}/api/io/_v/api/intelligent-search/autocomplete_suggestions?${a.toString()}`,{...r})}const vt=(e,t)=>ne(e,t),Ct=e=>({...e,description:e.description?vt(e.description):e.description}),Rt=({offer:e,seller:t,product:r})=>({...e,product:r,seller:t}),z=(e,t)=>({...e,isVariantOf:Ct(t)}),Ft=e=>e?"https://schema.org/InStock":"https://schema.org/OutOfStock",q=e=>e.AvailableQuantity>0,B=e=>e.spotPrice??0,Ot=e=>e.Price??0,Q=(e,t)=>q(e)&&!q(t)?-1:!q(e)&&q(t)?1:B(e)-B(t),St=(e,t)=>{let r=0;for(let n=1;n<e.length;n++)t(e[r],e[n])>0&&(r=n);return e[r]},J=e=>{const t=e.flatMap(n=>n.sellers.map(a=>({offer:a.commertialOffer,sku:n}))),r=St(t,({offer:n},{offer:a})=>Q(n,a));return r?r.sku:e[0]},K=e=>e.map(({imageUrl:t,imageText:r,imageLabel:n})=>({alternateName:r??"",url:t.replace("vteximg.com.br","vtexassets.com"),keywords:n})),P={attachment:"ATTACHMENT",specification:"SPECIFICATION",attribute:"ATTRIBUTE"},$t=e=>({name:e.name,value:e.content,valueReference:P.attachment}),Et=e=>({propertyID:e.id,name:e.name,value:e.value,valueReference:{valueReference:P.attribute,visible:e.visible}}),j=(e,t,r)=>{const n=e.flatMap(({name:i,values:c})=>c?c.map(l=>({name:i,value:l,valueReference:P.specification})):{name:i,value:"",valueReference:P.specification}),a=Array.isArray(r)?r.map($t):[],s=t?t.map(Et):[];return[...n,...a,...s]},U="ÁÄÂÀÃÅČÇĆĎÉĚËÈÊẼĔȆÍÌÎÏŇÑÓÖÒÔÕØŘŔŠŤÚŮÜÙÛÝŸŽáäâàãåčçćďéěëèêẽĕȇíìîïňñóöòôõøðřŕšťúůüùûýÿžþÞĐđ߯a",Tt="AAAAAACCCDEEEEEEEEIIIINNOOOOOORRSTUUUUUYYZaaaaaacccdeeeeeeeeiiiinnooooooorrstuuuuuyyzbBDdBAa",qt=e=>{let t=e.slice(0);for(let r=0;r<U.length;r++)t=t.replace(new RegExp(U.charAt(r),"g"),Tt.charAt(r));return t},Pt=e=>e.replace(/[·/_,:]/,"-"),Y=e=>{const r=e.replace(/,/g,"").replace(/[*+~.()'"!:@&\[\]`/ %$#?{}|><=_^]/g,"-");return Pt(qt(r)).toLowerCase()},W=e=>`/${e}/p`,X=e=>{const t=Math.max(...e.map(n=>n.NumberOfInstallments)),r=e.find(n=>n.NumberOfInstallments===t);return{count:(r==null?void 0:r.NumberOfInstallments)??0,value:(r==null?void 0:r.Value)??0}},Z=(e,t)=>{const r={price:0,listPrice:0,sellerDefault:!1},a=e.map(s=>Rt({offer:s.commertialOffer,seller:s,product:t})).sort(Q).map(s=>(s.seller.sellerId==="1"&&s.AvailableQuantity>0&&(r.price=s.Price,r.listPrice=s.ListPrice,r.sellerDefault=!0),{availability:s.AvailableQuantity>0,listPrice:s.ListPrice,price:Ot(s),priceValidUntil:s.PriceValidUntil,priceCurrency:"BRL",installments:s.Installments,lowPrice:s.spotPrice,quantity:s.AvailableQuantity,seller:{identifier:s.seller.sellerId}}));return{lowPrice:r.sellerDefault?r.price:a[0].price,highPrice:r.sellerDefault?r.listPrice:a[0].listPrice,offers:a}},ee=e=>{const{attributes:t,itemId:r,name:n,sellers:a,variations:s}=e;return{additionalProperty:j(s,t,[]),name:n,offers:{offers:a.map(({sellerId:i,commertialOffer:c})=>({availability:Ft(c.AvailableQuantity>0),listPrice:c.ListPrice,price:c.Price,quantity:c.AvailableQuantity,seller:{identifier:i}}))},sku:r}},jt=e=>{var F;const{attributes:t,referenceId:r,isVariantOf:n,images:a,itemId:s,name:i,sellers:c,videos:l,variations:g}=e,{brand:m,categories:u,categoriesIds:p,description:h,linkText:f,productClusters:N,clusterHighlights:$,productName:E,properties:k,productId:w}=n,_=u.slice().reverse(),C=Z(c,e.isVariantOf),D=X(C.offers[0].installments);return{sku:s,gtin:((F=r[0])==null?void 0:F.Value)??"",name:E??i,description:h,releaseDate:n.releaseDate??"",slug:f,video:l[0],categories:u,categoriesIds:p,id:w,brand:{name:m,brandName:m},seo:{description:h,title:E,canonical:W(f)},cluster:{generals:N,highlights:$},properties:k,availability:{status:C.offers[0].availability},breadcrumbList:{itemListElement:[..._.map((I,O)=>{const b=I.split("/"),R=b[b.length-2],H=b.map(Y).join("/");return{name:R,item:H,position:O+1}}),{name:n.productName,item:f,position:u.length+1}],numberOfItems:u.length},image:K(a),offers:C,additionalProperty:j(g,t,[]),isVariantOf:{productGroupID:n.productId,hasVariant:n.items.map(I=>ee(I))},installments:D}},At=e=>{var F;const{attributes:t,referenceId:r,isVariantOf:n,images:a,itemId:s,name:i,sellers:c,Videos:l,variations:g}=e,{brand:m,categories:u,categoriesIds:p,description:h,linkText:f,productClusters:N,productName:$,Coleção:E,"ID Coleção":k,productId:w}=n,_=u.slice().reverse(),C=Z(c,e.isVariantOf),D=X(C.offers[0].installments);return{sku:s,gtin:((F=r[0])==null?void 0:F.Value)??"",name:$??i,description:h,releaseDate:n.releaseDate??"",slug:f,video:l[0],categories:u,categoriesIds:p,collection:E,collectionId:k,id:w,brand:{name:m,brandName:m},seo:{description:h,title:$,canonical:W(f)},cluster:{generals:N,highlights:[]},availability:{status:C.offers[0].availability},breadcrumbList:{itemListElement:[..._.map((I,O)=>{const b=I.split("/"),R=b[b.length-2],H=b.map(Y).join("/");return{name:R,item:H,position:O+1}}),{name:n.productName,item:f,position:u.length+1}],numberOfItems:u.length},image:K(a),offers:C,additionalProperty:j(g,t,[]),isVariantOf:{productGroupID:n.productId,hasVariant:n.items.map(I=>{const{variations:O}=I,b=O.map(R=>({name:R,values:I[R]}));return{...ee(I),additionalProperty:j(b,t,[])}})},installments:D}},Nt=o.array().of(o.object({key:o.string().required(),value:o.string().required()})).required("Facets are required");async function kt({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Nt.validate(t);const n=new URLSearchParams({}),a=t.map(({key:i,value:c})=>`${i}/${c}`).join("/");y.addSearchParamsFacets(t,n);const s=`${e}/api/catalog_system/pub/products/crossselling/${a}`;return d(s,{cache:"no-store",...r}).then(i=>i.map(l=>{const g=J(l.items);return g&&z(g,l)}).filter(l=>!!l).map(l=>({node:At(l)})))}const te=({apiUrl:e,body:t,fetchOptions:r,extraData:n})=>{if(!t){console.error("[ERROR FETCHING] Body is required");return}const{query:a="",page:s=1,count:i,sort:c="",facets:l=[],type:g,hideUnavailableItems:m=!0,locale:u=""}=t,p=new URLSearchParams({page:s.toString(),count:(i==null?void 0:i.toString())??(n==null?void 0:n.ITEMS_PER_PAGE)??24,query:a,sort:c,locale:u});m!==void 0&&p.append("hideUnavailableItems",m.toString());const h=l.map(f=>`${f.key}/${f.value}`).join("/")??"";return se(`${e}/api/io/_v/api/intelligent-search/${g}/${h}?${p.toString()}`,{headers:{Accept:"application/json","content-type":"application/json"},...r})};async function wt({body:e,extraData:t,...r}){if(!e){console.error("[ERROR FETCHING] Body is required");return}const n=await te({body:{...e,type:"product_search"},extraData:t,...r}),a=(n==null?void 0:n.products.map(c=>{const l=J(c.items);return l&&z(l,c)}).filter(c=>!!c))??[],{pagination:s,recordsFiltered:i}=n;return{data:{pagination:{nextPage:s.after.length>0,previousPage:s.before.length>0,startCursor:"0",endCursor:i.toString(),count:i,total:s.count},products:a.map((c,l)=>({node:jt(c),cursor:l.toString()}))}}}async function _t({body:e,extraData:t,...r}){if(!e){console.error("[ERROR FETCHING] Body is required");return}const n=await te({body:{...e,type:"facets"},extraData:t,...r});return!n||!n.facets?(console.error("[ERROR FETCHING] No facets found"),{data:{facets:[]}}):{data:{...n,facets:y.formattedFacets(n,e==null?void 0:e.selectedFacets,(e==null?void 0:e.query)??"")}}}const Dt=o.object({query:o.string().optional(),locale:o.string().optional()});async function Ht({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Dt.validate(t);const{query:n="",locale:a="default_locale"}=t,s=new URLSearchParams({query:n,locale:a});return d(`${e}/api/io/_v/api/intelligent-search/search_suggestions?${s.toString()}`,{...r})}async function Gt({apiUrl:e}){return d(`${e}/api/io/_v/api/intelligent-search/top_searches`)}const Bt=Object.freeze(Object.defineProperty({__proto__:null,getSearchAutoCompleteSuggestions:yt,getSearchCrossellingProducts:kt,getSearchFacets:_t,getSearchProducts:wt,getSearchSuggestedTerms:Ht,getSearchTopSearchs:Gt},Symbol.toStringTag,{value:"Module"})),Ut={parseSearchState:y.parseSearchState,convertSearchParams:y.convertSearchParams,filterNonRootFacets:y.filterNonRootFacets,filterNonCategorySelected:y.filterNonCategorySelected},Lt={checkout:xe,catalog:Xe,cms:pt,search:Bt},Vt={catalog:ct,search:Ut},Mt={...It};exports.serverAPIs=Lt;exports.serverComponents=Mt;exports.serverHelpers=Vt;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const re=require("yup"),C=require("./__vite-browser-external-B8mGO3z6.js"),y=require("react/jsx-runtime"),q=require("@soma-vertical-web/core-components"),ne=require("sanitize-html");function oe(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const o=oe(re),d=async(e,t={})=>{const{method:r="GET",body:n,headers:s={},priority:a="auto",cache:i="default"}=t;return fetch(e,{method:r,headers:{...s,Accept:"application/json","Content-Type":"application/json"},priority:a,cache:i,...n?{body:JSON.stringify(n)}:{}}).then(c=>c.json()).catch(c=>{console.error("[ERROR FETCH VTEX]",c)})},O=new Map;async function se(e,t={}){var r;try{const{abort:n=!1}=t,s=new AbortController;n&&(O.has(e)&&((r=O.get(e))==null||r.abort(),O.delete(e)),O.set(e,s));const a=d(e,{...t,...n?{signal:s.signal}:{}});return n&&O.delete(e),a}catch(n){if(n.name==="AbortError"){console.log(`[REQUEST CANCELLED]: ${e}`);return}throw console.error(`[ERROR API]: ${n.message}`),n}}const ae=o.object({country:o.string().length(3,"Country code must be 3 characters long").required("Country is required"),postalCode:o.string().nullable()});async function ie({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ae.validate(t);const{country:n,postalCode:s}=t;return await d(`${e}/api/checkout/pub/postal-code/${n}/${s}`,{method:"POST",body:t,...r})}const ce=o.object({orderFormId:o.string().nullable(),sellerCode:o.string().nullable(),sellerName:o.string().nullable()});async function M({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ce.validate(t);const{orderFormId:n,sellerCode:s,sellerName:a}=t,i=s?`${s.trim()} - ${a}`:null;return d(`${e}/api/checkout/pub/orderForm/${n}/attachments/openTextField`,{method:"POST",body:{value:i},...r})}const le=o.object({orderFormId:o.string().nullable(),sellerCode:o.string().nullable(),marketingData:o.object()});async function x({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await le.validate(t);const{orderFormId:n,sellerCode:s,marketingData:a}=t,i=s?{utmCampaign:s?s.toUpperCase():"",utmiCampaign:s?"codigodavendedora":"semcodigo"}:{};return d(`${e}/api/checkout/pub/orderForm/${n}/attachments/marketingData`,{method:"POST",body:{...a,...i},...r})}const ue=o.object({orderFormId:o.string().nullable(),sellerCode:o.string().nullable(),sellerName:o.string().nullable()});async function de({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ue.validate(t);const n=await M({apiUrl:e,body:t,fetchOptions:r});return x({apiUrl:e,body:{...t,marketingData:n==null?void 0:n.marketingData},fetchOptions:r})}const me=o.object({orderFormId:o.string().nullable(),coupon:o.string().nullable()});async function pe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await me.validate(t);const{coupon:n="",orderFormId:s}=t;return d(`${e}/api/checkout/pub/orderForm/${s}/coupons`,{method:"POST",body:{text:n},...r})}const ge=o.object({appId:o.string().required("App ID is required"),orderFormId:o.string().nullable(),key:o.array().of(o.string())});async function fe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ge.validate(t);const{appId:n="faststore",orderFormId:s,key:a}=t;return d(`${e}/api/checkout/pub/orderForm/${s}/customData/${n}/${a}`,{method:"PUT",...r})}const he=o.object().shape({name:o.string().required("Attachment name is required"),content:o.object().nullable()});var L;const Ie=o.object().shape({attachments:(L=o.array().of(he))==null?void 0:L.nullable(),id:o.string().required("ID of SKU is required"),index:o.number().integer().nullable(),quantity:o.number().integer().nullable(),seller:o.string().required("Seller is required"),price:o.number().integer()}),be=o.object({orderFormId:o.string().required("OrderFormId is required"),orderItems:o.array().of(Ie)});async function ye({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await be.validate(t);const{orderFormId:n,orderItems:s}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/items`,{method:"POST",body:{orderItems:s},...r})}const Ce=o.object({orderFormId:o.string().nullable()});async function ve({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Ce.validate(t);const{orderFormId:n}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/items/removeAll`,{method:"POST",...r})}const Re=o.object().shape({name:o.string().required("Attachment name is required"),content:o.object().nullable()});var V;const Fe=o.object().shape({attachments:(V=o.array().of(Re))==null?void 0:V.nullable(),id:o.string().required("ID of SKU is required"),index:o.number().integer().nullable(),quantity:o.number().integer().nullable(),seller:o.string().required("Seller is required"),price:o.number().integer()}),Se=o.object({orderFormId:o.string().nullable(),orderItems:o.array().of(Fe)});async function Oe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Se.validate(t);const{orderFormId:n,orderItems:s}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/items/update`,{method:"POST",body:{orderItems:s},...r})}const $e=o.object({orderFormId:o.string().nullable()});async function Ee({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await $e.validate(t);const{orderFormId:n}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/messages/clear`,{method:"POST",...r})}const Te=o.object({id:o.string().nullable(),itemIndex:o.number().nullable(),orderFormId:o.string().nullable(),remove:o.boolean().nullable()});async function qe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Te.validate(t);const{itemIndex:n,orderFormId:s,id:a,remove:i}=t,c=i?`/${a}/remove`:"",l=`${e}/api/checkout/pub/orderForm/${s}/items/${n}/offerings${c}`;return d(l,{method:"POST",body:{id:a},...r})}const Pe=o.object({orderFormId:o.string().nullable()});async function je({apiUrl:e,body:t,fetchOptions:r,extraData:n}){var i;if(!t){console.error("[ERROR FETCHING] Body is required");return}await Pe.validate(t);const s=new URLSearchParams({refreshOutdatedData:"true"}),a=t.orderFormId&&((i=n.orderFormPurchaseId)==null?void 0:i.value)!==t.orderFormId?`${e}/api/checkout/pub/orderForm/${t.orderFormId}?${String(s)}`:`${e}/api/checkout/pub/orderForm`;return d(a,{method:"GET",...r})}const Ae=o.object({orderFormId:o.string().nullable(),email:o.string().email().required(),firstName:o.string().required(),lastName:o.string().required(),documentType:o.string().required(),document:o.string().required(),phone:o.string().matches(/^\+\d{1,3}\d{10,11}$/)});async function Ne({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Ae.validate(t);const{orderFormId:n,...s}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/attachments/clientProfileData`,{method:"POST",body:{...s},...r})}const we=o.object({sellerCode:o.string().nullable()});async function ke({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await we.validate(t);const{sellerCode:n=""}=t;return d(`${e}/api/dataentities/VD/search?_fields=id,cod,name,ativo&cod=${n}`,{method:"GET",headers:{Accept:"application/vnd.vtex.ds.v10+json"},...r})}const De=o.object().shape({country:o.string().length(3,"Country code must be 3 characters long").required("Country is required"),orderFormId:o.string().nullable(),postalCode:o.string().nullable()});async function _e({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await De.validate(t);const{country:n,orderFormId:s,postalCode:a}=t,i=a?{address:{addressType:"residential",postalCode:a,country:n}}:{logisticsInfo:[],clearAddressIfPostalCodeNotFound:!0};return d(`${e}/api/checkout/pub/orderForm/${s}/attachments/shippingData`,{method:"POST",body:i,...r})}const He=o.object().shape({orderFormId:o.string().nullable(),options:o.array().of(o.object().shape({itemIndex:o.number(),selectedDeliveryChannel:o.string(),selectedSla:o.string()})),selectedAddresses:o.array().of(o.object().shape({addressId:o.string().required(),addressType:o.string().required(),city:o.string().nullable(),complement:o.string().nullable(),country:o.string().required().length(3),geoCoordinates:o.array().of(o.number()).required().min(0),isDisposable:o.boolean().required(),neighborhood:o.string().nullable(),number:o.string().nullable(),postalCode:o.string().required(),receiverName:o.string().nullable(),reference:o.string().nullable(),state:o.string().nullable(),street:o.string().nullable()}))});async function Ge({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await He.validate(t);const{orderFormId:n,options:s,selectedAddresses:a}=t;return d(`${e}/api/checkout/pub/orderForm/${n}/attachments/shippingData`,{method:"POST",body:{selectedAddresses:a,clearAddressIfPostalCodeNotFound:!1,logisticsInfo:s},...r})}const Be=o.object({country:o.string().length(3,"Country code must be 3 characters long").required("Country is required"),postalCode:o.string().nullable(),geoCoordinates:o.object().shape({longitude:o.number().required(),latitude:o.number().required()})});async function Ue({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Be.validate(t);const{country:n="",geoCoordinates:s,postalCode:a=""}=t,i=new URLSearchParams({country:String(n)});return a?i.append("postalCode",a):i.append("geoCoordinates",`${s==null?void 0:s.longitude};${s==null?void 0:s.latitude}`),await d(`${e}/api/checkout/pub/regions/?${i.toString()}`,{method:"GET",...r})}const Le=o.object({id:o.string().required("ID of SKU is required"),quantity:o.number().integer().required("Quantity of item is required"),seller:o.string()}),Ve=o.object({items:o.array().of(Le),country:o.string().length(3,"Country code must be 3 characters long").required("Country is required"),postalCode:o.string().nullable(),geoCoordinates:o.array().nullable().of(o.number()).length(2)});async function Me({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}return await Ve.validate(t),d(`${e}/api/checkout/pub/orderForms/simulation`,{method:"POST",body:t,...r})}const xe=Object.freeze(Object.defineProperty({__proto__:null,getMasterDataSellerCode:ke,getOrderForm:je,postOrderFormAddCoupon:pe,postOrderFormAttachClientProfileData:Ne,postOrderFormAttachOrderFormData:de,postOrderFormAttachShippingData:_e,postOrderFormAttachmentsMarketingData:x,postOrderFormAttachmentsOpenTextField:M,postOrderFormClearMessages:Ee,postOrderFormFreightSimulation:Me,postOrderFormItems:ye,postOrderFormRegion:Ue,postOrderFormRemoveAllItems:ve,postOrderFormUpdateItems:Oe,postOrderFormUpdateShippingData:Ge,postOrderformAddress:ie,putOrderFormCustomData:fe,updateOrderFormOffering:qe},Symbol.toStringTag,{value:"Module"})),ze=o.object({skuId:o.string()});async function Qe({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await ze.validate(t);const{skuId:n}=t;return d(`${e}/api/catalog/pvt/stockkeepingunitkit?parentSkuId=${n}`,{...r})}const Je=o.object({ids:o.array().of(o.string().required("ID are required")).required("IDs are required")});async function Ke({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Je.validate(t);const{ids:n}=t;return d(`${e}/api/catalog_system/pub/products/search?fq=${n.map(s=>`productId:${s}`).join("&fq=")}`,{...r})}const Ye=o.object({productId:o.number().required("Product ID is required")});async function We({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Ye.validate(t);const{productId:n}=t;return d(`${e}/api/catalog_system/pub/products/crossselling/similars/${n.toString()}`,{...r})}const Xe=Object.freeze(Object.defineProperty({__proto__:null,getCatalogKitProducts:Qe,getCatalogProducts:Ke,getCatalogSimilars:We},Symbol.toStringTag,{value:"Module"})),Ze=(e="")=>e.charAt(0).toUpperCase()+e.slice(1),G=(e,t=" ")=>!e||typeof e=="string"&&e.length===0?e:(Array.isArray(e)?e:e.split("-")).map(Ze).join(t),et=({canonical:e,seo:t,slug:r})=>{const n=Array.isArray(r)?r.join(", "):r;return{id:0,Title:`${Array.isArray(r)?r.map(a=>G(a)).join(","):G(r)} - ${t.title}`,MetaTagDescription:t.description,name:n,hasChildren:!1,url:e,children:[]}},tt=({canonical:e,category:t,previousImages:r,seo:n})=>({category:String(t==null?void 0:t.id),title:(t==null?void 0:t.Title)??n.title,description:(t==null?void 0:t.MetaTagDescription)??n.description,alternates:{canonical:e},openGraph:{type:"website",title:(t==null?void 0:t.Title)??n.title,description:(t==null?void 0:t.MetaTagDescription)??n.description,images:Array.isArray(r)?[...r]:[]}}),rt=({items:e,parent:t,apiUrl:r,find:n})=>{const s=e.find(i=>i.url.replace(r,"")===decodeURIComponent(t.toLowerCase()));return(s==null?void 0:s.children.find(i=>i.name.toLowerCase()===decodeURIComponent(String(n))))??s},nt=e=>{e instanceof Error?(console.error(`[ERROR CATEGORY INFO]: ${e.message}`),console.error(e.stack)):console.error("[ERROR CATEGORY INFO]: Unknown error",e)},ot=new Set(["brand","category","department","subcategory","collection","cluster"]),st=e=>typeof(e==null?void 0:e.pageType)=="string"&&ot.has(e==null?void 0:e.pageType.toLowerCase()),at=e=>({collection:e.Coleção,categoryId:e.categoryId,current_collection:e["Coleção Atual"],items:e.items}),it=(e,t)=>e.reduce((r,n)=>{if(n.items.filter(i=>i.sellers.find(c=>c.commertialOffer.IsAvailable)).length===0||(r==null?void 0:r.find(i=>(i==null?void 0:i.productId)===(n==null?void 0:n.productId)))!==void 0)return r;const a=n.items[0].images.find(i=>t.includes(i.imageLabel));return r.push({slug:`/${n.linkText}/p`,productId:n==null?void 0:n.productId,textureImage:(a==null?void 0:a.imageUrl)??"",textureAlt:(a==null?void 0:a.imageText)??""}),r},[]),ct=Object.freeze(Object.defineProperty({__proto__:null,createEmptySeoCategory:et,createSeoCategory:tt,findCategory:rt,formattedSimilars:it,isCollectionPageType:st,notFindCategoryError:nt,responseAdapter:at},Symbol.toStringTag,{value:"Module"}));async function lt({contentType:e,storeId:t,CMS_PROJECT_NAME:r,NextCookies:n}){const s=await $({contentType:e,storeId:t,CMS_PROJECT_NAME:r,NextCookies:n});if(s.status===200){const a={timestamp:new Date().toISOString(),contentType:e,data:s.data};console.log("Resultado da chamada:",s);const i=`backup-${e}-${Date.now()}.json`;return await C.fs.writeFile(`./backups/${i}`,JSON.stringify(a,null,2),"utf-8"),{success:!0,fileName:i}}return{success:!1,error:s.error||"No data to backup"}}async function ut(e){return lt(e)}async function dt({contentType:e,documentId:t,versionId:r,storeId:n,CMS_PROJECT_NAME:s}){const a=t&&t.length?`/${t}`:"",i=r&&r.length?`?versionId=${r}`:"";return fetch(`https://${n}.myvtex.com/_v/cms/api/${s}/${e}${a}${i}`,{cache:"no-cache"})}async function mt({contentType:e,documents:t,NextCookies:r,CMS_PROJECT_NAME:n,storeId:s}){var i;const a=JSON.parse(((i=r().get("cms_preview_data"))==null?void 0:i.value)??"{}");if(a&&(a==null?void 0:a.contentType)===e){const c=a.documentId&&a.documentId.length?`/${a.documentId}`:"",l=a!=null&&a.versionId&&(a!=null&&a.versionId.length)?`?versionId=${a==null?void 0:a.versionId}`:"",p=await(await fetch(`https://${s}.myvtex.com/_v/cms/api/${n}/${e}${c}${l}`,{cache:"no-store"})).json(),u=t.filter(m=>p.id!==m.documentId);return u.unshift(p),u}return t}async function $({contentType:e,NextCookies:t,CMS_PROJECT_NAME:r,storeId:n}){var g,p;const s=JSON.parse(((g=t().get("cms_preview_data"))==null?void 0:g.value)??"{}"),a=[];let i=1,c=0,l=!0;try{do{const m=await(await fetch(`https://${n}.myvtex.com/_v/cms/api/${r}/${e}?page=${i}`)).json();i===1&&(c=m.totalItems),(p=m==null?void 0:m.data)!=null&&p.length&&a.push(...m.data),l=m.hasNextPage,i++}while(l&&a.length<c);if(s.previewMode&&a.length){const u=await mt({contentType:e,documents:a,NextCookies:t,CMS_PROJECT_NAME:r,storeId:n});return{status:u.length>0?200:404,data:u??[]}}return{status:a.length?200:404,data:a}}catch(u){return{status:"error",data:[],error:u}}}const pt=Object.freeze(Object.defineProperty({__proto__:null,cmsBackup:ut,getCMSContentType:dt,getContentType:$},Symbol.toStringTag,{value:"Module"})),gt=({slug:e,data:t,SectionZone:r,COMMON_PAGE_COLUMN_GAP:n})=>{const s=t==null?void 0:t.find(p=>{var u,m,h,f;return((m=(u=p.config)==null?void 0:u.responsive)==null?void 0:m.deviceType)==="desktop"&&((f=(h=p.config)==null?void 0:h.seo)==null?void 0:f.slug)===e}),a=s==null?void 0:s.config.responsive.gapCustom,i=s==null?void 0:s.config.responsive.gapSections,c=t==null?void 0:t.find(p=>{var u,m,h,f;return((m=(u=p.config)==null?void 0:u.responsive)==null?void 0:m.deviceType)==="mobile"&&((f=(h=p.config)==null?void 0:h.seo)==null?void 0:f.slug)===e}),l=c==null?void 0:c.config.responsive.gapCustom,g=c==null?void 0:c.config.responsive.gapSections;return y.jsxs(y.Fragment,{children:[y.jsx(q.Utils.Column,{gap:a&&i?i:n,className:q.helpers.classNameConcat(C.responsive["responsive-desktop-flex"],"utils-column-modifier"),children:y.jsx(r,{data:(s==null?void 0:s.sections)??[]})}),y.jsx(q.Utils.Column,{gap:l&&g?g:n,className:q.helpers.classNameConcat(C.responsive["responsive-mobile-flex"],"utils-column-modifier"),children:y.jsx(r,{data:(c==null?void 0:c.sections)??[]})})]})},ft=async({slug:e,SectionZone:t,COMMON_PAGE_COLUMN_GAP:r,...n})=>{const{data:s}=await $({contentType:"common_page",...n});return y.jsx(gt,{data:s,slug:e,SectionZone:t,COMMON_PAGE_COLUMN_GAP:r})},ht=async({children:e,ClientHeaderProvider:t,...r})=>{var a,i,c,l;const{data:n}=await $({contentType:"header",...r}),s=(a=n[0])==null?void 0:a.sections.map(g=>g.data);return y.jsx(t,{headerData:{...(i=n[0])==null?void 0:i.layerConfig.config,subMenus:s??[],categories:((c=n[0])==null?void 0:c.categories.categories.items)??[],navigationLinks:((l=n[0])==null?void 0:l.navigationLinks.navigationLinks.items)??[]},children:e})},It=async({ClientTipbarContent:e,...t})=>{const{data:r}=await $({contentType:"tipbar",...t});return y.jsx(e,{data:r})},bt={CommonPageContent:ft,HeaderContent:ht,TipbarContent:It},yt={Components:bt},Ct=o.object({query:o.string()});async function vt({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Ct.validate(t);const{query:n=""}=t,s=new URLSearchParams({query:n});return d(`${e}/api/io/_v/api/intelligent-search/autocomplete_suggestions?${s.toString()}`,{...r})}const Rt=(e,t)=>ne(e,t),Ft=e=>({...e,description:e.description?Rt(e.description):e.description}),St=({offer:e,seller:t,product:r})=>({...e,product:r,seller:t}),z=(e,t)=>({...e,isVariantOf:Ft(t)}),Ot=e=>e?"https://schema.org/InStock":"https://schema.org/OutOfStock",P=e=>e.AvailableQuantity>0,B=e=>e.spotPrice??0,$t=e=>e.Price??0,Q=(e,t)=>P(e)&&!P(t)?-1:!P(e)&&P(t)?1:B(e)-B(t),Et=(e,t)=>{let r=0;for(let n=1;n<e.length;n++)t(e[r],e[n])>0&&(r=n);return e[r]},J=e=>{const t=e.flatMap(n=>n.sellers.map(s=>({offer:s.commertialOffer,sku:n}))),r=Et(t,({offer:n},{offer:s})=>Q(n,s));return r?r.sku:e[0]},K=e=>e.map(({imageUrl:t,imageText:r,imageLabel:n})=>({alternateName:r??"",url:t.replace("vteximg.com.br","vtexassets.com"),keywords:n})),j={attachment:"ATTACHMENT",specification:"SPECIFICATION",attribute:"ATTRIBUTE"},Tt=e=>({name:e.name,value:e.content,valueReference:j.attachment}),qt=e=>({propertyID:e.id,name:e.name,value:e.value,valueReference:{valueReference:j.attribute,visible:e.visible}}),A=(e,t,r)=>{const n=e.flatMap(({name:i,values:c})=>c?c.map(l=>({name:i,value:l,valueReference:j.specification})):{name:i,value:"",valueReference:j.specification}),s=Array.isArray(r)?r.map(Tt):[],a=t?t.map(qt):[];return[...n,...s,...a]},U="ÁÄÂÀÃÅČÇĆĎÉĚËÈÊẼĔȆÍÌÎÏŇÑÓÖÒÔÕØŘŔŠŤÚŮÜÙÛÝŸŽáäâàãåčçćďéěëèêẽĕȇíìîïňñóöòôõøðřŕšťúůüùûýÿžþÞĐđ߯a",Pt="AAAAAACCCDEEEEEEEEIIIINNOOOOOORRSTUUUUUYYZaaaaaacccdeeeeeeeeiiiinnooooooorrstuuuuuyyzbBDdBAa",jt=e=>{let t=e.slice(0);for(let r=0;r<U.length;r++)t=t.replace(new RegExp(U.charAt(r),"g"),Pt.charAt(r));return t},At=e=>e.replace(/[·/_,:]/,"-"),Y=e=>{const r=e.replace(/,/g,"").replace(/[*+~.()'"!:@&\[\]`/ %$#?{}|><=_^]/g,"-");return At(jt(r)).toLowerCase()},W=e=>`/${e}/p`,X=e=>{const t=Math.max(...e.map(n=>n.NumberOfInstallments)),r=e.find(n=>n.NumberOfInstallments===t);return{count:(r==null?void 0:r.NumberOfInstallments)??0,value:(r==null?void 0:r.Value)??0}},Z=(e,t)=>{const r={price:0,listPrice:0,sellerDefault:!1},s=e.map(a=>St({offer:a.commertialOffer,seller:a,product:t})).sort(Q).map(a=>(a.seller.sellerId==="1"&&a.AvailableQuantity>0&&(r.price=a.Price,r.listPrice=a.ListPrice,r.sellerDefault=!0),{availability:a.AvailableQuantity>0,listPrice:a.ListPrice,price:$t(a),priceValidUntil:a.PriceValidUntil,priceCurrency:"BRL",installments:a.Installments,lowPrice:a.spotPrice,quantity:a.AvailableQuantity,seller:{identifier:a.seller.sellerId}}));return{lowPrice:r.sellerDefault?r.price:s[0].price,highPrice:r.sellerDefault?r.listPrice:s[0].listPrice,offers:s}},ee=e=>{const{attributes:t,itemId:r,name:n,sellers:s,variations:a}=e;return{additionalProperty:A(a,t,[]),name:n,offers:{offers:s.map(({sellerId:i,commertialOffer:c})=>({availability:Ot(c.AvailableQuantity>0),listPrice:c.ListPrice,price:c.Price,quantity:c.AvailableQuantity,seller:{identifier:i}}))},sku:r}},Nt=e=>{var F;const{attributes:t,referenceId:r,isVariantOf:n,images:s,itemId:a,name:i,sellers:c,videos:l,variations:g}=e,{brand:p,categories:u,categoriesIds:m,description:h,linkText:f,productClusters:N,clusterHighlights:E,productName:T,properties:w,productId:k}=n,D=u.slice().reverse(),v=Z(c,e.isVariantOf),_=X(v.offers[0].installments);return{sku:a,gtin:((F=r[0])==null?void 0:F.Value)??"",name:T??i,description:h,releaseDate:n.releaseDate??"",slug:f,video:l[0],categories:u,categoriesIds:m,id:k,brand:{name:p,brandName:p},seo:{description:h,title:T,canonical:W(f)},cluster:{generals:N,highlights:E},properties:w,availability:{status:v.offers[0].availability},breadcrumbList:{itemListElement:[...D.map((I,S)=>{const b=I.split("/"),R=b[b.length-2],H=b.map(Y).join("/");return{name:R,item:H,position:S+1}}),{name:n.productName,item:f,position:u.length+1}],numberOfItems:u.length},image:K(s),offers:v,additionalProperty:A(g,t,[]),isVariantOf:{productGroupID:n.productId,hasVariant:n.items.map(I=>ee(I))},installments:_}},wt=e=>{var F;const{attributes:t,referenceId:r,isVariantOf:n,images:s,itemId:a,name:i,sellers:c,Videos:l,variations:g}=e,{brand:p,categories:u,categoriesIds:m,description:h,linkText:f,productClusters:N,productName:E,Coleção:T,"ID Coleção":w,productId:k}=n,D=u.slice().reverse(),v=Z(c,e.isVariantOf),_=X(v.offers[0].installments);return{sku:a,gtin:((F=r[0])==null?void 0:F.Value)??"",name:E??i,description:h,releaseDate:n.releaseDate??"",slug:f,video:l[0],categories:u,categoriesIds:m,collection:T,collectionId:w,id:k,brand:{name:p,brandName:p},seo:{description:h,title:E,canonical:W(f)},cluster:{generals:N,highlights:[]},availability:{status:v.offers[0].availability},breadcrumbList:{itemListElement:[...D.map((I,S)=>{const b=I.split("/"),R=b[b.length-2],H=b.map(Y).join("/");return{name:R,item:H,position:S+1}}),{name:n.productName,item:f,position:u.length+1}],numberOfItems:u.length},image:K(s),offers:v,additionalProperty:A(g,t,[]),isVariantOf:{productGroupID:n.productId,hasVariant:n.items.map(I=>{const{variations:S}=I,b=S.map(R=>({name:R,values:I[R]}));return{...ee(I),additionalProperty:A(b,t,[])}})},installments:_}},kt=o.array().of(o.object({key:o.string().required(),value:o.string().required()})).required("Facets are required");async function Dt({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await kt.validate(t);const n=new URLSearchParams({}),s=t.map(({key:i,value:c})=>`${i}/${c}`).join("/");C.addSearchParamsFacets(t,n);const a=`${e}/api/catalog_system/pub/products/crossselling/${s}`;return d(a,{cache:"no-store",...r}).then(i=>i.map(l=>{const g=J(l.items);return g&&z(g,l)}).filter(l=>!!l).map(l=>({node:wt(l)})))}const te=({apiUrl:e,body:t,fetchOptions:r,extraData:n})=>{if(!t){console.error("[ERROR FETCHING] Body is required");return}const{query:s="",page:a=1,count:i,sort:c="",facets:l=[],type:g,hideUnavailableItems:p=!0,locale:u=""}=t,m=new URLSearchParams({page:a.toString(),count:(i==null?void 0:i.toString())??(n==null?void 0:n.ITEMS_PER_PAGE)??24,query:s,sort:c,locale:u});p!==void 0&&m.append("hideUnavailableItems",p.toString());const h=l.map(f=>`${f.key}/${f.value}`).join("/")??"";return se(`${e}/api/io/_v/api/intelligent-search/${g}/${h}?${m.toString()}`,{headers:{Accept:"application/json","content-type":"application/json"},...r})};async function _t({body:e,extraData:t,...r}){if(!e){console.error("[ERROR FETCHING] Body is required");return}const n=await te({body:{...e,type:"product_search"},extraData:t,...r}),s=(n==null?void 0:n.products.map(c=>{const l=J(c.items);return l&&z(l,c)}).filter(c=>!!c))??[],{pagination:a,recordsFiltered:i}=n;return{data:{pagination:{nextPage:a.after.length>0,previousPage:a.before.length>0,startCursor:"0",endCursor:i.toString(),count:i,total:a.count},products:s.map((c,l)=>({node:Nt(c),cursor:l.toString()}))}}}async function Ht({body:e,extraData:t,...r}){if(!e){console.error("[ERROR FETCHING] Body is required");return}const n=await te({body:{...e,type:"facets"},extraData:t,...r});return!n||!n.facets?(console.error("[ERROR FETCHING] No facets found"),{data:{facets:[]}}):{data:{...n,facets:C.formattedFacets(n,e==null?void 0:e.selectedFacets,(e==null?void 0:e.query)??"")}}}const Gt=o.object({query:o.string().optional(),locale:o.string().optional()});async function Bt({apiUrl:e,body:t,fetchOptions:r}){if(!t){console.error("[ERROR FETCHING] Body is required");return}await Gt.validate(t);const{query:n="",locale:s="default_locale"}=t,a=new URLSearchParams({query:n,locale:s});return d(`${e}/api/io/_v/api/intelligent-search/search_suggestions?${a.toString()}`,{...r})}async function Ut({apiUrl:e}){return d(`${e}/api/io/_v/api/intelligent-search/top_searches`)}const Lt=Object.freeze(Object.defineProperty({__proto__:null,getSearchAutoCompleteSuggestions:vt,getSearchCrossellingProducts:Dt,getSearchFacets:Ht,getSearchProducts:_t,getSearchSuggestedTerms:Bt,getSearchTopSearchs:Ut},Symbol.toStringTag,{value:"Module"})),Vt={parseSearchState:C.parseSearchState,convertSearchParams:C.convertSearchParams,filterNonRootFacets:C.filterNonRootFacets,filterNonCategorySelected:C.filterNonCategorySelected},Mt={checkout:xe,catalog:Xe,cms:pt,search:Lt},xt={catalog:ct,search:Vt};exports.serverAPIs=Mt;exports.serverCMS=yt;exports.serverHelpers=xt;
|