@enadhq/enad-react-sdk 1.0.0 → 1.0.2

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 (875) hide show
  1. package/README.md +288 -0
  2. package/dist/client/cart/adapters/brink.d.ts +29 -0
  3. package/dist/client/cart/adapters/brink.d.ts.map +1 -0
  4. package/dist/client/cart/adapters/brink.mjs +154 -0
  5. package/dist/client/cart/adapters/brink.mjs.map +1 -0
  6. package/dist/client/cart/adapters/index.d.ts +3 -0
  7. package/dist/client/cart/adapters/index.d.ts.map +1 -0
  8. package/dist/client/cart/adapters/index.mjs +5 -0
  9. package/dist/client/cart/adapters/index.mjs.map +1 -0
  10. package/dist/client/cart/adapters/mock.d.ts +20 -0
  11. package/dist/client/cart/adapters/mock.d.ts.map +1 -0
  12. package/dist/client/cart/adapters/mock.mjs +76 -0
  13. package/dist/client/cart/adapters/mock.mjs.map +1 -0
  14. package/dist/client/cart/components/cart-drawer.d.ts +17 -0
  15. package/dist/client/cart/components/cart-drawer.d.ts.map +1 -0
  16. package/dist/client/cart/components/cart-drawer.mjs +311 -0
  17. package/dist/client/cart/components/cart-drawer.mjs.map +1 -0
  18. package/dist/client/cart/components/cart-trigger.d.ts +10 -0
  19. package/dist/client/cart/components/cart-trigger.d.ts.map +1 -0
  20. package/dist/client/cart/components/cart-trigger.mjs +34 -0
  21. package/dist/client/cart/components/cart-trigger.mjs.map +1 -0
  22. package/dist/client/cart/components/promo-code-input.d.ts +16 -0
  23. package/dist/client/cart/components/promo-code-input.d.ts.map +1 -0
  24. package/dist/client/cart/components/promo-code-input.mjs +92 -0
  25. package/dist/client/cart/components/promo-code-input.mjs.map +1 -0
  26. package/dist/client/cart/constants/session.d.ts +2 -0
  27. package/dist/client/cart/constants/session.d.ts.map +1 -0
  28. package/dist/client/cart/constants/session.mjs +5 -0
  29. package/dist/client/cart/constants/session.mjs.map +1 -0
  30. package/dist/client/cart/contexts/cart.d.ts +36 -0
  31. package/dist/client/cart/contexts/cart.d.ts.map +1 -0
  32. package/dist/client/cart/contexts/cart.mjs +20 -0
  33. package/dist/client/cart/contexts/cart.mjs.map +1 -0
  34. package/dist/client/cart/hooks/useCart.d.ts +26 -0
  35. package/dist/client/cart/hooks/useCart.d.ts.map +1 -0
  36. package/dist/client/cart/hooks/useCart.mjs +25 -0
  37. package/dist/client/cart/hooks/useCart.mjs.map +1 -0
  38. package/dist/client/cart/hooks/useCartActions.d.ts +25 -0
  39. package/dist/client/cart/hooks/useCartActions.d.ts.map +1 -0
  40. package/dist/client/cart/hooks/useCartActions.mjs +49 -0
  41. package/dist/client/cart/hooks/useCartActions.mjs.map +1 -0
  42. package/dist/client/cart/index.d.ts +12 -0
  43. package/dist/client/cart/index.d.ts.map +1 -0
  44. package/dist/client/cart/index.mjs +16 -0
  45. package/dist/client/cart/index.mjs.map +1 -0
  46. package/dist/client/cart/queries/addToCartQueryFn.d.ts +7 -0
  47. package/dist/client/cart/queries/addToCartQueryFn.d.ts.map +1 -0
  48. package/dist/client/cart/queries/addToCartQueryFn.mjs +27 -0
  49. package/dist/client/cart/queries/addToCartQueryFn.mjs.map +1 -0
  50. package/dist/client/cart/queries/getCartQueryFn.d.ts +4 -0
  51. package/dist/client/cart/queries/getCartQueryFn.d.ts.map +1 -0
  52. package/dist/client/cart/queries/getCartQueryFn.mjs +34 -0
  53. package/dist/client/cart/queries/getCartQueryFn.mjs.map +1 -0
  54. package/dist/client/cart/queries/removeCartItemQueryFn.d.ts +6 -0
  55. package/dist/client/cart/queries/removeCartItemQueryFn.d.ts.map +1 -0
  56. package/dist/client/cart/queries/removeCartItemQueryFn.mjs +24 -0
  57. package/dist/client/cart/queries/removeCartItemQueryFn.mjs.map +1 -0
  58. package/dist/client/cart/queries/updateCartItemQueryFn.d.ts +7 -0
  59. package/dist/client/cart/queries/updateCartItemQueryFn.d.ts.map +1 -0
  60. package/dist/client/cart/queries/updateCartItemQueryFn.mjs +27 -0
  61. package/dist/client/cart/queries/updateCartItemQueryFn.mjs.map +1 -0
  62. package/dist/client/cart/types/adapter.d.ts +110 -0
  63. package/dist/client/cart/types/adapter.d.ts.map +1 -0
  64. package/dist/client/cart/types/adapter.mjs +12 -0
  65. package/dist/client/cart/types/adapter.mjs.map +1 -0
  66. package/dist/client/cart/types/cart.d.ts +52 -0
  67. package/dist/client/cart/types/cart.d.ts.map +1 -0
  68. package/dist/client/cart/types/cart.mjs +1 -0
  69. package/dist/client/cart/types/cart.mjs.map +1 -0
  70. package/dist/client/cart/utils/session.d.ts +5 -0
  71. package/dist/client/cart/utils/session.d.ts.map +1 -0
  72. package/dist/client/cart/utils/session.mjs +21 -0
  73. package/dist/client/cart/utils/session.mjs.map +1 -0
  74. package/dist/client/cms/storyblok/preview/registerStoryblokBridge.d.ts +7 -0
  75. package/dist/client/cms/storyblok/preview/registerStoryblokBridge.d.ts.map +1 -0
  76. package/dist/client/cms/storyblok/preview/registerStoryblokBridge.mjs +25 -0
  77. package/dist/client/cms/storyblok/preview/registerStoryblokBridge.mjs.map +1 -0
  78. package/dist/client/cms/storyblok/preview/storyblok-preview-syncer.d.ts +20 -0
  79. package/dist/client/cms/storyblok/preview/storyblok-preview-syncer.d.ts.map +1 -0
  80. package/dist/client/cms/storyblok/preview/storyblok-preview-syncer.mjs +79 -0
  81. package/dist/client/cms/storyblok/preview/storyblok-preview-syncer.mjs.map +1 -0
  82. package/dist/client/global/auth/withAuth.d.ts +5 -0
  83. package/dist/client/global/auth/withAuth.d.ts.map +1 -0
  84. package/dist/client/global/auth/withAuth.mjs +25 -0
  85. package/dist/client/global/auth/withAuth.mjs.map +1 -0
  86. package/dist/client/global/components/error-boundary.d.ts +18 -0
  87. package/dist/client/global/components/error-boundary.d.ts.map +1 -0
  88. package/dist/client/global/components/error-boundary.mjs +41 -0
  89. package/dist/client/global/components/error-boundary.mjs.map +1 -0
  90. package/dist/client/global/config/index.d.ts +17 -0
  91. package/dist/client/global/config/index.d.ts.map +1 -0
  92. package/dist/client/global/config/index.mjs +34 -0
  93. package/dist/client/global/config/index.mjs.map +1 -0
  94. package/dist/client/global/constants/tags.d.ts +15 -0
  95. package/dist/client/global/constants/tags.d.ts.map +1 -0
  96. package/dist/client/global/constants/tags.mjs +18 -0
  97. package/dist/client/global/constants/tags.mjs.map +1 -0
  98. package/dist/client/global/index.d.ts +6 -0
  99. package/dist/client/global/index.d.ts.map +1 -0
  100. package/dist/client/global/index.mjs +7 -0
  101. package/dist/client/global/index.mjs.map +1 -0
  102. package/dist/client/global/providers/enad-provider.d.ts +48 -0
  103. package/dist/client/global/providers/enad-provider.d.ts.map +1 -0
  104. package/dist/client/global/providers/enad-provider.mjs +40 -0
  105. package/dist/client/global/providers/enad-provider.mjs.map +1 -0
  106. package/dist/client/icons/adapters/hugeicons.d.ts +9 -0
  107. package/dist/client/icons/adapters/hugeicons.d.ts.map +1 -0
  108. package/dist/client/icons/adapters/hugeicons.mjs +117 -0
  109. package/dist/client/icons/adapters/hugeicons.mjs.map +1 -0
  110. package/dist/client/icons/adapters/lucide.d.ts +8 -0
  111. package/dist/client/icons/adapters/lucide.d.ts.map +1 -0
  112. package/dist/client/icons/adapters/lucide.mjs +108 -0
  113. package/dist/client/icons/adapters/lucide.mjs.map +1 -0
  114. package/dist/client/icons/adapters/phosphor.d.ts +11 -0
  115. package/dist/client/icons/adapters/phosphor.d.ts.map +1 -0
  116. package/dist/client/icons/adapters/phosphor.mjs +108 -0
  117. package/dist/client/icons/adapters/phosphor.mjs.map +1 -0
  118. package/dist/client/icons/icon-context.d.ts +13 -0
  119. package/dist/client/icons/icon-context.d.ts.map +1 -0
  120. package/dist/client/icons/icon-context.mjs +27 -0
  121. package/dist/client/icons/icon-context.mjs.map +1 -0
  122. package/dist/client/icons/index.d.ts +9 -0
  123. package/dist/client/icons/index.d.ts.map +1 -0
  124. package/dist/client/icons/index.mjs +16 -0
  125. package/dist/client/icons/index.mjs.map +1 -0
  126. package/dist/client/icons/types.d.ts +60 -0
  127. package/dist/client/icons/types.d.ts.map +1 -0
  128. package/dist/client/icons/types.mjs +1 -0
  129. package/dist/client/icons/types.mjs.map +1 -0
  130. package/dist/client/motion/config.d.ts +42 -0
  131. package/dist/client/motion/config.d.ts.map +1 -0
  132. package/dist/client/motion/config.mjs +44 -0
  133. package/dist/client/motion/config.mjs.map +1 -0
  134. package/dist/client/motion/hover.d.ts +36 -0
  135. package/dist/client/motion/hover.d.ts.map +1 -0
  136. package/dist/client/motion/hover.mjs +19 -0
  137. package/dist/client/motion/hover.mjs.map +1 -0
  138. package/dist/client/motion/index.d.ts +4 -0
  139. package/dist/client/motion/index.d.ts.map +1 -0
  140. package/dist/client/motion/index.mjs +13 -0
  141. package/dist/client/motion/index.mjs.map +1 -0
  142. package/dist/client/motion/stagger.d.ts +36 -0
  143. package/dist/client/motion/stagger.d.ts.map +1 -0
  144. package/dist/client/motion/stagger.mjs +17 -0
  145. package/dist/client/motion/stagger.mjs.map +1 -0
  146. package/dist/client/search/actions/searchAction.d.ts +2 -0
  147. package/dist/client/search/actions/searchAction.d.ts.map +1 -0
  148. package/dist/client/search/actions/searchAction.mjs +18 -0
  149. package/dist/client/search/actions/searchAction.mjs.map +1 -0
  150. package/dist/client/search/components/search-bar.d.ts +8 -0
  151. package/dist/client/search/components/search-bar.d.ts.map +1 -0
  152. package/dist/client/search/components/search-bar.mjs +34 -0
  153. package/dist/client/search/components/search-bar.mjs.map +1 -0
  154. package/dist/client/search/hooks/useSearch.d.ts +14 -0
  155. package/dist/client/search/hooks/useSearch.d.ts.map +1 -0
  156. package/dist/client/search/hooks/useSearch.mjs +37 -0
  157. package/dist/client/search/hooks/useSearch.mjs.map +1 -0
  158. package/dist/client/search/index.d.ts +2 -0
  159. package/dist/client/search/index.d.ts.map +1 -0
  160. package/dist/client/search/index.mjs +5 -0
  161. package/dist/client/search/index.mjs.map +1 -0
  162. package/dist/client/storefront/blocks/accordion-block.d.ts +4 -0
  163. package/dist/client/storefront/blocks/accordion-block.d.ts.map +1 -0
  164. package/dist/client/storefront/blocks/accordion-block.mjs +43 -0
  165. package/dist/client/storefront/blocks/accordion-block.mjs.map +1 -0
  166. package/dist/client/storefront/blocks/card-image-with-caption.d.ts +4 -0
  167. package/dist/client/storefront/blocks/card-image-with-caption.d.ts.map +1 -0
  168. package/dist/client/storefront/blocks/card-image-with-caption.mjs +27 -0
  169. package/dist/client/storefront/blocks/card-image-with-caption.mjs.map +1 -0
  170. package/dist/client/storefront/blocks/card-video.d.ts +4 -0
  171. package/dist/client/storefront/blocks/card-video.d.ts.map +1 -0
  172. package/dist/client/storefront/blocks/card-video.mjs +43 -0
  173. package/dist/client/storefront/blocks/card-video.mjs.map +1 -0
  174. package/dist/client/storefront/blocks/content-with-gallery.d.ts +4 -0
  175. package/dist/client/storefront/blocks/content-with-gallery.d.ts.map +1 -0
  176. package/dist/client/storefront/blocks/content-with-gallery.mjs +48 -0
  177. package/dist/client/storefront/blocks/content-with-gallery.mjs.map +1 -0
  178. package/dist/client/storefront/blocks/content-with-image-product-data.d.ts +4 -0
  179. package/dist/client/storefront/blocks/content-with-image-product-data.d.ts.map +1 -0
  180. package/dist/client/storefront/blocks/content-with-image-product-data.mjs +45 -0
  181. package/dist/client/storefront/blocks/content-with-image-product-data.mjs.map +1 -0
  182. package/dist/client/storefront/blocks/gallery-with-caption.d.ts +4 -0
  183. package/dist/client/storefront/blocks/gallery-with-caption.d.ts.map +1 -0
  184. package/dist/client/storefront/blocks/gallery-with-caption.mjs +36 -0
  185. package/dist/client/storefront/blocks/gallery-with-caption.mjs.map +1 -0
  186. package/dist/client/storefront/blocks/gallery-with-link-blocks.d.ts +4 -0
  187. package/dist/client/storefront/blocks/gallery-with-link-blocks.d.ts.map +1 -0
  188. package/dist/client/storefront/blocks/gallery-with-link-blocks.mjs +24 -0
  189. package/dist/client/storefront/blocks/gallery-with-link-blocks.mjs.map +1 -0
  190. package/dist/client/storefront/blocks/gallery.d.ts +4 -0
  191. package/dist/client/storefront/blocks/gallery.d.ts.map +1 -0
  192. package/dist/client/storefront/blocks/gallery.mjs +47 -0
  193. package/dist/client/storefront/blocks/gallery.mjs.map +1 -0
  194. package/dist/client/storefront/blocks/hero.d.ts +4 -0
  195. package/dist/client/storefront/blocks/hero.d.ts.map +1 -0
  196. package/dist/client/storefront/blocks/hero.mjs +357 -0
  197. package/dist/client/storefront/blocks/hero.mjs.map +1 -0
  198. package/dist/client/storefront/blocks/image-block.d.ts +4 -0
  199. package/dist/client/storefront/blocks/image-block.d.ts.map +1 -0
  200. package/dist/client/storefront/blocks/image-block.mjs +29 -0
  201. package/dist/client/storefront/blocks/image-block.mjs.map +1 -0
  202. package/dist/client/storefront/blocks/index.d.ts +20 -0
  203. package/dist/client/storefront/blocks/index.d.ts.map +1 -0
  204. package/dist/client/storefront/blocks/index.mjs +41 -0
  205. package/dist/client/storefront/blocks/index.mjs.map +1 -0
  206. package/dist/client/storefront/blocks/link-block-small.d.ts +4 -0
  207. package/dist/client/storefront/blocks/link-block-small.d.ts.map +1 -0
  208. package/dist/client/storefront/blocks/link-block-small.mjs +35 -0
  209. package/dist/client/storefront/blocks/link-block-small.mjs.map +1 -0
  210. package/dist/client/storefront/blocks/link-block.d.ts +4 -0
  211. package/dist/client/storefront/blocks/link-block.d.ts.map +1 -0
  212. package/dist/client/storefront/blocks/link-block.mjs +150 -0
  213. package/dist/client/storefront/blocks/link-block.mjs.map +1 -0
  214. package/dist/client/storefront/blocks/product-card.d.ts +4 -0
  215. package/dist/client/storefront/blocks/product-card.d.ts.map +1 -0
  216. package/dist/client/storefront/blocks/product-card.mjs +228 -0
  217. package/dist/client/storefront/blocks/product-card.mjs.map +1 -0
  218. package/dist/client/storefront/blocks/product-image.d.ts +4 -0
  219. package/dist/client/storefront/blocks/product-image.d.ts.map +1 -0
  220. package/dist/client/storefront/blocks/product-image.mjs +109 -0
  221. package/dist/client/storefront/blocks/product-image.mjs.map +1 -0
  222. package/dist/client/storefront/blocks/spacer.d.ts +4 -0
  223. package/dist/client/storefront/blocks/spacer.d.ts.map +1 -0
  224. package/dist/client/storefront/blocks/spacer.mjs +14 -0
  225. package/dist/client/storefront/blocks/spacer.mjs.map +1 -0
  226. package/dist/client/storefront/blocks/text-content-with-image.d.ts +4 -0
  227. package/dist/client/storefront/blocks/text-content-with-image.d.ts.map +1 -0
  228. package/dist/client/storefront/blocks/text-content-with-image.mjs +225 -0
  229. package/dist/client/storefront/blocks/text-content-with-image.mjs.map +1 -0
  230. package/dist/client/storefront/blocks/text-content.d.ts +4 -0
  231. package/dist/client/storefront/blocks/text-content.d.ts.map +1 -0
  232. package/dist/client/storefront/blocks/text-content.mjs +150 -0
  233. package/dist/client/storefront/blocks/text-content.mjs.map +1 -0
  234. package/dist/client/storefront/blocks/truncated-text.d.ts +4 -0
  235. package/dist/client/storefront/blocks/truncated-text.d.ts.map +1 -0
  236. package/dist/client/storefront/blocks/truncated-text.mjs +36 -0
  237. package/dist/client/storefront/blocks/truncated-text.mjs.map +1 -0
  238. package/dist/client/storefront/blocks/variable-text-content.d.ts +4 -0
  239. package/dist/client/storefront/blocks/variable-text-content.d.ts.map +1 -0
  240. package/dist/client/storefront/blocks/variable-text-content.mjs +15 -0
  241. package/dist/client/storefront/blocks/variable-text-content.mjs.map +1 -0
  242. package/dist/client/storefront/carousel/index.d.ts +2 -0
  243. package/dist/client/storefront/carousel/index.d.ts.map +1 -0
  244. package/dist/client/storefront/carousel/index.mjs +5 -0
  245. package/dist/client/storefront/carousel/index.mjs.map +1 -0
  246. package/dist/client/storefront/carousel/swipeable-carousel.d.ts +14 -0
  247. package/dist/client/storefront/carousel/swipeable-carousel.d.ts.map +1 -0
  248. package/dist/client/storefront/carousel/swipeable-carousel.mjs +80 -0
  249. package/dist/client/storefront/carousel/swipeable-carousel.mjs.map +1 -0
  250. package/dist/client/storefront/checkout/address-form.d.ts +31 -0
  251. package/dist/client/storefront/checkout/address-form.d.ts.map +1 -0
  252. package/dist/client/storefront/checkout/address-form.mjs +124 -0
  253. package/dist/client/storefront/checkout/address-form.mjs.map +1 -0
  254. package/dist/client/storefront/checkout/cart-summary.d.ts +40 -0
  255. package/dist/client/storefront/checkout/cart-summary.d.ts.map +1 -0
  256. package/dist/client/storefront/checkout/cart-summary.mjs +150 -0
  257. package/dist/client/storefront/checkout/cart-summary.mjs.map +1 -0
  258. package/dist/client/storefront/checkout/checkout-stepper.d.ts +13 -0
  259. package/dist/client/storefront/checkout/checkout-stepper.d.ts.map +1 -0
  260. package/dist/client/storefront/checkout/checkout-stepper.mjs +58 -0
  261. package/dist/client/storefront/checkout/checkout-stepper.mjs.map +1 -0
  262. package/dist/client/storefront/checkout/index.d.ts +15 -0
  263. package/dist/client/storefront/checkout/index.d.ts.map +1 -0
  264. package/dist/client/storefront/checkout/index.mjs +17 -0
  265. package/dist/client/storefront/checkout/index.mjs.map +1 -0
  266. package/dist/client/storefront/checkout/order-confirmation.d.ts +10 -0
  267. package/dist/client/storefront/checkout/order-confirmation.d.ts.map +1 -0
  268. package/dist/client/storefront/checkout/order-confirmation.mjs +27 -0
  269. package/dist/client/storefront/checkout/order-confirmation.mjs.map +1 -0
  270. package/dist/client/storefront/checkout/order-summary.d.ts +29 -0
  271. package/dist/client/storefront/checkout/order-summary.d.ts.map +1 -0
  272. package/dist/client/storefront/checkout/order-summary.mjs +106 -0
  273. package/dist/client/storefront/checkout/order-summary.mjs.map +1 -0
  274. package/dist/client/storefront/checkout/payment-method-selector.d.ts +18 -0
  275. package/dist/client/storefront/checkout/payment-method-selector.d.ts.map +1 -0
  276. package/dist/client/storefront/checkout/payment-method-selector.mjs +61 -0
  277. package/dist/client/storefront/checkout/payment-method-selector.mjs.map +1 -0
  278. package/dist/client/storefront/checkout/shipping-method-selector.d.ts +23 -0
  279. package/dist/client/storefront/checkout/shipping-method-selector.d.ts.map +1 -0
  280. package/dist/client/storefront/checkout/shipping-method-selector.mjs +77 -0
  281. package/dist/client/storefront/checkout/shipping-method-selector.mjs.map +1 -0
  282. package/dist/client/storefront/components/badge.d.ts +8 -0
  283. package/dist/client/storefront/components/badge.d.ts.map +1 -0
  284. package/dist/client/storefront/components/badge.mjs +28 -0
  285. package/dist/client/storefront/components/badge.mjs.map +1 -0
  286. package/dist/client/storefront/components/country-redirect.d.ts +30 -0
  287. package/dist/client/storefront/components/country-redirect.d.ts.map +1 -0
  288. package/dist/client/storefront/components/country-redirect.mjs +121 -0
  289. package/dist/client/storefront/components/country-redirect.mjs.map +1 -0
  290. package/dist/client/storefront/components/empty-state.d.ts +38 -0
  291. package/dist/client/storefront/components/empty-state.d.ts.map +1 -0
  292. package/dist/client/storefront/components/empty-state.mjs +55 -0
  293. package/dist/client/storefront/components/empty-state.mjs.map +1 -0
  294. package/dist/client/storefront/components/image-lightbox.d.ts +13 -0
  295. package/dist/client/storefront/components/image-lightbox.d.ts.map +1 -0
  296. package/dist/client/storefront/components/image-lightbox.mjs +275 -0
  297. package/dist/client/storefront/components/image-lightbox.mjs.map +1 -0
  298. package/dist/client/storefront/components/infinite-scroll.d.ts +37 -0
  299. package/dist/client/storefront/components/infinite-scroll.d.ts.map +1 -0
  300. package/dist/client/storefront/components/infinite-scroll.mjs +83 -0
  301. package/dist/client/storefront/components/infinite-scroll.mjs.map +1 -0
  302. package/dist/client/storefront/components/language-selector.d.ts +5 -0
  303. package/dist/client/storefront/components/language-selector.d.ts.map +1 -0
  304. package/dist/client/storefront/components/language-selector.mjs +58 -0
  305. package/dist/client/storefront/components/language-selector.mjs.map +1 -0
  306. package/dist/client/storefront/components/newsletter-signup.d.ts +14 -0
  307. package/dist/client/storefront/components/newsletter-signup.d.ts.map +1 -0
  308. package/dist/client/storefront/components/newsletter-signup.mjs +81 -0
  309. package/dist/client/storefront/components/newsletter-signup.mjs.map +1 -0
  310. package/dist/client/storefront/components/price.d.ts +14 -0
  311. package/dist/client/storefront/components/price.d.ts.map +1 -0
  312. package/dist/client/storefront/components/price.mjs +46 -0
  313. package/dist/client/storefront/components/price.mjs.map +1 -0
  314. package/dist/client/storefront/components/product-recommendations.d.ts +18 -0
  315. package/dist/client/storefront/components/product-recommendations.d.ts.map +1 -0
  316. package/dist/client/storefront/components/product-recommendations.mjs +108 -0
  317. package/dist/client/storefront/components/product-recommendations.mjs.map +1 -0
  318. package/dist/client/storefront/components/product-tabs.d.ts +12 -0
  319. package/dist/client/storefront/components/product-tabs.d.ts.map +1 -0
  320. package/dist/client/storefront/components/product-tabs.mjs +64 -0
  321. package/dist/client/storefront/components/product-tabs.mjs.map +1 -0
  322. package/dist/client/storefront/components/quick-view.d.ts +25 -0
  323. package/dist/client/storefront/components/quick-view.d.ts.map +1 -0
  324. package/dist/client/storefront/components/quick-view.mjs +149 -0
  325. package/dist/client/storefront/components/quick-view.mjs.map +1 -0
  326. package/dist/client/storefront/components/review-summary.d.ts +17 -0
  327. package/dist/client/storefront/components/review-summary.d.ts.map +1 -0
  328. package/dist/client/storefront/components/review-summary.mjs +66 -0
  329. package/dist/client/storefront/components/review-summary.mjs.map +1 -0
  330. package/dist/client/storefront/components/search-autocomplete.d.ts +25 -0
  331. package/dist/client/storefront/components/search-autocomplete.d.ts.map +1 -0
  332. package/dist/client/storefront/components/search-autocomplete.mjs +183 -0
  333. package/dist/client/storefront/components/search-autocomplete.mjs.map +1 -0
  334. package/dist/client/storefront/components/section-nav.d.ts +20 -0
  335. package/dist/client/storefront/components/section-nav.d.ts.map +1 -0
  336. package/dist/client/storefront/components/section-nav.mjs +175 -0
  337. package/dist/client/storefront/components/section-nav.mjs.map +1 -0
  338. package/dist/client/storefront/components/share-button.d.ts +19 -0
  339. package/dist/client/storefront/components/share-button.d.ts.map +1 -0
  340. package/dist/client/storefront/components/share-button.mjs +95 -0
  341. package/dist/client/storefront/components/share-button.mjs.map +1 -0
  342. package/dist/client/storefront/components/skeleton.d.ts +12 -0
  343. package/dist/client/storefront/components/skeleton.d.ts.map +1 -0
  344. package/dist/client/storefront/components/skeleton.mjs +70 -0
  345. package/dist/client/storefront/components/skeleton.mjs.map +1 -0
  346. package/dist/client/storefront/components/star-rating.d.ts +13 -0
  347. package/dist/client/storefront/components/star-rating.d.ts.map +1 -0
  348. package/dist/client/storefront/components/star-rating.mjs +240 -0
  349. package/dist/client/storefront/components/star-rating.mjs.map +1 -0
  350. package/dist/client/storefront/components/testimonial.d.ts +20 -0
  351. package/dist/client/storefront/components/testimonial.d.ts.map +1 -0
  352. package/dist/client/storefront/components/testimonial.mjs +53 -0
  353. package/dist/client/storefront/components/testimonial.mjs.map +1 -0
  354. package/dist/client/storefront/components/trust-badges.d.ts +14 -0
  355. package/dist/client/storefront/components/trust-badges.d.ts.map +1 -0
  356. package/dist/client/storefront/components/trust-badges.mjs +25 -0
  357. package/dist/client/storefront/components/trust-badges.mjs.map +1 -0
  358. package/dist/client/storefront/components/variant-selector.d.ts +21 -0
  359. package/dist/client/storefront/components/variant-selector.d.ts.map +1 -0
  360. package/dist/client/storefront/components/variant-selector.mjs +41 -0
  361. package/dist/client/storefront/components/variant-selector.mjs.map +1 -0
  362. package/dist/client/storefront/components/wishlist-toggle.d.ts +12 -0
  363. package/dist/client/storefront/components/wishlist-toggle.d.ts.map +1 -0
  364. package/dist/client/storefront/components/wishlist-toggle.mjs +58 -0
  365. package/dist/client/storefront/components/wishlist-toggle.mjs.map +1 -0
  366. package/dist/client/storefront/filters/filter-chip.d.ts +10 -0
  367. package/dist/client/storefront/filters/filter-chip.d.ts.map +1 -0
  368. package/dist/client/storefront/filters/filter-chip.mjs +30 -0
  369. package/dist/client/storefront/filters/filter-chip.mjs.map +1 -0
  370. package/dist/client/storefront/filters/filter-group.d.ts +22 -0
  371. package/dist/client/storefront/filters/filter-group.d.ts.map +1 -0
  372. package/dist/client/storefront/filters/filter-group.mjs +102 -0
  373. package/dist/client/storefront/filters/filter-group.mjs.map +1 -0
  374. package/dist/client/storefront/filters/filter-panel.d.ts +25 -0
  375. package/dist/client/storefront/filters/filter-panel.d.ts.map +1 -0
  376. package/dist/client/storefront/filters/filter-panel.mjs +110 -0
  377. package/dist/client/storefront/filters/filter-panel.mjs.map +1 -0
  378. package/dist/client/storefront/filters/index.d.ts +6 -0
  379. package/dist/client/storefront/filters/index.d.ts.map +1 -0
  380. package/dist/client/storefront/filters/index.mjs +13 -0
  381. package/dist/client/storefront/filters/index.mjs.map +1 -0
  382. package/dist/client/storefront/filters/sort-select.d.ts +12 -0
  383. package/dist/client/storefront/filters/sort-select.d.ts.map +1 -0
  384. package/dist/client/storefront/filters/sort-select.mjs +34 -0
  385. package/dist/client/storefront/filters/sort-select.mjs.map +1 -0
  386. package/dist/client/storefront/filters/toggle-list-view.d.ts +8 -0
  387. package/dist/client/storefront/filters/toggle-list-view.d.ts.map +1 -0
  388. package/dist/client/storefront/filters/toggle-list-view.mjs +30 -0
  389. package/dist/client/storefront/filters/toggle-list-view.mjs.map +1 -0
  390. package/dist/client/storefront/hooks/use-section-observer.d.ts +12 -0
  391. package/dist/client/storefront/hooks/use-section-observer.d.ts.map +1 -0
  392. package/dist/client/storefront/hooks/use-section-observer.mjs +46 -0
  393. package/dist/client/storefront/hooks/use-section-observer.mjs.map +1 -0
  394. package/dist/client/storefront/index.d.ts +24 -0
  395. package/dist/client/storefront/index.d.ts.map +1 -0
  396. package/dist/client/storefront/index.mjs +26 -0
  397. package/dist/client/storefront/index.mjs.map +1 -0
  398. package/dist/client/storefront/layout/footer.d.ts +4 -0
  399. package/dist/client/storefront/layout/footer.d.ts.map +1 -0
  400. package/dist/client/storefront/layout/footer.mjs +56 -0
  401. package/dist/client/storefront/layout/footer.mjs.map +1 -0
  402. package/dist/client/storefront/layout/header.d.ts +4 -0
  403. package/dist/client/storefront/layout/header.d.ts.map +1 -0
  404. package/dist/client/storefront/layout/header.mjs +367 -0
  405. package/dist/client/storefront/layout/header.mjs.map +1 -0
  406. package/dist/client/storefront/layout/index.d.ts +5 -0
  407. package/dist/client/storefront/layout/index.d.ts.map +1 -0
  408. package/dist/client/storefront/layout/index.mjs +11 -0
  409. package/dist/client/storefront/layout/index.mjs.map +1 -0
  410. package/dist/client/storefront/layout/mobile-menu-drawer.d.ts +4 -0
  411. package/dist/client/storefront/layout/mobile-menu-drawer.d.ts.map +1 -0
  412. package/dist/client/storefront/layout/mobile-menu-drawer.mjs +93 -0
  413. package/dist/client/storefront/layout/mobile-menu-drawer.mjs.map +1 -0
  414. package/dist/client/storefront/layout/promotion-bar.d.ts +4 -0
  415. package/dist/client/storefront/layout/promotion-bar.d.ts.map +1 -0
  416. package/dist/client/storefront/layout/promotion-bar.mjs +79 -0
  417. package/dist/client/storefront/layout/promotion-bar.mjs.map +1 -0
  418. package/dist/client/storefront/primitives/breadcrumbs.d.ts +12 -0
  419. package/dist/client/storefront/primitives/breadcrumbs.d.ts.map +1 -0
  420. package/dist/client/storefront/primitives/breadcrumbs.mjs +37 -0
  421. package/dist/client/storefront/primitives/breadcrumbs.mjs.map +1 -0
  422. package/dist/client/storefront/primitives/button.d.ts +12 -0
  423. package/dist/client/storefront/primitives/button.d.ts.map +1 -0
  424. package/dist/client/storefront/primitives/button.mjs +51 -0
  425. package/dist/client/storefront/primitives/button.mjs.map +1 -0
  426. package/dist/client/storefront/primitives/checkbox.d.ts +10 -0
  427. package/dist/client/storefront/primitives/checkbox.d.ts.map +1 -0
  428. package/dist/client/storefront/primitives/checkbox.mjs +23 -0
  429. package/dist/client/storefront/primitives/checkbox.mjs.map +1 -0
  430. package/dist/client/storefront/primitives/download-item.d.ts +9 -0
  431. package/dist/client/storefront/primitives/download-item.d.ts.map +1 -0
  432. package/dist/client/storefront/primitives/download-item.mjs +28 -0
  433. package/dist/client/storefront/primitives/download-item.mjs.map +1 -0
  434. package/dist/client/storefront/primitives/index.d.ts +10 -0
  435. package/dist/client/storefront/primitives/index.d.ts.map +1 -0
  436. package/dist/client/storefront/primitives/index.mjs +21 -0
  437. package/dist/client/storefront/primitives/index.mjs.map +1 -0
  438. package/dist/client/storefront/primitives/input.d.ts +18 -0
  439. package/dist/client/storefront/primitives/input.d.ts.map +1 -0
  440. package/dist/client/storefront/primitives/input.mjs +118 -0
  441. package/dist/client/storefront/primitives/input.mjs.map +1 -0
  442. package/dist/client/storefront/primitives/pagination.d.ts +9 -0
  443. package/dist/client/storefront/primitives/pagination.d.ts.map +1 -0
  444. package/dist/client/storefront/primitives/pagination.mjs +86 -0
  445. package/dist/client/storefront/primitives/pagination.mjs.map +1 -0
  446. package/dist/client/storefront/primitives/quick-links.d.ts +11 -0
  447. package/dist/client/storefront/primitives/quick-links.d.ts.map +1 -0
  448. package/dist/client/storefront/primitives/quick-links.mjs +17 -0
  449. package/dist/client/storefront/primitives/quick-links.mjs.map +1 -0
  450. package/dist/client/storefront/primitives/select.d.ts +16 -0
  451. package/dist/client/storefront/primitives/select.d.ts.map +1 -0
  452. package/dist/client/storefront/primitives/select.mjs +35 -0
  453. package/dist/client/storefront/primitives/select.mjs.map +1 -0
  454. package/dist/client/storefront/primitives/text-link.d.ts +7 -0
  455. package/dist/client/storefront/primitives/text-link.d.ts.map +1 -0
  456. package/dist/client/storefront/primitives/text-link.mjs +10 -0
  457. package/dist/client/storefront/primitives/text-link.mjs.map +1 -0
  458. package/dist/client/storefront/product/color-swatch.d.ts +10 -0
  459. package/dist/client/storefront/product/color-swatch.d.ts.map +1 -0
  460. package/dist/client/storefront/product/color-swatch.mjs +32 -0
  461. package/dist/client/storefront/product/color-swatch.mjs.map +1 -0
  462. package/dist/client/storefront/product/index.d.ts +5 -0
  463. package/dist/client/storefront/product/index.d.ts.map +1 -0
  464. package/dist/client/storefront/product/index.mjs +11 -0
  465. package/dist/client/storefront/product/index.mjs.map +1 -0
  466. package/dist/client/storefront/product/material-selector.d.ts +15 -0
  467. package/dist/client/storefront/product/material-selector.d.ts.map +1 -0
  468. package/dist/client/storefront/product/material-selector.mjs +35 -0
  469. package/dist/client/storefront/product/material-selector.mjs.map +1 -0
  470. package/dist/client/storefront/product/product-usp.d.ts +7 -0
  471. package/dist/client/storefront/product/product-usp.d.ts.map +1 -0
  472. package/dist/client/storefront/product/product-usp.mjs +14 -0
  473. package/dist/client/storefront/product/product-usp.mjs.map +1 -0
  474. package/dist/client/storefront/product/quantity-picker.d.ts +10 -0
  475. package/dist/client/storefront/product/quantity-picker.d.ts.map +1 -0
  476. package/dist/client/storefront/product/quantity-picker.mjs +56 -0
  477. package/dist/client/storefront/product/quantity-picker.mjs.map +1 -0
  478. package/dist/client/storefront/types.d.ts +284 -0
  479. package/dist/client/storefront/types.d.ts.map +1 -0
  480. package/dist/client/storefront/types.mjs +20 -0
  481. package/dist/client/storefront/types.mjs.map +1 -0
  482. package/dist/client/theme/apply.d.ts +17 -0
  483. package/dist/client/theme/apply.d.ts.map +1 -0
  484. package/dist/client/theme/apply.mjs +133 -0
  485. package/dist/client/theme/apply.mjs.map +1 -0
  486. package/dist/client/theme/cli.d.ts +2 -0
  487. package/dist/client/theme/cli.d.ts.map +1 -0
  488. package/dist/client/theme/cli.mjs +453 -0
  489. package/dist/client/theme/cli.mjs.map +1 -0
  490. package/dist/client/theme/codec.d.ts +28 -0
  491. package/dist/client/theme/codec.d.ts.map +1 -0
  492. package/dist/client/theme/codec.mjs +88 -0
  493. package/dist/client/theme/codec.mjs.map +1 -0
  494. package/dist/client/theme/defaults.d.ts +64 -0
  495. package/dist/client/theme/defaults.d.ts.map +1 -0
  496. package/dist/client/theme/defaults.mjs +158 -0
  497. package/dist/client/theme/defaults.mjs.map +1 -0
  498. package/dist/client/theme/index.d.ts +8 -0
  499. package/dist/client/theme/index.d.ts.map +1 -0
  500. package/dist/client/theme/index.mjs +20 -0
  501. package/dist/client/theme/index.mjs.map +1 -0
  502. package/dist/client/theme/scan.d.ts +16 -0
  503. package/dist/client/theme/scan.d.ts.map +1 -0
  504. package/dist/client/theme/scan.mjs +25 -0
  505. package/dist/client/theme/scan.mjs.map +1 -0
  506. package/dist/client/ui/accordion.d.ts +8 -0
  507. package/dist/client/ui/accordion.d.ts.map +1 -0
  508. package/dist/client/ui/accordion.mjs +66 -0
  509. package/dist/client/ui/accordion.mjs.map +1 -0
  510. package/dist/client/ui/breadcrumb.d.ts +12 -0
  511. package/dist/client/ui/breadcrumb.d.ts.map +1 -0
  512. package/dist/client/ui/breadcrumb.mjs +104 -0
  513. package/dist/client/ui/breadcrumb.mjs.map +1 -0
  514. package/dist/client/ui/button.d.ts +11 -0
  515. package/dist/client/ui/button.d.ts.map +1 -0
  516. package/dist/client/ui/button.mjs +57 -0
  517. package/dist/client/ui/button.mjs.map +1 -0
  518. package/dist/client/ui/card.d.ts +10 -0
  519. package/dist/client/ui/card.d.ts.map +1 -0
  520. package/dist/client/ui/card.mjs +91 -0
  521. package/dist/client/ui/card.mjs.map +1 -0
  522. package/dist/client/ui/carousel.d.ts +20 -0
  523. package/dist/client/ui/carousel.d.ts.map +1 -0
  524. package/dist/client/ui/carousel.mjs +202 -0
  525. package/dist/client/ui/carousel.mjs.map +1 -0
  526. package/dist/client/ui/checkbox.d.ts +5 -0
  527. package/dist/client/ui/checkbox.d.ts.map +1 -0
  528. package/dist/client/ui/checkbox.mjs +34 -0
  529. package/dist/client/ui/checkbox.mjs.map +1 -0
  530. package/dist/client/ui/collapsible.d.ts +6 -0
  531. package/dist/client/ui/collapsible.d.ts.map +1 -0
  532. package/dist/client/ui/collapsible.mjs +36 -0
  533. package/dist/client/ui/collapsible.mjs.map +1 -0
  534. package/dist/client/ui/input.d.ts +4 -0
  535. package/dist/client/ui/input.d.ts.map +1 -0
  536. package/dist/client/ui/input.mjs +22 -0
  537. package/dist/client/ui/input.mjs.map +1 -0
  538. package/dist/client/ui/label.d.ts +5 -0
  539. package/dist/client/ui/label.d.ts.map +1 -0
  540. package/dist/client/ui/label.mjs +23 -0
  541. package/dist/client/ui/label.mjs.map +1 -0
  542. package/dist/client/ui/mid-truncate.d.ts +27 -0
  543. package/dist/client/ui/mid-truncate.d.ts.map +1 -0
  544. package/dist/client/ui/mid-truncate.mjs +25 -0
  545. package/dist/client/ui/mid-truncate.mjs.map +1 -0
  546. package/dist/client/ui/navigation-menu.d.ts +15 -0
  547. package/dist/client/ui/navigation-menu.d.ts.map +1 -0
  548. package/dist/client/ui/navigation-menu.mjs +172 -0
  549. package/dist/client/ui/navigation-menu.mjs.map +1 -0
  550. package/dist/client/ui/pagination.d.ts +14 -0
  551. package/dist/client/ui/pagination.d.ts.map +1 -0
  552. package/dist/client/ui/pagination.mjs +124 -0
  553. package/dist/client/ui/pagination.mjs.map +1 -0
  554. package/dist/client/ui/popover.d.ts +11 -0
  555. package/dist/client/ui/popover.d.ts.map +1 -0
  556. package/dist/client/ui/popover.mjs +82 -0
  557. package/dist/client/ui/popover.mjs.map +1 -0
  558. package/dist/client/ui/select.d.ts +16 -0
  559. package/dist/client/ui/select.d.ts.map +1 -0
  560. package/dist/client/ui/select.mjs +183 -0
  561. package/dist/client/ui/select.mjs.map +1 -0
  562. package/dist/client/ui/separator.d.ts +5 -0
  563. package/dist/client/ui/separator.d.ts.map +1 -0
  564. package/dist/client/ui/separator.mjs +27 -0
  565. package/dist/client/ui/separator.mjs.map +1 -0
  566. package/dist/client/ui/sheet.d.ts +15 -0
  567. package/dist/client/ui/sheet.d.ts.map +1 -0
  568. package/dist/client/ui/sheet.mjs +130 -0
  569. package/dist/client/ui/sheet.mjs.map +1 -0
  570. package/dist/client/ui/toggle-group.d.ts +10 -0
  571. package/dist/client/ui/toggle-group.d.ts.map +1 -0
  572. package/dist/client/ui/toggle-group.mjs +69 -0
  573. package/dist/client/ui/toggle-group.mjs.map +1 -0
  574. package/dist/client/ui/toggle.d.ts +10 -0
  575. package/dist/client/ui/toggle.d.ts.map +1 -0
  576. package/dist/client/ui/toggle.mjs +44 -0
  577. package/dist/client/ui/toggle.mjs.map +1 -0
  578. package/dist/client/ui/utils.d.ts +3 -0
  579. package/dist/client/ui/utils.d.ts.map +1 -0
  580. package/dist/client/ui/utils.mjs +9 -0
  581. package/dist/client/ui/utils.mjs.map +1 -0
  582. package/dist/client/ui-interfaces/accordion.d.ts +8 -0
  583. package/dist/client/ui-interfaces/accordion.d.ts.map +1 -0
  584. package/dist/client/ui-interfaces/accordion.mjs +72 -0
  585. package/dist/client/ui-interfaces/accordion.mjs.map +1 -0
  586. package/dist/client/ui-interfaces/breadcrumb.d.ts +12 -0
  587. package/dist/client/ui-interfaces/breadcrumb.d.ts.map +1 -0
  588. package/dist/client/ui-interfaces/breadcrumb.mjs +97 -0
  589. package/dist/client/ui-interfaces/breadcrumb.mjs.map +1 -0
  590. package/dist/client/ui-interfaces/button.d.ts +11 -0
  591. package/dist/client/ui-interfaces/button.d.ts.map +1 -0
  592. package/dist/client/ui-interfaces/button.mjs +57 -0
  593. package/dist/client/ui-interfaces/button.mjs.map +1 -0
  594. package/dist/client/ui-interfaces/card.d.ts +10 -0
  595. package/dist/client/ui-interfaces/card.d.ts.map +1 -0
  596. package/dist/client/ui-interfaces/card.mjs +78 -0
  597. package/dist/client/ui-interfaces/card.mjs.map +1 -0
  598. package/dist/client/ui-interfaces/carousel.d.ts +20 -0
  599. package/dist/client/ui-interfaces/carousel.d.ts.map +1 -0
  600. package/dist/client/ui-interfaces/carousel.mjs +188 -0
  601. package/dist/client/ui-interfaces/carousel.mjs.map +1 -0
  602. package/dist/client/ui-interfaces/checkbox.d.ts +5 -0
  603. package/dist/client/ui-interfaces/checkbox.d.ts.map +1 -0
  604. package/dist/client/ui-interfaces/checkbox.mjs +30 -0
  605. package/dist/client/ui-interfaces/checkbox.mjs.map +1 -0
  606. package/dist/client/ui-interfaces/collapsible.d.ts +7 -0
  607. package/dist/client/ui-interfaces/collapsible.d.ts.map +1 -0
  608. package/dist/client/ui-interfaces/collapsible.mjs +42 -0
  609. package/dist/client/ui-interfaces/collapsible.mjs.map +1 -0
  610. package/dist/client/ui-interfaces/index.d.ts +18 -0
  611. package/dist/client/ui-interfaces/index.d.ts.map +1 -0
  612. package/dist/client/ui-interfaces/index.mjs +18 -0
  613. package/dist/client/ui-interfaces/index.mjs.map +1 -0
  614. package/dist/client/ui-interfaces/input.d.ts +7 -0
  615. package/dist/client/ui-interfaces/input.d.ts.map +1 -0
  616. package/dist/client/ui-interfaces/input.mjs +39 -0
  617. package/dist/client/ui-interfaces/input.mjs.map +1 -0
  618. package/dist/client/ui-interfaces/label.d.ts +5 -0
  619. package/dist/client/ui-interfaces/label.d.ts.map +1 -0
  620. package/dist/client/ui-interfaces/label.mjs +23 -0
  621. package/dist/client/ui-interfaces/label.mjs.map +1 -0
  622. package/dist/client/ui-interfaces/navigation-menu.d.ts +15 -0
  623. package/dist/client/ui-interfaces/navigation-menu.d.ts.map +1 -0
  624. package/dist/client/ui-interfaces/navigation-menu.mjs +163 -0
  625. package/dist/client/ui-interfaces/navigation-menu.mjs.map +1 -0
  626. package/dist/client/ui-interfaces/pagination.d.ts +14 -0
  627. package/dist/client/ui-interfaces/pagination.d.ts.map +1 -0
  628. package/dist/client/ui-interfaces/pagination.mjs +103 -0
  629. package/dist/client/ui-interfaces/pagination.mjs.map +1 -0
  630. package/dist/client/ui-interfaces/popover.d.ts +8 -0
  631. package/dist/client/ui-interfaces/popover.d.ts.map +1 -0
  632. package/dist/client/ui-interfaces/popover.mjs +50 -0
  633. package/dist/client/ui-interfaces/popover.mjs.map +1 -0
  634. package/dist/client/ui-interfaces/select.d.ts +16 -0
  635. package/dist/client/ui-interfaces/select.d.ts.map +1 -0
  636. package/dist/client/ui-interfaces/select.mjs +159 -0
  637. package/dist/client/ui-interfaces/select.mjs.map +1 -0
  638. package/dist/client/ui-interfaces/separator.d.ts +5 -0
  639. package/dist/client/ui-interfaces/separator.d.ts.map +1 -0
  640. package/dist/client/ui-interfaces/separator.mjs +28 -0
  641. package/dist/client/ui-interfaces/separator.mjs.map +1 -0
  642. package/dist/client/ui-interfaces/sheet.d.ts +14 -0
  643. package/dist/client/ui-interfaces/sheet.d.ts.map +1 -0
  644. package/dist/client/ui-interfaces/sheet.mjs +140 -0
  645. package/dist/client/ui-interfaces/sheet.mjs.map +1 -0
  646. package/dist/client/ui-interfaces/toggle-group.d.ts +10 -0
  647. package/dist/client/ui-interfaces/toggle-group.d.ts.map +1 -0
  648. package/dist/client/ui-interfaces/toggle-group.mjs +67 -0
  649. package/dist/client/ui-interfaces/toggle-group.mjs.map +1 -0
  650. package/dist/client/ui-interfaces/toggle.d.ts +10 -0
  651. package/dist/client/ui-interfaces/toggle.d.ts.map +1 -0
  652. package/dist/client/ui-interfaces/toggle.mjs +45 -0
  653. package/dist/client/ui-interfaces/toggle.mjs.map +1 -0
  654. package/dist/client/ui-resolver/accordion.d.ts +11 -0
  655. package/dist/client/ui-resolver/accordion.d.ts.map +1 -0
  656. package/dist/client/ui-resolver/accordion.mjs +35 -0
  657. package/dist/client/ui-resolver/accordion.mjs.map +1 -0
  658. package/dist/client/ui-resolver/breadcrumb.d.ts +14 -0
  659. package/dist/client/ui-resolver/breadcrumb.d.ts.map +1 -0
  660. package/dist/client/ui-resolver/breadcrumb.mjs +53 -0
  661. package/dist/client/ui-resolver/breadcrumb.mjs.map +1 -0
  662. package/dist/client/ui-resolver/button.d.ts +12 -0
  663. package/dist/client/ui-resolver/button.d.ts.map +1 -0
  664. package/dist/client/ui-resolver/button.mjs +25 -0
  665. package/dist/client/ui-resolver/button.mjs.map +1 -0
  666. package/dist/client/ui-resolver/card.d.ts +14 -0
  667. package/dist/client/ui-resolver/card.d.ts.map +1 -0
  668. package/dist/client/ui-resolver/card.mjs +53 -0
  669. package/dist/client/ui-resolver/card.mjs.map +1 -0
  670. package/dist/client/ui-resolver/carousel.d.ts +13 -0
  671. package/dist/client/ui-resolver/carousel.d.ts.map +1 -0
  672. package/dist/client/ui-resolver/carousel.mjs +41 -0
  673. package/dist/client/ui-resolver/carousel.mjs.map +1 -0
  674. package/dist/client/ui-resolver/checkbox.d.ts +8 -0
  675. package/dist/client/ui-resolver/checkbox.d.ts.map +1 -0
  676. package/dist/client/ui-resolver/checkbox.mjs +17 -0
  677. package/dist/client/ui-resolver/checkbox.mjs.map +1 -0
  678. package/dist/client/ui-resolver/collapsible.d.ts +10 -0
  679. package/dist/client/ui-resolver/collapsible.d.ts.map +1 -0
  680. package/dist/client/ui-resolver/collapsible.mjs +29 -0
  681. package/dist/client/ui-resolver/collapsible.mjs.map +1 -0
  682. package/dist/client/ui-resolver/context.d.ts +10 -0
  683. package/dist/client/ui-resolver/context.d.ts.map +1 -0
  684. package/dist/client/ui-resolver/context.mjs +28 -0
  685. package/dist/client/ui-resolver/context.mjs.map +1 -0
  686. package/dist/client/ui-resolver/index.d.ts +19 -0
  687. package/dist/client/ui-resolver/index.d.ts.map +1 -0
  688. package/dist/client/ui-resolver/index.mjs +156 -0
  689. package/dist/client/ui-resolver/index.mjs.map +1 -0
  690. package/dist/client/ui-resolver/input.d.ts +8 -0
  691. package/dist/client/ui-resolver/input.d.ts.map +1 -0
  692. package/dist/client/ui-resolver/input.mjs +17 -0
  693. package/dist/client/ui-resolver/input.mjs.map +1 -0
  694. package/dist/client/ui-resolver/label.d.ts +8 -0
  695. package/dist/client/ui-resolver/label.d.ts.map +1 -0
  696. package/dist/client/ui-resolver/label.mjs +17 -0
  697. package/dist/client/ui-resolver/label.mjs.map +1 -0
  698. package/dist/client/ui-resolver/navigation-menu.d.ts +16 -0
  699. package/dist/client/ui-resolver/navigation-menu.d.ts.map +1 -0
  700. package/dist/client/ui-resolver/navigation-menu.mjs +64 -0
  701. package/dist/client/ui-resolver/navigation-menu.mjs.map +1 -0
  702. package/dist/client/ui-resolver/pagination.d.ts +14 -0
  703. package/dist/client/ui-resolver/pagination.d.ts.map +1 -0
  704. package/dist/client/ui-resolver/pagination.mjs +53 -0
  705. package/dist/client/ui-resolver/pagination.mjs.map +1 -0
  706. package/dist/client/ui-resolver/popover.d.ts +11 -0
  707. package/dist/client/ui-resolver/popover.d.ts.map +1 -0
  708. package/dist/client/ui-resolver/popover.mjs +35 -0
  709. package/dist/client/ui-resolver/popover.mjs.map +1 -0
  710. package/dist/client/ui-resolver/select.d.ts +15 -0
  711. package/dist/client/ui-resolver/select.d.ts.map +1 -0
  712. package/dist/client/ui-resolver/select.mjs +59 -0
  713. package/dist/client/ui-resolver/select.mjs.map +1 -0
  714. package/dist/client/ui-resolver/separator.d.ts +8 -0
  715. package/dist/client/ui-resolver/separator.d.ts.map +1 -0
  716. package/dist/client/ui-resolver/separator.mjs +17 -0
  717. package/dist/client/ui-resolver/separator.mjs.map +1 -0
  718. package/dist/client/ui-resolver/sheet.d.ts +15 -0
  719. package/dist/client/ui-resolver/sheet.d.ts.map +1 -0
  720. package/dist/client/ui-resolver/sheet.mjs +59 -0
  721. package/dist/client/ui-resolver/sheet.mjs.map +1 -0
  722. package/dist/client/ui-resolver/toggle-group.d.ts +9 -0
  723. package/dist/client/ui-resolver/toggle-group.d.ts.map +1 -0
  724. package/dist/client/ui-resolver/toggle-group.mjs +23 -0
  725. package/dist/client/ui-resolver/toggle-group.mjs.map +1 -0
  726. package/dist/client/ui-resolver/toggle.d.ts +12 -0
  727. package/dist/client/ui-resolver/toggle.d.ts.map +1 -0
  728. package/dist/client/ui-resolver/toggle.mjs +25 -0
  729. package/dist/client/ui-resolver/toggle.mjs.map +1 -0
  730. package/dist/client/user/actions/createResetPasswordLinkAction.d.ts +14 -0
  731. package/dist/client/user/actions/createResetPasswordLinkAction.d.ts.map +1 -0
  732. package/dist/client/user/actions/createResetPasswordLinkAction.mjs +30 -0
  733. package/dist/client/user/actions/createResetPasswordLinkAction.mjs.map +1 -0
  734. package/dist/client/user/actions/getUserAction.d.ts +3 -0
  735. package/dist/client/user/actions/getUserAction.d.ts.map +1 -0
  736. package/dist/client/user/actions/getUserAction.mjs +19 -0
  737. package/dist/client/user/actions/getUserAction.mjs.map +1 -0
  738. package/dist/client/user/actions/logInUserAction.d.ts +15 -0
  739. package/dist/client/user/actions/logInUserAction.d.ts.map +1 -0
  740. package/dist/client/user/actions/logInUserAction.mjs +34 -0
  741. package/dist/client/user/actions/logInUserAction.mjs.map +1 -0
  742. package/dist/client/user/actions/logoutUserAction.d.ts +2 -0
  743. package/dist/client/user/actions/logoutUserAction.d.ts.map +1 -0
  744. package/dist/client/user/actions/logoutUserAction.mjs +10 -0
  745. package/dist/client/user/actions/logoutUserAction.mjs.map +1 -0
  746. package/dist/client/user/actions/registerOrganisationAction.d.ts +9 -0
  747. package/dist/client/user/actions/registerOrganisationAction.d.ts.map +1 -0
  748. package/dist/client/user/actions/registerOrganisationAction.mjs +18 -0
  749. package/dist/client/user/actions/registerOrganisationAction.mjs.map +1 -0
  750. package/dist/client/user/actions/registerUserAction.d.ts +18 -0
  751. package/dist/client/user/actions/registerUserAction.d.ts.map +1 -0
  752. package/dist/client/user/actions/registerUserAction.mjs +42 -0
  753. package/dist/client/user/actions/registerUserAction.mjs.map +1 -0
  754. package/dist/client/user/actions/registerUserWithoutRedirectAction.d.ts +41 -0
  755. package/dist/client/user/actions/registerUserWithoutRedirectAction.d.ts.map +1 -0
  756. package/dist/client/user/actions/registerUserWithoutRedirectAction.mjs +58 -0
  757. package/dist/client/user/actions/registerUserWithoutRedirectAction.mjs.map +1 -0
  758. package/dist/client/user/actions/updatePasswordAction.d.ts +21 -0
  759. package/dist/client/user/actions/updatePasswordAction.d.ts.map +1 -0
  760. package/dist/client/user/actions/updatePasswordAction.mjs +37 -0
  761. package/dist/client/user/actions/updatePasswordAction.mjs.map +1 -0
  762. package/dist/client/user/api/userRoute.d.ts +7 -0
  763. package/dist/client/user/api/userRoute.d.ts.map +1 -0
  764. package/dist/client/user/api/userRoute.mjs +65 -0
  765. package/dist/client/user/api/userRoute.mjs.map +1 -0
  766. package/dist/client/user/clients/enad.d.ts +4 -0
  767. package/dist/client/user/clients/enad.d.ts.map +1 -0
  768. package/dist/client/user/clients/enad.mjs +19 -0
  769. package/dist/client/user/clients/enad.mjs.map +1 -0
  770. package/dist/client/user/components/login-form.d.ts +23 -0
  771. package/dist/client/user/components/login-form.d.ts.map +1 -0
  772. package/dist/client/user/components/login-form.mjs +117 -0
  773. package/dist/client/user/components/login-form.mjs.map +1 -0
  774. package/dist/client/user/components/reset-password-form.d.ts +20 -0
  775. package/dist/client/user/components/reset-password-form.d.ts.map +1 -0
  776. package/dist/client/user/components/reset-password-form.mjs +93 -0
  777. package/dist/client/user/components/reset-password-form.mjs.map +1 -0
  778. package/dist/client/user/components/sign-out.d.ts +8 -0
  779. package/dist/client/user/components/sign-out.d.ts.map +1 -0
  780. package/dist/client/user/components/sign-out.mjs +26 -0
  781. package/dist/client/user/components/sign-out.mjs.map +1 -0
  782. package/dist/client/user/components/signup-form.d.ts +27 -0
  783. package/dist/client/user/components/signup-form.d.ts.map +1 -0
  784. package/dist/client/user/components/signup-form.mjs +188 -0
  785. package/dist/client/user/components/signup-form.mjs.map +1 -0
  786. package/dist/client/user/components/signup-organisation-form.d.ts +55 -0
  787. package/dist/client/user/components/signup-organisation-form.d.ts.map +1 -0
  788. package/dist/client/user/components/signup-organisation-form.mjs +864 -0
  789. package/dist/client/user/components/signup-organisation-form.mjs.map +1 -0
  790. package/dist/client/user/components/update-password-form.d.ts +17 -0
  791. package/dist/client/user/components/update-password-form.d.ts.map +1 -0
  792. package/dist/client/user/components/update-password-form.mjs +60 -0
  793. package/dist/client/user/components/update-password-form.mjs.map +1 -0
  794. package/dist/client/user/hooks/index.d.ts +2 -0
  795. package/dist/client/user/hooks/index.d.ts.map +1 -0
  796. package/dist/client/user/hooks/index.mjs +2 -0
  797. package/dist/client/user/hooks/index.mjs.map +1 -0
  798. package/dist/client/user/hooks/useUser.d.ts +12 -0
  799. package/dist/client/user/hooks/useUser.d.ts.map +1 -0
  800. package/dist/client/user/hooks/useUser.mjs +32 -0
  801. package/dist/client/user/hooks/useUser.mjs.map +1 -0
  802. package/dist/client/user/index.d.ts +9 -0
  803. package/dist/client/user/index.d.ts.map +1 -0
  804. package/dist/client/user/index.mjs +17 -0
  805. package/dist/client/user/index.mjs.map +1 -0
  806. package/dist/client/user/types/user.d.ts +201 -0
  807. package/dist/client/user/types/user.d.ts.map +1 -0
  808. package/dist/client/user/types/user.mjs +1 -0
  809. package/dist/client/user/types/user.mjs.map +1 -0
  810. package/dist/client/user/utils/userCookieService.d.ts +19 -0
  811. package/dist/client/user/utils/userCookieService.d.ts.map +1 -0
  812. package/dist/client/user/utils/userCookieService.mjs +51 -0
  813. package/dist/client/user/utils/userCookieService.mjs.map +1 -0
  814. package/dist/client/wishlist/actions/addItemsToWishlistAction.d.ts +5 -0
  815. package/dist/client/wishlist/actions/addItemsToWishlistAction.d.ts.map +1 -0
  816. package/dist/client/wishlist/actions/addItemsToWishlistAction.mjs +20 -0
  817. package/dist/client/wishlist/actions/addItemsToWishlistAction.mjs.map +1 -0
  818. package/dist/client/wishlist/actions/createOrGetShareTokenAction.d.ts +3 -0
  819. package/dist/client/wishlist/actions/createOrGetShareTokenAction.d.ts.map +1 -0
  820. package/dist/client/wishlist/actions/createOrGetShareTokenAction.mjs +20 -0
  821. package/dist/client/wishlist/actions/createOrGetShareTokenAction.mjs.map +1 -0
  822. package/dist/client/wishlist/actions/createWishlistAction.d.ts +3 -0
  823. package/dist/client/wishlist/actions/createWishlistAction.d.ts.map +1 -0
  824. package/dist/client/wishlist/actions/createWishlistAction.mjs +16 -0
  825. package/dist/client/wishlist/actions/createWishlistAction.mjs.map +1 -0
  826. package/dist/client/wishlist/actions/deleteItemsFromWishlistAction.d.ts +5 -0
  827. package/dist/client/wishlist/actions/deleteItemsFromWishlistAction.d.ts.map +1 -0
  828. package/dist/client/wishlist/actions/deleteItemsFromWishlistAction.mjs +20 -0
  829. package/dist/client/wishlist/actions/deleteItemsFromWishlistAction.mjs.map +1 -0
  830. package/dist/client/wishlist/actions/deleteWishlistAction.d.ts +4 -0
  831. package/dist/client/wishlist/actions/deleteWishlistAction.d.ts.map +1 -0
  832. package/dist/client/wishlist/actions/deleteWishlistAction.mjs +16 -0
  833. package/dist/client/wishlist/actions/deleteWishlistAction.mjs.map +1 -0
  834. package/dist/client/wishlist/actions/getSharedWishlistAction.d.ts +3 -0
  835. package/dist/client/wishlist/actions/getSharedWishlistAction.d.ts.map +1 -0
  836. package/dist/client/wishlist/actions/getSharedWishlistAction.mjs +20 -0
  837. package/dist/client/wishlist/actions/getSharedWishlistAction.mjs.map +1 -0
  838. package/dist/client/wishlist/actions/getSpecificWishlistAction.d.ts +3 -0
  839. package/dist/client/wishlist/actions/getSpecificWishlistAction.d.ts.map +1 -0
  840. package/dist/client/wishlist/actions/getSpecificWishlistAction.mjs +20 -0
  841. package/dist/client/wishlist/actions/getSpecificWishlistAction.mjs.map +1 -0
  842. package/dist/client/wishlist/actions/getUserWishlists.d.ts +4 -0
  843. package/dist/client/wishlist/actions/getUserWishlists.d.ts.map +1 -0
  844. package/dist/client/wishlist/actions/getUserWishlists.mjs +25 -0
  845. package/dist/client/wishlist/actions/getUserWishlists.mjs.map +1 -0
  846. package/dist/client/wishlist/actions/revokeShareTokenAction.d.ts +4 -0
  847. package/dist/client/wishlist/actions/revokeShareTokenAction.d.ts.map +1 -0
  848. package/dist/client/wishlist/actions/revokeShareTokenAction.mjs +20 -0
  849. package/dist/client/wishlist/actions/revokeShareTokenAction.mjs.map +1 -0
  850. package/dist/client/wishlist/actions/updateWishlistAction.d.ts +3 -0
  851. package/dist/client/wishlist/actions/updateWishlistAction.d.ts.map +1 -0
  852. package/dist/client/wishlist/actions/updateWishlistAction.mjs +20 -0
  853. package/dist/client/wishlist/actions/updateWishlistAction.mjs.map +1 -0
  854. package/dist/client/wishlist/hooks/index.d.ts +2 -0
  855. package/dist/client/wishlist/hooks/index.d.ts.map +1 -0
  856. package/dist/client/wishlist/hooks/index.mjs +2 -0
  857. package/dist/client/wishlist/hooks/index.mjs.map +1 -0
  858. package/dist/client/wishlist/hooks/useWishlist.d.ts +95 -0
  859. package/dist/client/wishlist/hooks/useWishlist.d.ts.map +1 -0
  860. package/dist/client/wishlist/hooks/useWishlist.mjs +76 -0
  861. package/dist/client/wishlist/hooks/useWishlist.mjs.map +1 -0
  862. package/dist/client/wishlist/hooks/useWishlistActions.d.ts +44 -0
  863. package/dist/client/wishlist/hooks/useWishlistActions.d.ts.map +1 -0
  864. package/dist/client/wishlist/hooks/useWishlistActions.mjs +101 -0
  865. package/dist/client/wishlist/hooks/useWishlistActions.mjs.map +1 -0
  866. package/dist/client/wishlist/index.d.ts +5 -0
  867. package/dist/client/wishlist/index.d.ts.map +1 -0
  868. package/dist/client/wishlist/index.mjs +9 -0
  869. package/dist/client/wishlist/index.mjs.map +1 -0
  870. package/dist/client/wishlist/wishlist-drawer.d.ts +17 -0
  871. package/dist/client/wishlist/wishlist-drawer.d.ts.map +1 -0
  872. package/dist/client/wishlist/wishlist-drawer.mjs +199 -0
  873. package/dist/client/wishlist/wishlist-drawer.mjs.map +1 -0
  874. package/dist/styles.css +2 -0
  875. package/package.json +54 -32
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/client/user/components/signup-organisation-form.tsx"],"sourcesContent":["\"use client\"\n\nimport {\n type OrganisationBillingAddress,\n type OrganisationShippingAddress,\n type RegisterOrganisationRequest,\n} from \"@enadhq/enad-ts-sdk\"\nimport { zodResolver } from \"@hookform/resolvers/zod\"\nimport React, { useEffect, useRef, useState } from \"react\"\nimport { type FieldError, type UseFormReturn, useForm } from \"react-hook-form\"\nimport * as z from \"zod\"\nimport { registerOrganisationAction } from \"../actions/registerOrganisationAction\"\nimport { registerUserWithoutRedirectAction } from \"../actions/registerUserWithoutRedirectAction\"\nimport { StorefrontButton } from \"../../storefront/primitives/button\"\n\nconst addressSchema = z.object({\n street_address: z.string().min(1, \"Street address is required\"),\n house_number: z.string().optional(),\n city: z.string().min(1, \"City is required\"),\n postal_code: z.string().min(1, \"Postal code is required\"),\n country: z.string().min(1, \"Country is required\"),\n state_province: z.string().optional(),\n phone: z.string().optional(),\n co_address: z.string().optional(),\n name: z.string().optional(),\n is_default: z.boolean().default(true),\n shipping_type: z.string().default(\"standard\"),\n})\n\nconst userSchema = z\n .object({\n first_name: z.string().trim().min(1, \"First name is required\"),\n last_name: z.string().trim().min(1, \"Last name is required\"),\n email: z.string().email(\"Invalid email address\").min(1, \"Email is required\"),\n password: z\n .string()\n .min(10, \"Password must be at least 10 characters\")\n .regex(/\\d/, \"Password must contain a number\"),\n confirmPassword: z.string(),\n phone_number: z.string().optional(),\n language: z.string().default(\"SV\"),\n country_code: z.string().default(\"SE\"),\n market: z.string().default(\"SE\"),\n store_group: z.string().default(\"default\"),\n allow_email_notifications: z.boolean().default(false),\n allow_phone_notifications: z.boolean().default(false),\n allow_postal_notifications: z.boolean().default(false),\n })\n .refine((data) => data.password === data.confirmPassword, {\n message: \"Passwords do not match\",\n path: [\"confirmPassword\"],\n })\n\nconst organizationSchema = z.object({\n name: z.string().min(1, \"Organization name is required\"),\n organisation_number: z.string().min(1, \"Organization number is required\"),\n tax_id_vat_number: z.string().min(1, \"Tax ID/VAT number is required\"),\n contact_name: z.string().optional(),\n email: z.string().email(\"Invalid email address\").min(1, \"Email is required\"),\n invoice_email: z.string().email(\"Invalid email address\").optional(),\n phone: z.string().optional(),\n external_ref: z.string().optional(),\n attribute: z.string().optional(),\n credit_check: z.boolean().default(false),\n custom_fields: z.record(z.string(), z.any()).optional(),\n billing_address: z.array(addressSchema).min(1),\n})\n\nconst formSchema = z.object({\n user: userSchema,\n organization: organizationSchema,\n shipping_address: z.array(addressSchema).min(1),\n use_billing_as_shipping: z.boolean().default(false),\n terms_accepted: z.boolean().refine((val) => val === true, {\n message: \"You must accept the terms and conditions\",\n }),\n})\n\ntype FormData = z.infer<typeof formSchema>\n\nconst INPUT_BASE_CLASSES = `\n w-full px-4 py-2.5\n border border-(--enad-border-color)\n rounded-[var(--enad-input-radius)]\n focus:ring-2 focus:ring-(--enad-button-bg)\n focus:border-(--enad-button-bg)\n outline-none transition\n bg-(--enad-background)\n text-(--enad-text-primary-color)\n`\nconst LABEL_CLASSES = `block text-sm font-medium text-(--enad-text-primary-color) mb-1`\nconst ERROR_CLASSES = `text-(--enad-error-color) text-sm mt-1`\nconst SECTION_TITLE_CLASSES = `text-xl font-semibold mb-4 pb-2 border-b border-(--enad-border-color)`\n\nfunction ariaError(error: FieldError | undefined, id: string): string | undefined {\n return error ? id : undefined\n}\n\ninterface FormFieldProps {\n label: string\n required?: boolean\n errorId?: string\n error?: FieldError\n children: React.ReactNode\n}\n\nfunction FormField({ label, required, errorId, error, children }: FormFieldProps) {\n return (\n <div>\n <label className={LABEL_CLASSES}>\n {label}{required && <span className=\"text-(--enad-error-color)\"> *</span>}\n </label>\n {children}\n {error && (\n <p id={errorId} role=\"alert\" className={ERROR_CLASSES}>{error.message}</p>\n )}\n </div>\n )\n}\n\ninterface ConfirmationViewProps {\n title: string\n message: string\n}\n\nfunction ConfirmationView({ title, message }: ConfirmationViewProps) {\n return (\n <main className=\"flex items-center justify-center px-4\">\n <div className=\"w-full max-w-md bg-(--enad-surface) shadow-lg p-8 border border-(--enad-border-color) rounded-(--enad-card-radius)\">\n <h2 className=\"text-2xl font-semibold mb-2 text-center text-(--enad-text-primary-color)\">\n {title}\n </h2>\n <p className=\"text-sm text-center text-(--enad-text-muted-color)\">\n {message}\n </p>\n </div>\n </main>\n )\n}\n\ninterface ContactNameFieldsProps {\n form: UseFormReturn<FormData>\n firstNameLabel: string\n lastNameLabel: string\n}\n\nfunction ContactNameFields({ form, firstNameLabel, lastNameLabel }: ContactNameFieldsProps) {\n const errors = form.formState.errors\n return (\n <div className=\"grid md:grid-cols-2 gap-4\">\n <FormField label={firstNameLabel} required errorId=\"user-firstName-error\" error={errors.user?.first_name}>\n <input\n {...form.register(\"user.first_name\")}\n aria-describedby={ariaError(errors.user?.first_name, \"user-firstName-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"John\"\n />\n </FormField>\n <FormField label={lastNameLabel} required errorId=\"user-lastName-error\" error={errors.user?.last_name}>\n <input\n {...form.register(\"user.last_name\")}\n aria-describedby={ariaError(errors.user?.last_name, \"user-lastName-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"Doe\"\n />\n </FormField>\n </div>\n )\n}\n\ninterface ContactEmailPhoneFieldsProps {\n form: UseFormReturn<FormData>\n emailLabel: string\n phoneLabel: string\n}\n\nfunction ContactEmailPhoneFields({ form, emailLabel, phoneLabel }: ContactEmailPhoneFieldsProps) {\n const errors = form.formState.errors\n return (\n <div className=\"grid md:grid-cols-2 gap-4\">\n <FormField label={emailLabel} required errorId=\"user-email-error\" error={errors.user?.email}>\n <input\n type=\"email\"\n {...form.register(\"user.email\")}\n aria-describedby={ariaError(errors.user?.email, \"user-email-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"you@example.com\"\n />\n </FormField>\n <FormField label={phoneLabel} errorId=\"user-phone-error\" error={errors.user?.phone_number}>\n <input\n type=\"tel\"\n {...form.register(\"user.phone_number\")}\n aria-describedby={ariaError(errors.user?.phone_number, \"user-phone-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"+46 123 456 789\"\n />\n </FormField>\n </div>\n )\n}\n\ninterface ContactPasswordFieldsProps {\n form: UseFormReturn<FormData>\n passwordLabel: string\n confirmPasswordLabel: string\n showPassword: boolean\n showConfirmPassword: boolean\n onTogglePassword: () => void\n onToggleConfirmPassword: () => void\n}\n\nfunction ContactPasswordFields({\n form, passwordLabel, confirmPasswordLabel,\n showPassword, showConfirmPassword,\n onTogglePassword, onToggleConfirmPassword,\n}: ContactPasswordFieldsProps) {\n const errors = form.formState.errors\n return (\n <div className=\"grid md:grid-cols-2 gap-4\">\n <FormField label={passwordLabel} required errorId=\"user-password-error\" error={errors.user?.password}>\n <div className=\"relative\">\n <input\n type={showPassword ? \"text\" : \"password\"}\n {...form.register(\"user.password\")}\n aria-describedby={ariaError(errors.user?.password, \"user-password-error\")}\n className={`${INPUT_BASE_CLASSES} pr-10`}\n placeholder=\"••••••••\"\n />\n <button\n type=\"button\"\n onClick={onTogglePassword}\n className=\"absolute right-2 top-1/2 -translate-y-1/2 text-(--enad-text-muted-color)\"\n >\n {showPassword ? \"Hide\" : \"Show\"}\n </button>\n </div>\n </FormField>\n <FormField label={confirmPasswordLabel} required errorId=\"user-confirmPassword-error\" error={errors.user?.confirmPassword}>\n <div className=\"relative\">\n <input\n type={showConfirmPassword ? \"text\" : \"password\"}\n {...form.register(\"user.confirmPassword\")}\n aria-describedby={ariaError(errors.user?.confirmPassword, \"user-confirmPassword-error\")}\n className={`${INPUT_BASE_CLASSES} pr-10`}\n placeholder=\"••••••••\"\n />\n <button\n type=\"button\"\n onClick={onToggleConfirmPassword}\n className=\"absolute right-2 top-1/2 -translate-y-1/2 text-(--enad-text-muted-color)\"\n >\n {showConfirmPassword ? \"Hide\" : \"Show\"}\n </button>\n </div>\n </FormField>\n </div>\n )\n}\n\ninterface CommunicationPrefsFieldsProps {\n form: UseFormReturn<FormData>\n communicationPreferences: string\n emailNotifications: string\n smsNotifications: string\n postalNotifications: string\n}\n\nfunction CommunicationPrefsFields({\n form, communicationPreferences, emailNotifications, smsNotifications, postalNotifications,\n}: CommunicationPrefsFieldsProps) {\n return (\n <div className=\"space-y-2\">\n <p className=\"text-sm font-medium text-(--enad-text-primary-color)\">\n {communicationPreferences}\n </p>\n <div className=\"flex items-center gap-2\">\n <input type=\"checkbox\" {...form.register(\"user.allow_email_notifications\")} className=\"h-4 w-4\" />\n <label className=\"text-sm text-(--enad-text-primary-color)\">{emailNotifications}</label>\n </div>\n <div className=\"flex items-center gap-2\">\n <input type=\"checkbox\" {...form.register(\"user.allow_phone_notifications\")} className=\"h-4 w-4\" />\n <label className=\"text-sm text-(--enad-text-primary-color)\">{smsNotifications}</label>\n </div>\n <div className=\"flex items-center gap-2\">\n <input type=\"checkbox\" {...form.register(\"user.allow_postal_notifications\")} className=\"h-4 w-4\" />\n <label className=\"text-sm text-(--enad-text-primary-color)\">{postalNotifications}</label>\n </div>\n </div>\n )\n}\n\ninterface ContactPersonSectionProps {\n form: UseFormReturn<FormData>\n labels: {\n sectionTitle: string\n firstName: string\n lastName: string\n email: string\n phone: string\n password: string\n confirmPassword: string\n communicationPreferences: string\n emailNotifications: string\n smsNotifications: string\n postalNotifications: string\n }\n showPassword: boolean\n showConfirmPassword: boolean\n onTogglePassword: () => void\n onToggleConfirmPassword: () => void\n}\n\nfunction ContactPersonSection({\n form, labels,\n showPassword, showConfirmPassword,\n onTogglePassword, onToggleConfirmPassword,\n}: ContactPersonSectionProps) {\n return (\n <div className=\"space-y-4\">\n <h3 className={SECTION_TITLE_CLASSES}>{labels.sectionTitle}</h3>\n <ContactNameFields form={form} firstNameLabel={labels.firstName} lastNameLabel={labels.lastName} />\n <ContactEmailPhoneFields form={form} emailLabel={labels.email} phoneLabel={labels.phone} />\n <ContactPasswordFields\n form={form}\n passwordLabel={labels.password}\n confirmPasswordLabel={labels.confirmPassword}\n showPassword={showPassword}\n showConfirmPassword={showConfirmPassword}\n onTogglePassword={onTogglePassword}\n onToggleConfirmPassword={onToggleConfirmPassword}\n />\n <CommunicationPrefsFields\n form={form}\n communicationPreferences={labels.communicationPreferences}\n emailNotifications={labels.emailNotifications}\n smsNotifications={labels.smsNotifications}\n postalNotifications={labels.postalNotifications}\n />\n </div>\n )\n}\n\ninterface CompanyInfoSectionProps {\n form: UseFormReturn<FormData>\n labels: {\n sectionTitle: string\n companyName: string\n orgNumber: string\n vatNumber: string\n companyEmail: string\n companyPhone: string\n invoiceEmail: string\n contactName: string\n externalRef: string\n }\n}\n\nfunction CompanyIdentityFields({ form, labels }: { form: UseFormReturn<FormData>; labels: { companyName: string; orgNumber: string; vatNumber: string } }) {\n const errors = form.formState.errors\n return (\n <>\n <FormField label={labels.companyName} required errorId=\"org-name-error\" error={errors.organization?.name}>\n <input\n {...form.register(\"organization.name\")}\n aria-describedby={ariaError(errors.organization?.name, \"org-name-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"Company Name\"\n />\n </FormField>\n <div className=\"grid md:grid-cols-2 gap-4\">\n <FormField label={labels.orgNumber} required errorId=\"org-number-error\" error={errors.organization?.organisation_number}>\n <input\n {...form.register(\"organization.organisation_number\")}\n aria-describedby={ariaError(errors.organization?.organisation_number, \"org-number-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"1234567890\"\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => {\n form.setValue(\"organization.organisation_number\", e.target.value.replace(/\\D/g, \"\"))\n }}\n />\n </FormField>\n <FormField label={labels.vatNumber} required errorId=\"org-vat-error\" error={errors.organization?.tax_id_vat_number}>\n <input\n {...form.register(\"organization.tax_id_vat_number\")}\n aria-describedby={ariaError(errors.organization?.tax_id_vat_number, \"org-vat-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"SE123456789001\"\n />\n </FormField>\n </div>\n </>\n )\n}\n\nfunction CompanyContactFields({ form, labels }: { form: UseFormReturn<FormData>; labels: { companyEmail: string; companyPhone: string; invoiceEmail: string } }) {\n const errors = form.formState.errors\n return (\n <>\n <div className=\"grid md:grid-cols-2 gap-4\">\n <FormField label={labels.companyEmail} required errorId=\"org-email-error\" error={errors.organization?.email}>\n <input\n type=\"email\"\n {...form.register(\"organization.email\")}\n aria-describedby={ariaError(errors.organization?.email, \"org-email-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"company@example.com\"\n />\n </FormField>\n <FormField label={labels.companyPhone} errorId=\"org-phone-error\" error={errors.organization?.phone}>\n <input\n type=\"tel\"\n {...form.register(\"organization.phone\")}\n aria-describedby={ariaError(errors.organization?.phone, \"org-phone-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"+46 123 456 789\"\n />\n </FormField>\n </div>\n <FormField label={labels.invoiceEmail} errorId=\"org-invoiceEmail-error\" error={errors.organization?.invoice_email}>\n <input\n type=\"email\"\n {...form.register(\"organization.invoice_email\")}\n aria-describedby={ariaError(errors.organization?.invoice_email, \"org-invoiceEmail-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"invoices@example.com\"\n />\n </FormField>\n </>\n )\n}\n\nfunction CompanyExtraFields({ form, labels }: { form: UseFormReturn<FormData>; labels: { contactName: string; externalRef: string } }) {\n const errors = form.formState.errors\n return (\n <div className=\"grid md:grid-cols-2 gap-4\">\n <FormField label={labels.contactName} errorId=\"org-contactName-error\" error={errors.organization?.contact_name}>\n <input\n {...form.register(\"organization.contact_name\")}\n aria-describedby={ariaError(errors.organization?.contact_name, \"org-contactName-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"Contact Person\"\n />\n </FormField>\n <FormField label={labels.externalRef} errorId=\"org-externalRef-error\" error={errors.organization?.external_ref}>\n <input\n {...form.register(\"organization.external_ref\")}\n aria-describedby={ariaError(errors.organization?.external_ref, \"org-externalRef-error\")}\n className={INPUT_BASE_CLASSES}\n placeholder=\"External Ref\"\n />\n </FormField>\n </div>\n )\n}\n\nfunction CompanyInfoSection({ form, labels }: CompanyInfoSectionProps) {\n return (\n <div className=\"space-y-4\">\n <h3 className={SECTION_TITLE_CLASSES}>{labels.sectionTitle}</h3>\n <CompanyIdentityFields form={form} labels={labels} />\n <CompanyContactFields form={form} labels={labels} />\n <CompanyExtraFields form={form} labels={labels} />\n </div>\n )\n}\n\ninterface AddressLabels {\n streetAddress: string\n houseNumber: string\n coAddress: string\n postalCode: string\n city: string\n country: string\n}\n\ninterface AddressFieldsProps {\n form: UseFormReturn<FormData>\n prefix: \"organization.billing_address.0\" | \"shipping_address.0\"\n idPrefix: string\n labels: AddressLabels\n}\n\nfunction AddressStreetRow({ form, prefix, idPrefix, labels, addressErrors }: AddressFieldsProps & { addressErrors: Record<string, FieldError> | undefined }) {\n return (\n <div className=\"grid md:grid-cols-2 gap-4\">\n <FormField label={labels.streetAddress} required errorId={`${idPrefix}-street-error`} error={addressErrors?.street_address}>\n <input\n {...form.register(`${prefix}.street_address`)}\n aria-describedby={ariaError(addressErrors?.street_address, `${idPrefix}-street-error`)}\n className={INPUT_BASE_CLASSES}\n placeholder=\"Street Address\"\n />\n </FormField>\n <div>\n <label className={LABEL_CLASSES}>{labels.houseNumber}</label>\n <input\n {...form.register(`${prefix}.house_number`)}\n className={INPUT_BASE_CLASSES}\n placeholder=\"123\"\n />\n </div>\n </div>\n )\n}\n\nfunction AddressPostalRow({ form, prefix, idPrefix, labels, addressErrors }: AddressFieldsProps & { addressErrors: Record<string, FieldError> | undefined }) {\n return (\n <div className=\"grid md:grid-cols-2 gap-4\">\n <div>\n <label className={LABEL_CLASSES}>{labels.coAddress}</label>\n <input\n {...form.register(`${prefix}.co_address`)}\n className={INPUT_BASE_CLASSES}\n placeholder=\"Co Address\"\n />\n </div>\n <FormField label={labels.postalCode} required errorId={`${idPrefix}-postal-error`} error={addressErrors?.postal_code}>\n <input\n {...form.register(`${prefix}.postal_code`)}\n aria-describedby={ariaError(addressErrors?.postal_code, `${idPrefix}-postal-error`)}\n className={INPUT_BASE_CLASSES}\n placeholder=\"12345\"\n />\n </FormField>\n </div>\n )\n}\n\nfunction AddressCityRow({ form, prefix, idPrefix, labels, addressErrors }: AddressFieldsProps & { addressErrors: Record<string, FieldError> | undefined }) {\n return (\n <div className=\"grid md:grid-cols-2 gap-4\">\n <FormField label={labels.city} required errorId={`${idPrefix}-city-error`} error={addressErrors?.city}>\n <input\n {...form.register(`${prefix}.city`)}\n aria-describedby={ariaError(addressErrors?.city, `${idPrefix}-city-error`)}\n className={INPUT_BASE_CLASSES}\n placeholder=\"City\"\n />\n </FormField>\n <FormField label={labels.country} required errorId={`${idPrefix}-country-error`} error={addressErrors?.country}>\n <select\n {...form.register(`${prefix}.country`)}\n aria-describedby={ariaError(addressErrors?.country, `${idPrefix}-country-error`)}\n className={INPUT_BASE_CLASSES}\n >\n <option value=\"SE\">Sweden</option>\n <option value=\"NO\">Norway</option>\n <option value=\"DK\">Denmark</option>\n <option value=\"FI\">Finland</option>\n </select>\n </FormField>\n </div>\n )\n}\n\nfunction AddressFields({ form, prefix, idPrefix, labels }: AddressFieldsProps) {\n const isBilling = prefix === \"organization.billing_address.0\"\n const addressErrors = isBilling\n ? form.formState.errors.organization?.billing_address?.[0]\n : form.formState.errors.shipping_address?.[0]\n const rowProps = { form, prefix, idPrefix, labels, addressErrors } as AddressFieldsProps & { addressErrors: Record<string, FieldError> | undefined }\n return (\n <>\n <AddressStreetRow {...rowProps} />\n <AddressPostalRow {...rowProps} />\n <AddressCityRow {...rowProps} />\n </>\n )\n}\n\nfunction BillingAddressSection({ form, labels }: { form: UseFormReturn<FormData>; labels: AddressLabels & { sectionTitle: string } }) {\n return (\n <div className=\"space-y-4\">\n <h3 className={SECTION_TITLE_CLASSES}>{labels.sectionTitle}</h3>\n <AddressFields\n form={form}\n prefix=\"organization.billing_address.0\"\n idPrefix=\"billing\"\n labels={labels}\n />\n </div>\n )\n}\n\nfunction ShippingAddressSection({ form, useBillingAsShipping, labels }: { form: UseFormReturn<FormData>; useBillingAsShipping: boolean; labels: AddressLabels & { sectionTitle: string; sameBillingAsShipping: string } }) {\n return (\n <div className=\"space-y-4\">\n <h3 className={SECTION_TITLE_CLASSES}>{labels.sectionTitle}</h3>\n <div className=\"flex items-center gap-2 mb-4\">\n <input\n type=\"checkbox\"\n {...form.register(\"use_billing_as_shipping\")}\n className=\"h-4 w-4\"\n />\n <label className=\"text-sm font-medium text-(--enad-text-primary-color)\">\n {labels.sameBillingAsShipping}\n </label>\n </div>\n {!useBillingAsShipping && (\n <AddressFields\n form={form}\n prefix=\"shipping_address.0\"\n idPrefix=\"shipping\"\n labels={labels}\n />\n )}\n </div>\n )\n}\n\nfunction useAutoFillEffects(form: UseFormReturn<FormData>) {\n const { watch, setValue } = form\n const useBillingAsShipping = watch(\"use_billing_as_shipping\")\n const billingAddress = watch(\"organization.billing_address.0\")\n const contactEmail = watch(\"user.email\")\n const contactPhone = watch(\"user.phone_number\")\n const orgNumber = watch(\"organization.organisation_number\")\n const invoiceCountry = watch(\"organization.billing_address.0.country\")\n\n const lastAutoOrgEmail = useRef<string | null>(null)\n const lastAutoInvoiceEmail = useRef<string | null>(null)\n const lastAutoOrgPhone = useRef<string | null>(null)\n const lastAutoVat = useRef<string | null>(null)\n\n useEffect(() => {\n if (useBillingAsShipping && billingAddress) {\n setValue(\"shipping_address.0\", billingAddress)\n }\n }, [useBillingAsShipping, billingAddress, setValue])\n\n useEffect(() => {\n if (!contactEmail) return\n const currentOrgEmail = form.getValues(\"organization.email\")\n if (!currentOrgEmail || currentOrgEmail === lastAutoOrgEmail.current) {\n setValue(\"organization.email\", contactEmail)\n lastAutoOrgEmail.current = contactEmail\n }\n const currentInvoiceEmail = form.getValues(\"organization.invoice_email\")\n if (!currentInvoiceEmail || currentInvoiceEmail === lastAutoInvoiceEmail.current) {\n setValue(\"organization.invoice_email\", contactEmail)\n lastAutoInvoiceEmail.current = contactEmail\n }\n }, [contactEmail, setValue, form])\n\n useEffect(() => {\n if (!contactPhone) return\n const currentOrgPhone = form.getValues(\"organization.phone\")\n if (!currentOrgPhone || currentOrgPhone === lastAutoOrgPhone.current) {\n setValue(\"organization.phone\", contactPhone)\n lastAutoOrgPhone.current = contactPhone\n }\n }, [contactPhone, setValue, form])\n\n useEffect(() => {\n const currentOrgNumber = form.getValues(\"organization.organisation_number\")\n const currentCountry = (form.getValues(\"organization.billing_address.0.country\") || \"\")\n .toString()\n .toUpperCase()\n const currentVat = form.getValues(\"organization.tax_id_vat_number\")\n if (!currentOrgNumber) {\n if (!currentVat || currentVat === lastAutoVat.current) {\n setValue(\"organization.tax_id_vat_number\", \"\")\n lastAutoVat.current = \"\"\n }\n return\n }\n const computedVat = currentCountry === \"SE\" ? `SE${currentOrgNumber}01` : currentOrgNumber\n if (!currentVat || currentVat === lastAutoVat.current) {\n setValue(\"organization.tax_id_vat_number\", computedVat)\n lastAutoVat.current = computedVat\n }\n }, [orgNumber, invoiceCountry, setValue, form])\n\n return { useBillingAsShipping }\n}\n\nconst DEFAULT_LABELS = {\n title: \"Create your organisation account\",\n subtitle: \"Sign up to get started\",\n submit: \"Sign Up\",\n signingUp: \"Signing up...\",\n contactPersonSection: \"Contact Person\",\n companyInfoSection: \"Company Information\",\n billingAddressSection: \"Billing Address\",\n shippingAddressSection: \"Shipping Address\",\n firstName: \"First Name\",\n lastName: \"Last Name\",\n email: \"Email\",\n phoneNumber: \"Phone Number\",\n password: \"Password\",\n confirmPassword: \"Confirm Password\",\n companyName: \"Company Name\",\n organisationNumber: \"Organisation Number\",\n taxIdVatNumber: \"Tax ID/VAT Number\",\n companyEmail: \"Company Email\",\n companyPhone: \"Company Phone\",\n invoiceEmail: \"Invoice Email\",\n contactName: \"Contact Name\",\n externalRef: \"External Reference\",\n streetAddress: \"Street Address\",\n houseNumber: \"House Number\",\n coAddress: \"Co Address\",\n postalCode: \"Postal Code\",\n city: \"City\",\n country: \"Country\",\n sameBillingAsShipping: \"Same address as billing address\",\n emailNotifications: \"Accept email notifications\",\n smsNotifications: \"Accept SMS notifications\",\n postalNotifications: \"Accept postal notifications\",\n communicationPreferences: \"Communication Preferences\",\n acceptTerms: \"I accept the\",\n termsLinkText: \"terms and conditions\",\n verifyEmailTitle: \"Verify your email\",\n verifyEmailMessage: \"Please check your email to verify your account.\",\n} as const\n\ntype ResolvedLabels = typeof DEFAULT_LABELS\n\nfunction resolveLabels(labels: NonNullable<SignupOrganisationFormProps[\"labels\"]>): ResolvedLabels {\n return { ...DEFAULT_LABELS, ...labels } as ResolvedLabels\n}\n\ninterface SignupOrganisationFormProps {\n labels?: {\n title?: string\n subtitle?: string\n submit?: string\n signingUp?: string\n contactPersonSection?: string\n companyInfoSection?: string\n billingAddressSection?: string\n shippingAddressSection?: string\n firstName?: string\n lastName?: string\n email?: string\n phoneNumber?: string\n password?: string\n confirmPassword?: string\n companyName?: string\n organisationNumber?: string\n taxIdVatNumber?: string\n companyEmail?: string\n companyPhone?: string\n invoiceEmail?: string\n contactName?: string\n externalRef?: string\n streetAddress?: string\n houseNumber?: string\n coAddress?: string\n postalCode?: string\n city?: string\n country?: string\n sameBillingAsShipping?: string\n emailNotifications?: string\n smsNotifications?: string\n postalNotifications?: string\n communicationPreferences?: string\n acceptTerms?: string\n termsLinkText?: string\n verifyEmailTitle?: string\n verifyEmailMessage?: string\n }\n extraLink?: {\n href: string\n text: string\n }\n successRedirect?: string\n organisationStatus?: \"active\" | \"pending\"\n defaultMarket?: string\n defaultLanguage?: string\n defaultCountry?: string\n defaultStoreGroup?: string\n}\n\nfunction buildDefaultValues(defaultLanguage: string, defaultMarket: string, defaultCountry: string, defaultStoreGroup: string): FormData {\n const emptyAddress = {\n street_address: \"\",\n house_number: \"\",\n city: \"\",\n postal_code: \"\",\n country: defaultCountry,\n state_province: \"\",\n phone: \"\",\n co_address: \"\",\n name: \"\",\n is_default: true as const,\n shipping_type: \"standard\",\n }\n return {\n user: {\n first_name: \"\",\n last_name: \"\",\n email: \"\",\n password: \"\",\n confirmPassword: \"\",\n phone_number: \"\",\n language: defaultLanguage,\n market: defaultMarket,\n country_code: defaultCountry,\n store_group: defaultStoreGroup,\n allow_email_notifications: false,\n allow_phone_notifications: false,\n allow_postal_notifications: false,\n },\n organization: {\n name: \"\",\n organisation_number: \"\",\n tax_id_vat_number: \"\",\n contact_name: \"\",\n email: \"\",\n invoice_email: \"\",\n phone: \"\",\n external_ref: \"\",\n attribute: \"\",\n credit_check: false,\n custom_fields: {},\n billing_address: [emptyAddress],\n },\n shipping_address: [{ ...emptyAddress }],\n use_billing_as_shipping: false,\n terms_accepted: false,\n }\n}\n\nasync function submitRegistration(\n values: FormData,\n organisationStatus: \"active\" | \"pending\",\n setErrors: (errors: Record<string, string[]>) => void,\n): Promise<boolean> {\n const userResult = await registerUserWithoutRedirectAction({\n firstName: values.user.first_name,\n lastName: values.user.last_name,\n email: values.user.email,\n password: values.user.password,\n phone_number: values.user.phone_number,\n language: values.user.language,\n country_code: values.user.country_code,\n market: values.user.market,\n store_group: values.user.store_group,\n allow_email_notifications: values.user.allow_email_notifications,\n allow_phone_notifications: values.user.allow_phone_notifications,\n allow_postal_notifications: values.user.allow_postal_notifications,\n status: organisationStatus,\n })\n if (userResult?.errors) {\n setErrors(userResult.errors)\n return false\n }\n const userId = userResult?.data.id\n if (!userId) {\n setErrors({ general: [\"User registration failed. Please try again.\"] })\n return false\n }\n const organisationData: RegisterOrganisationRequest = {\n billing_address: values.organization\n .billing_address as Partial<OrganisationBillingAddress>[],\n shipping_address: values.shipping_address as Partial<OrganisationShippingAddress>[],\n contact_name: values.organization.contact_name,\n credit_check: values.organization.credit_check,\n custom_fields: values.organization.custom_fields,\n email: values.organization.email.toLowerCase(),\n external_ref: values.organization.external_ref,\n invoice_email: values.organization.invoice_email?.toLowerCase(),\n name: values.organization.name,\n organisation_number: values.organization.organisation_number,\n phone: values.organization.phone,\n tax_id_vat_number: values.organization.tax_id_vat_number,\n user_id: userId,\n attribute_ids: values.organization.attribute ? [values.organization.attribute] : [],\n status: organisationStatus as \"active\" | \"pending\" | \"inactive\" | undefined,\n }\n const orgResult = await registerOrganisationAction(organisationData)\n if (orgResult?.error) {\n setErrors({ general: [orgResult.error] })\n return false\n }\n return true\n}\n\ninterface FormBodyProps {\n form: UseFormReturn<FormData>\n l: ResolvedLabels\n isPending: boolean\n showPassword: boolean\n showConfirmPassword: boolean\n setShowPassword: (v: boolean) => void\n setShowConfirmPassword: (v: boolean) => void\n useBillingAsShipping: boolean\n errors: Record<string, string[]>\n onSubmit: (values: FormData) => Promise<void>\n extraLink: { href: string; text: string }\n}\n\nfunction FormBody({\n form, l, isPending,\n showPassword, showConfirmPassword,\n setShowPassword, setShowConfirmPassword,\n useBillingAsShipping, errors, onSubmit, extraLink,\n}: FormBodyProps) {\n const addressLabels = {\n streetAddress: l.streetAddress,\n houseNumber: l.houseNumber,\n coAddress: l.coAddress,\n postalCode: l.postalCode,\n city: l.city,\n country: l.country,\n }\n return (\n <main className=\"flex items-center justify-center px-4 py-8\">\n <div className=\"w-full max-w-4xl bg-(--enad-surface) shadow-lg p-8 border border-(--enad-border-color) rounded-(--enad-card-radius)\">\n <h2 className=\"text-2xl font-semibold mb-2 text-center text-(--enad-text-primary-color)\">\n {l.title}\n </h2>\n <p className=\"text-sm mb-8 text-center text-(--enad-text-muted-color)\">{l.subtitle}</p>\n <form onSubmit={form.handleSubmit(onSubmit)} className=\"space-y-8\">\n <ContactPersonSection\n form={form}\n labels={{\n sectionTitle: l.contactPersonSection,\n firstName: l.firstName,\n lastName: l.lastName,\n email: l.email,\n phone: l.phoneNumber,\n password: l.password,\n confirmPassword: l.confirmPassword,\n communicationPreferences: l.communicationPreferences,\n emailNotifications: l.emailNotifications,\n smsNotifications: l.smsNotifications,\n postalNotifications: l.postalNotifications,\n }}\n showPassword={showPassword}\n showConfirmPassword={showConfirmPassword}\n onTogglePassword={() => setShowPassword(!showPassword)}\n onToggleConfirmPassword={() => setShowConfirmPassword(!showConfirmPassword)}\n />\n <CompanyInfoSection\n form={form}\n labels={{\n sectionTitle: l.companyInfoSection,\n companyName: l.companyName,\n orgNumber: l.organisationNumber,\n vatNumber: l.taxIdVatNumber,\n companyEmail: l.companyEmail,\n companyPhone: l.companyPhone,\n invoiceEmail: l.invoiceEmail,\n contactName: l.contactName,\n externalRef: l.externalRef,\n }}\n />\n <BillingAddressSection\n form={form}\n labels={{ sectionTitle: l.billingAddressSection, ...addressLabels }}\n />\n <ShippingAddressSection\n form={form}\n useBillingAsShipping={useBillingAsShipping}\n labels={{\n sectionTitle: l.shippingAddressSection,\n sameBillingAsShipping: l.sameBillingAsShipping,\n ...addressLabels,\n }}\n />\n <div className=\"flex items-center gap-2\">\n <input\n type=\"checkbox\"\n {...form.register(\"terms_accepted\")}\n aria-describedby={ariaError(form.formState.errors.terms_accepted, \"terms-error\")}\n className=\"h-4 w-4\"\n />\n <label className=\"text-sm text-(--enad-text-primary-color)\">\n {l.acceptTerms}{\" \"}\n <a\n href=\"/terms\"\n target=\"_blank\"\n className=\"text-(--enad-link-color) hover:text-(--enad-link-hover-color) hover:underline\"\n >\n {l.termsLinkText}\n </a>\n </label>\n </div>\n {form.formState.errors.terms_accepted && (\n <p id=\"terms-error\" role=\"alert\" className={ERROR_CLASSES}>{form.formState.errors.terms_accepted.message}</p>\n )}\n <StorefrontButton type=\"submit\" disabled={isPending} className=\"w-full\">\n {isPending ? l.signingUp : l.submit}\n </StorefrontButton>\n {errors.general && (\n <p role=\"alert\" className={ERROR_CLASSES + \" mt-2 text-center\"}>{errors.general.join(\", \")}</p>\n )}\n </form>\n {extraLink && (\n <p className=\"text-sm text-(--enad-text-muted-color) text-center mt-6\">\n <a\n href={extraLink.href}\n className=\"text-(--enad-link-color) hover:text-(--enad-link-hover-color) font-medium\"\n >\n {extraLink.text}\n </a>\n </p>\n )}\n </div>\n </main>\n )\n}\n\nexport const SignupOrganisationForm: React.FC<SignupOrganisationFormProps> = ({\n labels = {},\n extraLink = { href: \"/login\", text: \"Already have an account? Sign in\" },\n organisationStatus = \"active\",\n defaultMarket = \"SE\",\n defaultLanguage = \"SV\",\n defaultCountry = \"SE\",\n defaultStoreGroup = \"default\",\n}) => {\n const l = resolveLabels(labels)\n const [errors, setErrors] = useState<Record<string, string[]>>({})\n const [isPending, setIsPending] = useState(false)\n const [showPassword, setShowPassword] = useState(false)\n const [showConfirmPassword, setShowConfirmPassword] = useState(false)\n const [confirmMode, setConfirmMode] = useState(false)\n\n const form = useForm<FormData>({\n resolver: zodResolver(formSchema),\n defaultValues: buildDefaultValues(defaultLanguage, defaultMarket, defaultCountry, defaultStoreGroup),\n })\n\n const { useBillingAsShipping } = useAutoFillEffects(form)\n\n const onSubmit = async (values: FormData) => {\n setIsPending(true)\n setErrors({})\n try {\n const success = await submitRegistration(values, organisationStatus, setErrors)\n if (success) {\n setConfirmMode(true)\n }\n } catch (error) {\n console.error(\"Registration error:\", error)\n setErrors({ general: [\"Failed to register. Please try again.\"] })\n } finally {\n setIsPending(false)\n }\n }\n\n if (confirmMode) {\n return <ConfirmationView title={l.verifyEmailTitle} message={l.verifyEmailMessage} />\n }\n\n return (\n <FormBody\n form={form}\n l={l}\n isPending={isPending}\n showPassword={showPassword}\n showConfirmPassword={showConfirmPassword}\n setShowPassword={setShowPassword}\n setShowConfirmPassword={setShowConfirmPassword}\n useBillingAsShipping={useBillingAsShipping}\n errors={errors}\n onSubmit={onSubmit}\n extraLink={extraLink}\n />\n )\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ interface UpdatePasswordFormProps {
3
+ token: string;
4
+ labels?: {
5
+ title?: string;
6
+ subtitle?: string;
7
+ password?: string;
8
+ passwordPlaceholder?: string;
9
+ submit?: string;
10
+ updating?: string;
11
+ };
12
+ successRedirect?: string;
13
+ className?: string;
14
+ }
15
+ export declare const UpdatePasswordForm: React.FC<UpdatePasswordFormProps>;
16
+ export {};
17
+ //# sourceMappingURL=update-password-form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-password-form.d.ts","sourceRoot":"","sources":["../../../../src/client/user/components/update-password-form.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmC,MAAM,OAAO,CAAA;AAKvD,UAAU,uBAAuB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,mBAAmB,CAAC,EAAE,MAAM,CAAA;QAC5B,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAQD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA0EhE,CAAA"}
@@ -0,0 +1,60 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { useState } from "react";
4
+ import { updatePasswordAction } from "../actions/updatePasswordAction";
5
+ import { StorefrontInput } from "../../storefront/primitives/input";
6
+ import { StorefrontButton } from "../../storefront/primitives/button";
7
+ const UpdatePasswordForm = ({
8
+ token,
9
+ labels = {},
10
+ successRedirect = "/login",
11
+ className
12
+ }) => {
13
+ const {
14
+ title = "Create new password",
15
+ subtitle = "Enter a new password to update your account",
16
+ password: passwordLabel = "Password",
17
+ passwordPlaceholder = "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022",
18
+ submit = "Update Password",
19
+ updating = "Updating..."
20
+ } = labels;
21
+ const [errors, setErrors] = useState({});
22
+ const [isPending, setIsPending] = useState(false);
23
+ const handleSubmit = async (e) => {
24
+ e.preventDefault();
25
+ setIsPending(true);
26
+ setErrors({});
27
+ const formData = new FormData(e.currentTarget);
28
+ formData.set("token", token);
29
+ const res = await updatePasswordAction(formData, { redirectPath: successRedirect });
30
+ if (res?.errors) {
31
+ setErrors(res.errors);
32
+ }
33
+ setIsPending(false);
34
+ };
35
+ return /* @__PURE__ */ jsx("main", { className: `flex items-center justify-center px-4 font-enad ${className ?? ""}`, children: /* @__PURE__ */ jsxs("div", { className: "w-full max-w-md bg-(--enad-surface) border border-(--enad-border-color) shadow-lg rounded-(--enad-card-radius) p-8", children: [
36
+ /* @__PURE__ */ jsx("h2", { className: "text-2xl font-semibold text-(--enad-text-primary-color) mb-2 text-center", children: title }),
37
+ /* @__PURE__ */ jsx("p", { className: "text-(--enad-text-muted-color) text-sm text-center mb-8", children: subtitle }),
38
+ /* @__PURE__ */ jsxs("form", { onSubmit: handleSubmit, className: "space-y-5", children: [
39
+ /* @__PURE__ */ jsx(
40
+ StorefrontInput,
41
+ {
42
+ type: "password",
43
+ id: "password",
44
+ name: "password",
45
+ required: true,
46
+ label: passwordLabel,
47
+ placeholder: passwordPlaceholder,
48
+ error: errors.password?.join(", ")
49
+ }
50
+ ),
51
+ /* @__PURE__ */ jsx(StorefrontButton, { type: "submit", disabled: isPending, className: "w-full", children: isPending ? updating : submit }),
52
+ errors.general && /* @__PURE__ */ jsx("p", { role: "alert", className: "text-(--enad-error-color) text-sm mt-2 text-center", children: errors.general.join(", ") }),
53
+ errors.token && /* @__PURE__ */ jsx("p", { role: "alert", className: "text-(--enad-error-color) text-sm mt-2 text-center", children: errors.token.join(", ") })
54
+ ] })
55
+ ] }) });
56
+ };
57
+ export {
58
+ UpdatePasswordForm
59
+ };
60
+ //# sourceMappingURL=update-password-form.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/client/user/components/update-password-form.tsx"],"sourcesContent":["\"use client\"\n\nimport React, { useState, type FormEvent } from \"react\"\nimport { updatePasswordAction } from \"../actions/updatePasswordAction\"\nimport { StorefrontInput } from \"../../storefront/primitives/input\"\nimport { StorefrontButton } from \"../../storefront/primitives/button\"\n\ninterface UpdatePasswordFormProps {\n token: string\n labels?: {\n title?: string\n subtitle?: string\n password?: string\n passwordPlaceholder?: string\n submit?: string\n updating?: string\n }\n successRedirect?: string\n className?: string\n}\n\ninterface FormErrors {\n password?: string[]\n token?: string[]\n general?: string[]\n}\n\nexport const UpdatePasswordForm: React.FC<UpdatePasswordFormProps> = ({\n token,\n labels = {},\n successRedirect = \"/login\",\n className,\n}) => {\n const {\n title = \"Create new password\",\n subtitle = \"Enter a new password to update your account\",\n password: passwordLabel = \"Password\",\n passwordPlaceholder = \"••••••••\",\n submit = \"Update Password\",\n updating = \"Updating...\",\n } = labels\n\n const [errors, setErrors] = useState<FormErrors>({})\n const [isPending, setIsPending] = useState(false)\n\n const handleSubmit = async (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n setIsPending(true)\n setErrors({})\n\n const formData = new FormData(e.currentTarget)\n formData.set(\"token\", token)\n\n const res = await updatePasswordAction(formData, { redirectPath: successRedirect })\n\n if (res?.errors) {\n setErrors(res.errors)\n }\n\n setIsPending(false)\n }\n\n return (\n <main className={`flex items-center justify-center px-4 font-enad ${className ?? \"\"}`}>\n <div className=\"w-full max-w-md bg-(--enad-surface) border border-(--enad-border-color) shadow-lg rounded-(--enad-card-radius) p-8\">\n <h2 className=\"text-2xl font-semibold text-(--enad-text-primary-color) mb-2 text-center\">\n {title}\n </h2>\n <p className=\"text-(--enad-text-muted-color) text-sm text-center mb-8\">{subtitle}</p>\n\n <form onSubmit={handleSubmit} className=\"space-y-5\">\n <StorefrontInput\n type=\"password\"\n id=\"password\"\n name=\"password\"\n required\n label={passwordLabel}\n placeholder={passwordPlaceholder}\n error={errors.password?.join(\", \")}\n />\n\n {/* Submit */}\n <StorefrontButton type=\"submit\" disabled={isPending} className=\"w-full\">\n {isPending ? updating : submit}\n </StorefrontButton>\n\n {/* General errors */}\n {errors.general && (\n <p role=\"alert\" className=\"text-(--enad-error-color) text-sm mt-2 text-center\">\n {errors.general.join(\", \")}\n </p>\n )}\n {errors.token && (\n <p role=\"alert\" className=\"text-(--enad-error-color) text-sm mt-2 text-center\">\n {errors.token.join(\", \")}\n </p>\n )}\n </form>\n </div>\n </main>\n )\n}\n"],"mappings":";AAiEQ,cAKA,YALA;AA/DR,SAAgB,gBAAgC;AAChD,SAAS,4BAA4B;AACrC,SAAS,uBAAuB;AAChC,SAAS,wBAAwB;AAsB1B,MAAM,qBAAwD,CAAC;AAAA,EACpE;AAAA,EACA,SAAS,CAAC;AAAA,EACV,kBAAkB;AAAA,EAClB;AACF,MAAM;AACJ,QAAM;AAAA,IACJ,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,UAAU,gBAAgB;AAAA,IAC1B,sBAAsB;AAAA,IACtB,SAAS;AAAA,IACT,WAAW;AAAA,EACb,IAAI;AAEJ,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAqB,CAAC,CAAC;AACnD,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAEhD,QAAM,eAAe,OAAO,MAAkC;AAC5D,MAAE,eAAe;AACjB,iBAAa,IAAI;AACjB,cAAU,CAAC,CAAC;AAEZ,UAAM,WAAW,IAAI,SAAS,EAAE,aAAa;AAC7C,aAAS,IAAI,SAAS,KAAK;AAE3B,UAAM,MAAM,MAAM,qBAAqB,UAAU,EAAE,cAAc,gBAAgB,CAAC;AAElF,QAAI,KAAK,QAAQ;AACf,gBAAU,IAAI,MAAM;AAAA,IACtB;AAEA,iBAAa,KAAK;AAAA,EACpB;AAEA,SACE,oBAAC,UAAK,WAAW,mDAAmD,aAAa,EAAE,IACjF,+BAAC,SAAI,WAAU,sHACb;AAAA,wBAAC,QAAG,WAAU,4EACX,iBACH;AAAA,IACA,oBAAC,OAAE,WAAU,2DAA2D,oBAAS;AAAA,IAEjF,qBAAC,UAAK,UAAU,cAAc,WAAU,aACtC;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,MAAK;AAAA,UACL,IAAG;AAAA,UACH,MAAK;AAAA,UACL,UAAQ;AAAA,UACR,OAAO;AAAA,UACP,aAAa;AAAA,UACb,OAAO,OAAO,UAAU,KAAK,IAAI;AAAA;AAAA,MACnC;AAAA,MAGA,oBAAC,oBAAiB,MAAK,UAAS,UAAU,WAAW,WAAU,UAC5D,sBAAY,WAAW,QAC1B;AAAA,MAGC,OAAO,WACN,oBAAC,OAAE,MAAK,SAAQ,WAAU,sDACvB,iBAAO,QAAQ,KAAK,IAAI,GAC3B;AAAA,MAED,OAAO,SACN,oBAAC,OAAE,MAAK,SAAQ,WAAU,sDACvB,iBAAO,MAAM,KAAK,IAAI,GACzB;AAAA,OAEJ;AAAA,KACF,GACF;AAEJ;","names":[]}
@@ -0,0 +1,2 @@
1
+ export * from "./useUser";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/client/user/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from "./useUser";
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/client/user/hooks/index.ts"],"sourcesContent":["export * from \"./useUser\"\n"],"mappings":"AAAA,cAAc;","names":[]}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Hook to fetch the current authenticated user.
3
+ * Relies on /api/user which handles token refresh automatically.
4
+ */
5
+ export declare const useUser: () => {
6
+ user: import("..").EnadUser | null;
7
+ userIsSignedIn: boolean;
8
+ isLoading: boolean;
9
+ isFetching: boolean;
10
+ refreshUser: (options?: import("@tanstack/react-query").RefetchOptions) => Promise<import("@tanstack/react-query").QueryObserverResult<import("..").EnadUser, Error>>;
11
+ };
12
+ //# sourceMappingURL=useUser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUser.d.ts","sourceRoot":"","sources":["../../../../src/client/user/hooks/useUser.tsx"],"names":[],"mappings":"AAMA;;;GAGG;AACH,eAAO,MAAM,OAAO;;;;;;CAyBnB,CAAA"}
@@ -0,0 +1,32 @@
1
+ "use client";
2
+ import { useQuery } from "@tanstack/react-query";
3
+ import { useEffect, useState } from "react";
4
+ import { getUserAction } from "../actions/getUserAction";
5
+ const useUser = () => {
6
+ const [signedIn, setSignedIn] = useState(false);
7
+ useEffect(() => {
8
+ const isSignedIn = document.cookie.includes("user_sign_in=true");
9
+ setSignedIn(isSignedIn);
10
+ }, []);
11
+ const userQuery = useQuery({
12
+ queryKey: ["user"],
13
+ queryFn: async () => {
14
+ return getUserAction();
15
+ },
16
+ staleTime: 5 * 60 * 1e3,
17
+ // Cache user for 5 minutes
18
+ refetchOnMount: false,
19
+ enabled: signedIn
20
+ });
21
+ return {
22
+ user: userQuery.data ?? null,
23
+ userIsSignedIn: Boolean(userQuery.data),
24
+ isLoading: userQuery.isLoading,
25
+ isFetching: userQuery.isFetching,
26
+ refreshUser: userQuery.refetch
27
+ };
28
+ };
29
+ export {
30
+ useUser
31
+ };
32
+ //# sourceMappingURL=useUser.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/client/user/hooks/useUser.tsx"],"sourcesContent":["\"use client\"\n\nimport { useQuery } from \"@tanstack/react-query\"\nimport { useEffect, useState } from \"react\"\nimport { getUserAction } from \"../actions/getUserAction\"\n\n/**\n * Hook to fetch the current authenticated user.\n * Relies on /api/user which handles token refresh automatically.\n */\nexport const useUser = () => {\n const [signedIn, setSignedIn] = useState(false)\n\n useEffect(() => {\n const isSignedIn = document.cookie.includes(\"user_sign_in=true\")\n setSignedIn(isSignedIn)\n }, [])\n\n const userQuery = useQuery({\n queryKey: [\"user\"],\n queryFn: async () => {\n return getUserAction()\n },\n staleTime: 5 * 60 * 1000, // Cache user for 5 minutes\n refetchOnMount: false,\n enabled: signedIn,\n })\n\n return {\n user: userQuery.data ?? null,\n userIsSignedIn: Boolean(userQuery.data),\n isLoading: userQuery.isLoading,\n isFetching: userQuery.isFetching,\n refreshUser: userQuery.refetch,\n }\n}\n"],"mappings":";AAEA,SAAS,gBAAgB;AACzB,SAAS,WAAW,gBAAgB;AACpC,SAAS,qBAAqB;AAMvB,MAAM,UAAU,MAAM;AAC3B,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAE9C,YAAU,MAAM;AACd,UAAM,aAAa,SAAS,OAAO,SAAS,mBAAmB;AAC/D,gBAAY,UAAU;AAAA,EACxB,GAAG,CAAC,CAAC;AAEL,QAAM,YAAY,SAAS;AAAA,IACzB,UAAU,CAAC,MAAM;AAAA,IACjB,SAAS,YAAY;AACnB,aAAO,cAAc;AAAA,IACvB;AAAA,IACA,WAAW,IAAI,KAAK;AAAA;AAAA,IACpB,gBAAgB;AAAA,IAChB,SAAS;AAAA,EACX,CAAC;AAED,SAAO;AAAA,IACL,MAAM,UAAU,QAAQ;AAAA,IACxB,gBAAgB,QAAQ,UAAU,IAAI;AAAA,IACtC,WAAW,UAAU;AAAA,IACrB,YAAY,UAAU;AAAA,IACtB,aAAa,UAAU;AAAA,EACzB;AACF;","names":[]}
@@ -0,0 +1,9 @@
1
+ export { LoginForm } from "./components/login-form";
2
+ export { SignupForm } from "./components/signup-form";
3
+ export { SignupOrganisationForm } from "./components/signup-organisation-form";
4
+ export { ResetPasswordForm } from "./components/reset-password-form";
5
+ export { UpdatePasswordForm } from "./components/update-password-form";
6
+ export { SignOut } from "./components/sign-out";
7
+ export { useUser } from "./hooks/useUser";
8
+ export type { EnadUser, EnadUserResponse, EnadSignupResponse, EnadLoginRequest, EnadSignupRequest, EnadUpdateUserRequest, EnadResetPasswordRequest, EnadOrganisation, EnadOrganisationByUser, EnadUserOrganisation, } from "./types/user";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/user/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,YAAY,EACV,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,cAAc,CAAA"}
@@ -0,0 +1,17 @@
1
+ import { LoginForm } from "./components/login-form";
2
+ import { SignupForm } from "./components/signup-form";
3
+ import { SignupOrganisationForm } from "./components/signup-organisation-form";
4
+ import { ResetPasswordForm } from "./components/reset-password-form";
5
+ import { UpdatePasswordForm } from "./components/update-password-form";
6
+ import { SignOut } from "./components/sign-out";
7
+ import { useUser } from "./hooks/useUser";
8
+ export {
9
+ LoginForm,
10
+ ResetPasswordForm,
11
+ SignOut,
12
+ SignupForm,
13
+ SignupOrganisationForm,
14
+ UpdatePasswordForm,
15
+ useUser
16
+ };
17
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/client/user/index.ts"],"sourcesContent":["export { LoginForm } from \"./components/login-form\"\nexport { SignupForm } from \"./components/signup-form\"\nexport { SignupOrganisationForm } from \"./components/signup-organisation-form\"\nexport { ResetPasswordForm } from \"./components/reset-password-form\"\nexport { UpdatePasswordForm } from \"./components/update-password-form\"\nexport { SignOut } from \"./components/sign-out\"\nexport { useUser } from \"./hooks/useUser\"\nexport type {\n EnadUser,\n EnadUserResponse,\n EnadSignupResponse,\n EnadLoginRequest,\n EnadSignupRequest,\n EnadUpdateUserRequest,\n EnadResetPasswordRequest,\n EnadOrganisation,\n EnadOrganisationByUser,\n EnadUserOrganisation,\n} from \"./types/user\"\n"],"mappings":"AAAA,SAAS,iBAAiB;AAC1B,SAAS,kBAAkB;AAC3B,SAAS,8BAA8B;AACvC,SAAS,yBAAyB;AAClC,SAAS,0BAA0B;AACnC,SAAS,eAAe;AACxB,SAAS,eAAe;","names":[]}
@@ -0,0 +1,201 @@
1
+ export type EnadOrganisationUserListItem = {
2
+ id: string;
3
+ first_name: string;
4
+ last_name: string;
5
+ email?: string;
6
+ role?: "agent" | "customer";
7
+ level?: "admin" | "default";
8
+ organisations?: EnadOrganisationByUser[];
9
+ };
10
+ export type EnadOrganisationsResponse = {
11
+ companies: EnadOrganisation[];
12
+ page: number;
13
+ total: number;
14
+ total_pages?: number;
15
+ };
16
+ export type EnadOrganisationUsersResponse = {
17
+ items: EnadOrganisationUserListItem[];
18
+ page: number;
19
+ per_page?: number;
20
+ total_items: number;
21
+ total_pages: number;
22
+ };
23
+ export type EnadOrganisationResponse = {
24
+ company: EnadOrganisation;
25
+ };
26
+ export type EnadRemoveUserFromOrganisationRequest = {
27
+ id: string;
28
+ user_id: string;
29
+ };
30
+ export type EnadAddUserOrganisationRequest = {
31
+ id: string;
32
+ user_id: string;
33
+ level: string;
34
+ role: string;
35
+ };
36
+ export type EnadOrganisation = {
37
+ app_id: string;
38
+ billing_address: OrganisationBillingAddress[];
39
+ contact_name: string;
40
+ created_at: string;
41
+ credit_check: boolean;
42
+ email: string;
43
+ external_ref: string;
44
+ invoice_email: string;
45
+ id: string;
46
+ name: string;
47
+ organisation_number: string;
48
+ status: "active" | "inactive" | "pending";
49
+ phone: string;
50
+ shipping_address: OrganisationShippingAddress[];
51
+ store_groups: {
52
+ country_of_sale: string;
53
+ created_at: string;
54
+ description: string;
55
+ id: string;
56
+ name: string;
57
+ slug: string;
58
+ store_type: string;
59
+ updated_at: string;
60
+ }[];
61
+ tax_id_vat_number: string;
62
+ updated_at: string;
63
+ };
64
+ export type OrganisationShippingAddress = {
65
+ city: string;
66
+ co_address: string;
67
+ company_id: string;
68
+ company_name: string;
69
+ country: string;
70
+ created_at: string;
71
+ house_number: string;
72
+ id: string;
73
+ is_default: boolean;
74
+ name: string;
75
+ phone: string;
76
+ postal_code: string;
77
+ shipping_type: string;
78
+ state_province: string;
79
+ street_address: string;
80
+ updated_at: string;
81
+ };
82
+ export type OrganisationBillingAddress = {
83
+ city: string;
84
+ co_address: string;
85
+ company_id: string;
86
+ company_name: string;
87
+ country: string;
88
+ created_at: string;
89
+ house_number: string;
90
+ id: string;
91
+ is_default: boolean;
92
+ name: string;
93
+ phone: string;
94
+ postal_code: string;
95
+ shipping_type: string;
96
+ state_province: string;
97
+ street_address: string;
98
+ updated_at: string;
99
+ };
100
+ export type EnadUserResponse = {
101
+ access_token: string;
102
+ refresh_token: string;
103
+ token_type: "Bearer";
104
+ expires_in: number;
105
+ user: EnadUser;
106
+ };
107
+ export type EnadSignupResponse = EnadUser & {};
108
+ export type EnadCreatePasswordResetLinkResponse = {
109
+ message: string;
110
+ };
111
+ export type CreateUserRelationShipOrganisationReponse = {
112
+ message: string;
113
+ };
114
+ export type EnadDeleteUserResponse = {
115
+ message: string;
116
+ };
117
+ export type EnadCreateVerificationResponse = {
118
+ message: string;
119
+ };
120
+ export type EnadUserError = {
121
+ success?: boolean;
122
+ code?: number;
123
+ message: "Unauthorized";
124
+ details: string[] | null;
125
+ };
126
+ export type EnadUser = {
127
+ app_id: string;
128
+ id: string;
129
+ first_name: string;
130
+ last_name: string;
131
+ email: string;
132
+ language: string;
133
+ market: string;
134
+ store_group: string | "";
135
+ store_group_id: string | "";
136
+ phone_number: "";
137
+ additions: {
138
+ voyado_id: string;
139
+ };
140
+ email_verified: boolean;
141
+ communication_preferences: {
142
+ allow_email: boolean;
143
+ allow_sms: boolean;
144
+ allow_postal: boolean;
145
+ };
146
+ address: {
147
+ street: string;
148
+ zip_code: string;
149
+ city: string;
150
+ country: string;
151
+ country_code: string;
152
+ };
153
+ organisations: EnadOrganisationByUser[];
154
+ is_super_admin?: boolean;
155
+ };
156
+ export interface EnadOrganisationByUser extends EnadOrganisation {
157
+ role?: "agent" | "customer";
158
+ level?: "admin" | "default";
159
+ }
160
+ export interface EnadUserOrganisation extends EnadUser {
161
+ role?: "agent" | "customer";
162
+ level?: "admin" | "default";
163
+ }
164
+ export type EnadLoginRequest = {
165
+ email: string;
166
+ password: string;
167
+ };
168
+ export type EnadResetPasswordRequest = {
169
+ reset_password_token: string;
170
+ password: string;
171
+ };
172
+ export type EnadSignupRequest = {
173
+ email: string;
174
+ password: string;
175
+ first_name: string;
176
+ last_name: string;
177
+ market: string;
178
+ store_group: string;
179
+ language: string;
180
+ status: "active" | "inactive" | "pending";
181
+ };
182
+ export type EnadUpdateUserRequest = Partial<{
183
+ email: string;
184
+ password: string;
185
+ first_name: string;
186
+ last_name: string;
187
+ market: string;
188
+ store_group: string;
189
+ language: string;
190
+ street: string;
191
+ phone_number: string;
192
+ postal_code: string;
193
+ zip_code: string;
194
+ city: string;
195
+ country: string;
196
+ country_code: string;
197
+ allow_email_notifications: boolean;
198
+ allow_phone_notifications: boolean;
199
+ allow_postal_notifications: boolean;
200
+ }>;
201
+ //# sourceMappingURL=user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../src/client/user/types/user.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=user.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,19 @@
1
+ export declare const userCookieService: {
2
+ /** Get all relevant cookies */
3
+ get(): Promise<{
4
+ accessToken: string | null;
5
+ refreshToken: string | null;
6
+ signedIn: boolean;
7
+ }>;
8
+ /** Set tokens and mark user as signed in */
9
+ setTokens(accessToken: string, refreshToken: string): Promise<void>;
10
+ /** Clear all auth-related cookies */
11
+ clear(): Promise<void>;
12
+ /** Set a single cookie (for flexibility) */
13
+ set(name: string, value: string): Promise<void>;
14
+ /** Get a single cookie value */
15
+ getValue(name: string): Promise<string | null>;
16
+ /** Delete a single cookie */
17
+ delete(name: string): Promise<void>;
18
+ };
19
+ //# sourceMappingURL=userCookieService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userCookieService.d.ts","sourceRoot":"","sources":["../../../../src/client/user/utils/userCookieService.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,iBAAiB;IAC5B,+BAA+B;;;;;;IAW/B,4CAA4C;2BACf,MAAM,gBAAgB,MAAM;IAQzD,qCAAqC;;IASrC,4CAA4C;cAC5B,MAAM,SAAS,MAAM;IAKrC,gCAAgC;mBACX,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAKpD,6BAA6B;iBACV,MAAM;CAI1B,CAAA"}