refactor: project tsconfig & abstract infra type (#2721)

(cherry picked from commit 1ad2e629ac)
This commit is contained in:
Himself65
2023-06-08 12:41:47 +08:00
committed by himself65
parent 3d0da0a21f
commit 5f634eed21
14 changed files with 149 additions and 207 deletions

View File

@@ -4,10 +4,10 @@ import type {
DialogHandlerManager, DialogHandlerManager,
ExportHandlerManager, ExportHandlerManager,
UIHandlerManager, UIHandlerManager,
UnwrapManagerHandlerToServerSide,
UpdaterHandlerManager, UpdaterHandlerManager,
WorkspaceHandlerManager, WorkspaceHandlerManager,
} from '@toeverything/infra'; } from '@toeverything/infra';
import type { HandlerManager, PrimitiveHandlers } from '@toeverything/infra';
import { ipcMain } from 'electron'; import { ipcMain } from 'electron';
import { dbHandlers } from './db'; import { dbHandlers } from './db';
@@ -27,24 +27,35 @@ export const debugHandlers = {
}, },
}; };
type UnwrapManagerHandler<
Manager extends HandlerManager<string, Record<string, PrimitiveHandlers>>
> = {
[K in keyof Manager['handlers']]: Manager['handlers'][K] extends (
...args: infer Args
) => Promise<infer R>
? (event: Electron.IpcMainInvokeEvent, ...args: Args) => Promise<R>
: never;
};
type AllHandlers = { type AllHandlers = {
db: UnwrapManagerHandler<DBHandlerManager>; db: UnwrapManagerHandlerToServerSide<
debug: UnwrapManagerHandler<DebugHandlerManager>; Electron.IpcMainInvokeEvent,
dialog: UnwrapManagerHandler<DialogHandlerManager>; DBHandlerManager
export: UnwrapManagerHandler<ExportHandlerManager>; >;
ui: UnwrapManagerHandler<UIHandlerManager>; debug: UnwrapManagerHandlerToServerSide<
updater: UnwrapManagerHandler<UpdaterHandlerManager>; Electron.IpcMainInvokeEvent,
workspace: UnwrapManagerHandler<WorkspaceHandlerManager>; DebugHandlerManager
>;
dialog: UnwrapManagerHandlerToServerSide<
Electron.IpcMainInvokeEvent,
DialogHandlerManager
>;
export: UnwrapManagerHandlerToServerSide<
Electron.IpcMainInvokeEvent,
ExportHandlerManager
>;
ui: UnwrapManagerHandlerToServerSide<
Electron.IpcMainInvokeEvent,
UIHandlerManager
>;
updater: UnwrapManagerHandlerToServerSide<
Electron.IpcMainInvokeEvent,
UpdaterHandlerManager
>;
workspace: UnwrapManagerHandlerToServerSide<
Electron.IpcMainInvokeEvent,
WorkspaceHandlerManager
>;
}; };
// Note: all of these handlers will be the single-source-of-truth for the apis exposed to the renderer process // Note: all of these handlers will be the single-source-of-truth for the apis exposed to the renderer process

View File

@@ -39,7 +39,7 @@
"@types/fs-extra": "^11.0.1", "@types/fs-extra": "^11.0.1",
"@types/uuid": "^9.0.1", "@types/uuid": "^9.0.1",
"cross-env": "7.0.3", "cross-env": "7.0.3",
"electron": "25.0.1", "electron": "=25.0.1",
"electron-log": "^5.0.0-beta.24", "electron-log": "^5.0.0-beta.24",
"electron-squirrel-startup": "1.0.0", "electron-squirrel-startup": "1.0.0",
"electron-window-state": "^5.0.3", "electron-window-state": "^5.0.3",

View File

@@ -1,10 +1,11 @@
{ {
"extends": "../../../tsconfig.json", "extends": "../../../tsconfig.json",
"compilerOptions": { "compilerOptions": {
"outDir": "./lib",
"baseUrl": ".", "baseUrl": ".",
"noEmit": true,
"target": "ESNext" "target": "ESNext"
}, },
"references": [{ "path": "../../../tests/kit" }], "references": [{ "path": "../../../tests/kit" }],
"include": ["**.spec.ts", "**.test.ts"] "include": ["**.spec.ts", "**.test.ts", "fixture.ts"],
"exclude": ["lib"]
} }

View File

@@ -11,20 +11,19 @@
"outDir": "dist", "outDir": "dist",
"moduleResolution": "node", "moduleResolution": "node",
"resolveJsonModule": true, "resolveJsonModule": true,
"noImplicitOverride": true, "noImplicitOverride": true
"noEmit": false
}, },
"include": ["**/*.ts", "**/*.tsx"], "include": ["./layers"],
"exclude": ["node_modules", "out", "dist"], "exclude": ["node_modules", "out", "dist"],
"references": [ "references": [
{ {
"path": "./tsconfig.node.json" "path": "./tsconfig.node.json"
}, },
{ {
"path": "../../packages/native" "path": "./tests/tsconfig.json"
}, },
{ {
"path": "../../packages/env" "path": "../../packages/native"
}, },
{ {
"path": "../../packages/infra" "path": "../../packages/infra"

View File

@@ -17,16 +17,15 @@
"incremental": true, "incremental": true,
"experimentalDecorators": true "experimentalDecorators": true
}, },
"include": [ "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "src/types/types.d.ts"],
"next-env.d.ts",
"**/*.ts",
"**/*.tsx",
"src/types/types.d.ts",
"../../packages/graphql",
"../electron/layers"
],
"exclude": ["node_modules"], "exclude": ["node_modules"],
"references": [ "references": [
{
"path": "../../packages/plugin-infra"
},
{
"path": "../../packages/infra"
},
{ {
"path": "../../packages/env" "path": "../../packages/env"
}, },
@@ -44,6 +43,17 @@
}, },
{ {
"path": "../../packages/hooks" "path": "../../packages/hooks"
},
{
"path": "../../packages/graphql"
},
// Plugins
{
"path": "../../plugins/bookmark-block"
},
{
"path": "../../plugins/copilot"
} }
] ]
} }

View File

@@ -75,7 +75,6 @@
"eslint-plugin-unicorn": "^47.0.0", "eslint-plugin-unicorn": "^47.0.0",
"eslint-plugin-unused-imports": "^2.0.0", "eslint-plugin-unused-imports": "^2.0.0",
"fake-indexeddb": "4.0.1", "fake-indexeddb": "4.0.1",
"got": "^13.0.0",
"happy-dom": "^9.20.3", "happy-dom": "^9.20.3",
"husky": "^8.0.3", "husky": "^8.0.3",
"lint-staged": "^13.2.2", "lint-staged": "^13.2.2",
@@ -98,8 +97,9 @@
"resolutions": { "resolutions": {
"lit": "^2.7.2", "lit": "^2.7.2",
"idb": "^7.1.1", "idb": "^7.1.1",
"@emotion/cache": "^11.10.7" "@emotion/cache": "^11.10.7",
"@types/cacheable-request": "^6.0.2",
"@types/responselike": "^1.0.0"
}, },
"packageManager": "yarn@3.5.0", "packageManager": "yarn@3.5.0"
"stableVersion": "0.5.4"
} }

View File

@@ -5,9 +5,8 @@ import type {
DebugHandlerManager, DebugHandlerManager,
DialogHandlerManager, DialogHandlerManager,
ExportHandlerManager, ExportHandlerManager,
HandlerManager,
PrimitiveHandlers,
UIHandlerManager, UIHandlerManager,
UnwrapManagerHandlerToClientSide,
UpdaterHandlerManager, UpdaterHandlerManager,
WorkspaceHandlerManager, WorkspaceHandlerManager,
} from '@toeverything/infra'; } from '@toeverything/infra';
@@ -16,29 +15,19 @@ import { z } from 'zod';
import { UaHelper } from './ua-helper'; import { UaHelper } from './ua-helper';
type UnwrapManagerHandler<
Manager extends HandlerManager<string, Record<string, PrimitiveHandlers>>
> = {
[K in keyof Manager['handlers']]: Manager['handlers'][K] extends (
...args: infer Args
) => Promise<infer R>
? (...args: Args) => Promise<R>
: never;
};
declare global { declare global {
interface Window { interface Window {
appInfo: { appInfo: {
electron: boolean; electron: boolean;
}; };
apis: { apis: {
db: UnwrapManagerHandler<DBHandlerManager>; db: UnwrapManagerHandlerToClientSide<DBHandlerManager>;
debug: UnwrapManagerHandler<DebugHandlerManager>; debug: UnwrapManagerHandlerToClientSide<DebugHandlerManager>;
dialog: UnwrapManagerHandler<DialogHandlerManager>; dialog: UnwrapManagerHandlerToClientSide<DialogHandlerManager>;
export: UnwrapManagerHandler<ExportHandlerManager>; export: UnwrapManagerHandlerToClientSide<ExportHandlerManager>;
ui: UnwrapManagerHandler<UIHandlerManager>; ui: UnwrapManagerHandlerToClientSide<UIHandlerManager>;
updater: UnwrapManagerHandler<UpdaterHandlerManager>; updater: UnwrapManagerHandlerToClientSide<UpdaterHandlerManager>;
workspace: UnwrapManagerHandler<WorkspaceHandlerManager>; workspace: UnwrapManagerHandlerToClientSide<WorkspaceHandlerManager>;
}; };
events: any; events: any;
} }

View File

@@ -103,3 +103,27 @@ export abstract class WorkspaceHandlerManager extends HandlerManager<
'workspace', 'workspace',
WorkspaceHandlers WorkspaceHandlers
> {} > {}
export type UnwrapManagerHandlerToServerSide<
ElectronEvent extends {
frameId: number;
processId: number;
},
Manager extends HandlerManager<string, Record<string, PrimitiveHandlers>>
> = {
[K in keyof Manager['handlers']]: Manager['handlers'][K] extends (
...args: infer Args
) => Promise<infer R>
? (event: ElectronEvent, ...args: Args) => Promise<R>
: never;
};
export type UnwrapManagerHandlerToClientSide<
Manager extends HandlerManager<string, Record<string, PrimitiveHandlers>>
> = {
[K in keyof Manager['handlers']]: Manager['handlers'][K] extends (
...args: infer Args
) => Promise<infer R>
? (...args: Args) => Promise<R>
: never;
};

View File

@@ -2,7 +2,6 @@
"extends": "../../tsconfig.json", "extends": "../../tsconfig.json",
"include": ["./src"], "include": ["./src"],
"compilerOptions": { "compilerOptions": {
"composite": true,
"noEmit": false, "noEmit": false,
"outDir": "lib" "outDir": "lib"
}, },

View File

@@ -12,10 +12,12 @@
"cheerio": "^1.0.0-rc.12" "cheerio": "^1.0.0-rc.12"
}, },
"devDependencies": { "devDependencies": {
"electron": "=25.0.1",
"react": "18.3.0-canary-16d053d59-20230506", "react": "18.3.0-canary-16d053d59-20230506",
"react-dom": "18.3.0-canary-16d053d59-20230506" "react-dom": "18.3.0-canary-16d053d59-20230506"
}, },
"peerDependencies": { "peerDependencies": {
"electron": "*",
"react": "*", "react": "*",
"react-dom": "*" "react-dom": "*"
}, },

View File

@@ -1,8 +1,19 @@
{ {
"extends": "../../tsconfig.json", "extends": "../../tsconfig.json",
"include": ["./src"],
"compilerOptions": { "compilerOptions": {
"rootDir": "./src", "noEmit": false,
"types": ["electron"] "outDir": "lib"
}, },
"include": ["**.ts", "**.tsx"] "references": [
{
"path": "../../packages/component"
},
{
"path": "../../packages/plugin-infra"
},
{
"path": "../../packages/env"
}
]
} }

View File

@@ -1,18 +1,20 @@
import got from 'got';
const STAGE_HOST = 'https://nightly.affine.pro/'; const STAGE_HOST = 'https://nightly.affine.pro/';
if (['master', 'develop'].includes(process.env.CF_PAGES_BRANCH)) { if (['master', 'develop'].includes(process.env.CF_PAGES_BRANCH)) {
const message = `Daily builds: New deployment of version ${process.env.CF_PAGES_COMMIT_SHA} was deploy: [nightly](${STAGE_HOST}) / [internal](${process.env.CF_PAGES_URL})`; const message = `Daily builds: New deployment of version ${process.env.CF_PAGES_COMMIT_SHA} was deploy: [nightly](${STAGE_HOST}) / [internal](${process.env.CF_PAGES_URL})`;
const url = `https://api.telegram.org/bot${process.env.BOT_TOKEN}/sendMessage`; const url = `https://api.telegram.org/bot${process.env.BOT_TOKEN}/sendMessage`;
got fetch(url, {
.post(url, { method: 'POST',
json: { headers: {
chat_id: process.env.CHAT_ID, 'Content-Type': 'application/json',
text: message, },
parse_mode: 'Markdown', body: JSON.stringify({
disable_notification: true, chat_id: process.env.CHAT_ID,
}, text: message,
}) parse_mode: 'Markdown',
.then(r => console.log(r.body)); disable_notification: true,
}),
})
.then(r => r.json())
.then(console.log);
} }

View File

@@ -7,14 +7,17 @@
"skipLibCheck": true, "skipLibCheck": true,
"strict": true, "strict": true,
"forceConsistentCasingInFileNames": true, "forceConsistentCasingInFileNames": true,
"noEmit": true,
"esModuleInterop": true, "esModuleInterop": true,
"module": "esnext", "module": "esnext",
"moduleResolution": "node", "moduleResolution": "node",
"resolveJsonModule": true, "resolveJsonModule": true,
"isolatedModules": true, "isolatedModules": true,
"jsx": "preserve", "jsx": "preserve",
// Project
"incremental": true, "incremental": true,
"composite": true,
"experimentalDecorators": true, "experimentalDecorators": true,
"emitDecoratorMetadata": true, "emitDecoratorMetadata": true,
"baseUrl": ".", "baseUrl": ".",
@@ -52,11 +55,9 @@
}, },
"include": [], "include": [],
"references": [ "references": [
// Apps
{ {
"path": "./tests" "path": "./apps/electron"
},
{
"path": "./apps/electron/tests"
}, },
{ {
"path": "./apps/web" "path": "./apps/web"
@@ -64,9 +65,21 @@
{ {
"path": "./apps/server" "path": "./apps/server"
}, },
// Top level packages
{ {
"path": "./packages/infra" "path": "./packages/infra"
}, },
{
"path": "./packages/graphql"
},
{
"path": "./packages/debug"
},
// Tests
{
"path": "./tests"
},
{ {
"path": "./packages/component" "path": "./packages/component"
}, },
@@ -79,12 +92,6 @@
{ {
"path": "./packages/env" "path": "./packages/env"
}, },
{
"path": "./packages/graphql"
},
{
"path": "./packages/debug"
},
{ {
"path": "./packages/workspace" "path": "./packages/workspace"
}, },
@@ -105,9 +112,6 @@
}, },
{ {
"path": "./tsconfig.node.json" "path": "./tsconfig.node.json"
},
{
"path": "./apps/electron"
} }
], ],
"files": [], "files": [],

130
yarn.lock
View File

@@ -36,9 +36,11 @@ __metadata:
dependencies: dependencies:
"@toeverything/plugin-infra": "workspace:*" "@toeverything/plugin-infra": "workspace:*"
cheerio: ^1.0.0-rc.12 cheerio: ^1.0.0-rc.12
electron: =25.0.1
react: 18.3.0-canary-16d053d59-20230506 react: 18.3.0-canary-16d053d59-20230506
react-dom: 18.3.0-canary-16d053d59-20230506 react-dom: 18.3.0-canary-16d053d59-20230506
peerDependencies: peerDependencies:
electron: "*"
react: "*" react: "*"
react-dom: "*" react-dom: "*"
languageName: unknown languageName: unknown
@@ -163,7 +165,7 @@ __metadata:
"@types/uuid": ^9.0.1 "@types/uuid": ^9.0.1
cheerio: ^1.0.0-rc.12 cheerio: ^1.0.0-rc.12
cross-env: 7.0.3 cross-env: 7.0.3
electron: 25.0.1 electron: =25.0.1
electron-log: ^5.0.0-beta.24 electron-log: ^5.0.0-beta.24
electron-squirrel-startup: 1.0.0 electron-squirrel-startup: 1.0.0
electron-updater: ^5.3.0 electron-updater: ^5.3.0
@@ -7968,13 +7970,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@sindresorhus/is@npm:^5.2.0":
version: 5.3.0
resolution: "@sindresorhus/is@npm:5.3.0"
checksum: b31cebabcdece3d5322de2a4dbc8c0f004e04147a00f2606787bcaf5655ad4b1954f6727fc6914c524009b2b9a2cc01c42835b55f651ce69fd2a0083b60bb852
languageName: node
linkType: hard
"@sinonjs/commons@npm:^1.7.0": "@sinonjs/commons@npm:^1.7.0":
version: 1.8.6 version: 1.8.6
resolution: "@sinonjs/commons@npm:1.8.6" resolution: "@sinonjs/commons@npm:1.8.6"
@@ -9087,15 +9082,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@szmarczak/http-timer@npm:^5.0.1":
version: 5.0.1
resolution: "@szmarczak/http-timer@npm:5.0.1"
dependencies:
defer-to-connect: ^2.0.1
checksum: fc9cb993e808806692e4a3337c90ece0ec00c89f4b67e3652a356b89730da98bc824273a6d67ca84d5f33cd85f317dcd5ce39d8cc0a2f060145a608a7cb8ce92
languageName: node
linkType: hard
"@tabler/icons-react@npm:^2.17.0": "@tabler/icons-react@npm:^2.17.0":
version: 2.20.0 version: 2.20.0
resolution: "@tabler/icons-react@npm:2.20.0" resolution: "@tabler/icons-react@npm:2.20.0"
@@ -9389,7 +9375,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/cacheable-request@npm:^6.0.1": "@types/cacheable-request@npm:^6.0.2":
version: 6.0.3 version: 6.0.3
resolution: "@types/cacheable-request@npm:6.0.3" resolution: "@types/cacheable-request@npm:6.0.3"
dependencies: dependencies:
@@ -9606,7 +9592,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/http-cache-semantics@npm:*, @types/http-cache-semantics@npm:^4.0.1": "@types/http-cache-semantics@npm:*":
version: 4.0.1 version: 4.0.1
resolution: "@types/http-cache-semantics@npm:4.0.1" resolution: "@types/http-cache-semantics@npm:4.0.1"
checksum: 1048aacf627829f0d5f00184e16548205cd9f964bf0841c29b36bc504509230c40bc57c39778703a1c965a6f5b416ae2cbf4c1d4589c889d2838dd9dbfccf6e9 checksum: 1048aacf627829f0d5f00184e16548205cd9f964bf0841c29b36bc504509230c40bc57c39778703a1c965a6f5b416ae2cbf4c1d4589c889d2838dd9dbfccf6e9
@@ -10788,7 +10774,6 @@ __metadata:
eslint-plugin-unicorn: ^47.0.0 eslint-plugin-unicorn: ^47.0.0
eslint-plugin-unused-imports: ^2.0.0 eslint-plugin-unused-imports: ^2.0.0
fake-indexeddb: 4.0.1 fake-indexeddb: 4.0.1
got: ^13.0.0
happy-dom: ^9.20.3 happy-dom: ^9.20.3
husky: ^8.0.3 husky: ^8.0.3
lint-staged: ^13.2.2 lint-staged: ^13.2.2
@@ -12216,28 +12201,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"cacheable-lookup@npm:^7.0.0":
version: 7.0.0
resolution: "cacheable-lookup@npm:7.0.0"
checksum: 9e2856763fc0a7347ab34d704c010440b819d4bb5e3593b664381b7433e942dd22e67ee5581f12256f908e79b82d30b86ebbacf40a081bfe10ee93fbfbc2d6a9
languageName: node
linkType: hard
"cacheable-request@npm:^10.2.8":
version: 10.2.10
resolution: "cacheable-request@npm:10.2.10"
dependencies:
"@types/http-cache-semantics": ^4.0.1
get-stream: ^6.0.1
http-cache-semantics: ^4.1.1
keyv: ^4.5.2
mimic-response: ^4.0.0
normalize-url: ^8.0.0
responselike: ^3.0.0
checksum: 6f56cf6dc88c000936c89e386fdfd65c9a7833f6a4f73314f546287352efca50ef8c7ccc80c64d5c51fe104f5a60356366e190846f56abf3f2e90c1bacec7eee
languageName: node
linkType: hard
"cacheable-request@npm:^7.0.2": "cacheable-request@npm:^7.0.2":
version: 7.0.2 version: 7.0.2
resolution: "cacheable-request@npm:7.0.2" resolution: "cacheable-request@npm:7.0.2"
@@ -13707,7 +13670,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"defer-to-connect@npm:^2.0.0, defer-to-connect@npm:^2.0.1": "defer-to-connect@npm:^2.0.0":
version: 2.0.1 version: 2.0.1
resolution: "defer-to-connect@npm:2.0.1" resolution: "defer-to-connect@npm:2.0.1"
checksum: 8a9b50d2f25446c0bfefb55a48e90afd58f85b21bcf78e9207cd7b804354f6409032a1705c2491686e202e64fc05f147aa5aa45f9aa82627563f045937f5791b checksum: 8a9b50d2f25446c0bfefb55a48e90afd58f85b21bcf78e9207cd7b804354f6409032a1705c2491686e202e64fc05f147aa5aa45f9aa82627563f045937f5791b
@@ -14522,7 +14485,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"electron@npm:25.0.1": "electron@npm:=25.0.1":
version: 25.0.1 version: 25.0.1
resolution: "electron@npm:25.0.1" resolution: "electron@npm:25.0.1"
dependencies: dependencies:
@@ -16192,13 +16155,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"form-data-encoder@npm:^2.1.2":
version: 2.1.4
resolution: "form-data-encoder@npm:2.1.4"
checksum: e0b3e5950fb69b3f32c273944620f9861f1933df9d3e42066e038e26dfb343d0f4465de9f27e0ead1a09d9df20bc2eed06a63c2ca2f8f00949e7202bae9e29dd
languageName: node
linkType: hard
"form-data@npm:^3.0.0": "form-data@npm:^3.0.0":
version: 3.0.1 version: 3.0.1
resolution: "form-data@npm:3.0.1" resolution: "form-data@npm:3.0.1"
@@ -16998,25 +16954,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"got@npm:^13.0.0":
version: 13.0.0
resolution: "got@npm:13.0.0"
dependencies:
"@sindresorhus/is": ^5.2.0
"@szmarczak/http-timer": ^5.0.1
cacheable-lookup: ^7.0.0
cacheable-request: ^10.2.8
decompress-response: ^6.0.0
form-data-encoder: ^2.1.2
get-stream: ^6.0.1
http2-wrapper: ^2.1.10
lowercase-keys: ^3.0.0
p-cancelable: ^3.0.0
responselike: ^3.0.0
checksum: bcae6601efd710bc6c5b454c5e44bcb16fcfe57a1065e2d61ff918c1d69c3cf124984ebf509ca64ed10f0da2d2b5531b77da05aa786e75849d084fb8fbea711b
languageName: node
linkType: hard
"graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": "graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9":
version: 4.2.11 version: 4.2.11
resolution: "graceful-fs@npm:4.2.11" resolution: "graceful-fs@npm:4.2.11"
@@ -17417,7 +17354,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"http-cache-semantics@npm:^4.0.0, http-cache-semantics@npm:^4.1.0, http-cache-semantics@npm:^4.1.1": "http-cache-semantics@npm:^4.0.0, http-cache-semantics@npm:^4.1.0":
version: 4.1.1 version: 4.1.1
resolution: "http-cache-semantics@npm:4.1.1" resolution: "http-cache-semantics@npm:4.1.1"
checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236 checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236
@@ -17475,16 +17412,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"http2-wrapper@npm:^2.1.10":
version: 2.2.0
resolution: "http2-wrapper@npm:2.2.0"
dependencies:
quick-lru: ^5.1.1
resolve-alpn: ^1.2.0
checksum: 6fd20e5cb6a58151715b3581e06a62a47df943187d2d1f69e538a50cccb7175dd334ecfde7900a37d18f3e13a1a199518a2c211f39860e81e9a16210c199cfaa
languageName: node
linkType: hard
"https-proxy-agent@npm:^4.0.0": "https-proxy-agent@npm:^4.0.0":
version: 4.0.0 version: 4.0.0
resolution: "https-proxy-agent@npm:4.0.0" resolution: "https-proxy-agent@npm:4.0.0"
@@ -19678,7 +19605,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"keyv@npm:^4.0.0, keyv@npm:^4.5.2": "keyv@npm:^4.0.0":
version: 4.5.2 version: 4.5.2
resolution: "keyv@npm:4.5.2" resolution: "keyv@npm:4.5.2"
dependencies: dependencies:
@@ -20432,13 +20359,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"lowercase-keys@npm:^3.0.0":
version: 3.0.0
resolution: "lowercase-keys@npm:3.0.0"
checksum: 67a3f81409af969bc0c4ca0e76cd7d16adb1e25aa1c197229587eaf8671275c8c067cd421795dbca4c81be0098e4c426a086a05e30de8a9c587b7a13c0c7ccc5
languageName: node
linkType: hard
"lowlight@npm:^1.17.0": "lowlight@npm:^1.17.0":
version: 1.20.0 version: 1.20.0
resolution: "lowlight@npm:1.20.0" resolution: "lowlight@npm:1.20.0"
@@ -20918,13 +20838,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"mimic-response@npm:^4.0.0":
version: 4.0.0
resolution: "mimic-response@npm:4.0.0"
checksum: 33b804cc961efe206efdb1fca6a22540decdcfce6c14eb5c0c50e5ae9022267ab22ce8f5568b1f7247ba67500fe20d523d81e0e9f009b321ccd9d472e78d1850
languageName: node
linkType: hard
"min-indent@npm:^1.0.0": "min-indent@npm:^1.0.0":
version: 1.0.1 version: 1.0.1
resolution: "min-indent@npm:1.0.1" resolution: "min-indent@npm:1.0.1"
@@ -21742,13 +21655,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"normalize-url@npm:^8.0.0":
version: 8.0.0
resolution: "normalize-url@npm:8.0.0"
checksum: 24c20b75ebfd526d8453084692720b49d111c63c0911f1b7447427829597841eef5a8ba3f6bb93d6654007b991c1f5cd85da2c907800e439e2e2ec6c2abd0fc0
languageName: node
linkType: hard
"npm-run-path@npm:^2.0.0": "npm-run-path@npm:^2.0.0":
version: 2.0.2 version: 2.0.2
resolution: "npm-run-path@npm:2.0.2" resolution: "npm-run-path@npm:2.0.2"
@@ -22126,13 +22032,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"p-cancelable@npm:^3.0.0":
version: 3.0.0
resolution: "p-cancelable@npm:3.0.0"
checksum: 2b5ae34218f9c2cf7a7c18e5d9a726ef9b165ef07e6c959f6738371509e747334b5f78f3bcdeb03d8a12dcb978faf641fd87eb21486ed7d36fb823b8ddef3219
languageName: node
linkType: hard
"p-defer@npm:^1.0.0": "p-defer@npm:^1.0.0":
version: 1.0.0 version: 1.0.0
resolution: "p-defer@npm:1.0.0" resolution: "p-defer@npm:1.0.0"
@@ -24188,7 +24087,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"resolve-alpn@npm:^1.0.0, resolve-alpn@npm:^1.2.0": "resolve-alpn@npm:^1.0.0":
version: 1.2.1 version: 1.2.1
resolution: "resolve-alpn@npm:1.2.1" resolution: "resolve-alpn@npm:1.2.1"
checksum: f558071fcb2c60b04054c99aebd572a2af97ef64128d59bef7ab73bd50d896a222a056de40ffc545b633d99b304c259ea9d0c06830d5c867c34f0bfa60b8eae0 checksum: f558071fcb2c60b04054c99aebd572a2af97ef64128d59bef7ab73bd50d896a222a056de40ffc545b633d99b304c259ea9d0c06830d5c867c34f0bfa60b8eae0
@@ -24358,15 +24257,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"responselike@npm:^3.0.0":
version: 3.0.0
resolution: "responselike@npm:3.0.0"
dependencies:
lowercase-keys: ^3.0.0
checksum: e0cc9be30df4f415d6d83cdede3c5c887cd4a73e7cc1708bcaab1d50a28d15acb68460ac5b02bcc55a42f3d493729c8856427dcf6e57e6e128ad05cba4cfb95e
languageName: node
linkType: hard
"restore-cursor@npm:^3.1.0": "restore-cursor@npm:^3.1.0":
version: 3.1.0 version: 3.1.0
resolution: "restore-cursor@npm:3.1.0" resolution: "restore-cursor@npm:3.1.0"