mirror of
https://github.com/OpenBankProject/API-Explorer-II.git
synced 2026-02-06 02:36:46 +00:00
streaming WIP
This commit is contained in:
parent
6bf77bdf7b
commit
2faf6737c5
1
.gitignore
vendored
1
.gitignore
vendored
@ -38,7 +38,6 @@ tsconfig.node.tsbuildinfo
|
||||
vite.config.d.ts
|
||||
vite.config.js
|
||||
vitest.config.d.ts
|
||||
vitest.config.js
|
||||
components.d.ts
|
||||
|
||||
#keys
|
||||
|
||||
1
components.d.ts
vendored
1
components.d.ts
vendored
@ -7,6 +7,7 @@ export {}
|
||||
/* prettier-ignore */
|
||||
declare module 'vue' {
|
||||
export interface GlobalComponents {
|
||||
ChatMessage: typeof import('./src/components/ChatMessage.vue')['default']
|
||||
ChatWidget: typeof import('./src/components/ChatWidget.vue')['default']
|
||||
ChatWidgetII: typeof import('./src/components/ChatWidgetII.vue')['default']
|
||||
ChatWidgetOld: typeof import('./src/components/ChatWidgetOld.vue')['default']
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
"build": "run-p build-only",
|
||||
"build-server": "tsc --project tsconfig.server.json",
|
||||
"preview": "vite preview",
|
||||
"test:unit": "vitest",
|
||||
"test:vue": "vitest",
|
||||
"test": "jest --silent=false",
|
||||
"build-only": "vite build",
|
||||
"type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false",
|
||||
@ -58,6 +58,7 @@
|
||||
"devDependencies": {
|
||||
"@ai-sdk/vue": "^1.1.18",
|
||||
"@rushstack/eslint-patch": "^1.4.0",
|
||||
"@testing-library/vue": "^8.1.0",
|
||||
"@types/jest": "^29.5.14",
|
||||
"@types/jsdom": "^21.1.7",
|
||||
"@types/jsonwebtoken": "^9.0.6",
|
||||
@ -71,6 +72,7 @@
|
||||
"@vue/tsconfig": "^0.1.3",
|
||||
"eslint": "^9.15.0",
|
||||
"eslint-plugin-vue": "^9.12.0",
|
||||
"happy-dom": "^17.1.4",
|
||||
"jest": "^29.7.0",
|
||||
"jsdom": "^25.0.1",
|
||||
"node-mocks-http": "^1.16.2",
|
||||
@ -87,7 +89,7 @@
|
||||
"vite": "^4.4.0",
|
||||
"vite-plugin-node-polyfills": "^0.10.0",
|
||||
"vite-plugin-rewrite-all": "^1.0.2",
|
||||
"vitest": "^0.34.0",
|
||||
"vitest": "^0.34.6",
|
||||
"vue-tsc": "^2.0.0"
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,11 +1,13 @@
|
||||
import { Controller, Session, Req, Res, Post, Get } from 'routing-controllers'
|
||||
import { Request, Response } from 'express'
|
||||
import { pipeline } from "node:stream/promises"
|
||||
import { Transform, pipeline } from "node:stream"
|
||||
import { Service } from 'typedi'
|
||||
import OBPClientService from '../services/OBPClientService'
|
||||
import OpeyClientService from '../services/OpeyClientService'
|
||||
import { LangChainAdapter, streamText } from 'ai';
|
||||
|
||||
import { UserInput } from '../schema/OpeySchema'
|
||||
import { strictEqual } from 'node:assert'
|
||||
|
||||
@Service()
|
||||
@Controller('/opey')
|
||||
@ -44,8 +46,10 @@ export class OpeyController {
|
||||
|
||||
let user_input: UserInput
|
||||
try {
|
||||
user_input = {
|
||||
"message": request.body.message,
|
||||
console.log("Request body: ", request.body)
|
||||
const user_message = request.body.messages[request.body.messages.length - 1]
|
||||
user_input = {
|
||||
"message": user_message.content,
|
||||
"thread_id": request.body.thread_id,
|
||||
"is_tool_call_approval": request.body.is_tool_call_approval
|
||||
}
|
||||
@ -55,44 +59,96 @@ export class OpeyController {
|
||||
}
|
||||
|
||||
|
||||
console.log("Calling OpeyClientService.stream")
|
||||
|
||||
// const streamMiddlewareTransform = new Transform({
|
||||
// transform(chunk, encoding, callback) {
|
||||
// console.log(`Logged Chunk: ${chunk}`)
|
||||
// this.push(chunk);
|
||||
|
||||
// callback();
|
||||
// }
|
||||
// })
|
||||
// Define a function to transform the response from Opey into a pure langchain stream format
|
||||
const transformToPureLangchain = new TransformStream({
|
||||
transform(chunk, controller) {
|
||||
// Decode the chunk to a string
|
||||
const decodedChunk = new TextDecoder().decode(chunk)
|
||||
console.log('[transform]', decodedChunk);
|
||||
const dataString = decodedChunk.split('data: ')[1]
|
||||
controller.enqueue(dataString);
|
||||
},
|
||||
flush(controller) {
|
||||
console.log('[flush]');
|
||||
controller.terminate();
|
||||
},
|
||||
});
|
||||
|
||||
let stream: NodeJS.ReadableStream | null = null
|
||||
let stream: ReadableStream | null = null
|
||||
|
||||
try {
|
||||
// Read stream from OpeyClientService
|
||||
console.log("Calling OpeyClientService.stream")
|
||||
stream = await this.opeyClientService.stream(user_input)
|
||||
console.debug(`Stream received readable: ${stream?.readable}`)
|
||||
//console.debug(`Stream received readable: ${stream?.readable}`)
|
||||
|
||||
} catch (error) {
|
||||
console.error("Error reading stream: ", error)
|
||||
return response.status(500).json({ error: 'Internal Server Error' })
|
||||
}
|
||||
|
||||
if (!stream || !stream.readable) {
|
||||
if (!stream) {
|
||||
console.error("Stream is not recieved or not readable")
|
||||
return response.status(500).json({ error: 'Internal Server Error' })
|
||||
}
|
||||
|
||||
return new Promise<Response>((resolve, reject) => {
|
||||
stream.pipe(response)
|
||||
stream.on('end', () => {
|
||||
response.status(200)
|
||||
resolve(response)
|
||||
// pipeline(stream, convertToVercelTansform, response, (error) => {
|
||||
// if (error) {
|
||||
// console.error("Error piping stream: ", error)
|
||||
// reject(error)
|
||||
// } else {
|
||||
// console.log("Stream piped successfully")
|
||||
// resolve(response)
|
||||
// }
|
||||
// })
|
||||
const streamTee = stream.tee()
|
||||
if (!streamTee) {
|
||||
console.error("Stream is not tee'd")
|
||||
return response.status(500).json({ error: 'Internal Server Error' })
|
||||
}
|
||||
const [stream1, stream2] = streamTee
|
||||
|
||||
const reader = stream1.getReader()
|
||||
let charsReceived = 0;
|
||||
const decoder = new TextDecoder();
|
||||
|
||||
// this is simply to log the stream to console
|
||||
reader.read().then(function processText({ done, value }) {
|
||||
// Result objects contain two properties:
|
||||
// done - true if the stream has already given you all its data.
|
||||
// value - some data. Always undefined when done is true.
|
||||
if (done) {
|
||||
console.log("Stream complete");
|
||||
return;
|
||||
}
|
||||
|
||||
// value for fetch streams is a Uint8Array
|
||||
charsReceived += value.length;
|
||||
const chunk = value;
|
||||
console.log("Chunk: ", decoder.decode(chunk), "\n\nChars received: ", charsReceived);
|
||||
|
||||
return reader.read().then(processText);
|
||||
})
|
||||
stream.on('error', (error) => {
|
||||
console.error("Error piping stream: ", error)
|
||||
|
||||
try {
|
||||
const vercelDataStream = LangChainAdapter.toDataStream(stream2)
|
||||
resolve(vercelDataStream)
|
||||
} catch (error) {
|
||||
reject(error)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
// stream.on('end', () => {
|
||||
// response.status(200)
|
||||
// resolve(response)
|
||||
// })
|
||||
// stream.on('error', (error) => {
|
||||
// console.error("Error piping stream: ", error)
|
||||
// reject(error)
|
||||
// })
|
||||
|
||||
})
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { Service } from 'typedi'
|
||||
import { UserInput, StreamInput, OpeyConfig, AuthConfig } from '../schema/OpeySchema'
|
||||
import { Readable } from "stream"
|
||||
import fetch from 'node-fetch'
|
||||
//import fetch from 'node-fetch'
|
||||
|
||||
@Service()
|
||||
export default class OpeyClientService {
|
||||
@ -17,7 +17,7 @@ export default class OpeyClientService {
|
||||
authConfig: this.authConfig,
|
||||
paths: {
|
||||
status: '/status',
|
||||
stream: '/stream',
|
||||
stream: '/stream-langchain',
|
||||
invoke: '/invoke',
|
||||
approve_tool: '/approve_tool/{thead_id}',
|
||||
feedback: '/feedback',
|
||||
@ -73,7 +73,7 @@ export default class OpeyClientService {
|
||||
|
||||
console.log("Got response body: ", response.body) //DEBUG
|
||||
|
||||
return response.body
|
||||
return response.body as unknown as ReadableStream<any>
|
||||
}
|
||||
catch (error) {
|
||||
throw new Error(`Error streaming from Opey: ${error}`)
|
||||
|
||||
@ -6,11 +6,26 @@ placeholder for Opey II Chat widget
|
||||
import { ref, reactive } from 'vue'
|
||||
import { useChat } from '@ai-sdk/vue'
|
||||
import { Close } from '@element-plus/icons-vue'
|
||||
import ChatMessage from './ChatMessage.vue';
|
||||
import { v4 as uuidv4 } from 'uuid';
|
||||
|
||||
export default {
|
||||
setup () {
|
||||
const { messages, input, handleInputChange, handleSubmit, addToolResult, status } = useChat({
|
||||
api:'/api/opey/stream'
|
||||
api:'/api/opey/stream',
|
||||
streamProtocol: 'data',
|
||||
onMessage: (message) => {
|
||||
console.log(`Message in useChat: ${message}`)
|
||||
},
|
||||
onError: (error) => {
|
||||
console.log(`Error in useChat: ${error.message}`)
|
||||
},
|
||||
onFinish: () => {
|
||||
console.log('Chat finished')
|
||||
console.log('Messages:', messages);
|
||||
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
return {
|
||||
@ -31,17 +46,26 @@ export default {
|
||||
input_content: '',
|
||||
thread_id: '',
|
||||
}),
|
||||
thread_id: uuidv4(),
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ChatMessage,
|
||||
},
|
||||
methods: {
|
||||
toggleChat() {
|
||||
this.chatOpen = !this.chatOpen
|
||||
},
|
||||
async onSubmit() {
|
||||
this.handleSubmit(chatRequestOptions={
|
||||
async onSubmit(event) {
|
||||
|
||||
this.handleSubmit(event, {
|
||||
body: {
|
||||
thread_id: this.thread_id,
|
||||
is_tool_call_approval: false,
|
||||
},
|
||||
})
|
||||
}
|
||||
console.log("Status: ", this.status)
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@ -65,9 +89,8 @@ export default {
|
||||
<el-button type="danger" :icon="this.Close" @click="this.toggleChat" size="small" circle></el-button>
|
||||
</el-header>
|
||||
<el-main>
|
||||
<div v-for="message in messages" :key="message.id">
|
||||
<div>{{ message.role }}</div>
|
||||
<div>{{ message.content }}</div>
|
||||
<div class="messages-container">
|
||||
<ChatMessage v-for="message in messages" :key="message.id" :message="message" />
|
||||
</div>
|
||||
</el-main>
|
||||
<el-footer>
|
||||
@ -157,4 +180,8 @@ export default {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
.messages-container {
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
</style>
|
||||
@ -1,163 +0,0 @@
|
||||
import { OpeyController } from "../server/controllers/OpeyIIController";
|
||||
import OpeyClientService from '../server/services/OpeyClientService';
|
||||
import OBPClientService from '../server/services/OBPClientService';
|
||||
import Stream, { Readable } from 'stream';
|
||||
import { Request, Response } from 'express';
|
||||
import httpMocks from 'node-mocks-http'
|
||||
import { EventEmitter } from 'events';
|
||||
import {jest} from '@jest/globals';
|
||||
|
||||
jest.mock("../server/services/OpeyClientService", () => {
|
||||
return {
|
||||
OpeyClientService: jest.fn().mockImplementation(() => {
|
||||
return {
|
||||
getOpeyStatus: jest.fn(async () => {
|
||||
return {status: 'running'}
|
||||
}),
|
||||
stream: jest.fn(async () => {
|
||||
const readableStream = new Stream.Readable();
|
||||
|
||||
for (let i=0; i<10; i++) {
|
||||
readableStream.push(`Chunk ${i}`);
|
||||
}
|
||||
|
||||
return readableStream as NodeJS.ReadableStream;
|
||||
}),
|
||||
invoke: jest.fn(async () => {
|
||||
return {
|
||||
content: 'Hi this is Opey',
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}),
|
||||
};
|
||||
});
|
||||
|
||||
// jest.mock("./A", () => {
|
||||
// return {
|
||||
// A: jest.fn().mockImplementation(() => {
|
||||
// return {
|
||||
// getSomething: getSomethingMock
|
||||
// }
|
||||
// })
|
||||
// };
|
||||
// });
|
||||
// Mock the OpeyClientService class
|
||||
|
||||
|
||||
// jest.mocked(OpeyClientService).mockImplementation(() => {
|
||||
// return {
|
||||
// getOpeyStatus: jest.fn(async () => {
|
||||
// return {status: 'running'}
|
||||
// }),
|
||||
// stream: jest.fn(async () => {
|
||||
// const readableStream = new Stream.Readable();
|
||||
|
||||
// for (let i=0; i<10; i++) {
|
||||
// readableStream.push(`Chunk ${i}`);
|
||||
// }
|
||||
|
||||
// return readableStream as NodeJS.ReadableStream;
|
||||
// }),
|
||||
// invoke: jest.fn(async () => {
|
||||
// return {
|
||||
// content: 'Hi this is Opey',
|
||||
// }
|
||||
// })
|
||||
// }
|
||||
// });
|
||||
|
||||
|
||||
|
||||
describe('OpeyController', () => {
|
||||
// Mock the OpeyClientService class
|
||||
|
||||
const MockOpeyClientService = {
|
||||
authConfig: {},
|
||||
opeyConfig: {},
|
||||
getOpeyStatus: jest.fn(async () => {
|
||||
return {status: 'running'}
|
||||
}),
|
||||
stream: jest.fn(async () => {
|
||||
|
||||
async function * generator() {
|
||||
for (let i=0; i<10; i++) {
|
||||
yield `Chunk ${i}`;
|
||||
}
|
||||
}
|
||||
|
||||
const readableStream = Stream.Readable.from(generator());
|
||||
|
||||
return readableStream as NodeJS.ReadableStream;
|
||||
}),
|
||||
invoke: jest.fn(async () => {
|
||||
return {
|
||||
content: 'Hi this is Opey',
|
||||
}
|
||||
})
|
||||
} as unknown as jest.Mocked<OpeyClientService>
|
||||
|
||||
|
||||
// Instantiate OpeyController with the mocked OpeyClientService
|
||||
const opeyController = new OpeyController(new OBPClientService, MockOpeyClientService)
|
||||
|
||||
|
||||
it('getStatus', async () => {
|
||||
const res = httpMocks.createResponse();
|
||||
|
||||
await opeyController.getStatus(res)
|
||||
expect(MockOpeyClientService.getOpeyStatus).toHaveBeenCalled();
|
||||
expect(res.statusCode).toBe(200);
|
||||
})
|
||||
|
||||
it('streamOpey', async () => {
|
||||
|
||||
const _eventEmitter = new EventEmitter();
|
||||
_eventEmitter.addListener('data', () => {
|
||||
console.log('Data received')
|
||||
})
|
||||
// The default event emitter does nothing, so replace
|
||||
const res = await httpMocks.createResponse({
|
||||
eventEmitter: EventEmitter,
|
||||
writableStream: Stream.Writable
|
||||
});
|
||||
|
||||
const req = {
|
||||
body: {
|
||||
message: 'Hello Opey',
|
||||
thread_id: '123',
|
||||
is_tool_call_approval: false
|
||||
}
|
||||
} as unknown as Request;
|
||||
|
||||
// Define handelrs for events
|
||||
|
||||
|
||||
|
||||
let chunks: any[] = [];
|
||||
try {
|
||||
const response = await opeyController.streamOpey({}, req, res)
|
||||
|
||||
response.on('end', async () => {
|
||||
console.log('Stream ended')
|
||||
console.log(res._getData())
|
||||
await expect(res.statusCode).toBe(200);
|
||||
})
|
||||
|
||||
response.on('data', async (chunk) => {
|
||||
console.log(chunk)
|
||||
await chunks.push(chunk);
|
||||
await expect(chunk).toBeDefined();
|
||||
})
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
}
|
||||
|
||||
|
||||
await expect(chunks.length).toBe(10);
|
||||
await expect(MockOpeyClientService.stream).toHaveBeenCalled();
|
||||
await expect(res).toBeDefined();
|
||||
|
||||
})
|
||||
})
|
||||
@ -1,115 +0,0 @@
|
||||
import app, { instance } from '../server/app';
|
||||
import request from 'supertest';
|
||||
import http from 'node:http';
|
||||
import { UserInput } from '../server/schema/OpeySchema';
|
||||
import {v4 as uuidv4} from 'uuid';
|
||||
import { agent } from "superagent";
|
||||
import fetch from 'node-fetch';
|
||||
|
||||
|
||||
const BEFORE_ALL_TIMEOUT = 30000; // 30 sec
|
||||
const SERVER_URL = process.env.VITE_OBP_API_EXPLORER_HOST
|
||||
|
||||
describe('GET /api/opey', () => {
|
||||
let response: Response;
|
||||
|
||||
it('Should return 200', async () => {
|
||||
const response = await request(app)
|
||||
.get("/api/opey")
|
||||
.set('Content-Type', 'application/json')
|
||||
|
||||
expect(response.status).toBe(200);
|
||||
});
|
||||
});
|
||||
|
||||
describe('GET /api/opey/invoke', () => {
|
||||
let response;
|
||||
|
||||
let userInput: UserInput = {
|
||||
message: "Hello Opey",
|
||||
thread_id: uuidv4(),
|
||||
is_tool_call_approval: false
|
||||
}
|
||||
|
||||
beforeAll(async () => {
|
||||
// Make the invoke request
|
||||
response = await request(app)
|
||||
.post("/api/opey/invoke")
|
||||
.send(userInput)
|
||||
.set('Content-Type', 'application/json')
|
||||
})
|
||||
|
||||
it('Should return 200', async () => {
|
||||
expect(response.status).toBe(200);
|
||||
});
|
||||
|
||||
it('Should return a message if not a tool call approval', async () => {
|
||||
if (!response.body.tool_approval_request) {
|
||||
expect(response.body.content).toBeTruthy();
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
describe('POST /api/opey/stream', () => {
|
||||
|
||||
let data: Array<string> = [];
|
||||
let res;
|
||||
|
||||
let userInput: UserInput = {
|
||||
message: "Hello Opey",
|
||||
thread_id: uuidv4(),
|
||||
is_tool_call_approval: false
|
||||
}
|
||||
|
||||
|
||||
beforeAll(async () => {
|
||||
app.listen(5173)
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
instance.close()
|
||||
});
|
||||
|
||||
it
|
||||
|
||||
it('Should stream response', async () => {
|
||||
|
||||
try {
|
||||
const response = await fetch(`${SERVER_URL}/api/opey/stream`, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'connection': 'keep-alive'
|
||||
},
|
||||
body: JSON.stringify(userInput),
|
||||
});
|
||||
|
||||
console.log(`Response in test: ${response.body}`)
|
||||
const stream = response.body
|
||||
|
||||
stream.on('data', (chunk) => {
|
||||
console.log(`chunk: ${chunk}`)
|
||||
// check if chunk is not empty
|
||||
expect(chunk).toBeTruthy()
|
||||
})
|
||||
stream.on('end', () => {
|
||||
console.log('Stream ended')
|
||||
})
|
||||
stream.on('error', (error) => {
|
||||
console.error(`Error in stream: ${error}`)
|
||||
})
|
||||
|
||||
res = response;
|
||||
|
||||
await expect(res.status).toBe(200)
|
||||
|
||||
} catch (error) {
|
||||
console.error(`Error fetching stream from test: ${error}`)
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
})
|
||||
});
|
||||
@ -12,7 +12,8 @@
|
||||
},
|
||||
"emitDecoratorMetadata": true,
|
||||
"experimentalDecorators": true,
|
||||
"allowJs": true
|
||||
"allowJs": true,
|
||||
"types": ["vitest/globals"]
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
"esModuleInterop": true,
|
||||
"composite": true,
|
||||
"lib": [],
|
||||
"types": ["node", "jsdom"]
|
||||
"types": ["node", "jsdom", "vitest/globals"]
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -12,7 +12,6 @@ import pluginRewriteAll from 'vite-plugin-rewrite-all';
|
||||
|
||||
// https://vitejs.dev/config/
|
||||
export default defineConfig({
|
||||
|
||||
plugins: [
|
||||
vue(), vueJsx(),
|
||||
AutoImport({
|
||||
@ -46,4 +45,11 @@ export default defineConfig({
|
||||
},
|
||||
},
|
||||
},
|
||||
test: {
|
||||
// enable jest-like global test APIs
|
||||
globals: true,
|
||||
// simulate DOM with happy-dom
|
||||
// (requires installing happy-dom as a peer dependency)
|
||||
environment: 'happy-dom'
|
||||
},
|
||||
})
|
||||
|
||||
@ -1,15 +0,0 @@
|
||||
import { fileURLToPath } from 'node:url'
|
||||
import { mergeConfig } from 'vite'
|
||||
import { configDefaults, defineConfig } from 'vitest/config'
|
||||
import viteConfig from './vite.config.mjs'
|
||||
|
||||
export default mergeConfig(
|
||||
viteConfig,
|
||||
defineConfig({
|
||||
test: {
|
||||
environment: 'jsdom',
|
||||
exclude: [...configDefaults.exclude, 'e2e/*'],
|
||||
root: fileURLToPath(new URL('./', import.meta.url))
|
||||
}
|
||||
})
|
||||
)
|
||||
455
yarn.lock
455
yarn.lock
@ -71,7 +71,7 @@
|
||||
"@csstools/css-tokenizer" "^3.0.3"
|
||||
lru-cache "^10.4.3"
|
||||
|
||||
"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.24.7", "@babel/code-frame@^7.26.2":
|
||||
"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.24.7", "@babel/code-frame@^7.26.2":
|
||||
version "7.26.2"
|
||||
resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz"
|
||||
integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==
|
||||
@ -385,6 +385,13 @@
|
||||
"@babel/helper-skip-transparent-expression-wrappers" "^7.25.9"
|
||||
"@babel/plugin-syntax-typescript" "^7.25.9"
|
||||
|
||||
"@babel/runtime@^7.12.5", "@babel/runtime@^7.23.2":
|
||||
version "7.26.9"
|
||||
resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.9.tgz"
|
||||
integrity sha512-aA63XwOkcl4xxQa3HjPMqOP6LiK0ZDv3mUPYEFXkpHbaFjtGggE1A61FjFzJnB+p7/oy2gA8E+rcBNl/zC1tMg==
|
||||
dependencies:
|
||||
regenerator-runtime "^0.14.0"
|
||||
|
||||
"@babel/template@^7.25.0", "@babel/template@^7.26.9", "@babel/template@^7.3.3":
|
||||
version "7.26.9"
|
||||
resolved "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz"
|
||||
@ -1157,6 +1164,29 @@
|
||||
resolved "https://registry.npmjs.org/@sphinxxxx/color-conversion/-/color-conversion-2.2.2.tgz"
|
||||
integrity sha512-XExJS3cLqgrmNBIP3bBw6+1oQ1ksGjFh0+oClDKFYpCCqx/hlqwWO5KO/S63fzUo67SxI9dMrF0y5T/Ey7h8Zw==
|
||||
|
||||
"@testing-library/dom@^9.3.3":
|
||||
version "9.3.4"
|
||||
resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.4.tgz"
|
||||
integrity sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==
|
||||
dependencies:
|
||||
"@babel/code-frame" "^7.10.4"
|
||||
"@babel/runtime" "^7.12.5"
|
||||
"@types/aria-query" "^5.0.1"
|
||||
aria-query "5.1.3"
|
||||
chalk "^4.1.0"
|
||||
dom-accessibility-api "^0.5.9"
|
||||
lz-string "^1.5.0"
|
||||
pretty-format "^27.0.2"
|
||||
|
||||
"@testing-library/vue@^8.1.0":
|
||||
version "8.1.0"
|
||||
resolved "https://registry.npmjs.org/@testing-library/vue/-/vue-8.1.0.tgz"
|
||||
integrity sha512-ls4RiHO1ta4mxqqajWRh8158uFObVrrtAPoxk7cIp4HrnQUj/ScKzqz53HxYpG3X6Zb7H2v+0eTGLSoy8HQ2nA==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.23.2"
|
||||
"@testing-library/dom" "^9.3.3"
|
||||
"@vue/test-utils" "^2.4.1"
|
||||
|
||||
"@tsconfig/node10@^1.0.7":
|
||||
version "1.0.9"
|
||||
resolved "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz"
|
||||
@ -1177,6 +1207,11 @@
|
||||
resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz"
|
||||
integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==
|
||||
|
||||
"@types/aria-query@^5.0.1":
|
||||
version "5.0.4"
|
||||
resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz"
|
||||
integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==
|
||||
|
||||
"@types/babel__core@^7.1.14":
|
||||
version "7.20.5"
|
||||
resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz"
|
||||
@ -1586,7 +1621,7 @@
|
||||
"@vue/compiler-core" "3.5.13"
|
||||
"@vue/shared" "3.5.13"
|
||||
|
||||
"@vue/compiler-sfc@^3.5.3", "@vue/compiler-sfc@3.5.13":
|
||||
"@vue/compiler-sfc@^3.5.3", "@vue/compiler-sfc@>= 3", "@vue/compiler-sfc@3.5.13":
|
||||
version "3.5.13"
|
||||
resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz"
|
||||
integrity sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==
|
||||
@ -1692,7 +1727,7 @@
|
||||
resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz"
|
||||
integrity sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==
|
||||
|
||||
"@vue/test-utils@^2.4.0":
|
||||
"@vue/test-utils@^2.4.0", "@vue/test-utils@^2.4.1":
|
||||
version "2.4.6"
|
||||
resolved "https://registry.npmjs.org/@vue/test-utils/-/test-utils-2.4.6.tgz"
|
||||
integrity sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==
|
||||
@ -1881,6 +1916,21 @@ aria-query@^5.3.1:
|
||||
resolved "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz"
|
||||
integrity sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==
|
||||
|
||||
aria-query@5.1.3:
|
||||
version "5.1.3"
|
||||
resolved "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz"
|
||||
integrity sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==
|
||||
dependencies:
|
||||
deep-equal "^2.0.5"
|
||||
|
||||
array-buffer-byte-length@^1.0.0:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz"
|
||||
integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==
|
||||
dependencies:
|
||||
call-bound "^1.0.3"
|
||||
is-array-buffer "^3.0.5"
|
||||
|
||||
array-flatten@1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz"
|
||||
@ -1936,10 +1986,12 @@ asynckit@^0.4.0:
|
||||
resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"
|
||||
integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
|
||||
|
||||
available-typed-arrays@^1.0.5:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz"
|
||||
integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==
|
||||
available-typed-arrays@^1.0.5, available-typed-arrays@^1.0.7:
|
||||
version "1.0.7"
|
||||
resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz"
|
||||
integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==
|
||||
dependencies:
|
||||
possible-typed-array-names "^1.0.0"
|
||||
|
||||
axios@^1.7.4:
|
||||
version "1.7.9"
|
||||
@ -2276,7 +2328,7 @@ cache-content-type@^1.0.0:
|
||||
mime-types "^2.1.18"
|
||||
ylru "^1.2.0"
|
||||
|
||||
call-bind-apply-helpers@^1.0.1:
|
||||
call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz"
|
||||
integrity sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==
|
||||
@ -2284,15 +2336,17 @@ call-bind-apply-helpers@^1.0.1:
|
||||
es-errors "^1.3.0"
|
||||
function-bind "^1.1.2"
|
||||
|
||||
call-bind@^1.0.0, call-bind@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz"
|
||||
integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==
|
||||
call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.8:
|
||||
version "1.0.8"
|
||||
resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz"
|
||||
integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==
|
||||
dependencies:
|
||||
function-bind "^1.1.1"
|
||||
get-intrinsic "^1.0.2"
|
||||
call-bind-apply-helpers "^1.0.0"
|
||||
es-define-property "^1.0.0"
|
||||
get-intrinsic "^1.2.4"
|
||||
set-function-length "^1.2.2"
|
||||
|
||||
call-bound@^1.0.2:
|
||||
call-bound@^1.0.2, call-bound@^1.0.3:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz"
|
||||
integrity sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==
|
||||
@ -2333,7 +2387,7 @@ chai@^4.3.10:
|
||||
pathval "^1.1.1"
|
||||
type-detect "^4.1.0"
|
||||
|
||||
chalk@^4.0.0, chalk@^4.0.2:
|
||||
chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0:
|
||||
version "4.1.2"
|
||||
resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
|
||||
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
|
||||
@ -2815,6 +2869,30 @@ deep-eql@^4.1.3:
|
||||
dependencies:
|
||||
type-detect "^4.0.0"
|
||||
|
||||
deep-equal@^2.0.5:
|
||||
version "2.2.3"
|
||||
resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz"
|
||||
integrity sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==
|
||||
dependencies:
|
||||
array-buffer-byte-length "^1.0.0"
|
||||
call-bind "^1.0.5"
|
||||
es-get-iterator "^1.1.3"
|
||||
get-intrinsic "^1.2.2"
|
||||
is-arguments "^1.1.1"
|
||||
is-array-buffer "^3.0.2"
|
||||
is-date-object "^1.0.5"
|
||||
is-regex "^1.1.4"
|
||||
is-shared-array-buffer "^1.0.2"
|
||||
isarray "^2.0.5"
|
||||
object-is "^1.1.5"
|
||||
object-keys "^1.1.1"
|
||||
object.assign "^4.1.4"
|
||||
regexp.prototype.flags "^1.5.1"
|
||||
side-channel "^1.0.4"
|
||||
which-boxed-primitive "^1.0.2"
|
||||
which-collection "^1.0.1"
|
||||
which-typed-array "^1.1.13"
|
||||
|
||||
deep-equal@~1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz"
|
||||
@ -2830,11 +2908,21 @@ deepmerge@^4.2.2:
|
||||
resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz"
|
||||
integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
|
||||
|
||||
define-properties@^1.1.3:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz"
|
||||
integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==
|
||||
define-data-property@^1.0.1, define-data-property@^1.1.4:
|
||||
version "1.1.4"
|
||||
resolved "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz"
|
||||
integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==
|
||||
dependencies:
|
||||
es-define-property "^1.0.0"
|
||||
es-errors "^1.3.0"
|
||||
gopd "^1.0.1"
|
||||
|
||||
define-properties@^1.1.3, define-properties@^1.2.1:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz"
|
||||
integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
|
||||
dependencies:
|
||||
define-data-property "^1.0.1"
|
||||
has-property-descriptors "^1.0.0"
|
||||
object-keys "^1.1.1"
|
||||
|
||||
@ -2918,6 +3006,11 @@ diffie-hellman@^5.0.0:
|
||||
miller-rabin "^4.0.0"
|
||||
randombytes "^2.0.0"
|
||||
|
||||
dom-accessibility-api@^0.5.9:
|
||||
version "0.5.16"
|
||||
resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz"
|
||||
integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==
|
||||
|
||||
dom-serializer@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz"
|
||||
@ -3155,7 +3248,7 @@ error-ex@^1.3.1:
|
||||
dependencies:
|
||||
is-arrayish "^0.2.1"
|
||||
|
||||
es-define-property@^1.0.1:
|
||||
es-define-property@^1.0.0, es-define-property@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz"
|
||||
integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==
|
||||
@ -3165,6 +3258,21 @@ es-errors@^1.3.0:
|
||||
resolved "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz"
|
||||
integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
|
||||
|
||||
es-get-iterator@^1.1.3:
|
||||
version "1.1.3"
|
||||
resolved "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz"
|
||||
integrity sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==
|
||||
dependencies:
|
||||
call-bind "^1.0.2"
|
||||
get-intrinsic "^1.1.3"
|
||||
has-symbols "^1.0.3"
|
||||
is-arguments "^1.1.1"
|
||||
is-map "^2.0.2"
|
||||
is-set "^2.0.2"
|
||||
is-string "^1.0.7"
|
||||
isarray "^2.0.5"
|
||||
stop-iteration-iterator "^1.0.0"
|
||||
|
||||
es-module-lexer@^1.3.0:
|
||||
version "1.5.4"
|
||||
resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz"
|
||||
@ -3702,11 +3810,16 @@ fs.realpath@^1.0.0:
|
||||
resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
|
||||
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
|
||||
|
||||
function-bind@^1.1.1, function-bind@^1.1.2:
|
||||
function-bind@^1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz"
|
||||
integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
|
||||
|
||||
functions-have-names@^1.2.3:
|
||||
version "1.2.3"
|
||||
resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz"
|
||||
integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==
|
||||
|
||||
generic-pool@3.9.0:
|
||||
version "3.9.0"
|
||||
resolved "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz"
|
||||
@ -3727,7 +3840,7 @@ get-func-name@^2.0.0, get-func-name@^2.0.2:
|
||||
resolved "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz"
|
||||
integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==
|
||||
|
||||
get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6:
|
||||
get-intrinsic@^1.1.3, get-intrinsic@^1.2.2, get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6:
|
||||
version "1.2.7"
|
||||
resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz"
|
||||
integrity sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==
|
||||
@ -3748,7 +3861,7 @@ get-package-type@^0.1.0:
|
||||
resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz"
|
||||
integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==
|
||||
|
||||
get-proto@^1.0.0:
|
||||
get-proto@^1.0.0, get-proto@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz"
|
||||
integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==
|
||||
@ -3858,6 +3971,19 @@ graphemer@^1.4.0:
|
||||
resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz"
|
||||
integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==
|
||||
|
||||
happy-dom@*, happy-dom@^17.1.4:
|
||||
version "17.1.4"
|
||||
resolved "https://registry.npmjs.org/happy-dom/-/happy-dom-17.1.4.tgz"
|
||||
integrity sha512-cMxE0HP45kLIgWdI0PFfnitNb95Cv8kG8moqI7CK6kcEcfV7xoYVVvSmJ7EuGfDatSKWtjhG/czVooqEV0L4rA==
|
||||
dependencies:
|
||||
webidl-conversions "^7.0.0"
|
||||
whatwg-mimetype "^3.0.0"
|
||||
|
||||
has-bigints@^1.0.2:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz"
|
||||
integrity sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==
|
||||
|
||||
has-binary2@~1.0.2:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz"
|
||||
@ -3875,24 +4001,24 @@ has-flag@^4.0.0:
|
||||
resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
|
||||
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
|
||||
|
||||
has-property-descriptors@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz"
|
||||
integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==
|
||||
has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz"
|
||||
integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==
|
||||
dependencies:
|
||||
get-intrinsic "^1.1.1"
|
||||
es-define-property "^1.0.0"
|
||||
|
||||
has-symbols@^1.0.2, has-symbols@^1.1.0:
|
||||
has-symbols@^1.0.3, has-symbols@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz"
|
||||
integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==
|
||||
|
||||
has-tostringtag@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz"
|
||||
integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==
|
||||
has-tostringtag@^1.0.0, has-tostringtag@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz"
|
||||
integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==
|
||||
dependencies:
|
||||
has-symbols "^1.0.2"
|
||||
has-symbols "^1.0.3"
|
||||
|
||||
hash-base@^3.0.0:
|
||||
version "3.1.0"
|
||||
@ -4119,12 +4245,21 @@ ini@^1.3.4:
|
||||
resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz"
|
||||
integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
|
||||
|
||||
internal-slot@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz"
|
||||
integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==
|
||||
dependencies:
|
||||
es-errors "^1.3.0"
|
||||
hasown "^2.0.2"
|
||||
side-channel "^1.1.0"
|
||||
|
||||
ipaddr.js@1.9.1:
|
||||
version "1.9.1"
|
||||
resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz"
|
||||
integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==
|
||||
|
||||
is-arguments@^1.0.4:
|
||||
is-arguments@^1.0.4, is-arguments@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz"
|
||||
integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==
|
||||
@ -4132,11 +4267,27 @@ is-arguments@^1.0.4:
|
||||
call-bind "^1.0.2"
|
||||
has-tostringtag "^1.0.0"
|
||||
|
||||
is-array-buffer@^3.0.2, is-array-buffer@^3.0.5:
|
||||
version "3.0.5"
|
||||
resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz"
|
||||
integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==
|
||||
dependencies:
|
||||
call-bind "^1.0.8"
|
||||
call-bound "^1.0.3"
|
||||
get-intrinsic "^1.2.6"
|
||||
|
||||
is-arrayish@^0.2.1:
|
||||
version "0.2.1"
|
||||
resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"
|
||||
integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
|
||||
|
||||
is-bigint@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz"
|
||||
integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==
|
||||
dependencies:
|
||||
has-bigints "^1.0.2"
|
||||
|
||||
is-binary-path@~2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz"
|
||||
@ -4144,6 +4295,14 @@ is-binary-path@~2.1.0:
|
||||
dependencies:
|
||||
binary-extensions "^2.0.0"
|
||||
|
||||
is-boolean-object@^1.2.1:
|
||||
version "1.2.2"
|
||||
resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz"
|
||||
integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==
|
||||
dependencies:
|
||||
call-bound "^1.0.3"
|
||||
has-tostringtag "^1.0.2"
|
||||
|
||||
is-callable@^1.1.3:
|
||||
version "1.2.7"
|
||||
resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz"
|
||||
@ -4156,6 +4315,14 @@ is-core-module@^2.13.0:
|
||||
dependencies:
|
||||
hasown "^2.0.2"
|
||||
|
||||
is-date-object@^1.0.5:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz"
|
||||
integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==
|
||||
dependencies:
|
||||
call-bound "^1.0.2"
|
||||
has-tostringtag "^1.0.2"
|
||||
|
||||
is-extglob@^2.1.1:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz"
|
||||
@ -4185,6 +4352,11 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:
|
||||
dependencies:
|
||||
is-extglob "^2.1.1"
|
||||
|
||||
is-map@^2.0.2, is-map@^2.0.3:
|
||||
version "2.0.3"
|
||||
resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz"
|
||||
integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==
|
||||
|
||||
is-nan@^1.2.1:
|
||||
version "1.3.2"
|
||||
resolved "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz"
|
||||
@ -4193,6 +4365,14 @@ is-nan@^1.2.1:
|
||||
call-bind "^1.0.0"
|
||||
define-properties "^1.1.3"
|
||||
|
||||
is-number-object@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz"
|
||||
integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==
|
||||
dependencies:
|
||||
call-bound "^1.0.3"
|
||||
has-tostringtag "^1.0.2"
|
||||
|
||||
is-number@^7.0.0:
|
||||
version "7.0.0"
|
||||
resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz"
|
||||
@ -4210,12 +4390,51 @@ is-reference@^3.0.3:
|
||||
dependencies:
|
||||
"@types/estree" "^1.0.6"
|
||||
|
||||
is-regex@^1.1.4, is-regex@^1.2.1:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz"
|
||||
integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==
|
||||
dependencies:
|
||||
call-bound "^1.0.2"
|
||||
gopd "^1.2.0"
|
||||
has-tostringtag "^1.0.2"
|
||||
hasown "^2.0.2"
|
||||
|
||||
is-set@^2.0.2, is-set@^2.0.3:
|
||||
version "2.0.3"
|
||||
resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz"
|
||||
integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==
|
||||
|
||||
is-shared-array-buffer@^1.0.2:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz"
|
||||
integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==
|
||||
dependencies:
|
||||
call-bound "^1.0.3"
|
||||
|
||||
is-stream@^2.0.0:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz"
|
||||
integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
|
||||
|
||||
is-typed-array@^1.1.10, is-typed-array@^1.1.3:
|
||||
is-string@^1.0.7, is-string@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz"
|
||||
integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==
|
||||
dependencies:
|
||||
call-bound "^1.0.3"
|
||||
has-tostringtag "^1.0.2"
|
||||
|
||||
is-symbol@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz"
|
||||
integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==
|
||||
dependencies:
|
||||
call-bound "^1.0.2"
|
||||
has-symbols "^1.1.0"
|
||||
safe-regex-test "^1.1.0"
|
||||
|
||||
is-typed-array@^1.1.3:
|
||||
version "1.1.10"
|
||||
resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz"
|
||||
integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==
|
||||
@ -4226,6 +4445,24 @@ is-typed-array@^1.1.10, is-typed-array@^1.1.3:
|
||||
gopd "^1.0.1"
|
||||
has-tostringtag "^1.0.0"
|
||||
|
||||
is-weakmap@^2.0.2:
|
||||
version "2.0.2"
|
||||
resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz"
|
||||
integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==
|
||||
|
||||
is-weakset@^2.0.3:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz"
|
||||
integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==
|
||||
dependencies:
|
||||
call-bound "^1.0.3"
|
||||
get-intrinsic "^1.2.6"
|
||||
|
||||
isarray@^2.0.5:
|
||||
version "2.0.5"
|
||||
resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz"
|
||||
integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==
|
||||
|
||||
isarray@~1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz"
|
||||
@ -5095,6 +5332,11 @@ lru-cache@^6.0.0:
|
||||
dependencies:
|
||||
yallist "^4.0.0"
|
||||
|
||||
lz-string@^1.5.0:
|
||||
version "1.5.0"
|
||||
resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz"
|
||||
integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==
|
||||
|
||||
magic-string@^0.27.0:
|
||||
version "0.27.0"
|
||||
resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz"
|
||||
@ -5517,7 +5759,7 @@ object-inspect@^1.13.3:
|
||||
resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz"
|
||||
integrity sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==
|
||||
|
||||
object-is@^1.0.1:
|
||||
object-is@^1.0.1, object-is@^1.1.5:
|
||||
version "1.1.5"
|
||||
resolved "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz"
|
||||
integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==
|
||||
@ -5530,6 +5772,18 @@ object-keys@^1.1.1:
|
||||
resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz"
|
||||
integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
|
||||
|
||||
object.assign@^4.1.4:
|
||||
version "4.1.7"
|
||||
resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz"
|
||||
integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==
|
||||
dependencies:
|
||||
call-bind "^1.0.8"
|
||||
call-bound "^1.0.3"
|
||||
define-properties "^1.2.1"
|
||||
es-object-atoms "^1.0.0"
|
||||
has-symbols "^1.1.0"
|
||||
object-keys "^1.1.1"
|
||||
|
||||
obp-typescript@^1.0.36:
|
||||
version "1.0.36"
|
||||
resolved "https://registry.npmjs.org/obp-typescript/-/obp-typescript-1.0.36.tgz"
|
||||
@ -5823,6 +6077,11 @@ pkg-types@^1.2.1:
|
||||
mlly "^1.7.2"
|
||||
pathe "^1.1.2"
|
||||
|
||||
possible-typed-array-names@^1.0.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz"
|
||||
integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==
|
||||
|
||||
postcss-selector-parser@^6.0.15:
|
||||
version "6.1.2"
|
||||
resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz"
|
||||
@ -5857,6 +6116,15 @@ prettier@^3.0.1, "prettier@>= 3.0.0", prettier@>=3.0.0:
|
||||
resolved "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz"
|
||||
integrity sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==
|
||||
|
||||
pretty-format@^27.0.2:
|
||||
version "27.5.1"
|
||||
resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz"
|
||||
integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==
|
||||
dependencies:
|
||||
ansi-regex "^5.0.1"
|
||||
ansi-styles "^5.0.0"
|
||||
react-is "^17.0.1"
|
||||
|
||||
pretty-format@^29.0.0, pretty-format@^29.5.0, pretty-format@^29.7.0:
|
||||
version "29.7.0"
|
||||
resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz"
|
||||
@ -6006,6 +6274,11 @@ raw-body@^2.3.3, raw-body@2.5.2:
|
||||
iconv-lite "0.4.24"
|
||||
unpipe "1.0.0"
|
||||
|
||||
react-is@^17.0.1:
|
||||
version "17.0.2"
|
||||
resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz"
|
||||
integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==
|
||||
|
||||
react-is@^18.0.0:
|
||||
version "18.3.1"
|
||||
resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz"
|
||||
@ -6079,6 +6352,23 @@ reflect-metadata@^0.1.13:
|
||||
resolved "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz"
|
||||
integrity sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==
|
||||
|
||||
regenerator-runtime@^0.14.0:
|
||||
version "0.14.1"
|
||||
resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz"
|
||||
integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
|
||||
|
||||
regexp.prototype.flags@^1.5.1:
|
||||
version "1.5.4"
|
||||
resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz"
|
||||
integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==
|
||||
dependencies:
|
||||
call-bind "^1.0.8"
|
||||
define-properties "^1.2.1"
|
||||
es-errors "^1.3.0"
|
||||
get-proto "^1.0.1"
|
||||
gopd "^1.2.0"
|
||||
set-function-name "^2.0.2"
|
||||
|
||||
require-directory@^2.1.1:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz"
|
||||
@ -6191,6 +6481,15 @@ safe-buffer@~5.1.1:
|
||||
resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz"
|
||||
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
|
||||
|
||||
safe-regex-test@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz"
|
||||
integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==
|
||||
dependencies:
|
||||
call-bound "^1.0.2"
|
||||
es-errors "^1.3.0"
|
||||
is-regex "^1.2.1"
|
||||
|
||||
safer-buffer@^2.1.0, "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0":
|
||||
version "2.1.2"
|
||||
resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz"
|
||||
@ -6281,6 +6580,28 @@ serve-static@1.16.2:
|
||||
parseurl "~1.3.3"
|
||||
send "0.19.0"
|
||||
|
||||
set-function-length@^1.2.2:
|
||||
version "1.2.2"
|
||||
resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz"
|
||||
integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==
|
||||
dependencies:
|
||||
define-data-property "^1.1.4"
|
||||
es-errors "^1.3.0"
|
||||
function-bind "^1.1.2"
|
||||
get-intrinsic "^1.2.4"
|
||||
gopd "^1.0.1"
|
||||
has-property-descriptors "^1.0.2"
|
||||
|
||||
set-function-name@^2.0.2:
|
||||
version "2.0.2"
|
||||
resolved "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz"
|
||||
integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==
|
||||
dependencies:
|
||||
define-data-property "^1.1.4"
|
||||
es-errors "^1.3.0"
|
||||
functions-have-names "^1.2.3"
|
||||
has-property-descriptors "^1.0.2"
|
||||
|
||||
setimmediate@^1.0.4:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz"
|
||||
@ -6345,7 +6666,7 @@ side-channel-weakmap@^1.0.2:
|
||||
object-inspect "^1.13.3"
|
||||
side-channel-map "^1.0.1"
|
||||
|
||||
side-channel@^1.0.6:
|
||||
side-channel@^1.0.4, side-channel@^1.0.6, side-channel@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz"
|
||||
integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==
|
||||
@ -6496,6 +6817,14 @@ std-env@^3.3.3:
|
||||
resolved "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz"
|
||||
integrity sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==
|
||||
|
||||
stop-iteration-iterator@^1.0.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz"
|
||||
integrity sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==
|
||||
dependencies:
|
||||
es-errors "^1.3.0"
|
||||
internal-slot "^1.1.0"
|
||||
|
||||
stream-browserify@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz"
|
||||
@ -7188,7 +7517,7 @@ vite-plugin-rewrite-all@^1.0.2:
|
||||
optionalDependencies:
|
||||
fsevents "~2.3.2"
|
||||
|
||||
vitest@^0.34.0:
|
||||
vitest@^0.34.6:
|
||||
version "0.34.6"
|
||||
resolved "https://registry.npmjs.org/vitest/-/vitest-0.34.6.tgz"
|
||||
integrity sha512-+5CALsOvbNKnS+ZHMXtuUC7nL8/7F1F2DnHGjSsszX8zCjWSSviphCb/NuS9Nzf4Q03KyyDRBAXhF/8lffME4Q==
|
||||
@ -7287,7 +7616,7 @@ vue-tsc@^2.0.0:
|
||||
"@volar/typescript" "~2.4.11"
|
||||
"@vue/language-core" "2.2.0"
|
||||
|
||||
"vue@^2.6.14 || ^3.5.11", vue@^3, vue@^3.0.0, "vue@^3.0.0-0 || ^2.6.0", vue@^3.2.0, vue@^3.2.25, vue@^3.3.4, vue@^3.5.1, "vue@>=3.2.26 < 4", "vue@2 || 3", vue@2||3, vue@3.5.13:
|
||||
"vue@^2.6.14 || ^3.5.11", vue@^3, vue@^3.0.0, "vue@^3.0.0-0 || ^2.6.0", vue@^3.2.0, vue@^3.2.25, vue@^3.3.4, vue@^3.5.1, "vue@>= 3", "vue@>=3.2.26 < 4", "vue@2 || 3", vue@2||3, vue@3.5.13:
|
||||
version "3.5.13"
|
||||
resolved "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz"
|
||||
integrity sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==
|
||||
@ -7339,6 +7668,11 @@ whatwg-encoding@^3.1.1:
|
||||
dependencies:
|
||||
iconv-lite "0.6.3"
|
||||
|
||||
whatwg-mimetype@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz"
|
||||
integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==
|
||||
|
||||
whatwg-mimetype@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz"
|
||||
@ -7360,17 +7694,38 @@ whatwg-url@^5.0.0:
|
||||
tr46 "~0.0.3"
|
||||
webidl-conversions "^3.0.0"
|
||||
|
||||
which-typed-array@^1.1.2:
|
||||
version "1.1.9"
|
||||
resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz"
|
||||
integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==
|
||||
which-boxed-primitive@^1.0.2:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz"
|
||||
integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==
|
||||
dependencies:
|
||||
available-typed-arrays "^1.0.5"
|
||||
call-bind "^1.0.2"
|
||||
is-bigint "^1.1.0"
|
||||
is-boolean-object "^1.2.1"
|
||||
is-number-object "^1.1.1"
|
||||
is-string "^1.1.1"
|
||||
is-symbol "^1.1.1"
|
||||
|
||||
which-collection@^1.0.1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz"
|
||||
integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==
|
||||
dependencies:
|
||||
is-map "^2.0.3"
|
||||
is-set "^2.0.3"
|
||||
is-weakmap "^2.0.2"
|
||||
is-weakset "^2.0.3"
|
||||
|
||||
which-typed-array@^1.1.13, which-typed-array@^1.1.2:
|
||||
version "1.1.18"
|
||||
resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz"
|
||||
integrity sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==
|
||||
dependencies:
|
||||
available-typed-arrays "^1.0.7"
|
||||
call-bind "^1.0.8"
|
||||
call-bound "^1.0.3"
|
||||
for-each "^0.3.3"
|
||||
gopd "^1.0.1"
|
||||
has-tostringtag "^1.0.0"
|
||||
is-typed-array "^1.1.10"
|
||||
gopd "^1.2.0"
|
||||
has-tostringtag "^1.0.2"
|
||||
|
||||
which@^2.0.1:
|
||||
version "2.0.2"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user