@coveord/plasma-mantine 47.4.0

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 (421) hide show
  1. package/.eslintrc.js +27 -0
  2. package/.turbo/turbo-build.log +8 -0
  3. package/.turbo/turbo-test.log +29 -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 +176 -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/index.js +8 -0
  25. package/dist/cjs/components/code-editor/index.js.map +1 -0
  26. package/dist/cjs/components/collection/Collection.example.js +64 -0
  27. package/dist/cjs/components/collection/Collection.example.js.map +1 -0
  28. package/dist/cjs/components/collection/Collection.js +130 -0
  29. package/dist/cjs/components/collection/Collection.js.map +1 -0
  30. package/dist/cjs/components/collection/CollectionItem.js +109 -0
  31. package/dist/cjs/components/collection/CollectionItem.js.map +1 -0
  32. package/dist/cjs/components/collection/Colllection.styles.js +24 -0
  33. package/dist/cjs/components/collection/Colllection.styles.js.map +1 -0
  34. package/dist/cjs/components/collection/index.js +8 -0
  35. package/dist/cjs/components/collection/index.js.map +1 -0
  36. package/dist/cjs/components/date-range-picker/DateRangePickerInlineCalendar.js +102 -0
  37. package/dist/cjs/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -0
  38. package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js +93 -0
  39. package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -0
  40. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js +64 -0
  41. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -0
  42. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js +66 -0
  43. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js.map +1 -0
  44. package/dist/cjs/components/date-range-picker/index.js +9 -0
  45. package/dist/cjs/components/date-range-picker/index.js.map +1 -0
  46. package/dist/cjs/components/header/Header.js +78 -0
  47. package/dist/cjs/components/header/Header.js.map +1 -0
  48. package/dist/cjs/components/header/index.js +8 -0
  49. package/dist/cjs/components/header/index.js.map +1 -0
  50. package/dist/cjs/components/index.js +16 -0
  51. package/dist/cjs/components/index.js.map +1 -0
  52. package/dist/cjs/components/inline-confirm/InlineConfirm.js +39 -0
  53. package/dist/cjs/components/inline-confirm/InlineConfirm.js.map +1 -0
  54. package/dist/cjs/components/inline-confirm/InlineConfirmButton.js +28 -0
  55. package/dist/cjs/components/inline-confirm/InlineConfirmButton.js.map +1 -0
  56. package/dist/cjs/components/inline-confirm/InlineConfirmContext.js +14 -0
  57. package/dist/cjs/components/inline-confirm/InlineConfirmContext.js.map +1 -0
  58. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js +48 -0
  59. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js.map +1 -0
  60. package/dist/cjs/components/inline-confirm/index.js +10 -0
  61. package/dist/cjs/components/inline-confirm/index.js.map +1 -0
  62. package/dist/cjs/components/inline-confirm/useInlineConfirm.js +21 -0
  63. package/dist/cjs/components/inline-confirm/useInlineConfirm.js.map +1 -0
  64. package/dist/cjs/components/modal-wizard/ModalWizard.js +132 -0
  65. package/dist/cjs/components/modal-wizard/ModalWizard.js.map +1 -0
  66. package/dist/cjs/components/modal-wizard/ModalWizardStep.js +23 -0
  67. package/dist/cjs/components/modal-wizard/ModalWizardStep.js.map +1 -0
  68. package/dist/cjs/components/modal-wizard/index.js +8 -0
  69. package/dist/cjs/components/modal-wizard/index.js.map +1 -0
  70. package/dist/cjs/components/sticky-footer/StickyFooter.js +50 -0
  71. package/dist/cjs/components/sticky-footer/StickyFooter.js.map +1 -0
  72. package/dist/cjs/components/sticky-footer/index.js +8 -0
  73. package/dist/cjs/components/sticky-footer/index.js.map +1 -0
  74. package/dist/cjs/components/table/Table.js +259 -0
  75. package/dist/cjs/components/table/Table.js.map +1 -0
  76. package/dist/cjs/components/table/TableActions.js +25 -0
  77. package/dist/cjs/components/table/TableActions.js.map +1 -0
  78. package/dist/cjs/components/table/TableCollapsibleColumn.js +33 -0
  79. package/dist/cjs/components/table/TableCollapsibleColumn.js.map +1 -0
  80. package/dist/cjs/components/table/TableContext.js +14 -0
  81. package/dist/cjs/components/table/TableContext.js.map +1 -0
  82. package/dist/cjs/components/table/TableDateRangePicker.js +84 -0
  83. package/dist/cjs/components/table/TableDateRangePicker.js.map +1 -0
  84. package/dist/cjs/components/table/TableFilter.js +53 -0
  85. package/dist/cjs/components/table/TableFilter.js.map +1 -0
  86. package/dist/cjs/components/table/TableFooter.js +23 -0
  87. package/dist/cjs/components/table/TableFooter.js.map +1 -0
  88. package/dist/cjs/components/table/TableHeader.js +37 -0
  89. package/dist/cjs/components/table/TableHeader.js.map +1 -0
  90. package/dist/cjs/components/table/TablePagination.js +47 -0
  91. package/dist/cjs/components/table/TablePagination.js.map +1 -0
  92. package/dist/cjs/components/table/TablePerPage.js +52 -0
  93. package/dist/cjs/components/table/TablePerPage.js.map +1 -0
  94. package/dist/cjs/components/table/TablePredicate.js +45 -0
  95. package/dist/cjs/components/table/TablePredicate.js.map +1 -0
  96. package/dist/cjs/components/table/Th.js +98 -0
  97. package/dist/cjs/components/table/Th.js.map +1 -0
  98. package/dist/cjs/components/table/index.js +9 -0
  99. package/dist/cjs/components/table/index.js.map +1 -0
  100. package/dist/cjs/components/table/useTable.js +21 -0
  101. package/dist/cjs/components/table/useTable.js.map +1 -0
  102. package/dist/cjs/hooks/index.js +9 -0
  103. package/dist/cjs/hooks/index.js.map +1 -0
  104. package/dist/cjs/hooks/useControlledList.js +52 -0
  105. package/dist/cjs/hooks/useControlledList.js.map +1 -0
  106. package/dist/cjs/hooks/useParentHeight.js +36 -0
  107. package/dist/cjs/hooks/useParentHeight.js.map +1 -0
  108. package/dist/cjs/index.js +33 -0
  109. package/dist/cjs/index.js.map +1 -0
  110. package/dist/cjs/theme/PlasmaColors.js +54 -0
  111. package/dist/cjs/theme/PlasmaColors.js.map +1 -0
  112. package/dist/cjs/theme/Plasmantine.js +24 -0
  113. package/dist/cjs/theme/Plasmantine.js.map +1 -0
  114. package/dist/cjs/theme/Theme.js +223 -0
  115. package/dist/cjs/theme/Theme.js.map +1 -0
  116. package/dist/cjs/theme/index.js +8 -0
  117. package/dist/cjs/theme/index.js.map +1 -0
  118. package/dist/definitions/__tests__/GlobalSetup.d.ts +3 -0
  119. package/dist/definitions/__tests__/GlobalSetup.d.ts.map +1 -0
  120. package/dist/definitions/__tests__/Setup.d.ts +5 -0
  121. package/dist/definitions/__tests__/Setup.d.ts.map +1 -0
  122. package/dist/definitions/__tests__/SetupAfterEnv.d.ts +7 -0
  123. package/dist/definitions/__tests__/SetupAfterEnv.d.ts.map +1 -0
  124. package/dist/definitions/__tests__/Utils.d.ts +8 -0
  125. package/dist/definitions/__tests__/Utils.d.ts.map +1 -0
  126. package/dist/definitions/components/blank-slate/BlankSlate.d.ts +12 -0
  127. package/dist/definitions/components/blank-slate/BlankSlate.d.ts.map +1 -0
  128. package/dist/definitions/components/blank-slate/index.d.ts +2 -0
  129. package/dist/definitions/components/blank-slate/index.d.ts.map +1 -0
  130. package/dist/definitions/components/code-editor/CodeEditor.d.ts +43 -0
  131. package/dist/definitions/components/code-editor/CodeEditor.d.ts.map +1 -0
  132. package/dist/definitions/components/code-editor/CodeEditor.example.d.ts +4 -0
  133. package/dist/definitions/components/code-editor/CodeEditor.example.d.ts.map +1 -0
  134. package/dist/definitions/components/code-editor/__mocks__/@monaco-editor/react.d.ts +9 -0
  135. package/dist/definitions/components/code-editor/__mocks__/@monaco-editor/react.d.ts.map +1 -0
  136. package/dist/definitions/components/code-editor/index.d.ts +2 -0
  137. package/dist/definitions/components/code-editor/index.d.ts.map +1 -0
  138. package/dist/definitions/components/collection/Collection.d.ts +20 -0
  139. package/dist/definitions/components/collection/Collection.d.ts.map +1 -0
  140. package/dist/definitions/components/collection/Collection.example.d.ts +4 -0
  141. package/dist/definitions/components/collection/Collection.example.d.ts.map +1 -0
  142. package/dist/definitions/components/collection/CollectionItem.d.ts +15 -0
  143. package/dist/definitions/components/collection/CollectionItem.d.ts.map +1 -0
  144. package/dist/definitions/components/collection/Colllection.styles.d.ts +9 -0
  145. package/dist/definitions/components/collection/Colllection.styles.d.ts.map +1 -0
  146. package/dist/definitions/components/collection/index.d.ts +2 -0
  147. package/dist/definitions/components/collection/index.d.ts.map +1 -0
  148. package/dist/definitions/components/date-range-picker/DateRangePickerInlineCalendar.d.ts +37 -0
  149. package/dist/definitions/components/date-range-picker/DateRangePickerInlineCalendar.d.ts.map +1 -0
  150. package/dist/definitions/components/date-range-picker/DateRangePickerPopoverCalendar.d.ts +30 -0
  151. package/dist/definitions/components/date-range-picker/DateRangePickerPopoverCalendar.d.ts.map +1 -0
  152. package/dist/definitions/components/date-range-picker/DateRangePickerPresetSelect.d.ts +16 -0
  153. package/dist/definitions/components/date-range-picker/DateRangePickerPresetSelect.d.ts.map +1 -0
  154. package/dist/definitions/components/date-range-picker/EditableDateRangePicker.d.ts +18 -0
  155. package/dist/definitions/components/date-range-picker/EditableDateRangePicker.d.ts.map +1 -0
  156. package/dist/definitions/components/date-range-picker/index.d.ts +3 -0
  157. package/dist/definitions/components/date-range-picker/index.d.ts.map +1 -0
  158. package/dist/definitions/components/header/Header.d.ts +12 -0
  159. package/dist/definitions/components/header/Header.d.ts.map +1 -0
  160. package/dist/definitions/components/header/index.d.ts +2 -0
  161. package/dist/definitions/components/header/index.d.ts.map +1 -0
  162. package/dist/definitions/components/index.d.ts +10 -0
  163. package/dist/definitions/components/index.d.ts.map +1 -0
  164. package/dist/definitions/components/inline-confirm/InlineConfirm.d.ts +10 -0
  165. package/dist/definitions/components/inline-confirm/InlineConfirm.d.ts.map +1 -0
  166. package/dist/definitions/components/inline-confirm/InlineConfirmButton.d.ts +8 -0
  167. package/dist/definitions/components/inline-confirm/InlineConfirmButton.d.ts.map +1 -0
  168. package/dist/definitions/components/inline-confirm/InlineConfirmContext.d.ts +9 -0
  169. package/dist/definitions/components/inline-confirm/InlineConfirmContext.d.ts.map +1 -0
  170. package/dist/definitions/components/inline-confirm/InlineConfirmPrompt.d.ts +11 -0
  171. package/dist/definitions/components/inline-confirm/InlineConfirmPrompt.d.ts.map +1 -0
  172. package/dist/definitions/components/inline-confirm/index.d.ts +4 -0
  173. package/dist/definitions/components/inline-confirm/index.d.ts.map +1 -0
  174. package/dist/definitions/components/inline-confirm/useInlineConfirm.d.ts +6 -0
  175. package/dist/definitions/components/inline-confirm/useInlineConfirm.d.ts.map +1 -0
  176. package/dist/definitions/components/modal-wizard/ModalWizard.d.ts +73 -0
  177. package/dist/definitions/components/modal-wizard/ModalWizard.d.ts.map +1 -0
  178. package/dist/definitions/components/modal-wizard/ModalWizardStep.d.ts +42 -0
  179. package/dist/definitions/components/modal-wizard/ModalWizardStep.d.ts.map +1 -0
  180. package/dist/definitions/components/modal-wizard/index.d.ts +2 -0
  181. package/dist/definitions/components/modal-wizard/index.d.ts.map +1 -0
  182. package/dist/definitions/components/sticky-footer/StickyFooter.d.ts +11 -0
  183. package/dist/definitions/components/sticky-footer/StickyFooter.d.ts.map +1 -0
  184. package/dist/definitions/components/sticky-footer/index.d.ts +2 -0
  185. package/dist/definitions/components/sticky-footer/index.d.ts.map +1 -0
  186. package/dist/definitions/components/table/Table.d.ts +84 -0
  187. package/dist/definitions/components/table/Table.d.ts.map +1 -0
  188. package/dist/definitions/components/table/TableActions.d.ts +26 -0
  189. package/dist/definitions/components/table/TableActions.d.ts.map +1 -0
  190. package/dist/definitions/components/table/TableCollapsibleColumn.d.ts +6 -0
  191. package/dist/definitions/components/table/TableCollapsibleColumn.d.ts.map +1 -0
  192. package/dist/definitions/components/table/TableContext.d.ts +54 -0
  193. package/dist/definitions/components/table/TableContext.d.ts.map +1 -0
  194. package/dist/definitions/components/table/TableDateRangePicker.d.ts +20 -0
  195. package/dist/definitions/components/table/TableDateRangePicker.d.ts.map +1 -0
  196. package/dist/definitions/components/table/TableFilter.d.ts +12 -0
  197. package/dist/definitions/components/table/TableFilter.d.ts.map +1 -0
  198. package/dist/definitions/components/table/TableFooter.d.ts +3 -0
  199. package/dist/definitions/components/table/TableFooter.d.ts.map +1 -0
  200. package/dist/definitions/components/table/TableHeader.d.ts +3 -0
  201. package/dist/definitions/components/table/TableHeader.d.ts.map +1 -0
  202. package/dist/definitions/components/table/TablePagination.d.ts +10 -0
  203. package/dist/definitions/components/table/TablePagination.d.ts.map +1 -0
  204. package/dist/definitions/components/table/TablePerPage.d.ts +20 -0
  205. package/dist/definitions/components/table/TablePerPage.d.ts.map +1 -0
  206. package/dist/definitions/components/table/TablePredicate.d.ts +21 -0
  207. package/dist/definitions/components/table/TablePredicate.d.ts.map +1 -0
  208. package/dist/definitions/components/table/Th.d.ts +8 -0
  209. package/dist/definitions/components/table/Th.d.ts.map +1 -0
  210. package/dist/definitions/components/table/index.d.ts +4 -0
  211. package/dist/definitions/components/table/index.d.ts.map +1 -0
  212. package/dist/definitions/components/table/useTable.d.ts +11 -0
  213. package/dist/definitions/components/table/useTable.d.ts.map +1 -0
  214. package/dist/definitions/hooks/index.d.ts +3 -0
  215. package/dist/definitions/hooks/index.d.ts.map +1 -0
  216. package/dist/definitions/hooks/useControlledList.d.ts +25 -0
  217. package/dist/definitions/hooks/useControlledList.d.ts.map +1 -0
  218. package/dist/definitions/hooks/useParentHeight.d.ts +5 -0
  219. package/dist/definitions/hooks/useParentHeight.d.ts.map +1 -0
  220. package/dist/definitions/index.d.ts +16 -0
  221. package/dist/definitions/index.d.ts.map +1 -0
  222. package/dist/definitions/theme/PlasmaColors.d.ts +14 -0
  223. package/dist/definitions/theme/PlasmaColors.d.ts.map +1 -0
  224. package/dist/definitions/theme/Plasmantine.d.ts +3 -0
  225. package/dist/definitions/theme/Plasmantine.d.ts.map +1 -0
  226. package/dist/definitions/theme/Theme.d.ts +3 -0
  227. package/dist/definitions/theme/Theme.d.ts.map +1 -0
  228. package/dist/definitions/theme/index.d.ts +2 -0
  229. package/dist/definitions/theme/index.d.ts.map +1 -0
  230. package/dist/esm/__tests__/GlobalSetup.js +7 -0
  231. package/dist/esm/__tests__/GlobalSetup.js.map +1 -0
  232. package/dist/esm/__tests__/Setup.js +5 -0
  233. package/dist/esm/__tests__/Setup.js.map +1 -0
  234. package/dist/esm/__tests__/SetupAfterEnv.js +15 -0
  235. package/dist/esm/__tests__/SetupAfterEnv.js.map +1 -0
  236. package/dist/esm/__tests__/Utils.js +21 -0
  237. package/dist/esm/__tests__/Utils.js.map +1 -0
  238. package/dist/esm/components/blank-slate/BlankSlate.js +16 -0
  239. package/dist/esm/components/blank-slate/BlankSlate.js.map +1 -0
  240. package/dist/esm/components/blank-slate/index.js +3 -0
  241. package/dist/esm/components/blank-slate/index.js.map +1 -0
  242. package/dist/esm/components/code-editor/CodeEditor.example.js +31 -0
  243. package/dist/esm/components/code-editor/CodeEditor.example.js.map +1 -0
  244. package/dist/esm/components/code-editor/CodeEditor.js +165 -0
  245. package/dist/esm/components/code-editor/CodeEditor.js.map +1 -0
  246. package/dist/esm/components/code-editor/__mocks__/@monaco-editor/react.js +12 -0
  247. package/dist/esm/components/code-editor/__mocks__/@monaco-editor/react.js.map +1 -0
  248. package/dist/esm/components/code-editor/index.js +3 -0
  249. package/dist/esm/components/code-editor/index.js.map +1 -0
  250. package/dist/esm/components/collection/Collection.example.js +54 -0
  251. package/dist/esm/components/collection/Collection.example.js.map +1 -0
  252. package/dist/esm/components/collection/Collection.js +119 -0
  253. package/dist/esm/components/collection/Collection.js.map +1 -0
  254. package/dist/esm/components/collection/CollectionItem.js +98 -0
  255. package/dist/esm/components/collection/CollectionItem.js.map +1 -0
  256. package/dist/esm/components/collection/Colllection.styles.js +14 -0
  257. package/dist/esm/components/collection/Colllection.styles.js.map +1 -0
  258. package/dist/esm/components/collection/index.js +3 -0
  259. package/dist/esm/components/collection/index.js.map +1 -0
  260. package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js +92 -0
  261. package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -0
  262. package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js +83 -0
  263. package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -0
  264. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js +53 -0
  265. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -0
  266. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js +56 -0
  267. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js.map +1 -0
  268. package/dist/esm/components/date-range-picker/index.js +4 -0
  269. package/dist/esm/components/date-range-picker/index.js.map +1 -0
  270. package/dist/esm/components/header/Header.js +68 -0
  271. package/dist/esm/components/header/Header.js.map +1 -0
  272. package/dist/esm/components/header/index.js +3 -0
  273. package/dist/esm/components/header/index.js.map +1 -0
  274. package/dist/esm/components/index.js +11 -0
  275. package/dist/esm/components/index.js.map +1 -0
  276. package/dist/esm/components/inline-confirm/InlineConfirm.js +29 -0
  277. package/dist/esm/components/inline-confirm/InlineConfirm.js.map +1 -0
  278. package/dist/esm/components/inline-confirm/InlineConfirmButton.js +18 -0
  279. package/dist/esm/components/inline-confirm/InlineConfirmButton.js.map +1 -0
  280. package/dist/esm/components/inline-confirm/InlineConfirmContext.js +4 -0
  281. package/dist/esm/components/inline-confirm/InlineConfirmContext.js.map +1 -0
  282. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js +38 -0
  283. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js.map +1 -0
  284. package/dist/esm/components/inline-confirm/index.js +5 -0
  285. package/dist/esm/components/inline-confirm/index.js.map +1 -0
  286. package/dist/esm/components/inline-confirm/useInlineConfirm.js +11 -0
  287. package/dist/esm/components/inline-confirm/useInlineConfirm.js.map +1 -0
  288. package/dist/esm/components/modal-wizard/ModalWizard.js +122 -0
  289. package/dist/esm/components/modal-wizard/ModalWizard.js.map +1 -0
  290. package/dist/esm/components/modal-wizard/ModalWizardStep.js +14 -0
  291. package/dist/esm/components/modal-wizard/ModalWizardStep.js.map +1 -0
  292. package/dist/esm/components/modal-wizard/index.js +3 -0
  293. package/dist/esm/components/modal-wizard/index.js.map +1 -0
  294. package/dist/esm/components/sticky-footer/StickyFooter.js +40 -0
  295. package/dist/esm/components/sticky-footer/StickyFooter.js.map +1 -0
  296. package/dist/esm/components/sticky-footer/index.js +3 -0
  297. package/dist/esm/components/sticky-footer/index.js.map +1 -0
  298. package/dist/esm/components/table/Table.js +248 -0
  299. package/dist/esm/components/table/Table.js.map +1 -0
  300. package/dist/esm/components/table/TableActions.js +15 -0
  301. package/dist/esm/components/table/TableActions.js.map +1 -0
  302. package/dist/esm/components/table/TableCollapsibleColumn.js +25 -0
  303. package/dist/esm/components/table/TableCollapsibleColumn.js.map +1 -0
  304. package/dist/esm/components/table/TableContext.js +4 -0
  305. package/dist/esm/components/table/TableContext.js.map +1 -0
  306. package/dist/esm/components/table/TableDateRangePicker.js +73 -0
  307. package/dist/esm/components/table/TableDateRangePicker.js.map +1 -0
  308. package/dist/esm/components/table/TableFilter.js +43 -0
  309. package/dist/esm/components/table/TableFilter.js.map +1 -0
  310. package/dist/esm/components/table/TableFooter.js +13 -0
  311. package/dist/esm/components/table/TableFooter.js.map +1 -0
  312. package/dist/esm/components/table/TableHeader.js +27 -0
  313. package/dist/esm/components/table/TableHeader.js.map +1 -0
  314. package/dist/esm/components/table/TablePagination.js +37 -0
  315. package/dist/esm/components/table/TablePagination.js.map +1 -0
  316. package/dist/esm/components/table/TablePerPage.js +42 -0
  317. package/dist/esm/components/table/TablePerPage.js.map +1 -0
  318. package/dist/esm/components/table/TablePredicate.js +35 -0
  319. package/dist/esm/components/table/TablePredicate.js.map +1 -0
  320. package/dist/esm/components/table/Th.js +88 -0
  321. package/dist/esm/components/table/Th.js.map +1 -0
  322. package/dist/esm/components/table/index.js +4 -0
  323. package/dist/esm/components/table/index.js.map +1 -0
  324. package/dist/esm/components/table/useTable.js +11 -0
  325. package/dist/esm/components/table/useTable.js.map +1 -0
  326. package/dist/esm/hooks/index.js +4 -0
  327. package/dist/esm/hooks/index.js.map +1 -0
  328. package/dist/esm/hooks/useControlledList.js +44 -0
  329. package/dist/esm/hooks/useControlledList.js.map +1 -0
  330. package/dist/esm/hooks/useParentHeight.js +28 -0
  331. package/dist/esm/hooks/useParentHeight.js.map +1 -0
  332. package/dist/esm/index.js +10 -0
  333. package/dist/esm/index.js.map +1 -0
  334. package/dist/esm/theme/PlasmaColors.js +44 -0
  335. package/dist/esm/theme/PlasmaColors.js.map +1 -0
  336. package/dist/esm/theme/Plasmantine.js +14 -0
  337. package/dist/esm/theme/Plasmantine.js.map +1 -0
  338. package/dist/esm/theme/Theme.js +213 -0
  339. package/dist/esm/theme/Theme.js.map +1 -0
  340. package/dist/esm/theme/index.js +3 -0
  341. package/dist/esm/theme/index.js.map +1 -0
  342. package/jest.config.js +26 -0
  343. package/package.json +85 -0
  344. package/src/__tests__/GlobalSetup.ts +5 -0
  345. package/src/__tests__/Setup.ts +4 -0
  346. package/src/__tests__/SetupAfterEnv.ts +16 -0
  347. package/src/__tests__/Utils.tsx +15 -0
  348. package/src/components/blank-slate/BlankSlate.tsx +17 -0
  349. package/src/components/blank-slate/__tests__/BlankSlate.spec.tsx +11 -0
  350. package/src/components/blank-slate/index.ts +1 -0
  351. package/src/components/code-editor/CodeEditor.example.tsx +32 -0
  352. package/src/components/code-editor/CodeEditor.tsx +187 -0
  353. package/src/components/code-editor/__mocks__/@monaco-editor/react.tsx +10 -0
  354. package/src/components/code-editor/__tests__/CodeEditor.spec.tsx +37 -0
  355. package/src/components/code-editor/index.ts +1 -0
  356. package/src/components/collection/Collection.example.tsx +37 -0
  357. package/src/components/collection/Collection.tsx +128 -0
  358. package/src/components/collection/CollectionItem.tsx +88 -0
  359. package/src/components/collection/Colllection.styles.ts +13 -0
  360. package/src/components/collection/__tests__/Collection.spec.tsx +243 -0
  361. package/src/components/collection/index.ts +1 -0
  362. package/src/components/date-range-picker/DateRangePickerInlineCalendar.tsx +111 -0
  363. package/src/components/date-range-picker/DateRangePickerPopoverCalendar.tsx +94 -0
  364. package/src/components/date-range-picker/DateRangePickerPresetSelect.tsx +62 -0
  365. package/src/components/date-range-picker/EditableDateRangePicker.tsx +59 -0
  366. package/src/components/date-range-picker/__tests__/DateRangePickerInlineCalendar.spec.tsx +91 -0
  367. package/src/components/date-range-picker/__tests__/DateRangePickerPopoverCalendar.spec.tsx +101 -0
  368. package/src/components/date-range-picker/__tests__/DateRangePickerPresetSelect.spec.tsx +53 -0
  369. package/src/components/date-range-picker/__tests__/EditableDateRangePicker.spec.tsx +47 -0
  370. package/src/components/date-range-picker/index.tsx +2 -0
  371. package/src/components/header/Header.tsx +43 -0
  372. package/src/components/header/__tests__/Header.spec.tsx +79 -0
  373. package/src/components/header/index.ts +1 -0
  374. package/src/components/index.ts +9 -0
  375. package/src/components/inline-confirm/InlineConfirm.tsx +29 -0
  376. package/src/components/inline-confirm/InlineConfirmButton.tsx +17 -0
  377. package/src/components/inline-confirm/InlineConfirmContext.ts +9 -0
  378. package/src/components/inline-confirm/InlineConfirmPrompt.tsx +48 -0
  379. package/src/components/inline-confirm/__tests__/InlineConfirm.spec.tsx +94 -0
  380. package/src/components/inline-confirm/index.ts +3 -0
  381. package/src/components/inline-confirm/useInlineConfirm.ts +12 -0
  382. package/src/components/modal-wizard/ModalWizard.tsx +211 -0
  383. package/src/components/modal-wizard/ModalWizardStep.tsx +53 -0
  384. package/src/components/modal-wizard/__tests__/ModalWizard.spec.tsx +345 -0
  385. package/src/components/modal-wizard/index.ts +1 -0
  386. package/src/components/sticky-footer/StickyFooter.tsx +31 -0
  387. package/src/components/sticky-footer/__tests__/StickyFooter.spec.tsx +20 -0
  388. package/src/components/sticky-footer/index.ts +1 -0
  389. package/src/components/table/Table.tsx +293 -0
  390. package/src/components/table/TableActions.tsx +36 -0
  391. package/src/components/table/TableCollapsibleColumn.tsx +26 -0
  392. package/src/components/table/TableContext.tsx +56 -0
  393. package/src/components/table/TableDateRangePicker.tsx +71 -0
  394. package/src/components/table/TableFilter.tsx +44 -0
  395. package/src/components/table/TableFooter.tsx +8 -0
  396. package/src/components/table/TableHeader.tsx +21 -0
  397. package/src/components/table/TablePagination.tsx +41 -0
  398. package/src/components/table/TablePerPage.tsx +49 -0
  399. package/src/components/table/TablePredicate.tsx +43 -0
  400. package/src/components/table/Th.tsx +75 -0
  401. package/src/components/table/__tests__/Table.spec.tsx +128 -0
  402. package/src/components/table/__tests__/TableActions.spec.tsx +36 -0
  403. package/src/components/table/__tests__/TableDateRangePicker.spec.tsx +87 -0
  404. package/src/components/table/__tests__/TableFilter.spec.tsx +39 -0
  405. package/src/components/table/__tests__/TablePagination.spec.tsx +50 -0
  406. package/src/components/table/__tests__/TablePerPage.spec.tsx +81 -0
  407. package/src/components/table/__tests__/TablePredicate.spec.tsx +120 -0
  408. package/src/components/table/__tests__/Th.spec.tsx +63 -0
  409. package/src/components/table/index.ts +3 -0
  410. package/src/components/table/useTable.tsx +11 -0
  411. package/src/hooks/__tests__/useControlledList.spec.tsx +41 -0
  412. package/src/hooks/index.ts +2 -0
  413. package/src/hooks/useControlledList.ts +53 -0
  414. package/src/hooks/useParentHeight.ts +25 -0
  415. package/src/index.ts +23 -0
  416. package/src/theme/PlasmaColors.ts +44 -0
  417. package/src/theme/Plasmantine.tsx +10 -0
  418. package/src/theme/Theme.tsx +161 -0
  419. package/src/theme/index.ts +1 -0
  420. package/tsconfig.build.json +4 -0
  421. package/tsconfig.json +11 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/__tests__/SetupAfterEnv.ts"],"sourcesContent":["/**\n * This file is executed once per test file.\n * It is executed after executing Setup and Jest is initialised, but before the test code itself.\n */\n\nimport '@testing-library/jest-dom';\nimport '@testing-library/jest-dom/extend-expect';\n\nElement.prototype.scrollTo = jest.fn();\nwindow.ResizeObserver =\n window.ResizeObserver ||\n jest.fn().mockImplementation(() => ({\n disconnect: jest.fn(),\n observe: jest.fn(),\n unobserve: jest.fn(),\n }));\n"],"names":["Element","prototype","scrollTo","jest","fn","window","ResizeObserver","mockImplementation","disconnect","observe","unobserve"],"mappings":"AAAA;;;CAGC,GAED;;;;QAAO,2BAA2B;QAC3B,yCAAyC;AAEhDA,OAAO,CAACC,SAAS,CAACC,QAAQ,GAAGC,IAAI,CAACC,EAAE,EAAE,CAAC;AACvCC,MAAM,CAACC,cAAc,GACjBD,MAAM,CAACC,cAAc,IACrBH,IAAI,CAACC,EAAE,EAAE,CAACG,kBAAkB,CAAC;WAAO;QAChCC,UAAU,EAAEL,IAAI,CAACC,EAAE,EAAE;QACrBK,OAAO,EAAEN,IAAI,CAACC,EAAE,EAAE;QAClBM,SAAS,EAAEP,IAAI,CAACC,EAAE,EAAE;KACvB;CAAC,CAAC,CAAC"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ userEvent: function() {
13
+ return _userEvent.default;
14
+ },
15
+ render: function() {
16
+ return customRender;
17
+ }
18
+ });
19
+ var _exportStar = require("@swc/helpers/lib/_export_star.js").default;
20
+ var _interopRequireDefault = require("@swc/helpers/lib/_interop_require_default.js").default;
21
+ var _objectSpread = require("@swc/helpers/lib/_object_spread.js").default;
22
+ var _jsxRuntime = require("react/jsx-runtime");
23
+ var _react = _exportStar(require("@testing-library/react"), exports);
24
+ var _userEvent = /*#__PURE__*/ _interopRequireDefault(require("@testing-library/user-event"));
25
+ var _theme = require("../theme");
26
+ var customRender = function(ui, options) {
27
+ var TestWrapper = function(param) {
28
+ var children = param.children;
29
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_theme.Plasmantine, {
30
+ children: children
31
+ });
32
+ };
33
+ return (0, _react.render)(ui, _objectSpread({
34
+ wrapper: TestWrapper
35
+ }, options));
36
+ };
37
+
38
+ //# sourceMappingURL=Utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/__tests__/Utils.tsx"],"sourcesContent":["import {render, RenderOptions, RenderResult} from '@testing-library/react';\nimport userEvent from '@testing-library/user-event';\nimport {FunctionComponent, ReactElement} from 'react';\n\nimport {Plasmantine} from '../theme';\n\nconst customRender = (ui: ReactElement, options?: Omit<RenderOptions, 'queries'>): RenderResult => {\n const TestWrapper: FunctionComponent = ({children}) => <Plasmantine>{children}</Plasmantine>;\n\n return render(ui, {wrapper: TestWrapper, ...options});\n};\n\nexport {userEvent};\nexport * from '@testing-library/react';\nexport {customRender as render};\n"],"names":["userEvent","render","customRender","ui","options","TestWrapper","children","Plasmantine","wrapper"],"mappings":"AAAA;;;;;;;;;;;IAYQA,SAAS;eAATA,UAAS,QAAA;;IAEOC,MAAM;eAAtBC,YAAY;;;;;;;iCAd8B,wBAAwB;8DACpD,6BAA6B;qBAGzB,UAAU;AAEpC,IAAMA,YAAY,GAAG,SAACC,EAAgB,EAAEC,OAAwC,EAAmB;IAC/F,IAAMC,WAAW,GAAsB;YAAEC,QAAQ,SAARA,QAAQ;6BAAM,qBAACC,MAAW,YAAA;sBAAED,QAAQ;UAAe;KAAA,AAAC;IAE7F,OAAOL,IAAAA,MAAM,OAAA,EAACE,EAAE,EAAE;QAACK,OAAO,EAAEH,WAAW;OAAKD,OAAO,CAAC,CAAC,CAAC;AAC1D,CAAC,AAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "BlankSlate", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return BlankSlate;
9
+ }
10
+ });
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ var _core = require("@mantine/core");
13
+ var BlankSlate = function(param) {
14
+ var children = param.children, _withBorder = param.withBorder, withBorder = _withBorder === void 0 ? true : _withBorder;
15
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Paper, {
16
+ shadow: withBorder && "xs",
17
+ p: "xl",
18
+ withBorder: withBorder,
19
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Stack, {
20
+ align: "center",
21
+ children: children
22
+ })
23
+ });
24
+ };
25
+
26
+ //# sourceMappingURL=BlankSlate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/blank-slate/BlankSlate.tsx"],"sourcesContent":["import {Paper, Stack} from '@mantine/core';\nimport {FunctionComponent} from 'react';\n\ninterface BlankSlateProps {\n /**\n * Whether the Blankslate render with a border\n *\n * @default true\n */\n withBorder?: boolean;\n}\n\nexport const BlankSlate: FunctionComponent<BlankSlateProps> = ({children, withBorder = true}) => (\n <Paper shadow={withBorder && 'xs'} p=\"xl\" withBorder={withBorder}>\n <Stack align=\"center\">{children}</Stack>\n </Paper>\n);\n"],"names":["BlankSlate","children","withBorder","Paper","shadow","p","Stack","align"],"mappings":"AAAA;;;;+BAYaA,YAAU;;;eAAVA,UAAU;;;;oBAZI,eAAe;AAYnC,IAAMA,UAAU,GAAuC;QAAEC,QAAQ,SAARA,QAAQ,sBAAEC,UAAU,EAAVA,UAAU,4BAAG,IAAI,cAAA;yBACvF,qBAACC,KAAK,MAAA;QAACC,MAAM,EAAEF,UAAU,IAAI,IAAI;QAAEG,CAAC,EAAC,IAAI;QAACH,UAAU,EAAEA,UAAU;kBAC5D,cAAA,qBAACI,KAAK,MAAA;YAACC,KAAK,EAAC,QAAQ;sBAAEN,QAAQ;UAAS;MACpC;CACX,AAAC"}
@@ -0,0 +1,8 @@
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("./BlankSlate"), exports);
7
+
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/blank-slate/index.ts"],"sourcesContent":["export * from './BlankSlate';\n"],"names":[],"mappings":"AAAA;;;;;oBAAc,cAAc"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ var _objectSpread = require("@swc/helpers/lib/_object_spread.js").default;
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ var _form = require("@mantine/form");
14
+ var _codeEditor = require("./CodeEditor");
15
+ var _default = function() {
16
+ var form = (0, _form.useForm)({
17
+ initialValues: {
18
+ config: '{"key":"value"}'
19
+ },
20
+ validate: {
21
+ config: function(jsonValue) {
22
+ try {
23
+ var config = JSON.parse(jsonValue);
24
+ if (!config.key) {
25
+ return "The key must have a value";
26
+ }
27
+ } catch (e) {
28
+ return "Invalid JSON";
29
+ }
30
+ return null;
31
+ }
32
+ }
33
+ });
34
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_codeEditor.CodeEditor, _objectSpread({
35
+ language: "json",
36
+ label: "Configuration",
37
+ description: "This JSON configuration is very important"
38
+ }, form.getInputProps("config")));
39
+ };
40
+
41
+ //# sourceMappingURL=CodeEditor.example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/code-editor/CodeEditor.example.tsx"],"sourcesContent":["import {useForm} from '@mantine/form';\nimport {CodeEditor} from './CodeEditor';\n\nexport default () => {\n const form = useForm({\n initialValues: {\n config: '{\"key\":\"value\"}',\n },\n validate: {\n config: (jsonValue) => {\n try {\n const config = JSON.parse(jsonValue);\n if (!config.key) {\n return 'The key must have a value';\n }\n } catch {\n return 'Invalid JSON';\n }\n return null;\n },\n },\n });\n\n return (\n <CodeEditor\n language=\"json\"\n label=\"Configuration\"\n description=\"This JSON configuration is very important\"\n {...form.getInputProps('config')}\n />\n );\n};\n"],"names":["form","useForm","initialValues","config","validate","jsonValue","JSON","parse","key","CodeEditor","language","label","description","getInputProps"],"mappings":"AAAA;;;;+BAGA,SA4BE;;;eA5BF,QA4BE;;;;;oBA/BoB,eAAe;0BACZ,cAAc;IAEvC,QA4BE,GA5Ba,WAAM;IACjB,IAAMA,IAAI,GAAGC,IAAAA,KAAO,QAAA,EAAC;QACjBC,aAAa,EAAE;YACXC,MAAM,EAAE,iBAAiB;SAC5B;QACDC,QAAQ,EAAE;YACND,MAAM,EAAE,SAACE,SAAS,EAAK;gBACnB,IAAI;oBACA,IAAMF,MAAM,GAAGG,IAAI,CAACC,KAAK,CAACF,SAAS,CAAC,AAAC;oBACrC,IAAI,CAACF,MAAM,CAACK,GAAG,EAAE;wBACb,OAAO,2BAA2B,CAAC;oBACvC,CAAC;gBACL,EAAE,UAAM;oBACJ,OAAO,cAAc,CAAC;gBAC1B,CAAC;gBACD,OAAO,IAAI,CAAC;YAChB,CAAC;SACJ;KACJ,CAAC,AAAC;IAEH,qBACI,qBAACC,WAAU,WAAA;QACPC,QAAQ,EAAC,MAAM;QACfC,KAAK,EAAC,eAAe;QACrBC,WAAW,EAAC,2CAA2C;OACnDZ,IAAI,CAACa,aAAa,CAAC,QAAQ,CAAC,EAClC,CACJ;AACN,CAAC"}
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "CodeEditor", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return CodeEditor;
9
+ }
10
+ });
11
+ var _asyncToGenerator = require("@swc/helpers/lib/_async_to_generator.js").default;
12
+ var _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
13
+ var _objectSpread = require("@swc/helpers/lib/_object_spread.js").default;
14
+ var _objectSpreadProps = require("@swc/helpers/lib/_object_spread_props.js").default;
15
+ var _objectWithoutProperties = require("@swc/helpers/lib/_object_without_properties.js").default;
16
+ var _slicedToArray = require("@swc/helpers/lib/_sliced_to_array.js").default;
17
+ var _tsGenerator = require("@swc/helpers/lib/_ts_generator.js").default;
18
+ var _jsxRuntime = require("react/jsx-runtime");
19
+ var _plasmaReactIcons = require("@coveord/plasma-react-icons");
20
+ var _core = require("@mantine/core");
21
+ var _hooks = require("@mantine/hooks");
22
+ var _react = /*#__PURE__*/ _interopRequireWildcard(require("@monaco-editor/react"));
23
+ var _monacoEditor = /*#__PURE__*/ _interopRequireWildcard(require("monaco-editor"));
24
+ var _hooks1 = require("../../hooks");
25
+ _react.loader.config({
26
+ monaco: _monacoEditor
27
+ });
28
+ var useStyles = (0, _core.createStyles)(function(theme) {
29
+ return {
30
+ root: {},
31
+ editor: {
32
+ border: "1px solid ".concat(theme.colors.gray[2]),
33
+ borderRadius: theme.defaultRadius,
34
+ backgroundColor: theme.colorScheme === "light" ? theme.white : theme.black,
35
+ height: "100%"
36
+ }
37
+ };
38
+ });
39
+ var defaultProps = {
40
+ language: "plaintext",
41
+ defaultValue: "",
42
+ minHeight: 300
43
+ };
44
+ var CodeEditor = function(props) {
45
+ var _ref = (0, _core.useComponentDefaultProps)("CodeEditor", defaultProps, props), language = _ref.language, defaultValue = _ref.defaultValue, onChange = _ref.onChange, onFocus = _ref.onFocus, value = _ref.value, label = _ref.label, required = _ref.required, labelProps = _ref.labelProps, error = _ref.error, errorProps = _ref.errorProps, description = _ref.description, descriptionProps = _ref.descriptionProps, minHeight = _ref.minHeight, maxHeight = _ref.maxHeight, disabled = _ref.disabled, others = _objectWithoutProperties(_ref, [
46
+ "language",
47
+ "defaultValue",
48
+ "onChange",
49
+ "onFocus",
50
+ "value",
51
+ "label",
52
+ "required",
53
+ "labelProps",
54
+ "error",
55
+ "errorProps",
56
+ "description",
57
+ "descriptionProps",
58
+ "minHeight",
59
+ "maxHeight",
60
+ "disabled"
61
+ ]);
62
+ var ref = useStyles(), classes = ref.classes, theme = ref.theme;
63
+ var ref1 = _slicedToArray((0, _hooks.useUncontrolled)({
64
+ value: value,
65
+ defaultValue: defaultValue,
66
+ onChange: onChange,
67
+ finalValue: ""
68
+ }), 2), _value = ref1[0], handleChange = ref1[1];
69
+ var ref2 = _slicedToArray((0, _hooks1.useParentHeight)(), 2), parentHeight = ref2[0], ref3 = ref2[1];
70
+ var _label = label ? /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Input.Label, _objectSpreadProps(_objectSpread({
71
+ required: required
72
+ }, labelProps), {
73
+ children: label
74
+ })) : null;
75
+ var _description = description ? /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Input.Description, _objectSpreadProps(_objectSpread({
76
+ mt: "xs"
77
+ }, descriptionProps), {
78
+ children: description
79
+ })) : null;
80
+ var _error = error ? /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Input.Error, _objectSpreadProps(_objectSpread({
81
+ mt: "xs"
82
+ }, errorProps), {
83
+ children: error
84
+ })) : null;
85
+ var _header = _label || _description ? /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_core.Box, {
86
+ children: [
87
+ _label,
88
+ _description
89
+ ]
90
+ }) : null;
91
+ var _copyButton = /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Group, {
92
+ position: "right",
93
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.CopyButton, {
94
+ value: _value,
95
+ timeout: 2000,
96
+ children: function(param) {
97
+ var copied = param.copied, copy = param.copy;
98
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Tooltip, {
99
+ label: copied ? "Copied" : "Copy",
100
+ withArrow: true,
101
+ position: "right",
102
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.ActionIcon, {
103
+ color: copied ? "lime" : "gray",
104
+ onClick: copy,
105
+ children: copied ? /*#__PURE__*/ (0, _jsxRuntime.jsx)(_plasmaReactIcons.CheckSize16Px, {
106
+ height: 16
107
+ }) : /*#__PURE__*/ (0, _jsxRuntime.jsx)(_plasmaReactIcons.CopySize16Px, {
108
+ height: 16
109
+ })
110
+ })
111
+ });
112
+ }
113
+ })
114
+ });
115
+ var _editor = /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Box, {
116
+ p: "md",
117
+ pl: "xs",
118
+ className: classes.editor,
119
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_react.default, {
120
+ defaultLanguage: language,
121
+ theme: theme.colorScheme === "light" ? "light" : "vs-dark",
122
+ options: {
123
+ minimap: {
124
+ enabled: false
125
+ },
126
+ wordWrap: "on",
127
+ wrappingStrategy: "advanced",
128
+ scrollBeyondLastLine: false,
129
+ formatOnPaste: true,
130
+ fontSize: theme.fontSizes.xs,
131
+ readOnly: disabled,
132
+ tabSize: 2
133
+ },
134
+ value: _value,
135
+ onChange: handleChange,
136
+ onMount: function(editor) {
137
+ editor.onDidFocusEditorText(onFocus);
138
+ editor.onDidBlurEditorText(/*#__PURE__*/ _asyncToGenerator(function() {
139
+ return _tsGenerator(this, function(_state) {
140
+ switch(_state.label){
141
+ case 0:
142
+ return [
143
+ 4,
144
+ editor.getAction("editor.action.formatDocument").run()
145
+ ];
146
+ case 1:
147
+ _state.sent();
148
+ return [
149
+ 2
150
+ ];
151
+ }
152
+ });
153
+ }));
154
+ }
155
+ })
156
+ });
157
+ return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_core.Stack, _objectSpreadProps(_objectSpread({
158
+ justify: "flex-start",
159
+ className: classes.root,
160
+ spacing: 0,
161
+ sx: {
162
+ height: Math.max(parentHeight, minHeight),
163
+ maxHeight: maxHeight
164
+ },
165
+ ref: ref3
166
+ }, others), {
167
+ children: [
168
+ _header,
169
+ _copyButton,
170
+ _editor,
171
+ _error
172
+ ]
173
+ }));
174
+ };
175
+
176
+ //# sourceMappingURL=CodeEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/code-editor/CodeEditor.tsx"],"sourcesContent":["import {CheckSize16Px, CopySize16Px} from '@coveord/plasma-react-icons';\nimport {\n ActionIcon,\n Box,\n CopyButton,\n createStyles,\n DefaultProps,\n Group,\n Input,\n InputWrapperBaseProps,\n Selectors,\n Stack,\n Tooltip,\n useComponentDefaultProps,\n} from '@mantine/core';\nimport {useUncontrolled} from '@mantine/hooks';\nimport Editor, {loader} from '@monaco-editor/react';\nimport * as monaco from 'monaco-editor';\nimport {FunctionComponent} from 'react';\n\nimport {useParentHeight} from '../../hooks';\n\nloader.config({monaco});\n\nconst useStyles = createStyles((theme) => ({\n root: {},\n editor: {\n border: `1px solid ${theme.colors.gray[2]}`,\n borderRadius: theme.defaultRadius,\n backgroundColor: theme.colorScheme === 'light' ? theme.white : theme.black,\n height: '100%',\n },\n}));\n\ninterface CodeEditorProps\n extends Omit<InputWrapperBaseProps, 'inputContainer' | 'inputWrapperOrder'>,\n DefaultProps<Selectors<typeof useStyles>> {\n /**\n * The language syntax of the editor\n *\n * @default 'plaintext'\n */\n language?: 'plaintext' | 'json' | 'markdown' | 'python';\n /** Default value for uncontrolled input */\n defaultValue?: string;\n /** Value for controlled input */\n value?: string;\n /** onChange value for controlled input */\n onChange?(value: string): void;\n /** Called whenever the code editor gets the focus */\n onFocus?(): void;\n /**\n * The minimal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height is too short, it will use this value as minimum.\n *\n * @default 300\n */\n minHeight?: number;\n /**\n * The maximal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height would be too high for your liking, you can use this prop to set a maximum.\n */\n maxHeight?: number;\n disabled?: boolean;\n}\n\nconst defaultProps: Partial<CodeEditorProps> = {\n language: 'plaintext',\n defaultValue: '',\n minHeight: 300,\n};\n\nexport const CodeEditor: FunctionComponent<CodeEditorProps> = (props) => {\n const {\n language,\n defaultValue,\n onChange,\n onFocus,\n value,\n label,\n required,\n labelProps,\n error,\n errorProps,\n description,\n descriptionProps,\n minHeight,\n maxHeight,\n disabled,\n ...others\n } = useComponentDefaultProps('CodeEditor', defaultProps, props);\n const {classes, theme} = useStyles();\n const [_value, handleChange] = useUncontrolled<string>({\n value,\n defaultValue,\n onChange,\n finalValue: '',\n });\n const [parentHeight, ref] = useParentHeight();\n\n const _label = label ? (\n <Input.Label required={required} {...labelProps}>\n {label}\n </Input.Label>\n ) : null;\n\n const _description = description ? (\n <Input.Description mt=\"xs\" {...descriptionProps}>\n {description}\n </Input.Description>\n ) : null;\n\n const _error = error ? (\n <Input.Error mt=\"xs\" {...errorProps}>\n {error}\n </Input.Error>\n ) : null;\n\n const _header =\n _label || _description ? (\n <Box>\n {_label}\n {_description}\n </Box>\n ) : null;\n\n const _copyButton = (\n <Group position=\"right\">\n <CopyButton value={_value} timeout={2000}>\n {({copied, copy}) => (\n <Tooltip label={copied ? 'Copied' : 'Copy'} withArrow position=\"right\">\n <ActionIcon color={copied ? 'lime' : 'gray'} onClick={copy}>\n {copied ? <CheckSize16Px height={16} /> : <CopySize16Px height={16} />}\n </ActionIcon>\n </Tooltip>\n )}\n </CopyButton>\n </Group>\n );\n\n const _editor = (\n <Box p=\"md\" pl=\"xs\" className={classes.editor}>\n <Editor\n defaultLanguage={language}\n theme={theme.colorScheme === 'light' ? 'light' : 'vs-dark'}\n options={{\n minimap: {enabled: false},\n wordWrap: 'on',\n wrappingStrategy: 'advanced',\n scrollBeyondLastLine: false,\n formatOnPaste: true,\n fontSize: theme.fontSizes.xs,\n readOnly: disabled,\n tabSize: 2,\n }}\n value={_value}\n onChange={handleChange}\n onMount={(editor) => {\n editor.onDidFocusEditorText(onFocus);\n editor.onDidBlurEditorText(async () => {\n await editor.getAction('editor.action.formatDocument').run();\n });\n }}\n />\n </Box>\n );\n\n return (\n <Stack\n justify=\"flex-start\"\n className={classes.root}\n spacing={0}\n sx={{height: Math.max(parentHeight, minHeight), maxHeight}}\n ref={ref}\n {...others}\n >\n {_header}\n {_copyButton}\n {_editor}\n {_error}\n </Stack>\n );\n};\n"],"names":["CodeEditor","loader","config","monaco","useStyles","createStyles","theme","root","editor","border","colors","gray","borderRadius","defaultRadius","backgroundColor","colorScheme","white","black","height","defaultProps","language","defaultValue","minHeight","props","useComponentDefaultProps","onChange","onFocus","value","label","required","labelProps","error","errorProps","description","descriptionProps","maxHeight","disabled","others","classes","useUncontrolled","finalValue","_value","handleChange","useParentHeight","parentHeight","ref","_label","Input","Label","_description","Description","mt","_error","Error","_header","Box","_copyButton","Group","position","CopyButton","timeout","copied","copy","Tooltip","withArrow","ActionIcon","color","onClick","CheckSize16Px","CopySize16Px","_editor","p","pl","className","Editor","defaultLanguage","options","minimap","enabled","wordWrap","wrappingStrategy","scrollBeyondLastLine","formatOnPaste","fontSize","fontSizes","xs","readOnly","tabSize","onMount","onDidFocusEditorText","onDidBlurEditorText","getAction","run","Stack","justify","spacing","sx","Math","max"],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ default: function() {
13
+ return _default;
14
+ },
15
+ loader: function() {
16
+ return loader;
17
+ }
18
+ });
19
+ var _jsxRuntime = require("react/jsx-runtime");
20
+ var MockedEditor = function(props) {
21
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)("div", {
22
+ "data-testid": "monaco-editor"
23
+ });
24
+ };
25
+ var _default = MockedEditor;
26
+ var loader = {
27
+ config: jest.fn()
28
+ };
29
+
30
+ //# sourceMappingURL=react.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/components/code-editor/__mocks__/@monaco-editor/react.tsx"],"sourcesContent":["import {type EditorProps} from '@monaco-editor/react';\nimport {FunctionComponent} from 'react';\n\nconst MockedEditor: FunctionComponent<EditorProps> = (props) => <div data-testid=\"monaco-editor\" />;\n\nexport default MockedEditor;\n\nexport const loader = {\n config: jest.fn(),\n};\n"],"names":["loader","MockedEditor","props","div","data-testid","config","jest","fn"],"mappings":"AAAA;;;;;;;;;;;IAKA,OAA4B;eAA5B,QAA4B;;IAEfA,MAAM;eAANA,MAAM;;;;AAJnB,IAAMC,YAAY,GAAmC,SAACC,KAAK;yBAAK,qBAACC,KAAG;QAACC,aAAW,EAAC,eAAe;MAAG;CAAA,AAAC;IAEpG,QAA4B,GAAbH,YAAY;AAEpB,IAAMD,MAAM,GAAG;IAClBK,MAAM,EAAEC,IAAI,CAACC,EAAE,EAAE;CACpB,AAAC"}
@@ -0,0 +1,8 @@
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("./CodeEditor"), exports);
7
+
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/code-editor/index.ts"],"sourcesContent":["export * from './CodeEditor';\n"],"names":[],"mappings":"AAAA;;;;;oBAAc,cAAc"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
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 _form = require("@mantine/form");
16
+ var _collection = require("./Collection");
17
+ var _default = function() {
18
+ var form = (0, _form.useForm)({
19
+ initialValues: {
20
+ todoList: [
21
+ {
22
+ name: "wash the dishes",
23
+ done: true
24
+ },
25
+ {
26
+ name: "take out the trash",
27
+ done: false
28
+ },
29
+ {
30
+ name: "vacuum the floors",
31
+ done: true
32
+ }
33
+ ]
34
+ }
35
+ });
36
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_collection.Collection, _objectSpreadProps(_objectSpread({
37
+ draggable: true,
38
+ addLabel: "Add task",
39
+ newItem: {
40
+ name: "",
41
+ done: false
42
+ }
43
+ }, form.getInputProps("todoList")), {
44
+ children: function(task, index) {
45
+ return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
46
+ children: [
47
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.TextInput, _objectSpreadProps(_objectSpread({
48
+ autoFocus: true,
49
+ placeholder: "Do something ..."
50
+ }, form.getInputProps("todoList.".concat(index, ".name"))), {
51
+ styles: {
52
+ flex: 1
53
+ }
54
+ })),
55
+ /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Checkbox, _objectSpread({}, form.getInputProps("todoList.".concat(index, ".done"), {
56
+ type: "checkbox"
57
+ })))
58
+ ]
59
+ });
60
+ }
61
+ }));
62
+ };
63
+
64
+ //# sourceMappingURL=Collection.example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/collection/Collection.example.tsx"],"sourcesContent":["import {Checkbox, TextInput} from '@mantine/core';\nimport {useForm} from '@mantine/form';\n\nimport {Collection} from './Collection';\n\nexport default () => {\n const form = useForm({\n initialValues: {\n todoList: [\n {name: 'wash the dishes', done: true},\n {name: 'take out the trash', done: false},\n {name: 'vacuum the floors', done: true},\n ],\n },\n });\n\n return (\n <Collection<{name: string; done: boolean}>\n draggable\n addLabel=\"Add task\"\n newItem={{name: '', done: false}}\n {...form.getInputProps('todoList')}\n >\n {(task, index) => (\n <>\n <TextInput\n autoFocus\n placeholder=\"Do something ...\"\n {...form.getInputProps(`todoList.${index}.name`)}\n styles={{flex: 1}}\n />\n <Checkbox {...form.getInputProps(`todoList.${index}.done`, {type: 'checkbox'})} />\n </>\n )}\n </Collection>\n );\n};\n"],"names":["form","useForm","initialValues","todoList","name","done","Collection","draggable","addLabel","newItem","getInputProps","task","index","TextInput","autoFocus","placeholder","styles","flex","Checkbox","type"],"mappings":"AAAA;;;;+BAKA,SA+BE;;;eA/BF,QA+BE;;;;;;oBApCgC,eAAe;oBAC3B,eAAe;0BAEZ,cAAc;IAEvC,QA+BE,GA/Ba,WAAM;IACjB,IAAMA,IAAI,GAAGC,IAAAA,KAAO,QAAA,EAAC;QACjBC,aAAa,EAAE;YACXC,QAAQ,EAAE;gBACN;oBAACC,IAAI,EAAE,iBAAiB;oBAAEC,IAAI,EAAE,IAAI;iBAAC;gBACrC;oBAACD,IAAI,EAAE,oBAAoB;oBAAEC,IAAI,EAAE,KAAK;iBAAC;gBACzC;oBAACD,IAAI,EAAE,mBAAmB;oBAAEC,IAAI,EAAE,IAAI;iBAAC;aAC1C;SACJ;KACJ,CAAC,AAAC;IAEH,qBACI,qBAACC,WAAU,WAAA;QACPC,SAAS;QACTC,QAAQ,EAAC,UAAU;QACnBC,OAAO,EAAE;YAACL,IAAI,EAAE,EAAE;YAAEC,IAAI,EAAE,KAAK;SAAC;OAC5BL,IAAI,CAACU,aAAa,CAAC,UAAU,CAAC;kBAEjC,SAACC,IAAI,EAAEC,KAAK;iCACT;;kCACI,qBAACC,KAAS,UAAA;wBACNC,SAAS;wBACTC,WAAW,EAAC,kBAAkB;uBAC1Bf,IAAI,CAACU,aAAa,CAAC,AAAC,WAAS,CAAQ,MAAK,CAAXE,KAAK,EAAC,OAAK,CAAC,CAAC;wBAChDI,MAAM,EAAE;4BAACC,IAAI,EAAE,CAAC;yBAAC;uBACnB;kCACF,qBAACC,KAAQ,SAAA,oBAAKlB,IAAI,CAACU,aAAa,CAAC,AAAC,WAAS,CAAQ,MAAK,CAAXE,KAAK,EAAC,OAAK,CAAC,EAAE;wBAACO,IAAI,EAAE,UAAU;qBAAC,CAAC,EAAI;;cACnF;SACN;OACQ,CACf;AACN,CAAC"}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "Collection", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Collection;
9
+ }
10
+ });
11
+ var _interopRequireDefault = require("@swc/helpers/lib/_interop_require_default.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 _objectWithoutProperties = require("@swc/helpers/lib/_object_without_properties.js").default;
15
+ var _slicedToArray = require("@swc/helpers/lib/_sliced_to_array.js").default;
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+ var _plasmaReactIcons = require("@coveord/plasma-react-icons");
18
+ var _core = require("@mantine/core");
19
+ var _hooks = require("@mantine/hooks");
20
+ var _reactBeautifulDnd = require("react-beautiful-dnd");
21
+ var _hooks1 = require("../../hooks");
22
+ var _collectionItem = require("./CollectionItem");
23
+ var _colllectionStyles = /*#__PURE__*/ _interopRequireDefault(require("./Colllection.styles"));
24
+ var defaultProps = {
25
+ draggable: false,
26
+ addLabel: "Add item",
27
+ addDisabledTooltip: "There is already an empty item",
28
+ disabled: false,
29
+ spacing: "xs",
30
+ required: false
31
+ };
32
+ var Collection = function(props) {
33
+ var _ref = (0, _core.useComponentDefaultProps)("Collection", defaultProps, props), value = _ref.value, defaultValue = _ref.defaultValue, onChange = _ref.onChange, onFocus = _ref.onFocus, disabled = _ref.disabled, draggable = _ref.draggable, children = _ref.children, spacing = _ref.spacing, required = _ref.required, newItem = _ref.newItem, addLabel = _ref.addLabel, addDisabledTooltip = _ref.addDisabledTooltip, // Style props
34
+ classNames = _ref.classNames, className = _ref.className, styles = _ref.styles, unstyled = _ref.unstyled, others = _objectWithoutProperties(_ref, [
35
+ "value",
36
+ "defaultValue",
37
+ "onChange",
38
+ "onFocus",
39
+ "disabled",
40
+ "draggable",
41
+ "children",
42
+ "spacing",
43
+ "required",
44
+ "newItem",
45
+ "addLabel",
46
+ "addDisabledTooltip",
47
+ "classNames",
48
+ "className",
49
+ "styles",
50
+ "unstyled"
51
+ ]);
52
+ var ref = (0, _colllectionStyles.default)(null, {
53
+ classNames: classNames,
54
+ name: "Collection",
55
+ styles: styles,
56
+ unstyled: unstyled
57
+ }), classes = ref.classes, cx = ref.cx;
58
+ var collectionID = (0, _hooks.useId)("dnd-droppable");
59
+ var ref1 = _slicedToArray((0, _hooks1.useControlledList)({
60
+ value: value,
61
+ onChange: onChange,
62
+ defaultValue: defaultValue
63
+ }), 2), values = ref1[0], ref2 = ref1[1], append = ref2.append, remove = ref2.remove, reorder = ref2.reorder;
64
+ var hasOnlyOneItem = values.length === 1;
65
+ var items = values.map(function(item, index) {
66
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_collectionItem.CollectionItem, {
67
+ disabled: disabled,
68
+ draggable: draggable,
69
+ index: index,
70
+ onRemove: function() {
71
+ return remove(index);
72
+ },
73
+ styles: styles,
74
+ removable: !(required && hasOnlyOneItem),
75
+ children: children(item, index)
76
+ }, index);
77
+ });
78
+ var hasEmptyItem = values.some(function(item) {
79
+ return JSON.stringify(item) === JSON.stringify(newItem);
80
+ });
81
+ var _addButton = disabled ? null : /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Group, {
82
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Tooltip, {
83
+ label: addDisabledTooltip,
84
+ disabled: !hasEmptyItem,
85
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Box, {
86
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Button, {
87
+ variant: "subtle",
88
+ leftIcon: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_plasmaReactIcons.AddSize16Px, {
89
+ height: 16
90
+ }),
91
+ onClick: function() {
92
+ return append(newItem);
93
+ },
94
+ disabled: hasEmptyItem,
95
+ children: addLabel
96
+ })
97
+ })
98
+ })
99
+ });
100
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_reactBeautifulDnd.DragDropContext, {
101
+ onDragEnd: function(param) {
102
+ var destination = param.destination, source = param.source;
103
+ return reorder({
104
+ from: source.index,
105
+ to: (destination === null || destination === void 0 ? void 0 : destination.index) || 0
106
+ });
107
+ },
108
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_reactBeautifulDnd.Droppable, {
109
+ direction: "vertical",
110
+ droppableId: collectionID,
111
+ children: function(provided) {
112
+ return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_core.Box, _objectSpreadProps(_objectSpread(_objectSpreadProps(_objectSpread({}, provided.droppableProps), {
113
+ ref: provided.innerRef,
114
+ className: cx(classes.root, className)
115
+ }), others), {
116
+ children: /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_core.Stack, {
117
+ spacing: spacing,
118
+ children: [
119
+ items,
120
+ provided.placeholder,
121
+ _addButton
122
+ ]
123
+ })
124
+ }));
125
+ }
126
+ })
127
+ });
128
+ };
129
+
130
+ //# sourceMappingURL=Collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/collection/Collection.tsx"],"sourcesContent":["import {AddSize16Px} from '@coveord/plasma-react-icons';\nimport {\n Box,\n Button,\n DefaultProps,\n Group,\n MantineNumberSize,\n Selectors,\n Stack,\n Tooltip,\n useComponentDefaultProps,\n} from '@mantine/core';\nimport {useId} from '@mantine/hooks';\nimport {ReactNode} from 'react';\nimport {DragDropContext, Droppable} from 'react-beautiful-dnd';\n\nimport {useControlledList} from '../../hooks';\nimport {CollectionItem} from './CollectionItem';\nimport useStyles from './Colllection.styles';\n\ninterface CollectionProps<T> extends DefaultProps<Selectors<typeof useStyles>> {\n newItem: T;\n children: (item: T, index: number) => ReactNode;\n defaultValue?: T[];\n value?: T[];\n onFocus?: () => void;\n onChange?: (value: T[]) => void;\n draggable?: boolean;\n disabled?: boolean;\n addLabel?: string;\n addDisabledTooltip?: string;\n spacing?: MantineNumberSize;\n required?: boolean;\n}\n\nconst defaultProps: Partial<CollectionProps<unknown>> = {\n draggable: false,\n addLabel: 'Add item',\n addDisabledTooltip: 'There is already an empty item',\n disabled: false,\n spacing: 'xs',\n required: false,\n};\n\nexport const Collection = <T,>(props: CollectionProps<T>) => {\n const {\n value,\n defaultValue,\n onChange,\n onFocus,\n disabled,\n draggable,\n children,\n spacing,\n required,\n newItem,\n addLabel,\n addDisabledTooltip,\n\n // Style props\n classNames,\n className,\n styles,\n unstyled,\n\n ...others\n } = useComponentDefaultProps('Collection', defaultProps as CollectionProps<T>, props);\n const {classes, cx} = useStyles(null, {classNames, name: 'Collection', styles, unstyled});\n const collectionID = useId('dnd-droppable');\n\n const [values, {append, remove, reorder}] = useControlledList({value, onChange, defaultValue});\n const hasOnlyOneItem = values.length === 1;\n const items = values.map((item, index) => (\n <CollectionItem\n key={index}\n disabled={disabled}\n draggable={draggable}\n index={index}\n onRemove={() => remove(index)}\n styles={styles}\n removable={!(required && hasOnlyOneItem)}\n >\n {children(item, index)}\n </CollectionItem>\n ));\n\n const hasEmptyItem = values.some((item) => JSON.stringify(item) === JSON.stringify(newItem));\n\n const _addButton = disabled ? null : (\n <Group>\n <Tooltip label={addDisabledTooltip} disabled={!hasEmptyItem}>\n <Box>\n <Button\n variant=\"subtle\"\n leftIcon={<AddSize16Px height={16} />}\n onClick={() => append(newItem)}\n disabled={hasEmptyItem}\n >\n {addLabel}\n </Button>\n </Box>\n </Tooltip>\n </Group>\n );\n\n return (\n <DragDropContext\n onDragEnd={({destination, source}) => reorder({from: source.index, to: destination?.index || 0})}\n >\n <Droppable direction=\"vertical\" droppableId={collectionID}>\n {(provided) => (\n <Box\n {...provided.droppableProps}\n ref={provided.innerRef}\n className={cx(classes.root, className)}\n {...others}\n >\n <Stack spacing={spacing}>\n {items}\n {provided.placeholder}\n {_addButton}\n </Stack>\n </Box>\n )}\n </Droppable>\n </DragDropContext>\n );\n};\n"],"names":["Collection","defaultProps","draggable","addLabel","addDisabledTooltip","disabled","spacing","required","props","useComponentDefaultProps","value","defaultValue","onChange","onFocus","children","newItem","classNames","className","styles","unstyled","others","useStyles","name","classes","cx","collectionID","useId","useControlledList","values","append","remove","reorder","hasOnlyOneItem","length","items","map","item","index","CollectionItem","onRemove","removable","hasEmptyItem","some","JSON","stringify","_addButton","Group","Tooltip","label","Box","Button","variant","leftIcon","AddSize16Px","height","onClick","DragDropContext","onDragEnd","destination","source","from","to","Droppable","direction","droppableId","provided","droppableProps","ref","innerRef","root","Stack","placeholder"],"mappings":"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"}