@jetshop/core 5.17.0-alpha.8ede57ab → 5.17.0-alpha.8f38c56f
Sign up to get free protection for your applications and to get access to all the features.
- package/ChannelHandler/ChannelHandler.d.ts +53 -0
- package/ChannelHandler/ChannelHandler.js +114 -0
- package/ChannelHandler/ChannelHandler.js.map +1 -0
- package/ChannelHandler/channelUtils.d.ts +73 -0
- package/ChannelHandler/channelUtils.js +313 -0
- package/ChannelHandler/channelUtils.js.map +1 -0
- package/ChannelHandler/redirectUtils.d.ts +4 -0
- package/ChannelHandler/redirectUtils.js +50 -0
- package/ChannelHandler/redirectUtils.js.map +1 -0
- package/ChannelHandler/redirectUtils.test.js +5 -5
- package/ChannelHandler/redirectUtilsGroupedChannels.test.js +5 -5
- package/analytics/Analytics.d.ts +18 -0
- package/analytics/Analytics.js +57 -0
- package/analytics/Analytics.js.map +1 -0
- package/analytics/AnalyticsProvider.d.ts +54 -0
- package/analytics/AnalyticsProvider.js +229 -0
- package/analytics/AnalyticsProvider.js.map +1 -0
- package/analytics/deprecatedTracking.d.ts +17 -0
- package/analytics/deprecatedTracking.js +33 -0
- package/analytics/deprecatedTracking.js.map +1 -0
- package/analytics/integrations/ga4.d.ts +28 -0
- package/analytics/integrations/ga4.js +189 -0
- package/analytics/integrations/ga4.js.map +1 -0
- package/analytics/integrations/gtag/gtag.d.ts +8 -0
- package/analytics/integrations/gtag/gtag.js +209 -0
- package/analytics/integrations/gtag/gtag.js.map +1 -0
- package/analytics/integrations/gtag/index.d.ts +1 -0
- package/analytics/integrations/gtag/index.js +2 -0
- package/analytics/integrations/gtag/index.js.map +1 -0
- package/analytics/integrations/gtm/gtm.d.ts +12 -0
- package/analytics/integrations/gtm/gtm.js +227 -0
- package/analytics/integrations/gtm/gtm.js.map +1 -0
- package/analytics/integrations/gtm/index.d.ts +1 -0
- package/analytics/integrations/gtm/index.js +2 -0
- package/analytics/integrations/gtm/index.js.map +1 -0
- package/analytics/integrations/gtm/referrerModifier.d.ts +1 -0
- package/analytics/integrations/gtm/referrerModifier.js +62 -0
- package/analytics/integrations/gtm/referrerModifier.js.map +1 -0
- package/analytics/integrations/releware/index.d.ts +3 -0
- package/analytics/integrations/releware/index.js +39 -0
- package/analytics/integrations/releware/index.js.map +1 -0
- package/analytics/integrations/unslugify.d.ts +1 -0
- package/analytics/integrations/unslugify.js +16 -0
- package/analytics/integrations/unslugify.js.map +1 -0
- package/analytics/trackerRegistry.d.ts +113 -0
- package/analytics/trackerRegistry.js +222 -0
- package/analytics/trackerRegistry.js.map +1 -0
- package/analytics/tracking.d.ts +14 -0
- package/analytics/tracking.js +72 -0
- package/analytics/tracking.js.map +1 -0
- package/analytics/utils/breadcrumbsWithoutProduct.d.ts +1 -0
- package/analytics/utils/breadcrumbsWithoutProduct.js +9 -0
- package/analytics/utils/breadcrumbsWithoutProduct.js.map +1 -0
- package/analytics/utils/script.d.ts +8 -0
- package/analytics/utils/script.js +40 -0
- package/analytics/utils/script.js.map +1 -0
- package/analytics/webVitals.d.ts +5 -0
- package/analytics/webVitals.js +39 -0
- package/analytics/webVitals.js.map +1 -0
- package/boot/AuthHandler.d.ts +14 -0
- package/boot/AuthHandler.js +39 -0
- package/boot/AuthHandler.js.map +1 -0
- package/boot/NetworkStatusNotifier.d.ts +2 -0
- package/boot/NetworkStatusNotifier.js +4 -0
- package/boot/NetworkStatusNotifier.js.map +1 -0
- package/boot/PreviewHandler.d.ts +7 -0
- package/boot/PreviewHandler.js +14 -0
- package/boot/PreviewHandler.js.map +1 -0
- package/boot/SharedTree.d.ts +25 -0
- package/boot/SharedTree.js +29 -0
- package/boot/SharedTree.js.map +1 -0
- package/boot/addMissingConfig.d.ts +5 -0
- package/boot/addMissingConfig.js +34 -0
- package/boot/addMissingConfig.js.map +1 -0
- package/boot/apollo.d.ts +20 -0
- package/boot/apollo.js +202 -0
- package/boot/apollo.js.map +1 -0
- package/boot/client/entrypoint.d.ts +1 -0
- package/boot/client/entrypoint.js +5 -0
- package/boot/client/entrypoint.js.map +1 -0
- package/boot/client/index.d.ts +1 -0
- package/boot/client/index.js +2 -0
- package/boot/client/index.js.map +1 -0
- package/boot/client/startClient.d.ts +4 -0
- package/boot/client/startClient.js +153 -0
- package/boot/client/startClient.js.map +1 -0
- package/boot/server/IntervalQuery.d.ts +32 -0
- package/boot/server/IntervalQuery.js +95 -0
- package/boot/server/IntervalQuery.js.map +1 -0
- package/boot/server/IntervalQuery.test.js +9 -13
- package/boot/server/PersistedApolloClient.d.ts +20 -0
- package/boot/server/PersistedApolloClient.js +40 -0
- package/boot/server/PersistedApolloClient.js.map +1 -0
- package/boot/server/PersistedApolloClient.test.js +8 -7
- package/boot/server/asyncErrorHandler.d.ts +3 -0
- package/boot/server/asyncErrorHandler.js +5 -0
- package/boot/server/asyncErrorHandler.js.map +1 -0
- package/boot/server/breakpointMiddleware.d.ts +3 -0
- package/boot/server/breakpointMiddleware.js +10 -0
- package/boot/server/breakpointMiddleware.js.map +1 -0
- package/boot/server/createApolloServer.d.ts +29 -0
- package/boot/server/createApolloServer.js +144 -0
- package/boot/server/createApolloServer.js.map +1 -0
- package/boot/server/createDevServer.d.ts +14 -0
- package/boot/server/createDevServer.js +30 -0
- package/boot/server/createDevServer.js.map +1 -0
- package/boot/server/createRenderer.d.ts +28 -0
- package/boot/server/createRenderer.js +239 -0
- package/boot/server/createRenderer.js.map +1 -0
- package/boot/server/createServer.d.ts +14 -0
- package/boot/server/createServer.js +42 -0
- package/boot/server/createServer.js.map +1 -0
- package/boot/server/entrypoint.d.ts +1 -0
- package/boot/server/entrypoint.js +39 -0
- package/boot/server/entrypoint.js.map +1 -0
- package/boot/server/getPrefetchFiles.d.ts +10 -0
- package/boot/server/getPrefetchFiles.js +20 -0
- package/boot/server/getPrefetchFiles.js.map +1 -0
- package/boot/server/getPreloadAssets.d.ts +10 -0
- package/boot/server/getPreloadAssets.js +18 -0
- package/boot/server/getPreloadAssets.js.map +1 -0
- package/boot/server/index.d.ts +9 -0
- package/boot/server/index.js +123 -0
- package/boot/server/index.js.map +1 -0
- package/boot/server/listen.d.ts +13 -0
- package/boot/server/listen.js +17 -0
- package/boot/server/listen.js.map +1 -0
- package/boot/server/persistedQueries/PersistedClient.d.ts +22 -0
- package/boot/server/persistedQueries/PersistedClient.js +58 -0
- package/boot/server/persistedQueries/PersistedClient.js.map +1 -0
- package/boot/server/persistedQueries/__tests__/getPersistedQueriesForRequest.test.js +1 -1
- package/boot/server/persistedQueries/getPersistedQueriesForRequest.d.ts +3 -0
- package/boot/server/persistedQueries/getPersistedQueriesForRequest.js +27 -0
- package/boot/server/persistedQueries/getPersistedQueriesForRequest.js.map +1 -0
- package/boot/server/salesSource.d.ts +8 -0
- package/boot/server/salesSource.js +16 -0
- package/boot/server/salesSource.js.map +1 -0
- package/boot/utils/createIntOptions.d.ts +6 -0
- package/boot/utils/createIntOptions.js +19 -0
- package/boot/utils/createIntOptions.js.map +1 -0
- package/boot/utils/queryLoggingMiddleware.d.ts +2 -0
- package/boot/utils/queryLoggingMiddleware.js +15 -0
- package/boot/utils/queryLoggingMiddleware.js.map +1 -0
- package/boot/utils/uid.d.ts +3 -0
- package/boot/utils/uid.js +20 -0
- package/boot/utils/uid.js.map +1 -0
- package/cart/AddToCartFormik.d.ts +42 -0
- package/cart/AddToCartFormik.js +77 -0
- package/cart/AddToCartFormik.js.map +1 -0
- package/cart/useAddToCart.d.ts +88 -0
- package/cart/useAddToCart.js +119 -0
- package/cart/useAddToCart.js.map +1 -0
- package/cart/useCart.d.ts +0 -0
- package/cart/useCart.js +1 -0
- package/cart/useCart.js.map +1 -0
- package/components/Auth/CustomerFormContainer.d.ts +0 -0
- package/components/Auth/CustomerFormContainer.js +1 -0
- package/components/Auth/CustomerFormContainer.js.map +1 -0
- package/components/Auth/CustomerUpdateForm.d.ts +32 -0
- package/components/Auth/CustomerUpdateForm.js +122 -0
- package/components/Auth/CustomerUpdateForm.js.map +1 -0
- package/components/Auth/ForgotPasswordProvider.d.ts +69 -0
- package/components/Auth/ForgotPasswordProvider.js +57 -0
- package/components/Auth/ForgotPasswordProvider.js.map +1 -0
- package/components/Auth/ResetPasswordProvider.d.ts +90 -0
- package/components/Auth/ResetPasswordProvider.js +78 -0
- package/components/Auth/ResetPasswordProvider.js.map +1 -0
- package/components/Auth/SSN.d.ts +12 -0
- package/components/Auth/SSN.js +35 -0
- package/components/Auth/SSN.js.map +1 -0
- package/components/Auth/SSNLookupContainer.d.ts +15 -0
- package/components/Auth/SSNLookupContainer.js +20 -0
- package/components/Auth/SSNLookupContainer.js.map +1 -0
- package/components/Auth/SignupFormContainer.d.ts +16 -0
- package/components/Auth/SignupFormContainer.js +82 -0
- package/components/Auth/SignupFormContainer.js.map +1 -0
- package/components/Auth/UpdatePasswordForm.d.ts +44 -0
- package/components/Auth/UpdatePasswordForm.js +98 -0
- package/components/Auth/UpdatePasswordForm.js.map +1 -0
- package/components/Auth/formFieldsFromSettings.d.ts +65 -0
- package/components/Auth/formFieldsFromSettings.js +77 -0
- package/components/Auth/formFieldsFromSettings.js.map +1 -0
- package/components/Auth/formatSignupInput.d.ts +8 -0
- package/components/Auth/formatSignupInput.js +43 -0
- package/components/Auth/formatSignupInput.js.map +1 -0
- package/components/Auth/signup-context.d.ts +36 -0
- package/components/Auth/signup-context.js +71 -0
- package/components/Auth/signup-context.js.map +1 -0
- package/components/Auth/signup-field-translations.d.ts +3 -0
- package/components/Auth/signup-field-translations.js +44 -0
- package/components/Auth/signup-field-translations.js.map +1 -0
- package/components/Auth/signupSubmit.d.ts +6 -0
- package/components/Auth/signupSubmit.js +57 -0
- package/components/Auth/signupSubmit.js.map +1 -0
- package/components/Auth/useAddressFields.d.ts +22 -0
- package/components/Auth/useAddressFields.js +33 -0
- package/components/Auth/useAddressFields.js.map +1 -0
- package/components/Auth/useAddressFields.test.js +10 -8
- package/components/Auth/useCustomer.d.ts +116 -0
- package/components/Auth/useCustomer.js +189 -0
- package/components/Auth/useCustomer.js.map +1 -0
- package/components/Auth/useLoginFields.d.ts +20 -0
- package/components/Auth/useLoginFields.js +21 -0
- package/components/Auth/useLoginFields.js.map +1 -0
- package/components/Auth/useSignupForm.d.ts +7 -0
- package/components/Auth/useSignupForm.js +15 -0
- package/components/Auth/useSignupForm.js.map +1 -0
- package/components/AuthContext/AuthContext.d.ts +8 -0
- package/components/AuthContext/AuthContext.js +9 -0
- package/components/AuthContext/AuthContext.js.map +1 -0
- package/components/AuthContext/AuthProvider.d.ts +6 -0
- package/components/AuthContext/AuthProvider.js +85 -0
- package/components/AuthContext/AuthProvider.js.map +1 -0
- package/components/AuthContext/AuthProvider.test.js +1 -1
- package/components/AuthContext/LogOut.d.ts +5 -0
- package/components/AuthContext/LogOut.js +15 -0
- package/components/AuthContext/LogOut.js.map +1 -0
- package/components/AuthContext/useAuth.d.ts +6 -0
- package/components/AuthContext/useAuth.js +21 -0
- package/components/AuthContext/useAuth.js.map +1 -0
- package/components/BreakpointProvider.d.ts +21 -0
- package/components/BreakpointProvider.js +24 -0
- package/components/BreakpointProvider.js.map +1 -0
- package/components/Cart/CartIdContext.d.ts +11 -0
- package/components/Cart/CartIdContext.js +61 -0
- package/components/Cart/CartIdContext.js.map +1 -0
- package/components/ChannelContext/ChannelContext.d.ts +21 -0
- package/components/ChannelContext/ChannelContext.js +4 -0
- package/components/ChannelContext/ChannelContext.js.map +1 -0
- package/components/ChannelContext/ChannelProvider.d.ts +10 -0
- package/components/ChannelContext/ChannelProvider.js +45 -0
- package/components/ChannelContext/ChannelProvider.js.map +1 -0
- package/components/ChannelContext/index.d.ts +2 -0
- package/components/ChannelContext/index.js +3 -0
- package/components/ChannelContext/index.js.map +1 -0
- package/components/ChannelContext/useCountrySettings.d.ts +8 -0
- package/components/ChannelContext/useCountrySettings.js +24 -0
- package/components/ChannelContext/useCountrySettings.js.map +1 -0
- package/components/ConfigProvider.d.ts +108 -0
- package/components/ConfigProvider.js +20 -0
- package/components/ConfigProvider.js.map +1 -0
- package/components/DynamicRoute/ActiveFiltersQuery.gql +4 -4
- package/components/DynamicRoute/CategoryRoute.d.ts +13 -0
- package/components/DynamicRoute/CategoryRoute.js +59 -0
- package/components/DynamicRoute/CategoryRoute.js.map +1 -0
- package/components/DynamicRoute/ContentRoute.d.ts +14 -0
- package/components/DynamicRoute/ContentRoute.js +28 -0
- package/components/DynamicRoute/ContentRoute.js.map +1 -0
- package/components/DynamicRoute/CustomerRoute.d.ts +0 -0
- package/components/DynamicRoute/CustomerRoute.js +1 -0
- package/components/DynamicRoute/CustomerRoute.js.map +1 -0
- package/components/DynamicRoute/GenericError.d.ts +18 -0
- package/components/DynamicRoute/GenericError.js +61 -0
- package/components/DynamicRoute/GenericError.js.map +1 -0
- package/components/DynamicRoute/PreviewRoute.d.ts +17 -0
- package/components/DynamicRoute/PreviewRoute.js +58 -0
- package/components/DynamicRoute/PreviewRoute.js.map +1 -0
- package/components/DynamicRoute/ProductByArticlenumber.d.ts +5 -0
- package/components/DynamicRoute/ProductByArticlenumber.js +22 -0
- package/components/DynamicRoute/ProductByArticlenumber.js.map +1 -0
- package/components/DynamicRoute/ProductRoute.d.ts +15 -0
- package/components/DynamicRoute/ProductRoute.js +65 -0
- package/components/DynamicRoute/ProductRoute.js.map +1 -0
- package/components/DynamicRoute/RouteResolver.d.ts +22 -0
- package/components/DynamicRoute/RouteResolver.js +65 -0
- package/components/DynamicRoute/RouteResolver.js.map +1 -0
- package/components/DynamicRoute/Status.d.ts +15 -0
- package/components/DynamicRoute/Status.js +20 -0
- package/components/DynamicRoute/Status.js.map +1 -0
- package/components/DynamicRoute/index.d.ts +17 -0
- package/components/DynamicRoute/index.js +100 -0
- package/components/DynamicRoute/index.js.map +1 -0
- package/components/Filters/index.d.ts +1 -0
- package/components/Filters/index.js +2 -0
- package/components/Filters/index.js.map +1 -0
- package/components/Filters/utils/replaceInSearch.d.ts +14 -0
- package/components/Filters/utils/replaceInSearch.js +23 -0
- package/components/Filters/utils/replaceInSearch.js.map +1 -0
- package/components/Filters/utils/updateHistory.d.ts +25 -0
- package/components/Filters/utils/updateHistory.js +30 -0
- package/components/Filters/utils/updateHistory.js.map +1 -0
- package/components/Fonts/CustomFont.d.ts +14 -0
- package/components/Fonts/CustomFont.js +17 -0
- package/components/Fonts/CustomFont.js.map +1 -0
- package/components/Fonts/injectFont.d.ts +11 -0
- package/components/Fonts/injectFont.js +30 -0
- package/components/Fonts/injectFont.js.map +1 -0
- package/components/Head.d.ts +11 -0
- package/components/Head.js +84 -0
- package/components/Head.js.map +1 -0
- package/components/Mutation/AddToCart/addToCartUtils.d.ts +18 -0
- package/components/Mutation/AddToCart/addToCartUtils.js +52 -0
- package/components/Mutation/AddToCart/addToCartUtils.js.map +1 -0
- package/components/Mutation/AddToCartFormik.d.ts +53 -0
- package/components/Mutation/AddToCartFormik.js +173 -0
- package/components/Mutation/AddToCartFormik.js.map +1 -0
- package/components/Mutation/DecrementQuantity.d.ts +4 -0
- package/components/Mutation/DecrementQuantity.js +35 -0
- package/components/Mutation/DecrementQuantity.js.map +1 -0
- package/components/Mutation/IncrementQuantity.d.ts +4 -0
- package/components/Mutation/IncrementQuantity.js +35 -0
- package/components/Mutation/IncrementQuantity.js.map +1 -0
- package/components/Mutation/RemoveFromCart.d.ts +5 -0
- package/components/Mutation/RemoveFromCart.js +52 -0
- package/components/Mutation/RemoveFromCart.js.map +1 -0
- package/components/Mutation/SetQuantity.d.ts +4 -0
- package/components/Mutation/SetQuantity.js +37 -0
- package/components/Mutation/SetQuantity.js.map +1 -0
- package/components/Mutation/SubscribeToNewsletter.d.ts +4 -0
- package/components/Mutation/SubscribeToNewsletter.js +30 -0
- package/components/Mutation/SubscribeToNewsletter.js.map +1 -0
- package/components/Mutation/SubscribeToStockNotifications.d.ts +4 -0
- package/components/Mutation/SubscribeToStockNotifications.js +35 -0
- package/components/Mutation/SubscribeToStockNotifications.js.map +1 -0
- package/components/Mutation/cartMutationUtils.d.ts +27 -0
- package/components/Mutation/cartMutationUtils.js +109 -0
- package/components/Mutation/cartMutationUtils.js.map +1 -0
- package/components/Mutation/useDecrementQuantity.d.ts +11 -0
- package/components/Mutation/useDecrementQuantity.js +54 -0
- package/components/Mutation/useDecrementQuantity.js.map +1 -0
- package/components/Mutation/useIncrementQuantity.d.ts +11 -0
- package/components/Mutation/useIncrementQuantity.js +54 -0
- package/components/Mutation/useIncrementQuantity.js.map +1 -0
- package/components/Mutation/useRemoveFromCart.d.ts +13 -0
- package/components/Mutation/useRemoveFromCart.js +50 -0
- package/components/Mutation/useRemoveFromCart.js.map +1 -0
- package/components/Mutation/useSetQuantity.d.ts +12 -0
- package/components/Mutation/useSetQuantity.js +38 -0
- package/components/Mutation/useSetQuantity.js.map +1 -0
- package/components/Notifications/Notifications.d.ts +15 -0
- package/components/Notifications/Notifications.js +26 -0
- package/components/Notifications/Notifications.js.map +1 -0
- package/components/Notifications/index.d.ts +2 -0
- package/components/Notifications/index.js +3 -0
- package/components/Notifications/index.js.map +1 -0
- package/components/Notifications/notificationMachine.d.ts +30 -0
- package/components/Notifications/notificationMachine.js +74 -0
- package/components/Notifications/notificationMachine.js.map +1 -0
- package/components/Notifications/notificationsMachine.d.ts +37 -0
- package/components/Notifications/notificationsMachine.js +66 -0
- package/components/Notifications/notificationsMachine.js.map +1 -0
- package/components/Notifications/useNotification.d.ts +9 -0
- package/components/Notifications/useNotification.js +27 -0
- package/components/Notifications/useNotification.js.map +1 -0
- package/components/OpenGraph/OpenGraphGeneralPageData.d.ts +25 -0
- package/components/OpenGraph/OpenGraphGeneralPageData.js +37 -0
- package/components/OpenGraph/OpenGraphGeneralPageData.js.map +1 -0
- package/components/OpenGraph/OpenGraphProductData.d.ts +25 -0
- package/components/OpenGraph/OpenGraphProductData.js +49 -0
- package/components/OpenGraph/OpenGraphProductData.js.map +1 -0
- package/components/OpenGraph/index.d.ts +2 -0
- package/components/OpenGraph/index.js +3 -0
- package/components/OpenGraph/index.js.map +1 -0
- package/components/Pagination/PaginationContainer.d.ts +2 -0
- package/components/Pagination/PaginationContainer.js +5 -0
- package/components/Pagination/PaginationContainer.js.map +1 -0
- package/components/Pagination/PaginationContext.d.ts +14 -0
- package/components/Pagination/PaginationContext.js +4 -0
- package/components/Pagination/PaginationContext.js.map +1 -0
- package/components/Pagination/PaginationProvider.d.ts +19 -0
- package/components/Pagination/PaginationProvider.js +95 -0
- package/components/Pagination/PaginationProvider.js.map +1 -0
- package/components/PreviewContext.d.ts +10 -0
- package/components/PreviewContext.js +27 -0
- package/components/PreviewContext.js.map +1 -0
- package/components/ProductConfigurationProvider/ProductConfigurationContext.d.ts +13 -0
- package/components/ProductConfigurationProvider/ProductConfigurationContext.js +5 -0
- package/components/ProductConfigurationProvider/ProductConfigurationContext.js.map +1 -0
- package/components/ProductConfigurationProvider/ProductConfigurationProvider.d.ts +6 -0
- package/components/ProductConfigurationProvider/ProductConfigurationProvider.js +50 -0
- package/components/ProductConfigurationProvider/ProductConfigurationProvider.js.map +1 -0
- package/components/Query/CartProvider.d.ts +22 -0
- package/components/Query/CartProvider.js +68 -0
- package/components/Query/CartProvider.js.map +1 -0
- package/components/SortOrder/SortOrderContainer.d.ts +40 -0
- package/components/SortOrder/SortOrderContainer.js +108 -0
- package/components/SortOrder/SortOrderContainer.js.map +1 -0
- package/components/SortOrder/SortOrderContext.d.ts +9 -0
- package/components/SortOrder/SortOrderContext.js +9 -0
- package/components/SortOrder/SortOrderContext.js.map +1 -0
- package/components/StructuredData/SiteLinksSearchStructuredData.d.ts +3 -0
- package/components/StructuredData/SiteLinksSearchStructuredData.js +25 -0
- package/components/StructuredData/SiteLinksSearchStructuredData.js.map +1 -0
- package/components/StructuredData/StructuredBreadcrumbData.d.ts +12 -0
- package/components/StructuredData/StructuredBreadcrumbData.js +55 -0
- package/components/StructuredData/StructuredBreadcrumbData.js.map +1 -0
- package/components/StructuredData/StructuredCategoryData.d.ts +16 -0
- package/components/StructuredData/StructuredCategoryData.js +18 -0
- package/components/StructuredData/StructuredCategoryData.js.map +1 -0
- package/components/StructuredData/StructuredData.d.ts +9 -0
- package/components/StructuredData/StructuredData.js +7 -0
- package/components/StructuredData/StructuredData.js.map +1 -0
- package/components/StructuredData/StructuredPageData.d.ts +16 -0
- package/components/StructuredData/StructuredPageData.js +17 -0
- package/components/StructuredData/StructuredPageData.js.map +1 -0
- package/components/StructuredData/StructuredProductData.d.ts +18 -0
- package/components/StructuredData/StructuredProductData.js +43 -0
- package/components/StructuredData/StructuredProductData.js.map +1 -0
- package/components/StructuredData/index.d.ts +5 -0
- package/components/StructuredData/index.js +6 -0
- package/components/StructuredData/index.js.map +1 -0
- package/data/cache.d.ts +3 -0
- package/data/cache.js +34 -0
- package/data/cache.js.map +1 -0
- package/data/fragmentTypes.d.ts +8 -0
- package/data/fragmentTypes.js +84 -0
- package/data/fragmentTypes.js.map +1 -0
- package/data/fragments/index.d.ts +1 -0
- package/data/fragments/index.js +2 -0
- package/data/fragments/index.js.map +1 -0
- package/errorReporting.browser.d.ts +3 -0
- package/errorReporting.browser.js +12 -0
- package/errorReporting.browser.js.map +1 -0
- package/errorReporting.d.ts +3 -0
- package/errorReporting.js +20 -0
- package/errorReporting.js.map +1 -0
- package/errorReporting.server.d.ts +3 -0
- package/errorReporting.server.js +12 -0
- package/errorReporting.server.js.map +1 -0
- package/errorReporting.shared.d.ts +5 -0
- package/errorReporting.shared.js +17 -0
- package/errorReporting.shared.js.map +1 -0
- package/experiments/ExperimentsProvider.d.ts +4 -0
- package/experiments/ExperimentsProvider.js +29 -0
- package/experiments/ExperimentsProvider.js.map +1 -0
- package/experiments/selectExperimentVariant.d.ts +3 -0
- package/experiments/selectExperimentVariant.js +35 -0
- package/experiments/selectExperimentVariant.js.map +1 -0
- package/experiments/useExperiment.d.ts +2 -0
- package/experiments/useExperiment.js +11 -0
- package/experiments/useExperiment.js.map +1 -0
- package/global.d.ts +55 -1
- package/helpers/decodeUrlQuery.d.ts +9 -0
- package/helpers/decodeUrlQuery.js +27 -0
- package/helpers/decodeUrlQuery.js.map +1 -0
- package/helpers/distance.d.ts +7 -0
- package/helpers/distance.js +13 -0
- package/helpers/distance.js.map +1 -0
- package/helpers/encodeVariant.d.ts +3 -0
- package/helpers/encodeVariant.js +25 -0
- package/helpers/encodeVariant.js.map +1 -0
- package/helpers/getBreakpointsFromValues.d.ts +6 -0
- package/helpers/getBreakpointsFromValues.js +15 -0
- package/helpers/getBreakpointsFromValues.js.map +1 -0
- package/helpers/getCartItemVariant.d.ts +7 -0
- package/helpers/getCartItemVariant.js +9 -0
- package/helpers/getCartItemVariant.js.map +1 -0
- package/helpers/getErrorDetail.d.ts +7 -0
- package/helpers/getErrorDetail.js +12 -0
- package/helpers/getErrorDetail.js.map +1 -0
- package/helpers/getHeaders.d.ts +6 -0
- package/helpers/getHeaders.js +4 -0
- package/helpers/getHeaders.js.map +1 -0
- package/helpers/isRelativeUrl.d.ts +1 -0
- package/helpers/isRelativeUrl.js +4 -0
- package/helpers/isRelativeUrl.js.map +1 -0
- package/helpers/logError.d.ts +1 -0
- package/helpers/logError.js +17 -0
- package/helpers/logError.js.map +1 -0
- package/helpers/logWarningInDev.d.ts +1 -0
- package/helpers/logWarningInDev.js +7 -0
- package/helpers/logWarningInDev.js.map +1 -0
- package/helpers/throwErrorInDev.d.ts +6 -0
- package/helpers/throwErrorInDev.js +15 -0
- package/helpers/throwErrorInDev.js.map +1 -0
- package/helpers/uniqueId.d.ts +5 -0
- package/helpers/uniqueId.js +10 -0
- package/helpers/uniqueId.js.map +1 -0
- package/hooks/Channels/useChannelSettings.d.ts +7 -0
- package/hooks/Channels/useChannelSettings.js +12 -0
- package/hooks/Channels/useChannelSettings.js.map +1 -0
- package/hooks/Filters/useBooleanFilter.d.ts +8 -0
- package/hooks/Filters/useBooleanFilter.js +20 -0
- package/hooks/Filters/useBooleanFilter.js.map +1 -0
- package/hooks/Filters/useFilters.d.ts +3 -0
- package/hooks/Filters/useFilters.js +15 -0
- package/hooks/Filters/useFilters.js.map +1 -0
- package/hooks/Filters/useListFilter.d.ts +10 -0
- package/hooks/Filters/useListFilter.js +37 -0
- package/hooks/Filters/useListFilter.js.map +1 -0
- package/hooks/Filters/useMultiFilter.d.ts +13 -0
- package/hooks/Filters/useMultiFilter.js +49 -0
- package/hooks/Filters/useMultiFilter.js.map +1 -0
- package/hooks/Filters/useRangeFilter.d.ts +10 -0
- package/hooks/Filters/useRangeFilter.js +35 -0
- package/hooks/Filters/useRangeFilter.js.map +1 -0
- package/hooks/Filters/useSortOrder.d.ts +16 -0
- package/hooks/Filters/useSortOrder.js +23 -0
- package/hooks/Filters/useSortOrder.js.map +1 -0
- package/hooks/PackageProducts/index.d.ts +2 -0
- package/hooks/PackageProducts/index.js +3 -0
- package/hooks/PackageProducts/index.js.map +1 -0
- package/hooks/PackageProducts/usePackageProductItem.d.ts +17 -0
- package/hooks/PackageProducts/usePackageProductItem.js +27 -0
- package/hooks/PackageProducts/usePackageProductItem.js.map +1 -0
- package/hooks/PackageProducts/usePackageProducts.d.ts +19 -0
- package/hooks/PackageProducts/usePackageProducts.js +346 -0
- package/hooks/PackageProducts/usePackageProducts.js.map +1 -0
- package/hooks/PackageProducts/usePackageProducts.test.js +1 -1
- package/hooks/Product/index.d.ts +1 -0
- package/hooks/Product/index.js +2 -0
- package/hooks/Product/index.js.map +1 -0
- package/hooks/Product/useStockStatus.d.ts +9 -0
- package/hooks/Product/useStockStatus.js +26 -0
- package/hooks/Product/useStockStatus.js.map +1 -0
- package/hooks/Product/useSwitchToVariantImage.d.ts +9 -0
- package/hooks/Product/useSwitchToVariantImage.js +21 -0
- package/hooks/Product/useSwitchToVariantImage.js.map +1 -0
- package/hooks/ProductList/ProductListContext.d.ts +7 -0
- package/hooks/ProductList/ProductListContext.js +111 -0
- package/hooks/ProductList/ProductListContext.js.map +1 -0
- package/hooks/ProductList/action-creators.d.ts +46 -0
- package/hooks/ProductList/action-creators.js +297 -0
- package/hooks/ProductList/action-creators.js.map +1 -0
- package/hooks/ProductList/index.d.ts +118 -0
- package/hooks/ProductList/index.js +22 -0
- package/hooks/ProductList/index.js.map +1 -0
- package/hooks/ProductList/list-transforms.d.ts +75 -0
- package/hooks/ProductList/list-transforms.js +107 -0
- package/hooks/ProductList/list-transforms.js.map +1 -0
- package/hooks/ProductList/product-list-reducer.d.ts +76 -0
- package/hooks/ProductList/product-list-reducer.js +198 -0
- package/hooks/ProductList/product-list-reducer.js.map +1 -0
- package/hooks/ProductList/useProductList.d.ts +13 -0
- package/hooks/ProductList/useProductList.js +94 -0
- package/hooks/ProductList/useProductList.js.map +1 -0
- package/hooks/ProductList/useProductListItems.d.ts +10 -0
- package/hooks/ProductList/useProductListItems.js +49 -0
- package/hooks/ProductList/useProductListItems.js.map +1 -0
- package/hooks/ProductList/validate-product.d.ts +6 -0
- package/hooks/ProductList/validate-product.js +41 -0
- package/hooks/ProductList/validate-product.js.map +1 -0
- package/hooks/Subscriptions/useNewsletterSubscription.d.ts +38 -0
- package/hooks/Subscriptions/useNewsletterSubscription.js +42 -0
- package/hooks/Subscriptions/useNewsletterSubscription.js.map +1 -0
- package/hooks/Subscriptions/useStockNotifications.d.ts +36 -0
- package/hooks/Subscriptions/useStockNotifications.js +38 -0
- package/hooks/Subscriptions/useStockNotifications.js.map +1 -0
- package/hooks/Subscriptions/useStoreSubscriptions.d.ts +48 -0
- package/hooks/Subscriptions/useStoreSubscriptions.js +148 -0
- package/hooks/Subscriptions/useStoreSubscriptions.js.map +1 -0
- package/hooks/Subscriptions/useStoresubscriptions.test.js +5 -7
- package/hooks/useAddMultipleToCart.d.ts +27 -0
- package/hooks/useAddMultipleToCart.js +114 -0
- package/hooks/useAddMultipleToCart.js.map +1 -0
- package/hooks/useAddMultipleToCart.test.js +1 -1
- package/hooks/useChannels.d.ts +1 -0
- package/hooks/useChannels.js +10 -0
- package/hooks/useChannels.js.map +1 -0
- package/hooks/useCustomerOrders.test.js +7 -5
- package/hooks/useCustomerOrdersQuery.d.ts +21 -0
- package/hooks/useCustomerOrdersQuery.js +21 -0
- package/hooks/useCustomerOrdersQuery.js.map +1 -0
- package/hooks/useDeleteAccountMutation.d.ts +15 -0
- package/hooks/useDeleteAccountMutation.js +39 -0
- package/hooks/useDeleteAccountMutation.js.map +1 -0
- package/hooks/useDynamicPrice.d.ts +3 -0
- package/hooks/useDynamicPrice.js +25 -0
- package/hooks/useDynamicPrice.js.map +1 -0
- package/hooks/useFreeShippingCheck.d.ts +15 -0
- package/hooks/useFreeShippingCheck.js +31 -0
- package/hooks/useFreeShippingCheck.js.map +1 -0
- package/hooks/useGeolocation.d.ts +11 -0
- package/hooks/useGeolocation.js +34 -0
- package/hooks/useGeolocation.js.map +1 -0
- package/hooks/useInfinitePagination.d.ts +37 -0
- package/hooks/useInfinitePagination.js +142 -0
- package/hooks/useInfinitePagination.js.map +1 -0
- package/hooks/useLogError.d.ts +1 -0
- package/hooks/useLogError.js +8 -0
- package/hooks/useLogError.js.map +1 -0
- package/hooks/useLoginMutation.d.ts +12 -0
- package/hooks/useLoginMutation.js +15 -0
- package/hooks/useLoginMutation.js.map +1 -0
- package/hooks/useLoginRedirect.d.ts +4 -0
- package/hooks/useLoginRedirect.js +37 -0
- package/hooks/useLoginRedirect.js.map +1 -0
- package/hooks/useOrderDetailQuery.d.ts +20 -0
- package/hooks/useOrderDetailQuery.js +29 -0
- package/hooks/useOrderDetailQuery.js.map +1 -0
- package/hooks/usePreconnectLinks.d.ts +10 -0
- package/hooks/usePreconnectLinks.js +30 -0
- package/hooks/usePreconnectLinks.js.map +1 -0
- package/hooks/usePrice.d.ts +41 -0
- package/hooks/usePrice.js +73 -0
- package/hooks/usePrice.js.map +1 -0
- package/hooks/useProductVariants/index.d.ts +1 -0
- package/hooks/useProductVariants/index.js +2 -0
- package/hooks/useProductVariants/index.js.map +1 -0
- package/hooks/useProductVariants/useProductVariants.d.ts +19 -0
- package/hooks/useProductVariants/useProductVariants.js +203 -0
- package/hooks/useProductVariants/useProductVariants.js.map +1 -0
- package/hooks/useProductVariants/useVariantFromUrl.d.ts +5 -0
- package/hooks/useProductVariants/useVariantFromUrl.js +16 -0
- package/hooks/useProductVariants/useVariantFromUrl.js.map +1 -0
- package/hooks/useRoutePreload.d.ts +24 -0
- package/hooks/useRoutePreload.js +40 -0
- package/hooks/useRoutePreload.js.map +1 -0
- package/hooks/useShopConfig.d.ts +1 -0
- package/hooks/useShopConfig.js +11 -0
- package/hooks/useShopConfig.js.map +1 -0
- package/hooks/useStockStatus.d.ts +8 -0
- package/hooks/useStockStatus.js +26 -0
- package/hooks/useStockStatus.js.map +1 -0
- package/hooks/useThrowErrorInDev.d.ts +1 -0
- package/hooks/useThrowErrorInDev.js +8 -0
- package/hooks/useThrowErrorInDev.js.map +1 -0
- package/hooks/useThunkReducer.d.ts +7 -0
- package/hooks/useThunkReducer.js +24 -0
- package/hooks/useThunkReducer.js.map +1 -0
- package/hooks/useWarningInDev.d.ts +1 -0
- package/hooks/useWarningInDev.js +10 -0
- package/hooks/useWarningInDev.js.map +1 -0
- package/inServer.d.ts +1 -0
- package/inServer.js +3 -0
- package/inServer.js.map +1 -0
- package/index.d.ts +1 -0
- package/index.js +2 -0
- package/index.js.map +1 -0
- package/integrations/addwishSchemaExtension.d.ts +35 -0
- package/integrations/addwishSchemaExtension.js +141 -0
- package/integrations/addwishSchemaExtension.js.map +1 -0
- package/integrations/nostoSchemaExtension.d.ts +5 -0
- package/integrations/nostoSchemaExtension.js +77 -0
- package/integrations/nostoSchemaExtension.js.map +1 -0
- package/integrations/sluggishSchemaExtension.d.ts +2 -0
- package/integrations/sluggishSchemaExtension.js +27 -0
- package/integrations/sluggishSchemaExtension.js.map +1 -0
- package/package.json +13 -29
- package/polyfills.d.ts +1 -0
- package/polyfills.js +36 -0
- package/polyfills.js.map +1 -0
- package/resolvers/filters/boolFilter.d.ts +3 -0
- package/resolvers/filters/boolFilter.js +82 -0
- package/resolvers/filters/boolFilter.js.map +1 -0
- package/resolvers/filters/defaultActiveFilters.d.ts +3 -0
- package/resolvers/filters/defaultActiveFilters.js +9 -0
- package/resolvers/filters/defaultActiveFilters.js.map +1 -0
- package/resolvers/filters/filterParams.d.ts +3 -0
- package/resolvers/filters/filterParams.js +85 -0
- package/resolvers/filters/filterParams.js.map +1 -0
- package/resolvers/filters/filters.d.ts +5 -0
- package/resolvers/filters/filters.js +79 -0
- package/resolvers/filters/filters.js.map +1 -0
- package/resolvers/filters/index.d.ts +23 -0
- package/resolvers/filters/index.js +8 -0
- package/resolvers/filters/index.js.map +1 -0
- package/resolvers/filters/listFilter.d.ts +7 -0
- package/resolvers/filters/listFilter.js +69 -0
- package/resolvers/filters/listFilter.js.map +1 -0
- package/resolvers/filters/listFilterItem.d.ts +3 -0
- package/resolvers/filters/listFilterItem.js +118 -0
- package/resolvers/filters/listFilterItem.js.map +1 -0
- package/resolvers/filters/multiListFilter.d.ts +5 -0
- package/resolvers/filters/multiListFilter.js +195 -0
- package/resolvers/filters/multiListFilter.js.map +1 -0
- package/resolvers/filters/multiListFilterList.d.ts +3 -0
- package/resolvers/filters/multiListFilterList.js +56 -0
- package/resolvers/filters/multiListFilterList.js.map +1 -0
- package/resolvers/filters/rangeFilter.d.ts +5 -0
- package/resolvers/filters/rangeFilter.js +122 -0
- package/resolvers/filters/rangeFilter.js.map +1 -0
- package/resolvers/filters/updateQueryString.d.ts +12 -0
- package/resolvers/filters/updateQueryString.js +117 -0
- package/resolvers/filters/updateQueryString.js.map +1 -0
- package/resolvers/index.d.ts +37 -0
- package/resolvers/index.js +38 -0
- package/resolvers/index.js.map +1 -0
- package/sentry/client.d.ts +1 -0
- package/sentry/client.js +30 -0
- package/sentry/client.js.map +1 -0
- package/sentry/common.d.ts +1 -0
- package/sentry/common.js +5 -0
- package/sentry/common.js.map +1 -0
- package/sentry/server.d.ts +1 -0
- package/sentry/server.js +20 -0
- package/sentry/server.js.map +1 -0
- package/sentry/utils.d.ts +1 -0
- package/sentry/utils.js +2 -0
- package/sentry/utils.js.map +1 -0
- package/server/graphql.d.ts +20 -0
- package/server/graphql.js +118 -0
- package/server/graphql.js.map +1 -0
- package/server/index.d.ts +2 -0
- package/server/index.js +3 -0
- package/server/index.js.map +1 -0
- package/server/tracking/facebook.d.ts +5 -0
- package/server/tracking/facebook.js +148 -0
- package/server/tracking/facebook.js.map +1 -0
- package/server/tracking/middleware.d.ts +8 -0
- package/server/tracking/middleware.js +15 -0
- package/server/tracking/middleware.js.map +1 -0
- package/test-utils/ProviderPyramid.js +1 -1
- package/time.d.ts +1 -0
- package/time.js +6 -0
- package/time.js.map +1 -0
- package/types.d.ts +1820 -1955
@@ -0,0 +1,65 @@
|
|
1
|
+
import { CountrySettings } from '@jetshop/core/types';
|
2
|
+
import { CustomerField } from '@jetshop/core/types';
|
3
|
+
export declare const getFieldType: (name: string) => "text" | "tel" | "email" | "password";
|
4
|
+
export declare function formFieldsFromSettings(selectedCountrySettings: CountrySettings, isUserTypeBusiness?: boolean): {
|
5
|
+
allFields: {
|
6
|
+
type: string;
|
7
|
+
id: string;
|
8
|
+
name: string;
|
9
|
+
label: any;
|
10
|
+
__typename?: "CustomerField";
|
11
|
+
required: boolean;
|
12
|
+
pattern?: string;
|
13
|
+
fields?: CustomerField[];
|
14
|
+
}[];
|
15
|
+
billingAddressFields: {
|
16
|
+
label: any;
|
17
|
+
placeholder: string;
|
18
|
+
type: string;
|
19
|
+
__typename?: "CustomerField";
|
20
|
+
id: string;
|
21
|
+
required: boolean;
|
22
|
+
pattern?: string;
|
23
|
+
fields?: CustomerField[];
|
24
|
+
name: string;
|
25
|
+
}[];
|
26
|
+
deliveryAddressFields: {
|
27
|
+
label: any;
|
28
|
+
placeholder: string;
|
29
|
+
type: string;
|
30
|
+
__typename?: "CustomerField";
|
31
|
+
id: string;
|
32
|
+
required: boolean;
|
33
|
+
pattern?: string;
|
34
|
+
fields?: CustomerField[];
|
35
|
+
name: string;
|
36
|
+
}[];
|
37
|
+
loginFields: {
|
38
|
+
type: string;
|
39
|
+
id: string;
|
40
|
+
name: string;
|
41
|
+
label: any;
|
42
|
+
placeholder: any;
|
43
|
+
__typename?: "CustomerField";
|
44
|
+
required: boolean;
|
45
|
+
pattern?: string;
|
46
|
+
fields?: CustomerField[];
|
47
|
+
}[];
|
48
|
+
pidField: {
|
49
|
+
type: string;
|
50
|
+
id: string;
|
51
|
+
name: string;
|
52
|
+
label: any;
|
53
|
+
__typename?: "CustomerField";
|
54
|
+
required: boolean;
|
55
|
+
pattern?: string;
|
56
|
+
fields?: CustomerField[];
|
57
|
+
};
|
58
|
+
};
|
59
|
+
export declare function createValidatorForFields(fields: CustomerField[], { getFieldName, getFieldValue, customValidation }?: {
|
60
|
+
getFieldName?: (name: string) => string;
|
61
|
+
getFieldValue?: (values: any, fieldName: string) => any;
|
62
|
+
customValidation?: (errors: {
|
63
|
+
[key: string]: any;
|
64
|
+
}, values: any) => any;
|
65
|
+
}): (values: any) => any;
|
@@ -0,0 +1,77 @@
|
|
1
|
+
import { translations } from './signup-field-translations';
|
2
|
+
import t from '@jetshop/intl';
|
3
|
+
export const getFieldType = (name) => {
|
4
|
+
switch (name) {
|
5
|
+
case 'mobilePhone':
|
6
|
+
return 'tel';
|
7
|
+
case 'emailAddress':
|
8
|
+
return 'email';
|
9
|
+
case 'password':
|
10
|
+
return 'password';
|
11
|
+
default:
|
12
|
+
return 'text';
|
13
|
+
}
|
14
|
+
};
|
15
|
+
export function formFieldsFromSettings(selectedCountrySettings, isUserTypeBusiness) {
|
16
|
+
const customerFieldsKey = !isUserTypeBusiness
|
17
|
+
? 'privateCustomerFields'
|
18
|
+
: 'businessCustomerFields';
|
19
|
+
const billingAddress = selectedCountrySettings &&
|
20
|
+
selectedCountrySettings[customerFieldsKey].find((field) => field.name === 'billingAddress');
|
21
|
+
const deliveryAddress = selectedCountrySettings &&
|
22
|
+
selectedCountrySettings[customerFieldsKey].find((field) => field.name === 'deliveryAddress');
|
23
|
+
const billingAddressFields = billingAddress
|
24
|
+
? billingAddress.fields.map((field) => (Object.assign(Object.assign({}, field), { label: translations[field.name], placeholder: `${translations[field.name]}_placeholder`, type: getFieldType(field.name) })))
|
25
|
+
: [];
|
26
|
+
const deliveryAddressFields = deliveryAddress
|
27
|
+
? deliveryAddress.fields.map((field) => (Object.assign(Object.assign({}, field), { label: translations[field.name], placeholder: `${translations[field.name]}_placeholder`, type: getFieldType(field.name) })))
|
28
|
+
: [];
|
29
|
+
const emailField = selectedCountrySettings
|
30
|
+
? selectedCountrySettings[customerFieldsKey].find((field) => field.name === 'emailAddress')
|
31
|
+
: null;
|
32
|
+
const passwordField = selectedCountrySettings
|
33
|
+
? selectedCountrySettings[customerFieldsKey].find((field) => field.name === 'password')
|
34
|
+
: null;
|
35
|
+
const pid = selectedCountrySettings === null || selectedCountrySettings === void 0 ? void 0 : selectedCountrySettings[customerFieldsKey].find((field) => field.name === 'pid' || field.name === 'organizationNumber');
|
36
|
+
const pidField = Object.assign(Object.assign({}, pid), { type: 'text', id: 'pid', name: isUserTypeBusiness ? 'organizationNumber' : 'pid', label: isUserTypeBusiness
|
37
|
+
? translations['company_pid']
|
38
|
+
: translations['pid'] });
|
39
|
+
const loginFields = emailField && passwordField
|
40
|
+
? [
|
41
|
+
Object.assign(Object.assign({}, emailField), { type: getFieldType('emailAddress'), id: 'emailAddress', name: 'emailAddress', label: translations['email'], placeholder: translations['email_placeholder'] }),
|
42
|
+
Object.assign(Object.assign({}, passwordField), { type: getFieldType('password'), id: 'password', name: 'password', label: translations['password'], placeholder: translations['password_placeholder'] })
|
43
|
+
]
|
44
|
+
: [];
|
45
|
+
const allFields = [...billingAddressFields, ...loginFields, pidField];
|
46
|
+
return {
|
47
|
+
allFields,
|
48
|
+
billingAddressFields,
|
49
|
+
deliveryAddressFields,
|
50
|
+
loginFields,
|
51
|
+
pidField
|
52
|
+
};
|
53
|
+
}
|
54
|
+
// Create validation based on the rules specified in the CustomerFields from
|
55
|
+
// channel settings
|
56
|
+
export function createValidatorForFields(fields, { getFieldName = (name) => name, getFieldValue = (values, fieldName) => values[fieldName], customValidation } = {}) {
|
57
|
+
return function validate(values) {
|
58
|
+
const errors = {};
|
59
|
+
fields.forEach((field) => {
|
60
|
+
if (field) {
|
61
|
+
const pattern = field.pattern && new RegExp(unescape(field.pattern));
|
62
|
+
const fieldName = getFieldName(field.name);
|
63
|
+
const value = getFieldValue(values, fieldName);
|
64
|
+
// make sure that pattern is actually a valid regex
|
65
|
+
if (pattern && !pattern.test(value)) {
|
66
|
+
errors[fieldName] = t('Field does not match required format');
|
67
|
+
}
|
68
|
+
if (field.required && !value) {
|
69
|
+
errors[fieldName] = t('This field is required');
|
70
|
+
}
|
71
|
+
customValidation && customValidation(errors, values);
|
72
|
+
}
|
73
|
+
});
|
74
|
+
return errors;
|
75
|
+
};
|
76
|
+
}
|
77
|
+
//# sourceMappingURL=formFieldsFromSettings.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"formFieldsFromSettings.js","sourceRoot":"","sources":["formFieldsFromSettings.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { SignUpInput } from '@jetshop/core/types';
|
2
|
+
export type SignUpFormInput = SignUpInput & {
|
3
|
+
country: string;
|
4
|
+
organizationNumber?: string;
|
5
|
+
};
|
6
|
+
export declare function formatSignupInput(values: SignUpFormInput, { userType }: {
|
7
|
+
userType: 'COMPANY' | 'PRIVATE';
|
8
|
+
}): SignUpInput;
|
@@ -0,0 +1,43 @@
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
2
|
+
var t = {};
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
+
t[p] = s[p];
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
+
t[p[i]] = s[p[i]];
|
9
|
+
}
|
10
|
+
return t;
|
11
|
+
};
|
12
|
+
// Map forms to { valuename: { value: "value" } } format required for input
|
13
|
+
// e.g. { country: { value: "Sweden" } }
|
14
|
+
export function formatSignupInput(values, { userType }) {
|
15
|
+
const { emailAddress, password, pid, organizationNumber, country, externalId = '', externalAttributes = undefined, priceListAccessCode = undefined, dynamicContent = undefined, preferences = undefined, consents = [] } = values, rest = __rest(values, ["emailAddress", "password", "pid", "organizationNumber", "country", "externalId", "externalAttributes", "priceListAccessCode", "dynamicContent", "preferences", "consents"]);
|
16
|
+
// Currently passing through country.code:country.name for the country
|
17
|
+
// selector. This is a hack for now to get the code and name separately.
|
18
|
+
const [countryCode, countryName] = country.split(':');
|
19
|
+
const billingInput = {
|
20
|
+
countryCode: { value: countryCode }
|
21
|
+
};
|
22
|
+
const rawValues = Object.entries(rest);
|
23
|
+
for (const [field, value] of rawValues) {
|
24
|
+
billingInput[field] = {
|
25
|
+
value: field === 'country' ? countryName : value
|
26
|
+
};
|
27
|
+
}
|
28
|
+
return {
|
29
|
+
type: userType,
|
30
|
+
billingAddress: billingInput,
|
31
|
+
emailAddress,
|
32
|
+
password,
|
33
|
+
pid,
|
34
|
+
organizationNumber,
|
35
|
+
priceListAccessCode,
|
36
|
+
externalAttributes,
|
37
|
+
externalId,
|
38
|
+
dynamicContent,
|
39
|
+
preferences,
|
40
|
+
consents
|
41
|
+
};
|
42
|
+
}
|
43
|
+
//# sourceMappingURL=formatSignupInput.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"formatSignupInput.js","sourceRoot":"","sources":["formatSignupInput.ts"],"names":[],"mappings":";;;;;;;;;;;AAOA,2EAA2E;AAC3E,wCAAwC;AACxC,MAAM,UAAU,iBAAiB,CAC/B,MAAuB,EACvB,EAAE,QAAQ,EAAuC;IAEjD,MAAM,EACJ,YAAY,EACZ,QAAQ,EACR,GAAG,EACH,kBAAkB,EAClB,OAAO,EACP,UAAU,GAAG,EAAE,EACf,kBAAkB,GAAG,SAAS,EAC9B,mBAAmB,GAAG,SAAS,EAC/B,cAAc,GAAG,SAAS,EAC1B,WAAW,GAAG,SAAS,EACvB,QAAQ,GAAG,EAAE,KAEX,MAAM,EADL,IAAI,UACL,MAAM,EAbJ,4KAaL,CAAS,CAAC;IAEX,sEAAsE;IACtE,wEAAwE;IACxE,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEtD,MAAM,YAAY,GAEd;QACF,WAAW,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;KACpC,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,SAAS,EAAE;QACtC,YAAY,CAAC,KAAK,CAAC,GAAG;YACpB,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK;SACjD,CAAC;KACH;IAED,OAAO;QACL,IAAI,EAAE,QAAwB;QAC9B,cAAc,EAAE,YAAY;QAC5B,YAAY;QACZ,QAAQ;QACR,GAAG;QACH,kBAAkB;QAClB,mBAAmB;QACnB,kBAAkB;QAClB,UAAU;QACV,cAAc;QACd,WAAW;QACX,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import { Country, CustomerField, SignUpInput } from '@jetshop/core/types';
|
2
|
+
import * as React from 'react';
|
3
|
+
import { FormikProps } from 'formik';
|
4
|
+
export interface EnhancedCustomerField extends CustomerField {
|
5
|
+
type: string;
|
6
|
+
label: string;
|
7
|
+
placeholder?: string;
|
8
|
+
}
|
9
|
+
type ISignupContext = {
|
10
|
+
isUserTypeBusiness: boolean;
|
11
|
+
billingAddressFields: EnhancedCustomerField[];
|
12
|
+
loginFields: EnhancedCustomerField[];
|
13
|
+
allFields: EnhancedCustomerField[];
|
14
|
+
countries: Country[];
|
15
|
+
selectedCountry: Country;
|
16
|
+
setCountry: React.Dispatch<React.SetStateAction<Country>>;
|
17
|
+
loading: boolean;
|
18
|
+
} | undefined;
|
19
|
+
export declare const SignupContext: React.Context<{
|
20
|
+
isUserTypeBusiness: boolean;
|
21
|
+
billingAddressFields: EnhancedCustomerField[];
|
22
|
+
loginFields: EnhancedCustomerField[];
|
23
|
+
allFields: EnhancedCustomerField[];
|
24
|
+
countries: Country[];
|
25
|
+
selectedCountry: Country;
|
26
|
+
setCountry: React.Dispatch<React.SetStateAction<Country>>;
|
27
|
+
loading: boolean;
|
28
|
+
}>;
|
29
|
+
declare const SignupProvider: React.FC<{
|
30
|
+
value?: ISignupContext;
|
31
|
+
LoadingComponent?: JSX.Element;
|
32
|
+
}>;
|
33
|
+
export declare const SignupFormikContext: React.Context<{
|
34
|
+
formik: FormikProps<SignUpInput>;
|
35
|
+
}>;
|
36
|
+
export default SignupProvider;
|
@@ -0,0 +1,71 @@
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
2
|
+
var t = {};
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
+
t[p] = s[p];
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
+
t[p[i]] = s[p[i]];
|
9
|
+
}
|
10
|
+
return t;
|
11
|
+
};
|
12
|
+
import * as React from 'react';
|
13
|
+
import ChannelContext from '@jetshop/core/components/ChannelContext';
|
14
|
+
import { formFieldsFromSettings } from '@jetshop/core/components/Auth/formFieldsFromSettings';
|
15
|
+
import throwErrorInDev from '@jetshop/core/helpers/throwErrorInDev';
|
16
|
+
import { useCountrySettings } from '../ChannelContext/useCountrySettings';
|
17
|
+
// Holds fields and other API data
|
18
|
+
export const SignupContext = React.createContext(undefined);
|
19
|
+
const SignupProvider = function SignupContextProvider(_a) {
|
20
|
+
var { LoadingComponent } = _a, props = __rest(_a, ["LoadingComponent"]);
|
21
|
+
// We will use the selectedChannel to build the form to begin with.
|
22
|
+
// However, if the user changes country in the form, we should also change all
|
23
|
+
// of the fields and validation
|
24
|
+
const { selectedChannel } = React.useContext(ChannelContext);
|
25
|
+
const [isUserTypeBusiness, setIsUserTypeBusiness] = React.useState(false);
|
26
|
+
throwErrorInDev(!selectedChannel, 'Must be wrapped in ChannelContext Provider');
|
27
|
+
// Initialise country to the selected channel country. This will be selected
|
28
|
+
// by default in the form, and its settings will be used to build the form
|
29
|
+
// inputs and validation
|
30
|
+
const [country, setCountry] = React.useState(selectedChannel.country);
|
31
|
+
const { countrySettings, loading } = useCountrySettings();
|
32
|
+
const selectedCountrySettings = countrySettings &&
|
33
|
+
countrySettings.find((c) => c.countryCode === country.code);
|
34
|
+
// Get all the billing address fields from the country settings
|
35
|
+
const { allFields, billingAddressFields, loginFields } = !loading
|
36
|
+
? formFieldsFromSettings(selectedCountrySettings, isUserTypeBusiness)
|
37
|
+
: {
|
38
|
+
allFields: null,
|
39
|
+
billingAddressFields: null,
|
40
|
+
loginFields: null
|
41
|
+
};
|
42
|
+
const value = React.useMemo(() => {
|
43
|
+
return {
|
44
|
+
billingAddressFields,
|
45
|
+
loginFields,
|
46
|
+
allFields,
|
47
|
+
selectedCountry: country,
|
48
|
+
countries: selectedChannel.countries,
|
49
|
+
setCountry,
|
50
|
+
loading,
|
51
|
+
isUserTypeBusiness,
|
52
|
+
setIsUserTypeBusiness
|
53
|
+
};
|
54
|
+
}, [
|
55
|
+
billingAddressFields,
|
56
|
+
loginFields,
|
57
|
+
allFields,
|
58
|
+
country,
|
59
|
+
selectedChannel.countries,
|
60
|
+
loading,
|
61
|
+
isUserTypeBusiness
|
62
|
+
]);
|
63
|
+
if (loading) {
|
64
|
+
return LoadingComponent || null;
|
65
|
+
}
|
66
|
+
return React.createElement(SignupContext.Provider, Object.assign({ value: value }, props));
|
67
|
+
};
|
68
|
+
// Holds formik state
|
69
|
+
export const SignupFormikContext = React.createContext(undefined);
|
70
|
+
export default SignupProvider;
|
71
|
+
//# sourceMappingURL=signup-context.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"signup-context.js","sourceRoot":"","sources":["signup-context.tsx"],"names":[],"mappings":";;;;;;;;;;;AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,cAAc,MAAM,yCAAyC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,eAAe,MAAM,uCAAuC,CAAC;AAEpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAqB1E,kCAAkC;AAClC,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAiB,SAAS,CAAC,CAAC;AAE5E,MAAM,cAAc,GAGf,SAAS,qBAAqB,CAAC,EAA8B;QAA9B,EAAE,gBAAgB,OAAY,EAAP,KAAK,cAA5B,oBAA8B,CAAF;IAC9D,mEAAmE;IACnE,8EAA8E;IAC9E,+BAA+B;IAC/B,MAAM,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAE7D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1E,eAAe,CACb,CAAC,eAAe,EAChB,4CAA4C,CAC7C,CAAC;IAEF,4EAA4E;IAC5E,0EAA0E;IAC1E,wBAAwB;IACxB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACtE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC1D,MAAM,uBAAuB,GAC3B,eAAe;QACf,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9D,+DAA+D;IAC/D,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,GAAG,CAAC,OAAO;QAC/D,CAAC,CAAC,sBAAsB,CAAC,uBAAuB,EAAE,kBAAkB,CAAC;QACrE,CAAC,CAAC;YACE,SAAS,EAAE,IAAI;YACf,oBAAoB,EAAE,IAAI;YAC1B,WAAW,EAAE,IAAI;SAClB,CAAC;IAEN,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC/B,OAAO;YACL,oBAAoB;YACpB,WAAW;YACX,SAAS;YACT,eAAe,EAAE,OAAO;YACxB,SAAS,EAAE,eAAe,CAAC,SAAS;YACpC,UAAU;YACV,OAAO;YACP,kBAAkB;YAClB,qBAAqB;SACtB,CAAC;IACJ,CAAC,EAAE;QACD,oBAAoB;QACpB,WAAW;QACX,SAAS;QACT,OAAO;QACP,eAAe,CAAC,SAAS;QACzB,OAAO;QACP,kBAAkB;KACnB,CAAC,CAAC;IAEH,IAAI,OAAO,EAAE;QACX,OAAO,gBAAgB,IAAI,IAAI,CAAC;KACjC;IACD,OAAO,oBAAC,aAAa,CAAC,QAAQ,kBAAC,KAAK,EAAE,KAAK,IAAM,KAAK,EAAI,CAAC;AAC7D,CAAC,CAAC;AAEF,qBAAqB;AACrB,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC,aAAa,CAEnD,SAAS,CAAC,CAAC;AAEd,eAAe,cAAc,CAAC"}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
/* eslint-disable @typescript-eslint/camelcase */
|
2
|
+
import t from '@jetshop/intl';
|
3
|
+
export const translations = {
|
4
|
+
country: t('Select country'),
|
5
|
+
country_placeholder: t('Select country'),
|
6
|
+
city: t('City'),
|
7
|
+
city_placeholder: t('City'),
|
8
|
+
co: t('Extra address'),
|
9
|
+
co_placeholder: t('Extra address'),
|
10
|
+
companyAtt: t('Company contact name'),
|
11
|
+
companyAtt_placeholder: t('Company contact name'),
|
12
|
+
company: t('Company'),
|
13
|
+
companyName: t('Company'),
|
14
|
+
companyName_placeholder: t('Company'),
|
15
|
+
department: t('Department'),
|
16
|
+
department_placeholder: t('Department'),
|
17
|
+
email: t('E-mail address'),
|
18
|
+
email_placeholder: t('E-mail address'),
|
19
|
+
firstName: t('First name'),
|
20
|
+
firstName_placeholder: t('First name'),
|
21
|
+
lastName: t('Surname'),
|
22
|
+
lastName_placeholder: t('Surname'),
|
23
|
+
mobilePhone: t('Mobile phone number'),
|
24
|
+
mobilePhone_placeholder: t('Mobile phone number'),
|
25
|
+
municipality: t('County'),
|
26
|
+
municipality_placeholder: t('County'),
|
27
|
+
phone: t('Telephone number'),
|
28
|
+
phone_placeholder: t('Telephone number'),
|
29
|
+
organizationNumber: t('Company registration number'),
|
30
|
+
organizationNumber_placeholder: t('Company registration number'),
|
31
|
+
pid: t('National ID/Social Security number'),
|
32
|
+
company_pid: t('Company registration number'),
|
33
|
+
postalCode: t('Post code'),
|
34
|
+
postalCode_placeholder: t('Post code'),
|
35
|
+
region: t('Region'),
|
36
|
+
region_placeholder: t('Region'),
|
37
|
+
streetName: t('Address'),
|
38
|
+
streetName_placeholder: t('Address'),
|
39
|
+
password: t('Desired password'),
|
40
|
+
password_placeholder: t('Desired password'),
|
41
|
+
confirmPassword: t('Repeat desired password'),
|
42
|
+
confirmPassword_placeholder: t('Repeat desired password')
|
43
|
+
};
|
44
|
+
//# sourceMappingURL=signup-field-translations.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"signup-field-translations.js","sourceRoot":"","sources":["signup-field-translations.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,OAAO,CAAC,MAAM,eAAe,CAAC;AAE9B,MAAM,CAAC,MAAM,YAAY,GAA2B;IAClD,OAAO,EAAE,CAAC,CAAC,gBAAgB,CAAC;IAC5B,mBAAmB,EAAE,CAAC,CAAC,gBAAgB,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IACf,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC;IAC3B,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC;IACtB,cAAc,EAAE,CAAC,CAAC,eAAe,CAAC;IAClC,UAAU,EAAE,CAAC,CAAC,sBAAsB,CAAC;IACrC,sBAAsB,EAAE,CAAC,CAAC,sBAAsB,CAAC;IACjD,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC;IACrB,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC;IACzB,uBAAuB,EAAE,CAAC,CAAC,SAAS,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC;IAC3B,sBAAsB,EAAE,CAAC,CAAC,YAAY,CAAC;IACvC,KAAK,EAAE,CAAC,CAAC,gBAAgB,CAAC;IAC1B,iBAAiB,EAAE,CAAC,CAAC,gBAAgB,CAAC;IACtC,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC;IAC1B,qBAAqB,EAAE,CAAC,CAAC,YAAY,CAAC;IACtC,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC;IACtB,oBAAoB,EAAE,CAAC,CAAC,SAAS,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,qBAAqB,CAAC;IACrC,uBAAuB,EAAE,CAAC,CAAC,qBAAqB,CAAC;IACjD,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC;IACzB,wBAAwB,EAAE,CAAC,CAAC,QAAQ,CAAC;IACrC,KAAK,EAAE,CAAC,CAAC,kBAAkB,CAAC;IAC5B,iBAAiB,EAAE,CAAC,CAAC,kBAAkB,CAAC;IACxC,kBAAkB,EAAE,CAAC,CAAC,6BAA6B,CAAC;IACpD,8BAA8B,EAAE,CAAC,CAAC,6BAA6B,CAAC;IAChE,GAAG,EAAE,CAAC,CAAC,oCAAoC,CAAC;IAC5C,WAAW,EAAE,CAAC,CAAC,6BAA6B,CAAC;IAC7C,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC;IAC1B,sBAAsB,EAAE,CAAC,CAAC,WAAW,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC;IACnB,kBAAkB,EAAE,CAAC,CAAC,QAAQ,CAAC;IAC/B,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC;IACxB,sBAAsB,EAAE,CAAC,CAAC,SAAS,CAAC;IACpC,QAAQ,EAAE,CAAC,CAAC,kBAAkB,CAAC;IAC/B,oBAAoB,EAAE,CAAC,CAAC,kBAAkB,CAAC;IAC3C,eAAe,EAAE,CAAC,CAAC,yBAAyB,CAAC;IAC7C,2BAA2B,EAAE,CAAC,CAAC,yBAAyB,CAAC;CAC1D,CAAC"}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { SignUpFormInput } from '@jetshop/core/components/Auth/formatSignupInput';
|
2
|
+
import { FormikHelpers } from 'formik';
|
3
|
+
export declare function useSignupSubmit(): ({ values, actions }: {
|
4
|
+
values: SignUpFormInput;
|
5
|
+
actions: FormikHelpers<SignUpFormInput>;
|
6
|
+
}) => void;
|
@@ -0,0 +1,57 @@
|
|
1
|
+
import { formatSignupInput } from '@jetshop/core/components/Auth/formatSignupInput';
|
2
|
+
import useAuth from '@jetshop/core/components/AuthContext/useAuth';
|
3
|
+
import SignupMutation from '@jetshop/core/data/mutations/signup.gql';
|
4
|
+
import getErrorDetail from '@jetshop/core/helpers/getErrorDetail';
|
5
|
+
import { useApolloClient, useMutation } from '@apollo/client';
|
6
|
+
import { useContext } from 'react';
|
7
|
+
import { SignupContext } from './signup-context';
|
8
|
+
import { trackRegisterEvent } from '../../analytics/tracking';
|
9
|
+
import { useTracker } from '../../analytics/Analytics';
|
10
|
+
export function useSignupSubmit() {
|
11
|
+
const [mutate] = useMutation(SignupMutation);
|
12
|
+
const client = useApolloClient();
|
13
|
+
const { logIn } = useAuth();
|
14
|
+
const { isUserTypeBusiness } = useContext(SignupContext);
|
15
|
+
const track = useTracker();
|
16
|
+
return function signup({ values, actions }) {
|
17
|
+
// Set the Formik state to submitting…
|
18
|
+
actions.setSubmitting(true);
|
19
|
+
mutate({
|
20
|
+
variables: {
|
21
|
+
input: formatSignupInput(values, {
|
22
|
+
userType: isUserTypeBusiness ? 'COMPANY' : 'PRIVATE'
|
23
|
+
})
|
24
|
+
}
|
25
|
+
})
|
26
|
+
.then((resp) => {
|
27
|
+
// Submitting is done
|
28
|
+
actions.setSubmitting(false);
|
29
|
+
// Track user register in GTAG
|
30
|
+
track(trackRegisterEvent());
|
31
|
+
// Reset the Apollo store
|
32
|
+
client.resetStore().then(() => {
|
33
|
+
// Log the user in with the token from signup
|
34
|
+
logIn(resp.data.signUp.token.value);
|
35
|
+
});
|
36
|
+
}, (error) => {
|
37
|
+
const errorDetail = getErrorDetail(error);
|
38
|
+
const validationDetails = getvalidationDetails(errorDetail);
|
39
|
+
// Submitting is done
|
40
|
+
actions.setSubmitting(false);
|
41
|
+
actions.setStatus({
|
42
|
+
validationDetails,
|
43
|
+
isSignupError: true
|
44
|
+
});
|
45
|
+
})
|
46
|
+
.catch((err) => {
|
47
|
+
console.log(err);
|
48
|
+
actions.setSubmitting(false);
|
49
|
+
});
|
50
|
+
};
|
51
|
+
}
|
52
|
+
function getvalidationDetails(errorDetail) {
|
53
|
+
const [field] = Object.keys(errorDetail.data[0]);
|
54
|
+
const [detail] = errorDetail.data[0][field];
|
55
|
+
return [field, detail];
|
56
|
+
}
|
57
|
+
//# sourceMappingURL=signupSubmit.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"signupSubmit.js","sourceRoot":"","sources":["signupSubmit.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAElB,MAAM,iDAAiD,CAAC;AACzD,OAAO,OAAO,MAAM,8CAA8C,CAAC;AACnE,OAAO,cAAc,MAAM,yCAAyC,CAAC;AACrE,OAAO,cAEN,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,MAAM,UAAU,eAAe;IAC7B,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAG1B,cAAc,CAAC,CAAC;IAClB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;IAC5B,MAAM,EAAE,kBAAkB,EAAE,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAE3B,OAAO,SAAS,MAAM,CAAC,EACrB,MAAM,EACN,OAAO,EAIR;QACC,sCAAsC;QACtC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE5B,MAAM,CAAC;YACL,SAAS,EAAE;gBACT,KAAK,EAAE,iBAAiB,CAAC,MAAM,EAAE;oBAC/B,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;iBACrD,CAAC;aACH;SACF,CAAC;aACC,IAAI,CACH,CAAC,IAAI,EAAE,EAAE;YACP,qBAAqB;YACrB,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC7B,8BAA8B;YAC9B,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC;YAC5B,yBAAyB;YACzB,MAAM,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC5B,6CAA6C;gBAC7C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACL,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAC1C,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAE5D,qBAAqB;YACrB,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAE7B,OAAO,CAAC,SAAS,CAAC;gBAChB,iBAAiB;gBACjB,aAAa,EAAE,IAAI;aACpB,CAAC,CAAC;QACL,CAAC,CACF;aACA,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjB,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,WAAwB;IACpD,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAE5C,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACzB,CAAC"}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
export default function useAddressFields(): {
|
2
|
+
fields: {
|
3
|
+
inputProps: {
|
4
|
+
key: string;
|
5
|
+
type: string;
|
6
|
+
name: string;
|
7
|
+
label: string;
|
8
|
+
required: boolean;
|
9
|
+
};
|
10
|
+
type: string;
|
11
|
+
label: string;
|
12
|
+
placeholder?: string;
|
13
|
+
__typename?: "CustomerField";
|
14
|
+
id: string;
|
15
|
+
required: boolean;
|
16
|
+
pattern?: string;
|
17
|
+
fields?: import("../../types").CustomerField[];
|
18
|
+
name: string;
|
19
|
+
}[];
|
20
|
+
countries: import("../../types").Country[];
|
21
|
+
setCountryByCode: (countryCode: string) => void;
|
22
|
+
};
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import throwErrorInDev from '@jetshop/core/helpers/throwErrorInDev';
|
2
|
+
import React from 'react';
|
3
|
+
import { SignupContext } from './signup-context';
|
4
|
+
export default function useAddressFields() {
|
5
|
+
const context = React.useContext(SignupContext);
|
6
|
+
// Throw if this hook is used from outside the signup form container (which
|
7
|
+
// contains the context provider)
|
8
|
+
throwErrorInDev(typeof context === 'undefined', 'useAddressFields can only be used from inside `SignupFormContainer`');
|
9
|
+
const { billingAddressFields, countries, setCountry } = context;
|
10
|
+
// Change the selected country by country code
|
11
|
+
// This will change the fields and validations based on that country's settings
|
12
|
+
const setCountryByCode = React.useCallback((countryCode) => {
|
13
|
+
const country = countries.find((c) => c.code === countryCode);
|
14
|
+
if (!country)
|
15
|
+
return;
|
16
|
+
setCountry(country);
|
17
|
+
}, [countries, setCountry]);
|
18
|
+
// Filter out the country field from the billing address fields, as it is handled separately
|
19
|
+
// See: Countries.tsx
|
20
|
+
const fields = billingAddressFields
|
21
|
+
.filter((f) => f.name !== 'country')
|
22
|
+
.map((field) => {
|
23
|
+
return Object.assign(Object.assign({}, field), { inputProps: {
|
24
|
+
key: field.id,
|
25
|
+
type: field.type,
|
26
|
+
name: field.name,
|
27
|
+
label: field.label,
|
28
|
+
required: field.required
|
29
|
+
} });
|
30
|
+
});
|
31
|
+
return { fields, countries, setCountryByCode };
|
32
|
+
}
|
33
|
+
//# sourceMappingURL=useAddressFields.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useAddressFields.js","sourceRoot":"","sources":["useAddressFields.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,uCAAuC,CAAC;AACpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,CAAC,OAAO,UAAU,gBAAgB;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAEhD,2EAA2E;IAC3E,iCAAiC;IACjC,eAAe,CACb,OAAO,OAAO,KAAK,WAAW,EAC9B,qEAAqE,CACtE,CAAC;IAEF,MAAM,EAAE,oBAAoB,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAEhE,8CAA8C;IAC9C,+EAA+E;IAC/E,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CACxC,CAAC,WAAmB,EAAE,EAAE;QACtB,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAE9D,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,UAAU,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC,EACD,CAAC,SAAS,EAAE,UAAU,CAAC,CACxB,CAAC;IAEF,4FAA4F;IAC5F,qBAAqB;IACrB,MAAM,MAAM,GAAG,oBAAoB;SAChC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC;SACnC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,uCACK,KAAK,KACR,UAAU,EAAE;gBACV,GAAG,EAAE,KAAK,CAAC,EAAE;gBACb,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,IACD;IACJ,CAAC,CAAC,CAAC;IAEL,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AACjD,CAAC"}
|
@@ -3,11 +3,13 @@ import { render, fireEvent, waitForElement } from '@testing-library/react';
|
|
3
3
|
import useAddressFields from './useAddressFields';
|
4
4
|
import ChannelContext from '@jetshop/core/components/ChannelContext';
|
5
5
|
import SignupProvider from './signup-context';
|
6
|
-
import {
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
6
|
+
import {
|
7
|
+
ApolloClient,
|
8
|
+
ApolloProvider,
|
9
|
+
InMemoryCache,
|
10
|
+
gql
|
11
|
+
} from '@apollo/client';
|
12
|
+
import { MockLink } from '@apollo/client';
|
11
13
|
|
12
14
|
const fields = [
|
13
15
|
{
|
@@ -69,7 +71,7 @@ describe('useAddressFields', () => {
|
|
69
71
|
const testFields = await waitForElement(() => getAllByTestId('field'));
|
70
72
|
|
71
73
|
expect(testFields).toHaveLength(2);
|
72
|
-
testFields.map(field => expect(field.id).not.toBe('country'));
|
74
|
+
testFields.map((field) => expect(field.id).not.toBe('country'));
|
73
75
|
});
|
74
76
|
|
75
77
|
it('changes the form fields based on selected country', async () => {
|
@@ -270,7 +272,7 @@ function Wrapper() {
|
|
270
272
|
return (
|
271
273
|
<>
|
272
274
|
<div>
|
273
|
-
{fields.map(field => (
|
275
|
+
{fields.map((field) => (
|
274
276
|
<span data-testid="field" key={field.name}>
|
275
277
|
{field.name}
|
276
278
|
</span>
|
@@ -284,7 +286,7 @@ function Wrapper() {
|
|
284
286
|
Set country from form
|
285
287
|
</button>
|
286
288
|
|
287
|
-
{countries.map(country => (
|
289
|
+
{countries.map((country) => (
|
288
290
|
<span data-testid="country" key={country.id}>
|
289
291
|
{country.code}
|
290
292
|
</span>
|