fontdue-js 2.22.0 → 2.22.1

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 (370) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/components/ConfigContext.d.ts +3 -0
  3. package/dist/components/ConfigContext.js +2 -1
  4. package/dist/components/FontdueProvider/FontdueProviderClientComponent.js +2 -0
  5. package/dist/corsError.d.ts +1 -0
  6. package/dist/corsError.js +16 -9
  7. package/dist/global-shim.d.ts +1 -0
  8. package/dist/global-shim.js +8 -0
  9. package/dist/relay/environment.js +51 -42
  10. package/dist-cjs/__generated__/AddToCartBannerQuery.graphql.js +194 -0
  11. package/dist-cjs/__generated__/AddToCartBanner_item.graphql.js +107 -0
  12. package/dist-cjs/__generated__/AddToCartBanner_order.graphql.js +131 -0
  13. package/dist-cjs/__generated__/AddressFieldsRefetchQuery.graphql.js +170 -0
  14. package/dist-cjs/__generated__/AddressFields_viewer.graphql.js +125 -0
  15. package/dist-cjs/__generated__/BuyButtonIDQuery.graphql.js +121 -0
  16. package/dist-cjs/__generated__/BuyButtonSlugQuery.graphql.js +146 -0
  17. package/dist-cjs/__generated__/BuyButton_collection.graphql.js +56 -0
  18. package/dist-cjs/__generated__/CartButtonQuery.graphql.js +139 -0
  19. package/dist-cjs/__generated__/CartButton_order.graphql.js +71 -0
  20. package/dist-cjs/__generated__/CartItemAdditionalLicenses_licenses.graphql.js +42 -0
  21. package/dist-cjs/__generated__/CartItemAdditionalLicenses_orderItem.graphql.js +52 -0
  22. package/dist-cjs/__generated__/CartItemLicense_selection.graphql.js +80 -0
  23. package/dist-cjs/__generated__/CartItemProduct_product.graphql.js +113 -0
  24. package/dist-cjs/__generated__/CartItemVariable_selection.graphql.js +107 -0
  25. package/dist-cjs/__generated__/CartItemVariable_variable.graphql.js +58 -0
  26. package/dist-cjs/__generated__/CartItem_node.graphql.js +166 -0
  27. package/dist-cjs/__generated__/CartOrderCompleteOrderMutation.graphql.js +783 -0
  28. package/dist-cjs/__generated__/CartOrderRemoveDiscountMutation.graphql.js +760 -0
  29. package/dist-cjs/__generated__/CartOrderUpdateMutation.graphql.js +795 -0
  30. package/dist-cjs/__generated__/CartOrder_UpdateErrors.graphql.js +43 -0
  31. package/dist-cjs/__generated__/CartOrder_order.graphql.js +264 -0
  32. package/dist-cjs/__generated__/CartOrder_viewer.graphql.js +51 -0
  33. package/dist-cjs/__generated__/CartQuery.graphql.js +887 -0
  34. package/dist-cjs/__generated__/CartStateRemoveDiscountMutation.graphql.js +422 -0
  35. package/dist-cjs/__generated__/CartStateUpdateMutation.graphql.js +790 -0
  36. package/dist-cjs/__generated__/CartState_order.graphql.js +122 -0
  37. package/dist-cjs/__generated__/CartTotals_order.graphql.js +140 -0
  38. package/dist-cjs/__generated__/CharacterViewerIDQuery.graphql.js +332 -0
  39. package/dist-cjs/__generated__/CharacterViewerSlugQuery.graphql.js +362 -0
  40. package/dist-cjs/__generated__/CharacterViewerStyleRefetchQuery.graphql.js +226 -0
  41. package/dist-cjs/__generated__/CharacterViewer_collection.graphql.js +197 -0
  42. package/dist-cjs/__generated__/CharacterViewer_family.graphql.js +101 -0
  43. package/dist-cjs/__generated__/CharacterViewer_style.graphql.js +161 -0
  44. package/dist-cjs/__generated__/CheckoutUpdateCustomerMutation.graphql.js +770 -0
  45. package/dist-cjs/__generated__/CheckoutUpdateOrderMutation.graphql.js +811 -0
  46. package/dist-cjs/__generated__/Checkout_UpdateOrderErrors.graphql.js +97 -0
  47. package/dist-cjs/__generated__/Checkout_identity.graphql.js +94 -0
  48. package/dist-cjs/__generated__/Checkout_order.graphql.js +144 -0
  49. package/dist-cjs/__generated__/Checkout_viewer.graphql.js +74 -0
  50. package/dist-cjs/__generated__/CollectionAa_Query.graphql.js +192 -0
  51. package/dist-cjs/__generated__/CollectionAa_product.graphql.js +69 -0
  52. package/dist-cjs/__generated__/CouponCodeInputApplyCouponMutation.graphql.js +432 -0
  53. package/dist-cjs/__generated__/CouponText_coupon.graphql.js +73 -0
  54. package/dist-cjs/__generated__/CustomerLoginFormLoginMutation.graphql.js +72 -0
  55. package/dist-cjs/__generated__/CustomerLoginFormQuery.graphql.js +91 -0
  56. package/dist-cjs/__generated__/DownloadRefetchQuery.graphql.js +124 -0
  57. package/dist-cjs/__generated__/Download_order.graphql.js +61 -0
  58. package/dist-cjs/__generated__/FamilyList_node.graphql.js +96 -0
  59. package/dist-cjs/__generated__/Family_node.graphql.js +160 -0
  60. package/dist-cjs/__generated__/FontFamiliesQuery.graphql.js +368 -0
  61. package/dist-cjs/__generated__/FontStyle_fontStyle.graphql.js +32 -0
  62. package/dist-cjs/__generated__/IdentityBox_identity.graphql.js +52 -0
  63. package/dist-cjs/__generated__/License_node.graphql.js +97 -0
  64. package/dist-cjs/__generated__/NewsletterSignupQuery.graphql.js +110 -0
  65. package/dist-cjs/__generated__/NewsletterSignupUpdateCustomerMutation.graphql.js +81 -0
  66. package/dist-cjs/__generated__/NodePasswordFormAccessNodeMutation.graphql.js +72 -0
  67. package/dist-cjs/__generated__/NodePasswordFormIDQuery.graphql.js +93 -0
  68. package/dist-cjs/__generated__/NodePasswordFormSlugQuery.graphql.js +115 -0
  69. package/dist-cjs/__generated__/OrderVariableSelectionReduxRefetchQuery.graphql.js +154 -0
  70. package/dist-cjs/__generated__/OrderVariableSelectionRedux_viewer.graphql.js +75 -0
  71. package/dist-cjs/__generated__/OrderVariableSelection_variables.graphql.js +107 -0
  72. package/dist-cjs/__generated__/PrecartAddToCartMutation.graphql.js +793 -0
  73. package/dist-cjs/__generated__/PrecartClearCartMutation.graphql.js +81 -0
  74. package/dist-cjs/__generated__/PrecartQuery.graphql.js +308 -0
  75. package/dist-cjs/__generated__/Precart_collection.graphql.js +81 -0
  76. package/dist-cjs/__generated__/Precart_license.graphql.js +67 -0
  77. package/dist-cjs/__generated__/Precart_viewer.graphql.js +161 -0
  78. package/dist-cjs/__generated__/PriceBarSectionRefetchQuery.graphql.js +184 -0
  79. package/dist-cjs/__generated__/PriceBarSection_node.graphql.js +121 -0
  80. package/dist-cjs/__generated__/PriceBar_node.graphql.js +60 -0
  81. package/dist-cjs/__generated__/Price_price.graphql.js +40 -0
  82. package/dist-cjs/__generated__/SKUPrice_sku.graphql.js +69 -0
  83. package/dist-cjs/__generated__/SelectButton_sku.graphql.js +54 -0
  84. package/{dist-bundle/chunks/index-o29NNufd.js → dist-cjs/__generated__/ServerConfigProviderQuery.graphql.js} +7 -30
  85. package/dist-cjs/__generated__/ShareCartCreateSnapshotMutation.graphql.js +84 -0
  86. package/dist-cjs/__generated__/SpecimenLinkQuery.graphql.js +120 -0
  87. package/dist-cjs/__generated__/StoreModalBundleButton_bundle.graphql.js +85 -0
  88. package/dist-cjs/__generated__/StoreModalCartQuery.graphql.js +1017 -0
  89. package/dist-cjs/__generated__/StoreModalCheckoutQuery.graphql.js +194 -0
  90. package/dist-cjs/__generated__/StoreModalContainerQuery.graphql.js +228 -0
  91. package/dist-cjs/__generated__/StoreModalDownloadRefetchQuery.graphql.js +102 -0
  92. package/dist-cjs/__generated__/StoreModalDownload_order.graphql.js +40 -0
  93. package/dist-cjs/__generated__/StoreModalFamilyButton_collection.graphql.js +135 -0
  94. package/dist-cjs/__generated__/StoreModalFamily_collection.graphql.js +130 -0
  95. package/dist-cjs/__generated__/StoreModalIndexItem_fontCollection.graphql.js +98 -0
  96. package/dist-cjs/__generated__/StoreModalIndexQuery.graphql.js +263 -0
  97. package/dist-cjs/__generated__/StoreModalOrderVariableSelection_order.graphql.js +98 -0
  98. package/dist-cjs/__generated__/StoreModalOrderVariableSelection_viewer.graphql.js +66 -0
  99. package/dist-cjs/__generated__/StoreModalProductContent_collection.graphql.js +92 -0
  100. package/dist-cjs/__generated__/StoreModalProductLicenseSelection_collection.graphql.js +47 -0
  101. package/dist-cjs/__generated__/StoreModalProductLicense_license.graphql.js +104 -0
  102. package/dist-cjs/__generated__/StoreModalProductQuery.graphql.js +702 -0
  103. package/dist-cjs/__generated__/StoreModalProductRefetchQuery.graphql.js +433 -0
  104. package/dist-cjs/__generated__/StoreModalProductSummaryAddToCartMutation.graphql.js +149 -0
  105. package/dist-cjs/__generated__/StoreModalProductSummaryClearCartMutation.graphql.js +81 -0
  106. package/dist-cjs/__generated__/StoreModalProductSummaryRefetchQuery.graphql.js +281 -0
  107. package/dist-cjs/__generated__/StoreModalProductSummary_viewer.graphql.js +243 -0
  108. package/dist-cjs/__generated__/StoreModalReviewIdentity_identity.graphql.js +52 -0
  109. package/dist-cjs/__generated__/StoreModalStyleButton_fontStyle.graphql.js +113 -0
  110. package/dist-cjs/__generated__/StoreModalUnifiedCheckoutCompleteOrderMutation.graphql.js +302 -0
  111. package/dist-cjs/__generated__/StoreModalUnifiedCheckoutUpdateCustomerMutation.graphql.js +323 -0
  112. package/dist-cjs/__generated__/StoreModalUnifiedCheckoutUpdateOrderMutation.graphql.js +473 -0
  113. package/dist-cjs/__generated__/StoreModalUnifiedCheckout_order.graphql.js +237 -0
  114. package/dist-cjs/__generated__/StoreModalUnifiedCheckout_viewer.graphql.js +117 -0
  115. package/dist-cjs/__generated__/StripeProviderCreateCheckoutSessionMutation.graphql.js +105 -0
  116. package/dist-cjs/__generated__/StripeProvider_viewer.graphql.js +139 -0
  117. package/dist-cjs/__generated__/TestFontsFormUpdateCustomerMutation.graphql.js +770 -0
  118. package/dist-cjs/__generated__/TestFontsForm_Query.graphql.js +126 -0
  119. package/dist-cjs/__generated__/TestModeBannerQuery.graphql.js +87 -0
  120. package/dist-cjs/__generated__/ThemeConfigQuery.graphql.js +87 -0
  121. package/dist-cjs/__generated__/TypeTesterFeaturesButton_fontStyle.graphql.js +32 -0
  122. package/dist-cjs/__generated__/TypeTesterFeatures_fontStyle.graphql.js +36 -0
  123. package/dist-cjs/__generated__/TypeTesterFloatingToolbar_testers.graphql.js +53 -0
  124. package/dist-cjs/__generated__/TypeTesterStandaloneChangedStylesQuery.graphql.js +347 -0
  125. package/dist-cjs/__generated__/TypeTesterStandaloneQuery.graphql.js +450 -0
  126. package/dist-cjs/__generated__/TypeTesterStyleSelectData_fontStyle.graphql.js +106 -0
  127. package/dist-cjs/__generated__/TypeTesterStyleSelectData_fontStyleData.graphql.js +88 -0
  128. package/dist-cjs/__generated__/TypeTesterStyleSelectData_viewer.graphql.js +166 -0
  129. package/dist-cjs/__generated__/TypeTesterToolbar_fontStyle.graphql.js +36 -0
  130. package/dist-cjs/__generated__/TypeTesterVariableAxes_fontStyle.graphql.js +61 -0
  131. package/dist-cjs/__generated__/TypeTester_fontStyle.graphql.js +106 -0
  132. package/dist-cjs/__generated__/TypeTester_viewer.graphql.js +40 -0
  133. package/dist-cjs/__generated__/TypeTestersChangedStylesQuery.graphql.js +347 -0
  134. package/dist-cjs/__generated__/TypeTestersIDQuery.graphql.js +637 -0
  135. package/dist-cjs/__generated__/TypeTestersRefetchQuery.graphql.js +554 -0
  136. package/dist-cjs/__generated__/TypeTestersSlugQuery.graphql.js +644 -0
  137. package/dist-cjs/__generated__/TypeTesters_collection.graphql.js +258 -0
  138. package/dist-cjs/__generated__/TypeTesters_viewer.graphql.js +40 -0
  139. package/dist-cjs/__generated__/VariableTableAmounts_option.graphql.js +34 -0
  140. package/dist-cjs/__generated__/VariableTableAmounts_variable.graphql.js +34 -0
  141. package/dist-cjs/__generated__/productState_Query.graphql.js +184 -0
  142. package/dist-cjs/__generated__/productState_bundle.graphql.js +79 -0
  143. package/dist-cjs/__generated__/productState_collection.graphql.js +90 -0
  144. package/dist-cjs/__generated__/productState_collectionBundle.graphql.js +88 -0
  145. package/dist-cjs/__generated__/productState_node.graphql.js +122 -0
  146. package/dist-cjs/__generated__/productState_sku.graphql.js +51 -0
  147. package/dist-cjs/__generated__/useFeaturesData_fontStyle.graphql.js +64 -0
  148. package/dist-cjs/__generated__/useFontStyle_fontStyle.graphql.js +94 -0
  149. package/dist-cjs/__generated__/useTotalStyles_fontCollection.graphql.js +57 -0
  150. package/dist-cjs/__tests__/collectionBundleSelection.test.js +1630 -0
  151. package/dist-cjs/components/AddToCartBanner/index.js +75 -0
  152. package/dist-cjs/components/BuyButton/index.js +124 -0
  153. package/dist-cjs/components/BuyButton/index.server.js +36 -0
  154. package/dist-cjs/components/BuyingOptions/index.js +23 -0
  155. package/dist-cjs/components/Cart/AddressFields.js +162 -0
  156. package/dist-cjs/components/Cart/CartItem/CartItemAdditionalLicenses.js +33 -0
  157. package/dist-cjs/components/Cart/CartItem/CartItemLicense.js +66 -0
  158. package/dist-cjs/components/Cart/CartItem/CartItemProduct.js +36 -0
  159. package/dist-cjs/components/Cart/CartItem/CartItemVariable.js +66 -0
  160. package/dist-cjs/components/Cart/CartItem/VariableTextInput.js +79 -0
  161. package/dist-cjs/components/Cart/CartItem/index.js +95 -0
  162. package/dist-cjs/components/Cart/CartOrder.js +314 -0
  163. package/dist-cjs/components/Cart/CartState.js +93 -0
  164. package/dist-cjs/components/Cart/CartTotals.js +97 -0
  165. package/dist-cjs/components/Cart/Checkout.js +473 -0
  166. package/dist-cjs/components/Cart/CheckoutSteps.js +15 -0
  167. package/dist-cjs/components/Cart/CouponCodeInput.js +90 -0
  168. package/dist-cjs/components/Cart/CustomerFields.js +80 -0
  169. package/dist-cjs/components/Cart/Download.js +62 -0
  170. package/dist-cjs/components/Cart/EmptyCart.js +42 -0
  171. package/dist-cjs/components/Cart/IdentityBox.js +37 -0
  172. package/dist-cjs/components/Cart/ShareCart.js +87 -0
  173. package/dist-cjs/components/Cart/index.js +36 -0
  174. package/dist-cjs/components/Cart/injectRelayEnvironment.js +21 -0
  175. package/dist-cjs/components/Cart/types.js +5 -0
  176. package/dist-cjs/components/Cart/utils.js +8 -0
  177. package/dist-cjs/components/CartButton/index.js +127 -0
  178. package/dist-cjs/components/CartButton/index.server.js +18 -0
  179. package/dist-cjs/components/CharacterViewer/StyleSelect.js +60 -0
  180. package/dist-cjs/components/CharacterViewer/index.js +441 -0
  181. package/dist-cjs/components/CharacterViewer/index.server.js +36 -0
  182. package/dist-cjs/components/Checkbox/index.js +27 -0
  183. package/dist-cjs/components/CollectionAa/index.js +38 -0
  184. package/dist-cjs/components/ComponentsContext.js +12 -0
  185. package/dist-cjs/components/ConfigContext.js +86 -0
  186. package/{dist-bundle/chunks/consent-DMvR5rEh.js → dist-cjs/components/ConsentBanner/consent.js} +12 -4
  187. package/dist-cjs/components/ConsentBanner/index.js +84 -0
  188. package/dist-cjs/components/CookieNotification/index.js +83 -0
  189. package/{dist-bundle/chunks/CorsErrorModal-C1g_-3Re.js → dist-cjs/components/CorsErrorModal.js} +19 -16
  190. package/dist-cjs/components/CouponText/index.js +38 -0
  191. package/dist-cjs/components/CustomerLoginForm/index.js +88 -0
  192. package/dist-cjs/components/Family/FamilyList.js +43 -0
  193. package/dist-cjs/components/Family/index.js +77 -0
  194. package/dist-cjs/components/FontFamilies/index.js +53 -0
  195. package/dist-cjs/components/FontStyle/index.js +37 -0
  196. package/dist-cjs/components/FontdueProvider/FontdueProviderClientComponent.js +74 -0
  197. package/dist-cjs/components/FontdueProvider/index.js +43 -0
  198. package/dist-cjs/components/FontdueProvider/index.server.js +35 -0
  199. package/dist-cjs/components/FontdueProvider/useAuxUIOwner.js +32 -0
  200. package/dist-cjs/components/Icons/Align.js +58 -0
  201. package/dist-cjs/components/Icons/ArrowDownRight.js +19 -0
  202. package/dist-cjs/components/Icons/ArrowLeft.js +22 -0
  203. package/dist-cjs/components/Icons/ArrowRight.js +19 -0
  204. package/dist-cjs/components/Icons/CarrotDown.js +19 -0
  205. package/dist-cjs/components/Icons/CarrotUp.js +19 -0
  206. package/dist-cjs/components/Icons/Cart.js +23 -0
  207. package/dist-cjs/components/Icons/CartNew.js +33 -0
  208. package/dist-cjs/components/Icons/Check.js +19 -0
  209. package/dist-cjs/components/Icons/Checkbox.js +24 -0
  210. package/dist-cjs/components/Icons/CheckboxChecked.js +24 -0
  211. package/dist-cjs/components/Icons/CheckboxCrossed.js +26 -0
  212. package/dist-cjs/components/Icons/CircledCheck.js +21 -0
  213. package/dist-cjs/components/Icons/CircledInfo.js +21 -0
  214. package/dist-cjs/components/Icons/CircledMinus.js +21 -0
  215. package/dist-cjs/components/Icons/ColorPicker.js +19 -0
  216. package/dist-cjs/components/Icons/CreditCard.js +21 -0
  217. package/dist-cjs/components/Icons/DownArrow.js +24 -0
  218. package/dist-cjs/components/Icons/DownloadFonts.js +25 -0
  219. package/dist-cjs/components/Icons/FrowningFace.js +25 -0
  220. package/dist-cjs/components/Icons/License.js +19 -0
  221. package/dist-cjs/components/Icons/Receipt.js +34 -0
  222. package/dist-cjs/components/Icons/User.js +19 -0
  223. package/dist-cjs/components/Icons/X.js +19 -0
  224. package/dist-cjs/components/Icons/index.js +167 -0
  225. package/dist-cjs/components/NewsletterSignup/NewsletterSignupElement.js +15 -0
  226. package/dist-cjs/components/NewsletterSignup/index.js +192 -0
  227. package/dist-cjs/components/NewsletterSignup/index.server.js +18 -0
  228. package/dist-cjs/components/NodePasswordForm/index.js +114 -0
  229. package/dist-cjs/components/OrderVariableSelection/OrderVariableSelectionRedux.js +66 -0
  230. package/dist-cjs/components/OrderVariableSelection/index.js +199 -0
  231. package/dist-cjs/components/Precart/License.js +70 -0
  232. package/dist-cjs/components/Precart/index.js +331 -0
  233. package/dist-cjs/components/Price/index.js +111 -0
  234. package/dist-cjs/components/PriceBar/PriceBarSection.js +61 -0
  235. package/dist-cjs/components/PriceBar/index.js +49 -0
  236. package/dist-cjs/components/Root/index.js +208 -0
  237. package/dist-cjs/components/Root/productState.js +143 -0
  238. package/dist-cjs/components/SKUPrice/index.js +46 -0
  239. package/dist-cjs/components/Select/index.js +36 -0
  240. package/dist-cjs/components/SelectButton/index.js +79 -0
  241. package/dist-cjs/components/ServerConfigProvider/index.js +39 -0
  242. package/dist-cjs/components/SpecimenLink/index.js +37 -0
  243. package/dist-cjs/components/StickyNav/index.js +80 -0
  244. package/dist-cjs/components/StoreModal/StoreModalBundleButton.js +47 -0
  245. package/dist-cjs/components/StoreModal/StoreModalCart.js +79 -0
  246. package/dist-cjs/components/StoreModal/StoreModalCheckout.js +24 -0
  247. package/dist-cjs/components/StoreModal/StoreModalCheckoutContext.js +14 -0
  248. package/dist-cjs/components/StoreModal/StoreModalContainer.js +117 -0
  249. package/dist-cjs/components/StoreModal/StoreModalDownload.js +38 -0
  250. package/dist-cjs/components/StoreModal/StoreModalFamily.js +58 -0
  251. package/dist-cjs/components/StoreModal/StoreModalFamilyButton.js +69 -0
  252. package/dist-cjs/components/StoreModal/StoreModalIndex.js +27 -0
  253. package/dist-cjs/components/StoreModal/StoreModalIndexItem.js +63 -0
  254. package/dist-cjs/components/StoreModal/StoreModalLicenseeIsBillingSelection.js +30 -0
  255. package/dist-cjs/components/StoreModal/StoreModalLoader.js +22 -0
  256. package/dist-cjs/components/StoreModal/StoreModalOrderVariableSelection.js +89 -0
  257. package/dist-cjs/components/StoreModal/StoreModalProduct.js +154 -0
  258. package/dist-cjs/components/StoreModal/StoreModalReviewIdentity.js +18 -0
  259. package/dist-cjs/components/StoreModal/StoreModalRouter.js +28 -0
  260. package/dist-cjs/components/StoreModal/StoreModalStyleButton.js +52 -0
  261. package/dist-cjs/components/StoreModal/index.js +39 -0
  262. package/dist-cjs/components/StoreModal/routes.js +51 -0
  263. package/dist-cjs/components/StoreModal/types.js +5 -0
  264. package/dist-cjs/components/StoreModalProductLicenseSelection/LicenseElement.js +46 -0
  265. package/dist-cjs/components/StoreModalProductLicenseSelection/LicenseVariableElement.js +35 -0
  266. package/dist-cjs/components/StoreModalProductLicenseSelection/LicenseVariableRadioElement.js +47 -0
  267. package/dist-cjs/components/StoreModalProductLicenseSelection/StoreModalProductLicense.js +133 -0
  268. package/dist-cjs/components/StoreModalProductLicenseSelection/index.js +31 -0
  269. package/dist-cjs/components/StoreModalProductSummary/index.js +219 -0
  270. package/dist-cjs/components/StripeLogo.js +17 -0
  271. package/dist-cjs/components/StripeProvider/index.js +172 -0
  272. package/dist-cjs/components/Switch/index.js +7 -0
  273. package/dist-cjs/components/TestFontsForm/TestFontsFormElement.js +15 -0
  274. package/dist-cjs/components/TestFontsForm/index.js +208 -0
  275. package/dist-cjs/components/TestFontsForm/index.server.js +18 -0
  276. package/dist-cjs/components/TestModeBanner/index.js +34 -0
  277. package/dist-cjs/components/TextField/index.js +42 -0
  278. package/dist-cjs/components/ThemeConfig/index.js +41 -0
  279. package/dist-cjs/components/ThemeConfig/index.server.js +17 -0
  280. package/{dist-bundle/chunks/index-DsvF5W13.js → dist-cjs/components/Tracking/index.js} +19 -14
  281. package/dist-cjs/components/TypeTester/TypeTesterAlignButtons.js +34 -0
  282. package/dist-cjs/components/TypeTester/TypeTesterBullet.js +23 -0
  283. package/dist-cjs/components/TypeTester/TypeTesterContent.js +58 -0
  284. package/dist-cjs/components/TypeTester/TypeTesterContext.js +166 -0
  285. package/dist-cjs/components/TypeTester/TypeTesterEditAll.js +36 -0
  286. package/dist-cjs/components/TypeTester/TypeTesterFeatures.js +133 -0
  287. package/dist-cjs/components/TypeTester/TypeTesterFeaturesButton.js +82 -0
  288. package/dist-cjs/components/TypeTester/TypeTesterFitter.js +21 -0
  289. package/dist-cjs/components/TypeTester/TypeTesterFloatingToolbar.js +79 -0
  290. package/dist-cjs/components/TypeTester/TypeTesterInput.js +72 -0
  291. package/dist-cjs/components/TypeTester/TypeTesterSlider.js +76 -0
  292. package/dist-cjs/components/TypeTester/TypeTesterStandalone.js +137 -0
  293. package/dist-cjs/components/TypeTester/TypeTesterStandalone.preload.js +27 -0
  294. package/dist-cjs/components/TypeTester/TypeTesterStandalone.server.js +26 -0
  295. package/dist-cjs/components/TypeTester/TypeTesterStandaloneElement.js +65 -0
  296. package/dist-cjs/components/TypeTester/TypeTesterState.js +133 -0
  297. package/dist-cjs/components/TypeTester/TypeTesterStyleSelect.js +101 -0
  298. package/dist-cjs/components/TypeTester/TypeTesterStyleSelectData.js +102 -0
  299. package/dist-cjs/components/TypeTester/TypeTesterToolbar.js +94 -0
  300. package/dist-cjs/components/TypeTester/TypeTesterVariableAxes.js +65 -0
  301. package/dist-cjs/components/TypeTester/features.js +150 -0
  302. package/dist-cjs/components/TypeTester/index.js +169 -0
  303. package/dist-cjs/components/TypeTester/types.js +14 -0
  304. package/dist-cjs/components/TypeTester/useFeaturesData.js +36 -0
  305. package/dist-cjs/components/TypeTester/useTypeTesterStyler.js +83 -0
  306. package/dist-cjs/components/TypeTesters/TypeTestersElement.js +33 -0
  307. package/dist-cjs/components/TypeTesters/index.js +271 -0
  308. package/dist-cjs/components/TypeTesters/index.server.js +44 -0
  309. package/dist-cjs/components/UrlContext.js +16 -0
  310. package/dist-cjs/components/VariableTableAmounts/index.js +28 -0
  311. package/dist-cjs/components/elements/Button/index.js +21 -0
  312. package/dist-cjs/components/elements/EmptyCart/index.js +30 -0
  313. package/dist-cjs/components/elements/StoreModalCartLayout/index.js +38 -0
  314. package/dist-cjs/components/elements/StoreModalContainer/StoreModalContainerContext.js +11 -0
  315. package/dist-cjs/components/elements/StoreModalContainer/index.js +77 -0
  316. package/dist-cjs/components/elements/StoreModalDownloadLayout/index.js +25 -0
  317. package/dist-cjs/components/elements/StoreModalFamily/index.js +31 -0
  318. package/dist-cjs/components/elements/StoreModalFamilyButton/index.js +45 -0
  319. package/dist-cjs/components/elements/StoreModalIndexItem/index.js +35 -0
  320. package/dist-cjs/components/elements/StoreModalLicenseeIsBillingIdentityElement.js +59 -0
  321. package/dist-cjs/components/elements/StoreModalLoadingScreen/index.js +14 -0
  322. package/dist-cjs/components/elements/StoreModalPageContainer/index.js +22 -0
  323. package/dist-cjs/components/elements/StoreModalStyleButton/index.js +37 -0
  324. package/dist-cjs/components/elements/StoreModalUnifiedCheckout.js +753 -0
  325. package/dist-cjs/components/useConsent.js +26 -0
  326. package/dist-cjs/components/useFont.js +76 -0
  327. package/dist-cjs/components/useFontStyle.js +58 -0
  328. package/dist-cjs/components/useInterval.js +28 -0
  329. package/dist-cjs/components/useTotalStyles.js +26 -0
  330. package/{dist-bundle/index.js → dist-cjs/config.js} +8 -4
  331. package/dist-cjs/corsError.js +89 -0
  332. package/dist-cjs/data/unicodeData.js +1 -0
  333. package/dist-cjs/fontLoader.js +55 -0
  334. package/dist-cjs/global-shim.js +12 -0
  335. package/dist-cjs/hooks/useAutofit.js +114 -0
  336. package/dist-cjs/hooks/useLicenseAndOrderVariables.js +25 -0
  337. package/dist-cjs/hooks/useRefetchOnLicenseChanges.js +60 -0
  338. package/dist-cjs/hooks.js +18 -0
  339. package/dist-cjs/index.js +18 -0
  340. package/dist-cjs/package.json +1 -0
  341. package/dist-cjs/react-ranger.d.js +1 -0
  342. package/dist-cjs/react-ranger.js +301 -0
  343. package/dist-cjs/reducer.js +291 -0
  344. package/dist-cjs/relay/environment.js +148 -0
  345. package/{dist-bundle/TypeTester.preload.js → dist-cjs/relay/loadSerializableQuery.js} +8 -26
  346. package/dist-cjs/relay/useSerializablePreloadedQuery.js +52 -0
  347. package/dist-cjs/retryImport.js +24 -0
  348. package/dist-cjs/scripts/updateUnicodeData.js +49 -0
  349. package/dist-cjs/utils.js +107 -0
  350. package/dist-cjs/vanilla/FontStyle.js +58 -0
  351. package/dist-cjs/vanilla/TruncatedMarkdown.js +28 -0
  352. package/package.json +1 -1
  353. package/dist-bundle/FontdueProvider.js +0 -6
  354. package/dist-bundle/FontdueProvider.js.map +0 -1
  355. package/dist-bundle/TypeTester.js +0 -7
  356. package/dist-bundle/TypeTester.js.map +0 -1
  357. package/dist-bundle/TypeTester.preload.js.map +0 -1
  358. package/dist-bundle/chunks/ComponentsContext-CmkN9J4X.js +0 -20843
  359. package/dist-bundle/chunks/ComponentsContext-CmkN9J4X.js.map +0 -1
  360. package/dist-bundle/chunks/CorsErrorModal-C1g_-3Re.js.map +0 -1
  361. package/dist-bundle/chunks/TypeTesterStandalone-BMWuv8Ca.js +0 -27486
  362. package/dist-bundle/chunks/TypeTesterStandalone-BMWuv8Ca.js.map +0 -1
  363. package/dist-bundle/chunks/consent-DMvR5rEh.js.map +0 -1
  364. package/dist-bundle/chunks/index-BNSbxp7B.js +0 -78
  365. package/dist-bundle/chunks/index-BNSbxp7B.js.map +0 -1
  366. package/dist-bundle/chunks/index-C4ak9qTL.js +0 -423
  367. package/dist-bundle/chunks/index-C4ak9qTL.js.map +0 -1
  368. package/dist-bundle/chunks/index-DsvF5W13.js.map +0 -1
  369. package/dist-bundle/chunks/index-o29NNufd.js.map +0 -1
  370. package/dist-bundle/index.js.map +0 -1
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = NodePasswordForm;
8
+ var _NodePasswordFormSlugQuery2 = _interopRequireDefault(require("../../__generated__/NodePasswordFormSlugQuery.graphql"));
9
+ var _NodePasswordFormIDQuery2 = _interopRequireDefault(require("../../__generated__/NodePasswordFormIDQuery.graphql"));
10
+ var _NodePasswordFormAccessNodeMutation2 = _interopRequireDefault(require("../../__generated__/NodePasswordFormAccessNodeMutation.graphql"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _reactRelay = require("react-relay");
13
+ var _TextField = _interopRequireDefault(require("../TextField"));
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
18
+ const accessNodeMutation = (_NodePasswordFormAccessNodeMutation2.default.hash && _NodePasswordFormAccessNodeMutation2.default.hash !== "d0beeb729c358ef4eebd1c8be47ec68e" && console.error("The definition of 'NodePasswordFormAccessNodeMutation' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."), _NodePasswordFormAccessNodeMutation2.default);
19
+ function NodePasswordFormComponent(props) {
20
+ const [password, setPassword] = (0, _react.useState)('');
21
+ const [error, setError] = (0, _react.useState)(null);
22
+ const [commitMutation, submitting] = (0, _reactRelay.useMutation)(accessNodeMutation);
23
+ const disabled = submitting || !password;
24
+ const handleSubmit = e => {
25
+ e.preventDefault();
26
+ setError(null);
27
+ commitMutation({
28
+ variables: {
29
+ input: {
30
+ password,
31
+ id: props.collectionId,
32
+ slug: props.collectionSlug
33
+ }
34
+ },
35
+ onCompleted: res => {
36
+ if (res.accessNode?.success) {
37
+ location.reload();
38
+ }
39
+ },
40
+ onError: error => {
41
+ setError(error.message);
42
+ }
43
+ });
44
+ };
45
+ return /*#__PURE__*/_react.default.createElement("form", {
46
+ onSubmit: handleSubmit,
47
+ className: "node-password-form"
48
+ }, error && /*#__PURE__*/_react.default.createElement("p", {
49
+ className: "node-password-form__error"
50
+ }, error), /*#__PURE__*/_react.default.createElement("div", {
51
+ className: "node-password-form__section"
52
+ }, /*#__PURE__*/_react.default.createElement(_TextField.default, {
53
+ label: "Password *",
54
+ placeholder: "Enter password",
55
+ autocomplete: "off",
56
+ type: "password",
57
+ value: password,
58
+ onChange: value => setPassword(value)
59
+ })), /*#__PURE__*/_react.default.createElement("div", {
60
+ className: "node-password-form__section"
61
+ }, /*#__PURE__*/_react.default.createElement("button", {
62
+ disabled: disabled,
63
+ className: "submit-button"
64
+ }, "Submit")));
65
+ }
66
+ const idQuery = (_NodePasswordFormIDQuery2.default.hash && _NodePasswordFormIDQuery2.default.hash !== "2af86f8f6df3d2e6061ea1c9dd777a26" && console.error("The definition of 'NodePasswordFormIDQuery' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."), _NodePasswordFormIDQuery2.default);
67
+ function NodePasswordFormIDQueryRenderer({
68
+ collectionId,
69
+ ...rest
70
+ }) {
71
+ const data = (0, _reactRelay.useLazyLoadQuery)(idQuery, {
72
+ collectionId
73
+ });
74
+ // this is counterintuitive, but we've added the @catch directive on the collection,
75
+ // and we're expecting it to respond with an error if the node is inaccessible due to being
76
+ // password-protected. so, when we encounter the error we're safe to render the password form.
77
+ // (we don't want to show the form if the user has already gained access)
78
+ if (data.collection.ok === false) return /*#__PURE__*/_react.default.createElement(NodePasswordFormComponent, _extends({}, rest, {
79
+ collectionId: collectionId
80
+ }));
81
+ }
82
+ const slugQuery = (_NodePasswordFormSlugQuery2.default.hash && _NodePasswordFormSlugQuery2.default.hash !== "c40faf067007027fa9ba6673350c7202" && console.error("The definition of 'NodePasswordFormSlugQuery' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."), _NodePasswordFormSlugQuery2.default);
83
+ function NodePasswordFormSlugQueryRenderer({
84
+ collectionSlug,
85
+ ...rest
86
+ }) {
87
+ const data = (0, _reactRelay.useLazyLoadQuery)(slugQuery, {
88
+ collectionSlug
89
+ });
90
+ // see note in NodePasswordFormIDQueryRenderer
91
+ if (data.viewer.slug?.collection.ok === false) return /*#__PURE__*/_react.default.createElement(NodePasswordFormComponent, _extends({}, rest, {
92
+ collectionSlug: collectionSlug
93
+ }));
94
+ return null;
95
+ }
96
+
97
+ // default client export
98
+ function NodePasswordForm({
99
+ collectionId,
100
+ collectionSlug,
101
+ ...rest
102
+ }) {
103
+ if (collectionId) {
104
+ return /*#__PURE__*/_react.default.createElement(NodePasswordFormIDQueryRenderer, _extends({
105
+ collectionId: collectionId
106
+ }, rest));
107
+ }
108
+ if (collectionSlug) {
109
+ return /*#__PURE__*/_react.default.createElement(NodePasswordFormSlugQueryRenderer, _extends({
110
+ collectionSlug: collectionSlug
111
+ }, rest));
112
+ }
113
+ throw new Error('NodePasswordForm expected either a collectionId or collectionSlug prop');
114
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = OrderVariableSelectionRedux;
7
+ var _OrderVariableSelectionRedux_viewer2 = _interopRequireDefault(require("../../__generated__/OrderVariableSelectionRedux_viewer.graphql"));
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _reactRelay = require("react-relay");
10
+ var _reactRedux = require("react-redux");
11
+ var _index = _interopRequireDefault(require("./index"));
12
+ var _OrderVariableSelectionReduxRefetchQuery = _interopRequireDefault(require("../../__generated__/OrderVariableSelectionReduxRefetchQuery.graphql"));
13
+ var _useRefetchOnLicenseChanges = require("../../hooks/useRefetchOnLicenseChanges");
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
+ function OrderVariableSelectionRedux({
18
+ viewer: viewerKey,
19
+ disabled,
20
+ children
21
+ }) {
22
+ const environment = (0, _reactRelay.useRelayEnvironment)();
23
+ const [viewer, refetch] = (0, _reactRelay.useRefetchableFragment)((_OrderVariableSelectionRedux_viewer2.default.hash && _OrderVariableSelectionRedux_viewer2.default.hash !== "eaa5e1fdf47cb582dd3c7bdea0a5e6b2" && console.error("The definition of 'OrderVariableSelectionRedux_viewer' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."), _OrderVariableSelectionRedux_viewer2.default), viewerKey);
24
+ const refetchVariables = (0, _react.useMemo)(() => ({}), []);
25
+ (0, _useRefetchOnLicenseChanges.useRefetchOnLicenseChanges)({
26
+ environment,
27
+ refetch,
28
+ query: _OrderVariableSelectionReduxRefetchQuery.default,
29
+ variables: refetchVariables
30
+ });
31
+ const dispatch = (0, _reactRedux.useDispatch)();
32
+ const selections = (0, _reactRedux.useSelector)(state => state.orderVariableSelections);
33
+ const handleSelectionChange = (0, _react.useCallback)(newSelections => {
34
+ dispatch({
35
+ type: 'UPDATE_ORDER_VARIABLE_SELECTIONS',
36
+ selections: newSelections
37
+ });
38
+ }, [dispatch]);
39
+
40
+ // Auto-populate Redux state with detected country for country-type variables
41
+ (0, _react.useEffect)(() => {
42
+ if (!viewer.detectedCountry || !viewer.orderVariables) return;
43
+
44
+ // Find country-type variables that don't have a selection yet
45
+ const countryVariablesNeedingSelection = viewer.orderVariables.filter(v => v.variableType === 'country').filter(v => !selections.find(s => s.orderVariableId === v.id));
46
+ if (countryVariablesNeedingSelection.length === 0) return;
47
+
48
+ // Pre-populate with detected country
49
+ const newSelections = [...selections, ...countryVariablesNeedingSelection.map(v => ({
50
+ orderVariableId: v.id,
51
+ orderVariableOptionId: null,
52
+ countryCode: viewer.detectedCountry
53
+ }))];
54
+ dispatch({
55
+ type: 'UPDATE_ORDER_VARIABLE_SELECTIONS',
56
+ selections: newSelections
57
+ });
58
+ }, [viewer.detectedCountry, viewer.orderVariables, selections, dispatch]);
59
+ return /*#__PURE__*/_react.default.createElement(_index.default, {
60
+ variables: viewer,
61
+ selections: selections,
62
+ onSelectionChange: handleSelectionChange,
63
+ disabled: disabled,
64
+ children: children
65
+ });
66
+ }
@@ -0,0 +1,199 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = OrderVariableSelection;
7
+ var _OrderVariableSelection_variables2 = _interopRequireDefault(require("../../__generated__/OrderVariableSelection_variables.graphql"));
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _reactRelay = require("react-relay");
10
+ var _Button = _interopRequireDefault(require("../elements/Button"));
11
+ var _ConfigContext = _interopRequireDefault(require("../ConfigContext"));
12
+ var _Icons = require("../Icons");
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
+ // Ghost variable type
17
+
18
+ // Component props
19
+
20
+ function Variable({
21
+ variable,
22
+ selection,
23
+ onToggle,
24
+ ghost = false,
25
+ onRemoveGhost,
26
+ countries
27
+ }) {
28
+ const {
29
+ form: config
30
+ } = (0, _react.useContext)(_ConfigContext.default);
31
+ const isSelected = Boolean(selection);
32
+ const handleClickVariable = (0, _react.useCallback)(() => {
33
+ // Only toggle boolean variables when clicked
34
+ if (variable.variableType === 'boolean') {
35
+ onToggle(variable.id, null);
36
+ } else if (variable.variableType === 'select' && !isSelected && variable.orderVariableOptions?.length) {
37
+ // For unselected select variables, select the first option by default
38
+ onToggle(variable.id, variable.orderVariableOptions[0].id);
39
+ }
40
+ // Country variables are now static (non-editable)
41
+ }, [variable, isSelected, onToggle]);
42
+ const handleChangeVariableOption = (0, _react.useCallback)(e => {
43
+ onToggle(variable.id, e.target.value);
44
+ }, [variable.id, onToggle]);
45
+ let options = variable.orderVariableOptions?.map(option => ({
46
+ ...option,
47
+ disabled: false
48
+ }));
49
+
50
+ // if there are any selections NOT present in viewer.orderVariables.orderVariableOptions,
51
+ // but they ARE present in the selection, it means they've been soft-deleted in the backend.
52
+ // but we can include it in the list of options in a disabled state. the user can still
53
+ // checkout with the option they previoulsy selected if they want to
54
+ if (selection?.orderVariableOptionId && options && !options.find(option => selection?.orderVariableOptionId == option.id)) {
55
+ options = options.concat({
56
+ id: selection.orderVariableOptionId,
57
+ amount: selection.orderVariableOptionAmount ?? null,
58
+ disabled: true
59
+ });
60
+ }
61
+ const selectedOption = options?.find(o => o.id === selection?.orderVariableOptionId);
62
+ const selectedCountry = countries?.find(c => c.code === selection?.countryCode);
63
+ return /*#__PURE__*/_react.default.createElement("div", {
64
+ className: "store-modal__order-variable-selection__item",
65
+ "data-variable-type": variable.variableType,
66
+ "data-ghost": ghost
67
+ }, /*#__PURE__*/_react.default.createElement(_Button.default, {
68
+ className: "store-modal__order-variable-selection__button",
69
+ onClick: handleClickVariable,
70
+ "data-selected": isSelected
71
+ }, /*#__PURE__*/_react.default.createElement("div", {
72
+ className: "store-modal__order-variable-selection__label"
73
+ }, /*#__PURE__*/_react.default.createElement("span", {
74
+ className: "store-modal__order-variable-selection__icon-pair"
75
+ }, variable.variableType === 'boolean' ? isSelected ? config.checkboxStyle === 'check' ? /*#__PURE__*/_react.default.createElement(_Icons.CheckboxChecked, null) : /*#__PURE__*/_react.default.createElement(_Icons.CheckboxCrossed, null) : /*#__PURE__*/_react.default.createElement(_Icons.Checkbox, null) : null, variable.name)), variable.variableType === 'select' ? /*#__PURE__*/_react.default.createElement("label", {
76
+ className: "store-modal__order-variable-selection__select-label"
77
+ }, selectedOption ? selectedOption.amount : `Select an option`, /*#__PURE__*/_react.default.createElement(_Icons.CarrotDown, null), /*#__PURE__*/_react.default.createElement("select", {
78
+ className: "store-modal__order-variable-selection__select",
79
+ value: selection?.orderVariableOptionId || '',
80
+ onChange: handleChangeVariableOption,
81
+ onClick: e => e.stopPropagation()
82
+ }, /*#__PURE__*/_react.default.createElement("option", {
83
+ value: "",
84
+ disabled: true
85
+ }, "Select an option"), options?.map(({
86
+ id,
87
+ amount,
88
+ disabled
89
+ }) => /*#__PURE__*/_react.default.createElement("option", {
90
+ key: id,
91
+ value: id,
92
+ disabled: disabled
93
+ }, amount, " ", disabled ? '(Deprecated)' : null)))) : null, variable.variableType === 'country' && selectedCountry ? /*#__PURE__*/_react.default.createElement("span", {
94
+ className: "store-modal__order-variable-selection__country-value"
95
+ }, selectedCountry.name) : null), variable.description ? /*#__PURE__*/_react.default.createElement("div", {
96
+ className: "store-modal__order-variable-selection__description",
97
+ dangerouslySetInnerHTML: {
98
+ __html: variable.description
99
+ }
100
+ }) : null, ghost && /*#__PURE__*/_react.default.createElement("div", {
101
+ className: "store-modal__order-variable-selection__ghost-container"
102
+ }, "This variable has been removed from our system and is deprecated", ' ', /*#__PURE__*/_react.default.createElement("button", {
103
+ className: "store-modal__order-variable-selection__ghost-remove",
104
+ onClick: onRemoveGhost
105
+ }, "Remove")));
106
+ }
107
+ function OrderVariableSelection({
108
+ variables: variablesKey,
109
+ selections,
110
+ onSelectionChange,
111
+ disabled,
112
+ ghostVariables = [],
113
+ onRemoveGhostVariable,
114
+ descriptionOverrides,
115
+ children: {
116
+ label
117
+ }
118
+ }) {
119
+ const variables = (0, _reactRelay.useFragment)((_OrderVariableSelection_variables2.default.hash && _OrderVariableSelection_variables2.default.hash !== "b73b43b61cd5edd5face7d4a5615b2f5" && console.error("The definition of 'OrderVariableSelection_variables' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."), _OrderVariableSelection_variables2.default), variablesKey);
120
+ const handleSelectionChange = (0, _react.useCallback)((variableId, optionId, countryCode) => {
121
+ // Update the selections with the new value
122
+ const newSelections = selections.map(selection => ({
123
+ orderVariableId: selection.orderVariableId,
124
+ orderVariableOptionId: selection.orderVariableOptionId,
125
+ countryCode: selection.countryCode
126
+ }));
127
+ const existingIndex = newSelections.findIndex(s => s.orderVariableId === variableId);
128
+
129
+ // Find the variable to determine its type
130
+ const variable = variables.orderVariables?.find(v => v.id === variableId);
131
+ const isBoolean = variable?.variableType === 'boolean';
132
+ if (existingIndex >= 0) {
133
+ // For boolean variables, if it's already selected, remove it entirely
134
+ if (isBoolean && newSelections[existingIndex].orderVariableOptionId === optionId) {
135
+ newSelections.splice(existingIndex, 1);
136
+ } else {
137
+ // Update existing selection
138
+ // For country variables: clear orderVariableOptionId when setting countryCode
139
+ // For select/boolean variables: clear countryCode when setting orderVariableOptionId
140
+ const isCountryVariable = variable?.variableType === 'country';
141
+ newSelections[existingIndex] = {
142
+ ...newSelections[existingIndex],
143
+ orderVariableOptionId: isCountryVariable ? null : optionId,
144
+ countryCode: isCountryVariable ? countryCode ?? newSelections[existingIndex].countryCode : null
145
+ };
146
+ }
147
+ } else {
148
+ // Add new selection
149
+ newSelections.push({
150
+ orderVariableId: variableId,
151
+ orderVariableOptionId: optionId,
152
+ countryCode: countryCode
153
+ });
154
+ }
155
+ onSelectionChange(newSelections);
156
+ }, [selections, onSelectionChange, variables.orderVariables]);
157
+ if (!variables.orderVariables || variables.orderVariables.length === 0) {
158
+ return null;
159
+ }
160
+ return /*#__PURE__*/_react.default.createElement("div", {
161
+ className: "store-modal__order-variable-selection__container",
162
+ "data-disabled": disabled
163
+ }, /*#__PURE__*/_react.default.createElement("h3", {
164
+ className: "store-modal__order-variable-selection__title"
165
+ }, label), variables.orderVariables.map(variable => {
166
+ const currentSelection = selections.find(s => s.orderVariableId === variable.id);
167
+
168
+ // Use description override if provided, otherwise use the variable's description
169
+ const effectiveVariable = descriptionOverrides?.[variable.id] !== undefined ? {
170
+ ...variable,
171
+ description: descriptionOverrides[variable.id]
172
+ } : variable;
173
+ return /*#__PURE__*/_react.default.createElement(Variable, {
174
+ key: variable.id,
175
+ variable: effectiveVariable,
176
+ selection: currentSelection,
177
+ countries: variables.countries?.filter(c => c !== null) ?? null,
178
+ onToggle: (orderVariableId, orderVariableOptionId, countryCode) => handleSelectionChange(orderVariableId, orderVariableOptionId !== undefined ? orderVariableOptionId : null, countryCode)
179
+ });
180
+ }), ghostVariables.map(ghost => {
181
+ return /*#__PURE__*/_react.default.createElement(Variable, {
182
+ key: ghost.orderVariable.id,
183
+ variable: {
184
+ ...ghost.orderVariable,
185
+ orderVariableOptions: ghost.orderVariableOption ? [ghost.orderVariableOption] : null
186
+ },
187
+ selection: {
188
+ orderVariableId: ghost.orderVariable.id,
189
+ orderVariableOptionId: ghost.orderVariableOption?.id ?? null,
190
+ orderVariableOptionAmount: ghost.orderVariableOption?.amount ?? null
191
+ },
192
+ countries: variables.countries?.filter(c => c !== null) ?? null,
193
+ ghost: true,
194
+ onToggle: () => {} // Ghost variables don't toggle
195
+ ,
196
+ onRemoveGhost: onRemoveGhostVariable ? () => onRemoveGhostVariable(ghost.orderVariable.id) : undefined
197
+ });
198
+ }));
199
+ }
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _License_node2 = _interopRequireDefault(require("../../__generated__/License_node.graphql"));
8
+ var _reactRelay = require("react-relay");
9
+ var _reactRedux = require("react-redux");
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _Icons = require("../Icons");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ const License = ({
14
+ node: nodeKey,
15
+ selected,
16
+ onSelectLicense,
17
+ onSelectLicenseOption
18
+ }) => {
19
+ const node = (0, _reactRelay.useFragment)((_License_node2.default.hash && _License_node2.default.hash !== "1550b152731d8412ffc55716cb536407" && console.error("The definition of 'License_node' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."), _License_node2.default), nodeKey);
20
+ if (!node) return null;
21
+ const selectedLicenseOptions = (0, _reactRedux.useSelector)(state => state.licenseOptions);
22
+ const selectedOptions = selectedLicenseOptions.find(spec => spec.licenseId === node.id);
23
+ return /*#__PURE__*/_react.default.createElement("div", {
24
+ className: "pre-cart__license-wrapper"
25
+ }, /*#__PURE__*/_react.default.createElement("div", {
26
+ className: "pre-cart__license",
27
+ "data-selected": selected
28
+ }, /*#__PURE__*/_react.default.createElement("div", {
29
+ className: "pre-cart__license__name-wrapper"
30
+ }, /*#__PURE__*/_react.default.createElement("label", {
31
+ className: "pre-cart__license__name"
32
+ }, /*#__PURE__*/_react.default.createElement("div", {
33
+ className: "pre-cart__license__checkbox"
34
+ }, selected && /*#__PURE__*/_react.default.createElement(_Icons.Check, null)), node.name, /*#__PURE__*/_react.default.createElement("input", {
35
+ type: "checkbox",
36
+ checked: selected,
37
+ value: node.id,
38
+ onChange: e => onSelectLicense(node.id, e.target.checked)
39
+ })), selected && /*#__PURE__*/_react.default.createElement("a", {
40
+ href: node.url,
41
+ "aria-label": "Info",
42
+ className: "pre-cart__license__icon",
43
+ "data-label": "info"
44
+ }, /*#__PURE__*/_react.default.createElement(_Icons.CircledInfo, null))), selected && /*#__PURE__*/_react.default.createElement("ul", null, node.variables && node.variables.map(variable => {
45
+ const selectedLicenseOption = selectedOptions?.licenseOptions[variable.id];
46
+ if (variable.variableType === 'text') return null;
47
+ const selectedLicenseAmount = variable?.options?.find(option => option.id === selectedLicenseOption)?.amount;
48
+ return /*#__PURE__*/_react.default.createElement("li", {
49
+ key: variable.id
50
+ }, /*#__PURE__*/_react.default.createElement("label", {
51
+ className: "pre-cart__license__option"
52
+ }, "\u21B3 ", selectedLicenseAmount, /*#__PURE__*/_react.default.createElement(_Icons.CarrotDown, null), /*#__PURE__*/_react.default.createElement("select", {
53
+ value: selectedLicenseOption || '',
54
+ onChange: e => onSelectLicenseOption(node.id, variable.id, e.target.value)
55
+ }, /*#__PURE__*/_react.default.createElement("option", {
56
+ value: "",
57
+ disabled: true
58
+ }, "Select one"), variable.options && variable.options.map(option => /*#__PURE__*/_react.default.createElement("option", {
59
+ key: option.id,
60
+ value: option.id
61
+ }, option.amount)))));
62
+ }))), node.description && /*#__PURE__*/_react.default.createElement("div", {
63
+ className: "pre-cart__license__description",
64
+ dangerouslySetInnerHTML: {
65
+ __html: node.description
66
+ }
67
+ }));
68
+ };
69
+ var _default = License;
70
+ exports.default = _default;