@solidxai/core-ui 0.1.13-beta.2 → 0.1.13-beta.4

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 (501) hide show
  1. package/dist/components/auth/SolidOTPVerify.d.ts +3 -0
  2. package/dist/components/auth/SolidOTPVerify.d.ts.map +1 -0
  3. package/dist/components/auth/SolidOTPVerify.js +67 -0
  4. package/dist/components/auth/SolidOTPVerify.js.map +1 -0
  5. package/dist/components/auth/SolidOTPVerify.tsx +133 -0
  6. package/dist/components/common/AuthBanner.d.ts +3 -0
  7. package/dist/components/common/AuthBanner.d.ts.map +1 -0
  8. package/dist/components/common/AuthBanner.js +15 -0
  9. package/dist/components/common/AuthBanner.js.map +1 -0
  10. package/dist/components/common/AuthBanner.tsx +41 -0
  11. package/dist/components/common/SingleSelectAutoCompleteField.d.ts +2 -0
  12. package/dist/components/common/SingleSelectAutoCompleteField.d.ts.map +1 -0
  13. package/dist/components/common/SingleSelectAutoCompleteField.js +92 -0
  14. package/dist/components/common/SingleSelectAutoCompleteField.js.map +1 -0
  15. package/dist/components/common/SingleSelectAutoCompleteField.tsx +73 -0
  16. package/dist/components/common/SolidExportStepper.d.ts +12 -0
  17. package/dist/components/common/SolidExportStepper.d.ts.map +1 -0
  18. package/dist/components/common/SolidExportStepper.js +30 -0
  19. package/dist/components/common/SolidExportStepper.js.map +1 -0
  20. package/dist/components/common/SolidExportStepper.tsx +135 -0
  21. package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
  22. package/dist/components/core/card/SolidCardView.js +6 -11
  23. package/dist/components/core/card/SolidCardView.js.map +1 -1
  24. package/dist/components/core/card/SolidCardView.tsx +6 -11
  25. package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
  26. package/dist/components/core/card/SolidCardViewConfigure.js +3 -7
  27. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  28. package/dist/components/core/card/SolidCardViewConfigure.tsx +3 -9
  29. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts +2 -0
  30. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts.map +1 -0
  31. package/dist/components/core/common/LoadDynamicJsxComponent.js +50 -0
  32. package/dist/components/core/common/LoadDynamicJsxComponent.js.map +1 -0
  33. package/dist/components/core/common/LoadDynamicJsxComponent.tsx +70 -0
  34. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.d.ts +2 -0
  35. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.d.ts.map +1 -0
  36. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.js +16 -0
  37. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.js.map +1 -0
  38. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.tsx +29 -0
  39. package/dist/components/core/dashboard/DashboardFilter.d.ts +13 -0
  40. package/dist/components/core/dashboard/DashboardFilter.d.ts.map +1 -0
  41. package/dist/components/core/dashboard/DashboardFilter.js +299 -0
  42. package/dist/components/core/dashboard/DashboardFilter.js.map +1 -0
  43. package/dist/components/core/dashboard/DashboardFilter.tsx +348 -0
  44. package/dist/components/core/dashboard/PrimeDataTableWrapper.d.ts +3 -0
  45. package/dist/components/core/dashboard/PrimeDataTableWrapper.d.ts.map +1 -0
  46. package/dist/components/core/dashboard/PrimeDataTableWrapper.js +21 -0
  47. package/dist/components/core/dashboard/PrimeDataTableWrapper.js.map +1 -0
  48. package/dist/components/core/dashboard/PrimeDataTableWrapper.tsx +40 -0
  49. package/dist/components/core/dashboard/SolidDashboard.d.ts +28 -0
  50. package/dist/components/core/dashboard/SolidDashboard.d.ts.map +1 -0
  51. package/dist/components/core/dashboard/SolidDashboard.js +183 -0
  52. package/dist/components/core/dashboard/SolidDashboard.js.map +1 -0
  53. package/dist/components/core/dashboard/SolidDashboard.module.css +83 -0
  54. package/dist/components/core/dashboard/SolidDashboard.tsx +263 -0
  55. package/dist/components/core/dashboard/SolidDashboardBody.d.ts +24 -0
  56. package/dist/components/core/dashboard/SolidDashboardBody.d.ts.map +1 -0
  57. package/dist/components/core/dashboard/SolidDashboardBody.js +162 -0
  58. package/dist/components/core/dashboard/SolidDashboardBody.js.map +1 -0
  59. package/dist/components/core/dashboard/SolidDashboardBody.tsx +168 -0
  60. package/dist/components/core/dashboard/SolidDashboardFilterRequired.d.ts +2 -0
  61. package/dist/components/core/dashboard/SolidDashboardFilterRequired.d.ts.map +1 -0
  62. package/dist/components/core/dashboard/SolidDashboardFilterRequired.js +11 -0
  63. package/dist/components/core/dashboard/SolidDashboardFilterRequired.js.map +1 -0
  64. package/dist/components/core/dashboard/SolidDashboardFilterRequired.tsx +28 -0
  65. package/dist/components/core/dashboard/SolidDashboardHeader.d.ts +3 -0
  66. package/dist/components/core/dashboard/SolidDashboardHeader.d.ts.map +1 -0
  67. package/dist/components/core/dashboard/SolidDashboardHeader.js +6 -0
  68. package/dist/components/core/dashboard/SolidDashboardHeader.js.map +1 -0
  69. package/dist/components/core/dashboard/SolidDashboardHeader.tsx +10 -0
  70. package/dist/components/core/dashboard/SolidDashboardLoading.d.ts +2 -0
  71. package/dist/components/core/dashboard/SolidDashboardLoading.d.ts.map +1 -0
  72. package/dist/components/core/dashboard/SolidDashboardLoading.js +10 -0
  73. package/dist/components/core/dashboard/SolidDashboardLoading.js.map +1 -0
  74. package/dist/components/core/dashboard/SolidDashboardLoading.tsx +61 -0
  75. package/dist/components/core/dashboard/SolidDashboardNotAvailable.d.ts +3 -0
  76. package/dist/components/core/dashboard/SolidDashboardNotAvailable.d.ts.map +1 -0
  77. package/dist/components/core/dashboard/SolidDashboardNotAvailable.js +12 -0
  78. package/dist/components/core/dashboard/SolidDashboardNotAvailable.js.map +1 -0
  79. package/dist/components/core/dashboard/SolidDashboardNotAvailable.tsx +32 -0
  80. package/dist/components/core/dashboard/SolidDashboardRenderError.d.ts +2 -0
  81. package/dist/components/core/dashboard/SolidDashboardRenderError.d.ts.map +1 -0
  82. package/dist/components/core/dashboard/SolidDashboardRenderError.js +11 -0
  83. package/dist/components/core/dashboard/SolidDashboardRenderError.js.map +1 -0
  84. package/dist/components/core/dashboard/SolidDashboardRenderError.tsx +28 -0
  85. package/dist/components/core/dashboard/SolidDashboardVariable.d.ts +19 -0
  86. package/dist/components/core/dashboard/SolidDashboardVariable.d.ts.map +1 -0
  87. package/dist/components/core/dashboard/SolidDashboardVariable.js +171 -0
  88. package/dist/components/core/dashboard/SolidDashboardVariable.js.map +1 -0
  89. package/dist/components/core/dashboard/SolidDashboardVariable.tsx +259 -0
  90. package/dist/components/core/dashboard/SolidQuestionRenderer.d.ts +9 -0
  91. package/dist/components/core/dashboard/SolidQuestionRenderer.d.ts.map +1 -0
  92. package/dist/components/core/dashboard/SolidQuestionRenderer.js +42 -0
  93. package/dist/components/core/dashboard/SolidQuestionRenderer.js.map +1 -0
  94. package/dist/components/core/dashboard/SolidQuestionRenderer.tsx +99 -0
  95. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.d.ts +9 -0
  96. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.d.ts.map +1 -0
  97. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.js +35 -0
  98. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.js.map +1 -0
  99. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.tsx +48 -0
  100. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.d.ts +7 -0
  101. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.d.ts.map +1 -0
  102. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.js +22 -0
  103. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.js.map +1 -0
  104. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.tsx +51 -0
  105. package/dist/components/core/dashboard/chart-renderers/init-chartjs.d.ts +2 -0
  106. package/dist/components/core/dashboard/chart-renderers/init-chartjs.d.ts.map +1 -0
  107. package/dist/components/core/dashboard/chart-renderers/init-chartjs.js +4 -0
  108. package/dist/components/core/dashboard/chart-renderers/init-chartjs.js.map +1 -0
  109. package/dist/components/core/dashboard/chart-renderers/init-chartjs.ts +25 -0
  110. package/dist/components/core/dashboard/dashboard-utils.d.ts +2 -0
  111. package/dist/components/core/dashboard/dashboard-utils.d.ts.map +1 -0
  112. package/dist/components/core/dashboard/dashboard-utils.js +38 -0
  113. package/dist/components/core/dashboard/dashboard-utils.js.map +1 -0
  114. package/dist/components/core/dashboard/dashboard-utils.ts +39 -0
  115. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.d.ts +10 -0
  116. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.d.ts.map +1 -0
  117. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.js +16 -0
  118. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.js.map +1 -0
  119. package/dist/components/core/extension/solid-core/dashboard/dashboardFormViewChangeHandler.ts +19 -0
  120. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.d.ts +8 -0
  121. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.d.ts.map +1 -0
  122. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.js +64 -0
  123. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.js.map +1 -0
  124. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionFieldChangeHandler.ts +30 -0
  125. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.d.ts +8 -0
  126. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.d.ts.map +1 -0
  127. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.js +62 -0
  128. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.js.map +1 -0
  129. package/dist/components/core/extension/solid-core/dashboard/dashboardQuestionOnFormLoadHandler.ts +29 -0
  130. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.d.ts +4 -0
  131. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.d.ts.map +1 -0
  132. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.js +23 -0
  133. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.js.map +1 -0
  134. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.tsx +36 -0
  135. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  136. package/dist/components/core/form/SolidFormView.js +2 -10
  137. package/dist/components/core/form/SolidFormView.js.map +1 -1
  138. package/dist/components/core/form/SolidFormView.tsx +2 -10
  139. package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
  140. package/dist/components/core/form/fields/SolidMediaMultipleField.js +111 -106
  141. package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
  142. package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +165 -134
  143. package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
  144. package/dist/components/core/form/fields/SolidMediaSingleField.js +81 -84
  145. package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
  146. package/dist/components/core/form/fields/SolidMediaSingleField.tsx +97 -86
  147. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts +3 -0
  148. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts.map +1 -0
  149. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.js +92 -0
  150. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.js.map +1 -0
  151. package/dist/components/core/form/fields/widgets/SolidChatterMessageCoModelEntityIdFormViewWidget.tsx +68 -0
  152. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.d.ts +3 -0
  153. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.d.ts.map +1 -0
  154. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.js +111 -0
  155. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.js.map +1 -0
  156. package/dist/components/core/form/fields/widgets/SolidLovTypeChangeFormEditWidget.tsx +122 -0
  157. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  158. package/dist/components/core/kanban/SolidKanbanView.js +6 -11
  159. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  160. package/dist/components/core/kanban/SolidKanbanView.tsx +6 -11
  161. package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts.map +1 -1
  162. package/dist/components/core/kanban/SolidKanbanViewConfigure.js +3 -7
  163. package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
  164. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +3 -9
  165. package/dist/components/core/kanban/SolidKanbanViewFields.d.ts +12 -0
  166. package/dist/components/core/kanban/SolidKanbanViewFields.d.ts.map +1 -0
  167. package/dist/components/core/kanban/SolidKanbanViewFields.js +145 -0
  168. package/dist/components/core/kanban/SolidKanbanViewFields.js.map +1 -0
  169. package/dist/components/core/kanban/SolidKanbanViewFields.tsx +164 -0
  170. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts +2 -0
  171. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts.map +1 -0
  172. package/dist/components/core/kanban/SolidManyToOneFilterElement.js +87 -0
  173. package/dist/components/core/kanban/SolidManyToOneFilterElement.js.map +1 -0
  174. package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +59 -0
  175. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.d.ts +2 -0
  176. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.d.ts.map +1 -0
  177. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.js +73 -0
  178. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.js.map +1 -0
  179. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.tsx +50 -0
  180. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.d.ts +2 -0
  181. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.d.ts.map +1 -0
  182. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.js +20 -0
  183. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.js.map +1 -0
  184. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.tsx +32 -0
  185. package/dist/components/core/kanban/SolidVarInputsFilterElement.d.ts +12 -0
  186. package/dist/components/core/kanban/SolidVarInputsFilterElement.d.ts.map +1 -0
  187. package/dist/components/core/kanban/SolidVarInputsFilterElement.js +81 -0
  188. package/dist/components/core/kanban/SolidVarInputsFilterElement.js.map +1 -0
  189. package/dist/components/core/kanban/SolidVarInputsFilterElement.tsx +184 -0
  190. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.d.ts +4 -0
  191. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.d.ts.map +1 -0
  192. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.js +7 -0
  193. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.js.map +1 -0
  194. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.tsx +9 -0
  195. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.d.ts +4 -0
  196. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.d.ts.map +1 -0
  197. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.js +8 -0
  198. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.js.map +1 -0
  199. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.tsx +16 -0
  200. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.d.ts +4 -0
  201. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.d.ts.map +1 -0
  202. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.js +21 -0
  203. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.js.map +1 -0
  204. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.tsx +23 -0
  205. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.d.ts +4 -0
  206. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.d.ts.map +1 -0
  207. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.js +8 -0
  208. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.js.map +1 -0
  209. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.tsx +14 -0
  210. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.d.ts +4 -0
  211. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.d.ts.map +1 -0
  212. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.js +8 -0
  213. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.js.map +1 -0
  214. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.tsx +13 -0
  215. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.d.ts +4 -0
  216. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.d.ts.map +1 -0
  217. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.js +7 -0
  218. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.js.map +1 -0
  219. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.tsx +9 -0
  220. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.d.ts +4 -0
  221. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.d.ts.map +1 -0
  222. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.js +8 -0
  223. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.js.map +1 -0
  224. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.tsx +12 -0
  225. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.d.ts +4 -0
  226. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.d.ts.map +1 -0
  227. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.js +7 -0
  228. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.js.map +1 -0
  229. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.tsx +9 -0
  230. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.d.ts +4 -0
  231. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.d.ts.map +1 -0
  232. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.js +8 -0
  233. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.js.map +1 -0
  234. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.tsx +14 -0
  235. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.d.ts +4 -0
  236. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.d.ts.map +1 -0
  237. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.js +16 -0
  238. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.js.map +1 -0
  239. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.tsx +20 -0
  240. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.d.ts +4 -0
  241. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.d.ts.map +1 -0
  242. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.js +7 -0
  243. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.js.map +1 -0
  244. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.tsx +9 -0
  245. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts +4 -0
  246. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts.map +1 -0
  247. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js +56 -0
  248. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js.map +1 -0
  249. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +140 -0
  250. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts +4 -0
  251. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts.map +1 -0
  252. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js +42 -0
  253. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js.map +1 -0
  254. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +164 -0
  255. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.d.ts +4 -0
  256. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.d.ts.map +1 -0
  257. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.js +11 -0
  258. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.js.map +1 -0
  259. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.tsx +13 -0
  260. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.d.ts +4 -0
  261. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.d.ts.map +1 -0
  262. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.js +7 -0
  263. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.js.map +1 -0
  264. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.tsx +9 -0
  265. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.d.ts +4 -0
  266. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.d.ts.map +1 -0
  267. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.js +8 -0
  268. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.js.map +1 -0
  269. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.tsx +14 -0
  270. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.d.ts +4 -0
  271. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.d.ts.map +1 -0
  272. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.js +8 -0
  273. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.js.map +1 -0
  274. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.tsx +14 -0
  275. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts +4 -0
  276. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts.map +1 -0
  277. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +37 -0
  278. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -0
  279. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +121 -0
  280. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.d.ts +4 -0
  281. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.d.ts.map +1 -0
  282. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.js +8 -0
  283. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.js.map +1 -0
  284. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.tsx +12 -0
  285. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.d.ts +4 -0
  286. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.d.ts.map +1 -0
  287. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.js +8 -0
  288. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.js.map +1 -0
  289. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.tsx +13 -0
  290. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.d.ts +4 -0
  291. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.d.ts.map +1 -0
  292. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js +7 -0
  293. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js.map +1 -0
  294. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +16 -0
  295. package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
  296. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +2 -3
  297. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
  298. package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +2 -3
  299. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  300. package/dist/components/core/list/SolidListView.js +2 -14
  301. package/dist/components/core/list/SolidListView.js.map +1 -1
  302. package/dist/components/core/list/SolidListView.tsx +2 -14
  303. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  304. package/dist/components/core/list/SolidListViewConfigure.js +7 -5
  305. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  306. package/dist/components/core/list/SolidListViewConfigure.tsx +7 -5
  307. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts +2 -0
  308. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts.map +1 -0
  309. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js +39 -0
  310. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js.map +1 -0
  311. package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +40 -0
  312. package/dist/components/core/list/SolidVarInputsFilterElement.d.ts +12 -0
  313. package/dist/components/core/list/SolidVarInputsFilterElement.d.ts.map +1 -0
  314. package/dist/components/core/list/SolidVarInputsFilterElement.js +81 -0
  315. package/dist/components/core/list/SolidVarInputsFilterElement.js.map +1 -0
  316. package/dist/components/core/list/SolidVarInputsFilterElement.tsx +184 -0
  317. package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts.map +1 -1
  318. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +42 -81
  319. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
  320. package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +90 -120
  321. package/dist/components/core/list/columns/SolidMediaSingleColumn.d.ts.map +1 -1
  322. package/dist/components/core/list/columns/SolidMediaSingleColumn.js +34 -42
  323. package/dist/components/core/list/columns/SolidMediaSingleColumn.js.map +1 -1
  324. package/dist/components/core/list/columns/SolidMediaSingleColumn.tsx +51 -46
  325. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts +3 -0
  326. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts.map +1 -0
  327. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.js +87 -0
  328. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.js.map +1 -0
  329. package/dist/components/core/list/widgets/SolidChatterMessageCoModelEntityIdListViewWidget.tsx +70 -0
  330. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.d.ts +3 -0
  331. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.d.ts.map +1 -0
  332. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.js +33 -0
  333. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.js.map +1 -0
  334. package/dist/components/core/list/widgets/SolidMqMessageStageListViewWidget.tsx +50 -0
  335. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.d.ts +3 -0
  336. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.d.ts.map +1 -0
  337. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.js +158 -0
  338. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.js.map +1 -0
  339. package/dist/components/core/list/widgets/SolidSummarizeListHeaderActionMqMessages.tsx +185 -0
  340. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  341. package/dist/components/core/tree/SolidTreeView.js +2 -14
  342. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  343. package/dist/components/core/tree/SolidTreeView.tsx +2 -14
  344. package/dist/components/layout/DashboardHeader.d.ts +3 -0
  345. package/dist/components/layout/DashboardHeader.d.ts.map +1 -0
  346. package/dist/components/layout/DashboardHeader.js +20 -0
  347. package/dist/components/layout/DashboardHeader.js.map +1 -0
  348. package/dist/components/layout/DashboardHeader.tsx +94 -0
  349. package/dist/helpers/# no such endpoints exist, need to calle +3 -0
  350. package/dist/helpers/ToastContainer.d.ts +4 -0
  351. package/dist/helpers/ToastContainer.d.ts.map +1 -0
  352. package/dist/helpers/ToastContainer.js +49 -0
  353. package/dist/helpers/ToastContainer.js.map +1 -0
  354. package/dist/helpers/ToastContainer.tsx +94 -0
  355. package/dist/helpers/downloadMediaFile.d.ts.map +1 -1
  356. package/dist/helpers/downloadMediaFile.js +10 -3
  357. package/dist/helpers/downloadMediaFile.js.map +1 -1
  358. package/dist/helpers/downloadMediaFile.tsx +13 -7
  359. package/dist/helpers/fileTypeIcon.d.ts +3 -2
  360. package/dist/helpers/fileTypeIcon.d.ts.map +1 -1
  361. package/dist/helpers/fileTypeIcon.js +11 -7
  362. package/dist/helpers/fileTypeIcon.js.map +1 -1
  363. package/dist/helpers/fileTypeIcon.tsx +12 -7
  364. package/dist/helpers/mediaType.d.ts +7 -0
  365. package/dist/helpers/mediaType.d.ts.map +1 -1
  366. package/dist/helpers/mediaType.js +39 -8
  367. package/dist/helpers/mediaType.js.map +1 -1
  368. package/dist/helpers/mediaType.ts +46 -7
  369. package/dist/helpers/mediaUrl.d.ts +2 -0
  370. package/dist/helpers/mediaUrl.d.ts.map +1 -0
  371. package/dist/helpers/mediaUrl.js +10 -0
  372. package/dist/helpers/mediaUrl.js.map +1 -0
  373. package/dist/helpers/mediaUrl.ts +11 -0
  374. package/dist/helpers/permissions.d.ts +13 -0
  375. package/dist/helpers/permissions.d.ts.map +1 -1
  376. package/dist/helpers/permissions.js +79 -0
  377. package/dist/helpers/permissions.js.map +1 -1
  378. package/dist/helpers/permissions.ts +92 -1
  379. package/dist/helpers/showToast.d.ts +5 -0
  380. package/dist/helpers/showToast.d.ts.map +1 -0
  381. package/dist/helpers/showToast.js +17 -0
  382. package/dist/helpers/showToast.js.map +1 -0
  383. package/dist/helpers/showToast.ts +13 -0
  384. package/dist/helpers/studioSandbox.d.ts +31 -0
  385. package/dist/helpers/studioSandbox.d.ts.map +1 -0
  386. package/dist/helpers/studioSandbox.js +104 -0
  387. package/dist/helpers/studioSandbox.js.map +1 -0
  388. package/dist/helpers/studioSandbox.ts +117 -0
  389. package/dist/nextAuth/authProviders.d.ts +4 -0
  390. package/dist/nextAuth/authProviders.d.ts.map +1 -0
  391. package/dist/nextAuth/authProviders.js +198 -0
  392. package/dist/nextAuth/authProviders.js.map +1 -0
  393. package/dist/nextAuth/authProviders.tsx +232 -0
  394. package/dist/nextAuth/handleLogout.d.ts +2 -0
  395. package/dist/nextAuth/handleLogout.d.ts.map +1 -0
  396. package/dist/nextAuth/handleLogout.js +36 -0
  397. package/dist/nextAuth/handleLogout.js.map +1 -0
  398. package/dist/nextAuth/handleLogout.tsx +39 -0
  399. package/dist/nextAuth/refreshAccessToken.d.ts +2 -0
  400. package/dist/nextAuth/refreshAccessToken.d.ts.map +1 -0
  401. package/dist/nextAuth/refreshAccessToken.js +24 -0
  402. package/dist/nextAuth/refreshAccessToken.js.map +1 -0
  403. package/dist/nextAuth/refreshAccessToken.tsx +28 -0
  404. package/dist/redux/api/dashboardApi.d.ts +23 -0
  405. package/dist/redux/api/dashboardApi.d.ts.map +1 -0
  406. package/dist/redux/api/dashboardApi.js +35 -0
  407. package/dist/redux/api/dashboardApi.js.map +1 -0
  408. package/dist/redux/api/dashboardApi.ts +56 -0
  409. package/dist/redux/api/dashboardLayoutApi.d.ts +24 -0
  410. package/dist/redux/api/dashboardLayoutApi.d.ts.map +1 -0
  411. package/dist/redux/api/dashboardLayoutApi.js +34 -0
  412. package/dist/redux/api/dashboardLayoutApi.js.map +1 -0
  413. package/dist/redux/api/dashboardLayoutApi.ts +55 -0
  414. package/dist/redux/api/dashboardQuestionApi.d.ts +5 -0
  415. package/dist/redux/api/dashboardQuestionApi.d.ts.map +1 -0
  416. package/dist/redux/api/dashboardQuestionApi.js +18 -0
  417. package/dist/redux/api/dashboardQuestionApi.js.map +1 -0
  418. package/dist/redux/api/dashboardQuestionApi.ts +17 -0
  419. package/dist/redux/features/settingsSlice.d.ts +20 -0
  420. package/dist/redux/features/settingsSlice.d.ts.map +1 -0
  421. package/dist/redux/features/settingsSlice.js +39 -0
  422. package/dist/redux/features/settingsSlice.js.map +1 -0
  423. package/dist/redux/features/settingsSlice.ts +60 -0
  424. package/dist/resources/images/Footerbg.png +0 -0
  425. package/dist/resources/images/LoginBanner.png +0 -0
  426. package/dist/resources/images/dashboard/Ellipse 1.svg +10 -0
  427. package/dist/resources/images/dashboard/Rectangle 17.svg +10 -0
  428. package/dist/resources/images/dashboard/Rectangle 25.svg +11 -0
  429. package/dist/resources/images/dashboard/image 5.svg +9 -0
  430. package/dist/resources/images/loginhero.png +0 -0
  431. package/dist/resources/images/logo.png +0 -0
  432. package/dist/resources/images/radix-logo-white.png +0 -0
  433. package/dist/resources/images/radix-logo.png +0 -0
  434. package/dist/resources/images/signupBanner.png +0 -0
  435. package/dist/resources/shadcn-base.css +16 -70
  436. package/dist/resources/solid-tailwind-generated.css +1 -1
  437. package/package.json +1 -1
  438. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorHeaderAction.d.ts +0 -8
  439. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorHeaderAction.d.ts.map +0 -1
  440. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorHeaderAction.js +0 -6
  441. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorHeaderAction.js.map +0 -1
  442. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorHeaderAction.ts +0 -13
  443. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorRowAction.d.ts +0 -11
  444. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorRowAction.d.ts.map +0 -1
  445. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorRowAction.js +0 -10
  446. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorRowAction.js.map +0 -1
  447. package/dist/components/core/extension/solid-core/workflowDefinition/list/openWorkflowDefinitionEditorRowAction.ts +0 -22
  448. package/dist/components/core/list/SolidCustomListColumn.d.ts +0 -8
  449. package/dist/components/core/list/SolidCustomListColumn.d.ts.map +0 -1
  450. package/dist/components/core/list/SolidCustomListColumn.js +0 -47
  451. package/dist/components/core/list/SolidCustomListColumn.js.map +0 -1
  452. package/dist/components/core/list/SolidCustomListColumn.tsx +0 -57
  453. package/dist/components/workflow/WorkflowFlowCanvas.css +0 -431
  454. package/dist/components/workflow/WorkflowFlowCanvas.d.ts +0 -41
  455. package/dist/components/workflow/WorkflowFlowCanvas.d.ts.map +0 -1
  456. package/dist/components/workflow/WorkflowFlowCanvas.js +0 -705
  457. package/dist/components/workflow/WorkflowFlowCanvas.js.map +0 -1
  458. package/dist/components/workflow/WorkflowFlowCanvas.tsx +0 -1274
  459. package/dist/components/workflow/WorkflowNodeDocsPanel.css +0 -247
  460. package/dist/components/workflow/WorkflowNodeDocsPanel.d.ts +0 -22
  461. package/dist/components/workflow/WorkflowNodeDocsPanel.d.ts.map +0 -1
  462. package/dist/components/workflow/WorkflowNodeDocsPanel.js +0 -97
  463. package/dist/components/workflow/WorkflowNodeDocsPanel.js.map +0 -1
  464. package/dist/components/workflow/WorkflowNodeDocsPanel.tsx +0 -363
  465. package/dist/components/workflow/WorkflowNodeSchemaEditor.d.ts +0 -50
  466. package/dist/components/workflow/WorkflowNodeSchemaEditor.d.ts.map +0 -1
  467. package/dist/components/workflow/WorkflowNodeSchemaEditor.js +0 -309
  468. package/dist/components/workflow/WorkflowNodeSchemaEditor.js.map +0 -1
  469. package/dist/components/workflow/WorkflowNodeSchemaEditor.tsx +0 -808
  470. package/dist/helpers/modulePackageResumeState.d.ts +0 -6
  471. package/dist/helpers/modulePackageResumeState.d.ts.map +0 -1
  472. package/dist/helpers/modulePackageResumeState.js +0 -46
  473. package/dist/helpers/modulePackageResumeState.js.map +0 -1
  474. package/dist/helpers/modulePackageResumeState.ts +0 -57
  475. package/dist/redux/api/workflowDefinitionEditorApi.d.ts +0 -17
  476. package/dist/redux/api/workflowDefinitionEditorApi.d.ts.map +0 -1
  477. package/dist/redux/api/workflowDefinitionEditorApi.js +0 -38
  478. package/dist/redux/api/workflowDefinitionEditorApi.js.map +0 -1
  479. package/dist/redux/api/workflowDefinitionEditorApi.ts +0 -40
  480. package/dist/redux/api/workflowNodeApi.d.ts +0 -6
  481. package/dist/redux/api/workflowNodeApi.d.ts.map +0 -1
  482. package/dist/redux/api/workflowNodeApi.js +0 -14
  483. package/dist/redux/api/workflowNodeApi.js.map +0 -1
  484. package/dist/redux/api/workflowNodeApi.ts +0 -18
  485. package/dist/routes/pages/admin/core/WorkflowDefinitionEditorPage.css +0 -970
  486. package/dist/routes/pages/admin/core/WorkflowDefinitionEditorPage.d.ts +0 -3
  487. package/dist/routes/pages/admin/core/WorkflowDefinitionEditorPage.d.ts.map +0 -1
  488. package/dist/routes/pages/admin/core/WorkflowDefinitionEditorPage.js +0 -1287
  489. package/dist/routes/pages/admin/core/WorkflowDefinitionEditorPage.js.map +0 -1
  490. package/dist/routes/pages/admin/core/WorkflowDefinitionEditorPage.tsx +0 -2572
  491. package/dist/routes/pages/admin/core/WorkflowDefinitionListPage.css +0 -151
  492. package/dist/routes/pages/admin/core/WorkflowDefinitionListPage.d.ts +0 -3
  493. package/dist/routes/pages/admin/core/WorkflowDefinitionListPage.d.ts.map +0 -1
  494. package/dist/routes/pages/admin/core/WorkflowDefinitionListPage.js +0 -250
  495. package/dist/routes/pages/admin/core/WorkflowDefinitionListPage.js.map +0 -1
  496. package/dist/routes/pages/admin/core/WorkflowDefinitionListPage.tsx +0 -455
  497. package/dist/types/workflow-node.d.ts +0 -127
  498. package/dist/types/workflow-node.d.ts.map +0 -1
  499. package/dist/types/workflow-node.js +0 -2
  500. package/dist/types/workflow-node.js.map +0 -1
  501. package/dist/types/workflow-node.ts +0 -162
@@ -0,0 +1,184 @@
1
+
2
+ import { Button } from "primereact/button";
3
+ import { Calendar } from "primereact/calendar";
4
+ import { InputNumber } from "primereact/inputnumber";
5
+ import { InputText } from "primereact/inputtext";
6
+ import { useEffect, useState } from "react";
7
+ import { SolidManyToOneFilterElement } from "./SolidManyToOneFilterElement";
8
+ import { SolidSelectionDynamicFilterElement } from "./SolidSelectionDynamicFilterElement";
9
+ import { SolidSelectionStaticFilterElement } from "./SolidSelectionStaticFilterElement";
10
+
11
+ export enum InputTypes {
12
+ Date = 'Date',
13
+ DateTime = 'DateTime',
14
+ Time = 'Time',
15
+ Numeric = 'Numeric',
16
+ Text = 'Text',
17
+ SelectionStatic = 'SelectionStatic',
18
+ RelationManyToOne = 'RelationManyToOne',
19
+ SelectionDynamic = 'SelectionDynamic'
20
+ }
21
+
22
+
23
+ // Based on numberOfInputs map the input filed and hide add and delete
24
+ export const SolidVarInputsFilterElement = ({ values, onChange, inputType = InputTypes.Text, numberOfInputs = null, solidListViewMetaData, fieldMetadata }: any) => {
25
+
26
+ if (!values) {
27
+ values = numberOfInputs && numberOfInputs > 0 ? Array(numberOfInputs).fill('') : [''];
28
+ // values = [''];
29
+ } else {
30
+ if (values[0] == '') {
31
+ values = numberOfInputs && numberOfInputs > 0 ? Array(numberOfInputs).fill('') : [''];
32
+ } else {
33
+
34
+ values = values
35
+ }
36
+ }
37
+
38
+
39
+
40
+ // TODO: Ideally values will be an array, so we can spread them here instead of making a nested array.
41
+ const [inputs, setInputs] = useState([...values]);
42
+ useEffect(() => {
43
+ setInputs([...values])
44
+ }, [numberOfInputs])
45
+
46
+ const updateInputs = (index: number, value: any) => {
47
+ const updatedSpecification = inputs.map((item, i) =>
48
+ i === index ? value : item
49
+ );
50
+ setInputs(updatedSpecification);
51
+ };
52
+
53
+ const addInput = () => {
54
+ setInputs([...inputs, '']);
55
+ };
56
+
57
+ const deleteInput = (index: number) => {
58
+ if (inputs.length > 1) {
59
+ const updatedRows = inputs.filter((_, rowIndex) => rowIndex !== index);
60
+ setInputs(updatedRows);
61
+
62
+ } else {
63
+ }
64
+ };
65
+
66
+ useEffect(() => {
67
+ onChange(inputs)
68
+ }, [inputs])
69
+
70
+
71
+
72
+ return (
73
+ <div className="grid formgrid">
74
+ <div className="col-12">
75
+ <div className="flex flex-column gap-2">
76
+ {inputs && inputs.map((value: any, index: number) => (
77
+
78
+ <div key={index} className="flex align-items-center gap-2">
79
+
80
+ {inputType === InputTypes.Text &&
81
+ <InputText
82
+ value={value}
83
+ onChange={(e) => updateInputs(index, e.target.value)}
84
+ placeholder=""
85
+ className="p-inputtext-sm small-input w-full"
86
+ />
87
+ }
88
+ {inputType === InputTypes.Numeric &&
89
+ <InputNumber
90
+ value={value}
91
+ onChange={(e) => updateInputs(index, e.value)}
92
+ placeholder=""
93
+ className="p-inputtext-sm small-input w-full"
94
+ />
95
+ }
96
+ {inputType === InputTypes.Date &&
97
+ <Calendar
98
+ value={value}
99
+ onChange={(e) => updateInputs(index, e.target.value)}
100
+ dateFormat="mm/dd/yy"
101
+ placeholder="mm/dd/yyyy"
102
+ mask="99/99/9999"
103
+ />
104
+ }
105
+ {inputType === InputTypes.DateTime &&
106
+ <Calendar
107
+ value={value}
108
+ onChange={(e) => updateInputs(index, e.target.value)}
109
+ dateFormat="mm/dd/yy"
110
+ placeholder="mm/dd/yyyy hh:mm"
111
+ mask="99/99/9999 99:99"
112
+ showTime
113
+ hourFormat="24"
114
+ />
115
+ }
116
+ {inputType === InputTypes.Time &&
117
+ <Calendar
118
+ value={value}
119
+ onChange={(e) => updateInputs(index, e.target.value)}
120
+ placeholder="hh:mm"
121
+ mask="99:99"
122
+ timeOnly
123
+ hourFormat="24"
124
+ />
125
+ }
126
+ {inputType === InputTypes.RelationManyToOne &&
127
+ <SolidManyToOneFilterElement
128
+ value={value}
129
+ index={index}
130
+ updateInputs={updateInputs}
131
+ fieldMetadata={fieldMetadata}
132
+ ></SolidManyToOneFilterElement>
133
+ }
134
+ {inputType === InputTypes.SelectionDynamic &&
135
+ <SolidSelectionDynamicFilterElement
136
+ value={value}
137
+ index={index}
138
+ updateInputs={updateInputs}
139
+ fieldMetadata={fieldMetadata}
140
+ ></SolidSelectionDynamicFilterElement>
141
+ }
142
+ {inputType === InputTypes.SelectionStatic &&
143
+
144
+ <SolidSelectionStaticFilterElement
145
+ value={value}
146
+ index={index}
147
+ updateInputs={updateInputs}
148
+ fieldMetadata={fieldMetadata}
149
+ ></SolidSelectionStaticFilterElement>
150
+ }
151
+
152
+ {numberOfInputs === null &&
153
+ <>
154
+ {/* Plus Button to add a new row */}
155
+ < Button
156
+ icon="pi pi-plus"
157
+ size="small"
158
+ className="small-button"
159
+ onClick={addInput}
160
+ type="button"
161
+ />
162
+
163
+ {/* Trash Button to delete the row */}
164
+ <Button
165
+ icon="pi pi-trash"
166
+ size="small"
167
+ className="small-button"
168
+ onClick={() => deleteInput(index)}
169
+ outlined
170
+ severity="danger"
171
+ type="button"
172
+ />
173
+ </>
174
+ }
175
+ </div>
176
+
177
+ ))}
178
+
179
+ </div>
180
+
181
+ </div>
182
+ </div>
183
+ )
184
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"SolidMediaMultipleColumn.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidMediaMultipleColumn.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAsG9E,QAAA,MAAM,wBAAwB,uFAAwF,yBAAyB,4CAmC9I,CAAC;AAEF,eAAe,wBAAwB,CAAC;AAGxC,eAAO,MAAM,8BAA8B,iEAAkE,8BAA8B,mDAgJ1I,CAAC"}
1
+ {"version":3,"file":"SolidMediaMultipleColumn.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidMediaMultipleColumn.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAqF9E,QAAA,MAAM,wBAAwB,uFAAwF,yBAAyB,4CAmC9I,CAAC;AAEF,eAAe,wBAAwB,CAAC;AAGxC,eAAO,MAAM,8BAA8B,iEAAkE,8BAA8B,mDAmI1I,CAAC"}
@@ -11,57 +11,35 @@ var __assign = (this && this.__assign) || function () {
11
11
  };
12
12
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
13
  import { useState } from 'react';
14
- import { Download, Volume2 } from "lucide-react";
14
+ import { Volume2 } from "lucide-react";
15
15
  import { Column } from "../SolidDataTable";
16
16
  import { getExtensionComponent } from '../../../../helpers/registry';
17
17
  import { FileReaderExt } from '../../../../components/common/FileReaderExt';
18
- import { SolidButton, SolidDialog } from "../../../shad-cn-ui";
18
+ import { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogHeader, SolidDialogTitle, SolidIcon } from "../../../shad-cn-ui";
19
19
  import { SolidFileTypeIcon } from '../../../../helpers/fileTypeIcon';
20
- var getCleanUrl = function (url) { return url.split("?")[0]; };
21
- var isImageFile = function (url) { return /\.(jpg|jpeg|png|gif|bmp|webp)$/i.test(getCleanUrl(url)); };
22
- var isVideoFile = function (url) { return /\.(mp4|webm|ogg)$/i.test(getCleanUrl(url)); };
23
- var isAudioFile = function (url) { return /\.(mp3|wav|ogg)$/i.test(getCleanUrl(url)); };
24
- var isDocumentType = function (url) {
25
- var _a;
26
- var ext = (_a = getCleanUrl(url).split(".").pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase();
27
- return ext ? downloadOnlyExt.includes(ext) : false;
28
- };
29
- var downloadOnlyExt = [
30
- "txt", "zip", "rar",
31
- "doc", "docx",
32
- "xls", "xlsx",
33
- "ppt", "pptx",
34
- "pdf", "csv"
35
- ];
36
- var downloadFile = function (url, name) {
37
- if (name === void 0) { name = ""; }
38
- var link = document.createElement("a");
39
- link.href = url;
40
- link.download = name;
41
- link.target = "_blank";
42
- document.body.appendChild(link);
43
- link.click();
44
- document.body.removeChild(link);
45
- };
20
+ import { getMediaPreviewKind, isLightboxMediaKind } from '../../../../helpers/mediaType';
21
+ import { openMediaInNewTab } from '../../../../helpers/mediaUrl';
22
+ import { downloadMediaFile } from '../../../../helpers/downloadMediaFile';
23
+ import styles from "../../form/fields/solidFields.module.css";
46
24
  // Thumbnail preview component
47
25
  var MediaPreview = function (_a) {
48
- var src = _a.src, onClick = _a.onClick;
26
+ var src = _a.src, fileName = _a.fileName, previewKind = _a.previewKind, onClick = _a.onClick;
49
27
  var _b = useState(false), isBroken = _b[0], setIsBroken = _b[1];
50
28
  var handleClick = function (event) {
51
29
  onClick(event);
52
30
  };
53
31
  if (!isBroken) {
54
- if (isImageFile(src)) {
32
+ if (previewKind === "image") {
55
33
  return (_jsx("img", { src: src, alt: "media", className: "rounded shadow-md", width: 40, height: 40, style: { objectFit: "cover" }, onError: function () { return setIsBroken(true); }, onClick: handleClick }));
56
34
  }
57
- if (isVideoFile(src)) {
35
+ if (previewKind === "video") {
58
36
  return (_jsx("video", { src: src, width: 40, height: 40, className: "rounded shadow-md", style: { objectFit: "cover" }, onError: function () { return setIsBroken(true); }, onClick: handleClick, muted: true }));
59
37
  }
60
- if (isAudioFile(src)) {
38
+ if (previewKind === "audio") {
61
39
  return (_jsx("div", { className: "flex items-center justify-center rounded bg-gray-100 shadow-md", style: { width: 40, height: 40 }, onClick: handleClick, children: _jsx(Volume2, { size: 18, className: "text-gray-600" }) }));
62
40
  }
63
41
  }
64
- return (_jsx("div", { style: { width: 40, height: 40, display: "flex", alignItems: "center", justifyContent: "center" }, onClick: handleClick, children: _jsx(SolidFileTypeIcon, { fileUrl: src, size: 24 }) }));
42
+ return (_jsx("div", { style: { width: 40, height: 40, display: "flex", alignItems: "center", justifyContent: "center" }, onClick: handleClick, children: _jsx(SolidFileTypeIcon, { fileUrl: src, fileName: fileName, size: 24 }) }));
65
43
  };
66
44
  var SolidMediaMultipleColumn = function (_a) {
67
45
  var _b;
@@ -87,9 +65,9 @@ var SolidMediaMultipleColumn = function (_a) {
87
65
  export default SolidMediaMultipleColumn;
88
66
  // Default multiple widget
89
67
  export var DefaultMediaMultipleListWidget = function (_a) {
90
- var _b, _c, _d;
68
+ var _b, _c, _d, _e, _f;
91
69
  var rowData = _a.rowData, fieldMetadata = _a.fieldMetadata, setLightboxUrls = _a.setLightboxUrls, setOpenLightbox = _a.setOpenLightbox;
92
- var _e = useState(false), isShowAllFiles = _e[0], setShowAllFiles = _e[1];
70
+ var _g = useState(false), isShowAllFiles = _g[0], setShowAllFiles = _g[1];
93
71
  if (!((_b = rowData === null || rowData === void 0 ? void 0 : rowData._media) === null || _b === void 0 ? void 0 : _b[fieldMetadata.name]))
94
72
  return null;
95
73
  var fullrecord = (_c = rowData._media[fieldMetadata.name]) === null || _c === void 0 ? void 0 : _c.map(function (file) { return ({
@@ -97,67 +75,50 @@ export var DefaultMediaMultipleListWidget = function (_a) {
97
75
  type: file.mimeType,
98
76
  size: file.fileSize,
99
77
  id: file.id,
100
- fileUrl: file._full_url
78
+ fileUrl: file === null || file === void 0 ? void 0 : file._full_url,
79
+ previewKind: getMediaPreviewKind({
80
+ url: file === null || file === void 0 ? void 0 : file._full_url,
81
+ fileName: file === null || file === void 0 ? void 0 : file.originalFileName,
82
+ mimeType: file === null || file === void 0 ? void 0 : file.mimeType,
83
+ })
101
84
  }); });
102
85
  var formatFileSize = function (size) {
103
86
  return size >= 1024 * 1024 ? "".concat((size / (1024 * 1024)).toFixed(1), " MB") : "".concat((size / 1024).toFixed(1), " KB");
104
87
  };
105
88
  var handleFileView = function (file) {
106
- var fileUrl = (file === null || file === void 0 ? void 0 : file.fileUrl) || "";
107
- // const cleanUrl = fileUrl.split("?")[0];
108
- // const ext = cleanUrl.split(".").pop()?.toLowerCase();
109
- if (isDocumentType(fileUrl)) {
110
- downloadFile(file === null || file === void 0 ? void 0 : file.fileUrl, "");
111
- }
112
- else {
113
- setLightboxUrls === null || setLightboxUrls === void 0 ? void 0 : setLightboxUrls([{ src: file.fileUrl, downloadUrl: file.fileUrl }]);
89
+ if (isLightboxMediaKind(file === null || file === void 0 ? void 0 : file.previewKind)) {
90
+ setLightboxUrls === null || setLightboxUrls === void 0 ? void 0 : setLightboxUrls([{
91
+ src: file.fileUrl,
92
+ downloadUrl: file.fileUrl,
93
+ type: file.previewKind === "video" ? "video" : undefined
94
+ }]);
114
95
  setOpenLightbox === null || setOpenLightbox === void 0 ? void 0 : setOpenLightbox(true);
96
+ return;
115
97
  }
98
+ openMediaInNewTab(file === null || file === void 0 ? void 0 : file.fileUrl);
99
+ };
100
+ var renderMediaFileCard = function (file, className) {
101
+ if (className === void 0) { className = ""; }
102
+ return (_jsx("div", { className: "".concat(styles.mediaAttachmentCard, " ").concat(className).trim(), children: _jsxs("div", { className: "".concat(styles.mediaAttachmentRow, " flex items-center md:gap-2"), children: [_jsx(FileReaderExt, { fileDetails: file }), _jsxs("div", { className: "".concat(styles.mediaAttachmentMeta, " w-full"), children: [_jsxs("div", { className: "flex items-start justify-between gap-4", children: [_jsx("button", { type: "button", className: styles.mediaAttachmentName, onClick: function () { return handleFileView(file); }, title: file.name, children: file.name }), _jsx("div", { className: "".concat(styles.mediaAttachmentActions, " flex items-center md:gap-2"), children: _jsx("button", { type: "button", className: "solid-file-icon-btn", "aria-label": "Download file", onClick: function (event) {
103
+ event.preventDefault();
104
+ event.stopPropagation();
105
+ downloadMediaFile(file === null || file === void 0 ? void 0 : file.fileUrl, file === null || file === void 0 ? void 0 : file.name);
106
+ }, children: _jsx(SolidIcon, { name: "si-download", "aria-hidden": true }) }) })] }), _jsx("div", { className: styles.mediaAttachmentSize, children: formatFileSize(file.size) })] })] }) }));
116
107
  };
117
- return fullrecord.length > 0 ? (_jsxs("div", { className: 'flex items-end gap-2', children: [_jsx(MediaPreview, { src: (_d = fullrecord[0]) === null || _d === void 0 ? void 0 : _d.fileUrl, onClick: function (event) {
118
- var _a, _b, _c;
108
+ return fullrecord.length > 0 ? (_jsxs("div", { className: 'flex items-end gap-2', children: [_jsx(MediaPreview, { src: (_d = fullrecord[0]) === null || _d === void 0 ? void 0 : _d.fileUrl, fileName: (_e = fullrecord[0]) === null || _e === void 0 ? void 0 : _e.name, previewKind: (_f = fullrecord[0]) === null || _f === void 0 ? void 0 : _f.previewKind, onClick: function (event) {
119
109
  event.stopPropagation();
120
- // const cleanUrl = fullrecord[0]?.fileUrl.split("?")[0];
121
- // const ext = cleanUrl.split(".").pop()?.toLowerCase();
122
- if (isDocumentType((_a = fullrecord[0]) === null || _a === void 0 ? void 0 : _a.fileUrl) && (fullrecord === null || fullrecord === void 0 ? void 0 : fullrecord.length) > 1) {
123
- setShowAllFiles(true);
124
- return;
125
- }
126
- else if (isDocumentType((_b = fullrecord[0]) === null || _b === void 0 ? void 0 : _b.fileUrl)) {
127
- downloadFile((_c = fullrecord[0]) === null || _c === void 0 ? void 0 : _c.fileUrl, "");
128
- return;
129
- }
130
- // FIRST FILE IS MEDIA ⇒ OPEN LIGHTBOX
131
- var urlsWithType = fullrecord.map(function (file) { return ({
132
- src: file.fileUrl,
133
- downloadUrl: file.fileUrl,
134
- }); });
135
- setLightboxUrls(urlsWithType);
136
- setOpenLightbox(true);
110
+ handleFileView(fullrecord[0]);
137
111
  } }), (fullrecord === null || fullrecord === void 0 ? void 0 : fullrecord.length) > 1 && _jsxs("span", { style: {
138
112
  color: "#0895CD",
139
113
  fontWeight: "bold",
140
114
  cursor: "pointer",
141
115
  marginLeft: "4px"
142
116
  }, onClick: function (event) {
143
- var _a;
144
117
  event.stopPropagation();
145
- if (isDocumentType((_a = fullrecord[0]) === null || _a === void 0 ? void 0 : _a.fileUrl)) {
146
- setShowAllFiles(true);
147
- }
148
- else {
149
- var urlsWithType = fullrecord.map(function (file) { return ({
150
- src: file.fileUrl,
151
- downloadUrl: file.fileUrl
152
- }); });
153
- setLightboxUrls(urlsWithType);
154
- setOpenLightbox(true);
155
- }
156
- }, children: ["+", fullrecord.length - 1] }), _jsx(SolidDialog, { open: isShowAllFiles, onOpenChange: setShowAllFiles, header: "Items Uploaded", style: { width: '32rem', maxWidth: '94vw' }, children: fullrecord === null || fullrecord === void 0 ? void 0 : fullrecord.map(function (file) {
157
- var fileId = "".concat(file.name, "-").concat(file.size);
158
- return (_jsx("div", { className: "solid-file-upload-wrapper mb-3", children: _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(FileReaderExt, { fileDetails: file }), _jsxs("div", { className: "flex w-full flex-col gap-1", children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("p", { className: "m-0 w-11 font-normal text-[var(--primary-color)] solid-media-column-text-wrapper", style: { cursor: "pointer" }, onClick: function () { return handleFileView(file); }, children: file === null || file === void 0 ? void 0 : file.name }), _jsx(SolidButton, { type: "button", size: "small", variant: "ghost", leftIcon: _jsx(Download, { size: 14 }), onClick: function () {
159
- downloadFile(file === null || file === void 0 ? void 0 : file.fileUrl, "");
160
- }, style: { height: 16, width: 16 } })] }), _jsx("div", { className: "text-sm", children: formatFileSize(file.size) })] })] }) }, fileId));
161
- }) })] })) : (_jsx("div", { style: { height: 40, width: 40 } }));
118
+ setShowAllFiles(true);
119
+ }, children: ["+", fullrecord.length - 1] }), _jsxs(SolidDialog, { open: isShowAllFiles, onOpenChange: setShowAllFiles, style: { minWidth: 450 }, children: [_jsxs(SolidDialogHeader, { children: [_jsx(SolidDialogTitle, { children: "Items Uploaded" }), _jsx(SolidDialogClose, {})] }), _jsx(SolidDialogBody, { children: fullrecord === null || fullrecord === void 0 ? void 0 : fullrecord.map(function (file, index) {
120
+ var fileId = "".concat(file.name, "-").concat(file.size);
121
+ return (_jsx("div", { className: index === fullrecord.length - 1 ? "" : "mb-3", children: renderMediaFileCard(file) }, fileId));
122
+ }) })] })] })) : (_jsx("div", { style: { height: 40, width: 40 } }));
162
123
  };
163
124
  //# sourceMappingURL=SolidMediaMultipleColumn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolidMediaMultipleColumn.js","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidMediaMultipleColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport React, { useState } from 'react';\nimport { Download, Volume2 } from \"lucide-react\";\nimport { Column } from \"../SolidDataTable\";\nimport { SolidListViewColumnParams } from '../SolidListViewColumn';\nimport { SolidMediaListFieldWidgetProps } from '../../../../types/solid-core';\nimport { getExtensionComponent } from '../../../../helpers/registry';\nimport { FileReaderExt } from '../../../../components/common/FileReaderExt';\nimport { SolidButton, SolidDialog } from \"../../../shad-cn-ui\";\nimport { SolidFileTypeIcon } from '../../../../helpers/fileTypeIcon';\n\nconst getCleanUrl = (url: string) => url.split(\"?\")[0];\n\nconst isImageFile = (url: string) => /\\.(jpg|jpeg|png|gif|bmp|webp)$/i.test(getCleanUrl(url));\n\nconst isVideoFile = (url: string) => /\\.(mp4|webm|ogg)$/i.test(getCleanUrl(url));\n\nconst isAudioFile = (url: string) => /\\.(mp3|wav|ogg)$/i.test(getCleanUrl(url));\n\nconst isDocumentType = (url: string) => {\n const ext = getCleanUrl(url).split(\".\").pop()?.toLowerCase();\n return ext ? downloadOnlyExt.includes(ext) : false;\n};\n\nconst downloadOnlyExt = [\n \"txt\", \"zip\", \"rar\",\n \"doc\", \"docx\",\n \"xls\", \"xlsx\",\n \"ppt\", \"pptx\",\n \"pdf\", \"csv\"\n];\n\nconst downloadFile = (url: string, name: string = \"\") => {\n const link = document.createElement(\"a\");\n link.href = url;\n link.download = name;\n link.target = \"_blank\";\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n};\n\n\n\n// Thumbnail preview component\nconst MediaPreview = ({ src, onClick }: { src: string; onClick: (event: React.MouseEvent) => void }) => {\n const [isBroken, setIsBroken] = useState(false);\n\n const handleClick = (event: React.MouseEvent) => {\n onClick(event);\n };\n\n if (!isBroken) {\n if (isImageFile(src)) {\n return (\n <img\n src={src}\n alt=\"media\"\n className=\"rounded shadow-md\"\n width={40}\n height={40}\n style={{ objectFit: \"cover\" }}\n onError={() => setIsBroken(true)}\n onClick={handleClick}\n />\n );\n }\n\n if (isVideoFile(src)) {\n return (\n <video\n src={src}\n width={40}\n height={40}\n className=\"rounded shadow-md\"\n style={{ objectFit: \"cover\" }}\n onError={() => setIsBroken(true)}\n onClick={handleClick}\n muted\n />\n );\n }\n\n if (isAudioFile(src)) {\n return (\n <div\n className=\"flex items-center justify-center rounded bg-gray-100 shadow-md\"\n style={{ width: 40, height: 40 }}\n onClick={handleClick}\n >\n <Volume2 size={18} className=\"text-gray-600\" />\n </div>\n );\n }\n }\n\n return (\n <div\n style={{ width: 40, height: 40, display: \"flex\", alignItems: \"center\", justifyContent: \"center\" }}\n onClick={handleClick}\n >\n <SolidFileTypeIcon fileUrl={src} size={24} />\n </div>\n );\n};\n\n\nconst SolidMediaMultipleColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox }: SolidListViewColumnParams) => {\n const header = column.attrs.label ?? fieldMetadata.displayName;\n\n return (\n <Column\n key={fieldMetadata.name}\n field={fieldMetadata.name}\n header={header}\n body={(rowData) => {\n let viewWidget = column.attrs.viewWidget;\n if (!viewWidget) {\n viewWidget = 'DefaultMediaMultipleListWidget';\n }\n let DynamicWidget = getExtensionComponent(viewWidget);\n const widgetProps: SolidMediaListFieldWidgetProps = {\n rowData,\n solidListViewMetaData,\n fieldMetadata,\n column,\n setLightboxUrls,\n setOpenLightbox\n }\n return (\n <>\n {\n DynamicWidget && <DynamicWidget {...widgetProps} />\n }\n </>\n )\n }}\n sortable={column.attrs.sortable}\n style={{ minWidth: \"12rem\" }}\n headerClassName=\"table-header-fs\"\n />\n );\n};\n\nexport default SolidMediaMultipleColumn;\n\n// Default multiple widget\nexport const DefaultMediaMultipleListWidget = ({ rowData, fieldMetadata, setLightboxUrls, setOpenLightbox }: SolidMediaListFieldWidgetProps) => {\n const [isShowAllFiles, setShowAllFiles] = useState(false);\n\n if (!rowData?._media?.[fieldMetadata.name]) return null;\n\n const fullrecord = rowData._media[fieldMetadata.name]?.map((file: any) => ({\n name: file.originalFileName,\n type: file.mimeType,\n size: file.fileSize,\n id: file.id,\n fileUrl: file._full_url\n }));\n\n\n const formatFileSize = (size: number) =>\n size >= 1024 * 1024 ? `${(size / (1024 * 1024)).toFixed(1)} MB` : `${(size / 1024).toFixed(1)} KB`;\n\n\n const handleFileView = (file: any) => {\n const fileUrl = file?.fileUrl || \"\";\n // const cleanUrl = fileUrl.split(\"?\")[0];\n // const ext = cleanUrl.split(\".\").pop()?.toLowerCase();\n\n if (isDocumentType(fileUrl)) {\n downloadFile(file?.fileUrl, \"\")\n\n } else {\n setLightboxUrls?.([{ src: file.fileUrl, downloadUrl: file.fileUrl }]);\n setOpenLightbox?.(true);\n }\n };\n\n\n\n return fullrecord.length > 0 ? (\n <div className='flex items-end gap-2'>\n\n {/* THUMBNAIL - FIXED BEHAVIOR */}\n <MediaPreview\n src={fullrecord[0]?.fileUrl}\n onClick={(event) => {\n event.stopPropagation();\n\n // const cleanUrl = fullrecord[0]?.fileUrl.split(\"?\")[0];\n // const ext = cleanUrl.split(\".\").pop()?.toLowerCase();\n\n if (isDocumentType(fullrecord[0]?.fileUrl) && fullrecord?.length > 1) {\n setShowAllFiles(true)\n return;\n }\n\n else if (isDocumentType(fullrecord[0]?.fileUrl)) {\n downloadFile(fullrecord[0]?.fileUrl, \"\")\n return;\n }\n // FIRST FILE IS MEDIA ⇒ OPEN LIGHTBOX\n const urlsWithType = fullrecord.map((file: any) => ({\n src: file.fileUrl,\n downloadUrl: file.fileUrl,\n }));\n setLightboxUrls(urlsWithType);\n setOpenLightbox(true);\n }}\n />\n\n {fullrecord?.length > 1 && <span\n style={{\n color: \"#0895CD\",\n fontWeight: \"bold\",\n cursor: \"pointer\",\n marginLeft: \"4px\"\n }}\n onClick={(event) => {\n event.stopPropagation();\n\n if (isDocumentType(fullrecord[0]?.fileUrl)) {\n setShowAllFiles(true);\n } else {\n const urlsWithType = fullrecord.map((file: any) => ({\n src: file.fileUrl,\n downloadUrl: file.fileUrl\n }));\n setLightboxUrls(urlsWithType);\n setOpenLightbox(true);\n }\n }}\n >\n +{fullrecord.length - 1}\n </span>\n }\n\n\n\n {/* VIEW ALL DIALOG */}\n <SolidDialog\n open={isShowAllFiles}\n onOpenChange={setShowAllFiles}\n header=\"Items Uploaded\"\n style={{ width: '32rem', maxWidth: '94vw' }}\n >\n {fullrecord?.map((file: any) => {\n const fileId = `${file.name}-${file.size}`;\n return (\n <div key={fileId} className=\"solid-file-upload-wrapper mb-3\">\n <div className=\"flex items-center gap-2\">\n\n <FileReaderExt fileDetails={file} />\n\n <div className=\"flex w-full flex-col gap-1\">\n <div className=\"flex items-center justify-between\">\n\n <p\n className=\"m-0 w-11 font-normal text-[var(--primary-color)] solid-media-column-text-wrapper\"\n style={{ cursor: \"pointer\" }}\n onClick={() => handleFileView(file)}\n >\n {file?.name}\n </p>\n\n <SolidButton\n type=\"button\"\n size=\"small\"\n variant=\"ghost\"\n leftIcon={<Download size={14} />}\n onClick={() => {\n downloadFile(file?.fileUrl, \"\")\n }}\n style={{ height: 16, width: 16 }}\n />\n </div>\n\n <div className=\"text-sm\">{formatFileSize(file.size)}</div>\n </div>\n\n </div>\n </div>\n )\n }\n )}\n </SolidDialog>\n </div>\n ) : (\n <div style={{ height: 40, width: 40 }} />\n );\n};\n"]}
1
+ {"version":3,"file":"SolidMediaMultipleColumn.js","sourceRoot":"","sources":["../../../../../src/components/core/list/columns/SolidMediaMultipleColumn.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport React, { useState } from 'react';\nimport { Volume2 } from \"lucide-react\";\nimport { Column } from \"../SolidDataTable\";\nimport { SolidListViewColumnParams } from '../SolidListViewColumn';\nimport { SolidMediaListFieldWidgetProps } from '../../../../types/solid-core';\nimport { getExtensionComponent } from '../../../../helpers/registry';\nimport { FileReaderExt } from '../../../../components/common/FileReaderExt';\nimport { SolidDialog, SolidDialogBody, SolidDialogClose, SolidDialogHeader, SolidDialogTitle, SolidIcon } from \"../../../shad-cn-ui\";\nimport { SolidFileTypeIcon } from '../../../../helpers/fileTypeIcon';\nimport { getMediaPreviewKind, isLightboxMediaKind, type MediaPreviewKind } from '../../../../helpers/mediaType';\nimport { openMediaInNewTab } from '../../../../helpers/mediaUrl';\nimport { downloadMediaFile } from '../../../../helpers/downloadMediaFile';\nimport styles from \"../../form/fields/solidFields.module.css\";\n\n\n\n// Thumbnail preview component\nconst MediaPreview = ({\n src,\n fileName,\n previewKind,\n onClick\n}: {\n src: string;\n fileName?: string;\n previewKind: MediaPreviewKind;\n onClick: (event: React.MouseEvent) => void\n}) => {\n const [isBroken, setIsBroken] = useState(false);\n\n const handleClick = (event: React.MouseEvent) => {\n onClick(event);\n };\n\n if (!isBroken) {\n if (previewKind === \"image\") {\n return (\n <img\n src={src}\n alt=\"media\"\n className=\"rounded shadow-md\"\n width={40}\n height={40}\n style={{ objectFit: \"cover\" }}\n onError={() => setIsBroken(true)}\n onClick={handleClick}\n />\n );\n }\n\n if (previewKind === \"video\") {\n return (\n <video\n src={src}\n width={40}\n height={40}\n className=\"rounded shadow-md\"\n style={{ objectFit: \"cover\" }}\n onError={() => setIsBroken(true)}\n onClick={handleClick}\n muted\n />\n );\n }\n\n if (previewKind === \"audio\") {\n return (\n <div\n className=\"flex items-center justify-center rounded bg-gray-100 shadow-md\"\n style={{ width: 40, height: 40 }}\n onClick={handleClick}\n >\n <Volume2 size={18} className=\"text-gray-600\" />\n </div>\n );\n }\n }\n\n return (\n <div\n style={{ width: 40, height: 40, display: \"flex\", alignItems: \"center\", justifyContent: \"center\" }}\n onClick={handleClick}\n >\n <SolidFileTypeIcon fileUrl={src} fileName={fileName} size={24} />\n </div>\n );\n};\n\n\nconst SolidMediaMultipleColumn = ({ solidListViewMetaData, fieldMetadata, column, setLightboxUrls, setOpenLightbox }: SolidListViewColumnParams) => {\n const header = column.attrs.label ?? fieldMetadata.displayName;\n\n return (\n <Column\n key={fieldMetadata.name}\n field={fieldMetadata.name}\n header={header}\n body={(rowData) => {\n let viewWidget = column.attrs.viewWidget;\n if (!viewWidget) {\n viewWidget = 'DefaultMediaMultipleListWidget';\n }\n let DynamicWidget = getExtensionComponent(viewWidget);\n const widgetProps: SolidMediaListFieldWidgetProps = {\n rowData,\n solidListViewMetaData,\n fieldMetadata,\n column,\n setLightboxUrls,\n setOpenLightbox\n }\n return (\n <>\n {\n DynamicWidget && <DynamicWidget {...widgetProps} />\n }\n </>\n )\n }}\n sortable={column.attrs.sortable}\n style={{ minWidth: \"12rem\" }}\n headerClassName=\"table-header-fs\"\n />\n );\n};\n\nexport default SolidMediaMultipleColumn;\n\n// Default multiple widget\nexport const DefaultMediaMultipleListWidget = ({ rowData, fieldMetadata, setLightboxUrls, setOpenLightbox }: SolidMediaListFieldWidgetProps) => {\n const [isShowAllFiles, setShowAllFiles] = useState(false);\n\n if (!rowData?._media?.[fieldMetadata.name]) return null;\n\n const fullrecord = rowData._media[fieldMetadata.name]?.map((file: any) => ({\n name: file.originalFileName,\n type: file.mimeType,\n size: file.fileSize,\n id: file.id,\n fileUrl: file?._full_url,\n previewKind: getMediaPreviewKind({\n url: file?._full_url,\n fileName: file?.originalFileName,\n mimeType: file?.mimeType,\n })\n }));\n\n\n const formatFileSize = (size: number) =>\n size >= 1024 * 1024 ? `${(size / (1024 * 1024)).toFixed(1)} MB` : `${(size / 1024).toFixed(1)} KB`;\n\n\n const handleFileView = (file: any) => {\n if (isLightboxMediaKind(file?.previewKind)) {\n setLightboxUrls?.([{\n src: file.fileUrl,\n downloadUrl: file.fileUrl,\n type: file.previewKind === \"video\" ? \"video\" : undefined\n }]);\n setOpenLightbox?.(true);\n return;\n }\n\n openMediaInNewTab(file?.fileUrl);\n };\n\n const renderMediaFileCard = (file: any, className = \"\") => (\n <div className={`${styles.mediaAttachmentCard} ${className}`.trim()}>\n <div className={`${styles.mediaAttachmentRow} flex items-center md:gap-2`}>\n <FileReaderExt fileDetails={file} />\n <div className={`${styles.mediaAttachmentMeta} w-full`}>\n <div className=\"flex items-start justify-between gap-4\">\n <button\n type=\"button\"\n className={styles.mediaAttachmentName}\n onClick={() => handleFileView(file)}\n title={file.name}\n >\n {file.name}\n </button>\n <div className={`${styles.mediaAttachmentActions} flex items-center md:gap-2`}>\n <button\n type=\"button\"\n className=\"solid-file-icon-btn\"\n aria-label=\"Download file\"\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n downloadMediaFile(file?.fileUrl, file?.name);\n }}\n >\n <SolidIcon name=\"si-download\" aria-hidden />\n </button>\n </div>\n </div>\n <div className={styles.mediaAttachmentSize}>\n {formatFileSize(file.size)}\n </div>\n </div>\n </div>\n </div>\n );\n\n\n return fullrecord.length > 0 ? (\n <div className='flex items-end gap-2'>\n\n <MediaPreview\n src={fullrecord[0]?.fileUrl}\n fileName={fullrecord[0]?.name}\n previewKind={fullrecord[0]?.previewKind}\n onClick={(event) => {\n event.stopPropagation();\n handleFileView(fullrecord[0]);\n }}\n />\n\n {fullrecord?.length > 1 && <span\n style={{\n color: \"#0895CD\",\n fontWeight: \"bold\",\n cursor: \"pointer\",\n marginLeft: \"4px\"\n }}\n onClick={(event) => {\n event.stopPropagation();\n setShowAllFiles(true);\n }}\n >\n +{fullrecord.length - 1}\n </span>\n }\n\n\n\n {/* VIEW ALL DIALOG */}\n <SolidDialog\n open={isShowAllFiles}\n onOpenChange={setShowAllFiles}\n style={{ minWidth: 450 }}\n >\n <SolidDialogHeader>\n <SolidDialogTitle>Items Uploaded</SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogBody>\n {fullrecord?.map((file: any, index: number) => {\n const fileId = `${file.name}-${file.size}`;\n return (\n <div key={fileId} className={index === fullrecord.length - 1 ? \"\" : \"mb-3\"}>\n {renderMediaFileCard(file)}\n </div>\n )\n })}\n </SolidDialogBody>\n </SolidDialog>\n </div>\n ) : (\n <div style={{ height: 40, width: 40 }} />\n );\n};\n"]}