From f0f6b14f5844e8a338aa183338f66afa23b088ba Mon Sep 17 00:00:00 2001 From: Kalle <38327916+Sendouc@users.noreply.github.com> Date: Sun, 22 Jan 2023 13:39:57 +0200 Subject: [PATCH] Upgrade deps --- app/components/AbilitiesSelector.tsx | 12 +- app/components/Alert.tsx | 2 +- app/components/Combobox.tsx | 6 +- app/components/DetailsSummary.tsx | 2 +- app/components/FormMessage.tsx | 2 +- app/components/Main.tsx | 2 +- app/components/RelativeTime.tsx | 2 +- app/components/SubNav.tsx | 2 +- app/components/Tabs.tsx | 2 +- app/components/layout/LanguageChanger.tsx | 2 +- app/db/types.ts | 2 +- app/features/build-analyzer/analyzer-types.ts | 8 +- .../build-analyzer/core/specialEffects.ts | 4 +- app/features/img-upload/upload-types.ts | 2 +- .../calculator-hooks.ts | 5 +- .../calculator-types.ts | 2 +- app/modules/i18n/config.ts | 2 +- app/modules/in-game-lists/types.ts | 16 +- app/root.tsx | 6 +- app/routes/contributions.tsx | 2 +- app/routes/u.$identifier/builds/new.tsx | 10 +- app/routes/u.$identifier/edit.tsx | 2 +- app/utils/remix.ts | 2 +- app/utils/urls.ts | 4 +- package-lock.json | 562 +++++++++++------- package.json | 26 +- scripts/create-analyzer-json.ts | 6 +- scripts/create-misc-json.ts | 2 +- 28 files changed, 402 insertions(+), 295 deletions(-) diff --git a/app/components/AbilitiesSelector.tsx b/app/components/AbilitiesSelector.tsx index 6920bb770..499978883 100644 --- a/app/components/AbilitiesSelector.tsx +++ b/app/components/AbilitiesSelector.tsx @@ -38,16 +38,16 @@ export function AbilitiesSelector({ onChange(abilitiesClone); }; - const onButtonClick = (ability: typeof abilities[number]) => { + const onButtonClick = (ability: (typeof abilities)[number]) => { onChange(addAbility({ oldAbilities: selectedAbilities, ability })); }; const [draggingAbility, setDraggingAbility] = React.useState< - typeof abilities[number] | undefined + (typeof abilities)[number] | undefined >(); const onDragStart = - (ability: typeof abilities[number]) => (event: React.DragEvent) => { + (ability: (typeof abilities)[number]) => (event: React.DragEvent) => { setDraggingAbility(ability); event.dataTransfer.setData("text/plain", JSON.stringify(ability)); }; @@ -62,7 +62,7 @@ export function AbilitiesSelector({ event.preventDefault(); const ability = JSON.parse( event.dataTransfer.getData("text/plain") - ) as typeof abilities[number]; + ) as (typeof abilities)[number]; onChange( addAbility({ @@ -125,7 +125,7 @@ export function AbilitiesSelector({ const canPlaceAbilityAtSlot = ( rowIndex: number, abilityIndex: number, - ability?: typeof abilities[number] + ability?: (typeof abilities)[number] ) => { if (!ability) { return false; @@ -162,7 +162,7 @@ function addAbility({ atAbilityIndex, }: { oldAbilities: BuildAbilitiesTupleWithUnknown; - ability: typeof abilities[number]; + ability: (typeof abilities)[number]; atRowIndex?: number; atAbilityIndex?: number; }): BuildAbilitiesTupleWithUnknown { diff --git a/app/components/Alert.tsx b/app/components/Alert.tsx index 3a2d6bbeb..018ad8b4f 100644 --- a/app/components/Alert.tsx +++ b/app/components/Alert.tsx @@ -1,5 +1,5 @@ import clsx from "clsx"; -import type * as React from "react"; +import * as React from "react"; import { AlertIcon } from "./icons/Alert"; import { ErrorIcon } from "./icons/Error"; import { CheckmarkIcon } from "./icons/Checkmark"; diff --git a/app/components/Combobox.tsx b/app/components/Combobox.tsx index 0bcdcf062..e292d0ed3 100644 --- a/app/components/Combobox.tsx +++ b/app/components/Combobox.tsx @@ -251,12 +251,12 @@ export function WeaponCombobox({ | "clearsInputOnFocus" | "fullWidth" > & { - initialWeaponId?: typeof mainWeaponIds[number]; + initialWeaponId?: (typeof mainWeaponIds)[number]; weaponIdsToOmit?: Set; }) { const { t } = useTranslation("weapons"); - const idToWeapon = (id: typeof mainWeaponIds[number]) => ({ + const idToWeapon = (id: (typeof mainWeaponIds)[number]) => ({ value: String(id), label: t(`MAIN_${id}`), imgPath: mainWeaponImageUrl(id), @@ -305,7 +305,7 @@ export function GearCombobox({ ? clothesGearIds : shoesGearIds; - const idToGear = (id: typeof ids[number]) => ({ + const idToGear = (id: (typeof ids)[number]) => ({ value: String(id), label: t(`${translationPrefix}_${id}` as any), imgPath: gearImageUrl(gearType, id), diff --git a/app/components/DetailsSummary.tsx b/app/components/DetailsSummary.tsx index a16dd9c4c..7a8e36bd6 100644 --- a/app/components/DetailsSummary.tsx +++ b/app/components/DetailsSummary.tsx @@ -1,5 +1,5 @@ import clsx from "clsx"; -import type * as React from "react"; +import * as React from "react"; export function Details({ children, diff --git a/app/components/FormMessage.tsx b/app/components/FormMessage.tsx index 2c1d5ceb2..503d046bd 100644 --- a/app/components/FormMessage.tsx +++ b/app/components/FormMessage.tsx @@ -1,5 +1,5 @@ import clsx from "clsx"; -import type * as React from "react"; +import * as React from "react"; export function FormMessage({ children, diff --git a/app/components/Main.tsx b/app/components/Main.tsx index cfd6fa06d..e48303e79 100644 --- a/app/components/Main.tsx +++ b/app/components/Main.tsx @@ -1,5 +1,5 @@ import clsx from "clsx"; -import type * as React from "react"; +import * as React from "react"; export const Main = ({ children, diff --git a/app/components/RelativeTime.tsx b/app/components/RelativeTime.tsx index d8cd4d45e..b2f6fce0b 100644 --- a/app/components/RelativeTime.tsx +++ b/app/components/RelativeTime.tsx @@ -1,4 +1,4 @@ -import type * as React from "react"; +import * as React from "react"; import { useIsMounted } from "~/hooks/useIsMounted"; export function RelativeTime({ diff --git a/app/components/SubNav.tsx b/app/components/SubNav.tsx index 398750c64..f00a35db5 100644 --- a/app/components/SubNav.tsx +++ b/app/components/SubNav.tsx @@ -1,7 +1,7 @@ import { NavLink } from "@remix-run/react"; import type { LinkProps } from "@remix-run/react"; import clsx from "clsx"; -import type * as React from "react"; +import * as React from "react"; export function SubNav({ children }: { children: React.ReactNode }) { return ( diff --git a/app/components/Tabs.tsx b/app/components/Tabs.tsx index dd20d168f..92c142372 100644 --- a/app/components/Tabs.tsx +++ b/app/components/Tabs.tsx @@ -1,5 +1,5 @@ import clsx from "clsx"; -import type * as React from "react"; +import * as React from "react"; // shares styles with SubNav.tsx diff --git a/app/components/layout/LanguageChanger.tsx b/app/components/layout/LanguageChanger.tsx index 4d6a5e95c..dee02e5a0 100644 --- a/app/components/layout/LanguageChanger.tsx +++ b/app/components/layout/LanguageChanger.tsx @@ -1,5 +1,5 @@ import { useSearchParams } from "@remix-run/react"; -import type * as React from "react"; +import * as React from "react"; import { useTranslation } from "~/hooks/useTranslation"; import { languages } from "~/modules/i18n"; import { LinkButton } from "../Button"; diff --git a/app/db/types.ts b/app/db/types.ts index d464208ed..7e7833473 100644 --- a/app/db/types.ts +++ b/app/db/types.ts @@ -257,7 +257,7 @@ export interface Team { deletedAt: number | null; } -export type MemberRole = typeof TEAM_MEMBER_ROLES[number]; +export type MemberRole = (typeof TEAM_MEMBER_ROLES)[number]; export interface TeamMember { teamId: number; diff --git a/app/features/build-analyzer/analyzer-types.ts b/app/features/build-analyzer/analyzer-types.ts index 528e1531e..c142d8ab2 100644 --- a/app/features/build-analyzer/analyzer-types.ts +++ b/app/features/build-analyzer/analyzer-types.ts @@ -117,7 +117,7 @@ export interface SubWeaponParams { DirectDamage?: number; } -type SpecialWeaponParamsObject = typeof weaponParams["specialWeapons"]; +type SpecialWeaponParamsObject = (typeof weaponParams)["specialWeapons"]; export type SpecialWeaponParams = SpecialWeaponParamsObject[SpecialWeaponId] & { overwrites?: Overwrites; }; @@ -148,7 +148,7 @@ export interface StatFunctionInput { hasTacticooler: boolean; } -export type InkConsumeType = typeof INK_CONSUME_TYPES[number]; +export type InkConsumeType = (typeof INK_CONSUME_TYPES)[number]; export const INK_CONSUME_TYPES = [ "NORMAL", @@ -169,7 +169,7 @@ export interface FullInkTankOption { type: InkConsumeType; } -export type DamageType = typeof DAMAGE_TYPE[number]; +export type DamageType = (typeof DAMAGE_TYPE)[number]; export interface Damage { value: number; @@ -253,6 +253,6 @@ export interface AnalyzedBuild { }; } -export type SpecialEffectType = typeof SPECIAL_EFFECTS[number]["type"]; +export type SpecialEffectType = (typeof SPECIAL_EFFECTS)[number]["type"]; export type AbilityValuesKeys = keyof typeof abilityValues; diff --git a/app/features/build-analyzer/core/specialEffects.ts b/app/features/build-analyzer/core/specialEffects.ts index 71aa2d0e2..d49182cfc 100644 --- a/app/features/build-analyzer/core/specialEffects.ts +++ b/app/features/build-analyzer/core/specialEffects.ts @@ -135,7 +135,7 @@ export function applySpecialEffects({ ldeIntensity, }: { abilityPoints: AbilityPoints; - effects: Array; + effects: Array<(typeof SPECIAL_EFFECTS)[number]["type"]>; ldeIntensity: number; }): AbilityPoints { const result: AbilityPoints = new Map(abilityPoints); @@ -164,7 +164,7 @@ function effectObjToValuesArr({ effectObj, ldeIntensity, }: { - effectObj: typeof SPECIAL_EFFECTS[number]; + effectObj: (typeof SPECIAL_EFFECTS)[number]; ldeIntensity: number; }) { if (typeof effectObj.values === "function") { diff --git a/app/features/img-upload/upload-types.ts b/app/features/img-upload/upload-types.ts index 8309b2c9d..84b98c194 100644 --- a/app/features/img-upload/upload-types.ts +++ b/app/features/img-upload/upload-types.ts @@ -1,3 +1,3 @@ import type { IMAGE_TYPES } from "./upload-constants"; -export type ImageUploadType = typeof IMAGE_TYPES[number]; +export type ImageUploadType = (typeof IMAGE_TYPES)[number]; diff --git a/app/features/object-damage-calculator/calculator-hooks.ts b/app/features/object-damage-calculator/calculator-hooks.ts index 941904e0b..51ed78255 100644 --- a/app/features/object-damage-calculator/calculator-hooks.ts +++ b/app/features/object-damage-calculator/calculator-hooks.ts @@ -111,7 +111,10 @@ export const damageTypePriorityList = [ "SPLATANA_HORIZONTAL_DIRECT", "SPLATANA_HORIZONTAL", ] as const; -assertType(); +assertType< + (typeof damageTypePriorityList)[number], + (typeof DAMAGE_TYPE)[number] +>(); function validatedDamageTypeFromSearchParams({ searchParams, diff --git a/app/features/object-damage-calculator/calculator-types.ts b/app/features/object-damage-calculator/calculator-types.ts index 2bc840f7e..3ec594a55 100644 --- a/app/features/object-damage-calculator/calculator-types.ts +++ b/app/features/object-damage-calculator/calculator-types.ts @@ -1,5 +1,5 @@ import type { DAMAGE_RECEIVERS } from "./calculator-constants"; -export type DamageReceiver = typeof DAMAGE_RECEIVERS[number]; +export type DamageReceiver = (typeof DAMAGE_RECEIVERS)[number]; export type HitPoints = Record; diff --git a/app/modules/i18n/config.ts b/app/modules/i18n/config.ts index b01e33ca1..febc7760d 100644 --- a/app/modules/i18n/config.ts +++ b/app/modules/i18n/config.ts @@ -51,7 +51,7 @@ export const languages = [ }, ] as const; -export type LanguageCode = typeof languages[number]["code"]; +export type LanguageCode = (typeof languages)[number]["code"]; export const config = { supportedLngs: languages.map((lang) => lang.code), diff --git a/app/modules/in-game-lists/types.ts b/app/modules/in-game-lists/types.ts index 894218432..0f2dcdd80 100644 --- a/app/modules/in-game-lists/types.ts +++ b/app/modules/in-game-lists/types.ts @@ -7,20 +7,20 @@ import type { specialWeaponIds, } from "./weapon-ids"; -export type ModeShort = typeof modes[number]["short"]; +export type ModeShort = (typeof modes)[number]["short"]; export type RankedModeShort = "SZ" | "TC" | "RM" | "CB"; -export type StageId = typeof stageIds[number]; +export type StageId = (typeof stageIds)[number]; export type ModeWithStage = { mode: ModeShort; stageId: StageId }; -export type Ability = typeof abilities[number]["name"]; -export type AbilityWithUnknown = typeof abilities[number]["name"] | "UNKNOWN"; -export type AbilityType = typeof abilities[number]["type"]; +export type Ability = (typeof abilities)[number]["name"]; +export type AbilityWithUnknown = (typeof abilities)[number]["name"] | "UNKNOWN"; +export type AbilityType = (typeof abilities)[number]["type"]; -export type MainWeaponId = typeof mainWeaponIds[number]; -export type SubWeaponId = typeof subWeaponIds[number]; -export type SpecialWeaponId = typeof specialWeaponIds[number]; +export type MainWeaponId = (typeof mainWeaponIds)[number]; +export type SubWeaponId = (typeof subWeaponIds)[number]; +export type SpecialWeaponId = (typeof specialWeaponIds)[number]; export type BuildAbilitiesTuple = [ head: [main: Ability, s1: Ability, s2: Ability, s3: Ability], diff --git a/app/root.tsx b/app/root.tsx index 4b2bcbcea..86e224508 100644 --- a/app/root.tsx +++ b/app/root.tsx @@ -241,11 +241,7 @@ function Fonts() { return ( <> - + ; - language: typeof languages[number]["code"]; + language: (typeof languages)[number]["code"]; }> = [ { translators: ["Frederik"], diff --git a/app/routes/u.$identifier/builds/new.tsx b/app/routes/u.$identifier/builds/new.tsx index 68f8d37ad..aec5ac2b2 100644 --- a/app/routes/u.$identifier/builds/new.tsx +++ b/app/routes/u.$identifier/builds/new.tsx @@ -71,7 +71,7 @@ const newBuildActionSchema = z.object({ z .number() .refine((val) => - mainWeaponIds.includes(val as typeof mainWeaponIds[number]) + mainWeaponIds.includes(val as (typeof mainWeaponIds)[number]) ) ) ) @@ -82,14 +82,16 @@ const newBuildActionSchema = z.object({ actualNumber, z .number() - .refine((val) => headGearIds.includes(val as typeof headGearIds[number])) + .refine((val) => + headGearIds.includes(val as (typeof headGearIds)[number]) + ) ), "CLOTHES[value]": z.preprocess( actualNumber, z .number() .refine((val) => - clothesGearIds.includes(val as typeof clothesGearIds[number]) + clothesGearIds.includes(val as (typeof clothesGearIds)[number]) ) ), "SHOES[value]": z.preprocess( @@ -97,7 +99,7 @@ const newBuildActionSchema = z.object({ z .number() .refine((val) => - shoesGearIds.includes(val as typeof shoesGearIds[number]) + shoesGearIds.includes(val as (typeof shoesGearIds)[number]) ) ), abilities: z.preprocess( diff --git a/app/routes/u.$identifier/edit.tsx b/app/routes/u.$identifier/edit.tsx index de75ffda9..63c9f810e 100644 --- a/app/routes/u.$identifier/edit.tsx +++ b/app/routes/u.$identifier/edit.tsx @@ -112,7 +112,7 @@ const userEditActionSchema = z z .number() .refine((val) => - mainWeaponIds.includes(val as typeof mainWeaponIds[number]) + mainWeaponIds.includes(val as (typeof mainWeaponIds)[number]) ) ) .max(USER.WEAPON_POOL_MAX_SIZE) diff --git a/app/utils/remix.ts b/app/utils/remix.ts index 85498b791..8b5ab58b1 100644 --- a/app/utils/remix.ts +++ b/app/utils/remix.ts @@ -118,5 +118,5 @@ export type SendouRouteHandle = { }) => Breadcrumb | Array | undefined; /** The name of a navItem that is active on this route. See nav-items.json */ - navItemName?: typeof navItems[number]["name"]; + navItemName?: (typeof navItems)[number]["name"]; }; diff --git a/app/utils/urls.ts b/app/utils/urls.ts index 1b734383f..718bf1947 100644 --- a/app/utils/urls.ts +++ b/app/utils/urls.ts @@ -179,12 +179,12 @@ export const badgeUrl = ({ export const articlePreviewUrl = (slug: string) => `/static-assets/img/article-previews/${slug}.png`; -export const navIconUrl = (navItem: typeof navItems[number]["name"]) => +export const navIconUrl = (navItem: (typeof navItems)[number]["name"]) => `/static-assets/img/layout/${navItem}`; export const gearImageUrl = (gearType: GearType, gearSplId: number) => `/static-assets/img/gear/${gearType.toLowerCase()}/${gearSplId}`; export const weaponCategoryUrl = ( - category: typeof weaponCategories[number]["name"] + category: (typeof weaponCategories)[number]["name"] ) => `/static-assets/img/weapon-categories/${category}`; export const mainWeaponImageUrl = (mainWeaponSplId: MainWeaponId) => `/static-assets/img/main-weapons/${mainWeaponSplId}`; diff --git a/package-lock.json b/package-lock.json index 0f2141d7d..5a3fd0f21 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,8 +12,8 @@ "@remix-run/node": "^1.9.0", "@remix-run/react": "^1.9.0", "@remix-run/serve": "^1.9.0", - "@tldraw/tldraw": "^1.26.3", - "aws-sdk": "^2.1290.0", + "@tldraw/tldraw": "^1.27.0", + "aws-sdk": "^2.1299.0", "better-sqlite3": "^8.0.1", "clsx": "^1.2.1", "compressorjs": "^1.1.1", @@ -43,36 +43,36 @@ "remix-auth-oauth2": "^1.5.0", "remix-i18next": "^4.1.1", "slugify": "^1.6.5", - "swr": "^2.0.0", + "swr": "^2.0.1", "tiny-invariant": "^1.3.1", "zod": "^3.20.2" }, "devDependencies": { - "@playwright/test": "^1.29.1", + "@playwright/test": "^1.29.2", "@remix-run/dev": "^1.9.0", "@remix-run/eslint-config": "^1.9.0", "@types/better-sqlite3": "^7.6.3", "@types/i18next-fs-backend": "^1.1.2", "@types/node-cron": "^3.0.7", "@types/prettier": "^2.7.2", - "@types/react": "^18.0.26", + "@types/react": "^18.0.27", "@types/react-dom": "^18.0.10", - "@typescript-eslint/eslint-plugin": "^5.47.1", - "@typescript-eslint/parser": "^5.47.1", + "@typescript-eslint/eslint-plugin": "^5.48.2", + "@typescript-eslint/parser": "^5.48.2", "cross-env": "^7.0.3", "dotenv": "^16.0.3", - "eslint": "^8.30.0", - "eslint-plugin-react": "^7.31.11", + "eslint": "^8.32.0", + "eslint-plugin-react": "^7.32.1", "eslint-plugin-react-hooks": "^4.6.0", "ley": "^0.8.1", - "prettier": "2.8.1", - "stylelint": "^14.16.0", + "prettier": "2.8.3", + "stylelint": "^14.16.1", "stylelint-config-idiomatic-order": "^9.0.0", "stylelint-config-prettier": "^9.0.4", "stylelint-config-standard": "^29.0.0", - "stylelint-order": "^5.0.0", + "stylelint-order": "^6.0.1", "ts-node": "^10.9.1", - "tsconfig-paths": "^4.1.1", + "tsconfig-paths": "^4.1.2", "tsm": "^2.3.0", "typescript": "^4.9.4", "uvu": "^0.5.6" @@ -2481,9 +2481,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", - "integrity": "sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -2576,6 +2576,31 @@ "react-dom": ">=16.8.0" } }, + "node_modules/@fontsource/caveat-brush": { + "version": "4.5.9", + "resolved": "https://registry.npmjs.org/@fontsource/caveat-brush/-/caveat-brush-4.5.9.tgz", + "integrity": "sha512-H4uDBRSmTYX0Pman53VO8IP8JVnGd2wD4YyXHY0KTQX6jE0rs+UHuzraKGF8WTqBO7854VRCq09sPDhvLvqicQ==" + }, + "node_modules/@fontsource/crimson-pro": { + "version": "4.5.11", + "resolved": "https://registry.npmjs.org/@fontsource/crimson-pro/-/crimson-pro-4.5.11.tgz", + "integrity": "sha512-AQcsh0g6Tmh708JJYDmxV8itXu+k6ZFokETxJAxJVg0rj9Dz3p9QZWUqqWNfrjChJDL86yBDKyV3sB2BjW1XFg==" + }, + "node_modules/@fontsource/recursive": { + "version": "4.5.13", + "resolved": "https://registry.npmjs.org/@fontsource/recursive/-/recursive-4.5.13.tgz", + "integrity": "sha512-d40oYxlkac4rrDo/4GkdvkUopyc7WzAlX0vAuUzKVqh7X1qZlSteckvQWdPnjEFMG599JiwKXJK7qXLvgvwdYg==" + }, + "node_modules/@fontsource/source-code-pro": { + "version": "4.5.14", + "resolved": "https://registry.npmjs.org/@fontsource/source-code-pro/-/source-code-pro-4.5.14.tgz", + "integrity": "sha512-EWE0djE7wFCBmExWa9oT1vIp+qj5MUroVvXWb9G7Ig4t4aXDd9QDidYZzMzNemb8gQxTdOzGmhx6EZnDTFMh5Q==" + }, + "node_modules/@fontsource/source-sans-pro": { + "version": "4.5.11", + "resolved": "https://registry.npmjs.org/@fontsource/source-sans-pro/-/source-sans-pro-4.5.11.tgz", + "integrity": "sha512-f7iw44q1EjBv3MNcHCGAgrW/QVyweaEouFsJzykPhTOGnZFSwFJRISToXornOmuAy7xUUGiVdqOLiykgZoYB8A==" + }, "node_modules/@formatjs/ecma402-abstract": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.13.0.tgz", @@ -2886,13 +2911,13 @@ } }, "node_modules/@playwright/test": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.29.1.tgz", - "integrity": "sha512-iQxk2DX5U9wOGV3+/Jh9OHPsw5H3mleUL2S4BgQuwtlAfK3PnKvn38m4Rg9zIViGHVW24opSm99HQm/UFLEy6w==", + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.29.2.tgz", + "integrity": "sha512-+3/GPwOgcoF0xLz/opTnahel1/y42PdcgZ4hs+BZGIUjtmEFSXGg+nFoaH3NSmuc7a6GSFwXDJ5L7VXpqzigNg==", "dev": true, "dependencies": { "@types/node": "*", - "playwright-core": "1.29.1" + "playwright-core": "1.29.2" }, "bin": { "playwright": "cli.js" @@ -4163,9 +4188,9 @@ } }, "node_modules/@tldraw/core": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/@tldraw/core/-/core-1.20.2.tgz", - "integrity": "sha512-/2iwKm2cNofOleI2xVdgnRtKnZjxKpsIRga+DXlxR/4fa0gNYF//HP+kGD6clE7g5j9JsfiR+S3DV5wClGZPog==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@tldraw/core/-/core-1.21.0.tgz", + "integrity": "sha512-3hvYLR/XwpMI9GvHIHGfYNmkiaKlokx8vekx0Eq/o/NAkqGkGwnZcTG5shbetWzwQTTi5F4vWInJqA/BfX+OCA==", "dependencies": { "@tldraw/intersect": "^1.8.0", "@tldraw/vec": "^1.8.0", @@ -4186,10 +4211,15 @@ } }, "node_modules/@tldraw/tldraw": { - "version": "1.26.3", - "resolved": "https://registry.npmjs.org/@tldraw/tldraw/-/tldraw-1.26.3.tgz", - "integrity": "sha512-u8FfU3Q84y9E0PFLtw857bkmtlos4+/SSta9IrKQugrqVLBWzyixa2Wfk4e8h+Fr3CLCPa7uaBnlvT3Awr6dDQ==", + "version": "1.27.0", + "resolved": "https://registry.npmjs.org/@tldraw/tldraw/-/tldraw-1.27.0.tgz", + "integrity": "sha512-ukN1EzLJxDutoo3ZOPZEfEgKUOt+St5yO8P/HSpJF+/QWDEzVrEttZGXOpny02R30tb96rdjtNQEex8TzUjzIQ==", "dependencies": { + "@fontsource/caveat-brush": "^4.5.9", + "@fontsource/crimson-pro": "^4.5.10", + "@fontsource/recursive": "^4.5.11", + "@fontsource/source-code-pro": "^4.5.12", + "@fontsource/source-sans-pro": "^4.5.11", "@radix-ui/react-alert-dialog": "^1.0.0", "@radix-ui/react-context-menu": "^1.0.0", "@radix-ui/react-dialog": "^1.0.0", @@ -4198,7 +4228,7 @@ "@radix-ui/react-popover": "^1.0.0", "@radix-ui/react-tooltip": "^1.0.0", "@stitches/react": "^1.2.8", - "@tldraw/core": "^1.20.2", + "@tldraw/core": "^1.21.0", "@tldraw/intersect": "^1.8.0", "@tldraw/vec": "^1.8.0", "browser-fs-access": "^0.31.0", @@ -4462,9 +4492,9 @@ "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" }, "node_modules/@types/react": { - "version": "18.0.26", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz", - "integrity": "sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug==", + "version": "18.0.27", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", + "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -4507,14 +4537,14 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.47.1.tgz", - "integrity": "sha512-r4RZ2Jl9kcQN7K/dcOT+J7NAimbiis4sSM9spvWimsBvDegMhKLA5vri2jG19PmIPbDjPeWzfUPQ2hjEzA4Nmg==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.2.tgz", + "integrity": "sha512-sR0Gja9Ky1teIq4qJOl0nC+Tk64/uYdX+mi+5iB//MH8gwyx8e3SOyhEzeLZEFEEfCaLf8KJq+Bd/6je1t+CAg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.47.1", - "@typescript-eslint/type-utils": "5.47.1", - "@typescript-eslint/utils": "5.47.1", + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/type-utils": "5.48.2", + "@typescript-eslint/utils": "5.48.2", "debug": "^4.3.4", "ignore": "^5.2.0", "natural-compare-lite": "^1.4.0", @@ -4563,14 +4593,14 @@ "dev": true }, "node_modules/@typescript-eslint/parser": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.47.1.tgz", - "integrity": "sha512-9Vb+KIv29r6GPu4EboWOnQM7T+UjpjXvjCPhNORlgm40a9Ia9bvaPJswvtae1gip2QEeVeGh6YquqAzEgoRAlw==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.48.2.tgz", + "integrity": "sha512-38zMsKsG2sIuM5Oi/olurGwYJXzmtdsHhn5mI/pQogP+BjYVkK5iRazCQ8RGS0V+YLk282uWElN70zAAUmaYHw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.47.1", - "@typescript-eslint/types": "5.47.1", - "@typescript-eslint/typescript-estree": "5.47.1", + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/typescript-estree": "5.48.2", "debug": "^4.3.4" }, "engines": { @@ -4613,13 +4643,13 @@ "dev": true }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.47.1.tgz", - "integrity": "sha512-9hsFDsgUwrdOoW1D97Ewog7DYSHaq4WKuNs0LHF9RiCmqB0Z+XRR4Pf7u7u9z/8CciHuJ6yxNws1XznI3ddjEw==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.48.2.tgz", + "integrity": "sha512-zEUFfonQid5KRDKoI3O+uP1GnrFd4tIHlvs+sTJXiWuypUWMuDaottkJuR612wQfOkjYbsaskSIURV9xo4f+Fw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.47.1", - "@typescript-eslint/visitor-keys": "5.47.1" + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/visitor-keys": "5.48.2" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -4630,13 +4660,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.47.1.tgz", - "integrity": "sha512-/UKOeo8ee80A7/GJA427oIrBi/Gd4osk/3auBUg4Rn9EahFpevVV1mUK8hjyQD5lHPqX397x6CwOk5WGh1E/1w==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.48.2.tgz", + "integrity": "sha512-QVWx7J5sPMRiOMJp5dYshPxABRoZV1xbRirqSk8yuIIsu0nvMTZesKErEA3Oix1k+uvsk8Cs8TGJ6kQ0ndAcew==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.47.1", - "@typescript-eslint/utils": "5.47.1", + "@typescript-eslint/typescript-estree": "5.48.2", + "@typescript-eslint/utils": "5.48.2", "debug": "^4.3.4", "tsutils": "^3.21.0" }, @@ -4680,9 +4710,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.47.1.tgz", - "integrity": "sha512-CmALY9YWXEpwuu6377ybJBZdtSAnzXLSQcxLSqSQSbC7VfpMu/HLVdrnVJj7ycI138EHqocW02LPJErE35cE9A==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.48.2.tgz", + "integrity": "sha512-hE7dA77xxu7ByBc6KCzikgfRyBCTst6dZQpwaTy25iMYOnbNljDT4hjhrGEJJ0QoMjrfqrx+j1l1B9/LtKeuqA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -4693,13 +4723,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.47.1.tgz", - "integrity": "sha512-4+ZhFSuISAvRi2xUszEj0xXbNTHceV9GbH9S8oAD2a/F9SW57aJNQVOCxG8GPfSWH/X4eOPdMEU2jYVuWKEpWA==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.2.tgz", + "integrity": "sha512-bibvD3z6ilnoVxUBFEgkO0k0aFvUc4Cttt0dAreEr+nrAHhWzkO83PEVVuieK3DqcgL6VAK5dkzK8XUVja5Zcg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.47.1", - "@typescript-eslint/visitor-keys": "5.47.1", + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/visitor-keys": "5.48.2", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -4763,16 +4793,16 @@ "dev": true }, "node_modules/@typescript-eslint/utils": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.47.1.tgz", - "integrity": "sha512-l90SdwqfmkuIVaREZ2ykEfCezepCLxzWMo5gVfcJsJCaT4jHT+QjgSkYhs5BMQmWqE9k3AtIfk4g211z/sTMVw==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.48.2.tgz", + "integrity": "sha512-2h18c0d7jgkw6tdKTlNaM7wyopbLRBiit8oAxoP89YnuBOzCZ8g8aBCaCqq7h208qUTroL7Whgzam7UY3HVLow==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.9", "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.47.1", - "@typescript-eslint/types": "5.47.1", - "@typescript-eslint/typescript-estree": "5.47.1", + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/typescript-estree": "5.48.2", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0", "semver": "^7.3.7" @@ -4789,12 +4819,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.47.1.tgz", - "integrity": "sha512-rF3pmut2JCCjh6BLRhNKdYjULMb1brvoaiWDlHfLNVgmnZ0sBVJrs3SyaKE1XoDDnJuAx/hDQryHYmPUuNq0ig==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.2.tgz", + "integrity": "sha512-z9njZLSkwmjFWUelGEwEbdf4NwKvfHxvGC0OcGN1Hp/XNDIcJ7D5DpPNPv6x6/mFvc1tQHsaWmpD/a4gOvvCJQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.47.1", + "@typescript-eslint/types": "5.48.2", "eslint-visitor-keys": "^3.3.0" }, "engines": { @@ -4815,16 +4845,16 @@ } }, "node_modules/@use-gesture/core": { - "version": "10.2.22", - "resolved": "https://registry.npmjs.org/@use-gesture/core/-/core-10.2.22.tgz", - "integrity": "sha512-Ek0JZFYfk+hicLmoG094gm3YOuDMBNckHb988e59YOZoAkETT8dQSzT+g3QkSHSiP1m5wFXAGPSgxvOuwvGKHQ==" + "version": "10.2.23", + "resolved": "https://registry.npmjs.org/@use-gesture/core/-/core-10.2.23.tgz", + "integrity": "sha512-Ynap/Uh6RX1Vgn3zNmFTyKapapdf7Av+GzAe6h+RsBZaxMF1z3cK6aohHPJP6T1hLrPyH/yehxa7RBqyESG9RA==" }, "node_modules/@use-gesture/react": { - "version": "10.2.22", - "resolved": "https://registry.npmjs.org/@use-gesture/react/-/react-10.2.22.tgz", - "integrity": "sha512-ECo7ig16SxBE06ENIURO1woKEB6TC8qY3a0rugJjQ2f1o0Tj28xS/eYNyJuqzQB5YT0q5IrF7ZFpbx1p/5ohYA==", + "version": "10.2.23", + "resolved": "https://registry.npmjs.org/@use-gesture/react/-/react-10.2.23.tgz", + "integrity": "sha512-anj9j3Lm4l+/s60Jv1FD2m13r+T+aYstSHUT62hTugojM64LPe9XatfEVHRyWOrGjRU2buQhlm03xN8oxkg/OQ==", "dependencies": { - "@use-gesture/core": "10.2.22" + "@use-gesture/core": "10.2.23" }, "peerDependencies": { "react": ">= 16.8.0" @@ -5279,9 +5309,9 @@ } }, "node_modules/aws-sdk": { - "version": "2.1290.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1290.0.tgz", - "integrity": "sha512-qRrXLgK4FpkdxeagjrHuhtEEvYrvRbddTBg1I7KBuMCIhXHzSS3nEUmdZjdyMuQJEvt0BCJjwVkNh8e/5TauDQ==", + "version": "2.1299.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1299.0.tgz", + "integrity": "sha512-xTh6pmCUEJljkFfTM3sE8UozDxal80uX/5WZl8GcjQ+NbrGeQEdvL6wFWBwEEVbhR0VBVuU37cKPuQlfENbRYA==", "dependencies": { "buffer": "4.9.2", "events": "1.1.1", @@ -7487,12 +7517,12 @@ } }, "node_modules/eslint": { - "version": "8.30.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.30.0.tgz", - "integrity": "sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ==", + "version": "8.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz", + "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.4.0", + "@eslint/eslintrc": "^1.4.1", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -7924,9 +7954,9 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.31.11", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.11.tgz", - "integrity": "sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==", + "version": "7.32.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.32.1.tgz", + "integrity": "sha512-vOjdgyd0ZHBXNsmvU+785xY8Bfe57EFbTYYk8XrROzWpr9QBvpjITvAXt9xqcE6+8cjR/g1+mfumPToxsl1www==", "dev": true, "dependencies": { "array-includes": "^3.1.6", @@ -7941,7 +7971,7 @@ "object.hasown": "^1.1.2", "object.values": "^1.1.6", "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.3", + "resolve": "^2.0.0-next.4", "semver": "^6.3.0", "string.prototype.matchall": "^4.0.8" }, @@ -7974,13 +8004,17 @@ } }, "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz", - "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==", + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", "dev": true, "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -13304,9 +13338,9 @@ } }, "node_modules/playwright-core": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.29.1.tgz", - "integrity": "sha512-20Ai3d+lMkWpI9YZYlxk8gxatfgax5STW8GaMozAHwigLiyiKQrdkt7gaoT9UQR8FIVDg6qVXs9IoZUQrDjIIg==", + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.29.2.tgz", + "integrity": "sha512-94QXm4PMgFoHAhlCuoWyaBYKb92yOcGVHdQLoxQ7Wjlc7Flg4aC/jbFW7xMR52OfXMVkWicue4WXE7QEegbIRA==", "dev": true, "bin": { "playwright": "cli.js" @@ -13325,9 +13359,9 @@ } }, "node_modules/postcss": { - "version": "8.4.19", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", - "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "dev": true, "funding": [ { @@ -13390,12 +13424,12 @@ } }, "node_modules/postcss-sorting": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-7.0.1.tgz", - "integrity": "sha512-iLBFYz6VRYyLJEJsBJ8M3TCqNcckVzz4wFounSc5Oez35ogE/X+aoC5fFu103Ot7NyvjU3/xqIXn93Gp3kJk4g==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-8.0.1.tgz", + "integrity": "sha512-go9Zoxx7KQH+uLrJ9xa5wRErFeXu01ydA6O8m7koPXkmAN7Ts//eRcIqjo0stBR4+Nir2gMYDOWAOx7O5EPUZA==", "dev": true, "peerDependencies": { - "postcss": "^8.3.9" + "postcss": "^8.4.20" } }, "node_modules/postcss-value-parser": { @@ -13449,9 +13483,9 @@ } }, "node_modules/prettier": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", - "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.3.tgz", + "integrity": "sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==", "dev": true, "bin": { "prettier": "bin-prettier.js" @@ -15652,9 +15686,9 @@ } }, "node_modules/stylelint": { - "version": "14.16.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.16.0.tgz", - "integrity": "sha512-X6uTi9DcxjzLV8ZUAjit1vsRtSwcls0nl07c9rqOPzvpA8IvTX/xWEkBRowS0ffevRrqkHa/ThDEu86u73FQDg==", + "version": "14.16.1", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.16.1.tgz", + "integrity": "sha512-ErlzR/T3hhbV+a925/gbfc3f3Fep9/bnspMiJPorfGEmcBbXdS+oo6LrVtoUZ/w9fqD6o6k7PtUlCOsCRdjX/A==", "dev": true, "dependencies": { "@csstools/selector-specificity": "^2.0.2", @@ -15722,6 +15756,28 @@ "stylelint": ">=11" } }, + "node_modules/stylelint-config-idiomatic-order/node_modules/postcss-sorting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-7.0.1.tgz", + "integrity": "sha512-iLBFYz6VRYyLJEJsBJ8M3TCqNcckVzz4wFounSc5Oez35ogE/X+aoC5fFu103Ot7NyvjU3/xqIXn93Gp3kJk4g==", + "dev": true, + "peerDependencies": { + "postcss": "^8.3.9" + } + }, + "node_modules/stylelint-config-idiomatic-order/node_modules/stylelint-order": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-5.0.0.tgz", + "integrity": "sha512-OWQ7pmicXufDw5BlRqzdz3fkGKJPgLyDwD1rFY3AIEfIH/LQY38Vu/85v8/up0I+VPiuGRwbc2Hg3zLAsJaiyw==", + "dev": true, + "dependencies": { + "postcss": "^8.3.11", + "postcss-sorting": "^7.0.1" + }, + "peerDependencies": { + "stylelint": "^14.0.0" + } + }, "node_modules/stylelint-config-prettier": { "version": "9.0.4", "resolved": "https://registry.npmjs.org/stylelint-config-prettier/-/stylelint-config-prettier-9.0.4.tgz", @@ -15760,13 +15816,13 @@ } }, "node_modules/stylelint-order": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-5.0.0.tgz", - "integrity": "sha512-OWQ7pmicXufDw5BlRqzdz3fkGKJPgLyDwD1rFY3AIEfIH/LQY38Vu/85v8/up0I+VPiuGRwbc2Hg3zLAsJaiyw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-6.0.1.tgz", + "integrity": "sha512-C9gJDZArRBZvn+4MPgggwYTp7dK49WPnYa5+6tBEkZnW/YWj4xBVNJdQjIik14w5orlF9RqFpYDHN0FPWIFOSQ==", "dev": true, "dependencies": { - "postcss": "^8.3.11", - "postcss-sorting": "^7.0.1" + "postcss": "^8.4.20", + "postcss-sorting": "^8.0.1" }, "peerDependencies": { "stylelint": "^14.0.0" @@ -16012,9 +16068,9 @@ "dev": true }, "node_modules/swr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/swr/-/swr-2.0.0.tgz", - "integrity": "sha512-IhUx5yPkX+Fut3h0SqZycnaNLXLXsb2ECFq0Y29cxnK7d8r7auY2JWNbCW3IX+EqXUg3rwNJFlhrw5Ye/b6k7w==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/swr/-/swr-2.0.1.tgz", + "integrity": "sha512-6z4FpS9dKAay7axedlStsPahEw25nuMlVh4GHkuPpGptbmEEP8v/+kr0GkAE/7ErUs25U2VFOnZQz3AWfkmXdw==", "dependencies": { "use-sync-external-store": "^1.2.0" }, @@ -16409,12 +16465,12 @@ } }, "node_modules/tsconfig-paths": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.1.1.tgz", - "integrity": "sha512-VgPrtLKpRgEAJsMj5Q/I/mXouC6A/7eJ/X4Nuk6o0cRPwBtznYxTCU4FodbexbzH9somBPEXYi0ZkUViUpJ21Q==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.1.2.tgz", + "integrity": "sha512-uhxiMgnXQp1IR622dUXI+9Ehnws7i/y6xvpZB9IbUVOPy0muvdvgXeZOn88UcGPiT98Vp3rJPTa8bFoalZ3Qhw==", "dev": true, "dependencies": { - "json5": "^2.2.1", + "json5": "^2.2.2", "minimist": "^1.2.6", "strip-bom": "^3.0.0" }, @@ -19104,9 +19160,9 @@ "optional": true }, "@eslint/eslintrc": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", - "integrity": "sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -19173,6 +19229,31 @@ "use-isomorphic-layout-effect": "^1.1.1" } }, + "@fontsource/caveat-brush": { + "version": "4.5.9", + "resolved": "https://registry.npmjs.org/@fontsource/caveat-brush/-/caveat-brush-4.5.9.tgz", + "integrity": "sha512-H4uDBRSmTYX0Pman53VO8IP8JVnGd2wD4YyXHY0KTQX6jE0rs+UHuzraKGF8WTqBO7854VRCq09sPDhvLvqicQ==" + }, + "@fontsource/crimson-pro": { + "version": "4.5.11", + "resolved": "https://registry.npmjs.org/@fontsource/crimson-pro/-/crimson-pro-4.5.11.tgz", + "integrity": "sha512-AQcsh0g6Tmh708JJYDmxV8itXu+k6ZFokETxJAxJVg0rj9Dz3p9QZWUqqWNfrjChJDL86yBDKyV3sB2BjW1XFg==" + }, + "@fontsource/recursive": { + "version": "4.5.13", + "resolved": "https://registry.npmjs.org/@fontsource/recursive/-/recursive-4.5.13.tgz", + "integrity": "sha512-d40oYxlkac4rrDo/4GkdvkUopyc7WzAlX0vAuUzKVqh7X1qZlSteckvQWdPnjEFMG599JiwKXJK7qXLvgvwdYg==" + }, + "@fontsource/source-code-pro": { + "version": "4.5.14", + "resolved": "https://registry.npmjs.org/@fontsource/source-code-pro/-/source-code-pro-4.5.14.tgz", + "integrity": "sha512-EWE0djE7wFCBmExWa9oT1vIp+qj5MUroVvXWb9G7Ig4t4aXDd9QDidYZzMzNemb8gQxTdOzGmhx6EZnDTFMh5Q==" + }, + "@fontsource/source-sans-pro": { + "version": "4.5.11", + "resolved": "https://registry.npmjs.org/@fontsource/source-sans-pro/-/source-sans-pro-4.5.11.tgz", + "integrity": "sha512-f7iw44q1EjBv3MNcHCGAgrW/QVyweaEouFsJzykPhTOGnZFSwFJRISToXornOmuAy7xUUGiVdqOLiykgZoYB8A==" + }, "@formatjs/ecma402-abstract": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.13.0.tgz", @@ -19422,13 +19503,13 @@ } }, "@playwright/test": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.29.1.tgz", - "integrity": "sha512-iQxk2DX5U9wOGV3+/Jh9OHPsw5H3mleUL2S4BgQuwtlAfK3PnKvn38m4Rg9zIViGHVW24opSm99HQm/UFLEy6w==", + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.29.2.tgz", + "integrity": "sha512-+3/GPwOgcoF0xLz/opTnahel1/y42PdcgZ4hs+BZGIUjtmEFSXGg+nFoaH3NSmuc7a6GSFwXDJ5L7VXpqzigNg==", "dev": true, "requires": { "@types/node": "*", - "playwright-core": "1.29.1" + "playwright-core": "1.29.2" } }, "@popperjs/core": { @@ -20391,9 +20472,9 @@ } }, "@tldraw/core": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/@tldraw/core/-/core-1.20.2.tgz", - "integrity": "sha512-/2iwKm2cNofOleI2xVdgnRtKnZjxKpsIRga+DXlxR/4fa0gNYF//HP+kGD6clE7g5j9JsfiR+S3DV5wClGZPog==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@tldraw/core/-/core-1.21.0.tgz", + "integrity": "sha512-3hvYLR/XwpMI9GvHIHGfYNmkiaKlokx8vekx0Eq/o/NAkqGkGwnZcTG5shbetWzwQTTi5F4vWInJqA/BfX+OCA==", "requires": { "@tldraw/intersect": "^1.8.0", "@tldraw/vec": "^1.8.0", @@ -20410,10 +20491,15 @@ } }, "@tldraw/tldraw": { - "version": "1.26.3", - "resolved": "https://registry.npmjs.org/@tldraw/tldraw/-/tldraw-1.26.3.tgz", - "integrity": "sha512-u8FfU3Q84y9E0PFLtw857bkmtlos4+/SSta9IrKQugrqVLBWzyixa2Wfk4e8h+Fr3CLCPa7uaBnlvT3Awr6dDQ==", + "version": "1.27.0", + "resolved": "https://registry.npmjs.org/@tldraw/tldraw/-/tldraw-1.27.0.tgz", + "integrity": "sha512-ukN1EzLJxDutoo3ZOPZEfEgKUOt+St5yO8P/HSpJF+/QWDEzVrEttZGXOpny02R30tb96rdjtNQEex8TzUjzIQ==", "requires": { + "@fontsource/caveat-brush": "^4.5.9", + "@fontsource/crimson-pro": "^4.5.10", + "@fontsource/recursive": "^4.5.11", + "@fontsource/source-code-pro": "^4.5.12", + "@fontsource/source-sans-pro": "^4.5.11", "@radix-ui/react-alert-dialog": "^1.0.0", "@radix-ui/react-context-menu": "^1.0.0", "@radix-ui/react-dialog": "^1.0.0", @@ -20422,7 +20508,7 @@ "@radix-ui/react-popover": "^1.0.0", "@radix-ui/react-tooltip": "^1.0.0", "@stitches/react": "^1.2.8", - "@tldraw/core": "^1.20.2", + "@tldraw/core": "^1.21.0", "@tldraw/intersect": "^1.8.0", "@tldraw/vec": "^1.8.0", "browser-fs-access": "^0.31.0", @@ -20679,9 +20765,9 @@ "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" }, "@types/react": { - "version": "18.0.26", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz", - "integrity": "sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug==", + "version": "18.0.27", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", + "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -20724,14 +20810,14 @@ "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.47.1.tgz", - "integrity": "sha512-r4RZ2Jl9kcQN7K/dcOT+J7NAimbiis4sSM9spvWimsBvDegMhKLA5vri2jG19PmIPbDjPeWzfUPQ2hjEzA4Nmg==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.2.tgz", + "integrity": "sha512-sR0Gja9Ky1teIq4qJOl0nC+Tk64/uYdX+mi+5iB//MH8gwyx8e3SOyhEzeLZEFEEfCaLf8KJq+Bd/6je1t+CAg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.47.1", - "@typescript-eslint/type-utils": "5.47.1", - "@typescript-eslint/utils": "5.47.1", + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/type-utils": "5.48.2", + "@typescript-eslint/utils": "5.48.2", "debug": "^4.3.4", "ignore": "^5.2.0", "natural-compare-lite": "^1.4.0", @@ -20758,14 +20844,14 @@ } }, "@typescript-eslint/parser": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.47.1.tgz", - "integrity": "sha512-9Vb+KIv29r6GPu4EboWOnQM7T+UjpjXvjCPhNORlgm40a9Ia9bvaPJswvtae1gip2QEeVeGh6YquqAzEgoRAlw==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.48.2.tgz", + "integrity": "sha512-38zMsKsG2sIuM5Oi/olurGwYJXzmtdsHhn5mI/pQogP+BjYVkK5iRazCQ8RGS0V+YLk282uWElN70zAAUmaYHw==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.47.1", - "@typescript-eslint/types": "5.47.1", - "@typescript-eslint/typescript-estree": "5.47.1", + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/typescript-estree": "5.48.2", "debug": "^4.3.4" }, "dependencies": { @@ -20787,23 +20873,23 @@ } }, "@typescript-eslint/scope-manager": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.47.1.tgz", - "integrity": "sha512-9hsFDsgUwrdOoW1D97Ewog7DYSHaq4WKuNs0LHF9RiCmqB0Z+XRR4Pf7u7u9z/8CciHuJ6yxNws1XznI3ddjEw==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.48.2.tgz", + "integrity": "sha512-zEUFfonQid5KRDKoI3O+uP1GnrFd4tIHlvs+sTJXiWuypUWMuDaottkJuR612wQfOkjYbsaskSIURV9xo4f+Fw==", "dev": true, "requires": { - "@typescript-eslint/types": "5.47.1", - "@typescript-eslint/visitor-keys": "5.47.1" + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/visitor-keys": "5.48.2" } }, "@typescript-eslint/type-utils": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.47.1.tgz", - "integrity": "sha512-/UKOeo8ee80A7/GJA427oIrBi/Gd4osk/3auBUg4Rn9EahFpevVV1mUK8hjyQD5lHPqX397x6CwOk5WGh1E/1w==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.48.2.tgz", + "integrity": "sha512-QVWx7J5sPMRiOMJp5dYshPxABRoZV1xbRirqSk8yuIIsu0nvMTZesKErEA3Oix1k+uvsk8Cs8TGJ6kQ0ndAcew==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "5.47.1", - "@typescript-eslint/utils": "5.47.1", + "@typescript-eslint/typescript-estree": "5.48.2", + "@typescript-eslint/utils": "5.48.2", "debug": "^4.3.4", "tsutils": "^3.21.0" }, @@ -20826,19 +20912,19 @@ } }, "@typescript-eslint/types": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.47.1.tgz", - "integrity": "sha512-CmALY9YWXEpwuu6377ybJBZdtSAnzXLSQcxLSqSQSbC7VfpMu/HLVdrnVJj7ycI138EHqocW02LPJErE35cE9A==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.48.2.tgz", + "integrity": "sha512-hE7dA77xxu7ByBc6KCzikgfRyBCTst6dZQpwaTy25iMYOnbNljDT4hjhrGEJJ0QoMjrfqrx+j1l1B9/LtKeuqA==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.47.1.tgz", - "integrity": "sha512-4+ZhFSuISAvRi2xUszEj0xXbNTHceV9GbH9S8oAD2a/F9SW57aJNQVOCxG8GPfSWH/X4eOPdMEU2jYVuWKEpWA==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.2.tgz", + "integrity": "sha512-bibvD3z6ilnoVxUBFEgkO0k0aFvUc4Cttt0dAreEr+nrAHhWzkO83PEVVuieK3DqcgL6VAK5dkzK8XUVja5Zcg==", "dev": true, "requires": { - "@typescript-eslint/types": "5.47.1", - "@typescript-eslint/visitor-keys": "5.47.1", + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/visitor-keys": "5.48.2", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -20878,28 +20964,28 @@ } }, "@typescript-eslint/utils": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.47.1.tgz", - "integrity": "sha512-l90SdwqfmkuIVaREZ2ykEfCezepCLxzWMo5gVfcJsJCaT4jHT+QjgSkYhs5BMQmWqE9k3AtIfk4g211z/sTMVw==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.48.2.tgz", + "integrity": "sha512-2h18c0d7jgkw6tdKTlNaM7wyopbLRBiit8oAxoP89YnuBOzCZ8g8aBCaCqq7h208qUTroL7Whgzam7UY3HVLow==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.47.1", - "@typescript-eslint/types": "5.47.1", - "@typescript-eslint/typescript-estree": "5.47.1", + "@typescript-eslint/scope-manager": "5.48.2", + "@typescript-eslint/types": "5.48.2", + "@typescript-eslint/typescript-estree": "5.48.2", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0", "semver": "^7.3.7" } }, "@typescript-eslint/visitor-keys": { - "version": "5.47.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.47.1.tgz", - "integrity": "sha512-rF3pmut2JCCjh6BLRhNKdYjULMb1brvoaiWDlHfLNVgmnZ0sBVJrs3SyaKE1XoDDnJuAx/hDQryHYmPUuNq0ig==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.2.tgz", + "integrity": "sha512-z9njZLSkwmjFWUelGEwEbdf4NwKvfHxvGC0OcGN1Hp/XNDIcJ7D5DpPNPv6x6/mFvc1tQHsaWmpD/a4gOvvCJQ==", "dev": true, "requires": { - "@typescript-eslint/types": "5.47.1", + "@typescript-eslint/types": "5.48.2", "eslint-visitor-keys": "^3.3.0" }, "dependencies": { @@ -20912,16 +20998,16 @@ } }, "@use-gesture/core": { - "version": "10.2.22", - "resolved": "https://registry.npmjs.org/@use-gesture/core/-/core-10.2.22.tgz", - "integrity": "sha512-Ek0JZFYfk+hicLmoG094gm3YOuDMBNckHb988e59YOZoAkETT8dQSzT+g3QkSHSiP1m5wFXAGPSgxvOuwvGKHQ==" + "version": "10.2.23", + "resolved": "https://registry.npmjs.org/@use-gesture/core/-/core-10.2.23.tgz", + "integrity": "sha512-Ynap/Uh6RX1Vgn3zNmFTyKapapdf7Av+GzAe6h+RsBZaxMF1z3cK6aohHPJP6T1hLrPyH/yehxa7RBqyESG9RA==" }, "@use-gesture/react": { - "version": "10.2.22", - "resolved": "https://registry.npmjs.org/@use-gesture/react/-/react-10.2.22.tgz", - "integrity": "sha512-ECo7ig16SxBE06ENIURO1woKEB6TC8qY3a0rugJjQ2f1o0Tj28xS/eYNyJuqzQB5YT0q5IrF7ZFpbx1p/5ohYA==", + "version": "10.2.23", + "resolved": "https://registry.npmjs.org/@use-gesture/react/-/react-10.2.23.tgz", + "integrity": "sha512-anj9j3Lm4l+/s60Jv1FD2m13r+T+aYstSHUT62hTugojM64LPe9XatfEVHRyWOrGjRU2buQhlm03xN8oxkg/OQ==", "requires": { - "@use-gesture/core": "10.2.22" + "@use-gesture/core": "10.2.23" } }, "@web3-storage/multipart-parser": { @@ -21246,9 +21332,9 @@ "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" }, "aws-sdk": { - "version": "2.1290.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1290.0.tgz", - "integrity": "sha512-qRrXLgK4FpkdxeagjrHuhtEEvYrvRbddTBg1I7KBuMCIhXHzSS3nEUmdZjdyMuQJEvt0BCJjwVkNh8e/5TauDQ==", + "version": "2.1299.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1299.0.tgz", + "integrity": "sha512-xTh6pmCUEJljkFfTM3sE8UozDxal80uX/5WZl8GcjQ+NbrGeQEdvL6wFWBwEEVbhR0VBVuU37cKPuQlfENbRYA==", "requires": { "buffer": "4.9.2", "events": "1.1.1", @@ -22834,12 +22920,12 @@ } }, "eslint": { - "version": "8.30.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.30.0.tgz", - "integrity": "sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ==", + "version": "8.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz", + "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.4.0", + "@eslint/eslintrc": "^1.4.1", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -23273,9 +23359,9 @@ } }, "eslint-plugin-react": { - "version": "7.31.11", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.11.tgz", - "integrity": "sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==", + "version": "7.32.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.32.1.tgz", + "integrity": "sha512-vOjdgyd0ZHBXNsmvU+785xY8Bfe57EFbTYYk8XrROzWpr9QBvpjITvAXt9xqcE6+8cjR/g1+mfumPToxsl1www==", "dev": true, "requires": { "array-includes": "^3.1.6", @@ -23290,7 +23376,7 @@ "object.hasown": "^1.1.2", "object.values": "^1.1.6", "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.3", + "resolve": "^2.0.0-next.4", "semver": "^6.3.0", "string.prototype.matchall": "^4.0.8" }, @@ -23302,13 +23388,14 @@ "dev": true }, "resolve": { - "version": "2.0.0-next.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz", - "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==", + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", "dev": true, "requires": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" } }, "semver": { @@ -27105,9 +27192,9 @@ } }, "playwright-core": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.29.1.tgz", - "integrity": "sha512-20Ai3d+lMkWpI9YZYlxk8gxatfgax5STW8GaMozAHwigLiyiKQrdkt7gaoT9UQR8FIVDg6qVXs9IoZUQrDjIIg==", + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.29.2.tgz", + "integrity": "sha512-94QXm4PMgFoHAhlCuoWyaBYKb92yOcGVHdQLoxQ7Wjlc7Flg4aC/jbFW7xMR52OfXMVkWicue4WXE7QEegbIRA==", "dev": true }, "posix-character-classes": { @@ -27117,9 +27204,9 @@ "dev": true }, "postcss": { - "version": "8.4.19", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", - "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "dev": true, "requires": { "nanoid": "^3.3.4", @@ -27157,9 +27244,9 @@ } }, "postcss-sorting": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-7.0.1.tgz", - "integrity": "sha512-iLBFYz6VRYyLJEJsBJ8M3TCqNcckVzz4wFounSc5Oez35ogE/X+aoC5fFu103Ot7NyvjU3/xqIXn93Gp3kJk4g==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-8.0.1.tgz", + "integrity": "sha512-go9Zoxx7KQH+uLrJ9xa5wRErFeXu01ydA6O8m7koPXkmAN7Ts//eRcIqjo0stBR4+Nir2gMYDOWAOx7O5EPUZA==", "dev": true, "requires": {} }, @@ -27207,9 +27294,9 @@ "dev": true }, "prettier": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", - "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.3.tgz", + "integrity": "sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==", "dev": true }, "pretty-format": { @@ -28863,9 +28950,9 @@ } }, "stylelint": { - "version": "14.16.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.16.0.tgz", - "integrity": "sha512-X6uTi9DcxjzLV8ZUAjit1vsRtSwcls0nl07c9rqOPzvpA8IvTX/xWEkBRowS0ffevRrqkHa/ThDEu86u73FQDg==", + "version": "14.16.1", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.16.1.tgz", + "integrity": "sha512-ErlzR/T3hhbV+a925/gbfc3f3Fep9/bnspMiJPorfGEmcBbXdS+oo6LrVtoUZ/w9fqD6o6k7PtUlCOsCRdjX/A==", "dev": true, "requires": { "@csstools/selector-specificity": "^2.0.2", @@ -29040,6 +29127,25 @@ "dev": true, "requires": { "stylelint-order": "^5.0.0" + }, + "dependencies": { + "postcss-sorting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-7.0.1.tgz", + "integrity": "sha512-iLBFYz6VRYyLJEJsBJ8M3TCqNcckVzz4wFounSc5Oez35ogE/X+aoC5fFu103Ot7NyvjU3/xqIXn93Gp3kJk4g==", + "dev": true, + "requires": {} + }, + "stylelint-order": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-5.0.0.tgz", + "integrity": "sha512-OWQ7pmicXufDw5BlRqzdz3fkGKJPgLyDwD1rFY3AIEfIH/LQY38Vu/85v8/up0I+VPiuGRwbc2Hg3zLAsJaiyw==", + "dev": true, + "requires": { + "postcss": "^8.3.11", + "postcss-sorting": "^7.0.1" + } + } } }, "stylelint-config-prettier": { @@ -29066,13 +29172,13 @@ } }, "stylelint-order": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-5.0.0.tgz", - "integrity": "sha512-OWQ7pmicXufDw5BlRqzdz3fkGKJPgLyDwD1rFY3AIEfIH/LQY38Vu/85v8/up0I+VPiuGRwbc2Hg3zLAsJaiyw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-6.0.1.tgz", + "integrity": "sha512-C9gJDZArRBZvn+4MPgggwYTp7dK49WPnYa5+6tBEkZnW/YWj4xBVNJdQjIik14w5orlF9RqFpYDHN0FPWIFOSQ==", "dev": true, "requires": { - "postcss": "^8.3.11", - "postcss-sorting": "^7.0.1" + "postcss": "^8.4.20", + "postcss-sorting": "^8.0.1" } }, "stylis": { @@ -29129,9 +29235,9 @@ "dev": true }, "swr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/swr/-/swr-2.0.0.tgz", - "integrity": "sha512-IhUx5yPkX+Fut3h0SqZycnaNLXLXsb2ECFq0Y29cxnK7d8r7auY2JWNbCW3IX+EqXUg3rwNJFlhrw5Ye/b6k7w==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/swr/-/swr-2.0.1.tgz", + "integrity": "sha512-6z4FpS9dKAay7axedlStsPahEw25nuMlVh4GHkuPpGptbmEEP8v/+kr0GkAE/7ErUs25U2VFOnZQz3AWfkmXdw==", "requires": { "use-sync-external-store": "^1.2.0" } @@ -29442,12 +29548,12 @@ } }, "tsconfig-paths": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.1.1.tgz", - "integrity": "sha512-VgPrtLKpRgEAJsMj5Q/I/mXouC6A/7eJ/X4Nuk6o0cRPwBtznYxTCU4FodbexbzH9somBPEXYi0ZkUViUpJ21Q==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.1.2.tgz", + "integrity": "sha512-uhxiMgnXQp1IR622dUXI+9Ehnws7i/y6xvpZB9IbUVOPy0muvdvgXeZOn88UcGPiT98Vp3rJPTa8bFoalZ3Qhw==", "dev": true, "requires": { - "json5": "^2.2.1", + "json5": "^2.2.2", "minimist": "^1.2.6", "strip-bom": "^3.0.0" } diff --git a/package.json b/package.json index 9393e1865..f7c8624a4 100644 --- a/package.json +++ b/package.json @@ -38,8 +38,8 @@ "@remix-run/node": "^1.9.0", "@remix-run/react": "^1.9.0", "@remix-run/serve": "^1.9.0", - "@tldraw/tldraw": "^1.26.3", - "aws-sdk": "^2.1290.0", + "@tldraw/tldraw": "^1.27.0", + "aws-sdk": "^2.1299.0", "better-sqlite3": "^8.0.1", "clsx": "^1.2.1", "compressorjs": "^1.1.1", @@ -69,36 +69,36 @@ "remix-auth-oauth2": "^1.5.0", "remix-i18next": "^4.1.1", "slugify": "^1.6.5", - "swr": "^2.0.0", + "swr": "^2.0.1", "tiny-invariant": "^1.3.1", "zod": "^3.20.2" }, "devDependencies": { - "@playwright/test": "^1.29.1", + "@playwright/test": "^1.29.2", "@remix-run/dev": "^1.9.0", "@remix-run/eslint-config": "^1.9.0", "@types/better-sqlite3": "^7.6.3", "@types/i18next-fs-backend": "^1.1.2", "@types/node-cron": "^3.0.7", "@types/prettier": "^2.7.2", - "@types/react": "^18.0.26", + "@types/react": "^18.0.27", "@types/react-dom": "^18.0.10", - "@typescript-eslint/eslint-plugin": "^5.47.1", - "@typescript-eslint/parser": "^5.47.1", + "@typescript-eslint/eslint-plugin": "^5.48.2", + "@typescript-eslint/parser": "^5.48.2", "cross-env": "^7.0.3", "dotenv": "^16.0.3", - "eslint": "^8.30.0", - "eslint-plugin-react": "^7.31.11", + "eslint": "^8.32.0", + "eslint-plugin-react": "^7.32.1", "eslint-plugin-react-hooks": "^4.6.0", "ley": "^0.8.1", - "prettier": "2.8.1", - "stylelint": "^14.16.0", + "prettier": "2.8.3", + "stylelint": "^14.16.1", "stylelint-config-idiomatic-order": "^9.0.0", "stylelint-config-prettier": "^9.0.4", "stylelint-config-standard": "^29.0.0", - "stylelint-order": "^5.0.0", + "stylelint-order": "^6.0.1", "ts-node": "^10.9.1", - "tsconfig-paths": "^4.1.1", + "tsconfig-paths": "^4.1.2", "tsm": "^2.3.0", "typescript": "^4.9.4", "uvu": "^0.5.6" diff --git a/scripts/create-analyzer-json.ts b/scripts/create-analyzer-json.ts index 1c77651ef..d03e7b241 100644 --- a/scripts/create-analyzer-json.ts +++ b/scripts/create-analyzer-json.ts @@ -28,9 +28,9 @@ import { const CURRENT_SEASON = 2; -type MainWeapon = typeof weapons[number]; -type SubWeapon = typeof subWeapons[number]; -type SpecialWeapon = typeof specialWeapons[number]; +type MainWeapon = (typeof weapons)[number]; +type SubWeapon = (typeof subWeapons)[number]; +type SpecialWeapon = (typeof specialWeapons)[number]; type TranslationArray = Array<{ language: string; key: string; value: string }>; async function main() { diff --git a/scripts/create-misc-json.ts b/scripts/create-misc-json.ts index fb5ca6717..5d6924df0 100644 --- a/scripts/create-misc-json.ts +++ b/scripts/create-misc-json.ts @@ -54,7 +54,7 @@ async function main() { stages.map((_, i) => { const codeName = codeNames[ i - ] as keyof typeof langDict["CommonMsg/VS/VSStageName"]; + ] as keyof (typeof langDict)["CommonMsg/VS/VSStageName"]; invariant(codeName); return [`STAGE_${i}`, langDict["CommonMsg/VS/VSStageName"][codeName]];