Improve development tooling (#1516)
- Running `yarn build` in a `packages/*/` directory will trigger build of all dependencies too, and cache them if possible. - Fix for `yarn dev` breaking for `rrweb` package whenever changing files in `rrweb` package - Update typescript, turbo, vite and vite-plugin-dts - Require `workspaces-to-typescript-project-references` from `prepublish`
This commit is contained in:
2
.changeset/wicked-lions-return.md
Normal file
2
.changeset/wicked-lions-return.md
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
---
|
||||||
3
.vscode/rrweb-monorepo.code-workspace
vendored
3
.vscode/rrweb-monorepo.code-workspace
vendored
@@ -94,6 +94,7 @@
|
|||||||
"@rrweb/rrweb-plugin-sequential-id",
|
"@rrweb/rrweb-plugin-sequential-id",
|
||||||
"@rrweb/rrweb-plugin-canvas-webrtc-record",
|
"@rrweb/rrweb-plugin-canvas-webrtc-record",
|
||||||
"@rrweb/rrweb-plugin-canvas-webrtc-replay"
|
"@rrweb/rrweb-plugin-canvas-webrtc-replay"
|
||||||
]
|
],
|
||||||
|
"typescript.tsdk": " rrweb monorepo/node_modules/typescript/lib"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
11
package.json
11
package.json
@@ -37,18 +37,19 @@
|
|||||||
"markdownlint": "^0.25.1",
|
"markdownlint": "^0.25.1",
|
||||||
"markdownlint-cli": "^0.31.1",
|
"markdownlint-cli": "^0.31.1",
|
||||||
"prettier": "2.8.4",
|
"prettier": "2.8.4",
|
||||||
"turbo": "^2.0.3",
|
"turbo": "^2.0.4",
|
||||||
"typescript": "^4.9.5"
|
"typescript": "^5.4.5"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build:all": "NODE_OPTIONS='--max-old-space-size=4096' yarn run concurrently --success=all -r -m=1 'yarn workspaces-to-typescript-project-references' 'yarn turbo run prepublish'",
|
"build:all": "NODE_OPTIONS='--max-old-space-size=4096' yarn turbo run prepublish",
|
||||||
"test": "yarn run concurrently --success=all -r -m=1 'yarn workspaces-to-typescript-project-references --check' 'yarn turbo run test --concurrency=1 --continue'",
|
"references:update": "yarn workspaces-to-typescript-project-references",
|
||||||
|
"test": "yarn turbo run test --concurrency=1 --continue",
|
||||||
"test:watch": "yarn turbo run test:watch",
|
"test:watch": "yarn turbo run test:watch",
|
||||||
"test:update": "yarn turbo run test:update",
|
"test:update": "yarn turbo run test:update",
|
||||||
"check-types": "yarn turbo run check-types --continue",
|
"check-types": "yarn turbo run check-types --continue",
|
||||||
"format": "yarn prettier --write '**/*.{ts,md}'",
|
"format": "yarn prettier --write '**/*.{ts,md}'",
|
||||||
"format:head": "git diff --name-only HEAD^ |grep '\\.ts$\\|\\.md$' |xargs yarn prettier --write",
|
"format:head": "git diff --name-only HEAD^ |grep '\\.ts$\\|\\.md$' |xargs yarn prettier --write",
|
||||||
"dev": "CLEAR_DIST_DIR=false yarn turbo run dev --concurrency=17",
|
"dev": "yarn turbo run dev --concurrency=17",
|
||||||
"repl": "cd packages/rrweb && npm run repl",
|
"repl": "cd packages/rrweb && npm run repl",
|
||||||
"live-stream": "cd packages/rrweb && yarn live-stream",
|
"live-stream": "cd packages/rrweb && yarn live-stream",
|
||||||
"lint": "yarn run concurrently --success=all -r -m=1 'yarn run markdownlint docs' 'yarn eslint packages/*/src --ext .ts,.tsx,.js,.jsx,.svelte'",
|
"lint": "yarn run concurrently --success=all -r -m=1 'yarn run markdownlint docs' 'yarn eslint packages/*/src --ext .ts,.tsx,.js,.jsx,.svelte'",
|
||||||
|
|||||||
@@ -10,11 +10,11 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"test": "vitest run",
|
"test": "vitest run",
|
||||||
"test:watch": "vitest watch",
|
"test:watch": "vitest watch",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "tsc -noEmit && vite build",
|
||||||
"lint": "yarn eslint src/**/*.ts"
|
"lint": "yarn eslint src/**/*.ts"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/all#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/all#readme",
|
||||||
@@ -50,10 +50,10 @@
|
|||||||
],
|
],
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"puppeteer": "^20.9.0",
|
"puppeteer": "^20.9.0",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1",
|
"vite-plugin-dts": "^3.9.1",
|
||||||
"vitest": "^1.4.0",
|
"vitest": "^1.4.0",
|
||||||
"typescript": "^4.7.3"
|
"typescript": "^5.4.5"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@rrweb/types": "^2.0.0-alpha.15",
|
"@rrweb/types": "^2.0.0-alpha.15",
|
||||||
|
|||||||
@@ -10,11 +10,11 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"test": "vitest run",
|
"test": "vitest run",
|
||||||
"test:watch": "vitest watch",
|
"test:watch": "vitest watch",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "tsc -noEmit && vite build",
|
||||||
"lint": "yarn eslint src/**/*.ts"
|
"lint": "yarn eslint src/**/*.ts"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/packer#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/packer#readme",
|
||||||
@@ -71,10 +71,10 @@
|
|||||||
"package.json"
|
"package.json"
|
||||||
],
|
],
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1",
|
"vite-plugin-dts": "^3.9.1",
|
||||||
"vitest": "^1.4.0",
|
"vitest": "^1.4.0",
|
||||||
"typescript": "^4.7.3"
|
"typescript": "^5.4.5"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"fflate": "^0.4.4",
|
"fflate": "^0.4.4",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { strFromU8, strToU8, zlibSync } from 'fflate';
|
import { strFromU8, strToU8, zlibSync } from 'fflate';
|
||||||
import type { PackFn } from '@rrweb/types';
|
import type { PackFn } from '@rrweb/types';
|
||||||
import { eventWithTimeAndPacker, MARK } from './base';
|
import { type eventWithTimeAndPacker, MARK } from './base';
|
||||||
|
|
||||||
export const pack: PackFn = (event) => {
|
export const pack: PackFn = (event) => {
|
||||||
const _e: eventWithTimeAndPacker = {
|
const _e: eventWithTimeAndPacker = {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { strFromU8, strToU8, unzlibSync } from 'fflate';
|
import { strFromU8, strToU8, unzlibSync } from 'fflate';
|
||||||
import { eventWithTimeAndPacker, MARK } from './base';
|
import { type eventWithTimeAndPacker, MARK } from './base';
|
||||||
import type { UnpackFn, eventWithTime } from '@rrweb/types';
|
import type { UnpackFn, eventWithTime } from '@rrweb/types';
|
||||||
|
|
||||||
export const unpack: UnpackFn = (raw: string) => {
|
export const unpack: UnpackFn = (raw: string) => {
|
||||||
|
|||||||
@@ -25,9 +25,9 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build"
|
"prepublish": "tsc -noEmit && vite build"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -44,9 +44,9 @@
|
|||||||
"homepage": "https://github.com/rrweb-io/rrweb#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb#readme",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15",
|
"rrweb": "^2.0.0-alpha.15",
|
||||||
"typescript": "^4.7.3",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1"
|
"vite-plugin-dts": "^3.9.1"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15"
|
"rrweb": "^2.0.0-alpha.15"
|
||||||
|
|||||||
@@ -25,9 +25,9 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build"
|
"prepublish": "tsc -noEmit && vite build"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -44,9 +44,9 @@
|
|||||||
"homepage": "https://github.com/rrweb-io/rrweb#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb#readme",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15",
|
"rrweb": "^2.0.0-alpha.15",
|
||||||
"typescript": "^4.7.3",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1"
|
"vite-plugin-dts": "^3.9.1"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15"
|
"rrweb": "^2.0.0-alpha.15"
|
||||||
|
|||||||
@@ -27,9 +27,9 @@
|
|||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"test": "vitest run",
|
"test": "vitest run",
|
||||||
"test:watch": "vitest watch",
|
"test:watch": "vitest watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build"
|
"prepublish": "tsc -noEmit && vite build"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -46,9 +46,9 @@
|
|||||||
"homepage": "https://github.com/rrweb-io/rrweb#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb#readme",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15",
|
"rrweb": "^2.0.0-alpha.15",
|
||||||
"typescript": "^4.7.3",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1",
|
"vite-plugin-dts": "^3.9.1",
|
||||||
"vitest": "^1.4.0",
|
"vitest": "^1.4.0",
|
||||||
"puppeteer": "^20.9.0"
|
"puppeteer": "^20.9.0"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -25,9 +25,9 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build"
|
"prepublish": "tsc -noEmit && vite build"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -45,9 +45,9 @@
|
|||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@rrweb/rrweb-plugin-console-record": "^2.0.0-alpha.15",
|
"@rrweb/rrweb-plugin-console-record": "^2.0.0-alpha.15",
|
||||||
"rrweb": "^2.0.0-alpha.15",
|
"rrweb": "^2.0.0-alpha.15",
|
||||||
"typescript": "^4.7.3",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1"
|
"vite-plugin-dts": "^3.9.1"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15"
|
"rrweb": "^2.0.0-alpha.15"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import {
|
import {
|
||||||
LogLevel,
|
type LogLevel,
|
||||||
LogData,
|
type LogData,
|
||||||
PLUGIN_NAME,
|
PLUGIN_NAME,
|
||||||
} from '@rrweb/rrweb-plugin-console-record';
|
} from '@rrweb/rrweb-plugin-console-record';
|
||||||
import type { eventWithTime } from '@rrweb/types';
|
import type { eventWithTime } from '@rrweb/types';
|
||||||
|
|||||||
@@ -25,9 +25,9 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build"
|
"prepublish": "tsc -noEmit && vite build"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -44,9 +44,9 @@
|
|||||||
"homepage": "https://github.com/rrweb-io/rrweb#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb#readme",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15",
|
"rrweb": "^2.0.0-alpha.15",
|
||||||
"typescript": "^4.7.3",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1"
|
"vite-plugin-dts": "^3.9.1"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15"
|
"rrweb": "^2.0.0-alpha.15"
|
||||||
|
|||||||
@@ -25,9 +25,9 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build"
|
"prepublish": "tsc -noEmit && vite build"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -45,9 +45,9 @@
|
|||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@rrweb/rrweb-plugin-sequential-id-record": "^2.0.0-alpha.15",
|
"@rrweb/rrweb-plugin-sequential-id-record": "^2.0.0-alpha.15",
|
||||||
"rrweb": "^2.0.0-alpha.15",
|
"rrweb": "^2.0.0-alpha.15",
|
||||||
"typescript": "^4.7.3",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1"
|
"vite-plugin-dts": "^3.9.1"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"rrweb": "^2.0.0-alpha.15"
|
"rrweb": "^2.0.0-alpha.15"
|
||||||
|
|||||||
@@ -10,11 +10,11 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"test": "vitest run",
|
"test": "vitest run",
|
||||||
"test:watch": "vitest watch",
|
"test:watch": "vitest watch",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "tsc -noEmit && vite build",
|
||||||
"lint": "yarn eslint src/**/*.ts"
|
"lint": "yarn eslint src/**/*.ts"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/record#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/record#readme",
|
||||||
@@ -49,10 +49,10 @@
|
|||||||
],
|
],
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"puppeteer": "^20.9.0",
|
"puppeteer": "^20.9.0",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1",
|
"vite-plugin-dts": "^3.9.1",
|
||||||
"vitest": "^1.4.0",
|
"vitest": "^1.4.0",
|
||||||
"typescript": "^4.7.3"
|
"typescript": "^5.4.5"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@rrweb/types": "^2.0.0-alpha.15",
|
"@rrweb/types": "^2.0.0-alpha.15",
|
||||||
|
|||||||
@@ -10,11 +10,11 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"test": "vitest run",
|
"test": "vitest run",
|
||||||
"test:watch": "vitest watch",
|
"test:watch": "vitest watch",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "tsc -noEmit && vite build",
|
||||||
"lint": "yarn eslint src/**/*.ts"
|
"lint": "yarn eslint src/**/*.ts"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/replay#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/replay#readme",
|
||||||
@@ -50,10 +50,10 @@
|
|||||||
],
|
],
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"puppeteer": "^20.9.0",
|
"puppeteer": "^20.9.0",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1",
|
"vite-plugin-dts": "^3.9.1",
|
||||||
"vitest": "^1.4.0",
|
"vitest": "^1.4.0",
|
||||||
"typescript": "^4.7.3"
|
"typescript": "^5.4.5"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@rrweb/types": "^2.0.0-alpha.15",
|
"@rrweb/types": "^2.0.0-alpha.15",
|
||||||
|
|||||||
@@ -6,4 +6,9 @@ import {
|
|||||||
} from 'rrweb';
|
} from 'rrweb';
|
||||||
import 'rrweb/dist/style.css';
|
import 'rrweb/dist/style.css';
|
||||||
|
|
||||||
export { Replayer, playerConfig, PlayerMachineState, SpeedMachineState };
|
export {
|
||||||
|
Replayer,
|
||||||
|
type playerConfig,
|
||||||
|
type PlayerMachineState,
|
||||||
|
type SpeedMachineState,
|
||||||
|
};
|
||||||
|
|||||||
@@ -3,11 +3,11 @@
|
|||||||
"version": "2.0.0-alpha.15",
|
"version": "2.0.0-alpha.15",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"test": "vitest run",
|
"test": "vitest run",
|
||||||
"test:watch": "vitest watch",
|
"test:watch": "vitest watch",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "tsc -noEmit && vite build",
|
||||||
"lint": "yarn eslint src/**/*.ts"
|
"lint": "yarn eslint src/**/*.ts"
|
||||||
},
|
},
|
||||||
"keywords": [
|
"keywords": [
|
||||||
@@ -46,10 +46,10 @@
|
|||||||
"compare-versions": "^4.1.3",
|
"compare-versions": "^4.1.3",
|
||||||
"eslint": "^8.15.0",
|
"eslint": "^8.15.0",
|
||||||
"puppeteer": "^9.1.1",
|
"puppeteer": "^9.1.1",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1",
|
"vite-plugin-dts": "^3.9.1",
|
||||||
"vitest": "^1.4.0",
|
"vitest": "^1.4.0",
|
||||||
"typescript": "^4.7.3"
|
"typescript": "^5.4.5"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"cssom": "^0.5.0",
|
"cssom": "^0.5.0",
|
||||||
@@ -57,8 +57,5 @@
|
|||||||
"nwsapi": "^2.2.0",
|
"nwsapi": "^2.2.0",
|
||||||
"rrdom": "^2.0.0-alpha.15",
|
"rrdom": "^2.0.0-alpha.15",
|
||||||
"rrweb-snapshot": "^2.0.0-alpha.15"
|
"rrweb-snapshot": "^2.0.0-alpha.15"
|
||||||
},
|
}
|
||||||
"browserslist": [
|
|
||||||
"supports es6-class"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,8 +12,8 @@ import {
|
|||||||
BaseRRNode,
|
BaseRRNode,
|
||||||
BaseRRText,
|
BaseRRText,
|
||||||
ClassList,
|
ClassList,
|
||||||
IRRDocument,
|
type IRRDocument,
|
||||||
CSSStyleDeclaration,
|
type CSSStyleDeclaration,
|
||||||
} from 'rrdom';
|
} from 'rrdom';
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires
|
||||||
const nwsapi = require('nwsapi');
|
const nwsapi = require('nwsapi');
|
||||||
|
|||||||
@@ -30,11 +30,11 @@
|
|||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"test": "vitest run",
|
"test": "vitest run",
|
||||||
"test:watch": "vitest",
|
"test:watch": "vitest",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "tsc -noEmit && vite build",
|
||||||
"lint": "yarn eslint src/**/*.ts"
|
"lint": "yarn eslint src/**/*.ts"
|
||||||
},
|
},
|
||||||
"bugs": {
|
"bugs": {
|
||||||
@@ -47,9 +47,9 @@
|
|||||||
"@typescript-eslint/parser": "^5.23.0",
|
"@typescript-eslint/parser": "^5.23.0",
|
||||||
"eslint": "^8.15.0",
|
"eslint": "^8.15.0",
|
||||||
"puppeteer": "^17.1.3",
|
"puppeteer": "^17.1.3",
|
||||||
"typescript": "^4.9.0",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1"
|
"vite-plugin-dts": "^3.9.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"rrweb-snapshot": "^2.0.0-alpha.15"
|
"rrweb-snapshot": "^2.0.0-alpha.15"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import {
|
import {
|
||||||
NodeType as RRNodeType,
|
NodeType as RRNodeType,
|
||||||
Mirror as NodeMirror,
|
Mirror as NodeMirror,
|
||||||
elementNode,
|
type elementNode,
|
||||||
} from 'rrweb-snapshot';
|
} from 'rrweb-snapshot';
|
||||||
import type {
|
import type {
|
||||||
canvasMutationData,
|
canvasMutationData,
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
"svelte-preprocess": "^5.0.3",
|
"svelte-preprocess": "^5.0.3",
|
||||||
"svelte2tsx": "^0.7.6",
|
"svelte2tsx": "^0.7.6",
|
||||||
"tslib": "^2.0.0",
|
"tslib": "^2.0.0",
|
||||||
"vite": "^5.2.8"
|
"vite": "^5.3.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@tsconfig/svelte": "^1.0.0",
|
"@tsconfig/svelte": "^1.0.0",
|
||||||
|
|||||||
@@ -11,9 +11,9 @@
|
|||||||
"retest:update": "vitest run --update",
|
"retest:update": "vitest run --update",
|
||||||
"test:update": "yarn build && vitest run --update",
|
"test:update": "yarn build && vitest run --update",
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "yarn check-types && vite build",
|
"build": "yarn turbo prepublish -F rrweb-snapshot",
|
||||||
"check-types": "tsc --noEmit",
|
"check-types": "tsc --noEmit",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "yarn check-types && vite build",
|
||||||
"lint": "yarn eslint src"
|
"lint": "yarn eslint src"
|
||||||
},
|
},
|
||||||
"type": "module",
|
"type": "module",
|
||||||
@@ -59,9 +59,9 @@
|
|||||||
"puppeteer": "^17.1.3",
|
"puppeteer": "^17.1.3",
|
||||||
"ts-node": "^7.0.1",
|
"ts-node": "^7.0.1",
|
||||||
"tslib": "^1.9.3",
|
"tslib": "^1.9.3",
|
||||||
"typescript": "^4.7.3",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1",
|
"vite-plugin-dts": "^3.9.1",
|
||||||
"vitest": "^1.4.0"
|
"vitest": "^1.4.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import { Rule, Media, NodeWithRules, parse } from './css';
|
import { type Rule, type Media, type NodeWithRules, parse } from './css';
|
||||||
import {
|
import {
|
||||||
serializedNodeWithId,
|
type serializedNodeWithId,
|
||||||
NodeType,
|
NodeType,
|
||||||
tagMap,
|
type tagMap,
|
||||||
elementNode,
|
type elementNode,
|
||||||
BuildCache,
|
type BuildCache,
|
||||||
legacyAttributes,
|
type legacyAttributes,
|
||||||
} from './types';
|
} from './types';
|
||||||
import { isElement, Mirror, isNodeMetaEqual } from './utils';
|
import { isElement, Mirror, isNodeMetaEqual } from './utils';
|
||||||
|
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
import {
|
import {
|
||||||
serializedNode,
|
type serializedNode,
|
||||||
serializedNodeWithId,
|
type serializedNodeWithId,
|
||||||
NodeType,
|
NodeType,
|
||||||
attributes,
|
type attributes,
|
||||||
MaskInputOptions,
|
type MaskInputOptions,
|
||||||
SlimDOMOptions,
|
type SlimDOMOptions,
|
||||||
DataURLOptions,
|
type DataURLOptions,
|
||||||
MaskTextFn,
|
type MaskTextFn,
|
||||||
MaskInputFn,
|
type MaskInputFn,
|
||||||
KeepIframeSrcFn,
|
type KeepIframeSrcFn,
|
||||||
ICanvas,
|
type ICanvas,
|
||||||
elementNode,
|
type elementNode,
|
||||||
serializedElementNodeWithId,
|
type serializedElementNodeWithId,
|
||||||
type mediaAttributes,
|
type mediaAttributes,
|
||||||
} from './types';
|
} from './types';
|
||||||
import {
|
import {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import {
|
import type {
|
||||||
idNodeMap,
|
idNodeMap,
|
||||||
MaskInputFn,
|
MaskInputFn,
|
||||||
MaskInputOptions,
|
MaskInputOptions,
|
||||||
@@ -6,12 +6,12 @@ import {
|
|||||||
IMirror,
|
IMirror,
|
||||||
serializedNodeWithId,
|
serializedNodeWithId,
|
||||||
serializedNode,
|
serializedNode,
|
||||||
NodeType,
|
|
||||||
documentNode,
|
documentNode,
|
||||||
documentTypeNode,
|
documentTypeNode,
|
||||||
textNode,
|
textNode,
|
||||||
elementNode,
|
elementNode,
|
||||||
} from './types';
|
} from './types';
|
||||||
|
import { NodeType } from './types';
|
||||||
|
|
||||||
export function isElement(n: Node): n is Element {
|
export function isElement(n: Node): n is Element {
|
||||||
return n.nodeType === n.ELEMENT_NODE;
|
return n.nodeType === n.ELEMENT_NODE;
|
||||||
|
|||||||
@@ -16,9 +16,9 @@
|
|||||||
"repl": "yarn build && node scripts/repl.js",
|
"repl": "yarn build && node scripts/repl.js",
|
||||||
"live-stream": "yarn build && node scripts/stream.js",
|
"live-stream": "yarn build && node scripts/stream.js",
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "tsc -noEmit && vite build",
|
||||||
"lint": "yarn eslint src",
|
"lint": "yarn eslint src",
|
||||||
"benchmark": "vitest run --maxConcurrency 1 --no-file-parallelism test/benchmark"
|
"benchmark": "vitest run --maxConcurrency 1 --no-file-parallelism test/benchmark"
|
||||||
},
|
},
|
||||||
@@ -74,9 +74,9 @@
|
|||||||
"simple-peer-light": "^9.10.0",
|
"simple-peer-light": "^9.10.0",
|
||||||
"ts-node": "^10.9.1",
|
"ts-node": "^10.9.1",
|
||||||
"tslib": "^2.3.1",
|
"tslib": "^2.3.1",
|
||||||
"typescript": "^4.7.3",
|
"typescript": "^5.4.5",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1"
|
"vite-plugin-dts": "^3.9.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@rrweb/types": "^2.0.0-alpha.15",
|
"@rrweb/types": "^2.0.0-alpha.15",
|
||||||
|
|||||||
@@ -17,6 +17,9 @@ export {
|
|||||||
type eventWithTime,
|
type eventWithTime,
|
||||||
} from '@rrweb/types';
|
} from '@rrweb/types';
|
||||||
|
|
||||||
|
// exports style.css from replay
|
||||||
|
import './replay/styles/style.css';
|
||||||
|
|
||||||
export type { recordOptions, ReplayPlugin } from './types';
|
export type { recordOptions, ReplayPlugin } from './types';
|
||||||
|
|
||||||
const { addCustomEvent } = record;
|
const { addCustomEvent } = record;
|
||||||
@@ -27,9 +30,9 @@ export {
|
|||||||
addCustomEvent,
|
addCustomEvent,
|
||||||
freezePage,
|
freezePage,
|
||||||
Replayer,
|
Replayer,
|
||||||
playerConfig,
|
type playerConfig,
|
||||||
PlayerMachineState,
|
type PlayerMachineState,
|
||||||
SpeedMachineState,
|
type SpeedMachineState,
|
||||||
canvasMutation,
|
canvasMutation,
|
||||||
_mirror as mirror,
|
_mirror as mirror,
|
||||||
utils,
|
utils,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import {
|
import {
|
||||||
snapshot,
|
snapshot,
|
||||||
MaskInputOptions,
|
type MaskInputOptions,
|
||||||
SlimDOMOptions,
|
type SlimDOMOptions,
|
||||||
createMirror,
|
createMirror,
|
||||||
} from 'rrweb-snapshot';
|
} from 'rrweb-snapshot';
|
||||||
import { initObservers, mutationBuffers } from './observer';
|
import { initObservers, mutationBuffers } from './observer';
|
||||||
@@ -19,14 +19,14 @@ import {
|
|||||||
import type { recordOptions } from '../types';
|
import type { recordOptions } from '../types';
|
||||||
import {
|
import {
|
||||||
EventType,
|
EventType,
|
||||||
eventWithoutTime,
|
type eventWithoutTime,
|
||||||
eventWithTime,
|
type eventWithTime,
|
||||||
IncrementalSource,
|
IncrementalSource,
|
||||||
listenerHandler,
|
type listenerHandler,
|
||||||
mutationCallbackParam,
|
type mutationCallbackParam,
|
||||||
scrollCallback,
|
type scrollCallback,
|
||||||
canvasMutationParam,
|
type canvasMutationParam,
|
||||||
adoptedStyleSheetParam,
|
type adoptedStyleSheetParam,
|
||||||
} from '@rrweb/types';
|
} from '@rrweb/types';
|
||||||
import type { CrossOriginIframeMessageEventContent } from '../types';
|
import type { CrossOriginIframeMessageEventContent } from '../types';
|
||||||
import { IframeManager } from './iframe-manager';
|
import { IframeManager } from './iframe-manager';
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import {
|
import {
|
||||||
MaskInputOptions,
|
type MaskInputOptions,
|
||||||
maskInputValue,
|
maskInputValue,
|
||||||
Mirror,
|
Mirror,
|
||||||
getInputType,
|
getInputType,
|
||||||
@@ -21,12 +21,16 @@ import {
|
|||||||
} from '../utils';
|
} from '../utils';
|
||||||
import type { observerParam, MutationBufferParam } from '../types';
|
import type { observerParam, MutationBufferParam } from '../types';
|
||||||
import {
|
import {
|
||||||
|
IncrementalSource,
|
||||||
|
MouseInteractions,
|
||||||
|
PointerTypes,
|
||||||
|
MediaInteractions,
|
||||||
|
} from '@rrweb/types';
|
||||||
|
import type {
|
||||||
mutationCallBack,
|
mutationCallBack,
|
||||||
mousemoveCallBack,
|
mousemoveCallBack,
|
||||||
mousePosition,
|
mousePosition,
|
||||||
mouseInteractionCallBack,
|
mouseInteractionCallBack,
|
||||||
MouseInteractions,
|
|
||||||
PointerTypes,
|
|
||||||
listenerHandler,
|
listenerHandler,
|
||||||
scrollCallback,
|
scrollCallback,
|
||||||
styleSheetRuleCallback,
|
styleSheetRuleCallback,
|
||||||
@@ -34,11 +38,9 @@ import {
|
|||||||
inputValue,
|
inputValue,
|
||||||
inputCallback,
|
inputCallback,
|
||||||
hookResetter,
|
hookResetter,
|
||||||
IncrementalSource,
|
|
||||||
hooksParam,
|
hooksParam,
|
||||||
Arguments,
|
Arguments,
|
||||||
mediaInteractionCallback,
|
mediaInteractionCallback,
|
||||||
MediaInteractions,
|
|
||||||
canvasMutationCallback,
|
canvasMutationCallback,
|
||||||
fontCallback,
|
fontCallback,
|
||||||
fontParam,
|
fontParam,
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import {
|
import {
|
||||||
blockClass,
|
type blockClass,
|
||||||
CanvasContext,
|
CanvasContext,
|
||||||
canvasManagerMutationCallback,
|
type canvasManagerMutationCallback,
|
||||||
IWindow,
|
type IWindow,
|
||||||
listenerHandler,
|
type listenerHandler,
|
||||||
} from '@rrweb/types';
|
} from '@rrweb/types';
|
||||||
import { hookSetter, isBlocked, patch } from '../../../utils';
|
import { hookSetter, isBlocked, patch } from '../../../utils';
|
||||||
import { serializeArgs } from './serialize-args';
|
import { serializeArgs } from './serialize-args';
|
||||||
|
|||||||
@@ -262,7 +262,6 @@ export class CanvasManager {
|
|||||||
win,
|
win,
|
||||||
blockClass,
|
blockClass,
|
||||||
blockSelector,
|
blockSelector,
|
||||||
this.mirror,
|
|
||||||
);
|
);
|
||||||
|
|
||||||
this.resetObservers = () => {
|
this.resetObservers = () => {
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
import type { Mirror } from 'rrweb-snapshot';
|
|
||||||
import {
|
import {
|
||||||
blockClass,
|
type blockClass,
|
||||||
CanvasContext,
|
CanvasContext,
|
||||||
canvasManagerMutationCallback,
|
type canvasManagerMutationCallback,
|
||||||
canvasMutationWithType,
|
type canvasMutationWithType,
|
||||||
IWindow,
|
type IWindow,
|
||||||
listenerHandler,
|
type listenerHandler,
|
||||||
} from '@rrweb/types';
|
} from '@rrweb/types';
|
||||||
import { hookSetter, isBlocked, patch } from '../../../utils';
|
import { hookSetter, isBlocked, patch } from '../../../utils';
|
||||||
import { saveWebGLVar, serializeArgs } from './serialize-args';
|
import { saveWebGLVar, serializeArgs } from './serialize-args';
|
||||||
@@ -16,7 +15,6 @@ function patchGLPrototype(
|
|||||||
cb: canvasManagerMutationCallback,
|
cb: canvasManagerMutationCallback,
|
||||||
blockClass: blockClass,
|
blockClass: blockClass,
|
||||||
blockSelector: string | null,
|
blockSelector: string | null,
|
||||||
_mirror: Mirror,
|
|
||||||
win: IWindow,
|
win: IWindow,
|
||||||
): listenerHandler[] {
|
): listenerHandler[] {
|
||||||
const handlers: listenerHandler[] = [];
|
const handlers: listenerHandler[] = [];
|
||||||
@@ -93,7 +91,6 @@ export default function initCanvasWebGLMutationObserver(
|
|||||||
win: IWindow,
|
win: IWindow,
|
||||||
blockClass: blockClass,
|
blockClass: blockClass,
|
||||||
blockSelector: string | null,
|
blockSelector: string | null,
|
||||||
mirror: Mirror,
|
|
||||||
): listenerHandler {
|
): listenerHandler {
|
||||||
const handlers: listenerHandler[] = [];
|
const handlers: listenerHandler[] = [];
|
||||||
|
|
||||||
@@ -104,7 +101,6 @@ export default function initCanvasWebGLMutationObserver(
|
|||||||
cb,
|
cb,
|
||||||
blockClass,
|
blockClass,
|
||||||
blockSelector,
|
blockSelector,
|
||||||
mirror,
|
|
||||||
win,
|
win,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
@@ -117,7 +113,6 @@ export default function initCanvasWebGLMutationObserver(
|
|||||||
cb,
|
cb,
|
||||||
blockClass,
|
blockClass,
|
||||||
blockSelector,
|
blockSelector,
|
||||||
mirror,
|
|
||||||
win,
|
win,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import type { Replayer } from '..';
|
import type { Replayer } from '..';
|
||||||
import {
|
import {
|
||||||
CanvasContext,
|
CanvasContext,
|
||||||
canvasMutationCommand,
|
type canvasMutationCommand,
|
||||||
canvasMutationData,
|
type canvasMutationData,
|
||||||
canvasMutationParam,
|
type canvasMutationParam,
|
||||||
} from '@rrweb/types';
|
} from '@rrweb/types';
|
||||||
import webglMutation from './webgl';
|
import webglMutation from './webgl';
|
||||||
import canvas2DMutation from './2d';
|
import canvas2DMutation from './2d';
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import type { Replayer } from '../';
|
import type { Replayer } from '../';
|
||||||
import { CanvasContext, canvasMutationCommand } from '@rrweb/types';
|
import { CanvasContext, type canvasMutationCommand } from '@rrweb/types';
|
||||||
import { deserializeArg, variableListFor } from './deserialize-args';
|
import { deserializeArg, variableListFor } from './deserialize-args';
|
||||||
|
|
||||||
function getContext(
|
function getContext(
|
||||||
|
|||||||
@@ -2,12 +2,12 @@ import {
|
|||||||
rebuild,
|
rebuild,
|
||||||
buildNodeWithSN,
|
buildNodeWithSN,
|
||||||
NodeType,
|
NodeType,
|
||||||
BuildCache,
|
type BuildCache,
|
||||||
createCache,
|
createCache,
|
||||||
Mirror,
|
Mirror,
|
||||||
createMirror,
|
createMirror,
|
||||||
attributes,
|
type attributes,
|
||||||
serializedElementNodeWithId,
|
type serializedElementNodeWithId,
|
||||||
toLowerCase,
|
toLowerCase,
|
||||||
} from 'rrweb-snapshot';
|
} from 'rrweb-snapshot';
|
||||||
import {
|
import {
|
||||||
@@ -41,15 +41,17 @@ import type { playerConfig, missingNodeMap } from '../types';
|
|||||||
import {
|
import {
|
||||||
EventType,
|
EventType,
|
||||||
IncrementalSource,
|
IncrementalSource,
|
||||||
|
MouseInteractions,
|
||||||
|
ReplayerEvents,
|
||||||
|
} from '@rrweb/types';
|
||||||
|
import type {
|
||||||
fullSnapshotEvent,
|
fullSnapshotEvent,
|
||||||
eventWithTime,
|
eventWithTime,
|
||||||
MouseInteractions,
|
|
||||||
playerMetaData,
|
playerMetaData,
|
||||||
viewportResizeDimension,
|
viewportResizeDimension,
|
||||||
addedNodeMutation,
|
addedNodeMutation,
|
||||||
incrementalSnapshotEvent,
|
incrementalSnapshotEvent,
|
||||||
incrementalData,
|
incrementalData,
|
||||||
ReplayerEvents,
|
|
||||||
Handler,
|
Handler,
|
||||||
Emitter,
|
Emitter,
|
||||||
metaEvent,
|
metaEvent,
|
||||||
@@ -72,7 +74,7 @@ import {
|
|||||||
polyfill,
|
polyfill,
|
||||||
queueToResolveTrees,
|
queueToResolveTrees,
|
||||||
iterateResolveTree,
|
iterateResolveTree,
|
||||||
AppendedIframe,
|
type AppendedIframe,
|
||||||
getBaseDimension,
|
getBaseDimension,
|
||||||
hasShadowRoot,
|
hasShadowRoot,
|
||||||
isSerializedIframe,
|
isSerializedIframe,
|
||||||
@@ -2228,4 +2230,4 @@ export class Replayer {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export { PlayerMachineState, SpeedMachineState, playerConfig };
|
export { type PlayerMachineState, type SpeedMachineState, type playerConfig };
|
||||||
|
|||||||
@@ -1,10 +1,15 @@
|
|||||||
import { createMachine, interpret, assign, StateMachine } from '@xstate/fsm';
|
import {
|
||||||
|
createMachine,
|
||||||
|
interpret,
|
||||||
|
assign,
|
||||||
|
type StateMachine,
|
||||||
|
} from '@xstate/fsm';
|
||||||
import type { playerConfig } from '../types';
|
import type { playerConfig } from '../types';
|
||||||
import {
|
import {
|
||||||
eventWithTime,
|
type eventWithTime,
|
||||||
ReplayerEvents,
|
ReplayerEvents,
|
||||||
EventType,
|
EventType,
|
||||||
Emitter,
|
type Emitter,
|
||||||
IncrementalSource,
|
IncrementalSource,
|
||||||
} from '@rrweb/types';
|
} from '@rrweb/types';
|
||||||
import { Timer, addDelay } from './timer';
|
import { Timer, addDelay } from './timer';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Emitter, MediaInteractions, ReplayerEvents } from '@rrweb/types';
|
import { type Emitter, MediaInteractions, ReplayerEvents } from '@rrweb/types';
|
||||||
import type { RRMediaElement } from 'rrdom';
|
import type { RRMediaElement } from 'rrdom';
|
||||||
import type { createPlayerService, createSpeedService } from '../machine';
|
import type { createPlayerService, createSpeedService } from '../machine';
|
||||||
import type { Mirror, mediaAttributes } from 'rrweb-snapshot';
|
import type { Mirror, mediaAttributes } from 'rrweb-snapshot';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import {
|
import {
|
||||||
actionWithDelay,
|
type actionWithDelay,
|
||||||
eventWithTime,
|
type eventWithTime,
|
||||||
EventType,
|
EventType,
|
||||||
IncrementalSource,
|
IncrementalSource,
|
||||||
} from '@rrweb/types';
|
} from '@rrweb/types';
|
||||||
|
|||||||
@@ -10,9 +10,9 @@
|
|||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite build --watch",
|
"dev": "vite build --watch",
|
||||||
"build": "tsc -noEmit && vite build",
|
"build": "yarn turbo run prepublish",
|
||||||
"check-types": "tsc -noEmit",
|
"check-types": "tsc -noEmit",
|
||||||
"prepublish": "npm run build",
|
"prepublish": "tsc -noEmit && vite build",
|
||||||
"lint": "yarn eslint src/**/*.ts"
|
"lint": "yarn eslint src/**/*.ts"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/types#readme",
|
"homepage": "https://github.com/rrweb-io/rrweb/tree/main/packages/@rrweb/types#readme",
|
||||||
@@ -46,8 +46,8 @@
|
|||||||
"package.json"
|
"package.json"
|
||||||
],
|
],
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-dts": "^3.8.1"
|
"vite-plugin-dts": "^3.9.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"rrweb-snapshot": "^2.0.0-alpha.15"
|
"rrweb-snapshot": "^2.0.0-alpha.15"
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"@types/webextension-polyfill": "^0.9.1",
|
"@types/webextension-polyfill": "^0.9.1",
|
||||||
"@vitejs/plugin-react": "^4.2.1",
|
"@vitejs/plugin-react": "^4.2.1",
|
||||||
"type-fest": "^2.19.0",
|
"type-fest": "^2.19.0",
|
||||||
"vite": "^5.2.8",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-web-extension": "^4.1.3",
|
"vite-plugin-web-extension": "^4.1.3",
|
||||||
"vite-plugin-zip-pack": "^1.2.2",
|
"vite-plugin-zip-pack": "^1.2.2",
|
||||||
"webextension-polyfill": "^0.10.0"
|
"webextension-polyfill": "^0.10.0"
|
||||||
|
|||||||
@@ -2,11 +2,11 @@ import Browser from 'webextension-polyfill';
|
|||||||
import type { eventWithTime } from '@rrweb/types';
|
import type { eventWithTime } from '@rrweb/types';
|
||||||
import Channel from '~/utils/channel';
|
import Channel from '~/utils/channel';
|
||||||
import {
|
import {
|
||||||
LocalData,
|
type LocalData,
|
||||||
LocalDataKey,
|
LocalDataKey,
|
||||||
RecorderStatus,
|
RecorderStatus,
|
||||||
Settings,
|
type Settings,
|
||||||
SyncData,
|
type SyncData,
|
||||||
SyncDataKey,
|
SyncDataKey,
|
||||||
} from '~/types';
|
} from '~/types';
|
||||||
import { pauseRecording, resumeRecording } from '~/utils/recording';
|
import { pauseRecording, resumeRecording } from '~/utils/recording';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Button, ButtonProps } from '@chakra-ui/react';
|
import { Button, type ButtonProps } from '@chakra-ui/react';
|
||||||
|
|
||||||
interface CircleButtonProps extends ButtonProps {
|
interface CircleButtonProps extends ButtonProps {
|
||||||
diameter: number;
|
diameter: number;
|
||||||
|
|||||||
@@ -12,8 +12,8 @@ import {
|
|||||||
Drawer,
|
Drawer,
|
||||||
DrawerContent,
|
DrawerContent,
|
||||||
useDisclosure,
|
useDisclosure,
|
||||||
BoxProps,
|
type BoxProps,
|
||||||
FlexProps,
|
type FlexProps,
|
||||||
Heading,
|
Heading,
|
||||||
Stack,
|
Stack,
|
||||||
Text,
|
Text,
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
import Browser, { Storage } from 'webextension-polyfill';
|
import Browser, { type Storage } from 'webextension-polyfill';
|
||||||
import { nanoid } from 'nanoid';
|
import { nanoid } from 'nanoid';
|
||||||
import type { eventWithTime } from '@rrweb/types';
|
import type { eventWithTime } from '@rrweb/types';
|
||||||
import {
|
import {
|
||||||
LocalData,
|
type LocalData,
|
||||||
LocalDataKey,
|
LocalDataKey,
|
||||||
RecorderStatus,
|
RecorderStatus,
|
||||||
ServiceName,
|
ServiceName,
|
||||||
Session,
|
type Session,
|
||||||
RecordStartedMessage,
|
type RecordStartedMessage,
|
||||||
RecordStoppedMessage,
|
type RecordStoppedMessage,
|
||||||
MessageName,
|
MessageName,
|
||||||
EmitEventMessage,
|
type EmitEventMessage,
|
||||||
} from '~/types';
|
} from '~/types';
|
||||||
import Channel from '~/utils/channel';
|
import Channel from '~/utils/channel';
|
||||||
import { isInCrossOriginIFrame } from '~/utils';
|
import { isInCrossOriginIFrame } from '~/utils';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { record } from 'rrweb';
|
import { record } from 'rrweb';
|
||||||
import type { recordOptions } from 'rrweb';
|
import type { recordOptions } from 'rrweb';
|
||||||
import type { eventWithTime } from '@rrweb/types';
|
import type { eventWithTime } from '@rrweb/types';
|
||||||
import { MessageName, RecordStartedMessage } from '~/types';
|
import { MessageName, type RecordStartedMessage } from '~/types';
|
||||||
import { isInCrossOriginIFrame } from '~/utils';
|
import { isInCrossOriginIFrame } from '~/utils';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -23,13 +23,13 @@ import {
|
|||||||
useReactTable,
|
useReactTable,
|
||||||
flexRender,
|
flexRender,
|
||||||
getCoreRowModel,
|
getCoreRowModel,
|
||||||
SortingState,
|
type SortingState,
|
||||||
getSortedRowModel,
|
getSortedRowModel,
|
||||||
PaginationState,
|
type PaginationState,
|
||||||
} from '@tanstack/react-table';
|
} from '@tanstack/react-table';
|
||||||
import { VscTriangleDown, VscTriangleUp } from 'react-icons/vsc';
|
import { VscTriangleDown, VscTriangleUp } from 'react-icons/vsc';
|
||||||
import { useNavigate } from 'react-router-dom';
|
import { useNavigate } from 'react-router-dom';
|
||||||
import { Session, EventName } from '~/types';
|
import { type Session, EventName } from '~/types';
|
||||||
import Channel from '~/utils/channel';
|
import Channel from '~/utils/channel';
|
||||||
import { deleteSessions, getAllSessions } from '~/utils/storage';
|
import { deleteSessions, getAllSessions } from '~/utils/storage';
|
||||||
import {
|
import {
|
||||||
|
|||||||
@@ -10,16 +10,13 @@ import {
|
|||||||
} from '@chakra-ui/react';
|
} from '@chakra-ui/react';
|
||||||
import { FiSettings, FiList, FiPause, FiPlay } from 'react-icons/fi';
|
import { FiSettings, FiList, FiPause, FiPlay } from 'react-icons/fi';
|
||||||
import Channel from '~/utils/channel';
|
import Channel from '~/utils/channel';
|
||||||
import {
|
import type {
|
||||||
LocalData,
|
LocalData,
|
||||||
LocalDataKey,
|
|
||||||
RecorderStatus,
|
|
||||||
ServiceName,
|
|
||||||
RecordStartedMessage,
|
RecordStartedMessage,
|
||||||
RecordStoppedMessage,
|
RecordStoppedMessage,
|
||||||
Session,
|
Session,
|
||||||
EventName,
|
|
||||||
} from '~/types';
|
} from '~/types';
|
||||||
|
import { LocalDataKey, RecorderStatus, ServiceName, EventName } from '~/types';
|
||||||
import Browser from 'webextension-polyfill';
|
import Browser from 'webextension-polyfill';
|
||||||
import { CircleButton } from '~/components/CircleButton';
|
import { CircleButton } from '~/components/CircleButton';
|
||||||
import { Timer } from './Timer';
|
import { Timer } from './Timer';
|
||||||
@@ -39,9 +36,8 @@ export function App() {
|
|||||||
void Browser.storage.local.get(LocalDataKey.recorderStatus).then((data) => {
|
void Browser.storage.local.get(LocalDataKey.recorderStatus).then((data) => {
|
||||||
const localData = data as LocalData;
|
const localData = data as LocalData;
|
||||||
if (!localData || !localData[LocalDataKey.recorderStatus]) return;
|
if (!localData || !localData[LocalDataKey.recorderStatus]) return;
|
||||||
const { status, startTimestamp, pausedTimestamp } = localData[
|
const { status, startTimestamp, pausedTimestamp } =
|
||||||
LocalDataKey.recorderStatus
|
localData[LocalDataKey.recorderStatus];
|
||||||
];
|
|
||||||
setStatus(status);
|
setStatus(status);
|
||||||
if (startTimestamp && pausedTimestamp)
|
if (startTimestamp && pausedTimestamp)
|
||||||
setStartTime(Date.now() - pausedTimestamp + startTimestamp || 0);
|
setStartTime(Date.now() - pausedTimestamp + startTimestamp || 0);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import mitt from 'mitt';
|
import mitt from 'mitt';
|
||||||
import Browser, { Runtime } from 'webextension-polyfill';
|
import Browser, { type Runtime } from 'webextension-polyfill';
|
||||||
|
|
||||||
export type Message = EventType | ServiceType;
|
export type Message = EventType | ServiceType;
|
||||||
export type EventType = {
|
export type EventType = {
|
||||||
|
|||||||
@@ -2,11 +2,11 @@ import Browser from 'webextension-polyfill';
|
|||||||
import type { eventWithTime } from '@rrweb/types';
|
import type { eventWithTime } from '@rrweb/types';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
LocalData,
|
type LocalData,
|
||||||
LocalDataKey,
|
LocalDataKey,
|
||||||
RecorderStatus,
|
RecorderStatus,
|
||||||
RecordStartedMessage,
|
type RecordStartedMessage,
|
||||||
RecordStoppedMessage,
|
type RecordStoppedMessage,
|
||||||
ServiceName,
|
ServiceName,
|
||||||
} from '~/types';
|
} from '~/types';
|
||||||
import type Channel from './channel';
|
import type Channel from './channel';
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
"sourceMap": true,
|
"sourceMap": true,
|
||||||
"skipLibCheck": true,
|
"skipLibCheck": true,
|
||||||
"declaration": true,
|
"declaration": true,
|
||||||
"importsNotUsedAsValues": "error",
|
"verbatimModuleSyntax": true,
|
||||||
"strict": true,
|
"strict": true,
|
||||||
"removeComments": true,
|
"removeComments": true,
|
||||||
"noImplicitAny": true,
|
"noImplicitAny": true,
|
||||||
|
|||||||
21
turbo.json
21
turbo.json
@@ -9,7 +9,7 @@
|
|||||||
],
|
],
|
||||||
"tasks": {
|
"tasks": {
|
||||||
"prepublish": {
|
"prepublish": {
|
||||||
"dependsOn": ["^prepublish"],
|
"dependsOn": ["^prepublish", "//#references:update"],
|
||||||
"outputs": [
|
"outputs": [
|
||||||
"lib/**",
|
"lib/**",
|
||||||
"es/**",
|
"es/**",
|
||||||
@@ -25,19 +25,28 @@
|
|||||||
},
|
},
|
||||||
"test:watch": {
|
"test:watch": {
|
||||||
"persistent": true,
|
"persistent": true,
|
||||||
"passThroughEnv": ["PUPPETEER_HEADLESS"]
|
"passThroughEnv": ["PUPPETEER_HEADLESS"],
|
||||||
|
"cache": false
|
||||||
},
|
},
|
||||||
"test:update": {
|
"test:update": {
|
||||||
"dependsOn": ["^prepublish"],
|
"dependsOn": ["^prepublish"],
|
||||||
"passThroughEnv": ["PUPPETEER_HEADLESS"]
|
"passThroughEnv": ["PUPPETEER_HEADLESS"]
|
||||||
},
|
},
|
||||||
"dev": {
|
"dev": {
|
||||||
// "dependsOn": ["^prepublish"],
|
"dependsOn": ["prepublish", "^prepublish"],
|
||||||
"persistent": true,
|
"persistent": true,
|
||||||
"cache": false,
|
"cache": false
|
||||||
"passThroughEnv": ["CLEAR_DIST_DIR"]
|
|
||||||
},
|
},
|
||||||
"lint": {},
|
"lint": {},
|
||||||
"check-types": {}
|
"check-types": {
|
||||||
|
"dependsOn": ["//#references:update"]
|
||||||
|
},
|
||||||
|
"//#references:update": {
|
||||||
|
"inputs": ["packages/*/package.json", "packages/plugins/*/package.json"],
|
||||||
|
"outputs": [
|
||||||
|
"packages/*/tsconfig.json",
|
||||||
|
"packages/plugins/*/tsconfig.json"
|
||||||
|
]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,8 @@ import { build, Format } from 'esbuild';
|
|||||||
import { resolve } from 'path';
|
import { resolve } from 'path';
|
||||||
import { umdWrapper } from 'esbuild-plugin-umd-wrapper';
|
import { umdWrapper } from 'esbuild-plugin-umd-wrapper';
|
||||||
|
|
||||||
const emptyOutDir = process.env.CLEAR_DIST_DIR !== 'false';
|
// don't empty out dir if --watch flag is passed
|
||||||
|
const emptyOutDir = !process.argv.includes('--watch');
|
||||||
|
|
||||||
function minifyAndUMDPlugin({
|
function minifyAndUMDPlugin({
|
||||||
name,
|
name,
|
||||||
|
|||||||
243
yarn.lock
243
yarn.lock
@@ -1866,116 +1866,231 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz#a70f4ac11c6a1dfc18b8bbb13284155d933b9537"
|
resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz#a70f4ac11c6a1dfc18b8bbb13284155d933b9537"
|
||||||
integrity sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==
|
integrity sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==
|
||||||
|
|
||||||
|
"@esbuild/aix-ppc64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f"
|
||||||
|
integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==
|
||||||
|
|
||||||
"@esbuild/android-arm64@0.20.2":
|
"@esbuild/android-arm64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz#db1c9202a5bc92ea04c7b6840f1bbe09ebf9e6b9"
|
resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz#db1c9202a5bc92ea04c7b6840f1bbe09ebf9e6b9"
|
||||||
integrity sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==
|
integrity sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==
|
||||||
|
|
||||||
|
"@esbuild/android-arm64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz#09d9b4357780da9ea3a7dfb833a1f1ff439b4052"
|
||||||
|
integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==
|
||||||
|
|
||||||
"@esbuild/android-arm@0.20.2":
|
"@esbuild/android-arm@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.20.2.tgz#3b488c49aee9d491c2c8f98a909b785870d6e995"
|
resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.20.2.tgz#3b488c49aee9d491c2c8f98a909b785870d6e995"
|
||||||
integrity sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==
|
integrity sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==
|
||||||
|
|
||||||
|
"@esbuild/android-arm@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz#9b04384fb771926dfa6d7ad04324ecb2ab9b2e28"
|
||||||
|
integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==
|
||||||
|
|
||||||
"@esbuild/android-x64@0.20.2":
|
"@esbuild/android-x64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.20.2.tgz#3b1628029e5576249d2b2d766696e50768449f98"
|
resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.20.2.tgz#3b1628029e5576249d2b2d766696e50768449f98"
|
||||||
integrity sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==
|
integrity sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==
|
||||||
|
|
||||||
|
"@esbuild/android-x64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz#29918ec2db754cedcb6c1b04de8cd6547af6461e"
|
||||||
|
integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==
|
||||||
|
|
||||||
"@esbuild/darwin-arm64@0.20.2":
|
"@esbuild/darwin-arm64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz#6e8517a045ddd86ae30c6608c8475ebc0c4000bb"
|
resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz#6e8517a045ddd86ae30c6608c8475ebc0c4000bb"
|
||||||
integrity sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==
|
integrity sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==
|
||||||
|
|
||||||
|
"@esbuild/darwin-arm64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz#e495b539660e51690f3928af50a76fb0a6ccff2a"
|
||||||
|
integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==
|
||||||
|
|
||||||
"@esbuild/darwin-x64@0.20.2":
|
"@esbuild/darwin-x64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz#90ed098e1f9dd8a9381695b207e1cff45540a0d0"
|
resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz#90ed098e1f9dd8a9381695b207e1cff45540a0d0"
|
||||||
integrity sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==
|
integrity sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==
|
||||||
|
|
||||||
|
"@esbuild/darwin-x64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz#c13838fa57372839abdddc91d71542ceea2e1e22"
|
||||||
|
integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==
|
||||||
|
|
||||||
"@esbuild/freebsd-arm64@0.20.2":
|
"@esbuild/freebsd-arm64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz#d71502d1ee89a1130327e890364666c760a2a911"
|
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz#d71502d1ee89a1130327e890364666c760a2a911"
|
||||||
integrity sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==
|
integrity sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==
|
||||||
|
|
||||||
|
"@esbuild/freebsd-arm64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz#646b989aa20bf89fd071dd5dbfad69a3542e550e"
|
||||||
|
integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==
|
||||||
|
|
||||||
"@esbuild/freebsd-x64@0.20.2":
|
"@esbuild/freebsd-x64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz#aa5ea58d9c1dd9af688b8b6f63ef0d3d60cea53c"
|
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz#aa5ea58d9c1dd9af688b8b6f63ef0d3d60cea53c"
|
||||||
integrity sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==
|
integrity sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==
|
||||||
|
|
||||||
|
"@esbuild/freebsd-x64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz#aa615cfc80af954d3458906e38ca22c18cf5c261"
|
||||||
|
integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==
|
||||||
|
|
||||||
"@esbuild/linux-arm64@0.20.2":
|
"@esbuild/linux-arm64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz#055b63725df678379b0f6db9d0fa85463755b2e5"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz#055b63725df678379b0f6db9d0fa85463755b2e5"
|
||||||
integrity sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==
|
integrity sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==
|
||||||
|
|
||||||
|
"@esbuild/linux-arm64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz#70ac6fa14f5cb7e1f7f887bcffb680ad09922b5b"
|
||||||
|
integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==
|
||||||
|
|
||||||
"@esbuild/linux-arm@0.20.2":
|
"@esbuild/linux-arm@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz#76b3b98cb1f87936fbc37f073efabad49dcd889c"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz#76b3b98cb1f87936fbc37f073efabad49dcd889c"
|
||||||
integrity sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==
|
integrity sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==
|
||||||
|
|
||||||
|
"@esbuild/linux-arm@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz#fc6fd11a8aca56c1f6f3894f2bea0479f8f626b9"
|
||||||
|
integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==
|
||||||
|
|
||||||
"@esbuild/linux-ia32@0.20.2":
|
"@esbuild/linux-ia32@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz#c0e5e787c285264e5dfc7a79f04b8b4eefdad7fa"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz#c0e5e787c285264e5dfc7a79f04b8b4eefdad7fa"
|
||||||
integrity sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==
|
integrity sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==
|
||||||
|
|
||||||
|
"@esbuild/linux-ia32@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz#3271f53b3f93e3d093d518d1649d6d68d346ede2"
|
||||||
|
integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==
|
||||||
|
|
||||||
"@esbuild/linux-loong64@0.20.2":
|
"@esbuild/linux-loong64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz#a6184e62bd7cdc63e0c0448b83801001653219c5"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz#a6184e62bd7cdc63e0c0448b83801001653219c5"
|
||||||
integrity sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==
|
integrity sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==
|
||||||
|
|
||||||
|
"@esbuild/linux-loong64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz#ed62e04238c57026aea831c5a130b73c0f9f26df"
|
||||||
|
integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==
|
||||||
|
|
||||||
"@esbuild/linux-mips64el@0.20.2":
|
"@esbuild/linux-mips64el@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz#d08e39ce86f45ef8fc88549d29c62b8acf5649aa"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz#d08e39ce86f45ef8fc88549d29c62b8acf5649aa"
|
||||||
integrity sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==
|
integrity sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==
|
||||||
|
|
||||||
|
"@esbuild/linux-mips64el@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz#e79b8eb48bf3b106fadec1ac8240fb97b4e64cbe"
|
||||||
|
integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==
|
||||||
|
|
||||||
"@esbuild/linux-ppc64@0.20.2":
|
"@esbuild/linux-ppc64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz#8d252f0b7756ffd6d1cbde5ea67ff8fd20437f20"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz#8d252f0b7756ffd6d1cbde5ea67ff8fd20437f20"
|
||||||
integrity sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==
|
integrity sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==
|
||||||
|
|
||||||
|
"@esbuild/linux-ppc64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz#5f2203860a143b9919d383ef7573521fb154c3e4"
|
||||||
|
integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==
|
||||||
|
|
||||||
"@esbuild/linux-riscv64@0.20.2":
|
"@esbuild/linux-riscv64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz#19f6dcdb14409dae607f66ca1181dd4e9db81300"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz#19f6dcdb14409dae607f66ca1181dd4e9db81300"
|
||||||
integrity sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==
|
integrity sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==
|
||||||
|
|
||||||
|
"@esbuild/linux-riscv64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz#07bcafd99322d5af62f618cb9e6a9b7f4bb825dc"
|
||||||
|
integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==
|
||||||
|
|
||||||
"@esbuild/linux-s390x@0.20.2":
|
"@esbuild/linux-s390x@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz#3c830c90f1a5d7dd1473d5595ea4ebb920988685"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz#3c830c90f1a5d7dd1473d5595ea4ebb920988685"
|
||||||
integrity sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==
|
integrity sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==
|
||||||
|
|
||||||
|
"@esbuild/linux-s390x@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz#b7ccf686751d6a3e44b8627ababc8be3ef62d8de"
|
||||||
|
integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==
|
||||||
|
|
||||||
"@esbuild/linux-x64@0.20.2":
|
"@esbuild/linux-x64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz#86eca35203afc0d9de0694c64ec0ab0a378f6fff"
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz#86eca35203afc0d9de0694c64ec0ab0a378f6fff"
|
||||||
integrity sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==
|
integrity sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==
|
||||||
|
|
||||||
|
"@esbuild/linux-x64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz#6d8f0c768e070e64309af8004bb94e68ab2bb3b0"
|
||||||
|
integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==
|
||||||
|
|
||||||
"@esbuild/netbsd-x64@0.20.2":
|
"@esbuild/netbsd-x64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz#e771c8eb0e0f6e1877ffd4220036b98aed5915e6"
|
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz#e771c8eb0e0f6e1877ffd4220036b98aed5915e6"
|
||||||
integrity sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==
|
integrity sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==
|
||||||
|
|
||||||
|
"@esbuild/netbsd-x64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz#bbe430f60d378ecb88decb219c602667387a6047"
|
||||||
|
integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==
|
||||||
|
|
||||||
"@esbuild/openbsd-x64@0.20.2":
|
"@esbuild/openbsd-x64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz#9a795ae4b4e37e674f0f4d716f3e226dd7c39baf"
|
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz#9a795ae4b4e37e674f0f4d716f3e226dd7c39baf"
|
||||||
integrity sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==
|
integrity sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==
|
||||||
|
|
||||||
|
"@esbuild/openbsd-x64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz#99d1cf2937279560d2104821f5ccce220cb2af70"
|
||||||
|
integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==
|
||||||
|
|
||||||
"@esbuild/sunos-x64@0.20.2":
|
"@esbuild/sunos-x64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz#7df23b61a497b8ac189def6e25a95673caedb03f"
|
resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz#7df23b61a497b8ac189def6e25a95673caedb03f"
|
||||||
integrity sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==
|
integrity sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==
|
||||||
|
|
||||||
|
"@esbuild/sunos-x64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz#08741512c10d529566baba837b4fe052c8f3487b"
|
||||||
|
integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==
|
||||||
|
|
||||||
"@esbuild/win32-arm64@0.20.2":
|
"@esbuild/win32-arm64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz#f1ae5abf9ca052ae11c1bc806fb4c0f519bacf90"
|
resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz#f1ae5abf9ca052ae11c1bc806fb4c0f519bacf90"
|
||||||
integrity sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==
|
integrity sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==
|
||||||
|
|
||||||
|
"@esbuild/win32-arm64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz#675b7385398411240735016144ab2e99a60fc75d"
|
||||||
|
integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==
|
||||||
|
|
||||||
"@esbuild/win32-ia32@0.20.2":
|
"@esbuild/win32-ia32@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz#241fe62c34d8e8461cd708277813e1d0ba55ce23"
|
resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz#241fe62c34d8e8461cd708277813e1d0ba55ce23"
|
||||||
integrity sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==
|
integrity sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==
|
||||||
|
|
||||||
|
"@esbuild/win32-ia32@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz#1bfc3ce98aa6ca9a0969e4d2af72144c59c1193b"
|
||||||
|
integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==
|
||||||
|
|
||||||
"@esbuild/win32-x64@0.20.2":
|
"@esbuild/win32-x64@0.20.2":
|
||||||
version "0.20.2"
|
version "0.20.2"
|
||||||
resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz#9c907b21e30a52db959ba4f80bb01a0cc403d5cc"
|
resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz#9c907b21e30a52db959ba4f80bb01a0cc403d5cc"
|
||||||
integrity sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==
|
integrity sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==
|
||||||
|
|
||||||
|
"@esbuild/win32-x64@0.21.5":
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz#acad351d582d157bb145535db2a6ff53dd514b5c"
|
||||||
|
integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==
|
||||||
|
|
||||||
"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
|
"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
|
||||||
version "4.4.0"
|
version "4.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59"
|
resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59"
|
||||||
@@ -5424,6 +5539,35 @@ esbuild@^0.20.1:
|
|||||||
"@esbuild/win32-ia32" "0.20.2"
|
"@esbuild/win32-ia32" "0.20.2"
|
||||||
"@esbuild/win32-x64" "0.20.2"
|
"@esbuild/win32-x64" "0.20.2"
|
||||||
|
|
||||||
|
esbuild@^0.21.3:
|
||||||
|
version "0.21.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.21.5.tgz#9ca301b120922959b766360d8ac830da0d02997d"
|
||||||
|
integrity sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==
|
||||||
|
optionalDependencies:
|
||||||
|
"@esbuild/aix-ppc64" "0.21.5"
|
||||||
|
"@esbuild/android-arm" "0.21.5"
|
||||||
|
"@esbuild/android-arm64" "0.21.5"
|
||||||
|
"@esbuild/android-x64" "0.21.5"
|
||||||
|
"@esbuild/darwin-arm64" "0.21.5"
|
||||||
|
"@esbuild/darwin-x64" "0.21.5"
|
||||||
|
"@esbuild/freebsd-arm64" "0.21.5"
|
||||||
|
"@esbuild/freebsd-x64" "0.21.5"
|
||||||
|
"@esbuild/linux-arm" "0.21.5"
|
||||||
|
"@esbuild/linux-arm64" "0.21.5"
|
||||||
|
"@esbuild/linux-ia32" "0.21.5"
|
||||||
|
"@esbuild/linux-loong64" "0.21.5"
|
||||||
|
"@esbuild/linux-mips64el" "0.21.5"
|
||||||
|
"@esbuild/linux-ppc64" "0.21.5"
|
||||||
|
"@esbuild/linux-riscv64" "0.21.5"
|
||||||
|
"@esbuild/linux-s390x" "0.21.5"
|
||||||
|
"@esbuild/linux-x64" "0.21.5"
|
||||||
|
"@esbuild/netbsd-x64" "0.21.5"
|
||||||
|
"@esbuild/openbsd-x64" "0.21.5"
|
||||||
|
"@esbuild/sunos-x64" "0.21.5"
|
||||||
|
"@esbuild/win32-arm64" "0.21.5"
|
||||||
|
"@esbuild/win32-ia32" "0.21.5"
|
||||||
|
"@esbuild/win32-x64" "0.21.5"
|
||||||
|
|
||||||
escalade@^3.1.1:
|
escalade@^3.1.1:
|
||||||
version "3.1.1"
|
version "3.1.1"
|
||||||
resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz"
|
resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz"
|
||||||
@@ -10741,47 +10885,47 @@ tty-table@^4.1.5:
|
|||||||
wcwidth "^1.0.1"
|
wcwidth "^1.0.1"
|
||||||
yargs "^17.1.1"
|
yargs "^17.1.1"
|
||||||
|
|
||||||
turbo-darwin-64@2.0.3:
|
turbo-darwin-64@2.0.4:
|
||||||
version "2.0.3"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/turbo-darwin-64/-/turbo-darwin-64-2.0.3.tgz#52c5f79b4027dfd0184fb963da41bf989be4a00d"
|
resolved "https://registry.yarnpkg.com/turbo-darwin-64/-/turbo-darwin-64-2.0.4.tgz#83c7835f8ba1f7a5473487ce73cfc8d5ad523614"
|
||||||
integrity sha512-v7ztJ8sxdHw3SLfO2MhGFeeU4LQhFii1hIGs9uBiXns/0YTGOvxLeifnfGqhfSrAIIhrCoByXO7nR9wlm10n3Q==
|
integrity sha512-x9mvmh4wudBstML8Z8IOmokLWglIhSfhQwnh2gBCSqabgVBKYvzl8Y+i+UCNPxheCGTgtsPepTcIaKBIyFIcvw==
|
||||||
|
|
||||||
turbo-darwin-arm64@2.0.3:
|
turbo-darwin-arm64@2.0.4:
|
||||||
version "2.0.3"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.3.tgz#46fa54d0cd95782ac38015e3396d59cdbdeb1eb8"
|
resolved "https://registry.yarnpkg.com/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.4.tgz#046e5768e9d6b490b7108d5bef3f4a1594aca0ba"
|
||||||
integrity sha512-LUcqvkV9Bxtng6QHbevp8IK8zzwbIxM6HMjCE7FEW6yJBN1KwvTtRtsGBwwmTxaaLO0wD1Jgl3vgkXAmQ4fqUw==
|
integrity sha512-/B1Ih8zPRGVw5vw4SlclOf3C/woJ/2T6ieH6u54KT4wypoaVyaiyMqBcziIXycdObIYr7jQ+raHO7q3mhay9/A==
|
||||||
|
|
||||||
turbo-linux-64@2.0.3:
|
turbo-linux-64@2.0.4:
|
||||||
version "2.0.3"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/turbo-linux-64/-/turbo-linux-64-2.0.3.tgz#17d6714b32381d474ef2ee5613343165f9bd75bc"
|
resolved "https://registry.yarnpkg.com/turbo-linux-64/-/turbo-linux-64-2.0.4.tgz#eab8c183a11b26ddec251d62778313a495971e4f"
|
||||||
integrity sha512-xpdY1suXoEbsQsu0kPep2zrB8ijv/S5aKKrntGuQ62hCiwDFoDcA/Z7FZ8IHQ2u+dpJARa7yfiByHmizFE0r5Q==
|
integrity sha512-6aG670e5zOWu6RczEYcB81nEl8EhiGJEvWhUrnAfNEUIMBEH1pR5SsMmG2ol5/m3PgiRM12r13dSqTxCLcHrVg==
|
||||||
|
|
||||||
turbo-linux-arm64@2.0.3:
|
turbo-linux-arm64@2.0.4:
|
||||||
version "2.0.3"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/turbo-linux-arm64/-/turbo-linux-arm64-2.0.3.tgz#4f1bfe421dcecf2fb1164a1e223ba310d6e28b6f"
|
resolved "https://registry.yarnpkg.com/turbo-linux-arm64/-/turbo-linux-arm64-2.0.4.tgz#2dcc3f1d3e56209736b2ce3d849b80e0d7116e42"
|
||||||
integrity sha512-MBACTcSR874L1FtLL7gkgbI4yYJWBUCqeBN/iE29D+8EFe0d3fAyviFlbQP4K/HaDYet1i26xkkOiWr0z7/V9A==
|
integrity sha512-AXfVOjst+mCtPDFT4tCu08Qrfv12Nj7NDd33AjGwV79NYN1Y1rcFY59UQ4nO3ij3rbcvV71Xc+TZJ4csEvRCSg==
|
||||||
|
|
||||||
turbo-windows-64@2.0.3:
|
turbo-windows-64@2.0.4:
|
||||||
version "2.0.3"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/turbo-windows-64/-/turbo-windows-64-2.0.3.tgz#9d1b99aff361bcbf4e065029e9dfa6682a0c0b2d"
|
resolved "https://registry.yarnpkg.com/turbo-windows-64/-/turbo-windows-64-2.0.4.tgz#b2440d82892c983088ed386f9126d365594fc1a5"
|
||||||
integrity sha512-zi3YuKPkM9JxMTshZo3excPk37hUrj5WfnCqh4FjI26ux6j/LJK+Dh3SebMHd9mR7wP9CMam4GhmLCT+gDfM+w==
|
integrity sha512-QOnUR9hKl0T5gq5h1fAhVEqBSjpcBi/BbaO71YGQNgsr6pAnCQdbG8/r3MYXet53efM0KTdOhieWeO3KLNKybA==
|
||||||
|
|
||||||
turbo-windows-arm64@2.0.3:
|
turbo-windows-arm64@2.0.4:
|
||||||
version "2.0.3"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/turbo-windows-arm64/-/turbo-windows-arm64-2.0.3.tgz#0e0641acda3325a4a3d28123ef21017a7aae8f38"
|
resolved "https://registry.yarnpkg.com/turbo-windows-arm64/-/turbo-windows-arm64-2.0.4.tgz#e943709535baf233f5b85ed35cd95dcf86815283"
|
||||||
integrity sha512-wmed4kkenLvRbidi7gISB4PU77ujBuZfgVGDZ4DXTFslE/kYpINulwzkVwJIvNXsJtHqyOq0n6jL8Zwl3BrwDg==
|
integrity sha512-3v8WpdZy1AxZw0gha0q3caZmm+0gveBQ40OspD6mxDBIS+oBtO5CkxhIXkFJJW+jDKmDlM7wXDIGfMEq+QyNCQ==
|
||||||
|
|
||||||
turbo@^2.0.3:
|
turbo@^2.0.4:
|
||||||
version "2.0.3"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/turbo/-/turbo-2.0.3.tgz#789f64666d15dbc6fc85ce507a6c6888d70df88f"
|
resolved "https://registry.yarnpkg.com/turbo/-/turbo-2.0.4.tgz#4fb6f0bf3be905953825de0368203e849c91e412"
|
||||||
integrity sha512-jF1K0tTUyryEWmgqk1V0ALbSz3VdeZ8FXUo6B64WsPksCMCE48N5jUezGOH2MN0+epdaRMH8/WcPU0QQaVfeLA==
|
integrity sha512-Ilme/2Q5kYw0AeRr+aw3s02+WrEYaY7U8vPnqSZU/jaDG/qd6jHVN6nRWyd/9KXvJGYM69vE6JImoGoyNjLwaw==
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
turbo-darwin-64 "2.0.3"
|
turbo-darwin-64 "2.0.4"
|
||||||
turbo-darwin-arm64 "2.0.3"
|
turbo-darwin-arm64 "2.0.4"
|
||||||
turbo-linux-64 "2.0.3"
|
turbo-linux-64 "2.0.4"
|
||||||
turbo-linux-arm64 "2.0.3"
|
turbo-linux-arm64 "2.0.4"
|
||||||
turbo-windows-64 "2.0.3"
|
turbo-windows-64 "2.0.4"
|
||||||
turbo-windows-arm64 "2.0.3"
|
turbo-windows-arm64 "2.0.4"
|
||||||
|
|
||||||
type-check@^0.4.0, type-check@~0.4.0:
|
type-check@^0.4.0, type-check@~0.4.0:
|
||||||
version "0.4.0"
|
version "0.4.0"
|
||||||
@@ -10876,16 +11020,16 @@ typescript@5.4.2:
|
|||||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.2.tgz#0ae9cebcfae970718474fe0da2c090cad6577372"
|
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.2.tgz#0ae9cebcfae970718474fe0da2c090cad6577372"
|
||||||
integrity sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==
|
integrity sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==
|
||||||
|
|
||||||
typescript@^4.7.3, typescript@^4.9.0, typescript@^4.9.5:
|
|
||||||
version "4.9.5"
|
|
||||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
|
|
||||||
integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==
|
|
||||||
|
|
||||||
typescript@^5.0.3:
|
typescript@^5.0.3:
|
||||||
version "5.1.6"
|
version "5.1.6"
|
||||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274"
|
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274"
|
||||||
integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==
|
integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==
|
||||||
|
|
||||||
|
typescript@^5.4.5:
|
||||||
|
version "5.4.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611"
|
||||||
|
integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==
|
||||||
|
|
||||||
uc.micro@^1.0.1, uc.micro@^1.0.5:
|
uc.micro@^1.0.1, uc.micro@^1.0.5:
|
||||||
version "1.0.6"
|
version "1.0.6"
|
||||||
resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac"
|
resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac"
|
||||||
@@ -11064,10 +11208,10 @@ vite-node@1.4.0:
|
|||||||
picocolors "^1.0.0"
|
picocolors "^1.0.0"
|
||||||
vite "^5.0.0"
|
vite "^5.0.0"
|
||||||
|
|
||||||
vite-plugin-dts@^3.8.1:
|
vite-plugin-dts@^3.9.1:
|
||||||
version "3.8.1"
|
version "3.9.1"
|
||||||
resolved "https://registry.yarnpkg.com/vite-plugin-dts/-/vite-plugin-dts-3.8.1.tgz#a6bbdc9762acce21d0fee8812d1c73085b49dee5"
|
resolved "https://registry.yarnpkg.com/vite-plugin-dts/-/vite-plugin-dts-3.9.1.tgz#625ad388ec3956708ccec7960550a7b0a8e8909e"
|
||||||
integrity sha512-zEYyQxH7lKto1VTKZHF3ZZeOPkkJgnMrePY4VxDHfDSvDjmYMMfWjZxYmNwW8QxbaItWJQhhXY+geAbyNphI7g==
|
integrity sha512-rVp2KM9Ue22NGWB8dNtWEr+KekN3rIgz1tWD050QnRGlriUCmaDwa7qA5zDEjbXg5lAXhYMSBJtx3q3hQIJZSg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@microsoft/api-extractor" "7.43.0"
|
"@microsoft/api-extractor" "7.43.0"
|
||||||
"@rollup/pluginutils" "^5.1.0"
|
"@rollup/pluginutils" "^5.1.0"
|
||||||
@@ -11102,7 +11246,7 @@ vite-plugin-zip-pack@^1.2.2:
|
|||||||
dependencies:
|
dependencies:
|
||||||
jszip "^3.10.1"
|
jszip "^3.10.1"
|
||||||
|
|
||||||
vite@^5.0.0, "vite@^5.0.0 || ^4.1.4", vite@^5.2.8:
|
vite@^5.0.0, "vite@^5.0.0 || ^4.1.4":
|
||||||
version "5.2.8"
|
version "5.2.8"
|
||||||
resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.8.tgz#a99e09939f1a502992381395ce93efa40a2844aa"
|
resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.8.tgz#a99e09939f1a502992381395ce93efa40a2844aa"
|
||||||
integrity sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==
|
integrity sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==
|
||||||
@@ -11113,6 +11257,17 @@ vite@^5.0.0, "vite@^5.0.0 || ^4.1.4", vite@^5.2.8:
|
|||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
fsevents "~2.3.3"
|
fsevents "~2.3.3"
|
||||||
|
|
||||||
|
vite@^5.3.1:
|
||||||
|
version "5.3.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/vite/-/vite-5.3.1.tgz#bb2ca6b5fd7483249d3e86b25026e27ba8a663e6"
|
||||||
|
integrity sha512-XBmSKRLXLxiaPYamLv3/hnP/KXDai1NDexN0FpkTaZXTfycHvkRHoenpgl/fvuK/kPbB6xAgoyiryAhQNxYmAQ==
|
||||||
|
dependencies:
|
||||||
|
esbuild "^0.21.3"
|
||||||
|
postcss "^8.4.38"
|
||||||
|
rollup "^4.13.0"
|
||||||
|
optionalDependencies:
|
||||||
|
fsevents "~2.3.3"
|
||||||
|
|
||||||
vitefu@^0.2.5:
|
vitefu@^0.2.5:
|
||||||
version "0.2.5"
|
version "0.2.5"
|
||||||
resolved "https://registry.yarnpkg.com/vitefu/-/vitefu-0.2.5.tgz#c1b93c377fbdd3e5ddd69840ea3aa70b40d90969"
|
resolved "https://registry.yarnpkg.com/vitefu/-/vitefu-0.2.5.tgz#c1b93c377fbdd3e5ddd69840ea3aa70b40d90969"
|
||||||
|
|||||||
Reference in New Issue
Block a user