medusa-storefront-data 2.3.0 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HOMEPAGE_CONFIG.md +133 -0
- package/dist/segment-data/default-page-input.json +191 -0
- package/dist/src/config.d.ts.map +1 -0
- package/dist/src/cookies.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/index.d.ts +103 -0
- package/dist/src/dynamic-config-schema/index.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/index.js +172 -0
- package/dist/src/dynamic-config-schema/sections/about-brand.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/about-brand.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/about-brand.js +30 -0
- package/dist/src/dynamic-config-schema/sections/baptism-picks.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/baptism-picks.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/baptism-picks.js +17 -0
- package/dist/src/dynamic-config-schema/sections/baptism.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/baptism.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/baptism.js +4 -0
- package/dist/src/dynamic-config-schema/sections/blog-posts.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/blog-posts.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/blog-posts.js +31 -0
- package/dist/src/dynamic-config-schema/sections/brand-marquee.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/brand-marquee.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/brand-marquee.js +9 -0
- package/dist/src/dynamic-config-schema/sections/brand-pillars.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/brand-pillars.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/brand-pillars.js +29 -0
- package/dist/src/dynamic-config-schema/sections/category-pills.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/category-pills.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/category-pills.js +4 -0
- package/dist/src/dynamic-config-schema/sections/celebrity-trust.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/celebrity-trust.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/celebrity-trust.js +4 -0
- package/dist/src/dynamic-config-schema/sections/features.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/features.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/features.js +12 -0
- package/dist/src/dynamic-config-schema/sections/hero.d.ts +6 -0
- package/dist/src/dynamic-config-schema/sections/hero.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/hero.js +9 -0
- package/dist/src/dynamic-config-schema/sections/index.d.ts +24 -0
- package/dist/src/dynamic-config-schema/sections/index.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/index.js +23 -0
- package/dist/src/dynamic-config-schema/sections/instagram-posts.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/instagram-posts.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/instagram-posts.js +30 -0
- package/dist/src/dynamic-config-schema/sections/loved-by-moms.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/loved-by-moms.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/loved-by-moms.js +4 -0
- package/dist/src/dynamic-config-schema/sections/luxe-favourites.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/luxe-favourites.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/luxe-favourites.js +4 -0
- package/dist/src/dynamic-config-schema/sections/new-arrivals-classic.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/new-arrivals-classic.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/new-arrivals-classic.js +12 -0
- package/dist/src/dynamic-config-schema/sections/new-arrivals.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/new-arrivals.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/new-arrivals.js +12 -0
- package/dist/src/dynamic-config-schema/sections/promo-announcements.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/promo-announcements.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/promo-announcements.js +16 -0
- package/dist/src/dynamic-config-schema/sections/promo-countdown.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/promo-countdown.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/promo-countdown.js +16 -0
- package/dist/src/dynamic-config-schema/sections/shop-by-age.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/shop-by-age.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/shop-by-age.js +4 -0
- package/dist/src/dynamic-config-schema/sections/shop-by-category.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/shop-by-category.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/shop-by-category.js +4 -0
- package/dist/src/dynamic-config-schema/sections/testimonials.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/testimonials.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/testimonials.js +9 -0
- package/dist/src/dynamic-config-schema/sections/theme-dresses.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/theme-dresses.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/theme-dresses.js +4 -0
- package/dist/src/dynamic-config-schema/sections/video-stories.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/video-stories.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/video-stories.js +24 -0
- package/dist/src/dynamic-config-schema/sections/why-choose-us.d.ts +5 -0
- package/dist/src/dynamic-config-schema/sections/why-choose-us.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/sections/why-choose-us.js +9 -0
- package/dist/src/dynamic-config-schema/shared.d.ts +35 -0
- package/dist/src/dynamic-config-schema/shared.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/shared.js +99 -0
- package/dist/src/dynamic-config-schema/site-configs.d.ts +11 -0
- package/dist/src/dynamic-config-schema/site-configs.d.ts.map +1 -0
- package/dist/src/dynamic-config-schema/site-configs.js +70 -0
- package/dist/src/edge.d.ts.map +1 -0
- package/dist/src/middleware.d.ts.map +1 -0
- package/dist/src/server/brand-pillars-from-categories.d.ts +8 -0
- package/dist/src/server/brand-pillars-from-categories.d.ts.map +1 -0
- package/dist/src/server/brand-pillars-from-categories.js +92 -0
- package/dist/src/server/cart.d.ts.map +1 -0
- package/dist/{server → src/server}/cart.js +20 -20
- package/dist/src/server/categories.d.ts.map +1 -0
- package/dist/src/server/collections.d.ts.map +1 -0
- package/dist/src/server/config-merge.d.ts +3 -0
- package/dist/src/server/config-merge.d.ts.map +1 -0
- package/dist/src/server/config-merge.js +31 -0
- package/dist/src/server/contact.d.ts.map +1 -0
- package/dist/src/server/customer-registration.d.ts.map +1 -0
- package/dist/src/server/customer.d.ts.map +1 -0
- package/dist/{server → src/server}/customer.js +11 -11
- package/dist/src/server/dynamic-config-api.d.ts +11 -0
- package/dist/src/server/dynamic-config-api.d.ts.map +1 -0
- package/dist/src/server/dynamic-config-api.js +46 -0
- package/dist/src/server/dynamic-config.d.ts +157 -0
- package/dist/src/server/dynamic-config.d.ts.map +1 -0
- package/dist/src/server/dynamic-config.js +573 -0
- package/dist/src/server/fulfillment.d.ts.map +1 -0
- package/dist/{server → src/server}/fulfillment.js +3 -3
- package/dist/src/server/guest.d.ts.map +1 -0
- package/dist/src/server/home-sections/about-brand.d.ts +9 -0
- package/dist/src/server/home-sections/about-brand.d.ts.map +1 -0
- package/dist/src/server/home-sections/about-brand.js +9 -0
- package/dist/src/server/home-sections/baptism-picks.d.ts +10 -0
- package/dist/src/server/home-sections/baptism-picks.d.ts.map +1 -0
- package/dist/src/server/home-sections/baptism-picks.js +27 -0
- package/dist/src/server/home-sections/baptism.d.ts +13 -0
- package/dist/src/server/home-sections/baptism.d.ts.map +1 -0
- package/dist/src/server/home-sections/baptism.js +43 -0
- package/dist/src/server/home-sections/blog-posts.d.ts +9 -0
- package/dist/src/server/home-sections/blog-posts.d.ts.map +1 -0
- package/dist/src/server/home-sections/blog-posts.js +9 -0
- package/dist/src/server/home-sections/brand-marquee.d.ts +8 -0
- package/dist/src/server/home-sections/brand-marquee.d.ts.map +1 -0
- package/dist/src/server/home-sections/brand-marquee.js +7 -0
- package/dist/src/server/home-sections/brand-pillars.d.ts +9 -0
- package/dist/src/server/home-sections/brand-pillars.d.ts.map +1 -0
- package/dist/src/server/home-sections/brand-pillars.js +9 -0
- package/dist/src/server/home-sections/category-pills.d.ts +9 -0
- package/dist/src/server/home-sections/category-pills.d.ts.map +1 -0
- package/dist/src/server/home-sections/category-pills.js +19 -0
- package/dist/src/server/home-sections/celebrity-trust.d.ts +12 -0
- package/dist/src/server/home-sections/celebrity-trust.d.ts.map +1 -0
- package/dist/src/server/home-sections/celebrity-trust.js +27 -0
- package/dist/src/server/home-sections/features.d.ts +9 -0
- package/dist/src/server/home-sections/features.d.ts.map +1 -0
- package/dist/src/server/home-sections/features.js +9 -0
- package/dist/src/server/home-sections/hero.d.ts +9 -0
- package/dist/src/server/home-sections/hero.d.ts.map +1 -0
- package/dist/src/server/home-sections/hero.js +9 -0
- package/dist/src/server/home-sections/instagram-posts.d.ts +9 -0
- package/dist/src/server/home-sections/instagram-posts.d.ts.map +1 -0
- package/dist/src/server/home-sections/instagram-posts.js +9 -0
- package/dist/src/server/home-sections/loved-by-moms.d.ts +12 -0
- package/dist/src/server/home-sections/loved-by-moms.d.ts.map +1 -0
- package/dist/src/server/home-sections/loved-by-moms.js +20 -0
- package/dist/src/server/home-sections/luxe-favourites.d.ts +11 -0
- package/dist/src/server/home-sections/luxe-favourites.d.ts.map +1 -0
- package/dist/src/server/home-sections/luxe-favourites.js +19 -0
- package/dist/src/server/home-sections/new-arrivals-classic.d.ts +8 -0
- package/dist/src/server/home-sections/new-arrivals-classic.d.ts.map +1 -0
- package/dist/src/server/home-sections/new-arrivals-classic.js +10 -0
- package/dist/src/server/home-sections/new-arrivals.d.ts +12 -0
- package/dist/src/server/home-sections/new-arrivals.d.ts.map +1 -0
- package/dist/src/server/home-sections/new-arrivals.js +28 -0
- package/dist/src/server/home-sections/promo-announcements.d.ts +7 -0
- package/dist/src/server/home-sections/promo-announcements.d.ts.map +1 -0
- package/dist/src/server/home-sections/promo-announcements.js +7 -0
- package/dist/src/server/home-sections/promo-countdown.d.ts +6 -0
- package/dist/src/server/home-sections/promo-countdown.d.ts.map +1 -0
- package/dist/src/server/home-sections/promo-countdown.js +5 -0
- package/dist/src/server/home-sections/shared.d.ts +10 -0
- package/dist/src/server/home-sections/shared.d.ts.map +1 -0
- package/dist/src/server/home-sections/shared.js +29 -0
- package/dist/src/server/home-sections/shop-by-age.d.ts +9 -0
- package/dist/src/server/home-sections/shop-by-age.d.ts.map +1 -0
- package/dist/src/server/home-sections/shop-by-age.js +17 -0
- package/dist/src/server/home-sections/shop-by-category.d.ts +10 -0
- package/dist/src/server/home-sections/shop-by-category.d.ts.map +1 -0
- package/dist/src/server/home-sections/shop-by-category.js +17 -0
- package/dist/src/server/home-sections/testimonials.d.ts +9 -0
- package/dist/src/server/home-sections/testimonials.d.ts.map +1 -0
- package/dist/src/server/home-sections/testimonials.js +9 -0
- package/dist/src/server/home-sections/theme-dresses.d.ts +12 -0
- package/dist/src/server/home-sections/theme-dresses.d.ts.map +1 -0
- package/dist/src/server/home-sections/theme-dresses.js +27 -0
- package/dist/src/server/home-sections/video-stories.d.ts +9 -0
- package/dist/src/server/home-sections/video-stories.d.ts.map +1 -0
- package/dist/src/server/home-sections/video-stories.js +9 -0
- package/dist/src/server/home-sections/why-choose-us.d.ts +9 -0
- package/dist/src/server/home-sections/why-choose-us.d.ts.map +1 -0
- package/dist/src/server/home-sections/why-choose-us.js +9 -0
- package/dist/{server → src/server}/home.d.ts +18 -9
- package/dist/src/server/home.d.ts.map +1 -0
- package/dist/src/server/home.js +1 -0
- package/dist/src/server/homepage-config.types.d.ts +274 -0
- package/dist/src/server/homepage-config.types.d.ts.map +1 -0
- package/dist/src/server/homepage-config.types.js +33 -0
- package/dist/{server → src/server}/homepage-section-defaults.d.ts +35 -2
- package/dist/src/server/homepage-section-defaults.d.ts.map +1 -0
- package/dist/{server → src/server}/homepage-section-defaults.js +41 -2
- package/dist/{server → src/server}/index.d.ts +2 -0
- package/dist/src/server/index.d.ts.map +1 -0
- package/dist/{server → src/server}/index.js +2 -0
- package/dist/src/server/locale-actions.d.ts.map +1 -0
- package/dist/src/server/locales.d.ts.map +1 -0
- package/dist/src/server/normalize-homepage-config.d.ts +7 -0
- package/dist/src/server/normalize-homepage-config.d.ts.map +1 -0
- package/dist/src/server/normalize-homepage-config.js +213 -0
- package/dist/src/server/notifications.d.ts.map +1 -0
- package/dist/src/server/onboarding.d.ts.map +1 -0
- package/dist/src/server/orders.d.ts.map +1 -0
- package/dist/{server → src/server}/orders.js +6 -6
- package/dist/src/server/page-input.d.ts +19 -0
- package/dist/src/server/page-input.d.ts.map +1 -0
- package/dist/src/server/page-input.js +42 -0
- package/dist/src/server/payment-details.d.ts.map +1 -0
- package/dist/{server → src/server}/payment-details.js +5 -5
- package/dist/src/server/payment.d.ts.map +1 -0
- package/dist/{server → src/server}/payment.js +2 -2
- package/dist/src/server/pincode.d.ts.map +1 -0
- package/dist/src/server/products.d.ts.map +1 -0
- package/dist/src/server/regions.d.ts.map +1 -0
- package/dist/{server → src/server}/regions.js +2 -2
- package/dist/src/server/resolve-home-segment-data.d.ts +25 -0
- package/dist/src/server/resolve-home-segment-data.d.ts.map +1 -0
- package/dist/src/server/resolve-home-segment-data.js +20 -0
- package/dist/src/server/returns.d.ts.map +1 -0
- package/dist/src/server/shoppable-looks.d.ts +17 -0
- package/dist/src/server/shoppable-looks.d.ts.map +1 -0
- package/dist/src/server/shoppable-looks.js +136 -0
- package/dist/src/server/swaps.d.ts.map +1 -0
- package/dist/src/server/variants.d.ts.map +1 -0
- package/dist/src/server/wishlist.d.ts.map +1 -0
- package/dist/src/util/get-locale-header.d.ts.map +1 -0
- package/dist/src/util/medusa-error.d.ts.map +1 -0
- package/dist/src/util/revalidate-cart.d.ts.map +1 -0
- package/dist/src/util/sort-products.d.ts.map +1 -0
- package/dist/{util → src/util}/store-client.d.ts +0 -2
- package/dist/src/util/store-client.d.ts.map +1 -0
- package/dist/{util → src/util}/store-client.js +0 -2
- package/homepage-config.example.json +209 -0
- package/homepage-sections.example.json +55 -0
- package/package.json +120 -156
- package/segment-data/default-page-input.json +191 -0
- package/src/server/brand-pillars-from-categories.ts +156 -0
- package/src/server/cart.ts +20 -20
- package/src/server/config-merge.ts +31 -0
- package/src/server/customer.ts +11 -11
- package/src/server/dynamic-config.ts +507 -566
- package/src/server/fulfillment.ts +3 -3
- package/src/server/home-sections/about-brand.ts +24 -0
- package/src/server/home-sections/baptism-picks.ts +46 -0
- package/src/server/home-sections/baptism.ts +64 -0
- package/src/server/home-sections/blog-posts.ts +23 -0
- package/src/server/home-sections/brand-marquee.ts +17 -0
- package/src/server/home-sections/brand-pillars.ts +23 -0
- package/src/server/home-sections/category-pills.ts +32 -0
- package/src/server/home-sections/celebrity-trust.ts +42 -0
- package/src/server/home-sections/features.ts +23 -0
- package/src/server/home-sections/hero.ts +24 -0
- package/src/server/home-sections/instagram-posts.ts +23 -0
- package/src/server/home-sections/loved-by-moms.ts +34 -0
- package/src/server/home-sections/luxe-favourites.ts +30 -0
- package/src/server/home-sections/new-arrivals-classic.ts +21 -0
- package/src/server/home-sections/new-arrivals.ts +47 -0
- package/src/server/home-sections/promo-announcements.ts +17 -0
- package/src/server/home-sections/promo-countdown.ts +15 -0
- package/src/server/home-sections/shared.ts +44 -0
- package/src/server/home-sections/shop-by-age.ts +26 -0
- package/src/server/home-sections/shop-by-category.ts +28 -0
- package/src/server/home-sections/testimonials.ts +23 -0
- package/src/server/home-sections/theme-dresses.ts +49 -0
- package/src/server/home-sections/video-stories.ts +23 -0
- package/src/server/home-sections/why-choose-us.ts +23 -0
- package/src/server/home.ts +46 -207
- package/src/server/homepage-config.types.ts +335 -0
- package/src/server/homepage-section-defaults.ts +41 -2
- package/src/server/index.ts +2 -0
- package/src/server/normalize-homepage-config.ts +240 -0
- package/src/server/orders.ts +6 -6
- package/src/server/page-input.ts +66 -0
- package/src/server/payment-details.ts +5 -5
- package/src/server/payment.ts +2 -2
- package/src/server/regions.ts +2 -2
- package/src/server/resolve-home-segment-data.ts +63 -0
- package/src/server/shoppable-looks.ts +178 -0
- package/src/util/store-client.ts +0 -3
- package/dist/config.d.ts.map +0 -1
- package/dist/cookies.d.ts.map +0 -1
- package/dist/edge.d.ts.map +0 -1
- package/dist/middleware.d.ts.map +0 -1
- package/dist/server/cart.d.ts.map +0 -1
- package/dist/server/categories.d.ts.map +0 -1
- package/dist/server/collections.d.ts.map +0 -1
- package/dist/server/contact.d.ts.map +0 -1
- package/dist/server/customer-registration.d.ts.map +0 -1
- package/dist/server/customer.d.ts.map +0 -1
- package/dist/server/dynamic-config.d.ts +0 -202
- package/dist/server/dynamic-config.d.ts.map +0 -1
- package/dist/server/dynamic-config.js +0 -675
- package/dist/server/fulfillment.d.ts.map +0 -1
- package/dist/server/guest.d.ts.map +0 -1
- package/dist/server/home.d.ts.map +0 -1
- package/dist/server/home.js +0 -124
- package/dist/server/homepage-section-defaults.d.ts.map +0 -1
- package/dist/server/index.d.ts.map +0 -1
- package/dist/server/locale-actions.d.ts.map +0 -1
- package/dist/server/locales.d.ts.map +0 -1
- package/dist/server/notifications.d.ts.map +0 -1
- package/dist/server/onboarding.d.ts.map +0 -1
- package/dist/server/orders.d.ts.map +0 -1
- package/dist/server/payment-details.d.ts.map +0 -1
- package/dist/server/payment.d.ts.map +0 -1
- package/dist/server/pincode.d.ts.map +0 -1
- package/dist/server/products.d.ts.map +0 -1
- package/dist/server/regions.d.ts.map +0 -1
- package/dist/server/returns.d.ts.map +0 -1
- package/dist/server/swaps.d.ts.map +0 -1
- package/dist/server/variants.d.ts.map +0 -1
- package/dist/server/wishlist.d.ts.map +0 -1
- package/dist/util/get-locale-header.d.ts.map +0 -1
- package/dist/util/medusa-error.d.ts.map +0 -1
- package/dist/util/revalidate-cart.d.ts.map +0 -1
- package/dist/util/sort-products.d.ts.map +0 -1
- package/dist/util/store-client.d.ts.map +0 -1
- /package/dist/{config.d.ts → src/config.d.ts} +0 -0
- /package/dist/{config.js → src/config.js} +0 -0
- /package/dist/{cookies.d.ts → src/cookies.d.ts} +0 -0
- /package/dist/{cookies.js → src/cookies.js} +0 -0
- /package/dist/{edge.d.ts → src/edge.d.ts} +0 -0
- /package/dist/{edge.js → src/edge.js} +0 -0
- /package/dist/{middleware.d.ts → src/middleware.d.ts} +0 -0
- /package/dist/{middleware.js → src/middleware.js} +0 -0
- /package/dist/{server → src/server}/cart.d.ts +0 -0
- /package/dist/{server → src/server}/categories.d.ts +0 -0
- /package/dist/{server → src/server}/categories.js +0 -0
- /package/dist/{server → src/server}/collections.d.ts +0 -0
- /package/dist/{server → src/server}/collections.js +0 -0
- /package/dist/{server → src/server}/contact.d.ts +0 -0
- /package/dist/{server → src/server}/contact.js +0 -0
- /package/dist/{server → src/server}/customer-registration.d.ts +0 -0
- /package/dist/{server → src/server}/customer-registration.js +0 -0
- /package/dist/{server → src/server}/customer.d.ts +0 -0
- /package/dist/{server → src/server}/fulfillment.d.ts +0 -0
- /package/dist/{server → src/server}/guest.d.ts +0 -0
- /package/dist/{server → src/server}/guest.js +0 -0
- /package/dist/{server → src/server}/locale-actions.d.ts +0 -0
- /package/dist/{server → src/server}/locale-actions.js +0 -0
- /package/dist/{server → src/server}/locales.d.ts +0 -0
- /package/dist/{server → src/server}/locales.js +0 -0
- /package/dist/{server → src/server}/notifications.d.ts +0 -0
- /package/dist/{server → src/server}/notifications.js +0 -0
- /package/dist/{server → src/server}/onboarding.d.ts +0 -0
- /package/dist/{server → src/server}/onboarding.js +0 -0
- /package/dist/{server → src/server}/orders.d.ts +0 -0
- /package/dist/{server → src/server}/payment-details.d.ts +0 -0
- /package/dist/{server → src/server}/payment.d.ts +0 -0
- /package/dist/{server → src/server}/pincode.d.ts +0 -0
- /package/dist/{server → src/server}/pincode.js +0 -0
- /package/dist/{server → src/server}/products.d.ts +0 -0
- /package/dist/{server → src/server}/products.js +0 -0
- /package/dist/{server → src/server}/regions.d.ts +0 -0
- /package/dist/{server → src/server}/returns.d.ts +0 -0
- /package/dist/{server → src/server}/returns.js +0 -0
- /package/dist/{server → src/server}/swaps.d.ts +0 -0
- /package/dist/{server → src/server}/swaps.js +0 -0
- /package/dist/{server → src/server}/variants.d.ts +0 -0
- /package/dist/{server → src/server}/variants.js +0 -0
- /package/dist/{server → src/server}/wishlist.d.ts +0 -0
- /package/dist/{server → src/server}/wishlist.js +0 -0
- /package/dist/{util → src/util}/get-locale-header.d.ts +0 -0
- /package/dist/{util → src/util}/get-locale-header.js +0 -0
- /package/dist/{util → src/util}/medusa-error.d.ts +0 -0
- /package/dist/{util → src/util}/medusa-error.js +0 -0
- /package/dist/{util → src/util}/revalidate-cart.d.ts +0 -0
- /package/dist/{util → src/util}/revalidate-cart.js +0 -0
- /package/dist/{util → src/util}/sort-products.d.ts +0 -0
- /package/dist/{util → src/util}/sort-products.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testimonials.d.ts","sourceRoot":"","sources":["../../../../src/server/home-sections/testimonials.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAEpB,OAAO,EACL,gCAAgC,EAChC,4BAA4B,EAC7B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEpD,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAA;IAC7D,IAAI,EAAE,UAAU,CAAC,OAAO,gCAAgC,CAAC,CAAC,cAAc,CAAC,CAAA;CAC1E,CAAA;AAED,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,uBAAuB,CAAC,CAMlC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "server-only";
|
|
2
|
+
import { getHomeSectionsCopyFromPageInput, getTestimonialsFromPageInput, } from "../dynamic-config";
|
|
3
|
+
export async function loadTestimonialsSectionData(_countryCode, options) {
|
|
4
|
+
const pageInput = options?.pageInput ?? null;
|
|
5
|
+
return {
|
|
6
|
+
testimonials: getTestimonialsFromPageInput(pageInput),
|
|
7
|
+
copy: getHomeSectionsCopyFromPageInput(pageInput).testimonials,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import "server-only";
|
|
2
|
+
import { HttpTypes } from "@medusajs/types";
|
|
3
|
+
import { getHomeSectionsCopyFromPageInput } from "../dynamic-config";
|
|
4
|
+
import { requireRegion, type SectionLoaderOptions } from "./shared";
|
|
5
|
+
export type ThemeDressesSectionData = {
|
|
6
|
+
region: NonNullable<Awaited<ReturnType<typeof requireRegion>>>;
|
|
7
|
+
themeProducts: HttpTypes.StoreProduct[];
|
|
8
|
+
ratings: unknown[];
|
|
9
|
+
copy: ReturnType<typeof getHomeSectionsCopyFromPageInput>["themeDresses"];
|
|
10
|
+
};
|
|
11
|
+
export declare function loadThemeDressesSectionData(countryCode: string, options?: SectionLoaderOptions): Promise<ThemeDressesSectionData | null>;
|
|
12
|
+
//# sourceMappingURL=theme-dresses.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme-dresses.d.ts","sourceRoot":"","sources":["../../../../src/server/home-sections/theme-dresses.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAEpB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAA;AAGpE,OAAO,EAGL,aAAa,EACb,KAAK,oBAAoB,EAC1B,MAAM,UAAU,CAAA;AAEjB,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAA;IAC9D,aAAa,EAAE,SAAS,CAAC,YAAY,EAAE,CAAA;IACvC,OAAO,EAAE,OAAO,EAAE,CAAA;IAClB,IAAI,EAAE,UAAU,CAAC,OAAO,gCAAgC,CAAC,CAAC,cAAc,CAAC,CAAA;CAC1E,CAAA;AAED,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAwBzC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import "server-only";
|
|
2
|
+
import { fetchRatings } from "medusa-reviews-logic/server";
|
|
3
|
+
import { getHomeSectionsCopyFromPageInput } from "../dynamic-config";
|
|
4
|
+
import { listCategories } from "../categories";
|
|
5
|
+
import { getProductsByTag } from "../products";
|
|
6
|
+
import { categoryIdsMatching, productsForCategoryIds, requireRegion, } from "./shared";
|
|
7
|
+
export async function loadThemeDressesSectionData(countryCode, options) {
|
|
8
|
+
const region = await requireRegion(countryCode);
|
|
9
|
+
if (!region)
|
|
10
|
+
return null;
|
|
11
|
+
const pageInput = options?.pageInput ?? null;
|
|
12
|
+
const [themeByTag, categoriesResult, ratings] = await Promise.all([
|
|
13
|
+
getProductsByTag({ tagValue: "theme", limit: 8, countryCode }).catch(() => []),
|
|
14
|
+
listCategories({ limit: 100 }).catch(() => []),
|
|
15
|
+
fetchRatings(),
|
|
16
|
+
]);
|
|
17
|
+
const categories = (categoriesResult ?? []);
|
|
18
|
+
const themeProducts = themeByTag.length > 0
|
|
19
|
+
? themeByTag
|
|
20
|
+
: await productsForCategoryIds(countryCode, categoryIdsMatching(categories, /theme/), 8);
|
|
21
|
+
return {
|
|
22
|
+
region,
|
|
23
|
+
themeProducts,
|
|
24
|
+
ratings: ratings ?? [],
|
|
25
|
+
copy: getHomeSectionsCopyFromPageInput(pageInput).themeDresses,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "server-only";
|
|
2
|
+
import { getHomeSectionsCopyFromPageInput, getVideoStoriesFromPageInput } from "../dynamic-config";
|
|
3
|
+
import type { SectionLoaderOptions } from "./shared";
|
|
4
|
+
export type VideoStoriesSectionData = {
|
|
5
|
+
videoStories: ReturnType<typeof getVideoStoriesFromPageInput>;
|
|
6
|
+
copy: ReturnType<typeof getHomeSectionsCopyFromPageInput>["videoStories"];
|
|
7
|
+
};
|
|
8
|
+
export declare function loadVideoStoriesSectionData(_countryCode: string, options?: SectionLoaderOptions): Promise<VideoStoriesSectionData>;
|
|
9
|
+
//# sourceMappingURL=video-stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"video-stories.d.ts","sourceRoot":"","sources":["../../../../src/server/home-sections/video-stories.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAEpB,OAAO,EACL,gCAAgC,EAChC,4BAA4B,EAC7B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEpD,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAA;IAC7D,IAAI,EAAE,UAAU,CAAC,OAAO,gCAAgC,CAAC,CAAC,cAAc,CAAC,CAAA;CAC1E,CAAA;AAED,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,uBAAuB,CAAC,CAMlC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "server-only";
|
|
2
|
+
import { getHomeSectionsCopyFromPageInput, getVideoStoriesFromPageInput, } from "../dynamic-config";
|
|
3
|
+
export async function loadVideoStoriesSectionData(_countryCode, options) {
|
|
4
|
+
const pageInput = options?.pageInput ?? null;
|
|
5
|
+
return {
|
|
6
|
+
videoStories: getVideoStoriesFromPageInput(pageInput),
|
|
7
|
+
copy: getHomeSectionsCopyFromPageInput(pageInput).videoStories,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "server-only";
|
|
2
|
+
import { getFeaturesFromPageInput, getHomeSectionsCopyFromPageInput } from "../dynamic-config";
|
|
3
|
+
import type { SectionLoaderOptions } from "./shared";
|
|
4
|
+
export type WhyChooseUsSectionData = {
|
|
5
|
+
whyChooseUsFeatures: ReturnType<typeof getFeaturesFromPageInput>;
|
|
6
|
+
copy: ReturnType<typeof getHomeSectionsCopyFromPageInput>["whyChooseUs"];
|
|
7
|
+
};
|
|
8
|
+
export declare function loadWhyChooseUsSectionData(_countryCode: string, options?: SectionLoaderOptions): Promise<WhyChooseUsSectionData>;
|
|
9
|
+
//# sourceMappingURL=why-choose-us.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"why-choose-us.d.ts","sourceRoot":"","sources":["../../../../src/server/home-sections/why-choose-us.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAEpB,OAAO,EACL,wBAAwB,EACxB,gCAAgC,EACjC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEpD,MAAM,MAAM,sBAAsB,GAAG;IACnC,mBAAmB,EAAE,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAA;IAChE,IAAI,EAAE,UAAU,CAAC,OAAO,gCAAgC,CAAC,CAAC,aAAa,CAAC,CAAA;CACzE,CAAA;AAED,wBAAsB,0BAA0B,CAC9C,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,sBAAsB,CAAC,CAMjC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "server-only";
|
|
2
|
+
import { getFeaturesFromPageInput, getHomeSectionsCopyFromPageInput, } from "../dynamic-config";
|
|
3
|
+
export async function loadWhyChooseUsSectionData(_countryCode, options) {
|
|
4
|
+
const pageInput = options?.pageInput ?? null;
|
|
5
|
+
return {
|
|
6
|
+
whyChooseUsFeatures: getFeaturesFromPageInput(pageInput),
|
|
7
|
+
copy: getHomeSectionsCopyFromPageInput(pageInput).whyChooseUs,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { HttpTypes } from "@medusajs/types";
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
1
|
+
import type { HttpTypes } from "@medusajs/types";
|
|
2
|
+
import type { InstagramPostsData, AboutBrandConfig, BrandPillarConfig, BlogPostConfig, HomeSectionsCopy, TrustFeaturesConfig, HomepageBanner } from "./dynamic-config";
|
|
3
|
+
import type { ShoppableLook } from "./shoppable-looks";
|
|
4
|
+
/** Shape returned by the legacy `loadHomePageData` loader (removed — use per-section loaders). */
|
|
4
5
|
export type HomePageData = {
|
|
5
|
-
region:
|
|
6
|
+
region: HttpTypes.StoreRegion | null;
|
|
6
7
|
collections: Array<Record<string, unknown>>;
|
|
7
8
|
categories: HttpTypes.StoreProductCategory[];
|
|
8
9
|
newArrivals: HttpTypes.StoreProduct[];
|
|
@@ -19,12 +20,14 @@ export type HomePageData = {
|
|
|
19
20
|
message: string | null;
|
|
20
21
|
endAt: string | null;
|
|
21
22
|
active: boolean;
|
|
23
|
+
ctaLabel: string | null;
|
|
24
|
+
ctaHref: string | null;
|
|
22
25
|
};
|
|
23
26
|
luxeFavourites: HttpTypes.StoreProduct[];
|
|
24
27
|
celebrityProduct: HttpTypes.StoreProduct | null;
|
|
25
28
|
baptismGirl: HttpTypes.StoreProduct[];
|
|
26
29
|
baptismBoy: HttpTypes.StoreProduct[];
|
|
27
|
-
baptismPicks:
|
|
30
|
+
baptismPicks: ShoppableLook[];
|
|
28
31
|
themeProducts: HttpTypes.StoreProduct[];
|
|
29
32
|
aboutBrand: AboutBrandConfig;
|
|
30
33
|
brandPillars: {
|
|
@@ -32,11 +35,17 @@ export type HomePageData = {
|
|
|
32
35
|
pillars: BrandPillarConfig[];
|
|
33
36
|
};
|
|
34
37
|
blogPosts: BlogPostConfig[];
|
|
38
|
+
instagramPosts: InstagramPostsData;
|
|
35
39
|
sectionsCopy: HomeSectionsCopy;
|
|
36
40
|
trustFeatures: TrustFeaturesConfig;
|
|
41
|
+
homeBanners: HomepageBanner[] | null;
|
|
42
|
+
appBanners: HomepageBanner[] | null;
|
|
43
|
+
whyChooseUsFeatures: {
|
|
44
|
+
title: string;
|
|
45
|
+
features: Array<{
|
|
46
|
+
name: string;
|
|
47
|
+
icon: string;
|
|
48
|
+
}>;
|
|
49
|
+
};
|
|
37
50
|
};
|
|
38
|
-
/**
|
|
39
|
-
* Parallel home page data loader for full storefront homepage sections.
|
|
40
|
-
*/
|
|
41
|
-
export declare function loadHomePageData(countryCode: string): Promise<HomePageData | null>;
|
|
42
51
|
//# sourceMappingURL=home.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"home.d.ts","sourceRoot":"","sources":["../../../src/server/home.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACf,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,kGAAkG;AAClG,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAA;IACpC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC3C,UAAU,EAAE,SAAS,CAAC,oBAAoB,EAAE,CAAA;IAC5C,WAAW,EAAE,SAAS,CAAC,YAAY,EAAE,CAAA;IACrC,WAAW,EAAE,SAAS,CAAC,YAAY,EAAE,CAAA;IACrC,YAAY,EAAE,OAAO,GAAG,IAAI,CAAA;IAC5B,OAAO,EAAE,OAAO,EAAE,CAAA;IAClB,YAAY,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI,CAAA;IAC3D,oBAAoB,EAAE,MAAM,EAAE,CAAA;IAC9B,cAAc,EAAE;QACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;QACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;QACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;QACpB,MAAM,EAAE,OAAO,CAAA;QACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KACvB,CAAA;IACD,cAAc,EAAE,SAAS,CAAC,YAAY,EAAE,CAAA;IACxC,gBAAgB,EAAE,SAAS,CAAC,YAAY,GAAG,IAAI,CAAA;IAC/C,WAAW,EAAE,SAAS,CAAC,YAAY,EAAE,CAAA;IACrC,UAAU,EAAE,SAAS,CAAC,YAAY,EAAE,CAAA;IACpC,YAAY,EAAE,aAAa,EAAE,CAAA;IAC7B,aAAa,EAAE,SAAS,CAAC,YAAY,EAAE,CAAA;IACvC,UAAU,EAAE,gBAAgB,CAAA;IAC5B,YAAY,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,iBAAiB,EAAE,CAAA;KAAE,CAAA;IACpE,SAAS,EAAE,cAAc,EAAE,CAAA;IAC3B,cAAc,EAAE,kBAAkB,CAAA;IAClC,YAAY,EAAE,gBAAgB,CAAA;IAC9B,aAAa,EAAE,mBAAmB,CAAA;IAClC,WAAW,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;IACpC,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;IACnC,mBAAmB,EAAE;QACnB,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAChD,CAAA;CACF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Medusa `GET /store/dynamic-config` → `homepage-config` shape.
|
|
3
|
+
* Used by the storefront and as the reference for backend admin JSON.
|
|
4
|
+
*
|
|
5
|
+
* Section keys: camelCase (preferred) or kebab-case (`new-arrivals` → `newArrivals`).
|
|
6
|
+
* Only fields you set override package defaults in `homepage-section-defaults.ts`.
|
|
7
|
+
*/
|
|
8
|
+
/** Shared copy fields merged into every section block. */
|
|
9
|
+
export type HomepageSectionCopyFields = {
|
|
10
|
+
title?: string;
|
|
11
|
+
name?: string;
|
|
12
|
+
subtitle?: string;
|
|
13
|
+
text?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
eyebrow?: string;
|
|
16
|
+
/** Layout variant, e.g. new arrivals: `grid` | `classic` */
|
|
17
|
+
variant?: string;
|
|
18
|
+
layout?: string;
|
|
19
|
+
};
|
|
20
|
+
export type HomepagePromoAnnouncementsSection = HomepageSectionCopyFields & {
|
|
21
|
+
messages?: string[];
|
|
22
|
+
items?: Array<string | {
|
|
23
|
+
message?: string;
|
|
24
|
+
text?: string;
|
|
25
|
+
}>;
|
|
26
|
+
"announcement-messages"?: string[];
|
|
27
|
+
};
|
|
28
|
+
export type HomepagePromoCountdownSection = HomepageSectionCopyFields & {
|
|
29
|
+
code?: string;
|
|
30
|
+
"coupon-code"?: string;
|
|
31
|
+
text?: string;
|
|
32
|
+
message?: string;
|
|
33
|
+
"promo-text"?: string;
|
|
34
|
+
"end-at"?: string;
|
|
35
|
+
endAt?: string;
|
|
36
|
+
active?: boolean;
|
|
37
|
+
"promo-active"?: boolean;
|
|
38
|
+
"cta-label"?: string;
|
|
39
|
+
"cta-href"?: string;
|
|
40
|
+
};
|
|
41
|
+
export type HomepageNewArrivalsSection = HomepageSectionCopyFields & {
|
|
42
|
+
/** `grid` (ProductCardView) or `classic` (ProductPreview + pink background) */
|
|
43
|
+
variant?: "grid" | "classic" | "legacy" | "preview";
|
|
44
|
+
};
|
|
45
|
+
export type HomepageTestimonialItem = {
|
|
46
|
+
text?: string;
|
|
47
|
+
name?: string;
|
|
48
|
+
rating?: number;
|
|
49
|
+
avatar?: string;
|
|
50
|
+
id?: string;
|
|
51
|
+
testimonial?: HomepageTestimonialItem;
|
|
52
|
+
review?: HomepageTestimonialItem;
|
|
53
|
+
};
|
|
54
|
+
export type HomepageTestimonialsSection = HomepageSectionCopyFields & {
|
|
55
|
+
items?: HomepageTestimonialItem[];
|
|
56
|
+
testimonials?: HomepageTestimonialItem[];
|
|
57
|
+
reviews?: HomepageTestimonialItem[];
|
|
58
|
+
};
|
|
59
|
+
export type HomepageRatingItem = HomepageTestimonialItem;
|
|
60
|
+
export type HomepageShoppableLook = {
|
|
61
|
+
image?: string;
|
|
62
|
+
"look-image"?: string;
|
|
63
|
+
"product-ids"?: string[];
|
|
64
|
+
productIds?: string[];
|
|
65
|
+
"product-handles"?: string[];
|
|
66
|
+
productHandles?: string[];
|
|
67
|
+
look?: HomepageShoppableLook;
|
|
68
|
+
};
|
|
69
|
+
export type HomepageBaptismPicksSection = HomepageSectionCopyFields & {
|
|
70
|
+
looks?: HomepageShoppableLook[];
|
|
71
|
+
"shop-looks"?: HomepageShoppableLook[];
|
|
72
|
+
};
|
|
73
|
+
export type HomepageAboutBrandStat = {
|
|
74
|
+
label?: string;
|
|
75
|
+
name?: string;
|
|
76
|
+
value?: string;
|
|
77
|
+
};
|
|
78
|
+
export type HomepageAboutBrandSection = HomepageSectionCopyFields & {
|
|
79
|
+
readMoreHref?: string;
|
|
80
|
+
"read-more-link"?: string;
|
|
81
|
+
stats?: HomepageAboutBrandStat[];
|
|
82
|
+
"about-stats"?: HomepageAboutBrandStat[];
|
|
83
|
+
};
|
|
84
|
+
export type HomepageBrandPillar = {
|
|
85
|
+
title?: string;
|
|
86
|
+
name?: string;
|
|
87
|
+
description?: string;
|
|
88
|
+
text?: string;
|
|
89
|
+
image?: string;
|
|
90
|
+
icon?: string;
|
|
91
|
+
pillar?: HomepageBrandPillar;
|
|
92
|
+
};
|
|
93
|
+
export type HomepageBrandPillarsSection = HomepageSectionCopyFields & {
|
|
94
|
+
pillars?: HomepageBrandPillar[];
|
|
95
|
+
"brand-pillars"?: HomepageBrandPillar[];
|
|
96
|
+
};
|
|
97
|
+
export type HomepageFeatureItem = {
|
|
98
|
+
name?: string;
|
|
99
|
+
icon?: string;
|
|
100
|
+
"feature-name"?: string;
|
|
101
|
+
"feature-icon"?: string;
|
|
102
|
+
feature?: HomepageFeatureItem;
|
|
103
|
+
};
|
|
104
|
+
export type HomepageFeaturesSection = HomepageSectionCopyFields & {
|
|
105
|
+
features?: HomepageFeatureItem[];
|
|
106
|
+
items?: HomepageFeatureItem[];
|
|
107
|
+
};
|
|
108
|
+
export type HomepageBlogPost = {
|
|
109
|
+
title?: string;
|
|
110
|
+
href?: string;
|
|
111
|
+
link?: string;
|
|
112
|
+
url?: string;
|
|
113
|
+
excerpt?: string;
|
|
114
|
+
description?: string;
|
|
115
|
+
category?: string;
|
|
116
|
+
tag?: string;
|
|
117
|
+
date?: string;
|
|
118
|
+
image?: string;
|
|
119
|
+
thumbnail?: string;
|
|
120
|
+
blog?: HomepageBlogPost;
|
|
121
|
+
};
|
|
122
|
+
export type HomepageBlogPostsSection = HomepageSectionCopyFields & {
|
|
123
|
+
posts?: HomepageBlogPost[];
|
|
124
|
+
"blog-posts"?: HomepageBlogPost[];
|
|
125
|
+
};
|
|
126
|
+
export type HomepageInstagramPost = {
|
|
127
|
+
id?: string;
|
|
128
|
+
image?: string;
|
|
129
|
+
"post-image"?: string;
|
|
130
|
+
url?: string;
|
|
131
|
+
link?: string;
|
|
132
|
+
post?: HomepageInstagramPost;
|
|
133
|
+
instagram?: HomepageInstagramPost;
|
|
134
|
+
};
|
|
135
|
+
export type HomepageInstagramPostsSection = HomepageSectionCopyFields & {
|
|
136
|
+
handle?: string;
|
|
137
|
+
username?: string;
|
|
138
|
+
"instagram-handle"?: string;
|
|
139
|
+
"profile-url"?: string;
|
|
140
|
+
profileUrl?: string;
|
|
141
|
+
"profile-image"?: string;
|
|
142
|
+
profileImage?: string;
|
|
143
|
+
posts?: HomepageInstagramPost[];
|
|
144
|
+
items?: HomepageInstagramPost[];
|
|
145
|
+
};
|
|
146
|
+
export type HomepageVideoStoryEntry = string | {
|
|
147
|
+
"video-url"?: string;
|
|
148
|
+
video_url?: string;
|
|
149
|
+
url?: string;
|
|
150
|
+
src?: string;
|
|
151
|
+
video?: string;
|
|
152
|
+
"video-story"?: Record<string, unknown>;
|
|
153
|
+
};
|
|
154
|
+
export type HomepageVideoStoriesSection = HomepageSectionCopyFields & {
|
|
155
|
+
"video-urls"?: HomepageVideoStoryEntry[];
|
|
156
|
+
videoUrls?: HomepageVideoStoryEntry[];
|
|
157
|
+
videos?: HomepageVideoStoryEntry[];
|
|
158
|
+
"video-stories"?: HomepageVideoStoryEntry[];
|
|
159
|
+
};
|
|
160
|
+
/** Per-section blocks under `homepage-config.sections`. */
|
|
161
|
+
export type HomepageSectionsConfig = {
|
|
162
|
+
promoAnnouncements?: HomepagePromoAnnouncementsSection;
|
|
163
|
+
hero?: HomepageSectionCopyFields;
|
|
164
|
+
categoryPills?: HomepageSectionCopyFields;
|
|
165
|
+
newArrivals?: HomepageNewArrivalsSection;
|
|
166
|
+
newArrivalsClassic?: HomepageNewArrivalsSection;
|
|
167
|
+
promoCountdown?: HomepagePromoCountdownSection;
|
|
168
|
+
celebrityTrust?: HomepageSectionCopyFields;
|
|
169
|
+
luxeFavourites?: HomepageSectionCopyFields;
|
|
170
|
+
shopByCategory?: HomepageSectionCopyFields;
|
|
171
|
+
baptism?: HomepageSectionCopyFields;
|
|
172
|
+
baptismPicks?: HomepageBaptismPicksSection;
|
|
173
|
+
themeDresses?: HomepageSectionCopyFields;
|
|
174
|
+
brandMarquee?: HomepageSectionCopyFields;
|
|
175
|
+
aboutBrand?: HomepageAboutBrandSection;
|
|
176
|
+
testimonials?: HomepageTestimonialsSection;
|
|
177
|
+
brandPillars?: HomepageBrandPillarsSection;
|
|
178
|
+
instagramPosts?: HomepageInstagramPostsSection;
|
|
179
|
+
features?: HomepageFeaturesSection;
|
|
180
|
+
shopByAge?: HomepageSectionCopyFields;
|
|
181
|
+
whyChooseUs?: HomepageFeaturesSection;
|
|
182
|
+
lovedByMoms?: HomepageSectionCopyFields;
|
|
183
|
+
videoStories?: HomepageVideoStoriesSection;
|
|
184
|
+
blogPosts?: HomepageBlogPostsSection;
|
|
185
|
+
/** Allow kebab-case keys from legacy CMS */
|
|
186
|
+
[sectionKey: string]: HomepageSectionCopyFields | undefined;
|
|
187
|
+
};
|
|
188
|
+
export type HomepageBanner = {
|
|
189
|
+
"homepage-banner-image"?: string;
|
|
190
|
+
"homepage-banner-title"?: string;
|
|
191
|
+
"homepage-banner-subtitle"?: string;
|
|
192
|
+
"homepage-banner-description"?: string;
|
|
193
|
+
"homepage-banner-button-name"?: string;
|
|
194
|
+
"homepage-banner-button-link"?: string;
|
|
195
|
+
};
|
|
196
|
+
export type HomepageBannerEntry = {
|
|
197
|
+
"homepage-banner"?: HomepageBanner;
|
|
198
|
+
};
|
|
199
|
+
export type HomepageAppBanner = {
|
|
200
|
+
"app-banner-image"?: string;
|
|
201
|
+
"app-banner-title"?: string;
|
|
202
|
+
"app-banner-subtitle"?: string;
|
|
203
|
+
"app-banner-description"?: string;
|
|
204
|
+
"app-banner-button-name"?: string;
|
|
205
|
+
"app-banner-button-link"?: string;
|
|
206
|
+
"app-banner-link"?: string;
|
|
207
|
+
};
|
|
208
|
+
export type HomepageAppBannerEntry = {
|
|
209
|
+
"app-banner"?: HomepageAppBanner;
|
|
210
|
+
};
|
|
211
|
+
export type HomepageContactConfig = {
|
|
212
|
+
"contact-phone"?: string;
|
|
213
|
+
"contact-email"?: string;
|
|
214
|
+
"contact-address"?: string;
|
|
215
|
+
};
|
|
216
|
+
export type HomepageSocialLink = {
|
|
217
|
+
"social-platform-name"?: string;
|
|
218
|
+
"social-platform-icon"?: string;
|
|
219
|
+
"social-platform-url"?: string;
|
|
220
|
+
"social-link"?: HomepageSocialLink;
|
|
221
|
+
};
|
|
222
|
+
export type HomepagePromoBarConfig = {
|
|
223
|
+
"promo-text"?: string;
|
|
224
|
+
"promo-code"?: string;
|
|
225
|
+
"promo-value"?: string;
|
|
226
|
+
"promo-active"?: boolean;
|
|
227
|
+
};
|
|
228
|
+
export type HomepageFaqEntry = {
|
|
229
|
+
"faq-category"?: string;
|
|
230
|
+
"faq-question"?: string;
|
|
231
|
+
"faq-answer"?: string;
|
|
232
|
+
faq?: HomepageFaqEntry;
|
|
233
|
+
};
|
|
234
|
+
/**
|
|
235
|
+
* Root `homepage-config` object stored in Medusa dynamic config.
|
|
236
|
+
*/
|
|
237
|
+
export type HomepageConfig = {
|
|
238
|
+
logo?: string;
|
|
239
|
+
"website-description"?: string;
|
|
240
|
+
website_description?: string;
|
|
241
|
+
/** Hero carousel — used by `hero` section (not `sections.hero`). */
|
|
242
|
+
"homepage-banner-array"?: HomepageBannerEntry[];
|
|
243
|
+
"app-banner-array"?: HomepageAppBannerEntry[];
|
|
244
|
+
/** Option 1 — central section copy + structured data (preferred). */
|
|
245
|
+
sections?: HomepageSectionsConfig;
|
|
246
|
+
/**
|
|
247
|
+
* Product reviews for testimonials carousel.
|
|
248
|
+
* Fallback when `sections.testimonials.items` is empty.
|
|
249
|
+
*/
|
|
250
|
+
ratings?: HomepageRatingItem[];
|
|
251
|
+
/** Legacy top-level keys (still read; prefer `sections.*`). */
|
|
252
|
+
"promo-bar"?: HomepagePromoBarConfig;
|
|
253
|
+
"contact-us"?: HomepageContactConfig;
|
|
254
|
+
"social-links"?: HomepageSocialLink[];
|
|
255
|
+
"faq-array"?: HomepageFaqEntry[];
|
|
256
|
+
"why-choose-us-title"?: string;
|
|
257
|
+
"why-choose-us-features"?: HomepageFeatureItem[];
|
|
258
|
+
"about-brand"?: HomepageAboutBrandSection;
|
|
259
|
+
"who-we-are"?: HomepageAboutBrandSection;
|
|
260
|
+
"video-stories"?: HomepageVideoStoryEntry[];
|
|
261
|
+
"video-stories-array"?: HomepageVideoStoryEntry[];
|
|
262
|
+
video_stories?: HomepageVideoStoryEntry[];
|
|
263
|
+
"announcement-messages"?: string[];
|
|
264
|
+
"announcement-bar"?: string[];
|
|
265
|
+
};
|
|
266
|
+
/** Full dynamic config API response. */
|
|
267
|
+
export type DynamicConfigResponse = {
|
|
268
|
+
"homepage-config"?: HomepageConfig;
|
|
269
|
+
[key: string]: unknown;
|
|
270
|
+
};
|
|
271
|
+
/** All section ids with package defaults. */
|
|
272
|
+
export declare const HOMEPAGE_SECTION_IDS: readonly ["promoAnnouncements", "hero", "categoryPills", "newArrivals", "newArrivalsClassic", "promoCountdown", "celebrityTrust", "luxeFavourites", "shopByCategory", "baptism", "baptismPicks", "themeDresses", "brandMarquee", "aboutBrand", "testimonials", "brandPillars", "instagramPosts", "features", "shopByAge", "whyChooseUs", "lovedByMoms", "videoStories", "blogPosts"];
|
|
273
|
+
export type HomepageSectionId = (typeof HOMEPAGE_SECTION_IDS)[number];
|
|
274
|
+
//# sourceMappingURL=homepage-config.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"homepage-config.types.d.ts","sourceRoot":"","sources":["../../../src/server/homepage-config.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Medusa `GET /store/dynamic-config` → `homepage-config` shape.
|
|
3
|
+
* Used by the storefront and as the reference for backend admin JSON.
|
|
4
|
+
*
|
|
5
|
+
* Section keys: camelCase (preferred) or kebab-case (`new-arrivals` → `newArrivals`).
|
|
6
|
+
* Only fields you set override package defaults in `homepage-section-defaults.ts`.
|
|
7
|
+
*/
|
|
8
|
+
/** All section ids with package defaults. */
|
|
9
|
+
export const HOMEPAGE_SECTION_IDS = [
|
|
10
|
+
"promoAnnouncements",
|
|
11
|
+
"hero",
|
|
12
|
+
"categoryPills",
|
|
13
|
+
"newArrivals",
|
|
14
|
+
"newArrivalsClassic",
|
|
15
|
+
"promoCountdown",
|
|
16
|
+
"celebrityTrust",
|
|
17
|
+
"luxeFavourites",
|
|
18
|
+
"shopByCategory",
|
|
19
|
+
"baptism",
|
|
20
|
+
"baptismPicks",
|
|
21
|
+
"themeDresses",
|
|
22
|
+
"brandMarquee",
|
|
23
|
+
"aboutBrand",
|
|
24
|
+
"testimonials",
|
|
25
|
+
"brandPillars",
|
|
26
|
+
"instagramPosts",
|
|
27
|
+
"features",
|
|
28
|
+
"shopByAge",
|
|
29
|
+
"whyChooseUs",
|
|
30
|
+
"lovedByMoms",
|
|
31
|
+
"videoStories",
|
|
32
|
+
"blogPosts",
|
|
33
|
+
];
|
|
@@ -11,11 +11,20 @@ export declare const DEFAULT_HOMEPAGE_SECTIONS: {
|
|
|
11
11
|
readonly newArrivals: {
|
|
12
12
|
readonly title: "New Arrivals";
|
|
13
13
|
readonly subtitle: "Fresh styles just landed";
|
|
14
|
+
readonly variant: "grid";
|
|
15
|
+
};
|
|
16
|
+
readonly newArrivalsClassic: {
|
|
17
|
+
readonly title: "New Arrivals";
|
|
18
|
+
readonly subtitle: "Fresh styles just landed";
|
|
19
|
+
readonly variant: "classic";
|
|
14
20
|
};
|
|
15
21
|
readonly promoCountdown: {
|
|
16
|
-
readonly
|
|
17
|
-
readonly
|
|
22
|
+
readonly code: "SAVE50";
|
|
23
|
+
readonly text: "Up to 50% off — shop your favourites before they're gone!";
|
|
24
|
+
readonly "end-at": "2026-12-31T23:59:59.000Z";
|
|
18
25
|
readonly active: false;
|
|
26
|
+
readonly "cta-label": "Shop Offers";
|
|
27
|
+
readonly "cta-href": "/store";
|
|
19
28
|
};
|
|
20
29
|
readonly celebrityTrust: {
|
|
21
30
|
readonly title: "Trusted by Celebrities";
|
|
@@ -33,6 +42,7 @@ export declare const DEFAULT_HOMEPAGE_SECTIONS: {
|
|
|
33
42
|
};
|
|
34
43
|
readonly baptismPicks: {
|
|
35
44
|
readonly title: "Baptism Picks";
|
|
45
|
+
readonly looks: readonly [];
|
|
36
46
|
};
|
|
37
47
|
readonly themeDresses: {
|
|
38
48
|
readonly title: "Theme";
|
|
@@ -60,6 +70,29 @@ export declare const DEFAULT_HOMEPAGE_SECTIONS: {
|
|
|
60
70
|
readonly testimonials: {
|
|
61
71
|
readonly title: "What Clients Talk About Us";
|
|
62
72
|
readonly description: "The Trust We've Earned";
|
|
73
|
+
readonly items: readonly [{
|
|
74
|
+
readonly text: "Amazing place if you are looking for a dress for ur little girl's special day. You can even get many aesthetic pics just from the shop because the interior of the shop is amazing too.. the dresses are customizable according to themes that you prefer. My little girl looked like a princess in her pink and white dress which I found within minutes entering the shop.";
|
|
75
|
+
readonly name: "Greeshma thottippal shanmughan";
|
|
76
|
+
}, {
|
|
77
|
+
readonly text: "I frequently buy dresses for my baby from this store and I am extremely satisfied with the purchase. The quality of the dresses was excellent, and it was perfect for special occasions like birthdays and celebrations.";
|
|
78
|
+
readonly name: "Priyanka Rajesh";
|
|
79
|
+
}, {
|
|
80
|
+
readonly text: "I recently bought an Onam outfit from this boutique and I'm so glad I did! The quality is excellent, and the design is beautiful. My daughter looked absolutely stunning in it.";
|
|
81
|
+
readonly name: "Riya Rilju";
|
|
82
|
+
}, {
|
|
83
|
+
readonly text: "I'm beyond happy with the beautiful baptism dress they made for my baby! The craftsmanship, attention to detail, and love put into every stitch truly show.";
|
|
84
|
+
readonly name: "Chinju anthony";
|
|
85
|
+
}, {
|
|
86
|
+
readonly text: "This is my third baby dress purchase from this store, and I'm still as impressed as ever! The dresses are absolutely adorable, and the sizing is perfect for my little one.";
|
|
87
|
+
readonly name: "Susmitha";
|
|
88
|
+
}];
|
|
89
|
+
};
|
|
90
|
+
readonly instagramPosts: {
|
|
91
|
+
readonly title: "Follow Us on Instagram";
|
|
92
|
+
readonly handle: "yourbrand";
|
|
93
|
+
readonly "profile-url": "https://www.instagram.com/yourbrand/";
|
|
94
|
+
readonly "profile-image": "/Logo.png";
|
|
95
|
+
readonly posts: readonly [];
|
|
63
96
|
};
|
|
64
97
|
readonly brandPillars: {
|
|
65
98
|
readonly title: "This approach resulted in the beautiful structure";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"homepage-section-defaults.d.ts","sourceRoot":"","sources":["../../../src/server/homepage-section-defaults.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4LsB,CAAA;AAE5D,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,yBAAyB,CAAA;AAEzE,eAAO,MAAM,yBAAyB,EAEjC,oBAAoB,EAAE,CAAA"}
|
|
@@ -16,11 +16,20 @@ export const DEFAULT_HOMEPAGE_SECTIONS = {
|
|
|
16
16
|
newArrivals: {
|
|
17
17
|
title: "New Arrivals",
|
|
18
18
|
subtitle: "Fresh styles just landed",
|
|
19
|
+
variant: "grid",
|
|
20
|
+
},
|
|
21
|
+
newArrivalsClassic: {
|
|
22
|
+
title: "New Arrivals",
|
|
23
|
+
subtitle: "Fresh styles just landed",
|
|
24
|
+
variant: "classic",
|
|
19
25
|
},
|
|
20
26
|
promoCountdown: {
|
|
21
|
-
|
|
22
|
-
|
|
27
|
+
code: "SAVE50",
|
|
28
|
+
text: "Up to 50% off — shop your favourites before they're gone!",
|
|
29
|
+
"end-at": "2026-12-31T23:59:59.000Z",
|
|
23
30
|
active: false,
|
|
31
|
+
"cta-label": "Shop Offers",
|
|
32
|
+
"cta-href": "/store",
|
|
24
33
|
},
|
|
25
34
|
celebrityTrust: {
|
|
26
35
|
title: "Trusted by Celebrities",
|
|
@@ -38,6 +47,7 @@ export const DEFAULT_HOMEPAGE_SECTIONS = {
|
|
|
38
47
|
},
|
|
39
48
|
baptismPicks: {
|
|
40
49
|
title: "Baptism Picks",
|
|
50
|
+
looks: [],
|
|
41
51
|
},
|
|
42
52
|
themeDresses: {
|
|
43
53
|
title: "Theme",
|
|
@@ -60,6 +70,35 @@ export const DEFAULT_HOMEPAGE_SECTIONS = {
|
|
|
60
70
|
testimonials: {
|
|
61
71
|
title: "What Clients Talk About Us",
|
|
62
72
|
description: "The Trust We've Earned",
|
|
73
|
+
items: [
|
|
74
|
+
{
|
|
75
|
+
text: "Amazing place if you are looking for a dress for ur little girl's special day. You can even get many aesthetic pics just from the shop because the interior of the shop is amazing too.. the dresses are customizable according to themes that you prefer. My little girl looked like a princess in her pink and white dress which I found within minutes entering the shop.",
|
|
76
|
+
name: "Greeshma thottippal shanmughan",
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
text: "I frequently buy dresses for my baby from this store and I am extremely satisfied with the purchase. The quality of the dresses was excellent, and it was perfect for special occasions like birthdays and celebrations.",
|
|
80
|
+
name: "Priyanka Rajesh",
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
text: "I recently bought an Onam outfit from this boutique and I'm so glad I did! The quality is excellent, and the design is beautiful. My daughter looked absolutely stunning in it.",
|
|
84
|
+
name: "Riya Rilju",
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
text: "I'm beyond happy with the beautiful baptism dress they made for my baby! The craftsmanship, attention to detail, and love put into every stitch truly show.",
|
|
88
|
+
name: "Chinju anthony",
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
text: "This is my third baby dress purchase from this store, and I'm still as impressed as ever! The dresses are absolutely adorable, and the sizing is perfect for my little one.",
|
|
92
|
+
name: "Susmitha",
|
|
93
|
+
},
|
|
94
|
+
],
|
|
95
|
+
},
|
|
96
|
+
instagramPosts: {
|
|
97
|
+
title: "Follow Us on Instagram",
|
|
98
|
+
handle: "yourbrand",
|
|
99
|
+
"profile-url": "https://www.instagram.com/yourbrand/",
|
|
100
|
+
"profile-image": "/Logo.png",
|
|
101
|
+
posts: [],
|
|
63
102
|
},
|
|
64
103
|
brandPillars: {
|
|
65
104
|
title: "This approach resulted in the beautiful structure",
|
|
@@ -4,6 +4,8 @@ export * from "./collections";
|
|
|
4
4
|
export * from "./customer-registration";
|
|
5
5
|
export * from "./customer";
|
|
6
6
|
export * from "./dynamic-config";
|
|
7
|
+
export * from "./page-input";
|
|
8
|
+
export * from "./resolve-home-segment-data";
|
|
7
9
|
export * from "./fulfillment";
|
|
8
10
|
export * from "./guest";
|
|
9
11
|
export * from "./locale-actions";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,yBAAyB,CAAA;AACvC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,eAAe,CAAA;AAC7B,cAAc,SAAS,CAAA;AACvB,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,mBAAmB,CAAA;AACjC,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,QAAQ,CAAA"}
|
|
@@ -4,6 +4,8 @@ export * from "./collections";
|
|
|
4
4
|
export * from "./customer-registration";
|
|
5
5
|
export * from "./customer";
|
|
6
6
|
export * from "./dynamic-config";
|
|
7
|
+
export * from "./page-input";
|
|
8
|
+
export * from "./resolve-home-segment-data";
|
|
7
9
|
export * from "./fulfillment";
|
|
8
10
|
export * from "./guest";
|
|
9
11
|
export * from "./locale-actions";
|