diff --git a/jest.config.js b/jest.config.js index 13f43dbf..1e7cd0f5 100644 --- a/jest.config.js +++ b/jest.config.js @@ -39,7 +39,8 @@ module.exports = { '^.+\\.svg$': '/svgTransform.js', }, transformIgnorePatterns: [ - // @rancher/shell is shipped untranspiled, the other packages are ESM-only - '/node_modules/(?!(@rancher/shell|color|color-string|color-convert|color-name|vee-validate|@vee-validate|clipboard-polyfill|intl-messageformat|@formatjs)/)', + // @rancher/shell is shipped untranspiled, the other packages are ESM-only. @replit/codemirror-vim-core is + // required by the CommonJS build of @replit/codemirror-vim, which the shell's YamlEditor imports + '/node_modules/(?!(@rancher/shell|color|color-string|color-convert|color-name|vee-validate|@vee-validate|clipboard-polyfill|intl-messageformat|@formatjs|@replit/codemirror-vim-core)/)', ], }; diff --git a/package.json b/package.json index 0592c05b..6c016441 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "dependencies": { "@babel/plugin-transform-class-static-block": "7.29.7", "@novnc/novnc": "1.7.0", - "@rancher/shell": "3.0.13", + "@rancher/shell": "3.0.14", "@vue-flow/background": "^1.3.0", "@vue-flow/controls": "^1.1.1", "@vue-flow/core": "^1.33.5", diff --git a/pkg/harvester/components/HarvesterUpgrade.vue b/pkg/harvester/components/HarvesterUpgrade.vue index dfbc6eb5..c0aabbdb 100644 --- a/pkg/harvester/components/HarvesterUpgrade.vue +++ b/pkg/harvester/components/HarvesterUpgrade.vue @@ -128,6 +128,7 @@ export default { try { await proxyResource.save(); + proxyResource.notifyGeneratedName?.(); this.cancel(); } catch (err) { diff --git a/pkg/harvester/components/settings/additional-ca.vue b/pkg/harvester/components/settings/additional-ca.vue index 4e4710b2..e3b29928 100644 --- a/pkg/harvester/components/settings/additional-ca.vue +++ b/pkg/harvester/components/settings/additional-ca.vue @@ -19,7 +19,8 @@ export default {
diff --git a/pkg/harvester/components/settings/rancher-cluster.vue b/pkg/harvester/components/settings/rancher-cluster.vue index 9b2ea06a..a9386169 100644 --- a/pkg/harvester/components/settings/rancher-cluster.vue +++ b/pkg/harvester/components/settings/rancher-cluster.vue @@ -191,7 +191,8 @@ export default { >
@@ -213,9 +214,7 @@ $yaml-height: 540px; :deep() .yaml-editor{ flex: 1; min-height: $yaml-height; - & .code-mirror .CodeMirror { - position: initial; - height: auto; + & .code-mirror .cm-editor { min-height: $yaml-height; } } diff --git a/pkg/harvester/components/settings/rwx-network.vue b/pkg/harvester/components/settings/rwx-network.vue index 6185fd11..7dd89c5b 100644 --- a/pkg/harvester/components/settings/rwx-network.vue +++ b/pkg/harvester/components/settings/rwx-network.vue @@ -3,7 +3,7 @@ import { LabeledInput } from '@components/Form/LabeledInput'; import LabeledSelect from '@shell/components/form/LabeledSelect.vue'; import { RadioGroup } from '@components/Form/Radio'; import ArrayList from '@shell/components/form/ArrayList'; -import { isValidCIDR } from '@shell/utils/validators/cidr'; +import { isValidCIDR } from '@pkg/harvester/utils/regular'; import { _EDIT } from '@shell/config/query-params'; import { Banner } from '@components/Banner'; import { allHash } from '@shell/utils/promise'; diff --git a/pkg/harvester/components/settings/ssl-certificates.vue b/pkg/harvester/components/settings/ssl-certificates.vue index a3e75237..76030058 100644 --- a/pkg/harvester/components/settings/ssl-certificates.vue +++ b/pkg/harvester/components/settings/ssl-certificates.vue @@ -62,7 +62,8 @@ export default {
@@ -80,7 +81,8 @@ export default {
@@ -98,7 +100,8 @@ export default {
diff --git a/pkg/harvester/components/settings/storage-network.vue b/pkg/harvester/components/settings/storage-network.vue index ae3bb837..8f1f09ec 100644 --- a/pkg/harvester/components/settings/storage-network.vue +++ b/pkg/harvester/components/settings/storage-network.vue @@ -3,7 +3,7 @@ import { LabeledInput } from '@components/Form/LabeledInput'; import LabeledSelect from '@shell/components/form/LabeledSelect.vue'; import { RadioGroup } from '@components/Form/Radio'; import ArrayList from '@shell/components/form/ArrayList'; -import { isValidCIDR } from '@shell/utils/validators/cidr'; +import { isValidCIDR } from '@pkg/harvester/utils/regular'; import { _EDIT } from '@shell/config/query-params'; import { Banner } from '@components/Banner'; import Tip from '@shell/components/Tip'; diff --git a/pkg/harvester/components/settings/vm-migration-network.vue b/pkg/harvester/components/settings/vm-migration-network.vue index b925b538..8e97ac12 100644 --- a/pkg/harvester/components/settings/vm-migration-network.vue +++ b/pkg/harvester/components/settings/vm-migration-network.vue @@ -5,7 +5,7 @@ import { RadioGroup } from '@components/Form/Radio'; import { Banner } from '@components/Banner'; import ArrayList from '@shell/components/form/ArrayList'; import { allHash } from '@shell/utils/promise'; -import { isValidCIDR } from '@shell/utils/validators/cidr'; +import { isValidCIDR } from '@pkg/harvester/utils/regular'; import { NODE } from '@shell/config/types'; import { _EDIT } from '@shell/config/query-params'; import { HCI } from '../../types'; diff --git a/pkg/harvester/config/harvester-cluster.js b/pkg/harvester/config/harvester-cluster.js index 7aa32da9..19c40ec0 100644 --- a/pkg/harvester/config/harvester-cluster.js +++ b/pkg/harvester/config/harvester-cluster.js @@ -59,6 +59,8 @@ import { ADD_ONS } from './harvester-map'; import { registerAddonSideNav } from '../utils/dynamic-nav'; import { setVendor } from '@shell/config/private-label'; import { createCssVars } from '@shell/utils/color'; +import { CONFIGURABLE_TABLES } from '@shell/store/features'; +import { tableViewsOffFeature } from '../utils/table-views'; const TEMPLATE = HCI.VM_VERSION; const MONITORING_GROUP = 'Monitoring & Logging::Monitoring'; @@ -156,6 +158,17 @@ export function init($plugin, store) { }, { immediate: true } ); + + // Keep the shell's table views off: they drop the filters the lists put in the table header + store.watch( + (_state, getters) => getters['management/byId'](MANAGEMENT.FEATURE, CONFIGURABLE_TABLES), + (feature) => { + if (!feature) { + store.dispatch('management/load', { data: tableViewsOffFeature() }); + } + }, + { immediate: true } + ); } product({ diff --git a/pkg/harvester/edit/__tests__/harvesterhci.io.cloudtemplate.test.js b/pkg/harvester/edit/__tests__/harvesterhci.io.cloudtemplate.test.js new file mode 100644 index 00000000..5515bbfe --- /dev/null +++ b/pkg/harvester/edit/__tests__/harvesterhci.io.cloudtemplate.test.js @@ -0,0 +1,141 @@ +import { mount } from '@vue/test-utils'; +import { _CREATE, _EDIT, _VIEW } from '@shell/config/query-params'; +import YamlEditor from '@shell/components/YamlEditor'; +import { HCI } from '@pkg/harvester/config/labels-annotations'; +import HarvesterEditCloudTemplate from '../harvesterhci.io.cloudtemplate.vue'; + +const OLD_CONFIG = '#cloud-config\npassword: old\n'; +const NEW_CONFIG = '#cloud-config\npassword: new\n'; + +// A cloud-config template as the store gives it, `save` records what would be sent to the API +function cloudTemplate({ isNew = false } = {}) { + const value = { + type: 'configmap', + metadata: { + name: 'tpl', + namespace: 'default', + ...(isNew ? {} : { labels: { [HCI.CLOUD_INIT]: 'user' } }), + }, + data: isNew ? undefined : { cloudInit: OLD_CONFIG }, + $dispatch: jest.fn(), + save: () => Promise.resolve(), + saved: [], + }; + + jest.spyOn(value, 'save').mockImplementation(() => { + value.saved.push(JSON.parse(JSON.stringify({ metadata: value.metadata, data: value.data }))); + + return Promise.resolve(); + }); + + return value; +} + +// The real shell YamlEditor, with only its CodeMirror editor stubbed, so the events the form listens to are the +// ones the shell emits +function mountForm(mode, value) { + return mount(HarvesterEditCloudTemplate, { + props: { value, mode }, + global: { + stubs: { + CruResource: { template: '
' }, + Tabbed: { template: '
' }, + Tab: { template: '
' }, + NameNsDescription: true, + LabeledSelect: true, + CodeMirror: { + name: 'CodeMirror', template: '
', emits: ['onInput', 'onReady', 'validationChanged'] + }, + FileDiff: true, + }, + mocks: { + $store: { + getters: { + 'prefs/get': jest.fn(), + 'type-map/isSpoofed': () => false, + currentStore: () => 'harvester', + 'harvester/schemaFor': () => ({ linkFor: () => '/v1/harvester/configmaps' }), + 'i18n/t': (key) => key, + }, + }, + $router: { replace: jest.fn() }, + $route: { + name: 'c-cluster-product-resource-id', params: {}, query: {} + }, + }, + }, + }); +} + +// What a user typing in the editor does: CodeMirror reports the new text to the YamlEditor +async function typeInEditor(wrapper, text) { + wrapper.findComponent(YamlEditor).findComponent({ name: 'CodeMirror' }).vm.$emit('onInput', text); + await wrapper.vm.$nextTick(); +} + +describe('component: HarvesterEditCloudTemplate', () => { + it('should save the edited cloud config when editing a template', async() => { + const value = cloudTemplate(); + const wrapper = mountForm(_EDIT, value); + + await typeInEditor(wrapper, NEW_CONFIG); + await wrapper.vm.save(jest.fn()); + + expect(value.save).toHaveBeenCalledTimes(1); + expect(value.saved[0].data).toStrictEqual({ cloudInit: NEW_CONFIG }); + }); + + it('should keep the template type label when editing a template', async() => { + const value = cloudTemplate(); + const wrapper = mountForm(_EDIT, value); + + await typeInEditor(wrapper, NEW_CONFIG); + await wrapper.vm.save(jest.fn()); + + expect(value.saved[0].metadata.labels).toStrictEqual({ [HCI.CLOUD_INIT]: 'user' }); + }); + + it('should save the last text when the cloud config is edited several times', async() => { + const value = cloudTemplate(); + const wrapper = mountForm(_EDIT, value); + + await typeInEditor(wrapper, '#cloud-config\n'); + await typeInEditor(wrapper, NEW_CONFIG); + await wrapper.vm.save(jest.fn()); + + expect(value.saved[0].data).toStrictEqual({ cloudInit: NEW_CONFIG }); + }); + + it('should save the cloud config unchanged when only saving a template', async() => { + const value = cloudTemplate(); + const wrapper = mountForm(_EDIT, value); + + await wrapper.vm.save(jest.fn()); + + expect(value.saved[0].data).toStrictEqual({ cloudInit: OLD_CONFIG }); + }); + + it('should save the cloud config and the template type when creating a template', async() => { + const value = cloudTemplate({ isNew: true }); + const wrapper = mountForm(_CREATE, value); + + await typeInEditor(wrapper, NEW_CONFIG); + await wrapper.vm.save(jest.fn()); + + expect(value.save).toHaveBeenCalledWith({ url: '/v1/harvester/configmaps' }); + expect(value.saved[0]).toStrictEqual({ + metadata: { + name: 'tpl', namespace: 'default', labels: { [HCI.CLOUD_INIT]: 'user' } + }, + data: { cloudInit: NEW_CONFIG }, + }); + }); + + it('should show the template cloud config in the editor when viewing a template', () => { + const value = cloudTemplate(); + const wrapper = mountForm(_VIEW, value); + + expect(wrapper.findComponent(YamlEditor).props('value')).toBe(OLD_CONFIG); + expect(value.data).toStrictEqual({ cloudInit: OLD_CONFIG }); + }); +}); diff --git a/pkg/harvester/edit/harvesterhci.io.cloudtemplate.vue b/pkg/harvester/edit/harvesterhci.io.cloudtemplate.vue index ffbd8e40..15ddb48b 100644 --- a/pkg/harvester/edit/harvesterhci.io.cloudtemplate.vue +++ b/pkg/harvester/edit/harvesterhci.io.cloudtemplate.vue @@ -59,8 +59,8 @@ export default { }, methods: { - update() { - this.value.data = { cloudInit: this.config }; + update(config) { + this.value.data = { cloudInit: config }; }, updateBeforeSave() { @@ -119,7 +119,7 @@ export default { :mode="mode" class="yaml-editor" :editor-mode="mode === 'view' ? 'VIEW_CODE' : 'EDIT_CODE'" - @onChanges="update" + @update:value="update" />
@@ -133,9 +133,7 @@ export default { :deep() .yaml-editor{ flex: 1; min-height: $yaml-height; - & .code-mirror .CodeMirror { - position: initial; - height: auto; + & .code-mirror .cm-editor { min-height: $yaml-height; } } diff --git a/pkg/harvester/edit/harvesterhci.io.keypair.vue b/pkg/harvester/edit/harvesterhci.io.keypair.vue index ba29fb7d..11cd6f1d 100644 --- a/pkg/harvester/edit/harvesterhci.io.keypair.vue +++ b/pkg/harvester/edit/harvesterhci.io.keypair.vue @@ -88,7 +88,8 @@ export default {
diff --git a/pkg/harvester/pages/c/_cluster/vm-migration/vm-migration-wizard.vue b/pkg/harvester/pages/c/_cluster/vm-migration/vm-migration-wizard.vue index 7e2ffb7d..f70c4bfd 100644 --- a/pkg/harvester/pages/c/_cluster/vm-migration/vm-migration-wizard.vue +++ b/pkg/harvester/pages/c/_cluster/vm-migration/vm-migration-wizard.vue @@ -10,6 +10,7 @@ import ReviewMigrationStep from '@pkg/harvester/components/vm-migration/ReviewMi import { PRODUCT_NAME } from '@pkg/harvester/config/harvester'; import { currentRouter } from '@pkg/harvester/utils/router'; import { exceptionToErrorsArray, stringify } from '@shell/utils/error'; +import { preventImplicitSubmit } from '@pkg/harvester/utils/wizard'; const store = useStore(); const { t } = useI18n(store); @@ -269,6 +270,7 @@ const onCancel = () => { finish-mode="finish" finish-button-mode="createAndStart" class="wizard" + @keydown.enter.capture="preventImplicitSubmit" @cancel="onCancel" @finish="onFinish" > diff --git a/pkg/harvester/utils/__tests__/regular.test.js b/pkg/harvester/utils/__tests__/regular.test.js new file mode 100644 index 00000000..62764c37 --- /dev/null +++ b/pkg/harvester/utils/__tests__/regular.test.js @@ -0,0 +1,32 @@ +import { isValidCIDR } from '../regular'; + +describe('isValidCIDR', () => { + it.each([ + '10.0.0.0/16', + '192.168.1.0/24', + '0.0.0.0/0', + '255.255.255.255/32', + '172.16.100.9/12', + ])('should accept the IPv4 CIDR %s', (cidr) => { + expect(isValidCIDR(cidr)).toBe(true); + }); + + it.each([ + ['a short form', '10.1/16'], + ['a single number', '10/8'], + ['an integer address', '167772160/8'], + ['a hex address', '0x0a.0.0.0/8'], + ['an extra part', '10.0.0.0/24/1'], + ['an IPv6 range', 'fd00::/64'], + ['an IPv4-mapped IPv6 range', '::ffff:10.0.0.0/120'], + ['a prefix over 32', '10.0.0.0/33'], + ['an octet over 255', '10.0.0.256/24'], + ['zero-padded octets', '010.001.000.000/16'], + ['a zero-padded octet', '192.168.001.0/24'], + ['a zero-padded prefix', '10.0.0.0/08'], + ['no prefix', '10.0.0.0'], + ['an empty value', ''], + ])('should reject %s (%s)', (_, cidr) => { + expect(isValidCIDR(cidr)).toBe(false); + }); +}); diff --git a/pkg/harvester/utils/__tests__/table-views.test.js b/pkg/harvester/utils/__tests__/table-views.test.js new file mode 100644 index 00000000..f82cf566 --- /dev/null +++ b/pkg/harvester/utils/__tests__/table-views.test.js @@ -0,0 +1,21 @@ +import Feature from '@shell/models/management.cattle.io.feature'; +import { MANAGEMENT } from '@shell/config/types'; +import { CONFIGURABLE_TABLES } from '@shell/store/features'; +import { tableViewsOffFeature } from '../table-views'; + +describe('tableViewsOffFeature', () => { + it('should be the table views feature of the management store', () => { + const feature = tableViewsOffFeature(); + + expect(feature.type).toBe(MANAGEMENT.FEATURE); + expect(feature.id).toBe(CONFIGURABLE_TABLES); + }); + + it('should be read as disabled by the shell', () => { + const feature = new Feature(tableViewsOffFeature(), { + getters: {}, rootGetters: {}, dispatch: jest.fn(), rootState: {} + }); + + expect(feature.enabled).toBe(false); + }); +}); diff --git a/pkg/harvester/utils/__tests__/wizard.test.js b/pkg/harvester/utils/__tests__/wizard.test.js new file mode 100644 index 00000000..b22dcaf7 --- /dev/null +++ b/pkg/harvester/utils/__tests__/wizard.test.js @@ -0,0 +1,37 @@ +import { preventImplicitSubmit } from '../wizard'; + +function keydown(target) { + return { target, preventDefault: jest.fn() }; +} + +describe('preventImplicitSubmit', () => { + it('should stop Enter in a text field from submitting the wizard', () => { + const event = keydown(document.createElement('input')); + + preventImplicitSubmit(event); + + expect(event.preventDefault).toHaveBeenCalledTimes(1); + }); + + it('should leave Enter in a dropdown alone, which uses it to pick an option', () => { + const select = document.createElement('div'); + const input = document.createElement('input'); + + select.className = 'v-select'; + select.appendChild(input); + + const event = keydown(input); + + preventImplicitSubmit(event); + + expect(event.preventDefault).not.toHaveBeenCalled(); + }); + + it.each(['textarea', 'button'])('should leave Enter on a %s alone', (tag) => { + const event = keydown(document.createElement(tag)); + + preventImplicitSubmit(event); + + expect(event.preventDefault).not.toHaveBeenCalled(); + }); +}); diff --git a/pkg/harvester/utils/regular.js b/pkg/harvester/utils/regular.js index d060d486..03d1447f 100644 --- a/pkg/harvester/utils/regular.js +++ b/pkg/harvester/utils/regular.js @@ -1,4 +1,13 @@ +/** + * IPv4 CIDR such as 10.0.0.0/16. Unlike the shell's isValidCIDR since 3.0.14, it rejects the short forms + * (10.1/16), extra parts (10.0.0.0/24/1), zero-padded octets (010.0.0.0/8) and IPv6, which the network settings + * don't support + */ +export function isValidCIDR(cidr) { + return /^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\/(3[0-2]|[12]?[0-9])$/.test(cidr || ''); +} + export function isValidMac(value) { return /^[A-Fa-f0-9]{2}(-[A-Fa-f0-9]{2}){5}$|^[A-Fa-f0-9]{2}(:[A-Fa-f0-9]{2}){5}$/.test(value); } diff --git a/pkg/harvester/utils/table-views.js b/pkg/harvester/utils/table-views.js new file mode 100644 index 00000000..bef8cfbc --- /dev/null +++ b/pkg/harvester/utils/table-views.js @@ -0,0 +1,19 @@ +import { MANAGEMENT } from '@shell/config/types'; +import { CONFIGURABLE_TABLES } from '@shell/store/features'; + +/** + * The shell's table views feature (@rancher/shell 3.0.14), disabled, for the management store. Standalone Harvester + * has no such feature on the server, so the shell uses its default, on, and every list gets the table views, which + * drop the filters the lists put in the table header. Only kept in the store, nothing is saved. + */ +export function tableViewsOffFeature() { + return { + id: CONFIGURABLE_TABLES, + type: MANAGEMENT.FEATURE, + metadata: { name: CONFIGURABLE_TABLES }, + spec: { value: false }, + status: { + default: true, dynamic: true, lockedValue: null + }, + }; +} diff --git a/pkg/harvester/utils/wizard.js b/pkg/harvester/utils/wizard.js new file mode 100644 index 00000000..7dc68e22 --- /dev/null +++ b/pkg/harvester/utils/wizard.js @@ -0,0 +1,12 @@ +/** + * Keydown (capture) handler for a wizard. The shell's Wizard renders its step headers as buttons without a type + * since 3.0.14, so they are submit buttons: Enter in a text field submits the form by clicking the first one, + * which jumps back to step 1. Dropdowns are left alone, they use Enter to pick an option. + */ +export function preventImplicitSubmit(event) { + const target = event?.target; + + if (target?.tagName === 'INPUT' && !target.closest('.v-select')) { + event.preventDefault(); + } +} diff --git a/yarn.lock b/yarn.lock index 596b8687..947eafea 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1502,6 +1502,145 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@codemirror/autocomplete@6.20.3": + version "6.20.3" + resolved "https://registry.yarnpkg.com/@codemirror/autocomplete/-/autocomplete-6.20.3.tgz#696b740312c6a962e14567b49a3661b5924bc5ae" + integrity sha512-tlosUqb+3BbxCxZdu4tKeRghPFC+QM7q4X5YhKV2eCmPG+1r2F3f4AaSz5sCrFqUtX4Jh20VFTKecl16MgiV9g== + dependencies: + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.17.0" + "@lezer/common" "^1.0.0" + +"@codemirror/autocomplete@^6.0.0": + version "6.20.4" + resolved "https://registry.yarnpkg.com/@codemirror/autocomplete/-/autocomplete-6.20.4.tgz#57230a6bca565f3643729f7f9bad6ca0322e6dd7" + integrity sha512-yF8RhOf2SXlg00+qtupzLhrglcas61boqaONiNcbPIebHCpJocpqTBA6dyrtUrQO47hqyTdeob/3XnYilT7TaQ== + dependencies: + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.17.0" + "@lezer/common" "^1.0.0" + +"@codemirror/commands@6.11.1": + version "6.11.1" + resolved "https://registry.yarnpkg.com/@codemirror/commands/-/commands-6.11.1.tgz#1ec31ffb4d87babd096b5857e68cdba3bb989abd" + integrity sha512-O/4hG3SC1YwcmQ0d2UVNDs+AsaNWd1iHVxbTeEBuqH+6bExAiPK3iS/BvpY6rZGURALv4ZD3sIgcCmRvw3ehBg== + dependencies: + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.7.0" + "@codemirror/view" "^6.27.0" + "@lezer/common" "^1.1.0" + +"@codemirror/lang-javascript@6.2.5": + version "6.2.5" + resolved "https://registry.yarnpkg.com/@codemirror/lang-javascript/-/lang-javascript-6.2.5.tgz#b9ea6b2f0383ed6895fae7888c0322541538f10a" + integrity sha512-zD4e5mS+50htS7F+TYjBPsiIFGanfVqg4HyUz6WNFikgOPf2BgKlx+TQedI1w6n/IqRBVBbBWmGFdLB/7uxO4A== + dependencies: + "@codemirror/autocomplete" "^6.0.0" + "@codemirror/language" "^6.6.0" + "@codemirror/lint" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.17.0" + "@lezer/common" "^1.0.0" + "@lezer/javascript" "^1.0.0" + +"@codemirror/lang-json@6.0.2": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@codemirror/lang-json/-/lang-json-6.0.2.tgz#054b160671306667e25d80385286049841836179" + integrity sha512-x2OtO+AvwEHrEwR0FyyPtfDUiloG3rnVTSZV1W8UteaLL8/MajQd8DpvUb2YVzC+/T18aSDv0H9mu+xw0EStoQ== + dependencies: + "@codemirror/language" "^6.0.0" + "@lezer/json" "^1.0.0" + +"@codemirror/lang-yaml@6.1.3": + version "6.1.3" + resolved "https://registry.yarnpkg.com/@codemirror/lang-yaml/-/lang-yaml-6.1.3.tgz#4d4127e8339984639715d1e3f8edca1ea5bfabfb" + integrity sha512-AZ8DJBuXGVHybpBQhmZtgew5//4hv3tdkXnr3vDmOUMJRuB6vn/uuwtmTOTlqEaQFg3hQSVeA90NmvIQyUV6FQ== + dependencies: + "@codemirror/autocomplete" "^6.0.0" + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@lezer/common" "^1.2.0" + "@lezer/highlight" "^1.2.0" + "@lezer/lr" "^1.0.0" + "@lezer/yaml" "^1.0.0" + +"@codemirror/language@6.12.4": + version "6.12.4" + resolved "https://registry.yarnpkg.com/@codemirror/language/-/language-6.12.4.tgz#01e70fd5aa3a8a067ff1dfec75d5b6394cdfa058" + integrity sha512-1q4PaT+o6PbgpkJt4Q8Fv5XJxTy4FUZ4MWETtyiDw3J0Pyr9E2vqcKL+k9wcvjNTIsauxvE7OfmWj3FRPHQ76A== + dependencies: + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.23.0" + "@lezer/common" "^1.5.0" + "@lezer/highlight" "^1.0.0" + "@lezer/lr" "^1.0.0" + style-mod "^4.0.0" + +"@codemirror/language@^6.0.0", "@codemirror/language@^6.6.0": + version "6.13.1" + resolved "https://registry.yarnpkg.com/@codemirror/language/-/language-6.13.1.tgz#61eb04c0265102ff9bb24d9a3ee633d37e84e324" + integrity sha512-zfvU2r3TyylQLMj/te+5CnQ0rSqZi8B1oTCBbQkagcLW4Xc6imab6qN+pEJhsuNOLaJqiRyBXp9UhWA1DhVvDw== + dependencies: + "@codemirror/state" "^6.0.0" + "@codemirror/streamparser" "^6.0.0" + "@codemirror/view" "^6.23.0" + "@lezer/common" "^1.5.0" + "@lezer/highlight" "^1.0.0" + "@lezer/lr" "^1.0.0" + style-mod "^4.0.0" + +"@codemirror/lint@6.9.7", "@codemirror/lint@^6.0.0": + version "6.9.7" + resolved "https://registry.yarnpkg.com/@codemirror/lint/-/lint-6.9.7.tgz#841fc733674389d91fe49a1c34027ad3babdf105" + integrity sha512-28/+iWLYxKxsvGYhSYL7zaCZqLz5+FFFDq9tVsvGv9kv8RY4fFAchJ5WX9M3YrrRlTIsECjsXPqeNgnSmNP2dg== + dependencies: + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.42.0" + crelt "^1.0.5" + +"@codemirror/search@6.7.2": + version "6.7.2" + resolved "https://registry.yarnpkg.com/@codemirror/search/-/search-6.7.2.tgz#93a49eb21c026de473c4fc3a047b8fd67784b0f0" + integrity sha512-gUYkYhT2+n/+VGZ+8EzE5WFkYZUZYm1VOKDudIsNqh42uRVQJ0a6Yss9sdKT3MeOYfuL1N6AZA57oza0Oyr0LA== + dependencies: + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.37.0" + crelt "^1.0.5" + +"@codemirror/state@6.7.6", "@codemirror/state@^6.0.0", "@codemirror/state@^6.7.0": + version "6.7.6" + resolved "https://registry.yarnpkg.com/@codemirror/state/-/state-6.7.6.tgz#48af761fae3947745f17fa143cc5b5084225388d" + integrity sha512-kAz+AncRtKuIknedxT1bq4XwXv4UowhbkHU1myPrtVb/jZtImWuV5BXzv5vK6i3kYACsdiZiQKFQQ5Mq7elW8w== + dependencies: + "@marijn/find-cluster-break" "^1.0.0" + +"@codemirror/streamparser@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@codemirror/streamparser/-/streamparser-6.0.0.tgz#cc48a8f67e9001222d69938fabab157d68ce59d6" + integrity sha512-JTFPF6xrfjt0mnfGPgzcLiMwYmvIyNaoizp8BYzv8FE8KrT6GBGDZ190rtt+O7Wke3gG/MFHyiY9YGNeimof4w== + +"@codemirror/view@6.43.13": + version "6.43.13" + resolved "https://registry.yarnpkg.com/@codemirror/view/-/view-6.43.13.tgz#a2d0286bf9e6051cb89076fd1c8dd58b907008d0" + integrity sha512-sihaFrUzAsYBQsL9J2t69y8nfMQGwcYmggAZsk+kjPbjYZMyuf2hU8tUNTZ+P+isb6XRr8JE22TZlJxBoVdH1A== + dependencies: + "@codemirror/state" "^6.7.0" + crelt "^1.0.6" + style-mod "^4.1.0" + w3c-keyname "^2.2.4" + +"@codemirror/view@^6.17.0", "@codemirror/view@^6.23.0", "@codemirror/view@^6.27.0", "@codemirror/view@^6.37.0", "@codemirror/view@^6.42.0": + version "6.43.15" + resolved "https://registry.yarnpkg.com/@codemirror/view/-/view-6.43.15.tgz#3da2515b3919e199b68520a5b6e559c2a4cfbe9e" + integrity sha512-HHsfpqFeHyXLs983pSRe38Xajs0vFWZQ2BuX0m7Ki8w3jZ5iD8cuR3lBz2/5/X53Dhf32SBHKh6rtSTB6tKeGw== + dependencies: + "@codemirror/state" "^6.7.0" + crelt "^1.0.6" + style-mod "^4.1.0" + w3c-keyname "^2.2.4" + "@commitlint/cli@^19.8.1": version "19.8.1" resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-19.8.1.tgz#85f7d9f331344e1f0a2b9d8b24fd3695466e1158" @@ -1683,10 +1822,10 @@ debug "^4.3.1" minimatch "^10.2.4" -"@eslint/config-helpers@^0.6.0": - version "0.6.0" - resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.6.0.tgz#ef9a36881d39dfd5dbeac22b0da997fabfb08b03" - integrity sha512-ii6Bw9jJ2zi2cWA2Z+9/QZ/+3DX6kwaV5Q986D/CdP3Lap3w/pgQZ373FV7byY/i7L4IRH/G43I5dz1ClsCbpA== +"@eslint/config-helpers@^0.7.0": + version "0.7.0" + resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.7.0.tgz#09ee4aa07b73f059ec2d4c74bf4b2ff02b322377" + integrity sha512-DObd/KKUsU+FaFv4PLxSRenpXfQWmPXXP3pPZ6/K1PCrMu2vQpMDMuQe/BqYeoLcz8ro0bVDF1RxOJgfVEdhUw== dependencies: "@eslint/core" "^1.2.1" @@ -1734,17 +1873,22 @@ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.11.tgz#a269e055e40e2f45873bae9d1a2fdccbd314ea3f" integrity sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg== -"@formatjs/intl-unified-numberformat@^3.2.0": - version "3.3.7" - resolved "https://registry.yarnpkg.com/@formatjs/intl-unified-numberformat/-/intl-unified-numberformat-3.3.7.tgz#9995a24568908188e716d81a1de5b702b2ee00e2" - integrity sha512-KnWgLRHzCAgT9eyt3OS34RHoyD7dPDYhRcuKn+/6Kv2knDF8Im43J6vlSW6Hm1w63fNq3ZIT1cFk7RuVO3Psag== - dependencies: - "@formatjs/intl-utils" "^2.3.0" +"@formatjs/fast-memoize@3.1.7": + version "3.1.7" + resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-3.1.7.tgz#5f79b3756e4bcb5faee47b3a2f01216e1212c9e4" + integrity sha512-zXfhLpvA6T7+efdt9JLbBwZ00tT7NsBMDVnDu8rpHeNNv8KfRZAMo2gkG0k9lK/Nzc//3kJ9pImsfuJxk3KhUA== -"@formatjs/intl-utils@^2.3.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@formatjs/intl-utils/-/intl-utils-2.3.0.tgz#2dc8c57044de0340eb53a7ba602e59abf80dc799" - integrity sha512-KWk80UPIzPmUg+P0rKh6TqspRw0G6eux1PuJr+zz47ftMaZ9QDwbGzHZbtzWkl5hgayM/qrKRutllRC7D/vVXQ== +"@formatjs/icu-messageformat-parser@3.5.17": + version "3.5.17" + resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-3.5.17.tgz#7ac90ff6dde99468cd0b4a3f55344ccf8ae2ed87" + integrity sha512-cN9jhVqT7u0K9tix43fhjoUwL0nazyW6zsNIXs2QdPADr+nurPfYyssUiMqcSCGlPcCiqnYVxgSn7zBSuI+5Bg== + dependencies: + "@formatjs/icu-skeleton-parser" "2.1.11" + +"@formatjs/icu-skeleton-parser@2.1.11": + version "2.1.11" + resolved "https://registry.yarnpkg.com/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-2.1.11.tgz#09226edf55a18e3fea80304d2cc95aaeb0095436" + integrity sha512-j8cUmOJzVgkHuS0QiQ6ga76UIoLOFSAMWhs7aZJztH3aAdCOAE6vpC8KVvFB4cU10ON0y2/5oOVmPJ43s2lTwA== "@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": version "9.3.0" @@ -2064,6 +2208,64 @@ resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz#4fc56c15c580b9adb7dc3c333a134e540b44bfb1" integrity sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw== +"@lezer/common@1.5.3", "@lezer/common@^1.0.0", "@lezer/common@^1.1.0", "@lezer/common@^1.2.0", "@lezer/common@^1.3.0", "@lezer/common@^1.5.0": + version "1.5.3" + resolved "https://registry.yarnpkg.com/@lezer/common/-/common-1.5.3.tgz#1f0bf96f8f4949ef761991934b2f93947133b2ec" + integrity sha512-H0iErY4e43LpXbYDyBci5W4v/RwTgGV3YzYOlJPiGZ8RY8w51kVE+xLn1tg3Z6UmSfyETvtsUK3r7YsgDQEI7Q== + +"@lezer/highlight@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@lezer/highlight/-/highlight-1.2.4.tgz#e32dd87088af6b301ca0b2670c054c939918ff78" + integrity sha512-4UeRVFO0lsBaM7GA32zOqbmqNPme9jedo8Ey+5c5656MU3MLitMLIA8aCZTYjUMEpEsuSeXEm78Uea6Iq3bvSg== + dependencies: + "@lezer/common" "^1.3.0" + +"@lezer/highlight@^1.0.0", "@lezer/highlight@^1.1.3", "@lezer/highlight@^1.2.0": + version "1.2.5" + resolved "https://registry.yarnpkg.com/@lezer/highlight/-/highlight-1.2.5.tgz#af43ba19f2cd50713eb045ab827085a0aa6d8592" + integrity sha512-O1GMVKgtf5YspFaRzpmqkVgMtIk2HG9uMAbH6wdAIdNh3TVzCsch/+cRi+6l2//UGDKe6NB9BW3cvuR5ezMQ0w== + dependencies: + "@lezer/common" "^1.3.0" + +"@lezer/javascript@^1.0.0": + version "1.5.6" + resolved "https://registry.yarnpkg.com/@lezer/javascript/-/javascript-1.5.6.tgz#31edb7f3e8c433eb0e6ef295024f26a9bf093d6c" + integrity sha512-sEvOqpl4vJQca0NugSQK02vQPbc5KrvoojnYGoqqFgFO0MtcYhwGiHKVEB+LuXYJnfyXo4QPA8ztbrEa4Fw5NA== + dependencies: + "@lezer/common" "^1.2.0" + "@lezer/highlight" "^1.1.3" + "@lezer/lr" "^1.3.0" + +"@lezer/json@^1.0.0": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@lezer/json/-/json-1.0.3.tgz#e773a012ad0088fbf07ce49cfba875cc9e5bc05f" + integrity sha512-BP9KzdF9Y35PDpv04r0VeSTKDeox5vVr3efE7eBbx3r4s3oNLfunchejZhjArmeieBH+nVOpgIiBJpEAv8ilqQ== + dependencies: + "@lezer/common" "^1.2.0" + "@lezer/highlight" "^1.0.0" + "@lezer/lr" "^1.0.0" + +"@lezer/lr@^1.0.0", "@lezer/lr@^1.3.0", "@lezer/lr@^1.4.0": + version "1.4.11" + resolved "https://registry.yarnpkg.com/@lezer/lr/-/lr-1.4.11.tgz#e335231c2c8e58a8d0e78de8dbcebf64ba6c7681" + integrity sha512-UwgZcl1R66H2hDzBrA7kWyYmX6s8p5TQ+e/t7CuvgCtBEPxbEPaHYHu+pJBvTvDotEJpuQkJjbXuHiw5Cixxgw== + dependencies: + "@lezer/common" "^1.0.0" + +"@lezer/yaml@^1.0.0": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@lezer/yaml/-/yaml-1.0.4.tgz#66a622188f1984a71d34506759b5807699043589" + integrity sha512-2lrrHqxalACEbxIbsjhqGpSW8kWpUKuY6RHgnSAFZa6qK62wvnPxA8hGOwOoDbwHcOFs5M4o27mjGu+P7TvBmw== + dependencies: + "@lezer/common" "^1.2.0" + "@lezer/highlight" "^1.0.0" + "@lezer/lr" "^1.4.0" + +"@marijn/find-cluster-break@^1.0.0": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@marijn/find-cluster-break/-/find-cluster-break-1.0.4.tgz#42c2aea61cda307cdb1347444792452d7b5dbfb4" + integrity sha512-Wy0V7+SGUjnF9/TkiM1hKVDPj7jKXduPNboMVtHTA8dySMURWqfg/JZ9E2Sq8JgSJmkl7k7Qe9FLeMSrSraWmQ== + "@nodable/entities@^2.1.0": version "2.1.1" resolved "https://registry.yarnpkg.com/@nodable/entities/-/entities-2.1.1.tgz#ce41931e9b72606d7f0598d665e46e889285d78a" @@ -2235,15 +2437,15 @@ resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== -"@rancher/icons@2.0.62": - version "2.0.62" - resolved "https://registry.yarnpkg.com/@rancher/icons/-/icons-2.0.62.tgz#42d3aa89d03a2e0e551332e99c8102dfdd422746" - integrity sha512-ywGk1NSrIdN1zllpbDRU3ESVW/D0ExRZFBz+YPGAo9G08VzWxKIcT5GG5Nd2GXLTcUestlq1JwkKDaVAM8hkmQ== +"@rancher/icons@2.0.65": + version "2.0.65" + resolved "https://registry.yarnpkg.com/@rancher/icons/-/icons-2.0.65.tgz#83ef3c28a7a18cfa07c99a7a8895b5e7b6a29742" + integrity sha512-AmPjzeNfIPk8AeQa1PawJfUXQ7iCDYxbkmRCsr3N4Kbx7/Tudko85pcUjjCWXIFaqiYQjBfQVArgwXY1ji1MNw== -"@rancher/shell@3.0.13": - version "3.0.13" - resolved "https://registry.yarnpkg.com/@rancher/shell/-/shell-3.0.13.tgz#b1bd7d554d49a5ed6766363e29ada08d0f85e46b" - integrity sha512-bkAtBKlTVxq2VXjTjJO0UNMtI8tGjuPeYMeRk3F/W/w18dpIMi3Si13ymyjxX3O5E0uGvw1gRkcm15MHmCMIbg== +"@rancher/shell@3.0.14": + version "3.0.14" + resolved "https://registry.yarnpkg.com/@rancher/shell/-/shell-3.0.14.tgz#773ec8bcb9e9219f2ddc5b5f2ce518f0541271bb" + integrity sha512-gj13qq5BHWBNGaDtXrHVD99A+9FyBDFywT4xcX6S3lIJFiecZ4xdbfvx27TfTOfo8QxwyS6sjhNWYLTxwFh6yg== dependencies: "@aws-sdk/client-ec2" "3.1041.0" "@aws-sdk/client-eks" "3.1041.0" @@ -2253,17 +2455,30 @@ "@babel/plugin-proposal-private-methods" "7.18.6" "@babel/plugin-proposal-private-property-in-object" "7.14.5" "@babel/preset-typescript" "7.16.7" + "@codemirror/autocomplete" "6.20.3" + "@codemirror/commands" "6.11.1" + "@codemirror/lang-javascript" "6.2.5" + "@codemirror/lang-json" "6.0.2" + "@codemirror/lang-yaml" "6.1.3" + "@codemirror/language" "6.12.4" + "@codemirror/lint" "6.9.7" + "@codemirror/search" "6.7.2" + "@codemirror/state" "6.7.6" + "@codemirror/view" "6.43.13" "@eslint/js" "10.0.1" + "@lezer/common" "1.5.3" + "@lezer/highlight" "1.2.4" "@novnc/novnc" "1.2.0" "@popperjs/core" "2.11.8" - "@rancher/icons" "2.0.62" + "@rancher/icons" "2.0.65" + "@replit/codemirror-vim" "6.4.0" "@smithy/fetch-http-handler" "5.1.1" "@types/is-url" "1.2.30" "@types/node" "25.3.3" "@types/semver" "7.7.1" "@typescript-eslint/eslint-plugin" "8.62.0" - "@typescript-eslint/parser" "8.62.0" - "@vee-validate/zod" "4.15.0" + "@typescript-eslint/parser" "8.70.0" + "@vee-validate/zod" "4.15.1" "@vue/cli-plugin-babel" "~5.0.0" "@vue/cli-plugin-typescript" "~5.0.0" "@vue/cli-service" "5.0.8" @@ -2275,9 +2490,9 @@ "@xterm/addon-web-links" "0.12.0" "@xterm/addon-webgl" "0.19.0" "@xterm/xterm" "6.0.0" - add "2.0.6" + add "2.0.9" ansi_up "5.0.0" - axios "1.18.0" + axios "1.20.0" axios-retry "3.1.9" babel-preset-vue "2.0.2" cache-loader "4.1.0" @@ -2287,7 +2502,7 @@ codemirror-editor-vue3 "2.8.0" color "5.0.3" cookie-universal "2.2.2" - core-js "3.48.0" + core-js "3.50.0" cron-validator "1.4.0" cronstrue "3.9.0" css-loader "6.7.3" @@ -2297,17 +2512,17 @@ dayjs "1.11.18" diff "9.0.0" diff2html "3.4.24" - dompurify "3.4.12" + dompurify "3.4.16" element-matches "^0.1.2" entities "4.5.0" - eslint "10.5.0" + eslint "10.8.0" eslint-import-resolver-node "0.3.9" eslint-module-utils "2.6.1" eslint-plugin-cypress "4.3.0" eslint-plugin-import "2.32.0" eslint-plugin-jest "29.15.2" eslint-plugin-n "17.24.0" - eslint-plugin-vue "10.9.2" + eslint-plugin-vue "10.10.0" event-target-shim "5.0.1" file-saver "2.0.5" floating-vue "5.2.2" @@ -2315,14 +2530,14 @@ frontmatter-markdown-loader "3.7.0" globals "17.7.0" identicon.js "2.3.3" - intl-messageformat "7.8.4" + intl-messageformat "11.2.14" is-url "1.2.4" jest "29.7.0" jest-environment-jsdom "29.7.0" jest-serializer-vue "2.0.2" jexl "2.3.0" jquery "3.5.1" - js-yaml "4.3.0" + js-yaml "4.3.2" js-yaml-loader "1.2.2" jsonpath-plus "10.3.0" jsrsasign "11.1.1" @@ -2332,7 +2547,7 @@ neostandard "0.13.0" node-polyfill-webpack-plugin "3.0.0" nodemon "2.0.22" - nyc "17.1.0" + nyc "18.0.0" papaparse "5.3.0" portal-vue "~3.0.0" sass "1.97.3" @@ -2344,7 +2559,7 @@ ufo "0.7.11" unfetch "4.2.0" vee-validate "^4.15.1" - vue "3.5.29" + vue "3.5.42" vue-eslint-parser "10.4.1" vue-router "4.6.4" vue-select "4.0.0-beta.6" @@ -2359,6 +2574,18 @@ yarn "1.22.22" zod "3.24.3" +"@replit/codemirror-vim-core@^0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@replit/codemirror-vim-core/-/codemirror-vim-core-0.1.0.tgz#2f0d17b6e4a4859e261945247bc9ce50c87e580f" + integrity sha512-1i6EBKpcNfDKvTmTh6N6g9lL6udD5t+uFNh4JCqozRnVlvUGOps7h/QzS2ne4zcvPUjvApKpmcP7Grc3fNbZiQ== + +"@replit/codemirror-vim@6.4.0": + version "6.4.0" + resolved "https://registry.yarnpkg.com/@replit/codemirror-vim/-/codemirror-vim-6.4.0.tgz#7ec9b827b53de36caf4a0ed1272bf55019846a4f" + integrity sha512-t9UMDNhkmeAkl0uRbiJVotv97bGD6mf4GyJJoEbrjUqa/Pov0s9eL+4AaI0Xto3OGri17i9qwIpT0JbVlVXt8A== + dependencies: + "@replit/codemirror-vim-core" "^0.1.0" + "@rtsao/scc@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" @@ -3090,6 +3317,17 @@ "@typescript-eslint/visitor-keys" "8.62.0" debug "^4.4.3" +"@typescript-eslint/parser@8.70.0": + version "8.70.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.70.0.tgz#96ce2de96c06c8442fea1a8f7b07855a56b3c5e3" + integrity sha512-zYvrmj9Yxd63UGaXw+kdt6A0F0s0qveJyuatIM77bYC2DE4pgmg7a50u8LR7PRtXd0x+h+Tl3eXabGm06SWd3Q== + dependencies: + "@typescript-eslint/scope-manager" "8.70.0" + "@typescript-eslint/types" "8.70.0" + "@typescript-eslint/typescript-estree" "8.70.0" + "@typescript-eslint/visitor-keys" "8.70.0" + debug "^4.4.3" + "@typescript-eslint/project-service@8.62.0": version "8.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/project-service/-/project-service-8.62.0.tgz#ab74c1abb4959fb4c3ba7d7edc6554ee245db990" @@ -3099,6 +3337,15 @@ "@typescript-eslint/types" "^8.62.0" debug "^4.4.3" +"@typescript-eslint/project-service@8.70.0": + version "8.70.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/project-service/-/project-service-8.70.0.tgz#a62e837362f26c604ad15b20bacce1c3f4d6b552" + integrity sha512-hFHbTNqhU9G+2eKFXCBVb1tjFT/LceiJ4+HfLO4pTpDI0KHi6iajpcFFkaSQ9gXmCh7n82A0PthaayEdN6mspQ== + dependencies: + "@typescript-eslint/tsconfig-utils" "^8.70.0" + "@typescript-eslint/types" "^8.70.0" + debug "^4.4.3" + "@typescript-eslint/scope-manager@8.62.0": version "8.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.62.0.tgz#a7a7b428d32444bc9a4fe16f24a78fc124283fd4" @@ -3107,16 +3354,34 @@ "@typescript-eslint/types" "8.62.0" "@typescript-eslint/visitor-keys" "8.62.0" +"@typescript-eslint/scope-manager@8.70.0": + version "8.70.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.70.0.tgz#b77628b03c9c56ef21fb5a6bc2f4a4335163b999" + integrity sha512-8nP3Kwh5hlgZ4FicGvmznAmJe8UL4sdU8tLukrPaMuQmDuk4Y8xYfzu/aYZW4xT2JCgc7H/TpDI5cGlxcWJSqQ== + dependencies: + "@typescript-eslint/types" "8.70.0" + "@typescript-eslint/visitor-keys" "8.70.0" + "@typescript-eslint/tsconfig-utils@8.62.0": version "8.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.62.0.tgz#9440a673581c6d9de308c4d5803dd52ed5d71729" integrity sha512-y2GAdB6ykaXUvuspbYnizQc4oDDz0Tz/Yc7iWrXf9mx8vm/L/0vLHCe0tS2boG96Zy+DivnVDQ9ZUEWoHqqx1g== +"@typescript-eslint/tsconfig-utils@8.70.0": + version "8.70.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.70.0.tgz#f583ca72159c4fd8e775c153da3241de6b77974f" + integrity sha512-adnkeeNq9Sq1sUf4+FRVc0KdgYghzsgFpZSQVZVvY0LCuUuN0FnQgyGzCJeC4fW1cdXseBAjU2EOqUIjbNcZUw== + "@typescript-eslint/tsconfig-utils@^8.62.0": version "8.68.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.68.0.tgz#594d7a3c5952055b3c431fc563ca7fd1defcce18" integrity sha512-F7zrGQfiJHojPwi8vhxZQC1tWtJzvL74cK/nqri2lk8YUXvYaYwl263xOJ69jDWPUk1hmcdoayFwk9lX09npVw== +"@typescript-eslint/tsconfig-utils@^8.70.0": + version "8.72.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.72.0.tgz#a71e770c420ccbd7afc081f388bfa87d1958dc16" + integrity sha512-0vbxCf7xLVPSjcOdm6eQbgViH8EDJ8xnl1laLT9yoqSz2YmcSfSg5Vdl0JUvZf6rcuJ0ZivJIuMD4edTg8obaA== + "@typescript-eslint/type-utils@8.62.0": version "8.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.62.0.tgz#6f64d813ed9f340d796baed40cdab86b8e9a491a" @@ -3133,11 +3398,21 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.62.0.tgz#601427c10203d9f0f34f0b3e474df735eb12b593" integrity sha512-KvAclkktORPvM54TgLgA4z9HIV1M8zOgw9ZVNXl9f/8dLYfXYX1wkMXP7qmabpijQRV5bHJLOmoyGQbLMaUYeg== +"@typescript-eslint/types@8.70.0": + version "8.70.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.70.0.tgz#9ee52888cdeca604fe9436935219b967fa7f6053" + integrity sha512-asTOIYhDg4zdzOScCyaytrsV3cR6B4ecPQlXw/dJIm7J/MZTtCtfVII9JD8Geh4jTCrK/Xe6cg5UevoleMcoJQ== + "@typescript-eslint/types@^8.62.0": version "8.68.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.68.0.tgz#3f9d4e62fbe5728f09403cdc7b4d58af842ac1af" integrity sha512-9RnpsGJjrAllCMefGVVsImJM24YurhC0Q1h4UbvivtvOqXmR/vEJge2OoE++z9m6hyg8T1Q8t5SNT6tHSbrxcg== +"@typescript-eslint/types@^8.70.0": + version "8.72.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.72.0.tgz#d90bb9954fefa13acbcdb43bb7c0155f74d60fca" + integrity sha512-Adfoy59kxNEjT5E5fnyrp7GpHYuWs8ONbdohu4ez6IU46qDq8LltG90tLmkucZB2uhYL8mqBjtXqGd8yhfjXqQ== + "@typescript-eslint/typescript-estree@8.62.0": version "8.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.62.0.tgz#b96b55d02e26aa09434421c3fa678e525ca09a4c" @@ -3153,6 +3428,21 @@ tinyglobby "^0.2.15" ts-api-utils "^2.5.0" +"@typescript-eslint/typescript-estree@8.70.0": + version "8.70.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.70.0.tgz#79cfcd9678ee28ea69cc13032c0f89bb1d298917" + integrity sha512-d9NmHMPEKQ7QCLLm1jI3zmoQBwT5KwFYjXBJ9ymZfKCUU+5rmTRykKAFvH5Qn/ZCds3CEAFS9OC9M/jkl0X2bA== + dependencies: + "@typescript-eslint/project-service" "8.70.0" + "@typescript-eslint/tsconfig-utils" "8.70.0" + "@typescript-eslint/types" "8.70.0" + "@typescript-eslint/visitor-keys" "8.70.0" + debug "^4.4.3" + minimatch "^10.2.2" + semver "^7.7.3" + tinyglobby "^0.2.15" + ts-api-utils "^2.5.0" + "@typescript-eslint/utils@8.62.0", "@typescript-eslint/utils@^8.0.0", "@typescript-eslint/utils@^8.13.0": version "8.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.62.0.tgz#b5228524ca1ee51af40e156c82d425dec3e01cfe" @@ -3171,13 +3461,21 @@ "@typescript-eslint/types" "8.62.0" eslint-visitor-keys "^5.0.0" -"@vee-validate/zod@4.15.0": - version "4.15.0" - resolved "https://registry.yarnpkg.com/@vee-validate/zod/-/zod-4.15.0.tgz#2de193da114eda9f873b5a677f13c23bcecb58aa" - integrity sha512-MpvIKiyg9X5yD8bJW0no2AU7wtR2T5mrvD9tuPRiie951sU2n6QKgMV38qKKOiqFBCxsMSjIuLLLV3V5kVE4nQ== +"@typescript-eslint/visitor-keys@8.70.0": + version "8.70.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.70.0.tgz#b451c8aea76dc97fc768b8d9d7f61019bf789628" + integrity sha512-BoC8PiO4Hkdo0TVJh9Ntxr5MxPDI7/oFsrygN5ADelFSeXG/qgNuucIGA+L5Z6JpPTE/uRfcTWtscjbUaufepQ== + dependencies: + "@typescript-eslint/types" "8.70.0" + eslint-visitor-keys "^5.0.0" + +"@vee-validate/zod@4.15.1": + version "4.15.1" + resolved "https://registry.yarnpkg.com/@vee-validate/zod/-/zod-4.15.1.tgz#69d583c175305e50e5cdcb1db840601d3a5a984e" + integrity sha512-329Z4TDBE5Vx0FdbA8S4eR9iGCFFUNGbxjpQ20ff5b5wGueScjocUIx9JHPa79LTG06RnlUR4XogQsjN4tecKA== dependencies: type-fest "^4.8.3" - vee-validate "4.15.0" + vee-validate "4.15.1" "@vue-flow/background@^1.3.0": version "1.3.2" @@ -3475,6 +3773,17 @@ estree-walker "^2.0.2" source-map-js "^1.2.1" +"@vue/compiler-core@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.5.42.tgz#9d159ca5b1e7d792a42e9b1ddf2fc31edc9333dc" + integrity sha512-2Ye1ilMtKXxl8qZUrQ5j0CdgenFp/HFQmta6rfRyfEsTG69L6Wk+tWuNoHYHMx9E8tF2Slvdg1FuwDvAXdy1LQ== + dependencies: + "@babel/parser" "^7.29.8" + "@vue/shared" "3.5.42" + entities "^7.0.1" + estree-walker "^2.0.2" + source-map-js "^1.2.1" + "@vue/compiler-dom@3.5.29": version "3.5.29" resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.5.29.tgz#055cf5492005249591c7fb45868a874468e4ffb3" @@ -3483,7 +3792,30 @@ "@vue/compiler-core" "3.5.29" "@vue/shared" "3.5.29" -"@vue/compiler-sfc@3.5.29", "@vue/compiler-sfc@^3.5.18": +"@vue/compiler-dom@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.5.42.tgz#2ac9570010bbffb7c08d8a904a956ecbabcdf6c6" + integrity sha512-qbhQZEFmycr+ni/qyuccS4sucNN7VAbDfbkvNxWOX2VfgFm90MNs3/UhRNKoPMEIVn0F8gdlYjLPvqxHwHeQOA== + dependencies: + "@vue/compiler-core" "3.5.42" + "@vue/shared" "3.5.42" + +"@vue/compiler-sfc@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.5.42.tgz#502c50e7864a980b7f147b78974e3b49fefcc16d" + integrity sha512-fkCAFB4okcAANGMThboWnScp/gzWjU0ZSkVnjTIiplmMDq2uq0tIB3j+xVu4rhv5rvOgBySCysudmbMd6xRRqw== + dependencies: + "@babel/parser" "^7.29.8" + "@vue/compiler-core" "3.5.42" + "@vue/compiler-dom" "3.5.42" + "@vue/compiler-ssr" "3.5.42" + "@vue/shared" "3.5.42" + estree-walker "^2.0.2" + magic-string "^0.30.21" + postcss "^8.5.19" + source-map-js "^1.2.1" + +"@vue/compiler-sfc@^3.5.18": version "3.5.29" resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.5.29.tgz#8b1b0707fb53c122fedd566244a564eaf40ee71f" integrity sha512-oJZhN5XJs35Gzr50E82jg2cYdZQ78wEwvRO6Y63TvLVTc+6xICzJHP1UIecdSPPYIbkautNBanDiWYa64QSFIA== @@ -3506,6 +3838,14 @@ "@vue/compiler-dom" "3.5.29" "@vue/shared" "3.5.29" +"@vue/compiler-ssr@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.5.42.tgz#a3121ad517e9062121762e452f125674cc6162fa" + integrity sha512-xmLk3wLkbizPAiLyomjgFFosf2ys9b5Ghb+oh/k2tnvipNz8OFrQOiTcWCzyK7MpBp9KkyGtfvgfLUivbmuGYA== + dependencies: + "@vue/compiler-dom" "3.5.42" + "@vue/shared" "3.5.42" + "@vue/component-compiler-utils@^3.1.0", "@vue/component-compiler-utils@^3.3.0": version "3.3.0" resolved "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz#f9f5fb53464b0c37b2c8d2f3fbfe44df60f61dc9" @@ -3554,44 +3894,50 @@ dependencies: rfdc "^1.4.1" -"@vue/reactivity@3.5.29": - version "3.5.29" - resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.5.29.tgz#68fbaedcc2584328060edceedc4d4370b49c9fab" - integrity sha512-zcrANcrRdcLtmGZETBxWqIkoQei8HaFpZWx/GHKxx79JZsiZ8j1du0VUJtu4eJjgFvU/iKL5lRXFXksVmI+5DA== +"@vue/reactivity@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.5.42.tgz#800220f023d36fd04d94460c7c7ab5808f8ae75f" + integrity sha512-TzNNfKpb7hDxbQltwAut8VDQA5YP+BuRlxntHUuRjyKwlMvmAPbs3unhCvieijifY6vFfVBwsS7wG/C7uq+bEQ== dependencies: - "@vue/shared" "3.5.29" + "@vue/shared" "3.5.42" -"@vue/runtime-core@3.5.29": - version "3.5.29" - resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.5.29.tgz#fbd34110aa47e74a22fe430734018bec56913b40" - integrity sha512-8DpW2QfdwIWOLqtsNcds4s+QgwSaHSJY/SUe04LptianUQ/0xi6KVsu/pYVh+HO3NTVvVJjIPL2t6GdeKbS4Lg== +"@vue/runtime-core@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.5.42.tgz#a8af85746d6f9a9f1f8e4626be24eb0b8c9a1e72" + integrity sha512-9uACtuHs7vJGkm5Bp3xu4xRDLFTIYy5DgxpToVjqGIAhAEKwQfsaLvKINhM6nFVp6bZPRFGdDqd1g52MqKsotA== dependencies: - "@vue/reactivity" "3.5.29" - "@vue/shared" "3.5.29" + "@vue/reactivity" "3.5.42" + "@vue/shared" "3.5.42" -"@vue/runtime-dom@3.5.29": - version "3.5.29" - resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.5.29.tgz#4eb686b22178f13c262ea1d0d7171a3134ced21f" - integrity sha512-AHvvJEtcY9tw/uk+s/YRLSlxxQnqnAkjqvK25ZiM4CllCZWzElRAoQnCM42m9AHRLNJ6oe2kC5DCgD4AUdlvXg== +"@vue/runtime-dom@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.5.42.tgz#c7b487a92b2c381db547c1aa5040bd7febb40448" + integrity sha512-rsCmhiWLaRxGltLwhlCWyYkFn7WAbKRh0q17eZ1A6Dq6eqc2ACQ61IIryxz0LrsvCzHSilLA9JHovVwM8CNE2g== dependencies: - "@vue/reactivity" "3.5.29" - "@vue/runtime-core" "3.5.29" - "@vue/shared" "3.5.29" + "@vue/reactivity" "3.5.42" + "@vue/runtime-core" "3.5.42" + "@vue/shared" "3.5.42" csstype "^3.2.3" -"@vue/server-renderer@3.5.29": - version "3.5.29" - resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.5.29.tgz#9cbcbf676b2976fbb8171d5de79501894ba84cad" - integrity sha512-G/1k6WK5MusLlbxSE2YTcqAAezS+VuwHhOvLx2KnQU7G2zCH6KIb+5Wyt6UjMq7a3qPzNEjJXs1hvAxDclQH+g== +"@vue/server-renderer@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.5.42.tgz#27c3d4743273bf7e839fc5a5e2f7db25e8d779e8" + integrity sha512-2++5dUyYS4gvo7xQXSECUDhB7TS0aOl5SeVfC5qSq1Jgfhjvegw1zqhwTIR3imZ+QYPJQw9gfcFvXGAjGZ7ajQ== dependencies: - "@vue/compiler-ssr" "3.5.29" - "@vue/shared" "3.5.29" + "@vue/compiler-ssr" "3.5.42" + "@vue/runtime-dom" "3.5.42" + "@vue/shared" "3.5.42" "@vue/shared@3.5.29", "@vue/shared@^3.5.18": version "3.5.29" resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.5.29.tgz#0fe0d7637b05599d56ca58d83a77c637a1774110" integrity sha512-w7SR0A5zyRByL9XUkCfdLs7t9XOHUyJ67qPGQjOou3p6GvBeBW+AVjUUmlxtZ4PIYaRvE+1LmK44O4uajlZwcg== +"@vue/shared@3.5.42": + version "3.5.42" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.5.42.tgz#a413cf21262502662354cda3b65ab31bca979202" + integrity sha512-2rPxex1jQf4jvl9MOHl6YaXCPcrNqz/FstMOEh3QWY+/OME9nQTvl9WYeCwhW7AFjaR0SnngZGlp/wkR6rkI6g== + "@vue/test-utils@2.4.6": version "2.4.6" resolved "https://registry.yarnpkg.com/@vue/test-utils/-/test-utils-2.4.6.tgz#7d534e70c4319d2a587d6a3b45a39e9695ade03c" @@ -3879,10 +4225,10 @@ acorn@^8.0.4, acorn@^8.0.5, acorn@^8.1.0, acorn@^8.11.0, acorn@^8.15.0, acorn@^8 resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.18.0.tgz#4faf01b2d6d326bfeed97aea1f52220b5f4c1940" integrity sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ== -add@2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/add/-/add-2.0.6.tgz#248f0a9f6e5a528ef2295dbeec30532130ae2235" - integrity sha512-j5QzrmsokwWWp6kUcJQySpbG+xfOBqqKnup3OIk1pz+kB/80SLorZ9V8zHFLO92Lcd+hbvq8bT+zOGoPkmBV0Q== +add@2.0.9: + version "2.0.9" + resolved "https://registry.yarnpkg.com/add/-/add-2.0.9.tgz#35bd7a6404d966435919bd8413d11895cf28666d" + integrity sha512-a6+u7hP0xmII7EBQenAIb6oMp9/vcW6EmrsD0ngUbLnE69Xtwj4yCbmHLUi5LZ6ggJB+AufHTaDbW1XBiYJwFw== address@^1.1.2: version "1.2.2" @@ -4207,13 +4553,13 @@ axios-retry@3.1.9: dependencies: is-retry-allowed "^1.1.0" -axios@1.18.0: - version "1.18.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.18.0.tgz#8a7f8854af280fcaae063272df2ed9f3837d2398" - integrity sha512-E32NzpYKp++W7XRe52rHiXV2ehxmh3wbdgO7MHeFM+vqxLBYHzt0ElkiImtOBxtOmyp0yoC8C6uESVV84Y2/hw== +axios@1.20.0: + version "1.20.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.20.0.tgz#515513445aa60e71d04b6521ca6210829ccb4786" + integrity sha512-r8aOh8j9cGKpgQAqpzrUHnSIc6a59Y3Xf/cv8sy1DrHCkZHzQGEuoq1tARk6qSyDdtQGSDgpb9kFlruzPvrgwg== dependencies: follow-redirects "^1.16.0" - form-data "^4.0.5" + form-data "^4.0.6" https-proxy-agent "^5.0.1" proxy-from-env "^2.1.0" @@ -5216,7 +5562,12 @@ core-js-compat@^3.43.0, core-js-compat@^3.48.0, core-js-compat@^3.8.3: dependencies: browserslist "^4.28.1" -core-js@3.48.0, core-js@^3.8.3: +core-js@3.50.0: + version "3.50.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.50.0.tgz#a18646fcb0097650189b4504c803e887bcae4c0a" + integrity sha512-BRWgOLKkFeCgRudR6zrs8p9XJZcE14grzKMMssoYrk6krtuEZ7MTKPIY5RzOnqsEKIR9kst7wNzphttraT+Yqw== + +core-js@^3.8.3: version "3.48.0" resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.48.0.tgz#1f813220a47bbf0e667e3885c36cd6f0593bf14d" integrity sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ== @@ -5309,6 +5660,11 @@ create-jest@^29.7.0: jest-util "^29.7.0" prompts "^2.0.1" +crelt@^1.0.5, crelt@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/crelt/-/crelt-1.0.7.tgz#3b441b2ddfa73161d6a2770aa4cd677f895eaf28" + integrity sha512-aK6BbWfhf4U/wCcLHKPJl/xa6VkVstRaPywWtMKGwuOLc/wZTyQYuoxgvZnNsBvv7Kg3YTBQYYBCggcviQczuA== + cron-validator@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/cron-validator/-/cron-validator-1.4.0.tgz#77ed4277b086c22e74ee65640f8456747afd4885" @@ -6056,10 +6412,10 @@ domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: dependencies: domelementtype "^2.2.0" -dompurify@3.4.12: - version "3.4.12" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.4.12.tgz#6fa2265e9bbdce882c4ace4107626051b448ffa8" - integrity sha512-zQvGet8Z2sWbQhCmfFz/T5QWH2oBmjnqK3qvOjaqaNLrLEF912WamU+ohnTp0TCep/MFVHpdJuCZEdFOdTnEFg== +dompurify@3.4.16: + version "3.4.16" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.4.16.tgz#c51b3709ea15ee9abb07e804f2ef30ea9b953128" + integrity sha512-sqo+pNp3qRhCIpbgRi1y8Tgk27Bo2Ry7w0dC1NBeNTdZChWjz9Xb/KOoZbRP/R6pQZ80Qw8YhXw13hWWBbMRnQ== optionalDependencies: "@types/trusted-types" "^2.0.7" @@ -6556,17 +6912,17 @@ eslint-plugin-react@^7.37.5: string.prototype.matchall "^4.0.12" string.prototype.repeat "^1.0.0" -eslint-plugin-vue@10.9.2: - version "10.9.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-10.9.2.tgz#571a3e1d826628f078094a748c9d4df49ad18668" - integrity sha512-4g7ZP3pYcuqd7Zp0pzUKcos0W+RkjBz4EGdhJ92FcYk6v03Ti/GK5NwjgsjxHK+98eXDbHeK7VtX1az7/8doZA== +eslint-plugin-vue@10.10.0: + version "10.10.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-10.10.0.tgz#e957b56853dea54e738136d849d85929954bdf3d" + integrity sha512-dL9x9rBHqqNcByWiLOHK6L0SB97V82/NC0cZRn9cXPjM7pCuWlpQQP9bFH4vjBv80ej1ZpzAkuD8zWH1o9bZbA== dependencies: - "@eslint-community/eslint-utils" "^4.4.0" + "@eslint-community/eslint-utils" "^4.9.1" natural-compare "^1.4.0" nth-check "^2.1.1" - postcss-selector-parser "^7.1.0" - semver "^7.6.3" - xml-name-validator "^4.0.0" + postcss-selector-parser "^7.1.4" + semver "^7.8.5" + xml-name-validator "^5.0.0" eslint-scope@5.1.1: version "5.1.1" @@ -6613,15 +6969,15 @@ eslint-visitor-keys@^4.2.0, eslint-visitor-keys@^4.2.1: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz#9e3c9489697824d2d4ce3a8ad12628f91e9f59be" integrity sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA== -eslint@10.5.0: - version "10.5.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-10.5.0.tgz#5fca69d6b41fe7e00ba22d4100b2e44efe439ad5" - integrity sha512-1y+7C+vi12bUK1IpZeaV3gsH9fHLBmPvYmPx42pvT/E9yG0IC8g3PUZZgp0+JLJl7ZDK0flc2gc+Aw9dpCvIsQ== +eslint@10.8.0: + version "10.8.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-10.8.0.tgz#e6d19907a3f090a53a022261ba34c5ff6d04908b" + integrity sha512-nuKKvN+oIBO0koN7Tm7dlkmnkc21mtt0QJLwAKzjLq14y6lRTdVG36MZHJ8eQHwdJMwZbQNMlPOYedMq/oVJvQ== dependencies: "@eslint-community/eslint-utils" "^4.8.0" "@eslint-community/regexpp" "^4.12.2" "@eslint/config-array" "^0.23.5" - "@eslint/config-helpers" "^0.6.0" + "@eslint/config-helpers" "^0.7.0" "@eslint/core" "^1.2.1" "@eslint/plugin-kit" "^0.7.2" "@humanfs/node" "^0.16.6" @@ -6645,7 +7001,7 @@ eslint@10.5.0: imurmurhash "^0.1.4" is-glob "^4.0.0" json-stable-stringify-without-jsonify "^1.0.1" - minimatch "^10.2.4" + minimatch "^10.2.5" natural-compare "^1.4.0" optionator "^0.9.3" @@ -7082,7 +7438,7 @@ fork-ts-checker-webpack-plugin@^6.4.0: semver "^7.3.2" tapable "^1.0.0" -form-data@^4.0.0, form-data@^4.0.5: +form-data@^4.0.0, form-data@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.6.tgz#28e864e1b786dbebb68db1f452f9635278665827" integrity sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ== @@ -7269,7 +7625,7 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@7.2.3, glob@^10.4.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: +glob@7.2.3, glob@^10.4.2, glob@^13.0.3, glob@^13.0.6, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -7763,25 +8119,13 @@ internal-slot@^1.1.0: resolved "https://registry.yarnpkg.com/internmap/-/internmap-2.0.3.tgz#6685f23755e43c524e251d29cbc97248e3061009" integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== -intl-format-cache@^4.2.21: - version "4.3.1" - resolved "https://registry.yarnpkg.com/intl-format-cache/-/intl-format-cache-4.3.1.tgz#484d31a9872161e6c02139349b259a6229ade377" - integrity sha512-OEUYNA7D06agqPOYhbTkl0T8HA3QKSuwWh1HiClEnpd9vw7N+3XsQt5iZ0GUEchp5CW1fQk/tary+NsbF3yQ1Q== - -intl-messageformat-parser@^3.6.4: - version "3.6.4" - resolved "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-3.6.4.tgz#5199d106d816c3dda26ee0694362a9cf823978fb" - integrity sha512-RgPGwue0mJtoX2Ax8EmMzJzttxjnva7gx0Q7mKJ4oALrTZvtmCeAw5Msz2PcjW4dtCh/h7vN/8GJCxZO1uv+OA== +intl-messageformat@11.2.14: + version "11.2.14" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-11.2.14.tgz#610e4a21511d85dc06634424409d60bb1e9e441f" + integrity sha512-9f2VD1HFuxUvMw0RxsaP8WmMns6JRTnsNB/zghTFrp11ZktiXWwVDeZBPQchBKEmo+Gx/ZhxI7Qht7YglFD4PA== dependencies: - "@formatjs/intl-unified-numberformat" "^3.2.0" - -intl-messageformat@7.8.4: - version "7.8.4" - resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-7.8.4.tgz#c29146a06b9cd26662978a4d95fff2b133e3642f" - integrity sha512-yS0cLESCKCYjseCOGXuV4pxJm/buTfyCJ1nzQjryHmSehlptbZbn9fnlk1I9peLopZGGbjj46yHHiTAEZ1qOTA== - dependencies: - intl-format-cache "^4.2.21" - intl-messageformat-parser "^3.6.4" + "@formatjs/fast-memoize" "3.1.7" + "@formatjs/icu-messageformat-parser" "3.5.17" ip@2.0.1: version "2.0.1" @@ -8191,17 +8535,16 @@ istanbul-lib-instrument@^6.0.0, istanbul-lib-instrument@^6.0.2: istanbul-lib-coverage "^3.2.0" semver "^7.5.4" -istanbul-lib-processinfo@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz#366d454cd0dcb7eb6e0e419378e60072c8626169" - integrity sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg== +istanbul-lib-processinfo@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-processinfo/-/istanbul-lib-processinfo-3.0.1.tgz#2d5eaa48df7ea081fe816bceaf4b41591c079b4e" + integrity sha512-s3mX05h5wGZeScG6XnOanygPh4SJu5ujMc9YbvpnLGXWy1cRiGbp0NdVcjHxgoZt3WfQppfBsa0y+gWdYJ2pGQ== dependencies: archy "^1.0.0" cross-spawn "^7.0.3" istanbul-lib-coverage "^3.2.0" p-map "^3.0.0" - rimraf "^3.0.0" - uuid "^8.3.2" + rimraf "^6.1.3" istanbul-lib-report@^3.0.0: version "3.0.1" @@ -8706,10 +9049,10 @@ js-yaml-loader@1.2.2: loader-utils "^1.2.3" un-eval "^1.2.0" -js-yaml@4.3.0, js-yaml@^4.1.0, js-yaml@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.3.0.tgz#d1900572a7f7cf0b5f540c83673e60bad3436592" - integrity sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q== +js-yaml@4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.3.2.tgz#8e44fb14a2643c59726bb15787b5f1512cb3d3fb" + integrity sha512-SFNOvSJ+Dgf/9An904Yx+CgSlIPCkIpao4qo51lpee25TIRejdH3rhR4EZMGoNx3/TP3O+wzWuiTFl4sqbltzA== dependencies: argparse "^2.0.1" @@ -8721,6 +9064,13 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +js-yaml@^4.1.0, js-yaml@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.3.0.tgz#d1900572a7f7cf0b5f540c83673e60bad3436592" + integrity sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q== + dependencies: + argparse "^2.0.1" + jsdom@^20.0.0: version "20.0.3" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-20.0.3.tgz#886a41ba1d4726f67a8858028c99489fed6ad4db" @@ -9302,7 +9652,7 @@ minimalistic-crypto-utils@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== -minimatch@^10.2.2, minimatch@^10.2.4: +minimatch@^10.2.2, minimatch@^10.2.4, minimatch@^10.2.5: version "10.2.6" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.2.6.tgz#fd956bbe0b77241e9f15ac5dccb1c638060968ef" integrity sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A== @@ -9401,6 +9751,11 @@ nanoid@^3.3.11: resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.18.tgz#f66a2de1199ffde0fcf21c8a5f13106b1c081913" integrity sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w== +nanoid@^3.3.20: + version "3.3.20" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.20.tgz#dfd4444d85aa10111ef66ba85ed72e08ba0855d8" + integrity sha512-uKdg2G3GNCKQn9byYOpxbGqrT2fGO5KRt5J/8b3pok8rT6qxGWF6hxMyJiEYtAf+FVyYuD9hRaDqX5uPFYJ4ZQ== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -9599,10 +9954,10 @@ nwsapi@^2.2.2: resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.25.tgz#7ac2eb1e3679f159a6180010b055c3515eb3bb53" integrity sha512-kktSgNDIbyEIs/LrE6dtEMnfzxSDpXViFl6c4gFjz/CgtnL4GDCR3wyZXzjvAXsNB8dXU4dAfvIOgLMH2/vwLg== -nyc@17.1.0: - version "17.1.0" - resolved "https://registry.yarnpkg.com/nyc/-/nyc-17.1.0.tgz#b6349a401a62ffeb912bd38ea9a018839fdb6eb1" - integrity sha512-U42vQ4czpKa0QdI1hu950XuNhYqgoM+ZF1HT+VuUHL9hPfDPVvNQyltmMqdE9bUHMVa+8yNbc3QKTj8zQhlVxQ== +nyc@18.0.0: + version "18.0.0" + resolved "https://registry.yarnpkg.com/nyc/-/nyc-18.0.0.tgz#644c75c5cba4e8c571674016ac7f714fb143f20c" + integrity sha512-G5UyHinFkB1BxqGTrmZdB6uIYH0+v7ZnVssuflUDi+J+RhKWyAhRT1RCehBSI6jLFLuUUgFDyLt49mUtdO1XeQ== dependencies: "@istanbuljs/load-nyc-config" "^1.0.0" "@istanbuljs/schema" "^0.1.2" @@ -9613,11 +9968,11 @@ nyc@17.1.0: find-up "^4.1.0" foreground-child "^3.3.0" get-package-type "^0.1.0" - glob "^7.1.6" + glob "^13.0.6" istanbul-lib-coverage "^3.0.0" istanbul-lib-hook "^3.0.0" istanbul-lib-instrument "^6.0.2" - istanbul-lib-processinfo "^2.0.2" + istanbul-lib-processinfo "^3.0.0" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" @@ -9626,10 +9981,10 @@ nyc@17.1.0: p-map "^3.0.0" process-on-spawn "^1.0.0" resolve-from "^5.0.0" - rimraf "^3.0.0" + rimraf "^6.1.3" signal-exit "^3.0.2" - spawn-wrap "^2.0.0" - test-exclude "^6.0.0" + spawn-wrap "^3.0.0" + test-exclude "^8.0.0" yargs "^15.0.2" object-assign@^4.0.1, object-assign@^4.1.1: @@ -9895,6 +10250,11 @@ package-hash@^4.0.0: lodash.flattendeep "^4.4.0" release-zalgo "^1.0.0" +package-json-from-dist@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + pako@~1.0.2, pako@~1.0.5: version "1.0.11" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" @@ -10339,7 +10699,7 @@ postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-selector-parser@^7.0.0, postcss-selector-parser@^7.1.0: +postcss-selector-parser@^7.0.0: version "7.1.5" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-7.1.5.tgz#ee7b090724eb60739b530660e5b402200e694a97" integrity sha512-KvvtD7SrlBP7dlgkBghEE3r84CABm5SmV2aNcG4oCA+qDnJ/tvKonFVvwWAyyWUEwxuNawdfEAZKP9zM3oZ2Uw== @@ -10347,6 +10707,14 @@ postcss-selector-parser@^7.0.0, postcss-selector-parser@^7.1.0: cssesc "^3.0.0" util-deprecate "^1.0.2" +postcss-selector-parser@^7.1.4: + version "7.1.7" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-7.1.7.tgz#70e353032ced41529d70b7662227a74eb001d31b" + integrity sha512-wWBro/7hJ40ye6TPiXkUQoXKCw23xSsjriUvqd7Uls9Sso3oLiON1flc18cCdnjgCRXw4fBVqUJJeOdDTh3P3g== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + postcss-svgo@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" @@ -10384,6 +10752,15 @@ postcss@^8.2.6, postcss@^8.3.5, postcss@^8.4.19, postcss@^8.5.6: picocolors "^1.1.1" source-map-js "^1.2.1" +postcss@^8.5.19: + version "8.5.31" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.31.tgz#d44731fa02f8ae8371629ec7220e2ae0dbdf23ec" + integrity sha512-YUbWYCgErwnMAVkjUnYa+KlMBzGpHwiIt/DE7f0G33AuX2LH9UcTk6KgWxd3zRU+pN3u/C+Xl3EnMLM4Hea7Sg== + dependencies: + nanoid "^3.3.20" + picocolors "^1.1.1" + source-map-js "^1.2.2" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -10850,13 +11227,21 @@ rfdc@^1.4.1: resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca" integrity sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA== -rimraf@^3.0.0, rimraf@^3.0.2: +rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== dependencies: glob "^7.1.3" +rimraf@^6.1.3: + version "6.1.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-6.1.3.tgz#afbee236b3bd2be331d4e7ce4493bac1718981af" + integrity sha512-LKg+Cr2ZF61fkcaK1UdkH2yEBBKnYjTyWzTJT6KNPcSPaiT7HSdhtMXQuN5wkTX0Xu72KQ1l8S42rlmexS2hSA== + dependencies: + glob "^13.0.3" + package-json-from-dist "^1.0.1" + ripemd160@^2.0.0, ripemd160@^2.0.1, ripemd160@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.3.tgz#9be54e4ba5e3559c8eee06a25cd7648bbccdf5a8" @@ -11263,6 +11648,11 @@ sortablejs@1.14.0: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== +source-map-js@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.2.tgz#79fb88d97535a21cb27162cb05d211b67acea4ab" + integrity sha512-KGj/8Y43x35aZVDtt+J4mK1hoLGHULMYfSkODJNQjNDC3oW1PqPoxMwo0pLUsWM/UEGzON/NxeHywEfNXNP3Vw== + source-map-support@0.5.13: version "0.5.13" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" @@ -11294,15 +11684,16 @@ source-map@^0.7.4: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.6.tgz#a3658ab87e5b6429c8a1f3ba0083d4c61ca3ef02" integrity sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ== -spawn-wrap@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-2.0.0.tgz#103685b8b8f9b79771318827aa78650a610d457e" - integrity sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg== +spawn-wrap@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-3.0.0.tgz#8f8c3e69e7f6afcf9404beacaa3241f645d6ea5c" + integrity sha512-z+s5vv4KzFPJVddGab0xX2n7kQPGMdNUX5l9T8EJqsXdKTWpcxmAqWHpsgHEXoC1taGBCc7b79bi62M5kdbrxQ== dependencies: + cross-spawn "^7.0.6" foreground-child "^2.0.0" is-windows "^1.0.2" make-dir "^3.0.0" - rimraf "^3.0.0" + rimraf "^6.1.3" signal-exit "^3.0.2" which "^2.0.1" @@ -11585,6 +11976,11 @@ style-loader@1.2.1: loader-utils "^2.0.0" schema-utils "^2.6.6" +style-mod@^4.0.0, style-mod@^4.1.0: + version "4.1.4" + resolved "https://registry.yarnpkg.com/style-mod/-/style-mod-4.1.4.tgz#b8d718efca020766f90e0969daa751d5cccc5fd4" + integrity sha512-XXWIQt633/EpAFx8aZDOTjBzrCaGmhvEQlQo6MVPfa2OzO2cWo+4hV9h+6UkHYlXGfy+ODXKUdP7Pthmcu5ATw== + stylehacks@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" @@ -11693,6 +12089,15 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" +test-exclude@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-8.0.0.tgz#85891add3fa46bb822b1b1579c7f8c9a3d04ebd8" + integrity sha512-ZOffsNrXYggvU1mDGHk54I96r26P8SyMjO5slMKSc7+IWmtB/MQKnEC2fP51imB3/pT6YK5cT5E8f+Dd9KdyOQ== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^13.0.6" + minimatch "^10.2.2" + text-extensions@^2.0.0: version "2.4.0" resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-2.4.0.tgz#a1cfcc50cf34da41bfd047cc744f804d1680ea34" @@ -12163,15 +12568,7 @@ vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -vee-validate@4.15.0: - version "4.15.0" - resolved "https://registry.yarnpkg.com/vee-validate/-/vee-validate-4.15.0.tgz#eb77a9c867669d34abbc33ca5e16f2a991eb7ad5" - integrity sha512-PGJh1QCFwCBjbHu5aN6vB8macYVWrajbDvgo1Y/8fz9n/RVIkLmZCJDpUgu7+mUmCOPMxeyq7vXUOhbwAqdXcA== - dependencies: - "@vue/devtools-api" "^7.5.2" - type-fest "^4.8.3" - -vee-validate@^4.15.1: +vee-validate@4.15.1, vee-validate@^4.15.1: version "4.15.1" resolved "https://registry.yarnpkg.com/vee-validate/-/vee-validate-4.15.1.tgz#66e787e88916baa05f42e53bc0848e0878d50f91" integrity sha512-DkFsiTwEKau8VIxyZBGdO6tOudD+QoUBPuHj3e6QFqmbfCRj1ArmYWue9lEp6jLSWBIw4XPlDLjFIZNLdRAMSg== @@ -12265,16 +12662,16 @@ vue3-virtual-scroll-list@0.2.1: resolved "https://registry.yarnpkg.com/vue3-virtual-scroll-list/-/vue3-virtual-scroll-list-0.2.1.tgz#7fdc5be066c9b8d877614626a0bc02eb1fd12ad0" integrity sha512-G4KxITUOy9D4ro15zOp40D6ogmMefzjIyMsBKqN3xGbV1P6dlKYMx+BBXCKm3Nr/6iipcUKM272Sh2AJRyWMyQ== -vue@3.5.29: - version "3.5.29" - resolved "https://registry.yarnpkg.com/vue/-/vue-3.5.29.tgz#859a1cc5219eb1228c7ce6f355b27de080517111" - integrity sha512-BZqN4Ze6mDQVNAni0IHeMJ5mwr8VAJ3MQC9FmprRhcBYENw+wOAAjRj8jfmN6FLl0j96OXbR+CjWhmAmM+QGnA== +vue@3.5.42: + version "3.5.42" + resolved "https://registry.yarnpkg.com/vue/-/vue-3.5.42.tgz#6099e750a19c68a5c09f785808d5abb01558a3c1" + integrity sha512-4RyHQTbQvOPs3MfvUO1Sg0YRrKNnA0mAVtvpd12Tg1fKDN7OHBUl1IqSn8zGJjK9nI3NkNp8cgTpVrSZC5TTcA== dependencies: - "@vue/compiler-dom" "3.5.29" - "@vue/compiler-sfc" "3.5.29" - "@vue/runtime-dom" "3.5.29" - "@vue/server-renderer" "3.5.29" - "@vue/shared" "3.5.29" + "@vue/compiler-dom" "3.5.42" + "@vue/compiler-sfc" "3.5.42" + "@vue/runtime-dom" "3.5.42" + "@vue/server-renderer" "3.5.42" + "@vue/shared" "3.5.42" vuedraggable@4.1.0: version "4.1.0" @@ -12290,6 +12687,11 @@ vuex@4.1.0: dependencies: "@vue/devtools-api" "^6.0.0-beta.11" +w3c-keyname@^2.2.4: + version "2.2.8" + resolved "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-2.2.8.tgz#7b17c8c6883d4e8b86ac8aba79d39e880f8869c5" + integrity sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ== + w3c-xmlserializer@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073" @@ -12670,6 +13072,11 @@ xml-name-validator@^4.0.0: resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== +xml-name-validator@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-5.0.0.tgz#82be9b957f7afdacf961e5980f1bf227c0bf7673" + integrity sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg== + xml-naming@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/xml-naming/-/xml-naming-0.1.0.tgz#8ab7106c5b8d23caa2fabac1cadf17136379fbd8"