@frontify/fondue 12.0.0-beta.215 → 12.0.0-beta.217
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/components/Table/Table.es.js +10 -10
- package/dist/components/Table/Table.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +2 -2
- package/dist/index.umd.js +3 -3
- package/dist/index.umd.js.map +1 -1
- package/dist/layout/LegacyStack/LegacyStack.d.ts +18 -0
- package/dist/layout/{Stack/Stack.es.js → LegacyStack/LegacyStack.es.js} +23 -22
- package/dist/layout/LegacyStack/LegacyStack.es.js.map +1 -0
- package/dist/layout/LegacyStack/index.d.ts +1 -0
- package/dist/layout/index.d.ts +1 -1
- package/package.json +1 -1
- package/dist/layout/Stack/Stack.d.ts +0 -17
- package/dist/layout/Stack/Stack.es.js.map +0 -1
- package/dist/layout/Stack/index.d.ts +0 -1
|
@@ -4,8 +4,8 @@ import { TableCellType as b, TableCell as H } from "./TableCell.es.js";
|
|
|
4
4
|
import { TableColumnHeaderType as p, TableColumnHeader as F } from "./TableColumnHeader.es.js";
|
|
5
5
|
import { TableHeaderRow as L } from "./TableHeaderRow.es.js";
|
|
6
6
|
import { TableRow as _ } from "./TableRow.es.js";
|
|
7
|
-
var $ = /* @__PURE__ */ ((e) => (e.NoSelect = "none", e.SingleSelect = "single", e.MultiSelect = "multiple", e))($ || {}),
|
|
8
|
-
const
|
|
7
|
+
var $ = /* @__PURE__ */ ((e) => (e.NoSelect = "none", e.SingleSelect = "single", e.MultiSelect = "multiple", e))($ || {}), z = /* @__PURE__ */ ((e) => (e.Ascending = "ascending", e.Descending = "descending", e))(z || {});
|
|
8
|
+
const B = "descending", I = (e, s, o = !1) => ({
|
|
9
9
|
children: [
|
|
10
10
|
/* @__PURE__ */ t.createElement(v, { key: "table-header", columns: e }, (l) => {
|
|
11
11
|
const n = !!(l.sortable && o);
|
|
@@ -13,7 +13,7 @@ const I = "descending", K = (e, s, o = !1) => ({
|
|
|
13
13
|
}),
|
|
14
14
|
/* @__PURE__ */ t.createElement(x, { key: "table-body", items: s }, (l) => /* @__PURE__ */ t.createElement(D, null, (n) => /* @__PURE__ */ t.createElement(R, { key: `${l.key}-${n}`, "aria-label": l.cells[n].ariaLabel }, l.cells[n].value)))
|
|
15
15
|
]
|
|
16
|
-
}),
|
|
16
|
+
}), K = (e, s) => e.find(({ key: o }) => o === s) || null, P = (e) => e.map(({ key: s }) => s), U = ({
|
|
17
17
|
columns: e,
|
|
18
18
|
rows: s,
|
|
19
19
|
onSelectionChange: o,
|
|
@@ -28,9 +28,9 @@ const I = "descending", K = (e, s, o = !1) => ({
|
|
|
28
28
|
}), h = (a, r) => {
|
|
29
29
|
w({
|
|
30
30
|
sortedColumnKey: a,
|
|
31
|
-
sortOrder: m !== a ?
|
|
31
|
+
sortOrder: m !== a ? B : r === "ascending" ? "descending" : "ascending"
|
|
32
32
|
}), n == null || n(a, r);
|
|
33
|
-
}, g =
|
|
33
|
+
}, g = P(s), T = O(null), E = I(e, s, !!n), f = S({
|
|
34
34
|
...E,
|
|
35
35
|
selectionMode: l,
|
|
36
36
|
showSelectionCheckboxes: u
|
|
@@ -60,7 +60,7 @@ const I = "descending", K = (e, s, o = !1) => ({
|
|
|
60
60
|
);
|
|
61
61
|
}), /* @__PURE__ */ t.createElement("td", null)))),
|
|
62
62
|
/* @__PURE__ */ t.createElement("tbody", null, [...i.body.childNodes].map((a) => {
|
|
63
|
-
const r =
|
|
63
|
+
const r = K(s, a.key);
|
|
64
64
|
return /* @__PURE__ */ t.createElement(_, { key: a.key, isSelected: d.includes(a.key) }, [...a.childNodes].map((c) => {
|
|
65
65
|
const C = c.props.isSelectionCell ? b.Checkbox : b.Default;
|
|
66
66
|
return /* @__PURE__ */ t.createElement(
|
|
@@ -75,14 +75,14 @@ const I = "descending", K = (e, s, o = !1) => ({
|
|
|
75
75
|
setSelectedRows: o
|
|
76
76
|
}
|
|
77
77
|
);
|
|
78
|
-
}), (r == null ? void 0 : r.actionElements) && /* @__PURE__ */ t.createElement("td", { className: "tw-sticky tw-right-0", "data-test-id": "table-actions" }, /* @__PURE__ */ t.createElement("div", { className: "tw-float-right hover:tw-bg-gradient-to-r hover:tw-from-transparent hover:tw-to-black-0 dark:hover:tw-to-black-95 tw-py-4 tw-pr-8 tw-pl-4" }, r.actionElements)));
|
|
78
|
+
}), (r == null ? void 0 : r.actionElements) && /* @__PURE__ */ t.createElement("td", { className: "tw-sticky tw-right-0 tw-z-10", "data-test-id": "table-actions" }, /* @__PURE__ */ t.createElement("div", { className: "tw-float-right hover:tw-bg-gradient-to-r hover:tw-from-transparent hover:tw-to-black-0 dark:hover:tw-to-black-95 tw-py-4 tw-pr-8 tw-pl-4" }, r.actionElements)));
|
|
79
79
|
}))
|
|
80
80
|
));
|
|
81
81
|
};
|
|
82
|
-
|
|
82
|
+
U.displayName = "FondueTable";
|
|
83
83
|
export {
|
|
84
84
|
$ as SelectionMode,
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
z as SortDirection,
|
|
86
|
+
U as Table
|
|
87
87
|
};
|
|
88
88
|
//# sourceMappingURL=Table.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.es.js","sources":["../../../src/components/Table/Table.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n Cell as AriaCell,\n Column as AriaColumn,\n Row as AriaRow,\n TableBody,\n TableHeader,\n TableStateProps,\n useTableState,\n} from '@react-stately/table';\nimport React, { Key, ReactNode, useRef, useState } from 'react';\nimport { TableCell, TableCellType } from './TableCell';\nimport { TableColumnHeader, TableColumnHeaderType } from './TableColumnHeader';\nimport { TableHeaderRow } from './TableHeaderRow';\nimport { TableRow } from './TableRow';\n\nexport enum SelectionMode {\n NoSelect = 'none',\n SingleSelect = 'single',\n MultiSelect = 'multiple',\n}\n\nexport type Cell = {\n sortId: string | number;\n value: ReactNode;\n ariaLabel?: string;\n};\n\nexport type Column = {\n name: string;\n key: string;\n sortable?: boolean;\n};\n\nexport type Row = {\n key: Key;\n // cell keys have to correspond to column key values\n // e.g. Column { name: 'User', key: 'user' } ==> Row Cell { user: { id: 'anna', value: 'Anna' } }\n cells: Record<string, Cell>;\n actionElements?: ReactNode;\n};\n\nexport type TableProps = {\n columns: Column[];\n rows: Row[];\n onSelectionChange?: (ids?: Key[]) => void;\n onSortChange?: (column: string, direction?: SortDirection) => void;\n selectionMode?: SelectionMode;\n selectedRowIds?: Key[];\n ariaLabel?: string;\n children?: ReactNode;\n};\n\nexport enum SortDirection {\n Ascending = 'ascending',\n Descending = 'descending',\n}\n\nconst DEFAULT_SORT_ORDER = SortDirection.Descending;\n\ntype SortType = {\n sortedColumnKey?: string;\n sortOrder?: SortDirection;\n};\n\n/* react-aria hook props types are inexplicitly typed */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst mapToTableAriaProps = (columns: Column[], rows: Row[], hasSort = false): TableStateProps<any> => {\n return {\n children: [\n <TableHeader key=\"table-header\" columns={columns}>\n {(column) => {\n const allowsSorting = !!(column.sortable && hasSort);\n return <AriaColumn allowsSorting={allowsSorting}>{column.name}</AriaColumn>;\n }}\n </TableHeader>,\n <TableBody key=\"table-body\" items={rows}>\n {(item) => (\n <AriaRow>\n {(columnKey) => (\n <AriaCell key={`${item.key}-${columnKey}`} aria-label={item.cells[columnKey].ariaLabel}>\n {item.cells[columnKey].value}\n </AriaCell>\n )}\n </AriaRow>\n )}\n </TableBody>,\n ],\n };\n};\n\nconst getRowFromId = (rows: Row[], id: Key) => rows.find(({ key }) => key === id) || null;\n\nconst getAllRowIds = (rows: Row[]): Key[] => rows.map(({ key: id }) => id);\n\nexport const Table = ({\n columns,\n rows,\n onSelectionChange,\n selectionMode = SelectionMode.NoSelect,\n onSortChange: onSort,\n selectedRowIds = [],\n ariaLabel = 'Table',\n}: TableProps) => {\n const isSelectTable = selectionMode === SelectionMode.SingleSelect || selectionMode === SelectionMode.MultiSelect;\n const [{ sortedColumnKey, sortOrder }, setSortedColumn] = useState<SortType>({\n sortedColumnKey: undefined,\n sortOrder: undefined,\n });\n\n const onSortChange = (column: string, direction?: SortDirection) => {\n const inverseSortDirection =\n direction === SortDirection.Ascending ? SortDirection.Descending : SortDirection.Ascending;\n setSortedColumn({\n sortedColumnKey: column,\n sortOrder: sortedColumnKey !== column ? DEFAULT_SORT_ORDER : inverseSortDirection,\n });\n onSort?.(column, direction);\n };\n\n const rowIds = getAllRowIds(rows);\n const ref = useRef<HTMLTableElement | null>(null);\n const props = mapToTableAriaProps(columns, rows, !!onSort);\n const state = useTableState({\n ...props,\n selectionMode,\n showSelectionCheckboxes: isSelectTable,\n });\n const { collection } = state;\n\n return (\n <div className=\"tw-w-full tw-max-h-96 sm:tw-max-h-full\">\n <table\n aria-label={ariaLabel}\n ref={ref}\n className=\"tw-border-collapse tw-table-auto tw-w-full tw-min-w-max tw-text-left dark:tw-bg-black-100 dark:tw-text-black-20\"\n >\n <thead>\n {collection.headerRows.map((headerRow) => (\n <TableHeaderRow key={headerRow.key}>\n {[...headerRow.childNodes].map((column) => {\n const headerType = column.props.isSelectionCell\n ? TableColumnHeaderType.SelectAll\n : TableColumnHeaderType.Default;\n\n return (\n <TableColumnHeader\n key={column.key}\n column={column}\n type={headerType}\n rowIds={rowIds}\n sortDirection={sortOrder}\n selectionMode={selectionMode}\n isColumnSorted={sortedColumnKey === column.key}\n handleSortChange={onSortChange}\n setSelectedRows={onSelectionChange}\n />\n );\n })}\n <td />\n </TableHeaderRow>\n ))}\n </thead>\n <tbody>\n {[...collection.body.childNodes].map((ariaRow) => {\n const row = getRowFromId(rows, ariaRow.key);\n\n return (\n <TableRow key={ariaRow.key} isSelected={selectedRowIds.includes(ariaRow.key)}>\n {[...ariaRow.childNodes].map((cell) => {\n const cellType = cell.props.isSelectionCell\n ? TableCellType.Checkbox\n : TableCellType.Default;\n return (\n <TableCell\n key={cell.key}\n cell={cell}\n selectionMode={selectionMode}\n type={cellType}\n isChecked={selectedRowIds.includes(ariaRow.key)}\n selectedRows={selectedRowIds}\n setSelectedRows={onSelectionChange}\n />\n );\n })}\n {row?.actionElements && (\n <td className=\"tw-sticky tw-right-0\" data-test-id=\"table-actions\">\n <div className=\"tw-float-right hover:tw-bg-gradient-to-r hover:tw-from-transparent hover:tw-to-black-0 dark:hover:tw-to-black-95 tw-py-4 tw-pr-8 tw-pl-4\">\n {row.actionElements}\n </div>\n </td>\n )}\n </TableRow>\n );\n })}\n </tbody>\n </table>\n </div>\n );\n};\nTable.displayName = 'FondueTable';\n"],"names":["SelectionMode","SortDirection","DEFAULT_SORT_ORDER","mapToTableAriaProps","columns","rows","hasSort","TableHeader","column","allowsSorting","React","AriaColumn","TableBody","item","AriaRow","columnKey","AriaCell","getRowFromId","id","key","getAllRowIds","Table","onSelectionChange","selectionMode","onSort","selectedRowIds","ariaLabel","isSelectTable","sortedColumnKey","sortOrder","setSortedColumn","useState","onSortChange","direction","rowIds","ref","useRef","props","state","useTableState","collection","headerRow","TableHeaderRow","headerType","TableColumnHeaderType","TableColumnHeader","ariaRow","row","TableRow","cell","cellType","TableCellType","TableCell"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Table.es.js","sources":["../../../src/components/Table/Table.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n Cell as AriaCell,\n Column as AriaColumn,\n Row as AriaRow,\n TableBody,\n TableHeader,\n TableStateProps,\n useTableState,\n} from '@react-stately/table';\nimport React, { Key, ReactNode, useRef, useState } from 'react';\nimport { TableCell, TableCellType } from './TableCell';\nimport { TableColumnHeader, TableColumnHeaderType } from './TableColumnHeader';\nimport { TableHeaderRow } from './TableHeaderRow';\nimport { TableRow } from './TableRow';\n\nexport enum SelectionMode {\n NoSelect = 'none',\n SingleSelect = 'single',\n MultiSelect = 'multiple',\n}\n\nexport type Cell = {\n sortId: string | number;\n value: ReactNode;\n ariaLabel?: string;\n};\n\nexport type Column = {\n name: string;\n key: string;\n sortable?: boolean;\n};\n\nexport type Row = {\n key: Key;\n // cell keys have to correspond to column key values\n // e.g. Column { name: 'User', key: 'user' } ==> Row Cell { user: { id: 'anna', value: 'Anna' } }\n cells: Record<string, Cell>;\n actionElements?: ReactNode;\n};\n\nexport type TableProps = {\n columns: Column[];\n rows: Row[];\n onSelectionChange?: (ids?: Key[]) => void;\n onSortChange?: (column: string, direction?: SortDirection) => void;\n selectionMode?: SelectionMode;\n selectedRowIds?: Key[];\n ariaLabel?: string;\n children?: ReactNode;\n};\n\nexport enum SortDirection {\n Ascending = 'ascending',\n Descending = 'descending',\n}\n\nconst DEFAULT_SORT_ORDER = SortDirection.Descending;\n\ntype SortType = {\n sortedColumnKey?: string;\n sortOrder?: SortDirection;\n};\n\n/* react-aria hook props types are inexplicitly typed */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst mapToTableAriaProps = (columns: Column[], rows: Row[], hasSort = false): TableStateProps<any> => {\n return {\n children: [\n <TableHeader key=\"table-header\" columns={columns}>\n {(column) => {\n const allowsSorting = !!(column.sortable && hasSort);\n return <AriaColumn allowsSorting={allowsSorting}>{column.name}</AriaColumn>;\n }}\n </TableHeader>,\n <TableBody key=\"table-body\" items={rows}>\n {(item) => (\n <AriaRow>\n {(columnKey) => (\n <AriaCell key={`${item.key}-${columnKey}`} aria-label={item.cells[columnKey].ariaLabel}>\n {item.cells[columnKey].value}\n </AriaCell>\n )}\n </AriaRow>\n )}\n </TableBody>,\n ],\n };\n};\n\nconst getRowFromId = (rows: Row[], id: Key) => rows.find(({ key }) => key === id) || null;\n\nconst getAllRowIds = (rows: Row[]): Key[] => rows.map(({ key: id }) => id);\n\nexport const Table = ({\n columns,\n rows,\n onSelectionChange,\n selectionMode = SelectionMode.NoSelect,\n onSortChange: onSort,\n selectedRowIds = [],\n ariaLabel = 'Table',\n}: TableProps) => {\n const isSelectTable = selectionMode === SelectionMode.SingleSelect || selectionMode === SelectionMode.MultiSelect;\n const [{ sortedColumnKey, sortOrder }, setSortedColumn] = useState<SortType>({\n sortedColumnKey: undefined,\n sortOrder: undefined,\n });\n\n const onSortChange = (column: string, direction?: SortDirection) => {\n const inverseSortDirection =\n direction === SortDirection.Ascending ? SortDirection.Descending : SortDirection.Ascending;\n setSortedColumn({\n sortedColumnKey: column,\n sortOrder: sortedColumnKey !== column ? DEFAULT_SORT_ORDER : inverseSortDirection,\n });\n onSort?.(column, direction);\n };\n\n const rowIds = getAllRowIds(rows);\n const ref = useRef<HTMLTableElement | null>(null);\n const props = mapToTableAriaProps(columns, rows, !!onSort);\n const state = useTableState({\n ...props,\n selectionMode,\n showSelectionCheckboxes: isSelectTable,\n });\n const { collection } = state;\n\n return (\n <div className=\"tw-w-full tw-max-h-96 sm:tw-max-h-full\">\n <table\n aria-label={ariaLabel}\n ref={ref}\n className=\"tw-border-collapse tw-table-auto tw-w-full tw-min-w-max tw-text-left dark:tw-bg-black-100 dark:tw-text-black-20\"\n >\n <thead>\n {collection.headerRows.map((headerRow) => (\n <TableHeaderRow key={headerRow.key}>\n {[...headerRow.childNodes].map((column) => {\n const headerType = column.props.isSelectionCell\n ? TableColumnHeaderType.SelectAll\n : TableColumnHeaderType.Default;\n\n return (\n <TableColumnHeader\n key={column.key}\n column={column}\n type={headerType}\n rowIds={rowIds}\n sortDirection={sortOrder}\n selectionMode={selectionMode}\n isColumnSorted={sortedColumnKey === column.key}\n handleSortChange={onSortChange}\n setSelectedRows={onSelectionChange}\n />\n );\n })}\n <td />\n </TableHeaderRow>\n ))}\n </thead>\n <tbody>\n {[...collection.body.childNodes].map((ariaRow) => {\n const row = getRowFromId(rows, ariaRow.key);\n\n return (\n <TableRow key={ariaRow.key} isSelected={selectedRowIds.includes(ariaRow.key)}>\n {[...ariaRow.childNodes].map((cell) => {\n const cellType = cell.props.isSelectionCell\n ? TableCellType.Checkbox\n : TableCellType.Default;\n return (\n <TableCell\n key={cell.key}\n cell={cell}\n selectionMode={selectionMode}\n type={cellType}\n isChecked={selectedRowIds.includes(ariaRow.key)}\n selectedRows={selectedRowIds}\n setSelectedRows={onSelectionChange}\n />\n );\n })}\n {row?.actionElements && (\n <td className=\"tw-sticky tw-right-0 tw-z-10\" data-test-id=\"table-actions\">\n <div className=\"tw-float-right hover:tw-bg-gradient-to-r hover:tw-from-transparent hover:tw-to-black-0 dark:hover:tw-to-black-95 tw-py-4 tw-pr-8 tw-pl-4\">\n {row.actionElements}\n </div>\n </td>\n )}\n </TableRow>\n );\n })}\n </tbody>\n </table>\n </div>\n );\n};\nTable.displayName = 'FondueTable';\n"],"names":["SelectionMode","SortDirection","DEFAULT_SORT_ORDER","mapToTableAriaProps","columns","rows","hasSort","TableHeader","column","allowsSorting","React","AriaColumn","TableBody","item","AriaRow","columnKey","AriaCell","getRowFromId","id","key","getAllRowIds","Table","onSelectionChange","selectionMode","onSort","selectedRowIds","ariaLabel","isSelectTable","sortedColumnKey","sortOrder","setSortedColumn","useState","onSortChange","direction","rowIds","ref","useRef","props","state","useTableState","collection","headerRow","TableHeaderRow","headerType","TableColumnHeaderType","TableColumnHeader","ariaRow","row","TableRow","cell","cellType","TableCellType","TableCell"],"mappings":";;;;;;AAiBY,IAAAA,sBAAAA,OACRA,EAAA,WAAW,QACXA,EAAA,eAAe,UACfA,EAAA,cAAc,YAHNA,IAAAA,KAAA,CAAA,CAAA,GAqCAC,sBAAAA,OACRA,EAAA,YAAY,aACZA,EAAA,aAAa,cAFLA,IAAAA,KAAA,CAAA,CAAA;AAKZ,MAAMC,IAAqB,cASrBC,IAAsB,CAACC,GAAmBC,GAAaC,IAAU,QAC5D;AAAA,EACH,UAAU;AAAA,oCACLC,GAAY,EAAA,KAAI,gBAAe,SAAAH,EAAA,GAC3B,CAACI,MAAW;AACT,YAAMC,IAAgB,CAAC,EAAED,EAAO,YAAYF;AAC5C,aAAQ,gBAAAI,EAAA,cAAAC,GAAA,EAAW,eAAAF,KAA+BD,EAAO,IAAK;AAAA,IAAA,CAEtE;AAAA,IACC,gBAAAE,EAAA,cAAAE,GAAA,EAAU,KAAI,cAAa,OAAOP,KAC9B,CAACQ,MACG,gBAAAH,EAAA,cAAAI,GAAA,MACI,CAACC,sCACGC,GAAS,EAAA,KAAK,GAAGH,EAAK,OAAOE,KAAa,cAAYF,EAAK,MAAME,CAAS,EAAE,UACxE,GAAAF,EAAK,MAAME,CAAS,EAAE,KAC3B,CAER,CAER;AAAA,EACJ;AAAA,IAIFE,IAAe,CAACZ,GAAaa,MAAYb,EAAK,KAAK,CAAC,EAAE,KAAAc,QAAUA,MAAQD,CAAE,KAAK,MAE/EE,IAAe,CAACf,MAAuBA,EAAK,IAAI,CAAC,EAAE,KAAKa,QAASA,CAAE,GAE5DG,IAAQ,CAAC;AAAA,EAClB,SAAAjB;AAAA,EACA,MAAAC;AAAA,EACA,mBAAAiB;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,cAAcC;AAAA,EACd,gBAAAC,IAAiB,CAAC;AAAA,EAClB,WAAAC,IAAY;AAChB,MAAkB;AACR,QAAAC,IAAgBJ,MAAkB,YAA8BA,MAAkB,YAClF,CAAC,EAAE,iBAAAK,GAAiB,WAAAC,EAAa,GAAAC,CAAe,IAAIC,EAAmB;AAAA,IACzE,iBAAiB;AAAA,IACjB,WAAW;AAAA,EAAA,CACd,GAEKC,IAAe,CAACxB,GAAgByB,MAA8B;AAGhD,IAAAH,EAAA;AAAA,MACZ,iBAAiBtB;AAAA,MACjB,WAAWoB,MAAoBpB,IAASN,IAHxC+B,MAAc,cAA0B,eAA2B;AAAA,IAGN,CAChE,GACDT,KAAA,QAAAA,EAAShB,GAAQyB;AAAA,EAAS,GAGxBC,IAASd,EAAaf,CAAI,GAC1B8B,IAAMC,EAAgC,IAAI,GAC1CC,IAAQlC,EAAoBC,GAASC,GAAM,CAAC,CAACmB,CAAM,GACnDc,IAAQC,EAAc;AAAA,IACxB,GAAGF;AAAA,IACH,eAAAd;AAAA,IACA,yBAAyBI;AAAA,EAAA,CAC5B,GACK,EAAE,YAAAa,EAAe,IAAAF;AAGnB,SAAA,gBAAA5B,EAAA,cAAC,OAAI,EAAA,WAAU,yCACX,GAAA,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,cAAYgB;AAAA,MACZ,KAAAS;AAAA,MACA,WAAU;AAAA,IAAA;AAAA,oCAET,SACI,MAAAK,EAAW,WAAW,IAAI,CAACC,MACvB,gBAAA/B,EAAA,cAAAgC,GAAA,EAAe,KAAKD,EAAU,OAC1B,CAAC,GAAGA,EAAU,UAAU,EAAE,IAAI,CAACjC,MAAW;AACvC,YAAMmC,IAAanC,EAAO,MAAM,kBAC1BoC,EAAsB,YACtBA,EAAsB;AAGxB,aAAA,gBAAAlC,EAAA;AAAA,QAACmC;AAAA,QAAA;AAAA,UACG,KAAKrC,EAAO;AAAA,UACZ,QAAAA;AAAA,UACA,MAAMmC;AAAA,UACN,QAAAT;AAAA,UACA,eAAeL;AAAA,UACf,eAAAN;AAAA,UACA,gBAAgBK,MAAoBpB,EAAO;AAAA,UAC3C,kBAAkBwB;AAAA,UAClB,iBAAiBV;AAAA,QAAA;AAAA,MAAA;AAAA,IACrB,CAEP,GACD,gBAAAZ,EAAA,cAAC,MAAG,IAAA,CACR,CACH,CACL;AAAA,IACA,gBAAAA,EAAA,cAAC,SACI,MAAA,CAAC,GAAG8B,EAAW,KAAK,UAAU,EAAE,IAAI,CAACM,MAAY;AAC9C,YAAMC,IAAM9B,EAAaZ,GAAMyC,EAAQ,GAAG;AAE1C,6CACKE,GAAS,EAAA,KAAKF,EAAQ,KAAK,YAAYrB,EAAe,SAASqB,EAAQ,GAAG,EAAA,GACtE,CAAC,GAAGA,EAAQ,UAAU,EAAE,IAAI,CAACG,MAAS;AACnC,cAAMC,IAAWD,EAAK,MAAM,kBACtBE,EAAc,WACdA,EAAc;AAEhB,eAAA,gBAAAzC,EAAA;AAAA,UAAC0C;AAAA,UAAA;AAAA,YACG,KAAKH,EAAK;AAAA,YACV,MAAAA;AAAA,YACA,eAAA1B;AAAA,YACA,MAAM2B;AAAA,YACN,WAAWzB,EAAe,SAASqB,EAAQ,GAAG;AAAA,YAC9C,cAAcrB;AAAA,YACd,iBAAiBH;AAAA,UAAA;AAAA,QAAA;AAAA,MACrB,CAEP,IACAyB,KAAA,gBAAAA,EAAK,mBACF,gBAAArC,EAAA,cAAC,QAAG,WAAU,gCAA+B,gBAAa,gBAAA,mCACrD,OAAI,EAAA,WAAU,8IACVqC,EAAI,cACT,CACJ,CAER;AAAA,IAAA,CAEP,CACL;AAAA,EAAA,CAER;AAER;AACA1B,EAAM,cAAc;"}
|