@manufac/react-components-potli 1.0.3 → 1.0.5

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 (25) hide show
  1. package/dist/index.js +1 -1
  2. package/dist/tsc/components/CustomColorPalette/index.js +2 -1
  3. package/dist/tsc/components/CustomColorPalette/index.js.map +1 -1
  4. package/dist/tsc/components/CustomColorPalette/index.stories.js +7 -0
  5. package/dist/tsc/components/CustomColorPalette/index.stories.js.map +1 -0
  6. package/dist/tsc/components/CustomColorPalette/utils.js +51 -0
  7. package/dist/tsc/components/CustomColorPalette/utils.js.map +1 -1
  8. package/dist/tsc/components/CustomTable/index.js +22 -11
  9. package/dist/tsc/components/CustomTable/index.js.map +1 -1
  10. package/dist/tsc/components/CustomTable/index.stories.js +7 -0
  11. package/dist/tsc/components/CustomTable/index.stories.js.map +1 -1
  12. package/dist/tsc/components/CustomTable/utils.js +12 -1
  13. package/dist/tsc/components/CustomTable/utils.js.map +1 -1
  14. package/dist/tsc/tsconfig.tsbuildinfo +1 -1
  15. package/dist/types/components/CustomColorPalette/index.d.ts +6 -4
  16. package/dist/types/components/CustomColorPalette/index.d.ts.map +1 -1
  17. package/dist/types/components/CustomColorPalette/index.stories.d.ts +6 -0
  18. package/dist/types/components/CustomColorPalette/index.stories.d.ts.map +1 -0
  19. package/dist/types/components/CustomColorPalette/utils.d.ts +16 -0
  20. package/dist/types/components/CustomColorPalette/utils.d.ts.map +1 -1
  21. package/dist/types/components/CustomTable/index.d.ts.map +1 -1
  22. package/dist/types/components/CustomTable/index.stories.d.ts.map +1 -1
  23. package/dist/types/components/CustomTable/utils.d.ts +3 -1
  24. package/dist/types/components/CustomTable/utils.d.ts.map +1 -1
  25. package/package.json +4 -2
@@ -1,6 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { colorPaletteItem, ColorOptions } from "./utils";
2
3
  import { Select } from "@mantine/core";
3
4
  export function CustomColorSelect(props) {
4
- return _jsx(Select, { ...props });
5
+ return (_jsx(Select, { placeholder: "Select color palette for chart", renderOption: colorPaletteItem, data: ColorOptions, ...props }));
5
6
  }
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/CustomColorPalette/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAQvC,MAAM,UAAU,iBAAiB,CAAC,KAAkB;IAClD,OAAO,KAAC,MAAM,OAAK,KAAK,GAAI,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/CustomColorPalette/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AASvC,MAAM,UAAU,iBAAiB,CAAC,KAA8B;IAC9D,OAAO,CACL,KAAC,MAAM,IACL,WAAW,EAAC,gCAAgC,EAC5C,YAAY,EAAE,gBAAgB,EAC9B,IAAI,EAAE,YAAY,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { CustomColorSelect } from ".";
2
+ export default {
3
+ title: "CustomColorSelect",
4
+ component: CustomColorSelect,
5
+ };
6
+ export const Template = {};
7
+ //# sourceMappingURL=index.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.stories.js","sourceRoot":"","sources":["../../../../src/components/CustomColorPalette/index.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAGtC,eAAe;IACb,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,iBAAiB;CACK,CAAC;AAEpC,MAAM,CAAC,MAAM,QAAQ,GAAuC,EAAE,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Group, ThemeIcon, Text } from "@mantine/core";
1
3
  import { schemeAccent, schemeBlues, schemeBrBG, schemeBuPu, schemeCategory10, schemeDark2, schemeGreens, schemeGreys, schemeObservable10, schemeOranges, schemeOrRd, schemePaired, schemePiYG, schemePRGn, schemePuBuGn, schemePuOr, schemePurples, schemeRdBu, schemeRdGy, schemeRdYlBu, schemeRdYlGn, schemeReds, schemeSet1, schemeSet2, schemeSpectral, schemeTableau10, schemeYlOrBr, schemeYlOrRd, } from "d3-scale-chromatic";
2
4
  export const ColorSchemeMap = {
3
5
  Categorical: {
@@ -43,4 +45,53 @@ export const ColorPalette = {
43
45
  ...ColorSchemeMap.SequentialMultiHue,
44
46
  ...ColorSchemeMap.Diverging,
45
47
  };
48
+ export const ColorSchemeLabels = {
49
+ "color-scheme-category-10": "Category 10",
50
+ "color-scheme-accent": "Accent",
51
+ "color-scheme-dark-2": "Dark 2",
52
+ "color-scheme-observable-10": "Observable 10",
53
+ "color-scheme-paired": "Paired",
54
+ "color-scheme-set-1": "Set 1",
55
+ "color-scheme-set-2": "Set 2",
56
+ "color-scheme-tableau-10": "Tableau 10",
57
+ "color-scheme-blues": "Blues",
58
+ "color-scheme-greens": "Greens",
59
+ "color-scheme-greys": "Greys",
60
+ "color-scheme-oranges": "Oranges",
61
+ "color-scheme-purples": "Purples",
62
+ "color-scheme-reds": "Reds",
63
+ "color-scheme-yellow-orange-brown": "Yellow Orange Brown",
64
+ "color-scheme-yellow-orange-red": "Yellow Orange Red",
65
+ "color-scheme-orange-red": "Orange Red",
66
+ "color-scheme-purple-blue-green": "Purple Blue Green",
67
+ "color-scheme-blue-purple": "Blue Purple",
68
+ "color-scheme-brown-blue-green": "Brown Blue Green",
69
+ "color-scheme-purple-green": "Purple Green",
70
+ "color-scheme-pink-yellow-green": "Pink Yellow Green",
71
+ "color-scheme-purple-orange": "Purple Orange",
72
+ "color-scheme-red-blue": "Red Blue",
73
+ "color-scheme-red-grey": "Red Grey",
74
+ "color-scheme-red-yellow-blue": "Red Yellow Blue",
75
+ "color-scheme-red-yellow-green": "Red Yellow Green",
76
+ "color-scheme-spectral": "Spectral",
77
+ };
78
+ export const ColorOptions = Object.entries(ColorSchemeMap).map(([groupName, schemes]) => {
79
+ return {
80
+ group: groupName,
81
+ items: Object.keys(schemes).map((name) => {
82
+ return {
83
+ value: name,
84
+ label: ColorSchemeLabels[name],
85
+ groupName,
86
+ };
87
+ }),
88
+ };
89
+ });
90
+ export function colorPaletteItem({ option, }) {
91
+ const schemeGroup = ColorSchemeMap[option.groupName];
92
+ const colors = schemeGroup[option.value];
93
+ return (_jsxs(Group, { justify: "space-between", w: "100%", wrap: "nowrap", children: [_jsx(Text, { children: option.label }), _jsx(Group, { p: "xs", children: colors.map((color) => {
94
+ return _jsx(ThemeIcon, { bg: color, size: "xs" }, color);
95
+ }) })] }));
96
+ }
46
97
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/CustomColorPalette/utils.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,YAAY,EACZ,UAAU,EACV,UAAU,EACV,YAAY,EACZ,UAAU,EACV,aAAa,EACb,UAAU,EACV,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,eAAe,EACf,YAAY,EACZ,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,WAAW,EAAE;QACX,0BAA0B,EAAE,gBAAgB;QAC5C,qBAAqB,EAAE,YAAY;QACnC,qBAAqB,EAAE,WAAW;QAClC,4BAA4B,EAAE,kBAAkB;QAChD,qBAAqB,EAAE,YAAY;QACnC,oBAAoB,EAAE,UAAU;QAChC,oBAAoB,EAAE,UAAU;QAChC,yBAAyB,EAAE,eAAe;KAC3C;IAED,mBAAmB,EAAE;QACnB,oBAAoB,EAAE,WAAW,CAAC,CAAC,CAAC;QACpC,qBAAqB,EAAE,YAAY,CAAC,CAAC,CAAC;QACtC,oBAAoB,EAAE,WAAW,CAAC,CAAC,CAAC;QACpC,sBAAsB,EAAE,aAAa,CAAC,CAAC,CAAC;QACxC,sBAAsB,EAAE,aAAa,CAAC,CAAC,CAAC;QACxC,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC;KACnC;IAED,kBAAkB,EAAE;QAClB,kCAAkC,EAAE,YAAY,CAAC,CAAC,CAAC;QACnD,gCAAgC,EAAE,YAAY,CAAC,CAAC,CAAC;QACjD,yBAAyB,EAAE,UAAU,CAAC,CAAC,CAAC;QACxC,gCAAgC,EAAE,YAAY,CAAC,CAAC,CAAC;QACjD,0BAA0B,EAAE,UAAU,CAAC,CAAC,CAAC;KAC1C;IAED,SAAS,EAAE;QACT,+BAA+B,EAAE,UAAU,CAAC,EAAE,CAAC;QAC/C,2BAA2B,EAAE,UAAU,CAAC,EAAE,CAAC;QAC3C,gCAAgC,EAAE,UAAU,CAAC,EAAE,CAAC;QAChD,4BAA4B,EAAE,UAAU,CAAC,EAAE,CAAC;QAC5C,uBAAuB,EAAE,UAAU,CAAC,EAAE,CAAC;QACvC,uBAAuB,EAAE,UAAU,CAAC,EAAE,CAAC;QACvC,8BAA8B,EAAE,YAAY,CAAC,EAAE,CAAC;QAChD,+BAA+B,EAAE,YAAY,CAAC,EAAE,CAAC;QACjD,uBAAuB,EAAE,cAAc,CAAC,EAAE,CAAC;KAC5C;CACO,CAAC;AAQX,MAAM,CAAC,MAAM,YAAY,GAA+C;IACtE,GAAG,cAAc,CAAC,WAAW;IAC7B,GAAG,cAAc,CAAC,mBAAmB;IACrC,GAAG,cAAc,CAAC,kBAAkB;IACpC,GAAG,cAAc,CAAC,SAAS;CAC5B,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/CustomColorPalette/utils.tsx"],"names":[],"mappings":"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"}
@@ -1,29 +1,40 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { getSortingIcon, getTableBody, Sort } from "./utils";
2
+ import { getSortingIcon, getTableBody, Sort, getColumnFilterInput, FuzzyFilter } from "./utils";
3
3
  import { ActionIcon, Group, ScrollArea, Table } from "@mantine/core";
4
- import { flexRender, getCoreRowModel, getSortedRowModel, useReactTable, } from "@tanstack/react-table";
4
+ import { flexRender, getCoreRowModel, getSortedRowModel, getFilteredRowModel, useReactTable, } from "@tanstack/react-table";
5
5
  import { useState } from "react";
6
6
  export function CustomTable({ data, isLoading, error, columns, }) {
7
7
  const [sorting, setSorting] = useState([]);
8
+ const [columnFilters, setColumnFilters] = useState([]);
8
9
  const table = useReactTable({
9
10
  data,
10
11
  columns,
11
12
  getCoreRowModel: getCoreRowModel(),
12
13
  getSortedRowModel: getSortedRowModel(),
14
+ getFilteredRowModel: getFilteredRowModel(),
13
15
  onSortingChange: setSorting,
16
+ onColumnFiltersChange: setColumnFilters,
14
17
  state: {
15
18
  sorting,
19
+ columnFilters,
20
+ },
21
+ filterFns: {
22
+ fuzzyFilter: FuzzyFilter,
16
23
  },
17
24
  });
18
- return (_jsx(ScrollArea, { children: _jsxs(Table, { highlightOnHover: true, withTableBorder: true, withColumnBorders: true, children: [_jsx(Table.Thead, { children: table.getHeaderGroups().map((headerGroup) => {
19
- return (_jsx(Table.Tr, { children: headerGroup.headers.map((header) => {
20
- return (_jsx(Table.Th, { onClick: header.column.getToggleSortingHandler(), children: _jsxs(Group, { gap: "xs", wrap: "nowrap", children: [flexRender(header.column.columnDef.header, header.getContext()), _jsx(ActionIcon, { variant: "subtle", size: "sm", children: (() => {
21
- const sortState = header.column.getIsSorted();
22
- const sortOrder = sortState === false ? Sort.Default : sortState;
23
- return getSortingIcon(sortOrder, header.column.getCanSort());
24
- })() })] }) }, header.id));
25
- }) }, headerGroup.id));
26
- }) }), _jsx(Table.Tbody, { children: getTableBody({
25
+ return (_jsx(ScrollArea, { children: _jsxs(Table, { highlightOnHover: true, withTableBorder: true, withColumnBorders: true, children: [_jsxs(Table.Thead, { children: [table.getHeaderGroups().map((headerGroup) => {
26
+ return (_jsx(Table.Tr, { children: headerGroup.headers.map((header) => {
27
+ return (_jsx(Table.Th, { onClick: header.column.getToggleSortingHandler(), children: _jsxs(Group, { gap: "xs", wrap: "nowrap", children: [flexRender(header.column.columnDef.header, header.getContext()), _jsx(ActionIcon, { variant: "subtle", size: "sm", children: (() => {
28
+ const sortState = header.column.getIsSorted();
29
+ const sortOrder = sortState === false ? Sort.Default : sortState;
30
+ return getSortingIcon(sortOrder, header.column.getCanSort());
31
+ })() })] }) }, header.id));
32
+ }) }, headerGroup.id));
33
+ }), table.getHeaderGroups().map((headerGroup) => {
34
+ return (_jsx(Table.Tr, { children: headerGroup.headers.map((header) => {
35
+ return _jsx(Table.Th, { children: getColumnFilterInput(header.column) }, header.id);
36
+ }) }, headerGroup.id));
37
+ })] }), _jsx(Table.Tbody, { children: getTableBody({
27
38
  isLoading,
28
39
  error,
29
40
  tableRows: table.getRowModel().rows,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/CustomTable/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EACL,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,aAAa,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAWjC,MAAM,UAAU,WAAW,CAAI,EAC7B,IAAI,EACJ,SAAS,EACT,KAAK,EACL,OAAO,GACa;IACpB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAe,EAAE,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,aAAa,CAAC;QAC1B,IAAI;QACJ,OAAO;QACP,eAAe,EAAE,eAAe,EAAE;QAClC,iBAAiB,EAAE,iBAAiB,EAAE;QACtC,eAAe,EAAE,UAAU;QAC3B,KAAK,EAAE;YACL,OAAO;SACR;KACF,CAAC,CAAC;IAEH,OAAO,CACL,KAAC,UAAU,cACT,MAAC,KAAK,IAAC,gBAAgB,QAAC,eAAe,QAAC,iBAAiB,mBACvD,KAAC,KAAK,CAAC,KAAK,cACT,KAAK,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;wBAC3C,OAAO,CACL,KAAC,KAAK,CAAC,EAAE,cACN,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gCAClC,OAAO,CACL,KAAC,KAAK,CAAC,EAAE,IAAiB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,uBAAuB,EAAE,YACxE,MAAC,KAAK,IAAC,GAAG,EAAC,IAAI,EAAC,IAAI,EAAC,QAAQ,aAC1B,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,EAChE,KAAC,UAAU,IAAC,OAAO,EAAC,QAAQ,EAAC,IAAI,EAAC,IAAI,YACnC,CAAC,GAAG,EAAE;oDACL,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;oDAC9C,MAAM,SAAS,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;oDACjE,OAAO,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;gDAC/D,CAAC,CAAC,EAAE,GACO,IACP,IAVK,MAAM,CAAC,EAAE,CAWb,CACZ,CAAC;4BACJ,CAAC,CAAC,IAhBW,WAAW,CAAC,EAAE,CAiBlB,CACZ,CAAC;oBACJ,CAAC,CAAC,GACU,EACd,KAAC,KAAK,CAAC,KAAK,cACT,YAAY,CAAC;wBACZ,SAAS;wBACT,KAAK;wBACL,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI;wBACnC,WAAW,EAAE,OAAO,CAAC,MAAM;qBAC5B,CAAC,GACU,IACR,GACG,CACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/CustomTable/index.tsx"],"names":[],"mappings":"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"}
@@ -15,12 +15,17 @@ const ColumnHelper = createColumnHelper();
15
15
  const Columns = [
16
16
  ColumnHelper.accessor("id", {
17
17
  header: "ID",
18
+ enableColumnFilter: false,
18
19
  }),
19
20
  ColumnHelper.accessor("name", {
20
21
  header: "Name",
22
+ enableColumnFilter: true,
23
+ filterFn: "fuzzyFilter",
21
24
  }),
22
25
  ColumnHelper.accessor("email", {
23
26
  header: "Email",
27
+ enableColumnFilter: true,
28
+ filterFn: "fuzzyFilter",
24
29
  }),
25
30
  ColumnHelper.accessor("createdAt", {
26
31
  id: "createdAtDate",
@@ -28,6 +33,8 @@ const Columns = [
28
33
  cell: ({ getValue }) => {
29
34
  return new Date(getValue()).toLocaleString();
30
35
  },
36
+ enableColumnFilter: true,
37
+ filterFn: "fuzzyFilter",
31
38
  }),
32
39
  ];
33
40
  export default {
@@ -1 +1 @@
1
- {"version":3,"file":"index.stories.js","sourceRoot":"","sources":["../../../../src/components/CustomTable/index.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAU3D,MAAM,SAAS,GAAgB;IAC7B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,qBAAqB,CAAC,EAAE;IAChG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,qBAAqB,CAAC,EAAE;IAC5F;QACE,EAAE,EAAE,CAAC;QACL,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,qBAAqB;QAC5B,SAAS,EAAE,IAAI,IAAI,CAAC,qBAAqB,CAAC;KAC3C;CACF,CAAC;AAEF,MAAM,YAAY,GAAG,kBAAkB,EAAa,CAAC;AAErD,MAAM,OAAO,GAAG;IACd,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE;QAC1B,MAAM,EAAE,IAAI;KACb,CAAC;IAEF,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE;QAC5B,MAAM,EAAE,MAAM;KACf,CAAC;IAEF,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE;QAC7B,MAAM,EAAE,OAAO;KAChB,CAAC;IAEF,YAAY,CAAC,QAAQ,CAAC,WAAW,EAAE;QACjC,EAAE,EAAE,eAAe;QACnB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACrB,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC;QAC/C,CAAC;KACF,CAAC;CACH,CAAC;AAEF,eAAe;IACb,KAAK,EAAE,wBAAwB;IAC/B,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,IAAI;KACZ;CAC0B,CAAC;AAE9B,MAAM,CAAC,MAAM,OAAO,GAAiC;IACnD,MAAM,EAAE,SAAS,OAAO,CAAC,IAAI;QAC3B,OAAO,KAAC,WAAW,OAAK,IAAI,GAAI,CAAC;IACnC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"index.stories.js","sourceRoot":"","sources":["../../../../src/components/CustomTable/index.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAU3D,MAAM,SAAS,GAAgB;IAC7B,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,qBAAqB,CAAC,EAAE;IAChG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,qBAAqB,CAAC,EAAE;IAC5F;QACE,EAAE,EAAE,CAAC;QACL,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,qBAAqB;QAC5B,SAAS,EAAE,IAAI,IAAI,CAAC,qBAAqB,CAAC;KAC3C;CACF,CAAC;AAEF,MAAM,YAAY,GAAG,kBAAkB,EAAa,CAAC;AAErD,MAAM,OAAO,GAAG;IACd,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE;QAC1B,MAAM,EAAE,IAAI;QACZ,kBAAkB,EAAE,KAAK;KAC1B,CAAC;IAEF,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE;QAC5B,MAAM,EAAE,MAAM;QACd,kBAAkB,EAAE,IAAI;QACxB,QAAQ,EAAE,aAAa;KACxB,CAAC;IAEF,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE;QAC7B,MAAM,EAAE,OAAO;QACf,kBAAkB,EAAE,IAAI;QACxB,QAAQ,EAAE,aAAa;KACxB,CAAC;IAEF,YAAY,CAAC,QAAQ,CAAC,WAAW,EAAE;QACjC,EAAE,EAAE,eAAe;QACnB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACrB,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC;QAC/C,CAAC;QACD,kBAAkB,EAAE,IAAI;QACxB,QAAQ,EAAE,aAAa;KACxB,CAAC;CACH,CAAC;AAEF,eAAe;IACb,KAAK,EAAE,wBAAwB;IAC/B,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,IAAI;KACZ;CAC0B,CAAC;AAE9B,MAAM,CAAC,MAAM,OAAO,GAAiC;IACnD,MAAM,EAAE,SAAS,OAAO,CAAC,IAAI;QAC3B,OAAO,KAAC,WAAW,OAAK,IAAI,GAAI,CAAC;IACnC,CAAC;CACF,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Alert, Skeleton, Table } from "@mantine/core";
2
+ import { Alert, Skeleton, Table, TextInput } from "@mantine/core";
3
3
  import { IconChevronUp, IconChevronDown, IconSelector } from "@tabler/icons-react";
4
+ import { rankItem } from "@tanstack/match-sorter-utils";
4
5
  import { flexRender } from "@tanstack/react-table";
5
6
  export const Sort = {
6
7
  Ascending: "asc",
@@ -43,4 +44,14 @@ export function getTableBody({ isLoading, error, tableRows, columnCount, }) {
43
44
  }
44
45
  return tableBody;
45
46
  }
47
+ export function getColumnFilterInput(column) {
48
+ return column.getCanFilter() ? (_jsx(TextInput, { placeholder: typeof column.columnDef.header === "string" ? `Filter ${column.columnDef.header}` : "Filter", value: (column.getFilterValue() ?? ""), onChange: (event) => {
49
+ column.setFilterValue(event.target.value);
50
+ } })) : null;
51
+ }
52
+ export const FuzzyFilter = (row, columnId, filterValue, addMeta) => {
53
+ const itemRank = rankItem(row.getValue(columnId), (filterValue ?? ""));
54
+ addMeta({ itemRank });
55
+ return itemRank.passed;
56
+ };
46
57
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/CustomTable/utils.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/CustomTable/utils.tsx"],"names":[],"mappings":"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"}