@mercurjs/vendor 2.0.2 → 2.1.0-canary.4

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 (95) hide show
  1. package/dist/{[id]-TLZZ53G7.js → [id]-2HRWUMSJ.js} +2 -2
  2. package/dist/{[id]-DCCF7277.js → [id]-57VYN5YF.js} +2 -3
  3. package/dist/{[id]-UAOAQVEM.js → [id]-FWI6NCSF.js} +3 -4
  4. package/dist/{[id]-6WYSWXWC.js → [id]-IQNYVYZU.js} +1 -2
  5. package/dist/{[id]-LZPT5Y55.js → [id]-KCUHMQWF.js} +1 -2
  6. package/dist/{[id]-PHS2WYFX.js → [id]-LCMQBEOS.js} +2 -3
  7. package/dist/{[id]-OGHRZ2VY.js → [id]-LJJPLKJ6.js} +5 -4
  8. package/dist/{[id]-VKG2WEIR.js → [id]-M3PNP527.js} +1 -2
  9. package/dist/{[id]-EJAHMOOE.js → [id]-MZOT4GAO.js} +2 -3
  10. package/dist/{[id]-ENTJSLN2.js → [id]-RKEN7EEY.js} +3 -3
  11. package/dist/{[province_id]-XGA44S7P.js → [province_id]-2MRNXHKU.js} +1 -2
  12. package/dist/{add-7ZTE42IE.js → add-BVR3LDPH.js} +2 -2
  13. package/dist/{add-AKC7LTK3.js → add-W7ATBCKS.js} +2 -3
  14. package/dist/{add-customer-groups-BRC3DKQ2.js → add-customer-groups-ZZVSJJH3.js} +1 -2
  15. package/dist/{add-products-ZSULNZVI.js → add-products-PINICUAZ.js} +2 -3
  16. package/dist/{add-promotions-TNFVT5ST.js → add-promotions-2DFXTDEJ.js} +3 -3
  17. package/dist/{address-3DSJESKM.js → address-RNB2WQPM.js} +1 -2
  18. package/dist/{breadcrumb-ZMVHXCOX.js → breadcrumb-A3XUO3R2.js} +2 -3
  19. package/dist/{breadcrumb-UH7FAYU2.js → breadcrumb-MPXARU5F.js} +1 -2
  20. package/dist/{breadcrumb-D6QNYOAO.js → breadcrumb-Q5KJBAPD.js} +1 -2
  21. package/dist/{chunk-JRT2U4UI.js → chunk-2DUMXTKS.js} +107 -18
  22. package/dist/{chunk-CUMY2VZ5.js → chunk-5LKZCG77.js} +1 -96
  23. package/dist/{chunk-RV5UTYBG.js → chunk-EQQ3BLQ3.js} +2 -2
  24. package/dist/{chunk-RMBCBXWD.js → chunk-GQFNE5VL.js} +1 -1
  25. package/dist/chunk-HFRHHT36.js +98 -0
  26. package/dist/{chunk-O7E4KQAK.js → chunk-HFW7IIO2.js} +1 -1
  27. package/dist/{chunk-T7LEJIIM.js → chunk-PT3UQCSN.js} +1 -1
  28. package/dist/{chunk-LA6XSPQG.js → chunk-QDSNLU6X.js} +287 -309
  29. package/dist/chunk-TLE6YHGH.js +26 -0
  30. package/dist/{chunk-ASEVHHCT.js → chunk-UDG47AEE.js} +1 -1
  31. package/dist/{chunk-573EQEW2.js → chunk-V4SZIX7Q.js} +1 -1
  32. package/dist/{chunk-7XC7ZRG7.js → chunk-VTHSHOX4.js} +1 -1
  33. package/dist/{chunk-XZG2HZYW.js → chunk-WFE6CT6M.js} +1 -1
  34. package/dist/{chunk-N2WKLVUX.js → chunk-XF3W2U3Q.js} +1 -1
  35. package/dist/{chunk-NYRRRCJS.js → chunk-ZCJ737TR.js} +66 -21
  36. package/dist/{chunk-FNG7ZA7N.js → chunk-ZCUUV464.js} +1 -1
  37. package/dist/{collections-2M4RFH4P.js → collections-NNFGWUTW.js} +2 -3
  38. package/dist/{create-6IRE6AMF.js → create-2BPTTXLB.js} +8 -7
  39. package/dist/{create-D4F457BD.js → create-GCSVAMEH.js} +1 -2
  40. package/dist/{create-2TUWGQ2D.js → create-N3WNCW7U.js} +1 -2
  41. package/dist/{create-QK2SSLZK.js → create-T73PSKIV.js} +3 -4
  42. package/dist/{create-OF2OZ7EI.js → create-TXBY6W3X.js} +1 -2
  43. package/dist/{create-IFMEEHN4.js → create-VPG7P53M.js} +2 -3
  44. package/dist/{create-YITFTHMA.js → create-WY4KXB66.js} +1 -2
  45. package/dist/{create-3WUTLUJO.js → create-YCOR6HY3.js} +1 -2
  46. package/dist/{edit-SGEECDCR.js → edit-2QUFOE5S.js} +1 -2
  47. package/dist/{edit-Z7EZRPUP.js → edit-A5ZBINLU.js} +1 -1
  48. package/dist/{edit-QRJIWTU2.js → edit-B245OLC7.js} +1 -2
  49. package/dist/{edit-PIE7Y73J.js → edit-CPVFMQEI.js} +3 -4
  50. package/dist/{edit-ONSN756P.js → edit-CZOV6HBW.js} +1 -1
  51. package/dist/{edit-J5SC7GHQ.js → edit-KWSXWWOA.js} +1 -2
  52. package/dist/{edit-ZEIL7EQW.js → edit-QYKH2ZZA.js} +1 -2
  53. package/dist/{edit-UQAQVEUI.js → edit-U5VL2UQY.js} +4 -5
  54. package/dist/{edit-stocks-and-prices-543AYFDJ.js → edit-stocks-and-prices-Y233WVZ3.js} +1 -2
  55. package/dist/{fulfillment-5LNFBSBS.js → fulfillment-FBF3MITY.js} +1 -2
  56. package/dist/{fulfillment-providers-U7Z7QMOQ.js → fulfillment-providers-Y2YOREHX.js} +2 -3
  57. package/dist/index.css +32 -26
  58. package/dist/index.js +86 -87
  59. package/dist/invite-G7WOO5RZ.js +368 -0
  60. package/dist/{invite-SI2KIPWI.js → invite-Y2TACGCW.js} +3 -5
  61. package/dist/{login-QDS5UXKV.js → login-JU7R2RNN.js} +1 -2
  62. package/dist/{media-RDXCLPKQ.js → media-TXY3WBR3.js} +2 -2
  63. package/dist/{metadata-7JKDCVYY.js → metadata-7RA6MXW7.js} +1 -2
  64. package/dist/{metadata-ZV5RYLKR.js → metadata-GSBDSRNM.js} +1 -2
  65. package/dist/{metadata-X4UIPNL6.js → metadata-JXRXW6UQ.js} +1 -2
  66. package/dist/{metadata-W5XIPFVU.js → metadata-QM4UGMX5.js} +1 -2
  67. package/dist/{metadata-UKBRUFH2.js → metadata-RODKLIDO.js} +1 -2
  68. package/dist/onboarding-VF7EQAAA.js +893 -0
  69. package/dist/{orders-IAL3JNPU.js → orders-HKUVFCTQ.js} +2 -3
  70. package/dist/pages/index.d.ts +140 -140
  71. package/dist/pages/index.js +14 -13
  72. package/dist/{payment-details-ATUYMVJX.js → payment-details-VWR2S32W.js} +1 -2
  73. package/dist/{pricing-RBESFX5P.js → pricing-6UZ6SXIE.js} +1 -2
  74. package/dist/{product-tags-W4BL6RWV.js → product-tags-YXVFIPGQ.js} +3 -4
  75. package/dist/{product-variant-detail-KU5OCL7E.js → product-variant-detail-O2NOUFFC.js} +1 -2
  76. package/dist/{products-3VVYJUH7.js → products-3NIIOQBB.js} +2 -3
  77. package/dist/{products-YYLVCOOY.js → products-Z6MD665K.js} +10 -9
  78. package/dist/{professional-details-6Y5K6GBL.js → professional-details-SJ4AF5TM.js} +1 -2
  79. package/dist/{promotions-NBJTFP6N.js → promotions-PJABWGCP.js} +4 -4
  80. package/dist/{register-ZLE6MNPF.js → register-PSBM4NCS.js} +3 -4
  81. package/dist/{reset-password-PLCDLFL4.js → reset-password-4RE5TXQ5.js} +1 -1
  82. package/dist/{sales-channels-UIDLFCX6.js → sales-channels-2OVI6RTV.js} +3 -2
  83. package/dist/{sales-channels-UWPEFKAO.js → sales-channels-BKOYQXVC.js} +3 -2
  84. package/dist/{settings-5MNWE5CR.js → settings-F6KJREHK.js} +3 -4
  85. package/dist/{shipping-profiles-O7XB2DTE.js → shipping-profiles-AQMJSXDB.js} +1 -2
  86. package/dist/{stock-VJAAYYW5.js → stock-4G4WQIR7.js} +1 -2
  87. package/dist/{stock-2CGEFBXO.js → stock-NJADHNRP.js} +1 -2
  88. package/dist/{store-ZBSMNWFT.js → store-HJGETE33.js} +225 -105
  89. package/dist/{store-closure-43FK32AQ.js → store-closure-QPK4LBBZ.js} +35 -19
  90. package/dist/{store-select-Q2HE572R.js → store-select-XS2APMBI.js} +1 -2
  91. package/dist/{team-ZLZJJWIY.js → team-DZ5CV3LG.js} +1 -2
  92. package/package.json +5 -5
  93. package/dist/chunk-STBCWNZQ.js +0 -57
  94. package/dist/invite-P6HTOEIV.js +0 -301
  95. package/dist/onboarding-DLIBZRKE.js +0 -873
@@ -1,873 +0,0 @@
1
- import {
2
- CountrySelect
3
- } from "./chunk-V74Y5NIV.js";
4
- import {
5
- Form
6
- } from "./chunk-3QSRE5LS.js";
7
- import "./chunk-JRTZWK77.js";
8
- import {
9
- useCreateSellerAccount
10
- } from "./chunk-NYRRRCJS.js";
11
- import "./chunk-STBCWNZQ.js";
12
- import {
13
- useLogout
14
- } from "./chunk-F4OJN2F2.js";
15
- import "./chunk-LRARA622.js";
16
- import "./chunk-M6N4ISXL.js";
17
- import "./chunk-S7EKBD2C.js";
18
- import "./chunk-VXMOPVRH.js";
19
- import "./chunk-IQWK723D.js";
20
- import "./chunk-VV6IKGCN.js";
21
- import "./chunk-PCMNEUMV.js";
22
- import "./chunk-BOZJOOGW.js";
23
- import "./chunk-RL7SFZOF.js";
24
- import "./chunk-LWJF63JW.js";
25
- import "./chunk-NBPMNUKZ.js";
26
- import "./chunk-GCSQEJMD.js";
27
- import "./chunk-VXWN37PT.js";
28
- import "./chunk-UL4O5M4S.js";
29
- import {
30
- retrieveActiveStore,
31
- storeQueryKeys,
32
- useStore
33
- } from "./chunk-FX4V5JCF.js";
34
- import "./chunk-3B34B2M2.js";
35
- import "./chunk-RUE5BPC2.js";
36
- import "./chunk-ZEVYT6IX.js";
37
- import "./chunk-A5DJIOHN.js";
38
- import {
39
- queryClient
40
- } from "./chunk-RHKRREUU.js";
41
- import "./chunk-ZA2KFUFR.js";
42
- import "./chunk-RIN4CBRB.js";
43
- import "./chunk-NBMM2TZK.js";
44
-
45
- // src/pages/onboarding/loader.ts
46
- var storeDetailQuery = () => ({
47
- queryKey: storeQueryKeys.details(),
48
- queryFn: async () => retrieveActiveStore()
49
- });
50
- var onboardingLoader = async () => {
51
- const query = storeDetailQuery();
52
- return queryClient.ensureQueryData(query);
53
- };
54
-
55
- // src/pages/onboarding/onboarding.tsx
56
- import { useState } from "react";
57
- import { zodResolver } from "@hookform/resolvers/zod";
58
- import { OpenRectArrowOut } from "@medusajs/icons";
59
- import {
60
- Avatar,
61
- Button,
62
- Heading,
63
- Input,
64
- Select,
65
- Text,
66
- Textarea,
67
- toast
68
- } from "@medusajs/ui";
69
- import { AnimatePresence, motion } from "motion/react";
70
- import { useForm } from "react-hook-form";
71
- import { useTranslation } from "react-i18next";
72
- import {
73
- useLocation,
74
- Navigate,
75
- useNavigate,
76
- useLoaderData
77
- } from "react-router-dom";
78
- import * as z from "zod";
79
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
80
- var StoreSetupSchema = z.object({
81
- name: z.string().min(1),
82
- email: z.string().email(),
83
- currency_code: z.string().min(1),
84
- description: z.string().optional()
85
- });
86
- var DetailsSetupSchema = z.object({
87
- first_name: z.string().min(1),
88
- last_name: z.string().min(1),
89
- company: z.string().optional(),
90
- address_1: z.string().min(1),
91
- address_2: z.string().optional(),
92
- city: z.string().min(1),
93
- country_code: z.string().min(1),
94
- province: z.string().optional(),
95
- postal_code: z.string().min(1),
96
- phone: z.string().optional(),
97
- corporate_name: z.string().optional(),
98
- registration_number: z.string().optional(),
99
- tax_id: z.string().optional()
100
- });
101
- var Onboarding = () => {
102
- const { t } = useTranslation();
103
- const navigate = useNavigate();
104
- const location = useLocation();
105
- const email = location.state?.email ?? "";
106
- const [step, setStep] = useState(1);
107
- const [layoutStep, setLayoutStep] = useState(1);
108
- const totalSteps = 2;
109
- if (!email) {
110
- return /* @__PURE__ */ jsx(Navigate, { to: "/login", replace: true });
111
- }
112
- const { mutateAsync: logoutMutation } = useLogout();
113
- const handleLogout = async () => {
114
- await logoutMutation(void 0, {
115
- onSuccess: () => {
116
- queryClient.clear();
117
- },
118
- onSettled: () => {
119
- navigate("/login");
120
- }
121
- });
122
- };
123
- const storeForm = useForm({
124
- resolver: zodResolver(StoreSetupSchema),
125
- defaultValues: {
126
- name: "",
127
- email: "",
128
- currency_code: "",
129
- description: ""
130
- }
131
- });
132
- const detailsForm = useForm({
133
- resolver: zodResolver(DetailsSetupSchema),
134
- defaultValues: {
135
- first_name: "",
136
- last_name: "",
137
- company: "",
138
- address_1: "",
139
- address_2: "",
140
- city: "",
141
- country_code: "",
142
- province: "",
143
- postal_code: "",
144
- phone: "",
145
- corporate_name: "",
146
- registration_number: "",
147
- tax_id: ""
148
- }
149
- });
150
- const handleStoreSubmit = storeForm.handleSubmit(async (_data) => {
151
- setStep(2);
152
- });
153
- const { mutateAsync: createSellerAccount, isPending: isCreating } = useCreateSellerAccount();
154
- const handleDetailsSubmit = detailsForm.handleSubmit(async (details) => {
155
- const storeData = storeForm.getValues();
156
- const { corporate_name, registration_number, tax_id, ...addressFields } = details;
157
- try {
158
- await createSellerAccount({
159
- name: storeData.name,
160
- email: storeData.email,
161
- member_email: email,
162
- currency_code: storeData.currency_code.toLowerCase(),
163
- description: storeData.description || void 0,
164
- address: addressFields,
165
- professional_details: corporate_name || registration_number || tax_id ? { corporate_name, registration_number, tax_id } : void 0
166
- });
167
- setStep(3);
168
- } catch (error) {
169
- toast.error(error.message);
170
- }
171
- });
172
- return /* @__PURE__ */ jsxs("div", { className: "bg-ui-bg-subtle flex min-h-dvh w-dvw flex-col", children: [
173
- /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center py-4", children: /* @__PURE__ */ jsxs(
174
- "button",
175
- {
176
- onClick: handleLogout,
177
- className: "txt-compact-small text-ui-fg-subtle flex items-center gap-x-1 font-medium transition-colors hover:text-ui-fg-base",
178
- children: [
179
- /* @__PURE__ */ jsx(OpenRectArrowOut, {}),
180
- /* @__PURE__ */ jsxs("span", { children: [
181
- t("actions.logout"),
182
- email && ` (${email})`
183
- ] })
184
- ]
185
- }
186
- ) }),
187
- /* @__PURE__ */ jsx(AnimatePresence, { mode: "wait", children: step <= 2 ? /* @__PURE__ */ jsx(
188
- motion.div,
189
- {
190
- className: `flex flex-1 flex-col items-center px-4 ${layoutStep === 1 ? "justify-center" : "pt-8"}`,
191
- exit: {
192
- opacity: 0,
193
- y: 40,
194
- filter: "blur(6px)",
195
- transition: { duration: 0.5, ease: [0, 0.71, 0.2, 1.01] }
196
- },
197
- children: /* @__PURE__ */ jsx(
198
- "div",
199
- {
200
- className: "flex w-full max-w-[720px] flex-col",
201
- style: layoutStep === 2 ? { paddingBottom: "5rem" } : void 0,
202
- children: /* @__PURE__ */ jsx(
203
- AnimatePresence,
204
- {
205
- mode: "wait",
206
- onExitComplete: () => setLayoutStep(step),
207
- children: step === 1 ? /* @__PURE__ */ jsx(
208
- motion.div,
209
- {
210
- initial: { opacity: 0, y: 8, filter: "blur(4px)" },
211
- animate: { opacity: 1, y: 0, filter: "blur(0px)" },
212
- exit: {
213
- opacity: 0,
214
- y: -3,
215
- filter: "blur(4px)",
216
- transition: {
217
- duration: 0.25,
218
- ease: [0.23, 1, 0.32, 1]
219
- }
220
- },
221
- transition: {
222
- duration: 0.4,
223
- ease: [0.23, 1, 0.32, 1]
224
- },
225
- children: /* @__PURE__ */ jsx(StoreStep, { form: storeForm, onSubmit: handleStoreSubmit })
226
- },
227
- "store-step"
228
- ) : /* @__PURE__ */ jsx(
229
- motion.div,
230
- {
231
- initial: { opacity: 0, y: 8, filter: "blur(4px)" },
232
- animate: { opacity: 1, y: 0, filter: "blur(0px)" },
233
- exit: {
234
- opacity: 0,
235
- y: -3,
236
- filter: "blur(4px)",
237
- transition: {
238
- duration: 0.25,
239
- ease: [0.23, 1, 0.32, 1]
240
- }
241
- },
242
- transition: {
243
- duration: 0.4,
244
- ease: [0.23, 1, 0.32, 1]
245
- },
246
- children: /* @__PURE__ */ jsx(
247
- DetailsStep,
248
- {
249
- form: detailsForm,
250
- onSubmit: handleDetailsSubmit,
251
- onBack: () => setStep(1),
252
- isPending: isCreating
253
- }
254
- )
255
- },
256
- "details-step"
257
- )
258
- }
259
- )
260
- }
261
- )
262
- },
263
- "form-steps"
264
- ) : /* @__PURE__ */ jsx(
265
- motion.div,
266
- {
267
- className: "flex flex-1 flex-col items-center justify-center px-4",
268
- initial: { opacity: 0, scale: 0.95 },
269
- animate: { opacity: 1, scale: 1 },
270
- transition: {
271
- duration: 0.6,
272
- delay: 0.3,
273
- ease: [0, 0.71, 0.2, 1.01]
274
- },
275
- children: /* @__PURE__ */ jsx(SubmittedStep, { email })
276
- },
277
- "submitted"
278
- ) }),
279
- /* @__PURE__ */ jsx(AnimatePresence, { children: step <= 2 && /* @__PURE__ */ jsx(
280
- motion.div,
281
- {
282
- className: "fixed bottom-0 left-0 right-0 flex items-center justify-center py-4 bg-ui-bg-subtle",
283
- exit: {
284
- opacity: 0,
285
- transition: { duration: 0.3, ease: [0.23, 1, 0.32, 1] }
286
- },
287
- children: /* @__PURE__ */ jsx(Text, { size: "small", weight: "plus", className: "text-ui-fg-muted", children: t("onboarding.step", {
288
- current: String(step).padStart(2, "0"),
289
- total: String(totalSteps).padStart(2, "0")
290
- }) })
291
- }
292
- ) })
293
- ] });
294
- };
295
- var sectionVariants = {
296
- hidden: { opacity: 0, y: 8 },
297
- visible: (i) => ({
298
- opacity: 1,
299
- y: 0,
300
- transition: {
301
- delay: 0.06 * i,
302
- duration: 0.35,
303
- ease: [0.23, 1, 0.32, 1]
304
- }
305
- })
306
- };
307
- var StoreStep = ({
308
- form,
309
- onSubmit
310
- }) => {
311
- const { t } = useTranslation();
312
- const initialData = useLoaderData();
313
- const { store } = useStore(void 0, { initialData });
314
- return /* @__PURE__ */ jsxs(Fragment, { children: [
315
- /* @__PURE__ */ jsxs(
316
- motion.div,
317
- {
318
- className: "pb-8 flex items-center gap-x-4",
319
- variants: sectionVariants,
320
- initial: "hidden",
321
- animate: "visible",
322
- custom: 0,
323
- children: [
324
- /* @__PURE__ */ jsx(Avatar, { fallback: "?", variant: "rounded", size: "xlarge" }),
325
- /* @__PURE__ */ jsxs("div", { children: [
326
- /* @__PURE__ */ jsx(Heading, { level: "h1", className: "text-ui-fg-base", children: t("onboarding.storeSetup.title") }),
327
- /* @__PURE__ */ jsx(Text, { size: "small", className: "text-ui-fg-subtle", children: t("onboarding.storeSetup.subtitle") })
328
- ] })
329
- ]
330
- }
331
- ),
332
- /* @__PURE__ */ jsx(Form, { ...form, children: /* @__PURE__ */ jsxs("form", { onSubmit, children: [
333
- /* @__PURE__ */ jsx(
334
- motion.div,
335
- {
336
- className: "border-t border-dotted border-ui-border-base",
337
- variants: sectionVariants,
338
- initial: "hidden",
339
- animate: "visible",
340
- custom: 1
341
- }
342
- ),
343
- /* @__PURE__ */ jsxs(
344
- motion.div,
345
- {
346
- className: "grid grid-cols-2 gap-x-12 py-8",
347
- variants: sectionVariants,
348
- initial: "hidden",
349
- animate: "visible",
350
- custom: 2,
351
- children: [
352
- /* @__PURE__ */ jsxs("div", { children: [
353
- /* @__PURE__ */ jsx(Text, { size: "small", weight: "plus", className: "text-ui-fg-base", children: t("onboarding.storeSetup.title") }),
354
- /* @__PURE__ */ jsx(Text, { size: "small", className: "text-ui-fg-subtle mt-1", children: t("onboarding.storeSetup.subtitle") })
355
- ] }),
356
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-y-4", children: [
357
- /* @__PURE__ */ jsx(
358
- Form.Field,
359
- {
360
- control: form.control,
361
- name: "name",
362
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
363
- /* @__PURE__ */ jsx(Form.Label, { children: t("onboarding.storeSetup.storeName") }),
364
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(
365
- Input,
366
- {
367
- autoComplete: "organization",
368
- ...field,
369
- placeholder: t(
370
- "onboarding.storeSetup.storeNamePlaceholder"
371
- )
372
- }
373
- ) }),
374
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
375
- ] })
376
- }
377
- ),
378
- /* @__PURE__ */ jsx(
379
- Form.Field,
380
- {
381
- control: form.control,
382
- name: "email",
383
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
384
- /* @__PURE__ */ jsx(Form.Label, { children: t("onboarding.storeSetup.storeEmail") }),
385
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(
386
- Input,
387
- {
388
- type: "email",
389
- autoComplete: "email",
390
- ...field,
391
- placeholder: "store@example.com"
392
- }
393
- ) }),
394
- /* @__PURE__ */ jsx(Form.Hint, { children: t("onboarding.storeSetup.storeEmailHint") }),
395
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
396
- ] })
397
- }
398
- ),
399
- /* @__PURE__ */ jsx(
400
- Form.Field,
401
- {
402
- control: form.control,
403
- name: "currency_code",
404
- render: ({ field: { onChange, ref, ...field } }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
405
- /* @__PURE__ */ jsx(Form.Label, { children: t("fields.currency") }),
406
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsxs(Select, { ...field, onValueChange: onChange, children: [
407
- /* @__PURE__ */ jsx(Select.Trigger, { ref, children: /* @__PURE__ */ jsx(
408
- Select.Value,
409
- {
410
- placeholder: t(
411
- "onboarding.storeSetup.selectCurrency"
412
- )
413
- }
414
- ) }),
415
- /* @__PURE__ */ jsx(Select.Content, { children: store?.supported_currencies?.map((sc) => /* @__PURE__ */ jsx(
416
- Select.Item,
417
- {
418
- value: sc.currency_code,
419
- children: sc.currency_code.toUpperCase()
420
- },
421
- sc.currency_code
422
- )) })
423
- ] }) }),
424
- /* @__PURE__ */ jsx(Form.Hint, { children: t("onboarding.storeSetup.currencyHint") }),
425
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
426
- ] })
427
- }
428
- ),
429
- /* @__PURE__ */ jsx(
430
- Form.Field,
431
- {
432
- control: form.control,
433
- name: "description",
434
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
435
- /* @__PURE__ */ jsx(Form.Label, { optional: true, children: t("fields.description") }),
436
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(
437
- Textarea,
438
- {
439
- ...field,
440
- placeholder: t(
441
- "onboarding.storeSetup.descriptionPlaceholder"
442
- )
443
- }
444
- ) }),
445
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
446
- ] })
447
- }
448
- )
449
- ] })
450
- ]
451
- }
452
- ),
453
- /* @__PURE__ */ jsx(
454
- motion.div,
455
- {
456
- className: "border-t border-dotted border-ui-border-base",
457
- variants: sectionVariants,
458
- initial: "hidden",
459
- animate: "visible",
460
- custom: 3
461
- }
462
- ),
463
- /* @__PURE__ */ jsxs(
464
- motion.div,
465
- {
466
- className: "grid grid-cols-2 gap-x-12 py-8",
467
- variants: sectionVariants,
468
- initial: "hidden",
469
- animate: "visible",
470
- custom: 4,
471
- children: [
472
- /* @__PURE__ */ jsx("div", {}),
473
- /* @__PURE__ */ jsx(Button, { type: "submit", className: "w-full", children: t("actions.continue") })
474
- ]
475
- }
476
- )
477
- ] }) })
478
- ] });
479
- };
480
- var DetailsStep = ({
481
- form,
482
- onSubmit,
483
- onBack,
484
- isPending
485
- }) => {
486
- const { t } = useTranslation();
487
- return /* @__PURE__ */ jsxs(Fragment, { children: [
488
- /* @__PURE__ */ jsxs(
489
- motion.div,
490
- {
491
- className: "pb-8 flex items-center gap-x-4",
492
- variants: sectionVariants,
493
- initial: "hidden",
494
- animate: "visible",
495
- custom: 0,
496
- children: [
497
- /* @__PURE__ */ jsx(Avatar, { fallback: "?", variant: "rounded", size: "xlarge" }),
498
- /* @__PURE__ */ jsxs("div", { children: [
499
- /* @__PURE__ */ jsx(Heading, { level: "h1", className: "text-ui-fg-base", children: t("onboarding.detailsSetup.title") }),
500
- /* @__PURE__ */ jsx(Text, { size: "small", className: "text-ui-fg-subtle", children: t("onboarding.detailsSetup.subtitle") })
501
- ] })
502
- ]
503
- }
504
- ),
505
- /* @__PURE__ */ jsx(Form, { ...form, children: /* @__PURE__ */ jsxs("form", { onSubmit, children: [
506
- /* @__PURE__ */ jsx(
507
- motion.div,
508
- {
509
- className: "border-t border-dotted border-ui-border-base",
510
- variants: sectionVariants,
511
- initial: "hidden",
512
- animate: "visible",
513
- custom: 1
514
- }
515
- ),
516
- /* @__PURE__ */ jsxs(
517
- motion.div,
518
- {
519
- className: "grid grid-cols-2 gap-x-12 py-8",
520
- variants: sectionVariants,
521
- initial: "hidden",
522
- animate: "visible",
523
- custom: 2,
524
- children: [
525
- /* @__PURE__ */ jsxs("div", { children: [
526
- /* @__PURE__ */ jsx(Text, { size: "small", weight: "plus", className: "text-ui-fg-base", children: t("onboarding.detailsSetup.addressTitle") }),
527
- /* @__PURE__ */ jsx(Text, { size: "small", className: "text-ui-fg-subtle mt-1", children: t("onboarding.detailsSetup.addressSubtitle") })
528
- ] }),
529
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-y-4", children: [
530
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-4", children: [
531
- /* @__PURE__ */ jsx(
532
- Form.Field,
533
- {
534
- control: form.control,
535
- name: "first_name",
536
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
537
- /* @__PURE__ */ jsx(Form.Label, { children: t("fields.firstName") }),
538
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "given-name", ...field }) }),
539
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
540
- ] })
541
- }
542
- ),
543
- /* @__PURE__ */ jsx(
544
- Form.Field,
545
- {
546
- control: form.control,
547
- name: "last_name",
548
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
549
- /* @__PURE__ */ jsx(Form.Label, { children: t("fields.lastName") }),
550
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "family-name", ...field }) }),
551
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
552
- ] })
553
- }
554
- )
555
- ] }),
556
- /* @__PURE__ */ jsx(
557
- Form.Field,
558
- {
559
- control: form.control,
560
- name: "company",
561
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
562
- /* @__PURE__ */ jsx(Form.Label, { optional: true, children: t("fields.company") }),
563
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "organization", ...field }) }),
564
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
565
- ] })
566
- }
567
- ),
568
- /* @__PURE__ */ jsx(
569
- Form.Field,
570
- {
571
- control: form.control,
572
- name: "country_code",
573
- render: ({ field: { onChange, ref: _ref, ...field } }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
574
- /* @__PURE__ */ jsx(Form.Label, { children: t("fields.country") }),
575
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(CountrySelect, { ...field, onChange }) }),
576
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
577
- ] })
578
- }
579
- ),
580
- /* @__PURE__ */ jsx(
581
- Form.Field,
582
- {
583
- control: form.control,
584
- name: "address_1",
585
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
586
- /* @__PURE__ */ jsx(Form.Label, { children: t("fields.address") }),
587
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "address-line1", ...field }) }),
588
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
589
- ] })
590
- }
591
- ),
592
- /* @__PURE__ */ jsx(
593
- Form.Field,
594
- {
595
- control: form.control,
596
- name: "address_2",
597
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
598
- /* @__PURE__ */ jsx(Form.Label, { optional: true, children: t("fields.address2") }),
599
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "address-line2", ...field }) }),
600
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
601
- ] })
602
- }
603
- ),
604
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-4", children: [
605
- /* @__PURE__ */ jsx(
606
- Form.Field,
607
- {
608
- control: form.control,
609
- name: "city",
610
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
611
- /* @__PURE__ */ jsx(Form.Label, { children: t("fields.city") }),
612
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "address-level2", ...field }) }),
613
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
614
- ] })
615
- }
616
- ),
617
- /* @__PURE__ */ jsx(
618
- Form.Field,
619
- {
620
- control: form.control,
621
- name: "postal_code",
622
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
623
- /* @__PURE__ */ jsx(Form.Label, { children: t("fields.postalCode") }),
624
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "postal-code", ...field }) }),
625
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
626
- ] })
627
- }
628
- )
629
- ] }),
630
- /* @__PURE__ */ jsx(
631
- Form.Field,
632
- {
633
- control: form.control,
634
- name: "province",
635
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
636
- /* @__PURE__ */ jsx(Form.Label, { optional: true, children: t("fields.province") }),
637
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "address-level1", ...field }) }),
638
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
639
- ] })
640
- }
641
- ),
642
- /* @__PURE__ */ jsx(
643
- Form.Field,
644
- {
645
- control: form.control,
646
- name: "phone",
647
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
648
- /* @__PURE__ */ jsx(Form.Label, { optional: true, children: t("fields.phone") }),
649
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { autoComplete: "tel", ...field }) }),
650
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
651
- ] })
652
- }
653
- )
654
- ] })
655
- ]
656
- }
657
- ),
658
- /* @__PURE__ */ jsx(
659
- motion.div,
660
- {
661
- className: "border-t border-dotted border-ui-border-base",
662
- variants: sectionVariants,
663
- initial: "hidden",
664
- animate: "visible",
665
- custom: 3
666
- }
667
- ),
668
- /* @__PURE__ */ jsxs(
669
- motion.div,
670
- {
671
- className: "grid grid-cols-2 gap-x-12 py-8",
672
- variants: sectionVariants,
673
- initial: "hidden",
674
- animate: "visible",
675
- custom: 4,
676
- children: [
677
- /* @__PURE__ */ jsxs("div", { children: [
678
- /* @__PURE__ */ jsx(Text, { size: "small", weight: "plus", className: "text-ui-fg-base", children: t("onboarding.detailsSetup.professionalTitle") }),
679
- /* @__PURE__ */ jsx(Text, { size: "small", className: "text-ui-fg-subtle mt-1", children: t("onboarding.detailsSetup.professionalSubtitle") })
680
- ] }),
681
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-y-4", children: [
682
- /* @__PURE__ */ jsx(
683
- Form.Field,
684
- {
685
- control: form.control,
686
- name: "corporate_name",
687
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
688
- /* @__PURE__ */ jsx(Form.Label, { optional: true, children: t("onboarding.detailsSetup.corporateName") }),
689
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { ...field }) }),
690
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
691
- ] })
692
- }
693
- ),
694
- /* @__PURE__ */ jsx(
695
- Form.Field,
696
- {
697
- control: form.control,
698
- name: "registration_number",
699
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
700
- /* @__PURE__ */ jsx(Form.Label, { optional: true, children: t("onboarding.detailsSetup.registrationNumber") }),
701
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { ...field }) }),
702
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
703
- ] })
704
- }
705
- ),
706
- /* @__PURE__ */ jsx(
707
- Form.Field,
708
- {
709
- control: form.control,
710
- name: "tax_id",
711
- render: ({ field }) => /* @__PURE__ */ jsxs(Form.Item, { children: [
712
- /* @__PURE__ */ jsx(Form.Label, { optional: true, children: t("onboarding.detailsSetup.taxId") }),
713
- /* @__PURE__ */ jsx(Form.Control, { children: /* @__PURE__ */ jsx(Input, { ...field }) }),
714
- /* @__PURE__ */ jsx(Form.ErrorMessage, {})
715
- ] })
716
- }
717
- )
718
- ] })
719
- ]
720
- }
721
- ),
722
- /* @__PURE__ */ jsx(
723
- motion.div,
724
- {
725
- className: "border-t border-dotted border-ui-border-base",
726
- variants: sectionVariants,
727
- initial: "hidden",
728
- animate: "visible",
729
- custom: 5
730
- }
731
- ),
732
- /* @__PURE__ */ jsxs(
733
- motion.div,
734
- {
735
- className: "grid grid-cols-2 gap-x-12 py-8",
736
- variants: sectionVariants,
737
- initial: "hidden",
738
- animate: "visible",
739
- custom: 6,
740
- children: [
741
- /* @__PURE__ */ jsx("div", {}),
742
- /* @__PURE__ */ jsxs("div", { className: "flex gap-x-2", children: [
743
- /* @__PURE__ */ jsx(
744
- Button,
745
- {
746
- type: "button",
747
- variant: "secondary",
748
- className: "w-full",
749
- onClick: onBack,
750
- children: t("actions.back")
751
- }
752
- ),
753
- /* @__PURE__ */ jsx(Button, { type: "submit", className: "w-full", isLoading: isPending, children: t("onboarding.detailsSetup.completeSetup") })
754
- ] })
755
- ]
756
- }
757
- )
758
- ] }) })
759
- ] });
760
- };
761
- var SubmittedStep = ({ email }) => {
762
- const { t } = useTranslation();
763
- const navigate = useNavigate();
764
- return /* @__PURE__ */ jsxs("div", { className: "flex w-full max-w-[360px] flex-col items-center", children: [
765
- /* @__PURE__ */ jsxs("div", { className: "relative mb-6", children: [
766
- /* @__PURE__ */ jsx(
767
- motion.div,
768
- {
769
- className: "flex size-14 items-center justify-center rounded-xl bg-ui-button-neutral shadow-buttons-neutral",
770
- initial: { opacity: 0, scale: 0.8 },
771
- animate: { opacity: 1, scale: 1 },
772
- transition: {
773
- duration: 0.5,
774
- delay: 0.1,
775
- ease: [0, 0.71, 0.2, 1.01]
776
- },
777
- children: /* @__PURE__ */ jsx(Avatar, { fallback: "M", variant: "rounded", size: "xlarge" })
778
- }
779
- ),
780
- /* @__PURE__ */ jsx(
781
- motion.div,
782
- {
783
- className: "absolute -right-[5px] -top-1 flex size-5 items-center justify-center rounded-full border-[0.5px] border-[rgba(3,7,18,0.2)] bg-[#3B82F6] bg-gradient-to-b from-white/0 to-white/20 shadow-[0px_1px_2px_0px_rgba(3,7,18,0.12),0px_1px_2px_0px_rgba(255,255,255,0.10)_inset,0px_-1px_5px_0px_rgba(255,255,255,0.10)_inset]",
784
- initial: { opacity: 0, scale: 0.5 },
785
- animate: { opacity: 1, scale: 1 },
786
- transition: {
787
- duration: 1.2,
788
- delay: 0.8,
789
- ease: [0, 0.71, 0.2, 1.01]
790
- },
791
- children: /* @__PURE__ */ jsx(
792
- "svg",
793
- {
794
- xmlns: "http://www.w3.org/2000/svg",
795
- width: "20",
796
- height: "20",
797
- viewBox: "0 0 20 20",
798
- fill: "none",
799
- children: /* @__PURE__ */ jsx(
800
- motion.path,
801
- {
802
- d: "M5.8335 10.4167L9.16683 13.75L14.1668 6.25",
803
- stroke: "white",
804
- strokeWidth: "1.5",
805
- strokeLinecap: "round",
806
- strokeLinejoin: "round",
807
- initial: { pathLength: 0, opacity: 0 },
808
- animate: { pathLength: 1, opacity: 1 },
809
- transition: {
810
- duration: 1.3,
811
- delay: 1.1,
812
- bounce: 0.6,
813
- ease: [0.1, 0.8, 0.2, 1.01]
814
- }
815
- }
816
- )
817
- }
818
- )
819
- }
820
- )
821
- ] }),
822
- /* @__PURE__ */ jsxs(
823
- motion.div,
824
- {
825
- className: "flex flex-col items-center gap-y-1",
826
- initial: { opacity: 0, y: 8 },
827
- animate: { opacity: 1, y: 0 },
828
- transition: {
829
- duration: 0.5,
830
- delay: 0.4,
831
- ease: [0.23, 1, 0.32, 1]
832
- },
833
- children: [
834
- /* @__PURE__ */ jsx(Heading, { level: "h1", className: "text-center text-ui-fg-base", children: t("onboarding.submitted.title") }),
835
- /* @__PURE__ */ jsx(
836
- Text,
837
- {
838
- size: "small",
839
- className: "text-ui-fg-subtle text-center max-w-[300px]",
840
- children: t("onboarding.submitted.description", { email })
841
- }
842
- )
843
- ]
844
- }
845
- ),
846
- /* @__PURE__ */ jsx(
847
- motion.div,
848
- {
849
- className: "mt-6 w-full",
850
- initial: { opacity: 0, y: 8 },
851
- animate: { opacity: 1, y: 0 },
852
- transition: {
853
- duration: 0.5,
854
- delay: 0.7,
855
- ease: [0.23, 1, 0.32, 1]
856
- },
857
- children: /* @__PURE__ */ jsx(
858
- Button,
859
- {
860
- variant: "secondary",
861
- className: "w-full",
862
- onClick: () => navigate("/login"),
863
- children: t("onboarding.submitted.action")
864
- }
865
- )
866
- }
867
- )
868
- ] });
869
- };
870
- export {
871
- Onboarding as Component,
872
- onboardingLoader as loader
873
- };