@infuro/cms-core 1.0.44 → 1.0.46

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 (66) hide show
  1. package/README.md +19 -2
  2. package/dist/admin.cjs +1413 -620
  3. package/dist/admin.d.cts +8 -2
  4. package/dist/admin.d.ts +8 -2
  5. package/dist/admin.js +1414 -621
  6. package/dist/api.cjs +40 -37
  7. package/dist/api.d.cts +3 -1
  8. package/dist/api.d.ts +3 -1
  9. package/dist/api.js +8 -5
  10. package/dist/auth.cjs +23 -23
  11. package/dist/auth.d.cts +1 -0
  12. package/dist/auth.d.ts +1 -0
  13. package/dist/auth.js +2 -2
  14. package/dist/chunk-2KUCQVAQ.js +936 -0
  15. package/dist/chunk-3K5AIEIZ.js +256 -0
  16. package/dist/{chunk-I6NH72MO.js → chunk-57O3HZPG.js} +9 -1
  17. package/dist/chunk-7PMHZRF3.cjs +872 -0
  18. package/dist/chunk-BXYZDMTZ.cjs +953 -0
  19. package/dist/chunk-CQHXW4TR.js +107 -0
  20. package/dist/{chunk-NNQBWDCI.js → chunk-CRYKVJTO.js} +55 -959
  21. package/dist/chunk-DBPSJYLZ.js +47 -0
  22. package/dist/{chunk-TAHX46EI.cjs → chunk-FBKDMRQL.cjs} +9 -1
  23. package/dist/chunk-GUSHM5HN.js +862 -0
  24. package/dist/chunk-HY3AXLOI.cjs +265 -0
  25. package/dist/chunk-L3525VXI.js +243 -0
  26. package/dist/{chunk-ZMRQ72F6.cjs → chunk-NBY4NVTY.cjs} +3 -3
  27. package/dist/chunk-OY2YTBMP.cjs +50 -0
  28. package/dist/{chunk-BLR6H5GL.js → chunk-SF2XKMCI.js} +3 -3
  29. package/dist/{chunk-22FFHLTO.cjs → chunk-TCSGFAWB.cjs} +56 -970
  30. package/dist/{chunk-P2IWWBJV.cjs → chunk-UDVLFVEC.cjs} +1314 -601
  31. package/dist/{chunk-SQGBHYJF.js → chunk-UKC3HYXI.js} +1245 -548
  32. package/dist/chunk-V25RDUOU.cjs +248 -0
  33. package/dist/chunk-XMRMZ6NQ.cjs +109 -0
  34. package/dist/cli.cjs +9 -4
  35. package/dist/cli.js +9 -4
  36. package/dist/{email-queue-TPZWLTIV.cjs → email-queue-6NJY6HNM.cjs} +7 -5
  37. package/dist/email-queue-OI2HSCGE.js +4 -0
  38. package/dist/erp-order-invoice-3GXDE443.js +3 -0
  39. package/dist/erp-order-invoice-EYYNR526.cjs +24 -0
  40. package/dist/index.cjs +426 -359
  41. package/dist/index.d.cts +308 -20
  42. package/dist/index.d.ts +308 -20
  43. package/dist/index.js +31 -110
  44. package/dist/migrations/1781800000000-CustomerPhoneNullable.ts +53 -0
  45. package/dist/migrations/1781810000000-OrderItemsVariantId.ts +44 -0
  46. package/dist/migrations/1781900000000-UserInviteStatusToken.ts +46 -0
  47. package/dist/migrations/1782000000000-ComboSlug.ts +58 -0
  48. package/dist/migrations/1782100000000-DiscountDeviceType.ts +20 -0
  49. package/dist/order-inventory-2MYRKEPC.cjs +39 -0
  50. package/dist/order-inventory-76V4XIGW.js +2 -0
  51. package/dist/order-notification-dispatcher-SBQAMM5V.cjs +21 -0
  52. package/dist/{order-notification-dispatcher-XWIJYDGA.js → order-notification-dispatcher-ZJZB2HUN.js} +5 -2
  53. package/dist/retire-soft-deleted-unique-5VXBA5XX.cjs +15 -0
  54. package/dist/retire-soft-deleted-unique-NXQIH4BC.js +2 -0
  55. package/dist/send-order-placed-emails-B5ZVJT7T.cjs +15 -0
  56. package/dist/send-order-placed-emails-WPI37KRZ.js +6 -0
  57. package/package.json +5 -4
  58. package/src/admin/admin.css +27 -24
  59. package/dist/chunk-5ELSW2UP.js +0 -150
  60. package/dist/chunk-PNOKNSG2.cjs +0 -222
  61. package/dist/chunk-WEMDMVHQ.js +0 -216
  62. package/dist/chunk-XW5ATPRW.cjs +0 -155
  63. package/dist/email-queue-CGZBVVAS.js +0 -2
  64. package/dist/erp-order-invoice-3YISSOWW.js +0 -3
  65. package/dist/erp-order-invoice-ZR5F2KTA.cjs +0 -12
  66. package/dist/order-notification-dispatcher-RU7BTGGX.cjs +0 -18
package/dist/admin.d.cts CHANGED
@@ -123,6 +123,9 @@ interface CustomCrudColumn {
123
123
  * Example: `{ field: 'status', displayName: 'Status', type: 'select', options: [{ value: 'new', label: 'New' }, ...] }`
124
124
  *
125
125
  * For `type: 'multiSelect'`: checkbox list; use `relationApi` or static `options` (values stored as string[]).
126
+ *
127
+ * For `type: 'image'`: URL + file upload via `ImageOrUrlField` (image or video URL string).
128
+ * For `type: 'file'`: upload-only control.
126
129
  */
127
130
  options?: CrudFilterSelectOption[];
128
131
  /** Initial value when creating a row (works with `select` and plain fields). */
@@ -146,6 +149,8 @@ interface CustomCrudColumn {
146
149
  /** When true, column is omitted from the list table but still available in Add/Edit. */
147
150
  hideInTable?: boolean;
148
151
  hideInEdit?: boolean;
152
+ /** When true, omit from Add/Edit form entirely (still shown in list unless hideInTable). */
153
+ hideInForm?: boolean;
149
154
  }
150
155
  interface CrudFilter {
151
156
  /** Query param name (e.g. status, dateFrom, paymentRef). List filter: select, dateRange, or text. */
@@ -320,13 +325,13 @@ type CreateEditFormProps = {
320
325
  isOpen: boolean;
321
326
  onClose: () => void;
322
327
  /** Called only after a successful POST/PUT so parents can refetch lists without reloading on cancel. */
323
- onSaveSuccess?: () => void;
328
+ onSaveSuccess?: (result?: Record<string, unknown>) => void;
324
329
  apiEndpoint: string;
325
330
  columns: any[];
326
331
  existingData?: Record<string, unknown> | null;
327
332
  /** When creating: pre-fill the modal from this row (POST only; omit `id` in payload). */
328
333
  duplicateSeed?: Record<string, unknown> | null;
329
- /** Resource key from config — used to conditionally show password fields for 'customer'. */
334
+ /** Resource key from config. */
330
335
  resource?: string;
331
336
  };
332
337
  declare function CreateEditForm({ isOpen, onClose, onSaveSuccess, apiEndpoint, columns, existingData, duplicateSeed, resource, }: CreateEditFormProps): react_jsx_runtime.JSX.Element | null;
@@ -559,6 +564,7 @@ declare function resolveCategoryRelatedProductLabels(config: Record<string, Cate
559
564
  /**
560
565
  * Theme + toast wrapper for admin. SessionProvider must live at the app root
561
566
  * (see README providers.tsx) — do not nest a second SessionProvider here.
567
+ * Admin is light-only; browser/OS dark preference is ignored.
562
568
  */
563
569
  declare function CmsProviders({ children }: {
564
570
  children: React.ReactNode;
package/dist/admin.d.ts CHANGED
@@ -123,6 +123,9 @@ interface CustomCrudColumn {
123
123
  * Example: `{ field: 'status', displayName: 'Status', type: 'select', options: [{ value: 'new', label: 'New' }, ...] }`
124
124
  *
125
125
  * For `type: 'multiSelect'`: checkbox list; use `relationApi` or static `options` (values stored as string[]).
126
+ *
127
+ * For `type: 'image'`: URL + file upload via `ImageOrUrlField` (image or video URL string).
128
+ * For `type: 'file'`: upload-only control.
126
129
  */
127
130
  options?: CrudFilterSelectOption[];
128
131
  /** Initial value when creating a row (works with `select` and plain fields). */
@@ -146,6 +149,8 @@ interface CustomCrudColumn {
146
149
  /** When true, column is omitted from the list table but still available in Add/Edit. */
147
150
  hideInTable?: boolean;
148
151
  hideInEdit?: boolean;
152
+ /** When true, omit from Add/Edit form entirely (still shown in list unless hideInTable). */
153
+ hideInForm?: boolean;
149
154
  }
150
155
  interface CrudFilter {
151
156
  /** Query param name (e.g. status, dateFrom, paymentRef). List filter: select, dateRange, or text. */
@@ -320,13 +325,13 @@ type CreateEditFormProps = {
320
325
  isOpen: boolean;
321
326
  onClose: () => void;
322
327
  /** Called only after a successful POST/PUT so parents can refetch lists without reloading on cancel. */
323
- onSaveSuccess?: () => void;
328
+ onSaveSuccess?: (result?: Record<string, unknown>) => void;
324
329
  apiEndpoint: string;
325
330
  columns: any[];
326
331
  existingData?: Record<string, unknown> | null;
327
332
  /** When creating: pre-fill the modal from this row (POST only; omit `id` in payload). */
328
333
  duplicateSeed?: Record<string, unknown> | null;
329
- /** Resource key from config — used to conditionally show password fields for 'customer'. */
334
+ /** Resource key from config. */
330
335
  resource?: string;
331
336
  };
332
337
  declare function CreateEditForm({ isOpen, onClose, onSaveSuccess, apiEndpoint, columns, existingData, duplicateSeed, resource, }: CreateEditFormProps): react_jsx_runtime.JSX.Element | null;
@@ -559,6 +564,7 @@ declare function resolveCategoryRelatedProductLabels(config: Record<string, Cate
559
564
  /**
560
565
  * Theme + toast wrapper for admin. SessionProvider must live at the app root
561
566
  * (see README providers.tsx) — do not nest a second SessionProvider here.
567
+ * Admin is light-only; browser/OS dark preference is ignored.
562
568
  */
563
569
  declare function CmsProviders({ children }: {
564
570
  children: React.ReactNode;