@coveord/plasma-mantine 52.9.0 → 52.10.1

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 (112) hide show
  1. package/.turbo/turbo-build.log +3 -3
  2. package/.turbo/turbo-test.log +33 -32
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/cjs/components/code-editor/CodeEditor.d.ts.map +1 -1
  5. package/dist/cjs/components/code-editor/CodeEditor.js +8 -3
  6. package/dist/cjs/components/code-editor/CodeEditor.js.map +1 -1
  7. package/dist/cjs/components/collection/Collection.js +5 -3
  8. package/dist/cjs/components/collection/Collection.js.map +1 -1
  9. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.d.ts.map +1 -1
  10. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js +2 -1
  11. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
  12. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js +2 -2
  13. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
  14. package/dist/cjs/components/modal-wizard/ModalWizard.js +2 -2
  15. package/dist/cjs/components/modal-wizard/ModalWizard.js.map +1 -1
  16. package/dist/cjs/components/table/Table.d.ts.map +1 -1
  17. package/dist/cjs/components/table/Table.js +25 -13
  18. package/dist/cjs/components/table/Table.js.map +1 -1
  19. package/dist/cjs/components/table/Table.styles.d.ts.map +1 -1
  20. package/dist/cjs/components/table/Table.styles.js +1 -10
  21. package/dist/cjs/components/table/Table.styles.js.map +1 -1
  22. package/dist/cjs/components/table/Table.types.d.ts +14 -3
  23. package/dist/cjs/components/table/Table.types.d.ts.map +1 -1
  24. package/dist/cjs/components/table/TableFooter.js +2 -2
  25. package/dist/cjs/components/table/TableFooter.js.map +1 -1
  26. package/dist/cjs/components/table/TableHeader.js +1 -1
  27. package/dist/cjs/components/table/TableHeader.js.map +1 -1
  28. package/dist/cjs/components/table/TableLastUpdated.d.ts +24 -0
  29. package/dist/cjs/components/table/TableLastUpdated.d.ts.map +1 -0
  30. package/dist/cjs/components/table/TableLastUpdated.js +73 -0
  31. package/dist/cjs/components/table/TableLastUpdated.js.map +1 -0
  32. package/dist/cjs/components/table/TablePagination.d.ts.map +1 -1
  33. package/dist/cjs/components/table/TablePagination.js +1 -0
  34. package/dist/cjs/components/table/TablePagination.js.map +1 -1
  35. package/dist/cjs/components/table/TablePerPage.js +5 -3
  36. package/dist/cjs/components/table/TablePerPage.js.map +1 -1
  37. package/dist/cjs/components/table/layouts/RowLayout.d.ts.map +1 -1
  38. package/dist/cjs/components/table/layouts/RowLayout.js +41 -9
  39. package/dist/cjs/components/table/layouts/RowLayout.js.map +1 -1
  40. package/dist/cjs/components/table/useRowSelection.d.ts +2 -2
  41. package/dist/cjs/components/table/useRowSelection.d.ts.map +1 -1
  42. package/dist/cjs/components/table/useRowSelection.js +8 -3
  43. package/dist/cjs/components/table/useRowSelection.js.map +1 -1
  44. package/dist/cjs/theme/Theme.js +1 -1
  45. package/dist/cjs/theme/Theme.js.map +1 -1
  46. package/dist/esm/components/code-editor/CodeEditor.d.ts.map +1 -1
  47. package/dist/esm/components/code-editor/CodeEditor.js +8 -3
  48. package/dist/esm/components/code-editor/CodeEditor.js.map +1 -1
  49. package/dist/esm/components/collection/Collection.js +5 -3
  50. package/dist/esm/components/collection/Collection.js.map +1 -1
  51. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.d.ts.map +1 -1
  52. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js +2 -1
  53. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
  54. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js +2 -2
  55. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
  56. package/dist/esm/components/modal-wizard/ModalWizard.js +2 -2
  57. package/dist/esm/components/modal-wizard/ModalWizard.js.map +1 -1
  58. package/dist/esm/components/table/Table.d.ts.map +1 -1
  59. package/dist/esm/components/table/Table.js +27 -15
  60. package/dist/esm/components/table/Table.js.map +1 -1
  61. package/dist/esm/components/table/Table.styles.d.ts.map +1 -1
  62. package/dist/esm/components/table/Table.styles.js +1 -10
  63. package/dist/esm/components/table/Table.styles.js.map +1 -1
  64. package/dist/esm/components/table/Table.types.d.ts +14 -3
  65. package/dist/esm/components/table/Table.types.d.ts.map +1 -1
  66. package/dist/esm/components/table/Table.types.js.map +1 -1
  67. package/dist/esm/components/table/TableFooter.js +2 -2
  68. package/dist/esm/components/table/TableFooter.js.map +1 -1
  69. package/dist/esm/components/table/TableHeader.js +1 -1
  70. package/dist/esm/components/table/TableHeader.js.map +1 -1
  71. package/dist/esm/components/table/TableLastUpdated.d.ts +24 -0
  72. package/dist/esm/components/table/TableLastUpdated.d.ts.map +1 -0
  73. package/dist/esm/components/table/TableLastUpdated.js +62 -0
  74. package/dist/esm/components/table/TableLastUpdated.js.map +1 -0
  75. package/dist/esm/components/table/TablePagination.d.ts.map +1 -1
  76. package/dist/esm/components/table/TablePagination.js +1 -0
  77. package/dist/esm/components/table/TablePagination.js.map +1 -1
  78. package/dist/esm/components/table/TablePerPage.js +5 -3
  79. package/dist/esm/components/table/TablePerPage.js.map +1 -1
  80. package/dist/esm/components/table/layouts/RowLayout.d.ts.map +1 -1
  81. package/dist/esm/components/table/layouts/RowLayout.js +42 -10
  82. package/dist/esm/components/table/layouts/RowLayout.js.map +1 -1
  83. package/dist/esm/components/table/useRowSelection.d.ts +2 -2
  84. package/dist/esm/components/table/useRowSelection.d.ts.map +1 -1
  85. package/dist/esm/components/table/useRowSelection.js +8 -3
  86. package/dist/esm/components/table/useRowSelection.js.map +1 -1
  87. package/dist/esm/theme/Theme.js +1 -1
  88. package/dist/esm/theme/Theme.js.map +1 -1
  89. package/package.json +17 -17
  90. package/src/__tests__/VitestSetup.ts +12 -0
  91. package/src/components/code-editor/CodeEditor.tsx +5 -3
  92. package/src/components/code-editor/__tests__/CodeEditor.spec.tsx +1 -0
  93. package/src/components/date-range-picker/DateRangePickerPresetSelect.tsx +1 -0
  94. package/src/components/date-range-picker/__tests__/DateRangePickerInlineCalendar.spec.tsx +2 -0
  95. package/src/components/date-range-picker/__tests__/DateRangePickerPopoverCalendar.spec.tsx +4 -19
  96. package/src/components/date-range-picker/__tests__/EditableDateRangePicker.spec.tsx +3 -3
  97. package/src/components/modal-wizard/__tests__/ModalWizard.spec.tsx +19 -4
  98. package/src/components/table/Table.styles.ts +0 -9
  99. package/src/components/table/Table.tsx +22 -13
  100. package/src/components/table/Table.types.ts +14 -3
  101. package/src/components/table/TableFooter.tsx +1 -1
  102. package/src/components/table/TableHeader.tsx +1 -1
  103. package/src/components/table/TableLastUpdated.tsx +51 -0
  104. package/src/components/table/TablePagination.tsx +1 -0
  105. package/src/components/table/TablePerPage.tsx +3 -3
  106. package/src/components/table/__tests__/Table.spec.tsx +44 -5
  107. package/src/components/table/__tests__/TableActions.spec.tsx +4 -3
  108. package/src/components/table/__tests__/TableDateRangePicker.spec.tsx +26 -59
  109. package/src/components/table/__tests__/TableLastUpdated.spec.tsx +97 -0
  110. package/src/components/table/__tests__/TablePredicate.spec.tsx +7 -55
  111. package/src/components/table/layouts/RowLayout.tsx +45 -11
  112. package/src/components/table/useRowSelection.ts +13 -6
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/TablePerPage.tsx"],"sourcesContent":["import {Group, SegmentedControl, Text} from '@mantine/core';\nimport {FunctionComponent} from 'react';\n\nimport {useTable} from './TableContext';\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) => ({\n ...prevState,\n pagination: {pageIndex: 0, 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","pageIndex","pageSize","parseInt","value","toString","onChange","data","map","color","size","DEFAULT_SIZE"],"mappings":";;;AAAA,SAAQA,KAAK,EAAEC,gBAAgB,EAAEC,IAAI,QAAO,gBAAgB;AAG5D,SAAQC,QAAQ,QAAO,iBAAiB;AAiBxC,OAAO,IAAMC,eAA8E;6BACvFC,OAAAA,kCAAQ,yDACRC,QAAAA,oCAAS;QAAC;QAAI;QAAI;KAAI;QAeqCA,0BAAAA;IAb3D,IAA0BH,YAAAA,YAAnBI,QAAmBJ,UAAnBI,OAAOC,WAAYL,UAAZK;IAEd,IAAMC,gBAAgB,SAACC;QACnBF,SAAS,SAACG;mBAAe,wCAClBA;gBACHC,YAAY;oBAACC,WAAW;oBAAGC,UAAUC,SAASL,YAAY;gBAAG;;;IAErE;QAMmBH;IAJnB,qBACI,MAACP;;0BACG,KAACE;0BAAMG;;0BACP,KAACJ;gBACGe,OAAOT,CAAAA,sCAAAA,MAAMK,UAAU,CAACE,QAAQ,CAACG,QAAQ,gBAAlCV,iDAAAA,uCAAwCD,UAAAA,oBAAAA,+BAAAA,oBAAAA,SAAAA,OAAQ,CAAC,EAAE,EAACW,QAAQ,cAApBX,wCAAAA;gBAC/CY,UAAUT;gBACVU,MAAMb,OAAOc,GAAG,CAAC,SAACJ;2BAAUA,MAAMC,QAAQ;;gBAC1CI,OAAM;gBACNC,MAAK;;;;AAIrB,EAAE;AAEFlB,aAAamB,YAAY,GAAG"}
1
+ {"version":3,"sources":["../../../../src/components/table/TablePerPage.tsx"],"sourcesContent":["import {Group, SegmentedControl, Text} from '@mantine/core';\nimport {FunctionComponent} from 'react';\n\nimport {useTable} from './TableContext';\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) => ({\n ...prevState,\n pagination: {pageIndex: 0, pageSize: parseInt(newPerPage, 10)},\n }));\n };\n\n return (\n <Group spacing=\"sm\">\n <Text fw={500}>{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=\"sm\"\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","pageIndex","pageSize","parseInt","spacing","fw","value","toString","onChange","data","map","color","size","DEFAULT_SIZE"],"mappings":";;;AAAA,SAAQA,KAAK,EAAEC,gBAAgB,EAAEC,IAAI,QAAO,gBAAgB;AAG5D,SAAQC,QAAQ,QAAO,iBAAiB;AAiBxC,OAAO,IAAMC,eAA8E;6BACvFC,OAAAA,kCAAQ,yDACRC,QAAAA,oCAAS;QAAC;QAAI;QAAI;KAAI;QAeqCA;IAb3D,IAA0BH,YAAAA,YAAnBI,QAAmBJ,UAAnBI,OAAOC,WAAYL,UAAZK;IAEd,IAAMC,gBAAgB,SAACC;QACnBF,SAAS,SAACG;mBAAe,wCAClBA;gBACHC,YAAY;oBAACC,WAAW;oBAAGC,UAAUC,SAASL,YAAY;gBAAG;;;IAErE;QAMmBH;IAJnB,qBACI,MAACP;QAAMgB,SAAQ;;0BACX,KAACd;gBAAKe,IAAI;0BAAMZ;;0BAChB,KAACJ;gBACGiB,OAAOX,CAAAA,sCAAAA,MAAMK,UAAU,CAACE,QAAQ,CAACK,QAAQ,gBAAlCZ,iDAAAA,uCAAwCD,UAAAA,oBAAAA,8BAAAA,OAAQ,CAAC,EAAE,CAACa,QAAQ;gBACnEC,UAAUX;gBACVY,MAAMf,OAAOgB,GAAG,CAAC,SAACJ;2BAAUA,MAAMC,QAAQ;;gBAC1CI,OAAM;gBACNC,MAAK;;;;AAIrB,EAAE;AAEFpB,aAAaqB,YAAY,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"file":"RowLayout.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/layouts/RowLayout.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAC,WAAW,EAAmB,MAAM,gBAAgB,CAAC;AA2I7D,eAAO,MAAM,SAAS,EAAE,WAKvB,CAAC"}
1
+ {"version":3,"file":"RowLayout.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/layouts/RowLayout.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAC,WAAW,EAAmB,MAAM,gBAAgB,CAAC;AA6K7D,eAAO,MAAM,SAAS,EAAE,WAKvB,CAAC"}
@@ -1,21 +1,23 @@
1
1
  import { _ as _define_property } from "@swc/helpers/_/_define_property";
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { ListSize16Px } from "@coveord/plasma-react-icons";
4
- import { Box, Collapse, createStyles } from "@mantine/core";
4
+ import { Box, Collapse, createStyles, rem } from "@mantine/core";
5
5
  import { flexRender } from "@tanstack/react-table";
6
6
  import { defaultColumnSizing } from "@tanstack/table-core";
7
7
  import { Fragment } from "react";
8
8
  import { TableCollapsibleColumn } from "../TableCollapsibleColumn";
9
9
  import { useTable } from "../TableContext";
10
10
  import { TableLoading } from "../TableLoading";
11
+ import { TableSelectableColumn } from "../TableSelectableColumn";
11
12
  import { Th } from "../Th";
12
13
  var useStyles = createStyles(function(theme, param) {
13
14
  var multiRowSelectionEnabled = param.multiRowSelectionEnabled, disableRowSelection = param.disableRowSelection;
14
- var rowBackgroundColor = theme.colorScheme === "dark" ? theme.fn.rgba(theme.colors[theme.primaryColor][7], 0.2) : theme.colors[theme.primaryColor][0];
15
+ var rowBackgroundColor = theme.colorScheme === "dark" ? theme.fn.rgba(theme.colors[theme.primaryColor][7], 0.2) : theme.colors.gray[1];
16
+ var border = "".concat(rem(1), " solid ").concat(theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[3]);
15
17
  return {
16
18
  headerColumns: {
17
19
  "& th:first-of-type > *": {
18
- paddingLeft: theme.spacing.xl
20
+ paddingLeft: "40px"
19
21
  },
20
22
  "& input[type=checkbox]": {
21
23
  backgroundColor: disableRowSelection ? "".concat(theme.colors.gray[2]) : undefined,
@@ -46,9 +48,23 @@ var useStyles = createStyles(function(theme, param) {
46
48
  padding: "calc(".concat(theme.spacing.xs, "/2) ").concat(theme.spacing.sm, " !important")
47
49
  },
48
50
  row: {
51
+ "& td:first-of-type": {
52
+ paddingLeft: "40px"
53
+ },
49
54
  "&:hover": {
50
55
  backgroundColor: rowBackgroundColor
51
56
  }
57
+ },
58
+ cell: {
59
+ verticalAlign: "middle",
60
+ // We must use height instead of minHeight here, otherwise it doesn't apply
61
+ height: "56px",
62
+ padding: "".concat(theme.spacing.xs, " ").concat(theme.spacing.sm),
63
+ borderBottom: border
64
+ },
65
+ collapsible: {
66
+ backgroundColor: rowBackgroundColor,
67
+ borderBottom: border
52
68
  }
53
69
  };
54
70
  });
@@ -80,18 +96,28 @@ var RowLayoutBody = function(param) {
80
96
  disableRowSelection: disableRowSelection,
81
97
  multiRowSelectionEnabled: multiRowSelectionEnabled
82
98
  }), classes = _useStyles.classes, cx = _useStyles.cx;
99
+ var toggleCollapsible = function(el) {
100
+ var cell = el.children[el.children.length - 1];
101
+ cell.querySelector("button").click();
102
+ };
83
103
  var rows = table.getRowModel().rows.map(function(row) {
84
104
  var _getExpandChildren;
85
105
  var _getExpandChildren1;
86
106
  var rowChildren = (_getExpandChildren1 = (_getExpandChildren = getExpandChildren) === null || _getExpandChildren === void 0 ? void 0 : _getExpandChildren(row.original)) !== null && _getExpandChildren1 !== void 0 ? _getExpandChildren1 : null;
87
107
  var isSelected = !!row.getIsSelected();
108
+ var onClick = function(event) {
109
+ if (rowChildren) {
110
+ toggleCollapsible(event.currentTarget);
111
+ }
112
+ if (!disableRowSelection && !multiRowSelectionEnabled) {
113
+ row.toggleSelected();
114
+ }
115
+ };
88
116
  var _obj;
89
117
  return /*#__PURE__*/ _jsxs(Fragment, {
90
118
  children: [
91
119
  /*#__PURE__*/ _jsx("tr", {
92
- onClick: function() {
93
- return disableRowSelection ? undefined : row.toggleSelected();
94
- },
120
+ onClick: onClick,
95
121
  onDoubleClick: function() {
96
122
  var _doubleClickAction;
97
123
  return (_doubleClickAction = doubleClickAction) === null || _doubleClickAction === void 0 ? void 0 : _doubleClickAction(row.original);
@@ -101,11 +127,18 @@ var RowLayoutBody = function(param) {
101
127
  children: row.getVisibleCells().map(function(cell) {
102
128
  var size = cell.column.getSize();
103
129
  var width = size !== defaultColumnSizing.size ? size : undefined;
130
+ var onCollapsibleCellClick = function(event) {
131
+ if (cell.column.id === TableSelectableColumn.id && !disableRowSelection) {
132
+ event.stopPropagation();
133
+ row.getToggleSelectedHandler();
134
+ }
135
+ };
104
136
  return /*#__PURE__*/ _jsx("td", {
105
137
  style: {
106
138
  width: width
107
139
  },
108
- className: cx(_define_property({}, classes.rowCollapsibleButtonCell, cell.column.id === TableCollapsibleColumn.id)),
140
+ className: cx(classes.cell, _define_property({}, classes.rowCollapsibleButtonCell, cell.column.id === TableCollapsibleColumn.id)),
141
+ onClick: onCollapsibleCellClick,
109
142
  children: /*#__PURE__*/ _jsx(TableLoading, {
110
143
  visible: loading,
111
144
  children: flexRender(cell.column.columnDef.cell, cell.getContext())
@@ -117,13 +150,12 @@ var RowLayoutBody = function(param) {
117
150
  children: /*#__PURE__*/ _jsx("td", {
118
151
  colSpan: table.getAllColumns().length,
119
152
  style: {
120
- padding: 0,
121
- borderTop: row.getIsExpanded() ? undefined : "none",
122
- borderBottom: row.getIsExpanded() ? undefined : "none"
153
+ padding: 0
123
154
  },
124
155
  children: /*#__PURE__*/ _jsx(Collapse, {
125
156
  in: row.getIsExpanded(),
126
157
  children: /*#__PURE__*/ _jsx(Box, {
158
+ className: classes.collapsible,
127
159
  px: "sm",
128
160
  py: "xs",
129
161
  children: rowChildren
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/table/layouts/RowLayout.tsx"],"sourcesContent":["import {ListSize16Px} from '@coveord/plasma-react-icons';\nimport {Box, Collapse, createStyles} from '@mantine/core';\nimport {flexRender} from '@tanstack/react-table';\nimport {defaultColumnSizing} from '@tanstack/table-core';\nimport {Fragment} from 'react';\nimport {TableLayout, TableLayoutProps} from '../Table.types';\nimport {TableCollapsibleColumn} from '../TableCollapsibleColumn';\nimport {useTable} from '../TableContext';\nimport {TableLoading} from '../TableLoading';\nimport {Th} from '../Th';\n\ninterface TableStylesParams {\n multiRowSelectionEnabled: boolean;\n disableRowSelection: boolean;\n}\n\nconst useStyles = createStyles<string, TableStylesParams>((theme, {multiRowSelectionEnabled, disableRowSelection}) => {\n const rowBackgroundColor =\n theme.colorScheme === 'dark'\n ? theme.fn.rgba(theme.colors[theme.primaryColor][7], 0.2)\n : theme.colors[theme.primaryColor][0];\n return {\n headerColumns: {\n '& th:first-of-type > *': {\n paddingLeft: theme.spacing.xl,\n },\n\n '& input[type=checkbox]': {\n backgroundColor: disableRowSelection ? `${theme.colors.gray[2]}` : undefined,\n borderColor: disableRowSelection ? `${theme.colors.gray[3]}` : `${theme.colors.gray[4]}`,\n pointerEvents: disableRowSelection ? 'none' : 'auto',\n cursor: disableRowSelection ? 'not-allowed' : 'default',\n\n '& + svg': {\n color: disableRowSelection ? `${theme.colors.gray[5]}` : 'inherit',\n },\n },\n },\n\n rowSelected: {\n backgroundColor: multiRowSelectionEnabled ? undefined : rowBackgroundColor,\n },\n\n rowUnselectable: {\n '& input[type=checkbox]': {\n backgroundColor: `${theme.colors.gray[2]}`,\n borderColor: `${theme.colors.gray[3]}`,\n pointerEvents: 'none',\n cursor: 'not-allowed',\n\n '&:checked + svg': {\n color: `${theme.colors.gray[5]}`,\n },\n },\n },\n\n rowCollapsibleButtonCell: {\n textAlign: 'right',\n padding: `calc(${theme.spacing.xs}/2) ${theme.spacing.sm} !important`,\n },\n\n row: {\n '&:hover': {\n backgroundColor: rowBackgroundColor,\n },\n },\n };\n});\n\nconst RowLayoutHeader = <T,>({table}: TableLayoutProps<T>) => {\n const {multiRowSelectionEnabled, disableRowSelection} = useTable();\n const {classes} = useStyles({disableRowSelection, multiRowSelectionEnabled});\n const headers = table.getHeaderGroups().map((headerGroup) => (\n <tr key={headerGroup.id} className={classes.headerColumns}>\n {headerGroup.headers.map((columnHeader) => (\n <Th key={columnHeader.id} header={columnHeader} />\n ))}\n </tr>\n ));\n return <>{headers}</>;\n};\n\nconst RowLayoutBody = <T,>({table, doubleClickAction, getExpandChildren, loading}: TableLayoutProps<T>) => {\n const {multiRowSelectionEnabled, disableRowSelection} = useTable();\n const {classes, cx} = useStyles({disableRowSelection, multiRowSelectionEnabled});\n\n const rows = table.getRowModel().rows.map((row) => {\n const rowChildren = getExpandChildren?.(row.original) ?? null;\n const isSelected = !!row.getIsSelected();\n\n return (\n <Fragment key={row.id}>\n <tr\n onClick={() => (disableRowSelection ? undefined : row.toggleSelected())}\n onDoubleClick={() => doubleClickAction?.(row.original)}\n className={cx(classes.row, {\n [classes.rowSelected]: isSelected,\n [classes.rowUnselectable]: disableRowSelection,\n })}\n aria-selected={isSelected}\n >\n {row.getVisibleCells().map((cell) => {\n const size = cell.column.getSize();\n const width = size !== defaultColumnSizing.size ? size : undefined;\n return (\n <td\n key={cell.id}\n style={{width}}\n className={cx({\n [classes.rowCollapsibleButtonCell]: cell.column.id === TableCollapsibleColumn.id,\n })}\n >\n <TableLoading visible={loading}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableLoading>\n </td>\n );\n })}\n </tr>\n {rowChildren ? (\n <tr>\n <td\n colSpan={table.getAllColumns().length}\n style={{\n padding: 0,\n borderTop: row.getIsExpanded() ? undefined : 'none',\n borderBottom: row.getIsExpanded() ? undefined : 'none',\n }}\n >\n <Collapse in={row.getIsExpanded()}>\n <Box px=\"sm\" py=\"xs\">\n {rowChildren}\n </Box>\n </Collapse>\n </td>\n </tr>\n ) : null}\n </Fragment>\n );\n });\n\n return <>{rows}</>;\n};\n\nexport const RowLayout: TableLayout = {\n name: 'Rows',\n icon: ListSize16Px,\n Header: RowLayoutHeader,\n Body: RowLayoutBody,\n};\n"],"names":["ListSize16Px","Box","Collapse","createStyles","flexRender","defaultColumnSizing","Fragment","TableCollapsibleColumn","useTable","TableLoading","Th","useStyles","theme","multiRowSelectionEnabled","disableRowSelection","rowBackgroundColor","colorScheme","fn","rgba","colors","primaryColor","headerColumns","paddingLeft","spacing","xl","backgroundColor","gray","undefined","borderColor","pointerEvents","cursor","color","rowSelected","rowUnselectable","rowCollapsibleButtonCell","textAlign","padding","xs","sm","row","RowLayoutHeader","table","classes","headers","getHeaderGroups","map","headerGroup","tr","className","columnHeader","header","id","RowLayoutBody","doubleClickAction","getExpandChildren","loading","cx","rows","getRowModel","rowChildren","original","isSelected","getIsSelected","onClick","toggleSelected","onDoubleClick","aria-selected","getVisibleCells","cell","size","column","getSize","width","td","style","visible","columnDef","getContext","colSpan","getAllColumns","length","borderTop","getIsExpanded","borderBottom","in","px","py","RowLayout","name","icon","Header","Body"],"mappings":";;AAAA,SAAQA,YAAY,QAAO,8BAA8B;AACzD,SAAQC,GAAG,EAAEC,QAAQ,EAAEC,YAAY,QAAO,gBAAgB;AAC1D,SAAQC,UAAU,QAAO,wBAAwB;AACjD,SAAQC,mBAAmB,QAAO,uBAAuB;AACzD,SAAQC,QAAQ,QAAO,QAAQ;AAE/B,SAAQC,sBAAsB,QAAO,4BAA4B;AACjE,SAAQC,QAAQ,QAAO,kBAAkB;AACzC,SAAQC,YAAY,QAAO,kBAAkB;AAC7C,SAAQC,EAAE,QAAO,QAAQ;AAOzB,IAAMC,YAAYR,aAAwC,SAACS;QAAQC,iCAAAA,0BAA0BC,4BAAAA;IACzF,IAAMC,qBACFH,MAAMI,WAAW,KAAK,SAChBJ,MAAMK,EAAE,CAACC,IAAI,CAACN,MAAMO,MAAM,CAACP,MAAMQ,YAAY,CAAC,CAAC,EAAE,EAAE,OACnDR,MAAMO,MAAM,CAACP,MAAMQ,YAAY,CAAC,CAAC,EAAE;IAC7C,OAAO;QACHC,eAAe;YACX,0BAA0B;gBACtBC,aAAaV,MAAMW,OAAO,CAACC,EAAE;YACjC;YAEA,0BAA0B;gBACtBC,iBAAiBX,sBAAsB,AAAC,GAAuB,OAArBF,MAAMO,MAAM,CAACO,IAAI,CAAC,EAAE,IAAKC;gBACnEC,aAAad,sBAAsB,AAAC,GAAuB,OAArBF,MAAMO,MAAM,CAACO,IAAI,CAAC,EAAE,IAAK,AAAC,GAAuB,OAArBd,MAAMO,MAAM,CAACO,IAAI,CAAC,EAAE;gBACtFG,eAAef,sBAAsB,SAAS;gBAC9CgB,QAAQhB,sBAAsB,gBAAgB;gBAE9C,WAAW;oBACPiB,OAAOjB,sBAAsB,AAAC,GAAuB,OAArBF,MAAMO,MAAM,CAACO,IAAI,CAAC,EAAE,IAAK;gBAC7D;YACJ;QACJ;QAEAM,aAAa;YACTP,iBAAiBZ,2BAA2Bc,YAAYZ;QAC5D;QAEAkB,iBAAiB;YACb,0BAA0B;gBACtBR,iBAAiB,AAAC,GAAuB,OAArBb,MAAMO,MAAM,CAACO,IAAI,CAAC,EAAE;gBACxCE,aAAa,AAAC,GAAuB,OAArBhB,MAAMO,MAAM,CAACO,IAAI,CAAC,EAAE;gBACpCG,eAAe;gBACfC,QAAQ;gBAER,mBAAmB;oBACfC,OAAO,AAAC,GAAuB,OAArBnB,MAAMO,MAAM,CAACO,IAAI,CAAC,EAAE;gBAClC;YACJ;QACJ;QAEAQ,0BAA0B;YACtBC,WAAW;YACXC,SAAS,AAAC,QAA8BxB,OAAvBA,MAAMW,OAAO,CAACc,EAAE,EAAC,QAAuB,OAAjBzB,MAAMW,OAAO,CAACe,EAAE,EAAC;QAC7D;QAEAC,KAAK;YACD,WAAW;gBACPd,iBAAiBV;YACrB;QACJ;IACJ;AACJ;AAEA,IAAMyB,kBAAkB;QAAMC,cAAAA;IAC1B,IAAwDjC,YAAAA,YAAjDK,2BAAiDL,UAAjDK,0BAA0BC,sBAAuBN,UAAvBM;IACjC,IAAM,AAAC4B,UAAW/B,UAAU;QAACG,qBAAAA;QAAqBD,0BAAAA;IAAwB,GAAnE6B;IACP,IAAMC,UAAUF,MAAMG,eAAe,GAAGC,GAAG,CAAC,SAACC;6BACzC,KAACC;YAAwBC,WAAWN,QAAQrB,aAAa;sBACpDyB,YAAYH,OAAO,CAACE,GAAG,CAAC,SAACI;qCACtB,KAACvC;oBAAyBwC,QAAQD;mBAAzBA,aAAaE,EAAE;;WAFvBL,YAAYK,EAAE;;IAM3B,qBAAO;kBAAGR;;AACd;AAEA,IAAMS,gBAAgB;QAAMX,cAAAA,OAAOY,0BAAAA,mBAAmBC,0BAAAA,mBAAmBC,gBAAAA;IACrE,IAAwD/C,YAAAA,YAAjDK,2BAAiDL,UAAjDK,0BAA0BC,sBAAuBN,UAAvBM;IACjC,IAAsBH,aAAAA,UAAU;QAACG,qBAAAA;QAAqBD,0BAAAA;IAAwB,IAAvE6B,UAAe/B,WAAf+B,SAASc,KAAM7C,WAAN6C;IAEhB,IAAMC,OAAOhB,MAAMiB,WAAW,GAAGD,IAAI,CAACZ,GAAG,CAAC,SAACN;YACnBe;YAAAA;QAApB,IAAMK,cAAcL,CAAAA,uBAAAA,qBAAAA,+BAAAA,yCAAAA,mBAAoBf,IAAIqB,QAAQ,eAAhCN,iCAAAA,sBAAqC;QACzD,IAAMO,aAAa,CAAC,CAACtB,IAAIuB,aAAa;YAOC;QALvC,qBACI,MAACxD;;8BACG,KAACyC;oBACGgB,SAAS;+BAAOjD,sBAAsBa,YAAYY,IAAIyB,cAAc;;oBACpEC,eAAe;4BAAMZ;wBAAAA,QAAAA,qBAAAA,+BAAAA,yCAAAA,mBAAoBd,IAAIqB,QAAQ;;oBACrDZ,WAAWQ,GAAGd,QAAQH,GAAG,GAAE,WACvB,iBADuB,MACtBG,QAAQV,WAAW,EAAG6B,aACvB,iBAFuB,MAEtBnB,QAAQT,eAAe,EAAGnB,sBAFJ;oBAI3BoD,iBAAeL;8BAEdtB,IAAI4B,eAAe,GAAGtB,GAAG,CAAC,SAACuB;wBACxB,IAAMC,OAAOD,KAAKE,MAAM,CAACC,OAAO;wBAChC,IAAMC,QAAQH,SAAShE,oBAAoBgE,IAAI,GAAGA,OAAO1C;wBACzD,qBACI,KAAC8C;4BAEGC,OAAO;gCAACF,OAAAA;4BAAK;4BACbxB,WAAWQ,GACP,qBAACd,QAAQR,wBAAwB,EAAGkC,KAAKE,MAAM,CAACnB,EAAE,KAAK5C,uBAAuB4C,EAAE;sCAGpF,cAAA,KAAC1C;gCAAakE,SAASpB;0CAClBnD,WAAWgE,KAAKE,MAAM,CAACM,SAAS,CAACR,IAAI,EAAEA,KAAKS,UAAU;;2BAPtDT,KAAKjB,EAAE;oBAWxB;;gBAEHQ,4BACG,KAACZ;8BACG,cAAA,KAAC0B;wBACGK,SAASrC,MAAMsC,aAAa,GAAGC,MAAM;wBACrCN,OAAO;4BACHtC,SAAS;4BACT6C,WAAW1C,IAAI2C,aAAa,KAAKvD,YAAY;4BAC7CwD,cAAc5C,IAAI2C,aAAa,KAAKvD,YAAY;wBACpD;kCAEA,cAAA,KAACzB;4BAASkF,IAAI7C,IAAI2C,aAAa;sCAC3B,cAAA,KAACjF;gCAAIoF,IAAG;gCAAKC,IAAG;0CACX3B;;;;qBAKjB;;WA7COpB,IAAIY,EAAE;IAgD7B;IAEA,qBAAO;kBAAGM;;AACd;AAEA,OAAO,IAAM8B,YAAyB;IAClCC,MAAM;IACNC,MAAMzF;IACN0F,QAAQlD;IACRmD,MAAMvC;AACV,EAAE"}
1
+ {"version":3,"sources":["../../../../../src/components/table/layouts/RowLayout.tsx"],"sourcesContent":["import {ListSize16Px} from '@coveord/plasma-react-icons';\nimport {Box, Collapse, createStyles, rem} from '@mantine/core';\nimport {flexRender} from '@tanstack/react-table';\nimport {defaultColumnSizing} from '@tanstack/table-core';\nimport {Fragment, type MouseEvent} from 'react';\nimport {TableLayout, TableLayoutProps} from '../Table.types';\nimport {TableCollapsibleColumn} from '../TableCollapsibleColumn';\nimport {useTable} from '../TableContext';\nimport {TableLoading} from '../TableLoading';\nimport {TableSelectableColumn} from '../TableSelectableColumn';\nimport {Th} from '../Th';\n\ninterface TableStylesParams {\n multiRowSelectionEnabled: boolean;\n disableRowSelection: boolean;\n}\n\nconst useStyles = createStyles<string, TableStylesParams>((theme, {multiRowSelectionEnabled, disableRowSelection}) => {\n const rowBackgroundColor =\n theme.colorScheme === 'dark' ? theme.fn.rgba(theme.colors[theme.primaryColor][7], 0.2) : theme.colors.gray[1];\n const border = `${rem(1)} solid ${theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[3]}`;\n return {\n headerColumns: {\n '& th:first-of-type > *': {\n paddingLeft: '40px',\n },\n\n '& input[type=checkbox]': {\n backgroundColor: disableRowSelection ? `${theme.colors.gray[2]}` : undefined,\n borderColor: disableRowSelection ? `${theme.colors.gray[3]}` : `${theme.colors.gray[4]}`,\n pointerEvents: disableRowSelection ? 'none' : 'auto',\n cursor: disableRowSelection ? 'not-allowed' : 'default',\n\n '& + svg': {\n color: disableRowSelection ? `${theme.colors.gray[5]}` : 'inherit',\n },\n },\n },\n\n rowSelected: {\n backgroundColor: multiRowSelectionEnabled ? undefined : rowBackgroundColor,\n },\n\n rowUnselectable: {\n '& input[type=checkbox]': {\n backgroundColor: `${theme.colors.gray[2]}`,\n borderColor: `${theme.colors.gray[3]}`,\n pointerEvents: 'none',\n cursor: 'not-allowed',\n\n '&:checked + svg': {\n color: `${theme.colors.gray[5]}`,\n },\n },\n },\n\n rowCollapsibleButtonCell: {\n textAlign: 'right',\n padding: `calc(${theme.spacing.xs}/2) ${theme.spacing.sm} !important`,\n },\n\n row: {\n '& td:first-of-type': {\n paddingLeft: '40px',\n },\n '&:hover': {\n backgroundColor: rowBackgroundColor,\n },\n },\n\n cell: {\n verticalAlign: 'middle',\n // We must use height instead of minHeight here, otherwise it doesn't apply\n height: '56px',\n padding: `${theme.spacing.xs} ${theme.spacing.sm}`,\n borderBottom: border,\n },\n\n collapsible: {\n backgroundColor: rowBackgroundColor,\n borderBottom: border,\n },\n };\n});\n\nconst RowLayoutHeader = <T,>({table}: TableLayoutProps<T>) => {\n const {multiRowSelectionEnabled, disableRowSelection} = useTable();\n const {classes} = useStyles({disableRowSelection, multiRowSelectionEnabled});\n const headers = table.getHeaderGroups().map((headerGroup) => (\n <tr key={headerGroup.id} className={classes.headerColumns}>\n {headerGroup.headers.map((columnHeader) => (\n <Th key={columnHeader.id} header={columnHeader} />\n ))}\n </tr>\n ));\n return <>{headers}</>;\n};\n\nconst RowLayoutBody = <T,>({table, doubleClickAction, getExpandChildren, loading}: TableLayoutProps<T>) => {\n const {multiRowSelectionEnabled, disableRowSelection} = useTable();\n const {classes, cx} = useStyles({disableRowSelection, multiRowSelectionEnabled});\n\n const toggleCollapsible = (el: HTMLTableRowElement) => {\n const cell = el.children[el.children.length - 1] as HTMLTableCellElement;\n cell.querySelector('button').click();\n };\n\n const rows = table.getRowModel().rows.map((row) => {\n const rowChildren = getExpandChildren?.(row.original) ?? null;\n const isSelected = !!row.getIsSelected();\n const onClick = (event: MouseEvent<HTMLTableRowElement>) => {\n if (rowChildren) {\n toggleCollapsible(event.currentTarget);\n }\n if (!disableRowSelection && !multiRowSelectionEnabled) {\n row.toggleSelected();\n }\n };\n\n return (\n <Fragment key={row.id}>\n <tr\n onClick={onClick}\n onDoubleClick={() => doubleClickAction?.(row.original)}\n className={cx(classes.row, {\n [classes.rowSelected]: isSelected,\n [classes.rowUnselectable]: disableRowSelection,\n })}\n aria-selected={isSelected}\n >\n {row.getVisibleCells().map((cell) => {\n const size = cell.column.getSize();\n const width = size !== defaultColumnSizing.size ? size : undefined;\n const onCollapsibleCellClick = (event: MouseEvent<HTMLTableCellElement>) => {\n if (cell.column.id === TableSelectableColumn.id && !disableRowSelection) {\n event.stopPropagation();\n row.getToggleSelectedHandler();\n }\n };\n return (\n <td\n key={cell.id}\n style={{width}}\n className={cx(classes.cell, {\n [classes.rowCollapsibleButtonCell]: cell.column.id === TableCollapsibleColumn.id,\n })}\n onClick={onCollapsibleCellClick}\n >\n <TableLoading visible={loading}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableLoading>\n </td>\n );\n })}\n </tr>\n {rowChildren ? (\n <tr>\n <td\n colSpan={table.getAllColumns().length}\n style={{\n padding: 0,\n }}\n >\n <Collapse in={row.getIsExpanded()}>\n <Box className={classes.collapsible} px=\"sm\" py=\"xs\">\n {rowChildren}\n </Box>\n </Collapse>\n </td>\n </tr>\n ) : null}\n </Fragment>\n );\n });\n\n return <>{rows}</>;\n};\n\nexport const RowLayout: TableLayout = {\n name: 'Rows',\n icon: ListSize16Px,\n Header: RowLayoutHeader,\n Body: RowLayoutBody,\n};\n"],"names":["ListSize16Px","Box","Collapse","createStyles","rem","flexRender","defaultColumnSizing","Fragment","TableCollapsibleColumn","useTable","TableLoading","TableSelectableColumn","Th","useStyles","theme","multiRowSelectionEnabled","disableRowSelection","rowBackgroundColor","colorScheme","fn","rgba","colors","primaryColor","gray","border","dark","headerColumns","paddingLeft","backgroundColor","undefined","borderColor","pointerEvents","cursor","color","rowSelected","rowUnselectable","rowCollapsibleButtonCell","textAlign","padding","spacing","xs","sm","row","cell","verticalAlign","height","borderBottom","collapsible","RowLayoutHeader","table","classes","headers","getHeaderGroups","map","headerGroup","tr","className","columnHeader","header","id","RowLayoutBody","doubleClickAction","getExpandChildren","loading","cx","toggleCollapsible","el","children","length","querySelector","click","rows","getRowModel","rowChildren","original","isSelected","getIsSelected","onClick","event","currentTarget","toggleSelected","onDoubleClick","aria-selected","getVisibleCells","size","column","getSize","width","onCollapsibleCellClick","stopPropagation","getToggleSelectedHandler","td","style","visible","columnDef","getContext","colSpan","getAllColumns","in","getIsExpanded","px","py","RowLayout","name","icon","Header","Body"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  /// <reference types="react" />
2
2
  import { Table } from '@tanstack/table-core';
3
3
  import { TableProps } from './Table.types';
4
- export declare const useRowSelection: <T>(table: Table<T>, { onRowSelectionChange, multiRowSelectionEnabled, }: Pick<TableProps<T>, "multiRowSelectionEnabled" | "onRowSelectionChange">) => {
4
+ export declare const useRowSelection: <T>(table: Table<T>, { onRowSelectionChange, multiRowSelectionEnabled, additionalRootNodes, }: Pick<TableProps<T>, "multiRowSelectionEnabled" | "onRowSelectionChange" | "additionalRootNodes">) => {
5
5
  clearSelection: () => void;
6
6
  getSelectedRow: () => T;
7
7
  getSelectedRows: () => T[];
8
- outsideClickRef: import("react").MutableRefObject<any>;
8
+ outsideClickRef: import("react").MutableRefObject<HTMLDivElement>;
9
9
  };
10
10
  //# sourceMappingURL=useRowSelection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useRowSelection.d.ts","sourceRoot":"","sources":["../../../../src/components/table/useRowSelection.ts"],"names":[],"mappings":";AACA,OAAO,EAAsC,KAAK,EAAC,MAAM,sBAAsB,CAAC;AAGhF,OAAO,EAAuB,UAAU,EAAa,MAAM,eAAe,CAAC;AAE3E,eAAO,MAAM,eAAe;;;;;CA0D3B,CAAC"}
1
+ {"version":3,"file":"useRowSelection.d.ts","sourceRoot":"","sources":["../../../../src/components/table/useRowSelection.ts"],"names":[],"mappings":";AACA,OAAO,EAAsC,KAAK,EAAC,MAAM,sBAAsB,CAAC;AAIhF,OAAO,EAAuB,UAAU,EAAa,MAAM,eAAe,CAAC;AAE3E,eAAO,MAAM,eAAe;;;;;CAgE3B,CAAC"}
@@ -1,15 +1,20 @@
1
1
  import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
2
2
  import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
3
+ import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
3
4
  import { useClickOutside } from "@mantine/hooks";
4
5
  import { functionalUpdate } from "@tanstack/table-core";
5
6
  import isEqual from "fast-deep-equal";
7
+ import { useRef } from "react";
6
8
  export var useRowSelection = function(table, param) {
7
- var onRowSelectionChange = param.onRowSelectionChange, multiRowSelectionEnabled = param.multiRowSelectionEnabled;
8
- var outsideClickRef = useClickOutside(function() {
9
+ var onRowSelectionChange = param.onRowSelectionChange, multiRowSelectionEnabled = param.multiRowSelectionEnabled, _param_additionalRootNodes = param.additionalRootNodes, additionalRootNodes = _param_additionalRootNodes === void 0 ? [] : _param_additionalRootNodes;
10
+ var outsideClickRef = useRef();
11
+ useClickOutside(function() {
9
12
  if (!multiRowSelectionEnabled) {
10
13
  clearSelection();
11
14
  }
12
- });
15
+ }, null, [
16
+ outsideClickRef.current
17
+ ].concat(_to_consumable_array(additionalRootNodes)));
13
18
  table.setOptions(function(prev) {
14
19
  return _object_spread_props(_object_spread({}, prev), {
15
20
  onRowSelectionChange: function(rowSelectionUpdater) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/useRowSelection.ts"],"sourcesContent":["import {useClickOutside} from '@mantine/hooks';\nimport {functionalUpdate, RowSelectionState, Table} from '@tanstack/table-core';\nimport isEqual from 'fast-deep-equal';\n\nimport {RowSelectionWithData, TableProps, TableState} from './Table.types';\n\nexport const useRowSelection = <T>(\n table: Table<T>,\n {\n onRowSelectionChange,\n multiRowSelectionEnabled,\n }: Pick<TableProps<T>, 'onRowSelectionChange' | 'multiRowSelectionEnabled'>\n) => {\n const outsideClickRef = useClickOutside(() => {\n if (!multiRowSelectionEnabled) {\n clearSelection();\n }\n });\n\n table.setOptions((prev) => ({\n ...prev,\n onRowSelectionChange: (rowSelectionUpdater) => {\n table.setState((old) => {\n const newRowSelection = functionalUpdate(\n rowSelectionUpdater,\n old['rowSelection']\n ) as RowSelectionWithData<T>;\n\n if (isEqual(old['rowSelection'], newRowSelection)) {\n return old;\n }\n\n const rows = table.getRowModel().rowsById;\n\n Object.keys(newRowSelection).forEach((rowId) => {\n if (newRowSelection[rowId] === true) {\n if (!rows[rowId]) {\n console.error(\n 'The table was not initialized properly, the rowSelection state should contain an object of type Record<string, TData>.'\n );\n }\n newRowSelection[rowId] = rows[rowId]?.original ?? (true as T);\n }\n });\n\n onRowSelectionChange?.(Object.values(newRowSelection));\n\n return {\n ...old,\n rowSelection: newRowSelection as RowSelectionState,\n };\n });\n },\n }));\n\n const clearSelection = () => {\n table.resetRowSelection(true);\n };\n\n const getSelectedRows = () => Object.values((table.getState() as TableState<T>).rowSelection);\n\n const getSelectedRow = () => getSelectedRows()[0] ?? null;\n\n return {clearSelection, getSelectedRow, getSelectedRows, outsideClickRef};\n};\n"],"names":["useClickOutside","functionalUpdate","isEqual","useRowSelection","table","onRowSelectionChange","multiRowSelectionEnabled","outsideClickRef","clearSelection","setOptions","prev","rowSelectionUpdater","setState","old","newRowSelection","rows","getRowModel","rowsById","Object","keys","forEach","rowId","console","error","original","values","rowSelection","resetRowSelection","getSelectedRows","getState","getSelectedRow"],"mappings":";;AAAA,SAAQA,eAAe,QAAO,iBAAiB;AAC/C,SAAQC,gBAAgB,QAAiC,uBAAuB;AAChF,OAAOC,aAAa,kBAAkB;AAItC,OAAO,IAAMC,kBAAkB,SAC3BC;QAEIC,6BAAAA,sBACAC,iCAAAA;IAGJ,IAAMC,kBAAkBP,gBAAgB;QACpC,IAAI,CAACM,0BAA0B;YAC3BE;QACJ;IACJ;IAEAJ,MAAMK,UAAU,CAAC,SAACC;eAAU,wCACrBA;YACHL,sBAAsB,SAACM;gBACnBP,MAAMQ,QAAQ,CAAC,SAACC;wBAuBZR;oBAtBA,IAAMS,kBAAkBb,iBACpBU,qBACAE,GAAG,CAAC,eAAe;oBAGvB,IAAIX,QAAQW,GAAG,CAAC,eAAe,EAAEC,kBAAkB;wBAC/C,OAAOD;oBACX;oBAEA,IAAME,OAAOX,MAAMY,WAAW,GAAGC,QAAQ;oBAEzCC,OAAOC,IAAI,CAACL,iBAAiBM,OAAO,CAAC,SAACC;wBAClC,IAAIP,eAAe,CAACO,MAAM,KAAK,MAAM;gCAMRN;4BALzB,IAAI,CAACA,IAAI,CAACM,MAAM,EAAE;gCACdC,QAAQC,KAAK,CACT;4BAER;gCACyBR;4BAAzBD,eAAe,CAACO,MAAM,GAAGN,CAAAA,wBAAAA,cAAAA,IAAI,CAACM,MAAM,cAAXN,kCAAAA,YAAaS,QAAQ,cAArBT,kCAAAA,uBAA0B;wBACvD;oBACJ;qBAEAV,wBAAAA,kCAAAA,4CAAAA,sBAAuBa,OAAOO,MAAM,CAACX;oBAErC,OAAO,wCACAD;wBACHa,cAAcZ;;gBAEtB;YACJ;;;IAGJ,IAAMN,iBAAiB;QACnBJ,MAAMuB,iBAAiB,CAAC;IAC5B;IAEA,IAAMC,kBAAkB;eAAMV,OAAOO,MAAM,CAAC,AAACrB,MAAMyB,QAAQ,GAAqBH,YAAY;;QAE/DE;IAA7B,IAAME,iBAAiB;eAAMF,CAAAA,oBAAAA,iBAAiB,CAAC,EAAE,cAApBA,+BAAAA,oBAAwB;;IAErD,OAAO;QAACpB,gBAAAA;QAAgBsB,gBAAAA;QAAgBF,iBAAAA;QAAiBrB,iBAAAA;IAAe;AAC5E,EAAE"}
1
+ {"version":3,"sources":["../../../../src/components/table/useRowSelection.ts"],"sourcesContent":["import {useClickOutside} from '@mantine/hooks';\nimport {functionalUpdate, RowSelectionState, Table} from '@tanstack/table-core';\nimport isEqual from 'fast-deep-equal';\n\nimport {useRef} from 'react';\nimport {RowSelectionWithData, TableProps, TableState} from './Table.types';\n\nexport const useRowSelection = <T>(\n table: Table<T>,\n {\n onRowSelectionChange,\n multiRowSelectionEnabled,\n additionalRootNodes = [],\n }: Pick<TableProps<T>, 'onRowSelectionChange' | 'multiRowSelectionEnabled' | 'additionalRootNodes'>\n) => {\n const outsideClickRef = useRef<HTMLDivElement>();\n useClickOutside(\n () => {\n if (!multiRowSelectionEnabled) {\n clearSelection();\n }\n },\n null,\n [outsideClickRef.current, ...additionalRootNodes]\n );\n\n table.setOptions((prev) => ({\n ...prev,\n onRowSelectionChange: (rowSelectionUpdater) => {\n table.setState((old) => {\n const newRowSelection = functionalUpdate(\n rowSelectionUpdater,\n old['rowSelection']\n ) as RowSelectionWithData<T>;\n\n if (isEqual(old['rowSelection'], newRowSelection)) {\n return old;\n }\n\n const rows = table.getRowModel().rowsById;\n\n Object.keys(newRowSelection).forEach((rowId) => {\n if (newRowSelection[rowId] === true) {\n if (!rows[rowId]) {\n console.error(\n 'The table was not initialized properly, the rowSelection state should contain an object of type Record<string, TData>.'\n );\n }\n newRowSelection[rowId] = rows[rowId]?.original ?? (true as T);\n }\n });\n\n onRowSelectionChange?.(Object.values(newRowSelection));\n\n return {\n ...old,\n rowSelection: newRowSelection as RowSelectionState,\n };\n });\n },\n }));\n\n const clearSelection = () => {\n table.resetRowSelection(true);\n };\n\n const getSelectedRows = () => Object.values((table.getState() as TableState<T>).rowSelection);\n\n const getSelectedRow = () => getSelectedRows()[0] ?? null;\n\n return {clearSelection, getSelectedRow, getSelectedRows, outsideClickRef};\n};\n"],"names":["useClickOutside","functionalUpdate","isEqual","useRef","useRowSelection","table","onRowSelectionChange","multiRowSelectionEnabled","additionalRootNodes","outsideClickRef","clearSelection","current","setOptions","prev","rowSelectionUpdater","setState","old","newRowSelection","rows","getRowModel","rowsById","Object","keys","forEach","rowId","console","error","original","values","rowSelection","resetRowSelection","getSelectedRows","getState","getSelectedRow"],"mappings":";;;AAAA,SAAQA,eAAe,QAAO,iBAAiB;AAC/C,SAAQC,gBAAgB,QAAiC,uBAAuB;AAChF,OAAOC,aAAa,kBAAkB;AAEtC,SAAQC,MAAM,QAAO,QAAQ;AAG7B,OAAO,IAAMC,kBAAkB,SAC3BC;QAEIC,6BAAAA,sBACAC,iCAAAA,6DACAC,qBAAAA,8DAAsB,EAAE;IAG5B,IAAMC,kBAAkBN;IACxBH,gBACI;QACI,IAAI,CAACO,0BAA0B;YAC3BG;QACJ;IACJ,GACA,MACA;QAACD,gBAAgBE,OAAO;KAAyB,CAAjD,OAA0B,qBAAGH;IAGjCH,MAAMO,UAAU,CAAC,SAACC;eAAU,wCACrBA;YACHP,sBAAsB,SAACQ;gBACnBT,MAAMU,QAAQ,CAAC,SAACC;wBAuBZV;oBAtBA,IAAMW,kBAAkBhB,iBACpBa,qBACAE,GAAG,CAAC,eAAe;oBAGvB,IAAId,QAAQc,GAAG,CAAC,eAAe,EAAEC,kBAAkB;wBAC/C,OAAOD;oBACX;oBAEA,IAAME,OAAOb,MAAMc,WAAW,GAAGC,QAAQ;oBAEzCC,OAAOC,IAAI,CAACL,iBAAiBM,OAAO,CAAC,SAACC;wBAClC,IAAIP,eAAe,CAACO,MAAM,KAAK,MAAM;gCAMRN;4BALzB,IAAI,CAACA,IAAI,CAACM,MAAM,EAAE;gCACdC,QAAQC,KAAK,CACT;4BAER;gCACyBR;4BAAzBD,eAAe,CAACO,MAAM,GAAGN,CAAAA,wBAAAA,cAAAA,IAAI,CAACM,MAAM,cAAXN,kCAAAA,YAAaS,QAAQ,cAArBT,kCAAAA,uBAA0B;wBACvD;oBACJ;qBAEAZ,wBAAAA,kCAAAA,4CAAAA,sBAAuBe,OAAOO,MAAM,CAACX;oBAErC,OAAO,wCACAD;wBACHa,cAAcZ;;gBAEtB;YACJ;;;IAGJ,IAAMP,iBAAiB;QACnBL,MAAMyB,iBAAiB,CAAC;IAC5B;IAEA,IAAMC,kBAAkB;eAAMV,OAAOO,MAAM,CAAC,AAACvB,MAAM2B,QAAQ,GAAqBH,YAAY;;QAE/DE;IAA7B,IAAME,iBAAiB;eAAMF,CAAAA,oBAAAA,iBAAiB,CAAC,EAAE,cAApBA,+BAAAA,oBAAwB;;IAErD,OAAO;QAACrB,gBAAAA;QAAgBuB,gBAAAA;QAAgBF,iBAAAA;QAAiBtB,iBAAAA;IAAe;AAC5E,EAAE"}
@@ -1,7 +1,6 @@
1
1
  import { _ as _define_property } from "@swc/helpers/_/_define_property";
2
2
  import { _ as _object_destructuring_empty } from "@swc/helpers/_/_object_destructuring_empty";
3
3
  import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
4
- var _theme_colors;
5
4
  import { jsx as _jsx } from "react/jsx-runtime";
6
5
  import { CheckSize16Px, InfoSize24Px } from "@coveord/plasma-react-icons";
7
6
  import { color } from "@coveord/plasma-tokens";
@@ -289,6 +288,7 @@ export var plasmaTheme = {
289
288
  Notification: {
290
289
  styles: function(theme, param) {
291
290
  var notificationType = param.color;
291
+ var _theme_colors;
292
292
  return {
293
293
  root: {
294
294
  borderColor: theme.colors.gray[3],
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/theme/Theme.tsx"],"sourcesContent":["import {CheckSize16Px, InfoSize24Px} from '@coveord/plasma-react-icons';\nimport {color} from '@coveord/plasma-tokens';\nimport {\n getSize,\n rem,\n type MantineThemeOverride,\n type NotificationProps,\n type StepperStylesParams,\n type TabsStylesParams,\n} from '@mantine/core';\n\nimport {PlasmaColors} from './PlasmaColors';\n\nexport const plasmaTheme: MantineThemeOverride = {\n // These are overrides over https://github.com/mantinedev/mantine/blob/master/src/mantine-styles/src/theme/default-theme.ts\n colorScheme: 'light',\n fontFamily: 'canada-type-gibson, sans-serif',\n black: color.primary.gray[9],\n defaultRadius: 8,\n lineHeight: 1.5,\n spacing: {\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n xl: '40px',\n },\n primaryColor: 'action',\n headings: {\n fontFamily: 'canada-type-gibson, sans-serif',\n fontWeight: 500,\n sizes: {\n h1: {fontSize: '48px', lineHeight: undefined, fontWeight: 300},\n h2: {fontSize: '32px', lineHeight: undefined, fontWeight: 500},\n h3: {fontSize: '24px', lineHeight: undefined, fontWeight: 500},\n h4: {fontSize: '18px', lineHeight: undefined, fontWeight: 300},\n h5: {fontSize: '14px', lineHeight: undefined, fontWeight: 500},\n h6: {fontSize: '12px', lineHeight: undefined, fontWeight: 500},\n },\n },\n shadows: {\n xs: '0px 1px 0px rgba(4, 8, 31, 0.08)',\n sm: '0px 2px 4px rgba(4, 8, 31, 0.12)',\n md: '0px 4px 8px rgba(4, 8, 31, 0.08)',\n lg: '0px 8px 16px rgba(7, 12, 41, 0.06)',\n xl: '0px 16px 24px rgba(4, 8, 31, 0.06)',\n },\n colors: PlasmaColors,\n components: {\n Alert: {\n defaultProps: {\n icon: <InfoSize24Px height={24} />,\n color: 'navy',\n },\n styles: {\n title: {\n fontWeight: 500,\n },\n },\n },\n Title: {\n styles: {\n root: {\n '&:is(h1,h2,h3,h4,h5,h6)': {letterSpacing: '0.011em'},\n },\n },\n },\n Text: {\n defaultProps: {\n weight: 300,\n },\n styles: (theme, {}, {size}) => ({\n root: {\n fontSize: getSize({size: size ?? 'sm', sizes: theme.fontSizes}),\n },\n }),\n },\n Button: {\n styles: () => ({\n root: {\n fontWeight: 400,\n },\n }),\n variants: {\n outline: () => ({\n root: {\n backgroundColor: 'white',\n },\n }),\n },\n },\n Modal: {\n styles: (theme, {fullScreen, padding}, {size, variant}) => ({\n content: {\n flex: fullScreen\n ? '0 0 100%'\n : `0 0 ${getSize({\n size,\n sizes: {\n xs: rem(432),\n sm: rem(664),\n md: rem(896),\n lg: rem(1120),\n xl: rem('88%'),\n },\n })}`,\n overflow: 'auto',\n },\n title: {\n width: '100%',\n fontSize: theme.headings.sizes.h3.fontSize,\n lineHeight: theme.headings.sizes.h3.lineHeight,\n fontWeight: 500,\n },\n header: {\n borderBottom: variant !== 'prompt' ? `1px solid ${color.primary.gray[3]}` : null,\n },\n body: {\n '&:not(:only-child)': {\n paddingTop: variant === 'prompt' ? 0 : getSize({size: padding, sizes: plasmaTheme.spacing}),\n },\n },\n }),\n },\n ModalOverlay: {\n defaultProps: {\n color: color.primary.navy[9],\n opacity: 0.9,\n },\n },\n InputWrapper: {\n defaultProps: {\n withAsterisk: false,\n },\n styles: (theme) => ({\n label: {\n marginBottom: theme.spacing.xs,\n },\n description: {\n fontSize: theme.fontSizes.sm,\n color: theme.colors.gray[7],\n marginBottom: theme.spacing.xs,\n },\n invalid: {\n color: theme.colors.red[9],\n borderColor: theme.colors.red[6],\n },\n error: {\n color: theme.colors.red[9],\n },\n }),\n },\n TextInput: {\n defaultProps: {\n radius: 8,\n },\n },\n Tooltip: {\n defaultProps: {\n color: 'navy',\n withArrow: true,\n withinPortal: true,\n multiline: true,\n zIndex: 10000,\n },\n },\n Loader: {\n defaultProps: {\n variant: 'dots',\n color: 'action',\n },\n },\n DateRangePicker: {\n styles: {\n cell: {\n textAlign: 'center',\n },\n },\n },\n Anchor: {\n defaultProps: {\n color: 'action.6',\n },\n styles: (theme) => ({\n root: {\n ...theme.fn.hover({\n textDecoration: 'underline',\n color: theme.colors.action[8],\n }),\n },\n }),\n },\n Checkbox: {\n defaultProps: {\n radius: 'sm',\n },\n styles: (theme) => ({\n label: {\n fontSize: theme.fontSizes.sm,\n fontWeight: 300,\n },\n }),\n },\n List: {\n styles: () => ({\n root: {\n listStyleType: 'disc',\n },\n }),\n },\n Radio: {\n styles: {\n labelWrapper: {\n display: 'flex',\n alignItems: 'flex-start',\n },\n },\n },\n Popover: {\n defaultProps: {\n shadow: 'md',\n withArrow: true,\n },\n },\n Badge: {\n styles: {\n root: {\n textTransform: 'none',\n padding: '4px 8px',\n fontWeight: 500,\n },\n },\n },\n ColorSwatch: {\n defaultProps: {\n size: 8,\n withShadow: false,\n },\n },\n MenuItem: {\n defaultProps: {\n fw: 300,\n },\n },\n Notification: {\n styles: (theme, {color: notificationType}: NotificationProps) => ({\n root: {\n borderColor: theme.colors.gray[3],\n backgroundColor: theme.colors.gray[0],\n boxShadow: theme.shadows.lg,\n padding: theme.spacing.sm,\n '&[data-with-icon]': {\n paddingLeft: theme.spacing.sm,\n },\n },\n icon: {\n backgroundColor: 'transparent',\n marginRight: theme.spacing.sm,\n color: theme.colors?.[notificationType][6],\n },\n closeButton: {\n margin: theme.spacing.xs,\n color: theme.colors.gray[5],\n },\n }),\n defaultProps: {\n icon: <InfoSize24Px height={24} />,\n color: 'info',\n },\n },\n Skeleton: {\n styles: {\n visible: {\n '&::before': {zIndex: 'unset'},\n '&::after': {zIndex: 'unset'},\n },\n },\n },\n SegmentedControl: {\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.gray[2],\n },\n }),\n },\n Stepper: {\n defaultProps: {\n size: 'xs',\n completedIcon: <CheckSize16Px />,\n },\n styles: (theme, {}: StepperStylesParams, {size}) => ({\n step: {\n '&[disabled]': {\n color: theme.colors.gray[5],\n '& .mantine-Stepper-stepDescription': {\n color: theme.colors.gray[5],\n },\n '& .mantine-Stepper-stepIcon': {\n borderColor: theme.colors.gray[1],\n },\n },\n },\n stepIcon: {\n fontWeight: 500,\n backgroundColor: theme.colors.gray[1],\n color: 'inherit',\n border: `${rem(1)} solid ${theme.colors.gray[3]}`,\n '&[data-progress]': {\n backgroundColor: theme.white,\n },\n\n '&[data-completed]': {\n backgroundColor: theme.white,\n borderColor: theme.colors.lime[6],\n color: theme.colors.lime[6],\n },\n },\n stepCompletedIcon: {\n color: theme.colors.lime[6],\n fontSize: rem(16),\n },\n stepDescription: {\n color: theme.colors.gray[7],\n fontSize: getSize({size, sizes: theme.fontSizes}),\n },\n separator: {\n height: rem(1),\n backgroundColor: theme.colors.gray[3],\n },\n separatorActive: {\n backgroundColor: theme.colors.gray[3],\n },\n verticalSeparator: {\n borderLeft: `${rem(1)} solid ${theme.colors.gray[3]}`,\n },\n verticalSeparatorActive: {\n borderColor: theme.colors.gray[3],\n },\n }),\n },\n Tabs: {\n styles: (theme, {orientation}: TabsStylesParams) => ({\n tabsList: {\n [orientation === 'horizontal' ? 'borderBottom' : 'borderRight']: `${rem(1)} solid ${\n theme.colors.gray[3]\n }`,\n },\n tab: {\n [orientation === 'horizontal' ? 'borderBottom' : 'borderRight']: `${rem(1)} solid transparent`,\n [orientation === 'horizontal' ? 'marginBottom' : 'marginRight']: rem(-1),\n },\n }),\n },\n Select: {\n styles: (theme) => ({\n input: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.colors.gray[7],\n },\n item: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.colors.gray[7],\n\n '&[data-hovered]': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[1],\n },\n\n '&[data-selected]': {\n backgroundColor: theme.fn.variant({variant: 'light'}).background,\n color: theme.fn.variant({variant: 'light'}).color,\n ...theme.fn.hover({backgroundColor: theme.fn.variant({variant: 'light'}).hover}),\n },\n },\n }),\n },\n },\n};\n"],"names":["theme","CheckSize16Px","InfoSize24Px","color","getSize","rem","PlasmaColors","plasmaTheme","colorScheme","fontFamily","black","primary","gray","defaultRadius","lineHeight","spacing","xs","sm","md","lg","xl","primaryColor","headings","fontWeight","sizes","h1","fontSize","undefined","h2","h3","h4","h5","h6","shadows","colors","components","Alert","defaultProps","icon","height","styles","title","Title","root","letterSpacing","Text","weight","size","fontSizes","Button","variants","outline","backgroundColor","Modal","fullScreen","padding","variant","content","flex","overflow","width","header","borderBottom","body","paddingTop","ModalOverlay","navy","opacity","InputWrapper","withAsterisk","label","marginBottom","description","invalid","red","borderColor","error","TextInput","radius","Tooltip","withArrow","withinPortal","multiline","zIndex","Loader","DateRangePicker","cell","textAlign","Anchor","fn","hover","textDecoration","action","Checkbox","List","listStyleType","Radio","labelWrapper","display","alignItems","Popover","shadow","Badge","textTransform","ColorSwatch","withShadow","MenuItem","fw","Notification","notificationType","boxShadow","paddingLeft","marginRight","closeButton","margin","Skeleton","visible","SegmentedControl","Stepper","completedIcon","step","stepIcon","border","white","lime","stepCompletedIcon","stepDescription","separator","separatorActive","verticalSeparator","borderLeft","verticalSeparatorActive","Tabs","orientation","tabsList","tab","Select","input","dark","item","background"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/theme/Theme.tsx"],"sourcesContent":["import {CheckSize16Px, InfoSize24Px} from '@coveord/plasma-react-icons';\nimport {color} from '@coveord/plasma-tokens';\nimport {\n getSize,\n rem,\n type MantineThemeOverride,\n type NotificationProps,\n type StepperStylesParams,\n type TabsStylesParams,\n} from '@mantine/core';\n\nimport {PlasmaColors} from './PlasmaColors';\n\nexport const plasmaTheme: MantineThemeOverride = {\n // These are overrides over https://github.com/mantinedev/mantine/blob/master/src/mantine-styles/src/theme/default-theme.ts\n colorScheme: 'light',\n fontFamily: 'canada-type-gibson, sans-serif',\n black: color.primary.gray[9],\n defaultRadius: 8,\n lineHeight: 1.5,\n spacing: {\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n xl: '40px',\n },\n primaryColor: 'action',\n headings: {\n fontFamily: 'canada-type-gibson, sans-serif',\n fontWeight: 500,\n sizes: {\n h1: {fontSize: '48px', lineHeight: undefined, fontWeight: 300},\n h2: {fontSize: '32px', lineHeight: undefined, fontWeight: 500},\n h3: {fontSize: '24px', lineHeight: undefined, fontWeight: 500},\n h4: {fontSize: '18px', lineHeight: undefined, fontWeight: 300},\n h5: {fontSize: '14px', lineHeight: undefined, fontWeight: 500},\n h6: {fontSize: '12px', lineHeight: undefined, fontWeight: 500},\n },\n },\n shadows: {\n xs: '0px 1px 0px rgba(4, 8, 31, 0.08)',\n sm: '0px 2px 4px rgba(4, 8, 31, 0.12)',\n md: '0px 4px 8px rgba(4, 8, 31, 0.08)',\n lg: '0px 8px 16px rgba(7, 12, 41, 0.06)',\n xl: '0px 16px 24px rgba(4, 8, 31, 0.06)',\n },\n colors: PlasmaColors,\n components: {\n Alert: {\n defaultProps: {\n icon: <InfoSize24Px height={24} />,\n color: 'navy',\n },\n styles: {\n title: {\n fontWeight: 500,\n },\n },\n },\n Title: {\n styles: {\n root: {\n '&:is(h1,h2,h3,h4,h5,h6)': {letterSpacing: '0.011em'},\n },\n },\n },\n Text: {\n defaultProps: {\n weight: 300,\n },\n styles: (theme, {}, {size}) => ({\n root: {\n fontSize: getSize({size: size ?? 'sm', sizes: theme.fontSizes}),\n },\n }),\n },\n Button: {\n styles: () => ({\n root: {\n fontWeight: 400,\n },\n }),\n variants: {\n outline: () => ({\n root: {\n backgroundColor: 'white',\n },\n }),\n },\n },\n Modal: {\n styles: (theme, {fullScreen, padding}, {size, variant}) => ({\n content: {\n flex: fullScreen\n ? '0 0 100%'\n : `0 0 ${getSize({\n size,\n sizes: {\n xs: rem(432),\n sm: rem(664),\n md: rem(896),\n lg: rem(1120),\n xl: rem('88%'),\n },\n })}`,\n overflow: 'auto',\n },\n title: {\n width: '100%',\n fontSize: theme.headings.sizes.h3.fontSize,\n lineHeight: theme.headings.sizes.h3.lineHeight,\n fontWeight: 500,\n },\n header: {\n borderBottom: variant !== 'prompt' ? `1px solid ${color.primary.gray[3]}` : null,\n },\n body: {\n '&:not(:only-child)': {\n paddingTop: variant === 'prompt' ? 0 : getSize({size: padding, sizes: plasmaTheme.spacing}),\n },\n },\n }),\n },\n ModalOverlay: {\n defaultProps: {\n color: color.primary.navy[9],\n opacity: 0.9,\n },\n },\n InputWrapper: {\n defaultProps: {\n withAsterisk: false,\n },\n styles: (theme) => ({\n label: {\n marginBottom: theme.spacing.xs,\n },\n description: {\n fontSize: theme.fontSizes.sm,\n color: theme.colors.gray[7],\n marginBottom: theme.spacing.xs,\n },\n invalid: {\n color: theme.colors.red[9],\n borderColor: theme.colors.red[6],\n },\n error: {\n color: theme.colors.red[9],\n },\n }),\n },\n TextInput: {\n defaultProps: {\n radius: 8,\n },\n },\n Tooltip: {\n defaultProps: {\n color: 'navy',\n withArrow: true,\n withinPortal: true,\n multiline: true,\n zIndex: 10000,\n },\n },\n Loader: {\n defaultProps: {\n variant: 'dots',\n color: 'action',\n },\n },\n DateRangePicker: {\n styles: {\n cell: {\n textAlign: 'center',\n },\n },\n },\n Anchor: {\n defaultProps: {\n color: 'action.6',\n },\n styles: (theme) => ({\n root: {\n ...theme.fn.hover({\n textDecoration: 'underline',\n color: theme.colors.action[8],\n }),\n },\n }),\n },\n Checkbox: {\n defaultProps: {\n radius: 'sm',\n },\n styles: (theme) => ({\n label: {\n fontSize: theme.fontSizes.sm,\n fontWeight: 300,\n },\n }),\n },\n List: {\n styles: () => ({\n root: {\n listStyleType: 'disc',\n },\n }),\n },\n Radio: {\n styles: {\n labelWrapper: {\n display: 'flex',\n alignItems: 'flex-start',\n },\n },\n },\n Popover: {\n defaultProps: {\n shadow: 'md',\n withArrow: true,\n },\n },\n Badge: {\n styles: {\n root: {\n textTransform: 'none',\n padding: '4px 8px',\n fontWeight: 500,\n },\n },\n },\n ColorSwatch: {\n defaultProps: {\n size: 8,\n withShadow: false,\n },\n },\n MenuItem: {\n defaultProps: {\n fw: 300,\n },\n },\n Notification: {\n styles: (theme, {color: notificationType}: NotificationProps) => ({\n root: {\n borderColor: theme.colors.gray[3],\n backgroundColor: theme.colors.gray[0],\n boxShadow: theme.shadows.lg,\n padding: theme.spacing.sm,\n '&[data-with-icon]': {\n paddingLeft: theme.spacing.sm,\n },\n },\n icon: {\n backgroundColor: 'transparent',\n marginRight: theme.spacing.sm,\n color: theme.colors?.[notificationType][6],\n },\n closeButton: {\n margin: theme.spacing.xs,\n color: theme.colors.gray[5],\n },\n }),\n defaultProps: {\n icon: <InfoSize24Px height={24} />,\n color: 'info',\n },\n },\n Skeleton: {\n styles: {\n visible: {\n '&::before': {zIndex: 'unset'},\n '&::after': {zIndex: 'unset'},\n },\n },\n },\n SegmentedControl: {\n styles: (theme) => ({\n root: {\n backgroundColor: theme.colors.gray[2],\n },\n }),\n },\n Stepper: {\n defaultProps: {\n size: 'xs',\n completedIcon: <CheckSize16Px />,\n },\n styles: (theme, {}: StepperStylesParams, {size}) => ({\n step: {\n '&[disabled]': {\n color: theme.colors.gray[5],\n '& .mantine-Stepper-stepDescription': {\n color: theme.colors.gray[5],\n },\n '& .mantine-Stepper-stepIcon': {\n borderColor: theme.colors.gray[1],\n },\n },\n },\n stepIcon: {\n fontWeight: 500,\n backgroundColor: theme.colors.gray[1],\n color: 'inherit',\n border: `${rem(1)} solid ${theme.colors.gray[3]}`,\n '&[data-progress]': {\n backgroundColor: theme.white,\n },\n\n '&[data-completed]': {\n backgroundColor: theme.white,\n borderColor: theme.colors.lime[6],\n color: theme.colors.lime[6],\n },\n },\n stepCompletedIcon: {\n color: theme.colors.lime[6],\n fontSize: rem(16),\n },\n stepDescription: {\n color: theme.colors.gray[7],\n fontSize: getSize({size, sizes: theme.fontSizes}),\n },\n separator: {\n height: rem(1),\n backgroundColor: theme.colors.gray[3],\n },\n separatorActive: {\n backgroundColor: theme.colors.gray[3],\n },\n verticalSeparator: {\n borderLeft: `${rem(1)} solid ${theme.colors.gray[3]}`,\n },\n verticalSeparatorActive: {\n borderColor: theme.colors.gray[3],\n },\n }),\n },\n Tabs: {\n styles: (theme, {orientation}: TabsStylesParams) => ({\n tabsList: {\n [orientation === 'horizontal' ? 'borderBottom' : 'borderRight']: `${rem(1)} solid ${\n theme.colors.gray[3]\n }`,\n },\n tab: {\n [orientation === 'horizontal' ? 'borderBottom' : 'borderRight']: `${rem(1)} solid transparent`,\n [orientation === 'horizontal' ? 'marginBottom' : 'marginRight']: rem(-1),\n },\n }),\n },\n Select: {\n styles: (theme) => ({\n input: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.colors.gray[7],\n },\n item: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.colors.gray[7],\n\n '&[data-hovered]': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[1],\n },\n\n '&[data-selected]': {\n backgroundColor: theme.fn.variant({variant: 'light'}).background,\n color: theme.fn.variant({variant: 'light'}).color,\n ...theme.fn.hover({backgroundColor: theme.fn.variant({variant: 'light'}).hover}),\n },\n },\n }),\n },\n },\n};\n"],"names":["CheckSize16Px","InfoSize24Px","color","getSize","rem","PlasmaColors","plasmaTheme","colorScheme","fontFamily","black","primary","gray","defaultRadius","lineHeight","spacing","xs","sm","md","lg","xl","primaryColor","headings","fontWeight","sizes","h1","fontSize","undefined","h2","h3","h4","h5","h6","shadows","colors","components","Alert","defaultProps","icon","height","styles","title","Title","root","letterSpacing","Text","weight","theme","size","fontSizes","Button","variants","outline","backgroundColor","Modal","fullScreen","padding","variant","content","flex","overflow","width","header","borderBottom","body","paddingTop","ModalOverlay","navy","opacity","InputWrapper","withAsterisk","label","marginBottom","description","invalid","red","borderColor","error","TextInput","radius","Tooltip","withArrow","withinPortal","multiline","zIndex","Loader","DateRangePicker","cell","textAlign","Anchor","fn","hover","textDecoration","action","Checkbox","List","listStyleType","Radio","labelWrapper","display","alignItems","Popover","shadow","Badge","textTransform","ColorSwatch","withShadow","MenuItem","fw","Notification","notificationType","boxShadow","paddingLeft","marginRight","closeButton","margin","Skeleton","visible","SegmentedControl","Stepper","completedIcon","step","stepIcon","border","white","lime","stepCompletedIcon","stepDescription","separator","separatorActive","verticalSeparator","borderLeft","verticalSeparatorActive","Tabs","orientation","tabsList","tab","Select","input","dark","item","background"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coveord/plasma-mantine",
3
- "version": "52.9.0",
3
+ "version": "52.10.1",
4
4
  "description": "A Plasma flavoured Mantine theme",
5
5
  "keywords": [
6
6
  "plasma",
@@ -31,7 +31,7 @@
31
31
  "@dnd-kit/modifiers": "6.0.1",
32
32
  "@dnd-kit/sortable": "7.0.2",
33
33
  "@dnd-kit/utilities": "3.2.1",
34
- "@mantine/utils": "6.0.13",
34
+ "@mantine/utils": "6.0.14",
35
35
  "@monaco-editor/react": "4.5.1",
36
36
  "@swc/helpers": "0.5.1",
37
37
  "@tanstack/react-table": "8.9.2",
@@ -40,30 +40,30 @@
40
40
  "fast-deep-equal": "3.1.3",
41
41
  "lodash.debounce": "4.0.8",
42
42
  "lodash.defaultsdeep": "4.6.1",
43
- "monaco-editor": "0.38.0",
44
- "@coveord/plasma-react-icons": "52.9.0",
45
- "@coveord/plasma-tokens": "52.9.0"
43
+ "monaco-editor": "0.39.0",
44
+ "@coveord/plasma-react-icons": "52.10.1",
45
+ "@coveord/plasma-tokens": "52.10.1"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@emotion/react": "11.11.1",
49
- "@mantine/carousel": "6.0.13",
50
- "@mantine/core": "6.0.13",
51
- "@mantine/dates": "6.0.13",
52
- "@mantine/form": "6.0.13",
53
- "@mantine/hooks": "6.0.13",
54
- "@mantine/modals": "6.0.13",
55
- "@mantine/notifications": "6.0.13",
49
+ "@mantine/carousel": "6.0.14",
50
+ "@mantine/core": "6.0.14",
51
+ "@mantine/dates": "6.0.14",
52
+ "@mantine/form": "6.0.14",
53
+ "@mantine/hooks": "6.0.14",
54
+ "@mantine/modals": "6.0.14",
55
+ "@mantine/notifications": "6.0.14",
56
56
  "@swc/cli": "0.1.62",
57
- "@swc/core": "1.3.64",
57
+ "@swc/core": "1.3.66",
58
58
  "@swc/jest": "0.2.26",
59
59
  "@testing-library/jest-dom": "5.16.5",
60
- "@testing-library/react": "13.4.0",
60
+ "@testing-library/react": "14.0.0",
61
61
  "@testing-library/user-event": "14.4.3",
62
62
  "@types/jest": "29.5.2",
63
63
  "@types/lodash.debounce": "^4.0.7",
64
64
  "@types/lodash.defaultsdeep": "4.6.7",
65
- "@types/react": "18.2.6",
66
- "@types/react-dom": "18.2.4",
65
+ "@types/react": "18.2.13",
66
+ "@types/react-dom": "18.2.6",
67
67
  "@types/testing-library__jest-dom": "5.14.6",
68
68
  "csstype": "3.1.2",
69
69
  "embla-carousel-react": "7.1.0",
@@ -80,7 +80,7 @@
80
80
  "react-dom": "18.2.0",
81
81
  "rimraf": "3.0.2",
82
82
  "tslib": "2.5.3",
83
- "typescript": "5.0.4",
83
+ "typescript": "5.1.3",
84
84
  "vitest": "0.31.1"
85
85
  },
86
86
  "peerDependencies": {
@@ -30,6 +30,18 @@ window.ResizeObserver =
30
30
  unobserve: vi.fn(),
31
31
  }));
32
32
 
33
+ // Temporarily workaround for bug in @testing-library/react when use user-event with `vi.useFakeTimers()`
34
+ beforeAll(() => {
35
+ const _jest = (globalThis as any).jest;
36
+
37
+ (globalThis as any).jest = {
38
+ ...(globalThis as any).jest,
39
+ advanceTimersByTime: vi.advanceTimersByTime.bind(vi),
40
+ };
41
+
42
+ return () => void ((globalThis as any).jest = _jest);
43
+ });
44
+
33
45
  afterEach(() => {
34
46
  cleanup();
35
47
  });
@@ -126,8 +126,10 @@ export const CodeEditor: FunctionComponent<CodeEditorProps> = (props) => {
126
126
  };
127
127
 
128
128
  const handleSearch = () => {
129
- editorRef.current.focus();
130
- editorRef.current.trigger('editor', 'actions.find', '');
129
+ if (editorRef.current) {
130
+ editorRef.current.focus();
131
+ editorRef.current.trigger('editor', 'actions.find', '');
132
+ }
131
133
  };
132
134
 
133
135
  useEffect(() => {
@@ -191,7 +193,7 @@ export const CodeEditor: FunctionComponent<CodeEditorProps> = (props) => {
191
193
  onMount={(editor, monaco) => {
192
194
  editorRef.current = editor;
193
195
  registerLanguages(monaco);
194
- editor.onDidFocusEditorText(onFocus);
196
+ editor.onDidFocusEditorText(() => onFocus?.());
195
197
  editor.onDidBlurEditorText(async () => {
196
198
  await editor.getAction('editor.action.formatDocument').run();
197
199
  });
@@ -65,6 +65,7 @@ describe('CodeEditor', () => {
65
65
  it('focus and triggers search on the Monaco editor when handleSearch is called', async () => {
66
66
  const user = userEvent.setup();
67
67
  render(<CodeEditor />);
68
+ expect(await screen.findByTestId('monaco-editor')).toBeInTheDocument();
68
69
  await user.click(screen.getByRole('button', {name: /search/i}));
69
70
  expect(screen.getByTestId('monaco-editor')).toHaveAttribute('focus');
70
71
  expect(screen.getByTestId('monaco-editor')).toHaveAttribute('trigger');
@@ -57,6 +57,7 @@ export const DateRangePickerPresetSelect = <T extends unknown>({
57
57
  value={selectedPreset}
58
58
  onChange={onChangePreset}
59
59
  data={selectData}
60
+ maxDropdownHeight={240}
60
61
  />
61
62
  );
62
63
  };
@@ -87,6 +87,7 @@ describe('DateRangePickerInlineCalendar', () => {
87
87
  });
88
88
 
89
89
  it('calls onApply with the selected dates when typing in the inputs', async () => {
90
+ vi.useFakeTimers().setSystemTime(new Date(2022, 0, 31));
90
91
  const user = userEvent.setup({delay: null});
91
92
  const onApply = vi.fn();
92
93
  render(<DateRangePickerInlineCalendar initialRange={[null, null]} onApply={onApply} onCancel={vi.fn()} />);
@@ -109,5 +110,6 @@ describe('DateRangePickerInlineCalendar', () => {
109
110
  dayjs(new Date(2022, 0, 8)).startOf('day').toDate(),
110
111
  dayjs(new Date(2022, 0, 14)).endOf('day').toDate(),
111
112
  ]);
113
+ vi.useRealTimers();
112
114
  });
113
115
  });
@@ -4,17 +4,6 @@ import {DateRangePickerValue} from '../DateRangePickerInlineCalendar';
4
4
 
5
5
  import {DateRangePickerPopoverCalendar} from '../DateRangePickerPopoverCalendar';
6
6
 
7
- // Since we're mocking the date and the animations are timer based we're mocking useReduceMotion to disable all the animations
8
- // I tried wrapping the components in <MantineProvider theme={{components: {Transition: {defaultProps: {duration: 0}}}}}>
9
- // but the animation was still happening. :(
10
- vi.mock('@mantine/hooks', async () => {
11
- const actual = await vi.importActual('@mantine/hooks');
12
- return {
13
- ...actual,
14
- useReduceMotion: () => true,
15
- };
16
- });
17
-
18
7
  describe('DateRangePickerPopoverCalendar', () => {
19
8
  it('does not render the preset searchbox when there is no presets', () => {
20
9
  render(<DateRangePickerPopoverCalendar defaultValue={[null, null]} />);
@@ -23,7 +12,7 @@ describe('DateRangePickerPopoverCalendar', () => {
23
12
  });
24
13
 
25
14
  it('updates with the selected dates when choosing a preset', async () => {
26
- const user = userEvent.setup({delay: null});
15
+ const user = userEvent.setup();
27
16
  const Fixture = () => {
28
17
  const form = useForm<{dates: DateRangePickerValue}>({initialValues: {dates: [null, null]}});
29
18
  return (
@@ -40,11 +29,7 @@ describe('DateRangePickerPopoverCalendar', () => {
40
29
  };
41
30
  render(<Fixture />);
42
31
 
43
- await user.click(
44
- screen.getByRole('searchbox', {
45
- name: 'Date range',
46
- })
47
- );
32
+ await user.click(screen.getByRole('searchbox', {name: 'Date range'}));
48
33
  await user.click(screen.getByRole('option', {name: 'select me'}));
49
34
 
50
35
  expect(screen.getByTestId('json')).toHaveTextContent('["1999-12-31T00:00:00.000Z","2000-01-01T00:00:00.000Z"]');
@@ -79,7 +64,7 @@ describe('DateRangePickerPopoverCalendar', () => {
79
64
  });
80
65
 
81
66
  it('calls onApply with the selected dates when typing in the inputs', async () => {
82
- const user = userEvent.setup({delay: null});
67
+ const user = userEvent.setup();
83
68
  const Fixture = () => {
84
69
  const form = useForm<{dates: DateRangePickerValue}>({initialValues: {dates: [null, null]}});
85
70
  return (
@@ -104,5 +89,5 @@ describe('DateRangePickerPopoverCalendar', () => {
104
89
  await user.type(endInput, 'Jan 14, 2022');
105
90
 
106
91
  expect(screen.getByTestId('json')).toHaveTextContent('["2022-01-08T00:00:00.000Z","2022-01-14T23:59:59.999Z"]');
107
- });
92
+ }, 10000);
108
93
  });