@infuro/cms-core 1.0.45 → 1.0.47

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 (82) hide show
  1. package/README.md +19 -2
  2. package/dist/admin.cjs +4249 -2872
  3. package/dist/admin.d.cts +24 -4
  4. package/dist/admin.d.ts +24 -4
  5. package/dist/admin.js +3179 -1804
  6. package/dist/api.cjs +41 -39
  7. package/dist/api.d.cts +10 -4
  8. package/dist/api.d.ts +10 -4
  9. package/dist/api.js +9 -7
  10. package/dist/auth.cjs +55 -51
  11. package/dist/auth.d.cts +6 -3
  12. package/dist/auth.d.ts +6 -3
  13. package/dist/auth.js +3 -3
  14. package/dist/{chunk-KFFB6EMZ.js → chunk-2HU5R2JE.js} +2 -0
  15. package/dist/chunk-2IAXTKQN.cjs +19 -0
  16. package/dist/chunk-2KUCQVAQ.js +936 -0
  17. package/dist/chunk-3K5AIEIZ.js +256 -0
  18. package/dist/{chunk-SPQFNIYJ.cjs → chunk-4PMK3RNA.cjs} +2 -0
  19. package/dist/{chunk-X6UQFV4X.cjs → chunk-77NUXO6A.cjs} +14 -12
  20. package/dist/chunk-BXYZDMTZ.cjs +953 -0
  21. package/dist/chunk-DBPSJYLZ.js +47 -0
  22. package/dist/chunk-EIZKW2PF.js +13 -0
  23. package/dist/chunk-HY3AXLOI.cjs +265 -0
  24. package/dist/{chunk-X47PBV4I.js → chunk-JE22VP6S.js} +1 -0
  25. package/dist/{chunk-DN65KDIA.js → chunk-JIWUVQ6B.js} +14 -13
  26. package/dist/{chunk-HT5DI3XW.cjs → chunk-KOTXDSQB.cjs} +1 -0
  27. package/dist/chunk-L3525VXI.js +243 -0
  28. package/dist/{chunk-22FFHLTO.cjs → chunk-LMJ7RKPF.cjs} +421 -150
  29. package/dist/chunk-OY2YTBMP.cjs +50 -0
  30. package/dist/{chunk-TAHX46EI.cjs → chunk-Q3HQEM4R.cjs} +15 -7
  31. package/dist/chunk-V25RDUOU.cjs +248 -0
  32. package/dist/{chunk-ZMRQ72F6.cjs → chunk-VUQFARRT.cjs} +10 -10
  33. package/dist/{chunk-MVXLRANV.js → chunk-W42UZLQO.js} +1977 -891
  34. package/dist/{chunk-F5XFHYTG.cjs → chunk-XUCKZPML.cjs} +2088 -991
  35. package/dist/{chunk-I6NH72MO.js → chunk-YC4NUZCS.js} +10 -2
  36. package/dist/{chunk-NNQBWDCI.js → chunk-YXH2UUEZ.js} +418 -146
  37. package/dist/{chunk-BLR6H5GL.js → chunk-ZF2RQWXB.js} +4 -4
  38. package/dist/cli.cjs +9 -4
  39. package/dist/cli.js +9 -4
  40. package/dist/{email-queue-TPZWLTIV.cjs → email-queue-6NJY6HNM.cjs} +7 -5
  41. package/dist/email-queue-OI2HSCGE.js +4 -0
  42. package/dist/{emit-order-notification-trigger-IVLWKKJL.js → emit-order-notification-trigger-6XX7LSC4.js} +1 -1
  43. package/dist/{emit-order-notification-trigger-D2N3KFHL.cjs → emit-order-notification-trigger-NASG7ZEO.cjs} +3 -3
  44. package/dist/erp-order-invoice-3GXDE443.js +3 -0
  45. package/dist/erp-order-invoice-EYYNR526.cjs +24 -0
  46. package/dist/{event-order-defaults-EMWBIGL3.cjs → event-order-defaults-7Z3UZOEH.cjs} +9 -9
  47. package/dist/{event-order-defaults-SDRNAZHC.js → event-order-defaults-XQ3IDPD7.js} +1 -1
  48. package/dist/hooks.cjs +43 -0
  49. package/dist/hooks.d.cts +10 -1
  50. package/dist/hooks.d.ts +10 -1
  51. package/dist/hooks.js +39 -1
  52. package/dist/index.cjs +429 -298
  53. package/dist/index.d.cts +317 -30
  54. package/dist/index.d.ts +317 -30
  55. package/dist/index.js +17 -13
  56. package/dist/migrations/1781810000000-OrderItemsVariantId.ts +44 -0
  57. package/dist/migrations/1781900000000-UserInviteStatusToken.ts +46 -0
  58. package/dist/migrations/1782000000000-ComboSlug.ts +58 -0
  59. package/dist/migrations/1782100000000-DiscountDeviceType.ts +20 -0
  60. package/dist/migrations/1782200000000-VendorTeamProfiles.ts +233 -0
  61. package/dist/migrations/1782300000000-AddTypeToOrderNotificationBindings.ts +75 -0
  62. package/dist/order-inventory-2MYRKEPC.cjs +39 -0
  63. package/dist/order-inventory-76V4XIGW.js +2 -0
  64. package/dist/{order-notification-dispatcher-XWIJYDGA.js → order-notification-dispatcher-6WNG24NY.js} +4 -2
  65. package/dist/{order-notification-dispatcher-RU7BTGGX.cjs → order-notification-dispatcher-6XSU3AR7.cjs} +6 -4
  66. package/dist/{rbac-debug-db-2SGNLANF.js → rbac-debug-db-6EMIVMGF.js} +1 -1
  67. package/dist/{rbac-debug-db-4Z6A425H.cjs → rbac-debug-db-6PWTLBEL.cjs} +2 -2
  68. package/dist/retire-soft-deleted-unique-5VXBA5XX.cjs +15 -0
  69. package/dist/retire-soft-deleted-unique-NXQIH4BC.js +2 -0
  70. package/dist/theme.cjs +6 -1
  71. package/dist/theme.d.cts +4 -1
  72. package/dist/theme.d.ts +4 -1
  73. package/dist/theme.js +3 -1
  74. package/package.json +5 -4
  75. package/src/admin/admin.css +34 -24
  76. package/dist/chunk-5ELSW2UP.js +0 -150
  77. package/dist/chunk-PNOKNSG2.cjs +0 -222
  78. package/dist/chunk-WEMDMVHQ.js +0 -216
  79. package/dist/chunk-XW5ATPRW.cjs +0 -155
  80. package/dist/email-queue-CGZBVVAS.js +0 -2
  81. package/dist/erp-order-invoice-3YISSOWW.js +0 -3
  82. package/dist/erp-order-invoice-ZR5F2KTA.cjs +0 -12
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,7 +325,7 @@ 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;
@@ -491,6 +496,8 @@ declare function VendorsListPage(): react_jsx_runtime.JSX.Element;
491
496
 
492
497
  declare function VendorTeamPage(): react_jsx_runtime.JSX.Element;
493
498
 
499
+ declare function VendorRolesPage(): react_jsx_runtime.JSX.Element;
500
+
494
501
  interface JobSchedulesToolProps {
495
502
  inputIdPrefix?: string;
496
503
  variant?: 'page' | 'embedded';
@@ -557,11 +564,24 @@ declare function resolveCategoryRelatedProductLabels(config: Record<string, Cate
557
564
  }): ResolvedCategoryRelatedProductLabels;
558
565
 
559
566
  /**
560
- * Theme + toast wrapper for admin. SessionProvider must live at the app root
561
- * (see README providers.tsx) do not nest a second SessionProvider here.
567
+ * Theme + toast wrapper for webcore admin and application pages.
568
+ * Enforces light-only mode across all pages; browser/OS dark preference is ignored.
562
569
  */
563
570
  declare function CmsProviders({ children }: {
564
571
  children: React.ReactNode;
565
572
  }): react_jsx_runtime.JSX.Element;
566
573
 
567
- export { AdminCRUD, AdminConfigContext, DashboardPage as AdminDashboardPage, ForgotPasswordPage as AdminForgotPasswordPage, AdminHeader, InvitePage as AdminInvitePage, AdminLayout, type AdminLayoutProps, type AdminNavItem, AdminPageResolver, AdminProfilePage, ResetPasswordPage as AdminResetPasswordPage, SettingsPage as AdminSettingsPage, AdminShell, AdminSidebar, SigninPage as AdminSignInPage, AnalyticsCard, AnalyticsChart, AnalyticsExclusion, BlogEditor as BlogEditorPage, BlogGeneratorPage, BrandEditPage, CategoryAutocomplete, type CategoryRelatedProductLabels, CmsProviders, CollectionEditPage, ComponentSettings, CreateEditForm, type CustomCrudColumn, type CustomCrudConfig, type CustomNavItem, type CustomNavSection, DEFAULT_ADMIN_NAV, DEFAULT_CATEGORY_RELATED_PRODUCT_LABELS, DailyUserChart, DetailPageHeader, type DetailPageHeaderMenuItem, DetailPageLayout, EventDetailPage, EventEditPage, FormBuilder, GeographicMap, JobSchedulesTool, JoditRichText, LayoutSettingsPage, NavbarEditor, PageBuilderPage, type PluginDescriptor, ProductEditPage, type ResolvedCategoryRelatedProductLabels, STORE_CRUD_CONFIGS, SchedulesPage, TagAutocomplete, type ThemeRegistryItem, UserAutocomplete, VendorEditPage, VendorTeamPage, VendorsListPage, AdminLayout as default, resolveCategoryRelatedProductLabels };
574
+ /** Component wrapper that forces light mode */
575
+ declare function ForceLightMode(): React$1.ReactElement;
576
+ /** Backward compatibility alias */
577
+ declare const ForceAdminLightMode: typeof ForceLightMode;
578
+
579
+ /**
580
+ * Universally enforce light mode across all websites and admin panels using webcore.
581
+ * Removes `dark` class from <html> and <body> and continuously blocks system/app dark mode.
582
+ */
583
+ declare function useForceLightMode(): void;
584
+ /** Backward compatibility alias */
585
+ declare const useForceAdminLightMode: typeof useForceLightMode;
586
+
587
+ export { AdminCRUD, AdminConfigContext, DashboardPage as AdminDashboardPage, ForgotPasswordPage as AdminForgotPasswordPage, AdminHeader, InvitePage as AdminInvitePage, AdminLayout, type AdminLayoutProps, type AdminNavItem, AdminPageResolver, AdminProfilePage, ResetPasswordPage as AdminResetPasswordPage, SettingsPage as AdminSettingsPage, AdminShell, AdminSidebar, SigninPage as AdminSignInPage, AnalyticsCard, AnalyticsChart, AnalyticsExclusion, BlogEditor as BlogEditorPage, BlogGeneratorPage, BrandEditPage, CategoryAutocomplete, type CategoryRelatedProductLabels, CmsProviders, CollectionEditPage, ComponentSettings, CreateEditForm, type CustomCrudColumn, type CustomCrudConfig, type CustomNavItem, type CustomNavSection, DEFAULT_ADMIN_NAV, DEFAULT_CATEGORY_RELATED_PRODUCT_LABELS, DailyUserChart, DetailPageHeader, type DetailPageHeaderMenuItem, DetailPageLayout, EventDetailPage, EventEditPage, ForceAdminLightMode, ForceLightMode, FormBuilder, GeographicMap, JobSchedulesTool, JoditRichText, LayoutSettingsPage, NavbarEditor, PageBuilderPage, type PluginDescriptor, ProductEditPage, type ResolvedCategoryRelatedProductLabels, STORE_CRUD_CONFIGS, SchedulesPage, TagAutocomplete, type ThemeRegistryItem, UserAutocomplete, VendorEditPage, VendorRolesPage, VendorTeamPage, VendorsListPage, AdminLayout as default, resolveCategoryRelatedProductLabels, useForceAdminLightMode, useForceLightMode };
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,7 +325,7 @@ 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;
@@ -491,6 +496,8 @@ declare function VendorsListPage(): react_jsx_runtime.JSX.Element;
491
496
 
492
497
  declare function VendorTeamPage(): react_jsx_runtime.JSX.Element;
493
498
 
499
+ declare function VendorRolesPage(): react_jsx_runtime.JSX.Element;
500
+
494
501
  interface JobSchedulesToolProps {
495
502
  inputIdPrefix?: string;
496
503
  variant?: 'page' | 'embedded';
@@ -557,11 +564,24 @@ declare function resolveCategoryRelatedProductLabels(config: Record<string, Cate
557
564
  }): ResolvedCategoryRelatedProductLabels;
558
565
 
559
566
  /**
560
- * Theme + toast wrapper for admin. SessionProvider must live at the app root
561
- * (see README providers.tsx) do not nest a second SessionProvider here.
567
+ * Theme + toast wrapper for webcore admin and application pages.
568
+ * Enforces light-only mode across all pages; browser/OS dark preference is ignored.
562
569
  */
563
570
  declare function CmsProviders({ children }: {
564
571
  children: React.ReactNode;
565
572
  }): react_jsx_runtime.JSX.Element;
566
573
 
567
- export { AdminCRUD, AdminConfigContext, DashboardPage as AdminDashboardPage, ForgotPasswordPage as AdminForgotPasswordPage, AdminHeader, InvitePage as AdminInvitePage, AdminLayout, type AdminLayoutProps, type AdminNavItem, AdminPageResolver, AdminProfilePage, ResetPasswordPage as AdminResetPasswordPage, SettingsPage as AdminSettingsPage, AdminShell, AdminSidebar, SigninPage as AdminSignInPage, AnalyticsCard, AnalyticsChart, AnalyticsExclusion, BlogEditor as BlogEditorPage, BlogGeneratorPage, BrandEditPage, CategoryAutocomplete, type CategoryRelatedProductLabels, CmsProviders, CollectionEditPage, ComponentSettings, CreateEditForm, type CustomCrudColumn, type CustomCrudConfig, type CustomNavItem, type CustomNavSection, DEFAULT_ADMIN_NAV, DEFAULT_CATEGORY_RELATED_PRODUCT_LABELS, DailyUserChart, DetailPageHeader, type DetailPageHeaderMenuItem, DetailPageLayout, EventDetailPage, EventEditPage, FormBuilder, GeographicMap, JobSchedulesTool, JoditRichText, LayoutSettingsPage, NavbarEditor, PageBuilderPage, type PluginDescriptor, ProductEditPage, type ResolvedCategoryRelatedProductLabels, STORE_CRUD_CONFIGS, SchedulesPage, TagAutocomplete, type ThemeRegistryItem, UserAutocomplete, VendorEditPage, VendorTeamPage, VendorsListPage, AdminLayout as default, resolveCategoryRelatedProductLabels };
574
+ /** Component wrapper that forces light mode */
575
+ declare function ForceLightMode(): React$1.ReactElement;
576
+ /** Backward compatibility alias */
577
+ declare const ForceAdminLightMode: typeof ForceLightMode;
578
+
579
+ /**
580
+ * Universally enforce light mode across all websites and admin panels using webcore.
581
+ * Removes `dark` class from <html> and <body> and continuously blocks system/app dark mode.
582
+ */
583
+ declare function useForceLightMode(): void;
584
+ /** Backward compatibility alias */
585
+ declare const useForceAdminLightMode: typeof useForceLightMode;
586
+
587
+ export { AdminCRUD, AdminConfigContext, DashboardPage as AdminDashboardPage, ForgotPasswordPage as AdminForgotPasswordPage, AdminHeader, InvitePage as AdminInvitePage, AdminLayout, type AdminLayoutProps, type AdminNavItem, AdminPageResolver, AdminProfilePage, ResetPasswordPage as AdminResetPasswordPage, SettingsPage as AdminSettingsPage, AdminShell, AdminSidebar, SigninPage as AdminSignInPage, AnalyticsCard, AnalyticsChart, AnalyticsExclusion, BlogEditor as BlogEditorPage, BlogGeneratorPage, BrandEditPage, CategoryAutocomplete, type CategoryRelatedProductLabels, CmsProviders, CollectionEditPage, ComponentSettings, CreateEditForm, type CustomCrudColumn, type CustomCrudConfig, type CustomNavItem, type CustomNavSection, DEFAULT_ADMIN_NAV, DEFAULT_CATEGORY_RELATED_PRODUCT_LABELS, DailyUserChart, DetailPageHeader, type DetailPageHeaderMenuItem, DetailPageLayout, EventDetailPage, EventEditPage, ForceAdminLightMode, ForceLightMode, FormBuilder, GeographicMap, JobSchedulesTool, JoditRichText, LayoutSettingsPage, NavbarEditor, PageBuilderPage, type PluginDescriptor, ProductEditPage, type ResolvedCategoryRelatedProductLabels, STORE_CRUD_CONFIGS, SchedulesPage, TagAutocomplete, type ThemeRegistryItem, UserAutocomplete, VendorEditPage, VendorRolesPage, VendorTeamPage, VendorsListPage, AdminLayout as default, resolveCategoryRelatedProductLabels, useForceAdminLightMode, useForceLightMode };