@tsiky/components-r19 1.3.0 → 1.3.2

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 (606) hide show
  1. package/dist/PeriodRange-BXSfe73g.js +256 -0
  2. package/dist/PeriodRange-Bk2LtI3D.cjs +26 -0
  3. package/dist/PeriodRange-CIQYAHih.js +256 -0
  4. package/dist/PeriodRange-DNoIikIk.cjs +26 -0
  5. package/dist/PeriodRange-Dn1GYZPh.cjs +26 -0
  6. package/dist/PeriodRange-sBKBJi5M.js +256 -0
  7. package/dist/PeriodRange.css +1 -0
  8. package/dist/apexsankey.es.min-D4KjE2OR.cjs +41 -0
  9. package/dist/apexsankey.es.min-ZIADo5C-.js +12850 -0
  10. package/dist/assets/PeriodRange-IuGitmJ8.css +1 -0
  11. package/dist/assets/index-5EGrYcvi.css +1 -0
  12. package/dist/chart.cjs.js +969 -0
  13. package/dist/chart.d.ts +11 -0
  14. package/dist/chart.d.ts.map +1 -0
  15. package/dist/chart.js +12339 -0
  16. package/dist/components-r19.css +1 -0
  17. package/dist/index.cjs.js +8161 -0
  18. package/dist/index.css +1 -0
  19. package/{index.ts → dist/index.d.ts} +39 -35
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +36738 -0
  22. package/dist/src/App.d.ts +4 -0
  23. package/dist/src/App.d.ts.map +1 -0
  24. package/dist/src/components/AddItemModal/AddItemModal.d.ts +18 -0
  25. package/dist/src/components/AddItemModal/AddItemModal.d.ts.map +1 -0
  26. package/dist/src/components/AddItemModal/index.d.ts +2 -0
  27. package/dist/src/components/AddItemModal/index.d.ts.map +1 -0
  28. package/dist/src/components/Alert/Alert.d.ts +25 -0
  29. package/dist/src/components/Alert/Alert.d.ts.map +1 -0
  30. package/dist/src/components/Alert/AlertContext.d.ts +32 -0
  31. package/dist/src/components/Alert/AlertContext.d.ts.map +1 -0
  32. package/dist/src/components/Alert/AlertModels.d.ts +3 -0
  33. package/dist/src/components/Alert/AlertModels.d.ts.map +1 -0
  34. package/{src/components/Alert/index.ts → dist/src/components/Alert/index.d.ts} +1 -0
  35. package/dist/src/components/Alert/index.d.ts.map +1 -0
  36. package/dist/src/components/AnnouncementPanel/FlexRowContainer.d.ts +10 -0
  37. package/dist/src/components/AnnouncementPanel/FlexRowContainer.d.ts.map +1 -0
  38. package/dist/src/components/AnnouncementPanel/ListBox/CounterListBox.d.ts +22 -0
  39. package/dist/src/components/AnnouncementPanel/ListBox/CounterListBox.d.ts.map +1 -0
  40. package/dist/src/components/AnnouncementPanel/ListBox/SimpleListBox.d.ts +22 -0
  41. package/dist/src/components/AnnouncementPanel/ListBox/SimpleListBox.d.ts.map +1 -0
  42. package/dist/src/components/AnnouncementPanel/ListBox/TrendListBox.d.ts +26 -0
  43. package/dist/src/components/AnnouncementPanel/ListBox/TrendListBox.d.ts.map +1 -0
  44. package/{src/components/AnnouncementPanel/ListBox/index.ts → dist/src/components/AnnouncementPanel/ListBox/index.d.ts} +4 -3
  45. package/dist/src/components/AnnouncementPanel/ListBox/index.d.ts.map +1 -0
  46. package/dist/src/components/AnnouncementPanel/ListContentContainer.d.ts +11 -0
  47. package/dist/src/components/AnnouncementPanel/ListContentContainer.d.ts.map +1 -0
  48. package/{src/components/AnnouncementPanel/index.ts → dist/src/components/AnnouncementPanel/index.d.ts} +4 -3
  49. package/dist/src/components/AnnouncementPanel/index.d.ts.map +1 -0
  50. package/dist/src/components/BandChart/index.d.ts +50 -0
  51. package/dist/src/components/BandChart/index.d.ts.map +1 -0
  52. package/dist/src/components/Button/Button.d.ts +9 -0
  53. package/dist/src/components/Button/Button.d.ts.map +1 -0
  54. package/{src/components/Button/index.ts → dist/src/components/Button/index.d.ts} +1 -0
  55. package/dist/src/components/Button/index.d.ts.map +1 -0
  56. package/dist/src/components/ChartContainer/ChartContainer.d.ts +34 -0
  57. package/dist/src/components/ChartContainer/ChartContainer.d.ts.map +1 -0
  58. package/dist/src/components/ChartContainer/index.d.ts +2 -0
  59. package/dist/src/components/ChartContainer/index.d.ts.map +1 -0
  60. package/dist/src/components/Charts/area-chart-admission/AreaChartAdmission.d.ts +15 -0
  61. package/dist/src/components/Charts/area-chart-admission/AreaChartAdmission.d.ts.map +1 -0
  62. package/dist/src/components/Charts/area-chart-hospitalisation/AreaChartHospitalisation.d.ts +14 -0
  63. package/dist/src/components/Charts/area-chart-hospitalisation/AreaChartHospitalisation.d.ts.map +1 -0
  64. package/dist/src/components/Charts/bar-chart/BarChart.d.ts +20 -0
  65. package/dist/src/components/Charts/bar-chart/BarChart.d.ts.map +1 -0
  66. package/dist/src/components/Charts/boxplot-chart/BoxPlotChart.d.ts +24 -0
  67. package/dist/src/components/Charts/boxplot-chart/BoxPlotChart.d.ts.map +1 -0
  68. package/dist/src/components/Charts/boxplot-chart/boxUtils.d.ts +4 -0
  69. package/dist/src/components/Charts/boxplot-chart/boxUtils.d.ts.map +1 -0
  70. package/dist/src/components/Charts/mixed-chart/MixedChart.d.ts +70 -0
  71. package/dist/src/components/Charts/mixed-chart/MixedChart.d.ts.map +1 -0
  72. package/dist/src/components/Charts/sankey-adaptation/sankey.d.ts +4 -0
  73. package/dist/src/components/Charts/sankey-adaptation/sankey.d.ts.map +1 -0
  74. package/dist/src/components/Charts/sankey-chart/SankeyChart.d.ts +20 -0
  75. package/dist/src/components/Charts/sankey-chart/SankeyChart.d.ts.map +1 -0
  76. package/dist/src/components/Charts/stacked-column/StackedColumn.d.ts +55 -0
  77. package/dist/src/components/Charts/stacked-column/StackedColumn.d.ts.map +1 -0
  78. package/dist/src/components/Charts/stacked-column-one-hundred-percent/StackedColumnOneHundredPercent.d.ts +13 -0
  79. package/dist/src/components/Charts/stacked-column-one-hundred-percent/StackedColumnOneHundredPercent.d.ts.map +1 -0
  80. package/dist/src/components/CircularProgress/CircularProgress.d.ts +17 -0
  81. package/dist/src/components/CircularProgress/CircularProgress.d.ts.map +1 -0
  82. package/{src/components/CircularProgress/index.ts → dist/src/components/CircularProgress/index.d.ts} +1 -0
  83. package/dist/src/components/CircularProgress/index.d.ts.map +1 -0
  84. package/dist/src/components/Confirmationpopup/ConfirmationPopup.d.ts +14 -0
  85. package/dist/src/components/Confirmationpopup/ConfirmationPopup.d.ts.map +1 -0
  86. package/{src/components/Confirmationpopup/index.ts → dist/src/components/Confirmationpopup/index.d.ts} +4 -6
  87. package/dist/src/components/Confirmationpopup/index.d.ts.map +1 -0
  88. package/dist/src/components/Confirmationpopup/useConfirmationPopup.d.ts +9 -0
  89. package/dist/src/components/Confirmationpopup/useConfirmationPopup.d.ts.map +1 -0
  90. package/dist/src/components/DayStatCard/DayStatCard.d.ts +20 -0
  91. package/dist/src/components/DayStatCard/DayStatCard.d.ts.map +1 -0
  92. package/{src/components/DayStatCard/index.ts → dist/src/components/DayStatCard/index.d.ts} +1 -0
  93. package/dist/src/components/DayStatCard/index.d.ts.map +1 -0
  94. package/dist/src/components/DraggableSwitcher/DraggableSwitcherButton.d.ts +16 -0
  95. package/dist/src/components/DraggableSwitcher/DraggableSwitcherButton.d.ts.map +1 -0
  96. package/dist/src/components/DraggableSwitcher/context/useDraggableSwitcher.d.ts +11 -0
  97. package/dist/src/components/DraggableSwitcher/context/useDraggableSwitcher.d.ts.map +1 -0
  98. package/{src/components/DraggableSwitcher/index.ts → dist/src/components/DraggableSwitcher/index.d.ts} +3 -2
  99. package/dist/src/components/DraggableSwitcher/index.d.ts.map +1 -0
  100. package/dist/src/components/DropdownMenu/DropdownMenu.d.ts +23 -0
  101. package/dist/src/components/DropdownMenu/DropdownMenu.d.ts.map +1 -0
  102. package/dist/src/components/DropdownMenu/index.d.ts +2 -0
  103. package/dist/src/components/DropdownMenu/index.d.ts.map +1 -0
  104. package/dist/src/components/DynamicForm/DynamicForm.d.ts +16 -0
  105. package/dist/src/components/DynamicForm/DynamicForm.d.ts.map +1 -0
  106. package/{src/components/DynamicForm/index.ts → dist/src/components/DynamicForm/index.d.ts} +1 -0
  107. package/dist/src/components/DynamicForm/index.d.ts.map +1 -0
  108. package/dist/src/components/DynamicForm/tools/form-metadata.d.ts +50 -0
  109. package/dist/src/components/DynamicForm/tools/form-metadata.d.ts.map +1 -0
  110. package/dist/src/components/DynamicForm/tools/validation.d.ts +11 -0
  111. package/dist/src/components/DynamicForm/tools/validation.d.ts.map +1 -0
  112. package/dist/src/components/DynamicInput/DynamicInput.d.ts +13 -0
  113. package/dist/src/components/DynamicInput/DynamicInput.d.ts.map +1 -0
  114. package/{src/components/DynamicInput/index.ts → dist/src/components/DynamicInput/index.d.ts} +1 -0
  115. package/dist/src/components/DynamicInput/index.d.ts.map +1 -0
  116. package/dist/src/components/DynamicInput/input/CheckboxInput.d.ts +12 -0
  117. package/dist/src/components/DynamicInput/input/CheckboxInput.d.ts.map +1 -0
  118. package/dist/src/components/DynamicInput/input/ColorInput.d.ts +13 -0
  119. package/dist/src/components/DynamicInput/input/ColorInput.d.ts.map +1 -0
  120. package/dist/src/components/DynamicInput/input/DateInput.d.ts +13 -0
  121. package/dist/src/components/DynamicInput/input/DateInput.d.ts.map +1 -0
  122. package/dist/src/components/DynamicInput/input/FileInput.d.ts +13 -0
  123. package/dist/src/components/DynamicInput/input/FileInput.d.ts.map +1 -0
  124. package/dist/src/components/DynamicInput/input/InputWrapper.d.ts +11 -0
  125. package/dist/src/components/DynamicInput/input/InputWrapper.d.ts.map +1 -0
  126. package/dist/src/components/DynamicInput/input/RadioInput.d.ts +12 -0
  127. package/dist/src/components/DynamicInput/input/RadioInput.d.ts.map +1 -0
  128. package/dist/src/components/DynamicInput/input/RangeInput.d.ts +13 -0
  129. package/dist/src/components/DynamicInput/input/RangeInput.d.ts.map +1 -0
  130. package/dist/src/components/DynamicInput/input/SelectInput.d.ts +12 -0
  131. package/dist/src/components/DynamicInput/input/SelectInput.d.ts.map +1 -0
  132. package/dist/src/components/DynamicInput/input/TextInput.d.ts +13 -0
  133. package/dist/src/components/DynamicInput/input/TextInput.d.ts.map +1 -0
  134. package/dist/src/components/DynamicInput/input/TextareaInput.d.ts +12 -0
  135. package/dist/src/components/DynamicInput/input/TextareaInput.d.ts.map +1 -0
  136. package/{src/components/DynamicInput/input/index.ts → dist/src/components/DynamicInput/input/index.d.ts} +1 -0
  137. package/dist/src/components/DynamicInput/input/index.d.ts.map +1 -0
  138. package/dist/src/components/DynamicTable/AdvancedFilters.d.ts +18 -0
  139. package/dist/src/components/DynamicTable/AdvancedFilters.d.ts.map +1 -0
  140. package/dist/src/components/DynamicTable/ColumnSorter.d.ts +12 -0
  141. package/dist/src/components/DynamicTable/ColumnSorter.d.ts.map +1 -0
  142. package/dist/src/components/DynamicTable/Pagination.d.ts +13 -0
  143. package/dist/src/components/DynamicTable/Pagination.d.ts.map +1 -0
  144. package/dist/src/components/DynamicTable/TableBody.d.ts +4 -0
  145. package/dist/src/components/DynamicTable/TableBody.d.ts.map +1 -0
  146. package/dist/src/components/DynamicTable/TableCell.d.ts +9 -0
  147. package/dist/src/components/DynamicTable/TableCell.d.ts.map +1 -0
  148. package/dist/src/components/DynamicTable/TableHeader.d.ts +7 -0
  149. package/dist/src/components/DynamicTable/TableHeader.d.ts.map +1 -0
  150. package/dist/src/components/DynamicTable/TableRow.d.ts +16 -0
  151. package/dist/src/components/DynamicTable/TableRow.d.ts.map +1 -0
  152. package/dist/src/components/DynamicTable/TableauDynamique.d.ts +17 -0
  153. package/dist/src/components/DynamicTable/TableauDynamique.d.ts.map +1 -0
  154. package/dist/src/components/DynamicTable/filters/BooleanFilter.d.ts +13 -0
  155. package/dist/src/components/DynamicTable/filters/BooleanFilter.d.ts.map +1 -0
  156. package/dist/src/components/DynamicTable/filters/DateFilter.d.ts +13 -0
  157. package/dist/src/components/DynamicTable/filters/DateFilter.d.ts.map +1 -0
  158. package/dist/src/components/DynamicTable/filters/DateRangeFilter.d.ts +17 -0
  159. package/dist/src/components/DynamicTable/filters/DateRangeFilter.d.ts.map +1 -0
  160. package/dist/src/components/DynamicTable/filters/FilterRenderer.d.ts +10 -0
  161. package/dist/src/components/DynamicTable/filters/FilterRenderer.d.ts.map +1 -0
  162. package/dist/src/components/DynamicTable/filters/MultiSelectFilter.d.ts +11 -0
  163. package/dist/src/components/DynamicTable/filters/MultiSelectFilter.d.ts.map +1 -0
  164. package/dist/src/components/DynamicTable/filters/NumberFilter.d.ts +14 -0
  165. package/dist/src/components/DynamicTable/filters/NumberFilter.d.ts.map +1 -0
  166. package/dist/src/components/DynamicTable/filters/OperatorFilter.d.ts +16 -0
  167. package/dist/src/components/DynamicTable/filters/OperatorFilter.d.ts.map +1 -0
  168. package/dist/src/components/DynamicTable/filters/SelectFilter.d.ts +10 -0
  169. package/dist/src/components/DynamicTable/filters/SelectFilter.d.ts.map +1 -0
  170. package/dist/src/components/DynamicTable/filters/TextFilter.d.ts +9 -0
  171. package/dist/src/components/DynamicTable/filters/TextFilter.d.ts.map +1 -0
  172. package/{src/components/DynamicTable/filters/index.ts → dist/src/components/DynamicTable/filters/index.d.ts} +1 -0
  173. package/dist/src/components/DynamicTable/filters/index.d.ts.map +1 -0
  174. package/{src/components/DynamicTable/hooks/index.ts → dist/src/components/DynamicTable/hooks/index.d.ts} +1 -0
  175. package/dist/src/components/DynamicTable/hooks/index.d.ts.map +1 -0
  176. package/dist/src/components/DynamicTable/hooks/useAsyncActions.d.ts +6 -0
  177. package/dist/src/components/DynamicTable/hooks/useAsyncActions.d.ts.map +1 -0
  178. package/dist/src/components/DynamicTable/hooks/useFilters.d.ts +19 -0
  179. package/dist/src/components/DynamicTable/hooks/useFilters.d.ts.map +1 -0
  180. package/dist/src/components/DynamicTable/hooks/useTableData.d.ts +11 -0
  181. package/dist/src/components/DynamicTable/hooks/useTableData.d.ts.map +1 -0
  182. package/{src/components/DynamicTable/index.ts → dist/src/components/DynamicTable/index.d.ts} +1 -0
  183. package/dist/src/components/DynamicTable/index.d.ts.map +1 -0
  184. package/dist/src/components/DynamicTable/tools/filterTypes.d.ts +88 -0
  185. package/dist/src/components/DynamicTable/tools/filterTypes.d.ts.map +1 -0
  186. package/{src/components/DynamicTable/tools/index.ts → dist/src/components/DynamicTable/tools/index.d.ts} +1 -0
  187. package/dist/src/components/DynamicTable/tools/index.d.ts.map +1 -0
  188. package/dist/src/components/DynamicTable/tools/tableConfig.d.ts +13 -0
  189. package/dist/src/components/DynamicTable/tools/tableConfig.d.ts.map +1 -0
  190. package/dist/src/components/DynamicTable/tools/tableTypes.d.ts +66 -0
  191. package/dist/src/components/DynamicTable/tools/tableTypes.d.ts.map +1 -0
  192. package/dist/src/components/EntryControl/EntryControl.d.ts +7 -0
  193. package/dist/src/components/EntryControl/EntryControl.d.ts.map +1 -0
  194. package/{src/components/EntryControl/index.ts → dist/src/components/EntryControl/index.d.ts} +1 -0
  195. package/dist/src/components/EntryControl/index.d.ts.map +1 -0
  196. package/dist/src/components/Grid/Grid.d.ts +24 -0
  197. package/dist/src/components/Grid/Grid.d.ts.map +1 -0
  198. package/{src/components/Grid/index.ts → dist/src/components/Grid/index.d.ts} +1 -0
  199. package/dist/src/components/Grid/index.d.ts.map +1 -0
  200. package/dist/src/components/Header/Header.d.ts +16 -0
  201. package/dist/src/components/Header/Header.d.ts.map +1 -0
  202. package/dist/src/components/Header/index.d.ts +2 -0
  203. package/dist/src/components/Header/index.d.ts.map +1 -0
  204. package/dist/src/components/IconText/IconText.d.ts +14 -0
  205. package/dist/src/components/IconText/IconText.d.ts.map +1 -0
  206. package/dist/src/components/IconText/index.d.ts +2 -0
  207. package/dist/src/components/IconText/index.d.ts.map +1 -0
  208. package/dist/src/components/LanguageSelector/LanguageSelector.d.ts +14 -0
  209. package/dist/src/components/LanguageSelector/LanguageSelector.d.ts.map +1 -0
  210. package/{src/components/LanguageSelector/index.ts → dist/src/components/LanguageSelector/index.d.ts} +1 -0
  211. package/dist/src/components/LanguageSelector/index.d.ts.map +1 -0
  212. package/dist/src/components/Logo/Logo.d.ts +10 -0
  213. package/dist/src/components/Logo/Logo.d.ts.map +1 -0
  214. package/{src/components/Logo/index.ts → dist/src/components/Logo/index.d.ts} +1 -0
  215. package/dist/src/components/Logo/index.d.ts.map +1 -0
  216. package/dist/src/components/MetricsPanel/MetricsItem.d.ts +12 -0
  217. package/dist/src/components/MetricsPanel/MetricsItem.d.ts.map +1 -0
  218. package/dist/src/components/MetricsPanel/MetricsPanel.d.ts +17 -0
  219. package/dist/src/components/MetricsPanel/MetricsPanel.d.ts.map +1 -0
  220. package/dist/src/components/MetricsPanel/PanelHeader.d.ts +8 -0
  221. package/dist/src/components/MetricsPanel/PanelHeader.d.ts.map +1 -0
  222. package/dist/src/components/MetricsPanel/SummaryCard.d.ts +16 -0
  223. package/dist/src/components/MetricsPanel/SummaryCard.d.ts.map +1 -0
  224. package/{src/components/MetricsPanel/index.ts → dist/src/components/MetricsPanel/index.d.ts} +1 -0
  225. package/dist/src/components/MetricsPanel/index.d.ts.map +1 -0
  226. package/dist/src/components/MetricsPanel/renderers/CompactRenderer.d.ts +4 -0
  227. package/dist/src/components/MetricsPanel/renderers/CompactRenderer.d.ts.map +1 -0
  228. package/dist/src/components/MetricsPanel/renderers/ImageCard.d.ts +7 -0
  229. package/dist/src/components/MetricsPanel/renderers/ImageCard.d.ts.map +1 -0
  230. package/dist/src/components/MetricsPanel/renderers/PertinenceCard.d.ts +15 -0
  231. package/dist/src/components/MetricsPanel/renderers/PertinenceCard.d.ts.map +1 -0
  232. package/dist/src/components/MetricsPanel/tools/MetricsPanelTypes.d.ts +47 -0
  233. package/dist/src/components/MetricsPanel/tools/MetricsPanelTypes.d.ts.map +1 -0
  234. package/dist/src/components/MetricsPanel/tools/chooseDefaultRender.d.ts +7 -0
  235. package/dist/src/components/MetricsPanel/tools/chooseDefaultRender.d.ts.map +1 -0
  236. package/dist/src/components/MetricsPanel/tools/colorUtils.d.ts +2 -0
  237. package/dist/src/components/MetricsPanel/tools/colorUtils.d.ts.map +1 -0
  238. package/{src/components/MetricsPanel/tools/index.ts → dist/src/components/MetricsPanel/tools/index.d.ts} +1 -0
  239. package/dist/src/components/MetricsPanel/tools/index.d.ts.map +1 -0
  240. package/dist/src/components/ModuleHeader/ModuleHeader.d.ts +10 -0
  241. package/dist/src/components/ModuleHeader/ModuleHeader.d.ts.map +1 -0
  242. package/dist/src/components/ModuleHeader/index.d.ts +2 -0
  243. package/dist/src/components/ModuleHeader/index.d.ts.map +1 -0
  244. package/dist/src/components/ModuleSideBar/ModuleSideBar.d.ts +22 -0
  245. package/dist/src/components/ModuleSideBar/ModuleSideBar.d.ts.map +1 -0
  246. package/dist/src/components/ModuleSideBar/index.d.ts +2 -0
  247. package/dist/src/components/ModuleSideBar/index.d.ts.map +1 -0
  248. package/dist/src/components/NavBar/NavBar.d.ts +11 -0
  249. package/dist/src/components/NavBar/NavBar.d.ts.map +1 -0
  250. package/dist/src/components/NavBar/NavContext.d.ts +14 -0
  251. package/dist/src/components/NavBar/NavContext.d.ts.map +1 -0
  252. package/{src/components/NavBar/index.ts → dist/src/components/NavBar/index.d.ts} +1 -0
  253. package/dist/src/components/NavBar/index.d.ts.map +1 -0
  254. package/dist/src/components/NavItem/NavItem.d.ts +13 -0
  255. package/dist/src/components/NavItem/NavItem.d.ts.map +1 -0
  256. package/dist/src/components/NavItem/index.d.ts +2 -0
  257. package/dist/src/components/NavItem/index.d.ts.map +1 -0
  258. package/dist/src/components/Page/Dashboard.d.ts +4 -0
  259. package/dist/src/components/Page/Dashboard.d.ts.map +1 -0
  260. package/dist/src/components/Page/Page.d.ts +4 -0
  261. package/dist/src/components/Page/Page.d.ts.map +1 -0
  262. package/dist/src/components/PerformanceCard/PerformanceCard.d.ts +22 -0
  263. package/dist/src/components/PerformanceCard/PerformanceCard.d.ts.map +1 -0
  264. package/dist/src/components/PerformanceCard/defaultHistogramRenderer.d.ts +10 -0
  265. package/dist/src/components/PerformanceCard/defaultHistogramRenderer.d.ts.map +1 -0
  266. package/dist/src/components/PerformanceCard/tools/types.d.ts +44 -0
  267. package/dist/src/components/PerformanceCard/tools/types.d.ts.map +1 -0
  268. package/dist/src/components/PerformanceCard/tools/usePerformanceCard.d.ts +28 -0
  269. package/dist/src/components/PerformanceCard/tools/usePerformanceCard.d.ts.map +1 -0
  270. package/dist/src/components/PeriodRange/PeriodRange.d.ts +14 -0
  271. package/dist/src/components/PeriodRange/PeriodRange.d.ts.map +1 -0
  272. package/dist/src/components/PeriodSelect/PeriodSelect.d.ts +14 -0
  273. package/dist/src/components/PeriodSelect/PeriodSelect.d.ts.map +1 -0
  274. package/dist/src/components/PeriodSelect/index.d.ts +2 -0
  275. package/dist/src/components/PeriodSelect/index.d.ts.map +1 -0
  276. package/dist/src/components/ScrollableHorizontale/ScrollableHorizontale.d.ts +12 -0
  277. package/dist/src/components/ScrollableHorizontale/ScrollableHorizontale.d.ts.map +1 -0
  278. package/{src/components/ScrollableHorizontale/index.ts → dist/src/components/ScrollableHorizontale/index.d.ts} +1 -0
  279. package/dist/src/components/ScrollableHorizontale/index.d.ts.map +1 -0
  280. package/dist/src/components/SearchBar/SearchBar.d.ts +10 -0
  281. package/dist/src/components/SearchBar/SearchBar.d.ts.map +1 -0
  282. package/dist/src/components/SearchBar/index.d.ts +2 -0
  283. package/dist/src/components/SearchBar/index.d.ts.map +1 -0
  284. package/dist/src/components/SectionTitle/SectionTitle.d.ts +9 -0
  285. package/dist/src/components/SectionTitle/SectionTitle.d.ts.map +1 -0
  286. package/dist/src/components/SelectFilter/SelectFilter.d.ts +5 -0
  287. package/dist/src/components/SelectFilter/SelectFilter.d.ts.map +1 -0
  288. package/{src/components/SelectFilter/index.ts → dist/src/components/SelectFilter/index.d.ts} +3 -2
  289. package/dist/src/components/SelectFilter/index.d.ts.map +1 -0
  290. package/dist/src/components/SelectFilter/types.d.ts +19 -0
  291. package/dist/src/components/SelectFilter/types.d.ts.map +1 -0
  292. package/dist/src/components/SideComponent/PatientEditor.d.ts +5 -0
  293. package/dist/src/components/SideComponent/PatientEditor.d.ts.map +1 -0
  294. package/dist/src/components/SideComponent/SideComponent.d.ts +25 -0
  295. package/dist/src/components/SideComponent/SideComponent.d.ts.map +1 -0
  296. package/dist/src/components/SideComponent/hooks/useBodyScrollLock.d.ts +2 -0
  297. package/dist/src/components/SideComponent/hooks/useBodyScrollLock.d.ts.map +1 -0
  298. package/{src/components/SideComponent/index.ts → dist/src/components/SideComponent/index.d.ts} +1 -0
  299. package/dist/src/components/SideComponent/index.d.ts.map +1 -0
  300. package/dist/src/components/SideComponent/portal.d.ts +3 -0
  301. package/dist/src/components/SideComponent/portal.d.ts.map +1 -0
  302. package/dist/src/components/SubNavBar/SubNavBar.d.ts +16 -0
  303. package/dist/src/components/SubNavBar/SubNavBar.d.ts.map +1 -0
  304. package/dist/src/components/SubNavBar/index.d.ts +2 -0
  305. package/dist/src/components/SubNavBar/index.d.ts.map +1 -0
  306. package/dist/src/components/Switcher/Switcher.d.ts +21 -0
  307. package/dist/src/components/Switcher/Switcher.d.ts.map +1 -0
  308. package/dist/src/components/Switcher/index.d.ts +2 -0
  309. package/dist/src/components/Switcher/index.d.ts.map +1 -0
  310. package/dist/src/components/Title/Title.d.ts +9 -0
  311. package/dist/src/components/Title/Title.d.ts.map +1 -0
  312. package/dist/src/components/Title/index.d.ts +2 -0
  313. package/dist/src/components/Title/index.d.ts.map +1 -0
  314. package/dist/src/components/TranslationKey/TranslationKey.d.ts +23 -0
  315. package/dist/src/components/TranslationKey/TranslationKey.d.ts.map +1 -0
  316. package/dist/src/components/TranslationKey/index.d.ts +2 -0
  317. package/dist/src/components/TranslationKey/index.d.ts.map +1 -0
  318. package/dist/src/components/TrendItem/TrendItem.d.ts +14 -0
  319. package/dist/src/components/TrendItem/TrendItem.d.ts.map +1 -0
  320. package/dist/src/components/TrendItem/index.d.ts +2 -0
  321. package/dist/src/components/TrendItem/index.d.ts.map +1 -0
  322. package/dist/src/components/TrendList/TrendList.d.ts +17 -0
  323. package/dist/src/components/TrendList/TrendList.d.ts.map +1 -0
  324. package/dist/src/components/TrendList/index.d.ts +2 -0
  325. package/dist/src/components/TrendList/index.d.ts.map +1 -0
  326. package/dist/src/components/theme/ThemeSwitcherButton.d.ts +18 -0
  327. package/dist/src/components/theme/ThemeSwitcherButton.d.ts.map +1 -0
  328. package/dist/src/components/theme/context/ThemeContext.d.ts +13 -0
  329. package/dist/src/components/theme/context/ThemeContext.d.ts.map +1 -0
  330. package/{src/components/theme/context/index.ts → dist/src/components/theme/context/index.d.ts} +1 -0
  331. package/dist/src/components/theme/context/index.d.ts.map +1 -0
  332. package/dist/src/components/theme/context/useThemeSwitcher.d.ts +5 -0
  333. package/dist/src/components/theme/context/useThemeSwitcher.d.ts.map +1 -0
  334. package/dist/src/components/theme/index.d.ts +2 -0
  335. package/dist/src/components/theme/index.d.ts.map +1 -0
  336. package/dist/src/main.d.ts +2 -0
  337. package/dist/src/main.d.ts.map +1 -0
  338. package/package.json +28 -3
  339. package/.prettierignore +0 -4
  340. package/.prettierrc +0 -9
  341. package/.storybook/main.ts +0 -17
  342. package/.storybook/preview.ts +0 -21
  343. package/.storybook/vitest.setup.ts +0 -7
  344. package/chart.ts +0 -1
  345. package/eslint.config.js +0 -40
  346. package/index.html +0 -13
  347. package/src/App.css +0 -42
  348. package/src/App.tsx +0 -12
  349. package/src/assets/accessibility.png +0 -0
  350. package/src/assets/accessibility.svg +0 -1
  351. package/src/assets/addon-library.png +0 -0
  352. package/src/assets/assets.png +0 -0
  353. package/src/assets/avif-test-image.avif +0 -0
  354. package/src/assets/context.png +0 -0
  355. package/src/assets/discord.svg +0 -1
  356. package/src/assets/docs.png +0 -0
  357. package/src/assets/figma-plugin.png +0 -0
  358. package/src/assets/github.svg +0 -1
  359. package/src/assets/react.svg +0 -1
  360. package/src/assets/share.png +0 -0
  361. package/src/assets/styling.png +0 -0
  362. package/src/assets/testing.png +0 -0
  363. package/src/assets/theming.png +0 -0
  364. package/src/assets/tutorials.svg +0 -1
  365. package/src/assets/youtube.svg +0 -1
  366. package/src/components/AddItemModal/AddItemModal.module.css +0 -72
  367. package/src/components/AddItemModal/AddItemModal.tsx +0 -82
  368. package/src/components/AddItemModal/index.ts +0 -1
  369. package/src/components/Alert/Alert.css +0 -54
  370. package/src/components/Alert/Alert.stories.tsx +0 -82
  371. package/src/components/Alert/Alert.tsx +0 -85
  372. package/src/components/Alert/AlertContext.tsx +0 -200
  373. package/src/components/Alert/AlertModels.ts +0 -34
  374. package/src/components/AnnouncementPanel/FlexRowContainer.css +0 -17
  375. package/src/components/AnnouncementPanel/FlexRowContainer.stories.tsx +0 -329
  376. package/src/components/AnnouncementPanel/FlexRowContainer.tsx +0 -24
  377. package/src/components/AnnouncementPanel/ListBox/CounterListBox.css +0 -56
  378. package/src/components/AnnouncementPanel/ListBox/CounterListBox.stories.tsx +0 -292
  379. package/src/components/AnnouncementPanel/ListBox/CounterListBox.tsx +0 -106
  380. package/src/components/AnnouncementPanel/ListBox/SimpleListBox.css +0 -57
  381. package/src/components/AnnouncementPanel/ListBox/SimpleListBox.stories.tsx +0 -189
  382. package/src/components/AnnouncementPanel/ListBox/SimpleListBox.tsx +0 -138
  383. package/src/components/AnnouncementPanel/ListBox/TrendListBox.css +0 -61
  384. package/src/components/AnnouncementPanel/ListBox/TrendListBox.stories.tsx +0 -257
  385. package/src/components/AnnouncementPanel/ListBox/TrendListBox.tsx +0 -90
  386. package/src/components/AnnouncementPanel/ListContentContainer.css +0 -23
  387. package/src/components/AnnouncementPanel/ListContentContainer.stories.tsx +0 -212
  388. package/src/components/AnnouncementPanel/ListContentContainer.tsx +0 -33
  389. package/src/components/BandChart/index.tsx +0 -282
  390. package/src/components/Button/Button.module.css +0 -165
  391. package/src/components/Button/Button.stories.ts +0 -132
  392. package/src/components/Button/Button.tsx +0 -55
  393. package/src/components/Button/button.css +0 -29
  394. package/src/components/ChartContainer/ChartContainer.css +0 -116
  395. package/src/components/ChartContainer/ChartContainer.stories.tsx +0 -159
  396. package/src/components/ChartContainer/ChartContainer.tsx +0 -155
  397. package/src/components/ChartContainer/index.ts +0 -1
  398. package/src/components/Charts/area-chart-admission/AreaChartAdmission.stories.tsx +0 -65
  399. package/src/components/Charts/area-chart-admission/AreaChartAdmission.tsx +0 -129
  400. package/src/components/Charts/area-chart-admission/content.json +0 -48
  401. package/src/components/Charts/area-chart-hospitalisation/AreaChartHospitalisation.stories.tsx +0 -141
  402. package/src/components/Charts/area-chart-hospitalisation/AreaChartHospitalisation.tsx +0 -262
  403. package/src/components/Charts/area-chart-hospitalisation/content.json +0 -55
  404. package/src/components/Charts/bar-chart/BarChart.stories.tsx +0 -50
  405. package/src/components/Charts/bar-chart/BarChart.tsx +0 -171
  406. package/src/components/Charts/bar-chart/content.json +0 -15
  407. package/src/components/Charts/boxplot-chart/BoxPlotChart.stories.tsx +0 -63
  408. package/src/components/Charts/boxplot-chart/BoxPlotChart.tsx +0 -114
  409. package/src/components/Charts/boxplot-chart/boxUtils.ts +0 -22
  410. package/src/components/Charts/boxplot-chart/content.json +0 -11
  411. package/src/components/Charts/mixed-chart/MixedChart.stories.tsx +0 -83
  412. package/src/components/Charts/mixed-chart/MixedChart.tsx +0 -681
  413. package/src/components/Charts/mixed-chart/content.json +0 -34
  414. package/src/components/Charts/sankey-adaptation/sankey.tsx +0 -70
  415. package/src/components/Charts/sankey-chart/SankeyChart.stories.tsx +0 -69
  416. package/src/components/Charts/sankey-chart/SankeyChart.tsx +0 -183
  417. package/src/components/Charts/sankey-chart/content.json +0 -15
  418. package/src/components/Charts/stacked-column/StackedColumn.stories.tsx +0 -72
  419. package/src/components/Charts/stacked-column/StackedColumn.tsx +0 -406
  420. package/src/components/Charts/stacked-column/content.json +0 -37
  421. package/src/components/Charts/stacked-column-one-hundred-percent/StackedColumnOneHundredPercent.stories.tsx +0 -43
  422. package/src/components/Charts/stacked-column-one-hundred-percent/StackedColumnOneHundredPercent.tsx +0 -75
  423. package/src/components/Charts/stacked-column-one-hundred-percent/content.json +0 -6
  424. package/src/components/CircularProgress/CircularProgress.css +0 -79
  425. package/src/components/CircularProgress/CircularProgress.stories.tsx +0 -251
  426. package/src/components/CircularProgress/CircularProgress.tsx +0 -101
  427. package/src/components/Configure.mdx +0 -369
  428. package/src/components/Confirmationpopup/ConfirmationPopup.module.css +0 -88
  429. package/src/components/Confirmationpopup/ConfirmationPopup.stories.tsx +0 -94
  430. package/src/components/Confirmationpopup/ConfirmationPopup.tsx +0 -47
  431. package/src/components/Confirmationpopup/useConfirmationPopup.ts +0 -48
  432. package/src/components/DayStatCard/DayStatCard.css +0 -50
  433. package/src/components/DayStatCard/DayStatCard.stories.tsx +0 -273
  434. package/src/components/DayStatCard/DayStatCard.tsx +0 -96
  435. package/src/components/DraggableSwitcher/DraggableSwitcherButton.tsx +0 -58
  436. package/src/components/DraggableSwitcher/context/useDraggableSwitcher.tsx +0 -45
  437. package/src/components/DropdownMenu/DropdownMenu.css +0 -100
  438. package/src/components/DropdownMenu/DropdownMenu.stories.tsx +0 -174
  439. package/src/components/DropdownMenu/DropdownMenu.tsx +0 -106
  440. package/src/components/DropdownMenu/index.ts +0 -1
  441. package/src/components/DynamicForm/DynamicFom.stories.ts +0 -773
  442. package/src/components/DynamicForm/DynamicForm.module.css +0 -468
  443. package/src/components/DynamicForm/DynamicForm.tsx +0 -224
  444. package/src/components/DynamicForm/tools/form-metadata.ts +0 -82
  445. package/src/components/DynamicForm/tools/validation.ts +0 -168
  446. package/src/components/DynamicInput/DynamicInput.module.css +0 -125
  447. package/src/components/DynamicInput/DynamicInput.stories.ts +0 -350
  448. package/src/components/DynamicInput/DynamicInput.tsx +0 -144
  449. package/src/components/DynamicInput/input/CheckboxInput.tsx +0 -41
  450. package/src/components/DynamicInput/input/ColorInput.tsx +0 -46
  451. package/src/components/DynamicInput/input/DateInput.tsx +0 -57
  452. package/src/components/DynamicInput/input/FileInput.tsx +0 -174
  453. package/src/components/DynamicInput/input/InputWrapper.tsx +0 -26
  454. package/src/components/DynamicInput/input/RadioInput.tsx +0 -46
  455. package/src/components/DynamicInput/input/RangeInput.tsx +0 -46
  456. package/src/components/DynamicInput/input/SelectInput.tsx +0 -75
  457. package/src/components/DynamicInput/input/TextInput.tsx +0 -101
  458. package/src/components/DynamicInput/input/TextareaInput.tsx +0 -47
  459. package/src/components/DynamicInput/input/assets/ColorInput.module.css +0 -48
  460. package/src/components/DynamicInput/input/assets/DateInput.module.css +0 -83
  461. package/src/components/DynamicInput/input/assets/FileInput.module.css +0 -133
  462. package/src/components/DynamicInput/input/assets/RangeInput.module.css +0 -169
  463. package/src/components/DynamicInput/input/assets/SelectInput.module.css +0 -95
  464. package/src/components/DynamicTable/AdvancedFilters.tsx +0 -196
  465. package/src/components/DynamicTable/ColumnSorter.tsx +0 -185
  466. package/src/components/DynamicTable/Pagination.tsx +0 -115
  467. package/src/components/DynamicTable/TableBody.tsx +0 -42
  468. package/src/components/DynamicTable/TableCell.tsx +0 -38
  469. package/src/components/DynamicTable/TableHeader.tsx +0 -39
  470. package/src/components/DynamicTable/TableRow.tsx +0 -56
  471. package/src/components/DynamicTable/TableauDynamic.stories.ts +0 -1014
  472. package/src/components/DynamicTable/TableauDynamique.module.css +0 -1294
  473. package/src/components/DynamicTable/TableauDynamique.tsx +0 -154
  474. package/src/components/DynamicTable/filters/BooleanFilter.tsx +0 -30
  475. package/src/components/DynamicTable/filters/DateFilter.tsx +0 -28
  476. package/src/components/DynamicTable/filters/DateRangeFilter.tsx +0 -51
  477. package/src/components/DynamicTable/filters/FilterRenderer.tsx +0 -117
  478. package/src/components/DynamicTable/filters/MultiSelectFilter.tsx +0 -59
  479. package/src/components/DynamicTable/filters/NumberFilter.tsx +0 -37
  480. package/src/components/DynamicTable/filters/OperatorFilter.tsx +0 -64
  481. package/src/components/DynamicTable/filters/SelectFilter.tsx +0 -69
  482. package/src/components/DynamicTable/filters/TextFilter.tsx +0 -39
  483. package/src/components/DynamicTable/hooks/useAsyncActions.ts +0 -36
  484. package/src/components/DynamicTable/hooks/useFilters.ts +0 -142
  485. package/src/components/DynamicTable/hooks/useTableData.ts +0 -216
  486. package/src/components/DynamicTable/tools/filterTypes.ts +0 -118
  487. package/src/components/DynamicTable/tools/tableConfig.ts +0 -96
  488. package/src/components/DynamicTable/tools/tableTypes.ts +0 -63
  489. package/src/components/EntryControl/EntryControl.module.css +0 -218
  490. package/src/components/EntryControl/EntryControl.stories.tsx +0 -71
  491. package/src/components/EntryControl/EntryControl.tsx +0 -117
  492. package/src/components/Grid/Grid.stories.tsx +0 -94
  493. package/src/components/Grid/Grid.tsx +0 -219
  494. package/src/components/Grid/grid.css +0 -285
  495. package/src/components/Header/Header.stories.tsx +0 -164
  496. package/src/components/Header/Header.tsx +0 -61
  497. package/src/components/Header/header.css +0 -61
  498. package/src/components/Header/index.ts +0 -1
  499. package/src/components/IconText/IconText..stories.tsx +0 -135
  500. package/src/components/IconText/IconText.css +0 -43
  501. package/src/components/IconText/IconText.tsx +0 -43
  502. package/src/components/IconText/index.ts +0 -1
  503. package/src/components/LanguageSelector/LanguageSelector.css +0 -31
  504. package/src/components/LanguageSelector/LanguageSelector.stories.tsx +0 -38
  505. package/src/components/LanguageSelector/LanguageSelector.tsx +0 -37
  506. package/src/components/Logo/Logo.css +0 -89
  507. package/src/components/Logo/Logo.stories.tsx +0 -79
  508. package/src/components/Logo/Logo.tsx +0 -22
  509. package/src/components/MetricsPanel/MetricsItem.tsx +0 -128
  510. package/src/components/MetricsPanel/MetricsPanel.module.css +0 -688
  511. package/src/components/MetricsPanel/MetricsPanel.stories.tsx +0 -692
  512. package/src/components/MetricsPanel/MetricsPanel.tsx +0 -220
  513. package/src/components/MetricsPanel/PanelHeader.tsx +0 -19
  514. package/src/components/MetricsPanel/SummaryCard.tsx +0 -61
  515. package/src/components/MetricsPanel/renderers/CompactRenderer.tsx +0 -148
  516. package/src/components/MetricsPanel/renderers/ImageCard.tsx +0 -62
  517. package/src/components/MetricsPanel/renderers/PertinenceCard.tsx +0 -55
  518. package/src/components/MetricsPanel/tools/MetricsPanelTypes.ts +0 -62
  519. package/src/components/MetricsPanel/tools/chooseDefaultRender.ts +0 -50
  520. package/src/components/MetricsPanel/tools/colorUtils.ts +0 -39
  521. package/src/components/ModuleHeader/ModuleHeader.css +0 -37
  522. package/src/components/ModuleHeader/ModuleHeader.stories.tsx +0 -37
  523. package/src/components/ModuleHeader/ModuleHeader.tsx +0 -42
  524. package/src/components/ModuleHeader/index.ts +0 -1
  525. package/src/components/ModuleSideBar/ModuleSideBar.css +0 -227
  526. package/src/components/ModuleSideBar/ModuleSideBar.stories.tsx +0 -40
  527. package/src/components/ModuleSideBar/ModuleSideBar.tsx +0 -155
  528. package/src/components/ModuleSideBar/index.ts +0 -1
  529. package/src/components/NavBar/NavBar.css +0 -58
  530. package/src/components/NavBar/NavBar.stories.tsx +0 -169
  531. package/src/components/NavBar/NavBar.tsx +0 -100
  532. package/src/components/NavBar/NavContext.tsx +0 -30
  533. package/src/components/NavItem/NavItem.css +0 -29
  534. package/src/components/NavItem/NavItem.tsx +0 -58
  535. package/src/components/NavItem/index.ts +0 -1
  536. package/src/components/Page/Dashboard.tsx +0 -93
  537. package/src/components/Page/Page.stories.ts +0 -33
  538. package/src/components/Page/Page.tsx +0 -73
  539. package/src/components/Page/page.css +0 -81
  540. package/src/components/PerformanceCard/PerformanceCard.module.css +0 -232
  541. package/src/components/PerformanceCard/PerformanceCard.stories.tsx +0 -441
  542. package/src/components/PerformanceCard/PerformanceCard.tsx +0 -198
  543. package/src/components/PerformanceCard/defaultHistogramRenderer.tsx +0 -32
  544. package/src/components/PerformanceCard/tools/types.ts +0 -50
  545. package/src/components/PerformanceCard/tools/usePerformanceCard.ts +0 -93
  546. package/src/components/PeriodRange/PeriodRange.module.css +0 -158
  547. package/src/components/PeriodRange/PeriodRange.stories.tsx +0 -66
  548. package/src/components/PeriodRange/PeriodRange.tsx +0 -130
  549. package/src/components/PeriodSelect/PeriodSelect.module.css +0 -64
  550. package/src/components/PeriodSelect/PeriodSelect.stories.tsx +0 -40
  551. package/src/components/PeriodSelect/PeriodSelect.tsx +0 -48
  552. package/src/components/PeriodSelect/index.ts +0 -1
  553. package/src/components/ScrollableHorizontale/ScrollableHorizontale.css +0 -40
  554. package/src/components/ScrollableHorizontale/ScrollableHorizontale.stories.tsx +0 -133
  555. package/src/components/ScrollableHorizontale/ScrollableHorizontale.tsx +0 -29
  556. package/src/components/SearchBar/SearchBar.css +0 -40
  557. package/src/components/SearchBar/SearchBar.stories.tsx +0 -36
  558. package/src/components/SearchBar/SearchBar.tsx +0 -30
  559. package/src/components/SearchBar/index.ts +0 -1
  560. package/src/components/SectionTitle/SectionTitle.css +0 -21
  561. package/src/components/SectionTitle/SectionTitle.stories.tsx +0 -39
  562. package/src/components/SectionTitle/SectionTitle.tsx +0 -18
  563. package/src/components/SelectFilter/SelectFilter.module.css +0 -249
  564. package/src/components/SelectFilter/SelectFilter.stories.tsx +0 -321
  565. package/src/components/SelectFilter/SelectFilter.tsx +0 -219
  566. package/src/components/SelectFilter/types.ts +0 -19
  567. package/src/components/SideComponent/PatientEditor.tsx +0 -64
  568. package/src/components/SideComponent/SideComponent.css +0 -179
  569. package/src/components/SideComponent/SideComponent.stories.tsx +0 -547
  570. package/src/components/SideComponent/SideComponent.tsx +0 -243
  571. package/src/components/SideComponent/hooks/useBodyScrollLock.ts +0 -15
  572. package/src/components/SideComponent/portal.ts +0 -11
  573. package/src/components/SubNavBar/SubNavBar.tsx +0 -41
  574. package/src/components/SubNavBar/index.ts +0 -1
  575. package/src/components/Switcher/Switcher.css +0 -65
  576. package/src/components/Switcher/Switcher.stories.tsx +0 -153
  577. package/src/components/Switcher/Switcher.tsx +0 -83
  578. package/src/components/Switcher/index.ts +0 -1
  579. package/src/components/Title/Title.stories.tsx +0 -18
  580. package/src/components/Title/Title.tsx +0 -26
  581. package/src/components/Title/index.ts +0 -1
  582. package/src/components/TranslationKey/TranslationKey.css +0 -272
  583. package/src/components/TranslationKey/TranslationKey.stories.tsx +0 -50
  584. package/src/components/TranslationKey/TranslationKey.tsx +0 -266
  585. package/src/components/TranslationKey/index.ts +0 -1
  586. package/src/components/TrendItem/TrendItem.css +0 -36
  587. package/src/components/TrendItem/TrendItem.stories.tsx +0 -276
  588. package/src/components/TrendItem/TrendItem.tsx +0 -46
  589. package/src/components/TrendItem/index.ts +0 -1
  590. package/src/components/TrendList/TrendList.css +0 -16
  591. package/src/components/TrendList/TrendList.stories.tsx +0 -337
  592. package/src/components/TrendList/TrendList.tsx +0 -72
  593. package/src/components/TrendList/index.ts +0 -1
  594. package/src/components/theme/ThemeSwitcherButton.tsx +0 -64
  595. package/src/components/theme/context/ThemeContext.tsx +0 -61
  596. package/src/components/theme/context/useThemeSwitcher.ts +0 -18
  597. package/src/components/theme/index.ts +0 -1
  598. package/src/index.css +0 -68
  599. package/src/main.tsx +0 -10
  600. package/src/vite-env.d.ts +0 -1
  601. package/tsconfig.app.json +0 -27
  602. package/tsconfig.json +0 -4
  603. package/tsconfig.node.json +0 -25
  604. package/vite.config.ts +0 -43
  605. package/vitest.shims.d.ts +0 -1
  606. /package/{public → dist}/vite.svg +0 -0
@@ -1,1014 +0,0 @@
1
- import React, { useState } from 'react';
2
- // eslint-disable-next-line storybook/no-renderer-packages
3
- import type { Meta, StoryObj } from '@storybook/react';
4
- import TableauDynamique from './TableauDynamique';
5
- import type { TableColumn, TableRowData } from './tools/tableTypes';
6
- import type { FilterConfig, AppliedFilter } from './tools/filterTypes';
7
- import {
8
- User,
9
- Mail,
10
- Calendar,
11
- Banknote,
12
- LogIn,
13
- Clock,
14
- Stethoscope,
15
- Microscope,
16
- Image,
17
- FileText,
18
- MessageCircle,
19
- LogOut,
20
- } from 'lucide-react';
21
-
22
- /**
23
- * Extrait TSX principal (affiché dans "Show code") — prêt à copier/coller
24
- * Contient une demo multi-tables + démonstrations de executeOnApply / fonctions-as-value
25
- */
26
- const exampleUsage = `import React, { useState } from 'react';
27
- import TableauDynamique from './TableauDynamique';
28
- import type { TableColumn, TableRowData } from './tools/tableTypes';
29
- import type { FilterConfig } from './tools/filterTypes';
30
-
31
- /* Données d'exemple */
32
- const data = [
33
- { id: 'u1', data: { name: 'Alice Martin', email: 'alice@example.com', age: 34, status: 'Actif', balance: 1234.56, joinDate: '2022-01-12' } },
34
- { id: 'u2', data: { name: 'Bob Durand', email: 'bob@example.com', age: 28, status: 'Inactif', balance: 0, joinDate: '2023-08-05' } },
35
- ];
36
-
37
- /* Colonnes d'exemple */
38
- const columns = [
39
- { id: 'name', label: 'Nom' },
40
- { id: 'email', label: 'Email' },
41
- { id: 'age', label: 'Âge' },
42
- { id: 'status', label: 'Statut' },
43
- { id: 'balance', label: 'Solde' },
44
- { id: 'joinDate', label: 'Date d\\'inscription' },
45
- ];
46
-
47
- /* Exemple 1 — executeOnApply (appelle "backend" asynchrone au moment d'Appliquer) */
48
- const executeOnApplyFilterConfig = [
49
- {
50
- id: 'customerLookup',
51
- type: 'text',
52
- label: 'Client (recherche enrichie)',
53
- placeholder: 'Tapez un nom puis Appliquer...',
54
- // simulate API lookup on apply
55
- executeOnApply: async (value) => {
56
- if (!value) return value;
57
- // simulation d'appel backend
58
- await new Promise((r) => setTimeout(r, 700));
59
- // retourne un id "résolu" depuis la saisie
60
- return { resolvedCustomerId: 'c-' + String(value).toLowerCase().replace(/\\s+/g, '-') };
61
- },
62
- },
63
- ];
64
-
65
- /* Exemple 2 — valeur par défaut fournie comme fonction async
66
- (useFilters initialise tempFilters avec defaultValue et apply() l'exécute)
67
- */
68
- const functionValueFilterConfig = [
69
- {
70
- id: 'autoIds',
71
- type: 'multiselect',
72
- label: 'IDs dynamiques',
73
- // defaultValue est une fonction async — lorsqu'on cliquera Appliquer, la fonction sera exécutée
74
- defaultValue: async (tempFilters) => {
75
- // peut utiliser tempFilters pour décider du résultat
76
- await new Promise((r) => setTimeout(r, 600));
77
- return ['id-42', 'id-99'];
78
- },
79
- },
80
- ];
81
-
82
- export default function DemoExecuteExamples() {
83
- const [applied, setApplied] = useState([]);
84
-
85
- return (
86
- <div style={{ padding: 16, display: 'grid', gap: 24 }}>
87
- <section>
88
- <h4>executeOnApply (exécution back-end au moment d'Appliquer)</h4>
89
- <TableauDynamique
90
- columns={columns}
91
- data={data}
92
- filterConfig={executeOnApplyFilterConfig}
93
- filterable
94
- columnFilterable
95
- filtersControlled={false}
96
- onApplyFilters={(filters) => {
97
- console.log('Filters applied (executeOnApply):', filters);
98
- setApplied(filters);
99
- }}
100
- pagination={{ pageSize: 5, currentPage: 1 }}
101
- />
102
- </section>
103
-
104
- <section>
105
- <h4>defaultValue as function (valeur fournie par fonction async)</h4>
106
- <TableauDynamique
107
- columns={columns}
108
- data={data}
109
- filterConfig={functionValueFilterConfig}
110
- filterable
111
- columnFilterable
112
- filtersControlled={false}
113
- onApplyFilters={(filters) => {
114
- console.log('Filters applied (function defaultValue):', filters);
115
- }}
116
- pagination={{ pageSize: 5, currentPage: 1 }}
117
- />
118
- </section>
119
- </div>
120
- );
121
- }
122
- `;
123
-
124
- /* -----------------------
125
- Meta & configuration
126
- ----------------------- */
127
- const meta: Meta<typeof TableauDynamique> = {
128
- title: 'Components/TableauDynamique',
129
- component: TableauDynamique,
130
- parameters: {
131
- layout: 'padded',
132
- docs: {
133
- source: {
134
- language: 'tsx',
135
- code: exampleUsage,
136
- },
137
- },
138
- },
139
- tags: ['autodocs'],
140
- argTypes: {
141
- filterable: { control: 'boolean' },
142
- columnFilterable: { control: 'boolean' },
143
- },
144
- };
145
-
146
- export default meta;
147
- type Story = StoryObj<typeof TableauDynamique>;
148
-
149
- /* -----------------------
150
- Helpers & données (identiques à ce que tu avais)
151
- ----------------------- */
152
- const createData = (count: number): TableRowData[] =>
153
- Array.from({ length: count }, (_, i) => ({
154
- id: `id-${i}`,
155
- data: {
156
- name: `Utilisateur ${i + 1}`,
157
- email: `user${i + 1}@example.com`,
158
- age: Math.floor(Math.random() * 50) + 18,
159
- status: i % 3 === 0 ? 'Actif' : i % 3 === 1 ? 'Inactif' : 'En attente',
160
- balance: Math.round(Math.random() * 10000) / 100,
161
- joinDate: new Date(Date.now() - Math.random() * 1e10).toISOString().split('T')[0],
162
- },
163
- }));
164
-
165
- const renderStatusBadge = (value: unknown) => {
166
- const status = (value ?? '').toString();
167
- const baseStyle: React.CSSProperties = {
168
- display: 'inline-block',
169
- padding: '4px 8px',
170
- borderRadius: 999,
171
- fontSize: '12px',
172
- fontWeight: 700,
173
- minWidth: '72px',
174
- textAlign: 'center',
175
- boxShadow: '0 1px 2px rgba(0,0,0,0.05)',
176
- };
177
-
178
- let style: React.CSSProperties = {};
179
- switch (status) {
180
- case 'Actif':
181
- style = { background: 'linear-gradient(135deg,#10b981,#059669)', color: '#fff' };
182
- break;
183
- case 'Inactif':
184
- style = { background: 'linear-gradient(135deg,#ef4444,#dc2626)', color: '#fff' };
185
- break;
186
- case 'En attente':
187
- style = { background: 'linear-gradient(135deg,#f59e0b,#f97316)', color: '#fff' };
188
- break;
189
- default:
190
- style = { background: '#e5e7eb', color: '#374151' };
191
- }
192
-
193
- return React.createElement('span', { style: { ...baseStyle, ...style } }, status || '--');
194
- };
195
-
196
- const StepCell = ({
197
- icon: Icon,
198
- time,
199
- variant,
200
- }: {
201
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
202
- icon: any;
203
- time?: string;
204
- variant?: string;
205
- noLeft?: boolean;
206
- noRight?: boolean;
207
- }) => {
208
- const getVariantStyle = () => {
209
- switch (variant) {
210
- case 'admissions':
211
- return { background: 'linear-gradient(135deg,#2ecc71,#28a745)', color: '#fff' };
212
- case 'tri':
213
- return { background: 'linear-gradient(135deg,#f6d365,#fda085)', color: '#fff' };
214
- case 'examen':
215
- return { background: 'linear-gradient(135deg,#6f86ff,#8b5cf6)', color: '#fff' };
216
- case 'labo':
217
- return { background: 'linear-gradient(135deg,#7dd3fc,#38bdf8)', color: '#fff' };
218
- case 'radio':
219
- return { background: 'linear-gradient(135deg,#ffb86b,#ff7a59)', color: '#fff' };
220
- case 'diag':
221
- return { background: 'linear-gradient(135deg,#ffd6a5,#ffadad)', color: '#fff' };
222
- case 'sortie':
223
- return { background: 'linear-gradient(135deg,#94d82d,#51cf66)', color: '#fff' };
224
- default:
225
- return { background: '#e5e7eb', color: '#374151' };
226
- }
227
- };
228
-
229
- return React.createElement(
230
- 'div',
231
- {
232
- style: {
233
- display: 'flex',
234
- flexDirection: 'column',
235
- alignItems: 'center',
236
- gap: '6px',
237
- minWidth: '60px',
238
- whiteSpace: 'nowrap',
239
- position: 'relative',
240
- },
241
- },
242
- React.createElement(
243
- 'div',
244
- {
245
- style: {
246
- width: '40px',
247
- height: '40px',
248
- borderRadius: '50%',
249
- display: 'grid',
250
- placeItems: 'center',
251
- fontSize: '18px',
252
- boxShadow: '0 3px 8px rgba(15, 23, 42, 0.06)',
253
- position: 'relative',
254
- zIndex: 2,
255
- ...getVariantStyle(),
256
- },
257
- },
258
- React.createElement(Icon, { 'aria-hidden': 'true' })
259
- ),
260
- React.createElement(
261
- 'div',
262
- { style: { fontSize: '12px', color: '#1370a6', fontWeight: '600' } },
263
- time || '--:--'
264
- )
265
- );
266
- };
267
-
268
- const basicColumns: TableColumn<unknown>[] = [
269
- { id: 'name', label: 'Nom', width: 200, sortable: true },
270
- { id: 'email', label: 'Email', width: 250, sortable: true },
271
- { id: 'age', label: 'Âge', width: 100, sortable: true, align: 'center' },
272
- {
273
- id: 'status',
274
- label: 'Statut',
275
- width: 120,
276
- sortable: true,
277
- render: (value: unknown) => renderStatusBadge(value),
278
- },
279
- {
280
- id: 'balance',
281
- label: 'Solde',
282
- width: 120,
283
- sortable: true,
284
- align: 'right',
285
- type: 'currency',
286
- render: (value: unknown) =>
287
- React.createElement(
288
- 'div',
289
- { style: { textAlign: 'right' } },
290
- new Intl.NumberFormat('fr-FR', { style: 'currency', currency: 'EUR' }).format(Number(value))
291
- ),
292
- },
293
- { id: 'joinDate', label: "Date d'inscription", width: 150, sortable: true, type: 'date' },
294
- ];
295
-
296
- const iconColumns: TableColumn<unknown>[] = [
297
- {
298
- id: 'name',
299
- label: 'Nom',
300
- width: 200,
301
- sortable: true,
302
- render: (value) =>
303
- React.createElement(
304
- 'div',
305
- { style: { display: 'flex', alignItems: 'center', gap: '8px' } },
306
- React.createElement(User, { 'aria-hidden': 'true' }),
307
- value
308
- ),
309
- },
310
- {
311
- id: 'email',
312
- label: 'Email',
313
- width: 250,
314
- sortable: true,
315
- render: (value) =>
316
- React.createElement(
317
- 'div',
318
- { style: { display: 'flex', alignItems: 'center', gap: '8px' } },
319
- React.createElement(Mail, { 'aria-hidden': 'true' }),
320
- value
321
- ),
322
- },
323
- {
324
- id: 'joinDate',
325
- label: "Date d'inscription",
326
- width: 150,
327
- sortable: true,
328
- render: (value) =>
329
- React.createElement(
330
- 'div',
331
- { style: { display: 'flex', alignItems: 'center', gap: '8px' } },
332
- React.createElement(Calendar, { 'aria-hidden': 'true' }),
333
- new Date(value).toLocaleDateString()
334
- ),
335
- },
336
- {
337
- id: 'balance',
338
- label: 'Solde',
339
- width: 120,
340
- sortable: true,
341
- align: 'right',
342
- render: (value) =>
343
- React.createElement(
344
- 'div',
345
- {
346
- style: { display: 'flex', alignItems: 'center', gap: '8px', justifyContent: 'flex-end' },
347
- },
348
- React.createElement(Banknote, { 'aria-hidden': 'true' }),
349
- new Intl.NumberFormat('fr-FR', {
350
- style: 'currency',
351
- currency: 'EUR',
352
- }).format(Number(value))
353
- ),
354
- },
355
- {
356
- id: 'status',
357
- label: 'Statut',
358
- width: 120,
359
- sortable: true,
360
- render: (value: unknown) => renderStatusBadge(value),
361
- },
362
- ];
363
-
364
- const getRowStyle = () => ({
365
- backgroundColor: '#f0fff4',
366
- accentColor: '#22c55e',
367
- });
368
-
369
- const TableWrapper: React.FC<{
370
- columns: TableColumn<unknown>[];
371
- data: TableRowData[];
372
- filterable?: boolean;
373
- columnFilterable?: boolean;
374
- filterConfig?: FilterConfig[];
375
- }> = (args) => {
376
- const [searchTerm, setSearchTerm] = useState('');
377
- const [appliedFilters, setAppliedFilters] = useState<AppliedFilter[]>([]);
378
-
379
- return React.createElement(TableauDynamique, {
380
- columns: args.columns,
381
- data: args.data,
382
- filterable: args.filterable ?? false,
383
- columnFilterable: args.columnFilterable ?? false,
384
- searchTerm,
385
- onSearch: setSearchTerm,
386
- pagination: { pageSize: 5, currentPage: 1 },
387
- filterConfig: args.filterConfig,
388
- externalFilters: appliedFilters,
389
- onFiltersChange: setAppliedFilters,
390
- filtersControlled: true,
391
- getRowStyle,
392
- });
393
- };
394
-
395
- const basicFilterConfig: FilterConfig[] = [
396
- { id: 'name', type: 'text', label: 'Nom', placeholder: 'Filtrer par nom...' },
397
- { id: 'email', type: 'text', label: 'Email', placeholder: 'Filtrer par email...' },
398
- { id: 'age', type: 'number', label: 'Âge', placeholder: 'Filtrer par âge...', min: 18, max: 100 },
399
- {
400
- id: 'status',
401
- type: 'select',
402
- label: 'Statut',
403
- options: [
404
- { value: 'Actif', label: 'Actif' },
405
- { value: 'Inactif', label: 'Inactif' },
406
- { value: 'En attente', label: 'En attente' },
407
- ],
408
- },
409
- { id: 'balance', type: 'number', label: 'Solde', placeholder: 'Filtrer par solde...' },
410
- { id: 'joinDate', type: 'date', label: "Date d'inscription" },
411
- ];
412
-
413
- export const BasicTable: Story = {
414
- args: { filterable: true, columnFilterable: true },
415
- render: (args) =>
416
- React.createElement(TableWrapper, {
417
- columns: basicColumns,
418
- data: createData(15),
419
- filterable: args.filterable,
420
- columnFilterable: args.columnFilterable,
421
- filterConfig: basicFilterConfig,
422
- }),
423
- parameters: {
424
- docs: {
425
- source: {
426
- code: `
427
- import React from 'react';
428
- import TableauDynamique from './TableauDynamique';
429
- import { basicColumns, createData, basicFilterConfig } from './__stories__/helpers';
430
-
431
- function Example() {
432
- return <TableauDynamique columns={basicColumns} data={createData(15)} filterConfig={basicFilterConfig} filterable columnFilterable />;
433
- }
434
- export default Example;
435
- `.trim(),
436
- },
437
- },
438
- },
439
- };
440
-
441
- export const TableWithIcons: Story = {
442
- args: { filterable: true, columnFilterable: true },
443
- render: (args) =>
444
- React.createElement(TableWrapper, {
445
- columns: iconColumns,
446
- data: createData(10),
447
- filterable: args.filterable,
448
- columnFilterable: args.columnFilterable,
449
- filterConfig: basicFilterConfig,
450
- }),
451
- parameters: {
452
- docs: {
453
- source: {
454
- code: `
455
- import React from 'react';
456
- import TableauDynamique from './TableauDynamique';
457
- import { iconColumns, createData, basicFilterConfig } from './__stories__/helpers';
458
-
459
- function Example() {
460
- return <TableauDynamique columns={iconColumns} data={createData(10)} filterConfig={basicFilterConfig} filterable columnFilterable />;
461
- }
462
- export default Example;
463
- `.trim(),
464
- },
465
- },
466
- },
467
- };
468
-
469
- export const EmptyTable: Story = {
470
- args: { filterable: true, columnFilterable: true },
471
- render: (args) =>
472
- React.createElement(TableWrapper, {
473
- columns: basicColumns,
474
- data: [],
475
- filterable: args.filterable,
476
- columnFilterable: args.columnFilterable,
477
- filterConfig: basicFilterConfig,
478
- }),
479
- };
480
-
481
- const medicalFilterConfig: FilterConfig[] = [
482
- { id: 'iep', type: 'text', label: 'IEP', placeholder: 'Filtrer par IEP...' },
483
- { id: 'ddn', type: 'text', label: 'DDN', placeholder: 'Filtrer par date de naissance...' },
484
- {
485
- id: 'genre',
486
- type: 'select',
487
- label: 'Genre',
488
- options: [
489
- { value: 'M', label: 'Masculin' },
490
- { value: 'F', label: 'Féminin' },
491
- ],
492
- },
493
- { id: 'motif', type: 'text', label: 'Motif', placeholder: 'Filtrer par motif...' },
494
- {
495
- id: 'gravite',
496
- type: 'select',
497
- label: 'Gravité',
498
- options: [
499
- { value: 'Élevée', label: 'Élevée' },
500
- { value: 'Moyenne', label: 'Moyenne' },
501
- { value: 'Modérée', label: 'Modérée' },
502
- ],
503
- },
504
- { id: 'urgentiste', type: 'text', label: 'Urgentiste', placeholder: 'Filtrer par urgentiste...' },
505
- ];
506
-
507
- export const MedicalTable: Story = {
508
- args: { filterable: true, columnFilterable: true },
509
- render: (args) => {
510
- const medicalData: TableRowData[] = [
511
- {
512
- id: '1',
513
- data: {
514
- iep: '12345',
515
- ddn: '01/01/1980 (43)',
516
- genre: 'M',
517
- motif: 'Douleur thoracique',
518
- gravite: 'Élevée',
519
- urgentiste: 'Dr. Martin',
520
- admissions: '08:30',
521
- tri: '08:45',
522
- examen: '09:15',
523
- labo: '09:45',
524
- radio: '10:30',
525
- diag: '11:00',
526
- avis: ['11:30', '12:00'],
527
- sortie: '13:15',
528
- status: 'Actif',
529
- },
530
- },
531
- {
532
- id: '2',
533
- data: {
534
- iep: '67890',
535
- ddn: '15/05/1995 (28)',
536
- genre: 'F',
537
- motif: 'Fracture bras',
538
- gravite: 'Moyenne',
539
- urgentiste: 'Dr. Dupont',
540
- admissions: '09:15',
541
- tri: '09:30',
542
- examen: '10:00',
543
- labo: null,
544
- radio: '10:45',
545
- diag: '11:30',
546
- avis: ['12:15'],
547
- sortie: '13:45',
548
- status: 'Inactif',
549
- },
550
- },
551
- {
552
- id: '3',
553
- data: {
554
- iep: '24680',
555
- ddn: '20/11/1972 (51)',
556
- genre: 'M',
557
- motif: 'Malaise',
558
- gravite: 'Modérée',
559
- urgentiste: 'Dr. Leroy',
560
- admissions: '10:20',
561
- tri: '10:35',
562
- examen: '11:05',
563
- labo: '11:40',
564
- radio: null,
565
- diag: '12:20',
566
- avis: ['13:00'],
567
- sortie: '14:30',
568
- status: 'En attente',
569
- },
570
- },
571
- ];
572
-
573
- const medicalColumns: TableColumn<unknown>[] = [
574
- { id: 'iep', label: 'IEP', width: 100, sortable: true },
575
- { id: 'ddn', label: 'DDN (AGE)', width: 120, sortable: true },
576
- { id: 'genre', label: 'GENRE', width: 80, sortable: true },
577
- { id: 'motif', label: 'MOTIF', width: 150, sortable: true },
578
- { id: 'gravite', label: 'GRAVITE', width: 100, sortable: true },
579
- { id: 'urgentiste', label: 'URGENTISTE', width: 150, sortable: true },
580
- {
581
- id: 'status',
582
- label: 'STATUT',
583
- width: 120,
584
- sortable: true,
585
- render: (v: unknown) => renderStatusBadge(v),
586
- },
587
- {
588
- id: 'admissions',
589
- label: 'ADMISSIONS',
590
- width: 120,
591
- sortable: true,
592
- render: (v) =>
593
- React.createElement(StepCell, {
594
- icon: LogIn,
595
- time: v,
596
- variant: 'admissions',
597
- noLeft: true,
598
- }),
599
- },
600
- {
601
- id: 'tri',
602
- label: 'TRI',
603
- width: 80,
604
- sortable: true,
605
- render: (v) => React.createElement(StepCell, { icon: Clock, time: v, variant: 'tri' }),
606
- },
607
- {
608
- id: 'examen',
609
- label: 'EXAMEN',
610
- width: 80,
611
- render: (v) =>
612
- React.createElement(StepCell, { icon: Stethoscope, time: v, variant: 'examen' }),
613
- },
614
- {
615
- id: 'labo',
616
- label: 'LABO',
617
- width: 80,
618
- sortable: true,
619
- render: (v) =>
620
- React.createElement(StepCell, { icon: Microscope, time: v, variant: 'labo' }),
621
- },
622
- {
623
- id: 'radio',
624
- label: 'RADIO',
625
- width: 80,
626
- render: (v) => React.createElement(StepCell, { icon: Image, time: v, variant: 'radio' }),
627
- },
628
- {
629
- id: 'diag',
630
- label: 'DIAG',
631
- width: 80,
632
- sortable: true,
633
- render: (v) => React.createElement(StepCell, { icon: FileText, time: v, variant: 'diag' }),
634
- },
635
- {
636
- id: 'avis',
637
- label: 'AVIS',
638
- width: 160,
639
- sortable: true,
640
- render: (value) => {
641
- if (!value || !Array.isArray(value)) return null;
642
- return React.createElement(
643
- 'div',
644
- {
645
- style: {
646
- display: 'flex',
647
- gap: '8px',
648
- alignItems: 'center',
649
- whiteSpace: 'nowrap',
650
- overflowX: 'auto',
651
- padding: '6px 0',
652
- },
653
- },
654
- ...value.map((item: string, index: number) =>
655
- React.createElement(
656
- 'div',
657
- {
658
- key: index,
659
- style: {
660
- display: 'flex',
661
- flexDirection: 'column',
662
- alignItems: 'center',
663
- minWidth: '46px',
664
- gap: '6px',
665
- },
666
- },
667
- React.createElement(
668
- 'div',
669
- {
670
- style: {
671
- width: '30px',
672
- height: '30px',
673
- borderRadius: '50%',
674
- display: 'grid',
675
- placeItems: 'center',
676
- fontSize: '14px',
677
- background: 'linear-gradient(135deg,#6b46ff,#8b5cf6)',
678
- color: '#fff',
679
- },
680
- },
681
- React.createElement(MessageCircle, { 'aria-hidden': 'true' })
682
- ),
683
- React.createElement('div', { style: { fontSize: '11px', color: '#1370a6' } }, item)
684
- )
685
- )
686
- );
687
- },
688
- },
689
- {
690
- id: 'sortie',
691
- label: 'SORTIE',
692
- width: 100,
693
- sortable: true,
694
- render: (v) =>
695
- React.createElement(StepCell, {
696
- icon: LogOut,
697
- time: v,
698
- variant: 'sortie',
699
- noRight: true,
700
- }),
701
- },
702
- ];
703
-
704
- return React.createElement(TableWrapper, {
705
- columns: medicalColumns,
706
- data: medicalData,
707
- filterable: args.filterable,
708
- columnFilterable: args.columnFilterable,
709
- filterConfig: medicalFilterConfig,
710
- });
711
- },
712
- };
713
-
714
- export const TableWithActions: Story = {
715
- args: { filterable: false, columnFilterable: false },
716
- render: (args) => {
717
- const actionColumns: TableColumn<unknown>[] = [
718
- ...basicColumns,
719
- {
720
- id: 'actions',
721
- label: 'Actions',
722
- width: 120,
723
- align: 'center',
724
- render: (_: unknown, row: unknown) =>
725
- React.createElement(
726
- 'div',
727
- { style: { display: 'flex', gap: '8px', justifyContent: 'center' } },
728
- React.createElement(
729
- 'button',
730
- {
731
- onClick: () => console.log('Edit:', row),
732
- style: {
733
- padding: '4px 8px',
734
- border: '1px solid #3b82f6',
735
- background: 'white',
736
- color: '#3b82f6',
737
- borderRadius: '4px',
738
- cursor: 'pointer',
739
- },
740
- },
741
- 'Modifier'
742
- ),
743
- React.createElement(
744
- 'button',
745
- {
746
- onClick: () => console.log('Delete:', row),
747
- style: {
748
- padding: '4px 8px',
749
- border: '1px solid #ef4444',
750
- background: 'white',
751
- color: '#ef4444',
752
- borderRadius: '4px',
753
- cursor: 'pointer',
754
- },
755
- },
756
- 'Supprimer'
757
- )
758
- ),
759
- },
760
- ];
761
-
762
- return React.createElement(TableWrapper, {
763
- columns: actionColumns,
764
- data: createData(8),
765
- filterable: args.filterable,
766
- columnFilterable: args.columnFilterable,
767
- filterConfig: basicFilterConfig,
768
- });
769
- },
770
- };
771
-
772
- const allFilterConfig: FilterConfig[] = [
773
- { id: 'text-filter', type: 'text', label: 'Filtre texte', placeholder: 'Rechercher...' },
774
- {
775
- id: 'number-filter',
776
- type: 'number',
777
- label: 'Filtre numérique',
778
- placeholder: 'Entrez un nombre...',
779
- min: 0,
780
- max: 100,
781
- step: 1,
782
- },
783
- {
784
- id: 'select-filter',
785
- type: 'select',
786
- label: 'Filtre sélect',
787
- options: [
788
- { value: 'option1', label: 'Option 1' },
789
- { value: 'option2', label: 'Option 2' },
790
- { value: 'option3', label: 'Option 3' },
791
- ],
792
- },
793
- {
794
- id: 'operator-filter',
795
- type: 'operator',
796
- label: 'Filtre avec opérateurs',
797
- operators: [
798
- { value: '=', label: 'Égal à' },
799
- { value: '>', label: 'Supérieur à' },
800
- { value: '<', label: 'Inférieur à' },
801
- { value: '>=', label: 'Supérieur ou égal' },
802
- { value: '<=', label: 'Inférieur ou égal' },
803
- ],
804
- },
805
- { id: 'date-filter', type: 'date', label: 'Filtre date' },
806
- { id: 'daterange-filter', type: 'daterange', label: 'Plage de dates' },
807
- { id: 'boolean-filter', type: 'boolean', label: 'Filtre booléen' },
808
- ];
809
-
810
- export const AllFilterTypes: Story = {
811
- args: { filterable: true, columnFilterable: true },
812
- render: (args) => {
813
- const [searchTerm, setSearchTerm] = useState('');
814
- const [appliedFilters, setAppliedFilters] = useState<AppliedFilter[]>([]);
815
-
816
- return React.createElement(TableauDynamique, {
817
- columns: basicColumns,
818
- data: createData(15),
819
- filterable: args.filterable,
820
- columnFilterable: args.columnFilterable ?? false,
821
- searchTerm,
822
- onSearch: setSearchTerm,
823
- pagination: { pageSize: 5, currentPage: 1 },
824
- filterConfig: allFilterConfig,
825
- externalFilters: appliedFilters,
826
- onFiltersChange: setAppliedFilters,
827
- filtersControlled: true,
828
- getRowStyle,
829
- });
830
- },
831
- };
832
-
833
- const asyncOptions = async (): Promise<{ value: string; label: string }[]> =>
834
- new Promise((resolve) => {
835
- setTimeout(() => {
836
- resolve([
837
- { value: 'async1', label: 'Option asynchrone 1' },
838
- { value: 'async2', label: 'Option asynchrone 2' },
839
- { value: 'async3', label: 'Option asynchrone 3' },
840
- ]);
841
- }, 1000);
842
- });
843
-
844
- const asyncFilterConfig: FilterConfig[] = [
845
- { id: 'async-select', type: 'select', label: 'Select asynchrone', options: [], asyncOptions },
846
- ];
847
-
848
- export const AsyncOptionsFilter: Story = {
849
- args: { filterable: true, columnFilterable: true },
850
- render: (args) => {
851
- const [searchTerm, setSearchTerm] = useState('');
852
- const [appliedFilters, setAppliedFilters] = useState<AppliedFilter[]>([]);
853
-
854
- return React.createElement(TableauDynamique, {
855
- columns: basicColumns,
856
- data: createData(10),
857
- filterable: args.filterable,
858
- columnFilterable: args.columnFilterable ?? false,
859
- searchTerm,
860
- onSearch: setSearchTerm,
861
- pagination: { pageSize: 5, currentPage: 1 },
862
- filterConfig: asyncFilterConfig,
863
- externalFilters: appliedFilters,
864
- onFiltersChange: setAppliedFilters,
865
- filtersControlled: true,
866
- getRowStyle,
867
- });
868
- },
869
- parameters: {
870
- docs: {
871
- source: {
872
- code: `
873
- const asyncFilterConfig = [
874
- { id: 'async-select', type: 'select', label: 'Select asynchrone', options: [], asyncOptions: async () => {
875
- // fetch les options au chargement du filtre
876
- const res = await fetch('/api/options');
877
- return res.json();
878
- } },
879
- ];
880
- `.trim(),
881
- },
882
- },
883
- },
884
- };
885
-
886
- export const WithColumnFilters: Story = {
887
- args: { filterable: true, columnFilterable: true },
888
- render: (args) => {
889
- const [searchTerm, setSearchTerm] = useState('');
890
- const [appliedFilters, setAppliedFilters] = useState<AppliedFilter[]>([]);
891
-
892
- return React.createElement(TableauDynamique, {
893
- columns: basicColumns,
894
- data: createData(20),
895
- filterable: args.filterable,
896
- columnFilterable: args.columnFilterable ?? false,
897
- searchTerm,
898
- onSearch: setSearchTerm,
899
- pagination: { pageSize: 5, currentPage: 1 },
900
- filterConfig: basicFilterConfig,
901
- externalFilters: appliedFilters,
902
- onFiltersChange: setAppliedFilters,
903
- filtersControlled: true,
904
- getRowStyle,
905
- });
906
- },
907
- };
908
-
909
- /* -----------------------
910
- --- NOUVEAU : story démontrant executeOnApply et defaultValue function
911
- ----------------------- */
912
- const executeOnApplyFilterConfig: FilterConfig[] = [
913
- {
914
- id: 'customerLookup',
915
- type: 'text',
916
- label: 'Client (recherche enrichie)',
917
- placeholder: 'Tapez un nom puis Appliquer...',
918
- executeOnApply: async (value) => {
919
- if (!value) return value;
920
- // simulate API call
921
- await new Promise((r) => setTimeout(r, 700));
922
- return { resolvedCustomerId: 'c-' + String(value).toLowerCase().replace(/\s+/g, '-') };
923
- },
924
- },
925
- ];
926
-
927
- const functionValueFilterConfig: FilterConfig[] = [
928
- {
929
- id: 'autoIds',
930
- type: 'multiselect',
931
- label: 'IDs dynamiques',
932
- defaultValue: async () => {
933
- // use tempFilters if needed; simulate backend
934
- await new Promise((r) => setTimeout(r, 600));
935
- return ['id-42', 'id-99'];
936
- },
937
- },
938
- ];
939
-
940
- export const ExecuteOnApplyFilter: Story = {
941
- args: { filterable: true, columnFilterable: true },
942
- render: (args) => {
943
- const [applied, setApplied] = useState<AppliedFilter[]>([]);
944
-
945
- return React.createElement('div', { style: { padding: 12 } }, [
946
- React.createElement('h3', { key: 'h' }, 'executeOnApply & function defaultValue example'),
947
- React.createElement(TableauDynamique, {
948
- key: 't1',
949
- columns: basicColumns,
950
- data: createData(8),
951
- filterable: true,
952
- columnFilterable: true,
953
- filterConfig: executeOnApplyFilterConfig,
954
- filtersControlled: false,
955
- onApplyFilters: (f: AppliedFilter[]) => {
956
- console.log('Applied (executeOnApply):', f);
957
- setApplied(f);
958
- },
959
- pagination: { pageSize: 5, currentPage: 1 },
960
- }),
961
- React.createElement('div', { key: 'sep', style: { height: 18 } }),
962
- React.createElement(TableauDynamique, {
963
- key: 't2',
964
- columns: basicColumns,
965
- data: createData(6),
966
- filterable: true,
967
- columnFilterable: true,
968
- filterConfig: functionValueFilterConfig,
969
- filtersControlled: false,
970
- onApplyFilters: (f: AppliedFilter[]) => {
971
- console.log('Applied (function defaultValue):', f);
972
- },
973
- pagination: { pageSize: 5, currentPage: 1 },
974
- }),
975
- ]);
976
- },
977
- parameters: {
978
- docs: {
979
- source: {
980
- code: `
981
- /* executeOnApply example (config) */
982
- const executeOnApplyFilterConfig = [
983
- {
984
- id: 'customerLookup',
985
- type: 'text',
986
- label: 'Client (recherche enrichie)',
987
- executeOnApply: async (value) => {
988
- if (!value) return value;
989
- const res = await fetch('/api/resolve-customer?q=' + encodeURIComponent(value));
990
- return await res.json(); // retourne la valeur finale
991
- }
992
- }
993
- ];
994
-
995
- /* defaultValue as function example */
996
- const functionValueFilterConfig = [
997
- {
998
- id: 'autoIds',
999
- type: 'multiselect',
1000
- label: 'IDs dynamiques',
1001
- defaultValue: async (tempFilters) => {
1002
- const res = await fetch('/api/ids');
1003
- return await res.json();
1004
- }
1005
- }
1006
- ];
1007
-
1008
- <TableauDynamique filterConfig={executeOnApplyFilterConfig} />
1009
- <TableauDynamique filterConfig={functionValueFilterConfig} />
1010
- `.trim(),
1011
- },
1012
- },
1013
- },
1014
- };