@solidxai/core-ui 0.1.5-beta.11 → 0.1.5-beta.12

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 (193) hide show
  1. package/dist/components/auth/GoogleAuthChecking.d.ts.map +1 -1
  2. package/dist/components/auth/GoogleAuthChecking.js +10 -10
  3. package/dist/components/auth/GoogleAuthChecking.js.map +1 -1
  4. package/dist/components/auth/GoogleAuthChecking.tsx +8 -9
  5. package/dist/components/auth/SolidChangeForcePassword.d.ts.map +1 -1
  6. package/dist/components/auth/SolidChangeForcePassword.js +9 -10
  7. package/dist/components/auth/SolidChangeForcePassword.js.map +1 -1
  8. package/dist/components/auth/SolidChangeForcePassword.tsx +6 -9
  9. package/dist/components/auth/SolidForgotPassword.d.ts.map +1 -1
  10. package/dist/components/auth/SolidForgotPassword.js +8 -8
  11. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  12. package/dist/components/auth/SolidForgotPassword.tsx +6 -8
  13. package/dist/components/auth/SolidInitialLoginOtp.d.ts.map +1 -1
  14. package/dist/components/auth/SolidInitialLoginOtp.js +57 -57
  15. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  16. package/dist/components/auth/SolidInitialLoginOtp.tsx +10 -11
  17. package/dist/components/auth/SolidInitiateRegisterOtp.d.ts.map +1 -1
  18. package/dist/components/auth/SolidInitiateRegisterOtp.js +57 -57
  19. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  20. package/dist/components/auth/SolidInitiateRegisterOtp.tsx +10 -11
  21. package/dist/components/auth/SolidLogin.d.ts.map +1 -1
  22. package/dist/components/auth/SolidLogin.js +12 -12
  23. package/dist/components/auth/SolidLogin.js.map +1 -1
  24. package/dist/components/auth/SolidLogin.tsx +11 -16
  25. package/dist/components/auth/SolidRegister.d.ts.map +1 -1
  26. package/dist/components/auth/SolidRegister.js +19 -19
  27. package/dist/components/auth/SolidRegister.js.map +1 -1
  28. package/dist/components/auth/SolidRegister.tsx +18 -23
  29. package/dist/components/auth/SolidResetPassword.d.ts.map +1 -1
  30. package/dist/components/auth/SolidResetPassword.js +15 -15
  31. package/dist/components/auth/SolidResetPassword.js.map +1 -1
  32. package/dist/components/auth/SolidResetPassword.tsx +7 -8
  33. package/dist/components/common/GeneralSettings.d.ts.map +1 -1
  34. package/dist/components/common/GeneralSettings.js +87 -120
  35. package/dist/components/common/GeneralSettings.js.map +1 -1
  36. package/dist/components/common/GeneralSettings.tsx +12 -42
  37. package/dist/components/common/GlobalToast.d.ts +2 -0
  38. package/dist/components/common/GlobalToast.d.ts.map +1 -0
  39. package/dist/components/common/GlobalToast.js +25 -0
  40. package/dist/components/common/GlobalToast.js.map +1 -0
  41. package/dist/components/common/GlobalToast.tsx +25 -0
  42. package/dist/components/common/SolidExport.d.ts.map +1 -1
  43. package/dist/components/common/SolidExport.js +19 -31
  44. package/dist/components/common/SolidExport.js.map +1 -1
  45. package/dist/components/common/SolidExport.tsx +7 -19
  46. package/dist/components/common/SolidFormStepper.d.ts.map +1 -1
  47. package/dist/components/common/SolidFormStepper.js +41 -41
  48. package/dist/components/common/SolidFormStepper.js.map +1 -1
  49. package/dist/components/common/SolidFormStepper.tsx +5 -6
  50. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.d.ts.map +1 -1
  51. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js +9 -9
  52. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js.map +1 -1
  53. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.tsx +8 -9
  54. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.d.ts.map +1 -1
  55. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js +8 -8
  56. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js.map +1 -1
  57. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +7 -9
  58. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.d.ts.map +1 -1
  59. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.js +11 -11
  60. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.js.map +1 -1
  61. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.tsx +10 -11
  62. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.d.ts.map +1 -1
  63. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js +9 -9
  64. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js.map +1 -1
  65. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.tsx +8 -9
  66. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.d.ts.map +1 -1
  67. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js +7 -7
  68. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js.map +1 -1
  69. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.tsx +6 -7
  70. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  71. package/dist/components/core/common/SolidGlobalSearchElement.js +78 -21
  72. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  73. package/dist/components/core/common/SolidGlobalSearchElement.tsx +65 -10
  74. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.d.ts.map +1 -1
  75. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js +6 -8
  76. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js.map +1 -1
  77. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.tsx +5 -9
  78. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.d.ts.map +1 -1
  79. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.js +9 -11
  80. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.js.map +1 -1
  81. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.tsx +5 -10
  82. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.d.ts.map +1 -1
  83. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.js +5 -6
  84. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.js.map +1 -1
  85. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.tsx +5 -8
  86. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.d.ts.map +1 -1
  87. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.js +10 -12
  88. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.js.map +1 -1
  89. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx +6 -11
  90. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.d.ts.map +1 -1
  91. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js +11 -6
  92. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
  93. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +13 -1
  94. package/dist/components/core/form/SolidFormUserViewLayout.d.ts.map +1 -1
  95. package/dist/components/core/form/SolidFormUserViewLayout.js +7 -8
  96. package/dist/components/core/form/SolidFormUserViewLayout.js.map +1 -1
  97. package/dist/components/core/form/SolidFormUserViewLayout.tsx +5 -7
  98. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  99. package/dist/components/core/form/SolidFormView.js +12 -21
  100. package/dist/components/core/form/SolidFormView.js.map +1 -1
  101. package/dist/components/core/form/SolidFormView.tsx +11 -33
  102. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  103. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +37 -26
  104. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  105. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +38 -5
  106. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  107. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +11 -11
  108. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  109. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +9 -11
  110. package/dist/components/core/kanban/KanbanUserViewLayout.d.ts.map +1 -1
  111. package/dist/components/core/kanban/KanbanUserViewLayout.js +7 -8
  112. package/dist/components/core/kanban/KanbanUserViewLayout.js.map +1 -1
  113. package/dist/components/core/kanban/KanbanUserViewLayout.tsx +4 -6
  114. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  115. package/dist/components/core/kanban/SolidKanbanView.js +5 -7
  116. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  117. package/dist/components/core/kanban/SolidKanbanView.tsx +4 -9
  118. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.d.ts.map +1 -1
  119. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js +13 -13
  120. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js.map +1 -1
  121. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.tsx +5 -6
  122. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  123. package/dist/components/core/list/SolidListView.js +20 -67
  124. package/dist/components/core/list/SolidListView.js.map +1 -1
  125. package/dist/components/core/list/SolidListView.tsx +9 -76
  126. package/dist/components/core/model/CreateModel.d.ts.map +1 -1
  127. package/dist/components/core/model/CreateModel.js +15 -25
  128. package/dist/components/core/model/CreateModel.js.map +1 -1
  129. package/dist/components/core/model/CreateModel.tsx +12 -32
  130. package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
  131. package/dist/components/core/model/FieldMetaData.js +6 -17
  132. package/dist/components/core/model/FieldMetaData.js.map +1 -1
  133. package/dist/components/core/model/FieldMetaData.tsx +5 -26
  134. package/dist/components/core/model/ModelMetaData.d.ts.map +1 -1
  135. package/dist/components/core/model/ModelMetaData.js +48 -55
  136. package/dist/components/core/model/ModelMetaData.js.map +1 -1
  137. package/dist/components/core/model/ModelMetaData.tsx +4 -22
  138. package/dist/components/core/module/CreateModule.d.ts.map +1 -1
  139. package/dist/components/core/module/CreateModule.js +42 -44
  140. package/dist/components/core/module/CreateModule.js.map +1 -1
  141. package/dist/components/core/module/CreateModule.tsx +13 -27
  142. package/dist/components/core/module/ModuleListViewData.d.ts.map +1 -1
  143. package/dist/components/core/module/ModuleListViewData.js +11 -7
  144. package/dist/components/core/module/ModuleListViewData.js.map +1 -1
  145. package/dist/components/core/module/ModuleListViewData.tsx +10 -8
  146. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  147. package/dist/components/core/tree/SolidTreeView.js +32 -69
  148. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  149. package/dist/components/core/tree/SolidTreeView.tsx +8 -47
  150. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  151. package/dist/components/core/users/CreateUser.js +24 -37
  152. package/dist/components/core/users/CreateUser.js.map +1 -1
  153. package/dist/components/core/users/CreateUser.tsx +8 -46
  154. package/dist/components/core/users/UserListView.d.ts.map +1 -1
  155. package/dist/components/core/users/UserListView.js +9 -16
  156. package/dist/components/core/users/UserListView.js.map +1 -1
  157. package/dist/components/core/users/UserListView.tsx +5 -21
  158. package/dist/components/layout/AdminLayout.d.ts.map +1 -1
  159. package/dist/components/layout/AdminLayout.js +4 -2
  160. package/dist/components/layout/AdminLayout.js.map +1 -1
  161. package/dist/components/layout/AdminLayout.tsx +4 -2
  162. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  163. package/dist/components/layout/AppSidebar.js +1 -2
  164. package/dist/components/layout/AppSidebar.js.map +1 -1
  165. package/dist/components/layout/AppSidebar.tsx +0 -2
  166. package/dist/components/layout/Layout.d.ts.map +1 -1
  167. package/dist/components/layout/Layout.js +2 -1
  168. package/dist/components/layout/Layout.js.map +1 -1
  169. package/dist/components/layout/Layout.tsx +2 -0
  170. package/dist/components/layout/navbar-one.d.ts.map +1 -1
  171. package/dist/components/layout/navbar-one.js +1 -2
  172. package/dist/components/layout/navbar-one.js.map +1 -1
  173. package/dist/components/layout/navbar-one.tsx +0 -2
  174. package/dist/components/layout/navbar-two-menu.d.ts.map +1 -1
  175. package/dist/components/layout/navbar-two-menu.js +50 -24
  176. package/dist/components/layout/navbar-two-menu.js.map +1 -1
  177. package/dist/components/layout/navbar-two-menu.tsx +48 -30
  178. package/dist/index.d.ts +4 -0
  179. package/dist/index.d.ts.map +1 -1
  180. package/dist/index.js +3 -0
  181. package/dist/index.js.map +1 -1
  182. package/dist/index.ts +4 -0
  183. package/dist/redux/features/toastSlice.d.ts +15 -0
  184. package/dist/redux/features/toastSlice.d.ts.map +1 -0
  185. package/dist/redux/features/toastSlice.js +20 -0
  186. package/dist/redux/features/toastSlice.js.map +1 -0
  187. package/dist/redux/features/toastSlice.ts +35 -0
  188. package/dist/redux/store/defaultStoreConfig.d.ts +1 -0
  189. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  190. package/dist/redux/store/defaultStoreConfig.js +2 -1
  191. package/dist/redux/store/defaultStoreConfig.js.map +1 -1
  192. package/dist/redux/store/defaultStoreConfig.ts +2 -0
  193. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteModuleRowAction.js","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidCircularLoader } from \"../../../../../../components/core/common/SolidLoaders/SolidCircularLoader\";\nimport { ERROR_MESSAGES } from \"../../../../../../constants/error-messages\";\nimport { useGetModelsQuery, useLazyGetModelsQuery } from \"../../../../../../redux/api/modelApi\";\nimport { useGenerateCodeFormoduleMutation } from \"../../../../../../redux/api/moduleApi\";\nimport { createSolidEntityApi } from \"../../../../../../redux/api/solidEntityApi\";\nimport { useSeederMutation } from \"../../../../../../redux/api/solidServiceApi\";\nimport { closePopup } from \"../../../../../../redux/features/popupSlice\";\nimport { SolidListRowdataDynamicFunctionProps } from \"../../../../../../types/solid-core\";\nimport { kebabCase } from \"lodash\";\nimport { Button } from \"primereact/button\";\nimport { Checkbox } from \"primereact/checkbox\";\nimport { Column } from \"primereact/column\";\nimport { DataTable } from \"primereact/datatable\";\nimport { Toast } from \"primereact/toast\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport showToast from \"../../../../../../helpers/showToast\";\n\nconst DeleteModuleRowAction = (event: SolidListRowdataDynamicFunctionProps) => {\n\n const [isConfirmed, setIsConfirmed] = useState(false);\n const [errorState, setErrorState] = useState<string | null>(null);\n const [isDeleting, setIsDeleting] = useState(false);\n const dispatch = useDispatch();\n const entityApi = createSolidEntityApi(\"moduleMetadata\");\n const { useDeleteSolidEntityMutation } = entityApi;\n\n const [allowDelete, setAllowDelete] = useState(false);\n\n const [deleteSolidSingleEntiry, {\n isError: isSolidEntitiesDeleteError,\n }] = useDeleteSolidEntityMutation()\n\n const queryString = `filters[$and][0][$or][0][module][$in][0]=${event?.rowData?.id}`;\n const { data: models, isLoading: getModelsLoading, error } = useGetModelsQuery(queryString);\n\n useEffect(() => {\n if (models && models.meta.totalRecords == 0) {\n setAllowDelete(true);\n } else {\n setAllowDelete(false);\n }\n }, [models]);\n\n const toast = useRef<Toast>(null);\n\n const deleteModuleHandler = async () => {\n setIsDeleting(true);\n setErrorState(null);\n try {\n const res: any = await deleteSolidSingleEntiry(event.rowData.id)\n // console.log('delete model res', res);\n setErrorState(res.error || null);\n if (res.error) {\n // handle backend or RTK error object\n const message =\n res.error?.data?.message ||\n res.error?.error ||\n ERROR_MESSAGES.ERROR_OCCURED;\n setErrorState(message);\n showToast(toast, 'error', ERROR_MESSAGES.DELETE_FAIELD, message);\n } else {\n showToast(toast, 'success', ERROR_MESSAGES.MODEL_DELETE, ERROR_MESSAGES.MODEL_DELETE_SUCCESSFULLY(event.rowData.singularName));\n dispatch(closePopup());\n }\n } catch (err: any) {\n console.error(ERROR_MESSAGES.DELETE_ERROR, err);\n setErrorState(err.message || ERROR_MESSAGES.NETWORK_ERROR);\n showToast(toast, 'error', ERROR_MESSAGES.ERROR, ERROR_MESSAGES.NETWORK_OR_SERVER_ERROR);\n } finally {\n setIsDeleting(false);\n }\n }\n\n const rows = [\n { file: `${kebabCase(event.rowData.name)}.module.ts`, description: 'Delete the module file', intervention: 'Automatic'},\n { file: `${kebabCase(event.rowData.name)}-metadata.json`, description: 'Remove the module metadata json file', intervention: 'Automatic' },\n ];\n\n return (\n <div className=\"\">\n <div className=\"p-dialog-header secondary-border-bottom py-3\" style={{ background: 'var(--solid-light-grey)' }}>\n <span className=\"p-dialog-title\">\n Delete Module\n </span>\n </div>\n <div className=\"px-4 pb-4 pt-3\">\n <div>\n <p className=\"form-field-label font-medium\">\n {allowDelete === true ?\n \"Deleting a module should be done carefully. The below files will be impacted as part of deleting a model:\"\n :\n \"This module still has models associated with it. Please delete those models before deleting the module\"\n }\n </p>\n {/* {allowDelete === true && */}\n <DataTable value={rows} size=\"small\">\n <Column field=\"file\" header=\"File Name\" />\n <Column field=\"description\" header=\"Description\" />\n <Column field=\"intervention\" header=\"Intervention\" />\n </DataTable>\n {/* } */}\n {/* {allowDelete === true &&\n\n <div className=\"my-4\">\n <div className=\"flex align-items-center\">\n <Checkbox\n inputId=\"confirmation\"\n name=\"confirm\"\n checked={isConfirmed}\n onChange={() => setIsConfirmed(!isConfirmed)} />\n <label htmlFor=\"confirmation\" className=\"ml-2 form-field-label\">\n I confirm that #7 &amp; #9 will be done by me manually after the automatic steps above are applied.\n </label>\n </div>\n </div>\n } */}\n </div>\n <div className=\"flex gap-3 justify-content-start\">\n {allowDelete === true &&\n <Button size=\"small\" label=\"Apply\" autoFocus onClick={deleteModuleHandler} />\n }\n <Button size=\"small\" label=\"Cancel\" outlined onClick={() => dispatch(closePopup())} />\n </div>\n </div>\n </div>\n )\n}\n\nexport default DeleteModuleRowAction;"]}
1
+ {"version":3,"file":"DeleteModuleRowAction.js","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAyB,MAAM,sCAAsC,CAAC;AAEhG,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAElF,OAAO,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAEzE,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAC;AAExE,IAAM,qBAAqB,GAAG,UAAC,KAA2C;;IAEhE,IAAA,KAAgC,QAAQ,CAAC,KAAK,CAAC,EAA9C,WAAW,QAAA,EAAE,cAAc,QAAmB,CAAC;IAChD,IAAA,KAA8B,QAAQ,CAAgB,IAAI,CAAC,EAA1D,UAAU,QAAA,EAAE,aAAa,QAAiC,CAAC;IAC5D,IAAA,KAA8B,QAAQ,CAAC,KAAK,CAAC,EAA5C,UAAU,QAAA,EAAE,aAAa,QAAmB,CAAC;IACpD,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,SAAS,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IACjD,IAAA,4BAA4B,GAAK,SAAS,6BAAd,CAAe;IAE7C,IAAA,KAAgC,QAAQ,CAAC,KAAK,CAAC,EAA9C,WAAW,QAAA,EAAE,cAAc,QAAmB,CAAC;IAEhD,IAAA,KAED,4BAA4B,EAAE,EAF5B,uBAAuB,QAAA,EACjB,0BAA0B,gBACJ,CAAA;IAEnC,IAAM,WAAW,GAAG,mDAA4C,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,0CAAE,EAAE,CAAE,CAAC;IAC/E,IAAA,KAAuD,iBAAiB,CAAC,WAAW,CAAC,EAA7E,MAAM,UAAA,EAAa,gBAAgB,eAAA,EAAE,KAAK,WAAmC,CAAC;IAE5F,SAAS,CAAC;QACN,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE;YACzC,cAAc,CAAC,IAAI,CAAC,CAAC;SACxB;aAAM;YACH,cAAc,CAAC,KAAK,CAAC,CAAC;SACzB;IACL,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,IAAM,mBAAmB,GAAG;;;;;;oBACxB,aAAa,CAAC,IAAI,CAAC,CAAC;oBACpB,aAAa,CAAC,IAAI,CAAC,CAAC;;;;oBAEC,qBAAM,uBAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;wBAChE,wCAAwC;sBADwB;;oBAA1D,GAAG,GAAQ,SAA+C;oBAChE,wCAAwC;oBACxC,aAAa,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;oBACjC,IAAI,GAAG,CAAC,KAAK,EAAE;wBAEL,OAAO,GACT,CAAA,MAAA,MAAA,GAAG,CAAC,KAAK,0CAAE,IAAI,0CAAE,OAAO;6BACxB,MAAA,GAAG,CAAC,KAAK,0CAAE,KAAK,CAAA;4BAChB,cAAc,CAAC,aAAa,CAAC;wBACjC,aAAa,CAAC,OAAO,CAAC,CAAC;wBACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;qBACtG;yBAAM;wBACH,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,yBAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;wBACjK,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;qBAC1B;;;;oBAED,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,KAAG,CAAC,CAAC;oBAChD,aAAa,CAAC,KAAG,CAAC,OAAO,IAAI,cAAc,CAAC,aAAa,CAAC,CAAC;oBAC3D,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;;;oBAE1H,aAAa,CAAC,KAAK,CAAC,CAAC;;;;;SAE5B,CAAA;IAED,IAAM,IAAI,GAAG;QACT,EAAE,IAAI,EAAE,UAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,eAAY,EAAE,WAAW,EAAE,wBAAwB,EAAE,YAAY,EAAE,WAAW,EAAC;QACvH,EAAE,IAAI,EAAE,UAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAgB,EAAE,WAAW,EAAE,sCAAsC,EAAE,YAAY,EAAE,WAAW,EAAE;KAC7I,CAAC;IAEF,OAAO,CACH,eAAK,SAAS,EAAC,EAAE,aACb,cAAK,SAAS,EAAC,8CAA8C,EAAC,KAAK,EAAE,EAAE,UAAU,EAAE,yBAAyB,EAAE,YAC1G,eAAM,SAAS,EAAC,gBAAgB,8BAEzB,GACL,EACN,eAAK,SAAS,EAAC,gBAAgB,aAC3B,0BACI,YAAG,SAAS,EAAC,8BAA8B,YACtC,WAAW,KAAK,IAAI,CAAC,CAAC;oCACnB,2GAA2G;oCAC3G,CAAC;wCACD,wGAAwG,GAE5G,EAEA,MAAC,SAAS,IAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAC,OAAO,aAChC,KAAC,MAAM,IAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,GAAG,EAC1C,KAAC,MAAM,IAAC,KAAK,EAAC,aAAa,EAAC,MAAM,EAAC,aAAa,GAAG,EACnD,KAAC,MAAM,IAAC,KAAK,EAAC,cAAc,EAAC,MAAM,EAAC,cAAc,GAAG,IAC7C,IAiBd,EACN,eAAK,SAAS,EAAC,kCAAkC,aAC5C,WAAW,KAAK,IAAI;gCACjB,KAAC,MAAM,IAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,OAAO,EAAC,SAAS,QAAC,OAAO,EAAE,mBAAmB,GAAI,EAEjF,KAAC,MAAM,IAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAC,QAAQ,QAAC,OAAO,EAAE,cAAM,OAAA,QAAQ,CAAC,UAAU,EAAE,CAAC,EAAtB,CAAsB,GAAI,IACpF,IACJ,IACJ,CACT,CAAA;AACL,CAAC,CAAA;AAED,eAAe,qBAAqB,CAAC","sourcesContent":["\nimport { SolidCircularLoader } from \"../../../../../../components/core/common/SolidLoaders/SolidCircularLoader\";\nimport { ERROR_MESSAGES } from \"../../../../../../constants/error-messages\";\nimport { useGetModelsQuery, useLazyGetModelsQuery } from \"../../../../../../redux/api/modelApi\";\nimport { useGenerateCodeFormoduleMutation } from \"../../../../../../redux/api/moduleApi\";\nimport { createSolidEntityApi } from \"../../../../../../redux/api/solidEntityApi\";\nimport { useSeederMutation } from \"../../../../../../redux/api/solidServiceApi\";\nimport { closePopup } from \"../../../../../../redux/features/popupSlice\";\nimport { SolidListRowdataDynamicFunctionProps } from \"../../../../../../types/solid-core\";\nimport { kebabCase } from \"lodash\";\nimport { Button } from \"primereact/button\";\nimport { Checkbox } from \"primereact/checkbox\";\nimport { Column } from \"primereact/column\";\nimport { DataTable } from \"primereact/datatable\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { showToast } from \"../../../../../../redux/features/toastSlice\";\n\nconst DeleteModuleRowAction = (event: SolidListRowdataDynamicFunctionProps) => {\n\n const [isConfirmed, setIsConfirmed] = useState(false);\n const [errorState, setErrorState] = useState<string | null>(null);\n const [isDeleting, setIsDeleting] = useState(false);\n const dispatch = useDispatch();\n const entityApi = createSolidEntityApi(\"moduleMetadata\");\n const { useDeleteSolidEntityMutation } = entityApi;\n\n const [allowDelete, setAllowDelete] = useState(false);\n\n const [deleteSolidSingleEntiry, {\n isError: isSolidEntitiesDeleteError,\n }] = useDeleteSolidEntityMutation()\n\n const queryString = `filters[$and][0][$or][0][module][$in][0]=${event?.rowData?.id}`;\n const { data: models, isLoading: getModelsLoading, error } = useGetModelsQuery(queryString);\n\n useEffect(() => {\n if (models && models.meta.totalRecords == 0) {\n setAllowDelete(true);\n } else {\n setAllowDelete(false);\n }\n }, [models]);\n\n const deleteModuleHandler = async () => {\n setIsDeleting(true);\n setErrorState(null);\n try {\n const res: any = await deleteSolidSingleEntiry(event.rowData.id)\n // console.log('delete model res', res);\n setErrorState(res.error || null);\n if (res.error) {\n // handle backend or RTK error object\n const message =\n res.error?.data?.message ||\n res.error?.error ||\n ERROR_MESSAGES.ERROR_OCCURED;\n setErrorState(message);\n dispatch(showToast({ severity: 'error', summary: ERROR_MESSAGES.DELETE_FAIELD, detail: message }));\n } else {\n dispatch(showToast({ severity: 'success', summary: ERROR_MESSAGES.MODEL_DELETE, detail: ERROR_MESSAGES.MODEL_DELETE_SUCCESSFULLY(event.rowData.singularName) }));\n dispatch(closePopup());\n }\n } catch (err: any) {\n console.error(ERROR_MESSAGES.DELETE_ERROR, err);\n setErrorState(err.message || ERROR_MESSAGES.NETWORK_ERROR);\n dispatch(showToast({ severity: 'error', summary: ERROR_MESSAGES.ERROR, detail: ERROR_MESSAGES.NETWORK_OR_SERVER_ERROR }));\n } finally {\n setIsDeleting(false);\n }\n }\n\n const rows = [\n { file: `${kebabCase(event.rowData.name)}.module.ts`, description: 'Delete the module file', intervention: 'Automatic'},\n { file: `${kebabCase(event.rowData.name)}-metadata.json`, description: 'Remove the module metadata json file', intervention: 'Automatic' },\n ];\n\n return (\n <div className=\"\">\n <div className=\"p-dialog-header secondary-border-bottom py-3\" style={{ background: 'var(--solid-light-grey)' }}>\n <span className=\"p-dialog-title\">\n Delete Module\n </span>\n </div>\n <div className=\"px-4 pb-4 pt-3\">\n <div>\n <p className=\"form-field-label font-medium\">\n {allowDelete === true ?\n \"Deleting a module should be done carefully. The below files will be impacted as part of deleting a model:\"\n :\n \"This module still has models associated with it. Please delete those models before deleting the module\"\n }\n </p>\n {/* {allowDelete === true && */}\n <DataTable value={rows} size=\"small\">\n <Column field=\"file\" header=\"File Name\" />\n <Column field=\"description\" header=\"Description\" />\n <Column field=\"intervention\" header=\"Intervention\" />\n </DataTable>\n {/* } */}\n {/* {allowDelete === true &&\n\n <div className=\"my-4\">\n <div className=\"flex align-items-center\">\n <Checkbox\n inputId=\"confirmation\"\n name=\"confirm\"\n checked={isConfirmed}\n onChange={() => setIsConfirmed(!isConfirmed)} />\n <label htmlFor=\"confirmation\" className=\"ml-2 form-field-label\">\n I confirm that #7 &amp; #9 will be done by me manually after the automatic steps above are applied.\n </label>\n </div>\n </div>\n } */}\n </div>\n <div className=\"flex gap-3 justify-content-start\">\n {allowDelete === true &&\n <Button size=\"small\" label=\"Apply\" autoFocus onClick={deleteModuleHandler} />\n }\n <Button size=\"small\" label=\"Cancel\" outlined onClick={() => dispatch(closePopup())} />\n </div>\n </div>\n </div>\n )\n}\n\nexport default DeleteModuleRowAction;"]}
@@ -12,10 +12,9 @@ import { Button } from "primereact/button";
12
12
  import { Checkbox } from "primereact/checkbox";
13
13
  import { Column } from "primereact/column";
14
14
  import { DataTable } from "primereact/datatable";
15
- import { Toast } from "primereact/toast";
16
- import { useEffect, useRef, useState } from "react";
15
+ import { useEffect, useState } from "react";
17
16
  import { useDispatch } from "react-redux";
18
- import showToast from "../../../../../../helpers/showToast";
17
+ import { showToast } from "../../../../../../redux/features/toastSlice";
19
18
 
20
19
  const DeleteModuleRowAction = (event: SolidListRowdataDynamicFunctionProps) => {
21
20
 
@@ -43,8 +42,6 @@ const DeleteModuleRowAction = (event: SolidListRowdataDynamicFunctionProps) => {
43
42
  }
44
43
  }, [models]);
45
44
 
46
- const toast = useRef<Toast>(null);
47
-
48
45
  const deleteModuleHandler = async () => {
49
46
  setIsDeleting(true);
50
47
  setErrorState(null);
@@ -59,15 +56,15 @@ const DeleteModuleRowAction = (event: SolidListRowdataDynamicFunctionProps) => {
59
56
  res.error?.error ||
60
57
  ERROR_MESSAGES.ERROR_OCCURED;
61
58
  setErrorState(message);
62
- showToast(toast, 'error', ERROR_MESSAGES.DELETE_FAIELD, message);
59
+ dispatch(showToast({ severity: 'error', summary: ERROR_MESSAGES.DELETE_FAIELD, detail: message }));
63
60
  } else {
64
- showToast(toast, 'success', ERROR_MESSAGES.MODEL_DELETE, ERROR_MESSAGES.MODEL_DELETE_SUCCESSFULLY(event.rowData.singularName));
61
+ dispatch(showToast({ severity: 'success', summary: ERROR_MESSAGES.MODEL_DELETE, detail: ERROR_MESSAGES.MODEL_DELETE_SUCCESSFULLY(event.rowData.singularName) }));
65
62
  dispatch(closePopup());
66
63
  }
67
64
  } catch (err: any) {
68
65
  console.error(ERROR_MESSAGES.DELETE_ERROR, err);
69
66
  setErrorState(err.message || ERROR_MESSAGES.NETWORK_ERROR);
70
- showToast(toast, 'error', ERROR_MESSAGES.ERROR, ERROR_MESSAGES.NETWORK_OR_SERVER_ERROR);
67
+ dispatch(showToast({ severity: 'error', summary: ERROR_MESSAGES.ERROR, detail: ERROR_MESSAGES.NETWORK_OR_SERVER_ERROR }));
71
68
  } finally {
72
69
  setIsDeleting(false);
73
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GenerateModuleCodeRowAction.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,oCAAoC,EAAE,MAAM,oCAAoC,CAAC;AAQ1F,QAAA,MAAM,2BAA2B,UAAW,oCAAoC,4CAwL/E,CAAA;AAED,eAAe,2BAA2B,CAAC"}
1
+ {"version":3,"file":"GenerateModuleCodeRowAction.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,oCAAoC,EAAE,MAAM,oCAAoC,CAAC;AAO1F,QAAA,MAAM,2BAA2B,UAAW,oCAAoC,4CAoL/E,CAAA;AAED,eAAe,2BAA2B,CAAC"}
@@ -41,11 +41,10 @@ import { useGenerateCodeFormoduleMutation } from "../../../../../../redux/api/mo
41
41
  import { useSeederMutation } from "../../../../../../redux/api/solidServiceApi";
42
42
  import { closePopup } from "../../../../../../redux/features/popupSlice";
43
43
  import { Button } from "primereact/button";
44
- import { Toast } from "primereact/toast";
45
- import { useEffect, useRef, useState } from "react";
44
+ import { useEffect, useState } from "react";
46
45
  import { useDispatch } from "react-redux";
46
+ import { showToast } from "../../../../../../redux/features/toastSlice";
47
47
  import { env } from "../../../../../../adapters/env";
48
- import showToast from "../../../../../../helpers/showToast";
49
48
  var GenerateModuleCodeRowAction = function (event) {
50
49
  var _a;
51
50
  var dispatch = useDispatch();
@@ -112,7 +111,7 @@ var GenerateModuleCodeRowAction = function (event) {
112
111
  setIsGenerating(false);
113
112
  dispatch(closePopup());
114
113
  console.log("error", error_1);
115
- showToast(toast, "error", "Something went wrong", ERROR_MESSAGES.API_ERROR);
114
+ dispatch(showToast({ severity: "error", summary: "Something went wrong", detail: ERROR_MESSAGES.API_ERROR }));
116
115
  return [3 /*break*/, 3];
117
116
  case 3: return [2 /*return*/];
118
117
  }
@@ -160,7 +159,6 @@ var GenerateModuleCodeRowAction = function (event) {
160
159
  });
161
160
  });
162
161
  };
163
- var toast = useRef(null);
164
162
  useEffect(function () {
165
163
  var runSeederIfBackendAlive = function () { return __awaiter(void 0, void 0, void 0, function () {
166
164
  var isAlive;
@@ -182,7 +180,7 @@ var GenerateModuleCodeRowAction = function (event) {
182
180
  case 3:
183
181
  dispatch(closePopup());
184
182
  console.log(ERROR_MESSAGES.BACKEND_NOT_ALIVE);
185
- showToast(toast, "error", ERROR_MESSAGES.BACKEND_UNAVAILABLE, ERROR_MESSAGES.SEEDER_NOT_TRIGGERED);
183
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.BACKEND_UNAVAILABLE, detail: ERROR_MESSAGES.SEEDER_NOT_TRIGGERED }));
186
184
  _a.label = 4;
187
185
  case 4: return [2 /*return*/];
188
186
  }
@@ -195,24 +193,24 @@ var GenerateModuleCodeRowAction = function (event) {
195
193
  useEffect(function () {
196
194
  if (isSeederSuccess) {
197
195
  console.log(ERROR_MESSAGES.IS_SEEDER_SUCCESS, data);
198
- showToast(toast, "success", ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY, ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY);
196
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY, detail: ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY }));
199
197
  setIsGenerating(false);
200
198
  dispatch(closePopup());
201
199
  window.location.reload();
202
200
  }
203
201
  if (isSeederError) {
204
202
  console.log(ERROR_MESSAGES.IS_SEEDER_ERROR, isSeederError);
205
- showToast(toast, "error", ERROR_MESSAGES.SEEDER_ERROR, ERROR_MESSAGES.SEEDER_NOT_RUN);
203
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.SEEDER_ERROR, detail: ERROR_MESSAGES.SEEDER_NOT_RUN }));
206
204
  setIsGenerating(false);
207
205
  }
208
206
  }, [isSeederSuccess]);
209
207
  // TODO: END REFACTORING - reusable code alert
210
208
  return (_jsx(_Fragment, { children: isGenerating ?
211
- _jsxs(_Fragment, { children: [_jsx(Toast, { ref: toast }), _jsxs("div", { className: "flex flex-column align-items-center justify-content-center", style: { padding: '2rem', height: 200 }, children: [_jsx(SolidCircularLoader, {}), _jsx("p", { className: "mt-4 font-medium", children: "Waiting for backend..." })] })] })
209
+ _jsx(_Fragment, { children: _jsxs("div", { className: "flex flex-column align-items-center justify-content-center", style: { padding: '2rem', height: 200 }, children: [_jsx(SolidCircularLoader, {}), _jsx("p", { className: "mt-4 font-medium", children: "Waiting for backend..." })] }) })
212
210
  :
213
- _jsxs(_Fragment, { children: [_jsx(Toast, { ref: toast }), ((_a = event === null || event === void 0 ? void 0 : event.rowData) === null || _a === void 0 ? void 0 : _a.name) != "solid-core" ?
214
- _jsxs("div", { className: "", children: [_jsx("div", { className: "p-dialog-header secondary-border-bottom py-3", style: { background: 'var(--solid-light-grey)' }, children: _jsx("span", { className: "p-dialog-title", children: "Generate Module" }) }), _jsxs("div", { className: "px-4 pb-4 pt-3", children: [_jsx("p", { className: "text-start", children: "Proceed with module code generation? Existing files will be overwritten." }), _jsxs("div", { className: "flex gap-3 justify-content-start", children: [_jsx(Button, { size: "small", label: "Ok", autoFocus: true, onClick: generateCodeHandler }), _jsx(Button, { size: "small", label: "Cancel", outlined: true, onClick: function () { return dispatch(closePopup()); } })] })] })] }) :
215
- _jsxs("div", { className: "", children: [_jsx("div", { className: "p-dialog-header secondary-border-bottom py-3", style: { background: 'var(--solid-light-grey)' }, children: _jsx("span", { className: "p-dialog-title", children: "Generate Module" }) }), _jsxs("div", { className: "px-4 pb-4 pt-3", children: [_jsx("p", { className: "text-start", children: "You cannot generate code for Solid Core modules" }), _jsx("div", { className: "flex gap-3 justify-content-start", children: _jsx(Button, { size: "small", label: "Cancel", outlined: true, onClick: function () { return dispatch(closePopup()); } }) })] })] })] }) }));
211
+ _jsx(_Fragment, { children: ((_a = event === null || event === void 0 ? void 0 : event.rowData) === null || _a === void 0 ? void 0 : _a.name) != "solid-core" ?
212
+ _jsxs("div", { className: "", children: [_jsx("div", { className: "p-dialog-header secondary-border-bottom py-3", style: { background: 'var(--solid-light-grey)' }, children: _jsx("span", { className: "p-dialog-title", children: "Generate Module" }) }), _jsxs("div", { className: "px-4 pb-4 pt-3", children: [_jsx("p", { className: "text-start", children: "Proceed with module code generation? Existing files will be overwritten." }), _jsxs("div", { className: "flex gap-3 justify-content-start", children: [_jsx(Button, { size: "small", label: "Ok", autoFocus: true, onClick: generateCodeHandler }), _jsx(Button, { size: "small", label: "Cancel", outlined: true, onClick: function () { return dispatch(closePopup()); } })] })] })] }) :
213
+ _jsxs("div", { className: "", children: [_jsx("div", { className: "p-dialog-header secondary-border-bottom py-3", style: { background: 'var(--solid-light-grey)' }, children: _jsx("span", { className: "p-dialog-title", children: "Generate Module" }) }), _jsxs("div", { className: "px-4 pb-4 pt-3", children: [_jsx("p", { className: "text-start", children: "You cannot generate code for Solid Core modules" }), _jsx("div", { className: "flex gap-3 justify-content-start", children: _jsx(Button, { size: "small", label: "Cancel", outlined: true, onClick: function () { return dispatch(closePopup()); } }) })] })] }) }) }));
216
214
  };
217
215
  export default GenerateModuleCodeRowAction;
218
216
  //# sourceMappingURL=GenerateModuleCodeRowAction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenerateModuleCodeRowAction.js","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidCircularLoader } from \"../../../../../../components/core/common/SolidLoaders/SolidCircularLoader\";\nimport { ERROR_MESSAGES } from \"../../../../../../constants/error-messages\";\nimport { useGenerateCodeFormoduleMutation } from \"../../../../../../redux/api/moduleApi\";\nimport { useSeederMutation } from \"../../../../../../redux/api/solidServiceApi\";\nimport { closePopup } from \"../../../../../../redux/features/popupSlice\";\nimport { SolidListRowdataDynamicFunctionProps } from \"../../../../../../types/solid-core\";\nimport { Button } from \"primereact/button\";\nimport { Toast } from \"primereact/toast\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { env } from \"../../../../../../adapters/env\";\nimport showToast from \"../../../../../../helpers/showToast\";\n\nconst GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps) => {\n const dispatch = useDispatch()\n const [generateCode, {\n isLoading: isGenerateCodeUpdating,\n isSuccess: isGenerateCodeSuceess,\n isError: isGenerateCodeError,\n error: generateCodeError,\n data: generateCodeData\n }] = useGenerateCodeFormoduleMutation();\n\n // const mqMessageApi = createSolidEntityApi(\"mqMessage\");\n // const {\n // useGetSolidEntitiesQuery: useGetMqMessageQuery,\n // useLazyGetSolidEntitiesQuery: useLazyGetMqMessageQuery,\n // } = mqMessageApi;\n // const [getMqMessageStatus, {\n // data: solidListViewMetaData,\n // error: solidListViewMetaDataError,\n // isLoading: solidListViewMetaDataIsLoading,\n // isError: solidListViewMetaDataIsError\n // }] = useLazyGetMqMessageQuery();\n // const fetchMqMessageStatus = async (retries = 30, delay = 500, generateCodeData: any): Promise<boolean> => {\n // for (let i = 0; i < retries; i++) {\n // try {\n // const query = {\n // filters: {\n // messageId: {\n // $eq: generateCodeData?.data?.messageId\n // }\n // }\n // };\n // const queryString = qs.stringify(query, {\n // encodeValuesOnly: true,\n // });\n // const res = await getMqMessageStatus(queryString)\n // if (res.isSuccess === true) {\n // if (res.data.records.length > 0) {\n // const messageStage = res.data.records[0].stage;\n // console.log(\"messageStatus\", messageStage);\n // if (messageStage === \"succeeded\") {\n // return true\n // }\n // if (messageStage === \"failed\") {\n // return false\n // }\n // }\n // }\n // } catch (e) {\n // // ignore and retry\n // }\n // await new Promise((resolve) => setTimeout(resolve, delay));\n // }\n // return false;\n // };\n\n const generateCodeHandler = async () => {\n try {\n const response = await generateCode({ id: event?.rowData?.id });\n console.log(ERROR_MESSAGES.RESPONSE_GENERATE_CODE_HANDLER, response);\n setIsGenerating(true);\n } catch (error) {\n setIsGenerating(false);\n dispatch(closePopup());\n console.log(\"error\",error);\n showToast(toast, \"error\", \"Something went wrong\", ERROR_MESSAGES.API_ERROR);\n }\n }\n\n // TODO: START REFACTORING - reusable code alert\n const [triggerSeeder, {\n data,\n isLoading,\n isSuccess: isSeederSuccess,\n isError: isSeederError\n }] = useSeederMutation();\n\n // Utitlity to track if solid-api is up\n const [isPinging, setIsPinging] = useState(false);\n const [isGenerating, setIsGenerating] = useState(false);\n const pingBackendWithRetry = async (retries = 30, delay = 500): Promise<boolean> => {\n for (let i = 0; i < retries; i++) {\n try {\n const res = await fetch(`${env(\"NEXT_PUBLIC_BACKEND_API_URL\")}/api/ping`);\n console.log(\"ping response\", res);\n\n if (res.ok)\n return true;\n } catch (e) {\n // ignore and retry\n }\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n return false;\n };\n\n const toast = useRef<Toast>(null);\n\n useEffect(() => {\n const runSeederIfBackendAlive = async () => {\n if (isGenerateCodeSuceess) {\n console.log(\"isGenerateCodeSuceess\", isGenerateCodeSuceess);\n setIsPinging(true);\n // const hasMqMessageCompleted = await fetchMqMessageStatus(30, 500, generateCodeData);\n const isAlive = await pingBackendWithRetry(30, 500);\n\n setIsPinging(false);\n\n // if (hasMqMessageCompleted && isAlive) {\n if (isAlive) {\n await triggerSeeder(\"ModuleMetadataSeederService\");\n } else {\n dispatch(closePopup());\n console.log(ERROR_MESSAGES.BACKEND_NOT_ALIVE);\n showToast(toast, \"error\", ERROR_MESSAGES.BACKEND_UNAVAILABLE, ERROR_MESSAGES.SEEDER_NOT_TRIGGERED);\n }\n }\n };\n setTimeout(() => {\n runSeederIfBackendAlive();\n }, 5000);\n }, [isGenerateCodeSuceess]);\n\n useEffect(() => {\n if (isSeederSuccess) {\n console.log(ERROR_MESSAGES.IS_SEEDER_SUCCESS, data);\n showToast(toast, \"success\", ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY, ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY);\n setIsGenerating(false);\n dispatch(closePopup());\n window.location.reload();\n }\n if (isSeederError) {\n console.log(ERROR_MESSAGES.IS_SEEDER_ERROR, isSeederError);\n showToast(toast, \"error\", ERROR_MESSAGES.SEEDER_ERROR, ERROR_MESSAGES.SEEDER_NOT_RUN);\n setIsGenerating(false);\n }\n }, [isSeederSuccess])\n // TODO: END REFACTORING - reusable code alert\n\n return (\n <>\n {isGenerating ?\n <>\n <Toast ref={toast} />\n <div className=\"flex flex-column align-items-center justify-content-center\" style={{ padding: '2rem', height: 200 }}>\n <SolidCircularLoader />\n <p className=\"mt-4 font-medium\">Waiting for backend...</p>\n </div>\n </>\n :\n <>\n <Toast ref={toast} />\n {event?.rowData?.name != \"solid-core\" ?\n <div className=\"\">\n <div className=\"p-dialog-header secondary-border-bottom py-3\" style={{ background: 'var(--solid-light-grey)' }}>\n <span className=\"p-dialog-title\">\n Generate Module\n </span>\n </div>\n <div className=\"px-4 pb-4 pt-3\">\n <p className=\"text-start\">Proceed with module code generation? Existing files will be overwritten.</p>\n <div className=\"flex gap-3 justify-content-start\">\n <Button size=\"small\" label=\"Ok\" autoFocus onClick={generateCodeHandler} />\n <Button size=\"small\" label=\"Cancel\" outlined onClick={() => dispatch(closePopup())} />\n </div>\n </div>\n </div> :\n <div className=\"\">\n <div className=\"p-dialog-header secondary-border-bottom py-3\" style={{ background: 'var(--solid-light-grey)' }}>\n <span className=\"p-dialog-title\">\n Generate Module\n </span>\n </div>\n <div className=\"px-4 pb-4 pt-3\">\n <p className=\"text-start\">You cannot generate code for Solid Core modules</p>\n <div className=\"flex gap-3 justify-content-start\">\n <Button size=\"small\" label=\"Cancel\" outlined onClick={() => dispatch(closePopup())} />\n </div>\n </div>\n </div >\n }\n </>\n }\n </>\n )\n}\n\nexport default GenerateModuleCodeRowAction;\n"]}
1
+ {"version":3,"file":"GenerateModuleCodeRowAction.js","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidCircularLoader } from \"../../../../../../components/core/common/SolidLoaders/SolidCircularLoader\";\nimport { ERROR_MESSAGES } from \"../../../../../../constants/error-messages\";\nimport { useGenerateCodeFormoduleMutation } from \"../../../../../../redux/api/moduleApi\";\nimport { useSeederMutation } from \"../../../../../../redux/api/solidServiceApi\";\nimport { closePopup } from \"../../../../../../redux/features/popupSlice\";\nimport { SolidListRowdataDynamicFunctionProps } from \"../../../../../../types/solid-core\";\nimport { Button } from \"primereact/button\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { showToast } from \"../../../../../../redux/features/toastSlice\";\nimport { env } from \"../../../../../../adapters/env\";\n\nconst GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps) => {\n const dispatch = useDispatch()\n const [generateCode, {\n isLoading: isGenerateCodeUpdating,\n isSuccess: isGenerateCodeSuceess,\n isError: isGenerateCodeError,\n error: generateCodeError,\n data: generateCodeData\n }] = useGenerateCodeFormoduleMutation();\n\n // const mqMessageApi = createSolidEntityApi(\"mqMessage\");\n // const {\n // useGetSolidEntitiesQuery: useGetMqMessageQuery,\n // useLazyGetSolidEntitiesQuery: useLazyGetMqMessageQuery,\n // } = mqMessageApi;\n // const [getMqMessageStatus, {\n // data: solidListViewMetaData,\n // error: solidListViewMetaDataError,\n // isLoading: solidListViewMetaDataIsLoading,\n // isError: solidListViewMetaDataIsError\n // }] = useLazyGetMqMessageQuery();\n // const fetchMqMessageStatus = async (retries = 30, delay = 500, generateCodeData: any): Promise<boolean> => {\n // for (let i = 0; i < retries; i++) {\n // try {\n // const query = {\n // filters: {\n // messageId: {\n // $eq: generateCodeData?.data?.messageId\n // }\n // }\n // };\n // const queryString = qs.stringify(query, {\n // encodeValuesOnly: true,\n // });\n // const res = await getMqMessageStatus(queryString)\n // if (res.isSuccess === true) {\n // if (res.data.records.length > 0) {\n // const messageStage = res.data.records[0].stage;\n // console.log(\"messageStatus\", messageStage);\n // if (messageStage === \"succeeded\") {\n // return true\n // }\n // if (messageStage === \"failed\") {\n // return false\n // }\n // }\n // }\n // } catch (e) {\n // // ignore and retry\n // }\n // await new Promise((resolve) => setTimeout(resolve, delay));\n // }\n // return false;\n // };\n\n const generateCodeHandler = async () => {\n try {\n const response = await generateCode({ id: event?.rowData?.id });\n console.log(ERROR_MESSAGES.RESPONSE_GENERATE_CODE_HANDLER, response);\n setIsGenerating(true);\n } catch (error) {\n setIsGenerating(false);\n dispatch(closePopup());\n console.log(\"error\",error);\n dispatch(showToast({ severity: \"error\", summary: \"Something went wrong\", detail: ERROR_MESSAGES.API_ERROR }));\n }\n }\n\n // TODO: START REFACTORING - reusable code alert\n const [triggerSeeder, {\n data,\n isLoading,\n isSuccess: isSeederSuccess,\n isError: isSeederError\n }] = useSeederMutation();\n\n // Utitlity to track if solid-api is up\n const [isPinging, setIsPinging] = useState(false);\n const [isGenerating, setIsGenerating] = useState(false);\n const pingBackendWithRetry = async (retries = 30, delay = 500): Promise<boolean> => {\n for (let i = 0; i < retries; i++) {\n try {\n const res = await fetch(`${env(\"NEXT_PUBLIC_BACKEND_API_URL\")}/api/ping`);\n console.log(\"ping response\", res);\n\n if (res.ok)\n return true;\n } catch (e) {\n // ignore and retry\n }\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n return false;\n };\n\n useEffect(() => {\n const runSeederIfBackendAlive = async () => {\n if (isGenerateCodeSuceess) {\n console.log(\"isGenerateCodeSuceess\", isGenerateCodeSuceess);\n setIsPinging(true);\n // const hasMqMessageCompleted = await fetchMqMessageStatus(30, 500, generateCodeData);\n const isAlive = await pingBackendWithRetry(30, 500);\n\n setIsPinging(false);\n\n // if (hasMqMessageCompleted && isAlive) {\n if (isAlive) {\n await triggerSeeder(\"ModuleMetadataSeederService\");\n } else {\n dispatch(closePopup());\n console.log(ERROR_MESSAGES.BACKEND_NOT_ALIVE);\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.BACKEND_UNAVAILABLE, detail: ERROR_MESSAGES.SEEDER_NOT_TRIGGERED }));\n }\n }\n };\n setTimeout(() => {\n runSeederIfBackendAlive();\n }, 5000);\n }, [isGenerateCodeSuceess]);\n\n useEffect(() => {\n if (isSeederSuccess) {\n console.log(ERROR_MESSAGES.IS_SEEDER_SUCCESS, data);\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY, detail: ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY }));\n setIsGenerating(false);\n dispatch(closePopup());\n window.location.reload();\n }\n if (isSeederError) {\n console.log(ERROR_MESSAGES.IS_SEEDER_ERROR, isSeederError);\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.SEEDER_ERROR, detail: ERROR_MESSAGES.SEEDER_NOT_RUN }));\n setIsGenerating(false);\n }\n }, [isSeederSuccess])\n // TODO: END REFACTORING - reusable code alert\n\n return (\n <>\n {isGenerating ?\n <>\n <div className=\"flex flex-column align-items-center justify-content-center\" style={{ padding: '2rem', height: 200 }}>\n <SolidCircularLoader />\n <p className=\"mt-4 font-medium\">Waiting for backend...</p>\n </div>\n </>\n :\n <>\n {event?.rowData?.name != \"solid-core\" ?\n <div className=\"\">\n <div className=\"p-dialog-header secondary-border-bottom py-3\" style={{ background: 'var(--solid-light-grey)' }}>\n <span className=\"p-dialog-title\">\n Generate Module\n </span>\n </div>\n <div className=\"px-4 pb-4 pt-3\">\n <p className=\"text-start\">Proceed with module code generation? Existing files will be overwritten.</p>\n <div className=\"flex gap-3 justify-content-start\">\n <Button size=\"small\" label=\"Ok\" autoFocus onClick={generateCodeHandler} />\n <Button size=\"small\" label=\"Cancel\" outlined onClick={() => dispatch(closePopup())} />\n </div>\n </div>\n </div> :\n <div className=\"\">\n <div className=\"p-dialog-header secondary-border-bottom py-3\" style={{ background: 'var(--solid-light-grey)' }}>\n <span className=\"p-dialog-title\">\n Generate Module\n </span>\n </div>\n <div className=\"px-4 pb-4 pt-3\">\n <p className=\"text-start\">You cannot generate code for Solid Core modules</p>\n <div className=\"flex gap-3 justify-content-start\">\n <Button size=\"small\" label=\"Cancel\" outlined onClick={() => dispatch(closePopup())} />\n </div>\n </div>\n </div >\n }\n </>\n }\n </>\n )\n}\n\nexport default GenerateModuleCodeRowAction;\n"]}
@@ -6,11 +6,10 @@ import { useSeederMutation } from "../../../../../../redux/api/solidServiceApi";
6
6
  import { closePopup } from "../../../../../../redux/features/popupSlice";
7
7
  import { SolidListRowdataDynamicFunctionProps } from "../../../../../../types/solid-core";
8
8
  import { Button } from "primereact/button";
9
- import { Toast } from "primereact/toast";
10
- import { useEffect, useRef, useState } from "react";
9
+ import { useEffect, useState } from "react";
11
10
  import { useDispatch } from "react-redux";
11
+ import { showToast } from "../../../../../../redux/features/toastSlice";
12
12
  import { env } from "../../../../../../adapters/env";
13
- import showToast from "../../../../../../helpers/showToast";
14
13
 
15
14
  const GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps) => {
16
15
  const dispatch = useDispatch()
@@ -76,7 +75,7 @@ const GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps
76
75
  setIsGenerating(false);
77
76
  dispatch(closePopup());
78
77
  console.log("error",error);
79
- showToast(toast, "error", "Something went wrong", ERROR_MESSAGES.API_ERROR);
78
+ dispatch(showToast({ severity: "error", summary: "Something went wrong", detail: ERROR_MESSAGES.API_ERROR }));
80
79
  }
81
80
  }
82
81
 
@@ -107,8 +106,6 @@ const GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps
107
106
  return false;
108
107
  };
109
108
 
110
- const toast = useRef<Toast>(null);
111
-
112
109
  useEffect(() => {
113
110
  const runSeederIfBackendAlive = async () => {
114
111
  if (isGenerateCodeSuceess) {
@@ -125,7 +122,7 @@ const GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps
125
122
  } else {
126
123
  dispatch(closePopup());
127
124
  console.log(ERROR_MESSAGES.BACKEND_NOT_ALIVE);
128
- showToast(toast, "error", ERROR_MESSAGES.BACKEND_UNAVAILABLE, ERROR_MESSAGES.SEEDER_NOT_TRIGGERED);
125
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.BACKEND_UNAVAILABLE, detail: ERROR_MESSAGES.SEEDER_NOT_TRIGGERED }));
129
126
  }
130
127
  }
131
128
  };
@@ -137,14 +134,14 @@ const GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps
137
134
  useEffect(() => {
138
135
  if (isSeederSuccess) {
139
136
  console.log(ERROR_MESSAGES.IS_SEEDER_SUCCESS, data);
140
- showToast(toast, "success", ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY, ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY);
137
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY, detail: ERROR_MESSAGES.CODE_GENERTAE_SUCCESSFULLY }));
141
138
  setIsGenerating(false);
142
139
  dispatch(closePopup());
143
140
  window.location.reload();
144
141
  }
145
142
  if (isSeederError) {
146
143
  console.log(ERROR_MESSAGES.IS_SEEDER_ERROR, isSeederError);
147
- showToast(toast, "error", ERROR_MESSAGES.SEEDER_ERROR, ERROR_MESSAGES.SEEDER_NOT_RUN);
144
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.SEEDER_ERROR, detail: ERROR_MESSAGES.SEEDER_NOT_RUN }));
148
145
  setIsGenerating(false);
149
146
  }
150
147
  }, [isSeederSuccess])
@@ -154,7 +151,6 @@ const GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps
154
151
  <>
155
152
  {isGenerating ?
156
153
  <>
157
- <Toast ref={toast} />
158
154
  <div className="flex flex-column align-items-center justify-content-center" style={{ padding: '2rem', height: 200 }}>
159
155
  <SolidCircularLoader />
160
156
  <p className="mt-4 font-medium">Waiting for backend...</p>
@@ -162,7 +158,6 @@ const GenerateModuleCodeRowAction = (event: SolidListRowdataDynamicFunctionProps
162
158
  </>
163
159
  :
164
160
  <>
165
- <Toast ref={toast} />
166
161
  {event?.rowData?.name != "solid-core" ?
167
162
  <div className="">
168
163
  <div className="p-dialog-header secondary-border-bottom py-3" style={{ background: 'var(--solid-light-grey)' }}>
@@ -1 +1 @@
1
- {"version":3,"file":"RolePermissionsManyToManyFieldWidget.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAe5E,eAAO,MAAM,oCAAoC,6BAA8B,yBAAyB,4CA2HvG,CAAC"}
1
+ {"version":3,"file":"RolePermissionsManyToManyFieldWidget.d.ts","sourceRoot":"","sources":["../../../../../../src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAe5E,eAAO,MAAM,oCAAoC,6BAA8B,yBAAyB,4CAsIvG,CAAC"}
@@ -10,6 +10,8 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { capitalize } from "lodash";
14
+ import { Message } from "primereact/message";
13
15
  import { Panel } from "primereact/panel";
14
16
  import { useEffect, useState } from "react";
15
17
  import { Button } from "primereact/button";
@@ -29,13 +31,13 @@ var groupByController = function (items) {
29
31
  return grouped;
30
32
  };
31
33
  export var RolePermissionsManyToManyFieldWidget = function (_a) {
32
- var _b;
34
+ var _b, _c, _d, _e, _f, _g, _h;
33
35
  var formik = _a.formik, fieldContext = _a.fieldContext;
34
36
  var fieldLayoutInfo = fieldContext.field;
35
37
  var readOnlyPermission = fieldContext.readOnly;
36
- var _c = useState(false), visibleCreateDialog = _c[0], setVisibleCreateDialog = _c[1];
37
- var _d = useState({}), visibleDialogs = _d[0], setVisibleDialogs = _d[1];
38
- var _e = useRelationEntityHandler({ fieldContext: fieldContext }), allOptions = _e.allOptions, currentValues = _e.currentValues, fetchAllOptions = _e.fetchAllOptions, fetchCurrentValues = _e.fetchCurrentValues, linkItem = _e.linkItem, unlinkItem = _e.unlinkItem, addNewRelation = _e.addNewRelation;
38
+ var _j = useState(false), visibleCreateDialog = _j[0], setVisibleCreateDialog = _j[1];
39
+ var _k = useState({}), visibleDialogs = _k[0], setVisibleDialogs = _k[1];
40
+ var _l = useRelationEntityHandler({ fieldContext: fieldContext }), allOptions = _l.allOptions, currentValues = _l.currentValues, fetchAllOptions = _l.fetchAllOptions, fetchCurrentValues = _l.fetchCurrentValues, linkItem = _l.linkItem, unlinkItem = _l.unlinkItem, addNewRelation = _l.addNewRelation;
39
41
  // On mount: load already-linked permissions into currentValues
40
42
  useEffect(function () {
41
43
  fetchCurrentValues();
@@ -61,10 +63,13 @@ export var RolePermissionsManyToManyFieldWidget = function (_a) {
61
63
  var _a;
62
64
  return (__assign(__assign({}, prev), (_a = {}, _a[controllerName] = true, _a)));
63
65
  });
64
- }, className: "custom-add-button" }), _jsx(InlineRelationEntityDialog, { visible: visibleCreateDialog, setVisible: setVisibleCreateDialog, fieldContext: fieldContext, onCreate: addNewRelation })] }))] }), _jsx("div", { children: options.togglerElement })] }));
66
+ }, className: "custom-add-button", disabled: isUnsaved }), _jsx(InlineRelationEntityDialog, { visible: visibleCreateDialog, setVisible: setVisibleCreateDialog, fieldContext: fieldContext, onCreate: addNewRelation })] }))] }), _jsx("div", { children: options.togglerElement })] }));
65
67
  }; };
68
+ var isUnsaved = ((_c = fieldContext.data) === null || _c === void 0 ? void 0 : _c.id) === undefined || ((_d = fieldContext.data) === null || _d === void 0 ? void 0 : _d.id) === "new";
69
+ var entityName = ((_h = (_g = (_f = (_e = fieldContext.solidFormViewMetaData) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.solidView) === null || _g === void 0 ? void 0 : _g.model) === null || _h === void 0 ? void 0 : _h.displayName) || capitalize(fieldContext.modelName);
70
+ var fieldLabel = fieldLayoutInfo.attrs.label || "Permissions";
66
71
  var groupedEntities = groupByController(allOptions || []);
67
- return (_jsxs("div", { children: [Object.keys(groupedEntities).map(function (controllerName) { return (_jsx(Panel, { toggleable: true, headerTemplate: getHeaderTemplate(controllerName), className: "mt-3 lg:mt-4", children: _jsx("div", { className: "formgrid grid gap-3 lg:gap-0", children: groupedEntities[controllerName].map(function (entity, i) { return (_jsxs("div", { className: "field col-12 lg:col-6 flex gap-2 ".concat(i >= 2 ? 'lg:mt-3' : ''), children: [_jsx(Checkbox, { readOnly: readOnlyPermission, inputId: entity.label, checked: currentValues.some(function (s) { return s.value === entity.value; }), onChange: function () { return handleCheckboxChange(entity); } }), _jsx("label", { htmlFor: entity.label, className: "form-field-label m-0 solid-permisson-form-label", children: entity.label })] }, entity.value)); }) }) }, controllerName)); }), Object.keys(groupedEntities).map(function (controllerName) { return (_jsx(InlineRelationEntityDialog, { visible: visibleDialogs[controllerName] || false, setVisible: function (visible) {
72
+ return (_jsxs("div", { children: [isUnsaved && (_jsx("div", { className: "mb-2", children: _jsx(Message, { severity: "warn", text: "Please save the ".concat(entityName, " first to assign ").concat(fieldLabel, "."), className: "w-full justify-content-start" }) })), Object.keys(groupedEntities).map(function (controllerName) { return (_jsx(Panel, { toggleable: true, headerTemplate: getHeaderTemplate(controllerName), className: "mt-3 lg:mt-4", children: _jsx("div", { className: "formgrid grid gap-3 lg:gap-0", children: groupedEntities[controllerName].map(function (entity, i) { return (_jsxs("div", { className: "field col-12 lg:col-6 flex gap-2 ".concat(i >= 2 ? 'lg:mt-3' : ''), children: [_jsx(Checkbox, { readOnly: readOnlyPermission || isUnsaved, disabled: isUnsaved, inputId: entity.label, checked: currentValues.some(function (s) { return s.value === entity.value; }), onChange: function () { return handleCheckboxChange(entity); } }), _jsx("label", { htmlFor: entity.label, className: "form-field-label m-0 solid-permisson-form-label", children: entity.label })] }, entity.value)); }) }) }, controllerName)); }), Object.keys(groupedEntities).map(function (controllerName) { return (_jsx(InlineRelationEntityDialog, { visible: visibleDialogs[controllerName] || false, setVisible: function (visible) {
68
73
  return setVisibleDialogs(function (prev) {
69
74
  var _a;
70
75
  return (__assign(__assign({}, prev), (_a = {}, _a[controllerName] = visible, _a)));
@@ -1 +1 @@
1
- {"version":3,"file":"RolePermissionsManyToManyFieldWidget.js","sourceRoot":"","sources":["../../../../../../src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["import { capitalize } from \"lodash\";\nimport { Panel } from \"primereact/panel\";\nimport { useEffect, useState } from \"react\";\nimport { Button } from \"primereact/button\";\nimport { useRelationEntityHandler } from \"../../../../../components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler\";\nimport { InlineRelationEntityDialog } from \"../../../../../components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog\";\nimport { Checkbox } from \"primereact/checkbox\";\nimport { SolidFormFieldWidgetProps } from \"../../../../../types/solid-core\";\nimport qs from 'qs';\n\nconst groupByController = (items: any[]) => {\n const grouped: { [key: string]: any[] } = {};\n items.forEach((item) => {\n const controllerName = item.label.split(\".\")[0];\n if (!grouped[controllerName]) {\n grouped[controllerName] = [];\n }\n grouped[controllerName].push(item);\n });\n return grouped;\n};\n\nexport const RolePermissionsManyToManyFieldWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldLayoutInfo = fieldContext.field;\n const readOnlyPermission = fieldContext.readOnly;\n const [visibleCreateDialog, setVisibleCreateDialog] = useState(false);\n\n const [visibleDialogs, setVisibleDialogs] = useState<{ [key: string]: boolean }>({});\n\n const {\n allOptions,\n currentValues,\n fetchAllOptions,\n fetchCurrentValues,\n linkItem,\n unlinkItem,\n addNewRelation,\n } = useRelationEntityHandler({ fieldContext });\n\n // On mount: load already-linked permissions into currentValues\n useEffect(() => {\n fetchCurrentValues();\n }, [fieldContext.data?.id]);\n\n // On mount: load all available permissions into allOptions\n useEffect(() => {\n const queryData = { offset: 0, limit: 1000 };\n fetchAllOptions(qs.stringify(queryData, { encodeValuesOnly: true }));\n }, []);\n\n const handleCheckboxChange = (item: any) => {\n const isCurrentlyLinked = currentValues.some((s) => s.value === item.value);\n if (isCurrentlyLinked) {\n unlinkItem(item);\n } else {\n linkItem(item);\n }\n };\n\n const getHeaderTemplate = (controllerName: string) => (options: any) => {\n const className = `${options.className} justify-content-space-between`;\n\n return (\n <div className={className}>\n <div className=\"flex align-items-center gap-3\">\n <label className=\"form-field-label text-base lg:text-lg font-bold\">\n {controllerName}\n </label>\n {fieldContext.field.attrs.inlineCreate && (\n <>\n <Button\n icon=\"pi pi-plus\"\n rounded\n outlined\n aria-label=\"Add\"\n type=\"button\"\n size=\"small\"\n onClick={() =>\n setVisibleDialogs((prev) => ({\n ...prev,\n [controllerName]: true,\n }))\n }\n className=\"custom-add-button\"\n />\n <InlineRelationEntityDialog\n visible={visibleCreateDialog}\n setVisible={setVisibleCreateDialog}\n fieldContext={fieldContext}\n onCreate={addNewRelation}\n />\n </>\n )}\n </div>\n <div>{options.togglerElement}</div>\n </div>\n );\n };\n\n const groupedEntities = groupByController(allOptions || []);\n return (\n <div>\n {Object.keys(groupedEntities).map((controllerName) => (\n <Panel\n key={controllerName}\n toggleable\n headerTemplate={getHeaderTemplate(controllerName)}\n className=\"mt-3 lg:mt-4\"\n >\n <div className=\"formgrid grid gap-3 lg:gap-0\">\n {groupedEntities[controllerName].map((entity: any, i: number) => (\n <div\n key={entity.value}\n className={`field col-12 lg:col-6 flex gap-2 ${i >= 2 ? 'lg:mt-3' : ''}`}\n >\n <Checkbox\n readOnly={readOnlyPermission}\n inputId={entity.label}\n checked={currentValues.some((s) => s.value === entity.value)}\n onChange={() => handleCheckboxChange(entity)}\n />\n <label htmlFor={entity.label} className=\"form-field-label m-0 solid-permisson-form-label\">\n {entity.label}\n </label>\n </div>\n ))}\n </div>\n </Panel>\n ))}\n {Object.keys(groupedEntities).map((controllerName) => (\n <InlineRelationEntityDialog\n key={`dialog-${controllerName}`}\n visible={visibleDialogs[controllerName] || false}\n setVisible={(visible: any) =>\n setVisibleDialogs((prev) => ({\n ...prev,\n [controllerName]: visible,\n }))\n }\n fieldContext={fieldContext}\n onCreate={addNewRelation}\n />\n ))}\n </div>\n );\n};"]}
1
+ {"version":3,"file":"RolePermissionsManyToManyFieldWidget.js","sourceRoot":"","sources":["../../../../../../src/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["import { capitalize } from \"lodash\";\nimport { Message } from \"primereact/message\";\nimport { Panel } from \"primereact/panel\";\nimport { useEffect, useState } from \"react\";\nimport { Button } from \"primereact/button\";\nimport { useRelationEntityHandler } from \"../../../../../components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler\";\nimport { InlineRelationEntityDialog } from \"../../../../../components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog\";\nimport { Checkbox } from \"primereact/checkbox\";\nimport { SolidFormFieldWidgetProps } from \"../../../../../types/solid-core\";\nimport qs from 'qs';\n\nconst groupByController = (items: any[]) => {\n const grouped: { [key: string]: any[] } = {};\n items.forEach((item) => {\n const controllerName = item.label.split(\".\")[0];\n if (!grouped[controllerName]) {\n grouped[controllerName] = [];\n }\n grouped[controllerName].push(item);\n });\n return grouped;\n};\n\nexport const RolePermissionsManyToManyFieldWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldLayoutInfo = fieldContext.field;\n const readOnlyPermission = fieldContext.readOnly;\n const [visibleCreateDialog, setVisibleCreateDialog] = useState(false);\n\n const [visibleDialogs, setVisibleDialogs] = useState<{ [key: string]: boolean }>({});\n\n const {\n allOptions,\n currentValues,\n fetchAllOptions,\n fetchCurrentValues,\n linkItem,\n unlinkItem,\n addNewRelation,\n } = useRelationEntityHandler({ fieldContext });\n\n // On mount: load already-linked permissions into currentValues\n useEffect(() => {\n fetchCurrentValues();\n }, [fieldContext.data?.id]);\n\n // On mount: load all available permissions into allOptions\n useEffect(() => {\n const queryData = { offset: 0, limit: 1000 };\n fetchAllOptions(qs.stringify(queryData, { encodeValuesOnly: true }));\n }, []);\n\n const handleCheckboxChange = (item: any) => {\n const isCurrentlyLinked = currentValues.some((s) => s.value === item.value);\n if (isCurrentlyLinked) {\n unlinkItem(item);\n } else {\n linkItem(item);\n }\n };\n\n const getHeaderTemplate = (controllerName: string) => (options: any) => {\n const className = `${options.className} justify-content-space-between`;\n\n return (\n <div className={className}>\n <div className=\"flex align-items-center gap-3\">\n <label className=\"form-field-label text-base lg:text-lg font-bold\">\n {controllerName}\n </label>\n {fieldContext.field.attrs.inlineCreate && (\n <>\n <Button\n icon=\"pi pi-plus\"\n rounded\n outlined\n aria-label=\"Add\"\n type=\"button\"\n size=\"small\"\n onClick={() =>\n setVisibleDialogs((prev) => ({\n ...prev,\n [controllerName]: true,\n }))\n }\n className=\"custom-add-button\"\n disabled={isUnsaved}\n />\n <InlineRelationEntityDialog\n visible={visibleCreateDialog}\n setVisible={setVisibleCreateDialog}\n fieldContext={fieldContext}\n onCreate={addNewRelation}\n />\n </>\n )}\n </div>\n <div>{options.togglerElement}</div>\n </div>\n );\n };\n\n const isUnsaved = fieldContext.data?.id === undefined || fieldContext.data?.id === \"new\";\n const entityName = fieldContext.solidFormViewMetaData?.data?.solidView?.model?.displayName || capitalize(fieldContext.modelName);\n const fieldLabel = fieldLayoutInfo.attrs.label || \"Permissions\";\n\n const groupedEntities = groupByController(allOptions || []);\n return (\n <div>\n {isUnsaved && (\n <div className=\"mb-2\">\n <Message severity=\"warn\" text={`Please save the ${entityName} first to assign ${fieldLabel}.`} className=\"w-full justify-content-start\" />\n </div>\n )}\n {Object.keys(groupedEntities).map((controllerName) => (\n <Panel\n key={controllerName}\n toggleable\n headerTemplate={getHeaderTemplate(controllerName)}\n className=\"mt-3 lg:mt-4\"\n >\n <div className=\"formgrid grid gap-3 lg:gap-0\">\n {groupedEntities[controllerName].map((entity: any, i: number) => (\n <div\n key={entity.value}\n className={`field col-12 lg:col-6 flex gap-2 ${i >= 2 ? 'lg:mt-3' : ''}`}\n >\n <Checkbox\n readOnly={readOnlyPermission || isUnsaved}\n disabled={isUnsaved}\n inputId={entity.label}\n checked={currentValues.some((s) => s.value === entity.value)}\n onChange={() => handleCheckboxChange(entity)}\n />\n <label htmlFor={entity.label} className=\"form-field-label m-0 solid-permisson-form-label\">\n {entity.label}\n </label>\n </div>\n ))}\n </div>\n </Panel>\n ))}\n {Object.keys(groupedEntities).map((controllerName) => (\n <InlineRelationEntityDialog\n key={`dialog-${controllerName}`}\n visible={visibleDialogs[controllerName] || false}\n setVisible={(visible: any) =>\n setVisibleDialogs((prev) => ({\n ...prev,\n [controllerName]: visible,\n }))\n }\n fieldContext={fieldContext}\n onCreate={addNewRelation}\n />\n ))}\n </div>\n );\n};"]}
@@ -1,4 +1,5 @@
1
1
  import { capitalize } from "lodash";
2
+ import { Message } from "primereact/message";
2
3
  import { Panel } from "primereact/panel";
3
4
  import { useEffect, useState } from "react";
4
5
  import { Button } from "primereact/button";
@@ -82,6 +83,7 @@ export const RolePermissionsManyToManyFieldWidget = ({ formik, fieldContext }: S
82
83
  }))
83
84
  }
84
85
  className="custom-add-button"
86
+ disabled={isUnsaved}
85
87
  />
86
88
  <InlineRelationEntityDialog
87
89
  visible={visibleCreateDialog}
@@ -97,9 +99,18 @@ export const RolePermissionsManyToManyFieldWidget = ({ formik, fieldContext }: S
97
99
  );
98
100
  };
99
101
 
102
+ const isUnsaved = fieldContext.data?.id === undefined || fieldContext.data?.id === "new";
103
+ const entityName = fieldContext.solidFormViewMetaData?.data?.solidView?.model?.displayName || capitalize(fieldContext.modelName);
104
+ const fieldLabel = fieldLayoutInfo.attrs.label || "Permissions";
105
+
100
106
  const groupedEntities = groupByController(allOptions || []);
101
107
  return (
102
108
  <div>
109
+ {isUnsaved && (
110
+ <div className="mb-2">
111
+ <Message severity="warn" text={`Please save the ${entityName} first to assign ${fieldLabel}.`} className="w-full justify-content-start" />
112
+ </div>
113
+ )}
103
114
  {Object.keys(groupedEntities).map((controllerName) => (
104
115
  <Panel
105
116
  key={controllerName}
@@ -114,7 +125,8 @@ export const RolePermissionsManyToManyFieldWidget = ({ formik, fieldContext }: S
114
125
  className={`field col-12 lg:col-6 flex gap-2 ${i >= 2 ? 'lg:mt-3' : ''}`}
115
126
  >
116
127
  <Checkbox
117
- readOnly={readOnlyPermission}
128
+ readOnly={readOnlyPermission || isUnsaved}
129
+ disabled={isUnsaved}
118
130
  inputId={entity.label}
119
131
  checked={currentValues.some((s) => s.value === entity.value)}
120
132
  onChange={() => handleCheckboxChange(entity)}
@@ -1 +1 @@
1
- {"version":3,"file":"SolidFormUserViewLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/core/form/SolidFormUserViewLayout.tsx"],"names":[],"mappings":"AAaA,eAAO,MAAM,uBAAuB,sDAAuD,GAAG,mDA6D7F,CAAC"}
1
+ {"version":3,"file":"SolidFormUserViewLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/core/form/SolidFormUserViewLayout.tsx"],"names":[],"mappings":"AAYA,eAAO,MAAM,uBAAuB,sDAAuD,GAAG,mDA4D7F,CAAC"}
@@ -37,18 +37,17 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
37
37
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
38
38
  import { useFormik } from "formik";
39
39
  import { Button } from "primereact/button";
40
- import { useRef } from "react";
40
+ import { useDispatch } from "react-redux";
41
41
  import { createSolidEntityApi } from "../../../redux/api/solidEntityApi";
42
42
  import { javascript } from "@codemirror/lang-javascript";
43
43
  import { oneDark } from "@codemirror/theme-one-dark";
44
44
  import CodeMirror, { EditorView } from "@uiw/react-codemirror";
45
- import { Toast } from "primereact/toast";
46
45
  import { ERROR_MESSAGES } from "../../../constants/error-messages";
47
- import showToast from "../../../helpers/showToast";
46
+ import { showToast } from "../../../redux/features/toastSlice";
48
47
  export var SolidFormUserViewLayout = function (_a) {
49
48
  var _b;
50
49
  var solidFormViewMetaData = _a.solidFormViewMetaData, setLayoutDialogVisible = _a.setLayoutDialogVisible;
51
- var toast = useRef(null);
50
+ var dispatch = useDispatch();
52
51
  var entityApi = createSolidEntityApi("userViewMetadata");
53
52
  var useUpsertSolidEntityMutation = entityApi.useUpsertSolidEntityMutation;
54
53
  var upsertUserView = useUpsertSolidEntityMutation()[0];
@@ -76,7 +75,7 @@ export var SolidFormUserViewLayout = function (_a) {
76
75
  case 2:
77
76
  response = _a.sent();
78
77
  if (response.statusCode === 200) {
79
- showToast(toast, "success", ERROR_MESSAGES.LAYOUT, ERROR_MESSAGES.FORM_LAYOUT_UPDATE);
78
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.LAYOUT, detail: ERROR_MESSAGES.FORM_LAYOUT_UPDATE }));
80
79
  setLayoutDialogVisible(false);
81
80
  window.location.reload();
82
81
  }
@@ -91,8 +90,8 @@ export var SolidFormUserViewLayout = function (_a) {
91
90
  });
92
91
  }); },
93
92
  });
94
- return (_jsxs(_Fragment, { children: [_jsx(Toast, { ref: toast }), _jsxs("form", { onSubmit: formik.handleSubmit, children: [_jsx(CodeMirror, { value: formik.values.layoutString, height: "500px", theme: oneDark, style: { fontSize: '10px' }, extensions: [javascript(), EditorView.lineWrapping], onChange: function (value) {
95
- formik.setFieldValue("layoutString", value);
96
- } }), _jsxs("div", { className: "pt-3 flex gap-2", children: [_jsx(Button, { type: "submit", label: "Apply", size: "small" }), _jsx(Button, { type: "button", outlined: true, label: "Cancel", size: "small", onClick: function () { return setLayoutDialogVisible(false); } })] })] })] }));
93
+ return (_jsx(_Fragment, { children: _jsxs("form", { onSubmit: formik.handleSubmit, children: [_jsx(CodeMirror, { value: formik.values.layoutString, height: "500px", theme: oneDark, style: { fontSize: '10px' }, extensions: [javascript(), EditorView.lineWrapping], onChange: function (value) {
94
+ formik.setFieldValue("layoutString", value);
95
+ } }), _jsxs("div", { className: "pt-3 flex gap-2", children: [_jsx(Button, { type: "submit", label: "Apply", size: "small" }), _jsx(Button, { type: "button", outlined: true, label: "Cancel", size: "small", onClick: function () { return setLayoutDialogVisible(false); } })] })] }) }));
97
96
  };
98
97
  //# sourceMappingURL=SolidFormUserViewLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolidFormUserViewLayout.js","sourceRoot":"","sources":["../../../../src/components/core/form/SolidFormUserViewLayout.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { useFormik } from \"formik\";\nimport { Button } from \"primereact/button\";\nimport { useSelector } from \"react-redux\";\nimport React, { useRef } from \"react\";\nimport { createSolidEntityApi } from \"../../../redux/api/solidEntityApi\";\nimport { javascript } from \"@codemirror/lang-javascript\";\nimport { oneDark } from \"@codemirror/theme-one-dark\";\nimport CodeMirror, { EditorView } from \"@uiw/react-codemirror\";\nimport { Toast } from \"primereact/toast\";\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport showToast from \"../../../helpers/showToast\";\n\nexport const SolidFormUserViewLayout = ({ solidFormViewMetaData, setLayoutDialogVisible }: any) => {\n const toast = useRef<Toast>(null);\n const entityApi = createSolidEntityApi(\"userViewMetadata\");\n const { useUpsertSolidEntityMutation } = entityApi;\n const [upsertUserView] = useUpsertSolidEntityMutation();\n\n if (!solidFormViewMetaData?.data?.solidView) return null;\n\n const solidView = solidFormViewMetaData.data.solidView;\n\n const formik = useFormik({\n initialValues: {\n layoutString: JSON.stringify(solidView.layout, null, 2),\n },\n onSubmit: async (values) => {\n const parsedLayout = JSON.parse(values.layoutString);\n try {\n if (solidView.id) {\n const response = await upsertUserView({\n viewMetadataId: solidView.id,\n layout: JSON.stringify(parsedLayout)\n }).unwrap();\n if (response.statusCode === 200) {\n showToast(toast, \"success\", ERROR_MESSAGES.LAYOUT, ERROR_MESSAGES.FORM_LAYOUT_UPDATE);\n setLayoutDialogVisible(false);\n window.location.reload();\n }\n }\n } catch (error) {\n console.error(ERROR_MESSAGES.UPDATE_FAILED, error);\n }\n },\n });\n\n return (\n <>\n <Toast ref={toast} />\n <form onSubmit={formik.handleSubmit}>\n <CodeMirror\n value={formik.values.layoutString}\n height=\"500px\"\n theme={oneDark}\n style={{ fontSize: '10px' }}\n extensions={[javascript(), EditorView.lineWrapping]}\n onChange={(value) => {\n formik.setFieldValue(\"layoutString\", value);\n }}\n />\n <div className=\"pt-3 flex gap-2\">\n <Button type=\"submit\" label=\"Apply\" size=\"small\" />\n <Button\n type=\"button\"\n outlined\n label=\"Cancel\"\n size=\"small\"\n onClick={() => setLayoutDialogVisible(false)}\n />\n </div>\n </form>\n </>\n );\n};\n"]}
1
+ {"version":3,"file":"SolidFormUserViewLayout.js","sourceRoot":"","sources":["../../../../src/components/core/form/SolidFormUserViewLayout.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { useFormik } from \"formik\";\nimport { Button } from \"primereact/button\";\nimport { useSelector, useDispatch } from \"react-redux\";\nimport React from \"react\";\nimport { createSolidEntityApi } from \"../../../redux/api/solidEntityApi\";\nimport { javascript } from \"@codemirror/lang-javascript\";\nimport { oneDark } from \"@codemirror/theme-one-dark\";\nimport CodeMirror, { EditorView } from \"@uiw/react-codemirror\";\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport { showToast } from \"../../../redux/features/toastSlice\";\n\nexport const SolidFormUserViewLayout = ({ solidFormViewMetaData, setLayoutDialogVisible }: any) => {\n const dispatch = useDispatch();\n const entityApi = createSolidEntityApi(\"userViewMetadata\");\n const { useUpsertSolidEntityMutation } = entityApi;\n const [upsertUserView] = useUpsertSolidEntityMutation();\n\n if (!solidFormViewMetaData?.data?.solidView) return null;\n\n const solidView = solidFormViewMetaData.data.solidView;\n\n const formik = useFormik({\n initialValues: {\n layoutString: JSON.stringify(solidView.layout, null, 2),\n },\n onSubmit: async (values) => {\n const parsedLayout = JSON.parse(values.layoutString);\n try {\n if (solidView.id) {\n const response = await upsertUserView({\n viewMetadataId: solidView.id,\n layout: JSON.stringify(parsedLayout)\n }).unwrap();\n if (response.statusCode === 200) {\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.LAYOUT, detail: ERROR_MESSAGES.FORM_LAYOUT_UPDATE }));\n setLayoutDialogVisible(false);\n window.location.reload();\n }\n }\n } catch (error) {\n console.error(ERROR_MESSAGES.UPDATE_FAILED, error);\n }\n },\n });\n\n return (\n <>\n <form onSubmit={formik.handleSubmit}>\n <CodeMirror\n value={formik.values.layoutString}\n height=\"500px\"\n theme={oneDark}\n style={{ fontSize: '10px' }}\n extensions={[javascript(), EditorView.lineWrapping]}\n onChange={(value) => {\n formik.setFieldValue(\"layoutString\", value);\n }}\n />\n <div className=\"pt-3 flex gap-2\">\n <Button type=\"submit\" label=\"Apply\" size=\"small\" />\n <Button\n type=\"button\"\n outlined\n label=\"Cancel\"\n size=\"small\"\n onClick={() => setLayoutDialogVisible(false)}\n />\n </div>\n </form>\n </>\n );\n};\n"]}