From 0235ad2408800a22c6161458249717f51d05bef4 Mon Sep 17 00:00:00 2001 From: ghiscoding Date: Sat, 14 Dec 2024 16:33:21 -0500 Subject: [PATCH] feat: upgrade to Slickgrid-Universal v5.11.0 --- package.json | 30 +++--- src/app-routing.ts | 2 + src/app.html | 11 ++ src/examples/data/users.csv | 5 + src/examples/example31.html | 49 +++++++++ src/examples/example31.ts | 102 ++++++++++++++++++ yarn.lock | 204 ++++++++++++++++++------------------ 7 files changed, 286 insertions(+), 117 deletions(-) create mode 100644 src/examples/data/users.csv create mode 100644 src/examples/example31.html create mode 100644 src/examples/example31.ts diff --git a/package.json b/package.json index 05bc78b..39b27f3 100644 --- a/package.json +++ b/package.json @@ -12,19 +12,19 @@ "@fnando/sparkline": "^0.3.10", "@formkit/tempo": "^0.1.2", "@slickgrid-universal/binding": "^5.10.2", - "@slickgrid-universal/common": "^5.10.2", - "@slickgrid-universal/composite-editor-component": "^5.10.2", - "@slickgrid-universal/custom-tooltip-plugin": "^5.10.2", - "@slickgrid-universal/excel-export": "^5.10.2", - "@slickgrid-universal/graphql": "^5.10.2", - "@slickgrid-universal/odata": "^5.10.2", - "@slickgrid-universal/row-detail-view-plugin": "^5.10.2", - "@slickgrid-universal/rxjs-observable": "^5.10.2", - "@slickgrid-universal/text-export": "^5.10.2", - "@slickgrid-universal/vanilla-bundle": "^5.10.2", - "@slickgrid-universal/vanilla-force-bundle": "^5.10.2", + "@slickgrid-universal/common": "^5.11.0", + "@slickgrid-universal/composite-editor-component": "^5.11.0", + "@slickgrid-universal/custom-tooltip-plugin": "^5.11.0", + "@slickgrid-universal/excel-export": "^5.11.0", + "@slickgrid-universal/graphql": "^5.11.0", + "@slickgrid-universal/odata": "^5.11.0", + "@slickgrid-universal/row-detail-view-plugin": "^5.11.0", + "@slickgrid-universal/rxjs-observable": "^5.11.0", + "@slickgrid-universal/text-export": "^5.11.0", + "@slickgrid-universal/vanilla-bundle": "^5.11.0", + "@slickgrid-universal/vanilla-force-bundle": "^5.11.0", "bulma": "^1.0.2", - "dompurify": "^3.2.2", + "dompurify": "^3.2.3", "moment-mini": "^2.29.4", "rxjs": "^7.8.1", "whatwg-fetch": "^3.6.20" @@ -33,10 +33,10 @@ "@rollup/plugin-dynamic-import-vars": "^2.1.5", "@types/fnando__sparkline": "^0.3.7", "@types/moment": "^2.13.0", - "@types/node": "^22.10.1", + "@types/node": "^22.10.2", "@types/whatwg-fetch": "^0.0.33", - "sass": "^1.82.0", + "sass": "^1.83.0", "typescript": "^5.7.2", - "vite": "^6.0.2" + "vite": "^6.0.3" } } diff --git a/src/app-routing.ts b/src/app-routing.ts index cec2750..02ee216 100644 --- a/src/app-routing.ts +++ b/src/app-routing.ts @@ -30,6 +30,7 @@ import Example27 from './examples/example27'; import Example28 from './examples/example28'; import Example29 from './examples/example29'; import Example30 from './examples/example30'; +import Example31 from './examples/example31'; export class AppRouting { constructor(private config: RouterConfig) { @@ -65,6 +66,7 @@ export class AppRouting { { route: 'example28', name: 'example28', view: './examples/example28.html', viewModel: Example28, title: 'Example28', }, { route: 'example29', name: 'example29', view: './examples/example29.html', viewModel: Example29, title: 'Example29', }, { route: 'example30', name: 'example30', view: './examples/example30.html', viewModel: Example30, title: 'Example30', }, + { route: 'example31', name: 'example31', view: './examples/example31.html', viewModel: Example31, title: 'Example31', }, { route: '', redirect: 'example01' }, { route: '**', redirect: 'example01' } ]; diff --git a/src/app.html b/src/app.html index 8191667..389bb81 100644 --- a/src/app.html +++ b/src/app.html @@ -125,6 +125,17 @@

Slickgrid-Universal

+ diff --git a/src/examples/data/users.csv b/src/examples/data/users.csv new file mode 100644 index 0000000..0d81e74 --- /dev/null +++ b/src/examples/data/users.csv @@ -0,0 +1,5 @@ +First Name,Last Name,Age,User Type +John,Doe,20,Student +Bob,Smith,33,Assistant Teacher +Jane,Doe,21,Student +Robert,Ken,42,Teacher diff --git a/src/examples/example31.html b/src/examples/example31.html new file mode 100644 index 0000000..59c4ca7 --- /dev/null +++ b/src/examples/example31.html @@ -0,0 +1,49 @@ +

+ Example 31 - Dynamically Create Grid from CSV / Excel import + +

+ +
+
+ Allow creating a grid dynamically by importing an external CSV or Excel file. + This script demo will read the CSV file and will consider the first row as the column header and create the column definitions accordingly, + while the next few rows will be considered the dataset. + Note that this example is demoing a CSV file import but in your application you could easily implemnt an Excel file uploading. +
+ +
+ A default CSV file can be download here. +
+ +
+
+ +
+ or +
+ +
+
+
+ +
+ +
+
\ No newline at end of file diff --git a/src/examples/example31.ts b/src/examples/example31.ts new file mode 100644 index 0000000..a20a8dd --- /dev/null +++ b/src/examples/example31.ts @@ -0,0 +1,102 @@ +import { type Column, type GridOption, toCamelCase } from '@slickgrid-universal/common'; +import { BindingEventService } from '@slickgrid-universal/binding'; +import { ExcelExportService } from '@slickgrid-universal/excel-export'; +import { Slicker, type SlickVanillaGridBundle } from '@slickgrid-universal/vanilla-bundle'; + +import { ExampleGridOptions } from './example-grid-options.js'; +import './example04.scss'; + +export default class Example31 { + staticDataCsv = `First Name,Last Name,Age,Type\nBob,Smith,33,Teacher\nJohn,Doe,20,Student\nJane,Doe,21,Student`; + private _bindingEventService: BindingEventService; + sgb: SlickVanillaGridBundle; + + constructor() { + this._bindingEventService = new BindingEventService(); + } + + attached() { + const uploadInputElm = document.getElementById('fileInput') as HTMLInputElement; + const staticBtnElm = document.getElementById('uploadBtn') as HTMLButtonElement; + this._bindingEventService.bind(uploadInputElm, 'change', this.handleFileImport.bind(this)); + this._bindingEventService.bind(staticBtnElm, 'click', () => this.dynamicallyCreateGrid(this.staticDataCsv)); + + const templateUrl = new URL('./data/users.csv', import.meta.url).href; + (document.getElementById('template-dl') as HTMLAnchorElement).href = templateUrl; + } + + dispose() { + this.sgb?.dispose(); + this._bindingEventService.unbindAll(); + } + + handleFileImport(event: any) { + const file = event.target.files[0]; + if (file) { + const reader = new FileReader(); + reader.onload = (e: any) => { + const content = e.target.result; + this.dynamicallyCreateGrid(content); + }; + reader.readAsText(file); + } + } + + dynamicallyCreateGrid(csvContent: string) { + // dispose of any previous grid before creating a new one + this.sgb?.dispose(); + + const dataRows = csvContent?.split('\n'); + const columnDefinitions: Column[] = []; + const dataset: any[] = []; + + // create column definitions + dataRows.forEach((dataRow, rowIndex) => { + const cellValues = dataRow.split(','); + const dataEntryObj: any = {}; + + if (rowIndex === 0) { + // the 1st row is considered to be the header titles, we can create the column definitions from it + for (const cellVal of cellValues) { + const camelFieldName = toCamelCase(cellVal); + columnDefinitions.push({ + id: camelFieldName, + name: cellVal, + field: camelFieldName, + filterable: true, + sortable: true, + }); + } + } else { + // at this point all column defs were created and we can loop through them and + // we can now start adding data as an object and then simply push it to the dataset array + cellValues.forEach((cellVal, colIndex) => { + dataEntryObj[columnDefinitions[colIndex].id] = cellVal; + }); + + // a unique "id" must be provided, if not found then use the row index and push it to the dataset + if ('id' in dataEntryObj) { + dataset.push(dataEntryObj); + } else { + dataset.push({ ...dataEntryObj, id: rowIndex }); + } + } + }); + + const gridOptions: GridOption = { + gridHeight: 300, + gridWidth: 800, + enableFiltering: true, + enableExcelExport: true, + externalResources: [new ExcelExportService()], + headerRowHeight: 35, + rowHeight: 33, + }; + + // for this use case, we need to recreate the grid container div because the previous grid.dispose() drops it + const gridContainerElm = document.createElement('div'); + gridContainerElm.className = 'grid31'; + document.querySelector('.grid-container-zone')!.appendChild(gridContainerElm); + this.sgb = new Slicker.GridBundle(gridContainerElm, columnDefinitions, { ...ExampleGridOptions, ...gridOptions }, dataset); + } +} diff --git a/yarn.lock b/yarn.lock index 557afce..bdd9514 100644 --- a/yarn.lock +++ b/yarn.lock @@ -374,10 +374,10 @@ resolved "https://registry.yarnpkg.com/@slickgrid-universal/binding/-/binding-5.10.2.tgz#3f5515c2445bbc891fa5bde61b08ce62591d48a4" integrity sha512-Hfn6ooFE28W9JOCLAOPDqlnrBJ1bfIkkXmV04bToCZk3SyKhUr6uYkmJMaMzs3S4U3a2aEe7srILPpLjfOmfmw== -"@slickgrid-universal/common@^5.10.2", "@slickgrid-universal/common@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/common/-/common-5.10.2.tgz#0b968df471344d9f4dd1581b9fc7538d2ad5bd50" - integrity sha512-yE6yw+23xC8LcA5+aPkcF/mexKFzX7qgWl4iGkDPDTA3RQaEYVWiv25XQWjwomti9CH9pnsBTRjLduEDm2NDDw== +"@slickgrid-universal/common@^5.11.0", "@slickgrid-universal/common@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/common/-/common-5.11.0.tgz#9708e732b1b8080ac7feb49f6eaacd28dcd0b77b" + integrity sha512-+lNvysOFL/CD++m47KcixYlkRG4ywgwwAqIW7mFWHk4m5ZikQst3i8PPPK2GZo+U4r370Jb/F768dtvr9nALHQ== dependencies: "@excel-builder-vanilla/types" "^3.0.14" "@formkit/tempo" "^0.1.2" @@ -389,42 +389,42 @@ autocompleter "^9.3.2" dequal "^2.0.3" multiple-select-vanilla "^3.4.4" - sortablejs "^1.15.3" + sortablejs "^1.15.6" un-flatten-tree "^2.0.12" vanilla-calendar-pro "^2.9.10" -"@slickgrid-universal/composite-editor-component@^5.10.2", "@slickgrid-universal/composite-editor-component@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/composite-editor-component/-/composite-editor-component-5.10.2.tgz#7ba7a37ea86beb5794b1d7cf6a3576a68867b4e8" - integrity sha512-7pi3AmB2GiQzA0GHJnu+bp+sfB7i51Td2fUNrLlxxSrJu5YpoHhMye52MFKA6Tv/fTnePvnOBEyml+psrjIdLQ== +"@slickgrid-universal/composite-editor-component@^5.11.0", "@slickgrid-universal/composite-editor-component@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/composite-editor-component/-/composite-editor-component-5.11.0.tgz#0eedc2216bc3b7e26284fa759f41107512fd5a6e" + integrity sha512-zI5cXIqnXupAxzfh7ZQJjXmJVUwYLk21lNrskau/HN7XSYKvnvLPyGYMWH1CGWmwMCKyGZ+yrhBzaqhzmXa2ew== dependencies: "@slickgrid-universal/binding" "~5.10.2" - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" -"@slickgrid-universal/custom-footer-component@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/custom-footer-component/-/custom-footer-component-5.10.2.tgz#8c133048c5cde8d30db195cea63e0022ffb28522" - integrity sha512-MgQr7N6gzs6pomrzBpvCxptS+faq4rs5WNITppw/uHa/bjprJltr80/dzvxlsGQHsug+ikspOuK8lxkKESxC/A== +"@slickgrid-universal/custom-footer-component@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/custom-footer-component/-/custom-footer-component-5.11.0.tgz#3bb36816e040532ef2e53bb97bc13b41eaf889cf" + integrity sha512-mV5SQWklV2rTJi5RonGe8cGjtVAyP/YulxFO1TJe71DTDh8lR1Z+3QM7/5UKuamPxse+a0wntizErVxCwZdPBw== dependencies: "@formkit/tempo" "^0.1.2" "@slickgrid-universal/binding" "~5.10.2" - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" -"@slickgrid-universal/custom-tooltip-plugin@^5.10.2", "@slickgrid-universal/custom-tooltip-plugin@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/custom-tooltip-plugin/-/custom-tooltip-plugin-5.10.2.tgz#205ad1aa7977ec505c1636cd403542c040e0f57c" - integrity sha512-xzN1fqAH5ma8vnmHIITGbx1C57famagvTZbW60Lh+Nqpd+WfseEAXSG9iwBGnZg7irdZLNzIwC6TadbYfNGTZQ== +"@slickgrid-universal/custom-tooltip-plugin@^5.11.0", "@slickgrid-universal/custom-tooltip-plugin@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/custom-tooltip-plugin/-/custom-tooltip-plugin-5.11.0.tgz#7f96237ca627ac051c5504e0194481f65c41eeda" + integrity sha512-GG1t96BILm/0bh70xWn/ocZ+EmnqVIY1Kf8ZmA9YVLfGBw5mleYDxe4CE/L5WvyguFIAhffI4q2rcRBE16/pRA== dependencies: - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" -"@slickgrid-universal/empty-warning-component@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/empty-warning-component/-/empty-warning-component-5.10.2.tgz#8cd2218eaf12f9e3c7ba73d3b60946be8d4e9e0e" - integrity sha512-LSXzWcyypK6xirZZDTrKIxY2HS0jCr90CTL7V4c9Vb1B8Nv0CGte4L686cwNxg6MK8oT9SLgMqLgtjSSa7g1Dg== +"@slickgrid-universal/empty-warning-component@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/empty-warning-component/-/empty-warning-component-5.11.0.tgz#18a8649d3c7e9b06897291304ec9876114b12dc9" + integrity sha512-3SU8zk8sC9Oim2RlLwYCyK1QpVkAV7MjPtOXTn8lFvFJCRclJE9zgmQ70/Ptb7myMbg3CZSJCWX6YU2QnG7yYA== dependencies: - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" "@slickgrid-universal/event-pub-sub@~5.10.2": version "5.10.2" @@ -433,61 +433,61 @@ dependencies: "@slickgrid-universal/utils" "~5.10.2" -"@slickgrid-universal/excel-export@^5.10.2", "@slickgrid-universal/excel-export@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/excel-export/-/excel-export-5.10.2.tgz#025345148c451ab457ce83b84b33805deaca2c48" - integrity sha512-x6YtYpTdJcI9u98B4xU25L+DzVvOvk/8W63/qerLcap0hUUTjcTOotamglcGL41WI67UJ8vKAJEDLtErm8hQ+Q== +"@slickgrid-universal/excel-export@^5.11.0", "@slickgrid-universal/excel-export@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/excel-export/-/excel-export-5.11.0.tgz#7ba36943a9c5b9d51d4aad74a89880f23813c768" + integrity sha512-iIGepwYYrnZ0mu1ZAZugnUUNByicdlQ4ojdd9ddvbuAjYG4p2JdjqqIxL4eQq3Dd0SJbKzEVaiXKpb/rXOXqZw== dependencies: - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" excel-builder-vanilla "^3.0.14" -"@slickgrid-universal/graphql@^5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/graphql/-/graphql-5.10.2.tgz#b643680856261eacfa6752b37535ed8e344fd8c7" - integrity sha512-06zVCdL3fWmtXkccVVUtvSmwcNgsJ4JASxUk0hLWRJ8mRR0MtU4AWRRynND8tlxbDSo/VWPkPxrx3tcbBCROrA== +"@slickgrid-universal/graphql@^5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/graphql/-/graphql-5.11.0.tgz#543cf5c26eb5b86ef9dcc85c8433b64fa8260a1c" + integrity sha512-Fd8Xy5WMlFvwVHUXlbLrtUTd4ZOOlw+bCBZ3x+pi39ZMVxztGowBn1ayi7iUfaFMYEiCNlsXIaoYx+LqfTDAjw== dependencies: - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" -"@slickgrid-universal/odata@^5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/odata/-/odata-5.10.2.tgz#5a471bf42da57373f8f3ce1ac04f26b1bdc3f8db" - integrity sha512-yfWc2VJ7pwjTPG56cRefeDALHkxQSkMJ8YP6eq7ZWqg14/m30pCAkq2w7N15JMokw63+G2CXwP/KU2xFy/AH4g== +"@slickgrid-universal/odata@^5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/odata/-/odata-5.11.0.tgz#d385627679596a8adff071269d3942d5a2f1cf84" + integrity sha512-P3abiZfIP6aNTRKDgnSEqwa167YpBKSZSEgMct+oU4haP+Xc9bX9mJxZlP0sog/ClOCwVXdHQHzGvRlQhZPyug== dependencies: - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" -"@slickgrid-universal/pagination-component@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/pagination-component/-/pagination-component-5.10.2.tgz#66935752a2fd2702a67ad96b0dc59956125adf6f" - integrity sha512-rhspG1Lh5+ZUl96609p+NooDbAdzMMpkFsXxNW9jJWV9MnLQfg78FNDBG4zg/mLuVMW2SqNQ5p+N9TJS9TWbZg== +"@slickgrid-universal/pagination-component@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/pagination-component/-/pagination-component-5.11.0.tgz#93cd547dd0ba81ffdcc5b33d2c868a3738f1ff53" + integrity sha512-3Eq6aMcezmCVshveMW00wjDmLcK2hxEcG7qEjz2swFUyk8dy/RQM6bkScUl3670xfqwMcfTVKXjOydKC/OvdeA== dependencies: "@slickgrid-universal/binding" "~5.10.2" - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" -"@slickgrid-universal/row-detail-view-plugin@^5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/row-detail-view-plugin/-/row-detail-view-plugin-5.10.2.tgz#f2490ae246f226869441836c1ea4f87a6c030a29" - integrity sha512-XKwaHun1hhShguadz9OgzxvqFKkUFHdA1rEFJXC5t60cuTa4J0j7xWe9HWrNcu4d+ywmXvhWZWW4QPyXEb7f7g== +"@slickgrid-universal/row-detail-view-plugin@^5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/row-detail-view-plugin/-/row-detail-view-plugin-5.11.0.tgz#2df353d011cca71a39a6436d62db055b5f5323ab" + integrity sha512-v58lW77QphQiTTKAyZDecCMIILO8vqgTh6rwAfN2u7+jcSitUUbi7c/vr9c9Yboa2FLkudgYcEbWBmuhyAeNpw== dependencies: - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" -"@slickgrid-universal/rxjs-observable@^5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/rxjs-observable/-/rxjs-observable-5.10.2.tgz#d82b748da601eaf481b27de1b76c0dfee76b2d79" - integrity sha512-4D/XvaWYCj7kL8a2SNQaSIG99W7dzb/qjo4rYv6M3YfqMI22LxkcRW53gBBTl48QuGPM7W4uEH7Y4qqb5rxH8g== +"@slickgrid-universal/rxjs-observable@^5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/rxjs-observable/-/rxjs-observable-5.11.0.tgz#7ae4166c7f840e5da24e3c5e1d02d198ae5ea508" + integrity sha512-HhuVrVcaH5abpYNmmBa3h8Z3RqyhhKzP/cUDzZAy3AoRB14bnC3KODr07VOJIg/LCajLZCx1e4t/GcGW1fS1Kg== dependencies: - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" rxjs "^7.8.1" -"@slickgrid-universal/text-export@^5.10.2", "@slickgrid-universal/text-export@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/text-export/-/text-export-5.10.2.tgz#6f22ee2c7e9ba71ab4d68b987dd384a2b525f119" - integrity sha512-H+pyyiwArkBfFhMqPpSzqIzADlIZLkJuyQFVlSsxsegmTa9wHp9qGL+Y4ugfs77oQXZ5isRaUS53TW6ByRjtIg== +"@slickgrid-universal/text-export@^5.11.0", "@slickgrid-universal/text-export@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/text-export/-/text-export-5.11.0.tgz#185fabb6c96ee3ecdbee55b6b051772818cc3aa6" + integrity sha512-KprafJz0+adqYpy3Wz0QyDJQXkKcjulfHMZsEMy/VVr8jauLsZzzXeDzUSQNos78SZby/XuC7GREzhk6GRf1IQ== dependencies: - "@slickgrid-universal/common" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" text-encoding-utf-8 "^1.0.2" @@ -496,39 +496,39 @@ resolved "https://registry.yarnpkg.com/@slickgrid-universal/utils/-/utils-5.10.2.tgz#2a2a30bc94d306bb47af82a310900ed74f98ff88" integrity sha512-cijV2/u3xKnfdUinaJeQNcoZuLy+9J4EgYSfUpNX22kanp948uKOICQxVrlb7Lj82Ki0U+vtuQ+fS59KQD3YOQ== -"@slickgrid-universal/vanilla-bundle@^5.10.2", "@slickgrid-universal/vanilla-bundle@~5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/vanilla-bundle/-/vanilla-bundle-5.10.2.tgz#c20f154a84ad980a525abe5bd4bf16b727abf303" - integrity sha512-rX9hqrjRCx6hCjHWU3BJN/OR1F+D9iaIO9IidD9LXyabsp5b1m7LHKUrw+YzAoK9hbbh54Zr/kKbYNDTvDZOmg== +"@slickgrid-universal/vanilla-bundle@^5.11.0", "@slickgrid-universal/vanilla-bundle@~5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/vanilla-bundle/-/vanilla-bundle-5.11.0.tgz#d37feffef3625e2e7a5c2bb369513493e9569c88" + integrity sha512-pC6tRHwMA+Qr2eTJl8KZNwBVUCrfs0oOc22FrZXrjC54Y35KPQ3+pse7m+XI2fSYx1WNIb5Y43uOJG3/njnkXA== dependencies: "@slickgrid-universal/binding" "~5.10.2" - "@slickgrid-universal/common" "~5.10.2" - "@slickgrid-universal/custom-footer-component" "~5.10.2" - "@slickgrid-universal/empty-warning-component" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" + "@slickgrid-universal/custom-footer-component" "~5.11.0" + "@slickgrid-universal/empty-warning-component" "~5.11.0" "@slickgrid-universal/event-pub-sub" "~5.10.2" - "@slickgrid-universal/pagination-component" "~5.10.2" + "@slickgrid-universal/pagination-component" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" dequal "^2.0.3" - sortablejs "^1.15.3" + sortablejs "^1.15.6" whatwg-fetch "^3.6.20" -"@slickgrid-universal/vanilla-force-bundle@^5.10.2": - version "5.10.2" - resolved "https://registry.yarnpkg.com/@slickgrid-universal/vanilla-force-bundle/-/vanilla-force-bundle-5.10.2.tgz#cd51c28c4270c636bd145eb1117a866969150a6a" - integrity sha512-e9+Z7pdidiQFfY/xbib0qrsIrYraLWEEL0uBadIqsNP3Qz7ZtCfvKIzCx7HbcLVRu1TwDoxP6MsGzZU7IkOh4Q== +"@slickgrid-universal/vanilla-force-bundle@^5.11.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@slickgrid-universal/vanilla-force-bundle/-/vanilla-force-bundle-5.11.0.tgz#64533d379ef65b1ad2480d973e11a3faeb39f53c" + integrity sha512-C1d6c0TydSCr6+G4Jxe4AvoG5N5+zP8lNz/KurksUhZJPWn+c1GRXk/zr6CiNmw34buVQO7Se8+7xroiuqMSHw== dependencies: "@slickgrid-universal/binding" "~5.10.2" - "@slickgrid-universal/common" "~5.10.2" - "@slickgrid-universal/composite-editor-component" "~5.10.2" - "@slickgrid-universal/custom-footer-component" "~5.10.2" - "@slickgrid-universal/custom-tooltip-plugin" "~5.10.2" - "@slickgrid-universal/empty-warning-component" "~5.10.2" + "@slickgrid-universal/common" "~5.11.0" + "@slickgrid-universal/composite-editor-component" "~5.11.0" + "@slickgrid-universal/custom-footer-component" "~5.11.0" + "@slickgrid-universal/custom-tooltip-plugin" "~5.11.0" + "@slickgrid-universal/empty-warning-component" "~5.11.0" "@slickgrid-universal/event-pub-sub" "~5.10.2" - "@slickgrid-universal/excel-export" "~5.10.2" - "@slickgrid-universal/pagination-component" "~5.10.2" - "@slickgrid-universal/text-export" "~5.10.2" + "@slickgrid-universal/excel-export" "~5.11.0" + "@slickgrid-universal/pagination-component" "~5.11.0" + "@slickgrid-universal/text-export" "~5.11.0" "@slickgrid-universal/utils" "~5.10.2" - "@slickgrid-universal/vanilla-bundle" "~5.10.2" + "@slickgrid-universal/vanilla-bundle" "~5.11.0" whatwg-fetch "^3.6.20" "@types/estree@1.0.6": @@ -553,10 +553,10 @@ dependencies: moment "*" -"@types/node@^22.10.1": - version "22.10.1" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.10.1.tgz#41ffeee127b8975a05f8c4f83fb89bcb2987d766" - integrity sha512-qKgsUwfHZV2WCWLAnVP1JqnpE6Im6h3Y0+fYgMTasNQ7V++CBX5OT1as0g0f+OyubbFqhf6XVNIsmN4IIhEgGQ== +"@types/node@^22.10.2": + version "22.10.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.10.2.tgz#a485426e6d1fdafc7b0d4c7b24e2c78182ddabb9" + integrity sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ== dependencies: undici-types "~6.20.0" @@ -638,10 +638,10 @@ detect-libc@^1.0.3: resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== -dompurify@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.2.2.tgz#6c0518745e81686c74a684f5af1e5613e7cc0246" - integrity sha512-YMM+erhdZ2nkZ4fTNRTSI94mb7VG7uVF5vj5Zde7tImgnhZE3R6YW/IACGIHb2ux+QkEXMhe591N+5jWOmL4Zw== +dompurify@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.2.3.tgz#05dd2175225324daabfca6603055a09b2382a4cd" + integrity sha512-U1U5Hzc2MO0oW3DF+G9qYN0aT7atAou4AgI0XjWz061nyBPbdxkfdhfy5uMgGn6+oLFCfn44ZGbdDqCzVmlOWA== optionalDependencies: "@types/trusted-types" "^2.0.7" @@ -895,10 +895,10 @@ rxjs@^7.8.1: dependencies: tslib "^2.1.0" -sass@^1.82.0: - version "1.82.0" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.82.0.tgz#30da277af3d0fa6042e9ceabd0d984ed6d07df70" - integrity sha512-j4GMCTa8elGyN9A7x7bEglx0VgSpNUG4W4wNedQ33wSMdnkqQCT8HTwOaVSV4e6yQovcu/3Oc4coJP/l0xhL2Q== +sass@^1.83.0: + version "1.83.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.83.0.tgz#e36842c0b88a94ed336fd16249b878a0541d536f" + integrity sha512-qsSxlayzoOjdvXMVLkzF84DJFc2HZEL/rFyGIKbbilYtAvlCxyuzUeff9LawTn4btVnLKg75Z8MMr1lxU1lfGw== dependencies: chokidar "^4.0.0" immutable "^5.0.2" @@ -906,10 +906,10 @@ sass@^1.82.0: optionalDependencies: "@parcel/watcher" "^2.4.1" -sortablejs@^1.15.3: - version "1.15.3" - resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.15.3.tgz#033668db5ebfb11167d1249ab88e748f27959e29" - integrity sha512-zdK3/kwwAK1cJgy1rwl1YtNTbRmc8qW/+vgXf75A7NHag5of4pyI6uK86ktmQETyWRH7IGaE73uZOOBcGxgqZg== +sortablejs@^1.15.6: + version "1.15.6" + resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.15.6.tgz#ff93699493f5b8ab8d828f933227b4988df1d393" + integrity sha512-aNfiuwMEpfBM/CN6LY0ibyhxPfPbyFeBTYJKCvzkJ2GkUpazIt3H+QIPAMHwqQ7tMKaHz1Qj+rJJCqljnf4p3A== "source-map-js@>=0.6.2 <2.0.0": version "1.0.2" @@ -975,10 +975,10 @@ vanilla-calendar-pro@^2.9.10: resolved "https://registry.yarnpkg.com/vanilla-calendar-pro/-/vanilla-calendar-pro-2.9.10.tgz#a82e00ec8f92666c5609e1f3490429708e513d28" integrity sha512-0yqWqlvitfQSRqjyVVr613whIgp62qC1JHgXyLalcJkNkMRZXRqEr+QQQvRdQavB2PBgB4HW+GM6VU4KU0K3Ng== -vite@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/vite/-/vite-6.0.2.tgz#7a22630c73c7b663335ddcdb2390971ffbc14993" - integrity sha512-XdQ+VsY2tJpBsKGs0wf3U/+azx8BBpYRHFAyKm5VeEZNOJZRB63q7Sc8Iup3k0TrN3KO6QgyzFf+opSbfY1y0g== +vite@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/vite/-/vite-6.0.3.tgz#cc01f403e326a9fc1e064235df8a6de084c8a491" + integrity sha512-Cmuo5P0ENTN6HxLSo6IHsjCLn/81Vgrp81oaiFFMRa8gGDj5xEjIcEpf2ZymZtZR8oU0P2JX5WuUp/rlXcHkAw== dependencies: esbuild "^0.24.0" postcss "^8.4.49"