@faststore/api 2.2.42 → 2.2.44
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/cjs/package.json +79 -0
- package/dist/{__generated__ → cjs/src/__generated__}/schema.d.ts +1045 -1045
- package/dist/cjs/src/__generated__/schema.js +7 -0
- package/dist/cjs/src/__generated__/schema.js.map +1 -0
- package/dist/{directives → cjs/src/directives}/cacheControl.d.ts +9 -9
- package/dist/cjs/src/directives/cacheControl.js +45 -0
- package/dist/cjs/src/directives/cacheControl.js.map +1 -0
- package/dist/{directives → cjs/src/directives}/index.d.ts +5 -5
- package/dist/cjs/src/directives/index.js +3 -0
- package/dist/cjs/src/directives/index.js.map +1 -0
- package/dist/{index.d.ts → cjs/src/index.d.ts} +163 -163
- package/dist/cjs/src/index.js +38 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/errors.d.ts +19 -19
- package/dist/cjs/src/platforms/errors.js +30 -0
- package/dist/cjs/src/platforms/errors.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/index.d.ts +75 -75
- package/dist/cjs/src/platforms/vtex/clients/commerce/index.js +165 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/index.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/Address.d.ts +16 -16
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Address.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Address.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/Brand.d.ts +8 -8
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Brand.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Brand.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/CategoryTree.d.ts +9 -9
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/CategoryTree.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/CategoryTree.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/Newsletter.d.ts +4 -4
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Newsletter.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Newsletter.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/OrderForm.d.ts +371 -371
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/OrderForm.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/OrderForm.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/Portal.d.ts +17 -17
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Portal.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Portal.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/Product.d.ts +174 -174
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Product.js +53 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Product.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/Region.d.ts +19 -19
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Region.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Region.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/SalesChannel.d.ts +24 -24
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/SalesChannel.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/SalesChannel.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/Session.d.ts +33 -33
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Session.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Session.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/ShippingData.d.ts +38 -38
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/ShippingData.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/ShippingData.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/commerce/types/Simulation.d.ts +154 -154
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Simulation.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/commerce/types/Simulation.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/fetch.d.ts +1 -1
- package/dist/cjs/src/platforms/vtex/clients/fetch.js +24 -0
- package/dist/cjs/src/platforms/vtex/clients/fetch.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/index.d.ts +71 -71
- package/dist/cjs/src/platforms/vtex/clients/index.js +18 -0
- package/dist/cjs/src/platforms/vtex/clients/index.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/search/index.d.ts +26 -26
- package/dist/cjs/src/platforms/vtex/clients/search/index.js +88 -0
- package/dist/cjs/src/platforms/vtex/clients/search/index.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/search/types/AttributeSearchResult.d.ts +30 -30
- package/dist/cjs/src/platforms/vtex/clients/search/types/AttributeSearchResult.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/search/types/AttributeSearchResult.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/search/types/FacetSearchResult.d.ts +31 -31
- package/dist/cjs/src/platforms/vtex/clients/search/types/FacetSearchResult.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/search/types/FacetSearchResult.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/search/types/ProductSearchResult.d.ts +206 -206
- package/dist/cjs/src/platforms/vtex/clients/search/types/ProductSearchResult.js +3 -0
- package/dist/cjs/src/platforms/vtex/clients/search/types/ProductSearchResult.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/clients/sp/index.d.ts +14 -14
- package/dist/cjs/src/platforms/vtex/clients/sp/index.js +49 -0
- package/dist/cjs/src/platforms/vtex/clients/sp/index.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/index.d.ts +188 -188
- package/dist/cjs/src/platforms/vtex/index.js +59 -0
- package/dist/cjs/src/platforms/vtex/index.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/loaders/collection.d.ts +6 -6
- package/dist/cjs/src/platforms/vtex/loaders/collection.js +38 -0
- package/dist/cjs/src/platforms/vtex/loaders/collection.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/loaders/index.d.ts +8 -8
- package/dist/cjs/src/platforms/vtex/loaders/index.js +21 -0
- package/dist/cjs/src/platforms/vtex/loaders/index.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/loaders/salesChannel.d.ts +5 -5
- package/dist/cjs/src/platforms/vtex/loaders/salesChannel.js +11 -0
- package/dist/cjs/src/platforms/vtex/loaders/salesChannel.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/loaders/simulation.d.ts +5 -5
- package/dist/cjs/src/platforms/vtex/loaders/simulation.js +44 -0
- package/dist/cjs/src/platforms/vtex/loaders/simulation.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/loaders/sku.d.ts +5 -5
- package/dist/cjs/src/platforms/vtex/loaders/sku.js +33 -0
- package/dist/cjs/src/platforms/vtex/loaders/sku.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/aggregateOffer.d.ts +7 -7
- package/dist/cjs/src/platforms/vtex/resolvers/aggregateOffer.js +23 -0
- package/dist/cjs/src/platforms/vtex/resolvers/aggregateOffer.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/aggregateRating.d.ts +2 -2
- package/dist/cjs/src/platforms/vtex/resolvers/aggregateRating.js +9 -0
- package/dist/cjs/src/platforms/vtex/resolvers/aggregateRating.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/collection.d.ts +8 -8
- package/dist/cjs/src/platforms/vtex/resolvers/collection.js +81 -0
- package/dist/cjs/src/platforms/vtex/resolvers/collection.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/faceValue.d.ts +3 -3
- package/dist/cjs/src/platforms/vtex/resolvers/faceValue.js +10 -0
- package/dist/cjs/src/platforms/vtex/resolvers/faceValue.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/facet.d.ts +6 -6
- package/dist/cjs/src/platforms/vtex/resolvers/facet.js +50 -0
- package/dist/cjs/src/platforms/vtex/resolvers/facet.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/mutation.d.ts +59 -59
- package/dist/cjs/src/platforms/vtex/resolvers/mutation.js +12 -0
- package/dist/cjs/src/platforms/vtex/resolvers/mutation.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/objectOrString.d.ts +2 -2
- package/dist/cjs/src/platforms/vtex/resolvers/objectOrString.js +41 -0
- package/dist/cjs/src/platforms/vtex/resolvers/objectOrString.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/offer.d.ts +12 -12
- package/dist/cjs/src/platforms/vtex/resolvers/offer.js +94 -0
- package/dist/cjs/src/platforms/vtex/resolvers/offer.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/organization.d.ts +5 -5
- package/dist/cjs/src/platforms/vtex/resolvers/organization.js +7 -0
- package/dist/cjs/src/platforms/vtex/resolvers/organization.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/product.d.ts +14 -14
- package/dist/cjs/src/platforms/vtex/resolvers/product.js +78 -0
- package/dist/cjs/src/platforms/vtex/resolvers/product.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/productGroup.d.ts +5 -5
- package/dist/cjs/src/platforms/vtex/resolvers/productGroup.js +22 -0
- package/dist/cjs/src/platforms/vtex/resolvers/productGroup.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/propertyValue.d.ts +4 -4
- package/dist/cjs/src/platforms/vtex/resolvers/propertyValue.js +11 -0
- package/dist/cjs/src/platforms/vtex/resolvers/propertyValue.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/query.d.ts +72 -72
- package/dist/cjs/src/platforms/vtex/resolvers/query.js +223 -0
- package/dist/cjs/src/platforms/vtex/resolvers/query.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/review.d.ts +2 -2
- package/dist/cjs/src/platforms/vtex/resolvers/review.js +13 -0
- package/dist/cjs/src/platforms/vtex/resolvers/review.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/root.d.ts +12 -12
- package/dist/cjs/src/platforms/vtex/resolvers/root.js +3 -0
- package/dist/cjs/src/platforms/vtex/resolvers/root.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/searchResult.d.ts +8 -8
- package/dist/cjs/src/platforms/vtex/resolvers/searchResult.js +97 -0
- package/dist/cjs/src/platforms/vtex/resolvers/searchResult.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/seo.d.ts +7 -7
- package/dist/cjs/src/platforms/vtex/resolvers/seo.js +10 -0
- package/dist/cjs/src/platforms/vtex/resolvers/seo.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/shippingSLA.d.ts +13 -13
- package/dist/cjs/src/platforms/vtex/resolvers/shippingSLA.js +48 -0
- package/dist/cjs/src/platforms/vtex/resolvers/shippingSLA.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/skuVariations.d.ts +5 -5
- package/dist/cjs/src/platforms/vtex/resolvers/skuVariations.js +17 -0
- package/dist/cjs/src/platforms/vtex/resolvers/skuVariations.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/subscribeToNewsletter.d.ts +3 -3
- package/dist/cjs/src/platforms/vtex/resolvers/subscribeToNewsletter.js +9 -0
- package/dist/cjs/src/platforms/vtex/resolvers/subscribeToNewsletter.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/validateCart.d.ts +70 -70
- package/dist/cjs/src/platforms/vtex/resolvers/validateCart.js +282 -0
- package/dist/cjs/src/platforms/vtex/resolvers/validateCart.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/resolvers/validateSession.d.ts +3 -3
- package/dist/cjs/src/platforms/vtex/resolvers/validateSession.js +58 -0
- package/dist/cjs/src/platforms/vtex/resolvers/validateSession.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/canonical.d.ts +2 -2
- package/dist/cjs/src/platforms/vtex/utils/canonical.js +6 -0
- package/dist/cjs/src/platforms/vtex/utils/canonical.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/channel.d.ts +9 -9
- package/dist/cjs/src/platforms/vtex/utils/channel.js +23 -0
- package/dist/cjs/src/platforms/vtex/utils/channel.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/contex.d.ts +3 -3
- package/dist/cjs/src/platforms/vtex/utils/contex.js +14 -0
- package/dist/cjs/src/platforms/vtex/utils/contex.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/createNewAddress.d.ts +3 -3
- package/dist/cjs/src/platforms/vtex/utils/createNewAddress.js +34 -0
- package/dist/cjs/src/platforms/vtex/utils/createNewAddress.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/enhanceCommercialOffer.d.ts +10 -10
- package/dist/cjs/src/platforms/vtex/utils/enhanceCommercialOffer.js +10 -0
- package/dist/cjs/src/platforms/vtex/utils/enhanceCommercialOffer.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/enhanceSku.d.ts +5 -5
- package/dist/cjs/src/platforms/vtex/utils/enhanceSku.js +18 -0
- package/dist/cjs/src/platforms/vtex/utils/enhanceSku.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/facets.d.ts +32 -31
- package/dist/cjs/src/platforms/vtex/utils/facets.js +65 -0
- package/dist/cjs/src/platforms/vtex/utils/facets.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/getAddressOrderForm.d.ts +3 -3
- package/dist/cjs/src/platforms/vtex/utils/getAddressOrderForm.js +42 -0
- package/dist/cjs/src/platforms/vtex/utils/getAddressOrderForm.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/md5.d.ts +1 -1
- package/dist/cjs/src/platforms/vtex/utils/md5.js +8 -0
- package/dist/cjs/src/platforms/vtex/utils/md5.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/orderStatistics.d.ts +4 -4
- package/dist/cjs/src/platforms/vtex/utils/orderStatistics.js +18 -0
- package/dist/cjs/src/platforms/vtex/utils/orderStatistics.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/productStock.d.ts +7 -7
- package/dist/cjs/src/platforms/vtex/utils/productStock.js +25 -0
- package/dist/cjs/src/platforms/vtex/utils/productStock.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/propertyValue.d.ts +12 -12
- package/dist/cjs/src/platforms/vtex/utils/propertyValue.js +21 -0
- package/dist/cjs/src/platforms/vtex/utils/propertyValue.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/sanitizeHtml.d.ts +17 -17
- package/dist/cjs/src/platforms/vtex/utils/sanitizeHtml.js +23 -0
- package/dist/cjs/src/platforms/vtex/utils/sanitizeHtml.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/shouldUpdateShippingData.d.ts +6 -6
- package/dist/cjs/src/platforms/vtex/utils/shouldUpdateShippingData.js +72 -0
- package/dist/cjs/src/platforms/vtex/utils/shouldUpdateShippingData.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/sku.d.ts +8 -8
- package/dist/cjs/src/platforms/vtex/utils/sku.js +22 -0
- package/dist/cjs/src/platforms/vtex/utils/sku.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/skuVariants.d.ts +15 -15
- package/dist/cjs/src/platforms/vtex/utils/skuVariants.js +139 -0
- package/dist/cjs/src/platforms/vtex/utils/skuVariants.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/slugify.d.ts +1 -1
- package/dist/cjs/src/platforms/vtex/utils/slugify.js +43 -0
- package/dist/cjs/src/platforms/vtex/utils/slugify.js.map +1 -0
- package/dist/{platforms → cjs/src/platforms}/vtex/utils/sort.d.ts +10 -10
- package/dist/cjs/src/platforms/vtex/utils/sort.js +14 -0
- package/dist/cjs/src/platforms/vtex/utils/sort.js.map +1 -0
- package/dist/{telemetry → cjs/src/telemetry}/index.d.ts +8 -8
- package/dist/cjs/src/telemetry/index.js +77 -0
- package/dist/cjs/src/telemetry/index.js.map +1 -0
- package/dist/{telemetry → cjs/src/telemetry}/useFaststoreTelemetry.d.ts +24 -24
- package/dist/cjs/src/telemetry/useFaststoreTelemetry.js +174 -0
- package/dist/cjs/src/telemetry/useFaststoreTelemetry.js.map +1 -0
- package/dist/cjs/src/typeDefs/address.graphql +45 -0
- package/dist/cjs/src/typeDefs/aggregateOffer.graphql +25 -0
- package/dist/cjs/src/typeDefs/aggregateRating.graphql +13 -0
- package/dist/cjs/src/typeDefs/author.graphql +9 -0
- package/dist/cjs/src/typeDefs/brand.graphql +9 -0
- package/dist/cjs/src/typeDefs/breadcrumb.graphql +31 -0
- package/dist/cjs/src/typeDefs/cart.graphql +37 -0
- package/dist/cjs/src/typeDefs/collection.graphql +83 -0
- package/dist/cjs/src/typeDefs/facet.graphql +77 -0
- package/dist/cjs/src/typeDefs/image.graphql +27 -0
- package/dist/{typeDefs → cjs/src/typeDefs}/index.d.ts +1 -1
- package/dist/cjs/src/typeDefs/index.js +10 -0
- package/dist/cjs/src/typeDefs/index.js.map +1 -0
- package/dist/cjs/src/typeDefs/mutation.graphql +14 -0
- package/dist/cjs/src/typeDefs/newsletter.graphql +24 -0
- package/dist/cjs/src/typeDefs/objectOrString.graphql +1 -0
- package/dist/cjs/src/typeDefs/offer.graphql +71 -0
- package/dist/cjs/src/typeDefs/order.graphql +31 -0
- package/dist/cjs/src/typeDefs/organization.graphql +19 -0
- package/dist/cjs/src/typeDefs/pageInfo.graphql +25 -0
- package/dist/cjs/src/typeDefs/person.graphql +43 -0
- package/dist/cjs/src/typeDefs/product.graphql +91 -0
- package/dist/cjs/src/typeDefs/productGroup.graphql +27 -0
- package/dist/cjs/src/typeDefs/propertyValue.graphql +40 -0
- package/dist/cjs/src/typeDefs/query.graphql +377 -0
- package/dist/cjs/src/typeDefs/review.graphql +27 -0
- package/dist/cjs/src/typeDefs/seo.graphql +21 -0
- package/dist/cjs/src/typeDefs/session.graphql +194 -0
- package/dist/cjs/src/typeDefs/shipping.graphql +331 -0
- package/dist/cjs/src/typeDefs/skuVariants.graphql +90 -0
- package/dist/cjs/src/typeDefs/status.graphql +8 -0
- package/dist/cjs/src/typings/index.d.ts +3 -0
- package/dist/cjs/src/typings/index.js +3 -0
- package/dist/cjs/src/typings/index.js.map +1 -0
- package/dist/esm/package.json +79 -0
- package/dist/esm/src/__generated__/schema.d.ts +1045 -0
- package/dist/esm/src/__generated__/schema.js +6 -0
- package/dist/esm/src/__generated__/schema.js.map +1 -0
- package/dist/esm/src/directives/cacheControl.d.ts +9 -0
- package/dist/esm/src/directives/cacheControl.js +41 -0
- package/dist/esm/src/directives/cacheControl.js.map +1 -0
- package/dist/esm/src/directives/index.d.ts +5 -0
- package/dist/esm/src/directives/index.js +2 -0
- package/dist/esm/src/directives/index.js.map +1 -0
- package/dist/esm/src/index.d.ts +163 -0
- package/dist/esm/src/index.js +29 -0
- package/dist/esm/src/index.js.map +1 -0
- package/dist/esm/src/platforms/errors.d.ts +19 -0
- package/dist/esm/src/platforms/errors.js +22 -0
- package/dist/esm/src/platforms/errors.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/index.d.ts +75 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/index.js +161 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/index.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Address.d.ts +16 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Address.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Address.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Brand.d.ts +8 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Brand.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Brand.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/CategoryTree.d.ts +9 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/CategoryTree.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/CategoryTree.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Newsletter.d.ts +4 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Newsletter.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Newsletter.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/OrderForm.d.ts +371 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/OrderForm.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/OrderForm.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Portal.d.ts +17 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Portal.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Portal.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Product.d.ts +174 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Product.js +52 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Product.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Region.d.ts +19 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Region.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Region.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/SalesChannel.d.ts +24 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/SalesChannel.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/SalesChannel.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Session.d.ts +33 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Session.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Session.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/ShippingData.d.ts +38 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/ShippingData.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/ShippingData.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Simulation.d.ts +154 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Simulation.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/commerce/types/Simulation.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/fetch.d.ts +1 -0
- package/dist/esm/src/platforms/vtex/clients/fetch.js +19 -0
- package/dist/esm/src/platforms/vtex/clients/fetch.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/index.d.ts +71 -0
- package/dist/esm/src/platforms/vtex/clients/index.js +14 -0
- package/dist/esm/src/platforms/vtex/clients/index.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/search/index.d.ts +26 -0
- package/dist/esm/src/platforms/vtex/clients/search/index.js +83 -0
- package/dist/esm/src/platforms/vtex/clients/search/index.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/AttributeSearchResult.d.ts +30 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/AttributeSearchResult.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/AttributeSearchResult.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/FacetSearchResult.d.ts +31 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/FacetSearchResult.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/FacetSearchResult.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/ProductSearchResult.d.ts +206 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/ProductSearchResult.js +2 -0
- package/dist/esm/src/platforms/vtex/clients/search/types/ProductSearchResult.js.map +1 -0
- package/dist/esm/src/platforms/vtex/clients/sp/index.d.ts +14 -0
- package/dist/esm/src/platforms/vtex/clients/sp/index.js +45 -0
- package/dist/esm/src/platforms/vtex/clients/sp/index.js.map +1 -0
- package/dist/esm/src/platforms/vtex/index.d.ts +188 -0
- package/dist/esm/src/platforms/vtex/index.js +53 -0
- package/dist/esm/src/platforms/vtex/index.js.map +1 -0
- package/dist/esm/src/platforms/vtex/loaders/collection.d.ts +6 -0
- package/dist/esm/src/platforms/vtex/loaders/collection.js +32 -0
- package/dist/esm/src/platforms/vtex/loaders/collection.js.map +1 -0
- package/dist/esm/src/platforms/vtex/loaders/index.d.ts +8 -0
- package/dist/esm/src/platforms/vtex/loaders/index.js +17 -0
- package/dist/esm/src/platforms/vtex/loaders/index.js.map +1 -0
- package/dist/esm/src/platforms/vtex/loaders/salesChannel.d.ts +5 -0
- package/dist/esm/src/platforms/vtex/loaders/salesChannel.js +6 -0
- package/dist/esm/src/platforms/vtex/loaders/salesChannel.js.map +1 -0
- package/dist/esm/src/platforms/vtex/loaders/simulation.d.ts +5 -0
- package/dist/esm/src/platforms/vtex/loaders/simulation.js +39 -0
- package/dist/esm/src/platforms/vtex/loaders/simulation.js.map +1 -0
- package/dist/esm/src/platforms/vtex/loaders/sku.d.ts +5 -0
- package/dist/esm/src/platforms/vtex/loaders/sku.js +28 -0
- package/dist/esm/src/platforms/vtex/loaders/sku.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/aggregateOffer.d.ts +7 -0
- package/dist/esm/src/platforms/vtex/resolvers/aggregateOffer.js +20 -0
- package/dist/esm/src/platforms/vtex/resolvers/aggregateOffer.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/aggregateRating.d.ts +2 -0
- package/dist/esm/src/platforms/vtex/resolvers/aggregateRating.js +6 -0
- package/dist/esm/src/platforms/vtex/resolvers/aggregateRating.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/collection.d.ts +8 -0
- package/dist/esm/src/platforms/vtex/resolvers/collection.js +78 -0
- package/dist/esm/src/platforms/vtex/resolvers/collection.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/faceValue.d.ts +3 -0
- package/dist/esm/src/platforms/vtex/resolvers/faceValue.js +7 -0
- package/dist/esm/src/platforms/vtex/resolvers/faceValue.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/facet.d.ts +6 -0
- package/dist/esm/src/platforms/vtex/resolvers/facet.js +47 -0
- package/dist/esm/src/platforms/vtex/resolvers/facet.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/mutation.d.ts +59 -0
- package/dist/esm/src/platforms/vtex/resolvers/mutation.js +9 -0
- package/dist/esm/src/platforms/vtex/resolvers/mutation.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/objectOrString.d.ts +2 -0
- package/dist/esm/src/platforms/vtex/resolvers/objectOrString.js +38 -0
- package/dist/esm/src/platforms/vtex/resolvers/objectOrString.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/offer.d.ts +12 -0
- package/dist/esm/src/platforms/vtex/resolvers/offer.js +91 -0
- package/dist/esm/src/platforms/vtex/resolvers/offer.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/organization.d.ts +5 -0
- package/dist/esm/src/platforms/vtex/resolvers/organization.js +4 -0
- package/dist/esm/src/platforms/vtex/resolvers/organization.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/product.d.ts +14 -0
- package/dist/esm/src/platforms/vtex/resolvers/product.js +75 -0
- package/dist/esm/src/platforms/vtex/resolvers/product.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/productGroup.d.ts +5 -0
- package/dist/esm/src/platforms/vtex/resolvers/productGroup.js +19 -0
- package/dist/esm/src/platforms/vtex/resolvers/productGroup.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/propertyValue.d.ts +4 -0
- package/dist/esm/src/platforms/vtex/resolvers/propertyValue.js +8 -0
- package/dist/esm/src/platforms/vtex/resolvers/propertyValue.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/query.d.ts +72 -0
- package/dist/esm/src/platforms/vtex/resolvers/query.js +220 -0
- package/dist/esm/src/platforms/vtex/resolvers/query.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/review.d.ts +2 -0
- package/dist/esm/src/platforms/vtex/resolvers/review.js +10 -0
- package/dist/esm/src/platforms/vtex/resolvers/review.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/root.d.ts +12 -0
- package/dist/esm/src/platforms/vtex/resolvers/root.js +2 -0
- package/dist/esm/src/platforms/vtex/resolvers/root.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/searchResult.d.ts +8 -0
- package/dist/esm/src/platforms/vtex/resolvers/searchResult.js +94 -0
- package/dist/esm/src/platforms/vtex/resolvers/searchResult.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/seo.d.ts +7 -0
- package/dist/esm/src/platforms/vtex/resolvers/seo.js +7 -0
- package/dist/esm/src/platforms/vtex/resolvers/seo.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/shippingSLA.d.ts +13 -0
- package/dist/esm/src/platforms/vtex/resolvers/shippingSLA.js +44 -0
- package/dist/esm/src/platforms/vtex/resolvers/shippingSLA.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/skuVariations.d.ts +5 -0
- package/dist/esm/src/platforms/vtex/resolvers/skuVariations.js +14 -0
- package/dist/esm/src/platforms/vtex/resolvers/skuVariations.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/subscribeToNewsletter.d.ts +3 -0
- package/dist/esm/src/platforms/vtex/resolvers/subscribeToNewsletter.js +5 -0
- package/dist/esm/src/platforms/vtex/resolvers/subscribeToNewsletter.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/validateCart.d.ts +70 -0
- package/dist/esm/src/platforms/vtex/resolvers/validateCart.js +277 -0
- package/dist/esm/src/platforms/vtex/resolvers/validateCart.js.map +1 -0
- package/dist/esm/src/platforms/vtex/resolvers/validateSession.d.ts +3 -0
- package/dist/esm/src/platforms/vtex/resolvers/validateSession.js +53 -0
- package/dist/esm/src/platforms/vtex/resolvers/validateSession.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/canonical.d.ts +2 -0
- package/dist/esm/src/platforms/vtex/utils/canonical.js +2 -0
- package/dist/esm/src/platforms/vtex/utils/canonical.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/channel.d.ts +9 -0
- package/dist/esm/src/platforms/vtex/utils/channel.js +20 -0
- package/dist/esm/src/platforms/vtex/utils/channel.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/contex.d.ts +3 -0
- package/dist/esm/src/platforms/vtex/utils/contex.js +8 -0
- package/dist/esm/src/platforms/vtex/utils/contex.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/createNewAddress.d.ts +3 -0
- package/dist/esm/src/platforms/vtex/utils/createNewAddress.js +30 -0
- package/dist/esm/src/platforms/vtex/utils/createNewAddress.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/enhanceCommercialOffer.d.ts +10 -0
- package/dist/esm/src/platforms/vtex/utils/enhanceCommercialOffer.js +6 -0
- package/dist/esm/src/platforms/vtex/utils/enhanceCommercialOffer.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/enhanceSku.d.ts +5 -0
- package/dist/esm/src/platforms/vtex/utils/enhanceSku.js +14 -0
- package/dist/esm/src/platforms/vtex/utils/enhanceSku.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/facets.d.ts +32 -0
- package/dist/esm/src/platforms/vtex/utils/facets.js +54 -0
- package/dist/esm/src/platforms/vtex/utils/facets.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/getAddressOrderForm.d.ts +3 -0
- package/dist/esm/src/platforms/vtex/utils/getAddressOrderForm.js +38 -0
- package/dist/esm/src/platforms/vtex/utils/getAddressOrderForm.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/md5.d.ts +1 -0
- package/dist/esm/src/platforms/vtex/utils/md5.js +3 -0
- package/dist/esm/src/platforms/vtex/utils/md5.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/orderStatistics.d.ts +4 -0
- package/dist/esm/src/platforms/vtex/utils/orderStatistics.js +14 -0
- package/dist/esm/src/platforms/vtex/utils/orderStatistics.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/productStock.d.ts +7 -0
- package/dist/esm/src/platforms/vtex/utils/productStock.js +16 -0
- package/dist/esm/src/platforms/vtex/utils/productStock.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/propertyValue.d.ts +12 -0
- package/dist/esm/src/platforms/vtex/utils/propertyValue.js +16 -0
- package/dist/esm/src/platforms/vtex/utils/propertyValue.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/sanitizeHtml.d.ts +17 -0
- package/dist/esm/src/platforms/vtex/utils/sanitizeHtml.js +18 -0
- package/dist/esm/src/platforms/vtex/utils/sanitizeHtml.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/shouldUpdateShippingData.d.ts +6 -0
- package/dist/esm/src/platforms/vtex/utils/shouldUpdateShippingData.js +68 -0
- package/dist/esm/src/platforms/vtex/utils/shouldUpdateShippingData.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/sku.d.ts +8 -0
- package/dist/esm/src/platforms/vtex/utils/sku.js +17 -0
- package/dist/esm/src/platforms/vtex/utils/sku.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/skuVariants.d.ts +15 -0
- package/dist/esm/src/platforms/vtex/utils/skuVariants.js +132 -0
- package/dist/esm/src/platforms/vtex/utils/skuVariants.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/slugify.d.ts +1 -0
- package/dist/esm/src/platforms/vtex/utils/slugify.js +39 -0
- package/dist/esm/src/platforms/vtex/utils/slugify.js.map +1 -0
- package/dist/esm/src/platforms/vtex/utils/sort.d.ts +10 -0
- package/dist/esm/src/platforms/vtex/utils/sort.js +11 -0
- package/dist/esm/src/platforms/vtex/utils/sort.js.map +1 -0
- package/dist/esm/src/telemetry/index.d.ts +8 -0
- package/dist/esm/src/telemetry/index.js +72 -0
- package/dist/esm/src/telemetry/index.js.map +1 -0
- package/dist/esm/src/telemetry/useFaststoreTelemetry.d.ts +24 -0
- package/dist/esm/src/telemetry/useFaststoreTelemetry.js +170 -0
- package/dist/esm/src/telemetry/useFaststoreTelemetry.js.map +1 -0
- package/dist/esm/src/typeDefs/address.graphql +45 -0
- package/dist/esm/src/typeDefs/aggregateOffer.graphql +25 -0
- package/dist/esm/src/typeDefs/aggregateRating.graphql +13 -0
- package/dist/esm/src/typeDefs/author.graphql +9 -0
- package/dist/esm/src/typeDefs/brand.graphql +9 -0
- package/dist/esm/src/typeDefs/breadcrumb.graphql +31 -0
- package/dist/esm/src/typeDefs/cart.graphql +37 -0
- package/dist/esm/src/typeDefs/collection.graphql +83 -0
- package/dist/esm/src/typeDefs/facet.graphql +77 -0
- package/dist/esm/src/typeDefs/image.graphql +27 -0
- package/dist/esm/src/typeDefs/index.d.ts +1 -0
- package/dist/esm/src/typeDefs/index.js +7 -0
- package/dist/esm/src/typeDefs/index.js.map +1 -0
- package/dist/esm/src/typeDefs/mutation.graphql +14 -0
- package/dist/esm/src/typeDefs/newsletter.graphql +24 -0
- package/dist/esm/src/typeDefs/objectOrString.graphql +1 -0
- package/dist/esm/src/typeDefs/offer.graphql +71 -0
- package/dist/esm/src/typeDefs/order.graphql +31 -0
- package/dist/esm/src/typeDefs/organization.graphql +19 -0
- package/dist/esm/src/typeDefs/pageInfo.graphql +25 -0
- package/dist/esm/src/typeDefs/person.graphql +43 -0
- package/dist/esm/src/typeDefs/product.graphql +91 -0
- package/dist/esm/src/typeDefs/productGroup.graphql +27 -0
- package/dist/esm/src/typeDefs/propertyValue.graphql +40 -0
- package/dist/esm/src/typeDefs/query.graphql +377 -0
- package/dist/esm/src/typeDefs/review.graphql +27 -0
- package/dist/esm/src/typeDefs/seo.graphql +21 -0
- package/dist/esm/src/typeDefs/session.graphql +194 -0
- package/dist/esm/src/typeDefs/shipping.graphql +331 -0
- package/dist/esm/src/typeDefs/skuVariants.graphql +90 -0
- package/dist/esm/src/typeDefs/status.graphql +8 -0
- package/dist/esm/src/typings/index.d.ts +3 -0
- package/dist/esm/src/typings/index.js +2 -0
- package/dist/esm/src/typings/index.js.map +1 -0
- package/package.json +34 -17
- package/src/index.ts +1 -1
- package/src/typeDefs/index.ts +3 -58
- package/dist/api.cjs.development.js +0 -2946
- package/dist/api.cjs.development.js.map +0 -1
- package/dist/api.cjs.production.min.js +0 -2
- package/dist/api.cjs.production.min.js.map +0 -1
- package/dist/api.esm.js +0 -2932
- package/dist/api.esm.js.map +0 -1
- package/dist/index.js +0 -8
- package/dist/typings/index.d.ts +0 -3
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* VTEX catalog slugify function
|
|
3
|
+
*
|
|
4
|
+
* Copied from:
|
|
5
|
+
* https://github.com/vtex/rewriter/blob/1ce2010783e0586cab42534ce2fb7a983d8a3a84/node/clients/catalog.ts#L72
|
|
6
|
+
*
|
|
7
|
+
* Sometimes, we need to slugify strings for creating urls. An example is the
|
|
8
|
+
* brand urls, where we create them from the brand's name.
|
|
9
|
+
* This slugify function should match exactly what VTEX catalog generates. Any mismatch
|
|
10
|
+
* will lead to broken links.
|
|
11
|
+
* Hopefully, we had this function implemented on VTEX IO and we've been using it for
|
|
12
|
+
* years now. However, looking at the code, I think we can save lots of computing. I'm
|
|
13
|
+
* in a hurry for doing these tests now, so I'll leave a small TODO.
|
|
14
|
+
*
|
|
15
|
+
* TODO: Research for better ways of computing this slugify function. Things I'd try are:
|
|
16
|
+
* - Join those 3 regexs for special characters into a single one.
|
|
17
|
+
* - Replace the regexp of `removeDiacritics` function with a Map. We can make the complexity
|
|
18
|
+
* of this function be O(n) with n=string.length
|
|
19
|
+
*
|
|
20
|
+
*/
|
|
21
|
+
const from = 'ÁÄÂÀÃÅČÇĆĎÉĚËÈÊẼĔȆÍÌÎÏŇÑÓÖÒÔÕØŘŔŠŤÚŮÜÙÛÝŸŽáäâàãåčçćďéěëèêẽĕȇíìîïňñóöòôõøðřŕšťúůüùûýÿžþÞĐđ߯a';
|
|
22
|
+
const to = 'AAAAAACCCDEEEEEEEEIIIINNOOOOOORRSTUUUUUYYZaaaaaacccdeeeeeeeeiiiinnooooooorrstuuuuuyyzbBDdBAa';
|
|
23
|
+
const removeDiacritics = (str) => {
|
|
24
|
+
let newStr = str.slice(0);
|
|
25
|
+
for (let i = 0; i < from.length; i++) {
|
|
26
|
+
newStr = newStr.replace(new RegExp(from.charAt(i), 'g'), to.charAt(i));
|
|
27
|
+
}
|
|
28
|
+
return newStr;
|
|
29
|
+
};
|
|
30
|
+
const slugifySpecialCharacters = (str) => {
|
|
31
|
+
return str.replace(/[·/_,:]/, '-');
|
|
32
|
+
};
|
|
33
|
+
export function slugify(str) {
|
|
34
|
+
const noCommas = str.replace(/,/g, '');
|
|
35
|
+
const replaced = noCommas.replace(/[*+~.()'"!:@&\[\]`/ %$#?{}|><=_^]/g, '-');
|
|
36
|
+
const slugified = slugifySpecialCharacters(removeDiacritics(replaced));
|
|
37
|
+
return slugified.toLowerCase();
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=slugify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slugify.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/utils/slugify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,IAAI,GACR,8FAA8F,CAAA;AAEhG,MAAM,EAAE,GACN,8FAA8F,CAAA;AAEhG,MAAM,gBAAgB,GAAG,CAAC,GAAW,EAAE,EAAE;IACvC,IAAI,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAEzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IACxE,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAAC,GAAW,EAAE,EAAE;IAC/C,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;AACpC,CAAC,CAAA;AAED,MAAM,UAAU,OAAO,CAAC,GAAW;IACjC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAA;IAC5E,MAAM,SAAS,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEtE,OAAO,SAAS,CAAC,WAAW,EAAE,CAAA;AAChC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const SORT_MAP: {
|
|
2
|
+
readonly price_desc: "price:desc";
|
|
3
|
+
readonly price_asc: "price:asc";
|
|
4
|
+
readonly orders_desc: "orders:desc";
|
|
5
|
+
readonly name_desc: "name:desc";
|
|
6
|
+
readonly name_asc: "name:asc";
|
|
7
|
+
readonly release_desc: "release:desc";
|
|
8
|
+
readonly discount_desc: "discount:desc";
|
|
9
|
+
readonly score_desc: "";
|
|
10
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export const SORT_MAP = {
|
|
2
|
+
price_desc: 'price:desc',
|
|
3
|
+
price_asc: 'price:asc',
|
|
4
|
+
orders_desc: 'orders:desc',
|
|
5
|
+
name_desc: 'name:desc',
|
|
6
|
+
name_asc: 'name:asc',
|
|
7
|
+
release_desc: 'release:desc',
|
|
8
|
+
discount_desc: 'discount:desc',
|
|
9
|
+
score_desc: '',
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=sort.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/utils/sort.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,cAAc;IAC5B,aAAa,EAAE,eAAe;IAC9B,UAAU,EAAE,EAAE;CACN,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Options } from '../';
|
|
2
|
+
export type GetTelemetryOptions = {
|
|
3
|
+
mode?: 'verbose' | 'dev';
|
|
4
|
+
experimentalSendLogs?: boolean;
|
|
5
|
+
};
|
|
6
|
+
export declare function getTelemetry(APIOptions: Options, telemetryOptions?: GetTelemetryOptions): {
|
|
7
|
+
useFaststoreTelemetry: () => import("@envelop/types").Plugin<import("./useFaststoreTelemetry").PluginContext>;
|
|
8
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { BasicTracerProvider, SimpleSpanProcessor, ConsoleSpanExporter, } from '@opentelemetry/sdk-trace-base';
|
|
2
|
+
import { Resource } from '@opentelemetry/resources';
|
|
3
|
+
import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-grpc';
|
|
4
|
+
import { LoggerProvider, SimpleLogRecordProcessor, ConsoleLogRecordExporter, } from '@opentelemetry/sdk-logs';
|
|
5
|
+
import { OTLPLogsExporter } from '@opentelemetry/exporter-logs-otlp-grpc';
|
|
6
|
+
import { getFaststoreTelemetryPlugin } from './useFaststoreTelemetry';
|
|
7
|
+
import packageJson from '../../package.json';
|
|
8
|
+
const FASTSTORE_API_VERSION = packageJson.version;
|
|
9
|
+
// TODO: These urls are hardcoded for now, but they should be configurable via ENV variables
|
|
10
|
+
// They are only acessible from within the VTEX network, so they are not a security risk
|
|
11
|
+
const TRACE_COLLECTOR_URL = 'opentelemetry-collector.vtex.systems';
|
|
12
|
+
const TRACE_COLLECTOR_URL_DEV = 'opentelemetry-collector-beta.vtex.systems';
|
|
13
|
+
const LOG_COLLECTOR_URL = 'opentelemetry-collector.vtex.systems';
|
|
14
|
+
export function getTelemetry(APIOptions, telemetryOptions) {
|
|
15
|
+
const honeycombCollectorOptions = {
|
|
16
|
+
url: telemetryOptions?.mode === 'dev'
|
|
17
|
+
? TRACE_COLLECTOR_URL_DEV
|
|
18
|
+
: TRACE_COLLECTOR_URL,
|
|
19
|
+
};
|
|
20
|
+
const openSearchCollectorOptions = {
|
|
21
|
+
url: LOG_COLLECTOR_URL,
|
|
22
|
+
};
|
|
23
|
+
// Create a new tracer provider
|
|
24
|
+
const tracerProvider = new BasicTracerProvider({
|
|
25
|
+
resource: new Resource({
|
|
26
|
+
'service.name': 'faststore-api',
|
|
27
|
+
'service.version': FASTSTORE_API_VERSION,
|
|
28
|
+
'service.name_and_version': `faststore-api@${FASTSTORE_API_VERSION}`,
|
|
29
|
+
platform: APIOptions.platform,
|
|
30
|
+
[`${APIOptions.platform}.account`]: APIOptions.account,
|
|
31
|
+
[`${APIOptions.platform}.environment`]: APIOptions.environment,
|
|
32
|
+
// TODO: include the following properties in the logs
|
|
33
|
+
// [`${APIOptions.platform}.options.hideUnavailableItems`]:
|
|
34
|
+
// APIOptions.hideUnavailableItems,
|
|
35
|
+
// [`${APIOptions.platform}.flags.enableOrderFormSync`]:
|
|
36
|
+
// APIOptions.flags?.enableOrderFormSync,
|
|
37
|
+
// channel: APIOptions.channel,
|
|
38
|
+
locale: APIOptions.locale,
|
|
39
|
+
}),
|
|
40
|
+
});
|
|
41
|
+
const loggerProvider = new LoggerProvider();
|
|
42
|
+
// Create trace exporter
|
|
43
|
+
const honeycombExporter = new OTLPTraceExporter(honeycombCollectorOptions);
|
|
44
|
+
// Create log exporter
|
|
45
|
+
const openSearchExporter = new OTLPLogsExporter(openSearchCollectorOptions);
|
|
46
|
+
// Set up a span processor to export spans to Honeycomb
|
|
47
|
+
const honeyCombSpanProcessor = new SimpleSpanProcessor(honeycombExporter);
|
|
48
|
+
// Set up a log record processor to export spans to OpenSearch
|
|
49
|
+
const openSearchLogProcessor = new SimpleLogRecordProcessor(openSearchExporter);
|
|
50
|
+
// Register the span processor with the tracer provider
|
|
51
|
+
tracerProvider.addSpanProcessor(honeyCombSpanProcessor);
|
|
52
|
+
// Register the log record processor with the log provider
|
|
53
|
+
loggerProvider.addLogRecordProcessor(openSearchLogProcessor);
|
|
54
|
+
if (telemetryOptions?.mode === 'verbose' ||
|
|
55
|
+
telemetryOptions?.mode === 'dev') {
|
|
56
|
+
// Set up a console exporter for verbose mode
|
|
57
|
+
const consoleExporter = new ConsoleSpanExporter();
|
|
58
|
+
const verboseTraceProcessor = new SimpleSpanProcessor(consoleExporter);
|
|
59
|
+
// Set up processors for verbose mode
|
|
60
|
+
const consoleLogExporter = new ConsoleLogRecordExporter();
|
|
61
|
+
const veboseLogRecordExporter = new SimpleLogRecordProcessor(consoleLogExporter);
|
|
62
|
+
tracerProvider.addSpanProcessor(verboseTraceProcessor);
|
|
63
|
+
loggerProvider.addLogRecordProcessor(veboseLogRecordExporter);
|
|
64
|
+
}
|
|
65
|
+
const useFaststoreTelemetry = getFaststoreTelemetryPlugin(
|
|
66
|
+
// The @opentelemetry/sdk-trace-base was renamed from @opentelemetry/tracing but the
|
|
67
|
+
// envelop plugin doesn't support this change yet. This causes the class type to be incompatible,
|
|
68
|
+
// even if they are the same. https://github.com/n1ru4l/envelop/issues/1610
|
|
69
|
+
tracerProvider, loggerProvider, 'faststore-api', telemetryOptions?.experimentalSendLogs ?? false);
|
|
70
|
+
return { useFaststoreTelemetry };
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/telemetry/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Plugin } from '@envelop/core';
|
|
2
|
+
import { Span } from '@opentelemetry/api';
|
|
3
|
+
import type { BasicTracerProvider } from '@opentelemetry/sdk-trace-base';
|
|
4
|
+
import type { LoggerProvider } from '@opentelemetry/sdk-logs';
|
|
5
|
+
export declare enum AttributeName {
|
|
6
|
+
EXECUTION_ERROR = "graphql.error",
|
|
7
|
+
EXECUTION_RESULT = "graphql.result",
|
|
8
|
+
RESOLVER_EXECUTION_ERROR = "graphql.resolver.error",
|
|
9
|
+
RESOLVER_EXCEPTION = "graphql.resolver.exception",
|
|
10
|
+
RESOLVER_FIELD_NAME = "graphql.resolver.fieldName",
|
|
11
|
+
RESOLVER_TYPE_NAME = "graphql.resolver.typeName",
|
|
12
|
+
RESOLVER_RESULT_TYPE = "graphql.resolver.resultType",
|
|
13
|
+
RESOLVER_ARGS = "graphql.resolver.args",
|
|
14
|
+
EXECUTION_OPERATION_NAME = "graphql.operation.name",
|
|
15
|
+
EXECUTION_OPERATION_TYPE = "graphql.operation.type",
|
|
16
|
+
EXECUTION_OPERATION_DOCUMENT = "graphql.document",
|
|
17
|
+
EXECUTION_VARIABLES = "graphql.variables"
|
|
18
|
+
}
|
|
19
|
+
declare const tracingSpanSymbol: unique symbol;
|
|
20
|
+
export type PluginContext = {
|
|
21
|
+
[tracingSpanSymbol]: Span;
|
|
22
|
+
};
|
|
23
|
+
export declare const getFaststoreTelemetryPlugin: (tracingProvider: BasicTracerProvider, loggerProvider: LoggerProvider, serviceName: string, experimentalSendLogs: boolean) => (() => Plugin<PluginContext>);
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import { isAsyncIterable } from '@envelop/core';
|
|
2
|
+
import { useOnResolve } from '@envelop/on-resolve';
|
|
3
|
+
import { SpanKind } from '@opentelemetry/api';
|
|
4
|
+
import { trace as openTelTrace, context as openTelContext, } from '@opentelemetry/api';
|
|
5
|
+
import { SeverityNumber } from '@opentelemetry/api-logs';
|
|
6
|
+
import { print, Kind } from 'graphql';
|
|
7
|
+
export var AttributeName;
|
|
8
|
+
(function (AttributeName) {
|
|
9
|
+
AttributeName["EXECUTION_ERROR"] = "graphql.error";
|
|
10
|
+
AttributeName["EXECUTION_RESULT"] = "graphql.result";
|
|
11
|
+
AttributeName["RESOLVER_EXECUTION_ERROR"] = "graphql.resolver.error";
|
|
12
|
+
AttributeName["RESOLVER_EXCEPTION"] = "graphql.resolver.exception";
|
|
13
|
+
AttributeName["RESOLVER_FIELD_NAME"] = "graphql.resolver.fieldName";
|
|
14
|
+
AttributeName["RESOLVER_TYPE_NAME"] = "graphql.resolver.typeName";
|
|
15
|
+
AttributeName["RESOLVER_RESULT_TYPE"] = "graphql.resolver.resultType";
|
|
16
|
+
AttributeName["RESOLVER_ARGS"] = "graphql.resolver.args";
|
|
17
|
+
AttributeName["EXECUTION_OPERATION_NAME"] = "graphql.operation.name";
|
|
18
|
+
AttributeName["EXECUTION_OPERATION_TYPE"] = "graphql.operation.type";
|
|
19
|
+
AttributeName["EXECUTION_OPERATION_DOCUMENT"] = "graphql.document";
|
|
20
|
+
AttributeName["EXECUTION_VARIABLES"] = "graphql.variables";
|
|
21
|
+
})(AttributeName || (AttributeName = {}));
|
|
22
|
+
const tracingSpanSymbol = Symbol('OPEN_TELEMETRY_GRAPHQL');
|
|
23
|
+
function getResolverSpanKey(path) {
|
|
24
|
+
const nodes = [];
|
|
25
|
+
// If the first node (after reversed, it will be the last one) is an integer, that is, identifies a list,
|
|
26
|
+
// we don't want to include it in the key. Note that this will only happen when analysing .prev paths in
|
|
27
|
+
// a list of elements. We just want to remove the initial node that is a integer, not all of them.
|
|
28
|
+
//
|
|
29
|
+
// Nodes with keys 6bc73341b2a183fc::product::image::0::url would not be able to find
|
|
30
|
+
// parents with key 6bc73341b2a183fc::product::image because of the "0" list index -
|
|
31
|
+
// it would search for 6bc73341b2a183fc::product::image::0
|
|
32
|
+
let currentPath = nodes.length === 0 && Number.isInteger(path.key) ? path.prev : path;
|
|
33
|
+
while (currentPath) {
|
|
34
|
+
nodes.push(currentPath.key);
|
|
35
|
+
currentPath = currentPath.prev;
|
|
36
|
+
}
|
|
37
|
+
return [...nodes].reverse().join('.');
|
|
38
|
+
}
|
|
39
|
+
export const getFaststoreTelemetryPlugin = (tracingProvider, loggerProvider, serviceName, experimentalSendLogs) => {
|
|
40
|
+
return function useFaststoreTelemetry() {
|
|
41
|
+
const tracer = tracingProvider.getTracer(serviceName);
|
|
42
|
+
const logger = loggerProvider.getLogger(serviceName);
|
|
43
|
+
const resolverContextsByRootSpans = {};
|
|
44
|
+
return {
|
|
45
|
+
onPluginInit({ addPlugin }) {
|
|
46
|
+
addPlugin(
|
|
47
|
+
// eslint-disable-next-line
|
|
48
|
+
useOnResolve(({ info, context }) => {
|
|
49
|
+
if (context &&
|
|
50
|
+
typeof context === 'object' &&
|
|
51
|
+
context[tracingSpanSymbol]) {
|
|
52
|
+
tracer.getActiveSpanProcessor();
|
|
53
|
+
const rootContextSpanId = context[tracingSpanSymbol].spanContext().spanId;
|
|
54
|
+
const { fieldName, returnType, parentType, path } = info;
|
|
55
|
+
const previousResolverSpanKey = path.prev && getResolverSpanKey(path.prev);
|
|
56
|
+
let ctx = null;
|
|
57
|
+
if (previousResolverSpanKey &&
|
|
58
|
+
resolverContextsByRootSpans[rootContextSpanId][previousResolverSpanKey]) {
|
|
59
|
+
ctx =
|
|
60
|
+
resolverContextsByRootSpans[rootContextSpanId][previousResolverSpanKey];
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
ctx = openTelTrace.setSpan(openTelContext.active(), context[tracingSpanSymbol]);
|
|
64
|
+
resolverContextsByRootSpans[rootContextSpanId] =
|
|
65
|
+
resolverContextsByRootSpans[rootContextSpanId] ?? {};
|
|
66
|
+
}
|
|
67
|
+
const resolverIndexInList = Number.isInteger(path.prev?.key)
|
|
68
|
+
? `[${path.prev?.key}]`
|
|
69
|
+
: '';
|
|
70
|
+
const resolverSpan = tracer.startSpan(`${parentType.toString()}.${fieldName}${resolverIndexInList}`, {
|
|
71
|
+
attributes: {
|
|
72
|
+
[AttributeName.RESOLVER_FIELD_NAME]: fieldName,
|
|
73
|
+
[AttributeName.RESOLVER_TYPE_NAME]: parentType.toString(),
|
|
74
|
+
[AttributeName.RESOLVER_RESULT_TYPE]: returnType.toString(),
|
|
75
|
+
'meta.span.path': getResolverSpanKey(path),
|
|
76
|
+
},
|
|
77
|
+
}, ctx);
|
|
78
|
+
const resolverCtx = openTelTrace.setSpan(ctx, resolverSpan);
|
|
79
|
+
resolverContextsByRootSpans[rootContextSpanId][getResolverSpanKey(path)] = resolverCtx;
|
|
80
|
+
return ({ result }) => {
|
|
81
|
+
if (result instanceof Error) {
|
|
82
|
+
resolverSpan.setAttributes({
|
|
83
|
+
error: true,
|
|
84
|
+
'exception.category': AttributeName.RESOLVER_EXECUTION_ERROR,
|
|
85
|
+
'exception.message': result.message,
|
|
86
|
+
'exception.type': result.name,
|
|
87
|
+
});
|
|
88
|
+
resolverSpan.recordException(result);
|
|
89
|
+
}
|
|
90
|
+
resolverSpan.end();
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
return () => { };
|
|
94
|
+
}));
|
|
95
|
+
},
|
|
96
|
+
onExecute({ args, extendContext }) {
|
|
97
|
+
const operationType = args.document.definitions
|
|
98
|
+
.filter((def) => def.kind === Kind.OPERATION_DEFINITION)
|
|
99
|
+
.map((def) => def.operation)?.[0];
|
|
100
|
+
// Span name according to Semantic Conventions
|
|
101
|
+
// https://github.com/open-telemetry/semantic-conventions
|
|
102
|
+
let spanName = 'GraphQL Operation';
|
|
103
|
+
if (operationType && args.operationName) {
|
|
104
|
+
spanName = `${operationType} ${args.operationName}`;
|
|
105
|
+
}
|
|
106
|
+
else if (operationType && !args.operationName) {
|
|
107
|
+
spanName = operationType;
|
|
108
|
+
}
|
|
109
|
+
const executionSpan = tracer.startSpan(spanName, {
|
|
110
|
+
kind: SpanKind.SERVER,
|
|
111
|
+
attributes: {
|
|
112
|
+
[AttributeName.EXECUTION_OPERATION_NAME]: args.operationName ?? undefined,
|
|
113
|
+
[AttributeName.EXECUTION_OPERATION_TYPE]: operationType ?? undefined,
|
|
114
|
+
[AttributeName.EXECUTION_OPERATION_DOCUMENT]: print(args.document),
|
|
115
|
+
},
|
|
116
|
+
});
|
|
117
|
+
const executeContext = openTelContext.active();
|
|
118
|
+
const resultCbs = {
|
|
119
|
+
onExecuteDone({ result }) {
|
|
120
|
+
if (isAsyncIterable(result)) {
|
|
121
|
+
executionSpan.end();
|
|
122
|
+
// eslint-disable-next-line no-console
|
|
123
|
+
console.warn(`Plugin "newrelic" encountered a AsyncIterator which is not supported yet, so tracing data is not available for the operation.`);
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const logRecord = {
|
|
127
|
+
context: executeContext,
|
|
128
|
+
attributes: {
|
|
129
|
+
'service.name': 'faststore-api',
|
|
130
|
+
'service.version': '1.12.38',
|
|
131
|
+
'service.name_and_version': 'faststore-api@1.12.38',
|
|
132
|
+
'vtex.search_index': 'faststore_beta_api',
|
|
133
|
+
[AttributeName.EXECUTION_OPERATION_NAME]: args.operationName ?? undefined,
|
|
134
|
+
[AttributeName.EXECUTION_OPERATION_DOCUMENT]: print(args.document),
|
|
135
|
+
[AttributeName.EXECUTION_VARIABLES]: JSON.stringify(args.variableValues ?? {}),
|
|
136
|
+
},
|
|
137
|
+
};
|
|
138
|
+
if (typeof result.data !== 'undefined' &&
|
|
139
|
+
!(result.errors && result.errors.length > 0)) {
|
|
140
|
+
logRecord.severityNumber = SeverityNumber.INFO;
|
|
141
|
+
logRecord.severityText = 'Info';
|
|
142
|
+
logRecord.attributes[AttributeName.EXECUTION_RESULT] =
|
|
143
|
+
JSON.stringify(result);
|
|
144
|
+
}
|
|
145
|
+
if (result.errors && result.errors.length > 0) {
|
|
146
|
+
logRecord.severityNumber = SeverityNumber.ERROR;
|
|
147
|
+
logRecord.severityText = 'Error';
|
|
148
|
+
logRecord.attributes[AttributeName.EXECUTION_ERROR] =
|
|
149
|
+
JSON.stringify(result.errors);
|
|
150
|
+
executionSpan.setAttributes({
|
|
151
|
+
error: true,
|
|
152
|
+
'exception.category': AttributeName.EXECUTION_ERROR,
|
|
153
|
+
'exception.message': JSON.stringify(result.errors),
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
if (experimentalSendLogs) {
|
|
157
|
+
logger.emit(logRecord);
|
|
158
|
+
}
|
|
159
|
+
executionSpan.end();
|
|
160
|
+
},
|
|
161
|
+
};
|
|
162
|
+
extendContext({
|
|
163
|
+
[tracingSpanSymbol]: executionSpan,
|
|
164
|
+
});
|
|
165
|
+
return resultCbs;
|
|
166
|
+
},
|
|
167
|
+
};
|
|
168
|
+
};
|
|
169
|
+
};
|
|
170
|
+
//# sourceMappingURL=useFaststoreTelemetry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFaststoreTelemetry.js","sourceRoot":"","sources":["../../../../src/telemetry/useFaststoreTelemetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Address information.
|
|
3
|
+
"""
|
|
4
|
+
type Address {
|
|
5
|
+
"""
|
|
6
|
+
Address postal code
|
|
7
|
+
"""
|
|
8
|
+
postalCode: String
|
|
9
|
+
"""
|
|
10
|
+
Address city
|
|
11
|
+
"""
|
|
12
|
+
city: String
|
|
13
|
+
"""
|
|
14
|
+
Address state
|
|
15
|
+
"""
|
|
16
|
+
state: String
|
|
17
|
+
"""
|
|
18
|
+
Address country
|
|
19
|
+
"""
|
|
20
|
+
country: String
|
|
21
|
+
"""
|
|
22
|
+
Address street
|
|
23
|
+
"""
|
|
24
|
+
street: String
|
|
25
|
+
"""
|
|
26
|
+
Address number
|
|
27
|
+
"""
|
|
28
|
+
number: String
|
|
29
|
+
"""
|
|
30
|
+
Address neighborhood
|
|
31
|
+
"""
|
|
32
|
+
neighborhood: String
|
|
33
|
+
"""
|
|
34
|
+
Address complement
|
|
35
|
+
"""
|
|
36
|
+
complement: String
|
|
37
|
+
"""
|
|
38
|
+
Address reference
|
|
39
|
+
"""
|
|
40
|
+
reference: String
|
|
41
|
+
"""
|
|
42
|
+
Address geoCoordinates
|
|
43
|
+
"""
|
|
44
|
+
geoCoordinates: [Float]
|
|
45
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Aggregate offer information, for a given SKU that is available to be fulfilled by multiple sellers.
|
|
3
|
+
"""
|
|
4
|
+
type StoreAggregateOffer {
|
|
5
|
+
"""
|
|
6
|
+
Highest price among all sellers.
|
|
7
|
+
"""
|
|
8
|
+
highPrice: Float!
|
|
9
|
+
"""
|
|
10
|
+
Lowest price among all sellers.
|
|
11
|
+
"""
|
|
12
|
+
lowPrice: Float!
|
|
13
|
+
"""
|
|
14
|
+
Number of sellers selling this SKU.
|
|
15
|
+
"""
|
|
16
|
+
offerCount: Int!
|
|
17
|
+
"""
|
|
18
|
+
ISO code of the currency used for the offer prices.
|
|
19
|
+
"""
|
|
20
|
+
priceCurrency: String!
|
|
21
|
+
"""
|
|
22
|
+
Array with information on each available offer.
|
|
23
|
+
"""
|
|
24
|
+
offers: [StoreOffer!]!
|
|
25
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Item of a list.
|
|
3
|
+
"""
|
|
4
|
+
type StoreListItem {
|
|
5
|
+
"""
|
|
6
|
+
List item value.
|
|
7
|
+
"""
|
|
8
|
+
item: String!
|
|
9
|
+
"""
|
|
10
|
+
Name of the list item.
|
|
11
|
+
"""
|
|
12
|
+
name: String!
|
|
13
|
+
"""
|
|
14
|
+
Position of the item in the list.
|
|
15
|
+
"""
|
|
16
|
+
position: Int!
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
"""
|
|
20
|
+
List of items consisting of chain linked web pages, ending with the current page.
|
|
21
|
+
"""
|
|
22
|
+
type StoreBreadcrumbList {
|
|
23
|
+
"""
|
|
24
|
+
Array with breadcrumb elements.
|
|
25
|
+
"""
|
|
26
|
+
itemListElement: [StoreListItem!]!
|
|
27
|
+
"""
|
|
28
|
+
Number of breadcrumbs in the list.
|
|
29
|
+
"""
|
|
30
|
+
numberOfItems: Int!
|
|
31
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Shopping cart message.
|
|
3
|
+
"""
|
|
4
|
+
type StoreCartMessage {
|
|
5
|
+
"""
|
|
6
|
+
Shopping cart message text.
|
|
7
|
+
"""
|
|
8
|
+
text: String!
|
|
9
|
+
"""
|
|
10
|
+
Shopping cart message status, which can be `INFO`, `WARNING` or `ERROR`.
|
|
11
|
+
"""
|
|
12
|
+
status: StoreStatus!
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
"""
|
|
16
|
+
Shopping cart information.
|
|
17
|
+
"""
|
|
18
|
+
type StoreCart {
|
|
19
|
+
"""
|
|
20
|
+
Order information, including `orderNumber` and `acceptedOffer`.
|
|
21
|
+
"""
|
|
22
|
+
order: StoreOrder!
|
|
23
|
+
"""
|
|
24
|
+
List of shopping cart messages.
|
|
25
|
+
"""
|
|
26
|
+
messages: [StoreCartMessage!]!
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
"""
|
|
30
|
+
Shopping cart input.
|
|
31
|
+
"""
|
|
32
|
+
input IStoreCart {
|
|
33
|
+
"""
|
|
34
|
+
Order information, including `orderNumber`, `acceptedOffer` and `shouldSplitItem`.
|
|
35
|
+
"""
|
|
36
|
+
order: IStoreOrder!
|
|
37
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Product collection type. Possible values are `Department`, `Category`, `Brand`, `Cluster`, `SubCategory` or `Collection`.
|
|
3
|
+
"""
|
|
4
|
+
enum StoreCollectionType {
|
|
5
|
+
"""
|
|
6
|
+
First level of product categorization.
|
|
7
|
+
"""
|
|
8
|
+
Department
|
|
9
|
+
"""
|
|
10
|
+
Second level of product categorization.
|
|
11
|
+
"""
|
|
12
|
+
Category
|
|
13
|
+
"""
|
|
14
|
+
Third level of product categorization.
|
|
15
|
+
"""
|
|
16
|
+
SubCategory
|
|
17
|
+
"""
|
|
18
|
+
Product brand.
|
|
19
|
+
"""
|
|
20
|
+
Brand
|
|
21
|
+
"""
|
|
22
|
+
Product cluster.
|
|
23
|
+
"""
|
|
24
|
+
Cluster
|
|
25
|
+
"""
|
|
26
|
+
Product collection.
|
|
27
|
+
"""
|
|
28
|
+
Collection
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
"""
|
|
32
|
+
Product collection facet, used for search.
|
|
33
|
+
"""
|
|
34
|
+
type StoreCollectionFacet {
|
|
35
|
+
"""
|
|
36
|
+
Facet key.
|
|
37
|
+
"""
|
|
38
|
+
key: String!
|
|
39
|
+
"""
|
|
40
|
+
Facet value.
|
|
41
|
+
"""
|
|
42
|
+
value: String!
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
"""
|
|
46
|
+
Collection meta information. Used for search.
|
|
47
|
+
"""
|
|
48
|
+
type StoreCollectionMeta {
|
|
49
|
+
"""
|
|
50
|
+
List of selected collection facets.
|
|
51
|
+
"""
|
|
52
|
+
selectedFacets: [StoreCollectionFacet!]!
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
"""
|
|
56
|
+
Product collection information.
|
|
57
|
+
"""
|
|
58
|
+
type StoreCollection {
|
|
59
|
+
"""
|
|
60
|
+
Meta tag data.
|
|
61
|
+
"""
|
|
62
|
+
seo: StoreSeo!
|
|
63
|
+
"""
|
|
64
|
+
List of items consisting of chain linked web pages, ending with the current page.
|
|
65
|
+
"""
|
|
66
|
+
breadcrumbList: StoreBreadcrumbList!
|
|
67
|
+
"""
|
|
68
|
+
Collection meta information. Used for search.
|
|
69
|
+
"""
|
|
70
|
+
meta: StoreCollectionMeta!
|
|
71
|
+
"""
|
|
72
|
+
Collection ID.
|
|
73
|
+
"""
|
|
74
|
+
id: ID!
|
|
75
|
+
"""
|
|
76
|
+
Corresponding collection URL slug, with which to retrieve this entity.
|
|
77
|
+
"""
|
|
78
|
+
slug: String!
|
|
79
|
+
"""
|
|
80
|
+
Collection type.
|
|
81
|
+
"""
|
|
82
|
+
type: StoreCollectionType!
|
|
83
|
+
}
|