@solidxai/core-ui 0.1.12-beta.5 → 0.1.12-beta.7

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 (475) hide show
  1. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  2. package/dist/components/auth/AuthLayout.js +5 -2
  3. package/dist/components/auth/AuthLayout.js.map +1 -1
  4. package/dist/components/auth/AuthLayout.tsx +6 -2
  5. package/dist/components/auth/SolidOTPVerify.d.ts +3 -0
  6. package/dist/components/auth/SolidOTPVerify.d.ts.map +1 -0
  7. package/dist/components/auth/SolidOTPVerify.js +67 -0
  8. package/dist/components/auth/SolidOTPVerify.js.map +1 -0
  9. package/dist/components/auth/SolidOTPVerify.tsx +133 -0
  10. package/dist/components/common/AuthBanner.d.ts +3 -0
  11. package/dist/components/common/AuthBanner.d.ts.map +1 -0
  12. package/dist/components/common/AuthBanner.js +15 -0
  13. package/dist/components/common/AuthBanner.js.map +1 -0
  14. package/dist/components/common/AuthBanner.tsx +41 -0
  15. package/dist/components/common/SingleSelectAutoCompleteField.d.ts +2 -0
  16. package/dist/components/common/SingleSelectAutoCompleteField.d.ts.map +1 -0
  17. package/dist/components/common/SingleSelectAutoCompleteField.js +92 -0
  18. package/dist/components/common/SingleSelectAutoCompleteField.js.map +1 -0
  19. package/dist/components/common/SingleSelectAutoCompleteField.tsx +73 -0
  20. package/dist/components/common/SolidExportStepper.d.ts +12 -0
  21. package/dist/components/common/SolidExportStepper.d.ts.map +1 -0
  22. package/dist/components/common/SolidExportStepper.js +30 -0
  23. package/dist/components/common/SolidExportStepper.js.map +1 -0
  24. package/dist/components/common/SolidExportStepper.tsx +135 -0
  25. package/dist/components/core/card/CardGrid.d.ts +1 -1
  26. package/dist/components/core/card/CardGrid.d.ts.map +1 -1
  27. package/dist/components/core/card/CardGrid.js +2 -2
  28. package/dist/components/core/card/CardGrid.js.map +1 -1
  29. package/dist/components/core/card/CardGrid.tsx +4 -0
  30. package/dist/components/core/card/CardItem.d.ts +2 -0
  31. package/dist/components/core/card/CardItem.d.ts.map +1 -1
  32. package/dist/components/core/card/CardItem.js +7 -2
  33. package/dist/components/core/card/CardItem.js.map +1 -1
  34. package/dist/components/core/card/CardItem.tsx +30 -8
  35. package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
  36. package/dist/components/core/card/SolidCardView.js +87 -21
  37. package/dist/components/core/card/SolidCardView.js.map +1 -1
  38. package/dist/components/core/card/SolidCardView.tsx +96 -40
  39. package/dist/components/core/card/SolidCardViewConfigure.d.ts +1 -1
  40. package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
  41. package/dist/components/core/card/SolidCardViewConfigure.js +9 -7
  42. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  43. package/dist/components/core/card/SolidCardViewConfigure.tsx +14 -1
  44. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts +2 -0
  45. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts.map +1 -0
  46. package/dist/components/core/common/LoadDynamicJsxComponent.js +50 -0
  47. package/dist/components/core/common/LoadDynamicJsxComponent.js.map +1 -0
  48. package/dist/components/core/common/LoadDynamicJsxComponent.tsx +70 -0
  49. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.d.ts +2 -0
  50. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.d.ts.map +1 -0
  51. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.js +16 -0
  52. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.js.map +1 -0
  53. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.tsx +29 -0
  54. package/dist/components/core/common/SolidGlobalSearchElement.js +1 -1
  55. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  56. package/dist/components/core/common/SolidGlobalSearchElement.tsx +1 -1
  57. package/dist/components/core/dashboard/DashboardFilter.d.ts +13 -0
  58. package/dist/components/core/dashboard/DashboardFilter.d.ts.map +1 -0
  59. package/dist/components/core/dashboard/DashboardFilter.js +299 -0
  60. package/dist/components/core/dashboard/DashboardFilter.js.map +1 -0
  61. package/dist/components/core/dashboard/DashboardFilter.tsx +348 -0
  62. package/dist/components/core/dashboard/PrimeDataTableWrapper.d.ts +3 -0
  63. package/dist/components/core/dashboard/PrimeDataTableWrapper.d.ts.map +1 -0
  64. package/dist/components/core/dashboard/PrimeDataTableWrapper.js +21 -0
  65. package/dist/components/core/dashboard/PrimeDataTableWrapper.js.map +1 -0
  66. package/dist/components/core/dashboard/PrimeDataTableWrapper.tsx +40 -0
  67. package/dist/components/core/dashboard/SolidDashboard.d.ts +28 -0
  68. package/dist/components/core/dashboard/SolidDashboard.d.ts.map +1 -0
  69. package/dist/components/core/dashboard/SolidDashboard.js +183 -0
  70. package/dist/components/core/dashboard/SolidDashboard.js.map +1 -0
  71. package/dist/components/core/dashboard/SolidDashboard.module.css +83 -0
  72. package/dist/components/core/dashboard/SolidDashboard.tsx +263 -0
  73. package/dist/components/core/dashboard/SolidDashboardBody.d.ts +24 -0
  74. package/dist/components/core/dashboard/SolidDashboardBody.d.ts.map +1 -0
  75. package/dist/components/core/dashboard/SolidDashboardBody.js +162 -0
  76. package/dist/components/core/dashboard/SolidDashboardBody.js.map +1 -0
  77. package/dist/components/core/dashboard/SolidDashboardBody.tsx +168 -0
  78. package/dist/components/core/dashboard/SolidDashboardFilterRequired.d.ts +2 -0
  79. package/dist/components/core/dashboard/SolidDashboardFilterRequired.d.ts.map +1 -0
  80. package/dist/components/core/dashboard/SolidDashboardFilterRequired.js +11 -0
  81. package/dist/components/core/dashboard/SolidDashboardFilterRequired.js.map +1 -0
  82. package/dist/components/core/dashboard/SolidDashboardFilterRequired.tsx +28 -0
  83. package/dist/components/core/dashboard/SolidDashboardHeader.d.ts +3 -0
  84. package/dist/components/core/dashboard/SolidDashboardHeader.d.ts.map +1 -0
  85. package/dist/components/core/dashboard/SolidDashboardHeader.js +6 -0
  86. package/dist/components/core/dashboard/SolidDashboardHeader.js.map +1 -0
  87. package/dist/components/core/dashboard/SolidDashboardHeader.tsx +10 -0
  88. package/dist/components/core/dashboard/SolidDashboardLoading.d.ts +2 -0
  89. package/dist/components/core/dashboard/SolidDashboardLoading.d.ts.map +1 -0
  90. package/dist/components/core/dashboard/SolidDashboardLoading.js +10 -0
  91. package/dist/components/core/dashboard/SolidDashboardLoading.js.map +1 -0
  92. package/dist/components/core/dashboard/SolidDashboardLoading.tsx +61 -0
  93. package/dist/components/core/dashboard/SolidDashboardNotAvailable.d.ts +3 -0
  94. package/dist/components/core/dashboard/SolidDashboardNotAvailable.d.ts.map +1 -0
  95. package/dist/components/core/dashboard/SolidDashboardNotAvailable.js +12 -0
  96. package/dist/components/core/dashboard/SolidDashboardNotAvailable.js.map +1 -0
  97. package/dist/components/core/dashboard/SolidDashboardNotAvailable.tsx +32 -0
  98. package/dist/components/core/dashboard/SolidDashboardRenderError.d.ts +2 -0
  99. package/dist/components/core/dashboard/SolidDashboardRenderError.d.ts.map +1 -0
  100. package/dist/components/core/dashboard/SolidDashboardRenderError.js +11 -0
  101. package/dist/components/core/dashboard/SolidDashboardRenderError.js.map +1 -0
  102. package/dist/components/core/dashboard/SolidDashboardRenderError.tsx +28 -0
  103. package/dist/components/core/dashboard/SolidDashboardVariable.d.ts +19 -0
  104. package/dist/components/core/dashboard/SolidDashboardVariable.d.ts.map +1 -0
  105. package/dist/components/core/dashboard/SolidDashboardVariable.js +171 -0
  106. package/dist/components/core/dashboard/SolidDashboardVariable.js.map +1 -0
  107. package/dist/components/core/dashboard/SolidDashboardVariable.tsx +259 -0
  108. package/dist/components/core/dashboard/SolidQuestionRenderer.d.ts +9 -0
  109. package/dist/components/core/dashboard/SolidQuestionRenderer.d.ts.map +1 -0
  110. package/dist/components/core/dashboard/SolidQuestionRenderer.js +42 -0
  111. package/dist/components/core/dashboard/SolidQuestionRenderer.js.map +1 -0
  112. package/dist/components/core/dashboard/SolidQuestionRenderer.tsx +99 -0
  113. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.d.ts +9 -0
  114. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.d.ts.map +1 -0
  115. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.js +35 -0
  116. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.js.map +1 -0
  117. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.tsx +48 -0
  118. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.d.ts +7 -0
  119. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.d.ts.map +1 -0
  120. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.js +22 -0
  121. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.js.map +1 -0
  122. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.tsx +51 -0
  123. package/dist/components/core/dashboard/chart-renderers/init-chartjs.d.ts +2 -0
  124. package/dist/components/core/dashboard/chart-renderers/init-chartjs.d.ts.map +1 -0
  125. package/dist/components/core/dashboard/chart-renderers/init-chartjs.js +4 -0
  126. package/dist/components/core/dashboard/chart-renderers/init-chartjs.js.map +1 -0
  127. package/dist/components/core/dashboard/chart-renderers/init-chartjs.ts +25 -0
  128. package/dist/components/core/dashboard/dashboard-utils.d.ts +2 -0
  129. package/dist/components/core/dashboard/dashboard-utils.d.ts.map +1 -0
  130. package/dist/components/core/dashboard/dashboard-utils.js +38 -0
  131. package/dist/components/core/dashboard/dashboard-utils.js.map +1 -0
  132. package/dist/components/core/dashboard/dashboard-utils.ts +39 -0
  133. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.d.ts +10 -0
  134. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.d.ts.map +1 -0
  135. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.js +16 -0
  136. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.js.map +1 -0
  137. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.ts +19 -0
  138. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.d.ts +8 -0
  139. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.d.ts.map +1 -0
  140. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.js +64 -0
  141. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.js.map +1 -0
  142. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.ts +30 -0
  143. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.d.ts +8 -0
  144. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.d.ts.map +1 -0
  145. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.js +62 -0
  146. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.js.map +1 -0
  147. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.ts +29 -0
  148. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.d.ts +4 -0
  149. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.d.ts.map +1 -0
  150. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.js +23 -0
  151. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.js.map +1 -0
  152. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.tsx +36 -0
  153. package/dist/components/core/form/SolidFormView.js +1 -1
  154. package/dist/components/core/form/SolidFormView.js.map +1 -1
  155. package/dist/components/core/form/SolidFormView.tsx +1 -1
  156. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts.map +1 -1
  157. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js +11 -1
  158. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js.map +1 -1
  159. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.tsx +26 -19
  160. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  161. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +13 -5
  162. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  163. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +16 -9
  164. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts +3 -0
  165. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts.map +1 -0
  166. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.js +92 -0
  167. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.js.map +1 -0
  168. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.tsx +68 -0
  169. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.d.ts +3 -0
  170. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.d.ts.map +1 -0
  171. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.js +111 -0
  172. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.js.map +1 -0
  173. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.tsx +122 -0
  174. package/dist/components/core/kanban/KanbanBoard.d.ts +1 -1
  175. package/dist/components/core/kanban/KanbanBoard.d.ts.map +1 -1
  176. package/dist/components/core/kanban/KanbanBoard.js +2 -2
  177. package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
  178. package/dist/components/core/kanban/KanbanBoard.tsx +3 -1
  179. package/dist/components/core/kanban/KanbanCard.d.ts +2 -0
  180. package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
  181. package/dist/components/core/kanban/KanbanCard.js +10 -5
  182. package/dist/components/core/kanban/KanbanCard.js.map +1 -1
  183. package/dist/components/core/kanban/KanbanCard.tsx +28 -12
  184. package/dist/components/core/kanban/KanbanColumn.d.ts +3 -1
  185. package/dist/components/core/kanban/KanbanColumn.d.ts.map +1 -1
  186. package/dist/components/core/kanban/KanbanColumn.js +2 -2
  187. package/dist/components/core/kanban/KanbanColumn.js.map +1 -1
  188. package/dist/components/core/kanban/KanbanColumn.tsx +4 -2
  189. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  190. package/dist/components/core/kanban/SolidKanbanView.js +154 -25
  191. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  192. package/dist/components/core/kanban/SolidKanbanView.tsx +129 -16
  193. package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts +1 -1
  194. package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts.map +1 -1
  195. package/dist/components/core/kanban/SolidKanbanViewConfigure.js +13 -10
  196. package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
  197. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +18 -3
  198. package/dist/components/core/kanban/SolidKanbanViewFields.d.ts +12 -0
  199. package/dist/components/core/kanban/SolidKanbanViewFields.d.ts.map +1 -0
  200. package/dist/components/core/kanban/SolidKanbanViewFields.js +145 -0
  201. package/dist/components/core/kanban/SolidKanbanViewFields.js.map +1 -0
  202. package/dist/components/core/kanban/SolidKanbanViewFields.tsx +164 -0
  203. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts +2 -0
  204. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts.map +1 -0
  205. package/dist/components/core/kanban/SolidManyToOneFilterElement.js +87 -0
  206. package/dist/components/core/kanban/SolidManyToOneFilterElement.js.map +1 -0
  207. package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +59 -0
  208. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.d.ts +2 -0
  209. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.d.ts.map +1 -0
  210. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.js +73 -0
  211. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.js.map +1 -0
  212. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.tsx +50 -0
  213. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.d.ts +2 -0
  214. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.d.ts.map +1 -0
  215. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.js +20 -0
  216. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.js.map +1 -0
  217. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.tsx +32 -0
  218. package/dist/components/core/kanban/SolidVarInputsFilterElement.d.ts +12 -0
  219. package/dist/components/core/kanban/SolidVarInputsFilterElement.d.ts.map +1 -0
  220. package/dist/components/core/kanban/SolidVarInputsFilterElement.js +81 -0
  221. package/dist/components/core/kanban/SolidVarInputsFilterElement.js.map +1 -0
  222. package/dist/components/core/kanban/SolidVarInputsFilterElement.tsx +184 -0
  223. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.d.ts +4 -0
  224. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.d.ts.map +1 -0
  225. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.js +7 -0
  226. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.js.map +1 -0
  227. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.tsx +9 -0
  228. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.d.ts +4 -0
  229. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.d.ts.map +1 -0
  230. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.js +8 -0
  231. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.js.map +1 -0
  232. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.tsx +16 -0
  233. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.d.ts +4 -0
  234. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.d.ts.map +1 -0
  235. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.js +21 -0
  236. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.js.map +1 -0
  237. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.tsx +23 -0
  238. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.d.ts +4 -0
  239. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.d.ts.map +1 -0
  240. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.js +8 -0
  241. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.js.map +1 -0
  242. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.tsx +14 -0
  243. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.d.ts +4 -0
  244. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.d.ts.map +1 -0
  245. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.js +8 -0
  246. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.js.map +1 -0
  247. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.tsx +13 -0
  248. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.d.ts +4 -0
  249. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.d.ts.map +1 -0
  250. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.js +7 -0
  251. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.js.map +1 -0
  252. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.tsx +9 -0
  253. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.d.ts +4 -0
  254. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.d.ts.map +1 -0
  255. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.js +8 -0
  256. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.js.map +1 -0
  257. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.tsx +12 -0
  258. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.d.ts +4 -0
  259. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.d.ts.map +1 -0
  260. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.js +7 -0
  261. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.js.map +1 -0
  262. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.tsx +9 -0
  263. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.d.ts +4 -0
  264. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.d.ts.map +1 -0
  265. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.js +8 -0
  266. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.js.map +1 -0
  267. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.tsx +14 -0
  268. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.d.ts +4 -0
  269. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.d.ts.map +1 -0
  270. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.js +16 -0
  271. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.js.map +1 -0
  272. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.tsx +20 -0
  273. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.d.ts +4 -0
  274. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.d.ts.map +1 -0
  275. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.js +7 -0
  276. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.js.map +1 -0
  277. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.tsx +9 -0
  278. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts +4 -0
  279. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts.map +1 -0
  280. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js +56 -0
  281. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js.map +1 -0
  282. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +140 -0
  283. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts +4 -0
  284. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts.map +1 -0
  285. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js +42 -0
  286. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js.map +1 -0
  287. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +164 -0
  288. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.d.ts +4 -0
  289. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.d.ts.map +1 -0
  290. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.js +11 -0
  291. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.js.map +1 -0
  292. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.tsx +13 -0
  293. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.d.ts +4 -0
  294. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.d.ts.map +1 -0
  295. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.js +7 -0
  296. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.js.map +1 -0
  297. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.tsx +9 -0
  298. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.d.ts +4 -0
  299. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.d.ts.map +1 -0
  300. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.js +8 -0
  301. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.js.map +1 -0
  302. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.tsx +14 -0
  303. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.d.ts +4 -0
  304. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.d.ts.map +1 -0
  305. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.js +8 -0
  306. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.js.map +1 -0
  307. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.tsx +14 -0
  308. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts +4 -0
  309. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts.map +1 -0
  310. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +37 -0
  311. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -0
  312. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +121 -0
  313. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.d.ts +4 -0
  314. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.d.ts.map +1 -0
  315. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.js +8 -0
  316. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.js.map +1 -0
  317. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.tsx +12 -0
  318. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.d.ts +4 -0
  319. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.d.ts.map +1 -0
  320. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.js +8 -0
  321. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.js.map +1 -0
  322. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.tsx +13 -0
  323. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.d.ts +4 -0
  324. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.d.ts.map +1 -0
  325. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js +7 -0
  326. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js.map +1 -0
  327. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +16 -0
  328. package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
  329. package/dist/components/core/list/SolidDataTable.js +1 -1
  330. package/dist/components/core/list/SolidDataTable.js.map +1 -1
  331. package/dist/components/core/list/SolidDataTable.tsx +1 -0
  332. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  333. package/dist/components/core/list/SolidListView.js +6 -1
  334. package/dist/components/core/list/SolidListView.js.map +1 -1
  335. package/dist/components/core/list/SolidListView.tsx +6 -1
  336. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts +2 -0
  337. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts.map +1 -0
  338. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js +39 -0
  339. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js.map +1 -0
  340. package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +40 -0
  341. package/dist/components/core/list/SolidVarInputsFilterElement.d.ts +12 -0
  342. package/dist/components/core/list/SolidVarInputsFilterElement.d.ts.map +1 -0
  343. package/dist/components/core/list/SolidVarInputsFilterElement.js +81 -0
  344. package/dist/components/core/list/SolidVarInputsFilterElement.js.map +1 -0
  345. package/dist/components/core/list/SolidVarInputsFilterElement.tsx +184 -0
  346. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts +3 -0
  347. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts.map +1 -0
  348. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.js +87 -0
  349. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.js.map +1 -0
  350. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.tsx +70 -0
  351. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.d.ts +3 -0
  352. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.d.ts.map +1 -0
  353. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.js +33 -0
  354. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.js.map +1 -0
  355. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.tsx +50 -0
  356. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.d.ts +3 -0
  357. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.d.ts.map +1 -0
  358. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.js +158 -0
  359. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.js.map +1 -0
  360. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.tsx +185 -0
  361. package/dist/components/core/model/FieldMetaDataForm.d.ts +1 -1
  362. package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
  363. package/dist/components/core/model/FieldMetaDataForm.js +119 -102
  364. package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
  365. package/dist/components/core/model/FieldMetaDataForm.tsx +82 -39
  366. package/dist/components/core/model/FieldSelector.d.ts +5 -1
  367. package/dist/components/core/model/FieldSelector.d.ts.map +1 -1
  368. package/dist/components/core/model/FieldSelector.js +25 -6
  369. package/dist/components/core/model/FieldSelector.js.map +1 -1
  370. package/dist/components/core/model/FieldSelector.tsx +50 -5
  371. package/dist/components/core/tree/SolidTreeTable.d.ts +2 -1
  372. package/dist/components/core/tree/SolidTreeTable.d.ts.map +1 -1
  373. package/dist/components/core/tree/SolidTreeTable.js +2 -2
  374. package/dist/components/core/tree/SolidTreeTable.js.map +1 -1
  375. package/dist/components/core/tree/SolidTreeTable.tsx +3 -1
  376. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  377. package/dist/components/core/tree/SolidTreeView.js +38 -15
  378. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  379. package/dist/components/core/tree/SolidTreeView.tsx +48 -23
  380. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  381. package/dist/components/core/users/CreateUser.js +45 -32
  382. package/dist/components/core/users/CreateUser.js.map +1 -1
  383. package/dist/components/core/users/CreateUser.tsx +15 -4
  384. package/dist/components/layout/DashboardHeader.d.ts +3 -0
  385. package/dist/components/layout/DashboardHeader.d.ts.map +1 -0
  386. package/dist/components/layout/DashboardHeader.js +20 -0
  387. package/dist/components/layout/DashboardHeader.js.map +1 -0
  388. package/dist/components/layout/DashboardHeader.tsx +94 -0
  389. package/dist/components/shad-cn-ui/SolidSelect.d.ts +2 -1
  390. package/dist/components/shad-cn-ui/SolidSelect.d.ts.map +1 -1
  391. package/dist/components/shad-cn-ui/SolidSelect.js +12 -4
  392. package/dist/components/shad-cn-ui/SolidSelect.js.map +1 -1
  393. package/dist/components/shad-cn-ui/SolidSelect.tsx +13 -1
  394. package/dist/helpers/# no such endpoints exist, need to calle +3 -0
  395. package/dist/helpers/ToastContainer.d.ts +4 -0
  396. package/dist/helpers/ToastContainer.d.ts.map +1 -0
  397. package/dist/helpers/ToastContainer.js +49 -0
  398. package/dist/helpers/ToastContainer.js.map +1 -0
  399. package/dist/helpers/ToastContainer.tsx +94 -0
  400. package/dist/helpers/showToast.d.ts +5 -0
  401. package/dist/helpers/showToast.d.ts.map +1 -0
  402. package/dist/helpers/showToast.js +17 -0
  403. package/dist/helpers/showToast.js.map +1 -0
  404. package/dist/helpers/showToast.ts +13 -0
  405. package/dist/helpers/studioSandbox.d.ts +31 -0
  406. package/dist/helpers/studioSandbox.d.ts.map +1 -0
  407. package/dist/helpers/studioSandbox.js +104 -0
  408. package/dist/helpers/studioSandbox.js.map +1 -0
  409. package/dist/helpers/studioSandbox.ts +117 -0
  410. package/dist/nextAuth/authProviders.d.ts +4 -0
  411. package/dist/nextAuth/authProviders.d.ts.map +1 -0
  412. package/dist/nextAuth/authProviders.js +198 -0
  413. package/dist/nextAuth/authProviders.js.map +1 -0
  414. package/dist/nextAuth/authProviders.tsx +232 -0
  415. package/dist/nextAuth/handleLogout.d.ts +2 -0
  416. package/dist/nextAuth/handleLogout.d.ts.map +1 -0
  417. package/dist/nextAuth/handleLogout.js +36 -0
  418. package/dist/nextAuth/handleLogout.js.map +1 -0
  419. package/dist/nextAuth/handleLogout.tsx +39 -0
  420. package/dist/nextAuth/refreshAccessToken.d.ts +2 -0
  421. package/dist/nextAuth/refreshAccessToken.d.ts.map +1 -0
  422. package/dist/nextAuth/refreshAccessToken.js +24 -0
  423. package/dist/nextAuth/refreshAccessToken.js.map +1 -0
  424. package/dist/nextAuth/refreshAccessToken.tsx +28 -0
  425. package/dist/redux/api/dashboardApi.d.ts +23 -0
  426. package/dist/redux/api/dashboardApi.d.ts.map +1 -0
  427. package/dist/redux/api/dashboardApi.js +35 -0
  428. package/dist/redux/api/dashboardApi.js.map +1 -0
  429. package/dist/redux/api/dashboardApi.ts +56 -0
  430. package/dist/redux/api/dashboardLayoutApi.d.ts +24 -0
  431. package/dist/redux/api/dashboardLayoutApi.d.ts.map +1 -0
  432. package/dist/redux/api/dashboardLayoutApi.js +34 -0
  433. package/dist/redux/api/dashboardLayoutApi.js.map +1 -0
  434. package/dist/redux/api/dashboardLayoutApi.ts +55 -0
  435. package/dist/redux/api/dashboardQuestionApi.d.ts +5 -0
  436. package/dist/redux/api/dashboardQuestionApi.d.ts.map +1 -0
  437. package/dist/redux/api/dashboardQuestionApi.js +18 -0
  438. package/dist/redux/api/dashboardQuestionApi.js.map +1 -0
  439. package/dist/redux/api/dashboardQuestionApi.ts +17 -0
  440. package/dist/redux/api/datasourceIntrospectionApi.d.ts +1 -0
  441. package/dist/redux/api/datasourceIntrospectionApi.d.ts.map +1 -1
  442. package/dist/redux/api/datasourceIntrospectionApi.js.map +1 -1
  443. package/dist/redux/api/datasourceIntrospectionApi.ts +1 -0
  444. package/dist/redux/features/settingsSlice.d.ts +20 -0
  445. package/dist/redux/features/settingsSlice.d.ts.map +1 -0
  446. package/dist/redux/features/settingsSlice.js +39 -0
  447. package/dist/redux/features/settingsSlice.js.map +1 -0
  448. package/dist/redux/features/settingsSlice.ts +60 -0
  449. package/dist/redux/store/defaultStoreConfig.d.ts +5 -5
  450. package/dist/resources/images/Footerbg.png +0 -0
  451. package/dist/resources/images/LoginBanner.png +0 -0
  452. package/dist/resources/images/dashboard/Ellipse 1.svg +10 -0
  453. package/dist/resources/images/dashboard/Rectangle 17.svg +10 -0
  454. package/dist/resources/images/dashboard/Rectangle 25.svg +11 -0
  455. package/dist/resources/images/dashboard/image 5.svg +9 -0
  456. package/dist/resources/images/loginhero.png +0 -0
  457. package/dist/resources/images/logo.png +0 -0
  458. package/dist/resources/images/radix-logo-white.png +0 -0
  459. package/dist/resources/images/radix-logo.png +0 -0
  460. package/dist/resources/images/signupBanner.png +0 -0
  461. package/dist/resources/shadcn-base.css +16 -70
  462. package/dist/resources/solid-custom.css +55 -0
  463. package/dist/resources/solid-responsive.css +4 -4
  464. package/dist/resources/solid-tailwind-generated.css +1 -1
  465. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.css +12 -0
  466. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.d.ts.map +1 -1
  467. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js +160 -59
  468. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js.map +1 -1
  469. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.tsx +293 -41
  470. package/package.json +1 -1
  471. package/dist/helpers/modulePackageResumeState.d.ts +0 -6
  472. package/dist/helpers/modulePackageResumeState.d.ts.map +0 -1
  473. package/dist/helpers/modulePackageResumeState.js +0 -46
  474. package/dist/helpers/modulePackageResumeState.js.map +0 -1
  475. package/dist/helpers/modulePackageResumeState.ts +0 -57
@@ -3,7 +3,7 @@ import { createSolidEntityApi } from "../../../redux/api/solidEntityApi";
3
3
  import { useGetSolidViewLayoutQuery } from "../../../redux/api/solidViewApi";
4
4
  import { useLazyCheckIfPermissionExistsQuery } from "../../../redux/api/userApi";
5
5
  import qs from "qs";
6
- import { ChangeEvent, useEffect, useRef, useState } from "react";
6
+ import { useEffect, useRef, useState } from "react";
7
7
  import { SolidLightbox } from "../../shad-cn-ui/SolidLightbox";
8
8
  import type { SolidLightboxSlide } from "../../shad-cn-ui/SolidLightbox";
9
9
  import { getMediaTypeFromUrl } from "../../../helpers/mediaType";
@@ -29,7 +29,9 @@ import {
29
29
  SolidDialogSeparator,
30
30
  SolidDialogTitle,
31
31
  SolidIcon,
32
+ SolidSelect,
32
33
  } from "../../shad-cn-ui";
34
+ import { showToast } from "../../../redux/features/toastSlice";
33
35
 
34
36
  type SolidCardViewParams = {
35
37
  moduleName: string;
@@ -126,6 +128,7 @@ export const SolidCardView = (params: SolidCardViewParams) => {
126
128
  const [queryDataLoaded, setQueryDataLoaded] = useState(false);
127
129
  const [solidCardViewMetaData, setSolidCardViewMetaData] = useState<any>();
128
130
  const [triggerCheckIfPermissionExists] = useLazyCheckIfPermissionExistsQuery();
131
+ const [showArchived, setShowArchived] = useState(false);
129
132
 
130
133
  const lightboxSlides: SolidLightboxSlide[] = Array.isArray(lightboxUrls)
131
134
  ? lightboxUrls
@@ -145,8 +148,9 @@ export const SolidCardView = (params: SolidCardViewParams) => {
145
148
  : [];
146
149
 
147
150
  const entityApi = createSolidEntityApi(params.modelName);
148
- const { useLazyGetSolidEntitiesQuery } = entityApi;
151
+ const { useLazyGetSolidEntitiesQuery, useLazyRecoverSolidEntityByIdQuery } = entityApi;
149
152
  const [triggerGetSolidEntities] = useLazyGetSolidEntitiesQuery();
153
+ const [triggerRecoverSolidEntityById, { isLoading: recoverByIdIsLoading }] = useLazyRecoverSolidEntityByIdQuery();
150
154
 
151
155
  const menuItemId = searchParams.get("menuItemId");
152
156
  const menuItemName = searchParams.get("menuItemName");
@@ -180,8 +184,8 @@ export const SolidCardView = (params: SolidCardViewParams) => {
180
184
  const canGoPrev = currentPage > 1;
181
185
  const canGoNext = currentPage < totalPages;
182
186
 
183
- const handleRowsChange = (event: ChangeEvent<HTMLSelectElement>) => {
184
- const nextRows = Number(event.target.value);
187
+ const handleRowsChange = (value: number) => {
188
+ const nextRows = Number(value);
185
189
  setRows(nextRows);
186
190
  setFirst(0);
187
191
  };
@@ -247,6 +251,11 @@ export const SolidCardView = (params: SolidCardViewParams) => {
247
251
  setRows(Number(persistedFilterObject?.limit) || rows);
248
252
  setRowsPerPageOptions(pageSizeOptions);
249
253
  setFirst(Number(persistedFilterObject?.offset) || 0);
254
+ setShowArchived(
255
+ persistedFilterObject?.showArchived === true ||
256
+ persistedFilterObject?.showArchived === "true" ||
257
+ persistedFilterObject?.showSoftDeleted === "inclusive"
258
+ );
250
259
  setToPopulate(toPopulate);
251
260
  setToPopulateMedia(toPopulateMedia);
252
261
  setFilters(restoredFilter.$and.length > 0 ? restoredFilter : { $and: [] });
@@ -272,34 +281,57 @@ export const SolidCardView = (params: SolidCardViewParams) => {
272
281
  setEditButtonUrl(editActionUrl);
273
282
  }, [solidCardViewMetaDataResponse]);
274
283
 
284
+ const loadCards = async (nextFilters = filters) => {
285
+ if (!queryDataLoaded || !solidCardViewMetaDataResponse) return;
286
+
287
+ setLoading(true);
288
+
289
+ const queryData: any = {
290
+ offset: first,
291
+ limit: rows,
292
+ populate: toPopulate,
293
+ populateMedia: toPopulateMedia,
294
+ filters: nextFilters,
295
+ };
296
+ if (showArchived) {
297
+ queryData.showSoftDeleted = "inclusive";
298
+ }
299
+
300
+ try {
301
+ const data: any = await triggerGetSolidEntities(
302
+ qs.stringify(queryData, { encodeValuesOnly: true })
303
+ ).unwrap();
304
+
305
+ setCards(data?.records || []);
306
+ setTotalRecords(data?.meta?.totalRecords || 0);
307
+ } finally {
308
+ setLoading(false);
309
+ }
310
+ };
311
+
275
312
  useEffect(() => {
276
- const fetchCards = async () => {
277
- if (!queryDataLoaded || !solidCardViewMetaDataResponse) return;
278
-
279
- setLoading(true);
280
-
281
- const queryData = {
282
- offset: first,
283
- limit: rows,
284
- populate: toPopulate,
285
- populateMedia: toPopulateMedia,
286
- filters,
287
- };
288
-
289
- try {
290
- const data: any = await triggerGetSolidEntities(
291
- qs.stringify(queryData, { encodeValuesOnly: true })
292
- ).unwrap();
293
-
294
- setCards(data?.records || []);
295
- setTotalRecords(data?.meta?.totalRecords || 0);
296
- } finally {
297
- setLoading(false);
298
- }
313
+ void loadCards(filters);
314
+ }, [filters, first, queryDataLoaded, rows, showArchived, solidCardViewMetaDataResponse, toPopulate, toPopulateMedia]);
315
+
316
+ useEffect(() => {
317
+ if (!queryDataLoaded) return;
318
+
319
+ const persistedFilterObject = typeof window !== "undefined" ? (getFilterObjectFromLocalStorage() || {}) : {};
320
+ const nextPersistedFilterObject: Record<string, any> = {
321
+ ...persistedFilterObject,
322
+ offset: first,
323
+ limit: rows,
324
+ showArchived,
299
325
  };
300
326
 
301
- fetchCards();
302
- }, [queryDataLoaded, first, rows, toPopulate, toPopulateMedia, filters, solidCardViewMetaDataResponse]);
327
+ if (showArchived) {
328
+ nextPersistedFilterObject.showSoftDeleted = "inclusive";
329
+ } else {
330
+ delete nextPersistedFilterObject.showSoftDeleted;
331
+ }
332
+
333
+ setFilterObjectToLocalStorage(nextPersistedFilterObject);
334
+ }, [first, queryDataLoaded, rows, showArchived]);
303
335
 
304
336
  const handleApplyCustomFilter = async (filterPredicates: any) => {
305
337
  const updatedFilter = { $and: [] as any[] };
@@ -322,6 +354,8 @@ export const SolidCardView = (params: SolidCardViewParams) => {
322
354
  setFilterObjectToLocalStorage({
323
355
  offset: 0,
324
356
  limit: rows,
357
+ showArchived,
358
+ ...(showArchived ? { showSoftDeleted: "inclusive" } : {}),
325
359
  custom_filter_predicate: filterPredicates.custom_filter_predicate || {},
326
360
  search_predicate: filterPredicates.search_predicate || {},
327
361
  saved_filter_predicate: filterPredicates.saved_filter_predicate || {},
@@ -335,7 +369,29 @@ export const SolidCardView = (params: SolidCardViewParams) => {
335
369
  return;
336
370
  }
337
371
 
338
- setQueryDataLoaded((current) => !current);
372
+ void loadCards(filters);
373
+ };
374
+
375
+ const handleRecoverRecord = async (record: any) => {
376
+ if (!record?.id) return;
377
+
378
+ try {
379
+ const response: any = await triggerRecoverSolidEntityById(record.id).unwrap();
380
+ dispatch(showToast({
381
+ severity: "success",
382
+ summary: "Success",
383
+ detail: response?.data?.message || "Record recovered successfully.",
384
+ life: 3000,
385
+ }));
386
+ await loadCards(filters);
387
+ } catch (error: any) {
388
+ dispatch(showToast({
389
+ severity: "error",
390
+ summary: "Recover Failed",
391
+ detail: error?.data?.message || error?.message || "Unable to recover the selected record.",
392
+ life: 4000,
393
+ }));
394
+ }
339
395
  };
340
396
 
341
397
  const toggleBothSidebars = () => {
@@ -348,7 +404,7 @@ export const SolidCardView = (params: SolidCardViewParams) => {
348
404
 
349
405
  const cardViewTitle = solidCardViewMetaDataResponse?.data?.solidView?.displayName;
350
406
  const showEmptyState = !loading && cards.length === 0;
351
- const headerRequestStatusLabel = loading || !queryDataLoaded ? "Loading..." : null;
407
+ const headerRequestStatusLabel = recoverByIdIsLoading ? "Recovering..." : loading || !queryDataLoaded ? "Loading..." : null;
352
408
 
353
409
  return (
354
410
  <div className="page-parent-wrapper solid-list-page-wrapper flex h-full min-h-0 overflow-hidden">
@@ -413,6 +469,8 @@ export const SolidCardView = (params: SolidCardViewParams) => {
413
469
  modelName={params.modelName}
414
470
  actionsAllowed={actionsAllowed}
415
471
  viewModes={viewModes}
472
+ setShowArchived={setShowArchived}
473
+ showArchived={showArchived}
416
474
  setLayoutDialogVisible={setLayoutDialogVisible}
417
475
  setShowSaveFilterPopup={setShowSaveFilterPopup}
418
476
  filters={filters}
@@ -451,8 +509,10 @@ export const SolidCardView = (params: SolidCardViewParams) => {
451
509
  records={cards}
452
510
  solidCardViewMetaData={solidCardViewMetaDataResponse?.data}
453
511
  editButtonUrl={editBaseUrl}
512
+ onRecover={handleRecoverRecord}
454
513
  setLightboxUrls={setLightboxUrls}
455
514
  setOpenLightbox={setOpenLightbox}
515
+ showArchived={showArchived}
456
516
  />
457
517
  )}
458
518
  </div>
@@ -462,17 +522,13 @@ export const SolidCardView = (params: SolidCardViewParams) => {
462
522
  <div className="solid-card-view-pagination-bar solid-table-paginator flex items-center justify-center gap-3 text-sm rounded-md border border-border/60 px-3 py-1.5 bg-background">
463
523
  <div className="solid-paginator-meta flex items-center gap-2">
464
524
  <span className="solid-paginator-label">Records</span>
465
- <select
525
+ <SolidSelect
466
526
  value={rows}
467
- onChange={handleRowsChange}
468
527
  className="solid-paginator-select"
469
- >
470
- {rowsOptions.map((option) => (
471
- <option key={option} value={option}>
472
- {option}
473
- </option>
474
- ))}
475
- </select>
528
+ options={rowsOptions.map((option) => ({ label: String(option), value: option }))}
529
+ native={false}
530
+ onChange={(event) => handleRowsChange(Number(event.value))}
531
+ />
476
532
  <span className="solid-paginator-report">{paginationReport}</span>
477
533
  </div>
478
534
  <div className="solid-paginator-actions flex items-center gap-2">
@@ -1,2 +1,2 @@
1
- export declare const SolidCardViewConfigure: ({ solidCardViewMetaData, modelName, actionsAllowed, viewModes, setLayoutDialogVisible, setShowSaveFilterPopup, filters, handleRefreshView, }: any) => import("react/jsx-runtime").JSX.Element;
1
+ export declare const SolidCardViewConfigure: ({ solidCardViewMetaData, modelName, actionsAllowed, viewModes, setShowArchived, showArchived, setLayoutDialogVisible, setShowSaveFilterPopup, filters, handleRefreshView, }: any) => import("react/jsx-runtime").JSX.Element;
2
2
  //# sourceMappingURL=SolidCardViewConfigure.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolidCardViewConfigure.d.ts","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardViewConfigure.tsx"],"names":[],"mappings":"AAsDA,eAAO,MAAM,sBAAsB,iJAShC,GAAG,4CAmNL,CAAC"}
1
+ {"version":3,"file":"SolidCardViewConfigure.d.ts","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardViewConfigure.tsx"],"names":[],"mappings":"AAuDA,eAAO,MAAM,sBAAsB,gLAWhC,GAAG,4CA6NL,CAAC"}
@@ -18,7 +18,7 @@ import { storeCurrentModelViewContext } from "../../../helpers/modelViewPersiste
18
18
  import { useEffect, useState } from "react";
19
19
  import { SolidExport } from "../../../components/common/SolidExport";
20
20
  import { SolidGenericImport } from "../common/SolidGenericImport/SolidGenericImport";
21
- import { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogDescription, SolidDialogHeader, SolidDialogSeparator, SolidDialogTitle, SolidDropdownMenu, SolidDropdownMenuContent, SolidDropdownMenuItem, SolidDropdownMenuLabel, SolidDropdownMenuRadioGroup, SolidDropdownMenuRadioItem, SolidDropdownMenuSeparator, SolidDropdownMenuSub, SolidDropdownMenuSubContent, SolidDropdownMenuSubTrigger, SolidDropdownMenuTrigger, SolidIcon, } from "../../shad-cn-ui";
21
+ import { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogDescription, SolidDialogHeader, SolidDialogSeparator, SolidDialogTitle, SolidDropdownMenu, SolidDropdownMenuCheckboxItem, SolidDropdownMenuContent, SolidDropdownMenuItem, SolidDropdownMenuLabel, SolidDropdownMenuRadioGroup, SolidDropdownMenuRadioItem, SolidDropdownMenuSeparator, SolidDropdownMenuSub, SolidDropdownMenuSubContent, SolidDropdownMenuSubTrigger, SolidDropdownMenuTrigger, SolidIcon, } from "../../shad-cn-ui";
22
22
  var normalizeViewModes = function (viewModes) {
23
23
  if (viewModes === void 0) { viewModes = []; }
24
24
  return viewModes
@@ -39,14 +39,15 @@ var normalizeViewModes = function (viewModes) {
39
39
  .filter(Boolean);
40
40
  };
41
41
  export var SolidCardViewConfigure = function (_a) {
42
- var solidCardViewMetaData = _a.solidCardViewMetaData, modelName = _a.modelName, actionsAllowed = _a.actionsAllowed, viewModes = _a.viewModes, setLayoutDialogVisible = _a.setLayoutDialogVisible, setShowSaveFilterPopup = _a.setShowSaveFilterPopup, filters = _a.filters, handleRefreshView = _a.handleRefreshView;
42
+ var _b, _c, _d;
43
+ var solidCardViewMetaData = _a.solidCardViewMetaData, modelName = _a.modelName, actionsAllowed = _a.actionsAllowed, viewModes = _a.viewModes, setShowArchived = _a.setShowArchived, showArchived = _a.showArchived, setLayoutDialogVisible = _a.setLayoutDialogVisible, setShowSaveFilterPopup = _a.setShowSaveFilterPopup, filters = _a.filters, handleRefreshView = _a.handleRefreshView;
43
44
  var pathname = usePathname();
44
45
  var router = useRouter();
45
46
  var searchParams = useSearchParams();
46
- var _b = useState(""), view = _b[0], setView = _b[1];
47
- var _c = useState(false), isCogMenuOpen = _c[0], setIsCogMenuOpen = _c[1];
48
- var _d = useState(false), openImportDialog = _d[0], setOpenImportDialog = _d[1];
49
- var _e = useState(false), exportView = _e[0], setExportView = _e[1];
47
+ var _e = useState(""), view = _e[0], setView = _e[1];
48
+ var _f = useState(false), isCogMenuOpen = _f[0], setIsCogMenuOpen = _f[1];
49
+ var _g = useState(false), openImportDialog = _g[0], setOpenImportDialog = _g[1];
50
+ var _h = useState(false), exportView = _h[0], setExportView = _h[1];
50
51
  var visibleViewModes = normalizeViewModes(Array.isArray(viewModes) ? viewModes : []);
51
52
  var showSwitchType = visibleViewModes.length > 1;
52
53
  useEffect(function () {
@@ -105,13 +106,14 @@ export var SolidCardViewConfigure = function (_a) {
105
106
  actionsAllowed.includes("".concat(permissionExpression("exportTransaction", "create")));
106
107
  var canCustomizeLayout = actionsAllowed.includes("".concat(permissionExpression("userViewMetadata", "create")));
107
108
  var canSaveCustomFilter = actionsAllowed.includes("".concat(permissionExpression("savedFilters", "create")));
109
+ var canShowArchivedRecords = Boolean((_d = (_c = (_b = solidCardViewMetaData === null || solidCardViewMetaData === void 0 ? void 0 : solidCardViewMetaData.data) === null || _b === void 0 ? void 0 : _b.solidView) === null || _c === void 0 ? void 0 : _c.model) === null || _d === void 0 ? void 0 : _d.enableSoftDelete);
108
110
  return (_jsxs("div", { className: "position-relative", children: [_jsxs(SolidDropdownMenu, { open: isCogMenuOpen, onOpenChange: setIsCogMenuOpen, children: [_jsx(SolidDropdownMenuTrigger, { asChild: true, children: _jsx("button", { type: "button", className: "solid-icon-button solid-header-cog-trigger", "aria-label": "Open card options", children: _jsx(SolidIcon, { name: "si-cog", "aria-hidden": true }) }) }), _jsxs(SolidDropdownMenuContent, { className: "listview-cogwheel-panel", children: [canImport && (_jsxs(SolidDropdownMenuItem, { className: "solid-header-dropdown-item", onSelect: function () {
109
111
  setOpenImportDialog(true);
110
112
  setIsCogMenuOpen(false);
111
113
  }, children: [_jsx(SolidIcon, { name: "si-download", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Import" })] })), canExport && (_jsxs(SolidDropdownMenuItem, { className: "solid-header-dropdown-item", onSelect: function () {
112
114
  setExportView(true);
113
115
  setIsCogMenuOpen(false);
114
- }, children: [_jsx(SolidIcon, { name: "si-upload", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Export" })] })), (canCustomizeLayout || canSaveCustomFilter) && _jsx(SolidDropdownMenuSeparator, {}), canCustomizeLayout && (_jsxs(SolidDropdownMenuSub, { children: [_jsxs(SolidDropdownMenuSubTrigger, { className: "solid-header-dropdown-item", children: [_jsx(SolidIcon, { name: "si-sliders-h", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Layout" })] }), _jsxs(SolidDropdownMenuSubContent, { className: "customize-layout-panel", children: [showSwitchType && (_jsxs(_Fragment, { children: [_jsx(SolidDropdownMenuLabel, { children: "Switch Type" }), _jsx(SolidDropdownMenuRadioGroup, { value: view, onValueChange: handleViewChange, children: visibleViewModes.map(function (option) { return (_jsx(SolidDropdownMenuRadioItem, { value: option.type, children: option.label }, option.type)); }) }), _jsx(SolidDropdownMenuSeparator, {})] })), _jsxs(SolidDropdownMenuItem, { onSelect: function () {
116
+ }, children: [_jsx(SolidIcon, { name: "si-upload", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Export" })] })), canShowArchivedRecords && (_jsx(SolidDropdownMenuCheckboxItem, { checked: showArchived, onCheckedChange: function () { return setShowArchived(!showArchived); }, children: "Show Archived Records" })), (canCustomizeLayout || canSaveCustomFilter || canShowArchivedRecords) && _jsx(SolidDropdownMenuSeparator, {}), canCustomizeLayout && (_jsxs(SolidDropdownMenuSub, { children: [_jsxs(SolidDropdownMenuSubTrigger, { className: "solid-header-dropdown-item", children: [_jsx(SolidIcon, { name: "si-sliders-h", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Layout" })] }), _jsxs(SolidDropdownMenuSubContent, { className: "customize-layout-panel", children: [showSwitchType && (_jsxs(_Fragment, { children: [_jsx(SolidDropdownMenuLabel, { children: "Switch Type" }), _jsx(SolidDropdownMenuRadioGroup, { value: view, onValueChange: handleViewChange, children: visibleViewModes.map(function (option) { return (_jsx(SolidDropdownMenuRadioItem, { value: option.type, children: option.label }, option.type)); }) }), _jsx(SolidDropdownMenuSeparator, {})] })), _jsxs(SolidDropdownMenuItem, { onSelect: function () {
115
117
  setLayoutDialogVisible(true);
116
118
  setIsCogMenuOpen(false);
117
119
  }, children: [_jsx(SolidIcon, { name: "si-code", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Layout Editor" })] })] })] })), canSaveCustomFilter && (_jsxs(SolidDropdownMenuItem, { className: "solid-header-dropdown-item", onSelect: function () {
@@ -1 +1 @@
1
- {"version":3,"file":"SolidCardViewConfigure.js","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardViewConfigure.tsx"],"names":[],"mappings":"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","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { usePathname } from \"../../../hooks/usePathname\";\nimport { useRouter } from \"../../../hooks/useRouter\";\nimport { useSearchParams } from \"../../../hooks/useSearchParams\";\nimport { storeCurrentModelViewContext } from \"../../../helpers/modelViewPersistence\";\nimport { useEffect, useState } from \"react\";\nimport { SolidExport } from \"../../../components/common/SolidExport\";\nimport { SolidGenericImport } from \"../common/SolidGenericImport/SolidGenericImport\";\nimport {\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogDescription,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n SolidDropdownMenu,\n SolidDropdownMenuContent,\n SolidDropdownMenuItem,\n SolidDropdownMenuLabel,\n SolidDropdownMenuRadioGroup,\n SolidDropdownMenuRadioItem,\n SolidDropdownMenuSeparator,\n SolidDropdownMenuSub,\n SolidDropdownMenuSubContent,\n SolidDropdownMenuSubTrigger,\n SolidDropdownMenuTrigger,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\nconst normalizeViewModes = (viewModes: any[] = []) => {\n return viewModes\n .map((option: any) => {\n if (!option) return null;\n\n if (typeof option === \"string\") {\n return {\n type: option,\n label: option.charAt(0).toUpperCase() + option.slice(1),\n };\n }\n\n const type = option.type || option.value;\n if (!type) return null;\n\n return {\n ...option,\n type,\n label: option.label || (type.charAt(0).toUpperCase() + type.slice(1)),\n };\n })\n .filter(Boolean);\n};\n\nexport const SolidCardViewConfigure = ({\n solidCardViewMetaData,\n modelName,\n actionsAllowed,\n viewModes,\n setLayoutDialogVisible,\n setShowSaveFilterPopup,\n filters,\n handleRefreshView,\n}: any) => {\n const pathname = usePathname();\n const router = useRouter();\n const searchParams = useSearchParams();\n const [view, setView] = useState<string>(\"\");\n const [isCogMenuOpen, setIsCogMenuOpen] = useState(false);\n const [openImportDialog, setOpenImportDialog] = useState(false);\n const [exportView, setExportView] = useState(false);\n\n const visibleViewModes = normalizeViewModes(Array.isArray(viewModes) ? viewModes : []);\n const showSwitchType = visibleViewModes.length > 1;\n\n useEffect(() => {\n if (typeof pathname === \"string\") {\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n if (pathSegments.length > 0) {\n setView(pathSegments[pathSegments.length - 1]);\n }\n }\n }, [pathname]);\n\n const handleViewChange = (newViewType: string) => {\n if (view === newViewType) return;\n\n const nextView = visibleViewModes.find((option: any) => option.type === newViewType);\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n pathSegments[pathSegments.length - 1] = newViewType;\n const nextSearchParams = new URLSearchParams(searchParams.toString());\n const currentQuery = {\n menuItemId: searchParams.get(\"menuItemId\"),\n menuItemName: searchParams.get(\"menuItemName\"),\n actionId: searchParams.get(\"actionId\"),\n actionName: searchParams.get(\"actionName\"),\n };\n\n const queryFields = {\n menuItemId: nextView?.menuItemId ?? currentQuery.menuItemId,\n menuItemName: nextView?.menuItemName ?? currentQuery.menuItemName,\n actionId: nextView?.actionId ?? currentQuery.actionId,\n actionName: nextView?.actionName ?? currentQuery.actionName,\n };\n\n Object.entries(queryFields).forEach(([key, value]) => {\n if (value) {\n nextSearchParams.set(key, value);\n } else {\n nextSearchParams.delete(key);\n }\n });\n\n const newPath = \"/\" + pathSegments.join(\"/\");\n const nextQueryString = nextSearchParams.toString();\n const nextUrl = nextQueryString ? `${newPath}?${nextQueryString}` : newPath;\n storeCurrentModelViewContext(nextUrl);\n router.push(nextUrl);\n };\n\n const clearLocalstorageCache = () => {\n const currentPageUrl = window.location.pathname;\n localStorage.removeItem(currentPageUrl);\n window.location.reload();\n };\n\n const canImport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"create\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"importTransaction\", \"create\")}`);\n\n const canExport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"findMany\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"exportTransaction\", \"create\")}`);\n\n const canCustomizeLayout = actionsAllowed.includes(`${permissionExpression(\"userViewMetadata\", \"create\")}`);\n const canSaveCustomFilter = actionsAllowed.includes(`${permissionExpression(\"savedFilters\", \"create\")}`);\n\n return (\n <div className=\"position-relative\">\n <SolidDropdownMenu open={isCogMenuOpen} onOpenChange={setIsCogMenuOpen}>\n <SolidDropdownMenuTrigger asChild>\n <button\n type=\"button\"\n className=\"solid-icon-button solid-header-cog-trigger\"\n aria-label=\"Open card options\"\n >\n <SolidIcon name=\"si-cog\" aria-hidden />\n </button>\n </SolidDropdownMenuTrigger>\n <SolidDropdownMenuContent className=\"listview-cogwheel-panel\">\n {canImport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setOpenImportDialog(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-download\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Import</span>\n </SolidDropdownMenuItem>\n )}\n\n {canExport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setExportView(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-upload\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Export</span>\n </SolidDropdownMenuItem>\n )}\n\n {(canCustomizeLayout || canSaveCustomFilter) && <SolidDropdownMenuSeparator />}\n\n {canCustomizeLayout && (\n <SolidDropdownMenuSub>\n <SolidDropdownMenuSubTrigger className=\"solid-header-dropdown-item\">\n <SolidIcon name=\"si-sliders-h\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout</span>\n </SolidDropdownMenuSubTrigger>\n <SolidDropdownMenuSubContent className=\"customize-layout-panel\">\n {showSwitchType && (\n <>\n <SolidDropdownMenuLabel>Switch Type</SolidDropdownMenuLabel>\n <SolidDropdownMenuRadioGroup value={view} onValueChange={handleViewChange}>\n {visibleViewModes.map((option: any) => (\n <SolidDropdownMenuRadioItem key={option.type} value={option.type}>\n {option.label}\n </SolidDropdownMenuRadioItem>\n ))}\n </SolidDropdownMenuRadioGroup>\n <SolidDropdownMenuSeparator />\n </>\n )}\n <SolidDropdownMenuItem\n onSelect={() => {\n setLayoutDialogVisible(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-code\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout Editor</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuSubContent>\n </SolidDropdownMenuSub>\n )}\n\n {canSaveCustomFilter && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setShowSaveFilterPopup(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-save\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Save Custom Filter</span>\n </SolidDropdownMenuItem>\n )}\n\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n clearLocalstorageCache();\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-trash\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Clear cache</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuContent>\n </SolidDropdownMenu>\n\n <SolidDialog\n open={exportView}\n onOpenChange={setExportView}\n className=\"solid-kanban-export-dialog\"\n style={{ width: \"min(960px, calc(100vw - 32px))\" }}\n >\n <SolidDialogHeader className=\"solid-export-dialog-header\">\n <div>\n <SolidDialogTitle>Export</SolidDialogTitle>\n <SolidDialogDescription className=\"solid-filter-dialog-subtitle m-0\">\n Choose the file format, refine the field set, and save reusable export templates.\n </SolidDialogDescription>\n </div>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator />\n <SolidDialogBody className=\"solid-kanban-export-dialog-body\">\n <SolidExport\n listViewMetaData={solidCardViewMetaData}\n filters={filters}\n onExportComplete={() => setExportView(false)}\n />\n </SolidDialogBody>\n </SolidDialog>\n\n {openImportDialog && (\n <SolidGenericImport\n openImportDialog={openImportDialog}\n setOpenImportDialog={setOpenImportDialog}\n listViewMetaData={solidCardViewMetaData}\n handleFetchUpdatedRecords={handleRefreshView}\n />\n )}\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"SolidCardViewConfigure.js","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardViewConfigure.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EACL,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,6BAA6B,EAC7B,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC3B,0BAA0B,EAC1B,0BAA0B,EAC1B,oBAAoB,EACpB,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,SAAS,GACV,MAAM,kBAAkB,CAAC;AAE1B,IAAM,kBAAkB,GAAG,UAAC,SAAqB;IAArB,0BAAA,EAAA,cAAqB;IAC/C,OAAO,SAAS;SACb,GAAG,CAAC,UAAC,MAAW;QACf,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;aACxD,CAAC;SACH;QAED,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAEvB,6BACK,MAAM,KACT,IAAI,MAAA,EACJ,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IACrE;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,sBAAsB,GAAG,UAAC,EAWjC;;QAVJ,qBAAqB,2BAAA,EACrB,SAAS,eAAA,EACT,cAAc,oBAAA,EACd,SAAS,eAAA,EACT,eAAe,qBAAA,EACf,YAAY,kBAAA,EACZ,sBAAsB,4BAAA,EACtB,sBAAsB,4BAAA,EACtB,OAAO,aAAA,EACP,iBAAiB,uBAAA;IAEjB,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACjC,IAAA,KAAkB,QAAQ,CAAS,EAAE,CAAC,EAArC,IAAI,QAAA,EAAE,OAAO,QAAwB,CAAC;IACvC,IAAA,KAAoC,QAAQ,CAAC,KAAK,CAAC,EAAlD,aAAa,QAAA,EAAE,gBAAgB,QAAmB,CAAC;IACpD,IAAA,KAA0C,QAAQ,CAAC,KAAK,CAAC,EAAxD,gBAAgB,QAAA,EAAE,mBAAmB,QAAmB,CAAC;IAC1D,IAAA,KAA8B,QAAQ,CAAC,KAAK,CAAC,EAA5C,UAAU,QAAA,EAAE,aAAa,QAAmB,CAAC;IAEpD,IAAM,gBAAgB,GAAG,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACvF,IAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;IAEnD,SAAS,CAAC;QACR,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAChC,IAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;aAChD;SACF;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAM,gBAAgB,GAAG,UAAC,WAAmB;;QAC3C,IAAI,IAAI,KAAK,WAAW;YAAE,OAAO;QAEjC,IAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,UAAC,MAAW,IAAK,OAAA,MAAM,CAAC,IAAI,KAAK,WAAW,EAA3B,CAA2B,CAAC,CAAC;QACrF,IAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QACpD,IAAM,gBAAgB,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtE,IAAM,YAAY,GAAG;YACnB,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;YAC1C,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC;YAC9C,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;YACtC,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;SAC3C,CAAC;QAEF,IAAM,WAAW,GAAG;YAClB,UAAU,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,mCAAI,YAAY,CAAC,UAAU;YAC3D,YAAY,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,mCAAI,YAAY,CAAC,YAAY;YACjE,QAAQ,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,mCAAI,YAAY,CAAC,QAAQ;YACrD,UAAU,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,mCAAI,YAAY,CAAC,UAAU;SAC5D,CAAC;QAEF,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAC9C,IAAI,KAAK,EAAE;gBACT,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aAClC;iBAAM;gBACL,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;QAEH,IAAM,OAAO,GAAG,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,EAAE,CAAC;QACpD,IAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,UAAG,OAAO,cAAI,eAAe,CAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QAC5E,4BAA4B,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,IAAM,sBAAsB,GAAG;QAC7B,IAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAChD,YAAY,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACxC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC,CAAC;IAEF,IAAM,SAAS,GACb,OAAO,CAAC,SAAS,CAAC;QAClB,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAE,CAAC;QACvE,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAE,CAAC,CAAC;IAEpF,IAAM,SAAS,GACb,OAAO,CAAC,SAAS,CAAC;QAClB,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAE,CAAC;QACzE,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAE,CAAC,CAAC;IAEpF,IAAM,kBAAkB,GAAG,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAE,CAAC,CAAC;IAC5G,IAAM,mBAAmB,GAAG,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAE,CAAC,CAAC;IACzG,IAAM,sBAAsB,GAAG,OAAO,CAAC,MAAA,MAAA,MAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,IAAI,0CAAE,SAAS,0CAAE,KAAK,0CAAE,gBAAgB,CAAC,CAAC;IAExG,OAAO,CACL,eAAK,SAAS,EAAC,mBAAmB,aAChC,MAAC,iBAAiB,IAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,aACpE,KAAC,wBAAwB,IAAC,OAAO,kBAC/B,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,4CAA4C,gBAC3C,mBAAmB,YAE9B,KAAC,SAAS,IAAC,IAAI,EAAC,QAAQ,wBAAe,GAChC,GACgB,EAC3B,MAAC,wBAAwB,IAAC,SAAS,EAAC,yBAAyB,aAC1D,SAAS,IAAI,CACZ,MAAC,qBAAqB,IACpB,SAAS,EAAC,4BAA4B,EACtC,QAAQ,EAAE;oCACR,mBAAmB,CAAC,IAAI,CAAC,CAAC;oCAC1B,gBAAgB,CAAC,KAAK,CAAC,CAAC;gCAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,aAAa,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACxF,eAAM,SAAS,EAAC,kCAAkC,uBAAc,IAC1C,CACzB,EAEA,SAAS,IAAI,CACZ,MAAC,qBAAqB,IACpB,SAAS,EAAC,4BAA4B,EACtC,QAAQ,EAAE;oCACR,aAAa,CAAC,IAAI,CAAC,CAAC;oCACpB,gBAAgB,CAAC,KAAK,CAAC,CAAC;gCAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,WAAW,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACtF,eAAM,SAAS,EAAC,kCAAkC,uBAAc,IAC1C,CACzB,EAEA,sBAAsB,IAAI,CACzB,KAAC,6BAA6B,IAC5B,OAAO,EAAE,YAAY,EACrB,eAAe,EAAE,cAAM,OAAA,eAAe,CAAC,CAAC,YAAY,CAAC,EAA9B,CAA8B,sCAGvB,CACjC,EAEA,CAAC,kBAAkB,IAAI,mBAAmB,IAAI,sBAAsB,CAAC,IAAI,KAAC,0BAA0B,KAAG,EAEvG,kBAAkB,IAAI,CACrB,MAAC,oBAAoB,eACnB,MAAC,2BAA2B,IAAC,SAAS,EAAC,4BAA4B,aACjE,KAAC,SAAS,IAAC,IAAI,EAAC,cAAc,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACzF,eAAM,SAAS,EAAC,kCAAkC,uBAAc,IACpC,EAC9B,MAAC,2BAA2B,IAAC,SAAS,EAAC,wBAAwB,aAC5D,cAAc,IAAI,CACjB,8BACE,KAAC,sBAAsB,8BAAqC,EAC5D,KAAC,2BAA2B,IAAC,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,gBAAgB,YACtE,gBAAgB,CAAC,GAAG,CAAC,UAAC,MAAW,IAAK,OAAA,CACrC,KAAC,0BAA0B,IAAmB,KAAK,EAAE,MAAM,CAAC,IAAI,YAC7D,MAAM,CAAC,KAAK,IADkB,MAAM,CAAC,IAAI,CAEf,CAC9B,EAJsC,CAItC,CAAC,GAC0B,EAC9B,KAAC,0BAA0B,KAAG,IAC7B,CACJ,EACD,MAAC,qBAAqB,IACpB,QAAQ,EAAE;oDACR,sBAAsB,CAAC,IAAI,CAAC,CAAC;oDAC7B,gBAAgB,CAAC,KAAK,CAAC,CAAC;gDAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,SAAS,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACpF,eAAM,SAAS,EAAC,kCAAkC,8BAAqB,IACjD,IACI,IACT,CACxB,EAEA,mBAAmB,IAAI,CACtB,MAAC,qBAAqB,IACpB,SAAS,EAAC,4BAA4B,EACtC,QAAQ,EAAE;oCACR,sBAAsB,CAAC,IAAI,CAAC,CAAC;oCAC7B,gBAAgB,CAAC,KAAK,CAAC,CAAC;gCAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,SAAS,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACpF,eAAM,SAAS,EAAC,kCAAkC,mCAA0B,IACtD,CACzB,EAED,MAAC,qBAAqB,IACpB,SAAS,EAAC,4BAA4B,EACtC,QAAQ,EAAE;oCACR,sBAAsB,EAAE,CAAC;oCACzB,gBAAgB,CAAC,KAAK,CAAC,CAAC;gCAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACrF,eAAM,SAAS,EAAC,kCAAkC,4BAAmB,IAC/C,IACC,IACT,EAEpB,MAAC,WAAW,IACV,IAAI,EAAE,UAAU,EAChB,YAAY,EAAE,aAAa,EAC3B,SAAS,EAAC,4BAA4B,EACtC,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,aAElD,MAAC,iBAAiB,IAAC,SAAS,EAAC,4BAA4B,aACvD,0BACE,KAAC,gBAAgB,yBAA0B,EAC3C,KAAC,sBAAsB,IAAC,SAAS,EAAC,kCAAkC,kGAE3C,IACrB,EACN,KAAC,gBAAgB,KAAG,IACF,EACpB,KAAC,oBAAoB,KAAG,EACxB,KAAC,eAAe,IAAC,SAAS,EAAC,iCAAiC,YAC1D,KAAC,WAAW,IACV,gBAAgB,EAAE,qBAAqB,EACvC,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,cAAM,OAAA,aAAa,CAAC,KAAK,CAAC,EAApB,CAAoB,GAC5C,GACc,IACN,EAEb,gBAAgB,IAAI,CACnB,KAAC,kBAAkB,IACjB,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,gBAAgB,EAAE,qBAAqB,EACvC,yBAAyB,EAAE,iBAAiB,GAC5C,CACH,IACG,CACP,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { usePathname } from \"../../../hooks/usePathname\";\nimport { useRouter } from \"../../../hooks/useRouter\";\nimport { useSearchParams } from \"../../../hooks/useSearchParams\";\nimport { storeCurrentModelViewContext } from \"../../../helpers/modelViewPersistence\";\nimport { useEffect, useState } from \"react\";\nimport { SolidExport } from \"../../../components/common/SolidExport\";\nimport { SolidGenericImport } from \"../common/SolidGenericImport/SolidGenericImport\";\nimport {\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogDescription,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n SolidDropdownMenu,\n SolidDropdownMenuCheckboxItem,\n SolidDropdownMenuContent,\n SolidDropdownMenuItem,\n SolidDropdownMenuLabel,\n SolidDropdownMenuRadioGroup,\n SolidDropdownMenuRadioItem,\n SolidDropdownMenuSeparator,\n SolidDropdownMenuSub,\n SolidDropdownMenuSubContent,\n SolidDropdownMenuSubTrigger,\n SolidDropdownMenuTrigger,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\nconst normalizeViewModes = (viewModes: any[] = []) => {\n return viewModes\n .map((option: any) => {\n if (!option) return null;\n\n if (typeof option === \"string\") {\n return {\n type: option,\n label: option.charAt(0).toUpperCase() + option.slice(1),\n };\n }\n\n const type = option.type || option.value;\n if (!type) return null;\n\n return {\n ...option,\n type,\n label: option.label || (type.charAt(0).toUpperCase() + type.slice(1)),\n };\n })\n .filter(Boolean);\n};\n\nexport const SolidCardViewConfigure = ({\n solidCardViewMetaData,\n modelName,\n actionsAllowed,\n viewModes,\n setShowArchived,\n showArchived,\n setLayoutDialogVisible,\n setShowSaveFilterPopup,\n filters,\n handleRefreshView,\n}: any) => {\n const pathname = usePathname();\n const router = useRouter();\n const searchParams = useSearchParams();\n const [view, setView] = useState<string>(\"\");\n const [isCogMenuOpen, setIsCogMenuOpen] = useState(false);\n const [openImportDialog, setOpenImportDialog] = useState(false);\n const [exportView, setExportView] = useState(false);\n\n const visibleViewModes = normalizeViewModes(Array.isArray(viewModes) ? viewModes : []);\n const showSwitchType = visibleViewModes.length > 1;\n\n useEffect(() => {\n if (typeof pathname === \"string\") {\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n if (pathSegments.length > 0) {\n setView(pathSegments[pathSegments.length - 1]);\n }\n }\n }, [pathname]);\n\n const handleViewChange = (newViewType: string) => {\n if (view === newViewType) return;\n\n const nextView = visibleViewModes.find((option: any) => option.type === newViewType);\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n pathSegments[pathSegments.length - 1] = newViewType;\n const nextSearchParams = new URLSearchParams(searchParams.toString());\n const currentQuery = {\n menuItemId: searchParams.get(\"menuItemId\"),\n menuItemName: searchParams.get(\"menuItemName\"),\n actionId: searchParams.get(\"actionId\"),\n actionName: searchParams.get(\"actionName\"),\n };\n\n const queryFields = {\n menuItemId: nextView?.menuItemId ?? currentQuery.menuItemId,\n menuItemName: nextView?.menuItemName ?? currentQuery.menuItemName,\n actionId: nextView?.actionId ?? currentQuery.actionId,\n actionName: nextView?.actionName ?? currentQuery.actionName,\n };\n\n Object.entries(queryFields).forEach(([key, value]) => {\n if (value) {\n nextSearchParams.set(key, value);\n } else {\n nextSearchParams.delete(key);\n }\n });\n\n const newPath = \"/\" + pathSegments.join(\"/\");\n const nextQueryString = nextSearchParams.toString();\n const nextUrl = nextQueryString ? `${newPath}?${nextQueryString}` : newPath;\n storeCurrentModelViewContext(nextUrl);\n router.push(nextUrl);\n };\n\n const clearLocalstorageCache = () => {\n const currentPageUrl = window.location.pathname;\n localStorage.removeItem(currentPageUrl);\n window.location.reload();\n };\n\n const canImport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"create\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"importTransaction\", \"create\")}`);\n\n const canExport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"findMany\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"exportTransaction\", \"create\")}`);\n\n const canCustomizeLayout = actionsAllowed.includes(`${permissionExpression(\"userViewMetadata\", \"create\")}`);\n const canSaveCustomFilter = actionsAllowed.includes(`${permissionExpression(\"savedFilters\", \"create\")}`);\n const canShowArchivedRecords = Boolean(solidCardViewMetaData?.data?.solidView?.model?.enableSoftDelete);\n\n return (\n <div className=\"position-relative\">\n <SolidDropdownMenu open={isCogMenuOpen} onOpenChange={setIsCogMenuOpen}>\n <SolidDropdownMenuTrigger asChild>\n <button\n type=\"button\"\n className=\"solid-icon-button solid-header-cog-trigger\"\n aria-label=\"Open card options\"\n >\n <SolidIcon name=\"si-cog\" aria-hidden />\n </button>\n </SolidDropdownMenuTrigger>\n <SolidDropdownMenuContent className=\"listview-cogwheel-panel\">\n {canImport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setOpenImportDialog(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-download\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Import</span>\n </SolidDropdownMenuItem>\n )}\n\n {canExport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setExportView(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-upload\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Export</span>\n </SolidDropdownMenuItem>\n )}\n\n {canShowArchivedRecords && (\n <SolidDropdownMenuCheckboxItem\n checked={showArchived}\n onCheckedChange={() => setShowArchived(!showArchived)}\n >\n Show Archived Records\n </SolidDropdownMenuCheckboxItem>\n )}\n\n {(canCustomizeLayout || canSaveCustomFilter || canShowArchivedRecords) && <SolidDropdownMenuSeparator />}\n\n {canCustomizeLayout && (\n <SolidDropdownMenuSub>\n <SolidDropdownMenuSubTrigger className=\"solid-header-dropdown-item\">\n <SolidIcon name=\"si-sliders-h\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout</span>\n </SolidDropdownMenuSubTrigger>\n <SolidDropdownMenuSubContent className=\"customize-layout-panel\">\n {showSwitchType && (\n <>\n <SolidDropdownMenuLabel>Switch Type</SolidDropdownMenuLabel>\n <SolidDropdownMenuRadioGroup value={view} onValueChange={handleViewChange}>\n {visibleViewModes.map((option: any) => (\n <SolidDropdownMenuRadioItem key={option.type} value={option.type}>\n {option.label}\n </SolidDropdownMenuRadioItem>\n ))}\n </SolidDropdownMenuRadioGroup>\n <SolidDropdownMenuSeparator />\n </>\n )}\n <SolidDropdownMenuItem\n onSelect={() => {\n setLayoutDialogVisible(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-code\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout Editor</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuSubContent>\n </SolidDropdownMenuSub>\n )}\n\n {canSaveCustomFilter && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setShowSaveFilterPopup(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-save\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Save Custom Filter</span>\n </SolidDropdownMenuItem>\n )}\n\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n clearLocalstorageCache();\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-trash\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Clear cache</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuContent>\n </SolidDropdownMenu>\n\n <SolidDialog\n open={exportView}\n onOpenChange={setExportView}\n className=\"solid-kanban-export-dialog\"\n style={{ width: \"min(960px, calc(100vw - 32px))\" }}\n >\n <SolidDialogHeader className=\"solid-export-dialog-header\">\n <div>\n <SolidDialogTitle>Export</SolidDialogTitle>\n <SolidDialogDescription className=\"solid-filter-dialog-subtitle m-0\">\n Choose the file format, refine the field set, and save reusable export templates.\n </SolidDialogDescription>\n </div>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator />\n <SolidDialogBody className=\"solid-kanban-export-dialog-body\">\n <SolidExport\n listViewMetaData={solidCardViewMetaData}\n filters={filters}\n onExportComplete={() => setExportView(false)}\n />\n </SolidDialogBody>\n </SolidDialog>\n\n {openImportDialog && (\n <SolidGenericImport\n openImportDialog={openImportDialog}\n setOpenImportDialog={setOpenImportDialog}\n listViewMetaData={solidCardViewMetaData}\n handleFetchUpdatedRecords={handleRefreshView}\n />\n )}\n </div>\n );\n};\n"]}
@@ -15,6 +15,7 @@ import {
15
15
  SolidDialogSeparator,
16
16
  SolidDialogTitle,
17
17
  SolidDropdownMenu,
18
+ SolidDropdownMenuCheckboxItem,
18
19
  SolidDropdownMenuContent,
19
20
  SolidDropdownMenuItem,
20
21
  SolidDropdownMenuLabel,
@@ -57,6 +58,8 @@ export const SolidCardViewConfigure = ({
57
58
  modelName,
58
59
  actionsAllowed,
59
60
  viewModes,
61
+ setShowArchived,
62
+ showArchived,
60
63
  setLayoutDialogVisible,
61
64
  setShowSaveFilterPopup,
62
65
  filters,
@@ -136,6 +139,7 @@ export const SolidCardViewConfigure = ({
136
139
 
137
140
  const canCustomizeLayout = actionsAllowed.includes(`${permissionExpression("userViewMetadata", "create")}`);
138
141
  const canSaveCustomFilter = actionsAllowed.includes(`${permissionExpression("savedFilters", "create")}`);
142
+ const canShowArchivedRecords = Boolean(solidCardViewMetaData?.data?.solidView?.model?.enableSoftDelete);
139
143
 
140
144
  return (
141
145
  <div className="position-relative">
@@ -176,7 +180,16 @@ export const SolidCardViewConfigure = ({
176
180
  </SolidDropdownMenuItem>
177
181
  )}
178
182
 
179
- {(canCustomizeLayout || canSaveCustomFilter) && <SolidDropdownMenuSeparator />}
183
+ {canShowArchivedRecords && (
184
+ <SolidDropdownMenuCheckboxItem
185
+ checked={showArchived}
186
+ onCheckedChange={() => setShowArchived(!showArchived)}
187
+ >
188
+ Show Archived Records
189
+ </SolidDropdownMenuCheckboxItem>
190
+ )}
191
+
192
+ {(canCustomizeLayout || canSaveCustomFilter || canShowArchivedRecords) && <SolidDropdownMenuSeparator />}
180
193
 
181
194
  {canCustomizeLayout && (
182
195
  <SolidDropdownMenuSub>
@@ -0,0 +1,2 @@
1
+ export declare const LoadDynamicJsxComponent: ({ context }: any) => import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=LoadDynamicJsxComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadDynamicJsxComponent.d.ts","sourceRoot":"./","sources":["components/core/common/LoadDynamicJsxComponent.tsx"],"names":[],"mappings":"AAeA,eAAO,MAAM,uBAAuB,gBAAiB,GAAG,4CAoDvD,CAAA"}
@@ -0,0 +1,50 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { ERROR_MESSAGES } from "../../../constants/error-messages";
4
+ import dynamic from "next/dynamic";
5
+ import { useState, useEffect } from "react";
6
+ // Fallback component for missing components
7
+ const FallbackComponent = ({ componentName }) => (_jsxs("div", { style: { color: "red" }, children: ["Could not load ", _jsx("strong", { children: componentName })] }));
8
+ export const LoadDynamicJsxComponent = ({ context }) => {
9
+ // const Component = dynamic<Props>(
10
+ // async () => {
11
+ // try {
12
+ // const componentName = context?.rowAction?.action?.customComponent.split('/').pop();
13
+ // const mod = await import();
14
+ // // Return the default export or a named export matching the componentName
15
+ // return mod.default || mod[componentName];
16
+ // } catch (error) {
17
+ // console.error(`Failed to load component "${context?.rowAction?.action?.customComponent}":`, error);
18
+ // // Return a fallback component if the import fails
19
+ // return () => <GenerateModelCodeRowAction context={context} />;
20
+ // }
21
+ // },
22
+ // { ssr: false } // Disable server-side rendering
23
+ // );
24
+ const [Component, setComponent] = useState(null);
25
+ const componentPath = context?.rowAction?.action?.customComponent;
26
+ const componentKey = componentPath?.split("/")?.pop();
27
+ const componentMap = {
28
+ "GenerateModelCodeRowAction": dynamic(() => import("../extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction"), { ssr: false }),
29
+ "GenerateModuleCodeRowAction": dynamic(() => import("../extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction"), { ssr: false }),
30
+ };
31
+ useEffect(() => {
32
+ if (!componentKey)
33
+ return;
34
+ if (componentMap[componentKey]) {
35
+ setComponent(() => () => setComponent(() => componentMap[componentKey]));
36
+ }
37
+ else {
38
+ import(componentPath)
39
+ .then((mod) => setComponent(() => mod.default || mod))
40
+ .catch((err) => {
41
+ console.error(` ${ERROR_MESSAGES.LOADING_COMPONENT} ${componentPath}:`, err);
42
+ setComponent(() => () => _jsx(FallbackComponent, { componentName: componentKey }));
43
+ });
44
+ }
45
+ }, [componentKey]);
46
+ if (!Component)
47
+ return _jsx("p", { children: "Loading..." });
48
+ return _jsx(Component, { context: context });
49
+ };
50
+ //# sourceMappingURL=LoadDynamicJsxComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadDynamicJsxComponent.js","sourceRoot":"./","sources":["components/core/common/LoadDynamicJsxComponent.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,4CAA4C;AAC5C,MAAM,iBAAiB,GAAG,CAAC,EAAE,aAAa,EAAO,EAAE,EAAE,CAAC,CAClD,eAAK,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,gCACT,2BAAS,aAAa,GAAU,IAC7C,CACT,CAAC;AAMF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EAAE,OAAO,EAAO,EAAE,EAAE;IAGxD,oCAAoC;IACpC,oBAAoB;IACpB,gBAAgB;IAEhB,kGAAkG;IAClG,0CAA0C;IAC1C,wFAAwF;IACxF,wDAAwD;IACxD,4BAA4B;IAC5B,kHAAkH;IAClH,iEAAiE;IACjE,6EAA6E;IAC7E,YAAY;IACZ,SAAS;IACT,sDAAsD;IACtD,KAAK;IACL,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAM,IAAI,CAAC,CAAC;IACtD,MAAM,aAAa,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC;IAClE,MAAM,YAAY,GAAG,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;IAEtD,MAAM,YAAY,GAAwB;QACtC,4BAA4B,EAAE,OAAO,CACnC,GAAG,EAAE,CAAC,MAAM,CAAC,uEAAuE,CAAC,EACrF,EAAE,GAAG,EAAE,KAAK,EAAE,CACf;QACD,6BAA6B,EAAE,OAAO,CAClC,GAAG,EAAE,CAAC,MAAM,CAAC,yEAAyE,CAAC,EACvF,EAAE,GAAG,EAAE,KAAK,EAAE,CACjB;KACJ,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,IAAI,YAAY,CAAC,YAAY,CAAC,EAAE;YAC5B,YAAY,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;SAC5E;aAAM;YACP,MAAM,CAAC,aAAa,CAAC;iBAChB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC;iBACrD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACf,OAAO,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,iBAAiB,IAAI,aAAa,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC7E,YAAY,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,KAAC,iBAAiB,IAAC,aAAa,EAAE,YAAY,GAAI,CAAC,CAAC;YAC7E,CAAC,CAAC,CAAC;SACN;IACL,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,IAAI,CAAC,SAAS;QAAE,OAAO,qCAAiB,CAAC;IAEzC,OAAO,KAAC,SAAS,IAAC,OAAO,EAAE,OAAO,GAAI,CAAC;AAC3C,CAAC,CAAA","sourcesContent":["'use client';\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport dynamic from \"next/dynamic\";\nimport { useState, useEffect } from \"react\";\n// Fallback component for missing components\nconst FallbackComponent = ({ componentName }: any) => (\n <div style={{ color: \"red\" }}>\n Could not load <strong>{componentName}</strong>\n </div>\n);\n\ntype Props = {\n context: any;\n};\n\nexport const LoadDynamicJsxComponent = ({ context }: any) => {\n\n \n // const Component = dynamic<Props>(\n // async () => {\n // try {\n \n // const componentName = context?.rowAction?.action?.customComponent.split('/').pop();\n // const mod = await import();\n // // Return the default export or a named export matching the componentName\n // return mod.default || mod[componentName];\n // } catch (error) {\n // console.error(`Failed to load component \"${context?.rowAction?.action?.customComponent}\":`, error);\n // // Return a fallback component if the import fails\n // return () => <GenerateModelCodeRowAction context={context} />;\n // }\n // },\n // { ssr: false } // Disable server-side rendering\n // );\n const [Component, setComponent] = useState<any>(null);\n const componentPath = context?.rowAction?.action?.customComponent;\n const componentKey = componentPath?.split(\"/\")?.pop();\n\n const componentMap: Record<string, any> = {\n \"GenerateModelCodeRowAction\": dynamic(\n () => import(\"../extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction\"),\n { ssr: false }\n ),\n \"GenerateModuleCodeRowAction\": dynamic(\n () => import(\"../extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction\"),\n { ssr: false }\n ),\n };\n\n useEffect(() => {\n if (!componentKey) return;\n\n if (componentMap[componentKey]) {\n setComponent(() => () => setComponent(() => componentMap[componentKey]));\n } else {\n import(componentPath)\n .then((mod) => setComponent(() => mod.default || mod))\n .catch((err) => {\n console.error(` ${ERROR_MESSAGES.LOADING_COMPONENT} ${componentPath}:`, err);\n setComponent(() => () => <FallbackComponent componentName={componentKey} />);\n });\n }\n }, [componentKey]);\n\n if (!Component) return <p>Loading...</p>;\n\n return <Component context={context} />;\n}\n\n\n"]}
@@ -0,0 +1,70 @@
1
+ 'use client';
2
+ import { ERROR_MESSAGES } from "../../../constants/error-messages";
3
+ import dynamic from "next/dynamic";
4
+ import { useState, useEffect } from "react";
5
+ // Fallback component for missing components
6
+ const FallbackComponent = ({ componentName }: any) => (
7
+ <div style={{ color: "red" }}>
8
+ Could not load <strong>{componentName}</strong>
9
+ </div>
10
+ );
11
+
12
+ type Props = {
13
+ context: any;
14
+ };
15
+
16
+ export const LoadDynamicJsxComponent = ({ context }: any) => {
17
+
18
+
19
+ // const Component = dynamic<Props>(
20
+ // async () => {
21
+ // try {
22
+
23
+ // const componentName = context?.rowAction?.action?.customComponent.split('/').pop();
24
+ // const mod = await import();
25
+ // // Return the default export or a named export matching the componentName
26
+ // return mod.default || mod[componentName];
27
+ // } catch (error) {
28
+ // console.error(`Failed to load component "${context?.rowAction?.action?.customComponent}":`, error);
29
+ // // Return a fallback component if the import fails
30
+ // return () => <GenerateModelCodeRowAction context={context} />;
31
+ // }
32
+ // },
33
+ // { ssr: false } // Disable server-side rendering
34
+ // );
35
+ const [Component, setComponent] = useState<any>(null);
36
+ const componentPath = context?.rowAction?.action?.customComponent;
37
+ const componentKey = componentPath?.split("/")?.pop();
38
+
39
+ const componentMap: Record<string, any> = {
40
+ "GenerateModelCodeRowAction": dynamic(
41
+ () => import("../extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction"),
42
+ { ssr: false }
43
+ ),
44
+ "GenerateModuleCodeRowAction": dynamic(
45
+ () => import("../extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction"),
46
+ { ssr: false }
47
+ ),
48
+ };
49
+
50
+ useEffect(() => {
51
+ if (!componentKey) return;
52
+
53
+ if (componentMap[componentKey]) {
54
+ setComponent(() => () => setComponent(() => componentMap[componentKey]));
55
+ } else {
56
+ import(componentPath)
57
+ .then((mod) => setComponent(() => mod.default || mod))
58
+ .catch((err) => {
59
+ console.error(` ${ERROR_MESSAGES.LOADING_COMPONENT} ${componentPath}:`, err);
60
+ setComponent(() => () => <FallbackComponent componentName={componentKey} />);
61
+ });
62
+ }
63
+ }, [componentKey]);
64
+
65
+ if (!Component) return <p>Loading...</p>;
66
+
67
+ return <Component context={context} />;
68
+ }
69
+
70
+
@@ -0,0 +1,2 @@
1
+ export declare const SolidImportWrapper: ({ setImportStep, listViewMetaData, setOpenImportDialog, handleFetchUpdatedRecords }: any) => import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=SolidImportWrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolidImportWrapper.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidGenericImport/SolidImportWrapper.tsx"],"names":[],"mappings":"AAKA,eAAO,MAAM,kBAAkB,wFAAyF,GAAG,4CAuB1H,CAAA"}
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { SolidImportDropzone } from './SolidImportDropzone';
4
+ import { SolidImportTransaction } from './SolidImportTransaction';
5
+ export var SolidImportWrapper = function (_a) {
6
+ var _b, _c, _d;
7
+ var setImportStep = _a.setImportStep, listViewMetaData = _a.listViewMetaData, setOpenImportDialog = _a.setOpenImportDialog, handleFetchUpdatedRecords = _a.handleFetchUpdatedRecords;
8
+ var _e = useState(false), importTransactionContext = _e[0], setImportTransactionContext = _e[1];
9
+ var _f = useState(null), transactionId = _f[0], setTransactionId = _f[1];
10
+ var modelMetadataId = (_d = (_c = (_b = listViewMetaData === null || listViewMetaData === void 0 ? void 0 : listViewMetaData.data) === null || _b === void 0 ? void 0 : _b.solidView) === null || _c === void 0 ? void 0 : _c.model) === null || _d === void 0 ? void 0 : _d.id;
11
+ return (_jsx("div", { children: !importTransactionContext ?
12
+ _jsx(SolidImportDropzone, { setImportStep: setImportStep, setImportTransactionContext: setImportTransactionContext, setTransactionId: setTransactionId, modelMetadataId: modelMetadataId })
13
+ :
14
+ _jsx(SolidImportTransaction, { transactionId: transactionId, setImportTransactionContext: setImportTransactionContext, setOpenImportDialog: setOpenImportDialog, handleFetchUpdatedRecords: handleFetchUpdatedRecords }) }));
15
+ };
16
+ //# sourceMappingURL=SolidImportWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolidImportWrapper.js","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidGenericImport/SolidImportWrapper.tsx"],"names":[],"mappings":";AACA,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AAEjE,MAAM,CAAC,IAAM,kBAAkB,GAAG,UAAC,EAAwF;;QAAtF,aAAa,mBAAA,EAAE,gBAAgB,sBAAA,EAAE,mBAAmB,yBAAA,EAAE,yBAAyB,+BAAA;IAC1G,IAAA,KAA0D,QAAQ,CAAC,KAAK,CAAC,EAAxE,wBAAwB,QAAA,EAAE,2BAA2B,QAAmB,CAAC;IAC1E,IAAA,KAAoC,QAAQ,CAAC,IAAI,CAAC,EAAjD,aAAa,QAAA,EAAE,gBAAgB,QAAkB,CAAC;IACzD,IAAM,eAAe,GAAG,MAAA,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,SAAS,0CAAE,KAAK,0CAAE,EAAE,CAAC;IACrE,OAAO,CACH,wBACK,CAAC,wBAAwB,CAAC,CAAC;YACxB,KAAC,mBAAmB,IAChB,aAAa,EAAE,aAAa,EAC5B,2BAA2B,EAAE,2BAA2B,EACxD,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAe,GAClC;YACF,CAAC;gBACD,KAAC,sBAAsB,IACnB,aAAa,EAAE,aAAa,EAC5B,2BAA2B,EAAE,2BAA2B,EACxD,mBAAmB,EAAE,mBAAmB,EACxC,yBAAyB,EAAE,yBAAyB,GACtD,GAEJ,CACT,CAAA;AACL,CAAC,CAAA","sourcesContent":["\nimport React, { useState } from 'react'\nimport { SolidImportDropzone } from './SolidImportDropzone'\nimport { SolidImportTransaction } from './SolidImportTransaction'\n\nexport const SolidImportWrapper = ({ setImportStep, listViewMetaData, setOpenImportDialog, handleFetchUpdatedRecords }: any) => {\n const [importTransactionContext, setImportTransactionContext] = useState(false);\n const [transactionId, setTransactionId] = useState(null);\n const modelMetadataId = listViewMetaData?.data?.solidView?.model?.id;\n return (\n <div>\n {!importTransactionContext ?\n <SolidImportDropzone\n setImportStep={setImportStep}\n setImportTransactionContext={setImportTransactionContext}\n setTransactionId={setTransactionId}\n modelMetadataId={modelMetadataId}\n />\n :\n <SolidImportTransaction\n transactionId={transactionId}\n setImportTransactionContext={setImportTransactionContext}\n setOpenImportDialog={setOpenImportDialog}\n handleFetchUpdatedRecords={handleFetchUpdatedRecords}\n />\n }\n </div>\n )\n}"]}