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

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 (408) 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/common/LoadDynamicJsxComponent.d.ts +2 -0
  26. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts.map +1 -0
  27. package/dist/components/core/common/LoadDynamicJsxComponent.js +50 -0
  28. package/dist/components/core/common/LoadDynamicJsxComponent.js.map +1 -0
  29. package/dist/components/core/common/LoadDynamicJsxComponent.tsx +70 -0
  30. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.d.ts +2 -0
  31. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.d.ts.map +1 -0
  32. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.js +16 -0
  33. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.js.map +1 -0
  34. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.tsx +29 -0
  35. package/dist/components/core/dashboard/DashboardFilter.d.ts +13 -0
  36. package/dist/components/core/dashboard/DashboardFilter.d.ts.map +1 -0
  37. package/dist/components/core/dashboard/DashboardFilter.js +299 -0
  38. package/dist/components/core/dashboard/DashboardFilter.js.map +1 -0
  39. package/dist/components/core/dashboard/DashboardFilter.tsx +348 -0
  40. package/dist/components/core/dashboard/PrimeDataTableWrapper.d.ts +3 -0
  41. package/dist/components/core/dashboard/PrimeDataTableWrapper.d.ts.map +1 -0
  42. package/dist/components/core/dashboard/PrimeDataTableWrapper.js +21 -0
  43. package/dist/components/core/dashboard/PrimeDataTableWrapper.js.map +1 -0
  44. package/dist/components/core/dashboard/PrimeDataTableWrapper.tsx +40 -0
  45. package/dist/components/core/dashboard/SolidDashboard.d.ts +28 -0
  46. package/dist/components/core/dashboard/SolidDashboard.d.ts.map +1 -0
  47. package/dist/components/core/dashboard/SolidDashboard.js +183 -0
  48. package/dist/components/core/dashboard/SolidDashboard.js.map +1 -0
  49. package/dist/components/core/dashboard/SolidDashboard.module.css +83 -0
  50. package/dist/components/core/dashboard/SolidDashboard.tsx +263 -0
  51. package/dist/components/core/dashboard/SolidDashboardBody.d.ts +24 -0
  52. package/dist/components/core/dashboard/SolidDashboardBody.d.ts.map +1 -0
  53. package/dist/components/core/dashboard/SolidDashboardBody.js +162 -0
  54. package/dist/components/core/dashboard/SolidDashboardBody.js.map +1 -0
  55. package/dist/components/core/dashboard/SolidDashboardBody.tsx +168 -0
  56. package/dist/components/core/dashboard/SolidDashboardFilterRequired.d.ts +2 -0
  57. package/dist/components/core/dashboard/SolidDashboardFilterRequired.d.ts.map +1 -0
  58. package/dist/components/core/dashboard/SolidDashboardFilterRequired.js +11 -0
  59. package/dist/components/core/dashboard/SolidDashboardFilterRequired.js.map +1 -0
  60. package/dist/components/core/dashboard/SolidDashboardFilterRequired.tsx +28 -0
  61. package/dist/components/core/dashboard/SolidDashboardHeader.d.ts +3 -0
  62. package/dist/components/core/dashboard/SolidDashboardHeader.d.ts.map +1 -0
  63. package/dist/components/core/dashboard/SolidDashboardHeader.js +6 -0
  64. package/dist/components/core/dashboard/SolidDashboardHeader.js.map +1 -0
  65. package/dist/components/core/dashboard/SolidDashboardHeader.tsx +10 -0
  66. package/dist/components/core/dashboard/SolidDashboardLoading.d.ts +2 -0
  67. package/dist/components/core/dashboard/SolidDashboardLoading.d.ts.map +1 -0
  68. package/dist/components/core/dashboard/SolidDashboardLoading.js +10 -0
  69. package/dist/components/core/dashboard/SolidDashboardLoading.js.map +1 -0
  70. package/dist/components/core/dashboard/SolidDashboardLoading.tsx +61 -0
  71. package/dist/components/core/dashboard/SolidDashboardNotAvailable.d.ts +3 -0
  72. package/dist/components/core/dashboard/SolidDashboardNotAvailable.d.ts.map +1 -0
  73. package/dist/components/core/dashboard/SolidDashboardNotAvailable.js +12 -0
  74. package/dist/components/core/dashboard/SolidDashboardNotAvailable.js.map +1 -0
  75. package/dist/components/core/dashboard/SolidDashboardNotAvailable.tsx +32 -0
  76. package/dist/components/core/dashboard/SolidDashboardRenderError.d.ts +2 -0
  77. package/dist/components/core/dashboard/SolidDashboardRenderError.d.ts.map +1 -0
  78. package/dist/components/core/dashboard/SolidDashboardRenderError.js +11 -0
  79. package/dist/components/core/dashboard/SolidDashboardRenderError.js.map +1 -0
  80. package/dist/components/core/dashboard/SolidDashboardRenderError.tsx +28 -0
  81. package/dist/components/core/dashboard/SolidDashboardVariable.d.ts +19 -0
  82. package/dist/components/core/dashboard/SolidDashboardVariable.d.ts.map +1 -0
  83. package/dist/components/core/dashboard/SolidDashboardVariable.js +171 -0
  84. package/dist/components/core/dashboard/SolidDashboardVariable.js.map +1 -0
  85. package/dist/components/core/dashboard/SolidDashboardVariable.tsx +259 -0
  86. package/dist/components/core/dashboard/SolidQuestionRenderer.d.ts +9 -0
  87. package/dist/components/core/dashboard/SolidQuestionRenderer.d.ts.map +1 -0
  88. package/dist/components/core/dashboard/SolidQuestionRenderer.js +42 -0
  89. package/dist/components/core/dashboard/SolidQuestionRenderer.js.map +1 -0
  90. package/dist/components/core/dashboard/SolidQuestionRenderer.tsx +99 -0
  91. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.d.ts +9 -0
  92. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.d.ts.map +1 -0
  93. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.js +35 -0
  94. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.js.map +1 -0
  95. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.tsx +48 -0
  96. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.d.ts +7 -0
  97. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.d.ts.map +1 -0
  98. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.js +22 -0
  99. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.js.map +1 -0
  100. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.tsx +51 -0
  101. package/dist/components/core/dashboard/chart-renderers/init-chartjs.d.ts +2 -0
  102. package/dist/components/core/dashboard/chart-renderers/init-chartjs.d.ts.map +1 -0
  103. package/dist/components/core/dashboard/chart-renderers/init-chartjs.js +4 -0
  104. package/dist/components/core/dashboard/chart-renderers/init-chartjs.js.map +1 -0
  105. package/dist/components/core/dashboard/chart-renderers/init-chartjs.ts +25 -0
  106. package/dist/components/core/dashboard/dashboard-utils.d.ts +2 -0
  107. package/dist/components/core/dashboard/dashboard-utils.d.ts.map +1 -0
  108. package/dist/components/core/dashboard/dashboard-utils.js +38 -0
  109. package/dist/components/core/dashboard/dashboard-utils.js.map +1 -0
  110. package/dist/components/core/dashboard/dashboard-utils.ts +39 -0
  111. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.d.ts +10 -0
  112. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.d.ts.map +1 -0
  113. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.js +16 -0
  114. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.js.map +1 -0
  115. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.ts +19 -0
  116. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.d.ts +8 -0
  117. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.d.ts.map +1 -0
  118. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.js +64 -0
  119. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.js.map +1 -0
  120. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.ts +30 -0
  121. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.d.ts +8 -0
  122. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.d.ts.map +1 -0
  123. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.js +62 -0
  124. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.js.map +1 -0
  125. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.ts +29 -0
  126. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.d.ts +4 -0
  127. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.d.ts.map +1 -0
  128. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.js +23 -0
  129. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.js.map +1 -0
  130. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.tsx +36 -0
  131. package/dist/components/core/form/SolidFormView.js +1 -1
  132. package/dist/components/core/form/SolidFormView.js.map +1 -1
  133. package/dist/components/core/form/SolidFormView.tsx +1 -1
  134. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts.map +1 -1
  135. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js +11 -1
  136. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js.map +1 -1
  137. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.tsx +26 -19
  138. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  139. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +13 -5
  140. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  141. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +16 -9
  142. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts +3 -0
  143. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts.map +1 -0
  144. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.js +92 -0
  145. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.js.map +1 -0
  146. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.tsx +68 -0
  147. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.d.ts +3 -0
  148. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.d.ts.map +1 -0
  149. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.js +111 -0
  150. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.js.map +1 -0
  151. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.tsx +122 -0
  152. package/dist/components/core/kanban/SolidKanbanViewFields.d.ts +12 -0
  153. package/dist/components/core/kanban/SolidKanbanViewFields.d.ts.map +1 -0
  154. package/dist/components/core/kanban/SolidKanbanViewFields.js +145 -0
  155. package/dist/components/core/kanban/SolidKanbanViewFields.js.map +1 -0
  156. package/dist/components/core/kanban/SolidKanbanViewFields.tsx +164 -0
  157. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts +2 -0
  158. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts.map +1 -0
  159. package/dist/components/core/kanban/SolidManyToOneFilterElement.js +87 -0
  160. package/dist/components/core/kanban/SolidManyToOneFilterElement.js.map +1 -0
  161. package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +59 -0
  162. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.d.ts +2 -0
  163. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.d.ts.map +1 -0
  164. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.js +73 -0
  165. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.js.map +1 -0
  166. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.tsx +50 -0
  167. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.d.ts +2 -0
  168. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.d.ts.map +1 -0
  169. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.js +20 -0
  170. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.js.map +1 -0
  171. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.tsx +32 -0
  172. package/dist/components/core/kanban/SolidVarInputsFilterElement.d.ts +12 -0
  173. package/dist/components/core/kanban/SolidVarInputsFilterElement.d.ts.map +1 -0
  174. package/dist/components/core/kanban/SolidVarInputsFilterElement.js +81 -0
  175. package/dist/components/core/kanban/SolidVarInputsFilterElement.js.map +1 -0
  176. package/dist/components/core/kanban/SolidVarInputsFilterElement.tsx +184 -0
  177. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.d.ts +4 -0
  178. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.d.ts.map +1 -0
  179. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.js +7 -0
  180. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.js.map +1 -0
  181. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.tsx +9 -0
  182. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.d.ts +4 -0
  183. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.d.ts.map +1 -0
  184. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.js +8 -0
  185. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.js.map +1 -0
  186. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.tsx +16 -0
  187. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.d.ts +4 -0
  188. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.d.ts.map +1 -0
  189. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.js +21 -0
  190. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.js.map +1 -0
  191. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.tsx +23 -0
  192. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.d.ts +4 -0
  193. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.d.ts.map +1 -0
  194. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.js +8 -0
  195. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.js.map +1 -0
  196. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.tsx +14 -0
  197. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.d.ts +4 -0
  198. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.d.ts.map +1 -0
  199. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.js +8 -0
  200. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.js.map +1 -0
  201. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.tsx +13 -0
  202. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.d.ts +4 -0
  203. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.d.ts.map +1 -0
  204. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.js +7 -0
  205. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.js.map +1 -0
  206. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.tsx +9 -0
  207. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.d.ts +4 -0
  208. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.d.ts.map +1 -0
  209. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.js +8 -0
  210. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.js.map +1 -0
  211. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.tsx +12 -0
  212. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.d.ts +4 -0
  213. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.d.ts.map +1 -0
  214. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.js +7 -0
  215. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.js.map +1 -0
  216. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.tsx +9 -0
  217. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.d.ts +4 -0
  218. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.d.ts.map +1 -0
  219. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.js +8 -0
  220. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.js.map +1 -0
  221. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.tsx +14 -0
  222. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.d.ts +4 -0
  223. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.d.ts.map +1 -0
  224. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.js +16 -0
  225. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.js.map +1 -0
  226. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.tsx +20 -0
  227. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.d.ts +4 -0
  228. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.d.ts.map +1 -0
  229. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.js +7 -0
  230. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.js.map +1 -0
  231. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.tsx +9 -0
  232. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts +4 -0
  233. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts.map +1 -0
  234. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js +56 -0
  235. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js.map +1 -0
  236. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +140 -0
  237. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts +4 -0
  238. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts.map +1 -0
  239. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js +42 -0
  240. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js.map +1 -0
  241. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +164 -0
  242. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.d.ts +4 -0
  243. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.d.ts.map +1 -0
  244. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.js +11 -0
  245. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.js.map +1 -0
  246. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.tsx +13 -0
  247. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.d.ts +4 -0
  248. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.d.ts.map +1 -0
  249. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.js +7 -0
  250. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.js.map +1 -0
  251. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.tsx +9 -0
  252. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.d.ts +4 -0
  253. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.d.ts.map +1 -0
  254. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.js +8 -0
  255. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.js.map +1 -0
  256. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.tsx +14 -0
  257. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.d.ts +4 -0
  258. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.d.ts.map +1 -0
  259. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.js +8 -0
  260. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.js.map +1 -0
  261. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.tsx +14 -0
  262. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts +4 -0
  263. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts.map +1 -0
  264. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +37 -0
  265. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -0
  266. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +121 -0
  267. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.d.ts +4 -0
  268. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.d.ts.map +1 -0
  269. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.js +8 -0
  270. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.js.map +1 -0
  271. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.tsx +12 -0
  272. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.d.ts +4 -0
  273. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.d.ts.map +1 -0
  274. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.js +8 -0
  275. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.js.map +1 -0
  276. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.tsx +13 -0
  277. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.d.ts +4 -0
  278. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.d.ts.map +1 -0
  279. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js +7 -0
  280. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js.map +1 -0
  281. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +16 -0
  282. package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
  283. package/dist/components/core/list/SolidDataTable.js +1 -1
  284. package/dist/components/core/list/SolidDataTable.js.map +1 -1
  285. package/dist/components/core/list/SolidDataTable.tsx +1 -0
  286. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts +2 -0
  287. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts.map +1 -0
  288. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js +39 -0
  289. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js.map +1 -0
  290. package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +40 -0
  291. package/dist/components/core/list/SolidVarInputsFilterElement.d.ts +12 -0
  292. package/dist/components/core/list/SolidVarInputsFilterElement.d.ts.map +1 -0
  293. package/dist/components/core/list/SolidVarInputsFilterElement.js +81 -0
  294. package/dist/components/core/list/SolidVarInputsFilterElement.js.map +1 -0
  295. package/dist/components/core/list/SolidVarInputsFilterElement.tsx +184 -0
  296. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts +3 -0
  297. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts.map +1 -0
  298. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.js +87 -0
  299. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.js.map +1 -0
  300. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.tsx +70 -0
  301. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.d.ts +3 -0
  302. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.d.ts.map +1 -0
  303. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.js +33 -0
  304. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.js.map +1 -0
  305. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.tsx +50 -0
  306. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.d.ts +3 -0
  307. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.d.ts.map +1 -0
  308. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.js +158 -0
  309. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.js.map +1 -0
  310. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.tsx +185 -0
  311. package/dist/components/core/model/FieldMetaDataForm.d.ts +1 -1
  312. package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
  313. package/dist/components/core/model/FieldMetaDataForm.js +119 -102
  314. package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
  315. package/dist/components/core/model/FieldMetaDataForm.tsx +82 -39
  316. package/dist/components/core/model/FieldSelector.d.ts +5 -1
  317. package/dist/components/core/model/FieldSelector.d.ts.map +1 -1
  318. package/dist/components/core/model/FieldSelector.js +25 -6
  319. package/dist/components/core/model/FieldSelector.js.map +1 -1
  320. package/dist/components/core/model/FieldSelector.tsx +50 -5
  321. package/dist/components/layout/DashboardHeader.d.ts +3 -0
  322. package/dist/components/layout/DashboardHeader.d.ts.map +1 -0
  323. package/dist/components/layout/DashboardHeader.js +20 -0
  324. package/dist/components/layout/DashboardHeader.js.map +1 -0
  325. package/dist/components/layout/DashboardHeader.tsx +94 -0
  326. package/dist/components/shad-cn-ui/SolidSelect.d.ts +2 -1
  327. package/dist/components/shad-cn-ui/SolidSelect.d.ts.map +1 -1
  328. package/dist/components/shad-cn-ui/SolidSelect.js +12 -4
  329. package/dist/components/shad-cn-ui/SolidSelect.js.map +1 -1
  330. package/dist/components/shad-cn-ui/SolidSelect.tsx +13 -1
  331. package/dist/helpers/# no such endpoints exist, need to calle +3 -0
  332. package/dist/helpers/ToastContainer.d.ts +4 -0
  333. package/dist/helpers/ToastContainer.d.ts.map +1 -0
  334. package/dist/helpers/ToastContainer.js +49 -0
  335. package/dist/helpers/ToastContainer.js.map +1 -0
  336. package/dist/helpers/ToastContainer.tsx +94 -0
  337. package/dist/helpers/showToast.d.ts +5 -0
  338. package/dist/helpers/showToast.d.ts.map +1 -0
  339. package/dist/helpers/showToast.js +17 -0
  340. package/dist/helpers/showToast.js.map +1 -0
  341. package/dist/helpers/showToast.ts +13 -0
  342. package/dist/helpers/studioSandbox.d.ts +31 -0
  343. package/dist/helpers/studioSandbox.d.ts.map +1 -0
  344. package/dist/helpers/studioSandbox.js +104 -0
  345. package/dist/helpers/studioSandbox.js.map +1 -0
  346. package/dist/helpers/studioSandbox.ts +117 -0
  347. package/dist/nextAuth/authProviders.d.ts +4 -0
  348. package/dist/nextAuth/authProviders.d.ts.map +1 -0
  349. package/dist/nextAuth/authProviders.js +198 -0
  350. package/dist/nextAuth/authProviders.js.map +1 -0
  351. package/dist/nextAuth/authProviders.tsx +232 -0
  352. package/dist/nextAuth/handleLogout.d.ts +2 -0
  353. package/dist/nextAuth/handleLogout.d.ts.map +1 -0
  354. package/dist/nextAuth/handleLogout.js +36 -0
  355. package/dist/nextAuth/handleLogout.js.map +1 -0
  356. package/dist/nextAuth/handleLogout.tsx +39 -0
  357. package/dist/nextAuth/refreshAccessToken.d.ts +2 -0
  358. package/dist/nextAuth/refreshAccessToken.d.ts.map +1 -0
  359. package/dist/nextAuth/refreshAccessToken.js +24 -0
  360. package/dist/nextAuth/refreshAccessToken.js.map +1 -0
  361. package/dist/nextAuth/refreshAccessToken.tsx +28 -0
  362. package/dist/redux/api/dashboardApi.d.ts +23 -0
  363. package/dist/redux/api/dashboardApi.d.ts.map +1 -0
  364. package/dist/redux/api/dashboardApi.js +35 -0
  365. package/dist/redux/api/dashboardApi.js.map +1 -0
  366. package/dist/redux/api/dashboardApi.ts +56 -0
  367. package/dist/redux/api/dashboardLayoutApi.d.ts +24 -0
  368. package/dist/redux/api/dashboardLayoutApi.d.ts.map +1 -0
  369. package/dist/redux/api/dashboardLayoutApi.js +34 -0
  370. package/dist/redux/api/dashboardLayoutApi.js.map +1 -0
  371. package/dist/redux/api/dashboardLayoutApi.ts +55 -0
  372. package/dist/redux/api/dashboardQuestionApi.d.ts +5 -0
  373. package/dist/redux/api/dashboardQuestionApi.d.ts.map +1 -0
  374. package/dist/redux/api/dashboardQuestionApi.js +18 -0
  375. package/dist/redux/api/dashboardQuestionApi.js.map +1 -0
  376. package/dist/redux/api/dashboardQuestionApi.ts +17 -0
  377. package/dist/redux/api/datasourceIntrospectionApi.d.ts +1 -0
  378. package/dist/redux/api/datasourceIntrospectionApi.d.ts.map +1 -1
  379. package/dist/redux/api/datasourceIntrospectionApi.js.map +1 -1
  380. package/dist/redux/api/datasourceIntrospectionApi.ts +1 -0
  381. package/dist/redux/features/settingsSlice.d.ts +20 -0
  382. package/dist/redux/features/settingsSlice.d.ts.map +1 -0
  383. package/dist/redux/features/settingsSlice.js +39 -0
  384. package/dist/redux/features/settingsSlice.js.map +1 -0
  385. package/dist/redux/features/settingsSlice.ts +60 -0
  386. package/dist/resources/images/Footerbg.png +0 -0
  387. package/dist/resources/images/LoginBanner.png +0 -0
  388. package/dist/resources/images/dashboard/Ellipse 1.svg +10 -0
  389. package/dist/resources/images/dashboard/Rectangle 17.svg +10 -0
  390. package/dist/resources/images/dashboard/Rectangle 25.svg +11 -0
  391. package/dist/resources/images/dashboard/image 5.svg +9 -0
  392. package/dist/resources/images/loginhero.png +0 -0
  393. package/dist/resources/images/logo.png +0 -0
  394. package/dist/resources/images/radix-logo-white.png +0 -0
  395. package/dist/resources/images/radix-logo.png +0 -0
  396. package/dist/resources/images/signupBanner.png +0 -0
  397. package/dist/resources/shadcn-base.css +16 -70
  398. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.css +12 -0
  399. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.d.ts.map +1 -1
  400. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js +160 -59
  401. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.js.map +1 -1
  402. package/dist/routes/pages/admin/core/DatasourceIntrospectionPage.tsx +293 -41
  403. package/package.json +1 -1
  404. package/dist/helpers/modulePackageResumeState.d.ts +0 -6
  405. package/dist/helpers/modulePackageResumeState.d.ts.map +0 -1
  406. package/dist/helpers/modulePackageResumeState.js +0 -46
  407. package/dist/helpers/modulePackageResumeState.js.map +0 -1
  408. package/dist/helpers/modulePackageResumeState.ts +0 -57
@@ -0,0 +1,299 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
49
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
50
+ if (ar || !(i in from)) {
51
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
52
+ ar[i] = from[i];
53
+ }
54
+ }
55
+ return to.concat(ar || Array.prototype.slice.call(from));
56
+ };
57
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
58
+ import { useState, useEffect } from "react";
59
+ import { SolidAutocomplete, SolidButton, SolidDatePicker, SolidDialog, SolidDivider, SolidSelect } from "../../shad-cn-ui";
60
+ import { useLazyGetDashboardVariableSelectionDynamicValuesQuery } from "../../../redux/api/dashboardApi";
61
+ var getNumberOfInputs = function (matchMode) {
62
+ switch (matchMode) {
63
+ case '$between': return 2;
64
+ case '$in':
65
+ case '$notIn': return null;
66
+ case '$startsWith':
67
+ case '$contains':
68
+ case '$notContains':
69
+ case '$endsWith':
70
+ case '$equals':
71
+ case '$notEquals':
72
+ case '$lt':
73
+ case '$lte':
74
+ case '$gt':
75
+ case '$gte': return 1;
76
+ case '$null':
77
+ case '$notNull': return 0;
78
+ default: return 1;
79
+ }
80
+ };
81
+ var dateFilterMatchModeOptions = [
82
+ { label: 'Equals', value: "$eq" },
83
+ { label: 'Not Equals', value: "$nei" },
84
+ { label: 'Less Than', value: "$lt" },
85
+ { label: 'Less Than Or Equal', value: "$lte" },
86
+ { label: 'Greater Than', value: "$gt" },
87
+ { label: 'Greater Than Or Equal', value: "$gte" },
88
+ { label: 'In', value: "$in" },
89
+ { label: 'Not In', value: "$notIn" },
90
+ { label: 'Between', value: "$between" }
91
+ ];
92
+ var selectionFilterMatchModeOptions = [
93
+ { label: 'In', value: "$in" },
94
+ { label: 'Not In', value: "$notIn" }
95
+ ];
96
+ var FilterValueInput = function (_a) {
97
+ var rule = _a.rule, onChange = _a.onChange;
98
+ var numberOfInputs = getNumberOfInputs(rule.matchMode);
99
+ // Ensure values is an array properly sized immediately on render
100
+ var values = Array.isArray(rule.value) ? __spreadArray([], rule.value, true) : (rule.value ? [rule.value] : []);
101
+ if (numberOfInputs !== null && numberOfInputs > 0 && values.length !== numberOfInputs) {
102
+ if (values.length < numberOfInputs) {
103
+ values = __spreadArray(__spreadArray([], values, true), Array(numberOfInputs - values.length).fill(''), true);
104
+ }
105
+ else {
106
+ values = values.slice(0, numberOfInputs);
107
+ }
108
+ }
109
+ if (values.length === 0 && (numberOfInputs === null || numberOfInputs > 0)) {
110
+ values = [''];
111
+ }
112
+ var updateValue = function (index, val) {
113
+ var newValues = __spreadArray([], values, true);
114
+ newValues[index] = val;
115
+ onChange(rule.id, 'value', numberOfInputs === 1 ? newValues[0] : newValues);
116
+ };
117
+ var addInput = function () {
118
+ var newValues = __spreadArray(__spreadArray([], values, true), [''], false);
119
+ onChange(rule.id, 'value', newValues);
120
+ };
121
+ var deleteInput = function (index) {
122
+ if (values.length > 1) {
123
+ var newValues = values.filter(function (_, i) { return i !== index; });
124
+ onChange(rule.id, 'value', newValues);
125
+ }
126
+ };
127
+ // Components for actual rendering
128
+ var renderDate = function (val, index) {
129
+ var dateVal = val ? new Date(val) : null;
130
+ if (isNaN((dateVal === null || dateVal === void 0 ? void 0 : dateVal.getTime()) || 0))
131
+ dateVal = null;
132
+ return (_jsx(SolidDatePicker, { selected: dateVal || undefined, onChange: function (nextDate) {
133
+ var dateStr = nextDate ? nextDate.toISOString().split('T')[0] : '';
134
+ updateValue(index, dateStr);
135
+ }, dateFormat: "MM/dd/yyyy", placeholderText: "mm/dd/yyyy", className: "w-full", inputClassName: "w-full text-sm" }));
136
+ };
137
+ var SelectionStaticInput = function (_a) {
138
+ var val = _a.val, index = _a.index, updateValue = _a.updateValue, dv = _a.dv;
139
+ var _b = useState([]), filteredItems = _b[0], setFilteredItems = _b[1];
140
+ var staticValues = JSON.parse(dv.selectionStaticValues || '[]') || [];
141
+ var staticValueItems = staticValues.map(function (v) { return ({ value: v.split(':')[0], label: v.split(':')[1] }); });
142
+ var search = function (event) {
143
+ var query = event.query.toLowerCase();
144
+ var filtered = staticValueItems.filter(function (item) {
145
+ return item.label.toLowerCase().includes(query);
146
+ });
147
+ setFilteredItems(filtered);
148
+ };
149
+ return (_jsx(SolidAutocomplete, { value: val, suggestions: filteredItems, completeMethod: search, onChange: function (e) { return updateValue(index, e.value); }, field: "label", dropdown: true, className: "w-full", inputClassName: "w-full text-sm" }));
150
+ };
151
+ var SelectionDynamicInput = function (_a) {
152
+ var val = _a.val, index = _a.index, updateValue = _a.updateValue, dv = _a.dv;
153
+ var _b = useState([]), filteredItems = _b[0], setFilteredItems = _b[1];
154
+ var trigger = useLazyGetDashboardVariableSelectionDynamicValuesQuery()[0];
155
+ var search = function (event) { return __awaiter(void 0, void 0, void 0, function () {
156
+ var queryString, res, filtered, error_1;
157
+ return __generator(this, function (_a) {
158
+ switch (_a.label) {
159
+ case 0:
160
+ queryString = "variableId=".concat(dv.id, "&q=").concat(event.query);
161
+ _a.label = 1;
162
+ case 1:
163
+ _a.trys.push([1, 3, , 4]);
164
+ return [4 /*yield*/, trigger(queryString).unwrap()];
165
+ case 2:
166
+ res = _a.sent();
167
+ filtered = res.filter(function (item) {
168
+ return item.label.toLowerCase().includes(event.query.toLowerCase());
169
+ });
170
+ setFilteredItems(filtered);
171
+ return [3 /*break*/, 4];
172
+ case 3:
173
+ error_1 = _a.sent();
174
+ console.error(error_1);
175
+ return [3 /*break*/, 4];
176
+ case 4: return [2 /*return*/];
177
+ }
178
+ });
179
+ }); };
180
+ return (_jsx(SolidAutocomplete, { value: val, suggestions: filteredItems, completeMethod: search, onChange: function (e) { return updateValue(index, e.value); }, field: "label", dropdown: true, className: "w-full", inputClassName: "w-full text-sm" }));
181
+ };
182
+ if (numberOfInputs === 0)
183
+ return _jsx(_Fragment, {});
184
+ return (_jsx("div", { className: "flex flex-column gap-2", children: values.map(function (val, index) { return (_jsxs("div", { className: "flex gap-2", children: [_jsxs("div", { className: "flex-grow-1", children: [rule.variable.variableType === 'date' && renderDate(val, index), rule.variable.variableType === 'selectionStatic' && _jsx(SelectionStaticInput, { val: val, index: index, updateValue: updateValue, dv: rule.variable }), rule.variable.variableType === 'selectionDynamic' && _jsx(SelectionDynamicInput, { val: val, index: index, updateValue: updateValue, dv: rule.variable })] }), numberOfInputs === null && (_jsxs("div", { className: "flex align-items-center", children: [_jsx(SolidButton, { type: "button", text: true, severity: 'secondary', icon: "si si-plus", size: 'sm', onClick: addInput, className: 'p-0 mr-2 target-btn', style: { width: 30, minWidth: 30 } }), _jsx(SolidButton, { type: "button", text: true, severity: 'secondary', icon: "si si-trash", size: 'sm', onClick: function () { return deleteInput(index); }, className: 'p-0 target-btn', style: { width: 30, minWidth: 30 }, disabled: values.length <= 1 })] }))] }, index)); }) }));
185
+ };
186
+ export var DashboardFilter = function (_a) {
187
+ var dashboardVariables = _a.dashboardVariables, initialFilters = _a.initialFilters, onApply = _a.onApply, visible = _a.visible, onHide = _a.onHide;
188
+ var _b = useState([]), rules = _b[0], setRules = _b[1];
189
+ useEffect(function () {
190
+ if (visible) {
191
+ // Initialize rules based on dashboardVariables
192
+ var newRules = dashboardVariables.map(function (dv, index) {
193
+ var existingFilter = initialFilters.find(function (f) { return f.variableName === dv.variableName; });
194
+ var defaultOperator = dv.defaultOperator || (dv.variableType === 'date' ? '$between' : '$in');
195
+ var defaultValue = null;
196
+ if (existingFilter && existingFilter.value !== undefined) {
197
+ defaultValue = existingFilter.value;
198
+ }
199
+ else if (dv.defaultValue) {
200
+ try {
201
+ defaultValue = JSON.parse(dv.defaultValue || '[]');
202
+ }
203
+ catch (e) {
204
+ defaultValue = null;
205
+ }
206
+ }
207
+ return {
208
+ id: index + 1,
209
+ fieldName: dv.variableName,
210
+ matchMode: existingFilter ? existingFilter.operator : defaultOperator,
211
+ value: defaultValue,
212
+ variable: dv
213
+ };
214
+ });
215
+ setRules(newRules);
216
+ }
217
+ }, [visible, dashboardVariables, initialFilters]);
218
+ var handleChange = function (id, key, value) {
219
+ setRules(function (prev) {
220
+ return prev.map(function (rule) {
221
+ var _a, _b;
222
+ if (rule.id === id) {
223
+ var newVal = rule.value;
224
+ // Immediate sync of values count when operator matches
225
+ if (key === 'matchMode') {
226
+ var newNum = getNumberOfInputs(value);
227
+ var currentValues = Array.isArray(rule.value) ? __spreadArray([], rule.value, true) : (rule.value ? [rule.value] : []);
228
+ if (newNum !== null && newNum > 0) {
229
+ if (currentValues.length < newNum) {
230
+ currentValues = __spreadArray(__spreadArray([], currentValues, true), Array(newNum - currentValues.length).fill(''), true);
231
+ }
232
+ else if (currentValues.length > newNum) {
233
+ currentValues = currentValues.slice(0, newNum);
234
+ }
235
+ }
236
+ else if (newNum === null && currentValues.length === 0) {
237
+ currentValues = [''];
238
+ }
239
+ newVal = newNum === 1 && currentValues.length === 1 ? currentValues[0] : currentValues;
240
+ return __assign(__assign({}, rule), (_a = {}, _a[key] = value, _a.value = newVal, _a));
241
+ }
242
+ return __assign(__assign({}, rule), (_b = {}, _b[key] = value, _b));
243
+ }
244
+ return rule;
245
+ });
246
+ });
247
+ };
248
+ var handleApply = function () {
249
+ var newFilters = rules
250
+ .filter(function (rule) {
251
+ if (['$null', '$notNull'].includes(rule.matchMode))
252
+ return true;
253
+ if (rule.value === null || rule.value === undefined)
254
+ return false;
255
+ if (Array.isArray(rule.value)) {
256
+ var hasValidValue = rule.value.some(function (v) { return v !== '' && v !== null; });
257
+ if (!hasValidValue)
258
+ return false;
259
+ }
260
+ else {
261
+ if (rule.value === '')
262
+ return false;
263
+ }
264
+ return true;
265
+ })
266
+ .map(function (rule) {
267
+ var finalValue = rule.value;
268
+ var numberOfInputs = getNumberOfInputs(rule.matchMode);
269
+ // Clean array values or extract single values
270
+ if (Array.isArray(finalValue)) {
271
+ finalValue = finalValue.filter(function (v) { return v !== null && v !== ''; });
272
+ if (numberOfInputs === 1 && finalValue.length > 0) {
273
+ finalValue = finalValue[0];
274
+ }
275
+ }
276
+ // For selection static/dynamic, we might have selected an object {label, value} or string
277
+ // We need to extract the 'value' if it's an object from AutoComplete selection
278
+ if (Array.isArray(finalValue)) {
279
+ finalValue = finalValue.map(function (v) { return typeof v === 'object' && v !== null && 'value' in v ? v.value : v; });
280
+ }
281
+ else if (typeof finalValue === 'object' && finalValue !== null && 'value' in finalValue) {
282
+ finalValue = finalValue.value;
283
+ }
284
+ return {
285
+ variableName: rule.fieldName,
286
+ operator: rule.matchMode,
287
+ value: finalValue,
288
+ };
289
+ });
290
+ onApply(newFilters);
291
+ onHide();
292
+ };
293
+ var handleClear = function () {
294
+ onApply([]);
295
+ onHide();
296
+ };
297
+ return (_jsxs(SolidDialog, { showHeader: false, visible: visible, className: "solid-global-search-filter solid-dialog-lg", onHide: onHide, children: [_jsxs("div", { className: "flex align-items-center justify-content-between px-3", children: [_jsx("h5", { className: "solid-custom-title m-0", children: "Add Dashboard Filter" }), _jsx(SolidButton, { icon: "si si-times", rounded: true, text: true, "aria-label": "Cancel", type: "reset", size: "sm", onClick: onHide })] }), _jsx(SolidDivider, { className: "m-0" }), _jsxs("div", { className: "p-2 lg:p-2", children: [_jsx("div", { className: 'primary-filter-fieldset', children: _jsxs("div", { className: "flex flex-column gap-3 py-3", children: [rules.map(function (rule) { return (_jsxs("div", { className: "grid grid-nogutter align-items-start", children: [_jsx("div", { className: "col-12 md:col-4 pr-2", children: _jsx("div", { className: "p-inputtext p-disabled w-full flex align-items-center mb-2 md:mb-0", style: { minHeight: '38px' }, children: rule.fieldName }) }), _jsx("div", { className: "col-12 md:col-4 pr-2", children: _jsx(SolidSelect, { value: rule.matchMode, onChange: function (e) { return handleChange(rule.id, 'matchMode', e.value); }, options: rule.variable.variableType === 'date' ? dateFilterMatchModeOptions : selectionFilterMatchModeOptions, placeholder: "Select Operator", className: "w-full" }) }), _jsx("div", { className: "col-12 md:col-4", children: _jsx(FilterValueInput, { rule: rule, onChange: handleChange }) })] }, rule.id)); }), rules.length === 0 && (_jsx("div", { className: "text-color-secondary italic", children: "No variables available for this dashboard." }))] }) }), _jsxs("div", { className: 'flex gap-3 mt-3', children: [_jsx(SolidButton, { label: "Apply", size: "sm", onClick: handleApply, autoFocus: true }), _jsx(SolidButton, { type: 'button', label: 'Cancel', outlined: true, size: 'sm', onClick: onHide })] })] })] }));
298
+ };
299
+ //# sourceMappingURL=DashboardFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardFilter.js","sourceRoot":"","sources":["../../../../src/components/core/dashboard/DashboardFilter.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport { SolidAutocomplete, SolidButton, SolidDatePicker, SolidDialog, SolidDivider, SolidSelect } from \"../../shad-cn-ui\";\nimport { SqlExpression } from \"../../../types/solid-core\";\nimport { DashboardVariableRecord } from \"./SolidDashboard\";\nimport { useLazyGetDashboardVariableSelectionDynamicValuesQuery } from \"../../../redux/api/dashboardApi\";\ntype AutoCompleteCompleteEvent = { query: string };\n\ninterface DashboardFilterProps {\n dashboardVariables: DashboardVariableRecord[];\n initialFilters: SqlExpression[];\n onApply: (filters: SqlExpression[]) => void;\n visible: boolean;\n onHide: () => void;\n}\n\nconst getNumberOfInputs = (matchMode: any): number | null => {\n switch (matchMode) {\n case '$between': return 2;\n case '$in': case '$notIn': return null;\n case '$startsWith': case '$contains': case '$notContains': case '$endsWith': case '$equals': case '$notEquals': case '$lt': case '$lte': case '$gt': case '$gte': return 1;\n case '$null': case '$notNull': return 0;\n default: return 1;\n }\n}\n\nconst dateFilterMatchModeOptions = [\n { label: 'Equals', value: \"$eq\" },\n { label: 'Not Equals', value: \"$nei\" },\n { label: 'Less Than', value: \"$lt\" },\n { label: 'Less Than Or Equal', value: \"$lte\" },\n { label: 'Greater Than', value: \"$gt\" },\n { label: 'Greater Than Or Equal', value: \"$gte\" },\n { label: 'In', value: \"$in\" },\n { label: 'Not In', value: \"$notIn\" },\n { label: 'Between', value: \"$between\" }\n];\n\nconst selectionFilterMatchModeOptions = [\n { label: 'In', value: \"$in\" },\n { label: 'Not In', value: \"$notIn\" }\n];\n\nconst FilterValueInput = ({ rule, onChange }: any) => {\n const numberOfInputs = getNumberOfInputs(rule.matchMode);\n\n // Ensure values is an array properly sized immediately on render\n let values = Array.isArray(rule.value) ? [...rule.value] : (rule.value ? [rule.value] : []);\n\n if (numberOfInputs !== null && numberOfInputs > 0 && values.length !== numberOfInputs) {\n if (values.length < numberOfInputs) {\n values = [...values, ...Array(numberOfInputs - values.length).fill('')];\n } else {\n values = values.slice(0, numberOfInputs);\n }\n }\n if (values.length === 0 && (numberOfInputs === null || numberOfInputs > 0)) {\n values = [''];\n }\n\n const updateValue = (index: number, val: any) => {\n const newValues = [...values];\n newValues[index] = val;\n onChange(rule.id, 'value', numberOfInputs === 1 ? newValues[0] : newValues);\n };\n\n const addInput = () => {\n const newValues = [...values, ''];\n onChange(rule.id, 'value', newValues);\n };\n\n const deleteInput = (index: number) => {\n if (values.length > 1) {\n const newValues = values.filter((_: any, i: number) => i !== index);\n onChange(rule.id, 'value', newValues);\n }\n };\n\n // Components for actual rendering\n const renderDate = (val: any, index: number) => {\n let dateVal = val ? new Date(val) : null;\n if (isNaN(dateVal?.getTime() || 0)) dateVal = null;\n return (\n <SolidDatePicker\n selected={dateVal || undefined}\n onChange={(nextDate: Date | null) => {\n const dateStr = nextDate ? nextDate.toISOString().split('T')[0] : '';\n updateValue(index, dateStr);\n }}\n dateFormat=\"MM/dd/yyyy\"\n placeholderText=\"mm/dd/yyyy\"\n className=\"w-full\"\n inputClassName=\"w-full text-sm\"\n />\n );\n };\n\n const SelectionStaticInput = ({ val, index, updateValue, dv }: any) => {\n const [filteredItems, setFilteredItems] = useState<{ label: string, value: string }[]>([]);\n const staticValues = JSON.parse(dv.selectionStaticValues || '[]') || [];\n const staticValueItems = staticValues.map((v: any) => ({ value: v.split(':')[0], label: v.split(':')[1] }));\n\n const search = (event: AutoCompleteCompleteEvent) => {\n const query = event.query.toLowerCase();\n const filtered = staticValueItems.filter((item: any) =>\n item.label.toLowerCase().includes(query)\n );\n setFilteredItems(filtered);\n };\n\n return (\n <SolidAutocomplete\n value={val}\n suggestions={filteredItems}\n completeMethod={search}\n onChange={(e) => updateValue(index, e.value)}\n field=\"label\"\n dropdown\n className=\"w-full\"\n inputClassName=\"w-full text-sm\"\n />\n );\n };\n\n const SelectionDynamicInput = ({ val, index, updateValue, dv }: any) => {\n const [filteredItems, setFilteredItems] = useState<{ label: string, value: string }[]>([]);\n const [trigger] = useLazyGetDashboardVariableSelectionDynamicValuesQuery();\n\n const search = async (event: AutoCompleteCompleteEvent) => {\n const queryString = `variableId=${dv.id}&q=${event.query}`;\n try {\n const res = await trigger(queryString).unwrap();\n const filtered = res.filter((item: any) =>\n item.label.toLowerCase().includes(event.query.toLowerCase())\n );\n setFilteredItems(filtered);\n } catch (error) {\n console.error(error);\n }\n };\n\n return (\n <SolidAutocomplete\n value={val}\n suggestions={filteredItems}\n completeMethod={search}\n onChange={(e) => updateValue(index, e.value)}\n field=\"label\"\n dropdown\n className=\"w-full\"\n inputClassName=\"w-full text-sm\"\n />\n );\n };\n\n if (numberOfInputs === 0) return <></>;\n\n return (\n <div className=\"flex flex-column gap-2\">\n {values.map((val: any, index: number) => (\n <div key={index} className=\"flex gap-2\">\n <div className=\"flex-grow-1\">\n {rule.variable.variableType === 'date' && renderDate(val, index)}\n {rule.variable.variableType === 'selectionStatic' && <SelectionStaticInput val={val} index={index} updateValue={updateValue} dv={rule.variable} />}\n {rule.variable.variableType === 'selectionDynamic' && <SelectionDynamicInput val={val} index={index} updateValue={updateValue} dv={rule.variable} />}\n </div>\n {numberOfInputs === null && (\n <div className=\"flex align-items-center\">\n <SolidButton type=\"button\" text severity='secondary' icon=\"si si-plus\" size='sm' onClick={addInput} className='p-0 mr-2 target-btn' style={{ width: 30, minWidth: 30 }} />\n <SolidButton type=\"button\" text severity='secondary' icon=\"si si-trash\" size='sm' onClick={() => deleteInput(index)} className='p-0 target-btn' style={{ width: 30, minWidth: 30 }} disabled={values.length <= 1} />\n </div>\n )}\n </div>\n ))}\n </div>\n );\n};\n\nexport const DashboardFilter: React.FC<DashboardFilterProps> = ({\n dashboardVariables,\n initialFilters,\n onApply,\n visible,\n onHide,\n}) => {\n const [rules, setRules] = useState<any[]>([]);\n\n useEffect(() => {\n if (visible) {\n // Initialize rules based on dashboardVariables\n const newRules = dashboardVariables.map((dv, index) => {\n const existingFilter = initialFilters.find((f: any) => f.variableName === dv.variableName);\n\n const defaultOperator = dv.defaultOperator || (dv.variableType === 'date' ? '$between' : '$in');\n\n let defaultValue = null;\n if (existingFilter && existingFilter.value !== undefined) {\n defaultValue = existingFilter.value;\n } else if (dv.defaultValue) {\n try {\n defaultValue = JSON.parse(dv.defaultValue || '[]');\n } catch (e) {\n defaultValue = null;\n }\n }\n\n return {\n id: index + 1,\n fieldName: dv.variableName,\n matchMode: existingFilter ? existingFilter.operator : defaultOperator,\n value: defaultValue,\n variable: dv\n };\n });\n setRules(newRules);\n }\n }, [visible, dashboardVariables, initialFilters]);\n\n const handleChange = (id: number, key: string, value: any) => {\n setRules((prev) =>\n prev.map((rule) => {\n if (rule.id === id) {\n let newVal = rule.value;\n // Immediate sync of values count when operator matches\n if (key === 'matchMode') {\n const newNum = getNumberOfInputs(value);\n let currentValues = Array.isArray(rule.value) ? [...rule.value] : (rule.value ? [rule.value] : []);\n if (newNum !== null && newNum > 0) {\n if (currentValues.length < newNum) {\n currentValues = [...currentValues, ...Array(newNum - currentValues.length).fill('')];\n } else if (currentValues.length > newNum) {\n currentValues = currentValues.slice(0, newNum);\n }\n } else if (newNum === null && currentValues.length === 0) {\n currentValues = [''];\n }\n newVal = newNum === 1 && currentValues.length === 1 ? currentValues[0] : currentValues;\n return { ...rule, [key]: value, value: newVal };\n }\n return { ...rule, [key]: value };\n }\n return rule;\n })\n );\n };\n\n const handleApply = () => {\n const newFilters: SqlExpression[] = rules\n .filter((rule) => {\n if (['$null', '$notNull'].includes(rule.matchMode)) return true;\n\n if (rule.value === null || rule.value === undefined) return false;\n if (Array.isArray(rule.value)) {\n const hasValidValue = rule.value.some((v: any) => v !== '' && v !== null);\n if (!hasValidValue) return false;\n } else {\n if (rule.value === '') return false;\n }\n return true;\n })\n .map((rule) => {\n let finalValue = rule.value;\n const numberOfInputs = getNumberOfInputs(rule.matchMode);\n // Clean array values or extract single values\n if (Array.isArray(finalValue)) {\n finalValue = finalValue.filter(v => v !== null && v !== '');\n if (numberOfInputs === 1 && finalValue.length > 0) {\n finalValue = finalValue[0];\n }\n }\n\n // For selection static/dynamic, we might have selected an object {label, value} or string\n // We need to extract the 'value' if it's an object from AutoComplete selection\n if (Array.isArray(finalValue)) {\n finalValue = finalValue.map(v => typeof v === 'object' && v !== null && 'value' in v ? v.value : v);\n } else if (typeof finalValue === 'object' && finalValue !== null && 'value' in finalValue) {\n finalValue = finalValue.value;\n }\n\n return {\n variableName: rule.fieldName,\n operator: rule.matchMode,\n value: finalValue,\n }\n });\n\n onApply(newFilters);\n onHide();\n };\n\n const handleClear = () => {\n onApply([]);\n onHide();\n };\n\n return (\n\n\n <SolidDialog showHeader={false} visible={visible} className=\"solid-global-search-filter solid-dialog-lg\" onHide={onHide}>\n <div className=\"flex align-items-center justify-content-between px-3\">\n <h5 className=\"solid-custom-title m-0\">Add Dashboard Filter</h5>\n <SolidButton icon=\"si si-times\" rounded text aria-label=\"Cancel\" type=\"reset\" size=\"sm\" onClick={onHide} />\n </div>\n <SolidDivider className=\"m-0\" />\n <div className=\"p-2 lg:p-2\">\n <div className='primary-filter-fieldset'>\n <div className=\"flex flex-column gap-3 py-3\">\n\n {rules.map((rule) => (\n <div key={rule.id} className=\"grid grid-nogutter align-items-start\">\n <div className=\"col-12 md:col-4 pr-2\">\n <div className=\"p-inputtext p-disabled w-full flex align-items-center mb-2 md:mb-0\" style={{ minHeight: '38px' }}>\n {rule.fieldName}\n </div>\n </div>\n <div className=\"col-12 md:col-4 pr-2\">\n <SolidSelect\n value={rule.matchMode}\n onChange={(e: any) => handleChange(rule.id, 'matchMode', e.value)}\n options={rule.variable.variableType === 'date' ? dateFilterMatchModeOptions : selectionFilterMatchModeOptions}\n placeholder=\"Select Operator\"\n className=\"w-full\"\n />\n </div>\n <div className=\"col-12 md:col-4\">\n <FilterValueInput rule={rule} onChange={handleChange} />\n </div>\n </div>\n ))}\n {rules.length === 0 && (\n <div className=\"text-color-secondary italic\">No variables available for this dashboard.</div>\n )}\n </div>\n </div>\n {/* <div className=\"flex justify-content-between align-items-center mt-4\">\n <Button label=\"Clear Filters\" icon=\"si si-filter-slash\" severity=\"danger\" text onClick={handleClear} />\n <div className=\"flex gap-2\">\n </div>\n </div> */}\n <div className='flex gap-3 mt-3'>\n <SolidButton label=\"Apply\" size=\"sm\" onClick={handleApply} autoFocus />\n <SolidButton type='button' label='Cancel' outlined size='sm' onClick={onHide} />\n </div>\n\n </div>\n </SolidDialog>\n\n );\n};\n"]}