@sixtyninecommerce/client 0.31.0 → 0.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/README.md +91 -3
  2. package/dist/build-client.d.ts.map +1 -1
  3. package/dist/build-client.js +3 -0
  4. package/dist/build-client.js.map +1 -1
  5. package/dist/commerce/checkout.d.ts +4 -2
  6. package/dist/commerce/checkout.d.ts.map +1 -1
  7. package/dist/commerce/checkout.js +4 -2
  8. package/dist/commerce/checkout.js.map +1 -1
  9. package/dist/commerce/customer.d.ts +254 -5
  10. package/dist/commerce/customer.d.ts.map +1 -1
  11. package/dist/commerce/customer.js +85 -28
  12. package/dist/commerce/customer.js.map +1 -1
  13. package/dist/commerce/index.d.ts +261 -6
  14. package/dist/commerce/index.d.ts.map +1 -1
  15. package/dist/commerce/index.js +12 -0
  16. package/dist/commerce/index.js.map +1 -1
  17. package/dist/commerce/money-view.d.ts +33 -0
  18. package/dist/commerce/money-view.d.ts.map +1 -0
  19. package/dist/commerce/money-view.js +75 -0
  20. package/dist/commerce/money-view.js.map +1 -0
  21. package/dist/commerce/order-access-key.d.ts +29 -0
  22. package/dist/commerce/order-access-key.d.ts.map +1 -0
  23. package/dist/commerce/order-access-key.js +38 -0
  24. package/dist/commerce/order-access-key.js.map +1 -0
  25. package/dist/commerce/parked-orders.d.ts +3 -3
  26. package/dist/commerce/parked-orders.d.ts.map +1 -1
  27. package/dist/commerce/parked-orders.js +34 -5
  28. package/dist/commerce/parked-orders.js.map +1 -1
  29. package/dist/commerce/payments.d.ts +2 -1
  30. package/dist/commerce/payments.d.ts.map +1 -1
  31. package/dist/commerce/payments.js +2 -1
  32. package/dist/commerce/payments.js.map +1 -1
  33. package/dist/commerce/queries.d.ts +37 -4
  34. package/dist/commerce/queries.d.ts.map +1 -1
  35. package/dist/commerce/queries.js +180 -8
  36. package/dist/commerce/queries.js.map +1 -1
  37. package/dist/commerce/receipt-claim.d.ts +35 -0
  38. package/dist/commerce/receipt-claim.d.ts.map +1 -0
  39. package/dist/commerce/receipt-claim.js +66 -0
  40. package/dist/commerce/receipt-claim.js.map +1 -0
  41. package/dist/commerce/returns.d.ts +2 -2
  42. package/dist/commerce/returns.d.ts.map +1 -1
  43. package/dist/commerce/returns.js +24 -3
  44. package/dist/commerce/returns.js.map +1 -1
  45. package/dist/commerce/store-pickup.d.ts +37 -0
  46. package/dist/commerce/store-pickup.d.ts.map +1 -0
  47. package/dist/commerce/store-pickup.js +66 -0
  48. package/dist/commerce/store-pickup.js.map +1 -0
  49. package/dist/core/customer-session.d.ts +34 -0
  50. package/dist/core/customer-session.d.ts.map +1 -0
  51. package/dist/core/customer-session.js +48 -0
  52. package/dist/core/customer-session.js.map +1 -0
  53. package/dist/core/http.d.ts +9 -0
  54. package/dist/core/http.d.ts.map +1 -1
  55. package/dist/core/http.js +64 -25
  56. package/dist/core/http.js.map +1 -1
  57. package/dist/errors.d.ts +6 -0
  58. package/dist/errors.d.ts.map +1 -1
  59. package/dist/errors.js +2 -0
  60. package/dist/errors.js.map +1 -1
  61. package/dist/events/payloads.d.ts +1 -1
  62. package/dist/events/payloads.d.ts.map +1 -1
  63. package/dist/generated/cms.d.ts +4 -2
  64. package/dist/generated/cms.d.ts.map +1 -1
  65. package/dist/generated/plugins.d.ts +2 -2
  66. package/dist/generated/plugins.d.ts.map +1 -1
  67. package/dist/generated/shop.d.ts +323 -9
  68. package/dist/generated/shop.d.ts.map +1 -1
  69. package/dist/index.d.ts +5 -1
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +3 -0
  72. package/dist/index.js.map +1 -1
  73. package/dist/pricing/index.d.ts +1 -0
  74. package/dist/pricing/index.d.ts.map +1 -1
  75. package/dist/pricing/index.js +1 -0
  76. package/dist/pricing/index.js.map +1 -1
  77. package/dist/pricing/order-money-rows.d.ts +92 -0
  78. package/dist/pricing/order-money-rows.d.ts.map +1 -0
  79. package/dist/pricing/order-money-rows.js +88 -0
  80. package/dist/pricing/order-money-rows.js.map +1 -0
  81. package/dist/pricing/validation.d.ts +25 -0
  82. package/dist/pricing/validation.d.ts.map +1 -1
  83. package/dist/pricing/validation.js +37 -4
  84. package/dist/pricing/validation.js.map +1 -1
  85. package/dist/types.d.ts +373 -25
  86. package/dist/types.d.ts.map +1 -1
  87. package/package.json +2 -2
package/dist/index.d.ts CHANGED
@@ -15,8 +15,11 @@ export { type ErrorDetail, PlatformError, type ProblemDetails } from '@sixtynine
15
15
  export { CATALOG_TAG, cacheTagsForRoute, collectionCacheTag, menuCacheTag, PRODUCT_FEED_TAG, productCacheTag, SEO_ARTIFACT_TAG, storeCacheTag, } from './cache-tags.js';
16
16
  export { createStorefrontClient } from './client.js';
17
17
  export type { OrderWithWritableCustomFields } from './commerce/checkout.js';
18
+ export { ORDER_MONEY_BASES, type OrderMoneyViewTarget, } from './commerce/money-view.js';
19
+ export type { OrderAccessKeyOption } from './commerce/order-access-key.js';
18
20
  export { type ParcelPricing, readParcelPricing } from './commerce/parcel-pricing.js';
19
21
  export type { CatalogDetailOptions, CollectionWithMetafields, MetafieldsOption, ProductVariantWithMetafields, ProductWithMetafields, } from './commerce/products.js';
22
+ export { RECEIPT_CLAIM_NOT_FOUND, RECEIPT_CLAIM_PATH, receiptClaimTokenFrom, } from './commerce/receipt-claim.js';
20
23
  export { DEFAULT_CMS_URL, DEFAULT_PLUGINS_URL, DEFAULT_VENDURE_URL, ORDER_SCOPE_HEADER, RESERVED_STOREFRONT_PATHS, type ReservedStorefrontPath, SHOP_API_PATH, } from './constants.js';
21
24
  export { isAssetReference, resolveContentAssetUrls, resolveContentFieldValues, } from './content/asset-urls.js';
22
25
  export { buildFilteredProductsSearch, type FilteredProductsConfig, type FilteredProductsValue, } from './content/filtered-products.js';
@@ -25,8 +28,9 @@ export { MutationError, StorefrontError } from './errors.js';
25
28
  export type { FeedsModule } from './feeds/index.js';
26
29
  export { isMultiStoreClient, type MultiStoreClient, type MultiStoreClientConfig, type StoreRequest, type StoreRequestInput, type StoreRequestOptions, type StoreResolution, type StoreResolver, storeFromHostMap, storeFromPathPrefix, } from './multi-store.js';
27
30
  export { orderScopeMatches } from './order-scope.js';
31
+ export { type OrderMoneyDisplay, type OrderMoneyDisplayRow, type OrderMoneyRowsOptions, orderMoneyRows, } from './pricing/order-money-rows.js';
28
32
  export { createRedirectStore, normalizeLookupPath, REDIRECT_STATUS_CODES, type RedirectMatch, type RedirectRule, type RedirectSnapshot, type RedirectStatusCode, type RedirectStore, type RedirectStoreConfig, } from './redirects/index.js';
29
33
  export type { AiSummaryInput, AvailabilityForSeo, BotDirective, BreadcrumbOverrideEntry, CmsItemMetadata, CmsMetaTagsInput, CmsSeoExtras, CollectionForSeo, CollectionMetadata, CollectionMetaTagsInput, CollectionSeoExtras, CommonSeoMetadata, HreflangLink, HreflangLinkTag, HreflangOverrideEntry, LlmsTxtEntryInput, MetaRobots, MetaRobotsFollowDirective, MetaRobotsIndexDirective, MetaRobotsMaxImagePreview, MetaTagsEntityInput, MetaTagsResult, OpenGraphTag, PerBotDirectives, ProductForSeo, ProductMetadata, ProductMetadataAi, ProductMetadataSocial, ProductMetadataTwitter, ProductMetaTagsInput, ProductSeoExtras, QAPair, RawCmsSeo, RawCollectionSeo, RawProductMetadata, RobotsMetaTag, RobotsXRobotsHeader, SchemaOrgAvailability, SeoArtifact, SeoArtifactFetchOptions, SeoArtifactResult, SeoArtifactsModule, SeoEntityInput, SeoMeta, SeoModule, SocialOgType, TwitterCardType, TwitterTag, UrlLocaleStrategy, UrlStrategyConfig, } from './seo/index.js';
30
34
  export { buildUrl, DEFAULT_PRODUCT_PATH_SEGMENT, isSitemapChildFile, isUserFacingRoot, normalizeProductPathSegment, openGraphAvailability, parseCmsItemMetadata, parseCollectionMetadata, parseProductMetadata, pickCanonicalRootIndex, readUrlStrategy, robotsFromFlags, SEO_ARTIFACTS, schemaOrgAvailability, } from './seo/index.js';
31
- export type { AddItemInput, AdjustmentType, Asset, AssetPresetSize, AssetPresets, AuthenticationInput, AuthenticationStrategy, AuthenticationStrategyInput, B2bCreditStatus, BooleanOperators, BrandingAssetRef, BrandingContact, BrandingFontResource, BrandingIdentity, BrandingInfo, BrandingLegal, BrandingLegalAddress, BrandingSocialLinks, BrandingStorefrontConfig, BrandingTheme, BreadcrumbFragment, CacheTagResolver, ChannelCustomFieldsFragment, ChannelInfo, CmsCollectionItemList, CollectionDetailFragment, CollectionFragment, CollectionItemsQuery, CollectionListOptions, CollectionProductListOptions, CollectionProductSummary, CollectionProductVariant, CollectionRefFragment, CommerceModule, ContentModule, ContentQueryOptions, ContentSearchQuery, ContentStrings, ConvertedAmountFragment, CreateAddressInput, CreateCustomerInput, CreateProductReviewInput, CreateQuoteRequestInput, CreditBalanceSource, CreditModule, CurrencyCode, CurrencyModule, CurrentUserFragment, CustomerPaymentTermsFragment, CustomerReturnFragment, CustomerReturnListOptions, CustomerSubscriptionFragment, DeliveryAdvice, DeliveryOption, DeliverySelectionSource, DeliveryTermsStatus, DeliveryTimeFrame, DepositPaymentIntentInput, DisplayPrice, DropOffPoint, EndpointDeprecationNotice, FacetFragment, FacetValueFilterInput, FacetValueFragment, FavoriteListOptions, FormDefinition, FormFieldTypeRegistry, FormListOptions, FormSubmissionResult, HeadKey, LanguageCode, LoginResult, MagicLinkPortal, MediaModule, Menu, MenuItem, MergedSelection, MethodDeprecationNotice, MolliePaymentIntentInput, MolliePaymentIntentResult, MolliePaymentMethodsInput, MyPaymentMandateFragment, MyparcelDeliveryOptionsInput, MyparcelDropOffPointInput, NativeAuthInput, NavigationModule, OrderDeliveryTermsFragment, OrderFragment, OrderFulfillmentParcelsFragment, OrderFulfillmentsFragment, OrderListOptions, OrderPaymentIntent, OrderPaymentTermsFragment, OrderReturnReasonCode, OrderReturnSettlementMethod, OrderReturnState, OrderScope, OrderSummaryFragment, OrderValidationError, OrderValidationResult, OrderWritableCustomFieldsFragment, PaginatedList, ParkedOrderFragment, ParkedOrderPaymentIntentInput, PayDepositInput, PaymentInput, PaymentTermsClassification, PaymentTermsStatus, PayParkedOrderInput, PlacementRejection, PlacementRejectionCode, PlacementRejectionFragment, PlacementRejectionLine, PresetName, PriceDisplay, PriceTierFragment, PricingModule, Product, ProductAvailabilityFragment, ProductAvailabilityState, ProductCardFragment, ProductFilterParameter, ProductFragment, ProductListOptions, ProductListPage, ProductMetadataFragment, ProductPropertyGroupValuesFragment, ProductPropertyRecord, ProductReviewFragment, ProductReviewListOptions, ProductSummaryFragment, ProductVariantFragment, PropertyGroupFragment, PublicAssetDto, PublicAssetPresetsDto, PublicAssetPresetUrlsDto, PublicAssetTranslationDto, PublicBreadcrumbDto, PublicCapabilitiesDto, PublicCapabilityManifestDto, PublicCapabilityReadinessDto, PublicChannelDto, PublicCollectionDetailDto, PublicCollectionDto, PublicCollectionFieldDto, PublicCollectionItemDetailDto, PublicCollectionItemDto, PublicCollectionItemSearchResultDto, PublicCollectionPageValuesDto, PublicContentStringDto, PublicContentStringListResponseDto, PublicContentStringValueDto, PublicFormDto, PublicFormFieldConstraintDto, PublicFormFieldDto, PublicFormFieldTypeDto, PublicFormListResponseDto, PublicFormSlugRuleDto, PublicFormSlugRulesDto, PublicFormTranslationDto, PublicItemSummaryDto, PublicItemWithFieldsDto, PublicMenuDetailDto, PublicMenuSummaryDto, PublicPaginationTotalDto, PublicPaymentMethodFragment, PublicResolvedCollectionDto, PublicResolvedContentDto, PublicResolvedFieldDto, PublicResolvedItemDto, PublicResolvedSubFieldDto, PublicRouteEntryDto, PublicRoutesMetadataDto, PublicRoutesResponseDto, PublicSeoMetadataDto, PublicShippingMethodFragment, PublicSitemapEntryDto, PublicSitemapSeoDto, PublicVendureAssetDescriptionDto, Quote, QuoteLine, QuoteLineDiscountType, QuoteLineRequestInput, QuoteList, QuoteListOptions, QuoteStatus, RecentReviewsOptions, RecommendedProductGroupFragment, RegisterCustomerInput, RequestMagicLinkOptions, RequestOptions, RequestReturnInput, ResolvedRoute, ResolvedTaxDisplay, ResponsiveImageData, RetryConfig, ReturnRequestLineInput, ReviewSortKey, ReviewStatus, SavedListFragment, SearchInput, SearchResultFragment, SearchResultItemFragment, SetupPaymentMandateInput, ShipmentTrackingHistoryEntry, ShipmentTrackingInfo, StockNotificationSubscriptionResult, StoreContext, StorefrontClient, StorefrontClientConfig, StorefrontDeprecationNotice, StoreRename, StripePaymentIntentResult, SubscriptionFirstChargeTiming, SubscriptionLifecycleAction, SubscriptionLifecycleCommand, SubscriptionPaymentActionInput, SubscriptionPlanPublicFragment, SubscriptionPurchaseInput, SubscriptionPurchaseResultFragment, TaxDisplayB2bMode, TaxDisplayDefault, TaxDisplayInputs, TaxDisplayMode, TaxDisplayPolicy, TierTableEntry, UpdateAddressInput, UpdateCustomerInput, UpdateOrderCustomFieldsInput, UpdateProductReviewInput, VariantLocationAvailabilityFragment, VariantPriceData, VatValidationResultFragment, } from './types.js';
35
+ export type { AddItemInput, AdjustmentType, Asset, AssetPresetSize, AssetPresets, AuthenticationInput, AuthenticationStrategy, AuthenticationStrategyInput, B2bCreditStatus, BooleanOperators, BrandingAssetRef, BrandingContact, BrandingFontResource, BrandingIdentity, BrandingInfo, BrandingLegal, BrandingLegalAddress, BrandingSocialLinks, BrandingStorefrontConfig, BrandingTheme, BreadcrumbFragment, CacheTagResolver, ChannelCustomFieldsFragment, ChannelInfo, CmsCollectionItemList, CollectionDetailFragment, CollectionFragment, CollectionItemsQuery, CollectionListOptions, CollectionProductListOptions, CollectionProductSummary, CollectionProductVariant, CollectionRefFragment, CommerceModule, ContentModule, ContentQueryOptions, ContentSearchQuery, ContentStrings, ConvertedAmountFragment, CreateAddressInput, CreateCustomerInput, CreateProductReviewInput, CreateQuoteRequestInput, CreditBalanceSource, CreditModule, CurrencyCode, CurrencyModule, CurrentUserFragment, CustomerOrdersWithMoneyView, CustomerPaymentTermsFragment, CustomerReturnFragment, CustomerReturnListOptions, CustomerSubscriptionFragment, DeliveryAdvice, DeliveryOption, DeliverySelectionSource, DeliveryTermsStatus, DeliveryTimeFrame, DepositPaymentIntentInput, DisplayPrice, DropOffPoint, EndpointDeprecationNotice, FacetFragment, FacetValueFilterInput, FacetValueFragment, FavoriteListOptions, FormDefinition, FormFieldTypeRegistry, FormListOptions, FormSubmissionResult, HeadKey, LanguageCode, LoginResult, MagicLinkPortal, MediaModule, Menu, MenuItem, MergedSelection, MethodDeprecationNotice, MolliePaymentIntentInput, MolliePaymentIntentResult, MolliePaymentMethodsInput, MyPaymentMandateFragment, MyparcelDeliveryOptionsInput, MyparcelDropOffPointInput, NativeAuthInput, NavigationModule, OrderDeliveryTermsFragment, OrderFragment, OrderFulfillmentParcelsFragment, OrderFulfillmentsFragment, OrderListOptions, OrderMoneyBasis, OrderMoneyViewFragment, OrderPaymentIntent, OrderPaymentTermsFragment, OrderReturnReasonCode, OrderReturnSettlementMethod, OrderReturnState, OrderScope, OrderSummaryFragment, OrderValidationError, OrderValidationResult, OrderWritableCustomFieldsFragment, PaginatedList, ParkedOrder, ParkedOrderFragment, ParkedOrderPaymentIntentInput, ParkedOrderPaymentResult, ParkedOrderPosition, PayDepositInput, PaymentInput, PaymentTermsClassification, PaymentTermsStatus, PayParkedOrderInput, PlacementRejection, PlacementRejectionCode, PlacementRejectionFragment, PlacementRejectionLine, PresetName, PriceDisplay, PriceTierFragment, PricingModule, Product, ProductAvailabilityFragment, ProductAvailabilityState, ProductCardFragment, ProductFilterParameter, ProductFragment, ProductListOptions, ProductListPage, ProductMetadataFragment, ProductPropertyGroupValuesFragment, ProductPropertyRecord, ProductReviewFragment, ProductReviewListOptions, ProductSummaryFragment, ProductVariantFragment, PropertyGroupFragment, PublicAssetDto, PublicAssetPresetsDto, PublicAssetPresetUrlsDto, PublicAssetTranslationDto, PublicBreadcrumbDto, PublicCapabilitiesDto, PublicCapabilityManifestDto, PublicCapabilityReadinessDto, PublicChannelDto, PublicCollectionDetailDto, PublicCollectionDto, PublicCollectionFieldDto, PublicCollectionItemDetailDto, PublicCollectionItemDto, PublicCollectionItemSearchResultDto, PublicCollectionPageValuesDto, PublicContentStringDto, PublicContentStringListResponseDto, PublicContentStringValueDto, PublicFormDto, PublicFormFieldConstraintDto, PublicFormFieldDto, PublicFormFieldTypeDto, PublicFormListResponseDto, PublicFormSlugRuleDto, PublicFormSlugRulesDto, PublicFormTranslationDto, PublicItemSummaryDto, PublicItemWithFieldsDto, PublicMenuDetailDto, PublicMenuSummaryDto, PublicPaginationTotalDto, PublicPaymentMethodFragment, PublicResolvedCollectionDto, PublicResolvedContentDto, PublicResolvedFieldDto, PublicResolvedItemDto, PublicResolvedSubFieldDto, PublicRouteEntryDto, PublicRoutesMetadataDto, PublicRoutesResponseDto, PublicSeoMetadataDto, PublicShippingMethodFragment, PublicSitemapEntryDto, PublicSitemapSeoDto, PublicVendureAssetDescriptionDto, Quote, QuoteLine, QuoteLineDiscountType, QuoteLineRequestInput, QuoteList, QuoteListOptions, QuoteStatus, RecentReviewsOptions, RecommendedProductGroupFragment, RegisterCustomerInput, RequestMagicLinkOptions, RequestOptions, RequestReturnInput, ResolvedRoute, ResolvedTaxDisplay, ResponsiveImageData, RetryConfig, ReturnableLineForOrder, ReturnableLinesForOrder, ReturnRequestLineInput, ReviewSortKey, ReviewStatus, SavedListFragment, SearchInput, SearchResultFragment, SearchResultItemFragment, SetupPaymentMandateInput, ShipmentTrackingHistoryEntry, ShipmentTrackingInfo, StockNotificationSubscriptionResult, StoreContext, StorefrontClient, StorefrontClientConfig, StorefrontDeprecationNotice, StoreRename, StripePaymentIntentResult, SubscriptionFirstChargeTiming, SubscriptionLifecycleAction, SubscriptionLifecycleCommand, SubscriptionPaymentActionInput, SubscriptionPlanPublicFragment, SubscriptionPurchaseInput, SubscriptionPurchaseResultFragment, TaxDisplayB2bMode, TaxDisplayDefault, TaxDisplayInputs, TaxDisplayMode, TaxDisplayPolicy, TierTableEntry, UpdateAddressInput, UpdateCustomerInput, UpdateOrderCustomFieldsInput, UpdateProductReviewInput, VariantLocationAvailabilityFragment, VariantPriceData, VatValidationResultFragment, } from './types.js';
32
36
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -14,7 +14,9 @@
14
14
  export { PlatformError } from '@sixtyninecommerce/core';
15
15
  export { CATALOG_TAG, cacheTagsForRoute, collectionCacheTag, menuCacheTag, PRODUCT_FEED_TAG, productCacheTag, SEO_ARTIFACT_TAG, storeCacheTag, } from './cache-tags.js';
16
16
  export { createStorefrontClient } from './client.js';
17
+ export { ORDER_MONEY_BASES, } from './commerce/money-view.js';
17
18
  export { readParcelPricing } from './commerce/parcel-pricing.js';
19
+ export { RECEIPT_CLAIM_NOT_FOUND, RECEIPT_CLAIM_PATH, receiptClaimTokenFrom, } from './commerce/receipt-claim.js';
18
20
  export { DEFAULT_CMS_URL, DEFAULT_PLUGINS_URL, DEFAULT_VENDURE_URL, ORDER_SCOPE_HEADER, RESERVED_STOREFRONT_PATHS, SHOP_API_PATH, } from './constants.js';
19
21
  export { isAssetReference, resolveContentAssetUrls, resolveContentFieldValues, } from './content/asset-urls.js';
20
22
  export { buildFilteredProductsSearch, } from './content/filtered-products.js';
@@ -22,6 +24,7 @@ export { FORM_FIELD_TYPES, FORM_SLUG_RULES } from './content/form-field-types.js
22
24
  export { MutationError, StorefrontError } from './errors.js';
23
25
  export { isMultiStoreClient, storeFromHostMap, storeFromPathPrefix, } from './multi-store.js';
24
26
  export { orderScopeMatches } from './order-scope.js';
27
+ export { orderMoneyRows, } from './pricing/order-money-rows.js';
25
28
  export { createRedirectStore, normalizeLookupPath, REDIRECT_STATUS_CODES, } from './redirects/index.js';
26
29
  export { buildUrl, DEFAULT_PRODUCT_PATH_SEGMENT, isSitemapChildFile, isUserFacingRoot, normalizeProductPathSegment, openGraphAvailability, parseCmsItemMetadata, parseCollectionMetadata, parseProductMetadata, pickCanonicalRootIndex, readUrlStrategy, robotsFromFlags, SEO_ARTIFACTS, schemaOrgAvailability, } from './seo/index.js';
27
30
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AACH,OAAO,EAAoB,aAAa,EAAuB,MAAM,yBAAyB,CAAC;AAC/F,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAsB,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAQrF,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EAEzB,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,2BAA2B,GAG5B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EACL,kBAAkB,EAQlB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GAOtB,MAAM,sBAAsB,CAAC;AAqD9B,OAAO,EACL,QAAQ,EACR,4BAA4B,EAC5B,kBAAkB,EAClB,gBAAgB,EAChB,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,aAAa,EACb,qBAAqB,GACtB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AACH,OAAO,EAAoB,aAAa,EAAuB,MAAM,yBAAyB,CAAC;AAC/F,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EACL,iBAAiB,GAElB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAsB,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAQrF,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EAEzB,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,2BAA2B,GAG5B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EACL,kBAAkB,EAQlB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAIL,cAAc,GACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GAOtB,MAAM,sBAAsB,CAAC;AAqD9B,OAAO,EACL,QAAQ,EACR,4BAA4B,EAC5B,kBAAkB,EAClB,gBAAgB,EAChB,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,aAAa,EACb,qBAAqB,GACtB,MAAM,gBAAgB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { HttpClient } from '../core/http.js';
2
2
  import type { PricingModule, StoreContext } from '../types.js';
3
3
  export { formatPrice, formatPriceRange } from './format.js';
4
+ export { type OrderMoneyDisplay, type OrderMoneyDisplayRow, type OrderMoneyRowsOptions, orderMoneyRows, } from './order-money-rows.js';
4
5
  export { ACTIVE_TAX_DISPLAY_MODE, DEFAULT_TAX_DISPLAY_POLICY, identityStamp, parseTaxDisplayPolicy, parseTaxExclusiveCountries, resolveTaxDisplayMode, taxDisplayModeFromEnum, } from './tax-display.js';
5
6
  export { computeTierTable, getTierForQuantity } from './tiers.js';
6
7
  export { backorderedQuantityForCart, canAddToCart, isBackorderOnly, isComingSoon, isPreorderOnly, maxOrderableQuantity, type OrderableStockInput, validateOrderMinimums, } from './validation.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pricing/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAEV,aAAa,EACb,YAAY,EAGb,MAAM,aAAa,CAAC;AAoBrB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EACL,0BAA0B,EAC1B,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,aAAa,CA+GvF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pricing/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAEV,aAAa,EACb,YAAY,EAGb,MAAM,aAAa,CAAC;AAoBrB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,cAAc,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EACL,0BAA0B,EAC1B,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,aAAa,CA+GvF"}
@@ -3,6 +3,7 @@ import { ACTIVE_TAX_DISPLAY_MODE, identityStamp, parseTaxDisplayPolicy, resolveT
3
3
  import { computeTierTable, getTierForQuantity } from './tiers.js';
4
4
  import { backorderedQuantityForCart, canAddToCart, isBackorderOnly, isComingSoon, isPreorderOnly, maxOrderableQuantity, validateOrderMinimums, } from './validation.js';
5
5
  export { formatPrice, formatPriceRange } from './format.js';
6
+ export { orderMoneyRows, } from './order-money-rows.js';
6
7
  export { ACTIVE_TAX_DISPLAY_MODE, DEFAULT_TAX_DISPLAY_POLICY, identityStamp, parseTaxDisplayPolicy, parseTaxExclusiveCountries, resolveTaxDisplayMode, taxDisplayModeFromEnum, } from './tax-display.js';
7
8
  export { computeTierTable, getTierForQuantity } from './tiers.js';
8
9
  export { backorderedQuantityForCart, canAddToCart, isBackorderOnly, isComingSoon, isPreorderOnly, maxOrderableQuantity, validateOrderMinimums, } from './validation.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pricing/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,uBAAuB,EACvB,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EACL,0BAA0B,EAC1B,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EACL,0BAA0B,EAC1B,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,cAAc,EACd,oBAAoB,EAEpB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAiB,EAAE,IAAiB;IACtE,8EAA8E;IAC9E,MAAM,WAAW,GAAG,GAAmB,EAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEnF,0EAA0E;IAC1E,MAAM,UAAU,GAAG,GAA0B,EAAE;QAC7C,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC;QAC9B,OAAO,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,CAAC,CAAC;IAEF,OAAO;QACL,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;QAEtC,KAAK,CAAC,iBAAiB,CAAC,OAA+B;YACrD,IAAI,OAAO,EAAE,OAAO,KAAK,IAAI,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;gBAC5B,IAAI,MAAM,KAAK,IAAI;oBAAE,OAAO,MAAM,CAAC;YACrC,CAAC;YACD,IAAI,CAAC,IAAI;gBAAE,OAAO,WAAW,EAAE,CAAC;YAEhC,IAAI,IAAI,GAA0B,IAAI,CAAC;YACvC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAA4B,uBAAuB,CAAC,CAAC;gBACpF,IAAI,GAAG,sBAAsB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;YAC5D,CAAC;YAAC,MAAM,CAAC;gBACP,kEAAkE;gBAClE,qDAAqD;gBACrD,IAAI,GAAG,IAAI,CAAC;YACd,CAAC;YACD,IAAI,IAAI,KAAK,IAAI;gBAAE,OAAO,WAAW,EAAE,CAAC;YAExC,wEAAwE;YACxE,gEAAgE;YAChE,GAAG,CAAC,UAAU,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,qBAAqB;YACnB,OAAO,UAAU,EAAE,IAAI,WAAW,EAAE,CAAC;QACvC,CAAC;QAED,qBAAqB;QACrB,qBAAqB;QAErB,WAAW,CAAC,MAAM,EAAE,YAAa,EAAE,MAAO;YACxC,OAAO,WAAW,CAAC,MAAM,EAAE,YAAY,IAAI,GAAG,CAAC,YAAY,EAAE,MAAM,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3F,CAAC;QAED,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAa,EAAE,MAAO;YAC/C,OAAO,gBAAgB,CACrB,GAAG,EACH,GAAG,EACH,YAAY,IAAI,GAAG,CAAC,YAAY,EAChC,MAAM,IAAI,GAAG,CAAC,YAAY,CAC3B,CAAC;QACJ,CAAC;QAED,kBAAkB;QAClB,gBAAgB;QAEhB,kBAAkB,CAAC,OAAyB,EAAE,IAAqB;YACjE,MAAM,OAAO,GAAG,CAAC,IAAI,IAAI,UAAU,EAAE,IAAI,WAAW,EAAE,CAAC,KAAK,OAAO,CAAC;YACpE,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;YAC9D,MAAM,YAAY,GAAG,OAAO;gBAC1B,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,IAAI,IAAI,CAAC;gBACtC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;YAClC,OAAO;gBACL,MAAM;gBACN,YAAY;gBACZ,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,OAAO;gBACP,WAAW,EAAE,YAAY,IAAI,IAAI,IAAI,YAAY,GAAG,MAAM;aAC3D,CAAC;QACJ,CAAC;QAED,eAAe,CAAC,OAAyB;YACvC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,IAAI,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;YAEvF,IAAI,kBAAkB,GAAkB,IAAI,CAAC;YAC7C,IAAI,WAAW,IAAI,OAAO,CAAC,WAAW,IAAI,IAAI,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC1E,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAC7B,CAAC,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,GAAG,CACpE,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,MAAM;gBAC3C,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC3C,CAAC,CAAC,IAAI,CAAC;YAET,OAAO;gBACL,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;gBACxC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,IAAI;gBACtD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;gBAC5C,OAAO,EAAE,OAAO,CAAC,cAAc,EAAE,KAAK,IAAI,IAAI;gBAC9C,WAAW;gBACX,kBAAkB;gBAClB,UAAU;aACX,CAAC;QACJ,CAAC;QAED,qBAAqB;QACrB,oBAAoB;QACpB,eAAe;QACf,YAAY;QACZ,cAAc;QACd,YAAY;QACZ,0BAA0B;KAC3B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pricing/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * An order's money view (`commerce.getOrderMoneyView`, `Order.moneyView`) as the rows a
3
+ * storefront prints, in the order the dashboard's order page prints them (USER O12: what a
4
+ * shopper sees in the cart, at checkout, on the order page and in the account matches the
5
+ * emails and the invoice to the cent).
6
+ *
7
+ * It only READS the view: no figure is added, converted or rounded here, so the rows add up to
8
+ * the totals exactly as the engine built them. Never re-derive a row from the order's other
9
+ * fields (`linePriceWithTax`, `discounts`, `taxSummary`): converted on their own they miss the
10
+ * order's totals by a cent on about half the discounted carts.
11
+ */
12
+ import type { OrderMoneyViewFragment } from '../generated/shop.js';
13
+ /**
14
+ * One printed row. `kind` is stable (translate by it); `label` is an English default;
15
+ * `description` is the engine's own text where the row has one (a promotion's name, a fee, a
16
+ * shipping method). Money is in minor units of the view's `currencyCode`; a discount is negative.
17
+ */
18
+ export interface OrderMoneyDisplayRow {
19
+ kind: 'discount' | 'surcharge' | 'subtotal' | 'shipping' | 'shippingDiscount' | 'tax' | 'rounding' | 'total' | 'paid' | 'giftCard' | 'storeCredit' | 'credited' | 'stillToPay';
20
+ /** Unique within the rows: the engine's key for a promotion, fee or shipping line. */
21
+ key: string;
22
+ label: string;
23
+ description: string | null;
24
+ amount: number;
25
+ /** Set on `tax` rows only. */
26
+ taxRate: number | null;
27
+ /**
28
+ * `tax` rows of an incl.-VAT view: the VAT is INSIDE the total, printed under it, never added
29
+ * ("Incl. VAT 21%"). False on every other row.
30
+ */
31
+ included: boolean;
32
+ }
33
+ export interface OrderMoneyDisplay {
34
+ /** `GROSS` (incl. VAT) or `NET` (excl. VAT): say which beside the subtotal. */
35
+ basis: 'GROSS' | 'NET';
36
+ currencyCode: string;
37
+ /**
38
+ * Per order line: print `amount` as the line total. Print a unit price only when `unitAmount`
39
+ * is not null (the line was priced in this basis, so quantity × unit = amount); in the other
40
+ * basis print the line total alone (USER PD7).
41
+ */
42
+ lines: OrderMoneyViewFragment['lines'];
43
+ /** Promotions, fees, subtotal, shipping, VAT, a rounding and the total: a cart prints these. */
44
+ rows: OrderMoneyDisplayRow[];
45
+ /**
46
+ * What was paid and is still to pay, printed under the total of a placed order (USER PD12): Paid,
47
+ * Gift card, Store credit, Credited, Still to pay. A zero row is not in it.
48
+ */
49
+ payments: OrderMoneyDisplayRow[];
50
+ /**
51
+ * Why `payments` has no "Still to pay" row although the view has an amount still to pay; null when
52
+ * the row is printed or nothing is still to pay. See {@link OrderMoneyRowsOptions.billedOnAccount}.
53
+ */
54
+ stillToPayOmitted: 'BILLED_ON_ACCOUNT' | 'ACCOUNT_BILLING_UNKNOWN' | null;
55
+ /**
56
+ * False only when the order's stored totals disagree with its own rows (corrupt data): print
57
+ * the rows as served and report it to the merchant; never "fix" them on the page.
58
+ */
59
+ reconciles: boolean;
60
+ }
61
+ export interface OrderMoneyRowsOptions {
62
+ /**
63
+ * Whether a B2B account invoice (net terms, a statement) bills this order. Until the engine
64
+ * reads the account ledger, the view's `balance.stillToPay` ignores money paid or credited on
65
+ * such an invoice, so it would show an order paid on its statement as still to pay (ruling
66
+ * G188). The "Still to pay" row is therefore printed only when you pass `false`: a shop that
67
+ * never bills orders on a B2B account (a consumer shop, or an order paid at checkout) passes
68
+ * `false`. Left out, the row is omitted and `stillToPayOmitted` says why.
69
+ */
70
+ billedOnAccount?: boolean;
71
+ }
72
+ /**
73
+ * The rows to print for an order's money view, in order: each promotion on the goods (its own
74
+ * row, USER PD2), fees, the subtotal, each shipping line with its promotions under it, VAT one
75
+ * row per rate (PD4; above the total on an excl.-VAT view, under it as "Incl. VAT" on an incl.
76
+ * one), a staff rounding just above the total (PD6) and the total; then, apart in `payments`,
77
+ * what was paid and is still to pay (PD12). A zero payment row, and a VAT rate that taxed
78
+ * nothing, are not printed.
79
+ *
80
+ * Every amount is the view's own: on a `NET` view subtotal + shipping + VAT + rounding = total;
81
+ * on a `GROSS` view subtotal + shipping + rounding = total; Σ lines + promotions + fees =
82
+ * subtotal (USER PD3).
83
+ *
84
+ * @example
85
+ * const view = await client.commerce.getOrderMoneyView({ code }, { basis: 'CUSTOMER' });
86
+ * if (view) {
87
+ * const { rows, payments } = orderMoneyRows(view, { billedOnAccount: false });
88
+ * [...rows, ...payments].map((row) => `${row.label} ${formatPrice(row.amount, view.currencyCode)}`);
89
+ * }
90
+ */
91
+ export declare function orderMoneyRows(view: OrderMoneyViewFragment, options?: OrderMoneyRowsOptions): OrderMoneyDisplay;
92
+ //# sourceMappingURL=order-money-rows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-money-rows.d.ts","sourceRoot":"","sources":["../../src/pricing/order-money-rows.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAGnE;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EACA,UAAU,GACV,WAAW,GACX,UAAU,GACV,UAAU,GACV,kBAAkB,GAClB,KAAK,GACL,UAAU,GACV,OAAO,GACP,MAAM,GACN,UAAU,GACV,aAAa,GACb,UAAU,GACV,YAAY,CAAC;IACjB,sFAAsF;IACtF,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAGD,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,KAAK,EAAE,OAAO,GAAG,KAAK,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,KAAK,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACvC,gGAAgG;IAChG,IAAI,EAAE,oBAAoB,EAAE,CAAC;IAC7B;;;OAGG;IACH,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC;;;OAGG;IACH,iBAAiB,EAAE,mBAAmB,GAAG,yBAAyB,GAAG,IAAI,CAAC;IAC1E;;;OAGG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAGD,MAAM,WAAW,qBAAqB;IACpC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AASD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,sBAAsB,EAC5B,OAAO,GAAE,qBAA0B,GAClC,iBAAiB,CAgGnB"}
@@ -0,0 +1,88 @@
1
+ const BALANCE_ROWS = [
2
+ ['paid', 'Paid'],
3
+ ['giftCard', 'Gift card'],
4
+ ['storeCredit', 'Store credit'],
5
+ ['credited', 'Credited'],
6
+ ];
7
+ /**
8
+ * The rows to print for an order's money view, in order: each promotion on the goods (its own
9
+ * row, USER PD2), fees, the subtotal, each shipping line with its promotions under it, VAT one
10
+ * row per rate (PD4; above the total on an excl.-VAT view, under it as "Incl. VAT" on an incl.
11
+ * one), a staff rounding just above the total (PD6) and the total; then, apart in `payments`,
12
+ * what was paid and is still to pay (PD12). A zero payment row, and a VAT rate that taxed
13
+ * nothing, are not printed.
14
+ *
15
+ * Every amount is the view's own: on a `NET` view subtotal + shipping + VAT + rounding = total;
16
+ * on a `GROSS` view subtotal + shipping + rounding = total; Σ lines + promotions + fees =
17
+ * subtotal (USER PD3).
18
+ *
19
+ * @example
20
+ * const view = await client.commerce.getOrderMoneyView({ code }, { basis: 'CUSTOMER' });
21
+ * if (view) {
22
+ * const { rows, payments } = orderMoneyRows(view, { billedOnAccount: false });
23
+ * [...rows, ...payments].map((row) => `${row.label} ${formatPrice(row.amount, view.currencyCode)}`);
24
+ * }
25
+ */
26
+ export function orderMoneyRows(view, options = {}) {
27
+ // The engine answers the basis it USED; anything else is not a view this helper can label.
28
+ if (view.basis !== 'GROSS' && view.basis !== 'NET') {
29
+ throw new TypeError(`An order money view is GROSS or NET, not ${String(view.basis)}.`);
30
+ }
31
+ const basis = view.basis;
32
+ const included = view.taxIncluded;
33
+ const row = (kind, key, label, amount, extra = {}) => ({
34
+ kind,
35
+ key,
36
+ label,
37
+ amount,
38
+ description: extra.description ?? null,
39
+ taxRate: extra.taxRate ?? null,
40
+ included: extra.included ?? false,
41
+ });
42
+ const described = (kind, prefix, source) => source.map((r) => row(kind, `${prefix}:${r.key}`, r.description, r.amount, { description: r.description }));
43
+ const taxes = view.taxes
44
+ .filter((tax) => tax.base !== 0 || tax.amount !== 0)
45
+ .map((tax) => row('tax', `tax:${tax.taxRate}`, `${included ? 'Incl. VAT' : 'VAT'} ${tax.taxRate}%`, tax.amount, {
46
+ taxRate: tax.taxRate,
47
+ included,
48
+ }));
49
+ const rows = [
50
+ ...described('discount', 'discount', view.goodsAdjustments),
51
+ ...described('surcharge', 'surcharge', view.surcharges),
52
+ row('subtotal', 'subtotal', `Subtotal (${basis === 'NET' ? 'excl.' : 'incl.'} VAT)`, view.subtotal),
53
+ // No shipping line yet (a cart before a method is chosen): the order's own shipping total.
54
+ ...(view.shipping.length === 0
55
+ ? [row('shipping', 'shipping', 'Shipping', view.shippingTotal)]
56
+ : view.shipping.map((r) => row('shipping', `shipping:${r.key}`, r.description ? `Shipping (${r.description})` : 'Shipping', r.amount, { description: r.description || null }))),
57
+ ...described('shippingDiscount', 'shipping-discount', view.shippingAdjustments),
58
+ ...(included ? [] : taxes),
59
+ ...(view.rounding === null ? [] : [row('rounding', 'rounding', 'Rounding', view.rounding)]),
60
+ row('total', 'total', 'Total', view.total),
61
+ ...(included ? taxes : []),
62
+ ];
63
+ const payments = [];
64
+ for (const [field, label] of BALANCE_ROWS) {
65
+ if (view.balance[field] > 0)
66
+ payments.push(row(field, field, label, view.balance[field]));
67
+ }
68
+ let stillToPayOmitted = null;
69
+ if (view.balance.stillToPay > 0) {
70
+ if (options.billedOnAccount === false) {
71
+ payments.push(row('stillToPay', 'stillToPay', 'Still to pay', view.balance.stillToPay));
72
+ }
73
+ else {
74
+ stillToPayOmitted =
75
+ options.billedOnAccount === true ? 'BILLED_ON_ACCOUNT' : 'ACCOUNT_BILLING_UNKNOWN';
76
+ }
77
+ }
78
+ return {
79
+ basis,
80
+ currencyCode: view.currencyCode,
81
+ lines: view.lines,
82
+ rows,
83
+ payments,
84
+ stillToPayOmitted,
85
+ reconciles: view.reconciles,
86
+ };
87
+ }
88
+ //# sourceMappingURL=order-money-rows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-money-rows.js","sourceRoot":"","sources":["../../src/pricing/order-money-rows.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,14 @@ import type { OrderableStockInput, OrderValidationResult } from '../types.js';
21
21
  * (`customerIsExempt`), as the engine skips it then;
22
22
  * - the item count (`minOrderQuantity`) against `totalQuantity`.
23
23
  *
24
+ * The gross and net minimums are judged BEFORE a price-list order-rule
25
+ * discount ("Order discount"), as the engine judges them, so reaching that
26
+ * discount never shows a shortfall checkout would accept. The order's
27
+ * `discounts` and `promotions` (with their `conditions`, as `OrderFragment`
28
+ * carries them) say which discount that is; an order passed without them is
29
+ * compared as it is. The delivery minimum keeps it taken off, as the engine
30
+ * does.
31
+ *
24
32
  * The engine leaves out of its totals the lines of collections the store
25
33
  * exempts from minimums, and any surcharge; the client cannot tell those
26
34
  * apart, so on such a cart the hint and checkout can disagree. The server
@@ -61,6 +69,23 @@ export declare function validateOrderMinimums(order: {
61
69
  */
62
70
  subTotal?: number;
63
71
  total?: number;
72
+ /**
73
+ * The order's discounts (`Order.discounts`). With `promotions`, the
74
+ * price-list order-rule discount is added back before the gross and net
75
+ * minimums are compared.
76
+ */
77
+ discounts?: ReadonlyArray<{
78
+ adjustmentSource: string;
79
+ amount: number;
80
+ amountWithTax: number;
81
+ }>;
82
+ /** The order's promotions with their condition codes (`OrderFragment.promotions`). */
83
+ promotions?: ReadonlyArray<{
84
+ id: string;
85
+ conditions?: ReadonlyArray<{
86
+ code: string;
87
+ }> | null;
88
+ }>;
64
89
  }, constraints: {
65
90
  /** Minimum vs the GROSS line total, minor units. As returned by `getOrderConstraints()`. */
66
91
  minOrderAmountGross?: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/pricing/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAwB,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGpG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE;IACL;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EACD,WAAW,EAAE;IACX,4FAA4F;IAC5F,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAClC,kGAAkG;IAClG,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,GACA,qBAAqB,CA8EvB;AAED,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,GAAG,IAAI,CAIhF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAErE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAElE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,GAAG,IAAI,CAMjF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAEpE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAElE;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,EAC9C,QAAQ,EAAE,MAAM,GACf,MAAM,GAAG,IAAI,CAIf"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/pricing/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAwB,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGpG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE;IACL;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,SAAS,CAAC,EAAE,aAAa,CAAC;QAAE,gBAAgB,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/F,sFAAsF;IACtF,UAAU,CAAC,EAAE,aAAa,CAAC;QACzB,EAAE,EAAE,MAAM,CAAC;QACX,UAAU,CAAC,EAAE,aAAa,CAAC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,GAAG,IAAI,CAAC;KACrD,CAAC,CAAC;CACJ,EACD,WAAW,EAAE;IACX,4FAA4F;IAC5F,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAClC,kGAAkG;IAClG,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,GACA,qBAAqB,CAgFvB;AAgCD,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,GAAG,IAAI,CAIhF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAErE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAElE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,GAAG,IAAI,CAMjF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAEpE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAElE;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,EAC9C,QAAQ,EAAE,MAAM,GACf,MAAM,GAAG,IAAI,CAIf"}
@@ -21,6 +21,14 @@ import { formatPrice } from './format.js';
21
21
  * (`customerIsExempt`), as the engine skips it then;
22
22
  * - the item count (`minOrderQuantity`) against `totalQuantity`.
23
23
  *
24
+ * The gross and net minimums are judged BEFORE a price-list order-rule
25
+ * discount ("Order discount"), as the engine judges them, so reaching that
26
+ * discount never shows a shortfall checkout would accept. The order's
27
+ * `discounts` and `promotions` (with their `conditions`, as `OrderFragment`
28
+ * carries them) say which discount that is; an order passed without them is
29
+ * compared as it is. The delivery minimum keeps it taken off, as the engine
30
+ * does.
31
+ *
24
32
  * The engine leaves out of its totals the lines of collections the store
25
33
  * exempts from minimums, and any surcharge; the client cannot tell those
26
34
  * apart, so on such a cart the hint and checkout can disagree. The server
@@ -48,7 +56,8 @@ export function validateOrderMinimums(order, constraints) {
48
56
  const amountCurrency = constraints.currencyCode ?? order.currencyCode;
49
57
  const amountsComparable = amountCurrency === order.currencyCode;
50
58
  const minAmount = constraints.minOrderAmountGross ?? constraints.minOrderAmount;
51
- const grossTotal = order.subTotalWithTax ?? order.totalWithTax;
59
+ const orderRule = orderRuleDiscount(order);
60
+ const grossTotal = (order.subTotalWithTax ?? order.totalWithTax) + orderRule.gross;
52
61
  if (amountsComparable && minAmount != null && minAmount > 0 && grossTotal < minAmount) {
53
62
  errors.push({
54
63
  type: 'min_amount',
@@ -62,18 +71,19 @@ export function validateOrderMinimums(order, constraints) {
62
71
  // client does not have. Both can fail on the same cart.
63
72
  const minAmountNet = constraints.minOrderAmountNet;
64
73
  const netTotal = order.subTotal ?? order.total;
74
+ const netBeforeOrderRule = netTotal == null ? null : netTotal + orderRule.net;
65
75
  if (amountsComparable &&
66
76
  minAmountNet != null &&
67
77
  minAmountNet > 0 &&
68
- netTotal != null &&
69
- netTotal < minAmountNet) {
78
+ netBeforeOrderRule != null &&
79
+ netBeforeOrderRule < minAmountNet) {
70
80
  errors.push({
71
81
  type: 'min_amount',
72
82
  // Says "excl. tax" so the figure is not read against the gross total the
73
83
  // buyer sees on screen, where it would look wrong.
74
84
  message: `Minimum order amount is ${formatPrice(minAmountNet, amountCurrency)} excl. tax`,
75
85
  required: minAmountNet,
76
- actual: netTotal,
86
+ actual: netBeforeOrderRule,
77
87
  });
78
88
  }
79
89
  const minDeliveryNet = constraints.fulfillmentMinOrderNet;
@@ -107,6 +117,29 @@ export function validateOrderMinimums(order, constraints) {
107
117
  }
108
118
  return { valid: errors.length === 0, errors };
109
119
  }
120
+ /** The condition every price-list order-rule promotion carries (the engine's "Order discount"). */
121
+ const ORDER_RULE_CONDITION = 'price_list_order_rules';
122
+ /**
123
+ * What the price-list order-rule discount took off the order, positive, net and gross: the
124
+ * discounts whose source is a promotion carrying the order-rule condition. Zero when the order
125
+ * does not say (no `discounts`, or promotions without their conditions).
126
+ */
127
+ function orderRuleDiscount(order) {
128
+ const sources = new Set((order.promotions ?? [])
129
+ .filter((promotion) => (promotion.conditions ?? []).some((condition) => condition.code === ORDER_RULE_CONDITION))
130
+ .map((promotion) => `PROMOTION:${promotion.id}`));
131
+ let net = 0;
132
+ let gross = 0;
133
+ if (sources.size === 0)
134
+ return { net, gross };
135
+ for (const discount of order.discounts ?? []) {
136
+ if (!sources.has(discount.adjustmentSource))
137
+ continue;
138
+ net -= discount.amount;
139
+ gross -= discount.amountWithTax;
140
+ }
141
+ return { net, gross };
142
+ }
110
143
  /**
111
144
  * How many units of a variant the current shopper may put in the cart:
112
145
  * `max(0, saleable) + backorderAllowance` — or `0` when the merchant is not
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/pricing/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/pricing/validation.ts"],"names":[],"mappings":"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"}