@activecollab/components 2.0.41 → 2.0.43
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/cjs/components/Avatar/Avatar.js +1 -1
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/CommandPalette/CommandPaletteItem.js +5 -5
- package/dist/cjs/components/CommandPalette/CommandPaletteItem.js.map +1 -1
- package/dist/cjs/components/Icons/collection/Letter.js +47 -0
- package/dist/cjs/components/Icons/collection/Letter.js.map +1 -0
- package/dist/cjs/components/Icons/collection/index.js +7 -0
- package/dist/cjs/components/Icons/collection/index.js.map +1 -1
- package/dist/cjs/components/Loaders/Linear/LinearLoader.js +16 -5
- package/dist/cjs/components/Loaders/Linear/LinearLoader.js.map +1 -1
- package/dist/cjs/components/Loaders/Linear/Styles.js +21 -2
- package/dist/cjs/components/Loaders/Linear/Styles.js.map +1 -1
- package/dist/cjs/components/Loaders/Skeleton/SkeletonLoader.js +26 -0
- package/dist/cjs/components/Loaders/Skeleton/SkeletonLoader.js.map +1 -0
- package/dist/cjs/components/Loaders/Skeleton/Styles.js +15 -0
- package/dist/cjs/components/Loaders/Skeleton/Styles.js.map +1 -0
- package/dist/cjs/components/Loaders/Skeleton/index.js +17 -0
- package/dist/cjs/components/Loaders/Skeleton/index.js.map +1 -0
- package/dist/cjs/components/Loaders/index.js +15 -4
- package/dist/cjs/components/Loaders/index.js.map +1 -1
- package/dist/cjs/components/Tables/DataTable.js +1 -1
- package/dist/cjs/components/Tables/DataTable.js.map +1 -1
- package/dist/esm/components/Avatar/Avatar.js +1 -1
- package/dist/esm/components/Avatar/Avatar.js.map +1 -1
- package/dist/esm/components/CommandPalette/CommandPaletteItem.d.ts.map +1 -1
- package/dist/esm/components/CommandPalette/CommandPaletteItem.js +5 -5
- package/dist/esm/components/CommandPalette/CommandPaletteItem.js.map +1 -1
- package/dist/esm/components/Icons/collection/Letter.d.ts +23 -0
- package/dist/esm/components/Icons/collection/Letter.d.ts.map +1 -0
- package/dist/esm/components/Icons/collection/Letter.js +45 -0
- package/dist/esm/components/Icons/collection/Letter.js.map +1 -0
- package/dist/esm/components/Icons/collection/index.d.ts +1 -0
- package/dist/esm/components/Icons/collection/index.d.ts.map +1 -1
- package/dist/esm/components/Icons/collection/index.js +7 -0
- package/dist/esm/components/Icons/collection/index.js.map +1 -1
- package/dist/esm/components/Loaders/Linear/LinearLoader.d.ts +8 -1
- package/dist/esm/components/Loaders/Linear/LinearLoader.d.ts.map +1 -1
- package/dist/esm/components/Loaders/Linear/LinearLoader.js +10 -3
- package/dist/esm/components/Loaders/Linear/LinearLoader.js.map +1 -1
- package/dist/esm/components/Loaders/Linear/Styles.d.ts +8 -1
- package/dist/esm/components/Loaders/Linear/Styles.d.ts.map +1 -1
- package/dist/esm/components/Loaders/Linear/Styles.js +3 -2
- package/dist/esm/components/Loaders/Linear/Styles.js.map +1 -1
- package/dist/esm/components/Loaders/Skeleton/SkeletonLoader.d.ts +3 -0
- package/dist/esm/components/Loaders/Skeleton/SkeletonLoader.d.ts.map +1 -0
- package/dist/esm/components/Loaders/Skeleton/SkeletonLoader.js +25 -0
- package/dist/esm/components/Loaders/Skeleton/SkeletonLoader.js.map +1 -0
- package/dist/esm/components/Loaders/Skeleton/Styles.d.ts +2 -0
- package/dist/esm/components/Loaders/Skeleton/Styles.d.ts.map +1 -0
- package/dist/esm/components/Loaders/Skeleton/Styles.js +15 -0
- package/dist/esm/components/Loaders/Skeleton/Styles.js.map +1 -0
- package/dist/esm/components/Loaders/Skeleton/index.d.ts +2 -0
- package/dist/esm/components/Loaders/Skeleton/index.d.ts.map +1 -0
- package/dist/esm/components/Loaders/Skeleton/index.js +17 -0
- package/dist/esm/components/Loaders/Skeleton/index.js.map +1 -0
- package/dist/esm/components/Loaders/index.d.ts +2 -1
- package/dist/esm/components/Loaders/index.d.ts.map +1 -1
- package/dist/esm/components/Loaders/index.js +15 -4
- package/dist/esm/components/Loaders/index.js.map +1 -1
- package/dist/esm/components/Tables/DataTable.js +1 -1
- package/dist/esm/components/Tables/DataTable.js.map +1 -1
- package/dist/index.js +146 -57
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_Table","_CollapseAll","_CollapseExpandSingle","_ExpandAll","_SortIcon","_Loaders","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","SortDirection","exports","groupByKey","items","key","Array","reduce","result","item","initialCollapsed","rows","groupBy","groupedData","keys","collapsedKeys","forEach","DataTable","_ref","header","className","sortBy","sortDirection","None","onSortCallback","theadClass","noResultsCallback","groupHead","isCollapsible","emptyValue","loading","loadingRows","args","columnDirection","setColumnDirection","useState","active","setActive","hovered","setHovered","collapsed","setCollapsed","sort","sortByKey","direction","rowsData","b","Asc","first","toString","second","localeCompare","initialData","useCallback","data","setData","getNextSortDirection","previousDirection","sameColumn","Desc","sortColumn","event","index","currentTarget","dataset","sortable","grouped","map","cellMouseOver","target","HTMLElement","cellMouseOut","useEffect","renderNoResults","createElement","colSpan","length","classNames","tableRef","useRef","overlayStyles","current","clientHeight","renderCell","h","row","colIndex","renderCallback","renderRow","rowIndex","onMouseOver","onMouseLeave","style","toggleCollapse","collapseKey","groupkey","prevState","newState","renderPlaceholders","useMemo","placeholders","fill","_","col","LinearLoader","Tbody","renderRows","Fragment","onClick","last","trim","hidden","allGroupsCollapsed","every","hasCollapsed","some","toggleAllCollapsed","StyledDataTable","_extends2","as","Table","innerRef","slice","Thead","hideCollapsed","height","label","width","displayName"],"sources":["../../../../src/components/Tables/DataTable.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n ReactNode,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport { StyledDataTable } from \"./Styles\";\nimport { ITableProps, Table, Tbody, Thead } from \"./Table\";\nimport { ISyntheticEvent } from \"../../types\";\nimport CollapseAllIcon from \"../Icons/collection/CollapseAll\";\nimport CollapseExpandSingleIcon from \"../Icons/collection/CollapseExpandSingle\";\nimport ExpandAllIcon from \"../Icons/collection/ExpandAll\";\nimport SortIcon from \"../Icons/collection/SortIcon\";\nimport { LinearLoader } from \"../Loaders\";\n\nexport enum SortDirection {\n None = \"none\",\n Asc = \"asc\",\n Desc = \"desc\",\n}\n\ninterface IHeaderDefinition {\n key: string;\n label?: string;\n sortable?: boolean;\n renderCallback?: (row: object, key?: string, index?: number) => ReactNode;\n style?: object;\n hideCollapsed?: boolean;\n}\n\nexport interface IDataTableProps extends ITableProps {\n /** Object of header name, sort and style. */\n header: IHeaderDefinition[];\n /** Object of rows. */\n rows?: object[];\n /** CSS classes. */\n className?: string;\n /** Name of row by which we are sorting. */\n sortBy?: string;\n /** Direction by which we are sorting. */\n sortDirection?: SortDirection;\n /** Callback for sorting. */\n onSortCallback?: (sortKey: string, sortDirection: SortDirection) => void;\n /** Switch for column highlighting. */\n columnHighlight?: boolean;\n /** CSS classes for thead. */\n theadClass?: string;\n /** Column by which is data-table grouped. */\n groupBy?: string;\n /** No results Callback. */\n noResultsCallback?: () => ReactNode;\n /** Header of grouped list in data-table. */\n groupHead?: (row: object, index: string | null) => ReactNode;\n /** Grouped rows can be collapsed */\n isCollapsible?: boolean;\n /** Value to replace when column is empty */\n emptyValue?: object;\n /** loading indicator */\n loading?: boolean;\n /** loading rows */\n loadingRows?: number;\n}\n\nconst groupByKey = (items: object[], key: string): object => {\n if (items[0] instanceof Array) {\n items = items[0];\n }\n return items.reduce((result: object, item: object) => {\n return {\n ...result,\n [item[key] !== null ? \" \" + item[key] : item[key]]: [\n ...(result[item[key] !== null ? \" \" + item[key] : item[key]] || []),\n item,\n ],\n };\n }, {});\n};\n\nconst initialCollapsed = (rows: object[], groupBy?: string): object => {\n if (groupBy) {\n const groupedData = groupByKey(rows, groupBy);\n const keys = Object.keys(groupedData);\n const collapsedKeys = {};\n keys.forEach((key) => {\n collapsedKeys[key] = true;\n });\n return collapsedKeys;\n }\n return {};\n};\n\nexport const DataTable: FC<IDataTableProps> = ({\n header,\n rows = [],\n className,\n sortBy,\n sortDirection = SortDirection.None,\n onSortCallback,\n theadClass,\n noResultsCallback,\n groupBy,\n groupHead = (): null => null,\n isCollapsible,\n emptyValue,\n loading,\n loadingRows = 7,\n ...args\n}) => {\n const [columnDirection, setColumnDirection] = useState(sortDirection);\n const [active, setActive] = useState(sortBy);\n const [hovered, setHovered] = useState<string | null>();\n const [collapsed, setCollapsed] = useState(() => {\n return initialCollapsed(rows, groupBy);\n });\n const sort = (\n sortByKey: string,\n direction: SortDirection,\n rowsData: Record<string, string>[] | object\n ): object => {\n if (direction === SortDirection.None) {\n return rowsData;\n }\n\n if (rowsData instanceof Array)\n return rowsData.sort((a: object, b: object) => {\n if (direction === SortDirection.Asc) {\n if (a[sortByKey] === null) {\n return 1;\n }\n if (b[sortByKey] === null) {\n return -1;\n }\n }\n if (a[sortByKey] === null) {\n return -1;\n }\n if (b[sortByKey] === null) {\n return 1;\n }\n if (typeof a[sortByKey] === \"number\") {\n if (direction === SortDirection.Asc) {\n return a[sortByKey] - b[sortByKey];\n }\n return b[sortByKey] - a[sortByKey];\n }\n\n const first = a[sortByKey].toString();\n const second = b[sortByKey].toString();\n\n if (direction === SortDirection.Asc) {\n return first.localeCompare(second);\n }\n\n return second.localeCompare(first);\n });\n return {};\n };\n\n const initialData = useCallback(() => {\n if (sortBy && !groupBy) {\n return sort(sortBy, sortDirection, rows);\n }\n if (sortBy && groupBy) {\n sort(sortBy, sortDirection, rows);\n return groupByKey(rows, groupBy);\n }\n if (!sortBy && groupBy) {\n return groupByKey(rows, groupBy);\n }\n return rows;\n }, [groupBy, rows, sortBy, sortDirection]);\n\n const [data, setData] = useState<Record<string, string> | object>(\n initialData\n );\n\n const getNextSortDirection = (\n previousDirection: SortDirection,\n sameColumn: boolean\n ): SortDirection => {\n if (!sameColumn) {\n return SortDirection.Asc;\n }\n if (previousDirection === SortDirection.Asc) {\n return SortDirection.Desc;\n }\n return SortDirection.Asc;\n };\n\n const sortColumn = useCallback(\n (event: ISyntheticEvent) => {\n const index = event.currentTarget.dataset.index;\n if (index && header[index] && header[index].sortable) {\n const direction = getNextSortDirection(\n columnDirection,\n header[index].key === active\n );\n setActive(header[index].key);\n setColumnDirection(direction);\n if (groupBy) {\n let grouped: object = {\n ...data,\n };\n\n if (groupBy !== header[index].key) {\n Object.keys(grouped).map((key: string) => {\n grouped[key] = sort(header[index].key, direction, grouped[key]);\n });\n } else {\n if (rows instanceof Object) {\n grouped = sort(header[index].key, direction, rows);\n grouped = groupByKey([grouped], groupBy);\n }\n }\n setData(grouped);\n } else {\n setData(sort(header[index].key, direction, data));\n }\n if (onSortCallback) {\n onSortCallback(header[index].key, direction);\n }\n }\n\n return null;\n },\n [\n setData,\n data,\n columnDirection,\n setColumnDirection,\n header,\n active,\n setActive,\n onSortCallback,\n groupBy,\n rows,\n ]\n );\n\n const cellMouseOver = useCallback((e: ISyntheticEvent) => {\n if (e.target instanceof HTMLElement) {\n if (e.target.dataset.key) {\n setHovered(e.target.dataset.key);\n }\n }\n }, []);\n\n const cellMouseOut = useCallback(() => {\n setHovered(null);\n }, []);\n\n useEffect(() => {\n setData(initialData());\n setCollapsed(initialCollapsed(rows, groupBy));\n }, [rows, groupBy, initialData]);\n\n const renderNoResults = useCallback(() => {\n return (\n <tr>\n <td\n colSpan={header.length}\n className={classNames({ \"text-center\": !noResultsCallback })}\n >\n {noResultsCallback ? noResultsCallback() : \"There is no data.\"}\n </td>\n </tr>\n );\n }, [header, noResultsCallback]);\n\n const tableRef = useRef<HTMLTableElement>(null);\n\n const overlayStyles = (): number | undefined => {\n if (tableRef.current) {\n return tableRef.current.clientHeight + 5;\n }\n };\n\n const renderCell = useCallback(\n (h: IHeaderDefinition, row: object, colIndex: number) => {\n if (h.renderCallback) {\n return h.renderCallback(row, h.key, colIndex);\n }\n if (row[h.key] === null && emptyValue) {\n return <i className=\"opacity-75\">{emptyValue[h.key]}</i>;\n }\n return row[h.key];\n },\n [emptyValue]\n );\n\n const renderRow = useCallback(\n (row: object, rowIndex: number) => {\n return (\n <tr\n key={rowIndex}\n data-index={rowIndex}\n data-direction=\"asc\"\n className=\"c-table__row\"\n onMouseOver={cellMouseOver}\n onMouseLeave={cellMouseOut}\n >\n {header.map((h: IHeaderDefinition, colIndex: number) => {\n return (\n <td\n key={colIndex}\n className={classNames(`c-table__cell c-data-table__item`, {\n hovered: hovered === h.key,\n })}\n data-key={h.key}\n style={header[colIndex].style ? header[colIndex].style : {}}\n >\n {renderCell(h, row, colIndex)}\n </td>\n );\n })}\n </tr>\n );\n },\n [cellMouseOut, cellMouseOver, header, hovered, renderCell]\n );\n\n const toggleCollapse = useCallback((event) => {\n const collapseKey = event.currentTarget.dataset.groupkey;\n setCollapsed((prevState) => {\n const newState = { ...prevState };\n newState[collapseKey] = !prevState[collapseKey];\n return newState;\n });\n }, []);\n\n const renderPlaceholders = useMemo(() => {\n const placeholders = Array(loadingRows)\n .fill({})\n .map((_, index) => {\n return (\n <tr\n key={index}\n className=\"c-table__row\"\n onMouseOver={cellMouseOver}\n onMouseLeave={cellMouseOut}\n >\n {header.map((col, colIndex) => {\n return (\n <td\n key={colIndex}\n className={classNames(`c-table__cell c-data-table__item`, {\n hovered: hovered === col.key,\n })}\n data-key={col.key}\n >\n <LinearLoader />\n </td>\n );\n })}\n </tr>\n );\n });\n\n return <Tbody>{placeholders}</Tbody>;\n }, [cellMouseOut, cellMouseOver, header, hovered, loadingRows]);\n\n const renderRows = useMemo(() => {\n if (\n (data && data instanceof Array && data.length > 0) ||\n (typeof data === \"object\" && Object.keys(data).length > 0)\n ) {\n if (groupBy) {\n const keys = Object.keys(data);\n return keys.map((key: string, i: number) => {\n return (\n <Fragment key={key}>\n {isCollapsible && (\n <Tbody className=\"c-table__collapse_body\">\n <tr>\n <td\n data-groupkey={key}\n onClick={toggleCollapse}\n className=\"c-table__body__icon c-table--toggle-collapsed\"\n >\n <CollapseExpandSingleIcon\n className={classNames({\n \"c-table__collapse_icon--expanded\": !collapsed[key],\n \"c-table__collapse_icon--collapsed\": collapsed[key],\n })}\n />\n </td>\n </tr>\n </Tbody>\n )}\n <Tbody\n className={classNames(\"c-table__grouped__head\", `head_${i}`, {\n \"c-table__grouped__head--expanded\":\n isCollapsible && !collapsed[key],\n \"c-table__grouped__head--collapsed\":\n isCollapsible && collapsed[key],\n last: i === keys.length - 1,\n first: i === 0,\n })}\n >\n {groupHead(\n data[key],\n keys[i] !== \"null\" ? keys[i].trim() : null\n )}\n </Tbody>\n <Tbody\n className={classNames(`c-table__group c-table_group_${i}`, {\n hidden: collapsed[key],\n })}\n >\n {data[key].map((row: object, index: number) => {\n return renderRow(row, index);\n })}\n </Tbody>\n </Fragment>\n );\n });\n }\n return (\n <Tbody>\n {data instanceof Array &&\n data.map((row: object, rowIndex: number) => {\n return renderRow(row, rowIndex);\n })}\n </Tbody>\n );\n }\n return renderNoResults();\n }, [\n data,\n groupBy,\n renderRow,\n groupHead,\n collapsed,\n isCollapsible,\n renderNoResults,\n toggleCollapse,\n ]);\n\n const allGroupsCollapsed = useMemo(() => {\n return Object.keys(collapsed).every((key) => {\n return collapsed[key];\n });\n }, [collapsed]);\n\n const hasCollapsed = useMemo(() => {\n return Object.keys(collapsed).some((key) => {\n return collapsed[key];\n });\n }, [collapsed]);\n\n const toggleAllCollapsed = useCallback(() => {\n if (hasCollapsed) {\n setCollapsed((prevState) => {\n const newState = { ...prevState };\n Object.keys(newState).forEach((key) => {\n newState[key] = false;\n });\n return newState;\n });\n } else {\n setCollapsed((prevState) => {\n const newState = { ...prevState };\n Object.keys(newState).forEach((key) => {\n newState[key] = true;\n });\n return newState;\n });\n }\n }, [hasCollapsed]);\n\n return (\n <StyledDataTable\n as={Table}\n innerRef={tableRef}\n className={classNames(\"c-data-table\", className, {\n \"c-table__grouped\": groupBy,\n \"c-table__collapsible\": isCollapsible,\n \"padding-b-0\": groupBy && collapsed[Object.keys(data).slice(-1)[0]],\n })}\n {...args}\n >\n <Thead className={theadClass}>\n {header.length > 0 && (\n <tr className=\"c-table__row\">\n {header.map((h: IHeaderDefinition, index: number) => {\n return (\n <th\n key={h.key}\n className={classNames(`c-table__cell`, {\n \"c-table__cell--hovered\": hovered === h.key,\n \"c-table__head--hidden\":\n groupBy && allGroupsCollapsed && h.hideCollapsed,\n })}\n onMouseOver={cellMouseOver}\n onMouseLeave={cellMouseOut}\n data-key={h.key}\n style={h.style}\n >\n {isCollapsible && groupBy && index === 0 && (\n <span\n className=\"c-table__head__icon-wrapper\"\n onClick={toggleAllCollapsed}\n data-test=\"toggle-collapse\"\n >\n {hasCollapsed ? (\n <ExpandAllIcon className=\"c-table__head__icon-wrapper__icon\" />\n ) : (\n <CollapseAllIcon className=\"c-table__head__icon-wrapper__icon\" />\n )}\n </span>\n )}\n {hovered === h.key && (\n <div\n className=\"c-table__overlay\"\n style={{ height: overlayStyles() + `px` }}\n />\n )}\n <div\n onClick={sortColumn}\n data-index={index}\n className={classNames(\"c-table__icon-wrapper\", {\n \"cursor-pointer\": h.sortable === true,\n })}\n >\n <span className=\"c-table__label\">{h.label}</span>\n {h.sortable && (\n <SortIcon\n width=\"10px\"\n height=\"10px\"\n className={classNames(\"c-table__icon\", {\n \"c-table__icon--inactive\": h.key !== active,\n \"c-table__icon--active\": h.key === active,\n \"c-table__icon--asc\":\n columnDirection === SortDirection.Asc &&\n h.key === active,\n \"c-table__icon--desc\":\n columnDirection === SortDirection.Desc &&\n h.key === active,\n })}\n />\n )}\n </div>\n </th>\n );\n })}\n </tr>\n )}\n </Thead>\n\n {loading ? renderPlaceholders : renderRows}\n </StyledDataTable>\n );\n};\n\nDataTable.displayName = \"DataTable\";\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DataTable.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_Table","_CollapseAll","_CollapseExpandSingle","_ExpandAll","_SortIcon","_Loaders","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","SortDirection","exports","groupByKey","items","key","Array","reduce","result","item","initialCollapsed","rows","groupBy","groupedData","keys","collapsedKeys","forEach","DataTable","_ref","header","className","sortBy","sortDirection","None","onSortCallback","theadClass","noResultsCallback","groupHead","isCollapsible","emptyValue","loading","loadingRows","args","columnDirection","setColumnDirection","useState","active","setActive","hovered","setHovered","collapsed","setCollapsed","sort","sortByKey","direction","rowsData","b","Asc","first","toString","second","localeCompare","initialData","useCallback","data","setData","getNextSortDirection","previousDirection","sameColumn","Desc","sortColumn","event","index","currentTarget","dataset","sortable","grouped","map","cellMouseOver","target","HTMLElement","cellMouseOut","useEffect","renderNoResults","createElement","colSpan","length","classNames","tableRef","useRef","overlayStyles","current","clientHeight","renderCell","h","row","colIndex","renderCallback","renderRow","rowIndex","onMouseOver","onMouseLeave","style","toggleCollapse","collapseKey","groupkey","prevState","newState","renderPlaceholders","useMemo","placeholders","fill","_","col","SkeletonLoader","Tbody","renderRows","Fragment","onClick","last","trim","hidden","allGroupsCollapsed","every","hasCollapsed","some","toggleAllCollapsed","StyledDataTable","_extends2","as","Table","innerRef","slice","Thead","hideCollapsed","height","label","width","displayName"],"sources":["../../../../src/components/Tables/DataTable.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n ReactNode,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport { StyledDataTable } from \"./Styles\";\nimport { ITableProps, Table, Tbody, Thead } from \"./Table\";\nimport { ISyntheticEvent } from \"../../types\";\nimport CollapseAllIcon from \"../Icons/collection/CollapseAll\";\nimport CollapseExpandSingleIcon from \"../Icons/collection/CollapseExpandSingle\";\nimport ExpandAllIcon from \"../Icons/collection/ExpandAll\";\nimport SortIcon from \"../Icons/collection/SortIcon\";\nimport { SkeletonLoader } from \"../Loaders\";\n\nexport enum SortDirection {\n None = \"none\",\n Asc = \"asc\",\n Desc = \"desc\",\n}\n\ninterface IHeaderDefinition {\n key: string;\n label?: string;\n sortable?: boolean;\n renderCallback?: (row: object, key?: string, index?: number) => ReactNode;\n style?: object;\n hideCollapsed?: boolean;\n}\n\nexport interface IDataTableProps extends ITableProps {\n /** Object of header name, sort and style. */\n header: IHeaderDefinition[];\n /** Object of rows. */\n rows?: object[];\n /** CSS classes. */\n className?: string;\n /** Name of row by which we are sorting. */\n sortBy?: string;\n /** Direction by which we are sorting. */\n sortDirection?: SortDirection;\n /** Callback for sorting. */\n onSortCallback?: (sortKey: string, sortDirection: SortDirection) => void;\n /** Switch for column highlighting. */\n columnHighlight?: boolean;\n /** CSS classes for thead. */\n theadClass?: string;\n /** Column by which is data-table grouped. */\n groupBy?: string;\n /** No results Callback. */\n noResultsCallback?: () => ReactNode;\n /** Header of grouped list in data-table. */\n groupHead?: (row: object, index: string | null) => ReactNode;\n /** Grouped rows can be collapsed */\n isCollapsible?: boolean;\n /** Value to replace when column is empty */\n emptyValue?: object;\n /** loading indicator */\n loading?: boolean;\n /** loading rows */\n loadingRows?: number;\n}\n\nconst groupByKey = (items: object[], key: string): object => {\n if (items[0] instanceof Array) {\n items = items[0];\n }\n return items.reduce((result: object, item: object) => {\n return {\n ...result,\n [item[key] !== null ? \" \" + item[key] : item[key]]: [\n ...(result[item[key] !== null ? \" \" + item[key] : item[key]] || []),\n item,\n ],\n };\n }, {});\n};\n\nconst initialCollapsed = (rows: object[], groupBy?: string): object => {\n if (groupBy) {\n const groupedData = groupByKey(rows, groupBy);\n const keys = Object.keys(groupedData);\n const collapsedKeys = {};\n keys.forEach((key) => {\n collapsedKeys[key] = true;\n });\n return collapsedKeys;\n }\n return {};\n};\n\nexport const DataTable: FC<IDataTableProps> = ({\n header,\n rows = [],\n className,\n sortBy,\n sortDirection = SortDirection.None,\n onSortCallback,\n theadClass,\n noResultsCallback,\n groupBy,\n groupHead = (): null => null,\n isCollapsible,\n emptyValue,\n loading,\n loadingRows = 7,\n ...args\n}) => {\n const [columnDirection, setColumnDirection] = useState(sortDirection);\n const [active, setActive] = useState(sortBy);\n const [hovered, setHovered] = useState<string | null>();\n const [collapsed, setCollapsed] = useState(() => {\n return initialCollapsed(rows, groupBy);\n });\n const sort = (\n sortByKey: string,\n direction: SortDirection,\n rowsData: Record<string, string>[] | object\n ): object => {\n if (direction === SortDirection.None) {\n return rowsData;\n }\n\n if (rowsData instanceof Array)\n return rowsData.sort((a: object, b: object) => {\n if (direction === SortDirection.Asc) {\n if (a[sortByKey] === null) {\n return 1;\n }\n if (b[sortByKey] === null) {\n return -1;\n }\n }\n if (a[sortByKey] === null) {\n return -1;\n }\n if (b[sortByKey] === null) {\n return 1;\n }\n if (typeof a[sortByKey] === \"number\") {\n if (direction === SortDirection.Asc) {\n return a[sortByKey] - b[sortByKey];\n }\n return b[sortByKey] - a[sortByKey];\n }\n\n const first = a[sortByKey].toString();\n const second = b[sortByKey].toString();\n\n if (direction === SortDirection.Asc) {\n return first.localeCompare(second);\n }\n\n return second.localeCompare(first);\n });\n return {};\n };\n\n const initialData = useCallback(() => {\n if (sortBy && !groupBy) {\n return sort(sortBy, sortDirection, rows);\n }\n if (sortBy && groupBy) {\n sort(sortBy, sortDirection, rows);\n return groupByKey(rows, groupBy);\n }\n if (!sortBy && groupBy) {\n return groupByKey(rows, groupBy);\n }\n return rows;\n }, [groupBy, rows, sortBy, sortDirection]);\n\n const [data, setData] = useState<Record<string, string> | object>(\n initialData\n );\n\n const getNextSortDirection = (\n previousDirection: SortDirection,\n sameColumn: boolean\n ): SortDirection => {\n if (!sameColumn) {\n return SortDirection.Asc;\n }\n if (previousDirection === SortDirection.Asc) {\n return SortDirection.Desc;\n }\n return SortDirection.Asc;\n };\n\n const sortColumn = useCallback(\n (event: ISyntheticEvent) => {\n const index = event.currentTarget.dataset.index;\n if (index && header[index] && header[index].sortable) {\n const direction = getNextSortDirection(\n columnDirection,\n header[index].key === active\n );\n setActive(header[index].key);\n setColumnDirection(direction);\n if (groupBy) {\n let grouped: object = {\n ...data,\n };\n\n if (groupBy !== header[index].key) {\n Object.keys(grouped).map((key: string) => {\n grouped[key] = sort(header[index].key, direction, grouped[key]);\n });\n } else {\n if (rows instanceof Object) {\n grouped = sort(header[index].key, direction, rows);\n grouped = groupByKey([grouped], groupBy);\n }\n }\n setData(grouped);\n } else {\n setData(sort(header[index].key, direction, data));\n }\n if (onSortCallback) {\n onSortCallback(header[index].key, direction);\n }\n }\n\n return null;\n },\n [\n setData,\n data,\n columnDirection,\n setColumnDirection,\n header,\n active,\n setActive,\n onSortCallback,\n groupBy,\n rows,\n ]\n );\n\n const cellMouseOver = useCallback((e: ISyntheticEvent) => {\n if (e.target instanceof HTMLElement) {\n if (e.target.dataset.key) {\n setHovered(e.target.dataset.key);\n }\n }\n }, []);\n\n const cellMouseOut = useCallback(() => {\n setHovered(null);\n }, []);\n\n useEffect(() => {\n setData(initialData());\n setCollapsed(initialCollapsed(rows, groupBy));\n }, [rows, groupBy, initialData]);\n\n const renderNoResults = useCallback(() => {\n return (\n <tr>\n <td\n colSpan={header.length}\n className={classNames({ \"text-center\": !noResultsCallback })}\n >\n {noResultsCallback ? noResultsCallback() : \"There is no data.\"}\n </td>\n </tr>\n );\n }, [header, noResultsCallback]);\n\n const tableRef = useRef<HTMLTableElement>(null);\n\n const overlayStyles = (): number | undefined => {\n if (tableRef.current) {\n return tableRef.current.clientHeight + 5;\n }\n };\n\n const renderCell = useCallback(\n (h: IHeaderDefinition, row: object, colIndex: number) => {\n if (h.renderCallback) {\n return h.renderCallback(row, h.key, colIndex);\n }\n if (row[h.key] === null && emptyValue) {\n return <i className=\"opacity-75\">{emptyValue[h.key]}</i>;\n }\n return row[h.key];\n },\n [emptyValue]\n );\n\n const renderRow = useCallback(\n (row: object, rowIndex: number) => {\n return (\n <tr\n key={rowIndex}\n data-index={rowIndex}\n data-direction=\"asc\"\n className=\"c-table__row\"\n onMouseOver={cellMouseOver}\n onMouseLeave={cellMouseOut}\n >\n {header.map((h: IHeaderDefinition, colIndex: number) => {\n return (\n <td\n key={colIndex}\n className={classNames(`c-table__cell c-data-table__item`, {\n hovered: hovered === h.key,\n })}\n data-key={h.key}\n style={header[colIndex].style ? header[colIndex].style : {}}\n >\n {renderCell(h, row, colIndex)}\n </td>\n );\n })}\n </tr>\n );\n },\n [cellMouseOut, cellMouseOver, header, hovered, renderCell]\n );\n\n const toggleCollapse = useCallback((event) => {\n const collapseKey = event.currentTarget.dataset.groupkey;\n setCollapsed((prevState) => {\n const newState = { ...prevState };\n newState[collapseKey] = !prevState[collapseKey];\n return newState;\n });\n }, []);\n\n const renderPlaceholders = useMemo(() => {\n const placeholders = Array(loadingRows)\n .fill({})\n .map((_, index) => {\n return (\n <tr\n key={index}\n className=\"c-table__row\"\n onMouseOver={cellMouseOver}\n onMouseLeave={cellMouseOut}\n >\n {header.map((col, colIndex) => {\n return (\n <td\n key={colIndex}\n className={classNames(`c-table__cell c-data-table__item`, {\n hovered: hovered === col.key,\n })}\n data-key={col.key}\n >\n <SkeletonLoader />\n </td>\n );\n })}\n </tr>\n );\n });\n\n return <Tbody>{placeholders}</Tbody>;\n }, [cellMouseOut, cellMouseOver, header, hovered, loadingRows]);\n\n const renderRows = useMemo(() => {\n if (\n (data && data instanceof Array && data.length > 0) ||\n (typeof data === \"object\" && Object.keys(data).length > 0)\n ) {\n if (groupBy) {\n const keys = Object.keys(data);\n return keys.map((key: string, i: number) => {\n return (\n <Fragment key={key}>\n {isCollapsible && (\n <Tbody className=\"c-table__collapse_body\">\n <tr>\n <td\n data-groupkey={key}\n onClick={toggleCollapse}\n className=\"c-table__body__icon c-table--toggle-collapsed\"\n >\n <CollapseExpandSingleIcon\n className={classNames({\n \"c-table__collapse_icon--expanded\": !collapsed[key],\n \"c-table__collapse_icon--collapsed\": collapsed[key],\n })}\n />\n </td>\n </tr>\n </Tbody>\n )}\n <Tbody\n className={classNames(\"c-table__grouped__head\", `head_${i}`, {\n \"c-table__grouped__head--expanded\":\n isCollapsible && !collapsed[key],\n \"c-table__grouped__head--collapsed\":\n isCollapsible && collapsed[key],\n last: i === keys.length - 1,\n first: i === 0,\n })}\n >\n {groupHead(\n data[key],\n keys[i] !== \"null\" ? keys[i].trim() : null\n )}\n </Tbody>\n <Tbody\n className={classNames(`c-table__group c-table_group_${i}`, {\n hidden: collapsed[key],\n })}\n >\n {data[key].map((row: object, index: number) => {\n return renderRow(row, index);\n })}\n </Tbody>\n </Fragment>\n );\n });\n }\n return (\n <Tbody>\n {data instanceof Array &&\n data.map((row: object, rowIndex: number) => {\n return renderRow(row, rowIndex);\n })}\n </Tbody>\n );\n }\n return renderNoResults();\n }, [\n data,\n groupBy,\n renderRow,\n groupHead,\n collapsed,\n isCollapsible,\n renderNoResults,\n toggleCollapse,\n ]);\n\n const allGroupsCollapsed = useMemo(() => {\n return Object.keys(collapsed).every((key) => {\n return collapsed[key];\n });\n }, [collapsed]);\n\n const hasCollapsed = useMemo(() => {\n return Object.keys(collapsed).some((key) => {\n return collapsed[key];\n });\n }, [collapsed]);\n\n const toggleAllCollapsed = useCallback(() => {\n if (hasCollapsed) {\n setCollapsed((prevState) => {\n const newState = { ...prevState };\n Object.keys(newState).forEach((key) => {\n newState[key] = false;\n });\n return newState;\n });\n } else {\n setCollapsed((prevState) => {\n const newState = { ...prevState };\n Object.keys(newState).forEach((key) => {\n newState[key] = true;\n });\n return newState;\n });\n }\n }, [hasCollapsed]);\n\n return (\n <StyledDataTable\n as={Table}\n innerRef={tableRef}\n className={classNames(\"c-data-table\", className, {\n \"c-table__grouped\": groupBy,\n \"c-table__collapsible\": isCollapsible,\n \"padding-b-0\": groupBy && collapsed[Object.keys(data).slice(-1)[0]],\n })}\n {...args}\n >\n <Thead className={theadClass}>\n {header.length > 0 && (\n <tr className=\"c-table__row\">\n {header.map((h: IHeaderDefinition, index: number) => {\n return (\n <th\n key={h.key}\n className={classNames(`c-table__cell`, {\n \"c-table__cell--hovered\": hovered === h.key,\n \"c-table__head--hidden\":\n groupBy && allGroupsCollapsed && h.hideCollapsed,\n })}\n onMouseOver={cellMouseOver}\n onMouseLeave={cellMouseOut}\n data-key={h.key}\n style={h.style}\n >\n {isCollapsible && groupBy && index === 0 && (\n <span\n className=\"c-table__head__icon-wrapper\"\n onClick={toggleAllCollapsed}\n data-test=\"toggle-collapse\"\n >\n {hasCollapsed ? (\n <ExpandAllIcon className=\"c-table__head__icon-wrapper__icon\" />\n ) : (\n <CollapseAllIcon className=\"c-table__head__icon-wrapper__icon\" />\n )}\n </span>\n )}\n {hovered === h.key && (\n <div\n className=\"c-table__overlay\"\n style={{ height: overlayStyles() + `px` }}\n />\n )}\n <div\n onClick={sortColumn}\n data-index={index}\n className={classNames(\"c-table__icon-wrapper\", {\n \"cursor-pointer\": h.sortable === true,\n })}\n >\n <span className=\"c-table__label\">{h.label}</span>\n {h.sortable && (\n <SortIcon\n width=\"10px\"\n height=\"10px\"\n className={classNames(\"c-table__icon\", {\n \"c-table__icon--inactive\": h.key !== active,\n \"c-table__icon--active\": h.key === active,\n \"c-table__icon--asc\":\n columnDirection === SortDirection.Asc &&\n h.key === active,\n \"c-table__icon--desc\":\n columnDirection === SortDirection.Desc &&\n h.key === active,\n })}\n />\n )}\n </div>\n </th>\n );\n })}\n </tr>\n )}\n </Thead>\n\n {loading ? renderPlaceholders : renderRows}\n </StyledDataTable>\n );\n};\n\nDataTable.displayName = \"DataTable\";\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAWA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAEA,IAAAK,YAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,qBAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,UAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,SAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAA4C,SAAAU,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAZ,wBAAAY,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,IAEhCY,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAgDzB,MAAME,UAAU,GAAGA,CAACC,KAAe,EAAEC,GAAW,KAAa;EAC3D,IAAID,KAAK,CAAC,CAAC,CAAC,YAAYE,KAAK,EAAE;IAC7BF,KAAK,GAAGA,KAAK,CAAC,CAAC,CAAC;EAClB;EACA,OAAOA,KAAK,CAACG,MAAM,CAAC,CAACC,MAAc,EAAEC,IAAY,KAAK;IACpD,OAAO;MACL,GAAGD,MAAM;MACT,CAACC,IAAI,CAACJ,GAAG,CAAC,KAAK,IAAI,GAAG,GAAG,GAAGI,IAAI,CAACJ,GAAG,CAAC,GAAGI,IAAI,CAACJ,GAAG,CAAC,GAAG,CAClD,IAAIG,MAAM,CAACC,IAAI,CAACJ,GAAG,CAAC,KAAK,IAAI,GAAG,GAAG,GAAGI,IAAI,CAACJ,GAAG,CAAC,GAAGI,IAAI,CAACJ,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EACnEI,IAAI;IAER,CAAC;EACH,CAAC,EAAE,CAAC,CAAC,CAAC;AACR,CAAC;AAED,MAAMC,gBAAgB,GAAGA,CAACC,IAAc,EAAEC,OAAgB,KAAa;EACrE,IAAIA,OAAO,EAAE;IACX,MAAMC,WAAW,GAAGV,UAAU,CAACQ,IAAI,EAAEC,OAAO,CAAC;IAC7C,MAAME,IAAI,GAAGtB,MAAM,CAACsB,IAAI,CAACD,WAAW,CAAC;IACrC,MAAME,aAAa,GAAG,CAAC,CAAC;IACxBD,IAAI,CAACE,OAAO,CAAEX,GAAG,IAAK;MACpBU,aAAa,CAACV,GAAG,CAAC,GAAG,IAAI;IAC3B,CAAC,CAAC;IACF,OAAOU,aAAa;EACtB;EACA,OAAO,CAAC,CAAC;AACX,CAAC;AAEM,MAAME,SAA8B,GAAGC,IAAA,IAgBxC;EAAA,IAhByC;IAC7CC,MAAM;IACNR,IAAI,GAAG,EAAE;IACTS,SAAS;IACTC,MAAM;IACNC,aAAa,GAAGrB,aAAa,CAACsB,IAAI;IAClCC,cAAc;IACdC,UAAU;IACVC,iBAAiB;IACjBd,OAAO;IACPe,SAAS,GAAGA,CAAA,KAAY,IAAI;IAC5BC,aAAa;IACbC,UAAU;IACVC,OAAO;IACPC,WAAW,GAAG,CAAC;IACf,GAAGC;EACL,CAAC,GAAAd,IAAA;EACC,MAAM,CAACe,eAAe,EAAEC,kBAAkB,CAAC,GAAG,IAAAC,eAAQ,EAACb,aAAa,CAAC;EACrE,MAAM,CAACc,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAF,eAAQ,EAACd,MAAM,CAAC;EAC5C,MAAM,CAACiB,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAJ,eAAQ,EAAgB,CAAC;EACvD,MAAM,CAACK,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAN,eAAQ,EAAC,MAAM;IAC/C,OAAOzB,gBAAgB,CAACC,IAAI,EAAEC,OAAO,CAAC;EACxC,CAAC,CAAC;EACF,MAAM8B,IAAI,GAAGA,CACXC,SAAiB,EACjBC,SAAwB,EACxBC,QAA2C,KAChC;IACX,IAAID,SAAS,KAAK3C,aAAa,CAACsB,IAAI,EAAE;MACpC,OAAOsB,QAAQ;IACjB;IAEA,IAAIA,QAAQ,YAAYvC,KAAK,EAC3B,OAAOuC,QAAQ,CAACH,IAAI,CAAC,CAACnD,CAAS,EAAEuD,CAAS,KAAK;MAC7C,IAAIF,SAAS,KAAK3C,aAAa,CAAC8C,GAAG,EAAE;QACnC,IAAIxD,CAAC,CAACoD,SAAS,CAAC,KAAK,IAAI,EAAE;UACzB,OAAO,CAAC;QACV;QACA,IAAIG,CAAC,CAACH,SAAS,CAAC,KAAK,IAAI,EAAE;UACzB,OAAO,CAAC,CAAC;QACX;MACF;MACA,IAAIpD,CAAC,CAACoD,SAAS,CAAC,KAAK,IAAI,EAAE;QACzB,OAAO,CAAC,CAAC;MACX;MACA,IAAIG,CAAC,CAACH,SAAS,CAAC,KAAK,IAAI,EAAE;QACzB,OAAO,CAAC;MACV;MACA,IAAI,OAAOpD,CAAC,CAACoD,SAAS,CAAC,KAAK,QAAQ,EAAE;QACpC,IAAIC,SAAS,KAAK3C,aAAa,CAAC8C,GAAG,EAAE;UACnC,OAAOxD,CAAC,CAACoD,SAAS,CAAC,GAAGG,CAAC,CAACH,SAAS,CAAC;QACpC;QACA,OAAOG,CAAC,CAACH,SAAS,CAAC,GAAGpD,CAAC,CAACoD,SAAS,CAAC;MACpC;MAEA,MAAMK,KAAK,GAAGzD,CAAC,CAACoD,SAAS,CAAC,CAACM,QAAQ,CAAC,CAAC;MACrC,MAAMC,MAAM,GAAGJ,CAAC,CAACH,SAAS,CAAC,CAACM,QAAQ,CAAC,CAAC;MAEtC,IAAIL,SAAS,KAAK3C,aAAa,CAAC8C,GAAG,EAAE;QACnC,OAAOC,KAAK,CAACG,aAAa,CAACD,MAAM,CAAC;MACpC;MAEA,OAAOA,MAAM,CAACC,aAAa,CAACH,KAAK,CAAC;IACpC,CAAC,CAAC;IACJ,OAAO,CAAC,CAAC;EACX,CAAC;EAED,MAAMI,WAAW,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACpC,IAAIhC,MAAM,IAAI,CAACT,OAAO,EAAE;MACtB,OAAO8B,IAAI,CAACrB,MAAM,EAAEC,aAAa,EAAEX,IAAI,CAAC;IAC1C;IACA,IAAIU,MAAM,IAAIT,OAAO,EAAE;MACrB8B,IAAI,CAACrB,MAAM,EAAEC,aAAa,EAAEX,IAAI,CAAC;MACjC,OAAOR,UAAU,CAACQ,IAAI,EAAEC,OAAO,CAAC;IAClC;IACA,IAAI,CAACS,MAAM,IAAIT,OAAO,EAAE;MACtB,OAAOT,UAAU,CAACQ,IAAI,EAAEC,OAAO,CAAC;IAClC;IACA,OAAOD,IAAI;EACb,CAAC,EAAE,CAACC,OAAO,EAAED,IAAI,EAAEU,MAAM,EAAEC,aAAa,CAAC,CAAC;EAE1C,MAAM,CAACgC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAApB,eAAQ,EAC9BiB,WACF,CAAC;EAED,MAAMI,oBAAoB,GAAGA,CAC3BC,iBAAgC,EAChCC,UAAmB,KACD;IAClB,IAAI,CAACA,UAAU,EAAE;MACf,OAAOzD,aAAa,CAAC8C,GAAG;IAC1B;IACA,IAAIU,iBAAiB,KAAKxD,aAAa,CAAC8C,GAAG,EAAE;MAC3C,OAAO9C,aAAa,CAAC0D,IAAI;IAC3B;IACA,OAAO1D,aAAa,CAAC8C,GAAG;EAC1B,CAAC;EAED,MAAMa,UAAU,GAAG,IAAAP,kBAAW,EAC3BQ,KAAsB,IAAK;IAC1B,MAAMC,KAAK,GAAGD,KAAK,CAACE,aAAa,CAACC,OAAO,CAACF,KAAK;IAC/C,IAAIA,KAAK,IAAI3C,MAAM,CAAC2C,KAAK,CAAC,IAAI3C,MAAM,CAAC2C,KAAK,CAAC,CAACG,QAAQ,EAAE;MACpD,MAAMrB,SAAS,GAAGY,oBAAoB,CACpCvB,eAAe,EACfd,MAAM,CAAC2C,KAAK,CAAC,CAACzD,GAAG,KAAK+B,MACxB,CAAC;MACDC,SAAS,CAAClB,MAAM,CAAC2C,KAAK,CAAC,CAACzD,GAAG,CAAC;MAC5B6B,kBAAkB,CAACU,SAAS,CAAC;MAC7B,IAAIhC,OAAO,EAAE;QACX,IAAIsD,OAAe,GAAG;UACpB,GAAGZ;QACL,CAAC;QAED,IAAI1C,OAAO,KAAKO,MAAM,CAAC2C,KAAK,CAAC,CAACzD,GAAG,EAAE;UACjCb,MAAM,CAACsB,IAAI,CAACoD,OAAO,CAAC,CAACC,GAAG,CAAE9D,GAAW,IAAK;YACxC6D,OAAO,CAAC7D,GAAG,CAAC,GAAGqC,IAAI,CAACvB,MAAM,CAAC2C,KAAK,CAAC,CAACzD,GAAG,EAAEuC,SAAS,EAAEsB,OAAO,CAAC7D,GAAG,CAAC,CAAC;UACjE,CAAC,CAAC;QACJ,CAAC,MAAM;UACL,IAAIM,IAAI,YAAYnB,MAAM,EAAE;YAC1B0E,OAAO,GAAGxB,IAAI,CAACvB,MAAM,CAAC2C,KAAK,CAAC,CAACzD,GAAG,EAAEuC,SAAS,EAAEjC,IAAI,CAAC;YAClDuD,OAAO,GAAG/D,UAAU,CAAC,CAAC+D,OAAO,CAAC,EAAEtD,OAAO,CAAC;UAC1C;QACF;QACA2C,OAAO,CAACW,OAAO,CAAC;MAClB,CAAC,MAAM;QACLX,OAAO,CAACb,IAAI,CAACvB,MAAM,CAAC2C,KAAK,CAAC,CAACzD,GAAG,EAAEuC,SAAS,EAAEU,IAAI,CAAC,CAAC;MACnD;MACA,IAAI9B,cAAc,EAAE;QAClBA,cAAc,CAACL,MAAM,CAAC2C,KAAK,CAAC,CAACzD,GAAG,EAAEuC,SAAS,CAAC;MAC9C;IACF;IAEA,OAAO,IAAI;EACb,CAAC,EACD,CACEW,OAAO,EACPD,IAAI,EACJrB,eAAe,EACfC,kBAAkB,EAClBf,MAAM,EACNiB,MAAM,EACNC,SAAS,EACTb,cAAc,EACdZ,OAAO,EACPD,IAAI,CAER,CAAC;EAED,MAAMyD,aAAa,GAAG,IAAAf,kBAAW,EAAExE,CAAkB,IAAK;IACxD,IAAIA,CAAC,CAACwF,MAAM,YAAYC,WAAW,EAAE;MACnC,IAAIzF,CAAC,CAACwF,MAAM,CAACL,OAAO,CAAC3D,GAAG,EAAE;QACxBkC,UAAU,CAAC1D,CAAC,CAACwF,MAAM,CAACL,OAAO,CAAC3D,GAAG,CAAC;MAClC;IACF;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMkE,YAAY,GAAG,IAAAlB,kBAAW,EAAC,MAAM;IACrCd,UAAU,CAAC,IAAI,CAAC;EAClB,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAiC,gBAAS,EAAC,MAAM;IACdjB,OAAO,CAACH,WAAW,CAAC,CAAC,CAAC;IACtBX,YAAY,CAAC/B,gBAAgB,CAACC,IAAI,EAAEC,OAAO,CAAC,CAAC;EAC/C,CAAC,EAAE,CAACD,IAAI,EAAEC,OAAO,EAAEwC,WAAW,CAAC,CAAC;EAEhC,MAAMqB,eAAe,GAAG,IAAApB,kBAAW,EAAC,MAAM;IACxC,oBACErF,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,0BACE1G,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;MACEC,OAAO,EAAExD,MAAM,CAACyD,MAAO;MACvBxD,SAAS,EAAE,IAAAyD,mBAAU,EAAC;QAAE,aAAa,EAAE,CAACnD;MAAkB,CAAC;IAAE,GAE5DA,iBAAiB,GAAGA,iBAAiB,CAAC,CAAC,GAAG,mBACzC,CACF,CAAC;EAET,CAAC,EAAE,CAACP,MAAM,EAAEO,iBAAiB,CAAC,CAAC;EAE/B,MAAMoD,QAAQ,GAAG,IAAAC,aAAM,EAAmB,IAAI,CAAC;EAE/C,MAAMC,aAAa,GAAGA,CAAA,KAA0B;IAC9C,IAAIF,QAAQ,CAACG,OAAO,EAAE;MACpB,OAAOH,QAAQ,CAACG,OAAO,CAACC,YAAY,GAAG,CAAC;IAC1C;EACF,CAAC;EAED,MAAMC,UAAU,GAAG,IAAA9B,kBAAW,EAC5B,CAAC+B,CAAoB,EAAEC,GAAW,EAAEC,QAAgB,KAAK;IACvD,IAAIF,CAAC,CAACG,cAAc,EAAE;MACpB,OAAOH,CAAC,CAACG,cAAc,CAACF,GAAG,EAAED,CAAC,CAAC/E,GAAG,EAAEiF,QAAQ,CAAC;IAC/C;IACA,IAAID,GAAG,CAACD,CAAC,CAAC/E,GAAG,CAAC,KAAK,IAAI,IAAIwB,UAAU,EAAE;MACrC,oBAAO7D,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;QAAGtD,SAAS,EAAC;MAAY,GAAES,UAAU,CAACuD,CAAC,CAAC/E,GAAG,CAAK,CAAC;IAC1D;IACA,OAAOgF,GAAG,CAACD,CAAC,CAAC/E,GAAG,CAAC;EACnB,CAAC,EACD,CAACwB,UAAU,CACb,CAAC;EAED,MAAM2D,SAAS,GAAG,IAAAnC,kBAAW,EAC3B,CAACgC,GAAW,EAAEI,QAAgB,KAAK;IACjC,oBACEzH,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;MACErE,GAAG,EAAEoF,QAAS;MACd,cAAYA,QAAS;MACrB,kBAAe,KAAK;MACpBrE,SAAS,EAAC,cAAc;MACxBsE,WAAW,EAAEtB,aAAc;MAC3BuB,YAAY,EAAEpB;IAAa,GAE1BpD,MAAM,CAACgD,GAAG,CAAC,CAACiB,CAAoB,EAAEE,QAAgB,KAAK;MACtD,oBACEtH,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;QACErE,GAAG,EAAEiF,QAAS;QACdlE,SAAS,EAAE,IAAAyD,mBAAU,EAAE,kCAAiC,EAAE;UACxDvC,OAAO,EAAEA,OAAO,KAAK8C,CAAC,CAAC/E;QACzB,CAAC,CAAE;QACH,YAAU+E,CAAC,CAAC/E,GAAI;QAChBuF,KAAK,EAAEzE,MAAM,CAACmE,QAAQ,CAAC,CAACM,KAAK,GAAGzE,MAAM,CAACmE,QAAQ,CAAC,CAACM,KAAK,GAAG,CAAC;MAAE,GAE3DT,UAAU,CAACC,CAAC,EAAEC,GAAG,EAAEC,QAAQ,CAC1B,CAAC;IAET,CAAC,CACC,CAAC;EAET,CAAC,EACD,CAACf,YAAY,EAAEH,aAAa,EAAEjD,MAAM,EAAEmB,OAAO,EAAE6C,UAAU,CAC3D,CAAC;EAED,MAAMU,cAAc,GAAG,IAAAxC,kBAAW,EAAEQ,KAAK,IAAK;IAC5C,MAAMiC,WAAW,GAAGjC,KAAK,CAACE,aAAa,CAACC,OAAO,CAAC+B,QAAQ;IACxDtD,YAAY,CAAEuD,SAAS,IAAK;MAC1B,MAAMC,QAAQ,GAAG;QAAE,GAAGD;MAAU,CAAC;MACjCC,QAAQ,CAACH,WAAW,CAAC,GAAG,CAACE,SAAS,CAACF,WAAW,CAAC;MAC/C,OAAOG,QAAQ;IACjB,CAAC,CAAC;EACJ,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,kBAAkB,GAAG,IAAAC,cAAO,EAAC,MAAM;IACvC,MAAMC,YAAY,GAAG9F,KAAK,CAACyB,WAAW,CAAC,CACpCsE,IAAI,CAAC,CAAC,CAAC,CAAC,CACRlC,GAAG,CAAC,CAACmC,CAAC,EAAExC,KAAK,KAAK;MACjB,oBACE9F,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;QACErE,GAAG,EAAEyD,KAAM;QACX1C,SAAS,EAAC,cAAc;QACxBsE,WAAW,EAAEtB,aAAc;QAC3BuB,YAAY,EAAEpB;MAAa,GAE1BpD,MAAM,CAACgD,GAAG,CAAC,CAACoC,GAAG,EAAEjB,QAAQ,KAAK;QAC7B,oBACEtH,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;UACErE,GAAG,EAAEiF,QAAS;UACdlE,SAAS,EAAE,IAAAyD,mBAAU,EAAE,kCAAiC,EAAE;YACxDvC,OAAO,EAAEA,OAAO,KAAKiE,GAAG,CAAClG;UAC3B,CAAC,CAAE;UACH,YAAUkG,GAAG,CAAClG;QAAI,gBAElBrC,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAAC/F,QAAA,CAAA6H,cAAc,MAAE,CACf,CAAC;MAET,CAAC,CACC,CAAC;IAET,CAAC,CAAC;IAEJ,oBAAOxI,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACpG,MAAA,CAAAmI,KAAK,QAAEL,YAAoB,CAAC;EACtC,CAAC,EAAE,CAAC7B,YAAY,EAAEH,aAAa,EAAEjD,MAAM,EAAEmB,OAAO,EAAEP,WAAW,CAAC,CAAC;EAE/D,MAAM2E,UAAU,GAAG,IAAAP,cAAO,EAAC,MAAM;IAC/B,IACG7C,IAAI,IAAIA,IAAI,YAAYhD,KAAK,IAAIgD,IAAI,CAACsB,MAAM,GAAG,CAAC,IAChD,OAAOtB,IAAI,KAAK,QAAQ,IAAI9D,MAAM,CAACsB,IAAI,CAACwC,IAAI,CAAC,CAACsB,MAAM,GAAG,CAAE,EAC1D;MACA,IAAIhE,OAAO,EAAE;QACX,MAAME,IAAI,GAAGtB,MAAM,CAACsB,IAAI,CAACwC,IAAI,CAAC;QAC9B,OAAOxC,IAAI,CAACqD,GAAG,CAAC,CAAC9D,GAAW,EAAEN,CAAS,KAAK;UAC1C,oBACE/B,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAAC1G,MAAA,CAAA2I,QAAQ;YAACtG,GAAG,EAAEA;UAAI,GAChBuB,aAAa,iBACZ5D,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACpG,MAAA,CAAAmI,KAAK;YAACrF,SAAS,EAAC;UAAwB,gBACvCpD,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,0BACE1G,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;YACE,iBAAerE,GAAI;YACnBuG,OAAO,EAAEf,cAAe;YACxBzE,SAAS,EAAC;UAA+C,gBAEzDpD,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAAClG,qBAAA,CAAAU,OAAwB;YACvBkC,SAAS,EAAE,IAAAyD,mBAAU,EAAC;cACpB,kCAAkC,EAAE,CAACrC,SAAS,CAACnC,GAAG,CAAC;cACnD,mCAAmC,EAAEmC,SAAS,CAACnC,GAAG;YACpD,CAAC;UAAE,CACJ,CACC,CACF,CACC,CACR,eACDrC,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACpG,MAAA,CAAAmI,KAAK;YACJrF,SAAS,EAAE,IAAAyD,mBAAU,EAAC,wBAAwB,EAAG,QAAO9E,CAAE,EAAC,EAAE;cAC3D,kCAAkC,EAChC6B,aAAa,IAAI,CAACY,SAAS,CAACnC,GAAG,CAAC;cAClC,mCAAmC,EACjCuB,aAAa,IAAIY,SAAS,CAACnC,GAAG,CAAC;cACjCwG,IAAI,EAAE9G,CAAC,KAAKe,IAAI,CAAC8D,MAAM,GAAG,CAAC;cAC3B5B,KAAK,EAAEjD,CAAC,KAAK;YACf,CAAC;UAAE,GAEF4B,SAAS,CACR2B,IAAI,CAACjD,GAAG,CAAC,EACTS,IAAI,CAACf,CAAC,CAAC,KAAK,MAAM,GAAGe,IAAI,CAACf,CAAC,CAAC,CAAC+G,IAAI,CAAC,CAAC,GAAG,IACxC,CACK,CAAC,eACR9I,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACpG,MAAA,CAAAmI,KAAK;YACJrF,SAAS,EAAE,IAAAyD,mBAAU,EAAE,gCAA+B9E,CAAE,EAAC,EAAE;cACzDgH,MAAM,EAAEvE,SAAS,CAACnC,GAAG;YACvB,CAAC;UAAE,GAEFiD,IAAI,CAACjD,GAAG,CAAC,CAAC8D,GAAG,CAAC,CAACkB,GAAW,EAAEvB,KAAa,KAAK;YAC7C,OAAO0B,SAAS,CAACH,GAAG,EAAEvB,KAAK,CAAC;UAC9B,CAAC,CACI,CACC,CAAC;QAEf,CAAC,CAAC;MACJ;MACA,oBACE9F,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACpG,MAAA,CAAAmI,KAAK,QACHnD,IAAI,YAAYhD,KAAK,IACpBgD,IAAI,CAACa,GAAG,CAAC,CAACkB,GAAW,EAAEI,QAAgB,KAAK;QAC1C,OAAOD,SAAS,CAACH,GAAG,EAAEI,QAAQ,CAAC;MACjC,CAAC,CACE,CAAC;IAEZ;IACA,OAAOhB,eAAe,CAAC,CAAC;EAC1B,CAAC,EAAE,CACDnB,IAAI,EACJ1C,OAAO,EACP4E,SAAS,EACT7D,SAAS,EACTa,SAAS,EACTZ,aAAa,EACb6C,eAAe,EACfoB,cAAc,CACf,CAAC;EAEF,MAAMmB,kBAAkB,GAAG,IAAAb,cAAO,EAAC,MAAM;IACvC,OAAO3G,MAAM,CAACsB,IAAI,CAAC0B,SAAS,CAAC,CAACyE,KAAK,CAAE5G,GAAG,IAAK;MAC3C,OAAOmC,SAAS,CAACnC,GAAG,CAAC;IACvB,CAAC,CAAC;EACJ,CAAC,EAAE,CAACmC,SAAS,CAAC,CAAC;EAEf,MAAM0E,YAAY,GAAG,IAAAf,cAAO,EAAC,MAAM;IACjC,OAAO3G,MAAM,CAACsB,IAAI,CAAC0B,SAAS,CAAC,CAAC2E,IAAI,CAAE9G,GAAG,IAAK;MAC1C,OAAOmC,SAAS,CAACnC,GAAG,CAAC;IACvB,CAAC,CAAC;EACJ,CAAC,EAAE,CAACmC,SAAS,CAAC,CAAC;EAEf,MAAM4E,kBAAkB,GAAG,IAAA/D,kBAAW,EAAC,MAAM;IAC3C,IAAI6D,YAAY,EAAE;MAChBzE,YAAY,CAAEuD,SAAS,IAAK;QAC1B,MAAMC,QAAQ,GAAG;UAAE,GAAGD;QAAU,CAAC;QACjCxG,MAAM,CAACsB,IAAI,CAACmF,QAAQ,CAAC,CAACjF,OAAO,CAAEX,GAAG,IAAK;UACrC4F,QAAQ,CAAC5F,GAAG,CAAC,GAAG,KAAK;QACvB,CAAC,CAAC;QACF,OAAO4F,QAAQ;MACjB,CAAC,CAAC;IACJ,CAAC,MAAM;MACLxD,YAAY,CAAEuD,SAAS,IAAK;QAC1B,MAAMC,QAAQ,GAAG;UAAE,GAAGD;QAAU,CAAC;QACjCxG,MAAM,CAACsB,IAAI,CAACmF,QAAQ,CAAC,CAACjF,OAAO,CAAEX,GAAG,IAAK;UACrC4F,QAAQ,CAAC5F,GAAG,CAAC,GAAG,IAAI;QACtB,CAAC,CAAC;QACF,OAAO4F,QAAQ;MACjB,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,CAACiB,YAAY,CAAC,CAAC;EAElB,oBACElJ,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACrG,OAAA,CAAAgJ,eAAe,MAAAC,SAAA,CAAApI,OAAA;IACdqI,EAAE,EAAEC,YAAM;IACVC,QAAQ,EAAE3C,QAAS;IACnB1D,SAAS,EAAE,IAAAyD,mBAAU,EAAC,cAAc,EAAEzD,SAAS,EAAE;MAC/C,kBAAkB,EAAER,OAAO;MAC3B,sBAAsB,EAAEgB,aAAa;MACrC,aAAa,EAAEhB,OAAO,IAAI4B,SAAS,CAAChD,MAAM,CAACsB,IAAI,CAACwC,IAAI,CAAC,CAACoE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;EAAE,GACC1F,IAAI,gBAERhE,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACpG,MAAA,CAAAqJ,KAAK;IAACvG,SAAS,EAAEK;EAAW,GAC1BN,MAAM,CAACyD,MAAM,GAAG,CAAC,iBAChB5G,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;IAAItD,SAAS,EAAC;EAAc,GACzBD,MAAM,CAACgD,GAAG,CAAC,CAACiB,CAAoB,EAAEtB,KAAa,KAAK;IACnD,oBACE9F,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;MACErE,GAAG,EAAE+E,CAAC,CAAC/E,GAAI;MACXe,SAAS,EAAE,IAAAyD,mBAAU,EAAE,eAAc,EAAE;QACrC,wBAAwB,EAAEvC,OAAO,KAAK8C,CAAC,CAAC/E,GAAG;QAC3C,uBAAuB,EACrBO,OAAO,IAAIoG,kBAAkB,IAAI5B,CAAC,CAACwC;MACvC,CAAC,CAAE;MACHlC,WAAW,EAAEtB,aAAc;MAC3BuB,YAAY,EAAEpB,YAAa;MAC3B,YAAUa,CAAC,CAAC/E,GAAI;MAChBuF,KAAK,EAAER,CAAC,CAACQ;IAAM,GAEdhE,aAAa,IAAIhB,OAAO,IAAIkD,KAAK,KAAK,CAAC,iBACtC9F,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;MACEtD,SAAS,EAAC,6BAA6B;MACvCwF,OAAO,EAAEQ,kBAAmB;MAC5B,aAAU;IAAiB,GAE1BF,YAAY,gBACXlJ,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACjG,UAAA,CAAAS,OAAa;MAACkC,SAAS,EAAC;IAAmC,CAAE,CAAC,gBAE/DpD,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAACnG,YAAA,CAAAW,OAAe;MAACkC,SAAS,EAAC;IAAmC,CAAE,CAE9D,CACP,EACAkB,OAAO,KAAK8C,CAAC,CAAC/E,GAAG,iBAChBrC,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;MACEtD,SAAS,EAAC,kBAAkB;MAC5BwE,KAAK,EAAE;QAAEiC,MAAM,EAAE7C,aAAa,CAAC,CAAC,GAAI;MAAI;IAAE,CAC3C,CACF,eACDhH,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;MACEkC,OAAO,EAAEhD,UAAW;MACpB,cAAYE,KAAM;MAClB1C,SAAS,EAAE,IAAAyD,mBAAU,EAAC,uBAAuB,EAAE;QAC7C,gBAAgB,EAAEO,CAAC,CAACnB,QAAQ,KAAK;MACnC,CAAC;IAAE,gBAEHjG,MAAA,CAAAkB,OAAA,CAAAwF,aAAA;MAAMtD,SAAS,EAAC;IAAgB,GAAEgE,CAAC,CAAC0C,KAAY,CAAC,EAChD1C,CAAC,CAACnB,QAAQ,iBACTjG,MAAA,CAAAkB,OAAA,CAAAwF,aAAA,CAAChG,SAAA,CAAAQ,OAAQ;MACP6I,KAAK,EAAC,MAAM;MACZF,MAAM,EAAC,MAAM;MACbzG,SAAS,EAAE,IAAAyD,mBAAU,EAAC,eAAe,EAAE;QACrC,yBAAyB,EAAEO,CAAC,CAAC/E,GAAG,KAAK+B,MAAM;QAC3C,uBAAuB,EAAEgD,CAAC,CAAC/E,GAAG,KAAK+B,MAAM;QACzC,oBAAoB,EAClBH,eAAe,KAAKhC,aAAa,CAAC8C,GAAG,IACrCqC,CAAC,CAAC/E,GAAG,KAAK+B,MAAM;QAClB,qBAAqB,EACnBH,eAAe,KAAKhC,aAAa,CAAC0D,IAAI,IACtCyB,CAAC,CAAC/E,GAAG,KAAK+B;MACd,CAAC;IAAE,CACJ,CAEA,CACH,CAAC;EAET,CAAC,CACC,CAED,CAAC,EAEPN,OAAO,GAAGoE,kBAAkB,GAAGQ,UACjB,CAAC;AAEtB,CAAC;AAACxG,OAAA,CAAAe,SAAA,GAAAA,SAAA;AAEFA,SAAS,CAAC+G,WAAW,GAAG,WAAW"}
|