@pega/lists-react 9.25.1-3 → 9.25.1-4
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/lib/Core/Components/DefaultComponents/CellRenderers/RowActionMenu.d.ts.map +1 -1
- package/lib/Core/Components/DefaultComponents/CellRenderers/RowActionMenu.js +6 -53
- package/lib/Core/Components/DefaultComponents/CellRenderers/RowActionMenu.js.map +1 -1
- package/lib/Core/Components/DefaultComponents/CellRenderers/RowSelectHandle.js +9 -2
- package/lib/Core/Components/DefaultComponents/CellRenderers/RowSelectHandle.js.map +1 -1
- package/lib/Core/Components/RenderingEngine/ComponentResolverFactory.d.ts +1 -0
- package/lib/Core/Components/RenderingEngine/ComponentResolverFactory.d.ts.map +1 -1
- package/lib/Core/Components/RenderingEngine/ComponentResolverFactory.js +6 -1
- package/lib/Core/Components/RenderingEngine/ComponentResolverFactory.js.map +1 -1
- package/lib/Core/Components/Virtualise/VirtualizeInfinite.js +4 -2
- package/lib/Core/Components/Virtualise/VirtualizeInfinite.js.map +1 -1
- package/lib/Core/Components/Virtualise/index.js +5 -3
- package/lib/Core/Components/Virtualise/index.js.map +1 -1
- package/lib/Core/Utils/fetchRowActions.d.ts +16 -0
- package/lib/Core/Utils/fetchRowActions.d.ts.map +1 -0
- package/lib/Core/Utils/fetchRowActions.js +49 -0
- package/lib/Core/Utils/fetchRowActions.js.map +1 -0
- package/lib/Core/Utils/styles.d.ts +9 -0
- package/lib/Core/Utils/styles.d.ts.map +1 -1
- package/lib/Core/Utils/styles.js +8 -3
- package/lib/Core/Utils/styles.js.map +1 -1
- package/lib/Core/Views/Table/CellWrapper.d.ts +3 -1
- package/lib/Core/Views/Table/CellWrapper.d.ts.map +1 -1
- package/lib/Core/Views/Table/CellWrapper.js +4 -3
- package/lib/Core/Views/Table/CellWrapper.js.map +1 -1
- package/lib/Core/Views/Table/Row.d.ts.map +1 -1
- package/lib/Core/Views/Table/Row.js +24 -10
- package/lib/Core/Views/Table/Row.js.map +1 -1
- package/lib/Core/Views/Table/StyledTableContainer.d.ts.map +1 -1
- package/lib/Core/Views/Table/StyledTableContainer.js +74 -24
- package/lib/Core/Views/Table/StyledTableContainer.js.map +1 -1
- package/lib/Core/Views/Table/VirtualizeWrapper.d.ts +3 -1
- package/lib/Core/Views/Table/VirtualizeWrapper.d.ts.map +1 -1
- package/lib/Core/Views/Table/VirtualizeWrapper.js +6 -5
- package/lib/Core/Views/Table/VirtualizeWrapper.js.map +1 -1
- package/lib/Core/Views/Table/index.d.ts.map +1 -1
- package/lib/Core/Views/Table/index.js +15 -6
- package/lib/Core/Views/Table/index.js.map +1 -1
- package/lib/Core/Views/Table/useMasterDetailCleanup.d.ts +11 -0
- package/lib/Core/Views/Table/useMasterDetailCleanup.d.ts.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailCleanup.js +27 -0
- package/lib/Core/Views/Table/useMasterDetailCleanup.js.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailHost.d.ts +14 -0
- package/lib/Core/Views/Table/useMasterDetailHost.d.ts.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailHost.js +56 -0
- package/lib/Core/Views/Table/useMasterDetailHost.js.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailRenderer.d.ts +13 -0
- package/lib/Core/Views/Table/useMasterDetailRenderer.d.ts.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailRenderer.js +23 -0
- package/lib/Core/Views/Table/useMasterDetailRenderer.js.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailRow.d.ts +9 -0
- package/lib/Core/Views/Table/useMasterDetailRow.d.ts.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailRow.js +55 -0
- package/lib/Core/Views/Table/useMasterDetailRow.js.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailState.d.ts +21 -0
- package/lib/Core/Views/Table/useMasterDetailState.d.ts.map +1 -0
- package/lib/Core/Views/Table/useMasterDetailState.js +33 -0
- package/lib/Core/Views/Table/useMasterDetailState.js.map +1 -0
- package/lib/Core/constants.d.ts +4 -0
- package/lib/Core/constants.d.ts.map +1 -1
- package/lib/Core/constants.js +4 -0
- package/lib/Core/constants.js.map +1 -1
- package/package.json +8 -7
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Action } from '@pega/cosmos-react-core';
|
|
2
|
+
import type { RsCoreTypes } from 'pega-repeating-structures-core';
|
|
3
|
+
type RowContext = ReturnType<RsCoreTypes.Row['getContext']>;
|
|
4
|
+
interface FetchRowActionsParams {
|
|
5
|
+
getExecutionContext?: () => RowContext | undefined;
|
|
6
|
+
meta: RsCoreTypes.Meta;
|
|
7
|
+
translate: (key: string) => string;
|
|
8
|
+
}
|
|
9
|
+
export interface HydratedRowAction extends Action {
|
|
10
|
+
primary: string;
|
|
11
|
+
onClick: () => void;
|
|
12
|
+
}
|
|
13
|
+
/** Fetches configured, dynamic, and static menu actions for a row. */
|
|
14
|
+
export default function fetchRowActions({ getExecutionContext, meta, translate }: FetchRowActionsParams): Promise<HydratedRowAction[]>;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=fetchRowActions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchRowActions.d.ts","sourceRoot":"","sources":["../../../Core/Utils/fetchRowActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAGlE,KAAK,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;AAE5D,UAAU,qBAAqB;IAC7B,mBAAmB,CAAC,EAAE,MAAM,UAAU,GAAG,SAAS,CAAC;IACnD,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;IACvB,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,iBAAkB,SAAQ,MAAM;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AA6CD,sEAAsE;AACtE,wBAA8B,eAAe,CAAC,EAC5C,mBAAmB,EACnB,IAAI,EACJ,SAAS,EACV,EAAE,qBAAqB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CA2BtD"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
function hydrateActions(actions, rowContext, refreshRow) {
|
|
2
|
+
return actions.map(action => ({
|
|
3
|
+
...action,
|
|
4
|
+
primary: action.text,
|
|
5
|
+
onClick: () => action.onClick(rowContext, refreshRow)
|
|
6
|
+
}));
|
|
7
|
+
}
|
|
8
|
+
function isVisibleInMenu(actionConfig, rowContext) {
|
|
9
|
+
return (!!actionConfig &&
|
|
10
|
+
typeof actionConfig === 'object' &&
|
|
11
|
+
actionConfig.placement === 'menu' &&
|
|
12
|
+
actionConfig.isVisible?.(rowContext) === true &&
|
|
13
|
+
typeof actionConfig.onClick === 'function');
|
|
14
|
+
}
|
|
15
|
+
function getConfigActions(meta, rowContext, refreshRow, translate) {
|
|
16
|
+
const actions = [];
|
|
17
|
+
if (isVisibleInMenu(meta.editing, rowContext)) {
|
|
18
|
+
actions.push({ text: translate('Edit'), id: 'edit', onClick: meta.editing.onClick });
|
|
19
|
+
}
|
|
20
|
+
if (isVisibleInMenu(meta.deleting, rowContext)) {
|
|
21
|
+
actions.push({ text: translate('Delete'), id: 'delete', onClick: meta.deleting.onClick });
|
|
22
|
+
}
|
|
23
|
+
return hydrateActions(actions, rowContext, refreshRow);
|
|
24
|
+
}
|
|
25
|
+
/** Fetches configured, dynamic, and static menu actions for a row. */
|
|
26
|
+
export default async function fetchRowActions({ getExecutionContext, meta, translate }) {
|
|
27
|
+
const executionContext = getExecutionContext?.();
|
|
28
|
+
if (!executionContext)
|
|
29
|
+
return [];
|
|
30
|
+
const rowContext = executionContext.getValue();
|
|
31
|
+
const refreshRow = () => executionContext.refreshRow();
|
|
32
|
+
const configActions = getConfigActions(meta, rowContext, refreshRow, translate);
|
|
33
|
+
const staticActions = hydrateActions(meta.rowActions ?? [], rowContext, refreshRow);
|
|
34
|
+
try {
|
|
35
|
+
const dynamicActions = await executionContext.getRowActionDetails(rowContext);
|
|
36
|
+
const latestContext = getExecutionContext?.() ?? executionContext;
|
|
37
|
+
const latestRowContext = latestContext.getValue();
|
|
38
|
+
const refreshLatestRow = () => latestContext.refreshRow();
|
|
39
|
+
return [
|
|
40
|
+
...configActions,
|
|
41
|
+
...hydrateActions(Array.isArray(dynamicActions) ? dynamicActions : [], latestRowContext, refreshLatestRow),
|
|
42
|
+
...staticActions
|
|
43
|
+
];
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return [...configActions, ...staticActions];
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=fetchRowActions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchRowActions.js","sourceRoot":"","sources":["../../../Core/Utils/fetchRowActions.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Action } from '@pega/cosmos-react-core';\nimport type { RsCoreTypes } from 'pega-repeating-structures-core';\nimport type { RowAction } from 'pega-repeating-structures-core/lib/types/Meta.types';\n\ntype RowContext = ReturnType<RsCoreTypes.Row['getContext']>;\n\ninterface FetchRowActionsParams {\n getExecutionContext?: () => RowContext | undefined;\n meta: RsCoreTypes.Meta;\n translate: (key: string) => string;\n}\n\nexport interface HydratedRowAction extends Action {\n primary: string;\n onClick: () => void;\n}\n\nfunction hydrateActions(\n actions: RowAction[],\n rowContext: RsCoreTypes.RowData,\n refreshRow: () => Promise<void>\n): HydratedRowAction[] {\n return actions.map(action => ({\n ...action,\n primary: action.text,\n onClick: () => action.onClick(rowContext, refreshRow)\n }));\n}\n\nfunction isVisibleInMenu(\n actionConfig: RsCoreTypes.Meta['editing'] | RsCoreTypes.Meta['deleting'],\n rowContext: RsCoreTypes.RowData\n): actionConfig is RsCoreTypes.ActionConfig {\n return (\n !!actionConfig &&\n typeof actionConfig === 'object' &&\n actionConfig.placement === 'menu' &&\n actionConfig.isVisible?.(rowContext) === true &&\n typeof actionConfig.onClick === 'function'\n );\n}\n\nfunction getConfigActions(\n meta: RsCoreTypes.Meta,\n rowContext: RsCoreTypes.RowData,\n refreshRow: () => Promise<void>,\n translate: FetchRowActionsParams['translate']\n): HydratedRowAction[] {\n const actions: RowAction[] = [];\n\n if (isVisibleInMenu(meta.editing, rowContext)) {\n actions.push({ text: translate('Edit'), id: 'edit', onClick: meta.editing.onClick });\n }\n if (isVisibleInMenu(meta.deleting, rowContext)) {\n actions.push({ text: translate('Delete'), id: 'delete', onClick: meta.deleting.onClick });\n }\n\n return hydrateActions(actions, rowContext, refreshRow);\n}\n\n/** Fetches configured, dynamic, and static menu actions for a row. */\nexport default async function fetchRowActions({\n getExecutionContext,\n meta,\n translate\n}: FetchRowActionsParams): Promise<HydratedRowAction[]> {\n const executionContext = getExecutionContext?.();\n if (!executionContext) return [];\n\n const rowContext = executionContext.getValue();\n const refreshRow = () => executionContext.refreshRow();\n const configActions = getConfigActions(meta, rowContext, refreshRow, translate);\n const staticActions = hydrateActions(meta.rowActions ?? [], rowContext, refreshRow);\n\n try {\n const dynamicActions = await executionContext.getRowActionDetails(rowContext);\n const latestContext = getExecutionContext?.() ?? executionContext;\n const latestRowContext = latestContext.getValue();\n const refreshLatestRow = () => latestContext.refreshRow();\n\n return [\n ...configActions,\n ...hydrateActions(\n Array.isArray(dynamicActions) ? dynamicActions : [],\n latestRowContext,\n refreshLatestRow\n ),\n ...staticActions\n ];\n } catch {\n return [...configActions, ...staticActions];\n }\n}\n"]}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import type { RsCoreTypes } from 'pega-repeating-structures-core';
|
|
2
|
+
export declare function getHeightStyles(view: RsCoreTypes.View, isFullscreen: boolean): {
|
|
3
|
+
height?: undefined;
|
|
4
|
+
minHeight?: undefined;
|
|
5
|
+
maxHeight?: undefined;
|
|
6
|
+
} | {
|
|
7
|
+
height: string;
|
|
8
|
+
minHeight: string;
|
|
9
|
+
maxHeight: string;
|
|
10
|
+
};
|
|
2
11
|
export declare const generateRSHeightStyles: ({ view, isFullscreen }: {
|
|
3
12
|
view: RsCoreTypes.View;
|
|
4
13
|
isFullscreen: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../Core/Utils/styles.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../Core/Utils/styles.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAKlE,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO;;;;;;;;EA4D5E;AAGD,eAAO,MAAM,sBAAsB,GAAI,wBAGpC;IACD,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB,gDAUA,CAAC;AAGF,eAAO,MAAM,mCAAmC,mDAM/C,CAAC"}
|
package/lib/Core/Utils/styles.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { css } from 'styled-components';
|
|
2
2
|
const DEFAULT_READONLY_TABLE_HEIGHT = '600px';
|
|
3
3
|
const MAX_HEIGHT_MIN_VALUE_FALLBACK = '25rem';
|
|
4
|
-
function getHeightStyles(view, isFullscreen) {
|
|
4
|
+
export function getHeightStyles(view, isFullscreen) {
|
|
5
5
|
if (!view)
|
|
6
6
|
return {};
|
|
7
7
|
const { viewHeight, meta: { basicMode, height: { height, minHeight, maxHeight, maxHeightMinValueVariable, deltaAdjustment = 0 } = {} } } = view;
|
|
@@ -12,7 +12,8 @@ function getHeightStyles(view, isFullscreen) {
|
|
|
12
12
|
// Fullscreen mode overrides other height calculations
|
|
13
13
|
if (isFullscreen) {
|
|
14
14
|
return {
|
|
15
|
-
height
|
|
15
|
+
// Stretch the fullscreen table using --content-height-in-view, which Fullscreen provides after portaling the table.
|
|
16
|
+
height: `calc(var(--content-height-in-view) - ${cardPadding})`,
|
|
16
17
|
minHeight: 'auto',
|
|
17
18
|
maxHeight: `calc(max(100dvh, ${maxHeightMinimumValue}) - ${cardPadding})`
|
|
18
19
|
};
|
|
@@ -34,7 +35,11 @@ function getHeightStyles(view, isFullscreen) {
|
|
|
34
35
|
if (basicMode) {
|
|
35
36
|
calculatedHeight = 'auto';
|
|
36
37
|
}
|
|
37
|
-
if (height) {
|
|
38
|
+
if (typeof height === 'string' && height.startsWith('--')) {
|
|
39
|
+
// CSS variable: explicit height takes precedence over basicMode.
|
|
40
|
+
calculatedHeight = `calc(var(${height}) - ${deltaAdjustment}px - ${cardPadding})`;
|
|
41
|
+
}
|
|
42
|
+
else if (typeof height === 'number') {
|
|
38
43
|
calculatedHeight = `calc(${height}px - ${deltaAdjustment}px - ${cardPadding})`;
|
|
39
44
|
}
|
|
40
45
|
if (viewHeight) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../Core/Utils/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAIxC,MAAM,6BAA6B,GAAG,OAAO,CAAC;AAC9C,MAAM,6BAA6B,GAAG,OAAO,CAAC;AAE9C,
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../Core/Utils/styles.ts"],"names":[],"mappings":"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","sourcesContent":["import { css } from 'styled-components';\n\nimport type { RsCoreTypes } from 'pega-repeating-structures-core';\n\nconst DEFAULT_READONLY_TABLE_HEIGHT = '600px';\nconst MAX_HEIGHT_MIN_VALUE_FALLBACK = '25rem';\n\nexport function getHeightStyles(view: RsCoreTypes.View, isFullscreen: boolean) {\n if (!view) return {};\n\n const {\n viewHeight,\n meta: {\n basicMode,\n height: { height, minHeight, maxHeight, maxHeightMinValueVariable, deltaAdjustment = 0 } = {}\n }\n } = view;\n\n const maxHeightMinimumValue = maxHeightMinValueVariable\n ? `var(${maxHeightMinValueVariable}, ${MAX_HEIGHT_MIN_VALUE_FALLBACK})`\n : MAX_HEIGHT_MIN_VALUE_FALLBACK;\n\n const cardPadding = 'var(--rs-card-padding, 0px)';\n\n // Fullscreen mode overrides other height calculations\n if (isFullscreen) {\n return {\n // Stretch the fullscreen table using --content-height-in-view, which Fullscreen provides after portaling the table.\n height: `calc(var(--content-height-in-view) - ${cardPadding})`,\n minHeight: 'auto',\n maxHeight: `calc(max(100dvh, ${maxHeightMinimumValue}) - ${cardPadding})`\n };\n }\n\n // Max-height calculations\n let calculatedMaxHeight = 'none';\n if (basicMode) {\n calculatedMaxHeight = DEFAULT_READONLY_TABLE_HEIGHT;\n }\n if (typeof maxHeight === 'number') {\n calculatedMaxHeight = `calc(max(${maxHeight}px, ${maxHeightMinimumValue}) - ${deltaAdjustment}px - ${cardPadding})`;\n }\n if (typeof maxHeight === 'string' && maxHeight.startsWith('--')) {\n calculatedMaxHeight = `calc(max(var(${maxHeight}, ${DEFAULT_READONLY_TABLE_HEIGHT}), ${maxHeightMinimumValue}) - ${deltaAdjustment}px - ${cardPadding})`;\n }\n\n // Height calculations\n // For landing pages stretch the repeating view to the max available height even though there might be less or no records\n let calculatedHeight = calculatedMaxHeight;\n if (basicMode) {\n calculatedHeight = 'auto';\n }\n if (typeof height === 'string' && height.startsWith('--')) {\n // CSS variable: explicit height takes precedence over basicMode.\n calculatedHeight = `calc(var(${height}) - ${deltaAdjustment}px - ${cardPadding})`;\n } else if (typeof height === 'number') {\n calculatedHeight = `calc(${height}px - ${deltaAdjustment}px - ${cardPadding})`;\n }\n if (viewHeight) {\n calculatedHeight = `calc(${viewHeight}px - ${deltaAdjustment}px - ${cardPadding})`;\n }\n\n return {\n height: calculatedHeight,\n minHeight: minHeight ? `${minHeight}px` : 'auto',\n maxHeight: calculatedMaxHeight\n };\n}\n\n// Exposes styles to be set on the RS template\nexport const generateRSHeightStyles = ({\n view,\n isFullscreen\n}: {\n view: RsCoreTypes.View;\n isFullscreen: boolean;\n}) => {\n const { height, minHeight, maxHeight } = getHeightStyles(view, isFullscreen);\n\n return css`\n display: flex;\n flex-direction: column;\n height: ${height};\n min-height: ${minHeight};\n max-height: ${maxHeight};\n `;\n};\n\n// Exposes styles to be set on the container that contains the data records and need to be expanded and collapsed based on records\nexport const generateRSDataContainerHeightStyles = () => {\n return css`\n display: flex;\n flex: 1 1 auto;\n overflow: hidden;\n `;\n};\n"]}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
export const CellIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("@pega/cosmos-react-core").IconProps & import("styled-components/dist/types").BaseObject, import("styled-components/dist/types").BaseObject>> & string & Omit<import("react").ForwardRefExoticComponent<import("@pega/cosmos-react-core").IconProps>, keyof import("react").Component<any, {}, any>>;
|
|
2
2
|
declare const _default: import("react").MemoExoticComponent<typeof CellWrapper>;
|
|
3
3
|
export default _default;
|
|
4
|
-
declare function CellWrapper({ column, level }: {
|
|
4
|
+
declare function CellWrapper({ column, level, onMasterDetailKeyDown }: {
|
|
5
5
|
column: any;
|
|
6
6
|
level?: number | undefined;
|
|
7
|
+
onMasterDetailKeyDown: any;
|
|
7
8
|
}): import("react/jsx-runtime").JSX.Element;
|
|
8
9
|
declare namespace CellWrapper {
|
|
9
10
|
namespace propTypes {
|
|
@@ -11,6 +12,7 @@ declare namespace CellWrapper {
|
|
|
11
12
|
[x: string]: any;
|
|
12
13
|
}>;
|
|
13
14
|
let level: PropTypes.Requireable<number>;
|
|
15
|
+
let onMasterDetailKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
18
|
import PropTypes from 'prop-types';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellWrapper.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Table/CellWrapper.jsx"],"names":[],"mappings":"AAyCA,wbAkBG;;;AAEH
|
|
1
|
+
{"version":3,"file":"CellWrapper.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Table/CellWrapper.jsx"],"names":[],"mappings":"AAyCA,wbAkBG;;;AAEH;;;;4CA0DC;;;;;;;;;;sBAvHqB,YAAY"}
|
|
@@ -48,7 +48,7 @@ export const CellIcon = styled(Icon)(({ cellAlign }) => {
|
|
|
48
48
|
}
|
|
49
49
|
`;
|
|
50
50
|
});
|
|
51
|
-
function CellWrapper({ column, level = 0 }) {
|
|
51
|
+
function CellWrapper({ column, level = 0, onMasterDetailKeyDown }) {
|
|
52
52
|
const ref = useRef();
|
|
53
53
|
const { field: { cellAlign, type: fieldType }, isCustomColumn, isLastColumn, isFirstVisualColumn, getCellStyleFormat } = column;
|
|
54
54
|
const { classList, style: cellStyle, ...restProps } = column.getUIProps();
|
|
@@ -66,11 +66,12 @@ function CellWrapper({ column, level = 0 }) {
|
|
|
66
66
|
'cell-first': isFirstVisualColumn,
|
|
67
67
|
'cell-last-frozen': column.lastFrozen,
|
|
68
68
|
'column-type-action': fieldType === FieldType.ACTION_FIELD_TYPE
|
|
69
|
-
}, !isCustomColumn && cellAlign && CELL_ALIGN_CLASSES[cellAlign]), style: cellStyles, ref: ref, tabIndex: -1, "data-style-format": styleFormatId, children: [_jsx(RenderingEngine, { style: renderingEngineStyles, highlighter: true, ...column.getRenderingEngineProps(), context: context }), cellIconProps && _jsx(CellIcon, { ...cellIconProps, cellAlign: cellAlign, set: 'budicon' }), styleFormatId && (_jsx(VisuallyHiddenText, { id: styleFormatId, children: `,${translate('state')}: ${styleFormatLabel},` }))] }));
|
|
69
|
+
}, !isCustomColumn && cellAlign && CELL_ALIGN_CLASSES[cellAlign]), style: cellStyles, ref: ref, tabIndex: -1, onKeyDownCapture: onMasterDetailKeyDown, "data-style-format": styleFormatId, children: [_jsx(RenderingEngine, { style: renderingEngineStyles, highlighter: true, ...column.getRenderingEngineProps(), context: context }), cellIconProps && _jsx(CellIcon, { ...cellIconProps, cellAlign: cellAlign, set: 'budicon' }), styleFormatId && (_jsx(VisuallyHiddenText, { id: styleFormatId, children: `,${translate('state')}: ${styleFormatLabel},` }))] }));
|
|
70
70
|
}
|
|
71
71
|
CellWrapper.propTypes = {
|
|
72
72
|
column: PropTypes.objectOf(PropTypes.any),
|
|
73
|
-
level: PropTypes.number
|
|
73
|
+
level: PropTypes.number,
|
|
74
|
+
onMasterDetailKeyDown: PropTypes.func
|
|
74
75
|
};
|
|
75
76
|
export default memo(CellWrapper);
|
|
76
77
|
//# sourceMappingURL=CellWrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellWrapper.js","sourceRoot":"","sources":["../../../../Core/Views/Table/CellWrapper.jsx"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,eAAe,IAAI,EAAE,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,eAAe,MAAM,6CAA6C,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,uCAAuC,EAAE,MAAM,4CAA4C,CAAC;AACrG,OAAO,YAAY,MAAM,0BAA0B,CAAC;AAEpD,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE;IACrD,MAAM,EACJ,iBAAiB,EACjB,MAAM,EACN,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAC7B,GAAG,MAAM,CAAC;IACX,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,iBAAiB,CAAC;IAEpF,MAAM,UAAU,GAAG;QACjB,IAAI,EAAE,kBAAkB,MAAM,GAAG;QACjC,KAAK,EAAE,mBAAmB,MAAM,GAAG;QACnC,KAAK,EAAE,mBAAmB,MAAM,GAAG;QACnC,GAAG,CAAC,eAAe,IAAI,EAAE,eAAe,EAAE,CAAC;QAC3C,GAAG,CAAC,iBAAiB,IAAI,MAAM,EAAE,wBAAwB,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;KACjF,CAAC;IAEF,MAAM,qBAAqB,GAAG;QAC5B,GAAG,CAAC,iBAAiB;YACnB,MAAM,EAAE,wBAAwB,IAAI;YAClC,WAAW,EAAE,uCAAuC,CAAC,KAAK,CAAC;SAC5D,CAAC;QACJ,GAAG,CAAC,aAAa,IAAI,EAAE,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,eAAe,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;KACnD,CAAC;IAEF,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;IACrD,iBAAiB;IACjB,OAAO,GAAG,CAAA;;;;;;;;;;2BAUe,SAAS,KAAK,OAAO,IAAI,QAAQ;6BAC/B,SAAS,KAAK,OAAO,IAAI,QAAQ;eAC/C,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;;GAGzC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,SAAS,WAAW,CAAC,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"CellWrapper.js","sourceRoot":"","sources":["../../../../Core/Views/Table/CellWrapper.jsx"],"names":[],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport { memo, useCallback, useRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { FieldType } from 'pega-repeating-structures-core';\nimport { Icon, VisuallyHiddenText } from '@pega/cosmos-react-core';\n\nimport { createClassName as cx } from '../../Utils';\nimport RenderingEngine from '../../Components/RenderingEngine/RenderCell';\nimport { CELL_ALIGN_CLASSES } from '../../constants';\nimport { hierarchicalgroupheaderleftdisplacement } from '../../Components/HierarchicalGroupRenderer';\nimport useTranslate from '../../Hooks/useTranslate';\n\nconst getStyles = (column, level, styleFormatConfig) => {\n const {\n isFirstDataColumn,\n parent,\n field: { idHash, cellAlign }\n } = column;\n const { backgroundColor, icon: cellIconProps, foregroundColor } = styleFormatConfig;\n\n const cellStyles = {\n left: `var(--col-left-${idHash})`,\n order: `var(--col-order-${idHash})`,\n width: `var(--col-width-${idHash})`,\n ...(backgroundColor && { backgroundColor }),\n ...(isFirstDataColumn && parent?.hierarchicalGroupEnabled && { paddingLeft: 0 })\n };\n\n const renderingEngineStyles = {\n ...(isFirstDataColumn &&\n parent?.hierarchicalGroupEnabled && {\n paddingLeft: hierarchicalgroupheaderleftdisplacement(level)\n }),\n ...(cellIconProps && { order: cellAlign === 'right' ? 2 : 1 }),\n ...(foregroundColor && { color: foregroundColor })\n };\n\n return { cellStyles, renderingEngineStyles };\n};\n\nexport const CellIcon = styled(Icon)(({ cellAlign }) => {\n // icon size 12px\n return css`\n /*\n * Icon styles sometimes fail to override correctly. Increasing specificity ensures consistent override behavior.\n * https://styled-components.com/docs/faqs#how-can-i-override-styles-with-higher-specificity\n */\n &&& {\n height: 0.75rem;\n width: 0.75rem;\n min-width: 0.75rem;\n min-height: 0.75rem;\n margin-inline-end: ${cellAlign !== 'right' && '0.5rem'};\n margin-inline-start: ${cellAlign === 'right' && '0.5rem'};\n order: ${cellAlign === 'right' ? 1 : 2};\n flex-shrink: 0;\n }\n `;\n});\n\nfunction CellWrapper({ column, level = 0, onMasterDetailKeyDown }) {\n const ref = useRef();\n const {\n field: { cellAlign, type: fieldType },\n isCustomColumn,\n isLastColumn,\n isFirstVisualColumn,\n getCellStyleFormat\n } = column;\n const { classList, style: cellStyle, ...restProps } = column.getUIProps();\n const {\n config: styleFormatConfig = {},\n label: styleFormatLabel,\n id: styleFormatId\n } = getCellStyleFormat() ?? {};\n const { foregroundColor, icon: cellIconProps } = styleFormatConfig;\n const context = {\n getElement: () => ref.current,\n getStyles: useCallback(() => ({ foregroundColor }), [foregroundColor])\n };\n const { cellStyles, renderingEngineStyles } = getStyles(column, level, styleFormatConfig);\n const [translate] = useTranslate();\n\n return (\n <div\n {...restProps}\n className={cx(\n 'cell',\n ...classList,\n {\n 'cell-fixed': column.frozen,\n 'cell-last': isLastColumn,\n 'cell-first': isFirstVisualColumn,\n 'cell-last-frozen': column.lastFrozen,\n 'column-type-action': fieldType === FieldType.ACTION_FIELD_TYPE\n },\n !isCustomColumn && cellAlign && CELL_ALIGN_CLASSES[cellAlign]\n )}\n style={cellStyles}\n ref={ref}\n tabIndex={-1}\n onKeyDownCapture={onMasterDetailKeyDown}\n data-style-format={styleFormatId}\n >\n <RenderingEngine\n style={renderingEngineStyles}\n highlighter\n {...column.getRenderingEngineProps()}\n context={context}\n />\n {cellIconProps && <CellIcon {...cellIconProps} cellAlign={cellAlign} set='budicon' />}\n {styleFormatId && (\n <VisuallyHiddenText\n id={styleFormatId}\n >{`,${translate('state')}: ${styleFormatLabel},`}</VisuallyHiddenText>\n )}\n </div>\n );\n}\n\nCellWrapper.propTypes = {\n column: PropTypes.objectOf(PropTypes.any),\n level: PropTypes.number,\n onMasterDetailKeyDown: PropTypes.func\n};\n\nexport default memo(CellWrapper);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Table/Row.jsx"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Table/Row.jsx"],"names":[],"mappings":";;AAYA;;;;;4CAoCC;;;;;;;;;;;sBAhDqB,YAAY"}
|
|
@@ -1,17 +1,31 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { memo } from 'react';
|
|
4
|
+
import { createClassName as cx } from '../../Utils';
|
|
5
|
+
import { MASTER_DETAIL_INDICATOR_CLASS, MASTER_DETAIL_PREVIEW_HIGHLIGHT_CLASS } from '../../constants';
|
|
4
6
|
import CellWrapper from './CellWrapper';
|
|
7
|
+
import useMasterDetailRow from './useMasterDetailRow';
|
|
5
8
|
function Row({ row, columns, level = 0, dataIndex }) {
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
})
|
|
9
|
+
const rowUiProps = row.getUIProps();
|
|
10
|
+
const { isMasterDetailEnabled, onRowClick, onCellKeyDownCapture, rowElementRef } = useMasterDetailRow(row);
|
|
11
|
+
const isPreviewHighlighted = !!row.masterDetailActive;
|
|
12
|
+
const uiProps = {
|
|
13
|
+
...rowUiProps,
|
|
14
|
+
...(dataIndex >= 0 ? { 'data-index': dataIndex } : {}),
|
|
15
|
+
className: cx(rowUiProps.className, {
|
|
16
|
+
[MASTER_DETAIL_PREVIEW_HIGHLIGHT_CLASS]: isPreviewHighlighted
|
|
17
|
+
})
|
|
18
|
+
};
|
|
19
|
+
return (
|
|
20
|
+
// eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions -- TableA11y owns grid navigation while Row owns Master Detail activation.
|
|
21
|
+
_jsxs("div", { ...uiProps, ref: rowElementRef, onClick: isMasterDetailEnabled ? onRowClick : undefined, children: [[...columns]
|
|
22
|
+
.sort((colA, colB) => colA.order - colB.order)
|
|
23
|
+
.map(column => {
|
|
24
|
+
column.setExecutionContext(row);
|
|
25
|
+
if (column.hidden)
|
|
26
|
+
return null;
|
|
27
|
+
return (_jsx(CellWrapper, { row: row, column: column, level: level, onMasterDetailKeyDown: isMasterDetailEnabled ? onCellKeyDownCapture : undefined }, column.field.id));
|
|
28
|
+
}), isPreviewHighlighted && (_jsx("span", { className: MASTER_DETAIL_INDICATOR_CLASS, "aria-hidden": 'true' }))] }));
|
|
15
29
|
}
|
|
16
30
|
Row.propTypes = {
|
|
17
31
|
columns: PropTypes.arrayOf(PropTypes.any),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Row.js","sourceRoot":"","sources":["../../../../Core/Views/Table/Row.jsx"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,WAAW,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Row.js","sourceRoot":"","sources":["../../../../Core/Views/Table/Row.jsx"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,EAAE,eAAe,IAAI,EAAE,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,EACtC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,SAAS,GAAG,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,GAAG,CAAC,EAAE,SAAS,EAAE;IACjD,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;IACpC,MAAM,EAAE,qBAAqB,EAAE,UAAU,EAAE,oBAAoB,EAAE,aAAa,EAAE,GAC9E,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,oBAAoB,GAAG,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACtD,MAAM,OAAO,GAAG;QACd,GAAG,UAAU;QACb,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE;YAClC,CAAC,qCAAqC,CAAC,EAAE,oBAAoB;SAC9D,CAAC;KACH,CAAC;IAEF,OAAO;IACL,qLAAqL;IACrL,kBAAS,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,aAC1F,CAAC,GAAG,OAAO,CAAC;iBACV,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;iBAC7C,GAAG,CAAC,MAAM,CAAC,EAAE;gBACZ,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBAChC,IAAI,MAAM,CAAC,MAAM;oBAAE,OAAO,IAAI,CAAC;gBAC/B,OAAO,CACL,KAAC,WAAW,IAEV,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,qBAAqB,EAAE,qBAAqB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,IAJ1E,MAAM,CAAC,KAAK,CAAC,EAAE,CAKpB,CACH,CAAC;YACJ,CAAC,CAAC,EACH,oBAAoB,IAAI,CACvB,eAAM,SAAS,EAAE,6BAA6B,iBAAc,MAAM,GAAG,CACtE,IACG,CACP,CAAC;AACJ,CAAC;AAED,GAAG,CAAC,SAAS,GAAG;IACd,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC;IACzC,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC;IACtC,KAAK,EAAE,SAAS,CAAC,MAAM;IACvB,SAAS,EAAE,SAAS,CAAC,MAAM;CAC5B,CAAC;AAEF,eAAe,IAAI,CAAC,GAAG,CAAC,CAAC","sourcesContent":["import PropTypes from 'prop-types';\nimport { memo } from 'react';\n\nimport { createClassName as cx } from '../../Utils';\nimport {\n MASTER_DETAIL_INDICATOR_CLASS,\n MASTER_DETAIL_PREVIEW_HIGHLIGHT_CLASS\n} from '../../constants';\n\nimport CellWrapper from './CellWrapper';\nimport useMasterDetailRow from './useMasterDetailRow';\n\nfunction Row({ row, columns, level = 0, dataIndex }) {\n const rowUiProps = row.getUIProps();\n const { isMasterDetailEnabled, onRowClick, onCellKeyDownCapture, rowElementRef } =\n useMasterDetailRow(row);\n const isPreviewHighlighted = !!row.masterDetailActive;\n const uiProps = {\n ...rowUiProps,\n ...(dataIndex >= 0 ? { 'data-index': dataIndex } : {}),\n className: cx(rowUiProps.className, {\n [MASTER_DETAIL_PREVIEW_HIGHLIGHT_CLASS]: isPreviewHighlighted\n })\n };\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions -- TableA11y owns grid navigation while Row owns Master Detail activation.\n <div {...uiProps} ref={rowElementRef} onClick={isMasterDetailEnabled ? onRowClick : undefined}>\n {[...columns]\n .sort((colA, colB) => colA.order - colB.order)\n .map(column => {\n column.setExecutionContext(row);\n if (column.hidden) return null;\n return (\n <CellWrapper\n key={column.field.id}\n row={row}\n column={column}\n level={level}\n onMasterDetailKeyDown={isMasterDetailEnabled ? onCellKeyDownCapture : undefined}\n />\n );\n })}\n {isPreviewHighlighted && (\n <span className={MASTER_DETAIL_INDICATOR_CLASS} aria-hidden='true' />\n )}\n </div>\n );\n}\n\nRow.propTypes = {\n columns: PropTypes.arrayOf(PropTypes.any),\n row: PropTypes.objectOf(PropTypes.any),\n level: PropTypes.number,\n dataIndex: PropTypes.number\n};\n\nexport default memo(Row);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StyledTableContainer.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Table/StyledTableContainer.jsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"StyledTableContainer.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Table/StyledTableContainer.jsx"],"names":[],"mappings":";AA4CA;;yJAwjCG"}
|
|
@@ -7,7 +7,21 @@ import { StyledRadioCheck } from '@pega/cosmos-react-core/lib/components/RadioCh
|
|
|
7
7
|
import { StyledLabel, StyledProgressBackdrop, calculateFontSize, tryCatch, isSameColor } from '@pega/cosmos-react-core';
|
|
8
8
|
import { StyledTabPanel } from '@pega/cosmos-react-core/lib/components/Tabs/TabPanel';
|
|
9
9
|
import { generateRSDataContainerHeightStyles, generateRSHeightStyles } from '../../Utils/styles';
|
|
10
|
+
import { MASTER_DETAIL_INDICATOR_CLASS, MASTER_DETAIL_PREVIEW_HIGHLIGHT_CLASS } from '../../constants';
|
|
10
11
|
import { CellIcon } from './CellWrapper';
|
|
12
|
+
const dataRowSelector = `.row:not(.group-header-row):not(.hierarchical-group-header-row):not(
|
|
13
|
+
.hierarchical-group-footer-row
|
|
14
|
+
):not(.header)`;
|
|
15
|
+
const rowBackground = backgroundColor => css `
|
|
16
|
+
background-color: ${backgroundColor};
|
|
17
|
+
|
|
18
|
+
/* Sticky action cells and the first frozen cell use pseudo-elements to paint their backgrounds. */
|
|
19
|
+
> .cell,
|
|
20
|
+
> .cell-action::before,
|
|
21
|
+
> .cell-fixed.cell-first::before {
|
|
22
|
+
background-color: ${backgroundColor};
|
|
23
|
+
}
|
|
24
|
+
`;
|
|
11
25
|
const StyledTableContainer = styled(forwardRef((props, ref) => _jsx("div", { ref: ref, ...props })))(({ theme, view, isFullscreen }) => {
|
|
12
26
|
let colIdToFillRemainingSpace;
|
|
13
27
|
let isAggregationApplied = false;
|
|
@@ -24,7 +38,8 @@ const StyledTableContainer = styled(forwardRef((props, ref) => _jsx("div", { ref
|
|
|
24
38
|
const fontSize = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);
|
|
25
39
|
const showFreezeLine = view.state.responsive?.sm &&
|
|
26
40
|
!(view.hasNoRecords || view.hasNoFrozenColumns || view.bHideFreezeLine);
|
|
27
|
-
const
|
|
41
|
+
const highlightedRowColor = tryCatch(() => mix(0.85, theme.base.palette['primary-background'], theme.base.palette.interactive));
|
|
42
|
+
const previewHighlightBorderColor = tryCatch(() => transparentize(0.7, theme.base.palette.interactive));
|
|
28
43
|
const lightGreyColor = theme.base.colors.gray['extra-light'];
|
|
29
44
|
const freezeLineShadowTransparent = transparentize(getLuminance(theme.components.table.header['foreground-color']) < 0.5 ? 0.9 : 0.75, theme.components.table.header['foreground-color']);
|
|
30
45
|
const headerBackground = theme.components.table.header['background-color'];
|
|
@@ -62,9 +77,11 @@ const StyledTableContainer = styled(forwardRef((props, ref) => _jsx("div", { ref
|
|
|
62
77
|
const borderHorizontalInner = theme.components.table.border['horizontal-inner'] && !theme.components.table['striped-rows'];
|
|
63
78
|
const borderHorizontalOuter = theme.components.table.border['horizontal-outer'];
|
|
64
79
|
const showBorderOnLastStripedRow = theme.components.table.border['horizontal-inner'] && theme.components.table['striped-rows'];
|
|
80
|
+
const isMasterDetailEnabled = !!view.meta.masterDetail;
|
|
65
81
|
return css `
|
|
66
82
|
--forground-color: ${theme.base.palette['foreground-color']};
|
|
67
83
|
--interactive: ${theme.base.palette.interactive};
|
|
84
|
+
--light-blue: ${theme.base.colors.blue['extra-light']};
|
|
68
85
|
--medium-blue: ${theme.base.colors.blue.medium};
|
|
69
86
|
--border-color: ${theme.base.palette['border-line']};
|
|
70
87
|
--border-color-freeze: #a5a5a5;
|
|
@@ -202,8 +219,7 @@ const StyledTableContainer = styled(forwardRef((props, ref) => _jsx("div", { ref
|
|
|
202
219
|
}
|
|
203
220
|
|
|
204
221
|
> .header-lable-container {
|
|
205
|
-
|
|
206
|
-
min-width: 20px;
|
|
222
|
+
min-width: 1.25rem;
|
|
207
223
|
}
|
|
208
224
|
/* stylelint-disable selector-max-class */
|
|
209
225
|
&.cell-fixed > .cell-content {
|
|
@@ -479,10 +495,8 @@ const StyledTableContainer = styled(forwardRef((props, ref) => _jsx("div", { ref
|
|
|
479
495
|
align-items: center;
|
|
480
496
|
|
|
481
497
|
svg {
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
/* stylelint-disable-next-line unit-allowed-list */
|
|
485
|
-
height: 14px;
|
|
498
|
+
width: 0.875rem;
|
|
499
|
+
height: 0.875rem;
|
|
486
500
|
}
|
|
487
501
|
}
|
|
488
502
|
|
|
@@ -661,7 +675,7 @@ const StyledTableContainer = styled(forwardRef((props, ref) => _jsx("div", { ref
|
|
|
661
675
|
display: grid;
|
|
662
676
|
position: sticky;
|
|
663
677
|
top: 0;
|
|
664
|
-
z-index:
|
|
678
|
+
z-index: 9;
|
|
665
679
|
border-start-start-radius: inherit;
|
|
666
680
|
border-start-end-radius: inherit;
|
|
667
681
|
|
|
@@ -920,26 +934,62 @@ const StyledTableContainer = styled(forwardRef((props, ref) => _jsx("div", { ref
|
|
|
920
934
|
opacity: 1;
|
|
921
935
|
}
|
|
922
936
|
.row.selected-row {
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
> .cell,
|
|
926
|
-
.cell-fixed,
|
|
927
|
-
.cell-action {
|
|
928
|
-
background-color: ${selectedRowColor};
|
|
929
|
-
}
|
|
937
|
+
${rowBackground(highlightedRowColor)}
|
|
930
938
|
}
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
939
|
+
${isMasterDetailEnabled &&
|
|
940
|
+
css `
|
|
941
|
+
${dataRowSelector}:hover {
|
|
942
|
+
${rowBackground(highlightedRowColor)}
|
|
935
943
|
}
|
|
936
944
|
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
945
|
+
${dataRowSelector}.${MASTER_DETAIL_PREVIEW_HIGHLIGHT_CLASS} {
|
|
946
|
+
${rowBackground(highlightedRowColor)}
|
|
947
|
+
border-radius: 0.125rem;
|
|
948
|
+
&::before {
|
|
949
|
+
content: '';
|
|
950
|
+
position: absolute;
|
|
951
|
+
inset: 0;
|
|
952
|
+
box-shadow: inset 0 0 0 0.125rem ${previewHighlightBorderColor};
|
|
953
|
+
pointer-events: none;
|
|
954
|
+
z-index: 7;
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
.${MASTER_DETAIL_INDICATOR_CLASS} {
|
|
958
|
+
position: absolute;
|
|
959
|
+
inset-inline-end: 0;
|
|
960
|
+
inset-block-start: 50%;
|
|
961
|
+
inline-size: 0.5625rem;
|
|
962
|
+
block-size: 2.125rem;
|
|
963
|
+
transform: translateX(var(--detail-indicator-offset, 0)) translateY(-50%);
|
|
964
|
+
pointer-events: none;
|
|
965
|
+
z-index: 8;
|
|
966
|
+
|
|
967
|
+
&::before {
|
|
968
|
+
content: '';
|
|
969
|
+
position: absolute;
|
|
970
|
+
inset-inline-end: 0.1875rem;
|
|
971
|
+
inset-block-start: 50%;
|
|
972
|
+
inline-size: 0.375rem;
|
|
973
|
+
block-size: 0.5rem;
|
|
974
|
+
transform: translateY(-50%);
|
|
975
|
+
background: var(--interactive);
|
|
976
|
+
clip-path: polygon(0 50%, 100% 0, 100% 100%);
|
|
977
|
+
}
|
|
978
|
+
|
|
979
|
+
&::after {
|
|
980
|
+
content: '';
|
|
981
|
+
position: absolute;
|
|
982
|
+
inset-inline-end: 0;
|
|
983
|
+
inset-block-start: 50%;
|
|
984
|
+
inline-size: 0.1875rem;
|
|
985
|
+
block-size: 2.125rem;
|
|
986
|
+
transform: translateY(-50%);
|
|
987
|
+
border-radius: 0.0625rem;
|
|
988
|
+
background: var(--interactive);
|
|
989
|
+
}
|
|
990
|
+
}
|
|
941
991
|
}
|
|
942
|
-
}
|
|
992
|
+
`}
|
|
943
993
|
.row.hierarchical-group-footer-row {
|
|
944
994
|
.cell-fixed {
|
|
945
995
|
background: ${lightGreyColor};
|