@activecollab/components 1.0.166 → 1.0.169
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/Dialog/Dialog.js.map +1 -1
- package/dist/cjs/components/Entity/EntityCard.js +15 -28
- package/dist/cjs/components/Entity/EntityCard.js.map +1 -1
- package/dist/cjs/components/Entity/EntityGroup.js +13 -13
- package/dist/cjs/components/Entity/EntityGroup.js.map +1 -1
- package/dist/cjs/components/Entity/EntityProperty.js +14 -2
- package/dist/cjs/components/Entity/EntityProperty.js.map +1 -1
- package/dist/cjs/components/Entity/Styles.js +2 -6
- package/dist/cjs/components/Entity/Styles.js.map +1 -1
- package/dist/cjs/components/Entity/index.js.map +1 -1
- package/dist/cjs/components/Menu/Menu.js +5 -12
- package/dist/cjs/components/Menu/Menu.js.map +1 -1
- package/dist/cjs/components/Modal/Modal.js +2 -5
- package/dist/cjs/components/Modal/Modal.js.map +1 -1
- package/dist/cjs/components/Sheet/Sheet.js +2 -5
- package/dist/cjs/components/Sheet/Sheet.js.map +1 -1
- package/dist/cjs/components/Tables/DataTable.js +28 -3
- package/dist/cjs/components/Tables/DataTable.js.map +1 -1
- package/dist/cjs/components/Tables/Table.js.map +1 -1
- package/dist/cjs/components/Window/Window.js +3 -8
- package/dist/cjs/components/Window/Window.js.map +1 -1
- package/dist/esm/components/Dialog/Dialog.d.ts +1 -2
- package/dist/esm/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/esm/components/Dialog/Dialog.js.map +1 -1
- package/dist/esm/components/Entity/EntityCard.d.ts +8 -9
- package/dist/esm/components/Entity/EntityCard.d.ts.map +1 -1
- package/dist/esm/components/Entity/EntityCard.js +17 -29
- package/dist/esm/components/Entity/EntityCard.js.map +1 -1
- package/dist/esm/components/Entity/EntityGroup.d.ts +5 -0
- package/dist/esm/components/Entity/EntityGroup.d.ts.map +1 -1
- package/dist/esm/components/Entity/EntityGroup.js +9 -11
- package/dist/esm/components/Entity/EntityGroup.js.map +1 -1
- package/dist/esm/components/Entity/EntityProperty.d.ts +0 -1
- package/dist/esm/components/Entity/EntityProperty.d.ts.map +1 -1
- package/dist/esm/components/Entity/EntityProperty.js +7 -2
- package/dist/esm/components/Entity/EntityProperty.js.map +1 -1
- package/dist/esm/components/Entity/Styles.d.ts.map +1 -1
- package/dist/esm/components/Entity/Styles.js +2 -6
- package/dist/esm/components/Entity/Styles.js.map +1 -1
- package/dist/esm/components/Entity/index.d.ts +6 -7
- package/dist/esm/components/Entity/index.d.ts.map +1 -1
- package/dist/esm/components/Entity/index.js.map +1 -1
- package/dist/esm/components/Menu/Menu.d.ts +0 -1
- package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
- package/dist/esm/components/Menu/Menu.js +5 -12
- package/dist/esm/components/Menu/Menu.js.map +1 -1
- package/dist/esm/components/Modal/Modal.d.ts +1 -3
- package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
- package/dist/esm/components/Modal/Modal.js +2 -5
- package/dist/esm/components/Modal/Modal.js.map +1 -1
- package/dist/esm/components/Sheet/Sheet.d.ts +0 -1
- package/dist/esm/components/Sheet/Sheet.d.ts.map +1 -1
- package/dist/esm/components/Sheet/Sheet.js +2 -5
- package/dist/esm/components/Sheet/Sheet.js.map +1 -1
- package/dist/esm/components/Tables/DataTable.d.ts +4 -2
- package/dist/esm/components/Tables/DataTable.d.ts.map +1 -1
- package/dist/esm/components/Tables/DataTable.js +27 -3
- package/dist/esm/components/Tables/DataTable.js.map +1 -1
- package/dist/esm/components/Tables/Table.d.ts +1 -2
- package/dist/esm/components/Tables/Table.d.ts.map +1 -1
- package/dist/esm/components/Tables/Table.js.map +1 -1
- package/dist/esm/components/Window/Window.d.ts +0 -1
- package/dist/esm/components/Window/Window.d.ts.map +1 -1
- package/dist/esm/components/Window/Window.js +3 -8
- package/dist/esm/components/Window/Window.js.map +1 -1
- package/dist/index.js +195 -210
- 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
|
@@ -21,7 +21,9 @@ var _SortIcon = _interopRequireDefault(require("../Icons/collection/SortIcon"));
|
|
|
21
21
|
|
|
22
22
|
var _Styles = require("./Styles");
|
|
23
23
|
|
|
24
|
-
var
|
|
24
|
+
var _Loaders = require("../Loaders");
|
|
25
|
+
|
|
26
|
+
var _excluded = ["header", "rows", "className", "sortBy", "sortDirection", "onSortCallback", "theadClass", "noResultsCallback", "groupBy", "groupHead", "isCollapsible", "emptyValue", "loading", "loadingRows"];
|
|
25
27
|
|
|
26
28
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
27
29
|
|
|
@@ -98,7 +100,8 @@ var initialCollapsed = function initialCollapsed(rows, groupBy) {
|
|
|
98
100
|
|
|
99
101
|
var DataTable = function DataTable(_ref) {
|
|
100
102
|
var header = _ref.header,
|
|
101
|
-
rows = _ref.rows,
|
|
103
|
+
_ref$rows = _ref.rows,
|
|
104
|
+
rows = _ref$rows === void 0 ? [] : _ref$rows,
|
|
102
105
|
className = _ref.className,
|
|
103
106
|
sortBy = _ref.sortBy,
|
|
104
107
|
_ref$sortDirection = _ref.sortDirection,
|
|
@@ -113,6 +116,9 @@ var DataTable = function DataTable(_ref) {
|
|
|
113
116
|
} : _ref$groupHead,
|
|
114
117
|
isCollapsible = _ref.isCollapsible,
|
|
115
118
|
emptyValue = _ref.emptyValue,
|
|
119
|
+
loading = _ref.loading,
|
|
120
|
+
_ref$loadingRows = _ref.loadingRows,
|
|
121
|
+
loadingRows = _ref$loadingRows === void 0 ? 7 : _ref$loadingRows,
|
|
116
122
|
args = _objectWithoutProperties(_ref, _excluded);
|
|
117
123
|
|
|
118
124
|
var _useState = (0, _react.useState)(sortDirection),
|
|
@@ -320,6 +326,25 @@ var DataTable = function DataTable(_ref) {
|
|
|
320
326
|
return newState;
|
|
321
327
|
});
|
|
322
328
|
}, []);
|
|
329
|
+
var renderPlaceholders = (0, _react.useMemo)(function () {
|
|
330
|
+
var placeholders = Array(loadingRows).fill({}).map(function (_, index) {
|
|
331
|
+
return /*#__PURE__*/_react.default.createElement("tr", {
|
|
332
|
+
key: index,
|
|
333
|
+
className: "c-table__row",
|
|
334
|
+
onMouseOver: cellMouseOver,
|
|
335
|
+
onMouseLeave: cellMouseOut
|
|
336
|
+
}, header.map(function (col, colIndex) {
|
|
337
|
+
return /*#__PURE__*/_react.default.createElement("td", {
|
|
338
|
+
key: colIndex,
|
|
339
|
+
className: (0, _classnames.default)("c-table__cell c-data-table__item", {
|
|
340
|
+
hovered: hovered === col.key
|
|
341
|
+
}),
|
|
342
|
+
"data-key": col.key
|
|
343
|
+
}, /*#__PURE__*/_react.default.createElement(_Loaders.LinearLoader, null));
|
|
344
|
+
}));
|
|
345
|
+
});
|
|
346
|
+
return /*#__PURE__*/_react.default.createElement(_Table.Tbody, null, placeholders);
|
|
347
|
+
}, [cellMouseOut, cellMouseOver, header, hovered, loadingRows]);
|
|
323
348
|
var renderRows = (0, _react.useMemo)(function () {
|
|
324
349
|
if (data && data instanceof Array && data.length > 0 || _typeof(data) === "object" && Object.keys(data).length > 0) {
|
|
325
350
|
if (groupBy) {
|
|
@@ -447,7 +472,7 @@ var DataTable = function DataTable(_ref) {
|
|
|
447
472
|
"c-table__icon--desc": columnDirection === SortDirection.Desc && h.key === active
|
|
448
473
|
})
|
|
449
474
|
})));
|
|
450
|
-
}))), renderRows);
|
|
475
|
+
}))), loading ? renderPlaceholders : renderRows);
|
|
451
476
|
};
|
|
452
477
|
|
|
453
478
|
exports.DataTable = DataTable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Tables/DataTable.tsx"],"names":["SortDirection","groupByKey","items","key","Array","reduce","result","item","initialCollapsed","rows","groupBy","groupedData","keys","Object","collapsedKeys","forEach","DataTable","header","className","sortBy","sortDirection","None","onSortCallback","theadClass","noResultsCallback","groupHead","isCollapsible","emptyValue","args","columnDirection","setColumnDirection","active","setActive","hovered","setHovered","collapsed","setCollapsed","sort","sortByKey","direction","rowsData","a","b","Asc","first","toString","second","localeCompare","initialData","data","setData","getNextSortDirection","previousDirection","sameColumn","Desc","sortColumn","event","index","currentTarget","dataset","sortable","grouped","map","cellMouseOver","e","target","HTMLElement","cellMouseOut","renderNoResults","length","tableRef","overlayStyles","current","clientHeight","renderCell","h","row","colIndex","renderCallback","renderRow","rowIndex","style","toggleCollapse","collapseKey","groupkey","prevState","newState","renderRows","i","last","trim","hidden","allGroupsCollapsed","every","hasCollapsed","some","toggleAllCollapsed","Table","slice","hideCollapsed","height","label","displayName"],"mappings":"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","sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n ReactNode,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport classNames from \"classnames\";\nimport { ITableProps, Table, Tbody, Thead } from \"./Table\";\nimport { ISyntheticEvent } from \"../../types\";\nimport CollapseExpandSingleIcon from \"../Icons/collection/CollapseExpandSingle\";\nimport ExpandAllIcon from \"../Icons/collection/ExpandAll\";\nimport CollapseAllIcon from \"../Icons/collection/CollapseAll\";\nimport SortIcon from \"../Icons/collection/SortIcon\";\nimport { StyledDataTable } from \"./Styles\";\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\ninterface 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}\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 ...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 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 {renderRows}\n </StyledDataTable>\n );\n};\n\nDataTable.displayName = \"DataTable\";\n"],"file":"DataTable.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Tables/DataTable.tsx"],"names":["SortDirection","groupByKey","items","key","Array","reduce","result","item","initialCollapsed","rows","groupBy","groupedData","keys","Object","collapsedKeys","forEach","DataTable","header","className","sortBy","sortDirection","None","onSortCallback","theadClass","noResultsCallback","groupHead","isCollapsible","emptyValue","loading","loadingRows","args","columnDirection","setColumnDirection","active","setActive","hovered","setHovered","collapsed","setCollapsed","sort","sortByKey","direction","rowsData","a","b","Asc","first","toString","second","localeCompare","initialData","data","setData","getNextSortDirection","previousDirection","sameColumn","Desc","sortColumn","event","index","currentTarget","dataset","sortable","grouped","map","cellMouseOver","e","target","HTMLElement","cellMouseOut","renderNoResults","length","tableRef","overlayStyles","current","clientHeight","renderCell","h","row","colIndex","renderCallback","renderRow","rowIndex","style","toggleCollapse","collapseKey","groupkey","prevState","newState","renderPlaceholders","placeholders","fill","_","col","renderRows","i","last","trim","hidden","allGroupsCollapsed","every","hasCollapsed","some","toggleAllCollapsed","Table","slice","hideCollapsed","height","label","displayName"],"mappings":"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","sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n ReactNode,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport classNames from \"classnames\";\nimport { ITableProps, Table, Tbody, Thead } from \"./Table\";\nimport { ISyntheticEvent } from \"../../types\";\nimport CollapseExpandSingleIcon from \"../Icons/collection/CollapseExpandSingle\";\nimport ExpandAllIcon from \"../Icons/collection/ExpandAll\";\nimport CollapseAllIcon from \"../Icons/collection/CollapseAll\";\nimport SortIcon from \"../Icons/collection/SortIcon\";\nimport { StyledDataTable } from \"./Styles\";\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"],"file":"DataTable.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Tables/Table.tsx"],"names":["Table","children","className","striped","innerRef","displayName","Thead","Tbody"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;AAuBO,IAAMA,KAA2C,GAAG,SAA9CA,KAA8C,OAKrD;AAAA,MAJJC,QAII,QAJJA,QAII;AAAA,MAHJC,SAGI,QAHJA,SAGI;AAAA,0BAFJC,OAEI;AAAA,MAFJA,OAEI,6BAFM,KAEN;AAAA,MADJC,QACI,QADJA,QACI;AACJ,sBACE,6BAAC,0BAAD;AAAoB,IAAA,SAAS,EAAC;AAA9B,kBACE,6BAAC,mBAAD;AACE,IAAA,GAAG,EAAEA,QADP;AAEE,IAAA,SAAS,EAAE,yBAAW,SAAX,EAAsBF,SAAtB,CAFb;AAGE,IAAA,QAAQ,EAAEC;AAHZ,KAKGF,QALH,CADF,CADF;AAWD,CAjBM;;;AAmBPD,KAAK,CAACK,WAAN,GAAoB,OAApB;;AAEO,IAAMC,KAA6B,GAAG,SAAhCA,KAAgC;AAAA,MAAGL,QAAH,SAAGA,QAAH;AAAA,MAAaC,SAAb,SAAaA,SAAb;AAAA,sBAC3C,6BAAC,uBAAD;AAAiB,IAAA,SAAS,EAAE,yBAAW,eAAX,EAA4BA,SAA5B;AAA5B,KACGD,QADH,CAD2C;AAAA,CAAtC;;;AAMPK,KAAK,CAACD,WAAN,GAAoB,OAApB;;AAEO,IAAME,KAA6B,GAAG,SAAhCA,KAAgC;AAAA,MAAGN,QAAH,SAAGA,QAAH;AAAA,MAAaC,SAAb,SAAaA,SAAb;AAAA,sBAC3C,6BAAC,uBAAD;AAAiB,IAAA,SAAS,EAAE,yBAAW,eAAX,EAA4BA,SAA5B;AAA5B,KACGD,QADH,CAD2C;AAAA,CAAtC;;;AAMPM,KAAK,CAACF,WAAN,GAAoB,OAApB","sourcesContent":["import React, { ReactNode, FC, RefObject } from \"react\";\nimport classNames from \"classnames\";\nimport {\n StyledTableWrapper,\n StyledTable,\n StyledTableBody,\n StyledTableHead,\n} from \"./Styles\";\n\
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Tables/Table.tsx"],"names":["Table","children","className","striped","innerRef","displayName","Thead","Tbody"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;AAuBO,IAAMA,KAA2C,GAAG,SAA9CA,KAA8C,OAKrD;AAAA,MAJJC,QAII,QAJJA,QAII;AAAA,MAHJC,SAGI,QAHJA,SAGI;AAAA,0BAFJC,OAEI;AAAA,MAFJA,OAEI,6BAFM,KAEN;AAAA,MADJC,QACI,QADJA,QACI;AACJ,sBACE,6BAAC,0BAAD;AAAoB,IAAA,SAAS,EAAC;AAA9B,kBACE,6BAAC,mBAAD;AACE,IAAA,GAAG,EAAEA,QADP;AAEE,IAAA,SAAS,EAAE,yBAAW,SAAX,EAAsBF,SAAtB,CAFb;AAGE,IAAA,QAAQ,EAAEC;AAHZ,KAKGF,QALH,CADF,CADF;AAWD,CAjBM;;;AAmBPD,KAAK,CAACK,WAAN,GAAoB,OAApB;;AAEO,IAAMC,KAA6B,GAAG,SAAhCA,KAAgC;AAAA,MAAGL,QAAH,SAAGA,QAAH;AAAA,MAAaC,SAAb,SAAaA,SAAb;AAAA,sBAC3C,6BAAC,uBAAD;AAAiB,IAAA,SAAS,EAAE,yBAAW,eAAX,EAA4BA,SAA5B;AAA5B,KACGD,QADH,CAD2C;AAAA,CAAtC;;;AAMPK,KAAK,CAACD,WAAN,GAAoB,OAApB;;AAEO,IAAME,KAA6B,GAAG,SAAhCA,KAAgC;AAAA,MAAGN,QAAH,SAAGA,QAAH;AAAA,MAAaC,SAAb,SAAaA,SAAb;AAAA,sBAC3C,6BAAC,uBAAD;AAAiB,IAAA,SAAS,EAAE,yBAAW,eAAX,EAA4BA,SAA5B;AAA5B,KACGD,QADH,CAD2C;AAAA,CAAtC;;;AAMPM,KAAK,CAACF,WAAN,GAAoB,OAApB","sourcesContent":["import React, { ReactNode, FC, RefObject } from \"react\";\nimport classNames from \"classnames\";\nimport {\n StyledTableWrapper,\n StyledTable,\n StyledTableBody,\n StyledTableHead,\n} from \"./Styles\";\n\nexport interface ITableWithChildren {\n /** Children prop can be ReactNode. */\n children: ReactNode;\n /** Classname prop for custom styling. */\n className?: string;\n}\n\nexport interface ITableProps {\n /** Darker color on odd column. */\n striped?: boolean;\n /** CSS classes. */\n className?: string;\n /** Ref object for table. */\n innerRef?: RefObject<HTMLTableElement>;\n}\n\nexport const Table: FC<ITableProps & ITableWithChildren> = ({\n children,\n className,\n striped = false,\n innerRef,\n}) => {\n return (\n <StyledTableWrapper className=\"c-table__wrap\">\n <StyledTable\n ref={innerRef}\n className={classNames(\"c-table\", className)}\n $striped={striped}\n >\n {children}\n </StyledTable>\n </StyledTableWrapper>\n );\n};\n\nTable.displayName = \"Table\";\n\nexport const Thead: FC<ITableWithChildren> = ({ children, className }) => (\n <StyledTableHead className={classNames(\"c-table__head\", className)}>\n {children}\n </StyledTableHead>\n);\n\nThead.displayName = \"Thead\";\n\nexport const Tbody: FC<ITableWithChildren> = ({ children, className }) => (\n <StyledTableBody className={classNames(\"c-table__body\", className)}>\n {children}\n </StyledTableBody>\n);\n\nTbody.displayName = \"Tbody\";\n"],"file":"Table.js"}
|
|
@@ -23,7 +23,7 @@ var _Style = require("./Style");
|
|
|
23
23
|
|
|
24
24
|
var _utils = require("../../utils");
|
|
25
25
|
|
|
26
|
-
var _excluded = ["children", "onClose", "className", "style", "onKeyDown", "disableFocusLock", "disableScrollLock", "
|
|
26
|
+
var _excluded = ["children", "onClose", "className", "style", "onKeyDown", "disableFocusLock", "disableScrollLock", "onClick"];
|
|
27
27
|
|
|
28
28
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
29
|
|
|
@@ -56,8 +56,6 @@ var Window = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
56
56
|
disableFocusLock = _ref$disableFocusLock === void 0 ? false : _ref$disableFocusLock,
|
|
57
57
|
_ref$disableScrollLoc = _ref.disableScrollLock,
|
|
58
58
|
disableScrollLock = _ref$disableScrollLoc === void 0 ? false : _ref$disableScrollLoc,
|
|
59
|
-
_ref$preventClickEven = _ref.preventClickEventBubbling,
|
|
60
|
-
preventClickEventBubbling = _ref$preventClickEven === void 0 ? false : _ref$preventClickEven,
|
|
61
59
|
onClick = _ref.onClick,
|
|
62
60
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
63
61
|
|
|
@@ -88,12 +86,9 @@ var Window = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
88
86
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
89
87
|
}, []);
|
|
90
88
|
var handleClick = (0, _react.useCallback)(function (event) {
|
|
91
|
-
|
|
92
|
-
event === null || event === void 0 ? void 0 : event.stopPropagation();
|
|
93
|
-
}
|
|
94
|
-
|
|
89
|
+
event === null || event === void 0 ? void 0 : event.stopPropagation();
|
|
95
90
|
typeof onClick === "function" && onClick(event);
|
|
96
|
-
}, [onClick
|
|
91
|
+
}, [onClick]);
|
|
97
92
|
return /*#__PURE__*/_react.default.createElement(_helpers.Portal, null, /*#__PURE__*/_react.default.createElement(_reactFocusLock.default, {
|
|
98
93
|
returnFocus: returnFocus,
|
|
99
94
|
disabled: disableFocusLock
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Window/Window.tsx"],"names":["returnFocus","preventScroll","Window","ref","children","onClose","className","style","onKeyDown","disableFocusLock","disableScrollLock","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Window/Window.tsx"],"names":["returnFocus","preventScroll","Window","ref","children","onClose","className","style","onKeyDown","disableFocusLock","disableScrollLock","onClick","rest","innerRef","handleRef","zIndex","layers","skyscraper","handleKeyDown","event","defaultPrevented","key","preventDefault","handleClick","stopPropagation","displayName"],"mappings":";;;;;;;;;AAAA;;AAOA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAMA,WAAW,GAAG;AAAEC,EAAAA,aAAa,EAAE;AAAjB,CAApB;AAEO,IAAMC,MAAM,gBAAG,uBAIpB,gBAYEC,GAZF,EAaK;AAAA,MAXDC,QAWC,QAXDA,QAWC;AAAA,MAVDC,OAUC,QAVDA,OAUC;AAAA,MATDC,SASC,QATDA,SASC;AAAA,MARDC,KAQC,QARDA,KAQC;AAAA,MAPDC,SAOC,QAPDA,SAOC;AAAA,mCANDC,gBAMC;AAAA,MANDA,gBAMC,sCANkB,KAMlB;AAAA,mCALDC,iBAKC;AAAA,MALDA,iBAKC,sCALmB,KAKnB;AAAA,MAJDC,OAIC,QAJDA,OAIC;AAAA,MAHEC,IAGF;;AACH,MAAMC,QAAQ,GAAG,mBAAuB,IAAvB,CAAjB;AACA,MAAMC,SAAS,GAAG,yBAAWD,QAAX,EAAqBV,GAArB,CAAlB;;AACA,yBAAuC,+BAAvC;AAAA,+CAAQY,MAAR;AAAA,MAAQA,MAAR,sCAAiBC,cAAOC,UAAxB;;AAEA,MAAMC,aAAa,GAAG,wBACpB,UAACC,KAAD,EAA0C;AACxC,QACE,CAACA,KAAK,CAACC,gBAAP,KACCD,KAAK,CAACE,GAAN,KAAc,KAAd,IAAuBF,KAAK,CAACE,GAAN,KAAc,QADtC,CADF,EAGE;AACAF,MAAAA,KAAK,CAACG,cAAN;;AACA,UAAIjB,OAAJ,EAAa;AACXA,QAAAA,OAAO;AACR;AACF;;AACD,QAAI,OAAOG,SAAP,KAAqB,UAAzB,EAAqC;AACnCA,MAAAA,SAAS,CAACW,KAAD,CAAT;AACD;AACF,GAdmB,EAepB,CAACd,OAAD,EAAUG,SAAV,CAfoB,CAAtB;AAkBA,wBAAU,YAAM;AACd,WAAO,YAAY;AACjB,aAAOH,OAAP,KAAmB,UAAnB,IAAiCA,OAAO,EAAxC;AACD,KAFD,CADc,CAId;AACA;AACD,GAND,EAMG,EANH;AAQA,MAAMkB,WAAW,GAAG,wBAClB,UAACJ,KAAD,EAAW;AACTA,IAAAA,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEK,eAAP;AACA,WAAOb,OAAP,KAAmB,UAAnB,IAAiCA,OAAO,CAACQ,KAAD,CAAxC;AACD,GAJiB,EAKlB,CAACR,OAAD,CALkB,CAApB;AAQA,sBACE,6BAAC,eAAD,qBACE,6BAAC,uBAAD;AAAW,IAAA,WAAW,EAAEX,WAAxB;AAAqC,IAAA,QAAQ,EAAES;AAA/C,kBACE,6BAAC,+BAAD;AACE,IAAA,YAAY,MADd;AAEE,IAAA,GAAG,EAAEK,SAFP;AAGE,IAAA,OAAO,EAAE,CAACJ,iBAHZ;AAIE,IAAA,WAAW;AAJb,kBAME,6BAAC,mBAAD,eACME,IADN;AAEE,IAAA,KAAK;AAAIG,MAAAA,MAAM,EAANA;AAAJ,OAAeR,KAAf,CAFP;AAGE,IAAA,SAAS,EAAEW,aAHb;AAIE,IAAA,QAAQ,EAAE,CAJZ;AAKE,IAAA,SAAS,EAAE,yBAAW,UAAX,EAAuBZ,SAAvB,CALb;AAME,IAAA,OAAO,EAAEiB;AANX,MAQGnB,QARH,CANF,CADF,CADF,CADF;AAuBD,CA/EmB,CAAf;;AAkFPF,MAAM,CAACuB,WAAP,GAAqB,QAArB","sourcesContent":["import React, {\n useCallback,\n useRef,\n useEffect,\n forwardRef,\n KeyboardEvent,\n} from \"react\";\nimport classnames from \"classnames\";\nimport FocusLock from \"react-focus-lock\";\nimport { Portal, useLayerContext } from \"../../helpers\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { StyledWindow } from \"./Style\";\nimport { layers } from \"../../utils\";\n\nexport interface IWindow {\n onClose?: () => void;\n disableFocusLock?: boolean;\n disableScrollLock?: boolean;\n}\n\nconst returnFocus = { preventScroll: true };\n\nexport const Window = forwardRef<\n HTMLDivElement,\n IWindow & Omit<React.ComponentPropsWithoutRef<\"div\">, keyof IWindow>\n>(\n (\n {\n children,\n onClose,\n className,\n style,\n onKeyDown,\n disableFocusLock = false,\n disableScrollLock = false,\n onClick,\n ...rest\n },\n ref\n ) => {\n const innerRef = useRef<HTMLDivElement>(null);\n const handleRef = useForkRef(innerRef, ref);\n const { zIndex = layers.skyscraper } = useLayerContext();\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (\n !event.defaultPrevented &&\n (event.key === \"Esc\" || event.key === \"Escape\")\n ) {\n event.preventDefault();\n if (onClose) {\n onClose();\n }\n }\n if (typeof onKeyDown === \"function\") {\n onKeyDown(event);\n }\n },\n [onClose, onKeyDown]\n );\n\n useEffect(() => {\n return (): void => {\n typeof onClose === \"function\" && onClose();\n };\n // Dependency is empty because we only want to call onClose when component is unmounted\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleClick = useCallback(\n (event) => {\n event?.stopPropagation();\n typeof onClick === \"function\" && onClick(event);\n },\n [onClick]\n );\n\n return (\n <Portal>\n <FocusLock returnFocus={returnFocus} disabled={disableFocusLock}>\n <RemoveScroll\n forwardProps\n ref={handleRef}\n enabled={!disableScrollLock}\n noIsolation\n >\n <StyledWindow\n {...rest}\n style={{ zIndex, ...style }}\n onKeyDown={handleKeyDown}\n tabIndex={0}\n className={classnames(\"c-window\", className)}\n onClick={handleClick}\n >\n {children}\n </StyledWindow>\n </RemoveScroll>\n </FocusLock>\n </Portal>\n );\n }\n);\n\nWindow.displayName = \"Window\";\n"],"file":"Window.js"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { ReactNode } from "react";
|
|
2
|
-
interface IDialog {
|
|
2
|
+
export interface IDialog {
|
|
3
3
|
open?: boolean;
|
|
4
4
|
onClose?: () => void;
|
|
5
5
|
className?: string;
|
|
@@ -7,5 +7,4 @@ interface IDialog {
|
|
|
7
7
|
enableBackgroundClick?: boolean;
|
|
8
8
|
}
|
|
9
9
|
export declare const Dialog: React.ForwardRefExoticComponent<IDialog & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
-
export {};
|
|
11
10
|
//# sourceMappingURL=Dialog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../src/components/Dialog/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,SAAS,EAAE,MAAM,OAAO,CAAC;AAMrD,
|
|
1
|
+
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../src/components/Dialog/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,SAAS,EAAE,MAAM,OAAO,CAAC;AAMrD,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,eAAO,MAAM,MAAM,gFA0BlB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Dialog/Dialog.tsx"],"names":["React","forwardRef","classnames","Modal","SlideFromTop","StyledDialog","Dialog","ref","children","open","onClose","className","enableBackgroundClick","displayName"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAA6C,OAA7C;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAASC,KAAT,QAAsB,UAAtB;AACA,SAASC,YAAT,QAA6B,6BAA7B;AACA,SAASC,YAAT,QAA6B,UAA7B;AAUA,OAAO,IAAMC,MAAM,gBAAGL,UAAU,CAC9B,gBAQEM,GARF,EASK;AAAA,MAPDC,QAOC,QAPDA,QAOC;AAAA,uBANDC,IAMC;AAAA,MANDA,IAMC,0BANM,KAMN;AAAA,MALDC,OAKC,QALDA,OAKC;AAAA,MAJDC,SAIC,QAJDA,SAIC;AAAA,mCAHDC,qBAGC;AAAA,MAHDA,qBAGC,sCAHuB,KAGvB;AACH,sBACE,oBAAC,KAAD;AACE,IAAA,GAAG,EAAEL,GADP;AAEE,IAAA,IAAI,EAAEE,IAFR;AAGE,IAAA,OAAO,EAAEC,OAHX;AAIE,IAAA,sBAAsB,EAAE,CAACE;AAJ3B,kBAME,oBAAC,YAAD;AAAc,IAAA,EAAE,EAAEH;AAAlB,kBACE,oBAAC,YAAD;AAAc,IAAA,SAAS,EAAEP,UAAU,CAAC,UAAD,EAAaS,SAAb;AAAnC,KACGH,QADH,CADF,CANF,CADF;AAcD,CAzB6B,CAAzB;AA4BPF,MAAM,CAACO,WAAP,GAAqB,QAArB","sourcesContent":["import React, { forwardRef, ReactNode } from \"react\";\nimport classnames from \"classnames\";\nimport { Modal } from \"../Modal\";\nimport { SlideFromTop } from \"../Transitions/SlideFromTop\";\nimport { StyledDialog } from \"./Styles\";\n\
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Dialog/Dialog.tsx"],"names":["React","forwardRef","classnames","Modal","SlideFromTop","StyledDialog","Dialog","ref","children","open","onClose","className","enableBackgroundClick","displayName"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAA6C,OAA7C;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAASC,KAAT,QAAsB,UAAtB;AACA,SAASC,YAAT,QAA6B,6BAA7B;AACA,SAASC,YAAT,QAA6B,UAA7B;AAUA,OAAO,IAAMC,MAAM,gBAAGL,UAAU,CAC9B,gBAQEM,GARF,EASK;AAAA,MAPDC,QAOC,QAPDA,QAOC;AAAA,uBANDC,IAMC;AAAA,MANDA,IAMC,0BANM,KAMN;AAAA,MALDC,OAKC,QALDA,OAKC;AAAA,MAJDC,SAIC,QAJDA,SAIC;AAAA,mCAHDC,qBAGC;AAAA,MAHDA,qBAGC,sCAHuB,KAGvB;AACH,sBACE,oBAAC,KAAD;AACE,IAAA,GAAG,EAAEL,GADP;AAEE,IAAA,IAAI,EAAEE,IAFR;AAGE,IAAA,OAAO,EAAEC,OAHX;AAIE,IAAA,sBAAsB,EAAE,CAACE;AAJ3B,kBAME,oBAAC,YAAD;AAAc,IAAA,EAAE,EAAEH;AAAlB,kBACE,oBAAC,YAAD;AAAc,IAAA,SAAS,EAAEP,UAAU,CAAC,UAAD,EAAaS,SAAb;AAAnC,KACGH,QADH,CADF,CANF,CADF;AAcD,CAzB6B,CAAzB;AA4BPF,MAAM,CAACO,WAAP,GAAqB,QAArB","sourcesContent":["import React, { forwardRef, ReactNode } from \"react\";\nimport classnames from \"classnames\";\nimport { Modal } from \"../Modal\";\nimport { SlideFromTop } from \"../Transitions/SlideFromTop\";\nimport { StyledDialog } from \"./Styles\";\n\nexport interface IDialog {\n open?: boolean;\n onClose?: () => void;\n className?: string;\n children?: ReactNode;\n enableBackgroundClick?: boolean;\n}\n\nexport const Dialog = forwardRef<HTMLDivElement, IDialog>(\n (\n {\n children,\n open = false,\n onClose,\n className,\n enableBackgroundClick = false,\n },\n ref\n ) => {\n return (\n <Modal\n ref={ref}\n open={open}\n onClose={onClose}\n disableBackgroundClick={!enableBackgroundClick}\n >\n <SlideFromTop in={open}>\n <StyledDialog className={classnames(\"c-dialog\", className)}>\n {children}\n </StyledDialog>\n </SlideFromTop>\n </Modal>\n );\n }\n);\n\nDialog.displayName = \"Dialog\";\n"],"file":"Dialog.js"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import React, { BaseHTMLAttributes,
|
|
2
|
-
import { ICardProps } from "../Card";
|
|
1
|
+
import React, { BaseHTMLAttributes, CSSProperties, ReactElement } from "react";
|
|
2
|
+
import { Card, ICardProps } from "../Card";
|
|
3
|
+
import { PolymorphicComponentPropsWithRef } from "../../utils/types";
|
|
3
4
|
export interface IEntityCardProps extends ICardProps, BaseHTMLAttributes<HTMLElement> {
|
|
4
|
-
renderAs?: "grid" | "list";
|
|
5
|
-
actions?: ReactNode;
|
|
6
5
|
className?: string;
|
|
7
6
|
isCollection?: boolean;
|
|
8
7
|
background?: string;
|
|
9
8
|
style?: CSSProperties;
|
|
10
|
-
to?: string;
|
|
11
|
-
component?: ComponentType<{
|
|
12
|
-
children: ReactNode;
|
|
13
|
-
}>;
|
|
14
9
|
}
|
|
15
|
-
export declare
|
|
10
|
+
export declare type EntityCardProps<C extends React.ElementType> = PolymorphicComponentPropsWithRef<C, IEntityCardProps>;
|
|
11
|
+
export declare type EntityComponent = <C extends React.ElementType = typeof Card>(props: EntityCardProps<C>) => ReactElement | null;
|
|
12
|
+
export declare const EntityCard: EntityComponent & {
|
|
13
|
+
displayName?: string;
|
|
14
|
+
};
|
|
16
15
|
//# sourceMappingURL=EntityCard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityCard.d.ts","sourceRoot":"","sources":["../../../../src/components/Entity/EntityCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,kBAAkB,EAClB,aAAa,
|
|
1
|
+
{"version":3,"file":"EntityCard.d.ts","sourceRoot":"","sources":["../../../../src/components/Entity/EntityCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,kBAAkB,EAClB,aAAa,EAEb,YAAY,EAEb,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EACL,gCAAgC,EAEjC,MAAM,mBAAmB,CAAC;AAG3B,MAAM,WAAW,gBACf,SAAQ,UAAU,EAChB,kBAAkB,CAAC,WAAW,CAAC;IAEjC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED,oBAAY,eAAe,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,IACrD,gCAAgC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;AAExD,oBAAY,eAAe,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,OAAO,IAAI,EACtE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KACtB,YAAY,GAAG,IAAI,CAAC;AAEzB,eAAO,MAAM,UAAU,EAAE,eAAe,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CA+B9D,CAAC"}
|
|
@@ -1,45 +1,33 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
var _excluded = ["children", "
|
|
4
|
-
import React, {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
export var EntityCard = function
|
|
3
|
+
var _excluded = ["children", "isCollection", "background", "className", "as"];
|
|
4
|
+
import React, { forwardRef, useContext } from "react";
|
|
5
|
+
import { StyledEntityCard } from "./Styles";
|
|
6
|
+
import { Card } from "../Card";
|
|
7
|
+
import { EntityGroupContext } from "./EntityGroup";
|
|
8
|
+
export var EntityCard = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
9
9
|
var children = _ref.children,
|
|
10
|
-
actions = _ref.actions,
|
|
11
|
-
_ref$renderAs = _ref.renderAs,
|
|
12
|
-
renderAs = _ref$renderAs === void 0 ? "grid" : _ref$renderAs,
|
|
13
10
|
isCollection = _ref.isCollection,
|
|
14
11
|
background = _ref.background,
|
|
15
12
|
className = _ref.className,
|
|
16
|
-
|
|
13
|
+
as = _ref.as,
|
|
17
14
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
18
15
|
|
|
16
|
+
var _useContext = useContext(EntityGroupContext),
|
|
17
|
+
renderAs = _useContext.renderAs;
|
|
18
|
+
|
|
19
19
|
var paperType = renderAs === "grid" ? "paper-1" : "paper-2";
|
|
20
|
-
var
|
|
21
|
-
return /*#__PURE__*/React.createElement(
|
|
22
|
-
|
|
23
|
-
wrap: function wrap(children) {
|
|
24
|
-
return /*#__PURE__*/React.createElement(WrapperElement, rest, children);
|
|
25
|
-
}
|
|
26
|
-
}, /*#__PURE__*/React.createElement(StyledEntityCard, _extends({
|
|
20
|
+
var Component = as || Card;
|
|
21
|
+
return /*#__PURE__*/React.createElement(StyledEntityCard, _extends({
|
|
22
|
+
as: Component,
|
|
27
23
|
$renderAs: renderAs,
|
|
28
24
|
$background: background,
|
|
29
25
|
paperType: paperType,
|
|
30
26
|
className: className,
|
|
31
27
|
$isCollection: isCollection
|
|
32
|
-
}, rest
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
return null;
|
|
40
|
-
}), actions && /*#__PURE__*/React.createElement(StyledEntityActions, {
|
|
41
|
-
$renderAs: renderAs
|
|
42
|
-
}, actions)));
|
|
43
|
-
};
|
|
28
|
+
}, rest, {
|
|
29
|
+
ref: ref
|
|
30
|
+
}), children);
|
|
31
|
+
});
|
|
44
32
|
EntityCard.displayName = "EntityCard";
|
|
45
33
|
//# sourceMappingURL=EntityCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Entity/EntityCard.tsx"],"names":["React","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Entity/EntityCard.tsx"],"names":["React","forwardRef","useContext","StyledEntityCard","Card","EntityGroupContext","EntityCard","ref","children","isCollection","background","className","as","rest","renderAs","paperType","Component","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,IAGEC,UAHF,EAKEC,UALF,QAMO,OANP;AAOA,SAASC,gBAAT,QAAiC,UAAjC;AAEA,SAASC,IAAT,QAAiC,SAAjC;AAKA,SAASC,kBAAT,QAAmC,eAAnC;AAsBA,OAAO,IAAMC,UAAsD,gBACjEL,UAAU,CACR,gBASEM,GATF,EAUK;AAAA,MARDC,QAQC,QARDA,QAQC;AAAA,MAPDC,YAOC,QAPDA,YAOC;AAAA,MANDC,UAMC,QANDA,UAMC;AAAA,MALDC,SAKC,QALDA,SAKC;AAAA,MAJDC,EAIC,QAJDA,EAIC;AAAA,MAHEC,IAGF;;AACH,oBAAqBX,UAAU,CAACG,kBAAD,CAA/B;AAAA,MAAQS,QAAR,eAAQA,QAAR;;AACA,MAAMC,SAAS,GAAGD,QAAQ,KAAK,MAAb,GAAsB,SAAtB,GAAkC,SAApD;AACA,MAAME,SAAS,GAAGJ,EAAE,IAAIR,IAAxB;AACA,sBACE,oBAAC,gBAAD;AACE,IAAA,EAAE,EAAEY,SADN;AAEE,IAAA,SAAS,EAAEF,QAFb;AAGE,IAAA,WAAW,EAAEJ,UAHf;AAIE,IAAA,SAAS,EAAEK,SAJb;AAKE,IAAA,SAAS,EAAEJ,SALb;AAME,IAAA,aAAa,EAAEF;AANjB,KAOMI,IAPN;AAQE,IAAA,GAAG,EAAEN;AARP,MAUGC,QAVH,CADF;AAcD,CA7BO,CADL;AAiCPF,UAAU,CAACW,WAAX,GAAyB,YAAzB","sourcesContent":["import React, {\n BaseHTMLAttributes,\n CSSProperties,\n forwardRef,\n ReactElement,\n useContext,\n} from \"react\";\nimport { StyledEntityCard } from \"./Styles\";\n\nimport { Card, ICardProps } from \"../Card\";\nimport {\n PolymorphicComponentPropsWithRef,\n PolymorphicRef,\n} from \"../../utils/types\";\nimport { EntityGroupContext } from \"./EntityGroup\";\n\nexport interface IEntityCardProps\n extends ICardProps,\n BaseHTMLAttributes<HTMLElement> {\n /** ClassName to add on Card */\n className?: string;\n /** Show as group of Cards on grid */\n isCollection?: boolean;\n /** Background color to override for Card */\n background?: string;\n /** CSSProperties to override for Card */\n style?: CSSProperties;\n}\n\nexport type EntityCardProps<C extends React.ElementType> =\n PolymorphicComponentPropsWithRef<C, IEntityCardProps>;\n\nexport type EntityComponent = <C extends React.ElementType = typeof Card>(\n props: EntityCardProps<C>\n) => ReactElement | null;\n\nexport const EntityCard: EntityComponent & { displayName?: string } =\n forwardRef(\n <C extends React.ElementType = typeof Card>(\n {\n children,\n isCollection,\n background,\n className,\n as,\n ...rest\n }: EntityCardProps<C>,\n ref?: PolymorphicRef<C>\n ) => {\n const { renderAs } = useContext(EntityGroupContext);\n const paperType = renderAs === \"grid\" ? \"paper-1\" : \"paper-2\";\n const Component = as || Card;\n return (\n <StyledEntityCard\n as={Component}\n $renderAs={renderAs}\n $background={background}\n paperType={paperType}\n className={className}\n $isCollection={isCollection}\n {...rest}\n ref={ref}\n >\n {children}\n </StyledEntityCard>\n );\n }\n );\n\nEntityCard.displayName = \"EntityCard\";\n"],"file":"EntityCard.js"}
|
|
@@ -3,5 +3,10 @@ export interface IEntityGroupProps extends Pick<HTMLAttributes<HTMLDivElement>,
|
|
|
3
3
|
gap?: number;
|
|
4
4
|
renderAs?: "grid" | "list";
|
|
5
5
|
}
|
|
6
|
+
interface IEntityGroupContext {
|
|
7
|
+
renderAs: "grid" | "list";
|
|
8
|
+
}
|
|
9
|
+
export declare const EntityGroupContext: React.Context<IEntityGroupContext>;
|
|
6
10
|
export declare const EntityGroup: React.FC<IEntityGroupProps>;
|
|
11
|
+
export {};
|
|
7
12
|
//# sourceMappingURL=EntityGroup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/Entity/EntityGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"EntityGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/Entity/EntityGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG9C,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IACnE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B;AACD,eAAO,MAAM,kBAAkB,oCAE7B,CAAC;AAEH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAanD,CAAC"}
|
|
@@ -3,7 +3,9 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
3
3
|
var _excluded = ["children", "gap", "renderAs"];
|
|
4
4
|
import React from "react";
|
|
5
5
|
import { StyledEntityGroup } from "./Styles";
|
|
6
|
-
|
|
6
|
+
export var EntityGroupContext = /*#__PURE__*/React.createContext({
|
|
7
|
+
renderAs: "grid"
|
|
8
|
+
});
|
|
7
9
|
export var EntityGroup = function EntityGroup(_ref) {
|
|
8
10
|
var children = _ref.children,
|
|
9
11
|
gap = _ref.gap,
|
|
@@ -11,18 +13,14 @@ export var EntityGroup = function EntityGroup(_ref) {
|
|
|
11
13
|
renderAs = _ref$renderAs === void 0 ? "grid" : _ref$renderAs,
|
|
12
14
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
13
15
|
|
|
14
|
-
return /*#__PURE__*/React.createElement(
|
|
16
|
+
return /*#__PURE__*/React.createElement(EntityGroupContext.Provider, {
|
|
17
|
+
value: {
|
|
18
|
+
renderAs: renderAs
|
|
19
|
+
}
|
|
20
|
+
}, /*#__PURE__*/React.createElement(StyledEntityGroup, _extends({
|
|
15
21
|
$renderAs: renderAs,
|
|
16
22
|
$gap: gap
|
|
17
|
-
}, rest),
|
|
18
|
-
if ( /*#__PURE__*/React.isValidElement(child) && child.type === EntityCard) {
|
|
19
|
-
return /*#__PURE__*/React.cloneElement(child, {
|
|
20
|
-
renderAs: renderAs
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
return null;
|
|
25
|
-
}));
|
|
23
|
+
}, rest), children));
|
|
26
24
|
};
|
|
27
25
|
EntityGroup.displayName = "EntityGroup";
|
|
28
26
|
//# sourceMappingURL=EntityGroup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Entity/EntityGroup.tsx"],"names":["React","StyledEntityGroup","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Entity/EntityGroup.tsx"],"names":["React","StyledEntityGroup","EntityGroupContext","createContext","renderAs","EntityGroup","children","gap","rest","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,MAAsC,OAAtC;AACA,SAASC,iBAAT,QAAkC,UAAlC;AAWA,OAAO,IAAMC,kBAAkB,gBAAGF,KAAK,CAACG,aAAN,CAAyC;AACzEC,EAAAA,QAAQ,EAAE;AAD+D,CAAzC,CAA3B;AAIP,OAAO,IAAMC,WAAwC,GAAG,SAA3CA,WAA2C,OAKlD;AAAA,MAJJC,QAII,QAJJA,QAII;AAAA,MAHJC,GAGI,QAHJA,GAGI;AAAA,2BAFJH,QAEI;AAAA,MAFJA,QAEI,8BAFO,MAEP;AAAA,MADDI,IACC;;AACJ,sBACE,oBAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAE;AAAEJ,MAAAA,QAAQ,EAAEA;AAAZ;AAApC,kBACE,oBAAC,iBAAD;AAAmB,IAAA,SAAS,EAAEA,QAA9B;AAAwC,IAAA,IAAI,EAAEG;AAA9C,KAAuDC,IAAvD,GACGF,QADH,CADF,CADF;AAOD,CAbM;AAePD,WAAW,CAACI,WAAZ,GAA0B,aAA1B","sourcesContent":["import React, { HTMLAttributes } from \"react\";\nimport { StyledEntityGroup } from \"./Styles\";\n\nexport interface IEntityGroupProps\n extends Pick<HTMLAttributes<HTMLDivElement>, \"className\" | \"style\"> {\n gap?: number;\n renderAs?: \"grid\" | \"list\";\n}\n\ninterface IEntityGroupContext {\n renderAs: \"grid\" | \"list\";\n}\nexport const EntityGroupContext = React.createContext<IEntityGroupContext>({\n renderAs: \"grid\",\n});\n\nexport const EntityGroup: React.FC<IEntityGroupProps> = ({\n children,\n gap,\n renderAs = \"grid\",\n ...rest\n}) => {\n return (\n <EntityGroupContext.Provider value={{ renderAs: renderAs }}>\n <StyledEntityGroup $renderAs={renderAs} $gap={gap} {...rest}>\n {children}\n </StyledEntityGroup>\n </EntityGroupContext.Provider>\n );\n};\n\nEntityGroup.displayName = \"EntityGroup\";\n"],"file":"EntityGroup.js"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React, { HTMLAttributes } from "react";
|
|
2
2
|
export declare type VisibleFromBreakpoint = "sm" | "md" | "lg" | "xl" | "2xl";
|
|
3
3
|
export interface IEntityCardPropertyProps extends HTMLAttributes<HTMLDivElement> {
|
|
4
|
-
$renderAs?: "grid" | "list";
|
|
5
4
|
listOrder?: number;
|
|
6
5
|
listWidth?: string | number;
|
|
7
6
|
visibleFromBreakpoint?: VisibleFromBreakpoint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityProperty.d.ts","sourceRoot":"","sources":["../../../../src/components/Entity/EntityProperty.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"EntityProperty.d.ts","sourceRoot":"","sources":["../../../../src/components/Entity/EntityProperty.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,cAAc,EAAc,MAAM,OAAO,CAAC;AAK1D,oBAAY,qBAAqB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AACtE,MAAM,WAAW,wBACf,SAAQ,cAAc,CAAC,cAAc,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAkB7D,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
var _excluded = ["listOrder", "listWidth", "visibleFromBreakpoint", "className"];
|
|
4
|
-
import React from "react";
|
|
4
|
+
import React, { useContext } from "react";
|
|
5
5
|
import { StyledEntityProperty } from "./Styles";
|
|
6
6
|
import classNames from "classnames";
|
|
7
|
+
import { EntityGroupContext } from "./EntityGroup";
|
|
7
8
|
export var EntityProperty = function EntityProperty(_ref) {
|
|
8
9
|
var listOrder = _ref.listOrder,
|
|
9
10
|
listWidth = _ref.listWidth,
|
|
@@ -11,12 +12,16 @@ export var EntityProperty = function EntityProperty(_ref) {
|
|
|
11
12
|
className = _ref.className,
|
|
12
13
|
props = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
13
14
|
|
|
15
|
+
var _useContext = useContext(EntityGroupContext),
|
|
16
|
+
renderAs = _useContext.renderAs;
|
|
17
|
+
|
|
14
18
|
return /*#__PURE__*/React.createElement(StyledEntityProperty, _extends({
|
|
15
19
|
className: classNames("c-entity-property", className)
|
|
16
20
|
}, props, {
|
|
17
21
|
$order: listOrder,
|
|
18
22
|
$width: listWidth,
|
|
19
|
-
$visibleFromBreakpoint: visibleFromBreakpoint
|
|
23
|
+
$visibleFromBreakpoint: visibleFromBreakpoint,
|
|
24
|
+
$renderAs: renderAs
|
|
20
25
|
}));
|
|
21
26
|
};
|
|
22
27
|
EntityProperty.displayName = "EntityProperty";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Entity/EntityProperty.tsx"],"names":["React","StyledEntityProperty","classNames","EntityProperty","listOrder","listWidth","visibleFromBreakpoint","className","props","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Entity/EntityProperty.tsx"],"names":["React","useContext","StyledEntityProperty","classNames","EntityGroupContext","EntityProperty","listOrder","listWidth","visibleFromBreakpoint","className","props","renderAs","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,IAAgCC,UAAhC,QAAkD,OAAlD;AACA,SAASC,oBAAT,QAAqC,UAArC;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAASC,kBAAT,QAAmC,eAAnC;AAUA,OAAO,IAAMC,cAAkD,GAAG,SAArDA,cAAqD,OAM5D;AAAA,MALJC,SAKI,QALJA,SAKI;AAAA,MAJJC,SAII,QAJJA,SAII;AAAA,MAHJC,qBAGI,QAHJA,qBAGI;AAAA,MAFJC,SAEI,QAFJA,SAEI;AAAA,MADDC,KACC;;AACJ,oBAAqBT,UAAU,CAACG,kBAAD,CAA/B;AAAA,MAAQO,QAAR,eAAQA,QAAR;;AACA,sBACE,oBAAC,oBAAD;AACE,IAAA,SAAS,EAAER,UAAU,CAAC,mBAAD,EAAsBM,SAAtB;AADvB,KAEMC,KAFN;AAGE,IAAA,MAAM,EAAEJ,SAHV;AAIE,IAAA,MAAM,EAAEC,SAJV;AAKE,IAAA,sBAAsB,EAAEC,qBAL1B;AAME,IAAA,SAAS,EAAEG;AANb,KADF;AAUD,CAlBM;AAoBPN,cAAc,CAACO,WAAf,GAA6B,gBAA7B","sourcesContent":["import React, { HTMLAttributes, useContext } from \"react\";\nimport { StyledEntityProperty } from \"./Styles\";\nimport classNames from \"classnames\";\nimport { EntityGroupContext } from \"./EntityGroup\";\n\nexport type VisibleFromBreakpoint = \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\";\nexport interface IEntityCardPropertyProps\n extends HTMLAttributes<HTMLDivElement> {\n listOrder?: number;\n listWidth?: string | number;\n visibleFromBreakpoint?: VisibleFromBreakpoint;\n}\n\nexport const EntityProperty: React.FC<IEntityCardPropertyProps> = ({\n listOrder,\n listWidth,\n visibleFromBreakpoint,\n className,\n ...props\n}) => {\n const { renderAs } = useContext(EntityGroupContext);\n return (\n <StyledEntityProperty\n className={classNames(\"c-entity-property\", className)}\n {...props}\n $order={listOrder}\n $width={listWidth}\n $visibleFromBreakpoint={visibleFromBreakpoint}\n $renderAs={renderAs}\n />\n );\n};\n\nEntityProperty.displayName = \"EntityProperty\";\n"],"file":"EntityProperty.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../src/components/Entity/Styles.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAGzD,eAAO,MAAM,gBAAgB;eAChB,MAAM;;;;
|
|
1
|
+
{"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../src/components/Entity/Styles.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAGzD,eAAO,MAAM,gBAAgB;eAChB,MAAM;;;;SAoDlB,CAAC;AAGF,eAAO,MAAM,oBAAoB;;;;;SA0DhC,CAAC;AAIF,eAAO,MAAM,iBAAiB;eACjB,MAAM;;SAgBlB,CAAC;AAGF,eAAO,MAAM,mBAAmB;;SAkB/B,CAAC"}
|