@coveord/plasma-mantine 47.0.1-next.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 (450) hide show
  1. package/.eslintrc.js +27 -0
  2. package/.turbo/turbo-build.log +8 -0
  3. package/.turbo/turbo-test.log +30 -0
  4. package/LICENSE +15 -0
  5. package/dist/.tsbuildinfo +1 -0
  6. package/dist/cjs/__tests__/GlobalSetup.js +17 -0
  7. package/dist/cjs/__tests__/GlobalSetup.js.map +1 -0
  8. package/dist/cjs/__tests__/Setup.js +6 -0
  9. package/dist/cjs/__tests__/Setup.js.map +1 -0
  10. package/dist/cjs/__tests__/SetupAfterEnv.js +19 -0
  11. package/dist/cjs/__tests__/SetupAfterEnv.js.map +1 -0
  12. package/dist/cjs/__tests__/Utils.js +38 -0
  13. package/dist/cjs/__tests__/Utils.js.map +1 -0
  14. package/dist/cjs/components/blank-slate/BlankSlate.js +26 -0
  15. package/dist/cjs/components/blank-slate/BlankSlate.js.map +1 -0
  16. package/dist/cjs/components/blank-slate/index.js +8 -0
  17. package/dist/cjs/components/blank-slate/index.js.map +1 -0
  18. package/dist/cjs/components/code-editor/CodeEditor.example.js +41 -0
  19. package/dist/cjs/components/code-editor/CodeEditor.example.js.map +1 -0
  20. package/dist/cjs/components/code-editor/CodeEditor.js +214 -0
  21. package/dist/cjs/components/code-editor/CodeEditor.js.map +1 -0
  22. package/dist/cjs/components/code-editor/__mocks__/@monaco-editor/react.js +30 -0
  23. package/dist/cjs/components/code-editor/__mocks__/@monaco-editor/react.js.map +1 -0
  24. package/dist/cjs/components/code-editor/__mocks__/monaco-editor.js +24 -0
  25. package/dist/cjs/components/code-editor/__mocks__/monaco-editor.js.map +1 -0
  26. package/dist/cjs/components/code-editor/index.js +8 -0
  27. package/dist/cjs/components/code-editor/index.js.map +1 -0
  28. package/dist/cjs/components/collection/Collection.example.js +64 -0
  29. package/dist/cjs/components/collection/Collection.example.js.map +1 -0
  30. package/dist/cjs/components/collection/Collection.js +129 -0
  31. package/dist/cjs/components/collection/Collection.js.map +1 -0
  32. package/dist/cjs/components/collection/CollectionItem.js +109 -0
  33. package/dist/cjs/components/collection/CollectionItem.js.map +1 -0
  34. package/dist/cjs/components/collection/Colllection.styles.js +25 -0
  35. package/dist/cjs/components/collection/Colllection.styles.js.map +1 -0
  36. package/dist/cjs/components/collection/index.js +8 -0
  37. package/dist/cjs/components/collection/index.js.map +1 -0
  38. package/dist/cjs/components/date-range-picker/DateRangePickerInlineCalendar.js +102 -0
  39. package/dist/cjs/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -0
  40. package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js +93 -0
  41. package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -0
  42. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js +64 -0
  43. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -0
  44. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js +66 -0
  45. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js.map +1 -0
  46. package/dist/cjs/components/date-range-picker/index.js +9 -0
  47. package/dist/cjs/components/date-range-picker/index.js.map +1 -0
  48. package/dist/cjs/components/header/Header.js +78 -0
  49. package/dist/cjs/components/header/Header.js.map +1 -0
  50. package/dist/cjs/components/header/index.js +8 -0
  51. package/dist/cjs/components/header/index.js.map +1 -0
  52. package/dist/cjs/components/index.js +17 -0
  53. package/dist/cjs/components/index.js.map +1 -0
  54. package/dist/cjs/components/inline-confirm/InlineConfirm.js +39 -0
  55. package/dist/cjs/components/inline-confirm/InlineConfirm.js.map +1 -0
  56. package/dist/cjs/components/inline-confirm/InlineConfirmButton.js +28 -0
  57. package/dist/cjs/components/inline-confirm/InlineConfirmButton.js.map +1 -0
  58. package/dist/cjs/components/inline-confirm/InlineConfirmContext.js +14 -0
  59. package/dist/cjs/components/inline-confirm/InlineConfirmContext.js.map +1 -0
  60. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js +48 -0
  61. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js.map +1 -0
  62. package/dist/cjs/components/inline-confirm/index.js +10 -0
  63. package/dist/cjs/components/inline-confirm/index.js.map +1 -0
  64. package/dist/cjs/components/inline-confirm/useInlineConfirm.js +21 -0
  65. package/dist/cjs/components/inline-confirm/useInlineConfirm.js.map +1 -0
  66. package/dist/cjs/components/modal-wizard/ModalWizard.js +132 -0
  67. package/dist/cjs/components/modal-wizard/ModalWizard.js.map +1 -0
  68. package/dist/cjs/components/modal-wizard/ModalWizardStep.js +23 -0
  69. package/dist/cjs/components/modal-wizard/ModalWizardStep.js.map +1 -0
  70. package/dist/cjs/components/modal-wizard/index.js +8 -0
  71. package/dist/cjs/components/modal-wizard/index.js.map +1 -0
  72. package/dist/cjs/components/prompt/Prompt.js +100 -0
  73. package/dist/cjs/components/prompt/Prompt.js.map +1 -0
  74. package/dist/cjs/components/prompt/PromptFooter.js +25 -0
  75. package/dist/cjs/components/prompt/PromptFooter.js.map +1 -0
  76. package/dist/cjs/components/prompt/index.js +8 -0
  77. package/dist/cjs/components/prompt/index.js.map +1 -0
  78. package/dist/cjs/components/sticky-footer/StickyFooter.js +50 -0
  79. package/dist/cjs/components/sticky-footer/StickyFooter.js.map +1 -0
  80. package/dist/cjs/components/sticky-footer/index.js +8 -0
  81. package/dist/cjs/components/sticky-footer/index.js.map +1 -0
  82. package/dist/cjs/components/table/Table.js +259 -0
  83. package/dist/cjs/components/table/Table.js.map +1 -0
  84. package/dist/cjs/components/table/TableActions.js +25 -0
  85. package/dist/cjs/components/table/TableActions.js.map +1 -0
  86. package/dist/cjs/components/table/TableCollapsibleColumn.js +33 -0
  87. package/dist/cjs/components/table/TableCollapsibleColumn.js.map +1 -0
  88. package/dist/cjs/components/table/TableContext.js +14 -0
  89. package/dist/cjs/components/table/TableContext.js.map +1 -0
  90. package/dist/cjs/components/table/TableDateRangePicker.js +72 -0
  91. package/dist/cjs/components/table/TableDateRangePicker.js.map +1 -0
  92. package/dist/cjs/components/table/TableFilter.js +53 -0
  93. package/dist/cjs/components/table/TableFilter.js.map +1 -0
  94. package/dist/cjs/components/table/TableFooter.js +23 -0
  95. package/dist/cjs/components/table/TableFooter.js.map +1 -0
  96. package/dist/cjs/components/table/TableHeader.js +37 -0
  97. package/dist/cjs/components/table/TableHeader.js.map +1 -0
  98. package/dist/cjs/components/table/TablePagination.js +47 -0
  99. package/dist/cjs/components/table/TablePagination.js.map +1 -0
  100. package/dist/cjs/components/table/TablePerPage.js +52 -0
  101. package/dist/cjs/components/table/TablePerPage.js.map +1 -0
  102. package/dist/cjs/components/table/TablePredicate.js +45 -0
  103. package/dist/cjs/components/table/TablePredicate.js.map +1 -0
  104. package/dist/cjs/components/table/Th.js +107 -0
  105. package/dist/cjs/components/table/Th.js.map +1 -0
  106. package/dist/cjs/components/table/index.js +9 -0
  107. package/dist/cjs/components/table/index.js.map +1 -0
  108. package/dist/cjs/components/table/useTable.js +21 -0
  109. package/dist/cjs/components/table/useTable.js.map +1 -0
  110. package/dist/cjs/hooks/index.js +9 -0
  111. package/dist/cjs/hooks/index.js.map +1 -0
  112. package/dist/cjs/hooks/useControlledList.js +52 -0
  113. package/dist/cjs/hooks/useControlledList.js.map +1 -0
  114. package/dist/cjs/hooks/useParentHeight.js +36 -0
  115. package/dist/cjs/hooks/useParentHeight.js.map +1 -0
  116. package/dist/cjs/index.js +31 -0
  117. package/dist/cjs/index.js.map +1 -0
  118. package/dist/cjs/theme/PlasmaColors.js +54 -0
  119. package/dist/cjs/theme/PlasmaColors.js.map +1 -0
  120. package/dist/cjs/theme/Plasmantine.js +24 -0
  121. package/dist/cjs/theme/Plasmantine.js.map +1 -0
  122. package/dist/cjs/theme/Theme.js +223 -0
  123. package/dist/cjs/theme/Theme.js.map +1 -0
  124. package/dist/cjs/theme/index.js +8 -0
  125. package/dist/cjs/theme/index.js.map +1 -0
  126. package/dist/definitions/__tests__/GlobalSetup.d.ts +3 -0
  127. package/dist/definitions/__tests__/GlobalSetup.d.ts.map +1 -0
  128. package/dist/definitions/__tests__/Setup.d.ts +5 -0
  129. package/dist/definitions/__tests__/Setup.d.ts.map +1 -0
  130. package/dist/definitions/__tests__/SetupAfterEnv.d.ts +7 -0
  131. package/dist/definitions/__tests__/SetupAfterEnv.d.ts.map +1 -0
  132. package/dist/definitions/__tests__/Utils.d.ts +8 -0
  133. package/dist/definitions/__tests__/Utils.d.ts.map +1 -0
  134. package/dist/definitions/components/blank-slate/BlankSlate.d.ts +12 -0
  135. package/dist/definitions/components/blank-slate/BlankSlate.d.ts.map +1 -0
  136. package/dist/definitions/components/blank-slate/index.d.ts +2 -0
  137. package/dist/definitions/components/blank-slate/index.d.ts.map +1 -0
  138. package/dist/definitions/components/code-editor/CodeEditor.d.ts +50 -0
  139. package/dist/definitions/components/code-editor/CodeEditor.d.ts.map +1 -0
  140. package/dist/definitions/components/code-editor/CodeEditor.example.d.ts +4 -0
  141. package/dist/definitions/components/code-editor/CodeEditor.example.d.ts.map +1 -0
  142. package/dist/definitions/components/code-editor/__mocks__/@monaco-editor/react.d.ts +9 -0
  143. package/dist/definitions/components/code-editor/__mocks__/@monaco-editor/react.d.ts.map +1 -0
  144. package/dist/definitions/components/code-editor/__mocks__/monaco-editor.d.ts +8 -0
  145. package/dist/definitions/components/code-editor/__mocks__/monaco-editor.d.ts.map +1 -0
  146. package/dist/definitions/components/code-editor/index.d.ts +2 -0
  147. package/dist/definitions/components/code-editor/index.d.ts.map +1 -0
  148. package/dist/definitions/components/collection/Collection.d.ts +21 -0
  149. package/dist/definitions/components/collection/Collection.d.ts.map +1 -0
  150. package/dist/definitions/components/collection/Collection.example.d.ts +4 -0
  151. package/dist/definitions/components/collection/Collection.example.d.ts.map +1 -0
  152. package/dist/definitions/components/collection/CollectionItem.d.ts +15 -0
  153. package/dist/definitions/components/collection/CollectionItem.d.ts.map +1 -0
  154. package/dist/definitions/components/collection/Colllection.styles.d.ts +9 -0
  155. package/dist/definitions/components/collection/Colllection.styles.d.ts.map +1 -0
  156. package/dist/definitions/components/collection/index.d.ts +2 -0
  157. package/dist/definitions/components/collection/index.d.ts.map +1 -0
  158. package/dist/definitions/components/date-range-picker/DateRangePickerInlineCalendar.d.ts +37 -0
  159. package/dist/definitions/components/date-range-picker/DateRangePickerInlineCalendar.d.ts.map +1 -0
  160. package/dist/definitions/components/date-range-picker/DateRangePickerPopoverCalendar.d.ts +30 -0
  161. package/dist/definitions/components/date-range-picker/DateRangePickerPopoverCalendar.d.ts.map +1 -0
  162. package/dist/definitions/components/date-range-picker/DateRangePickerPresetSelect.d.ts +16 -0
  163. package/dist/definitions/components/date-range-picker/DateRangePickerPresetSelect.d.ts.map +1 -0
  164. package/dist/definitions/components/date-range-picker/EditableDateRangePicker.d.ts +18 -0
  165. package/dist/definitions/components/date-range-picker/EditableDateRangePicker.d.ts.map +1 -0
  166. package/dist/definitions/components/date-range-picker/index.d.ts +3 -0
  167. package/dist/definitions/components/date-range-picker/index.d.ts.map +1 -0
  168. package/dist/definitions/components/header/Header.d.ts +12 -0
  169. package/dist/definitions/components/header/Header.d.ts.map +1 -0
  170. package/dist/definitions/components/header/index.d.ts +2 -0
  171. package/dist/definitions/components/header/index.d.ts.map +1 -0
  172. package/dist/definitions/components/index.d.ts +11 -0
  173. package/dist/definitions/components/index.d.ts.map +1 -0
  174. package/dist/definitions/components/inline-confirm/InlineConfirm.d.ts +10 -0
  175. package/dist/definitions/components/inline-confirm/InlineConfirm.d.ts.map +1 -0
  176. package/dist/definitions/components/inline-confirm/InlineConfirmButton.d.ts +8 -0
  177. package/dist/definitions/components/inline-confirm/InlineConfirmButton.d.ts.map +1 -0
  178. package/dist/definitions/components/inline-confirm/InlineConfirmContext.d.ts +9 -0
  179. package/dist/definitions/components/inline-confirm/InlineConfirmContext.d.ts.map +1 -0
  180. package/dist/definitions/components/inline-confirm/InlineConfirmPrompt.d.ts +11 -0
  181. package/dist/definitions/components/inline-confirm/InlineConfirmPrompt.d.ts.map +1 -0
  182. package/dist/definitions/components/inline-confirm/index.d.ts +4 -0
  183. package/dist/definitions/components/inline-confirm/index.d.ts.map +1 -0
  184. package/dist/definitions/components/inline-confirm/useInlineConfirm.d.ts +6 -0
  185. package/dist/definitions/components/inline-confirm/useInlineConfirm.d.ts.map +1 -0
  186. package/dist/definitions/components/modal-wizard/ModalWizard.d.ts +73 -0
  187. package/dist/definitions/components/modal-wizard/ModalWizard.d.ts.map +1 -0
  188. package/dist/definitions/components/modal-wizard/ModalWizardStep.d.ts +42 -0
  189. package/dist/definitions/components/modal-wizard/ModalWizardStep.d.ts.map +1 -0
  190. package/dist/definitions/components/modal-wizard/index.d.ts +3 -0
  191. package/dist/definitions/components/modal-wizard/index.d.ts.map +1 -0
  192. package/dist/definitions/components/prompt/Prompt.d.ts +14 -0
  193. package/dist/definitions/components/prompt/Prompt.d.ts.map +1 -0
  194. package/dist/definitions/components/prompt/PromptFooter.d.ts +6 -0
  195. package/dist/definitions/components/prompt/PromptFooter.d.ts.map +1 -0
  196. package/dist/definitions/components/prompt/index.d.ts +2 -0
  197. package/dist/definitions/components/prompt/index.d.ts.map +1 -0
  198. package/dist/definitions/components/sticky-footer/StickyFooter.d.ts +10 -0
  199. package/dist/definitions/components/sticky-footer/StickyFooter.d.ts.map +1 -0
  200. package/dist/definitions/components/sticky-footer/index.d.ts +2 -0
  201. package/dist/definitions/components/sticky-footer/index.d.ts.map +1 -0
  202. package/dist/definitions/components/table/Table.d.ts +84 -0
  203. package/dist/definitions/components/table/Table.d.ts.map +1 -0
  204. package/dist/definitions/components/table/TableActions.d.ts +26 -0
  205. package/dist/definitions/components/table/TableActions.d.ts.map +1 -0
  206. package/dist/definitions/components/table/TableCollapsibleColumn.d.ts +6 -0
  207. package/dist/definitions/components/table/TableCollapsibleColumn.d.ts.map +1 -0
  208. package/dist/definitions/components/table/TableContext.d.ts +54 -0
  209. package/dist/definitions/components/table/TableContext.d.ts.map +1 -0
  210. package/dist/definitions/components/table/TableDateRangePicker.d.ts +20 -0
  211. package/dist/definitions/components/table/TableDateRangePicker.d.ts.map +1 -0
  212. package/dist/definitions/components/table/TableFilter.d.ts +12 -0
  213. package/dist/definitions/components/table/TableFilter.d.ts.map +1 -0
  214. package/dist/definitions/components/table/TableFooter.d.ts +3 -0
  215. package/dist/definitions/components/table/TableFooter.d.ts.map +1 -0
  216. package/dist/definitions/components/table/TableHeader.d.ts +3 -0
  217. package/dist/definitions/components/table/TableHeader.d.ts.map +1 -0
  218. package/dist/definitions/components/table/TablePagination.d.ts +10 -0
  219. package/dist/definitions/components/table/TablePagination.d.ts.map +1 -0
  220. package/dist/definitions/components/table/TablePerPage.d.ts +20 -0
  221. package/dist/definitions/components/table/TablePerPage.d.ts.map +1 -0
  222. package/dist/definitions/components/table/TablePredicate.d.ts +21 -0
  223. package/dist/definitions/components/table/TablePredicate.d.ts.map +1 -0
  224. package/dist/definitions/components/table/Th.d.ts +8 -0
  225. package/dist/definitions/components/table/Th.d.ts.map +1 -0
  226. package/dist/definitions/components/table/index.d.ts +4 -0
  227. package/dist/definitions/components/table/index.d.ts.map +1 -0
  228. package/dist/definitions/components/table/useTable.d.ts +11 -0
  229. package/dist/definitions/components/table/useTable.d.ts.map +1 -0
  230. package/dist/definitions/hooks/index.d.ts +3 -0
  231. package/dist/definitions/hooks/index.d.ts.map +1 -0
  232. package/dist/definitions/hooks/useControlledList.d.ts +25 -0
  233. package/dist/definitions/hooks/useControlledList.d.ts.map +1 -0
  234. package/dist/definitions/hooks/useParentHeight.d.ts +5 -0
  235. package/dist/definitions/hooks/useParentHeight.d.ts.map +1 -0
  236. package/dist/definitions/index.d.ts +17 -0
  237. package/dist/definitions/index.d.ts.map +1 -0
  238. package/dist/definitions/theme/PlasmaColors.d.ts +14 -0
  239. package/dist/definitions/theme/PlasmaColors.d.ts.map +1 -0
  240. package/dist/definitions/theme/Plasmantine.d.ts +3 -0
  241. package/dist/definitions/theme/Plasmantine.d.ts.map +1 -0
  242. package/dist/definitions/theme/Theme.d.ts +3 -0
  243. package/dist/definitions/theme/Theme.d.ts.map +1 -0
  244. package/dist/definitions/theme/index.d.ts +2 -0
  245. package/dist/definitions/theme/index.d.ts.map +1 -0
  246. package/dist/esm/__tests__/GlobalSetup.js +7 -0
  247. package/dist/esm/__tests__/GlobalSetup.js.map +1 -0
  248. package/dist/esm/__tests__/Setup.js +5 -0
  249. package/dist/esm/__tests__/Setup.js.map +1 -0
  250. package/dist/esm/__tests__/SetupAfterEnv.js +15 -0
  251. package/dist/esm/__tests__/SetupAfterEnv.js.map +1 -0
  252. package/dist/esm/__tests__/Utils.js +21 -0
  253. package/dist/esm/__tests__/Utils.js.map +1 -0
  254. package/dist/esm/components/blank-slate/BlankSlate.js +16 -0
  255. package/dist/esm/components/blank-slate/BlankSlate.js.map +1 -0
  256. package/dist/esm/components/blank-slate/index.js +3 -0
  257. package/dist/esm/components/blank-slate/index.js.map +1 -0
  258. package/dist/esm/components/code-editor/CodeEditor.example.js +31 -0
  259. package/dist/esm/components/code-editor/CodeEditor.example.js.map +1 -0
  260. package/dist/esm/components/code-editor/CodeEditor.js +201 -0
  261. package/dist/esm/components/code-editor/CodeEditor.js.map +1 -0
  262. package/dist/esm/components/code-editor/__mocks__/@monaco-editor/react.js +12 -0
  263. package/dist/esm/components/code-editor/__mocks__/@monaco-editor/react.js.map +1 -0
  264. package/dist/esm/components/code-editor/__mocks__/monaco-editor.js +14 -0
  265. package/dist/esm/components/code-editor/__mocks__/monaco-editor.js.map +1 -0
  266. package/dist/esm/components/code-editor/index.js +3 -0
  267. package/dist/esm/components/code-editor/index.js.map +1 -0
  268. package/dist/esm/components/collection/Collection.example.js +54 -0
  269. package/dist/esm/components/collection/Collection.example.js.map +1 -0
  270. package/dist/esm/components/collection/Collection.js +118 -0
  271. package/dist/esm/components/collection/Collection.js.map +1 -0
  272. package/dist/esm/components/collection/CollectionItem.js +98 -0
  273. package/dist/esm/components/collection/CollectionItem.js.map +1 -0
  274. package/dist/esm/components/collection/Colllection.styles.js +15 -0
  275. package/dist/esm/components/collection/Colllection.styles.js.map +1 -0
  276. package/dist/esm/components/collection/index.js +3 -0
  277. package/dist/esm/components/collection/index.js.map +1 -0
  278. package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js +92 -0
  279. package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -0
  280. package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js +83 -0
  281. package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -0
  282. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js +53 -0
  283. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -0
  284. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js +55 -0
  285. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js.map +1 -0
  286. package/dist/esm/components/date-range-picker/index.js +4 -0
  287. package/dist/esm/components/date-range-picker/index.js.map +1 -0
  288. package/dist/esm/components/header/Header.js +68 -0
  289. package/dist/esm/components/header/Header.js.map +1 -0
  290. package/dist/esm/components/header/index.js +3 -0
  291. package/dist/esm/components/header/index.js.map +1 -0
  292. package/dist/esm/components/index.js +12 -0
  293. package/dist/esm/components/index.js.map +1 -0
  294. package/dist/esm/components/inline-confirm/InlineConfirm.js +29 -0
  295. package/dist/esm/components/inline-confirm/InlineConfirm.js.map +1 -0
  296. package/dist/esm/components/inline-confirm/InlineConfirmButton.js +18 -0
  297. package/dist/esm/components/inline-confirm/InlineConfirmButton.js.map +1 -0
  298. package/dist/esm/components/inline-confirm/InlineConfirmContext.js +4 -0
  299. package/dist/esm/components/inline-confirm/InlineConfirmContext.js.map +1 -0
  300. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js +38 -0
  301. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js.map +1 -0
  302. package/dist/esm/components/inline-confirm/index.js +5 -0
  303. package/dist/esm/components/inline-confirm/index.js.map +1 -0
  304. package/dist/esm/components/inline-confirm/useInlineConfirm.js +11 -0
  305. package/dist/esm/components/inline-confirm/useInlineConfirm.js.map +1 -0
  306. package/dist/esm/components/modal-wizard/ModalWizard.js +122 -0
  307. package/dist/esm/components/modal-wizard/ModalWizard.js.map +1 -0
  308. package/dist/esm/components/modal-wizard/ModalWizardStep.js +14 -0
  309. package/dist/esm/components/modal-wizard/ModalWizardStep.js.map +1 -0
  310. package/dist/esm/components/modal-wizard/index.js +3 -0
  311. package/dist/esm/components/modal-wizard/index.js.map +1 -0
  312. package/dist/esm/components/prompt/Prompt.js +90 -0
  313. package/dist/esm/components/prompt/Prompt.js.map +1 -0
  314. package/dist/esm/components/prompt/PromptFooter.js +15 -0
  315. package/dist/esm/components/prompt/PromptFooter.js.map +1 -0
  316. package/dist/esm/components/prompt/index.js +3 -0
  317. package/dist/esm/components/prompt/index.js.map +1 -0
  318. package/dist/esm/components/sticky-footer/StickyFooter.js +40 -0
  319. package/dist/esm/components/sticky-footer/StickyFooter.js.map +1 -0
  320. package/dist/esm/components/sticky-footer/index.js +3 -0
  321. package/dist/esm/components/sticky-footer/index.js.map +1 -0
  322. package/dist/esm/components/table/Table.js +248 -0
  323. package/dist/esm/components/table/Table.js.map +1 -0
  324. package/dist/esm/components/table/TableActions.js +15 -0
  325. package/dist/esm/components/table/TableActions.js.map +1 -0
  326. package/dist/esm/components/table/TableCollapsibleColumn.js +25 -0
  327. package/dist/esm/components/table/TableCollapsibleColumn.js.map +1 -0
  328. package/dist/esm/components/table/TableContext.js +4 -0
  329. package/dist/esm/components/table/TableContext.js.map +1 -0
  330. package/dist/esm/components/table/TableDateRangePicker.js +61 -0
  331. package/dist/esm/components/table/TableDateRangePicker.js.map +1 -0
  332. package/dist/esm/components/table/TableFilter.js +43 -0
  333. package/dist/esm/components/table/TableFilter.js.map +1 -0
  334. package/dist/esm/components/table/TableFooter.js +13 -0
  335. package/dist/esm/components/table/TableFooter.js.map +1 -0
  336. package/dist/esm/components/table/TableHeader.js +27 -0
  337. package/dist/esm/components/table/TableHeader.js.map +1 -0
  338. package/dist/esm/components/table/TablePagination.js +37 -0
  339. package/dist/esm/components/table/TablePagination.js.map +1 -0
  340. package/dist/esm/components/table/TablePerPage.js +42 -0
  341. package/dist/esm/components/table/TablePerPage.js.map +1 -0
  342. package/dist/esm/components/table/TablePredicate.js +35 -0
  343. package/dist/esm/components/table/TablePredicate.js.map +1 -0
  344. package/dist/esm/components/table/Th.js +97 -0
  345. package/dist/esm/components/table/Th.js.map +1 -0
  346. package/dist/esm/components/table/index.js +4 -0
  347. package/dist/esm/components/table/index.js.map +1 -0
  348. package/dist/esm/components/table/useTable.js +11 -0
  349. package/dist/esm/components/table/useTable.js.map +1 -0
  350. package/dist/esm/hooks/index.js +4 -0
  351. package/dist/esm/hooks/index.js.map +1 -0
  352. package/dist/esm/hooks/useControlledList.js +44 -0
  353. package/dist/esm/hooks/useControlledList.js.map +1 -0
  354. package/dist/esm/hooks/useParentHeight.js +28 -0
  355. package/dist/esm/hooks/useParentHeight.js.map +1 -0
  356. package/dist/esm/index.js +11 -0
  357. package/dist/esm/index.js.map +1 -0
  358. package/dist/esm/theme/PlasmaColors.js +44 -0
  359. package/dist/esm/theme/PlasmaColors.js.map +1 -0
  360. package/dist/esm/theme/Plasmantine.js +14 -0
  361. package/dist/esm/theme/Plasmantine.js.map +1 -0
  362. package/dist/esm/theme/Theme.js +213 -0
  363. package/dist/esm/theme/Theme.js.map +1 -0
  364. package/dist/esm/theme/index.js +3 -0
  365. package/dist/esm/theme/index.js.map +1 -0
  366. package/jest.config.js +25 -0
  367. package/package.json +88 -0
  368. package/src/__tests__/GlobalSetup.ts +5 -0
  369. package/src/__tests__/Setup.ts +4 -0
  370. package/src/__tests__/SetupAfterEnv.ts +16 -0
  371. package/src/__tests__/Utils.tsx +15 -0
  372. package/src/components/blank-slate/BlankSlate.tsx +17 -0
  373. package/src/components/blank-slate/__tests__/BlankSlate.spec.tsx +11 -0
  374. package/src/components/blank-slate/index.ts +1 -0
  375. package/src/components/code-editor/CodeEditor.example.tsx +32 -0
  376. package/src/components/code-editor/CodeEditor.tsx +214 -0
  377. package/src/components/code-editor/__mocks__/@monaco-editor/react.tsx +10 -0
  378. package/src/components/code-editor/__mocks__/monaco-editor.ts +9 -0
  379. package/src/components/code-editor/__tests__/CodeEditor.spec.tsx +56 -0
  380. package/src/components/code-editor/index.ts +1 -0
  381. package/src/components/collection/Collection.example.tsx +37 -0
  382. package/src/components/collection/Collection.tsx +129 -0
  383. package/src/components/collection/CollectionItem.tsx +92 -0
  384. package/src/components/collection/Colllection.styles.ts +14 -0
  385. package/src/components/collection/__tests__/Collection.spec.tsx +247 -0
  386. package/src/components/collection/index.ts +1 -0
  387. package/src/components/date-range-picker/DateRangePickerInlineCalendar.tsx +111 -0
  388. package/src/components/date-range-picker/DateRangePickerPopoverCalendar.tsx +94 -0
  389. package/src/components/date-range-picker/DateRangePickerPresetSelect.tsx +62 -0
  390. package/src/components/date-range-picker/EditableDateRangePicker.tsx +60 -0
  391. package/src/components/date-range-picker/__tests__/DateRangePickerInlineCalendar.spec.tsx +95 -0
  392. package/src/components/date-range-picker/__tests__/DateRangePickerPopoverCalendar.spec.tsx +101 -0
  393. package/src/components/date-range-picker/__tests__/DateRangePickerPresetSelect.spec.tsx +53 -0
  394. package/src/components/date-range-picker/__tests__/EditableDateRangePicker.spec.tsx +47 -0
  395. package/src/components/date-range-picker/index.tsx +2 -0
  396. package/src/components/header/Header.tsx +43 -0
  397. package/src/components/header/__tests__/Header.spec.tsx +79 -0
  398. package/src/components/header/index.ts +1 -0
  399. package/src/components/index.ts +10 -0
  400. package/src/components/inline-confirm/InlineConfirm.tsx +29 -0
  401. package/src/components/inline-confirm/InlineConfirmButton.tsx +17 -0
  402. package/src/components/inline-confirm/InlineConfirmContext.ts +9 -0
  403. package/src/components/inline-confirm/InlineConfirmPrompt.tsx +48 -0
  404. package/src/components/inline-confirm/__tests__/InlineConfirm.spec.tsx +94 -0
  405. package/src/components/inline-confirm/index.ts +3 -0
  406. package/src/components/inline-confirm/useInlineConfirm.ts +12 -0
  407. package/src/components/modal-wizard/ModalWizard.tsx +211 -0
  408. package/src/components/modal-wizard/ModalWizardStep.tsx +55 -0
  409. package/src/components/modal-wizard/__tests__/ModalWizard.spec.tsx +345 -0
  410. package/src/components/modal-wizard/index.ts +2 -0
  411. package/src/components/prompt/Prompt.tsx +66 -0
  412. package/src/components/prompt/PromptFooter.tsx +8 -0
  413. package/src/components/prompt/__tests__/Prompt.spec.tsx +29 -0
  414. package/src/components/prompt/index.ts +1 -0
  415. package/src/components/sticky-footer/StickyFooter.tsx +35 -0
  416. package/src/components/sticky-footer/__tests__/StickyFooter.spec.tsx +20 -0
  417. package/src/components/sticky-footer/index.ts +1 -0
  418. package/src/components/table/Table.tsx +293 -0
  419. package/src/components/table/TableActions.tsx +36 -0
  420. package/src/components/table/TableCollapsibleColumn.tsx +26 -0
  421. package/src/components/table/TableContext.tsx +56 -0
  422. package/src/components/table/TableDateRangePicker.tsx +65 -0
  423. package/src/components/table/TableFilter.tsx +44 -0
  424. package/src/components/table/TableFooter.tsx +8 -0
  425. package/src/components/table/TableHeader.tsx +21 -0
  426. package/src/components/table/TablePagination.tsx +41 -0
  427. package/src/components/table/TablePerPage.tsx +49 -0
  428. package/src/components/table/TablePredicate.tsx +43 -0
  429. package/src/components/table/Th.tsx +84 -0
  430. package/src/components/table/__tests__/Table.spec.tsx +128 -0
  431. package/src/components/table/__tests__/TableActions.spec.tsx +36 -0
  432. package/src/components/table/__tests__/TableDateRangePicker.spec.tsx +87 -0
  433. package/src/components/table/__tests__/TableFilter.spec.tsx +39 -0
  434. package/src/components/table/__tests__/TablePagination.spec.tsx +50 -0
  435. package/src/components/table/__tests__/TablePerPage.spec.tsx +81 -0
  436. package/src/components/table/__tests__/TablePredicate.spec.tsx +120 -0
  437. package/src/components/table/__tests__/Th.spec.tsx +63 -0
  438. package/src/components/table/index.ts +3 -0
  439. package/src/components/table/useTable.tsx +11 -0
  440. package/src/hooks/__tests__/useControlledList.spec.tsx +41 -0
  441. package/src/hooks/index.ts +2 -0
  442. package/src/hooks/useControlledList.ts +53 -0
  443. package/src/hooks/useParentHeight.ts +25 -0
  444. package/src/index.ts +21 -0
  445. package/src/theme/PlasmaColors.ts +44 -0
  446. package/src/theme/Plasmantine.tsx +10 -0
  447. package/src/theme/Theme.tsx +161 -0
  448. package/src/theme/index.ts +1 -0
  449. package/tsconfig.build.json +4 -0
  450. package/tsconfig.json +14 -0
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TableDateRangePicker", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TableDateRangePicker;
9
+ }
10
+ });
11
+ var _interopRequireDefault = require("@swc/helpers/lib/_interop_require_default.js").default;
12
+ var _slicedToArray = require("@swc/helpers/lib/_sliced_to_array.js").default;
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ var _plasmaReactIcons = require("@coveord/plasma-react-icons");
15
+ var _core = require("@mantine/core");
16
+ var _dayjs = /*#__PURE__*/ _interopRequireDefault(require("dayjs"));
17
+ var _react = require("react");
18
+ var _dateRangePicker = require("../date-range-picker");
19
+ var _useTable = require("./useTable");
20
+ var TableDateRangePicker = function(param) {
21
+ var _presets = param.presets, presets = _presets === void 0 ? {} : _presets, rangeCalendarProps = param.rangeCalendarProps;
22
+ var ref = _slicedToArray((0, _react.useState)(false), 2), opened = ref[0], setOpened = ref[1];
23
+ var form = (0, _useTable.useTable)().form;
24
+ var onApply = function(dates) {
25
+ form.setFieldValue("dateRange", dates);
26
+ setOpened(false);
27
+ };
28
+ var onCancel = function() {
29
+ setOpened(false);
30
+ };
31
+ var formatDate = function(date) {
32
+ return (0, _dayjs.default)(date).format("MMM DD, YYYY");
33
+ };
34
+ var formatedRange = "".concat(formatDate(form.values.dateRange[0]), " - ").concat(formatDate(form.values.dateRange[1]));
35
+ return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
36
+ children: [
37
+ formatedRange,
38
+ /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_core.Popover, {
39
+ opened: opened,
40
+ onChange: setOpened,
41
+ children: [
42
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Popover.Target, {
43
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Button, {
44
+ variant: "outline",
45
+ color: "gray",
46
+ onClick: function() {
47
+ return setOpened(true);
48
+ },
49
+ px: "xs",
50
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_plasmaReactIcons.CalendarSize24Px, {
51
+ width: 24,
52
+ height: 24
53
+ })
54
+ })
55
+ }),
56
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Popover.Dropdown, {
57
+ p: 0,
58
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_dateRangePicker.DateRangePickerInlineCalendar, {
59
+ initialRange: form.values.dateRange,
60
+ onApply: onApply,
61
+ onCancel: onCancel,
62
+ presets: presets,
63
+ rangeCalendarProps: rangeCalendarProps
64
+ })
65
+ })
66
+ ]
67
+ })
68
+ ]
69
+ });
70
+ };
71
+
72
+ //# sourceMappingURL=TableDateRangePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/TableDateRangePicker.tsx"],"sourcesContent":["import {CalendarSize24Px} from '@coveord/plasma-react-icons';\nimport {Popover, Button} from '@mantine/core';\nimport {DateRangePickerValue} from '@mantine/dates';\nimport dayjs from 'dayjs';\nimport {FunctionComponent, useState} from 'react';\nimport {DateRangePickerInlineCalendar, DateRangePickerInlineCalendarProps} from '../date-range-picker';\nimport {DateRangePickerPreset} from '../date-range-picker/DateRangePickerPresetSelect';\nimport {useTable} from './useTable';\n\ninterface TableDateRangePickerProps\n extends Pick<DateRangePickerInlineCalendarProps, 'startProps' | 'endProps' | 'rangeCalendarProps'> {\n /**\n * An object containing date presets.\n * If empty the preset dropdown won't be shown\n *\n * @example\n * {\n * january: {label: 'January', range: [new Date(2022, 0, 1), new Date(2022, 0, 31)]},\n * february: {label: 'February', range: [new Date(2022, 1, 1), new Date(2022, 1, 28)]}\n * }\n * @default {}\n */\n presets?: Record<string, DateRangePickerPreset>;\n}\n\nexport const TableDateRangePicker: FunctionComponent<TableDateRangePickerProps> = ({\n presets = {},\n rangeCalendarProps,\n}) => {\n const [opened, setOpened] = useState(false);\n const {form} = useTable();\n\n const onApply = (dates: DateRangePickerValue) => {\n form.setFieldValue('dateRange', dates);\n setOpened(false);\n };\n const onCancel = () => {\n setOpened(false);\n };\n\n const formatDate = (date: Date) => dayjs(date).format('MMM DD, YYYY');\n const formatedRange = `${formatDate(form.values.dateRange[0])} - ${formatDate(form.values.dateRange[1])}`;\n\n return (\n <>\n {formatedRange}\n <Popover opened={opened} onChange={setOpened}>\n <Popover.Target>\n <Button variant=\"outline\" color=\"gray\" onClick={() => setOpened(true)} px=\"xs\">\n <CalendarSize24Px width={24} height={24} />\n </Button>\n </Popover.Target>\n <Popover.Dropdown p={0}>\n <DateRangePickerInlineCalendar\n initialRange={form.values.dateRange}\n onApply={onApply}\n onCancel={onCancel}\n presets={presets}\n rangeCalendarProps={rangeCalendarProps}\n />\n </Popover.Dropdown>\n </Popover>\n </>\n );\n};\n"],"names":["TableDateRangePicker","presets","rangeCalendarProps","useState","opened","setOpened","form","useTable","onApply","dates","setFieldValue","onCancel","formatDate","date","dayjs","format","formatedRange","values","dateRange","Popover","onChange","Target","Button","variant","color","onClick","px","CalendarSize24Px","width","height","Dropdown","p","DateRangePickerInlineCalendar","initialRange"],"mappings":"AAAA;;;;+BAyBaA,sBAAoB;;;eAApBA,oBAAoB;;;;;;gCAzBF,6BAA6B;oBAC9B,eAAe;0DAE3B,OAAO;qBACiB,OAAO;+BAC+B,sBAAsB;wBAE/E,YAAY;AAkB5B,IAAMA,oBAAoB,GAAiD,gBAG5E;yBAFFC,OAAO,EAAPA,OAAO,yBAAG,EAAE,WAAA,EACZC,kBAAkB,SAAlBA,kBAAkB;IAElB,IAA4BC,GAAe,kBAAfA,IAAAA,MAAQ,SAAA,EAAC,KAAK,CAAC,IAAA,EAApCC,MAAM,GAAeD,GAAe,GAA9B,EAAEE,SAAS,GAAIF,GAAe,GAAnB,AAAoB;IAC5C,IAAM,AAACG,IAAI,GAAIC,IAAAA,SAAQ,SAAA,GAAE,CAAlBD,IAAI,AAAc,AAAC;IAE1B,IAAME,OAAO,GAAG,SAACC,KAA2B,EAAK;QAC7CH,IAAI,CAACI,aAAa,CAAC,WAAW,EAAED,KAAK,CAAC,CAAC;QACvCJ,SAAS,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,AAAC;IACF,IAAMM,QAAQ,GAAG,WAAM;QACnBN,SAAS,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,AAAC;IAEF,IAAMO,UAAU,GAAG,SAACC,IAAU;eAAKC,IAAAA,MAAK,QAAA,EAACD,IAAI,CAAC,CAACE,MAAM,CAAC,cAAc,CAAC;KAAA,AAAC;IACtE,IAAMC,aAAa,GAAG,AAAC,EAAA,CAA4CJ,MAAoC,CAA9EA,UAAU,CAACN,IAAI,CAACW,MAAM,CAACC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAC,KAAG,CAAuC,CAAA,MAAA,CAArCN,UAAU,CAACN,IAAI,CAACW,MAAM,CAACC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAE,AAAC;IAE1G,qBACI;;YACKF,aAAa;0BACd,sBAACG,KAAO,QAAA;gBAACf,MAAM,EAAEA,MAAM;gBAAEgB,QAAQ,EAAEf,SAAS;;kCACxC,qBAACc,KAAO,QAAA,CAACE,MAAM;kCACX,cAAA,qBAACC,KAAM,OAAA;4BAACC,OAAO,EAAC,SAAS;4BAACC,KAAK,EAAC,MAAM;4BAACC,OAAO,EAAE;uCAAMpB,SAAS,CAAC,IAAI,CAAC;6BAAA;4BAAEqB,EAAE,EAAC,IAAI;sCAC1E,cAAA,qBAACC,iBAAgB,iBAAA;gCAACC,KAAK,EAAE,EAAE;gCAAEC,MAAM,EAAE,EAAE;8BAAI;0BACtC;sBACI;kCACjB,qBAACV,KAAO,QAAA,CAACW,QAAQ;wBAACC,CAAC,EAAE,CAAC;kCAClB,cAAA,qBAACC,gBAA6B,8BAAA;4BAC1BC,YAAY,EAAE3B,IAAI,CAACW,MAAM,CAACC,SAAS;4BACnCV,OAAO,EAAEA,OAAO;4BAChBG,QAAQ,EAAEA,QAAQ;4BAClBV,OAAO,EAAEA,OAAO;4BAChBC,kBAAkB,EAAEA,kBAAkB;0BACxC;sBACa;;cACb;;MACX,CACL;AACN,CAAC,AAAC"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TableFilter", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TableFilter;
9
+ }
10
+ });
11
+ var _defineProperty = require("@swc/helpers/lib/_define_property.js").default;
12
+ var _objectSpread = require("@swc/helpers/lib/_object_spread.js").default;
13
+ var _objectSpreadProps = require("@swc/helpers/lib/_object_spread_props.js").default;
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ var _plasmaReactIcons = require("@coveord/plasma-react-icons");
16
+ var _core = require("@mantine/core");
17
+ var _useTable = require("./useTable");
18
+ var useStyles = (0, _core.createStyles)(function(theme) {
19
+ return {
20
+ wrapper: {
21
+ marginBottom: "0 !important"
22
+ },
23
+ empty: {
24
+ color: theme.colors.gray[4]
25
+ }
26
+ };
27
+ });
28
+ var TableFilter = function(param) {
29
+ var _placeholder = param.placeholder, placeholder = _placeholder === void 0 ? "Search by any field" : _placeholder;
30
+ var ref = useStyles(), classes = ref.classes, cx = ref.cx;
31
+ var ref1 = (0, _useTable.useTable)(), state = ref1.state, setState = ref1.setState;
32
+ var handleSearchChange = function(event) {
33
+ var value = event.currentTarget.value;
34
+ setState(function(prevState) {
35
+ return _objectSpreadProps(_objectSpread({}, prevState), {
36
+ globalFilter: value
37
+ });
38
+ });
39
+ };
40
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.TextInput, {
41
+ className: classes.wrapper,
42
+ placeholder: placeholder,
43
+ mb: "md",
44
+ rightSection: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_plasmaReactIcons.SearchSize16Px, {
45
+ height: 14,
46
+ className: cx(_defineProperty({}, classes.empty, !state.globalFilter))
47
+ }),
48
+ value: state.globalFilter,
49
+ onChange: handleSearchChange
50
+ });
51
+ };
52
+
53
+ //# sourceMappingURL=TableFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/TableFilter.tsx"],"sourcesContent":["import {SearchSize16Px} from '@coveord/plasma-react-icons';\nimport {createStyles, TextInput} from '@mantine/core';\nimport {TableState} from '@tanstack/react-table';\nimport {ChangeEvent, FunctionComponent} from 'react';\nimport {useTable} from './useTable';\n\nconst useStyles = createStyles((theme) => ({\n wrapper: {\n marginBottom: '0 !important',\n },\n empty: {\n color: theme.colors.gray[4],\n },\n}));\n\ninterface TableFilterProps {\n /**\n * The placeholder for the filter input\n *\n * @default \"Search by any field\"\n */\n placeholder?: string;\n}\n\nexport const TableFilter: FunctionComponent<TableFilterProps> = ({placeholder = 'Search by any field'}) => {\n const {classes, cx} = useStyles();\n const {state, setState} = useTable();\n\n const handleSearchChange = (event: ChangeEvent<HTMLInputElement>) => {\n const {value} = event.currentTarget;\n setState((prevState: TableState) => ({...prevState, globalFilter: value}));\n };\n\n return (\n <TextInput\n className={classes.wrapper}\n placeholder={placeholder}\n mb=\"md\"\n rightSection={<SearchSize16Px height={14} className={cx({[classes.empty]: !state.globalFilter})} />}\n value={state.globalFilter}\n onChange={handleSearchChange}\n />\n );\n};\n"],"names":["TableFilter","useStyles","createStyles","theme","wrapper","marginBottom","empty","color","colors","gray","placeholder","classes","cx","useTable","state","setState","handleSearchChange","event","value","currentTarget","prevState","globalFilter","TextInput","className","mb","rightSection","SearchSize16Px","height","onChange"],"mappings":"AAAA;;;;+BAwBaA,aAAW;;;eAAXA,WAAW;;;;;;;gCAxBK,6BAA6B;oBACpB,eAAe;wBAG9B,YAAY;AAEnC,IAAMC,SAAS,GAAGC,IAAAA,KAAY,aAAA,EAAC,SAACC,KAAK;WAAM;QACvCC,OAAO,EAAE;YACLC,YAAY,EAAE,cAAc;SAC/B;QACDC,KAAK,EAAE;YACHC,KAAK,EAAEJ,KAAK,CAACK,MAAM,CAACC,IAAI,CAAC,CAAC,CAAC;SAC9B;KACJ;CAAC,CAAC,AAAC;AAWG,IAAMT,WAAW,GAAwC,gBAA2C;6BAAzCU,WAAW,EAAXA,WAAW,6BAAG,qBAAqB,eAAA;IACjG,IAAsBT,GAAW,GAAXA,SAAS,EAAE,EAA1BU,OAAO,GAAQV,GAAW,CAA1BU,OAAO,EAAEC,EAAE,GAAIX,GAAW,CAAjBW,EAAE,AAAgB;IAClC,IAA0BC,IAAU,GAAVA,IAAAA,SAAQ,SAAA,GAAE,EAA7BC,KAAK,GAAcD,IAAU,CAA7BC,KAAK,EAAEC,QAAQ,GAAIF,IAAU,CAAtBE,QAAQ,AAAe;IAErC,IAAMC,kBAAkB,GAAG,SAACC,KAAoC,EAAK;QACjE,IAAM,AAACC,KAAK,GAAID,KAAK,CAACE,aAAa,CAA5BD,KAAK,AAAuB,AAAC;QACpCH,QAAQ,CAAC,SAACK,SAAqB;mBAAM,qCAAIA,SAAS;gBAAEC,YAAY,EAAEH,KAAK;cAAC;SAAC,CAAC,CAAC;IAC/E,CAAC,AAAC;IAEF,qBACI,qBAACI,KAAS,UAAA;QACNC,SAAS,EAAEZ,OAAO,CAACP,OAAO;QAC1BM,WAAW,EAAEA,WAAW;QACxBc,EAAE,EAAC,IAAI;QACPC,YAAY,gBAAE,qBAACC,iBAAc,eAAA;YAACC,MAAM,EAAE,EAAE;YAAEJ,SAAS,EAAEX,EAAE,CAAE,oBAACD,OAAO,CAACL,KAAK,EAAG,CAACQ,KAAK,CAACO,YAAY,CAAA,CAAE;UAAI;QACnGH,KAAK,EAAEJ,KAAK,CAACO,YAAY;QACzBO,QAAQ,EAAEZ,kBAAkB;MAC9B,CACJ;AACN,CAAC,AAAC"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TableFooter", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TableFooter;
9
+ }
10
+ });
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ var _core = require("@mantine/core");
13
+ var TableFooter = function(param) {
14
+ var children = param.children;
15
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Group, {
16
+ position: "apart",
17
+ px: "md",
18
+ py: "sm",
19
+ children: children
20
+ });
21
+ };
22
+
23
+ //# sourceMappingURL=TableFooter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/TableFooter.tsx"],"sourcesContent":["import {Group} from '@mantine/core';\nimport {FunctionComponent, PropsWithChildren} from 'react';\n\nexport const TableFooter: FunctionComponent<PropsWithChildren> = ({children}) => (\n <Group position=\"apart\" px=\"md\" py=\"sm\">\n {children}\n </Group>\n);\n"],"names":["TableFooter","children","Group","position","px","py"],"mappings":"AAAA;;;;+BAGaA,aAAW;;;eAAXA,WAAW;;;;oBAHJ,eAAe;AAG5B,IAAMA,WAAW,GAAyC;QAAEC,QAAQ,SAARA,QAAQ;yBACvE,qBAACC,KAAK,MAAA;QAACC,QAAQ,EAAC,OAAO;QAACC,EAAE,EAAC,IAAI;QAACC,EAAE,EAAC,IAAI;kBAClCJ,QAAQ;MACL;CACX,AAAC"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TableHeader", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TableHeader;
9
+ }
10
+ });
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ var _core = require("@mantine/core");
13
+ var useStyles = (0, _core.createStyles)(function(theme) {
14
+ return {
15
+ header: {
16
+ position: "sticky",
17
+ top: 0,
18
+ zIndex: 13,
19
+ backgroundColor: theme.colors.gray[1],
20
+ borderBottom: "1px solid ".concat(theme.colors.gray[4])
21
+ }
22
+ };
23
+ });
24
+ var TableHeader = function(param) {
25
+ var children = param.children;
26
+ var classes = useStyles().classes;
27
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Group, {
28
+ position: "right",
29
+ spacing: "lg",
30
+ className: classes.header,
31
+ px: "md",
32
+ py: "sm",
33
+ children: children
34
+ });
35
+ };
36
+
37
+ //# sourceMappingURL=TableHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/TableHeader.tsx"],"sourcesContent":["import {createStyles, Group} from '@mantine/core';\nimport {FunctionComponent, PropsWithChildren} from 'react';\n\nconst useStyles = createStyles((theme) => ({\n header: {\n position: 'sticky',\n top: 0,\n zIndex: 13, // skeleton is 11\n backgroundColor: theme.colors.gray[1],\n borderBottom: `1px solid ${theme.colors.gray[4]}`,\n },\n}));\n\nexport const TableHeader: FunctionComponent<PropsWithChildren> = ({children}) => {\n const {classes} = useStyles();\n return (\n <Group position=\"right\" spacing=\"lg\" className={classes.header} px=\"md\" py=\"sm\">\n {children}\n </Group>\n );\n};\n"],"names":["TableHeader","useStyles","createStyles","theme","header","position","top","zIndex","backgroundColor","colors","gray","borderBottom","children","classes","Group","spacing","className","px","py"],"mappings":"AAAA;;;;+BAaaA,aAAW;;;eAAXA,WAAW;;;;oBAbU,eAAe;AAGjD,IAAMC,SAAS,GAAGC,IAAAA,KAAY,aAAA,EAAC,SAACC,KAAK;WAAM;QACvCC,MAAM,EAAE;YACJC,QAAQ,EAAE,QAAQ;YAClBC,GAAG,EAAE,CAAC;YACNC,MAAM,EAAE,EAAE;YACVC,eAAe,EAAEL,KAAK,CAACM,MAAM,CAACC,IAAI,CAAC,CAAC,CAAC;YACrCC,YAAY,EAAE,AAAC,YAAU,CAAuB,MAAA,CAArBR,KAAK,CAACM,MAAM,CAACC,IAAI,CAAC,CAAC,CAAC,CAAE;SACpD;KACJ;CAAC,CAAC,AAAC;AAEG,IAAMV,WAAW,GAAyC,gBAAgB;QAAdY,QAAQ,SAARA,QAAQ;IACvE,IAAM,AAACC,OAAO,GAAIZ,SAAS,EAAE,CAAtBY,OAAO,AAAe,AAAC;IAC9B,qBACI,qBAACC,KAAK,MAAA;QAACT,QAAQ,EAAC,OAAO;QAACU,OAAO,EAAC,IAAI;QAACC,SAAS,EAAEH,OAAO,CAACT,MAAM;QAAEa,EAAE,EAAC,IAAI;QAACC,EAAE,EAAC,IAAI;kBAC1EN,QAAQ;MACL,CACV;AACN,CAAC,AAAC"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TablePagination", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TablePagination;
9
+ }
10
+ });
11
+ var _objectSpread = require("@swc/helpers/lib/_object_spread.js").default;
12
+ var _objectSpreadProps = require("@swc/helpers/lib/_object_spread_props.js").default;
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ var _core = require("@mantine/core");
15
+ var _useTable = require("./useTable");
16
+ var TablePagination = function(param) {
17
+ var totalPages = param.totalPages;
18
+ var ref = (0, _useTable.useTable)(), state = ref.state, setState = ref.setState;
19
+ var updatePage = function(newPage) {
20
+ setState(function(prevState) {
21
+ return _objectSpreadProps(_objectSpread({}, prevState), {
22
+ pagination: _objectSpreadProps(_objectSpread({}, prevState.pagination), {
23
+ pageIndex: newPage - 1
24
+ })
25
+ });
26
+ });
27
+ };
28
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Pagination, {
29
+ page: state.pagination.pageIndex + 1,
30
+ onChange: updatePage,
31
+ total: totalPages,
32
+ boundaries: 0,
33
+ size: "md",
34
+ getItemAriaLabel: function(label) {
35
+ switch(label){
36
+ case "prev":
37
+ return "previous page";
38
+ case "next":
39
+ return "next page";
40
+ default:
41
+ return "".concat(label);
42
+ }
43
+ }
44
+ });
45
+ };
46
+
47
+ //# sourceMappingURL=TablePagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/TablePagination.tsx"],"sourcesContent":["import {Pagination} from '@mantine/core';\nimport {TableState} from '@tanstack/react-table';\nimport {FunctionComponent} from 'react';\nimport {useTable} from './useTable';\n\ninterface TablePaginationProps {\n /**\n * The total number of page\n */\n totalPages: number;\n}\n\nexport const TablePagination: FunctionComponent<TablePaginationProps> = ({totalPages}) => {\n const {state, setState} = useTable();\n const updatePage = (newPage: number) => {\n setState((prevState: TableState) => ({\n ...prevState,\n pagination: {...prevState.pagination, pageIndex: newPage - 1},\n }));\n };\n\n return (\n <Pagination\n page={state.pagination.pageIndex + 1}\n onChange={updatePage}\n total={totalPages}\n boundaries={0}\n size=\"md\"\n getItemAriaLabel={(label) => {\n switch (label) {\n case 'prev':\n return 'previous page';\n case 'next':\n return 'next page';\n default:\n return `${label}`;\n }\n }}\n />\n );\n};\n"],"names":["TablePagination","totalPages","useTable","state","setState","updatePage","newPage","prevState","pagination","pageIndex","Pagination","page","onChange","total","boundaries","size","getItemAriaLabel","label"],"mappings":"AAAA;;;;+BAYaA,iBAAe;;;eAAfA,eAAe;;;;;;oBAZH,eAAe;wBAGjB,YAAY;AAS5B,IAAMA,eAAe,GAA4C,gBAAkB;QAAhBC,UAAU,SAAVA,UAAU;IAChF,IAA0BC,GAAU,GAAVA,IAAAA,SAAQ,SAAA,GAAE,EAA7BC,KAAK,GAAcD,GAAU,CAA7BC,KAAK,EAAEC,QAAQ,GAAIF,GAAU,CAAtBE,QAAQ,AAAe;IACrC,IAAMC,UAAU,GAAG,SAACC,OAAe,EAAK;QACpCF,QAAQ,CAAC,SAACG,SAAqB;mBAAM,qCAC9BA,SAAS;gBACZC,UAAU,EAAE,qCAAID,SAAS,CAACC,UAAU;oBAAEC,SAAS,EAAEH,OAAO,GAAG,CAAC;kBAAC;cAChE;SAAC,CAAC,CAAC;IACR,CAAC,AAAC;IAEF,qBACI,qBAACI,KAAU,WAAA;QACPC,IAAI,EAAER,KAAK,CAACK,UAAU,CAACC,SAAS,GAAG,CAAC;QACpCG,QAAQ,EAAEP,UAAU;QACpBQ,KAAK,EAAEZ,UAAU;QACjBa,UAAU,EAAE,CAAC;QACbC,IAAI,EAAC,IAAI;QACTC,gBAAgB,EAAE,SAACC,KAAK,EAAK;YACzB,OAAQA,KAAK;gBACT,KAAK,MAAM;oBACP,OAAO,eAAe,CAAC;gBAC3B,KAAK,MAAM;oBACP,OAAO,WAAW,CAAC;gBACvB;oBACI,OAAO,AAAC,EAAA,CAAQ,MAAA,CAANA,KAAK,CAAE,CAAC;aACzB;QACL,CAAC;MACH,CACJ;AACN,CAAC,AAAC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TablePerPage", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TablePerPage;
9
+ }
10
+ });
11
+ var _objectSpread = require("@swc/helpers/lib/_object_spread.js").default;
12
+ var _objectSpreadProps = require("@swc/helpers/lib/_object_spread_props.js").default;
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ var _core = require("@mantine/core");
15
+ var _useTable = require("./useTable");
16
+ var TablePerPage = function(param) {
17
+ var _label = param.label, label = _label === void 0 ? "Results per page" : _label, _values = param.values, values = _values === void 0 ? [
18
+ 25,
19
+ 50,
20
+ 100
21
+ ] : _values;
22
+ var ref = (0, _useTable.useTable)(), state = ref.state, setState = ref.setState;
23
+ var updatePerPage = function(newPerPage) {
24
+ setState(function(prevState) {
25
+ return _objectSpreadProps(_objectSpread({}, prevState), {
26
+ pagination: _objectSpreadProps(_objectSpread({}, prevState.pagination), {
27
+ pageSize: parseInt(newPerPage, 10)
28
+ })
29
+ });
30
+ });
31
+ };
32
+ var ref1;
33
+ return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_core.Group, {
34
+ children: [
35
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Text, {
36
+ children: label
37
+ }),
38
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.SegmentedControl, {
39
+ value: (ref1 = state.pagination.pageSize.toString()) !== null && ref1 !== void 0 ? ref1 : values === null || values === void 0 ? void 0 : values[1].toString(),
40
+ onChange: updatePerPage,
41
+ data: values.map(function(value) {
42
+ return value.toString();
43
+ }),
44
+ color: "action",
45
+ size: "md"
46
+ })
47
+ ]
48
+ });
49
+ };
50
+ TablePerPage.DEFAULT_SIZE = 50;
51
+
52
+ //# sourceMappingURL=TablePerPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/TablePerPage.tsx"],"sourcesContent":["import {Group, SegmentedControl, Text} from '@mantine/core';\nimport {TableState} from '@tanstack/react-table';\nimport {FunctionComponent} from 'react';\n\nimport {useTable} from './useTable';\n\ninterface TablePerPageProps {\n /**\n * The label displayed before the control\n *\n * @default Results per page\n */\n label?: string;\n /**\n * The per page choices to display\n *\n * @default [25, 50, 100]\n */\n values?: number[];\n}\n\nexport const TablePerPage: FunctionComponent<TablePerPageProps> & {DEFAULT_SIZE: number} = ({\n label = 'Results per page',\n values = [25, 50, 100],\n}) => {\n const {state, setState} = useTable();\n\n const updatePerPage = (newPerPage: string) => {\n setState((prevState: TableState) => ({\n ...prevState,\n pagination: {...prevState.pagination, pageSize: parseInt(newPerPage, 10)},\n }));\n };\n\n return (\n <Group>\n <Text>{label}</Text>\n <SegmentedControl\n value={state.pagination.pageSize.toString() ?? values?.[1].toString()}\n onChange={updatePerPage}\n data={values.map((value) => value.toString())}\n color=\"action\"\n size=\"md\"\n />\n </Group>\n );\n};\n\nTablePerPage.DEFAULT_SIZE = 50;\n"],"names":["TablePerPage","label","values","useTable","state","setState","updatePerPage","newPerPage","prevState","pagination","pageSize","parseInt","Group","Text","SegmentedControl","value","toString","onChange","data","map","color","size","DEFAULT_SIZE"],"mappings":"AAAA;;;;+BAqBaA,cAAY;;;eAAZA,YAAY;;;;;;oBArBmB,eAAe;wBAIpC,YAAY;AAiB5B,IAAMA,YAAY,GAAkE,gBAGrF;uBAFFC,KAAK,EAALA,KAAK,uBAAG,kBAAkB,SAAA,kBAC1BC,MAAM,EAANA,MAAM,wBAAG;AAAC,UAAE;AAAE,UAAE;AAAE,WAAG;KAAC,UAAA;IAEtB,IAA0BC,GAAU,GAAVA,IAAAA,SAAQ,SAAA,GAAE,EAA7BC,KAAK,GAAcD,GAAU,CAA7BC,KAAK,EAAEC,QAAQ,GAAIF,GAAU,CAAtBE,QAAQ,AAAe;IAErC,IAAMC,aAAa,GAAG,SAACC,UAAkB,EAAK;QAC1CF,QAAQ,CAAC,SAACG,SAAqB;mBAAM,qCAC9BA,SAAS;gBACZC,UAAU,EAAE,qCAAID,SAAS,CAACC,UAAU;oBAAEC,QAAQ,EAAEC,QAAQ,CAACJ,UAAU,EAAE,EAAE,CAAC;kBAAC;cAC5E;SAAC,CAAC,CAAC;IACR,CAAC,AAAC;QAMiBH,IAAoC;IAJvD,qBACI,sBAACQ,KAAK,MAAA;;0BACF,qBAACC,KAAI,KAAA;0BAAEZ,KAAK;cAAQ;0BACpB,qBAACa,KAAgB,iBAAA;gBACbC,KAAK,EAAEX,CAAAA,IAAoC,GAApCA,KAAK,CAACK,UAAU,CAACC,QAAQ,CAACM,QAAQ,EAAE,cAApCZ,IAAoC,cAApCA,IAAoC,GAAIF,MAAM,aAANA,MAAM,WAAK,GAAXA,KAAAA,CAAW,GAAXA,MAAM,AAAE,CAAC,CAAC,CAAC,CAACc,QAAQ,EAAE;gBACrEC,QAAQ,EAAEX,aAAa;gBACvBY,IAAI,EAAEhB,MAAM,CAACiB,GAAG,CAAC,SAACJ,KAAK;2BAAKA,KAAK,CAACC,QAAQ,EAAE;iBAAA,CAAC;gBAC7CI,KAAK,EAAC,QAAQ;gBACdC,IAAI,EAAC,IAAI;cACX;;MACE,CACV;AACN,CAAC,AAAC;AAEFrB,YAAY,CAACsB,YAAY,GAAG,EAAE,CAAC"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TablePredicate", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TablePredicate;
9
+ }
10
+ });
11
+ var _defineProperty = require("@swc/helpers/lib/_define_property.js").default;
12
+ var _objectSpread = require("@swc/helpers/lib/_object_spread.js").default;
13
+ var _objectSpreadProps = require("@swc/helpers/lib/_object_spread_props.js").default;
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ var _core = require("@mantine/core");
16
+ var _useTable = require("./useTable");
17
+ var TablePredicate = function(param) {
18
+ var id = param.id, data = param.data, label = param.label;
19
+ var ref = (0, _useTable.useTable)(), onChange = ref.onChange, form = ref.form;
20
+ var onUpdate = function(newValue) {
21
+ form.setFieldValue("predicates", _objectSpreadProps(_objectSpread({}, form.values.predicates), _defineProperty({}, id, newValue)));
22
+ onChange === null || onChange === void 0 ? void 0 : onChange();
23
+ };
24
+ return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_core.Group, {
25
+ spacing: "xs",
26
+ children: [
27
+ label ? /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_core.Text, {
28
+ children: [
29
+ label,
30
+ ":"
31
+ ]
32
+ }) : null,
33
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Select, {
34
+ withinPortal: true,
35
+ value: form.values.predicates[id],
36
+ onChange: onUpdate,
37
+ data: data,
38
+ "aria-label": label !== null && label !== void 0 ? label : id,
39
+ searchable: data.length > 7
40
+ })
41
+ ]
42
+ });
43
+ };
44
+
45
+ //# sourceMappingURL=TablePredicate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/TablePredicate.tsx"],"sourcesContent":["import {Select, SelectItem, Group, Text} from '@mantine/core';\nimport {FunctionComponent} from 'react';\nimport {useTable} from './useTable';\n\ninterface TablePredicateProps {\n /**\n * Unique identifier for this predicate. Will be used to access the selected value in the table state\n */\n id: string;\n /**\n * The values to display in the predicate\n */\n data: SelectItem[];\n /**\n * Input label (not displayed for now)\n *\n * @default default to the predicate id\n */\n label?: string;\n}\n\nexport const TablePredicate: FunctionComponent<TablePredicateProps> = ({id, data, label}) => {\n const {onChange, form} = useTable();\n\n const onUpdate = (newValue: string) => {\n form.setFieldValue('predicates', {...form.values.predicates, [id]: newValue});\n onChange?.();\n };\n\n return (\n <Group spacing=\"xs\">\n {label ? <Text>{label}:</Text> : null}\n <Select\n withinPortal\n value={form.values.predicates[id]}\n onChange={onUpdate}\n data={data}\n aria-label={label ?? id}\n searchable={data.length > 7}\n />\n </Group>\n );\n};\n"],"names":["TablePredicate","id","data","label","useTable","onChange","form","onUpdate","newValue","setFieldValue","values","predicates","Group","spacing","Text","Select","withinPortal","value","aria-label","searchable","length"],"mappings":"AAAA;;;;+BAqBaA,gBAAc;;;eAAdA,cAAc;;;;;;;oBArBmB,eAAe;wBAEtC,YAAY;AAmB5B,IAAMA,cAAc,GAA2C,gBAAuB;QAArBC,EAAE,SAAFA,EAAE,EAAEC,IAAI,SAAJA,IAAI,EAAEC,KAAK,SAALA,KAAK;IACnF,IAAyBC,GAAU,GAAVA,IAAAA,SAAQ,SAAA,GAAE,EAA5BC,QAAQ,GAAUD,GAAU,CAA5BC,QAAQ,EAAEC,IAAI,GAAIF,GAAU,CAAlBE,IAAI,AAAe;IAEpC,IAAMC,QAAQ,GAAG,SAACC,QAAgB,EAAK;QACnCF,IAAI,CAACG,aAAa,CAAC,YAAY,EAAE,qCAAIH,IAAI,CAACI,MAAM,CAACC,UAAU,GAAE,oBAACV,EAAE,EAAGO,QAAQ,CAAA,CAAC,CAAC,CAAC;QAC9EH,QAAQ,aAARA,QAAQ,WAAI,GAAZA,KAAAA,CAAY,GAAZA,QAAQ,EAAI,CAAC;IACjB,CAAC,AAAC;IAEF,qBACI,sBAACO,KAAK,MAAA;QAACC,OAAO,EAAC,IAAI;;YACdV,KAAK,iBAAG,sBAACW,KAAI,KAAA;;oBAAEX,KAAK;oBAAC,GAAC;;cAAO,GAAG,IAAI;0BACrC,qBAACY,KAAM,OAAA;gBACHC,YAAY;gBACZC,KAAK,EAAEX,IAAI,CAACI,MAAM,CAACC,UAAU,CAACV,EAAE,CAAC;gBACjCI,QAAQ,EAAEE,QAAQ;gBAClBL,IAAI,EAAEA,IAAI;gBACVgB,YAAU,EAAEf,KAAK,aAALA,KAAK,cAALA,KAAK,GAAIF,EAAE;gBACvBkB,UAAU,EAAEjB,IAAI,CAACkB,MAAM,GAAG,CAAC;cAC7B;;MACE,CACV;AACN,CAAC,AAAC"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "Th", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Th;
9
+ }
10
+ });
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ var _plasmaReactIcons = require("@coveord/plasma-react-icons");
13
+ var _core = require("@mantine/core");
14
+ var _reactTable = require("@tanstack/react-table");
15
+ var useStyles = (0, _core.createStyles)(function(theme) {
16
+ return {
17
+ th: {
18
+ padding: "0 !important",
19
+ fontWeight: "400 !important",
20
+ color: theme.black + "!important",
21
+ button: {
22
+ padding: "8px 16px",
23
+ div: {
24
+ padding: "0px !important"
25
+ }
26
+ },
27
+ div: {
28
+ padding: "8px 16px"
29
+ }
30
+ },
31
+ noSort: {
32
+ padding: "".concat(theme.spacing.xs, "px ").concat(theme.spacing.md, "px")
33
+ },
34
+ control: {
35
+ width: "100%",
36
+ padding: "".concat(theme.spacing.xs, "px ").concat(theme.spacing.md, "px"),
37
+ "&:hover": {
38
+ backgroundColor: theme.colorScheme === "dark" ? theme.colors.gray[6] : theme.colors.gray[2]
39
+ }
40
+ }
41
+ };
42
+ });
43
+ var SortingIcons = {
44
+ asc: _plasmaReactIcons.ArrowHeadDownSize16Px,
45
+ desc: _plasmaReactIcons.ArrowHeadUpSize16Px
46
+ };
47
+ var SortingLabels = {
48
+ asc: "ascending",
49
+ desc: "descending"
50
+ };
51
+ var Th = function(param) {
52
+ var header = param.header;
53
+ var classes = useStyles().classes;
54
+ var size = header.column.getSize();
55
+ var width = size !== _reactTable.defaultColumnSizing.size ? size : undefined;
56
+ if (header.isPlaceholder) {
57
+ return null;
58
+ }
59
+ if (!header.column.getCanSort()) {
60
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)("th", {
61
+ className: classes.th,
62
+ style: {
63
+ width: width
64
+ },
65
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Text, {
66
+ className: classes.noSort,
67
+ size: "xs",
68
+ children: (0, _reactTable.flexRender)(header.column.columnDef.header, header.getContext())
69
+ })
70
+ });
71
+ }
72
+ var onSort = header.column.getToggleSortingHandler();
73
+ var sortingOrder = header.column.getIsSorted();
74
+ var Icon = SortingIcons[sortingOrder || header.column.getFirstSortDir()];
75
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)("th", {
76
+ className: classes.th,
77
+ style: {
78
+ width: width
79
+ },
80
+ "aria-sort": sortingOrder ? SortingLabels[sortingOrder] : "none",
81
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.UnstyledButton, {
82
+ onClick: onSort,
83
+ className: classes.control,
84
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_core.Group, {
85
+ position: "apart",
86
+ children: [
87
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Text, {
88
+ size: "xs",
89
+ children: (0, _reactTable.flexRender)(header.column.columnDef.header, header.getContext())
90
+ }),
91
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Center, {
92
+ sx: function(theme) {
93
+ return {
94
+ color: sortingOrder ? theme.colors.action[8] : undefined
95
+ };
96
+ },
97
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(Icon, {
98
+ height: 14
99
+ })
100
+ })
101
+ ]
102
+ })
103
+ })
104
+ });
105
+ };
106
+
107
+ //# sourceMappingURL=Th.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/Th.tsx"],"sourcesContent":["import {ArrowHeadDownSize16Px, ArrowHeadUpSize16Px} from '@coveord/plasma-react-icons';\nimport {Center, createStyles, Group, Text, UnstyledButton} from '@mantine/core';\nimport {defaultColumnSizing, flexRender, Header} from '@tanstack/react-table';\n\nconst useStyles = createStyles((theme) => ({\n th: {\n padding: '0 !important',\n fontWeight: '400 !important' as any,\n color: theme.black + '!important',\n button: {\n padding: '8px 16px',\n div: {\n padding: '0px !important',\n },\n },\n div: {\n padding: '8px 16px',\n },\n },\n\n noSort: {\n padding: `${theme.spacing.xs}px ${theme.spacing.md}px`,\n },\n\n control: {\n width: '100%',\n padding: `${theme.spacing.xs}px ${theme.spacing.md}px`,\n\n '&:hover': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.gray[6] : theme.colors.gray[2],\n },\n },\n}));\n\ninterface ThProps<T> {\n header: Header<T, unknown>;\n}\n\nconst SortingIcons = {\n asc: ArrowHeadDownSize16Px,\n desc: ArrowHeadUpSize16Px,\n};\n\nconst SortingLabels = {\n asc: 'ascending',\n desc: 'descending',\n} as const;\n\nexport const Th = <T,>({header}: ThProps<T>) => {\n const {classes} = useStyles();\n const size = header.column.getSize();\n const width = size !== defaultColumnSizing.size ? size : undefined;\n\n if (header.isPlaceholder) {\n return null;\n }\n\n if (!header.column.getCanSort()) {\n return (\n <th className={classes.th} style={{width}}>\n <Text className={classes.noSort} size=\"xs\">\n {flexRender(header.column.columnDef.header, header.getContext())}\n </Text>\n </th>\n );\n }\n\n const onSort = header.column.getToggleSortingHandler();\n const sortingOrder = header.column.getIsSorted();\n const Icon = SortingIcons[sortingOrder || header.column.getFirstSortDir()];\n\n return (\n <th className={classes.th} style={{width}} aria-sort={sortingOrder ? SortingLabels[sortingOrder] : 'none'}>\n <UnstyledButton onClick={onSort} className={classes.control}>\n <Group position=\"apart\">\n <Text size=\"xs\">{flexRender(header.column.columnDef.header, header.getContext())}</Text>\n <Center sx={(theme) => ({color: sortingOrder ? theme.colors.action[8] : undefined})}>\n <Icon height={14} />\n </Center>\n </Group>\n </UnstyledButton>\n </th>\n );\n};\n"],"names":["Th","useStyles","createStyles","theme","th","padding","fontWeight","color","black","button","div","noSort","spacing","xs","md","control","width","backgroundColor","colorScheme","colors","gray","SortingIcons","asc","ArrowHeadDownSize16Px","desc","ArrowHeadUpSize16Px","SortingLabels","header","classes","size","column","getSize","defaultColumnSizing","undefined","isPlaceholder","getCanSort","className","style","Text","flexRender","columnDef","getContext","onSort","getToggleSortingHandler","sortingOrder","getIsSorted","Icon","getFirstSortDir","aria-sort","UnstyledButton","onClick","Group","position","Center","sx","action","height"],"mappings":"AAAA;;;;+BAgDaA,IAAE;;;eAAFA,EAAE;;;;gCAhD0C,6BAA6B;oBACtB,eAAe;0BACzB,uBAAuB;AAE7E,IAAMC,SAAS,GAAGC,IAAAA,KAAY,aAAA,EAAC,SAACC,KAAK;WAAM;QACvCC,EAAE,EAAE;YACAC,OAAO,EAAE,cAAc;YACvBC,UAAU,EAAE,gBAAgB;YAC5BC,KAAK,EAAEJ,KAAK,CAACK,KAAK,GAAG,YAAY;YACjCC,MAAM,EAAE;gBACJJ,OAAO,EAAE,UAAU;gBACnBK,GAAG,EAAE;oBACDL,OAAO,EAAE,gBAAgB;iBAC5B;aACJ;YACDK,GAAG,EAAE;gBACDL,OAAO,EAAE,UAAU;aACtB;SACJ;QAEDM,MAAM,EAAE;YACJN,OAAO,EAAE,AAAC,EAAA,CAAwBF,MAAgB,CAAtCA,KAAK,CAACS,OAAO,CAACC,EAAE,EAAC,KAAG,CAAmB,CAAA,MAAE,CAAnBV,KAAK,CAACS,OAAO,CAACE,EAAE,EAAC,IAAE,CAAC;SACzD;QAEDC,OAAO,EAAE;YACLC,KAAK,EAAE,MAAM;YACbX,OAAO,EAAE,AAAC,EAAA,CAAwBF,MAAgB,CAAtCA,KAAK,CAACS,OAAO,CAACC,EAAE,EAAC,KAAG,CAAmB,CAAA,MAAE,CAAnBV,KAAK,CAACS,OAAO,CAACE,EAAE,EAAC,IAAE,CAAC;YAEtD,SAAS,EAAE;gBACPG,eAAe,EAAEd,KAAK,CAACe,WAAW,KAAK,MAAM,GAAGf,KAAK,CAACgB,MAAM,CAACC,IAAI,CAAC,CAAC,CAAC,GAAGjB,KAAK,CAACgB,MAAM,CAACC,IAAI,CAAC,CAAC,CAAC;aAC9F;SACJ;KACJ;CAAC,CAAC,AAAC;AAMJ,IAAMC,YAAY,GAAG;IACjBC,GAAG,EAAEC,iBAAqB,sBAAA;IAC1BC,IAAI,EAAEC,iBAAmB,oBAAA;CAC5B,AAAC;AAEF,IAAMC,aAAa,GAAG;IAClBJ,GAAG,EAAE,WAAW;IAChBE,IAAI,EAAE,YAAY;CACrB,AAAS,AAAC;AAEJ,IAAMxB,EAAE,GAAG,gBAA8B;QAAxB2B,MAAM,SAANA,MAAM;IAC1B,IAAM,AAACC,OAAO,GAAI3B,SAAS,EAAE,CAAtB2B,OAAO,AAAe,AAAC;IAC9B,IAAMC,IAAI,GAAGF,MAAM,CAACG,MAAM,CAACC,OAAO,EAAE,AAAC;IACrC,IAAMf,KAAK,GAAGa,IAAI,KAAKG,WAAmB,oBAAA,CAACH,IAAI,GAAGA,IAAI,GAAGI,SAAS,AAAC;IAEnE,IAAIN,MAAM,CAACO,aAAa,EAAE;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,CAACP,MAAM,CAACG,MAAM,CAACK,UAAU,EAAE,EAAE;QAC7B,qBACI,qBAAC/B,IAAE;YAACgC,SAAS,EAAER,OAAO,CAACxB,EAAE;YAAEiC,KAAK,EAAE;gBAACrB,KAAK,EAALA,KAAK;aAAC;sBACrC,cAAA,qBAACsB,KAAI,KAAA;gBAACF,SAAS,EAAER,OAAO,CAACjB,MAAM;gBAAEkB,IAAI,EAAC,IAAI;0BACrCU,IAAAA,WAAU,WAAA,EAACZ,MAAM,CAACG,MAAM,CAACU,SAAS,CAACb,MAAM,EAAEA,MAAM,CAACc,UAAU,EAAE,CAAC;cAC7D;UACN,CACP;IACN,CAAC;IAED,IAAMC,MAAM,GAAGf,MAAM,CAACG,MAAM,CAACa,uBAAuB,EAAE,AAAC;IACvD,IAAMC,YAAY,GAAGjB,MAAM,CAACG,MAAM,CAACe,WAAW,EAAE,AAAC;IACjD,IAAMC,IAAI,GAAGzB,YAAY,CAACuB,YAAY,IAAIjB,MAAM,CAACG,MAAM,CAACiB,eAAe,EAAE,CAAC,AAAC;IAE3E,qBACI,qBAAC3C,IAAE;QAACgC,SAAS,EAAER,OAAO,CAACxB,EAAE;QAAEiC,KAAK,EAAE;YAACrB,KAAK,EAALA,KAAK;SAAC;QAAEgC,WAAS,EAAEJ,YAAY,GAAGlB,aAAa,CAACkB,YAAY,CAAC,GAAG,MAAM;kBACrG,cAAA,qBAACK,KAAc,eAAA;YAACC,OAAO,EAAER,MAAM;YAAEN,SAAS,EAAER,OAAO,CAACb,OAAO;sBACvD,cAAA,sBAACoC,KAAK,MAAA;gBAACC,QAAQ,EAAC,OAAO;;kCACnB,qBAACd,KAAI,KAAA;wBAACT,IAAI,EAAC,IAAI;kCAAEU,IAAAA,WAAU,WAAA,EAACZ,MAAM,CAACG,MAAM,CAACU,SAAS,CAACb,MAAM,EAAEA,MAAM,CAACc,UAAU,EAAE,CAAC;sBAAQ;kCACxF,qBAACY,KAAM,OAAA;wBAACC,EAAE,EAAE,SAACnD,KAAK;mCAAM;gCAACI,KAAK,EAAEqC,YAAY,GAAGzC,KAAK,CAACgB,MAAM,CAACoC,MAAM,CAAC,CAAC,CAAC,GAAGtB,SAAS;6BAAC;yBAAC;kCAC/E,cAAA,qBAACa,IAAI;4BAACU,MAAM,EAAE,EAAE;0BAAI;sBACf;;cACL;UACK;MAChB,CACP;AACN,CAAC,AAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ var _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
+ _exportStar(require("./Table"), exports);
7
+ _exportStar(require("./useTable"), exports);
8
+
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/index.ts"],"sourcesContent":["export * from './Table';\nexport {type onTableChangeEvent} from './TableContext';\nexport * from './useTable';\n"],"names":[],"mappings":"AAAA;;;;;oBAAc,SAAS;oBAET,YAAY"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useTable", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return useTable;
9
+ }
10
+ });
11
+ var _react = require("react");
12
+ var _tableContext = require("./TableContext");
13
+ var useTable = function() {
14
+ var ctx = (0, _react.useContext)(_tableContext.TableContext);
15
+ if (ctx === null) {
16
+ throw new Error("useTable must be used inside of a TableContext.Provider");
17
+ }
18
+ return ctx;
19
+ };
20
+
21
+ //# sourceMappingURL=useTable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/useTable.tsx"],"sourcesContent":["import {useContext} from 'react';\nimport {TableContext} from './TableContext';\n\nexport const useTable = () => {\n const ctx = useContext(TableContext);\n if (ctx === null) {\n throw new Error('useTable must be used inside of a TableContext.Provider');\n }\n\n return ctx;\n};\n"],"names":["useTable","ctx","useContext","TableContext","Error"],"mappings":"AAAA;;;;+BAGaA,UAAQ;;;eAARA,QAAQ;;;qBAHI,OAAO;4BACL,gBAAgB;AAEpC,IAAMA,QAAQ,GAAG,WAAM;IAC1B,IAAMC,GAAG,GAAGC,IAAAA,MAAU,WAAA,EAACC,aAAY,aAAA,CAAC,AAAC;IACrC,IAAIF,GAAG,KAAK,IAAI,EAAE;QACd,MAAM,IAAIG,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC/E,CAAC;IAED,OAAOH,GAAG,CAAC;AACf,CAAC,AAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ var _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
+ _exportStar(require("./useParentHeight"), exports);
7
+ _exportStar(require("./useControlledList"), exports);
8
+
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/hooks/index.ts"],"sourcesContent":["export * from './useParentHeight';\nexport * from './useControlledList';\n"],"names":[],"mappings":"AAAA;;;;;oBAAc,mBAAmB;oBACnB,qBAAqB"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useControlledList", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return useControlledList;
9
+ }
10
+ });
11
+ var _slicedToArray = require("@swc/helpers/lib/_sliced_to_array.js").default;
12
+ var _toConsumableArray = require("@swc/helpers/lib/_to_consumable_array.js").default;
13
+ var _hooks = require("@mantine/hooks");
14
+ var useControlledList = function(param) {
15
+ var defaultValue = param.defaultValue, value = param.value, onChange = param.onChange;
16
+ var ref = _slicedToArray((0, _hooks.useUncontrolled)({
17
+ value: value,
18
+ defaultValue: defaultValue,
19
+ finalValue: [],
20
+ onChange: onChange
21
+ }), 2), values = ref[0], handleChange = ref[1];
22
+ var remove = function(index) {
23
+ var newValues = values.filter(function(_, i) {
24
+ return i !== index;
25
+ });
26
+ handleChange === null || handleChange === void 0 ? void 0 : handleChange(newValues);
27
+ };
28
+ var append = function(item) {
29
+ var newValues = _toConsumableArray(values).concat([
30
+ item
31
+ ]);
32
+ handleChange === null || handleChange === void 0 ? void 0 : handleChange(newValues);
33
+ };
34
+ var reorder = function(param) {
35
+ var from = param.from, to = param.to;
36
+ var newValues = _toConsumableArray(values);
37
+ var item = values[from];
38
+ newValues.splice(from, 1);
39
+ newValues.splice(to, 0, item);
40
+ handleChange === null || handleChange === void 0 ? void 0 : handleChange(newValues);
41
+ };
42
+ return [
43
+ values,
44
+ {
45
+ remove: remove,
46
+ append: append,
47
+ reorder: reorder
48
+ }
49
+ ];
50
+ };
51
+
52
+ //# sourceMappingURL=useControlledList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/hooks/useControlledList.ts"],"sourcesContent":["import {useUncontrolled} from '@mantine/hooks';\n\ninterface UseControlledList<T> {\n /** Initial value for uncontrolled state */\n defaultValue?: T[];\n /** Value for controlled state */\n value?: T[];\n /** Controlled state onChange handler */\n onChange?: (values: T[]) => void;\n}\n\ninterface ListHandlers<T> {\n /** Appends the item at the end of the list */\n append: (item: T) => void;\n /** Removes the item at the index from the list */\n remove: (index: number) => void;\n /** Moves the item at the \"from\" position to another position within the list */\n reorder: ({from, to}: {from: number; to: number}) => void;\n}\n\n/**\n * Manage a list of items in a controlled fashion, to be used with inputs\n */\nexport const useControlledList = <T>({defaultValue, value, onChange}: UseControlledList<T>): [T[], ListHandlers<T>] => {\n const [values, handleChange] = useUncontrolled({\n value,\n defaultValue,\n finalValue: [],\n onChange,\n });\n\n const remove = (index: number) => {\n const newValues = values.filter((_, i) => i !== index);\n handleChange?.(newValues);\n };\n\n const append = (item: T) => {\n const newValues = [...values, item];\n handleChange?.(newValues);\n };\n\n const reorder = ({from, to}: {from: number; to: number}) => {\n const newValues = [...values];\n const item = values[from];\n\n newValues.splice(from, 1);\n newValues.splice(to, 0, item);\n\n handleChange?.(newValues);\n };\n\n return [values, {remove, append, reorder}];\n};\n"],"names":["useControlledList","defaultValue","value","onChange","useUncontrolled","finalValue","values","handleChange","remove","index","newValues","filter","_","i","append","item","reorder","from","to","splice"],"mappings":"AAAA;;;;+BAuBaA,mBAAiB;;;eAAjBA,iBAAiB;;;;;qBAvBA,gBAAgB;AAuBvC,IAAMA,iBAAiB,GAAG,gBAAsF;QAAjFC,YAAY,SAAZA,YAAY,EAAEC,KAAK,SAALA,KAAK,EAAEC,QAAQ,SAARA,QAAQ;IAC/D,IAA+BC,GAK7B,kBAL6BA,IAAAA,MAAe,gBAAA,EAAC;QAC3CF,KAAK,EAALA,KAAK;QACLD,YAAY,EAAZA,YAAY;QACZI,UAAU,EAAE,EAAE;QACdF,QAAQ,EAARA,QAAQ;KACX,CAAC,IAAA,EALKG,MAAM,GAAkBF,GAK7B,GALW,EAAEG,YAAY,GAAIH,GAK7B,GALyB,AAKxB;IAEH,IAAMI,MAAM,GAAG,SAACC,KAAa,EAAK;QAC9B,IAAMC,SAAS,GAAGJ,MAAM,CAACK,MAAM,CAAC,SAACC,CAAC,EAAEC,CAAC;mBAAKA,CAAC,KAAKJ,KAAK;SAAA,CAAC,AAAC;QACvDF,YAAY,aAAZA,YAAY,WAAa,GAAzBA,KAAAA,CAAyB,GAAzBA,YAAY,CAAGG,SAAS,CAAC,CAAC;IAC9B,CAAC,AAAC;IAEF,IAAMI,MAAM,GAAG,SAACC,IAAO,EAAK;QACxB,IAAML,SAAS,GAAG,AAAC,mBAAGJ,MAAM,CAANA,QAAJ;YAAYS,IAAI;SAAC,CAAA,AAAC;QACpCR,YAAY,aAAZA,YAAY,WAAa,GAAzBA,KAAAA,CAAyB,GAAzBA,YAAY,CAAGG,SAAS,CAAC,CAAC;IAC9B,CAAC,AAAC;IAEF,IAAMM,OAAO,GAAG,gBAA4C;YAA1CC,IAAI,SAAJA,IAAI,EAAEC,EAAE,SAAFA,EAAE;QACtB,IAAMR,SAAS,GAAI,mBAAGJ,MAAM,CAANA,AAAO,AAAC;QAC9B,IAAMS,IAAI,GAAGT,MAAM,CAACW,IAAI,CAAC,AAAC;QAE1BP,SAAS,CAACS,MAAM,CAACF,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1BP,SAAS,CAACS,MAAM,CAACD,EAAE,EAAE,CAAC,EAAEH,IAAI,CAAC,CAAC;QAE9BR,YAAY,aAAZA,YAAY,WAAa,GAAzBA,KAAAA,CAAyB,GAAzBA,YAAY,CAAGG,SAAS,CAAC,CAAC;IAC9B,CAAC,AAAC;IAEF,OAAO;QAACJ,MAAM;QAAE;YAACE,MAAM,EAANA,MAAM;YAAEM,MAAM,EAANA,MAAM;YAAEE,OAAO,EAAPA,OAAO;SAAC;KAAC,CAAC;AAC/C,CAAC,AAAC"}