feat(core): Add OIDC support for SSO (#15988)

Co-authored-by: Andreas Fitzek <andreas.fitzek@n8n.io>
This commit is contained in:
Ricardo Espinoza
2025-06-13 10:18:14 -04:00
committed by GitHub
parent 0d5ac1f822
commit 30148df7f3
40 changed files with 1358 additions and 197 deletions

170
pnpm-lock.yaml generated
View File

@@ -1319,6 +1319,9 @@ importers:
open:
specifier: 7.4.2
version: 7.4.2
openid-client:
specifier: 6.5.0
version: 6.5.0
otpauth:
specifier: 9.1.1
version: 9.1.1
@@ -1899,7 +1902,7 @@ importers:
version: 0.19.0(@vue/compiler-sfc@3.5.13)
unplugin-vue-components:
specifier: ^0.27.2
version: 0.27.3(@babel/parser@7.26.10)(rollup@4.35.0)(vue@3.5.13(typescript@5.8.2))
version: 0.27.3(@babel/parser@7.27.5)(rollup@4.35.0)(vue@3.5.13(typescript@5.8.2))
vite:
specifier: catalog:frontend
version: 6.3.5(@types/node@20.17.57)(jiti@1.21.0)(sass@1.64.1)(terser@5.16.1)(tsx@4.19.3)
@@ -2392,7 +2395,7 @@ importers:
version: 0.19.0(@vue/compiler-sfc@3.5.13)
unplugin-vue-components:
specifier: ^0.27.2
version: 0.27.3(@babel/parser@7.26.10)(rollup@4.35.0)(vue@3.5.13(typescript@5.8.2))
version: 0.27.3(@babel/parser@7.27.5)(rollup@4.35.0)(vue@3.5.13(typescript@5.8.2))
vite:
specifier: catalog:frontend
version: 6.3.5(@types/node@20.17.57)(jiti@1.21.0)(sass@1.64.1)(terser@5.16.1)(tsx@4.19.3)
@@ -3186,6 +3189,10 @@ packages:
resolution: {integrity: sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==}
engines: {node: '>=6.9.0'}
'@babel/compat-data@7.27.5':
resolution: {integrity: sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==}
engines: {node: '>=6.9.0'}
'@babel/core@7.26.10':
resolution: {integrity: sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==}
engines: {node: '>=6.9.0'}
@@ -3202,6 +3209,10 @@ packages:
resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==}
engines: {node: '>=6.9.0'}
'@babel/helper-compilation-targets@7.27.2':
resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==}
engines: {node: '>=6.9.0'}
'@babel/helper-create-class-features-plugin@7.26.9':
resolution: {integrity: sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg==}
engines: {node: '>=6.9.0'}
@@ -3241,6 +3252,10 @@ packages:
resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==}
engines: {node: '>=6.9.0'}
'@babel/helper-plugin-utils@7.27.1':
resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==}
engines: {node: '>=6.9.0'}
'@babel/helper-remap-async-to-generator@7.25.9':
resolution: {integrity: sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==}
engines: {node: '>=6.9.0'}
@@ -3261,14 +3276,26 @@ packages:
resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==}
engines: {node: '>=6.9.0'}
'@babel/helper-string-parser@7.27.1':
resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==}
engines: {node: '>=6.9.0'}
'@babel/helper-validator-identifier@7.25.9':
resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
engines: {node: '>=6.9.0'}
'@babel/helper-validator-identifier@7.27.1':
resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==}
engines: {node: '>=6.9.0'}
'@babel/helper-validator-option@7.25.9':
resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==}
engines: {node: '>=6.9.0'}
'@babel/helper-validator-option@7.27.1':
resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==}
engines: {node: '>=6.9.0'}
'@babel/helper-wrap-function@7.25.9':
resolution: {integrity: sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==}
engines: {node: '>=6.9.0'}
@@ -3282,6 +3309,11 @@ packages:
engines: {node: '>=6.0.0'}
hasBin: true
'@babel/parser@7.27.5':
resolution: {integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==}
engines: {node: '>=6.0.0'}
hasBin: true
'@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9':
resolution: {integrity: sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==}
engines: {node: '>=6.9.0'}
@@ -3742,6 +3774,10 @@ packages:
resolution: {integrity: sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==}
engines: {node: '>=6.9.0'}
'@babel/types@7.27.6':
resolution: {integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==}
engines: {node: '>=6.9.0'}
'@bcoe/v8-coverage@0.2.3':
resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
@@ -10362,6 +10398,9 @@ packages:
join-component@1.1.0:
resolution: {integrity: sha512-bF7vcQxbODoGK1imE2P9GS9aw4zD0Sd+Hni68IMZLj7zRnquH7dXUmMw9hDI5S/Jzt7q+IyTXN0rSg2GI0IKhQ==}
jose@6.0.11:
resolution: {integrity: sha512-QxG7EaliDARm1O1S8BGakqncGT9s25bKL1WSf6/oa17Tkqwi8D2ZNglqCF+DsYF88/rV66Q/Q2mFAy697E1DUg==}
joycon@3.1.1:
resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
engines: {node: '>=10'}
@@ -11627,10 +11666,6 @@ packages:
object-inspect@1.13.1:
resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==}
object-inspect@1.13.2:
resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==}
engines: {node: '>= 0.4'}
object-inspect@1.13.4:
resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==}
engines: {node: '>= 0.4'}
@@ -11727,6 +11762,9 @@ packages:
openapi-types@12.1.3:
resolution: {integrity: sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==}
openid-client@6.5.0:
resolution: {integrity: sha512-fAfYaTnOYE2kQCqEJGX9KDObW2aw7IQy4jWpU/+3D3WoCFLbix5Hg6qIPQ6Js9r7f8jDUmsnnguRNCSw4wU/IQ==}
option@0.2.4:
resolution: {integrity: sha512-pkEqbDyl8ou5cpq+VsnQbe/WlEy5qS7xPzMS1U55OCG9KPvwFD46zDbxQIj3egJSFc3D+XhYOPUzz49zQAVy7A==}
@@ -12892,10 +12930,6 @@ packages:
side-channel@1.0.4:
resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
side-channel@1.0.6:
resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
engines: {node: '>= 0.4'}
side-channel@1.1.0:
resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==}
engines: {node: '>= 0.4'}
@@ -15698,6 +15732,8 @@ snapshots:
'@babel/compat-data@7.26.8': {}
'@babel/compat-data@7.27.5': {}
'@babel/core@7.26.10':
dependencies:
'@ampproject/remapping': 2.3.0
@@ -15714,7 +15750,7 @@ snapshots:
debug: 4.4.1(supports-color@8.1.1)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 7.6.0
semver: 7.7.2
transitivePeerDependencies:
- supports-color
@@ -15738,6 +15774,14 @@ snapshots:
lru-cache: 5.1.1
semver: 7.7.2
'@babel/helper-compilation-targets@7.27.2':
dependencies:
'@babel/compat-data': 7.27.5
'@babel/helper-validator-option': 7.27.1
browserslist: 4.24.4
lru-cache: 5.1.1
semver: 7.7.2
'@babel/helper-create-class-features-plugin@7.26.9(@babel/core@7.26.10)':
dependencies:
'@babel/core': 7.26.10
@@ -15761,8 +15805,8 @@ snapshots:
'@babel/helper-define-polyfill-provider@0.6.3(@babel/core@7.26.10)':
dependencies:
'@babel/core': 7.26.10
'@babel/helper-compilation-targets': 7.26.5
'@babel/helper-plugin-utils': 7.26.5
'@babel/helper-compilation-targets': 7.27.2
'@babel/helper-plugin-utils': 7.27.1
debug: 4.4.1(supports-color@8.1.1)
lodash.debounce: 4.0.8
resolve: 1.22.8
@@ -15798,6 +15842,8 @@ snapshots:
'@babel/helper-plugin-utils@7.26.5': {}
'@babel/helper-plugin-utils@7.27.1': {}
'@babel/helper-remap-async-to-generator@7.25.9(@babel/core@7.26.10)':
dependencies:
'@babel/core': 7.26.10
@@ -15825,10 +15871,16 @@ snapshots:
'@babel/helper-string-parser@7.25.9': {}
'@babel/helper-string-parser@7.27.1': {}
'@babel/helper-validator-identifier@7.25.9': {}
'@babel/helper-validator-identifier@7.27.1': {}
'@babel/helper-validator-option@7.25.9': {}
'@babel/helper-validator-option@7.27.1': {}
'@babel/helper-wrap-function@7.25.9':
dependencies:
'@babel/template': 7.26.9
@@ -15846,6 +15898,10 @@ snapshots:
dependencies:
'@babel/types': 7.26.10
'@babel/parser@7.27.5':
dependencies:
'@babel/types': 7.27.6
'@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.26.10)':
dependencies:
'@babel/core': 7.26.10
@@ -15974,7 +16030,7 @@ snapshots:
dependencies:
'@babel/core': 7.26.10
'@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.10)
'@babel/helper-plugin-utils': 7.26.5
'@babel/helper-plugin-utils': 7.27.1
'@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.26.10)':
dependencies:
@@ -16366,14 +16422,14 @@ snapshots:
babel-plugin-polyfill-corejs3: 0.11.1(@babel/core@7.26.10)
babel-plugin-polyfill-regenerator: 0.6.3(@babel/core@7.26.10)
core-js-compat: 3.41.0
semver: 7.6.0
semver: 7.7.2
transitivePeerDependencies:
- supports-color
'@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.26.10)':
dependencies:
'@babel/core': 7.26.10
'@babel/helper-plugin-utils': 7.26.5
'@babel/helper-plugin-utils': 7.27.1
'@babel/types': 7.26.10
esutils: 2.0.3
@@ -16404,6 +16460,11 @@ snapshots:
'@babel/helper-string-parser': 7.25.9
'@babel/helper-validator-identifier': 7.25.9
'@babel/types@7.27.6':
dependencies:
'@babel/helper-string-parser': 7.27.1
'@babel/helper-validator-identifier': 7.27.1
'@bcoe/v8-coverage@0.2.3': {}
'@bcoe/v8-coverage@1.0.2': {}
@@ -17685,7 +17746,7 @@ snapshots:
lodash: 4.17.21
minimatch: 3.0.8
resolve: 1.22.8
semver: 7.6.0
semver: 7.7.2
source-map: 0.6.1
typescript: 5.8.2
transitivePeerDependencies:
@@ -19283,7 +19344,7 @@ snapshots:
jsdoc-type-pratt-parser: 4.1.0
process: 0.11.10
recast: 0.23.6
semver: 7.6.0
semver: 7.7.2
util: 0.12.5
ws: 8.17.1
optionalDependencies:
@@ -19541,24 +19602,24 @@ snapshots:
'@types/babel__core@7.20.0':
dependencies:
'@babel/parser': 7.26.10
'@babel/types': 7.26.10
'@babel/parser': 7.27.5
'@babel/types': 7.27.6
'@types/babel__generator': 7.6.4
'@types/babel__template': 7.4.1
'@types/babel__traverse': 7.18.2
'@types/babel__generator@7.6.4':
dependencies:
'@babel/types': 7.26.10
'@babel/types': 7.27.6
'@types/babel__template@7.4.1':
dependencies:
'@babel/parser': 7.26.10
'@babel/types': 7.26.10
'@babel/parser': 7.27.5
'@babel/types': 7.27.6
'@types/babel__traverse@7.18.2':
dependencies:
'@babel/types': 7.26.10
'@babel/types': 7.27.6
'@types/basic-auth@1.1.3':
dependencies:
@@ -20095,7 +20156,7 @@ snapshots:
globby: 11.1.0
is-glob: 4.0.3
minimatch: 9.0.3
semver: 7.6.0
semver: 7.7.2
ts-api-utils: 1.0.1(typescript@5.8.2)
optionalDependencies:
typescript: 5.8.2
@@ -20111,7 +20172,7 @@ snapshots:
'@typescript-eslint/types': 6.21.0
'@typescript-eslint/typescript-estree': 6.21.0(typescript@5.8.2)
eslint: 8.57.0
semver: 7.6.0
semver: 7.7.2
transitivePeerDependencies:
- supports-color
- typescript
@@ -20125,7 +20186,7 @@ snapshots:
'@typescript-eslint/types': 7.2.0
'@typescript-eslint/typescript-estree': 7.2.0(typescript@5.8.2)
eslint: 8.57.0
semver: 7.6.0
semver: 7.7.2
transitivePeerDependencies:
- supports-color
- typescript
@@ -20328,7 +20389,7 @@ snapshots:
'@vue/compiler-sfc@3.5.13':
dependencies:
'@babel/parser': 7.26.10
'@babel/parser': 7.27.5
'@vue/compiler-core': 3.5.13
'@vue/compiler-dom': 3.5.13
'@vue/compiler-ssr': 3.5.13
@@ -20949,13 +21010,13 @@ snapshots:
babel-plugin-jest-hoist@29.5.0:
dependencies:
'@babel/template': 7.26.9
'@babel/types': 7.26.10
'@babel/types': 7.27.6
'@types/babel__core': 7.20.0
'@types/babel__traverse': 7.18.2
babel-plugin-polyfill-corejs2@0.4.12(@babel/core@7.26.10):
dependencies:
'@babel/compat-data': 7.26.8
'@babel/compat-data': 7.27.5
'@babel/core': 7.26.10
'@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.10)
semver: 7.7.2
@@ -22366,7 +22427,7 @@ snapshots:
is-string: 1.0.7
is-typed-array: 1.1.13
is-weakref: 1.0.2
object-inspect: 1.13.2
object-inspect: 1.13.4
object-keys: 1.1.1
object.assign: 4.1.5
regexp.prototype.flags: 1.5.3
@@ -22389,7 +22450,7 @@ snapshots:
es-abstract: 1.23.3
es-errors: 1.3.0
function-bind: 1.1.2
globalthis: 1.0.3
globalthis: 1.0.4
has-property-descriptors: 1.0.2
set-function-name: 2.0.2
@@ -22511,7 +22572,7 @@ snapshots:
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
object.assign: 4.1.5
object.entries: 1.1.5
semver: 7.6.0
semver: 7.7.2
eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.8.2))(eslint@8.57.0)(typescript@5.8.2))(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.8.2))(eslint-plugin-import@2.29.1)(eslint@8.57.0):
dependencies:
@@ -23814,7 +23875,7 @@ snapshots:
dependencies:
es-errors: 1.3.0
hasown: 2.0.2
side-channel: 1.0.6
side-channel: 1.1.0
interpret@1.4.0: {}
@@ -24020,7 +24081,7 @@ snapshots:
istanbul-lib-instrument@5.2.1:
dependencies:
'@babel/core': 7.26.10
'@babel/parser': 7.26.10
'@babel/parser': 7.27.5
'@istanbuljs/schema': 0.1.3
istanbul-lib-coverage: 3.2.2
semver: 7.7.2
@@ -24467,6 +24528,8 @@ snapshots:
join-component@1.1.0: {}
jose@6.0.11: {}
joycon@3.1.1: {}
js-base64@3.7.2: {}
@@ -25036,8 +25099,8 @@ snapshots:
magicast@0.3.5:
dependencies:
'@babel/parser': 7.26.10
'@babel/types': 7.26.10
'@babel/parser': 7.27.5
'@babel/types': 7.27.6
source-map-js: 1.2.1
mailparser@3.6.7:
@@ -25060,7 +25123,7 @@ snapshots:
make-dir@3.1.0:
dependencies:
semver: 7.6.0
semver: 7.7.2
make-dir@4.0.0:
dependencies:
@@ -25707,7 +25770,7 @@ snapshots:
dependencies:
'@tediousjs/connection-string': 0.5.0
commander: 11.1.0
debug: 4.3.6(supports-color@8.1.1)
debug: 4.4.1(supports-color@8.1.1)
rfdc: 1.3.0
tarn: 3.0.2
tedious: 16.7.1
@@ -25833,7 +25896,7 @@ snapshots:
nopt: 5.0.0
npmlog: 6.0.2
rimraf: 3.0.2
semver: 7.6.0
semver: 7.7.2
tar: 6.2.1
which: 2.0.2
transitivePeerDependencies:
@@ -25995,8 +26058,6 @@ snapshots:
object-inspect@1.13.1: {}
object-inspect@1.13.2: {}
object-inspect@1.13.4: {}
object-is@1.1.6:
@@ -26116,6 +26177,11 @@ snapshots:
openapi-types@12.1.3: {}
openid-client@6.5.0:
dependencies:
jose: 6.0.11
oauth4webapi: 3.5.1
option@0.2.4: {}
optionator@0.8.3:
@@ -27461,13 +27527,6 @@ snapshots:
get-intrinsic: 1.2.4
object-inspect: 1.13.1
side-channel@1.0.6:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
get-intrinsic: 1.3.0
object-inspect: 1.13.1
side-channel@1.1.0:
dependencies:
es-errors: 1.3.0
@@ -27508,7 +27567,7 @@ snapshots:
simple-update-notifier@2.0.0:
dependencies:
semver: 7.6.0
semver: 7.7.2
simple-wcswidth@1.0.1: {}
@@ -27660,8 +27719,7 @@ snapshots:
sprintf-js@1.1.2: {}
sprintf-js@1.1.3:
optional: true
sprintf-js@1.1.3: {}
sqlite3@5.1.7:
dependencies:
@@ -28050,7 +28108,7 @@ snapshots:
jsbi: 4.3.0
native-duplexpair: 1.0.0
node-abort-controller: 3.1.1
sprintf-js: 1.1.2
sprintf-js: 1.1.3
transitivePeerDependencies:
- supports-color
@@ -28560,7 +28618,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
unplugin-vue-components@0.27.3(@babel/parser@7.26.10)(rollup@4.35.0)(vue@3.5.13(typescript@5.8.2)):
unplugin-vue-components@0.27.3(@babel/parser@7.27.5)(rollup@4.35.0)(vue@3.5.13(typescript@5.8.2)):
dependencies:
'@antfu/utils': 0.7.10
'@rollup/pluginutils': 5.1.0(rollup@4.35.0)
@@ -28574,7 +28632,7 @@ snapshots:
unplugin: 1.11.0
vue: 3.5.13(typescript@5.8.2)
optionalDependencies:
'@babel/parser': 7.26.10
'@babel/parser': 7.27.5
transitivePeerDependencies:
- rollup
- supports-color
@@ -28627,7 +28685,7 @@ snapshots:
utf7@1.0.2:
dependencies:
semver: 7.6.0
semver: 7.7.2
utf8@2.1.2: {}