fontdue-js 2.28.0 → 3.0.0-alpha10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.babelrc.cjs +72 -0
- package/README.md +639 -93
- package/dist/__generated__/AddToCartBannerQuery.graphql.js +1 -8
- package/dist/__generated__/AddToCartBanner_item.graphql.js +1 -8
- package/dist/__generated__/AddToCartBanner_order.graphql.js +1 -8
- package/dist/__generated__/AddressFieldsRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/AddressFields_viewer.graphql.js +3 -11
- package/dist/__generated__/BuyButtonIDQuery.graphql.js +1 -8
- package/dist/__generated__/BuyButtonSlugQuery.graphql.js +1 -8
- package/dist/__generated__/BuyButton_collection.graphql.js +1 -8
- package/dist/__generated__/CartButtonQuery.graphql.js +1 -8
- package/dist/__generated__/CartButton_order.graphql.js +1 -8
- package/dist/__generated__/CartItemAdditionalLicenses_licenses.graphql.js +1 -8
- package/dist/__generated__/CartItemAdditionalLicenses_orderItem.graphql.js +1 -8
- package/dist/__generated__/CartItemLicense_selection.graphql.js +1 -8
- package/dist/__generated__/CartItemProduct_product.graphql.js +1 -8
- package/dist/__generated__/CartItemVariable_selection.graphql.js +1 -8
- package/dist/__generated__/CartItemVariable_variable.graphql.js +1 -8
- package/dist/__generated__/CartItem_node.graphql.js +1 -8
- package/dist/__generated__/CartOrderCompleteOrderMutation.graphql.js +1 -8
- package/dist/__generated__/CartOrderRemoveDiscountMutation.graphql.js +1 -8
- package/dist/__generated__/CartOrderUpdateMutation.graphql.js +1 -8
- package/dist/__generated__/CartOrder_UpdateErrors.graphql.js +1 -8
- package/dist/__generated__/CartOrder_order.graphql.js +1 -8
- package/dist/__generated__/CartOrder_viewer.graphql.js +1 -8
- package/dist/__generated__/CartQuery.graphql.js +1 -8
- package/dist/__generated__/CartStateRemoveDiscountMutation.graphql.js +1 -8
- package/dist/__generated__/CartStateUpdateMutation.graphql.js +1 -8
- package/dist/__generated__/CartState_order.graphql.js +1 -8
- package/dist/__generated__/CartTotals_order.graphql.js +1 -8
- package/dist/__generated__/CharacterViewerIDQuery.graphql.js +1 -8
- package/dist/__generated__/CharacterViewerSlugQuery.graphql.js +1 -8
- package/dist/__generated__/CharacterViewerStyleRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/CharacterViewer_collection.graphql.js +1 -8
- package/dist/__generated__/CharacterViewer_family.graphql.js +1 -8
- package/dist/__generated__/CharacterViewer_style.graphql.js +3 -11
- package/dist/__generated__/CheckoutUpdateCustomerMutation.graphql.js +1 -8
- package/dist/__generated__/CheckoutUpdateOrderMutation.graphql.js +1 -8
- package/dist/__generated__/Checkout_UpdateOrderErrors.graphql.js +1 -8
- package/dist/__generated__/Checkout_identity.graphql.js +1 -8
- package/dist/__generated__/Checkout_order.graphql.js +1 -8
- package/dist/__generated__/Checkout_viewer.graphql.js +1 -8
- package/dist/__generated__/CollectionAa_Query.graphql.js +1 -8
- package/dist/__generated__/CollectionAa_product.graphql.js +1 -8
- package/dist/__generated__/CouponCodeInputApplyCouponMutation.graphql.js +1 -8
- package/dist/__generated__/CouponText_coupon.graphql.js +1 -8
- package/dist/__generated__/CustomerLoginFormLoginMutation.graphql.js +1 -8
- package/dist/__generated__/CustomerLoginFormQuery.graphql.js +1 -8
- package/dist/__generated__/DownloadRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/Download_order.graphql.js +1 -8
- package/dist/__generated__/FamilyList_node.graphql.js +1 -8
- package/dist/__generated__/Family_node.graphql.js +1 -8
- package/dist/__generated__/FontFamiliesQuery.graphql.js +1 -8
- package/dist/__generated__/FontStyle_fontStyle.graphql.js +1 -8
- package/dist/__generated__/FontdueAdminToolbarStaffQuery.graphql.d.ts +20 -0
- package/dist/__generated__/{TestModeBannerQuery.graphql.js → FontdueAdminToolbarStaffQuery.graphql.js} +11 -18
- package/dist/__generated__/FontdueAdminToolbarTokenMutation.graphql.d.ts +18 -0
- package/dist/__generated__/FontdueAdminToolbarTokenMutation.graphql.js +56 -0
- package/dist/__generated__/FontdueProviderQuery.graphql.d.ts +19 -0
- package/dist/__generated__/FontdueProviderQuery.graphql.js +140 -0
- package/dist/__generated__/IdentityBox_identity.graphql.js +1 -8
- package/dist/__generated__/License_node.graphql.js +1 -8
- package/dist/__generated__/NewsletterSignupQuery.graphql.js +1 -8
- package/dist/__generated__/NewsletterSignupUpdateCustomerMutation.graphql.js +1 -8
- package/dist/__generated__/NodePasswordFormAccessNodeMutation.graphql.js +1 -8
- package/dist/__generated__/NodePasswordFormIDQuery.graphql.js +1 -8
- package/dist/__generated__/NodePasswordFormSlugQuery.graphql.js +1 -8
- package/dist/__generated__/OrderVariableSelectionReduxRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/OrderVariableSelectionRedux_viewer.graphql.js +3 -11
- package/dist/__generated__/OrderVariableSelection_variables.graphql.js +1 -8
- package/dist/__generated__/PrecartAddToCartMutation.graphql.js +1 -8
- package/dist/__generated__/PrecartClearCartMutation.graphql.js +1 -8
- package/dist/__generated__/PrecartQuery.graphql.js +1 -8
- package/dist/__generated__/Precart_collection.graphql.js +1 -8
- package/dist/__generated__/Precart_license.graphql.js +1 -8
- package/dist/__generated__/Precart_viewer.graphql.js +1 -8
- package/dist/__generated__/PriceBarSectionRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/PriceBarSection_node.graphql.js +3 -11
- package/dist/__generated__/PriceBar_node.graphql.js +1 -8
- package/dist/__generated__/Price_price.graphql.js +1 -8
- package/dist/__generated__/SKUPrice_sku.graphql.js +1 -8
- package/dist/__generated__/SelectButton_sku.graphql.js +1 -8
- package/dist/__generated__/ServerConfigProvider_viewer.graphql.d.ts +23 -0
- package/dist/__generated__/ServerConfigProvider_viewer.graphql.js +57 -0
- package/dist/__generated__/ShareCartCreateSnapshotMutation.graphql.js +1 -8
- package/dist/__generated__/SpecimenLinkQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalBundleButton_bundle.graphql.js +1 -8
- package/dist/__generated__/StoreModalCartQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalCheckoutQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalContainerQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalDownloadRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalDownload_order.graphql.js +1 -8
- package/dist/__generated__/StoreModalFamilyButton_collection.graphql.js +1 -8
- package/dist/__generated__/StoreModalFamily_collection.graphql.js +1 -8
- package/dist/__generated__/StoreModalIndexItem_fontCollection.graphql.js +1 -8
- package/dist/__generated__/StoreModalIndexQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalOrderVariableSelection_order.graphql.js +1 -8
- package/dist/__generated__/StoreModalOrderVariableSelection_viewer.graphql.js +1 -8
- package/dist/__generated__/StoreModalProductContent_collection.graphql.js +3 -11
- package/dist/__generated__/StoreModalProductLicenseSelection_collection.graphql.js +1 -8
- package/dist/__generated__/StoreModalProductLicense_license.graphql.js +1 -8
- package/dist/__generated__/StoreModalProductQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalProductRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalProductSummaryAddToCartMutation.graphql.js +1 -8
- package/dist/__generated__/StoreModalProductSummaryClearCartMutation.graphql.js +1 -8
- package/dist/__generated__/StoreModalProductSummaryRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/StoreModalProductSummary_viewer.graphql.js +3 -11
- package/dist/__generated__/StoreModalReviewIdentity_identity.graphql.js +1 -8
- package/dist/__generated__/StoreModalStyleButton_fontStyle.graphql.js +1 -8
- package/dist/__generated__/StoreModalUnifiedCheckoutCompleteOrderMutation.graphql.js +1 -8
- package/dist/__generated__/StoreModalUnifiedCheckoutUpdateCustomerMutation.graphql.js +1 -8
- package/dist/__generated__/StoreModalUnifiedCheckoutUpdateOrderMutation.graphql.js +1 -8
- package/dist/__generated__/StoreModalUnifiedCheckout_order.graphql.js +1 -8
- package/dist/__generated__/StoreModalUnifiedCheckout_viewer.graphql.js +1 -8
- package/dist/__generated__/StripeProviderCreateCheckoutSessionMutation.graphql.js +1 -8
- package/dist/__generated__/StripeProvider_viewer.graphql.js +1 -8
- package/dist/__generated__/TestFontsFormUpdateCustomerMutation.graphql.js +1 -8
- package/dist/__generated__/TestFontsForm_Query.graphql.js +1 -8
- package/dist/__generated__/TestModeBanner_viewer.graphql.d.ts +19 -0
- package/dist/__generated__/TestModeBanner_viewer.graphql.js +36 -0
- package/dist/__generated__/ThemeConfig_viewer.graphql.d.ts +19 -0
- package/dist/__generated__/ThemeConfig_viewer.graphql.js +36 -0
- package/dist/__generated__/TypeTesterFamiliesQuery.graphql.js +1 -8
- package/dist/__generated__/TypeTesterFamiliesStylesQuery.graphql.js +1 -8
- package/dist/__generated__/TypeTesterFeaturesButton_fontStyle.graphql.js +1 -8
- package/dist/__generated__/TypeTesterFeatures_fontStyle.graphql.js +1 -8
- package/dist/__generated__/TypeTesterFloatingToolbar_testers.graphql.js +1 -8
- package/dist/__generated__/TypeTesterStandaloneChangedStylesQuery.graphql.js +1 -8
- package/dist/__generated__/TypeTesterStandaloneQuery.graphql.js +1 -8
- package/dist/__generated__/TypeTesterStyleSelectData_fontStyle.graphql.js +1 -8
- package/dist/__generated__/TypeTesterStyleSelectData_fontStyleData.graphql.js +1 -8
- package/dist/__generated__/TypeTesterToolbar_fontStyle.graphql.js +1 -8
- package/dist/__generated__/TypeTesterVariableAxes_fontStyle.graphql.js +1 -8
- package/dist/__generated__/TypeTester_fontStyle.graphql.js +1 -8
- package/dist/__generated__/TypeTestersChangedStylesQuery.graphql.js +1 -8
- package/dist/__generated__/TypeTestersIDQuery.graphql.js +1 -8
- package/dist/__generated__/TypeTestersRefetchQuery.graphql.js +1 -8
- package/dist/__generated__/TypeTestersSlugQuery.graphql.js +1 -8
- package/dist/__generated__/TypeTesters_collection.graphql.js +3 -11
- package/dist/__generated__/VariableTableAmounts_option.graphql.js +1 -8
- package/dist/__generated__/VariableTableAmounts_variable.graphql.js +1 -8
- package/dist/__generated__/orderTrackingUpdateOrderTrackingMutation.graphql.js +1 -8
- package/dist/__generated__/productState_Query.graphql.js +1 -8
- package/dist/__generated__/productState_bundle.graphql.js +1 -8
- package/dist/__generated__/productState_collection.graphql.js +1 -8
- package/dist/__generated__/productState_collectionBundle.graphql.js +1 -8
- package/dist/__generated__/productState_node.graphql.js +1 -8
- package/dist/__generated__/productState_sku.graphql.js +1 -8
- package/dist/__generated__/useFeaturesData_fontStyle.graphql.js +1 -8
- package/dist/__generated__/useFontStyle_fontStyle.graphql.js +1 -8
- package/dist/__generated__/useTotalStyles_fontCollection.graphql.js +1 -8
- package/dist/__tests__/collectionBundleSelection.test.js +221 -222
- package/dist/__tests__/fontLoader.test.js +24 -26
- package/dist/__tests__/licenseExclusions.test.js +27 -30
- package/dist/__tests__/networkFetch.test.js +66 -0
- package/dist/__tests__/nextAdapter.test.js +447 -0
- package/dist/components/AddToCartBanner/index.js +19 -29
- package/dist/components/BuyButton/index.d.ts +29 -6
- package/dist/components/BuyButton/index.js +98 -57
- package/dist/components/BuyButton/index.server.d.ts +9 -2
- package/dist/components/BuyButton/index.server.js +20 -17
- package/dist/components/BuyingOptions/index.d.ts +9 -0
- package/dist/components/BuyingOptions/index.js +4 -12
- package/dist/components/Cart/AddressFields.d.ts +2 -2
- package/dist/components/Cart/AddressFields.js +25 -35
- package/dist/components/Cart/CartItem/CartItemAdditionalLicenses.d.ts +2 -2
- package/dist/components/Cart/CartItem/CartItemAdditionalLicenses.js +9 -16
- package/dist/components/Cart/CartItem/CartItemLicense.d.ts +2 -2
- package/dist/components/Cart/CartItem/CartItemLicense.js +15 -24
- package/dist/components/Cart/CartItem/CartItemProduct.d.ts +1 -1
- package/dist/components/Cart/CartItem/CartItemProduct.js +16 -23
- package/dist/components/Cart/CartItem/CartItemVariable.d.ts +3 -3
- package/dist/components/Cart/CartItem/CartItemVariable.js +16 -23
- package/dist/components/Cart/CartItem/VariableTextInput.js +13 -21
- package/dist/components/Cart/CartItem/index.d.ts +2 -2
- package/dist/components/Cart/CartItem/index.js +18 -27
- package/dist/components/Cart/CartOrder.d.ts +2 -2
- package/dist/components/Cart/CartOrder.js +102 -113
- package/dist/components/Cart/CartState.d.ts +3 -3
- package/dist/components/Cart/CartState.js +18 -25
- package/dist/components/Cart/CartTotals.d.ts +1 -1
- package/dist/components/Cart/CartTotals.js +31 -38
- package/dist/components/Cart/Checkout.d.ts +3 -3
- package/dist/components/Cart/Checkout.js +109 -118
- package/dist/components/Cart/CheckoutSteps.js +1 -8
- package/dist/components/Cart/CouponCodeInput.js +22 -32
- package/dist/components/Cart/CustomerFields.d.ts +1 -1
- package/dist/components/Cart/CustomerFields.js +21 -31
- package/dist/components/Cart/Download.d.ts +1 -1
- package/dist/components/Cart/Download.js +17 -27
- package/dist/components/Cart/EmptyCart.js +15 -23
- package/dist/components/Cart/IdentityBox.d.ts +1 -1
- package/dist/components/Cart/IdentityBox.js +12 -19
- package/dist/components/Cart/ShareCart.js +24 -32
- package/dist/components/Cart/index.js +13 -21
- package/dist/components/Cart/injectRelayEnvironment.js +5 -13
- package/dist/components/Cart/orderTracking.js +8 -15
- package/dist/components/Cart/types.d.ts +1 -1
- package/dist/components/Cart/types.js +1 -5
- package/dist/components/Cart/utils.js +2 -9
- package/dist/components/CartButton/index.d.ts +5 -8
- package/dist/components/CartButton/index.js +53 -62
- package/dist/components/CharacterViewer/StyleSelect.d.ts +1 -1
- package/dist/components/CharacterViewer/StyleSelect.js +10 -17
- package/dist/components/CharacterViewer/index.d.ts +29 -6
- package/dist/components/CharacterViewer/index.js +150 -102
- package/dist/components/CharacterViewer/index.server.d.ts +9 -2
- package/dist/components/CharacterViewer/index.server.js +21 -17
- package/dist/components/Checkbox/index.js +9 -19
- package/dist/components/CollectionAa/index.d.ts +1 -1
- package/dist/components/CollectionAa/index.js +12 -21
- package/dist/components/ComponentsContext.d.ts +1 -1
- package/dist/components/ComponentsContext.js +4 -10
- package/dist/components/ConfigContext.d.ts +13 -12
- package/dist/components/ConfigContext.js +29 -11
- package/dist/components/ConsentBanner/consent.js +6 -17
- package/dist/components/ConsentBanner/index.js +19 -29
- package/dist/components/CookieNotification/index.d.ts +13 -0
- package/dist/components/CookieNotification/index.js +23 -31
- package/dist/components/CorsErrorModal.js +13 -20
- package/dist/components/CouponText/index.d.ts +1 -1
- package/dist/components/CouponText/index.js +9 -18
- package/dist/components/CustomerLoginForm/index.js +37 -38
- package/dist/components/Family/FamilyList.d.ts +1 -1
- package/dist/components/Family/FamilyList.js +10 -17
- package/dist/components/Family/index.d.ts +1 -1
- package/dist/components/Family/index.js +37 -46
- package/dist/components/FontFamilies/index.js +18 -28
- package/dist/components/FontStyle/index.d.ts +2 -2
- package/dist/components/FontStyle/index.js +8 -15
- package/dist/components/FontdueAdminToolbar/index.d.ts +2 -0
- package/dist/components/FontdueAdminToolbar/index.js +146 -0
- package/dist/components/FontdueContextProvider/index.d.ts +18 -0
- package/dist/components/FontdueContextProvider/index.js +148 -0
- package/dist/components/FontdueProvider/index.d.ts +19 -3
- package/dist/components/FontdueProvider/index.js +75 -13
- package/dist/components/FontdueProvider/index.server.d.ts +6 -3
- package/dist/components/FontdueProvider/index.server.js +37 -21
- package/dist/components/Icons/Align.js +13 -22
- package/dist/components/Icons/ArrowDownRight.js +5 -13
- package/dist/components/Icons/ArrowLeft.js +5 -13
- package/dist/components/Icons/ArrowRight.js +5 -13
- package/dist/components/Icons/CarrotDown.js +5 -13
- package/dist/components/Icons/CarrotUp.js +5 -13
- package/dist/components/Icons/Cart.js +7 -15
- package/dist/components/Icons/CartNew.js +7 -15
- package/dist/components/Icons/Check.js +5 -13
- package/dist/components/Icons/Checkbox.js +5 -13
- package/dist/components/Icons/CheckboxChecked.js +5 -13
- package/dist/components/Icons/CheckboxCrossed.js +6 -14
- package/dist/components/Icons/CircledCheck.js +6 -14
- package/dist/components/Icons/CircledInfo.js +6 -14
- package/dist/components/Icons/CircledMinus.js +6 -14
- package/dist/components/Icons/ColorPicker.js +5 -13
- package/dist/components/Icons/CreditCard.js +6 -14
- package/dist/components/Icons/DownArrow.js +5 -13
- package/dist/components/Icons/DownloadFonts.js +8 -16
- package/dist/components/Icons/FrowningFace.js +8 -16
- package/dist/components/Icons/License.js +5 -13
- package/dist/components/Icons/Receipt.js +8 -16
- package/dist/components/Icons/User.js +5 -13
- package/dist/components/Icons/X.js +5 -13
- package/dist/components/Icons/index.d.ts +23 -23
- package/dist/components/Icons/index.js +23 -167
- package/dist/components/NewsletterSignup/NewsletterSignupElement.d.ts +1 -1
- package/dist/components/NewsletterSignup/NewsletterSignupElement.js +4 -11
- package/dist/components/NewsletterSignup/index.d.ts +11 -6
- package/dist/components/NewsletterSignup/index.js +75 -60
- package/dist/components/NewsletterSignup/index.server.d.ts +7 -2
- package/dist/components/NewsletterSignup/index.server.js +17 -14
- package/dist/components/NodePasswordForm/index.js +25 -33
- package/dist/components/OrderVariableSelection/OrderVariableSelectionRedux.d.ts +1 -1
- package/dist/components/OrderVariableSelection/OrderVariableSelectionRedux.js +18 -27
- package/dist/components/OrderVariableSelection/index.d.ts +1 -1
- package/dist/components/OrderVariableSelection/index.js +28 -36
- package/dist/components/Precart/License.d.ts +1 -1
- package/dist/components/Precart/License.js +22 -30
- package/dist/components/Precart/index.js +64 -74
- package/dist/components/Price/index.d.ts +1 -1
- package/dist/components/Price/index.js +10 -20
- package/dist/components/PriceBar/PriceBarSection.d.ts +1 -1
- package/dist/components/PriceBar/PriceBarSection.js +23 -33
- package/dist/components/PriceBar/index.d.ts +1 -1
- package/dist/components/PriceBar/index.js +13 -23
- package/dist/components/Root/index.d.ts +1 -1
- package/dist/components/Root/index.js +41 -51
- package/dist/components/Root/productState.d.ts +1 -1
- package/dist/components/Root/productState.js +20 -29
- package/dist/components/SKUPrice/index.d.ts +2 -2
- package/dist/components/SKUPrice/index.js +12 -20
- package/dist/components/Select/index.js +9 -17
- package/dist/components/SelectButton/index.d.ts +2 -2
- package/dist/components/SelectButton/index.js +20 -29
- package/dist/components/ServerConfigProvider/index.d.ts +4 -2
- package/dist/components/ServerConfigProvider/index.js +12 -20
- package/dist/components/SpecimenLink/index.js +12 -20
- package/dist/components/StickyNav/index.js +16 -26
- package/dist/components/StoreModal/StoreModalBundleButton.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalBundleButton.js +16 -23
- package/dist/components/StoreModal/StoreModalCart.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalCart.js +29 -38
- package/dist/components/StoreModal/StoreModalCheckout.js +9 -17
- package/dist/components/StoreModal/StoreModalCheckoutContext.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalCheckoutContext.js +6 -12
- package/dist/components/StoreModal/StoreModalContainer.js +25 -35
- package/dist/components/StoreModal/StoreModalDownload.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalDownload.js +14 -24
- package/dist/components/StoreModal/StoreModalFamily.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalFamily.js +14 -23
- package/dist/components/StoreModal/StoreModalFamilyButton.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalFamilyButton.js +23 -30
- package/dist/components/StoreModal/StoreModalIndex.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalIndex.js +9 -17
- package/dist/components/StoreModal/StoreModalIndexItem.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalIndexItem.js +20 -30
- package/dist/components/StoreModal/StoreModalLicenseeIsBillingSelection.js +8 -17
- package/dist/components/StoreModal/StoreModalLoader.js +6 -15
- package/dist/components/StoreModal/StoreModalOrderVariableSelection.d.ts +3 -3
- package/dist/components/StoreModal/StoreModalOrderVariableSelection.js +12 -21
- package/dist/components/StoreModal/StoreModalProduct.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalProduct.js +55 -65
- package/dist/components/StoreModal/StoreModalReviewIdentity.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalReviewIdentity.js +6 -15
- package/dist/components/StoreModal/StoreModalRouter.js +12 -22
- package/dist/components/StoreModal/StoreModalStyleButton.d.ts +1 -1
- package/dist/components/StoreModal/StoreModalStyleButton.js +20 -27
- package/dist/components/StoreModal/index.d.ts +5 -1
- package/dist/components/StoreModal/index.js +24 -20
- package/dist/components/StoreModal/routes.d.ts +4 -4
- package/dist/components/StoreModal/routes.js +18 -26
- package/dist/components/StoreModal/types.js +1 -5
- package/dist/components/StoreModalProductLicenseSelection/LicenseElement.js +12 -22
- package/dist/components/StoreModalProductLicenseSelection/LicenseVariableElement.js +7 -15
- package/dist/components/StoreModalProductLicenseSelection/LicenseVariableRadioElement.js +9 -19
- package/dist/components/StoreModalProductLicenseSelection/StoreModalProductLicense.d.ts +1 -1
- package/dist/components/StoreModalProductLicenseSelection/StoreModalProductLicense.js +19 -28
- package/dist/components/StoreModalProductLicenseSelection/index.d.ts +1 -1
- package/dist/components/StoreModalProductLicenseSelection/index.js +10 -17
- package/dist/components/StoreModalProductSummary/index.d.ts +1 -1
- package/dist/components/StoreModalProductSummary/index.js +45 -55
- package/dist/components/StripeLogo.js +4 -11
- package/dist/components/StripeProvider/index.d.ts +1 -1
- package/dist/components/StripeProvider/index.js +19 -29
- package/dist/components/Switch/index.js +1 -7
- package/dist/components/TestFontsForm/TestFontsFormElement.js +4 -12
- package/dist/components/TestFontsForm/index.d.ts +11 -4
- package/dist/components/TestFontsForm/index.js +80 -65
- package/dist/components/TestFontsForm/index.server.d.ts +7 -2
- package/dist/components/TestFontsForm/index.server.js +17 -14
- package/dist/components/TestModeBanner/index.d.ts +4 -1
- package/dist/components/TestModeBanner/index.js +13 -27
- package/dist/components/TextField/index.js +9 -17
- package/dist/components/ThemeConfig/index.d.ts +3 -5
- package/dist/components/ThemeConfig/index.js +12 -36
- package/dist/components/Tracking/index.js +11 -18
- package/dist/components/TypeTester/TypeTesterAlignButtons.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterAlignButtons.js +8 -16
- package/dist/components/TypeTester/TypeTesterBullet.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterBullet.js +4 -12
- package/dist/components/TypeTester/TypeTesterContent.d.ts +2 -2
- package/dist/components/TypeTester/TypeTesterContent.js +22 -21
- package/dist/components/TypeTester/TypeTesterContext.d.ts +2 -2
- package/dist/components/TypeTester/TypeTesterContext.js +10 -17
- package/dist/components/TypeTester/TypeTesterEditAll.js +10 -20
- package/dist/components/TypeTester/TypeTesterFamilies.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterFamilies.js +26 -37
- package/dist/components/TypeTester/TypeTesterFeatures.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterFeatures.js +28 -37
- package/dist/components/TypeTester/TypeTesterFeaturesButton.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterFeaturesButton.js +20 -30
- package/dist/components/TypeTester/TypeTesterFitter.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterFitter.js +5 -13
- package/dist/components/TypeTester/TypeTesterFloatingToolbar.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterFloatingToolbar.js +19 -28
- package/dist/components/TypeTester/TypeTesterInput.js +12 -22
- package/dist/components/TypeTester/TypeTesterSlider.js +7 -16
- package/dist/components/TypeTester/TypeTesterStandalone.d.ts +20 -6
- package/dist/components/TypeTester/TypeTesterStandalone.js +49 -39
- package/dist/components/TypeTester/TypeTesterStandalone.server.d.ts +6 -2
- package/dist/components/TypeTester/TypeTesterStandalone.server.js +20 -16
- package/dist/components/TypeTester/TypeTesterStandaloneElement.js +7 -16
- package/dist/components/TypeTester/TypeTesterState.d.ts +2 -2
- package/dist/components/TypeTester/TypeTesterState.js +6 -14
- package/dist/components/TypeTester/TypeTesterStyleSelect.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterStyleSelect.js +9 -17
- package/dist/components/TypeTester/TypeTesterStyleSelectData.d.ts +3 -3
- package/dist/components/TypeTester/TypeTesterStyleSelectData.js +31 -40
- package/dist/components/TypeTester/TypeTesterToolbar.d.ts +2 -2
- package/dist/components/TypeTester/TypeTesterToolbar.js +29 -39
- package/dist/components/TypeTester/TypeTesterVariableAxes.d.ts +1 -1
- package/dist/components/TypeTester/TypeTesterVariableAxes.js +16 -24
- package/dist/components/TypeTester/features.js +1 -8
- package/dist/components/TypeTester/index.d.ts +2 -2
- package/dist/components/TypeTester/index.js +45 -55
- package/dist/components/TypeTester/types.js +3 -11
- package/dist/components/TypeTester/useFeaturesData.d.ts +1 -1
- package/dist/components/TypeTester/useFeaturesData.js +7 -15
- package/dist/components/TypeTester/useTypeTesterStyler.d.ts +3 -3
- package/dist/components/TypeTester/useTypeTesterStyler.js +6 -13
- package/dist/components/TypeTesters/TypeTestersElement.js +4 -12
- package/dist/components/TypeTesters/index.d.ts +22 -5
- package/dist/components/TypeTesters/index.js +118 -71
- package/dist/components/TypeTesters/index.server.d.ts +7 -2
- package/dist/components/TypeTesters/index.server.js +20 -17
- package/dist/components/UrlContext.js +6 -12
- package/dist/components/VariableTableAmounts/index.d.ts +2 -2
- package/dist/components/VariableTableAmounts/index.js +9 -16
- package/dist/components/elements/Button/index.js +3 -11
- package/dist/components/elements/EmptyCart/index.js +10 -20
- package/dist/components/elements/StoreModalCartLayout/index.js +10 -18
- package/dist/components/elements/StoreModalContainer/StoreModalContainerContext.js +3 -9
- package/dist/components/elements/StoreModalContainer/index.js +17 -27
- package/dist/components/elements/StoreModalDownloadLayout/index.js +7 -15
- package/dist/components/elements/StoreModalFamily/index.js +8 -16
- package/dist/components/elements/StoreModalFamilyButton/index.d.ts +1 -1
- package/dist/components/elements/StoreModalFamilyButton/index.js +11 -20
- package/dist/components/elements/StoreModalIndexItem/index.js +9 -17
- package/dist/components/elements/StoreModalLicenseeIsBillingIdentityElement.js +20 -29
- package/dist/components/elements/StoreModalLoadingScreen/index.js +4 -12
- package/dist/components/elements/StoreModalPageContainer/index.js +5 -13
- package/dist/components/elements/StoreModalStyleButton/index.d.ts +1 -1
- package/dist/components/elements/StoreModalStyleButton/index.js +10 -18
- package/dist/components/elements/StoreModalUnifiedCheckout.d.ts +2 -2
- package/dist/components/elements/StoreModalUnifiedCheckout.js +114 -122
- package/dist/components/useConsent.js +4 -9
- package/dist/components/useFont.d.ts +1 -1
- package/dist/components/useFont.js +8 -15
- package/dist/components/useFontStyle.d.ts +1 -1
- package/dist/components/useFontStyle.js +12 -20
- package/dist/components/useInterval.js +5 -12
- package/dist/components/useTotalStyles.d.ts +1 -1
- package/dist/components/useTotalStyles.js +4 -12
- package/dist/corsError.js +4 -14
- package/dist/data/unicodeData.js +1 -1
- package/dist/fontLoader.js +3 -11
- package/dist/fontdue.css +127 -12
- package/dist/global-shim.d.ts +1 -0
- package/dist/global-shim.js +8 -0
- package/dist/hooks/useAutofit.js +11 -19
- package/dist/hooks/useLicenseAndOrderVariables.d.ts +2 -2
- package/dist/hooks/useLicenseAndOrderVariables.js +7 -12
- package/dist/hooks/useRefetchOnLicenseChanges.d.ts +1 -1
- package/dist/hooks/useRefetchOnLicenseChanges.js +7 -13
- package/dist/hooks/useResizeObserver.d.ts +11 -0
- package/dist/hooks/useResizeObserver.js +23 -0
- package/dist/hooks.js +9 -16
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/loadFontdueProviderQuery.d.ts +3 -0
- package/dist/loadFontdueProviderQuery.js +10 -0
- package/dist/next/config.d.ts +41 -0
- package/dist/next/config.js +193 -0
- package/dist/next/image-loader.d.ts +7 -0
- package/dist/next/image-loader.js +39 -0
- package/dist/next/index.d.ts +2 -0
- package/dist/next/index.js +10 -0
- package/dist/next/revalidate.d.ts +1 -0
- package/dist/next/revalidate.js +37 -0
- package/dist/next/tenant.d.ts +26 -0
- package/dist/next/tenant.js +169 -0
- package/dist/react-ranger.d.js +0 -1
- package/dist/react-ranger.js +17 -24
- package/dist/reducer.d.ts +5 -5
- package/dist/reducer.js +15 -36
- package/dist/relay/environment.d.ts +1 -0
- package/dist/relay/environment.js +74 -34
- package/dist/relay/loadSerializableQuery.d.ts +3 -1
- package/dist/relay/loadSerializableQuery.js +4 -8
- package/dist/relay/serverConfig.d.ts +16 -0
- package/dist/relay/serverConfig.js +38 -0
- package/dist/relay/useSerializablePreloadedQuery.d.ts +3 -3
- package/dist/relay/useSerializablePreloadedQuery.js +26 -22
- package/dist/retryImport.js +1 -7
- package/dist/scripts/updateUnicodeData.js +0 -2
- package/dist/utils.d.ts +2 -2
- package/dist/utils.js +14 -36
- package/dist/vanilla/FontStyle.js +3 -11
- package/dist/vanilla/TruncatedMarkdown.js +2 -9
- package/dist/vite.d.ts +2 -0
- package/dist/vite.js +141 -0
- package/package.json +13 -9
- package/scripts/addJsExtensionsBabelPlugin.cjs +62 -0
- package/types/globals.d.ts +3 -0
- package/types/next-cache.d.ts +6 -0
- package/types/next-navigation.d.ts +6 -0
- package/vitest.config.ts +4 -0
- package/dist/__generated__/ServerConfigProviderQuery.graphql.d.ts +0 -24
- package/dist/__generated__/ServerConfigProviderQuery.graphql.js +0 -108
- package/dist/__generated__/TestModeBannerQuery.graphql.d.ts +0 -20
- package/dist/__generated__/ThemeConfigQuery.graphql.d.ts +0 -20
- package/dist/__generated__/ThemeConfigQuery.graphql.js +0 -87
- package/dist/components/CartButton/index.server.d.ts +0 -3
- package/dist/components/CartButton/index.server.js +0 -18
- package/dist/components/FontdueProvider/FontdueProviderClientComponent.d.ts +0 -14
- package/dist/components/FontdueProvider/FontdueProviderClientComponent.js +0 -61
- package/dist/components/ThemeConfig/index.server.d.ts +0 -2
- package/dist/components/ThemeConfig/index.server.js +0 -17
- package/fontdue.css +0 -2733
- package/fontdue.css.map +0 -1
package/dist/fontLoader.js
CHANGED
|
@@ -1,17 +1,9 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.isFontLoaded = isFontLoaded;
|
|
7
|
-
exports.loadFont = loadFont;
|
|
8
|
-
exports.selectFontSource = selectFontSource;
|
|
9
1
|
const cache = new Map();
|
|
10
2
|
const loaded = new Set();
|
|
11
|
-
function isFontLoaded(fontFamily) {
|
|
3
|
+
export function isFontLoaded(fontFamily) {
|
|
12
4
|
return loaded.has(fontFamily);
|
|
13
5
|
}
|
|
14
|
-
async function loadFont(fontFamily, sources, verticalMetrics) {
|
|
6
|
+
export async function loadFont(fontFamily, sources, verticalMetrics) {
|
|
15
7
|
// Return cached promise if loading is in progress or complete
|
|
16
8
|
const existing = cache.get(fontFamily);
|
|
17
9
|
if (existing) return existing;
|
|
@@ -42,7 +34,7 @@ async function loadFont(fontFamily, sources, verticalMetrics) {
|
|
|
42
34
|
* `techSupportCheck` is injectable for tests; defaults to
|
|
43
35
|
* `CSS.supports("font-tech(color-<tech>)")`.
|
|
44
36
|
*/
|
|
45
|
-
function selectFontSource(sources) {
|
|
37
|
+
export function selectFontSource(sources) {
|
|
46
38
|
let techSupportCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultTechSupport;
|
|
47
39
|
const valid = sources.filter(s => s != null && s.url != null);
|
|
48
40
|
const supported = valid.filter(s => !s.tech || techSupportCheck(s.tech));
|
package/dist/fontdue.css
CHANGED
|
@@ -942,14 +942,6 @@ div[data-component=TypeTesters] {
|
|
|
942
942
|
border-color: var(--button_hover_border_color, transparent);
|
|
943
943
|
}
|
|
944
944
|
|
|
945
|
-
:root {
|
|
946
|
-
--section_spacing: 60px;
|
|
947
|
-
}
|
|
948
|
-
|
|
949
|
-
.price {
|
|
950
|
-
font-variant-numeric: tabular-nums;
|
|
951
|
-
}
|
|
952
|
-
|
|
953
945
|
.character-viewer {
|
|
954
946
|
--size: calc(var(--monitor-width) * 1 / 2);
|
|
955
947
|
--half-gap: calc(var(--line-gap) / 2);
|
|
@@ -1199,10 +1191,6 @@ input:checked + .checkbox__icon {
|
|
|
1199
1191
|
margin-left: 0;
|
|
1200
1192
|
}
|
|
1201
1193
|
|
|
1202
|
-
body[data-fontdue-store-modal=open] {
|
|
1203
|
-
overflow: hidden;
|
|
1204
|
-
}
|
|
1205
|
-
|
|
1206
1194
|
.button {
|
|
1207
1195
|
background: none;
|
|
1208
1196
|
color: inherit;
|
|
@@ -2380,6 +2368,10 @@ body[data-fontdue-store-modal=open] {
|
|
|
2380
2368
|
align-self: flex-end;
|
|
2381
2369
|
}
|
|
2382
2370
|
}
|
|
2371
|
+
body[data-fontdue-store-modal=open] {
|
|
2372
|
+
overflow: hidden;
|
|
2373
|
+
}
|
|
2374
|
+
|
|
2383
2375
|
.empty-cart__container {
|
|
2384
2376
|
padding: 40px 0;
|
|
2385
2377
|
}
|
|
@@ -3324,6 +3316,129 @@ textarea.text-field__input {
|
|
|
3324
3316
|
display: block;
|
|
3325
3317
|
}
|
|
3326
3318
|
|
|
3319
|
+
.fontdue-admin-toolbar {
|
|
3320
|
+
position: fixed;
|
|
3321
|
+
right: 16px;
|
|
3322
|
+
bottom: 16px;
|
|
3323
|
+
z-index: 2147483000;
|
|
3324
|
+
font-family: inherit;
|
|
3325
|
+
font-size: 13px;
|
|
3326
|
+
line-height: 1.45;
|
|
3327
|
+
color: #fff;
|
|
3328
|
+
--fdat-surface: #0a0a0a;
|
|
3329
|
+
--fdat-border: rgba(255, 255, 255, 0.16);
|
|
3330
|
+
--fdat-muted: rgba(255, 255, 255, 0.5);
|
|
3331
|
+
}
|
|
3332
|
+
.fontdue-admin-toolbar * {
|
|
3333
|
+
box-sizing: border-box;
|
|
3334
|
+
}
|
|
3335
|
+
|
|
3336
|
+
.fontdue-admin-toolbar__button {
|
|
3337
|
+
background: none;
|
|
3338
|
+
color: inherit;
|
|
3339
|
+
font: inherit;
|
|
3340
|
+
text-decoration: inherit;
|
|
3341
|
+
text-align: inherit;
|
|
3342
|
+
border: 0;
|
|
3343
|
+
border-radius: 0;
|
|
3344
|
+
padding: 0;
|
|
3345
|
+
margin: 0;
|
|
3346
|
+
appearance: none;
|
|
3347
|
+
text-transform: inherit;
|
|
3348
|
+
}
|
|
3349
|
+
.fontdue-admin-toolbar__button:active, .fontdue-admin-toolbar__button:focus {
|
|
3350
|
+
outline: none;
|
|
3351
|
+
}
|
|
3352
|
+
.fontdue-admin-toolbar__button:not(:disabled) {
|
|
3353
|
+
cursor: pointer;
|
|
3354
|
+
}
|
|
3355
|
+
.fontdue-admin-toolbar__button {
|
|
3356
|
+
display: inline-flex;
|
|
3357
|
+
align-items: center;
|
|
3358
|
+
gap: 8px;
|
|
3359
|
+
padding: 8px 12px;
|
|
3360
|
+
font-size: 13px;
|
|
3361
|
+
background: var(--fdat-surface);
|
|
3362
|
+
color: #fff;
|
|
3363
|
+
border: 1px solid var(--fdat-border);
|
|
3364
|
+
}
|
|
3365
|
+
.fontdue-admin-toolbar__button:hover {
|
|
3366
|
+
border-color: rgba(255, 255, 255, 0.4);
|
|
3367
|
+
}
|
|
3368
|
+
.fontdue-admin-toolbar__button:focus-visible {
|
|
3369
|
+
outline: 1px solid #fff;
|
|
3370
|
+
outline-offset: 1px;
|
|
3371
|
+
}
|
|
3372
|
+
|
|
3373
|
+
.fontdue-admin-toolbar__dot {
|
|
3374
|
+
width: 6px;
|
|
3375
|
+
height: 6px;
|
|
3376
|
+
background: var(--fdat-muted);
|
|
3377
|
+
}
|
|
3378
|
+
.fontdue-admin-toolbar[data-previewing=true] .fontdue-admin-toolbar__dot {
|
|
3379
|
+
background: #fff;
|
|
3380
|
+
}
|
|
3381
|
+
|
|
3382
|
+
.fontdue-admin-toolbar__panel {
|
|
3383
|
+
width: 248px;
|
|
3384
|
+
margin-bottom: 8px;
|
|
3385
|
+
padding: 14px;
|
|
3386
|
+
background: var(--fdat-surface);
|
|
3387
|
+
border: 1px solid var(--fdat-border);
|
|
3388
|
+
}
|
|
3389
|
+
|
|
3390
|
+
.fontdue-admin-toolbar__header {
|
|
3391
|
+
display: flex;
|
|
3392
|
+
justify-content: space-between;
|
|
3393
|
+
align-items: baseline;
|
|
3394
|
+
gap: 10px;
|
|
3395
|
+
margin-bottom: 12px;
|
|
3396
|
+
}
|
|
3397
|
+
|
|
3398
|
+
.fontdue-admin-toolbar__title {
|
|
3399
|
+
text-transform: uppercase;
|
|
3400
|
+
letter-spacing: 0.12em;
|
|
3401
|
+
font-size: 11px;
|
|
3402
|
+
}
|
|
3403
|
+
|
|
3404
|
+
.fontdue-admin-toolbar__user {
|
|
3405
|
+
color: var(--fdat-muted);
|
|
3406
|
+
font-size: 11px;
|
|
3407
|
+
}
|
|
3408
|
+
|
|
3409
|
+
.fontdue-admin-toolbar__toggle {
|
|
3410
|
+
display: flex;
|
|
3411
|
+
align-items: center;
|
|
3412
|
+
gap: 8px;
|
|
3413
|
+
cursor: pointer;
|
|
3414
|
+
}
|
|
3415
|
+
.fontdue-admin-toolbar__toggle input {
|
|
3416
|
+
margin: 0;
|
|
3417
|
+
accent-color: #fff;
|
|
3418
|
+
cursor: pointer;
|
|
3419
|
+
}
|
|
3420
|
+
|
|
3421
|
+
.fontdue-admin-toolbar__hint {
|
|
3422
|
+
margin: 10px 0 0;
|
|
3423
|
+
color: var(--fdat-muted);
|
|
3424
|
+
font-size: 12px;
|
|
3425
|
+
}
|
|
3426
|
+
|
|
3427
|
+
.fontdue-admin-toolbar__error {
|
|
3428
|
+
margin: 10px 0 0;
|
|
3429
|
+
color: #ff6b6b;
|
|
3430
|
+
font-size: 12px;
|
|
3431
|
+
word-break: break-word;
|
|
3432
|
+
}
|
|
3433
|
+
|
|
3434
|
+
:root {
|
|
3435
|
+
--section_spacing: 60px;
|
|
3436
|
+
}
|
|
3437
|
+
|
|
3438
|
+
.price {
|
|
3439
|
+
font-variant-numeric: tabular-nums;
|
|
3440
|
+
}
|
|
3441
|
+
|
|
3327
3442
|
fontdue-test-fonts-form,
|
|
3328
3443
|
fontdue-newsletter-signup,
|
|
3329
3444
|
fontdue-customer-login-form {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// fbjs (transitive via draft-js) references Node's `global` at module init.
|
|
2
|
+
// Browsers don't define `global`, so hydration blows up with a ReferenceError.
|
|
3
|
+
// ESM evaluates imports in source order, so importing this first ensures the
|
|
4
|
+
// alias is in place before fbjs/setImmediate evaluates.
|
|
5
|
+
if (typeof globalThis.global === 'undefined') {
|
|
6
|
+
globalThis.global = globalThis;
|
|
7
|
+
}
|
|
8
|
+
export {};
|
package/dist/hooks/useAutofit.js
CHANGED
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _react = require("react");
|
|
8
|
-
var _resizeObserver = _interopRequireDefault(require("@react-hook/resize-observer"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
1
|
+
import { useRef, useState, useLayoutEffect } from 'react';
|
|
2
|
+
import useResizeObserver from './useResizeObserver.js';
|
|
10
3
|
const REF_SIZE = 100;
|
|
11
4
|
|
|
12
5
|
// Canvas measurement (fast path)
|
|
@@ -63,26 +56,26 @@ const useAutofit = _ref => {
|
|
|
63
56
|
enabled = true,
|
|
64
57
|
padding = 0
|
|
65
58
|
} = _ref;
|
|
66
|
-
const ref =
|
|
67
|
-
const [fontSize, setFontSize] =
|
|
68
|
-
const [containerWidth, setContainerWidth] =
|
|
69
|
-
const [fontVersion, setFontVersion] =
|
|
70
|
-
const [measured, setMeasured] =
|
|
71
|
-
(
|
|
59
|
+
const ref = useRef(null);
|
|
60
|
+
const [fontSize, setFontSize] = useState(externalFontSize);
|
|
61
|
+
const [containerWidth, setContainerWidth] = useState(0);
|
|
62
|
+
const [fontVersion, setFontVersion] = useState(0);
|
|
63
|
+
const [measured, setMeasured] = useState(false);
|
|
64
|
+
useResizeObserver(ref, entry => {
|
|
72
65
|
setContainerWidth(entry.contentRect.width);
|
|
73
66
|
});
|
|
74
67
|
|
|
75
68
|
// Trigger re-measurement when the font becomes available.
|
|
76
69
|
// If already loaded (e.g. parent waited for font), the promise
|
|
77
70
|
// resolves as a microtask and the re-measurement is near-instant.
|
|
78
|
-
|
|
71
|
+
useLayoutEffect(() => {
|
|
79
72
|
if (!enabled || !fontFamily) return;
|
|
80
73
|
const fontString = `${fontStyle} ${fontWeight} ${REF_SIZE}px ${fontFamily}`;
|
|
81
74
|
document.fonts.load(fontString).then(() => {
|
|
82
75
|
setFontVersion(v => v + 1);
|
|
83
76
|
});
|
|
84
77
|
}, [fontFamily, fontWeight, fontStyle, enabled]);
|
|
85
|
-
|
|
78
|
+
useLayoutEffect(() => {
|
|
86
79
|
if (!enabled) return;
|
|
87
80
|
const availableWidth = containerWidth - padding;
|
|
88
81
|
if (availableWidth <= 0 || !text) return;
|
|
@@ -111,5 +104,4 @@ const useAutofit = _ref => {
|
|
|
111
104
|
ready: measured
|
|
112
105
|
};
|
|
113
106
|
};
|
|
114
|
-
|
|
115
|
-
exports.default = _default;
|
|
107
|
+
export default useAutofit;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { LicenseOptionsSpec } from '../__generated__/StoreModalProductRefetchQuery.graphql';
|
|
1
|
+
import { LicenseOptionsSpec } from '../__generated__/StoreModalProductRefetchQuery.graphql.js';
|
|
2
2
|
export declare function useLicenseAndOrderVariables(): {
|
|
3
3
|
licenseOptionsSpecs: readonly (LicenseOptionsSpec | null)[];
|
|
4
|
-
orderVariableSelections: import("../reducer").OrderVariableSelectionState[];
|
|
4
|
+
orderVariableSelections: import("../reducer.js").OrderVariableSelectionState[];
|
|
5
5
|
};
|
|
@@ -1,20 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
});
|
|
6
|
-
exports.useLicenseAndOrderVariables = useLicenseAndOrderVariables;
|
|
7
|
-
var _react = require("react");
|
|
8
|
-
var _reactRedux = require("react-redux");
|
|
9
|
-
function useLicenseAndOrderVariables() {
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import { useSelector } from 'react-redux';
|
|
3
|
+
import { shallowEqual } from 'react-redux';
|
|
4
|
+
export function useLicenseAndOrderVariables() {
|
|
10
5
|
// Select raw data from Redux with shallow equality check
|
|
11
|
-
const licenseOptions =
|
|
6
|
+
const licenseOptions = useSelector(state => state.licenseOptions, shallowEqual);
|
|
12
7
|
|
|
13
8
|
// Select order variables from Redux
|
|
14
|
-
const orderVariableSelections =
|
|
9
|
+
const orderVariableSelections = useSelector(state => state.orderVariableSelections, shallowEqual);
|
|
15
10
|
|
|
16
11
|
// Memoize the transformed license options data
|
|
17
|
-
const licenseOptionsSpecs =
|
|
12
|
+
const licenseOptionsSpecs = useMemo(() => licenseOptions.length > 0 ? licenseOptions.map(spec => ({
|
|
18
13
|
licenseId: spec.licenseId,
|
|
19
14
|
licenseOptionIds: Object.values(spec.licenseOptions).filter(Boolean)
|
|
20
15
|
})) : [], [licenseOptions]);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Environment, GraphQLTaggedNode } from 'relay-runtime';
|
|
2
|
-
import { LicenseOptionsSpec, OrderVariableSelectionInput } from '../__generated__/StoreModalProductRefetchQuery.graphql';
|
|
2
|
+
import { LicenseOptionsSpec, OrderVariableSelectionInput } from '../__generated__/StoreModalProductRefetchQuery.graphql.js';
|
|
3
3
|
type RefetchFn = (variables: {
|
|
4
4
|
licenseOptions: ReadonlyArray<LicenseOptionsSpec | null>;
|
|
5
5
|
orderVariables: ReadonlyArray<OrderVariableSelectionInput>;
|
|
@@ -1,19 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useRefetchOnLicenseChanges = useRefetchOnLicenseChanges;
|
|
7
|
-
var _react = require("react");
|
|
8
|
-
var _relayRuntime = require("relay-runtime");
|
|
9
|
-
var _useLicenseAndOrderVariables = require("./useLicenseAndOrderVariables");
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { fetchQuery } from 'relay-runtime';
|
|
3
|
+
import { useLicenseAndOrderVariables } from './useLicenseAndOrderVariables.js';
|
|
10
4
|
/**
|
|
11
5
|
* Custom hook to handle refetching data when license options or order variables change.
|
|
12
6
|
* Uses a two-step process to prevent UI flickering:
|
|
13
7
|
* 1. Fetches new data into the store
|
|
14
8
|
* 2. Updates the component with a store-only policy
|
|
15
9
|
*/
|
|
16
|
-
function useRefetchOnLicenseChanges(_ref) {
|
|
10
|
+
export function useRefetchOnLicenseChanges(_ref) {
|
|
17
11
|
let {
|
|
18
12
|
environment,
|
|
19
13
|
refetch,
|
|
@@ -23,12 +17,12 @@ function useRefetchOnLicenseChanges(_ref) {
|
|
|
23
17
|
const {
|
|
24
18
|
licenseOptionsSpecs,
|
|
25
19
|
orderVariableSelections
|
|
26
|
-
} =
|
|
27
|
-
|
|
20
|
+
} = useLicenseAndOrderVariables();
|
|
21
|
+
useEffect(() => {
|
|
28
22
|
let mounted = true;
|
|
29
23
|
|
|
30
24
|
// First fetch the data into the store
|
|
31
|
-
const subscription =
|
|
25
|
+
const subscription = fetchQuery(environment, query, {
|
|
32
26
|
...variables,
|
|
33
27
|
licenseOptions: licenseOptionsSpecs,
|
|
34
28
|
orderVariables: orderVariableSelections
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
type ResizeObserverCtor = new (callback: ResizeObserverCallback) => {
|
|
2
|
+
observe: (target: Element) => void;
|
|
3
|
+
unobserve?: (target: Element) => void;
|
|
4
|
+
disconnect?: () => void;
|
|
5
|
+
};
|
|
6
|
+
export type UseResizeObserverOptions = {
|
|
7
|
+
polyfill?: ResizeObserverCtor | null;
|
|
8
|
+
};
|
|
9
|
+
export type UseResizeObserverCallback = (entry: ResizeObserverEntry, observer: ResizeObserver) => void;
|
|
10
|
+
export default function useResizeObserver<T extends Element>(target: React.RefObject<T | null> | T | null, callback: UseResizeObserverCallback, options?: UseResizeObserverOptions): void;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { useEffect, useRef } from 'react';
|
|
2
|
+
|
|
3
|
+
// Loose constructor type so the SSR no-op polyfills used as fallbacks (which
|
|
4
|
+
// don't implement `disconnect`) still type-check.
|
|
5
|
+
|
|
6
|
+
export default function useResizeObserver(target, callback) {
|
|
7
|
+
let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
8
|
+
const callbackRef = useRef(callback);
|
|
9
|
+
callbackRef.current = callback;
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
const element = target && 'current' in target ? target.current : target;
|
|
12
|
+
if (!element) return;
|
|
13
|
+
const Ctor = options.polyfill ?? (typeof ResizeObserver !== 'undefined' ? ResizeObserver : null);
|
|
14
|
+
if (!Ctor) return;
|
|
15
|
+
const observer = new Ctor(entries => {
|
|
16
|
+
for (const entry of entries) callbackRef.current(entry, observer);
|
|
17
|
+
});
|
|
18
|
+
observer.observe(element);
|
|
19
|
+
return () => {
|
|
20
|
+
if (observer.disconnect) observer.disconnect();else if (observer.unobserve) observer.unobserve(element);
|
|
21
|
+
};
|
|
22
|
+
}, [target, options.polyfill]);
|
|
23
|
+
}
|
package/dist/hooks.js
CHANGED
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import { useRef, useEffect, useState } from 'react';
|
|
2
2
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useDebouncedValue = useDebouncedValue;
|
|
7
|
-
exports.useNewPortalElement = void 0;
|
|
8
|
-
var _react = require("react");
|
|
9
3
|
// Returns a copy of `value` that only updates `delay` ms after `value` stops
|
|
10
4
|
// changing. Useful for trailing UI that shouldn't react to rapid changes mid
|
|
11
5
|
// interaction (e.g. the variable-font instance name while a slider is dragged).
|
|
@@ -16,9 +10,9 @@ var _react = require("react");
|
|
|
16
10
|
// immediately (no delay). This distinguishes a discrete change — e.g. switching
|
|
17
11
|
// to a different font — from a continuous one (dragging a slider), so the
|
|
18
12
|
// former isn't smoothed and left briefly out of sync with the rest of the UI.
|
|
19
|
-
function useDebouncedValue(value, delay, resetKey) {
|
|
20
|
-
const [debounced, setDebounced] =
|
|
21
|
-
const resetKeyRef =
|
|
13
|
+
export function useDebouncedValue(value, delay, resetKey) {
|
|
14
|
+
const [debounced, setDebounced] = useState(value);
|
|
15
|
+
const resetKeyRef = useRef(resetKey);
|
|
22
16
|
|
|
23
17
|
// Adjust state during render (no extra committed frame) when the reset key
|
|
24
18
|
// changes, so the snap is synchronous with the change that triggered it.
|
|
@@ -26,20 +20,19 @@ function useDebouncedValue(value, delay, resetKey) {
|
|
|
26
20
|
resetKeyRef.current = resetKey;
|
|
27
21
|
if (debounced !== value) setDebounced(value);
|
|
28
22
|
}
|
|
29
|
-
|
|
23
|
+
useEffect(() => {
|
|
30
24
|
const timer = setTimeout(() => setDebounced(value), delay);
|
|
31
25
|
return () => clearTimeout(timer);
|
|
32
26
|
}, [value, delay]);
|
|
33
27
|
return debounced;
|
|
34
28
|
}
|
|
35
|
-
const useNewPortalElement = () => {
|
|
36
|
-
const elementRef =
|
|
37
|
-
|
|
29
|
+
export const useNewPortalElement = () => {
|
|
30
|
+
const elementRef = useRef(document.createElement('div'));
|
|
31
|
+
useEffect(() => {
|
|
38
32
|
document.body.appendChild(elementRef.current);
|
|
39
33
|
return () => {
|
|
40
34
|
elementRef.current.remove();
|
|
41
35
|
};
|
|
42
36
|
}, []);
|
|
43
37
|
return elementRef;
|
|
44
|
-
};
|
|
45
|
-
exports.useNewPortalElement = useNewPortalElement;
|
|
38
|
+
};
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type { Config } from './components/ConfigContext.js';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import loadSerializableQuery from './relay/loadSerializableQuery.js';
|
|
2
|
+
import FontdueProviderQueryNode from './__generated__/FontdueProviderQuery.graphql.js';
|
|
3
|
+
// Fetches the data aux UI (theme custom properties, test-mode flag) needs to
|
|
4
|
+
// render synchronously on the server and on hydration. Pass the result to
|
|
5
|
+
// `<FontdueProvider preloadedQuery={…}>` in your layout. Without it, aux UI
|
|
6
|
+
// falls back to lazy-fetching on first client render — which causes a visible
|
|
7
|
+
// theming flash because `ThemeConfig` injects CSS variables.
|
|
8
|
+
export default async function loadFontdueProviderQuery() {
|
|
9
|
+
return loadSerializableQuery(FontdueProviderQueryNode, {});
|
|
10
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
interface RouteHas {
|
|
2
|
+
type: 'header' | 'query' | 'cookie' | 'host';
|
|
3
|
+
key?: string;
|
|
4
|
+
value?: string;
|
|
5
|
+
}
|
|
6
|
+
interface Rewrite {
|
|
7
|
+
source: string;
|
|
8
|
+
destination: string;
|
|
9
|
+
has?: RouteHas[];
|
|
10
|
+
missing?: RouteHas[];
|
|
11
|
+
}
|
|
12
|
+
interface RewriteGroups {
|
|
13
|
+
beforeFiles: Rewrite[];
|
|
14
|
+
afterFiles: Rewrite[];
|
|
15
|
+
fallback: Rewrite[];
|
|
16
|
+
}
|
|
17
|
+
type RewritesResult = Rewrite[] | Partial<RewriteGroups>;
|
|
18
|
+
interface NextConfigLike {
|
|
19
|
+
rewrites?: () => Promise<RewritesResult> | RewritesResult;
|
|
20
|
+
images?: {
|
|
21
|
+
remotePatterns?: unknown[];
|
|
22
|
+
[key: string]: unknown;
|
|
23
|
+
};
|
|
24
|
+
[key: string]: unknown;
|
|
25
|
+
}
|
|
26
|
+
export declare function tenantRewrites(): Rewrite[];
|
|
27
|
+
export declare function withFontdue<C extends NextConfigLike>(nextConfig?: C): C & {
|
|
28
|
+
rewrites(): Promise<RewriteGroups>;
|
|
29
|
+
images: {
|
|
30
|
+
remotePatterns: unknown[];
|
|
31
|
+
dangerouslyAllowSVG: boolean;
|
|
32
|
+
loader: "custom";
|
|
33
|
+
loaderFile: string;
|
|
34
|
+
} | {
|
|
35
|
+
remotePatterns: unknown[];
|
|
36
|
+
dangerouslyAllowSVG: boolean;
|
|
37
|
+
unoptimized: boolean;
|
|
38
|
+
};
|
|
39
|
+
htmlLimitedBots: RegExp;
|
|
40
|
+
};
|
|
41
|
+
export {};
|