@talxis/base-controls 1.2509.1-alpha.0 → 1.2509.1-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/DatasetControl/Pagination/Pagination.js +1 -1
- package/dist/components/DatasetControl/Pagination/Pagination.js.map +1 -1
- package/dist/components/DatasetControl/Pagination/PaginationModel.js +4 -1
- package/dist/components/DatasetControl/Pagination/PaginationModel.js.map +1 -1
- package/dist/components/DatasetControl/Pagination/styles.d.ts +6 -0
- package/dist/components/DatasetControl/Pagination/styles.js +6 -0
- package/dist/components/DatasetControl/Pagination/styles.js.map +1 -1
- package/dist/components/Grid/grid/ag-grid/AgGridModel.d.ts +1 -0
- package/dist/components/Grid/grid/ag-grid/AgGridModel.js +15 -4
- package/dist/components/Grid/grid/ag-grid/AgGridModel.js.map +1 -1
- package/dist/components/GridCellRenderer/styles.d.ts +2 -0
- package/dist/components/GridCellRenderer/styles.js +2 -0
- package/dist/components/GridCellRenderer/styles.js.map +1 -1
- package/dist/components/GridColumnHeader/GridColumnHeader.js +2 -1
- package/dist/components/GridColumnHeader/GridColumnHeader.js.map +1 -1
- package/dist/components/GridColumnHeader/styles.d.ts +3 -0
- package/dist/components/GridColumnHeader/styles.js +3 -0
- package/dist/components/GridColumnHeader/styles.js.map +1 -1
- package/dist/index.d.ts +11 -12
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.d.ts +12 -11
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js +25 -25
- package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js.map +1 -1
- package/dist/utils/theme/components/ThemeWrapper.d.ts +1 -1
- package/dist/utils/theme/components/ThemeWrapper.js.map +1 -1
- package/package.json +1 -1
|
@@ -40,8 +40,8 @@ const Pagination = (props) => {
|
|
|
40
40
|
...PAGE_SIZE_OPTIONS.map((size) => ({
|
|
41
41
|
key: size,
|
|
42
42
|
text: size,
|
|
43
|
+
className: styles.selectedPageSizeButton,
|
|
43
44
|
checked: parseInt(size) === paging.pageSize,
|
|
44
|
-
className: 'pageSizeOption',
|
|
45
45
|
onClick: () => dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => onSetPageSize(parseInt(size)))
|
|
46
46
|
}))
|
|
47
47
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.js","sources":["../../../../src/components/DatasetControl/Pagination/Pagination.tsx"],"sourcesContent":["import { CommandBarButton, ContextualMenuItemType, useTheme } from \"@fluentui/react\";\nimport { IFooterProps } from \"../interfaces\";\nimport { useModel } from \"../useModel\";\nimport { getPaginationStyles } from \"./styles\";\nimport { useMemo } from \"react\";\nimport { CommandBar } from \"@talxis/react-components\";\nimport { PaginationModel } from \"./PaginationModel\";\n\nconst PAGE_SIZE_OPTIONS = ['25', '50', '75', '100', '250'];\n\nexport const Pagination = (props: { onRenderPagination: IFooterProps['onRenderPagination'] }) => {\n const model = useModel();\n const paginationModel = useMemo(() => new PaginationModel(model), []);\n const dataset = model.getDataset();\n const labels = model.getLabels();\n const paging = dataset.paging;\n const theme = useTheme();\n const styles = useMemo(() => getPaginationStyles(theme), [theme]);\n\n const onSetPageSize = (pageSize: number) => {\n paging.setPageSize(pageSize);\n dataset.refresh();\n }\n\n\n return props.onRenderPagination({\n pageSizeSwitcherProps: {\n disabled: !model.isPageSizeSwitcherVisible() || dataset.loading,\n text: paginationModel.toString(),\n styles: {\n root: styles.pageSizeSwitcherRoot,\n },\n menuProps: {\n items: [\n {\n key: 'header',\n itemType: ContextualMenuItemType.Header,\n text: labels['page-record-count'](),\n },\n {\n key: 'divider',\n itemType: ContextualMenuItemType.Divider,\n },\n ...PAGE_SIZE_OPTIONS.map((size) => ({\n key: size,\n text: size,\n checked: parseInt(size) === paging.pageSize,\n
|
|
1
|
+
{"version":3,"file":"Pagination.js","sources":["../../../../src/components/DatasetControl/Pagination/Pagination.tsx"],"sourcesContent":["import { CommandBarButton, ContextualMenuItemType, IContextualMenuItem, useTheme } from \"@fluentui/react\";\nimport { IFooterProps } from \"../interfaces\";\nimport { useModel } from \"../useModel\";\nimport { getPaginationStyles } from \"./styles\";\nimport { useMemo } from \"react\";\nimport { CommandBar } from \"@talxis/react-components\";\nimport { PaginationModel } from \"./PaginationModel\";\n\nconst PAGE_SIZE_OPTIONS = ['25', '50', '75', '100', '250'];\n\nexport const Pagination = (props: { onRenderPagination: IFooterProps['onRenderPagination'] }) => {\n const model = useModel();\n const paginationModel = useMemo(() => new PaginationModel(model), []);\n const dataset = model.getDataset();\n const labels = model.getLabels();\n const paging = dataset.paging;\n const theme = useTheme();\n const styles = useMemo(() => getPaginationStyles(theme), [theme]);\n\n const onSetPageSize = (pageSize: number) => {\n paging.setPageSize(pageSize);\n dataset.refresh();\n }\n\n\n return props.onRenderPagination({\n pageSizeSwitcherProps: {\n disabled: !model.isPageSizeSwitcherVisible() || dataset.loading,\n text: paginationModel.toString(),\n styles: {\n root: styles.pageSizeSwitcherRoot,\n },\n menuProps: {\n items: [\n {\n key: 'header',\n itemType: ContextualMenuItemType.Header,\n text: labels['page-record-count'](),\n },\n {\n key: 'divider',\n itemType: ContextualMenuItemType.Divider,\n },\n ...PAGE_SIZE_OPTIONS.map((size) => ({\n key: size,\n text: size,\n className: styles.selectedPageSizeButton,\n checked: parseInt(size) === paging.pageSize,\n onClick: () => dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => onSetPageSize(parseInt(size)))\n } as IContextualMenuItem))\n\n ]\n }\n },\n paginationContainerProps: {\n className: styles.paginationRoot\n },\n commandBarProps: {\n className: styles.commandBarRoot,\n items: [],\n farItems: [{\n key: 'FirstPage',\n iconOnly: true,\n iconProps: { iconName: 'DoubleChevronLeft' },\n disabled: !paging.hasPreviousPage || dataset.loading,\n onClick: () => dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => paging.reset())\n }, {\n key: 'PreviousPage',\n iconOnly: true,\n iconProps: { iconName: 'Back' },\n disabled: !paging.hasPreviousPage || dataset.loading,\n onClick: () => dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => paging.loadExactPage(paging.pageNumber - 1))\n }, {\n key: 'CurrentPage',\n text: `${labels['paging-page']()} ${paging.pageNumber.toString()}`,\n className: styles.currentPageBtn,\n disabled: true,\n }, {\n key: 'NextPage',\n iconOnly: true,\n iconProps: { iconName: 'Forward' },\n disabled: !paging.hasNextPage || dataset.loading,\n onClick: () => dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => paging.loadExactPage(paging.pageNumber + 1))\n }]\n },\n onRenderCommandBar: (props, defaultRender) => defaultRender(props),\n onRenderPageSizeSwitcher: (props, defaultRender) => defaultRender(props),\n }, (props) => {\n return <div {...props.paginationContainerProps}>\n {(model.isPageSizeSwitcherVisible() || model.isRecordCountVisible()) &&\n <CommandBarButton {...props.pageSizeSwitcherProps} />\n }\n {model.isPaginationVisible() &&\n <CommandBar {...props.commandBarProps} />\n }\n </div>\n })\n}"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -9,7 +9,10 @@ class PaginationModel {
|
|
|
9
9
|
return `${this._model.getLabels()['paging-pages']({ start: this._getPageFirstRecordOrder(), end: this._getPageLastRecordOrder() })} ${this._model.getLabels()['paging-pages-totalcount']({ recordcount: this._getFormattedTotalResultCount() })}`;
|
|
10
10
|
}
|
|
11
11
|
_getPageFirstRecordOrder() {
|
|
12
|
-
|
|
12
|
+
if (this._model.getDataset().sortedRecordIds.length === 0) {
|
|
13
|
+
return 0;
|
|
14
|
+
}
|
|
15
|
+
return (this._paging.pageNumber - 1) * this._paging.pageSize + 1;
|
|
13
16
|
}
|
|
14
17
|
_getFormattedTotalResultCount() {
|
|
15
18
|
if (this._paging.totalResultCount === undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginationModel.js","sources":["../../../../src/components/DatasetControl/Pagination/PaginationModel.ts"],"sourcesContent":["import { DatasetControlModel } from \"../DatasetControlModel\";\n\nexport class PaginationModel {\n private _model: DatasetControlModel;\n constructor(model: DatasetControlModel) {\n this._model = model;\n }\n\n public toString(): string {\n if (this._paging.totalResultCount === undefined) {\n return this._model.getLabels()['paging-pages']({ start: this._getPageFirstRecordOrder(), end: this._getPageLastRecordOrder() })\n }\n return `${this._model.getLabels()['paging-pages']({ start: this._getPageFirstRecordOrder(), end: this._getPageLastRecordOrder()})} ${this._model.getLabels()['paging-pages-totalcount']({ recordcount: this._getFormattedTotalResultCount() })}`\n }\n\n private _getPageFirstRecordOrder() {\n return (this._paging.pageNumber - 1) * this._paging.pageSize +
|
|
1
|
+
{"version":3,"file":"PaginationModel.js","sources":["../../../../src/components/DatasetControl/Pagination/PaginationModel.ts"],"sourcesContent":["import { DatasetControlModel } from \"../DatasetControlModel\";\n\nexport class PaginationModel {\n private _model: DatasetControlModel;\n constructor(model: DatasetControlModel) {\n this._model = model;\n }\n\n public toString(): string {\n if (this._paging.totalResultCount === undefined) {\n return this._model.getLabels()['paging-pages']({ start: this._getPageFirstRecordOrder(), end: this._getPageLastRecordOrder() })\n }\n return `${this._model.getLabels()['paging-pages']({ start: this._getPageFirstRecordOrder(), end: this._getPageLastRecordOrder()})} ${this._model.getLabels()['paging-pages-totalcount']({ recordcount: this._getFormattedTotalResultCount() })}`\n }\n\n private _getPageFirstRecordOrder() {\n if(this._model.getDataset().sortedRecordIds.length === 0) {\n return 0;\n }\n return (this._paging.pageNumber - 1) * this._paging.pageSize + 1;\n }\n\n private _getFormattedTotalResultCount(): string {\n if (this._paging.totalResultCount === undefined) {\n return '';\n }\n if (this._paging.totalResultCount === -1) {\n return '5000+';\n }\n return this._paging.totalResultCount.toString();\n }\n private _getPageLastRecordOrder(): string {\n const count = this._paging.pageNumber * this._paging.pageSize;\n if (this._paging.totalResultCount === undefined) {\n if (this._paging.hasNextPage) {\n return `${count}+`;\n }\n return `${count - this._paging.pageSize + this._model.getDataset().sortedRecordIds.length}`\n\n }\n if (count > this._paging.totalResultCount && this._paging.totalResultCount !== -1) {\n return this._paging.totalResultCount.toString();\n }\n return count.toString();\n }\n\n private get _paging() {\n return this._model.getDataset().paging;\n }\n\n}"],"names":[],"mappings":"MAEa,eAAe,CAAA;AAExB,IAAA,WAAA,CAAY,KAA0B,EAAA;AAClC,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACvB;IAEM,QAAQ,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE;YAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAA;AAClI,SAAA;QACD,OAAO,CAAA,EAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,uBAAuB,EAAE,EAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,yBAAyB,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAA,CAAE,CAAA;KACnP;IAEO,wBAAwB,GAAA;AAC5B,QAAA,IAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;AACtD,YAAA,OAAO,CAAC,CAAC;AACZ,SAAA;AACD,QAAA,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;KACpE;IAEO,6BAA6B,GAAA;AACjC,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE;AAC7C,YAAA,OAAO,EAAE,CAAC;AACb,SAAA;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,KAAK,CAAC,CAAC,EAAE;AACtC,YAAA,OAAO,OAAO,CAAC;AAClB,SAAA;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;KACnD;IACO,uBAAuB,GAAA;AAC3B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;AAC9D,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE;AAC7C,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;gBAC1B,OAAO,CAAA,EAAG,KAAK,CAAA,CAAA,CAAG,CAAC;AACtB,aAAA;YACD,OAAO,CAAA,EAAG,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,CAAA;AAE9F,SAAA;AACD,QAAA,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,KAAK,CAAC,CAAC,EAAE;YAC/E,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;AACnD,SAAA;AACD,QAAA,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;KAC3B;AAED,IAAA,IAAY,OAAO,GAAA;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC;KAC1C;AAEJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sources":["../../../../src/components/DatasetControl/Pagination/styles.ts"],"sourcesContent":["import { ITheme, mergeStyleSets } from \"@fluentui/react\"\n\nexport const getPaginationStyles = (theme: ITheme) => {\n return mergeStyleSets({\n paginationRoot: {\n display: 'flex'\n },\n commandBarRoot: {\n flexGrow: 1\n },\n currentPageBtn: {\n '.ms-Button-label': {\n color: theme.semanticColors.bodyText\n }\n },\n pageSizeSwitcherRoot: {\n height: 44\n }\n })\n}"],"names":[],"mappings":";;AAEa,MAAA,mBAAmB,GAAG,CAAC,KAAa,KAAI;AACjD,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,cAAc,EAAE;AACZ,YAAA,OAAO,EAAE,MAAM;AAClB,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,QAAQ,EAAE,CAAC;AACd,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,kBAAkB,EAAE;AAChB,gBAAA,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ;AACvC,aAAA;AACJ,SAAA;AACD,QAAA,oBAAoB,EAAE;AAClB,YAAA,MAAM,EAAE,EAAE;AACb,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../../src/components/DatasetControl/Pagination/styles.ts"],"sourcesContent":["import { ITheme, mergeStyleSets } from \"@fluentui/react\"\n\nexport const getPaginationStyles = (theme: ITheme) => {\n return mergeStyleSets({\n paginationRoot: {\n display: 'flex'\n },\n commandBarRoot: {\n flexGrow: 1\n },\n currentPageBtn: {\n '.ms-Button-label': {\n color: theme.semanticColors.bodyText\n }\n },\n pageSizeSwitcherRoot: {\n height: 44\n },\n selectedPageSizeButton: {\n '.is-checked': {\n backgroundColor: theme.semanticColors.buttonBackgroundHovered,\n fontWeight: 600\n }\n }\n })\n}"],"names":[],"mappings":";;AAEa,MAAA,mBAAmB,GAAG,CAAC,KAAa,KAAI;AACjD,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,cAAc,EAAE;AACZ,YAAA,OAAO,EAAE,MAAM;AAClB,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,QAAQ,EAAE,CAAC;AACd,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,kBAAkB,EAAE;AAChB,gBAAA,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ;AACvC,aAAA;AACJ,SAAA;AACD,QAAA,oBAAoB,EAAE;AAClB,YAAA,MAAM,EAAE,EAAE;AACb,SAAA;AACD,QAAA,sBAAsB,EAAE;AACpB,YAAA,aAAa,EAAE;AACX,gBAAA,eAAe,EAAE,KAAK,CAAC,cAAc,CAAC,uBAAuB;AAC7D,gBAAA,UAAU,EAAE,GAAG;AAClB,aAAA;AACJ,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
|
|
@@ -76,6 +76,7 @@ export declare class AgGridModel extends EventEmitter<IAgGridModelEvents> {
|
|
|
76
76
|
private _updateColumnVisualSizeFactor;
|
|
77
77
|
private _onSelectionChanged;
|
|
78
78
|
private _setSelectedNodes;
|
|
79
|
+
private _areChildProvidersLoading;
|
|
79
80
|
private _valueFormatter;
|
|
80
81
|
private _valueGetter;
|
|
81
82
|
private _setPinnedRowData;
|
|
@@ -357,7 +357,6 @@ class AgGridModel extends EventEmitter {
|
|
|
357
357
|
this.refresh();
|
|
358
358
|
this._setNoRowsOverlay();
|
|
359
359
|
this._scrollToTop();
|
|
360
|
-
this.getGridApi().ensureColumnVisible(this._grid.getGridColumns().filter(x => !x.isHidden)[0]?.name ?? '');
|
|
361
360
|
}
|
|
362
361
|
_refreshServerSideModel() {
|
|
363
362
|
this._expandedRowGroupIds = this.getGridApi().getState().rowGroupExpansion?.expandedRowGroupIds ?? [];
|
|
@@ -451,14 +450,22 @@ class AgGridModel extends EventEmitter {
|
|
|
451
450
|
});
|
|
452
451
|
}
|
|
453
452
|
async _setSelectedNodes(ids) {
|
|
454
|
-
|
|
455
|
-
|
|
453
|
+
//interval to prevent infinite loading
|
|
454
|
+
const checkLoadingNestedProviders = setInterval(() => {
|
|
455
|
+
if (this._isLoadingNestedProviders && !this._areChildProvidersLoading()) {
|
|
456
|
+
this._isLoadingNestedProviders = false;
|
|
457
|
+
this._dataset.getDataProvider().setLoading(false);
|
|
458
|
+
clearInterval(checkLoadingNestedProviders);
|
|
459
|
+
}
|
|
460
|
+
}, 500);
|
|
461
|
+
if (!this._isLoadingNestedProviders && this._areChildProvidersLoading()) {
|
|
456
462
|
this._isLoadingNestedProviders = true;
|
|
457
463
|
this._dataset.getDataProvider().setLoading(true);
|
|
458
464
|
}
|
|
459
|
-
else if (this._isLoadingNestedProviders &&
|
|
465
|
+
else if (this._isLoadingNestedProviders && !this._areChildProvidersLoading()) {
|
|
460
466
|
this._isLoadingNestedProviders = false;
|
|
461
467
|
this._dataset.getDataProvider().setLoading(false);
|
|
468
|
+
clearInterval(checkLoadingNestedProviders);
|
|
462
469
|
}
|
|
463
470
|
this.getGridApi().setServerSideSelectionState({
|
|
464
471
|
selectAll: false,
|
|
@@ -469,6 +476,10 @@ class AgGridModel extends EventEmitter {
|
|
|
469
476
|
force: true
|
|
470
477
|
});
|
|
471
478
|
}
|
|
479
|
+
_areChildProvidersLoading() {
|
|
480
|
+
const childProviders = this._dataset.getDataProvider().getChildDataProviders(true).filter(x => x.getParentRecordId());
|
|
481
|
+
return childProviders.some(provider => provider.isLoading());
|
|
482
|
+
}
|
|
472
483
|
_valueFormatter(p) {
|
|
473
484
|
const formattedValue = this._grid.getRecordFormattedValue(p.data, p.colDef.colId);
|
|
474
485
|
return formattedValue.value ?? formattedValue.aggregatedValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgGridModel.js","sources":["../../../../../src/components/Grid/grid/ag-grid/AgGridModel.ts"],"sourcesContent":["import { CellClickedEvent, CellDoubleClickedEvent, ColDef, ColumnMovedEvent, ColumnResizedEvent, GridApi, IRowNode, IsFullWidthRowParams, IsServerSideGroupOpenByDefaultParams, ModuleRegistry, SelectionChangedEvent, SuppressKeyboardEventParams, ValueFormatterParams, ValueGetterParams } from \"@ag-grid-community/core\";\nimport debounce from 'debounce';\nimport { GridModel, IGridColumn } from \"../GridModel\";\nimport { DataProvider, EventEmitter, IAddControlNotificationOptions, IColumn, IColumnInfo, IControlParameters, ICustomColumnComponent, ICustomColumnControl, ICustomColumnFormatting, IDataProvider, IRecord, Operators } from \"@talxis/client-libraries\";\nimport { NestedControl } from \"../../../NestedControlRenderer/NestedControl\";\nimport { Cell } from \"../../cells/cell/Cell\";\nimport { ColumnHeader } from \"../../column-headers/column-header/ColumnHeader\";\nimport { CHECKBOX_COLUMN_KEY } from \"../../constants\";\nimport { Comparator } from \"../ValueComparator\";\nimport { ServerSideDatasource } from \"./ServerSideDatasource\";\nimport { RecordSelectionCheckBox } from \"../../column-headers/record-selection-checkbox/RecordSelectionCheckbox\";\nimport { RowGroupingModule } from \"@ag-grid-enterprise/row-grouping\";\nimport { ServerSideRowModelModule } from \"@ag-grid-enterprise/server-side-row-model\";\nimport { ClipboardModule } from \"@ag-grid-enterprise/clipboard\";\nimport { FullRowLoading } from \"../../loading/full-row/FullRowLoading\";\nimport { FullWidthCellRendererError } from \"../../errors/FullWidthCellRendererError/FullWidthCellRendererError\";\nimport { LicenseManager } from \"@ag-grid-enterprise/core\";\nModuleRegistry.registerModules([RowGroupingModule, ServerSideRowModelModule, ClipboardModule,]);\n\ninterface IAgGridTestDependencies {\n grid: GridModel;\n getContainer: () => HTMLDivElement;\n}\n\nexport interface IAgGridModelEvents {\n onRefresh: () => void;\n}\n\n\nexport interface ICellValues {\n notifications: IAddControlNotificationOptions[];\n customFormatting: Required<ICustomColumnFormatting>;\n customControl: Required<ICustomColumnControl>;\n customComponent: ICustomColumnComponent;\n loading: boolean;\n value: any;\n aggregatedValue: any;\n error: boolean;\n height: number;\n errorMessage: string;\n parameters: IControlParameters;\n columnAlignment: Required<IColumn['alignment']>;\n editing: boolean;\n editable: boolean;\n disabled: boolean;\n saving: boolean;\n}\n\nexport class AgGridModel extends EventEmitter<IAgGridModelEvents> {\n private _grid: GridModel;\n private _dataSource: ServerSideDatasource;\n private _gridApi: GridApi | undefined;\n private _hasUserResizedColumns: boolean = false;\n private _getContainer: () => HTMLDivElement;\n private _debouncedColumnResized: debounce.DebouncedFunction<(e: ColumnResizedEvent<IRecord>) => void>;\n private _debouncedRefresh: debounce.DebouncedFunction<() => void>;\n private _debouncedSetSelectedNodes: debounce.DebouncedFunction<(ids: string[]) => void>;\n private _expandedRowGroupIds: string[] = [];\n private _hasUserExpandedRowGroups: boolean = false;\n private _isLoadingNestedProviders: boolean = false;\n\n constructor({ grid, getContainer }: IAgGridTestDependencies) {\n super();\n this._grid = grid;\n this._getContainer = getContainer;\n this._dataSource = new ServerSideDatasource(this);\n this._debouncedColumnResized = debounce((e: ColumnResizedEvent<IRecord>) => this._onColumnResized(e));\n this._debouncedSetSelectedNodes = debounce((ids) => this._setSelectedNodes(ids), 0);\n this._debouncedRefresh = debounce(() => this._refresh(), 0);\n this._dataset.addEventListener('onInitialDataLoaded', () => {\n const totalRowDataProvider = this._grid.getTotalRow().getDataProvider();\n totalRowDataProvider.addEventListener('onLoading', () => this._setPinnedRowData());\n totalRowDataProvider.addEventListener('onError', () => this._setPinnedRowData());\n })\n const licenseKey = this._grid.getLicenseKey();\n if(licenseKey) {\n LicenseManager.setLicenseKey(licenseKey);\n }\n }\n\n public getColumns(gridColumns: IGridColumn[]): ColDef[] {\n if (this._grid.getDataset().grouping.getGroupBys().length > 0 && !this._grid.isGroupedColumnsPinnedEnabled()) {\n this._sortColumns(gridColumns);\n }\n const agColumns = gridColumns.map(column => {\n const isCheckboxColumn = column.name === CHECKBOX_COLUMN_KEY;\n const agColumn: ColDef = {\n colId: column.name,\n field: column.name,\n headerName: column.displayName,\n hide: this._isColumnHidden(column),\n width: this._getColumnWidth(column),\n sortable: !column.disableSorting,\n lockPinned: true,\n resizable: column.isResizable,\n autoHeaderHeight: true,\n autoHeight: this._isColumnAutoHeightEnabled(column),\n suppressMovable: column.isDraggable === false ? true : false,\n suppressSizeToFit: isCheckboxColumn,\n lockPosition: this._getLockPosition(column),\n pinned: this._isColumnPinned(column),\n headerComponentParams: {\n baseColumn: column\n },\n rowGroup: column.grouping?.isGrouped,\n cellRendererParams: (p: any) => {\n return {\n ...this._getCellParameters(p.data, column),\n isCellEditor: false\n }\n },\n cellEditorParams: (p: any) => {\n return {\n ...this._getCellParameters(p.data, column),\n isCellEditor: true\n }\n },\n editable: (p) => this._isCellEditorEnabled(column.name, p.data),\n equals: (valueA: ICellValues, valueB: ICellValues) => new Comparator().isEqual(valueA, valueB),\n headerComponent: ColumnHeader,\n cellRenderer: Cell,\n cellEditor: Cell,\n valueGetter: (p: ValueGetterParams<IRecord>) => this._valueGetter(p, column),\n valueFormatter: (p: ValueFormatterParams<IRecord>) => this._valueFormatter(p),\n suppressKeyboardEvent: (p) => this._suppressKeyboardEvent(p, column),\n onCellDoubleClicked: (e: CellDoubleClickedEvent<IRecord>) => this._onCellDoubleClick(e),\n onCellClicked: (e: CellClickedEvent<IRecord>) => this._onCellClick(e),\n }\n if (agColumn.field === CHECKBOX_COLUMN_KEY) {\n agColumn.headerComponent = RecordSelectionCheckBox;\n }\n return agColumn;\n })\n return agColumns;\n }\n\n public getGridApi() {\n if (!this._gridApi) {\n throw new Error(\"Grid API is not available\");\n }\n return this._gridApi;\n }\n\n public init(gridApi: GridApi) {\n this._gridApi = gridApi;\n if (this._grid.getDataset().loading) {\n this._setLoadingOverlay(true);\n }\n this._registerEventListeners();\n this._setGridOptions();\n }\n\n public getGrid(): GridModel {\n return this._grid;\n }\n\n public getSelectionType(): 'single' | 'multiple' | undefined {\n switch (this._grid.getSelectionType()) {\n case 'none': {\n return undefined;\n }\n case 'single': {\n return 'single';\n }\n case 'multiple': {\n return 'multiple';\n }\n }\n }\n public refresh() {\n this._debouncedRefresh();\n }\n\n public toggleGroup(node: IRowNode<IRecord>) {\n node.setExpanded(!node.expanded);\n //clears the expanded rows in memory so it does not interfere with the next group expansion\n this._expandedRowGroupIds = [];\n this._hasUserExpandedRowGroups = true;\n }\n\n public getRecordSelectionState(node: IRowNode<IRecord>): 'checked' | 'unchecked' | 'indeterminate' {\n const record = node.data!;\n const dataProvider = record.getDataProvider();\n const childDataProvider = dataProvider.getChildDataProvider(record.getRecordId());\n if (childDataProvider) {\n if (node.isSelected()) {\n return 'checked';\n }\n else {\n if (childDataProvider.getSelectedRecordIds().length === 0) {\n return 'unchecked';\n }\n else {\n return 'indeterminate';\n }\n }\n }\n else {\n return node.isSelected() ? 'checked' : 'unchecked';\n }\n }\n\n public onNotifyOutputChanged(record: IRecord, columnName: string, value: any, parameters: any) {\n record.setValue(columnName, value);\n const { ShouldStopEditWhenOutputChanges } = parameters;\n if (ShouldStopEditWhenOutputChanges?.raw) {\n this.getGridApi().stopEditing();\n }\n }\n\n private _sortColumns(columns: IGridColumn[]): IGridColumn[] {\n return columns.sort((a, b) => {\n // If both columns have the same grouping status, maintain original order (return 0)\n if ((a.grouping?.isGrouped || false) === (b.grouping?.isGrouped || false)) {\n return 0;\n }\n // If a is grouped, it should come first\n if (a.grouping?.isGrouped) {\n return -1;\n }\n // If b is grouped, it should come first\n if (b.grouping?.isGrouped) {\n return 1;\n }\n // Default case, should never reach here given the first condition\n return 0;\n });\n }\n\n private _refresh() {\n if (this._grid.getDataset().loading) {\n return;\n }\n const { haveColumnsOrderBeenUpdated, columns } = this._grid.refreshGridColumns();\n if (haveColumnsOrderBeenUpdated) {\n this.getGridApi().setGridOption('columnDefs', this.getColumns(columns));\n this._autoSizeColumns();\n }\n else {\n this.getGridApi().refreshCells();\n }\n this.dispatchEvent('onRefresh');\n }\n\n private _isColumnAutoHeightEnabled(column: IGridColumn): boolean {\n return !!column.autoHeight\n }\n\n private _onCellClick(e: CellClickedEvent<IRecord>) {\n //@ts-ignore\n e.data?.dispatchEvent('onFieldClicked', e.colDef.colId!);\n }\n\n private _onCellDoubleClick(e: CellDoubleClickedEvent<IRecord>) {\n const column = this._dataset.getDataProvider().getColumnsMap()[e.colDef.colId!]!\n switch (true) {\n //do not navigate if the column is not editable or if the grid is not in navigation mode\n case !this._grid.isNavigationEnabled():\n case this._grid.isColumnEditable(column.name, e.data):\n case column.name === DataProvider.CONST.CHECKBOX_COLUMN_KEY: {\n return;\n }\n default: {\n const record = e.data!;\n record.getDataProvider().openDatasetItem(record.getNamedReference());\n }\n }\n }\n\n private _isColumnPinned(column: IGridColumn): boolean {\n switch (true) {\n case column.name === DataProvider.CONST.CHECKBOX_COLUMN_KEY:\n case column.grouping?.isGrouped && this._grid.isGroupedColumnsPinnedEnabled(): {\n return true;\n }\n default: {\n return false;\n }\n }\n }\n\n private _getCellParameters(record: IRecord, column: IGridColumn) {\n return {\n baseColumn: column,\n record: record\n }\n }\n\n private _isColumnHidden(column: IGridColumn): boolean {\n if (column.name === DataProvider.CONST.CHECKBOX_COLUMN_KEY) {\n switch (true) {\n case this._grid.getSelectionType() !== 'none': {\n return false;\n }\n case this._grid.isAutoSaveEnabled(): {\n return false;\n }\n default: {\n return true;\n }\n }\n }\n return !!column.isHidden;\n }\n\n private _getColumnWidth(column: IGridColumn): number | undefined {\n if (column.name === CHECKBOX_COLUMN_KEY) {\n return 45; // Default width for checkbox column\n }\n return column.visualSizeFactor;\n }\n\n private _scrollToTop() {\n this.getGridApi().ensureIndexVisible(0, 'top');\n }\n\n private _getLockPosition(column: IGridColumn) {\n if (column.name === CHECKBOX_COLUMN_KEY) {\n return 'left';\n }\n return undefined;\n }\n\n private _canExpandRowGroupsByDefault(): boolean {\n if (this._hasUserExpandedRowGroups) {\n return false;\n }\n else {\n return true;\n }\n }\n\n private _suppressKeyboardEvent(params: SuppressKeyboardEventParams<IRecord, any>, column: IGridColumn): boolean {\n if (column.oneClickEdit) {\n return true;\n }\n return false;\n }\n\n private _registerEventListeners() {\n this._dataset.addEventListener('onLoading', (isLoading: boolean) => this._setLoadingOverlay(isLoading));\n this._dataset.addEventListener('onRecordsSelected', (ids: string[]) => this._debouncedSetSelectedNodes(ids));\n this._dataset.addEventListener('onNewDataLoaded', () => this._onNewDataLoaded());\n this._dataset.addEventListener('onRenderRequested', () => this.refresh());\n this.getGridApi().addEventListener('gridSizeChanged', () => this._autoSizeColumns());\n this.getGridApi().addEventListener('firstDataRendered', () => this._autoSizeColumns());\n this.getGridApi().addEventListener('selectionChanged', (e: SelectionChangedEvent) => this._onSelectionChanged(e));\n this.getGridApi().addEventListener('columnResized', (e: any) => this._debouncedColumnResized(e));\n this.getGridApi().addEventListener('modelUpdated', () => this._setGridHeight());\n this.getGridApi().addEventListener('columnMoved', (e: ColumnMovedEvent<IRecord>) => this._onColumnMoved(e));\n }\n\n private _setGridOptions() {\n this.getGridApi().setGridOption('serverSideDatasource', this._dataSource);\n this.getGridApi().setGridOption('isServerSideGroupOpenByDefault', (params) => this._syncExpandedRowGroups(params));\n this.getGridApi().setGridOption('loadingCellRenderer', FullRowLoading)\n this.getGridApi().setGridOption('suppressDragLeaveHidesColumns', true);\n this.getGridApi().setGridOption('isFullWidthRow', (params) => this._isFullWidthRow(params));\n this.getGridApi().setGridOption('fullWidthCellRenderer', FullWidthCellRendererError);\n this.getGridApi().setGridOption('fullWidthCellRendererParams', (params: IsFullWidthRowParams<IRecord>) => this._getFullWidthCellRendererParams(params))\n this.getGridApi().setGridOption('suppressCopyRowsToClipboard', true);\n this.getGridApi().setGridOption('animateRows', false);\n this.getGridApi().setGridOption('groupDisplayType', 'custom');\n }\n\n private _isFullWidthRow(params: IsFullWidthRowParams<IRecord>): boolean {\n const provider = params.rowNode.data?.getDataProvider();\n switch (true) {\n case provider?.getSummarizationType() === 'aggregation' && provider.isError(): {\n return true;\n }\n default: {\n return false;\n }\n }\n }\n\n private _getFullWidthCellRendererParams(params: IsFullWidthRowParams<IRecord>) {\n //@ts-ignore - typings seem to be incorrect\n const provider = params.node.data?.getDataProvider()\n return {\n errorMessage: provider?.getErrorMessage()\n }\n }\n\n private _syncExpandedRowGroups(params: IsServerSideGroupOpenByDefaultParams): boolean {\n if (this._expandedRowGroupIds.includes(params.rowNode.id!)) {\n return true\n }\n else if (this._canExpandRowGroupsByDefault()) {\n if (params.rowNode.level <= this._grid.getDefaultExpandedGroupLevel()) {\n return true;\n }\n else {\n return false;\n }\n }\n else {\n return false;\n }\n }\n\n private _onColumnMoved(e: ColumnMovedEvent<IRecord>) {\n const movedColumn = this._grid.getDataset().getDataProvider().getColumnsMap()[e.column?.getColId()!];\n if (!e.finished || e.source !== 'uiColumnMoved') {\n return;\n }\n let order = 0;\n this._dataset.setColumns(e.api.getState().columnOrder?.orderedColIds!.map(col => {\n const column = this._grid.getDataset().getDataProvider().getColumnsMap()[col]!;\n return {\n ...column,\n order: order++\n }\n }))\n if (movedColumn?.grouping?.isGrouped) {\n this._dataset.refresh();\n }\n }\n\n private _onNewDataLoaded() {\n this._refreshServerSideModel();\n this.refresh();\n this._setNoRowsOverlay();\n this._scrollToTop();\n this.getGridApi().ensureColumnVisible(this._grid.getGridColumns().filter(x => !x.isHidden)[0]?.name ?? '');\n }\n\n private _refreshServerSideModel() {\n this._expandedRowGroupIds = this.getGridApi().getState().rowGroupExpansion?.expandedRowGroupIds ?? [];\n this.getGridApi().refreshServerSide({\n purge: true\n })\n }\n\n private _calculateGridHeight(): string {\n const defaultRowHeight = this._grid.getDefaultRowHeight();\n let offset = 20;\n if (this._dataset.grouping.getGroupBys().length > 0) {\n offset += 30;\n }\n if (this._grid.getParameters().Height?.raw) {\n return this._grid.getParameters().Height!.raw!;\n }\n else {\n const totalRowHeight = this.getGridApi().getRenderedNodes().reduce((acc, node) => acc + (node.rowHeight ?? defaultRowHeight), 0);\n const numberOfRecords = this.getGridApi().getRenderedNodes().length;\n if (numberOfRecords <= 15) {\n const headerHeight = this._getContainer().querySelector('.ag-header-row')?.clientHeight ?? 0;\n return `${totalRowHeight + headerHeight + offset}px`;\n }\n else {\n return `${defaultRowHeight * 17 + offset}px`;\n }\n }\n }\n private _setGridHeight() {\n setTimeout(() => {\n this._getContainer().style.height = this._calculateGridHeight();\n }, 100);\n }\n\n private _onColumnResized(e: ColumnResizedEvent<IRecord>) {\n if (e.source === 'uiColumnResized') {\n this._hasUserResizedColumns = true;\n this._updateColumnVisualSizeFactor(e);\n }\n }\n\n private _autoSizeColumns() {\n if (this._hasUserResizedColumns) {\n return;\n }\n this.getGridApi().sizeColumnsToFit({\n columnLimits: this._grid.getGridColumns().map(col => {\n return {\n key: col.name,\n minWidth: col.visualSizeFactor\n }\n })\n });\n }\n\n private _updateColumnVisualSizeFactor(e: ColumnResizedEvent<IRecord>) {\n const resizedColumnKey = e.column?.getColId();\n if (!resizedColumnKey) {\n return;\n }\n const columns = this._grid.getGridColumns();\n const newColumns = columns.map(col => {\n if (col.name === resizedColumnKey) {\n return {\n ...col,\n visualSizeFactor: e.column?.getActualWidth()!\n }\n }\n return col;\n })\n this._grid.getDataset().setColumns(newColumns);\n }\n\n private _onSelectionChanged(e: SelectionChangedEvent<IRecord>) {\n switch (true) {\n case e.source === 'api':\n case e.source === 'apiSelectAll': {\n return;\n }\n }\n this._dataset.clearSelectedRecordIds();\n const selectedNodes: IRowNode<IRecord>[] = this.getGridApi().getSelectedNodes();\n //if we click a grouped record, do not propagate the selection to children\n const providerSelectedRecordIdsMap = new Map<IDataProvider, string[]>();\n selectedNodes.map(node => {\n const record = node.data!;\n const provider = record.getDataProvider();\n if (!providerSelectedRecordIdsMap.has(provider)) {\n providerSelectedRecordIdsMap.set(provider, []);\n }\n providerSelectedRecordIdsMap.get(provider)!.push(record.getRecordId());\n })\n providerSelectedRecordIdsMap.forEach((ids, provider) => {\n provider.setSelectedRecordIds(ids);\n });\n }\n\n private async _setSelectedNodes(ids: string[]) {\n const childProviders = this._dataset.getDataProvider().getChildDataProviders(true).filter(x => x.getParentRecordId());\n if (!this._isLoadingNestedProviders && childProviders.some(provider => provider.isLoading())) {\n this._isLoadingNestedProviders = true;\n this._dataset.getDataProvider().setLoading(true);\n }\n else if (this._isLoadingNestedProviders && childProviders.every(provider => !provider.isLoading())) {\n this._isLoadingNestedProviders = false;\n this._dataset.getDataProvider().setLoading(false);\n }\n this.getGridApi().setServerSideSelectionState({\n selectAll: false,\n toggledNodes: this._grid.getDataset().getDataProvider().getSelectedRecordIds({ includeGroupRecordIds: true })\n })\n this.getGridApi().refreshCells({\n columns: [CHECKBOX_COLUMN_KEY],\n force: true\n })\n }\n\n private _valueFormatter(p: ValueFormatterParams<IRecord>): string {\n const formattedValue = this._grid.getRecordFormattedValue(p.data!, p.colDef.colId!);\n return formattedValue.value ?? formattedValue.aggregatedValue;\n }\n\n private _valueGetter(p: ValueGetterParams<IRecord>, column: IGridColumn) {\n const record = p.data!;\n let editing: boolean = false;\n const columnInfo = record.getColumnInfo(column.name) as IColumnInfo;\n //i hate this, there is no other way to get the information if we are in edit mode or not\n if (Error().stack!.includes('startEditing')) {\n editing = true;\n }\n const customControl = this._grid.getControl(column, record, editing || !!column.oneClickEdit);\n\n const control = new NestedControl({\n onGetBindings: () => this._grid.getBindings(record, column, customControl),\n parentPcfContext: this._grid.getPcfContext(),\n });\n const parameters = columnInfo.ui.getControlParameters({\n ...control.getParameters(),\n ...this._grid.getFieldBindingParameters(record, column, editing),\n })\n if (column.oneClickEdit && record.getSummarizationType() === 'none') {\n editing = true;\n }\n const value = this._grid.getRecordValue(record, column);\n return {\n notifications: columnInfo.ui.getNotifications(),\n value: value.value,\n customFormatting: this._grid.getFieldFormatting(record, column.name),\n customControl: customControl,\n error: columnInfo.error,\n aggregatedValue: value.aggregatedValue,\n loading: columnInfo.ui.isLoading(),\n errorMessage: columnInfo.errorMessage,\n editable: columnInfo.security.editable,\n editing: editing,\n parameters: parameters,\n saving: record.isSaving(),\n columnAlignment: column.alignment,\n customComponent: columnInfo.ui.getCustomControlComponent()\n } as ICellValues;\n }\n\n private _setPinnedRowData() {\n const totalRecord = this._grid.getTotalRow().getTotalRowRecord();\n this.getGridApi().setGridOption('pinnedBottomRowData', totalRecord ? [totalRecord] : []);\n }\n\n private _setLoadingOverlay(isLoading: boolean) {\n if (!isLoading) {\n return this.getGridApi().hideOverlay();\n }\n this.getGridApi().showLoadingOverlay();\n }\n\n private _setNoRowsOverlay() {\n setTimeout(() => {\n if (this._grid.getDataset().loading) {\n return;\n }\n this.getGridApi().hideOverlay();\n if (this._grid.getDataset().getDataProvider().getRecords().length === 0) {\n this.getGridApi().showNoRowsOverlay();\n }\n }, 0);\n }\n\n private _isCellEditorEnabled(columnName: string, record: IRecord): boolean {\n const column = this._grid.getGridColumnByName(columnName);\n // check column eligibility for cell editor\n switch (true) {\n //never allow cell editor for oneClickEdit - everything is handled by cell renderer in this case\n case column.oneClickEdit:\n //never allow cell editor for non-editable columns\n case !column.isEditable: {\n return false;\n }\n }\n return record.getColumnInfo(column.name).security.editable;\n }\n\n private get _dataset() {\n return this._grid.getDataset();\n }\n}"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgGridModel.js","sources":["../../../../../src/components/Grid/grid/ag-grid/AgGridModel.ts"],"sourcesContent":["import { CellClickedEvent, CellDoubleClickedEvent, ColDef, ColumnMovedEvent, ColumnResizedEvent, GridApi, IRowNode, IsFullWidthRowParams, IsServerSideGroupOpenByDefaultParams, ModuleRegistry, SelectionChangedEvent, SuppressKeyboardEventParams, ValueFormatterParams, ValueGetterParams } from \"@ag-grid-community/core\";\nimport debounce from 'debounce';\nimport { GridModel, IGridColumn } from \"../GridModel\";\nimport { DataProvider, EventEmitter, IAddControlNotificationOptions, IColumn, IColumnInfo, IControlParameters, ICustomColumnComponent, ICustomColumnControl, ICustomColumnFormatting, IDataProvider, IRecord, Operators } from \"@talxis/client-libraries\";\nimport { NestedControl } from \"../../../NestedControlRenderer/NestedControl\";\nimport { Cell } from \"../../cells/cell/Cell\";\nimport { ColumnHeader } from \"../../column-headers/column-header/ColumnHeader\";\nimport { CHECKBOX_COLUMN_KEY } from \"../../constants\";\nimport { Comparator } from \"../ValueComparator\";\nimport { ServerSideDatasource } from \"./ServerSideDatasource\";\nimport { RecordSelectionCheckBox } from \"../../column-headers/record-selection-checkbox/RecordSelectionCheckbox\";\nimport { RowGroupingModule } from \"@ag-grid-enterprise/row-grouping\";\nimport { ServerSideRowModelModule } from \"@ag-grid-enterprise/server-side-row-model\";\nimport { ClipboardModule } from \"@ag-grid-enterprise/clipboard\";\nimport { FullRowLoading } from \"../../loading/full-row/FullRowLoading\";\nimport { FullWidthCellRendererError } from \"../../errors/FullWidthCellRendererError/FullWidthCellRendererError\";\nimport { LicenseManager } from \"@ag-grid-enterprise/core\";\nModuleRegistry.registerModules([RowGroupingModule, ServerSideRowModelModule, ClipboardModule,]);\n\ninterface IAgGridTestDependencies {\n grid: GridModel;\n getContainer: () => HTMLDivElement;\n}\n\nexport interface IAgGridModelEvents {\n onRefresh: () => void;\n}\n\n\nexport interface ICellValues {\n notifications: IAddControlNotificationOptions[];\n customFormatting: Required<ICustomColumnFormatting>;\n customControl: Required<ICustomColumnControl>;\n customComponent: ICustomColumnComponent;\n loading: boolean;\n value: any;\n aggregatedValue: any;\n error: boolean;\n height: number;\n errorMessage: string;\n parameters: IControlParameters;\n columnAlignment: Required<IColumn['alignment']>;\n editing: boolean;\n editable: boolean;\n disabled: boolean;\n saving: boolean;\n}\n\nexport class AgGridModel extends EventEmitter<IAgGridModelEvents> {\n private _grid: GridModel;\n private _dataSource: ServerSideDatasource;\n private _gridApi: GridApi | undefined;\n private _hasUserResizedColumns: boolean = false;\n private _getContainer: () => HTMLDivElement;\n private _debouncedColumnResized: debounce.DebouncedFunction<(e: ColumnResizedEvent<IRecord>) => void>;\n private _debouncedRefresh: debounce.DebouncedFunction<() => void>;\n private _debouncedSetSelectedNodes: debounce.DebouncedFunction<(ids: string[]) => void>;\n private _expandedRowGroupIds: string[] = [];\n private _hasUserExpandedRowGroups: boolean = false;\n private _isLoadingNestedProviders: boolean = false;\n\n constructor({ grid, getContainer }: IAgGridTestDependencies) {\n super();\n this._grid = grid;\n this._getContainer = getContainer;\n this._dataSource = new ServerSideDatasource(this);\n this._debouncedColumnResized = debounce((e: ColumnResizedEvent<IRecord>) => this._onColumnResized(e));\n this._debouncedSetSelectedNodes = debounce((ids) => this._setSelectedNodes(ids), 0);\n this._debouncedRefresh = debounce(() => this._refresh(), 0);\n this._dataset.addEventListener('onInitialDataLoaded', () => {\n const totalRowDataProvider = this._grid.getTotalRow().getDataProvider();\n totalRowDataProvider.addEventListener('onLoading', () => this._setPinnedRowData());\n totalRowDataProvider.addEventListener('onError', () => this._setPinnedRowData());\n })\n const licenseKey = this._grid.getLicenseKey();\n if (licenseKey) {\n LicenseManager.setLicenseKey(licenseKey);\n }\n }\n\n public getColumns(gridColumns: IGridColumn[]): ColDef[] {\n if (this._grid.getDataset().grouping.getGroupBys().length > 0 && !this._grid.isGroupedColumnsPinnedEnabled()) {\n this._sortColumns(gridColumns);\n }\n const agColumns = gridColumns.map(column => {\n const isCheckboxColumn = column.name === CHECKBOX_COLUMN_KEY;\n const agColumn: ColDef = {\n colId: column.name,\n field: column.name,\n headerName: column.displayName,\n hide: this._isColumnHidden(column),\n width: this._getColumnWidth(column),\n sortable: !column.disableSorting,\n lockPinned: true,\n resizable: column.isResizable,\n autoHeaderHeight: true,\n autoHeight: this._isColumnAutoHeightEnabled(column),\n suppressMovable: column.isDraggable === false ? true : false,\n suppressSizeToFit: isCheckboxColumn,\n lockPosition: this._getLockPosition(column),\n pinned: this._isColumnPinned(column),\n headerComponentParams: {\n baseColumn: column\n },\n rowGroup: column.grouping?.isGrouped,\n cellRendererParams: (p: any) => {\n return {\n ...this._getCellParameters(p.data, column),\n isCellEditor: false\n }\n },\n cellEditorParams: (p: any) => {\n return {\n ...this._getCellParameters(p.data, column),\n isCellEditor: true\n }\n },\n editable: (p) => this._isCellEditorEnabled(column.name, p.data),\n equals: (valueA: ICellValues, valueB: ICellValues) => new Comparator().isEqual(valueA, valueB),\n headerComponent: ColumnHeader,\n cellRenderer: Cell,\n cellEditor: Cell,\n valueGetter: (p: ValueGetterParams<IRecord>) => this._valueGetter(p, column),\n valueFormatter: (p: ValueFormatterParams<IRecord>) => this._valueFormatter(p),\n suppressKeyboardEvent: (p) => this._suppressKeyboardEvent(p, column),\n onCellDoubleClicked: (e: CellDoubleClickedEvent<IRecord>) => this._onCellDoubleClick(e),\n onCellClicked: (e: CellClickedEvent<IRecord>) => this._onCellClick(e),\n }\n if (agColumn.field === CHECKBOX_COLUMN_KEY) {\n agColumn.headerComponent = RecordSelectionCheckBox;\n }\n return agColumn;\n })\n return agColumns;\n }\n\n public getGridApi() {\n if (!this._gridApi) {\n throw new Error(\"Grid API is not available\");\n }\n return this._gridApi;\n }\n\n public init(gridApi: GridApi) {\n this._gridApi = gridApi;\n if (this._grid.getDataset().loading) {\n this._setLoadingOverlay(true);\n }\n this._registerEventListeners();\n this._setGridOptions();\n }\n\n public getGrid(): GridModel {\n return this._grid;\n }\n\n public getSelectionType(): 'single' | 'multiple' | undefined {\n switch (this._grid.getSelectionType()) {\n case 'none': {\n return undefined;\n }\n case 'single': {\n return 'single';\n }\n case 'multiple': {\n return 'multiple';\n }\n }\n }\n public refresh() {\n this._debouncedRefresh();\n }\n\n public toggleGroup(node: IRowNode<IRecord>) {\n node.setExpanded(!node.expanded);\n //clears the expanded rows in memory so it does not interfere with the next group expansion\n this._expandedRowGroupIds = [];\n this._hasUserExpandedRowGroups = true;\n }\n\n public getRecordSelectionState(node: IRowNode<IRecord>): 'checked' | 'unchecked' | 'indeterminate' {\n const record = node.data!;\n const dataProvider = record.getDataProvider();\n const childDataProvider = dataProvider.getChildDataProvider(record.getRecordId());\n if (childDataProvider) {\n if (node.isSelected()) {\n return 'checked';\n }\n else {\n if (childDataProvider.getSelectedRecordIds().length === 0) {\n return 'unchecked';\n }\n else {\n return 'indeterminate';\n }\n }\n }\n else {\n return node.isSelected() ? 'checked' : 'unchecked';\n }\n }\n\n public onNotifyOutputChanged(record: IRecord, columnName: string, value: any, parameters: any) {\n record.setValue(columnName, value);\n const { ShouldStopEditWhenOutputChanges } = parameters;\n if (ShouldStopEditWhenOutputChanges?.raw) {\n this.getGridApi().stopEditing();\n }\n }\n\n private _sortColumns(columns: IGridColumn[]): IGridColumn[] {\n return columns.sort((a, b) => {\n // If both columns have the same grouping status, maintain original order (return 0)\n if ((a.grouping?.isGrouped || false) === (b.grouping?.isGrouped || false)) {\n return 0;\n }\n // If a is grouped, it should come first\n if (a.grouping?.isGrouped) {\n return -1;\n }\n // If b is grouped, it should come first\n if (b.grouping?.isGrouped) {\n return 1;\n }\n // Default case, should never reach here given the first condition\n return 0;\n });\n }\n\n private _refresh() {\n if (this._grid.getDataset().loading) {\n return;\n }\n const { haveColumnsOrderBeenUpdated, columns } = this._grid.refreshGridColumns();\n if (haveColumnsOrderBeenUpdated) {\n this.getGridApi().setGridOption('columnDefs', this.getColumns(columns));\n this._autoSizeColumns();\n }\n else {\n this.getGridApi().refreshCells();\n }\n this.dispatchEvent('onRefresh');\n }\n\n private _isColumnAutoHeightEnabled(column: IGridColumn): boolean {\n return !!column.autoHeight\n }\n\n private _onCellClick(e: CellClickedEvent<IRecord>) {\n //@ts-ignore\n e.data?.dispatchEvent('onFieldClicked', e.colDef.colId!);\n }\n\n private _onCellDoubleClick(e: CellDoubleClickedEvent<IRecord>) {\n const column = this._dataset.getDataProvider().getColumnsMap()[e.colDef.colId!]!\n switch (true) {\n //do not navigate if the column is not editable or if the grid is not in navigation mode\n case !this._grid.isNavigationEnabled():\n case this._grid.isColumnEditable(column.name, e.data):\n case column.name === DataProvider.CONST.CHECKBOX_COLUMN_KEY: {\n return;\n }\n default: {\n const record = e.data!;\n record.getDataProvider().openDatasetItem(record.getNamedReference());\n }\n }\n }\n\n private _isColumnPinned(column: IGridColumn): boolean {\n switch (true) {\n case column.name === DataProvider.CONST.CHECKBOX_COLUMN_KEY:\n case column.grouping?.isGrouped && this._grid.isGroupedColumnsPinnedEnabled(): {\n return true;\n }\n default: {\n return false;\n }\n }\n }\n\n private _getCellParameters(record: IRecord, column: IGridColumn) {\n return {\n baseColumn: column,\n record: record\n }\n }\n\n private _isColumnHidden(column: IGridColumn): boolean {\n if (column.name === DataProvider.CONST.CHECKBOX_COLUMN_KEY) {\n switch (true) {\n case this._grid.getSelectionType() !== 'none': {\n return false;\n }\n case this._grid.isAutoSaveEnabled(): {\n return false;\n }\n default: {\n return true;\n }\n }\n }\n return !!column.isHidden;\n }\n\n private _getColumnWidth(column: IGridColumn): number | undefined {\n if (column.name === CHECKBOX_COLUMN_KEY) {\n return 45; // Default width for checkbox column\n }\n return column.visualSizeFactor;\n }\n\n private _scrollToTop() {\n this.getGridApi().ensureIndexVisible(0, 'top');\n }\n\n private _getLockPosition(column: IGridColumn) {\n if (column.name === CHECKBOX_COLUMN_KEY) {\n return 'left';\n }\n return undefined;\n }\n\n private _canExpandRowGroupsByDefault(): boolean {\n if (this._hasUserExpandedRowGroups) {\n return false;\n }\n else {\n return true;\n }\n }\n\n private _suppressKeyboardEvent(params: SuppressKeyboardEventParams<IRecord, any>, column: IGridColumn): boolean {\n if (column.oneClickEdit) {\n return true;\n }\n return false;\n }\n\n private _registerEventListeners() {\n this._dataset.addEventListener('onLoading', (isLoading: boolean) => this._setLoadingOverlay(isLoading));\n this._dataset.addEventListener('onRecordsSelected', (ids: string[]) => this._debouncedSetSelectedNodes(ids));\n this._dataset.addEventListener('onNewDataLoaded', () => this._onNewDataLoaded());\n this._dataset.addEventListener('onRenderRequested', () => this.refresh());\n this.getGridApi().addEventListener('gridSizeChanged', () => this._autoSizeColumns());\n this.getGridApi().addEventListener('firstDataRendered', () => this._autoSizeColumns());\n this.getGridApi().addEventListener('selectionChanged', (e: SelectionChangedEvent) => this._onSelectionChanged(e));\n this.getGridApi().addEventListener('columnResized', (e: any) => this._debouncedColumnResized(e));\n this.getGridApi().addEventListener('modelUpdated', () => this._setGridHeight());\n this.getGridApi().addEventListener('columnMoved', (e: ColumnMovedEvent<IRecord>) => this._onColumnMoved(e));\n }\n\n private _setGridOptions() {\n this.getGridApi().setGridOption('serverSideDatasource', this._dataSource);\n this.getGridApi().setGridOption('isServerSideGroupOpenByDefault', (params) => this._syncExpandedRowGroups(params));\n this.getGridApi().setGridOption('loadingCellRenderer', FullRowLoading)\n this.getGridApi().setGridOption('suppressDragLeaveHidesColumns', true);\n this.getGridApi().setGridOption('isFullWidthRow', (params) => this._isFullWidthRow(params));\n this.getGridApi().setGridOption('fullWidthCellRenderer', FullWidthCellRendererError);\n this.getGridApi().setGridOption('fullWidthCellRendererParams', (params: IsFullWidthRowParams<IRecord>) => this._getFullWidthCellRendererParams(params))\n this.getGridApi().setGridOption('suppressCopyRowsToClipboard', true);\n this.getGridApi().setGridOption('animateRows', false);\n this.getGridApi().setGridOption('groupDisplayType', 'custom');\n }\n\n private _isFullWidthRow(params: IsFullWidthRowParams<IRecord>): boolean {\n const provider = params.rowNode.data?.getDataProvider();\n switch (true) {\n case provider?.getSummarizationType() === 'aggregation' && provider.isError(): {\n return true;\n }\n default: {\n return false;\n }\n }\n }\n\n private _getFullWidthCellRendererParams(params: IsFullWidthRowParams<IRecord>) {\n //@ts-ignore - typings seem to be incorrect\n const provider = params.node.data?.getDataProvider()\n return {\n errorMessage: provider?.getErrorMessage()\n }\n }\n\n private _syncExpandedRowGroups(params: IsServerSideGroupOpenByDefaultParams): boolean {\n if (this._expandedRowGroupIds.includes(params.rowNode.id!)) {\n return true\n }\n else if (this._canExpandRowGroupsByDefault()) {\n if (params.rowNode.level <= this._grid.getDefaultExpandedGroupLevel()) {\n return true;\n }\n else {\n return false;\n }\n }\n else {\n return false;\n }\n }\n\n private _onColumnMoved(e: ColumnMovedEvent<IRecord>) {\n const movedColumn = this._grid.getDataset().getDataProvider().getColumnsMap()[e.column?.getColId()!];\n if (!e.finished || e.source !== 'uiColumnMoved') {\n return;\n }\n let order = 0;\n this._dataset.setColumns(e.api.getState().columnOrder?.orderedColIds!.map(col => {\n const column = this._grid.getDataset().getDataProvider().getColumnsMap()[col]!;\n return {\n ...column,\n order: order++\n }\n }))\n if (movedColumn?.grouping?.isGrouped) {\n this._dataset.refresh();\n }\n }\n\n private _onNewDataLoaded() {\n this._refreshServerSideModel();\n this.refresh();\n this._setNoRowsOverlay();\n this._scrollToTop();\n }\n\n private _refreshServerSideModel() {\n this._expandedRowGroupIds = this.getGridApi().getState().rowGroupExpansion?.expandedRowGroupIds ?? [];\n this.getGridApi().refreshServerSide({\n purge: true\n })\n }\n\n private _calculateGridHeight(): string {\n const defaultRowHeight = this._grid.getDefaultRowHeight();\n let offset = 20;\n if (this._dataset.grouping.getGroupBys().length > 0) {\n offset += 30;\n }\n if (this._grid.getParameters().Height?.raw) {\n return this._grid.getParameters().Height!.raw!;\n }\n else {\n const totalRowHeight = this.getGridApi().getRenderedNodes().reduce((acc, node) => acc + (node.rowHeight ?? defaultRowHeight), 0);\n const numberOfRecords = this.getGridApi().getRenderedNodes().length;\n if (numberOfRecords <= 15) {\n const headerHeight = this._getContainer().querySelector('.ag-header-row')?.clientHeight ?? 0;\n return `${totalRowHeight + headerHeight + offset}px`;\n }\n else {\n return `${defaultRowHeight * 17 + offset}px`;\n }\n }\n }\n private _setGridHeight() {\n setTimeout(() => {\n this._getContainer().style.height = this._calculateGridHeight();\n }, 100);\n }\n\n private _onColumnResized(e: ColumnResizedEvent<IRecord>) {\n if (e.source === 'uiColumnResized') {\n this._hasUserResizedColumns = true;\n this._updateColumnVisualSizeFactor(e);\n }\n }\n\n private _autoSizeColumns() {\n if (this._hasUserResizedColumns) {\n return;\n }\n this.getGridApi().sizeColumnsToFit({\n columnLimits: this._grid.getGridColumns().map(col => {\n return {\n key: col.name,\n minWidth: col.visualSizeFactor\n }\n })\n });\n }\n\n private _updateColumnVisualSizeFactor(e: ColumnResizedEvent<IRecord>) {\n const resizedColumnKey = e.column?.getColId();\n if (!resizedColumnKey) {\n return;\n }\n const columns = this._grid.getGridColumns();\n const newColumns = columns.map(col => {\n if (col.name === resizedColumnKey) {\n return {\n ...col,\n visualSizeFactor: e.column?.getActualWidth()!\n }\n }\n return col;\n })\n this._grid.getDataset().setColumns(newColumns);\n }\n\n private _onSelectionChanged(e: SelectionChangedEvent<IRecord>) {\n switch (true) {\n case e.source === 'api':\n case e.source === 'apiSelectAll': {\n return;\n }\n }\n this._dataset.clearSelectedRecordIds();\n const selectedNodes: IRowNode<IRecord>[] = this.getGridApi().getSelectedNodes();\n //if we click a grouped record, do not propagate the selection to children\n const providerSelectedRecordIdsMap = new Map<IDataProvider, string[]>();\n selectedNodes.map(node => {\n const record = node.data!;\n const provider = record.getDataProvider();\n if (!providerSelectedRecordIdsMap.has(provider)) {\n providerSelectedRecordIdsMap.set(provider, []);\n }\n providerSelectedRecordIdsMap.get(provider)!.push(record.getRecordId());\n })\n providerSelectedRecordIdsMap.forEach((ids, provider) => {\n provider.setSelectedRecordIds(ids);\n });\n }\n\n private async _setSelectedNodes(ids: string[]) {\n //interval to prevent infinite loading\n const checkLoadingNestedProviders = setInterval(() => {\n if(this._isLoadingNestedProviders && !this._areChildProvidersLoading()) {\n this._isLoadingNestedProviders = false;\n this._dataset.getDataProvider().setLoading(false);\n clearInterval(checkLoadingNestedProviders);\n }\n }, 500);\n if (!this._isLoadingNestedProviders && this._areChildProvidersLoading()) {\n this._isLoadingNestedProviders = true;\n this._dataset.getDataProvider().setLoading(true);\n }\n else if (this._isLoadingNestedProviders && !this._areChildProvidersLoading()) {\n this._isLoadingNestedProviders = false;\n this._dataset.getDataProvider().setLoading(false);\n clearInterval(checkLoadingNestedProviders);\n }\n this.getGridApi().setServerSideSelectionState({\n selectAll: false,\n toggledNodes: this._grid.getDataset().getDataProvider().getSelectedRecordIds({ includeGroupRecordIds: true })\n })\n this.getGridApi().refreshCells({\n columns: [CHECKBOX_COLUMN_KEY],\n force: true\n })\n }\n\n private _areChildProvidersLoading(): boolean {\n const childProviders = this._dataset.getDataProvider().getChildDataProviders(true).filter(x => x.getParentRecordId());\n return childProviders.some(provider => provider.isLoading());\n }\n\n private _valueFormatter(p: ValueFormatterParams<IRecord>): string {\n const formattedValue = this._grid.getRecordFormattedValue(p.data!, p.colDef.colId!);\n return formattedValue.value ?? formattedValue.aggregatedValue;\n }\n\n private _valueGetter(p: ValueGetterParams<IRecord>, column: IGridColumn) {\n const record = p.data!;\n let editing: boolean = false;\n const columnInfo = record.getColumnInfo(column.name) as IColumnInfo;\n //i hate this, there is no other way to get the information if we are in edit mode or not\n if (Error().stack!.includes('startEditing')) {\n editing = true;\n }\n const customControl = this._grid.getControl(column, record, editing || !!column.oneClickEdit);\n\n const control = new NestedControl({\n onGetBindings: () => this._grid.getBindings(record, column, customControl),\n parentPcfContext: this._grid.getPcfContext(),\n });\n const parameters = columnInfo.ui.getControlParameters({\n ...control.getParameters(),\n ...this._grid.getFieldBindingParameters(record, column, editing),\n })\n if (column.oneClickEdit && record.getSummarizationType() === 'none') {\n editing = true;\n }\n const value = this._grid.getRecordValue(record, column);\n return {\n notifications: columnInfo.ui.getNotifications(),\n value: value.value,\n customFormatting: this._grid.getFieldFormatting(record, column.name),\n customControl: customControl,\n error: columnInfo.error,\n aggregatedValue: value.aggregatedValue,\n loading: columnInfo.ui.isLoading(),\n errorMessage: columnInfo.errorMessage,\n editable: columnInfo.security.editable,\n editing: editing,\n parameters: parameters,\n saving: record.isSaving(),\n columnAlignment: column.alignment,\n customComponent: columnInfo.ui.getCustomControlComponent()\n } as ICellValues;\n }\n\n private _setPinnedRowData() {\n const totalRecord = this._grid.getTotalRow().getTotalRowRecord();\n this.getGridApi().setGridOption('pinnedBottomRowData', totalRecord ? [totalRecord] : []);\n }\n\n private _setLoadingOverlay(isLoading: boolean) {\n if (!isLoading) {\n return this.getGridApi().hideOverlay();\n }\n this.getGridApi().showLoadingOverlay();\n }\n\n private _setNoRowsOverlay() {\n setTimeout(() => {\n if (this._grid.getDataset().loading) {\n return;\n }\n this.getGridApi().hideOverlay();\n if (this._grid.getDataset().getDataProvider().getRecords().length === 0) {\n this.getGridApi().showNoRowsOverlay();\n }\n }, 0);\n }\n\n private _isCellEditorEnabled(columnName: string, record: IRecord): boolean {\n const column = this._grid.getGridColumnByName(columnName);\n // check column eligibility for cell editor\n switch (true) {\n //never allow cell editor for oneClickEdit - everything is handled by cell renderer in this case\n case column.oneClickEdit:\n //never allow cell editor for non-editable columns\n case !column.isEditable: {\n return false;\n }\n }\n return record.getColumnInfo(column.name).security.editable;\n }\n\n private get _dataset() {\n return this._grid.getDataset();\n }\n}"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,8 @@ const getGridCellRendererStyles = (model, height) => {
|
|
|
49
49
|
color: theme.semanticColors.infoIcon,
|
|
50
50
|
overflow: 'hidden',
|
|
51
51
|
textOverflow: 'ellipsis',
|
|
52
|
+
padding: 'initial',
|
|
53
|
+
paddingTop: 3
|
|
52
54
|
},
|
|
53
55
|
aggregatedValue: {
|
|
54
56
|
...formattedAggregatedValue != null && value == null ? {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sources":["../../../src/components/GridCellRenderer/styles.ts"],"sourcesContent":["import { mergeStyleSets } from \"@fluentui/react\"\nimport { IColumn } from \"@talxis/client-libraries\";\nimport { GridCellRendererModel } from \"./GridCellRendererModel\";\n\nlet minHeight: number | undefined = undefined;\n\nexport const getGridCellRendererStyles = (model: GridCellRendererModel, height?: number) => {\n const columnAlignment = model.getColumnAlignment();\n const theme = model.getControlTheme();\n const isMultiline = model.isMultiline();\n const autoHeightEnabled = model.isAutoHeightEnabled()\n const hasAggregationLabel = !!model.getAggregationLabel();\n const formattedAggregatedValue = model.getFormattedAggregatedValue();\n const value = model.getValue();\n\n if(minHeight === undefined) {\n minHeight = height;\n }\n return mergeStyleSets({\n gridCellRendererRoot: {\n height: '100%',\n minHeight: autoHeightEnabled ? minHeight : undefined,\n paddingLeft: 8,\n paddingRight: 8,\n display: 'flex',\n alignItems: getAlignItems(columnAlignment, hasAggregationLabel, isMultiline),\n justifyContent: hasAggregationLabel ? 'flex-end' : getJustifyContent(columnAlignment),\n flexDirection: hasAggregationLabel ? 'column' : 'row',\n overflow: 'hidden',\n resize: autoHeightEnabled ? 'vertical' : undefined\n },\n contentContainer: {\n display: 'flex',\n minWidth: 0,\n gap: 5,\n flexGrow: 1,\n width: '100%',\n alignItems: 'center'\n //alignItems: isMultiline ? 'flex-start' : 'flex-end'\n },\n innerContentContainer: {\n display: 'flex',\n overflow: 'hidden',\n justifyContent: getJustifyContent(columnAlignment),\n flexGrow: 1,\n gap: 3\n },\n aggregationLabel: {\n lineHeight: '1',\n fontSize: theme.fonts.small.fontSize,\n width: '100%',\n textAlign: 'right',\n color: theme.semanticColors.infoIcon,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n },\n aggregatedValue: {\n ...formattedAggregatedValue != null && value == null ? {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n } : {}\n },\n valueContainer: {\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n flexGrow: 1,\n textAlign: columnAlignment,\n },\n affixIconRoot: {\n 'img': {\n width: 18\n }\n }\n })\n}\n\nconst getAlignItems = (columnAlignment: IColumn['alignment'], hasAggregationLabel: boolean, isMultiline: boolean) => {\n if (hasAggregationLabel) {\n switch (columnAlignment) {\n case 'left': {\n return 'flex-start';\n }\n case 'center': {\n return 'center';\n }\n case 'right': {\n return 'flex-end';\n }\n }\n }\n if(isMultiline) {\n return 'flex-start'\n }\n else {\n return 'center';\n }\n}\n\nexport const getJustifyContent = (columnAlignment: IColumn['alignment']) => {\n switch (columnAlignment) {\n case 'left': {\n return 'flex-start';\n }\n case 'center': {\n return 'center';\n }\n case 'right': {\n return 'flex-end';\n }\n }\n}"],"names":[],"mappings":";;AAIA,IAAI,SAAS,GAAuB,SAAS,CAAC;MAEjC,yBAAyB,GAAG,CAAC,KAA4B,EAAE,MAAe,KAAI;AACvF,IAAA,MAAM,eAAe,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;AACnD,IAAA,MAAM,KAAK,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;AACtC,IAAA,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;AACxC,IAAA,MAAM,iBAAiB,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAA;IACrD,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;AAC1D,IAAA,MAAM,wBAAwB,GAAG,KAAK,CAAC,2BAA2B,EAAE,CAAC;AACrE,IAAA,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAE/B,IAAG,SAAS,KAAK,SAAS,EAAE;QACxB,SAAS,GAAG,MAAM,CAAC;AACtB,KAAA;AACD,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,oBAAoB,EAAE;AAClB,YAAA,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,iBAAiB,GAAG,SAAS,GAAG,SAAS;AACpD,YAAA,WAAW,EAAE,CAAC;AACd,YAAA,YAAY,EAAE,CAAC;AACf,YAAA,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,aAAa,CAAC,eAAe,EAAE,mBAAmB,EAAE,WAAW,CAAC;AAC5E,YAAA,cAAc,EAAE,mBAAmB,GAAG,UAAU,GAAG,iBAAiB,CAAC,eAAe,CAAC;YACrF,aAAa,EAAE,mBAAmB,GAAG,QAAQ,GAAG,KAAK;AACrD,YAAA,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,iBAAiB,GAAG,UAAU,GAAG,SAAS;AACrD,SAAA;AACD,QAAA,gBAAgB,EAAE;AACd,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,GAAG,EAAE,CAAC;AACN,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,UAAU,EAAE,QAAQ;;AAEvB,SAAA;AACD,QAAA,qBAAqB,EAAE;AACnB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,cAAc,EAAE,iBAAiB,CAAC,eAAe,CAAC;AAClD,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,GAAG,EAAE,CAAC;AACT,SAAA;AACD,QAAA,gBAAgB,EAAE;AACd,YAAA,UAAU,EAAE,GAAG;AACf,YAAA,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ;AACpC,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,SAAS,EAAE,OAAO;AAClB,YAAA,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ;AACpC,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,YAAY,EAAE,UAAU;
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../src/components/GridCellRenderer/styles.ts"],"sourcesContent":["import { mergeStyleSets } from \"@fluentui/react\"\nimport { IColumn } from \"@talxis/client-libraries\";\nimport { GridCellRendererModel } from \"./GridCellRendererModel\";\n\nlet minHeight: number | undefined = undefined;\n\nexport const getGridCellRendererStyles = (model: GridCellRendererModel, height?: number) => {\n const columnAlignment = model.getColumnAlignment();\n const theme = model.getControlTheme();\n const isMultiline = model.isMultiline();\n const autoHeightEnabled = model.isAutoHeightEnabled()\n const hasAggregationLabel = !!model.getAggregationLabel();\n const formattedAggregatedValue = model.getFormattedAggregatedValue();\n const value = model.getValue();\n\n if(minHeight === undefined) {\n minHeight = height;\n }\n return mergeStyleSets({\n gridCellRendererRoot: {\n height: '100%',\n minHeight: autoHeightEnabled ? minHeight : undefined,\n paddingLeft: 8,\n paddingRight: 8,\n display: 'flex',\n alignItems: getAlignItems(columnAlignment, hasAggregationLabel, isMultiline),\n justifyContent: hasAggregationLabel ? 'flex-end' : getJustifyContent(columnAlignment),\n flexDirection: hasAggregationLabel ? 'column' : 'row',\n overflow: 'hidden',\n resize: autoHeightEnabled ? 'vertical' : undefined\n },\n contentContainer: {\n display: 'flex',\n minWidth: 0,\n gap: 5,\n flexGrow: 1,\n width: '100%',\n alignItems: 'center'\n //alignItems: isMultiline ? 'flex-start' : 'flex-end'\n },\n innerContentContainer: {\n display: 'flex',\n overflow: 'hidden',\n justifyContent: getJustifyContent(columnAlignment),\n flexGrow: 1,\n gap: 3\n },\n aggregationLabel: {\n lineHeight: '1',\n fontSize: theme.fonts.small.fontSize,\n width: '100%',\n textAlign: 'right',\n color: theme.semanticColors.infoIcon,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n padding: 'initial',\n paddingTop: 3\n },\n aggregatedValue: {\n ...formattedAggregatedValue != null && value == null ? {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n } : {}\n },\n valueContainer: {\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n flexGrow: 1,\n textAlign: columnAlignment,\n },\n affixIconRoot: {\n 'img': {\n width: 18\n }\n }\n })\n}\n\nconst getAlignItems = (columnAlignment: IColumn['alignment'], hasAggregationLabel: boolean, isMultiline: boolean) => {\n if (hasAggregationLabel) {\n switch (columnAlignment) {\n case 'left': {\n return 'flex-start';\n }\n case 'center': {\n return 'center';\n }\n case 'right': {\n return 'flex-end';\n }\n }\n }\n if(isMultiline) {\n return 'flex-start'\n }\n else {\n return 'center';\n }\n}\n\nexport const getJustifyContent = (columnAlignment: IColumn['alignment']) => {\n switch (columnAlignment) {\n case 'left': {\n return 'flex-start';\n }\n case 'center': {\n return 'center';\n }\n case 'right': {\n return 'flex-end';\n }\n }\n}"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,7 @@ const GridColumnHeader = (props) => {
|
|
|
49
49
|
buttonProps: {
|
|
50
50
|
styles: {
|
|
51
51
|
root: styles.commandBarButtonRoot,
|
|
52
|
+
flexContainer: styles.commandBarButtonFlexContainer
|
|
52
53
|
},
|
|
53
54
|
title: getTitle()
|
|
54
55
|
},
|
|
@@ -57,7 +58,7 @@ const GridColumnHeader = (props) => {
|
|
|
57
58
|
}, (props) => {
|
|
58
59
|
return jsxs(CommandBarButton, { ...props.buttonProps, children: [props.onRenderColumnDisplayNameContainer({
|
|
59
60
|
container: {
|
|
60
|
-
className: styles.columnDisplayNameContainer
|
|
61
|
+
className: styles.columnDisplayNameContainer,
|
|
61
62
|
},
|
|
62
63
|
onRenderColumnDisplayName: (props, defaultRender) => defaultRender(props),
|
|
63
64
|
onRenderRequiredSymbol: (props, defaultRender) => defaultRender(props),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridColumnHeader.js","sources":["../../../src/components/GridColumnHeader/GridColumnHeader.tsx"],"sourcesContent":["import { CommandBarButton, ThemeProvider, Text, Icon } from \"@fluentui/react\";\nimport { useControl } from \"../../hooks\";\nimport { IGridColumnHeader } from \"./interfaces\";\nimport { useMemo, useRef } from \"react\";\nimport { GridColumnHeaderModel } from \"./GridColumnHeaderModel\";\nimport { getGridColumnHeaderStyles } from \"./styles\";\nimport { Autosum20Regular, GroupList20Regular, GroupList24Regular, GroupListRegular } from \"@fluentui/react-icons\";\nimport { gridColumnHeaderTranslations } from \"./translations\";\n\nexport const GridColumnHeader = (props: IGridColumnHeader) => {\n const { theme, labels } = useControl('GridColumnHeader', props, gridColumnHeaderTranslations);\n const propsRef = useRef<IGridColumnHeader>(props);\n propsRef.current = props;\n\n const model = useMemo(() => new GridColumnHeaderModel({\n getLabels: () => labels,\n getProps: () => propsRef.current\n }), []);\n const styles = useMemo(() => getGridColumnHeaderStyles(theme, model.getColumn().alignment!), [\n theme,\n model.getColumn().alignment!\n ]);\n const onOverrideComponentProps = props.onOverrideComponentProps ?? ((props) => props);\n\n const componentProps = onOverrideComponentProps({\n onRender: (props, defaultRender) => defaultRender(props)\n })\n\n const getSortIconName = () => {\n if (model.isSortedAsc()) {\n return 'SortUp';\n } else if (model.isSortedDesc()) {\n return 'SortDown';\n }\n return undefined;\n }\n\n const getTitle = () => {\n let title = model.getColumn().displayName;\n if (model.isAggregated()) {\n title += ` (${model.getAggregationLabel()})`;\n }\n return title;\n }\n\n return componentProps.onRender({\n container: {\n theme: theme\n },\n onRenderCommandBarButton: (props, defaultRender) => defaultRender(props),\n }, (props) => {\n return <ThemeProvider {...props.container}>\n {props.onRenderCommandBarButton({\n buttonProps: {\n styles: {\n root: styles.commandBarButtonRoot,\n },\n title: getTitle()\n },\n onRenderColumnDisplayNameContainer: (props, defaultRender) => defaultRender(props),\n onRenderSuffixIconContainer: (props, defaultRender) => defaultRender(props),\n }, (props) => {\n return <CommandBarButton {...props.buttonProps}>\n {props.onRenderColumnDisplayNameContainer({\n container: {\n className: styles.columnDisplayNameContainer\n },\n onRenderColumnDisplayName: (props, defaultRender) => defaultRender(props),\n onRenderRequiredSymbol: (props, defaultRender) => defaultRender(props),\n onRenderGroupingIcon: (props, defaultRender) => defaultRender(props),\n\n }, (props) => {\n return <div {...props.container}>\n {props.onRenderGroupingIcon({\n className: `${styles.svgIcon}`\n }, (props) => {\n if (model.isGrouped()) {\n return <GroupList20Regular {...props} />\n }\n return <></>\n })}\n {props.onRenderColumnDisplayName({\n children: model.getColumn().displayName,\n styles: {\n root: styles.columnDisplayNameText\n }\n }, (props) => {\n return <Text {...props} />\n })}\n {props.onRenderRequiredSymbol({\n children: '*',\n className: styles.asterix\n }, (props) => {\n if (model.isRequired()) {\n return <Text {...props} />\n }\n return <></>\n })}\n </div>\n })}\n {props.onRenderSuffixIconContainer({\n container: {\n className: styles.suffixIconsContainer\n },\n onRenderFilterIcon: (props, defaultRender) => defaultRender(props),\n onRenderSortIcon: (props, defaultRender) => defaultRender(props),\n onRenderUneditableIcon: (props, defaultRender) => defaultRender(props),\n onRenderSumIcon: (props, defaultRender) => defaultRender(props),\n }, (props) => {\n return <div {...props.container}>\n {props.onRenderSortIcon({\n iconName: getSortIconName()\n }, (props) => {\n if (props.iconName) {\n return <Icon {...props} />\n }\n return <></>\n })}\n {props.onRenderFilterIcon({\n iconName: 'Filter'\n }, (props) => {\n if (model.isFiltered()) {\n return <Icon {...props} />\n }\n return <></>\n })}\n {props.onRenderUneditableIcon({\n iconName: 'Uneditable'\n }, (props) => {\n if (model.isUneditableIconVisible()) {\n return <Icon {...props} />\n }\n return <></>\n })}\n {props.onRenderSumIcon({\n className: `${styles.svgIcon} ${styles.aggregationIcon}`\n }, (props) => {\n if (model.isAggregated()) {\n return <Autosum20Regular {...props} />\n }\n return <></>\n })}\n </div>\n })}\n </CommandBarButton>\n })}\n </ThemeProvider>\n })\n\n}"],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;;AASa,MAAA,gBAAgB,GAAG,CAAC,KAAwB,KAAI;AACzD,IAAA,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,kBAAkB,EAAE,KAAK,EAAE,4BAA4B,CAAC,CAAC;AAC9F,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAoB,KAAK,CAAC,CAAC;AAClD,IAAA,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;IAEzB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,IAAI,qBAAqB,CAAC;AAClD,QAAA,SAAS,EAAE,MAAM,MAAM;AACvB,QAAA,QAAQ,EAAE,MAAM,QAAQ,CAAC,OAAO;KACnC,CAAC,EAAE,EAAE,CAAC,CAAC;AACR,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,yBAAyB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,SAAU,CAAC,EAAE;QACzF,KAAK;AACL,QAAA,KAAK,CAAC,SAAS,EAAE,CAAC,SAAU;AAC/B,KAAA,CAAC,CAAC;AACH,IAAA,MAAM,wBAAwB,GAAG,KAAK,CAAC,wBAAwB,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IAEtF,MAAM,cAAc,GAAG,wBAAwB,CAAC;QAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;AAC3D,KAAA,CAAC,CAAA;IAEF,MAAM,eAAe,GAAG,MAAK;AACzB,QAAA,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE;AACrB,YAAA,OAAO,QAAQ,CAAC;AACnB,SAAA;AAAM,aAAA,IAAI,KAAK,CAAC,YAAY,EAAE,EAAE;AAC7B,YAAA,OAAO,UAAU,CAAC;AACrB,SAAA;AACD,QAAA,OAAO,SAAS,CAAC;AACrB,KAAC,CAAA;IAED,MAAM,QAAQ,GAAG,MAAK;QAClB,IAAI,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC;AAC1C,QAAA,IAAI,KAAK,CAAC,YAAY,EAAE,EAAE;AACtB,YAAA,KAAK,IAAI,CAAK,EAAA,EAAA,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC;AAChD,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;AACjB,KAAC,CAAA;IAED,OAAO,cAAc,CAAC,QAAQ,CAAC;AAC3B,QAAA,SAAS,EAAE;AACP,YAAA,KAAK,EAAE,KAAK;AACf,SAAA;QACD,wBAAwB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;KAC3E,EAAE,CAAC,KAAK,KAAI;QACT,OAAOA,GAAA,CAAC,aAAa,EAAA,EAAA,GAAK,KAAK,CAAC,SAAS,EACpC,QAAA,EAAA,KAAK,CAAC,wBAAwB,CAAC;AAC5B,gBAAA,WAAW,EAAE;AACT,oBAAA,MAAM,EAAE;wBACJ,IAAI,EAAE,MAAM,CAAC,oBAAoB;AACpC,qBAAA;oBACD,KAAK,EAAE,QAAQ,EAAE;AACpB,iBAAA;gBACD,kCAAkC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;gBAClF,2BAA2B,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;aAC9E,EAAE,CAAC,KAAK,KAAI;gBACT,OAAOC,IAAA,CAAC,gBAAgB,EAAA,EAAA,GAAK,KAAK,CAAC,WAAW,EACzC,QAAA,EAAA,CAAA,KAAK,CAAC,kCAAkC,CAAC;AACtC,4BAAA,SAAS,EAAE;gCACP,SAAS,EAAE,MAAM,CAAC,0BAA0B;AAC/C,6BAAA;4BACD,yBAAyB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;4BACzE,sBAAsB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;4BACtE,oBAAoB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;yBAEvE,EAAE,CAAC,KAAK,KAAI;4BACT,OAAOA,IAAA,CAAA,KAAA,EAAA,EAAA,GAAS,KAAK,CAAC,SAAS,aAC1B,KAAK,CAAC,oBAAoB,CAAC;AACxB,wCAAA,SAAS,EAAE,CAAA,EAAG,MAAM,CAAC,OAAO,CAAE,CAAA;qCACjC,EAAE,CAAC,KAAK,KAAI;AACT,wCAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AACnB,4CAAA,OAAOD,GAAC,CAAA,kBAAkB,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;AAC3C,yCAAA;AACD,wCAAA,OAAOA,iBAAK,CAAA;AAChB,qCAAC,CAAC,EACD,KAAK,CAAC,yBAAyB,CAAC;AAC7B,wCAAA,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW;AACvC,wCAAA,MAAM,EAAE;4CACJ,IAAI,EAAE,MAAM,CAAC,qBAAqB;AACrC,yCAAA;qCACJ,EAAE,CAAC,KAAK,KAAI;AACT,wCAAA,OAAOA,GAAC,CAAA,IAAI,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;AAC9B,qCAAC,CAAC,EACD,KAAK,CAAC,sBAAsB,CAAC;AAC1B,wCAAA,QAAQ,EAAE,GAAG;wCACb,SAAS,EAAE,MAAM,CAAC,OAAO;qCAC5B,EAAE,CAAC,KAAK,KAAI;AACT,wCAAA,IAAI,KAAK,CAAC,UAAU,EAAE,EAAE;AACpB,4CAAA,OAAOA,GAAC,CAAA,IAAI,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;AAC7B,yCAAA;AACD,wCAAA,OAAOA,iBAAK,CAAA;qCACf,CAAC,IACA,CAAA;AACV,yBAAC,CAAC,EACD,KAAK,CAAC,2BAA2B,CAAC;AAC/B,4BAAA,SAAS,EAAE;gCACP,SAAS,EAAE,MAAM,CAAC,oBAAoB;AACzC,6BAAA;4BACD,kBAAkB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;4BAClE,gBAAgB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;4BAChE,sBAAsB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;4BACtE,eAAe,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;yBAClE,EAAE,CAAC,KAAK,KAAI;4BACT,OAAOC,IAAA,CAAA,KAAA,EAAA,EAAA,GAAS,KAAK,CAAC,SAAS,aAC1B,KAAK,CAAC,gBAAgB,CAAC;wCACpB,QAAQ,EAAE,eAAe,EAAE;qCAC9B,EAAE,CAAC,KAAK,KAAI;wCACT,IAAI,KAAK,CAAC,QAAQ,EAAE;AAChB,4CAAA,OAAOD,GAAC,CAAA,IAAI,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;AAC7B,yCAAA;AACD,wCAAA,OAAOA,iBAAK,CAAA;AAChB,qCAAC,CAAC,EACD,KAAK,CAAC,kBAAkB,CAAC;AACtB,wCAAA,QAAQ,EAAE,QAAQ;qCACrB,EAAE,CAAC,KAAK,KAAI;AACT,wCAAA,IAAI,KAAK,CAAC,UAAU,EAAE,EAAE;AACpB,4CAAA,OAAOA,GAAC,CAAA,IAAI,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;AAC7B,yCAAA;AACD,wCAAA,OAAOA,iBAAK,CAAA;AAChB,qCAAC,CAAC,EACD,KAAK,CAAC,sBAAsB,CAAC;AAC1B,wCAAA,QAAQ,EAAE,YAAY;qCACzB,EAAE,CAAC,KAAK,KAAI;AACT,wCAAA,IAAI,KAAK,CAAC,uBAAuB,EAAE,EAAE;AACjC,4CAAA,OAAOA,GAAC,CAAA,IAAI,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;AAC7B,yCAAA;AACD,wCAAA,OAAOA,iBAAK,CAAA;AAChB,qCAAC,CAAC,EACD,KAAK,CAAC,eAAe,CAAC;wCACnB,SAAS,EAAE,GAAG,MAAM,CAAC,OAAO,CAAI,CAAA,EAAA,MAAM,CAAC,eAAe,CAAE,CAAA;qCAC3D,EAAE,CAAC,KAAK,KAAI;AACT,wCAAA,IAAI,KAAK,CAAC,YAAY,EAAE,EAAE;AACtB,4CAAA,OAAOA,GAAC,CAAA,gBAAgB,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;AACzC,yCAAA;AACD,wCAAA,OAAOA,iBAAK,CAAA;qCACf,CAAC,IACA,CAAA;yBACT,CAAC,IACa,CAAA;aACtB,CAAC,GACU,CAAA;AACpB,KAAC,CAAC,CAAA;AAEN;;;;"}
|
|
1
|
+
{"version":3,"file":"GridColumnHeader.js","sources":["../../../src/components/GridColumnHeader/GridColumnHeader.tsx"],"sourcesContent":["import { CommandBarButton, ThemeProvider, Text, Icon } from \"@fluentui/react\";\nimport { useControl } from \"../../hooks\";\nimport { IGridColumnHeader } from \"./interfaces\";\nimport { useMemo, useRef } from \"react\";\nimport { GridColumnHeaderModel } from \"./GridColumnHeaderModel\";\nimport { getGridColumnHeaderStyles } from \"./styles\";\nimport { Autosum20Regular, GroupList20Regular, GroupList24Regular, GroupListRegular } from \"@fluentui/react-icons\";\nimport { gridColumnHeaderTranslations } from \"./translations\";\n\nexport const GridColumnHeader = (props: IGridColumnHeader) => {\n const { theme, labels } = useControl('GridColumnHeader', props, gridColumnHeaderTranslations);\n const propsRef = useRef<IGridColumnHeader>(props);\n propsRef.current = props;\n\n const model = useMemo(() => new GridColumnHeaderModel({\n getLabels: () => labels,\n getProps: () => propsRef.current\n }), []);\n const styles = useMemo(() => getGridColumnHeaderStyles(theme, model.getColumn().alignment!), [\n theme,\n model.getColumn().alignment!\n ]);\n const onOverrideComponentProps = props.onOverrideComponentProps ?? ((props) => props);\n\n const componentProps = onOverrideComponentProps({\n onRender: (props, defaultRender) => defaultRender(props)\n })\n\n const getSortIconName = () => {\n if (model.isSortedAsc()) {\n return 'SortUp';\n } else if (model.isSortedDesc()) {\n return 'SortDown';\n }\n return undefined;\n }\n\n const getTitle = () => {\n let title = model.getColumn().displayName;\n if (model.isAggregated()) {\n title += ` (${model.getAggregationLabel()})`;\n }\n return title;\n }\n\n return componentProps.onRender({\n container: {\n theme: theme\n },\n onRenderCommandBarButton: (props, defaultRender) => defaultRender(props),\n }, (props) => {\n return <ThemeProvider {...props.container}>\n {props.onRenderCommandBarButton({\n buttonProps: {\n styles: {\n root: styles.commandBarButtonRoot,\n flexContainer: styles.commandBarButtonFlexContainer\n },\n title: getTitle()\n },\n onRenderColumnDisplayNameContainer: (props, defaultRender) => defaultRender(props),\n onRenderSuffixIconContainer: (props, defaultRender) => defaultRender(props),\n }, (props) => {\n return <CommandBarButton {...props.buttonProps}>\n {props.onRenderColumnDisplayNameContainer({\n container: {\n className: styles.columnDisplayNameContainer,\n },\n onRenderColumnDisplayName: (props, defaultRender) => defaultRender(props),\n onRenderRequiredSymbol: (props, defaultRender) => defaultRender(props),\n onRenderGroupingIcon: (props, defaultRender) => defaultRender(props),\n\n }, (props) => {\n return <div {...props.container}>\n {props.onRenderGroupingIcon({\n className: `${styles.svgIcon}`\n }, (props) => {\n if (model.isGrouped()) {\n return <GroupList20Regular {...props} />\n }\n return <></>\n })}\n {props.onRenderColumnDisplayName({\n children: model.getColumn().displayName,\n styles: {\n root: styles.columnDisplayNameText\n }\n }, (props) => {\n return <Text {...props} />\n })}\n {props.onRenderRequiredSymbol({\n children: '*',\n className: styles.asterix\n }, (props) => {\n if (model.isRequired()) {\n return <Text {...props} />\n }\n return <></>\n })}\n </div>\n })}\n {props.onRenderSuffixIconContainer({\n container: {\n className: styles.suffixIconsContainer\n },\n onRenderFilterIcon: (props, defaultRender) => defaultRender(props),\n onRenderSortIcon: (props, defaultRender) => defaultRender(props),\n onRenderUneditableIcon: (props, defaultRender) => defaultRender(props),\n onRenderSumIcon: (props, defaultRender) => defaultRender(props),\n }, (props) => {\n return <div {...props.container}>\n {props.onRenderSortIcon({\n iconName: getSortIconName()\n }, (props) => {\n if (props.iconName) {\n return <Icon {...props} />\n }\n return <></>\n })}\n {props.onRenderFilterIcon({\n iconName: 'Filter'\n }, (props) => {\n if (model.isFiltered()) {\n return <Icon {...props} />\n }\n return <></>\n })}\n {props.onRenderUneditableIcon({\n iconName: 'Uneditable'\n }, (props) => {\n if (model.isUneditableIconVisible()) {\n return <Icon {...props} />\n }\n return <></>\n })}\n {props.onRenderSumIcon({\n className: `${styles.svgIcon} ${styles.aggregationIcon}`\n }, (props) => {\n if (model.isAggregated()) {\n return <Autosum20Regular {...props} />\n }\n return <></>\n })}\n </div>\n })}\n </CommandBarButton>\n })}\n </ThemeProvider>\n })\n\n}"],"names":["_jsx","_jsxs"],"mappings":"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"}
|
|
@@ -8,6 +8,9 @@ export declare const getGridColumnHeaderStyles: (theme: ITheme, alignment: Requi
|
|
|
8
8
|
paddingRight: number;
|
|
9
9
|
overflow: string;
|
|
10
10
|
};
|
|
11
|
+
commandBarButtonFlexContainer: {
|
|
12
|
+
gap: number;
|
|
13
|
+
};
|
|
11
14
|
columnDisplayNameText: {
|
|
12
15
|
fontWeight: number;
|
|
13
16
|
textOverflow: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sources":["../../../src/components/GridColumnHeader/styles.ts"],"sourcesContent":["import { ITheme, mergeStyleSets } from \"@fluentui/react\"\nimport { IColumn } from \"@talxis/client-libraries\"\n\nexport const getGridColumnHeaderStyles = (theme: ITheme, alignment: Required<IColumn['alignment']>) => {\n return mergeStyleSets({\n commandBarButtonRoot: {\n width: '100%',\n height: 42,\n paddingLeft: 10,\n paddingRight: 10,\n overflow: 'hidden'\n },\n columnDisplayNameText: {\n fontWeight: 600,\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n },\n asterix: {\n color: theme.semanticColors.errorText\n },\n svgIcon: {\n minWidth: 20\n },\n aggregationIcon: {\n },\n suffixIconsContainer: {\n display: 'flex',\n alignItems: 'center'\n },\n columnDisplayNameContainer: {\n display: 'flex',\n flex: 1,\n overflow: 'hidden',\n justifyContent: getJustifyContent(alignment),\n order: alignment === 'right' ? 2 : undefined\n }\n })\n}\n\nconst getJustifyContent = (alignment: Required<IColumn['alignment']>) => {\n switch (alignment) {\n case 'left': {\n return 'flex-start';\n }\n case 'center': {\n return 'center';\n }\n case 'right': {\n return 'flex-end';\n }\n default: {\n undefined\n }\n }\n}"],"names":[],"mappings":";;MAGa,yBAAyB,GAAG,CAAC,KAAa,EAAE,SAAyC,KAAI;AAClG,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,oBAAoB,EAAE;AAClB,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,WAAW,EAAE,EAAE;AACf,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,QAAQ,EAAE,QAAQ;AACrB,SAAA;AACD,QAAA,qBAAqB,EAAE;AACnB,YAAA,UAAU,EAAE,GAAG;AACf,YAAA,YAAY,EAAE,UAAU;AACxB,YAAA,QAAQ,EAAE,QAAQ;AACrB,SAAA;AACD,QAAA,OAAO,EAAE;AACL,YAAA,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;AACxC,SAAA;AACD,QAAA,OAAO,EAAE;AACL,YAAA,QAAQ,EAAE,EAAE;AACf,SAAA;AACD,QAAA,eAAe,EAAE,EAChB;AACD,QAAA,oBAAoB,EAAE;AAClB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,UAAU,EAAE,QAAQ;AACvB,SAAA;AACD,QAAA,0BAA0B,EAAE;AACxB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,cAAc,EAAE,iBAAiB,CAAC,SAAS,CAAC;YAC5C,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,CAAC,GAAG,SAAS;AAC/C,SAAA;AACJ,KAAA,CAAC,CAAA;AACN,EAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,SAAyC,KAAI;AACpE,IAAA,QAAQ,SAAS;QACb,KAAK,MAAM,EAAE;AACT,YAAA,OAAO,YAAY,CAAC;AACvB,SAAA;QACD,KAAK,QAAQ,EAAE;AACX,YAAA,OAAO,QAAQ,CAAC;AACnB,SAAA;QACD,KAAK,OAAO,EAAE;AACV,YAAA,OAAO,UAAU,CAAC;AACrB,SAAA;AAIJ,KAAA;AACL,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../src/components/GridColumnHeader/styles.ts"],"sourcesContent":["import { ITheme, mergeStyleSets } from \"@fluentui/react\"\nimport { IColumn } from \"@talxis/client-libraries\"\n\nexport const getGridColumnHeaderStyles = (theme: ITheme, alignment: Required<IColumn['alignment']>) => {\n return mergeStyleSets({\n commandBarButtonRoot: {\n width: '100%',\n height: 42,\n paddingLeft: 10,\n paddingRight: 10,\n overflow: 'hidden'\n },\n commandBarButtonFlexContainer: {\n gap: 5\n },\n columnDisplayNameText: {\n fontWeight: 600,\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n },\n asterix: {\n color: theme.semanticColors.errorText\n },\n svgIcon: {\n minWidth: 20\n },\n aggregationIcon: {\n },\n suffixIconsContainer: {\n display: 'flex',\n alignItems: 'center'\n },\n columnDisplayNameContainer: {\n display: 'flex',\n flex: 1,\n overflow: 'hidden',\n justifyContent: getJustifyContent(alignment),\n order: alignment === 'right' ? 2 : undefined\n }\n })\n}\n\nconst getJustifyContent = (alignment: Required<IColumn['alignment']>) => {\n switch (alignment) {\n case 'left': {\n return 'flex-start';\n }\n case 'center': {\n return 'center';\n }\n case 'right': {\n return 'flex-end';\n }\n default: {\n undefined\n }\n }\n}"],"names":[],"mappings":";;MAGa,yBAAyB,GAAG,CAAC,KAAa,EAAE,SAAyC,KAAI;AAClG,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,oBAAoB,EAAE;AAClB,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,WAAW,EAAE,EAAE;AACf,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,QAAQ,EAAE,QAAQ;AACrB,SAAA;AACD,QAAA,6BAA6B,EAAE;AAC3B,YAAA,GAAG,EAAE,CAAC;AACT,SAAA;AACD,QAAA,qBAAqB,EAAE;AACnB,YAAA,UAAU,EAAE,GAAG;AACf,YAAA,YAAY,EAAE,UAAU;AACxB,YAAA,QAAQ,EAAE,QAAQ;AACrB,SAAA;AACD,QAAA,OAAO,EAAE;AACL,YAAA,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;AACxC,SAAA;AACD,QAAA,OAAO,EAAE;AACL,YAAA,QAAQ,EAAE,EAAE;AACf,SAAA;AACD,QAAA,eAAe,EAAE,EAChB;AACD,QAAA,oBAAoB,EAAE;AAClB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,UAAU,EAAE,QAAQ;AACvB,SAAA;AACD,QAAA,0BAA0B,EAAE;AACxB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,cAAc,EAAE,iBAAiB,CAAC,SAAS,CAAC;YAC5C,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,CAAC,GAAG,SAAS;AAC/C,SAAA;AACJ,KAAA,CAAC,CAAA;AACN,EAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,SAAyC,KAAI;AACpE,IAAA,QAAQ,SAAS;QACb,KAAK,MAAM,EAAE;AACT,YAAA,OAAO,YAAY,CAAC;AACvB,SAAA;QACD,KAAK,QAAQ,EAAE;AACX,YAAA,OAAO,QAAQ,CAAC;AACnB,SAAA;QACD,KAAK,OAAO,EAAE;AACV,YAAA,OAAO,UAAU,CAAC;AACrB,SAAA;AAIJ,KAAA;AACL,CAAC;;;;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// <reference types="powerapps-component-framework" />
|
|
3
3
|
/// <reference types="react" />
|
|
4
4
|
import { ITheme, ICommandBarProps, ITextFieldProps, IDatePickerProps, ITagPickerProps, IComboBoxProps } from '@talxis/react-components';
|
|
5
|
-
import { DeepPartial, DataType, IDataset, Dataset, IDataProvider, PowerAppsDatasetProvider,
|
|
5
|
+
import { DeepPartial, DataType, IDataset, Dataset, IDataProvider, PowerAppsDatasetProvider, IRawRecord, IColumn, IAttributeMetadata, AggregationFunction, IRecord } from '@talxis/client-libraries';
|
|
6
6
|
import { ITheme as ITheme$1, ThemeProviderProps, IButtonProps, IShimmerProps, IMessageBarProps, ILabelProps, IIconProps, ITextProps, ILinkProps, IImageProps, ISpinnerProps, IMessageBar, IToggleProps } from '@fluentui/react';
|
|
7
7
|
import React$1 from 'react';
|
|
8
8
|
import { AgGridReactProps } from '@ag-grid-community/react';
|
|
@@ -110,7 +110,7 @@ interface IThemeWrapper extends ThemeProviderProps {
|
|
|
110
110
|
fluentDesignLanguage?: ComponentFramework.FluentDesignState;
|
|
111
111
|
children?: React$1.ReactNode;
|
|
112
112
|
}
|
|
113
|
-
declare const ThemeWrapper:
|
|
113
|
+
declare const ThemeWrapper: (props: IThemeWrapper) => JSX.Element;
|
|
114
114
|
|
|
115
115
|
type BaseControl = 'TextField' | 'OptionSet' | 'MultiSelectOptionSet' | 'DateTime' | 'Decimal' | 'Duration' | 'GridCellRenderer' | 'Lookup' | 'TwoOptions' | 'GridCellRenderer' | 'Grid' | 'DatasetControl' | 'NestedControl' | 'GridColumnHeader';
|
|
116
116
|
declare class BaseControls {
|
|
@@ -190,11 +190,12 @@ interface IOutputs$2 {
|
|
|
190
190
|
DatasetControl?: any;
|
|
191
191
|
}
|
|
192
192
|
interface IParameterGetters {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
193
|
+
DataProviderClass: {
|
|
194
|
+
new (...args: any[]): IDataProvider;
|
|
195
|
+
};
|
|
196
|
+
onGetDataSource: () => string | IRawRecord[];
|
|
197
|
+
onGetColumns?: () => string | IColumn[];
|
|
198
|
+
onGetEntityMetadata?: () => string | IAttributeMetadata;
|
|
198
199
|
onGetHeight?: () => string | null;
|
|
199
200
|
onGetGroupingType?: () => 'nested' | 'flat';
|
|
200
201
|
/**
|
|
@@ -207,21 +208,19 @@ interface IParameterGetters {
|
|
|
207
208
|
*
|
|
208
209
|
*/
|
|
209
210
|
declare class VirtualDatasetAdapter {
|
|
210
|
-
private _providerClasses;
|
|
211
211
|
private _dataset;
|
|
212
|
-
private _dataProviderClass;
|
|
213
212
|
private _container;
|
|
214
213
|
private _notifyOutputChanged;
|
|
215
214
|
private _resolveGetOutputs;
|
|
216
215
|
private _getOutputsPromise;
|
|
217
216
|
private _parameters;
|
|
218
|
-
|
|
219
|
-
|
|
217
|
+
private _initialized;
|
|
218
|
+
init(notifyOutputChanged: () => void, container: HTMLDivElement, parameters: IParameterGetters): VirtualDatasetAdapter;
|
|
219
|
+
updateView(context: ComponentFramework.Context<any, IOutputs$2>, renderComponent: () => void): void;
|
|
220
220
|
getDataset(): Dataset<IDataProvider>;
|
|
221
221
|
destroy(): void;
|
|
222
222
|
getOutputs(): IOutputs$2;
|
|
223
223
|
private _onDatasetInit;
|
|
224
|
-
private _getData;
|
|
225
224
|
private _getColumns;
|
|
226
225
|
private _shouldMergeColumns;
|
|
227
226
|
private _getMergedColumns;
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="@types/powerapps-component-framework" />
|
|
2
|
+
/// <reference types="powerapps-component-framework" />
|
|
3
|
+
import { Dataset, IAttributeMetadata, IColumn, IDataProvider, IRawRecord } from "@talxis/client-libraries";
|
|
2
4
|
interface IOutputs {
|
|
3
5
|
DatasetControl?: any;
|
|
4
6
|
}
|
|
5
7
|
interface IParameterGetters {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
DataProviderClass: {
|
|
9
|
+
new (...args: any[]): IDataProvider;
|
|
10
|
+
};
|
|
11
|
+
onGetDataSource: () => string | IRawRecord[];
|
|
12
|
+
onGetColumns?: () => string | IColumn[];
|
|
13
|
+
onGetEntityMetadata?: () => string | IAttributeMetadata;
|
|
11
14
|
onGetHeight?: () => string | null;
|
|
12
15
|
onGetGroupingType?: () => 'nested' | 'flat';
|
|
13
16
|
/**
|
|
@@ -20,21 +23,19 @@ interface IParameterGetters {
|
|
|
20
23
|
*
|
|
21
24
|
*/
|
|
22
25
|
export declare class VirtualDatasetAdapter {
|
|
23
|
-
private _providerClasses;
|
|
24
26
|
private _dataset;
|
|
25
|
-
private _dataProviderClass;
|
|
26
27
|
private _container;
|
|
27
28
|
private _notifyOutputChanged;
|
|
28
29
|
private _resolveGetOutputs;
|
|
29
30
|
private _getOutputsPromise;
|
|
30
31
|
private _parameters;
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
private _initialized;
|
|
33
|
+
init(notifyOutputChanged: () => void, container: HTMLDivElement, parameters: IParameterGetters): VirtualDatasetAdapter;
|
|
34
|
+
updateView(context: ComponentFramework.Context<any, IOutputs>, renderComponent: () => void): void;
|
|
33
35
|
getDataset(): Dataset<IDataProvider>;
|
|
34
36
|
destroy(): void;
|
|
35
37
|
getOutputs(): IOutputs;
|
|
36
38
|
private _onDatasetInit;
|
|
37
|
-
private _getData;
|
|
38
39
|
private _getColumns;
|
|
39
40
|
private _shouldMergeColumns;
|
|
40
41
|
private _getMergedColumns;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { mergeStyles } from '@fluentui/react';
|
|
2
|
-
import {
|
|
2
|
+
import { Dataset, FetchXmlDataProvider } from '@talxis/client-libraries';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Helper class that holds boilerplate code for handling a virtual dataset in PCF, like syncing data, columns, and metadata from parameters.
|
|
@@ -7,40 +7,41 @@ import { FetchXmlDataProvider, MemoryDataProvider, Dataset } from '@talxis/clien
|
|
|
7
7
|
*/
|
|
8
8
|
class VirtualDatasetAdapter {
|
|
9
9
|
constructor() {
|
|
10
|
-
this._providerClasses = {
|
|
11
|
-
'FetchXml': FetchXmlDataProvider,
|
|
12
|
-
'Memory': MemoryDataProvider
|
|
13
|
-
};
|
|
14
10
|
this._getOutputsPromise = new Promise(resolve => {
|
|
15
11
|
this._resolveGetOutputs = resolve;
|
|
16
12
|
});
|
|
13
|
+
this._initialized = false;
|
|
17
14
|
}
|
|
18
15
|
init(notifyOutputChanged, container, parameters) {
|
|
19
16
|
this._parameters = parameters;
|
|
20
|
-
this._notifyOutputChanged = notifyOutputChanged;
|
|
21
17
|
this._container = container;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
dataProvider = new this._dataProviderClass(this._getData(), this._getEntityMetadata());
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
dataProvider = this._parameters.customDataProvider;
|
|
18
|
+
this._notifyOutputChanged = notifyOutputChanged;
|
|
19
|
+
const dataSource = parameters.onGetDataSource();
|
|
20
|
+
if (!dataSource) {
|
|
21
|
+
return this;
|
|
30
22
|
}
|
|
23
|
+
const dataProvider = new parameters.DataProviderClass(dataSource, this._getEntityMetadata());
|
|
31
24
|
dataProvider.grouping.setGroupingType(parameters.onGetGroupingType?.() ?? 'nested');
|
|
32
|
-
//@ts-ignore - typings
|
|
33
25
|
this._dataset = new Dataset(dataProvider);
|
|
34
|
-
this._dataset.setDataSource(
|
|
26
|
+
this._dataset.setDataSource(dataSource);
|
|
35
27
|
this._dataset.setMetadata(this._getEntityMetadata());
|
|
36
28
|
if (this._parameters.onGetHeight?.() === '100%') {
|
|
37
29
|
this._container.classList.add(this._getFullTabStyles());
|
|
38
30
|
}
|
|
39
31
|
this._notifyOutputChanged();
|
|
40
32
|
this._onDatasetInit();
|
|
33
|
+
this._initialized = true;
|
|
41
34
|
return this;
|
|
42
35
|
}
|
|
43
|
-
updateView() {
|
|
36
|
+
updateView(context, renderComponent) {
|
|
37
|
+
if (!this._parameters.onGetDataSource()) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
//if not yet initialized, initialize, can happen if we start without data
|
|
41
|
+
if (!this._initialized) {
|
|
42
|
+
this.init(this._notifyOutputChanged, this._container, this._parameters);
|
|
43
|
+
}
|
|
44
|
+
return renderComponent();
|
|
44
45
|
}
|
|
45
46
|
getDataset() {
|
|
46
47
|
return this._dataset;
|
|
@@ -61,16 +62,14 @@ class VirtualDatasetAdapter {
|
|
|
61
62
|
await this._parameters.onInitialize?.();
|
|
62
63
|
});
|
|
63
64
|
}
|
|
64
|
-
_getData() {
|
|
65
|
-
return this._dataProviderClass.GetParsedData(this._parameters.onGetData());
|
|
66
|
-
}
|
|
67
65
|
_getColumns() {
|
|
68
66
|
try {
|
|
69
|
-
const parameterColumns =
|
|
67
|
+
const parameterColumns = this._parameters.onGetColumns?.();
|
|
68
|
+
const columns = Array.isArray(parameterColumns) ? parameterColumns : JSON.parse(parameterColumns ?? "[]");
|
|
70
69
|
if (this._shouldMergeColumns()) {
|
|
71
|
-
return this._getMergedColumns(
|
|
70
|
+
return this._getMergedColumns(columns);
|
|
72
71
|
}
|
|
73
|
-
return
|
|
72
|
+
return columns;
|
|
74
73
|
}
|
|
75
74
|
catch (err) {
|
|
76
75
|
console.error(err);
|
|
@@ -79,7 +78,7 @@ class VirtualDatasetAdapter {
|
|
|
79
78
|
}
|
|
80
79
|
_shouldMergeColumns() {
|
|
81
80
|
if (this._dataset.getDataProvider() instanceof FetchXmlDataProvider) {
|
|
82
|
-
const fetchXml = this._parameters.
|
|
81
|
+
const fetchXml = this._parameters.onGetDataSource();
|
|
83
82
|
if (fetchXml?.includes('savedqueryid') || fetchXml?.includes('userqueryid')) {
|
|
84
83
|
return true;
|
|
85
84
|
}
|
|
@@ -104,7 +103,8 @@ class VirtualDatasetAdapter {
|
|
|
104
103
|
}
|
|
105
104
|
_getEntityMetadata() {
|
|
106
105
|
try {
|
|
107
|
-
|
|
106
|
+
const parameterMetadata = this._parameters.onGetEntityMetadata?.();
|
|
107
|
+
return typeof parameterMetadata === 'object' ? parameterMetadata : JSON.parse(parameterMetadata ?? "{}");
|
|
108
108
|
}
|
|
109
109
|
catch (err) {
|
|
110
110
|
console.error(err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualDatasetAdapter.js","sources":["../../../../src/utils/dataset/adapters/VirtualDatasetAdapter.ts"],"sourcesContent":["import { mergeStyles } from \"@fluentui/react\";\nimport { Dataset, FetchXmlDataProvider, IColumn, IDataProvider,
|
|
1
|
+
{"version":3,"file":"VirtualDatasetAdapter.js","sources":["../../../../src/utils/dataset/adapters/VirtualDatasetAdapter.ts"],"sourcesContent":["import { mergeStyles } from \"@fluentui/react\";\nimport { Dataset, FetchXmlDataProvider, IAttributeMetadata, IColumn, IDataProvider, IRawRecord } from \"@talxis/client-libraries\";\n\ninterface IOutputs {\n DatasetControl?: any;\n}\n\ninterface IParameterGetters {\n DataProviderClass: { new(...args: any[]): IDataProvider }\n onGetDataSource: () => string | IRawRecord[];\n onGetColumns?: () => string | IColumn[];\n onGetEntityMetadata?: () => string | IAttributeMetadata;\n onGetHeight?: () => string | null;\n onGetGroupingType?: () => 'nested' | 'flat';\n /**\n * Callback that gets triggered and awaited before the dataset is initialized. Useful for setting initialization code that needs to run before the dataset is ready.\n */\n onInitialize?: () => void | Promise<void>;\n}\n\n/**\n * Helper class that holds boilerplate code for handling a virtual dataset in PCF, like syncing data, columns, and metadata from parameters.\n *\n */\nexport class VirtualDatasetAdapter {\n private _dataset!: Dataset<IDataProvider>;\n private _container!: HTMLDivElement;\n private _notifyOutputChanged!: () => void;\n private _resolveGetOutputs!: (value: boolean | PromiseLike<boolean>) => void;\n private _getOutputsPromise: Promise<boolean> = new Promise(resolve => {\n this._resolveGetOutputs = resolve;\n });\n private _parameters!: IParameterGetters;\n private _initialized: boolean = false;\n\n public init(notifyOutputChanged: () => void, container: HTMLDivElement, parameters: IParameterGetters): VirtualDatasetAdapter {\n this._parameters = parameters;\n this._container = container;\n this._notifyOutputChanged = notifyOutputChanged;\n const dataSource = parameters.onGetDataSource();\n if (!dataSource) {\n return this;\n }\n const dataProvider = new parameters.DataProviderClass(dataSource, this._getEntityMetadata());\n (<IDataProvider>dataProvider).grouping.setGroupingType(parameters.onGetGroupingType?.() ?? 'nested');\n this._dataset = new Dataset(dataProvider);\n this._dataset.setDataSource(dataSource);\n this._dataset.setMetadata(this._getEntityMetadata());\n if (this._parameters.onGetHeight?.() === '100%') {\n this._container.classList.add(this._getFullTabStyles());\n }\n this._notifyOutputChanged();\n this._onDatasetInit();\n this._initialized = true;\n return this;\n }\n\n public updateView(context: ComponentFramework.Context<any, IOutputs>, renderComponent: () => void): void {\n if (!this._parameters.onGetDataSource()) {\n return;\n }\n //if not yet initialized, initialize, can happen if we start without data\n if (!this._initialized) {\n this.init(this._notifyOutputChanged, this._container, this._parameters);\n }\n return renderComponent();\n }\n\n public getDataset(): Dataset<IDataProvider> {\n return this._dataset;\n }\n\n public destroy(): void {\n this._dataset.destroy();\n }\n\n public getOutputs(): IOutputs {\n this._resolveGetOutputs(true);\n return {\n DatasetControl: this.getDataset()\n };\n }\n\n private _onDatasetInit() {\n this.getDataset().setInterceptor('onInitialize', async () => {\n await this._getOutputsPromise;\n this._dataset.setColumns(this._getColumns());\n await this._parameters.onInitialize?.();\n })\n }\n\n private _getColumns() {\n try {\n const parameterColumns = this._parameters.onGetColumns?.();\n const columns: IColumn[] = Array.isArray(parameterColumns) ? parameterColumns : JSON.parse(parameterColumns ?? \"[]\");\n if (this._shouldMergeColumns()) {\n return this._getMergedColumns(columns);\n }\n return columns;\n }\n catch (err) {\n console.error(err);\n return this._dataset.columns;\n }\n }\n\n private _shouldMergeColumns(): boolean {\n if (this._dataset.getDataProvider() instanceof FetchXmlDataProvider) {\n const fetchXml = this._parameters.onGetDataSource() as string;\n if (fetchXml?.includes('savedqueryid') || fetchXml?.includes('userqueryid')) {\n return true;\n }\n }\n return false;\n }\n\n private _getMergedColumns(parameterColumns: IColumn[]): IColumn[] {\n const columnsMap = new Map(this._dataset.columns.map(col => [col.name, col]));\n parameterColumns.forEach(parameterCol => {\n const col = columnsMap.get(parameterCol.name);\n if (col) {\n columnsMap.set(col.name, {\n ...col,\n ...parameterCol\n });\n } else {\n columnsMap.set(parameterCol.name, parameterCol);\n }\n });\n return [...columnsMap.values()];\n }\n\n private _getEntityMetadata() {\n try {\n const parameterMetadata = this._parameters.onGetEntityMetadata?.();\n return typeof parameterMetadata === 'object' ? parameterMetadata : JSON.parse(parameterMetadata ?? \"{}\");\n }\n catch (err) {\n console.error(err);\n return this._dataset.getMetadata();\n }\n }\n\n private _getFullTabStyles() {\n return mergeStyles({\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1\n });\n }\n}"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,5 @@ interface IThemeWrapper extends ThemeProviderProps {
|
|
|
6
6
|
fluentDesignLanguage?: ComponentFramework.FluentDesignState;
|
|
7
7
|
children?: React.ReactNode;
|
|
8
8
|
}
|
|
9
|
-
export declare const ThemeWrapper:
|
|
9
|
+
export declare const ThemeWrapper: (props: IThemeWrapper) => JSX.Element;
|
|
10
10
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeWrapper.js","sources":["../../../../src/utils/theme/components/ThemeWrapper.tsx"],"sourcesContent":["import React from 'react';\nimport { ThemeProvider, ThemeProviderProps } from '@fluentui/react';\nimport { useControlTheme } from '../hooks';\n\ninterface IThemeWrapper extends ThemeProviderProps {\n fluentDesignLanguage?: ComponentFramework.FluentDesignState;\n children?: React.ReactNode;\n}\n\nexport const ThemeWrapper
|
|
1
|
+
{"version":3,"file":"ThemeWrapper.js","sources":["../../../../src/utils/theme/components/ThemeWrapper.tsx"],"sourcesContent":["import React from 'react';\nimport { ThemeProvider, ThemeProviderProps } from '@fluentui/react';\nimport { useControlTheme } from '../hooks';\n\ninterface IThemeWrapper extends ThemeProviderProps {\n fluentDesignLanguage?: ComponentFramework.FluentDesignState;\n children?: React.ReactNode;\n}\n\nexport const ThemeWrapper = (props: IThemeWrapper) => {\n const theme = useControlTheme(props.fluentDesignLanguage);\n return (\n <ThemeProvider theme={theme} {...props}>\n {props.children}\n </ThemeProvider>\n );\n};"],"names":["_jsx"],"mappings":";;;;AASa,MAAA,YAAY,GAAG,CAAC,KAAoB,KAAI;IACjD,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;AAC1D,IAAA,QACIA,GAAA,CAAC,aAAa,EAAA,EAAC,KAAK,EAAE,KAAK,EAAM,GAAA,KAAK,YACjC,KAAK,CAAC,QAAQ,EAAA,CACH,EAClB;AACN;;;;"}
|
package/package.json
CHANGED