@owp/core 2.5.35 → 2.5.37
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/_virtual/index10.js +2 -2
- package/dist/_virtual/index12.js +2 -2
- package/dist/_virtual/index13.js +2 -2
- package/dist/_virtual/index14.js +2 -2
- package/dist/components/OwpTable/OwpDataTable.js +360 -391
- package/dist/components/OwpTable/OwpDataTable.js.map +1 -1
- package/dist/components/OwpTable/OwpTable.js +19 -20
- package/dist/components/OwpTable/OwpTable.js.map +1 -1
- package/dist/components/OwpTable/internal/OwpTableBase.js +78 -81
- package/dist/components/OwpTable/internal/OwpTableBase.js.map +1 -1
- package/dist/components/OwpTable/internal/treeGridTableStyle.js +31 -88
- package/dist/components/OwpTable/internal/treeGridTableStyle.js.map +1 -1
- package/dist/components/OwpTreeGrid/OwpTreeGrid.js +287 -361
- package/dist/components/OwpTreeGrid/OwpTreeGrid.js.map +1 -1
- package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js +563 -481
- package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js.map +1 -1
- package/dist/components/OwpTreeGrid/internal/treeGridTheme.js +410 -331
- package/dist/components/OwpTreeGrid/internal/treeGridTheme.js.map +1 -1
- package/dist/constants/treeGrid.js +47 -59
- package/dist/constants/treeGrid.js.map +1 -1
- package/dist/constants.js +28 -27
- package/dist/constants.js.map +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE39/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE93/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE93/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/GenericBarcode/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/MSI/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/codabar/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/pharmacode/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/renderers/index.js +1 -1
- package/dist/owp-app.css +1 -1
- package/dist/types/components/OwpTable/internal/OwpTableBase.d.ts +1 -3
- package/dist/types/components/OwpTable/internal/treeGridTableStyle.d.ts +2 -61
- package/dist/types/components/OwpTreeGrid/internal/treeGridTheme.d.ts +4 -2
- package/dist/types/constants/index.d.ts +1 -0
- package/dist/types/constants/treeGrid.d.ts +1 -9
- package/package.json +1 -1
|
@@ -1,98 +1,97 @@
|
|
|
1
1
|
var G = Object.defineProperty;
|
|
2
|
-
var
|
|
3
|
-
import { jsxs as B, jsx as w, Fragment as
|
|
4
|
-
import { resolveOwpGridTheme as
|
|
5
|
-
import { resolveOwpTableTheme as
|
|
6
|
-
import { DEFAULT_TABLE_RADIUS as
|
|
7
|
-
import { getTreeGridFontFaceStyles as
|
|
8
|
-
import { useGetCurrentSettings as
|
|
9
|
-
import { styled as
|
|
10
|
-
import { clsx as
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import { useMemo as
|
|
17
|
-
import {
|
|
18
|
-
import { defaultStyledTableTheme as
|
|
19
|
-
import { mergeSx as
|
|
20
|
-
const
|
|
2
|
+
var s = (o, a) => G(o, "name", { value: a, configurable: !0 });
|
|
3
|
+
import { jsxs as B, jsx as w, Fragment as F } from "../../../node_modules/.pnpm/@emotion_react@11.14.0_@types_react@19.2.14_react@19.2.4/node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js";
|
|
4
|
+
import { resolveOwpGridTheme as g } from "../../../constants/gridTheme.js";
|
|
5
|
+
import { resolveOwpTableTheme as I } from "../../../constants/tableTheme.js";
|
|
6
|
+
import { DEFAULT_TABLE_RADIUS as O } from "../../../constants/table.js";
|
|
7
|
+
import { getTreeGridFontFaceStyles as $ } from "../../../constants/treeGrid.js";
|
|
8
|
+
import { useGetCurrentSettings as k } from "../../../hooks/useOwpSettings.js";
|
|
9
|
+
import { styled as n } from "@mui/material";
|
|
10
|
+
import { clsx as H } from "../../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js";
|
|
11
|
+
import j from "@mui/material/GlobalStyles";
|
|
12
|
+
import N from "@mui/material/Paper";
|
|
13
|
+
import K from "@mui/material/Table";
|
|
14
|
+
import S from "@mui/material/TableContainer";
|
|
15
|
+
import V from "@mui/material/TableRow";
|
|
16
|
+
import { useMemo as y } from "react";
|
|
17
|
+
import { TREEGRID_TABLE_BODY_BORDER_COLOR as _, getTreeGridContainerSx as Y, getTreeGridBodyRowSx as Z, getTreeGridBodyCellSx as q, TREEGRID_TABLE_HEADER_BORDER_COLOR as z, getTreeGridHeaderCellSx as J, getTreeGridCellBaseSx as Q } from "./treeGridTableStyle.js";
|
|
18
|
+
import { defaultStyledTableTheme as D, getDefaultTableCellSx as W, getDefaultTableHeaderCellSx as X, DEFAULT_TABLE_HEADER_BACKGROUND_COLOR as c } from "./defaultTableStyle.js";
|
|
19
|
+
import { mergeSx as P, toTableRadiusCssValue as U } from "../utils/tableSx.js";
|
|
20
|
+
const oo = {
|
|
21
21
|
border: 0,
|
|
22
22
|
borderRadius: 0,
|
|
23
23
|
overflow: "visible"
|
|
24
|
-
},
|
|
25
|
-
borderRadius:
|
|
26
|
-
},
|
|
24
|
+
}, eo = {
|
|
25
|
+
borderRadius: O
|
|
26
|
+
}, ro = {
|
|
27
27
|
borderRadius: 0
|
|
28
|
-
},
|
|
28
|
+
}, E = {
|
|
29
29
|
dark: "rgba(241,245,249,.12)",
|
|
30
30
|
light: "#e2e8f0"
|
|
31
|
-
},
|
|
31
|
+
}, Eo = /* @__PURE__ */ s(({
|
|
32
32
|
canBodyFullHeight: o,
|
|
33
33
|
canTableRadiusZero: a = !1,
|
|
34
|
-
canUseTableRadius:
|
|
34
|
+
canUseTableRadius: r = !1,
|
|
35
35
|
canUseTreeGridStyle: t,
|
|
36
36
|
children: m,
|
|
37
37
|
className: i,
|
|
38
38
|
containerProps: l,
|
|
39
39
|
footerSlot: f,
|
|
40
|
-
tableTheme:
|
|
41
|
-
tableLayout:
|
|
42
|
-
tableBorderRadius:
|
|
43
|
-
treeGridHeaderRowCount: L = 0,
|
|
40
|
+
tableTheme: T,
|
|
41
|
+
tableLayout: u,
|
|
42
|
+
tableBorderRadius: L = O,
|
|
44
43
|
...v
|
|
45
44
|
}) => {
|
|
46
45
|
var C, M, x;
|
|
47
|
-
const
|
|
46
|
+
const e = k(), R = ((x = (M = (C = e == null ? void 0 : e.theme) == null ? void 0 : C.main) == null ? void 0 : M.palette) == null ? void 0 : x.mode) === "dark" ? E.dark : E.light, p = y(
|
|
48
47
|
() => {
|
|
49
|
-
var
|
|
50
|
-
return
|
|
48
|
+
var d, b;
|
|
49
|
+
return g((b = (d = e == null ? void 0 : e.theme) == null ? void 0 : d.main) == null ? void 0 : b.grid);
|
|
51
50
|
},
|
|
52
|
-
[
|
|
53
|
-
), h =
|
|
51
|
+
[e]
|
|
52
|
+
), h = y(
|
|
54
53
|
() => {
|
|
55
|
-
var
|
|
56
|
-
return
|
|
57
|
-
...
|
|
58
|
-
borderColor:
|
|
54
|
+
var d, b;
|
|
55
|
+
return T ?? I((b = (d = e == null ? void 0 : e.theme) == null ? void 0 : d.main) == null ? void 0 : b.table, {
|
|
56
|
+
...D,
|
|
57
|
+
borderColor: R
|
|
59
58
|
});
|
|
60
59
|
},
|
|
61
|
-
[
|
|
62
|
-
), A = a ?
|
|
63
|
-
|
|
64
|
-
borderRadius:
|
|
60
|
+
[e, R, T]
|
|
61
|
+
), A = a ? ro : t && r ? {
|
|
62
|
+
border: `1px solid ${_}`,
|
|
63
|
+
borderRadius: U(L),
|
|
65
64
|
overflow: "hidden"
|
|
66
|
-
} : t ? void 0 :
|
|
67
|
-
return /* @__PURE__ */ B(
|
|
68
|
-
t && /* @__PURE__ */ w(
|
|
65
|
+
} : t ? void 0 : eo;
|
|
66
|
+
return /* @__PURE__ */ B(F, { children: [
|
|
67
|
+
t && /* @__PURE__ */ w(j, { styles: $() }),
|
|
69
68
|
/* @__PURE__ */ B(
|
|
70
|
-
|
|
69
|
+
S,
|
|
71
70
|
{
|
|
72
|
-
component:
|
|
71
|
+
component: N,
|
|
73
72
|
variant: "outlined",
|
|
74
73
|
...l,
|
|
75
|
-
sx:
|
|
74
|
+
sx: P(
|
|
76
75
|
!t && { borderColor: h.borderColor },
|
|
77
|
-
t &&
|
|
78
|
-
t &&
|
|
76
|
+
t && oo,
|
|
77
|
+
t && Y(p),
|
|
79
78
|
A,
|
|
80
79
|
o && { height: "100%" },
|
|
81
80
|
l == null ? void 0 : l.sx
|
|
82
81
|
),
|
|
83
82
|
children: [
|
|
84
83
|
/* @__PURE__ */ w(
|
|
85
|
-
|
|
84
|
+
to,
|
|
86
85
|
{
|
|
87
86
|
...v,
|
|
88
87
|
canBodyFullHeight: o,
|
|
89
|
-
canUseTableRadius:
|
|
88
|
+
canUseTableRadius: r,
|
|
90
89
|
canUseTreeGridStyle: t,
|
|
91
90
|
tableTheme: h,
|
|
92
|
-
treeGridTheme:
|
|
93
|
-
className:
|
|
91
|
+
treeGridTheme: p,
|
|
92
|
+
className: H(
|
|
94
93
|
o && "h-full",
|
|
95
|
-
|
|
94
|
+
u === "fixed" ? "table-fixed" : u === "auto" ? "table-auto" : "",
|
|
96
95
|
i
|
|
97
96
|
),
|
|
98
97
|
children: m
|
|
@@ -103,17 +102,17 @@ const lo = {
|
|
|
103
102
|
}
|
|
104
103
|
)
|
|
105
104
|
] });
|
|
106
|
-
}, "OwpTableBase"),
|
|
107
|
-
shouldForwardProp: /* @__PURE__ */
|
|
105
|
+
}, "OwpTableBase"), to = n(K, {
|
|
106
|
+
shouldForwardProp: /* @__PURE__ */ s((o) => o !== "canBodyFullHeight" && o !== "canUseTableRadius" && o !== "canUseTreeGridStyle" && o !== "tableTheme" && o !== "treeGridTheme", "shouldForwardProp")
|
|
108
107
|
})(
|
|
109
108
|
({
|
|
110
109
|
canBodyFullHeight: o,
|
|
111
110
|
canUseTableRadius: a,
|
|
112
|
-
canUseTreeGridStyle:
|
|
111
|
+
canUseTreeGridStyle: r,
|
|
113
112
|
tableTheme: t,
|
|
114
113
|
treeGridTheme: m
|
|
115
114
|
}) => {
|
|
116
|
-
const i = m ??
|
|
115
|
+
const i = m ?? g(), l = t ?? D, f = `1px solid ${l.borderColor}`, T = r && a;
|
|
117
116
|
return {
|
|
118
117
|
...o && {
|
|
119
118
|
height: "100%"
|
|
@@ -126,10 +125,10 @@ const lo = {
|
|
|
126
125
|
height: "100%"
|
|
127
126
|
}
|
|
128
127
|
},
|
|
129
|
-
"& .MuiTableCell-root":
|
|
130
|
-
...
|
|
128
|
+
"& .MuiTableCell-root": r ? {
|
|
129
|
+
...Q(i)
|
|
131
130
|
} : void 0,
|
|
132
|
-
...!
|
|
131
|
+
...!r && {
|
|
133
132
|
"& .MuiTableRow-root > .MuiTableCell-root + .MuiTableCell-root": {
|
|
134
133
|
borderLeft: f
|
|
135
134
|
},
|
|
@@ -140,29 +139,29 @@ const lo = {
|
|
|
140
139
|
borderBottom: "none"
|
|
141
140
|
}
|
|
142
141
|
},
|
|
143
|
-
"& th":
|
|
144
|
-
...
|
|
142
|
+
"& th": r ? {
|
|
143
|
+
...J(i),
|
|
145
144
|
"&:first-of-type": {
|
|
146
|
-
borderLeft: `1px solid ${
|
|
145
|
+
borderLeft: `1px solid ${z}`
|
|
147
146
|
}
|
|
148
147
|
} : {
|
|
149
|
-
...
|
|
148
|
+
...X(
|
|
150
149
|
l,
|
|
151
|
-
|
|
150
|
+
c
|
|
152
151
|
)
|
|
153
152
|
},
|
|
154
|
-
"& td":
|
|
155
|
-
...
|
|
153
|
+
"& td": r ? {
|
|
154
|
+
...q(i),
|
|
156
155
|
"&:first-of-type": {
|
|
157
|
-
borderLeft: `1px solid ${
|
|
156
|
+
borderLeft: `1px solid ${_}`
|
|
158
157
|
}
|
|
159
158
|
} : {
|
|
160
|
-
...
|
|
159
|
+
...W(l)
|
|
161
160
|
},
|
|
162
|
-
...
|
|
163
|
-
"& tbody > .MuiTableRow-root":
|
|
161
|
+
...r && {
|
|
162
|
+
"& tbody > .MuiTableRow-root": Z(i)
|
|
164
163
|
},
|
|
165
|
-
...
|
|
164
|
+
...r && {
|
|
166
165
|
"& tbody > tr:first-of-type > th:first-of-type": {
|
|
167
166
|
borderTopLeftRadius: "inherit"
|
|
168
167
|
},
|
|
@@ -170,11 +169,10 @@ const lo = {
|
|
|
170
169
|
borderTopRightRadius: "inherit"
|
|
171
170
|
}
|
|
172
171
|
},
|
|
173
|
-
...
|
|
172
|
+
...T && {
|
|
174
173
|
"& .MuiTableHead-root:first-of-type > .MuiTableRow-root:first-of-type > .MuiTableCell-root": {
|
|
175
174
|
borderTop: 0
|
|
176
175
|
},
|
|
177
|
-
"& .MuiTableHead-root > .MuiTableRow-root:last-of-type > .MuiTableCell-root": Q(),
|
|
178
176
|
"& .MuiTableBody-root:first-of-type > .MuiTableRow-root:first-of-type > .MuiTableCell-root": {
|
|
179
177
|
borderTop: 0
|
|
180
178
|
},
|
|
@@ -187,13 +185,12 @@ const lo = {
|
|
|
187
185
|
"& .MuiTableBody-root > .MuiTableRow-root:last-of-type > .MuiTableCell-root": {
|
|
188
186
|
borderBottom: 0
|
|
189
187
|
}
|
|
190
|
-
}
|
|
191
|
-
...e && !d && J(i)
|
|
188
|
+
}
|
|
192
189
|
};
|
|
193
190
|
}
|
|
194
|
-
),
|
|
191
|
+
), go = n(V)({});
|
|
195
192
|
export {
|
|
196
|
-
|
|
197
|
-
|
|
193
|
+
Eo as OwpTableBase,
|
|
194
|
+
go as OwpTableBaseRow
|
|
198
195
|
};
|
|
199
196
|
//# sourceMappingURL=OwpTableBase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OwpTableBase.js","sources":["../../../../src/components/OwpTable/internal/OwpTableBase.tsx"],"sourcesContent":["import {\n resolveOwpGridTheme,\n type OwpResolvedGridThemeConfigType,\n} from '@/constants/gridTheme';\nimport {\n resolveOwpTableTheme,\n type OwpResolvedTableThemeConfigType,\n} from '@/constants/tableTheme';\nimport { DEFAULT_TABLE_RADIUS } from '@/constants/table';\nimport { getTreeGridFontFaceStyles } from '@/constants/treeGrid';\nimport { useGetCurrentSettings } from '@/hooks/useOwpSettings';\nimport { styled } from '@mui/material';\nimport clsx from 'clsx';\nimport GlobalStyles from '@mui/material/GlobalStyles';\nimport Paper from '@mui/material/Paper';\nimport Table, { type TableProps } from '@mui/material/Table';\nimport TableContainer, { type TableContainerProps } from '@mui/material/TableContainer';\nimport TableRow from '@mui/material/TableRow';\nimport { type ReactNode, useMemo } from 'react';\nimport {\n getTreeGridBodyCellSx,\n getTreeGridBodyRowSx,\n getTreeGridCellBaseSx,\n getTreeGridContainerSx,\n getTreeGridHeaderBottomBodyBorderSx,\n getTreeGridHeaderCellSx,\n getTreeGridHeaderEdgeTableSx,\n getTreeGridRadiusContainerFrameSx,\n TREEGRID_TABLE_BODY_BORDER_COLOR,\n TREEGRID_TABLE_HEADER_BORDER_COLOR,\n} from './treeGridTableStyle';\nimport {\n DEFAULT_TABLE_HEADER_BACKGROUND_COLOR,\n defaultStyledTableTheme,\n getDefaultTableCellSx,\n getDefaultTableHeaderCellSx,\n} from './defaultTableStyle';\nimport { mergeSx, toTableRadiusCssValue } from '../utils/tableSx';\n\nconst treeGridContainerSx = {\n border: 0,\n borderRadius: 0,\n overflow: 'visible',\n} as const;\nconst defaultTableRadiusSx = {\n borderRadius: DEFAULT_TABLE_RADIUS,\n} as const;\nconst tableRadiusZeroSx = {\n borderRadius: 0,\n} as const;\nconst defaultTableBorderColorByMode = {\n dark: 'rgba(241,245,249,.12)',\n light: '#e2e8f0',\n} as const;\n\nexport interface OwpTableBaseProps extends TableProps {\n canBodyFullHeight?: boolean;\n canTableRadiusZero?: boolean;\n canUseTableRadius?: boolean;\n canUseTreeGridStyle?: boolean;\n containerProps?: TableContainerProps;\n footerSlot?: ReactNode;\n tableTheme?: OwpResolvedTableThemeConfigType;\n tableLayout?: 'auto' | 'fixed';\n tableBorderRadius?: string | number;\n treeGridHeaderRowCount?: number;\n treeGridTheme?: OwpResolvedGridThemeConfigType;\n title?: string;\n children: ReactNode;\n}\n\ntype OwpTableBaseInnerProps = Pick<\n OwpTableBaseProps,\n | 'canBodyFullHeight'\n | 'canUseTableRadius'\n | 'canUseTreeGridStyle'\n | 'tableTheme'\n | 'treeGridTheme'\n>;\n\n/**\n * OWP Table 기반 컨테이너\n * @param canBodyFullHeight body full height 사용 여부\n * @param canTableRadiusZero 테이블 radius 0 사용 여부\n * @param canUseTableRadius 테이블 radius 사용 여부\n * @param canUseTreeGridStyle TreeGrid 스타일 사용 여부\n * @param children 하위 콘텐츠\n * @param containerProps containerProps props\n * @param footerSlot footer 영역\n * @param tableLayout tableLayout 값\n * @param tableBorderRadius 테이블 radius 값\n * @param treeGridHeaderRowCount TreeGrid header row 수\n */\nexport const OwpTableBase = ({\n canBodyFullHeight,\n canTableRadiusZero = false,\n canUseTableRadius = false,\n canUseTreeGridStyle,\n children,\n className,\n containerProps,\n footerSlot,\n tableTheme: tableThemeProp,\n tableLayout,\n tableBorderRadius = DEFAULT_TABLE_RADIUS,\n treeGridHeaderRowCount = 0,\n ...tableProps\n}: OwpTableBaseProps) => {\n const currentSettings = useGetCurrentSettings();\n const defaultTableBorderColor =\n currentSettings?.theme?.main?.palette?.mode === 'dark'\n ? defaultTableBorderColorByMode.dark\n : defaultTableBorderColorByMode.light;\n const treeGridTheme = useMemo(\n () => resolveOwpGridTheme(currentSettings?.theme?.main?.grid),\n [currentSettings],\n );\n const tableTheme = useMemo(\n () =>\n tableThemeProp ??\n resolveOwpTableTheme(currentSettings?.theme?.main?.table, {\n ...defaultStyledTableTheme,\n borderColor: defaultTableBorderColor,\n }),\n [currentSettings, defaultTableBorderColor, tableThemeProp],\n );\n const tableContainerRadiusSx = canTableRadiusZero\n ? tableRadiusZeroSx\n : canUseTreeGridStyle && canUseTableRadius\n ? {\n ...getTreeGridRadiusContainerFrameSx(treeGridTheme, treeGridHeaderRowCount),\n borderRadius: toTableRadiusCssValue(tableBorderRadius),\n overflow: 'hidden',\n }\n : !canUseTreeGridStyle\n ? defaultTableRadiusSx\n : undefined;\n\n return (\n <>\n {canUseTreeGridStyle && <GlobalStyles styles={getTreeGridFontFaceStyles()} />}\n <TableContainer\n component={Paper}\n variant=\"outlined\"\n {...containerProps}\n sx={mergeSx(\n !canUseTreeGridStyle && { borderColor: tableTheme.borderColor },\n canUseTreeGridStyle && treeGridContainerSx,\n canUseTreeGridStyle && getTreeGridContainerSx(treeGridTheme),\n tableContainerRadiusSx,\n canBodyFullHeight && { height: '100%' },\n containerProps?.sx,\n )}\n >\n <OwpTableBaseInner\n {...tableProps}\n canBodyFullHeight={canBodyFullHeight}\n canUseTableRadius={canUseTableRadius}\n canUseTreeGridStyle={canUseTreeGridStyle}\n tableTheme={tableTheme}\n treeGridTheme={treeGridTheme}\n className={clsx(\n canBodyFullHeight && 'h-full',\n tableLayout === 'fixed' ? 'table-fixed' : tableLayout === 'auto' ? 'table-auto' : '',\n className,\n )}\n >\n {children}\n </OwpTableBaseInner>\n {footerSlot}\n </TableContainer>\n </>\n );\n};\n\n/** OWP Table 기반 table element */\nconst OwpTableBaseInner = styled(Table, {\n shouldForwardProp: (prop) =>\n prop !== 'canBodyFullHeight' &&\n prop !== 'canUseTableRadius' &&\n prop !== 'canUseTreeGridStyle' &&\n prop !== 'tableTheme' &&\n prop !== 'treeGridTheme',\n})<OwpTableBaseInnerProps>(\n ({\n canBodyFullHeight,\n canUseTableRadius,\n canUseTreeGridStyle,\n tableTheme,\n treeGridTheme,\n }) => {\n const resolvedTreeGridTheme = treeGridTheme ?? resolveOwpGridTheme();\n const resolvedTableTheme = tableTheme ?? defaultStyledTableTheme;\n const defaultTableBorder = `1px solid ${resolvedTableTheme.borderColor}`;\n const shouldUseTreeGridRadius = canUseTreeGridStyle && canUseTableRadius;\n\n return {\n ...(canBodyFullHeight && {\n height: '100%',\n }),\n ...(canBodyFullHeight && {\n '& .MuiTableBody-root': {\n height: '100%',\n },\n '& .MuiTableBody-root > .MuiTableRow-root': {\n height: '100%',\n },\n }),\n '& .MuiTableCell-root': canUseTreeGridStyle\n ? {\n ...getTreeGridCellBaseSx(resolvedTreeGridTheme),\n }\n : undefined,\n ...(!canUseTreeGridStyle && {\n '& .MuiTableRow-root > .MuiTableCell-root + .MuiTableCell-root': {\n borderLeft: defaultTableBorder,\n },\n '& .MuiTableRow-root > .MuiTableCell-root:not(:last-of-type)': {\n borderRight: defaultTableBorder,\n },\n '& tbody > .MuiTableRow-root:last-of-type > .MuiTableCell-root': {\n borderBottom: 'none',\n },\n }),\n '& th': canUseTreeGridStyle\n ? {\n ...getTreeGridHeaderCellSx(resolvedTreeGridTheme),\n '&:first-of-type': {\n borderLeft: `1px solid ${TREEGRID_TABLE_HEADER_BORDER_COLOR}`,\n },\n }\n : {\n ...getDefaultTableHeaderCellSx(\n resolvedTableTheme,\n DEFAULT_TABLE_HEADER_BACKGROUND_COLOR,\n ),\n },\n '& td': canUseTreeGridStyle\n ? {\n ...getTreeGridBodyCellSx(resolvedTreeGridTheme),\n '&:first-of-type': {\n borderLeft: `1px solid ${TREEGRID_TABLE_BODY_BORDER_COLOR}`,\n },\n }\n : {\n ...getDefaultTableCellSx(resolvedTableTheme),\n },\n ...(canUseTreeGridStyle && {\n '& tbody > .MuiTableRow-root': getTreeGridBodyRowSx(resolvedTreeGridTheme),\n }),\n ...(canUseTreeGridStyle && {\n '& tbody > tr:first-of-type > th:first-of-type': {\n borderTopLeftRadius: 'inherit',\n },\n '& tbody > tr:first-of-type > td:last-of-type': {\n borderTopRightRadius: 'inherit',\n },\n }),\n ...(shouldUseTreeGridRadius && {\n '& .MuiTableHead-root:first-of-type > .MuiTableRow-root:first-of-type > .MuiTableCell-root':\n {\n borderTop: 0,\n },\n '& .MuiTableHead-root > .MuiTableRow-root:last-of-type > .MuiTableCell-root':\n getTreeGridHeaderBottomBodyBorderSx(),\n '& .MuiTableBody-root:first-of-type > .MuiTableRow-root:first-of-type > .MuiTableCell-root':\n {\n borderTop: 0,\n },\n '& .MuiTableRow-root > .MuiTableCell-root:first-of-type': {\n borderLeft: 0,\n },\n '& .MuiTableRow-root > .MuiTableCell-root:last-of-type': {\n borderRight: 0,\n },\n '& .MuiTableBody-root > .MuiTableRow-root:last-of-type > .MuiTableCell-root': {\n borderBottom: 0,\n },\n }),\n ...(canUseTreeGridStyle &&\n !shouldUseTreeGridRadius &&\n getTreeGridHeaderEdgeTableSx(resolvedTreeGridTheme)),\n };\n },\n);\n\n/** OWP Table 기반 row */\nexport const OwpTableBaseRow = styled(TableRow)({});\n"],"names":["treeGridContainerSx","defaultTableRadiusSx","DEFAULT_TABLE_RADIUS","tableRadiusZeroSx","defaultTableBorderColorByMode","OwpTableBase","__name","canBodyFullHeight","canTableRadiusZero","canUseTableRadius","canUseTreeGridStyle","children","className","containerProps","footerSlot","tableThemeProp","tableLayout","tableBorderRadius","treeGridHeaderRowCount","tableProps","currentSettings","useGetCurrentSettings","defaultTableBorderColor","_c","_b","_a","treeGridTheme","useMemo","resolveOwpGridTheme","tableTheme","resolveOwpTableTheme","defaultStyledTableTheme","tableContainerRadiusSx","getTreeGridRadiusContainerFrameSx","toTableRadiusCssValue","jsxs","Fragment","jsx","GlobalStyles","getTreeGridFontFaceStyles","TableContainer","Paper","mergeSx","getTreeGridContainerSx","OwpTableBaseInner","clsx","styled","Table","prop","resolvedTreeGridTheme","resolvedTableTheme","defaultTableBorder","shouldUseTreeGridRadius","getTreeGridCellBaseSx","getTreeGridHeaderCellSx","TREEGRID_TABLE_HEADER_BORDER_COLOR","getDefaultTableHeaderCellSx","DEFAULT_TABLE_HEADER_BACKGROUND_COLOR","getTreeGridBodyCellSx","TREEGRID_TABLE_BODY_BORDER_COLOR","getDefaultTableCellSx","getTreeGridBodyRowSx","getTreeGridHeaderBottomBodyBorderSx","getTreeGridHeaderEdgeTableSx","OwpTableBaseRow","TableRow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OwpTableBase.js","sources":["../../../../src/components/OwpTable/internal/OwpTableBase.tsx"],"sourcesContent":["import {\n resolveOwpGridTheme,\n type OwpResolvedGridThemeConfigType,\n} from '@/constants/gridTheme';\nimport {\n resolveOwpTableTheme,\n type OwpResolvedTableThemeConfigType,\n} from '@/constants/tableTheme';\nimport { DEFAULT_TABLE_RADIUS } from '@/constants/table';\nimport { getTreeGridFontFaceStyles } from '@/constants/treeGrid';\nimport { useGetCurrentSettings } from '@/hooks/useOwpSettings';\nimport { styled } from '@mui/material';\nimport clsx from 'clsx';\nimport GlobalStyles from '@mui/material/GlobalStyles';\nimport Paper from '@mui/material/Paper';\nimport Table, { type TableProps } from '@mui/material/Table';\nimport TableContainer, { type TableContainerProps } from '@mui/material/TableContainer';\nimport TableRow from '@mui/material/TableRow';\nimport { type ReactNode, useMemo } from 'react';\nimport {\n getTreeGridBodyCellSx,\n getTreeGridBodyRowSx,\n getTreeGridCellBaseSx,\n getTreeGridContainerSx,\n getTreeGridHeaderCellSx,\n TREEGRID_TABLE_BODY_BORDER_COLOR,\n TREEGRID_TABLE_HEADER_BORDER_COLOR,\n} from './treeGridTableStyle';\nimport {\n DEFAULT_TABLE_HEADER_BACKGROUND_COLOR,\n defaultStyledTableTheme,\n getDefaultTableCellSx,\n getDefaultTableHeaderCellSx,\n} from './defaultTableStyle';\nimport { mergeSx, toTableRadiusCssValue } from '../utils/tableSx';\n\nconst treeGridContainerSx = {\n border: 0,\n borderRadius: 0,\n overflow: 'visible',\n} as const;\nconst defaultTableRadiusSx = {\n borderRadius: DEFAULT_TABLE_RADIUS,\n} as const;\nconst tableRadiusZeroSx = {\n borderRadius: 0,\n} as const;\nconst defaultTableBorderColorByMode = {\n dark: 'rgba(241,245,249,.12)',\n light: '#e2e8f0',\n} as const;\n\nexport interface OwpTableBaseProps extends TableProps {\n canBodyFullHeight?: boolean;\n canTableRadiusZero?: boolean;\n canUseTableRadius?: boolean;\n canUseTreeGridStyle?: boolean;\n containerProps?: TableContainerProps;\n footerSlot?: ReactNode;\n tableTheme?: OwpResolvedTableThemeConfigType;\n tableLayout?: 'auto' | 'fixed';\n tableBorderRadius?: string | number;\n treeGridTheme?: OwpResolvedGridThemeConfigType;\n title?: string;\n children: ReactNode;\n}\n\ntype OwpTableBaseInnerProps = Pick<\n OwpTableBaseProps,\n | 'canBodyFullHeight'\n | 'canUseTableRadius'\n | 'canUseTreeGridStyle'\n | 'tableTheme'\n | 'treeGridTheme'\n>;\n\n/**\n * OWP Table 기반 컨테이너\n * @param canBodyFullHeight body full height 사용 여부\n * @param canTableRadiusZero 테이블 radius 0 사용 여부\n * @param canUseTableRadius 테이블 radius 사용 여부\n * @param canUseTreeGridStyle TreeGrid 스타일 사용 여부\n * @param children 하위 콘텐츠\n * @param containerProps containerProps props\n * @param footerSlot footer 영역\n * @param tableLayout tableLayout 값\n * @param tableBorderRadius 테이블 radius 값\n */\nexport const OwpTableBase = ({\n canBodyFullHeight,\n canTableRadiusZero = false,\n canUseTableRadius = false,\n canUseTreeGridStyle,\n children,\n className,\n containerProps,\n footerSlot,\n tableTheme: tableThemeProp,\n tableLayout,\n tableBorderRadius = DEFAULT_TABLE_RADIUS,\n ...tableProps\n}: OwpTableBaseProps) => {\n const currentSettings = useGetCurrentSettings();\n const defaultTableBorderColor =\n currentSettings?.theme?.main?.palette?.mode === 'dark'\n ? defaultTableBorderColorByMode.dark\n : defaultTableBorderColorByMode.light;\n const treeGridTheme = useMemo(\n () => resolveOwpGridTheme(currentSettings?.theme?.main?.grid),\n [currentSettings],\n );\n const tableTheme = useMemo(\n () =>\n tableThemeProp ??\n resolveOwpTableTheme(currentSettings?.theme?.main?.table, {\n ...defaultStyledTableTheme,\n borderColor: defaultTableBorderColor,\n }),\n [currentSettings, defaultTableBorderColor, tableThemeProp],\n );\n const tableContainerRadiusSx = canTableRadiusZero\n ? tableRadiusZeroSx\n : canUseTreeGridStyle && canUseTableRadius\n ? {\n border: `1px solid ${TREEGRID_TABLE_BODY_BORDER_COLOR}`,\n borderRadius: toTableRadiusCssValue(tableBorderRadius),\n overflow: 'hidden',\n }\n : !canUseTreeGridStyle\n ? defaultTableRadiusSx\n : undefined;\n\n return (\n <>\n {canUseTreeGridStyle && <GlobalStyles styles={getTreeGridFontFaceStyles()} />}\n <TableContainer\n component={Paper}\n variant=\"outlined\"\n {...containerProps}\n sx={mergeSx(\n !canUseTreeGridStyle && { borderColor: tableTheme.borderColor },\n canUseTreeGridStyle && treeGridContainerSx,\n canUseTreeGridStyle && getTreeGridContainerSx(treeGridTheme),\n tableContainerRadiusSx,\n canBodyFullHeight && { height: '100%' },\n containerProps?.sx,\n )}\n >\n <OwpTableBaseInner\n {...tableProps}\n canBodyFullHeight={canBodyFullHeight}\n canUseTableRadius={canUseTableRadius}\n canUseTreeGridStyle={canUseTreeGridStyle}\n tableTheme={tableTheme}\n treeGridTheme={treeGridTheme}\n className={clsx(\n canBodyFullHeight && 'h-full',\n tableLayout === 'fixed' ? 'table-fixed' : tableLayout === 'auto' ? 'table-auto' : '',\n className,\n )}\n >\n {children}\n </OwpTableBaseInner>\n {footerSlot}\n </TableContainer>\n </>\n );\n};\n\n/** OWP Table 기반 table element */\nconst OwpTableBaseInner = styled(Table, {\n shouldForwardProp: (prop) =>\n prop !== 'canBodyFullHeight' &&\n prop !== 'canUseTableRadius' &&\n prop !== 'canUseTreeGridStyle' &&\n prop !== 'tableTheme' &&\n prop !== 'treeGridTheme',\n})<OwpTableBaseInnerProps>(\n ({\n canBodyFullHeight,\n canUseTableRadius,\n canUseTreeGridStyle,\n tableTheme,\n treeGridTheme,\n }) => {\n const resolvedTreeGridTheme = treeGridTheme ?? resolveOwpGridTheme();\n const resolvedTableTheme = tableTheme ?? defaultStyledTableTheme;\n const defaultTableBorder = `1px solid ${resolvedTableTheme.borderColor}`;\n const shouldUseTreeGridRadius = canUseTreeGridStyle && canUseTableRadius;\n\n return {\n ...(canBodyFullHeight && {\n height: '100%',\n }),\n ...(canBodyFullHeight && {\n '& .MuiTableBody-root': {\n height: '100%',\n },\n '& .MuiTableBody-root > .MuiTableRow-root': {\n height: '100%',\n },\n }),\n '& .MuiTableCell-root': canUseTreeGridStyle\n ? {\n ...getTreeGridCellBaseSx(resolvedTreeGridTheme),\n }\n : undefined,\n ...(!canUseTreeGridStyle && {\n '& .MuiTableRow-root > .MuiTableCell-root + .MuiTableCell-root': {\n borderLeft: defaultTableBorder,\n },\n '& .MuiTableRow-root > .MuiTableCell-root:not(:last-of-type)': {\n borderRight: defaultTableBorder,\n },\n '& tbody > .MuiTableRow-root:last-of-type > .MuiTableCell-root': {\n borderBottom: 'none',\n },\n }),\n '& th': canUseTreeGridStyle\n ? {\n ...getTreeGridHeaderCellSx(resolvedTreeGridTheme),\n '&:first-of-type': {\n borderLeft: `1px solid ${TREEGRID_TABLE_HEADER_BORDER_COLOR}`,\n },\n }\n : {\n ...getDefaultTableHeaderCellSx(\n resolvedTableTheme,\n DEFAULT_TABLE_HEADER_BACKGROUND_COLOR,\n ),\n },\n '& td': canUseTreeGridStyle\n ? {\n ...getTreeGridBodyCellSx(resolvedTreeGridTheme),\n '&:first-of-type': {\n borderLeft: `1px solid ${TREEGRID_TABLE_BODY_BORDER_COLOR}`,\n },\n }\n : {\n ...getDefaultTableCellSx(resolvedTableTheme),\n },\n ...(canUseTreeGridStyle && {\n '& tbody > .MuiTableRow-root': getTreeGridBodyRowSx(resolvedTreeGridTheme),\n }),\n ...(canUseTreeGridStyle && {\n '& tbody > tr:first-of-type > th:first-of-type': {\n borderTopLeftRadius: 'inherit',\n },\n '& tbody > tr:first-of-type > td:last-of-type': {\n borderTopRightRadius: 'inherit',\n },\n }),\n ...(shouldUseTreeGridRadius && {\n '& .MuiTableHead-root:first-of-type > .MuiTableRow-root:first-of-type > .MuiTableCell-root':\n {\n borderTop: 0,\n },\n '& .MuiTableBody-root:first-of-type > .MuiTableRow-root:first-of-type > .MuiTableCell-root':\n {\n borderTop: 0,\n },\n '& .MuiTableRow-root > .MuiTableCell-root:first-of-type': {\n borderLeft: 0,\n },\n '& .MuiTableRow-root > .MuiTableCell-root:last-of-type': {\n borderRight: 0,\n },\n '& .MuiTableBody-root > .MuiTableRow-root:last-of-type > .MuiTableCell-root': {\n borderBottom: 0,\n },\n }),\n };\n },\n);\n\n/** OWP Table 기반 row */\nexport const OwpTableBaseRow = styled(TableRow)({});\n"],"names":["treeGridContainerSx","defaultTableRadiusSx","DEFAULT_TABLE_RADIUS","tableRadiusZeroSx","defaultTableBorderColorByMode","OwpTableBase","__name","canBodyFullHeight","canTableRadiusZero","canUseTableRadius","canUseTreeGridStyle","children","className","containerProps","footerSlot","tableThemeProp","tableLayout","tableBorderRadius","tableProps","currentSettings","useGetCurrentSettings","defaultTableBorderColor","_c","_b","_a","treeGridTheme","useMemo","resolveOwpGridTheme","tableTheme","resolveOwpTableTheme","defaultStyledTableTheme","tableContainerRadiusSx","TREEGRID_TABLE_BODY_BORDER_COLOR","toTableRadiusCssValue","jsxs","Fragment","jsx","GlobalStyles","getTreeGridFontFaceStyles","TableContainer","Paper","mergeSx","getTreeGridContainerSx","OwpTableBaseInner","clsx","styled","Table","prop","resolvedTreeGridTheme","resolvedTableTheme","defaultTableBorder","shouldUseTreeGridRadius","getTreeGridCellBaseSx","getTreeGridHeaderCellSx","TREEGRID_TABLE_HEADER_BORDER_COLOR","getDefaultTableHeaderCellSx","DEFAULT_TABLE_HEADER_BACKGROUND_COLOR","getTreeGridBodyCellSx","getDefaultTableCellSx","getTreeGridBodyRowSx","OwpTableBaseRow","TableRow"],"mappings":"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"}
|
|
@@ -1,97 +1,46 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
import {
|
|
4
|
-
const
|
|
5
|
-
const e = s(o.header.height);
|
|
6
|
-
return r <= 1 ? e : `calc(${e} * ${r})`;
|
|
7
|
-
}, "getTreeGridHeaderFrameHeight"), c = /* @__PURE__ */ d((o) => `1px solid ${n(o.header.backgroundColor)}`, "getTreeGridHeaderEdgeBorder"), k = /* @__PURE__ */ d((o) => {
|
|
8
|
-
const r = c(o), e = n(
|
|
9
|
-
o.header.backgroundColor
|
|
10
|
-
);
|
|
11
|
-
return {
|
|
12
|
-
borderLeft: r,
|
|
13
|
-
borderRight: r,
|
|
14
|
-
borderTop: r,
|
|
15
|
-
boxShadow: [
|
|
16
|
-
`inset 1px 0 0 ${e}`,
|
|
17
|
-
`inset -1px 0 0 ${e}`,
|
|
18
|
-
`inset 0 1px 0 ${e}`
|
|
19
|
-
].join(", "),
|
|
20
|
-
position: "relative",
|
|
21
|
-
zIndex: 1
|
|
22
|
-
};
|
|
23
|
-
}, "getTreeGridHeaderEdgeHeadSx"), E = /* @__PURE__ */ d((o) => ({
|
|
24
|
-
"&&& .MuiTableHead-root": k(o)
|
|
25
|
-
}), "getTreeGridHeaderEdgeTableSx"), f = /* @__PURE__ */ d((o, r) => {
|
|
26
|
-
const e = c(o);
|
|
27
|
-
return {
|
|
28
|
-
...r.top && { borderTop: e },
|
|
29
|
-
...r.left && { borderLeft: e },
|
|
30
|
-
...r.right && { borderRight: e }
|
|
31
|
-
};
|
|
32
|
-
}, "getTreeGridHeaderEdgeCellSx"), R = /* @__PURE__ */ d(() => ({
|
|
33
|
-
borderBottom: `1px solid ${t}`
|
|
34
|
-
}), "getTreeGridHeaderBottomBodyBorderSx"), S = /* @__PURE__ */ d((o, r = 0) => {
|
|
35
|
-
const e = n(
|
|
36
|
-
o.header.backgroundColor
|
|
37
|
-
), a = x(o, r);
|
|
38
|
-
return {
|
|
39
|
-
background: r > 0 ? [
|
|
40
|
-
`linear-gradient(${o.body.backgroundColor}, ${o.body.backgroundColor}) padding-box`,
|
|
41
|
-
[
|
|
42
|
-
"linear-gradient(to bottom",
|
|
43
|
-
`${e} 0`,
|
|
44
|
-
`${e} ${a}`,
|
|
45
|
-
`${t} ${a}`,
|
|
46
|
-
`${t} 100%) border-box`
|
|
47
|
-
].join(", ")
|
|
48
|
-
].join(", ") : [
|
|
49
|
-
`linear-gradient(${o.body.backgroundColor}, ${o.body.backgroundColor}) padding-box`,
|
|
50
|
-
`linear-gradient(${t}, ${t}) border-box`
|
|
51
|
-
].join(", "),
|
|
52
|
-
backgroundClip: "padding-box, border-box",
|
|
53
|
-
border: "1px solid transparent"
|
|
54
|
-
};
|
|
55
|
-
}, "getTreeGridRadiusContainerFrameSx"), H = /* @__PURE__ */ d((o) => ({
|
|
1
|
+
var n = Object.defineProperty;
|
|
2
|
+
var l = (o, r) => n(o, "name", { value: r, configurable: !0 });
|
|
3
|
+
import { TREEGRID_FONT_FAMILY_STACK as C } from "../../../constants/treeGrid.js";
|
|
4
|
+
const e = "#6F7F94", c = "#CDD8E4", u = C, R = /* @__PURE__ */ l((o) => ({
|
|
56
5
|
backgroundColor: o.body.backgroundColor,
|
|
57
6
|
color: o.body.color
|
|
58
|
-
}), "getTreeGridContainerSx"),
|
|
59
|
-
fontFamily:
|
|
7
|
+
}), "getTreeGridContainerSx"), t = /* @__PURE__ */ l((o, r = "normal") => ({
|
|
8
|
+
fontFamily: u,
|
|
60
9
|
fontSize: o,
|
|
61
10
|
fontWeight: r,
|
|
62
11
|
lineHeight: "16px"
|
|
63
|
-
}), "getTreeGridTypographySx"),
|
|
64
|
-
...
|
|
12
|
+
}), "getTreeGridTypographySx"), b = /* @__PURE__ */ l((o) => ({
|
|
13
|
+
...t(o.cell.fontSize),
|
|
65
14
|
boxSizing: "border-box",
|
|
66
15
|
overflow: "hidden",
|
|
67
16
|
textOverflow: "ellipsis",
|
|
68
17
|
verticalAlign: "middle",
|
|
69
18
|
whiteSpace: "nowrap"
|
|
70
|
-
}), "getTreeGridCellBaseSx"),
|
|
71
|
-
...
|
|
19
|
+
}), "getTreeGridCellBaseSx"), i = /* @__PURE__ */ l((o) => ({
|
|
20
|
+
...t(
|
|
72
21
|
o.header.fontSize,
|
|
73
22
|
o.header.fontWeight
|
|
74
23
|
),
|
|
75
24
|
backgroundColor: o.header.backgroundColor,
|
|
76
|
-
borderTop: `1px solid ${
|
|
77
|
-
borderBottom: `1px solid ${
|
|
25
|
+
borderTop: `1px solid ${e}`,
|
|
26
|
+
borderBottom: `1px solid ${e}`,
|
|
78
27
|
borderLeft: 0,
|
|
79
|
-
borderRight: `1px solid ${
|
|
28
|
+
borderRight: `1px solid ${e}`,
|
|
80
29
|
color: o.header.color,
|
|
81
30
|
height: o.header.height,
|
|
82
31
|
minHeight: o.header.height,
|
|
83
32
|
padding: "7px 2px 6px 10px"
|
|
84
|
-
}), "getTreeGridHeaderCellSx"),
|
|
85
|
-
...
|
|
33
|
+
}), "getTreeGridHeaderCellSx"), B = /* @__PURE__ */ l((o) => ({
|
|
34
|
+
...b(o),
|
|
86
35
|
backgroundColor: o.row.backgroundColor,
|
|
87
|
-
borderBottom: `1px solid ${
|
|
36
|
+
borderBottom: `1px solid ${c}`,
|
|
88
37
|
borderLeft: 0,
|
|
89
|
-
borderRight: `1px solid ${
|
|
38
|
+
borderRight: `1px solid ${c}`,
|
|
90
39
|
color: o.body.color,
|
|
91
40
|
fontSize: o.cell.fontSize,
|
|
92
41
|
padding: "7px 10px 6px"
|
|
93
|
-
}), "getTreeGridBodyCellSx"),
|
|
94
|
-
const
|
|
42
|
+
}), "getTreeGridBodyCellSx"), x = /* @__PURE__ */ l((o) => o.state.selectedCellBackgroundColor, "getTreeGridSelectedCellBackgroundColor"), f = /* @__PURE__ */ l((o, r) => {
|
|
43
|
+
const d = x(o), a = r != null && r.selected ? d : o.row.backgroundColor, g = r != null && r.selected ? d : o.state.hoverRowBackgroundColor;
|
|
95
44
|
return {
|
|
96
45
|
"& > td": {
|
|
97
46
|
backgroundColor: a
|
|
@@ -102,10 +51,10 @@ const C = u, s = /* @__PURE__ */ d((o) => typeof o == "number" ? `${o}px` : o, "
|
|
|
102
51
|
}
|
|
103
52
|
},
|
|
104
53
|
"&.Mui-selected > td": {
|
|
105
|
-
backgroundColor:
|
|
54
|
+
backgroundColor: d
|
|
106
55
|
},
|
|
107
56
|
"&.Mui-selected:hover > td": {
|
|
108
|
-
backgroundColor:
|
|
57
|
+
backgroundColor: d
|
|
109
58
|
},
|
|
110
59
|
"&:focus-within > td": {
|
|
111
60
|
backgroundColor: o.state.focusedRowBackgroundColor
|
|
@@ -116,21 +65,15 @@ const C = u, s = /* @__PURE__ */ d((o) => typeof o == "number" ? `${o}px` : o, "
|
|
|
116
65
|
};
|
|
117
66
|
}, "getTreeGridBodyRowSx");
|
|
118
67
|
export {
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
f as getTreeGridHeaderEdgeCellSx,
|
|
130
|
-
k as getTreeGridHeaderEdgeHeadSx,
|
|
131
|
-
E as getTreeGridHeaderEdgeTableSx,
|
|
132
|
-
S as getTreeGridRadiusContainerFrameSx,
|
|
133
|
-
$ as getTreeGridSelectedCellBackgroundColor,
|
|
134
|
-
b as getTreeGridTypographySx
|
|
68
|
+
c as TREEGRID_TABLE_BODY_BORDER_COLOR,
|
|
69
|
+
u as TREEGRID_TABLE_FONT_FAMILY_STACK,
|
|
70
|
+
e as TREEGRID_TABLE_HEADER_BORDER_COLOR,
|
|
71
|
+
B as getTreeGridBodyCellSx,
|
|
72
|
+
f as getTreeGridBodyRowSx,
|
|
73
|
+
b as getTreeGridCellBaseSx,
|
|
74
|
+
R as getTreeGridContainerSx,
|
|
75
|
+
i as getTreeGridHeaderCellSx,
|
|
76
|
+
x as getTreeGridSelectedCellBackgroundColor,
|
|
77
|
+
t as getTreeGridTypographySx
|
|
135
78
|
};
|
|
136
79
|
//# sourceMappingURL=treeGridTableStyle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treeGridTableStyle.js","sources":["../../../../src/components/OwpTable/internal/treeGridTableStyle.ts"],"sourcesContent":["import {\n getTreeGridHeaderEdgeBorderColor,\n TREEGRID_FONT_FAMILY_STACK,\n TREEGRID_TABLE_BODY_BORDER_COLOR,\n TREEGRID_TABLE_HEADER_BORDER_COLOR,\n} from '@/constants/treeGrid';\nimport type { OwpResolvedGridThemeConfigType } from '@/constants/gridTheme';\n\nexport { TREEGRID_TABLE_BODY_BORDER_COLOR, TREEGRID_TABLE_HEADER_BORDER_COLOR };\n\nexport const TREEGRID_TABLE_FONT_FAMILY_STACK = TREEGRID_FONT_FAMILY_STACK;\n\nconst toTreeGridTableCssValue = (value: number | string) => {\n return typeof value === 'number' ? `${value}px` : value;\n};\n\nconst getTreeGridHeaderFrameHeight = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n headerRowCount: number,\n) => {\n const headerHeight = toTreeGridTableCssValue(treeGridTheme.header.height);\n\n if (headerRowCount <= 1) {\n return headerHeight;\n }\n\n return `calc(${headerHeight} * ${headerRowCount})`;\n};\n\n/**\n * TreeGrid header 외곽선 border 조회\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridHeaderEdgeBorder = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => {\n return `1px solid ${getTreeGridHeaderEdgeBorderColor(treeGridTheme.header.backgroundColor)}`;\n};\n\n/**\n * TreeGrid header 외곽선 head 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridHeaderEdgeHeadSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => {\n const headerEdgeBorder = getTreeGridHeaderEdgeBorder(treeGridTheme);\n const headerEdgeBorderColor = getTreeGridHeaderEdgeBorderColor(\n treeGridTheme.header.backgroundColor,\n );\n\n return {\n borderLeft: headerEdgeBorder,\n borderRight: headerEdgeBorder,\n borderTop: headerEdgeBorder,\n boxShadow: [\n `inset 1px 0 0 ${headerEdgeBorderColor}`,\n `inset -1px 0 0 ${headerEdgeBorderColor}`,\n `inset 0 1px 0 ${headerEdgeBorderColor}`,\n ].join(', '),\n position: 'relative',\n zIndex: 1,\n };\n};\n\n/**\n * TreeGrid header 외곽선 table selector 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridHeaderEdgeTableSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => ({\n '&&& .MuiTableHead-root': getTreeGridHeaderEdgeHeadSx(treeGridTheme),\n});\n\n/**\n * TreeGrid header cell 외곽선 매핑\n * @param treeGridTheme Grid theme 값\n * @param options 적용 edge\n */\nexport const getTreeGridHeaderEdgeCellSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n options: {\n top?: boolean;\n left?: boolean;\n right?: boolean;\n },\n) => {\n const headerEdgeBorder = getTreeGridHeaderEdgeBorder(treeGridTheme);\n\n return {\n ...(options.top && { borderTop: headerEdgeBorder }),\n ...(options.left && { borderLeft: headerEdgeBorder }),\n ...(options.right && { borderRight: headerEdgeBorder }),\n };\n};\n\n/** TreeGrid header 하단선 body border 매핑 */\nexport const getTreeGridHeaderBottomBodyBorderSx = () => ({\n borderBottom: `1px solid ${TREEGRID_TABLE_BODY_BORDER_COLOR}`,\n});\n\n/**\n * TreeGrid radius container 외곽선 매핑\n * @param treeGridTheme Grid theme 값\n * @param headerRowCount header row 수\n */\nexport const getTreeGridRadiusContainerFrameSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n headerRowCount = 0,\n) => {\n const headerEdgeBorderColor = getTreeGridHeaderEdgeBorderColor(\n treeGridTheme.header.backgroundColor,\n );\n const headerFrameHeight = getTreeGridHeaderFrameHeight(treeGridTheme, headerRowCount);\n const borderBackground =\n headerRowCount > 0\n ? [\n `linear-gradient(${treeGridTheme.body.backgroundColor}, ${treeGridTheme.body.backgroundColor}) padding-box`,\n [\n 'linear-gradient(to bottom',\n `${headerEdgeBorderColor} 0`,\n `${headerEdgeBorderColor} ${headerFrameHeight}`,\n `${TREEGRID_TABLE_BODY_BORDER_COLOR} ${headerFrameHeight}`,\n `${TREEGRID_TABLE_BODY_BORDER_COLOR} 100%) border-box`,\n ].join(', '),\n ].join(', ')\n : [\n `linear-gradient(${treeGridTheme.body.backgroundColor}, ${treeGridTheme.body.backgroundColor}) padding-box`,\n `linear-gradient(${TREEGRID_TABLE_BODY_BORDER_COLOR}, ${TREEGRID_TABLE_BODY_BORDER_COLOR}) border-box`,\n ].join(', ');\n\n return {\n background: borderBackground,\n backgroundClip: 'padding-box, border-box',\n border: '1px solid transparent',\n };\n};\n\n/**\n * TreeGrid 컨테이너 색상 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridContainerSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => ({\n backgroundColor: treeGridTheme.body.backgroundColor,\n color: treeGridTheme.body.color,\n});\n\n/**\n * TreeGrid 타이포그래피 매핑\n * @param fontSize 폰트 크기\n * @param fontWeight 폰트 두께\n */\nexport const getTreeGridTypographySx = (\n fontSize: number | string,\n fontWeight: number | string = 'normal',\n) => ({\n fontFamily: TREEGRID_TABLE_FONT_FAMILY_STACK,\n fontSize,\n fontWeight,\n lineHeight: '16px',\n});\n\n/**\n * TreeGrid 공통 셀 스타일 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridCellBaseSx = (treeGridTheme: OwpResolvedGridThemeConfigType) => ({\n ...getTreeGridTypographySx(treeGridTheme.cell.fontSize),\n boxSizing: 'border-box',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n verticalAlign: 'middle',\n whiteSpace: 'nowrap',\n});\n\n/**\n * TreeGrid header 셀 스타일 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridHeaderCellSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => ({\n ...getTreeGridTypographySx(\n treeGridTheme.header.fontSize,\n treeGridTheme.header.fontWeight,\n ),\n backgroundColor: treeGridTheme.header.backgroundColor,\n borderTop: `1px solid ${TREEGRID_TABLE_HEADER_BORDER_COLOR}`,\n borderBottom: `1px solid ${TREEGRID_TABLE_HEADER_BORDER_COLOR}`,\n borderLeft: 0,\n borderRight: `1px solid ${TREEGRID_TABLE_HEADER_BORDER_COLOR}`,\n color: treeGridTheme.header.color,\n height: treeGridTheme.header.height,\n minHeight: treeGridTheme.header.height,\n padding: '7px 2px 6px 10px',\n});\n\n/**\n * TreeGrid body 셀 스타일 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridBodyCellSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => ({\n ...getTreeGridCellBaseSx(treeGridTheme),\n backgroundColor: treeGridTheme.row.backgroundColor,\n borderBottom: `1px solid ${TREEGRID_TABLE_BODY_BORDER_COLOR}`,\n borderLeft: 0,\n borderRight: `1px solid ${TREEGRID_TABLE_BODY_BORDER_COLOR}`,\n color: treeGridTheme.body.color,\n fontSize: treeGridTheme.cell.fontSize,\n padding: '7px 10px 6px',\n});\n\n/**\n * TreeGrid 선택 셀 배경색\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridSelectedCellBackgroundColor = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => treeGridTheme.state.selectedCellBackgroundColor;\n\n/**\n * TreeGrid body row 상태 스타일 매핑\n * @param treeGridTheme Grid theme 값\n * @param options hover, selected 여부\n */\nexport const getTreeGridBodyRowSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n options?: {\n canHover?: boolean;\n selected?: boolean;\n },\n) => {\n const selectedCellBackgroundColor = getTreeGridSelectedCellBackgroundColor(treeGridTheme);\n const defaultBackgroundColor = options?.selected\n ? selectedCellBackgroundColor\n : treeGridTheme.row.backgroundColor;\n const hoverBackgroundColor = options?.selected\n ? selectedCellBackgroundColor\n : treeGridTheme.state.hoverRowBackgroundColor;\n\n return {\n '& > td': {\n backgroundColor: defaultBackgroundColor,\n },\n ...(options?.canHover && {\n '&:hover > td': {\n backgroundColor: hoverBackgroundColor,\n },\n }),\n '&.Mui-selected > td': {\n backgroundColor: selectedCellBackgroundColor,\n },\n '&.Mui-selected:hover > td': {\n backgroundColor: selectedCellBackgroundColor,\n },\n '&:focus-within > td': {\n backgroundColor: treeGridTheme.state.focusedRowBackgroundColor,\n },\n '& > td:focus-within': {\n backgroundColor: treeGridTheme.state.focusedCellBackgroundColor,\n },\n };\n};\n"],"names":["TREEGRID_TABLE_FONT_FAMILY_STACK","TREEGRID_FONT_FAMILY_STACK","toTreeGridTableCssValue","__name","value","getTreeGridHeaderFrameHeight","treeGridTheme","headerRowCount","headerHeight","getTreeGridHeaderEdgeBorder","getTreeGridHeaderEdgeBorderColor","getTreeGridHeaderEdgeHeadSx","headerEdgeBorder","headerEdgeBorderColor","getTreeGridHeaderEdgeTableSx","getTreeGridHeaderEdgeCellSx","options","getTreeGridHeaderBottomBodyBorderSx","TREEGRID_TABLE_BODY_BORDER_COLOR","getTreeGridRadiusContainerFrameSx","headerFrameHeight","getTreeGridContainerSx","getTreeGridTypographySx","fontSize","fontWeight","getTreeGridCellBaseSx","getTreeGridHeaderCellSx","TREEGRID_TABLE_HEADER_BORDER_COLOR","getTreeGridBodyCellSx","getTreeGridSelectedCellBackgroundColor","getTreeGridBodyRowSx","selectedCellBackgroundColor","defaultBackgroundColor","hoverBackgroundColor"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"treeGridTableStyle.js","sources":["../../../../src/components/OwpTable/internal/treeGridTableStyle.ts"],"sourcesContent":["import { TREEGRID_FONT_FAMILY_STACK } from '@/constants/treeGrid';\nimport type { OwpResolvedGridThemeConfigType } from '@/constants/gridTheme';\n\nexport const TREEGRID_TABLE_HEADER_BORDER_COLOR = '#6F7F94';\nexport const TREEGRID_TABLE_BODY_BORDER_COLOR = '#CDD8E4';\nexport const TREEGRID_TABLE_FONT_FAMILY_STACK = TREEGRID_FONT_FAMILY_STACK;\n\n/**\n * TreeGrid 컨테이너 색상 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridContainerSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => ({\n backgroundColor: treeGridTheme.body.backgroundColor,\n color: treeGridTheme.body.color,\n});\n\n/**\n * TreeGrid 타이포그래피 매핑\n * @param fontSize 폰트 크기\n * @param fontWeight 폰트 두께\n */\nexport const getTreeGridTypographySx = (\n fontSize: number | string,\n fontWeight: number | string = 'normal',\n) => ({\n fontFamily: TREEGRID_TABLE_FONT_FAMILY_STACK,\n fontSize,\n fontWeight,\n lineHeight: '16px',\n});\n\n/**\n * TreeGrid 공통 셀 스타일 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridCellBaseSx = (treeGridTheme: OwpResolvedGridThemeConfigType) => ({\n ...getTreeGridTypographySx(treeGridTheme.cell.fontSize),\n boxSizing: 'border-box',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n verticalAlign: 'middle',\n whiteSpace: 'nowrap',\n});\n\n/**\n * TreeGrid header 셀 스타일 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridHeaderCellSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => ({\n ...getTreeGridTypographySx(\n treeGridTheme.header.fontSize,\n treeGridTheme.header.fontWeight,\n ),\n backgroundColor: treeGridTheme.header.backgroundColor,\n borderTop: `1px solid ${TREEGRID_TABLE_HEADER_BORDER_COLOR}`,\n borderBottom: `1px solid ${TREEGRID_TABLE_HEADER_BORDER_COLOR}`,\n borderLeft: 0,\n borderRight: `1px solid ${TREEGRID_TABLE_HEADER_BORDER_COLOR}`,\n color: treeGridTheme.header.color,\n height: treeGridTheme.header.height,\n minHeight: treeGridTheme.header.height,\n padding: '7px 2px 6px 10px',\n});\n\n/**\n * TreeGrid body 셀 스타일 매핑\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridBodyCellSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => ({\n ...getTreeGridCellBaseSx(treeGridTheme),\n backgroundColor: treeGridTheme.row.backgroundColor,\n borderBottom: `1px solid ${TREEGRID_TABLE_BODY_BORDER_COLOR}`,\n borderLeft: 0,\n borderRight: `1px solid ${TREEGRID_TABLE_BODY_BORDER_COLOR}`,\n color: treeGridTheme.body.color,\n fontSize: treeGridTheme.cell.fontSize,\n padding: '7px 10px 6px',\n});\n\n/**\n * TreeGrid 선택 셀 배경색\n * @param treeGridTheme Grid theme 값\n */\nexport const getTreeGridSelectedCellBackgroundColor = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n) => treeGridTheme.state.selectedCellBackgroundColor;\n\n/**\n * TreeGrid body row 상태 스타일 매핑\n * @param treeGridTheme Grid theme 값\n * @param options hover, selected 여부\n */\nexport const getTreeGridBodyRowSx = (\n treeGridTheme: OwpResolvedGridThemeConfigType,\n options?: {\n canHover?: boolean;\n selected?: boolean;\n },\n) => {\n const selectedCellBackgroundColor = getTreeGridSelectedCellBackgroundColor(treeGridTheme);\n const defaultBackgroundColor = options?.selected\n ? selectedCellBackgroundColor\n : treeGridTheme.row.backgroundColor;\n const hoverBackgroundColor = options?.selected\n ? selectedCellBackgroundColor\n : treeGridTheme.state.hoverRowBackgroundColor;\n\n return {\n '& > td': {\n backgroundColor: defaultBackgroundColor,\n },\n ...(options?.canHover && {\n '&:hover > td': {\n backgroundColor: hoverBackgroundColor,\n },\n }),\n '&.Mui-selected > td': {\n backgroundColor: selectedCellBackgroundColor,\n },\n '&.Mui-selected:hover > td': {\n backgroundColor: selectedCellBackgroundColor,\n },\n '&:focus-within > td': {\n backgroundColor: treeGridTheme.state.focusedRowBackgroundColor,\n },\n '& > td:focus-within': {\n backgroundColor: treeGridTheme.state.focusedCellBackgroundColor,\n },\n };\n};\n"],"names":["TREEGRID_TABLE_HEADER_BORDER_COLOR","TREEGRID_TABLE_BODY_BORDER_COLOR","TREEGRID_TABLE_FONT_FAMILY_STACK","TREEGRID_FONT_FAMILY_STACK","getTreeGridContainerSx","__name","treeGridTheme","getTreeGridTypographySx","fontSize","fontWeight","getTreeGridCellBaseSx","getTreeGridHeaderCellSx","getTreeGridBodyCellSx","getTreeGridSelectedCellBackgroundColor","getTreeGridBodyRowSx","options","selectedCellBackgroundColor","defaultBackgroundColor","hoverBackgroundColor"],"mappings":";;;AAGO,MAAMA,IAAqC,WACrCC,IAAmC,WACnCC,IAAmCC,GAMnCC,IAAyB,gBAAAC,EAAA,CACpCC,OACI;AAAA,EACJ,iBAAiBA,EAAc,KAAK;AAAA,EACpC,OAAOA,EAAc,KAAK;AAC5B,IALsC,2BAYzBC,IAA0B,gBAAAF,EAAA,CACrCG,GACAC,IAA8B,cAC1B;AAAA,EACJ,YAAYP;AAAA,EACZ,UAAAM;AAAA,EACA,YAAAC;AAAA,EACA,YAAY;AACd,IARuC,4BAc1BC,IAAwB,gBAAAL,EAAA,CAACC,OAAmD;AAAA,EACvF,GAAGC,EAAwBD,EAAc,KAAK,QAAQ;AAAA,EACtD,WAAW;AAAA,EACX,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,YAAY;AACd,IAPqC,0BAaxBK,IAA0B,gBAAAN,EAAA,CACrCC,OACI;AAAA,EACJ,GAAGC;AAAA,IACDD,EAAc,OAAO;AAAA,IACrBA,EAAc,OAAO;AAAA,EAAA;AAAA,EAEvB,iBAAiBA,EAAc,OAAO;AAAA,EACtC,WAAW,aAAaN,CAAkC;AAAA,EAC1D,cAAc,aAAaA,CAAkC;AAAA,EAC7D,YAAY;AAAA,EACZ,aAAa,aAAaA,CAAkC;AAAA,EAC5D,OAAOM,EAAc,OAAO;AAAA,EAC5B,QAAQA,EAAc,OAAO;AAAA,EAC7B,WAAWA,EAAc,OAAO;AAAA,EAChC,SAAS;AACX,IAhBuC,4BAsB1BM,IAAwB,gBAAAP,EAAA,CACnCC,OACI;AAAA,EACJ,GAAGI,EAAsBJ,CAAa;AAAA,EACtC,iBAAiBA,EAAc,IAAI;AAAA,EACnC,cAAc,aAAaL,CAAgC;AAAA,EAC3D,YAAY;AAAA,EACZ,aAAa,aAAaA,CAAgC;AAAA,EAC1D,OAAOK,EAAc,KAAK;AAAA,EAC1B,UAAUA,EAAc,KAAK;AAAA,EAC7B,SAAS;AACX,IAXqC,0BAiBxBO,IAAyC,gBAAAR,EAAA,CACpDC,MACGA,EAAc,MAAM,6BAF6B,2CASzCQ,IAAuB,gBAAAT,EAAA,CAClCC,GACAS,MAIG;AACH,QAAMC,IAA8BH,EAAuCP,CAAa,GAClFW,IAAyBF,KAAA,QAAAA,EAAS,WACpCC,IACAV,EAAc,IAAI,iBAChBY,IAAuBH,KAAA,QAAAA,EAAS,WAClCC,IACAV,EAAc,MAAM;AAExB,SAAO;AAAA,IACL,UAAU;AAAA,MACR,iBAAiBW;AAAA,IAAA;AAAA,IAEnB,IAAIF,KAAA,gBAAAA,EAAS,aAAY;AAAA,MACvB,gBAAgB;AAAA,QACd,iBAAiBG;AAAA,MAAA;AAAA,IACnB;AAAA,IAEF,uBAAuB;AAAA,MACrB,iBAAiBF;AAAA,IAAA;AAAA,IAEnB,6BAA6B;AAAA,MAC3B,iBAAiBA;AAAA,IAAA;AAAA,IAEnB,uBAAuB;AAAA,MACrB,iBAAiBV,EAAc,MAAM;AAAA,IAAA;AAAA,IAEvC,uBAAuB;AAAA,MACrB,iBAAiBA,EAAc,MAAM;AAAA,IAAA;AAAA,EACvC;AAEJ,GArCoC;"}
|