diff --git a/client.d.ts b/client.d.ts
new file mode 100644
index 0000000..c3ef8ee
--- /dev/null
+++ b/client.d.ts
@@ -0,0 +1 @@
+export * from './dist/client/index'
diff --git a/package.json b/package.json
index 20a24e7..79c463d 100644
--- a/package.json
+++ b/package.json
@@ -9,13 +9,19 @@
".": {
"require": "./dist/index.cjs",
"import": "./dist/index.mjs"
+ },
+ "./client": {
+ "types": "./dist/client/index.d.ts",
+ "require": "./dist/client/index.cjs",
+ "import": "./dist/client/index.mjs"
}
},
"main": "./dist/index.mjs",
"module": "./dist/index.mjs",
"types": "./dist/index.d.ts",
"files": [
- "dist"
+ "dist",
+ "client.d.ts"
],
"scripts": {
"dev": "concurrently \"pnpm build -- --watch\" \"pnpm --filter playground dev\"",
@@ -38,8 +44,8 @@
},
"devDependencies": {
"@nuxtjs/eslint-config-typescript": "^11.0.0",
- "@trpc/client": "^10.1.0",
- "@trpc/server": "^10.1.0",
+ "@trpc/client": "^10.5.0",
+ "@trpc/server": "^10.5.0",
"bumpp": "^8.2.1",
"concurrently": "^7.5.0",
"eslint": "^8.25.0",
diff --git a/playground/package.json b/playground/package.json
index c24b7ef..907d1bb 100644
--- a/playground/package.json
+++ b/playground/package.json
@@ -9,8 +9,8 @@
"postinstall": "nuxt prepare"
},
"dependencies": {
- "@trpc/client": "^10.1.0",
- "@trpc/server": "^10.1.0",
+ "@trpc/client": "^10.5.0",
+ "@trpc/server": "^10.5.0",
"superjson": "^1.11.0",
"trpc-nuxt": "workspace:*",
"zod": "^3.19.1"
diff --git a/playground/pages/index.vue b/playground/pages/index.vue
index 07ff363..f2fead8 100644
--- a/playground/pages/index.vue
+++ b/playground/pages/index.vue
@@ -1,15 +1,12 @@
diff --git a/playground/plugins/trpc-client.ts b/playground/plugins/trpc-client.ts
index 2e6a69a..e33fa0a 100644
--- a/playground/plugins/trpc-client.ts
+++ b/playground/plugins/trpc-client.ts
@@ -1,23 +1,62 @@
import { createTRPCProxyClient, httpBatchLink, loggerLink } from '@trpc/client'
import superjson from 'superjson'
+import { FetchError } from 'ofetch'
+import { createTRPCNuxtClient } from 'trpc-nuxt/client'
import type { AppRouter } from '~~/server/trpc/routers'
export default defineNuxtPlugin(() => {
const headers = useRequestHeaders()
- const client = createTRPCProxyClient({
+ // const client = createTRPCProxyClient({
+ // transformer: superjson,
+ // links: [
+ // // adds pretty logs to your console in development and logs errors in production
+ // loggerLink({
+ // enabled: opts =>
+ // process.env.NODE_ENV === 'development' ||
+ // (opts.direction === 'down' && opts.result instanceof Error)
+ // }),
+ // httpBatchLink({
+ // url: '/api/trpc',
+ // headers () {
+ // return headers
+ // },
+ // fetch: (input, options) =>
+ // globalThis.$fetch.raw(input.toString(), options)
+ // .catch((e) => {
+ // if (e instanceof FetchError && e.response) { return e.response }
+ // throw e
+ // })
+ // .then(response => ({
+ // ...response,
+ // json: () => Promise.resolve(response._data)
+ // }))
+ // })
+ // ]
+ // })
+ const client = createTRPCNuxtClient({
transformer: superjson,
links: [
// adds pretty logs to your console in development and logs errors in production
- loggerLink({
- enabled: opts =>
- process.env.NODE_ENV === 'development' ||
- (opts.direction === 'down' && opts.result instanceof Error)
- }),
+ // loggerLink({
+ // enabled: opts =>
+ // process.env.NODE_ENV === 'development' ||
+ // (opts.direction === 'down' && opts.result instanceof Error)
+ // }),
httpBatchLink({
- url: 'http://localhost:3000/api/trpc',
+ url: '/api/trpc',
headers () {
return headers
- }
+ },
+ fetch: (input, options) =>
+ $fetch.raw(input.toString(), options)
+ .catch((e) => {
+ if (e instanceof FetchError && e.response) { return e.response }
+ throw e
+ })
+ .then(response => ({
+ ...response,
+ json: () => Promise.resolve(response._data)
+ }))
})
]
})
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 36eaa1d..d20d934 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -5,8 +5,8 @@ importers:
.:
specifiers:
'@nuxtjs/eslint-config-typescript': ^11.0.0
- '@trpc/client': ^10.1.0
- '@trpc/server': ^10.1.0
+ '@trpc/client': ^10.5.0
+ '@trpc/server': ^10.5.0
bumpp: ^8.2.1
concurrently: ^7.5.0
eslint: ^8.25.0
@@ -23,8 +23,8 @@ importers:
ufo: 1.0.0
devDependencies:
'@nuxtjs/eslint-config-typescript': 11.0.0_rmayb2veg2btbq6mbmnyivgasy
- '@trpc/client': 10.1.0_@trpc+server@10.1.0
- '@trpc/server': 10.1.0
+ '@trpc/client': 10.5.0_@trpc+server@10.5.0
+ '@trpc/server': 10.5.0
bumpp: 8.2.1
concurrently: 7.5.0
eslint: 8.27.0
@@ -44,15 +44,15 @@ importers:
playground:
specifiers:
- '@trpc/client': ^10.1.0
- '@trpc/server': ^10.1.0
+ '@trpc/client': ^10.5.0
+ '@trpc/server': ^10.5.0
nuxt: ^3.0.0
superjson: ^1.11.0
trpc-nuxt: workspace:*
zod: ^3.19.1
dependencies:
- '@trpc/client': 10.1.0_@trpc+server@10.1.0
- '@trpc/server': 10.1.0
+ '@trpc/client': 10.5.0_@trpc+server@10.5.0
+ '@trpc/server': 10.5.0
superjson: 1.11.0
trpc-nuxt: link:..
zod: 3.19.1
@@ -241,6 +241,29 @@ packages:
transitivePeerDependencies:
- supports-color
+ /@babel/core/7.20.5:
+ resolution: {integrity: sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@ampproject/remapping': 2.2.0
+ '@babel/code-frame': 7.18.6
+ '@babel/generator': 7.20.5
+ '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.5
+ '@babel/helper-module-transforms': 7.20.2
+ '@babel/helpers': 7.20.6
+ '@babel/parser': 7.20.5
+ '@babel/template': 7.18.10
+ '@babel/traverse': 7.20.5
+ '@babel/types': 7.20.5
+ convert-source-map: 1.9.0
+ debug: 4.3.4
+ gensync: 1.0.0-beta.2
+ json5: 2.2.2
+ semver: 6.3.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@babel/generator/7.20.4:
resolution: {integrity: sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==}
engines: {node: '>=6.9.0'}
@@ -249,6 +272,15 @@ packages:
'@jridgewell/gen-mapping': 0.3.2
jsesc: 2.5.2
+ /@babel/generator/7.20.5:
+ resolution: {integrity: sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/types': 7.20.5
+ '@jridgewell/gen-mapping': 0.3.2
+ jsesc: 2.5.2
+ dev: true
+
/@babel/helper-annotate-as-pure/7.18.6:
resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==}
engines: {node: '>=6.9.0'}
@@ -267,6 +299,19 @@ packages:
browserslist: 4.21.4
semver: 6.3.0
+ /@babel/helper-compilation-targets/7.20.0_@babel+core@7.20.5:
+ resolution: {integrity: sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/compat-data': 7.20.1
+ '@babel/core': 7.20.5
+ '@babel/helper-validator-option': 7.18.6
+ browserslist: 4.21.4
+ semver: 6.3.0
+ dev: true
+
/@babel/helper-create-class-features-plugin/7.20.2_@babel+core@7.20.2:
resolution: {integrity: sha512-k22GoYRAHPYr9I+Gvy2ZQlAe5mGy8BqWst2wRt8cwIufWTxrsVshhIBvYNqC80N0GSFWTsqRVexOtfzlgOEDvA==}
engines: {node: '>=6.9.0'}
@@ -384,6 +429,17 @@ packages:
transitivePeerDependencies:
- supports-color
+ /@babel/helpers/7.20.6:
+ resolution: {integrity: sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/template': 7.18.10
+ '@babel/traverse': 7.20.5
+ '@babel/types': 7.20.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@babel/highlight/7.18.6:
resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==}
engines: {node: '>=6.9.0'}
@@ -399,6 +455,14 @@ packages:
dependencies:
'@babel/types': 7.20.2
+ /@babel/parser/7.20.5:
+ resolution: {integrity: sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+ dependencies:
+ '@babel/types': 7.20.5
+ dev: true
+
/@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.20.2:
resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==}
engines: {node: '>=6.9.0'}
@@ -441,6 +505,11 @@ packages:
resolution: {integrity: sha512-27bv4h47jbaFZ7+e7gT1VEo9PNL1ynxqUX6/BERLz1qxm/5gzpbcHX+47VnSeYHyEyGZkRznpSOd8zPBhiz6tw==}
engines: {node: '>=6.9.0'}
+ /@babel/standalone/7.20.6:
+ resolution: {integrity: sha512-u5at/CbBLETf7kx2LOY4XdhseD79Y099WZKAOMXeT8qvd9OSR515my2UNBBLY4qIht/Qi9KySeQHQwQwxJN4Sw==}
+ engines: {node: '>=6.9.0'}
+ dev: true
+
/@babel/template/7.18.10:
resolution: {integrity: sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==}
engines: {node: '>=6.9.0'}
@@ -466,6 +535,24 @@ packages:
transitivePeerDependencies:
- supports-color
+ /@babel/traverse/7.20.5:
+ resolution: {integrity: sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/code-frame': 7.18.6
+ '@babel/generator': 7.20.5
+ '@babel/helper-environment-visitor': 7.18.9
+ '@babel/helper-function-name': 7.19.0
+ '@babel/helper-hoist-variables': 7.18.6
+ '@babel/helper-split-export-declaration': 7.18.6
+ '@babel/parser': 7.20.5
+ '@babel/types': 7.20.5
+ debug: 4.3.4
+ globals: 11.12.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@babel/types/7.20.2:
resolution: {integrity: sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==}
engines: {node: '>=6.9.0'}
@@ -474,6 +561,15 @@ packages:
'@babel/helper-validator-identifier': 7.19.1
to-fast-properties: 2.0.0
+ /@babel/types/7.20.5:
+ resolution: {integrity: sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/helper-string-parser': 7.19.4
+ '@babel/helper-validator-identifier': 7.19.1
+ to-fast-properties: 2.0.0
+ dev: true
+
/@cloudflare/kv-asset-handler/0.2.0:
resolution: {integrity: sha512-MVbXLbTcAotOPUj0pAMhVtJ+3/kFkwJqc5qNOleOZTv6QkZZABDMS21dSrSlVswEHwrpWC03e4fWytjqKvuE2A==}
dependencies:
@@ -534,6 +630,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/android-arm/0.15.18:
+ resolution: {integrity: sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-loong64/0.15.13:
resolution: {integrity: sha512-+BoyIm4I8uJmH/QDIH0fu7MG0AEx9OXEDXnqptXCwKOlOqZiS4iraH1Nr7/ObLMokW3sOCeBNyD68ATcV9b9Ag==}
engines: {node: '>=12'}
@@ -551,6 +656,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-loong64/0.15.18:
+ resolution: {integrity: sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==}
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@eslint/eslintrc/1.3.3:
resolution: {integrity: sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -710,7 +824,7 @@ packages:
'@nuxtjs/color-mode': 3.1.8
'@vueuse/core': 9.5.0
'@vueuse/nuxt': 9.5.0_nuxt@3.0.0
- pinceau: 0.6.26
+ pinceau: 0.8.9
transitivePeerDependencies:
- '@algolia/client-search'
- '@types/react'
@@ -730,13 +844,12 @@ packages:
- vue-server-renderer
dev: true
- /@nuxt-themes/tokens/1.1.13:
- resolution: {integrity: sha512-XseCu1sACziUOIXS/MXKPZA4NwoWVTp7jnZ6qKQ433w/6qP5VUVeqH0/MmXDojIamlZGD/wSfUPB8z4xHGRDWA==}
+ /@nuxt-themes/tokens/1.2.2:
+ resolution: {integrity: sha512-aJoBIoWFT5A82AQlEioaQ/R7yBSm7JTGH30wdHuQOyWuefTSkNnaxuZ77hs778F4MeS5oEkSYitWyAWQRmPOUg==}
dependencies:
- '@nuxtjs/color-mode': 3.1.8
- '@vueuse/core': 9.5.0
- pinceau: 0.6.26
- style-value-types: 5.1.2
+ '@nuxtjs/color-mode': 3.2.0
+ '@vueuse/core': 9.7.0
+ pinceau: 0.8.9
transitivePeerDependencies:
- '@vue/composition-api'
- postcss
@@ -749,10 +862,10 @@ packages:
/@nuxt-themes/typography/0.0.13:
resolution: {integrity: sha512-fUUnpb1kgvf8Gj7BAetzcEV4+pkcK/dYcRBhliJ8US3P26MvWgNFqoP43JOO2n2dI1wKXerIN9gUhrQvhVvQCw==}
dependencies:
- '@nuxt-themes/tokens': 1.1.13
+ '@nuxt-themes/tokens': 1.2.2
'@nuxtjs/color-mode': 3.1.8
nuxt-icon: 0.1.7
- pinceau: 0.6.26
+ pinceau: 0.8.9
transitivePeerDependencies:
- '@vue/composition-api'
- postcss
@@ -1033,6 +1146,17 @@ packages:
- supports-color
dev: true
+ /@nuxtjs/color-mode/3.2.0:
+ resolution: {integrity: sha512-isDR01yfadopiHQ/VEVUpyNSPrk5PCjUHS4t1qYRZwuRGefU4s9Iaxf6H9nmr1QFzoMgTm+3T0r/54jLwtpZbA==}
+ dependencies:
+ '@nuxt/kit': 3.0.0
+ lodash.template: 4.5.0
+ pathe: 1.0.0
+ transitivePeerDependencies:
+ - rollup
+ - supports-color
+ dev: true
+
/@nuxtjs/eslint-config-typescript/11.0.0_rmayb2veg2btbq6mbmnyivgasy:
resolution: {integrity: sha512-hmFjGtXT524ql8eTbK8BaRkamcXB6Z8YOW8nSQhosTP6oBw9WtOFUeWr7holyE278UhOmx+wDFG90BnyM9D+UA==}
peerDependencies:
@@ -1224,7 +1348,7 @@ packages:
rollup: 2.79.1
slash: 4.0.0
- /@rollup/plugin-alias/4.0.2_rollup@3.3.0:
+ /@rollup/plugin-alias/4.0.2_rollup@3.7.5:
resolution: {integrity: sha512-1hv7dBOZZwo3SEupxn4UA2N0EDThqSSS+wI1St1TNTBtOZvUchyIClyHcnDcjjrReTPZ47Faedrhblv4n+T5UQ==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -1233,7 +1357,7 @@ packages:
rollup:
optional: true
dependencies:
- rollup: 3.3.0
+ rollup: 3.7.5
slash: 4.0.0
dev: true
@@ -1254,8 +1378,8 @@ packages:
magic-string: 0.26.7
rollup: 2.79.1
- /@rollup/plugin-commonjs/23.0.2_rollup@3.3.0:
- resolution: {integrity: sha512-e9ThuiRf93YlVxc4qNIurvv+Hp9dnD+4PjOqQs5vAYfcZ3+AXSrcdzXnVjWxcGQOa6KGJFcRZyUI3ktWLavFjg==}
+ /@rollup/plugin-commonjs/23.0.7_rollup@3.7.5:
+ resolution: {integrity: sha512-hsSD5Qzyuat/swzrExGG5l7EuIlPhwTsT7KwKbSCQzIcJWjRxiimi/0tyMYY2bByitNb3i1p+6JWEDGa0NvT0Q==}
engines: {node: '>=14.0.0'}
peerDependencies:
rollup: ^2.68.0||^3.0.0
@@ -1263,13 +1387,13 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/pluginutils': 5.0.2_rollup@3.3.0
+ '@rollup/pluginutils': 5.0.2_rollup@3.7.5
commondir: 1.0.1
estree-walker: 2.0.2
glob: 8.0.3
is-reference: 1.2.1
- magic-string: 0.26.7
- rollup: 3.3.0
+ magic-string: 0.27.0
+ rollup: 3.7.5
dev: true
/@rollup/plugin-inject/5.0.2_rollup@2.79.1:
@@ -1298,8 +1422,8 @@ packages:
'@rollup/pluginutils': 5.0.2_rollup@2.79.1
rollup: 2.79.1
- /@rollup/plugin-json/5.0.1_rollup@3.3.0:
- resolution: {integrity: sha512-QCwhZZLvM8nRcTHyR1vOgyTMiAnjiNj1ebD/BMRvbO1oc/z14lZH6PfxXeegee2B6mky/u9fia4fxRM4TqrUaw==}
+ /@rollup/plugin-json/5.0.2_rollup@3.7.5:
+ resolution: {integrity: sha512-D1CoOT2wPvadWLhVcmpkDnesTzjhNIQRWLsc3fA49IFOP2Y84cFOOJ+nKGYedvXHKUsPeq07HR4hXpBBr+CHlA==}
engines: {node: '>=14.0.0'}
peerDependencies:
rollup: ^1.20.0||^2.0.0||^3.0.0
@@ -1307,8 +1431,8 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/pluginutils': 5.0.2_rollup@3.3.0
- rollup: 3.3.0
+ '@rollup/pluginutils': 5.0.2_rollup@3.7.5
+ rollup: 3.7.5
dev: true
/@rollup/plugin-node-resolve/15.0.1_rollup@2.79.1:
@@ -1328,7 +1452,7 @@ packages:
resolve: 1.22.1
rollup: 2.79.1
- /@rollup/plugin-node-resolve/15.0.1_rollup@3.3.0:
+ /@rollup/plugin-node-resolve/15.0.1_rollup@3.7.5:
resolution: {integrity: sha512-ReY88T7JhJjeRVbfCyNj+NXAG3IIsVMsX9b5/9jC98dRP8/yxlZdz7mHZbHk5zHr24wZZICS5AcXsFZAXYUQEg==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -1337,13 +1461,13 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/pluginutils': 5.0.2_rollup@3.3.0
+ '@rollup/pluginutils': 5.0.2_rollup@3.7.5
'@types/resolve': 1.20.2
deepmerge: 4.2.2
is-builtin-module: 3.2.0
is-module: 1.0.0
resolve: 1.22.1
- rollup: 3.3.0
+ rollup: 3.7.5
dev: true
/@rollup/plugin-replace/5.0.1_rollup@2.79.1:
@@ -1359,8 +1483,8 @@ packages:
magic-string: 0.26.7
rollup: 2.79.1
- /@rollup/plugin-replace/5.0.1_rollup@3.3.0:
- resolution: {integrity: sha512-Z3MfsJ4CK17BfGrZgvrcp/l6WXoKb0kokULO+zt/7bmcyayokDaQ2K3eDJcRLCTAlp5FPI4/gz9MHAsosz4Rag==}
+ /@rollup/plugin-replace/5.0.2_rollup@3.7.5:
+ resolution: {integrity: sha512-M9YXNekv/C/iHHK+cvORzfRYfPbq0RDD8r0G+bMiTXjNGKulPnCT9O3Ss46WfhI6ZOCgApOP7xAdmCQJ+U2LAA==}
engines: {node: '>=14.0.0'}
peerDependencies:
rollup: ^1.20.0||^2.0.0||^3.0.0
@@ -1368,9 +1492,9 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/pluginutils': 5.0.2_rollup@3.3.0
- magic-string: 0.26.7
- rollup: 3.3.0
+ '@rollup/pluginutils': 5.0.2_rollup@3.7.5
+ magic-string: 0.27.0
+ rollup: 3.7.5
dev: true
/@rollup/plugin-wasm/6.0.1_rollup@2.79.1:
@@ -1411,7 +1535,7 @@ packages:
picomatch: 2.3.1
rollup: 2.79.1
- /@rollup/pluginutils/5.0.2_rollup@3.3.0:
+ /@rollup/pluginutils/5.0.2_rollup@3.7.5:
resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -1423,7 +1547,7 @@ packages:
'@types/estree': 1.0.0
estree-walker: 2.0.2
picomatch: 2.3.1
- rollup: 3.3.0
+ rollup: 3.7.5
dev: true
/@sindresorhus/is/4.6.0:
@@ -1442,15 +1566,15 @@ packages:
defer-to-connect: 2.0.1
dev: true
- /@trpc/client/10.1.0_@trpc+server@10.1.0:
- resolution: {integrity: sha512-E7L9l2OTa5lIdM0NYvQLJf/GLapskfiVLv0Jv7t6GVxEOFd+O4THWsWQgJVUUAz9iq805iMNkY3uqSvf4GJaWg==}
+ /@trpc/client/10.5.0_@trpc+server@10.5.0:
+ resolution: {integrity: sha512-ULRL6YUi/4sMzZnqS3VCe/VduPZgY24wdC4canpwWZfHj+O0kHz3KR260DzEw0QrpLrOwmkIWOlQKzVBn2lLgQ==}
peerDependencies:
- '@trpc/server': 10.1.0
+ '@trpc/server': 10.5.0
dependencies:
- '@trpc/server': 10.1.0
+ '@trpc/server': 10.5.0
- /@trpc/server/10.1.0:
- resolution: {integrity: sha512-UiRZPApLruhi1UKukTNsB9igFBEhEA0aMxy86Xp1OvbzuY00yoFcvDUYsBdBjp9mzIHR3yNjqrlfS/RNpPhZEw==}
+ /@trpc/server/10.5.0:
+ resolution: {integrity: sha512-AJ4ckDpnN8xuqWBox68KDTFpG12ZxKkW7fi9XJ+TLtyyNyqOMVUvKH9070CdxhqBZjebTASryE+/6lntkDFQxA==}
/@trysound/sax/0.2.0:
resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==}
@@ -1706,8 +1830,8 @@ packages:
hookable: 5.4.2
vue: 3.2.45
- /@unocss/reset/0.46.5:
- resolution: {integrity: sha512-DU1sisNixEaUsnfDdbU+POaedJLKUtalHnOOce2Txxrcakf7M2/I5/9cRIXt5diVbPjIyoDPcx+7Gn8K0cTGqg==}
+ /@unocss/reset/0.47.6:
+ resolution: {integrity: sha512-bdc2dbuDg+CzgeLowEwO1URRIMdzmCE4RH4IKpCpT1Xoa+92RRubdtzK4N/9ZiSo8d4vvfWcc8fvhZko/6smPQ==}
dev: true
/@vercel/nft/0.22.1:
@@ -1754,6 +1878,14 @@ packages:
vite: 3.2.4
vue: 3.2.45
+ /@volar/language-core/1.0.14:
+ resolution: {integrity: sha512-j1tMQgw0qCV2amM4qDJNG/zc0yj3ay8HoWNt05IaiCPsULtSSpF/9+F6Izvn0DF7nWOd6MUHTxaQAeZwLfr56Q==}
+ dependencies:
+ '@volar/source-map': 1.0.14
+ '@vue/reactivity': 3.2.45
+ muggle-string: 0.1.0
+ dev: true
+
/@volar/language-core/1.0.9:
resolution: {integrity: sha512-5Fty3slLet6svXiJw2YxhYeo6c7wFdtILrql5bZymYLM+HbiZtJbryW1YnUEKAP7MO9Mbeh+TNH4Z0HFxHgIqw==}
dependencies:
@@ -1762,12 +1894,31 @@ packages:
muggle-string: 0.1.0
dev: true
+ /@volar/source-map/1.0.14:
+ resolution: {integrity: sha512-8pHCbEWHWaSDGb/FM9zRIW1lY1OAo16MENVSQGCgTwz7PWf3Gw6WW3TFVKCtzaFhLjPH0i5e9hALy7vBPbSHoA==}
+ dependencies:
+ muggle-string: 0.1.0
+ dev: true
+
/@volar/source-map/1.0.9:
resolution: {integrity: sha512-fazB/vy5ZEJ3yKx4fabJyGNI3CBkdLkfEIRVu6+1P3VixK0Mn+eqyUIkLBrzGYaeFM3GybhCLCvsVdNz0Fu/CQ==}
dependencies:
muggle-string: 0.1.0
dev: true
+ /@volar/vue-language-core/1.0.14:
+ resolution: {integrity: sha512-grJ4dQ7c/suZmBBmZtw2O2XeDX+rtgpdBtHxMug1NMPRDxj5EZ9WGphWtGnMQj8RyVgpz9ByvV5GbQjk4/wfBw==}
+ dependencies:
+ '@volar/language-core': 1.0.14
+ '@volar/source-map': 1.0.14
+ '@vue/compiler-dom': 3.2.45
+ '@vue/compiler-sfc': 3.2.45
+ '@vue/reactivity': 3.2.45
+ '@vue/shared': 3.2.45
+ minimatch: 5.1.1
+ vue-template-compiler: 2.7.14
+ dev: true
+
/@volar/vue-language-core/1.0.9:
resolution: {integrity: sha512-tofNoR8ShPFenHT1YVMuvoXtXWwoQE+fiXVqSmW0dSKZqEDjWQ3YeXSd0a6aqyKaIbvR7kWWGp34WbpQlwf9Ww==}
dependencies:
@@ -1888,6 +2039,18 @@ packages:
- vue
dev: true
+ /@vueuse/core/9.7.0:
+ resolution: {integrity: sha512-/AGY/t7jJPxCyRoVTygNKoroTiCvRaaZIW+yeSlBCnI7QRpQ9cvXNTdNaSl3GvSyFbn83+XwZwEZvI1OpQfeGw==}
+ dependencies:
+ '@types/web-bluetooth': 0.0.16
+ '@vueuse/metadata': 9.7.0
+ '@vueuse/shared': 9.7.0
+ vue-demi: 0.13.11
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+ dev: true
+
/@vueuse/head/1.0.15_vue@3.2.45:
resolution: {integrity: sha512-2wFKdxtGs7Aip6OYEL2NE6gW3J7ux+nvWUgJvPONEnWEU+Fvq6Mm+horkYwMSvQJ2O0KvVkJ5rGoIV+A4lSD/g==}
peerDependencies:
@@ -1903,6 +2066,10 @@ packages:
resolution: {integrity: sha512-4M1AyPZmIv41pym+K5+4wup3bKuYebbH8w8BROY1hmT7rIwcyS4tEL+UsGz0Hiu1FCOxcoBrwtAizc0YmBJjyQ==}
dev: true
+ /@vueuse/metadata/9.7.0:
+ resolution: {integrity: sha512-M7WsAgw28FNtTH0bzsGuHEtJOPJqPpyeHS6PHq+8UesLgNjZ9waMAntiUrgUQlxt09M4i2lH7y9sRi0jkfeXGA==}
+ dev: true
+
/@vueuse/nuxt/9.5.0_nuxt@3.0.0:
resolution: {integrity: sha512-8NWnxixEgA10R2Vazt4lfF21ZnFgjL/Bm3BUl8IRojPclrbjjJC7SNXeN13kdGgPekDVRJKD+lW86oeR8OyfXQ==}
peerDependencies:
@@ -1930,6 +2097,15 @@ packages:
- vue
dev: true
+ /@vueuse/shared/9.7.0:
+ resolution: {integrity: sha512-pwmt1y3TJ2s5KqWmkv9ZKEV59GwuZQZk8XLiU+hGswz0jej318ozbea9E4A/A50ksyM26swSFr7sZ9llNPsZHg==}
+ dependencies:
+ vue-demi: 0.13.11
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+ dev: true
+
/@zhead/schema/1.0.1:
resolution: {integrity: sha512-n6BDs+MjSOesuv6krG2QGyCPfdndxWX0M/G2wEGu1SPHc5jLHHi3EY1+vQvudFVXRVXquZHKsDPE7pSyeyGgHg==}
@@ -2111,6 +2287,15 @@ packages:
es-shim-unscopables: 1.0.0
dev: true
+ /assert/2.0.0:
+ resolution: {integrity: sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==}
+ dependencies:
+ es6-object-assign: 1.1.0
+ is-nan: 1.3.2
+ object-is: 1.1.5
+ util: 0.12.5
+ dev: true
+
/ast-types/0.15.2:
resolution: {integrity: sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==}
engines: {node: '>=4'}
@@ -2139,6 +2324,11 @@ packages:
postcss: 8.4.19
postcss-value-parser: 4.2.0
+ /available-typed-arrays/1.0.5:
+ resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
/axios/0.25.0:
resolution: {integrity: sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==}
dependencies:
@@ -2375,6 +2565,11 @@ packages:
resolution: {integrity: sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+ /chalk/5.2.0:
+ resolution: {integrity: sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==}
+ engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+ dev: true
+
/change-case/4.1.2:
resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==}
dependencies:
@@ -3056,6 +3251,10 @@ packages:
is-symbol: 1.0.4
dev: true
+ /es6-object-assign/1.1.0:
+ resolution: {integrity: sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==}
+ dev: true
+
/esbuild-android-64/0.15.13:
resolution: {integrity: sha512-yRorukXBlokwTip+Sy4MYskLhJsO0Kn0/Fj43s1krVblfwP+hMD37a4Wmg139GEsMLl+vh8WXp2mq/cTA9J97g==}
engines: {node: '>=12'}
@@ -3073,6 +3272,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-android-64/0.15.18:
+ resolution: {integrity: sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-android-arm64/0.15.13:
resolution: {integrity: sha512-TKzyymLD6PiVeyYa4c5wdPw87BeAiTXNtK6amWUcXZxkV51gOk5u5qzmDaYSwiWeecSNHamFsaFjLoi32QR5/w==}
engines: {node: '>=12'}
@@ -3090,6 +3298,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-android-arm64/0.15.18:
+ resolution: {integrity: sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-darwin-64/0.15.13:
resolution: {integrity: sha512-WAx7c2DaOS6CrRcoYCgXgkXDliLnFv3pQLV6GeW1YcGEZq2Gnl8s9Pg7ahValZkpOa0iE/ojRVQ87sbUhF1Cbg==}
engines: {node: '>=12'}
@@ -3107,6 +3324,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-darwin-64/0.15.18:
+ resolution: {integrity: sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-darwin-arm64/0.15.13:
resolution: {integrity: sha512-U6jFsPfSSxC3V1CLiQqwvDuj3GGrtQNB3P3nNC3+q99EKf94UGpsG9l4CQ83zBs1NHrk1rtCSYT0+KfK5LsD8A==}
engines: {node: '>=12'}
@@ -3124,6 +3350,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-darwin-arm64/0.15.18:
+ resolution: {integrity: sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-freebsd-64/0.15.13:
resolution: {integrity: sha512-whItJgDiOXaDG/idy75qqevIpZjnReZkMGCgQaBWZuKHoElDJC1rh7MpoUgupMcdfOd+PgdEwNQW9DAE6i8wyA==}
engines: {node: '>=12'}
@@ -3141,6 +3376,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-freebsd-64/0.15.18:
+ resolution: {integrity: sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-freebsd-arm64/0.15.13:
resolution: {integrity: sha512-6pCSWt8mLUbPtygv7cufV0sZLeylaMwS5Fznj6Rsx9G2AJJsAjQ9ifA+0rQEIg7DwJmi9it+WjzNTEAzzdoM3Q==}
engines: {node: '>=12'}
@@ -3158,6 +3402,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-freebsd-arm64/0.15.18:
+ resolution: {integrity: sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-32/0.15.13:
resolution: {integrity: sha512-VbZdWOEdrJiYApm2kkxoTOgsoCO1krBZ3quHdYk3g3ivWaMwNIVPIfEE0f0XQQ0u5pJtBsnk2/7OPiCFIPOe/w==}
engines: {node: '>=12'}
@@ -3175,6 +3428,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-linux-32/0.15.18:
+ resolution: {integrity: sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-64/0.15.13:
resolution: {integrity: sha512-rXmnArVNio6yANSqDQlIO4WiP+Cv7+9EuAHNnag7rByAqFVuRusLbGi2697A5dFPNXoO//IiogVwi3AdcfPC6A==}
engines: {node: '>=12'}
@@ -3192,6 +3454,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-linux-64/0.15.18:
+ resolution: {integrity: sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-arm/0.15.13:
resolution: {integrity: sha512-Ac6LpfmJO8WhCMQmO253xX2IU2B3wPDbl4IvR0hnqcPrdfCaUa2j/lLMGTjmQ4W5JsJIdHEdW12dG8lFS0MbxQ==}
engines: {node: '>=12'}
@@ -3209,6 +3480,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-linux-arm/0.15.18:
+ resolution: {integrity: sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-arm64/0.15.13:
resolution: {integrity: sha512-alEMGU4Z+d17U7KQQw2IV8tQycO6T+rOrgW8OS22Ua25x6kHxoG6Ngry6Aq6uranC+pNWNMB6aHFPh7aTQdORQ==}
engines: {node: '>=12'}
@@ -3226,6 +3506,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-linux-arm64/0.15.18:
+ resolution: {integrity: sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-mips64le/0.15.13:
resolution: {integrity: sha512-47PgmyYEu+yN5rD/MbwS6DxP2FSGPo4Uxg5LwIdxTiyGC2XKwHhHyW7YYEDlSuXLQXEdTO7mYe8zQ74czP7W8A==}
engines: {node: '>=12'}
@@ -3243,6 +3532,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-linux-mips64le/0.15.18:
+ resolution: {integrity: sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ==}
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-ppc64le/0.15.13:
resolution: {integrity: sha512-z6n28h2+PC1Ayle9DjKoBRcx/4cxHoOa2e689e2aDJSaKug3jXcQw7mM+GLg+9ydYoNzj8QxNL8ihOv/OnezhA==}
engines: {node: '>=12'}
@@ -3260,6 +3558,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-linux-ppc64le/0.15.18:
+ resolution: {integrity: sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-riscv64/0.15.13:
resolution: {integrity: sha512-+Lu4zuuXuQhgLUGyZloWCqTslcCAjMZH1k3Xc9MSEJEpEFdpsSU0sRDXAnk18FKOfEjhu4YMGaykx9xjtpA6ow==}
engines: {node: '>=12'}
@@ -3277,6 +3584,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-linux-riscv64/0.15.18:
+ resolution: {integrity: sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg==}
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-s390x/0.15.13:
resolution: {integrity: sha512-BMeXRljruf7J0TMxD5CIXS65y7puiZkAh+s4XFV9qy16SxOuMhxhVIXYLnbdfLrsYGFzx7U9mcdpFWkkvy/Uag==}
engines: {node: '>=12'}
@@ -3294,6 +3610,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-linux-s390x/0.15.18:
+ resolution: {integrity: sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ==}
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-netbsd-64/0.15.13:
resolution: {integrity: sha512-EHj9QZOTel581JPj7UO3xYbltFTYnHy+SIqJVq6yd3KkCrsHRbapiPb0Lx3EOOtybBEE9EyqbmfW1NlSDsSzvQ==}
engines: {node: '>=12'}
@@ -3311,6 +3636,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-netbsd-64/0.15.18:
+ resolution: {integrity: sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-openbsd-64/0.15.13:
resolution: {integrity: sha512-nkuDlIjF/sfUhfx8SKq0+U+Fgx5K9JcPq1mUodnxI0x4kBdCv46rOGWbuJ6eof2n3wdoCLccOoJAbg9ba/bT2w==}
engines: {node: '>=12'}
@@ -3328,6 +3662,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-openbsd-64/0.15.18:
+ resolution: {integrity: sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-sunos-64/0.15.13:
resolution: {integrity: sha512-jVeu2GfxZQ++6lRdY43CS0Tm/r4WuQQ0Pdsrxbw+aOrHQPHV0+LNOLnvbN28M7BSUGnJnHkHm2HozGgNGyeIRw==}
engines: {node: '>=12'}
@@ -3345,6 +3688,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-sunos-64/0.15.18:
+ resolution: {integrity: sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-windows-32/0.15.13:
resolution: {integrity: sha512-XoF2iBf0wnqo16SDq+aDGi/+QbaLFpkiRarPVssMh9KYbFNCqPLlGAWwDvxEVz+ywX6Si37J2AKm+AXq1kC0JA==}
engines: {node: '>=12'}
@@ -3362,6 +3714,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-windows-32/0.15.18:
+ resolution: {integrity: sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-windows-64/0.15.13:
resolution: {integrity: sha512-Et6htEfGycjDrtqb2ng6nT+baesZPYQIW+HUEHK4D1ncggNrDNk3yoboYQ5KtiVrw/JaDMNttz8rrPubV/fvPQ==}
engines: {node: '>=12'}
@@ -3379,6 +3740,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-windows-64/0.15.18:
+ resolution: {integrity: sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-windows-arm64/0.15.13:
resolution: {integrity: sha512-3bv7tqntThQC9SWLRouMDmZnlOukBhOCTlkzNqzGCmrkCJI7io5LLjwJBOVY6kOUlIvdxbooNZwjtBvj+7uuVg==}
engines: {node: '>=12'}
@@ -3396,6 +3766,15 @@ packages:
requiresBuild: true
optional: true
+ /esbuild-windows-arm64/0.15.18:
+ resolution: {integrity: sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild/0.15.13:
resolution: {integrity: sha512-Cu3SC84oyzzhrK/YyN4iEVy2jZu5t2fz66HEOShHURcjSkOSAVL8C/gfUT+lDJxkVHpg8GZ10DD0rMHRPqMFaQ==}
engines: {node: '>=12'}
@@ -3455,6 +3834,36 @@ packages:
esbuild-windows-64: 0.15.14
esbuild-windows-arm64: 0.15.14
+ /esbuild/0.15.18:
+ resolution: {integrity: sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==}
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ optionalDependencies:
+ '@esbuild/android-arm': 0.15.18
+ '@esbuild/linux-loong64': 0.15.18
+ esbuild-android-64: 0.15.18
+ esbuild-android-arm64: 0.15.18
+ esbuild-darwin-64: 0.15.18
+ esbuild-darwin-arm64: 0.15.18
+ esbuild-freebsd-64: 0.15.18
+ esbuild-freebsd-arm64: 0.15.18
+ esbuild-linux-32: 0.15.18
+ esbuild-linux-64: 0.15.18
+ esbuild-linux-arm: 0.15.18
+ esbuild-linux-arm64: 0.15.18
+ esbuild-linux-mips64le: 0.15.18
+ esbuild-linux-ppc64le: 0.15.18
+ esbuild-linux-riscv64: 0.15.18
+ esbuild-linux-s390x: 0.15.18
+ esbuild-netbsd-64: 0.15.18
+ esbuild-openbsd-64: 0.15.18
+ esbuild-sunos-64: 0.15.18
+ esbuild-windows-32: 0.15.18
+ esbuild-windows-64: 0.15.18
+ esbuild-windows-arm64: 0.15.18
+ dev: true
+
/escalade/3.1.1:
resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
engines: {node: '>=6'}
@@ -3971,6 +4380,12 @@ packages:
debug:
optional: true
+ /for-each/0.3.3:
+ resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
+ dependencies:
+ is-callable: 1.2.7
+ dev: true
+
/formdata-polyfill/4.0.10:
resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==}
engines: {node: '>=12.20.0'}
@@ -4201,10 +4616,27 @@ packages:
merge2: 1.4.1
slash: 4.0.0
+ /globby/13.1.3:
+ resolution: {integrity: sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ dir-glob: 3.0.1
+ fast-glob: 3.2.12
+ ignore: 5.2.1
+ merge2: 1.4.1
+ slash: 4.0.0
+ dev: true
+
/globrex/0.1.2:
resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
dev: true
+ /gopd/1.0.1:
+ resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
+ dependencies:
+ get-intrinsic: 1.1.3
+ dev: true
+
/got/11.8.5:
resolution: {integrity: sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ==}
engines: {node: '>=10.19.0'}
@@ -4388,10 +4820,6 @@ packages:
tslib: 2.4.1
dev: true
- /hey-listen/1.0.8:
- resolution: {integrity: sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==}
- dev: true
-
/hogan.js/3.0.2:
resolution: {integrity: sha512-RqGs4wavGYJWE07t35JQccByczmNUXQT0E12ZYV1VKYu5UiAU9lsos/yBAcf840+zrUQQxgVduCR5/B8nNtibg==}
hasBin: true
@@ -4481,6 +4909,11 @@ packages:
resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
engines: {node: '>= 4'}
+ /ignore/5.2.1:
+ resolution: {integrity: sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==}
+ engines: {node: '>= 4'}
+ dev: true
+
/import-fresh/3.3.0:
resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
engines: {node: '>=6'}
@@ -4604,6 +5037,14 @@ packages:
is-decimal: 2.0.1
dev: true
+ /is-arguments/1.1.1:
+ resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.2
+ has-tostringtag: 1.0.0
+ dev: true
+
/is-arrayish/0.2.1:
resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
dev: true
@@ -4678,6 +5119,13 @@ packages:
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
engines: {node: '>=8'}
+ /is-generator-function/1.0.10:
+ resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ has-tostringtag: 1.0.0
+ dev: true
+
/is-glob/4.0.3:
resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
engines: {node: '>=0.10.0'}
@@ -4695,6 +5143,14 @@ packages:
/is-module/1.0.0:
resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==}
+ /is-nan/1.3.2:
+ resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.2
+ define-properties: 1.1.4
+ dev: true
+
/is-negative-zero/2.0.2:
resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==}
engines: {node: '>= 0.4'}
@@ -4775,6 +5231,17 @@ packages:
has-symbols: 1.0.3
dev: true
+ /is-typed-array/1.1.10:
+ resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ available-typed-arrays: 1.0.5
+ call-bind: 1.0.2
+ for-each: 0.3.3
+ gopd: 1.0.1
+ has-tostringtag: 1.0.0
+ dev: true
+
/is-unicode-supported/1.3.0:
resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==}
engines: {node: '>=12'}
@@ -4866,6 +5333,12 @@ packages:
engines: {node: '>=6'}
hasBin: true
+ /json5/2.2.2:
+ resolution: {integrity: sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==}
+ engines: {node: '>=6'}
+ hasBin: true
+ dev: true
+
/jsonc-parser/3.2.0:
resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==}
@@ -5050,6 +5523,13 @@ packages:
dependencies:
sourcemap-codec: 1.4.8
+ /magic-string/0.27.0:
+ resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==}
+ engines: {node: '>=12'}
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.4.14
+ dev: true
+
/make-dir/3.1.0:
resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
engines: {node: '>=8'}
@@ -5522,6 +6002,13 @@ packages:
dependencies:
brace-expansion: 2.0.1
+ /minimatch/5.1.1:
+ resolution: {integrity: sha512-362NP+zlprccbEt/SkxKfRMHnNY85V74mVnpUpNyr3F35covl09Kec7/sEFLt3RA4oXmewtoaanoIf67SE5Y5g==}
+ engines: {node: '>=10'}
+ dependencies:
+ brace-expansion: 2.0.1
+ dev: true
+
/minimist/1.2.7:
resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==}
@@ -5573,7 +6060,7 @@ packages:
engines: {node: '>=10'}
hasBin: true
- /mkdist/1.0.0_typescript@4.9.3:
+ /mkdist/1.0.0_typescript@4.9.4:
resolution: {integrity: sha512-aJke+yvXwwcrOh+3KfAdDgDA+MPe7c+R8hQ7IPfp0gqL1/WPZZUS9rwS6CNjdwDJmHm6DTMA9KwX1FNjZG3I1Q==}
hasBin: true
peerDependencies:
@@ -5586,13 +6073,13 @@ packages:
optional: true
dependencies:
defu: 6.1.1
- esbuild: 0.15.14
+ esbuild: 0.15.18
fs-extra: 10.1.0
- globby: 13.1.2
+ globby: 13.1.3
jiti: 1.16.0
mri: 1.2.0
pathe: 1.0.0
- typescript: 4.9.3
+ typescript: 4.9.4
dev: true
/mlly/0.5.17:
@@ -5939,6 +6426,14 @@ packages:
resolution: {integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==}
dev: true
+ /object-is/1.1.5:
+ resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.2
+ define-properties: 1.1.4
+ dev: true
+
/object-keys/1.1.1:
resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
engines: {node: '>= 0.4'}
@@ -6194,26 +6689,27 @@ packages:
resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
engines: {node: '>=0.10.0'}
- /pinceau/0.6.26:
- resolution: {integrity: sha512-RYXw+Jqgpdcs8HW3CH2EHwmDksbU2kA524pPo/QjxUvMpj+sy0g5QxXD1iYY2ybga6bUpnaXFlR5/LsRaEsYUA==}
+ /pinceau/0.8.9:
+ resolution: {integrity: sha512-5iUN4FuLUK2oyP0a7vMYJooyXlF8DutrSbWuBqp0FrVqcDI9j5WG+RZUY57uFkUICcSXmoghQ3nJZ/Dxnr77nA==}
dependencies:
- '@unocss/reset': 0.46.5
- '@volar/vue-language-core': 1.0.9
+ '@unocss/reset': 0.47.6
+ '@volar/vue-language-core': 1.0.14
+ acorn: 8.8.1
chroma-js: 2.4.2
consola: 2.15.3
csstype: 3.1.1
defu: 6.1.1
- magic-string: 0.26.7
+ magic-string: 0.27.0
nanoid: 4.0.0
ohash: 1.0.0
- postcss-custom-properties: 12.1.10
+ postcss-custom-properties: 12.1.11
postcss-dark-theme-class: 0.7.3
postcss-nested: 6.0.0
- recast: 0.21.5
+ recast: 0.22.0
scule: 1.0.0
style-dictionary-esm: 1.0.15
- unbuild: 1.0.1
- unplugin: 1.0.0
+ unbuild: 1.0.2
+ unplugin: 1.0.1
transitivePeerDependencies:
- postcss
- sass
@@ -6268,8 +6764,8 @@ packages:
postcss: 8.4.19
postcss-value-parser: 4.2.0
- /postcss-custom-properties/12.1.10:
- resolution: {integrity: sha512-U3BHdgrYhCrwTVcByFHs9EOBoqcKq4Lf3kXwbTi4hhq0qWhl/pDWq2THbv/ICX/Fl9KqeHBb8OVrTf2OaYF07A==}
+ /postcss-custom-properties/12.1.11:
+ resolution: {integrity: sha512-0IDJYhgU8xDv1KY6+VgUwuQkVtmYzRwu+dMjnmdMafXYv86SWqfxkc7qdDvWS38vsjaEtv8e0vGOUQrAiMBLpQ==}
engines: {node: ^12 || ^14 || >=16}
peerDependencies:
postcss: ^8.2
@@ -6416,7 +6912,7 @@ packages:
peerDependencies:
postcss: ^8.2.14
dependencies:
- postcss-selector-parser: 6.0.10
+ postcss-selector-parser: 6.0.11
dev: true
/postcss-normalize-charset/5.1.0_postcss@8.4.19:
@@ -6537,6 +7033,14 @@ packages:
cssesc: 3.0.0
util-deprecate: 1.0.2
+ /postcss-selector-parser/6.0.11:
+ resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==}
+ engines: {node: '>=4'}
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+ dev: true
+
/postcss-svgo/5.1.0_postcss@8.4.19:
resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==}
engines: {node: ^10 || ^12 || >=14.0}
@@ -6711,10 +7215,11 @@ packages:
dependencies:
picomatch: 2.3.1
- /recast/0.21.5:
- resolution: {integrity: sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==}
+ /recast/0.22.0:
+ resolution: {integrity: sha512-5AAx+mujtXijsEavc5lWXBPQqrM4+Dl5qNH96N2aNeuJFUzpiiToKPsxQD/zAIJHspz7zz0maX0PCtCTFVlixQ==}
engines: {node: '>= 4'}
dependencies:
+ assert: 2.0.0
ast-types: 0.15.2
esprima: 4.0.1
source-map: 0.6.1
@@ -6931,7 +7436,7 @@ packages:
dependencies:
glob: 7.2.3
- /rollup-plugin-dts/5.0.0_6annma2bj33shm6er7hwi5u4z4:
+ /rollup-plugin-dts/5.0.0_oj4jlwi3mkekxo3vucumcwebnq:
resolution: {integrity: sha512-OO8ayCvuJCKaQSShyVTARxGurVVk4ulzbuvz+0zFd1f93vlnWFU5pBMT7HFeS6uj7MvvZLx4kUAarGATSU1+Ng==}
engines: {node: '>=v14'}
peerDependencies:
@@ -6939,8 +7444,8 @@ packages:
typescript: ^4.1
dependencies:
magic-string: 0.26.7
- rollup: 3.3.0
- typescript: 4.9.3
+ rollup: 3.7.5
+ typescript: 4.9.4
optionalDependencies:
'@babel/code-frame': 7.18.6
dev: true
@@ -6991,6 +7496,14 @@ packages:
fsevents: 2.3.2
dev: true
+ /rollup/3.7.5:
+ resolution: {integrity: sha512-z0ZbqHBtS/et2EEUKMrAl2CoSdwN7ZPzL17UMiKN9RjjqHShTlv7F9J6ZJZJNREYjBh3TvBrdfjkFDIXFNeuiQ==}
+ engines: {node: '>=14.18.0', npm: '>=8.0.0'}
+ hasBin: true
+ optionalDependencies:
+ fsevents: 2.3.2
+ dev: true
+
/run-async/2.4.1:
resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==}
engines: {node: '>=0.12.0'}
@@ -7394,7 +7907,7 @@ packages:
fs-extra: 10.1.0
glob: 8.0.3
jiti: 1.16.0
- json5: 2.2.1
+ json5: 2.2.2
jsonc-parser: 3.2.0
lodash.template: 4.5.0
tinycolor2: 1.4.2
@@ -7406,13 +7919,6 @@ packages:
inline-style-parser: 0.1.1
dev: true
- /style-value-types/5.1.2:
- resolution: {integrity: sha512-Vs9fNreYF9j6W2VvuDTP7kepALi7sk0xtk2Tu8Yxi9UoajJdEVpNpCov0HsLTqXvNGKX+Uv09pkozVITi1jf3Q==}
- dependencies:
- hey-listen: 1.0.8
- tslib: 2.4.0
- dev: true
-
/stylehacks/5.1.1_postcss@8.4.19:
resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==}
engines: {node: ^10 || ^12 || >=14.0}
@@ -7634,10 +8140,6 @@ packages:
resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
dev: true
- /tslib/2.4.0:
- resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==}
- dev: true
-
/tslib/2.4.1:
resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==}
@@ -7742,6 +8244,12 @@ packages:
hasBin: true
dev: true
+ /typescript/4.9.4:
+ resolution: {integrity: sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==}
+ engines: {node: '>=4.2.0'}
+ hasBin: true
+ dev: true
+
/ufo/0.8.6:
resolution: {integrity: sha512-fk6CmUgwKCfX79EzcDQQpSCMxrHstvbLswFChHS0Vump+kFkw7nJBfTZoC1j0bOGoY9I7R3n2DGek5ajbcYnOw==}
@@ -7760,37 +8268,37 @@ packages:
which-boxed-primitive: 1.0.2
dev: true
- /unbuild/1.0.1:
- resolution: {integrity: sha512-i2mkbLNFZDJJdpsbg4JflHldKeF3J0K+mLGUdh8jrHBSTHZBw8qFWI7t/AUrGjHxa/O/vkIod65LXu9ktPiUHw==}
+ /unbuild/1.0.2:
+ resolution: {integrity: sha512-nQ2rxQ9aqIPzVhOEs6T/YcDGb6PWf6BAtQ0as+YWoaWCfezAdeL3KlNWSh279D6euOeCt94t0b/vAGr3GKu9Gw==}
hasBin: true
dependencies:
- '@rollup/plugin-alias': 4.0.2_rollup@3.3.0
- '@rollup/plugin-commonjs': 23.0.2_rollup@3.3.0
- '@rollup/plugin-json': 5.0.1_rollup@3.3.0
- '@rollup/plugin-node-resolve': 15.0.1_rollup@3.3.0
- '@rollup/plugin-replace': 5.0.1_rollup@3.3.0
- '@rollup/pluginutils': 5.0.2_rollup@3.3.0
- chalk: 5.1.2
+ '@rollup/plugin-alias': 4.0.2_rollup@3.7.5
+ '@rollup/plugin-commonjs': 23.0.7_rollup@3.7.5
+ '@rollup/plugin-json': 5.0.2_rollup@3.7.5
+ '@rollup/plugin-node-resolve': 15.0.1_rollup@3.7.5
+ '@rollup/plugin-replace': 5.0.2_rollup@3.7.5
+ '@rollup/pluginutils': 5.0.2_rollup@3.7.5
+ chalk: 5.2.0
consola: 2.15.3
defu: 6.1.1
- esbuild: 0.15.14
- globby: 13.1.2
+ esbuild: 0.15.18
+ globby: 13.1.3
hookable: 5.4.2
jiti: 1.16.0
- magic-string: 0.26.7
+ magic-string: 0.27.0
mkdirp: 1.0.4
- mkdist: 1.0.0_typescript@4.9.3
+ mkdist: 1.0.0_typescript@4.9.4
mlly: 1.0.0
mri: 1.2.0
pathe: 1.0.0
pkg-types: 1.0.1
pretty-bytes: 6.0.0
rimraf: 3.0.2
- rollup: 3.3.0
- rollup-plugin-dts: 5.0.0_6annma2bj33shm6er7hwi5u4z4
+ rollup: 3.7.5
+ rollup-plugin-dts: 5.0.0_oj4jlwi3mkekxo3vucumcwebnq
scule: 1.0.0
- typescript: 4.9.3
- untyped: 1.0.0
+ typescript: 4.9.4
+ untyped: 1.2.0
transitivePeerDependencies:
- sass
- supports-color
@@ -7936,6 +8444,15 @@ packages:
webpack-sources: 3.2.3
webpack-virtual-modules: 0.4.6
+ /unplugin/1.0.1:
+ resolution: {integrity: sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==}
+ dependencies:
+ acorn: 8.8.1
+ chokidar: 3.5.3
+ webpack-sources: 3.2.3
+ webpack-virtual-modules: 0.5.0
+ dev: true
+
/unstorage/1.0.1:
resolution: {integrity: sha512-J1c4b8K2KeihHrQtdgl/ybIapArUbPaPb+TyJy/nGSauDwDYqciZsEKdkee568P3c8SSH4TIgnGRHDWMPGw+Lg==}
dependencies:
@@ -7965,6 +8482,17 @@ packages:
transitivePeerDependencies:
- supports-color
+ /untyped/1.2.0:
+ resolution: {integrity: sha512-nG0A55YEhUU5UCEM+nhIhCVkA8a4L1spIVtzO0937WDjEA6jrKpu184O2K9iv5UuJNHnwhu+Q3TXiSJh/JrjlQ==}
+ dependencies:
+ '@babel/core': 7.20.5
+ '@babel/standalone': 7.20.6
+ '@babel/types': 7.20.5
+ scule: 1.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/update-browserslist-db/1.0.10_browserslist@4.21.4:
resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==}
hasBin: true
@@ -7996,6 +8524,16 @@ packages:
/util-deprecate/1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+ /util/0.12.5:
+ resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==}
+ dependencies:
+ inherits: 2.0.4
+ is-arguments: 1.1.1
+ is-generator-function: 1.0.10
+ is-typed-array: 1.1.10
+ which-typed-array: 1.1.9
+ dev: true
+
/uvu/0.5.6:
resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==}
engines: {node: '>=8'}
@@ -8277,6 +8815,10 @@ packages:
/webpack-virtual-modules/0.4.6:
resolution: {integrity: sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA==}
+ /webpack-virtual-modules/0.5.0:
+ resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==}
+ dev: true
+
/whatwg-url/5.0.0:
resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
dependencies:
@@ -8301,6 +8843,18 @@ packages:
is-symbol: 1.0.4
dev: true
+ /which-typed-array/1.1.9:
+ resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ available-typed-arrays: 1.0.5
+ call-bind: 1.0.2
+ for-each: 0.3.3
+ gopd: 1.0.1
+ has-tostringtag: 1.0.0
+ is-typed-array: 1.1.10
+ dev: true
+
/which/2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
diff --git a/src/client/index.ts b/src/client/index.ts
new file mode 100644
index 0000000..b1a9ae0
--- /dev/null
+++ b/src/client/index.ts
@@ -0,0 +1,89 @@
+import { type CreateTRPCClientOptions, type inferRouterProxyClient, createTRPCProxyClient, httpBatchLink as _httpBatchLink } from '@trpc/client'
+import { type AnyRouter } from '@trpc/server'
+import { createFlatProxy, createRecursiveProxy } from '@trpc/server/shared'
+import { hash } from 'ohash'
+import { nanoid } from 'nanoid'
+import { type DecoratedProcedureRecord } from './types'
+// @ts-expect-error: Nuxt auto-imports
+import { getCurrentInstance, onScopeDispose, useAsyncData, useRequestHeaders, ref, unref } from '#imports'
+
+/**
+ * Calculates the key used for `useAsyncData` call
+ */
+export function getQueryKey (
+ path: string,
+ input: unknown
+): string {
+ return input === undefined ? path : `${path}-${hash(input || '')}`
+}
+
+export function createNuxtProxyDecoration (name: string, client: inferRouterProxyClient) {
+ return createRecursiveProxy((opts) => {
+ const args = opts.args
+
+ const pathCopy = [name, ...opts.path]
+
+ // The last arg is for instance `.useMutation` or `.useQuery()`
+ const lastArg = pathCopy.pop()!
+
+ // The `path` ends up being something like `post.byId`
+ const path = pathCopy.join('.')
+
+ const [input, otherOptions] = args
+
+ const { trpc, ...asyncDataOptions } = otherOptions || {} as any
+
+ let controller: AbortController
+
+ if (trpc?.abortOnUnmount) {
+ if (getCurrentInstance()) {
+ onScopeDispose(() => {
+ controller?.abort?.()
+ })
+ }
+ controller = typeof AbortController !== 'undefined' ? new AbortController() : {} as AbortController
+ }
+
+ if (lastArg === 'useQuery') {
+ const queryKey = getQueryKey(path, input)
+ return useAsyncData(queryKey, () => (client as any)[path].query(input, {
+ signal: controller?.signal,
+ ...trpc
+ }), asyncDataOptions)
+ }
+
+ if (lastArg === 'useMutation') {
+ const reactiveInput = ref(null)
+ const { refresh, ...result } = useAsyncData(nanoid(), () => (client as any)[path].mutate(reactiveInput.value, {
+ signal: controller?.signal,
+ ...trpc
+ }), {
+ ...asyncDataOptions,
+ immediate: false
+ })
+
+ async function mutate (_input: any) {
+ reactiveInput.value = _input
+ await refresh()
+ return unref(result.data)
+ }
+
+ return {
+ mutate,
+ ...result
+ }
+ }
+
+ return (client as any)[path][lastArg](input)
+ })
+}
+
+export function createTRPCNuxtClient (opts: CreateTRPCClientOptions) {
+ const client = createTRPCProxyClient(opts)
+
+ const decoratedClient = createFlatProxy((key) => {
+ return createNuxtProxyDecoration(key, client)
+ }) as DecoratedProcedureRecord
+
+ return decoratedClient
+}
diff --git a/src/client/types.ts b/src/client/types.ts
new file mode 100644
index 0000000..8002404
--- /dev/null
+++ b/src/client/types.ts
@@ -0,0 +1,94 @@
+import type { TRPCClientErrorLike, TRPCRequestOptions as _TRPCRequestOptions } from '@trpc/client'
+import { type TRPCSubscriptionObserver } from '@trpc/client/dist/internals/TRPCClient'
+import type {
+ AnyMutationProcedure,
+ AnyProcedure,
+ AnyQueryProcedure,
+ AnyRouter,
+ ProcedureRouterRecord,
+ inferProcedureInput,
+ inferProcedureOutput,
+ ProcedureArgs,
+ AnySubscriptionProcedure
+} from '@trpc/server'
+import { type inferObservableValue, type Unsubscribable } from '@trpc/server/observable'
+import { inferTransformedProcedureOutput } from '@trpc/server/shared'
+// import { inferTransformedProcedureOutput } from '@trpc/server/shared'
+import type {
+ AsyncData,
+ AsyncDataOptions,
+ KeyOfRes,
+ PickFrom,
+ _Transform
+} from 'nuxt/dist/app/composables/asyncData'
+
+// Modified @trpc/client and @trpc/react-query types
+// https://github.com/trpc/trpc/blob/next/packages/client/src/createTRPCClientProxy.ts
+// https://github.com/trpc/trpc/blob/next/packages/react-query/src/createTRPCReact.tsx
+
+interface TRPCRequestOptions extends _TRPCRequestOptions {
+ abortOnUnmount?: boolean
+}
+
+type Resolver = (
+ ...args: ProcedureArgs
+) => Promise>;
+
+type SubscriptionResolver<
+ TProcedure extends AnyProcedure,
+ TRouter extends AnyRouter,
+> = (
+ ...args: [
+ input: ProcedureArgs[0],
+ opts: ProcedureArgs[1] &
+ Partial<
+ TRPCSubscriptionObserver<
+ inferObservableValue>,
+ TRPCClientErrorLike
+ >
+ >,
+ ]
+) => Unsubscribable
+
+type DecorateProcedure<
+ TProcedure extends AnyProcedure,
+ TRouter extends AnyRouter,
+> = TProcedure extends AnyQueryProcedure
+ ? {
+ useQuery: <
+ TData = inferTransformedProcedureOutput,
+ Transform extends _Transform = _Transform,
+ PickKeys extends KeyOfRes = KeyOfRes,
+ >(
+ input: inferProcedureInput,
+ opts?: AsyncDataOptions & { trpc?: TRPCRequestOptions },
+ ) => AsyncData, PickKeys>, TRPCClientErrorLike>,
+ query: Resolver
+ } : TProcedure extends AnyMutationProcedure ? {
+ useMutation: <
+ TData = inferTransformedProcedureOutput,
+ Transform extends _Transform = _Transform,
+ PickKeys extends KeyOfRes = KeyOfRes,
+ >(
+ opts?: AsyncDataOptions & { trpc?: TRPCRequestOptions },
+ ) => AsyncData, PickKeys>, TRPCClientErrorLike> & {
+ mutate: (input: inferProcedureInput) => Promise, PickKeys>>
+ },
+ mutate: Resolver
+ } : TProcedure extends AnySubscriptionProcedure ? {
+ subscribe: SubscriptionResolver
+ } : never
+
+/**
+* @internal
+*/
+export type DecoratedProcedureRecord<
+ TProcedures extends ProcedureRouterRecord,
+ TRouter extends AnyRouter,
+> = {
+ [TKey in keyof TProcedures]: TProcedures[TKey] extends AnyRouter
+ ? DecoratedProcedureRecord
+ : TProcedures[TKey] extends AnyProcedure
+ ? DecorateProcedure
+ : never;
+}
diff --git a/tsup.config.ts b/tsup.config.ts
index bbd44ff..4c2b48e 100644
--- a/tsup.config.ts
+++ b/tsup.config.ts
@@ -1,11 +1,11 @@
import { defineConfig } from 'tsup'
export default defineConfig({
- entry: ['src/index.ts'],
+ entry: ['src/index.ts', 'src/client/index.ts'],
format: ['cjs', 'esm'],
splitting: false,
clean: true,
- external: ['#app', '#imports'],
+ external: ['#app', '#imports', /@trpc\/client/, /@trpc\/server/],
dts: true,
outExtension ({ format }) {
return {