@@ -265,19 +332,8 @@ const Prompt = ({
disabled={loading || outOfRegenerations}
>
{!loading ? (
- `Create New Images ${
- !regenerationCountLoading &&
- regenerationCount !== undefined &&
- typeof regenerationCount?.count === "number" ? (
- `${
- maxRegenerations - regenerationCount?.count
- }/${maxRegenerations}`
- ) : (
-
- )
- }`
+ `Create New Images
+ ${remainingImageGenerations}/${maxRegenerations}`
) : (
)}
diff --git a/client/src/components/nickname-form.tsx b/client/src/components/nickname-form.tsx
index a5549764..8253f0a9 100644
--- a/client/src/components/nickname-form.tsx
+++ b/client/src/components/nickname-form.tsx
@@ -11,7 +11,7 @@ import {
existingHost,
joinRoom,
} from "@ai/app/server-actions";
-import Button, { LinkSecondaryButton, SecondaryButton } from "./button";
+import Button, { LinkSecondaryButton } from "./button";
import Input from "./input";
import { toast } from "react-hot-toast";
@@ -62,19 +62,28 @@ const NicknameForm = ({ room, submitLabel, type }: NicknameFormProps) => {
if (type === "INVITE") {
const joinData = await joinRoom(formNickname, room.code);
+
setUser(joinData.user);
setRoom(room);
if (room) router.push(`/room/${room.code}`);
}
} catch (error) {
+ setLoading(false);
+
if (error instanceof Error) {
- console.error(error.message);
+ console.error(error);
+
+ if (error.message === "Room is full") {
+ toast.error("Room is full! Unable to join.");
+ return;
+ }
+
toast.error(
`An Error Occurred ${
type === "HOME"
- ? "Trying to Create a Game"
- : "Trying to Join the Game"
- }`
+ ? "Trying to Create a Room"
+ : "Trying to Join the Room"
+ }`,
);
}
}
@@ -91,7 +100,7 @@ const NicknameForm = ({ room, submitLabel, type }: NicknameFormProps) => {
required
label="Enter a cool nickname"
/>
-
+
diff --git a/client/src/utils/query.ts b/client/src/utils/query.ts
index c5ae5261..d596e3a9 100644
--- a/client/src/utils/query.ts
+++ b/client/src/utils/query.ts
@@ -1,8 +1,8 @@
-import type { ImagesResponseDataInner } from "openai-edge";
import * as Sentry from "@sentry/nextjs";
+import type { ImagesResponse } from "openai/resources";
// generate an AI image
-export const generateImage = async (prompt: string) => {
+export const generateOpenAIImage = async (prompt: string) => {
try {
const response = await fetch("/api/generate", {
method: "POST",
@@ -16,7 +16,33 @@ export const generateImage = async (prompt: string) => {
throw new Error(`Request failed with status ${response.status}`);
}
- const data: { result: ImagesResponseDataInner[] } = await response.json();
+ const data: { result: ImagesResponse["data"] } = await response.json();
+
+ return data.result.map((image) => image.url);
+ } catch (error) {
+ console.error(error);
+ Sentry.captureException(error);
+ if (error instanceof Error) {
+ console.error(error.message);
+ }
+ }
+};
+
+export const generateSDXLImage = async (prompt: string) => {
+ try {
+ const response = await fetch("/api/replicate", {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ },
+ body: JSON.stringify({ prompt }),
+ });
+
+ if (response.status !== 200) {
+ throw new Error(`Request failed with status ${response.status}`);
+ }
+
+ const data: { result: string[] } = await response.json();
return data.result;
} catch (error) {
diff --git a/client/src/utils/socket.ts b/client/src/utils/socket.ts
index 8c5f1d1b..21f4dcaa 100644
--- a/client/src/utils/socket.ts
+++ b/client/src/utils/socket.ts
@@ -27,12 +27,9 @@ export interface ClientToServerEvents {
initiatePlayAnotherGame: (code: string) => void;
testEvent: (code: string) => void;
generationSubmitted: (data: {
+ generationId: number;
gameId: number;
round: number;
- userId: number;
- questionId: number;
- text: string;
- imageUrl: string;
}) => void;
voteSubmitted: (data: {
userId: number;
@@ -49,5 +46,5 @@ export const socket: Socket = io(
URL,
{
autoConnect: false,
- }
+ },
);
diff --git a/client/tailwind.config.js b/client/tailwind.config.js
index 47b2c1b0..11f3dad6 100644
--- a/client/tailwind.config.js
+++ b/client/tailwind.config.js
@@ -18,24 +18,29 @@ module.exports = {
space: ["var(--font-space)", ...fontFamily.sans],
},
keyframes: {
+ "blink-caret": {
+ "from, to": { borderColor: "inherit" },
+ "50%": { borderColor: "transparent" },
+ },
dot: {
"0%": { opacity: 0 },
"50%": { opacity: 1 },
"100%": { opacity: 0 },
},
+ modal: {
+ "0%": { opacity: 0, transform: "translateY(24px)" },
+ "100%": { opacity: 1, transform: "translateY(0px)" },
+ },
typing: {
from: { width: 0 },
to: { width: "100%" },
},
- "blink-caret": {
- "from, to": { borderColor: "inherit" },
- "50%": { borderColor: "transparent" },
- },
},
animation: {
"dot-bounce": "dot 2s infinite",
"dot-bounce-2": "dot 2s infinite .25s",
"dot-bounce-3": "dot 2s infinite .5s",
+ modal: "modal 300ms ease-in-out",
typewriter:
"typing 3.5s steps(40, end), blink-caret .75s step-end infinite",
},
diff --git a/server/.tool-versions b/server/.tool-versions
new file mode 100644
index 00000000..f6efb75c
--- /dev/null
+++ b/server/.tool-versions
@@ -0,0 +1 @@
+nodejs 18.17.1
diff --git a/server/db/schema.ts b/server/db/schema.ts
index ab73266c..1e28870b 100644
--- a/server/db/schema.ts
+++ b/server/db/schema.ts
@@ -1,5 +1,6 @@
import { InferModel } from "drizzle-orm";
import {
+ boolean,
integer,
pgTable,
primaryKey,
@@ -87,6 +88,7 @@ export const generations = pgTable("generations", {
.notNull(),
text: text("text").notNull(),
imageUrl: text("image_url").notNull(),
+ selected: boolean("selected").default(false).notNull(),
createdAt: timestamp("created_at").defaultNow().notNull(),
});
@@ -111,7 +113,6 @@ export const usersToGames = pgTable(
.references(() => games.id)
.notNull(),
points: integer("points").default(0).notNull(),
- regenerationCount: integer("regeneration_count").default(0).notNull(),
},
(table) => ({
cpk: primaryKey(table.userId, table.gameId),
diff --git a/server/drizzle/0018_late_thor.sql b/server/drizzle/0018_late_thor.sql
new file mode 100644
index 00000000..ae0afaee
--- /dev/null
+++ b/server/drizzle/0018_late_thor.sql
@@ -0,0 +1,2 @@
+ALTER TABLE "generations" ADD COLUMN "selected" boolean DEFAULT false NOT NULL;--> statement-breakpoint
+ALTER TABLE "users_to_games" DROP COLUMN IF EXISTS "regeneration_count";
\ No newline at end of file
diff --git a/server/drizzle/meta/0018_snapshot.json b/server/drizzle/meta/0018_snapshot.json
new file mode 100644
index 00000000..f78a8613
--- /dev/null
+++ b/server/drizzle/meta/0018_snapshot.json
@@ -0,0 +1,575 @@
+{
+ "version": "5",
+ "dialect": "pg",
+ "id": "9ce8536e-8d91-4faa-a444-c62347ed2abc",
+ "prevId": "9036cd8d-8cc3-49fe-8913-9d2d9aca4b6d",
+ "tables": {
+ "games": {
+ "name": "games",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "room_code": {
+ "name": "room_code",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "state": {
+ "name": "state",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "round": {
+ "name": "round",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "completed_at": {
+ "name": "completed_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "games_room_code_rooms_code_fk": {
+ "name": "games_room_code_rooms_code_fk",
+ "tableFrom": "games",
+ "tableTo": "rooms",
+ "columnsFrom": [
+ "room_code"
+ ],
+ "columnsTo": [
+ "code"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {}
+ },
+ "generations": {
+ "name": "generations",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "user_id": {
+ "name": "user_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "game_id": {
+ "name": "game_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "question_id": {
+ "name": "question_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "text": {
+ "name": "text",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "image_url": {
+ "name": "image_url",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "selected": {
+ "name": "selected",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": true,
+ "default": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "generations_user_id_users_id_fk": {
+ "name": "generations_user_id_users_id_fk",
+ "tableFrom": "generations",
+ "tableTo": "users",
+ "columnsFrom": [
+ "user_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ },
+ "generations_game_id_games_id_fk": {
+ "name": "generations_game_id_games_id_fk",
+ "tableFrom": "generations",
+ "tableTo": "games",
+ "columnsFrom": [
+ "game_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ },
+ "generations_question_id_questions_id_fk": {
+ "name": "generations_question_id_questions_id_fk",
+ "tableFrom": "generations",
+ "tableTo": "questions",
+ "columnsFrom": [
+ "question_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {}
+ },
+ "questions": {
+ "name": "questions",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "text": {
+ "name": "text",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {}
+ },
+ "questions_to_games": {
+ "name": "questions_to_games",
+ "schema": "",
+ "columns": {
+ "question_id": {
+ "name": "question_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "game_id": {
+ "name": "game_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "round": {
+ "name": "round",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "player_1": {
+ "name": "player_1",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "player_2": {
+ "name": "player_2",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "questions_to_games_question_id_questions_id_fk": {
+ "name": "questions_to_games_question_id_questions_id_fk",
+ "tableFrom": "questions_to_games",
+ "tableTo": "questions",
+ "columnsFrom": [
+ "question_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ },
+ "questions_to_games_game_id_games_id_fk": {
+ "name": "questions_to_games_game_id_games_id_fk",
+ "tableFrom": "questions_to_games",
+ "tableTo": "games",
+ "columnsFrom": [
+ "game_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ },
+ "questions_to_games_player_1_users_id_fk": {
+ "name": "questions_to_games_player_1_users_id_fk",
+ "tableFrom": "questions_to_games",
+ "tableTo": "users",
+ "columnsFrom": [
+ "player_1"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ },
+ "questions_to_games_player_2_users_id_fk": {
+ "name": "questions_to_games_player_2_users_id_fk",
+ "tableFrom": "questions_to_games",
+ "tableTo": "users",
+ "columnsFrom": [
+ "player_2"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {
+ "questions_to_games_game_id_question_id": {
+ "name": "questions_to_games_game_id_question_id",
+ "columns": [
+ "game_id",
+ "question_id"
+ ]
+ }
+ },
+ "uniqueConstraints": {}
+ },
+ "rooms": {
+ "name": "rooms",
+ "schema": "",
+ "columns": {
+ "code": {
+ "name": "code",
+ "type": "text",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "host_id": {
+ "name": "host_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "rooms_host_id_users_id_fk": {
+ "name": "rooms_host_id_users_id_fk",
+ "tableFrom": "rooms",
+ "tableTo": "users",
+ "columnsFrom": [
+ "host_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {}
+ },
+ "users": {
+ "name": "users",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "nickname": {
+ "name": "nickname",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {}
+ },
+ "users_to_games": {
+ "name": "users_to_games",
+ "schema": "",
+ "columns": {
+ "user_id": {
+ "name": "user_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "game_id": {
+ "name": "game_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "points": {
+ "name": "points",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true,
+ "default": 0
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "users_to_games_user_id_users_id_fk": {
+ "name": "users_to_games_user_id_users_id_fk",
+ "tableFrom": "users_to_games",
+ "tableTo": "users",
+ "columnsFrom": [
+ "user_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ },
+ "users_to_games_game_id_games_id_fk": {
+ "name": "users_to_games_game_id_games_id_fk",
+ "tableFrom": "users_to_games",
+ "tableTo": "games",
+ "columnsFrom": [
+ "game_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {
+ "users_to_games_user_id_game_id": {
+ "name": "users_to_games_user_id_game_id",
+ "columns": [
+ "user_id",
+ "game_id"
+ ]
+ }
+ },
+ "uniqueConstraints": {}
+ },
+ "users_to_rooms": {
+ "name": "users_to_rooms",
+ "schema": "",
+ "columns": {
+ "user_id": {
+ "name": "user_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "room_code": {
+ "name": "room_code",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "users_to_rooms_user_id_users_id_fk": {
+ "name": "users_to_rooms_user_id_users_id_fk",
+ "tableFrom": "users_to_rooms",
+ "tableTo": "users",
+ "columnsFrom": [
+ "user_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ },
+ "users_to_rooms_room_code_rooms_code_fk": {
+ "name": "users_to_rooms_room_code_rooms_code_fk",
+ "tableFrom": "users_to_rooms",
+ "tableTo": "rooms",
+ "columnsFrom": [
+ "room_code"
+ ],
+ "columnsTo": [
+ "code"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {
+ "users_to_rooms_user_id_room_code": {
+ "name": "users_to_rooms_user_id_room_code",
+ "columns": [
+ "user_id",
+ "room_code"
+ ]
+ }
+ },
+ "uniqueConstraints": {}
+ },
+ "votes": {
+ "name": "votes",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "user_id": {
+ "name": "user_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "generation_id": {
+ "name": "generation_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "votes_user_id_users_id_fk": {
+ "name": "votes_user_id_users_id_fk",
+ "tableFrom": "votes",
+ "tableTo": "users",
+ "columnsFrom": [
+ "user_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ },
+ "votes_generation_id_generations_id_fk": {
+ "name": "votes_generation_id_generations_id_fk",
+ "tableFrom": "votes",
+ "tableTo": "generations",
+ "columnsFrom": [
+ "generation_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "no action",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {}
+ }
+ },
+ "enums": {},
+ "schemas": {},
+ "_meta": {
+ "schemas": {},
+ "tables": {},
+ "columns": {}
+ }
+}
\ No newline at end of file
diff --git a/server/drizzle/meta/_journal.json b/server/drizzle/meta/_journal.json
index eefed629..6689d0b9 100644
--- a/server/drizzle/meta/_journal.json
+++ b/server/drizzle/meta/_journal.json
@@ -127,6 +127,13 @@
"when": 1691244559328,
"tag": "0017_nostalgic_northstar",
"breakpoints": true
+ },
+ {
+ "idx": 18,
+ "version": "5",
+ "when": 1693183820410,
+ "tag": "0018_late_thor",
+ "breakpoints": true
}
]
}
\ No newline at end of file
diff --git a/server/package.json b/server/package.json
index 3480e393..e89a19c3 100644
--- a/server/package.json
+++ b/server/package.json
@@ -14,36 +14,36 @@
"sentry:sourcemaps": "sentry-cli sourcemaps inject --org alexander-grattan --project artificial-unintelligence-server ./dist && sentry-cli sourcemaps upload --org alexander-grattan --project artificial-unintelligence-server ./dist"
},
"dependencies": {
- "@sentry/node": "^7.60.1",
+ "@sentry/node": "^7.65.0",
"cors": "^2.8.5",
- "dotenv": "^16.0.3",
- "drizzle-orm": "^0.28.1",
+ "dotenv": "^16.3.1",
+ "drizzle-orm": "^0.28.5",
"express": "^4.18.2",
"helmet": "^7.0.0",
"morgan": "^1.10.0",
- "openai": "^3.3.0",
- "pg": "^8.10.0",
- "socket.io": "^4.7.1"
+ "openai": "^4.3.1",
+ "pg": "^8.11.3",
+ "socket.io": "^4.7.2"
},
"devDependencies": {
- "@jest/globals": "^29.6.1",
- "@sentry/cli": "^2.20.1",
+ "@jest/globals": "^29.6.4",
+ "@sentry/cli": "^2.20.5",
"@types/cors": "^2.8.13",
"@types/express": "^4.17.17",
- "@types/morgan": "^1.9.4",
- "@types/node": "^18.15.11",
- "@types/pg": "^8.6.6",
- "@typescript-eslint/eslint-plugin": "^5.60.0",
- "@typescript-eslint/parser": "^5.60.0",
+ "@types/morgan": "^1.9.5",
+ "@types/node": "^20.5.7",
+ "@types/pg": "^8.10.2",
+ "@typescript-eslint/eslint-plugin": "^6.5.0",
+ "@typescript-eslint/parser": "^6.5.0",
"cross-env": "^7.0.3",
- "drizzle-kit": "^0.19.12",
- "eslint": "^8.43.0",
- "eslint-config-prettier": "^8.8.0",
- "jest": "^29.6.1",
+ "drizzle-kit": "^0.19.13",
+ "eslint": "^8.48.0",
+ "eslint-config-prettier": "^9.0.0",
+ "jest": "^29.6.4",
"nodemon": "^3.0.1",
"ts-jest": "^29.1.1",
"ts-node": "^10.9.1",
- "typescript": "^5.0.4"
+ "typescript": "^5.2.2"
},
"engines": {
"node": "18"
diff --git a/server/pnpm-lock.yaml b/server/pnpm-lock.yaml
index f3a7d169..bc0678c1 100644
--- a/server/pnpm-lock.yaml
+++ b/server/pnpm-lock.yaml
@@ -6,17 +6,17 @@ settings:
dependencies:
'@sentry/node':
- specifier: ^7.60.1
- version: 7.60.1
+ specifier: ^7.65.0
+ version: 7.65.0
cors:
specifier: ^2.8.5
version: 2.8.5
dotenv:
- specifier: ^16.0.3
- version: 16.0.3
+ specifier: ^16.3.1
+ version: 16.3.1
drizzle-orm:
- specifier: ^0.28.1
- version: 0.28.1(@types/pg@8.6.6)(pg@8.10.0)
+ specifier: ^0.28.5
+ version: 0.28.5(@types/pg@8.10.2)(pg@8.11.3)
express:
specifier: ^4.18.2
version: 4.18.2
@@ -27,14 +27,14 @@ dependencies:
specifier: ^1.10.0
version: 1.10.0
openai:
- specifier: ^3.3.0
- version: 3.3.0
+ specifier: ^4.3.1
+ version: 4.3.1
pg:
- specifier: ^8.10.0
- version: 8.10.0
+ specifier: ^8.11.3
+ version: 8.11.3
socket.io:
- specifier: ^4.7.1
- version: 4.7.1(bufferutil@4.0.7)(utf-8-validate@6.0.3)
+ specifier: ^4.7.2
+ version: 4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3)
optionalDependencies:
bufferutil:
@@ -46,11 +46,11 @@ optionalDependencies:
devDependencies:
'@jest/globals':
- specifier: ^29.6.1
- version: 29.6.1
+ specifier: ^29.6.4
+ version: 29.6.4
'@sentry/cli':
- specifier: ^2.20.1
- version: 2.20.1
+ specifier: ^2.20.5
+ version: 2.20.5
'@types/cors':
specifier: ^2.8.13
version: 2.8.13
@@ -58,63 +58,69 @@ devDependencies:
specifier: ^4.17.17
version: 4.17.17
'@types/morgan':
- specifier: ^1.9.4
- version: 1.9.4
+ specifier: ^1.9.5
+ version: 1.9.5
'@types/node':
- specifier: ^18.15.11
- version: 18.15.11
+ specifier: ^20.5.7
+ version: 20.5.7
'@types/pg':
- specifier: ^8.6.6
- version: 8.6.6
+ specifier: ^8.10.2
+ version: 8.10.2
'@typescript-eslint/eslint-plugin':
- specifier: ^5.60.0
- version: 5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(typescript@5.0.4)
+ specifier: ^6.5.0
+ version: 6.5.0(@typescript-eslint/parser@6.5.0)(eslint@8.48.0)(typescript@5.2.2)
'@typescript-eslint/parser':
- specifier: ^5.60.0
- version: 5.60.0(eslint@8.43.0)(typescript@5.0.4)
+ specifier: ^6.5.0
+ version: 6.5.0(eslint@8.48.0)(typescript@5.2.2)
cross-env:
specifier: ^7.0.3
version: 7.0.3
drizzle-kit:
- specifier: ^0.19.12
- version: 0.19.12
+ specifier: ^0.19.13
+ version: 0.19.13
eslint:
- specifier: ^8.43.0
- version: 8.43.0
+ specifier: ^8.48.0
+ version: 8.48.0
eslint-config-prettier:
- specifier: ^8.8.0
- version: 8.8.0(eslint@8.43.0)
+ specifier: ^9.0.0
+ version: 9.0.0(eslint@8.48.0)
jest:
- specifier: ^29.6.1
- version: 29.6.1(@types/node@18.15.11)(ts-node@10.9.1)
+ specifier: ^29.6.4
+ version: 29.6.4(@types/node@20.5.7)(ts-node@10.9.1)
nodemon:
specifier: ^3.0.1
version: 3.0.1
ts-jest:
specifier: ^29.1.1
- version: 29.1.1(@babel/core@7.22.9)(esbuild@0.18.20)(jest@29.6.1)(typescript@5.0.4)
+ version: 29.1.1(@babel/core@7.22.11)(esbuild@0.18.20)(jest@29.6.4)(typescript@5.2.2)
ts-node:
specifier: ^10.9.1
- version: 10.9.1(@types/node@18.15.11)(typescript@5.0.4)
+ version: 10.9.1(@types/node@20.5.7)(typescript@5.2.2)
typescript:
- specifier: ^5.0.4
- version: 5.0.4
+ specifier: ^5.2.2
+ version: 5.2.2
packages:
+ /@aashutoshrathi/word-wrap@1.2.6:
+ resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
/@ampproject/remapping@2.2.1:
resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==}
engines: {node: '>=6.0.0'}
dependencies:
'@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.18
+ '@jridgewell/trace-mapping': 0.3.19
dev: true
- /@babel/code-frame@7.22.5:
- resolution: {integrity: sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==}
+ /@babel/code-frame@7.22.13:
+ resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/highlight': 7.22.5
+ '@babel/highlight': 7.22.13
+ chalk: 2.4.2
dev: true
/@babel/compat-data@7.22.9:
@@ -122,20 +128,20 @@ packages:
engines: {node: '>=6.9.0'}
dev: true
- /@babel/core@7.22.9:
- resolution: {integrity: sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==}
+ /@babel/core@7.22.11:
+ resolution: {integrity: sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==}
engines: {node: '>=6.9.0'}
dependencies:
'@ampproject/remapping': 2.2.1
- '@babel/code-frame': 7.22.5
- '@babel/generator': 7.22.9
- '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9)
- '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.9)
- '@babel/helpers': 7.22.6
- '@babel/parser': 7.22.7
+ '@babel/code-frame': 7.22.13
+ '@babel/generator': 7.22.10
+ '@babel/helper-compilation-targets': 7.22.10
+ '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.11)
+ '@babel/helpers': 7.22.11
+ '@babel/parser': 7.22.13
'@babel/template': 7.22.5
- '@babel/traverse': 7.22.8
- '@babel/types': 7.22.5
+ '@babel/traverse': 7.22.11
+ '@babel/types': 7.22.11
convert-source-map: 1.9.0
debug: 4.3.4
gensync: 1.0.0-beta.2
@@ -145,26 +151,23 @@ packages:
- supports-color
dev: true
- /@babel/generator@7.22.9:
- resolution: {integrity: sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==}
+ /@babel/generator@7.22.10:
+ resolution: {integrity: sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
'@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.18
+ '@jridgewell/trace-mapping': 0.3.19
jsesc: 2.5.2
dev: true
- /@babel/helper-compilation-targets@7.22.9(@babel/core@7.22.9):
- resolution: {integrity: sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==}
+ /@babel/helper-compilation-targets@7.22.10:
+ resolution: {integrity: sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==}
engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
dependencies:
'@babel/compat-data': 7.22.9
- '@babel/core': 7.22.9
'@babel/helper-validator-option': 7.22.5
- browserslist: 4.21.9
+ browserslist: 4.21.10
lru-cache: 5.1.1
semver: 6.3.1
dev: true
@@ -179,30 +182,30 @@ packages:
engines: {node: '>=6.9.0'}
dependencies:
'@babel/template': 7.22.5
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
dev: true
/@babel/helper-hoist-variables@7.22.5:
resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
dev: true
/@babel/helper-module-imports@7.22.5:
resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
dev: true
- /@babel/helper-module-transforms@7.22.9(@babel/core@7.22.9):
+ /@babel/helper-module-transforms@7.22.9(@babel/core@7.22.11):
resolution: {integrity: sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-environment-visitor': 7.22.5
'@babel/helper-module-imports': 7.22.5
'@babel/helper-simple-access': 7.22.5
@@ -219,14 +222,14 @@ packages:
resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
dev: true
/@babel/helper-split-export-declaration@7.22.6:
resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
dev: true
/@babel/helper-string-parser@7.22.5:
@@ -244,19 +247,19 @@ packages:
engines: {node: '>=6.9.0'}
dev: true
- /@babel/helpers@7.22.6:
- resolution: {integrity: sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==}
+ /@babel/helpers@7.22.11:
+ resolution: {integrity: sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/template': 7.22.5
- '@babel/traverse': 7.22.8
- '@babel/types': 7.22.5
+ '@babel/traverse': 7.22.11
+ '@babel/types': 7.22.11
transitivePeerDependencies:
- supports-color
dev: true
- /@babel/highlight@7.22.5:
- resolution: {integrity: sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==}
+ /@babel/highlight@7.22.13:
+ resolution: {integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/helper-validator-identifier': 7.22.5
@@ -264,140 +267,140 @@ packages:
js-tokens: 4.0.0
dev: true
- /@babel/parser@7.22.7:
- resolution: {integrity: sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==}
+ /@babel/parser@7.22.13:
+ resolution: {integrity: sha512-3l6+4YOvc9wx7VlCSw4yQfcBo01ECA8TicQfbnCPuCEpRQrf+gTUyGdxNw+pyTUyywp6JRD1w0YQs9TpBXYlkw==}
engines: {node: '>=6.0.0'}
hasBin: true
dependencies:
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
dev: true
- /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.22.9):
+ /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.22.11):
resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.22.9):
+ /@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.22.11):
resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.22.9):
+ /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.22.11):
resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.22.9):
+ /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.22.11):
resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.22.9):
+ /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.22.11):
resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.22.9):
+ /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.22.11):
resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.22.9):
+ /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.22.11):
resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.22.9):
+ /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.22.11):
resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.22.9):
+ /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.22.11):
resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.22.9):
+ /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.22.11):
resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.22.9):
+ /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.22.11):
resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.22.9):
+ /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.22.11):
resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.22.9):
+ /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.22.11):
resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.22.9):
+ /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.22.11):
resolution: {integrity: sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
'@babel/helper-plugin-utils': 7.22.5
dev: true
@@ -405,31 +408,31 @@ packages:
resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/code-frame': 7.22.5
- '@babel/parser': 7.22.7
- '@babel/types': 7.22.5
+ '@babel/code-frame': 7.22.13
+ '@babel/parser': 7.22.13
+ '@babel/types': 7.22.11
dev: true
- /@babel/traverse@7.22.8:
- resolution: {integrity: sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==}
+ /@babel/traverse@7.22.11:
+ resolution: {integrity: sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/code-frame': 7.22.5
- '@babel/generator': 7.22.9
+ '@babel/code-frame': 7.22.13
+ '@babel/generator': 7.22.10
'@babel/helper-environment-visitor': 7.22.5
'@babel/helper-function-name': 7.22.5
'@babel/helper-hoist-variables': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
- '@babel/parser': 7.22.7
- '@babel/types': 7.22.5
+ '@babel/parser': 7.22.13
+ '@babel/types': 7.22.11
debug: 4.3.4
globals: 11.12.0
transitivePeerDependencies:
- supports-color
dev: true
- /@babel/types@7.22.5:
- resolution: {integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==}
+ /@babel/types@7.22.11:
+ resolution: {integrity: sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/helper-string-parser': 7.22.5
@@ -452,29 +455,20 @@ packages:
resolution: {integrity: sha512-ps5qF0tMxWRVu+V5gvCRrQNqlY92aTnIKdq27gm9LZMSdaKYZt6AVvSK1dlUMzs6Rt0Jm80b+eWct6xShBKhIw==}
dev: true
- /@esbuild-kit/core-utils@3.1.0:
- resolution: {integrity: sha512-Uuk8RpCg/7fdHSceR1M6XbSZFSuMrxcePFuGgyvsBn+u339dk5OeL4jv2EojwTN2st/unJGsVm4qHWjWNmJ/tw==}
+ /@esbuild-kit/core-utils@3.2.2:
+ resolution: {integrity: sha512-Ub6LaRaAgF80dTSzUdXpFLM1pVDdmEVB9qb5iAzSpyDlX/mfJTFGOnZ516O05p5uWWteNviMKi4PAyEuRxI5gA==}
dependencies:
- esbuild: 0.17.19
+ esbuild: 0.18.20
source-map-support: 0.5.21
dev: true
/@esbuild-kit/esm-loader@2.5.5:
resolution: {integrity: sha512-Qwfvj/qoPbClxCRNuac1Du01r9gvNOT+pMYtJDapfB1eoGN1YlJ1BixLyL9WVENRx5RXgNLdfYdx/CuswlGhMw==}
dependencies:
- '@esbuild-kit/core-utils': 3.1.0
+ '@esbuild-kit/core-utils': 3.2.2
get-tsconfig: 4.7.0
dev: true
- /@esbuild/android-arm64@0.17.19:
- resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [android]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/android-arm64@0.18.20:
resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==}
engines: {node: '>=12'}
@@ -484,15 +478,6 @@ packages:
dev: true
optional: true
- /@esbuild/android-arm@0.17.19:
- resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==}
- engines: {node: '>=12'}
- cpu: [arm]
- os: [android]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/android-arm@0.18.20:
resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==}
engines: {node: '>=12'}
@@ -502,15 +487,6 @@ packages:
dev: true
optional: true
- /@esbuild/android-x64@0.17.19:
- resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [android]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/android-x64@0.18.20:
resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==}
engines: {node: '>=12'}
@@ -520,15 +496,6 @@ packages:
dev: true
optional: true
- /@esbuild/darwin-arm64@0.17.19:
- resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [darwin]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/darwin-arm64@0.18.20:
resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==}
engines: {node: '>=12'}
@@ -538,15 +505,6 @@ packages:
dev: true
optional: true
- /@esbuild/darwin-x64@0.17.19:
- resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [darwin]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/darwin-x64@0.18.20:
resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==}
engines: {node: '>=12'}
@@ -556,15 +514,6 @@ packages:
dev: true
optional: true
- /@esbuild/freebsd-arm64@0.17.19:
- resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [freebsd]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/freebsd-arm64@0.18.20:
resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==}
engines: {node: '>=12'}
@@ -574,15 +523,6 @@ packages:
dev: true
optional: true
- /@esbuild/freebsd-x64@0.17.19:
- resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [freebsd]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/freebsd-x64@0.18.20:
resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==}
engines: {node: '>=12'}
@@ -592,15 +532,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-arm64@0.17.19:
- resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-arm64@0.18.20:
resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==}
engines: {node: '>=12'}
@@ -610,15 +541,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-arm@0.17.19:
- resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==}
- engines: {node: '>=12'}
- cpu: [arm]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-arm@0.18.20:
resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==}
engines: {node: '>=12'}
@@ -628,15 +550,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-ia32@0.17.19:
- resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==}
- engines: {node: '>=12'}
- cpu: [ia32]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-ia32@0.18.20:
resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==}
engines: {node: '>=12'}
@@ -646,15 +559,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-loong64@0.17.19:
- resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==}
- engines: {node: '>=12'}
- cpu: [loong64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-loong64@0.18.20:
resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==}
engines: {node: '>=12'}
@@ -664,15 +568,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-mips64el@0.17.19:
- resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==}
- engines: {node: '>=12'}
- cpu: [mips64el]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-mips64el@0.18.20:
resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==}
engines: {node: '>=12'}
@@ -682,15 +577,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-ppc64@0.17.19:
- resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==}
- engines: {node: '>=12'}
- cpu: [ppc64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-ppc64@0.18.20:
resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==}
engines: {node: '>=12'}
@@ -700,15 +586,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-riscv64@0.17.19:
- resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==}
- engines: {node: '>=12'}
- cpu: [riscv64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-riscv64@0.18.20:
resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==}
engines: {node: '>=12'}
@@ -718,15 +595,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-s390x@0.17.19:
- resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==}
- engines: {node: '>=12'}
- cpu: [s390x]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-s390x@0.18.20:
resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==}
engines: {node: '>=12'}
@@ -736,15 +604,6 @@ packages:
dev: true
optional: true
- /@esbuild/linux-x64@0.17.19:
- resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/linux-x64@0.18.20:
resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==}
engines: {node: '>=12'}
@@ -754,15 +613,6 @@ packages:
dev: true
optional: true
- /@esbuild/netbsd-x64@0.17.19:
- resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [netbsd]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/netbsd-x64@0.18.20:
resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==}
engines: {node: '>=12'}
@@ -772,15 +622,6 @@ packages:
dev: true
optional: true
- /@esbuild/openbsd-x64@0.17.19:
- resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [openbsd]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/openbsd-x64@0.18.20:
resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==}
engines: {node: '>=12'}
@@ -790,15 +631,6 @@ packages:
dev: true
optional: true
- /@esbuild/sunos-x64@0.17.19:
- resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [sunos]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/sunos-x64@0.18.20:
resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==}
engines: {node: '>=12'}
@@ -808,15 +640,6 @@ packages:
dev: true
optional: true
- /@esbuild/win32-arm64@0.17.19:
- resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [win32]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/win32-arm64@0.18.20:
resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==}
engines: {node: '>=12'}
@@ -826,15 +649,6 @@ packages:
dev: true
optional: true
- /@esbuild/win32-ia32@0.17.19:
- resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==}
- engines: {node: '>=12'}
- cpu: [ia32]
- os: [win32]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/win32-ia32@0.18.20:
resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==}
engines: {node: '>=12'}
@@ -844,15 +658,6 @@ packages:
dev: true
optional: true
- /@esbuild/win32-x64@0.17.19:
- resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [win32]
- requiresBuild: true
- dev: true
- optional: true
-
/@esbuild/win32-x64@0.18.20:
resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==}
engines: {node: '>=12'}
@@ -862,29 +667,29 @@ packages:
dev: true
optional: true
- /@eslint-community/eslint-utils@4.4.0(eslint@8.43.0):
+ /@eslint-community/eslint-utils@4.4.0(eslint@8.48.0):
resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
dependencies:
- eslint: 8.43.0
- eslint-visitor-keys: 3.4.1
+ eslint: 8.48.0
+ eslint-visitor-keys: 3.4.3
dev: true
- /@eslint-community/regexpp@4.5.1:
- resolution: {integrity: sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==}
+ /@eslint-community/regexpp@4.8.0:
+ resolution: {integrity: sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==}
engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
dev: true
- /@eslint/eslintrc@2.0.3:
- resolution: {integrity: sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==}
+ /@eslint/eslintrc@2.1.2:
+ resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
ajv: 6.12.6
debug: 4.3.4
- espree: 9.5.2
- globals: 13.20.0
+ espree: 9.6.1
+ globals: 13.21.0
ignore: 5.2.4
import-fresh: 3.3.0
js-yaml: 4.1.0
@@ -894,13 +699,13 @@ packages:
- supports-color
dev: true
- /@eslint/js@8.43.0:
- resolution: {integrity: sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg==}
+ /@eslint/js@8.48.0:
+ resolution: {integrity: sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /@humanwhocodes/config-array@0.11.10:
- resolution: {integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==}
+ /@humanwhocodes/config-array@0.11.11:
+ resolution: {integrity: sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==}
engines: {node: '>=10.10.0'}
dependencies:
'@humanwhocodes/object-schema': 1.2.1
@@ -935,20 +740,20 @@ packages:
engines: {node: '>=8'}
dev: true
- /@jest/console@29.6.1:
- resolution: {integrity: sha512-Aj772AYgwTSr5w8qnyoJ0eDYvN6bMsH3ORH1ivMotrInHLKdUz6BDlaEXHdM6kODaBIkNIyQGzsMvRdOv7VG7Q==}
+ /@jest/console@29.6.4:
+ resolution: {integrity: sha512-wNK6gC0Ha9QeEPSkeJedQuTQqxZYnDPuDcDhVuVatRvMkL4D0VTvFVZj+Yuh6caG2aOfzkUZ36KtCmLNtR02hw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
chalk: 4.1.2
- jest-message-util: 29.6.1
- jest-util: 29.6.1
+ jest-message-util: 29.6.3
+ jest-util: 29.6.3
slash: 3.0.0
dev: true
- /@jest/core@29.6.1(ts-node@10.9.1):
- resolution: {integrity: sha512-CcowHypRSm5oYQ1obz1wfvkjZZ2qoQlrKKvlfPwh5jUXVU12TWr2qMeH8chLMuTFzHh5a1g2yaqlqDICbr+ukQ==}
+ /@jest/core@29.6.4(ts-node@10.9.1):
+ resolution: {integrity: sha512-U/vq5ccNTSVgYH7mHnodHmCffGWHJnz/E1BEWlLuK5pM4FZmGfBn/nrJGLjUsSmyx3otCeqc1T31F4y08AMDLg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
peerDependencies:
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
@@ -956,92 +761,93 @@ packages:
node-notifier:
optional: true
dependencies:
- '@jest/console': 29.6.1
- '@jest/reporters': 29.6.1
- '@jest/test-result': 29.6.1
- '@jest/transform': 29.6.1
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
+ '@jest/console': 29.6.4
+ '@jest/reporters': 29.6.4
+ '@jest/test-result': 29.6.4
+ '@jest/transform': 29.6.4
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 3.8.0
exit: 0.1.2
graceful-fs: 4.2.11
- jest-changed-files: 29.5.0
- jest-config: 29.6.1(@types/node@18.15.11)(ts-node@10.9.1)
- jest-haste-map: 29.6.1
- jest-message-util: 29.6.1
- jest-regex-util: 29.4.3
- jest-resolve: 29.6.1
- jest-resolve-dependencies: 29.6.1
- jest-runner: 29.6.1
- jest-runtime: 29.6.1
- jest-snapshot: 29.6.1
- jest-util: 29.6.1
- jest-validate: 29.6.1
- jest-watcher: 29.6.1
+ jest-changed-files: 29.6.3
+ jest-config: 29.6.4(@types/node@20.5.7)(ts-node@10.9.1)
+ jest-haste-map: 29.6.4
+ jest-message-util: 29.6.3
+ jest-regex-util: 29.6.3
+ jest-resolve: 29.6.4
+ jest-resolve-dependencies: 29.6.4
+ jest-runner: 29.6.4
+ jest-runtime: 29.6.4
+ jest-snapshot: 29.6.4
+ jest-util: 29.6.3
+ jest-validate: 29.6.3
+ jest-watcher: 29.6.4
micromatch: 4.0.5
- pretty-format: 29.6.1
+ pretty-format: 29.6.3
slash: 3.0.0
strip-ansi: 6.0.1
transitivePeerDependencies:
+ - babel-plugin-macros
- supports-color
- ts-node
dev: true
- /@jest/environment@29.6.1:
- resolution: {integrity: sha512-RMMXx4ws+Gbvw3DfLSuo2cfQlK7IwGbpuEWXCqyYDcqYTI+9Ju3a5hDnXaxjNsa6uKh9PQF2v+qg+RLe63tz5A==}
+ /@jest/environment@29.6.4:
+ resolution: {integrity: sha512-sQ0SULEjA1XUTHmkBRl7A1dyITM9yb1yb3ZNKPX3KlTd6IG7mWUe3e2yfExtC2Zz1Q+mMckOLHmL/qLiuQJrBQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/fake-timers': 29.6.1
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
- jest-mock: 29.6.1
+ '@jest/fake-timers': 29.6.4
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
+ jest-mock: 29.6.3
dev: true
- /@jest/expect-utils@29.6.1:
- resolution: {integrity: sha512-o319vIf5pEMx0LmzSxxkYYxo4wrRLKHq9dP1yJU7FoPTB0LfAKSz8SWD6D/6U3v/O52t9cF5t+MeJiRsfk7zMw==}
+ /@jest/expect-utils@29.6.4:
+ resolution: {integrity: sha512-FEhkJhqtvBwgSpiTrocquJCdXPsyvNKcl/n7A3u7X4pVoF4bswm11c9d4AV+kfq2Gpv/mM8x7E7DsRvH+djkrg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- jest-get-type: 29.4.3
+ jest-get-type: 29.6.3
dev: true
- /@jest/expect@29.6.1:
- resolution: {integrity: sha512-N5xlPrAYaRNyFgVf2s9Uyyvr795jnB6rObuPx4QFvNJz8aAjpZUDfO4bh5G/xuplMID8PrnuF1+SfSyDxhsgYg==}
+ /@jest/expect@29.6.4:
+ resolution: {integrity: sha512-Warhsa7d23+3X5bLbrbYvaehcgX5TLYhI03JKoedTiI8uJU4IhqYBWF7OSSgUyz4IgLpUYPkK0AehA5/fRclAA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- expect: 29.6.1
- jest-snapshot: 29.6.1
+ expect: 29.6.4
+ jest-snapshot: 29.6.4
transitivePeerDependencies:
- supports-color
dev: true
- /@jest/fake-timers@29.6.1:
- resolution: {integrity: sha512-RdgHgbXyosCDMVYmj7lLpUwXA4c69vcNzhrt69dJJdf8azUrpRh3ckFCaTPNjsEeRi27Cig0oKDGxy5j7hOgHg==}
+ /@jest/fake-timers@29.6.4:
+ resolution: {integrity: sha512-6UkCwzoBK60edXIIWb0/KWkuj7R7Qq91vVInOe3De6DSpaEiqjKcJw4F7XUet24Wupahj9J6PlR09JqJ5ySDHw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/types': 29.6.1
+ '@jest/types': 29.6.3
'@sinonjs/fake-timers': 10.3.0
- '@types/node': 18.15.11
- jest-message-util: 29.6.1
- jest-mock: 29.6.1
- jest-util: 29.6.1
+ '@types/node': 20.5.7
+ jest-message-util: 29.6.3
+ jest-mock: 29.6.3
+ jest-util: 29.6.3
dev: true
- /@jest/globals@29.6.1:
- resolution: {integrity: sha512-2VjpaGy78JY9n9370H8zGRCFbYVWwjY6RdDMhoJHa1sYfwe6XM/azGN0SjY8kk7BOZApIejQ1BFPyH7FPG0w3A==}
+ /@jest/globals@29.6.4:
+ resolution: {integrity: sha512-wVIn5bdtjlChhXAzVXavcY/3PEjf4VqM174BM3eGL5kMxLiZD5CLnbmkEyA1Dwh9q8XjP6E8RwjBsY/iCWrWsA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/environment': 29.6.1
- '@jest/expect': 29.6.1
- '@jest/types': 29.6.1
- jest-mock: 29.6.1
+ '@jest/environment': 29.6.4
+ '@jest/expect': 29.6.4
+ '@jest/types': 29.6.3
+ jest-mock: 29.6.3
transitivePeerDependencies:
- supports-color
dev: true
- /@jest/reporters@29.6.1:
- resolution: {integrity: sha512-9zuaI9QKr9JnoZtFQlw4GREQbxgmNYXU6QuWtmuODvk5nvPUeBYapVR/VYMyi2WSx3jXTLJTJji8rN6+Cm4+FA==}
+ /@jest/reporters@29.6.4:
+ resolution: {integrity: sha512-sxUjWxm7QdchdrD3NfWKrL8FBsortZeibSJv4XLjESOOjSUOkjQcb0ZHJwfhEGIvBvTluTzfG2yZWZhkrXJu8g==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
peerDependencies:
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
@@ -1050,25 +856,25 @@ packages:
optional: true
dependencies:
'@bcoe/v8-coverage': 0.2.3
- '@jest/console': 29.6.1
- '@jest/test-result': 29.6.1
- '@jest/transform': 29.6.1
- '@jest/types': 29.6.1
- '@jridgewell/trace-mapping': 0.3.18
- '@types/node': 18.15.11
+ '@jest/console': 29.6.4
+ '@jest/test-result': 29.6.4
+ '@jest/transform': 29.6.4
+ '@jest/types': 29.6.3
+ '@jridgewell/trace-mapping': 0.3.19
+ '@types/node': 20.5.7
chalk: 4.1.2
collect-v8-coverage: 1.0.2
exit: 0.1.2
glob: 7.2.3
graceful-fs: 4.2.11
istanbul-lib-coverage: 3.2.0
- istanbul-lib-instrument: 5.2.1
- istanbul-lib-report: 3.0.0
+ istanbul-lib-instrument: 6.0.0
+ istanbul-lib-report: 3.0.1
istanbul-lib-source-maps: 4.0.1
- istanbul-reports: 3.1.5
- jest-message-util: 29.6.1
- jest-util: 29.6.1
- jest-worker: 29.6.1
+ istanbul-reports: 3.1.6
+ jest-message-util: 29.6.3
+ jest-util: 29.6.3
+ jest-worker: 29.6.4
slash: 3.0.0
string-length: 4.0.2
strip-ansi: 6.0.1
@@ -1077,57 +883,57 @@ packages:
- supports-color
dev: true
- /@jest/schemas@29.6.0:
- resolution: {integrity: sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==}
+ /@jest/schemas@29.6.3:
+ resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@sinclair/typebox': 0.27.8
dev: true
- /@jest/source-map@29.6.0:
- resolution: {integrity: sha512-oA+I2SHHQGxDCZpbrsCQSoMLb3Bz547JnM+jUr9qEbuw0vQlWZfpPS7CO9J7XiwKicEz9OFn/IYoLkkiUD7bzA==}
+ /@jest/source-map@29.6.3:
+ resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jridgewell/trace-mapping': 0.3.18
+ '@jridgewell/trace-mapping': 0.3.19
callsites: 3.1.0
graceful-fs: 4.2.11
dev: true
- /@jest/test-result@29.6.1:
- resolution: {integrity: sha512-Ynr13ZRcpX6INak0TPUukU8GWRfm/vAytE3JbJNGAvINySWYdfE7dGZMbk36oVuK4CigpbhMn8eg1dixZ7ZJOw==}
+ /@jest/test-result@29.6.4:
+ resolution: {integrity: sha512-uQ1C0AUEN90/dsyEirgMLlouROgSY+Wc/JanVVk0OiUKa5UFh7sJpMEM3aoUBAz2BRNvUJ8j3d294WFuRxSyOQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/console': 29.6.1
- '@jest/types': 29.6.1
+ '@jest/console': 29.6.4
+ '@jest/types': 29.6.3
'@types/istanbul-lib-coverage': 2.0.4
collect-v8-coverage: 1.0.2
dev: true
- /@jest/test-sequencer@29.6.1:
- resolution: {integrity: sha512-oBkC36PCDf/wb6dWeQIhaviU0l5u6VCsXa119yqdUosYAt7/FbQU2M2UoziO3igj/HBDEgp57ONQ3fm0v9uyyg==}
+ /@jest/test-sequencer@29.6.4:
+ resolution: {integrity: sha512-E84M6LbpcRq3fT4ckfKs9ryVanwkaIB0Ws9bw3/yP4seRLg/VaCZ/LgW0MCq5wwk4/iP/qnilD41aj2fsw2RMg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/test-result': 29.6.1
+ '@jest/test-result': 29.6.4
graceful-fs: 4.2.11
- jest-haste-map: 29.6.1
+ jest-haste-map: 29.6.4
slash: 3.0.0
dev: true
- /@jest/transform@29.6.1:
- resolution: {integrity: sha512-URnTneIU3ZjRSaf906cvf6Hpox3hIeJXRnz3VDSw5/X93gR8ycdfSIEy19FlVx8NFmpN7fe3Gb1xF+NjXaQLWg==}
+ /@jest/transform@29.6.4:
+ resolution: {integrity: sha512-8thgRSiXUqtr/pPGY/OsyHuMjGyhVnWrFAwoxmIemlBuiMyU1WFs0tXoNxzcr4A4uErs/ABre76SGmrr5ab/AA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@babel/core': 7.22.9
- '@jest/types': 29.6.1
- '@jridgewell/trace-mapping': 0.3.18
+ '@babel/core': 7.22.11
+ '@jest/types': 29.6.3
+ '@jridgewell/trace-mapping': 0.3.19
babel-plugin-istanbul: 6.1.1
chalk: 4.1.2
convert-source-map: 2.0.0
fast-json-stable-stringify: 2.1.0
graceful-fs: 4.2.11
- jest-haste-map: 29.6.1
- jest-regex-util: 29.4.3
- jest-util: 29.6.1
+ jest-haste-map: 29.6.4
+ jest-regex-util: 29.6.3
+ jest-util: 29.6.3
micromatch: 4.0.5
pirates: 4.0.6
slash: 3.0.0
@@ -1136,14 +942,14 @@ packages:
- supports-color
dev: true
- /@jest/types@29.6.1:
- resolution: {integrity: sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==}
+ /@jest/types@29.6.3:
+ resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/schemas': 29.6.0
+ '@jest/schemas': 29.6.3
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
'@types/yargs': 17.0.24
chalk: 4.1.2
dev: true
@@ -1154,12 +960,7 @@ packages:
dependencies:
'@jridgewell/set-array': 1.1.2
'@jridgewell/sourcemap-codec': 1.4.15
- '@jridgewell/trace-mapping': 0.3.18
- dev: true
-
- /@jridgewell/resolve-uri@3.1.0:
- resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==}
- engines: {node: '>=6.0.0'}
+ '@jridgewell/trace-mapping': 0.3.19
dev: true
/@jridgewell/resolve-uri@3.1.1:
@@ -1172,19 +973,15 @@ packages:
engines: {node: '>=6.0.0'}
dev: true
- /@jridgewell/sourcemap-codec@1.4.14:
- resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
- dev: true
-
/@jridgewell/sourcemap-codec@1.4.15:
resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
dev: true
- /@jridgewell/trace-mapping@0.3.18:
- resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==}
+ /@jridgewell/trace-mapping@0.3.19:
+ resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==}
dependencies:
- '@jridgewell/resolve-uri': 3.1.0
- '@jridgewell/sourcemap-codec': 1.4.14
+ '@jridgewell/resolve-uri': 3.1.1
+ '@jridgewell/sourcemap-codec': 1.4.15
dev: true
/@jridgewell/trace-mapping@0.3.9:
@@ -1215,24 +1012,24 @@ packages:
fastq: 1.15.0
dev: true
- /@sentry-internal/tracing@7.60.1:
- resolution: {integrity: sha512-2vM+3/ddzmoBfi92OOD9FFTHXf0HdQhKtNM26+/RsmkKnTid+/inbvA7nKi+Qa7ExcnlC6eclEHQEg+0X3yDkQ==}
+ /@sentry-internal/tracing@7.65.0:
+ resolution: {integrity: sha512-TEYkiq5vKr1Y79YIu+UYr1sO3vEMttQOBsOZLziDbqiC7TvKUARBR4W5XWfb9qBVDeon87EFNKluW0/+7rzYWw==}
engines: {node: '>=8'}
dependencies:
- '@sentry/core': 7.60.1
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
- tslib: 2.6.1
+ '@sentry/core': 7.65.0
+ '@sentry/types': 7.65.0
+ '@sentry/utils': 7.65.0
+ tslib: 2.6.2
dev: false
- /@sentry/cli@2.20.1:
- resolution: {integrity: sha512-HxzwFQf5gPKfksyj2ZhUicg/avHLCOd/EjZTERSXv5V7GohaTlsNxf9Sbvv/nsu8479vogTllSU6xg5BgXAVUw==}
+ /@sentry/cli@2.20.5:
+ resolution: {integrity: sha512-ZvWb86eF0QXH9C5Mbi87aUmr8SH848yEpXJmlM2AoBowpE9kKDnewCAKvyXUihojUFwCSEEjoJhrRMMgmCZqXA==}
engines: {node: '>= 10'}
hasBin: true
requiresBuild: true
dependencies:
https-proxy-agent: 5.0.1
- node-fetch: 2.6.12
+ node-fetch: 2.7.0
progress: 2.0.3
proxy-from-env: 1.1.0
which: 2.0.2
@@ -1241,42 +1038,42 @@ packages:
- supports-color
dev: true
- /@sentry/core@7.60.1:
- resolution: {integrity: sha512-yr/0VFYWOJyXj+F2nifkRYxXskotsNnDggUnFOZZN2ZgTG94IzRFsOZQ6RslHJ8nrYPTBNO74reU0C0GB++xRw==}
+ /@sentry/core@7.65.0:
+ resolution: {integrity: sha512-EwZABW8CtAbRGXV69FqeCqcNApA+Jbq308dko0W+MFdFe+9t2RGubUkpPxpJcbWy/dN2j4LiuENu1T7nWn0ZAQ==}
engines: {node: '>=8'}
dependencies:
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
- tslib: 2.6.1
+ '@sentry/types': 7.65.0
+ '@sentry/utils': 7.65.0
+ tslib: 2.6.2
dev: false
- /@sentry/node@7.60.1:
- resolution: {integrity: sha512-lBt3RqncY4XbzM+PlTbH/tUWeOsm24anwEzvA2DSDP1NL3WZ5MdvT77q7NqpvpVNd2LeGAQ6x7AXDzE53YBfnQ==}
+ /@sentry/node@7.65.0:
+ resolution: {integrity: sha512-zRCHOO7vIQukgFdEib3X7nP7HA9Uyc/o4QMtBnAREaYKzERGRnArvaB3Na0bXsuLVCOELoCAlrzFH3apmgxBQw==}
engines: {node: '>=8'}
dependencies:
- '@sentry-internal/tracing': 7.60.1
- '@sentry/core': 7.60.1
- '@sentry/types': 7.60.1
- '@sentry/utils': 7.60.1
+ '@sentry-internal/tracing': 7.65.0
+ '@sentry/core': 7.65.0
+ '@sentry/types': 7.65.0
+ '@sentry/utils': 7.65.0
cookie: 0.4.2
https-proxy-agent: 5.0.1
lru_map: 0.3.3
- tslib: 2.6.1
+ tslib: 2.6.2
transitivePeerDependencies:
- supports-color
dev: false
- /@sentry/types@7.60.1:
- resolution: {integrity: sha512-8lKKSCOhZ953cWxwnfZwoR3ZFFlZG4P3PQFTaFt/u4LxLh/0zYbdtgvtUqXRURjMCi5P6ddeE9Uw9FGnTJCsTw==}
+ /@sentry/types@7.65.0:
+ resolution: {integrity: sha512-YYq7IDLLhpSBTmHoyWFtq/5ZDaEJ01r7xGuhB0aSIq33cm2I7im/B3ipzoOP/ukGZSIhuYVW9t531xZEO0+6og==}
engines: {node: '>=8'}
dev: false
- /@sentry/utils@7.60.1:
- resolution: {integrity: sha512-ik+5sKGBx4DWuvf6UUKPSafaDiASxP+Xvjg3C9ppop2I/JWxP1FfZ5g22n5ZmPmNahD6clTSoTWly8qyDUlUOw==}
+ /@sentry/utils@7.65.0:
+ resolution: {integrity: sha512-2JEBf4jzRSClhp+LJpX/E3QgHEeKvXqFMeNhmwQ07qqd6szhfH2ckYFj4gXk6YiGGY4Act3C6oxLfdZovG71bw==}
engines: {node: '>=8'}
dependencies:
- '@sentry/types': 7.60.1
- tslib: 2.6.1
+ '@sentry/types': 7.65.0
+ tslib: 2.6.2
dev: false
/@sinclair/typebox@0.27.8:
@@ -1311,15 +1108,15 @@ packages:
resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==}
dev: true
- /@tsconfig/node16@1.0.3:
- resolution: {integrity: sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==}
+ /@tsconfig/node16@1.0.4:
+ resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==}
dev: true
/@types/babel__core@7.20.1:
resolution: {integrity: sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==}
dependencies:
- '@babel/parser': 7.22.7
- '@babel/types': 7.22.5
+ '@babel/parser': 7.22.13
+ '@babel/types': 7.22.11
'@types/babel__generator': 7.6.4
'@types/babel__template': 7.4.1
'@types/babel__traverse': 7.20.1
@@ -1328,33 +1125,33 @@ packages:
/@types/babel__generator@7.6.4:
resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==}
dependencies:
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
dev: true
/@types/babel__template@7.4.1:
resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==}
dependencies:
- '@babel/parser': 7.22.7
- '@babel/types': 7.22.5
+ '@babel/parser': 7.22.13
+ '@babel/types': 7.22.11
dev: true
/@types/babel__traverse@7.20.1:
resolution: {integrity: sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==}
dependencies:
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
dev: true
/@types/body-parser@1.19.2:
resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==}
dependencies:
'@types/connect': 3.4.35
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
dev: true
/@types/connect@3.4.35:
resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==}
dependencies:
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
dev: true
/@types/cookie@0.4.1:
@@ -1364,29 +1161,34 @@ packages:
/@types/cors@2.8.13:
resolution: {integrity: sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==}
dependencies:
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
- /@types/express-serve-static-core@4.17.33:
- resolution: {integrity: sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==}
+ /@types/express-serve-static-core@4.17.36:
+ resolution: {integrity: sha512-zbivROJ0ZqLAtMzgzIUC4oNqDG9iF0lSsAqpOD9kbs5xcIM3dTiyuHvBc7R8MtWBp3AAWGaovJa+wzWPjLYW7Q==}
dependencies:
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
'@types/qs': 6.9.7
'@types/range-parser': 1.2.4
+ '@types/send': 0.17.1
dev: true
/@types/express@4.17.17:
resolution: {integrity: sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==}
dependencies:
'@types/body-parser': 1.19.2
- '@types/express-serve-static-core': 4.17.33
+ '@types/express-serve-static-core': 4.17.36
'@types/qs': 6.9.7
- '@types/serve-static': 1.15.1
+ '@types/serve-static': 1.15.2
dev: true
/@types/graceful-fs@4.1.6:
resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==}
dependencies:
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
+ dev: true
+
+ /@types/http-errors@2.0.1:
+ resolution: {integrity: sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ==}
dev: true
/@types/istanbul-lib-coverage@2.0.4:
@@ -1409,29 +1211,40 @@ packages:
resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==}
dev: true
+ /@types/mime@1.3.2:
+ resolution: {integrity: sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==}
+ dev: true
+
/@types/mime@3.0.1:
resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==}
dev: true
- /@types/morgan@1.9.4:
- resolution: {integrity: sha512-cXoc4k+6+YAllH3ZHmx4hf7La1dzUk6keTR4bF4b4Sc0mZxU/zK4wO7l+ZzezXm/jkYj/qC+uYGZrarZdIVvyQ==}
+ /@types/morgan@1.9.5:
+ resolution: {integrity: sha512-5TgfIWm0lcTGnbCZExwc19dCOMOMmAiiBZQj8Ko3NRxsVDgRxf+AEGRQTqNVA5Yh2xfdWp4clbAEMbYP+jkOqg==}
dependencies:
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
dev: true
- /@types/node@18.15.11:
- resolution: {integrity: sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==}
+ /@types/node-fetch@2.6.4:
+ resolution: {integrity: sha512-1ZX9fcN4Rvkvgv4E6PAY5WXUFWFcRWxZa3EW83UjycOB9ljJCedb2CupIP4RZMEwF/M3eTcCihbBRgwtGbg5Rg==}
+ dependencies:
+ '@types/node': 20.5.7
+ form-data: 3.0.1
+ dev: false
+
+ /@types/node@18.17.12:
+ resolution: {integrity: sha512-d6xjC9fJ/nSnfDeU0AMDsaJyb1iHsqCSOdi84w4u+SlN/UgQdY5tRhpMzaFYsI4mnpvgTivEaQd0yOUhAtOnEQ==}
+ dev: false
- /@types/pg@8.6.6:
- resolution: {integrity: sha512-O2xNmXebtwVekJDD+02udOncjVcMZQuTEQEMpKJ0ZRf5E7/9JJX3izhKUcUifBkyKpljyUM6BTgy2trmviKlpw==}
+ /@types/node@20.5.7:
+ resolution: {integrity: sha512-dP7f3LdZIysZnmvP3ANJYTSwg+wLLl8p7RqniVlV7j+oXSXAbt9h0WIBFmJy5inWZoX9wZN6eXx+YXd9Rh3RBA==}
+
+ /@types/pg@8.10.2:
+ resolution: {integrity: sha512-MKFs9P6nJ+LAeHLU3V0cODEOgyThJ3OAnmOlsZsxux6sfQs3HRXR5bBn7xG5DjckEFhTAxsXi7k7cd0pCMxpJw==}
dependencies:
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
pg-protocol: 1.6.0
- pg-types: 2.2.0
-
- /@types/prettier@2.7.3:
- resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==}
- dev: true
+ pg-types: 4.0.1
/@types/qs@6.9.7:
resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==}
@@ -1441,15 +1254,23 @@ packages:
resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==}
dev: true
- /@types/semver@7.5.0:
- resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==}
+ /@types/semver@7.5.1:
+ resolution: {integrity: sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==}
+ dev: true
+
+ /@types/send@0.17.1:
+ resolution: {integrity: sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==}
+ dependencies:
+ '@types/mime': 1.3.2
+ '@types/node': 20.5.7
dev: true
- /@types/serve-static@1.15.1:
- resolution: {integrity: sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==}
+ /@types/serve-static@1.15.2:
+ resolution: {integrity: sha512-J2LqtvFYCzaj8pVYKw8klQXrLLk7TBZmQ4ShlcdkELFKGwGMfevMLneMMRkMgZxotOD9wg497LpC7O8PcvAmfw==}
dependencies:
+ '@types/http-errors': 2.0.1
'@types/mime': 3.0.1
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
dev: true
/@types/stack-utils@2.0.1:
@@ -1466,140 +1287,148 @@ packages:
'@types/yargs-parser': 21.0.0
dev: true
- /@typescript-eslint/eslint-plugin@5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(typescript@5.0.4):
- resolution: {integrity: sha512-78B+anHLF1TI8Jn/cD0Q00TBYdMgjdOn980JfAVa9yw5sop8nyTfVOQAv6LWywkOGLclDBtv5z3oxN4w7jxyNg==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@typescript-eslint/eslint-plugin@6.5.0(@typescript-eslint/parser@6.5.0)(eslint@8.48.0)(typescript@5.2.2):
+ resolution: {integrity: sha512-2pktILyjvMaScU6iK3925uvGU87E+N9rh372uGZgiMYwafaw9SXq86U04XPq3UH6tzRvNgBsub6x2DacHc33lw==}
+ engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
- '@typescript-eslint/parser': ^5.0.0
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
+ eslint: ^7.0.0 || ^8.0.0
typescript: '*'
peerDependenciesMeta:
typescript:
optional: true
dependencies:
- '@eslint-community/regexpp': 4.5.1
- '@typescript-eslint/parser': 5.60.0(eslint@8.43.0)(typescript@5.0.4)
- '@typescript-eslint/scope-manager': 5.60.0
- '@typescript-eslint/type-utils': 5.60.0(eslint@8.43.0)(typescript@5.0.4)
- '@typescript-eslint/utils': 5.60.0(eslint@8.43.0)(typescript@5.0.4)
+ '@eslint-community/regexpp': 4.8.0
+ '@typescript-eslint/parser': 6.5.0(eslint@8.48.0)(typescript@5.2.2)
+ '@typescript-eslint/scope-manager': 6.5.0
+ '@typescript-eslint/type-utils': 6.5.0(eslint@8.48.0)(typescript@5.2.2)
+ '@typescript-eslint/utils': 6.5.0(eslint@8.48.0)(typescript@5.2.2)
+ '@typescript-eslint/visitor-keys': 6.5.0
debug: 4.3.4
- eslint: 8.43.0
- grapheme-splitter: 1.0.4
+ eslint: 8.48.0
+ graphemer: 1.4.0
ignore: 5.2.4
- natural-compare-lite: 1.4.0
+ natural-compare: 1.4.0
semver: 7.5.4
- tsutils: 3.21.0(typescript@5.0.4)
- typescript: 5.0.4
+ ts-api-utils: 1.0.2(typescript@5.2.2)
+ typescript: 5.2.2
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/parser@5.60.0(eslint@8.43.0)(typescript@5.0.4):
- resolution: {integrity: sha512-jBONcBsDJ9UoTWrARkRRCgDz6wUggmH5RpQVlt7BimSwaTkTjwypGzKORXbR4/2Hqjk9hgwlon2rVQAjWNpkyQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@typescript-eslint/parser@6.5.0(eslint@8.48.0)(typescript@5.2.2):
+ resolution: {integrity: sha512-LMAVtR5GN8nY0G0BadkG0XIe4AcNMeyEy3DyhKGAh9k4pLSMBO7rF29JvDBpZGCmp5Pgz5RLHP6eCpSYZJQDuQ==}
+ engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ eslint: ^7.0.0 || ^8.0.0
typescript: '*'
peerDependenciesMeta:
typescript:
optional: true
dependencies:
- '@typescript-eslint/scope-manager': 5.60.0
- '@typescript-eslint/types': 5.60.0
- '@typescript-eslint/typescript-estree': 5.60.0(typescript@5.0.4)
+ '@typescript-eslint/scope-manager': 6.5.0
+ '@typescript-eslint/types': 6.5.0
+ '@typescript-eslint/typescript-estree': 6.5.0(typescript@5.2.2)
+ '@typescript-eslint/visitor-keys': 6.5.0
debug: 4.3.4
- eslint: 8.43.0
- typescript: 5.0.4
+ eslint: 8.48.0
+ typescript: 5.2.2
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/scope-manager@5.60.0:
- resolution: {integrity: sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@typescript-eslint/scope-manager@6.5.0:
+ resolution: {integrity: sha512-A8hZ7OlxURricpycp5kdPTH3XnjG85UpJS6Fn4VzeoH4T388gQJ/PGP4ole5NfKt4WDVhmLaQ/dBLNDC4Xl/Kw==}
+ engines: {node: ^16.0.0 || >=18.0.0}
dependencies:
- '@typescript-eslint/types': 5.60.0
- '@typescript-eslint/visitor-keys': 5.60.0
+ '@typescript-eslint/types': 6.5.0
+ '@typescript-eslint/visitor-keys': 6.5.0
dev: true
- /@typescript-eslint/type-utils@5.60.0(eslint@8.43.0)(typescript@5.0.4):
- resolution: {integrity: sha512-X7NsRQddORMYRFH7FWo6sA9Y/zbJ8s1x1RIAtnlj6YprbToTiQnM6vxcMu7iYhdunmoC0rUWlca13D5DVHkK2g==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@typescript-eslint/type-utils@6.5.0(eslint@8.48.0)(typescript@5.2.2):
+ resolution: {integrity: sha512-f7OcZOkRivtujIBQ4yrJNIuwyCQO1OjocVqntl9dgSIZAdKqicj3xFDqDOzHDlGCZX990LqhLQXWRnQvsapq8A==}
+ engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
- eslint: '*'
+ eslint: ^7.0.0 || ^8.0.0
typescript: '*'
peerDependenciesMeta:
typescript:
optional: true
dependencies:
- '@typescript-eslint/typescript-estree': 5.60.0(typescript@5.0.4)
- '@typescript-eslint/utils': 5.60.0(eslint@8.43.0)(typescript@5.0.4)
+ '@typescript-eslint/typescript-estree': 6.5.0(typescript@5.2.2)
+ '@typescript-eslint/utils': 6.5.0(eslint@8.48.0)(typescript@5.2.2)
debug: 4.3.4
- eslint: 8.43.0
- tsutils: 3.21.0(typescript@5.0.4)
- typescript: 5.0.4
+ eslint: 8.48.0
+ ts-api-utils: 1.0.2(typescript@5.2.2)
+ typescript: 5.2.2
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/types@5.60.0:
- resolution: {integrity: sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@typescript-eslint/types@6.5.0:
+ resolution: {integrity: sha512-eqLLOEF5/lU8jW3Bw+8auf4lZSbbljHR2saKnYqON12G/WsJrGeeDHWuQePoEf9ro22+JkbPfWQwKEC5WwLQ3w==}
+ engines: {node: ^16.0.0 || >=18.0.0}
dev: true
- /@typescript-eslint/typescript-estree@5.60.0(typescript@5.0.4):
- resolution: {integrity: sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@typescript-eslint/typescript-estree@6.5.0(typescript@5.2.2):
+ resolution: {integrity: sha512-q0rGwSe9e5Kk/XzliB9h2LBc9tmXX25G0833r7kffbl5437FPWb2tbpIV9wAATebC/018pGa9fwPDuvGN+LxWQ==}
+ engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
typescript: '*'
peerDependenciesMeta:
typescript:
optional: true
dependencies:
- '@typescript-eslint/types': 5.60.0
- '@typescript-eslint/visitor-keys': 5.60.0
+ '@typescript-eslint/types': 6.5.0
+ '@typescript-eslint/visitor-keys': 6.5.0
debug: 4.3.4
globby: 11.1.0
is-glob: 4.0.3
semver: 7.5.4
- tsutils: 3.21.0(typescript@5.0.4)
- typescript: 5.0.4
+ ts-api-utils: 1.0.2(typescript@5.2.2)
+ typescript: 5.2.2
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/utils@5.60.0(eslint@8.43.0)(typescript@5.0.4):
- resolution: {integrity: sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@typescript-eslint/utils@6.5.0(eslint@8.48.0)(typescript@5.2.2):
+ resolution: {integrity: sha512-9nqtjkNykFzeVtt9Pj6lyR9WEdd8npPhhIPM992FWVkZuS6tmxHfGVnlUcjpUP2hv8r4w35nT33mlxd+Be1ACQ==}
+ engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ eslint: ^7.0.0 || ^8.0.0
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.43.0)
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.48.0)
'@types/json-schema': 7.0.12
- '@types/semver': 7.5.0
- '@typescript-eslint/scope-manager': 5.60.0
- '@typescript-eslint/types': 5.60.0
- '@typescript-eslint/typescript-estree': 5.60.0(typescript@5.0.4)
- eslint: 8.43.0
- eslint-scope: 5.1.1
+ '@types/semver': 7.5.1
+ '@typescript-eslint/scope-manager': 6.5.0
+ '@typescript-eslint/types': 6.5.0
+ '@typescript-eslint/typescript-estree': 6.5.0(typescript@5.2.2)
+ eslint: 8.48.0
semver: 7.5.4
transitivePeerDependencies:
- supports-color
- typescript
dev: true
- /@typescript-eslint/visitor-keys@5.60.0:
- resolution: {integrity: sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@typescript-eslint/visitor-keys@6.5.0:
+ resolution: {integrity: sha512-yCB/2wkbv3hPsh02ZS8dFQnij9VVQXJMN/gbQsaaY+zxALkZnxa/wagvLEFsAWMPv7d7lxQmNsIzGU1w/T/WyA==}
+ engines: {node: ^16.0.0 || >=18.0.0}
dependencies:
- '@typescript-eslint/types': 5.60.0
- eslint-visitor-keys: 3.4.1
+ '@typescript-eslint/types': 6.5.0
+ eslint-visitor-keys: 3.4.3
dev: true
/abbrev@1.1.1:
resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==}
dev: true
+ /abort-controller@3.0.0:
+ resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
+ engines: {node: '>=6.5'}
+ dependencies:
+ event-target-shim: 5.0.1
+ dev: false
+
/accepts@1.3.8:
resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
engines: {node: '>= 0.6'}
@@ -1608,12 +1437,12 @@ packages:
negotiator: 0.6.3
dev: false
- /acorn-jsx@5.3.2(acorn@8.9.0):
+ /acorn-jsx@5.3.2(acorn@8.10.0):
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
peerDependencies:
acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
dependencies:
- acorn: 8.9.0
+ acorn: 8.10.0
dev: true
/acorn-walk@8.2.0:
@@ -1621,8 +1450,8 @@ packages:
engines: {node: '>=0.4.0'}
dev: true
- /acorn@8.9.0:
- resolution: {integrity: sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==}
+ /acorn@8.10.0:
+ resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==}
engines: {node: '>=0.4.0'}
hasBin: true
dev: true
@@ -1635,6 +1464,13 @@ packages:
transitivePeerDependencies:
- supports-color
+ /agentkeepalive@4.5.0:
+ resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==}
+ engines: {node: '>= 8.0.0'}
+ dependencies:
+ humanize-ms: 1.2.1
+ dev: false
+
/ajv@6.12.6:
resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
dependencies:
@@ -1710,25 +1546,17 @@ packages:
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
dev: false
- /axios@0.26.1:
- resolution: {integrity: sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==}
- dependencies:
- follow-redirects: 1.15.2
- transitivePeerDependencies:
- - debug
- dev: false
-
- /babel-jest@29.6.1(@babel/core@7.22.9):
- resolution: {integrity: sha512-qu+3bdPEQC6KZSPz+4Fyjbga5OODNcp49j6GKzG1EKbkfyJBxEYGVUmVGpwCSeGouG52R4EgYMLb6p9YeEEQ4A==}
+ /babel-jest@29.6.4(@babel/core@7.22.11):
+ resolution: {integrity: sha512-meLj23UlSLddj6PC+YTOFRgDAtjnZom8w/ACsrx0gtPtv5cJZk0A5Unk5bV4wixD7XaPCN1fQvpww8czkZURmw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
peerDependencies:
'@babel/core': ^7.8.0
dependencies:
- '@babel/core': 7.22.9
- '@jest/transform': 29.6.1
+ '@babel/core': 7.22.11
+ '@jest/transform': 29.6.4
'@types/babel__core': 7.20.1
babel-plugin-istanbul: 6.1.1
- babel-preset-jest: 29.5.0(@babel/core@7.22.9)
+ babel-preset-jest: 29.6.3(@babel/core@7.22.11)
chalk: 4.1.2
graceful-fs: 4.2.11
slash: 3.0.0
@@ -1749,51 +1577,55 @@ packages:
- supports-color
dev: true
- /babel-plugin-jest-hoist@29.5.0:
- resolution: {integrity: sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==}
+ /babel-plugin-jest-hoist@29.6.3:
+ resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@babel/template': 7.22.5
- '@babel/types': 7.22.5
+ '@babel/types': 7.22.11
'@types/babel__core': 7.20.1
'@types/babel__traverse': 7.20.1
dev: true
- /babel-preset-current-node-syntax@1.0.1(@babel/core@7.22.9):
+ /babel-preset-current-node-syntax@1.0.1(@babel/core@7.22.11):
resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==}
peerDependencies:
'@babel/core': ^7.0.0
dependencies:
- '@babel/core': 7.22.9
- '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.22.9)
- '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.22.9)
- '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.22.9)
- '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.22.9)
- '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.22.9)
- '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.9)
- '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.22.9)
- '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.9)
- '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.22.9)
- '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.22.9)
- '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.22.9)
- '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.22.9)
- dev: true
-
- /babel-preset-jest@29.5.0(@babel/core@7.22.9):
- resolution: {integrity: sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==}
+ '@babel/core': 7.22.11
+ '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.22.11)
+ '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.22.11)
+ '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.22.11)
+ '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.22.11)
+ '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.22.11)
+ '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.11)
+ '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.22.11)
+ '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.11)
+ '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.22.11)
+ '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.22.11)
+ '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.22.11)
+ '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.22.11)
+ dev: true
+
+ /babel-preset-jest@29.6.3(@babel/core@7.22.11):
+ resolution: {integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
peerDependencies:
'@babel/core': ^7.0.0
dependencies:
- '@babel/core': 7.22.9
- babel-plugin-jest-hoist: 29.5.0
- babel-preset-current-node-syntax: 1.0.1(@babel/core@7.22.9)
+ '@babel/core': 7.22.11
+ babel-plugin-jest-hoist: 29.6.3
+ babel-preset-current-node-syntax: 1.0.1(@babel/core@7.22.11)
dev: true
/balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
dev: true
+ /base-64@0.1.0:
+ resolution: {integrity: sha512-Y5gU45svrR5tI2Vt/X9GPd3L0HNIKzGu202EjxrXMpuc2V2CiKgemAbUUsqYmZJvPtCXoUKjNZwBJzsNScUbXA==}
+ dev: false
+
/base64id@2.0.0:
resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==}
engines: {node: ^4.5.0 || >= 5.9}
@@ -1851,15 +1683,15 @@ packages:
fill-range: 7.0.1
dev: true
- /browserslist@4.21.9:
- resolution: {integrity: sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==}
+ /browserslist@4.21.10:
+ resolution: {integrity: sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
dependencies:
- caniuse-lite: 1.0.30001516
- electron-to-chromium: 1.4.463
+ caniuse-lite: 1.0.30001524
+ electron-to-chromium: 1.4.505
node-releases: 2.0.13
- update-browserslist-db: 1.0.11(browserslist@4.21.9)
+ update-browserslist-db: 1.0.11(browserslist@4.21.10)
dev: true
/bs-logger@0.2.6:
@@ -1889,7 +1721,7 @@ packages:
engines: {node: '>=6.14.2'}
requiresBuild: true
dependencies:
- node-gyp-build: 4.6.0
+ node-gyp-build: 4.6.1
dev: false
/bytes@3.1.2:
@@ -1901,7 +1733,7 @@ packages:
resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
dependencies:
function-bind: 1.1.1
- get-intrinsic: 1.2.0
+ get-intrinsic: 1.2.1
dev: false
/callsites@3.1.0:
@@ -1924,8 +1756,8 @@ packages:
engines: {node: '>=14.16'}
dev: true
- /caniuse-lite@1.0.30001516:
- resolution: {integrity: sha512-Wmec9pCBY8CWbmI4HsjBeQLqDTqV91nFVR83DnZpYyRnPI1wePDsTg0bGLPC5VU/3OIZV1fmxEea1b+tFKe86g==}
+ /caniuse-lite@1.0.30001524:
+ resolution: {integrity: sha512-Jj917pJtYg9HSJBF95HVX3Cdr89JUyLT4IZ8SvM5aDRni95swKgYi3TgYLH5hnGfPE/U1dg6IfZ50UsIlLkwSA==}
dev: true
/chalk@2.4.2:
@@ -1955,6 +1787,10 @@ packages:
engines: {node: '>=10'}
dev: true
+ /charenc@0.0.2:
+ resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==}
+ dev: false
+
/chokidar@3.5.3:
resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
engines: {node: '>= 8.10.0'}
@@ -1967,7 +1803,7 @@ packages:
normalize-path: 3.0.0
readdirp: 3.6.0
optionalDependencies:
- fsevents: 2.3.2
+ fsevents: 2.3.3
dev: true
/ci-info@3.8.0:
@@ -2108,6 +1944,10 @@ packages:
which: 2.0.2
dev: true
+ /crypt@0.0.2:
+ resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==}
+ dev: false
+
/d@1.0.1:
resolution: {integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==}
dependencies:
@@ -2149,8 +1989,13 @@ packages:
dependencies:
ms: 2.1.2
- /dedent@0.7.0:
- resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==}
+ /dedent@1.5.1:
+ resolution: {integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==}
+ peerDependencies:
+ babel-plugin-macros: ^3.1.0
+ peerDependenciesMeta:
+ babel-plugin-macros:
+ optional: true
dev: true
/deep-is@0.1.4:
@@ -2182,8 +2027,8 @@ packages:
engines: {node: '>=8'}
dev: true
- /diff-sequences@29.4.3:
- resolution: {integrity: sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==}
+ /diff-sequences@29.6.3:
+ resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dev: true
@@ -2198,6 +2043,13 @@ packages:
heap: 0.2.7
dev: true
+ /digest-fetch@1.3.0:
+ resolution: {integrity: sha512-CGJuv6iKNM7QyZlM2T3sPAdZWd/p9zQiRNS9G+9COUCwzWFTs0Xp8NF5iePx7wtvhDykReiRRrSeNb4oMmB8lA==}
+ dependencies:
+ base-64: 0.1.0
+ md5: 2.3.0
+ dev: false
+
/dir-glob@3.0.1:
resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
engines: {node: '>=8'}
@@ -2212,8 +2064,8 @@ packages:
esutils: 2.0.3
dev: true
- /dotenv@16.0.3:
- resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==}
+ /dotenv@16.3.1:
+ resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==}
engines: {node: '>=12'}
dev: false
@@ -2224,8 +2076,8 @@ packages:
wordwrap: 1.0.0
dev: true
- /drizzle-kit@0.19.12:
- resolution: {integrity: sha512-rcsmh5gUIkvuD0WrbEc+aLpqY2q2J8ltynRcJiJo2l01hhsYvPnX0sgxWlFXlfAIa5ZXNw2nJZhYlslI6tG3MA==}
+ /drizzle-kit@0.19.13:
+ resolution: {integrity: sha512-Rba5VW1O2JfJlwVBeZ8Zwt2E2us5oZ08PQBDiVSGlug53TOc8hzXjblZFuF+dnll9/RQEHrkzBmJFgqTvn5Rxg==}
hasBin: true
dependencies:
'@drizzle-team/studio': 0.0.5
@@ -2239,13 +2091,13 @@ packages:
hanji: 0.0.5
json-diff: 0.9.0
minimatch: 7.4.6
- zod: 3.21.4
+ zod: 3.22.2
transitivePeerDependencies:
- supports-color
dev: true
- /drizzle-orm@0.28.1(@types/pg@8.6.6)(pg@8.10.0):
- resolution: {integrity: sha512-6ms2pVxvkBJtuP1BZTUCzLLkr+iK/cNgd+tCw+I5/PoM8PB9kXaYoW9yNe/cnaXb0TLJ1gDEndDIyQdRX7zCdQ==}
+ /drizzle-orm@0.28.5(@types/pg@8.10.2)(pg@8.11.3):
+ resolution: {integrity: sha512-6r6Iw4c38NAmW6TiKH3TUpGUQ1YdlEoLJOQptn8XPx3Z63+vFNKfAiANqrIiYZiMjKR9+NYAL219nFrmo1duXA==}
peerDependencies:
'@aws-sdk/client-rds-data': '>=3'
'@cloudflare/workers-types': '>=3'
@@ -2306,16 +2158,16 @@ packages:
sqlite3:
optional: true
dependencies:
- '@types/pg': 8.6.6
- pg: 8.10.0
+ '@types/pg': 8.10.2
+ pg: 8.11.3
dev: false
/ee-first@1.1.1:
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
dev: false
- /electron-to-chromium@1.4.463:
- resolution: {integrity: sha512-fT3hvdUWLjDbaTGzyOjng/CQhQJSQP8ThO3XZAoaxHvHo2kUXiRQVMj9M235l8uDFiNPsPa6KHT1p3RaR6ugRw==}
+ /electron-to-chromium@1.4.505:
+ resolution: {integrity: sha512-0A50eL5BCCKdxig2SsCXhpuztnB9PfUgRMojj5tMvt8O54lbwz3t6wNgnpiTRosw5QjlJB7ixhVyeg8daLQwSQ==}
dev: true
/emittery@0.13.1:
@@ -2332,24 +2184,24 @@ packages:
engines: {node: '>= 0.8'}
dev: false
- /engine.io-parser@5.1.0:
- resolution: {integrity: sha512-enySgNiK5tyZFynt3z7iqBR+Bto9EVVVvDFuTT0ioHCGbzirZVGDGiQjZzEp8hWl6hd5FSVytJGuScX1C1C35w==}
+ /engine.io-parser@5.2.1:
+ resolution: {integrity: sha512-9JktcM3u18nU9N2Lz3bWeBgxVgOKpw7yhRaoxQA3FUDZzzw+9WlA6p4G4u0RixNkg14fH7EfEc/RhpurtiROTQ==}
engines: {node: '>=10.0.0'}
dev: false
- /engine.io@6.5.1(bufferutil@4.0.7)(utf-8-validate@6.0.3):
- resolution: {integrity: sha512-mGqhI+D7YxS9KJMppR6Iuo37Ed3abhU8NdfgSvJSDUafQutrN+sPTncJYTyM9+tkhSmWodKtVYGPPHyXJEwEQA==}
- engines: {node: '>=10.0.0'}
+ /engine.io@6.5.2(bufferutil@4.0.7)(utf-8-validate@6.0.3):
+ resolution: {integrity: sha512-IXsMcGpw/xRfjra46sVZVHiSWo/nJ/3g1337q9KNXtS6YRzbW5yIzTCb9DjhrBe7r3GZQR0I4+nq+4ODk5g/cA==}
+ engines: {node: '>=10.2.0'}
dependencies:
'@types/cookie': 0.4.1
'@types/cors': 2.8.13
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
accepts: 1.3.8
base64id: 2.0.0
cookie: 0.4.2
cors: 2.8.5
debug: 4.3.4
- engine.io-parser: 5.1.0
+ engine.io-parser: 5.2.1
ws: 8.11.0(bufferutil@4.0.7)(utf-8-validate@6.0.3)
transitivePeerDependencies:
- bufferutil
@@ -2408,36 +2260,6 @@ packages:
- supports-color
dev: true
- /esbuild@0.17.19:
- resolution: {integrity: sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==}
- engines: {node: '>=12'}
- hasBin: true
- requiresBuild: true
- optionalDependencies:
- '@esbuild/android-arm': 0.17.19
- '@esbuild/android-arm64': 0.17.19
- '@esbuild/android-x64': 0.17.19
- '@esbuild/darwin-arm64': 0.17.19
- '@esbuild/darwin-x64': 0.17.19
- '@esbuild/freebsd-arm64': 0.17.19
- '@esbuild/freebsd-x64': 0.17.19
- '@esbuild/linux-arm': 0.17.19
- '@esbuild/linux-arm64': 0.17.19
- '@esbuild/linux-ia32': 0.17.19
- '@esbuild/linux-loong64': 0.17.19
- '@esbuild/linux-mips64el': 0.17.19
- '@esbuild/linux-ppc64': 0.17.19
- '@esbuild/linux-riscv64': 0.17.19
- '@esbuild/linux-s390x': 0.17.19
- '@esbuild/linux-x64': 0.17.19
- '@esbuild/netbsd-x64': 0.17.19
- '@esbuild/openbsd-x64': 0.17.19
- '@esbuild/sunos-x64': 0.17.19
- '@esbuild/win32-arm64': 0.17.19
- '@esbuild/win32-ia32': 0.17.19
- '@esbuild/win32-x64': 0.17.19
- dev: true
-
/esbuild@0.18.20:
resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==}
engines: {node: '>=12'}
@@ -2492,46 +2314,38 @@ packages:
engines: {node: '>=10'}
dev: true
- /eslint-config-prettier@8.8.0(eslint@8.43.0):
- resolution: {integrity: sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==}
+ /eslint-config-prettier@9.0.0(eslint@8.48.0):
+ resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==}
hasBin: true
peerDependencies:
eslint: '>=7.0.0'
dependencies:
- eslint: 8.43.0
- dev: true
-
- /eslint-scope@5.1.1:
- resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
- engines: {node: '>=8.0.0'}
- dependencies:
- esrecurse: 4.3.0
- estraverse: 4.3.0
+ eslint: 8.48.0
dev: true
- /eslint-scope@7.2.0:
- resolution: {integrity: sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==}
+ /eslint-scope@7.2.2:
+ resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
esrecurse: 4.3.0
estraverse: 5.3.0
dev: true
- /eslint-visitor-keys@3.4.1:
- resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==}
+ /eslint-visitor-keys@3.4.3:
+ resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /eslint@8.43.0:
- resolution: {integrity: sha512-aaCpf2JqqKesMFGgmRPessmVKjcGXqdlAYLLC3THM8t5nBRZRQ+st5WM/hoJXkdioEXLLbXgclUpM0TXo5HX5Q==}
+ /eslint@8.48.0:
+ resolution: {integrity: sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
hasBin: true
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.43.0)
- '@eslint-community/regexpp': 4.5.1
- '@eslint/eslintrc': 2.0.3
- '@eslint/js': 8.43.0
- '@humanwhocodes/config-array': 0.11.10
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.48.0)
+ '@eslint-community/regexpp': 4.8.0
+ '@eslint/eslintrc': 2.1.2
+ '@eslint/js': 8.48.0
+ '@humanwhocodes/config-array': 0.11.11
'@humanwhocodes/module-importer': 1.0.1
'@nodelib/fs.walk': 1.2.8
ajv: 6.12.6
@@ -2540,19 +2354,18 @@ packages:
debug: 4.3.4
doctrine: 3.0.0
escape-string-regexp: 4.0.0
- eslint-scope: 7.2.0
- eslint-visitor-keys: 3.4.1
- espree: 9.5.2
+ eslint-scope: 7.2.2
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
esquery: 1.5.0
esutils: 2.0.3
fast-deep-equal: 3.1.3
file-entry-cache: 6.0.1
find-up: 5.0.0
glob-parent: 6.0.2
- globals: 13.20.0
+ globals: 13.21.0
graphemer: 1.4.0
ignore: 5.2.4
- import-fresh: 3.3.0
imurmurhash: 0.1.4
is-glob: 4.0.3
is-path-inside: 3.0.3
@@ -2562,21 +2375,20 @@ packages:
lodash.merge: 4.6.2
minimatch: 3.1.2
natural-compare: 1.4.0
- optionator: 0.9.1
+ optionator: 0.9.3
strip-ansi: 6.0.1
- strip-json-comments: 3.1.1
text-table: 0.2.0
transitivePeerDependencies:
- supports-color
dev: true
- /espree@9.5.2:
- resolution: {integrity: sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==}
+ /espree@9.6.1:
+ resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
- acorn: 8.9.0
- acorn-jsx: 5.3.2(acorn@8.9.0)
- eslint-visitor-keys: 3.4.1
+ acorn: 8.10.0
+ acorn-jsx: 5.3.2(acorn@8.10.0)
+ eslint-visitor-keys: 3.4.3
dev: true
/esprima@4.0.1:
@@ -2599,11 +2411,6 @@ packages:
estraverse: 5.3.0
dev: true
- /estraverse@4.3.0:
- resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
- engines: {node: '>=4.0'}
- dev: true
-
/estraverse@5.3.0:
resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
engines: {node: '>=4.0'}
@@ -2626,6 +2433,11 @@ packages:
es5-ext: 0.10.62
dev: true
+ /event-target-shim@5.0.1:
+ resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
+ engines: {node: '>=6'}
+ dev: false
+
/execa@5.1.1:
resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
engines: {node: '>=10'}
@@ -2646,16 +2458,15 @@ packages:
engines: {node: '>= 0.8.0'}
dev: true
- /expect@29.6.1:
- resolution: {integrity: sha512-XEdDLonERCU1n9uR56/Stx9OqojaLAQtZf9PrCHH9Hl8YXiEIka3H4NXJ3NOIBmQJTg7+j7buh34PMHfJujc8g==}
+ /expect@29.6.4:
+ resolution: {integrity: sha512-F2W2UyQ8XYyftHT57dtfg8Ue3X5qLgm2sSug0ivvLRH/VKNRL/pDxg/TH7zVzbQB0tu80clNFy6LU7OS/VSEKA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/expect-utils': 29.6.1
- '@types/node': 18.15.11
- jest-get-type: 29.4.3
- jest-matcher-utils: 29.6.1
- jest-message-util: 29.6.1
- jest-util: 29.6.1
+ '@jest/expect-utils': 29.6.4
+ jest-get-type: 29.6.3
+ jest-matcher-utils: 29.6.4
+ jest-message-util: 29.6.3
+ jest-util: 29.6.3
dev: true
/express@4.18.2:
@@ -2707,8 +2518,8 @@ packages:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
dev: true
- /fast-glob@3.2.12:
- resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==}
+ /fast-glob@3.3.1:
+ resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==}
engines: {node: '>=8.6.0'}
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -2742,7 +2553,7 @@ packages:
resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
engines: {node: ^10.12.0 || >=12.0.0}
dependencies:
- flat-cache: 3.0.4
+ flat-cache: 3.1.0
dev: true
/fill-range@7.0.1:
@@ -2783,11 +2594,12 @@ packages:
path-exists: 4.0.0
dev: true
- /flat-cache@3.0.4:
- resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==}
- engines: {node: ^10.12.0 || >=12.0.0}
+ /flat-cache@3.1.0:
+ resolution: {integrity: sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==}
+ engines: {node: '>=12.0.0'}
dependencies:
flatted: 3.2.7
+ keyv: 4.5.3
rimraf: 3.0.2
dev: true
@@ -2795,18 +2607,12 @@ packages:
resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==}
dev: true
- /follow-redirects@1.15.2:
- resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==}
- engines: {node: '>=4.0'}
- peerDependencies:
- debug: '*'
- peerDependenciesMeta:
- debug:
- optional: true
+ /form-data-encoder@1.7.2:
+ resolution: {integrity: sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==}
dev: false
- /form-data@4.0.0:
- resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
+ /form-data@3.0.1:
+ resolution: {integrity: sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==}
engines: {node: '>= 6'}
dependencies:
asynckit: 0.4.0
@@ -2814,6 +2620,14 @@ packages:
mime-types: 2.1.35
dev: false
+ /formdata-node@4.4.1:
+ resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==}
+ engines: {node: '>= 12.20'}
+ dependencies:
+ node-domexception: 1.0.0
+ web-streams-polyfill: 4.0.0-beta.3
+ dev: false
+
/forwarded@0.2.0:
resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
engines: {node: '>= 0.6'}
@@ -2828,8 +2642,8 @@ packages:
resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
dev: true
- /fsevents@2.3.2:
- resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
+ /fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
os: [darwin]
requiresBuild: true
@@ -2849,11 +2663,12 @@ packages:
engines: {node: 6.* || 8.* || >= 10.*}
dev: true
- /get-intrinsic@1.2.0:
- resolution: {integrity: sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==}
+ /get-intrinsic@1.2.1:
+ resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==}
dependencies:
function-bind: 1.1.1
has: 1.0.3
+ has-proto: 1.0.1
has-symbols: 1.0.3
dev: false
@@ -2914,8 +2729,8 @@ packages:
engines: {node: '>=4'}
dev: true
- /globals@13.20.0:
- resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==}
+ /globals@13.21.0:
+ resolution: {integrity: sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==}
engines: {node: '>=8'}
dependencies:
type-fest: 0.20.2
@@ -2927,7 +2742,7 @@ packages:
dependencies:
array-union: 2.1.0
dir-glob: 3.0.1
- fast-glob: 3.2.12
+ fast-glob: 3.3.1
ignore: 5.2.4
merge2: 1.4.1
slash: 3.0.0
@@ -2937,10 +2752,6 @@ packages:
resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
dev: true
- /grapheme-splitter@1.0.4:
- resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
- dev: true
-
/graphemer@1.4.0:
resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
dev: true
@@ -2962,6 +2773,11 @@ packages:
engines: {node: '>=8'}
dev: true
+ /has-proto@1.0.1:
+ resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==}
+ engines: {node: '>= 0.4'}
+ dev: false
+
/has-symbols@1.0.3:
resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
engines: {node: '>= 0.4'}
@@ -3011,6 +2827,12 @@ packages:
engines: {node: '>=10.17.0'}
dev: true
+ /humanize-ms@1.2.1:
+ resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==}
+ dependencies:
+ ms: 2.1.3
+ dev: false
+
/iconv-lite@0.4.24:
resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
engines: {node: '>=0.10.0'}
@@ -3075,8 +2897,12 @@ packages:
binary-extensions: 2.2.0
dev: true
- /is-core-module@2.12.1:
- resolution: {integrity: sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==}
+ /is-buffer@1.1.6:
+ resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==}
+ dev: false
+
+ /is-core-module@2.13.0:
+ resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==}
dependencies:
has: 1.0.3
dev: true
@@ -3135,8 +2961,8 @@ packages:
resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==}
engines: {node: '>=8'}
dependencies:
- '@babel/core': 7.22.9
- '@babel/parser': 7.22.7
+ '@babel/core': 7.22.11
+ '@babel/parser': 7.22.13
'@istanbuljs/schema': 0.1.3
istanbul-lib-coverage: 3.2.0
semver: 6.3.1
@@ -3144,12 +2970,25 @@ packages:
- supports-color
dev: true
- /istanbul-lib-report@3.0.0:
- resolution: {integrity: sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==}
- engines: {node: '>=8'}
+ /istanbul-lib-instrument@6.0.0:
+ resolution: {integrity: sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw==}
+ engines: {node: '>=10'}
dependencies:
+ '@babel/core': 7.22.11
+ '@babel/parser': 7.22.13
+ '@istanbuljs/schema': 0.1.3
istanbul-lib-coverage: 3.2.0
- make-dir: 3.1.0
+ semver: 7.5.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /istanbul-lib-report@3.0.1:
+ resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==}
+ engines: {node: '>=10'}
+ dependencies:
+ istanbul-lib-coverage: 3.2.0
+ make-dir: 4.0.0
supports-color: 7.2.0
dev: true
@@ -3164,52 +3003,54 @@ packages:
- supports-color
dev: true
- /istanbul-reports@3.1.5:
- resolution: {integrity: sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==}
+ /istanbul-reports@3.1.6:
+ resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==}
engines: {node: '>=8'}
dependencies:
html-escaper: 2.0.2
- istanbul-lib-report: 3.0.0
+ istanbul-lib-report: 3.0.1
dev: true
- /jest-changed-files@29.5.0:
- resolution: {integrity: sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==}
+ /jest-changed-files@29.6.3:
+ resolution: {integrity: sha512-G5wDnElqLa4/c66ma5PG9eRjE342lIbF6SUnTJi26C3J28Fv2TVY2rOyKB9YGbSA5ogwevgmxc4j4aVjrEK6Yg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
execa: 5.1.1
+ jest-util: 29.6.3
p-limit: 3.1.0
dev: true
- /jest-circus@29.6.1:
- resolution: {integrity: sha512-tPbYLEiBU4MYAL2XoZme/bgfUeotpDBd81lgHLCbDZZFaGmECk0b+/xejPFtmiBP87GgP/y4jplcRpbH+fgCzQ==}
+ /jest-circus@29.6.4:
+ resolution: {integrity: sha512-YXNrRyntVUgDfZbjXWBMPslX1mQ8MrSG0oM/Y06j9EYubODIyHWP8hMUbjbZ19M3M+zamqEur7O80HODwACoJw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/environment': 29.6.1
- '@jest/expect': 29.6.1
- '@jest/test-result': 29.6.1
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
+ '@jest/environment': 29.6.4
+ '@jest/expect': 29.6.4
+ '@jest/test-result': 29.6.4
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
chalk: 4.1.2
co: 4.6.0
- dedent: 0.7.0
+ dedent: 1.5.1
is-generator-fn: 2.1.0
- jest-each: 29.6.1
- jest-matcher-utils: 29.6.1
- jest-message-util: 29.6.1
- jest-runtime: 29.6.1
- jest-snapshot: 29.6.1
- jest-util: 29.6.1
+ jest-each: 29.6.3
+ jest-matcher-utils: 29.6.4
+ jest-message-util: 29.6.3
+ jest-runtime: 29.6.4
+ jest-snapshot: 29.6.4
+ jest-util: 29.6.3
p-limit: 3.1.0
- pretty-format: 29.6.1
+ pretty-format: 29.6.3
pure-rand: 6.0.2
slash: 3.0.0
stack-utils: 2.0.6
transitivePeerDependencies:
+ - babel-plugin-macros
- supports-color
dev: true
- /jest-cli@29.6.1(@types/node@18.15.11)(ts-node@10.9.1):
- resolution: {integrity: sha512-607dSgTA4ODIN6go9w6xY3EYkyPFGicx51a69H7yfvt7lN53xNswEVLovq+E77VsTRi5fWprLH0yl4DJgE8Ing==}
+ /jest-cli@29.6.4(@types/node@20.5.7)(ts-node@10.9.1):
+ resolution: {integrity: sha512-+uMCQ7oizMmh8ZwRfZzKIEszFY9ksjjEQnTEMTaL7fYiL3Kw4XhqT9bYh+A4DQKUb67hZn2KbtEnDuHvcgK4pQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
hasBin: true
peerDependencies:
@@ -3218,26 +3059,27 @@ packages:
node-notifier:
optional: true
dependencies:
- '@jest/core': 29.6.1(ts-node@10.9.1)
- '@jest/test-result': 29.6.1
- '@jest/types': 29.6.1
+ '@jest/core': 29.6.4(ts-node@10.9.1)
+ '@jest/test-result': 29.6.4
+ '@jest/types': 29.6.3
chalk: 4.1.2
exit: 0.1.2
graceful-fs: 4.2.11
import-local: 3.1.0
- jest-config: 29.6.1(@types/node@18.15.11)(ts-node@10.9.1)
- jest-util: 29.6.1
- jest-validate: 29.6.1
+ jest-config: 29.6.4(@types/node@20.5.7)(ts-node@10.9.1)
+ jest-util: 29.6.3
+ jest-validate: 29.6.3
prompts: 2.4.2
yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
+ - babel-plugin-macros
- supports-color
- ts-node
dev: true
- /jest-config@29.6.1(@types/node@18.15.11)(ts-node@10.9.1):
- resolution: {integrity: sha512-XdjYV2fy2xYixUiV2Wc54t3Z4oxYPAELUzWnV6+mcbq0rh742X2p52pii5A3oeRzYjLnQxCsZmp0qpI6klE2cQ==}
+ /jest-config@29.6.4(@types/node@20.5.7)(ts-node@10.9.1):
+ resolution: {integrity: sha512-JWohr3i9m2cVpBumQFv2akMEnFEPVOh+9L2xIBJhJ0zOaci2ZXuKJj0tgMKQCBZAKA09H049IR4HVS/43Qb19A==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
peerDependencies:
'@types/node': '*'
@@ -3248,141 +3090,142 @@ packages:
ts-node:
optional: true
dependencies:
- '@babel/core': 7.22.9
- '@jest/test-sequencer': 29.6.1
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
- babel-jest: 29.6.1(@babel/core@7.22.9)
+ '@babel/core': 7.22.11
+ '@jest/test-sequencer': 29.6.4
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
+ babel-jest: 29.6.4(@babel/core@7.22.11)
chalk: 4.1.2
ci-info: 3.8.0
deepmerge: 4.3.1
glob: 7.2.3
graceful-fs: 4.2.11
- jest-circus: 29.6.1
- jest-environment-node: 29.6.1
- jest-get-type: 29.4.3
- jest-regex-util: 29.4.3
- jest-resolve: 29.6.1
- jest-runner: 29.6.1
- jest-util: 29.6.1
- jest-validate: 29.6.1
+ jest-circus: 29.6.4
+ jest-environment-node: 29.6.4
+ jest-get-type: 29.6.3
+ jest-regex-util: 29.6.3
+ jest-resolve: 29.6.4
+ jest-runner: 29.6.4
+ jest-util: 29.6.3
+ jest-validate: 29.6.3
micromatch: 4.0.5
parse-json: 5.2.0
- pretty-format: 29.6.1
+ pretty-format: 29.6.3
slash: 3.0.0
strip-json-comments: 3.1.1
- ts-node: 10.9.1(@types/node@18.15.11)(typescript@5.0.4)
+ ts-node: 10.9.1(@types/node@20.5.7)(typescript@5.2.2)
transitivePeerDependencies:
+ - babel-plugin-macros
- supports-color
dev: true
- /jest-diff@29.6.1:
- resolution: {integrity: sha512-FsNCvinvl8oVxpNLttNQX7FAq7vR+gMDGj90tiP7siWw1UdakWUGqrylpsYrpvj908IYckm5Y0Q7azNAozU1Kg==}
+ /jest-diff@29.6.4:
+ resolution: {integrity: sha512-9F48UxR9e4XOEZvoUXEHSWY4qC4zERJaOfrbBg9JpbJOO43R1vN76REt/aMGZoY6GD5g84nnJiBIVlscegefpw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
chalk: 4.1.2
- diff-sequences: 29.4.3
- jest-get-type: 29.4.3
- pretty-format: 29.6.1
+ diff-sequences: 29.6.3
+ jest-get-type: 29.6.3
+ pretty-format: 29.6.3
dev: true
- /jest-docblock@29.4.3:
- resolution: {integrity: sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==}
+ /jest-docblock@29.6.3:
+ resolution: {integrity: sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
detect-newline: 3.1.0
dev: true
- /jest-each@29.6.1:
- resolution: {integrity: sha512-n5eoj5eiTHpKQCAVcNTT7DRqeUmJ01hsAL0Q1SMiBHcBcvTKDELixQOGMCpqhbIuTcfC4kMfSnpmDqRgRJcLNQ==}
+ /jest-each@29.6.3:
+ resolution: {integrity: sha512-KoXfJ42k8cqbkfshW7sSHcdfnv5agDdHCPA87ZBdmHP+zJstTJc0ttQaJ/x7zK6noAL76hOuTIJ6ZkQRS5dcyg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/types': 29.6.1
+ '@jest/types': 29.6.3
chalk: 4.1.2
- jest-get-type: 29.4.3
- jest-util: 29.6.1
- pretty-format: 29.6.1
+ jest-get-type: 29.6.3
+ jest-util: 29.6.3
+ pretty-format: 29.6.3
dev: true
- /jest-environment-node@29.6.1:
- resolution: {integrity: sha512-ZNIfAiE+foBog24W+2caIldl4Irh8Lx1PUhg/GZ0odM1d/h2qORAsejiFc7zb+SEmYPn1yDZzEDSU5PmDkmVLQ==}
+ /jest-environment-node@29.6.4:
+ resolution: {integrity: sha512-i7SbpH2dEIFGNmxGCpSc2w9cA4qVD+wfvg2ZnfQ7XVrKL0NA5uDVBIiGH8SR4F0dKEv/0qI5r+aDomDf04DpEQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/environment': 29.6.1
- '@jest/fake-timers': 29.6.1
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
- jest-mock: 29.6.1
- jest-util: 29.6.1
+ '@jest/environment': 29.6.4
+ '@jest/fake-timers': 29.6.4
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
+ jest-mock: 29.6.3
+ jest-util: 29.6.3
dev: true
- /jest-get-type@29.4.3:
- resolution: {integrity: sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==}
+ /jest-get-type@29.6.3:
+ resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dev: true
- /jest-haste-map@29.6.1:
- resolution: {integrity: sha512-0m7f9PZXxOCk1gRACiVgX85knUKPKLPg4oRCjLoqIm9brTHXaorMA0JpmtmVkQiT8nmXyIVoZd/nnH1cfC33ig==}
+ /jest-haste-map@29.6.4:
+ resolution: {integrity: sha512-12Ad+VNTDHxKf7k+M65sviyynRoZYuL1/GTuhEVb8RYsNSNln71nANRb/faSyWvx0j+gHcivChXHIoMJrGYjog==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/types': 29.6.1
+ '@jest/types': 29.6.3
'@types/graceful-fs': 4.1.6
- '@types/node': 18.15.11
+ '@types/node': 20.5.7
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
- jest-regex-util: 29.4.3
- jest-util: 29.6.1
- jest-worker: 29.6.1
+ jest-regex-util: 29.6.3
+ jest-util: 29.6.3
+ jest-worker: 29.6.4
micromatch: 4.0.5
walker: 1.0.8
optionalDependencies:
- fsevents: 2.3.2
+ fsevents: 2.3.3
dev: true
- /jest-leak-detector@29.6.1:
- resolution: {integrity: sha512-OrxMNyZirpOEwkF3UHnIkAiZbtkBWiye+hhBweCHkVbCgyEy71Mwbb5zgeTNYWJBi1qgDVfPC1IwO9dVEeTLwQ==}
+ /jest-leak-detector@29.6.3:
+ resolution: {integrity: sha512-0kfbESIHXYdhAdpLsW7xdwmYhLf1BRu4AA118/OxFm0Ho1b2RcTmO4oF6aAMaxpxdxnJ3zve2rgwzNBD4Zbm7Q==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- jest-get-type: 29.4.3
- pretty-format: 29.6.1
+ jest-get-type: 29.6.3
+ pretty-format: 29.6.3
dev: true
- /jest-matcher-utils@29.6.1:
- resolution: {integrity: sha512-SLaztw9d2mfQQKHmJXKM0HCbl2PPVld/t9Xa6P9sgiExijviSp7TnZZpw2Fpt+OI3nwUO/slJbOfzfUMKKC5QA==}
+ /jest-matcher-utils@29.6.4:
+ resolution: {integrity: sha512-KSzwyzGvK4HcfnserYqJHYi7sZVqdREJ9DMPAKVbS98JsIAvumihaNUbjrWw0St7p9IY7A9UskCW5MYlGmBQFQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
chalk: 4.1.2
- jest-diff: 29.6.1
- jest-get-type: 29.4.3
- pretty-format: 29.6.1
+ jest-diff: 29.6.4
+ jest-get-type: 29.6.3
+ pretty-format: 29.6.3
dev: true
- /jest-message-util@29.6.1:
- resolution: {integrity: sha512-KoAW2zAmNSd3Gk88uJ56qXUWbFk787QKmjjJVOjtGFmmGSZgDBrlIL4AfQw1xyMYPNVD7dNInfIbur9B2rd/wQ==}
+ /jest-message-util@29.6.3:
+ resolution: {integrity: sha512-FtzaEEHzjDpQp51HX4UMkPZjy46ati4T5pEMyM6Ik48ztu4T9LQplZ6OsimHx7EuM9dfEh5HJa6D3trEftu3dA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@babel/code-frame': 7.22.5
- '@jest/types': 29.6.1
+ '@babel/code-frame': 7.22.13
+ '@jest/types': 29.6.3
'@types/stack-utils': 2.0.1
chalk: 4.1.2
graceful-fs: 4.2.11
micromatch: 4.0.5
- pretty-format: 29.6.1
+ pretty-format: 29.6.3
slash: 3.0.0
stack-utils: 2.0.6
dev: true
- /jest-mock@29.6.1:
- resolution: {integrity: sha512-brovyV9HBkjXAEdRooaTQK42n8usKoSRR3gihzUpYeV/vwqgSoNfrksO7UfSACnPmxasO/8TmHM3w9Hp3G1dgw==}
+ /jest-mock@29.6.3:
+ resolution: {integrity: sha512-Z7Gs/mOyTSR4yPsaZ72a/MtuK6RnC3JYqWONe48oLaoEcYwEDxqvbXz85G4SJrm2Z5Ar9zp6MiHF4AlFlRM4Pg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
- jest-util: 29.6.1
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
+ jest-util: 29.6.3
dev: true
- /jest-pnp-resolver@1.2.3(jest-resolve@29.6.1):
+ /jest-pnp-resolver@1.2.3(jest-resolve@29.6.4):
resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==}
engines: {node: '>=6'}
peerDependencies:
@@ -3391,177 +3234,176 @@ packages:
jest-resolve:
optional: true
dependencies:
- jest-resolve: 29.6.1
+ jest-resolve: 29.6.4
dev: true
- /jest-regex-util@29.4.3:
- resolution: {integrity: sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==}
+ /jest-regex-util@29.6.3:
+ resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dev: true
- /jest-resolve-dependencies@29.6.1:
- resolution: {integrity: sha512-BbFvxLXtcldaFOhNMXmHRWx1nXQO5LoXiKSGQcA1LxxirYceZT6ch8KTE1bK3X31TNG/JbkI7OkS/ABexVahiw==}
+ /jest-resolve-dependencies@29.6.4:
+ resolution: {integrity: sha512-7+6eAmr1ZBF3vOAJVsfLj1QdqeXG+WYhidfLHBRZqGN24MFRIiKG20ItpLw2qRAsW/D2ZUUmCNf6irUr/v6KHA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- jest-regex-util: 29.4.3
- jest-snapshot: 29.6.1
+ jest-regex-util: 29.6.3
+ jest-snapshot: 29.6.4
transitivePeerDependencies:
- supports-color
dev: true
- /jest-resolve@29.6.1:
- resolution: {integrity: sha512-AeRkyS8g37UyJiP9w3mmI/VXU/q8l/IH52vj/cDAyScDcemRbSBhfX/NMYIGilQgSVwsjxrCHf3XJu4f+lxCMg==}
+ /jest-resolve@29.6.4:
+ resolution: {integrity: sha512-fPRq+0vcxsuGlG0O3gyoqGTAxasagOxEuyoxHeyxaZbc9QNek0AmJWSkhjlMG+mTsj+8knc/mWb3fXlRNVih7Q==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
chalk: 4.1.2
graceful-fs: 4.2.11
- jest-haste-map: 29.6.1
- jest-pnp-resolver: 1.2.3(jest-resolve@29.6.1)
- jest-util: 29.6.1
- jest-validate: 29.6.1
- resolve: 1.22.2
+ jest-haste-map: 29.6.4
+ jest-pnp-resolver: 1.2.3(jest-resolve@29.6.4)
+ jest-util: 29.6.3
+ jest-validate: 29.6.3
+ resolve: 1.22.4
resolve.exports: 2.0.2
slash: 3.0.0
dev: true
- /jest-runner@29.6.1:
- resolution: {integrity: sha512-tw0wb2Q9yhjAQ2w8rHRDxteryyIck7gIzQE4Reu3JuOBpGp96xWgF0nY8MDdejzrLCZKDcp8JlZrBN/EtkQvPQ==}
+ /jest-runner@29.6.4:
+ resolution: {integrity: sha512-SDaLrMmtVlQYDuG0iSPYLycG8P9jLI+fRm8AF/xPKhYDB2g6xDWjXBrR5M8gEWsK6KVFlebpZ4QsrxdyIX1Jaw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/console': 29.6.1
- '@jest/environment': 29.6.1
- '@jest/test-result': 29.6.1
- '@jest/transform': 29.6.1
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
+ '@jest/console': 29.6.4
+ '@jest/environment': 29.6.4
+ '@jest/test-result': 29.6.4
+ '@jest/transform': 29.6.4
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
chalk: 4.1.2
emittery: 0.13.1
graceful-fs: 4.2.11
- jest-docblock: 29.4.3
- jest-environment-node: 29.6.1
- jest-haste-map: 29.6.1
- jest-leak-detector: 29.6.1
- jest-message-util: 29.6.1
- jest-resolve: 29.6.1
- jest-runtime: 29.6.1
- jest-util: 29.6.1
- jest-watcher: 29.6.1
- jest-worker: 29.6.1
+ jest-docblock: 29.6.3
+ jest-environment-node: 29.6.4
+ jest-haste-map: 29.6.4
+ jest-leak-detector: 29.6.3
+ jest-message-util: 29.6.3
+ jest-resolve: 29.6.4
+ jest-runtime: 29.6.4
+ jest-util: 29.6.3
+ jest-watcher: 29.6.4
+ jest-worker: 29.6.4
p-limit: 3.1.0
source-map-support: 0.5.13
transitivePeerDependencies:
- supports-color
dev: true
- /jest-runtime@29.6.1:
- resolution: {integrity: sha512-D6/AYOA+Lhs5e5il8+5pSLemjtJezUr+8zx+Sn8xlmOux3XOqx4d8l/2udBea8CRPqqrzhsKUsN/gBDE/IcaPQ==}
+ /jest-runtime@29.6.4:
+ resolution: {integrity: sha512-s/QxMBLvmwLdchKEjcLfwzP7h+jsHvNEtxGP5P+Fl1FMaJX2jMiIqe4rJw4tFprzCwuSvVUo9bn0uj4gNRXsbA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/environment': 29.6.1
- '@jest/fake-timers': 29.6.1
- '@jest/globals': 29.6.1
- '@jest/source-map': 29.6.0
- '@jest/test-result': 29.6.1
- '@jest/transform': 29.6.1
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
+ '@jest/environment': 29.6.4
+ '@jest/fake-timers': 29.6.4
+ '@jest/globals': 29.6.4
+ '@jest/source-map': 29.6.3
+ '@jest/test-result': 29.6.4
+ '@jest/transform': 29.6.4
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
chalk: 4.1.2
cjs-module-lexer: 1.2.3
collect-v8-coverage: 1.0.2
glob: 7.2.3
graceful-fs: 4.2.11
- jest-haste-map: 29.6.1
- jest-message-util: 29.6.1
- jest-mock: 29.6.1
- jest-regex-util: 29.4.3
- jest-resolve: 29.6.1
- jest-snapshot: 29.6.1
- jest-util: 29.6.1
+ jest-haste-map: 29.6.4
+ jest-message-util: 29.6.3
+ jest-mock: 29.6.3
+ jest-regex-util: 29.6.3
+ jest-resolve: 29.6.4
+ jest-snapshot: 29.6.4
+ jest-util: 29.6.3
slash: 3.0.0
strip-bom: 4.0.0
transitivePeerDependencies:
- supports-color
dev: true
- /jest-snapshot@29.6.1:
- resolution: {integrity: sha512-G4UQE1QQ6OaCgfY+A0uR1W2AY0tGXUPQpoUClhWHq1Xdnx1H6JOrC2nH5lqnOEqaDgbHFgIwZ7bNq24HpB180A==}
+ /jest-snapshot@29.6.4:
+ resolution: {integrity: sha512-VC1N8ED7+4uboUKGIDsbvNAZb6LakgIPgAF4RSpF13dN6YaMokfRqO+BaqK4zIh6X3JffgwbzuGqDEjHm/MrvA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@babel/core': 7.22.9
- '@babel/generator': 7.22.9
- '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.9)
- '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.22.9)
- '@babel/types': 7.22.5
- '@jest/expect-utils': 29.6.1
- '@jest/transform': 29.6.1
- '@jest/types': 29.6.1
- '@types/prettier': 2.7.3
- babel-preset-current-node-syntax: 1.0.1(@babel/core@7.22.9)
+ '@babel/core': 7.22.11
+ '@babel/generator': 7.22.10
+ '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.11)
+ '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.22.11)
+ '@babel/types': 7.22.11
+ '@jest/expect-utils': 29.6.4
+ '@jest/transform': 29.6.4
+ '@jest/types': 29.6.3
+ babel-preset-current-node-syntax: 1.0.1(@babel/core@7.22.11)
chalk: 4.1.2
- expect: 29.6.1
+ expect: 29.6.4
graceful-fs: 4.2.11
- jest-diff: 29.6.1
- jest-get-type: 29.4.3
- jest-matcher-utils: 29.6.1
- jest-message-util: 29.6.1
- jest-util: 29.6.1
+ jest-diff: 29.6.4
+ jest-get-type: 29.6.3
+ jest-matcher-utils: 29.6.4
+ jest-message-util: 29.6.3
+ jest-util: 29.6.3
natural-compare: 1.4.0
- pretty-format: 29.6.1
+ pretty-format: 29.6.3
semver: 7.5.4
transitivePeerDependencies:
- supports-color
dev: true
- /jest-util@29.6.1:
- resolution: {integrity: sha512-NRFCcjc+/uO3ijUVyNOQJluf8PtGCe/W6cix36+M3cTFgiYqFOOW5MgN4JOOcvbUhcKTYVd1CvHz/LWi8d16Mg==}
+ /jest-util@29.6.3:
+ resolution: {integrity: sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
chalk: 4.1.2
ci-info: 3.8.0
graceful-fs: 4.2.11
picomatch: 2.3.1
dev: true
- /jest-validate@29.6.1:
- resolution: {integrity: sha512-r3Ds69/0KCN4vx4sYAbGL1EVpZ7MSS0vLmd3gV78O+NAx3PDQQukRU5hNHPXlyqCgFY8XUk7EuTMLugh0KzahA==}
+ /jest-validate@29.6.3:
+ resolution: {integrity: sha512-e7KWZcAIX+2W1o3cHfnqpGajdCs1jSM3DkXjGeLSNmCazv1EeI1ggTeK5wdZhF+7N+g44JI2Od3veojoaumlfg==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/types': 29.6.1
+ '@jest/types': 29.6.3
camelcase: 6.3.0
chalk: 4.1.2
- jest-get-type: 29.4.3
+ jest-get-type: 29.6.3
leven: 3.1.0
- pretty-format: 29.6.1
+ pretty-format: 29.6.3
dev: true
- /jest-watcher@29.6.1:
- resolution: {integrity: sha512-d4wpjWTS7HEZPaaj8m36QiaP856JthRZkrgcIY/7ISoUWPIillrXM23WPboZVLbiwZBt4/qn2Jke84Sla6JhFA==}
+ /jest-watcher@29.6.4:
+ resolution: {integrity: sha512-oqUWvx6+On04ShsT00Ir9T4/FvBeEh2M9PTubgITPxDa739p4hoQweWPRGyYeaojgT0xTpZKF0Y/rSY1UgMxvQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/test-result': 29.6.1
- '@jest/types': 29.6.1
- '@types/node': 18.15.11
+ '@jest/test-result': 29.6.4
+ '@jest/types': 29.6.3
+ '@types/node': 20.5.7
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.13.1
- jest-util: 29.6.1
+ jest-util: 29.6.3
string-length: 4.0.2
dev: true
- /jest-worker@29.6.1:
- resolution: {integrity: sha512-U+Wrbca7S8ZAxAe9L6nb6g8kPdia5hj32Puu5iOqBCMTMWFHXuK6dOV2IFrpedbTV8fjMFLdWNttQTBL6u2MRA==}
+ /jest-worker@29.6.4:
+ resolution: {integrity: sha512-6dpvFV4WjcWbDVGgHTWo/aupl8/LbBx2NSKfiwqf79xC/yeJjKHT1+StcKy/2KTmW16hE68ccKVOtXf+WZGz7Q==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@types/node': 18.15.11
- jest-util: 29.6.1
+ '@types/node': 20.5.7
+ jest-util: 29.6.3
merge-stream: 2.0.0
supports-color: 8.1.1
dev: true
- /jest@29.6.1(@types/node@18.15.11)(ts-node@10.9.1):
- resolution: {integrity: sha512-Nirw5B4nn69rVUZtemCQhwxOBhm0nsp3hmtF4rzCeWD7BkjAXRIji7xWQfnTNbz9g0aVsBX6aZK3n+23LM6uDw==}
+ /jest@29.6.4(@types/node@20.5.7)(ts-node@10.9.1):
+ resolution: {integrity: sha512-tEFhVQFF/bzoYV1YuGyzLPZ6vlPrdfvDmmAxudA1dLEuiztqg2Rkx20vkKY32xiDROcD2KXlgZ7Cu8RPeEHRKw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
hasBin: true
peerDependencies:
@@ -3570,12 +3412,13 @@ packages:
node-notifier:
optional: true
dependencies:
- '@jest/core': 29.6.1(ts-node@10.9.1)
- '@jest/types': 29.6.1
+ '@jest/core': 29.6.4(ts-node@10.9.1)
+ '@jest/types': 29.6.3
import-local: 3.1.0
- jest-cli: 29.6.1(@types/node@18.15.11)(ts-node@10.9.1)
+ jest-cli: 29.6.4(@types/node@20.5.7)(ts-node@10.9.1)
transitivePeerDependencies:
- '@types/node'
+ - babel-plugin-macros
- supports-color
- ts-node
dev: true
@@ -3605,6 +3448,10 @@ packages:
hasBin: true
dev: true
+ /json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+ dev: true
+
/json-diff@0.9.0:
resolution: {integrity: sha512-cVnggDrVkAAA3OvFfHpFEhOnmcsUpleEKq4d4O8sQWWSH40MBrWstKigVB1kGrgLWzuom+7rRdaCsnBD6VyObQ==}
hasBin: true
@@ -3632,6 +3479,12 @@ packages:
hasBin: true
dev: true
+ /keyv@4.5.3:
+ resolution: {integrity: sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==}
+ dependencies:
+ json-buffer: 3.0.1
+ dev: true
+
/kleur@3.0.3:
resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
engines: {node: '>=6'}
@@ -3703,11 +3556,11 @@ packages:
resolution: {integrity: sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==}
dev: false
- /make-dir@3.1.0:
- resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
- engines: {node: '>=8'}
+ /make-dir@4.0.0:
+ resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
+ engines: {node: '>=10'}
dependencies:
- semver: 6.3.1
+ semver: 7.5.4
dev: true
/make-error@1.3.6:
@@ -3720,6 +3573,14 @@ packages:
tmpl: 1.0.5
dev: true
+ /md5@2.3.0:
+ resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==}
+ dependencies:
+ charenc: 0.0.2
+ crypt: 0.0.2
+ is-buffer: 1.1.6
+ dev: false
+
/media-typer@0.3.0:
resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
engines: {node: '>= 0.6'}
@@ -3830,10 +3691,6 @@ packages:
/ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- /natural-compare-lite@1.4.0:
- resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==}
- dev: true
-
/natural-compare@1.4.0:
resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
dev: true
@@ -3847,8 +3704,13 @@ packages:
resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==}
dev: true
- /node-fetch@2.6.12:
- resolution: {integrity: sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==}
+ /node-domexception@1.0.0:
+ resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==}
+ engines: {node: '>=10.5.0'}
+ dev: false
+
+ /node-fetch@2.7.0:
+ resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
engines: {node: 4.x || >=6.0.0}
peerDependencies:
encoding: ^0.1.0
@@ -3857,10 +3719,9 @@ packages:
optional: true
dependencies:
whatwg-url: 5.0.0
- dev: true
- /node-gyp-build@4.6.0:
- resolution: {integrity: sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==}
+ /node-gyp-build@4.6.1:
+ resolution: {integrity: sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==}
hasBin: true
requiresBuild: true
dev: false
@@ -3918,6 +3779,9 @@ packages:
resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==}
dev: false
+ /obuf@1.1.2:
+ resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==}
+
/on-finished@2.3.0:
resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==}
engines: {node: '>= 0.8'}
@@ -3950,25 +3814,32 @@ packages:
mimic-fn: 2.1.0
dev: true
- /openai@3.3.0:
- resolution: {integrity: sha512-uqxI/Au+aPRnsaQRe8CojU0eCR7I0mBiKjD3sNMzY6DaC1ZVrc85u98mtJW6voDug8fgGN+DIZmTDxTthxb7dQ==}
+ /openai@4.3.1:
+ resolution: {integrity: sha512-64iI2LbJLk0Ss4Nv5IrdGFe6ALNnKlMuXoGuH525bJYxdupJfDCAtra/Jigex1z8it0U82M87tR2TMGU+HYeFQ==}
+ hasBin: true
dependencies:
- axios: 0.26.1
- form-data: 4.0.0
+ '@types/node': 18.17.12
+ '@types/node-fetch': 2.6.4
+ abort-controller: 3.0.0
+ agentkeepalive: 4.5.0
+ digest-fetch: 1.3.0
+ form-data-encoder: 1.7.2
+ formdata-node: 4.4.1
+ node-fetch: 2.7.0
transitivePeerDependencies:
- - debug
+ - encoding
dev: false
- /optionator@0.9.1:
- resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==}
+ /optionator@0.9.3:
+ resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
engines: {node: '>= 0.8.0'}
dependencies:
+ '@aashutoshrathi/word-wrap': 1.2.6
deep-is: 0.1.4
fast-levenshtein: 2.0.6
levn: 0.4.1
prelude-ls: 1.2.1
type-check: 0.4.0
- word-wrap: 1.2.3
dev: true
/p-limit@2.3.0:
@@ -4019,7 +3890,7 @@ packages:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
dependencies:
- '@babel/code-frame': 7.22.5
+ '@babel/code-frame': 7.22.13
error-ex: 1.3.2
json-parse-even-better-errors: 2.3.1
lines-and-columns: 1.2.4
@@ -4058,20 +3929,30 @@ packages:
engines: {node: '>=8'}
dev: true
- /pg-connection-string@2.5.0:
- resolution: {integrity: sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==}
+ /pg-cloudflare@1.1.1:
+ resolution: {integrity: sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==}
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /pg-connection-string@2.6.2:
+ resolution: {integrity: sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA==}
dev: false
/pg-int8@1.0.1:
resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==}
engines: {node: '>=4.0.0'}
- /pg-pool@3.6.0(pg@8.10.0):
- resolution: {integrity: sha512-clFRf2ksqd+F497kWFyM21tMjeikn60oGDmqMT8UBrynEwVEX/5R5xd2sdvdo1cZCFlguORNpVuqxIj+aK4cfQ==}
+ /pg-numeric@1.0.2:
+ resolution: {integrity: sha512-BM/Thnrw5jm2kKLE5uJkXqqExRUY/toLHda65XgFTBTFYZyopbKjBe29Ii3RbkvlsMoFwD+tHeGaCjjv0gHlyw==}
+ engines: {node: '>=4'}
+
+ /pg-pool@3.6.1(pg@8.11.3):
+ resolution: {integrity: sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og==}
peerDependencies:
pg: '>=8.0'
dependencies:
- pg: 8.10.0
+ pg: 8.11.3
dev: false
/pg-protocol@1.6.0:
@@ -4086,9 +3967,22 @@ packages:
postgres-bytea: 1.0.0
postgres-date: 1.0.7
postgres-interval: 1.2.0
+ dev: false
- /pg@8.10.0:
- resolution: {integrity: sha512-ke7o7qSTMb47iwzOSaZMfeR7xToFdkE71ifIipOAAaLIM0DYzfOAXlgFFmYUIE2BcJtvnVlGCID84ZzCegE8CQ==}
+ /pg-types@4.0.1:
+ resolution: {integrity: sha512-hRCSDuLII9/LE3smys1hRHcu5QGcLs9ggT7I/TCs0IE+2Eesxi9+9RWAAwZ0yaGjxoWICF/YHLOEjydGujoJ+g==}
+ engines: {node: '>=10'}
+ dependencies:
+ pg-int8: 1.0.1
+ pg-numeric: 1.0.2
+ postgres-array: 3.0.2
+ postgres-bytea: 3.0.0
+ postgres-date: 2.0.1
+ postgres-interval: 3.0.0
+ postgres-range: 1.1.3
+
+ /pg@8.11.3:
+ resolution: {integrity: sha512-+9iuvG8QfaaUrrph+kpF24cXkH1YOOUeArRNYIxq1viYHZagBxrTno7cecY1Fa44tJeZvaoG+Djpkc3JwehN5g==}
engines: {node: '>= 8.0.0'}
peerDependencies:
pg-native: '>=3.0.1'
@@ -4098,11 +3992,13 @@ packages:
dependencies:
buffer-writer: 2.0.0
packet-reader: 1.0.0
- pg-connection-string: 2.5.0
- pg-pool: 3.6.0(pg@8.10.0)
+ pg-connection-string: 2.6.2
+ pg-pool: 3.6.1(pg@8.11.3)
pg-protocol: 1.6.0
pg-types: 2.2.0
pgpass: 1.0.5
+ optionalDependencies:
+ pg-cloudflare: 1.1.1
dev: false
/pgpass@1.0.5:
@@ -4135,31 +4031,56 @@ packages:
/postgres-array@2.0.0:
resolution: {integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==}
engines: {node: '>=4'}
+ dev: false
+
+ /postgres-array@3.0.2:
+ resolution: {integrity: sha512-6faShkdFugNQCLwucjPcY5ARoW1SlbnrZjmGl0IrrqewpvxvhSLHimCVzqeuULCbG0fQv7Dtk1yDbG3xv7Veog==}
+ engines: {node: '>=12'}
/postgres-bytea@1.0.0:
resolution: {integrity: sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==}
engines: {node: '>=0.10.0'}
+ dev: false
+
+ /postgres-bytea@3.0.0:
+ resolution: {integrity: sha512-CNd4jim9RFPkObHSjVHlVrxoVQXz7quwNFpz7RY1okNNme49+sVyiTvTRobiLV548Hx/hb1BG+iE7h9493WzFw==}
+ engines: {node: '>= 6'}
+ dependencies:
+ obuf: 1.1.2
/postgres-date@1.0.7:
resolution: {integrity: sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==}
engines: {node: '>=0.10.0'}
+ dev: false
+
+ /postgres-date@2.0.1:
+ resolution: {integrity: sha512-YtMKdsDt5Ojv1wQRvUhnyDJNSr2dGIC96mQVKz7xufp07nfuFONzdaowrMHjlAzY6GDLd4f+LUHHAAM1h4MdUw==}
+ engines: {node: '>=12'}
/postgres-interval@1.2.0:
resolution: {integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==}
engines: {node: '>=0.10.0'}
dependencies:
xtend: 4.0.2
+ dev: false
+
+ /postgres-interval@3.0.0:
+ resolution: {integrity: sha512-BSNDnbyZCXSxgA+1f5UU2GmwhoI0aU5yMxRGO8CdFEcY2BQF9xm/7MqKnYoM1nJDk8nONNWDk9WeSmePFhQdlw==}
+ engines: {node: '>=12'}
+
+ /postgres-range@1.1.3:
+ resolution: {integrity: sha512-VdlZoocy5lCP0c/t66xAfclglEapXPCIVhqqJRncYpvbCgImF0w67aPKfbqUMr72tO2k5q0TdTZwCLjPTI6C9g==}
/prelude-ls@1.2.1:
resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
engines: {node: '>= 0.8.0'}
dev: true
- /pretty-format@29.6.1:
- resolution: {integrity: sha512-7jRj+yXO0W7e4/tSJKoR7HRIHLPPjtNaUGG2xxKQnGvPNRkgWcQ0AZX6P4KBRJN4FcTBWb3sa7DVUJmocYuoog==}
+ /pretty-format@29.6.3:
+ resolution: {integrity: sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@jest/schemas': 29.6.0
+ '@jest/schemas': 29.6.3
ansi-styles: 5.2.0
react-is: 18.2.0
dev: true
@@ -4270,11 +4191,11 @@ packages:
engines: {node: '>=10'}
dev: true
- /resolve@1.22.2:
- resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==}
+ /resolve@1.22.4:
+ resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==}
hasBin: true
dependencies:
- is-core-module: 2.12.1
+ is-core-module: 2.13.0
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
dev: true
@@ -4375,7 +4296,7 @@ packages:
resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
dependencies:
call-bind: 1.0.2
- get-intrinsic: 1.2.0
+ get-intrinsic: 1.2.1
object-inspect: 1.12.3
dev: false
@@ -4418,15 +4339,15 @@ packages:
- supports-color
dev: false
- /socket.io@4.7.1(bufferutil@4.0.7)(utf-8-validate@6.0.3):
- resolution: {integrity: sha512-W+utHys2w//dhFjy7iQQu9sGd3eokCjGbl2r59tyLqNiJJBdIebn3GAKEXBr3osqHTObJi2die/25bCx2zsaaw==}
- engines: {node: '>=10.0.0'}
+ /socket.io@4.7.2(bufferutil@4.0.7)(utf-8-validate@6.0.3):
+ resolution: {integrity: sha512-bvKVS29/I5fl2FGLNHuXlQaUH/BlzX1IN6S+NKLNZpBsPZIDH+90eQmCs2Railn4YUiww4SzUedJ6+uzwFnKLw==}
+ engines: {node: '>=10.2.0'}
dependencies:
accepts: 1.3.8
base64id: 2.0.0
cors: 2.8.5
debug: 4.3.4
- engine.io: 6.5.1(bufferutil@4.0.7)(utf-8-validate@6.0.3)
+ engine.io: 6.5.2(bufferutil@4.0.7)(utf-8-validate@6.0.3)
socket.io-adapter: 2.5.2(bufferutil@4.0.7)(utf-8-validate@6.0.3)
socket.io-parser: 4.2.4
transitivePeerDependencies:
@@ -4590,9 +4511,17 @@ packages:
/tr46@0.0.3:
resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
+
+ /ts-api-utils@1.0.2(typescript@5.2.2):
+ resolution: {integrity: sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==}
+ engines: {node: '>=16.13.0'}
+ peerDependencies:
+ typescript: '>=4.2.0'
+ dependencies:
+ typescript: 5.2.2
dev: true
- /ts-jest@29.1.1(@babel/core@7.22.9)(esbuild@0.18.20)(jest@29.6.1)(typescript@5.0.4):
+ /ts-jest@29.1.1(@babel/core@7.22.11)(esbuild@0.18.20)(jest@29.6.4)(typescript@5.2.2):
resolution: {integrity: sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
hasBin: true
@@ -4613,21 +4542,21 @@ packages:
esbuild:
optional: true
dependencies:
- '@babel/core': 7.22.9
+ '@babel/core': 7.22.11
bs-logger: 0.2.6
esbuild: 0.18.20
fast-json-stable-stringify: 2.1.0
- jest: 29.6.1(@types/node@18.15.11)(ts-node@10.9.1)
- jest-util: 29.6.1
+ jest: 29.6.4(@types/node@20.5.7)(ts-node@10.9.1)
+ jest-util: 29.6.3
json5: 2.2.3
lodash.memoize: 4.1.2
make-error: 1.3.6
semver: 7.5.4
- typescript: 5.0.4
+ typescript: 5.2.2
yargs-parser: 21.1.1
dev: true
- /ts-node@10.9.1(@types/node@18.15.11)(typescript@5.0.4):
+ /ts-node@10.9.1(@types/node@20.5.7)(typescript@5.2.2):
resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==}
hasBin: true
peerDependencies:
@@ -4645,37 +4574,23 @@ packages:
'@tsconfig/node10': 1.0.9
'@tsconfig/node12': 1.0.11
'@tsconfig/node14': 1.0.3
- '@tsconfig/node16': 1.0.3
- '@types/node': 18.15.11
- acorn: 8.9.0
+ '@tsconfig/node16': 1.0.4
+ '@types/node': 20.5.7
+ acorn: 8.10.0
acorn-walk: 8.2.0
arg: 4.1.3
create-require: 1.1.1
diff: 4.0.2
make-error: 1.3.6
- typescript: 5.0.4
+ typescript: 5.2.2
v8-compile-cache-lib: 3.0.1
yn: 3.1.1
dev: true
- /tslib@1.14.1:
- resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
- dev: true
-
- /tslib@2.6.1:
- resolution: {integrity: sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==}
+ /tslib@2.6.2:
+ resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
dev: false
- /tsutils@3.21.0(typescript@5.0.4):
- resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
- engines: {node: '>= 6'}
- peerDependencies:
- typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
- dependencies:
- tslib: 1.14.1
- typescript: 5.0.4
- dev: true
-
/type-check@0.4.0:
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
engines: {node: '>= 0.8.0'}
@@ -4714,9 +4629,9 @@ packages:
resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==}
dev: true
- /typescript@5.0.4:
- resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==}
- engines: {node: '>=12.20'}
+ /typescript@5.2.2:
+ resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==}
+ engines: {node: '>=14.17'}
hasBin: true
dev: true
@@ -4729,13 +4644,13 @@ packages:
engines: {node: '>= 0.8'}
dev: false
- /update-browserslist-db@1.0.11(browserslist@4.21.9):
+ /update-browserslist-db@1.0.11(browserslist@4.21.10):
resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==}
hasBin: true
peerDependencies:
browserslist: '>= 4.21.0'
dependencies:
- browserslist: 4.21.9
+ browserslist: 4.21.10
escalade: 3.1.1
picocolors: 1.0.0
dev: true
@@ -4751,7 +4666,7 @@ packages:
engines: {node: '>=6.14.2'}
requiresBuild: true
dependencies:
- node-gyp-build: 4.6.0
+ node-gyp-build: 4.6.1
dev: false
/utils-merge@1.0.1:
@@ -4767,7 +4682,7 @@ packages:
resolution: {integrity: sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==}
engines: {node: '>=10.12.0'}
dependencies:
- '@jridgewell/trace-mapping': 0.3.18
+ '@jridgewell/trace-mapping': 0.3.19
'@types/istanbul-lib-coverage': 2.0.4
convert-source-map: 1.9.0
dev: true
@@ -4783,16 +4698,19 @@ packages:
makeerror: 1.0.12
dev: true
+ /web-streams-polyfill@4.0.0-beta.3:
+ resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==}
+ engines: {node: '>= 14'}
+ dev: false
+
/webidl-conversions@3.0.1:
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
- dev: true
/whatwg-url@5.0.0:
resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
dependencies:
tr46: 0.0.3
webidl-conversions: 3.0.1
- dev: true
/which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
@@ -4802,11 +4720,6 @@ packages:
isexe: 2.0.0
dev: true
- /word-wrap@1.2.3:
- resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==}
- engines: {node: '>=0.10.0'}
- dev: true
-
/wordwrap@1.0.0:
resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
dev: true
@@ -4851,6 +4764,7 @@ packages:
/xtend@4.0.2:
resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
engines: {node: '>=0.4'}
+ dev: false
/y18n@5.0.8:
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
@@ -4893,6 +4807,6 @@ packages:
engines: {node: '>=10'}
dev: true
- /zod@3.21.4:
- resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==}
+ /zod@3.22.2:
+ resolution: {integrity: sha512-wvWkphh5WQsJbVk1tbx1l1Ly4yg+XecD+Mq280uBGt9wa5BKSWf4Mhp6GmrkPixhMxmabYY7RbzlwVP32pbGCg==}
dev: true
diff --git a/server/src/controllers/game.controller.ts b/server/src/controllers/game.controller.ts
index f86f1189..65f58cb3 100644
--- a/server/src/controllers/game.controller.ts
+++ b/server/src/controllers/game.controller.ts
@@ -2,8 +2,6 @@ import type { NextFunction, Request, Response } from "express";
import {
getLeaderboardById,
getPageGameInfoByRoomCode,
- getUserRegenerationCount,
- incrementUserRegenerationCount,
} from "../services/game.service";
export async function getPageGameInfoByRoomCodeController(
@@ -49,57 +47,3 @@ export async function getLeaderboardByIdController(
next(error);
}
}
-
-export async function getUserRegenerationCountController(
- req: Request<{ id: string; userId: string }>,
- res: Response,
- next: NextFunction
-) {
- try {
- const gameId = Number.parseInt(req.params.id);
- const userId = Number.parseInt(req.params.userId);
-
- const regenerationCount = await getUserRegenerationCount({
- gameId,
- userId,
- });
-
- if (regenerationCount === undefined || regenerationCount === null) {
- res.status(404).send({
- error: `Regeneration Count with a game id of ${gameId} and a user id of ${userId} was not found`,
- });
- return;
- }
-
- res.status(200).send({ count: regenerationCount });
- } catch (error) {
- next(error);
- }
-}
-
-export async function incrementUserRegenerationCountController(
- req: Request<{ id: string; userId: string }>,
- res: Response,
- next: NextFunction
-) {
- try {
- const gameId = Number.parseInt(req.params.id);
- const userId = Number.parseInt(req.params.userId);
-
- const regenerationCount = await incrementUserRegenerationCount({
- gameId,
- userId,
- });
-
- if (regenerationCount === undefined || regenerationCount === null) {
- res.status(404).send({
- error: `Regeneration Count with a game id of ${gameId} and a user id of ${userId} was not found`,
- });
- return;
- }
-
- res.status(200).send({ count: regenerationCount });
- } catch (error) {
- next(error);
- }
-}
diff --git a/server/src/controllers/generation.controller.ts b/server/src/controllers/generation.controller.ts
index 7b492e5c..af9c2edc 100644
--- a/server/src/controllers/generation.controller.ts
+++ b/server/src/controllers/generation.controller.ts
@@ -1,9 +1,57 @@
import type { NextFunction, Request, Response } from "express";
import {
- getGameRoundGenerations,
+ createGeneration,
+ getFaceOffGenerations,
+ getGenerationCount,
+ getUserGenerationInfo,
mapGenerationsByQuestion,
} from "../services/generation.service";
+export async function createGenerationsController(
+ req: Request<
+ {},
+ {},
+ {
+ userId: number;
+ gameId: number;
+ questionId: number;
+ images: { text: string; imageUrl: string }[];
+ }
+ >,
+ res: Response,
+ next: NextFunction
+) {
+ try {
+ const { userId, gameId, questionId, images } = req.body;
+
+ const generationCount = await getGenerationCount({
+ gameId,
+ userId,
+ questionId,
+ });
+
+ if (generationCount >= 8) {
+ throw new Error("Exceeded generation count for question.");
+ }
+
+ const generations = await Promise.all(
+ images.map((image) =>
+ createGeneration({
+ userId,
+ gameId,
+ questionId,
+ text: image.text,
+ imageUrl: image.imageUrl,
+ })
+ )
+ );
+
+ res.status(200).send(generations);
+ } catch (error) {
+ next(error);
+ }
+}
+
export async function getFaceOffsController(
req: Request<{ gameId: string; round: string }>,
res: Response,
@@ -13,12 +61,12 @@ export async function getFaceOffsController(
const gameId = Number.parseInt(req.params.gameId);
const round = Number.parseInt(req.params.round);
- const gameRoundGenerations = await getGameRoundGenerations({
+ const faceOffGenerations = await getFaceOffGenerations({
gameId,
round,
});
- if (!gameRoundGenerations) {
+ if (!faceOffGenerations) {
res.status(404).send({
error: `Generations with gameId of ${gameId} and round of ${round} were not found`,
});
@@ -26,7 +74,7 @@ export async function getFaceOffsController(
}
const faceOffs = mapGenerationsByQuestion({
- gameRoundGenerations,
+ faceOffGenerations,
});
res.status(200).send(faceOffs);
@@ -34,3 +82,36 @@ export async function getFaceOffsController(
next(error);
}
}
+
+export async function getUserGenerationInfoController(
+ req: Request<{
+ gameId: string;
+ userId: string;
+ round: string;
+ }>,
+ res: Response,
+ next: NextFunction
+) {
+ try {
+ const gameId = Number.parseInt(req.params.gameId);
+ const userId = Number.parseInt(req.params.userId);
+ const round = Number.parseInt(req.params.round);
+
+ const generationInfo = await getUserGenerationInfo({
+ gameId,
+ userId,
+ round,
+ });
+
+ if (!generationInfo) {
+ res.status(404).send({
+ error: `Generation info with gameId of ${gameId}, round of ${round}, and userId of ${userId} were not found`,
+ });
+ return;
+ }
+
+ res.status(200).send(generationInfo);
+ } catch (error) {
+ next(error);
+ }
+}
diff --git a/server/src/controllers/room.controller.ts b/server/src/controllers/room.controller.ts
index cbae2a6c..41d40ca2 100644
--- a/server/src/controllers/room.controller.ts
+++ b/server/src/controllers/room.controller.ts
@@ -34,7 +34,14 @@ export async function joinRoomController(
const checkRoomExists = await getRoom({ code });
if (!checkRoomExists) {
- res.status(404).send(`Room with the code ${code} was not found`);
+ res
+ .status(404)
+ .send({ error: `Room with the code ${code} was not found` });
+ return;
+ }
+
+ if (checkRoomExists.players.length >= 8) {
+ res.status(400).send(`Room with the code ${code} is full`);
return;
}
diff --git a/server/src/handlers/generation.handler.ts b/server/src/handlers/generation.handler.ts
index cde68b6b..e1ec227e 100644
--- a/server/src/handlers/generation.handler.ts
+++ b/server/src/handlers/generation.handler.ts
@@ -3,9 +3,9 @@ import { Server, Socket } from "socket.io";
import { ClientToServerEvents, ServerToClientEvents } from "../types";
import { handleSocketError } from "../utils";
import {
- createGeneration,
- getGameRoundGenerations,
+ getFaceOffGenerations,
getSubmittedPlayers,
+ setGenerationAsSubmitted,
} from "../services/generation.service";
import { getGameInfo } from "../services/game.service";
@@ -22,14 +22,14 @@ export function generationSocketHandlers(
return;
}
- await createGeneration(data);
+ await setGenerationAsSubmitted({ generationId: data.generationId });
- const gameRoundGenerations = await getGameRoundGenerations({
+ const faceOffGenerations = await getFaceOffGenerations({
gameId: data.gameId,
round: data.round,
});
- const submittedUsers = getSubmittedPlayers({ gameRoundGenerations });
+ const submittedUsers = getSubmittedPlayers({ faceOffGenerations });
socket.emit("submittedPlayers", submittedUsers);
socket
@@ -37,7 +37,7 @@ export function generationSocketHandlers(
.emit("submittedPlayers", submittedUsers);
const totalNeeded = gameInfo.players.length * 2;
- const currentAmount = gameRoundGenerations.length;
+ const currentAmount = faceOffGenerations.length;
console.log("[TOTAL NEEDED]", totalNeeded);
diff --git a/server/src/handlers/room.handler.ts b/server/src/handlers/room.handler.ts
index 6fd7739c..c1eedb28 100644
--- a/server/src/handlers/room.handler.ts
+++ b/server/src/handlers/room.handler.ts
@@ -13,17 +13,27 @@ export function roomSocketHandlers(
const userId = Number(socket.handshake.auth.userId);
let roomInfo = await getRoom({ code });
- if (
- roomInfo &&
- !roomInfo.players.some((player) => player.id === userId)
- ) {
+ if (!roomInfo) {
+ socket.emit("message", `Unable to connect to room`);
+ return;
+ }
+
+ const playerInRoom = roomInfo.players.some(
+ (player) => player.id === userId
+ );
+
+ if (roomInfo.players.length >= 8 && !playerInRoom) {
+ socket.emit("message", "Room is full, unable to join");
+ return;
+ }
+
+ if (!playerInRoom) {
await joinRoom({ userId: userId, code });
roomInfo = await getRoom({ code });
}
if (!roomInfo) {
- socket.emit("message", `Unable to connect to room`);
- return;
+ throw new Error("Unable to get room info after join");
}
socket.join(code);
diff --git a/server/src/handlers/vote.handler.ts b/server/src/handlers/vote.handler.ts
index e1727a67..2fa711c0 100644
--- a/server/src/handlers/vote.handler.ts
+++ b/server/src/handlers/vote.handler.ts
@@ -4,8 +4,8 @@ import { ClientToServerEvents, ServerToClientEvents } from "../types";
import { handleSocketError } from "../utils";
import { getGameInfo } from "../services/game.service";
import {
- getGameRoundGenerations,
- filterGameRoundGenerationsByQuestionId,
+ getFaceOffGenerations,
+ filterFaceOffGenerationsByQuestionId,
} from "../services/generation.service";
import {
createVote,
@@ -44,14 +44,14 @@ export function voteSocketHandlers(
const currentAmount = questionVotes.length;
if (currentAmount >= totalNeeded) {
- const gameRoundGenerations = await getGameRoundGenerations({
+ const faceOffGenerations = await getFaceOffGenerations({
gameId: data.gameId,
round: gameInfo.game.round,
});
- const filteredGenerations = filterGameRoundGenerationsByQuestionId({
+ const filteredGenerations = filterFaceOffGenerationsByQuestionId({
questionId: data.questionId,
- gameRoundGenerations,
+ faceOffGenerations,
});
const voteMap = createVoteMap({
diff --git a/server/src/openai.ts b/server/src/openai.ts
index 8cfb40ad..b0bc5747 100644
--- a/server/src/openai.ts
+++ b/server/src/openai.ts
@@ -1,6 +1,5 @@
-import { Configuration, OpenAIApi } from "openai";
+import OpenAI from "openai";
-const config = new Configuration({
- apiKey: process.env.OPENAI_API_KEY,
+export const openai = new OpenAI({
+ apiKey: process.env.OPENAI_API_KEY ?? "",
});
-export const openai = new OpenAIApi(config);
diff --git a/server/src/routes/game.route.ts b/server/src/routes/game.route.ts
index 77e05981..dafa8780 100644
--- a/server/src/routes/game.route.ts
+++ b/server/src/routes/game.route.ts
@@ -2,20 +2,9 @@ import type { Express } from "express";
import {
getLeaderboardByIdController,
getPageGameInfoByRoomCodeController,
- getUserRegenerationCountController,
- incrementUserRegenerationCountController,
} from "../controllers/game.controller";
export function gameRoutes(app: Express) {
app.get("/game/:code", getPageGameInfoByRoomCodeController);
app.get("/game/:id/leaderboard", getLeaderboardByIdController);
- app.get(
- "/game/:id/regenerations/:userId",
- getUserRegenerationCountController
- );
-
- app.post(
- "/game/:id/regenerations/:userId",
- incrementUserRegenerationCountController
- );
}
diff --git a/server/src/routes/generation.route.ts b/server/src/routes/generation.route.ts
index 318bd4b8..0e79be70 100644
--- a/server/src/routes/generation.route.ts
+++ b/server/src/routes/generation.route.ts
@@ -1,6 +1,16 @@
import type { Express } from "express";
-import { getFaceOffsController } from "../controllers/generation.controller";
+import {
+ createGenerationsController,
+ getFaceOffsController,
+ getUserGenerationInfoController,
+} from "../controllers/generation.controller";
export function generationRoutes(app: Express) {
+ app.get(
+ "/generations/gameId/:gameId/round/:round/user/:userId",
+ getUserGenerationInfoController
+ );
app.get("/generations/gameId/:gameId/round/:round", getFaceOffsController);
+
+ app.post("/generations", createGenerationsController);
}
diff --git a/server/src/routes/question.route.ts b/server/src/routes/question.route.ts
index 4f868816..76a3768c 100644
--- a/server/src/routes/question.route.ts
+++ b/server/src/routes/question.route.ts
@@ -6,7 +6,6 @@ import {
export function questionRoutes(app: Express) {
app.get("/question/:id", getQuestionByIdController);
-
app.get(
"/questions/user/:userId/game/:gameId/round/:round",
getQuestionsByUserGameRoundController
diff --git a/server/src/routes/room.route.ts b/server/src/routes/room.route.ts
index d017cdad..16a17d63 100644
--- a/server/src/routes/room.route.ts
+++ b/server/src/routes/room.route.ts
@@ -5,7 +5,7 @@ import {
} from "../controllers/room.controller";
export function roomRoutes(app: Express) {
- app.post("/room/join", joinRoomController);
-
app.get("/room/:code", getRoomController);
+
+ app.post("/room/join", joinRoomController);
}
diff --git a/server/src/services/game.service.ts b/server/src/services/game.service.ts
index 434c9720..3ca8cb48 100644
--- a/server/src/services/game.service.ts
+++ b/server/src/services/game.service.ts
@@ -1,4 +1,4 @@
-import { and, asc, desc, eq, sql } from "drizzle-orm";
+import { asc, desc, eq, sql } from "drizzle-orm";
import { db } from "../../db/db";
import {
NewGame,
@@ -109,7 +109,12 @@ export async function getPageGameInfoByRoomCode({ code }: { code: string }) {
let votedPlayers: { user: User; vote: Vote }[] = [];
if (gameRoundGenerations.length > 0) {
- submittedPlayers = getSubmittedPlayers({ gameRoundGenerations });
+ // Grab only the generations where selected is true because those are the ones that are submitted for face-offs.
+ submittedPlayers = getSubmittedPlayers({
+ faceOffGenerations: gameRoundGenerations.filter(
+ (generation) => generation.generation.selected
+ ),
+ });
votedPlayers = await getVotesByGameRound({
gameId: latestGame.id,
round: latestGame.round,
@@ -121,6 +126,7 @@ export async function getPageGameInfoByRoomCode({ code }: { code: string }) {
game: latestGame,
players: players,
questions: gameQuestions,
+ gameRoundGenerations,
submittedPlayers,
votedPlayers,
};
@@ -207,39 +213,3 @@ export async function addUsersToGame({
return usersToGame;
}
-
-export async function getUserRegenerationCount({
- gameId,
- userId,
-}: {
- gameId: number;
- userId: number;
-}) {
- const regenerationCount = await db
- .select({ count: usersToGames.regenerationCount })
- .from(usersToGames)
- .where(
- and(eq(usersToGames.userId, userId), eq(usersToGames.gameId, gameId))
- );
-
- return regenerationCount[0].count;
-}
-
-export async function incrementUserRegenerationCount({
- gameId,
- userId,
-}: {
- gameId: number;
- userId: number;
-}) {
- const currentCount = await getUserRegenerationCount({ gameId, userId });
- const incrementedCount = await db
- .update(usersToGames)
- .set({ regenerationCount: currentCount + 1 })
- .where(
- and(eq(usersToGames.userId, userId), eq(usersToGames.gameId, gameId))
- )
- .returning();
-
- return incrementedCount[0].regenerationCount;
-}
diff --git a/server/src/services/generation.service.ts b/server/src/services/generation.service.ts
index 1fbecb45..0ac820f2 100644
--- a/server/src/services/generation.service.ts
+++ b/server/src/services/generation.service.ts
@@ -1,4 +1,4 @@
-import { and, asc, eq } from "drizzle-orm";
+import { and, asc, desc, eq, sql } from "drizzle-orm";
import { db } from "../../db/db";
import {
Generation,
@@ -44,6 +44,52 @@ export async function getGameRoundGenerations({
.where(
and(eq(generations.gameId, gameId), eq(questionsToGames.round, round))
)
+ .orderBy(
+ desc(questionsToGames.createdAt),
+ desc(questionsToGames.questionId)
+ );
+
+ return gameRoundGenerations;
+}
+
+export async function getFaceOffGenerations({
+ gameId,
+ round,
+}: {
+ gameId: number;
+ round: number;
+}): Promise {
+ const gameRoundGenerations = await db
+ .select({
+ generation: generations,
+ question: {
+ id: questions.id,
+ text: questions.text,
+ round: questionsToGames.round,
+ gameId: questionsToGames.gameId,
+ player1: questionsToGames.player1,
+ player2: questionsToGames.player2,
+ createdAt: questionsToGames.createdAt,
+ },
+ user: users,
+ })
+ .from(generations)
+ .innerJoin(
+ questionsToGames,
+ and(
+ eq(questionsToGames.gameId, generations.gameId),
+ eq(questionsToGames.questionId, generations.questionId)
+ )
+ )
+ .innerJoin(questions, eq(questions.id, generations.questionId))
+ .innerJoin(users, eq(users.id, generations.userId))
+ .where(
+ and(
+ eq(generations.gameId, gameId),
+ eq(questionsToGames.round, round),
+ eq(generations.selected, true)
+ )
+ )
.orderBy(asc(questionsToGames.createdAt), asc(questionsToGames.questionId));
return gameRoundGenerations;
@@ -51,11 +97,11 @@ export async function getGameRoundGenerations({
// TODO: test this function
export function mapGenerationsByQuestion({
- gameRoundGenerations,
+ faceOffGenerations,
}: {
- gameRoundGenerations: GameRoundGeneration[];
+ faceOffGenerations: GameRoundGeneration[];
}) {
- const questionGenerationMap = gameRoundGenerations.reduce<
+ const questionGenerationMap = faceOffGenerations.reduce<
Record
>((acc, curr, i) => {
if (!acc[curr.question.id]) {
@@ -64,19 +110,19 @@ export function mapGenerationsByQuestion({
player1:
curr.generation.userId === curr.question.player1
? curr.user
- : gameRoundGenerations[i + 1].user,
+ : faceOffGenerations[i + 1].user,
player1Generation:
curr.generation.userId === curr.question.player1
? curr.generation
- : gameRoundGenerations[i + 1].generation, // the generations are ordered by question id so instead of doing a search for the correct generation, we know that it is at the next index
+ : faceOffGenerations[i + 1].generation, // the generations are ordered by question id so instead of doing a search for the correct generation, we know that it is at the next index
player2:
curr.generation.userId === curr.question.player2
? curr.user
- : gameRoundGenerations[i + 1].user,
+ : faceOffGenerations[i + 1].user,
player2Generation:
curr.generation.userId === curr.question.player2
? curr.generation
- : gameRoundGenerations[i + 1].generation,
+ : faceOffGenerations[i + 1].generation,
};
}
@@ -90,12 +136,12 @@ export function mapGenerationsByQuestion({
// TODO: Test this function
export function getSubmittedPlayers({
- gameRoundGenerations,
+ faceOffGenerations,
}: {
- gameRoundGenerations: GameRoundGeneration[];
+ faceOffGenerations: GameRoundGeneration[];
}) {
const userGenerationCountMap = new Map();
- const submittedUsers = gameRoundGenerations.reduce((acc, curr) => {
+ const submittedUsers = faceOffGenerations.reduce((acc, curr) => {
const currUserId = curr.generation.userId;
if (userGenerationCountMap.get(currUserId) === 1) {
@@ -128,14 +174,14 @@ export async function createGeneration(data: NewGeneration) {
return newGeneration[0];
}
-export function filterGameRoundGenerationsByQuestionId({
+export function filterFaceOffGenerationsByQuestionId({
questionId,
- gameRoundGenerations,
+ faceOffGenerations,
}: {
questionId: number;
- gameRoundGenerations: GameRoundGeneration[];
+ faceOffGenerations: GameRoundGeneration[];
}) {
- const filteredGenerations = gameRoundGenerations.reduce(
+ const filteredGenerations = faceOffGenerations.reduce(
(acc, curr) => {
if (curr.question.id === questionId) {
acc.push(curr.generation);
@@ -148,3 +194,81 @@ export function filterGameRoundGenerationsByQuestionId({
return filteredGenerations;
}
+
+export async function getGenerationCount({
+ gameId,
+ userId,
+ questionId,
+}: {
+ gameId: number;
+ userId: number;
+ questionId: number;
+}) {
+ const generationCount = await db
+ .select({
+ count: sql`count(${generations.id})::int`,
+ })
+ .from(generations)
+ .where(
+ and(
+ eq(generations.gameId, gameId),
+ eq(generations.userId, userId),
+ eq(generations.questionId, questionId)
+ )
+ );
+
+ return generationCount[0].count;
+}
+
+export async function getUserGenerationInfo({
+ gameId,
+ userId,
+ round,
+}: {
+ gameId: number;
+ userId: number;
+ round: number;
+}) {
+ const generationsForUserForRound = await db
+ .select({
+ id: generations.id,
+ gameId: generations.gameId,
+ imageUrl: generations.imageUrl,
+ questionId: generations.questionId,
+ selected: generations.selected,
+ text: generations.text,
+ userId: generations.userId,
+ createdAt: generations.createdAt,
+ })
+ .from(generations)
+ .innerJoin(
+ questionsToGames,
+ and(
+ eq(generations.gameId, questionsToGames.gameId),
+ eq(generations.questionId, questionsToGames.questionId)
+ )
+ )
+ .where(
+ and(
+ eq(generations.gameId, gameId),
+ eq(generations.userId, userId),
+ eq(questionsToGames.round, round)
+ )
+ );
+
+ return generationsForUserForRound;
+}
+
+export async function setGenerationAsSubmitted({
+ generationId,
+}: {
+ generationId: number;
+}) {
+ const updatedGenerations = await db
+ .update(generations)
+ .set({ selected: true })
+ .where(eq(generations.id, generationId))
+ .returning();
+
+ return updatedGenerations[0];
+}
diff --git a/server/src/services/question.service.ts b/server/src/services/question.service.ts
index a9af2365..167f8819 100644
--- a/server/src/services/question.service.ts
+++ b/server/src/services/question.service.ts
@@ -38,11 +38,11 @@ export async function generateAIQuestions(questionAmount: number) {
const originalPrompt = `Generate a list of ${questionAmount} funny prompts for a game that's all one string with each prompt separated by a comma. For the game, players will respond to the prompt with AI generated images. Two players will respond to the prompt while the rest of the players vote on their favorite response/image. The targeted audience is between 15 and 30. The prompts should relate to pop culture, historical events, brands, and dark humor. The players already know the rules, so do not specify that they have to generate an image. Some example prompts include: The uninvited wedding guest, The new challenger in Super Smash Bros, The newly discovered animal in Australia, The new British Museum exhibit, The creature hidden in IKEA, A unique vacation spot, A cancelled children's toy, The new Olympic sport`;
try {
- const response = await openai.createChatCompletion({
+ const response = await openai.chat.completions.create({
model: "gpt-3.5-turbo",
messages: [{ role: "user", content: originalPrompt }],
});
- return response.data.choices[0].message?.content?.split(", ") ?? [];
+ return response.choices[0].message?.content?.split(", ") ?? [];
} catch (error) {
if (error instanceof Error)
console.error("Error trying to generate questions", error.message);
diff --git a/server/src/tests/generation.test.ts b/server/src/tests/generation.test.ts
index 309776e8..e1efcfa3 100644
--- a/server/src/tests/generation.test.ts
+++ b/server/src/tests/generation.test.ts
@@ -1,12 +1,12 @@
import { describe, expect, test } from "@jest/globals";
-import { filterGameRoundGenerationsByQuestionId } from "../services/generation.service";
+import { filterFaceOffGenerationsByQuestionId } from "../services/generation.service";
import { GameRoundGeneration } from "../types";
describe("filterGameRoundGenerationsByQuestionId", () => {
test("expects the filtered array to not have any generations from other questions", () => {
const testQuestionId = 2;
- const gameRoundGenerations: GameRoundGeneration[] = [
+ const faceOffGenerations: GameRoundGeneration[] = [
{
generation: {
id: 2,
@@ -16,6 +16,7 @@ describe("filterGameRoundGenerationsByQuestionId", () => {
questionId: 2,
gameId: 2,
imageUrl: "LINK TO IMAGE",
+ selected: true,
},
question: {
id: 2,
@@ -41,6 +42,7 @@ describe("filterGameRoundGenerationsByQuestionId", () => {
questionId: 2,
gameId: 2,
imageUrl: "LINK TO IMAGE",
+ selected: true,
},
question: {
id: 2,
@@ -66,6 +68,7 @@ describe("filterGameRoundGenerationsByQuestionId", () => {
questionId: 2,
gameId: 2,
imageUrl: "LINK TO IMAGE",
+ selected: true,
},
question: {
id: 3,
@@ -91,6 +94,7 @@ describe("filterGameRoundGenerationsByQuestionId", () => {
questionId: 2,
gameId: 2,
imageUrl: "LINK TO IMAGE",
+ selected: true,
},
question: {
id: 3,
@@ -109,9 +113,9 @@ describe("filterGameRoundGenerationsByQuestionId", () => {
},
];
- const filteredGenerations = filterGameRoundGenerationsByQuestionId({
+ const filteredGenerations = filterFaceOffGenerationsByQuestionId({
questionId: testQuestionId,
- gameRoundGenerations,
+ faceOffGenerations,
});
expect(filteredGenerations.length).toBe(2);
diff --git a/server/src/tests/vote.test.ts b/server/src/tests/vote.test.ts
index 03c9ae49..05a37165 100644
--- a/server/src/tests/vote.test.ts
+++ b/server/src/tests/vote.test.ts
@@ -43,6 +43,7 @@ describe("createVoteMap", () => {
questionId: 2,
gameId: 2,
imageUrl: "LINK TO IMAGE",
+ selected: true,
},
{
id: 2,
@@ -52,6 +53,7 @@ describe("createVoteMap", () => {
questionId: 2,
gameId: 2,
imageUrl: "LINK TO IMAGE",
+ selected: true,
},
];
diff --git a/server/src/types.ts b/server/src/types.ts
index a23f7c2b..38de0ed9 100644
--- a/server/src/types.ts
+++ b/server/src/types.ts
@@ -34,12 +34,9 @@ export interface ClientToServerEvents {
}) => void;
testEvent: (code: string) => void;
generationSubmitted: (data: {
+ generationId: number;
gameId: number;
round: number;
- userId: number;
- questionId: number;
- text: string;
- imageUrl: string;
}) => void;
voteSubmitted: (data: {
userId: number;