@rws-aoa/react-library 8.2.2 → 8.2.8
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.
- package/dist/chunks/{FieldError.7Lfieqt3.js → FieldError.C1l5S0jl.js} +3 -3
- package/dist/chunks/{FieldError.7Lfieqt3.js.map → FieldError.C1l5S0jl.js.map} +1 -1
- package/dist/chunks/{compiler-runtime.CrLvXwKf.js → compiler-runtime.BNHg76kC.js} +3 -3
- package/dist/chunks/{compiler-runtime.CrLvXwKf.js.map → compiler-runtime.BNHg76kC.js.map} +1 -1
- package/dist/chunks/{lodash.DPVO3Hgf.js → lodash.CdkV4gpV.js} +94 -77
- package/dist/chunks/lodash.CdkV4gpV.js.map +1 -0
- package/dist/components-domain/ivon-project-planning/IvonProjectPlanning.js +2 -2
- package/dist/components-domain/ivon-project-planning/IvonProjectPlanning.js.map +1 -1
- package/dist/components-generic/_pages/project-page/ProjectPage.js +88 -97
- package/dist/components-generic/_pages/project-page/ProjectPage.js.map +1 -1
- package/dist/components-generic/atoms/_menu/menu-item/MenuItem.js +1 -1
- package/dist/components-generic/atoms/_menu/user-menu/UserMenu.js +9 -9
- package/dist/components-generic/atoms/_menu/user-menu/UserMenu.js.map +1 -1
- package/dist/components-generic/atoms/button/Button.js +1 -1
- package/dist/components-generic/atoms/icon-button/IconButton.js +2 -2
- package/dist/components-generic/atoms/input/Input.js +1 -1
- package/dist/components-generic/atoms/list/List.js +1 -1
- package/dist/components-generic/atoms/logo/Logo.js +44 -44
- package/dist/components-generic/atoms/logo/Logo.js.map +1 -1
- package/dist/components-generic/atoms/no-permission/NoPermission.js +1 -1
- package/dist/components-generic/atoms/notification/Notification.js +1 -1
- package/dist/components-generic/atoms/notification/_icons/Error.js +4 -4
- package/dist/components-generic/atoms/notification/_icons/Error.js.map +1 -1
- package/dist/components-generic/atoms/notification/_icons/Info.js +4 -4
- package/dist/components-generic/atoms/notification/_icons/Info.js.map +1 -1
- package/dist/components-generic/atoms/notification/_icons/Success.js +4 -4
- package/dist/components-generic/atoms/notification/_icons/Success.js.map +1 -1
- package/dist/components-generic/atoms/notification/_icons/Warning.js +3 -3
- package/dist/components-generic/atoms/notification/_icons/Warning.js.map +1 -1
- package/dist/components-generic/atoms/section-header/SectionHeader.js +1 -1
- package/dist/components-generic/atoms/selection-buttons/checkbox/Checkbox.js +1 -1
- package/dist/components-generic/atoms/selection-buttons/radio-button/RadioButton.js +1 -1
- package/dist/components-generic/atoms/table/Table.d.ts.map +1 -1
- package/dist/components-generic/atoms/table/Table.js +15 -14
- package/dist/components-generic/atoms/table/Table.js.map +1 -1
- package/dist/components-generic/atoms/table/_QuickSearchToolbar.js +756 -722
- package/dist/components-generic/atoms/table/_QuickSearchToolbar.js.map +1 -1
- package/dist/components-generic/atoms/tooltip/Tooltip.js +1 -1
- package/dist/components-generic/atoms/zero-width-space/ZeroWidthSpace.js +1 -1
- package/dist/components-generic/molecules/field-error/FieldError.js +2 -2
- package/dist/components-generic/molecules/file-dropzone/FileDropzone.js +3 -3
- package/dist/components-generic/molecules/file-dropzone/FileDropzone.js.map +1 -1
- package/dist/components-generic/molecules/form-error/FormError.js +2 -2
- package/dist/components-generic/molecules/form-modal/FormModal.js +3 -3
- package/dist/components-generic/molecules/modal/Modal.js +2 -2
- package/dist/components-generic/molecules/modal-close-button/ModalCloseButton.js +3 -3
- package/dist/components-generic/molecules/modal-close-button/ModalCloseButton.js.map +1 -1
- package/dist/components-generic/molecules/navigation-bar/NavigationBar.js +5 -5
- package/dist/components-generic/molecules/navigation-bar/NavigationBar.js.map +1 -1
- package/dist/components-generic/molecules/no-label-number-field/NoLabelNumberField.js +2 -2
- package/dist/components-generic/molecules/upload-button/UploadButton.js +3 -3
- package/dist/components-generic/molecules/upload-button/UploadButton.js.map +1 -1
- package/dist/components-generic/organisms/content-page/ContentPage.js +1 -1
- package/dist/contexts/TanstackFormContext.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +27 -27
- package/dist/chunks/lodash.DPVO3Hgf.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Success.js","sources":["../../../../../src/components-generic/atoms/notification/_icons/Success.tsx"],"sourcesContent":["export function IconSuccess() {\n return (\n <svg\n aria-label='icon success'\n height='24px'\n version='1.1'\n viewBox='0 0 24 24'\n width='24px'\n x='0px'\n xmlSpace='preserve'\n xmlns='http://www.w3.org/2000/svg'\n xmlnsXlink='http://www.w3.org/1999/xlink'\n y='0px'\n >\n <g>\n <g>\n <rect height='24' style={{ fill: 'none' }} width='24' />\n </g>\n </g>\n <g>\n <g>\n <path\n d='M22.04,3.78c-0.16-0.95-0.88-1.67-1.83-1.83C17.48,1.5,12.91,1.5,12,1.5c-0.91,0-5.48,0-8.22,0.46\n\t\t\tC2.83,2.11,2.11,2.83,1.96,3.78C1.5,6.52,1.5,11.09,1.5,12s0,5.48,0.46,8.22c0.16,0.95,0.88,1.67,1.83,1.83\n\t\t\tc2.74,0.46,7.3,0.46,8.22,0.46c0.91,0,5.48,0,8.22-0.46c0.95-0.16,1.67-0.88,1.83-1.83c0.46-2.74,0.46-7.3,0.46-8.22\n\t\t\tC22.5,9.26,22.5,6.52,22.04,3.78z'\n style={{ fill: '#39870C' }}\n />\n <path\n d='M16.5,7.35c-0.31-0.23-0.75-0.19-1.01,0.1l-4.4,4.95l-2.65-2.3C8.16,9.86,7.75,9.86,7.47,10.1\n\t\t\tc-0.28,0.24-0.35,0.65-0.16,0.97l3.2,5.38c0.14,0.23,0.38,0.37,0.64,0.37c0,0,0,0,0,0c0.26,0,0.51-0.14,0.64-0.36l4.89-8.09\n\t\t\tC16.89,8.02,16.81,7.59,16.5,7.35z'\n style={{ fill: '#FFFFFF' }}\n />\n </g>\n </g>\n </svg>\n );\n}\n"],"names":["IconSuccess","$","_c","t0","Symbol","for","jsx","fill","t1","t2","jsxs"],"mappings":";;AAAO,SAAAA,IAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA;AAAA,MAAAC;AAAA,EAAAF,EAAA,CAAA,MAAAG,
|
|
1
|
+
{"version":3,"file":"Success.js","sources":["../../../../../src/components-generic/atoms/notification/_icons/Success.tsx"],"sourcesContent":["export function IconSuccess() {\n return (\n <svg\n aria-label='icon success'\n height='24px'\n version='1.1'\n viewBox='0 0 24 24'\n width='24px'\n x='0px'\n xmlSpace='preserve'\n xmlns='http://www.w3.org/2000/svg'\n xmlnsXlink='http://www.w3.org/1999/xlink'\n y='0px'\n >\n <g>\n <g>\n <rect height='24' style={{ fill: 'none' }} width='24' />\n </g>\n </g>\n <g>\n <g>\n <path\n d='M22.04,3.78c-0.16-0.95-0.88-1.67-1.83-1.83C17.48,1.5,12.91,1.5,12,1.5c-0.91,0-5.48,0-8.22,0.46\n\t\t\tC2.83,2.11,2.11,2.83,1.96,3.78C1.5,6.52,1.5,11.09,1.5,12s0,5.48,0.46,8.22c0.16,0.95,0.88,1.67,1.83,1.83\n\t\t\tc2.74,0.46,7.3,0.46,8.22,0.46c0.91,0,5.48,0,8.22-0.46c0.95-0.16,1.67-0.88,1.83-1.83c0.46-2.74,0.46-7.3,0.46-8.22\n\t\t\tC22.5,9.26,22.5,6.52,22.04,3.78z'\n style={{ fill: '#39870C' }}\n />\n <path\n d='M16.5,7.35c-0.31-0.23-0.75-0.19-1.01,0.1l-4.4,4.95l-2.65-2.3C8.16,9.86,7.75,9.86,7.47,10.1\n\t\t\tc-0.28,0.24-0.35,0.65-0.16,0.97l3.2,5.38c0.14,0.23,0.38,0.37,0.64,0.37c0,0,0,0,0,0c0.26,0,0.51-0.14,0.64-0.36l4.89-8.09\n\t\t\tC16.89,8.02,16.81,7.59,16.5,7.35z'\n style={{ fill: '#FFFFFF' }}\n />\n </g>\n </g>\n </svg>\n );\n}\n"],"names":["IconSuccess","$","_c","t0","Symbol","for","jsx","fill","t1","t2","jsxs"],"mappings":";;AAAO,SAAAA,IAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA;AAAA,MAAAC;AAAA,EAAAF,EAAA,CAAA,MAAAG,uBAAAC,IAAA,2BAAA,KAcDF,IAAA,gBAAAG,EAAA,OACE,UAAA,gBAAAA,EAAA,KAAA,EACE,4BAAA,QAAA,EAAa,QAAA,MAAY,OAAA;AAAA,IAAAC,MAAQ;AAAA,EAAA,GAAgB,OAAA,SACnD,EAAA,CACF,GAAIN,OAAAE,KAAAA,IAAAF,EAAA,CAAA;AAAA,MAAAO;AAAA,EAAAP,EAAA,CAAA,MAAAG,uBAAAC,IAAA,2BAAA,KAGAG,IAAA,gBAAAF,EAAA,QAAA,EACI;;;sCAIK,OAAA;AAAA,IAAAC,MAAQ;AAAA,EAAA,GAAW,GAC1BN,OAAAO,KAAAA,IAAAP,EAAA,CAAA;AAAA,MAAAQ;AAAA,SAAAR,EAAA,CAAA,MAAAG,uBAAAC,IAAA,2BAAA,KAzBRI,IAAA,gBAAAC,EAAA,SACa,cAAA,gBACJ,QAAA,QACC,SAAA,OACA,SAAA,aACF,OAAA,QACJ,GAAA,OACO,UAAA,YACH,OAAA,8BACK,YAAA,gCACT,GAAA,OAEFP,UAAAA;AAAAA,IAAAA;AAAAA,IAKA,gBAAAG,EAAA,KAAA,EACE,UAAA,gBAAAI,EAAA,KAAA,EACEF,UAAAA;AAAAA,MAAAA;AAAAA,MAOA,gBAAAF,EAAA,QAAA,EACI,GAAA;AAAA;AAAA,uCAGK,OAAA;AAAA,QAAAC,MAAQ;AAAA,MAAA,EAAU,CAAC;AAAA,IAAA,EAAA,CAE9B,EAAA,CACF;AAAA,EAAA,GACF,GAAMN,OAAAQ,KAAAA,IAAAR,EAAA,CAAA,GAlCNQ;AAkCM;"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { jsx as e, jsxs as r } from "react/jsx-runtime";
|
|
2
|
-
import { c as t } from "../../../../chunks/compiler-runtime.
|
|
2
|
+
import { c as t } from "../../../../chunks/compiler-runtime.BNHg76kC.js";
|
|
3
3
|
import { memo as i } from "react";
|
|
4
4
|
const s = i(() => {
|
|
5
5
|
const l = t.c(2);
|
|
6
6
|
let c;
|
|
7
|
-
l[0] === Symbol.for("react.memo_cache_sentinel") ? (c = /* @__PURE__ */ e("g", { children: /* @__PURE__ */ e("g", { children: /* @__PURE__ */ e("rect", { height: "24", style: {
|
|
7
|
+
l[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (c = /* @__PURE__ */ e("g", { children: /* @__PURE__ */ e("g", { children: /* @__PURE__ */ e("rect", { height: "24", style: {
|
|
8
8
|
fill: "none"
|
|
9
9
|
}, width: "24" }) }) }), l[0] = c) : c = l[0];
|
|
10
10
|
let n;
|
|
11
|
-
return l[1] === Symbol.for("react.memo_cache_sentinel") ? (n = /* @__PURE__ */ r("svg", { "aria-label": "icon warning", height: "24px", version: "1.1", viewBox: "0 0 24 24", width: "24px", x: "0px", xmlSpace: "preserve", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", y: "0px", children: [
|
|
11
|
+
return l[1] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (n = /* @__PURE__ */ r("svg", { "aria-label": "icon warning", height: "24px", version: "1.1", viewBox: "0 0 24 24", width: "24px", x: "0px", xmlSpace: "preserve", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", y: "0px", children: [
|
|
12
12
|
c,
|
|
13
13
|
/* @__PURE__ */ e("g", { children: /* @__PURE__ */ r("g", { children: [
|
|
14
14
|
/* @__PURE__ */ e("path", { d: `M23.38,19.64L13.67,2.47c-0.73-1.3-2.6-1.3-3.34,0L0.62,19.64c-0.72,1.28,0.2,2.86,1.67,2.86h19.43
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Warning.js","sources":["../../../../../src/components-generic/atoms/notification/_icons/Warning.tsx"],"sourcesContent":["import { memo } from 'react';\n\nexport const IconWarning = memo(() => (\n <svg\n aria-label='icon warning'\n height='24px'\n version='1.1'\n viewBox='0 0 24 24'\n width='24px'\n x='0px'\n xmlSpace='preserve'\n xmlns='http://www.w3.org/2000/svg'\n xmlnsXlink='http://www.w3.org/1999/xlink'\n y='0px'\n >\n <g>\n <g>\n <rect height='24' style={{ fill: 'none' }} width='24' />\n </g>\n </g>\n <g>\n <g>\n <path\n d='M23.38,19.64L13.67,2.47c-0.73-1.3-2.6-1.3-3.34,0L0.62,19.64c-0.72,1.28,0.2,2.86,1.67,2.86h19.43\n\t\t\tC23.18,22.5,24.1,20.92,23.38,19.64z'\n style={{ fill: '#FFB612' }}\n />\n <g>\n <path\n d='M10.54,17.45c0-0.44,0.12-0.82,0.36-1.12c0.24-0.31,0.6-0.46,1.09-0.46c0.48,0,0.85,0.14,1.1,0.4\n\t\t\t\tc0.25,0.27,0.38,0.66,0.38,1.18c0,0.43-0.12,0.8-0.36,1.09c-0.24,0.29-0.6,0.44-1.09,0.44c-0.48,0-0.85-0.13-1.1-0.39\n\t\t\t\tC10.67,18.34,10.54,17.96,10.54,17.45z M10.85,7.18l2.48-0.2l-0.22,5.51v2.63l-2.27,0.05V7.18z'\n />\n </g>\n </g>\n </g>\n </svg>\n));\n"],"names":["IconWarning","memo","$","_c","t0","Symbol","for","jsx","fill","t1","jsxs"],"mappings":";;;AAEO,MAAMA,IAAcC,EAAK,MAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA;AAAA,MAAAC;AAAA,EAAAF,EAAA,CAAA,MAAAG,
|
|
1
|
+
{"version":3,"file":"Warning.js","sources":["../../../../../src/components-generic/atoms/notification/_icons/Warning.tsx"],"sourcesContent":["import { memo } from 'react';\n\nexport const IconWarning = memo(() => (\n <svg\n aria-label='icon warning'\n height='24px'\n version='1.1'\n viewBox='0 0 24 24'\n width='24px'\n x='0px'\n xmlSpace='preserve'\n xmlns='http://www.w3.org/2000/svg'\n xmlnsXlink='http://www.w3.org/1999/xlink'\n y='0px'\n >\n <g>\n <g>\n <rect height='24' style={{ fill: 'none' }} width='24' />\n </g>\n </g>\n <g>\n <g>\n <path\n d='M23.38,19.64L13.67,2.47c-0.73-1.3-2.6-1.3-3.34,0L0.62,19.64c-0.72,1.28,0.2,2.86,1.67,2.86h19.43\n\t\t\tC23.18,22.5,24.1,20.92,23.38,19.64z'\n style={{ fill: '#FFB612' }}\n />\n <g>\n <path\n d='M10.54,17.45c0-0.44,0.12-0.82,0.36-1.12c0.24-0.31,0.6-0.46,1.09-0.46c0.48,0,0.85,0.14,1.1,0.4\n\t\t\t\tc0.25,0.27,0.38,0.66,0.38,1.18c0,0.43-0.12,0.8-0.36,1.09c-0.24,0.29-0.6,0.44-1.09,0.44c-0.48,0-0.85-0.13-1.1-0.39\n\t\t\t\tC10.67,18.34,10.54,17.96,10.54,17.45z M10.85,7.18l2.48-0.2l-0.22,5.51v2.63l-2.27,0.05V7.18z'\n />\n </g>\n </g>\n </g>\n </svg>\n));\n"],"names":["IconWarning","memo","$","_c","t0","Symbol","for","jsx","fill","t1","jsxs"],"mappings":";;;AAEO,MAAMA,IAAcC,EAAK,MAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA;AAAA,MAAAC;AAAA,EAAAF,EAAA,CAAA,MAAAG,uBAAAC,IAAA,2BAAA,KAa5BF,IAAA,gBAAAG,EAAA,OACE,UAAA,gBAAAA,EAAA,KAAA,EACE,4BAAA,QAAA,EAAa,QAAA,MAAY,OAAA;AAAA,IAAAC,MAAQ;AAAA,EAAA,GAAgB,OAAA,SACnD,EAAA,CACF,GAAIN,OAAAE,KAAAA,IAAAF,EAAA,CAAA;AAAA,MAAAO;AAAA,SAAAP,EAAA,CAAA,MAAAG,uBAAAC,IAAA,2BAAA,KAhBNG,IAAA,gBAAAC,EAAA,SACa,cAAA,gBACJ,QAAA,QACC,SAAA,OACA,SAAA,aACF,OAAA,QACJ,GAAA,OACO,UAAA,YACH,OAAA,8BACK,YAAA,gCACT,GAAA,OAEFN,UAAAA;AAAAA,IAAAA;AAAAA,IAKA,gBAAAG,EAAA,KAAA,EACE,UAAA,gBAAAG,EAAA,KAAA,EACE,UAAA;AAAA,MAAA,gBAAAH,EAAA,QAAA,EACI,GAAA;AAAA,yCAEK,OAAA;AAAA,QAAAC,MAAQ;AAAA,MAAA,GAAW;AAAA,+BAG1B,UAAA,gBAAAD,EAAA,QAAA,EACI;;kGAEkF,EAAA,CAExF;AAAA,IAAA,EAAA,CACF,EAAA,CACF;AAAA,EAAA,GACF,GAAML,OAAAO,KAAAA,IAAAP,EAAA,CAAA,GAjCNO;AAiCM,CACP;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs as e, jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import { Box as s, Typography as a, Divider as m, typographyClasses as l } from "@mui/material";
|
|
3
|
-
import { l as x } from "../../../chunks/lodash.
|
|
3
|
+
import { l as x } from "../../../chunks/lodash.CdkV4gpV.js";
|
|
4
4
|
function f({
|
|
5
5
|
title: i,
|
|
6
6
|
subtitle: t = "",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import { CheckBoxOutlineBlank as l, CheckBox as t } from "@mui/icons-material";
|
|
3
3
|
import { FormControlLabel as i, typographyClasses as a, Checkbox as c } from "@mui/material";
|
|
4
|
-
import { l as s } from "../../../../chunks/lodash.
|
|
4
|
+
import { l as s } from "../../../../chunks/lodash.CdkV4gpV.js";
|
|
5
5
|
import { FontNormalSxProps as m } from "../../../../_constants.js";
|
|
6
6
|
function h({
|
|
7
7
|
label: e,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as r } from "react/jsx-runtime";
|
|
2
2
|
import { FormControlLabel as a, typographyClasses as l, Radio as s } from "@mui/material";
|
|
3
|
-
import { l as e } from "../../../../chunks/lodash.
|
|
3
|
+
import { l as e } from "../../../../chunks/lodash.CdkV4gpV.js";
|
|
4
4
|
import { FontNormalSxProps as i } from "../../../../_constants.js";
|
|
5
5
|
function n({
|
|
6
6
|
label: t,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../src/components-generic/atoms/table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EAGvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAgC,KAAK,GAAG,EAAE,MAAM,OAAO,CAAC;AAI/D,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB;IAC3E;;;OAGG;IACH,QAAQ,CAAC,EAAE;QACT,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;CACzB;AAED,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;AAEtE,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,GAAG,iBAAiB,GAAG,OAAO,CAAC,CAAC;AAEtH,KAAK,SAAS;AACZ;;GAEG;AACD;IAAE,OAAO,CAAC,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE;AACrC;;GAEG;GACD;IAAE,OAAO,CAAC,YAAY,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAAC,IAAI,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAE3F,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,IAAI,SAAS,GAAG;IAC9D;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;IACvC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAClC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAC/B;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,IAAI,CACtC,aAAa,CAAC,CAAC,CAAC,EACd,QAAQ,GACR,mBAAmB,GACnB,qBAAqB,GACrB,4BAA4B,GAC5B,UAAU,GACV,kBAAkB,GAClB,iBAAiB,GACjB,SAAS,GACT,2BAA2B,GAC3B,mBAAmB,CACtB,CAAC;IACF;;OAEG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,GAAG,iBAAiB,GAAG,OAAO,CAAC,CAAC;IAClH;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,GAAG;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;GAYG;AAEH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../src/components-generic/atoms/table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EAGvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAgC,KAAK,GAAG,EAAE,MAAM,OAAO,CAAC;AAI/D,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB;IAC3E;;;OAGG;IACH,QAAQ,CAAC,EAAE;QACT,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;CACzB;AAED,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;AAEtE,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,GAAG,iBAAiB,GAAG,OAAO,CAAC,CAAC;AAEtH,KAAK,SAAS;AACZ;;GAEG;AACD;IAAE,OAAO,CAAC,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE;AACrC;;GAEG;GACD;IAAE,OAAO,CAAC,YAAY,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAAC,IAAI,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAE3F,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,IAAI,SAAS,GAAG;IAC9D;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;IACvC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAClC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAC/B;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,IAAI,CACtC,aAAa,CAAC,CAAC,CAAC,EACd,QAAQ,GACR,mBAAmB,GACnB,qBAAqB,GACrB,4BAA4B,GAC5B,UAAU,GACV,kBAAkB,GAClB,iBAAiB,GACjB,SAAS,GACT,2BAA2B,GAC3B,mBAAmB,CACtB,CAAC;IACF;;OAEG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,GAAG,iBAAiB,GAAG,OAAO,CAAC,CAAC;IAClH;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,GAAG;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;GAYG;AAEH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,2CAiP9E"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as F } from "react/jsx-runtime";
|
|
2
|
-
import { checkboxClasses as
|
|
3
|
-
import { GridLogicOperator as f, DataGrid as
|
|
4
|
-
import { l as p } from "../../../chunks/lodash.
|
|
5
|
-
import { useState as a, useEffect as v, useMemo as
|
|
6
|
-
import { FontNormalSxProps as
|
|
2
|
+
import { checkboxClasses as m, paginationItemClasses as D } from "@mui/material";
|
|
3
|
+
import { GridLogicOperator as f, DataGrid as G, gridClasses as t } from "@mui/x-data-grid";
|
|
4
|
+
import { l as p } from "../../../chunks/lodash.CdkV4gpV.js";
|
|
5
|
+
import { useState as a, useEffect as v, useMemo as L } from "react";
|
|
6
|
+
import { FontNormalSxProps as O } from "../../../_constants.js";
|
|
7
7
|
import { QuickSearchToolbar as R } from "./_QuickSearchToolbar.js";
|
|
8
8
|
function z({
|
|
9
9
|
...e
|
|
@@ -17,7 +17,7 @@ function z({
|
|
|
17
17
|
quickFilterLogicOperator: f.And,
|
|
18
18
|
quickFilterValues: []
|
|
19
19
|
}), [y, w] = a(null), [M, u] = a(e.data?.rowCount ?? 0), n = e.mode ?? "server", g = n === "server";
|
|
20
|
-
async function
|
|
20
|
+
async function b(o, s, c) {
|
|
21
21
|
if (g && e.getData) {
|
|
22
22
|
const P = async () => {
|
|
23
23
|
await e.getData({
|
|
@@ -32,9 +32,9 @@ function z({
|
|
|
32
32
|
v(() => {
|
|
33
33
|
u((o) => e.data?.rowCount ?? o);
|
|
34
34
|
}, [e.data?.rowCount, u]), v(() => {
|
|
35
|
-
|
|
35
|
+
b(r, l, i);
|
|
36
36
|
}, [r, l, i]);
|
|
37
|
-
const S =
|
|
37
|
+
const S = L(() => ({
|
|
38
38
|
pagination: {
|
|
39
39
|
paginationModel: r,
|
|
40
40
|
rowCount: 0
|
|
@@ -77,7 +77,7 @@ function z({
|
|
|
77
77
|
paginationRowsPerPage: "Regels per pagina",
|
|
78
78
|
footerRowSelected: (o) => `${o} regels geselecteerd`
|
|
79
79
|
}, e.localeText);
|
|
80
|
-
return /* @__PURE__ */ F(
|
|
80
|
+
return /* @__PURE__ */ F(G, { columns: e.columns, disableColumnFilter: !0, disableColumnMenu: !0, disableColumnSelector: !0, disableDensitySelector: !0, disableRowSelectionOnClick: !0, disableVirtualization: !0, filterMode: n, getRowHeight: () => "auto", ignoreDiacritics: !0, initialState: S, loading: k, localeText: $, onFilterModelChange: (o) => C(o), onPaginationModelChange: x, onSortModelChange: (o) => h(o), pageSizeOptions: [5, 10, 20, 40, 80], paginationMode: n, paginationModel: r, rowCount: g ? M : void 0, rows: e.data?.rows, showToolbar: !0, slotProps: {
|
|
81
81
|
filterPanel: {
|
|
82
82
|
filterFormProps: {
|
|
83
83
|
operatorInputProps: {
|
|
@@ -103,7 +103,7 @@ function z({
|
|
|
103
103
|
debounceMs: 500
|
|
104
104
|
},
|
|
105
105
|
mode: n,
|
|
106
|
-
getData: async () =>
|
|
106
|
+
getData: async () => b(r, l, i),
|
|
107
107
|
actionButtons: e.actionButtons,
|
|
108
108
|
localeText: e.localeText
|
|
109
109
|
},
|
|
@@ -144,6 +144,7 @@ function z({
|
|
|
144
144
|
},
|
|
145
145
|
[`.${t.columnHeader}`]: {
|
|
146
146
|
"--DataGrid-containerBackground": "var(--color-rijks-skyblue)",
|
|
147
|
+
"--DataGrid-t-header-background-base": "transparent",
|
|
147
148
|
backgroundColor: "var(--color-rijks-skyblue)",
|
|
148
149
|
color: "var(--color-text-light)"
|
|
149
150
|
},
|
|
@@ -164,10 +165,10 @@ function z({
|
|
|
164
165
|
[`.${t.cell}`]: {
|
|
165
166
|
color: "var(--color-text)"
|
|
166
167
|
},
|
|
167
|
-
[`.${
|
|
168
|
+
[`.${D.root}`]: {
|
|
168
169
|
borderRadius: 0
|
|
169
170
|
},
|
|
170
|
-
[`.${
|
|
171
|
+
[`.${m.root}`]: {
|
|
171
172
|
color: "var(--color-primary)",
|
|
172
173
|
":focus": {
|
|
173
174
|
outline: "2px dashed var(--color-text)",
|
|
@@ -178,10 +179,10 @@ function z({
|
|
|
178
179
|
color: "var(--color-disabled)"
|
|
179
180
|
}
|
|
180
181
|
},
|
|
181
|
-
[`.${t.columnHeader} .${
|
|
182
|
+
[`.${t.columnHeader} .${m.root}`]: {
|
|
182
183
|
color: "white"
|
|
183
184
|
}
|
|
184
|
-
}, e.sx,
|
|
185
|
+
}, e.sx, O), ...e.dataGridOverridableProps });
|
|
185
186
|
}
|
|
186
187
|
export {
|
|
187
188
|
z as AoaTable
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sources":["../../../../src/components-generic/atoms/table/Table.tsx"],"sourcesContent":["import { checkboxClasses, paginationItemClasses, type SxProps } from '@mui/material';\nimport {\n GridLogicOperator,\n DataGrid,\n gridClasses,\n type DataGridProps,\n type GridColDef,\n type GridGetRowsParams,\n type GridInitialState,\n type GridLocaleText,\n type GridPaginationModel,\n type GridRowModel,\n type GridValidRowModel,\n type GridSortModel,\n type GridFilterModel\n} from '@mui/x-data-grid';\nimport { merge } from 'lodash';\nimport { useEffect, useMemo, useState, type JSX } from 'react';\nimport { FontNormalSxProps } from '../../../_constants';\nimport { QuickSearchToolbar } from './_QuickSearchToolbar';\n\nexport interface AoaTableData<T extends GridValidRowModel = GridValidRowModel> {\n /**\n * Additional `pageInfo` for advanced use-cases.\n * `hasNextPage`: When row count is unknown/estimated, `hasNextPage` will be used to check if more records are available on server.\n */\n pageInfo?: {\n hasNextPage?: boolean;\n nextCursor?: string;\n };\n /**\n * To reflect updates in total `rowCount` (optional).\n * Useful when the `rowCount` is inaccurate (for example when filtering) or not available upfront.\n */\n rowCount?: number;\n /**\n * The paged, filtered and sorted items from the database\n */\n rows: GridRowModel<T>[];\n}\n\nexport type AoaTableColumns<T extends object = any> = GridColDef<T>[];\n\nexport type AoaTableQueryOptions = GridPaginationModel & Omit<GridGetRowsParams, 'end' | 'paginationModel' | 'start'>;\n\ntype ModeProps =\n /**\n * Overwrites the default mode (server) when you need pagination, filtering and sorting on the client side\n */\n | { getData?: never; mode: 'client' }\n /**\n * The Redux action that takes PaginationModel as parameter to retrieve data from the server\n */\n | { getData(queryOptions: AoaTableQueryOptions): Promise<void> | void; mode?: 'server' };\n\nexport type AoaTableProps<T extends object = any> = ModeProps & {\n /**\n * Action buttons shown in the toolbar of the table\n */\n readonly actionButtons?: JSX.Element[];\n /**\n * The column structure to display the data\n */\n readonly columns: GridColDef<T>[];\n /**\n * The TableData object to be displayed in the table\n */\n readonly data: AoaTableData<T>;\n /**\n * Data-qa tag for E2E test purposes\n */\n readonly 'data-qa'?: string;\n /**\n * Overwrite a safe selection of the {@link DataGrid} properties\n */\n readonly dataGridOverridableProps?: Pick<\n DataGridProps<T>,\n | 'apiRef'\n | 'checkboxSelection'\n | 'disableColumnFilter'\n | 'disableRowSelectionOnClick'\n | 'getRowId'\n | 'ignoreDiacritics'\n | 'isRowSelectable'\n | 'loading'\n | 'onRowSelectionModelChange'\n | 'rowSelectionModel'\n >;\n /**\n * Sets the initial query options to retain query details after opening a page and returning to the table\n */\n readonly initialQueryOptions?: GridPaginationModel & Omit<GridGetRowsParams, 'end' | 'paginationModel' | 'start'>;\n /**\n * Overwrites the default labels when you need a different language than Dutch\n */\n readonly localeText?: GridLocaleText & { refreshTable: string };\n /**\n * Material UI's property to apply styling\n */\n readonly sx?: SxProps;\n};\n\n/**\n * Constructs a table using pre-defined Rijks styling\n *\n * @param props - Props to pass to the button\n * @example\n * ```jsx\n * <AoaTable\n * getData={(queryOptions) => getMockData(queryOptions)}\n * data={mockData}\n * columns={[{ field: \"id\" }, { field: \"title\" }, { field: \"completed\" }]}\n * />\n * ```\n */\n\nexport function AoaTable<T extends object = any>({ ...props }: AoaTableProps<T>) {\n const [isLoading, setIsLoading] = useState(false);\n const [paginationModel, setPaginationModel] = useState<GridPaginationModel>({\n page: props.initialQueryOptions?.page ?? 0,\n pageSize: props.initialQueryOptions?.pageSize ?? 10\n });\n const [sortModel, setSortModel] = useState<GridSortModel>(props.initialQueryOptions?.sortModel ?? []);\n const [filterModel, setFilterModel] = useState<GridFilterModel>(\n props.initialQueryOptions?.filterModel ?? {\n items: [],\n logicOperator: GridLogicOperator.And,\n quickFilterLogicOperator: GridLogicOperator.And,\n quickFilterValues: []\n }\n );\n const [filterButtonEl, setFilterButtonEl] = useState<HTMLButtonElement | null>(null);\n\n const [rowCountState, setRowCountState] = useState(props.data?.rowCount ?? 0);\n\n const mode = props.mode ?? 'server';\n const isServerMode = mode === 'server';\n\n async function getData(paginationModel: GridPaginationModel, sortModel: GridSortModel, filterModel: GridFilterModel) {\n if (isServerMode && props.getData) {\n const fetchData = async () => {\n await props.getData({ ...paginationModel, sortModel, filterModel });\n };\n\n setIsLoading(true);\n await fetchData();\n setIsLoading(false);\n }\n }\n\n useEffect(() => {\n setRowCountState((prevRowCountState) => props.data?.rowCount ?? prevRowCountState);\n }, [props.data?.rowCount, setRowCountState]);\n\n useEffect(() => {\n void getData(paginationModel, sortModel, filterModel);\n // ESLint tells us here that we should add the `getData` function, however,\n // doing so will cause the fetching to loop infinity until the JavaScript heap overflows.\n // eslint-disable-next-line react-compiler/react-compiler\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [paginationModel, sortModel, filterModel]);\n\n const initialState: GridInitialState = useMemo(\n () => ({\n pagination: {\n paginationModel,\n rowCount: 0\n },\n sorting: {\n sortModel\n },\n filter: {\n filterModel\n }\n }),\n [paginationModel, sortModel, filterModel]\n );\n\n const mergedLocaleText = merge<Partial<GridLocaleText & { refreshTable: string }>, (GridLocaleText & { refreshTable: string }) | undefined>(\n {\n columnHeaderSortIconLabel: 'Sorteren',\n filterPanelColumns: 'Kolom',\n filterPanelInputLabel: 'Zoekterm',\n filterPanelInputPlaceholder: 'Zoeken...',\n toolbarQuickFilterPlaceholder: 'Zoeken...',\n toolbarQuickFilterLabel: 'Zoeken',\n toolbarQuickFilterDeleteIconLabel: 'Wissen',\n noRowsLabel: 'Geen regels beschikbaar',\n noResultsOverlayLabel: 'Geen regels gevonden.',\n paginationItemAriaLabel: (type) => {\n switch (type) {\n /* v8 ignore start */\n case 'first':\n return 'Ga naar eerste pagina';\n case 'last':\n return 'Ga naar laatste pagina';\n /* v8 ignore stop */\n case 'next':\n return 'Ga naar volgende pagina';\n case 'previous':\n return 'Ga naar vorige pagina';\n }\n },\n paginationDisplayedRows: ({ from, to, count }) => `${from} - ${to} van ${count}`,\n paginationRowsPerPage: 'Regels per pagina',\n footerRowSelected: (count) => `${count} regels geselecteerd`\n },\n props.localeText\n );\n\n return (\n <DataGrid\n columns={props.columns}\n disableColumnFilter\n disableColumnMenu\n disableColumnSelector\n disableDensitySelector\n disableRowSelectionOnClick\n disableVirtualization\n filterMode={mode}\n getRowHeight={() => 'auto'}\n ignoreDiacritics\n initialState={initialState}\n loading={isLoading}\n localeText={mergedLocaleText}\n onFilterModelChange={(filterModel) => setFilterModel(filterModel)}\n onPaginationModelChange={setPaginationModel}\n onSortModelChange={(sortModel) => setSortModel(sortModel)}\n pageSizeOptions={[5, 10, 20, 40, 80]}\n paginationMode={mode}\n paginationModel={paginationModel}\n rowCount={isServerMode ? rowCountState : undefined}\n rows={props.data?.rows}\n showToolbar\n slotProps={{\n filterPanel: {\n filterFormProps: {\n operatorInputProps: {\n disabled: true,\n sx: { display: 'none' }\n },\n valueInputProps: {\n sx: {\n marginLeft: '15px'\n }\n }\n }\n },\n panel: {\n target: filterButtonEl\n },\n toolbar: {\n setFilterButtonEl,\n showQuickFilter: props.dataGridOverridableProps?.disableColumnFilter === false,\n quickFilterProps: { debounceMs: 500 },\n mode,\n getData: async () => getData(paginationModel, sortModel, filterModel),\n actionButtons: props.actionButtons,\n localeText: props.localeText\n },\n root: {\n 'data-qa': props['data-qa']\n }\n }}\n slots={{ toolbar: QuickSearchToolbar }}\n sortingMode={mode}\n sx={merge(\n {\n border: 0,\n color: 'var(--color-text)',\n letterSpacing: 'normal',\n minHeight: '300px',\n\n [`&.${gridClasses['root--densityCompact']}`]: {\n [`.${gridClasses.cell}`]: {\n py: '8px'\n }\n },\n [`&.${gridClasses['root--densityStandard']}`]: {\n [`.${gridClasses.cell}`]: {\n py: '15px'\n }\n },\n [`&.${gridClasses['root--densityComfortable']}`]: {\n [`.${gridClasses.cell}`]: {\n py: '22px'\n }\n },\n\n /**\n * The 'no results' message does not show if the DataGrid does not have a fixed height.\n * Because a fixed height is not desirable, we set a min-height on the DataGrid and set\n * the min-height of the virtualScroller to half of that height.\n */\n [`.${gridClasses.virtualScroller}`]: {\n minHeight: '150px',\n overflow: 'hidden',\n position: 'relative'\n },\n\n [`.${gridClasses.columnHeader}`]: {\n '--DataGrid-containerBackground': 'var(--color-rijks-skyblue)',\n backgroundColor: 'var(--color-rijks-skyblue)',\n color: 'var(--color-text-light)'\n },\n\n [`.${gridClasses.row}`]: {\n ':hover': {\n backgroundColor: 'var(--color-rijks-skyblue-light)'\n },\n\n ':nth-of-type(even)': {\n backgroundColor: 'var(--color-rijks-grey-1)',\n\n ':hover': {\n backgroundColor: 'var(--color-rijks-skyblue-light)'\n }\n }\n },\n\n [`.${gridClasses.columnHeader}, .${gridClasses.cell}, .MuiDataGrid-columnsContainer`]: {\n borderRight: '1px solid var(--color-rijks-grey-2)'\n },\n\n [`.${gridClasses.cell}`]: {\n color: 'var(--color-text)'\n },\n\n [`.${paginationItemClasses.root}`]: {\n borderRadius: 0\n },\n\n [`.${checkboxClasses.root}`]: {\n color: 'var(--color-primary)',\n\n ':focus': {\n outline: '2px dashed var(--color-text)',\n outlineOffset: '-9px',\n borderRadius: 0\n },\n\n ':disabled': {\n color: 'var(--color-disabled)'\n }\n },\n\n [`.${gridClasses.columnHeader} .${checkboxClasses.root}`]: {\n color: 'white'\n }\n },\n props.sx,\n FontNormalSxProps\n )}\n {...props.dataGridOverridableProps}\n />\n );\n}\n"],"names":["AoaTable","props","isLoading","setIsLoading","useState","paginationModel","setPaginationModel","page","initialQueryOptions","pageSize","sortModel","setSortModel","filterModel","setFilterModel","items","logicOperator","GridLogicOperator","And","quickFilterLogicOperator","quickFilterValues","filterButtonEl","setFilterButtonEl","rowCountState","setRowCountState","data","rowCount","mode","isServerMode","getData","fetchData","useEffect","prevRowCountState","initialState","useMemo","pagination","sorting","filter","mergedLocaleText","merge","columnHeaderSortIconLabel","filterPanelColumns","filterPanelInputLabel","filterPanelInputPlaceholder","toolbarQuickFilterPlaceholder","toolbarQuickFilterLabel","toolbarQuickFilterDeleteIconLabel","noRowsLabel","noResultsOverlayLabel","paginationItemAriaLabel","type","paginationDisplayedRows","from","to","count","paginationRowsPerPage","footerRowSelected","localeText","jsx","DataGrid","columns","undefined","rows","filterPanel","filterFormProps","operatorInputProps","disabled","sx","display","valueInputProps","marginLeft","panel","target","toolbar","showQuickFilter","dataGridOverridableProps","disableColumnFilter","quickFilterProps","debounceMs","actionButtons","root","QuickSearchToolbar","border","color","letterSpacing","minHeight","gridClasses","cell","py","virtualScroller","overflow","position","columnHeader","backgroundColor","row","borderRight","paginationItemClasses","borderRadius","checkboxClasses","outline","outlineOffset","FontNormalSxProps"],"mappings":";;;;;;;AAoHO,SAASA,EAAiC;AAAA,EAAE,GAAGC;AAAwB,GAAG;AAC/E,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1C,CAACC,GAAiBC,CAAkB,IAAIF,EAA8B;AAAA,IAC1EG,MAAMN,EAAMO,qBAAqBD,QAAQ;AAAA,IACzCE,UAAUR,EAAMO,qBAAqBC,YAAY;AAAA,EAAA,CAClD,GACK,CAACC,GAAWC,CAAY,IAAIP,EAAwBH,EAAMO,qBAAqBE,aAAa,EAAE,GAC9F,CAACE,GAAaC,CAAc,IAAIT,EACpCH,EAAMO,qBAAqBI,eAAe;AAAA,IACxCE,OAAO,CAAA;AAAA,IACPC,eAAeC,EAAkBC;AAAAA,IACjCC,0BAA0BF,EAAkBC;AAAAA,IAC5CE,mBAAmB,CAAA;AAAA,EAAA,CAEvB,GACM,CAACC,GAAgBC,CAAiB,IAAIjB,EAAmC,IAAI,GAE7E,CAACkB,GAAeC,CAAgB,IAAInB,EAASH,EAAMuB,MAAMC,YAAY,CAAC,GAEtEC,IAAOzB,EAAMyB,QAAQ,UACrBC,IAAeD,MAAS;AAE9B,iBAAeE,EAAQvB,GAAsCK,GAA0BE,GAA8B;AACnH,QAAIe,KAAgB1B,EAAM2B,SAAS;AACjC,YAAMC,IAAY,YAAY;AAC5B,cAAM5B,EAAM2B,QAAQ;AAAA,UAAE,GAAGvB;AAAAA,UAAiBK,WAAAA;AAAAA,UAAWE,aAAAA;AAAAA,QAAAA,CAAa;AAAA,MACpE;AAEAT,MAAAA,EAAa,EAAI,GACjB,MAAM0B,EAAAA,GACN1B,EAAa,EAAK;AAAA,IACpB;AAAA,EACF;AAEA2B,EAAAA,EAAU,MAAM;AACdP,IAAAA,EAAkBQ,CAAAA,MAAsB9B,EAAMuB,MAAMC,YAAYM,CAAiB;AAAA,EACnF,GAAG,CAAC9B,EAAMuB,MAAMC,UAAUF,CAAgB,CAAC,GAE3CO,EAAU,MAAM;AACd,IAAKF,EAAQvB,GAAiBK,GAAWE,CAAW;AAAA,EAKtD,GAAG,CAACP,GAAiBK,GAAWE,CAAW,CAAC;AAE5C,QAAMoB,IAAiCC,EACrC,OAAO;AAAA,IACLC,YAAY;AAAA,MACV7B,iBAAAA;AAAAA,MACAoB,UAAU;AAAA,IAAA;AAAA,IAEZU,SAAS;AAAA,MACPzB,WAAAA;AAAAA,IAAAA;AAAAA,IAEF0B,QAAQ;AAAA,MACNxB,aAAAA;AAAAA,IAAAA;AAAAA,EACF,IAEF,CAACP,GAAiBK,GAAWE,CAAW,CAC1C,GAEMyB,IAAmBC,EAAAA,MACvB;AAAA,IACEC,2BAA2B;AAAA,IAC3BC,oBAAoB;AAAA,IACpBC,uBAAuB;AAAA,IACvBC,6BAA6B;AAAA,IAC7BC,+BAA+B;AAAA,IAC/BC,yBAAyB;AAAA,IACzBC,mCAAmC;AAAA,IACnCC,aAAa;AAAA,IACbC,uBAAuB;AAAA,IACvBC,yBAA0BC,CAAAA,MAAS;AACjC,cAAQA,GAAAA;AAAAA;AAAAA,QAEN,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA;AAAA,QAET,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,MAAA;AAAA,IAEb;AAAA,IACAC,yBAAyBA,CAAC;AAAA,MAAEC,MAAAA;AAAAA,MAAMC,IAAAA;AAAAA,MAAIC,OAAAA;AAAAA,IAAAA,MAAY,GAAGF,CAAI,MAAMC,CAAE,QAAQC,CAAK;AAAA,IAC9EC,uBAAuB;AAAA,IACvBC,mBAAoBF,CAAAA,MAAU,GAAGA,CAAK;AAAA,EAAA,GAExCpD,EAAMuD,UACR;AAEA,SACE,gBAAAC,EAACC,GAAA,EACC,SAASzD,EAAM0D,SACf,qBAAmB,IACnB,mBAAiB,IACjB,uBAAqB,IACrB,wBAAsB,IACtB,4BAA0B,IAC1B,uBAAqB,IACrB,YAAYjC,GACZ,cAAc,MAAM,QACpB,kBAAgB,IAChB,cAAAM,GACA,SAAS9B,GACT,YAAYmC,GACZ,qBAAsBzB,CAAAA,MAAgBC,EAAeD,CAAW,GAChE,yBAAyBN,GACzB,mBAAoBI,CAAAA,MAAcC,EAAaD,CAAS,GACxD,iBAAiB,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,GACnC,gBAAgBgB,GAChB,iBAAArB,GACA,UAAUsB,IAAeL,IAAgBsC,QACzC,MAAM3D,EAAMuB,MAAMqC,MAClB,aAAW,IACX,WAAW;AAAA,IACTC,aAAa;AAAA,MACXC,iBAAiB;AAAA,QACfC,oBAAoB;AAAA,UAClBC,UAAU;AAAA,UACVC,IAAI;AAAA,YAAEC,SAAS;AAAA,UAAA;AAAA,QAAO;AAAA,QAExBC,iBAAiB;AAAA,UACfF,IAAI;AAAA,YACFG,YAAY;AAAA,UAAA;AAAA,QACd;AAAA,MACF;AAAA,IACF;AAAA,IAEFC,OAAO;AAAA,MACLC,QAAQnD;AAAAA,IAAAA;AAAAA,IAEVoD,SAAS;AAAA,MACPnD,mBAAAA;AAAAA,MACAoD,iBAAiBxE,EAAMyE,0BAA0BC,wBAAwB;AAAA,MACzEC,kBAAkB;AAAA,QAAEC,YAAY;AAAA,MAAA;AAAA,MAChCnD,MAAAA;AAAAA,MACAE,SAAS,YAAYA,EAAQvB,GAAiBK,GAAWE,CAAW;AAAA,MACpEkE,eAAe7E,EAAM6E;AAAAA,MACrBtB,YAAYvD,EAAMuD;AAAAA,IAAAA;AAAAA,IAEpBuB,MAAM;AAAA,MACJ,WAAW9E,EAAM,SAAS;AAAA,IAAA;AAAA,EAC5B,GAEF,OAAO;AAAA,IAAEuE,SAASQ;AAAAA,EAAAA,GAClB,aAAatD,GACb,IAAIY,QACF;AAAA,IACE2C,QAAQ;AAAA,IACRC,OAAO;AAAA,IACPC,eAAe;AAAA,IACfC,WAAW;AAAA,IAEX,CAAC,KAAKC,EAAY,sBAAsB,CAAC,EAAE,GAAG;AAAA,MAC5C,CAAC,IAAIA,EAAYC,IAAI,EAAE,GAAG;AAAA,QACxBC,IAAI;AAAA,MAAA;AAAA,IACN;AAAA,IAEF,CAAC,KAAKF,EAAY,uBAAuB,CAAC,EAAE,GAAG;AAAA,MAC7C,CAAC,IAAIA,EAAYC,IAAI,EAAE,GAAG;AAAA,QACxBC,IAAI;AAAA,MAAA;AAAA,IACN;AAAA,IAEF,CAAC,KAAKF,EAAY,0BAA0B,CAAC,EAAE,GAAG;AAAA,MAChD,CAAC,IAAIA,EAAYC,IAAI,EAAE,GAAG;AAAA,QACxBC,IAAI;AAAA,MAAA;AAAA,IACN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQF,CAAC,IAAIF,EAAYG,eAAe,EAAE,GAAG;AAAA,MACnCJ,WAAW;AAAA,MACXK,UAAU;AAAA,MACVC,UAAU;AAAA,IAAA;AAAA,IAGZ,CAAC,IAAIL,EAAYM,YAAY,EAAE,GAAG;AAAA,MAChC,kCAAkC;AAAA,MAClCC,iBAAiB;AAAA,MACjBV,OAAO;AAAA,IAAA;AAAA,IAGT,CAAC,IAAIG,EAAYQ,GAAG,EAAE,GAAG;AAAA,MACvB,UAAU;AAAA,QACRD,iBAAiB;AAAA,MAAA;AAAA,MAGnB,sBAAsB;AAAA,QACpBA,iBAAiB;AAAA,QAEjB,UAAU;AAAA,UACRA,iBAAiB;AAAA,QAAA;AAAA,MACnB;AAAA,IACF;AAAA,IAGF,CAAC,IAAIP,EAAYM,YAAY,MAAMN,EAAYC,IAAI,iCAAiC,GAAG;AAAA,MACrFQ,aAAa;AAAA,IAAA;AAAA,IAGf,CAAC,IAAIT,EAAYC,IAAI,EAAE,GAAG;AAAA,MACxBJ,OAAO;AAAA,IAAA;AAAA,IAGT,CAAC,IAAIa,EAAsBhB,IAAI,EAAE,GAAG;AAAA,MAClCiB,cAAc;AAAA,IAAA;AAAA,IAGhB,CAAC,IAAIC,EAAgBlB,IAAI,EAAE,GAAG;AAAA,MAC5BG,OAAO;AAAA,MAEP,UAAU;AAAA,QACRgB,SAAS;AAAA,QACTC,eAAe;AAAA,QACfH,cAAc;AAAA,MAAA;AAAA,MAGhB,aAAa;AAAA,QACXd,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,IAGF,CAAC,IAAIG,EAAYM,YAAY,KAAKM,EAAgBlB,IAAI,EAAE,GAAG;AAAA,MACzDG,OAAO;AAAA,IAAA;AAAA,EACT,GAEFjF,EAAMiE,IACNkC,CACF,GACA,GAAInG,EAAMyE,0BAAyB;AAGzC;"}
|
|
1
|
+
{"version":3,"file":"Table.js","sources":["../../../../src/components-generic/atoms/table/Table.tsx"],"sourcesContent":["import { checkboxClasses, paginationItemClasses, type SxProps } from '@mui/material';\nimport {\n GridLogicOperator,\n DataGrid,\n gridClasses,\n type DataGridProps,\n type GridColDef,\n type GridGetRowsParams,\n type GridInitialState,\n type GridLocaleText,\n type GridPaginationModel,\n type GridRowModel,\n type GridValidRowModel,\n type GridSortModel,\n type GridFilterModel\n} from '@mui/x-data-grid';\nimport { merge } from 'lodash';\nimport { useEffect, useMemo, useState, type JSX } from 'react';\nimport { FontNormalSxProps } from '../../../_constants';\nimport { QuickSearchToolbar } from './_QuickSearchToolbar';\n\nexport interface AoaTableData<T extends GridValidRowModel = GridValidRowModel> {\n /**\n * Additional `pageInfo` for advanced use-cases.\n * `hasNextPage`: When row count is unknown/estimated, `hasNextPage` will be used to check if more records are available on server.\n */\n pageInfo?: {\n hasNextPage?: boolean;\n nextCursor?: string;\n };\n /**\n * To reflect updates in total `rowCount` (optional).\n * Useful when the `rowCount` is inaccurate (for example when filtering) or not available upfront.\n */\n rowCount?: number;\n /**\n * The paged, filtered and sorted items from the database\n */\n rows: GridRowModel<T>[];\n}\n\nexport type AoaTableColumns<T extends object = any> = GridColDef<T>[];\n\nexport type AoaTableQueryOptions = GridPaginationModel & Omit<GridGetRowsParams, 'end' | 'paginationModel' | 'start'>;\n\ntype ModeProps =\n /**\n * Overwrites the default mode (server) when you need pagination, filtering and sorting on the client side\n */\n | { getData?: never; mode: 'client' }\n /**\n * The Redux action that takes PaginationModel as parameter to retrieve data from the server\n */\n | { getData(queryOptions: AoaTableQueryOptions): Promise<void> | void; mode?: 'server' };\n\nexport type AoaTableProps<T extends object = any> = ModeProps & {\n /**\n * Action buttons shown in the toolbar of the table\n */\n readonly actionButtons?: JSX.Element[];\n /**\n * The column structure to display the data\n */\n readonly columns: GridColDef<T>[];\n /**\n * The TableData object to be displayed in the table\n */\n readonly data: AoaTableData<T>;\n /**\n * Data-qa tag for E2E test purposes\n */\n readonly 'data-qa'?: string;\n /**\n * Overwrite a safe selection of the {@link DataGrid} properties\n */\n readonly dataGridOverridableProps?: Pick<\n DataGridProps<T>,\n | 'apiRef'\n | 'checkboxSelection'\n | 'disableColumnFilter'\n | 'disableRowSelectionOnClick'\n | 'getRowId'\n | 'ignoreDiacritics'\n | 'isRowSelectable'\n | 'loading'\n | 'onRowSelectionModelChange'\n | 'rowSelectionModel'\n >;\n /**\n * Sets the initial query options to retain query details after opening a page and returning to the table\n */\n readonly initialQueryOptions?: GridPaginationModel & Omit<GridGetRowsParams, 'end' | 'paginationModel' | 'start'>;\n /**\n * Overwrites the default labels when you need a different language than Dutch\n */\n readonly localeText?: GridLocaleText & { refreshTable: string };\n /**\n * Material UI's property to apply styling\n */\n readonly sx?: SxProps;\n};\n\n/**\n * Constructs a table using pre-defined Rijks styling\n *\n * @param props - Props to pass to the button\n * @example\n * ```jsx\n * <AoaTable\n * getData={(queryOptions) => getMockData(queryOptions)}\n * data={mockData}\n * columns={[{ field: \"id\" }, { field: \"title\" }, { field: \"completed\" }]}\n * />\n * ```\n */\n\nexport function AoaTable<T extends object = any>({ ...props }: AoaTableProps<T>) {\n const [isLoading, setIsLoading] = useState(false);\n const [paginationModel, setPaginationModel] = useState<GridPaginationModel>({\n page: props.initialQueryOptions?.page ?? 0,\n pageSize: props.initialQueryOptions?.pageSize ?? 10\n });\n const [sortModel, setSortModel] = useState<GridSortModel>(props.initialQueryOptions?.sortModel ?? []);\n const [filterModel, setFilterModel] = useState<GridFilterModel>(\n props.initialQueryOptions?.filterModel ?? {\n items: [],\n logicOperator: GridLogicOperator.And,\n quickFilterLogicOperator: GridLogicOperator.And,\n quickFilterValues: []\n }\n );\n const [filterButtonEl, setFilterButtonEl] = useState<HTMLButtonElement | null>(null);\n\n const [rowCountState, setRowCountState] = useState(props.data?.rowCount ?? 0);\n\n const mode = props.mode ?? 'server';\n const isServerMode = mode === 'server';\n\n async function getData(paginationModel: GridPaginationModel, sortModel: GridSortModel, filterModel: GridFilterModel) {\n if (isServerMode && props.getData) {\n const fetchData = async () => {\n await props.getData({ ...paginationModel, sortModel, filterModel });\n };\n\n setIsLoading(true);\n await fetchData();\n setIsLoading(false);\n }\n }\n\n useEffect(() => {\n setRowCountState((prevRowCountState) => props.data?.rowCount ?? prevRowCountState);\n }, [props.data?.rowCount, setRowCountState]);\n\n useEffect(() => {\n void getData(paginationModel, sortModel, filterModel);\n // ESLint tells us here that we should add the `getData` function, however,\n // doing so will cause the fetching to loop infinity until the JavaScript heap overflows.\n // eslint-disable-next-line react-compiler/react-compiler\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [paginationModel, sortModel, filterModel]);\n\n const initialState: GridInitialState = useMemo(\n () => ({\n pagination: {\n paginationModel,\n rowCount: 0\n },\n sorting: {\n sortModel\n },\n filter: {\n filterModel\n }\n }),\n [paginationModel, sortModel, filterModel]\n );\n\n const mergedLocaleText = merge<Partial<GridLocaleText & { refreshTable: string }>, (GridLocaleText & { refreshTable: string }) | undefined>(\n {\n columnHeaderSortIconLabel: 'Sorteren',\n filterPanelColumns: 'Kolom',\n filterPanelInputLabel: 'Zoekterm',\n filterPanelInputPlaceholder: 'Zoeken...',\n toolbarQuickFilterPlaceholder: 'Zoeken...',\n toolbarQuickFilterLabel: 'Zoeken',\n toolbarQuickFilterDeleteIconLabel: 'Wissen',\n noRowsLabel: 'Geen regels beschikbaar',\n noResultsOverlayLabel: 'Geen regels gevonden.',\n paginationItemAriaLabel: (type) => {\n switch (type) {\n /* v8 ignore start */\n case 'first':\n return 'Ga naar eerste pagina';\n case 'last':\n return 'Ga naar laatste pagina';\n /* v8 ignore stop */\n case 'next':\n return 'Ga naar volgende pagina';\n case 'previous':\n return 'Ga naar vorige pagina';\n }\n },\n paginationDisplayedRows: ({ from, to, count }) => `${from} - ${to} van ${count}`,\n paginationRowsPerPage: 'Regels per pagina',\n footerRowSelected: (count) => `${count} regels geselecteerd`\n },\n props.localeText\n );\n\n return (\n <DataGrid\n columns={props.columns}\n disableColumnFilter\n disableColumnMenu\n disableColumnSelector\n disableDensitySelector\n disableRowSelectionOnClick\n disableVirtualization\n filterMode={mode}\n getRowHeight={() => 'auto'}\n ignoreDiacritics\n initialState={initialState}\n loading={isLoading}\n localeText={mergedLocaleText}\n onFilterModelChange={(filterModel) => setFilterModel(filterModel)}\n onPaginationModelChange={setPaginationModel}\n onSortModelChange={(sortModel) => setSortModel(sortModel)}\n pageSizeOptions={[5, 10, 20, 40, 80]}\n paginationMode={mode}\n paginationModel={paginationModel}\n rowCount={isServerMode ? rowCountState : undefined}\n rows={props.data?.rows}\n showToolbar\n slotProps={{\n filterPanel: {\n filterFormProps: {\n operatorInputProps: {\n disabled: true,\n sx: { display: 'none' }\n },\n valueInputProps: {\n sx: {\n marginLeft: '15px'\n }\n }\n }\n },\n panel: {\n target: filterButtonEl\n },\n toolbar: {\n setFilterButtonEl,\n showQuickFilter: props.dataGridOverridableProps?.disableColumnFilter === false,\n quickFilterProps: { debounceMs: 500 },\n mode,\n getData: async () => getData(paginationModel, sortModel, filterModel),\n actionButtons: props.actionButtons,\n localeText: props.localeText\n },\n root: {\n 'data-qa': props['data-qa']\n }\n }}\n slots={{ toolbar: QuickSearchToolbar }}\n sortingMode={mode}\n sx={merge(\n {\n border: 0,\n color: 'var(--color-text)',\n letterSpacing: 'normal',\n minHeight: '300px',\n\n [`&.${gridClasses['root--densityCompact']}`]: {\n [`.${gridClasses.cell}`]: {\n py: '8px'\n }\n },\n [`&.${gridClasses['root--densityStandard']}`]: {\n [`.${gridClasses.cell}`]: {\n py: '15px'\n }\n },\n [`&.${gridClasses['root--densityComfortable']}`]: {\n [`.${gridClasses.cell}`]: {\n py: '22px'\n }\n },\n\n /**\n * The 'no results' message does not show if the DataGrid does not have a fixed height.\n * Because a fixed height is not desirable, we set a min-height on the DataGrid and set\n * the min-height of the virtualScroller to half of that height.\n */\n [`.${gridClasses.virtualScroller}`]: {\n minHeight: '150px',\n overflow: 'hidden',\n position: 'relative'\n },\n\n [`.${gridClasses.columnHeader}`]: {\n '--DataGrid-containerBackground': 'var(--color-rijks-skyblue)',\n '--DataGrid-t-header-background-base': 'transparent',\n backgroundColor: 'var(--color-rijks-skyblue)',\n color: 'var(--color-text-light)'\n },\n\n [`.${gridClasses.row}`]: {\n ':hover': {\n backgroundColor: 'var(--color-rijks-skyblue-light)'\n },\n\n ':nth-of-type(even)': {\n backgroundColor: 'var(--color-rijks-grey-1)',\n\n ':hover': {\n backgroundColor: 'var(--color-rijks-skyblue-light)'\n }\n }\n },\n\n [`.${gridClasses.columnHeader}, .${gridClasses.cell}, .MuiDataGrid-columnsContainer`]: {\n borderRight: '1px solid var(--color-rijks-grey-2)'\n },\n\n [`.${gridClasses.cell}`]: {\n color: 'var(--color-text)'\n },\n\n [`.${paginationItemClasses.root}`]: {\n borderRadius: 0\n },\n\n [`.${checkboxClasses.root}`]: {\n color: 'var(--color-primary)',\n\n ':focus': {\n outline: '2px dashed var(--color-text)',\n outlineOffset: '-9px',\n borderRadius: 0\n },\n\n ':disabled': {\n color: 'var(--color-disabled)'\n }\n },\n\n [`.${gridClasses.columnHeader} .${checkboxClasses.root}`]: {\n color: 'white'\n }\n },\n props.sx,\n FontNormalSxProps\n )}\n {...props.dataGridOverridableProps}\n />\n );\n}\n"],"names":["AoaTable","props","isLoading","setIsLoading","useState","paginationModel","setPaginationModel","page","initialQueryOptions","pageSize","sortModel","setSortModel","filterModel","setFilterModel","items","logicOperator","GridLogicOperator","And","quickFilterLogicOperator","quickFilterValues","filterButtonEl","setFilterButtonEl","rowCountState","setRowCountState","data","rowCount","mode","isServerMode","getData","fetchData","useEffect","prevRowCountState","initialState","useMemo","pagination","sorting","filter","mergedLocaleText","merge","columnHeaderSortIconLabel","filterPanelColumns","filterPanelInputLabel","filterPanelInputPlaceholder","toolbarQuickFilterPlaceholder","toolbarQuickFilterLabel","toolbarQuickFilterDeleteIconLabel","noRowsLabel","noResultsOverlayLabel","paginationItemAriaLabel","type","paginationDisplayedRows","from","to","count","paginationRowsPerPage","footerRowSelected","localeText","jsx","DataGrid","columns","undefined","rows","filterPanel","filterFormProps","operatorInputProps","disabled","sx","display","valueInputProps","marginLeft","panel","target","toolbar","showQuickFilter","dataGridOverridableProps","disableColumnFilter","quickFilterProps","debounceMs","actionButtons","root","QuickSearchToolbar","border","color","letterSpacing","minHeight","gridClasses","cell","py","virtualScroller","overflow","position","columnHeader","backgroundColor","row","borderRight","paginationItemClasses","borderRadius","checkboxClasses","outline","outlineOffset","FontNormalSxProps"],"mappings":"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"}
|