@dashadmin/dash-auto-admin 1.3.24 → 1.3.26

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 (176) hide show
  1. package/dist/DashAutoAdminComponentRegistry.js +64 -1
  2. package/dist/DashAutoAdminForm.js +137 -1
  3. package/dist/DashAutoAdminResizableDrawer.js +63 -1
  4. package/dist/DashAutoAdminSaveButton.js +57 -1
  5. package/dist/DashAutoCreate.js +102 -1
  6. package/dist/DashAutoDrawer.js +256 -1
  7. package/dist/DashAutoEdit.js +99 -1
  8. package/dist/DashAutoFiltersGenerator.js +193 -1
  9. package/dist/DashAutoFormGroups.js +118 -1
  10. package/dist/DashAutoFormLayout.js +68 -1
  11. package/dist/DashAutoFormMuiTabs.js +291 -1
  12. package/dist/DashAutoFormTabs.js +132 -1
  13. package/dist/DashAutoGroup.js +27 -1
  14. package/dist/DashAutoLayout.js +31 -1
  15. package/dist/DashAutoList.js +218 -1
  16. package/dist/DashAutoPostFilterForm.js +47 -1
  17. package/dist/DashAutoReferenceTab.js +10 -1
  18. package/dist/DashAutoResource.js +77 -1
  19. package/dist/DashAutoResourceLayout.js +16 -1
  20. package/dist/DashAutoShow.js +195 -1
  21. package/dist/DashAutoTabbedForm.js +244 -1
  22. package/dist/DashAutoTabbedForm.review.js +221 -1
  23. package/dist/DashAutoTabs.js +11 -1
  24. package/dist/DashFilterWrapper.js +62 -1
  25. package/dist/DashRedirect.js +56 -1
  26. package/dist/TabbedLayout.js +38 -1
  27. package/dist/common/DashAutoTitle.js +33 -1
  28. package/dist/common/components/FabButton.js +59 -1
  29. package/dist/common/components/TranslatedLabel.js +60 -1
  30. package/dist/common/settings/Settings.js +196 -1
  31. package/dist/common/settings/SettingsBarIcons.js +61 -1
  32. package/dist/context/DashAutoAdminFormContext.js +15 -1
  33. package/dist/hooks/useAutoAdminLoadingStateMediator.js +36 -1
  34. package/dist/hooks/useAutoAdminTranslate.js +61 -1
  35. package/dist/hooks/useHash.js +24 -1
  36. package/dist/hooks/useLogger.js +20 -1
  37. package/dist/hooks/useRoutePathPattern.js +20 -1
  38. package/dist/hooks/useVirtualHash.js +28 -1
  39. package/dist/index.js +77 -3406
  40. package/dist/list/DashAutoListActions.js +57 -1
  41. package/dist/list/DashAutoListDatagridWrapper.js +68 -1
  42. package/dist/list/DashAutoListDefaultActionsWrapper.js +14 -1
  43. package/dist/list/DashAutoListFilterFormWithButton.js +80 -1
  44. package/dist/list/DashAutoListTopToolbar.js +180 -1
  45. package/dist/mui/AttributeToField.js +576 -1
  46. package/dist/mui/AttributeToInput.js +630 -1
  47. package/dist/mui/AutoAdminResizableDrawer.js +63 -1
  48. package/dist/mui/AutoDataGrid.js +120 -1
  49. package/dist/mui/AutoReferenceFormTab.js +53 -1
  50. package/dist/mui/AutoReferenceTab.js +46 -1
  51. package/dist/mui/AutoTabs.js +19 -1
  52. package/dist/mui/components/ExtendedPagination.js +34 -1
  53. package/dist/mui/components/ListStringField.js +25 -1
  54. package/dist/providers/DashAuthProvider.js +215 -1
  55. package/dist/providers/DashDataProvider.js +310 -1
  56. package/dist/providers/index.js +10 -1
  57. package/dist/react-admin.d.js +0 -0
  58. package/dist/toolbar/buttons/BottomToolbarButtons.js +65 -1
  59. package/dist/toolbar/buttons/DashResourceButton.js +181 -1
  60. package/dist/toolbar/buttons/ListButtons.js +80 -1
  61. package/dist/toolbar/buttons/ToolbarButtons.js +135 -1
  62. package/dist/types/ActionCallback.d.js +0 -0
  63. package/dist/utils/SimpleLogger.js +52 -1
  64. package/dist/utils/enumToChoices.js +5 -1
  65. package/dist/utils/evalActionPermission.js +11 -1
  66. package/dist/utils/groupByTabs.js +21 -1
  67. package/dist/utils/hashedGroupByTabs.js +12 -1
  68. package/dist/utils/invertMap.js +12 -1
  69. package/dist/utils/isClassComponent.js +7 -1
  70. package/dist/utils/isComponent.js +29 -1
  71. package/dist/utils/isEnum.js +5 -1
  72. package/dist/utils/isFC.js +8 -1
  73. package/dist/utils/replaceParams.js +9 -1
  74. package/dist/utils/validate.js +19 -1
  75. package/dist/wrappers/UserAction.js +60 -1
  76. package/dist/wrappers/index.js +4 -1
  77. package/package.json +135 -120
  78. package/src/DashAutoAdminComponentRegistry.tsx +75 -0
  79. package/src/DashAutoAdminForm.tsx +155 -0
  80. package/src/DashAutoAdminResizableDrawer.tsx +69 -0
  81. package/src/DashAutoAdminSaveButton.tsx +116 -0
  82. package/src/DashAutoCreate.tsx +118 -0
  83. package/src/DashAutoDrawer.tsx +288 -0
  84. package/src/DashAutoEdit.tsx +109 -0
  85. package/src/DashAutoFiltersGenerator.tsx +208 -0
  86. package/src/DashAutoFormGroups.tsx +146 -0
  87. package/src/DashAutoFormLayout.tsx.review +113 -0
  88. package/src/DashAutoFormMuiTabs.tsx +368 -0
  89. package/src/DashAutoFormTabs.tsx +177 -0
  90. package/src/DashAutoGroup.tsx +42 -0
  91. package/src/DashAutoLayout.tsx +57 -0
  92. package/src/DashAutoList.tsx +237 -0
  93. package/src/DashAutoPostFilterForm.tsx +35 -0
  94. package/src/DashAutoReferenceTab.tsx +9 -0
  95. package/src/DashAutoResource.tsx +85 -0
  96. package/src/DashAutoResourceLayout.tsx +50 -0
  97. package/src/DashAutoShow.tsx +200 -0
  98. package/src/DashAutoTabbedForm.review.tsx +262 -0
  99. package/src/DashAutoTabbedForm.tsx +324 -0
  100. package/src/DashAutoTabs.tsx +19 -0
  101. package/src/DashFilterWrapper.tsx +43 -0
  102. package/src/DashRedirect.tsx +46 -0
  103. package/src/TabbedLayout.tsx +29 -0
  104. package/src/common/DashAutoTitle.tsx +24 -0
  105. package/src/common/components/FabButton.tsx +40 -0
  106. package/src/common/components/TranslatedLabel.tsx +81 -0
  107. package/src/common/settings/Settings.tsx +236 -0
  108. package/src/common/settings/SettingsBarIcons.tsx +72 -0
  109. package/src/context/DashAutoAdminFormContext.tsx +31 -0
  110. package/src/hooks/useAutoAdminLoadingStateMediator.tsx +42 -0
  111. package/src/hooks/useAutoAdminTranslate.tsx +106 -0
  112. package/src/hooks/useHash.tsx +27 -0
  113. package/src/hooks/useLogger.tsx +23 -0
  114. package/src/hooks/useRoutePathPattern.tsx +24 -0
  115. package/src/hooks/useVirtualHash.tsx +34 -0
  116. package/src/index.ts +85 -0
  117. package/src/interfaces/ICustomResourceSubComponent.ts +11 -0
  118. package/src/interfaces/IDashApplicationLayoutMainAction.ts +37 -0
  119. package/src/interfaces/IDashApplicationLayoutMenuItem.ts +24 -0
  120. package/src/interfaces/IDashAutoAdminAttribute.ts +104 -0
  121. package/src/interfaces/IDashAutoAdminCustomFieldComponent.ts +18 -0
  122. package/src/interfaces/IDashAutoAdminFormOptions.ts +22 -0
  123. package/src/interfaces/IDashAutoAdminListActions.ts +13 -0
  124. package/src/interfaces/IDashAutoAdminReference.ts +16 -0
  125. package/src/interfaces/IDashAutoAdminResourceConfig.ts +360 -0
  126. package/src/interfaces/IDashAutoForm.ts +24 -0
  127. package/src/interfaces/IDashAutoGridButton.ts +35 -0
  128. package/src/interfaces/IDashAutoShow.ts +12 -0
  129. package/src/interfaces/IGroupExtraData.ts +8 -0
  130. package/src/interfaces/IRecord.ts +7 -0
  131. package/src/interfaces/IReferenceFilter.ts +55 -0
  132. package/src/interfaces/IResourceComponent.ts +8 -0
  133. package/src/interfaces/IToolbarButton.ts +11 -0
  134. package/src/list/DashAutoListActions.tsx +88 -0
  135. package/src/list/DashAutoListDatagridWrapper.tsx +74 -0
  136. package/src/list/DashAutoListDefaultActionsWrapper.tsx +31 -0
  137. package/src/list/DashAutoListFilterFormWithButton.tsx +93 -0
  138. package/src/list/DashAutoListTopToolbar.tsx +240 -0
  139. package/src/mui/AttributeToField.tsx +657 -0
  140. package/src/mui/AttributeToInput.tsx +728 -0
  141. package/src/mui/AutoAdminResizableDrawer.tsx +69 -0
  142. package/src/mui/AutoDataGrid.tsx +127 -0
  143. package/src/mui/AutoReferenceFormTab.tsx +51 -0
  144. package/src/mui/AutoReferenceTab.tsx +45 -0
  145. package/src/mui/AutoTabs.tsx +32 -0
  146. package/src/mui/components/ExtendedPagination.tsx +23 -0
  147. package/src/mui/components/ListStringField.tsx +32 -0
  148. package/src/providers/DashAuthProvider.ts +341 -0
  149. package/src/providers/DashDataProvider.ts +466 -0
  150. package/src/providers/index.ts +17 -0
  151. package/src/toolbar/buttons/BottomToolbarButtons.tsx +59 -0
  152. package/src/toolbar/buttons/DashResourceButton.tsx +223 -0
  153. package/src/toolbar/buttons/ListButtons.tsx +137 -0
  154. package/src/toolbar/buttons/ToolbarButtons.tsx +186 -0
  155. package/src/utils/SimpleLogger.tsx +46 -0
  156. package/src/utils/enumToChoices.tsx +3 -0
  157. package/src/utils/evalActionPermission.tsx +14 -0
  158. package/src/utils/groupByTabs.tsx +23 -0
  159. package/src/utils/hashedGroupByTabs.tsx +16 -0
  160. package/src/utils/invertMap.tsx +10 -0
  161. package/src/utils/isClassComponent.tsx +9 -0
  162. package/src/utils/isComponent.tsx +45 -0
  163. package/src/utils/isEnum.tsx +3 -0
  164. package/src/utils/isFC.tsx +6 -0
  165. package/src/utils/replaceParams.tsx +6 -0
  166. package/src/utils/validate.tsx +24 -0
  167. package/src/wrappers/UserAction.tsx +67 -0
  168. package/src/wrappers/index.tsx +1 -0
  169. /package/{dist → src}/DashAutoAdminSaveButton.tsx.bkup +0 -0
  170. /package/{dist/DashAutoFormLayout.tsx.review → src/DashAutoFormLayout.tsx} +0 -0
  171. /package/{dist → src}/DashAutoFormTabs.review +0 -0
  172. /package/{dist → src}/DashAutoFormTabs.tsx.formcontext.wip +0 -0
  173. /package/{dist → src}/mui/AttributeToField.tsx.review +0 -0
  174. /package/{dist → src}/mui/AttributeToInput.tsx.review +0 -0
  175. /package/{dist → src}/react-admin.d.ts +0 -0
  176. /package/{dist → src}/types/ActionCallback.d.ts +0 -0
@@ -1 +1,135 @@
1
- import{jsx as o}from"react/jsx-runtime";import{CreateButton as u}from"react-admin";import{ExportButton as a}from"react-admin";import{ListButton as b}from"react-admin";import{EditButton as B}from"react-admin";import{DeleteButton as s}from"react-admin";import p from"../../DashAutoAdminSaveButton";import{DeleteWithConfirmButton as f}from"react-admin";import{WithRecord as m}from"react-admin";import{SaveButton as i}from"react-admin";const n=(e,t)=>!e||!t?!0:e[t]!==!1,w=e=>{const{resourceConfig:t,mode:r}=e;if(!t)return o(i,{});if(!t.toolbarSaveButton)return o(i,{});if(t.toolbarSaveButton?.enabled&&n(t.toolbarSaveButton.modes,r)){const l={...t.toolbarSaveButton?.props||{},alwaysEnable:t?.saveButtonAlwaysEnabled===!0};return t.toolbarSaveButton?.component?o(t.toolbarSaveButton.component,{...l}):o(p,{...l})}return null},y=e=>{const{resourceConfig:t,mode:r}=e;return t?t?.list!==!1&&t?.toolbarListButton&&t?.toolbarListButton.enabled!==!1?n(t.toolbarListButton.modes,r)?o(b,{}):null:t.toolbarListButton?.enabled&&n(t.toolbarEditButton.modes,r)?t.toolbarListButton?.component?o(t.toolbarListButton.component,{...t.toolbarListButton?.props||{}}):o(b,{...t.toolbarListButton?.props||{}}):null:o(b,{})},G=e=>{const{resourceConfig:t,mode:r}=e;return t?t?.edit!==!1&&t?.toolbarEditButton&&t?.toolbarEditButton.enabled!==!1?n(t.toolbarEditButton.modes,r)?o(B,{}):null:t.toolbarEditButton?.enabled&&n(t.toolbarEditButton.modes,r)?t.toolbarEditButton?.component?o(t.toolbarEditButton.component,{...t.toolbarEditButton?.props||{}}):o(B,{...t.toolbarEditButton?.props||{}}):null:o(B,{})},W=e=>{const{resourceConfig:t,mode:r}=e;return t?t?.create!==!1&&t?.toolbarCreateButton&&t?.toolbarCreateButton.enabled!==!1?n(t.toolbarCreateButton.modes,r)?o(u,{}):null:t.toolbarCreateButton?.enabled&&n(t.toolbarCreateButton.modes,r)?t.toolbarCreateButton?.component?o(t.toolbarCreateButton.component,{...t.toolbarCreateButton?.props||{}}):o(u,{...t.toolbarCreateButton?.props||{}}):null:o(u,{})},k=e=>{const{resourceConfig:t,mode:r}=e;return t?t?.delete!==!1&&t?.toolbarDeleteButton?n(t.toolbarDeleteButton.modes,r)?o(s,{}):null:t?.toolbarDeleteButton&&t?.toolbarDeleteButton.enabled!==!1?n(t.toolbarCreateButton.modes,r)&&t.toolbarDeleteButton?.props&&t.toolbarDeleteButton.props?.confirm?o(m,{render:l=>o(f,{record:l})}):t.toolbarDeleteButton?.component?o(t.toolbarDeleteButton.component,{...t.toolbarDeleteButton?.props||{}}):o(s,{...t.toolbarDeleteButton?.props||{}}):null:o(s,{})},M=e=>{const{resourceConfig:t,mode:r}=e;return t?t?.exporter!==!1&&t?.toolbarExportButton&&t?.toolbarExportButton.enabled!==!1?n(t.toolbarExportButton.modes,r)?o(a,{}):null:t.toolbarExportButton?.enabled&&n(t.toolbarExportButton.modes,r)?t.toolbarExportButton?.component?o(t.toolbarExportButton.component,{...t.toolbarExportButton?.props||{}}):o(a,{...t.toolbarExportButton?.props||{}}):null:o(a,{})};export{W as ToolbarCreateButton,k as ToolbarDeleteButton,G as ToolbarEditButton,M as ToolbarExportButton,y as ToolbarListButton,w as ToolbarSaveButton};
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { jsx } from "react/jsx-runtime";
21
+ import { CreateButton } from "react-admin";
22
+ import { ExportButton } from "react-admin";
23
+ import { ListButton } from "react-admin";
24
+ import { EditButton } from "react-admin";
25
+ import { DeleteButton } from "react-admin";
26
+ import DashAutoAdminSaveButton from "../../DashAutoAdminSaveButton";
27
+ import { DeleteWithConfirmButton } from "react-admin";
28
+ import { WithRecord } from "react-admin";
29
+ import { SaveButton } from "react-admin";
30
+ const checkIfModeEnablesButton = (modes, mode) => {
31
+ if (!modes) return true;
32
+ if (!mode) return true;
33
+ if (modes[mode] === false) return false;
34
+ return true;
35
+ };
36
+ const ToolbarSaveButton = (props) => {
37
+ var _a, _b, _c;
38
+ const { resourceConfig, mode } = props;
39
+ if (!resourceConfig) {
40
+ return /* @__PURE__ */ jsx(SaveButton, {});
41
+ }
42
+ if (!resourceConfig.toolbarSaveButton) {
43
+ return /* @__PURE__ */ jsx(SaveButton, {});
44
+ }
45
+ if ((_a = resourceConfig.toolbarSaveButton) == null ? void 0 : _a.enabled) {
46
+ if (checkIfModeEnablesButton(resourceConfig.toolbarSaveButton.modes, mode)) {
47
+ const buttonProps = __spreadProps(__spreadValues({}, ((_b = resourceConfig.toolbarSaveButton) == null ? void 0 : _b.props) || {}), {
48
+ alwaysEnable: (resourceConfig == null ? void 0 : resourceConfig.saveButtonAlwaysEnabled) === true ? true : false
49
+ });
50
+ return ((_c = resourceConfig.toolbarSaveButton) == null ? void 0 : _c.component) ? /* @__PURE__ */ jsx(resourceConfig.toolbarSaveButton.component, __spreadValues({}, buttonProps)) : /* @__PURE__ */ jsx(DashAutoAdminSaveButton, __spreadValues({}, buttonProps));
51
+ }
52
+ }
53
+ return null;
54
+ };
55
+ const ToolbarListButton = (props) => {
56
+ var _a, _b, _c, _d;
57
+ const { resourceConfig, mode } = props;
58
+ if (!resourceConfig) return /* @__PURE__ */ jsx(ListButton, {});
59
+ if (!!((resourceConfig == null ? void 0 : resourceConfig.list) !== false) && ((resourceConfig == null ? void 0 : resourceConfig.toolbarListButton) && !!((resourceConfig == null ? void 0 : resourceConfig.toolbarListButton.enabled) !== false))) {
60
+ return checkIfModeEnablesButton(resourceConfig.toolbarListButton.modes, mode) ? /* @__PURE__ */ jsx(ListButton, {}) : null;
61
+ } else if ((_a = resourceConfig.toolbarListButton) == null ? void 0 : _a.enabled) {
62
+ if (checkIfModeEnablesButton(resourceConfig.toolbarEditButton.modes, mode)) {
63
+ return ((_b = resourceConfig.toolbarListButton) == null ? void 0 : _b.component) ? /* @__PURE__ */ jsx(resourceConfig.toolbarListButton.component, __spreadValues({}, ((_c = resourceConfig.toolbarListButton) == null ? void 0 : _c.props) || {})) : /* @__PURE__ */ jsx(ListButton, __spreadValues({}, ((_d = resourceConfig.toolbarListButton) == null ? void 0 : _d.props) || {}));
64
+ }
65
+ }
66
+ return null;
67
+ };
68
+ const ToolbarEditButton = (props) => {
69
+ var _a, _b, _c, _d;
70
+ const { resourceConfig, mode } = props;
71
+ if (!resourceConfig) return /* @__PURE__ */ jsx(EditButton, {});
72
+ if (!!((resourceConfig == null ? void 0 : resourceConfig.edit) !== false) && ((resourceConfig == null ? void 0 : resourceConfig.toolbarEditButton) && !!((resourceConfig == null ? void 0 : resourceConfig.toolbarEditButton.enabled) !== false))) {
73
+ return checkIfModeEnablesButton(resourceConfig.toolbarEditButton.modes, mode) ? /* @__PURE__ */ jsx(EditButton, {}) : null;
74
+ } else if ((_a = resourceConfig.toolbarEditButton) == null ? void 0 : _a.enabled) {
75
+ if (checkIfModeEnablesButton(resourceConfig.toolbarEditButton.modes, mode)) {
76
+ return ((_b = resourceConfig.toolbarEditButton) == null ? void 0 : _b.component) ? /* @__PURE__ */ jsx(resourceConfig.toolbarEditButton.component, __spreadValues({}, ((_c = resourceConfig.toolbarEditButton) == null ? void 0 : _c.props) || {})) : /* @__PURE__ */ jsx(EditButton, __spreadValues({}, ((_d = resourceConfig.toolbarEditButton) == null ? void 0 : _d.props) || {}));
77
+ }
78
+ }
79
+ return null;
80
+ };
81
+ const ToolbarCreateButton = (props) => {
82
+ var _a, _b, _c, _d;
83
+ const { resourceConfig, mode } = props;
84
+ if (!resourceConfig) return /* @__PURE__ */ jsx(CreateButton, {});
85
+ if (!!((resourceConfig == null ? void 0 : resourceConfig.create) !== false) && ((resourceConfig == null ? void 0 : resourceConfig.toolbarCreateButton) && !!((resourceConfig == null ? void 0 : resourceConfig.toolbarCreateButton.enabled) !== false))) {
86
+ return checkIfModeEnablesButton(resourceConfig.toolbarCreateButton.modes, mode) ? /* @__PURE__ */ jsx(CreateButton, {}) : null;
87
+ } else if ((_a = resourceConfig.toolbarCreateButton) == null ? void 0 : _a.enabled) {
88
+ if (checkIfModeEnablesButton(resourceConfig.toolbarCreateButton.modes, mode)) {
89
+ return ((_b = resourceConfig.toolbarCreateButton) == null ? void 0 : _b.component) ? /* @__PURE__ */ jsx(resourceConfig.toolbarCreateButton.component, __spreadValues({}, ((_c = resourceConfig.toolbarCreateButton) == null ? void 0 : _c.props) || {})) : /* @__PURE__ */ jsx(CreateButton, __spreadValues({}, ((_d = resourceConfig.toolbarCreateButton) == null ? void 0 : _d.props) || {}));
90
+ }
91
+ }
92
+ return null;
93
+ };
94
+ const ToolbarDeleteButton = (props) => {
95
+ var _a, _b, _c, _d, _e;
96
+ const { resourceConfig, mode } = props;
97
+ if (!resourceConfig) return /* @__PURE__ */ jsx(DeleteButton, {});
98
+ if (!!((resourceConfig == null ? void 0 : resourceConfig.delete) !== false) && !!(resourceConfig == null ? void 0 : resourceConfig.toolbarDeleteButton)) {
99
+ return checkIfModeEnablesButton(resourceConfig.toolbarDeleteButton.modes, mode) ? /* @__PURE__ */ jsx(DeleteButton, {}) : null;
100
+ } else if (!!(resourceConfig == null ? void 0 : resourceConfig.toolbarDeleteButton) && !!((resourceConfig == null ? void 0 : resourceConfig.toolbarDeleteButton.enabled) !== false)) {
101
+ if (checkIfModeEnablesButton(resourceConfig.toolbarCreateButton.modes, mode)) {
102
+ if (!!((_a = resourceConfig.toolbarDeleteButton) == null ? void 0 : _a.props) && ((_b = resourceConfig.toolbarDeleteButton.props) == null ? void 0 : _b.confirm)) {
103
+ return /* @__PURE__ */ jsx(
104
+ WithRecord,
105
+ {
106
+ render: (record) => /* @__PURE__ */ jsx(DeleteWithConfirmButton, { record })
107
+ }
108
+ );
109
+ }
110
+ }
111
+ return ((_c = resourceConfig.toolbarDeleteButton) == null ? void 0 : _c.component) ? /* @__PURE__ */ jsx(resourceConfig.toolbarDeleteButton.component, __spreadValues({}, ((_d = resourceConfig.toolbarDeleteButton) == null ? void 0 : _d.props) || {})) : /* @__PURE__ */ jsx(DeleteButton, __spreadValues({}, ((_e = resourceConfig.toolbarDeleteButton) == null ? void 0 : _e.props) || {}));
112
+ }
113
+ return null;
114
+ };
115
+ const ToolbarExportButton = (props) => {
116
+ var _a, _b, _c, _d;
117
+ const { resourceConfig, mode } = props;
118
+ if (!resourceConfig) return /* @__PURE__ */ jsx(ExportButton, {});
119
+ if (!!((resourceConfig == null ? void 0 : resourceConfig.exporter) !== false) && ((resourceConfig == null ? void 0 : resourceConfig.toolbarExportButton) && !!((resourceConfig == null ? void 0 : resourceConfig.toolbarExportButton.enabled) !== false))) {
120
+ return checkIfModeEnablesButton(resourceConfig.toolbarExportButton.modes, mode) ? /* @__PURE__ */ jsx(ExportButton, {}) : null;
121
+ } else if ((_a = resourceConfig.toolbarExportButton) == null ? void 0 : _a.enabled) {
122
+ if (checkIfModeEnablesButton(resourceConfig.toolbarExportButton.modes, mode)) {
123
+ return ((_b = resourceConfig.toolbarExportButton) == null ? void 0 : _b.component) ? /* @__PURE__ */ jsx(resourceConfig.toolbarExportButton.component, __spreadValues({}, ((_c = resourceConfig.toolbarExportButton) == null ? void 0 : _c.props) || {})) : /* @__PURE__ */ jsx(ExportButton, __spreadValues({}, ((_d = resourceConfig.toolbarExportButton) == null ? void 0 : _d.props) || {}));
124
+ }
125
+ }
126
+ return null;
127
+ };
128
+ export {
129
+ ToolbarCreateButton,
130
+ ToolbarDeleteButton,
131
+ ToolbarEditButton,
132
+ ToolbarExportButton,
133
+ ToolbarListButton,
134
+ ToolbarSaveButton
135
+ };
File without changes
@@ -1 +1,52 @@
1
- var r=Object.defineProperty;var g=(n,o,e)=>o in n?r(n,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[o]=e;var t=(n,o,e)=>g(n,typeof o!="symbol"?o+"":o,e);class s{constructor(o,e){t(this,"prefix",o);t(this,"debug",e);t(this,"loggerID",Math.random().toString(32).slice(2,6))}getLogString(){return`ReactAutoAdmin | ${this.prefix} [${this.loggerID}]`}get log(){return this.debug?console.log.bind(console,`\u26AA ${this.getLogString()}`):()=>{}}get warn(){return this.debug?console.warn.bind(console,`\u{1F7E1} ${this.getLogString()}`):()=>{}}get error(){return this.debug?console.error.bind(console,`\u{1F534} ${this.getLogString()}`):()=>{}}setEnabled(o){this.debug=o}}export{s as SimpleLogger};
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
+ class SimpleLogger {
5
+ constructor(prefix, debug) {
6
+ __publicField(this, "prefix", prefix);
7
+ __publicField(this, "debug", debug);
8
+ __publicField(this, "loggerID", Math.random().toString(32).slice(2, 6));
9
+ }
10
+ getLogString() {
11
+ return `ReactAutoAdmin | ${this.prefix} [${this.loggerID}]`;
12
+ }
13
+ get log() {
14
+ if (!this.debug) {
15
+ return () => {
16
+ };
17
+ }
18
+ const boundLogFn = console.log.bind(
19
+ console,
20
+ `\u26AA ${this.getLogString()}`
21
+ );
22
+ return boundLogFn;
23
+ }
24
+ get warn() {
25
+ if (!this.debug) {
26
+ return () => {
27
+ };
28
+ }
29
+ const boundLogFn = console.warn.bind(
30
+ console,
31
+ `\u{1F7E1} ${this.getLogString()}`
32
+ );
33
+ return boundLogFn;
34
+ }
35
+ get error() {
36
+ if (!this.debug) {
37
+ return () => {
38
+ };
39
+ }
40
+ const boundLogFn = console.error.bind(
41
+ console,
42
+ `\u{1F534} ${this.getLogString()}`
43
+ );
44
+ return boundLogFn;
45
+ }
46
+ setEnabled(logging) {
47
+ this.debug = logging;
48
+ }
49
+ }
50
+ export {
51
+ SimpleLogger
52
+ };
@@ -1 +1,5 @@
1
- const t=e=>Object.keys(e).map(n=>({id:e[n],name:n}));var a=t;export{a as default};
1
+ const enumToChoices = (e) => Object.keys(e).map((key) => ({ id: e[key], name: key }));
2
+ var enumToChoices_default = enumToChoices;
3
+ export {
4
+ enumToChoices_default as default
5
+ };
@@ -1 +1,11 @@
1
- const n=(u,e)=>{let r=!0;return e==null?!0:e?(typeof e=="function"&&(r=e(u)),r):!1};var f=n;export{f as default};
1
+ const evalActionPermission = (resourceConfig, action) => {
2
+ let result = true;
3
+ if (action === null || action === void 0) return true;
4
+ if (!action) return false;
5
+ if (typeof action === "function") result = action(resourceConfig);
6
+ return result;
7
+ };
8
+ var evalActionPermission_default = evalActionPermission;
9
+ export {
10
+ evalActionPermission_default as default
11
+ };
@@ -1 +1,21 @@
1
- const A=u=>{const t=[];return u.forEach(o=>{let a=!1;t.forEach(s=>{s[0].tab===o.tab&&(s.push(o),a=!0)}),a||t.push([o])}),t};var i=A;export{i as default};
1
+ const groupByTabs = (schema) => {
2
+ const tabs = [];
3
+ schema.forEach((attribute) => {
4
+ let added = false;
5
+ tabs.forEach((tab) => {
6
+ const name = tab[0].tab;
7
+ if (name === attribute.tab) {
8
+ tab.push(attribute);
9
+ added = true;
10
+ }
11
+ });
12
+ if (!added) {
13
+ tabs.push([attribute]);
14
+ }
15
+ });
16
+ return tabs;
17
+ };
18
+ var groupByTabs_default = groupByTabs;
19
+ export {
20
+ groupByTabs_default as default
21
+ };
@@ -1 +1,12 @@
1
- const i=a=>{const r=[];return[...new Set(a.map(t=>t.tab))].forEach(t=>{r[t]=a.filter(e=>e.tab===t)}),r};var b=i;export{b as default};
1
+ const hasehdGroupByTabs = (schema) => {
2
+ const tabs = [];
3
+ const availabletabs = [...new Set(schema.map((item) => item.tab))];
4
+ availabletabs.forEach((tab) => {
5
+ tabs[tab] = schema.filter((item) => item.tab === tab);
6
+ });
7
+ return tabs;
8
+ };
9
+ var hashedGroupByTabs_default = hasehdGroupByTabs;
10
+ export {
11
+ hashedGroupByTabs_default as default
12
+ };
@@ -1 +1,12 @@
1
- const r=e=>{if(!e)return!1;const t={};return Object.keys(e).forEach(n=>t[e[n]]=n),t};var a=r;export{a as default};
1
+ const invertMap = (map) => {
2
+ if (!map) {
3
+ return false;
4
+ }
5
+ const invertedMap = {};
6
+ Object.keys(map).forEach((key) => invertedMap[map[key]] = key);
7
+ return invertedMap;
8
+ };
9
+ var invertMap_default = invertMap;
10
+ export {
11
+ invertMap_default as default
12
+ };
@@ -1 +1,7 @@
1
- const o=t=>!!(typeof t=="function"&&t.prototype&&t.prototype.isReactComponent);var e=o;export{e as default};
1
+ const isClassComponent = (Component) => {
2
+ return !!(typeof Component === "function" && Component.prototype && Component.prototype.isReactComponent);
3
+ };
4
+ var isClassComponent_default = isClassComponent;
5
+ export {
6
+ isClassComponent_default as default
7
+ };
@@ -1 +1,29 @@
1
- import n from"react";function o(t){return typeof t=="function"&&!!t.prototype.isReactComponent}function r(t){return typeof t=="function"&&String(t).includes("return React.createElement")}function i(t){return o(t)||r(t)}function e(t){return n.isValidElement(t)}function u(t){return e(t)&&typeof t.type=="string"}function f(t){return e(t)&&typeof t.type=="function"}var c=i;export{c as default,o as isClassComponent,f as isCompositeTypeElement,u as isDOMTypeElement,e as isElement,r as isFunctionComponent,i as isReactComponent};
1
+ import React from "react";
2
+ function isClassComponent(component) {
3
+ return typeof component === "function" && !!component.prototype.isReactComponent;
4
+ }
5
+ function isFunctionComponent(component) {
6
+ return typeof component === "function" && String(component).includes("return React.createElement");
7
+ }
8
+ function isReactComponent(component) {
9
+ return isClassComponent(component) || isFunctionComponent(component);
10
+ }
11
+ function isElement(element) {
12
+ return React.isValidElement(element);
13
+ }
14
+ function isDOMTypeElement(element) {
15
+ return isElement(element) && typeof element.type === "string";
16
+ }
17
+ function isCompositeTypeElement(element) {
18
+ return isElement(element) && typeof element.type === "function";
19
+ }
20
+ var isComponent_default = isReactComponent;
21
+ export {
22
+ isComponent_default as default,
23
+ isClassComponent,
24
+ isCompositeTypeElement,
25
+ isDOMTypeElement,
26
+ isElement,
27
+ isFunctionComponent,
28
+ isReactComponent
29
+ };
@@ -1 +1,5 @@
1
- const e=t=>typeof t=="object"&&!(t.attribute&&t.type);var o=e;export{o as default};
1
+ const isEnum = (type) => typeof type === "object" && !(type.attribute && type.type);
2
+ var isEnum_default = isEnum;
3
+ export {
4
+ isEnum_default as default
5
+ };
@@ -1 +1,8 @@
1
- const f=e=>typeof e>"u"?!1:!!e.name;var r=f;export{r as default};
1
+ const isFC = (Component) => {
2
+ if (typeof Component === "undefined") return false;
3
+ return !!Component.name;
4
+ };
5
+ var isFC_default = isFC;
6
+ export {
7
+ isFC_default as default
8
+ };
@@ -1 +1,9 @@
1
- function g(e,t){delete e["*"];const n=new RegExp(`{(${Object.keys(e).join("|")})+}`,"g");return t.replace(n,(c,r)=>e[r])}var i=g;export{i as default};
1
+ function replaceParams(params, str) {
2
+ delete params["*"];
3
+ const regex = new RegExp(`{(${Object.keys(params).join("|")})+}`, "g");
4
+ return str.replace(regex, (match, param) => params[param]);
5
+ }
6
+ var replaceParams_default = replaceParams;
7
+ export {
8
+ replaceParams_default as default
9
+ };
@@ -1 +1,19 @@
1
- const n=o=>r=>{const e={};return o.forEach(t=>{if(t.validate)try{t.validate(r[t.attribute],r)}catch(i){let a="Error";i instanceof Error&&(a=i.message),e[t.attribute]=a}}),e};var f=n;export{f as default};
1
+ const validate = (schema) => (values) => {
2
+ const errors = {};
3
+ schema.forEach((field) => {
4
+ if (field.validate) {
5
+ try {
6
+ field.validate(values[field.attribute], values);
7
+ } catch (error) {
8
+ let message = "Error";
9
+ if (error instanceof Error) message = error.message;
10
+ errors[field.attribute] = message;
11
+ }
12
+ }
13
+ });
14
+ return errors;
15
+ };
16
+ var validate_default = validate;
17
+ export {
18
+ validate_default as default
19
+ };
@@ -1 +1,60 @@
1
- import{Fragment as C,jsx as n}from"react/jsx-runtime";import{WithRecord as p,Button as d}from"react-admin";import m from"../utils/isFC";const A=c=>{const{method:i,attribute:o,resourceConfig:a,record:l,options:r}=c,t=!1;t&&console.log("\u{1F527} UserAction - component:",o.component),t&&console.log("\u{1F527} UserAction - isFC(attribute.component):",m(o.component)),t&&console.log("\u{1F527} UserAction - method:",i);const s=r?.locale||c.locale;if(o.component&&m(o.component)){t&&console.log("\u{1F527} UserAction - Rendering custom component");const e=o.component;return n(e,{method:i,attribute:o,resourceConfig:a,...l&&{record:l},...o?.componentProps,locale:s,options:r})}if(typeof o.action=="function"){const e=o.action;return n(p,{label:o.label,render:u=>n(d,{value:o.label,onClick:()=>e(u.id),children:n(C,{children:o.label})})})}return null};var B=A;export{B as default};
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { Fragment, jsx } from "react/jsx-runtime";
21
+ import { WithRecord, Button } from "react-admin";
22
+ import isFC from "../utils/isFC";
23
+ const UserAction = (props) => {
24
+ const { method, attribute, resourceConfig, record, options } = props;
25
+ const DEBUG = false;
26
+ DEBUG && console.log("\u{1F527} UserAction - component:", attribute.component);
27
+ DEBUG && console.log("\u{1F527} UserAction - isFC(attribute.component):", isFC(attribute.component));
28
+ DEBUG && console.log("\u{1F527} UserAction - method:", method);
29
+ const locale = (options == null ? void 0 : options.locale) || props.locale;
30
+ if (attribute.component && isFC(attribute.component)) {
31
+ DEBUG && console.log("\u{1F527} UserAction - Rendering custom component");
32
+ const Action = attribute.component;
33
+ return /* @__PURE__ */ jsx(
34
+ Action,
35
+ __spreadProps(__spreadValues(__spreadValues({
36
+ method,
37
+ attribute,
38
+ resourceConfig
39
+ }, record && { record }), attribute == null ? void 0 : attribute.componentProps), {
40
+ locale,
41
+ options
42
+ })
43
+ );
44
+ }
45
+ if (typeof attribute.action === "function") {
46
+ const callback = attribute.action;
47
+ return /* @__PURE__ */ jsx(
48
+ WithRecord,
49
+ {
50
+ label: attribute.label,
51
+ render: (record2) => /* @__PURE__ */ jsx(Button, { value: attribute.label, onClick: () => callback(record2.id), children: /* @__PURE__ */ jsx(Fragment, { children: attribute.label }) })
52
+ }
53
+ );
54
+ }
55
+ return null;
56
+ };
57
+ var UserAction_default = UserAction;
58
+ export {
59
+ UserAction_default as default
60
+ };
@@ -1 +1,4 @@
1
- import{default as r}from"./UserAction";export{r as UserAction};
1
+ import { default as default2 } from "./UserAction";
2
+ export {
3
+ default2 as UserAction
4
+ };