diff --git a/lib/app/communications/comments.js b/lib/app/communications/comments.js index ac8be82..7c47a27 100644 --- a/lib/app/communications/comments.js +++ b/lib/app/communications/comments.js @@ -25,6 +25,18 @@ export default class CustomerRecordComment { } } + get messageHidden() { return this._var.option.showCommentHidden } + set messageHidden(flag) { + const el = this._var.container.querySelector('.msgadminsetting'); + if (el == null) { + return; + } + this._var.option.showCommentHidden = flag; + // TODO: 是否与参数 flag 无关 + el.classList.remove('iconview'); + el.classList.add('iconnotview'); + } + /** * @param {boolean} flag */ @@ -50,13 +62,35 @@ export default class CustomerRecordComment { } create() { + const option = this._var.option; const readonly = this._var.option.readonly; + const spanv = createElement('span'); + if (option.userIsAdmin) { + spanv.className = 'msgadminsetting sbutton iconnotview'; + spanv.style.padding = '0px 0px 0px 5px'; + spanv.addEventListener('click', function () { + if (!option.showCommentHidden) { + this.classList.remove('iconnotview'); + this.classList.add('iconview'); + option.showCommentHidden = true; + container.querySelectorAll('.msgsetting').forEach(x => x.style.display = ''); + } else { + this.classList.remove('iconview'); + this.classList.add('iconnotview'); + option.showCommentHidden = false; + container.querySelectorAll('.msgsetting').forEach(x => x.style.display = 'none'); + } + + }); + } const container = createBox( createElement('div', null, createElement('div', div => { div.className = 'title-module'; div.innerText = r('P_CR_COMMENTS', 'Comments'); - }) + }, + spanv + ) ), [ createElement('button', button => { @@ -120,7 +154,7 @@ export default class CustomerRecordComment { return this._var.container = container; } - load(data) { + load(data, func) { const children = []; if (data?.length > 0) { for (let comment of data) { @@ -145,8 +179,28 @@ export default class CustomerRecordComment { content, createElement('div', div => { div.className = 'item-time'; - div.innerText = comment.SubmitLocalDateStr; - }) + }, + createElement('span', span => { + span.className = 'msgsetting sbutton ' + (comment.Hidden ? 'iconnotview' : 'iconview'); + span.style.padding = '0px 0px 0px 5px'; + span.style.fontSize = '12px'; + span.style.display = this._var.option.showCommentHidden ? '' : 'none'; + span.addEventListener('click', function () { + if (this.classList.contains('iconview')) { + func(comment.Id, true); + this.classList.remove('iconview'); + this.classList.add('iconnotview'); + } else { + func(comment.Id, false); + this.classList.remove('iconnotview'); + this.classList.add('iconview'); + } + }); + }), + createElement('span', span => { + span.innerText = comment.SubmitLocalDateStr; + }) + ) ); children.push(div); } diff --git a/lib/app/communications/customer.js b/lib/app/communications/customer.js index 7650055..c0fa52d 100644 --- a/lib/app/communications/customer.js +++ b/lib/app/communications/customer.js @@ -69,6 +69,18 @@ export default class CustomerCommunication { element.dispatchEvent(new Event('change')); } + get messageHidden() { return this._var.option.showMessageHidden } + set messageHidden(flag) { + const el = this._var.container.querySelector('.msgadminsetting'); + if (el == null) { + return; + } + this._var.option.showMessageHidden = flag; + // TODO: 是否与参数 flag 无关 + el.classList.remove('iconview'); + el.classList.add('iconnotview'); + } + get _statusLink() { return this._var.container.querySelector('.check-status-link>input') } get statusLinkEnabled() { return this._statusLink?.disabled !== true } set statusLinkEnabled(flag) { @@ -413,12 +425,33 @@ export default class CustomerCommunication { if (option.statusLinkVisible === false) { checkLink.style.display = 'none'; } + const spanv = createElement('span'); + if (option.userIsAdmin) { + spanv.className = 'msgadminsetting sbutton iconnotview'; + spanv.style.padding = '0px 0px 0px 5px'; + spanv.addEventListener('click', function () { + if (!option.showMessageHidden) { + this.classList.remove('iconnotview'); + this.classList.add('iconview'); + option.showMessageHidden = true; + container.querySelectorAll('.msgsetting').forEach(x => x.style.display = ''); + } else { + this.classList.remove('iconview'); + this.classList.add('iconnotview'); + option.showMessageHidden = false; + container.querySelectorAll('.msgsetting').forEach(x => x.style.display = 'none'); + } + }); + } + const container = createBox( createElement('div', null, createElement('div', div => { div.className = 'title-module'; div.innerText = option.title ?? r('P_WO_CUSTOMERCOMMUNICATION', 'Customer Communication'); - }), + }, + spanv + ), createElement('div', div => { div.className = 'title-company'; if (nullOrEmpty(option.companyName)) { @@ -1146,7 +1179,7 @@ export default class CustomerCommunication { return followers; } - load(data, contacts, followers) { + load(data, contacts, followers, func) { const children = []; if (data?.length > 0) { contacts ??= this._var.data.contacts; @@ -1216,8 +1249,28 @@ export default class CustomerCommunication { content, createElement('div', div => { div.className = 'item-time'; - div.innerText = comm.TimeStr; - }) + }, + createElement('span', span => { + span.className = 'msgsetting sbutton ' + (comm.Hidden ? 'iconnotview' : 'iconview'); + span.style.padding = '0px 0px 0px 5px'; + span.style.fontSize = '12px'; + span.style.display = this._var.option.showMessageHidden ? '' : 'none'; + span.addEventListener('click', function () { + if (this.classList.contains('iconview')) { + func(comm.Id, true); + this.classList.remove('iconview'); + this.classList.add('iconnotview'); + } else { + func(comm.Id, false); + this.classList.remove('iconnotview'); + this.classList.add('iconview'); + } + }); + }), + createElement('span', span => { + span.innerText = comm.TimeStr; + }) + ) ); children.push(div); } diff --git a/lib/app/communications/internal.js b/lib/app/communications/internal.js index e3d92fc..0949c22 100644 --- a/lib/app/communications/internal.js +++ b/lib/app/communications/internal.js @@ -32,6 +32,18 @@ export default class InternalComment { } } + get messageHidden() { return this._var.option.showCommentHidden } + set messageHidden(flag) { + const el = this._var.container.querySelector('.msgadminsetting'); + if (el == null) { + return; + } + this._var.option.showMessageHidden = flag; + // TODO: 是否与参数 flag 无关 + el.classList.remove('iconview'); + el.classList.add('iconnotview'); + } + /** * @param {any} contacts */ @@ -110,7 +122,28 @@ export default class InternalComment { createElement('div', div => { div.className = 'title-module'; div.innerText = r('P_WO_INTERNALCOMMENTS', 'Internal Comments'); - }) + }, + createElement('span', span => { + if (option.userIsAdmin) { + span.className = 'msgadminsetting sbutton iconnotview'; + span.style.padding = '0px 0px 0px 5px'; + span.addEventListener('click', function () { + if (!option.showMessageHidden) { + this.classList.remove('iconnotview'); + this.classList.add('iconview'); + option.showMessageHidden = true; + container.querySelectorAll('.msgsetting').forEach(x => x.style.display = ''); + } + else { + this.classList.remove('iconview'); + this.classList.add('iconnotview'); + option.showMessageHidden = false; + container.querySelectorAll('.msgsetting').forEach(x => x.style.display = 'none'); + } + }); + } + }) + ) ), [] ); const readonly = option.readonly; @@ -245,7 +278,7 @@ export default class InternalComment { return this._var.container = container; } - load(data) { + load(data, func) { const children = []; if (data?.length > 0) { this._var.comments = data; @@ -302,8 +335,28 @@ export default class InternalComment { content, createElement('div', div => { div.className = 'item-time'; - div.innerText = comment.TimeStr; - }) + }, + createElement('span', span => { + span.className = 'msgsetting sbutton ' + (comment.Hidden ? 'iconnotview' : 'iconview'); + span.style.padding = '0px 0px 0px 5px'; + span.style.fontSize = '12px'; + span.style.display = this._var.option.showMessageHidden ? '' : 'none'; + span.addEventListener('click', function () { + if (this.classList.contains('iconview')) { + func(comment.Id, true); + this.classList.remove('iconview'); + this.classList.add('iconnotview'); + } else { + func(comment.Id, false); + this.classList.remove('iconnotview'); + this.classList.add('iconview'); + } + }); + }), + createElement('span', span => { + span.innerText = comment.TimeStr; + }) + ) ); children.push(div); } diff --git a/lib/ui/grid/grid.js b/lib/ui/grid/grid.js index 01331c3..0178eb3 100644 --- a/lib/ui/grid/grid.js +++ b/lib/ui/grid/grid.js @@ -367,6 +367,7 @@ let r = lang; * @param {(boolean | string | number)} value - 修改后的值 * @param {(boolean | string | number)} oldValue - 修改前的值 * @param {any} [e] - 列修改事件传递过来的任意对象 + * @param {GridExpandableObject} [expandableObject] - 列展开元素对象 * @this Grid * @memberof GridColumnDefinition */ @@ -610,6 +611,12 @@ export class Grid { * @private */ currentSource: null, + /** + * 当前是否已全部展开 + * @type {boolean} + * @private + */ + expanded: false, /** * 列可用性的关联字典 * @type {KeyMap} @@ -2137,7 +2144,7 @@ export class Grid { align: c.align, visible: c.visible })), - source: this.source.map(s => { + source: this.source?.map(s => { const item = Object.create(null); for (let c of this.columns) { if (c.key == null) { @@ -2167,15 +2174,42 @@ export class Grid { } let val; val = s[prop]; - if (val != null) { - if (Object.prototype.hasOwnProperty.call(val, 'DisplayValue')) { - val = val.DisplayValue; - } + if (val != null && Object.prototype.hasOwnProperty.call(val, 'DisplayValue')) { + val = val.DisplayValue; } item[prop] = val; } return item; - }), + }) ?? [], + total: ((total) => { + if (total == null) { + return null; + } + const item = Object.create(null); + for (let c of this.columns) { + if (c.key == null) { + continue; + } + let val = total[c.key]; + if (val != null && Object.prototype.hasOwnProperty.call(val, 'DisplayValue') && val.Value === val.DisplayValue) { + val = val.DisplayValue; + } + val ??= ''; + item[c.key] = val; + } + for (let prop of Object.keys(total)) { + if (Object.prototype.hasOwnProperty.call(item, prop)) { + continue; + } + let val; + val = total[prop]; + if (val != null && Object.prototype.hasOwnProperty.call(val, 'DisplayValue')) { + val = val.DisplayValue; + } + item[prop] = val; + } + return item; + })(this.total), rowHeight: this.rowHeight, sortDirection: this.sortDirection, sortKey: this.sortKey, @@ -2236,10 +2270,32 @@ export class Grid { } }) working = true; - worker.postMessage({ type: 'init', path: ScriptPath.replace(/ui\.min\.js$/, 'wasm_flate_bg.wasm') }); + worker.postMessage({ type: 'init', path: ScriptPath }); }); } + /** + * 展开/收折所有行 + * @param {boolean} [expanded] - 是否展开,传 null 则切换展开状态 + * @returns {boolean} 展开状态 + */ + expandAll(expanded) { + if (this._var.currentSource == null) { + return; + } + if (expanded == null) { + expanded = !this._var.expanded; + } else { + expanded = expanded !== false; + } + this._var.expanded = expanded; + for (let vals of this._var.currentSource) { + vals.__expanded = expanded; + } + this.refresh(); + return expanded; + } + /** * @private * @callback PrivateGridComparerCallback @@ -3892,10 +3948,11 @@ export class Grid { } const enabled = isFunction ? col.enabled(item) : isString ? item[col.enabled] : col.enabled; if (enabled !== false) { + const old = item[key]; item[key] = flag; row.__changed = true; if (typeof col.onChanged === 'function') { - col.onChanged.call(this, item, flag); + col.onChanged.call(this, item, flag, old, void 0, row.__expandable_object); } } } @@ -4209,7 +4266,7 @@ export class Grid { }); vals.__changed = true; if (typeof col.onChanged === 'function') { - col.onChanged.call(this, item, v, oldValue, e); + col.onChanged.call(this, item, v, oldValue, e, vals.__expandable_object); } } } diff --git a/package-lock.json b/package-lock.json index b470018..7beb4f7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,10 +12,10 @@ "clean-jsdoc-theme": "^4.2.18", "docdash": "^2.0.2", "jsdoc": "^4.0.2", - "postcss-preset-env": "^9.5.5", + "postcss-preset-env": "^9.5.9", "sass": "^1.75.0", "typedoc": "^0.25.13", - "vite": "^5.2.8", + "vite": "^5.2.10", "vite-plugin-externals": "^0.6.2" } }, @@ -55,9 +55,9 @@ } }, "node_modules/@csstools/color-helpers": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-4.1.0.tgz", - "integrity": "sha512-pWRKF6cDwget8HowIIf2MqEmqIca/cf8/jO4b3PRtUF5EfQXYMtBIKycXB4yXTCUmwLKOoRZAzh/hjnc7ywOIg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-4.2.0.tgz", + "integrity": "sha512-hJJrSBzbfGxUsaR6X4Bzd/FLx0F1ulKnR5ljY9AiXCtsR+H+zSWQDFWlKES1BRaVZTDHLpIIHS9K2o0h+JLlrg==", "dev": true, "funding": [ { @@ -97,9 +97,9 @@ } }, "node_modules/@csstools/css-color-parser": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-1.6.3.tgz", - "integrity": "sha512-pQPUPo32HW3/NuZxrwr3VJHE+vGqSTVI5gK4jGbuJ7eOFUrsTmZikXcVdInCVWOvuxK5xbCzwDWoTlZUCAKN+A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-2.0.0.tgz", + "integrity": "sha512-0/v6OPpcg+b8TJT2N1Rcp0oH5xEvVOU5K2qDkaR3IMHNXuJ7XfVCQLINt3Cuj8mr54DbilEoZ9uvAmHBoZ//Fw==", "dev": true, "funding": [ { @@ -112,7 +112,7 @@ } ], "dependencies": { - "@csstools/color-helpers": "^4.1.0", + "@csstools/color-helpers": "^4.2.0", "@csstools/css-calc": "^1.2.0" }, "engines": { @@ -214,9 +214,9 @@ } }, "node_modules/@csstools/postcss-color-function": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-3.0.13.tgz", - "integrity": "sha512-gM24cIPU45HSPJ2zllz7VKjS1OKQS1sKOMI7Wsw8gFyXSGAGrxhYo++McylOqOXd8ecMaKxKQMUJqJVibvJYig==", + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-3.0.14.tgz", + "integrity": "sha512-joGAf5bT3Jg1CpybupMJ4DwNg/VNjmLWZoWMDmX0MTy/ftHA1Qr4+CslqTT4AA1n6Dx4Wa+DSMGPrDLHtRP0jg==", "dev": true, "funding": [ { @@ -229,7 +229,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4", "@csstools/postcss-progressive-custom-properties": "^3.2.0", @@ -243,9 +243,9 @@ } }, "node_modules/@csstools/postcss-color-mix-function": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-2.0.13.tgz", - "integrity": "sha512-mD8IIfGVeWkN1H1wfCqYePOg4cDnVrOXm4P0OlYcvKriq6sImGCGShv/2D88q6s3iUlLXfUBES+DUjLVjDMhnw==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-2.0.14.tgz", + "integrity": "sha512-ZLbgtdhyuOoWoRo/W8jFv68q+IMgTJHOAI+WunRbrRPqI+vJ0K2rud/lS9Se5urzM/imVKs/kz0Uobm5Yj4HUg==", "dev": true, "funding": [ { @@ -258,7 +258,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4", "@csstools/postcss-progressive-custom-properties": "^3.2.0", @@ -325,9 +325,9 @@ } }, "node_modules/@csstools/postcss-gamut-mapping": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-1.0.6.tgz", - "integrity": "sha512-qGFpHU9cRf9qqkbHh9cWMTlBtGi/ujPgP/znQdwkbB4TgDR1ddI5wRRrksBsx64sfoUSlIEd70bxXzD9FtfdLg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-1.0.7.tgz", + "integrity": "sha512-vrsHsl5TN6NB5CT0rPG6JE9V2GLFftcmPtF/k4cWT4gyVMCsDyS9wEVl82sgvh/JQ32TaUo6bh8Ndl+XRJqGQw==", "dev": true, "funding": [ { @@ -340,7 +340,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4" }, @@ -352,9 +352,9 @@ } }, "node_modules/@csstools/postcss-gradients-interpolation-method": { - "version": "4.0.14", - "resolved": "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-4.0.14.tgz", - "integrity": "sha512-VMWC3xtpchHJoRBb/fs1gJR/5nHopX+0GwwmgdCI1DjROtfWUKIW0nv8occ922Gv0/Lk93XBtYBv8JttVBMZUQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-4.0.15.tgz", + "integrity": "sha512-0xQ5r4WU/6W2lDmnOTx9liC1Cq6RSnrkEzqX7d0cRA3fz5hjC276pA0nLMoAiY3vtAp0u71nTk/3TRdnCx/OUw==", "dev": true, "funding": [ { @@ -367,7 +367,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4", "@csstools/postcss-progressive-custom-properties": "^3.2.0", @@ -381,9 +381,9 @@ } }, "node_modules/@csstools/postcss-hwb-function": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-3.0.12.tgz", - "integrity": "sha512-90kIs+FsM6isAXLVoFHTTl4h0J6g1J1M6ahpIjAs6/k7a2A9FB/q+l0MHpLre0ZiPlBf2y3e1j4L+79vml7kJw==", + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-3.0.13.tgz", + "integrity": "sha512-f44tgkFSxJBGm8UjlkAfBP7xE2x2XFFdvNdedHl8jpx2pQcW8a50OT3yeMnM3NB9Y2Ynd7Wn8iXARiV/IHoKvw==", "dev": true, "funding": [ { @@ -396,7 +396,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4", "@csstools/postcss-progressive-custom-properties": "^3.2.0", @@ -736,9 +736,9 @@ } }, "node_modules/@csstools/postcss-oklab-function": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-3.0.13.tgz", - "integrity": "sha512-xbzMmukDFAwCt2+279io7ZiamZj87s6cnU3UgKB3G+NMpRX9A6uvN8xlnTLCe384hqg6hix5vlOmwkxqACb5pg==", + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-3.0.14.tgz", + "integrity": "sha512-92xdpcfc2wB3z4+GftPA0PXMuGI/tRLw9Tc0+HzpaAHHxyLK6aCJtoQIcw0Ox/PthXtqXZn/3wWT/Idfe8I7Wg==", "dev": true, "funding": [ { @@ -751,7 +751,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4", "@csstools/postcss-progressive-custom-properties": "^3.2.0", @@ -790,9 +790,9 @@ } }, "node_modules/@csstools/postcss-relative-color-syntax": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-2.0.13.tgz", - "integrity": "sha512-mENWPNcHdiEYtjHFfZP9U1jNukQgFpSQ7wvTvwiadK3qgNBiSl0vMSinM9kKsGsJLTHQ0LEAqWLHurU52I4Jeg==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-2.0.14.tgz", + "integrity": "sha512-NlxgLjAjVCTUVGiWk8WNj3dKvux9eC6O5aLM3BmdA8UXEwBHYI9r4IqlanxG9PlcXnzhTUX6eZsqgmxwt4FPow==", "dev": true, "funding": [ { @@ -805,7 +805,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4", "@csstools/postcss-progressive-custom-properties": "^3.2.0", @@ -871,9 +871,9 @@ } }, "node_modules/@csstools/postcss-text-decoration-shorthand": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-3.0.5.tgz", - "integrity": "sha512-qKxXpD0TYINkUtWDN1RHdeWKtZCzEv5j3UMT/ZGqyY27icwCFw7iKO0bUeLSHjYFBqhurCWvoOsa9REqLdrNDw==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-3.0.6.tgz", + "integrity": "sha512-Q8HEu4AEiwNVZBD6+DpQ8M9SajpMow4+WtmndWIAv8qxDtDYL4JK1xXWkhOGk28PrcJawOvkrEZ8Ri59UN1TJw==", "dev": true, "funding": [ { @@ -886,7 +886,7 @@ } ], "dependencies": { - "@csstools/color-helpers": "^4.1.0", + "@csstools/color-helpers": "^4.2.0", "postcss-value-parser": "^4.2.0" }, "engines": { @@ -1438,9 +1438,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.7.tgz", - "integrity": "sha512-mh8LbS9d4Jq84KLw8pzho7XC2q2/IJGiJss3xwRoLD1A+EE16SjN4PfaG4jRCzKegTFLlN0Zd8SdUPE6XdoPFg==", + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.8.tgz", + "integrity": "sha512-5e+SFVavj1ORKlKaKr2BmTOekmXbelU7dC0cDkQLqag7xfuTPuGMUFx7KWJuv4bYZrTsoL2Z18VVCOKYxzoHcg==", "dev": true, "dependencies": { "lodash": "^4.17.21" @@ -1462,9 +1462,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.3.tgz", - "integrity": "sha512-X9alQ3XM6I9IlSlmC8ddAvMSyG1WuHk5oUnXGw+yUBs3BFoTizmG1La/Gr8fVJvDWAq+zlYTZ9DBgrlKRVY06g==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.16.4.tgz", + "integrity": "sha512-GkhjAaQ8oUTOKE4g4gsZ0u8K/IHU1+2WQSgS1TwTcYvL+sjbaQjNHFXbOJ6kgqGHIO1DfUhI/Sphi9GkRT9K+Q==", "cpu": [ "arm" ], @@ -1475,9 +1475,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.3.tgz", - "integrity": "sha512-eQK5JIi+POhFpzk+LnjKIy4Ks+pwJ+NXmPxOCSvOKSNRPONzKuUvWE+P9JxGZVxrtzm6BAYMaL50FFuPe0oWMQ==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.16.4.tgz", + "integrity": "sha512-Bvm6D+NPbGMQOcxvS1zUl8H7DWlywSXsphAeOnVeiZLQ+0J6Is8T7SrjGTH29KtYkiY9vld8ZnpV3G2EPbom+w==", "cpu": [ "arm64" ], @@ -1488,9 +1488,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.3.tgz", - "integrity": "sha512-Od4vE6f6CTT53yM1jgcLqNfItTsLt5zE46fdPaEmeFHvPs5SjZYlLpHrSiHEKR1+HdRfxuzXHjDOIxQyC3ptBA==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.16.4.tgz", + "integrity": "sha512-i5d64MlnYBO9EkCOGe5vPR/EeDwjnKOGGdd7zKFhU5y8haKhQZTN2DgVtpODDMxUr4t2K90wTUJg7ilgND6bXw==", "cpu": [ "arm64" ], @@ -1501,9 +1501,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.3.tgz", - "integrity": "sha512-0IMAO21axJeNIrvS9lSe/PGthc8ZUS+zC53O0VhF5gMxfmcKAP4ESkKOCwEi6u2asUrt4mQv2rjY8QseIEb1aw==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.16.4.tgz", + "integrity": "sha512-WZupV1+CdUYehaZqjaFTClJI72fjJEgTXdf4NbW69I9XyvdmztUExBtcI2yIIU6hJtYvtwS6pkTkHJz+k08mAQ==", "cpu": [ "x64" ], @@ -1514,9 +1514,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.3.tgz", - "integrity": "sha512-ge2DC7tHRHa3caVEoSbPRJpq7azhG+xYsd6u2MEnJ6XzPSzQsTKyXvh6iWjXRf7Rt9ykIUWHtl0Uz3T6yXPpKw==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.16.4.tgz", + "integrity": "sha512-ADm/xt86JUnmAfA9mBqFcRp//RVRt1ohGOYF6yL+IFCYqOBNwy5lbEK05xTsEoJq+/tJzg8ICUtS82WinJRuIw==", "cpu": [ "arm" ], @@ -1527,9 +1527,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.14.3.tgz", - "integrity": "sha512-ljcuiDI4V3ySuc7eSk4lQ9wU8J8r8KrOUvB2U+TtK0TiW6OFDmJ+DdIjjwZHIw9CNxzbmXY39wwpzYuFDwNXuw==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.16.4.tgz", + "integrity": "sha512-tJfJaXPiFAG+Jn3cutp7mCs1ePltuAgRqdDZrzb1aeE3TktWWJ+g7xK9SNlaSUFw6IU4QgOxAY4rA+wZUT5Wfg==", "cpu": [ "arm" ], @@ -1540,9 +1540,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.3.tgz", - "integrity": "sha512-Eci2us9VTHm1eSyn5/eEpaC7eP/mp5n46gTRB3Aar3BgSvDQGJZuicyq6TsH4HngNBgVqC5sDYxOzTExSU+NjA==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.16.4.tgz", + "integrity": "sha512-7dy1BzQkgYlUTapDTvK997cgi0Orh5Iu7JlZVBy1MBURk7/HSbHkzRnXZa19ozy+wwD8/SlpJnOOckuNZtJR9w==", "cpu": [ "arm64" ], @@ -1553,9 +1553,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.3.tgz", - "integrity": "sha512-UrBoMLCq4E92/LCqlh+blpqMz5h1tJttPIniwUgOFJyjWI1qrtrDhhpHPuFxULlUmjFHfloWdixtDhSxJt5iKw==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.16.4.tgz", + "integrity": "sha512-zsFwdUw5XLD1gQe0aoU2HVceI6NEW7q7m05wA46eUAyrkeNYExObfRFQcvA6zw8lfRc5BHtan3tBpo+kqEOxmg==", "cpu": [ "arm64" ], @@ -1566,9 +1566,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.3.tgz", - "integrity": "sha512-5aRjvsS8q1nWN8AoRfrq5+9IflC3P1leMoy4r2WjXyFqf3qcqsxRCfxtZIV58tCxd+Yv7WELPcO9mY9aeQyAmw==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.16.4.tgz", + "integrity": "sha512-p8C3NnxXooRdNrdv6dBmRTddEapfESEUflpICDNKXpHvTjRRq1J82CbU5G3XfebIZyI3B0s074JHMWD36qOW6w==", "cpu": [ "ppc64" ], @@ -1579,9 +1579,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.3.tgz", - "integrity": "sha512-sk/Qh1j2/RJSX7FhEpJn8n0ndxy/uf0kI/9Zc4b1ELhqULVdTfN6HL31CDaTChiBAOgLcsJ1sgVZjWv8XNEsAQ==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.16.4.tgz", + "integrity": "sha512-Lh/8ckoar4s4Id2foY7jNgitTOUQczwMWNYi+Mjt0eQ9LKhr6sK477REqQkmy8YHY3Ca3A2JJVdXnfb3Rrwkng==", "cpu": [ "riscv64" ], @@ -1592,9 +1592,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.3.tgz", - "integrity": "sha512-jOO/PEaDitOmY9TgkxF/TQIjXySQe5KVYB57H/8LRP/ux0ZoO8cSHCX17asMSv3ruwslXW/TLBcxyaUzGRHcqg==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.16.4.tgz", + "integrity": "sha512-1xwwn9ZCQYuqGmulGsTZoKrrn0z2fAur2ujE60QgyDpHmBbXbxLaQiEvzJWDrscRq43c8DnuHx3QorhMTZgisQ==", "cpu": [ "s390x" ], @@ -1605,9 +1605,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.3.tgz", - "integrity": "sha512-8ybV4Xjy59xLMyWo3GCfEGqtKV5M5gCSrZlxkPGvEPCGDLNla7v48S662HSGwRd6/2cSneMQWiv+QzcttLrrOA==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.16.4.tgz", + "integrity": "sha512-LuOGGKAJ7dfRtxVnO1i3qWc6N9sh0Em/8aZ3CezixSTM+E9Oq3OvTsvC4sm6wWjzpsIlOCnZjdluINKESflJLA==", "cpu": [ "x64" ], @@ -1618,9 +1618,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.3.tgz", - "integrity": "sha512-s+xf1I46trOY10OqAtZ5Rm6lzHre/UiLA1J2uOhCFXWkbZrJRkYBPO6FhvGfHmdtQ3Bx793MNa7LvoWFAm93bg==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.16.4.tgz", + "integrity": "sha512-ch86i7KkJKkLybDP2AtySFTRi5fM3KXp0PnHocHuJMdZwu7BuyIKi35BE9guMlmTpwwBTB3ljHj9IQXnTCD0vA==", "cpu": [ "x64" ], @@ -1631,9 +1631,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.3.tgz", - "integrity": "sha512-+4h2WrGOYsOumDQ5S2sYNyhVfrue+9tc9XcLWLh+Kw3UOxAvrfOrSMFon60KspcDdytkNDh7K2Vs6eMaYImAZg==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.16.4.tgz", + "integrity": "sha512-Ma4PwyLfOWZWayfEsNQzTDBVW8PZ6TUUN1uFTBQbF2Chv/+sjenE86lpiEwj2FiviSmSZ4Ap4MaAfl1ciF4aSA==", "cpu": [ "arm64" ], @@ -1644,9 +1644,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.3.tgz", - "integrity": "sha512-T1l7y/bCeL/kUwh9OD4PQT4aM7Bq43vX05htPJJ46RTI4r5KNt6qJRzAfNfM+OYMNEVBWQzR2Gyk+FXLZfogGw==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.16.4.tgz", + "integrity": "sha512-9m/ZDrQsdo/c06uOlP3W9G2ENRVzgzbSXmXHT4hwVaDQhYcRpi9bgBT0FTG9OhESxwK0WjQxYOSfv40cU+T69w==", "cpu": [ "ia32" ], @@ -1657,9 +1657,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.3.tgz", - "integrity": "sha512-/BypzV0H1y1HzgYpxqRaXGBRqfodgoBBCcsrujT6QRcakDQdfU+Lq9PENPh5jB4I44YWq+0C2eHsHya+nZY1sA==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.16.4.tgz", + "integrity": "sha512-YunpoOAyGLDseanENHmbFvQSfVL5BxW3k7hhy0eN4rb3gS/ct75dVD0EXOWIqFT/nE8XYW6LP6vz6ctKRi0k9A==", "cpu": [ "x64" ], @@ -1865,9 +1865,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001610", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001610.tgz", - "integrity": "sha512-QFutAY4NgaelojVMjY63o6XlZyORPaLfyMnsl3HgnWdJUcX6K0oaJymHjH8PT5Gk7sTm8rvC/c5COUQKXqmOMA==", + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", "dev": true, "funding": [ { @@ -1959,9 +1959,9 @@ } }, "node_modules/css-blank-pseudo": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-6.0.1.tgz", - "integrity": "sha512-goSnEITByxTzU4Oh5oJZrEWudxTqk7L6IXj1UW69pO6Hv0UdX+Vsrt02FFu5DweRh2bLu6WpX/+zsQCu5O1gKw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-6.0.2.tgz", + "integrity": "sha512-J/6m+lsqpKPqWHOifAFtKFeGLOzw3jR92rxQcwRUfA/eTuZzKfKlxOmYDx2+tqOPQAueNvBiY8WhAeHu5qNmTg==", "dev": true, "funding": [ { @@ -2080,9 +2080,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.736", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.736.tgz", - "integrity": "sha512-Rer6wc3ynLelKNM4lOCg7/zPQj8tPOCB2hzD32PX9wd3hgRRi9MxEbmkFCokzcEhRVMiOVLjnL9ig9cefJ+6+Q==", + "version": "1.4.747", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.747.tgz", + "integrity": "sha512-+FnSWZIAvFHbsNVmUxhEqWiaOiPMcfum1GQzlWCg/wLigVtshOsjXHyEFfmt6cFK6+HkS3QOJBv6/3OPumbBfw==", "dev": true }, "node_modules/entities": { @@ -2651,9 +2651,9 @@ } }, "node_modules/postcss-color-functional-notation": { - "version": "6.0.8", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-6.0.8.tgz", - "integrity": "sha512-BilFPTHcfWEnuQeqL83nbSPVK3tcU57S60aOrqgditarNDzOojyF0Gdc2Ur5L+zox366QjrCe0rOBLDO2pNvRQ==", + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-6.0.9.tgz", + "integrity": "sha512-8i/ofOArZ4fljp+3g+HI6Pok01Kb8YaSqInrJt2vMimEKrI0ZDNRLpH+wLhXBNu/Bi8zeWDvxhvCqsGSpu8E6Q==", "dev": true, "funding": [ { @@ -2666,7 +2666,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4", "@csstools/postcss-progressive-custom-properties": "^3.2.0", @@ -2760,9 +2760,9 @@ } }, "node_modules/postcss-custom-properties": { - "version": "13.3.7", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-13.3.7.tgz", - "integrity": "sha512-0N9F/GUCr/D0IazjzHahyYW2bQVDT6qDtEudiGHAhMd3XqhfM3VmfYVlkc/40DOhsPtngSNb54/Ctu8msvFOvQ==", + "version": "13.3.8", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-13.3.8.tgz", + "integrity": "sha512-OP9yj4yXxYOiW2n2TRpnE7C0yePvBiZb72S22mZVNzZEObdTYFjNaX6oZO4R4E8Ie9RmC/Jxw8EKYSbLrC1EFA==", "dev": true, "funding": [ { @@ -2976,9 +2976,9 @@ } }, "node_modules/postcss-lab-function": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-6.0.13.tgz", - "integrity": "sha512-tzEThi3prSyomnVqaAU+k/YJib4rxeeTKVfMt+mPcEugFgp0t6xRjoc7fzaWCoEwYLC6GxGLD8/Ugx8COCqabw==", + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-6.0.14.tgz", + "integrity": "sha512-ddQS9FRWT8sfl4wfW0ae8fpP2JdLIuhC9pYpHq1077avjrLzg73T9IEVu5QmFa72nJhYFlO9CbqjcoSdEzfY9A==", "dev": true, "funding": [ { @@ -2991,7 +2991,7 @@ } ], "dependencies": { - "@csstools/css-color-parser": "^1.6.3", + "@csstools/css-color-parser": "^2.0.0", "@csstools/css-parser-algorithms": "^2.6.1", "@csstools/css-tokenizer": "^2.2.4", "@csstools/postcss-progressive-custom-properties": "^3.2.0", @@ -3030,9 +3030,9 @@ } }, "node_modules/postcss-nesting": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-12.1.1.tgz", - "integrity": "sha512-qc74KvIAQNa5ujZKG1UV286dhaDW6basbUy2i9AzNU/T8C9hpvGu9NZzm1SfePe2yP7sPYgpA8d4sPVopn2Hhw==", + "version": "12.1.2", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-12.1.2.tgz", + "integrity": "sha512-FUmTHGDNundodutB4PUBxt/EPuhgtpk8FJGRsBhOuy+6FnkR2A8RZWIsyyy6XmhvX2DZQQWIkvu+HB4IbJm+Ew==", "dev": true, "funding": [ { @@ -3138,9 +3138,9 @@ } }, "node_modules/postcss-preset-env": { - "version": "9.5.5", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-9.5.5.tgz", - "integrity": "sha512-tg71KfEgTHMM+C4LpWtKfHFWEunfWj1JThq/Odsw60MOowcffBrMAcSBDE+imftW5/BD3mpOiiTL6c+KcnGaLQ==", + "version": "9.5.9", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-9.5.9.tgz", + "integrity": "sha512-W+WgDH1MOWLT3Fsvknd45pzGMQ8Sp3fmt94Pxeik3Zkqfhw2XUDF8FehfV3Naxw4l/NrKPWLtltPJYVnpjMmfw==", "dev": true, "funding": [ { @@ -3154,13 +3154,13 @@ ], "dependencies": { "@csstools/postcss-cascade-layers": "^4.0.4", - "@csstools/postcss-color-function": "^3.0.13", - "@csstools/postcss-color-mix-function": "^2.0.13", + "@csstools/postcss-color-function": "^3.0.14", + "@csstools/postcss-color-mix-function": "^2.0.14", "@csstools/postcss-exponential-functions": "^1.0.5", "@csstools/postcss-font-format-keywords": "^3.0.2", - "@csstools/postcss-gamut-mapping": "^1.0.6", - "@csstools/postcss-gradients-interpolation-method": "^4.0.14", - "@csstools/postcss-hwb-function": "^3.0.12", + "@csstools/postcss-gamut-mapping": "^1.0.7", + "@csstools/postcss-gradients-interpolation-method": "^4.0.15", + "@csstools/postcss-hwb-function": "^3.0.13", "@csstools/postcss-ic-unit": "^3.0.6", "@csstools/postcss-initial": "^1.0.1", "@csstools/postcss-is-pseudo-class": "^4.0.6", @@ -3174,27 +3174,27 @@ "@csstools/postcss-media-queries-aspect-ratio-number-values": "^2.0.7", "@csstools/postcss-nested-calc": "^3.0.2", "@csstools/postcss-normalize-display-values": "^3.0.2", - "@csstools/postcss-oklab-function": "^3.0.13", + "@csstools/postcss-oklab-function": "^3.0.14", "@csstools/postcss-progressive-custom-properties": "^3.2.0", - "@csstools/postcss-relative-color-syntax": "^2.0.13", + "@csstools/postcss-relative-color-syntax": "^2.0.14", "@csstools/postcss-scope-pseudo-class": "^3.0.1", "@csstools/postcss-stepped-value-functions": "^3.0.6", - "@csstools/postcss-text-decoration-shorthand": "^3.0.5", + "@csstools/postcss-text-decoration-shorthand": "^3.0.6", "@csstools/postcss-trigonometric-functions": "^3.0.6", "@csstools/postcss-unset-value": "^3.0.1", "autoprefixer": "^10.4.19", "browserslist": "^4.22.3", - "css-blank-pseudo": "^6.0.1", + "css-blank-pseudo": "^6.0.2", "css-has-pseudo": "^6.0.3", "css-prefers-color-scheme": "^9.0.1", "cssdb": "^8.0.0", "postcss-attribute-case-insensitive": "^6.0.3", "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^6.0.8", + "postcss-color-functional-notation": "^6.0.9", "postcss-color-hex-alpha": "^9.0.4", "postcss-color-rebeccapurple": "^9.0.3", "postcss-custom-media": "^10.0.4", - "postcss-custom-properties": "^13.3.7", + "postcss-custom-properties": "^13.3.8", "postcss-custom-selectors": "^7.1.8", "postcss-dir-pseudo-class": "^8.0.1", "postcss-double-position-gradients": "^5.0.6", @@ -3203,14 +3203,14 @@ "postcss-font-variant": "^5.0.0", "postcss-gap-properties": "^5.0.1", "postcss-image-set-function": "^6.0.3", - "postcss-lab-function": "^6.0.13", + "postcss-lab-function": "^6.0.14", "postcss-logical": "^7.0.1", - "postcss-nesting": "^12.1.1", + "postcss-nesting": "^12.1.2", "postcss-opacity-percentage": "^2.0.0", "postcss-overflow-shorthand": "^5.0.1", "postcss-page-break": "^3.0.4", "postcss-place": "^9.0.1", - "postcss-pseudo-class-any-link": "^9.0.1", + "postcss-pseudo-class-any-link": "^9.0.2", "postcss-replace-overflow-wrap": "^4.0.0", "postcss-selector-not": "^7.0.2" }, @@ -3222,9 +3222,9 @@ } }, "node_modules/postcss-pseudo-class-any-link": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-9.0.1.tgz", - "integrity": "sha512-cKYGGZ9yzUZi+dZd7XT2M8iSDfo+T2Ctbpiizf89uBTBfIpZpjvTavzIJXpCReMVXSKROqzpxClNu6fz4DHM0Q==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-9.0.2.tgz", + "integrity": "sha512-HFSsxIqQ9nA27ahyfH37cRWGk3SYyQLpk0LiWw/UGMV4VKT5YG2ONee4Pz/oFesnK0dn2AjcyequDbIjKJgB0g==", "dev": true, "funding": [ { @@ -3330,9 +3330,9 @@ } }, "node_modules/rollup": { - "version": "4.14.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.3.tgz", - "integrity": "sha512-ag5tTQKYsj1bhrFC9+OEWqb5O6VYgtQDO9hPDBMmIbePwhfSr+ExlcU741t8Dhw5DkPCQf6noz0jb36D6W9/hw==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.16.4.tgz", + "integrity": "sha512-kuaTJSUbz+Wsb2ATGvEknkI12XV40vIiHmLuFlejoo7HtDok/O5eDDD0UpCVY5bBX5U5RYo8wWP83H7ZsqVEnA==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -3345,22 +3345,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.14.3", - "@rollup/rollup-android-arm64": "4.14.3", - "@rollup/rollup-darwin-arm64": "4.14.3", - "@rollup/rollup-darwin-x64": "4.14.3", - "@rollup/rollup-linux-arm-gnueabihf": "4.14.3", - "@rollup/rollup-linux-arm-musleabihf": "4.14.3", - "@rollup/rollup-linux-arm64-gnu": "4.14.3", - "@rollup/rollup-linux-arm64-musl": "4.14.3", - "@rollup/rollup-linux-powerpc64le-gnu": "4.14.3", - "@rollup/rollup-linux-riscv64-gnu": "4.14.3", - "@rollup/rollup-linux-s390x-gnu": "4.14.3", - "@rollup/rollup-linux-x64-gnu": "4.14.3", - "@rollup/rollup-linux-x64-musl": "4.14.3", - "@rollup/rollup-win32-arm64-msvc": "4.14.3", - "@rollup/rollup-win32-ia32-msvc": "4.14.3", - "@rollup/rollup-win32-x64-msvc": "4.14.3", + "@rollup/rollup-android-arm-eabi": "4.16.4", + "@rollup/rollup-android-arm64": "4.16.4", + "@rollup/rollup-darwin-arm64": "4.16.4", + "@rollup/rollup-darwin-x64": "4.16.4", + "@rollup/rollup-linux-arm-gnueabihf": "4.16.4", + "@rollup/rollup-linux-arm-musleabihf": "4.16.4", + "@rollup/rollup-linux-arm64-gnu": "4.16.4", + "@rollup/rollup-linux-arm64-musl": "4.16.4", + "@rollup/rollup-linux-powerpc64le-gnu": "4.16.4", + "@rollup/rollup-linux-riscv64-gnu": "4.16.4", + "@rollup/rollup-linux-s390x-gnu": "4.16.4", + "@rollup/rollup-linux-x64-gnu": "4.16.4", + "@rollup/rollup-linux-x64-musl": "4.16.4", + "@rollup/rollup-win32-arm64-msvc": "4.16.4", + "@rollup/rollup-win32-ia32-msvc": "4.16.4", + "@rollup/rollup-win32-x64-msvc": "4.16.4", "fsevents": "~2.3.2" } }, @@ -3466,9 +3466,9 @@ } }, "node_modules/terser": { - "version": "5.30.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.3.tgz", - "integrity": "sha512-STdUgOUx8rLbMGO9IOwHLpCqolkDITFFQSMYYwKE1N2lY6MVSaeoi10z/EhWxRc6ybqoVmKSkhKYH/XUpl7vSA==", + "version": "5.30.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", + "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -3600,9 +3600,9 @@ "dev": true }, "node_modules/vite": { - "version": "5.2.8", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.8.tgz", - "integrity": "sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==", + "version": "5.2.10", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.10.tgz", + "integrity": "sha512-PAzgUZbP7msvQvqdSD+ErD5qGnSFiGOoWmV5yAKUEI0kdhjbH6nMWVyZQC/hSc4aXwc0oJ9aEdIiF9Oje0JFCw==", "dev": true, "dependencies": { "esbuild": "^0.20.1", diff --git a/package.json b/package.json index 06095fd..a69ec05 100644 --- a/package.json +++ b/package.json @@ -32,10 +32,10 @@ "clean-jsdoc-theme": "^4.2.18", "docdash": "^2.0.2", "jsdoc": "^4.0.2", - "postcss-preset-env": "^9.5.5", + "postcss-preset-env": "^9.5.9", "sass": "^1.75.0", "typedoc": "^0.25.13", - "vite": "^5.2.8", + "vite": "^5.2.10", "vite-plugin-externals": "^0.6.2" } }