diff --git a/CHANGELOG.mdx b/CHANGELOG.mdx index 8a4499a..6227ad4 100644 --- a/CHANGELOG.mdx +++ b/CHANGELOG.mdx @@ -2,6 +2,12 @@ This is the log of notable changes to the `tsdk` that are developer-facing. +### 0.1.5 2024/2/20 + +- Feat: add fetch support (use xior, similar axios API: https://www.npmjs.com/package/xior) +- Chore: bump deps +- Chore: update documentation, add `xior` part and fix some typo + ### 0.1.4 2024/01/20 - Fix: windows build diff --git a/examples/app/App.tsx b/examples/app/App.tsx index 8be4698..4fbaf22 100644 --- a/examples/app/App.tsx +++ b/examples/app/App.tsx @@ -20,7 +20,7 @@ import '@total-typescript/ts-reset'; const { manifest } = Constants; const baseURL = // process.env.NODE_ENV === 'production' - // ? '' // @todo 使用环境变量打包 + // ? '' // : (() => { // TODO - put a "prod" api server somewhere diff --git a/examples/app/package.json b/examples/app/package.json index 57e8fdf..c87997a 100644 --- a/examples/app/package.json +++ b/examples/app/package.json @@ -27,7 +27,7 @@ "react-dom": "18.2.0", "react-native": "^0.72.3", "react-native-web": "^0.19.6", - "socket.io-client": "^4.7.2" + "socket.io-client": "^4.7.4" }, "devDependencies": { "@configs/vitest-config": "workspace:*", diff --git a/examples/server/package.json b/examples/server/package.json index 3f57530..6d57d5e 100644 --- a/examples/server/package.json +++ b/examples/server/package.json @@ -26,14 +26,14 @@ "cors": "^2.8.5", "express": "^4.18.2", "reflect-metadata": "^0.1.13", - "socket.io": "^4.7.2", + "socket.io": "^4.7.4", "typeorm": "^0.3.17", "kysely": "^0.26.3", "typeorm-cursor-pagination": "^0.10.1", "utf-8-validate": "^6.0.3", "ws": "^8.13.0", "zod": "^3.22.4", - "hono": "^3.10.2", + "hono": "^4.0.4", "fastify": "^4.24.3", "@fastify/express": "^2.3.0", "@hono/node-server": "^1.2.3", @@ -44,10 +44,10 @@ "@configs/test-config": "workspace:*", "@configs/ts-config": "workspace:*", "@configs/eslint-config": "workspace:*", - "@nestjs/cli": "^10.2.1", + "@nestjs/cli": "^10.3.2", "@types/express": "^4.17.17", "@types/ws": "^8.5.5", - "socket.io-client": "^4.7.2", + "socket.io-client": "^4.7.4", "tsdk": "workspace:*" }, "eslintConfig": { diff --git a/examples/server/packages/fe-sdk-demo/package.json b/examples/server/packages/fe-sdk-demo/package.json index 613d056..2e88f20 100644 --- a/examples/server/packages/fe-sdk-demo/package.json +++ b/examples/server/packages/fe-sdk-demo/package.json @@ -9,10 +9,11 @@ }, "dependencies": { "zod": "^3", - "axios": "1.6.1", + "axios": "^1.6.7", + "xior": "^0.0.3", "change-case": "^4.1.2", "kysely": "^0.26.3", - "@tanstack/react-query": "^5.14.0", + "@tanstack/react-query": "^5.22.2", "i18next": "^23.7.13", "intl-pluralrules": "^2.0.1" }, @@ -22,7 +23,7 @@ "@tsconfig/recommended": "^1.0.3" }, "peerDependencies": { - "socket.io-client": "^4.7.2" + "socket.io-client": "^4.7.4" }, "peerDependenciesMeta": { "socket.io-client": { diff --git a/examples/web/package.json b/examples/web/package.json index f533014..859e9fd 100644 --- a/examples/web/package.json +++ b/examples/web/package.json @@ -18,8 +18,9 @@ "react": "18.2.0", "react-dom": "18.2.0", "react-native-web": "^0.19.6", - "socket.io-client": "^4.7.2", - "axios": "1.6.1" + "socket.io-client": "^4.7.4", + "axios": "^1.6.7", + "xior": "^0.0.3" }, "devDependencies": { "@configs/vitest-config": "workspace:*", diff --git a/examples/web/pages/index.tsx b/examples/web/pages/index.tsx index f97856c..d718a11 100644 --- a/examples/web/pages/index.tsx +++ b/examples/web/pages/index.tsx @@ -20,7 +20,7 @@ import styles from '../styles/Home.module.css'; const baseURL = // process.env.NODE_ENV === 'production' - // ? process.env.BASE_URL // @todo 使用环境变量打包 + // ? process.env.BASE_URL // : (() => { if (typeof window === 'undefined') return; diff --git a/examples/web/pages/xior/index.tsx b/examples/web/pages/xior/index.tsx new file mode 100644 index 0000000..ee70fbc --- /dev/null +++ b/examples/web/pages/xior/index.tsx @@ -0,0 +1,96 @@ +import { + setHandler, + setSocketIOInstance, + socketIOHandler, + setXiorInstance, + xiorHandler, + getHandler, +} from 'fe-sdk-demo'; +import { QueryTodoRes } from 'fe-sdk-demo/lib/apiconf-refs'; +import { TodoStatus } from 'fe-sdk-demo/lib/modules/todo/Todo.entity'; +import { AddTodo, QueryTodo } from 'fe-sdk-demo/lib/user-api'; +import Head from 'next/head'; +import { useState, useEffect } from 'react'; +// eslint-disable-next-line import/namespace +import { io as SocketIO } from 'socket.io-client'; +import xior from 'xior'; + +import styles from '../../styles/Home.module.css'; + +const baseURL = + // process.env.NODE_ENV === 'production' + // ? process.env.BASE_URL + // : + (() => { + if (typeof window === 'undefined') return; + return ( + window?.location.protocol + '//' + window?.location.host.split(':')[0] + ':' + 3012 + '/' + ); + })(); + +const apiType = 'user'; +const socketURL = baseURL; +const apiURL = baseURL + `api/${apiType}`; + +export default function Home() { + const [handlerName, setHanlderName] = useState(''); + const [result, setResult] = useState(); + + useEffect(() => { + const io = SocketIO(socketURL, { + transports: ['websocket'], + query: { + type: apiType, + }, + }); + setSocketIOInstance(io); + setHandler(socketIOHandler); + + setHanlderName(getHandler().name); + + io.on('connect', async () => { + await AddTodo({ + status: TodoStatus.todo, + title: 'create by socket.io', + }); + const wsRes = await QueryTodo({}); + + console.log(wsRes); + setResult(wsRes); + + io.disconnect(); + setTimeout(async () => { + setXiorInstance(xior.create({ baseURL: apiURL })); + setHandler(xiorHandler); + + setHanlderName(getHandler().name); + await AddTodo({ + status: TodoStatus.todo, + title: 'create by axios', + }); + const httpRes = await QueryTodo({}); + console.log(httpRes); + + setResult(httpRes); + }, 2500); + }); + + return () => { + io.off('connect'); + }; + }, []); + + return ( +
+ + [web] Expo monorepo + + + + +
+ Hello, {handlerName}: {JSON.stringify(result)} +
+
+ ); +} diff --git a/packages/bench/package.json b/packages/bench/package.json index 3e868e3..c21c0ea 100644 --- a/packages/bench/package.json +++ b/packages/bench/package.json @@ -19,7 +19,7 @@ "change-case": "^4.1.2", "express": "^4.18.2", "zod": "^3.22.4", - "hono": "^3.10.2", + "hono": "^4.0.4", "@hono/node-server": "^1.2.3", "@trpc/server": "^10.44.1", "fastify": "^4.24.3" @@ -28,7 +28,7 @@ "@configs/test-config": "workspace:*", "@configs/ts-config": "workspace:*", "@configs/eslint-config": "workspace:*", - "@nestjs/cli": "^10.2.1", + "@nestjs/cli": "^10.3.2", "@types/express": "^4.17.17", "tsdk": "workspace:*", "concurrently": "^8.2.2" diff --git a/packages/tsdk-server-adapters/package.json b/packages/tsdk-server-adapters/package.json index 0412580..460c14d 100644 --- a/packages/tsdk-server-adapters/package.json +++ b/packages/tsdk-server-adapters/package.json @@ -1,6 +1,6 @@ { "name": "tsdk-server-adapters", - "version": "0.1.4", + "version": "0.1.5", "main": "lib/index.js", "repository": "tsdk-monorepo/tsdk", "bugs": "https://github.com/tsdk-monorepo/tsdk/issues", @@ -22,7 +22,8 @@ "express", "socket.io", "fastify", - "backend" + "backend", + "typesafe API" ], "dependencies": { "eventemitter3": "^4.0.7" @@ -36,8 +37,8 @@ "peerDependencies": { "express": "^4.18.2", "zod": "^3", - "socket.io": "^4.7.2", - "hono": "^3.10.2", + "socket.io": "^4.7.4", + "hono": "^4.0.4", "fastify": "^4.24.3" }, "peerDependenciesMeta": { diff --git a/packages/tsdk-server-adapters/src/gen-route-factory.ts b/packages/tsdk-server-adapters/src/gen-route-factory.ts index 8980ddd..e9558f5 100644 --- a/packages/tsdk-server-adapters/src/gen-route-factory.ts +++ b/packages/tsdk-server-adapters/src/gen-route-factory.ts @@ -4,6 +4,7 @@ import EventEmitter from 'eventemitter3'; import type { Response } from 'express'; // @ts-ignore import type { Context } from 'hono'; +import { StatusCode, SuccessStatusCode } from 'hono/utils/http-status'; // @ts-ignore import type { Socket } from 'socket.io'; // @ts-ignore @@ -67,7 +68,7 @@ function sendFactory( (response as Response).status(status || 200).send(result); } else if (protocol === 'hono') { const { status, result } = payload; - (response as Context).status(status || 200); + (response as Context).status((status || 200) as StatusCode); if (typeof result === 'string') { callback?.((response as Context).text(result)); } else { diff --git a/packages/tsdk/fe-sdk-template/package.json b/packages/tsdk/fe-sdk-template/package.json index e620e72..91b10c8 100644 --- a/packages/tsdk/fe-sdk-template/package.json +++ b/packages/tsdk/fe-sdk-template/package.json @@ -9,7 +9,8 @@ }, "dependencies": { "zod": "^3", - "axios": "1.6.1", + "axios": "^1.6.7", + "xior": "^0.0.3", "change-case": "^4.1.2" }, "devDependencies": { @@ -18,7 +19,7 @@ "@tsconfig/recommended": "^1.0.3" }, "peerDependencies": { - "socket.io-client": "^4.7.2" + "socket.io-client": "^4.7.4" }, "peerDependenciesMeta": { "socket.io-client": { diff --git a/packages/tsdk/fe-sdk-template/src/gen-api.ts b/packages/tsdk/fe-sdk-template/src/gen-api.ts index 8ad0a1e..bf2ea6d 100644 --- a/packages/tsdk/fe-sdk-template/src/gen-api.ts +++ b/packages/tsdk/fe-sdk-template/src/gen-api.ts @@ -1,11 +1,12 @@ import type { RequestConfig } from './axios'; import { NoHandlerError } from './error'; import { APIConfig, ObjectLiteral } from './shared/tsdk-helper'; +import type { XiorRequestConfig } from './xior'; let handler = ( apiConfig: APIConfig, requestData: any, - requestConfig?: RequestConfig | ObjectLiteral, + requestConfig?: any | RequestConfig | ObjectLiteral | XiorRequestConfig, needTrim?: boolean ): Promise => { return Promise.reject(new NoHandlerError(`Call \`setHandler\` first`)); diff --git a/packages/tsdk/fe-sdk-template/src/index.ts b/packages/tsdk/fe-sdk-template/src/index.ts index b394a63..3e4dca0 100644 --- a/packages/tsdk/fe-sdk-template/src/index.ts +++ b/packages/tsdk/fe-sdk-template/src/index.ts @@ -1,3 +1,4 @@ export * from './axios'; export * from './socket.io'; export * from './gen-api'; +export * from './xior'; diff --git a/packages/tsdk/fe-sdk-template/src/xior.ts b/packages/tsdk/fe-sdk-template/src/xior.ts new file mode 100644 index 0000000..dabf764 --- /dev/null +++ b/packages/tsdk/fe-sdk-template/src/xior.ts @@ -0,0 +1,77 @@ +import { XiorRequestConfig as _XiorRequestConfig, xior } from 'xior'; + +import { NoHandlerError } from './error'; +import { pathParams } from './path-params'; +import { APIConfig, checkMethodHasBody, trimAndRemoveUndefined } from './shared/tsdk-helper'; + +let xiorInstance: xior; + +/** + * Set the XiorInstance + * + * @param instance - XiorInstance + */ +export const setXiorInstance = (instance: xior): void => { + xiorInstance = instance; +}; + +/** + * Get the XiorInstance + * + * @param instance - XiorInstance + * @returns The XiorInstance + */ +export const getXiorInstance = () => { + return xiorInstance; +}; + +export type XiorRequestConfig = Omit<_XiorRequestConfig, 'data'> & { + data?: ReqPayload; +}; + +export async function xiorHandler( + apiConfig: APIConfig, + requestData: any, + requestConfig?: XiorRequestConfig, + /** remove fields with undefined */ + needTrim?: boolean +) { + const xiorInstance = getXiorInstance(); + if (!xiorInstance) { + throw new NoHandlerError(`Call \`setXiorInstance\` first`); + } + const { path, headers } = apiConfig; + const method = apiConfig.method.toLowerCase(); + + // TODO: remove & {url: string} + const payload: _XiorRequestConfig & { url: string } = { + method: method === 'patch' ? method.toUpperCase() : method, + url: path, + ...requestConfig, + }; + + if (headers) { + payload.headers = { + ...payload.headers, + ...headers, + }; + } + + if (requestData) { + const data = needTrim ? trimAndRemoveUndefined(requestData) : requestData; + if (checkMethodHasBody(method)) { + payload.data = data; + if (requestConfig?.params) { + payload.params = requestConfig.params; + } + } else { + payload.params = requestConfig?.params ? { ...requestConfig.params, ...data } : data; + } + } + if (requestData && (apiConfig as any).paramsInUrl) { + payload.url = pathParams(path, requestData, (apiConfig as any).paramsInUrl); + } + + const { data } = await xiorInstance.request(payload); + return data; +} diff --git a/packages/tsdk/package.json b/packages/tsdk/package.json index b1f557b..b561b77 100644 --- a/packages/tsdk/package.json +++ b/packages/tsdk/package.json @@ -1,6 +1,6 @@ { "name": "tsdk", - "version": "0.1.4", + "version": "0.1.5", "description": "Type-safe API development and code share tool for TypeScript projects.", "repository": "tsdk-monorepo/tsdk", "bugs": "https://github.com/tsdk-monorepo/tsdk/issues", @@ -11,7 +11,7 @@ "tsdk": "bin/tsdk.js" }, "scripts": { - "start": "npm run build && npx pnpm --filter server-example sync && npx pnpm --filter server-example build && npx pnpm --filter server-example example", + "start": "npm run build && pnpm --filter server-example sync && pnpm --filter server-example build && pnpm --filter server-example example", "start-publish": "npm run build && npm publish --registry=https://registry.npmjs.org", "build": "rm -rf lib && tsc --project tsconfig.json", "start-website": "cd website && yarn && npm run start", @@ -30,6 +30,8 @@ "TypeScript", "Share Code", "APIs", + "typesafe API", + "type-safe API", "typeorm", "zod", "express", @@ -39,7 +41,10 @@ "express", "ws", "socket.io", - "cli" + "cli", + "axois", + "fetch", + "xior" ], "dependencies": { "chalk": "4.1.2", @@ -52,7 +57,7 @@ "@configs/ts-config": "workspace:*", "@types/fs-extra": "^11.0.4", "@types/webpack-node-externals": "^3.0.0", - "webpack": "^5.89.0", + "webpack": "^5.90.1", "webpack-node-externals": "^3.0.0" }, "eslintConfig": { diff --git a/packages/tsdk/src/sync-files.ts b/packages/tsdk/src/sync-files.ts index ae6a670..09337f7 100644 --- a/packages/tsdk/src/sync-files.ts +++ b/packages/tsdk/src/sync-files.ts @@ -102,9 +102,9 @@ async function reconfigPkg() { } const dataHookLib = config.dataHookLib?.toLowerCase(); if (dataHookLib === 'swr') { - pkgContent.dependencies.swr = '^2.2.4'; + pkgContent.dependencies.swr = '^2.2.5'; } else if (dataHookLib === 'reactquery') { - pkgContent.dependencies['@tanstack/react-query'] = '^5.14.0'; + pkgContent.dependencies['@tanstack/react-query'] = '^5.22.2'; } if (config.dependencies) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6890bf3..a777bc6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -136,8 +136,8 @@ importers: specifier: ^0.19.6 version: 0.19.6(react-dom@18.2.0)(react@18.2.0) socket.io-client: - specifier: ^4.7.2 - version: 4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + specifier: ^4.7.4 + version: 4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3) devDependencies: '@babel/core': specifier: ^7.22.9 @@ -188,8 +188,8 @@ importers: specifier: ^4.24.3 version: 4.24.3 hono: - specifier: ^3.10.2 - version: 3.10.2 + specifier: ^4.0.4 + version: 4.0.4 i18next: specifier: ^23.7.13 version: 23.7.13 @@ -203,8 +203,8 @@ importers: specifier: ^0.1.13 version: 0.1.13 socket.io: - specifier: ^4.7.2 - version: 4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + specifier: ^4.7.4 + version: 4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3) tsdk-server-adapters: specifier: workspace:* version: link:../../packages/tsdk-server-adapters @@ -234,8 +234,8 @@ importers: specifier: workspace:* version: link:../../configs/ts-config '@nestjs/cli': - specifier: ^10.2.1 - version: 10.2.1 + specifier: ^10.3.2 + version: 10.3.2 '@types/express': specifier: ^4.17.17 version: 4.17.17 @@ -243,8 +243,8 @@ importers: specifier: ^8.5.5 version: 8.5.5 socket.io-client: - specifier: ^4.7.2 - version: 4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + specifier: ^4.7.4 + version: 4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3) tsdk: specifier: workspace:* version: link:../../packages/tsdk @@ -252,11 +252,11 @@ importers: examples/server/packages/fe-sdk-demo: dependencies: '@tanstack/react-query': - specifier: ^5.14.0 - version: 5.14.2(react@18.2.0) + specifier: ^5.22.2 + version: 5.22.2(react@18.2.0) axios: - specifier: 1.6.1 - version: 1.6.1 + specifier: ^1.6.7 + version: 1.6.7 change-case: specifier: ^4.1.2 version: 4.1.2 @@ -270,8 +270,11 @@ importers: specifier: ^0.26.3 version: 0.26.3 socket.io-client: - specifier: ^4.7.2 - version: 4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + specifier: ^4.7.4 + version: 4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3) + xior: + specifier: ^0.0.3 + version: 0.0.3 zod: specifier: ^3 version: 3.22.4 @@ -289,8 +292,8 @@ importers: examples/web: dependencies: axios: - specifier: 1.6.1 - version: 1.6.1 + specifier: ^1.6.7 + version: 1.6.7 fe-sdk-demo: specifier: workspace:* version: link:../server/packages/fe-sdk-demo @@ -307,8 +310,11 @@ importers: specifier: ^0.19.6 version: 0.19.6(react-dom@18.2.0)(react@18.2.0) socket.io-client: - specifier: ^4.7.2 - version: 4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + specifier: ^4.7.4 + version: 4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3) + xior: + specifier: ^0.0.3 + version: 0.0.3 devDependencies: '@configs/eslint-config': specifier: workspace:* @@ -338,11 +344,11 @@ importers: specifier: ^4.24.3 version: 4.24.3 hono: - specifier: ^3.10.2 - version: 3.10.2 + specifier: ^4.0.4 + version: 4.0.4 tsdk-server-adapters: specifier: ^0.1.1 - version: 0.1.4(express@4.18.2)(fastify@4.24.3)(hono@3.10.2)(zod@3.22.4) + version: 0.1.4(express@4.18.2)(fastify@4.24.3)(hono@4.0.4)(zod@3.22.4) zod: specifier: ^3.22.4 version: 3.22.4 @@ -357,8 +363,8 @@ importers: specifier: workspace:* version: link:../../configs/ts-config '@nestjs/cli': - specifier: ^10.2.1 - version: 10.2.1 + specifier: ^10.3.2 + version: 10.3.2 '@types/express': specifier: ^4.17.17 version: 4.17.17 @@ -397,8 +403,8 @@ importers: specifier: ^3.0.0 version: 3.0.0 webpack: - specifier: ^5.89.0 - version: 5.89.0 + specifier: ^5.90.1 + version: 5.90.1 webpack-node-externals: specifier: ^3.0.0 version: 3.0.0 @@ -415,11 +421,11 @@ importers: specifier: ^4.24.3 version: 4.24.3 hono: - specifier: ^3.10.2 - version: 3.10.2 + specifier: ^4.0.4 + version: 4.0.4 socket.io: - specifier: ^4.7.2 - version: 4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + specifier: ^4.7.4 + version: 4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3) zod: specifier: ^3 version: 3.22.4 @@ -440,14 +446,17 @@ importers: packages/tsdk/fe-sdk-template: dependencies: axios: - specifier: 1.6.1 - version: 1.6.1 + specifier: ^1.6.7 + version: 1.6.7 change-case: specifier: ^4.1.2 version: 4.1.2 socket.io-client: - specifier: ^4.7.2 - version: 4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + specifier: ^4.7.4 + version: 4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3) + xior: + specifier: ^0.0.3 + version: 0.0.3 zod: specifier: ^3 version: 3.22.4 @@ -468,16 +477,16 @@ importers: specifier: 13.0.6 version: 13.0.6(react-dom@18.2.0)(react@18.2.0) next-sitemap: - specifier: ^4.2.3 + specifier: 4.2.3 version: 4.2.3(next@13.0.6) next-videos: specifier: ^1.4.1 version: 1.4.1(webpack@4.47.0) nextra: - specifier: latest + specifier: 2.13.2 version: 2.13.2(next@13.0.6)(react-dom@18.2.0)(react@18.2.0) nextra-theme-docs: - specifier: latest + specifier: 2.13.2 version: 2.13.2(next@13.0.6)(nextra@2.13.2)(react-dom@18.2.0)(react@18.2.0) react: specifier: ^18.2.0 @@ -527,7 +536,7 @@ packages: '@jridgewell/gen-mapping': 0.1.1 '@jridgewell/trace-mapping': 0.3.17 - /@angular-devkit/core@16.1.0(chokidar@3.5.3): + /@angular-devkit/core@16.1.0(chokidar@3.6.0): resolution: {integrity: sha512-mrWpuDvttmhrCGcLc68RIXKtTzUhkBTsE5ZZFZNO1+FSC+vO/ZpyCpPd6C+6coM68NfXYjHlms5XF6KbxeGn/Q==} engines: {node: ^16.14.0 || >=18.10.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} peerDependencies: @@ -538,15 +547,15 @@ packages: dependencies: ajv: 8.12.0 ajv-formats: 2.1.1(ajv@8.12.0) - chokidar: 3.5.3 + chokidar: 3.6.0 jsonc-parser: 3.2.0 rxjs: 7.8.1 source-map: 0.7.4 dev: true - /@angular-devkit/core@16.2.8(chokidar@3.5.3): - resolution: {integrity: sha512-PTGozYvh1Bin5lB15PwcXa26Ayd17bWGLS3H8Rs0s+04mUDvfNofmweaX1LgumWWy3nCUTDuwHxX10M3G0wE2g==} - engines: {node: ^16.14.0 || >=18.10.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} + /@angular-devkit/core@17.1.2(chokidar@3.6.0): + resolution: {integrity: sha512-ku+/W/HMCBacSWFppenr9y6Lx8mDuTuQvn1IkTyBLiJOpWnzgVbx9kHDeaDchGa1PwLlJUBBrv27t3qgJOIDPw==} + engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} peerDependencies: chokidar: ^3.5.2 peerDependenciesMeta: @@ -555,33 +564,33 @@ packages: dependencies: ajv: 8.12.0 ajv-formats: 2.1.1(ajv@8.12.0) - chokidar: 3.5.3 + chokidar: 3.6.0 jsonc-parser: 3.2.0 - picomatch: 2.3.1 + picomatch: 3.0.1 rxjs: 7.8.1 source-map: 0.7.4 dev: true - /@angular-devkit/schematics-cli@16.2.8(chokidar@3.5.3): - resolution: {integrity: sha512-EXURJCzWTVYCipiTT4vxQQOrF63asOUDbeOy3OtiSh7EwIUvxm3BPG6hquJqngEnI/N6bA75NJ1fBhU6Hrh7eA==} - engines: {node: ^16.14.0 || >=18.10.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} + /@angular-devkit/schematics-cli@17.1.2(chokidar@3.6.0): + resolution: {integrity: sha512-bvXykYzSST05qFdlgIzUguNOb3z0hCa8HaTwtqdmQo9aFPf+P+/AC56I64t1iTchMjQtf3JrBQhYM25gUdcGbg==} + engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} hasBin: true dependencies: - '@angular-devkit/core': 16.2.8(chokidar@3.5.3) - '@angular-devkit/schematics': 16.2.8(chokidar@3.5.3) + '@angular-devkit/core': 17.1.2(chokidar@3.6.0) + '@angular-devkit/schematics': 17.1.2(chokidar@3.6.0) ansi-colors: 4.1.3 - inquirer: 8.2.4 + inquirer: 9.2.12 symbol-observable: 4.0.0 yargs-parser: 21.1.1 transitivePeerDependencies: - chokidar dev: true - /@angular-devkit/schematics@16.1.0(chokidar@3.5.3): + /@angular-devkit/schematics@16.1.0(chokidar@3.6.0): resolution: {integrity: sha512-LM35PH9DT3eQRSZgrkk2bx1ZQjjVh8BCByTlr37/c+FnF9mNbeBsa1YkxrlsN/CwO+045OwEwRHnkM9Zcx0U/A==} engines: {node: ^16.14.0 || >=18.10.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} dependencies: - '@angular-devkit/core': 16.1.0(chokidar@3.5.3) + '@angular-devkit/core': 16.1.0(chokidar@3.6.0) jsonc-parser: 3.2.0 magic-string: 0.30.0 ora: 5.4.1 @@ -590,13 +599,13 @@ packages: - chokidar dev: true - /@angular-devkit/schematics@16.2.8(chokidar@3.5.3): - resolution: {integrity: sha512-MBiKZOlR9/YMdflALr7/7w/BGAfo/BGTrlkqsIB6rDWV1dYiCgxI+033HsiNssLS6RQyCFx/e7JA2aBBzu9zEg==} - engines: {node: ^16.14.0 || >=18.10.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} + /@angular-devkit/schematics@17.1.2(chokidar@3.6.0): + resolution: {integrity: sha512-8S9RuM8olFN/gwN+mjbuF1CwHX61f0i59EGXz9tXLnKRUTjsRR+8vVMTAmX0dvVAT5fJTG/T69X+HX7FeumdqA==} + engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} dependencies: - '@angular-devkit/core': 16.2.8(chokidar@3.5.3) + '@angular-devkit/core': 17.1.2(chokidar@3.6.0) jsonc-parser: 3.2.0 - magic-string: 0.30.1 + magic-string: 0.30.5 ora: 5.4.1 rxjs: 7.8.1 transitivePeerDependencies: @@ -3183,6 +3192,14 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.3.2 '@jridgewell/trace-mapping': 0.3.17 + dev: false + + /@jridgewell/source-map@0.3.5: + resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} + dependencies: + '@jridgewell/gen-mapping': 0.3.2 + '@jridgewell/trace-mapping': 0.3.22 + dev: true /@jridgewell/sourcemap-codec@1.4.14: resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} @@ -3196,6 +3213,13 @@ packages: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 + /@jridgewell/trace-mapping@0.3.22: + resolution: {integrity: sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==} + dependencies: + '@jridgewell/resolve-uri': 3.1.0 + '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} dependencies: @@ -3203,6 +3227,13 @@ packages: '@jridgewell/sourcemap-codec': 1.4.14 dev: true + /@ljharb/through@2.3.12: + resolution: {integrity: sha512-ajo/heTlG3QgC8EGP6APIejksVAYt4ayz4tqoP3MolFELzcH1x1fzwEYRJTPO0IELutZ5HQ0c26/GqAYy79u3g==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.5 + dev: true + /@mdx-js/mdx@2.3.0: resolution: {integrity: sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==} dependencies: @@ -3353,12 +3384,12 @@ packages: '@napi-rs/simple-git-win32-x64-msvc': 0.1.9 dev: false - /@nestjs/cli@10.2.1: - resolution: {integrity: sha512-CAJAQwmxFZfB3RTvqz/eaXXWpyU+mZ4QSqfBYzjneTsPgF+uyOAW3yQpaLNn9Dfcv39R9UxSuAhayv6yuFd+Jg==} + /@nestjs/cli@10.3.2: + resolution: {integrity: sha512-aWmD1GLluWrbuC4a1Iz/XBk5p74Uj6nIVZj6Ov03JbTfgtWqGFLtXuMetvzMiHxfrHehx/myt2iKAPRhKdZvTg==} engines: {node: '>= 16.14'} hasBin: true peerDependencies: - '@swc/cli': ^0.1.62 + '@swc/cli': ^0.1.62 || ^0.3.0 '@swc/core': ^1.3.62 peerDependenciesMeta: '@swc/cli': @@ -3366,28 +3397,27 @@ packages: '@swc/core': optional: true dependencies: - '@angular-devkit/core': 16.2.8(chokidar@3.5.3) - '@angular-devkit/schematics': 16.2.8(chokidar@3.5.3) - '@angular-devkit/schematics-cli': 16.2.8(chokidar@3.5.3) - '@nestjs/schematics': 10.0.1(chokidar@3.5.3)(typescript@5.2.2) + '@angular-devkit/core': 17.1.2(chokidar@3.6.0) + '@angular-devkit/schematics': 17.1.2(chokidar@3.6.0) + '@angular-devkit/schematics-cli': 17.1.2(chokidar@3.6.0) + '@nestjs/schematics': 10.0.1(chokidar@3.6.0)(typescript@5.3.3) chalk: 4.1.2 - chokidar: 3.5.3 + chokidar: 3.6.0 cli-table3: 0.6.3 commander: 4.1.1 - fork-ts-checker-webpack-plugin: 9.0.2(typescript@5.2.2)(webpack@5.89.0) + fork-ts-checker-webpack-plugin: 9.0.2(typescript@5.3.3)(webpack@5.90.1) glob: 10.3.10 inquirer: 8.2.6 node-emoji: 1.11.0 ora: 5.4.1 - os-name: 4.0.1 rimraf: 4.4.1 shelljs: 0.8.5 source-map-support: 0.5.21 tree-kill: 1.2.2 tsconfig-paths: 4.2.0 tsconfig-paths-webpack-plugin: 4.1.0 - typescript: 5.2.2 - webpack: 5.89.0 + typescript: 5.3.3 + webpack: 5.90.1 webpack-node-externals: 3.0.0 transitivePeerDependencies: - esbuild @@ -3395,7 +3425,7 @@ packages: - webpack-cli dev: true - /@nestjs/schematics@10.0.1(chokidar@3.5.3)(typescript@5.2.2): + /@nestjs/schematics@10.0.1(chokidar@3.6.0)(typescript@5.3.3): resolution: {integrity: sha512-buxpYtSwOmWyf0nUJWJCkCkYITwbOfIEKHTnGS7sDbcfaajrOFXb5pPAGD2E1CUb3C1+NkQIURPKzs0IouZTQg==} peerDependencies: typescript: '>=4.8.2' @@ -3403,12 +3433,12 @@ packages: typescript: optional: true dependencies: - '@angular-devkit/core': 16.1.0(chokidar@3.5.3) - '@angular-devkit/schematics': 16.1.0(chokidar@3.5.3) + '@angular-devkit/core': 16.1.0(chokidar@3.6.0) + '@angular-devkit/schematics': 16.1.0(chokidar@3.6.0) comment-json: 4.2.3 jsonc-parser: 3.2.0 pluralize: 8.0.0 - typescript: 5.2.2 + typescript: 5.3.3 transitivePeerDependencies: - chokidar dev: true @@ -4056,16 +4086,16 @@ packages: tslib: 2.6.2 dev: false - /@tanstack/query-core@5.14.2: - resolution: {integrity: sha512-QmoJvC72sSWs3hgGis8JdmlDvqLfYGWUK4UG6OR9Q6t28JMN9m2FDwKPqoSJ9YVocELCSjMt/FGjEiLfk8000Q==} + /@tanstack/query-core@5.22.2: + resolution: {integrity: sha512-z3PwKFUFACMUqe1eyesCIKg3Jv1mysSrYfrEW5ww5DCDUD4zlpTKBvUDaEjsfZzL3ULrFLDM9yVUxI/fega1Qg==} dev: false - /@tanstack/react-query@5.14.2(react@18.2.0): - resolution: {integrity: sha512-SbOzV7UBW8ED3tOnyn6kqNGscnOAfoxShYlbvaQo/5528mDZKpvrwoL/1du1/ukSC6RMAiKmx95SrYqlwPzWDw==} + /@tanstack/react-query@5.22.2(react@18.2.0): + resolution: {integrity: sha512-TaxJDRzJ8/NWRT4lY2jguKCrNI6MRN+67dELzPjNUlvqzTxGANlMp68l7aC7hG8Bd1uHNxHl7ihv7MT50i/43A==} peerDependencies: react: ^18.0.0 dependencies: - '@tanstack/query-core': 5.14.2 + '@tanstack/query-core': 5.22.2 react: 18.2.0 dev: false @@ -4147,7 +4177,7 @@ packages: /@types/acorn@4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 dev: false /@types/aria-query@5.0.1: @@ -4232,7 +4262,7 @@ packages: resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} dependencies: '@types/eslint': 8.4.6 - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 dev: true /@types/eslint@8.4.6: @@ -4245,11 +4275,15 @@ packages: /@types/estree-jsx@1.0.3: resolution: {integrity: sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 dev: false /@types/estree@1.0.0: resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==} + dev: true + + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} /@types/express-serve-static-core@4.17.33: resolution: {integrity: sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==} @@ -4417,7 +4451,7 @@ packages: resolution: {integrity: sha512-Z3ELJiH0aZjxkoymT2nrGSmCF/CYjiqC0bpv4/DWy9h7e6gP4B2qmKZFHJFermeF0SYURbSw0puddQl9dMMV0w==} dependencies: '@types/node': 18.13.0 - webpack: 5.89.0 + webpack: 5.90.1 transitivePeerDependencies: - '@swc/core' - esbuild @@ -5511,10 +5545,10 @@ packages: - supports-color dev: false - /axios@1.6.1: - resolution: {integrity: sha512-vfBmhDpKafglh0EldBEbVuoe7DyAavGSLWhuSm5ZSEKQnHhBf0xAAwybbNH1IkrJNGnS/VG4I5yxig1pCEXE4g==} + /axios@1.6.7: + resolution: {integrity: sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==} dependencies: - follow-redirects: 1.15.2 + follow-redirects: 1.15.5 form-data: 4.0.0 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -5731,7 +5765,7 @@ packages: dependencies: buffer: 5.7.1 inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 /bluebird@3.7.2: resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} @@ -6062,6 +6096,14 @@ packages: function-bind: 1.1.1 get-intrinsic: 1.1.3 + /call-bind@1.0.5: + resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} + dependencies: + function-bind: 1.1.2 + get-intrinsic: 1.2.3 + set-function-length: 1.2.0 + dev: true + /caller-callsite@2.0.0: resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==} engines: {node: '>=4'} @@ -6246,6 +6288,21 @@ packages: readdirp: 3.6.0 optionalDependencies: fsevents: 2.3.3 + dev: true + + /chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + dependencies: + anymatch: 3.1.2 + braces: 3.0.2 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 /chownr@1.1.4: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} @@ -6348,6 +6405,11 @@ packages: engines: {node: '>= 10'} dev: true + /cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} + dev: true + /client-only@0.0.1: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} dev: false @@ -6683,7 +6745,7 @@ packages: parse-json: 4.0.0 dev: false - /cosmiconfig@8.3.6(typescript@5.2.2): + /cosmiconfig@8.3.6(typescript@5.3.3): resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} engines: {node: '>=14'} peerDependencies: @@ -6696,7 +6758,7 @@ packages: js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 - typescript: 5.2.2 + typescript: 5.3.3 dev: true /create-ecdh@4.0.4: @@ -7282,6 +7344,15 @@ packages: dependencies: clone: 1.0.4 + /define-data-property@1.1.1: + resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.3 + gopd: 1.0.1 + has-property-descriptors: 1.0.1 + dev: true + /define-lazy-prop@2.0.0: resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} engines: {node: '>=8'} @@ -7544,6 +7615,7 @@ packages: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} dependencies: once: 1.4.0 + dev: false /engine.io-client@6.5.2(bufferutil@4.0.7)(utf-8-validate@6.0.3): resolution: {integrity: sha512-CQZqbrpEYnrpGqC07a9dJDz4gePZUgTPMU3NKJPSeQOyw27Tst4Pl3FemKoFGAlHzgZmKjoRmiJvbWfhCXUlIg==} @@ -7683,6 +7755,11 @@ packages: which-typed-array: 1.1.9 dev: false + /es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + dev: true + /es-get-iterator@1.1.3: resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} dependencies: @@ -7779,7 +7856,6 @@ packages: /escape-string-regexp@5.0.0: resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} engines: {node: '>=12'} - dev: false /eslint-config-prettier@8.5.0(eslint@8.45.0): resolution: {integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==} @@ -8085,7 +8161,7 @@ packages: /estree-util-attach-comments@2.1.1: resolution: {integrity: sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 dev: false /estree-util-build-jsx@2.2.2: @@ -8125,7 +8201,7 @@ packages: /estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 dev: false /esutils@2.0.3: @@ -8191,21 +8267,6 @@ packages: strip-eof: 1.0.0 dev: false - /execa@4.1.0: - resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==} - engines: {node: '>=10'} - dependencies: - cross-spawn: 7.0.3 - get-stream: 5.2.0 - human-signals: 1.1.1 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.7 - strip-final-newline: 2.0.0 - dev: true - /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -8714,6 +8775,14 @@ packages: escape-string-regexp: 1.0.5 dev: true + /figures@5.0.0: + resolution: {integrity: sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==} + engines: {node: '>=14'} + dependencies: + escape-string-regexp: 5.0.0 + is-unicode-supported: 1.3.0 + dev: true + /file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -8879,8 +8948,8 @@ packages: resolution: {integrity: sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==} dev: false - /follow-redirects@1.15.2: - resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} + /follow-redirects@1.15.5: + resolution: {integrity: sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -8911,7 +8980,7 @@ packages: signal-exit: 4.1.0 dev: true - /fork-ts-checker-webpack-plugin@9.0.2(typescript@5.2.2)(webpack@5.89.0): + /fork-ts-checker-webpack-plugin@9.0.2(typescript@5.3.3)(webpack@5.90.1): resolution: {integrity: sha512-Uochze2R8peoN1XqlSi/rGUkDQpRogtLFocP9+PGu68zk1BDAKXfdeCdyVZpgTk8V8WFVQXdEz426VKjXLO1Gg==} engines: {node: '>=12.13.0', yarn: '>=1.0.0'} peerDependencies: @@ -8921,10 +8990,10 @@ packages: typescript: optional: true dependencies: - '@babel/code-frame': 7.22.5 + '@babel/code-frame': 7.23.5 chalk: 4.1.2 - chokidar: 3.5.3 - cosmiconfig: 8.3.6(typescript@5.2.2) + chokidar: 3.6.0 + cosmiconfig: 8.3.6(typescript@5.3.3) deepmerge: 4.3.1 fs-extra: 10.1.0 memfs: 3.4.7 @@ -8933,8 +9002,8 @@ packages: schema-utils: 3.3.0 semver: 7.5.4 tapable: 2.2.1 - typescript: 5.2.2 - webpack: 5.89.0 + typescript: 5.3.3 + webpack: 5.90.1 dev: true /form-data@3.0.1: @@ -9125,6 +9194,17 @@ packages: has: 1.0.3 has-symbols: 1.0.3 + /get-intrinsic@1.2.3: + resolution: {integrity: sha512-JIcZczvcMVE7AUOP+X72bh8HqHBRxFdz5PDHYtNG/lE3yk9b3KZBJlwFcTyPYjg3L4RLLmZJzvjxhaZVapxFrQ==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + has-proto: 1.0.1 + has-symbols: 1.0.3 + hasown: 2.0.0 + dev: true + /get-port@3.2.0: resolution: {integrity: sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==} engines: {node: '>=4'} @@ -9142,13 +9222,6 @@ packages: pump: 3.0.0 dev: false - /get-stream@5.2.0: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - dependencies: - pump: 3.0.0 - dev: true - /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -9293,7 +9366,7 @@ packages: fs.realpath: 1.0.0 minimatch: 7.4.2 minipass: 4.2.5 - path-scurry: 1.6.1 + path-scurry: 1.10.1 dev: true /globals@11.12.0: @@ -9393,10 +9466,15 @@ packages: dependencies: get-intrinsic: 1.2.0 + /has-property-descriptors@1.0.1: + resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==} + dependencies: + get-intrinsic: 1.2.3 + dev: true + /has-proto@1.0.1: resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} engines: {node: '>= 0.4'} - dev: false /has-symbols@1.0.3: resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} @@ -9550,7 +9628,7 @@ packages: /hast-util-to-estree@2.3.3: resolution: {integrity: sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 '@types/estree-jsx': 1.0.3 '@types/hast': 2.3.8 '@types/unist': 2.0.6 @@ -9649,8 +9727,8 @@ packages: minimalistic-crypto-utils: 1.0.1 dev: false - /hono@3.10.2: - resolution: {integrity: sha512-QwJLjWs3e+nZ3b5nQrrdJpYCJqiTK744jeYhX7yhZdxwcQ3KIohBfzI2dA8gSF6HEZkmFUdiKL1BelJ8utIm4w==} + /hono@4.0.4: + resolution: {integrity: sha512-WIwMh3b9TrtcdGpJ9ljA74bK/njL6f9S0nH3eBIKVAudnuHDqyVi4k0P8etD9HVU3xu74a9KBg3xA6UlXGEIZg==} engines: {node: '>=16.0.0'} dev: false @@ -9717,11 +9795,6 @@ packages: - supports-color dev: true - /human-signals@1.1.1: - resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} - engines: {node: '>=8.12.0'} - dev: true - /human-signals@2.1.0: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} @@ -9846,8 +9919,8 @@ packages: css-in-js-utils: 2.0.1 dev: false - /inquirer@8.2.4: - resolution: {integrity: sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==} + /inquirer@8.2.6: + resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==} engines: {node: '>=12.0.0'} dependencies: ansi-escapes: 4.3.2 @@ -9864,27 +9937,27 @@ packages: string-width: 4.2.3 strip-ansi: 6.0.1 through: 2.3.8 - wrap-ansi: 7.0.0 + wrap-ansi: 6.2.0 dev: true - /inquirer@8.2.6: - resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==} - engines: {node: '>=12.0.0'} + /inquirer@9.2.12: + resolution: {integrity: sha512-mg3Fh9g2zfuVWJn6lhST0O7x4n03k7G8Tx5nvikJkbq8/CK47WDVm+UznF0G6s5Zi0KcyUisr6DU8T67N5U+1Q==} + engines: {node: '>=14.18.0'} dependencies: + '@ljharb/through': 2.3.12 ansi-escapes: 4.3.2 - chalk: 4.1.2 + chalk: 5.3.0 cli-cursor: 3.1.0 - cli-width: 3.0.0 + cli-width: 4.1.0 external-editor: 3.1.0 - figures: 3.2.0 + figures: 5.0.0 lodash: 4.17.21 - mute-stream: 0.0.8 + mute-stream: 1.0.0 ora: 5.4.1 - run-async: 2.4.1 + run-async: 3.0.0 rxjs: 7.8.1 string-width: 4.2.3 strip-ansi: 6.0.1 - through: 2.3.8 wrap-ansi: 6.2.0 dev: true @@ -10226,7 +10299,7 @@ packages: /is-reference@3.0.2: resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 dev: false /is-regex@1.1.4: @@ -10264,6 +10337,7 @@ packages: /is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} + dev: false /is-stream@3.0.0: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} @@ -10296,6 +10370,11 @@ packages: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} + /is-unicode-supported@1.3.0: + resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} + engines: {node: '>=12'} + dev: true + /is-valid-path@0.1.1: resolution: {integrity: sha512-+kwPrVDu9Ms03L90Qaml+79+6DZHqHyRoANI6IsZJ/g8frhnfchDOBCa0RbQ6/kdHt5CS5OeIEyrYznNuVN+8A==} engines: {node: '>=0.10.0'} @@ -11024,11 +11103,6 @@ packages: dependencies: yallist: 4.0.0 - /lru-cache@7.18.3: - resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} - engines: {node: '>=12'} - dev: true - /lunr@2.3.9: resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} dev: true @@ -11038,11 +11112,6 @@ packages: hasBin: true dev: true - /macos-release@2.5.0: - resolution: {integrity: sha512-EIgv+QZ9r+814gjJj0Bt5vSLJLzswGmSUbUpbi9AIr/fsN2IWFBl2NucV9PAiek+U1STK468tEkxmVYUtuAN3g==} - engines: {node: '>=6'} - dev: true - /magic-string@0.30.0: resolution: {integrity: sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==} engines: {node: '>=12'} @@ -11050,13 +11119,6 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /magic-string@0.30.1: - resolution: {integrity: sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==} - engines: {node: '>=12'} - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - dev: true - /magic-string@0.30.5: resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} engines: {node: '>=12'} @@ -11750,7 +11812,7 @@ packages: engines: {node: '>=16'} hasBin: true dependencies: - '@babel/code-frame': 7.22.5 + '@babel/code-frame': 7.23.5 '@babel/core': 7.22.9 '@babel/generator': 7.22.9 '@babel/parser': 7.22.7 @@ -11913,7 +11975,7 @@ packages: /micromark-extension-mdx-expression@1.0.8: resolution: {integrity: sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 micromark-factory-mdx-expression: 1.0.9 micromark-factory-space: 1.1.0 micromark-util-character: 1.2.0 @@ -11927,7 +11989,7 @@ packages: resolution: {integrity: sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 estree-util-is-identifier-name: 2.1.0 micromark-factory-mdx-expression: 1.0.9 micromark-factory-space: 1.1.0 @@ -11947,7 +12009,7 @@ packages: /micromark-extension-mdxjs-esm@1.0.5: resolution: {integrity: sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 micromark-core-commonmark: 1.1.0 micromark-util-character: 1.2.0 micromark-util-events-to-acorn: 1.2.3 @@ -11991,7 +12053,7 @@ packages: /micromark-factory-mdx-expression@1.0.9: resolution: {integrity: sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 micromark-util-character: 1.2.0 micromark-util-events-to-acorn: 1.2.3 micromark-util-symbol: 1.1.0 @@ -12088,7 +12150,7 @@ packages: resolution: {integrity: sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 '@types/unist': 2.0.6 estree-util-visit: 1.2.1 micromark-util-symbol: 1.1.0 @@ -12300,7 +12362,6 @@ packages: /minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - dev: false /minipass-collect@1.0.2: resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==} @@ -12466,6 +12527,11 @@ packages: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} dev: true + /mute-stream@1.0.0: + resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + /mv@2.1.1: resolution: {integrity: sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg==} engines: {node: '>=0.8.0'} @@ -12908,6 +12974,7 @@ packages: engines: {node: '>=8'} dependencies: path-key: 3.1.1 + dev: false /npm-run-path@5.1.0: resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} @@ -13136,14 +13203,6 @@ packages: engines: {node: '>=0.10.0'} dev: false - /os-name@4.0.1: - resolution: {integrity: sha512-xl9MAoU97MH1Xt5K9ERft2YfCAoaO6msy1OBA0ozxEC0x0TmIoE6K3QvgJMMZA9yKGLmHXNY/YZoDbiGDj4zYw==} - engines: {node: '>=10'} - dependencies: - macos-release: 2.5.0 - windows-release: 4.0.0 - dev: true - /os-tmpdir@1.0.2: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} @@ -13269,7 +13328,7 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.22.5 + '@babel/code-frame': 7.23.5 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -13399,14 +13458,6 @@ packages: minipass: 7.0.4 dev: true - /path-scurry@1.6.1: - resolution: {integrity: sha512-OW+5s+7cw6253Q4E+8qQ/u1fVvcJQCJo/VFD8pje+dbJCF1n5ZRMV2AEHbGp+5Q7jxQIYJxkHopnj6nzdGeZLA==} - engines: {node: '>=14'} - dependencies: - lru-cache: 7.18.3 - minipass: 4.2.5 - dev: true - /path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} dev: false @@ -13437,7 +13488,7 @@ packages: /periscopic@3.1.0: resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 estree-walker: 3.0.3 is-reference: 3.0.2 dev: false @@ -13449,6 +13500,11 @@ packages: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} + /picomatch@3.0.1: + resolution: {integrity: sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==} + engines: {node: '>=10'} + dev: true + /pidtree@0.6.0: resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} engines: {node: '>=0.10'} @@ -13827,6 +13883,7 @@ packages: dependencies: end-of-stream: 1.4.4 once: 1.4.0 + dev: false /pumpify@1.5.1: resolution: {integrity: sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==} @@ -14086,6 +14143,7 @@ packages: inherits: 2.0.4 string_decoder: 1.3.0 util-deprecate: 1.0.2 + dev: false /readable-stream@3.6.2: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} @@ -14094,7 +14152,6 @@ packages: inherits: 2.0.4 string_decoder: 1.3.0 util-deprecate: 1.0.2 - dev: false /readable-stream@4.4.2: resolution: {integrity: sha512-Lk/fICSyIhodxy1IDK2HazkeGjSmezAWX2egdtJnYhtzKEsBPJowlI6F6LPb5tqIQILrMbx22S5o3GuJavPusA==} @@ -14153,7 +14210,7 @@ packages: resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} engines: {node: '>= 0.10'} dependencies: - resolve: 1.22.1 + resolve: 1.22.8 dev: true /reflect-metadata@0.1.13: @@ -14530,6 +14587,11 @@ packages: engines: {node: '>=0.12.0'} dev: true + /run-async@3.0.0: + resolution: {integrity: sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==} + engines: {node: '>=0.12.0'} + dev: true + /run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: @@ -14774,6 +14836,17 @@ packages: resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==} dev: false + /set-function-length@1.2.0: + resolution: {integrity: sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.1 + function-bind: 1.1.2 + get-intrinsic: 1.2.3 + gopd: 1.0.1 + has-property-descriptors: 1.0.1 + dev: true + /set-value@2.0.1: resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==} engines: {node: '>=0.10.0'} @@ -14982,8 +15055,8 @@ packages: - utf-8-validate dev: false - /socket.io-client@4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-vtA0uD4ibrYD793SOIAwlo8cj6haOeMHrGvwPxJsxH7CeIksqJ+3Zc06RvWTIFgiSqx4A3sOnTXpfAEE2Zyz6w==} + /socket.io-client@4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3): + resolution: {integrity: sha512-wh+OkeF0rAVCrABWQBaEjLfb7DVPotMbu0cgWgyR0v6eA4EoVnAwcIeIbcdTE3GT/H3kbdLl7OoH2+asoDRIIg==} engines: {node: '>=10.0.0'} dependencies: '@socket.io/component-emitter': 3.1.0 @@ -15004,8 +15077,8 @@ packages: transitivePeerDependencies: - supports-color - /socket.io@4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-bvKVS29/I5fl2FGLNHuXlQaUH/BlzX1IN6S+NKLNZpBsPZIDH+90eQmCs2Railn4YUiww4SzUedJ6+uzwFnKLw==} + /socket.io@4.7.4(bufferutil@4.0.7)(utf-8-validate@6.0.3): + resolution: {integrity: sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==} engines: {node: '>=10.2.0'} dependencies: accepts: 1.3.8 @@ -15315,6 +15388,7 @@ packages: /strip-final-newline@2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} + dev: false /strip-final-newline@3.0.0: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} @@ -15617,8 +15691,8 @@ packages: worker-farm: 1.7.0 dev: false - /terser-webpack-plugin@5.3.7(webpack@5.89.0): - resolution: {integrity: sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==} + /terser-webpack-plugin@5.3.10(webpack@5.90.1): + resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -15633,12 +15707,12 @@ packages: uglify-js: optional: true dependencies: - '@jridgewell/trace-mapping': 0.3.17 + '@jridgewell/trace-mapping': 0.3.22 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 - terser: 5.16.9 - webpack: 5.89.0 + terser: 5.27.0 + webpack: 5.90.1 dev: true /terser@4.8.1: @@ -15661,6 +15735,18 @@ packages: acorn: 8.10.0 commander: 2.20.3 source-map-support: 0.5.21 + dev: false + + /terser@5.27.0: + resolution: {integrity: sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A==} + engines: {node: '>=10'} + hasBin: true + dependencies: + '@jridgewell/source-map': 0.3.5 + acorn: 8.10.0 + commander: 2.20.3 + source-map-support: 0.5.21 + dev: true /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} @@ -15850,6 +15936,11 @@ packages: engines: {node: '>=6.10'} dev: false + /ts-deepmerge@7.0.0: + resolution: {integrity: sha512-WZ/iAJrKDhdINv1WG6KZIGHrZDar6VfhftG1QJFpVbOYZMYJLJOvZOo1amictRXVdBXZIgBHKswMTXzElngprA==} + engines: {node: '>=14.13.1'} + dev: false + /ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} @@ -15935,11 +16026,11 @@ packages: engines: {node: '>=6'} dependencies: json5: 2.2.3 - minimist: 1.2.6 + minimist: 1.2.8 strip-bom: 3.0.0 dev: true - /tsdk-server-adapters@0.1.4(express@4.18.2)(fastify@4.24.3)(hono@3.10.2)(zod@3.22.4): + /tsdk-server-adapters@0.1.4(express@4.18.2)(fastify@4.24.3)(hono@4.0.4)(zod@3.22.4): resolution: {integrity: sha512-EylE40loVYAOEeD0ULQcZuU44rK8NCfx8IdPJrePLUJXNwK2OX4DcZBE4M8FWVN3pDTbYpkRnM8DGbSneF7LaA==} peerDependencies: express: ^4.18.2 @@ -15960,7 +16051,7 @@ packages: eventemitter3: 4.0.7 express: 4.18.2 fastify: 4.24.3 - hono: 3.10.2 + hono: 4.0.4 zod: 3.22.4 dev: false @@ -16230,6 +16321,12 @@ packages: hasBin: true dev: true + /typescript@5.3.3: + resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} + engines: {node: '>=14.17'} + hasBin: true + dev: true + /ua-parser-js@0.7.31: resolution: {integrity: sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==} dev: false @@ -16822,7 +16919,7 @@ packages: graceful-fs: 4.2.11 neo-async: 2.6.2 optionalDependencies: - chokidar: 3.5.3 + chokidar: 3.6.0 watchpack-chokidar2: 2.0.1 transitivePeerDependencies: - supports-color @@ -16914,8 +17011,8 @@ packages: - supports-color dev: false - /webpack@5.89.0: - resolution: {integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==} + /webpack@5.90.1: + resolution: {integrity: sha512-SstPdlAC5IvgFnhiRok8hqJo/+ArAbNv7rhU4fnWGHNVfN59HSQFaxZDSAL3IFG2YmqxuRs+IU33milSxbPlog==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -16925,13 +17022,13 @@ packages: optional: true dependencies: '@types/eslint-scope': 3.7.4 - '@types/estree': 1.0.0 + '@types/estree': 1.0.5 '@webassemblyjs/ast': 1.11.5 '@webassemblyjs/wasm-edit': 1.11.5 '@webassemblyjs/wasm-parser': 1.11.5 acorn: 8.10.0 acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.21.9 + browserslist: 4.22.1 chrome-trace-event: 1.0.3 enhanced-resolve: 5.15.0 es-module-lexer: 1.2.1 @@ -16945,7 +17042,7 @@ packages: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.7(webpack@5.89.0) + terser-webpack-plugin: 5.3.10(webpack@5.90.1) watchpack: 2.4.0 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -17041,13 +17138,6 @@ packages: stackback: 0.0.2 dev: true - /windows-release@4.0.0: - resolution: {integrity: sha512-OxmV4wzDKB1x7AZaZgXMVsdJ1qER1ed83ZrTYd5Bwq2HfJVg3DJS8nqlAG4sMoJ7mu8cuRmLEYyU13BKwctRAg==} - engines: {node: '>=10'} - dependencies: - execa: 4.1.0 - dev: true - /wonka@4.0.15: resolution: {integrity: sha512-U0IUQHKXXn6PFo9nqsHphVCE5m3IntqZNB9Jjn7EB1lrR7YTDY3YWgFvEvwniTzXSvOH/XMzAZaIfJF/LvHYXg==} dev: false @@ -17177,6 +17267,12 @@ packages: uuid: 3.4.0 dev: false + /xior@0.0.3: + resolution: {integrity: sha512-5w3Gm0z7wHKYJZ5NWKavUzluhLrw+EVk8W1rGboAEED/daBx2sldiEB5Dquoruyj1bDy+G2PNaJOvdbhdphNnA==} + dependencies: + ts-deepmerge: 7.0.0 + dev: false + /xml-name-validator@5.0.0: resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} engines: {node: '>=18'} diff --git a/website/package.json b/website/package.json index 506bfa9..9b09e8c 100644 --- a/website/package.json +++ b/website/package.json @@ -21,13 +21,13 @@ "homepage": "https://github.com/tsdk-monorepo/tsdk#readme", "dependencies": { "next": "13.0.6", - "nextra": "latest", - "nextra-theme-docs": "latest", + "nextra": "2.13.2", + "nextra-theme-docs": "2.13.2", "react": "^18.2.0", "react-dom": "^18.2.0", "next-videos": "^1.4.1", "react-wrap-balancer": "^1.1.0", - "next-sitemap": "^4.2.3" + "next-sitemap": "4.2.3" }, "devDependencies": { "@types/node": "^18.13.0", diff --git a/website/pages/docs/guide/nest-cli.en-US.mdx b/website/pages/docs/guide/nest-cli.en-US.mdx index a9bb21d..180a3bf 100644 --- a/website/pages/docs/guide/nest-cli.en-US.mdx +++ b/website/pages/docs/guide/nest-cli.en-US.mdx @@ -83,7 +83,7 @@ pnpm nest build } ``` -### Run certain module +### Run certain module in dev mode ```sh pnpm nest start hello --watch diff --git a/website/pages/docs/guide/tsdk-server-adapters/express-adapter.en-US.mdx b/website/pages/docs/guide/tsdk-server-adapters/express-adapter.en-US.mdx index 380ff8d..96b55fa 100644 --- a/website/pages/docs/guide/tsdk-server-adapters/express-adapter.en-US.mdx +++ b/website/pages/docs/guide/tsdk-server-adapters/express-adapter.en-US.mdx @@ -47,7 +47,20 @@ server.listen(port, () => { }); ``` -## In frontend +## In frontend (Use xior, based on fetch) + +> xior based on the fetch API similar axios: https://www.npmjs.com/package/xior + +```ts +import xior from 'xior'; +import { setHandler, setXiorInstance, xiorHandler } from 'fe-sdk'; + +const xiorInstance = xior.create({ baseURL: `/api/user` }); +setXiorInstance(xiorInstance); +setHandler(xiorHandler); +``` + +## In frontend (Use axios) ```ts import axios from 'axios'; diff --git a/website/pages/docs/guide/tsdk-server-adapters/express-adapter.zh-CN.mdx b/website/pages/docs/guide/tsdk-server-adapters/express-adapter.zh-CN.mdx index 723ce95..509c4da 100644 --- a/website/pages/docs/guide/tsdk-server-adapters/express-adapter.zh-CN.mdx +++ b/website/pages/docs/guide/tsdk-server-adapters/express-adapter.zh-CN.mdx @@ -49,7 +49,20 @@ server.listen(port, () => { }); ``` -## 前端使用 +## 前端使用 xior (基于 fetch) + +> xior 基于 fetch, API 类似 axios,https://www.npmjs.com/package/xior + +```ts +import xior from 'xior'; +import { setHandler, setXiorInstance, xiorHandler } from 'fe-sdk'; + +const xiorInstance = xior.create({ baseURL: `/api/user` }); +setXiorInstance(xiorInstance); +setHandler(xiorHandler); +``` + +## 前端使用 axios ```ts import axios from 'axios'; diff --git a/website/pages/docs/guide/tsdk-server-adapters/fastify-adapter.en-US.mdx b/website/pages/docs/guide/tsdk-server-adapters/fastify-adapter.en-US.mdx index e510340..2548362 100644 --- a/website/pages/docs/guide/tsdk-server-adapters/fastify-adapter.en-US.mdx +++ b/website/pages/docs/guide/tsdk-server-adapters/fastify-adapter.en-US.mdx @@ -1,6 +1,5 @@ # Fastify adapter - ## In backend ```ts copy @@ -61,7 +60,33 @@ const port = 3000; })(); ``` -## In frontend +## In frontend (Use xior, based on fetch) + +> xior based on the fetch API similar axios: https://www.npmjs.com/package/xior + +```ts +import xior from 'xior'; +import { setHandler, setXiorInstance, xiorHandler } from 'fe-sdk'; + +const xiorInstance = xior.create({ baseURL: `/api/user` }); +setXiorInstance(xiorInstance); +setHandler(xiorHandler); +``` + +## In frontend (Use xior, based on fetch) + +> xior based on the fetch API similar axios: https://www.npmjs.com/package/xior + +```ts +import xior from 'xior'; +import { setHandler, setXiorInstance, xiorHandler } from 'fe-sdk'; + +const xiorInstance = xior.create({ baseURL: `/api/user` }); +setXiorInstance(xiorInstance); +setHandler(xiorHandler); +``` + +## In frontend (Use axios) ```ts import axios from 'axios'; diff --git a/website/pages/docs/guide/tsdk-server-adapters/fastify-adapter.zh-CN.mdx b/website/pages/docs/guide/tsdk-server-adapters/fastify-adapter.zh-CN.mdx index 3b0c4c7..8f3d9b0 100644 --- a/website/pages/docs/guide/tsdk-server-adapters/fastify-adapter.zh-CN.mdx +++ b/website/pages/docs/guide/tsdk-server-adapters/fastify-adapter.zh-CN.mdx @@ -62,7 +62,21 @@ const port = 3000; })(); ``` -## 前端使用 +## 前端使用 xior(fetch) + +> xior 基于 fetch, API 类似 axios,https://www.npmjs.com/package/xior + + +```ts +import xior from 'xior'; +import { setHandler, setXiorInstance, xiorHandler } from 'fe-sdk'; + +const xiorInstance = xior.create({ baseURL: `/api/user` }); +setXiorInstance(xiorInstance); +setHandler(xiorHandler); +``` + +## 前端使用 (axios) ```ts import axios from 'axios'; diff --git a/website/pages/docs/guide/tsdk-server-adapters/hono-adapter.en-US.mdx b/website/pages/docs/guide/tsdk-server-adapters/hono-adapter.en-US.mdx index f1e147c..41b195d 100644 --- a/website/pages/docs/guide/tsdk-server-adapters/hono-adapter.en-US.mdx +++ b/website/pages/docs/guide/tsdk-server-adapters/hono-adapter.en-US.mdx @@ -2,7 +2,6 @@ import { Callout } from 'nextra/components'; # Hono adapter - ## In backend ```ts copy @@ -49,9 +48,22 @@ serve({ console.log(`Hono server running at http://localhost:${port}`); ``` -## In frontend +## In frontend (Use xior, based on fetch) + +> xior based on the fetch API similar axios: https://www.npmjs.com/package/xior + +```ts +import xior from 'xior'; +import { setHandler, setXiorInstance, xiorHandler } from 'fe-sdk'; + +const xiorInstance = xior.create({ baseURL: `/api/user` }); +setXiorInstance(xiorInstance); +setHandler(xiorHandler); +``` + +## In frontend (Use axios) -Hono 与 Express 都是 http 协议的 web 框架,所以使用方式一致。 +Hono and Express are web framework based on HTTP protocol ```ts import axios from 'axios'; diff --git a/website/pages/docs/guide/tsdk-server-adapters/hono-adapter.zh-CN.mdx b/website/pages/docs/guide/tsdk-server-adapters/hono-adapter.zh-CN.mdx index 2a8f881..f201e88 100644 --- a/website/pages/docs/guide/tsdk-server-adapters/hono-adapter.zh-CN.mdx +++ b/website/pages/docs/guide/tsdk-server-adapters/hono-adapter.zh-CN.mdx @@ -50,7 +50,23 @@ serve({ console.log(`Hono server running at http://localhost:${port}`); ``` -## 前端使用 +## 前端使用 xior(基于 fetch) + +> xior 基于 fetch, API 类似 axios, https://www.npmjs.com/package/xior + + +Hono 与 Express 都是 http 协议的 web 框架,所以使用方式一致。 + +```ts +import xior from 'xior'; +import { setHandler, setXiorInstance, xiorHandler } from 'fe-sdk'; + +const xiorInstance = xior.create({ baseURL: `/api/user` }); +setXiorInstance(xiorInstance); +setHandler(xiorHandler); +``` + +## 前端使用 axios Hono 与 Express 都是 http 协议的 web 框架,所以使用方式一致。 diff --git a/website/pages/docs/guide/tsdk.config.en-US.mdx b/website/pages/docs/guide/tsdk.config.en-US.mdx index 4ad846f..783f405 100644 --- a/website/pages/docs/guide/tsdk.config.en-US.mdx +++ b/website/pages/docs/guide/tsdk.config.en-US.mdx @@ -28,7 +28,7 @@ module.exports = { - `shareExt` - shared file extension name, default is `*.shared.ts` - `sharedDirs` - shared dir, default is `["./src/shared"]` - `monorepoRoot` - monorepo root folder, default is `./` -- `dataHookLib` - `SWR` | `ReactQuery`,Generate `SWR` or `React Query` hooks;dependencies version: `swr@^2.2.4`; `@tanstack/react-query@^5.10.0` +- `dataHookLib` - `SWR` | `ReactQuery`,Generate `SWR` or `React Query` hooks;dependencies version: `swr@^2.2.5`; `@tanstack/react-query@^5.10.0` - `dependencies` - custom dependencies,will combine to `fe-sdk/package.json ` dependencies. This can custom dependencies and override fe-sdk's default version - `devDependencies` - custom devDependencies. @@ -66,7 +66,7 @@ module.exports = { ### dataHookLib -`dataHookLib` - `SWR` | `ReactQuery`; Generate `SWR` or `React Query` hooks;dependencies version: `swr@^2.2.4`; `@tanstack/react-query@^5.10.0` +`dataHookLib` - `SWR` | `ReactQuery`; Generate `SWR` or `React Query` hooks;dependencies version: `swr@^2.2.5`; `@tanstack/react-query@^5.10.0` ### dependencies diff --git a/website/pages/docs/quick-start/hello-world-api.en-US.mdx b/website/pages/docs/quick-start/hello-world-api.en-US.mdx index de21d77..f45e69a 100644 --- a/website/pages/docs/quick-start/hello-world-api.en-US.mdx +++ b/website/pages/docs/quick-start/hello-world-api.en-US.mdx @@ -159,8 +159,8 @@ server.listen(port, () => { import { Callout } from 'nextra/components'; - 别慌!接口配置可以通过 tsdk 内置的代码片段 Snippet Code 快速生成!! - [查看说明](../guide/tsdk-snippets) + Don't panic! You can use built-in snippets to generate code quickly [Check + here](../guide/tsdk-snippets) ```ts filename="server/src/Hello.apiconf.ts" copy diff --git a/website/pages/docs/quick-start/swr.en-US.mdx b/website/pages/docs/quick-start/swr.en-US.mdx index ea1c833..5ff2002 100644 --- a/website/pages/docs/quick-start/swr.en-US.mdx +++ b/website/pages/docs/quick-start/swr.en-US.mdx @@ -31,7 +31,7 @@ Add **swr** to **next-app/package.json**: }, "dependencies": { ... - "swr": "^2.2.4" + "swr": "^2.2.5" }, ... } diff --git a/website/pages/docs/quick-start/swr.zh-CN.mdx b/website/pages/docs/quick-start/swr.zh-CN.mdx index 586f216..d0436c5 100644 --- a/website/pages/docs/quick-start/swr.zh-CN.mdx +++ b/website/pages/docs/quick-start/swr.zh-CN.mdx @@ -31,7 +31,7 @@ import { Callout } from 'nextra/components'; }, "dependencies": { ... - "swr": "^2.2.4" + "swr": "^2.2.5" }, ... }