From 26bfac59f0ade3dbaba62fb396e40d25461a0f29 Mon Sep 17 00:00:00 2001 From: Ghislain B Date: Mon, 21 Aug 2023 14:28:20 -0400 Subject: [PATCH] feat(TreeData): add optional Aggregators for Tree Data totals calc (#191) --- package.json | 22 +- src/examples/slickgrid/Example28.tsx | 168 ++++++- src/examples/slickgrid/example28.scss | 10 + test/cypress.config.ts | 2 +- test/cypress/e2e/example28.cy.ts | 674 ++++++++++++++++---------- yarn.lock | 118 ++--- 6 files changed, 657 insertions(+), 337 deletions(-) diff --git a/package.json b/package.json index f5a3cabe..5e42b9f8 100644 --- a/package.json +++ b/package.json @@ -91,11 +91,11 @@ ] }, "dependencies": { - "@slickgrid-universal/common": "3.1.0", - "@slickgrid-universal/custom-footer-component": "3.1.0", - "@slickgrid-universal/empty-warning-component": "3.1.0", + "@slickgrid-universal/common": "3.2.0", + "@slickgrid-universal/custom-footer-component": "3.2.0", + "@slickgrid-universal/empty-warning-component": "3.2.0", "@slickgrid-universal/event-pub-sub": "3.1.0", - "@slickgrid-universal/pagination-component": "3.1.0", + "@slickgrid-universal/pagination-component": "3.2.0", "dequal": "^2.0.3", "dompurify": "^3.0.5", "font-awesome": "^4.7.0", @@ -110,13 +110,13 @@ "@fnando/sparkline": "^0.3.10", "@popperjs/core": "^2.11.8", "@release-it/conventional-changelog": "^7.0.0", - "@slickgrid-universal/composite-editor-component": "3.1.0", - "@slickgrid-universal/custom-tooltip-plugin": "3.1.0", - "@slickgrid-universal/excel-export": "3.1.0", - "@slickgrid-universal/graphql": "3.1.0", - "@slickgrid-universal/odata": "3.1.0", - "@slickgrid-universal/rxjs-observable": "3.1.0", - "@slickgrid-universal/text-export": "3.1.0", + "@slickgrid-universal/composite-editor-component": "3.2.0", + "@slickgrid-universal/custom-tooltip-plugin": "3.2.0", + "@slickgrid-universal/excel-export": "3.2.0", + "@slickgrid-universal/graphql": "3.2.0", + "@slickgrid-universal/odata": "3.2.0", + "@slickgrid-universal/rxjs-observable": "3.2.0", + "@slickgrid-universal/text-export": "3.2.0", "@testing-library/jest-dom": "^6.0.1", "@testing-library/react": "^14.0.0", "@testing-library/user-event": "^14.4.3", diff --git a/src/examples/slickgrid/Example28.tsx b/src/examples/slickgrid/Example28.tsx index 9728537b..4fa61e2b 100644 --- a/src/examples/slickgrid/Example28.tsx +++ b/src/examples/slickgrid/Example28.tsx @@ -1,14 +1,19 @@ import { ExcelExportService } from '@slickgrid-universal/excel-export'; import { - SlickgridReactInstance, + Aggregators, Column, + decimalFormatted, FieldType, Filters, + findItemInTreeStructure, + Formatter, Formatters, GridOption, - findItemInTreeStructure, + isNumber, + // GroupTotalFormatters, + // italicFormatter, SlickgridReact, - SlickGrid, + SlickgridReactInstance, TreeToggledItem, } from '../../slickgrid-react'; import React from 'react'; @@ -25,12 +30,16 @@ interface State extends BaseSlickGridState { treeToggleItems: TreeToggledItem[]; isExcludingChildWhenFiltering: boolean; isAutoApproveParentItemWhenTreeColumnIsValid: boolean; + isAutoRecalcTotalsOnFilterChange: boolean; + isRemoveLastInsertedPopSongDisabled: boolean; + lastInsertedPopSongId: number | undefined; } export default class Example28 extends React.Component { title = 'Example 28: Tree Data (from a Hierarchical Dataset)'; subTitle = `