@coveord/plasma-mantine 48.9.1 → 48.10.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 (175) hide show
  1. package/.turbo/turbo-build.log +3 -3
  2. package/.turbo/turbo-test.log +6 -6
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/cjs/__tests__/GlobalSetup.js.map +1 -1
  5. package/dist/cjs/__tests__/SetupAfterEnv.js.map +1 -1
  6. package/dist/cjs/__tests__/Utils.js.map +1 -1
  7. package/dist/cjs/components/blank-slate/BlankSlate.js +1 -1
  8. package/dist/cjs/components/blank-slate/BlankSlate.js.map +1 -1
  9. package/dist/cjs/components/blank-slate/index.js.map +1 -1
  10. package/dist/cjs/components/code-editor/CodeEditor.js +7 -7
  11. package/dist/cjs/components/code-editor/CodeEditor.js.map +1 -1
  12. package/dist/cjs/components/code-editor/__mocks__/@monaco-editor/react.js.map +1 -1
  13. package/dist/cjs/components/code-editor/__mocks__/monaco-editor.js.map +1 -1
  14. package/dist/cjs/components/code-editor/index.js.map +1 -1
  15. package/dist/cjs/components/collection/Collection.js +8 -8
  16. package/dist/cjs/components/collection/Collection.js.map +1 -1
  17. package/dist/cjs/components/collection/CollectionItem.js +7 -7
  18. package/dist/cjs/components/collection/CollectionItem.js.map +1 -1
  19. package/dist/cjs/components/collection/Colllection.styles.js.map +1 -1
  20. package/dist/cjs/components/collection/index.js.map +1 -1
  21. package/dist/cjs/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -1
  22. package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js +5 -5
  23. package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -1
  24. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js +2 -2
  25. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
  26. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js +1 -1
  27. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
  28. package/dist/cjs/components/date-range-picker/index.js.map +1 -1
  29. package/dist/cjs/components/header/Header.js.map +1 -1
  30. package/dist/cjs/components/header/index.js.map +1 -1
  31. package/dist/cjs/components/index.js.map +1 -1
  32. package/dist/cjs/components/inline-confirm/InlineConfirm.js +1 -1
  33. package/dist/cjs/components/inline-confirm/InlineConfirm.js.map +1 -1
  34. package/dist/cjs/components/inline-confirm/InlineConfirmButton.js +2 -2
  35. package/dist/cjs/components/inline-confirm/InlineConfirmButton.js.map +1 -1
  36. package/dist/cjs/components/inline-confirm/InlineConfirmContext.js.map +1 -1
  37. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js +2 -2
  38. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
  39. package/dist/cjs/components/inline-confirm/index.js.map +1 -1
  40. package/dist/cjs/components/inline-confirm/useInlineConfirm.js.map +1 -1
  41. package/dist/cjs/components/modal-wizard/ModalWizard.js +5 -5
  42. package/dist/cjs/components/modal-wizard/ModalWizard.js.map +1 -1
  43. package/dist/cjs/components/modal-wizard/ModalWizardStep.js.map +1 -1
  44. package/dist/cjs/components/modal-wizard/index.js.map +1 -1
  45. package/dist/cjs/components/prompt/Prompt.js +1 -1
  46. package/dist/cjs/components/prompt/Prompt.js.map +1 -1
  47. package/dist/cjs/components/prompt/PromptFooter.js.map +1 -1
  48. package/dist/cjs/components/prompt/index.js.map +1 -1
  49. package/dist/cjs/components/sticky-footer/StickyFooter.js.map +1 -1
  50. package/dist/cjs/components/sticky-footer/index.js.map +1 -1
  51. package/dist/cjs/components/table/Table.js +14 -14
  52. package/dist/cjs/components/table/Table.js.map +1 -1
  53. package/dist/cjs/components/table/TableActions.js.map +1 -1
  54. package/dist/cjs/components/table/TableCollapsibleColumn.js.map +1 -1
  55. package/dist/cjs/components/table/TableContext.js.map +1 -1
  56. package/dist/cjs/components/table/TableDateRangePicker.js +2 -2
  57. package/dist/cjs/components/table/TableDateRangePicker.js.map +1 -1
  58. package/dist/cjs/components/table/TableFilter.js +3 -3
  59. package/dist/cjs/components/table/TableFilter.js.map +1 -1
  60. package/dist/cjs/components/table/TableFooter.js.map +1 -1
  61. package/dist/cjs/components/table/TableHeader.js.map +1 -1
  62. package/dist/cjs/components/table/TablePagination.js +1 -1
  63. package/dist/cjs/components/table/TablePagination.js.map +1 -1
  64. package/dist/cjs/components/table/TablePerPage.js +5 -5
  65. package/dist/cjs/components/table/TablePerPage.js.map +1 -1
  66. package/dist/cjs/components/table/TablePredicate.js +1 -1
  67. package/dist/cjs/components/table/TablePredicate.js.map +1 -1
  68. package/dist/cjs/components/table/Th.js.map +1 -1
  69. package/dist/cjs/components/table/index.js.map +1 -1
  70. package/dist/cjs/components/table/useTable.js.map +1 -1
  71. package/dist/cjs/hooks/index.js.map +1 -1
  72. package/dist/cjs/hooks/useControlledList.js +2 -2
  73. package/dist/cjs/hooks/useControlledList.js.map +1 -1
  74. package/dist/cjs/hooks/useParentHeight.js +6 -6
  75. package/dist/cjs/hooks/useParentHeight.js.map +1 -1
  76. package/dist/cjs/index.js.map +1 -1
  77. package/dist/cjs/theme/PlasmaColors.js.map +1 -1
  78. package/dist/cjs/theme/Plasmantine.js.map +1 -1
  79. package/dist/cjs/theme/Theme.js +6 -0
  80. package/dist/cjs/theme/Theme.js.map +1 -1
  81. package/dist/cjs/theme/index.js.map +1 -1
  82. package/dist/definitions/components/collection/Collection.d.ts +67 -1
  83. package/dist/definitions/components/collection/Collection.d.ts.map +1 -1
  84. package/dist/definitions/components/header/Header.d.ts +23 -2
  85. package/dist/definitions/components/header/Header.d.ts.map +1 -1
  86. package/dist/definitions/theme/Theme.d.ts.map +1 -1
  87. package/dist/esm/__tests__/GlobalSetup.js.map +1 -1
  88. package/dist/esm/__tests__/SetupAfterEnv.js.map +1 -1
  89. package/dist/esm/__tests__/Utils.js.map +1 -1
  90. package/dist/esm/components/blank-slate/BlankSlate.js +1 -1
  91. package/dist/esm/components/blank-slate/BlankSlate.js.map +1 -1
  92. package/dist/esm/components/blank-slate/index.js.map +1 -1
  93. package/dist/esm/components/code-editor/CodeEditor.js +7 -7
  94. package/dist/esm/components/code-editor/CodeEditor.js.map +1 -1
  95. package/dist/esm/components/code-editor/__mocks__/@monaco-editor/react.js.map +1 -1
  96. package/dist/esm/components/code-editor/__mocks__/monaco-editor.js.map +1 -1
  97. package/dist/esm/components/code-editor/index.js.map +1 -1
  98. package/dist/esm/components/collection/Collection.js +8 -8
  99. package/dist/esm/components/collection/Collection.js.map +1 -1
  100. package/dist/esm/components/collection/CollectionItem.js +7 -7
  101. package/dist/esm/components/collection/CollectionItem.js.map +1 -1
  102. package/dist/esm/components/collection/Colllection.styles.js.map +1 -1
  103. package/dist/esm/components/collection/index.js.map +1 -1
  104. package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -1
  105. package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js +5 -5
  106. package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -1
  107. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js +2 -2
  108. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
  109. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js +1 -1
  110. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
  111. package/dist/esm/components/date-range-picker/index.js.map +1 -1
  112. package/dist/esm/components/header/Header.js.map +1 -1
  113. package/dist/esm/components/header/index.js.map +1 -1
  114. package/dist/esm/components/index.js.map +1 -1
  115. package/dist/esm/components/inline-confirm/InlineConfirm.js +1 -1
  116. package/dist/esm/components/inline-confirm/InlineConfirm.js.map +1 -1
  117. package/dist/esm/components/inline-confirm/InlineConfirmButton.js +2 -2
  118. package/dist/esm/components/inline-confirm/InlineConfirmButton.js.map +1 -1
  119. package/dist/esm/components/inline-confirm/InlineConfirmContext.js.map +1 -1
  120. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js +2 -2
  121. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
  122. package/dist/esm/components/inline-confirm/index.js.map +1 -1
  123. package/dist/esm/components/inline-confirm/useInlineConfirm.js.map +1 -1
  124. package/dist/esm/components/modal-wizard/ModalWizard.js +5 -5
  125. package/dist/esm/components/modal-wizard/ModalWizard.js.map +1 -1
  126. package/dist/esm/components/modal-wizard/ModalWizardStep.js.map +1 -1
  127. package/dist/esm/components/modal-wizard/index.js.map +1 -1
  128. package/dist/esm/components/prompt/Prompt.js +1 -1
  129. package/dist/esm/components/prompt/Prompt.js.map +1 -1
  130. package/dist/esm/components/prompt/PromptFooter.js.map +1 -1
  131. package/dist/esm/components/prompt/index.js.map +1 -1
  132. package/dist/esm/components/sticky-footer/StickyFooter.js.map +1 -1
  133. package/dist/esm/components/sticky-footer/index.js.map +1 -1
  134. package/dist/esm/components/table/Table.js +14 -14
  135. package/dist/esm/components/table/Table.js.map +1 -1
  136. package/dist/esm/components/table/TableActions.js.map +1 -1
  137. package/dist/esm/components/table/TableCollapsibleColumn.js.map +1 -1
  138. package/dist/esm/components/table/TableContext.js.map +1 -1
  139. package/dist/esm/components/table/TableDateRangePicker.js +2 -2
  140. package/dist/esm/components/table/TableDateRangePicker.js.map +1 -1
  141. package/dist/esm/components/table/TableFilter.js +3 -3
  142. package/dist/esm/components/table/TableFilter.js.map +1 -1
  143. package/dist/esm/components/table/TableFooter.js.map +1 -1
  144. package/dist/esm/components/table/TableHeader.js.map +1 -1
  145. package/dist/esm/components/table/TablePagination.js +1 -1
  146. package/dist/esm/components/table/TablePagination.js.map +1 -1
  147. package/dist/esm/components/table/TablePerPage.js +5 -5
  148. package/dist/esm/components/table/TablePerPage.js.map +1 -1
  149. package/dist/esm/components/table/TablePredicate.js +1 -1
  150. package/dist/esm/components/table/TablePredicate.js.map +1 -1
  151. package/dist/esm/components/table/Th.js.map +1 -1
  152. package/dist/esm/components/table/index.js.map +1 -1
  153. package/dist/esm/components/table/useTable.js.map +1 -1
  154. package/dist/esm/hooks/index.js.map +1 -1
  155. package/dist/esm/hooks/useControlledList.js +2 -2
  156. package/dist/esm/hooks/useControlledList.js.map +1 -1
  157. package/dist/esm/hooks/useParentHeight.js +6 -6
  158. package/dist/esm/hooks/useParentHeight.js.map +1 -1
  159. package/dist/esm/index.js.map +1 -1
  160. package/dist/esm/theme/PlasmaColors.js.map +1 -1
  161. package/dist/esm/theme/Plasmantine.js.map +1 -1
  162. package/dist/esm/theme/Theme.js +6 -0
  163. package/dist/esm/theme/Theme.js.map +1 -1
  164. package/dist/esm/theme/index.js.map +1 -1
  165. package/package.json +7 -7
  166. package/src/components/collection/Collection.tsx +67 -1
  167. package/src/components/header/Header.tsx +23 -2
  168. package/src/theme/Theme.tsx +6 -0
  169. package/dist/cjs/components/code-editor/CodeEditor.example.js +0 -41
  170. package/dist/cjs/components/code-editor/CodeEditor.example.js.map +0 -1
  171. package/dist/definitions/components/code-editor/CodeEditor.example.d.ts +0 -4
  172. package/dist/definitions/components/code-editor/CodeEditor.example.d.ts.map +0 -1
  173. package/dist/esm/components/code-editor/CodeEditor.example.js +0 -31
  174. package/dist/esm/components/code-editor/CodeEditor.example.js.map +0 -1
  175. package/src/components/code-editor/CodeEditor.example.tsx +0 -32
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import {Box, Center, Collapse, createStyles, Loader, Skeleton, Table as MantineTable} from '@mantine/core';\nimport {useForm} from '@mantine/form';\nimport {useClickOutside, useDidUpdate} from '@mantine/hooks';\nimport {\n ColumnDef,\n defaultColumnSizing,\n flexRender,\n getCoreRowModel,\n Row,\n TableState,\n useReactTable,\n} from '@tanstack/react-table';\nimport {InitialTableState} from '@tanstack/table-core';\nimport defaultsDeep from 'lodash.defaultsdeep';\nimport {Children, Fragment, ReactElement, ReactNode, useCallback, useEffect, useState} from 'react';\n\nimport {TableActions} from './TableActions';\nimport {TableCollapsibleColumn} from './TableCollapsibleColumn';\nimport {onTableChangeEvent, TableContext, TableFormType} from './TableContext';\nimport {TableDateRangePicker} from './TableDateRangePicker';\nimport {TableFilter} from './TableFilter';\nimport {TableFooter} from './TableFooter';\nimport {TableHeader} from './TableHeader';\nimport {TablePagination} from './TablePagination';\nimport {TablePerPage} from './TablePerPage';\nimport {TablePredicate} from './TablePredicate';\nimport {Th} from './Th';\n\nconst useStyles = createStyles<string, {hasHeader: boolean}>((theme, {hasHeader}, getRef) => ({\n table: {\n width: '100%',\n '& td:first-child': {\n paddingLeft: theme.spacing.md,\n },\n },\n\n header: {\n position: 'sticky',\n top: hasHeader ? 69 : 0,\n backgroundColor: theme.colorScheme === 'dark' ? theme.black : theme.white,\n transition: 'box-shadow 150ms ease',\n zIndex: 12, // skeleton is 11\n '& tr th:first-child div': {\n paddingLeft: theme.spacing.md,\n },\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n left: 0,\n right: 0,\n bottom: 0,\n borderBottom: `1px solid ${theme.colors.gray[2]}`,\n },\n },\n\n rowSelected: {\n ref: getRef('rowSelected'),\n },\n\n row: {\n [`&:hover, &.${getRef('rowSelected')}`]: {\n backgroundColor:\n theme.colorScheme === 'dark'\n ? theme.fn.rgba(theme.colors[theme.primaryColor][7], 0.2)\n : theme.colors[theme.primaryColor][0],\n },\n },\n}));\n\ninterface TableProps<T> {\n /**\n * Data to display in the table\n */\n data: T[];\n /**\n * Columns to display in the table.\n *\n * @see https://tanstack.com/table/v8/docs/guide/column-defs\n */\n columns: Array<ColumnDef<T>>;\n /**\n * Function called when the table mounts\n *\n * @param state the state of the table\n */\n onMount?: onTableChangeEvent;\n /**\n * Function called when the table should update\n *\n * @param state the state of the table\n */\n onChange?: onTableChangeEvent;\n /**\n * Function that generates the expandable content of a row\n * Return null for rows that don't need to be expandable\n *\n * @param datum the row for which the children should be generated.\n */\n getExpandChildren?: (datum: T) => ReactNode;\n /**\n * React children to show when the table has no rows to show. You can leverage useTable to get the state of the table\n */\n noDataChildren?: ReactNode;\n /**\n * Whether the table is loading or not\n *\n * @default false\n */\n loading?: boolean;\n /**\n * Childrens to display in the table. They need to be wrap in either `Table.Header` or `Table.Footer`\n *\n * @example\n * <Table ...>\n * <Table.Header>\n * <div>Hello</div>\n * </Table.Header>\n * </Table>\n */\n children?: ReactNode;\n\n /**\n * Initial state of the table\n */\n initialState?: InitialTableState & Partial<TableFormType>;\n}\n\ninterface TableType {\n <T>(props: TableProps<T>): ReactElement;\n Actions: typeof TableActions;\n Filter: typeof TableFilter;\n Footer: typeof TableFooter;\n Header: typeof TableHeader;\n Pagination: typeof TablePagination;\n PerPage: typeof TablePerPage;\n Predicate: typeof TablePredicate;\n CollapsibleColumn: typeof TableCollapsibleColumn;\n DateRangePicker: typeof TableDateRangePicker;\n}\n\nexport const Table: TableType = <T,>({\n data,\n noDataChildren,\n getExpandChildren,\n initialState = {},\n columns,\n onMount,\n onChange,\n children,\n loading = false,\n}: TableProps<T>) => {\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const header = convertedChildren.find((child) => child.type === TableHeader);\n const footer = convertedChildren.find((child) => child.type === TableFooter);\n\n const {predicates, dateRange, ...initialStateWithoutForm} = initialState;\n const form = useForm<TableFormType>({\n initialValues: {predicates: initialState?.predicates ?? {}, dateRange: initialState?.dateRange ?? [null, null]},\n });\n\n const {cx, classes} = useStyles({hasHeader: !!header});\n\n const table = useReactTable({\n initialState: defaultsDeep(initialStateWithoutForm, {pagination: {pageSize: TablePerPage.DEFAULT_SIZE}}),\n data,\n columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: true,\n getRowCanExpand: (row: Row<T>) => !!getExpandChildren?.(row.original) ?? false,\n });\n const [state, setState] = useState<TableState>(table.initialState);\n table.setOptions((prev) => ({\n ...prev,\n state,\n onStateChange: setState,\n }));\n\n const triggerChange = () => onChange?.({...state, ...form.values});\n\n useEffect(() => {\n onMount?.({...state, ...form.values});\n }, []);\n\n const outsideClickRef = useClickOutside(() => {\n table.resetRowSelection(true);\n });\n\n useDidUpdate(() => {\n triggerChange();\n clearSelection();\n }, [state.globalFilter, state.sorting, state.pagination, form.values]);\n\n const clearFilters = useCallback(() => {\n form.setFieldValue('predicates', {});\n setState((prevState) => ({...prevState, globalFilter: ''}));\n }, []);\n\n const clearSelection = () => {\n setState((prevState) => ({...prevState, rowSelection: {}}));\n };\n\n const getSelectedRow = useCallback(\n () => table.getSelectedRowModel().flatRows?.[0]?.original ?? null,\n [state.rowSelection]\n );\n\n if (!data) {\n return (\n <Center sx={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const toggleRowSelection = (row: Row<T>) => {\n table.setRowSelection(() => ({[row.id]: !row.getIsSelected()}));\n };\n\n const rows = table.getRowModel().rows.map((row) => {\n const rowChildren = getExpandChildren?.(row.original) ?? null;\n\n return (\n <Fragment key={row.id}>\n <tr\n onClick={() => toggleRowSelection(row)}\n className={cx(classes.row, {[classes.rowSelected]: row.getIsSelected()})}\n >\n {row.getVisibleCells().map((cell) => {\n const size = cell.column.getSize();\n const width = size !== defaultColumnSizing.size ? size : undefined;\n return (\n <td key={cell.id} style={{width}}>\n <Skeleton visible={loading} sx={!loading ? {borderRadius: 0} : undefined}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </Skeleton>\n </td>\n );\n })}\n </tr>\n {rowChildren ? (\n <tr>\n <td\n colSpan={columns.length + 1}\n style={{padding: 0, borderBottomColor: row.getIsExpanded() ? undefined : 'transparent'}}\n >\n <Collapse in={row.getIsExpanded()} px=\"sm\" py=\"xs\">\n {rowChildren}\n </Collapse>\n </td>\n </tr>\n ) : null}\n </Fragment>\n );\n });\n\n return (\n <Box ref={outsideClickRef}>\n <TableContext.Provider\n value={{\n onChange: triggerChange,\n state,\n setState,\n clearFilters,\n getSelectedRow,\n clearSelection,\n form,\n containerRef: outsideClickRef,\n }}\n >\n {header}\n <MantineTable className={classes.table} horizontalSpacing=\"sm\" verticalSpacing=\"xs\" pb=\"sm\">\n <thead className={classes.header}>\n {table.getHeaderGroups().map((headerGroup) => (\n <tr key={headerGroup.id}>\n {headerGroup.headers.map((columnHeader) => (\n <Th key={columnHeader.id} header={columnHeader} />\n ))}\n </tr>\n ))}\n </thead>\n <tbody>\n {rows.length ? (\n rows\n ) : (\n <tr>\n <td colSpan={columns.length}>{noDataChildren}</td>\n </tr>\n )}\n </tbody>\n </MantineTable>\n {footer}\n </TableContext.Provider>\n </Box>\n );\n};\n\nTable.Actions = TableActions;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.Pagination = TablePagination;\nTable.Predicate = TablePredicate;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.DateRangePicker = TableDateRangePicker;\n"],"names":["Box","Center","Collapse","createStyles","Loader","Skeleton","Table","MantineTable","useForm","useClickOutside","useDidUpdate","defaultColumnSizing","flexRender","getCoreRowModel","useReactTable","defaultsDeep","Children","Fragment","useCallback","useEffect","useState","TableActions","TableCollapsibleColumn","TableContext","TableDateRangePicker","TableFilter","TableFooter","TableHeader","TablePagination","TablePerPage","TablePredicate","Th","useStyles","theme","getRef","hasHeader","table","width","paddingLeft","spacing","md","header","position","top","backgroundColor","colorScheme","black","white","transition","zIndex","content","left","right","bottom","borderBottom","colors","gray","rowSelected","ref","row","fn","rgba","primaryColor","data","noDataChildren","getExpandChildren","initialState","columns","onMount","onChange","children","loading","convertedChildren","toArray","find","child","type","footer","predicates","dateRange","initialStateWithoutForm","form","initialValues","cx","classes","pagination","pageSize","DEFAULT_SIZE","manualPagination","getRowCanExpand","original","state","setState","setOptions","prev","onStateChange","triggerChange","values","outsideClickRef","resetRowSelection","clearSelection","globalFilter","sorting","clearFilters","setFieldValue","prevState","rowSelection","getSelectedRow","getSelectedRowModel","flatRows","sx","flexGrow","toggleRowSelection","setRowSelection","id","getIsSelected","rows","getRowModel","map","rowChildren","tr","onClick","className","getVisibleCells","cell","size","column","getSize","undefined","td","style","visible","borderRadius","columnDef","getContext","colSpan","length","padding","borderBottomColor","getIsExpanded","in","px","py","Provider","value","containerRef","horizontalSpacing","verticalSpacing","pb","thead","getHeaderGroups","headerGroup","headers","columnHeader","tbody","Actions","Filter","Footer","Header","Pagination","Predicate","PerPage","CollapsibleColumn","DateRangePicker"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import {Box, Center, Collapse, createStyles, Loader, Skeleton, Table as MantineTable} from '@mantine/core';\nimport {useForm} from '@mantine/form';\nimport {useClickOutside, useDidUpdate} from '@mantine/hooks';\nimport {\n ColumnDef,\n defaultColumnSizing,\n flexRender,\n getCoreRowModel,\n Row,\n TableState,\n useReactTable,\n} from '@tanstack/react-table';\nimport {InitialTableState} from '@tanstack/table-core';\nimport defaultsDeep from 'lodash.defaultsdeep';\nimport {Children, Fragment, ReactElement, ReactNode, useCallback, useEffect, useState} from 'react';\n\nimport {TableActions} from './TableActions';\nimport {TableCollapsibleColumn} from './TableCollapsibleColumn';\nimport {onTableChangeEvent, TableContext, TableFormType} from './TableContext';\nimport {TableDateRangePicker} from './TableDateRangePicker';\nimport {TableFilter} from './TableFilter';\nimport {TableFooter} from './TableFooter';\nimport {TableHeader} from './TableHeader';\nimport {TablePagination} from './TablePagination';\nimport {TablePerPage} from './TablePerPage';\nimport {TablePredicate} from './TablePredicate';\nimport {Th} from './Th';\n\nconst useStyles = createStyles<string, {hasHeader: boolean}>((theme, {hasHeader}, getRef) => ({\n table: {\n width: '100%',\n '& td:first-child': {\n paddingLeft: theme.spacing.md,\n },\n },\n\n header: {\n position: 'sticky',\n top: hasHeader ? 69 : 0,\n backgroundColor: theme.colorScheme === 'dark' ? theme.black : theme.white,\n transition: 'box-shadow 150ms ease',\n zIndex: 12, // skeleton is 11\n '& tr th:first-child div': {\n paddingLeft: theme.spacing.md,\n },\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n left: 0,\n right: 0,\n bottom: 0,\n borderBottom: `1px solid ${theme.colors.gray[2]}`,\n },\n },\n\n rowSelected: {\n ref: getRef('rowSelected'),\n },\n\n row: {\n [`&:hover, &.${getRef('rowSelected')}`]: {\n backgroundColor:\n theme.colorScheme === 'dark'\n ? theme.fn.rgba(theme.colors[theme.primaryColor][7], 0.2)\n : theme.colors[theme.primaryColor][0],\n },\n },\n}));\n\ninterface TableProps<T> {\n /**\n * Data to display in the table\n */\n data: T[];\n /**\n * Columns to display in the table.\n *\n * @see https://tanstack.com/table/v8/docs/guide/column-defs\n */\n columns: Array<ColumnDef<T>>;\n /**\n * Function called when the table mounts\n *\n * @param state the state of the table\n */\n onMount?: onTableChangeEvent;\n /**\n * Function called when the table should update\n *\n * @param state the state of the table\n */\n onChange?: onTableChangeEvent;\n /**\n * Function that generates the expandable content of a row\n * Return null for rows that don't need to be expandable\n *\n * @param datum the row for which the children should be generated.\n */\n getExpandChildren?: (datum: T) => ReactNode;\n /**\n * React children to show when the table has no rows to show. You can leverage useTable to get the state of the table\n */\n noDataChildren?: ReactNode;\n /**\n * Whether the table is loading or not\n *\n * @default false\n */\n loading?: boolean;\n /**\n * Childrens to display in the table. They need to be wrap in either `Table.Header` or `Table.Footer`\n *\n * @example\n * <Table ...>\n * <Table.Header>\n * <div>Hello</div>\n * </Table.Header>\n * </Table>\n */\n children?: ReactNode;\n\n /**\n * Initial state of the table\n */\n initialState?: InitialTableState & Partial<TableFormType>;\n}\n\ninterface TableType {\n <T>(props: TableProps<T>): ReactElement;\n Actions: typeof TableActions;\n Filter: typeof TableFilter;\n Footer: typeof TableFooter;\n Header: typeof TableHeader;\n Pagination: typeof TablePagination;\n PerPage: typeof TablePerPage;\n Predicate: typeof TablePredicate;\n CollapsibleColumn: typeof TableCollapsibleColumn;\n DateRangePicker: typeof TableDateRangePicker;\n}\n\nexport const Table: TableType = <T,>({\n data,\n noDataChildren,\n getExpandChildren,\n initialState = {},\n columns,\n onMount,\n onChange,\n children,\n loading = false,\n}: TableProps<T>) => {\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const header = convertedChildren.find((child) => child.type === TableHeader);\n const footer = convertedChildren.find((child) => child.type === TableFooter);\n\n const {predicates, dateRange, ...initialStateWithoutForm} = initialState;\n const form = useForm<TableFormType>({\n initialValues: {predicates: initialState?.predicates ?? {}, dateRange: initialState?.dateRange ?? [null, null]},\n });\n\n const {cx, classes} = useStyles({hasHeader: !!header});\n\n const table = useReactTable({\n initialState: defaultsDeep(initialStateWithoutForm, {pagination: {pageSize: TablePerPage.DEFAULT_SIZE}}),\n data,\n columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: true,\n getRowCanExpand: (row: Row<T>) => !!getExpandChildren?.(row.original) ?? false,\n });\n const [state, setState] = useState<TableState>(table.initialState);\n table.setOptions((prev) => ({\n ...prev,\n state,\n onStateChange: setState,\n }));\n\n const triggerChange = () => onChange?.({...state, ...form.values});\n\n useEffect(() => {\n onMount?.({...state, ...form.values});\n }, []);\n\n const outsideClickRef = useClickOutside(() => {\n table.resetRowSelection(true);\n });\n\n useDidUpdate(() => {\n triggerChange();\n clearSelection();\n }, [state.globalFilter, state.sorting, state.pagination, form.values]);\n\n const clearFilters = useCallback(() => {\n form.setFieldValue('predicates', {});\n setState((prevState) => ({...prevState, globalFilter: ''}));\n }, []);\n\n const clearSelection = () => {\n setState((prevState) => ({...prevState, rowSelection: {}}));\n };\n\n const getSelectedRow = useCallback(\n () => table.getSelectedRowModel().flatRows?.[0]?.original ?? null,\n [state.rowSelection]\n );\n\n if (!data) {\n return (\n <Center sx={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const toggleRowSelection = (row: Row<T>) => {\n table.setRowSelection(() => ({[row.id]: !row.getIsSelected()}));\n };\n\n const rows = table.getRowModel().rows.map((row) => {\n const rowChildren = getExpandChildren?.(row.original) ?? null;\n\n return (\n <Fragment key={row.id}>\n <tr\n onClick={() => toggleRowSelection(row)}\n className={cx(classes.row, {[classes.rowSelected]: row.getIsSelected()})}\n >\n {row.getVisibleCells().map((cell) => {\n const size = cell.column.getSize();\n const width = size !== defaultColumnSizing.size ? size : undefined;\n return (\n <td key={cell.id} style={{width}}>\n <Skeleton visible={loading} sx={!loading ? {borderRadius: 0} : undefined}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </Skeleton>\n </td>\n );\n })}\n </tr>\n {rowChildren ? (\n <tr>\n <td\n colSpan={columns.length + 1}\n style={{padding: 0, borderBottomColor: row.getIsExpanded() ? undefined : 'transparent'}}\n >\n <Collapse in={row.getIsExpanded()} px=\"sm\" py=\"xs\">\n {rowChildren}\n </Collapse>\n </td>\n </tr>\n ) : null}\n </Fragment>\n );\n });\n\n return (\n <Box ref={outsideClickRef}>\n <TableContext.Provider\n value={{\n onChange: triggerChange,\n state,\n setState,\n clearFilters,\n getSelectedRow,\n clearSelection,\n form,\n containerRef: outsideClickRef,\n }}\n >\n {header}\n <MantineTable className={classes.table} horizontalSpacing=\"sm\" verticalSpacing=\"xs\" pb=\"sm\">\n <thead className={classes.header}>\n {table.getHeaderGroups().map((headerGroup) => (\n <tr key={headerGroup.id}>\n {headerGroup.headers.map((columnHeader) => (\n <Th key={columnHeader.id} header={columnHeader} />\n ))}\n </tr>\n ))}\n </thead>\n <tbody>\n {rows.length ? (\n rows\n ) : (\n <tr>\n <td colSpan={columns.length}>{noDataChildren}</td>\n </tr>\n )}\n </tbody>\n </MantineTable>\n {footer}\n </TableContext.Provider>\n </Box>\n );\n};\n\nTable.Actions = TableActions;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.Pagination = TablePagination;\nTable.Predicate = TablePredicate;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.DateRangePicker = TableDateRangePicker;\n"],"names":["Box","Center","Collapse","createStyles","Loader","Skeleton","Table","MantineTable","useForm","useClickOutside","useDidUpdate","defaultColumnSizing","flexRender","getCoreRowModel","useReactTable","defaultsDeep","Children","Fragment","useCallback","useEffect","useState","TableActions","TableCollapsibleColumn","TableContext","TableDateRangePicker","TableFilter","TableFooter","TableHeader","TablePagination","TablePerPage","TablePredicate","Th","useStyles","theme","getRef","hasHeader","table","width","paddingLeft","spacing","md","header","position","top","backgroundColor","colorScheme","black","white","transition","zIndex","content","left","right","bottom","borderBottom","colors","gray","rowSelected","ref","row","fn","rgba","primaryColor","data","noDataChildren","getExpandChildren","initialState","columns","onMount","onChange","children","loading","convertedChildren","toArray","find","child","type","footer","predicates","dateRange","initialStateWithoutForm","form","initialValues","cx","classes","pagination","pageSize","DEFAULT_SIZE","manualPagination","getRowCanExpand","original","state","setState","setOptions","prev","onStateChange","triggerChange","values","outsideClickRef","resetRowSelection","clearSelection","globalFilter","sorting","clearFilters","setFieldValue","prevState","rowSelection","getSelectedRow","getSelectedRowModel","flatRows","sx","flexGrow","toggleRowSelection","setRowSelection","id","getIsSelected","rows","getRowModel","map","rowChildren","tr","onClick","className","getVisibleCells","cell","size","column","getSize","undefined","td","style","visible","borderRadius","columnDef","getContext","colSpan","length","padding","borderBottomColor","getIsExpanded","in","px","py","Provider","value","containerRef","horizontalSpacing","verticalSpacing","pb","thead","getHeaderGroups","headerGroup","headers","columnHeader","tbody","Actions","Filter","Footer","Header","Pagination","Predicate","PerPage","CollapsibleColumn","DateRangePicker"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/TableActions.tsx"],"sourcesContent":["import {ReactElement, ReactNode} from 'react';\nimport {useTable} from './useTable';\n\ninterface TableActionsProps<T> {\n /**\n * Function that return components for the selected row\n *\n * @param datum the data of the selected row\n * @example\n * <Table.Actions<MyType>>\n * {(datum: MyType) => (\n * <Button\n * component={Link}\n * to={`edit/${datum.id}`}\n * leftIcon={<EditSize24Px />}\n * variant=\"subtle\"\n * color=\"navyBlue.8\"\n * >\n * Edit\n * </Button>\n * )}\n * </Table.Actions>\n */\n children: (datum: T) => ReactNode;\n}\n\nexport const TableActions = <T,>({children}: TableActionsProps<T>): ReactElement => {\n const {getSelectedRow} = useTable();\n const selectedRow = getSelectedRow();\n\n if (!selectedRow) {\n return null;\n }\n\n return <>{children(selectedRow)}</>;\n};\n"],"names":["useTable","TableActions","children","getSelectedRow","selectedRow"],"mappings":"AAAA;AACA,SAAQA,QAAQ,QAAO,YAAY,CAAC;AAyBpC,OAAO,IAAMC,YAAY,GAAG,gBAAwD;QAAlDC,QAAQ,SAARA,QAAQ;IACtC,IAAM,AAACC,cAAc,GAAIH,QAAQ,EAAE,CAA5BG,cAAc,AAAc,AAAC;IACpC,IAAMC,WAAW,GAAGD,cAAc,EAAE,AAAC;IAErC,IAAI,CAACC,WAAW,EAAE;QACd,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,qBAAO;kBAAGF,QAAQ,CAACE,WAAW,CAAC;MAAI,CAAC;AACxC,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/table/TableActions.tsx"],"sourcesContent":["import {ReactElement, ReactNode} from 'react';\nimport {useTable} from './useTable';\n\ninterface TableActionsProps<T> {\n /**\n * Function that return components for the selected row\n *\n * @param datum the data of the selected row\n * @example\n * <Table.Actions<MyType>>\n * {(datum: MyType) => (\n * <Button\n * component={Link}\n * to={`edit/${datum.id}`}\n * leftIcon={<EditSize24Px />}\n * variant=\"subtle\"\n * color=\"navyBlue.8\"\n * >\n * Edit\n * </Button>\n * )}\n * </Table.Actions>\n */\n children: (datum: T) => ReactNode;\n}\n\nexport const TableActions = <T,>({children}: TableActionsProps<T>): ReactElement => {\n const {getSelectedRow} = useTable();\n const selectedRow = getSelectedRow();\n\n if (!selectedRow) {\n return null;\n }\n\n return <>{children(selectedRow)}</>;\n};\n"],"names":["useTable","TableActions","children","getSelectedRow","selectedRow"],"mappings":"AAAA;AACA,SAAQA,QAAQ,QAAO,aAAa;AAyBpC,OAAO,IAAMC,eAAe,gBAAwD;QAAlDC,iBAAAA;IAC9B,IAAM,AAACC,iBAAkBH,WAAlBG;IACP,IAAMC,cAAcD;IAEpB,IAAI,CAACC,aAAa;QACd,OAAO,IAAI;IACf,CAAC;IAED,qBAAO;kBAAGF,SAASE;;AACvB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/TableCollapsibleColumn.tsx"],"sourcesContent":["import {ArrowHeadDownSize24Px, ArrowHeadUpSize24Px} from '@coveord/plasma-react-icons';\nimport {Button} from '@mantine/core';\nimport {ColumnDef} from '@tanstack/table-core';\nimport {MouseEvent as ReactMouseEvent} from 'react';\n\n/**\n * Generic column to use when your table need collapsible rows\n */\nexport const TableCollapsibleColumn: ColumnDef<unknown> = {\n id: 'collapsible',\n header: '',\n enableSorting: false,\n cell: (info) => {\n const handler = info.row.getToggleExpandedHandler();\n const onClick = (e: ReactMouseEvent<HTMLButtonElement>) => {\n e.stopPropagation();\n handler();\n };\n\n return info.row.getCanExpand() ? (\n <Button onClick={onClick} variant=\"subtle\" size=\"xs\">\n {info.row.getIsExpanded() ? <ArrowHeadUpSize24Px /> : <ArrowHeadDownSize24Px />}\n </Button>\n ) : null;\n },\n};\n"],"names":["ArrowHeadDownSize24Px","ArrowHeadUpSize24Px","Button","TableCollapsibleColumn","id","header","enableSorting","cell","info","handler","row","getToggleExpandedHandler","onClick","e","stopPropagation","getCanExpand","variant","size","getIsExpanded"],"mappings":"AAAA;AAAA,SAAQA,qBAAqB,EAAEC,mBAAmB,QAAO,6BAA6B,CAAC;AACvF,SAAQC,MAAM,QAAO,eAAe,CAAC;AAIrC;;CAEC,GACD,OAAO,IAAMC,sBAAsB,GAAuB;IACtDC,EAAE,EAAE,aAAa;IACjBC,MAAM,EAAE,EAAE;IACVC,aAAa,EAAE,KAAK;IACpBC,IAAI,EAAE,SAACC,IAAI,EAAK;QACZ,IAAMC,OAAO,GAAGD,IAAI,CAACE,GAAG,CAACC,wBAAwB,EAAE,AAAC;QACpD,IAAMC,OAAO,GAAG,SAACC,CAAqC,EAAK;YACvDA,CAAC,CAACC,eAAe,EAAE,CAAC;YACpBL,OAAO,EAAE,CAAC;QACd,CAAC,AAAC;QAEF,OAAOD,IAAI,CAACE,GAAG,CAACK,YAAY,EAAE,iBAC1B,KAACb,MAAM;YAACU,OAAO,EAAEA,OAAO;YAAEI,OAAO,EAAC,QAAQ;YAACC,IAAI,EAAC,IAAI;sBAC/CT,IAAI,CAACE,GAAG,CAACQ,aAAa,EAAE,iBAAG,KAACjB,mBAAmB,KAAG,iBAAG,KAACD,qBAAqB,KAAG;UAC1E,GACT,IAAI,CAAC;IACb,CAAC;CACJ,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/table/TableCollapsibleColumn.tsx"],"sourcesContent":["import {ArrowHeadDownSize24Px, ArrowHeadUpSize24Px} from '@coveord/plasma-react-icons';\nimport {Button} from '@mantine/core';\nimport {ColumnDef} from '@tanstack/table-core';\nimport {MouseEvent as ReactMouseEvent} from 'react';\n\n/**\n * Generic column to use when your table need collapsible rows\n */\nexport const TableCollapsibleColumn: ColumnDef<unknown> = {\n id: 'collapsible',\n header: '',\n enableSorting: false,\n cell: (info) => {\n const handler = info.row.getToggleExpandedHandler();\n const onClick = (e: ReactMouseEvent<HTMLButtonElement>) => {\n e.stopPropagation();\n handler();\n };\n\n return info.row.getCanExpand() ? (\n <Button onClick={onClick} variant=\"subtle\" size=\"xs\">\n {info.row.getIsExpanded() ? <ArrowHeadUpSize24Px /> : <ArrowHeadDownSize24Px />}\n </Button>\n ) : null;\n },\n};\n"],"names":["ArrowHeadDownSize24Px","ArrowHeadUpSize24Px","Button","TableCollapsibleColumn","id","header","enableSorting","cell","info","handler","row","getToggleExpandedHandler","onClick","e","stopPropagation","getCanExpand","variant","size","getIsExpanded"],"mappings":"AAAA;AAAA,SAAQA,qBAAqB,EAAEC,mBAAmB,QAAO,8BAA8B;AACvF,SAAQC,MAAM,QAAO,gBAAgB;AAIrC;;CAEC,GACD,OAAO,IAAMC,yBAA6C;IACtDC,IAAI;IACJC,QAAQ;IACRC,eAAe,KAAK;IACpBC,MAAM,SAACC,MAAS;QACZ,IAAMC,UAAUD,KAAKE,GAAG,CAACC,wBAAwB;QACjD,IAAMC,UAAU,SAACC,GAA0C;YACvDA,EAAEC,eAAe;YACjBL;QACJ;QAEA,OAAOD,KAAKE,GAAG,CAACK,YAAY,mBACxB,KAACb;YAAOU,SAASA;YAASI,SAAQ;YAASC,MAAK;sBAC3CT,KAAKE,GAAG,CAACQ,aAAa,mBAAK,KAACjB,yCAAyB,KAACD,0BAAwB;aAEnF,IAAI;IACZ;AACJ,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/TableContext.tsx"],"sourcesContent":["import {DateRangePickerValue} from '@mantine/dates';\nimport {UseFormReturnType} from '@mantine/form';\nimport {TableState} from '@tanstack/react-table';\nimport {createContext, Dispatch, RefObject} from 'react';\n\nexport type onTableChangeEvent = (params: TableState & TableFormType) => void;\n\nexport type TableFormType = {\n /**\n * Object containing the table predicates and their selected values\n *\n * @example {type: \"LONG\", origin: \"system\"}\n */\n predicates: Record<string, string>;\n /**\n * Selected date range in the table\n *\n * @example [new Date(2022, 0, 1), new Date(2022, 0, 31)]\n */\n dateRange: DateRangePickerValue;\n};\n\ntype TableContextType = {\n /**\n * Function to call when the table needs an update\n */\n onChange: () => void;\n /**\n * Internal state of the table\n *\n * @see https://tanstack.com/table/v8/docs/api/core/table#state\n */\n state: TableState;\n /**\n * Function to update the table state\n */\n setState: Dispatch<(prevState: TableState) => TableState>;\n /**\n * Function that clears the filter and predicates\n */\n clearFilters: () => void;\n /**\n * Function that returns the selected row if any\n */\n getSelectedRow: () => any | null;\n /**\n * Function that clear the selected row\n */\n clearSelection: () => void;\n /**\n * Form used to handle predicates and dateRange\n */\n form: UseFormReturnType<TableFormType>;\n /**\n * Table container ref\n */\n containerRef: RefObject<HTMLDivElement>;\n};\n\nexport const TableContext = createContext<TableContextType | null>(null);\n"],"names":["createContext","TableContext"],"mappings":"AAGA,SAAQA,aAAa,QAA4B,OAAO,CAAC;AAwDzD,OAAO,IAAMC,YAAY,iBAAGD,aAAa,CAA0B,IAAI,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/table/TableContext.tsx"],"sourcesContent":["import {DateRangePickerValue} from '@mantine/dates';\nimport {UseFormReturnType} from '@mantine/form';\nimport {TableState} from '@tanstack/react-table';\nimport {createContext, Dispatch, RefObject} from 'react';\n\nexport type onTableChangeEvent = (params: TableState & TableFormType) => void;\n\nexport type TableFormType = {\n /**\n * Object containing the table predicates and their selected values\n *\n * @example {type: \"LONG\", origin: \"system\"}\n */\n predicates: Record<string, string>;\n /**\n * Selected date range in the table\n *\n * @example [new Date(2022, 0, 1), new Date(2022, 0, 31)]\n */\n dateRange: DateRangePickerValue;\n};\n\ntype TableContextType = {\n /**\n * Function to call when the table needs an update\n */\n onChange: () => void;\n /**\n * Internal state of the table\n *\n * @see https://tanstack.com/table/v8/docs/api/core/table#state\n */\n state: TableState;\n /**\n * Function to update the table state\n */\n setState: Dispatch<(prevState: TableState) => TableState>;\n /**\n * Function that clears the filter and predicates\n */\n clearFilters: () => void;\n /**\n * Function that returns the selected row if any\n */\n getSelectedRow: () => any | null;\n /**\n * Function that clear the selected row\n */\n clearSelection: () => void;\n /**\n * Form used to handle predicates and dateRange\n */\n form: UseFormReturnType<TableFormType>;\n /**\n * Table container ref\n */\n containerRef: RefObject<HTMLDivElement>;\n};\n\nexport const TableContext = createContext<TableContextType | null>(null);\n"],"names":["createContext","TableContext"],"mappings":"AAGA,SAAQA,aAAa,QAA4B,QAAQ;AAwDzD,OAAO,IAAMC,6BAAeD,cAAuC,IAAI,EAAE"}
@@ -7,8 +7,8 @@ import { useState } from "react";
7
7
  import { DateRangePickerInlineCalendar } from "../date-range-picker";
8
8
  import { useTable } from "./useTable";
9
9
  export var TableDateRangePicker = function(param) {
10
- var _presets = param.presets, presets = _presets === void 0 ? {} : _presets, rangeCalendarProps = param.rangeCalendarProps;
11
- var ref = _sliced_to_array(useState(false), 2), opened = ref[0], setOpened = ref[1];
10
+ var _param_presets = param.presets, presets = _param_presets === void 0 ? {} : _param_presets, rangeCalendarProps = param.rangeCalendarProps;
11
+ var _useState = _sliced_to_array(useState(false), 2), opened = _useState[0], setOpened = _useState[1];
12
12
  var form = useTable().form;
13
13
  var onApply = function(dates) {
14
14
  form.setFieldValue("dateRange", dates);
@@ -1 +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":["CalendarSize24Px","Popover","Button","dayjs","useState","DateRangePickerInlineCalendar","useTable","TableDateRangePicker","presets","rangeCalendarProps","opened","setOpened","form","onApply","dates","setFieldValue","onCancel","formatDate","date","format","formatedRange","values","dateRange","onChange","Target","variant","color","onClick","px","width","height","Dropdown","p","initialRange"],"mappings":"AAAA;;AAAA,SAAQA,gBAAgB,QAAO,6BAA6B,CAAC;AAC7D,SAAQC,OAAO,EAAEC,MAAM,QAAO,eAAe,CAAC;AAE9C,OAAOC,KAAK,MAAM,OAAO,CAAC;AAC1B,SAA2BC,QAAQ,QAAO,OAAO,CAAC;AAClD,SAAQC,6BAA6B,QAA2C,sBAAsB,CAAC;AAEvG,SAAQC,QAAQ,QAAO,YAAY,CAAC;AAkBpC,OAAO,IAAMC,oBAAoB,GAAiD,gBAG5E;yBAFFC,OAAO,EAAPA,OAAO,yBAAG,EAAE,WAAA,EACZC,kBAAkB,SAAlBA,kBAAkB;IAElB,IAA4BL,GAAe,oBAAfA,QAAQ,CAAC,KAAK,CAAC,IAAA,EAApCM,MAAM,GAAeN,GAAe,GAA9B,EAAEO,SAAS,GAAIP,GAAe,GAAnB,AAAoB;IAC5C,IAAM,AAACQ,IAAI,GAAIN,QAAQ,EAAE,CAAlBM,IAAI,AAAc,AAAC;IAE1B,IAAMC,OAAO,GAAG,SAACC,KAA2B,EAAK;QAC7CF,IAAI,CAACG,aAAa,CAAC,WAAW,EAAED,KAAK,CAAC,CAAC;QACvCH,SAAS,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,AAAC;IACF,IAAMK,QAAQ,GAAG,WAAM;QACnBL,SAAS,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,AAAC;IAEF,IAAMM,UAAU,GAAG,SAACC,IAAU;eAAKf,KAAK,CAACe,IAAI,CAAC,CAACC,MAAM,CAAC,cAAc,CAAC;KAAA,AAAC;IACtE,IAAMC,aAAa,GAAG,AAAC,EAAA,CAA4CH,MAAoC,CAA9EA,UAAU,CAACL,IAAI,CAACS,MAAM,CAACC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAC,KAAG,CAAuC,CAAA,MAAA,CAArCL,UAAU,CAACL,IAAI,CAACS,MAAM,CAACC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAE,AAAC;IAE1G,qBACI;;YACKF,aAAa;0BACd,MAACnB,OAAO;gBAACS,MAAM,EAAEA,MAAM;gBAAEa,QAAQ,EAAEZ,SAAS;;kCACxC,KAACV,OAAO,CAACuB,MAAM;kCACX,cAAA,KAACtB,MAAM;4BAACuB,OAAO,EAAC,SAAS;4BAACC,KAAK,EAAC,MAAM;4BAACC,OAAO,EAAE;uCAAMhB,SAAS,CAAC,IAAI,CAAC;6BAAA;4BAAEiB,EAAE,EAAC,IAAI;sCAC1E,cAAA,KAAC5B,gBAAgB;gCAAC6B,KAAK,EAAE,EAAE;gCAAEC,MAAM,EAAE,EAAE;8BAAI;0BACtC;sBACI;kCACjB,KAAC7B,OAAO,CAAC8B,QAAQ;wBAACC,CAAC,EAAE,CAAC;kCAClB,cAAA,KAAC3B,6BAA6B;4BAC1B4B,YAAY,EAAErB,IAAI,CAACS,MAAM,CAACC,SAAS;4BACnCT,OAAO,EAAEA,OAAO;4BAChBG,QAAQ,EAAEA,QAAQ;4BAClBR,OAAO,EAAEA,OAAO;4BAChBC,kBAAkB,EAAEA,kBAAkB;0BACxC;sBACa;;cACb;;MACX,CACL;AACN,CAAC,CAAC"}
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":["CalendarSize24Px","Popover","Button","dayjs","useState","DateRangePickerInlineCalendar","useTable","TableDateRangePicker","presets","rangeCalendarProps","opened","setOpened","form","onApply","dates","setFieldValue","onCancel","formatDate","date","format","formatedRange","values","dateRange","onChange","Target","variant","color","onClick","px","width","height","Dropdown","p","initialRange"],"mappings":"AAAA;;AAAA,SAAQA,gBAAgB,QAAO,8BAA8B;AAC7D,SAAQC,OAAO,EAAEC,MAAM,QAAO,gBAAgB;AAE9C,OAAOC,WAAW,QAAQ;AAC1B,SAA2BC,QAAQ,QAAO,QAAQ;AAClD,SAAQC,6BAA6B,QAA2C,uBAAuB;AAEvG,SAAQC,QAAQ,QAAO,aAAa;AAkBpC,OAAO,IAAMC,uBAAqE,gBAG5E;+BAFFC,SAAAA,sCAAU,CAAC,oBACXC,2BAAAA;IAEA,IAA4BL,6BAAAA,SAAS,KAAK,OAAnCM,SAAqBN,cAAbO,YAAaP;IAC5B,IAAM,AAACQ,OAAQN,WAARM;IAEP,IAAMC,UAAU,SAACC,OAAgC;QAC7CF,KAAKG,aAAa,CAAC,aAAaD;QAChCH,UAAU,KAAK;IACnB;IACA,IAAMK,WAAW,WAAM;QACnBL,UAAU,KAAK;IACnB;IAEA,IAAMM,aAAa,SAACC;eAAef,MAAMe,MAAMC,MAAM,CAAC;;IACtD,IAAMC,gBAAgB,AAAC,GAA4CH,OAA1CA,WAAWL,KAAKS,MAAM,CAACC,SAAS,CAAC,EAAE,GAAE,OAA0C,OAArCL,WAAWL,KAAKS,MAAM,CAACC,SAAS,CAAC,EAAE;IAEtG,qBACI;;YACKF;0BACD,MAACnB;gBAAQS,QAAQA;gBAAQa,UAAUZ;;kCAC/B,KAACV,QAAQuB,MAAM;kCACX,cAAA,KAACtB;4BAAOuB,SAAQ;4BAAUC,OAAM;4BAAOC,SAAS;uCAAMhB,UAAU,IAAI;;4BAAGiB,IAAG;sCACtE,cAAA,KAAC5B;gCAAiB6B,OAAO;gCAAIC,QAAQ;;;;kCAG7C,KAAC7B,QAAQ8B,QAAQ;wBAACC,GAAG;kCACjB,cAAA,KAAC3B;4BACG4B,cAAcrB,KAAKS,MAAM,CAACC,SAAS;4BACnCT,SAASA;4BACTG,UAAUA;4BACVR,SAASA;4BACTC,oBAAoBA;;;;;;;AAM5C,EAAE"}
@@ -16,9 +16,9 @@ var useStyles = createStyles(function(theme) {
16
16
  };
17
17
  });
18
18
  export var TableFilter = function(param) {
19
- var _placeholder = param.placeholder, placeholder = _placeholder === void 0 ? "Search by any field" : _placeholder;
20
- var ref = useStyles(), classes = ref.classes, cx = ref.cx;
21
- var ref1 = useTable(), state = ref1.state, setState = ref1.setState;
19
+ var _param_placeholder = param.placeholder, placeholder = _param_placeholder === void 0 ? "Search by any field" : _param_placeholder;
20
+ var _useStyles = useStyles(), classes = _useStyles.classes, cx = _useStyles.cx;
21
+ var _useTable = useTable(), state = _useTable.state, setState = _useTable.setState;
22
22
  var handleSearchChange = function(event) {
23
23
  var value = event.currentTarget.value;
24
24
  setState(function(prevState) {
@@ -1 +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":["SearchSize16Px","createStyles","TextInput","useTable","useStyles","theme","wrapper","marginBottom","empty","color","colors","gray","TableFilter","placeholder","classes","cx","state","setState","handleSearchChange","event","value","currentTarget","prevState","globalFilter","className","mb","rightSection","height","onChange"],"mappings":"AAAA;;;;AAAA,SAAQA,cAAc,QAAO,6BAA6B,CAAC;AAC3D,SAAQC,YAAY,EAAEC,SAAS,QAAO,eAAe,CAAC;AAGtD,SAAQC,QAAQ,QAAO,YAAY,CAAC;AAEpC,IAAMC,SAAS,GAAGH,YAAY,CAAC,SAACI,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;AAWJ,OAAO,IAAMC,WAAW,GAAwC,gBAA2C;6BAAzCC,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,IAA0BZ,IAAU,GAAVA,QAAQ,EAAE,EAA7Ba,KAAK,GAAcb,IAAU,CAA7Ba,KAAK,EAAEC,QAAQ,GAAId,IAAU,CAAtBc,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,wCAAIA,SAAS;gBAAEC,YAAY,EAAEH,KAAK;cAAC;SAAC,CAAC,CAAC;IAC/E,CAAC,AAAC;IAEF,qBACI,KAAClB,SAAS;QACNsB,SAAS,EAAEV,OAAO,CAACR,OAAO;QAC1BO,WAAW,EAAEA,WAAW;QACxBY,EAAE,EAAC,IAAI;QACPC,YAAY,gBAAE,KAAC1B,cAAc;YAAC2B,MAAM,EAAE,EAAE;YAAEH,SAAS,EAAET,EAAE,CAAE,qBAACD,OAAO,CAACN,KAAK,EAAG,CAACQ,KAAK,CAACO,YAAY,CAAA,CAAE;UAAI;QACnGH,KAAK,EAAEJ,KAAK,CAACO,YAAY;QACzBK,QAAQ,EAAEV,kBAAkB;MAC9B,CACJ;AACN,CAAC,CAAC"}
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":["SearchSize16Px","createStyles","TextInput","useTable","useStyles","theme","wrapper","marginBottom","empty","color","colors","gray","TableFilter","placeholder","classes","cx","state","setState","handleSearchChange","event","value","currentTarget","prevState","globalFilter","className","mb","rightSection","height","onChange"],"mappings":"AAAA;;;;AAAA,SAAQA,cAAc,QAAO,8BAA8B;AAC3D,SAAQC,YAAY,EAAEC,SAAS,QAAO,gBAAgB;AAGtD,SAAQC,QAAQ,QAAO,aAAa;AAEpC,IAAMC,YAAYH,aAAa,SAACI;WAAW;QACvCC,SAAS;YACLC,cAAc;QAClB;QACAC,OAAO;YACHC,OAAOJ,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;QAC/B;IACJ;;AAWA,OAAO,IAAMC,cAAmD,gBAA2C;mCAAzCC,aAAAA,8CAAc;IAC5E,IAAsBT,aAAAA,aAAfU,UAAeV,WAAfU,SAASC,KAAMX,WAANW;IAChB,IAA0BZ,YAAAA,YAAnBa,QAAmBb,UAAnBa,OAAOC,WAAYd,UAAZc;IAEd,IAAMC,qBAAqB,SAACC,OAAyC;QACjE,IAAM,AAACC,QAASD,MAAME,aAAa,CAA5BD;QACPH,SAAS,SAACK;mBAA2B,wCAAIA;gBAAWC,cAAcH;;;IACtE;IAEA,qBACI,KAAClB;QACGsB,WAAWV,QAAQR,OAAO;QAC1BO,aAAaA;QACbY,IAAG;QACHC,4BAAc,KAAC1B;YAAe2B,QAAQ;YAAIH,WAAWT,GAAI,qBAACD,QAAQN,KAAK,EAAG,CAACQ,MAAMO,YAAY;;QAC7FH,OAAOJ,MAAMO,YAAY;QACzBK,UAAUV;;AAGtB,EAAE"}
@@ -1 +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":["Group","TableFooter","children","position","px","py"],"mappings":"AAAA;AAAA,SAAQA,KAAK,QAAO,eAAe,CAAC;AAGpC,OAAO,IAAMC,WAAW,GAAyC;QAAEC,QAAQ,SAARA,QAAQ;yBACvE,KAACF,KAAK;QAACG,QAAQ,EAAC,OAAO;QAACC,EAAE,EAAC,IAAI;QAACC,EAAE,EAAC,IAAI;kBAClCH,QAAQ;MACL;CACX,CAAC"}
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":["Group","TableFooter","children","position","px","py"],"mappings":"AAAA;AAAA,SAAQA,KAAK,QAAO,gBAAgB;AAGpC,OAAO,IAAMC,cAAoD;QAAEC,iBAAAA;yBAC/D,KAACF;QAAMG,UAAS;QAAQC,IAAG;QAAKC,IAAG;kBAC9BH;;EAEP"}
@@ -1 +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":["createStyles","Group","useStyles","theme","header","position","top","zIndex","backgroundColor","colors","gray","borderBottom","TableHeader","children","classes","spacing","className","px","py"],"mappings":"AAAA;AAAA,SAAQA,YAAY,EAAEC,KAAK,QAAO,eAAe,CAAC;AAGlD,IAAMC,SAAS,GAAGF,YAAY,CAAC,SAACG,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;AAEJ,OAAO,IAAME,WAAW,GAAyC,gBAAgB;QAAdC,QAAQ,SAARA,QAAQ;IACvE,IAAM,AAACC,OAAO,GAAIZ,SAAS,EAAE,CAAtBY,OAAO,AAAe,AAAC;IAC9B,qBACI,KAACb,KAAK;QAACI,QAAQ,EAAC,OAAO;QAACU,OAAO,EAAC,IAAI;QAACC,SAAS,EAAEF,OAAO,CAACV,MAAM;QAAEa,EAAE,EAAC,IAAI;QAACC,EAAE,EAAC,IAAI;kBAC1EL,QAAQ;MACL,CACV;AACN,CAAC,CAAC"}
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":["createStyles","Group","useStyles","theme","header","position","top","zIndex","backgroundColor","colors","gray","borderBottom","TableHeader","children","classes","spacing","className","px","py"],"mappings":"AAAA;AAAA,SAAQA,YAAY,EAAEC,KAAK,QAAO,gBAAgB;AAGlD,IAAMC,YAAYF,aAAa,SAACG;WAAW;QACvCC,QAAQ;YACJC,UAAU;YACVC,KAAK;YACLC,QAAQ;YACRC,iBAAiBL,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YACrCC,cAAc,AAAC,aAAiC,OAArBR,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;QACnD;IACJ;;AAEA,OAAO,IAAME,cAAoD,gBAAgB;QAAdC,iBAAAA;IAC/D,IAAM,AAACC,UAAWZ,YAAXY;IACP,qBACI,KAACb;QAAMI,UAAS;QAAQU,SAAQ;QAAKC,WAAWF,QAAQV,MAAM;QAAEa,IAAG;QAAKC,IAAG;kBACtEL;;AAGb,EAAE"}
@@ -5,7 +5,7 @@ import { Pagination } from "@mantine/core";
5
5
  import { useTable } from "./useTable";
6
6
  export var TablePagination = function(param) {
7
7
  var totalPages = param.totalPages;
8
- var ref = useTable(), state = ref.state, setState = ref.setState, containerRef = ref.containerRef;
8
+ var _useTable = useTable(), state = _useTable.state, setState = _useTable.setState, containerRef = _useTable.containerRef;
9
9
  var updatePage = function(newPage) {
10
10
  setState(function(prevState) {
11
11
  return _object_spread_props(_object_spread({}, prevState), {
@@ -1 +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, containerRef} = useTable();\n const updatePage = (newPage: number) => {\n setState((prevState: TableState) => ({\n ...prevState,\n pagination: {...prevState.pagination, pageIndex: newPage - 1},\n }));\n containerRef.current.scrollIntoView({behavior: 'smooth'});\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":["Pagination","useTable","TablePagination","totalPages","state","setState","containerRef","updatePage","newPage","prevState","pagination","pageIndex","current","scrollIntoView","behavior","page","onChange","total","boundaries","size","getItemAriaLabel","label"],"mappings":"AAAA;;;AAAA,SAAQA,UAAU,QAAO,eAAe,CAAC;AAGzC,SAAQC,QAAQ,QAAO,YAAY,CAAC;AASpC,OAAO,IAAMC,eAAe,GAA4C,gBAAkB;QAAhBC,UAAU,SAAVA,UAAU;IAChF,IAAwCF,GAAU,GAAVA,QAAQ,EAAE,EAA3CG,KAAK,GAA4BH,GAAU,CAA3CG,KAAK,EAAEC,QAAQ,GAAkBJ,GAAU,CAApCI,QAAQ,EAAEC,YAAY,GAAIL,GAAU,CAA1BK,YAAY,AAAe;IACnD,IAAMC,UAAU,GAAG,SAACC,OAAe,EAAK;QACpCH,QAAQ,CAAC,SAACI,SAAqB;mBAAM,wCAC9BA,SAAS;gBACZC,UAAU,EAAE,wCAAID,SAAS,CAACC,UAAU;oBAAEC,SAAS,EAAEH,OAAO,GAAG,CAAC;kBAAC;cAChE;SAAC,CAAC,CAAC;QACJF,YAAY,CAACM,OAAO,CAACC,cAAc,CAAC;YAACC,QAAQ,EAAE,QAAQ;SAAC,CAAC,CAAC;IAC9D,CAAC,AAAC;IAEF,qBACI,KAACd,UAAU;QACPe,IAAI,EAAEX,KAAK,CAACM,UAAU,CAACC,SAAS,GAAG,CAAC;QACpCK,QAAQ,EAAET,UAAU;QACpBU,KAAK,EAAEd,UAAU;QACjBe,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,CAAC"}
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, containerRef} = useTable();\n const updatePage = (newPage: number) => {\n setState((prevState: TableState) => ({\n ...prevState,\n pagination: {...prevState.pagination, pageIndex: newPage - 1},\n }));\n containerRef.current.scrollIntoView({behavior: 'smooth'});\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":["Pagination","useTable","TablePagination","totalPages","state","setState","containerRef","updatePage","newPage","prevState","pagination","pageIndex","current","scrollIntoView","behavior","page","onChange","total","boundaries","size","getItemAriaLabel","label"],"mappings":"AAAA;;;AAAA,SAAQA,UAAU,QAAO,gBAAgB;AAGzC,SAAQC,QAAQ,QAAO,aAAa;AASpC,OAAO,IAAMC,kBAA2D,gBAAkB;QAAhBC,mBAAAA;IACtE,IAAwCF,YAAAA,YAAjCG,QAAiCH,UAAjCG,OAAOC,WAA0BJ,UAA1BI,UAAUC,eAAgBL,UAAhBK;IACxB,IAAMC,aAAa,SAACC,SAAoB;QACpCH,SAAS,SAACI;mBAA2B,wCAC9BA;gBACHC,YAAY,wCAAID,UAAUC,UAAU;oBAAEC,WAAWH,UAAU;;;;QAE/DF,aAAaM,OAAO,CAACC,cAAc,CAAC;YAACC,UAAU;QAAQ;IAC3D;IAEA,qBACI,KAACd;QACGe,MAAMX,MAAMM,UAAU,CAACC,SAAS,GAAG;QACnCK,UAAUT;QACVU,OAAOd;QACPe,YAAY;QACZC,MAAK;QACLC,kBAAkB,SAACC,OAAU;YACzB,OAAQA;gBACJ,KAAK;oBACD,OAAO;gBACX,KAAK;oBACD,OAAO;gBACX;oBACI,OAAO,AAAC,GAAQ,OAANA;YAClB;QACJ;;AAGZ,EAAE"}
@@ -4,12 +4,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  import { Group, SegmentedControl, Text } from "@mantine/core";
5
5
  import { useTable } from "./useTable";
6
6
  export var TablePerPage = function(param) {
7
- var _label = param.label, label = _label === void 0 ? "Results per page" : _label, _values = param.values, values = _values === void 0 ? [
7
+ var _param_label = param.label, label = _param_label === void 0 ? "Results per page" : _param_label, _param_values = param.values, values = _param_values === void 0 ? [
8
8
  25,
9
9
  50,
10
10
  100
11
- ] : _values;
12
- var ref = useTable(), state = ref.state, setState = ref.setState;
11
+ ] : _param_values;
12
+ var _useTable = useTable(), state = _useTable.state, setState = _useTable.setState;
13
13
  var updatePerPage = function(newPerPage) {
14
14
  setState(function(prevState) {
15
15
  return _object_spread_props(_object_spread({}, prevState), {
@@ -19,14 +19,14 @@ export var TablePerPage = function(param) {
19
19
  });
20
20
  });
21
21
  };
22
- var ref1;
22
+ var _state_pagination_pageSize_toString;
23
23
  return /*#__PURE__*/ _jsxs(Group, {
24
24
  children: [
25
25
  /*#__PURE__*/ _jsx(Text, {
26
26
  children: label
27
27
  }),
28
28
  /*#__PURE__*/ _jsx(SegmentedControl, {
29
- value: (ref1 = state.pagination.pageSize.toString()) !== null && ref1 !== void 0 ? ref1 : values === null || values === void 0 ? void 0 : values[1].toString(),
29
+ value: (_state_pagination_pageSize_toString = state.pagination.pageSize.toString()) !== null && _state_pagination_pageSize_toString !== void 0 ? _state_pagination_pageSize_toString : values === null || values === void 0 ? void 0 : values[1].toString(),
30
30
  onChange: updatePerPage,
31
31
  data: values.map(function(value) {
32
32
  return value.toString();
@@ -1 +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":["Group","SegmentedControl","Text","useTable","TablePerPage","label","values","state","setState","updatePerPage","newPerPage","prevState","pagination","pageSize","parseInt","value","toString","onChange","data","map","color","size","DEFAULT_SIZE"],"mappings":"AAAA;;;AAAA,SAAQA,KAAK,EAAEC,gBAAgB,EAAEC,IAAI,QAAO,eAAe,CAAC;AAI5D,SAAQC,QAAQ,QAAO,YAAY,CAAC;AAiBpC,OAAO,IAAMC,YAAY,GAAkE,gBAGrF;uBAFFC,KAAK,EAALA,KAAK,uBAAG,kBAAkB,SAAA,kBAC1BC,MAAM,EAANA,MAAM,wBAAG;AAAC,UAAE;AAAE,UAAE;AAAE,WAAG;KAAC,UAAA;IAEtB,IAA0BH,GAAU,GAAVA,QAAQ,EAAE,EAA7BI,KAAK,GAAcJ,GAAU,CAA7BI,KAAK,EAAEC,QAAQ,GAAIL,GAAU,CAAtBK,QAAQ,AAAe;IAErC,IAAMC,aAAa,GAAG,SAACC,UAAkB,EAAK;QAC1CF,QAAQ,CAAC,SAACG,SAAqB;mBAAM,wCAC9BA,SAAS;gBACZC,UAAU,EAAE,wCAAID,SAAS,CAACC,UAAU;oBAAEC,QAAQ,EAAEC,QAAQ,CAACJ,UAAU,EAAE,EAAE,CAAC;kBAAC;cAC5E;SAAC,CAAC,CAAC;IACR,CAAC,AAAC;QAMiBH,IAAoC;IAJvD,qBACI,MAACP,KAAK;;0BACF,KAACE,IAAI;0BAAEG,KAAK;cAAQ;0BACpB,KAACJ,gBAAgB;gBACbc,KAAK,EAAER,CAAAA,IAAoC,GAApCA,KAAK,CAACK,UAAU,CAACC,QAAQ,CAACG,QAAQ,EAAE,cAApCT,IAAoC,cAApCA,IAAoC,GAAID,MAAM,aAANA,MAAM,WAAK,GAAXA,KAAAA,CAAW,GAAXA,MAAM,AAAE,CAAC,CAAC,CAAC,CAACU,QAAQ,EAAE;gBACrEC,QAAQ,EAAER,aAAa;gBACvBS,IAAI,EAAEZ,MAAM,CAACa,GAAG,CAAC,SAACJ,KAAK;2BAAKA,KAAK,CAACC,QAAQ,EAAE;iBAAA,CAAC;gBAC7CI,KAAK,EAAC,QAAQ;gBACdC,IAAI,EAAC,IAAI;cACX;;MACE,CACV;AACN,CAAC,CAAC;AAEFjB,YAAY,CAACkB,YAAY,GAAG,EAAE,CAAC"}
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":["Group","SegmentedControl","Text","useTable","TablePerPage","label","values","state","setState","updatePerPage","newPerPage","prevState","pagination","pageSize","parseInt","value","toString","onChange","data","map","color","size","DEFAULT_SIZE"],"mappings":"AAAA;;;AAAA,SAAQA,KAAK,EAAEC,gBAAgB,EAAEC,IAAI,QAAO,gBAAgB;AAI5D,SAAQC,QAAQ,QAAO,aAAa;AAiBpC,OAAO,IAAMC,eAA8E,gBAGrF;6BAFFC,OAAAA,kCAAQ,yDACRC,QAAAA,oCAAS;QAAC;QAAI;QAAI;KAAI;IAEtB,IAA0BH,YAAAA,YAAnBI,QAAmBJ,UAAnBI,OAAOC,WAAYL,UAAZK;IAEd,IAAMC,gBAAgB,SAACC,YAAuB;QAC1CF,SAAS,SAACG;mBAA2B,wCAC9BA;gBACHC,YAAY,wCAAID,UAAUC,UAAU;oBAAEC,UAAUC,SAASJ,YAAY;;;;IAE7E;QAMmBH;IAJnB,qBACI,MAACP;;0BACG,KAACE;0BAAMG;;0BACP,KAACJ;gBACGc,OAAOR,CAAAA,sCAAAA,MAAMK,UAAU,CAACC,QAAQ,CAACG,QAAQ,gBAAlCT,iDAAAA,sCAAwCD,mBAAAA,oBAAAA,KAAAA,IAAAA,MAAQ,CAAC,EAAE,CAACU,QAAQ,EAAE;gBACrEC,UAAUR;gBACVS,MAAMZ,OAAOa,GAAG,CAAC,SAACJ;2BAAUA,MAAMC,QAAQ;;gBAC1CI,OAAM;gBACNC,MAAK;;;;AAIrB,EAAE;AAEFjB,aAAakB,YAAY,GAAG"}
@@ -6,7 +6,7 @@ import { Select, Group, Text } from "@mantine/core";
6
6
  import { useTable } from "./useTable";
7
7
  export var TablePredicate = function(param) {
8
8
  var id = param.id, data = param.data, label = param.label;
9
- var ref = useTable(), onChange = ref.onChange, form = ref.form;
9
+ var _useTable = useTable(), onChange = _useTable.onChange, form = _useTable.form;
10
10
  var onUpdate = function(newValue) {
11
11
  form.setFieldValue("predicates", _object_spread_props(_object_spread({}, form.values.predicates), _define_property({}, id, newValue)));
12
12
  onChange === null || onChange === void 0 ? void 0 : onChange();
@@ -1 +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":["Select","Group","Text","useTable","TablePredicate","id","data","label","onChange","form","onUpdate","newValue","setFieldValue","values","predicates","spacing","withinPortal","value","aria-label","searchable","length"],"mappings":"AAAA;;;;AAAA,SAAQA,MAAM,EAAcC,KAAK,EAAEC,IAAI,QAAO,eAAe,CAAC;AAE9D,SAAQC,QAAQ,QAAO,YAAY,CAAC;AAmBpC,OAAO,IAAMC,cAAc,GAA2C,gBAAuB;QAArBC,EAAE,SAAFA,EAAE,EAAEC,IAAI,SAAJA,IAAI,EAAEC,KAAK,SAALA,KAAK;IACnF,IAAyBJ,GAAU,GAAVA,QAAQ,EAAE,EAA5BK,QAAQ,GAAUL,GAAU,CAA5BK,QAAQ,EAAEC,IAAI,GAAIN,GAAU,CAAlBM,IAAI,AAAe;IAEpC,IAAMC,QAAQ,GAAG,SAACC,QAAgB,EAAK;QACnCF,IAAI,CAACG,aAAa,CAAC,YAAY,EAAE,wCAAIH,IAAI,CAACI,MAAM,CAACC,UAAU,GAAE,qBAACT,EAAE,EAAGM,QAAQ,CAAA,CAAC,CAAC,CAAC;QAC9EH,QAAQ,aAARA,QAAQ,WAAI,GAAZA,KAAAA,CAAY,GAAZA,QAAQ,EAAI,CAAC;IACjB,CAAC,AAAC;IAEF,qBACI,MAACP,KAAK;QAACc,OAAO,EAAC,IAAI;;YACdR,KAAK,iBAAG,MAACL,IAAI;;oBAAEK,KAAK;oBAAC,GAAC;;cAAO,GAAG,IAAI;0BACrC,KAACP,MAAM;gBACHgB,YAAY;gBACZC,KAAK,EAAER,IAAI,CAACI,MAAM,CAACC,UAAU,CAACT,EAAE,CAAC;gBACjCG,QAAQ,EAAEE,QAAQ;gBAClBJ,IAAI,EAAEA,IAAI;gBACVY,YAAU,EAAEX,KAAK,aAALA,KAAK,cAALA,KAAK,GAAIF,EAAE;gBACvBc,UAAU,EAAEb,IAAI,CAACc,MAAM,GAAG,CAAC;cAC7B;;MACE,CACV;AACN,CAAC,CAAC"}
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":["Select","Group","Text","useTable","TablePredicate","id","data","label","onChange","form","onUpdate","newValue","setFieldValue","values","predicates","spacing","withinPortal","value","aria-label","searchable","length"],"mappings":"AAAA;;;;AAAA,SAAQA,MAAM,EAAcC,KAAK,EAAEC,IAAI,QAAO,gBAAgB;AAE9D,SAAQC,QAAQ,QAAO,aAAa;AAmBpC,OAAO,IAAMC,iBAAyD,gBAAuB;QAArBC,WAAAA,IAAIC,aAAAA,MAAMC,cAAAA;IAC9E,IAAyBJ,YAAAA,YAAlBK,WAAkBL,UAAlBK,UAAUC,OAAQN,UAARM;IAEjB,IAAMC,WAAW,SAACC,UAAqB;QACnCF,KAAKG,aAAa,CAAC,cAAc,wCAAIH,KAAKI,MAAM,CAACC,UAAU,GAAE,qBAACT,IAAKM;QACnEH,qBAAAA,sBAAAA,KAAAA,IAAAA;IACJ;IAEA,qBACI,MAACP;QAAMc,SAAQ;;YACVR,sBAAQ,MAACL;;oBAAMK;oBAAM;;iBAAW,IAAI;0BACrC,KAACP;gBACGgB,YAAY;gBACZC,OAAOR,KAAKI,MAAM,CAACC,UAAU,CAACT,GAAG;gBACjCG,UAAUE;gBACVJ,MAAMA;gBACNY,cAAYX,kBAAAA,mBAAAA,QAASF,EAAE;gBACvBc,YAAYb,KAAKc,MAAM,GAAG;;;;AAI1C,EAAE"}
@@ -1 +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":["ArrowHeadDownSize16Px","ArrowHeadUpSize16Px","Center","createStyles","Group","Text","UnstyledButton","defaultColumnSizing","flexRender","useStyles","theme","th","padding","fontWeight","color","black","button","div","noSort","spacing","xs","md","control","width","backgroundColor","colorScheme","colors","gray","SortingIcons","asc","desc","SortingLabels","Th","header","classes","size","column","getSize","undefined","isPlaceholder","getCanSort","className","style","columnDef","getContext","onSort","getToggleSortingHandler","sortingOrder","getIsSorted","Icon","getFirstSortDir","aria-sort","onClick","position","sx","action","height"],"mappings":"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"}
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":["ArrowHeadDownSize16Px","ArrowHeadUpSize16Px","Center","createStyles","Group","Text","UnstyledButton","defaultColumnSizing","flexRender","useStyles","theme","th","padding","fontWeight","color","black","button","div","noSort","spacing","xs","md","control","width","backgroundColor","colorScheme","colors","gray","SortingIcons","asc","desc","SortingLabels","Th","header","classes","size","column","getSize","undefined","isPlaceholder","getCanSort","className","style","columnDef","getContext","onSort","getToggleSortingHandler","sortingOrder","getIsSorted","Icon","getFirstSortDir","aria-sort","onClick","position","sx","action","height"],"mappings":"AAAA;AAAA,SAAQA,qBAAqB,EAAEC,mBAAmB,QAAO,8BAA8B;AACvF,SAAQC,MAAM,EAAEC,YAAY,EAAEC,KAAK,EAAEC,IAAI,EAAEC,cAAc,QAAO,gBAAgB;AAChF,SAAQC,mBAAmB,EAAEC,UAAU,QAAe,wBAAwB;AAE9E,IAAMC,YAAYN,aAAa,SAACO;WAAW;QACvCC,IAAI;YACAC,SAAS;YACTC,YAAY;YACZC,OAAOJ,MAAMK,KAAK,GAAG;YACrBC,QAAQ;gBACJJ,SAAS;gBACTK,KAAK;oBACDL,SAAS;gBACb;YACJ;YACAK,KAAK;gBACDL,SAAS;YACb;QACJ;QAEAM,QAAQ;YACJN,SAAS,AAAC,GAAwBF,OAAtBA,MAAMS,OAAO,CAACC,EAAE,EAAC,OAAsB,OAAjBV,MAAMS,OAAO,CAACE,EAAE,EAAC;QACvD;QAEAC,SAAS;YACLC,OAAO;YACPX,SAAS,AAAC,GAAwBF,OAAtBA,MAAMS,OAAO,CAACC,EAAE,EAAC,OAAsB,OAAjBV,MAAMS,OAAO,CAACE,EAAE,EAAC;YAEnD,WAAW;gBACPG,iBAAiBd,MAAMe,WAAW,KAAK,SAASf,MAAMgB,MAAM,CAACC,IAAI,CAAC,EAAE,GAAGjB,MAAMgB,MAAM,CAACC,IAAI,CAAC,EAAE;YAC/F;QACJ;IACJ;;AAMA,IAAMC,eAAe;IACjBC,KAAK7B;IACL8B,MAAM7B;AACV;AAEA,IAAM8B,gBAAgB;IAClBF,KAAK;IACLC,MAAM;AACV;AAEA,OAAO,IAAME,KAAK,gBAA8B;QAAxBC,eAAAA;IACpB,IAAM,AAACC,UAAWzB,YAAXyB;IACP,IAAMC,OAAOF,OAAOG,MAAM,CAACC,OAAO;IAClC,IAAMd,QAAQY,SAAS5B,oBAAoB4B,IAAI,GAAGA,OAAOG,SAAS;IAElE,IAAIL,OAAOM,aAAa,EAAE;QACtB,OAAO,IAAI;IACf,CAAC;IAED,IAAI,CAACN,OAAOG,MAAM,CAACI,UAAU,IAAI;QAC7B,qBACI,KAAC7B;YAAG8B,WAAWP,QAAQvB,EAAE;YAAE+B,OAAO;gBAACnB,OAAAA;YAAK;sBACpC,cAAA,KAAClB;gBAAKoC,WAAWP,QAAQhB,MAAM;gBAAEiB,MAAK;0BACjC3B,WAAWyB,OAAOG,MAAM,CAACO,SAAS,CAACV,MAAM,EAAEA,OAAOW,UAAU;;;IAI7E,CAAC;IAED,IAAMC,SAASZ,OAAOG,MAAM,CAACU,uBAAuB;IACpD,IAAMC,eAAed,OAAOG,MAAM,CAACY,WAAW;IAC9C,IAAMC,OAAOrB,YAAY,CAACmB,gBAAgBd,OAAOG,MAAM,CAACc,eAAe,GAAG;IAE1E,qBACI,KAACvC;QAAG8B,WAAWP,QAAQvB,EAAE;QAAE+B,OAAO;YAACnB,OAAAA;QAAK;QAAG4B,aAAWJ,eAAehB,aAAa,CAACgB,aAAa,GAAG,MAAM;kBACrG,cAAA,KAACzC;YAAe8C,SAASP;YAAQJ,WAAWP,QAAQZ,OAAO;sBACvD,cAAA,MAAClB;gBAAMiD,UAAS;;kCACZ,KAAChD;wBAAK8B,MAAK;kCAAM3B,WAAWyB,OAAOG,MAAM,CAACO,SAAS,CAACV,MAAM,EAAEA,OAAOW,UAAU;;kCAC7E,KAAC1C;wBAAOoD,IAAI,SAAC5C;mCAAW;gCAACI,OAAOiC,eAAerC,MAAMgB,MAAM,CAAC6B,MAAM,CAAC,EAAE,GAAGjB,SAAS;4BAAA;;kCAC7E,cAAA,KAACW;4BAAKO,QAAQ;;;;;;;AAMtC,EAAE"}
@@ -1 +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,cAAc,SAAS,CAAC;AAExB,cAAc,YAAY,CAAC"}
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,cAAc,UAAU;AAExB,cAAc,aAAa"}
@@ -1 +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":["useContext","TableContext","useTable","ctx","Error"],"mappings":"AAAA,SAAQA,UAAU,QAAO,OAAO,CAAC;AACjC,SAAQC,YAAY,QAAO,gBAAgB,CAAC;AAE5C,OAAO,IAAMC,QAAQ,GAAG,WAAM;IAC1B,IAAMC,GAAG,GAAGH,UAAU,CAACC,YAAY,CAAC,AAAC;IACrC,IAAIE,GAAG,KAAK,IAAI,EAAE;QACd,MAAM,IAAIC,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC/E,CAAC;IAED,OAAOD,GAAG,CAAC;AACf,CAAC,CAAC"}
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":["useContext","TableContext","useTable","ctx","Error"],"mappings":"AAAA,SAAQA,UAAU,QAAO,QAAQ;AACjC,SAAQC,YAAY,QAAO,iBAAiB;AAE5C,OAAO,IAAMC,WAAW,WAAM;IAC1B,IAAMC,MAAMH,WAAWC;IACvB,IAAIE,QAAQ,IAAI,EAAE;QACd,MAAM,IAAIC,MAAM,2DAA2D;IAC/E,CAAC;IAED,OAAOD;AACX,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/index.ts"],"sourcesContent":["export * from './useParentHeight';\nexport * from './useControlledList';\n"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"sources":["../../../src/hooks/index.ts"],"sourcesContent":["export * from './useParentHeight';\nexport * from './useControlledList';\n"],"names":[],"mappings":"AAAA,cAAc,oBAAoB;AAClC,cAAc,sBAAsB"}
@@ -5,12 +5,12 @@ import { useUncontrolled } from "@mantine/hooks";
5
5
  * Manage a list of items in a controlled fashion, to be used with inputs
6
6
  */ export var useControlledList = function(param) {
7
7
  var defaultValue = param.defaultValue, value = param.value, onChange = param.onChange;
8
- var ref = _sliced_to_array(useUncontrolled({
8
+ var _useUncontrolled = _sliced_to_array(useUncontrolled({
9
9
  value: value,
10
10
  defaultValue: defaultValue,
11
11
  finalValue: [],
12
12
  onChange: onChange
13
- }), 2), values = ref[0], handleChange = ref[1];
13
+ }), 2), values = _useUncontrolled[0], handleChange = _useUncontrolled[1];
14
14
  var remove = function(index) {
15
15
  var newValues = values.filter(function(_, i) {
16
16
  return i !== index;
@@ -1 +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":["useUncontrolled","useControlledList","defaultValue","value","onChange","finalValue","values","handleChange","remove","index","newValues","filter","_","i","append","item","reorder","from","to","splice"],"mappings":"AAAA;;AAAA,SAAQA,eAAe,QAAO,gBAAgB,CAAC;AAoB/C;;CAEC,GACD,OAAO,IAAMC,iBAAiB,GAAG,gBAAsF;QAAjFC,YAAY,SAAZA,YAAY,EAAEC,KAAK,SAALA,KAAK,EAAEC,QAAQ,SAARA,QAAQ;IAC/D,IAA+BJ,GAK7B,oBAL6BA,eAAe,CAAC;QAC3CG,KAAK,EAALA,KAAK;QACLD,YAAY,EAAZA,YAAY;QACZG,UAAU,EAAE,EAAE;QACdD,QAAQ,EAARA,QAAQ;KACX,CAAC,IAAA,EALKE,MAAM,GAAkBN,GAK7B,GALW,EAAEO,YAAY,GAAIP,GAK7B,GALyB,AAKxB;IAEH,IAAMQ,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,qBAAGJ,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,qBAAGJ,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,CAAC"}
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":["useUncontrolled","useControlledList","defaultValue","value","onChange","finalValue","values","handleChange","remove","index","newValues","filter","_","i","append","item","reorder","from","to","splice"],"mappings":"AAAA;;AAAA,SAAQA,eAAe,QAAO,iBAAiB;AAoB/C;;CAEC,GACD,OAAO,IAAMC,oBAAoB,gBAAsF;QAAjFC,qBAAAA,cAAcC,cAAAA,OAAOC,iBAAAA;IACvD,IAA+BJ,oCAAAA,gBAAgB;QAC3CG,OAAAA;QACAD,cAAAA;QACAG,YAAY,EAAE;QACdD,UAAAA;IACJ,QALOE,SAAwBN,qBAAhBO,eAAgBP;IAO/B,IAAMQ,SAAS,SAACC,OAAkB;QAC9B,IAAMC,YAAYJ,OAAOK,MAAM,CAAC,SAACC,GAAGC;mBAAMA,MAAMJ;;QAChDF,yBAAAA,0BAAAA,KAAAA,IAAAA,aAAeG;IACnB;IAEA,IAAMI,SAAS,SAACC,MAAY;QACxB,IAAML,YAAY,AAAC,qBAAGJ,eAAJ;YAAYS;SAAK;QACnCR,yBAAAA,0BAAAA,KAAAA,IAAAA,aAAeG;IACnB;IAEA,IAAMM,UAAU,gBAA4C;YAA1CC,aAAAA,MAAMC,WAAAA;QACpB,IAAMR,YAAa,qBAAGJ;QACtB,IAAMS,OAAOT,MAAM,CAACW,KAAK;QAEzBP,UAAUS,MAAM,CAACF,MAAM;QACvBP,UAAUS,MAAM,CAACD,IAAI,GAAGH;QAExBR,yBAAAA,0BAAAA,KAAAA,IAAAA,aAAeG;IACnB;IAEA,OAAO;QAACJ;QAAQ;YAACE,QAAAA;YAAQM,QAAAA;YAAQE,SAAAA;QAAO;KAAE;AAC9C,EAAE"}
@@ -10,18 +10,18 @@ var getElementInnerHeight = function(el) {
10
10
  /**
11
11
  * Computes the available height of the parent element on mount
12
12
  */ export var useParentHeight = function() {
13
- var ref = _sliced_to_array(useState(-1), 2), height = ref[0], setHeight = ref[1];
14
- var ref1 = useRef();
13
+ var _useState = _sliced_to_array(useState(-1), 2), height = _useState[0], setHeight = _useState[1];
14
+ var ref = useRef();
15
15
  useEffect(function() {
16
- if (ref1.current) {
17
- setHeight(getElementInnerHeight(ref1.current.parentElement));
16
+ if (ref.current) {
17
+ setHeight(getElementInnerHeight(ref.current.parentElement));
18
18
  }
19
19
  }, [
20
- ref1.current
20
+ ref.current
21
21
  ]);
22
22
  return [
23
23
  height,
24
- ref1
24
+ ref
25
25
  ];
26
26
  };
27
27
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useParentHeight.ts"],"sourcesContent":["import {useEffect, useRef, useState} from 'react';\n\nconst getElementInnerHeight = (el: HTMLElement): number => {\n const fullHeight = el.getBoundingClientRect().height;\n const cs = getComputedStyle(el);\n const padding = parseFloat(cs.paddingTop) + parseFloat(cs.paddingBottom);\n const border = parseFloat(cs.borderTopWidth) + parseFloat(cs.borderBottomWidth);\n return fullHeight - padding - border;\n};\n\n/**\n * Computes the available height of the parent element on mount\n */\nexport const useParentHeight = (): [number, React.MutableRefObject<HTMLDivElement>] => {\n const [height, setHeight] = useState(-1);\n const ref = useRef<HTMLDivElement>();\n\n useEffect(() => {\n if (ref.current) {\n setHeight(getElementInnerHeight(ref.current.parentElement));\n }\n }, [ref.current]);\n\n return [height, ref];\n};\n"],"names":["useEffect","useRef","useState","getElementInnerHeight","el","fullHeight","getBoundingClientRect","height","cs","getComputedStyle","padding","parseFloat","paddingTop","paddingBottom","border","borderTopWidth","borderBottomWidth","useParentHeight","setHeight","ref","current","parentElement"],"mappings":"AAAA;AAAA,SAAQA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAO,OAAO,CAAC;AAElD,IAAMC,qBAAqB,GAAG,SAACC,EAAe,EAAa;IACvD,IAAMC,UAAU,GAAGD,EAAE,CAACE,qBAAqB,EAAE,CAACC,MAAM,AAAC;IACrD,IAAMC,EAAE,GAAGC,gBAAgB,CAACL,EAAE,CAAC,AAAC;IAChC,IAAMM,OAAO,GAAGC,UAAU,CAACH,EAAE,CAACI,UAAU,CAAC,GAAGD,UAAU,CAACH,EAAE,CAACK,aAAa,CAAC,AAAC;IACzE,IAAMC,MAAM,GAAGH,UAAU,CAACH,EAAE,CAACO,cAAc,CAAC,GAAGJ,UAAU,CAACH,EAAE,CAACQ,iBAAiB,CAAC,AAAC;IAChF,OAAOX,UAAU,GAAGK,OAAO,GAAGI,MAAM,CAAC;AACzC,CAAC,AAAC;AAEF;;CAEC,GACD,OAAO,IAAMG,eAAe,GAAG,WAAwD;IACnF,IAA4Bf,GAAY,oBAAZA,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAA,EAAjCK,MAAM,GAAeL,GAAY,GAA3B,EAAEgB,SAAS,GAAIhB,GAAY,GAAhB,AAAiB;IACzC,IAAMiB,IAAG,GAAGlB,MAAM,EAAkB,AAAC;IAErCD,SAAS,CAAC,WAAM;QACZ,IAAImB,IAAG,CAACC,OAAO,EAAE;YACbF,SAAS,CAACf,qBAAqB,CAACgB,IAAG,CAACC,OAAO,CAACC,aAAa,CAAC,CAAC,CAAC;QAChE,CAAC;IACL,CAAC,EAAE;QAACF,IAAG,CAACC,OAAO;KAAC,CAAC,CAAC;IAElB,OAAO;QAACb,MAAM;QAAEY,IAAG;KAAC,CAAC;AACzB,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../src/hooks/useParentHeight.ts"],"sourcesContent":["import {useEffect, useRef, useState} from 'react';\n\nconst getElementInnerHeight = (el: HTMLElement): number => {\n const fullHeight = el.getBoundingClientRect().height;\n const cs = getComputedStyle(el);\n const padding = parseFloat(cs.paddingTop) + parseFloat(cs.paddingBottom);\n const border = parseFloat(cs.borderTopWidth) + parseFloat(cs.borderBottomWidth);\n return fullHeight - padding - border;\n};\n\n/**\n * Computes the available height of the parent element on mount\n */\nexport const useParentHeight = (): [number, React.MutableRefObject<HTMLDivElement>] => {\n const [height, setHeight] = useState(-1);\n const ref = useRef<HTMLDivElement>();\n\n useEffect(() => {\n if (ref.current) {\n setHeight(getElementInnerHeight(ref.current.parentElement));\n }\n }, [ref.current]);\n\n return [height, ref];\n};\n"],"names":["useEffect","useRef","useState","getElementInnerHeight","el","fullHeight","getBoundingClientRect","height","cs","getComputedStyle","padding","parseFloat","paddingTop","paddingBottom","border","borderTopWidth","borderBottomWidth","useParentHeight","setHeight","ref","current","parentElement"],"mappings":"AAAA;AAAA,SAAQA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAO,QAAQ;AAElD,IAAMC,wBAAwB,SAACC,IAA4B;IACvD,IAAMC,aAAaD,GAAGE,qBAAqB,GAAGC,MAAM;IACpD,IAAMC,KAAKC,iBAAiBL;IAC5B,IAAMM,UAAUC,WAAWH,GAAGI,UAAU,IAAID,WAAWH,GAAGK,aAAa;IACvE,IAAMC,SAASH,WAAWH,GAAGO,cAAc,IAAIJ,WAAWH,GAAGQ,iBAAiB;IAC9E,OAAOX,aAAaK,UAAUI;AAClC;AAEA;;CAEC,GACD,OAAO,IAAMG,kBAAkB,WAAwD;IACnF,IAA4Bf,6BAAAA,SAAS,CAAC,QAA/BK,SAAqBL,cAAbgB,YAAahB;IAC5B,IAAMiB,MAAMlB;IAEZD,UAAU,WAAM;QACZ,IAAImB,IAAIC,OAAO,EAAE;YACbF,UAAUf,sBAAsBgB,IAAIC,OAAO,CAACC,aAAa;QAC7D,CAAC;IACL,GAAG;QAACF,IAAIC,OAAO;KAAC;IAEhB,OAAO;QAACb;QAAQY;KAAI;AACxB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import {Tuple} from '@mantine/core';\n\nimport {PlasmaColors} from './theme/PlasmaColors';\n\nexport * from '@mantine/carousel';\nexport * from '@mantine/core';\nexport * from '@mantine/form';\nexport type {FormValidateInput} from '@mantine/form/lib/types';\nexport * from '@mantine/hooks';\nexport {createColumnHelper, type ColumnDef} from '@tanstack/table-core';\nexport * from './components';\n// explicitly overriding mantine components\nexport {Header, Table} from './components';\nexport * from './theme';\n\ndeclare module '@mantine/core' {\n export interface MantineThemeColorsOverride {\n // eslint-disable-next-line @typescript-eslint/ban-types\n colors: Record<keyof typeof PlasmaColors | (string & {}), Tuple<string, 10>>;\n }\n}\n"],"names":["createColumnHelper","Header","Table"],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAE9B,cAAc,gBAAgB,CAAC;AAC/B,SAAQA,kBAAkB,QAAuB,sBAAsB,CAAC;AACxE,cAAc,cAAc,CAAC;AAC7B,2CAA2C;AAC3C,SAAQC,MAAM,EAAEC,KAAK,QAAO,cAAc,CAAC;AAC3C,cAAc,SAAS,CAAC"}
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import {Tuple} from '@mantine/core';\n\nimport {PlasmaColors} from './theme/PlasmaColors';\n\nexport * from '@mantine/carousel';\nexport * from '@mantine/core';\nexport * from '@mantine/form';\nexport type {FormValidateInput} from '@mantine/form/lib/types';\nexport * from '@mantine/hooks';\nexport {createColumnHelper, type ColumnDef} from '@tanstack/table-core';\nexport * from './components';\n// explicitly overriding mantine components\nexport {Header, Table} from './components';\nexport * from './theme';\n\ndeclare module '@mantine/core' {\n export interface MantineThemeColorsOverride {\n // eslint-disable-next-line @typescript-eslint/ban-types\n colors: Record<keyof typeof PlasmaColors | (string & {}), Tuple<string, 10>>;\n }\n}\n"],"names":["createColumnHelper","Header","Table"],"mappings":"AAIA,cAAc,oBAAoB;AAClC,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAE9B,cAAc,iBAAiB;AAC/B,SAAQA,kBAAkB,QAAuB,uBAAuB;AACxE,cAAc,eAAe;AAC7B,2CAA2C;AAC3C,SAAQC,MAAM,EAAEC,KAAK,QAAO,eAAe;AAC3C,cAAc,UAAU"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/theme/PlasmaColors.ts"],"sourcesContent":["import {color} from '@coveord/plasma-tokens';\nimport {Tuple} from '@mantine/core';\n\nconst toMantineColor = (plasmaColor: Record<string, string>): Tuple<string, 10> =>\n Object.values(plasmaColor) as Tuple<string, 10>;\n\nexport const PlasmaColors = {\n // Primary\n gray: toMantineColor(color.primary.gray),\n action: [\n color.primary.action[1],\n color.primary.action[1],\n color.primary.action[2],\n color.primary.action[3],\n color.primary.action[4],\n color.primary.action[6],\n color.primary.action[6],\n color.primary.action[8],\n color.primary.action[8],\n color.primary.action[9],\n ] as Tuple<string, 10>,\n navy: toMantineColor(color.primary.navy),\n // Accent\n blue: toMantineColor(color.accent.blue),\n red: toMantineColor(color.accent.red),\n teal: toMantineColor(color.accent.teal),\n yellow: toMantineColor(color.accent.yellow),\n // Secondary\n green: toMantineColor(color.secondary.green),\n indigo: toMantineColor(color.secondary.indigo),\n lime: [\n color.secondary.lime[0],\n color.secondary.lime[0],\n color.secondary.lime[0],\n color.secondary.lime[0],\n color.secondary.lime[6],\n color.secondary.lime[6],\n color.secondary.lime[6],\n color.secondary.lime[9],\n color.secondary.lime[9],\n color.secondary.lime[9],\n ] as Tuple<string, 10>,\n purple: toMantineColor(color.secondary.purple),\n};\n"],"names":["color","toMantineColor","plasmaColor","Object","values","PlasmaColors","gray","primary","action","navy","blue","accent","red","teal","yellow","green","secondary","indigo","lime","purple"],"mappings":"AAAA,SAAQA,KAAK,QAAO,wBAAwB,CAAC;AAG7C,IAAMC,cAAc,GAAG,SAACC,WAAmC;WACvDC,MAAM,CAACC,MAAM,CAACF,WAAW,CAAC;CAAqB,AAAC;AAEpD,OAAO,IAAMG,YAAY,GAAG;IACxB,UAAU;IACVC,IAAI,EAAEL,cAAc,CAACD,KAAK,CAACO,OAAO,CAACD,IAAI,CAAC;IACxCE,MAAM,EAAE;QACJR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;QACvBR,KAAK,CAACO,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;KAC1B;IACDC,IAAI,EAAER,cAAc,CAACD,KAAK,CAACO,OAAO,CAACE,IAAI,CAAC;IACxC,SAAS;IACTC,IAAI,EAAET,cAAc,CAACD,KAAK,CAACW,MAAM,CAACD,IAAI,CAAC;IACvCE,GAAG,EAAEX,cAAc,CAACD,KAAK,CAACW,MAAM,CAACC,GAAG,CAAC;IACrCC,IAAI,EAAEZ,cAAc,CAACD,KAAK,CAACW,MAAM,CAACE,IAAI,CAAC;IACvCC,MAAM,EAAEb,cAAc,CAACD,KAAK,CAACW,MAAM,CAACG,MAAM,CAAC;IAC3C,YAAY;IACZC,KAAK,EAAEd,cAAc,CAACD,KAAK,CAACgB,SAAS,CAACD,KAAK,CAAC;IAC5CE,MAAM,EAAEhB,cAAc,CAACD,KAAK,CAACgB,SAAS,CAACC,MAAM,CAAC;IAC9CC,IAAI,EAAE;QACFlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;QACvBlB,KAAK,CAACgB,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;KAC1B;IACDC,MAAM,EAAElB,cAAc,CAACD,KAAK,CAACgB,SAAS,CAACG,MAAM,CAAC;CACjD,CAAC"}
1
+ {"version":3,"sources":["../../../src/theme/PlasmaColors.ts"],"sourcesContent":["import {color} from '@coveord/plasma-tokens';\nimport {Tuple} from '@mantine/core';\n\nconst toMantineColor = (plasmaColor: Record<string, string>): Tuple<string, 10> =>\n Object.values(plasmaColor) as Tuple<string, 10>;\n\nexport const PlasmaColors = {\n // Primary\n gray: toMantineColor(color.primary.gray),\n action: [\n color.primary.action[1],\n color.primary.action[1],\n color.primary.action[2],\n color.primary.action[3],\n color.primary.action[4],\n color.primary.action[6],\n color.primary.action[6],\n color.primary.action[8],\n color.primary.action[8],\n color.primary.action[9],\n ] as Tuple<string, 10>,\n navy: toMantineColor(color.primary.navy),\n // Accent\n blue: toMantineColor(color.accent.blue),\n red: toMantineColor(color.accent.red),\n teal: toMantineColor(color.accent.teal),\n yellow: toMantineColor(color.accent.yellow),\n // Secondary\n green: toMantineColor(color.secondary.green),\n indigo: toMantineColor(color.secondary.indigo),\n lime: [\n color.secondary.lime[0],\n color.secondary.lime[0],\n color.secondary.lime[0],\n color.secondary.lime[0],\n color.secondary.lime[6],\n color.secondary.lime[6],\n color.secondary.lime[6],\n color.secondary.lime[9],\n color.secondary.lime[9],\n color.secondary.lime[9],\n ] as Tuple<string, 10>,\n purple: toMantineColor(color.secondary.purple),\n};\n"],"names":["color","toMantineColor","plasmaColor","Object","values","PlasmaColors","gray","primary","action","navy","blue","accent","red","teal","yellow","green","secondary","indigo","lime","purple"],"mappings":"AAAA,SAAQA,KAAK,QAAO,yBAAyB;AAG7C,IAAMC,iBAAiB,SAACC;WACpBC,OAAOC,MAAM,CAACF;;AAElB,OAAO,IAAMG,eAAe;IACxB,UAAU;IACVC,MAAML,eAAeD,MAAMO,OAAO,CAACD,IAAI;IACvCE,QAAQ;QACJR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;QACvBR,MAAMO,OAAO,CAACC,MAAM,CAAC,EAAE;KAC1B;IACDC,MAAMR,eAAeD,MAAMO,OAAO,CAACE,IAAI;IACvC,SAAS;IACTC,MAAMT,eAAeD,MAAMW,MAAM,CAACD,IAAI;IACtCE,KAAKX,eAAeD,MAAMW,MAAM,CAACC,GAAG;IACpCC,MAAMZ,eAAeD,MAAMW,MAAM,CAACE,IAAI;IACtCC,QAAQb,eAAeD,MAAMW,MAAM,CAACG,MAAM;IAC1C,YAAY;IACZC,OAAOd,eAAeD,MAAMgB,SAAS,CAACD,KAAK;IAC3CE,QAAQhB,eAAeD,MAAMgB,SAAS,CAACC,MAAM;IAC7CC,MAAM;QACFlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;QACvBlB,MAAMgB,SAAS,CAACE,IAAI,CAAC,EAAE;KAC1B;IACDC,QAAQlB,eAAeD,MAAMgB,SAAS,CAACG,MAAM;AACjD,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/theme/Plasmantine.tsx"],"sourcesContent":["import {MantineProvider} from '@mantine/core';\nimport {FunctionComponent, PropsWithChildren} from 'react';\n\nimport {plasmaTheme} from './Theme';\n\nexport const Plasmantine: FunctionComponent<PropsWithChildren> = ({children}) => (\n <MantineProvider withGlobalStyles withNormalizeCSS theme={plasmaTheme}>\n {children}\n </MantineProvider>\n);\n"],"names":["MantineProvider","plasmaTheme","Plasmantine","children","withGlobalStyles","withNormalizeCSS","theme"],"mappings":"AAAA;AAAA,SAAQA,eAAe,QAAO,eAAe,CAAC;AAG9C,SAAQC,WAAW,QAAO,SAAS,CAAC;AAEpC,OAAO,IAAMC,WAAW,GAAyC;QAAEC,QAAQ,SAARA,QAAQ;yBACvE,KAACH,eAAe;QAACI,gBAAgB;QAACC,gBAAgB;QAACC,KAAK,EAAEL,WAAW;kBAChEE,QAAQ;MACK;CACrB,CAAC"}
1
+ {"version":3,"sources":["../../../src/theme/Plasmantine.tsx"],"sourcesContent":["import {MantineProvider} from '@mantine/core';\nimport {FunctionComponent, PropsWithChildren} from 'react';\n\nimport {plasmaTheme} from './Theme';\n\nexport const Plasmantine: FunctionComponent<PropsWithChildren> = ({children}) => (\n <MantineProvider withGlobalStyles withNormalizeCSS theme={plasmaTheme}>\n {children}\n </MantineProvider>\n);\n"],"names":["MantineProvider","plasmaTheme","Plasmantine","children","withGlobalStyles","withNormalizeCSS","theme"],"mappings":"AAAA;AAAA,SAAQA,eAAe,QAAO,gBAAgB;AAG9C,SAAQC,WAAW,QAAO,UAAU;AAEpC,OAAO,IAAMC,cAAoD;QAAEC,iBAAAA;yBAC/D,KAACH;QAAgBI,gBAAgB;QAACC,gBAAgB;QAACC,OAAOL;kBACrDE;;EAEP"}
@@ -200,6 +200,12 @@ export var plasmaTheme = {
200
200
  alignItems: "flex-start"
201
201
  }
202
202
  }
203
+ },
204
+ Popover: {
205
+ defaultProps: {
206
+ shadow: "md",
207
+ withArrow: true
208
+ }
203
209
  }
204
210
  }
205
211
  };