@evenicanpm/storefront-core 1.0.4 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (343) hide show
  1. package/package.json +8 -10
  2. package/src/api-manager/datasources/d365/d365-address.datasource.ts +2 -2
  3. package/src/api-manager/datasources/d365/d365-cart.datasource.ts +3 -3
  4. package/src/api-manager/datasources/d365/d365-categories.datasource.ts +2 -2
  5. package/src/api-manager/datasources/d365/d365-order.datasource.ts +3 -3
  6. package/src/api-manager/datasources/d365/d365-organization.datasource.ts +2 -2
  7. package/src/api-manager/datasources/d365/d365-product.datasource.ts +5 -5
  8. package/src/api-manager/datasources/d365/d365-session.datasource.ts +2 -2
  9. package/src/api-manager/datasources/d365/d365-user.datasource.ts +2 -2
  10. package/src/api-manager/datasources/d365/d365.datasource.ts +8 -8
  11. package/src/api-manager/datasources/d365/index.ts +2 -2
  12. package/src/api-manager/datasources/e4/address/e4-address.datasource.ts +4 -4
  13. package/src/api-manager/datasources/e4/address/e4-address.remaps.ts +1 -1
  14. package/src/api-manager/datasources/e4/address/e4-address.translator.ts +7 -3
  15. package/src/api-manager/datasources/e4/cart/e4-cart.datasource.ts +7 -7
  16. package/src/api-manager/datasources/e4/cart/e4-cart.remaps.ts +7 -3
  17. package/src/api-manager/datasources/e4/cart/e4-cart.translator.ts +2 -2
  18. package/src/api-manager/datasources/e4/categories/e4-categories.datasource.ts +2 -2
  19. package/src/api-manager/datasources/e4/categories/e4-categories.translator.ts +1 -1
  20. package/src/api-manager/datasources/e4/e4.datasource.ts +9 -9
  21. package/src/api-manager/datasources/e4/graphqlRequestSdk.ts +2175 -138
  22. package/src/api-manager/datasources/e4/order/e4-order.datasource.ts +6 -3
  23. package/src/api-manager/datasources/e4/order/e4-order.remaps.ts +2 -2
  24. package/src/api-manager/datasources/e4/organization/e4-organization.datasource.ts +1 -1
  25. package/src/api-manager/datasources/e4/product/e4-product.datasource.ts +4 -4
  26. package/src/api-manager/datasources/e4/product/e4-product.remaps.ts +2 -2
  27. package/src/api-manager/datasources/e4/product/e4-product.translator.ts +3 -3
  28. package/src/api-manager/datasources/e4/session/e4-session.datasource.ts +2 -2
  29. package/src/api-manager/datasources/e4/session/e4-session.translator.ts +1 -1
  30. package/src/api-manager/datasources/e4/user/e4-user.datasource.ts +4 -4
  31. package/src/api-manager/datasources/e4/user/e4-user.remaps.ts +5 -2
  32. package/src/api-manager/datasources/e4/user/e4-user.translator.ts +5 -2
  33. package/src/api-manager/datasources/e4/utils/unwrap-e4-variants.ts +6 -2
  34. package/src/api-manager/index.ts +4 -4
  35. package/src/api-manager/lib/get-graphql-client.ts +1 -1
  36. package/src/api-manager/schemas/address.schema.ts +1 -1
  37. package/src/api-manager/schemas/cart.schema.ts +1 -1
  38. package/src/api-manager/schemas/order.schema.ts +1 -1
  39. package/src/api-manager/schemas/organization.schema.ts +1 -1
  40. package/src/api-manager/schemas/product.schema.ts +1 -1
  41. package/src/api-manager/schemas/session.schema.ts +2 -2
  42. package/src/api-manager/schemas/user.schema.ts +1 -1
  43. package/src/api-manager/services/address/mutations/create-address.ts +2 -2
  44. package/src/api-manager/services/address/mutations/delete-address.ts +2 -2
  45. package/src/api-manager/services/address/mutations/get-delivery-options.ts +2 -2
  46. package/src/api-manager/services/address/mutations/update-address.ts +2 -2
  47. package/src/api-manager/services/address/queries/get-countries.ts +2 -2
  48. package/src/api-manager/services/address/queries/get-states.ts +4 -1
  49. package/src/api-manager/services/cart/mutations/add-discount-code.ts +3 -3
  50. package/src/api-manager/services/cart/mutations/add-to-cart.ts +3 -3
  51. package/src/api-manager/services/cart/mutations/checkout.ts +2 -2
  52. package/src/api-manager/services/cart/mutations/delete-cart-line.ts +3 -3
  53. package/src/api-manager/services/cart/mutations/get-payment-accept-result.ts +2 -2
  54. package/src/api-manager/services/cart/mutations/remove-cart-line-delivery-mode.ts +3 -3
  55. package/src/api-manager/services/cart/mutations/remove-discount-code.ts +3 -3
  56. package/src/api-manager/services/cart/mutations/update-cart-line-delivery-mode.ts +3 -3
  57. package/src/api-manager/services/cart/mutations/update-cart-lines.ts +3 -3
  58. package/src/api-manager/services/cart/mutations/update-cart.ts +3 -3
  59. package/src/api-manager/services/cart/queries/get-cart-lines-inventory.ts +4 -1
  60. package/src/api-manager/services/cart/queries/get-cart.ts +2 -2
  61. package/src/api-manager/services/cart/queries/get-payment-accept-point.ts +4 -1
  62. package/src/api-manager/services/categories/queries/get-categories.ts +5 -2
  63. package/src/api-manager/services/create-mutation.ts +2 -2
  64. package/src/api-manager/services/create-query.ts +2 -2
  65. package/src/api-manager/services/order/queries/get-order-details.ts +4 -1
  66. package/src/api-manager/services/order/queries/get-orders.ts +4 -1
  67. package/src/api-manager/services/organization/queries/get-channel-configuration.ts +4 -1
  68. package/src/api-manager/services/organization/queries/get-stores.ts +4 -1
  69. package/src/api-manager/services/product/mutations/search-products.ts +1 -1
  70. package/src/api-manager/services/product/queries/get-product-availability.ts +4 -1
  71. package/src/api-manager/services/product/queries/get-product-by-id.ts +5 -2
  72. package/src/api-manager/services/product/queries/get-product-by-ids.ts +5 -2
  73. package/src/api-manager/services/product/queries/get-product-list.ts +4 -1
  74. package/src/api-manager/services/product/queries/get-product-prices.ts +4 -1
  75. package/src/api-manager/services/product/queries/get-related-products.ts +5 -2
  76. package/src/api-manager/services/product/queries/search-products.ts +4 -1
  77. package/src/api-manager/services/product/server/product.server.ts +2 -2
  78. package/src/api-manager/services/session/mutations/session-init.ts +2 -2
  79. package/src/api-manager/services/session/mutations/session-logout.ts +2 -2
  80. package/src/api-manager/services/session/queries/get-session.ts +4 -1
  81. package/src/api-manager/services/user/mutations/add-to-wishlist.ts +5 -3
  82. package/src/api-manager/services/user/mutations/copy-cart-to-wishlist.ts +2 -2
  83. package/src/api-manager/services/user/mutations/create-wishlist.ts +2 -2
  84. package/src/api-manager/services/user/mutations/delete-wishlist.ts +3 -3
  85. package/src/api-manager/services/user/mutations/remove-from-wishlist.ts +6 -4
  86. package/src/api-manager/services/user/mutations/update-user.ts +2 -2
  87. package/src/api-manager/services/user/mutations/update-wishlist.ts +2 -2
  88. package/src/api-manager/services/user/queries/get-user-counts.ts +4 -1
  89. package/src/api-manager/services/user/queries/get-user.ts +4 -1
  90. package/src/api-manager/services/user/queries/get-wishlist-details.ts +4 -1
  91. package/src/api-manager/services/user/queries/get-wishlists.ts +4 -1
  92. package/src/api-manager/types/Datasource.ts +2 -2
  93. package/src/auth/auth-options.test.ts +1 -1
  94. package/src/auth/auth-options.ts +1 -1
  95. package/src/auth/providers/index.ts +3 -3
  96. package/src/auth/refresh-token.ts +2 -2
  97. package/src/cms/blocks/{BlockManager.tsx → block-manager.tsx} +2 -2
  98. package/src/cms/blocks/{Components/BrandLogosScroller.tsx → components/brand-logos-scroller.tsx} +1 -1
  99. package/src/cms/blocks/{Components/CategoryCarousel → components/category-carousel}/index.tsx +3 -3
  100. package/src/cms/blocks/{Components/FeaturePill.tsx → components/feature-pill.tsx} +1 -1
  101. package/src/cms/blocks/{Components/FeaturedCategories.tsx → components/featured-categories.tsx} +2 -2
  102. package/src/cms/blocks/{Components/FeaturedProducts.tsx → components/featured-products.tsx} +2 -2
  103. package/src/cms/blocks/{Components/Footer → components/footer}/index.tsx +7 -4
  104. package/src/cms/blocks/{Components/Footer/sections/FooterContact.tsx → components/footer/sections/footer-contact.tsx} +3 -3
  105. package/src/cms/blocks/{Components/Footer/sections/FooterLinks.tsx → components/footer/sections/footer-links.tsx} +5 -2
  106. package/src/cms/blocks/{Components/Footer/sections/FooterSocialLinks.tsx → components/footer/sections/footer-social-links.tsx} +1 -1
  107. package/src/cms/blocks/{Components/Footer.tsx → components/footer.tsx} +1 -1
  108. package/src/cms/blocks/{Components/HeroCarousel → components/hero-carousel}/index.tsx +1 -1
  109. package/src/cms/blocks/{Components/Hero.tsx → components/hero.tsx} +1 -1
  110. package/src/cms/blocks/{Components/Image.tsx → components/image.tsx} +1 -1
  111. package/src/cms/blocks/{Components/ProductCarousel → components/product-carousel}/index.tsx +2 -2
  112. package/src/cms/blocks/{Components/ProductSectionFullWidth → components/product-section-fullwidth}/index.tsx +2 -2
  113. package/src/cms/blocks/{Components/Seo → components/seo}/index.tsx +1 -1
  114. package/src/cms/blocks/{Components/Services → components/services}/index.tsx +2 -2
  115. package/src/cms/blocks/{Components/Services → components/services}/service-card.tsx +1 -1
  116. package/src/cms/blocks/{Icons → icons}/index.ts +7 -7
  117. package/src/cms/blocks/index.tsx +15 -15
  118. package/src/cms/blog.ts +2 -2
  119. package/src/cms/endpoints.ts +1 -1
  120. package/src/cms/interfaces/navigation.ts +9 -9
  121. package/src/cms/pages.ts +1 -1
  122. package/src/components-v2/BazaarMenu.tsx +2 -0
  123. package/src/components-v2/BazaarTextField.tsx +1 -1
  124. package/src/components-v2/DropZone.tsx +4 -1
  125. package/src/components-v2/ImageWithFallback.tsx +1 -1
  126. package/src/components-v2/accordion/index.ts +1 -1
  127. package/src/components-v2/carousel/carousel.tsx +3 -3
  128. package/src/components-v2/carousel/components/carousel-arrows.tsx +1 -1
  129. package/src/components-v2/carousel/components/carousel-dots.tsx +4 -1
  130. package/src/components-v2/carousel/index.ts +1 -1
  131. package/src/components-v2/carousel-cards/carousel-card-1/carousel-card-1.tsx +1 -1
  132. package/src/components-v2/carousel-cards/carousel-card-1/index.ts +1 -1
  133. package/src/components-v2/categories/category-list/category-list.tsx +7 -4
  134. package/src/components-v2/categories/category-list/index.ts +1 -1
  135. package/src/components-v2/categories/category-list/styles.ts +1 -1
  136. package/src/components-v2/categories/category-list-item/category-menu-item.tsx +1 -1
  137. package/src/components-v2/categories/category-list-item/index.ts +1 -1
  138. package/src/components-v2/categories/category-menu.tsx +1 -1
  139. package/src/components-v2/categories/mega-menu/column-list.tsx +1 -1
  140. package/src/components-v2/categories/mega-menu/mega-menu-1.tsx +2 -2
  141. package/src/components-v2/categories/mega-menu/mega-menu-2.tsx +4 -4
  142. package/src/components-v2/flex-box/index.ts +3 -3
  143. package/src/components-v2/header/{components → __tests__}/user.test.tsx +51 -29
  144. package/src/components-v2/header/components/mobile-header.tsx +3 -3
  145. package/src/components-v2/header/components/user.tsx +8 -5
  146. package/src/components-v2/header/header.tsx +8 -5
  147. package/src/components-v2/header/index.ts +1 -1
  148. package/src/components-v2/header/sticky-header.tsx +1 -1
  149. package/src/components-v2/mini-cart/__tests__/cart-item.test.tsx +31 -40
  150. package/src/components-v2/mini-cart/__tests__/mini-cart.test.tsx +7 -8
  151. package/src/components-v2/mini-cart/index.ts +1 -1
  152. package/src/components-v2/mini-cart/mini-cart-trigger.tsx +1 -1
  153. package/src/components-v2/mini-cart/mini-cart.tsx +7 -7
  154. package/src/components-v2/mobile-navigation/index.ts +1 -1
  155. package/src/components-v2/mobile-navigation/mobile-navigation-bar.tsx +6 -1
  156. package/src/components-v2/nav-link/index.ts +3 -3
  157. package/src/components-v2/navbar/categories.tsx +1 -1
  158. package/src/components-v2/navbar/category-based-menu/category-based-menu.tsx +2 -2
  159. package/src/components-v2/navbar/category-based-menu/index.ts +1 -1
  160. package/src/components-v2/navbar/index.ts +1 -1
  161. package/src/components-v2/navbar/mega-menu/index.ts +1 -1
  162. package/src/components-v2/navbar/mega-menu/mega-menu.tsx +6 -1
  163. package/src/components-v2/navbar/mobile-menu/index.ts +1 -1
  164. package/src/components-v2/navbar/mobile-menu/mobile-menu.test.tsx +7 -13
  165. package/src/components-v2/navbar/mobile-menu/mobile-menu.tsx +1 -1
  166. package/src/components-v2/navbar/nav-list/cms-nav.test.tsx +16 -10
  167. package/src/components-v2/navbar/nav-list/index.ts +1 -1
  168. package/src/components-v2/navbar/nav-list/nav-item-child.tsx +4 -1
  169. package/src/components-v2/navbar/nav-list/nav-list.tsx +8 -4
  170. package/src/components-v2/navbar/navbar.tsx +6 -3
  171. package/src/components-v2/navbar/utils/transform-nav.test.ts +4 -1
  172. package/src/components-v2/product-cards/product-card/components/hover-actions.tsx +1 -1
  173. package/src/components-v2/product-cards/product-card/index.ts +1 -1
  174. package/src/components-v2/product-cards/product-card/product-card.tsx +10 -6
  175. package/src/components-v2/product-cards/product-card-plp/index.ts +1 -1
  176. package/src/components-v2/product-cards/product-card-plp/product-card.tsx +5 -5
  177. package/src/components-v2/product-cards/product-card-plp-list/index.ts +1 -1
  178. package/src/components-v2/product-cards/product-card-plp-list/product-card.tsx +7 -8
  179. package/src/components-v2/product-cards/product-card-search/index.ts +1 -1
  180. package/src/components-v2/product-cards/product-card-search/product-card.tsx +2 -2
  181. package/src/components-v2/product-dialog/compound/product-dialog.tsx +61 -45
  182. package/src/components-v2/product-dialog/index.tsx +1 -2
  183. package/src/components-v2/product-dimensions/compound/dimensions-group-error.tsx +3 -3
  184. package/src/components-v2/product-dimensions/compound/dimensions-group-label.tsx +1 -1
  185. package/src/components-v2/product-dimensions/compound/dimensions-group-list-chip.tsx +1 -1
  186. package/src/components-v2/product-dimensions/compound/dimensions-group-list.tsx +2 -2
  187. package/src/components-v2/product-dimensions/compound/dimensions-group.tsx +3 -3
  188. package/src/components-v2/product-dimensions/compound/dimensions.tsx +1 -1
  189. package/src/components-v2/product-dimensions/index.tsx +1 -1
  190. package/src/components-v2/product-quantity-buttons/compound/quantity-buttons-root.tsx +1 -1
  191. package/src/components-v2/product-quantity-buttons/index.tsx +2 -2
  192. package/src/components-v2/products-view/compound/products-grid-view.tsx +2 -2
  193. package/src/components-v2/products-view/compound/products-list-view.tsx +2 -2
  194. package/src/components-v2/products-view/compound/types.ts +1 -1
  195. package/src/components-v2/products-view/index.tsx +2 -2
  196. package/src/components-v2/progress/index.ts +1 -1
  197. package/src/components-v2/scrollbar/index.ts +1 -1
  198. package/src/components-v2/scrollbar/scrollbar.tsx +1 -1
  199. package/src/components-v2/search-bar/compound/results-item-lg.tsx +4 -1
  200. package/src/components-v2/search-bar/compound/results-item-sm.tsx +4 -1
  201. package/src/components-v2/search-bar/compound/results-suspense.tsx +4 -4
  202. package/src/components-v2/search-bar/compound/results.tsx +5 -2
  203. package/src/components-v2/search-bar/compound/search-bar-root.tsx +5 -5
  204. package/src/components-v2/search-bar/compound/textfield-adornment-category.tsx +2 -2
  205. package/src/components-v2/search-bar/compound/textfield.tsx +5 -5
  206. package/src/components-v2/search-bar/index.tsx +1 -1
  207. package/src/components-v2/section/compound/section-header.tsx +6 -3
  208. package/src/components-v2/section/compound/section.tsx +1 -1
  209. package/src/components-v2/section/index.ts +1 -1
  210. package/src/components-v2/side-nav/index.ts +1 -1
  211. package/src/components-v2/sticky/index.ts +1 -1
  212. package/src/components-v2/sticky/sticky.tsx +1 -1
  213. package/src/components-v2/wishlist-dialogs/__tests__/create-new-list.test.tsx +82 -0
  214. package/src/components-v2/wishlist-dialogs/__tests__/wishlistDetailData.json +280 -0
  215. package/src/components-v2/wishlist-dialogs/__tests__/wishlistsData.json +38 -0
  216. package/src/components-v2/wishlist-dialogs/add-to-wishlist/add-to-wishlist-button.tsx +1 -1
  217. package/src/components-v2/wishlist-dialogs/add-to-wishlist/compound/add-to-wishlist-bottom-ui.tsx +1 -1
  218. package/src/components-v2/wishlist-dialogs/add-to-wishlist/compound/add-to-wishlist-dialog.tsx +4 -4
  219. package/src/components-v2/wishlist-dialogs/add-to-wishlist/compound/add-to-wishlist-list.tsx +5 -2
  220. package/src/components-v2/wishlist-dialogs/add-to-wishlist/compound/context.ts +1 -1
  221. package/src/components-v2/wishlist-dialogs/add-to-wishlist/compound/wishlist-dialog-header.tsx +1 -1
  222. package/src/components-v2/wishlist-dialogs/add-to-wishlist/compound/wishlist-dialog-item.tsx +6 -3
  223. package/src/components-v2/wishlist-dialogs/add-to-wishlist/hooks/use-add-to-wishlist.ts +1 -1
  224. package/src/components-v2/wishlist-dialogs/add-to-wishlist/index.tsx +1 -1
  225. package/src/components-v2/wishlist-dialogs/create-wishlist/compound/create-wishlist-bottom-ui.tsx +1 -1
  226. package/src/components-v2/wishlist-dialogs/create-wishlist/compound/create-wishlist-dialog.tsx +2 -2
  227. package/src/components-v2/wishlist-dialogs/create-wishlist/compound/create-wishlist-form.tsx +2 -2
  228. package/src/components-v2/wishlist-dialogs/create-wishlist/create-wishlist-button.tsx +1 -1
  229. package/src/components-v2/wishlist-dialogs/create-wishlist/index.tsx +1 -1
  230. package/src/lib/build-detail-url.ts +1 -1
  231. package/src/lib/cart-cookie-handler.ts +1 -1
  232. package/src/pages-v2/account/account-navigation.tsx +183 -0
  233. package/src/pages-v2/account/addresses/address-form.tsx +187 -186
  234. package/src/pages-v2/account/addresses/address-item.tsx +118 -56
  235. package/src/pages-v2/account/dashboard-header.tsx +103 -76
  236. package/src/pages-v2/account/orders/order-progress.tsx +104 -65
  237. package/src/pages-v2/account/orders/order-row.tsx +69 -32
  238. package/src/pages-v2/account/orders/order-summary.tsx +96 -62
  239. package/src/pages-v2/account/orders/ordered-products.tsx +128 -87
  240. package/src/pages-v2/account/profile/profile-button.test.tsx +1 -1
  241. package/src/pages-v2/account/profile/user-info.tsx +59 -34
  242. package/src/pages-v2/account/wishlist/create-new-list.tsx +181 -127
  243. package/src/pages-v2/account/wishlist/create-wishlist-button.tsx +16 -3
  244. package/src/pages-v2/account/wishlist/wishlist-item.tsx +93 -42
  245. package/src/pages-v2/cart/__tests__/cart-item.test.tsx +225 -0
  246. package/src/pages-v2/cart/__tests__/cart-with-items.json +811 -0
  247. package/src/pages-v2/cart/__tests__/checkout-form.test.tsx +148 -0
  248. package/src/pages-v2/cart/__tests__/conutries.json +19407 -0
  249. package/src/pages-v2/cart/__tests__/estimate-shipping.test.tsx +86 -0
  250. package/src/pages-v2/cart/cart-item.tsx +387 -258
  251. package/src/pages-v2/cart/checkout-form.tsx +141 -48
  252. package/src/pages-v2/cart/coupon-entry.tsx +121 -58
  253. package/src/pages-v2/cart/estimate-shipping.tsx +174 -118
  254. package/src/pages-v2/checkout/checkout-alt-form/checkout-form.tsx +153 -76
  255. package/src/pages-v2/checkout/checkout-alt-form/checkout-step.tsx +128 -77
  256. package/src/pages-v2/checkout/checkout-alt-form/index.ts +1 -1
  257. package/src/pages-v2/checkout/checkout-alt-form/{heading.tsx → step-heading.tsx} +1 -1
  258. package/src/pages-v2/checkout/checkout-alt-form/steps/address/address-card.tsx +131 -0
  259. package/src/pages-v2/checkout/checkout-alt-form/steps/address/delivery-address.tsx +450 -0
  260. package/src/pages-v2/checkout/checkout-alt-form/steps/address/new-address-form.tsx +322 -0
  261. package/src/pages-v2/checkout/checkout-alt-form/steps/address/styles.ts +27 -0
  262. package/src/pages-v2/checkout/checkout-alt-form/steps/customer-info/customer-information.tsx +139 -0
  263. package/src/pages-v2/checkout/checkout-alt-form/{payment-details.tsx → steps/payment/payment-details.tsx} +123 -141
  264. package/src/pages-v2/checkout/checkout-alt-form/{delivery-date.tsx → steps/shipping/delivery-date.tsx} +3 -3
  265. package/src/pages-v2/checkout/checkout-alt-form/{delivery-options.tsx → steps/shipping/delivery-options.tsx} +97 -50
  266. package/src/pages-v2/checkout/checkout-alt-summary/cart-item.tsx +58 -28
  267. package/src/pages-v2/checkout/checkout-alt-summary/checkout-alt-summary.tsx +69 -22
  268. package/src/pages-v2/checkout/checkout-alt-summary/index.ts +1 -1
  269. package/src/pages-v2/checkout/checkout-alt-summary/list-item.tsx +56 -14
  270. package/src/pages-v2/confirmation/address.tsx +37 -15
  271. package/src/pages-v2/confirmation/confirmation-summary.tsx +80 -41
  272. package/src/pages-v2/confirmation/ordered-products.tsx +127 -95
  273. package/src/pages-v2/product-details/bopis/find-in-store-button.tsx +2 -2
  274. package/src/pages-v2/product-details/bopis/find-in-store-modal.tsx +4 -4
  275. package/src/pages-v2/product-details/bopis/pickup-option-select.tsx +1 -1
  276. package/src/pages-v2/product-details/bopis/store-card/index.ts +1 -1
  277. package/src/pages-v2/product-details/bopis/store-card/shop-card.tsx +3 -3
  278. package/src/pages-v2/product-details/frequently-bought.tsx +1 -1
  279. package/src/pages-v2/product-details/product-filter-card.tsx +2 -2
  280. package/src/pages-v2/product-details/product-intro/compound/context.ts +1 -4
  281. package/src/pages-v2/product-details/product-intro/compound/product-info.tsx +6 -3
  282. package/src/pages-v2/product-details/product-intro/compound/product-intro-images.tsx +6 -3
  283. package/src/pages-v2/product-details/product-intro/compound/product-intro.tsx +4 -4
  284. package/src/pages-v2/product-details/product-intro/utils.ts +0 -1
  285. package/src/pages-v2/product-details/product-review.tsx +5 -2
  286. package/src/pages-v2/product-details/product-tabs.tsx +1 -1
  287. package/src/pages-v2/quickorder/context.ts +39 -0
  288. package/src/pages-v2/quickorder/index.tsx +31 -0
  289. package/src/pages-v2/quickorder/order-upload.tsx +19 -26
  290. package/src/pages-v2/quickorder/provider.tsx +187 -0
  291. package/src/pages-v2/quickorder/quick-order-actions.tsx +30 -0
  292. package/src/pages-v2/quickorder/quick-order-header.tsx +22 -0
  293. package/src/pages-v2/quickorder/quick-order-row.tsx +8 -17
  294. package/src/pages-v2/quickorder/quick-order-table.tsx +63 -0
  295. package/src/pages-v2/quickorder/quick-order-upload.tsx +20 -0
  296. package/src/providers/nav-provider/index.tsx +1 -1
  297. package/src/providers/notifications/notification-context.tsx +1 -1
  298. package/src/providers/notifications/use-notification.ts +1 -1
  299. package/tsconfig.json +2 -1
  300. package/src/api-manager/lib/get-graphql-client.test.ts +0 -106
  301. package/src/components/_components/header/components/user.test.tsx +0 -200
  302. package/src/components/_components/mini-cart/__tests__/cart-item.test.tsx +0 -174
  303. package/src/components/_components/mini-cart/__tests__/mini-cart.test.tsx +0 -121
  304. package/src/components/_components/mini-cart/__tests__/test-cart-empty.json +0 -84
  305. package/src/components/_components/mini-cart/__tests__/test-cart-with-item.json +0 -244
  306. package/src/components/_components/navbar/mobile-menu/render-levels.test.tsx +0 -71
  307. package/src/components/_components/navbar/nav-list/cms-nav.test.tsx +0 -84
  308. package/src/components/_components/navbar/utils/transform-nav.test.ts +0 -209
  309. package/src/components/_components/search-box/__test__/search-input-category.test.tsx +0 -110
  310. package/src/components/_components/search-box/__test__/search-input.test.tsx +0 -137
  311. package/src/components/_components/search-box/__test__/search-results.json +0 -165
  312. package/src/components/_components/search-box/search-input-category.test.tsx +0 -110
  313. package/src/components/_components/search-box/search-input.test.tsx +0 -41
  314. package/src/components-v2/bazaar-types.ts +0 -84
  315. package/src/pages-v2/account/navigation.tsx +0 -87
  316. package/src/pages-v2/checkout/checkout-alt-form/address-card.tsx +0 -76
  317. package/src/pages-v2/checkout/checkout-alt-form/customer-information.tsx +0 -94
  318. package/src/pages-v2/checkout/checkout-alt-form/delivery-address.tsx +0 -174
  319. package/src/pages-v2/checkout/checkout-alt-form/edit-address-form.tsx +0 -130
  320. package/src/pages-v2/checkout/checkout-alt-form/new-address-form.tsx +0 -299
  321. package/src/pages-v2/quickorder/quick-order-form.tsx +0 -346
  322. /package/src/cms/blocks/{Components/CategoryCard.tsx → components/category-card.tsx} +0 -0
  323. /package/src/cms/blocks/{Components/Footer → components/footer}/data/index.ts +0 -0
  324. /package/src/cms/blocks/{Components/Footer → components/footer}/interfaces.ts +0 -0
  325. /package/src/cms/blocks/{Components/Footer/sections/FooterAppStore.tsx → components/footer/sections/footer-app-store.tsx} +0 -0
  326. /package/src/cms/blocks/{Components/Footer/sections/FooterLogo.tsx → components/footer/sections/footer-logo.tsx} +0 -0
  327. /package/src/cms/blocks/{Components/Footer → components/footer}/styles/index.ts +0 -0
  328. /package/src/cms/blocks/{Components/MediaCard.tsx → components/media-card.tsx} +0 -0
  329. /package/src/cms/blocks/{Components/RichText.tsx → components/rich-text.tsx} +0 -0
  330. /package/src/cms/blocks/{Components → components}/shared/featured-product-card.tsx +0 -0
  331. /package/src/cms/blocks/{Components → components}/shared/product-category-item.tsx +0 -0
  332. /package/src/cms/blocks/{Components → components}/shared/product-grid.tsx +0 -0
  333. /package/src/cms/blocks/{Components → components}/shared/top-categories-card.tsx +0 -0
  334. /package/src/cms/blocks/{Components → components}/shared/top-rating-product-card.tsx +0 -0
  335. /package/src/cms/blocks/{Icons/Components/Category.tsx → icons/components/category.tsx} +0 -0
  336. /package/src/cms/blocks/{Icons/Components/DottedStar.tsx → icons/components/dotted-star.tsx} +0 -0
  337. /package/src/cms/blocks/{Icons/Components/FallbackIcon.tsx → icons/components/fallback-icon.tsx} +0 -0
  338. /package/src/cms/blocks/{Icons/Components/GiftBox.tsx → icons/components/gift-box.tsx} +0 -0
  339. /package/src/cms/blocks/{Icons/Components/Light.tsx → icons/components/light.tsx} +0 -0
  340. /package/src/cms/blocks/{Icons/Components/NewArrival.tsx → icons/components/new-arrival.tsx} +0 -0
  341. /package/src/cms/blocks/{Icons/Components/RankBadge.tsx → icons/components/rank-badge.tsx} +0 -0
  342. /package/src/cms/interfaces/{productData.ts → product-data.ts} +0 -0
  343. /package/src/pages-v2/checkout/checkout-alt-form/{safe-card-preview-data.tsx → steps/payment/safe-card-preview-data.tsx} +0 -0
@@ -1,16 +1,14 @@
1
- /*
2
1
  import { Cart, CartLine } from "@/schemas/cart.schema";
3
2
  import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
4
3
  import { fireEvent, render, screen } from "@testing-library/react";
5
4
  import { setupServer } from "msw/node";
6
5
  import React from "react";
7
- import cartData from "./test-cart-with-itemon";
6
+ import cartData from "./test-cart-with-item.json";
8
7
  import { NextIntlClientProvider } from "next-intl";
9
- import ENUS from "../../../../../messages/en-USon";
10
- import fr from "../../../../../messages/fron";
8
+ import ENUS from "@messages/en-US.json";
11
9
  import CartItem from "../components/cart-item";
12
10
  import { vi } from "vitest";
13
- import { NotificationProvider } from "@evenicanpm/storefront-core/src/components-v2/Notifications/notification-context";
11
+ import { NotificationProvider } from "@evenicanpm/storefront-core/src/providers/notifications/notification-context";
14
12
 
15
13
  // @ts-expect-error - We don't use the dates from this json and its not worth parsin
16
14
  const cart: Cart = cartData;
@@ -30,14 +28,6 @@ const Wrapper = ({ children }: React.PropsWithChildren) => (
30
28
  </NextIntlClientProvider>
31
29
  );
32
30
 
33
- const Wrapper2 = ({ children }: React.PropsWithChildren) => (
34
- <NextIntlClientProvider locale={"fr"} messages={fr}>
35
- <NotificationProvider>
36
- <QueryClientProvider client={queryClient}>{children}</QueryClientProvider>
37
- </NotificationProvider>
38
- </NextIntlClientProvider>
39
- );
40
-
41
31
  describe("cart-item", () => {
42
32
  it("Renders the name and price", () => {
43
33
  render(
@@ -51,7 +41,9 @@ describe("cart-item", () => {
51
41
  handleCartAmountChange={(cartline: CartLine) => {
52
42
  cartline;
53
43
  }}
54
- />
44
+ >
45
+ <CartItem.ProductDetails />
46
+ </CartItem>
55
47
  </Wrapper>,
56
48
  );
57
49
 
@@ -70,32 +62,17 @@ describe("cart-item", () => {
70
62
  handleCartAmountChange={(cartline: CartLine) => {
71
63
  cartline;
72
64
  }}
73
- />
65
+ >
66
+ <CartItem.QuantityControls />
67
+ <CartItem.RemoveButton />
68
+ </CartItem>
74
69
  </Wrapper>,
75
70
  );
76
71
  expect(screen.getByTitle("Increase Quantity")).toBeInTheDocument();
77
72
  expect(screen.getByTitle("Decrease Quantity")).toBeInTheDocument();
78
73
  expect(screen.getByTitle("Remove Item")).toBeInTheDocument();
79
74
  });
80
- it("Translates to French", () => {
81
- const testClick = vi.fn();
82
- render(
83
- <Wrapper2>
84
- <CartItem
85
- item={cart.CartLines[0]}
86
- isLineUpdating={false}
87
- closeDrawer={() => {
88
- fn;
89
- }}
90
- handleCartAmountChange={testClick}
91
- />
92
- </Wrapper2>,
93
- );
94
- // screen.debug(undefined, 100000)
95
- expect(screen.getByTitle("Augmenter la quantité")).toBeInTheDocument();
96
- expect(screen.getByTitle("Diminuer la quantité")).toBeInTheDocument();
97
- expect(screen.getByTitle("Supprimer")).toBeInTheDocument();
98
- });
75
+
99
76
  it("Hides Buttons while loading", () => {
100
77
  render(
101
78
  <Wrapper>
@@ -108,12 +85,16 @@ describe("cart-item", () => {
108
85
  handleCartAmountChange={(cartline: CartLine) => {
109
86
  cartline;
110
87
  }}
111
- />
88
+ >
89
+ <CartItem.QuantityControls />
90
+ <CartItem.RemoveButton />
91
+ </CartItem>
112
92
  </Wrapper>,
113
93
  );
114
94
  expect(() => screen.getByTitle("Increase Quantity")).toThrow();
115
95
  expect(() => screen.getByTitle("Decrease Quantity")).toThrow();
116
96
  });
97
+
117
98
  it("Does allow increase", () => {
118
99
  const testClick = vi.fn();
119
100
  render(
@@ -125,7 +106,9 @@ describe("cart-item", () => {
125
106
  fn;
126
107
  }}
127
108
  handleCartAmountChange={testClick}
128
- />
109
+ >
110
+ <CartItem.QuantityControls />
111
+ </CartItem>
129
112
  </Wrapper>,
130
113
  );
131
114
  // screen.debug(undefined, 100000)
@@ -133,6 +116,7 @@ describe("cart-item", () => {
133
116
  fireEvent.click(button);
134
117
  expect(testClick).toHaveBeenCalled();
135
118
  });
119
+
136
120
  it("Does not allow decrease", () => {
137
121
  const testClick = vi.fn();
138
122
  render(
@@ -144,7 +128,10 @@ describe("cart-item", () => {
144
128
  fn;
145
129
  }}
146
130
  handleCartAmountChange={testClick}
147
- />
131
+ >
132
+ <CartItem.QuantityControls />
133
+ <CartItem.RemoveButton />
134
+ </CartItem>
148
135
  </Wrapper>,
149
136
  );
150
137
  // screen.debug(undefined, 100000)
@@ -152,6 +139,7 @@ describe("cart-item", () => {
152
139
  fireEvent.click(button);
153
140
  expect(testClick).not.toHaveBeenCalled();
154
141
  });
142
+
155
143
  it("Allows Remove", () => {
156
144
  const testClick = vi.fn();
157
145
  render(
@@ -163,12 +151,15 @@ describe("cart-item", () => {
163
151
  fn;
164
152
  }}
165
153
  handleCartAmountChange={testClick}
166
- />
154
+ >
155
+ <CartItem.QuantityControls />
156
+ <CartItem.RemoveButton />
157
+ </CartItem>
167
158
  </Wrapper>,
168
159
  );
169
- // screen.debug(undefined, 100000)
160
+
170
161
  const button = screen.getByTitle("Remove Item");
171
162
  fireEvent.click(button);
172
163
  expect(testClick).toHaveBeenCalled();
173
164
  });
174
- });*/
165
+ });
@@ -1,15 +1,14 @@
1
- /*
2
1
  import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
3
2
  import { NextIntlClientProvider } from "next-intl";
4
- import cartData from "./test-cart-with-itemon";
5
- import cartDataEmpty from "./test-cart-emptyon";
6
- import ENUS from "../../../../../messages/en-USon";
7
- import fr from "../../../../../messages/fron";
3
+ import cartData from "./test-cart-with-item.json";
4
+ import cartDataEmpty from "./test-cart-empty.json";
5
+ import ENUS from "@messages/en-US.json";
6
+ import fr from "@messages/fr.json";
8
7
  import { fireEvent, render, screen } from "@testing-library/react";
9
8
  import MiniCart from "../mini-cart";
10
9
  import { vi } from "vitest";
11
10
  import { Cart } from "@msdyn365-commerce/retail-proxy";
12
- import { NotificationProvider } from "@evenicanpm/storefront-core/src/components-v2/Notifications/notification-context";
11
+ import { NotificationProvider } from "@evenicanpm/storefront-core/src/providers/notifications/notification-context";
13
12
 
14
13
  const { useRouter, mockedRouterPush } = vi.hoisted(() => {
15
14
  const mockedRouterPush = vi.fn();
@@ -56,7 +55,7 @@ const ensureCartLinesNotNull = (cartObject: Cart) => ({
56
55
  CartLines: cartObject.CartLines || [],
57
56
  });
58
57
 
59
- describe("Mini Cart", () => {
58
+ describe.skip("Mini Cart", () => {
60
59
  it("Displays one item in bag", () => {
61
60
  render(
62
61
  <Wrapper>
@@ -118,4 +117,4 @@ describe("Mini Cart", () => {
118
117
  fireEvent.click(screen.getByTitle("Close"));
119
118
  expect(testClick).toHaveBeenCalled();
120
119
  });
121
- });*/
120
+ });
@@ -1 +1 @@
1
- export { default as MiniCart } from "./mini-cart";
1
+ export { default as MiniCart } from "@evenicanpm/storefront-core/src/components-v2/mini-cart/mini-cart";
@@ -2,7 +2,7 @@
2
2
 
3
3
  import React, { useState, useContext, createContext } from "react";
4
4
  import { Badge, Drawer, IconButton } from "@mui/material";
5
- import { Cart } from "@/schemas/cart.schema";
5
+ import { Cart } from "@evenicanpm/storefront-core/src/api-manager/schemas/cart.schema";
6
6
  import { useNotification } from "@evenicanpm/storefront-core/src/providers/notifications/use-notification";
7
7
  import { MiniCart } from "@evenicanpm/storefront-core/src/components-v2/mini-cart/index";
8
8
 
@@ -6,15 +6,15 @@ import Box from "@mui/material/Box";
6
6
  import Divider from "@mui/material/Divider";
7
7
 
8
8
  import Scrollbar from "@evenicanpm/storefront-core/src/components-v2/scrollbar/index";
9
- import TopHeader from "./components/top-header";
10
- import MiniCartItem from "./components/cart-item";
11
- import EmptyCart from "./components/empty-view";
12
- import BottomActions from "./components/bottom-actions";
9
+ import TopHeader from "@evenicanpm/storefront-core/src/components-v2/mini-cart/components/top-header";
10
+ import MiniCartItem from "@evenicanpm/storefront-core/src/components-v2/mini-cart/components/cart-item";
11
+ import EmptyCart from "@evenicanpm/storefront-core/src/components-v2/mini-cart/components/empty-view";
12
+ import BottomActions from "@evenicanpm/storefront-core/src/components-v2/mini-cart/components/bottom-actions";
13
13
 
14
14
  import { Cart, CartLine } from "@/schemas/cart.schema";
15
15
  import { useFormatter } from "next-intl";
16
- import useUpdateCartLines from "@/services/cart/mutations/update-cart-lines";
17
- import useDeleteCartLine from "@/services/cart/mutations/delete-cart-line";
16
+ import useUpdateCartLines from "@evenicanpm/storefront-core/src/api-manager/services/cart/mutations/update-cart-lines";
17
+ import useDeleteCartLine from "@evenicanpm/storefront-core/src/api-manager/services/cart/mutations/delete-cart-line";
18
18
 
19
19
  interface MiniCartContextValue {
20
20
  cart: Cart;
@@ -109,7 +109,7 @@ const MiniCart = ({ cart, closeDrawer, children }: MiniCartProps) => {
109
109
  MiniCart.Header = () => {
110
110
  const { cart, closeDrawer } = useMiniCartContext();
111
111
  return (
112
- <TopHeader toggle={closeDrawer} total={cart?.CartLines.length || 0}>
112
+ <TopHeader toggle={closeDrawer} total={cart?.CartLines?.length || 0}>
113
113
  <TopHeader.Heading />
114
114
  <TopHeader.CloseButton />
115
115
  </TopHeader>
@@ -1,3 +1,3 @@
1
- import MobileNavigationBar from "./mobile-navigation-bar";
1
+ import MobileNavigationBar from "@evenicanpm/storefront-core/src/components-v2/mobile-navigation/mobile-navigation-bar";
2
2
 
3
3
  export { MobileNavigationBar };
@@ -8,7 +8,12 @@ import { SvgIconComponent } from "@mui/icons-material";
8
8
  import useMediaQuery from "@mui/material/useMediaQuery";
9
9
  import { useTranslations } from "next-intl";
10
10
  // STYLED COMPONENTS
11
- import { iconStyle, StyledBox, StyledNavLink, Wrapper } from "./styles/index";
11
+ import {
12
+ iconStyle,
13
+ StyledBox,
14
+ StyledNavLink,
15
+ Wrapper,
16
+ } from "@evenicanpm/storefront-core/src/components-v2/mobile-navigation/styles/index";
12
17
  // ICON COMPONENTS
13
18
  import Home from "@evenicanpm/storefront-core/src/components-v2/icons/home";
14
19
  import User2 from "@evenicanpm/storefront-core/src/components-v2/icons/user2";
@@ -1,5 +1,5 @@
1
- import NavLink from "./nav-link";
2
- import NavLink2 from "./nav-link-2";
3
- import NavLink3 from "./nav-link-3";
1
+ import NavLink from "@evenicanpm/storefront-core/src/components-v2/nav-link/nav-link";
2
+ import NavLink2 from "@evenicanpm/storefront-core/src/components-v2/nav-link/nav-link-2";
3
+ import NavLink3 from "@evenicanpm/storefront-core/src/components-v2/nav-link/nav-link-3";
4
4
 
5
5
  export { NavLink, NavLink2, NavLink3 };
@@ -7,7 +7,7 @@ import { useTranslations } from "next-intl";
7
7
  import { Paragraph } from "@evenicanpm/storefront-core/src/components-v2/Typography";
8
8
  import CategoryMenu from "@evenicanpm/storefront-core/src/components-v2/categories/category-menu";
9
9
  import Category from "@evenicanpm/storefront-core/src/components-v2/icons/category";
10
- import { CategoryMenuButton } from "./styles";
10
+ import { CategoryMenuButton } from "@evenicanpm/storefront-core/src/components-v2/navbar/styles";
11
11
 
12
12
  type CategoriesContextValue = {
13
13
  label: string;
@@ -12,7 +12,7 @@ import { H6 } from "@evenicanpm/storefront-core/src/components-v2/Typography";
12
12
  import Scrollbar from "@evenicanpm/storefront-core/src/components-v2/scrollbar";
13
13
  import useSettings from "@evenicanpm/storefront-core/src/hooks/use-settings";
14
14
  // LOCAL COMPONENTS
15
- import { TransformedNavItem } from "../utils/transform-nav";
15
+ import { TransformedNavItem } from "@evenicanpm/storefront-core/src/components-v2/navbar/utils/transform-nav";
16
16
  // STYLED COMPONENTS
17
17
  import {
18
18
  Wrapper,
@@ -22,7 +22,7 @@ import {
22
22
  CategoryListItem,
23
23
  SubCategoryList,
24
24
  SubCategoryListItem,
25
- } from "./styles";
25
+ } from "@evenicanpm/storefront-core/src/components-v2/navbar/category-based-menu/styles";
26
26
 
27
27
  type MenuContextValue = {
28
28
  openList: string;
@@ -1 +1 @@
1
- export { default } from "./category-based-menu";
1
+ export { default } from "@evenicanpm/storefront-core/src/components-v2/navbar/category-based-menu/category-based-menu";
@@ -1 +1 @@
1
- export { default as Navbar } from "./navbar";
1
+ export { default as Navbar } from "@evenicanpm/storefront-core/src/components-v2/navbar/navbar";
@@ -1 +1 @@
1
- export { default } from "./mega-menu";
1
+ export { default } from "@evenicanpm/storefront-core/src/components-v2/navbar/mega-menu/mega-menu";
@@ -11,7 +11,12 @@ import { H6 } from "@evenicanpm/storefront-core/src/components-v2/Typography";
11
11
  // HOOKS
12
12
  import useOverflowDetect from "@evenicanpm/storefront-core/src/hooks/use-overflow-detect";
13
13
  // STYLED
14
- import { MenusContainer, Wrapper, MenuListItem, StyledNavLink } from "./styles";
14
+ import {
15
+ MenusContainer,
16
+ Wrapper,
17
+ MenuListItem,
18
+ StyledNavLink,
19
+ } from "@evenicanpm/storefront-core/src/components-v2/navbar/mega-menu/styles";
15
20
 
16
21
  type MegaMenuContextType = {
17
22
  isLeftOverflowing: boolean;
@@ -1 +1 @@
1
- export { default as MobileMenu } from "./mobile-menu";
1
+ export { default as MobileMenu } from "@evenicanpm/storefront-core/src/components-v2/navbar/mobile-menu/mobile-menu";
@@ -1,36 +1,30 @@
1
1
  import { describe, it, vi, beforeEach } from "vitest";
2
2
  import { render, screen, fireEvent } from "@testing-library/react";
3
- import MobileMenu from "./mobile-menu";
4
- import { transformCmsNav } from "../utils/transform-nav";
3
+ import MobileMenu from "@evenicanpm/storefront-core/src/components-v2/navbar/mobile-menu/mobile-menu";
4
+ import { transformCmsNav } from "@evenicanpm/storefront-core/src/components-v2/navbar/utils/transform-nav";
5
5
  import { CmsNavItem } from "@/cms/interfaces/navigation";
6
6
 
7
+ const useContext = vi.fn();
8
+
7
9
  // Mock NavContext
8
10
  vi.mock("@evenicanpm/storefront-core/src/providers/nav-provider", () => {
9
11
  return {
10
12
  NavContext: {
11
13
  // We'll replace these in beforeEach per test
12
14
  Provider: ({ value, children }: any) => (
13
- <div data-testid="nav-context-provider">{children}</div
15
+ <div data-testid="nav-context-provider">{children}</div>
14
16
  ),
15
17
  },
16
18
  useContext: vi.fn(),
17
19
  };
18
20
  });
19
-
20
- import * as NavProvider from "@evenicanpm/storefront-core/src/providers/nav-provider";
21
- import { useContext } from "react";
22
-
23
- describe("MobileMenu", () => {
21
+ describe.skip("MobileMenu", () => {
24
22
  const cmsNav = transformCmsNav(mockCmsData as unknown as CmsNavItem[]);
25
23
  const handleClose = vi.fn();
26
- vi.mock("react", () => ({
27
- ...jest.requireActual("react"),
28
- useContext: vi.fn(),
29
- }));
30
24
  beforeEach(() => {
31
25
  vi.clearAllMocks();
32
26
 
33
- (useContext as vi.Mock).mockReturnValue({
27
+ useContext.mockReturnValue({
34
28
  isMobileSideNavOpen: true,
35
29
  toggleMobileSideNav: handleClose,
36
30
  });
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { useContext, Fragment } from "react";
3
+ import { useContext } from "react";
4
4
  import Box from "@mui/material/Box";
5
5
  import Drawer from "@mui/material/Drawer";
6
6
  import IconButton from "@mui/material/IconButton";
@@ -1,8 +1,8 @@
1
- /*import React from "react";
1
+ import React from "react";
2
2
  import { expect, describe, it } from "vitest";
3
3
  import { render, screen } from "@testing-library/react";
4
- import { NavContext } from "@evenicanpm/storefront-core/src/components-v2/NavProvider";
5
- import NavCms from "./index";
4
+ import { NavContext } from "@evenicanpm/storefront-core/src/providers/nav-provider";
5
+ import NavCms from "@evenicanpm/storefront-core/src/components-v2/navbar/nav-list/index";
6
6
 
7
7
  describe("NavCms", () => {
8
8
  it("Renders the page links and dropdown menu", () => {
@@ -18,8 +18,14 @@ describe("NavCms", () => {
18
18
  });
19
19
  });
20
20
 
21
+ // When just using string as value ts is not inferring it as union type
22
+ // so creating this type to manually cast it
23
+ type navItemType = "INTERNAL" | "EXTERNAL" | "WRAPPER";
24
+
21
25
  const mockData = {
22
26
  categories: [],
27
+ isMobileSideNavOpen: false,
28
+ toggleMobileSideNav: () => null,
23
29
  cmsNav: [
24
30
  {
25
31
  id: 1,
@@ -27,9 +33,9 @@ const mockData = {
27
33
  menuAttached: false,
28
34
  order: 1,
29
35
  path: "https://youtube.com",
30
- type: "EXTERNAL",
36
+ type: "EXTERNAL" as navItemType,
31
37
  uiRouterKey: "about-us",
32
- slug: {},
38
+ slug: "",
33
39
  external: true,
34
40
  },
35
41
  {
@@ -38,7 +44,7 @@ const mockData = {
38
44
  menuAttached: true,
39
45
  order: 2,
40
46
  path: "/pages",
41
- type: "WRAPPER",
47
+ type: "WRAPPER" as navItemType,
42
48
  uiRouterKey: "pages",
43
49
  slug: "pages-1",
44
50
  external: false,
@@ -49,7 +55,7 @@ const mockData = {
49
55
  menuAttached: false,
50
56
  order: 1,
51
57
  path: "/pages/my-page",
52
- type: "INTERNAL",
58
+ type: "INTERNAL" as navItemType,
53
59
  uiRouterKey: "my-page",
54
60
  slug: "pages-my-page",
55
61
  external: false,
@@ -71,9 +77,9 @@ const mockData = {
71
77
  menuAttached: false,
72
78
  order: 1,
73
79
  path: "https://google.com",
74
- type: "EXTERNAL",
80
+ type: "EXTERNAL" as navItemType,
75
81
  uiRouterKey: "nested",
76
- slug: {},
82
+ slug: "",
77
83
  external: true,
78
84
  },
79
85
  ],
@@ -81,4 +87,4 @@ const mockData = {
81
87
  ],
82
88
  },
83
89
  ],
84
- };*/
90
+ };
@@ -1 +1 @@
1
- export { default } from "./nav-list";
1
+ export { default } from "@evenicanpm/storefront-core/src/components-v2/navbar/nav-list/nav-list";
@@ -13,7 +13,10 @@ import useSettings from "@evenicanpm/storefront-core/src/hooks/use-settings";
13
13
  import { Span } from "@evenicanpm/storefront-core/src/components-v2/Typography";
14
14
  import BazaarCard from "@evenicanpm/storefront-core/src/components-v2/BazaarCard";
15
15
  // STYLED COMPONENTS
16
- import { ParentNav, ParentNavItem } from "../styles";
16
+ import {
17
+ ParentNav,
18
+ ParentNavItem,
19
+ } from "@evenicanpm/storefront-core/src/components-v2/navbar/styles";
17
20
 
18
21
  import { TransformedNavItem } from "@evenicanpm/storefront-core/src/components-v2/navbar/utils/transform-nav";
19
22
 
@@ -7,15 +7,19 @@ import KeyboardArrowDown from "@mui/icons-material/KeyboardArrowDown";
7
7
  import { FlexBox } from "@evenicanpm/storefront-core/src/components-v2/flex-box";
8
8
  import { NavLink } from "@evenicanpm/storefront-core/src/components-v2/nav-link";
9
9
  import BazaarCard from "@evenicanpm/storefront-core/src/components-v2/BazaarCard";
10
- import MegaMenu from "../mega-menu";
11
- import CategoryBasedMenu from "../category-based-menu";
12
- import { StyledNavLink, NAV_LINK_STYLES, ChildNavListWrapper } from "../styles";
10
+ import MegaMenu from "@evenicanpm/storefront-core/src/components-v2/navbar/mega-menu";
11
+ import CategoryBasedMenu from "@evenicanpm/storefront-core/src/components-v2/navbar/category-based-menu";
12
+ import {
13
+ StyledNavLink,
14
+ NAV_LINK_STYLES,
15
+ ChildNavListWrapper,
16
+ } from "@evenicanpm/storefront-core/src/components-v2/navbar/styles";
13
17
  import { NavContext } from "@evenicanpm/storefront-core/src/providers/nav-provider";
14
18
  import {
15
19
  transformCmsNav,
16
20
  TransformedNavItem,
17
21
  } from "@evenicanpm/storefront-core/src/components-v2/navbar/utils/transform-nav";
18
- import NavItemChild from "./nav-item-child";
22
+ import NavItemChild from "@evenicanpm/storefront-core/src/components-v2/navbar/nav-list/nav-item-child";
19
23
 
20
24
  type NavigationContextValue = {
21
25
  list: TransformedNavItem[];
@@ -3,11 +3,14 @@
3
3
  import React, { createContext, useContext } from "react";
4
4
 
5
5
  // LOCAL CUSTOM COMPONENTS
6
- import Categories from "./categories";
7
- import NavigationList from "./nav-list/index";
6
+ import Categories from "@evenicanpm/storefront-core/src/components-v2/navbar/categories";
7
+ import NavigationList from "@evenicanpm/storefront-core/src/components-v2/navbar/nav-list/index";
8
8
 
9
9
  // STYLED COMPONENTS
10
- import { NavBarWrapper, InnerContainer } from "./styles";
10
+ import {
11
+ NavBarWrapper,
12
+ InnerContainer,
13
+ } from "@evenicanpm/storefront-core/src/components-v2/navbar/styles";
11
14
 
12
15
  /**
13
16
  * Usage Examples:
@@ -1,5 +1,8 @@
1
1
  import { describe, it, expect } from "vitest";
2
- import { transformCategoryNav, transformCmsNav } from "./transform-nav";
2
+ import {
3
+ transformCategoryNav,
4
+ transformCmsNav,
5
+ } from "@evenicanpm/storefront-core/src/components-v2/navbar/utils/transform-nav";
3
6
  import { CmsNavItem } from "@/cms/interfaces/navigation";
4
7
  import { CategoryHierarchy } from "@/lib/category-helpers";
5
8
 
@@ -4,7 +4,7 @@ import Favorite from "@mui/icons-material/Favorite";
4
4
  import RemoveRedEye from "@mui/icons-material/RemoveRedEye";
5
5
  import FavoriteBorder from "@mui/icons-material/FavoriteBorder";
6
6
  // STYLED COMPONENTS
7
- import { HoverIconWrapper } from "../styles/index";
7
+ import { HoverIconWrapper } from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card/styles/index";
8
8
 
9
9
  // ==============================================================
10
10
  interface Props {
@@ -1 +1 @@
1
- export { default } from "./product-card";
1
+ export { default } from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card/product-card";
@@ -11,13 +11,17 @@ import LazyImage from "@evenicanpm/storefront-core/src/components-v2/LazyImage";
11
11
  import { Span } from "@evenicanpm/storefront-core/src/components-v2/Typography";
12
12
  import { FlexBox } from "@evenicanpm/storefront-core/src/components-v2/flex-box";
13
13
  // LOCAL CUSTOM COMPONENTS
14
- import ProductPrice from "../product-price";
15
- import ProductTitle from "../product-title";
16
- import QuantityBtns from "./components/quantity-buttons";
17
- import DiscountChip from "../discount-chip";
18
- import HoverActions from "./components/hover-actions";
14
+ import ProductPrice from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-price";
15
+ import ProductTitle from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-title";
16
+ import QuantityBtns from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card/components/quantity-buttons";
17
+ import DiscountChip from "@evenicanpm/storefront-core/src/components-v2/product-cards/discount-chip";
18
+ import HoverActions from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card/components/hover-actions";
19
19
  // STYLED COMPONENTS
20
- import { ImageWrapper, ContentWrapper, StyledBazaarCard } from "./styles/index";
20
+ import {
21
+ ImageWrapper,
22
+ ContentWrapper,
23
+ StyledBazaarCard,
24
+ } from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card/styles/index";
21
25
 
22
26
  import buildDetailUrl from "@/lib/build-detail-url";
23
27
  import { useTranslations } from "next-intl";
@@ -1 +1 @@
1
- export { default } from "./product-card";
1
+ export { default } from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card-plp/product-card";
@@ -7,16 +7,16 @@ import {
7
7
  FlexBetween,
8
8
  FlexBox,
9
9
  } from "@evenicanpm/storefront-core/src/components-v2/flex-box/index";
10
- import ImageWithFallback from "../../ImageWithFallback";
10
+ import ImageWithFallback from "@evenicanpm/storefront-core/src/components-v2/ImageWithFallback";
11
11
  // CUSTOM UTILS LIBRARY FUNCTIONS
12
12
  import { calculateDiscount, currency } from "@/lib/lib";
13
13
  // STYLED COMPONENTS
14
- import { PriceText } from "./styles/index";
14
+ import { PriceText } from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card-plp/styles/index";
15
15
  // LOCAL COMPONENTS
16
- import DiscountChip from "../discount-chip";
17
- import QuantityButtons from "./components/quantity-buttons";
16
+ import DiscountChip from "@evenicanpm/storefront-core/src/components-v2/product-cards/discount-chip";
17
+ import QuantityButtons from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card-plp/components/quantity-buttons";
18
18
  // LOCAL CUSTOM HOOKS
19
- import useProduct from "../use-product";
19
+ import useProduct from "@evenicanpm/storefront-core/src/components-v2/product-cards/use-product";
20
20
 
21
21
  import buildDetailUrl from "@/lib/build-detail-url";
22
22
 
@@ -1 +1 @@
1
- export { default as ProductCardPlpList } from "./product-card";
1
+ export { default as ProductCardPlpList } from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card-plp-list/product-card";
@@ -5,18 +5,17 @@ import Rating from "@mui/material/Rating";
5
5
  import styled from "@mui/material/styles/styled";
6
6
  // GLOBAL CUSTOM COMPONENTS
7
7
  import { H5 } from "@evenicanpm/storefront-core/src/components-v2/Typography";
8
- import ImageWithFallback from "../../ImageWithFallback";
8
+ import ImageWithFallback from "@evenicanpm/storefront-core/src/components-v2/ImageWithFallback";
9
9
  // LOCAL CUSTOM HOOK
10
- import useProduct from "../use-product";
10
+ import useProduct from "@evenicanpm/storefront-core/src/components-v2/product-cards/use-product";
11
11
  // LOCAL CUSTOM COMPONENTS
12
- import DiscountChip from "../discount-chip";
13
- import ProductPrice from "../product-price";
14
- // import ProductTags from "./components/tags";
15
- import AddToCartButton from "./components/add-to-cart";
16
- import FavoriteButton from "./components/favorite-button";
12
+ import DiscountChip from "@evenicanpm/storefront-core/src/components-v2/product-cards/discount-chip";
13
+ import ProductPrice from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-price";
14
+ import AddToCartButton from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card-plp-list/components/add-to-cart";
15
+ import FavoriteButton from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card-plp-list/components/favorite-button";
16
+ import ProductTags from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card-plp-list/components/tags";
17
17
 
18
18
  import buildDetailUrl from "@/lib/build-detail-url";
19
- import ProductTags from "./components/tags";
20
19
 
21
20
  // STYLED COMPONENT
22
21
  const Wrapper = styled(Card)({
@@ -1 +1 @@
1
- export { default } from "./product-card";
1
+ export { default } from "@evenicanpm/storefront-core/src/components-v2/product-cards/product-card-search/product-card";