@spree/seller-dashboard 1.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +31 -0
  3. package/dist/vite-plugin/index.js +51 -0
  4. package/package.json +64 -0
  5. package/src/api-client.ts +203 -0
  6. package/src/components/centered-message.tsx +8 -0
  7. package/src/components/finance/balance-summary.tsx +69 -0
  8. package/src/components/onboarding-nav-badge.tsx +38 -0
  9. package/src/components/orders/fulfillment-deliveries.tsx +116 -0
  10. package/src/components/orders/fulfillment-delivery-dialog.tsx +82 -0
  11. package/src/components/orders/fulfillment-edit-dialog.tsx +95 -0
  12. package/src/components/orders/fulfillment-fulfill-form.tsx +132 -0
  13. package/src/components/orders/fulfillment-label-upload-dialog.tsx +95 -0
  14. package/src/components/orders/fulfillment-split-dialog.tsx +142 -0
  15. package/src/components/orders/fulfillments-card.tsx +289 -0
  16. package/src/components/orders/line-label.ts +28 -0
  17. package/src/components/orders/order-cancel-dialog.tsx +74 -0
  18. package/src/components/orders/order-cards.tsx +297 -0
  19. package/src/components/orders/order-earnings-card.tsx +99 -0
  20. package/src/components/orders/order-notes-cards.tsx +83 -0
  21. package/src/components/orders/order-payment-card.tsx +94 -0
  22. package/src/components/orders/post-sale-cards.tsx +347 -0
  23. package/src/components/orders/post-sale-create-dialogs.tsx +201 -0
  24. package/src/components/orders/returns-card.tsx +258 -0
  25. package/src/components/orders/shipping-label-row.tsx +124 -0
  26. package/src/components/product-status-card.tsx +111 -0
  27. package/src/components/read-row.tsx +16 -0
  28. package/src/components/retryable-error.tsx +23 -0
  29. package/src/components/seller-address-card.tsx +123 -0
  30. package/src/components/seller-business-card.tsx +152 -0
  31. package/src/components/seller-returns-location-card.tsx +151 -0
  32. package/src/components/seller-switcher.tsx +124 -0
  33. package/src/components/seller-tax-identifiers-card.tsx +63 -0
  34. package/src/create-router.ts +32 -0
  35. package/src/hooks/use-fulfillments.ts +155 -0
  36. package/src/hooks/use-ledger.ts +46 -0
  37. package/src/hooks/use-order.ts +62 -0
  38. package/src/hooks/use-post-sale.ts +202 -0
  39. package/src/hooks/use-reasons.ts +34 -0
  40. package/src/hooks/use-stock-locations.ts +23 -0
  41. package/src/hooks/use-store-timezone.ts +26 -0
  42. package/src/i18n.ts +26 -0
  43. package/src/index.ts +27 -0
  44. package/src/lib/packing-slip.ts +109 -0
  45. package/src/locales/en.json +841 -0
  46. package/src/nav/default.ts +108 -0
  47. package/src/nav/settings.ts +114 -0
  48. package/src/pages/accept-invitation.tsx +127 -0
  49. package/src/pages/delivery-methods.tsx +647 -0
  50. package/src/pages/earnings.tsx +44 -0
  51. package/src/pages/forgot-password.tsx +100 -0
  52. package/src/pages/home.tsx +132 -0
  53. package/src/pages/login.tsx +94 -0
  54. package/src/pages/onboarding.tsx +539 -0
  55. package/src/pages/order.tsx +119 -0
  56. package/src/pages/orders.tsx +33 -0
  57. package/src/pages/payout.tsx +154 -0
  58. package/src/pages/payouts.tsx +32 -0
  59. package/src/pages/policies.tsx +292 -0
  60. package/src/pages/product.tsx +250 -0
  61. package/src/pages/products.tsx +228 -0
  62. package/src/pages/profile.tsx +389 -0
  63. package/src/pages/reset-password.tsx +105 -0
  64. package/src/pages/seller-picker.tsx +46 -0
  65. package/src/pages/team.tsx +468 -0
  66. package/src/panel-chrome.tsx +36 -0
  67. package/src/routeTree.gen.ts +590 -0
  68. package/src/routes/__root.tsx +15 -0
  69. package/src/routes/_authenticated/$sellerId/earnings/index.tsx +15 -0
  70. package/src/routes/_authenticated/$sellerId/index.tsx +6 -0
  71. package/src/routes/_authenticated/$sellerId/onboarding.tsx +6 -0
  72. package/src/routes/_authenticated/$sellerId/orders/$orderId.tsx +6 -0
  73. package/src/routes/_authenticated/$sellerId/orders/index.tsx +15 -0
  74. package/src/routes/_authenticated/$sellerId/payouts/$payoutId.tsx +7 -0
  75. package/src/routes/_authenticated/$sellerId/payouts/index.tsx +15 -0
  76. package/src/routes/_authenticated/$sellerId/products/$productId.tsx +6 -0
  77. package/src/routes/_authenticated/$sellerId/products/index.tsx +23 -0
  78. package/src/routes/_authenticated/$sellerId/products/new.tsx +6 -0
  79. package/src/routes/_authenticated/$sellerId/profile.tsx +6 -0
  80. package/src/routes/_authenticated/$sellerId/settings/delivery-methods.tsx +14 -0
  81. package/src/routes/_authenticated/$sellerId/settings/index.tsx +18 -0
  82. package/src/routes/_authenticated/$sellerId/settings/package-types.tsx +21 -0
  83. package/src/routes/_authenticated/$sellerId/settings/policies.tsx +14 -0
  84. package/src/routes/_authenticated/$sellerId/settings/stock-locations.tsx +22 -0
  85. package/src/routes/_authenticated/$sellerId/settings/team.tsx +6 -0
  86. package/src/routes/_authenticated/$sellerId/settings.tsx +18 -0
  87. package/src/routes/_authenticated/$sellerId.tsx +49 -0
  88. package/src/routes/_authenticated/index.tsx +48 -0
  89. package/src/routes/_authenticated.tsx +13 -0
  90. package/src/routes/accept-invitation.$invitationId.tsx +19 -0
  91. package/src/routes/forgot-password.tsx +15 -0
  92. package/src/routes/login.tsx +15 -0
  93. package/src/routes/reset-password.tsx +21 -0
  94. package/src/schemas/fulfillment.ts +31 -0
  95. package/src/seller-dashboard.tsx +50 -0
  96. package/src/styles.css +18 -0
  97. package/src/tables/delivery-methods.tsx +68 -0
  98. package/src/tables/orders.tsx +116 -0
  99. package/src/tables/payouts.tsx +87 -0
  100. package/src/tables/policies.tsx +37 -0
  101. package/src/tables/products.tsx +56 -0
  102. package/src/tables/transfers.tsx +118 -0
  103. package/src/vite/index.ts +87 -0
@@ -0,0 +1,590 @@
1
+ /* eslint-disable */
2
+
3
+ // @ts-nocheck
4
+
5
+ // noinspection JSUnusedGlobalSymbols
6
+
7
+ // This file was automatically generated by TanStack Router.
8
+ // You should NOT make any changes in this file as it will be overwritten.
9
+ // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
10
+
11
+ import { Route as rootRouteImport } from './routes/__root'
12
+ import { Route as resetPasswordRouteImport } from './routes/reset-password'
13
+ import { Route as loginRouteImport } from './routes/login'
14
+ import { Route as forgotPasswordRouteImport } from './routes/forgot-password'
15
+ import { Route as authenticatedRouteImport } from './routes/_authenticated'
16
+ import { Route as authenticatedIndexRouteImport } from './routes/_authenticated/index'
17
+ import { Route as acceptInvitationDotinvitationIdRouteImport } from './routes/accept-invitation.$invitationId'
18
+ import { Route as authenticatedSellerIdRouteImport } from './routes/_authenticated/$sellerId'
19
+ import { Route as IndexRouteImport } from './routes/_authenticated/$sellerId/index'
20
+ import { Route as SettingsRouteImport } from './routes/_authenticated/$sellerId/settings'
21
+ import { Route as ProfileRouteImport } from './routes/_authenticated/$sellerId/profile'
22
+ import { Route as OnboardingRouteImport } from './routes/_authenticated/$sellerId/onboarding'
23
+ import { Route as SettingsIndexRouteImport } from './routes/_authenticated/$sellerId/settings/index'
24
+ import { Route as ProductsIndexRouteImport } from './routes/_authenticated/$sellerId/products/index'
25
+ import { Route as PayoutsIndexRouteImport } from './routes/_authenticated/$sellerId/payouts/index'
26
+ import { Route as OrdersIndexRouteImport } from './routes/_authenticated/$sellerId/orders/index'
27
+ import { Route as EarningsIndexRouteImport } from './routes/_authenticated/$sellerId/earnings/index'
28
+ import { Route as SettingsTeamRouteImport } from './routes/_authenticated/$sellerId/settings/team'
29
+ import { Route as SettingsStockLocationsRouteImport } from './routes/_authenticated/$sellerId/settings/stock-locations'
30
+ import { Route as SettingsPoliciesRouteImport } from './routes/_authenticated/$sellerId/settings/policies'
31
+ import { Route as SettingsPackageTypesRouteImport } from './routes/_authenticated/$sellerId/settings/package-types'
32
+ import { Route as SettingsDeliveryMethodsRouteImport } from './routes/_authenticated/$sellerId/settings/delivery-methods'
33
+ import { Route as ProductsNewRouteImport } from './routes/_authenticated/$sellerId/products/new'
34
+ import { Route as ProductsProductIdRouteImport } from './routes/_authenticated/$sellerId/products/$productId'
35
+ import { Route as PayoutsPayoutIdRouteImport } from './routes/_authenticated/$sellerId/payouts/$payoutId'
36
+ import { Route as OrdersOrderIdRouteImport } from './routes/_authenticated/$sellerId/orders/$orderId'
37
+
38
+ const resetPasswordRoute = resetPasswordRouteImport.update({
39
+ id: '/reset-password',
40
+ path: '/reset-password',
41
+ getParentRoute: () => rootRouteImport,
42
+ } as any)
43
+ const loginRoute = loginRouteImport.update({
44
+ id: '/login',
45
+ path: '/login',
46
+ getParentRoute: () => rootRouteImport,
47
+ } as any)
48
+ const forgotPasswordRoute = forgotPasswordRouteImport.update({
49
+ id: '/forgot-password',
50
+ path: '/forgot-password',
51
+ getParentRoute: () => rootRouteImport,
52
+ } as any)
53
+ const authenticatedRoute = authenticatedRouteImport.update({
54
+ id: '/_authenticated',
55
+ getParentRoute: () => rootRouteImport,
56
+ } as any)
57
+ const authenticatedIndexRoute = authenticatedIndexRouteImport.update({
58
+ id: '/',
59
+ path: '/',
60
+ getParentRoute: () => authenticatedRoute,
61
+ } as any)
62
+ const acceptInvitationDotinvitationIdRoute =
63
+ acceptInvitationDotinvitationIdRouteImport.update({
64
+ id: '/accept-invitation/$invitationId',
65
+ path: '/accept-invitation/$invitationId',
66
+ getParentRoute: () => rootRouteImport,
67
+ } as any)
68
+ const authenticatedSellerIdRoute = authenticatedSellerIdRouteImport.update({
69
+ id: '/$sellerId',
70
+ path: '/$sellerId',
71
+ getParentRoute: () => authenticatedRoute,
72
+ } as any)
73
+ const IndexRoute = IndexRouteImport.update({
74
+ id: '/',
75
+ path: '/',
76
+ getParentRoute: () => authenticatedSellerIdRoute,
77
+ } as any)
78
+ const SettingsRoute = SettingsRouteImport.update({
79
+ id: '/settings',
80
+ path: '/settings',
81
+ getParentRoute: () => authenticatedSellerIdRoute,
82
+ } as any)
83
+ const ProfileRoute = ProfileRouteImport.update({
84
+ id: '/profile',
85
+ path: '/profile',
86
+ getParentRoute: () => authenticatedSellerIdRoute,
87
+ } as any)
88
+ const OnboardingRoute = OnboardingRouteImport.update({
89
+ id: '/onboarding',
90
+ path: '/onboarding',
91
+ getParentRoute: () => authenticatedSellerIdRoute,
92
+ } as any)
93
+ const SettingsIndexRoute = SettingsIndexRouteImport.update({
94
+ id: '/',
95
+ path: '/',
96
+ getParentRoute: () => SettingsRoute,
97
+ } as any)
98
+ const ProductsIndexRoute = ProductsIndexRouteImport.update({
99
+ id: '/products/',
100
+ path: '/products/',
101
+ getParentRoute: () => authenticatedSellerIdRoute,
102
+ } as any)
103
+ const PayoutsIndexRoute = PayoutsIndexRouteImport.update({
104
+ id: '/payouts/',
105
+ path: '/payouts/',
106
+ getParentRoute: () => authenticatedSellerIdRoute,
107
+ } as any)
108
+ const OrdersIndexRoute = OrdersIndexRouteImport.update({
109
+ id: '/orders/',
110
+ path: '/orders/',
111
+ getParentRoute: () => authenticatedSellerIdRoute,
112
+ } as any)
113
+ const EarningsIndexRoute = EarningsIndexRouteImport.update({
114
+ id: '/earnings/',
115
+ path: '/earnings/',
116
+ getParentRoute: () => authenticatedSellerIdRoute,
117
+ } as any)
118
+ const SettingsTeamRoute = SettingsTeamRouteImport.update({
119
+ id: '/team',
120
+ path: '/team',
121
+ getParentRoute: () => SettingsRoute,
122
+ } as any)
123
+ const SettingsStockLocationsRoute = SettingsStockLocationsRouteImport.update({
124
+ id: '/stock-locations',
125
+ path: '/stock-locations',
126
+ getParentRoute: () => SettingsRoute,
127
+ } as any)
128
+ const SettingsPoliciesRoute = SettingsPoliciesRouteImport.update({
129
+ id: '/policies',
130
+ path: '/policies',
131
+ getParentRoute: () => SettingsRoute,
132
+ } as any)
133
+ const SettingsPackageTypesRoute = SettingsPackageTypesRouteImport.update({
134
+ id: '/package-types',
135
+ path: '/package-types',
136
+ getParentRoute: () => SettingsRoute,
137
+ } as any)
138
+ const SettingsDeliveryMethodsRoute = SettingsDeliveryMethodsRouteImport.update({
139
+ id: '/delivery-methods',
140
+ path: '/delivery-methods',
141
+ getParentRoute: () => SettingsRoute,
142
+ } as any)
143
+ const ProductsNewRoute = ProductsNewRouteImport.update({
144
+ id: '/products/new',
145
+ path: '/products/new',
146
+ getParentRoute: () => authenticatedSellerIdRoute,
147
+ } as any)
148
+ const ProductsProductIdRoute = ProductsProductIdRouteImport.update({
149
+ id: '/products/$productId',
150
+ path: '/products/$productId',
151
+ getParentRoute: () => authenticatedSellerIdRoute,
152
+ } as any)
153
+ const PayoutsPayoutIdRoute = PayoutsPayoutIdRouteImport.update({
154
+ id: '/payouts/$payoutId',
155
+ path: '/payouts/$payoutId',
156
+ getParentRoute: () => authenticatedSellerIdRoute,
157
+ } as any)
158
+ const OrdersOrderIdRoute = OrdersOrderIdRouteImport.update({
159
+ id: '/orders/$orderId',
160
+ path: '/orders/$orderId',
161
+ getParentRoute: () => authenticatedSellerIdRoute,
162
+ } as any)
163
+
164
+ export interface FileRoutesByFullPath {
165
+ '/': typeof authenticatedIndexRoute
166
+ '/forgot-password': typeof forgotPasswordRoute
167
+ '/login': typeof loginRoute
168
+ '/reset-password': typeof resetPasswordRoute
169
+ '/$sellerId': typeof authenticatedSellerIdRouteWithChildren
170
+ '/accept-invitation/$invitationId': typeof acceptInvitationDotinvitationIdRoute
171
+ '/$sellerId/onboarding': typeof OnboardingRoute
172
+ '/$sellerId/profile': typeof ProfileRoute
173
+ '/$sellerId/settings': typeof SettingsRouteWithChildren
174
+ '/$sellerId/': typeof IndexRoute
175
+ '/$sellerId/orders/$orderId': typeof OrdersOrderIdRoute
176
+ '/$sellerId/payouts/$payoutId': typeof PayoutsPayoutIdRoute
177
+ '/$sellerId/products/$productId': typeof ProductsProductIdRoute
178
+ '/$sellerId/products/new': typeof ProductsNewRoute
179
+ '/$sellerId/settings/delivery-methods': typeof SettingsDeliveryMethodsRoute
180
+ '/$sellerId/settings/package-types': typeof SettingsPackageTypesRoute
181
+ '/$sellerId/settings/policies': typeof SettingsPoliciesRoute
182
+ '/$sellerId/settings/stock-locations': typeof SettingsStockLocationsRoute
183
+ '/$sellerId/settings/team': typeof SettingsTeamRoute
184
+ '/$sellerId/earnings/': typeof EarningsIndexRoute
185
+ '/$sellerId/orders/': typeof OrdersIndexRoute
186
+ '/$sellerId/payouts/': typeof PayoutsIndexRoute
187
+ '/$sellerId/products/': typeof ProductsIndexRoute
188
+ '/$sellerId/settings/': typeof SettingsIndexRoute
189
+ }
190
+ export interface FileRoutesByTo {
191
+ '/forgot-password': typeof forgotPasswordRoute
192
+ '/login': typeof loginRoute
193
+ '/reset-password': typeof resetPasswordRoute
194
+ '/accept-invitation/$invitationId': typeof acceptInvitationDotinvitationIdRoute
195
+ '/': typeof authenticatedIndexRoute
196
+ '/$sellerId/onboarding': typeof OnboardingRoute
197
+ '/$sellerId/profile': typeof ProfileRoute
198
+ '/$sellerId': typeof IndexRoute
199
+ '/$sellerId/orders/$orderId': typeof OrdersOrderIdRoute
200
+ '/$sellerId/payouts/$payoutId': typeof PayoutsPayoutIdRoute
201
+ '/$sellerId/products/$productId': typeof ProductsProductIdRoute
202
+ '/$sellerId/products/new': typeof ProductsNewRoute
203
+ '/$sellerId/settings/delivery-methods': typeof SettingsDeliveryMethodsRoute
204
+ '/$sellerId/settings/package-types': typeof SettingsPackageTypesRoute
205
+ '/$sellerId/settings/policies': typeof SettingsPoliciesRoute
206
+ '/$sellerId/settings/stock-locations': typeof SettingsStockLocationsRoute
207
+ '/$sellerId/settings/team': typeof SettingsTeamRoute
208
+ '/$sellerId/earnings': typeof EarningsIndexRoute
209
+ '/$sellerId/orders': typeof OrdersIndexRoute
210
+ '/$sellerId/payouts': typeof PayoutsIndexRoute
211
+ '/$sellerId/products': typeof ProductsIndexRoute
212
+ '/$sellerId/settings': typeof SettingsIndexRoute
213
+ }
214
+ export interface FileRoutesById {
215
+ __root__: typeof rootRouteImport
216
+ '/_authenticated': typeof authenticatedRouteWithChildren
217
+ '/forgot-password': typeof forgotPasswordRoute
218
+ '/login': typeof loginRoute
219
+ '/reset-password': typeof resetPasswordRoute
220
+ '/_authenticated/$sellerId': typeof authenticatedSellerIdRouteWithChildren
221
+ '/accept-invitation/$invitationId': typeof acceptInvitationDotinvitationIdRoute
222
+ '/_authenticated/': typeof authenticatedIndexRoute
223
+ '/_authenticated/$sellerId/onboarding': typeof OnboardingRoute
224
+ '/_authenticated/$sellerId/profile': typeof ProfileRoute
225
+ '/_authenticated/$sellerId/settings': typeof SettingsRouteWithChildren
226
+ '/_authenticated/$sellerId/': typeof IndexRoute
227
+ '/_authenticated/$sellerId/orders/$orderId': typeof OrdersOrderIdRoute
228
+ '/_authenticated/$sellerId/payouts/$payoutId': typeof PayoutsPayoutIdRoute
229
+ '/_authenticated/$sellerId/products/$productId': typeof ProductsProductIdRoute
230
+ '/_authenticated/$sellerId/products/new': typeof ProductsNewRoute
231
+ '/_authenticated/$sellerId/settings/delivery-methods': typeof SettingsDeliveryMethodsRoute
232
+ '/_authenticated/$sellerId/settings/package-types': typeof SettingsPackageTypesRoute
233
+ '/_authenticated/$sellerId/settings/policies': typeof SettingsPoliciesRoute
234
+ '/_authenticated/$sellerId/settings/stock-locations': typeof SettingsStockLocationsRoute
235
+ '/_authenticated/$sellerId/settings/team': typeof SettingsTeamRoute
236
+ '/_authenticated/$sellerId/earnings/': typeof EarningsIndexRoute
237
+ '/_authenticated/$sellerId/orders/': typeof OrdersIndexRoute
238
+ '/_authenticated/$sellerId/payouts/': typeof PayoutsIndexRoute
239
+ '/_authenticated/$sellerId/products/': typeof ProductsIndexRoute
240
+ '/_authenticated/$sellerId/settings/': typeof SettingsIndexRoute
241
+ }
242
+ export interface FileRouteTypes {
243
+ fileRoutesByFullPath: FileRoutesByFullPath
244
+ fullPaths:
245
+ | '/'
246
+ | '/forgot-password'
247
+ | '/login'
248
+ | '/reset-password'
249
+ | '/$sellerId'
250
+ | '/accept-invitation/$invitationId'
251
+ | '/$sellerId/onboarding'
252
+ | '/$sellerId/profile'
253
+ | '/$sellerId/settings'
254
+ | '/$sellerId/'
255
+ | '/$sellerId/orders/$orderId'
256
+ | '/$sellerId/payouts/$payoutId'
257
+ | '/$sellerId/products/$productId'
258
+ | '/$sellerId/products/new'
259
+ | '/$sellerId/settings/delivery-methods'
260
+ | '/$sellerId/settings/package-types'
261
+ | '/$sellerId/settings/policies'
262
+ | '/$sellerId/settings/stock-locations'
263
+ | '/$sellerId/settings/team'
264
+ | '/$sellerId/earnings/'
265
+ | '/$sellerId/orders/'
266
+ | '/$sellerId/payouts/'
267
+ | '/$sellerId/products/'
268
+ | '/$sellerId/settings/'
269
+ fileRoutesByTo: FileRoutesByTo
270
+ to:
271
+ | '/forgot-password'
272
+ | '/login'
273
+ | '/reset-password'
274
+ | '/accept-invitation/$invitationId'
275
+ | '/'
276
+ | '/$sellerId/onboarding'
277
+ | '/$sellerId/profile'
278
+ | '/$sellerId'
279
+ | '/$sellerId/orders/$orderId'
280
+ | '/$sellerId/payouts/$payoutId'
281
+ | '/$sellerId/products/$productId'
282
+ | '/$sellerId/products/new'
283
+ | '/$sellerId/settings/delivery-methods'
284
+ | '/$sellerId/settings/package-types'
285
+ | '/$sellerId/settings/policies'
286
+ | '/$sellerId/settings/stock-locations'
287
+ | '/$sellerId/settings/team'
288
+ | '/$sellerId/earnings'
289
+ | '/$sellerId/orders'
290
+ | '/$sellerId/payouts'
291
+ | '/$sellerId/products'
292
+ | '/$sellerId/settings'
293
+ id:
294
+ | '__root__'
295
+ | '/_authenticated'
296
+ | '/forgot-password'
297
+ | '/login'
298
+ | '/reset-password'
299
+ | '/_authenticated/$sellerId'
300
+ | '/accept-invitation/$invitationId'
301
+ | '/_authenticated/'
302
+ | '/_authenticated/$sellerId/onboarding'
303
+ | '/_authenticated/$sellerId/profile'
304
+ | '/_authenticated/$sellerId/settings'
305
+ | '/_authenticated/$sellerId/'
306
+ | '/_authenticated/$sellerId/orders/$orderId'
307
+ | '/_authenticated/$sellerId/payouts/$payoutId'
308
+ | '/_authenticated/$sellerId/products/$productId'
309
+ | '/_authenticated/$sellerId/products/new'
310
+ | '/_authenticated/$sellerId/settings/delivery-methods'
311
+ | '/_authenticated/$sellerId/settings/package-types'
312
+ | '/_authenticated/$sellerId/settings/policies'
313
+ | '/_authenticated/$sellerId/settings/stock-locations'
314
+ | '/_authenticated/$sellerId/settings/team'
315
+ | '/_authenticated/$sellerId/earnings/'
316
+ | '/_authenticated/$sellerId/orders/'
317
+ | '/_authenticated/$sellerId/payouts/'
318
+ | '/_authenticated/$sellerId/products/'
319
+ | '/_authenticated/$sellerId/settings/'
320
+ fileRoutesById: FileRoutesById
321
+ }
322
+ export interface RootRouteChildren {
323
+ authenticatedRoute: typeof authenticatedRouteWithChildren
324
+ forgotPasswordRoute: typeof forgotPasswordRoute
325
+ loginRoute: typeof loginRoute
326
+ resetPasswordRoute: typeof resetPasswordRoute
327
+ acceptInvitationDotinvitationIdRoute: typeof acceptInvitationDotinvitationIdRoute
328
+ }
329
+
330
+ declare module '@tanstack/react-router' {
331
+ interface FileRoutesByPath {
332
+ '/reset-password': {
333
+ id: '/reset-password'
334
+ path: '/reset-password'
335
+ fullPath: '/reset-password'
336
+ preLoaderRoute: typeof resetPasswordRouteImport
337
+ parentRoute: typeof rootRouteImport
338
+ }
339
+ '/login': {
340
+ id: '/login'
341
+ path: '/login'
342
+ fullPath: '/login'
343
+ preLoaderRoute: typeof loginRouteImport
344
+ parentRoute: typeof rootRouteImport
345
+ }
346
+ '/forgot-password': {
347
+ id: '/forgot-password'
348
+ path: '/forgot-password'
349
+ fullPath: '/forgot-password'
350
+ preLoaderRoute: typeof forgotPasswordRouteImport
351
+ parentRoute: typeof rootRouteImport
352
+ }
353
+ '/_authenticated': {
354
+ id: '/_authenticated'
355
+ path: ''
356
+ fullPath: '/'
357
+ preLoaderRoute: typeof authenticatedRouteImport
358
+ parentRoute: typeof rootRouteImport
359
+ }
360
+ '/_authenticated/': {
361
+ id: '/_authenticated/'
362
+ path: '/'
363
+ fullPath: '/'
364
+ preLoaderRoute: typeof authenticatedIndexRouteImport
365
+ parentRoute: typeof authenticatedRoute
366
+ }
367
+ '/accept-invitation/$invitationId': {
368
+ id: '/accept-invitation/$invitationId'
369
+ path: '/accept-invitation/$invitationId'
370
+ fullPath: '/accept-invitation/$invitationId'
371
+ preLoaderRoute: typeof acceptInvitationDotinvitationIdRouteImport
372
+ parentRoute: typeof rootRouteImport
373
+ }
374
+ '/_authenticated/$sellerId': {
375
+ id: '/_authenticated/$sellerId'
376
+ path: '/$sellerId'
377
+ fullPath: '/$sellerId'
378
+ preLoaderRoute: typeof authenticatedSellerIdRouteImport
379
+ parentRoute: typeof authenticatedRoute
380
+ }
381
+ '/_authenticated/$sellerId/': {
382
+ id: '/_authenticated/$sellerId/'
383
+ path: '/'
384
+ fullPath: '/$sellerId/'
385
+ preLoaderRoute: typeof IndexRouteImport
386
+ parentRoute: typeof authenticatedSellerIdRoute
387
+ }
388
+ '/_authenticated/$sellerId/settings': {
389
+ id: '/_authenticated/$sellerId/settings'
390
+ path: '/settings'
391
+ fullPath: '/$sellerId/settings'
392
+ preLoaderRoute: typeof SettingsRouteImport
393
+ parentRoute: typeof authenticatedSellerIdRoute
394
+ }
395
+ '/_authenticated/$sellerId/profile': {
396
+ id: '/_authenticated/$sellerId/profile'
397
+ path: '/profile'
398
+ fullPath: '/$sellerId/profile'
399
+ preLoaderRoute: typeof ProfileRouteImport
400
+ parentRoute: typeof authenticatedSellerIdRoute
401
+ }
402
+ '/_authenticated/$sellerId/onboarding': {
403
+ id: '/_authenticated/$sellerId/onboarding'
404
+ path: '/onboarding'
405
+ fullPath: '/$sellerId/onboarding'
406
+ preLoaderRoute: typeof OnboardingRouteImport
407
+ parentRoute: typeof authenticatedSellerIdRoute
408
+ }
409
+ '/_authenticated/$sellerId/settings/': {
410
+ id: '/_authenticated/$sellerId/settings/'
411
+ path: '/'
412
+ fullPath: '/$sellerId/settings/'
413
+ preLoaderRoute: typeof SettingsIndexRouteImport
414
+ parentRoute: typeof SettingsRoute
415
+ }
416
+ '/_authenticated/$sellerId/products/': {
417
+ id: '/_authenticated/$sellerId/products/'
418
+ path: '/products'
419
+ fullPath: '/$sellerId/products/'
420
+ preLoaderRoute: typeof ProductsIndexRouteImport
421
+ parentRoute: typeof authenticatedSellerIdRoute
422
+ }
423
+ '/_authenticated/$sellerId/payouts/': {
424
+ id: '/_authenticated/$sellerId/payouts/'
425
+ path: '/payouts'
426
+ fullPath: '/$sellerId/payouts/'
427
+ preLoaderRoute: typeof PayoutsIndexRouteImport
428
+ parentRoute: typeof authenticatedSellerIdRoute
429
+ }
430
+ '/_authenticated/$sellerId/orders/': {
431
+ id: '/_authenticated/$sellerId/orders/'
432
+ path: '/orders'
433
+ fullPath: '/$sellerId/orders/'
434
+ preLoaderRoute: typeof OrdersIndexRouteImport
435
+ parentRoute: typeof authenticatedSellerIdRoute
436
+ }
437
+ '/_authenticated/$sellerId/earnings/': {
438
+ id: '/_authenticated/$sellerId/earnings/'
439
+ path: '/earnings'
440
+ fullPath: '/$sellerId/earnings/'
441
+ preLoaderRoute: typeof EarningsIndexRouteImport
442
+ parentRoute: typeof authenticatedSellerIdRoute
443
+ }
444
+ '/_authenticated/$sellerId/settings/team': {
445
+ id: '/_authenticated/$sellerId/settings/team'
446
+ path: '/team'
447
+ fullPath: '/$sellerId/settings/team'
448
+ preLoaderRoute: typeof SettingsTeamRouteImport
449
+ parentRoute: typeof SettingsRoute
450
+ }
451
+ '/_authenticated/$sellerId/settings/stock-locations': {
452
+ id: '/_authenticated/$sellerId/settings/stock-locations'
453
+ path: '/stock-locations'
454
+ fullPath: '/$sellerId/settings/stock-locations'
455
+ preLoaderRoute: typeof SettingsStockLocationsRouteImport
456
+ parentRoute: typeof SettingsRoute
457
+ }
458
+ '/_authenticated/$sellerId/settings/policies': {
459
+ id: '/_authenticated/$sellerId/settings/policies'
460
+ path: '/policies'
461
+ fullPath: '/$sellerId/settings/policies'
462
+ preLoaderRoute: typeof SettingsPoliciesRouteImport
463
+ parentRoute: typeof SettingsRoute
464
+ }
465
+ '/_authenticated/$sellerId/settings/package-types': {
466
+ id: '/_authenticated/$sellerId/settings/package-types'
467
+ path: '/package-types'
468
+ fullPath: '/$sellerId/settings/package-types'
469
+ preLoaderRoute: typeof SettingsPackageTypesRouteImport
470
+ parentRoute: typeof SettingsRoute
471
+ }
472
+ '/_authenticated/$sellerId/settings/delivery-methods': {
473
+ id: '/_authenticated/$sellerId/settings/delivery-methods'
474
+ path: '/delivery-methods'
475
+ fullPath: '/$sellerId/settings/delivery-methods'
476
+ preLoaderRoute: typeof SettingsDeliveryMethodsRouteImport
477
+ parentRoute: typeof SettingsRoute
478
+ }
479
+ '/_authenticated/$sellerId/products/new': {
480
+ id: '/_authenticated/$sellerId/products/new'
481
+ path: '/products/new'
482
+ fullPath: '/$sellerId/products/new'
483
+ preLoaderRoute: typeof ProductsNewRouteImport
484
+ parentRoute: typeof authenticatedSellerIdRoute
485
+ }
486
+ '/_authenticated/$sellerId/products/$productId': {
487
+ id: '/_authenticated/$sellerId/products/$productId'
488
+ path: '/products/$productId'
489
+ fullPath: '/$sellerId/products/$productId'
490
+ preLoaderRoute: typeof ProductsProductIdRouteImport
491
+ parentRoute: typeof authenticatedSellerIdRoute
492
+ }
493
+ '/_authenticated/$sellerId/payouts/$payoutId': {
494
+ id: '/_authenticated/$sellerId/payouts/$payoutId'
495
+ path: '/payouts/$payoutId'
496
+ fullPath: '/$sellerId/payouts/$payoutId'
497
+ preLoaderRoute: typeof PayoutsPayoutIdRouteImport
498
+ parentRoute: typeof authenticatedSellerIdRoute
499
+ }
500
+ '/_authenticated/$sellerId/orders/$orderId': {
501
+ id: '/_authenticated/$sellerId/orders/$orderId'
502
+ path: '/orders/$orderId'
503
+ fullPath: '/$sellerId/orders/$orderId'
504
+ preLoaderRoute: typeof OrdersOrderIdRouteImport
505
+ parentRoute: typeof authenticatedSellerIdRoute
506
+ }
507
+ }
508
+ }
509
+
510
+ interface SettingsRouteChildren {
511
+ SettingsDeliveryMethodsRoute: typeof SettingsDeliveryMethodsRoute
512
+ SettingsPackageTypesRoute: typeof SettingsPackageTypesRoute
513
+ SettingsPoliciesRoute: typeof SettingsPoliciesRoute
514
+ SettingsStockLocationsRoute: typeof SettingsStockLocationsRoute
515
+ SettingsTeamRoute: typeof SettingsTeamRoute
516
+ SettingsIndexRoute: typeof SettingsIndexRoute
517
+ }
518
+
519
+ const SettingsRouteChildren: SettingsRouteChildren = {
520
+ SettingsDeliveryMethodsRoute: SettingsDeliveryMethodsRoute,
521
+ SettingsPackageTypesRoute: SettingsPackageTypesRoute,
522
+ SettingsPoliciesRoute: SettingsPoliciesRoute,
523
+ SettingsStockLocationsRoute: SettingsStockLocationsRoute,
524
+ SettingsTeamRoute: SettingsTeamRoute,
525
+ SettingsIndexRoute: SettingsIndexRoute,
526
+ }
527
+
528
+ const SettingsRouteWithChildren = SettingsRoute._addFileChildren(
529
+ SettingsRouteChildren,
530
+ )
531
+
532
+ interface authenticatedSellerIdRouteChildren {
533
+ OnboardingRoute: typeof OnboardingRoute
534
+ ProfileRoute: typeof ProfileRoute
535
+ SettingsRoute: typeof SettingsRouteWithChildren
536
+ IndexRoute: typeof IndexRoute
537
+ OrdersOrderIdRoute: typeof OrdersOrderIdRoute
538
+ PayoutsPayoutIdRoute: typeof PayoutsPayoutIdRoute
539
+ ProductsProductIdRoute: typeof ProductsProductIdRoute
540
+ ProductsNewRoute: typeof ProductsNewRoute
541
+ EarningsIndexRoute: typeof EarningsIndexRoute
542
+ OrdersIndexRoute: typeof OrdersIndexRoute
543
+ PayoutsIndexRoute: typeof PayoutsIndexRoute
544
+ ProductsIndexRoute: typeof ProductsIndexRoute
545
+ }
546
+
547
+ const authenticatedSellerIdRouteChildren: authenticatedSellerIdRouteChildren = {
548
+ OnboardingRoute: OnboardingRoute,
549
+ ProfileRoute: ProfileRoute,
550
+ SettingsRoute: SettingsRouteWithChildren,
551
+ IndexRoute: IndexRoute,
552
+ OrdersOrderIdRoute: OrdersOrderIdRoute,
553
+ PayoutsPayoutIdRoute: PayoutsPayoutIdRoute,
554
+ ProductsProductIdRoute: ProductsProductIdRoute,
555
+ ProductsNewRoute: ProductsNewRoute,
556
+ EarningsIndexRoute: EarningsIndexRoute,
557
+ OrdersIndexRoute: OrdersIndexRoute,
558
+ PayoutsIndexRoute: PayoutsIndexRoute,
559
+ ProductsIndexRoute: ProductsIndexRoute,
560
+ }
561
+
562
+ const authenticatedSellerIdRouteWithChildren =
563
+ authenticatedSellerIdRoute._addFileChildren(
564
+ authenticatedSellerIdRouteChildren,
565
+ )
566
+
567
+ interface authenticatedRouteChildren {
568
+ authenticatedSellerIdRoute: typeof authenticatedSellerIdRouteWithChildren
569
+ authenticatedIndexRoute: typeof authenticatedIndexRoute
570
+ }
571
+
572
+ const authenticatedRouteChildren: authenticatedRouteChildren = {
573
+ authenticatedSellerIdRoute: authenticatedSellerIdRouteWithChildren,
574
+ authenticatedIndexRoute: authenticatedIndexRoute,
575
+ }
576
+
577
+ const authenticatedRouteWithChildren = authenticatedRoute._addFileChildren(
578
+ authenticatedRouteChildren,
579
+ )
580
+
581
+ const rootRouteChildren: RootRouteChildren = {
582
+ authenticatedRoute: authenticatedRouteWithChildren,
583
+ forgotPasswordRoute: forgotPasswordRoute,
584
+ loginRoute: loginRoute,
585
+ resetPasswordRoute: resetPasswordRoute,
586
+ acceptInvitationDotinvitationIdRoute: acceptInvitationDotinvitationIdRoute,
587
+ }
588
+ export const routeTree = rootRouteImport
589
+ ._addFileChildren(rootRouteChildren)
590
+ ._addFileTypes<FileRouteTypes>()
@@ -0,0 +1,15 @@
1
+ import { Toaster } from '@spree/dashboard-ui'
2
+ import { createRootRoute, Outlet } from '@tanstack/react-router'
3
+
4
+ export const Route = createRootRoute({
5
+ component: RootLayout,
6
+ })
7
+
8
+ function RootLayout() {
9
+ return (
10
+ <>
11
+ <Outlet />
12
+ <Toaster />
13
+ </>
14
+ )
15
+ }
@@ -0,0 +1,15 @@
1
+ import { type ResourceSearch, resourceSearchSchema } from '@spree/dashboard-core'
2
+ import { createFileRoute } from '@tanstack/react-router'
3
+ import { EarningsPage } from '../../../../pages/earnings'
4
+
5
+ /** What this seller has earned: their balance, then the ledger behind it. */
6
+ export const Route = createFileRoute('/_authenticated/$sellerId/earnings/')({
7
+ validateSearch: resourceSearchSchema,
8
+ component: EarningsRoute,
9
+ })
10
+
11
+ function EarningsRoute() {
12
+ const search = Route.useSearch() as ResourceSearch
13
+
14
+ return <EarningsPage search={search} />
15
+ }
@@ -0,0 +1,6 @@
1
+ import { createFileRoute } from '@tanstack/react-router'
2
+ import { HomePage } from '../../../pages/home'
3
+
4
+ export const Route = createFileRoute('/_authenticated/$sellerId/')({
5
+ component: HomePage,
6
+ })
@@ -0,0 +1,6 @@
1
+ import { createFileRoute } from '@tanstack/react-router'
2
+ import { OnboardingPage } from '../../../pages/onboarding'
3
+
4
+ export const Route = createFileRoute('/_authenticated/$sellerId/onboarding')({
5
+ component: OnboardingPage,
6
+ })
@@ -0,0 +1,6 @@
1
+ import { createFileRoute } from '@tanstack/react-router'
2
+ import { OrderPage } from '../../../../pages/order'
3
+
4
+ export const Route = createFileRoute('/_authenticated/$sellerId/orders/$orderId')({
5
+ component: OrderPage,
6
+ })
@@ -0,0 +1,15 @@
1
+ import { type ResourceSearch, resourceSearchSchema } from '@spree/dashboard-core'
2
+ import { createFileRoute } from '@tanstack/react-router'
3
+ import { OrdersPage } from '../../../../pages/orders'
4
+
5
+ export const Route = createFileRoute('/_authenticated/$sellerId/orders/')({
6
+ validateSearch: resourceSearchSchema,
7
+ component: OrdersRoute,
8
+ })
9
+
10
+ function OrdersRoute() {
11
+ // Cast: the inferred type unions with the parent layout's shape.
12
+ const search = Route.useSearch() as ResourceSearch
13
+
14
+ return <OrdersPage search={search} />
15
+ }
@@ -0,0 +1,7 @@
1
+ import { createFileRoute } from '@tanstack/react-router'
2
+ import { PayoutPage } from '../../../../pages/payout'
3
+
4
+ /** One settlement, and the earnings it covered. */
5
+ export const Route = createFileRoute('/_authenticated/$sellerId/payouts/$payoutId')({
6
+ component: PayoutPage,
7
+ })