@solidxai/core-ui 0.1.14 → 0.1.15-beta.0

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 (180) hide show
  1. package/dist/components/auth/AuthLayout.js +1 -1
  2. package/dist/components/auth/AuthLayout.js.map +1 -1
  3. package/dist/components/auth/AuthLayout.tsx +2 -2
  4. package/dist/components/common/DropzonePlaceholder.d.ts +2 -1
  5. package/dist/components/common/DropzonePlaceholder.d.ts.map +1 -1
  6. package/dist/components/common/DropzonePlaceholder.js +10 -7
  7. package/dist/components/common/DropzonePlaceholder.js.map +1 -1
  8. package/dist/components/common/DropzonePlaceholder.tsx +14 -9
  9. package/dist/components/common/SettingsComponent.module.css +4 -1
  10. package/dist/components/common/SolidFormStepper.d.ts.map +1 -1
  11. package/dist/components/common/SolidFormStepper.js +7 -6
  12. package/dist/components/common/SolidFormStepper.js.map +1 -1
  13. package/dist/components/common/SolidFormStepper.tsx +7 -1
  14. package/dist/components/common/SolidThemeProvider.d.ts.map +1 -1
  15. package/dist/components/common/SolidThemeProvider.js +127 -11
  16. package/dist/components/common/SolidThemeProvider.js.map +1 -1
  17. package/dist/components/common/SolidThemeProvider.tsx +104 -22
  18. package/dist/components/core/card/CardGrid.d.ts +1 -1
  19. package/dist/components/core/card/CardGrid.d.ts.map +1 -1
  20. package/dist/components/core/card/CardGrid.js +2 -2
  21. package/dist/components/core/card/CardGrid.js.map +1 -1
  22. package/dist/components/core/card/CardGrid.tsx +4 -0
  23. package/dist/components/core/card/CardItem.d.ts +2 -0
  24. package/dist/components/core/card/CardItem.d.ts.map +1 -1
  25. package/dist/components/core/card/CardItem.js +5 -4
  26. package/dist/components/core/card/CardItem.js.map +1 -1
  27. package/dist/components/core/card/CardItem.tsx +16 -1
  28. package/dist/components/core/card/SolidCardView.d.ts +28 -1
  29. package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
  30. package/dist/components/core/card/SolidCardView.js +99 -44
  31. package/dist/components/core/card/SolidCardView.js.map +1 -1
  32. package/dist/components/core/card/SolidCardView.tsx +119 -7
  33. package/dist/components/core/card/SolidCardViewConfigure.d.ts +1 -1
  34. package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
  35. package/dist/components/core/card/SolidCardViewConfigure.js +15 -6
  36. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  37. package/dist/components/core/card/SolidCardViewConfigure.tsx +34 -0
  38. package/dist/components/core/common/PDFViewer.d.ts +9 -5
  39. package/dist/components/core/common/PDFViewer.d.ts.map +1 -1
  40. package/dist/components/core/common/PDFViewer.js +10 -102
  41. package/dist/components/core/common/PDFViewer.js.map +1 -1
  42. package/dist/components/core/common/PDFViewer.tsx +29 -88
  43. package/dist/components/core/common/SolidCreateButton.d.ts.map +1 -1
  44. package/dist/components/core/common/SolidCreateButton.js +2 -2
  45. package/dist/components/core/common/SolidCreateButton.js.map +1 -1
  46. package/dist/components/core/common/SolidCreateButton.tsx +22 -2
  47. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  48. package/dist/components/core/common/SolidGlobalSearchElement.js +216 -198
  49. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  50. package/dist/components/core/common/SolidGlobalSearchElement.tsx +287 -216
  51. package/dist/components/core/form/SolidFormActionHeader.d.ts.map +1 -1
  52. package/dist/components/core/form/SolidFormActionHeader.js +21 -21
  53. package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
  54. package/dist/components/core/form/SolidFormActionHeader.tsx +62 -53
  55. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  56. package/dist/components/core/form/SolidFormView.js +101 -74
  57. package/dist/components/core/form/SolidFormView.js.map +1 -1
  58. package/dist/components/core/form/SolidFormView.tsx +46 -19
  59. package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
  60. package/dist/components/core/form/fields/SolidMediaMultipleField.js +3 -2
  61. package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
  62. package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +3 -1
  63. package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
  64. package/dist/components/core/form/fields/SolidMediaSingleField.js +3 -2
  65. package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
  66. package/dist/components/core/form/fields/SolidMediaSingleField.tsx +3 -1
  67. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts +1 -0
  68. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  69. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +20 -2
  70. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  71. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +29 -2
  72. package/dist/components/core/form/fields/solidFields.module.css +7 -0
  73. package/dist/components/core/kanban/KanbanBoard.d.ts +1 -1
  74. package/dist/components/core/kanban/KanbanBoard.d.ts.map +1 -1
  75. package/dist/components/core/kanban/KanbanBoard.js +2 -2
  76. package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
  77. package/dist/components/core/kanban/KanbanBoard.tsx +3 -1
  78. package/dist/components/core/kanban/KanbanCard.d.ts +2 -0
  79. package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
  80. package/dist/components/core/kanban/KanbanCard.js +5 -3
  81. package/dist/components/core/kanban/KanbanCard.js.map +1 -1
  82. package/dist/components/core/kanban/KanbanCard.tsx +15 -2
  83. package/dist/components/core/kanban/KanbanColumn.d.ts +3 -1
  84. package/dist/components/core/kanban/KanbanColumn.d.ts.map +1 -1
  85. package/dist/components/core/kanban/KanbanColumn.js +2 -2
  86. package/dist/components/core/kanban/KanbanColumn.js.map +1 -1
  87. package/dist/components/core/kanban/KanbanColumn.tsx +4 -2
  88. package/dist/components/core/kanban/SolidKanbanView.d.ts +25 -1
  89. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  90. package/dist/components/core/kanban/SolidKanbanView.js +95 -50
  91. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  92. package/dist/components/core/kanban/SolidKanbanView.tsx +87 -9
  93. package/dist/components/core/list/PLAN.md +1 -1
  94. package/dist/components/core/list/SolidListView.d.ts +11 -0
  95. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  96. package/dist/components/core/list/SolidListView.js +51 -90
  97. package/dist/components/core/list/SolidListView.js.map +1 -1
  98. package/dist/components/core/list/SolidListView.tsx +77 -112
  99. package/dist/components/core/list/SolidListViewColumn.d.ts +2 -1
  100. package/dist/components/core/list/SolidListViewColumn.d.ts.map +1 -1
  101. package/dist/components/core/list/SolidListViewColumn.js +2 -2
  102. package/dist/components/core/list/SolidListViewColumn.js.map +1 -1
  103. package/dist/components/core/list/SolidListViewColumn.tsx +4 -3
  104. package/dist/components/core/list/SolidListViewConfigure.js +1 -1
  105. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  106. package/dist/components/core/list/SolidListViewConfigure.tsx +1 -1
  107. package/dist/components/core/list/columns/SolidRelationColumn.d.ts +1 -1
  108. package/dist/components/core/list/columns/SolidRelationColumn.d.ts.map +1 -1
  109. package/dist/components/core/list/columns/SolidRelationColumn.js +2 -2
  110. package/dist/components/core/list/columns/SolidRelationColumn.js.map +1 -1
  111. package/dist/components/core/list/columns/SolidRelationColumn.tsx +2 -2
  112. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts +2 -2
  113. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
  114. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +5 -4
  115. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
  116. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +5 -4
  117. package/dist/components/core/model/CreateModel.d.ts.map +1 -1
  118. package/dist/components/core/model/CreateModel.js +2 -1
  119. package/dist/components/core/model/CreateModel.js.map +1 -1
  120. package/dist/components/core/model/CreateModel.tsx +2 -0
  121. package/dist/components/core/model/FieldMetaData.d.ts +1 -1
  122. package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
  123. package/dist/components/core/model/FieldMetaData.js +8 -8
  124. package/dist/components/core/model/FieldMetaData.js.map +1 -1
  125. package/dist/components/core/model/FieldMetaData.tsx +2 -2
  126. package/dist/components/core/model/FieldMetaDataForm.css +119 -0
  127. package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
  128. package/dist/components/core/model/FieldMetaDataForm.js +147 -97
  129. package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
  130. package/dist/components/core/model/FieldMetaDataForm.tsx +124 -32
  131. package/dist/components/core/module/ModuleMetadataExplorer.css +64 -0
  132. package/dist/components/core/module/ModulePackageDialog.css +117 -12
  133. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  134. package/dist/components/core/tree/SolidTreeView.js +6 -3
  135. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  136. package/dist/components/core/tree/SolidTreeView.tsx +27 -13
  137. package/dist/components/layout/AdminHeaderActions.d.ts.map +1 -1
  138. package/dist/components/layout/AdminHeaderActions.js +16 -11
  139. package/dist/components/layout/AdminHeaderActions.js.map +1 -1
  140. package/dist/components/layout/AdminHeaderActions.tsx +16 -9
  141. package/dist/components/layout/AdminTopHeader.d.ts.map +1 -1
  142. package/dist/components/layout/AdminTopHeader.js +1 -18
  143. package/dist/components/layout/AdminTopHeader.js.map +1 -1
  144. package/dist/components/layout/AdminTopHeader.tsx +3 -21
  145. package/dist/helpers/getAcceptedFileTypes.d.ts +12 -2
  146. package/dist/helpers/getAcceptedFileTypes.d.ts.map +1 -1
  147. package/dist/helpers/getAcceptedFileTypes.js +72 -16
  148. package/dist/helpers/getAcceptedFileTypes.js.map +1 -1
  149. package/dist/helpers/getAcceptedFileTypes.tsx +101 -18
  150. package/dist/helpers/registry.js +2 -1
  151. package/dist/helpers/registry.js.map +1 -1
  152. package/dist/helpers/registry.ts +3 -1
  153. package/dist/index.d.ts +6 -1
  154. package/dist/index.d.ts.map +1 -1
  155. package/dist/index.js +3 -0
  156. package/dist/index.js.map +1 -1
  157. package/dist/index.ts +6 -2
  158. package/dist/resources/globals.css +274 -109
  159. package/dist/resources/solid-custom.css +11 -0
  160. package/dist/resources/solid-responsive.css +1 -5
  161. package/dist/resources/solid-tailwind-generated.css +1 -1
  162. package/dist/routes/pages/admin/core/CardPage.d.ts.map +1 -1
  163. package/dist/routes/pages/admin/core/CardPage.js +15 -2
  164. package/dist/routes/pages/admin/core/CardPage.js.map +1 -1
  165. package/dist/routes/pages/admin/core/CardPage.tsx +17 -2
  166. package/dist/routes/pages/admin/core/DashboardPage.d.ts.map +1 -1
  167. package/dist/routes/pages/admin/core/DashboardPage.js +31 -3
  168. package/dist/routes/pages/admin/core/DashboardPage.js.map +1 -1
  169. package/dist/routes/pages/admin/core/DashboardPage.tsx +39 -11
  170. package/dist/routes/pages/admin/core/KanbanPage.d.ts.map +1 -1
  171. package/dist/routes/pages/admin/core/KanbanPage.js +15 -2
  172. package/dist/routes/pages/admin/core/KanbanPage.js.map +1 -1
  173. package/dist/routes/pages/admin/core/KanbanPage.tsx +17 -2
  174. package/dist/routes/pages/admin/core/ListPage.d.ts.map +1 -1
  175. package/dist/routes/pages/admin/core/ListPage.js +5 -13
  176. package/dist/routes/pages/admin/core/ListPage.js.map +1 -1
  177. package/dist/routes/pages/admin/core/ListPage.tsx +5 -15
  178. package/dist/types/index.d.ts +2 -4
  179. package/dist/types/solid-core.d.ts +12 -13
  180. package/package.json +1 -1
@@ -45,15 +45,15 @@ import { ERROR_MESSAGES } from "../../../constants/error-messages";
45
45
  import { AlertTriangle, Info, Pencil, Plus, Trash2 } from "lucide-react";
46
46
  import { SolidButton, SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogFooter, SolidDialogHeader, SolidDialogSeparator, SolidDialogTitle, } from "../../shad-cn-ui";
47
47
  var FieldMetaData = function (_a) {
48
- var setIsDirty = _a.setIsDirty, setFieldDeleted = _a.setFieldDeleted, modelMetaData = _a.modelMetaData, fieldMetaData = _a.fieldMetaData, setFieldMetaData = _a.setFieldMetaData, deleteModelFunction = _a.deleteModelFunction, nextTab = _a.nextTab, formikFieldsMetadataRef = _a.formikFieldsMetadataRef, params = _a.params, _b = _a.showSaveButton, showSaveButton = _b === void 0 ? false : _b, onSave = _a.onSave;
48
+ var setIsDirty = _a.setIsDirty, setFieldDeleted = _a.setFieldDeleted, modelMetaData = _a.modelMetaData, fieldMetaData = _a.fieldMetaData, setFieldMetaData = _a.setFieldMetaData, deleteModelFunction = _a.deleteModelFunction, nextTab = _a.nextTab, formikFieldsMetadataRef = _a.formikFieldsMetadataRef, params = _a.params, _b = _a.showSaveButton, showSaveButton = _b === void 0 ? false : _b, _c = _a.hideAddButton, hideAddButton = _c === void 0 ? false : _c, onSave = _a.onSave;
49
49
  var pathname = usePathname();
50
50
  var dispatch = useDispatch();
51
- var _c = useState(false), visiblePopup = _c[0], setVisiblePopup = _c[1];
52
- var _d = useState(false), isRequiredPopUp = _d[0], setIsRequiredPopUp = _d[1];
53
- var _e = useState(), currentPopup = _e[0], setCurrentPopup = _e[1];
54
- var _f = useState(null), selectedFieldMetaData = _f[0], setSelectedFieldMetaData = _f[1];
55
- var _g = useState(false), deleteAlertPopup = _g[0], setDeleteAlertPopup = _g[1];
56
- var _h = useState(null), rowToDelete = _h[0], setRowToDelete = _h[1];
51
+ var _d = useState(false), visiblePopup = _d[0], setVisiblePopup = _d[1];
52
+ var _e = useState(false), isRequiredPopUp = _e[0], setIsRequiredPopUp = _e[1];
53
+ var _f = useState(), currentPopup = _f[0], setCurrentPopup = _f[1];
54
+ var _g = useState(null), selectedFieldMetaData = _g[0], setSelectedFieldMetaData = _g[1];
55
+ var _h = useState(false), deleteAlertPopup = _h[0], setDeleteAlertPopup = _h[1];
56
+ var _j = useState(null), rowToDelete = _j[0], setRowToDelete = _j[1];
57
57
  var onRowSelect = function (event) {
58
58
  setVisiblePopup(true);
59
59
  };
@@ -105,7 +105,7 @@ var FieldMetaData = function (_a) {
105
105
  return (_jsx(_Fragment, { children: needsModelSetup ?
106
106
  _jsx("div", { className: "solid-placeholder-card-wrapper", children: _jsxs("div", { className: "solid-placeholder-card", children: [_jsx("div", { className: "solid-placeholder-card-icon", children: _jsx(Info, { size: 18 }) }), _jsxs("div", { className: "solid-placeholder-card-body", children: [_jsx("p", { className: "solid-placeholder-card-title", children: "Model setup incomplete" }), _jsx("p", { className: "solid-placeholder-card-text", children: "Please select Module and Datasource from the models tab before managing fields." })] })] }) })
107
107
  :
108
- _jsxs(_Fragment, { children: [_jsxs("div", { className: "flex justify-end gap-2", style: { marginBottom: '0.5rem' }, children: [showSaveButton && (_jsx(SolidButton, { size: "sm", onClick: onSave, children: "Save" })), modelMetaData.isSystem !== true &&
108
+ _jsxs(_Fragment, { children: [_jsxs("div", { className: "flex justify-end gap-2", style: { marginBottom: '0.5rem' }, children: [showSaveButton && (_jsx(SolidButton, { size: "sm", onClick: onSave, children: "Save" })), modelMetaData.isSystem !== true && !hideAddButton &&
109
109
  _jsx(SolidButton, { size: "sm", leftIcon: _jsx(Plus, { size: 14 }), onClick: function () {
110
110
  if (!(modelMetaData === null || modelMetaData === void 0 ? void 0 : modelMetaData.dataSourceType)) {
111
111
  dispatch(showToast({ severity: 'error', summary: ERROR_MESSAGES.ERROR, detail: ERROR_MESSAGES.ORM_TYPE_REQUIRED }));
@@ -1 +1 @@
1
- {"version":3,"file":"FieldMetaData.js","sourceRoot":"","sources":["../../../../src/components/core/model/FieldMetaData.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,cAAc,IAAI,SAAS,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EACL,WAAW,EACX,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAG1B,IAAM,aAAa,GAAG,UAAC,EAAmL;QAAjL,UAAU,gBAAA,EAAE,eAAe,qBAAA,EAAE,aAAa,mBAAA,EAAE,aAAa,mBAAA,EAAE,gBAAgB,sBAAA,EAAE,mBAAmB,yBAAA,EAAE,OAAO,aAAA,EAAE,uBAAuB,6BAAA,EAAE,MAAM,YAAA,EAAE,sBAAsB,EAAtB,cAAc,mBAAG,KAAK,KAAA,EAAE,MAAM,YAAA;IACjM,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IACzB,IAAA,KAAkC,QAAQ,CAAC,KAAK,CAAC,EAAhD,YAAY,QAAA,EAAE,eAAe,QAAmB,CAAC;IAClD,IAAA,KAAwC,QAAQ,CAAC,KAAK,CAAC,EAAtD,eAAe,QAAA,EAAE,kBAAkB,QAAmB,CAAC;IACxD,IAAA,KAAkC,QAAQ,EAAE,EAA3C,YAAY,QAAA,EAAE,eAAe,QAAc,CAAC;IAC7C,IAAA,KAAoD,QAAQ,CAAM,IAAI,CAAC,EAAtE,qBAAqB,QAAA,EAAE,wBAAwB,QAAuB,CAAC;IACxE,IAAA,KAA0C,QAAQ,CAAC,KAAK,CAAC,EAAxD,gBAAgB,QAAA,EAAE,mBAAmB,QAAmB,CAAC;IAC1D,IAAA,KAAgC,QAAQ,CAAM,IAAI,CAAC,EAAlD,WAAW,QAAA,EAAE,cAAc,QAAuB,CAAC;IAC1D,IAAM,WAAW,GAAG,UAAC,KAAU;QAC7B,eAAe,CAAC,IAAI,CAAC,CAAC;IAExB,CAAC,CAAC;IAGF,IAAM,YAAY,GAAG,UAAC,OAAY;QAChC,OAAO,CACL,4BAEG,OAAO,CAAC,WAAW;gBAClB,4BACE,wBAAI,OAAO,CAAC,WAAW,EACpB,OAAO,CAAC,kBAAkB,KAAK,IAAI;gCAClC,8BACE,cAAS,QAAE,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,uFAA+E,IACxI,IAEH,GACH,GAEJ,CACJ,CAAA;IACH,CAAC,CAAC;IAGF,sCAAsC;IACtC,IAAM,YAAY,GAAG,UAAC,OAAY;QAChC,OAAO,CACL,4BACG,OAAO,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,CAAC,kBAAkB,KAAK,IAAI;gBAC/D,KAAC,WAAW,IACV,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,mBAAmB,gBAClB,YAAY,EACvB,QAAQ,EAAE,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,GAAI,EAC9B,OAAO,EAAE;wBACP,wBAAwB,CAAC,OAAO,CAAC,CAAC;wBAClC,eAAe,CAAC,IAAI,CAAC,CAAC;oBACxB,CAAC,GACD,GAEH,CACJ,CAAA;IACH,CAAC,CAAC;IAEF,2BAA2B;IAC3B,IAAM,SAAS,GAAG,UAAC,OAAY;QAC7B,wEAAwE;QACxE,gBAAgB,CAAC,UAAC,QAAa;YAC7B,IAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAC,IAAS,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAA1B,CAA0B,CAAC,CAAC;YAC/E,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,4CAA4C;YAC9D,IAAI,eAAe;gBAAE,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3C,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,8CAA8C;IAC9C,IAAM,cAAc,GAAG,UAAC,OAAY;QAClC,OAAO,CACL,4BACG,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,CAAC,kBAAkB,KAAK,IAAI,CAAC,CAAC;gBAClG,KAAC,WAAW,IACV,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,mBAAmB,EAC7B,KAAK,EAAE,EAAE,KAAK,EAAE,8BAA8B,EAAE,gBACrC,cAAc,EACzB,QAAQ,EAAE,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,GAAI,EAC9B,OAAO,EAAE,cAAQ,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC,GACrE,GAGH,CACJ,CAAA;IACH,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG,UAAO,OAAY,EAAE,QAAa;;;YAC9C,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,UAAA,EAAE,OAAO,EAAE,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;aAClI;;;SACF,CAAC;IAGF,oCAAoC;IACpC,aAAa;IACb,qDAAqD;IACrD,OAAO;IACP,KAAK;IAGL,IAAM,eAAe,GAAG,CAAC,aAAa,CAAC,QAAQ,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;IAE7E,OAAO,CACL,4BAEG,eAAe,CAAC,CAAC;YAChB,cAAK,SAAS,EAAC,gCAAgC,YAC7C,eAAK,SAAS,EAAC,wBAAwB,aACrC,cAAK,SAAS,EAAC,6BAA6B,YAC1C,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,GAAI,GACd,EACN,eAAK,SAAS,EAAC,6BAA6B,aAC1C,YAAG,SAAS,EAAC,8BAA8B,uCAA2B,EACtE,YAAG,SAAS,EAAC,6BAA6B,gGAAoF,IAC1H,IACF,GACF;YACN,CAAC;gBACD,8BAEE,eAAK,SAAS,EAAC,wBAAwB,EAAC,KAAK,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,aACtE,cAAc,IAAI,CACjB,KAAC,WAAW,IACV,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,MAAM,qBAGH,CACf,EACA,aAAa,CAAC,QAAQ,KAAK,IAAI;oCAC9B,KAAC,WAAW,IACV,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,GAAI,EAC5B,OAAO,EAAE;4CACP,IAAI,CAAC,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,cAAc,CAAA,EAAE;gDAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;6CACrH;iDAAM;gDACL,wBAAwB,CAAC,IAAI,CAAC,CAAC;gDAC/B,eAAe,CAAC,IAAI,CAAC,CAAA;6CACtB;wCACH,CAAC,oBAGW,IAEZ,EACN,cAAK,SAAS,EAAC,8EAA8E,YAC3F,MAAC,SAAS,IACR,KAAK,EAAE,aAAa,EACpB,OAAO,EAAC,IAAI,EACZ,IAAI,EAAC,OAAO,EACZ,YAAY,EAAC,sBAAsB,EACnC,YAAY,EAAE,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,kBAAkB,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAA3D,CAA2D,aAEtF,KAAC,MAAM,IAAC,KAAK,EAAC,aAAa,EAAC,MAAM,EAAC,cAAc,EAAC,IAAI,EAAE,YAAY,GAAW,EAC/E,KAAC,MAAM,IAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,GAAU,EAC5C,KAAC,MAAM,IAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,GAAU,EAE3C,aAAa,CAAC,QAAQ,KAAK,IAAI;wCAC9B,KAAC,MAAM,IAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAI,EAEvE,aAAa,CAAC,QAAQ,KAAK,IAAI;wCAC9B,KAAC,MAAM,IAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAC,QAAQ,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAI,IAElE,GACR,EACN,KAAC,WAAW,IACV,IAAI,EAAE,YAAY,EAClB,YAAY,EAAE,UAAC,IAAI;gCACjB,IAAI,CAAC,IAAI,EAAE;oCACT,eAAe,CAAC,KAAK,CAAC,CAAC;iCACxB;4BACH,CAAC,EACD,SAAS,EAAC,iCAAiC,EAC3C,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,QAAQ,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,EAAE,EACrF,UAAU,EAAE,KAAK,YAEjB,KAAC,eAAe,IAAC,SAAS,EAAC,yBAAyB,YAClD,KAAC,iBAAiB,IAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,qBAAqB,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,eAAe,EAAE,eAAe,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,WAAW,EAAE,WAAW,GAAsB,GACjY,GACN,EACd,MAAC,WAAW,IACV,IAAI,EAAE,eAAe,EACrB,YAAY,EAAE,UAAC,IAAI;gCACjB,IAAI,CAAC,IAAI,EAAE;oCACT,kBAAkB,CAAC,KAAK,CAAC,CAAC;iCAC3B;4BACH,CAAC,EACD,SAAS,EAAC,8DAA8D,EACxE,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,aAElD,MAAC,iBAAiB,IAAC,SAAS,EAAC,4BAA4B,aACvD,KAAC,gBAAgB,cACf,gBAAM,SAAS,EAAC,yBAAyB,aACvC,KAAC,aAAa,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,iBAAiB,GAAG,EACvD,qCAAoB,IACf,GACU,EACnB,KAAC,gBAAgB,KAAG,IACF,EACpB,KAAC,eAAe,IAAC,SAAS,EAAC,iCAAiC,YAC1D,YAAG,SAAS,EAAC,6BAA6B,4HAAgH,GAC1I,EAClB,KAAC,iBAAiB,IAAC,SAAS,EAAC,6BAA6B,YACxD,KAAC,WAAW,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,cAAM,OAAA,kBAAkB,CAAC,KAAK,CAAC,EAAzB,CAAyB,mBAEjD,GACI,IACR,EACd,MAAC,WAAW,IACV,IAAI,EAAE,gBAAgB,EACtB,YAAY,EAAE,UAAC,IAAI;gCACjB,IAAI,CAAC,IAAI,EAAE;oCACT,mBAAmB,CAAC,KAAK,CAAC,CAAC;oCAC3B,cAAc,CAAC,IAAI,CAAC,CAAC;iCACtB;4BACH,CAAC,EACD,SAAS,EAAC,4DAA4D,EACtE,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,aAElD,MAAC,iBAAiB,IAAC,SAAS,EAAC,uDAAuD,aAClF,KAAC,gBAAgB,cACf,gBAAM,SAAS,EAAC,yBAAyB,aACvC,KAAC,aAAa,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,iBAAiB,GAAG,EACvD,0CAAyB,IACpB,GACU,EACnB,KAAC,gBAAgB,KAAG,IACF,EACpB,KAAC,oBAAoB,IAAC,SAAS,EAAC,yBAAyB,GAAG,EAC5D,MAAC,eAAe,IAAC,SAAS,EAAC,uDAAuD,aAChF,YAAG,SAAS,EAAC,wDAAwD,sDAEjE,EACJ,cAAI,SAAS,EAAC,8BAA8B,aAC1C,yBACE,eAAM,SAAS,EAAC,+BAA+B,mBAAU,EACzD,eAAK,SAAS,EAAC,8BAA8B,aAC3C,YAAG,SAAS,EAAC,oCAAoC,0DAA8C,EAC/F,eAAM,SAAS,EAAC,mCAAmC,kDAAyC,IACxF,IACH,EACL,yBACE,eAAM,SAAS,EAAC,+BAA+B,mBAAU,EACzD,eAAK,SAAS,EAAC,8BAA8B,aAC3C,YAAG,SAAS,EAAC,oCAAoC,8CAAkC,EACnF,eAAM,SAAS,EAAC,mCAAmC,uFAA8E,IAC7H,IACH,IACF,IACW,EAClB,MAAC,iBAAiB,IAAC,SAAS,EAAC,6DAA6D,aACxF,KAAC,WAAW,IACV,IAAI,EAAC,IAAI,EACT,OAAO,EAAE;gDACP,IAAI,WAAW,EAAE;oDACf,SAAS,CAAC,WAAW,CAAC,CAAC;iDACxB;gDACD,mBAAmB,CAAC,KAAK,CAAC,CAAC;gDAC3B,cAAc,CAAC,IAAI,CAAC,CAAC;4CACvB,CAAC,mBAGW,EACd,KAAC,WAAW,IACV,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE;gDACP,mBAAmB,CAAC,KAAK,CAAC,CAAC;gDAC3B,cAAc,CAAC,IAAI,CAAC,CAAC;4CACvB,CAAC,uBAGW,IACI,IACR,IAEb,GAEJ,CAIJ,CAAC;AACJ,CAAC,CAAC;AACF,eAAe,aAAa,CAAC","sourcesContent":["import { usePathname } from \"../../../hooks/usePathname\";\nimport { SolidDataTable as DataTable, Column } from \"../list/SolidDataTable\";\nimport { useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { showToast } from \"../../../redux/features/toastSlice\";\nimport FieldMetaDataForm from \"./FieldMetaDataForm\";\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport { AlertTriangle, Info, Pencil, Plus, Trash2 } from \"lucide-react\";\nimport {\n SolidButton,\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogFooter,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n} from \"../../shad-cn-ui\";\n\n\nconst FieldMetaData = ({ setIsDirty, setFieldDeleted, modelMetaData, fieldMetaData, setFieldMetaData, deleteModelFunction, nextTab, formikFieldsMetadataRef, params, showSaveButton = false, onSave }: any) => {\n const pathname = usePathname();\n const dispatch = useDispatch();\n const [visiblePopup, setVisiblePopup] = useState(false);\n const [isRequiredPopUp, setIsRequiredPopUp] = useState(false);\n const [currentPopup, setCurrentPopup] = useState();\n const [selectedFieldMetaData, setSelectedFieldMetaData] = useState<any>(null);\n const [deleteAlertPopup, setDeleteAlertPopup] = useState(false);\n const [rowToDelete, setRowToDelete] = useState<any>(null);\n const onRowSelect = (event: any) => {\n setVisiblePopup(true);\n\n };\n\n\n const bodyTemplate = (rowData: any) => {\n return (\n <>\n\n {rowData.displayName &&\n <>\n <p>{rowData.displayName}\n {rowData.isMarkedForRemoval === true &&\n <>\n <br></br> <span style={{ fontSize: '11px', color: 'red' }}>This field will be removed next time you generate code for this model.</span>\n </>\n }\n </p>\n </>\n }\n </>\n )\n };\n\n\n // Template for the pencil icon column\n const editTemplate = (rowData: any) => {\n return (\n <>\n {rowData.isSystem !== true && rowData.isMarkedForRemoval !== true &&\n <SolidButton\n variant=\"ghost\"\n size=\"sm\"\n className=\"solid-icon-button\"\n aria-label=\"Edit field\"\n leftIcon={<Pencil size={14} />}\n onClick={() => {\n setSelectedFieldMetaData(rowData);\n setVisiblePopup(true);\n }}\n />\n }\n </>\n )\n };\n\n // Function to delete a row\n const deleteRow = (rowData: any) => {\n //show dialog bbefore deletion & which will have to option ok and cancel\n setFieldMetaData((prevData: any) => {\n const updatedData = prevData.filter((item: any) => item.name !== rowData.name);\n setIsDirty(true); // Ensure dirty state is updated immediately\n if (setFieldDeleted) setFieldDeleted(true);\n return updatedData;\n });\n };\n\n // Template for the trash (delete) icon column\n const deleteTemplate = (rowData: any) => {\n return (\n <>\n {(pathname.includes('create') || (rowData.isSystem !== true && rowData.isMarkedForRemoval !== true)) &&\n <SolidButton\n variant=\"ghost\"\n size=\"sm\"\n className=\"solid-icon-button\"\n style={{ color: \"var(--solid-danger, #ef4444)\" }}\n aria-label=\"Delete field\"\n leftIcon={<Trash2 size={14} />}\n onClick={() => { setRowToDelete(rowData); setDeleteAlertPopup(true) }}\n />\n\n }\n </>\n )\n };\n\n const showToaster = async (message: any, severity: any) => {\n const errorMessages = Object.values(message);\n if (errorMessages.length > 0) {\n dispatch(showToast({ severity, summary: ERROR_MESSAGES.SEND_REPORT, detail: errorMessages.map(String).join(', '), life: 3000 }));\n }\n };\n\n\n // const rowClass = (data: any) => {\n // return {\n // 'bg-red-row': data.isMarkedForRemoval === true\n // };\n // };\n\n\n const needsModelSetup = !modelMetaData.moduleId || !modelMetaData.dataSource;\n\n return (\n <>\n\n {needsModelSetup ?\n <div className=\"solid-placeholder-card-wrapper\">\n <div className=\"solid-placeholder-card\">\n <div className=\"solid-placeholder-card-icon\">\n <Info size={18} />\n </div>\n <div className=\"solid-placeholder-card-body\">\n <p className=\"solid-placeholder-card-title\">Model setup incomplete</p>\n <p className=\"solid-placeholder-card-text\">Please select Module and Datasource from the models tab before managing fields.</p>\n </div>\n </div>\n </div>\n :\n <>\n\n <div className=\"flex justify-end gap-2\" style={{ marginBottom: '0.5rem' }}>\n {showSaveButton && (\n <SolidButton\n size=\"sm\"\n onClick={onSave}\n >\n Save\n </SolidButton>\n )}\n {modelMetaData.isSystem !== true &&\n <SolidButton\n size=\"sm\"\n leftIcon={<Plus size={14} />}\n onClick={() => {\n if (!modelMetaData?.dataSourceType) {\n dispatch(showToast({ severity: 'error', summary: ERROR_MESSAGES.ERROR, detail: ERROR_MESSAGES.ORM_TYPE_REQUIRED }));\n } else {\n setSelectedFieldMetaData(null);\n setVisiblePopup(true)\n }\n }}\n >\n Add\n </SolidButton>\n }\n </div>\n <div className=\"solid-datatable-wrapper solid-list-table-area flex-1 min-h-0 overflow-hidden\">\n <DataTable\n value={fieldMetaData}\n dataKey=\"id\"\n size=\"small\"\n emptyMessage=\"No fields configured\"\n rowClassName={(rowData) => rowData.isMarkedForRemoval === true ? \"greyed-out-row\" : \"\"}\n >\n <Column field=\"displayName\" header=\"Display Name\" body={bodyTemplate}></Column>\n <Column field=\"name\" header=\"Name\"></Column>\n <Column field=\"type\" header=\"Type\"></Column>\n\n {modelMetaData.isSystem !== true &&\n <Column body={editTemplate} header=\"Edit\" style={{ width: '80px' }} />\n }\n {modelMetaData.isSystem !== true &&\n <Column body={deleteTemplate} header=\"Delete\" style={{ width: '90px' }} />\n }\n </DataTable>\n </div>\n <SolidDialog\n open={visiblePopup}\n onOpenChange={(open) => {\n if (!open) {\n setVisiblePopup(false);\n }\n }}\n className=\"solid-dialog solid-field-dialog\"\n style={{ width: \"min(720px, calc(100vw - 2rem))\", minWidth:\"20rem\", maxWidth:\"95vw\" }}\n showHeader={false}\n >\n <SolidDialogBody className=\"solid-dialog-body-flush\">\n <FieldMetaDataForm setIsDirty={setIsDirty} modelMetaData={modelMetaData} fieldMetaData={selectedFieldMetaData} allFields={fieldMetaData} setFieldMetaData={setFieldMetaData} deleteModelFunction={deleteModelFunction} setVisiblePopup={setVisiblePopup} formikFieldsMetadataRef={formikFieldsMetadataRef} params={params} setIsRequiredPopUp={setIsRequiredPopUp} showToaster={showToaster}></FieldMetaDataForm>\n </SolidDialogBody>\n </SolidDialog>\n <SolidDialog\n open={isRequiredPopUp}\n onOpenChange={(open) => {\n if (!open) {\n setIsRequiredPopUp(false);\n }\n }}\n className=\"solid-dialog solid-confirm-dialog solid-field-confirm-dialog\"\n style={{ width: \"min(420px, calc(100vw - 2rem))\" }}\n >\n <SolidDialogHeader className=\"solid-field-confirm-header\">\n <SolidDialogTitle>\n <span className=\"flex items-center gap-2\">\n <AlertTriangle size={18} className=\"text-yellow-500\" />\n <span>Warning</span>\n </span>\n </SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogBody className=\"solid-field-confirm-dialog-body\">\n <p className=\"solid-field-confirm-message\">If there is data against this model this operation might not work and manual intervention will be required.</p>\n </SolidDialogBody>\n <SolidDialogFooter className=\"solid-field-confirm-actions\">\n <SolidButton size=\"sm\" onClick={() => setIsRequiredPopUp(false)}>\n Ok\n </SolidButton>\n </SolidDialogFooter>\n </SolidDialog>\n <SolidDialog\n open={deleteAlertPopup}\n onOpenChange={(open) => {\n if (!open) {\n setDeleteAlertPopup(false);\n setRowToDelete(null);\n }\n }}\n className=\"solid-shadcn-confirm-dialog solid-field-delete-flow-dialog\"\n style={{ width: \"min(560px, calc(100vw - 2rem))\" }}\n >\n <SolidDialogHeader className=\"solid-shadcn-dialog-head solid-field-delete-flow-head\">\n <SolidDialogTitle>\n <span className=\"flex items-center gap-2\">\n <AlertTriangle size={18} className=\"text-yellow-500\" />\n <span>Remove Field</span>\n </span>\n </SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator className=\"solid-shadcn-dialog-sep\" />\n <SolidDialogBody className=\"solid-shadcn-dialog-body solid-field-delete-flow-body\">\n <p className=\"solid-shadcn-dialog-text solid-field-delete-flow-intro\">\n Removing a field is a 2 step process.\n </p>\n <ol className=\"solid-field-delete-flow-list\">\n <li>\n <span className=\"solid-field-delete-flow-index\">1.</span>\n <div className=\"solid-field-delete-flow-step\">\n <p className=\"solid-field-delete-flow-step-title\">Delete the field and save the model form.</p>\n <span className=\"solid-field-delete-flow-step-note\">This marks the field for removal.</span>\n </div>\n </li>\n <li>\n <span className=\"solid-field-delete-flow-index\">2.</span>\n <div className=\"solid-field-delete-flow-step\">\n <p className=\"solid-field-delete-flow-step-title\">Generate code for this model.</p>\n <span className=\"solid-field-delete-flow-step-note\">This removes the field from generated code, metadata tables, and JSON.</span>\n </div>\n </li>\n </ol>\n </SolidDialogBody>\n <SolidDialogFooter className=\"solid-shadcn-dialog-actions solid-field-delete-flow-actions\">\n <SolidButton\n size=\"sm\"\n onClick={() => {\n if (rowToDelete) {\n deleteRow(rowToDelete);\n }\n setDeleteAlertPopup(false);\n setRowToDelete(null);\n }}\n >\n Ok\n </SolidButton>\n <SolidButton\n size=\"sm\"\n variant=\"outline\"\n onClick={() => {\n setDeleteAlertPopup(false);\n setRowToDelete(null);\n }}\n >\n Cancel\n </SolidButton>\n </SolidDialogFooter>\n </SolidDialog>\n\n </>\n }\n </>\n\n\n\n );\n};\nexport default FieldMetaData;\n"]}
1
+ {"version":3,"file":"FieldMetaData.js","sourceRoot":"","sources":["../../../../src/components/core/model/FieldMetaData.tsx"],"names":[],"mappings":"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","sourcesContent":["import { usePathname } from \"../../../hooks/usePathname\";\nimport { SolidDataTable as DataTable, Column } from \"../list/SolidDataTable\";\nimport { useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { showToast } from \"../../../redux/features/toastSlice\";\nimport FieldMetaDataForm from \"./FieldMetaDataForm\";\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport { AlertTriangle, Info, Pencil, Plus, Trash2 } from \"lucide-react\";\nimport {\n SolidButton,\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogFooter,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n} from \"../../shad-cn-ui\";\n\n\nconst FieldMetaData = ({ setIsDirty, setFieldDeleted, modelMetaData, fieldMetaData, setFieldMetaData, deleteModelFunction, nextTab, formikFieldsMetadataRef, params, showSaveButton = false, hideAddButton = false, onSave }: any) => {\n const pathname = usePathname();\n const dispatch = useDispatch();\n const [visiblePopup, setVisiblePopup] = useState(false);\n const [isRequiredPopUp, setIsRequiredPopUp] = useState(false);\n const [currentPopup, setCurrentPopup] = useState();\n const [selectedFieldMetaData, setSelectedFieldMetaData] = useState<any>(null);\n const [deleteAlertPopup, setDeleteAlertPopup] = useState(false);\n const [rowToDelete, setRowToDelete] = useState<any>(null);\n const onRowSelect = (event: any) => {\n setVisiblePopup(true);\n\n };\n\n\n const bodyTemplate = (rowData: any) => {\n return (\n <>\n\n {rowData.displayName &&\n <>\n <p>{rowData.displayName}\n {rowData.isMarkedForRemoval === true &&\n <>\n <br></br> <span style={{ fontSize: '11px', color: 'red' }}>This field will be removed next time you generate code for this model.</span>\n </>\n }\n </p>\n </>\n }\n </>\n )\n };\n\n\n // Template for the pencil icon column\n const editTemplate = (rowData: any) => {\n return (\n <>\n {rowData.isSystem !== true && rowData.isMarkedForRemoval !== true &&\n <SolidButton\n variant=\"ghost\"\n size=\"sm\"\n className=\"solid-icon-button\"\n aria-label=\"Edit field\"\n leftIcon={<Pencil size={14} />}\n onClick={() => {\n setSelectedFieldMetaData(rowData);\n setVisiblePopup(true);\n }}\n />\n }\n </>\n )\n };\n\n // Function to delete a row\n const deleteRow = (rowData: any) => {\n //show dialog bbefore deletion & which will have to option ok and cancel\n setFieldMetaData((prevData: any) => {\n const updatedData = prevData.filter((item: any) => item.name !== rowData.name);\n setIsDirty(true); // Ensure dirty state is updated immediately\n if (setFieldDeleted) setFieldDeleted(true);\n return updatedData;\n });\n };\n\n // Template for the trash (delete) icon column\n const deleteTemplate = (rowData: any) => {\n return (\n <>\n {(pathname.includes('create') || (rowData.isSystem !== true && rowData.isMarkedForRemoval !== true)) &&\n <SolidButton\n variant=\"ghost\"\n size=\"sm\"\n className=\"solid-icon-button\"\n style={{ color: \"var(--solid-danger, #ef4444)\" }}\n aria-label=\"Delete field\"\n leftIcon={<Trash2 size={14} />}\n onClick={() => { setRowToDelete(rowData); setDeleteAlertPopup(true) }}\n />\n\n }\n </>\n )\n };\n\n const showToaster = async (message: any, severity: any) => {\n const errorMessages = Object.values(message);\n if (errorMessages.length > 0) {\n dispatch(showToast({ severity, summary: ERROR_MESSAGES.SEND_REPORT, detail: errorMessages.map(String).join(', '), life: 3000 }));\n }\n };\n\n\n // const rowClass = (data: any) => {\n // return {\n // 'bg-red-row': data.isMarkedForRemoval === true\n // };\n // };\n\n\n const needsModelSetup = !modelMetaData.moduleId || !modelMetaData.dataSource;\n\n return (\n <>\n\n {needsModelSetup ?\n <div className=\"solid-placeholder-card-wrapper\">\n <div className=\"solid-placeholder-card\">\n <div className=\"solid-placeholder-card-icon\">\n <Info size={18} />\n </div>\n <div className=\"solid-placeholder-card-body\">\n <p className=\"solid-placeholder-card-title\">Model setup incomplete</p>\n <p className=\"solid-placeholder-card-text\">Please select Module and Datasource from the models tab before managing fields.</p>\n </div>\n </div>\n </div>\n :\n <>\n\n <div className=\"flex justify-end gap-2\" style={{ marginBottom: '0.5rem' }}>\n {showSaveButton && (\n <SolidButton\n size=\"sm\"\n onClick={onSave}\n >\n Save\n </SolidButton>\n )}\n {modelMetaData.isSystem !== true && !hideAddButton &&\n <SolidButton\n size=\"sm\"\n leftIcon={<Plus size={14} />}\n onClick={() => {\n if (!modelMetaData?.dataSourceType) {\n dispatch(showToast({ severity: 'error', summary: ERROR_MESSAGES.ERROR, detail: ERROR_MESSAGES.ORM_TYPE_REQUIRED }));\n } else {\n setSelectedFieldMetaData(null);\n setVisiblePopup(true)\n }\n }}\n >\n Add\n </SolidButton>\n }\n </div>\n <div className=\"solid-datatable-wrapper solid-list-table-area flex-1 min-h-0 overflow-hidden\">\n <DataTable\n value={fieldMetaData}\n dataKey=\"id\"\n size=\"small\"\n emptyMessage=\"No fields configured\"\n rowClassName={(rowData) => rowData.isMarkedForRemoval === true ? \"greyed-out-row\" : \"\"}\n >\n <Column field=\"displayName\" header=\"Display Name\" body={bodyTemplate}></Column>\n <Column field=\"name\" header=\"Name\"></Column>\n <Column field=\"type\" header=\"Type\"></Column>\n\n {modelMetaData.isSystem !== true &&\n <Column body={editTemplate} header=\"Edit\" style={{ width: '80px' }} />\n }\n {modelMetaData.isSystem !== true &&\n <Column body={deleteTemplate} header=\"Delete\" style={{ width: '90px' }} />\n }\n </DataTable>\n </div>\n <SolidDialog\n open={visiblePopup}\n onOpenChange={(open) => {\n if (!open) {\n setVisiblePopup(false);\n }\n }}\n className=\"solid-dialog solid-field-dialog\"\n style={{ width: \"min(720px, calc(100vw - 2rem))\", minWidth:\"20rem\", maxWidth:\"95vw\" }}\n showHeader={false}\n >\n <SolidDialogBody className=\"solid-dialog-body-flush\">\n <FieldMetaDataForm setIsDirty={setIsDirty} modelMetaData={modelMetaData} fieldMetaData={selectedFieldMetaData} allFields={fieldMetaData} setFieldMetaData={setFieldMetaData} deleteModelFunction={deleteModelFunction} setVisiblePopup={setVisiblePopup} formikFieldsMetadataRef={formikFieldsMetadataRef} params={params} setIsRequiredPopUp={setIsRequiredPopUp} showToaster={showToaster}></FieldMetaDataForm>\n </SolidDialogBody>\n </SolidDialog>\n <SolidDialog\n open={isRequiredPopUp}\n onOpenChange={(open) => {\n if (!open) {\n setIsRequiredPopUp(false);\n }\n }}\n className=\"solid-dialog solid-confirm-dialog solid-field-confirm-dialog\"\n style={{ width: \"min(420px, calc(100vw - 2rem))\" }}\n >\n <SolidDialogHeader className=\"solid-field-confirm-header\">\n <SolidDialogTitle>\n <span className=\"flex items-center gap-2\">\n <AlertTriangle size={18} className=\"text-yellow-500\" />\n <span>Warning</span>\n </span>\n </SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogBody className=\"solid-field-confirm-dialog-body\">\n <p className=\"solid-field-confirm-message\">If there is data against this model this operation might not work and manual intervention will be required.</p>\n </SolidDialogBody>\n <SolidDialogFooter className=\"solid-field-confirm-actions\">\n <SolidButton size=\"sm\" onClick={() => setIsRequiredPopUp(false)}>\n Ok\n </SolidButton>\n </SolidDialogFooter>\n </SolidDialog>\n <SolidDialog\n open={deleteAlertPopup}\n onOpenChange={(open) => {\n if (!open) {\n setDeleteAlertPopup(false);\n setRowToDelete(null);\n }\n }}\n className=\"solid-shadcn-confirm-dialog solid-field-delete-flow-dialog\"\n style={{ width: \"min(560px, calc(100vw - 2rem))\" }}\n >\n <SolidDialogHeader className=\"solid-shadcn-dialog-head solid-field-delete-flow-head\">\n <SolidDialogTitle>\n <span className=\"flex items-center gap-2\">\n <AlertTriangle size={18} className=\"text-yellow-500\" />\n <span>Remove Field</span>\n </span>\n </SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator className=\"solid-shadcn-dialog-sep\" />\n <SolidDialogBody className=\"solid-shadcn-dialog-body solid-field-delete-flow-body\">\n <p className=\"solid-shadcn-dialog-text solid-field-delete-flow-intro\">\n Removing a field is a 2 step process.\n </p>\n <ol className=\"solid-field-delete-flow-list\">\n <li>\n <span className=\"solid-field-delete-flow-index\">1.</span>\n <div className=\"solid-field-delete-flow-step\">\n <p className=\"solid-field-delete-flow-step-title\">Delete the field and save the model form.</p>\n <span className=\"solid-field-delete-flow-step-note\">This marks the field for removal.</span>\n </div>\n </li>\n <li>\n <span className=\"solid-field-delete-flow-index\">2.</span>\n <div className=\"solid-field-delete-flow-step\">\n <p className=\"solid-field-delete-flow-step-title\">Generate code for this model.</p>\n <span className=\"solid-field-delete-flow-step-note\">This removes the field from generated code, metadata tables, and JSON.</span>\n </div>\n </li>\n </ol>\n </SolidDialogBody>\n <SolidDialogFooter className=\"solid-shadcn-dialog-actions solid-field-delete-flow-actions\">\n <SolidButton\n size=\"sm\"\n onClick={() => {\n if (rowToDelete) {\n deleteRow(rowToDelete);\n }\n setDeleteAlertPopup(false);\n setRowToDelete(null);\n }}\n >\n Ok\n </SolidButton>\n <SolidButton\n size=\"sm\"\n variant=\"outline\"\n onClick={() => {\n setDeleteAlertPopup(false);\n setRowToDelete(null);\n }}\n >\n Cancel\n </SolidButton>\n </SolidDialogFooter>\n </SolidDialog>\n\n </>\n }\n </>\n\n\n\n );\n};\nexport default FieldMetaData;\n"]}
@@ -18,7 +18,7 @@ import {
18
18
  } from "../../shad-cn-ui";
19
19
 
20
20
 
21
- const FieldMetaData = ({ setIsDirty, setFieldDeleted, modelMetaData, fieldMetaData, setFieldMetaData, deleteModelFunction, nextTab, formikFieldsMetadataRef, params, showSaveButton = false, onSave }: any) => {
21
+ const FieldMetaData = ({ setIsDirty, setFieldDeleted, modelMetaData, fieldMetaData, setFieldMetaData, deleteModelFunction, nextTab, formikFieldsMetadataRef, params, showSaveButton = false, hideAddButton = false, onSave }: any) => {
22
22
  const pathname = usePathname();
23
23
  const dispatch = useDispatch();
24
24
  const [visiblePopup, setVisiblePopup] = useState(false);
@@ -149,7 +149,7 @@ const FieldMetaData = ({ setIsDirty, setFieldDeleted, modelMetaData, fieldMetaDa
149
149
  Save
150
150
  </SolidButton>
151
151
  )}
152
- {modelMetaData.isSystem !== true &&
152
+ {modelMetaData.isSystem !== true && !hideAddButton &&
153
153
  <SolidButton
154
154
  size="sm"
155
155
  leftIcon={<Plus size={14} />}
@@ -26,6 +26,9 @@
26
26
  overflow-y: auto;
27
27
  overflow-x: hidden;
28
28
  padding: 0.5rem;
29
+ background:
30
+ radial-gradient(circle at top right, color-mix(in srgb, var(--primary) 7%, transparent), transparent 32%),
31
+ linear-gradient(180deg, color-mix(in srgb, var(--background) 96%, transparent), color-mix(in srgb, var(--background) 92%, var(--card) 8%));
29
32
  }
30
33
 
31
34
  .solid-field-form-frame {
@@ -34,6 +37,17 @@
34
37
  width: 100%;
35
38
  flex-direction: column;
36
39
  gap: 1rem;
40
+ padding: 1rem;
41
+ border: 1px solid color-mix(in srgb, var(--border) 88%, transparent);
42
+ border-radius: 16px;
43
+ background: linear-gradient(
44
+ 180deg,
45
+ color-mix(in srgb, var(--card) 98%, var(--background) 2%),
46
+ color-mix(in srgb, var(--card) 92%, var(--background) 8%)
47
+ );
48
+ box-shadow:
49
+ 0 14px 32px rgba(15, 23, 42, 0.06),
50
+ inset 0 1px 0 rgba(255, 255, 255, 0.04);
37
51
  }
38
52
 
39
53
  .solid-field-form-header {
@@ -48,14 +62,30 @@
48
62
  color: var(--muted-foreground);
49
63
  }
50
64
 
65
+ .solid-field-form-shell .creat-field-form {
66
+ width: 100%;
67
+ padding: 0;
68
+ border-radius: 0;
69
+ background: transparent;
70
+ }
71
+
51
72
  .solid-field-form-tabs .solid-notebook-tablist {
52
73
  width: 100% !important;
74
+ padding: 0 0.25rem;
75
+ border-bottom-color: color-mix(in srgb, var(--border) 84%, transparent);
53
76
  }
54
77
 
55
78
  .solid-field-form-tabs .solid-notebook-content {
56
79
  padding-top: 0.85rem;
57
80
  }
58
81
 
82
+ .solid-field-form-tabs .solid-tabs-panel {
83
+ border-radius: 14px;
84
+ background: color-mix(in srgb, var(--background) 52%, var(--card) 48%);
85
+ border: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
86
+ padding: 0.9rem;
87
+ }
88
+
59
89
  .solid-field-checkbox-row {
60
90
  display: flex;
61
91
  align-items: center;
@@ -76,6 +106,95 @@
76
106
  border-top: 1px solid color-mix(in srgb, var(--border) 88%, transparent);
77
107
  }
78
108
 
109
+ .solid-field-dialog .solid-radix-dialog-body.solid-dialog-body-flush {
110
+ background: var(--background);
111
+ }
112
+
113
+ .solid-field-dialog .solid-radix-dialog-header {
114
+ background: linear-gradient(
115
+ 180deg,
116
+ color-mix(in srgb, var(--card) 96%, var(--background) 4%),
117
+ color-mix(in srgb, var(--card) 92%, var(--background) 8%)
118
+ );
119
+ border-bottom: 1px solid color-mix(in srgb, var(--border) 84%, transparent);
120
+ }
121
+
122
+ html.dark .solid-field-dialog .solid-radix-dialog-header,
123
+ [data-theme="dark"] .solid-field-dialog .solid-radix-dialog-header {
124
+ background: linear-gradient(
125
+ 180deg,
126
+ color-mix(in srgb, var(--card) 96%, #172554 4%),
127
+ color-mix(in srgb, var(--card) 88%, #020617 12%)
128
+ );
129
+ border-bottom-color: color-mix(in srgb, var(--border) 72%, #334155 28%);
130
+ }
131
+
132
+ html.dark .solid-field-form-scroll,
133
+ [data-theme="dark"] .solid-field-form-scroll {
134
+ background:
135
+ radial-gradient(circle at top right, color-mix(in srgb, var(--primary) 10%, transparent), transparent 34%),
136
+ linear-gradient(180deg, color-mix(in srgb, var(--background) 96%, #020617 4%), color-mix(in srgb, var(--background) 90%, #0b1220 10%));
137
+ }
138
+
139
+ html.dark .solid-field-form-frame,
140
+ [data-theme="dark"] .solid-field-form-frame {
141
+ border-color: color-mix(in srgb, var(--border) 72%, #334155 28%);
142
+ background: linear-gradient(
143
+ 180deg,
144
+ color-mix(in srgb, var(--card) 96%, #172554 4%),
145
+ color-mix(in srgb, var(--card) 88%, #020617 12%)
146
+ );
147
+ box-shadow:
148
+ 0 20px 44px rgba(2, 6, 23, 0.32),
149
+ inset 0 1px 0 rgba(255, 255, 255, 0.03);
150
+ }
151
+
152
+ html.dark .solid-field-form-tabs .solid-notebook-tablist,
153
+ [data-theme="dark"] .solid-field-form-tabs .solid-notebook-tablist {
154
+ border-bottom-color: color-mix(in srgb, var(--border) 72%, #334155 28%);
155
+ }
156
+
157
+ html.dark .solid-field-form-tabs .solid-tabs-panel,
158
+ [data-theme="dark"] .solid-field-form-tabs .solid-tabs-panel {
159
+ background: color-mix(in srgb, var(--background) 74%, var(--card) 26%);
160
+ border-color: color-mix(in srgb, var(--border) 72%, #334155 28%);
161
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
162
+ }
163
+
164
+ html.dark .solid-field-form-actions,
165
+ [data-theme="dark"] .solid-field-form-actions {
166
+ border-top-color: color-mix(in srgb, var(--border) 72%, #334155 28%);
167
+ }
168
+
169
+ html.dark .solid-field-form-shell .solid-file-icon-btn,
170
+ [data-theme="dark"] .solid-field-form-shell .solid-file-icon-btn {
171
+ border-color: color-mix(in srgb, var(--border) 72%, #334155 28%);
172
+ background: color-mix(in srgb, var(--background) 72%, var(--card) 28%);
173
+ color: color-mix(in srgb, var(--foreground) 84%, transparent);
174
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
175
+ }
176
+
177
+ html.dark .solid-field-form-shell .solid-file-icon-btn:hover:not(:disabled),
178
+ [data-theme="dark"] .solid-field-form-shell .solid-file-icon-btn:hover:not(:disabled) {
179
+ background: color-mix(in srgb, var(--accent) 48%, #172554 22%);
180
+ border-color: color-mix(in srgb, var(--primary) 26%, var(--border) 74%);
181
+ color: var(--foreground);
182
+ }
183
+
184
+ html.dark .solid-field-form-shell .solid-file-icon-btn.is-danger,
185
+ [data-theme="dark"] .solid-field-form-shell .solid-file-icon-btn.is-danger {
186
+ background: color-mix(in srgb, #7f1d1d 38%, var(--card) 62%);
187
+ border-color: color-mix(in srgb, #ef4444 28%, var(--border) 72%);
188
+ color: #fecaca;
189
+ }
190
+
191
+ html.dark .solid-field-form-shell .solid-file-icon-btn.is-danger:hover:not(:disabled),
192
+ [data-theme="dark"] .solid-field-form-shell .solid-file-icon-btn.is-danger:hover:not(:disabled) {
193
+ background: color-mix(in srgb, #991b1b 44%, var(--card) 56%);
194
+ border-color: color-mix(in srgb, #f87171 34%, var(--border) 66%);
195
+ color: #fee2e2;
196
+ }
197
+
79
198
  @media (max-width: 640px) {
80
199
  .solid-field-form-scroll {
81
200
  padding: 0.75rem;
@@ -1 +1 @@
1
- {"version":3,"file":"FieldMetaDataForm.d.ts","sourceRoot":"","sources":["../../../../src/components/core/model/FieldMetaDataForm.tsx"],"names":[],"mappings":"AAiCA,OAAO,yBAAyB,CAAC;AAy0BjC,QAAA,MAAM,iBAAiB,4VAoBpB,GAAG,4CA6mFL,CAAC;AAGF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"FieldMetaDataForm.d.ts","sourceRoot":"","sources":["../../../../src/components/core/model/FieldMetaDataForm.tsx"],"names":[],"mappings":"AAkCA,OAAO,yBAAyB,CAAC;AAs2BjC,QAAA,MAAM,iBAAiB,4VAoBpB,GAAG,4CA2qFL,CAAC;AAGF,eAAe,iBAAiB,CAAC"}