diff --git a/.cursor/rules/general-frontend-rules.mdc b/.cursor/rules/general-frontend-rules.mdc new file mode 100644 index 0000000..1ab1df3 --- /dev/null +++ b/.cursor/rules/general-frontend-rules.mdc @@ -0,0 +1,692 @@ +--- +alwaysApply: true +--- + +# Frontend Design Guideline + +This document summarizes key frontend design principles and rules, showcasing +recommended patterns. Follow these guidelines when writing frontend code. + +# Readability + +Improving the clarity and ease of understanding code. + +## Naming Magic Numbers + +**Rule:** Replace magic numbers with named constants for clarity. + +**Reasoning:** + +- Improves clarity by giving semantic meaning to unexplained values. +- Enhances maintainability. + +#### Recommended Pattern: + +```typescript +const ANIMATION_DELAY_MS = 300; + +async function onLikeClick() { + await postLike(url); + await delay(ANIMATION_DELAY_MS); // Clearly indicates waiting for animation + await refetchPostLike(); +} +``` + +## Abstracting Implementation Details + +**Rule:** Abstract complex logic/interactions into dedicated components/HOCs. + +**Reasoning:** + +- Reduces cognitive load by separating concerns. +- Improves readability, testability, and maintainability of components. + +#### Recommended Pattern 1: Auth Guard + +(Login check abstracted to a wrapper/guard component) + +```tsx +// App structure +function App() { + return ( + + {" "} + {/* Wrapper handles auth check */} + + + ); +} + +// AuthGuard component encapsulates the check/redirect logic +function AuthGuard({ children }) { + const status = useCheckLoginStatus(); + useEffect(() => { + if (status === "LOGGED_IN") { + location.href = "/home"; + } + }, [status]); + + // Render children only if not logged in, otherwise render null (or loading) + return status !== "LOGGED_IN" ? children : null; +} + +// LoginStartPage is now simpler, focused only on login UI/logic +function LoginStartPage() { + // ... login related logic ONLY ... + return <>{/* ... login related components ... */}; +} +``` + +#### Recommended Pattern 2: Dedicated Interaction Component + +(Dialog logic abstracted into a dedicated `InviteButton` component) + +```tsx +export function FriendInvitation() { + const { data } = useQuery(/* ... */); + + return ( + <> + {/* Use the dedicated button component */} + + {/* ... other UI ... */} + + ); +} + +// InviteButton handles the confirmation flow internally +function InviteButton({ name }) { + const handleClick = async () => { + const canInvite = await overlay.openAsync(({ isOpen, close }) => ( + + )); + + if (canInvite) { + await sendPush(); + } + }; + + return ; +} +``` + +## Separating Code Paths for Conditional Rendering + +**Rule:** Separate significantly different conditional UI/logic into distinct +components. + +**Reasoning:** + +- Improves readability by avoiding complex conditionals within one component. +- Ensures each specialized component has a clear, single responsibility. + +#### Recommended Pattern: + +(Separate components for each role) + +```tsx +function SubmitButton() { + const isViewer = useRole() === "viewer"; + + // Delegate rendering to specialized components + return isViewer ? : ; +} + +// Component specifically for the 'viewer' role +function ViewerSubmitButton() { + return Submit; +} + +// Component specifically for the 'admin' (or non-viewer) role +function AdminSubmitButton() { + useEffect(() => { + showAnimation(); // Animation logic isolated here + }, []); + + return ; +} +``` + +## Simplifying Complex Ternary Operators + +**Rule:** Replace complex/nested ternaries with `if`/`else` or IIFEs for +readability. + +**Reasoning:** + +- Makes conditional logic easier to follow quickly. +- Improves overall code maintainability. + +#### Recommended Pattern: + +(Using an IIFE with `if` statements) + +```typescript +const status = (() => { + if (ACondition && BCondition) return "BOTH"; + if (ACondition) return "A"; + if (BCondition) return "B"; + return "NONE"; +})(); +``` + +## Reducing Eye Movement (Colocating Simple Logic) + +**Rule:** Colocate simple, localized logic or use inline definitions to reduce +context switching. + +**Reasoning:** + +- Allows top-to-bottom reading and faster comprehension. +- Reduces cognitive load from context switching (eye movement). + +#### Recommended Pattern A: Inline `switch` + +```tsx +function Page() { + const user = useUser(); + + // Logic is directly visible here + switch (user.role) { + case "admin": + return ( +
+ + +
+ ); + case "viewer": + return ( +
+ {/* Example for viewer */} + +
+ ); + default: + return null; + } +} +``` + +#### Recommended Pattern B: Colocated simple policy object + +```tsx +function Page() { + const user = useUser(); + // Simple policy defined right here, easy to see + const policy = { + admin: { canInvite: true, canView: true }, + viewer: { canInvite: false, canView: true }, + }[user.role]; + + // Ensure policy exists before accessing properties if role might not match + if (!policy) return null; + + return ( +
+ + +
+ ); +} +``` + +## Naming Complex Conditions + +**Rule:** Assign complex boolean conditions to named variables. + +**Reasoning:** + +- Makes the _meaning_ of the condition explicit. +- Improves readability and self-documentation by reducing cognitive load. + +#### Recommended Pattern: + +(Conditions assigned to named variables) + +```typescript +const matchedProducts = products.filter(product => { + // Check if product belongs to the target category + const isSameCategory = product.categories.some( + category => category.id === targetCategory.id, + ); + + // Check if any product price falls within the desired range + const isPriceInRange = product.prices.some( + price => price >= minPrice && price <= maxPrice, + ); + + // The overall condition is now much clearer + return isSameCategory && isPriceInRange; +}); +``` + +**Guidance:** Name conditions when the logic is complex, reused, or needs unit +testing. Avoid naming very simple, single-use conditions. + +# Predictability + +Ensuring code behaves as expected based on its name, parameters, and context. + +## Standardizing Return Types + +**Rule:** Use consistent return types for similar functions/hooks. + +**Reasoning:** + +- Improves code predictability; developers can anticipate return value shapes. +- Reduces confusion and potential errors from inconsistent types. + +#### Recommended Pattern 1: API Hooks (React Query) + +```typescript +// Always return the Query object +import { useQuery, UseQueryResult } from "@tanstack/react-query"; + +// Assuming fetchUser returns Promise +function useUser(): UseQueryResult { + const query = useQuery({ queryKey: ["user"], queryFn: fetchUser }); + return query; +} + +// Assuming fetchServerTime returns Promise +function useServerTime(): UseQueryResult { + const query = useQuery({ + queryKey: ["serverTime"], + queryFn: fetchServerTime, + }); + return query; +} +``` + +#### Recommended Pattern 2: Validation Functions + +(Using a consistent type, ideally a Discriminated Union) + +```typescript +type ValidationResult = { ok: true } | { ok: false; reason: string }; + +function checkIsNameValid(name: string): ValidationResult { + if (name.length === 0) return { ok: false, reason: "Name cannot be empty." }; + if (name.length >= 20) + return { ok: false, reason: "Name cannot be longer than 20 characters." }; + return { ok: true }; +} + +function checkIsAgeValid(age: number): ValidationResult { + if (!Number.isInteger(age)) + return { ok: false, reason: "Age must be an integer." }; + if (age < 18) return { ok: false, reason: "Age must be 18 or older." }; + if (age > 99) return { ok: false, reason: "Age must be 99 or younger." }; + return { ok: true }; +} + +// Usage allows safe access to 'reason' only when ok is false +const nameValidation = checkIsNameValid(name); +if (!nameValidation.ok) { + console.error(nameValidation.reason); +} +``` + +## Revealing Hidden Logic (Single Responsibility) + +**Rule:** Avoid hidden side effects; functions should only perform actions +implied by their signature (SRP). + +**Reasoning:** + +- Leads to predictable behavior without unintended side effects. +- Creates more robust, testable code through separation of concerns (SRP). + +#### Recommended Pattern: + +```typescript +// Function *only* fetches balance +async function fetchBalance(): Promise { + const balance = await http.get("..."); + return balance; +} + +// Caller explicitly performs logging where needed +async function handleUpdateClick() { + const balance = await fetchBalance(); // Fetch + logging.log("balance_fetched"); // Log (explicit action) + await syncBalance(balance); // Another action +} +``` + +## Using Unique and Descriptive Names (Avoiding Ambiguity) + +**Rule:** Use unique, descriptive names for custom wrappers/functions to avoid +ambiguity. + +**Reasoning:** + +- Avoids ambiguity and enhances predictability. +- Allows developers to understand specific actions (e.g., adding auth) directly + from the name. + +#### Recommended Pattern: + +```typescript +// In httpService.ts - Clearer module name +import { http as httpLibrary } from "@some-library/http"; + +export const httpService = { + // Unique module name + async getWithAuth(url: string) { + // Descriptive function name + const token = await fetchToken(); + return httpLibrary.get(url, { + headers: { Authorization: `Bearer ${token}` }, + }); + }, +}; + +// In fetchUser.ts - Usage clearly indicates auth +import { httpService } from "./httpService"; +export async function fetchUser() { + // Name 'getWithAuth' makes the behavior explicit + return await httpService.getWithAuth("..."); +} +``` + +# Cohesion + +Keeping related code together and ensuring modules have a well-defined, single +purpose. + +## Considering Form Cohesion + +**Rule:** Choose field-level or form-level cohesion based on form requirements. + +**Reasoning:** + +- Balances field independence (field-level) vs. form unity (form-level). +- Ensures related form logic is appropriately grouped based on requirements. + +#### Recommended Pattern (Field-Level Example): + +```tsx +// Each field uses its own `validate` function +import { useForm } from "react-hook-form"; + +export function Form() { + const { + register, + formState: { errors }, + handleSubmit, + } = useForm({ + /* defaultValues etc. */ + }); + + const onSubmit = handleSubmit(formData => { + console.log("Form submitted:", formData); + }); + + return ( +
+
+ + value.trim() === "" ? "Please enter your name." : true, // Example validation + })} + placeholder="Name" + /> + {errors.name &&

{errors.name.message}

} +
+
+ + /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i.test(value) + ? true + : "Invalid email address.", // Example validation + })} + placeholder="Email" + /> + {errors.email &&

{errors.email.message}

} +
+ +
+ ); +} +``` + +#### Recommended Pattern (Form-Level Example): + +```tsx +// A single schema defines validation for the whole form +import * as z from "zod"; +import { useForm } from "react-hook-form"; +import { zodResolver } from "@hookform/resolvers/zod"; + +const schema = z.object({ + name: z.string().min(1, "Please enter your name."), + email: z.string().min(1, "Please enter your email.").email("Invalid email."), +}); + +export function Form() { + const { + register, + formState: { errors }, + handleSubmit, + } = useForm({ + resolver: zodResolver(schema), + defaultValues: { name: "", email: "" }, + }); + + const onSubmit = handleSubmit(formData => { + console.log("Form submitted:", formData); + }); + + return ( +
+
+ + {errors.name &&

{errors.name.message}

} +
+
+ + {errors.email &&

{errors.email.message}

} +
+ +
+ ); +} +``` + +**Guidance:** Choose **field-level** for independent validation, async checks, +or reusable fields. Choose **form-level** for related fields, wizard forms, or +interdependent validation. + +## Organizing Code by Feature/Domain + +**Rule:** Organize directories by feature/domain, not just by code type. + +**Reasoning:** + +- Increases cohesion by keeping related files together. +- Simplifies feature understanding, development, maintenance, and deletion. + +#### Recommended Pattern: + +(Organized by feature/domain) + +``` +src/ +├── components/ # Shared/common components +├── hooks/ # Shared/common hooks +├── utils/ # Shared/common utils +├── domains/ +│ ├── user/ +│ │ ├── components/ +│ │ │ └── UserProfileCard.tsx +│ │ ├── hooks/ +│ │ │ └── useUser.ts +│ │ └── index.ts # Optional barrel file +│ ├── product/ +│ │ ├── components/ +│ │ │ └── ProductList.tsx +│ │ ├── hooks/ +│ │ │ └── useProducts.ts +│ │ └── ... +│ └── order/ +│ ├── components/ +│ │ └── OrderSummary.tsx +│ ├── hooks/ +│ │ └── useOrder.ts +│ └── ... +└── App.tsx +``` + +## Relating Magic Numbers to Logic + +**Rule:** Define constants near related logic or ensure names link them clearly. + +**Reasoning:** + +- Improves cohesion by linking constants to the logic they represent. +- Prevents silent failures caused by updating logic without updating related + constants. + +#### Recommended Pattern: + +```typescript +// Constant clearly named and potentially defined near animation logic +const ANIMATION_DELAY_MS = 300; + +async function onLikeClick() { + await postLike(url); + // Delay uses the constant, maintaining the link to the animation + await delay(ANIMATION_DELAY_MS); + await refetchPostLike(); +} +``` + +_Ensure constants are maintained alongside the logic they depend on or clearly +named to show the relationship._ + +# Coupling + +Minimizing dependencies between different parts of the codebase. + +## Balancing Abstraction and Coupling (Avoiding Premature Abstraction) + +**Rule:** Avoid premature abstraction of duplicates if use cases might diverge; +prefer lower coupling. + +**Reasoning:** + +- Avoids tight coupling from forcing potentially diverging logic into one + abstraction. +- Allowing some duplication can improve decoupling and maintainability when + future needs are uncertain. + +#### Guidance: + +Before abstracting, consider if the logic is truly identical and likely to +_stay_ identical across all use cases. If divergence is possible (e.g., +different pages needing slightly different behavior from a shared hook like +`useOpenMaintenanceBottomSheet`), keeping the logic separate initially (allowing +duplication) can lead to more maintainable, decoupled code. Discuss trade-offs +with the team. _[No specific 'good' code example here, as the recommendation is +situational awareness rather than a single pattern]._ + +## Scoping State Management (Avoiding Overly Broad Hooks) + +**Rule:** Break down broad state management into smaller, focused +hooks/contexts. + +**Reasoning:** + +- Reduces coupling by ensuring components only depend on necessary state slices. +- Improves performance by preventing unnecessary re-renders from unrelated state + changes. + +#### Recommended Pattern: + +(Focused hooks, low coupling) + +```typescript +// Hook specifically for cardId query param +import { useQueryParam, NumberParam } from "use-query-params"; +import { useCallback } from "react"; + +export function useCardIdQueryParam() { + // Assuming 'query' provides the raw param value + const [cardIdParam, setCardIdParam] = useQueryParam("cardId", NumberParam); + + const setCardId = useCallback( + (newCardId: number | undefined) => { + setCardIdParam(newCardId, "replaceIn"); // Or 'push' depending on desired history behavior + }, + [setCardIdParam], + ); + + // Provide a stable return tuple + return [cardIdParam ?? undefined, setCardId] as const; +} + +// Separate hook for date range, etc. +// export function useDateRangeQueryParam() { /* ... */ } +``` + +Components now only import and use `useCardIdQueryParam` if they need `cardId`, +decoupling them from date range state, etc. + +## Eliminating Props Drilling with Composition + +**Rule:** Use Component Composition instead of Props Drilling. + +**Reasoning:** + +- Significantly reduces coupling by eliminating unnecessary intermediate + dependencies. +- Makes refactoring easier and clarifies data flow in flatter component trees. + +#### Recommended Pattern: + +```tsx +import React, { useState } from "react"; + +// Assume Modal, Input, Button, ItemEditList components exist + +function ItemEditModal({ open, items, recommendedItems, onConfirm, onClose }) { + const [keyword, setKeyword] = useState(""); + + // Render children directly within Modal, passing props only where needed + return ( + + {/* Input and Button rendered directly */} +
+ setKeyword(e.target.value)} // State managed here + placeholder="Search items..." + /> + +
+ {/* ItemEditList rendered directly, gets props it needs */} + +
+ ); +} + +// The intermediate ItemEditBody component is eliminated, reducing coupling. +``` diff --git a/.cursor/rules/ide-and-eslint-priorities.mdc b/.cursor/rules/ide-and-eslint-priorities.mdc new file mode 100644 index 0000000..5dd15fb --- /dev/null +++ b/.cursor/rules/ide-and-eslint-priorities.mdc @@ -0,0 +1,15 @@ +--- +alwaysApply: true +description: Focus on logical correctness first; ignore IDE ESLint/TypeScript errors limited to formatting, import order, or unresolved type dependencies until requested to fix. +--- + +### ESLint and TypeScript IDE errors handling + +- **Ignore non-blocking IDE errors**: After making code changes, do not block on IDE ESLint/TypeScript errors related to: + - **Code formatting style** (prettier/eslint formatting rules) + - **Import order** (sorting/grouping of imports) + - **Unresolved TypeScript dependencies** (types missing from node_modules or ambient type packages that do not affect runtime when logic is clear) +- **Prioritize logic**: Propose and apply edits when the logic is sound, even if the IDE shows the above categories of errors. +- **Fix on request**: Only address these styling/import-order/type-dependency issues when specifically asked or when focusing on cleanup. +- **Still fix real breakages**: Do not ignore syntax errors, missing symbols, build/test failures, or type errors that impact program correctness or compilation. +- **Avoid noisy churn**: Do not auto-reformat or re-order imports unrelated to the change unless explicitly requested. diff --git a/.cursor/rules/server-client-connection.mdc b/.cursor/rules/server-client-connection.mdc new file mode 100644 index 0000000..95825a0 --- /dev/null +++ b/.cursor/rules/server-client-connection.mdc @@ -0,0 +1,26 @@ +--- +alwaysApply: true +description: Server-client DTO mapping conventions and Index service mapping reference +--- + +# Server - Client Connection + +## Server ⇄ Client Type Mapping Guide + +This rule documents how server-side request/response types are mapped into client-side DTOs, and provides a reference for the Index service. Server Zod schemas and types live in [backend/cms/src/service/index/index.types.ts](mdc:backend/cms/src/service/index/index.types.ts). Client DTOs live in [frontend/desk/src/state/repository/index.dto.ts](mdc:frontend/desk/src/state/repository/index.dto.ts). + +### Naming Conventions + +Terms in the left of arrow are used as server types, terms in the right side are for client dto. + +- Req → Input +- Res → Output +- Get → Query +- Post → Create +- Patch → Update +- Delete → Output contains `success: boolean` + +Additional notes: + +- Zod schemas are exported as `export const ...Input = z.object(...)` and the inferred types as `export type ...Input = z.infer`. +- Domain entities (e.g., `Index`, `Slug`) come from `shared/types` and should be reused in both server and client. diff --git a/.cursor/rules/typescript-convention.mdc b/.cursor/rules/typescript-convention.mdc new file mode 100644 index 0000000..3dca909 --- /dev/null +++ b/.cursor/rules/typescript-convention.mdc @@ -0,0 +1,3 @@ +--- +alwaysApply: true +--- diff --git a/.gitignore b/.gitignore index e834c31..b7d9566 100644 --- a/.gitignore +++ b/.gitignore @@ -259,6 +259,8 @@ web_modules/ .env.test.local .env.production.local .env.local +!.env.*.example +!.env.example # parcel-bundler cache (https://parceljs.org/) .cache @@ -472,4 +474,4 @@ $RECYCLE.BIN/ .husky # tsconfig -!tsconfig.base.json \ No newline at end of file +!tsconfig.base.json diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..aebd91c --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +v22.16.0 diff --git a/.prettierignore b/.prettierignore index 83750cb..8253767 100644 --- a/.prettierignore +++ b/.prettierignore @@ -14,4 +14,7 @@ node_modules/**/* # git .git/**/* -**/.git/**/* \ No newline at end of file +**/.git/**/* + +# legacy +legacy/**/* \ No newline at end of file diff --git a/.prettierrc b/.prettierrc index 6fa16af..daadf21 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,5 +1,5 @@ { - "printWidth": 120, + "printWidth": 80, "tabWidth": 2, "useTabs": false, "semi": true, diff --git a/.vscode/settings.json b/.vscode/settings.json index 0967ef4..4ea4537 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1 +1,10 @@ -{} +{ + "editor.formatOnPaste": true, + "editor.formatOnSave": true, + "editor.defaultFormatter": "esbenp.prettier-vscode", + "eslint.useFlatConfig": true, + "editor.codeActionsOnSave": { + "source.fixAll.eslint": "always" + }, + "typescript.tsdk": "node_modules/typescript/lib" +} diff --git a/.yarnrc.yml b/.yarnrc.yml index 26f0520..cf4ee15 100644 --- a/.yarnrc.yml +++ b/.yarnrc.yml @@ -5,3 +5,5 @@ enableGlobalCache: false nodeLinker: node-modules npmPublishAccess: public + +nmHoistingLimits: workspaces diff --git a/README.md b/README.md index d5749b0..54ffdcd 100644 --- a/README.md +++ b/README.md @@ -1 +1,7 @@ # the-codec + +Codex 복수 int id + +Index 단수 int id + +Verse 트리구조 UUID diff --git a/backend/cms/.env.example b/backend/cms/.env.example new file mode 100644 index 0000000..9eef11a --- /dev/null +++ b/backend/cms/.env.example @@ -0,0 +1,10 @@ +# General +PORT= + + +# DB +POSTGRES_PORT= +POSTGRES_DB= +POSTGRES_USER= +POSTGRES_PASSWORD= +POSTGRES_DB_URL=postgres://:@localhost:/ diff --git a/backend/cms/.gitignore b/backend/cms/.gitignore new file mode 100644 index 0000000..36fabb6 --- /dev/null +++ b/backend/cms/.gitignore @@ -0,0 +1,28 @@ +# dev +.yarn/ +!.yarn/releases +.vscode/* +!.vscode/launch.json +!.vscode/*.code-snippets +.idea/workspace.xml +.idea/usage.statistics.xml +.idea/shelf + +# deps +node_modules/ + +# env +.env +.env.production + +# logs +logs/ +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +# misc +.DS_Store diff --git a/backend/cms/README.md b/backend/cms/README.md new file mode 100644 index 0000000..4471abb --- /dev/null +++ b/backend/cms/README.md @@ -0,0 +1,25 @@ +# CMS + +## Development + +```bash +# Run database in docker +# Run only once when database is not running +yarn db:run + +# dev server +yarn cms dev +``` + +## DB + +```bash +# Auto-generate migration file +yarn cms db:generate --name={migration_name} + +# Generate custom migration file (write SQL statements as you want) +yarn cms db:generate --custom --name={custom_migration_name} + +# Apply new migration files +yarn cms db:migrate +``` diff --git a/backend/cms/docker-compose.yml b/backend/cms/docker-compose.yml new file mode 100644 index 0000000..e7e57fe --- /dev/null +++ b/backend/cms/docker-compose.yml @@ -0,0 +1,11 @@ +services: + postgres: + image: postgres:17 + container_name: postgres_cms + restart: always + ports: + - ${POSTGRES_PORT}:5432 + environment: + POSTGRES_DB: ${POSTGRES_DB} + POSTGRES_USER: ${POSTGRES_USER} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} diff --git a/backend/cms/drizzle.config.ts b/backend/cms/drizzle.config.ts new file mode 100644 index 0000000..13ebddf --- /dev/null +++ b/backend/cms/drizzle.config.ts @@ -0,0 +1,13 @@ +import { defineConfig } from "drizzle-kit"; + +import { env } from "./src/env"; + +export default defineConfig({ + out: "./drizzle", + schema: "./src/db/db.schema.ts", + dialect: "postgresql", + casing: "snake_case", + dbCredentials: { + url: env.POSTGRES_DB_URL, + }, +}); diff --git a/backend/cms/drizzle/0000_add_user_and_index.sql b/backend/cms/drizzle/0000_add_user_and_index.sql new file mode 100644 index 0000000..0bca5a2 --- /dev/null +++ b/backend/cms/drizzle/0000_add_user_and_index.sql @@ -0,0 +1,56 @@ +CREATE TABLE "index_bodies" ( + "id" serial PRIMARY KEY NOT NULL, + "index_id" integer NOT NULL, + "body" text DEFAULT '' NOT NULL, + "created_at" timestamp DEFAULT now() NOT NULL, + "updated_at" timestamp DEFAULT now() NOT NULL, + "deleted_at" timestamp +); +--> statement-breakpoint +CREATE TABLE "index_slugs" ( + "id" serial PRIMARY KEY NOT NULL, + "index_id" integer NOT NULL, + "slug" varchar(200) NOT NULL, + "type" varchar(50) NOT NULL, + "created_at" timestamp DEFAULT now() NOT NULL, + "updated_at" timestamp DEFAULT now() NOT NULL, + "deleted_at" timestamp, + CONSTRAINT "index_slugs_slug_unique" UNIQUE("slug") +); +--> statement-breakpoint +CREATE TABLE "indexes" ( + "id" serial PRIMARY KEY NOT NULL, + "name" varchar(200) NOT NULL, + "description" varchar(2000), + "created_at" timestamp DEFAULT now() NOT NULL, + "updated_at" timestamp DEFAULT now() NOT NULL, + "deleted_at" timestamp, + "published_at" timestamp, + "unpublished_at" timestamp +); +--> statement-breakpoint +CREATE TABLE "users" ( + "id" serial PRIMARY KEY NOT NULL, + "name" varchar(200) NOT NULL, + "created_at" timestamp DEFAULT now() NOT NULL, + "updated_at" timestamp DEFAULT now() NOT NULL, + "deleted_at" timestamp +); +--> statement-breakpoint +ALTER TABLE "index_bodies" ADD CONSTRAINT "index_bodies_index_id_indexes_id_fk" FOREIGN KEY ("index_id") REFERENCES "public"."indexes"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint +ALTER TABLE "index_slugs" ADD CONSTRAINT "index_slugs_index_id_indexes_id_fk" FOREIGN KEY ("index_id") REFERENCES "public"."indexes"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint +CREATE INDEX "index_bodies_index_id_index" ON "index_bodies" USING btree ("index_id");--> statement-breakpoint +CREATE INDEX "index_bodies_created_at_index" ON "index_bodies" USING btree ("created_at");--> statement-breakpoint +CREATE INDEX "index_bodies_updated_at_index" ON "index_bodies" USING btree ("updated_at");--> statement-breakpoint +CREATE INDEX "index_slugs_index_id_index" ON "index_slugs" USING btree ("index_id");--> statement-breakpoint +CREATE INDEX "index_slugs_slug_index" ON "index_slugs" USING btree ("slug");--> statement-breakpoint +CREATE INDEX "index_slugs_created_at_index" ON "index_slugs" USING btree ("created_at");--> statement-breakpoint +CREATE INDEX "index_slugs_updated_at_index" ON "index_slugs" USING btree ("updated_at");--> statement-breakpoint +CREATE INDEX "indexes_name_index" ON "indexes" USING btree ("name");--> statement-breakpoint +CREATE INDEX "indexes_created_at_index" ON "indexes" USING btree ("created_at");--> statement-breakpoint +CREATE INDEX "indexes_updated_at_index" ON "indexes" USING btree ("updated_at");--> statement-breakpoint +CREATE INDEX "indexes_published_at_index" ON "indexes" USING btree ("published_at");--> statement-breakpoint +CREATE INDEX "indexes_unpublished_at_index" ON "indexes" USING btree ("unpublished_at");--> statement-breakpoint +CREATE INDEX "users_name_index" ON "users" USING btree ("name");--> statement-breakpoint +CREATE INDEX "users_created_at_index" ON "users" USING btree ("created_at");--> statement-breakpoint +CREATE INDEX "users_updated_at_index" ON "users" USING btree ("updated_at"); \ No newline at end of file diff --git a/backend/cms/drizzle/meta/0000_snapshot.json b/backend/cms/drizzle/meta/0000_snapshot.json new file mode 100644 index 0000000..d7b73dc --- /dev/null +++ b/backend/cms/drizzle/meta/0000_snapshot.json @@ -0,0 +1,501 @@ +{ + "id": "bc95b7b8-9362-42a1-abb0-124ada7a8c9b", + "prevId": "00000000-0000-0000-0000-000000000000", + "version": "7", + "dialect": "postgresql", + "tables": { + "public.index_bodies": { + "name": "index_bodies", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "index_id": { + "name": "index_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "body": { + "name": "body", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "''" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "index_bodies_index_id_index": { + "name": "index_bodies_index_id_index", + "columns": [ + { + "expression": "index_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "index_bodies_created_at_index": { + "name": "index_bodies_created_at_index", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "index_bodies_updated_at_index": { + "name": "index_bodies_updated_at_index", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "index_bodies_index_id_indexes_id_fk": { + "name": "index_bodies_index_id_indexes_id_fk", + "tableFrom": "index_bodies", + "tableTo": "indexes", + "columnsFrom": [ + "index_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "no action", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.index_slugs": { + "name": "index_slugs", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "index_id": { + "name": "index_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "slug": { + "name": "slug", + "type": "varchar(200)", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "varchar(50)", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "index_slugs_index_id_index": { + "name": "index_slugs_index_id_index", + "columns": [ + { + "expression": "index_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "index_slugs_slug_index": { + "name": "index_slugs_slug_index", + "columns": [ + { + "expression": "slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "index_slugs_created_at_index": { + "name": "index_slugs_created_at_index", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "index_slugs_updated_at_index": { + "name": "index_slugs_updated_at_index", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "index_slugs_index_id_indexes_id_fk": { + "name": "index_slugs_index_id_indexes_id_fk", + "tableFrom": "index_slugs", + "tableTo": "indexes", + "columnsFrom": [ + "index_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "no action", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "index_slugs_slug_unique": { + "name": "index_slugs_slug_unique", + "nullsNotDistinct": false, + "columns": [ + "slug" + ] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.indexes": { + "name": "indexes", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "name": { + "name": "name", + "type": "varchar(200)", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "varchar(2000)", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "published_at": { + "name": "published_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "unpublished_at": { + "name": "unpublished_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "indexes_name_index": { + "name": "indexes_name_index", + "columns": [ + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "indexes_created_at_index": { + "name": "indexes_created_at_index", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "indexes_updated_at_index": { + "name": "indexes_updated_at_index", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "indexes_published_at_index": { + "name": "indexes_published_at_index", + "columns": [ + { + "expression": "published_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "indexes_unpublished_at_index": { + "name": "indexes_unpublished_at_index", + "columns": [ + { + "expression": "unpublished_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.users": { + "name": "users", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "name": { + "name": "name", + "type": "varchar(200)", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "users_name_index": { + "name": "users_name_index", + "columns": [ + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "users_created_at_index": { + "name": "users_created_at_index", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "users_updated_at_index": { + "name": "users_updated_at_index", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + } + }, + "enums": {}, + "schemas": {}, + "sequences": {}, + "roles": {}, + "policies": {}, + "views": {}, + "_meta": { + "columns": {}, + "schemas": {}, + "tables": {} + } +} \ No newline at end of file diff --git a/backend/cms/drizzle/meta/_journal.json b/backend/cms/drizzle/meta/_journal.json new file mode 100644 index 0000000..20a7dab --- /dev/null +++ b/backend/cms/drizzle/meta/_journal.json @@ -0,0 +1,13 @@ +{ + "version": "7", + "dialect": "postgresql", + "entries": [ + { + "idx": 0, + "version": "7", + "when": 1756641538060, + "tag": "0000_add_user_and_index", + "breakpoints": true + } + ] +} \ No newline at end of file diff --git a/backend/cms/drizzle/rollback/0000_add_user_and_index.rollback.sql b/backend/cms/drizzle/rollback/0000_add_user_and_index.rollback.sql new file mode 100644 index 0000000..efedd7e --- /dev/null +++ b/backend/cms/drizzle/rollback/0000_add_user_and_index.rollback.sql @@ -0,0 +1,2 @@ +DROP TABLE "indexes"; +DROP TABLE "users"; diff --git a/backend/cms/package.json b/backend/cms/package.json new file mode 100644 index 0000000..ea1f5b9 --- /dev/null +++ b/backend/cms/package.json @@ -0,0 +1,32 @@ +{ + "name": "cms", + "type": "module", + "scripts": { + "dev": "tsx watch src/index.ts", + "build": "tsc", + "start": "node dist/index.js", + "db:run": "docker compose up -d", + "db:generate": "drizzle-kit generate", + "db:migrate": "drizzle-kit migrate", + "db:studio": "drizzle-kit studio", + "format": "prettier --write .", + "lint:check": "eslint .", + "lint:fix": "eslint --fix ." + }, + "dependencies": { + "@hono/node-server": "^1.14.4", + "dotenv": "^17.0.0", + "drizzle-orm": "^0.44.2", + "hono": "^4.8.3", + "pg": "^8.16.3", + "zod": "^3.25.67" + }, + "devDependencies": { + "@types/node": "^20.11.17", + "@types/pg": "^8", + "drizzle-kit": "^0.31.4", + "tsx": "^4.7.1", + "types": "workspace:^", + "typescript": "^5" + } +} diff --git a/backend/cms/src/core/repository.ts b/backend/cms/src/core/repository.ts new file mode 100644 index 0000000..84b87a7 --- /dev/null +++ b/backend/cms/src/core/repository.ts @@ -0,0 +1,7 @@ +import type { DbType } from "../db/db.types"; + +class Repository { + constructor(readonly db: DbType) {} +} + +export { Repository }; diff --git a/backend/cms/src/db/db.schema.ts b/backend/cms/src/db/db.schema.ts new file mode 100644 index 0000000..5b27a9e --- /dev/null +++ b/backend/cms/src/db/db.schema.ts @@ -0,0 +1,102 @@ +import { + index, + integer, + pgTable, + serial, + text, + timestamp, + varchar, +} from "drizzle-orm/pg-core"; + +/** + * varchar lengths + */ +const SHORT = 50; +const MEDIUM = 200; +const LONG = 2000; +// const EMAIL = 254; +// const URL = 2048; + +/** + * timestamps + */ +const timestamps = { + createdAt: timestamp().defaultNow().notNull(), + updatedAt: timestamp().defaultNow().notNull(), + deletedAt: timestamp(), +}; + +/** + * tables + */ +export const usersTable = pgTable( + "users", + { + id: serial().primaryKey(), + name: varchar({ length: MEDIUM }).notNull(), + ...timestamps, + }, + table => [ + index().on(table.name), + index().on(table.createdAt), + index().on(table.updatedAt), + ], +); + +export const indexesTable = pgTable( + "indexes", + { + id: serial().primaryKey(), + name: varchar({ length: MEDIUM }).notNull(), + description: varchar({ length: LONG }), + ...timestamps, + publishedAt: timestamp(), + unpublishedAt: timestamp(), + }, + table => [ + index().on(table.name), + index().on(table.createdAt), + index().on(table.updatedAt), + index().on(table.publishedAt), + index().on(table.unpublishedAt), + ], +); + +export const indexBodiesTable = pgTable( + "index_bodies", + { + id: serial().primaryKey(), + indexId: integer() + .notNull() + .references(() => indexesTable.id), + body: text().notNull().default(""), + ...timestamps, + }, + table => [ + index().on(table.indexId), + index().on(table.createdAt), + index().on(table.updatedAt), + ], +); + +export const indexSlugsTable = pgTable( + "index_slugs", + { + id: serial().primaryKey(), + indexId: integer() + .notNull() + .references(() => indexesTable.id), + slug: varchar({ length: MEDIUM }).notNull().unique(), + type: varchar({ + enum: ["PUBLIC", "PRIVATE"], + length: SHORT, + }).notNull(), + ...timestamps, + }, + table => [ + index().on(table.indexId), + index().on(table.slug), + index().on(table.createdAt), + index().on(table.updatedAt), + ], +); diff --git a/backend/cms/src/db/db.types.test.ts b/backend/cms/src/db/db.types.test.ts new file mode 100644 index 0000000..dfeb7bb --- /dev/null +++ b/backend/cms/src/db/db.types.test.ts @@ -0,0 +1,7 @@ +import type { Index } from "types/index"; +import type { User } from "types/user"; + +import { indexesTable, usersTable } from "./db.schema"; + +usersTable.$inferSelect satisfies User; +indexesTable.$inferSelect satisfies Index; diff --git a/backend/cms/src/db/db.types.ts b/backend/cms/src/db/db.types.ts new file mode 100644 index 0000000..3630bc4 --- /dev/null +++ b/backend/cms/src/db/db.types.ts @@ -0,0 +1,5 @@ +import type { NodePgDatabase } from "drizzle-orm/node-postgres"; + +type DbType = NodePgDatabase; + +export type { DbType }; diff --git a/backend/cms/src/db/index.ts b/backend/cms/src/db/index.ts new file mode 100644 index 0000000..94976ec --- /dev/null +++ b/backend/cms/src/db/index.ts @@ -0,0 +1,14 @@ +import { drizzle } from "drizzle-orm/node-postgres"; +import { Pool } from "pg"; + +import { env } from "../env"; + +const pool = new Pool({ + connectionString: env.POSTGRES_DB_URL, +}); + +const db = drizzle(pool, { + casing: "snake_case", +}); + +export { db }; diff --git a/backend/cms/src/env.ts b/backend/cms/src/env.ts new file mode 100644 index 0000000..d936713 --- /dev/null +++ b/backend/cms/src/env.ts @@ -0,0 +1,19 @@ +import "dotenv/config"; + +import { z } from "zod"; + +const envSchema = z.object({ + // General + PORT: z.coerce.number(), + + // DB + POSTGRES_PORT: z.coerce.number(), + POSTGRES_DB: z.string(), + POSTGRES_USER: z.string(), + POSTGRES_PASSWORD: z.string(), + POSTGRES_DB_URL: z.string(), +}); + +const env = envSchema.parse(process.env); + +export { env }; diff --git a/backend/cms/src/index.ts b/backend/cms/src/index.ts new file mode 100644 index 0000000..0144927 --- /dev/null +++ b/backend/cms/src/index.ts @@ -0,0 +1,25 @@ +import { serve } from "@hono/node-server"; +import { Hono } from "hono"; +import { cors } from "hono/cors"; + +import { env } from "./env"; +import { indexPrefix, indexRouter } from "./service/index/index.router"; +import { userPrefix, userRouter } from "./service/user/user.router"; + +const app = new Hono(); +app.use(cors()); + +app.route(userPrefix, userRouter); +app.route(indexPrefix, indexRouter); + +serve( + { + fetch: app.fetch, + port: env.PORT, + }, + info => { + console.log( + `Server is running on http://localhost:${info.port.toString()}`, + ); + }, +); diff --git a/backend/cms/src/service/index/index-body.repository.ts b/backend/cms/src/service/index/index-body.repository.ts new file mode 100644 index 0000000..74e1ff3 --- /dev/null +++ b/backend/cms/src/service/index/index-body.repository.ts @@ -0,0 +1,64 @@ +import { and, eq, isNull } from "drizzle-orm"; + +import { Repository } from "../../core/repository"; +import { indexBodiesTable } from "../../db/db.schema"; +import { takeFirstOrThrow } from "../../utility/db"; + +class IndexBodyRepository extends Repository { + async createIndexBody({ indexId }: { indexId: number }) { + return await this.db.insert(indexBodiesTable).values({ indexId }); + } + + async readIndexBodyByIndexId({ indexId }: { indexId: number }) { + return await this.db + .select() + .from(indexBodiesTable) + .where( + and( + eq(indexBodiesTable.indexId, indexId), + isNull(indexBodiesTable.deletedAt), + ), + ) + .then(takeFirstOrThrow); + } + + async updateIndexBody({ indexId, body }: { indexId: number; body: string }) { + return await this.db + .update(indexBodiesTable) + .set({ + body, + updatedAt: new Date(), + }) + .where( + and( + eq(indexBodiesTable.indexId, indexId), + isNull(indexBodiesTable.deletedAt), + ), + ) + .returning() + .then(takeFirstOrThrow); + } + + async deleteIndexBody({ + indexId, + deletedAt, + }: { + indexId: number; + deletedAt?: Date; + }) { + const deletedIndexBody = await this.db + .update(indexBodiesTable) + .set({ + deletedAt: deletedAt ?? new Date(), + }) + .where( + and( + eq(indexBodiesTable.indexId, indexId), + isNull(indexBodiesTable.deletedAt), + ), + ); + return !!deletedIndexBody.rowCount; + } +} + +export { IndexBodyRepository }; diff --git a/backend/cms/src/service/index/index-slug.repository.ts b/backend/cms/src/service/index/index-slug.repository.ts new file mode 100644 index 0000000..73a32f7 --- /dev/null +++ b/backend/cms/src/service/index/index-slug.repository.ts @@ -0,0 +1,114 @@ +import { and, eq, isNull } from "drizzle-orm"; +import type { Index } from "shared/types/src/index.types"; +import type { Slug, SLUG_TYPE } from "shared/types/src/slug.types"; + +import { Repository } from "../../core/repository"; +import { indexSlugsTable } from "../../db/db.schema"; +import { takeFirstOrThrow } from "../../utility/db"; + +class IndexSlugRepository extends Repository { + async createSlug({ + indexId, + slug, + type, + }: { + indexId: Index["id"]; + slug: string; + type: SLUG_TYPE; + }) { + return await this.db + .insert(indexSlugsTable) + .values({ + indexId, + slug, + type, + }) + .returning() + .then(takeFirstOrThrow); + } + + async readSlugsByIndexId({ indexId }: { indexId: Index["id"] }) { + return await this.db + .select() + .from(indexSlugsTable) + .where( + and( + eq(indexSlugsTable.indexId, indexId), + isNull(indexSlugsTable.deletedAt), + ), + ); + } + + async updateSlug({ + indexId, + slugId, + slug, + }: { + indexId: Index["id"]; + slugId: Slug["id"]; + slug: string; + }) { + return await this.db + .update(indexSlugsTable) + .set({ + slug, + updatedAt: new Date(), + }) + .where( + and( + eq(indexSlugsTable.indexId, indexId), + eq(indexSlugsTable.id, slugId), + isNull(indexSlugsTable.deletedAt), + ), + ) + .returning() + .then(takeFirstOrThrow); + } + + async deleteSlug({ + indexId, + slugId, + deletedAt, + }: { + indexId: Index["id"]; + slugId: Slug["id"]; + deletedAt?: Date; + }) { + const deletedSlug = await this.db + .update(indexSlugsTable) + .set({ + deletedAt: deletedAt ?? new Date(), + }) + .where( + and( + eq(indexSlugsTable.indexId, indexId), + eq(indexSlugsTable.id, slugId), + isNull(indexSlugsTable.deletedAt), + ), + ); + return !!deletedSlug.rowCount; + } + + async deleteSlugsByIndexId({ + indexId, + deletedAt, + }: { + indexId: Index["id"]; + deletedAt?: Date; + }) { + const deletedSlugs = await this.db + .update(indexSlugsTable) + .set({ + deletedAt: deletedAt ?? new Date(), + }) + .where( + and( + eq(indexSlugsTable.indexId, indexId), + isNull(indexSlugsTable.deletedAt), + ), + ); + return !!deletedSlugs.rowCount; + } +} + +export { IndexSlugRepository }; diff --git a/backend/cms/src/service/index/index.repository.ts b/backend/cms/src/service/index/index.repository.ts new file mode 100644 index 0000000..9c3bd38 --- /dev/null +++ b/backend/cms/src/service/index/index.repository.ts @@ -0,0 +1,76 @@ +import { and, eq, isNull } from "drizzle-orm"; + +import { Repository } from "../../core/repository"; +import { indexesTable } from "../../db/db.schema"; +import { takeFirstOrThrow } from "../../utility/db"; + +class IndexRepository extends Repository { + async createIndex({ name }: { name: string }) { + const index = await this.db + .insert(indexesTable) + .values({ name }) + .returning() + .then(takeFirstOrThrow); + return index; + } + + async readIndexes() { + const indexes = await this.db + .select() + .from(indexesTable) + .where(isNull(indexesTable.deletedAt)); + return indexes; + } + + async readIndex({ indexId }: { indexId: number }) { + const index = await this.db + .select() + .from(indexesTable) + .where(and(eq(indexesTable.id, indexId), isNull(indexesTable.deletedAt))) + .then(takeFirstOrThrow); + return index; + } + + async updateIndex({ + indexId, + index, + updatedAt, + }: { + indexId: number; + index: { + name?: string; + description?: string; + }; + updatedAt?: Date; + }) { + const updatedIndex = await this.db + .update(indexesTable) + .set({ + name: index.name, + description: index.description, + updatedAt: updatedAt ?? new Date(), + }) + .where(and(eq(indexesTable.id, indexId), isNull(indexesTable.deletedAt))) + .returning() + .then(takeFirstOrThrow); + return updatedIndex; + } + + async deleteIndex({ + indexId, + deletedAt, + }: { + indexId: number; + deletedAt?: Date; + }) { + const deletedIndex = await this.db + .update(indexesTable) + .set({ + deletedAt: deletedAt ?? new Date(), + }) + .where(and(eq(indexesTable.id, indexId), isNull(indexesTable.deletedAt))); + return !!deletedIndex.rowCount; + } +} + +export { IndexRepository }; diff --git a/backend/cms/src/service/index/index.router.ts b/backend/cms/src/service/index/index.router.ts new file mode 100644 index 0000000..6765444 --- /dev/null +++ b/backend/cms/src/service/index/index.router.ts @@ -0,0 +1,218 @@ +import { Hono } from "hono"; + +import { db } from "../../db"; +import { integerId } from "../../utility/parameter"; +import { IndexRepository } from "./index.repository"; +import { + type DeleteIndexRes, + type DeleteIndexSlugRes, + type GetIndexBodyRes, + type GetIndexesRes, + type GetIndexRes, + type GetIndexSlugsRes, + PatchIndexBodyReq, + type PatchIndexBodyRes, + PatchIndexReq, + type PatchIndexRes, + PatchIndexSlugReq, + type PatchIndexSlugRes, + PostIndexReq, + type PostIndexRes, + PostIndexSlugReq, + type PostIndexSlugRes, +} from "./index.types"; +import { IndexBodyRepository } from "./index-body.repository"; +import { IndexSlugRepository } from "./index-slug.repository"; + +const indexPrefix = "/indexes"; +const indexRouter = new Hono(); + +const indexRepository = new IndexRepository(db); +const indexBodyRepository = new IndexBodyRepository(db); +const indexSlugRepository = new IndexSlugRepository(db); + +indexRouter.get("/", async c => { + const indexes = await indexRepository.readIndexes(); + + return c.json({ + indexes, + }); +}); + +indexRouter.get("/:indexId", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const index = await indexRepository.readIndex({ indexId }); + + return c.json({ + index, + }); +}); + +indexRouter.get("/:indexId/body", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const { body } = await indexBodyRepository.readIndexBodyByIndexId({ + indexId, + }); + + return c.json({ + body, + }); +}); + +indexRouter.get("/:indexId/slugs", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const slugs = await indexSlugRepository.readSlugsByIndexId({ indexId }); + + return c.json({ + slugs, + }); +}); + +indexRouter.post("/", async c => { + const payload = await c.req + .json() + .then(payload => PostIndexReq.parse(payload)); + + const index = await db.transaction( + async tx => { + const indexRepository = new IndexRepository(tx); + const indexBodyRepository = new IndexBodyRepository(tx); + const index = await indexRepository.createIndex(payload); + await indexBodyRepository.createIndexBody({ indexId: index.id }); + return index; + }, + { isolationLevel: "serializable" }, + ); + + return c.json({ + index, + }); +}); + +indexRouter.post("/:indexId/slugs", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const payload = await c.req + .json() + .then(payload => PostIndexSlugReq.parse(payload)); + + const { id, slug, type, updatedAt } = await indexSlugRepository.createSlug({ + indexId, + slug: payload.slug, + type: payload.type, + }); + const index = await indexRepository.updateIndex({ + indexId, + index: {}, + updatedAt: updatedAt, + }); + + return c.json({ + index, + slug: { id, slug, type }, + }); +}); + +indexRouter.patch("/:indexId", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const payload = await c.req + .json() + .then(payload => PatchIndexReq.parse(payload)); + + const index = await indexRepository.updateIndex({ + indexId, + index: payload, + }); + + return c.json({ + index, + }); +}); + +indexRouter.patch("/:indexId/body", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const payload = await c.req + .json() + .then(payload => PatchIndexBodyReq.parse(payload)); + + const { body, updatedAt } = await indexBodyRepository.updateIndexBody({ + indexId, + body: payload.body, + }); + const index = await indexRepository.updateIndex({ + indexId, + index: {}, + updatedAt, + }); + + return c.json({ + index, + body, + }); +}); + +indexRouter.patch("/:indexId/slugs/:slugId", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const slugId = integerId.parse(c.req.param("slugId")); + const payload = await c.req + .json() + .then(payload => PatchIndexSlugReq.parse(payload)); + + const { id, slug, type, updatedAt } = await indexSlugRepository.updateSlug({ + indexId, + slugId, + slug: payload.slug, + }); + const index = await indexRepository.updateIndex({ + indexId, + index: {}, + updatedAt: updatedAt, + }); + + return c.json({ + index, + slug: { id, slug, type }, + }); +}); + +indexRouter.delete("/:indexId", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const deletedAt = new Date(); + + const success = await db.transaction( + async tx => { + const indexRepository = new IndexRepository(tx); + const indexBodyRepository = new IndexBodyRepository(tx); + const indexSlugRepository = new IndexSlugRepository(tx); + const indexDeleted = await indexRepository.deleteIndex({ + indexId, + deletedAt, + }); + await indexBodyRepository.deleteIndexBody({ indexId, deletedAt }); + await indexSlugRepository.deleteSlugsByIndexId({ indexId, deletedAt }); + return indexDeleted; + }, + { isolationLevel: "serializable" }, + ); + + return c.json({ + success, + }); +}); + +indexRouter.delete("/:indexId/slugs/:slugId", async c => { + const indexId = integerId.parse(c.req.param("indexId")); + const slugId = integerId.parse(c.req.param("slugId")); + const deletedAt = new Date(); + + const success = await indexSlugRepository.deleteSlug({ + indexId, + slugId, + deletedAt, + }); + + return c.json({ + success, + }); +}); + +export { indexPrefix, indexRouter }; diff --git a/backend/cms/src/service/index/index.types.ts b/backend/cms/src/service/index/index.types.ts new file mode 100644 index 0000000..fd778d3 --- /dev/null +++ b/backend/cms/src/service/index/index.types.ts @@ -0,0 +1,70 @@ +import type { Index } from "shared/types/src/index.types"; +import type { Slug } from "shared/types/src/slug.types"; +import { z } from "zod"; + +export type GetIndexesRes = { + indexes: Index[]; +}; +export type GetIndexRes = { + index: Index; +}; +export type GetIndexBodyRes = { + body: string; +}; +export type GetIndexSlugsRes = { + slugs: Slug[]; +}; + +export const PostIndexReq = z.object({ + name: z.string(), +}); +export type PostIndexReq = z.infer; +export type PostIndexRes = { + index: Index; +}; + +export const PostIndexSlugReq = z.object({ + slug: z.string(), + type: z.enum(["PUBLIC", "PRIVATE"]), +}); +export type PostIndexSlugReq = z.infer; +export type PostIndexSlugRes = { + index: Index; + slug: Slug; +}; + +export const PatchIndexReq = z + .object({ + name: z.string(), + description: z.string(), + }) + .partial(); +export type PatchIndexReq = z.infer; +export type PatchIndexRes = { + index: Index; +}; + +export const PatchIndexBodyReq = z.object({ + body: z.string(), +}); +export type PatchIndexBodyReq = z.infer; +export type PatchIndexBodyRes = { + index: Index; + body: string; +}; + +export const PatchIndexSlugReq = z.object({ + slug: z.string(), +}); +export type PatchIndexSlugReq = z.infer; +export type PatchIndexSlugRes = { + index: Index; + slug: Slug; +}; + +export type DeleteIndexRes = { + success: boolean; +}; +export type DeleteIndexSlugRes = { + success: boolean; +}; diff --git a/backend/cms/src/service/user/user.repository.ts b/backend/cms/src/service/user/user.repository.ts new file mode 100644 index 0000000..51c5f1b --- /dev/null +++ b/backend/cms/src/service/user/user.repository.ts @@ -0,0 +1,55 @@ +import { eq } from "drizzle-orm"; + +import { Repository } from "../../core/repository"; +import { usersTable } from "../../db/db.schema"; +import { takeFirstOrThrow } from "../../utility/db"; + +class UserRepository extends Repository { + async createUser({ name }: { name: string }) { + const user = await this.db + .insert(usersTable) + .values({ name }) + .returning() + .then(takeFirstOrThrow); + return user; + } + + async readUsers() { + const users = await this.db.select().from(usersTable); + return users; + } + + async readUser({ userId }: { userId: number }) { + const user = await this.db + .select() + .from(usersTable) + .where(eq(usersTable.id, userId)) + .then(takeFirstOrThrow); + return user; + } + + async updateUser({ + userId, + user, + }: { + userId: number; + user: { name?: string }; + }) { + const updatedUser = await this.db + .update(usersTable) + .set(user) + .where(eq(usersTable.id, userId)) + .returning(); + return updatedUser; + } + + async deleteUser({ userId }: { userId: number }) { + const deletedUser = await this.db + .delete(usersTable) + .where(eq(usersTable.id, userId)) + .returning(); + return deletedUser; + } +} + +export { UserRepository }; diff --git a/backend/cms/src/service/user/user.router.ts b/backend/cms/src/service/user/user.router.ts new file mode 100644 index 0000000..9d548f5 --- /dev/null +++ b/backend/cms/src/service/user/user.router.ts @@ -0,0 +1,31 @@ +import { Hono } from "hono"; + +import { db } from "../../db"; +import { integerId } from "../../utility/parameter"; +import { UserRepository } from "./user.repository"; +import { PostUserPayload } from "./user.types"; + +const userPrefix = "/users"; +const userRouter = new Hono(); +const userRepository = new UserRepository(db); + +userRouter.get("/", async c => { + const users = await userRepository.readUsers(); + + return c.json({ users }); +}); + +userRouter.get("/:userId", async c => { + const userId = integerId.parse(c.req.param("userId")); + const user = await userRepository.readUser({ userId }); + return c.json({ user }); +}); + +userRouter.post("/", async c => { + const payload = await c.req.json().then(data => PostUserPayload.parse(data)); + const user = await userRepository.createUser(payload); + + return c.json({ user }); +}); + +export { userPrefix, userRouter }; diff --git a/backend/cms/src/service/user/user.types.ts b/backend/cms/src/service/user/user.types.ts new file mode 100644 index 0000000..ae8a1cf --- /dev/null +++ b/backend/cms/src/service/user/user.types.ts @@ -0,0 +1,7 @@ +import { z } from "zod"; + +const PostUserPayload = z.object({ + name: z.string(), +}); + +export { PostUserPayload }; diff --git a/backend/cms/src/utility/db.ts b/backend/cms/src/utility/db.ts new file mode 100644 index 0000000..fe41602 --- /dev/null +++ b/backend/cms/src/utility/db.ts @@ -0,0 +1,11 @@ +const takeFirstOrNull = (values: T[]): T | null => { + if (values.length === 0) return null; + return values[0]; +}; + +const takeFirstOrThrow = (values: T[]): T => { + if (values.length === 0) throw new Error("No values found"); + return values[0]; +}; + +export { takeFirstOrNull, takeFirstOrThrow }; diff --git a/backend/cms/src/utility/parameter.ts b/backend/cms/src/utility/parameter.ts new file mode 100644 index 0000000..f3e7be2 --- /dev/null +++ b/backend/cms/src/utility/parameter.ts @@ -0,0 +1,6 @@ +import { z } from "zod"; + +const integerId = z.coerce.number().int(); +const uuid = z.string().uuid(); + +export { integerId, uuid }; diff --git a/backend/cms/tsconfig.json b/backend/cms/tsconfig.json new file mode 100644 index 0000000..9144e0a --- /dev/null +++ b/backend/cms/tsconfig.json @@ -0,0 +1,23 @@ +{ + "extends": "../../tsconfig.root.json", + "compilerOptions": { + "target": "ESNext", + "module": "ESNext", + "strict": true, + "verbatimModuleSyntax": true, + "skipLibCheck": true, + "types": ["node"], + "jsx": "react-jsx", + "jsxImportSource": "hono/jsx", + + // Output settings + "declaration": true, + "outDir": "dist", + "noEmit": false, + + // Module resolution + "moduleResolution": "bundler", + "allowImportingTsExtensions": false + }, + "exclude": ["node_modules", "dist"] +} diff --git a/deprecated/repository-old.ts b/deprecated/repository-old.ts deleted file mode 100644 index 1920d0c..0000000 --- a/deprecated/repository-old.ts +++ /dev/null @@ -1,23 +0,0 @@ -// import ky from "ky"; -// import { Index } from "../entity/index/Index"; -// import { ID } from "../constant/ID"; - -// export const Repository = { -// read: { -// index: { -// data: async (id: ID["INDEX"]) => { -// // if (typeof window === "undefined") { -// // const server = await import("data/api"); -// // const { read } = server.createDataHandler(); -// // return read(`/data/index/${id}/data.json`); -// // } -// return ky.get(`/data/index/${id}/data.json`).json(); -// }, -// }, -// }, -// write: { -// index: { -// data: (id: ID["INDEX"], data: Index) => ky.post(`/data/index/${id}/data.json`, { json: data }).json(), -// }, -// }, -// }; diff --git a/deprecated/server-old.ts b/deprecated/server-old.ts deleted file mode 100644 index dcf061c..0000000 --- a/deprecated/server-old.ts +++ /dev/null @@ -1,89 +0,0 @@ -// import fs from "node:fs"; -// import path from "node:path"; -// import { fileURLToPath } from "node:url"; -// import express, { json } from "express"; -// import { createServer as createViteServer } from "vite"; -// import { createDataHandler } from "data/api"; - -// const port = 4768; -// const __dirname = path.dirname(fileURLToPath(import.meta.url)); -// const dataHandler = createDataHandler(); - -// async function createServer() { -// const app = express(); - -// // Create Vite server in middleware mode and configure the app type as -// // 'custom', disabling Vite's own HTML serving logic so parent server -// // can take control -// const vite = await createViteServer({ -// server: { middlewareMode: true, hmr: process.env.NODE_ENV === "development" }, -// appType: "custom", -// }); - -// // Use vite's connect instance as middleware. If you use your own -// // express router (express.Router()), you should use router.use -// // When the server restarts (for example after the user modifies -// // vite.config.js), `vite.middlewares` is still going to be the same -// // reference (with a new internal stack of Vite and plugin-injected -// // middlewares). The following is valid even after restarts. -// app.use(vite.middlewares); -// app.use(json()); - -// app.get("/data/*", async (req, res) => { -// const data = await dataHandler.read(req.url); -// res.json(data); -// }); - -// app.post("/data/*", async (req, res) => { -// await dataHandler.write(req.url, req.body); -// res.json({ success: true }); -// }); - -// app.use("*", async (req, res, next) => { -// const url = req.originalUrl; - -// try { -// // 1. Read template html -// let template = fs.readFileSync(path.resolve(__dirname, "./src/entry/local/index.html"), "utf-8"); - -// // 2. Apply Vite HTML transforms. This injects the Vite HMR client, -// // and also applies HTML transforms from Vite plugins, e.g. global -// // preambles from @vitejs/plugin-react -// template = await vite.transformIndexHtml(url, template); - -// // 3. Load the server entry. ssrLoadModule automatically transforms -// // ESM source code to be usable in Node.js! There is no bundling -// // required, and provides efficient invalidation similar to HMR. -// // const { render } = (await vite.ssrLoadModule("/src/entry/local/server.tsx")) as { -// // render: (url: string) => Promise<{ head?: string; html?: string }>; -// // }; - -// // 4. render the app HTML. This assumes entry-server.js's exported -// // `render` function calls appropriate framework SSR APIs, -// // e.g. ReactDOMServer.renderToString() -// // const rendered = await render(url); - -// // 5. Inject the app-rendered HTML into the template. -// // const html = template -// // .replace(``, rendered.head ?? "") -// // .replace(``, rendered.html ?? ""); - -// // 6. Send the rendered HTML back. -// res.status(200).set({ "Content-Type": "text/html" }).send(template); -// } catch (e) { -// // If an error is caught, let Vite fix the stack trace so it maps back -// // to your actual source code. -// if (e instanceof Error) { -// vite.ssrFixStacktrace(e); -// console.log(e.stack); -// } -// next(e); -// } -// }); - -// app.listen(port, () => { -// console.log(`Server started at http://localhost:${port}`); -// }); -// } - -// createServer(); diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..411c925 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,48 @@ +import js from "@eslint/js"; +import globals from "globals"; +import { globalIgnores } from "eslint/config"; +import reactHooks from "eslint-plugin-react-hooks"; +import reactRefresh from "eslint-plugin-react-refresh"; +import simpleImportSort from "eslint-plugin-simple-import-sort"; +import tseslint from "typescript-eslint"; + +export default tseslint.config( + { ignores: ["**/dist"] }, + { + extends: [ + js.configs.recommended, + ...tseslint.configs.strictTypeChecked, + ...tseslint.configs.stylisticTypeChecked, + ], + files: ["**/*.{ts,tsx}"], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + parserOptions: { + projectService: true, + tsconfigRootDir: import.meta.dirname, + }, + }, + plugins: { + "simple-import-sort": simpleImportSort, + }, + rules: { + "@typescript-eslint/consistent-type-definitions": "off", + "@typescript-eslint/prefer-function-type": "off", + "@typescript-eslint/no-unused-expressions": [ + "error", + { allowTernary: true }, + ], + "@typescript-eslint/no-invalid-void-type": "off", + "simple-import-sort/imports": "error", + "simple-import-sort/exports": "error", + }, + }, + { + files: ["frontend/**/*.{ts,tsx}"], + extends: [ + reactHooks.configs["recommended-latest"], + reactRefresh.configs.vite, + ], + }, +); diff --git a/playground/editor/.gitignore b/frontend/blog/.gitignore similarity index 100% rename from playground/editor/.gitignore rename to frontend/blog/.gitignore diff --git a/frontend/blog/README.md b/frontend/blog/README.md new file mode 100644 index 0000000..05761ac --- /dev/null +++ b/frontend/blog/README.md @@ -0,0 +1 @@ +# Blog diff --git a/frontend/blog/eslint.config.js b/frontend/blog/eslint.config.js new file mode 100644 index 0000000..f461674 --- /dev/null +++ b/frontend/blog/eslint.config.js @@ -0,0 +1,23 @@ +import js from "@eslint/js"; +import globals from "globals"; +import reactHooks from "eslint-plugin-react-hooks"; +import reactRefresh from "eslint-plugin-react-refresh"; +import tseslint from "typescript-eslint"; +import { globalIgnores } from "eslint/config"; + +export default tseslint.config([ + globalIgnores(["dist"]), + { + files: ["**/*.{ts,tsx}"], + extends: [ + js.configs.recommended, + tseslint.configs.recommended, + reactHooks.configs["recommended-latest"], + reactRefresh.configs.vite, + ], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + }, + }, +]); diff --git a/playground/tree-shaking/index.html b/frontend/blog/index.html similarity index 100% rename from playground/tree-shaking/index.html rename to frontend/blog/index.html diff --git a/frontend/blog/package.json b/frontend/blog/package.json new file mode 100644 index 0000000..269460c --- /dev/null +++ b/frontend/blog/package.json @@ -0,0 +1,22 @@ +{ + "name": "blog", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc -b && vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "react": "^19.1.0", + "react-dom": "^19.1.0" + }, + "devDependencies": { + "@types/react": "^19.1.8", + "@types/react-dom": "^19.1.6", + "@vitejs/plugin-react": "^4.5.2", + "vite": "^7.0.0" + } +} diff --git a/frontend/blog/src/App.tsx b/frontend/blog/src/App.tsx new file mode 100644 index 0000000..ecc3461 --- /dev/null +++ b/frontend/blog/src/App.tsx @@ -0,0 +1,5 @@ +function App() { + return
Hello World
; +} + +export default App; diff --git a/playground/editor/src/main.tsx b/frontend/blog/src/main.tsx similarity index 100% rename from playground/editor/src/main.tsx rename to frontend/blog/src/main.tsx diff --git a/playground/editor/src/vite-env.d.ts b/frontend/blog/src/vite-env.d.ts similarity index 100% rename from playground/editor/src/vite-env.d.ts rename to frontend/blog/src/vite-env.d.ts diff --git a/frontend/blog/tsconfig.app.json b/frontend/blog/tsconfig.app.json new file mode 100644 index 0000000..f2b2ed8 --- /dev/null +++ b/frontend/blog/tsconfig.app.json @@ -0,0 +1,28 @@ +{ + "extends": "../../tsconfig.root.json", + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "target": "ES2022", + "useDefineForClassFields": true, + "lib": ["ES2022", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["src"] +} diff --git a/frontend/blog/tsconfig.json b/frontend/blog/tsconfig.json new file mode 100644 index 0000000..1ffef60 --- /dev/null +++ b/frontend/blog/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/frontend/blog/tsconfig.node.json b/frontend/blog/tsconfig.node.json new file mode 100644 index 0000000..f85a399 --- /dev/null +++ b/frontend/blog/tsconfig.node.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "ES2023", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/frontend/blog/vite.config.ts b/frontend/blog/vite.config.ts new file mode 100644 index 0000000..0e43ae8 --- /dev/null +++ b/frontend/blog/vite.config.ts @@ -0,0 +1,7 @@ +import { defineConfig } from "vite"; +import react from "@vitejs/plugin-react"; + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [react()], +}); diff --git a/playground/graphics/.gitignore b/frontend/design/.gitignore similarity index 100% rename from playground/graphics/.gitignore rename to frontend/design/.gitignore diff --git a/frontend/design/README.md b/frontend/design/README.md new file mode 100644 index 0000000..7959ce4 --- /dev/null +++ b/frontend/design/README.md @@ -0,0 +1,69 @@ +# React + TypeScript + Vite + +This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. + +Currently, two official plugins are available: + +- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) for Fast Refresh +- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh + +## Expanding the ESLint configuration + +If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules: + +```js +export default tseslint.config([ + globalIgnores(['dist']), + { + files: ['**/*.{ts,tsx}'], + extends: [ + // Other configs... + + // Remove tseslint.configs.recommended and replace with this + ...tseslint.configs.recommendedTypeChecked, + // Alternatively, use this for stricter rules + ...tseslint.configs.strictTypeChecked, + // Optionally, add this for stylistic rules + ...tseslint.configs.stylisticTypeChecked, + + // Other configs... + ], + languageOptions: { + parserOptions: { + project: ['./tsconfig.node.json', './tsconfig.app.json'], + tsconfigRootDir: import.meta.dirname, + }, + // other options... + }, + }, +]) +``` + +You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules: + +```js +// eslint.config.js +import reactX from 'eslint-plugin-react-x' +import reactDom from 'eslint-plugin-react-dom' + +export default tseslint.config([ + globalIgnores(['dist']), + { + files: ['**/*.{ts,tsx}'], + extends: [ + // Other configs... + // Enable lint rules for React + reactX.configs['recommended-typescript'], + // Enable lint rules for React DOM + reactDom.configs.recommended, + ], + languageOptions: { + parserOptions: { + project: ['./tsconfig.node.json', './tsconfig.app.json'], + tsconfigRootDir: import.meta.dirname, + }, + // other options... + }, + }, +]) +``` diff --git a/frontend/design/index.html b/frontend/design/index.html new file mode 100644 index 0000000..9ee0d2a --- /dev/null +++ b/frontend/design/index.html @@ -0,0 +1,13 @@ + + + + + + + Vite + React + TS + + +
+ + + diff --git a/frontend/design/package.json b/frontend/design/package.json new file mode 100644 index 0000000..df9cc57 --- /dev/null +++ b/frontend/design/package.json @@ -0,0 +1,36 @@ +{ + "name": "design", + "private": true, + "version": "0.0.0", + "type": "module", + "exports": { + "./style/index.css": "./src/style/index.css", + "./component/action": "./src/component/action/index.ts", + "./component/input": "./src/component/input/index.ts", + "./component/surface": "./src/component/surface/index.ts" + }, + "scripts": { + "dev": "vite", + "build": "tsc -b && vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "@flexive/core": "^0.6.0", + "@flexive/operator": "^0.3.4", + "@radix-ui/colors": "^3.0.0", + "react": "^19.1.0", + "react-dom": "^19.1.0", + "react-router": "^7.9.5", + "types": "workspace:*" + }, + "devDependencies": { + "@types/node": "^24.1.0", + "@types/react": "^19.1.8", + "@types/react-dom": "^19.1.6", + "@vitejs/plugin-react": "^4.6.0", + "sass-embedded": "^1.89.2", + "typescript": "^5", + "vite": "^7.0.4" + } +} diff --git a/frontend/design/src/_preview/App.tsx b/frontend/design/src/_preview/App.tsx new file mode 100644 index 0000000..2070e21 --- /dev/null +++ b/frontend/design/src/_preview/App.tsx @@ -0,0 +1,17 @@ +import { Main } from "@flexive/core"; + +import { Button } from "../component/action"; +import { Card } from "../component/surface/Card"; + +export function App() { + return ( +
+ + + World + +
+ ); +} diff --git a/frontend/design/src/_preview/component/FullPage/index.tsx b/frontend/design/src/_preview/component/FullPage/index.tsx new file mode 100644 index 0000000..b61deaa --- /dev/null +++ b/frontend/design/src/_preview/component/FullPage/index.tsx @@ -0,0 +1,21 @@ +import { Article, type PropsOf } from "@flexive/core"; + +type FullPageProps = PropsOf<"article">; + +export const FullPage = ({ + row, + rowReverse, + sizeC, + sizeM, + ...props +}: FullPageProps) => { + return ( +
+ ); +}; diff --git a/frontend/design/src/_preview/component/GlobalNavigator/index.module.scss b/frontend/design/src/_preview/component/GlobalNavigator/index.module.scss new file mode 100644 index 0000000..9747fee --- /dev/null +++ b/frontend/design/src/_preview/component/GlobalNavigator/index.module.scss @@ -0,0 +1,6 @@ +.GlobalNavigator { + .Tab { + font-size: 1.2em; + font-weight: 300; + } +} diff --git a/frontend/design/src/_preview/component/GlobalNavigator/index.tsx b/frontend/design/src/_preview/component/GlobalNavigator/index.tsx new file mode 100644 index 0000000..2c3dacb --- /dev/null +++ b/frontend/design/src/_preview/component/GlobalNavigator/index.tsx @@ -0,0 +1,29 @@ +import { bindCSS, Header, Li, Ul } from "@flexive/core"; +import type { PropsWithChildren } from "react"; +import { Link } from "react-router"; + +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +export const GlobalNavigator = () => { + return ( +
+
    + Home + Action +
+
+ ); +}; + +type TabProps = PropsWithChildren & { + to: string; +}; +const Tab = ({ to, children }: TabProps) => { + return ( +
  • + {children} +
  • + ); +}; diff --git a/frontend/design/src/_preview/component/PageContent/index.module.scss b/frontend/design/src/_preview/component/PageContent/index.module.scss new file mode 100644 index 0000000..056f995 --- /dev/null +++ b/frontend/design/src/_preview/component/PageContent/index.module.scss @@ -0,0 +1,9 @@ +.Title { + font-size: 10em; + font-weight: 400; + letter-spacing: -0.01em; +} +.TitleSub { + font-weight: 100; + font-size: 0.75em; +} diff --git a/frontend/design/src/_preview/component/PageContent/index.tsx b/frontend/design/src/_preview/component/PageContent/index.tsx new file mode 100644 index 0000000..ccece4f --- /dev/null +++ b/frontend/design/src/_preview/component/PageContent/index.tsx @@ -0,0 +1,39 @@ +import { bindCSS, H1, Main, type PropsOf } from "@flexive/core"; + +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +type ContainerProps = PropsOf<"main">; +const Container = ({ children, ...props }: ContainerProps) => { + return ( +
    + {children} +
    + ); +}; + +type TitleProps = PropsOf<"h1">; +const Title = ({ className, ...props }: TitleProps) => { + return

    ; +}; + +type TitleSubProps = PropsOf<"span">; +const TitleSub = ({ className, ...props }: TitleSubProps) => { + return ; +}; + +type ParagraphProps = PropsOf<"p">; +const Paragraph = ({ className, ...props }: ParagraphProps) => { + return

    ; +}; + +export const PageContent = Object.assign( + {}, + { + Container, + Title, + TitleSub, + Paragraph, + }, +); diff --git a/frontend/design/src/_preview/main.tsx b/frontend/design/src/_preview/main.tsx new file mode 100644 index 0000000..f1de414 --- /dev/null +++ b/frontend/design/src/_preview/main.tsx @@ -0,0 +1,19 @@ +import "../style/index.css"; + +import { StrictMode } from "react"; +import { createRoot } from "react-dom/client"; +import { RouterProvider } from "react-router"; + +import { router } from "./route"; + +const root = document.getElementById("root"); + +if (!root) { + throw new Error("Root element not found"); +} + +createRoot(root).render( + + + , +); diff --git a/frontend/design/src/_preview/route.tsx b/frontend/design/src/_preview/route.tsx new file mode 100644 index 0000000..67af750 --- /dev/null +++ b/frontend/design/src/_preview/route.tsx @@ -0,0 +1,10 @@ +import { createBrowserRouter } from "react-router"; + +import { MainPage } from "./ui/main.page"; + +export const router = createBrowserRouter([ + { + path: "/", + Component: MainPage, + }, +]); diff --git a/playground/tree-shaking/src/App.css b/frontend/design/src/_preview/ui/action/action.module.scss similarity index 100% rename from playground/tree-shaking/src/App.css rename to frontend/design/src/_preview/ui/action/action.module.scss diff --git a/playground/tree-shaking/src/index.css b/frontend/design/src/_preview/ui/action/action.page.tsx similarity index 100% rename from playground/tree-shaking/src/index.css rename to frontend/design/src/_preview/ui/action/action.page.tsx diff --git a/frontend/design/src/_preview/ui/main.module.scss b/frontend/design/src/_preview/ui/main.module.scss new file mode 100644 index 0000000..f9b2780 --- /dev/null +++ b/frontend/design/src/_preview/ui/main.module.scss @@ -0,0 +1,11 @@ +.MainPage { + .title { + font-size: 10em; + font-weight: 400; + letter-spacing: -0.01em; + .sub { + font-weight: 100; + font-size: 0.75em; + } + } +} diff --git a/frontend/design/src/_preview/ui/main.page.tsx b/frontend/design/src/_preview/ui/main.page.tsx new file mode 100644 index 0000000..91eda1d --- /dev/null +++ b/frontend/design/src/_preview/ui/main.page.tsx @@ -0,0 +1,22 @@ +import { bindCSS } from "@flexive/core"; + +import { FullPage } from "../component/FullPage"; +import { GlobalNavigator } from "../component/GlobalNavigator"; +import { PageContent } from "../component/PageContent"; +import styles from "./main.module.scss"; + +const cx = bindCSS(styles); + +export const MainPage = () => { + return ( + + + + + the + Design + + + + ); +}; diff --git a/frontend/design/src/asset/font/sans/freesentation/FreesentationVF.ttf b/frontend/design/src/asset/font/sans/freesentation/FreesentationVF.ttf new file mode 100644 index 0000000..dce6c9e Binary files /dev/null and b/frontend/design/src/asset/font/sans/freesentation/FreesentationVF.ttf differ diff --git a/frontend/design/src/asset/font/sans/freesentation/FreesentationVF.woff2 b/frontend/design/src/asset/font/sans/freesentation/FreesentationVF.woff2 new file mode 100644 index 0000000..0bc4a18 Binary files /dev/null and b/frontend/design/src/asset/font/sans/freesentation/FreesentationVF.woff2 differ diff --git a/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Bold.ttf b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Bold.ttf new file mode 100644 index 0000000..d8b9a03 Binary files /dev/null and b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Bold.ttf differ diff --git a/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Bold.woff2 b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Bold.woff2 new file mode 100644 index 0000000..dd435f2 Binary files /dev/null and b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Bold.woff2 differ diff --git a/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Light.ttf b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Light.ttf new file mode 100644 index 0000000..eae1586 Binary files /dev/null and b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Light.ttf differ diff --git a/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Light.woff2 b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Light.woff2 new file mode 100644 index 0000000..0c32258 Binary files /dev/null and b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Light.woff2 differ diff --git a/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Medium.ttf b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Medium.ttf new file mode 100644 index 0000000..c1e9217 Binary files /dev/null and b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Medium.ttf differ diff --git a/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Medium.woff2 b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Medium.woff2 new file mode 100644 index 0000000..a9b3c38 Binary files /dev/null and b/frontend/design/src/asset/font/sans/kopub/KoPub Dotum Medium.woff2 differ diff --git a/frontend/design/src/asset/font/serif/kopub/KoPub Batang Bold.ttf b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Bold.ttf new file mode 100644 index 0000000..358cbaf Binary files /dev/null and b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Bold.ttf differ diff --git a/frontend/design/src/asset/font/serif/kopub/KoPub Batang Bold.woff2 b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Bold.woff2 new file mode 100644 index 0000000..729d7b1 Binary files /dev/null and b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Bold.woff2 differ diff --git a/frontend/design/src/asset/font/serif/kopub/KoPub Batang Light.ttf b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Light.ttf new file mode 100644 index 0000000..642d22a Binary files /dev/null and b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Light.ttf differ diff --git a/frontend/design/src/asset/font/serif/kopub/KoPub Batang Light.woff2 b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Light.woff2 new file mode 100644 index 0000000..5009940 Binary files /dev/null and b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Light.woff2 differ diff --git a/frontend/design/src/asset/font/serif/kopub/KoPub Batang Medium.ttf b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Medium.ttf new file mode 100644 index 0000000..73cf4ed Binary files /dev/null and b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Medium.ttf differ diff --git a/frontend/design/src/asset/font/serif/kopub/KoPub Batang Medium.woff2 b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Medium.woff2 new file mode 100644 index 0000000..d7a52cf Binary files /dev/null and b/frontend/design/src/asset/font/serif/kopub/KoPub Batang Medium.woff2 differ diff --git a/frontend/design/src/component/action/Button/index.module.scss b/frontend/design/src/component/action/Button/index.module.scss new file mode 100644 index 0000000..f29ac31 --- /dev/null +++ b/frontend/design/src/component/action/Button/index.module.scss @@ -0,0 +1,110 @@ +@use "../../../utility/state"; + +.Button { + --border: none; + --background: var(--c-1-9); + --shadow: 0 2px 4px var(--c-1-8); + --content: var(--c-0-2); + + border: var(--border); + background: var(--background); + box-shadow: var(--shadow); + color: var(--content); + + user-select: none; + transition: all 0.1s ease-in-out; + + @include state.hover() { + --background: var(--c-1-11); + --shadow: 0 2px 8px var(--c-1-6); + } + @include state.active() { + --background: var(--c-1-8); + --shadow: 0 2px 2px var(--c-1-3); + } + @include state.disabled() { + --background: var(--c-0-8) !important; + --shadow: none !important; + --content: var(--c-0-2) !important; + } +} + +// .Button { +// --c-border: none; +// --c-background: var(--c-1-9); +// --c-shadow: 0 0 5px var(--c-1-7); +// --c-content: var(--c-0-2); +// border: var(--c-border); +// background: var(--c-background); +// box-shadow: var(--c-shadow); +// color: var(--c-content); + +// &.pointable { +// &:hover, +// &.hover { +// --c-background: var(--c-1-10); +// --c-shadow: 0 0 5px var(--c-1-5); +// } + +// &:active, +// &.active { +// --c-background: var(--c-1-11); +// --c-shadow: 0 0 2px var(--c-1-3); +// --c-content: var(--c-0-5); +// } +// } + +// &.checkable { +// --c-background: var(--c-0-4); +// --c-shadow: 0 0 2px var(--c-0-5); +// --c-content: var(--c-0-9); + +// &.pointable { +// &:hover, +// &.hover { +// --c-background: var(--c-1-5); +// --c-shadow: 0 0 3px var(--c-1-5); +// --c-content: var(--c-0-2); +// } + +// &:active, +// &.active { +// --c-background: var(--c-1-10); +// --c-shadow: 0 0 2px var(--c-1-3); +// --c-content: var(--c-0-4); +// } +// } + +// &:checked, +// &.checked { +// --c-background: var(--c-1-9); +// --c-shadow: 0 0 5px var(--c-1-7); +// --c-content: var(--c-0-1); + +// &.pointable { +// &:hover, +// &.hover { +// --c-background: var(--c-1-10); +// --c-shadow: 0 0 3px var(--c-1-5); +// --c-content: var(--c-0-2); +// } + +// &:active, +// &.active { +// --c-background: var(--c-1-11); +// --c-shadow: 0 0 2px var(--c-1-3); +// --c-content: var(--c-0-4); +// } +// } +// } +// } + +// &.disablable { +// &:disabled, +// &.disabled { +// --c-background: var(--c-0-8) !important; +// --c-shadow: none !important; +// --c-content: var(--c-0-2) !important; +// } +// } +// } diff --git a/frontend/design/src/component/action/Button/index.tsx b/frontend/design/src/component/action/Button/index.tsx new file mode 100644 index 0000000..891eefa --- /dev/null +++ b/frontend/design/src/component/action/Button/index.tsx @@ -0,0 +1,26 @@ +import { bindCSS, Button as FButton, type PropsOf } from "@flexive/core"; +import type { Ref } from "react"; + +import type { InteractionState } from "../../../style/state/state.types"; +import { cs } from "../../../utility/classnames"; +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +interface ButtonProps extends PropsOf<"button"> { + ref?: Ref; + state?: Omit; +} + +const Button = ({ ref, className, state, ...props }: ButtonProps) => { + return ( + + ); +}; + +export { Button }; +export type { ButtonProps }; diff --git a/frontend/design/src/component/action/index.ts b/frontend/design/src/component/action/index.ts new file mode 100644 index 0000000..e22c29a --- /dev/null +++ b/frontend/design/src/component/action/index.ts @@ -0,0 +1 @@ +export * from "./Button"; diff --git a/service/app/src/ui-blog/home/HomePage/index.module.css b/frontend/design/src/component/input/TextInput/index.module.scss similarity index 100% rename from service/app/src/ui-blog/home/HomePage/index.module.css rename to frontend/design/src/component/input/TextInput/index.module.scss diff --git a/service/app/src/ui-editor/NavigatorLayout/index.module.css b/frontend/design/src/component/input/TextInput/index.tsx similarity index 100% rename from service/app/src/ui-editor/NavigatorLayout/index.module.css rename to frontend/design/src/component/input/TextInput/index.tsx diff --git a/service/app/src/ui-editor/home/HomePage/index.module.css b/frontend/design/src/component/input/index.ts similarity index 100% rename from service/app/src/ui-editor/home/HomePage/index.module.css rename to frontend/design/src/component/input/index.ts diff --git a/frontend/design/src/component/surface/Card/index.module.scss b/frontend/design/src/component/surface/Card/index.module.scss new file mode 100644 index 0000000..ed5f610 --- /dev/null +++ b/frontend/design/src/component/surface/Card/index.module.scss @@ -0,0 +1,11 @@ +.Card { + --border: 1px solid var(--c-0-3); + --background: var(--c-1-0); + --shadow: 0 4px 8px var(--c-0-3); + --content: var(--c-0-11); + + border: var(--border); + background: var(--background); + box-shadow: var(--shadow); + color: var(--content); +} diff --git a/frontend/design/src/component/surface/Card/index.tsx b/frontend/design/src/component/surface/Card/index.tsx new file mode 100644 index 0000000..1559e69 --- /dev/null +++ b/frontend/design/src/component/surface/Card/index.tsx @@ -0,0 +1,21 @@ +import { bindCSS, Div as FDiv, type PropsOf } from "@flexive/core"; + +import type { InteractionState } from "../../../style/state/state.types"; +import { cs } from "../../../utility/classnames"; +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +interface CardProps extends PropsOf<"div"> { + state?: InteractionState; +} + +const Card = ({ className, state, children, ...props }: CardProps) => { + return ( + + {children} + + ); +}; + +export { Card }; diff --git a/service/pilot/src/style/reset/button.css b/frontend/design/src/component/surface/Modal/index.module.scss similarity index 100% rename from service/pilot/src/style/reset/button.css rename to frontend/design/src/component/surface/Modal/index.module.scss diff --git a/frontend/design/src/component/surface/Modal/index.tsx b/frontend/design/src/component/surface/Modal/index.tsx new file mode 100644 index 0000000..6e1a466 --- /dev/null +++ b/frontend/design/src/component/surface/Modal/index.tsx @@ -0,0 +1,15 @@ +import { Article, bindCSS, type PropsOf } from "@flexive/core"; + +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +export type ModalProps = PropsOf<"article">; + +export const Modal = ({ className, children, ...props }: ModalProps) => { + return ( +

    + {children} +
    + ); +}; diff --git a/frontend/design/src/component/surface/Overlay/index.module.scss b/frontend/design/src/component/surface/Overlay/index.module.scss new file mode 100644 index 0000000..1bb0dae --- /dev/null +++ b/frontend/design/src/component/surface/Overlay/index.module.scss @@ -0,0 +1,3 @@ +.Overlay { + background-color: rgba(0, 0, 0, 0.1); +} diff --git a/frontend/design/src/component/surface/Overlay/index.tsx b/frontend/design/src/component/surface/Overlay/index.tsx new file mode 100644 index 0000000..d2c6673 --- /dev/null +++ b/frontend/design/src/component/surface/Overlay/index.tsx @@ -0,0 +1,29 @@ +import { Article, bindCSS, type PropsOf } from "@flexive/core"; +import { useOverlayControl } from "@flexive/operator"; + +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +export type OverlayProps = PropsOf<"article"> & { + preventClose?: boolean; +}; + +export const Overlay = ({ + children, + className, + preventClose, + ...props +}: OverlayProps) => { + const { close } = useOverlayControl(); + + return ( +
    + {children} +
    + ); +}; diff --git a/frontend/design/src/component/surface/Piece/index.module.scss b/frontend/design/src/component/surface/Piece/index.module.scss new file mode 100644 index 0000000..b1b1bb2 --- /dev/null +++ b/frontend/design/src/component/surface/Piece/index.module.scss @@ -0,0 +1,4 @@ +.Piece { + border: 1px solid rgba(0, 0, 0, 0.1); + border-radius: 1em; +} diff --git a/frontend/design/src/component/surface/Piece/index.tsx b/frontend/design/src/component/surface/Piece/index.tsx new file mode 100644 index 0000000..052f58c --- /dev/null +++ b/frontend/design/src/component/surface/Piece/index.tsx @@ -0,0 +1,15 @@ +import { bindCSS, type PropsOf, Section } from "@flexive/core"; + +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +export type PieceProps = PropsOf<"section">; + +export const Piece = ({ className, children, ...props }: PieceProps) => { + return ( +
    + {children} +
    + ); +}; diff --git a/frontend/design/src/component/surface/index.ts b/frontend/design/src/component/surface/index.ts new file mode 100644 index 0000000..8613690 --- /dev/null +++ b/frontend/design/src/component/surface/index.ts @@ -0,0 +1,4 @@ +export * from "./Card"; +export * from "./Modal"; +export * from "./Overlay"; +export * from "./Piece"; diff --git a/frontend/design/src/style/color/theme.scss b/frontend/design/src/style/color/theme.scss new file mode 100644 index 0000000..bea593e --- /dev/null +++ b/frontend/design/src/style/color/theme.scss @@ -0,0 +1,37 @@ +@import "@radix-ui/colors/mauve.css"; +@import "@radix-ui/colors/tomato.css"; +@import "@radix-ui/colors/ruby.css"; +@import "@radix-ui/colors/crimson.css"; +@import "@radix-ui/colors/pink.css"; +@import "@radix-ui/colors/plum.css"; +@import "@radix-ui/colors/purple.css"; +@import "@radix-ui/colors/violet.css"; + +// constants +$themes: mauve, tomato, ruby, crimson, pink, plum, purple, violet; + +// mixin +@mixin theme-colors($groupNum, $groupName) { + @for $i from 1 through 12 { + --c-#{$groupNum}-#{$i}: var(--#{$groupName}-#{$i}); + } +} + +// themes +@each $theme in $themes { + @for $level from 1 through 3 { + .#{"" + $theme}-#{$level} { + @include theme-colors(#{$level}, #{$theme}); + } + } +} + +:root { + @include theme-colors(0, mauve); + @include theme-colors(1, ruby); + @include theme-colors(2, mauve); + @include theme-colors(3, mauve); + @include theme-colors(4, mauve); + @include theme-colors(5, mauve); + @include theme-colors(6, mauve); +} diff --git a/service/pilot/src/ui/codex/CodexPage/CodexPage.module.css b/frontend/design/src/style/color/theme.types.d.ts similarity index 100% rename from service/pilot/src/ui/codex/CodexPage/CodexPage.module.css rename to frontend/design/src/style/color/theme.types.d.ts diff --git a/frontend/design/src/style/font/index.css b/frontend/design/src/style/font/index.css new file mode 100644 index 0000000..56ca402 --- /dev/null +++ b/frontend/design/src/style/font/index.css @@ -0,0 +1,72 @@ +/** sans **/ +/* freesentation */ +@font-face { + font-family: "sans-freesentation"; + src: + url("../../asset/font/sans/freesentation/FreesentationVf.woff2") + format("woff2"), + url("../../asset/font/sans/freesentation/FreesentationVf.ttf") + format("truetype"); + font-weight: 100 900; /* variable font range */ + font-style: normal; + font-display: swap; +} +/* kopub */ +@font-face { + font-family: "sans-kopub"; + src: + url("../../asset/font/sans/kopub/KoPub Dotum Bold.woff2") format("woff2"), + url("../../asset/font/sans/kopub/KoPub Dotum Bold.ttf") format("truetype"); + font-weight: 700; +} +@font-face { + font-family: "sans-kopub"; + src: + url("../../asset/font/sans/kopub/KoPub Dotum Medium.woff2") format("woff2"), + url("../../asset/font/sans/kopub/KoPub Dotum Medium.ttf") format("truetype"); + font-weight: 500; +} +@font-face { + font-family: "sans-kopub"; + src: + url("../../asset/font/sans/kopub/KoPub Dotum Light.woff2") format("woff2"), + url("../../asset/font/sans/kopub/KoPub Dotum Light.ttf") format("truetype"); + font-weight: 300; +} + +/** serif **/ +/* kopub */ +@font-face { + font-family: "serif-kopub"; + src: + url("../../asset/font/serif/kopub/KoPub Batang Bold.woff2") format("woff2"), + url("../../asset/font/serif/kopub/KoPub Batang Bold.ttf") format("truetype"); + font-weight: 700; +} +@font-face { + font-family: "serif-kopub"; + src: + url("../../asset/font/serif/kopub/KoPub Batang Medium.woff2") + format("woff2"), + url("../../asset/font/serif/kopub/KoPub Batang Medium.ttf") + format("truetype"); + font-weight: 500; +} +@font-face { + font-family: "serif-kopub"; + src: + url("../../asset/font/serif/kopub/KoPub Batang Light.woff2") format("woff2"), + url("../../asset/font/serif/kopub/KoPub Batang Light.ttf") + format("truetype"); + font-weight: 300; +} + +:root { + font-family: + "sans-freesentation", + system-ui, + -apple-system, + Segoe UI, + Roboto, + sans-serif; +} diff --git a/frontend/design/src/style/index.css b/frontend/design/src/style/index.css new file mode 100644 index 0000000..36b8cb4 --- /dev/null +++ b/frontend/design/src/style/index.css @@ -0,0 +1,8 @@ +/* reset */ +@import "./reset.css"; + +/* color */ +@import "./color/theme.scss"; + +/* font */ +@import "./font/index.css"; diff --git a/frontend/design/src/style/reset.css b/frontend/design/src/style/reset.css new file mode 100644 index 0000000..178f783 --- /dev/null +++ b/frontend/design/src/style/reset.css @@ -0,0 +1,69 @@ +/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */ +html, +body, +p, +ol, +ul, +li, +dl, +dt, +dd, +blockquote, +figure, +fieldset, +legend, +textarea, +pre, +iframe, +hr, +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 0; + padding: 0; +} +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 100%; + font-weight: normal; +} +ul { + list-style: none; +} +button, +input, +select { + margin: 0; + border: none; +} +html { + box-sizing: border-box; +} +*, +*::before, +*::after { + box-sizing: inherit; +} +img, +video { + height: auto; + max-width: 100%; +} +iframe { + border: 0; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +td, +th { + padding: 0; +} diff --git a/frontend/design/src/style/state/state.types.d.ts b/frontend/design/src/style/state/state.types.d.ts new file mode 100644 index 0000000..53be900 --- /dev/null +++ b/frontend/design/src/style/state/state.types.d.ts @@ -0,0 +1,15 @@ +type StateMap = Partial>; + +type USER_STATE = "hover" | "focus" | "active" | "drag" | "disabled"; +type DATA_STATE = "target" | "busy"; +type VALIDATION_STATE = "valid" | "invalid" | "warning"; + +interface InteractionState { + user?: USER_STATE | StateMap; + data?: DATA_STATE | StateMap; + validation?: VALIDATION_STATE | StateMap; + on?: boolean; + dirty?: boolean; +} + +export type { DATA_STATE, InteractionState, VALIDATION_STATE }; diff --git a/frontend/design/src/utility/classnames.ts b/frontend/design/src/utility/classnames.ts new file mode 100644 index 0000000..10c5ed8 --- /dev/null +++ b/frontend/design/src/utility/classnames.ts @@ -0,0 +1,30 @@ +import type { InteractionState } from "../style/state/state.types"; + +const extractActiveStateClasses = ( + value?: State | Partial>, +): string[] => { + if (!value) return []; + if (typeof value === "string") return [value]; + return Object.entries(value) + .filter(([, isActive]) => Boolean(isActive)) + .map(([stateKey]) => stateKey); +}; + +const cs = (state?: InteractionState) => { + if (!state) return undefined; + const { user, data, validation, on, dirty } = state; + + const classes: string[] = [ + ...extractActiveStateClasses(user), + ...extractActiveStateClasses(data), + ...extractActiveStateClasses(validation), + ...extractActiveStateClasses({ + on, + dirty, + }), + ]; + + return classes.join(" "); +}; + +export { cs }; diff --git a/frontend/design/src/utility/state.scss b/frontend/design/src/utility/state.scss new file mode 100644 index 0000000..9051aa0 --- /dev/null +++ b/frontend/design/src/utility/state.scss @@ -0,0 +1,97 @@ +/* user */ +@mixin disabled($prefix: "&") { + #{$prefix}:disabled, + #{$prefix}.disabled { + cursor: not-allowed; + @content; + } +} + +@mixin enabled($prefix: "&") { + #{$prefix}:not(:disabled):not(.disabled) { + @content; + } +} + +@mixin hover($prefix: "&") { + #{$prefix}:hover, + #{$prefix}.hover { + @include enabled { + cursor: pointer; + @content; + } + } +} + +@mixin focus($prefix: "&") { + #{$prefix}:focus, + #{$prefix}.focus { + @include enabled { + cursor: pointer; + @content; + } + } +} + +@mixin active($prefix: "&") { + #{$prefix}:active, + #{$prefix}.active { + @include enabled { + cursor: pointer; + @content; + } + } +} + +@mixin drag($prefix: "&") { + #{$prefix}.drag { + cursor: grab; + @content; + } +} + +/* data */ +@mixin target($prefix: "&") { + #{$prefix}.target { + @content; + } +} + +@mixin busy($prefix: "&") { + #{$prefix}.busy { + @content; + } +} + +/* validation */ +@mixin valid($prefix: "&") { + #{$prefix}.valid { + @content; + } +} + +@mixin invalid($prefix: "&") { + #{$prefix}.invalid { + @content; + } +} + +@mixin warning($prefix: "&") { + #{$prefix}.warning { + @content; + } +} + +/* on */ +@mixin on($prefix: "&") { + #{$prefix}.on { + @content; + } +} + +/* dirty */ +@mixin dirty($prefix: "&") { + #{$prefix}.dirty { + @content; + } +} diff --git a/playground/graphics/src/vite-env.d.ts b/frontend/design/src/vite-env.d.ts similarity index 100% rename from playground/graphics/src/vite-env.d.ts rename to frontend/design/src/vite-env.d.ts diff --git a/frontend/design/tsconfig.app.json b/frontend/design/tsconfig.app.json new file mode 100644 index 0000000..227a6c6 --- /dev/null +++ b/frontend/design/tsconfig.app.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "target": "ES2022", + "useDefineForClassFields": true, + "lib": ["ES2022", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["src"] +} diff --git a/frontend/design/tsconfig.json b/frontend/design/tsconfig.json new file mode 100644 index 0000000..1ffef60 --- /dev/null +++ b/frontend/design/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/frontend/design/tsconfig.node.json b/frontend/design/tsconfig.node.json new file mode 100644 index 0000000..f85a399 --- /dev/null +++ b/frontend/design/tsconfig.node.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "ES2023", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/frontend/design/vite.config.ts b/frontend/design/vite.config.ts new file mode 100644 index 0000000..9d61751 --- /dev/null +++ b/frontend/design/vite.config.ts @@ -0,0 +1,12 @@ +import { defineConfig } from "vite"; + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [], + build: { + modulePreload: false, + rollupOptions: { + external: ["./module", "types/test"], + }, + }, +}); diff --git a/frontend/desk/README.md b/frontend/desk/README.md new file mode 100644 index 0000000..10e1545 --- /dev/null +++ b/frontend/desk/README.md @@ -0,0 +1,69 @@ +# React + TypeScript + Vite + +This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. + +Currently, two official plugins are available: + +- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) for Fast Refresh +- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh + +## Expanding the ESLint configuration + +If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules: + +```js +export default tseslint.config([ + globalIgnores(["dist"]), + { + files: ["**/*.{ts,tsx}"], + extends: [ + // Other configs... + + // Remove tseslint.configs.recommended and replace with this + ...tseslint.configs.recommendedTypeChecked, + // Alternatively, use this for stricter rules + ...tseslint.configs.strictTypeChecked, + // Optionally, add this for stylistic rules + ...tseslint.configs.stylisticTypeChecked, + + // Other configs... + ], + languageOptions: { + parserOptions: { + project: ["./tsconfig.node.json", "./tsconfig.app.json"], + tsconfigRootDir: import.meta.dirname, + }, + // other options... + }, + }, +]); +``` + +You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules: + +```js +// eslint.config.js +import reactX from "eslint-plugin-react-x"; +import reactDom from "eslint-plugin-react-dom"; + +export default tseslint.config([ + globalIgnores(["dist"]), + { + files: ["**/*.{ts,tsx}"], + extends: [ + // Other configs... + // Enable lint rules for React + reactX.configs["recommended-typescript"], + // Enable lint rules for React DOM + reactDom.configs.recommended, + ], + languageOptions: { + parserOptions: { + project: ["./tsconfig.node.json", "./tsconfig.app.json"], + tsconfigRootDir: import.meta.dirname, + }, + // other options... + }, + }, +]); +``` diff --git a/frontend/desk/desktop/main/index.ts b/frontend/desk/desktop/main/index.ts new file mode 100644 index 0000000..aef156f --- /dev/null +++ b/frontend/desk/desktop/main/index.ts @@ -0,0 +1,78 @@ +import { electronApp, is } from "@electron-toolkit/utils"; +import { app, BrowserWindow, ipcMain, shell } from "electron"; +import { join } from "path"; + +import icon from "../resource/icon.png"; + +function createWindow(): void { + // Create the browser window. + const mainWindow = new BrowserWindow({ + width: 900, + height: 670, + show: false, + autoHideMenuBar: true, + ...(process.platform === "linux" ? { icon } : {}), + webPreferences: { + // preload: join(__dirname, "../preload/index.js"), + // sandbox: false, + }, + }); + + mainWindow.on("ready-to-show", () => { + mainWindow.show(); + }); + + mainWindow.webContents.setWindowOpenHandler(details => { + void shell.openExternal(details.url); + return { action: "deny" }; + }); + + // HMR for renderer base on electron-vite cli. + // Load the remote URL for development or the local html file for production. + if (is.dev && process.env.ELECTRON_RENDERER_URL) { + void mainWindow.loadURL(process.env.ELECTRON_RENDERER_URL); + } else { + void mainWindow.loadFile(join(__dirname, "../renderer/index.html")); + } +} + +// This method will be called when Electron has finished +// initialization and is ready to create browser windows. +// Some APIs can only be used after this event occurs. +void app.whenReady().then(() => { + // Set app user model id for windows + electronApp.setAppUserModelId("com.electron"); + + // Default open or close DevTools by F12 in development + // and ignore CommandOrControl + R in production. + // see https://github.com/alex8088/electron-toolkit/tree/master/packages/utils + app.on("browser-window-created", (_, window) => { + window.webContents.openDevTools(); + // optimizer.watchWindowShortcuts(window); + }); + + // IPC test + ipcMain.on("ping", () => { + console.log("pong"); + }); + + createWindow(); + + app.on("activate", function () { + // On macOS it's common to re-create a window in the app when the + // dock icon is clicked and there are no other windows open. + if (BrowserWindow.getAllWindows().length === 0) createWindow(); + }); +}); + +// Quit when all windows are closed, except on macOS. There, it's common +// for applications and their menu bar to stay active until the user quits +// explicitly with Cmd + Q. +app.on("window-all-closed", () => { + if (process.platform !== "darwin") { + app.quit(); + } +}); + +// In this file you can include the rest of your app's specific main process +// code. You can also put them in separate files and require them here. diff --git a/service/pilot/src/ui/index/IndexNavigator/IndexNavigator.module.css b/frontend/desk/desktop/preload/index.ts similarity index 100% rename from service/pilot/src/ui/index/IndexNavigator/IndexNavigator.module.css rename to frontend/desk/desktop/preload/index.ts diff --git a/frontend/desk/desktop/renderer/index.html b/frontend/desk/desktop/renderer/index.html new file mode 100644 index 0000000..72161ab --- /dev/null +++ b/frontend/desk/desktop/renderer/index.html @@ -0,0 +1,12 @@ + + + + + + The Desk + + +
    + + + diff --git a/frontend/desk/desktop/renderer/src/HistoryRecorder/index.tsx b/frontend/desk/desktop/renderer/src/HistoryRecorder/index.tsx new file mode 100644 index 0000000..2cc1b53 --- /dev/null +++ b/frontend/desk/desktop/renderer/src/HistoryRecorder/index.tsx @@ -0,0 +1,21 @@ +import { useEffect } from "react"; +import { Outlet, useLocation } from "react-router-dom"; + +import { + getHistoryFromSessionStorage, + saveHistoryToSessionStorage, +} from "../history"; + +export const HistoryRecorder = () => { + const location = useLocation(); + + useEffect(() => { + const history = getHistoryFromSessionStorage(); + if (history[history.length - 1] !== location.pathname) { + history.push(location.pathname); + saveHistoryToSessionStorage(history); + } + }, [location.pathname]); + + return ; +}; diff --git a/frontend/desk/desktop/renderer/src/desktop.router.tsx b/frontend/desk/desktop/renderer/src/desktop.router.tsx new file mode 100644 index 0000000..f5c1b40 --- /dev/null +++ b/frontend/desk/desktop/renderer/src/desktop.router.tsx @@ -0,0 +1,23 @@ +import { createMemoryRouter } from "react-router-dom"; + +import { rootRoutes } from "@/ui/root.routes"; + +import { getHistoryFromSessionStorage } from "./history"; +import { HistoryRecorder } from "./HistoryRecorder"; + +const desktopRoutes = [ + { + path: "", + element: , + children: rootRoutes, + }, +]; + +const history = getHistoryFromSessionStorage(); + +const desktopRouter = createMemoryRouter(desktopRoutes, { + initialEntries: history, + initialIndex: history.length - 1, +}); + +export { desktopRouter }; diff --git a/frontend/desk/desktop/renderer/src/history.ts b/frontend/desk/desktop/renderer/src/history.ts new file mode 100644 index 0000000..acf57db --- /dev/null +++ b/frontend/desk/desktop/renderer/src/history.ts @@ -0,0 +1,27 @@ +import z from "zod"; + +const MEMORY_ROUTER_HISTORY_KEY = "memory-router-history"; + +const getHistoryFromSessionStorage = (): string[] => { + try { + const history = z + .string() + .array() + .parse( + JSON.parse(sessionStorage.getItem(MEMORY_ROUTER_HISTORY_KEY) ?? ""), + ); + if (history.length === 0) { + return ["/"]; + } + + return history; + } catch { + return ["/"]; + } +}; + +const saveHistoryToSessionStorage = (history: string[]) => { + sessionStorage.setItem(MEMORY_ROUTER_HISTORY_KEY, JSON.stringify(history)); +}; + +export { getHistoryFromSessionStorage, saveHistoryToSessionStorage }; diff --git a/frontend/desk/desktop/renderer/src/main.tsx b/frontend/desk/desktop/renderer/src/main.tsx new file mode 100644 index 0000000..4d7bd6b --- /dev/null +++ b/frontend/desk/desktop/renderer/src/main.tsx @@ -0,0 +1,17 @@ +import { StrictMode } from "react"; +import { createRoot } from "react-dom/client"; +import { RouterProvider } from "react-router-dom"; + +import { desktopRouter } from "./desktop.router"; + +const root = document.getElementById("root"); + +if (!root) { + throw new Error("Root element not found"); +} + +createRoot(root).render( + + + , +); diff --git a/frontend/desk/desktop/resource/icon.png b/frontend/desk/desktop/resource/icon.png new file mode 100644 index 0000000..cf9e8b2 Binary files /dev/null and b/frontend/desk/desktop/resource/icon.png differ diff --git a/frontend/desk/electron-builder.yml b/frontend/desk/electron-builder.yml new file mode 100644 index 0000000..18d2023 --- /dev/null +++ b/frontend/desk/electron-builder.yml @@ -0,0 +1,48 @@ +appId: com.designdefined.codec.desk.test +productName: The Desk +directories: + buildResources: build + output: desktop/dist/${version} +files: + - "!**/.vscode/*" + - "!**/.cursor/*" + - "!src/*" + - "!web/*" + - "!vite.config.{js,ts,mjs,cjs}" + - "!*.vite.config.{js,ts,mjs,cjs}" + - "!electron.vite.config.{js,ts,mjs,cjs}" + - "!{.eslintcache,eslint.config.mjs,.prettierignore,.prettierrc.yaml,dev-app-update.yml,CHANGELOG.md,README.md}" + - "!{.env,.env.*,.npmrc,pnpm-lock.yaml}" + - "!{tsconfig.json,tsconfig.node.json,tsconfig.web.json,tsconfig.*.json}" +asarUnpack: + - desktop/resource/** +win: + executableName: electron-vite +nsis: + artifactName: ${name}-${version}-setup.${ext} + shortcutName: ${productName} + uninstallDisplayName: ${productName} + createDesktopShortcut: always +mac: + entitlementsInherit: build/entitlements.mac.plist + extendInfo: + - NSCameraUsageDescription: Application requests access to the device's camera. + - NSMicrophoneUsageDescription: Application requests access to the device's microphone. + - NSDocumentsFolderUsageDescription: Application requests access to the user's Documents folder. + - NSDownloadsFolderUsageDescription: Application requests access to the user's Downloads folder. + notarize: false +dmg: + artifactName: ${name}-${version}.${ext} +linux: + target: + - AppImage + - snap + - deb + maintainer: designdefined + category: Utility +appImage: + artifactName: ${name}-${version}.${ext} +npmRebuild: false +publish: + provider: generic + url: https://example.com/auto-updates diff --git a/frontend/desk/electron.vite.config.ts b/frontend/desk/electron.vite.config.ts new file mode 100644 index 0000000..c6c2768 --- /dev/null +++ b/frontend/desk/electron.vite.config.ts @@ -0,0 +1,45 @@ +import { resolve } from "node:path"; + +import react from "@vitejs/plugin-react"; +import { defineConfig, externalizeDepsPlugin } from "electron-vite"; +import tsconfigPaths from "vite-tsconfig-paths"; + +const SRC_DIR = resolve(__dirname, "desktop"); +const OUT_DIR = resolve(__dirname, "desktop/out"); + +export default defineConfig(() => { + return { + main: { + plugins: [externalizeDepsPlugin()], + publicDir: resolve(SRC_DIR, "resource"), + build: { + outDir: resolve(OUT_DIR, "main"), + lib: { + entry: resolve(SRC_DIR, "main/index.ts"), + }, + }, + }, + preload: { + plugins: [externalizeDepsPlugin()], + publicDir: resolve(SRC_DIR, "resource"), + build: { + outDir: resolve(OUT_DIR, "preload"), + lib: { + entry: resolve(SRC_DIR, "preload/index.ts"), + }, + }, + }, + renderer: { + plugins: [react(), tsconfigPaths()], + root: resolve(SRC_DIR, "renderer"), + build: { + outDir: resolve(OUT_DIR, "renderer"), + rollupOptions: { + input: { + main: resolve(SRC_DIR, "renderer/index.html"), + }, + }, + }, + }, + }; +}); diff --git a/frontend/desk/index.html b/frontend/desk/index.html new file mode 100644 index 0000000..d29ee50 --- /dev/null +++ b/frontend/desk/index.html @@ -0,0 +1,13 @@ + + + + + + + The Desk + + +
    + + + diff --git a/frontend/desk/package.json b/frontend/desk/package.json new file mode 100644 index 0000000..7cdfb2f --- /dev/null +++ b/frontend/desk/package.json @@ -0,0 +1,61 @@ +{ + "name": "desk", + "private": true, + "version": "0.0.0", + "type": "module", + "main": "desktop/out/main/index.js", + "scripts": { + "dev": "vite dev", + "build": "tsc -b && vite build", + "preview": "vite preview", + "web:build": "vite build --config web.vite.config.ts", + "web:preview": "vite preview --config web.vite.config.ts", + "desktop:dev": "electron-vite dev --config electron.vite.config.ts", + "desktop:build": "electron-vite build --config electron.vite.config.ts", + "desktop:preview": "electron-vite preview --config electron.vite.config.ts", + "desktop:build-unpack": "yarn desktop:build && electron-builder --dir", + "desktop:build-win": "yarn desktop:build && electron-builder --win", + "desktop:build-mac": "yarn desktop:build && electron-builder --mac", + "desktop:build-linux": "yarn desktop:build && electron-builder --linux", + "lint:check": "eslint .", + "lint:fix": "eslint --fix ." + }, + "dependencies": { + "@electron-toolkit/preload": "^3.0.2", + "@electron-toolkit/utils": "^4.0.0", + "@enun/react": "^0.4.1", + "@enun/state": "^0.1.1", + "@flexive/core": "^0.6.0", + "@flexive/operator": "^0.3.4", + "@tanstack/react-query": "^5.90.2", + "design": "workspace:^", + "electron-updater": "6.6.2", + "iconoir-react": "^7.11.0", + "ky": "^1.8.2", + "module": "workspace:^", + "react": "^19.1.0", + "react-dom": "^19.1.0", + "react-router-dom": "6.30.1", + "zod": "^4.0.5" + }, + "devDependencies": { + "@eslint/js": "^9.30.1", + "@types/node": "^24.0.15", + "@types/react": "^19.1.8", + "@types/react-dom": "^19.1.6", + "@vitejs/plugin-react": "^4.6.0", + "electron": "^37.2.3", + "electron-builder": "26.0.12", + "electron-vite": "^4.0.0", + "eslint": "^9.30.1", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-react-refresh": "^0.4.20", + "globals": "^16.3.0", + "sass-embedded": "^1.89.2", + "types": "workspace:^", + "typescript": "~5.8.3", + "typescript-eslint": "^8.35.1", + "vite": "^7.0.4", + "vite-tsconfig-paths": "^5.1.4" + } +} diff --git a/frontend/desk/src/api/index.ts b/frontend/desk/src/api/index.ts new file mode 100644 index 0000000..ddd7e29 --- /dev/null +++ b/frontend/desk/src/api/index.ts @@ -0,0 +1,7 @@ +import ky from "ky"; + +const cmsApi = ky.create({ + prefixUrl: "http://localhost:8080", +}); + +export { cmsApi }; diff --git a/frontend/desk/src/asset/icon.png b/frontend/desk/src/asset/icon.png new file mode 100644 index 0000000..cf9e8b2 Binary files /dev/null and b/frontend/desk/src/asset/icon.png differ diff --git a/frontend/desk/src/component/context/RepositoryContext.tsx b/frontend/desk/src/component/context/RepositoryContext.tsx new file mode 100644 index 0000000..f2a5ba4 --- /dev/null +++ b/frontend/desk/src/component/context/RepositoryContext.tsx @@ -0,0 +1,10 @@ +import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; +import type { PropsWithChildren } from "react"; + +const queryClient = new QueryClient(); + +export const RepositoryContext = ({ children }: PropsWithChildren) => { + return ( + {children} + ); +}; diff --git a/frontend/desk/src/component/layout/Page/index.tsx b/frontend/desk/src/component/layout/Page/index.tsx new file mode 100644 index 0000000..f714de9 --- /dev/null +++ b/frontend/desk/src/component/layout/Page/index.tsx @@ -0,0 +1,6 @@ +import { Article, type PropsOf } from "@flexive/core"; + +type PageProps = PropsOf<"article">; +export const Page = ({ children, ...props }: PageProps) => { + return
    {children}
    ; +}; diff --git a/frontend/desk/src/main.tsx b/frontend/desk/src/main.tsx new file mode 100644 index 0000000..ed3cc0d --- /dev/null +++ b/frontend/desk/src/main.tsx @@ -0,0 +1,22 @@ +import "design/style/index.css"; + +import { StrictMode } from "react"; +import { createRoot } from "react-dom/client"; +import { RouterProvider } from "react-router-dom"; + +import { RepositoryContext } from "./component/context/RepositoryContext"; +import { router } from "./router"; + +const root = document.getElementById("root"); + +if (!root) { + throw new Error("Root element not found"); +} + +createRoot(root).render( + + + + + , +); diff --git a/frontend/desk/src/router.ts b/frontend/desk/src/router.ts new file mode 100644 index 0000000..d8cbb6f --- /dev/null +++ b/frontend/desk/src/router.ts @@ -0,0 +1,7 @@ +import { createBrowserRouter } from "react-router-dom"; + +import { rootRoutes } from "./ui/root.routes"; + +const router = createBrowserRouter(rootRoutes); + +export { router }; diff --git a/frontend/desk/src/state/repository/_core.ts b/frontend/desk/src/state/repository/_core.ts new file mode 100644 index 0000000..a8e5a02 --- /dev/null +++ b/frontend/desk/src/state/repository/_core.ts @@ -0,0 +1,4 @@ +import { mutationOptions, queryOptions } from "@tanstack/react-query"; + +export const query = queryOptions; +export const mutation = mutationOptions; diff --git a/frontend/desk/src/state/repository/_hook.ts b/frontend/desk/src/state/repository/_hook.ts new file mode 100644 index 0000000..a0a68ff --- /dev/null +++ b/frontend/desk/src/state/repository/_hook.ts @@ -0,0 +1,4 @@ +import { useMutation, useSuspenseQuery } from "@tanstack/react-query"; + +export const useRepoQuery = useSuspenseQuery; +export const useRepoMutation = useMutation; diff --git a/frontend/desk/src/state/repository/index.dto.ts b/frontend/desk/src/state/repository/index.dto.ts new file mode 100644 index 0000000..6b71bd4 --- /dev/null +++ b/frontend/desk/src/state/repository/index.dto.ts @@ -0,0 +1,81 @@ +import type { Index } from "shared/types/src/index.types"; +import type { Slug } from "shared/types/src/slug.types"; +import z from "zod"; + +// Query +export type IndexesQueryOutput = { + indexes: Index[]; +}; + +export type IndexQueryOutput = { + index: Index; +}; + +export type IndexBodyQueryOutput = { + body: string; +}; + +export type IndexSlugsQueryOutput = { + slugs: Slug[]; +}; + +// Mutation +export const CreateIndexInput = z.object({ + name: z.string(), +}); +export type CreateIndexInput = z.infer; + +export type CreateIndexOutput = { + index: Index; +}; + +export const CreateIndexSlugInput = z.object({ + slug: z.string(), + type: z.enum(["PUBLIC", "PRIVATE"]), +}); +export type CreateIndexSlugInput = z.infer; + +export type CreateIndexSlugOutput = { + index: Index; + slug: Slug; +}; + +export const UpdateIndexInput = z + .object({ + name: z.string(), + description: z.string(), + }) + .partial(); +export type UpdateIndexInput = z.infer; + +export type UpdateIndexOutput = { + index: Index; +}; + +export const UpdateIndexBodyInput = z.object({ + body: z.string(), +}); +export type UpdateIndexBodyInput = z.infer; + +export type UpdateIndexBodyOutput = { + index: Index; + body: string; +}; + +export const UpdateIndexSlugInput = z.object({ + slug: z.string(), +}); +export type UpdateIndexSlugInput = z.infer; + +export type UpdateIndexSlugOutput = { + index: Index; + slug: Slug; +}; + +export type DeleteIndexOutput = { + success: boolean; +}; + +export type DeleteIndexSlugOutput = { + success: boolean; +}; diff --git a/frontend/desk/src/state/repository/index.repository.ts b/frontend/desk/src/state/repository/index.repository.ts new file mode 100644 index 0000000..8ab4e44 --- /dev/null +++ b/frontend/desk/src/state/repository/index.repository.ts @@ -0,0 +1,54 @@ +import type { Index } from "shared/types/src/index.types"; + +import { cmsApi } from "@/api"; + +import { mutation, query } from "./_core"; +import { + CreateIndexInput, + type IndexesQueryOutput, + type IndexQueryOutput, + UpdateIndexInput, +} from "./index.dto"; + +const key = ["indexes"]; +const prefix = "indexes"; + +// Query +const indexes = () => + query({ + queryKey: [...key], + queryFn: () => cmsApi.get(prefix).json(), + }); + +const index = (id: Index["id"]) => + query({ + queryKey: [...key, { indexId: id }], + queryFn: () => + cmsApi.get(`${prefix}/${id.toString()}`).json(), + }); + +export const indexQuery = { + indexes, + index, +}; + +// Mutation +const create = (json: CreateIndexInput) => + mutation({ + mutationKey: [...key], + mutationFn: () => cmsApi.post<{ index: Index }>(prefix, { json }).json(), + }); + +const update = (id: Index["id"], json: UpdateIndexInput) => + mutation({ + mutationKey: [...key, { indexId: id }], + mutationFn: () => + cmsApi + .put<{ index: Index }>(`${prefix}/${id.toString()}`, { json }) + .json(), + }); + +export const indexMutation = { + create, + update, +}; diff --git a/frontend/desk/src/ui/home/DashboardCard/index.tsx b/frontend/desk/src/ui/home/DashboardCard/index.tsx new file mode 100644 index 0000000..0fbc6f2 --- /dev/null +++ b/frontend/desk/src/ui/home/DashboardCard/index.tsx @@ -0,0 +1,10 @@ +import { Card } from "frontend/design/src/component/surface"; +import type { PropsWithChildren } from "react"; + +export const DashboardCard = ({ children }: PropsWithChildren) => { + return ( + + {children} + + ); +}; diff --git a/frontend/desk/src/ui/home/DashboardHeader/index.module.scss b/frontend/desk/src/ui/home/DashboardHeader/index.module.scss new file mode 100644 index 0000000..6a3b629 --- /dev/null +++ b/frontend/desk/src/ui/home/DashboardHeader/index.module.scss @@ -0,0 +1,4 @@ +.DashboardHeader { + .title { + } +} diff --git a/frontend/desk/src/ui/home/DashboardHeader/index.tsx b/frontend/desk/src/ui/home/DashboardHeader/index.tsx new file mode 100644 index 0000000..2c80823 --- /dev/null +++ b/frontend/desk/src/ui/home/DashboardHeader/index.tsx @@ -0,0 +1,22 @@ +import { bindCSS, H2, Header } from "@flexive/core"; +import type { PropsWithChildren } from "react"; + +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +type DashboardHeaderProps = PropsWithChildren & { + title: string; + to?: string; +}; + +export const DashboardHeader = ({ children, title }: DashboardHeaderProps) => { + return ( +
    +

    + {title} +

    + {children} +
    + ); +}; diff --git a/frontend/desk/src/ui/home/IndexDashboard/IndexItem/index.module.scss b/frontend/desk/src/ui/home/IndexDashboard/IndexItem/index.module.scss new file mode 100644 index 0000000..08b49a9 --- /dev/null +++ b/frontend/desk/src/ui/home/IndexDashboard/IndexItem/index.module.scss @@ -0,0 +1,4 @@ +.IndexItem { + padding: 12px; + border-bottom: 1px solid var(--c-0-3); +} diff --git a/frontend/desk/src/ui/home/IndexDashboard/IndexItem/index.tsx b/frontend/desk/src/ui/home/IndexDashboard/IndexItem/index.tsx new file mode 100644 index 0000000..a6c7908 --- /dev/null +++ b/frontend/desk/src/ui/home/IndexDashboard/IndexItem/index.tsx @@ -0,0 +1,20 @@ +import { bindCSS, Li } from "@flexive/core"; +import { Link } from "react-router-dom"; +import type { Index } from "shared/types/src/index.types"; + +import styles from "./index.module.scss"; + +const cx = bindCSS(styles); + +interface IndexItemProps { + index: Index; +} +export const IndexItem = ({ index }: IndexItemProps) => { + return ( + +
  • + {index.name} +
  • + + ); +}; diff --git a/frontend/desk/src/ui/home/IndexDashboard/index.module.scss b/frontend/desk/src/ui/home/IndexDashboard/index.module.scss new file mode 100644 index 0000000..6e3903a --- /dev/null +++ b/frontend/desk/src/ui/home/IndexDashboard/index.module.scss @@ -0,0 +1,12 @@ +// @use "design/style/utility/state" as state; + +.IndexDashboardHeader { + border-bottom: 1px solid var(--c-0-4); + background-color: var(--c-0-2); + font-size: 20px; +} + +.IndexItem { + padding: 12px; + border-bottom: 1px solid var(--c-0-3); +} diff --git a/frontend/desk/src/ui/home/IndexDashboard/index.tsx b/frontend/desk/src/ui/home/IndexDashboard/index.tsx new file mode 100644 index 0000000..e7de6c9 --- /dev/null +++ b/frontend/desk/src/ui/home/IndexDashboard/index.tsx @@ -0,0 +1,41 @@ +import { bindCSS, Ul } from "@flexive/core"; +import { useOverlay } from "@flexive/operator"; +import { Button } from "design/component/action"; +import { Plus } from "iconoir-react"; +import { createPortal } from "react-dom"; + +import { useRepoQuery } from "@/state/repository/_hook"; +import { indexQuery } from "@/state/repository/index.repository"; + +import { DashboardHeader } from "../DashboardHeader"; +import styles from "./index.module.scss"; +import { IndexItem } from "./IndexItem"; + +const cx = bindCSS(styles); + +export const IndexDashboard = () => { + const { + data: { indexes }, + } = useRepoQuery(indexQuery.indexes()); + + const { overlay, open } = useOverlay(createPortal); + + return ( + <> + + + + +
      + {indexes.map(index => ( + + ))} +
    + {overlay(null)} + + ); +}; diff --git a/frontend/desk/src/ui/home/home.page.tsx b/frontend/desk/src/ui/home/home.page.tsx new file mode 100644 index 0000000..25edc5b --- /dev/null +++ b/frontend/desk/src/ui/home/home.page.tsx @@ -0,0 +1,25 @@ +import { Article, Div, Main } from "@flexive/core"; + +import { DashboardCard } from "./DashboardCard"; +import { IndexDashboard } from "./IndexDashboard"; + +export const HomePage = () => { + return ( +
    +
    +
    +
    + + + + +
    +
    + + +
    +
    +
    +
    + ); +}; diff --git a/frontend/desk/src/ui/indexes/CreateIndexModal/index.tsx b/frontend/desk/src/ui/indexes/CreateIndexModal/index.tsx new file mode 100644 index 0000000..460f5f1 --- /dev/null +++ b/frontend/desk/src/ui/indexes/CreateIndexModal/index.tsx @@ -0,0 +1,5 @@ +import { H1 } from "@flexive/core"; + +export const CreateIndexWidget = () => { + return

    Create Index

    ; +}; diff --git a/service/pilot/src/ui/index/IndexPage/IndexPage.module.css b/frontend/desk/src/ui/indexes/IndexList/IndexItem/index.tsx similarity index 100% rename from service/pilot/src/ui/index/IndexPage/IndexPage.module.css rename to frontend/desk/src/ui/indexes/IndexList/IndexItem/index.tsx diff --git a/frontend/desk/src/ui/indexes/IndexList/index.tsx b/frontend/desk/src/ui/indexes/IndexList/index.tsx new file mode 100644 index 0000000..af64e88 --- /dev/null +++ b/frontend/desk/src/ui/indexes/IndexList/index.tsx @@ -0,0 +1,3 @@ +export const IndexList = () => { + return
    IndexList
    ; +}; diff --git a/frontend/desk/src/ui/indexes/[index]/index.layout.tsx b/frontend/desk/src/ui/indexes/[index]/index.layout.tsx new file mode 100644 index 0000000..7bd49c3 --- /dev/null +++ b/frontend/desk/src/ui/indexes/[index]/index.layout.tsx @@ -0,0 +1,24 @@ +import { States } from "@enun/react"; +import { IndexState } from "module/index"; +import { useMemo } from "react"; +import { Outlet, useParams } from "react-router-dom"; +import z from "zod"; + +export function IndexLayout() { + const indexId = useIndexId(); + + return ( + + + + ); +} + +const useIndexId = () => { + const { indexId } = useParams(); + const parsedId = useMemo(() => { + return z.coerce.number().parse(indexId); + }, [indexId]); + + return parsedId; +}; diff --git a/frontend/desk/src/ui/indexes/[index]/index.page.tsx b/frontend/desk/src/ui/indexes/[index]/index.page.tsx new file mode 100644 index 0000000..c5ea0bf --- /dev/null +++ b/frontend/desk/src/ui/indexes/[index]/index.page.tsx @@ -0,0 +1,19 @@ +import { useStateOf } from "@enun/react"; +import { IndexState } from "module/index"; + +export function IndexPage() { + const { + value: { name, setName }, + } = useStateOf(IndexState); + + return ( +
    + { + setName(e.target.value); + }} + /> +
    + ); +} diff --git a/frontend/desk/src/ui/indexes/indexes.page.tsx b/frontend/desk/src/ui/indexes/indexes.page.tsx new file mode 100644 index 0000000..8c3920f --- /dev/null +++ b/frontend/desk/src/ui/indexes/indexes.page.tsx @@ -0,0 +1,22 @@ +import { H1, Main } from "@flexive/core"; +import { Piece } from "design/component/surface"; + +import { Page } from "@/component/layout/Page"; + +import { IndexList } from "./IndexList"; + +export const IndexesPage = () => { + return ( + +

    + Indexes Page +

    +
    + + + + +
    +
    + ); +}; diff --git a/frontend/desk/src/ui/indexes/indexes.routes.tsx b/frontend/desk/src/ui/indexes/indexes.routes.tsx new file mode 100644 index 0000000..fa4ef00 --- /dev/null +++ b/frontend/desk/src/ui/indexes/indexes.routes.tsx @@ -0,0 +1,26 @@ +import type { RouteObject } from "react-router-dom"; + +import { IndexesPage } from "./indexes.page"; + +const indexesRoutes: RouteObject[] = [ + { + path: "", + element: , + }, + { + // path: ":indexId", + // element: ( + // + // + // + // ), + // children: [ + // { + // path: "", + // element: , + // }, + // ], + }, +]; + +export { indexesRoutes }; diff --git a/frontend/desk/src/ui/root.layout.tsx b/frontend/desk/src/ui/root.layout.tsx new file mode 100644 index 0000000..21311c5 --- /dev/null +++ b/frontend/desk/src/ui/root.layout.tsx @@ -0,0 +1,10 @@ +import { Article } from "@flexive/core"; +import { Outlet } from "react-router-dom"; + +export const RootLayout = () => { + return ( +
    + +
    + ); +}; diff --git a/frontend/desk/src/ui/root.routes.tsx b/frontend/desk/src/ui/root.routes.tsx new file mode 100644 index 0000000..9a30ef1 --- /dev/null +++ b/frontend/desk/src/ui/root.routes.tsx @@ -0,0 +1,25 @@ +import type { RouteObject } from "react-router-dom"; + +import { HomePage } from "./home/home.page"; +import { indexesRoutes } from "./indexes/indexes.routes"; +// import { indexesRoutes } from "./indexes/indexes.routes"; +import { RootLayout } from "./root.layout"; + +const rootRoutes: RouteObject[] = [ + { + path: "", + element: , + children: [ + { + path: "", + element: , + }, + { + path: "indexes", + children: indexesRoutes, + }, + ], + }, +]; + +export { rootRoutes }; diff --git a/playground/static-site-generation/src/vite-env.d.ts b/frontend/desk/src/vite-env.d.ts similarity index 100% rename from playground/static-site-generation/src/vite-env.d.ts rename to frontend/desk/src/vite-env.d.ts diff --git a/frontend/desk/tsconfig.app.json b/frontend/desk/tsconfig.app.json new file mode 100644 index 0000000..db6bdd2 --- /dev/null +++ b/frontend/desk/tsconfig.app.json @@ -0,0 +1,34 @@ +{ + "extends": "../../tsconfig.root.json", + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "target": "ES2022", + "useDefineForClassFields": true, + "lib": ["ES2022", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true, + + "paths": { + "@/*": ["./frontend/desk/src/*"], + "@web/*": ["./frontend/desk/web/*"], + "@desktop/*": ["./frontend/desk/desktop/*"] + } + }, + "include": ["src", "web", "desktop"] +} diff --git a/frontend/desk/tsconfig.json b/frontend/desk/tsconfig.json new file mode 100644 index 0000000..1ffef60 --- /dev/null +++ b/frontend/desk/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/frontend/desk/tsconfig.node.json b/frontend/desk/tsconfig.node.json new file mode 100644 index 0000000..63417f5 --- /dev/null +++ b/frontend/desk/tsconfig.node.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "ES2023", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["vite.config.ts", "electron.vite.config.ts", "web.vite.config.ts"] +} diff --git a/frontend/desk/vite.config.ts b/frontend/desk/vite.config.ts new file mode 100644 index 0000000..8bde11e --- /dev/null +++ b/frontend/desk/vite.config.ts @@ -0,0 +1,13 @@ +import react from "@vitejs/plugin-react"; +import { defineConfig } from "vite"; +import tsconfigPaths from "vite-tsconfig-paths"; + +// https://vite.dev/config/ +export default defineConfig(() => { + return { + plugins: [react(), tsconfigPaths()], + server: { + port: 4768, + }, + }; +}); diff --git a/frontend/desk/web.vite.config.ts b/frontend/desk/web.vite.config.ts new file mode 100644 index 0000000..31230d5 --- /dev/null +++ b/frontend/desk/web.vite.config.ts @@ -0,0 +1,24 @@ +import { resolve } from "node:path"; + +import react from "@vitejs/plugin-react"; +import { defineConfig } from "vite"; +import tsconfigPaths from "vite-tsconfig-paths"; + +const SRC_DIR = resolve(__dirname, "web"); +const OUT_DIR = resolve(__dirname, "web/out"); + +// https://vite.dev/config/ +export default defineConfig(() => { + return { + plugins: [react(), tsconfigPaths()], + root: resolve(SRC_DIR, "renderer"), + build: { + outDir: OUT_DIR, + rollupOptions: { + input: { + main: resolve(SRC_DIR, "renderer/index.html"), + }, + }, + }, + }; +}); diff --git a/frontend/desk/web/renderer/index.html b/frontend/desk/web/renderer/index.html new file mode 100644 index 0000000..efa8d26 --- /dev/null +++ b/frontend/desk/web/renderer/index.html @@ -0,0 +1,13 @@ + + + + + + + The Desk + + +
    + + + diff --git a/frontend/desk/web/renderer/src/index.ts b/frontend/desk/web/renderer/src/index.ts new file mode 100644 index 0000000..dd149d1 --- /dev/null +++ b/frontend/desk/web/renderer/src/index.ts @@ -0,0 +1 @@ +import "@/main"; diff --git a/frontend/module/README.md b/frontend/module/README.md new file mode 100644 index 0000000..9b49485 --- /dev/null +++ b/frontend/module/README.md @@ -0,0 +1,7 @@ +## 모듈이 해소할 문제 + +## 패턴들 + +### List - Item + +list는 동일한 형태의 복수 데이터를 공급받는다. diff --git a/frontend/module/package.json b/frontend/module/package.json new file mode 100644 index 0000000..aab0f75 --- /dev/null +++ b/frontend/module/package.json @@ -0,0 +1,29 @@ +{ + "name": "module", + "type": "module", + "scripts": { + "lint:check": "eslint .", + "lint:fix": "eslint --fix .", + "format:fix": "prettier --write ." + }, + "exports": { + "./index": "./src/index/index.ts" + }, + "dependencies": { + "@enun/react": "^0.4.1", + "@enun/state": "^0.1.1", + "@flexive/core": "^0.6.0", + "@tanstack/react-query": "^5.87.1", + "design": "workspace:^", + "react": "^19.1.0", + "react-dom": "^19.1.0" + }, + "devDependencies": { + "@types/node": "^24.1.0", + "@types/react": "^19.1.8", + "@types/react-dom": "^19.1.6", + "sass-embedded": "^1.89.2", + "types": "workspace:^", + "typescript": "^5" + } +} diff --git a/frontend/module/src/_common/index.ts b/frontend/module/src/_common/index.ts new file mode 100644 index 0000000..43768c6 --- /dev/null +++ b/frontend/module/src/_common/index.ts @@ -0,0 +1 @@ +export * from "./state/remote.state"; diff --git a/frontend/module/src/_common/state/remote.state.ts b/frontend/module/src/_common/state/remote.state.ts new file mode 100644 index 0000000..334708e --- /dev/null +++ b/frontend/module/src/_common/state/remote.state.ts @@ -0,0 +1,83 @@ +import { type RawKey, state } from "@enun/state"; + +interface FromState { + current: Value; + refresh: () => Promise; + isRefreshing: boolean; + refreshError: unknown; +} + +interface ToState { + save: (payload: Payload) => Promise; + isSaving: boolean; + saveError: unknown; +} + +const createFromState = () => { + const FromState = state, [() => Promise, RawKey?]>()({ + as: (_, id) => id ?? true, + is: async ({ set }, from) => { + const current = await from(); + const refresh = () => { + set({ isRefreshing: true }); + return from() + .then(value => { + set({ + current: value, + isRefreshing: false, + }); + }) + .catch((e: unknown) => { + set({ + isRefreshing: false, + refreshError: e, + }); + }); + }; + + return { + current, + isRefreshing: false, + refresh, + refreshError: null, + }; + }, + }); + + return FromState; +}; + +const createToState = () => { + const ToState = state< + ToState, + [(payload: Payload) => Promise, RawKey?] + >()({ + as: (_, id) => id ?? true, + is: ({ set }, to) => { + const save = (payload: Payload) => { + set({ isSaving: true }); + return to(payload) + .then(() => { + set({ isSaving: false }); + }) + .catch((e: unknown) => { + set({ + isSaving: false, + saveError: e, + }); + }); + }; + + return { + save, + isSaving: false, + saveError: null, + }; + }, + }); + + return ToState; +}; + +export { createFromState, createToState }; +export type { FromState, ToState }; diff --git a/source/design/component/input/select/Select/index.module.css b/frontend/module/src/index/component/IndexSummary/index.module.scss similarity index 100% rename from source/design/component/input/select/Select/index.module.css rename to frontend/module/src/index/component/IndexSummary/index.module.scss diff --git a/frontend/module/src/index/component/IndexSummary/index.tsx b/frontend/module/src/index/component/IndexSummary/index.tsx new file mode 100644 index 0000000..0261a64 --- /dev/null +++ b/frontend/module/src/index/component/IndexSummary/index.tsx @@ -0,0 +1,40 @@ +import { useStateOf } from "@enun/react"; +import { Div, Input, type PropsOf } from "@flexive/core"; +import { useState } from "react"; +import type { Index } from "shared/types/src/index.types"; + +import { IndexState } from "../index.state"; + +interface IndexSummaryProps extends PropsOf<"div"> { + index: Index; +} + +const IndexSummary = () => { + const { + value: { name, setName }, + } = useStateOf(IndexState); + + const [editing, setEditing] = useState(false); + + return ( +
    { + if (!editing) setEditing(true); + }} + > + {editing ? ( + { + setName(e.target.value); + }} + /> + ) : ( +
    {name}
    + )} +
    + ); +}; + +export { IndexSummary }; diff --git a/frontend/module/src/index/index.ts b/frontend/module/src/index/index.ts new file mode 100644 index 0000000..5e3dde1 --- /dev/null +++ b/frontend/module/src/index/index.ts @@ -0,0 +1,5 @@ +/** component */ +export * from "./component/IndexSummary"; + +/** state */ +export * from "./state/index.state"; diff --git a/frontend/module/src/index/state/index.state.ts b/frontend/module/src/index/state/index.state.ts new file mode 100644 index 0000000..e2d6c2a --- /dev/null +++ b/frontend/module/src/index/state/index.state.ts @@ -0,0 +1,44 @@ +import { state } from "@enun/state"; +import type { Index } from "shared/types/src/index.types"; + +interface IndexState extends Index { + status: "IDLE" | "EDITING" | "UPDATING" | "UPDATED"; + setName: (name: string) => void; + setDescription: (description: string) => void; +} + +interface IndexStateDeps { + index: Index; + currentStatus: { + idle: boolean; + editing: boolean; + updating: boolean; + updated: boolean; + }; +} + +const IndexState = state()({ + as: ({ index, currentStatus }) => [ + index.id, + Object.entries(currentStatus) + .map(([key, value]) => (value ? key : "")) + .join(""), + ], + is: ({ set }, { index, currentStatus }) => { + const setName = (name: string) => { + set({ name }); + }; + const setDescription = (description: string) => { + set({ description }); + }; + + return { + ...index, + status: "IDLE", + setName, + setDescription, + }; + }, +}); + +export { IndexState }; diff --git a/source/module/box/editor/BoxManager/index.module.css b/frontend/module/src/indexNew/index.query.ts similarity index 100% rename from source/module/box/editor/BoxManager/index.module.css rename to frontend/module/src/indexNew/index.query.ts diff --git a/frontend/module/tsconfig.json b/frontend/module/tsconfig.json new file mode 100644 index 0000000..ecff01a --- /dev/null +++ b/frontend/module/tsconfig.json @@ -0,0 +1,28 @@ +{ + "extends": "../../tsconfig.root.json", + "compilerOptions": { + "target": "ES2022", + "useDefineForClassFields": true, + "lib": ["ES2022", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["src"], + "exclude": ["node_modules"] +} diff --git a/core/constant/ID.ts b/legacy/core/constant/ID.ts similarity index 100% rename from core/constant/ID.ts rename to legacy/core/constant/ID.ts diff --git a/core/constant/TEXT.ts b/legacy/core/constant/TEXT.ts similarity index 100% rename from core/constant/TEXT.ts rename to legacy/core/constant/TEXT.ts diff --git a/core/constant/box/BOX_TYPE.ts b/legacy/core/constant/box/BOX_TYPE.ts similarity index 100% rename from core/constant/box/BOX_TYPE.ts rename to legacy/core/constant/box/BOX_TYPE.ts diff --git a/core/constant/content/CODE_BLOCK_LANGUAGE.ts b/legacy/core/constant/content/CODE_BLOCK_LANGUAGE.ts similarity index 100% rename from core/constant/content/CODE_BLOCK_LANGUAGE.ts rename to legacy/core/constant/content/CODE_BLOCK_LANGUAGE.ts diff --git a/core/constant/content/ELEMENT_TYPE.ts b/legacy/core/constant/content/ELEMENT_TYPE.ts similarity index 100% rename from core/constant/content/ELEMENT_TYPE.ts rename to legacy/core/constant/content/ELEMENT_TYPE.ts diff --git a/core/constant/content/FONT.ts b/legacy/core/constant/content/FONT.ts similarity index 100% rename from core/constant/content/FONT.ts rename to legacy/core/constant/content/FONT.ts diff --git a/core/constant/content/TEXT_ALIGN.ts b/legacy/core/constant/content/TEXT_ALIGN.ts similarity index 100% rename from core/constant/content/TEXT_ALIGN.ts rename to legacy/core/constant/content/TEXT_ALIGN.ts diff --git a/core/constant/content/TEXT_EMPHASIS.ts b/legacy/core/constant/content/TEXT_EMPHASIS.ts similarity index 100% rename from core/constant/content/TEXT_EMPHASIS.ts rename to legacy/core/constant/content/TEXT_EMPHASIS.ts diff --git a/core/constant/style/WEIGHT.ts b/legacy/core/constant/style/WEIGHT.ts similarity index 100% rename from core/constant/style/WEIGHT.ts rename to legacy/core/constant/style/WEIGHT.ts diff --git a/core/entity/box/Box.ts b/legacy/core/entity/box/Box.ts similarity index 100% rename from core/entity/box/Box.ts rename to legacy/core/entity/box/Box.ts diff --git a/core/entity/box/BoxLayout.ts b/legacy/core/entity/box/BoxLayout.ts similarity index 100% rename from core/entity/box/BoxLayout.ts rename to legacy/core/entity/box/BoxLayout.ts diff --git a/core/entity/box/BoxLook.ts b/legacy/core/entity/box/BoxLook.ts similarity index 100% rename from core/entity/box/BoxLook.ts rename to legacy/core/entity/box/BoxLook.ts diff --git a/core/entity/box/BoxPath.ts b/legacy/core/entity/box/BoxPath.ts similarity index 100% rename from core/entity/box/BoxPath.ts rename to legacy/core/entity/box/BoxPath.ts diff --git a/core/entity/box/InnerBox.ts b/legacy/core/entity/box/InnerBox.ts similarity index 100% rename from core/entity/box/InnerBox.ts rename to legacy/core/entity/box/InnerBox.ts diff --git a/core/entity/box/OuterBox.ts b/legacy/core/entity/box/OuterBox.ts similarity index 100% rename from core/entity/box/OuterBox.ts rename to legacy/core/entity/box/OuterBox.ts diff --git a/core/entity/codex/Codex.ts b/legacy/core/entity/codex/Codex.ts similarity index 100% rename from core/entity/codex/Codex.ts rename to legacy/core/entity/codex/Codex.ts diff --git a/core/entity/codex/CodexCover.ts b/legacy/core/entity/codex/CodexCover.ts similarity index 100% rename from core/entity/codex/CodexCover.ts rename to legacy/core/entity/codex/CodexCover.ts diff --git a/core/entity/content/Content.ts b/legacy/core/entity/content/Content.ts similarity index 100% rename from core/entity/content/Content.ts rename to legacy/core/entity/content/Content.ts diff --git a/core/entity/content/element/Element.ts b/legacy/core/entity/content/element/Element.ts similarity index 100% rename from core/entity/content/element/Element.ts rename to legacy/core/entity/content/element/Element.ts diff --git a/core/entity/content/element/ElementBase.ts b/legacy/core/entity/content/element/ElementBase.ts similarity index 100% rename from core/entity/content/element/ElementBase.ts rename to legacy/core/entity/content/element/ElementBase.ts diff --git a/core/entity/content/element/block/CodeBlockElement.ts b/legacy/core/entity/content/element/block/CodeBlockElement.ts similarity index 100% rename from core/entity/content/element/block/CodeBlockElement.ts rename to legacy/core/entity/content/element/block/CodeBlockElement.ts diff --git a/core/entity/content/element/block/HeadingElement.ts b/legacy/core/entity/content/element/block/HeadingElement.ts similarity index 100% rename from core/entity/content/element/block/HeadingElement.ts rename to legacy/core/entity/content/element/block/HeadingElement.ts diff --git a/core/entity/content/element/block/ParagraphElement.ts b/legacy/core/entity/content/element/block/ParagraphElement.ts similarity index 100% rename from core/entity/content/element/block/ParagraphElement.ts rename to legacy/core/entity/content/element/block/ParagraphElement.ts diff --git a/core/entity/content/element/inline/LinkElement.ts b/legacy/core/entity/content/element/inline/LinkElement.ts similarity index 100% rename from core/entity/content/element/inline/LinkElement.ts rename to legacy/core/entity/content/element/inline/LinkElement.ts diff --git a/core/entity/content/leaf/DefaultText.ts b/legacy/core/entity/content/leaf/DefaultText.ts similarity index 100% rename from core/entity/content/leaf/DefaultText.ts rename to legacy/core/entity/content/leaf/DefaultText.ts diff --git a/core/entity/content/leaf/Leaf.ts b/legacy/core/entity/content/leaf/Leaf.ts similarity index 100% rename from core/entity/content/leaf/Leaf.ts rename to legacy/core/entity/content/leaf/Leaf.ts diff --git a/core/entity/index/Index.ts b/legacy/core/entity/index/Index.ts similarity index 100% rename from core/entity/index/Index.ts rename to legacy/core/entity/index/Index.ts diff --git a/core/entity/index/IndexSummary.ts b/legacy/core/entity/index/IndexSummary.ts similarity index 100% rename from core/entity/index/IndexSummary.ts rename to legacy/core/entity/index/IndexSummary.ts diff --git a/core/entity/style/LookClass.ts b/legacy/core/entity/style/LookClass.ts similarity index 100% rename from core/entity/style/LookClass.ts rename to legacy/core/entity/style/LookClass.ts diff --git a/core/entity/style/LookVariable.ts b/legacy/core/entity/style/LookVariable.ts similarity index 100% rename from core/entity/style/LookVariable.ts rename to legacy/core/entity/style/LookVariable.ts diff --git a/core/entity/time/TimeRecord.ts b/legacy/core/entity/time/TimeRecord.ts similarity index 100% rename from core/entity/time/TimeRecord.ts rename to legacy/core/entity/time/TimeRecord.ts diff --git a/core/entity/time/TimeStamp.ts b/legacy/core/entity/time/TimeStamp.ts similarity index 100% rename from core/entity/time/TimeStamp.ts rename to legacy/core/entity/time/TimeStamp.ts diff --git a/core/eslint.config.js b/legacy/core/eslint.config.js similarity index 100% rename from core/eslint.config.js rename to legacy/core/eslint.config.js diff --git a/core/intent/index/create.ts b/legacy/core/intent/index/create.ts similarity index 100% rename from core/intent/index/create.ts rename to legacy/core/intent/index/create.ts diff --git a/core/intent/index/index.ts b/legacy/core/intent/index/index.ts similarity index 100% rename from core/intent/index/index.ts rename to legacy/core/intent/index/index.ts diff --git a/core/intent/index/update.ts b/legacy/core/intent/index/update.ts similarity index 100% rename from core/intent/index/update.ts rename to legacy/core/intent/index/update.ts diff --git a/core/package.json b/legacy/core/package.json similarity index 100% rename from core/package.json rename to legacy/core/package.json diff --git a/core/repository/baseUrl.ts b/legacy/core/repository/baseUrl.ts similarity index 100% rename from core/repository/baseUrl.ts rename to legacy/core/repository/baseUrl.ts diff --git a/core/repository/index/dto.ts b/legacy/core/repository/index/dto.ts similarity index 100% rename from core/repository/index/dto.ts rename to legacy/core/repository/index/dto.ts diff --git a/core/repository/index/index.ts b/legacy/core/repository/index/index.ts similarity index 100% rename from core/repository/index/index.ts rename to legacy/core/repository/index/index.ts diff --git a/core/repository/static/index.ts b/legacy/core/repository/static/index.ts similarity index 100% rename from core/repository/static/index.ts rename to legacy/core/repository/static/index.ts diff --git a/core/tsconfig.json b/legacy/core/tsconfig.json similarity index 94% rename from core/tsconfig.json rename to legacy/core/tsconfig.json index 3a3842d..5d523f9 100644 --- a/core/tsconfig.json +++ b/legacy/core/tsconfig.json @@ -1,5 +1,4 @@ { - "extends": "../tsconfig.alias.json", "compilerOptions": { "target": "ES2020", "useDefineForClassFields": true, diff --git a/core/utility/zod/TypeOfEnum.ts b/legacy/core/utility/zod/TypeOfEnum.ts similarity index 100% rename from core/utility/zod/TypeOfEnum.ts rename to legacy/core/utility/zod/TypeOfEnum.ts diff --git a/core/view/index/data.ts b/legacy/core/view/index/data.ts similarity index 100% rename from core/view/index/data.ts rename to legacy/core/view/index/data.ts diff --git a/core/view/index/index.ts b/legacy/core/view/index/index.ts similarity index 100% rename from core/view/index/index.ts rename to legacy/core/view/index/index.ts diff --git a/core/view/index/summaries.ts b/legacy/core/view/index/summaries.ts similarity index 100% rename from core/view/index/summaries.ts rename to legacy/core/view/index/summaries.ts diff --git a/playground/static-site-generation/.gitignore b/legacy/playground/editor/.gitignore similarity index 100% rename from playground/static-site-generation/.gitignore rename to legacy/playground/editor/.gitignore diff --git a/playground/editor/README.md b/legacy/playground/editor/README.md similarity index 100% rename from playground/editor/README.md rename to legacy/playground/editor/README.md diff --git a/playground/editor/eslint.config.js b/legacy/playground/editor/eslint.config.js similarity index 100% rename from playground/editor/eslint.config.js rename to legacy/playground/editor/eslint.config.js diff --git a/playground/editor/index.html b/legacy/playground/editor/index.html similarity index 100% rename from playground/editor/index.html rename to legacy/playground/editor/index.html diff --git a/playground/editor/package.json b/legacy/playground/editor/package.json similarity index 100% rename from playground/editor/package.json rename to legacy/playground/editor/package.json diff --git a/playground/editor/src/App.tsx b/legacy/playground/editor/src/App.tsx similarity index 100% rename from playground/editor/src/App.tsx rename to legacy/playground/editor/src/App.tsx diff --git a/playground/editor/src/component/Editor.tsx b/legacy/playground/editor/src/component/Editor.tsx similarity index 100% rename from playground/editor/src/component/Editor.tsx rename to legacy/playground/editor/src/component/Editor.tsx diff --git a/playground/editor/src/component/EditorContainer.tsx b/legacy/playground/editor/src/component/EditorContainer.tsx similarity index 100% rename from playground/editor/src/component/EditorContainer.tsx rename to legacy/playground/editor/src/component/EditorContainer.tsx diff --git a/playground/editor/src/component/Readable.tsx b/legacy/playground/editor/src/component/Readable.tsx similarity index 100% rename from playground/editor/src/component/Readable.tsx rename to legacy/playground/editor/src/component/Readable.tsx diff --git a/playground/editor/src/component/Reader.tsx b/legacy/playground/editor/src/component/Reader.tsx similarity index 100% rename from playground/editor/src/component/Reader.tsx rename to legacy/playground/editor/src/component/Reader.tsx diff --git a/playground/editor/src/component/SampleEditor.tsx b/legacy/playground/editor/src/component/SampleEditor.tsx similarity index 100% rename from playground/editor/src/component/SampleEditor.tsx rename to legacy/playground/editor/src/component/SampleEditor.tsx diff --git a/playground/editor/src/component/StatusViewer.tsx b/legacy/playground/editor/src/component/StatusViewer.tsx similarity index 100% rename from playground/editor/src/component/StatusViewer.tsx rename to legacy/playground/editor/src/component/StatusViewer.tsx diff --git a/playground/editor/src/component/Toolbar.tsx b/legacy/playground/editor/src/component/Toolbar.tsx similarity index 100% rename from playground/editor/src/component/Toolbar.tsx rename to legacy/playground/editor/src/component/Toolbar.tsx diff --git a/playground/editor/src/config/element/CodeElement.tsx b/legacy/playground/editor/src/config/element/CodeElement.tsx similarity index 100% rename from playground/editor/src/config/element/CodeElement.tsx rename to legacy/playground/editor/src/config/element/CodeElement.tsx diff --git a/playground/editor/src/config/element/Element.tsx b/legacy/playground/editor/src/config/element/Element.tsx similarity index 100% rename from playground/editor/src/config/element/Element.tsx rename to legacy/playground/editor/src/config/element/Element.tsx diff --git a/playground/editor/src/config/element/ParagraphElement.tsx b/legacy/playground/editor/src/config/element/ParagraphElement.tsx similarity index 100% rename from playground/editor/src/config/element/ParagraphElement.tsx rename to legacy/playground/editor/src/config/element/ParagraphElement.tsx diff --git a/playground/editor/src/config/event/useOnKeyDown.ts b/legacy/playground/editor/src/config/event/useOnKeyDown.ts similarity index 100% rename from playground/editor/src/config/event/useOnKeyDown.ts rename to legacy/playground/editor/src/config/event/useOnKeyDown.ts diff --git a/playground/editor/src/config/format/element.ts b/legacy/playground/editor/src/config/format/element.ts similarity index 100% rename from playground/editor/src/config/format/element.ts rename to legacy/playground/editor/src/config/format/element.ts diff --git a/playground/editor/src/config/format/mark.ts b/legacy/playground/editor/src/config/format/mark.ts similarity index 100% rename from playground/editor/src/config/format/mark.ts rename to legacy/playground/editor/src/config/format/mark.ts diff --git a/playground/editor/src/config/leaf/Leaf.tsx b/legacy/playground/editor/src/config/leaf/Leaf.tsx similarity index 100% rename from playground/editor/src/config/leaf/Leaf.tsx rename to legacy/playground/editor/src/config/leaf/Leaf.tsx diff --git a/playground/editor/src/config/parse/parse.ts b/legacy/playground/editor/src/config/parse/parse.ts similarity index 100% rename from playground/editor/src/config/parse/parse.ts rename to legacy/playground/editor/src/config/parse/parse.ts diff --git a/playground/editor/src/config/parse/parser.ts b/legacy/playground/editor/src/config/parse/parser.ts similarity index 100% rename from playground/editor/src/config/parse/parser.ts rename to legacy/playground/editor/src/config/parse/parser.ts diff --git a/playground/editor/src/config/render/renderElement.tsx b/legacy/playground/editor/src/config/render/renderElement.tsx similarity index 100% rename from playground/editor/src/config/render/renderElement.tsx rename to legacy/playground/editor/src/config/render/renderElement.tsx diff --git a/playground/editor/src/config/render/renderLeaf.tsx b/legacy/playground/editor/src/config/render/renderLeaf.tsx similarity index 100% rename from playground/editor/src/config/render/renderLeaf.tsx rename to legacy/playground/editor/src/config/render/renderLeaf.tsx diff --git a/playground/editor/src/config/render/renderStatic.tsx b/legacy/playground/editor/src/config/render/renderStatic.tsx similarity index 100% rename from playground/editor/src/config/render/renderStatic.tsx rename to legacy/playground/editor/src/config/render/renderStatic.tsx diff --git a/playground/editor/src/config/stringify/stringify.ts b/legacy/playground/editor/src/config/stringify/stringify.ts similarity index 100% rename from playground/editor/src/config/stringify/stringify.ts rename to legacy/playground/editor/src/config/stringify/stringify.ts diff --git a/playground/editor/src/config/type/index.ts b/legacy/playground/editor/src/config/type/index.ts similarity index 100% rename from playground/editor/src/config/type/index.ts rename to legacy/playground/editor/src/config/type/index.ts diff --git a/playground/editor/src/config/utility/isLeaf.ts b/legacy/playground/editor/src/config/utility/isLeaf.ts similarity index 100% rename from playground/editor/src/config/utility/isLeaf.ts rename to legacy/playground/editor/src/config/utility/isLeaf.ts diff --git a/service/demo/src/main.tsx b/legacy/playground/editor/src/main.tsx similarity index 100% rename from service/demo/src/main.tsx rename to legacy/playground/editor/src/main.tsx diff --git a/playground/editor/src/style.css b/legacy/playground/editor/src/style.css similarity index 100% rename from playground/editor/src/style.css rename to legacy/playground/editor/src/style.css diff --git a/playground/tree-shaking/src/vite-env.d.ts b/legacy/playground/editor/src/vite-env.d.ts similarity index 100% rename from playground/tree-shaking/src/vite-env.d.ts rename to legacy/playground/editor/src/vite-env.d.ts diff --git a/playground/editor/tsconfig.app.json b/legacy/playground/editor/tsconfig.app.json similarity index 100% rename from playground/editor/tsconfig.app.json rename to legacy/playground/editor/tsconfig.app.json diff --git a/playground/editor/tsconfig.json b/legacy/playground/editor/tsconfig.json similarity index 100% rename from playground/editor/tsconfig.json rename to legacy/playground/editor/tsconfig.json diff --git a/playground/editor/tsconfig.node.json b/legacy/playground/editor/tsconfig.node.json similarity index 100% rename from playground/editor/tsconfig.node.json rename to legacy/playground/editor/tsconfig.node.json diff --git a/playground/editor/vite.config.ts b/legacy/playground/editor/vite.config.ts similarity index 100% rename from playground/editor/vite.config.ts rename to legacy/playground/editor/vite.config.ts diff --git a/playground/tree-shaking/.gitignore b/legacy/playground/graphics/.gitignore similarity index 100% rename from playground/tree-shaking/.gitignore rename to legacy/playground/graphics/.gitignore diff --git a/playground/graphics/README.md b/legacy/playground/graphics/README.md similarity index 100% rename from playground/graphics/README.md rename to legacy/playground/graphics/README.md diff --git a/playground/graphics/eslint.config.js b/legacy/playground/graphics/eslint.config.js similarity index 100% rename from playground/graphics/eslint.config.js rename to legacy/playground/graphics/eslint.config.js diff --git a/playground/graphics/index.html b/legacy/playground/graphics/index.html similarity index 100% rename from playground/graphics/index.html rename to legacy/playground/graphics/index.html diff --git a/playground/graphics/package.json b/legacy/playground/graphics/package.json similarity index 100% rename from playground/graphics/package.json rename to legacy/playground/graphics/package.json diff --git a/playground/graphics/src/main.tsx b/legacy/playground/graphics/src/main.tsx similarity index 100% rename from playground/graphics/src/main.tsx rename to legacy/playground/graphics/src/main.tsx diff --git a/playground/graphics/src/style/gradient.css b/legacy/playground/graphics/src/style/gradient.css similarity index 100% rename from playground/graphics/src/style/gradient.css rename to legacy/playground/graphics/src/style/gradient.css diff --git a/playground/graphics/src/style/index.css b/legacy/playground/graphics/src/style/index.css similarity index 100% rename from playground/graphics/src/style/index.css rename to legacy/playground/graphics/src/style/index.css diff --git a/playground/graphics/src/ui/HomePage.tsx b/legacy/playground/graphics/src/ui/HomePage.tsx similarity index 100% rename from playground/graphics/src/ui/HomePage.tsx rename to legacy/playground/graphics/src/ui/HomePage.tsx diff --git a/playground/graphics/src/ui/color/ColorPage.module.css b/legacy/playground/graphics/src/ui/color/ColorPage.module.css similarity index 100% rename from playground/graphics/src/ui/color/ColorPage.module.css rename to legacy/playground/graphics/src/ui/color/ColorPage.module.css diff --git a/playground/graphics/src/ui/color/ColorPage.tsx b/legacy/playground/graphics/src/ui/color/ColorPage.tsx similarity index 100% rename from playground/graphics/src/ui/color/ColorPage.tsx rename to legacy/playground/graphics/src/ui/color/ColorPage.tsx diff --git a/playground/graphics/src/ui/color/function/calculation.ts b/legacy/playground/graphics/src/ui/color/function/calculation.ts similarity index 100% rename from playground/graphics/src/ui/color/function/calculation.ts rename to legacy/playground/graphics/src/ui/color/function/calculation.ts diff --git a/playground/graphics/src/ui/color/function/constant.ts b/legacy/playground/graphics/src/ui/color/function/constant.ts similarity index 100% rename from playground/graphics/src/ui/color/function/constant.ts rename to legacy/playground/graphics/src/ui/color/function/constant.ts diff --git a/playground/graphics/src/ui/color/function/lighting.ts b/legacy/playground/graphics/src/ui/color/function/lighting.ts similarity index 100% rename from playground/graphics/src/ui/color/function/lighting.ts rename to legacy/playground/graphics/src/ui/color/function/lighting.ts diff --git a/playground/graphics/src/ui/color/function/parse.ts b/legacy/playground/graphics/src/ui/color/function/parse.ts similarity index 100% rename from playground/graphics/src/ui/color/function/parse.ts rename to legacy/playground/graphics/src/ui/color/function/parse.ts diff --git a/playground/graphics/src/ui/color/function/types.ts b/legacy/playground/graphics/src/ui/color/function/types.ts similarity index 100% rename from playground/graphics/src/ui/color/function/types.ts rename to legacy/playground/graphics/src/ui/color/function/types.ts diff --git a/playground/graphics/src/ui/colorSystem/ColorSystemPage.module.css b/legacy/playground/graphics/src/ui/colorSystem/ColorSystemPage.module.css similarity index 100% rename from playground/graphics/src/ui/colorSystem/ColorSystemPage.module.css rename to legacy/playground/graphics/src/ui/colorSystem/ColorSystemPage.module.css diff --git a/playground/graphics/src/ui/colorSystem/ColorSystemPage.tsx b/legacy/playground/graphics/src/ui/colorSystem/ColorSystemPage.tsx similarity index 100% rename from playground/graphics/src/ui/colorSystem/ColorSystemPage.tsx rename to legacy/playground/graphics/src/ui/colorSystem/ColorSystemPage.tsx diff --git a/playground/graphics/src/ui/filter/FilterPage.css b/legacy/playground/graphics/src/ui/filter/FilterPage.css similarity index 100% rename from playground/graphics/src/ui/filter/FilterPage.css rename to legacy/playground/graphics/src/ui/filter/FilterPage.css diff --git a/playground/graphics/src/ui/filter/FilterPage.tsx b/legacy/playground/graphics/src/ui/filter/FilterPage.tsx similarity index 100% rename from playground/graphics/src/ui/filter/FilterPage.tsx rename to legacy/playground/graphics/src/ui/filter/FilterPage.tsx diff --git a/playground/graphics/src/ui/filter/filters/Bevel.tsx b/legacy/playground/graphics/src/ui/filter/filters/Bevel.tsx similarity index 100% rename from playground/graphics/src/ui/filter/filters/Bevel.tsx rename to legacy/playground/graphics/src/ui/filter/filters/Bevel.tsx diff --git a/playground/graphics/src/ui/filter/filters/DropShadow.tsx b/legacy/playground/graphics/src/ui/filter/filters/DropShadow.tsx similarity index 100% rename from playground/graphics/src/ui/filter/filters/DropShadow.tsx rename to legacy/playground/graphics/src/ui/filter/filters/DropShadow.tsx diff --git a/playground/graphics/src/ui/filter/filters/Grayscale.tsx b/legacy/playground/graphics/src/ui/filter/filters/Grayscale.tsx similarity index 100% rename from playground/graphics/src/ui/filter/filters/Grayscale.tsx rename to legacy/playground/graphics/src/ui/filter/filters/Grayscale.tsx diff --git a/playground/graphics/src/ui/filter/filters/InnerShadow.tsx b/legacy/playground/graphics/src/ui/filter/filters/InnerShadow.tsx similarity index 100% rename from playground/graphics/src/ui/filter/filters/InnerShadow.tsx rename to legacy/playground/graphics/src/ui/filter/filters/InnerShadow.tsx diff --git a/service/app/src/vite-env.d.ts b/legacy/playground/graphics/src/vite-env.d.ts similarity index 100% rename from service/app/src/vite-env.d.ts rename to legacy/playground/graphics/src/vite-env.d.ts diff --git a/service/pilot/tsconfig.app.json b/legacy/playground/graphics/tsconfig.app.json similarity index 100% rename from service/pilot/tsconfig.app.json rename to legacy/playground/graphics/tsconfig.app.json diff --git a/playground/graphics/tsconfig.json b/legacy/playground/graphics/tsconfig.json similarity index 100% rename from playground/graphics/tsconfig.json rename to legacy/playground/graphics/tsconfig.json diff --git a/playground/graphics/tsconfig.node.json b/legacy/playground/graphics/tsconfig.node.json similarity index 100% rename from playground/graphics/tsconfig.node.json rename to legacy/playground/graphics/tsconfig.node.json diff --git a/playground/graphics/vite.config.ts b/legacy/playground/graphics/vite.config.ts similarity index 100% rename from playground/graphics/vite.config.ts rename to legacy/playground/graphics/vite.config.ts diff --git a/service/app/.gitignore b/legacy/playground/static-site-generation/.gitignore similarity index 100% rename from service/app/.gitignore rename to legacy/playground/static-site-generation/.gitignore diff --git a/playground/static-site-generation/README.md b/legacy/playground/static-site-generation/README.md similarity index 100% rename from playground/static-site-generation/README.md rename to legacy/playground/static-site-generation/README.md diff --git a/playground/static-site-generation/data/home/data.json b/legacy/playground/static-site-generation/data/home/data.json similarity index 100% rename from playground/static-site-generation/data/home/data.json rename to legacy/playground/static-site-generation/data/home/data.json diff --git a/playground/static-site-generation/data/index.ts b/legacy/playground/static-site-generation/data/index.ts similarity index 100% rename from playground/static-site-generation/data/index.ts rename to legacy/playground/static-site-generation/data/index.ts diff --git a/playground/static-site-generation/data/pages/1/data.json b/legacy/playground/static-site-generation/data/pages/1/data.json similarity index 100% rename from playground/static-site-generation/data/pages/1/data.json rename to legacy/playground/static-site-generation/data/pages/1/data.json diff --git a/playground/static-site-generation/data/pages/2/data.json b/legacy/playground/static-site-generation/data/pages/2/data.json similarity index 100% rename from playground/static-site-generation/data/pages/2/data.json rename to legacy/playground/static-site-generation/data/pages/2/data.json diff --git a/playground/static-site-generation/eslint.config.js b/legacy/playground/static-site-generation/eslint.config.js similarity index 100% rename from playground/static-site-generation/eslint.config.js rename to legacy/playground/static-site-generation/eslint.config.js diff --git a/playground/static-site-generation/generate.ts b/legacy/playground/static-site-generation/generate.ts similarity index 100% rename from playground/static-site-generation/generate.ts rename to legacy/playground/static-site-generation/generate.ts diff --git a/playground/static-site-generation/package.json b/legacy/playground/static-site-generation/package.json similarity index 100% rename from playground/static-site-generation/package.json rename to legacy/playground/static-site-generation/package.json diff --git a/playground/static-site-generation/server.ts b/legacy/playground/static-site-generation/server.ts similarity index 100% rename from playground/static-site-generation/server.ts rename to legacy/playground/static-site-generation/server.ts diff --git a/playground/static-site-generation/src/App.tsx b/legacy/playground/static-site-generation/src/App.tsx similarity index 100% rename from playground/static-site-generation/src/App.tsx rename to legacy/playground/static-site-generation/src/App.tsx diff --git a/playground/static-site-generation/src/entry/client-build.tsx b/legacy/playground/static-site-generation/src/entry/client-build.tsx similarity index 100% rename from playground/static-site-generation/src/entry/client-build.tsx rename to legacy/playground/static-site-generation/src/entry/client-build.tsx diff --git a/playground/static-site-generation/src/entry/client-dev.tsx b/legacy/playground/static-site-generation/src/entry/client-dev.tsx similarity index 100% rename from playground/static-site-generation/src/entry/client-dev.tsx rename to legacy/playground/static-site-generation/src/entry/client-dev.tsx diff --git a/playground/static-site-generation/src/entry/server.tsx b/legacy/playground/static-site-generation/src/entry/server.tsx similarity index 100% rename from playground/static-site-generation/src/entry/server.tsx rename to legacy/playground/static-site-generation/src/entry/server.tsx diff --git a/playground/static-site-generation/src/page/Page.tsx b/legacy/playground/static-site-generation/src/page/Page.tsx similarity index 100% rename from playground/static-site-generation/src/page/Page.tsx rename to legacy/playground/static-site-generation/src/page/Page.tsx diff --git a/playground/static-site-generation/src/template/index.html b/legacy/playground/static-site-generation/src/template/index.html similarity index 100% rename from playground/static-site-generation/src/template/index.html rename to legacy/playground/static-site-generation/src/template/index.html diff --git a/playground/static-site-generation/src/template/static.html b/legacy/playground/static-site-generation/src/template/static.html similarity index 100% rename from playground/static-site-generation/src/template/static.html rename to legacy/playground/static-site-generation/src/template/static.html diff --git a/playground/static-site-generation/src/util/parsePath.ts b/legacy/playground/static-site-generation/src/util/parsePath.ts similarity index 100% rename from playground/static-site-generation/src/util/parsePath.ts rename to legacy/playground/static-site-generation/src/util/parsePath.ts diff --git a/service/demo/src/vite-env.d.ts b/legacy/playground/static-site-generation/src/vite-env.d.ts similarity index 100% rename from service/demo/src/vite-env.d.ts rename to legacy/playground/static-site-generation/src/vite-env.d.ts diff --git a/playground/static-site-generation/tsconfig.app.json b/legacy/playground/static-site-generation/tsconfig.app.json similarity index 100% rename from playground/static-site-generation/tsconfig.app.json rename to legacy/playground/static-site-generation/tsconfig.app.json diff --git a/playground/static-site-generation/tsconfig.json b/legacy/playground/static-site-generation/tsconfig.json similarity index 100% rename from playground/static-site-generation/tsconfig.json rename to legacy/playground/static-site-generation/tsconfig.json diff --git a/playground/static-site-generation/tsconfig.node.json b/legacy/playground/static-site-generation/tsconfig.node.json similarity index 100% rename from playground/static-site-generation/tsconfig.node.json rename to legacy/playground/static-site-generation/tsconfig.node.json diff --git a/playground/static-site-generation/vite.config.ts b/legacy/playground/static-site-generation/vite.config.ts similarity index 100% rename from playground/static-site-generation/vite.config.ts rename to legacy/playground/static-site-generation/vite.config.ts diff --git a/service/demo/.gitignore b/legacy/playground/tree-shaking/.gitignore similarity index 100% rename from service/demo/.gitignore rename to legacy/playground/tree-shaking/.gitignore diff --git a/playground/tree-shaking/README.md b/legacy/playground/tree-shaking/README.md similarity index 100% rename from playground/tree-shaking/README.md rename to legacy/playground/tree-shaking/README.md diff --git a/playground/tree-shaking/eslint.config.js b/legacy/playground/tree-shaking/eslint.config.js similarity index 100% rename from playground/tree-shaking/eslint.config.js rename to legacy/playground/tree-shaking/eslint.config.js diff --git a/legacy/playground/tree-shaking/index.html b/legacy/playground/tree-shaking/index.html new file mode 100644 index 0000000..e4b78ea --- /dev/null +++ b/legacy/playground/tree-shaking/index.html @@ -0,0 +1,13 @@ + + + + + + + Vite + React + TS + + +
    + + + diff --git a/playground/tree-shaking/package.json b/legacy/playground/tree-shaking/package.json similarity index 100% rename from playground/tree-shaking/package.json rename to legacy/playground/tree-shaking/package.json diff --git a/source/module/index/IndexInformationEditor/index.module.css b/legacy/playground/tree-shaking/src/App.css similarity index 100% rename from source/module/index/IndexInformationEditor/index.module.css rename to legacy/playground/tree-shaking/src/App.css diff --git a/playground/tree-shaking/src/App.tsx b/legacy/playground/tree-shaking/src/App.tsx similarity index 100% rename from playground/tree-shaking/src/App.tsx rename to legacy/playground/tree-shaking/src/App.tsx diff --git a/legacy/playground/tree-shaking/src/index.css b/legacy/playground/tree-shaking/src/index.css new file mode 100644 index 0000000..e69de29 diff --git a/playground/tree-shaking/src/main.tsx b/legacy/playground/tree-shaking/src/main.tsx similarity index 100% rename from playground/tree-shaking/src/main.tsx rename to legacy/playground/tree-shaking/src/main.tsx diff --git a/service/pilot/src/vite-env.d.ts b/legacy/playground/tree-shaking/src/vite-env.d.ts similarity index 100% rename from service/pilot/src/vite-env.d.ts rename to legacy/playground/tree-shaking/src/vite-env.d.ts diff --git a/playground/tree-shaking/tsconfig.app.json b/legacy/playground/tree-shaking/tsconfig.app.json similarity index 94% rename from playground/tree-shaking/tsconfig.app.json rename to legacy/playground/tree-shaking/tsconfig.app.json index 72cf219..fb689df 100644 --- a/playground/tree-shaking/tsconfig.app.json +++ b/legacy/playground/tree-shaking/tsconfig.app.json @@ -1,5 +1,4 @@ { - "extends": "../../tsconfig.alias.json", "compilerOptions": { "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", "target": "ES2020", diff --git a/playground/tree-shaking/tsconfig.json b/legacy/playground/tree-shaking/tsconfig.json similarity index 100% rename from playground/tree-shaking/tsconfig.json rename to legacy/playground/tree-shaking/tsconfig.json diff --git a/playground/tree-shaking/tsconfig.node.json b/legacy/playground/tree-shaking/tsconfig.node.json similarity index 100% rename from playground/tree-shaking/tsconfig.node.json rename to legacy/playground/tree-shaking/tsconfig.node.json diff --git a/playground/tree-shaking/vite.config.ts b/legacy/playground/tree-shaking/vite.config.ts similarity index 100% rename from playground/tree-shaking/vite.config.ts rename to legacy/playground/tree-shaking/vite.config.ts diff --git a/service/app/.env b/legacy/service/app/.env similarity index 100% rename from service/app/.env rename to legacy/service/app/.env diff --git a/service/pilot/.gitignore b/legacy/service/app/.gitignore similarity index 100% rename from service/pilot/.gitignore rename to legacy/service/app/.gitignore diff --git a/service/app/README.md b/legacy/service/app/README.md similarity index 100% rename from service/app/README.md rename to legacy/service/app/README.md diff --git a/service/app/eslint.config.js b/legacy/service/app/eslint.config.js similarity index 100% rename from service/app/eslint.config.js rename to legacy/service/app/eslint.config.js diff --git a/service/app/index.html b/legacy/service/app/index.html similarity index 100% rename from service/app/index.html rename to legacy/service/app/index.html diff --git a/service/app/package.json b/legacy/service/app/package.json similarity index 100% rename from service/app/package.json rename to legacy/service/app/package.json diff --git a/service/app/server/data.ts b/legacy/service/app/server/data.ts similarity index 100% rename from service/app/server/data.ts rename to legacy/service/app/server/data.ts diff --git a/service/app/server/generate.ts b/legacy/service/app/server/generate.ts similarity index 100% rename from service/app/server/generate.ts rename to legacy/service/app/server/generate.ts diff --git a/service/app/server/index.ts b/legacy/service/app/server/index.ts similarity index 100% rename from service/app/server/index.ts rename to legacy/service/app/server/index.ts diff --git a/service/app/server/middleware/error/index.ts b/legacy/service/app/server/middleware/error/index.ts similarity index 100% rename from service/app/server/middleware/error/index.ts rename to legacy/service/app/server/middleware/error/index.ts diff --git a/service/app/server/router/box/utility.ts b/legacy/service/app/server/router/box/utility.ts similarity index 100% rename from service/app/server/router/box/utility.ts rename to legacy/service/app/server/router/box/utility.ts diff --git a/service/app/server/router/cdx/index.ts b/legacy/service/app/server/router/cdx/index.ts similarity index 100% rename from service/app/server/router/cdx/index.ts rename to legacy/service/app/server/router/cdx/index.ts diff --git a/service/app/server/router/idx/index.ts b/legacy/service/app/server/router/idx/index.ts similarity index 100% rename from service/app/server/router/idx/index.ts rename to legacy/service/app/server/router/idx/index.ts diff --git a/service/app/server/router/idx/utility.ts b/legacy/service/app/server/router/idx/utility.ts similarity index 100% rename from service/app/server/router/idx/utility.ts rename to legacy/service/app/server/router/idx/utility.ts diff --git a/service/app/server/utility/wrap.ts b/legacy/service/app/server/utility/wrap.ts similarity index 100% rename from service/app/server/utility/wrap.ts rename to legacy/service/app/server/utility/wrap.ts diff --git a/service/app/src/entry/deploy/client/common.ts b/legacy/service/app/src/entry/deploy/client/common.ts similarity index 100% rename from service/app/src/entry/deploy/client/common.ts rename to legacy/service/app/src/entry/deploy/client/common.ts diff --git a/service/app/src/entry/deploy/client/home.tsx b/legacy/service/app/src/entry/deploy/client/home.tsx similarity index 100% rename from service/app/src/entry/deploy/client/home.tsx rename to legacy/service/app/src/entry/deploy/client/home.tsx diff --git a/service/app/src/entry/deploy/client/index.tsx b/legacy/service/app/src/entry/deploy/client/index.tsx similarity index 100% rename from service/app/src/entry/deploy/client/index.tsx rename to legacy/service/app/src/entry/deploy/client/index.tsx diff --git a/service/app/src/entry/deploy/server/home.tsx b/legacy/service/app/src/entry/deploy/server/home.tsx similarity index 100% rename from service/app/src/entry/deploy/server/home.tsx rename to legacy/service/app/src/entry/deploy/server/home.tsx diff --git a/service/app/src/entry/deploy/server/index.tsx b/legacy/service/app/src/entry/deploy/server/index.tsx similarity index 100% rename from service/app/src/entry/deploy/server/index.tsx rename to legacy/service/app/src/entry/deploy/server/index.tsx diff --git a/service/app/src/entry/deploy/template/home.html b/legacy/service/app/src/entry/deploy/template/home.html similarity index 100% rename from service/app/src/entry/deploy/template/home.html rename to legacy/service/app/src/entry/deploy/template/home.html diff --git a/service/app/src/entry/deploy/template/index.html b/legacy/service/app/src/entry/deploy/template/index.html similarity index 100% rename from service/app/src/entry/deploy/template/index.html rename to legacy/service/app/src/entry/deploy/template/index.html diff --git a/service/app/src/entry/local/client.tsx b/legacy/service/app/src/entry/local/client.tsx similarity index 100% rename from service/app/src/entry/local/client.tsx rename to legacy/service/app/src/entry/local/client.tsx diff --git a/service/app/src/entry/local/index.html b/legacy/service/app/src/entry/local/index.html similarity index 100% rename from service/app/src/entry/local/index.html rename to legacy/service/app/src/entry/local/index.html diff --git a/service/app/src/entry/types.ts b/legacy/service/app/src/entry/types.ts similarity index 100% rename from service/app/src/entry/types.ts rename to legacy/service/app/src/entry/types.ts diff --git a/service/app/src/router/deploy/getResourceId.ts b/legacy/service/app/src/router/deploy/getResourceId.ts similarity index 100% rename from service/app/src/router/deploy/getResourceId.ts rename to legacy/service/app/src/router/deploy/getResourceId.ts diff --git a/service/app/src/router/local/index.tsx b/legacy/service/app/src/router/local/index.tsx similarity index 100% rename from service/app/src/router/local/index.tsx rename to legacy/service/app/src/router/local/index.tsx diff --git a/service/app/src/router/local/useResourceId.ts b/legacy/service/app/src/router/local/useResourceId.ts similarity index 100% rename from service/app/src/router/local/useResourceId.ts rename to legacy/service/app/src/router/local/useResourceId.ts diff --git a/service/app/src/ui-blog/home/HomeHeader/index.module.css b/legacy/service/app/src/ui-blog/home/HomeHeader/index.module.css similarity index 100% rename from service/app/src/ui-blog/home/HomeHeader/index.module.css rename to legacy/service/app/src/ui-blog/home/HomeHeader/index.module.css diff --git a/service/app/src/ui-blog/home/HomeHeader/index.tsx b/legacy/service/app/src/ui-blog/home/HomeHeader/index.tsx similarity index 100% rename from service/app/src/ui-blog/home/HomeHeader/index.tsx rename to legacy/service/app/src/ui-blog/home/HomeHeader/index.tsx diff --git a/legacy/service/app/src/ui-blog/home/HomePage/index.module.css b/legacy/service/app/src/ui-blog/home/HomePage/index.module.css new file mode 100644 index 0000000..e69de29 diff --git a/service/app/src/ui-blog/home/HomePage/index.tsx b/legacy/service/app/src/ui-blog/home/HomePage/index.tsx similarity index 100% rename from service/app/src/ui-blog/home/HomePage/index.tsx rename to legacy/service/app/src/ui-blog/home/HomePage/index.tsx diff --git a/service/app/src/ui-blog/home/Recents/RecentItem/index.module.css b/legacy/service/app/src/ui-blog/home/Recents/RecentItem/index.module.css similarity index 100% rename from service/app/src/ui-blog/home/Recents/RecentItem/index.module.css rename to legacy/service/app/src/ui-blog/home/Recents/RecentItem/index.module.css diff --git a/service/app/src/ui-blog/home/Recents/RecentItem/index.tsx b/legacy/service/app/src/ui-blog/home/Recents/RecentItem/index.tsx similarity index 100% rename from service/app/src/ui-blog/home/Recents/RecentItem/index.tsx rename to legacy/service/app/src/ui-blog/home/Recents/RecentItem/index.tsx diff --git a/service/app/src/ui-blog/home/Recents/index.module.css b/legacy/service/app/src/ui-blog/home/Recents/index.module.css similarity index 100% rename from service/app/src/ui-blog/home/Recents/index.module.css rename to legacy/service/app/src/ui-blog/home/Recents/index.module.css diff --git a/service/app/src/ui-blog/home/Recents/index.tsx b/legacy/service/app/src/ui-blog/home/Recents/index.tsx similarity index 100% rename from service/app/src/ui-blog/home/Recents/index.tsx rename to legacy/service/app/src/ui-blog/home/Recents/index.tsx diff --git a/service/app/src/ui-blog/idx/ReadIndexPage/index.tsx b/legacy/service/app/src/ui-blog/idx/ReadIndexPage/index.tsx similarity index 100% rename from service/app/src/ui-blog/idx/ReadIndexPage/index.tsx rename to legacy/service/app/src/ui-blog/idx/ReadIndexPage/index.tsx diff --git a/legacy/service/app/src/ui-editor/NavigatorLayout/index.module.css b/legacy/service/app/src/ui-editor/NavigatorLayout/index.module.css new file mode 100644 index 0000000..e69de29 diff --git a/service/app/src/ui-editor/NavigatorLayout/index.tsx b/legacy/service/app/src/ui-editor/NavigatorLayout/index.tsx similarity index 100% rename from service/app/src/ui-editor/NavigatorLayout/index.tsx rename to legacy/service/app/src/ui-editor/NavigatorLayout/index.tsx diff --git a/legacy/service/app/src/ui-editor/home/HomePage/index.module.css b/legacy/service/app/src/ui-editor/home/HomePage/index.module.css new file mode 100644 index 0000000..e69de29 diff --git a/service/app/src/ui-editor/home/HomePage/index.tsx b/legacy/service/app/src/ui-editor/home/HomePage/index.tsx similarity index 100% rename from service/app/src/ui-editor/home/HomePage/index.tsx rename to legacy/service/app/src/ui-editor/home/HomePage/index.tsx diff --git a/service/app/src/ui-editor/home/ManageIndexSection/index.module.css b/legacy/service/app/src/ui-editor/home/ManageIndexSection/index.module.css similarity index 100% rename from service/app/src/ui-editor/home/ManageIndexSection/index.module.css rename to legacy/service/app/src/ui-editor/home/ManageIndexSection/index.module.css diff --git a/service/app/src/ui-editor/home/ManageIndexSection/index.tsx b/legacy/service/app/src/ui-editor/home/ManageIndexSection/index.tsx similarity index 100% rename from service/app/src/ui-editor/home/ManageIndexSection/index.tsx rename to legacy/service/app/src/ui-editor/home/ManageIndexSection/index.tsx diff --git a/service/app/src/ui-editor/idx/IndexPage/MinimizableSection/index.module.css b/legacy/service/app/src/ui-editor/idx/IndexPage/MinimizableSection/index.module.css similarity index 100% rename from service/app/src/ui-editor/idx/IndexPage/MinimizableSection/index.module.css rename to legacy/service/app/src/ui-editor/idx/IndexPage/MinimizableSection/index.module.css diff --git a/service/app/src/ui-editor/idx/IndexPage/MinimizableSection/index.tsx b/legacy/service/app/src/ui-editor/idx/IndexPage/MinimizableSection/index.tsx similarity index 100% rename from service/app/src/ui-editor/idx/IndexPage/MinimizableSection/index.tsx rename to legacy/service/app/src/ui-editor/idx/IndexPage/MinimizableSection/index.tsx diff --git a/service/app/src/ui-editor/idx/IndexPage/index.module.css b/legacy/service/app/src/ui-editor/idx/IndexPage/index.module.css similarity index 100% rename from service/app/src/ui-editor/idx/IndexPage/index.module.css rename to legacy/service/app/src/ui-editor/idx/IndexPage/index.module.css diff --git a/service/app/src/ui-editor/idx/IndexPage/index.tsx b/legacy/service/app/src/ui-editor/idx/IndexPage/index.tsx similarity index 100% rename from service/app/src/ui-editor/idx/IndexPage/index.tsx rename to legacy/service/app/src/ui-editor/idx/IndexPage/index.tsx diff --git a/service/app/src/util/parsePath.ts b/legacy/service/app/src/util/parsePath.ts similarity index 100% rename from service/app/src/util/parsePath.ts rename to legacy/service/app/src/util/parsePath.ts diff --git a/source/design/vite-env.d.ts b/legacy/service/app/src/vite-env.d.ts similarity index 100% rename from source/design/vite-env.d.ts rename to legacy/service/app/src/vite-env.d.ts diff --git a/service/app/tsconfig.app.json b/legacy/service/app/tsconfig.app.json similarity index 93% rename from service/app/tsconfig.app.json rename to legacy/service/app/tsconfig.app.json index 2c47c74..5e6f4f4 100644 --- a/service/app/tsconfig.app.json +++ b/legacy/service/app/tsconfig.app.json @@ -1,5 +1,4 @@ { - "extends": "../../tsconfig.alias.json", "compilerOptions": { "target": "ES2020", "useDefineForClassFields": true, diff --git a/service/app/tsconfig.json b/legacy/service/app/tsconfig.json similarity index 100% rename from service/app/tsconfig.json rename to legacy/service/app/tsconfig.json diff --git a/service/app/tsconfig.node.json b/legacy/service/app/tsconfig.node.json similarity index 100% rename from service/app/tsconfig.node.json rename to legacy/service/app/tsconfig.node.json diff --git a/service/app/vite.config.ts b/legacy/service/app/vite.config.ts similarity index 100% rename from service/app/vite.config.ts rename to legacy/service/app/vite.config.ts diff --git a/source/design/.gitignore b/legacy/service/demo/.gitignore similarity index 100% rename from source/design/.gitignore rename to legacy/service/demo/.gitignore diff --git a/service/demo/README.md b/legacy/service/demo/README.md similarity index 100% rename from service/demo/README.md rename to legacy/service/demo/README.md diff --git a/service/demo/eslint.config.js b/legacy/service/demo/eslint.config.js similarity index 100% rename from service/demo/eslint.config.js rename to legacy/service/demo/eslint.config.js diff --git a/service/demo/index.html b/legacy/service/demo/index.html similarity index 100% rename from service/demo/index.html rename to legacy/service/demo/index.html diff --git a/service/demo/package.json b/legacy/service/demo/package.json similarity index 100% rename from service/demo/package.json rename to legacy/service/demo/package.json diff --git a/service/demo/src/App.tsx b/legacy/service/demo/src/App.tsx similarity index 100% rename from service/demo/src/App.tsx rename to legacy/service/demo/src/App.tsx diff --git a/legacy/service/demo/src/main.tsx b/legacy/service/demo/src/main.tsx new file mode 100644 index 0000000..5d4a2be --- /dev/null +++ b/legacy/service/demo/src/main.tsx @@ -0,0 +1,9 @@ +import { StrictMode } from "react"; +import { createRoot } from "react-dom/client"; +import App from "./App.tsx"; + +createRoot(document.getElementById("root")!).render( + + + , +); diff --git a/source/module/vite-env.d.ts b/legacy/service/demo/src/vite-env.d.ts similarity index 100% rename from source/module/vite-env.d.ts rename to legacy/service/demo/src/vite-env.d.ts diff --git a/service/demo/tsconfig.app.json b/legacy/service/demo/tsconfig.app.json similarity index 92% rename from service/demo/tsconfig.app.json rename to legacy/service/demo/tsconfig.app.json index 130f2d0..f0a2350 100644 --- a/service/demo/tsconfig.app.json +++ b/legacy/service/demo/tsconfig.app.json @@ -1,5 +1,4 @@ { - "extends": "../../tsconfig.alias.json", "compilerOptions": { "target": "ES2020", "useDefineForClassFields": true, diff --git a/service/demo/tsconfig.json b/legacy/service/demo/tsconfig.json similarity index 100% rename from service/demo/tsconfig.json rename to legacy/service/demo/tsconfig.json diff --git a/service/demo/tsconfig.node.json b/legacy/service/demo/tsconfig.node.json similarity index 100% rename from service/demo/tsconfig.node.json rename to legacy/service/demo/tsconfig.node.json diff --git a/service/demo/vite.config.ts b/legacy/service/demo/vite.config.ts similarity index 100% rename from service/demo/vite.config.ts rename to legacy/service/demo/vite.config.ts diff --git a/source/module/.gitignore b/legacy/service/pilot/.gitignore similarity index 100% rename from source/module/.gitignore rename to legacy/service/pilot/.gitignore diff --git a/service/pilot/README.md b/legacy/service/pilot/README.md similarity index 100% rename from service/pilot/README.md rename to legacy/service/pilot/README.md diff --git a/service/pilot/eslint.config.js b/legacy/service/pilot/eslint.config.js similarity index 100% rename from service/pilot/eslint.config.js rename to legacy/service/pilot/eslint.config.js diff --git a/service/pilot/index.html b/legacy/service/pilot/index.html similarity index 100% rename from service/pilot/index.html rename to legacy/service/pilot/index.html diff --git a/service/pilot/package.json b/legacy/service/pilot/package.json similarity index 100% rename from service/pilot/package.json rename to legacy/service/pilot/package.json diff --git a/service/pilot/src/component/block/BlockReader/BlockReader.tsx b/legacy/service/pilot/src/component/block/BlockReader/BlockReader.tsx similarity index 100% rename from service/pilot/src/component/block/BlockReader/BlockReader.tsx rename to legacy/service/pilot/src/component/block/BlockReader/BlockReader.tsx diff --git a/service/pilot/src/component/box/BoxReader/BoxReader.tsx b/legacy/service/pilot/src/component/box/BoxReader/BoxReader.tsx similarity index 100% rename from service/pilot/src/component/box/BoxReader/BoxReader.tsx rename to legacy/service/pilot/src/component/box/BoxReader/BoxReader.tsx diff --git a/service/pilot/src/component/inline/InlineReader/InlineReader.tsx b/legacy/service/pilot/src/component/inline/InlineReader/InlineReader.tsx similarity index 100% rename from service/pilot/src/component/inline/InlineReader/InlineReader.tsx rename to legacy/service/pilot/src/component/inline/InlineReader/InlineReader.tsx diff --git a/service/pilot/src/core/constant/contentType.ts b/legacy/service/pilot/src/core/constant/contentType.ts similarity index 100% rename from service/pilot/src/core/constant/contentType.ts rename to legacy/service/pilot/src/core/constant/contentType.ts diff --git a/service/pilot/src/core/constant/id.ts b/legacy/service/pilot/src/core/constant/id.ts similarity index 100% rename from service/pilot/src/core/constant/id.ts rename to legacy/service/pilot/src/core/constant/id.ts diff --git a/service/pilot/src/core/entity/box/Box.ts b/legacy/service/pilot/src/core/entity/box/Box.ts similarity index 100% rename from service/pilot/src/core/entity/box/Box.ts rename to legacy/service/pilot/src/core/entity/box/Box.ts diff --git a/service/pilot/src/core/entity/box/BoxStyle.ts b/legacy/service/pilot/src/core/entity/box/BoxStyle.ts similarity index 100% rename from service/pilot/src/core/entity/box/BoxStyle.ts rename to legacy/service/pilot/src/core/entity/box/BoxStyle.ts diff --git a/service/pilot/src/core/entity/codex/Codex.ts b/legacy/service/pilot/src/core/entity/codex/Codex.ts similarity index 100% rename from service/pilot/src/core/entity/codex/Codex.ts rename to legacy/service/pilot/src/core/entity/codex/Codex.ts diff --git a/service/pilot/src/core/entity/codex/CodexOutline.ts b/legacy/service/pilot/src/core/entity/codex/CodexOutline.ts similarity index 100% rename from service/pilot/src/core/entity/codex/CodexOutline.ts rename to legacy/service/pilot/src/core/entity/codex/CodexOutline.ts diff --git a/service/pilot/src/core/entity/codex/CodexSummary.ts b/legacy/service/pilot/src/core/entity/codex/CodexSummary.ts similarity index 100% rename from service/pilot/src/core/entity/codex/CodexSummary.ts rename to legacy/service/pilot/src/core/entity/codex/CodexSummary.ts diff --git a/service/pilot/src/core/entity/common/Metadata.ts b/legacy/service/pilot/src/core/entity/common/Metadata.ts similarity index 100% rename from service/pilot/src/core/entity/common/Metadata.ts rename to legacy/service/pilot/src/core/entity/common/Metadata.ts diff --git a/service/pilot/src/core/entity/common/Tag.ts b/legacy/service/pilot/src/core/entity/common/Tag.ts similarity index 100% rename from service/pilot/src/core/entity/common/Tag.ts rename to legacy/service/pilot/src/core/entity/common/Tag.ts diff --git a/service/pilot/src/core/entity/editor/block.ts b/legacy/service/pilot/src/core/entity/editor/block.ts similarity index 100% rename from service/pilot/src/core/entity/editor/block.ts rename to legacy/service/pilot/src/core/entity/editor/block.ts diff --git a/service/pilot/src/core/entity/editor/inline.ts b/legacy/service/pilot/src/core/entity/editor/inline.ts similarity index 100% rename from service/pilot/src/core/entity/editor/inline.ts rename to legacy/service/pilot/src/core/entity/editor/inline.ts diff --git a/service/pilot/src/core/entity/index/Index.ts b/legacy/service/pilot/src/core/entity/index/Index.ts similarity index 100% rename from service/pilot/src/core/entity/index/Index.ts rename to legacy/service/pilot/src/core/entity/index/Index.ts diff --git a/service/pilot/src/core/entity/index/IndexSummary.ts b/legacy/service/pilot/src/core/entity/index/IndexSummary.ts similarity index 100% rename from service/pilot/src/core/entity/index/IndexSummary.ts rename to legacy/service/pilot/src/core/entity/index/IndexSummary.ts diff --git a/service/pilot/src/core/entity/user/User.ts b/legacy/service/pilot/src/core/entity/user/User.ts similarity index 100% rename from service/pilot/src/core/entity/user/User.ts rename to legacy/service/pilot/src/core/entity/user/User.ts diff --git a/service/pilot/src/core/utility/brand.ts b/legacy/service/pilot/src/core/utility/brand.ts similarity index 100% rename from service/pilot/src/core/utility/brand.ts rename to legacy/service/pilot/src/core/utility/brand.ts diff --git a/service/pilot/src/data/index/1.ts b/legacy/service/pilot/src/data/index/1.ts similarity index 100% rename from service/pilot/src/data/index/1.ts rename to legacy/service/pilot/src/data/index/1.ts diff --git a/service/pilot/src/data/index/index.ts b/legacy/service/pilot/src/data/index/index.ts similarity index 100% rename from service/pilot/src/data/index/index.ts rename to legacy/service/pilot/src/data/index/index.ts diff --git a/service/pilot/src/data/user/1.ts b/legacy/service/pilot/src/data/user/1.ts similarity index 100% rename from service/pilot/src/data/user/1.ts rename to legacy/service/pilot/src/data/user/1.ts diff --git a/service/pilot/src/hook/useFlexive/useFlexive.ts b/legacy/service/pilot/src/hook/useFlexive/useFlexive.ts similarity index 100% rename from service/pilot/src/hook/useFlexive/useFlexive.ts rename to legacy/service/pilot/src/hook/useFlexive/useFlexive.ts diff --git a/service/pilot/src/hook/useId/index.ts b/legacy/service/pilot/src/hook/useId/index.ts similarity index 100% rename from service/pilot/src/hook/useId/index.ts rename to legacy/service/pilot/src/hook/useId/index.ts diff --git a/service/pilot/src/hook/useStyle/useStyle.ts b/legacy/service/pilot/src/hook/useStyle/useStyle.ts similarity index 100% rename from service/pilot/src/hook/useStyle/useStyle.ts rename to legacy/service/pilot/src/hook/useStyle/useStyle.ts diff --git a/service/pilot/src/hook/useTypo/useTypo.ts b/legacy/service/pilot/src/hook/useTypo/useTypo.ts similarity index 100% rename from service/pilot/src/hook/useTypo/useTypo.ts rename to legacy/service/pilot/src/hook/useTypo/useTypo.ts diff --git a/service/pilot/src/main.tsx b/legacy/service/pilot/src/main.tsx similarity index 100% rename from service/pilot/src/main.tsx rename to legacy/service/pilot/src/main.tsx diff --git a/service/pilot/src/router/index.tsx b/legacy/service/pilot/src/router/index.tsx similarity index 100% rename from service/pilot/src/router/index.tsx rename to legacy/service/pilot/src/router/index.tsx diff --git a/service/pilot/src/style/index.css b/legacy/service/pilot/src/style/index.css similarity index 100% rename from service/pilot/src/style/index.css rename to legacy/service/pilot/src/style/index.css diff --git a/service/pilot/src/style/layout/box-sizing.css b/legacy/service/pilot/src/style/layout/box-sizing.css similarity index 100% rename from service/pilot/src/style/layout/box-sizing.css rename to legacy/service/pilot/src/style/layout/box-sizing.css diff --git a/service/pilot/src/style/layout/index.css b/legacy/service/pilot/src/style/layout/index.css similarity index 100% rename from service/pilot/src/style/layout/index.css rename to legacy/service/pilot/src/style/layout/index.css diff --git a/service/pilot/src/style/reset/anchor.css b/legacy/service/pilot/src/style/reset/anchor.css similarity index 100% rename from service/pilot/src/style/reset/anchor.css rename to legacy/service/pilot/src/style/reset/anchor.css diff --git a/legacy/service/pilot/src/style/reset/button.css b/legacy/service/pilot/src/style/reset/button.css new file mode 100644 index 0000000..e69de29 diff --git a/service/pilot/src/style/reset/index.css b/legacy/service/pilot/src/style/reset/index.css similarity index 100% rename from service/pilot/src/style/reset/index.css rename to legacy/service/pilot/src/style/reset/index.css diff --git a/service/pilot/src/style/reset/layout.css b/legacy/service/pilot/src/style/reset/layout.css similarity index 100% rename from service/pilot/src/style/reset/layout.css rename to legacy/service/pilot/src/style/reset/layout.css diff --git a/service/pilot/src/style/reset/old.css b/legacy/service/pilot/src/style/reset/old.css similarity index 100% rename from service/pilot/src/style/reset/old.css rename to legacy/service/pilot/src/style/reset/old.css diff --git a/service/pilot/src/style/typography/body.css b/legacy/service/pilot/src/style/typography/body.css similarity index 100% rename from service/pilot/src/style/typography/body.css rename to legacy/service/pilot/src/style/typography/body.css diff --git a/service/pilot/src/style/typography/heading.css b/legacy/service/pilot/src/style/typography/heading.css similarity index 100% rename from service/pilot/src/style/typography/heading.css rename to legacy/service/pilot/src/style/typography/heading.css diff --git a/service/pilot/src/style/typography/index.css b/legacy/service/pilot/src/style/typography/index.css similarity index 100% rename from service/pilot/src/style/typography/index.css rename to legacy/service/pilot/src/style/typography/index.css diff --git a/service/pilot/src/style/typography/weight.css b/legacy/service/pilot/src/style/typography/weight.css similarity index 100% rename from service/pilot/src/style/typography/weight.css rename to legacy/service/pilot/src/style/typography/weight.css diff --git a/service/pilot/src/temp/component/BlockReader/BlockReader.tsx b/legacy/service/pilot/src/temp/component/BlockReader/BlockReader.tsx similarity index 100% rename from service/pilot/src/temp/component/BlockReader/BlockReader.tsx rename to legacy/service/pilot/src/temp/component/BlockReader/BlockReader.tsx diff --git a/service/pilot/src/temp/component/CodexReader/CodexReader.module.css b/legacy/service/pilot/src/temp/component/CodexReader/CodexReader.module.css similarity index 100% rename from service/pilot/src/temp/component/CodexReader/CodexReader.module.css rename to legacy/service/pilot/src/temp/component/CodexReader/CodexReader.module.css diff --git a/service/pilot/src/temp/component/CodexReader/CodexReader.tsx b/legacy/service/pilot/src/temp/component/CodexReader/CodexReader.tsx similarity index 100% rename from service/pilot/src/temp/component/CodexReader/CodexReader.tsx rename to legacy/service/pilot/src/temp/component/CodexReader/CodexReader.tsx diff --git a/service/pilot/src/temp/component/IndexReader/IndexReader.tsx b/legacy/service/pilot/src/temp/component/IndexReader/IndexReader.tsx similarity index 100% rename from service/pilot/src/temp/component/IndexReader/IndexReader.tsx rename to legacy/service/pilot/src/temp/component/IndexReader/IndexReader.tsx diff --git a/service/pilot/src/temp/component/InlineReader/InlineReader.tsx b/legacy/service/pilot/src/temp/component/InlineReader/InlineReader.tsx similarity index 100% rename from service/pilot/src/temp/component/InlineReader/InlineReader.tsx rename to legacy/service/pilot/src/temp/component/InlineReader/InlineReader.tsx diff --git a/service/pilot/src/temp/constant/id.ts b/legacy/service/pilot/src/temp/constant/id.ts similarity index 100% rename from service/pilot/src/temp/constant/id.ts rename to legacy/service/pilot/src/temp/constant/id.ts diff --git a/service/pilot/src/temp/core/block.ts b/legacy/service/pilot/src/temp/core/block.ts similarity index 100% rename from service/pilot/src/temp/core/block.ts rename to legacy/service/pilot/src/temp/core/block.ts diff --git a/service/pilot/src/temp/core/codex.ts b/legacy/service/pilot/src/temp/core/codex.ts similarity index 100% rename from service/pilot/src/temp/core/codex.ts rename to legacy/service/pilot/src/temp/core/codex.ts diff --git a/service/pilot/src/temp/core/index.ts b/legacy/service/pilot/src/temp/core/index.ts similarity index 100% rename from service/pilot/src/temp/core/index.ts rename to legacy/service/pilot/src/temp/core/index.ts diff --git a/service/pilot/src/temp/core/inline.ts b/legacy/service/pilot/src/temp/core/inline.ts similarity index 100% rename from service/pilot/src/temp/core/inline.ts rename to legacy/service/pilot/src/temp/core/inline.ts diff --git a/service/pilot/src/temp/core/tag.ts b/legacy/service/pilot/src/temp/core/tag.ts similarity index 100% rename from service/pilot/src/temp/core/tag.ts rename to legacy/service/pilot/src/temp/core/tag.ts diff --git a/service/pilot/src/temp/sample/generator.ts b/legacy/service/pilot/src/temp/sample/generator.ts similarity index 100% rename from service/pilot/src/temp/sample/generator.ts rename to legacy/service/pilot/src/temp/sample/generator.ts diff --git a/service/pilot/src/temp/sample/index.ts b/legacy/service/pilot/src/temp/sample/index.ts similarity index 100% rename from service/pilot/src/temp/sample/index.ts rename to legacy/service/pilot/src/temp/sample/index.ts diff --git a/legacy/service/pilot/src/ui/codex/CodexPage/CodexPage.module.css b/legacy/service/pilot/src/ui/codex/CodexPage/CodexPage.module.css new file mode 100644 index 0000000..e69de29 diff --git a/service/pilot/src/ui/codex/CodexPage/CodexPage.tsx b/legacy/service/pilot/src/ui/codex/CodexPage/CodexPage.tsx similarity index 100% rename from service/pilot/src/ui/codex/CodexPage/CodexPage.tsx rename to legacy/service/pilot/src/ui/codex/CodexPage/CodexPage.tsx diff --git a/service/pilot/src/ui/home/HomePage/HomePage.module.css b/legacy/service/pilot/src/ui/home/HomePage/HomePage.module.css similarity index 100% rename from service/pilot/src/ui/home/HomePage/HomePage.module.css rename to legacy/service/pilot/src/ui/home/HomePage/HomePage.module.css diff --git a/service/pilot/src/ui/home/HomePage/HomePage.tsx b/legacy/service/pilot/src/ui/home/HomePage/HomePage.tsx similarity index 100% rename from service/pilot/src/ui/home/HomePage/HomePage.tsx rename to legacy/service/pilot/src/ui/home/HomePage/HomePage.tsx diff --git a/legacy/service/pilot/src/ui/index/IndexNavigator/IndexNavigator.module.css b/legacy/service/pilot/src/ui/index/IndexNavigator/IndexNavigator.module.css new file mode 100644 index 0000000..e69de29 diff --git a/service/pilot/src/ui/index/IndexNavigator/IndexNavigator.tsx b/legacy/service/pilot/src/ui/index/IndexNavigator/IndexNavigator.tsx similarity index 100% rename from service/pilot/src/ui/index/IndexNavigator/IndexNavigator.tsx rename to legacy/service/pilot/src/ui/index/IndexNavigator/IndexNavigator.tsx diff --git a/legacy/service/pilot/src/ui/index/IndexPage/IndexPage.module.css b/legacy/service/pilot/src/ui/index/IndexPage/IndexPage.module.css new file mode 100644 index 0000000..e69de29 diff --git a/service/pilot/src/ui/index/IndexPage/IndexPage.tsx b/legacy/service/pilot/src/ui/index/IndexPage/IndexPage.tsx similarity index 100% rename from service/pilot/src/ui/index/IndexPage/IndexPage.tsx rename to legacy/service/pilot/src/ui/index/IndexPage/IndexPage.tsx diff --git a/legacy/service/pilot/src/vite-env.d.ts b/legacy/service/pilot/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/legacy/service/pilot/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/playground/graphics/tsconfig.app.json b/legacy/service/pilot/tsconfig.app.json similarity index 92% rename from playground/graphics/tsconfig.app.json rename to legacy/service/pilot/tsconfig.app.json index 130f2d0..f0a2350 100644 --- a/playground/graphics/tsconfig.app.json +++ b/legacy/service/pilot/tsconfig.app.json @@ -1,5 +1,4 @@ { - "extends": "../../tsconfig.alias.json", "compilerOptions": { "target": "ES2020", "useDefineForClassFields": true, diff --git a/service/pilot/tsconfig.json b/legacy/service/pilot/tsconfig.json similarity index 100% rename from service/pilot/tsconfig.json rename to legacy/service/pilot/tsconfig.json diff --git a/service/pilot/tsconfig.node.json b/legacy/service/pilot/tsconfig.node.json similarity index 100% rename from service/pilot/tsconfig.node.json rename to legacy/service/pilot/tsconfig.node.json diff --git a/service/pilot/vite.config.ts b/legacy/service/pilot/vite.config.ts similarity index 100% rename from service/pilot/vite.config.ts rename to legacy/service/pilot/vite.config.ts diff --git a/legacy/source/design/.gitignore b/legacy/source/design/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/legacy/source/design/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/source/design/README.md b/legacy/source/design/README.md similarity index 100% rename from source/design/README.md rename to legacy/source/design/README.md diff --git a/source/design/component/area/MainContent/index.tsx b/legacy/source/design/component/area/MainContent/index.tsx similarity index 100% rename from source/design/component/area/MainContent/index.tsx rename to legacy/source/design/component/area/MainContent/index.tsx diff --git a/source/design/component/area/editor/EditorPanel/index.module.css b/legacy/source/design/component/area/editor/EditorPanel/index.module.css similarity index 100% rename from source/design/component/area/editor/EditorPanel/index.module.css rename to legacy/source/design/component/area/editor/EditorPanel/index.module.css diff --git a/source/design/component/area/editor/EditorPanel/index.tsx b/legacy/source/design/component/area/editor/EditorPanel/index.tsx similarity index 100% rename from source/design/component/area/editor/EditorPanel/index.tsx rename to legacy/source/design/component/area/editor/EditorPanel/index.tsx diff --git a/source/design/component/area/editor/index.ts b/legacy/source/design/component/area/editor/index.ts similarity index 100% rename from source/design/component/area/editor/index.ts rename to legacy/source/design/component/area/editor/index.ts diff --git a/source/design/component/area/index.ts b/legacy/source/design/component/area/index.ts similarity index 100% rename from source/design/component/area/index.ts rename to legacy/source/design/component/area/index.ts diff --git a/source/design/component/button/Button/index.module.css b/legacy/source/design/component/button/Button/index.module.css similarity index 100% rename from source/design/component/button/Button/index.module.css rename to legacy/source/design/component/button/Button/index.module.css diff --git a/source/design/component/button/Button/index.tsx b/legacy/source/design/component/button/Button/index.tsx similarity index 100% rename from source/design/component/button/Button/index.tsx rename to legacy/source/design/component/button/Button/index.tsx diff --git a/source/design/component/button/Selectable/index.module.css b/legacy/source/design/component/button/Selectable/index.module.css similarity index 100% rename from source/design/component/button/Selectable/index.module.css rename to legacy/source/design/component/button/Selectable/index.module.css diff --git a/source/design/component/button/Selectable/index.tsx b/legacy/source/design/component/button/Selectable/index.tsx similarity index 100% rename from source/design/component/button/Selectable/index.tsx rename to legacy/source/design/component/button/Selectable/index.tsx diff --git a/source/design/component/button/index.ts b/legacy/source/design/component/button/index.ts similarity index 100% rename from source/design/component/button/index.ts rename to legacy/source/design/component/button/index.ts diff --git a/source/design/component/icon/common.module.css b/legacy/source/design/component/icon/common.module.css similarity index 100% rename from source/design/component/icon/common.module.css rename to legacy/source/design/component/icon/common.module.css diff --git a/source/design/component/icon/general/Arrow/index.tsx b/legacy/source/design/component/icon/general/Arrow/index.tsx similarity index 100% rename from source/design/component/icon/general/Arrow/index.tsx rename to legacy/source/design/component/icon/general/Arrow/index.tsx diff --git a/source/design/component/icon/general/Chevron/index.tsx b/legacy/source/design/component/icon/general/Chevron/index.tsx similarity index 100% rename from source/design/component/icon/general/Chevron/index.tsx rename to legacy/source/design/component/icon/general/Chevron/index.tsx diff --git a/source/design/component/icon/general/Copy/index.tsx b/legacy/source/design/component/icon/general/Copy/index.tsx similarity index 100% rename from source/design/component/icon/general/Copy/index.tsx rename to legacy/source/design/component/icon/general/Copy/index.tsx diff --git a/source/design/component/icon/general/Package/index.tsx b/legacy/source/design/component/icon/general/Package/index.tsx similarity index 100% rename from source/design/component/icon/general/Package/index.tsx rename to legacy/source/design/component/icon/general/Package/index.tsx diff --git a/source/design/component/icon/general/Plus/index.tsx b/legacy/source/design/component/icon/general/Plus/index.tsx similarity index 100% rename from source/design/component/icon/general/Plus/index.tsx rename to legacy/source/design/component/icon/general/Plus/index.tsx diff --git a/source/design/component/icon/general/PlusBox/index.tsx b/legacy/source/design/component/icon/general/PlusBox/index.tsx similarity index 100% rename from source/design/component/icon/general/PlusBox/index.tsx rename to legacy/source/design/component/icon/general/PlusBox/index.tsx diff --git a/source/design/component/icon/general/PlusCircle/index.tsx b/legacy/source/design/component/icon/general/PlusCircle/index.tsx similarity index 100% rename from source/design/component/icon/general/PlusCircle/index.tsx rename to legacy/source/design/component/icon/general/PlusCircle/index.tsx diff --git a/source/design/component/icon/general/X/index.tsx b/legacy/source/design/component/icon/general/X/index.tsx similarity index 100% rename from source/design/component/icon/general/X/index.tsx rename to legacy/source/design/component/icon/general/X/index.tsx diff --git a/source/design/component/icon/general/XCircle/index.tsx b/legacy/source/design/component/icon/general/XCircle/index.tsx similarity index 100% rename from source/design/component/icon/general/XCircle/index.tsx rename to legacy/source/design/component/icon/general/XCircle/index.tsx diff --git a/source/design/component/icon/general/index.ts b/legacy/source/design/component/icon/general/index.ts similarity index 100% rename from source/design/component/icon/general/index.ts rename to legacy/source/design/component/icon/general/index.ts diff --git a/source/design/component/icon/index.ts b/legacy/source/design/component/icon/index.ts similarity index 100% rename from source/design/component/icon/index.ts rename to legacy/source/design/component/icon/index.ts diff --git a/source/design/component/icon/props.ts b/legacy/source/design/component/icon/props.ts similarity index 100% rename from source/design/component/icon/props.ts rename to legacy/source/design/component/icon/props.ts diff --git a/source/design/component/icon/style/AlignAround/index.tsx b/legacy/source/design/component/icon/style/AlignAround/index.tsx similarity index 100% rename from source/design/component/icon/style/AlignAround/index.tsx rename to legacy/source/design/component/icon/style/AlignAround/index.tsx diff --git a/source/design/component/icon/style/AlignBetween/index.tsx b/legacy/source/design/component/icon/style/AlignBetween/index.tsx similarity index 100% rename from source/design/component/icon/style/AlignBetween/index.tsx rename to legacy/source/design/component/icon/style/AlignBetween/index.tsx diff --git a/source/design/component/icon/style/AlignCenter/index.tsx b/legacy/source/design/component/icon/style/AlignCenter/index.tsx similarity index 100% rename from source/design/component/icon/style/AlignCenter/index.tsx rename to legacy/source/design/component/icon/style/AlignCenter/index.tsx diff --git a/source/design/component/icon/style/AlignEnd/index.tsx b/legacy/source/design/component/icon/style/AlignEnd/index.tsx similarity index 100% rename from source/design/component/icon/style/AlignEnd/index.tsx rename to legacy/source/design/component/icon/style/AlignEnd/index.tsx diff --git a/source/design/component/icon/style/AlignEvenly/index.tsx b/legacy/source/design/component/icon/style/AlignEvenly/index.tsx similarity index 100% rename from source/design/component/icon/style/AlignEvenly/index.tsx rename to legacy/source/design/component/icon/style/AlignEvenly/index.tsx diff --git a/source/design/component/icon/style/AlignStart/index.tsx b/legacy/source/design/component/icon/style/AlignStart/index.tsx similarity index 100% rename from source/design/component/icon/style/AlignStart/index.tsx rename to legacy/source/design/component/icon/style/AlignStart/index.tsx diff --git a/source/design/component/icon/style/AlignStretch/index.tsx b/legacy/source/design/component/icon/style/AlignStretch/index.tsx similarity index 100% rename from source/design/component/icon/style/AlignStretch/index.tsx rename to legacy/source/design/component/icon/style/AlignStretch/index.tsx diff --git a/source/design/component/icon/style/index.ts b/legacy/source/design/component/icon/style/index.ts similarity index 100% rename from source/design/component/icon/style/index.ts rename to legacy/source/design/component/icon/style/index.ts diff --git a/source/design/component/input/index.ts b/legacy/source/design/component/input/index.ts similarity index 100% rename from source/design/component/input/index.ts rename to legacy/source/design/component/input/index.ts diff --git a/source/design/component/input/label/InputLabel/index.module.css b/legacy/source/design/component/input/label/InputLabel/index.module.css similarity index 100% rename from source/design/component/input/label/InputLabel/index.module.css rename to legacy/source/design/component/input/label/InputLabel/index.module.css diff --git a/source/design/component/input/label/InputLabel/index.tsx b/legacy/source/design/component/input/label/InputLabel/index.tsx similarity index 100% rename from source/design/component/input/label/InputLabel/index.tsx rename to legacy/source/design/component/input/label/InputLabel/index.tsx diff --git a/source/design/component/input/label/index.ts b/legacy/source/design/component/input/label/index.ts similarity index 100% rename from source/design/component/input/label/index.ts rename to legacy/source/design/component/input/label/index.ts diff --git a/legacy/source/design/component/input/select/Select/index.module.css b/legacy/source/design/component/input/select/Select/index.module.css new file mode 100644 index 0000000..e69de29 diff --git a/source/design/component/input/select/Select/index.tsx b/legacy/source/design/component/input/select/Select/index.tsx similarity index 100% rename from source/design/component/input/select/Select/index.tsx rename to legacy/source/design/component/input/select/Select/index.tsx diff --git a/source/design/component/input/select/index.ts b/legacy/source/design/component/input/select/index.ts similarity index 100% rename from source/design/component/input/select/index.ts rename to legacy/source/design/component/input/select/index.ts diff --git a/source/design/component/input/style/InputColor/index.module.css b/legacy/source/design/component/input/style/InputColor/index.module.css similarity index 100% rename from source/design/component/input/style/InputColor/index.module.css rename to legacy/source/design/component/input/style/InputColor/index.module.css diff --git a/source/design/component/input/style/InputColor/index.tsx b/legacy/source/design/component/input/style/InputColor/index.tsx similarity index 100% rename from source/design/component/input/style/InputColor/index.tsx rename to legacy/source/design/component/input/style/InputColor/index.tsx diff --git a/source/design/component/input/style/InputHue/index.module.css b/legacy/source/design/component/input/style/InputHue/index.module.css similarity index 100% rename from source/design/component/input/style/InputHue/index.module.css rename to legacy/source/design/component/input/style/InputHue/index.module.css diff --git a/source/design/component/input/style/InputHue/index.tsx b/legacy/source/design/component/input/style/InputHue/index.tsx similarity index 100% rename from source/design/component/input/style/InputHue/index.tsx rename to legacy/source/design/component/input/style/InputHue/index.tsx diff --git a/source/design/component/input/style/InputWeight/index.module.css b/legacy/source/design/component/input/style/InputWeight/index.module.css similarity index 100% rename from source/design/component/input/style/InputWeight/index.module.css rename to legacy/source/design/component/input/style/InputWeight/index.module.css diff --git a/source/design/component/input/style/InputWeight/index.tsx b/legacy/source/design/component/input/style/InputWeight/index.tsx similarity index 100% rename from source/design/component/input/style/InputWeight/index.tsx rename to legacy/source/design/component/input/style/InputWeight/index.tsx diff --git a/source/design/component/input/style/index.ts b/legacy/source/design/component/input/style/index.ts similarity index 100% rename from source/design/component/input/style/index.ts rename to legacy/source/design/component/input/style/index.ts diff --git a/source/design/component/input/text/InputAmount/index.module.css b/legacy/source/design/component/input/text/InputAmount/index.module.css similarity index 100% rename from source/design/component/input/text/InputAmount/index.module.css rename to legacy/source/design/component/input/text/InputAmount/index.module.css diff --git a/source/design/component/input/text/InputAmount/index.tsx b/legacy/source/design/component/input/text/InputAmount/index.tsx similarity index 100% rename from source/design/component/input/text/InputAmount/index.tsx rename to legacy/source/design/component/input/text/InputAmount/index.tsx diff --git a/source/design/component/input/text/InputText/index.module.css b/legacy/source/design/component/input/text/InputText/index.module.css similarity index 100% rename from source/design/component/input/text/InputText/index.module.css rename to legacy/source/design/component/input/text/InputText/index.module.css diff --git a/source/design/component/input/text/InputText/index.tsx b/legacy/source/design/component/input/text/InputText/index.tsx similarity index 100% rename from source/design/component/input/text/InputText/index.tsx rename to legacy/source/design/component/input/text/InputText/index.tsx diff --git a/source/design/component/input/text/index.ts b/legacy/source/design/component/input/text/index.ts similarity index 100% rename from source/design/component/input/text/index.ts rename to legacy/source/design/component/input/text/index.ts diff --git a/source/design/component/overlay/Modal/index.module.css b/legacy/source/design/component/overlay/Modal/index.module.css similarity index 100% rename from source/design/component/overlay/Modal/index.module.css rename to legacy/source/design/component/overlay/Modal/index.module.css diff --git a/source/design/component/overlay/Modal/index.tsx b/legacy/source/design/component/overlay/Modal/index.tsx similarity index 100% rename from source/design/component/overlay/Modal/index.tsx rename to legacy/source/design/component/overlay/Modal/index.tsx diff --git a/source/design/component/overlay/Overlay/index.module.css b/legacy/source/design/component/overlay/Overlay/index.module.css similarity index 100% rename from source/design/component/overlay/Overlay/index.module.css rename to legacy/source/design/component/overlay/Overlay/index.module.css diff --git a/source/design/component/overlay/Overlay/index.tsx b/legacy/source/design/component/overlay/Overlay/index.tsx similarity index 100% rename from source/design/component/overlay/Overlay/index.tsx rename to legacy/source/design/component/overlay/Overlay/index.tsx diff --git a/source/design/component/overlay/index.ts b/legacy/source/design/component/overlay/index.ts similarity index 100% rename from source/design/component/overlay/index.ts rename to legacy/source/design/component/overlay/index.ts diff --git a/source/design/eslint.config.js b/legacy/source/design/eslint.config.js similarity index 100% rename from source/design/eslint.config.js rename to legacy/source/design/eslint.config.js diff --git a/source/design/package.json b/legacy/source/design/package.json similarity index 100% rename from source/design/package.json rename to legacy/source/design/package.json diff --git a/source/design/style/color/background.css b/legacy/source/design/style/color/background.css similarity index 100% rename from source/design/style/color/background.css rename to legacy/source/design/style/color/background.css diff --git a/source/design/style/color/border.css b/legacy/source/design/style/color/border.css similarity index 100% rename from source/design/style/color/border.css rename to legacy/source/design/style/color/border.css diff --git a/source/design/style/color/font.css b/legacy/source/design/style/color/font.css similarity index 100% rename from source/design/style/color/font.css rename to legacy/source/design/style/color/font.css diff --git a/source/design/style/color/grayscale.css b/legacy/source/design/style/color/grayscale.css similarity index 100% rename from source/design/style/color/grayscale.css rename to legacy/source/design/style/color/grayscale.css diff --git a/source/design/style/color/hue.css b/legacy/source/design/style/color/hue.css similarity index 100% rename from source/design/style/color/hue.css rename to legacy/source/design/style/color/hue.css diff --git a/source/design/style/color/icon.css b/legacy/source/design/style/color/icon.css similarity index 100% rename from source/design/style/color/icon.css rename to legacy/source/design/style/color/icon.css diff --git a/source/design/style/color/index.css b/legacy/source/design/style/color/index.css similarity index 100% rename from source/design/style/color/index.css rename to legacy/source/design/style/color/index.css diff --git a/source/design/style/color/mood.css b/legacy/source/design/style/color/mood.css similarity index 100% rename from source/design/style/color/mood.css rename to legacy/source/design/style/color/mood.css diff --git a/source/design/style/color/names.ts b/legacy/source/design/style/color/names.ts similarity index 100% rename from source/design/style/color/names.ts rename to legacy/source/design/style/color/names.ts diff --git a/source/design/style/global/index.css b/legacy/source/design/style/global/index.css similarity index 100% rename from source/design/style/global/index.css rename to legacy/source/design/style/global/index.css diff --git a/source/design/style/global/reset/font.css b/legacy/source/design/style/global/reset/font.css similarity index 100% rename from source/design/style/global/reset/font.css rename to legacy/source/design/style/global/reset/font.css diff --git a/source/design/style/global/reset/form.css b/legacy/source/design/style/global/reset/form.css similarity index 100% rename from source/design/style/global/reset/form.css rename to legacy/source/design/style/global/reset/form.css diff --git a/source/design/style/global/reset/general.css b/legacy/source/design/style/global/reset/general.css similarity index 100% rename from source/design/style/global/reset/general.css rename to legacy/source/design/style/global/reset/general.css diff --git a/source/design/style/global/reset/index.css b/legacy/source/design/style/global/reset/index.css similarity index 100% rename from source/design/style/global/reset/index.css rename to legacy/source/design/style/global/reset/index.css diff --git a/source/design/style/global/reset/media.css b/legacy/source/design/style/global/reset/media.css similarity index 100% rename from source/design/style/global/reset/media.css rename to legacy/source/design/style/global/reset/media.css diff --git a/source/design/style/global/typography/font.css b/legacy/source/design/style/global/typography/font.css similarity index 100% rename from source/design/style/global/typography/font.css rename to legacy/source/design/style/global/typography/font.css diff --git a/source/design/style/global/typography/index.css b/legacy/source/design/style/global/typography/index.css similarity index 100% rename from source/design/style/global/typography/index.css rename to legacy/source/design/style/global/typography/index.css diff --git a/source/design/style/index.css b/legacy/source/design/style/index.css similarity index 100% rename from source/design/style/index.css rename to legacy/source/design/style/index.css diff --git a/source/design/style/names.ts b/legacy/source/design/style/names.ts similarity index 100% rename from source/design/style/names.ts rename to legacy/source/design/style/names.ts diff --git a/source/design/style/typography/font/hand.css b/legacy/source/design/style/typography/font/hand.css similarity index 100% rename from source/design/style/typography/font/hand.css rename to legacy/source/design/style/typography/font/hand.css diff --git a/source/design/style/typography/font/index.css b/legacy/source/design/style/typography/font/index.css similarity index 100% rename from source/design/style/typography/font/index.css rename to legacy/source/design/style/typography/font/index.css diff --git a/source/design/style/typography/font/raw/bookk-myungjo.css b/legacy/source/design/style/typography/font/raw/bookk-myungjo.css similarity index 100% rename from source/design/style/typography/font/raw/bookk-myungjo.css rename to legacy/source/design/style/typography/font/raw/bookk-myungjo.css diff --git a/source/design/style/typography/font/raw/noto-serif.css b/legacy/source/design/style/typography/font/raw/noto-serif.css similarity index 100% rename from source/design/style/typography/font/raw/noto-serif.css rename to legacy/source/design/style/typography/font/raw/noto-serif.css diff --git a/source/design/style/typography/font/raw/pretendard.css b/legacy/source/design/style/typography/font/raw/pretendard.css similarity index 100% rename from source/design/style/typography/font/raw/pretendard.css rename to legacy/source/design/style/typography/font/raw/pretendard.css diff --git a/source/design/style/typography/font/raw/reenie-beanie.css b/legacy/source/design/style/typography/font/raw/reenie-beanie.css similarity index 100% rename from source/design/style/typography/font/raw/reenie-beanie.css rename to legacy/source/design/style/typography/font/raw/reenie-beanie.css diff --git a/source/design/style/typography/font/raw/s-core-dream.css b/legacy/source/design/style/typography/font/raw/s-core-dream.css similarity index 100% rename from source/design/style/typography/font/raw/s-core-dream.css rename to legacy/source/design/style/typography/font/raw/s-core-dream.css diff --git a/source/design/style/typography/font/raw/sun-batang.css b/legacy/source/design/style/typography/font/raw/sun-batang.css similarity index 100% rename from source/design/style/typography/font/raw/sun-batang.css rename to legacy/source/design/style/typography/font/raw/sun-batang.css diff --git a/source/design/style/typography/font/sans.css b/legacy/source/design/style/typography/font/sans.css similarity index 100% rename from source/design/style/typography/font/sans.css rename to legacy/source/design/style/typography/font/sans.css diff --git a/source/design/style/typography/font/serif.css b/legacy/source/design/style/typography/font/serif.css similarity index 100% rename from source/design/style/typography/font/serif.css rename to legacy/source/design/style/typography/font/serif.css diff --git a/source/design/style/typography/fx.css b/legacy/source/design/style/typography/fx.css similarity index 100% rename from source/design/style/typography/fx.css rename to legacy/source/design/style/typography/fx.css diff --git a/source/design/style/typography/index.css b/legacy/source/design/style/typography/index.css similarity index 100% rename from source/design/style/typography/index.css rename to legacy/source/design/style/typography/index.css diff --git a/source/design/style/typography/names.ts b/legacy/source/design/style/typography/names.ts similarity index 100% rename from source/design/style/typography/names.ts rename to legacy/source/design/style/typography/names.ts diff --git a/source/design/style/typography/size.css b/legacy/source/design/style/typography/size.css similarity index 100% rename from source/design/style/typography/size.css rename to legacy/source/design/style/typography/size.css diff --git a/source/design/tsconfig.json b/legacy/source/design/tsconfig.json similarity index 93% rename from source/design/tsconfig.json rename to legacy/source/design/tsconfig.json index 9e83106..6220903 100644 --- a/source/design/tsconfig.json +++ b/legacy/source/design/tsconfig.json @@ -1,5 +1,4 @@ { - "extends": "../../tsconfig.alias.json", "compilerOptions": { "target": "ES2020", "useDefineForClassFields": true, diff --git a/legacy/source/design/vite-env.d.ts b/legacy/source/design/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/legacy/source/design/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/legacy/source/module/.gitignore b/legacy/source/module/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/legacy/source/module/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/source/module/README.md b/legacy/source/module/README.md similarity index 100% rename from source/module/README.md rename to legacy/source/module/README.md diff --git a/source/module/box/editor/BoxEditor/InnerBoxEditor/index.module.css b/legacy/source/module/box/editor/BoxEditor/InnerBoxEditor/index.module.css similarity index 100% rename from source/module/box/editor/BoxEditor/InnerBoxEditor/index.module.css rename to legacy/source/module/box/editor/BoxEditor/InnerBoxEditor/index.module.css diff --git a/source/module/box/editor/BoxEditor/InnerBoxEditor/index.tsx b/legacy/source/module/box/editor/BoxEditor/InnerBoxEditor/index.tsx similarity index 100% rename from source/module/box/editor/BoxEditor/InnerBoxEditor/index.tsx rename to legacy/source/module/box/editor/BoxEditor/InnerBoxEditor/index.tsx diff --git a/source/module/box/editor/BoxEditor/OuterBoxEditor/index.module.css b/legacy/source/module/box/editor/BoxEditor/OuterBoxEditor/index.module.css similarity index 100% rename from source/module/box/editor/BoxEditor/OuterBoxEditor/index.module.css rename to legacy/source/module/box/editor/BoxEditor/OuterBoxEditor/index.module.css diff --git a/source/module/box/editor/BoxEditor/OuterBoxEditor/index.tsx b/legacy/source/module/box/editor/BoxEditor/OuterBoxEditor/index.tsx similarity index 100% rename from source/module/box/editor/BoxEditor/OuterBoxEditor/index.tsx rename to legacy/source/module/box/editor/BoxEditor/OuterBoxEditor/index.tsx diff --git a/source/module/box/editor/BoxEditor/index.tsx b/legacy/source/module/box/editor/BoxEditor/index.tsx similarity index 100% rename from source/module/box/editor/BoxEditor/index.tsx rename to legacy/source/module/box/editor/BoxEditor/index.tsx diff --git a/source/module/box/editor/BoxManager/InnerBoxItem/index.module.css b/legacy/source/module/box/editor/BoxManager/InnerBoxItem/index.module.css similarity index 100% rename from source/module/box/editor/BoxManager/InnerBoxItem/index.module.css rename to legacy/source/module/box/editor/BoxManager/InnerBoxItem/index.module.css diff --git a/source/module/box/editor/BoxManager/InnerBoxItem/index.tsx b/legacy/source/module/box/editor/BoxManager/InnerBoxItem/index.tsx similarity index 100% rename from source/module/box/editor/BoxManager/InnerBoxItem/index.tsx rename to legacy/source/module/box/editor/BoxManager/InnerBoxItem/index.tsx diff --git a/source/module/box/editor/BoxManager/OuterBoxItem/index.module.css b/legacy/source/module/box/editor/BoxManager/OuterBoxItem/index.module.css similarity index 100% rename from source/module/box/editor/BoxManager/OuterBoxItem/index.module.css rename to legacy/source/module/box/editor/BoxManager/OuterBoxItem/index.module.css diff --git a/source/module/box/editor/BoxManager/OuterBoxItem/index.tsx b/legacy/source/module/box/editor/BoxManager/OuterBoxItem/index.tsx similarity index 100% rename from source/module/box/editor/BoxManager/OuterBoxItem/index.tsx rename to legacy/source/module/box/editor/BoxManager/OuterBoxItem/index.tsx diff --git a/legacy/source/module/box/editor/BoxManager/index.module.css b/legacy/source/module/box/editor/BoxManager/index.module.css new file mode 100644 index 0000000..e69de29 diff --git a/source/module/box/editor/BoxManager/index.tsx b/legacy/source/module/box/editor/BoxManager/index.tsx similarity index 100% rename from source/module/box/editor/BoxManager/index.tsx rename to legacy/source/module/box/editor/BoxManager/index.tsx diff --git a/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Aligns/index.module.css b/legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Aligns/index.module.css similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Aligns/index.module.css rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Aligns/index.module.css diff --git a/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Aligns/index.tsx b/legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Aligns/index.tsx similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Aligns/index.tsx rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Aligns/index.tsx diff --git a/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Flows/index.module.css b/legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Flows/index.module.css similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Flows/index.module.css rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Flows/index.module.css diff --git a/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Flows/index.tsx b/legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Flows/index.tsx similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Flows/index.tsx rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/Flows/index.tsx diff --git a/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/index.module.css b/legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/index.module.css similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/index.module.css rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/index.module.css diff --git a/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/index.tsx b/legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/index.tsx similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/index.tsx rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxLayoutEditor/index.tsx diff --git a/source/module/box/editor/SelectedBoxEditor/BoxLookEditor/index.module.css b/legacy/source/module/box/editor/SelectedBoxEditor/BoxLookEditor/index.module.css similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxLookEditor/index.module.css rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxLookEditor/index.module.css diff --git a/source/module/box/editor/SelectedBoxEditor/BoxLookEditor/index.tsx b/legacy/source/module/box/editor/SelectedBoxEditor/BoxLookEditor/index.tsx similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxLookEditor/index.tsx rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxLookEditor/index.tsx diff --git a/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/PathItem/index.module.css b/legacy/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/PathItem/index.module.css similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/PathItem/index.module.css rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/PathItem/index.module.css diff --git a/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/PathItem/index.tsx b/legacy/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/PathItem/index.tsx similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/PathItem/index.tsx rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/PathItem/index.tsx diff --git a/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/index.module.css b/legacy/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/index.module.css similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/index.module.css rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/index.module.css diff --git a/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/index.tsx b/legacy/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/index.tsx similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/index.tsx rename to legacy/source/module/box/editor/SelectedBoxEditor/BoxPathNavigator/index.tsx diff --git a/source/module/box/editor/SelectedBoxEditor/index.tsx b/legacy/source/module/box/editor/SelectedBoxEditor/index.tsx similarity index 100% rename from source/module/box/editor/SelectedBoxEditor/index.tsx rename to legacy/source/module/box/editor/SelectedBoxEditor/index.tsx diff --git a/source/module/box/editor/context/BoxEditorContext.ts b/legacy/source/module/box/editor/context/BoxEditorContext.ts similarity index 100% rename from source/module/box/editor/context/BoxEditorContext.ts rename to legacy/source/module/box/editor/context/BoxEditorContext.ts diff --git a/source/module/box/editor/context/index.ts b/legacy/source/module/box/editor/context/index.ts similarity index 100% rename from source/module/box/editor/context/index.ts rename to legacy/source/module/box/editor/context/index.ts diff --git a/source/module/box/editor/context/useBoxEditor.ts b/legacy/source/module/box/editor/context/useBoxEditor.ts similarity index 100% rename from source/module/box/editor/context/useBoxEditor.ts rename to legacy/source/module/box/editor/context/useBoxEditor.ts diff --git a/source/module/box/editor/context/useBoxEditorAt.ts b/legacy/source/module/box/editor/context/useBoxEditorAt.ts similarity index 100% rename from source/module/box/editor/context/useBoxEditorAt.ts rename to legacy/source/module/box/editor/context/useBoxEditorAt.ts diff --git a/source/module/box/editor/context/useBoxEditorRoot.ts b/legacy/source/module/box/editor/context/useBoxEditorRoot.ts similarity index 100% rename from source/module/box/editor/context/useBoxEditorRoot.ts rename to legacy/source/module/box/editor/context/useBoxEditorRoot.ts diff --git a/source/module/box/editor/context/utility.ts b/legacy/source/module/box/editor/context/utility.ts similarity index 100% rename from source/module/box/editor/context/utility.ts rename to legacy/source/module/box/editor/context/utility.ts diff --git a/source/module/box/editor/index.ts b/legacy/source/module/box/editor/index.ts similarity index 100% rename from source/module/box/editor/index.ts rename to legacy/source/module/box/editor/index.ts diff --git a/source/module/box/index.ts b/legacy/source/module/box/index.ts similarity index 100% rename from source/module/box/index.ts rename to legacy/source/module/box/index.ts diff --git a/source/module/box/look/index.ts b/legacy/source/module/box/look/index.ts similarity index 100% rename from source/module/box/look/index.ts rename to legacy/source/module/box/look/index.ts diff --git a/source/module/box/look/useBoxLookStyle.ts b/legacy/source/module/box/look/useBoxLookStyle.ts similarity index 100% rename from source/module/box/look/useBoxLookStyle.ts rename to legacy/source/module/box/look/useBoxLookStyle.ts diff --git a/source/module/box/look/useThemeStyle.ts b/legacy/source/module/box/look/useThemeStyle.ts similarity index 100% rename from source/module/box/look/useThemeStyle.ts rename to legacy/source/module/box/look/useThemeStyle.ts diff --git a/source/module/box/reader/BoxReader/index.tsx b/legacy/source/module/box/reader/BoxReader/index.tsx similarity index 100% rename from source/module/box/reader/BoxReader/index.tsx rename to legacy/source/module/box/reader/BoxReader/index.tsx diff --git a/source/module/box/reader/index.ts b/legacy/source/module/box/reader/index.ts similarity index 100% rename from source/module/box/reader/index.ts rename to legacy/source/module/box/reader/index.ts diff --git a/source/module/content/editor/ContentSelector/index.tsx b/legacy/source/module/content/editor/ContentSelector/index.tsx similarity index 100% rename from source/module/content/editor/ContentSelector/index.tsx rename to legacy/source/module/content/editor/ContentSelector/index.tsx diff --git a/source/module/content/editor/ContentVisualizer/index.module.css b/legacy/source/module/content/editor/ContentVisualizer/index.module.css similarity index 100% rename from source/module/content/editor/ContentVisualizer/index.module.css rename to legacy/source/module/content/editor/ContentVisualizer/index.module.css diff --git a/source/module/content/editor/ContentVisualizer/index.tsx b/legacy/source/module/content/editor/ContentVisualizer/index.tsx similarity index 100% rename from source/module/content/editor/ContentVisualizer/index.tsx rename to legacy/source/module/content/editor/ContentVisualizer/index.tsx diff --git a/source/module/content/editor/SelectedContentEditor/index.tsx b/legacy/source/module/content/editor/SelectedContentEditor/index.tsx similarity index 100% rename from source/module/content/editor/SelectedContentEditor/index.tsx rename to legacy/source/module/content/editor/SelectedContentEditor/index.tsx diff --git a/source/module/content/editor/context/ContentEditorContext.tsx b/legacy/source/module/content/editor/context/ContentEditorContext.tsx similarity index 100% rename from source/module/content/editor/context/ContentEditorContext.tsx rename to legacy/source/module/content/editor/context/ContentEditorContext.tsx diff --git a/source/module/content/editor/context/index.ts b/legacy/source/module/content/editor/context/index.ts similarity index 100% rename from source/module/content/editor/context/index.ts rename to legacy/source/module/content/editor/context/index.ts diff --git a/source/module/content/editor/context/useContentEditor.ts b/legacy/source/module/content/editor/context/useContentEditor.ts similarity index 100% rename from source/module/content/editor/context/useContentEditor.ts rename to legacy/source/module/content/editor/context/useContentEditor.ts diff --git a/source/module/content/editor/context/useContentEditorRoot.ts b/legacy/source/module/content/editor/context/useContentEditorRoot.ts similarity index 100% rename from source/module/content/editor/context/useContentEditorRoot.ts rename to legacy/source/module/content/editor/context/useContentEditorRoot.ts diff --git a/source/module/content/editor/element/SelectedElementEditor/index.tsx b/legacy/source/module/content/editor/element/SelectedElementEditor/index.tsx similarity index 100% rename from source/module/content/editor/element/SelectedElementEditor/index.tsx rename to legacy/source/module/content/editor/element/SelectedElementEditor/index.tsx diff --git a/source/module/content/editor/element/block/BlockEditor/index.module.css b/legacy/source/module/content/editor/element/block/BlockEditor/index.module.css similarity index 100% rename from source/module/content/editor/element/block/BlockEditor/index.module.css rename to legacy/source/module/content/editor/element/block/BlockEditor/index.module.css diff --git a/source/module/content/editor/element/block/BlockEditor/index.tsx b/legacy/source/module/content/editor/element/block/BlockEditor/index.tsx similarity index 100% rename from source/module/content/editor/element/block/BlockEditor/index.tsx rename to legacy/source/module/content/editor/element/block/BlockEditor/index.tsx diff --git a/source/module/content/editor/element/block/BlockHelper/index.ts b/legacy/source/module/content/editor/element/block/BlockHelper/index.ts similarity index 100% rename from source/module/content/editor/element/block/BlockHelper/index.ts rename to legacy/source/module/content/editor/element/block/BlockHelper/index.ts diff --git a/source/module/content/editor/element/block/CodeBlockEditor/index.tsx b/legacy/source/module/content/editor/element/block/CodeBlockEditor/index.tsx similarity index 100% rename from source/module/content/editor/element/block/CodeBlockEditor/index.tsx rename to legacy/source/module/content/editor/element/block/CodeBlockEditor/index.tsx diff --git a/source/module/content/editor/element/block/CodeBlockHelper/index.ts b/legacy/source/module/content/editor/element/block/CodeBlockHelper/index.ts similarity index 100% rename from source/module/content/editor/element/block/CodeBlockHelper/index.ts rename to legacy/source/module/content/editor/element/block/CodeBlockHelper/index.ts diff --git a/source/module/content/editor/element/block/HeadingEditor/index.tsx b/legacy/source/module/content/editor/element/block/HeadingEditor/index.tsx similarity index 100% rename from source/module/content/editor/element/block/HeadingEditor/index.tsx rename to legacy/source/module/content/editor/element/block/HeadingEditor/index.tsx diff --git a/source/module/content/editor/element/block/HeadingHelper/index.ts b/legacy/source/module/content/editor/element/block/HeadingHelper/index.ts similarity index 100% rename from source/module/content/editor/element/block/HeadingHelper/index.ts rename to legacy/source/module/content/editor/element/block/HeadingHelper/index.ts diff --git a/source/module/content/editor/element/block/ParagraphEditor/index.tsx b/legacy/source/module/content/editor/element/block/ParagraphEditor/index.tsx similarity index 100% rename from source/module/content/editor/element/block/ParagraphEditor/index.tsx rename to legacy/source/module/content/editor/element/block/ParagraphEditor/index.tsx diff --git a/source/module/content/editor/element/block/ParagraphHelper/index.ts b/legacy/source/module/content/editor/element/block/ParagraphHelper/index.ts similarity index 100% rename from source/module/content/editor/element/block/ParagraphHelper/index.ts rename to legacy/source/module/content/editor/element/block/ParagraphHelper/index.ts diff --git a/source/module/content/editor/element/index.ts b/legacy/source/module/content/editor/element/index.ts similarity index 100% rename from source/module/content/editor/element/index.ts rename to legacy/source/module/content/editor/element/index.ts diff --git a/source/module/content/editor/element/inline/InlineEditor/index.tsx b/legacy/source/module/content/editor/element/inline/InlineEditor/index.tsx similarity index 100% rename from source/module/content/editor/element/inline/InlineEditor/index.tsx rename to legacy/source/module/content/editor/element/inline/InlineEditor/index.tsx diff --git a/source/module/content/editor/element/inline/InlineHelper/InlineHelper.ts b/legacy/source/module/content/editor/element/inline/InlineHelper/InlineHelper.ts similarity index 100% rename from source/module/content/editor/element/inline/InlineHelper/InlineHelper.ts rename to legacy/source/module/content/editor/element/inline/InlineHelper/InlineHelper.ts diff --git a/source/module/content/editor/index.ts b/legacy/source/module/content/editor/index.ts similarity index 100% rename from source/module/content/editor/index.ts rename to legacy/source/module/content/editor/index.ts diff --git a/source/module/content/editor/leaf/LeafEditor/index.module.css b/legacy/source/module/content/editor/leaf/LeafEditor/index.module.css similarity index 100% rename from source/module/content/editor/leaf/LeafEditor/index.module.css rename to legacy/source/module/content/editor/leaf/LeafEditor/index.module.css diff --git a/source/module/content/editor/leaf/LeafEditor/index.tsx b/legacy/source/module/content/editor/leaf/LeafEditor/index.tsx similarity index 100% rename from source/module/content/editor/leaf/LeafEditor/index.tsx rename to legacy/source/module/content/editor/leaf/LeafEditor/index.tsx diff --git a/source/module/content/editor/leaf/LeafHelper/index.ts b/legacy/source/module/content/editor/leaf/LeafHelper/index.ts similarity index 100% rename from source/module/content/editor/leaf/LeafHelper/index.ts rename to legacy/source/module/content/editor/leaf/LeafHelper/index.ts diff --git a/source/module/content/editor/leaf/index.ts b/legacy/source/module/content/editor/leaf/index.ts similarity index 100% rename from source/module/content/editor/leaf/index.ts rename to legacy/source/module/content/editor/leaf/index.ts diff --git a/source/module/content/index.ts b/legacy/source/module/content/index.ts similarity index 100% rename from source/module/content/index.ts rename to legacy/source/module/content/index.ts diff --git a/source/module/content/reader/element/ElementReader/index.tsx b/legacy/source/module/content/reader/element/ElementReader/index.tsx similarity index 100% rename from source/module/content/reader/element/ElementReader/index.tsx rename to legacy/source/module/content/reader/element/ElementReader/index.tsx diff --git a/source/module/content/reader/element/block/CodeBlockReader/index.module.css b/legacy/source/module/content/reader/element/block/CodeBlockReader/index.module.css similarity index 100% rename from source/module/content/reader/element/block/CodeBlockReader/index.module.css rename to legacy/source/module/content/reader/element/block/CodeBlockReader/index.module.css diff --git a/source/module/content/reader/element/block/CodeBlockReader/index.tsx b/legacy/source/module/content/reader/element/block/CodeBlockReader/index.tsx similarity index 100% rename from source/module/content/reader/element/block/CodeBlockReader/index.tsx rename to legacy/source/module/content/reader/element/block/CodeBlockReader/index.tsx diff --git a/source/module/content/reader/element/block/HeadingReader/index.tsx b/legacy/source/module/content/reader/element/block/HeadingReader/index.tsx similarity index 100% rename from source/module/content/reader/element/block/HeadingReader/index.tsx rename to legacy/source/module/content/reader/element/block/HeadingReader/index.tsx diff --git a/source/module/content/reader/element/block/ParagraphReader/index.tsx b/legacy/source/module/content/reader/element/block/ParagraphReader/index.tsx similarity index 100% rename from source/module/content/reader/element/block/ParagraphReader/index.tsx rename to legacy/source/module/content/reader/element/block/ParagraphReader/index.tsx diff --git a/source/module/content/reader/element/block/index.ts b/legacy/source/module/content/reader/element/block/index.ts similarity index 100% rename from source/module/content/reader/element/block/index.ts rename to legacy/source/module/content/reader/element/block/index.ts diff --git a/source/module/content/reader/element/index.ts b/legacy/source/module/content/reader/element/index.ts similarity index 100% rename from source/module/content/reader/element/index.ts rename to legacy/source/module/content/reader/element/index.ts diff --git a/source/module/content/reader/element/inline/index.ts b/legacy/source/module/content/reader/element/inline/index.ts similarity index 100% rename from source/module/content/reader/element/inline/index.ts rename to legacy/source/module/content/reader/element/inline/index.ts diff --git a/source/module/content/reader/index.ts b/legacy/source/module/content/reader/index.ts similarity index 100% rename from source/module/content/reader/index.ts rename to legacy/source/module/content/reader/index.ts diff --git a/source/module/content/reader/leaf/LeafReader/index.module.css b/legacy/source/module/content/reader/leaf/LeafReader/index.module.css similarity index 100% rename from source/module/content/reader/leaf/LeafReader/index.module.css rename to legacy/source/module/content/reader/leaf/LeafReader/index.module.css diff --git a/source/module/content/reader/leaf/LeafReader/index.tsx b/legacy/source/module/content/reader/leaf/LeafReader/index.tsx similarity index 100% rename from source/module/content/reader/leaf/LeafReader/index.tsx rename to legacy/source/module/content/reader/leaf/LeafReader/index.tsx diff --git a/source/module/content/reader/leaf/index.ts b/legacy/source/module/content/reader/leaf/index.ts similarity index 100% rename from source/module/content/reader/leaf/index.ts rename to legacy/source/module/content/reader/leaf/index.ts diff --git a/source/module/content/render/index.ts b/legacy/source/module/content/render/index.ts similarity index 100% rename from source/module/content/render/index.ts rename to legacy/source/module/content/render/index.ts diff --git a/source/module/content/render/renderElement.tsx b/legacy/source/module/content/render/renderElement.tsx similarity index 100% rename from source/module/content/render/renderElement.tsx rename to legacy/source/module/content/render/renderElement.tsx diff --git a/source/module/content/render/renderLeaf.tsx b/legacy/source/module/content/render/renderLeaf.tsx similarity index 100% rename from source/module/content/render/renderLeaf.tsx rename to legacy/source/module/content/render/renderLeaf.tsx diff --git a/source/module/content/render/renderStatic.tsx b/legacy/source/module/content/render/renderStatic.tsx similarity index 100% rename from source/module/content/render/renderStatic.tsx rename to legacy/source/module/content/render/renderStatic.tsx diff --git a/source/module/content/type/index.ts b/legacy/source/module/content/type/index.ts similarity index 100% rename from source/module/content/type/index.ts rename to legacy/source/module/content/type/index.ts diff --git a/source/module/content/type/slate.ts b/legacy/source/module/content/type/slate.ts similarity index 100% rename from source/module/content/type/slate.ts rename to legacy/source/module/content/type/slate.ts diff --git a/source/module/eslint.config.js b/legacy/source/module/eslint.config.js similarity index 100% rename from source/module/eslint.config.js rename to legacy/source/module/eslint.config.js diff --git a/legacy/source/module/index/IndexInformationEditor/index.module.css b/legacy/source/module/index/IndexInformationEditor/index.module.css new file mode 100644 index 0000000..e69de29 diff --git a/source/module/index/IndexInformationEditor/index.tsx b/legacy/source/module/index/IndexInformationEditor/index.tsx similarity index 100% rename from source/module/index/IndexInformationEditor/index.tsx rename to legacy/source/module/index/IndexInformationEditor/index.tsx diff --git a/source/module/index/IndexReader/index.tsx b/legacy/source/module/index/IndexReader/index.tsx similarity index 100% rename from source/module/index/IndexReader/index.tsx rename to legacy/source/module/index/IndexReader/index.tsx diff --git a/source/module/logo/MainTitle/index.module.css b/legacy/source/module/logo/MainTitle/index.module.css similarity index 100% rename from source/module/logo/MainTitle/index.module.css rename to legacy/source/module/logo/MainTitle/index.module.css diff --git a/source/module/logo/MainTitle/index.tsx b/legacy/source/module/logo/MainTitle/index.tsx similarity index 100% rename from source/module/logo/MainTitle/index.tsx rename to legacy/source/module/logo/MainTitle/index.tsx diff --git a/source/module/logo/index.ts b/legacy/source/module/logo/index.ts similarity index 100% rename from source/module/logo/index.ts rename to legacy/source/module/logo/index.ts diff --git a/source/module/package.json b/legacy/source/module/package.json similarity index 100% rename from source/module/package.json rename to legacy/source/module/package.json diff --git a/source/module/tsconfig.json b/legacy/source/module/tsconfig.json similarity index 93% rename from source/module/tsconfig.json rename to legacy/source/module/tsconfig.json index 9e83106..6220903 100644 --- a/source/module/tsconfig.json +++ b/legacy/source/module/tsconfig.json @@ -1,5 +1,4 @@ { - "extends": "../../tsconfig.alias.json", "compilerOptions": { "target": "ES2020", "useDefineForClassFields": true, diff --git a/legacy/source/module/vite-env.d.ts b/legacy/source/module/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/legacy/source/module/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/package.json b/package.json index c5cf1cc..97fedbc 100644 --- a/package.json +++ b/package.json @@ -1,31 +1,31 @@ { "name": "the-codec", - "packageManager": "yarn@4.3.1", + "packageManager": "yarn@4.9.2", "private": true, "workspaces": [ - "core", - "service/*", - "source/*", - "playground/*" + "shared/*", + "backend/*", + "frontend/*", + "utility/*" ], "scripts": { - "core": "yarn workspace core", - "design": "yarn workspace @source/design", - "module": "yarn workspace @source/module", - "app": "yarn workspace @service/app", - "demo": "yarn workspace @service/demo", - "editor": "yarn workspace @playground/editor", - "ssg": "yarn workspace @playground/static-site-generation", - "graphics": "yarn workspace @playground/graphics", - "tree": "yarn workspace @playground/tree-shaking", - "deploy": "yarn workspace @service/app generate", - "format": "yarn prettier --write .", - "upgrade:flexive": "yarn app add @flexive/core@latest && yarn design add @flexive/core@latest && yarn module add @flexive/core@latest && yarn demo add @flexive/core@latest && yarn app add @flexive/operator@latest && yarn design add @flexive/operator@latest && yarn module add @flexive/operator@latest && yarn demo add @flexive/operator@latest", - "prepare": "husky && echo 'yarn app build' > .husky/pre-commit" + "cms": "yarn workspace cms", + "blog": "yarn workspace blog", + "desk": "yarn workspace desk", + "design": "yarn workspace design", + "module": "yarn workspace module", + "font-convert": "yarn workspace font-convert", + "format": "prettier --write ." }, "devDependencies": { - "eslint": "^8.57.0", + "eslint": "^9", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-react-refresh": "^0.4.20", + "eslint-plugin-simple-import-sort": "^12.1.1", + "globals": "^16.2.0", "husky": "^9.1.7", - "prettier": "^3.2.5" + "prettier": "^3.2.5", + "typescript": "^5", + "typescript-eslint": "^8.35.0" } } diff --git a/shared/types/package.json b/shared/types/package.json new file mode 100644 index 0000000..b025dc5 --- /dev/null +++ b/shared/types/package.json @@ -0,0 +1,10 @@ +{ + "name": "types", + "type": "module", + "exports": { + "./common": "./src/common.types.d.ts", + "./user": "./src/user.types.d.ts", + "./slug": "./src/slug.types.d.ts", + "./index": "./src/index.types.d.ts" + } +} diff --git a/shared/types/src/common.types.d.ts b/shared/types/src/common.types.d.ts new file mode 100644 index 0000000..a208b46 --- /dev/null +++ b/shared/types/src/common.types.d.ts @@ -0,0 +1,8 @@ +type Time = Date; +interface Times { + createdAt: Time; + updatedAt: Time; + deletedAt: Time | null; +} + +export type { Time, Times }; diff --git a/shared/types/src/index.types.d.ts b/shared/types/src/index.types.d.ts new file mode 100644 index 0000000..d87e2d5 --- /dev/null +++ b/shared/types/src/index.types.d.ts @@ -0,0 +1,11 @@ +import type { Time, Times } from "./common.types"; + +interface Index extends Times { + id: number; + name: string; + description: string | null; + publishedAt: Time | null; + unpublishedAt: Time | null; +} + +export type { Index }; diff --git a/shared/types/src/slug.types.d.ts b/shared/types/src/slug.types.d.ts new file mode 100644 index 0000000..e72cfea --- /dev/null +++ b/shared/types/src/slug.types.d.ts @@ -0,0 +1,9 @@ +type SLUG_TYPE = "PUBLIC" | "PRIVATE"; + +interface Slug { + id: number; + slug: string; + type: SLUG_TYPE; +} + +export type { Slug, SLUG_TYPE }; diff --git a/shared/types/src/user.types.d.ts b/shared/types/src/user.types.d.ts new file mode 100644 index 0000000..c9afe13 --- /dev/null +++ b/shared/types/src/user.types.d.ts @@ -0,0 +1,8 @@ +import type { Times } from "./common.types"; + +interface User extends Times { + id: number; + name: string; +} + +export type { User }; diff --git a/shared/types/tsconfig.json b/shared/types/tsconfig.json new file mode 100644 index 0000000..9de37d3 --- /dev/null +++ b/shared/types/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.root.json", + "compilerOptions": { + "target": "ESNext", + "module": "ESNext", + "strict": true, + "verbatimModuleSyntax": true, + "skipLibCheck": true + }, + "exclude": ["node_modules"] +} diff --git a/tsconfig.alias.json b/tsconfig.alias.json deleted file mode 100644 index af6f30d..0000000 --- a/tsconfig.alias.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "compilerOptions": { - "baseUrl": ".", - "paths": { - "@core/*": ["./core/*"], - "@data/*": ["./source/data/*"], - "@style/*": ["./source/design/style/*"], - "@component/*": ["./source/design/component/*"], - "@module/*": ["./source/module/*"] - } - } -} diff --git a/tsconfig.root.json b/tsconfig.root.json new file mode 100644 index 0000000..1cc5fa7 --- /dev/null +++ b/tsconfig.root.json @@ -0,0 +1,6 @@ +{ + "compilerOptions": { + "baseUrl": "." + }, + "exclude": ["legacy"] +} diff --git a/utility/font-convert/.env.local.example b/utility/font-convert/.env.local.example new file mode 100644 index 0000000..e40461a --- /dev/null +++ b/utility/font-convert/.env.local.example @@ -0,0 +1,4 @@ +# Path to directories / Both relative or absolute path accepted +SOURCE_PATH= +TARGET_PATH= + diff --git a/utility/font-convert/package.json b/utility/font-convert/package.json new file mode 100644 index 0000000..ad982d2 --- /dev/null +++ b/utility/font-convert/package.json @@ -0,0 +1,17 @@ +{ + "name": "font-convert", + "type": "module", + "scripts": { + "convert": "tsx src/main.ts" + }, + "devDependencies": { + "@types/node": "^20.11.17", + "@types/ttf2woff": "^2.0.4", + "@types/wawoff2": "^1.0.2", + "dotenv": "^17.2.1", + "otf2ttf": "^1.1.2", + "tsx": "^4.7.1", + "ttf2woff": "^3.0.0", + "wawoff2": "^1.0.1" + } +} diff --git a/utility/font-convert/src/backup/2025-08-18T09-51-21-918Z/FreesentationVF.ttf b/utility/font-convert/src/backup/2025-08-18T09-51-21-918Z/FreesentationVF.ttf new file mode 100644 index 0000000..dce6c9e Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T09-51-21-918Z/FreesentationVF.ttf differ diff --git a/utility/font-convert/src/backup/2025-08-18T09-51-21-918Z/FreesentationVF.woff2 b/utility/font-convert/src/backup/2025-08-18T09-51-21-918Z/FreesentationVF.woff2 new file mode 100644 index 0000000..0bc4a18 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T09-51-21-918Z/FreesentationVF.woff2 differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Bold.ttf b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Bold.ttf new file mode 100644 index 0000000..358cbaf Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Bold.ttf differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Bold.woff2 b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Bold.woff2 new file mode 100644 index 0000000..729d7b1 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Bold.woff2 differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Light.ttf b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Light.ttf new file mode 100644 index 0000000..642d22a Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Light.ttf differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Light.woff2 b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Light.woff2 new file mode 100644 index 0000000..5009940 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Light.woff2 differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Medium.ttf b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Medium.ttf new file mode 100644 index 0000000..73cf4ed Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Medium.ttf differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Medium.woff2 b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Medium.woff2 new file mode 100644 index 0000000..d7a52cf Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Batang Medium.woff2 differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Bold.ttf b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Bold.ttf new file mode 100644 index 0000000..d8b9a03 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Bold.ttf differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Bold.woff2 b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Bold.woff2 new file mode 100644 index 0000000..dd435f2 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Bold.woff2 differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Light.ttf b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Light.ttf new file mode 100644 index 0000000..eae1586 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Light.ttf differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Light.woff2 b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Light.woff2 new file mode 100644 index 0000000..0c32258 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Light.woff2 differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Medium.ttf b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Medium.ttf new file mode 100644 index 0000000..c1e9217 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Medium.ttf differ diff --git a/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Medium.woff2 b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Medium.woff2 new file mode 100644 index 0000000..a9b3c38 Binary files /dev/null and b/utility/font-convert/src/backup/2025-08-18T12-56-53-920Z/KoPub Dotum Medium.woff2 differ diff --git a/utility/font-convert/src/main.ts b/utility/font-convert/src/main.ts new file mode 100644 index 0000000..fb24778 --- /dev/null +++ b/utility/font-convert/src/main.ts @@ -0,0 +1,84 @@ +import { + existsSync, + mkdirSync, + readdirSync, + readFileSync, + rmSync, + writeFileSync, +} from "node:fs"; +import { extname, isAbsolute, join, resolve } from "node:path"; + +import { config } from "dotenv"; + +config({ path: ".env.local" }); + +const woff2Compress = await import("wawoff2").then(m => m.compress); + +function resolvePathFromEnv(key: string): string { + const value = process.env[key]; + if (!value) { + throw new Error(`Environment variable ${key} is required`); + } + return isAbsolute(value) ? value : resolve(process.cwd(), value); +} + +const inputDir = resolvePathFromEnv("SOURCE_PATH"); +const outputDir = resolvePathFromEnv("TARGET_PATH"); + +// backup directory inside this package (src/backup/) +const timestamp = new Date().toISOString().replace(/[:.]/g, "-"); +const backupDir = join(process.cwd(), "src", "backup", timestamp); + +try { + if (!existsSync(outputDir)) { + mkdirSync(outputDir, { recursive: true }); + } + if (!existsSync(backupDir)) { + mkdirSync(backupDir, { recursive: true }); + } + + const files = readdirSync(inputDir).filter((file: string) => { + const ext = extname(file).toLowerCase(); + return ext === ".otf" || ext === ".ttf"; // handle OTF and TTF input + }); + + await Promise.all( + files.map(async (file: string) => { + const filePath = join(inputDir, file); + const sourceBuffer = readFileSync(filePath); + + // backup source file + writeFileSync(join(backupDir, file), sourceBuffer); + + const baseName = file.replace(/\.(otf|ttf)$/i, ""); + + const ttfBuffer = sourceBuffer; + + // write TTF to output and backup + const ttfOutPath = join(outputDir, `${baseName}.ttf`); + writeFileSync(ttfOutPath, ttfBuffer); + writeFileSync(join(backupDir, `${baseName}.ttf`), ttfBuffer); + + // TTF → WOFF2, write output and backup + const woff2buf = await woff2Compress(ttfBuffer); + const woff2OutPath = join(outputDir, `${baseName}.woff2`); + writeFileSync(woff2OutPath, woff2buf); + writeFileSync(join(backupDir, `${baseName}.woff2`), woff2buf); + + console.log(`Converted: ${file}`); + }), + ); + + console.log("All conversions completed!"); +} catch (error) { + console.log(error); + if (error instanceof Error) { + console.error("Error during font conversion:", error); + } else { + console.error("Error during font conversion:", String(error)); + } + if (existsSync(backupDir)) { + rmSync(backupDir, { recursive: true }); + } + process.exit(1); +} diff --git a/utility/font-convert/tsconfig.json b/utility/font-convert/tsconfig.json new file mode 100644 index 0000000..fc4ac27 --- /dev/null +++ b/utility/font-convert/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.root.json", + "compilerOptions": { + "module": "NodeNext", + "strict": true, + "verbatimModuleSyntax": true, + "skipLibCheck": true, + "moduleResolution": "NodeNext" + }, + "exclude": ["node_modules"] +} diff --git a/yarn.lock b/yarn.lock index e325afe..4f5c670 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,6 +5,13 @@ __metadata: version: 8 cacheKey: 10 +"7zip-bin@npm:~5.2.0": + version: 5.2.0 + resolution: "7zip-bin@npm:5.2.0" + checksum: 10/5339c7a56f57f8d7d16ac8d15f588d155e5705cd4822e0d161ea45e6fbfe4a5226b464a331ec555a1ec9376ad04e5f61c125656cf3a1507900c1968ccbcfe80b + languageName: node + linkType: hard + "@ampproject/remapping@npm:^2.2.0": version: 2.3.0 resolution: "@ampproject/remapping@npm:2.3.0" @@ -15,920 +22,1043 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/code-frame@npm:7.25.7" - dependencies: - "@babel/highlight": "npm:^7.25.7" - picocolors: "npm:^1.0.0" - checksum: 10/000fb8299fb35b6217d4f6c6580dcc1fa2f6c0f82d0a54b8a029966f633a8b19b490a7a906b56a94e9d8bee91c3bc44c74c44c33fb0abaa588202f6280186291 - languageName: node - linkType: hard - -"@babel/code-frame@npm:^7.25.9, @babel/code-frame@npm:^7.26.0, @babel/code-frame@npm:^7.26.2": - version: 7.26.2 - resolution: "@babel/code-frame@npm:7.26.2" +"@babel/code-frame@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/code-frame@npm:7.27.1" dependencies: - "@babel/helper-validator-identifier": "npm:^7.25.9" + "@babel/helper-validator-identifier": "npm:^7.27.1" js-tokens: "npm:^4.0.0" - picocolors: "npm:^1.0.0" - checksum: 10/db2c2122af79d31ca916755331bb4bac96feb2b334cdaca5097a6b467fdd41963b89b14b6836a14f083de7ff887fc78fa1b3c10b14e743d33e12dbfe5ee3d223 - languageName: node - linkType: hard - -"@babel/compat-data@npm:^7.25.7": - version: 7.25.8 - resolution: "@babel/compat-data@npm:7.25.8" - checksum: 10/269fcb0d89e02e36c8a11e0c1b960a6b4204e88f59f20c374d28f8e318f4cd5ded42dfedc4b54162065e6a10f71c0de651f5ed3f9b45d3a4b52240196df85726 + picocolors: "npm:^1.1.1" + checksum: 10/721b8a6e360a1fa0f1c9fe7351ae6c874828e119183688b533c477aa378f1010f37cc9afbfc4722c686d1f5cdd00da02eab4ba7278a0c504fa0d7a321dcd4fdf languageName: node linkType: hard -"@babel/compat-data@npm:^7.25.9": - version: 7.26.3 - resolution: "@babel/compat-data@npm:7.26.3" - checksum: 10/0bf4e491680722aa0eac26f770f2fae059f92e2ac083900b241c90a2c10f0fc80e448b1feccc2b332687fab4c3e33e9f83dee9ef56badca1fb9f3f71266d9ebf +"@babel/compat-data@npm:^7.27.2": + version: 7.27.7 + resolution: "@babel/compat-data@npm:7.27.7" + checksum: 10/e71bf453a478875e8eb11bee84229f17185eb05ccf109e6c81eea3b931eaab531f7eb8fdd45fb7dfbcba26e88de5bc3ea7f36cbd14c5f15231c2fec81503609d languageName: node linkType: hard -"@babel/core@npm:^7.25.2": - version: 7.25.8 - resolution: "@babel/core@npm:7.25.8" +"@babel/core@npm:^7.27.4": + version: 7.27.7 + resolution: "@babel/core@npm:7.27.7" dependencies: "@ampproject/remapping": "npm:^2.2.0" - "@babel/code-frame": "npm:^7.25.7" - "@babel/generator": "npm:^7.25.7" - "@babel/helper-compilation-targets": "npm:^7.25.7" - "@babel/helper-module-transforms": "npm:^7.25.7" - "@babel/helpers": "npm:^7.25.7" - "@babel/parser": "npm:^7.25.8" - "@babel/template": "npm:^7.25.7" - "@babel/traverse": "npm:^7.25.7" - "@babel/types": "npm:^7.25.8" + "@babel/code-frame": "npm:^7.27.1" + "@babel/generator": "npm:^7.27.5" + "@babel/helper-compilation-targets": "npm:^7.27.2" + "@babel/helper-module-transforms": "npm:^7.27.3" + "@babel/helpers": "npm:^7.27.6" + "@babel/parser": "npm:^7.27.7" + "@babel/template": "npm:^7.27.2" + "@babel/traverse": "npm:^7.27.7" + "@babel/types": "npm:^7.27.7" convert-source-map: "npm:^2.0.0" debug: "npm:^4.1.0" gensync: "npm:^1.0.0-beta.2" json5: "npm:^2.2.3" semver: "npm:^6.3.1" - checksum: 10/31eb1a8ca1a3cc0026060720eb290e68205d95c5c00fbd831e69ddc0810f5920b8eb2749db1889ac0a0312b6eddbf321d18a996a88858f3b75c9582bef9ec1e4 + checksum: 10/3503d575ebbf6e66d43d17bbf14c7f93466e8f44ba6f566722747ae887d6c3890ecf64447a3bae8e431ea96907180ac8618b5452d85d9951f571116122b7f66d languageName: node linkType: hard -"@babel/core@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/core@npm:7.26.0" +"@babel/core@npm:^7.27.7, @babel/core@npm:^7.28.0": + version: 7.28.0 + resolution: "@babel/core@npm:7.28.0" dependencies: "@ampproject/remapping": "npm:^2.2.0" - "@babel/code-frame": "npm:^7.26.0" - "@babel/generator": "npm:^7.26.0" - "@babel/helper-compilation-targets": "npm:^7.25.9" - "@babel/helper-module-transforms": "npm:^7.26.0" - "@babel/helpers": "npm:^7.26.0" - "@babel/parser": "npm:^7.26.0" - "@babel/template": "npm:^7.25.9" - "@babel/traverse": "npm:^7.25.9" - "@babel/types": "npm:^7.26.0" + "@babel/code-frame": "npm:^7.27.1" + "@babel/generator": "npm:^7.28.0" + "@babel/helper-compilation-targets": "npm:^7.27.2" + "@babel/helper-module-transforms": "npm:^7.27.3" + "@babel/helpers": "npm:^7.27.6" + "@babel/parser": "npm:^7.28.0" + "@babel/template": "npm:^7.27.2" + "@babel/traverse": "npm:^7.28.0" + "@babel/types": "npm:^7.28.0" convert-source-map: "npm:^2.0.0" debug: "npm:^4.1.0" gensync: "npm:^1.0.0-beta.2" json5: "npm:^2.2.3" semver: "npm:^6.3.1" - checksum: 10/65767bfdb1f02e80d3af4f138066670ef8fdd12293de85ef151758a901c191c797e86d2e99b11c4cdfca33c72385ecaf38bbd7fa692791ec44c77763496b9b93 + checksum: 10/1c86eec8d76053f7b1c5f65296d51d7b8ac00f80d169ff76d3cd2e7d85ab222eb100d40cc3314f41b96c8cc06e9abab21c63d246161f0f3f70ef14c958419c33 languageName: node linkType: hard -"@babel/generator@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/generator@npm:7.25.7" +"@babel/generator@npm:^7.27.5": + version: 7.27.5 + resolution: "@babel/generator@npm:7.27.5" dependencies: - "@babel/types": "npm:^7.25.7" + "@babel/parser": "npm:^7.27.5" + "@babel/types": "npm:^7.27.3" "@jridgewell/gen-mapping": "npm:^0.3.5" "@jridgewell/trace-mapping": "npm:^0.3.25" jsesc: "npm:^3.0.2" - checksum: 10/01542829621388077fa8a7464970c1db0f748f1482968dddf5332926afe4003f953cbe08e3bbbb0a335b11eba0126c9a81779bd1c5baed681a9ccec4ae63b217 + checksum: 10/f5e6942670cb32156b3ac2d75ce09b373558823387f15dd1413c27fe9eb5756a7c6011fc7f956c7acc53efb530bfb28afffa24364d46c4e9ffccc4e5c8b3b094 languageName: node linkType: hard -"@babel/generator@npm:^7.26.0, @babel/generator@npm:^7.26.3": - version: 7.26.3 - resolution: "@babel/generator@npm:7.26.3" +"@babel/generator@npm:^7.28.0": + version: 7.28.0 + resolution: "@babel/generator@npm:7.28.0" dependencies: - "@babel/parser": "npm:^7.26.3" - "@babel/types": "npm:^7.26.3" - "@jridgewell/gen-mapping": "npm:^0.3.5" - "@jridgewell/trace-mapping": "npm:^0.3.25" + "@babel/parser": "npm:^7.28.0" + "@babel/types": "npm:^7.28.0" + "@jridgewell/gen-mapping": "npm:^0.3.12" + "@jridgewell/trace-mapping": "npm:^0.3.28" jsesc: "npm:^3.0.2" - checksum: 10/c1d8710cc1c52af9d8d67f7d8ea775578aa500887b327d2a81e27494764a6ef99e438dd7e14cf7cd3153656492ee27a8362980dc438087c0ca39d4e75532c638 + checksum: 10/064c5ba4c07ecd7600377bd0022d5f6bdb3b35e9ff78d9378f6bd1e656467ca902c091647222ab2f0d2967f6d6c0ca33157d37dd9b1c51926c9b0e1527ab9b92 languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helper-compilation-targets@npm:7.25.7" +"@babel/helper-compilation-targets@npm:^7.27.2": + version: 7.27.2 + resolution: "@babel/helper-compilation-targets@npm:7.27.2" dependencies: - "@babel/compat-data": "npm:^7.25.7" - "@babel/helper-validator-option": "npm:^7.25.7" + "@babel/compat-data": "npm:^7.27.2" + "@babel/helper-validator-option": "npm:^7.27.1" browserslist: "npm:^4.24.0" lru-cache: "npm:^5.1.1" semver: "npm:^6.3.1" - checksum: 10/bbf9be8480da3f9a89e36e9ea2e1c76601014c1074ccada7c2edb1adeb3b62bc402cc4abaf8d16760734b25eceb187a9510ce44f6a7a6f696ccc74f69283625b + checksum: 10/bd53c30a7477049db04b655d11f4c3500aea3bcbc2497cf02161de2ecf994fec7c098aabbcebe210ffabc2ecbdb1e3ffad23fb4d3f18723b814f423ea1749fe8 + languageName: node + linkType: hard + +"@babel/helper-globals@npm:^7.28.0": + version: 7.28.0 + resolution: "@babel/helper-globals@npm:7.28.0" + checksum: 10/91445f7edfde9b65dcac47f4f858f68dc1661bf73332060ab67ad7cc7b313421099a2bfc4bda30c3db3842cfa1e86fffbb0d7b2c5205a177d91b22c8d7d9cb47 languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-compilation-targets@npm:7.25.9" +"@babel/helper-module-imports@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/helper-module-imports@npm:7.27.1" dependencies: - "@babel/compat-data": "npm:^7.25.9" - "@babel/helper-validator-option": "npm:^7.25.9" - browserslist: "npm:^4.24.0" - lru-cache: "npm:^5.1.1" - semver: "npm:^6.3.1" - checksum: 10/8053fbfc21e8297ab55c8e7f9f119e4809fa7e505268691e1bedc2cf5e7a5a7de8c60ad13da2515378621b7601c42e101d2d679904da395fa3806a1edef6b92e + "@babel/traverse": "npm:^7.27.1" + "@babel/types": "npm:^7.27.1" + checksum: 10/58e792ea5d4ae71676e0d03d9fef33e886a09602addc3bd01388a98d87df9fcfd192968feb40ac4aedb7e287ec3d0c17b33e3ecefe002592041a91d8a1998a8d languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helper-module-imports@npm:7.25.7" +"@babel/helper-module-transforms@npm:^7.27.3": + version: 7.27.3 + resolution: "@babel/helper-module-transforms@npm:7.27.3" dependencies: - "@babel/traverse": "npm:^7.25.7" - "@babel/types": "npm:^7.25.7" - checksum: 10/94556712c27058ea35a1a39e21a3a9f067cd699405b64333d7d92b2b3d2f24d6f0ffa51aedba0b908e320acb1854e70d296259622e636fb021eeae9a6d996f01 + "@babel/helper-module-imports": "npm:^7.27.1" + "@babel/helper-validator-identifier": "npm:^7.27.1" + "@babel/traverse": "npm:^7.27.3" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 10/47abc90ceb181b4bdea9bf1717adf536d1b5e5acb6f6d8a7a4524080318b5ca8a99e6d58677268c596bad71077d1d98834d2c3815f2443e6d3f287962300f15d + languageName: node + linkType: hard + +"@babel/helper-plugin-utils@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/helper-plugin-utils@npm:7.27.1" + checksum: 10/96136c2428888e620e2ec493c25888f9ceb4a21099dcf3dd4508ea64b58cdedbd5a9fb6c7b352546de84d6c24edafe482318646932a22c449ebd16d16c22d864 + languageName: node + linkType: hard + +"@babel/helper-string-parser@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/helper-string-parser@npm:7.27.1" + checksum: 10/0ae29cc2005084abdae2966afdb86ed14d41c9c37db02c3693d5022fba9f5d59b011d039380b8e537c34daf117c549f52b452398f576e908fb9db3c7abbb3a00 + languageName: node + linkType: hard + +"@babel/helper-validator-identifier@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/helper-validator-identifier@npm:7.27.1" + checksum: 10/75041904d21bdc0cd3b07a8ac90b11d64cd3c881e89cb936fa80edd734bf23c35e6bd1312611e8574c4eab1f3af0f63e8a5894f4699e9cfdf70c06fcf4252320 + languageName: node + linkType: hard + +"@babel/helper-validator-option@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/helper-validator-option@npm:7.27.1" + checksum: 10/db73e6a308092531c629ee5de7f0d04390835b21a263be2644276cb27da2384b64676cab9f22cd8d8dbd854c92b1d7d56fc8517cf0070c35d1c14a8c828b0903 languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-module-imports@npm:7.25.9" +"@babel/helpers@npm:^7.27.6": + version: 7.27.6 + resolution: "@babel/helpers@npm:7.27.6" dependencies: - "@babel/traverse": "npm:^7.25.9" - "@babel/types": "npm:^7.25.9" - checksum: 10/e090be5dee94dda6cd769972231b21ddfae988acd76b703a480ac0c96f3334557d70a965bf41245d6ee43891e7571a8b400ccf2b2be5803351375d0f4e5bcf08 + "@babel/template": "npm:^7.27.2" + "@babel/types": "npm:^7.27.6" + checksum: 10/33c1ab2b42f05317776a4d67c5b00d916dbecfbde38a9406a1300ad3ad6e0380a2f6fcd3361369119a82a7d3c20de6e66552d147297f17f656cf17912605aa97 languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helper-module-transforms@npm:7.25.7" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.27.2, @babel/parser@npm:^7.27.5, @babel/parser@npm:^7.27.7": + version: 7.27.7 + resolution: "@babel/parser@npm:7.27.7" dependencies: - "@babel/helper-module-imports": "npm:^7.25.7" - "@babel/helper-simple-access": "npm:^7.25.7" - "@babel/helper-validator-identifier": "npm:^7.25.7" - "@babel/traverse": "npm:^7.25.7" - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 10/480309b1272ceaa985de1393f0e4c41aede0d5921ca644cec5aeaf43c8e4192b6dd56a58ef6d7e9acd02a43184ab45d3b241fc8c3a0a00f9dbb30235fd8a1181 + "@babel/types": "npm:^7.27.7" + bin: + parser: ./bin/babel-parser.js + checksum: 10/ed25ccfc709e77b94afebfa8377cca2ee5d0750162a6b4e7eb7b679ccdf307d1a015dee58d94afe726ed6d278a83aa348cb3a47717222ac4c3650d077f6ca4fd languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/helper-module-transforms@npm:7.26.0" +"@babel/parser@npm:^7.28.0": + version: 7.28.0 + resolution: "@babel/parser@npm:7.28.0" dependencies: - "@babel/helper-module-imports": "npm:^7.25.9" - "@babel/helper-validator-identifier": "npm:^7.25.9" - "@babel/traverse": "npm:^7.25.9" - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 10/9841d2a62f61ad52b66a72d08264f23052d533afc4ce07aec2a6202adac0bfe43014c312f94feacb3291f4c5aafe681955610041ece2c276271adce3f570f2f5 + "@babel/types": "npm:^7.28.0" + bin: + parser: ./bin/babel-parser.js + checksum: 10/2c14a0d2600bae9ab81924df0a85bbd34e427caa099c260743f7c6c12b2042e743e776043a0d1a2573229ae648f7e66a80cfb26fc27e2a9eb59b55932d44c817 languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helper-plugin-utils@npm:7.25.7" - checksum: 10/e1b0ea5e67b05378d6360e3fc370e99bfb247eed9f68145b5cce541da703424e1887fb6fc60ab2f7f743c72dcbfbed79d3032af43f2c251c229c734dc2572a5b +"@babel/plugin-transform-arrow-functions@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/plugin-transform-arrow-functions@npm:7.27.1" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.27.1" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10/62c2cc0ae2093336b1aa1376741c5ed245c0987d9e4b4c5313da4a38155509a7098b5acce582b6781cc0699381420010da2e3086353344abe0a6a0ec38961eb7 languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-plugin-utils@npm:7.25.9" - checksum: 10/e347d87728b1ab10b6976d46403941c8f9008c045ea6d99997a7ffca7b852dc34b6171380f7b17edf94410e0857ff26f3a53d8618f11d73744db86e8ca9b8c64 +"@babel/plugin-transform-react-jsx-self@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/plugin-transform-react-jsx-self@npm:7.27.1" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.27.1" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10/72cbae66a58c6c36f7e12e8ed79f292192d858dd4bb00e9e89d8b695e4c5cb6ef48eec84bffff421a5db93fd10412c581f1cccdb00264065df76f121995bdb68 languageName: node linkType: hard -"@babel/helper-simple-access@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helper-simple-access@npm:7.25.7" +"@babel/plugin-transform-react-jsx-source@npm:^7.27.1": + version: 7.27.1 + resolution: "@babel/plugin-transform-react-jsx-source@npm:7.27.1" dependencies: - "@babel/traverse": "npm:^7.25.7" - "@babel/types": "npm:^7.25.7" - checksum: 10/42da1c358f2516337a4f2927c77ebb952907543b9f85d7cb1e2b5b5f6d808cdc081ee66a73e2ecdf48c315d9b0c2a81a857d5e1923ea210b8e81aba5e6cd2b53 + "@babel/helper-plugin-utils": "npm:^7.27.1" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10/e2843362adb53692be5ee9fa07a386d2d8883daad2063a3575b3c373fc14cdf4ea7978c67a183cb631b4c9c8d77b2f48c24c088f8e65cc3600cb8e97d72a7161 languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helper-string-parser@npm:7.25.7" - checksum: 10/2b8de9fa86c3f3090a349f1ce6e8ee2618a95355cbdafc6f228d82fa4808c84bf3d1d25290c6616d0a18b26b6cfeb6ec2aeebf01404bc8c60051d0094209f0e6 +"@babel/template@npm:^7.27.2": + version: 7.27.2 + resolution: "@babel/template@npm:7.27.2" + dependencies: + "@babel/code-frame": "npm:^7.27.1" + "@babel/parser": "npm:^7.27.2" + "@babel/types": "npm:^7.27.1" + checksum: 10/fed15a84beb0b9340e5f81566600dbee5eccd92e4b9cc42a944359b1aa1082373391d9d5fc3656981dff27233ec935d0bc96453cf507f60a4b079463999244d8 languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-string-parser@npm:7.25.9" - checksum: 10/c28656c52bd48e8c1d9f3e8e68ecafd09d949c57755b0d353739eb4eae7ba4f7e67e92e4036f1cd43378cc1397a2c943ed7bcaf5949b04ab48607def0258b775 +"@babel/traverse@npm:^7.27.1, @babel/traverse@npm:^7.27.3, @babel/traverse@npm:^7.27.7": + version: 7.27.7 + resolution: "@babel/traverse@npm:7.27.7" + dependencies: + "@babel/code-frame": "npm:^7.27.1" + "@babel/generator": "npm:^7.27.5" + "@babel/parser": "npm:^7.27.7" + "@babel/template": "npm:^7.27.2" + "@babel/types": "npm:^7.27.7" + debug: "npm:^4.3.1" + globals: "npm:^11.1.0" + checksum: 10/10b83c362b5c2758dbbf308c3144fa0fdcc98c8f107c2b7637e2c3c975f8b4e77a18e4b5854200f5ca3749ec3bcabd57bb9831ae8455f0701cabc6366983f379 languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helper-validator-identifier@npm:7.25.7" - checksum: 10/ec6934cc47fc35baaeb968414a372b064f14f7b130cf6489a014c9486b0fd2549b3c6c682cc1fc35080075e8e38d96aeb40342d63d09fc1a62510c8ce25cde1e +"@babel/traverse@npm:^7.28.0": + version: 7.28.0 + resolution: "@babel/traverse@npm:7.28.0" + dependencies: + "@babel/code-frame": "npm:^7.27.1" + "@babel/generator": "npm:^7.28.0" + "@babel/helper-globals": "npm:^7.28.0" + "@babel/parser": "npm:^7.28.0" + "@babel/template": "npm:^7.27.2" + "@babel/types": "npm:^7.28.0" + debug: "npm:^4.3.1" + checksum: 10/c1c24b12b6cb46241ec5d11ddbd2989d6955c282715cbd8ee91a09fe156b3bdb0b88353ac33329c2992113e3dfb5198f616c834f8805bb3fa85da1f864bec5f3 languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-validator-identifier@npm:7.25.9" - checksum: 10/3f9b649be0c2fd457fa1957b694b4e69532a668866b8a0d81eabfa34ba16dbf3107b39e0e7144c55c3c652bf773ec816af8df4a61273a2bb4eb3145ca9cf478e +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.27.1, @babel/types@npm:^7.27.3, @babel/types@npm:^7.27.6, @babel/types@npm:^7.27.7": + version: 7.27.7 + resolution: "@babel/types@npm:7.27.7" + dependencies: + "@babel/helper-string-parser": "npm:^7.27.1" + "@babel/helper-validator-identifier": "npm:^7.27.1" + checksum: 10/39e9f05527ef0771dfb6220213a9ef2ca35c2b6d531e3310c8ffafb53aa50362e809f75af8feb28bd6abb874a00c02b05ac00e3063ee239db5c6f1653eab19c5 languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helper-validator-option@npm:7.25.7" - checksum: 10/3c46cbdd666d176f90a0b7e952a0c6e92184b66633336eca79aca243d1f86085ec339a6e45c3d44efa9e03f1829b470a350ddafa70926af6bbf1ac611284f8d3 +"@babel/types@npm:^7.28.0": + version: 7.28.1 + resolution: "@babel/types@npm:7.28.1" + dependencies: + "@babel/helper-string-parser": "npm:^7.27.1" + "@babel/helper-validator-identifier": "npm:^7.27.1" + checksum: 10/b35b0c030326e45efd4ebd87f30a7e5463f0c78617661ff12e8deb3fe983c53c48696374434ffd3664681cbc5b1495ebc69043753b232193e8dc02d1ae7d0ff5 languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-validator-option@npm:7.25.9" - checksum: 10/9491b2755948ebbdd68f87da907283698e663b5af2d2b1b02a2765761974b1120d5d8d49e9175b167f16f72748ffceec8c9cf62acfbee73f4904507b246e2b3d +"@bufbuild/protobuf@npm:^2.5.0": + version: 2.6.2 + resolution: "@bufbuild/protobuf@npm:2.6.2" + checksum: 10/e1d5c2f93738f7a9d797cf4dc41dc798a83c50d3765e8d1041f57c4839da932a417ecc3dbc9c91a49e5432c0b1465adea5eb3f7b2479dc390875639654b9bfab languageName: node linkType: hard -"@babel/helpers@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/helpers@npm:7.25.7" +"@develar/schema-utils@npm:~2.6.5": + version: 2.6.5 + resolution: "@develar/schema-utils@npm:2.6.5" dependencies: - "@babel/template": "npm:^7.25.7" - "@babel/types": "npm:^7.25.7" - checksum: 10/2632909f83aa99e8b0da4e10e5ab7fc4f0274e6497bb0f17071e004e037d25e4a595583620261dc21410a526fb32b4f7063c3e15e60ed7890a6f9b8ad52312c5 + ajv: "npm:^6.12.0" + ajv-keywords: "npm:^3.4.1" + checksum: 10/a219d60afca9abe708171d7b361907e36526fa8e6e7c480c6c8b05c6611d7e0989b11c1b21b7bceff5d7ccdc92315d364358ec3fd8bc5113d4e869288f32ae9c languageName: node linkType: hard -"@babel/helpers@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/helpers@npm:7.26.0" - dependencies: - "@babel/template": "npm:^7.25.9" - "@babel/types": "npm:^7.26.0" - checksum: 10/fd4757f65d10b64cfdbf4b3adb7ea6ffff9497c53e0786452f495d1f7794da7e0898261b4db65e1c62bbb9a360d7d78a1085635c23dfc3af2ab6dcba06585f86 +"@drizzle-team/brocli@npm:^0.10.2": + version: 0.10.2 + resolution: "@drizzle-team/brocli@npm:0.10.2" + checksum: 10/c8d664fac9b075406ba7ddb17ab4aaf5aae6c99e371adc30a4d7972061aa9863f10e61584ab795da3a8471fdb46d234bb095133c05dfc113cd94b4ee97884e05 languageName: node linkType: hard -"@babel/highlight@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/highlight@npm:7.25.7" - dependencies: - "@babel/helper-validator-identifier": "npm:^7.25.7" - chalk: "npm:^2.4.2" - js-tokens: "npm:^4.0.0" - picocolors: "npm:^1.0.0" - checksum: 10/823be2523d246dbf80aab3cc81c2a36c6111b16ac2949ef06789da54387824c2bfaa88c6627cdeb4ba7151d047a5d6765e49ebd0b478aba09759250111e65e08 +"@electron-toolkit/preload@npm:^3.0.2": + version: 3.0.2 + resolution: "@electron-toolkit/preload@npm:3.0.2" + peerDependencies: + electron: ">=13.0.0" + checksum: 10/987dc516654e814c056ac39946e2d330a3c0bb42a374511efdaf690d46b579c5cb92028bcc5f03e8a8d1f6f77230bc48706142175cd6fee26a7409dd95e43573 + languageName: node + linkType: hard + +"@electron-toolkit/utils@npm:^4.0.0": + version: 4.0.0 + resolution: "@electron-toolkit/utils@npm:4.0.0" + peerDependencies: + electron: ">=13.0.0" + checksum: 10/d74232626f2cfdf9e9792e4823e757b4556d2409543efd34cb00bfa615a82966950bb7af0db45b1c89e922f3f2d806a28a31d487c4fa5a5b7bf7807e0ac50beb languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.25.7, @babel/parser@npm:^7.25.8": - version: 7.25.8 - resolution: "@babel/parser@npm:7.25.8" +"@electron/asar@npm:3.2.18": + version: 3.2.18 + resolution: "@electron/asar@npm:3.2.18" dependencies: - "@babel/types": "npm:^7.25.8" + commander: "npm:^5.0.0" + glob: "npm:^7.1.6" + minimatch: "npm:^3.0.4" bin: - parser: ./bin/babel-parser.js - checksum: 10/0396eb71e379903cedb43862f84ebb1bec809c41e82b4894d2e6e83b8e8bc636ba6eff45382e615baefdb2399ede76ca82247ecc3a9877ac16eb3140074a3276 + asar: bin/asar.js + checksum: 10/e84be4234b1d981fc7ce1fe51bc9b88df7b0b67ed822d97f459a148159c7ff2a5d09b800c81dc16652459f499dc50a26b45029a84cf6c8a676908e1aa9e2aadf languageName: node linkType: hard -"@babel/parser@npm:^7.25.9, @babel/parser@npm:^7.26.0, @babel/parser@npm:^7.26.3": - version: 7.26.3 - resolution: "@babel/parser@npm:7.26.3" +"@electron/asar@npm:^3.2.7": + version: 3.4.1 + resolution: "@electron/asar@npm:3.4.1" dependencies: - "@babel/types": "npm:^7.26.3" + commander: "npm:^5.0.0" + glob: "npm:^7.1.6" + minimatch: "npm:^3.0.4" bin: - parser: ./bin/babel-parser.js - checksum: 10/e7e3814b2dc9ee3ed605d38223471fa7d3a84cbe9474d2b5fa7ac57dc1ddf75577b1fd3a93bf7db8f41f28869bda795cddd80223f980be23623b6434bf4c88a8 + asar: bin/asar.js + checksum: 10/c41c6b0a5e112e0209b7f6b6eec7d83d3162a8061233375c76ca9f94afcff326a3447e5f53889b35049a855648a09f203c9850c2dbb6cd4690b54a2075eae266 languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-self@npm:^7.24.7": - version: 7.25.7 - resolution: "@babel/plugin-transform-react-jsx-self@npm:7.25.7" +"@electron/fuses@npm:^1.8.0": + version: 1.8.0 + resolution: "@electron/fuses@npm:1.8.0" dependencies: - "@babel/helper-plugin-utils": "npm:^7.25.7" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 10/5374a91374f8cd17e05be2a3fea36db79048402e988264afe563c136ab2b78991353f6f6e89391376431621714629eb87476ca714c298186fc6621c6cb01a458 + chalk: "npm:^4.1.1" + fs-extra: "npm:^9.0.1" + minimist: "npm:^1.2.5" + bin: + electron-fuses: dist/bin.js + checksum: 10/fcd6cc79c0d909ca782ba87f060b9bf2af00c72b5b7c96cac12d41b8409518af4d52e29dc84e47994cab6fc6a723761cf7d85d6dd4cf62ad20b42446a81904ea languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-self@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-react-jsx-self@npm:7.25.9" +"@electron/get@npm:^2.0.0": + version: 2.0.3 + resolution: "@electron/get@npm:2.0.3" dependencies: - "@babel/helper-plugin-utils": "npm:^7.25.9" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 10/41c833cd7f91b1432710f91b1325706e57979b2e8da44e83d86312c78bbe96cd9ef778b4e79e4e17ab25fa32c72b909f2be7f28e876779ede28e27506c41f4ae + debug: "npm:^4.1.1" + env-paths: "npm:^2.2.0" + fs-extra: "npm:^8.1.0" + global-agent: "npm:^3.0.0" + got: "npm:^11.8.5" + progress: "npm:^2.0.3" + semver: "npm:^6.2.0" + sumchecker: "npm:^3.0.1" + dependenciesMeta: + global-agent: + optional: true + checksum: 10/ac736cdeac52513b23038c761ebcb9fd315d443675f12c975805d7bcddcdabe5be492310ce5f6f1915d27013bcdcf19d0dac73c72353120948bbdf01fb3e11bf languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-source@npm:^7.24.7": - version: 7.25.7 - resolution: "@babel/plugin-transform-react-jsx-source@npm:7.25.7" +"@electron/node-gyp@git+https://github.com/electron/node-gyp.git#06b29aafb7708acef8b3669835c8a7857ebc92d2": + version: 10.2.0-electron.1 + resolution: "@electron/node-gyp@https://github.com/electron/node-gyp.git#commit=06b29aafb7708acef8b3669835c8a7857ebc92d2" dependencies: - "@babel/helper-plugin-utils": "npm:^7.25.7" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 10/1d0c2b3c42ba23f90ff675de3dd32c9722cf4c940d3f39d43c68bcc9d6313b1350e6d5f2fd7f02f0aa411e484efda66ed98ea43fecf4357f80aed9356086a692 + env-paths: "npm:^2.2.0" + exponential-backoff: "npm:^3.1.1" + glob: "npm:^8.1.0" + graceful-fs: "npm:^4.2.6" + make-fetch-happen: "npm:^10.2.1" + nopt: "npm:^6.0.0" + proc-log: "npm:^2.0.1" + semver: "npm:^7.3.5" + tar: "npm:^6.2.1" + which: "npm:^2.0.2" + bin: + node-gyp: ./bin/node-gyp.js + checksum: 10/4ee7c77e1a9f581e36b53f393984e40284dcf9ed38ea51265bb5a4fcc51ea7e86e7765a8b8cfac6405506de04f2464c7379ce3f14485ead36dec13eba78c089c languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-source@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-react-jsx-source@npm:7.25.9" +"@electron/notarize@npm:2.5.0": + version: 2.5.0 + resolution: "@electron/notarize@npm:2.5.0" dependencies: - "@babel/helper-plugin-utils": "npm:^7.25.9" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 10/a3e0e5672e344e9d01fb20b504fe29a84918eaa70cec512c4d4b1b035f72803261257343d8e93673365b72c371f35cf34bb0d129720bf178a4c87812c8b9c662 + debug: "npm:^4.1.1" + fs-extra: "npm:^9.0.1" + promise-retry: "npm:^2.0.1" + checksum: 10/16380675e47e272d481b14a4e66326e7bbc4cb7183d40e4eb146440183bc5dc45f5bc4cf75dfeb4c7b2574919f343fc678ae20512b59427216512470c3942ab2 languageName: node linkType: hard -"@babel/template@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/template@npm:7.25.7" +"@electron/osx-sign@npm:1.3.1": + version: 1.3.1 + resolution: "@electron/osx-sign@npm:1.3.1" dependencies: - "@babel/code-frame": "npm:^7.25.7" - "@babel/parser": "npm:^7.25.7" - "@babel/types": "npm:^7.25.7" - checksum: 10/49e1e88d2eac17d31ae28d6cf13d6d29c1f49384c4f056a6751c065d6565c351e62c01ce6b11fef5edb5f3a77c87e114ea7326ca384fa618b4834e10cf9b20f3 + compare-version: "npm:^0.1.2" + debug: "npm:^4.3.4" + fs-extra: "npm:^10.0.0" + isbinaryfile: "npm:^4.0.8" + minimist: "npm:^1.2.6" + plist: "npm:^3.0.5" + bin: + electron-osx-flat: bin/electron-osx-flat.js + electron-osx-sign: bin/electron-osx-sign.js + checksum: 10/81a5c2674c7be08e7786639bc851219a3437acdc3d61efdc51dd4e80d64f94ae55e0a1e058835bdb1f803bc8e68ccdd13d6cf21356dd93d9fede798758b7473a languageName: node linkType: hard -"@babel/template@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/template@npm:7.25.9" +"@electron/rebuild@npm:3.7.0": + version: 3.7.0 + resolution: "@electron/rebuild@npm:3.7.0" dependencies: - "@babel/code-frame": "npm:^7.25.9" - "@babel/parser": "npm:^7.25.9" - "@babel/types": "npm:^7.25.9" - checksum: 10/e861180881507210150c1335ad94aff80fd9e9be6202e1efa752059c93224e2d5310186ddcdd4c0f0b0fc658ce48cb47823f15142b5c00c8456dde54f5de80b2 + "@electron/node-gyp": "git+https://github.com/electron/node-gyp.git#06b29aafb7708acef8b3669835c8a7857ebc92d2" + "@malept/cross-spawn-promise": "npm:^2.0.0" + chalk: "npm:^4.0.0" + debug: "npm:^4.1.1" + detect-libc: "npm:^2.0.1" + fs-extra: "npm:^10.0.0" + got: "npm:^11.7.0" + node-abi: "npm:^3.45.0" + node-api-version: "npm:^0.2.0" + node-gyp: "npm:latest" + ora: "npm:^5.1.0" + read-binary-file-arch: "npm:^1.0.6" + semver: "npm:^7.3.5" + tar: "npm:^6.0.5" + yargs: "npm:^17.0.1" + bin: + electron-rebuild: lib/cli.js + checksum: 10/fd459e61ceb0ab1972f151c64c63a919eb0e0fca6ee2c9a1a26068a02e7202f77b640153d37cf51d2720c2213e38998a4e7c61da421e8039cb92b7fa9cd1d740 languageName: node linkType: hard -"@babel/traverse@npm:^7.25.7": - version: 7.25.7 - resolution: "@babel/traverse@npm:7.25.7" +"@electron/universal@npm:2.0.1": + version: 2.0.1 + resolution: "@electron/universal@npm:2.0.1" dependencies: - "@babel/code-frame": "npm:^7.25.7" - "@babel/generator": "npm:^7.25.7" - "@babel/parser": "npm:^7.25.7" - "@babel/template": "npm:^7.25.7" - "@babel/types": "npm:^7.25.7" + "@electron/asar": "npm:^3.2.7" + "@malept/cross-spawn-promise": "npm:^2.0.0" debug: "npm:^4.3.1" - globals: "npm:^11.1.0" - checksum: 10/5b2d332fcd6bc78e6500c997e79f7e2a54dfb357e06f0908cb7f0cdd9bb54e7fd3c5673f45993849d433d01ea6076a6d04b825958f0cfa01288ad55ffa5c286f + dir-compare: "npm:^4.2.0" + fs-extra: "npm:^11.1.1" + minimatch: "npm:^9.0.3" + plist: "npm:^3.1.0" + checksum: 10/9a4fe3a15ba0114f61219cf6a57cb51e71dd878ad8696b818f7b26e85ef5088ee714567c560e4cbd2b1088dffef5c56a83cd75d06b9976b0b190a8c2db0f59c9 languageName: node linkType: hard -"@babel/traverse@npm:^7.25.9": - version: 7.26.4 - resolution: "@babel/traverse@npm:7.26.4" - dependencies: - "@babel/code-frame": "npm:^7.26.2" - "@babel/generator": "npm:^7.26.3" - "@babel/parser": "npm:^7.26.3" - "@babel/template": "npm:^7.25.9" - "@babel/types": "npm:^7.26.3" - debug: "npm:^4.3.1" - globals: "npm:^11.1.0" - checksum: 10/30c81a80d66fc39842814bc2e847f4705d30f3859156f130d90a0334fe1d53aa81eed877320141a528ecbc36448acc0f14f544a7d410fa319d1c3ab63b50b58f +"@enun/react@npm:^0.4.1": + version: 0.4.1 + resolution: "@enun/react@npm:0.4.1" + peerDependencies: + "@enun/state": ^0.1.1 + react: ^19.0.0 + react-dom: ^19.0.0 + checksum: 10/175d225f7d1b1042fd2010e5ca7163f87d8b7efd883660cc19b6f25377a0ef91a64923f05a320c3ab722ec6ac06a621900924a6f7d59f23e072f79673f051fb9 languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.7, @babel/types@npm:^7.25.8": - version: 7.25.8 - resolution: "@babel/types@npm:7.25.8" +"@enun/state@npm:^0.1.1": + version: 0.1.1 + resolution: "@enun/state@npm:0.1.1" dependencies: - "@babel/helper-string-parser": "npm:^7.25.7" - "@babel/helper-validator-identifier": "npm:^7.25.7" - to-fast-properties: "npm:^2.0.0" - checksum: 10/973108dbb189916bb87360f2beff43ae97f1b08f1c071bc6499d363cce48b3c71674bf3b59dfd617f8c5062d1c76dc2a64232bc07b6ccef831fd0c06162d44d9 + "@enun/store": "npm:^0.3.1" + deepmerge: "npm:^4.3.1" + immer: "npm:^10.1.1" + nanoid: "npm:^5.1.5" + checksum: 10/289dcab4f4729cb81cc0fc561258864ed1c8c263aa2f8fa16604de813a8709f7c23aaa93d4096e17eba1dbbf89c14fda57bc9dc201f7ec37386de7c3f8e73974 + languageName: node + linkType: hard + +"@enun/store@npm:^0.3.1": + version: 0.3.1 + resolution: "@enun/store@npm:0.3.1" + checksum: 10/024a652e4a150ec97acb426aaf0d400b1e2bce30d1675b6fb64368fd12207210274dc1426e85d008b5ad991731bc0dc9ee4e8d3b73423536c7f3957facc96ad5 languageName: node linkType: hard -"@babel/types@npm:^7.25.9, @babel/types@npm:^7.26.0, @babel/types@npm:^7.26.3": - version: 7.26.3 - resolution: "@babel/types@npm:7.26.3" +"@esbuild-kit/core-utils@npm:^3.3.2": + version: 3.3.2 + resolution: "@esbuild-kit/core-utils@npm:3.3.2" dependencies: - "@babel/helper-string-parser": "npm:^7.25.9" - "@babel/helper-validator-identifier": "npm:^7.25.9" - checksum: 10/c31d0549630a89abfa11410bf82a318b0c87aa846fbf5f9905e47ba5e2aa44f41cc746442f105d622c519e4dc532d35a8d8080460ff4692f9fc7485fbf3a00eb + esbuild: "npm:~0.18.20" + source-map-support: "npm:^0.5.21" + checksum: 10/012387ed407c57b9735bf2cc5bc3b9b35888f69376bb7d749e9e16415248deeb66b7d93444458239ba15872738a4b5d4e8466b7260e721c6de477dd5e87ef945 languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/aix-ppc64@npm:0.21.5" - conditions: os=aix & cpu=ppc64 +"@esbuild-kit/esm-loader@npm:^2.5.5": + version: 2.6.5 + resolution: "@esbuild-kit/esm-loader@npm:2.6.5" + dependencies: + "@esbuild-kit/core-utils": "npm:^3.3.2" + get-tsconfig: "npm:^4.7.0" + checksum: 10/e7dac48017fbb7e13f0519ff25f700c38c78ccc8ae2d7d117216c6658d8d21499d01b4381287acdf2f7dde36d812b9a3e57a3c4b38cec4717173cd65c13037e0 languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/aix-ppc64@npm:0.23.1" +"@esbuild/aix-ppc64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/aix-ppc64@npm:0.25.5" conditions: os=aix & cpu=ppc64 languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/aix-ppc64@npm:0.24.0" +"@esbuild/aix-ppc64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/aix-ppc64@npm:0.25.8" conditions: os=aix & cpu=ppc64 languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/android-arm64@npm:0.21.5" +"@esbuild/android-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/android-arm64@npm:0.18.20" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/android-arm64@npm:0.23.1" +"@esbuild/android-arm64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/android-arm64@npm:0.25.5" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/android-arm64@npm:0.24.0" +"@esbuild/android-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/android-arm64@npm:0.25.8" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@esbuild/android-arm@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/android-arm@npm:0.21.5" +"@esbuild/android-arm@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/android-arm@npm:0.18.20" conditions: os=android & cpu=arm languageName: node linkType: hard -"@esbuild/android-arm@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/android-arm@npm:0.23.1" +"@esbuild/android-arm@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/android-arm@npm:0.25.5" conditions: os=android & cpu=arm languageName: node linkType: hard -"@esbuild/android-arm@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/android-arm@npm:0.24.0" +"@esbuild/android-arm@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/android-arm@npm:0.25.8" conditions: os=android & cpu=arm languageName: node linkType: hard -"@esbuild/android-x64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/android-x64@npm:0.21.5" +"@esbuild/android-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/android-x64@npm:0.18.20" conditions: os=android & cpu=x64 languageName: node linkType: hard -"@esbuild/android-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/android-x64@npm:0.23.1" +"@esbuild/android-x64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/android-x64@npm:0.25.5" conditions: os=android & cpu=x64 languageName: node linkType: hard -"@esbuild/android-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/android-x64@npm:0.24.0" +"@esbuild/android-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/android-x64@npm:0.25.8" conditions: os=android & cpu=x64 languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/darwin-arm64@npm:0.21.5" +"@esbuild/darwin-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/darwin-arm64@npm:0.18.20" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/darwin-arm64@npm:0.23.1" +"@esbuild/darwin-arm64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/darwin-arm64@npm:0.25.5" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/darwin-arm64@npm:0.24.0" +"@esbuild/darwin-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/darwin-arm64@npm:0.25.8" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/darwin-x64@npm:0.21.5" +"@esbuild/darwin-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/darwin-x64@npm:0.18.20" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/darwin-x64@npm:0.23.1" +"@esbuild/darwin-x64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/darwin-x64@npm:0.25.5" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/darwin-x64@npm:0.24.0" +"@esbuild/darwin-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/darwin-x64@npm:0.25.8" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/freebsd-arm64@npm:0.21.5" +"@esbuild/freebsd-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/freebsd-arm64@npm:0.18.20" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/freebsd-arm64@npm:0.23.1" +"@esbuild/freebsd-arm64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/freebsd-arm64@npm:0.25.5" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/freebsd-arm64@npm:0.24.0" +"@esbuild/freebsd-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/freebsd-arm64@npm:0.25.8" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/freebsd-x64@npm:0.21.5" +"@esbuild/freebsd-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/freebsd-x64@npm:0.18.20" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/freebsd-x64@npm:0.23.1" +"@esbuild/freebsd-x64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/freebsd-x64@npm:0.25.5" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/freebsd-x64@npm:0.24.0" +"@esbuild/freebsd-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/freebsd-x64@npm:0.25.8" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-arm64@npm:0.21.5" +"@esbuild/linux-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-arm64@npm:0.18.20" conditions: os=linux & cpu=arm64 languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-arm64@npm:0.23.1" +"@esbuild/linux-arm64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-arm64@npm:0.25.5" conditions: os=linux & cpu=arm64 languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-arm64@npm:0.24.0" +"@esbuild/linux-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-arm64@npm:0.25.8" conditions: os=linux & cpu=arm64 languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-arm@npm:0.21.5" +"@esbuild/linux-arm@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-arm@npm:0.18.20" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-arm@npm:0.23.1" +"@esbuild/linux-arm@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-arm@npm:0.25.5" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-arm@npm:0.24.0" +"@esbuild/linux-arm@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-arm@npm:0.25.8" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-ia32@npm:0.21.5" +"@esbuild/linux-ia32@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-ia32@npm:0.18.20" conditions: os=linux & cpu=ia32 languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-ia32@npm:0.23.1" +"@esbuild/linux-ia32@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-ia32@npm:0.25.5" conditions: os=linux & cpu=ia32 languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-ia32@npm:0.24.0" +"@esbuild/linux-ia32@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-ia32@npm:0.25.8" conditions: os=linux & cpu=ia32 languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-loong64@npm:0.21.5" +"@esbuild/linux-loong64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-loong64@npm:0.18.20" conditions: os=linux & cpu=loong64 languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-loong64@npm:0.23.1" +"@esbuild/linux-loong64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-loong64@npm:0.25.5" conditions: os=linux & cpu=loong64 languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-loong64@npm:0.24.0" +"@esbuild/linux-loong64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-loong64@npm:0.25.8" conditions: os=linux & cpu=loong64 languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-mips64el@npm:0.21.5" +"@esbuild/linux-mips64el@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-mips64el@npm:0.18.20" conditions: os=linux & cpu=mips64el languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-mips64el@npm:0.23.1" +"@esbuild/linux-mips64el@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-mips64el@npm:0.25.5" conditions: os=linux & cpu=mips64el languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-mips64el@npm:0.24.0" +"@esbuild/linux-mips64el@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-mips64el@npm:0.25.8" conditions: os=linux & cpu=mips64el languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-ppc64@npm:0.21.5" +"@esbuild/linux-ppc64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-ppc64@npm:0.18.20" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-ppc64@npm:0.23.1" +"@esbuild/linux-ppc64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-ppc64@npm:0.25.5" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-ppc64@npm:0.24.0" +"@esbuild/linux-ppc64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-ppc64@npm:0.25.8" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-riscv64@npm:0.21.5" +"@esbuild/linux-riscv64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-riscv64@npm:0.18.20" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-riscv64@npm:0.23.1" +"@esbuild/linux-riscv64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-riscv64@npm:0.25.5" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-riscv64@npm:0.24.0" +"@esbuild/linux-riscv64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-riscv64@npm:0.25.8" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-s390x@npm:0.21.5" +"@esbuild/linux-s390x@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-s390x@npm:0.18.20" conditions: os=linux & cpu=s390x languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-s390x@npm:0.23.1" +"@esbuild/linux-s390x@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-s390x@npm:0.25.5" conditions: os=linux & cpu=s390x languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-s390x@npm:0.24.0" +"@esbuild/linux-s390x@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-s390x@npm:0.25.8" conditions: os=linux & cpu=s390x languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/linux-x64@npm:0.21.5" +"@esbuild/linux-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-x64@npm:0.18.20" conditions: os=linux & cpu=x64 languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-x64@npm:0.23.1" +"@esbuild/linux-x64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/linux-x64@npm:0.25.5" conditions: os=linux & cpu=x64 languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-x64@npm:0.24.0" +"@esbuild/linux-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-x64@npm:0.25.8" conditions: os=linux & cpu=x64 languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/netbsd-x64@npm:0.21.5" +"@esbuild/netbsd-arm64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/netbsd-arm64@npm:0.25.5" + conditions: os=netbsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/netbsd-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/netbsd-arm64@npm:0.25.8" + conditions: os=netbsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/netbsd-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/netbsd-x64@npm:0.18.20" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/netbsd-x64@npm:0.23.1" +"@esbuild/netbsd-x64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/netbsd-x64@npm:0.25.5" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/netbsd-x64@npm:0.24.0" +"@esbuild/netbsd-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/netbsd-x64@npm:0.25.8" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/openbsd-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/openbsd-arm64@npm:0.23.1" +"@esbuild/openbsd-arm64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/openbsd-arm64@npm:0.25.5" conditions: os=openbsd & cpu=arm64 languageName: node linkType: hard -"@esbuild/openbsd-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/openbsd-arm64@npm:0.24.0" +"@esbuild/openbsd-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/openbsd-arm64@npm:0.25.8" conditions: os=openbsd & cpu=arm64 languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/openbsd-x64@npm:0.21.5" +"@esbuild/openbsd-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/openbsd-x64@npm:0.18.20" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/openbsd-x64@npm:0.23.1" +"@esbuild/openbsd-x64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/openbsd-x64@npm:0.25.5" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/openbsd-x64@npm:0.24.0" +"@esbuild/openbsd-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/openbsd-x64@npm:0.25.8" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/sunos-x64@npm:0.21.5" +"@esbuild/openharmony-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/openharmony-arm64@npm:0.25.8" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/sunos-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/sunos-x64@npm:0.18.20" conditions: os=sunos & cpu=x64 languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/sunos-x64@npm:0.23.1" +"@esbuild/sunos-x64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/sunos-x64@npm:0.25.5" conditions: os=sunos & cpu=x64 languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/sunos-x64@npm:0.24.0" +"@esbuild/sunos-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/sunos-x64@npm:0.25.8" conditions: os=sunos & cpu=x64 languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/win32-arm64@npm:0.21.5" +"@esbuild/win32-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/win32-arm64@npm:0.18.20" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/win32-arm64@npm:0.23.1" +"@esbuild/win32-arm64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/win32-arm64@npm:0.25.5" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/win32-arm64@npm:0.24.0" +"@esbuild/win32-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/win32-arm64@npm:0.25.8" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/win32-ia32@npm:0.21.5" +"@esbuild/win32-ia32@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/win32-ia32@npm:0.18.20" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/win32-ia32@npm:0.23.1" +"@esbuild/win32-ia32@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/win32-ia32@npm:0.25.5" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/win32-ia32@npm:0.24.0" +"@esbuild/win32-ia32@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/win32-ia32@npm:0.25.8" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.21.5": - version: 0.21.5 - resolution: "@esbuild/win32-x64@npm:0.21.5" +"@esbuild/win32-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/win32-x64@npm:0.18.20" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/win32-x64@npm:0.23.1" +"@esbuild/win32-x64@npm:0.25.5": + version: 0.25.5 + resolution: "@esbuild/win32-x64@npm:0.25.5" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/win32-x64@npm:0.24.0" +"@esbuild/win32-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/win32-x64@npm:0.25.8" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": +"@eslint-community/eslint-utils@npm:^4.2.0": version: 4.4.0 resolution: "@eslint-community/eslint-utils@npm:4.4.0" dependencies: @@ -939,7 +1069,18 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.11.0, @eslint-community/regexpp@npm:^4.6.1": +"@eslint-community/eslint-utils@npm:^4.7.0": + version: 4.7.0 + resolution: "@eslint-community/eslint-utils@npm:4.7.0" + dependencies: + eslint-visitor-keys: "npm:^3.4.3" + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + checksum: 10/43ed5d391526d9f5bbe452aef336389a473026fca92057cf97c576db11401ce9bcf8ef0bf72625bbaf6207ed8ba6bf0dcf4d7e809c24f08faa68a28533c491a7 + languageName: node + linkType: hard + +"@eslint-community/regexpp@npm:^4.10.0": version: 4.11.1 resolution: "@eslint-community/regexpp@npm:4.11.1" checksum: 10/934b6d3588c7f16b18d41efec4fdb89616c440b7e3256b8cb92cfd31ae12908600f2b986d6c1e61a84cbc10256b1dd3448cd1eec79904bd67ac365d0f1aba2e2 @@ -953,81 +1094,45 @@ __metadata: languageName: node linkType: hard -"@eslint/config-array@npm:^0.18.0": - version: 0.18.0 - resolution: "@eslint/config-array@npm:0.18.0" - dependencies: - "@eslint/object-schema": "npm:^2.1.4" - debug: "npm:^4.3.1" - minimatch: "npm:^3.1.2" - checksum: 10/60ccad1eb4806710b085cd739568ec7afd289ee5af6ca0383f0876f9fe375559ef525f7b3f86bdb3f961493de952f2cf3ab4aa4a6ccaef0ae3cd688267cabcb3 - languageName: node - linkType: hard - -"@eslint/config-array@npm:^0.19.0": - version: 0.19.1 - resolution: "@eslint/config-array@npm:0.19.1" +"@eslint/config-array@npm:^0.21.0": + version: 0.21.0 + resolution: "@eslint/config-array@npm:0.21.0" dependencies: - "@eslint/object-schema": "npm:^2.1.5" + "@eslint/object-schema": "npm:^2.1.6" debug: "npm:^4.3.1" minimatch: "npm:^3.1.2" - checksum: 10/1243b01f463de85c970c18f0994f9d1850dafe8cc8c910edb64105d845edd3cacaa0bbf028bf35a6daaf5a179021140b6a8b1dc7a2f915b42c2d35f022a9c201 + checksum: 10/f5a499e074ecf4b4a5efdca655418a12079d024b77d02fd35868eeb717c5bfdd8e32c6e8e1dd125330233a878026edda8062b13b4310169ba5bfee9623a67aa0 languageName: node linkType: hard -"@eslint/core@npm:^0.6.0": - version: 0.6.0 - resolution: "@eslint/core@npm:0.6.0" - checksum: 10/ec5cce168c8773fbd60c5a505563c6cf24398b3e1fa352929878d63129e0dd5b134d3232be2f2c49e8124a965d03359b38962aa0dcf7dfaf50746059d2a2f798 +"@eslint/config-helpers@npm:^0.3.0": + version: 0.3.0 + resolution: "@eslint/config-helpers@npm:0.3.0" + checksum: 10/b4c188f28cb8b76d4f4b49566ec1cc9d561bc888ef66ad34587151a212ff168afcf163493c72033149181f947cb950c3cca1525d7486303aae4dfde3e5399573 languageName: node linkType: hard -"@eslint/core@npm:^0.9.0": - version: 0.9.1 - resolution: "@eslint/core@npm:0.9.1" +"@eslint/core@npm:^0.14.0": + version: 0.14.0 + resolution: "@eslint/core@npm:0.14.0" dependencies: "@types/json-schema": "npm:^7.0.15" - checksum: 10/f2263f8f94fdf84fc34573e027de98f1fce6287120513ae672ddf0652c75b9fa77c314d565628fc58e0a6f959766acc34c8191f9b94f1757b910408ffa04adde - languageName: node - linkType: hard - -"@eslint/eslintrc@npm:^2.1.4": - version: 2.1.4 - resolution: "@eslint/eslintrc@npm:2.1.4" - dependencies: - ajv: "npm:^6.12.4" - debug: "npm:^4.3.2" - espree: "npm:^9.6.0" - globals: "npm:^13.19.0" - ignore: "npm:^5.2.0" - import-fresh: "npm:^3.2.1" - js-yaml: "npm:^4.1.0" - minimatch: "npm:^3.1.2" - strip-json-comments: "npm:^3.1.1" - checksum: 10/7a3b14f4b40fc1a22624c3f84d9f467a3d9ea1ca6e9a372116cb92507e485260359465b58e25bcb6c9981b155416b98c9973ad9b796053fd7b3f776a6946bce8 + checksum: 10/d9b060cf97468150675ddf4fb3db55edaa32467e0adf9f80919a5bfd15d0835ad7765456f4397ec2d16b0a1bb702af63f6d4712f94194d34fea118231ae1e2db languageName: node linkType: hard -"@eslint/eslintrc@npm:^3.1.0": - version: 3.1.0 - resolution: "@eslint/eslintrc@npm:3.1.0" +"@eslint/core@npm:^0.15.0, @eslint/core@npm:^0.15.1": + version: 0.15.1 + resolution: "@eslint/core@npm:0.15.1" dependencies: - ajv: "npm:^6.12.4" - debug: "npm:^4.3.2" - espree: "npm:^10.0.1" - globals: "npm:^14.0.0" - ignore: "npm:^5.2.0" - import-fresh: "npm:^3.2.1" - js-yaml: "npm:^4.1.0" - minimatch: "npm:^3.1.2" - strip-json-comments: "npm:^3.1.1" - checksum: 10/02bf892d1397e1029209dea685e9f4f87baf643315df2a632b5f121ec7e8548a3b34f428a007234fa82772218fa8a3ac2d10328637b9ce63b7f8344035b74db3 + "@types/json-schema": "npm:^7.0.15" + checksum: 10/f00062f0f18fbbfcf080315532340b01e18b729277245899844adb5bec3c9fe2991e1f134c633a15fdfbc4e8b631c2df167d241c49b37e02e937f8c22edfcd3a languageName: node linkType: hard -"@eslint/eslintrc@npm:^3.2.0": - version: 3.2.0 - resolution: "@eslint/eslintrc@npm:3.2.0" +"@eslint/eslintrc@npm:^3.3.1": + version: 3.3.1 + resolution: "@eslint/eslintrc@npm:3.3.1" dependencies: ajv: "npm:^6.12.4" debug: "npm:^4.3.2" @@ -1038,106 +1143,74 @@ __metadata: js-yaml: "npm:^4.1.0" minimatch: "npm:^3.1.2" strip-json-comments: "npm:^3.1.1" - checksum: 10/b32dd90ce7da68e89b88cd729db46b27aac79a2e6cb1fa75d25a6b766d586b443bfbf59622489efbd3c6f696f147b51111e81ec7cd23d70f215c5d474cad0261 - languageName: node - linkType: hard - -"@eslint/js@npm:8.57.1": - version: 8.57.1 - resolution: "@eslint/js@npm:8.57.1" - checksum: 10/7562b21be10c2adbfa4aa5bb2eccec2cb9ac649a3569560742202c8d1cb6c931ce634937a2f0f551e078403a1c1285d6c2c0aa345dafc986149665cd69fe8b59 - languageName: node - linkType: hard - -"@eslint/js@npm:9.12.0, @eslint/js@npm:^9.11.1, @eslint/js@npm:^9.9.0": - version: 9.12.0 - resolution: "@eslint/js@npm:9.12.0" - checksum: 10/c4ec9f7ff664f778324002bccdfd63e4a563018e4d7efc838d8149898f9df8649fbc51a379c3d7deea40da4fba9e8e62f39f2df3ff2b9616e2241bbfc10456b0 - languageName: node - linkType: hard - -"@eslint/js@npm:9.17.0, @eslint/js@npm:^9.15.0": - version: 9.17.0 - resolution: "@eslint/js@npm:9.17.0" - checksum: 10/1a89e62f5c50e75d44565b7f3b91701455a999132c991e10bac59c118fbb54bdd54be22b9bda1ac730f78a2e64604403d65ce5dd7726d80b2632982cfc3d84ac + checksum: 10/cc240addbab3c5fceaa65b2c8d5d4fd77ddbbf472c2f74f0270b9d33263dc9116840b6099c46b64c9680301146250439b044ed79278a1bcc557da412a4e3c1bb languageName: node linkType: hard -"@eslint/object-schema@npm:^2.1.4": - version: 2.1.4 - resolution: "@eslint/object-schema@npm:2.1.4" - checksum: 10/221e8d9f281c605948cd6e030874aacce83fe097f8f9c1964787037bccf08e82b7aa9eff1850a30fffac43f1d76555727ec22a2af479d91e268e89d1e035131e +"@eslint/js@npm:9.30.0": + version: 9.30.0 + resolution: "@eslint/js@npm:9.30.0" + checksum: 10/42e3d5a9cdd5a0842f3ed078e28f81ae1cf04bd2edfd09f43e6dc148bb2e99904f09090007eb6485afd82d837771890c5a8b9ceb1e8c4e256953df4b4aa97308 languageName: node linkType: hard -"@eslint/object-schema@npm:^2.1.5": - version: 2.1.5 - resolution: "@eslint/object-schema@npm:2.1.5" - checksum: 10/bb07ec53357047f20de923bcd61f0306d9eee83ef41daa32e633e154a44796b5bd94670169eccb8fd8cb4ff42228a43b86953a6321f789f98194baba8207b640 +"@eslint/js@npm:9.31.0, @eslint/js@npm:^9.30.1": + version: 9.31.0 + resolution: "@eslint/js@npm:9.31.0" + checksum: 10/83b45c707d9a6c62b79a9fb69b7ebcb31e8163647c0fdcae5972b4b2fcbbb1e8eac543986e0cca3582f8462a6587f6b6dc48e362b2ce3feb74282606c3d425ea languageName: node linkType: hard -"@eslint/plugin-kit@npm:^0.2.0": - version: 0.2.0 - resolution: "@eslint/plugin-kit@npm:0.2.0" - dependencies: - levn: "npm:^0.4.1" - checksum: 10/ebb363174397341dea47dc35fc206e24328083e4f0fa1c539687dbb7f94bef77e43faa12867d032e6eea5ac980ea8fbb6b1d844186e422d327c04088041b99f3 +"@eslint/object-schema@npm:^2.1.6": + version: 2.1.6 + resolution: "@eslint/object-schema@npm:2.1.6" + checksum: 10/266085c8d3fa6cd99457fb6350dffb8ee39db9c6baf28dc2b86576657373c92a568aec4bae7d142978e798b74c271696672e103202d47a0c148da39154351ed6 languageName: node linkType: hard -"@eslint/plugin-kit@npm:^0.2.3": - version: 0.2.4 - resolution: "@eslint/plugin-kit@npm:0.2.4" +"@eslint/plugin-kit@npm:^0.3.1": + version: 0.3.3 + resolution: "@eslint/plugin-kit@npm:0.3.3" dependencies: + "@eslint/core": "npm:^0.15.1" levn: "npm:^0.4.1" - checksum: 10/e34d02ea1dccd716e51369620263a4b2167aff3c0510ed776e21336cc3ad7158087449a76931baf07cdc33810cb6919db375f2e9f409435d2c6e0dd5f4786b25 + checksum: 10/8d5d6ce1403a8aaae366b2c7ed2c8f0a384b80c3bc7e363e74c5048b617f43c722373507b0ba7429d1b6480c2ab0f04e742d42da1ab954d53b14e0186dd59923 languageName: node linkType: hard -"@flexive/core@npm:^0.4.8": - version: 0.4.8 - resolution: "@flexive/core@npm:0.4.8" +"@flexive/core@npm:^0.6.0": + version: 0.6.0 + resolution: "@flexive/core@npm:0.6.0" peerDependencies: react: ^18.2.0 - react-dom: ^18.2.0 - checksum: 10/6d70aa7430244eec11e5789fa29ff9f1733a3c57fe70b7b9c32787157fc7ee89945602ca3ce46121d5181a5758982587379b627844df48490cab2629262986cf + checksum: 10/33fda7ebe0310282b638c317afa3cf5b7d8c4c0403013997488e5ebdc45a29ab6279d73d64e9813e757d3cfbd044d449f69d6d97070ec3ca26c775c6ff1c36ef languageName: node linkType: hard -"@flexive/core@npm:^0.5.6": - version: 0.5.6 - resolution: "@flexive/core@npm:0.5.6" +"@flexive/operator@npm:^0.3.4": + version: 0.3.4 + resolution: "@flexive/operator@npm:0.3.4" + dependencies: + fast-deep-equal: "npm:^3.1.3" peerDependencies: react: ^18.2.0 - checksum: 10/8376b428b35c4c870b4268ef6507729d14784a837f6ddbf4f591a57143266da6b74b441175cbfb42b4794279f2647383cc7e3bcfcbd05c81703ce7b6c13f6e59 + checksum: 10/9c783047adbc511202fb2405a07731ad740caa072cac1b27a461c0fd67301913ee92abcabb5af4e2e7d968e4bed9458c715438fd9dfc82b0f2cd91d66eaedb2b languageName: node linkType: hard -"@flexive/core@npm:^0.5.8": - version: 0.5.8 - resolution: "@flexive/core@npm:0.5.8" - peerDependencies: - react: ^18.2.0 - checksum: 10/10e410cd2fc7f21237b8e9a470f8ec0ff0cd85700b29dc2394a9b408dc1cdd7f3c7ab7f43311e1e601105965c7b0c2143042a387b257ba2eb97c142377fedc1b +"@gar/promisify@npm:^1.1.3": + version: 1.1.3 + resolution: "@gar/promisify@npm:1.1.3" + checksum: 10/052dd232140fa60e81588000cbe729a40146579b361f1070bce63e2a761388a22a16d00beeffc504bd3601cb8e055c57b21a185448b3ed550cf50716f4fd442e languageName: node linkType: hard -"@flexive/operator@npm:^0.3.3": - version: 0.3.3 - resolution: "@flexive/operator@npm:0.3.3" - dependencies: - fast-deep-equal: "npm:^3.1.3" +"@hono/node-server@npm:^1.14.4": + version: 1.14.4 + resolution: "@hono/node-server@npm:1.14.4" peerDependencies: - react: ^18.2.0 - checksum: 10/9649facea38f938c004aaeb0d7aeec624a77bec6694139653951e403d991dd566b28a97c69757455ceb8e6271aa96ef1a4edf5af48d9fa09a2c8592c62e34e08 - languageName: node - linkType: hard - -"@humanfs/core@npm:^0.19.0": - version: 0.19.0 - resolution: "@humanfs/core@npm:0.19.0" - checksum: 10/9c4f96b9e934b7d2f69c5ee8b9414dcaf5c5a03225eb08f8ace3b80429c0fc796e11c4e2ef182172790e7b4560b1137ef984da4dc9662cdd5e3e92baceb02821 + hono: ^4 + checksum: 10/3cbe4133507ae6da949f5f34b74a0d84aaef597710b14675c773f4349a65b1bcdafc2503df26c409104626d23a18ca0c2783fe790d509478b117a85f1984f518 languageName: node linkType: hard @@ -1148,16 +1221,6 @@ __metadata: languageName: node linkType: hard -"@humanfs/node@npm:^0.16.5": - version: 0.16.5 - resolution: "@humanfs/node@npm:0.16.5" - dependencies: - "@humanfs/core": "npm:^0.19.0" - "@humanwhocodes/retry": "npm:^0.3.0" - checksum: 10/16e49b5f9d4a3cf8205af18f0909b8c6e00faa70a0e01bc606b413423ee20123e53028b6ca22c57725595341d62e148cd1908c297a761ee495087cc674f7b0a6 - languageName: node - linkType: hard - "@humanfs/node@npm:^0.16.6": version: 0.16.6 resolution: "@humanfs/node@npm:0.16.6" @@ -1168,17 +1231,6 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/config-array@npm:^0.13.0": - version: 0.13.0 - resolution: "@humanwhocodes/config-array@npm:0.13.0" - dependencies: - "@humanwhocodes/object-schema": "npm:^2.0.3" - debug: "npm:^4.3.1" - minimatch: "npm:^3.0.5" - checksum: 10/524df31e61a85392a2433bf5d03164e03da26c03d009f27852e7dcfdafbc4a23f17f021dacf88e0a7a9fe04ca032017945d19b57a16e2676d9114c22a53a9d11 - languageName: node - linkType: hard - "@humanwhocodes/module-importer@npm:^1.0.1": version: 1.0.1 resolution: "@humanwhocodes/module-importer@npm:1.0.1" @@ -1186,24 +1238,33 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/object-schema@npm:^2.0.3": - version: 2.0.3 - resolution: "@humanwhocodes/object-schema@npm:2.0.3" - checksum: 10/05bb99ed06c16408a45a833f03a732f59bf6184795d4efadd33238ff8699190a8c871ad1121241bb6501589a9598dc83bf25b99dcbcf41e155cdf36e35e937a3 - languageName: node - linkType: hard - -"@humanwhocodes/retry@npm:^0.3.0, @humanwhocodes/retry@npm:^0.3.1": +"@humanwhocodes/retry@npm:^0.3.0": version: 0.3.1 resolution: "@humanwhocodes/retry@npm:0.3.1" checksum: 10/eb457f699529de7f07649679ec9e0353055eebe443c2efe71c6dd950258892475a038e13c6a8c5e13ed1fb538cdd0a8794faa96b24b6ffc4c87fb1fc9f70ad7f languageName: node linkType: hard -"@humanwhocodes/retry@npm:^0.4.1": - version: 0.4.1 - resolution: "@humanwhocodes/retry@npm:0.4.1" - checksum: 10/39fafc7319e88f61befebd5e1b4f0136534ea6a9bd10d74366698187bd63544210ec5d79a87ed4d91297f1cc64c4c53d45fb0077a2abfdce212cf0d3862d5f04 +"@humanwhocodes/retry@npm:^0.4.2": + version: 0.4.3 + resolution: "@humanwhocodes/retry@npm:0.4.3" + checksum: 10/0b32cfd362bea7a30fbf80bb38dcaf77fee9c2cae477ee80b460871d03590110ac9c77d654f04ec5beaf71b6f6a89851bdf6c1e34ccdf2f686bd86fcd97d9e61 + languageName: node + linkType: hard + +"@isaacs/balanced-match@npm:^4.0.1": + version: 4.0.1 + resolution: "@isaacs/balanced-match@npm:4.0.1" + checksum: 10/102fbc6d2c0d5edf8f6dbf2b3feb21695a21bc850f11bc47c4f06aa83bd8884fde3fe9d6d797d619901d96865fdcb4569ac2a54c937992c48885c5e3d9967fe8 + languageName: node + linkType: hard + +"@isaacs/brace-expansion@npm:^5.0.0": + version: 5.0.0 + resolution: "@isaacs/brace-expansion@npm:5.0.0" + dependencies: + "@isaacs/balanced-match": "npm:^4.0.1" + checksum: 10/cf3b7f206aff12128214a1df764ac8cdbc517c110db85249b945282407e3dfc5c6e66286383a7c9391a059fc8e6e6a8ca82262fc9d2590bd615376141fbebd2d languageName: node linkType: hard @@ -1221,14 +1282,32 @@ __metadata: languageName: node linkType: hard +"@isaacs/fs-minipass@npm:^4.0.0": + version: 4.0.1 + resolution: "@isaacs/fs-minipass@npm:4.0.1" + dependencies: + minipass: "npm:^7.0.4" + checksum: 10/4412e9e6713c89c1e66d80bb0bb5a2a93192f10477623a27d08f228ba0316bb880affabc5bfe7f838f58a34d26c2c190da726e576cdfc18c49a72e89adabdcf5 + languageName: node + linkType: hard + +"@jridgewell/gen-mapping@npm:^0.3.12": + version: 0.3.12 + resolution: "@jridgewell/gen-mapping@npm:0.3.12" + dependencies: + "@jridgewell/sourcemap-codec": "npm:^1.5.0" + "@jridgewell/trace-mapping": "npm:^0.3.24" + checksum: 10/151667531566417a940d4dd0a319724979f7a90b9deb9f1617344e1183887d78c835bc1a9209c1ee10fc8a669cdd7ac8120a43a2b6bc8d0d5dd18a173059ff4b + languageName: node + linkType: hard + "@jridgewell/gen-mapping@npm:^0.3.5": - version: 0.3.5 - resolution: "@jridgewell/gen-mapping@npm:0.3.5" + version: 0.3.10 + resolution: "@jridgewell/gen-mapping@npm:0.3.10" dependencies: - "@jridgewell/set-array": "npm:^1.2.1" - "@jridgewell/sourcemap-codec": "npm:^1.4.10" + "@jridgewell/sourcemap-codec": "npm:^1.5.0" "@jridgewell/trace-mapping": "npm:^0.3.24" - checksum: 10/81587b3c4dd8e6c60252122937cea0c637486311f4ed208b52b62aae2e7a87598f63ec330e6cd0984af494bfb16d3f0d60d3b21d7e5b4aedd2602ff3fe9d32e2 + checksum: 10/f64728f0c4056f4c78e7e9b93dcef0e2e1782ef857728a9512abe62fd321d3d219125f015a6da6082412ab30526a6e117144c69fd7643127e5e27e657940e6b8 languageName: node linkType: hard @@ -1239,34 +1318,51 @@ __metadata: languageName: node linkType: hard -"@jridgewell/set-array@npm:^1.2.1": - version: 1.2.1 - resolution: "@jridgewell/set-array@npm:1.2.1" - checksum: 10/832e513a85a588f8ed4f27d1279420d8547743cc37fcad5a5a76fc74bb895b013dfe614d0eed9cb860048e6546b798f8f2652020b4b2ba0561b05caa8c654b10 +"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0": + version: 1.5.2 + resolution: "@jridgewell/sourcemap-codec@npm:1.5.2" + checksum: 10/13e77f2011e3b931079501b17a859ed932888175f1b48f19d9062506bb9b5bd306e5396d43113538b1132d421688ff41f45f0707523a15f54f2ffaa8f9dbc4b2 languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": - version: 1.5.0 - resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" - checksum: 10/4ed6123217569a1484419ac53f6ea0d9f3b57e5b57ab30d7c267bdb27792a27eb0e4b08e84a2680aa55cc2f2b411ffd6ec3db01c44fdc6dc43aca4b55f8374fd +"@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": + version: 0.3.27 + resolution: "@jridgewell/trace-mapping@npm:0.3.27" + dependencies: + "@jridgewell/resolve-uri": "npm:^3.1.0" + "@jridgewell/sourcemap-codec": "npm:^1.4.14" + checksum: 10/5eb38fe4b395b695fdd9bb751915dd299fcd96740063362573cb0188e69c3de1ff38bb5b6629995c8d65acb9fd2b1bf2e47285a60aea8d6bc354aef5328d6550 languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": - version: 0.3.25 - resolution: "@jridgewell/trace-mapping@npm:0.3.25" +"@jridgewell/trace-mapping@npm:^0.3.28": + version: 0.3.29 + resolution: "@jridgewell/trace-mapping@npm:0.3.29" dependencies: "@jridgewell/resolve-uri": "npm:^3.1.0" "@jridgewell/sourcemap-codec": "npm:^1.4.14" - checksum: 10/dced32160a44b49d531b80a4a2159dceab6b3ddf0c8e95a0deae4b0e894b172defa63d5ac52a19c2068e1fe7d31ea4ba931fbeec103233ecb4208953967120fc + checksum: 10/64e1ce0dc3a9e56b0118eaf1b2f50746fd59a36de37516cc6855b5370d5f367aa8229e1237536d738262e252c70ee229619cb04e3f3b822146ee3eb1b7ab297f languageName: node linkType: hard -"@juggle/resize-observer@npm:^3.4.0": - version: 3.4.0 - resolution: "@juggle/resize-observer@npm:3.4.0" - checksum: 10/73d1d00ee9132fb6f0aea0531940a6b93603e935590bd450fc6285a328d906102eeeb95dea77b2edac0e779031a9708aa8c82502bd298ee4dd26e7dff48f397a +"@malept/cross-spawn-promise@npm:^2.0.0": + version: 2.0.0 + resolution: "@malept/cross-spawn-promise@npm:2.0.0" + dependencies: + cross-spawn: "npm:^7.0.1" + checksum: 10/b7402d050e5ca99375b0226e4bb3fbefb0bcd86187dd4d6baac70f34b93d5c7fada9c78bd377ccd8ee74886ce911dd38f91c53479d1e40a2a38fc890150b670f + languageName: node + linkType: hard + +"@malept/flatpak-bundler@npm:^0.4.0": + version: 0.4.0 + resolution: "@malept/flatpak-bundler@npm:0.4.0" + dependencies: + debug: "npm:^4.1.1" + fs-extra: "npm:^9.0.0" + lodash: "npm:^4.17.15" + tmp-promise: "npm:^3.0.2" + checksum: 10/14e04215bcc3dc4cafe8343893ab869f69ad768272563cbb39e7d2e876dc5e03dde9f0c1b0506308a4d90d945871491b05b77c26521b2b4b38245aeed8085d3b languageName: node linkType: hard @@ -1287,7 +1383,7 @@ __metadata: languageName: node linkType: hard -"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": +"@nodelib/fs.walk@npm:^1.2.3": version: 1.2.8 resolution: "@nodelib/fs.walk@npm:1.2.8" dependencies: @@ -1297,25 +1393,45 @@ __metadata: languageName: node linkType: hard -"@npmcli/agent@npm:^2.0.0": - version: 2.2.2 - resolution: "@npmcli/agent@npm:2.2.2" +"@npmcli/agent@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/agent@npm:3.0.0" dependencies: agent-base: "npm:^7.1.0" http-proxy-agent: "npm:^7.0.0" https-proxy-agent: "npm:^7.0.1" lru-cache: "npm:^10.0.1" socks-proxy-agent: "npm:^8.0.3" - checksum: 10/96fc0036b101bae5032dc2a4cd832efb815ce9b33f9ee2f29909ee49d96a0026b3565f73c507a69eb8603f5cb32e0ae45a70cab1e2655990a4e06ae99f7f572a + checksum: 10/775c9a7eb1f88c195dfb3bce70c31d0fe2a12b28b754e25c08a3edb4bc4816bfedb7ac64ef1e730579d078ca19dacf11630e99f8f3c3e0fd7b23caa5fd6d30a6 languageName: node linkType: hard -"@npmcli/fs@npm:^3.1.0": - version: 3.1.1 - resolution: "@npmcli/fs@npm:3.1.1" +"@npmcli/fs@npm:^2.1.0": + version: 2.1.2 + resolution: "@npmcli/fs@npm:2.1.2" + dependencies: + "@gar/promisify": "npm:^1.1.3" + semver: "npm:^7.3.5" + checksum: 10/c5d4dfee80de2236e1e4ed595d17e217aada72ebd8215183fc46096fa010f583dd2aaaa486758de7cc0b89440dbc31cfe8b276269d75d47af35c716e896f78ec + languageName: node + linkType: hard + +"@npmcli/fs@npm:^4.0.0": + version: 4.0.0 + resolution: "@npmcli/fs@npm:4.0.0" dependencies: semver: "npm:^7.3.5" - checksum: 10/1e0e04087049b24b38bc0b30d87a9388ee3ca1d3fdfc347c2f77d84fcfe6a51f250bc57ba2c1f614d7e4285c6c62bf8c769bc19aa0949ea39e5b043ee023b0bd + checksum: 10/405c4490e1ff11cf299775449a3c254a366a4b1ffc79d87159b0ee7d5558ac9f6a2f8c0735fd6ff3873cef014cb1a44a5f9127cb6a1b2dbc408718cca9365b5a + languageName: node + linkType: hard + +"@npmcli/move-file@npm:^2.0.0": + version: 2.0.1 + resolution: "@npmcli/move-file@npm:2.0.1" + dependencies: + mkdirp: "npm:^1.0.4" + rimraf: "npm:^3.0.2" + checksum: 10/52dc02259d98da517fae4cb3a0a3850227bdae4939dda1980b788a7670636ca2b4a01b58df03dd5f65c1e3cb70c50fa8ce5762b582b3f499ec30ee5ce1fd9380 languageName: node linkType: hard @@ -1326,467 +1442,232 @@ __metadata: languageName: node linkType: hard -"@playground/editor@workspace:playground/editor": - version: 0.0.0-use.local - resolution: "@playground/editor@workspace:playground/editor" - dependencies: - "@eslint/js": "npm:^9.11.1" - "@flexive/core": "npm:^0.4.8" - "@types/is-hotkey": "npm:^0.1.10" - "@types/react": "npm:^18.3.10" - "@types/react-dom": "npm:^18.3.0" - "@vitejs/plugin-react": "npm:^4.3.2" - core: "workspace:^" - eslint: "npm:^9.11.1" - eslint-plugin-react-hooks: "npm:^5.1.0-rc.0" - eslint-plugin-react-refresh: "npm:^0.4.12" - globals: "npm:^15.9.0" - is-hotkey: "npm:^0.2.0" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - slate: "npm:^0.110.2" - slate-react: "npm:^0.110.2" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.7.0" - vite: "npm:^5.4.8" - languageName: unknown - linkType: soft - -"@playground/graphics@workspace:playground/graphics": - version: 0.0.0-use.local - resolution: "@playground/graphics@workspace:playground/graphics" - dependencies: - "@eslint/js": "npm:^9.11.1" - "@flexive/core": "npm:^0.5.6" - "@types/react": "npm:^18.3.10" - "@types/react-dom": "npm:^18.3.0" - "@vitejs/plugin-react": "npm:^4.3.2" - eslint: "npm:^9.11.1" - eslint-plugin-react-hooks: "npm:^5.1.0-rc.0" - eslint-plugin-react-refresh: "npm:^0.4.12" - globals: "npm:^15.9.0" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - react-router-dom: "npm:6.27" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.7.0" - vite: "npm:^5.4.8" - vite-tsconfig-paths: "npm:^5.1.4" - languageName: unknown - linkType: soft - -"@playground/static-site-generation@workspace:playground/static-site-generation": - version: 0.0.0-use.local - resolution: "@playground/static-site-generation@workspace:playground/static-site-generation" - dependencies: - "@eslint/js": "npm:^9.11.1" - "@types/express": "npm:^5.0.0" - "@types/node": "npm:^22.7.7" - "@types/react": "npm:^18.3.10" - "@types/react-dom": "npm:^18.3.0" - "@vitejs/plugin-react": "npm:^4.3.2" - eslint: "npm:^9.11.1" - eslint-plugin-react-hooks: "npm:^5.1.0-rc.0" - eslint-plugin-react-refresh: "npm:^0.4.12" - express: "npm:^4.21.1" - globals: "npm:^15.9.0" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - serve: "npm:^14.2.4" - tsx: "npm:^4.19.1" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.7.0" - vite: "npm:^5.4.8" - languageName: unknown - linkType: soft - -"@playground/tree-shaking@workspace:playground/tree-shaking": - version: 0.0.0-use.local - resolution: "@playground/tree-shaking@workspace:playground/tree-shaking" - dependencies: - "@eslint/js": "npm:^9.15.0" - "@flexive/core": "npm:^0.5.6" - "@types/lodash": "npm:^4" - "@types/lodash-es": "npm:^4" - "@types/ramda": "npm:^0.30.2" - "@types/react": "npm:^18.3.10" - "@types/react-dom": "npm:^18.3.0" - "@vitejs/plugin-react": "npm:^4.3.4" - eslint: "npm:^9.15.0" - eslint-plugin-react-hooks: "npm:^5.0.0" - eslint-plugin-react-refresh: "npm:^0.4.14" - globals: "npm:^15.12.0" - lodash: "npm:^4.17.21" - lodash-es: "npm:^4.17.21" - ramda: "npm:^0.30.1" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - typescript: "npm:~5.6.2" - typescript-eslint: "npm:^8.15.0" - vite: "npm:^6.0.1" - vite-tsconfig-paths: "npm:^5.1.4" - languageName: unknown - linkType: soft - -"@remix-run/router@npm:1.20.0": - version: 1.20.0 - resolution: "@remix-run/router@npm:1.20.0" - checksum: 10/e1d2420db94a1855b97f1784898d0ae389cf3b77129b8f419e51d4833b77ca2c92ac09e2cb558015324d64580a138fd6faa31e52fcc3ba90e3cc382a1a324d4a +"@radix-ui/colors@npm:^3.0.0": + version: 3.0.0 + resolution: "@radix-ui/colors@npm:3.0.0" + checksum: 10/bc9ffb01b3964f16482dc278cf6d86d85b73eae7cb94a77018fbd53b103b3d5ec1ecf77882cfbf8892f28c2c6057db8e19bf4d66234ed330a430373b092c5cfe languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.24.0" - conditions: os=android & cpu=arm +"@remix-run/router@npm:1.23.0": + version: 1.23.0 + resolution: "@remix-run/router@npm:1.23.0" + checksum: 10/0a9f02c26c150d8210b05927c43d2f57ee8b7f812c81abb76df1721c7367ef692e54f4044981e756ce13d0619fb3c6a9b1514524d69aea9b32bfaf565299a8c7 languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.28.1" - conditions: os=android & cpu=arm +"@rolldown/pluginutils@npm:1.0.0-beta.19": + version: 1.0.0-beta.19 + resolution: "@rolldown/pluginutils@npm:1.0.0-beta.19" + checksum: 10/3b09ebf03e0f30b48770bcd7075c3092c6be09f60e6cb320142a37ae651cfc03974186b24cd7df5bd8110561c1da9d3e8bb4ecff0f2459ca4370da3d62c6806e languageName: node linkType: hard -"@rollup/rollup-android-arm64@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-android-arm64@npm:4.24.0" - conditions: os=android & cpu=arm64 +"@rolldown/pluginutils@npm:1.0.0-beta.27": + version: 1.0.0-beta.27 + resolution: "@rolldown/pluginutils@npm:1.0.0-beta.27" + checksum: 10/4f7da788d88b33d029d5acf84c63be27c62d7c53017476f2e3026172cf94062cb399cd15194c89574578f192016bbcb1e040ce6811b3bb9ec4d4faa2ad386459 languageName: node linkType: hard -"@rollup/rollup-android-arm64@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-android-arm64@npm:4.28.1" - conditions: os=android & cpu=arm64 +"@rollup/rollup-android-arm-eabi@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.44.1" + conditions: os=android & cpu=arm languageName: node linkType: hard -"@rollup/rollup-darwin-arm64@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-darwin-arm64@npm:4.24.0" - conditions: os=darwin & cpu=arm64 +"@rollup/rollup-android-arm64@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-android-arm64@npm:4.44.1" + conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-arm64@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-darwin-arm64@npm:4.28.1" +"@rollup/rollup-darwin-arm64@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-darwin-arm64@npm:4.44.1" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-x64@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-darwin-x64@npm:4.24.0" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@rollup/rollup-darwin-x64@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-darwin-x64@npm:4.28.1" +"@rollup/rollup-darwin-x64@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-darwin-x64@npm:4.44.1" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@rollup/rollup-freebsd-arm64@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-freebsd-arm64@npm:4.28.1" +"@rollup/rollup-freebsd-arm64@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-freebsd-arm64@npm:4.44.1" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-freebsd-x64@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-freebsd-x64@npm:4.28.1" +"@rollup/rollup-freebsd-x64@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-freebsd-x64@npm:4.44.1" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@rollup/rollup-linux-arm-gnueabihf@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.24.0" +"@rollup/rollup-linux-arm-gnueabihf@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.44.1" conditions: os=linux & cpu=arm & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm-gnueabihf@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.28.1" - conditions: os=linux & cpu=arm & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm-musleabihf@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.24.0" - conditions: os=linux & cpu=arm & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm-musleabihf@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.28.1" +"@rollup/rollup-linux-arm-musleabihf@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.44.1" conditions: os=linux & cpu=arm & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-arm64-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.24.0" +"@rollup/rollup-linux-arm64-gnu@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.44.1" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm64-gnu@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.28.1" - conditions: os=linux & cpu=arm64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm64-musl@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.24.0" - conditions: os=linux & cpu=arm64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm64-musl@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.28.1" +"@rollup/rollup-linux-arm64-musl@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.44.1" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-loongarch64-gnu@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.28.1" +"@rollup/rollup-linux-loongarch64-gnu@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.44.1" conditions: os=linux & cpu=loong64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-powerpc64le-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.24.0" +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.44.1" conditions: os=linux & cpu=ppc64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-powerpc64le-gnu@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.28.1" - conditions: os=linux & cpu=ppc64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-riscv64-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.24.0" +"@rollup/rollup-linux-riscv64-gnu@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.44.1" conditions: os=linux & cpu=riscv64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-riscv64-gnu@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.28.1" - conditions: os=linux & cpu=riscv64 & libc=glibc +"@rollup/rollup-linux-riscv64-musl@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.44.1" + conditions: os=linux & cpu=riscv64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-s390x-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.24.0" +"@rollup/rollup-linux-s390x-gnu@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.44.1" conditions: os=linux & cpu=s390x & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-s390x-gnu@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.28.1" - conditions: os=linux & cpu=s390x & libc=glibc +"@rollup/rollup-linux-x64-gnu@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.44.1" + conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.24.0" - conditions: os=linux & cpu=x64 & libc=glibc +"@rollup/rollup-linux-x64-musl@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.44.1" + conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-x64-gnu@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.28.1" - conditions: os=linux & cpu=x64 & libc=glibc +"@rollup/rollup-win32-arm64-msvc@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.44.1" + conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-linux-x64-musl@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.24.0" - conditions: os=linux & cpu=x64 & libc=musl +"@rollup/rollup-win32-ia32-msvc@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.44.1" + conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@rollup/rollup-linux-x64-musl@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.28.1" - conditions: os=linux & cpu=x64 & libc=musl +"@rollup/rollup-win32-x64-msvc@npm:4.44.1": + version: 4.44.1 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.44.1" + conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@rollup/rollup-win32-arm64-msvc@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.24.0" - conditions: os=win32 & cpu=arm64 +"@sindresorhus/is@npm:^4.0.0": + version: 4.6.0 + resolution: "@sindresorhus/is@npm:4.6.0" + checksum: 10/e7f36ed72abfcd5e0355f7423a72918b9748bb1ef370a59f3e5ad8d40b728b85d63b272f65f63eec1faf417cda89dcb0aeebe94015647b6054659c1442fe5ce0 languageName: node linkType: hard -"@rollup/rollup-win32-arm64-msvc@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.28.1" - conditions: os=win32 & cpu=arm64 +"@szmarczak/http-timer@npm:^4.0.5": + version: 4.0.6 + resolution: "@szmarczak/http-timer@npm:4.0.6" + dependencies: + defer-to-connect: "npm:^2.0.0" + checksum: 10/c29df3bcec6fc3bdec2b17981d89d9c9fc9bd7d0c9bcfe92821dc533f4440bc890ccde79971838b4ceed1921d456973c4180d7175ee1d0023ad0562240a58d95 languageName: node linkType: hard -"@rollup/rollup-win32-ia32-msvc@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.24.0" - conditions: os=win32 & cpu=ia32 +"@tanstack/query-core@npm:5.87.1": + version: 5.87.1 + resolution: "@tanstack/query-core@npm:5.87.1" + checksum: 10/b4ae14c66ff51585cbede49ae20079d6e89b44429c16b9f7ed0abd995deb3fd0d3786c82d27f52a56b64d90be2acb444c166453c93962b18b5e9118c156b3cfd languageName: node linkType: hard -"@rollup/rollup-win32-ia32-msvc@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.28.1" - conditions: os=win32 & cpu=ia32 +"@tanstack/query-core@npm:5.90.2": + version: 5.90.2 + resolution: "@tanstack/query-core@npm:5.90.2" + checksum: 10/38b9ba6150cd74884f4233ab8cf617f006a819afe0cc43c0574dec11fac835f45e40a4148a83b6506bd8041ccc856bc6c975e08c0e9977b57a2554df33479910 languageName: node linkType: hard -"@rollup/rollup-win32-x64-msvc@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.24.0" - conditions: os=win32 & cpu=x64 +"@tanstack/react-query@npm:^5.87.1": + version: 5.87.1 + resolution: "@tanstack/react-query@npm:5.87.1" + dependencies: + "@tanstack/query-core": "npm:5.87.1" + peerDependencies: + react: ^18 || ^19 + checksum: 10/bb273803ae6947a6300c6de0ca5080d8125f760e06955f888583ca34ae80cd408341703567797c34c5cac8fbfaf88a8abe34ce74c92070e46cc7275484cbd840 languageName: node linkType: hard -"@rollup/rollup-win32-x64-msvc@npm:4.28.1": - version: 4.28.1 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.28.1" - conditions: os=win32 & cpu=x64 +"@tanstack/react-query@npm:^5.90.2": + version: 5.90.2 + resolution: "@tanstack/react-query@npm:5.90.2" + dependencies: + "@tanstack/query-core": "npm:5.90.2" + peerDependencies: + react: ^18 || ^19 + checksum: 10/001260539db3c9f7369817c22840175e0a32631dd7cbb50b85cf116d2aa11f632fbeb1303fe3840fe2d88cbaf699f08e98e830d4843c5fbd1ff4549ea50e4a8c languageName: node linkType: hard -"@service/app@workspace:service/app": - version: 0.0.0-use.local - resolution: "@service/app@workspace:service/app" - dependencies: - "@eslint/js": "npm:^9.11.1" - "@flexive/core": "npm:^0.5.8" - "@flexive/operator": "npm:^0.3.3" - "@types/express": "npm:^5.0.0" - "@types/node": "npm:^22.8.1" - "@types/react": "npm:^18.3.10" - "@types/react-dom": "npm:^18.3.0" - "@vitejs/plugin-react": "npm:^4.3.2" - dotenv: "npm:^16.4.7" - eslint: "npm:^9.11.1" - eslint-plugin-react-hooks: "npm:^5.1.0-rc.0" - eslint-plugin-react-refresh: "npm:^0.4.12" - express: "npm:^4.21.1" - globals: "npm:^15.9.0" - immer: "npm:^10.1.1" - ky: "npm:^1.7.2" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - react-router-dom: "npm:^6.27.0" - serve: "npm:^14.2.4" - slate: "npm:^0.110.2" - slate-react: "npm:^0.110.3" - tsx: "npm:^4.19.2" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.7.0" - viajs-core: "npm:^0.3.1" - viajs-react: "npm:^0.3.0" - vite: "npm:^5.4.8" - vite-tsconfig-paths: "npm:^5.1.2" - languageName: unknown - linkType: soft - -"@service/demo@workspace:service/demo": - version: 0.0.0-use.local - resolution: "@service/demo@workspace:service/demo" - dependencies: - "@eslint/js": "npm:^9.11.1" - "@flexive/core": "npm:^0.5.8" - "@flexive/operator": "npm:^0.3.3" - "@types/react": "npm:^18.3.10" - "@types/react-dom": "npm:^18.3.0" - "@vitejs/plugin-react": "npm:^4.3.2" - eslint: "npm:^9.11.1" - eslint-plugin-react-hooks: "npm:^5.1.0-rc.0" - eslint-plugin-react-refresh: "npm:^0.4.12" - globals: "npm:^15.9.0" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.7.0" - vite: "npm:^5.4.8" - languageName: unknown - linkType: soft - -"@source/design@workspace:source/design": - version: 0.0.0-use.local - resolution: "@source/design@workspace:source/design" - dependencies: - "@eslint/js": "npm:^9.11.1" - "@flexive/core": "npm:^0.5.8" - "@flexive/operator": "npm:^0.3.3" - "@types/node": "npm:^22.8.1" - "@types/react": "npm:^18.3.10" - "@types/react-dom": "npm:^18.3.0" - eslint: "npm:^9.11.1" - eslint-plugin-react-hooks: "npm:^5.1.0-rc.0" - eslint-plugin-react-refresh: "npm:^0.4.12" - globals: "npm:^15.9.0" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - tsx: "npm:^4.19.2" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.7.0" - vite: "npm:^5.4.8" - languageName: unknown - linkType: soft - -"@source/module@workspace:source/module": - version: 0.0.0-use.local - resolution: "@source/module@workspace:source/module" - dependencies: - "@eslint/js": "npm:^9.11.1" - "@flexive/core": "npm:^0.5.8" - "@flexive/operator": "npm:^0.3.3" - "@types/node": "npm:^22.8.1" - "@types/react": "npm:^18.3.10" - "@types/react-dom": "npm:^18.3.0" - eslint: "npm:^9.11.1" - eslint-plugin-react-hooks: "npm:^5.1.0-rc.0" - eslint-plugin-react-refresh: "npm:^0.4.12" - globals: "npm:^15.9.0" - nanoid: "npm:^5.0.8" - prism-react-renderer: "npm:^2.4.1" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - slate: "npm:^0.110.2" - slate-react: "npm:^0.110.3" - tsx: "npm:^4.19.2" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.7.0" - vite: "npm:^5.4.8" - languageName: unknown - linkType: soft +"@tootallnate/once@npm:2": + version: 2.0.0 + resolution: "@tootallnate/once@npm:2.0.0" + checksum: 10/ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 + languageName: node + linkType: hard "@types/babel__core@npm:^7.20.5": version: 7.20.5 @@ -1802,11 +1683,11 @@ __metadata: linkType: hard "@types/babel__generator@npm:*": - version: 7.6.8 - resolution: "@types/babel__generator@npm:7.6.8" + version: 7.27.0 + resolution: "@types/babel__generator@npm:7.27.0" dependencies: "@babel/types": "npm:^7.0.0" - checksum: 10/b53c215e9074c69d212402990b0ca8fa57595d09e10d94bda3130aa22b55d796e50449199867879e4ea0ee968f3a2099e009cfb21a726a53324483abbf25cd30 + checksum: 10/f572e67a9a39397664350a4437d8a7fbd34acc83ff4887a8cf08349e39f8aeb5ad2f70fb78a0a0a23a280affe3a5f4c25f50966abdce292bcf31237af1c27b1a languageName: node linkType: hard @@ -1821,489 +1702,538 @@ __metadata: linkType: hard "@types/babel__traverse@npm:*": - version: 7.20.6 - resolution: "@types/babel__traverse@npm:7.20.6" + version: 7.20.7 + resolution: "@types/babel__traverse@npm:7.20.7" dependencies: "@babel/types": "npm:^7.20.7" - checksum: 10/63d13a3789aa1e783b87a8b03d9fb2c2c90078de7782422feff1631b8c2a25db626e63a63ac5a1465d47359201c73069dacb4b52149d17c568187625da3064ae + checksum: 10/d005b58e1c26bdafc1ce564f60db0ee938393c7fc586b1197bdb71a02f7f33f72bc10ae4165776b6cafc77c4b6f2e1a164dd20bc36518c471b1131b153b4baa6 languageName: node linkType: hard -"@types/body-parser@npm:*": - version: 1.19.5 - resolution: "@types/body-parser@npm:1.19.5" +"@types/cacheable-request@npm:^6.0.1": + version: 6.0.3 + resolution: "@types/cacheable-request@npm:6.0.3" dependencies: - "@types/connect": "npm:*" + "@types/http-cache-semantics": "npm:*" + "@types/keyv": "npm:^3.1.4" "@types/node": "npm:*" - checksum: 10/1e251118c4b2f61029cc43b0dc028495f2d1957fe8ee49a707fb940f86a9bd2f9754230805598278fe99958b49e9b7e66eec8ef6a50ab5c1f6b93e1ba2aaba82 + "@types/responselike": "npm:^1.0.0" + checksum: 10/159f9fdb2a1b7175eef453ae2ced5ea04c0d2b9610cc9ccd9f9abb066d36dacb1f37acd879ace10ad7cbb649490723feb396fb7307004c9670be29636304b988 languageName: node linkType: hard -"@types/connect@npm:*": - version: 3.4.38 - resolution: "@types/connect@npm:3.4.38" +"@types/debug@npm:^4.1.6": + version: 4.1.12 + resolution: "@types/debug@npm:4.1.12" dependencies: - "@types/node": "npm:*" - checksum: 10/7eb1bc5342a9604facd57598a6c62621e244822442976c443efb84ff745246b10d06e8b309b6e80130026a396f19bf6793b7cecd7380169f369dac3bfc46fb99 + "@types/ms": "npm:*" + checksum: 10/47876a852de8240bfdaf7481357af2b88cb660d30c72e73789abf00c499d6bc7cd5e52f41c915d1b9cd8ec9fef5b05688d7b7aef17f7f272c2d04679508d1053 + languageName: node + linkType: hard + +"@types/estree@npm:1.0.8": + version: 1.0.8 + resolution: "@types/estree@npm:1.0.8" + checksum: 10/25a4c16a6752538ffde2826c2cc0c6491d90e69cd6187bef4a006dd2c3c45469f049e643d7e516c515f21484dc3d48fd5c870be158a5beb72f5baf3dc43e4099 languageName: node linkType: hard -"@types/estree@npm:1.0.6, @types/estree@npm:^1.0.6": +"@types/estree@npm:^1.0.6": version: 1.0.6 resolution: "@types/estree@npm:1.0.6" checksum: 10/9d35d475095199c23e05b431bcdd1f6fec7380612aed068b14b2a08aa70494de8a9026765a5a91b1073f636fb0368f6d8973f518a31391d519e20c59388ed88d languageName: node linkType: hard -"@types/express-serve-static-core@npm:^5.0.0": - version: 5.0.0 - resolution: "@types/express-serve-static-core@npm:5.0.0" +"@types/fs-extra@npm:9.0.13, @types/fs-extra@npm:^9.0.11": + version: 9.0.13 + resolution: "@types/fs-extra@npm:9.0.13" dependencies: "@types/node": "npm:*" - "@types/qs": "npm:*" - "@types/range-parser": "npm:*" - "@types/send": "npm:*" - checksum: 10/fc40cdeae61113d8b2335f4b0f9334a7a64388a0931f2e98f8fc9bdadd0b13b501a70da14c256ae4aa140db49bd2eff75a99a683266d561e62540784a61dc489 + checksum: 10/ac545e377248039c596ef27d9f277b813507ebdd95d05f32fe7e9c67eb1ed567dafb4ba59f5fdcb6601dd7fd396ff9ba24f8c122e89cef096cdc17987c50a7fa languageName: node linkType: hard -"@types/express@npm:^5.0.0": - version: 5.0.0 - resolution: "@types/express@npm:5.0.0" - dependencies: - "@types/body-parser": "npm:*" - "@types/express-serve-static-core": "npm:^5.0.0" - "@types/qs": "npm:*" - "@types/serve-static": "npm:*" - checksum: 10/45b199ab669caa33e6badafeebf078e277ea95042309d325a04b1ec498f33d33fd5a4ae9c8e358342367b178fe454d7323c5dfc8002bf27070b210a2c6cc11f0 +"@types/http-cache-semantics@npm:*": + version: 4.0.4 + resolution: "@types/http-cache-semantics@npm:4.0.4" + checksum: 10/a59566cff646025a5de396d6b3f44a39ab6a74f2ed8150692e0f31cc52f3661a68b04afe3166ebe0d566bd3259cb18522f46e949576d5204781cd6452b7fe0c5 languageName: node linkType: hard -"@types/http-errors@npm:*": - version: 2.0.4 - resolution: "@types/http-errors@npm:2.0.4" - checksum: 10/1f3d7c3b32c7524811a45690881736b3ef741bf9849ae03d32ad1ab7062608454b150a4e7f1351f83d26a418b2d65af9bdc06198f1c079d75578282884c4e8e3 +"@types/json-schema@npm:^7.0.15": + version: 7.0.15 + resolution: "@types/json-schema@npm:7.0.15" + checksum: 10/1a3c3e06236e4c4aab89499c428d585527ce50c24fe8259e8b3926d3df4cfbbbcf306cfc73ddfb66cbafc973116efd15967020b0f738f63e09e64c7d260519e7 languageName: node linkType: hard -"@types/is-hotkey@npm:^0.1.10": - version: 0.1.10 - resolution: "@types/is-hotkey@npm:0.1.10" - checksum: 10/9ecc49fb3822b3cfa8335132d54c6e577d0b14bb52d0bf1f817cdd19c442555b7523945e2ae72f6098e3c7f64b4777390f38afec3e4660343cfb471377e7fd82 +"@types/keyv@npm:^3.1.4": + version: 3.1.4 + resolution: "@types/keyv@npm:3.1.4" + dependencies: + "@types/node": "npm:*" + checksum: 10/e009a2bfb50e90ca9b7c6e8f648f8464067271fd99116f881073fa6fa76dc8d0133181dd65e6614d5fb1220d671d67b0124aef7d97dc02d7e342ab143a47779d languageName: node linkType: hard -"@types/json-schema@npm:^7.0.15": - version: 7.0.15 - resolution: "@types/json-schema@npm:7.0.15" - checksum: 10/1a3c3e06236e4c4aab89499c428d585527ce50c24fe8259e8b3926d3df4cfbbbcf306cfc73ddfb66cbafc973116efd15967020b0f738f63e09e64c7d260519e7 +"@types/ms@npm:*": + version: 2.1.0 + resolution: "@types/ms@npm:2.1.0" + checksum: 10/532d2ebb91937ccc4a89389715e5b47d4c66e708d15942fe6cc25add6dc37b2be058230a327dd50f43f89b8b6d5d52b74685a9e8f70516edfc9bdd6be910eff4 languageName: node linkType: hard -"@types/lodash-es@npm:^4": - version: 4.17.12 - resolution: "@types/lodash-es@npm:4.17.12" +"@types/node@npm:*": + version: 24.0.7 + resolution: "@types/node@npm:24.0.7" dependencies: - "@types/lodash": "npm:*" - checksum: 10/56b9a433348b11c31051c6fa9028540a033a08fb80b400c589d740446c19444d73b217cf1471d4036448ef686a83e8cf2a35d1fadcb3f2105f26701f94aebb07 + undici-types: "npm:~7.8.0" + checksum: 10/1df93467fcd5cf178cc381babe58f8f8a504a097fd64297241bd63fd9dbe2b750b1b4ab2bd8b8f6a2dd431d0703da7a74dee8cca5113ae2421f9a4a1ec43d9c0 languageName: node linkType: hard -"@types/lodash@npm:*, @types/lodash@npm:^4": - version: 4.17.13 - resolution: "@types/lodash@npm:4.17.13" - checksum: 10/ddb34e20810c71be2d9445bcc4b64ec25b83976738454de709854b79c7f655b03704b76235445699956d65012987720e0e429a35489de65495cdb5420202d905 +"@types/node@npm:^20.11.17": + version: 20.19.2 + resolution: "@types/node@npm:20.19.2" + dependencies: + undici-types: "npm:~6.21.0" + checksum: 10/c9ee1f7eadd32d88d8bd47ff8e98cbabba3086267c49af62895bcf7347b97892daff52865f3068c358cec8ebd5b19bdc15d075039a226e145787cfe4a513dc4c languageName: node linkType: hard -"@types/mime@npm:^1": - version: 1.3.5 - resolution: "@types/mime@npm:1.3.5" - checksum: 10/e29a5f9c4776f5229d84e525b7cd7dd960b51c30a0fb9a028c0821790b82fca9f672dab56561e2acd9e8eed51d431bde52eafdfef30f643586c4162f1aecfc78 +"@types/node@npm:^22.7.7": + version: 22.16.5 + resolution: "@types/node@npm:22.16.5" + dependencies: + undici-types: "npm:~6.21.0" + checksum: 10/ba45b5c9113cbc5edb12960fcfe7e80db2c998af5c1931264240695b27d756570d92462150b95781bd67a03aa82111cc970ab0f4504eb99213edff8bf425354e languageName: node linkType: hard -"@types/node@npm:*, @types/node@npm:^22.7.7": - version: 22.7.7 - resolution: "@types/node@npm:22.7.7" +"@types/node@npm:^24.0.15": + version: 24.0.15 + resolution: "@types/node@npm:24.0.15" dependencies: - undici-types: "npm:~6.19.2" - checksum: 10/ada6c5f850fa09621e21923d7b17c3f3b5264c3b39c0953006f4a8b0b3d4b6d77ac02e2bbf8bae1d493abf81668804624470d895dd4483875fde8382b6eb7933 + undici-types: "npm:~7.8.0" + checksum: 10/0c55b7f4b0cd4f47e43e587e54545c4f188521678328411033595a6f49f81ed54ec3729ce5025936c51250e31504a32a7f20b520ed9dd71f3ab1530f809975e9 languageName: node linkType: hard -"@types/node@npm:^22.8.1": - version: 22.8.1 - resolution: "@types/node@npm:22.8.1" +"@types/node@npm:^24.1.0": + version: 24.1.0 + resolution: "@types/node@npm:24.1.0" dependencies: - undici-types: "npm:~6.19.8" - checksum: 10/ae969e3d956dead1422c35d568ea5d48dd124a38a1a337cbd120fec6e13cc92b45c7308f91f1139fcd2337a67d4704d5614d6a2c444b1fb268f85e9f1d24c713 + undici-types: "npm:~7.8.0" + checksum: 10/02c3d91e1407a93a2363f97a245475fa0f6209d3f3e6ba9fdaabe65389e3e078f648da81b8738125dec6b6bf98c50fb928f36f4e72b8b015817bc21479a868c2 languageName: node linkType: hard -"@types/prismjs@npm:^1.26.0": - version: 1.26.5 - resolution: "@types/prismjs@npm:1.26.5" - checksum: 10/617099479db9550119d0f84272dc79d64b2cf3e0d7a17167fe740d55fdf0f155697d935409464392d164e62080c2c88d649cf4bc4fdd30a87127337536657277 +"@types/pg@npm:^8": + version: 8.15.4 + resolution: "@types/pg@npm:8.15.4" + dependencies: + "@types/node": "npm:*" + pg-protocol: "npm:*" + pg-types: "npm:^2.2.0" + checksum: 10/dd9203ae6732acad4892513fc99eb2bc699935a95b62e9fdbdcc6d1a90f63881b5fd89d4cac1729790ab3d0bb7c64130b144c65abef34e6bbed063ff43a739a6 languageName: node linkType: hard -"@types/prop-types@npm:*": - version: 15.7.13 - resolution: "@types/prop-types@npm:15.7.13" - checksum: 10/8935cad87c683c665d09a055919d617fe951cb3b2d5c00544e3a913f861a2bd8d2145b51c9aa6d2457d19f3107ab40784c40205e757232f6a80cc8b1c815513c +"@types/plist@npm:^3.0.1": + version: 3.0.5 + resolution: "@types/plist@npm:3.0.5" + dependencies: + "@types/node": "npm:*" + xmlbuilder: "npm:>=11.0.1" + checksum: 10/71417189c9bc0d0cb4595106cea7c7a8a7274f64d2e9c4dd558efd7993bcfdada58be6917189e3be7c455fe4e5557004658fd13bd12254eafed8c56e0868b59e languageName: node linkType: hard -"@types/qs@npm:*": - version: 6.9.16 - resolution: "@types/qs@npm:6.9.16" - checksum: 10/2e8918150c12735630f7ee16b770c72949274938c30306025f68aaf977227f41fe0c698ed93db1099e04916d582ac5a1faf7e3c7061c8d885d9169f59a184b6c +"@types/react-dom@npm:^19.1.6": + version: 19.1.6 + resolution: "@types/react-dom@npm:19.1.6" + peerDependencies: + "@types/react": ^19.0.0 + checksum: 10/b5b20b7f0797f34c5a11915b74dcf8b3b7a9da9fea90279975ce6f150ca5d31bb069dbb0838638a5e9e168098aa4bb4a6f61d078efa1bbb55d7f0bdfe47bb142 languageName: node linkType: hard -"@types/ramda@npm:^0.30.2": - version: 0.30.2 - resolution: "@types/ramda@npm:0.30.2" +"@types/react@npm:^19.1.8": + version: 19.1.8 + resolution: "@types/react@npm:19.1.8" dependencies: - types-ramda: "npm:^0.30.1" - checksum: 10/528e62da967adb38b7b6be3314ee11009f4e7312e4fbb9670f4556bb2f640754f08ae68ede87822ae255aba747e67296f40b37d53bfb427c58ab82f5b7a4989e + csstype: "npm:^3.0.2" + checksum: 10/a3e6fe0f60f22828ef887f30993aa147b71532d7b1219dd00d246277eb7a9ca01ec533096237fa21ca1bccb3653373b4e8e59e5ae59f9c793058384bbc1f4d5c languageName: node linkType: hard -"@types/range-parser@npm:*": - version: 1.2.7 - resolution: "@types/range-parser@npm:1.2.7" - checksum: 10/95640233b689dfbd85b8c6ee268812a732cf36d5affead89e806fe30da9a430767af8ef2cd661024fd97e19d61f3dec75af2df5e80ec3bea000019ab7028629a +"@types/responselike@npm:^1.0.0": + version: 1.0.3 + resolution: "@types/responselike@npm:1.0.3" + dependencies: + "@types/node": "npm:*" + checksum: 10/6ac4b35723429b11b117e813c7acc42c3af8b5554caaf1fc750404c1ae59f9b7376bc69b9e9e194a5a97357a597c2228b7173d317320f0360d617b6425212f58 languageName: node linkType: hard -"@types/react-dom@npm:^18.3.0": - version: 18.3.1 - resolution: "@types/react-dom@npm:18.3.1" +"@types/ttf2woff@npm:^2.0.4": + version: 2.0.4 + resolution: "@types/ttf2woff@npm:2.0.4" dependencies: - "@types/react": "npm:*" - checksum: 10/33f9ba79b26641ddf00a8699c30066b7e3573ab254e97475bf08f82fab83a6d3ce8d4ebad86afeb49bb8df3374390a9ba93125cece33badc4b3e8f7eac3c84d8 + "@types/node": "npm:*" + checksum: 10/9072ee6c6ba06efbc90b0779fb43e8711839f31be6d849a383f315bb4fa66124d0880da624cc50b6ba7dee262d0d475e7b84562bd731427fd63a1e4f9a185247 languageName: node linkType: hard -"@types/react@npm:*, @types/react@npm:^18.3.10, @types/react@npm:^18.3.3": - version: 18.3.11 - resolution: "@types/react@npm:18.3.11" - dependencies: - "@types/prop-types": "npm:*" - csstype: "npm:^3.0.2" - checksum: 10/a36f0707fdfe9fe19cbe5892bcdab0f042ecadb501ea4e1c39519943f3e74cffbd31e892d3860f5c87cf33f5f223552b246a552bed0087b95954f2cb39d5cf65 +"@types/verror@npm:^1.10.3": + version: 1.10.11 + resolution: "@types/verror@npm:1.10.11" + checksum: 10/647a8c43f1510a7ed113426bc428e4d6914da5912946d77b1f6e37937493bc288f49656e1114794f0e5841c14cc1582887cf605952e4e4e0e77e3cd825790fad languageName: node linkType: hard -"@types/send@npm:*": - version: 0.17.4 - resolution: "@types/send@npm:0.17.4" +"@types/wawoff2@npm:^1.0.2": + version: 1.0.2 + resolution: "@types/wawoff2@npm:1.0.2" dependencies: - "@types/mime": "npm:^1" "@types/node": "npm:*" - checksum: 10/28320a2aa1eb704f7d96a65272a07c0bf3ae7ed5509c2c96ea5e33238980f71deeed51d3631927a77d5250e4091b3e66bce53b42d770873282c6a20bb8b0280d + checksum: 10/1b1b5b79628790977874e0fcb8a43b362d5d477f2334114e3bc9f6cd0aa2242c3c1360b7dd47d705bf8fadc646c54d8ec82b52e9770ffcc25342d9ed437c55e0 languageName: node linkType: hard -"@types/serve-static@npm:*": - version: 1.15.7 - resolution: "@types/serve-static@npm:1.15.7" +"@types/yauzl@npm:^2.9.1": + version: 2.10.3 + resolution: "@types/yauzl@npm:2.10.3" dependencies: - "@types/http-errors": "npm:*" "@types/node": "npm:*" - "@types/send": "npm:*" - checksum: 10/c5a7171d5647f9fbd096ed1a26105759f3153ccf683824d99fee4c7eb9cde2953509621c56a070dd9fb1159e799e86d300cbe4e42245ebc5b0c1767e8ca94a67 + checksum: 10/5ee966ea7bd6b2802f31ad4281c92c4c0b6dfa593c378a2582c58541fa113bec3d70eb0696b34ad95e8e6861a884cba6c3e351285816693ed176222f840a8c08 languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:8.18.0": - version: 8.18.0 - resolution: "@typescript-eslint/eslint-plugin@npm:8.18.0" +"@typescript-eslint/eslint-plugin@npm:8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.35.0" dependencies: "@eslint-community/regexpp": "npm:^4.10.0" - "@typescript-eslint/scope-manager": "npm:8.18.0" - "@typescript-eslint/type-utils": "npm:8.18.0" - "@typescript-eslint/utils": "npm:8.18.0" - "@typescript-eslint/visitor-keys": "npm:8.18.0" + "@typescript-eslint/scope-manager": "npm:8.35.0" + "@typescript-eslint/type-utils": "npm:8.35.0" + "@typescript-eslint/utils": "npm:8.35.0" + "@typescript-eslint/visitor-keys": "npm:8.35.0" graphemer: "npm:^1.4.0" - ignore: "npm:^5.3.1" + ignore: "npm:^7.0.0" natural-compare: "npm:^1.4.0" - ts-api-utils: "npm:^1.3.0" + ts-api-utils: "npm:^2.1.0" peerDependencies: - "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 + "@typescript-eslint/parser": ^8.35.0 eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: 10/fc163212ab626b8880bcc6c166da6e1c907c1e9eac720a217e58bec64af3866dc18e990a15a7dcd9593643f390d921625a89fb235a7e126fbb0a2f52e4abf0f5 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/a87ef0ed958bfb1d2fd38f41d1628d5411136c201e1361ba2ea136a3e9ec01516abf3d4e963eee1bba60132a630814a8af06f4cc014fafd578d8b45f62771eb0 languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:8.9.0": - version: 8.9.0 - resolution: "@typescript-eslint/eslint-plugin@npm:8.9.0" +"@typescript-eslint/eslint-plugin@npm:8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.37.0" dependencies: "@eslint-community/regexpp": "npm:^4.10.0" - "@typescript-eslint/scope-manager": "npm:8.9.0" - "@typescript-eslint/type-utils": "npm:8.9.0" - "@typescript-eslint/utils": "npm:8.9.0" - "@typescript-eslint/visitor-keys": "npm:8.9.0" + "@typescript-eslint/scope-manager": "npm:8.37.0" + "@typescript-eslint/type-utils": "npm:8.37.0" + "@typescript-eslint/utils": "npm:8.37.0" + "@typescript-eslint/visitor-keys": "npm:8.37.0" graphemer: "npm:^1.4.0" - ignore: "npm:^5.3.1" + ignore: "npm:^7.0.0" natural-compare: "npm:^1.4.0" - ts-api-utils: "npm:^1.3.0" + ts-api-utils: "npm:^2.1.0" peerDependencies: - "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 + "@typescript-eslint/parser": ^8.37.0 eslint: ^8.57.0 || ^9.0.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/c1858656d7ab3d37674759c838422d8a1b7540e54a25c67c7508c38ee76594a98e8f1f269749f08700f93a7a425e0dca6eb6d031b36539c537e10a32edb4975c + typescript: ">=4.8.4 <5.9.0" + checksum: 10/b86607e225deb98cb42e73ab18a45e1c4042cc2fca6ff7fd7e14b484df8232a93c9a6b8a9493c21326d2cc7155bf119d25fecec420c4306444812f4b189666fc languageName: node linkType: hard -"@typescript-eslint/parser@npm:8.18.0": - version: 8.18.0 - resolution: "@typescript-eslint/parser@npm:8.18.0" +"@typescript-eslint/parser@npm:8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/parser@npm:8.35.0" dependencies: - "@typescript-eslint/scope-manager": "npm:8.18.0" - "@typescript-eslint/types": "npm:8.18.0" - "@typescript-eslint/typescript-estree": "npm:8.18.0" - "@typescript-eslint/visitor-keys": "npm:8.18.0" + "@typescript-eslint/scope-manager": "npm:8.35.0" + "@typescript-eslint/types": "npm:8.35.0" + "@typescript-eslint/typescript-estree": "npm:8.35.0" + "@typescript-eslint/visitor-keys": "npm:8.35.0" debug: "npm:^4.3.4" peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: 10/5f4a1c431868ee677a6a1f55197c26c5c6e528a07fd8d8dee3648697c3617343693709c9f77cba86f8bdc1738c5727f5badfd3a9745f0e0719edb77fd0c01ba3 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/bd0e406938a4b305bb409611c29bcdc01e3a63c1c47fcbf527a7e2033ae71f6de7c7f95aa4f8973dcd38f5ec26f8e2857e01f160ebc538453161735c17b644da languageName: node linkType: hard -"@typescript-eslint/parser@npm:8.9.0": - version: 8.9.0 - resolution: "@typescript-eslint/parser@npm:8.9.0" +"@typescript-eslint/parser@npm:8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/parser@npm:8.37.0" dependencies: - "@typescript-eslint/scope-manager": "npm:8.9.0" - "@typescript-eslint/types": "npm:8.9.0" - "@typescript-eslint/typescript-estree": "npm:8.9.0" - "@typescript-eslint/visitor-keys": "npm:8.9.0" + "@typescript-eslint/scope-manager": "npm:8.37.0" + "@typescript-eslint/types": "npm:8.37.0" + "@typescript-eslint/typescript-estree": "npm:8.37.0" + "@typescript-eslint/visitor-keys": "npm:8.37.0" debug: "npm:^4.3.4" peerDependencies: eslint: ^8.57.0 || ^9.0.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/6f73af7782856b292b37e43dde83c5babbbdae28da1a4fed764474a9ccbbfcce25903cedde82d6847ad53e0c1a7c2ed53f087b281e6f1408a064498169c0e2d1 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/14f139b79e30fc81bb672d31e0f5320bd8159941486898d09ffde9b9dbad1a49ff2692b27567a4332a370491428d83617cd403de2e3e6dfda81e08ae7bb72de6 + languageName: node + linkType: hard + +"@typescript-eslint/project-service@npm:8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/project-service@npm:8.35.0" + dependencies: + "@typescript-eslint/tsconfig-utils": "npm:^8.35.0" + "@typescript-eslint/types": "npm:^8.35.0" + debug: "npm:^4.3.4" + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + checksum: 10/a9419da92231aa27f75078fcffab1d02398b50fdb7d5399775a414ba02570682b4b60cdfafb544a021b0dc2372f029c4195f5ae17c50deb11c25661b2ac18a74 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:8.18.0": - version: 8.18.0 - resolution: "@typescript-eslint/scope-manager@npm:8.18.0" +"@typescript-eslint/project-service@npm:8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/project-service@npm:8.37.0" dependencies: - "@typescript-eslint/types": "npm:8.18.0" - "@typescript-eslint/visitor-keys": "npm:8.18.0" - checksum: 10/869fd569a1f98cd284001062cca501e25ef7079c761242926d3b35454da64e398391ddb9d686adb34bf7bee6446491617b52c54ba54db07ee637ad4ef024d262 + "@typescript-eslint/tsconfig-utils": "npm:^8.37.0" + "@typescript-eslint/types": "npm:^8.37.0" + debug: "npm:^4.3.4" + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + checksum: 10/2314f0f1bca32da2daac7479e3ff1714df7a60c3f47a03235ef030e029e16863d9f882ad453bcc902d439d91a5c4d4361bcda9cc76ba32661676dce5abc1c4cd + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/scope-manager@npm:8.35.0" + dependencies: + "@typescript-eslint/types": "npm:8.35.0" + "@typescript-eslint/visitor-keys": "npm:8.35.0" + checksum: 10/36082fe476cf744c016a554e5ce77e6beb7d4d9992b513382bdf7e8f7d044ffd780fefc3f698e53780ead677d0afaf93e82bade10f08933e2757750bfd273d13 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:8.9.0": - version: 8.9.0 - resolution: "@typescript-eslint/scope-manager@npm:8.9.0" +"@typescript-eslint/scope-manager@npm:8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/scope-manager@npm:8.37.0" dependencies: - "@typescript-eslint/types": "npm:8.9.0" - "@typescript-eslint/visitor-keys": "npm:8.9.0" - checksum: 10/44dfb640113e8be2f5d25034f5657a9609ee06082b817dc24116c5e1d7a708ca31e8eedcc47f7d309def2ce63be662d1d0a37a1c7bdc7345968a31d04c0a2377 + "@typescript-eslint/types": "npm:8.37.0" + "@typescript-eslint/visitor-keys": "npm:8.37.0" + checksum: 10/7618138f079bad0c354ea1bcb1374b17559f467c190f46a20fdb70ba56b627c29d87646fe80bb58cb5598670e1099daaea952e3b875bdec7d0b9b63d160424b9 + languageName: node + linkType: hard + +"@typescript-eslint/tsconfig-utils@npm:8.35.0, @typescript-eslint/tsconfig-utils@npm:^8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/tsconfig-utils@npm:8.35.0" + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + checksum: 10/4160928313ccbe8b169a009b9c1220826c7df7aab427f960c31f3b838931bc7a121ebee8040118481e4528e2e3cf1b26da047c6ac1d802ecff2ef7206026ea6b + languageName: node + linkType: hard + +"@typescript-eslint/tsconfig-utils@npm:8.37.0, @typescript-eslint/tsconfig-utils@npm:^8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/tsconfig-utils@npm:8.37.0" + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + checksum: 10/17691cc6d22c9cb39131e09d94c789bfd2fce748a144be6d0c0640340d7a07c00185613da20c9e6179697cafad92059c7fba17d27beb05b4ccb612322f152737 languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:8.18.0": - version: 8.18.0 - resolution: "@typescript-eslint/type-utils@npm:8.18.0" +"@typescript-eslint/type-utils@npm:8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/type-utils@npm:8.35.0" dependencies: - "@typescript-eslint/typescript-estree": "npm:8.18.0" - "@typescript-eslint/utils": "npm:8.18.0" + "@typescript-eslint/typescript-estree": "npm:8.35.0" + "@typescript-eslint/utils": "npm:8.35.0" debug: "npm:^4.3.4" - ts-api-utils: "npm:^1.3.0" + ts-api-utils: "npm:^2.1.0" peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: 10/d857a0b6a52aad10dfd51465b8fc667f579c4a590e7fedd372f834abd2fb438186e2ebc25b61f8a5e4a90d40ebdf614367088d73ec7fe5ac0e8c9dc47ae02258 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/796210b0f099a9382ab8a437556e2710fa481f5288e098d7c45e3c26827df762968241d8ac9542d805274e3755785b3afd1ad2018c79efce72a33515f2e5613d languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:8.9.0": - version: 8.9.0 - resolution: "@typescript-eslint/type-utils@npm:8.9.0" +"@typescript-eslint/type-utils@npm:8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/type-utils@npm:8.37.0" dependencies: - "@typescript-eslint/typescript-estree": "npm:8.9.0" - "@typescript-eslint/utils": "npm:8.9.0" + "@typescript-eslint/types": "npm:8.37.0" + "@typescript-eslint/typescript-estree": "npm:8.37.0" + "@typescript-eslint/utils": "npm:8.37.0" debug: "npm:^4.3.4" - ts-api-utils: "npm:^1.3.0" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/aaeb465ed57d140bc0d9a8b81a474eff5d1c63d99479828b4eb83a1a626dcb2b1377052a971be5b4d094d6adcf1cf8e33c41ee13369bd71aed0f9cd9f3528c8a + ts-api-utils: "npm:^2.1.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/673d388ce1f94c28aa981605e6447332a24dcd61bc3b1153bdda4007c07875670d00d82fafe08145a9479040856b8a3e32f2a92140d9126c9b7e2e63a79309a6 languageName: node linkType: hard -"@typescript-eslint/types@npm:8.18.0": - version: 8.18.0 - resolution: "@typescript-eslint/types@npm:8.18.0" - checksum: 10/6c6473c169671ca946df7c1e0e424e5296dd44d89833d5c82a0ec0fdb2c668c62f8de31c85b18754d332198f18340cf2b6f13d3b13d02770ee9d1a93a099f069 +"@typescript-eslint/types@npm:8.35.0, @typescript-eslint/types@npm:^8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/types@npm:8.35.0" + checksum: 10/34b5e6da2c59ea84cd528608fff0cc14b102fd23f5517dfee4ef38c9372861d80b5bf92445c9679674f0a4f8dc4ded5066c1bca2bc5569c47515f94568984f35 languageName: node linkType: hard -"@typescript-eslint/types@npm:8.9.0": - version: 8.9.0 - resolution: "@typescript-eslint/types@npm:8.9.0" - checksum: 10/4d087153605ec23c980f9bc807b122edefff828e0c3b52ef531f4b8e1d30078c39f95e84019370a395bf97eed0d7886cc50b8cd545c287f8a2a21b301272377a +"@typescript-eslint/types@npm:8.37.0, @typescript-eslint/types@npm:^8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/types@npm:8.37.0" + checksum: 10/ac09dee069ed011dc90ec6ece4756f763da44b2275dbb2832984f4ce41e020348a658c4beb1d9f5daa755f2ebb641908e7046ebeaa767dab0e9e38bcec192b70 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:8.18.0": - version: 8.18.0 - resolution: "@typescript-eslint/typescript-estree@npm:8.18.0" +"@typescript-eslint/typescript-estree@npm:8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.35.0" dependencies: - "@typescript-eslint/types": "npm:8.18.0" - "@typescript-eslint/visitor-keys": "npm:8.18.0" + "@typescript-eslint/project-service": "npm:8.35.0" + "@typescript-eslint/tsconfig-utils": "npm:8.35.0" + "@typescript-eslint/types": "npm:8.35.0" + "@typescript-eslint/visitor-keys": "npm:8.35.0" debug: "npm:^4.3.4" fast-glob: "npm:^3.3.2" is-glob: "npm:^4.0.3" minimatch: "npm:^9.0.4" semver: "npm:^7.6.0" - ts-api-utils: "npm:^1.3.0" + ts-api-utils: "npm:^2.1.0" peerDependencies: - typescript: ">=4.8.4 <5.8.0" - checksum: 10/8ffd54a58dcc2c1b33f55c29193656fde772946d9dea87e06084a242dad3098049ecff9758e215c9f27ed358c5c7dabcae96cf19bc824098e075500725faf2e1 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/4dff7c5a8853c8f4e30d35565c62d3ad5bf8445309bd465d94e9bca725853012bb9f58896a04207c30e10b6669511caac8c0f080ed781c93a3db81d5808195aa languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:8.9.0": - version: 8.9.0 - resolution: "@typescript-eslint/typescript-estree@npm:8.9.0" +"@typescript-eslint/typescript-estree@npm:8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.37.0" dependencies: - "@typescript-eslint/types": "npm:8.9.0" - "@typescript-eslint/visitor-keys": "npm:8.9.0" + "@typescript-eslint/project-service": "npm:8.37.0" + "@typescript-eslint/tsconfig-utils": "npm:8.37.0" + "@typescript-eslint/types": "npm:8.37.0" + "@typescript-eslint/visitor-keys": "npm:8.37.0" debug: "npm:^4.3.4" fast-glob: "npm:^3.3.2" is-glob: "npm:^4.0.3" minimatch: "npm:^9.0.4" semver: "npm:^7.6.0" - ts-api-utils: "npm:^1.3.0" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/855b433f24fad5d6791c16510d035ded31ccfd17235b45f4dcb7fa89ed57268e4bf4bf79311c5323037e6243da506b2edcb113aa51339291efb344b6d8035b1a + ts-api-utils: "npm:^2.1.0" + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + checksum: 10/b08cbfd17c4f81eaf3cb46b08b19812f68f1ce11be3d308e91a58a33c2ba91e39a6dbb47811fdbf48cc862e38358871f58e15edd7cac443f52cb76cc4b01d529 languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.18.0": - version: 8.18.0 - resolution: "@typescript-eslint/utils@npm:8.18.0" +"@typescript-eslint/utils@npm:8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/utils@npm:8.35.0" dependencies: - "@eslint-community/eslint-utils": "npm:^4.4.0" - "@typescript-eslint/scope-manager": "npm:8.18.0" - "@typescript-eslint/types": "npm:8.18.0" - "@typescript-eslint/typescript-estree": "npm:8.18.0" + "@eslint-community/eslint-utils": "npm:^4.7.0" + "@typescript-eslint/scope-manager": "npm:8.35.0" + "@typescript-eslint/types": "npm:8.35.0" + "@typescript-eslint/typescript-estree": "npm:8.35.0" peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: 10/ced2775200a4d88f9c1808f2f9a4dc43505939c4bcd5b60ca2e74bf291d6f6993789ce9d56f373c39476080a9f430e969258ee8111d0a7a9ea85da399151d27e + typescript: ">=4.8.4 <5.9.0" + checksum: 10/24b4af650a8f4d21515498c1c38624717f210d68aedc6cee6958f4e8c36504d871176800020764500f64e078dda1ce23c19bbe19f8f5f7efbe995eb1afca42f2 languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.9.0": - version: 8.9.0 - resolution: "@typescript-eslint/utils@npm:8.9.0" +"@typescript-eslint/utils@npm:8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/utils@npm:8.37.0" dependencies: - "@eslint-community/eslint-utils": "npm:^4.4.0" - "@typescript-eslint/scope-manager": "npm:8.9.0" - "@typescript-eslint/types": "npm:8.9.0" - "@typescript-eslint/typescript-estree": "npm:8.9.0" + "@eslint-community/eslint-utils": "npm:^4.7.0" + "@typescript-eslint/scope-manager": "npm:8.37.0" + "@typescript-eslint/types": "npm:8.37.0" + "@typescript-eslint/typescript-estree": "npm:8.37.0" peerDependencies: eslint: ^8.57.0 || ^9.0.0 - checksum: 10/84efd10d6aa212103615cf52211a79f1ca02dc4fbf2dbb3a8d2aa49cd19f582b04c219ee98ed1ab77a503f967d82ce56521b1663359ff3e7faaa1f8798c19697 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/705c9f5e6c8622a4a531a0854bd26fd64840e019f44f5a065a22dac5398cca6ae36ab220fefd8bc11ebce780a269a7d4c12ad079122463f59f51e9087d26743c languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:8.18.0": - version: 8.18.0 - resolution: "@typescript-eslint/visitor-keys@npm:8.18.0" +"@typescript-eslint/visitor-keys@npm:8.35.0": + version: 8.35.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.35.0" dependencies: - "@typescript-eslint/types": "npm:8.18.0" - eslint-visitor-keys: "npm:^4.2.0" - checksum: 10/6b2e1e471097ddd903dcb125ba8ff42bf4262fc4f408ca3afacf4161cff6f06b7ab4a6a7dd273e34b61a676f89a00535de7497c77d9001a10512ba3fe7d91971 + "@typescript-eslint/types": "npm:8.35.0" + eslint-visitor-keys: "npm:^4.2.1" + checksum: 10/c0acb13aac3a2be5e82844f7d2e86137347efdd04661dbf9fa69ef04a19dd2f1eb2f1eb6bfbfbaada78a46884308d2c0e0b5d0d1a094c84f2dfb670b67ac2b3b languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:8.9.0": - version: 8.9.0 - resolution: "@typescript-eslint/visitor-keys@npm:8.9.0" +"@typescript-eslint/visitor-keys@npm:8.37.0": + version: 8.37.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.37.0" dependencies: - "@typescript-eslint/types": "npm:8.9.0" - eslint-visitor-keys: "npm:^3.4.3" - checksum: 10/809097884b8c706f549d99bafa3e0958bd893b3deb190297110f2f1f9360e12064335c8f2df68f39be7d744d2032b5eb57b710c9671eb38f793877ab9364c731 + "@typescript-eslint/types": "npm:8.37.0" + eslint-visitor-keys: "npm:^4.2.1" + checksum: 10/f56a82289659af3852207c4b1107c84d9008ff3586a8896c02015e07f1ec97243bc1a73e629e0829cb93060ea2fe03c18ea5b343a4e7cbe6679587233117a2db languageName: node linkType: hard -"@ungap/structured-clone@npm:^1.2.0": - version: 1.2.0 - resolution: "@ungap/structured-clone@npm:1.2.0" - checksum: 10/c6fe89a505e513a7592e1438280db1c075764793a2397877ff1351721fe8792a966a5359769e30242b3cd023f2efb9e63ca2ca88019d73b564488cc20e3eab12 - languageName: node - linkType: hard - -"@vitejs/plugin-react@npm:^4.3.1, @vitejs/plugin-react@npm:^4.3.2": - version: 4.3.2 - resolution: "@vitejs/plugin-react@npm:4.3.2" +"@vitejs/plugin-react@npm:^4.5.2": + version: 4.6.0 + resolution: "@vitejs/plugin-react@npm:4.6.0" dependencies: - "@babel/core": "npm:^7.25.2" - "@babel/plugin-transform-react-jsx-self": "npm:^7.24.7" - "@babel/plugin-transform-react-jsx-source": "npm:^7.24.7" + "@babel/core": "npm:^7.27.4" + "@babel/plugin-transform-react-jsx-self": "npm:^7.27.1" + "@babel/plugin-transform-react-jsx-source": "npm:^7.27.1" + "@rolldown/pluginutils": "npm:1.0.0-beta.19" "@types/babel__core": "npm:^7.20.5" - react-refresh: "npm:^0.14.2" + react-refresh: "npm:^0.17.0" peerDependencies: - vite: ^4.2.0 || ^5.0.0 - checksum: 10/9ff278942d76e21f4680f0f9e4d8d3bfe12fe19701e0f07014dfbff83d772f10237114581a3ec2637c32856d0a99400a14e6cd80969f99b88b1a64227c531ddb + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0 + checksum: 10/f05479b74070bcaa7aedfc0aefcfb40f732ccd0126b30885113719ff0c471b7a09626546c0a6b9404ce66245689b11cb3103c42e59c211ea518713d73c028b02 languageName: node linkType: hard -"@vitejs/plugin-react@npm:^4.3.4": - version: 4.3.4 - resolution: "@vitejs/plugin-react@npm:4.3.4" +"@vitejs/plugin-react@npm:^4.6.0": + version: 4.7.0 + resolution: "@vitejs/plugin-react@npm:4.7.0" dependencies: - "@babel/core": "npm:^7.26.0" - "@babel/plugin-transform-react-jsx-self": "npm:^7.25.9" - "@babel/plugin-transform-react-jsx-source": "npm:^7.25.9" + "@babel/core": "npm:^7.28.0" + "@babel/plugin-transform-react-jsx-self": "npm:^7.27.1" + "@babel/plugin-transform-react-jsx-source": "npm:^7.27.1" + "@rolldown/pluginutils": "npm:1.0.0-beta.27" "@types/babel__core": "npm:^7.20.5" - react-refresh: "npm:^0.14.2" + react-refresh: "npm:^0.17.0" peerDependencies: - vite: ^4.2.0 || ^5.0.0 || ^6.0.0 - checksum: 10/3b220908ed9b7b96a380a9c53e82fb428ca1f76b798ab59d1c63765bdff24de61b4778dd3655952b7d3d922645aea2d97644503b879aba6e3fcf467605b9913d + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + checksum: 10/619a5d650ce0e8e2f37dae369b803990c6647e81ec983a00e44a734b3feeefd5a32c20fbee56d496fbc239cad6b949797dddf7c6d9f23c48100c5b2b5dc41e1f languageName: node linkType: hard -"@zeit/schemas@npm:2.36.0": - version: 2.36.0 - resolution: "@zeit/schemas@npm:2.36.0" - checksum: 10/0d6e2ecf57f0e12c2b17dbdfa2f06f88519c1241275b5b8a1679dd591ee72fe45f5d87ef6ab35e068b07554b768c824dce3e2536f29d03c77cff4259209903e0 +"@xmldom/xmldom@npm:^0.8.8": + version: 0.8.10 + resolution: "@xmldom/xmldom@npm:0.8.10" + checksum: 10/62400bc5e0e75b90650e33a5ceeb8d94829dd11f9b260962b71a784cd014ddccec3e603fe788af9c1e839fa4648d8c521ebd80d8b752878d3a40edabc9ce7ccf languageName: node linkType: hard -"abbrev@npm:^2.0.0": - version: 2.0.0 - resolution: "abbrev@npm:2.0.0" - checksum: 10/ca0a54e35bea4ece0ecb68a47b312e1a9a6f772408d5bcb9051230aaa94b0460671c5b5c9cb3240eb5b7bc94c52476550eb221f65a0bbd0145bdc9f3113a6707 +"abbrev@npm:^1.0.0": + version: 1.1.1 + resolution: "abbrev@npm:1.1.1" + checksum: 10/2d882941183c66aa665118bafdab82b7a177e9add5eb2776c33e960a4f3c89cff88a1b38aba13a456de01d0dd9d66a8bea7c903268b21ea91dd1097e1e2e8243 languageName: node linkType: hard -"accepts@npm:~1.3.5, accepts@npm:~1.3.8": - version: 1.3.8 - resolution: "accepts@npm:1.3.8" - dependencies: - mime-types: "npm:~2.1.34" - negotiator: "npm:0.6.3" - checksum: 10/67eaaa90e2917c58418e7a9b89392002d2b1ccd69bcca4799135d0c632f3b082f23f4ae4ddeedbced5aa59bcc7bdf4699c69ebed4593696c922462b7bc5744d6 +"abbrev@npm:^3.0.0": + version: 3.0.1 + resolution: "abbrev@npm:3.0.1" + checksum: 10/ebd2c149dda6f543b66ce3779ea612151bb3aa9d0824f169773ee9876f1ca5a4e0adbcccc7eed048c04da7998e1825e2aa76fcca92d9e67dea50ac2b0a58dc2e languageName: node linkType: hard @@ -2316,7 +2246,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.12.0, acorn@npm:^8.9.0": +"acorn@npm:^8.12.0": version: 8.13.0 resolution: "acorn@npm:8.13.0" bin: @@ -2325,21 +2255,37 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.14.0": - version: 8.14.0 - resolution: "acorn@npm:8.14.0" +"acorn@npm:^8.15.0": + version: 8.15.0 + resolution: "acorn@npm:8.15.0" bin: acorn: bin/acorn - checksum: 10/6df29c35556782ca9e632db461a7f97947772c6c1d5438a81f0c873a3da3a792487e83e404d1c6c25f70513e91aa18745f6eafb1fcc3a43ecd1920b21dd173d2 + checksum: 10/77f2de5051a631cf1729c090e5759148459cdb76b5f5c70f890503d629cf5052357b0ce783c0f976dd8a93c5150f59f6d18df1def3f502396a20f81282482fa4 languageName: node linkType: hard -"agent-base@npm:^7.0.2, agent-base@npm:^7.1.0, agent-base@npm:^7.1.1": - version: 7.1.1 - resolution: "agent-base@npm:7.1.1" +"agent-base@npm:6, agent-base@npm:^6.0.2": + version: 6.0.2 + resolution: "agent-base@npm:6.0.2" dependencies: - debug: "npm:^4.3.4" - checksum: 10/c478fec8f79953f118704d007a38f2a185458853f5c45579b9669372bd0e12602e88dc2ad0233077831504f7cd6fcc8251c383375bba5eaaf563b102938bda26 + debug: "npm:4" + checksum: 10/21fb903e0917e5cb16591b4d0ef6a028a54b83ac30cd1fca58dece3d4e0990512a8723f9f83130d88a41e2af8b1f7be1386fda3ea2d181bb1a62155e75e95e23 + languageName: node + linkType: hard + +"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": + version: 7.1.3 + resolution: "agent-base@npm:7.1.3" + checksum: 10/3db6d8d4651f2aa1a9e4af35b96ab11a7607af57a24f3bc721a387eaa3b5f674e901f0a648b0caefd48f3fd117c7761b79a3b55854e2aebaa96c3f32cf76af84 + languageName: node + linkType: hard + +"agentkeepalive@npm:^4.2.1": + version: 4.6.0 + resolution: "agentkeepalive@npm:4.6.0" + dependencies: + humanize-ms: "npm:^1.2.1" + checksum: 10/80c546bd88dd183376d6a29e5598f117f380b1d567feb1de184241d6ece721e2bdd38f179a1674276de01780ccae229a38c60a77317e2f5ad2f1818856445bd7 languageName: node linkType: hard @@ -2353,19 +2299,16 @@ __metadata: languageName: node linkType: hard -"ajv@npm:8.12.0": - version: 8.12.0 - resolution: "ajv@npm:8.12.0" - dependencies: - fast-deep-equal: "npm:^3.1.1" - json-schema-traverse: "npm:^1.0.0" - require-from-string: "npm:^2.0.2" - uri-js: "npm:^4.2.2" - checksum: 10/b406f3b79b5756ac53bfe2c20852471b08e122bc1ee4cde08ae4d6a800574d9cd78d60c81c69c63ff81e4da7cd0b638fafbb2303ae580d49cf1600b9059efb85 +"ajv-keywords@npm:^3.4.1": + version: 3.5.2 + resolution: "ajv-keywords@npm:3.5.2" + peerDependencies: + ajv: ^6.9.1 + checksum: 10/d57c9d5bf8849bddcbd801b79bc3d2ddc736c2adb6b93a6a365429589dd7993ddbd5d37c6025ed6a7f89c27506b80131d5345c5b1fa6a97e40cd10a96bcd228c languageName: node linkType: hard -"ajv@npm:^6.12.4": +"ajv@npm:^6.10.0, ajv@npm:^6.12.0, ajv@npm:^6.12.4": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -2377,15 +2320,6 @@ __metadata: languageName: node linkType: hard -"ansi-align@npm:^3.0.1": - version: 3.0.1 - resolution: "ansi-align@npm:3.0.1" - dependencies: - string-width: "npm:^4.1.0" - checksum: 10/4c7e8b6a10eaf18874ecee964b5db62ac86d0b9266ad4987b3a1efcb5d11a9e12c881ee40d14951833135a8966f10a3efe43f9c78286a6e632f53d85ad28b9c0 - languageName: node - linkType: hard - "ansi-regex@npm:^5.0.1": version: 5.0.1 resolution: "ansi-regex@npm:5.0.1" @@ -2400,15 +2334,6 @@ __metadata: languageName: node linkType: hard -"ansi-styles@npm:^3.2.1": - version: 3.2.1 - resolution: "ansi-styles@npm:3.2.1" - dependencies: - color-convert: "npm:^1.9.0" - checksum: 10/d85ade01c10e5dd77b6c89f34ed7531da5830d2cb5882c645f330079975b716438cd7ebb81d0d6e6b4f9c577f19ae41ab55f07f19786b02f9dfd9e0377395665 - languageName: node - linkType: hard - "ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": version: 4.3.0 resolution: "ansi-styles@npm:4.3.0" @@ -2425,17 +2350,63 @@ __metadata: languageName: node linkType: hard -"arch@npm:^2.2.0": - version: 2.2.0 - resolution: "arch@npm:2.2.0" - checksum: 10/e35dbc6d362297000ab90930069576ba165fe63cd52383efcce14bd66c1b16a91ce849e1fd239964ed029d5e0bdfc32f68e9c7331b7df6c84ddebebfdbf242f7 +"app-builder-bin@npm:5.0.0-alpha.12": + version: 5.0.0-alpha.12 + resolution: "app-builder-bin@npm:5.0.0-alpha.12" + checksum: 10/e9156e5eb0fac077f0e2f2fae25c0bd3830de2dbb43fa03c9904910db0267a87bb5388076e0ddedc5643e38ca438ec519c84192aa255381381e449b9d332fb23 + languageName: node + linkType: hard + +"app-builder-lib@npm:26.0.12": + version: 26.0.12 + resolution: "app-builder-lib@npm:26.0.12" + dependencies: + "@develar/schema-utils": "npm:~2.6.5" + "@electron/asar": "npm:3.2.18" + "@electron/fuses": "npm:^1.8.0" + "@electron/notarize": "npm:2.5.0" + "@electron/osx-sign": "npm:1.3.1" + "@electron/rebuild": "npm:3.7.0" + "@electron/universal": "npm:2.0.1" + "@malept/flatpak-bundler": "npm:^0.4.0" + "@types/fs-extra": "npm:9.0.13" + async-exit-hook: "npm:^2.0.1" + builder-util: "npm:26.0.11" + builder-util-runtime: "npm:9.3.1" + chromium-pickle-js: "npm:^0.2.0" + config-file-ts: "npm:0.2.8-rc1" + debug: "npm:^4.3.4" + dotenv: "npm:^16.4.5" + dotenv-expand: "npm:^11.0.6" + ejs: "npm:^3.1.8" + electron-publish: "npm:26.0.11" + fs-extra: "npm:^10.1.0" + hosted-git-info: "npm:^4.1.0" + is-ci: "npm:^3.0.0" + isbinaryfile: "npm:^5.0.0" + js-yaml: "npm:^4.1.0" + json5: "npm:^2.2.3" + lazy-val: "npm:^1.0.5" + minimatch: "npm:^10.0.0" + plist: "npm:3.1.0" + resedit: "npm:^1.7.0" + semver: "npm:^7.3.8" + tar: "npm:^6.1.12" + temp-file: "npm:^3.4.0" + tiny-async-pool: "npm:1.3.0" + peerDependencies: + dmg-builder: 26.0.12 + electron-builder-squirrel-windows: 26.0.12 + checksum: 10/b95a54bb2a4192b6ca7fdc29fccf97a86a68640b9b65b5d5e8a48b91f45221b9ffc35303e03c4a98f97da96d7d80a23f253319d39aebb0dd31b8cecf8ac8153f languageName: node linkType: hard -"arg@npm:5.0.2": - version: 5.0.2 - resolution: "arg@npm:5.0.2" - checksum: 10/92fe7de222054a060fd2329e92e867410b3ea260328147ee3fb7855f78efae005f4087e698d4e688a856893c56bb09951588c40f2c901cf6996cd8cd7bcfef2c +"argparse@npm:^1.0.6": + version: 1.0.10 + resolution: "argparse@npm:1.0.10" + dependencies: + sprintf-js: "npm:~1.0.2" + checksum: 10/c6a621343a553ff3779390bb5ee9c2263d6643ebcd7843227bdde6cc7adbed796eb5540ca98db19e3fd7b4714e1faa51551f8849b268bb62df27ddb15cbcd91e languageName: node linkType: hard @@ -2446,10 +2417,52 @@ __metadata: languageName: node linkType: hard -"array-flatten@npm:1.1.1": - version: 1.1.1 - resolution: "array-flatten@npm:1.1.1" - checksum: 10/e13c9d247241be82f8b4ec71d035ed7204baa82fae820d4db6948d30d3c4a9f2b3905eb2eec2b937d4aa3565200bd3a1c500480114cff649fa748747d2a50feb +"assert-plus@npm:^1.0.0": + version: 1.0.0 + resolution: "assert-plus@npm:1.0.0" + checksum: 10/f4f991ae2df849cc678b1afba52d512a7cbf0d09613ba111e72255409ff9158550c775162a47b12d015d1b82b3c273e8e25df0e4783d3ddb008a293486d00a07 + languageName: node + linkType: hard + +"astral-regex@npm:^2.0.0": + version: 2.0.0 + resolution: "astral-regex@npm:2.0.0" + checksum: 10/876231688c66400473ba505731df37ea436e574dd524520294cc3bbc54ea40334865e01fa0d074d74d036ee874ee7e62f486ea38bc421ee8e6a871c06f011766 + languageName: node + linkType: hard + +"async-exit-hook@npm:^2.0.1": + version: 2.0.1 + resolution: "async-exit-hook@npm:2.0.1" + checksum: 10/fffabbe5ef194ec8283efed48eaf8f4b7982d547de6d4cf7aadf83c8690f0f7929ad01b7cb5de99935ea8f3deb2c21fd009892d8215a43b5a2dcc55c04d42c9f + languageName: node + linkType: hard + +"async@npm:^0.9.0": + version: 0.9.2 + resolution: "async@npm:0.9.2" + checksum: 10/69b95732694464bc43da32ac26e39e5a193008a528a1d689b687bbc82355496c0270bbd9885ee8c3d0eeff794e2ac4ce93499a7bcbde5e010697d93d45254b61 + languageName: node + linkType: hard + +"async@npm:^3.2.3": + version: 3.2.6 + resolution: "async@npm:3.2.6" + checksum: 10/cb6e0561a3c01c4b56a799cc8bab6ea5fef45f069ab32500b6e19508db270ef2dffa55e5aed5865c5526e9907b1f8be61b27530823b411ffafb5e1538c86c368 + languageName: node + linkType: hard + +"asynckit@npm:^0.4.0": + version: 0.4.0 + resolution: "asynckit@npm:0.4.0" + checksum: 10/3ce727cbc78f69d6a4722517a58ee926c8c21083633b1d3fdf66fd688f6c127a53a592141bd4866f9b63240a86e9d8e974b13919450bd17fa33c2d22c4558ad8 + languageName: node + linkType: hard + +"at-least-node@npm:^1.0.0": + version: 1.0.0 + resolution: "at-least-node@npm:1.0.0" + checksum: 10/463e2f8e43384f1afb54bc68485c436d7622acec08b6fad269b421cb1d29cebb5af751426793d0961ed243146fe4dc983402f6d5a51b720b277818dbf6f2e49e languageName: node linkType: hard @@ -2460,39 +2473,41 @@ __metadata: languageName: node linkType: hard -"body-parser@npm:1.20.3": - version: 1.20.3 - resolution: "body-parser@npm:1.20.3" - dependencies: - bytes: "npm:3.1.2" - content-type: "npm:~1.0.5" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - http-errors: "npm:2.0.0" - iconv-lite: "npm:0.4.24" - on-finished: "npm:2.4.1" - qs: "npm:6.13.0" - raw-body: "npm:2.5.2" - type-is: "npm:~1.6.18" - unpipe: "npm:1.0.0" - checksum: 10/8723e3d7a672eb50854327453bed85ac48d045f4958e81e7d470c56bf111f835b97e5b73ae9f6393d0011cc9e252771f46fd281bbabc57d33d3986edf1e6aeca +"base64-js@npm:^1.3.1, base64-js@npm:^1.5.1": + version: 1.5.1 + resolution: "base64-js@npm:1.5.1" + checksum: 10/669632eb3745404c2f822a18fc3a0122d2f9a7a13f7fb8b5823ee19d1d2ff9ee5b52c53367176ea4ad093c332fd5ab4bd0ebae5a8e27917a4105a4cfc86b1005 languageName: node linkType: hard -"boxen@npm:7.0.0": - version: 7.0.0 - resolution: "boxen@npm:7.0.0" +"bl@npm:^4.1.0": + version: 4.1.0 + resolution: "bl@npm:4.1.0" dependencies: - ansi-align: "npm:^3.0.1" - camelcase: "npm:^7.0.0" - chalk: "npm:^5.0.1" - cli-boxes: "npm:^3.0.0" - string-width: "npm:^5.1.2" - type-fest: "npm:^2.13.0" - widest-line: "npm:^4.0.1" - wrap-ansi: "npm:^8.0.1" - checksum: 10/833b369a82b9fb59e9ba04ff5ce92925642b0fd3fbd31b7eb7720413c497e5a90014bfcfc2fec56d7036471c3d75866c3d8d0299d267ec5308b122e49078782c + buffer: "npm:^5.5.0" + inherits: "npm:^2.0.4" + readable-stream: "npm:^3.4.0" + checksum: 10/b7904e66ed0bdfc813c06ea6c3e35eafecb104369dbf5356d0f416af90c1546de3b74e5b63506f0629acf5e16a6f87c3798f16233dcff086e9129383aa02ab55 + languageName: node + linkType: hard + +"blog@workspace:frontend/blog": + version: 0.0.0-use.local + resolution: "blog@workspace:frontend/blog" + dependencies: + "@types/react": "npm:^19.1.8" + "@types/react-dom": "npm:^19.1.6" + "@vitejs/plugin-react": "npm:^4.5.2" + react: "npm:^19.1.0" + react-dom: "npm:^19.1.0" + vite: "npm:^7.0.0" + languageName: unknown + linkType: soft + +"boolean@npm:^3.0.1": + version: 3.2.0 + resolution: "boolean@npm:3.2.0" + checksum: 10/d28a49dcaeef7fe10cf9fdf488214d3859f07350be8f5caa0c73ec621baf20650e5da6523262e5ce9221909519d4261c16d8430a5bf307fee9ef0e170cdb29f3 languageName: node linkType: hard @@ -2525,115 +2540,185 @@ __metadata: linkType: hard "browserslist@npm:^4.24.0": - version: 4.24.0 - resolution: "browserslist@npm:4.24.0" + version: 4.25.1 + resolution: "browserslist@npm:4.25.1" dependencies: - caniuse-lite: "npm:^1.0.30001663" - electron-to-chromium: "npm:^1.5.28" - node-releases: "npm:^2.0.18" - update-browserslist-db: "npm:^1.1.0" + caniuse-lite: "npm:^1.0.30001726" + electron-to-chromium: "npm:^1.5.173" + node-releases: "npm:^2.0.19" + update-browserslist-db: "npm:^1.1.3" bin: browserslist: cli.js - checksum: 10/26c1b8ba257a0b51b102080ba9d42945af2abaa8c4cf6da21cd47b3f123fc1e81640203b293214356c2c17d9d265bb3a5ed428b6d302f383576dd6ce8fd5036c + checksum: 10/bfb5511b425886279bbe2ea44d10e340c8aea85866c9d45083c13491d049b6362e254018c0afbf56d41ceeb64f994957ea8ae98dbba74ef1e54ef901c8732987 languageName: node linkType: hard -"bytes@npm:3.0.0": - version: 3.0.0 - resolution: "bytes@npm:3.0.0" - checksum: 10/a2b386dd8188849a5325f58eef69c3b73c51801c08ffc6963eddc9be244089ba32d19347caf6d145c86f315ae1b1fc7061a32b0c1aa6379e6a719090287ed101 +"buffer-builder@npm:^0.2.0": + version: 0.2.0 + resolution: "buffer-builder@npm:0.2.0" + checksum: 10/16bd9eb8ac6630a05441bcb56522e956ae6a0724371ecc49b9a6bc10d35690489140df73573d0577e1e85c875737e560a4e2e67521fddd14714ddf4e0097d0ec languageName: node linkType: hard -"bytes@npm:3.1.2": - version: 3.1.2 - resolution: "bytes@npm:3.1.2" - checksum: 10/a10abf2ba70c784471d6b4f58778c0beeb2b5d405148e66affa91f23a9f13d07603d0a0354667310ae1d6dc141474ffd44e2a074be0f6e2254edb8fc21445388 +"buffer-crc32@npm:~0.2.3": + version: 0.2.13 + resolution: "buffer-crc32@npm:0.2.13" + checksum: 10/06252347ae6daca3453b94e4b2f1d3754a3b146a111d81c68924c22d91889a40623264e95e67955b1cb4a68cbedf317abeabb5140a9766ed248973096db5ce1c + languageName: node + linkType: hard + +"buffer-from@npm:^1.0.0": + version: 1.1.2 + resolution: "buffer-from@npm:1.1.2" + checksum: 10/0448524a562b37d4d7ed9efd91685a5b77a50672c556ea254ac9a6d30e3403a517d8981f10e565db24e8339413b43c97ca2951f10e399c6125a0d8911f5679bb languageName: node linkType: hard -"cacache@npm:^18.0.0": - version: 18.0.4 - resolution: "cacache@npm:18.0.4" +"buffer@npm:^5.1.0, buffer@npm:^5.5.0": + version: 5.7.1 + resolution: "buffer@npm:5.7.1" dependencies: - "@npmcli/fs": "npm:^3.1.0" - fs-minipass: "npm:^3.0.0" - glob: "npm:^10.2.2" - lru-cache: "npm:^10.0.1" - minipass: "npm:^7.0.3" - minipass-collect: "npm:^2.0.1" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - p-map: "npm:^4.0.0" - ssri: "npm:^10.0.0" - tar: "npm:^6.1.11" - unique-filename: "npm:^3.0.0" - checksum: 10/ca2f7b2d3003f84d362da9580b5561058ccaecd46cba661cbcff0375c90734b610520d46b472a339fd032d91597ad6ed12dde8af81571197f3c9772b5d35b104 + base64-js: "npm:^1.3.1" + ieee754: "npm:^1.1.13" + checksum: 10/997434d3c6e3b39e0be479a80288875f71cd1c07d75a3855e6f08ef848a3c966023f79534e22e415ff3a5112708ce06127277ab20e527146d55c84566405c7c6 languageName: node linkType: hard -"call-bind@npm:^1.0.7": - version: 1.0.7 - resolution: "call-bind@npm:1.0.7" +"builder-util-runtime@npm:9.3.1": + version: 9.3.1 + resolution: "builder-util-runtime@npm:9.3.1" dependencies: - es-define-property: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.4" - set-function-length: "npm:^1.2.1" - checksum: 10/cd6fe658e007af80985da5185bff7b55e12ef4c2b6f41829a26ed1eef254b1f1c12e3dfd5b2b068c6ba8b86aba62390842d81752e67dcbaec4f6f76e7113b6b7 + debug: "npm:^4.3.4" + sax: "npm:^1.2.4" + checksum: 10/062ffe21cb98bffb2e6de7e31101503b5d056aede3dd77c6560dcb215ce6960a0e84f630fc302718adbd1e8755b145264932ec7243b8791f97271beb62f28f81 languageName: node linkType: hard -"callsites@npm:^3.0.0": - version: 3.1.0 - resolution: "callsites@npm:3.1.0" - checksum: 10/072d17b6abb459c2ba96598918b55868af677154bec7e73d222ef95a8fdb9bbf7dae96a8421085cdad8cd190d86653b5b6dc55a4484f2e5b2e27d5e0c3fc15b3 +"builder-util@npm:26.0.11": + version: 26.0.11 + resolution: "builder-util@npm:26.0.11" + dependencies: + 7zip-bin: "npm:~5.2.0" + "@types/debug": "npm:^4.1.6" + app-builder-bin: "npm:5.0.0-alpha.12" + builder-util-runtime: "npm:9.3.1" + chalk: "npm:^4.1.2" + cross-spawn: "npm:^7.0.6" + debug: "npm:^4.3.4" + fs-extra: "npm:^10.1.0" + http-proxy-agent: "npm:^7.0.0" + https-proxy-agent: "npm:^7.0.0" + is-ci: "npm:^3.0.0" + js-yaml: "npm:^4.1.0" + sanitize-filename: "npm:^1.6.3" + source-map-support: "npm:^0.5.19" + stat-mode: "npm:^1.0.0" + temp-file: "npm:^3.4.0" + tiny-async-pool: "npm:1.3.0" + checksum: 10/30b3174dd9f3000bc1237f09d49dd92022ebb76867ea2aa9a393de379aed8e1f0092f87bed96dc6df8826fb30827fd3af562b822694dfbd2def341d19d049565 languageName: node linkType: hard -"camelcase@npm:^7.0.0": - version: 7.0.1 - resolution: "camelcase@npm:7.0.1" - checksum: 10/86ab8f3ebf08bcdbe605a211a242f00ed30d8bfb77dab4ebb744dd36efbc84432d1c4adb28975ba87a1b8be40a80fbd1e60e2f06565315918fa7350011a26d3d +"cac@npm:^6.7.14": + version: 6.7.14 + resolution: "cac@npm:6.7.14" + checksum: 10/002769a0fbfc51c062acd2a59df465a2a947916b02ac50b56c69ec6c018ee99ac3e7f4dd7366334ea847f1ecacf4defaa61bcd2ac283db50156ce1f1d8c8ad42 languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001663": - version: 1.0.30001669 - resolution: "caniuse-lite@npm:1.0.30001669" - checksum: 10/cd0b481bb997703cb7651e55666b4aa4e7b4ecf9784796e2393179a15e55c71a6abc6ff865c922bbd3bbfa4a4bf0530d8da13989b97ff8c7850c8a5bd4e00491 +"cacache@npm:^16.1.0": + version: 16.1.3 + resolution: "cacache@npm:16.1.3" + dependencies: + "@npmcli/fs": "npm:^2.1.0" + "@npmcli/move-file": "npm:^2.0.0" + chownr: "npm:^2.0.0" + fs-minipass: "npm:^2.1.0" + glob: "npm:^8.0.1" + infer-owner: "npm:^1.0.4" + lru-cache: "npm:^7.7.1" + minipass: "npm:^3.1.6" + minipass-collect: "npm:^1.0.2" + minipass-flush: "npm:^1.0.5" + minipass-pipeline: "npm:^1.2.4" + mkdirp: "npm:^1.0.4" + p-map: "npm:^4.0.0" + promise-inflight: "npm:^1.0.1" + rimraf: "npm:^3.0.2" + ssri: "npm:^9.0.0" + tar: "npm:^6.1.11" + unique-filename: "npm:^2.0.0" + checksum: 10/a14524d90e377ee691d63a81173b33c473f8bc66eb299c64290b58e1d41b28842397f8d6c15a01b4c57ca340afcec019ae112a45c2f67a79f76130d326472e92 languageName: node linkType: hard -"chalk-template@npm:0.4.0": - version: 0.4.0 - resolution: "chalk-template@npm:0.4.0" +"cacache@npm:^19.0.1": + version: 19.0.1 + resolution: "cacache@npm:19.0.1" dependencies: - chalk: "npm:^4.1.2" - checksum: 10/6c706802a79a7963cbce18f022b046fe86e438a67843151868852f80ea7346e975a6a9749991601e7e5d3b6a6c4852a04c53dc966a9a3d04031bd0e0ed53c819 + "@npmcli/fs": "npm:^4.0.0" + fs-minipass: "npm:^3.0.0" + glob: "npm:^10.2.2" + lru-cache: "npm:^10.0.1" + minipass: "npm:^7.0.3" + minipass-collect: "npm:^2.0.1" + minipass-flush: "npm:^1.0.5" + minipass-pipeline: "npm:^1.2.4" + p-map: "npm:^7.0.2" + ssri: "npm:^12.0.0" + tar: "npm:^7.4.3" + unique-filename: "npm:^4.0.0" + checksum: 10/ea026b27b13656330c2bbaa462a88181dcaa0435c1c2e705db89b31d9bdf7126049d6d0445ba746dca21454a0cfdf1d6f47fd39d34c8c8435296b30bc5738a13 languageName: node linkType: hard -"chalk@npm:5.0.1": - version: 5.0.1 - resolution: "chalk@npm:5.0.1" - checksum: 10/fed38a27c848ed4111411ecd7c03bc79743f0abd4c52238f2ac969be9b8e88f41b17b313165a883ad3bd7608b583fef0b440a8f814c05fe2e1e0de077631fab1 +"cacheable-lookup@npm:^5.0.3": + version: 5.0.4 + resolution: "cacheable-lookup@npm:5.0.4" + checksum: 10/618a8b3eea314060e74cb3285a6154e8343c244a34235acf91cfe626ee0705c24e3cd11e4b1a7b3900bd749ee203ae65afe13adf610c8ab173e99d4a208faf75 languageName: node linkType: hard -"chalk@npm:^2.4.2": - version: 2.4.2 - resolution: "chalk@npm:2.4.2" +"cacheable-request@npm:^7.0.2": + version: 7.0.4 + resolution: "cacheable-request@npm:7.0.4" dependencies: - ansi-styles: "npm:^3.2.1" - escape-string-regexp: "npm:^1.0.5" - supports-color: "npm:^5.3.0" - checksum: 10/3d1d103433166f6bfe82ac75724951b33769675252d8417317363ef9d54699b7c3b2d46671b772b893a8e50c3ece70c4b933c73c01e81bc60ea4df9b55afa303 + clone-response: "npm:^1.0.2" + get-stream: "npm:^5.1.0" + http-cache-semantics: "npm:^4.0.0" + keyv: "npm:^4.0.0" + lowercase-keys: "npm:^2.0.0" + normalize-url: "npm:^6.0.1" + responselike: "npm:^2.0.0" + checksum: 10/0f4f2001260ecca78b9f64fc8245e6b5a5dcde24ea53006daab71f5e0e1338095aa1512ec099c4f9895a9e5acfac9da423cb7c079e131485891e9214aca46c41 languageName: node linkType: hard -"chalk@npm:^4.0.0, chalk@npm:^4.1.2": +"call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": + version: 1.0.2 + resolution: "call-bind-apply-helpers@npm:1.0.2" + dependencies: + es-errors: "npm:^1.3.0" + function-bind: "npm:^1.1.2" + checksum: 10/00482c1f6aa7cfb30fb1dbeb13873edf81cfac7c29ed67a5957d60635a56b2a4a480f1016ddbdb3395cc37900d46037fb965043a51c5c789ffeab4fc535d18b5 + languageName: node + linkType: hard + +"callsites@npm:^3.0.0": + version: 3.1.0 + resolution: "callsites@npm:3.1.0" + checksum: 10/072d17b6abb459c2ba96598918b55868af677154bec7e73d222ef95a8fdb9bbf7dae96a8421085cdad8cd190d86653b5b6dc55a4484f2e5b2e27d5e0c3fc15b3 + languageName: node + linkType: hard + +"caniuse-lite@npm:^1.0.30001726": + version: 1.0.30001726 + resolution: "caniuse-lite@npm:1.0.30001726" + checksum: 10/04d4bd6be8e426199aace9b4d26402bbb043358b590136417b8a1b3888c43301256bff007b30276c37c3d56e3e97aa8f547d80ffb9ac3644937b2ba4a3f9b156 + languageName: node + linkType: hard + +"chalk@npm:^4.0.0, chalk@npm:^4.0.2, chalk@npm:^4.1.0, chalk@npm:^4.1.1, chalk@npm:^4.1.2": version: 4.1.2 resolution: "chalk@npm:4.1.2" dependencies: @@ -2643,13 +2728,6 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^5.0.1": - version: 5.3.0 - resolution: "chalk@npm:5.3.0" - checksum: 10/6373caaab21bd64c405bfc4bd9672b145647fc9482657b5ea1d549b3b2765054e9d3d928870cdf764fb4aad67555f5061538ff247b8310f110c5c888d92397ea - languageName: node - linkType: hard - "chownr@npm:^2.0.0": version: 2.0.0 resolution: "chownr@npm:2.0.0" @@ -2657,6 +2735,27 @@ __metadata: languageName: node linkType: hard +"chownr@npm:^3.0.0": + version: 3.0.0 + resolution: "chownr@npm:3.0.0" + checksum: 10/b63cb1f73d171d140a2ed8154ee6566c8ab775d3196b0e03a2a94b5f6a0ce7777ee5685ca56849403c8d17bd457a6540672f9a60696a6137c7a409097495b82c + languageName: node + linkType: hard + +"chromium-pickle-js@npm:^0.2.0": + version: 0.2.0 + resolution: "chromium-pickle-js@npm:0.2.0" + checksum: 10/4722e78edf21e8e21e14066fce98bce96f2244c82fcb4da5cf2811ccfc66dbb78fc1e0be94b79aed18ba33b8940bb3f3919822151d0b23e12c95574f62f7796f + languageName: node + linkType: hard + +"ci-info@npm:^3.2.0": + version: 3.9.0 + resolution: "ci-info@npm:3.9.0" + checksum: 10/75bc67902b4d1c7b435497adeb91598f6d52a3389398e44294f6601b20cfef32cf2176f7be0eb961d9e085bb333a8a5cae121cb22f81cf238ae7f58eb80e9397 + languageName: node + linkType: hard + "clean-stack@npm:^2.0.0": version: 2.2.0 resolution: "clean-stack@npm:2.2.0" @@ -2664,40 +2763,92 @@ __metadata: languageName: node linkType: hard -"cli-boxes@npm:^3.0.0": - version: 3.0.0 - resolution: "cli-boxes@npm:3.0.0" - checksum: 10/637d84419d293a9eac40a1c8c96a2859e7d98b24a1a317788e13c8f441be052fc899480c6acab3acc82eaf1bccda6b7542d7cdcf5c9c3cc39227175dc098d5b2 +"cli-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "cli-cursor@npm:3.1.0" + dependencies: + restore-cursor: "npm:^3.1.0" + checksum: 10/2692784c6cd2fd85cfdbd11f53aea73a463a6d64a77c3e098b2b4697a20443f430c220629e1ca3b195ea5ac4a97a74c2ee411f3807abf6df2b66211fec0c0a29 languageName: node linkType: hard -"clipboardy@npm:3.0.0": - version: 3.0.0 - resolution: "clipboardy@npm:3.0.0" +"cli-spinners@npm:^2.5.0": + version: 2.9.2 + resolution: "cli-spinners@npm:2.9.2" + checksum: 10/a0a863f442df35ed7294424f5491fa1756bd8d2e4ff0c8736531d886cec0ece4d85e8663b77a5afaf1d296e3cbbebff92e2e99f52bbea89b667cbe789b994794 + languageName: node + linkType: hard + +"cli-truncate@npm:^2.1.0": + version: 2.1.0 + resolution: "cli-truncate@npm:2.1.0" dependencies: - arch: "npm:^2.2.0" - execa: "npm:^5.1.1" - is-wsl: "npm:^2.2.0" - checksum: 10/c4c374082ae3f44be6078e378b546a002461d5231461be21b0ca1a6a764eec5936e2fded9542a8ac120bad91e58999666f2dd3022ae3fae09de0dd6334f943e3 + slice-ansi: "npm:^3.0.0" + string-width: "npm:^4.2.0" + checksum: 10/976f1887de067a8cd6ec830a7a8508336aebe6cec79b521d98ed13f67ef073b637f7305675b6247dd22f9e9cf045ec55fe746c7bdb288fbe8db0dfdc9fd52e55 languageName: node linkType: hard -"clsx@npm:^2.0.0": - version: 2.1.1 - resolution: "clsx@npm:2.1.1" - checksum: 10/cdfb57fa6c7649bbff98d9028c2f0de2f91c86f551179541cf784b1cfdc1562dcb951955f46d54d930a3879931a980e32a46b598acaea274728dbe068deca919 +"cliui@npm:^8.0.1": + version: 8.0.1 + resolution: "cliui@npm:8.0.1" + dependencies: + string-width: "npm:^4.2.0" + strip-ansi: "npm:^6.0.1" + wrap-ansi: "npm:^7.0.0" + checksum: 10/eaa5561aeb3135c2cddf7a3b3f562fc4238ff3b3fc666869ef2adf264be0f372136702f16add9299087fb1907c2e4ec5dbfe83bd24bce815c70a80c6c1a2e950 languageName: node linkType: hard -"color-convert@npm:^1.9.0": - version: 1.9.3 - resolution: "color-convert@npm:1.9.3" +"clone-response@npm:^1.0.2": + version: 1.0.3 + resolution: "clone-response@npm:1.0.3" dependencies: - color-name: "npm:1.1.3" - checksum: 10/ffa319025045f2973919d155f25e7c00d08836b6b33ea2d205418c59bd63a665d713c52d9737a9e0fe467fb194b40fbef1d849bae80d674568ee220a31ef3d10 + mimic-response: "npm:^1.0.0" + checksum: 10/4e671cac39b11c60aa8ba0a450657194a5d6504df51bca3fac5b3bd0145c4f8e8464898f87c8406b83232e3bc5cca555f51c1f9c8ac023969ebfbf7f6bdabb2e + languageName: node + linkType: hard + +"clone-stats@npm:^0.0.1": + version: 0.0.1 + resolution: "clone-stats@npm:0.0.1" + checksum: 10/24a47ba6a4619fdb2bc7ef1728ca06934c7ff986a93820b81da7018698de54eade10cd078b75a409563270aac17397691214b020057c7e7a9f515da13fd61e50 + languageName: node + linkType: hard + +"clone@npm:^0.2.0": + version: 0.2.0 + resolution: "clone@npm:0.2.0" + checksum: 10/6c9ccb3e9c8b8404ae05eda649a3a8223b5a627f7841c5bf52b97b4b3b52eb0a9552027daad3c16cd45c7ea3f709d633526e14e8059ca17179b1f5473f8914c4 + languageName: node + linkType: hard + +"clone@npm:^1.0.2": + version: 1.0.4 + resolution: "clone@npm:1.0.4" + checksum: 10/d06418b7335897209e77bdd430d04f882189582e67bd1f75a04565f3f07f5b3f119a9d670c943b6697d0afb100f03b866b3b8a1f91d4d02d72c4ecf2bb64b5dd languageName: node linkType: hard +"cms@workspace:backend/cms": + version: 0.0.0-use.local + resolution: "cms@workspace:backend/cms" + dependencies: + "@hono/node-server": "npm:^1.14.4" + "@types/node": "npm:^20.11.17" + "@types/pg": "npm:^8" + dotenv: "npm:^17.0.0" + drizzle-kit: "npm:^0.31.4" + drizzle-orm: "npm:^0.44.2" + hono: "npm:^4.8.3" + pg: "npm:^8.16.3" + tsx: "npm:^4.7.1" + types: "workspace:^" + typescript: "npm:^5" + zod: "npm:^3.25.67" + languageName: unknown + linkType: soft + "color-convert@npm:^2.0.1": version: 2.0.1 resolution: "color-convert@npm:2.0.1" @@ -2707,13 +2858,6 @@ __metadata: languageName: node linkType: hard -"color-name@npm:1.1.3": - version: 1.1.3 - resolution: "color-name@npm:1.1.3" - checksum: 10/09c5d3e33d2105850153b14466501f2bfb30324a2f76568a408763a3b7433b0e50e5b4ab1947868e65cb101bb7cb75029553f2c333b6d4b8138a73fcc133d69d - languageName: node - linkType: hard - "color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" @@ -2721,64 +2865,64 @@ __metadata: languageName: node linkType: hard -"compressible@npm:~2.0.16": - version: 2.0.18 - resolution: "compressible@npm:2.0.18" - dependencies: - mime-db: "npm:>= 1.43.0 < 2" - checksum: 10/58321a85b375d39230405654721353f709d0c1442129e9a17081771b816302a012471a9b8f4864c7dbe02eef7f2aaac3c614795197092262e94b409c9be108f0 +"colorjs.io@npm:^0.5.0": + version: 0.5.2 + resolution: "colorjs.io@npm:0.5.2" + checksum: 10/a6f6345865b177d19481008cb299c46ec9ff1fd206f472cd9ef69ddbca65832c81237b19fdcd24f3f9540c3e6343a22eb486cd800f5eab9815ce7c98c16a0f0e languageName: node linkType: hard -"compression@npm:1.7.4": - version: 1.7.4 - resolution: "compression@npm:1.7.4" - dependencies: - accepts: "npm:~1.3.5" - bytes: "npm:3.0.0" - compressible: "npm:~2.0.16" - debug: "npm:2.6.9" - on-headers: "npm:~1.0.2" - safe-buffer: "npm:5.1.2" - vary: "npm:~1.1.2" - checksum: 10/469cd097908fe1d3ff146596d4c24216ad25eabb565c5456660bdcb3a14c82ebc45c23ce56e19fc642746cf407093b55ab9aa1ac30b06883b27c6c736e6383c2 +"colors@npm:1.0.3": + version: 1.0.3 + resolution: "colors@npm:1.0.3" + checksum: 10/8d81835f217ffca6de6665c8dd9ed132c562d108d4ba842d638c7cb5f8127cff47cb1b54c6bbea49e22eaa7b56caee6b85278dde9c2564f8a0eaef161e028ae0 languageName: node linkType: hard -"compute-scroll-into-view@npm:^3.0.2": - version: 3.1.0 - resolution: "compute-scroll-into-view@npm:3.1.0" - checksum: 10/cc5211d49bced5ad23385da5c2eaf69b6045628581b0dcb9f4dd407bfee51bbd26d2bce426be26edf2feaf8c243706f5a7c3759827d89cc5a01a5cf7d299a5eb +"colors@npm:^1.0.3": + version: 1.4.0 + resolution: "colors@npm:1.4.0" + checksum: 10/90b2d5465159813a3983ea72ca8cff75f784824ad70f2cc2b32c233e95bcfbcda101ebc6d6766bc50f57263792629bfb4f1f8a4dfbd1d240f229fc7f69b785fc languageName: node linkType: hard -"concat-map@npm:0.0.1": - version: 0.0.1 - resolution: "concat-map@npm:0.0.1" - checksum: 10/9680699c8e2b3af0ae22592cb764acaf973f292a7b71b8a06720233011853a58e256c89216a10cbe889727532fd77f8bcd49a760cedfde271b8e006c20e079f2 +"combined-stream@npm:^1.0.8": + version: 1.0.8 + resolution: "combined-stream@npm:1.0.8" + dependencies: + delayed-stream: "npm:~1.0.0" + checksum: 10/2e969e637d05d09fa50b02d74c83a1186f6914aae89e6653b62595cc75a221464f884f55f231b8f4df7a49537fba60bdc0427acd2bf324c09a1dbb84837e36e4 languageName: node linkType: hard -"content-disposition@npm:0.5.2": - version: 0.5.2 - resolution: "content-disposition@npm:0.5.2" - checksum: 10/97c5e7c8c72a0524c5d92866ecd3da28d4596925321aa3252d7ce3122d354b099d73cc1981fec8f24848d74314089928f626af8f9d7b51c3bc625d47f11e1d90 +"commander@npm:^5.0.0": + version: 5.1.0 + resolution: "commander@npm:5.1.0" + checksum: 10/3e2ef5c003c5179250161e42ce6d48e0e69a54af970c65b7f985c70095240c260fd647453efd4c2c5a31b30ce468f373dc70f769c2f54a2c014abc4792aaca28 languageName: node linkType: hard -"content-disposition@npm:0.5.4": - version: 0.5.4 - resolution: "content-disposition@npm:0.5.4" - dependencies: - safe-buffer: "npm:5.2.1" - checksum: 10/b7f4ce176e324f19324be69b05bf6f6e411160ac94bc523b782248129eb1ef3be006f6cff431aaea5e337fe5d176ce8830b8c2a1b721626ead8933f0cbe78720 +"compare-version@npm:^0.1.2": + version: 0.1.2 + resolution: "compare-version@npm:0.1.2" + checksum: 10/0ceaf50b5f912c8eb8eeca19375e617209d200abebd771e9306510166462e6f91ad764f33f210a3058ee27c83f2f001a7a4ca32f509da2d207d0143a3438a020 languageName: node linkType: hard -"content-type@npm:~1.0.4, content-type@npm:~1.0.5": - version: 1.0.5 - resolution: "content-type@npm:1.0.5" - checksum: 10/585847d98dc7fb8035c02ae2cb76c7a9bd7b25f84c447e5ed55c45c2175e83617c8813871b4ee22f368126af6b2b167df655829007b21aa10302873ea9c62662 +"concat-map@npm:0.0.1": + version: 0.0.1 + resolution: "concat-map@npm:0.0.1" + checksum: 10/9680699c8e2b3af0ae22592cb764acaf973f292a7b71b8a06720233011853a58e256c89216a10cbe889727532fd77f8bcd49a760cedfde271b8e006c20e079f2 + languageName: node + linkType: hard + +"config-file-ts@npm:0.2.8-rc1": + version: 0.2.8-rc1 + resolution: "config-file-ts@npm:0.2.8-rc1" + dependencies: + glob: "npm:^10.3.12" + typescript: "npm:^5.4.3" + checksum: 10/30884f67de343e2fa7914246c14296c6f4ed6dfcf86c833698fb97be46bc7d8cc9897b53a559d2267e711fbd83deda05d0baeba499151353bd245bfe10f23387 languageName: node linkType: hard @@ -2789,48 +2933,37 @@ __metadata: languageName: node linkType: hard -"cookie-signature@npm:1.0.6": - version: 1.0.6 - resolution: "cookie-signature@npm:1.0.6" - checksum: 10/f4e1b0a98a27a0e6e66fd7ea4e4e9d8e038f624058371bf4499cfcd8f3980be9a121486995202ba3fca74fbed93a407d6d54d43a43f96fd28d0bd7a06761591a +"cookie@npm:^1.0.1": + version: 1.0.2 + resolution: "cookie@npm:1.0.2" + checksum: 10/f5817cdc84d8977761b12549eba29435e675e65c7fef172bc31737788cd8adc83796bf8abe6d950554e7987325ad2d9ac2971c5bd8ff0c4f81c145f82e4ab1be languageName: node linkType: hard -"cookie@npm:0.7.1": - version: 0.7.1 - resolution: "cookie@npm:0.7.1" - checksum: 10/aec6a6aa0781761bf55d60447d6be08861d381136a0fe94aa084fddd4f0300faa2b064df490c6798adfa1ebaef9e0af9b08a189c823e0811b8b313b3d9a03380 +"core-util-is@npm:1.0.2": + version: 1.0.2 + resolution: "core-util-is@npm:1.0.2" + checksum: 10/d0f7587346b44a1fe6c269267e037dd34b4787191e473c3e685f507229d88561c40eb18872fabfff02977301815d474300b7bfbd15396c13c5377393f7e87ec3 languageName: node linkType: hard -"core@workspace:^, core@workspace:core": - version: 0.0.0-use.local - resolution: "core@workspace:core" - dependencies: - "@eslint/js": "npm:^9.11.1" - eslint: "npm:^9.11.1" - globals: "npm:^15.9.0" - ky: "npm:^1.7.2" - nanoid: "npm:^5.0.8" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.7.0" - viajs-core: "npm:^0.3.1" - zod: "npm:^3.23.8" - languageName: unknown - linkType: soft +"core-util-is@npm:~1.0.0": + version: 1.0.3 + resolution: "core-util-is@npm:1.0.3" + checksum: 10/9de8597363a8e9b9952491ebe18167e3b36e7707569eed0ebf14f8bba773611376466ae34575bca8cfe3c767890c859c74056084738f09d4e4a6f902b2ad7d99 + languageName: node + linkType: hard -"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": - version: 7.0.3 - resolution: "cross-spawn@npm:7.0.3" +"crc@npm:^3.8.0": + version: 3.8.0 + resolution: "crc@npm:3.8.0" dependencies: - path-key: "npm:^3.1.0" - shebang-command: "npm:^2.0.0" - which: "npm:^2.0.1" - checksum: 10/e1a13869d2f57d974de0d9ef7acbf69dc6937db20b918525a01dacb5032129bd552d290d886d981e99f1b624cb03657084cc87bd40f115c07ecf376821c729ce + buffer: "npm:^5.1.0" + checksum: 10/3a43061e692113d60fbaf5e438c5f6aa3374fe2368244a75cc083ecee6762513bcee8583f67c2c56feea0b0c72b41b7304fbd3c1e26cfcfaec310b9a18543fa8 languageName: node linkType: hard -"cross-spawn@npm:^7.0.6": +"cross-spawn@npm:^7.0.1, cross-spawn@npm:^7.0.6": version: 7.0.6 resolution: "cross-spawn@npm:7.0.6" dependencies: @@ -2848,23 +2981,31 @@ __metadata: languageName: node linkType: hard -"dayjs@npm:^1.11.13": - version: 1.11.13 - resolution: "dayjs@npm:1.11.13" - checksum: 10/7374d63ab179b8d909a95e74790def25c8986e329ae989840bacb8b1888be116d20e1c4eee75a69ea0dfbae13172efc50ef85619d304ee7ca3c01d5878b704f5 +"dateformat@npm:1.0.11": + version: 1.0.11 + resolution: "dateformat@npm:1.0.11" + dependencies: + get-stdin: "npm:*" + meow: "npm:*" + bin: + dateformat: bin/cli.js + checksum: 10/a73f96f5fa12d6c977518a1fbd985e5bed2500b5b2955a7b0701fd3c7702e16f593f7cc4ceca2517feabaca42daf77e310e29801aedc6117e60ee158e8206379 languageName: node linkType: hard -"debug@npm:2.6.9": - version: 2.6.9 - resolution: "debug@npm:2.6.9" +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.3": + version: 4.4.1 + resolution: "debug@npm:4.4.1" dependencies: - ms: "npm:2.0.0" - checksum: 10/e07005f2b40e04f1bd14a3dd20520e9c4f25f60224cb006ce9d6781732c917964e9ec029fc7f1a151083cd929025ad5133814d4dc624a9aaf020effe4914ed14 + ms: "npm:^2.1.3" + peerDependenciesMeta: + supports-color: + optional: true + checksum: 10/8e2709b2144f03c7950f8804d01ccb3786373df01e406a0f66928e47001cf2d336cbed9ee137261d4f90d68d8679468c755e3548ed83ddacdc82b194d2468afe languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": +"debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": version: 4.3.7 resolution: "debug@npm:4.3.7" dependencies: @@ -2876,10 +3017,12 @@ __metadata: languageName: node linkType: hard -"deep-extend@npm:^0.6.0": - version: 0.6.0 - resolution: "deep-extend@npm:0.6.0" - checksum: 10/7be7e5a8d468d6b10e6a67c3de828f55001b6eb515d014f7aeb9066ce36bd5717161eb47d6a0f7bed8a9083935b465bc163ee2581c8b128d29bf61092fdf57a7 +"decompress-response@npm:^6.0.0": + version: 6.0.0 + resolution: "decompress-response@npm:6.0.0" + dependencies: + mimic-response: "npm:^3.1.0" + checksum: 10/d377cf47e02d805e283866c3f50d3d21578b779731e8c5072d6ce8c13cc31493db1c2f6784da9d1d5250822120cefa44f1deab112d5981015f2e17444b763812 languageName: node linkType: hard @@ -2897,7 +3040,23 @@ __metadata: languageName: node linkType: hard -"define-data-property@npm:^1.1.4": +"defaults@npm:^1.0.3": + version: 1.0.4 + resolution: "defaults@npm:1.0.4" + dependencies: + clone: "npm:^1.0.2" + checksum: 10/3a88b7a587fc076b84e60affad8b85245c01f60f38fc1d259e7ac1d89eb9ce6abb19e27215de46b98568dd5bc48471730b327637e6f20b0f1bc85cf00440c80a + languageName: node + linkType: hard + +"defer-to-connect@npm:^2.0.0": + version: 2.0.1 + resolution: "defer-to-connect@npm:2.0.1" + checksum: 10/8a9b50d2f25446c0bfefb55a48e90afd58f85b21bcf78e9207cd7b804354f6409032a1705c2491686e202e64fc05f147aa5aa45f9aa82627563f045937f5791b + languageName: node + linkType: hard + +"define-data-property@npm:^1.0.1": version: 1.1.4 resolution: "define-data-property@npm:1.1.4" dependencies: @@ -2908,42 +3067,293 @@ __metadata: languageName: node linkType: hard -"depd@npm:2.0.0": - version: 2.0.0 - resolution: "depd@npm:2.0.0" - checksum: 10/c0c8ff36079ce5ada64f46cc9d6fd47ebcf38241105b6e0c98f412e8ad91f084bcf906ff644cc3a4bd876ca27a62accb8b0fff72ea6ed1a414b89d8506f4a5ca +"define-properties@npm:^1.2.1": + version: 1.2.1 + resolution: "define-properties@npm:1.2.1" + dependencies: + define-data-property: "npm:^1.0.1" + has-property-descriptors: "npm:^1.0.0" + object-keys: "npm:^1.1.1" + checksum: 10/b4ccd00597dd46cb2d4a379398f5b19fca84a16f3374e2249201992f36b30f6835949a9429669ee6b41b6e837205a163eadd745e472069e70dfc10f03e5fcc12 languageName: node linkType: hard -"destroy@npm:1.2.0": - version: 1.2.0 - resolution: "destroy@npm:1.2.0" - checksum: 10/0acb300b7478a08b92d810ab229d5afe0d2f4399272045ab22affa0d99dbaf12637659411530a6fcd597a9bdac718fc94373a61a95b4651bbc7b83684a565e38 +"delayed-stream@npm:~1.0.0": + version: 1.0.0 + resolution: "delayed-stream@npm:1.0.0" + checksum: 10/46fe6e83e2cb1d85ba50bd52803c68be9bd953282fa7096f51fc29edd5d67ff84ff753c51966061e5ba7cb5e47ef6d36a91924eddb7f3f3483b1c560f77a0020 languageName: node linkType: hard -"direction@npm:^1.0.4": - version: 1.0.4 - resolution: "direction@npm:1.0.4" +"design@workspace:^, design@workspace:frontend/design": + version: 0.0.0-use.local + resolution: "design@workspace:frontend/design" + dependencies: + "@flexive/core": "npm:^0.6.0" + "@flexive/operator": "npm:^0.3.4" + "@radix-ui/colors": "npm:^3.0.0" + "@types/node": "npm:^24.1.0" + "@types/react": "npm:^19.1.8" + "@types/react-dom": "npm:^19.1.6" + "@vitejs/plugin-react": "npm:^4.6.0" + react: "npm:^19.1.0" + react-dom: "npm:^19.1.0" + react-router: "npm:^7.9.5" + sass-embedded: "npm:^1.89.2" + types: "workspace:*" + typescript: "npm:^5" + vite: "npm:^7.0.4" + languageName: unknown + linkType: soft + +"desk@workspace:frontend/desk": + version: 0.0.0-use.local + resolution: "desk@workspace:frontend/desk" + dependencies: + "@electron-toolkit/preload": "npm:^3.0.2" + "@electron-toolkit/utils": "npm:^4.0.0" + "@enun/react": "npm:^0.4.1" + "@enun/state": "npm:^0.1.1" + "@eslint/js": "npm:^9.30.1" + "@flexive/core": "npm:^0.6.0" + "@flexive/operator": "npm:^0.3.4" + "@tanstack/react-query": "npm:^5.90.2" + "@types/node": "npm:^24.0.15" + "@types/react": "npm:^19.1.8" + "@types/react-dom": "npm:^19.1.6" + "@vitejs/plugin-react": "npm:^4.6.0" + design: "workspace:^" + electron: "npm:^37.2.3" + electron-builder: "npm:26.0.12" + electron-updater: "npm:6.6.2" + electron-vite: "npm:^4.0.0" + eslint: "npm:^9.30.1" + eslint-plugin-react-hooks: "npm:^5.2.0" + eslint-plugin-react-refresh: "npm:^0.4.20" + globals: "npm:^16.3.0" + iconoir-react: "npm:^7.11.0" + ky: "npm:^1.8.2" + module: "workspace:^" + react: "npm:^19.1.0" + react-dom: "npm:^19.1.0" + react-router-dom: "npm:6.30.1" + sass-embedded: "npm:^1.89.2" + types: "workspace:^" + typescript: "npm:~5.8.3" + typescript-eslint: "npm:^8.35.1" + vite: "npm:^7.0.4" + vite-tsconfig-paths: "npm:^5.1.4" + zod: "npm:^4.0.5" + languageName: unknown + linkType: soft + +"detect-libc@npm:^2.0.1": + version: 2.0.4 + resolution: "detect-libc@npm:2.0.4" + checksum: 10/136e995f8c5ffbc515955b0175d441b967defd3d5f2268e89fa695e9c7170d8bed17993e31a34b04f0fad33d844a3a598e0fd519a8e9be3cad5f67662d96fee0 + languageName: node + linkType: hard + +"detect-node@npm:^2.0.4": + version: 2.1.0 + resolution: "detect-node@npm:2.1.0" + checksum: 10/832184ec458353e41533ac9c622f16c19f7c02d8b10c303dfd3a756f56be93e903616c0bb2d4226183c9351c15fc0b3dba41a17a2308262afabcfa3776e6ae6e + languageName: node + linkType: hard + +"dir-compare@npm:^4.2.0": + version: 4.2.0 + resolution: "dir-compare@npm:4.2.0" + dependencies: + minimatch: "npm:^3.0.5" + p-limit: "npm:^3.1.0 " + checksum: 10/e88cbe5021126f2edfe3441a4038e1d02aac95d5b9f591db543ce3d1175c337b9cf855d2f368dbc159b4b72c42f11823bf00841961ffb413fc6a6ce2794a618c + languageName: node + linkType: hard + +"dmg-builder@npm:26.0.12": + version: 26.0.12 + resolution: "dmg-builder@npm:26.0.12" + dependencies: + app-builder-lib: "npm:26.0.12" + builder-util: "npm:26.0.11" + builder-util-runtime: "npm:9.3.1" + dmg-license: "npm:^1.0.11" + fs-extra: "npm:^10.1.0" + iconv-lite: "npm:^0.6.2" + js-yaml: "npm:^4.1.0" + dependenciesMeta: + dmg-license: + optional: true + checksum: 10/b03461a30c02b3340a67e8f749a5baade9a77c942fbdf15ea1a8ee5a0245a0b79c1dc2cd7d3b1fffafdc100639d3b04e2f62ef2b0437af134ceb25f07bfb566c + languageName: node + linkType: hard + +"dmg-license@npm:^1.0.11": + version: 1.0.11 + resolution: "dmg-license@npm:1.0.11" + dependencies: + "@types/plist": "npm:^3.0.1" + "@types/verror": "npm:^1.10.3" + ajv: "npm:^6.10.0" + crc: "npm:^3.8.0" + iconv-corefoundation: "npm:^1.1.7" + plist: "npm:^3.0.4" + smart-buffer: "npm:^4.0.2" + verror: "npm:^1.10.0" bin: - direction: cli.js - checksum: 10/572ac399093d7c9f2181c96828d252922e2a962b8f31a7fc118e3f7619592c566cc2ed313baf7703f17b2be00cd3c1402550140d0c3f4f70362976376a08b095 + dmg-license: bin/dmg-license.js + conditions: os=darwin languageName: node linkType: hard -"doctrine@npm:^3.0.0": - version: 3.0.0 - resolution: "doctrine@npm:3.0.0" +"dotenv-expand@npm:^11.0.6": + version: 11.0.7 + resolution: "dotenv-expand@npm:11.0.7" dependencies: - esutils: "npm:^2.0.2" - checksum: 10/b4b28f1df5c563f7d876e7461254a4597b8cabe915abe94d7c5d1633fed263fcf9a85e8d3836591fc2d040108e822b0d32758e5ec1fe31c590dc7e08086e3e48 + dotenv: "npm:^16.4.5" + checksum: 10/1cd981e2b925e746919e9fca16fa5e953955d021b5d5fea0a4ae96dc61fcc76bc95874e7730f8ceca22f5e3df5a47eb1fc626c3f45e98019ceba54fd58521971 + languageName: node + linkType: hard + +"dotenv@npm:^16.4.5": + version: 16.6.1 + resolution: "dotenv@npm:16.6.1" + checksum: 10/1d1897144344447ffe62aa1a6d664f4cd2e0784e0aff787eeeec1940ded32f8e4b5b506d665134fc87157baa086fce07ec6383970a2b6d2e7985beaed6a4cc14 + languageName: node + linkType: hard + +"dotenv@npm:^17.0.0": + version: 17.0.0 + resolution: "dotenv@npm:17.0.0" + checksum: 10/31ef3618e19d6db7d5be3a8831147f10995b2ab18dce038588050160f780c6e0bdaece3d2b866a0138b860db1eb14f1da9e1fcf0493ee0bb7264664bac075c69 + languageName: node + linkType: hard + +"dotenv@npm:^17.2.1": + version: 17.2.1 + resolution: "dotenv@npm:17.2.1" + checksum: 10/8fde672d1cc57f176095be8c93de1c5ea100ab38f2db183b50d522323fd9a6c07235e4145da624eec27fa310bb66d061aa8cb766f99e22ebe1e4a7ae78b5e56e languageName: node linkType: hard -"dotenv@npm:^16.4.7": - version: 16.4.7 - resolution: "dotenv@npm:16.4.7" - checksum: 10/f13bfe97db88f0df4ec505eeffb8925ec51f2d56a3d0b6d916964d8b4af494e6fb1633ba5d09089b552e77ab2a25de58d70259b2c5ed45ec148221835fc99a0c +"drizzle-kit@npm:^0.31.4": + version: 0.31.4 + resolution: "drizzle-kit@npm:0.31.4" + dependencies: + "@drizzle-team/brocli": "npm:^0.10.2" + "@esbuild-kit/esm-loader": "npm:^2.5.5" + esbuild: "npm:^0.25.4" + esbuild-register: "npm:^3.5.0" + bin: + drizzle-kit: bin.cjs + checksum: 10/0e8723c1412fad58bc78d074e9b5ed2693859a6b715b935d9211aa8acf05510e7a78840cfb85c1075b1699952a5dda5609e660fcb4cbe0d686f0bbbf9bac63b6 + languageName: node + linkType: hard + +"drizzle-orm@npm:^0.44.2": + version: 0.44.2 + resolution: "drizzle-orm@npm:0.44.2" + peerDependencies: + "@aws-sdk/client-rds-data": ">=3" + "@cloudflare/workers-types": ">=4" + "@electric-sql/pglite": ">=0.2.0" + "@libsql/client": ">=0.10.0" + "@libsql/client-wasm": ">=0.10.0" + "@neondatabase/serverless": ">=0.10.0" + "@op-engineering/op-sqlite": ">=2" + "@opentelemetry/api": ^1.4.1 + "@planetscale/database": ">=1.13" + "@prisma/client": "*" + "@tidbcloud/serverless": "*" + "@types/better-sqlite3": "*" + "@types/pg": "*" + "@types/sql.js": "*" + "@upstash/redis": ">=1.34.7" + "@vercel/postgres": ">=0.8.0" + "@xata.io/client": "*" + better-sqlite3: ">=7" + bun-types: "*" + expo-sqlite: ">=14.0.0" + gel: ">=2" + knex: "*" + kysely: "*" + mysql2: ">=2" + pg: ">=8" + postgres: ">=3" + sql.js: ">=1" + sqlite3: ">=5" + peerDependenciesMeta: + "@aws-sdk/client-rds-data": + optional: true + "@cloudflare/workers-types": + optional: true + "@electric-sql/pglite": + optional: true + "@libsql/client": + optional: true + "@libsql/client-wasm": + optional: true + "@neondatabase/serverless": + optional: true + "@op-engineering/op-sqlite": + optional: true + "@opentelemetry/api": + optional: true + "@planetscale/database": + optional: true + "@prisma/client": + optional: true + "@tidbcloud/serverless": + optional: true + "@types/better-sqlite3": + optional: true + "@types/pg": + optional: true + "@types/sql.js": + optional: true + "@upstash/redis": + optional: true + "@vercel/postgres": + optional: true + "@xata.io/client": + optional: true + better-sqlite3: + optional: true + bun-types: + optional: true + expo-sqlite: + optional: true + gel: + optional: true + knex: + optional: true + kysely: + optional: true + mysql2: + optional: true + pg: + optional: true + postgres: + optional: true + prisma: + optional: true + sql.js: + optional: true + sqlite3: + optional: true + checksum: 10/75cd5351a3e94358f8cb4fc7da6ad6f7d6e78d1648f37040d8471be6b60ad8cc388094907079735d7d5e9671fe8477f9d3285d5b148a67f56dc83c18b6761aff + languageName: node + linkType: hard + +"dunder-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "dunder-proto@npm:1.0.1" + dependencies: + call-bind-apply-helpers: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + gopd: "npm:^1.2.0" + checksum: 10/5add88a3d68d42d6e6130a0cac450b7c2edbe73364bbd2fc334564418569bea97c6943a8fcd70e27130bf32afc236f30982fc4905039b703f23e9e0433c29934 languageName: node linkType: hard @@ -2954,17 +3364,109 @@ __metadata: languageName: node linkType: hard -"ee-first@npm:1.1.1": - version: 1.1.1 - resolution: "ee-first@npm:1.1.1" - checksum: 10/1b4cac778d64ce3b582a7e26b218afe07e207a0f9bfe13cc7395a6d307849cfe361e65033c3251e00c27dd060cab43014c2d6b2647676135e18b77d2d05b3f4f +"ejs@npm:^3.1.8": + version: 3.1.10 + resolution: "ejs@npm:3.1.10" + dependencies: + jake: "npm:^10.8.5" + bin: + ejs: bin/cli.js + checksum: 10/a9cb7d7cd13b7b1cd0be5c4788e44dd10d92f7285d2f65b942f33e127230c054f99a42db4d99f766d8dbc6c57e94799593ee66a14efd7c8dd70c4812bf6aa384 + languageName: node + linkType: hard + +"electron-builder@npm:26.0.12": + version: 26.0.12 + resolution: "electron-builder@npm:26.0.12" + dependencies: + app-builder-lib: "npm:26.0.12" + builder-util: "npm:26.0.11" + builder-util-runtime: "npm:9.3.1" + chalk: "npm:^4.1.2" + dmg-builder: "npm:26.0.12" + fs-extra: "npm:^10.1.0" + is-ci: "npm:^3.0.0" + lazy-val: "npm:^1.0.5" + simple-update-notifier: "npm:2.0.0" + yargs: "npm:^17.6.2" + bin: + electron-builder: cli.js + install-app-deps: install-app-deps.js + checksum: 10/c7f16d2a04b65b2507921fad61597023ff9eb0c6dbb25d5c49d54de4925e67d4b9e3ddec70a86966df9830f0051cbde4449ae0f32fea265807ffdeaca162d78c + languageName: node + linkType: hard + +"electron-publish@npm:26.0.11": + version: 26.0.11 + resolution: "electron-publish@npm:26.0.11" + dependencies: + "@types/fs-extra": "npm:^9.0.11" + builder-util: "npm:26.0.11" + builder-util-runtime: "npm:9.3.1" + chalk: "npm:^4.1.2" + form-data: "npm:^4.0.0" + fs-extra: "npm:^10.1.0" + lazy-val: "npm:^1.0.5" + mime: "npm:^2.5.2" + checksum: 10/8eb1dfdb8fca2bcef297ac9ffa77e273d0d8e6c59f253549444bf0105b9232cc4a25b633320212edbbe27e04585dccbb2d4675d98d2e8af9a44cb9b6b09b9419 + languageName: node + linkType: hard + +"electron-to-chromium@npm:^1.5.173": + version: 1.5.177 + resolution: "electron-to-chromium@npm:1.5.177" + checksum: 10/86f740f3d0fc10cbc056496f8673ced2aea8db54cc122a87d90ed81127eebb4e9618a032bbf5edabab4ef897bc4d6a09a54512448c671308f239a946751ee421 + languageName: node + linkType: hard + +"electron-updater@npm:6.6.2": + version: 6.6.2 + resolution: "electron-updater@npm:6.6.2" + dependencies: + builder-util-runtime: "npm:9.3.1" + fs-extra: "npm:^10.1.0" + js-yaml: "npm:^4.1.0" + lazy-val: "npm:^1.0.5" + lodash.escaperegexp: "npm:^4.1.2" + lodash.isequal: "npm:^4.5.0" + semver: "npm:^7.6.3" + tiny-typed-emitter: "npm:^2.1.0" + checksum: 10/9524a9ee873a582310f23dc406863dbb1525895631b8c8bad708ad2f90e7c5ac11ff8f55b741c342188f7811a20a7c1c43411351c4ed3abe7379efdebc479c0b + languageName: node + linkType: hard + +"electron-vite@npm:^4.0.0": + version: 4.0.0 + resolution: "electron-vite@npm:4.0.0" + dependencies: + "@babel/core": "npm:^7.27.7" + "@babel/plugin-transform-arrow-functions": "npm:^7.27.1" + cac: "npm:^6.7.14" + esbuild: "npm:^0.25.5" + magic-string: "npm:^0.30.17" + picocolors: "npm:^1.1.1" + peerDependencies: + "@swc/core": ^1.0.0 + vite: ^5.0.0 || ^6.0.0 || ^7.0.0 + peerDependenciesMeta: + "@swc/core": + optional: true + bin: + electron-vite: bin/electron-vite.js + checksum: 10/089e12b37b605a8c8b9742cf74cf3776bb6548168791a2c0998e776c28d432b83420733281d8951912fc8f72a86dcaaa36a42a8227552d0718f096dcd11b0350 languageName: node linkType: hard -"electron-to-chromium@npm:^1.5.28": - version: 1.5.40 - resolution: "electron-to-chromium@npm:1.5.40" - checksum: 10/9fb137e4db852f28d6e2342777f2328f0d198c9ce89b33e95b927357d3347e20d5fb7e824f7055b19cc1780be2f08ed5ce82c22d79708206ca493d09d4afeed8 +"electron@npm:^37.2.3": + version: 37.2.3 + resolution: "electron@npm:37.2.3" + dependencies: + "@electron/get": "npm:^2.0.0" + "@types/node": "npm:^22.7.7" + extract-zip: "npm:^2.0.1" + bin: + electron: cli.js + checksum: 10/6568b04c0c2e1d5e92bfe4b8e0f09a5e7992fe3ad849a12894659e4f11a30dc06b8294ebc923e218baf561f6e5fb308f76f2c3868c4a8907b6c6aeb65b4745db languageName: node linkType: hard @@ -2982,20 +3484,6 @@ __metadata: languageName: node linkType: hard -"encodeurl@npm:~1.0.2": - version: 1.0.2 - resolution: "encodeurl@npm:1.0.2" - checksum: 10/e50e3d508cdd9c4565ba72d2012e65038e5d71bdc9198cb125beb6237b5b1ade6c0d343998da9e170fb2eae52c1bed37d4d6d98a46ea423a0cddbed5ac3f780c - languageName: node - linkType: hard - -"encodeurl@npm:~2.0.0": - version: 2.0.0 - resolution: "encodeurl@npm:2.0.0" - checksum: 10/abf5cd51b78082cf8af7be6785813c33b6df2068ce5191a40ca8b1afe6a86f9230af9a9ce694a5ce4665955e5c1120871826df9c128a642e09c58d592e2807fe - languageName: node - linkType: hard - "encoding@npm:^0.1.13": version: 0.1.13 resolution: "encoding@npm:0.1.13" @@ -3005,6 +3493,15 @@ __metadata: languageName: node linkType: hard +"end-of-stream@npm:^1.1.0": + version: 1.4.5 + resolution: "end-of-stream@npm:1.4.5" + dependencies: + once: "npm:^1.4.0" + checksum: 10/1e0cfa6e7f49887544e03314f9dfc56a8cb6dde910cbb445983ecc2ff426fc05946df9d75d8a21a3a64f2cecfe1bf88f773952029f46756b2ed64a24e95b1fb8 + languageName: node + linkType: hard + "env-paths@npm:^2.2.0": version: 2.2.1 resolution: "env-paths@npm:2.2.1" @@ -3019,12 +3516,10 @@ __metadata: languageName: node linkType: hard -"es-define-property@npm:^1.0.0": - version: 1.0.0 - resolution: "es-define-property@npm:1.0.0" - dependencies: - get-intrinsic: "npm:^1.2.4" - checksum: 10/f66ece0a887b6dca71848fa71f70461357c0e4e7249696f81bad0a1f347eed7b31262af4a29f5d726dc026426f085483b6b90301855e647aa8e21936f07293c6 +"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": + version: 1.0.1 + resolution: "es-define-property@npm:1.0.1" + checksum: 10/f8dc9e660d90919f11084db0a893128f3592b781ce967e4fccfb8f3106cb83e400a4032c559184ec52ee1dbd4b01e7776c7cd0b3327b1961b1a4a7008920fe78 languageName: node linkType: hard @@ -3035,33 +3530,74 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.21.3": - version: 0.21.5 - resolution: "esbuild@npm:0.21.5" - dependencies: - "@esbuild/aix-ppc64": "npm:0.21.5" - "@esbuild/android-arm": "npm:0.21.5" - "@esbuild/android-arm64": "npm:0.21.5" - "@esbuild/android-x64": "npm:0.21.5" - "@esbuild/darwin-arm64": "npm:0.21.5" - "@esbuild/darwin-x64": "npm:0.21.5" - "@esbuild/freebsd-arm64": "npm:0.21.5" - "@esbuild/freebsd-x64": "npm:0.21.5" - "@esbuild/linux-arm": "npm:0.21.5" - "@esbuild/linux-arm64": "npm:0.21.5" - "@esbuild/linux-ia32": "npm:0.21.5" - "@esbuild/linux-loong64": "npm:0.21.5" - "@esbuild/linux-mips64el": "npm:0.21.5" - "@esbuild/linux-ppc64": "npm:0.21.5" - "@esbuild/linux-riscv64": "npm:0.21.5" - "@esbuild/linux-s390x": "npm:0.21.5" - "@esbuild/linux-x64": "npm:0.21.5" - "@esbuild/netbsd-x64": "npm:0.21.5" - "@esbuild/openbsd-x64": "npm:0.21.5" - "@esbuild/sunos-x64": "npm:0.21.5" - "@esbuild/win32-arm64": "npm:0.21.5" - "@esbuild/win32-ia32": "npm:0.21.5" - "@esbuild/win32-x64": "npm:0.21.5" +"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1": + version: 1.1.1 + resolution: "es-object-atoms@npm:1.1.1" + dependencies: + es-errors: "npm:^1.3.0" + checksum: 10/54fe77de288451dae51c37bfbfe3ec86732dc3778f98f3eb3bdb4bf48063b2c0b8f9c93542656986149d08aa5be3204286e2276053d19582b76753f1a2728867 + languageName: node + linkType: hard + +"es-set-tostringtag@npm:^2.1.0": + version: 2.1.0 + resolution: "es-set-tostringtag@npm:2.1.0" + dependencies: + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.6" + has-tostringtag: "npm:^1.0.2" + hasown: "npm:^2.0.2" + checksum: 10/86814bf8afbcd8966653f731415888019d4bc4aca6b6c354132a7a75bb87566751e320369654a101d23a91c87a85c79b178bcf40332839bd347aff437c4fb65f + languageName: node + linkType: hard + +"es6-error@npm:^4.1.1": + version: 4.1.1 + resolution: "es6-error@npm:4.1.1" + checksum: 10/48483c25701dc5a6376f39bbe2eaf5da0b505607ec5a98cd3ade472c1939242156660636e2e508b33211e48e88b132d245341595c067bd4a95ac79fa7134da06 + languageName: node + linkType: hard + +"esbuild-register@npm:^3.5.0": + version: 3.6.0 + resolution: "esbuild-register@npm:3.6.0" + dependencies: + debug: "npm:^4.3.4" + peerDependencies: + esbuild: ">=0.12 <1" + checksum: 10/4ae1a016e3dad5b53c3d68cf07e31d8c1cec1a0b584038ece726097ac80bd33ab48fb224c766c9b341c04793837e652461eaca9327a116e7564f553b61ccca71 + languageName: node + linkType: hard + +"esbuild@npm:^0.25.0, esbuild@npm:^0.25.4, esbuild@npm:~0.25.0": + version: 0.25.5 + resolution: "esbuild@npm:0.25.5" + dependencies: + "@esbuild/aix-ppc64": "npm:0.25.5" + "@esbuild/android-arm": "npm:0.25.5" + "@esbuild/android-arm64": "npm:0.25.5" + "@esbuild/android-x64": "npm:0.25.5" + "@esbuild/darwin-arm64": "npm:0.25.5" + "@esbuild/darwin-x64": "npm:0.25.5" + "@esbuild/freebsd-arm64": "npm:0.25.5" + "@esbuild/freebsd-x64": "npm:0.25.5" + "@esbuild/linux-arm": "npm:0.25.5" + "@esbuild/linux-arm64": "npm:0.25.5" + "@esbuild/linux-ia32": "npm:0.25.5" + "@esbuild/linux-loong64": "npm:0.25.5" + "@esbuild/linux-mips64el": "npm:0.25.5" + "@esbuild/linux-ppc64": "npm:0.25.5" + "@esbuild/linux-riscv64": "npm:0.25.5" + "@esbuild/linux-s390x": "npm:0.25.5" + "@esbuild/linux-x64": "npm:0.25.5" + "@esbuild/netbsd-arm64": "npm:0.25.5" + "@esbuild/netbsd-x64": "npm:0.25.5" + "@esbuild/openbsd-arm64": "npm:0.25.5" + "@esbuild/openbsd-x64": "npm:0.25.5" + "@esbuild/sunos-x64": "npm:0.25.5" + "@esbuild/win32-arm64": "npm:0.25.5" + "@esbuild/win32-ia32": "npm:0.25.5" + "@esbuild/win32-x64": "npm:0.25.5" dependenciesMeta: "@esbuild/aix-ppc64": optional: true @@ -3097,8 +3633,12 @@ __metadata: optional: true "@esbuild/linux-x64": optional: true + "@esbuild/netbsd-arm64": + optional: true "@esbuild/netbsd-x64": optional: true + "@esbuild/openbsd-arm64": + optional: true "@esbuild/openbsd-x64": optional: true "@esbuild/sunos-x64": @@ -3111,38 +3651,40 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: 10/d2ff2ca84d30cce8e871517374d6c2290835380dc7cd413b2d49189ed170d45e407be14de2cb4794cf76f75cf89955c4714726ebd3de7444b3046f5cab23ab6b - languageName: node - linkType: hard - -"esbuild@npm:^0.23.1, esbuild@npm:~0.23.0": - version: 0.23.1 - resolution: "esbuild@npm:0.23.1" - dependencies: - "@esbuild/aix-ppc64": "npm:0.23.1" - "@esbuild/android-arm": "npm:0.23.1" - "@esbuild/android-arm64": "npm:0.23.1" - "@esbuild/android-x64": "npm:0.23.1" - "@esbuild/darwin-arm64": "npm:0.23.1" - "@esbuild/darwin-x64": "npm:0.23.1" - "@esbuild/freebsd-arm64": "npm:0.23.1" - "@esbuild/freebsd-x64": "npm:0.23.1" - "@esbuild/linux-arm": "npm:0.23.1" - "@esbuild/linux-arm64": "npm:0.23.1" - "@esbuild/linux-ia32": "npm:0.23.1" - "@esbuild/linux-loong64": "npm:0.23.1" - "@esbuild/linux-mips64el": "npm:0.23.1" - "@esbuild/linux-ppc64": "npm:0.23.1" - "@esbuild/linux-riscv64": "npm:0.23.1" - "@esbuild/linux-s390x": "npm:0.23.1" - "@esbuild/linux-x64": "npm:0.23.1" - "@esbuild/netbsd-x64": "npm:0.23.1" - "@esbuild/openbsd-arm64": "npm:0.23.1" - "@esbuild/openbsd-x64": "npm:0.23.1" - "@esbuild/sunos-x64": "npm:0.23.1" - "@esbuild/win32-arm64": "npm:0.23.1" - "@esbuild/win32-ia32": "npm:0.23.1" - "@esbuild/win32-x64": "npm:0.23.1" + checksum: 10/0fa4c3b42c6ddf1a008e75a4bb3dcab08ce22ac0b31dd59dc01f7fe8e21380bfaec07a2fe3730a7cf430da5a30142d016714b358666325a4733547afa42be405 + languageName: node + linkType: hard + +"esbuild@npm:^0.25.5": + version: 0.25.8 + resolution: "esbuild@npm:0.25.8" + dependencies: + "@esbuild/aix-ppc64": "npm:0.25.8" + "@esbuild/android-arm": "npm:0.25.8" + "@esbuild/android-arm64": "npm:0.25.8" + "@esbuild/android-x64": "npm:0.25.8" + "@esbuild/darwin-arm64": "npm:0.25.8" + "@esbuild/darwin-x64": "npm:0.25.8" + "@esbuild/freebsd-arm64": "npm:0.25.8" + "@esbuild/freebsd-x64": "npm:0.25.8" + "@esbuild/linux-arm": "npm:0.25.8" + "@esbuild/linux-arm64": "npm:0.25.8" + "@esbuild/linux-ia32": "npm:0.25.8" + "@esbuild/linux-loong64": "npm:0.25.8" + "@esbuild/linux-mips64el": "npm:0.25.8" + "@esbuild/linux-ppc64": "npm:0.25.8" + "@esbuild/linux-riscv64": "npm:0.25.8" + "@esbuild/linux-s390x": "npm:0.25.8" + "@esbuild/linux-x64": "npm:0.25.8" + "@esbuild/netbsd-arm64": "npm:0.25.8" + "@esbuild/netbsd-x64": "npm:0.25.8" + "@esbuild/openbsd-arm64": "npm:0.25.8" + "@esbuild/openbsd-x64": "npm:0.25.8" + "@esbuild/openharmony-arm64": "npm:0.25.8" + "@esbuild/sunos-x64": "npm:0.25.8" + "@esbuild/win32-arm64": "npm:0.25.8" + "@esbuild/win32-ia32": "npm:0.25.8" + "@esbuild/win32-x64": "npm:0.25.8" dependenciesMeta: "@esbuild/aix-ppc64": optional: true @@ -3178,12 +3720,16 @@ __metadata: optional: true "@esbuild/linux-x64": optional: true + "@esbuild/netbsd-arm64": + optional: true "@esbuild/netbsd-x64": optional: true "@esbuild/openbsd-arm64": optional: true "@esbuild/openbsd-x64": optional: true + "@esbuild/openharmony-arm64": + optional: true "@esbuild/sunos-x64": optional: true "@esbuild/win32-arm64": @@ -3194,41 +3740,37 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: 10/f55fbd0bfb0f86ce67a6d2c6f6780729d536c330999ecb9f5a38d578fb9fda820acbbc67d6d1d377eed8fed50fc38f14ff9cb014f86dafab94269a7fb2177018 - languageName: node - linkType: hard - -"esbuild@npm:^0.24.0": - version: 0.24.0 - resolution: "esbuild@npm:0.24.0" - dependencies: - "@esbuild/aix-ppc64": "npm:0.24.0" - "@esbuild/android-arm": "npm:0.24.0" - "@esbuild/android-arm64": "npm:0.24.0" - "@esbuild/android-x64": "npm:0.24.0" - "@esbuild/darwin-arm64": "npm:0.24.0" - "@esbuild/darwin-x64": "npm:0.24.0" - "@esbuild/freebsd-arm64": "npm:0.24.0" - "@esbuild/freebsd-x64": "npm:0.24.0" - "@esbuild/linux-arm": "npm:0.24.0" - "@esbuild/linux-arm64": "npm:0.24.0" - "@esbuild/linux-ia32": "npm:0.24.0" - "@esbuild/linux-loong64": "npm:0.24.0" - "@esbuild/linux-mips64el": "npm:0.24.0" - "@esbuild/linux-ppc64": "npm:0.24.0" - "@esbuild/linux-riscv64": "npm:0.24.0" - "@esbuild/linux-s390x": "npm:0.24.0" - "@esbuild/linux-x64": "npm:0.24.0" - "@esbuild/netbsd-x64": "npm:0.24.0" - "@esbuild/openbsd-arm64": "npm:0.24.0" - "@esbuild/openbsd-x64": "npm:0.24.0" - "@esbuild/sunos-x64": "npm:0.24.0" - "@esbuild/win32-arm64": "npm:0.24.0" - "@esbuild/win32-ia32": "npm:0.24.0" - "@esbuild/win32-x64": "npm:0.24.0" + checksum: 10/9897411732768e652d90fa5dfadae965e8f420d24e5f23fa0604331a1441769e2c7ee4e41ca53e926f1fb51a53af52e01fc9070fdc1a4edf3e9ec9208ee41273 + languageName: node + linkType: hard + +"esbuild@npm:~0.18.20": + version: 0.18.20 + resolution: "esbuild@npm:0.18.20" + dependencies: + "@esbuild/android-arm": "npm:0.18.20" + "@esbuild/android-arm64": "npm:0.18.20" + "@esbuild/android-x64": "npm:0.18.20" + "@esbuild/darwin-arm64": "npm:0.18.20" + "@esbuild/darwin-x64": "npm:0.18.20" + "@esbuild/freebsd-arm64": "npm:0.18.20" + "@esbuild/freebsd-x64": "npm:0.18.20" + "@esbuild/linux-arm": "npm:0.18.20" + "@esbuild/linux-arm64": "npm:0.18.20" + "@esbuild/linux-ia32": "npm:0.18.20" + "@esbuild/linux-loong64": "npm:0.18.20" + "@esbuild/linux-mips64el": "npm:0.18.20" + "@esbuild/linux-ppc64": "npm:0.18.20" + "@esbuild/linux-riscv64": "npm:0.18.20" + "@esbuild/linux-s390x": "npm:0.18.20" + "@esbuild/linux-x64": "npm:0.18.20" + "@esbuild/netbsd-x64": "npm:0.18.20" + "@esbuild/openbsd-x64": "npm:0.18.20" + "@esbuild/sunos-x64": "npm:0.18.20" + "@esbuild/win32-arm64": "npm:0.18.20" + "@esbuild/win32-ia32": "npm:0.18.20" + "@esbuild/win32-x64": "npm:0.18.20" dependenciesMeta: - "@esbuild/aix-ppc64": - optional: true "@esbuild/android-arm": optional: true "@esbuild/android-arm64": @@ -3263,8 +3805,6 @@ __metadata: optional: true "@esbuild/netbsd-x64": optional: true - "@esbuild/openbsd-arm64": - optional: true "@esbuild/openbsd-x64": optional: true "@esbuild/sunos-x64": @@ -3277,31 +3817,17 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: 10/500f83a1216d6548053007b85c070d8293395db344605b17418c6cf1217e5e8d338fa77fc8af27c23faa121c5528e5b0004d46d3a0cdeb87d48f1b5fa0164bc5 + checksum: 10/1f723ec71c3aa196473bf3298316eedc3f62d523924652dfeb60701b609792f918fc60db84b420d1d8ba9bfa7d69de2fc1d3157ba47c028bdae5d507a26a3c64 languageName: node linkType: hard -"escalade@npm:^3.2.0": +"escalade@npm:^3.1.1, escalade@npm:^3.2.0": version: 3.2.0 resolution: "escalade@npm:3.2.0" checksum: 10/9d7169e3965b2f9ae46971afa392f6e5a25545ea30f2e2dd99c9b0a95a3f52b5653681a84f5b2911a413ddad2d7a93d3514165072f349b5ffc59c75a899970d6 languageName: node linkType: hard -"escape-html@npm:~1.0.3": - version: 1.0.3 - resolution: "escape-html@npm:1.0.3" - checksum: 10/6213ca9ae00d0ab8bccb6d8d4e0a98e76237b2410302cf7df70aaa6591d509a2a37ce8998008cbecae8fc8ffaadf3fb0229535e6a145f3ce0b211d060decbb24 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^1.0.5": - version: 1.0.5 - resolution: "escape-string-regexp@npm:1.0.5" - checksum: 10/6092fda75c63b110c706b6a9bfde8a612ad595b628f0bd2147eea1d3406723020810e591effc7db1da91d80a71a737a313567c5abb3813e8d9c71f4aa595b410 - languageName: node - linkType: hard - "escape-string-regexp@npm:^4.0.0": version: 4.0.0 resolution: "escape-string-regexp@npm:4.0.0" @@ -3309,73 +3835,44 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-react-hooks@npm:^5.0.0": - version: 5.1.0 - resolution: "eslint-plugin-react-hooks@npm:5.1.0" - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 - checksum: 10/b6778fd9e1940b06868921309e8b269426e17eda555816d4b71def4dcf0572de1199fdb627ac09ce42160b9569a93cd9b0fd81b740ab4df98205461c53997a43 - languageName: node - linkType: hard - -"eslint-plugin-react-hooks@npm:^5.1.0-rc.0": - version: 5.1.0-rc-fb9a90fa48-20240614 - resolution: "eslint-plugin-react-hooks@npm:5.1.0-rc-fb9a90fa48-20240614" +"eslint-plugin-react-hooks@npm:^5.2.0": + version: 5.2.0 + resolution: "eslint-plugin-react-hooks@npm:5.2.0" peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 - checksum: 10/993da76357003f0f788d9eb621d463012fb5ad42cf92d3eacbf7498e2a2fa707d77c59f5e940642724cd61340b1256d13cebaa7b8fbaa3c432c03911ef6bd40e - languageName: node - linkType: hard - -"eslint-plugin-react-refresh@npm:^0.4.12, eslint-plugin-react-refresh@npm:^0.4.9": - version: 0.4.12 - resolution: "eslint-plugin-react-refresh@npm:0.4.12" - peerDependencies: - eslint: ">=7" - checksum: 10/448d0a387ca4d7913534ac7bee3e7b8708236a6cef4cccf9a50e739d6d3c8d236cdbd7e360ea643c7767092a93acf30a8e5fac91f05b175c45d20ce138947bcc + checksum: 10/ebb79e9cf69ae06e3a7876536653c5e556b5fd8cd9dc49577f10a6e728360e7b6f5ce91f4339b33e93b26e3bb23805418f8b5e75db80baddd617b1dffe73bed1 languageName: node linkType: hard -"eslint-plugin-react-refresh@npm:^0.4.14": - version: 0.4.16 - resolution: "eslint-plugin-react-refresh@npm:0.4.16" +"eslint-plugin-react-refresh@npm:^0.4.20": + version: 0.4.20 + resolution: "eslint-plugin-react-refresh@npm:0.4.20" peerDependencies: eslint: ">=8.40" - checksum: 10/72f022097978a4efe161cd07fd30b65f441e102c3139dd58cb132ecbc756c7d8b2739b78408556bcfb2d38c0f703eeac7eaef756818d887230e2cb93925af5a5 - languageName: node - linkType: hard - -"eslint-scope@npm:^7.2.2": - version: 7.2.2 - resolution: "eslint-scope@npm:7.2.2" - dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^5.2.0" - checksum: 10/5c660fb905d5883ad018a6fea2b49f3cb5b1cbf2cd4bd08e98646e9864f9bc2c74c0839bed2d292e90a4a328833accc197c8f0baed89cbe8d605d6f918465491 + checksum: 10/88aec8eeaf96f1a09df72a2134dc36dd8ef22a3ceb1ccba7865e63a128596e6be31942925edf896dcd12d0d51b8cb77530293ef4e738b600955a5a5c913f52d8 languageName: node linkType: hard -"eslint-scope@npm:^8.1.0": - version: 8.1.0 - resolution: "eslint-scope@npm:8.1.0" - dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^5.2.0" - checksum: 10/4c34a12fbeb0677822a9e93e81f2027e39e6f27557c17bc1e5ff76debbd41e748c3673517561792bda9e276245f89fbfd9b0b24fcec3b33a04ee2196729b3489 +"eslint-plugin-simple-import-sort@npm:^12.1.1": + version: 12.1.1 + resolution: "eslint-plugin-simple-import-sort@npm:12.1.1" + peerDependencies: + eslint: ">=5.0.0" + checksum: 10/2a690cea9243fbefa70345687bca8952f5e185fa459b7a8db687a908cc31082435cfee236c619d5245548fa5f89a2f2c4f8499f80512e048d2bedc60e3662d5a languageName: node linkType: hard -"eslint-scope@npm:^8.2.0": - version: 8.2.0 - resolution: "eslint-scope@npm:8.2.0" +"eslint-scope@npm:^8.4.0": + version: 8.4.0 + resolution: "eslint-scope@npm:8.4.0" dependencies: esrecurse: "npm:^4.3.0" estraverse: "npm:^5.2.0" - checksum: 10/cd9ab60d5a68f3a0fcac04d1cff5a7383d0f331964d5f1c446259123caec5b3ccc542284d07846e4f4d1389da77750821cc9a6e1ce18558c674977351666f9a6 + checksum: 10/e8e611701f65375e034c62123946e628894f0b54aa8cb11abe224816389abe5cd74cf16b62b72baa36504f22d1a958b9b8b0169b82397fe2e7997674c0d09b06 languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" checksum: 10/3f357c554a9ea794b094a09bd4187e5eacd1bc0d0653c3adeb87962c548e6a1ab8f982b86963ae1337f5d976004146536dcee5d0e2806665b193fbfbf1a9231b @@ -3389,85 +3886,38 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^4.2.0": - version: 4.2.0 - resolution: "eslint-visitor-keys@npm:4.2.0" - checksum: 10/9651b3356b01760e586b4c631c5268c0e1a85236e3292bf754f0472f465bf9a856c0ddc261fceace155334118c0151778effafbab981413dbf9288349343fa25 - languageName: node - linkType: hard - -"eslint@npm:^8.57.0": - version: 8.57.1 - resolution: "eslint@npm:8.57.1" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.2.0" - "@eslint-community/regexpp": "npm:^4.6.1" - "@eslint/eslintrc": "npm:^2.1.4" - "@eslint/js": "npm:8.57.1" - "@humanwhocodes/config-array": "npm:^0.13.0" - "@humanwhocodes/module-importer": "npm:^1.0.1" - "@nodelib/fs.walk": "npm:^1.2.8" - "@ungap/structured-clone": "npm:^1.2.0" - ajv: "npm:^6.12.4" - chalk: "npm:^4.0.0" - cross-spawn: "npm:^7.0.2" - debug: "npm:^4.3.2" - doctrine: "npm:^3.0.0" - escape-string-regexp: "npm:^4.0.0" - eslint-scope: "npm:^7.2.2" - eslint-visitor-keys: "npm:^3.4.3" - espree: "npm:^9.6.1" - esquery: "npm:^1.4.2" - esutils: "npm:^2.0.2" - fast-deep-equal: "npm:^3.1.3" - file-entry-cache: "npm:^6.0.1" - find-up: "npm:^5.0.0" - glob-parent: "npm:^6.0.2" - globals: "npm:^13.19.0" - graphemer: "npm:^1.4.0" - ignore: "npm:^5.2.0" - imurmurhash: "npm:^0.1.4" - is-glob: "npm:^4.0.0" - is-path-inside: "npm:^3.0.3" - js-yaml: "npm:^4.1.0" - json-stable-stringify-without-jsonify: "npm:^1.0.1" - levn: "npm:^0.4.1" - lodash.merge: "npm:^4.6.2" - minimatch: "npm:^3.1.2" - natural-compare: "npm:^1.4.0" - optionator: "npm:^0.9.3" - strip-ansi: "npm:^6.0.1" - text-table: "npm:^0.2.0" - bin: - eslint: bin/eslint.js - checksum: 10/5504fa24879afdd9f9929b2fbfc2ee9b9441a3d464efd9790fbda5f05738858530182029f13323add68d19fec749d3ab4a70320ded091ca4432b1e9cc4ed104c +"eslint-visitor-keys@npm:^4.2.1": + version: 4.2.1 + resolution: "eslint-visitor-keys@npm:4.2.1" + checksum: 10/3ee00fc6a7002d4b0ffd9dc99e13a6a7882c557329e6c25ab254220d71e5c9c4f89dca4695352949ea678eb1f3ba912a18ef8aac0a7fe094196fd92f441bfce2 languageName: node linkType: hard -"eslint@npm:^9.11.1, eslint@npm:^9.9.0": - version: 9.12.0 - resolution: "eslint@npm:9.12.0" +"eslint@npm:^9": + version: 9.30.0 + resolution: "eslint@npm:9.30.0" dependencies: "@eslint-community/eslint-utils": "npm:^4.2.0" - "@eslint-community/regexpp": "npm:^4.11.0" - "@eslint/config-array": "npm:^0.18.0" - "@eslint/core": "npm:^0.6.0" - "@eslint/eslintrc": "npm:^3.1.0" - "@eslint/js": "npm:9.12.0" - "@eslint/plugin-kit": "npm:^0.2.0" - "@humanfs/node": "npm:^0.16.5" + "@eslint-community/regexpp": "npm:^4.12.1" + "@eslint/config-array": "npm:^0.21.0" + "@eslint/config-helpers": "npm:^0.3.0" + "@eslint/core": "npm:^0.14.0" + "@eslint/eslintrc": "npm:^3.3.1" + "@eslint/js": "npm:9.30.0" + "@eslint/plugin-kit": "npm:^0.3.1" + "@humanfs/node": "npm:^0.16.6" "@humanwhocodes/module-importer": "npm:^1.0.1" - "@humanwhocodes/retry": "npm:^0.3.1" + "@humanwhocodes/retry": "npm:^0.4.2" "@types/estree": "npm:^1.0.6" "@types/json-schema": "npm:^7.0.15" ajv: "npm:^6.12.4" chalk: "npm:^4.0.0" - cross-spawn: "npm:^7.0.2" + cross-spawn: "npm:^7.0.6" debug: "npm:^4.3.2" escape-string-regexp: "npm:^4.0.0" - eslint-scope: "npm:^8.1.0" - eslint-visitor-keys: "npm:^4.1.0" - espree: "npm:^10.2.0" + eslint-scope: "npm:^8.4.0" + eslint-visitor-keys: "npm:^4.2.1" + espree: "npm:^10.4.0" esquery: "npm:^1.5.0" esutils: "npm:^2.0.2" fast-deep-equal: "npm:^3.1.3" @@ -3482,7 +3932,6 @@ __metadata: minimatch: "npm:^3.1.2" natural-compare: "npm:^1.4.0" optionator: "npm:^0.9.3" - text-table: "npm:^0.2.0" peerDependencies: jiti: "*" peerDependenciesMeta: @@ -3490,24 +3939,25 @@ __metadata: optional: true bin: eslint: bin/eslint.js - checksum: 10/c3f10d1ca3798bf1d0f71e43846e254d4bf0ea9ffbb0e61f9686a98e412aa762a454c5e5ef4e74fd71956b1500c04817c9f08dbf7a0cec47317160e28f585e4f + checksum: 10/74c11e6be5997f0de6542932795e997c1586f8f21cdeeda09c89c6c36879a9a593af84f1fd594bd8e22814c54ca0ad65513a0c91b0e8944efb51faed34b7d3b0 languageName: node linkType: hard -"eslint@npm:^9.15.0": - version: 9.17.0 - resolution: "eslint@npm:9.17.0" +"eslint@npm:^9.30.1": + version: 9.31.0 + resolution: "eslint@npm:9.31.0" dependencies: "@eslint-community/eslint-utils": "npm:^4.2.0" "@eslint-community/regexpp": "npm:^4.12.1" - "@eslint/config-array": "npm:^0.19.0" - "@eslint/core": "npm:^0.9.0" - "@eslint/eslintrc": "npm:^3.2.0" - "@eslint/js": "npm:9.17.0" - "@eslint/plugin-kit": "npm:^0.2.3" + "@eslint/config-array": "npm:^0.21.0" + "@eslint/config-helpers": "npm:^0.3.0" + "@eslint/core": "npm:^0.15.0" + "@eslint/eslintrc": "npm:^3.3.1" + "@eslint/js": "npm:9.31.0" + "@eslint/plugin-kit": "npm:^0.3.1" "@humanfs/node": "npm:^0.16.6" "@humanwhocodes/module-importer": "npm:^1.0.1" - "@humanwhocodes/retry": "npm:^0.4.1" + "@humanwhocodes/retry": "npm:^0.4.2" "@types/estree": "npm:^1.0.6" "@types/json-schema": "npm:^7.0.15" ajv: "npm:^6.12.4" @@ -3515,9 +3965,9 @@ __metadata: cross-spawn: "npm:^7.0.6" debug: "npm:^4.3.2" escape-string-regexp: "npm:^4.0.0" - eslint-scope: "npm:^8.2.0" - eslint-visitor-keys: "npm:^4.2.0" - espree: "npm:^10.3.0" + eslint-scope: "npm:^8.4.0" + eslint-visitor-keys: "npm:^4.2.1" + espree: "npm:^10.4.0" esquery: "npm:^1.5.0" esutils: "npm:^2.0.2" fast-deep-equal: "npm:^3.1.3" @@ -3539,11 +3989,11 @@ __metadata: optional: true bin: eslint: bin/eslint.js - checksum: 10/a48ee67dd4e737974bbb49ca5d12d0ce35bcd874507807599e3655bb398320ab27c9deed1aad508a963967815e626c21208f52158c2fc0796d0cc8186528efeb + checksum: 10/badfe1b62ee44dd389838ab27d6ca4f8a3159743a28c3145edd68af15db33fdacb13f096acdc2c559e9c8774d42fe3e1c513d5539d3297bfe8f342e3e4cfee33 languageName: node linkType: hard -"espree@npm:^10.0.1, espree@npm:^10.2.0": +"espree@npm:^10.0.1": version: 10.2.0 resolution: "espree@npm:10.2.0" dependencies: @@ -3554,29 +4004,18 @@ __metadata: languageName: node linkType: hard -"espree@npm:^10.3.0": - version: 10.3.0 - resolution: "espree@npm:10.3.0" - dependencies: - acorn: "npm:^8.14.0" - acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^4.2.0" - checksum: 10/3412d44d4204c9e29d6b5dd0277400cfa0cd68495dc09eae1b9ce79d0c8985c1c5cc09cb9ba32a1cd963f48a49b0c46bdb7736afe395a300aa6bb1c0d86837e8 - languageName: node - linkType: hard - -"espree@npm:^9.6.0, espree@npm:^9.6.1": - version: 9.6.1 - resolution: "espree@npm:9.6.1" +"espree@npm:^10.4.0": + version: 10.4.0 + resolution: "espree@npm:10.4.0" dependencies: - acorn: "npm:^8.9.0" + acorn: "npm:^8.15.0" acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^3.4.1" - checksum: 10/255ab260f0d711a54096bdeda93adff0eadf02a6f9b92f02b323e83a2b7fc258797919437ad331efec3930475feb0142c5ecaaf3cdab4befebd336d47d3f3134 + eslint-visitor-keys: "npm:^4.2.1" + checksum: 10/9b355b32dbd1cc9f57121d5ee3be258fab87ebeb7c83fc6c02e5af1a74fc8c5ba79fe8c663e69ea112c3e84a1b95e6a2067ac4443ee7813bb85ac7581acb8bf9 languageName: node linkType: hard -"esquery@npm:^1.4.2, esquery@npm:^1.5.0": +"esquery@npm:^1.5.0": version: 1.6.0 resolution: "esquery@npm:1.6.0" dependencies: @@ -3608,73 +4047,34 @@ __metadata: languageName: node linkType: hard -"etag@npm:~1.8.1": - version: 1.8.1 - resolution: "etag@npm:1.8.1" - checksum: 10/571aeb3dbe0f2bbd4e4fadbdb44f325fc75335cd5f6f6b6a091e6a06a9f25ed5392f0863c5442acb0646787446e816f13cbfc6edce5b07658541dff573cab1ff +"exponential-backoff@npm:^3.1.1": + version: 3.1.2 + resolution: "exponential-backoff@npm:3.1.2" + checksum: 10/ca2f01f1aa4dafd3f3917bd531ab5be08c6f5f4b2389d2e974f903de3cbeb50b9633374353516b6afd70905775e33aba11afab1232d3acf0aa2963b98a611c51 languageName: node linkType: hard -"execa@npm:^5.1.1": - version: 5.1.1 - resolution: "execa@npm:5.1.1" +"extract-zip@npm:^2.0.1": + version: 2.0.1 + resolution: "extract-zip@npm:2.0.1" dependencies: - cross-spawn: "npm:^7.0.3" - get-stream: "npm:^6.0.0" - human-signals: "npm:^2.1.0" - is-stream: "npm:^2.0.0" - merge-stream: "npm:^2.0.0" - npm-run-path: "npm:^4.0.1" - onetime: "npm:^5.1.2" - signal-exit: "npm:^3.0.3" - strip-final-newline: "npm:^2.0.0" - checksum: 10/8ada91f2d70f7dff702c861c2c64f21dfdc1525628f3c0454fd6f02fce65f7b958616cbd2b99ca7fa4d474e461a3d363824e91b3eb881705231abbf387470597 + "@types/yauzl": "npm:^2.9.1" + debug: "npm:^4.1.1" + get-stream: "npm:^5.1.0" + yauzl: "npm:^2.10.0" + dependenciesMeta: + "@types/yauzl": + optional: true + bin: + extract-zip: cli.js + checksum: 10/8cbda9debdd6d6980819cc69734d874ddd71051c9fe5bde1ef307ebcedfe949ba57b004894b585f758b7c9eeeea0e3d87f2dda89b7d25320459c2c9643ebb635 languageName: node linkType: hard -"exponential-backoff@npm:^3.1.1": - version: 3.1.1 - resolution: "exponential-backoff@npm:3.1.1" - checksum: 10/2d9bbb6473de7051f96790d5f9a678f32e60ed0aa70741dc7fdc96fec8d631124ec3374ac144387604f05afff9500f31a1d45bd9eee4cdc2e4f9ad2d9b9d5dbd - languageName: node - linkType: hard - -"express@npm:^4.21.1": - version: 4.21.1 - resolution: "express@npm:4.21.1" - dependencies: - accepts: "npm:~1.3.8" - array-flatten: "npm:1.1.1" - body-parser: "npm:1.20.3" - content-disposition: "npm:0.5.4" - content-type: "npm:~1.0.4" - cookie: "npm:0.7.1" - cookie-signature: "npm:1.0.6" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - finalhandler: "npm:1.3.1" - fresh: "npm:0.5.2" - http-errors: "npm:2.0.0" - merge-descriptors: "npm:1.0.3" - methods: "npm:~1.1.2" - on-finished: "npm:2.4.1" - parseurl: "npm:~1.3.3" - path-to-regexp: "npm:0.1.10" - proxy-addr: "npm:~2.0.7" - qs: "npm:6.13.0" - range-parser: "npm:~1.2.1" - safe-buffer: "npm:5.2.1" - send: "npm:0.19.0" - serve-static: "npm:1.16.2" - setprototypeof: "npm:1.2.0" - statuses: "npm:2.0.1" - type-is: "npm:~1.6.18" - utils-merge: "npm:1.0.1" - vary: "npm:~1.1.2" - checksum: 10/5d4a36dd03c1d1cce93172e9b185b5cd13a978d29ee03adc51cd278be7b4a514ae2b63e2fdaec0c00fdc95c6cfb396d9dd1da147917ffd337d6cd0778e08c9bc +"extsprintf@npm:^1.2.0": + version: 1.4.1 + resolution: "extsprintf@npm:1.4.1" + checksum: 10/bfd6d55f3c0c04d826fe0213264b383c03f32825af6b1ff777f3f2dc49467e599361993568d75b7b19a8ea1bb08c8e7cd8c3d87d179ced91bb0dcf81ca6938e0 languageName: node linkType: hard @@ -3721,12 +4121,24 @@ __metadata: languageName: node linkType: hard -"file-entry-cache@npm:^6.0.1": - version: 6.0.1 - resolution: "file-entry-cache@npm:6.0.1" +"fd-slicer@npm:~1.1.0": + version: 1.1.0 + resolution: "fd-slicer@npm:1.1.0" dependencies: - flat-cache: "npm:^3.0.4" - checksum: 10/099bb9d4ab332cb93c48b14807a6918a1da87c45dce91d4b61fd40e6505d56d0697da060cb901c729c90487067d93c9243f5da3dc9c41f0358483bfdebca736b + pend: "npm:~1.2.0" + checksum: 10/db3e34fa483b5873b73f248e818f8a8b59a6427fd8b1436cd439c195fdf11e8659419404826059a642b57d18075c856d06d6a50a1413b714f12f833a9341ead3 + languageName: node + linkType: hard + +"fdir@npm:^6.4.4, fdir@npm:^6.4.6": + version: 6.4.6 + resolution: "fdir@npm:6.4.6" + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + checksum: 10/c186ba387e7b75ccf874a098d9bc5fe0af0e9c52fc56f8eac8e80aa4edb65532684bf2bf769894ff90f53bf221d6136692052d31f07a9952807acae6cbe7ee50 languageName: node linkType: hard @@ -3739,6 +4151,15 @@ __metadata: languageName: node linkType: hard +"filelist@npm:^1.0.4": + version: 1.0.4 + resolution: "filelist@npm:1.0.4" + dependencies: + minimatch: "npm:^5.0.1" + checksum: 10/4b436fa944b1508b95cffdfc8176ae6947b92825483639ef1b9a89b27d82f3f8aa22b21eed471993f92709b431670d4e015b39c087d435a61e1bb04564cf51de + languageName: node + linkType: hard + "fill-range@npm:^7.1.1": version: 7.1.1 resolution: "fill-range@npm:7.1.1" @@ -3748,21 +4169,6 @@ __metadata: languageName: node linkType: hard -"finalhandler@npm:1.3.1": - version: 1.3.1 - resolution: "finalhandler@npm:1.3.1" - dependencies: - debug: "npm:2.6.9" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - on-finished: "npm:2.4.1" - parseurl: "npm:~1.3.3" - statuses: "npm:2.0.1" - unpipe: "npm:~1.0.0" - checksum: 10/4babe72969b7373b5842bc9f75c3a641a4d0f8eb53af6b89fa714d4460ce03fb92b28de751d12ba415e96e7e02870c436d67412120555e2b382640535697305b - languageName: node - linkType: hard - "find-up@npm:^5.0.0": version: 5.0.0 resolution: "find-up@npm:5.0.0" @@ -3773,17 +4179,6 @@ __metadata: languageName: node linkType: hard -"flat-cache@npm:^3.0.4": - version: 3.2.0 - resolution: "flat-cache@npm:3.2.0" - dependencies: - flatted: "npm:^3.2.9" - keyv: "npm:^4.5.3" - rimraf: "npm:^3.0.2" - checksum: 10/02381c6ece5e9fa5b826c9bbea481d7fd77645d96e4b0b1395238124d581d10e56f17f723d897b6d133970f7a57f0fab9148cbbb67237a0a0ffe794ba60c0c70 - languageName: node - linkType: hard - "flat-cache@npm:^4.0.0": version: 4.0.1 resolution: "flat-cache@npm:4.0.1" @@ -3801,31 +4196,90 @@ __metadata: languageName: node linkType: hard +"font-convert@workspace:utility/font-convert": + version: 0.0.0-use.local + resolution: "font-convert@workspace:utility/font-convert" + dependencies: + "@types/node": "npm:^20.11.17" + "@types/ttf2woff": "npm:^2.0.4" + "@types/wawoff2": "npm:^1.0.2" + dotenv: "npm:^17.2.1" + otf2ttf: "npm:^1.1.2" + tsx: "npm:^4.7.1" + ttf2woff: "npm:^3.0.0" + wawoff2: "npm:^1.0.1" + languageName: unknown + linkType: soft + "foreground-child@npm:^3.1.0": - version: 3.3.0 - resolution: "foreground-child@npm:3.3.0" + version: 3.3.1 + resolution: "foreground-child@npm:3.3.1" dependencies: - cross-spawn: "npm:^7.0.0" + cross-spawn: "npm:^7.0.6" signal-exit: "npm:^4.0.1" - checksum: 10/e3a60480f3a09b12273ce2c5fcb9514d98dd0e528f58656a1b04680225f918d60a2f81f6a368f2f3b937fcee9cfc0cbf16f1ad9a0bc6a3a6e103a84c9a90087e + checksum: 10/427b33f997a98073c0424e5c07169264a62cda806d8d2ded159b5b903fdfc8f0a1457e06b5fc35506497acb3f1e353f025edee796300209ac6231e80edece835 languageName: node linkType: hard -"forwarded@npm:0.2.0": - version: 0.2.0 - resolution: "forwarded@npm:0.2.0" - checksum: 10/29ba9fd347117144e97cbb8852baae5e8b2acb7d1b591ef85695ed96f5b933b1804a7fac4a15dd09ca7ac7d0cdc104410e8102aae2dd3faa570a797ba07adb81 +"form-data@npm:^4.0.0": + version: 4.0.4 + resolution: "form-data@npm:4.0.4" + dependencies: + asynckit: "npm:^0.4.0" + combined-stream: "npm:^1.0.8" + es-set-tostringtag: "npm:^2.1.0" + hasown: "npm:^2.0.2" + mime-types: "npm:^2.1.12" + checksum: 10/a4b62e21932f48702bc468cc26fb276d186e6b07b557e3dd7cc455872bdbb82db7db066844a64ad3cf40eaf3a753c830538183570462d3649fdfd705601cbcfb languageName: node linkType: hard -"fresh@npm:0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 10/64c88e489b5d08e2f29664eb3c79c705ff9a8eb15d3e597198ef76546d4ade295897a44abb0abd2700e7ef784b2e3cbf1161e4fbf16f59129193fd1030d16da1 +"fs-extra@npm:^10.0.0, fs-extra@npm:^10.1.0": + version: 10.1.0 + resolution: "fs-extra@npm:10.1.0" + dependencies: + graceful-fs: "npm:^4.2.0" + jsonfile: "npm:^6.0.1" + universalify: "npm:^2.0.0" + checksum: 10/05ce2c3b59049bcb7b52001acd000e44b3c4af4ec1f8839f383ef41ec0048e3cfa7fd8a637b1bddfefad319145db89be91f4b7c1db2908205d38bf91e7d1d3b7 + languageName: node + linkType: hard + +"fs-extra@npm:^11.1.1": + version: 11.3.0 + resolution: "fs-extra@npm:11.3.0" + dependencies: + graceful-fs: "npm:^4.2.0" + jsonfile: "npm:^6.0.1" + universalify: "npm:^2.0.0" + checksum: 10/c9fe7b23dded1efe7bbae528d685c3206477e20cc60e9aaceb3f024f9b9ff2ee1f62413c161cb88546cc564009ab516dec99e9781ba782d869bb37e4fe04a97f + languageName: node + linkType: hard + +"fs-extra@npm:^8.1.0": + version: 8.1.0 + resolution: "fs-extra@npm:8.1.0" + dependencies: + graceful-fs: "npm:^4.2.0" + jsonfile: "npm:^4.0.0" + universalify: "npm:^0.1.0" + checksum: 10/6fb12449f5349be724a138b4a7b45fe6a317d2972054517f5971959c26fbd17c0e145731a11c7324460262baa33e0a799b183ceace98f7a372c95fbb6f20f5de + languageName: node + linkType: hard + +"fs-extra@npm:^9.0.0, fs-extra@npm:^9.0.1": + version: 9.1.0 + resolution: "fs-extra@npm:9.1.0" + dependencies: + at-least-node: "npm:^1.0.0" + graceful-fs: "npm:^4.2.0" + jsonfile: "npm:^6.0.1" + universalify: "npm:^2.0.0" + checksum: 10/08600da1b49552ed23dfac598c8fc909c66776dd130fea54fbcad22e330f7fcc13488bb995f6bc9ce5651aa35b65702faf616fe76370ee56f1aade55da982dca languageName: node linkType: hard -"fs-minipass@npm:^2.0.0": +"fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" dependencies: @@ -3883,32 +4337,63 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.4": - version: 1.2.4 - resolution: "get-intrinsic@npm:1.2.4" +"get-caller-file@npm:^2.0.5": + version: 2.0.5 + resolution: "get-caller-file@npm:2.0.5" + checksum: 10/b9769a836d2a98c3ee734a88ba712e62703f1df31b94b784762c433c27a386dd6029ff55c2a920c392e33657d80191edbf18c61487e198844844516f843496b9 + languageName: node + linkType: hard + +"get-intrinsic@npm:^1.2.6": + version: 1.3.0 + resolution: "get-intrinsic@npm:1.3.0" dependencies: + call-bind-apply-helpers: "npm:^1.0.2" + es-define-property: "npm:^1.0.1" es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.1.1" function-bind: "npm:^1.1.2" - has-proto: "npm:^1.0.1" - has-symbols: "npm:^1.0.3" - hasown: "npm:^2.0.0" - checksum: 10/85bbf4b234c3940edf8a41f4ecbd4e25ce78e5e6ad4e24ca2f77037d983b9ef943fd72f00f3ee97a49ec622a506b67db49c36246150377efcda1c9eb03e5f06d + get-proto: "npm:^1.0.1" + gopd: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + hasown: "npm:^2.0.2" + math-intrinsics: "npm:^1.1.0" + checksum: 10/6e9dd920ff054147b6f44cb98104330e87caafae051b6d37b13384a45ba15e71af33c3baeac7cb630a0aaa23142718dcf25b45cfdd86c184c5dcb4e56d953a10 languageName: node linkType: hard -"get-stream@npm:^6.0.0": - version: 6.0.1 - resolution: "get-stream@npm:6.0.1" - checksum: 10/781266d29725f35c59f1d214aedc92b0ae855800a980800e2923b3fbc4e56b3cb6e462c42e09a1cf1a00c64e056a78fa407cbe06c7c92b7e5cd49b4b85c2a497 +"get-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "get-proto@npm:1.0.1" + dependencies: + dunder-proto: "npm:^1.0.1" + es-object-atoms: "npm:^1.0.0" + checksum: 10/4fc96afdb58ced9a67558698b91433e6b037aaa6f1493af77498d7c85b141382cf223c0e5946f334fb328ee85dfe6edd06d218eaf09556f4bc4ec6005d7f5f7b + languageName: node + linkType: hard + +"get-stdin@npm:*": + version: 9.0.0 + resolution: "get-stdin@npm:9.0.0" + checksum: 10/5972bc34d05932b45512c8e2d67b040f1c1ca8afb95c56cbc480985f2d761b7e37fe90dc8abd22527f062cc5639a6930ff346e9952ae4c11a2d4275869459594 + languageName: node + linkType: hard + +"get-stream@npm:^5.1.0": + version: 5.2.0 + resolution: "get-stream@npm:5.2.0" + dependencies: + pump: "npm:^3.0.0" + checksum: 10/13a73148dca795e41421013da6e3ebff8ccb7fba4d2f023fd0c6da2c166ec4e789bec9774a73a7b49c08daf2cae552f8a3e914042ac23b5f59dd278cc8f9cbfb languageName: node linkType: hard -"get-tsconfig@npm:^4.7.5": - version: 4.8.1 - resolution: "get-tsconfig@npm:4.8.1" +"get-tsconfig@npm:^4.7.0, get-tsconfig@npm:^4.7.5": + version: 4.10.1 + resolution: "get-tsconfig@npm:4.10.1" dependencies: resolve-pkg-maps: "npm:^1.0.0" - checksum: 10/3fb5a8ad57b9633eaea085d81661e9e5c9f78b35d8f8689eaf8b8b45a2a3ebf3b3422266d4d7df765e308cc1e6231648d114803ab3d018332e29916f2c1de036 + checksum: 10/04d63f47fdecaefbd1f73ec02949be4ec4db7d6d9fbc8d4e81f9a4bb1c6f876e48943712f2f9236643d3e4d61d9a7b06da08564d08b034631ebe3f5605bef237 languageName: node linkType: hard @@ -3930,7 +4415,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^10.2.2, glob@npm:^10.3.10": +"glob@npm:^10.2.2, glob@npm:^10.3.12": version: 10.4.5 resolution: "glob@npm:10.4.5" dependencies: @@ -3946,7 +4431,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^7.1.3": +"glob@npm:^7.1.3, glob@npm:^7.1.6": version: 7.2.3 resolution: "glob@npm:7.2.3" dependencies: @@ -3960,19 +4445,37 @@ __metadata: languageName: node linkType: hard -"globals@npm:^11.1.0": - version: 11.12.0 - resolution: "globals@npm:11.12.0" - checksum: 10/9f054fa38ff8de8fa356502eb9d2dae0c928217b8b5c8de1f09f5c9b6c8a96d8b9bd3afc49acbcd384a98a81fea713c859e1b09e214c60509517bb8fc2bc13c2 +"glob@npm:^8.0.1, glob@npm:^8.1.0": + version: 8.1.0 + resolution: "glob@npm:8.1.0" + dependencies: + fs.realpath: "npm:^1.0.0" + inflight: "npm:^1.0.4" + inherits: "npm:2" + minimatch: "npm:^5.0.1" + once: "npm:^1.3.0" + checksum: 10/9aab1c75eb087c35dbc41d1f742e51d0507aa2b14c910d96fb8287107a10a22f4bbdce26fc0a3da4c69a20f7b26d62f1640b346a4f6e6becfff47f335bb1dc5e languageName: node linkType: hard -"globals@npm:^13.19.0": - version: 13.24.0 - resolution: "globals@npm:13.24.0" +"global-agent@npm:^3.0.0": + version: 3.0.0 + resolution: "global-agent@npm:3.0.0" dependencies: - type-fest: "npm:^0.20.2" - checksum: 10/62c5b1997d06674fc7191d3e01e324d3eda4d65ac9cc4e78329fa3b5c4fd42a0e1c8722822497a6964eee075255ce21ccf1eec2d83f92ef3f06653af4d0ee28e + boolean: "npm:^3.0.1" + es6-error: "npm:^4.1.1" + matcher: "npm:^3.0.0" + roarr: "npm:^2.15.3" + semver: "npm:^7.3.2" + serialize-error: "npm:^7.0.1" + checksum: 10/a26d96d1d79af57a8ef957f66cef6f3889a8fa55131f0bbd72b8e1bc340a9b7ed7b627b96eaf5eb14aee08a8b4ad44395090e2cf77146e993f1d2df7abaa0a0d + languageName: node + linkType: hard + +"globals@npm:^11.1.0": + version: 11.12.0 + resolution: "globals@npm:11.12.0" + checksum: 10/9f054fa38ff8de8fa356502eb9d2dae0c928217b8b5c8de1f09f5c9b6c8a96d8b9bd3afc49acbcd384a98a81fea713c859e1b09e214c60509517bb8fc2bc13c2 languageName: node linkType: hard @@ -3983,17 +4486,27 @@ __metadata: languageName: node linkType: hard -"globals@npm:^15.12.0": - version: 15.13.0 - resolution: "globals@npm:15.13.0" - checksum: 10/ba84d0612d516bcc1dabdd9ce66667956e1a87401fb53be6c379f8f6a04f8e6ce415b584801ae2689a90e788e89bb38adfafc854a8a50ae8e322bb4dd35a2105 +"globals@npm:^16.2.0": + version: 16.2.0 + resolution: "globals@npm:16.2.0" + checksum: 10/37fc33502973ebbee5a44b58939aa8574abc00ca1fc4c1d4ec0571a2c6620843ae647eff8bd082adf6bb5975ad221a887522b9a7961125764f0cb6dfab0b7483 + languageName: node + linkType: hard + +"globals@npm:^16.3.0": + version: 16.3.0 + resolution: "globals@npm:16.3.0" + checksum: 10/accb0939d993a1c461df8d961ce9911a9a96120929e0a61057ae8e75b7df0a8bf8089da0f4e3a476db0211156416fbd26e222a56f74b389a140b34481c0a72b0 languageName: node linkType: hard -"globals@npm:^15.9.0": - version: 15.11.0 - resolution: "globals@npm:15.11.0" - checksum: 10/14009ef1906ac929d930ed1c896a47159e7d11b4d201901ca5f3827766519191a3f5fb45124de43c4511fee04018704e7ed5a097fb37d23abf39523d1d41c85f +"globalthis@npm:^1.0.1": + version: 1.0.4 + resolution: "globalthis@npm:1.0.4" + dependencies: + define-properties: "npm:^1.2.1" + gopd: "npm:^1.0.1" + checksum: 10/1f1fd078fb2f7296306ef9dd51019491044ccf17a59ed49d375b576ca108ff37e47f3d29aead7add40763574a992f16a5367dd1e2173b8634ef18556ab719ac4 languageName: node linkType: hard @@ -4004,16 +4517,33 @@ __metadata: languageName: node linkType: hard -"gopd@npm:^1.0.1": - version: 1.0.1 - resolution: "gopd@npm:1.0.1" +"gopd@npm:^1.0.1, gopd@npm:^1.2.0": + version: 1.2.0 + resolution: "gopd@npm:1.2.0" + checksum: 10/94e296d69f92dc1c0768fcfeecfb3855582ab59a7c75e969d5f96ce50c3d201fd86d5a2857c22565764d5bb8a816c7b1e58f133ec318cd56274da36c5e3fb1a1 + languageName: node + linkType: hard + +"got@npm:^11.7.0, got@npm:^11.8.5": + version: 11.8.6 + resolution: "got@npm:11.8.6" dependencies: - get-intrinsic: "npm:^1.1.3" - checksum: 10/5fbc7ad57b368ae4cd2f41214bd947b045c1a4be2f194a7be1778d71f8af9dbf4004221f3b6f23e30820eb0d052b4f819fe6ebe8221e2a3c6f0ee4ef173421ca + "@sindresorhus/is": "npm:^4.0.0" + "@szmarczak/http-timer": "npm:^4.0.5" + "@types/cacheable-request": "npm:^6.0.1" + "@types/responselike": "npm:^1.0.0" + cacheable-lookup: "npm:^5.0.3" + cacheable-request: "npm:^7.0.2" + decompress-response: "npm:^6.0.0" + http2-wrapper: "npm:^1.0.0-beta.5.2" + lowercase-keys: "npm:^2.0.0" + p-cancelable: "npm:^2.0.0" + responselike: "npm:^2.0.0" + checksum: 10/a30c74029d81bd5fe50dea1a0c970595d792c568e188ff8be254b5bc11e6158d1b014570772d4a30d0a97723e7dd34e7c8cc1a2f23018f60aece3070a7a5c2a5 languageName: node linkType: hard -"graceful-fs@npm:^4.2.6": +"graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.6": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: 10/bf152d0ed1dc159239db1ba1f74fdbc40cb02f626770dcd5815c427ce0688c2635a06ed69af364396da4636d0408fcf7d4afdf7881724c3307e46aff30ca49e2 @@ -4027,13 +4557,6 @@ __metadata: languageName: node linkType: hard -"has-flag@npm:^3.0.0": - version: 3.0.0 - resolution: "has-flag@npm:3.0.0" - checksum: 10/4a15638b454bf086c8148979aae044dd6e39d63904cd452d970374fa6a87623423da485dfb814e7be882e05c096a7ccf1ebd48e7e7501d0208d8384ff4dea73b - languageName: node - linkType: hard - "has-flag@npm:^4.0.0": version: 4.0.0 resolution: "has-flag@npm:4.0.0" @@ -4041,7 +4564,7 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.2": +"has-property-descriptors@npm:^1.0.0": version: 1.0.2 resolution: "has-property-descriptors@npm:1.0.2" dependencies: @@ -4050,21 +4573,23 @@ __metadata: languageName: node linkType: hard -"has-proto@npm:^1.0.1": - version: 1.0.3 - resolution: "has-proto@npm:1.0.3" - checksum: 10/0b67c2c94e3bea37db3e412e3c41f79d59259875e636ba471e94c009cdfb1fa82bf045deeffafc7dbb9c148e36cae6b467055aaa5d9fad4316e11b41e3ba551a +"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": + version: 1.1.0 + resolution: "has-symbols@npm:1.1.0" + checksum: 10/959385c98696ebbca51e7534e0dc723ada325efa3475350951363cce216d27373e0259b63edb599f72eb94d6cde8577b4b2375f080b303947e560f85692834fa languageName: node linkType: hard -"has-symbols@npm:^1.0.3": - version: 1.0.3 - resolution: "has-symbols@npm:1.0.3" - checksum: 10/464f97a8202a7690dadd026e6d73b1ceeddd60fe6acfd06151106f050303eaa75855aaa94969df8015c11ff7c505f196114d22f7386b4a471038da5874cf5e9b +"has-tostringtag@npm:^1.0.2": + version: 1.0.2 + resolution: "has-tostringtag@npm:1.0.2" + dependencies: + has-symbols: "npm:^1.0.3" + checksum: 10/c74c5f5ceee3c8a5b8bc37719840dc3749f5b0306d818974141dda2471a1a2ca6c8e46b9d6ac222c5345df7a901c9b6f350b1e6d62763fec877e26609a401bfe languageName: node linkType: hard -"hasown@npm:^2.0.0": +"hasown@npm:^2.0.2": version: 2.0.2 resolution: "hasown@npm:2.0.2" dependencies: @@ -4073,23 +4598,37 @@ __metadata: languageName: node linkType: hard -"http-cache-semantics@npm:^4.1.1": - version: 4.1.1 - resolution: "http-cache-semantics@npm:4.1.1" - checksum: 10/362d5ed66b12ceb9c0a328fb31200b590ab1b02f4a254a697dc796850cc4385603e75f53ec59f768b2dad3bfa1464bd229f7de278d2899a0e3beffc634b6683f +"hono@npm:^4.8.3": + version: 4.8.3 + resolution: "hono@npm:4.8.3" + checksum: 10/7f29da4d960e4e9b35c5a147ef38f5b259bd72e8e2c4132e5327dfc70783c9961f72da94735522dc62ad7bf59de0981b38b60fb40185ebda7813cde09defc8bb languageName: node linkType: hard -"http-errors@npm:2.0.0": - version: 2.0.0 - resolution: "http-errors@npm:2.0.0" +"hosted-git-info@npm:^4.1.0": + version: 4.1.0 + resolution: "hosted-git-info@npm:4.1.0" + dependencies: + lru-cache: "npm:^6.0.0" + checksum: 10/4dc67022b7ecb12829966bd731fb9a5f14d351547aafc6520ef3c8e7211f4f0e69452d24e29eae3d9b17df924d660052e53d8ca321cf3008418fb7e6c7c47d6f + languageName: node + linkType: hard + +"http-cache-semantics@npm:^4.0.0, http-cache-semantics@npm:^4.1.0, http-cache-semantics@npm:^4.1.1": + version: 4.2.0 + resolution: "http-cache-semantics@npm:4.2.0" + checksum: 10/4efd2dfcfeea9d5e88c84af450b9980be8a43c2c8179508b1c57c7b4421c855f3e8efe92fa53e0b3f4a43c85824ada930eabbc306d1b3beab750b6dcc5187693 + languageName: node + linkType: hard + +"http-proxy-agent@npm:^5.0.0": + version: 5.0.0 + resolution: "http-proxy-agent@npm:5.0.0" dependencies: - depd: "npm:2.0.0" - inherits: "npm:2.0.4" - setprototypeof: "npm:1.2.0" - statuses: "npm:2.0.1" - toidentifier: "npm:1.0.1" - checksum: 10/0e7f76ee8ff8a33e58a3281a469815b893c41357378f408be8f6d4aa7d1efafb0da064625518e7078381b6a92325949b119dc38fcb30bdbc4e3a35f78c44c439 + "@tootallnate/once": "npm:2" + agent-base: "npm:6" + debug: "npm:4" + checksum: 10/5ee19423bc3e0fd5f23ce991b0755699ad2a46a440ce9cec99e8126bb98448ad3479d2c0ea54be5519db5b19a4ffaa69616bac01540db18506dd4dac3dc418f0 languageName: node linkType: hard @@ -4103,20 +4642,42 @@ __metadata: languageName: node linkType: hard -"https-proxy-agent@npm:^7.0.1": - version: 7.0.5 - resolution: "https-proxy-agent@npm:7.0.5" +"http2-wrapper@npm:^1.0.0-beta.5.2": + version: 1.0.3 + resolution: "http2-wrapper@npm:1.0.3" + dependencies: + quick-lru: "npm:^5.1.1" + resolve-alpn: "npm:^1.0.0" + checksum: 10/8097ee2699440c2e64bda52124990cc5b0fb347401c7797b1a0c1efd5a0f79a4ebaa68e8a6ac3e2dde5f09460c1602764da6da2412bad628ed0a3b0ae35e72d4 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^5.0.0": + version: 5.0.1 + resolution: "https-proxy-agent@npm:5.0.1" dependencies: - agent-base: "npm:^7.0.2" + agent-base: "npm:6" debug: "npm:4" - checksum: 10/6679d46159ab3f9a5509ee80c3a3fc83fba3a920a5e18d32176c3327852c3c00ad640c0c4210a8fd70ea3c4a6d3a1b375bf01942516e7df80e2646bdc77658ab + checksum: 10/f0dce7bdcac5e8eaa0be3c7368bb8836ed010fb5b6349ffb412b172a203efe8f807d9a6681319105ea1b6901e1972c7b5ea899672a7b9aad58309f766dcbe0df languageName: node linkType: hard -"human-signals@npm:^2.1.0": - version: 2.1.0 - resolution: "human-signals@npm:2.1.0" - checksum: 10/df59be9e0af479036798a881d1f136c4a29e0b518d4abb863afbd11bf30efa3eeb1d0425fc65942dcc05ab3bf40205ea436b0ff389f2cd20b75b8643d539bf86 +"https-proxy-agent@npm:^7.0.0, https-proxy-agent@npm:^7.0.1": + version: 7.0.6 + resolution: "https-proxy-agent@npm:7.0.6" + dependencies: + agent-base: "npm:^7.1.2" + debug: "npm:4" + checksum: 10/784b628cbd55b25542a9d85033bdfd03d4eda630fb8b3c9477959367f3be95dc476ed2ecbb9836c359c7c698027fc7b45723a302324433590f45d6c1706e8c13 + languageName: node + linkType: hard + +"humanize-ms@npm:^1.2.1": + version: 1.2.1 + resolution: "humanize-ms@npm:1.2.1" + dependencies: + ms: "npm:^2.0.0" + checksum: 10/9c7a74a2827f9294c009266c82031030eae811ca87b0da3dceb8d6071b9bde22c9f3daef0469c3c533cc67a97d8a167cd9fc0389350e5f415f61a79b171ded16 languageName: node linkType: hard @@ -4129,12 +4690,22 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" +"iconoir-react@npm:^7.11.0": + version: 7.11.0 + resolution: "iconoir-react@npm:7.11.0" + peerDependencies: + react: 18 || 19 + checksum: 10/c771c9f75832b6f63f0ef60cce90008e3af9587ed252c8745dc4deb1a621796da6be1b31b9a2ea7b0dcd7c5d827ab2e6092f41f013c319ca3053beef496047a5 + languageName: node + linkType: hard + +"iconv-corefoundation@npm:^1.1.7": + version: 1.1.7 + resolution: "iconv-corefoundation@npm:1.1.7" dependencies: - safer-buffer: "npm:>= 2.1.2 < 3" - checksum: 10/6d3a2dac6e5d1fb126d25645c25c3a1209f70cceecc68b8ef51ae0da3cdc078c151fade7524a30b12a3094926336831fca09c666ef55b37e2c69638b5d6bd2e3 + cli-truncate: "npm:^2.1.0" + node-addon-api: "npm:^1.6.3" + conditions: os=darwin languageName: node linkType: hard @@ -4147,20 +4718,41 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.2.0, ignore@npm:^5.3.1": +"ieee754@npm:^1.1.13": + version: 1.2.1 + resolution: "ieee754@npm:1.2.1" + checksum: 10/d9f2557a59036f16c282aaeb107832dc957a93d73397d89bbad4eb1130560560eb695060145e8e6b3b498b15ab95510226649a0b8f52ae06583575419fe10fc4 + languageName: node + linkType: hard + +"ignore@npm:^5.2.0": version: 5.3.2 resolution: "ignore@npm:5.3.2" checksum: 10/cceb6a457000f8f6a50e1196429750d782afce5680dd878aa4221bd79972d68b3a55b4b1458fc682be978f4d3c6a249046aa0880637367216444ab7b014cfc98 languageName: node linkType: hard -"immer@npm:^10.0.3, immer@npm:^10.1.1": +"ignore@npm:^7.0.0": + version: 7.0.5 + resolution: "ignore@npm:7.0.5" + checksum: 10/f134b96a4de0af419196f52c529d5c6120c4456ff8a6b5a14ceaaa399f883e15d58d2ce651c9b69b9388491d4669dda47285d307e827de9304a53a1824801bc6 + languageName: node + linkType: hard + +"immer@npm:^10.1.1": version: 10.1.1 resolution: "immer@npm:10.1.1" checksum: 10/9dacf1e8c201d69191ccd88dc5d733bafe166cd45a5a360c5d7c88f1de0dff974a94114d72b35f3106adfe587fcfb131c545856184a2247d89d735ad25589863 languageName: node linkType: hard +"immutable@npm:^5.0.2": + version: 5.1.3 + resolution: "immutable@npm:5.1.3" + checksum: 10/6d29b29036143e7ea1e7f7be581c71bca873ea77c175d33c6c839bf4017265a58c41ec269e3ffcd7b483797fc7fa9c928b4ed3d6edfeeb1b5711d84f60d04090 + languageName: node + linkType: hard + "import-fresh@npm:^3.2.1": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" @@ -4185,6 +4777,13 @@ __metadata: languageName: node linkType: hard +"infer-owner@npm:^1.0.4": + version: 1.0.4 + resolution: "infer-owner@npm:1.0.4" + checksum: 10/181e732764e4a0611576466b4b87dac338972b839920b2a8cde43642e4ed6bd54dc1fb0b40874728f2a2df9a1b097b8ff83b56d5f8f8e3927f837fdcb47d8a89 + languageName: node + linkType: hard + "inflight@npm:^1.0.4": version: 1.0.6 resolution: "inflight@npm:1.0.6" @@ -4195,20 +4794,13 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2, inherits@npm:2.0.4": +"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.1": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 10/cd45e923bee15186c07fa4c89db0aace24824c482fb887b528304694b2aa6ff8a898da8657046a5dcf3e46cd6db6c61629551f9215f208d7c3f157cf9b290521 languageName: node linkType: hard -"ini@npm:~1.3.0": - version: 1.3.8 - resolution: "ini@npm:1.3.8" - checksum: 10/314ae176e8d4deb3def56106da8002b462221c174ddb7ce0c49ee72c8cd1f9044f7b10cc555a7d8850982c3b9ca96fc212122749f5234bc2b6fb05fb942ed566 - languageName: node - linkType: hard - "ip-address@npm:^9.0.5": version: 9.0.5 resolution: "ip-address@npm:9.0.5" @@ -4219,19 +4811,14 @@ __metadata: languageName: node linkType: hard -"ipaddr.js@npm:1.9.1": - version: 1.9.1 - resolution: "ipaddr.js@npm:1.9.1" - checksum: 10/864d0cced0c0832700e9621913a6429ccdc67f37c1bd78fb8c6789fff35c9d167cb329134acad2290497a53336813ab4798d2794fd675d5eb33b5fdf0982b9ca - languageName: node - linkType: hard - -"is-docker@npm:^2.0.0": - version: 2.2.1 - resolution: "is-docker@npm:2.2.1" +"is-ci@npm:^3.0.0": + version: 3.0.1 + resolution: "is-ci@npm:3.0.1" + dependencies: + ci-info: "npm:^3.2.0" bin: - is-docker: cli.js - checksum: 10/3fef7ddbf0be25958e8991ad941901bf5922ab2753c46980b60b05c1bf9c9c2402d35e6dc32e4380b980ef5e1970a5d9d5e5aa2e02d77727c3b6b5e918474c56 + is-ci: bin.js + checksum: 10/192c66dc7826d58f803ecae624860dccf1899fc1f3ac5505284c0a5cf5f889046ffeb958fa651e5725d5705c5bcb14f055b79150ea5fcad7456a9569de60260e languageName: node linkType: hard @@ -4258,10 +4845,10 @@ __metadata: languageName: node linkType: hard -"is-hotkey@npm:^0.2.0": - version: 0.2.0 - resolution: "is-hotkey@npm:0.2.0" - checksum: 10/d3d42026e70ea796fb9af8345e511de4b90eed55765eb67db8695f83e60bac8566ace16b191c08c7f6fab36c9318133a9f1c19eb9e5f8ce528d8a433e4b41190 +"is-interactive@npm:^1.0.0": + version: 1.0.0 + resolution: "is-interactive@npm:1.0.0" + checksum: 10/824808776e2d468b2916cdd6c16acacebce060d844c35ca6d82267da692e92c3a16fdba624c50b54a63f38bdc4016055b6f443ce57d7147240de4f8cdabaf6f9 languageName: node linkType: hard @@ -4279,40 +4866,31 @@ __metadata: languageName: node linkType: hard -"is-path-inside@npm:^3.0.3": - version: 3.0.3 - resolution: "is-path-inside@npm:3.0.3" - checksum: 10/abd50f06186a052b349c15e55b182326f1936c89a78bf6c8f2b707412517c097ce04bc49a0ca221787bc44e1049f51f09a2ffb63d22899051988d3a618ba13e9 - languageName: node - linkType: hard - -"is-plain-object@npm:^5.0.0": - version: 5.0.0 - resolution: "is-plain-object@npm:5.0.0" - checksum: 10/e32d27061eef62c0847d303125440a38660517e586f2f3db7c9d179ae5b6674ab0f469d519b2e25c147a1a3bc87156d0d5f4d8821e0ce4a9ee7fe1fcf11ce45c +"is-unicode-supported@npm:^0.1.0": + version: 0.1.0 + resolution: "is-unicode-supported@npm:0.1.0" + checksum: 10/a2aab86ee7712f5c2f999180daaba5f361bdad1efadc9610ff5b8ab5495b86e4f627839d085c6530363c6d6d4ecbde340fb8e54bdb83da4ba8e0865ed5513c52 languageName: node linkType: hard -"is-port-reachable@npm:4.0.0": - version: 4.0.0 - resolution: "is-port-reachable@npm:4.0.0" - checksum: 10/47b7e10db8edcef27fbf9e50f0de85ad368d35688790ca64a13db67260111ac5f4b98989b11af06199fa93f25d810bd09a5b21b2c2646529668638f7c34d3c04 +"isarray@npm:0.0.1": + version: 0.0.1 + resolution: "isarray@npm:0.0.1" + checksum: 10/49191f1425681df4a18c2f0f93db3adb85573bcdd6a4482539d98eac9e705d8961317b01175627e860516a2fc45f8f9302db26e5a380a97a520e272e2a40a8d4 languageName: node linkType: hard -"is-stream@npm:^2.0.0": - version: 2.0.1 - resolution: "is-stream@npm:2.0.1" - checksum: 10/b8e05ccdf96ac330ea83c12450304d4a591f9958c11fd17bed240af8d5ffe08aedafa4c0f4cfccd4d28dc9d4d129daca1023633d5c11601a6cbc77521f6fae66 +"isbinaryfile@npm:^4.0.8": + version: 4.0.10 + resolution: "isbinaryfile@npm:4.0.10" + checksum: 10/7f9dbf3e992a020cd3e6845ba49b47de93cda19edadf338bbf82f1453d7a14a73c390ea7f18a1940f09324089e470cce9ea001bd544aea52df641a658ed51c54 languageName: node linkType: hard -"is-wsl@npm:^2.2.0": - version: 2.2.0 - resolution: "is-wsl@npm:2.2.0" - dependencies: - is-docker: "npm:^2.0.0" - checksum: 10/20849846ae414997d290b75e16868e5261e86ff5047f104027026fd61d8b5a9b0b3ade16239f35e1a067b3c7cc02f70183cb661010ed16f4b6c7c93dad1b19d8 +"isbinaryfile@npm:^5.0.0": + version: 5.0.4 + resolution: "isbinaryfile@npm:5.0.4" + checksum: 10/6162e900b17e6c73da6138667d6b195ed234f9fd9d073e7c8c07ee36657e63b6a69d73da55f522d45a1928f5da4642b5d25d27e24ebd3bb68b83647d594bee79 languageName: node linkType: hard @@ -4343,7 +4921,21 @@ __metadata: languageName: node linkType: hard -"js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0": +"jake@npm:^10.8.5": + version: 10.9.2 + resolution: "jake@npm:10.9.2" + dependencies: + async: "npm:^3.2.3" + chalk: "npm:^4.0.2" + filelist: "npm:^1.0.4" + minimatch: "npm:^3.1.2" + bin: + jake: bin/cli.js + checksum: 10/3be324708f99f031e0aec49ef8fd872eb4583cbe8a29a0c875f554f6ac638ee4ea5aa759bb63723fd54f77ca6d7db851eaa78353301734ed3700db9cb109a0cd + languageName: node + linkType: hard + +"js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" checksum: 10/af37d0d913fb56aec6dc0074c163cc71cd23c0b8aad5c2350747b6721d37ba118af35abdd8b33c47ec2800de07dedb16a527ca9c530ee004093e04958bd0cbf2 @@ -4369,11 +4961,11 @@ __metadata: linkType: hard "jsesc@npm:^3.0.2": - version: 3.0.2 - resolution: "jsesc@npm:3.0.2" + version: 3.1.0 + resolution: "jsesc@npm:3.1.0" bin: jsesc: bin/jsesc - checksum: 10/8e5a7de6b70a8bd71f9cb0b5a7ade6a73ae6ab55e697c74cc997cede97417a3a65ed86c36f7dd6125fe49766e8386c845023d9e213916ca92c9dfdd56e2babf3 + checksum: 10/20bd37a142eca5d1794f354db8f1c9aeb54d85e1f5c247b371de05d23a9751ecd7bd3a9c4fc5298ea6fa09a100dafb4190fa5c98c6610b75952c3487f3ce7967 languageName: node linkType: hard @@ -4391,13 +4983,6 @@ __metadata: languageName: node linkType: hard -"json-schema-traverse@npm:^1.0.0": - version: 1.0.0 - resolution: "json-schema-traverse@npm:1.0.0" - checksum: 10/02f2f466cdb0362558b2f1fd5e15cce82ef55d60cd7f8fa828cf35ba74330f8d767fcae5c5c2adb7851fa811766c694b9405810879bc4e1ddd78a7c0e03658ad - languageName: node - linkType: hard - "json-stable-stringify-without-jsonify@npm:^1.0.1": version: 1.0.1 resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" @@ -4405,6 +4990,13 @@ __metadata: languageName: node linkType: hard +"json-stringify-safe@npm:^5.0.1": + version: 5.0.1 + resolution: "json-stringify-safe@npm:5.0.1" + checksum: 10/59169a081e4eeb6f9559ae1f938f656191c000e0512aa6df9f3c8b2437a4ab1823819c6b9fd1818a4e39593ccfd72e9a051fdd3e2d1e340ed913679e888ded8c + languageName: node + linkType: hard + "json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" @@ -4414,7 +5006,32 @@ __metadata: languageName: node linkType: hard -"keyv@npm:^4.5.3, keyv@npm:^4.5.4": +"jsonfile@npm:^4.0.0": + version: 4.0.0 + resolution: "jsonfile@npm:4.0.0" + dependencies: + graceful-fs: "npm:^4.1.6" + dependenciesMeta: + graceful-fs: + optional: true + checksum: 10/17796f0ab1be8479827d3683433f97ebe0a1c6932c3360fa40348eac36904d69269aab26f8b16da311882d94b42e9208e8b28e490bf926364f3ac9bff134c226 + languageName: node + linkType: hard + +"jsonfile@npm:^6.0.1": + version: 6.1.0 + resolution: "jsonfile@npm:6.1.0" + dependencies: + graceful-fs: "npm:^4.1.6" + universalify: "npm:^2.0.0" + dependenciesMeta: + graceful-fs: + optional: true + checksum: 10/03014769e7dc77d4cf05fa0b534907270b60890085dd5e4d60a382ff09328580651da0b8b4cdf44d91e4c8ae64d91791d965f05707beff000ed494a38b6fec85 + languageName: node + linkType: hard + +"keyv@npm:^4.0.0, keyv@npm:^4.5.4": version: 4.5.4 resolution: "keyv@npm:4.5.4" dependencies: @@ -4423,10 +5040,17 @@ __metadata: languageName: node linkType: hard -"ky@npm:^1.7.2": - version: 1.7.2 - resolution: "ky@npm:1.7.2" - checksum: 10/d1102fe05e5d2263c5b484bc00b387a5310667aaeec4ebc4f4c3f9369b1d2e62cc19409d50aa21b45127e3ddb8be42d76fb54239799b0aebc9806c7ecb35c696 +"ky@npm:^1.8.2": + version: 1.8.2 + resolution: "ky@npm:1.8.2" + checksum: 10/1550d1273b363768595ae2664d92db9404bf90d4ea45509b096b7ec989a6037ea27ab95bc1c52c9fdf92f0b406d112cae75f66115167f7df2adae8bfe8f543ac + languageName: node + linkType: hard + +"lazy-val@npm:^1.0.5": + version: 1.0.5 + resolution: "lazy-val@npm:1.0.5" + checksum: 10/31e12e0b118826dfae74f8f3ff8ebcddfe4200ff88d0d448db175c7265ee537e0ba55488d411728246337f3ed3c9ec68416f10889f632a2ce28fb7a970909fb5 languageName: node linkType: hard @@ -4449,10 +5073,17 @@ __metadata: languageName: node linkType: hard -"lodash-es@npm:^4.17.21": - version: 4.17.21 - resolution: "lodash-es@npm:4.17.21" - checksum: 10/03f39878ea1e42b3199bd3f478150ab723f93cc8730ad86fec1f2804f4a07c6e30deaac73cad53a88e9c3db33348bb8ceeb274552390e7a75d7849021c02df43 +"lodash.escaperegexp@npm:^4.1.2": + version: 4.1.2 + resolution: "lodash.escaperegexp@npm:4.1.2" + checksum: 10/6d99452b1cfd6073175a9b741a9b09ece159eac463f86f02ea3bee2e2092923fce812c8d2bf446309cc52d1d61bf9af51c8118b0d7421388e6cead7bd3798f0f + languageName: node + linkType: hard + +"lodash.isequal@npm:^4.5.0": + version: 4.5.0 + resolution: "lodash.isequal@npm:4.5.0" + checksum: 10/82fc58a83a1555f8df34ca9a2cd300995ff94018ac12cc47c349655f0ae1d4d92ba346db4c19bbfc90510764e0c00ddcc985a358bdcd4b3b965abf8f2a48a214 languageName: node linkType: hard @@ -4463,21 +5094,27 @@ __metadata: languageName: node linkType: hard -"lodash@npm:^4.17.21": +"lodash@npm:^4.17.15": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: 10/c08619c038846ea6ac754abd6dd29d2568aa705feb69339e836dfa8d8b09abbb2f859371e86863eda41848221f9af43714491467b5b0299122431e202bb0c532 languageName: node linkType: hard -"loose-envify@npm:^1.1.0": - version: 1.4.0 - resolution: "loose-envify@npm:1.4.0" +"log-symbols@npm:^4.1.0": + version: 4.1.0 + resolution: "log-symbols@npm:4.1.0" dependencies: - js-tokens: "npm:^3.0.0 || ^4.0.0" - bin: - loose-envify: cli.js - checksum: 10/6517e24e0cad87ec9888f500c5b5947032cdfe6ef65e1c1936a0c48a524b81e65542c9c3edc91c97d5bddc806ee2a985dbc79be89215d613b1de5db6d1cfe6f4 + chalk: "npm:^4.1.0" + is-unicode-supported: "npm:^0.1.0" + checksum: 10/fce1497b3135a0198803f9f07464165e9eb83ed02ceb2273930a6f8a508951178d8cf4f0378e9d28300a2ed2bc49050995d2bd5f53ab716bb15ac84d58c6ef74 + languageName: node + linkType: hard + +"lowercase-keys@npm:^2.0.0": + version: 2.0.0 + resolution: "lowercase-keys@npm:2.0.0" + checksum: 10/1c233d2da35056e8c49fae8097ee061b8c799b2f02e33c2bf32f9913c7de8fb481ab04dab7df35e94156c800f5f34e99acbf32b21781d87c3aa43ef7b748b79e languageName: node linkType: hard @@ -4497,44 +5134,94 @@ __metadata: languageName: node linkType: hard -"make-fetch-happen@npm:^13.0.0": - version: 13.0.1 - resolution: "make-fetch-happen@npm:13.0.1" +"lru-cache@npm:^6.0.0": + version: 6.0.0 + resolution: "lru-cache@npm:6.0.0" dependencies: - "@npmcli/agent": "npm:^2.0.0" - cacache: "npm:^18.0.0" - http-cache-semantics: "npm:^4.1.1" + yallist: "npm:^4.0.0" + checksum: 10/fc1fe2ee205f7c8855fa0f34c1ab0bcf14b6229e35579ec1fd1079f31d6fc8ef8eb6fd17f2f4d99788d7e339f50e047555551ebd5e434dda503696e7c6591825 + languageName: node + linkType: hard + +"lru-cache@npm:^7.7.1": + version: 7.18.3 + resolution: "lru-cache@npm:7.18.3" + checksum: 10/6029ca5aba3aacb554e919d7ef804fffd4adfc4c83db00fac8248c7c78811fb6d4b6f70f7fd9d55032b3823446546a007edaa66ad1f2377ae833bd983fac5d98 + languageName: node + linkType: hard + +"magic-string@npm:^0.30.17": + version: 0.30.17 + resolution: "magic-string@npm:0.30.17" + dependencies: + "@jridgewell/sourcemap-codec": "npm:^1.5.0" + checksum: 10/2f71af2b0afd78c2e9012a29b066d2c8ba45a9cd0c8070f7fd72de982fb1c403b4e3afdb1dae00691d56885ede66b772ef6bedf765e02e3a7066208fe2fec4aa + languageName: node + linkType: hard + +"make-fetch-happen@npm:^10.2.1": + version: 10.2.1 + resolution: "make-fetch-happen@npm:10.2.1" + dependencies: + agentkeepalive: "npm:^4.2.1" + cacache: "npm:^16.1.0" + http-cache-semantics: "npm:^4.1.0" + http-proxy-agent: "npm:^5.0.0" + https-proxy-agent: "npm:^5.0.0" is-lambda: "npm:^1.0.1" - minipass: "npm:^7.0.2" - minipass-fetch: "npm:^3.0.0" + lru-cache: "npm:^7.7.1" + minipass: "npm:^3.1.6" + minipass-collect: "npm:^1.0.2" + minipass-fetch: "npm:^2.0.3" minipass-flush: "npm:^1.0.5" minipass-pipeline: "npm:^1.2.4" negotiator: "npm:^0.6.3" - proc-log: "npm:^4.2.0" promise-retry: "npm:^2.0.1" - ssri: "npm:^10.0.0" - checksum: 10/11bae5ad6ac59b654dbd854f30782f9de052186c429dfce308eda42374528185a100ee40ac9ffdc36a2b6c821ecaba43913e4730a12f06f15e895ea9cb23fa59 + socks-proxy-agent: "npm:^7.0.0" + ssri: "npm:^9.0.0" + checksum: 10/fef5acb865a46f25ad0b5ad7d979799125db5dbb24ea811ffa850fbb804bc8e495df2237a8ec3a4fc6250e73c2f95549cca6d6d36a73b1faa61224504eb1188f languageName: node linkType: hard -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: 10/38e0984db39139604756903a01397e29e17dcb04207bb3e081412ce725ab17338ecc47220c1b186b6bbe79a658aad1b0d41142884f5a481f36290cdefbe6aa46 +"make-fetch-happen@npm:^14.0.3": + version: 14.0.3 + resolution: "make-fetch-happen@npm:14.0.3" + dependencies: + "@npmcli/agent": "npm:^3.0.0" + cacache: "npm:^19.0.1" + http-cache-semantics: "npm:^4.1.1" + minipass: "npm:^7.0.2" + minipass-fetch: "npm:^4.0.0" + minipass-flush: "npm:^1.0.5" + minipass-pipeline: "npm:^1.2.4" + negotiator: "npm:^1.0.0" + proc-log: "npm:^5.0.0" + promise-retry: "npm:^2.0.1" + ssri: "npm:^12.0.0" + checksum: 10/fce0385840b6d86b735053dfe941edc2dd6468fda80fe74da1eeff10cbd82a75760f406194f2bc2fa85b99545b2bc1f84c08ddf994b21830775ba2d1a87e8bdf languageName: node linkType: hard -"merge-descriptors@npm:1.0.3": - version: 1.0.3 - resolution: "merge-descriptors@npm:1.0.3" - checksum: 10/52117adbe0313d5defa771c9993fe081e2d2df9b840597e966aadafde04ae8d0e3da46bac7ca4efc37d4d2b839436582659cd49c6a43eacb3fe3050896a105d1 +"matcher@npm:^3.0.0": + version: 3.0.0 + resolution: "matcher@npm:3.0.0" + dependencies: + escape-string-regexp: "npm:^4.0.0" + checksum: 10/8bee1a7ab7609c2c21d9c9254b6785fa708eadf289032b556d57a34e98fcd4c537659a004dafee6ce80ab157099e645c199dc52678dff1e7fb0a6684e0da4dbe languageName: node linkType: hard -"merge-stream@npm:^2.0.0": - version: 2.0.0 - resolution: "merge-stream@npm:2.0.0" - checksum: 10/6fa4dcc8d86629705cea944a4b88ef4cb0e07656ebf223fa287443256414283dd25d91c1cd84c77987f2aec5927af1a9db6085757cb43d90eb170ebf4b47f4f4 +"math-intrinsics@npm:^1.1.0": + version: 1.1.0 + resolution: "math-intrinsics@npm:1.1.0" + checksum: 10/11df2eda46d092a6035479632e1ec865b8134bdfc4bd9e571a656f4191525404f13a283a515938c3a8de934dbfd9c09674d9da9fa831e6eb7e22b50b197d2edd + languageName: node + linkType: hard + +"meow@npm:*": + version: 13.2.0 + resolution: "meow@npm:13.2.0" + checksum: 10/4eff5bc921fed0b8a471ad79069d741a0210036d717547d0c7f36fdaf84ef7a3036225f38b6a53830d84dc9cbf8b944b097fde62381b8b5b215119e735ce1063 languageName: node linkType: hard @@ -4545,13 +5232,6 @@ __metadata: languageName: node linkType: hard -"methods@npm:~1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 10/a385dd974faa34b5dd021b2bbf78c722881bf6f003bfe6d391d7da3ea1ed625d1ff10ddd13c57531f628b3e785be38d3eed10ad03cebd90b76932413df9a1820 - languageName: node - linkType: hard - "micromatch@npm:^4.0.4": version: 4.0.8 resolution: "micromatch@npm:4.0.8" @@ -4569,30 +5249,7 @@ __metadata: languageName: node linkType: hard -"mime-db@npm:>= 1.43.0 < 2": - version: 1.53.0 - resolution: "mime-db@npm:1.53.0" - checksum: 10/82409c568a20254cc67a763a25e581d2213e1ef5d070a0af805239634f8a655f5d8a15138200f5f81c5b06fc6623d27f6168c612d447642d59e37eb7f20f7412 - languageName: node - linkType: hard - -"mime-db@npm:~1.33.0": - version: 1.33.0 - resolution: "mime-db@npm:1.33.0" - checksum: 10/b3b89cff1d3569d02280f8d5b3b6e3c6df4dd340647b48228b2624293a73da0a7c784712aec8eac0aaccd353ac04b4d50309ab9f6a87d7ee79b4dca0ebb70ed8 - languageName: node - linkType: hard - -"mime-types@npm:2.1.18": - version: 2.1.18 - resolution: "mime-types@npm:2.1.18" - dependencies: - mime-db: "npm:~1.33.0" - checksum: 10/65d69085abda6732d4372e9874018fbe491894ff25f7329b8c8815fe40989599488567e08dcee39f1bb54729c4311fb660195ab551603d1cb97d7f2bf33ca8a2 - languageName: node - linkType: hard - -"mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": +"mime-types@npm:^2.1.12": version: 2.1.35 resolution: "mime-types@npm:2.1.35" dependencies: @@ -4601,12 +5258,12 @@ __metadata: languageName: node linkType: hard -"mime@npm:1.6.0": - version: 1.6.0 - resolution: "mime@npm:1.6.0" +"mime@npm:^2.5.2": + version: 2.6.0 + resolution: "mime@npm:2.6.0" bin: mime: cli.js - checksum: 10/b7d98bb1e006c0e63e2c91b590fe1163b872abf8f7ef224d53dd31499c2197278a6d3d0864c45239b1a93d22feaf6f9477e9fc847eef945838150b8c02d03170 + checksum: 10/7da117808b5cd0203bb1b5e33445c330fe213f4d8ee2402a84d62adbde9716ca4fb90dd6d9ab4e77a4128c6c5c24a9c4c9f6a4d720b095b1b342132d02dba58d languageName: node linkType: hard @@ -4617,7 +5274,30 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:3.1.2, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": +"mimic-response@npm:^1.0.0": + version: 1.0.1 + resolution: "mimic-response@npm:1.0.1" + checksum: 10/034c78753b0e622bc03c983663b1cdf66d03861050e0c8606563d149bc2b02d63f62ce4d32be4ab50d0553ae0ffe647fc34d1f5281184c6e1e8cf4d85e8d9823 + languageName: node + linkType: hard + +"mimic-response@npm:^3.1.0": + version: 3.1.0 + resolution: "mimic-response@npm:3.1.0" + checksum: 10/7e719047612411fe071332a7498cf0448bbe43c485c0d780046c76633a771b223ff49bd00267be122cedebb897037fdb527df72335d0d0f74724604ca70b37ad + languageName: node + linkType: hard + +"minimatch@npm:^10.0.0": + version: 10.0.3 + resolution: "minimatch@npm:10.0.3" + dependencies: + "@isaacs/brace-expansion": "npm:^5.0.0" + checksum: 10/d5b8b2538b367f2cfd4aeef27539fddeee58d1efb692102b848e4a968a09780a302c530eb5aacfa8c57f7299155fb4b4e85219ad82664dcef5c66f657111d9b8 + languageName: node + linkType: hard + +"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" dependencies: @@ -4626,7 +5306,16 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^9.0.4": +"minimatch@npm:^5.0.1": + version: 5.1.6 + resolution: "minimatch@npm:5.1.6" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10/126b36485b821daf96d33b5c821dac600cc1ab36c87e7a532594f9b1652b1fa89a1eebcaad4dff17c764dce1a7ac1531327f190fed5f97d8f6e5f889c116c429 + languageName: node + linkType: hard + +"minimatch@npm:^9.0.3, minimatch@npm:^9.0.4": version: 9.0.5 resolution: "minimatch@npm:9.0.5" dependencies: @@ -4635,13 +5324,22 @@ __metadata: languageName: node linkType: hard -"minimist@npm:^1.2.0": +"minimist@npm:^1.2.5, minimist@npm:^1.2.6": version: 1.2.8 resolution: "minimist@npm:1.2.8" checksum: 10/908491b6cc15a6c440ba5b22780a0ba89b9810e1aea684e253e43c4e3b8d56ec1dcdd7ea96dde119c29df59c936cde16062159eae4225c691e19c70b432b6e6f languageName: node linkType: hard +"minipass-collect@npm:^1.0.2": + version: 1.0.2 + resolution: "minipass-collect@npm:1.0.2" + dependencies: + minipass: "npm:^3.0.0" + checksum: 10/14df761028f3e47293aee72888f2657695ec66bd7d09cae7ad558da30415fdc4752bbfee66287dcc6fd5e6a2fa3466d6c484dc1cbd986525d9393b9523d97f10 + languageName: node + linkType: hard + "minipass-collect@npm:^2.0.1": version: 2.0.1 resolution: "minipass-collect@npm:2.0.1" @@ -4651,18 +5349,33 @@ __metadata: languageName: node linkType: hard -"minipass-fetch@npm:^3.0.0": - version: 3.0.5 - resolution: "minipass-fetch@npm:3.0.5" +"minipass-fetch@npm:^2.0.3": + version: 2.1.2 + resolution: "minipass-fetch@npm:2.1.2" dependencies: encoding: "npm:^0.1.13" - minipass: "npm:^7.0.3" + minipass: "npm:^3.1.6" minipass-sized: "npm:^1.0.3" minizlib: "npm:^2.1.2" dependenciesMeta: encoding: optional: true - checksum: 10/c669948bec1373313aaa8f104b962a3ced9f45c49b26366a4b0ae27ccdfa9c5740d72c8a84d3f8623d7a61c5fc7afdfda44789008c078f61a62441142efc4a97 + checksum: 10/8cfc589563ae2a11eebbf79121ef9a526fd078fca949ed3f1e4a51472ca4a4aad89fcea1738982ce9d7d833116ecc9c6ae9ebbd844832a94e3f4a3d4d1b9d3b9 + languageName: node + linkType: hard + +"minipass-fetch@npm:^4.0.0": + version: 4.0.1 + resolution: "minipass-fetch@npm:4.0.1" + dependencies: + encoding: "npm:^0.1.13" + minipass: "npm:^7.0.3" + minipass-sized: "npm:^1.0.3" + minizlib: "npm:^3.0.1" + dependenciesMeta: + encoding: + optional: true + checksum: 10/7ddfebdbb87d9866e7b5f7eead5a9e3d9d507992af932a11d275551f60006cf7d9178e66d586dbb910894f3e3458d27c0ddf93c76e94d49d0a54a541ddc1263d languageName: node linkType: hard @@ -4693,7 +5406,7 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^3.0.0": +"minipass@npm:^3.0.0, minipass@npm:^3.1.1, minipass@npm:^3.1.6": version: 3.3.6 resolution: "minipass@npm:3.3.6" dependencies: @@ -4709,7 +5422,7 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.1.2": +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": version: 7.1.2 resolution: "minipass@npm:7.1.2" checksum: 10/c25f0ee8196d8e6036661104bacd743785b2599a21de5c516b32b3fa2b83113ac89a2358465bc04956baab37ffb956ae43be679b2262bf7be15fce467ccd7950 @@ -4726,7 +5439,16 @@ __metadata: languageName: node linkType: hard -"mkdirp@npm:^1.0.3": +"minizlib@npm:^3.0.1": + version: 3.0.2 + resolution: "minizlib@npm:3.0.2" + dependencies: + minipass: "npm:^7.1.2" + checksum: 10/c075bed1594f68dcc8c35122333520112daefd4d070e5d0a228bd4cf5580e9eed3981b96c0ae1d62488e204e80fd27b2b9d0068ca9a5ef3993e9565faf63ca41 + languageName: node + linkType: hard + +"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" bin: @@ -4735,35 +5457,57 @@ __metadata: languageName: node linkType: hard -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 10/0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 +"mkdirp@npm:^3.0.1": + version: 3.0.1 + resolution: "mkdirp@npm:3.0.1" + bin: + mkdirp: dist/cjs/src/bin.js + checksum: 10/16fd79c28645759505914561e249b9a1f5fe3362279ad95487a4501e4467abeb714fd35b95307326b8fd03f3c7719065ef11a6f97b7285d7888306d1bd2232ba languageName: node linkType: hard -"ms@npm:2.1.3, ms@npm:^2.1.3": +"module@workspace:^, module@workspace:frontend/module": + version: 0.0.0-use.local + resolution: "module@workspace:frontend/module" + dependencies: + "@enun/react": "npm:^0.4.1" + "@enun/state": "npm:^0.1.1" + "@flexive/core": "npm:^0.6.0" + "@tanstack/react-query": "npm:^5.87.1" + "@types/node": "npm:^24.1.0" + "@types/react": "npm:^19.1.8" + "@types/react-dom": "npm:^19.1.6" + design: "workspace:^" + react: "npm:^19.1.0" + react-dom: "npm:^19.1.0" + sass-embedded: "npm:^1.89.2" + types: "workspace:^" + typescript: "npm:^5" + languageName: unknown + linkType: soft + +"ms@npm:^2.0.0, ms@npm:^2.1.3": version: 2.1.3 resolution: "ms@npm:2.1.3" checksum: 10/aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d languageName: node linkType: hard -"nanoid@npm:^3.3.7": - version: 3.3.7 - resolution: "nanoid@npm:3.3.7" +"nanoid@npm:^3.3.11": + version: 3.3.11 + resolution: "nanoid@npm:3.3.11" bin: nanoid: bin/nanoid.cjs - checksum: 10/ac1eb60f615b272bccb0e2b9cd933720dad30bf9708424f691b8113826bb91aca7e9d14ef5d9415a6ba15c266b37817256f58d8ce980c82b0ba3185352565679 + checksum: 10/73b5afe5975a307aaa3c95dfe3334c52cdf9ae71518176895229b8d65ab0d1c0417dd081426134eb7571c055720428ea5d57c645138161e7d10df80815527c48 languageName: node linkType: hard -"nanoid@npm:^5.0.7, nanoid@npm:^5.0.8": - version: 5.0.8 - resolution: "nanoid@npm:5.0.8" +"nanoid@npm:^5.1.5": + version: 5.1.5 + resolution: "nanoid@npm:5.1.5" bin: nanoid: bin/nanoid.js - checksum: 10/df131a515465053ff25c8cf0450ef191e1db83b45fe125af43f50d39feddf1f161d3b2abb34cb993df35a76b427f8d6d982e16e47d67b2fbe843664af025b5e2 + checksum: 10/6de2d006b51c983be385ef7ee285f7f2a57bd96f8c0ca881c4111461644bd81fafc2544f8e07cb834ca0f3e0f3f676c1fe78052183f008b0809efe6e273119f5 languageName: node linkType: hard @@ -4774,84 +5518,111 @@ __metadata: languageName: node linkType: hard -"negotiator@npm:0.6.3, negotiator@npm:^0.6.3": - version: 0.6.3 - resolution: "negotiator@npm:0.6.3" - checksum: 10/2723fb822a17ad55c93a588a4bc44d53b22855bf4be5499916ca0cab1e7165409d0b288ba2577d7b029f10ce18cf2ed8e703e5af31c984e1e2304277ef979837 +"negotiator@npm:^0.6.3": + version: 0.6.4 + resolution: "negotiator@npm:0.6.4" + checksum: 10/d98c04a136583afd055746168f1067d58ce4bfe6e4c73ca1d339567f81ea1f7e665b5bd1e81f4771c67b6c2ea89b21cb2adaea2b16058c7dc31317778f931dab + languageName: node + linkType: hard + +"negotiator@npm:^1.0.0": + version: 1.0.0 + resolution: "negotiator@npm:1.0.0" + checksum: 10/b5734e87295324fabf868e36fb97c84b7d7f3156ec5f4ee5bf6e488079c11054f818290fc33804cef7b1ee21f55eeb14caea83e7dafae6492a409b3e573153e5 + languageName: node + linkType: hard + +"node-abi@npm:^3.45.0": + version: 3.75.0 + resolution: "node-abi@npm:3.75.0" + dependencies: + semver: "npm:^7.3.5" + checksum: 10/dd87627fa4f447bda9c69dc1ec0da82e3b466790844b5bd7f7787db093dfea21dcc405588e13b5207c266472c1fda9b95060da8d70644aeb5fc31ec81dc2007c + languageName: node + linkType: hard + +"node-addon-api@npm:^1.6.3": + version: 1.7.2 + resolution: "node-addon-api@npm:1.7.2" + dependencies: + node-gyp: "npm:latest" + checksum: 10/6bf8217a8cd8148f4bbfd319b46d33587e9fb2e63e3c856ded67a76715167f7a6b17e1d9b8bbf3b8508befeb6a4adb10d92b8998ed5c19ca8448343f4cea11d6 + languageName: node + linkType: hard + +"node-api-version@npm:^0.2.0": + version: 0.2.1 + resolution: "node-api-version@npm:0.2.1" + dependencies: + semver: "npm:^7.3.5" + checksum: 10/78a3056873a8a15c4b0f3ed1f64d294fe4e0ba4a4d08b5f9cfa06a8586ff9bc7c942ef17648171b000d7343d216b7e07dc4787d6ba98307f0a2de9ef13722f3a languageName: node linkType: hard "node-gyp@npm:latest": - version: 10.2.0 - resolution: "node-gyp@npm:10.2.0" + version: 11.2.0 + resolution: "node-gyp@npm:11.2.0" dependencies: env-paths: "npm:^2.2.0" exponential-backoff: "npm:^3.1.1" - glob: "npm:^10.3.10" graceful-fs: "npm:^4.2.6" - make-fetch-happen: "npm:^13.0.0" - nopt: "npm:^7.0.0" - proc-log: "npm:^4.1.0" + make-fetch-happen: "npm:^14.0.3" + nopt: "npm:^8.0.0" + proc-log: "npm:^5.0.0" semver: "npm:^7.3.5" - tar: "npm:^6.2.1" - which: "npm:^4.0.0" + tar: "npm:^7.4.3" + tinyglobby: "npm:^0.2.12" + which: "npm:^5.0.0" bin: node-gyp: bin/node-gyp.js - checksum: 10/41773093b1275751dec942b985982fd4e7a69b88cae719b868babcef3880ee6168aaec8dcaa8cd0b9fa7c84873e36cc549c6cac6a124ee65ba4ce1f1cc108cfe + checksum: 10/806fd8e3adc9157e17bf0d4a2c899cf6b98a0bbe9f453f630094ce791866271f6cddcaf2133e6513715d934fcba2014d287c7053d5d7934937b3a34d5a3d84ad languageName: node linkType: hard -"node-releases@npm:^2.0.18": - version: 2.0.18 - resolution: "node-releases@npm:2.0.18" - checksum: 10/241e5fa9556f1c12bafb83c6c3e94f8cf3d8f2f8f904906ecef6e10bcaa1d59aa61212d4651bec70052015fc54bd3fdcdbe7fc0f638a17e6685aa586c076ec4e +"node-releases@npm:^2.0.19": + version: 2.0.19 + resolution: "node-releases@npm:2.0.19" + checksum: 10/c2b33b4f0c40445aee56141f13ca692fa6805db88510e5bbb3baadb2da13e1293b738e638e15e4a8eb668bb9e97debb08e7a35409b477b5cc18f171d35a83045 languageName: node linkType: hard -"nopt@npm:^7.0.0": - version: 7.2.1 - resolution: "nopt@npm:7.2.1" +"nopt@npm:^6.0.0": + version: 6.0.0 + resolution: "nopt@npm:6.0.0" dependencies: - abbrev: "npm:^2.0.0" + abbrev: "npm:^1.0.0" bin: nopt: bin/nopt.js - checksum: 10/95a1f6dec8a81cd18cdc2fed93e6f0b4e02cf6bdb4501c848752c6e34f9883d9942f036a5e3b21a699047d8a448562d891e67492df68ec9c373e6198133337ae + checksum: 10/3c1128e07cd0241ae66d6e6a472170baa9f3e84dd4203950ba8df5bafac4efa2166ce917a57ef02b01ba7c40d18b2cc64b29b225fd3640791fe07b24f0b33a32 languageName: node linkType: hard -"npm-run-path@npm:^4.0.1": - version: 4.0.1 - resolution: "npm-run-path@npm:4.0.1" +"nopt@npm:^8.0.0": + version: 8.1.0 + resolution: "nopt@npm:8.1.0" dependencies: - path-key: "npm:^3.0.0" - checksum: 10/5374c0cea4b0bbfdfae62da7bbdf1e1558d338335f4cacf2515c282ff358ff27b2ecb91ffa5330a8b14390ac66a1e146e10700440c1ab868208430f56b5f4d23 - languageName: node - linkType: hard - -"object-inspect@npm:^1.13.1": - version: 1.13.2 - resolution: "object-inspect@npm:1.13.2" - checksum: 10/7ef65583b6397570a17c56f0c1841e0920e83900f2c94638927abb7b81ac08a19c7aae135bd9dcca96208cac0c7332b4650fb927f027b0cf92d71df2990d0561 + abbrev: "npm:^3.0.0" + bin: + nopt: bin/nopt.js + checksum: 10/26ab456c51a96f02a9e5aa8d1b80ef3219f2070f3f3528a040e32fb735b1e651e17bdf0f1476988d3a46d498f35c65ed662d122f340d38ce4a7e71dd7b20c4bc languageName: node linkType: hard -"on-finished@npm:2.4.1": - version: 2.4.1 - resolution: "on-finished@npm:2.4.1" - dependencies: - ee-first: "npm:1.1.1" - checksum: 10/8e81472c5028125c8c39044ac4ab8ba51a7cdc19a9fbd4710f5d524a74c6d8c9ded4dd0eed83f28d3d33ac1d7a6a439ba948ccb765ac6ce87f30450a26bfe2ea +"normalize-url@npm:^6.0.1": + version: 6.1.0 + resolution: "normalize-url@npm:6.1.0" + checksum: 10/5ae699402c9d5ffa330adc348fcd6fc6e6a155ab7c811b96e30b7ecab60ceef821d8f86443869671dda71bbc47f4b9625739c82ad247e883e9aefe875bfb8659 languageName: node linkType: hard -"on-headers@npm:~1.0.2": - version: 1.0.2 - resolution: "on-headers@npm:1.0.2" - checksum: 10/870766c16345855e2012e9422ba1ab110c7e44ad5891a67790f84610bd70a72b67fdd71baf497295f1d1bf38dd4c92248f825d48729c53c0eae5262fb69fa171 +"object-keys@npm:^1.1.1": + version: 1.1.1 + resolution: "object-keys@npm:1.1.1" + checksum: 10/3d81d02674115973df0b7117628ea4110d56042e5326413e4b4313f0bcdf7dd78d4a3acef2c831463fa3796a66762c49daef306f4a0ea1af44877d7086d73bde languageName: node linkType: hard -"once@npm:^1.3.0": +"once@npm:^1.3.0, once@npm:^1.3.1, once@npm:^1.4.0": version: 1.4.0 resolution: "once@npm:1.4.0" dependencies: @@ -4860,7 +5631,7 @@ __metadata: languageName: node linkType: hard -"onetime@npm:^5.1.2": +"onetime@npm:^5.1.0": version: 5.1.2 resolution: "onetime@npm:5.1.2" dependencies: @@ -4883,7 +5654,46 @@ __metadata: languageName: node linkType: hard -"p-limit@npm:^3.0.2": +"ora@npm:^5.1.0": + version: 5.4.1 + resolution: "ora@npm:5.4.1" + dependencies: + bl: "npm:^4.1.0" + chalk: "npm:^4.1.0" + cli-cursor: "npm:^3.1.0" + cli-spinners: "npm:^2.5.0" + is-interactive: "npm:^1.0.0" + is-unicode-supported: "npm:^0.1.0" + log-symbols: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + wcwidth: "npm:^1.0.1" + checksum: 10/8d071828f40090a8e1c6e8f350c6eb065808e9ab2b3e57fa37e0d5ae78cb46dac00117c8f12c3c8b8da2923454afbd8265e08c10b69881170c5b269f451e7fef + languageName: node + linkType: hard + +"otf2ttf@npm:^1.1.2": + version: 1.1.2 + resolution: "otf2ttf@npm:1.1.2" + dependencies: + async: "npm:^0.9.0" + colors: "npm:^1.0.3" + through2: "npm:^0.6.3" + tracer: "npm:^0.7.3" + vinyl: "npm:^0.4.6" + bin: + otf2ttf: cli.js + checksum: 10/fb7993f98360ec0e62b7bbc410cde7e0e6fe3edf1a8e1dbf2331719438f887ccdf6068aee56e1e96a4c9350a24f114479c19ce426eea3a26329e93454c69bf9e + languageName: node + linkType: hard + +"p-cancelable@npm:^2.0.0": + version: 2.1.1 + resolution: "p-cancelable@npm:2.1.1" + checksum: 10/7f1b64db17fc54acf359167d62898115dcf2a64bf6b3b038e4faf36fc059e5ed762fb9624df8ed04b25bee8de3ab8d72dea9879a2a960cd12e23c420a4aca6ed + languageName: node + linkType: hard + +"p-limit@npm:^3.0.2, p-limit@npm:^3.1.0 ": version: 3.1.0 resolution: "p-limit@npm:3.1.0" dependencies: @@ -4910,6 +5720,13 @@ __metadata: languageName: node linkType: hard +"p-map@npm:^7.0.2": + version: 7.0.3 + resolution: "p-map@npm:7.0.3" + checksum: 10/2ef48ccfc6dd387253d71bf502604f7893ed62090b2c9d73387f10006c342606b05233da0e4f29388227b61eb5aeface6197e166520c465c234552eeab2fe633 + languageName: node + linkType: hard + "package-json-from-dist@npm:^1.0.0": version: 1.0.1 resolution: "package-json-from-dist@npm:1.0.1" @@ -4917,6 +5734,13 @@ __metadata: languageName: node linkType: hard +"pako@npm:^1.0.0": + version: 1.0.11 + resolution: "pako@npm:1.0.11" + checksum: 10/1ad07210e894472685564c4d39a08717e84c2a68a70d3c1d9e657d32394ef1670e22972a433cbfe48976cb98b154ba06855dcd3fcfba77f60f1777634bec48c0 + languageName: node + linkType: hard + "parent-module@npm:^1.0.0": version: 1.0.1 resolution: "parent-module@npm:1.0.1" @@ -4926,13 +5750,6 @@ __metadata: languageName: node linkType: hard -"parseurl@npm:~1.3.3": - version: 1.3.3 - resolution: "parseurl@npm:1.3.3" - checksum: 10/407cee8e0a3a4c5cd472559bca8b6a45b82c124e9a4703302326e9ab60fc1081442ada4e02628efef1eb16197ddc7f8822f5a91fd7d7c86b51f530aedb17dfa2 - languageName: node - linkType: hard - "path-exists@npm:^4.0.0": version: 4.0.0 resolution: "path-exists@npm:4.0.0" @@ -4947,14 +5764,7 @@ __metadata: languageName: node linkType: hard -"path-is-inside@npm:1.0.2": - version: 1.0.2 - resolution: "path-is-inside@npm:1.0.2" - checksum: 10/0b5b6c92d3018b82afb1f74fe6de6338c4c654de4a96123cb343f2b747d5606590ac0c890f956ed38220a4ab59baddfd7b713d78a62d240b20b14ab801fa02cb - languageName: node - linkType: hard - -"path-key@npm:^3.0.0, path-key@npm:^3.1.0": +"path-key@npm:^3.1.0": version: 3.1.1 resolution: "path-key@npm:3.1.1" checksum: 10/55cd7a9dd4b343412a8386a743f9c746ef196e57c823d90ca3ab917f90ab9f13dd0ded27252ba49dbdfcab2b091d998bc446f6220cd3cea65db407502a740020 @@ -4971,21 +5781,102 @@ __metadata: languageName: node linkType: hard -"path-to-regexp@npm:0.1.10": - version: 0.1.10 - resolution: "path-to-regexp@npm:0.1.10" - checksum: 10/894e31f1b20e592732a87db61fff5b95c892a3fe430f9ab18455ebe69ee88ef86f8eb49912e261f9926fc53da9f93b46521523e33aefd9cb0a7b0d85d7096006 +"pe-library@npm:^0.4.1": + version: 0.4.1 + resolution: "pe-library@npm:0.4.1" + checksum: 10/39aa0a756a6521b23326fbb2ccaa157406feb695146aa32f9a2b901c6a6d788ae290a2d3272880df2bc514ad73cd9b2e5fcd4ef4968bcaf626d7a9459a8c7d31 + languageName: node + linkType: hard + +"pend@npm:~1.2.0": + version: 1.2.0 + resolution: "pend@npm:1.2.0" + checksum: 10/6c72f5243303d9c60bd98e6446ba7d30ae29e3d56fdb6fae8767e8ba6386f33ee284c97efe3230a0d0217e2b1723b8ab490b1bbf34fcbb2180dbc8a9de47850d + languageName: node + linkType: hard + +"pg-cloudflare@npm:^1.2.7": + version: 1.2.7 + resolution: "pg-cloudflare@npm:1.2.7" + checksum: 10/3d171407cbce36436c461200666ba6bd884bfe98016972760a797cec850199b8024a40055d80322c5fc02909e1533a144e9b108a99f7d7e21d0c42612f9821fb + languageName: node + linkType: hard + +"pg-connection-string@npm:^2.9.1": + version: 2.9.1 + resolution: "pg-connection-string@npm:2.9.1" + checksum: 10/40e9e9cd752121e72bff18d83e6c7ecda9056426815a84294de018569a319293c924704c8b7f0604fdc588835c7927647dea4f3c87a014e715bcbb17d794e9f0 + languageName: node + linkType: hard + +"pg-int8@npm:1.0.1": + version: 1.0.1 + resolution: "pg-int8@npm:1.0.1" + checksum: 10/a1e3a05a69005ddb73e5f324b6b4e689868a447c5fa280b44cd4d04e6916a344ac289e0b8d2695d66e8e89a7fba023affb9e0e94778770ada5df43f003d664c9 + languageName: node + linkType: hard + +"pg-pool@npm:^3.10.1": + version: 3.10.1 + resolution: "pg-pool@npm:3.10.1" + peerDependencies: + pg: ">=8.0" + checksum: 10/b389a714be59ebe53ec412cbff513191cc0b7a203faa5d26416b6a038cafdfe30fbf1a5936b77bb76109c49bd7c4a116870a5a46a45796b1b34c96f016d7fbe2 + languageName: node + linkType: hard + +"pg-protocol@npm:*, pg-protocol@npm:^1.10.3": + version: 1.10.3 + resolution: "pg-protocol@npm:1.10.3" + checksum: 10/31da85319084c03f403efee7accce9786964df82a7feb60e6bd77b71f1e622c74a2a644a2bc434389d0ab92e5abdeedea69ebdb53b1897d9f01d2a1f51a8a2fe + languageName: node + linkType: hard + +"pg-types@npm:2.2.0, pg-types@npm:^2.2.0": + version: 2.2.0 + resolution: "pg-types@npm:2.2.0" + dependencies: + pg-int8: "npm:1.0.1" + postgres-array: "npm:~2.0.0" + postgres-bytea: "npm:~1.0.0" + postgres-date: "npm:~1.0.4" + postgres-interval: "npm:^1.1.0" + checksum: 10/87a84d4baa91378d3a3da6076c69685eb905d1087bf73525ae1ba84b291b9dd8738c6716b333d8eac6cec91bf087237adc3e9281727365e9cbab0d9d072778b1 + languageName: node + linkType: hard + +"pg@npm:^8.16.3": + version: 8.16.3 + resolution: "pg@npm:8.16.3" + dependencies: + pg-cloudflare: "npm:^1.2.7" + pg-connection-string: "npm:^2.9.1" + pg-pool: "npm:^3.10.1" + pg-protocol: "npm:^1.10.3" + pg-types: "npm:2.2.0" + pgpass: "npm:1.0.5" + peerDependencies: + pg-native: ">=3.0.1" + dependenciesMeta: + pg-cloudflare: + optional: true + peerDependenciesMeta: + pg-native: + optional: true + checksum: 10/6a2885a3f581d6c6dddddf5a4bb2790ee84f402ed7d73ece8b6bc102c58c17e4c5f17894c241633aa2f1d4fedd8f2401a80a9a02ef18bb57d05cbbfd8a53ca4d languageName: node linkType: hard -"path-to-regexp@npm:3.3.0": - version: 3.3.0 - resolution: "path-to-regexp@npm:3.3.0" - checksum: 10/8d256383af8db66233ee9027cfcbf8f5a68155efbb4f55e784279d3ab206dcaee554ddb72ff0dae97dd2882af9f7fa802634bb7cffa2e796927977e31b829259 +"pgpass@npm:1.0.5": + version: 1.0.5 + resolution: "pgpass@npm:1.0.5" + dependencies: + split2: "npm:^4.1.0" + checksum: 10/0a6f3bf76e36bdb3c20a7e8033140c732767bba7e81f845f7489fc3123a2bd6e3b8e704f08cba86b117435414b5d2422e20ba9d5f2efb6f0c75c9efca73e8e87 languageName: node linkType: hard -"picocolors@npm:^1.0.0, picocolors@npm:^1.1.0, picocolors@npm:^1.1.1": +"picocolors@npm:^1.1.1": version: 1.1.1 resolution: "picocolors@npm:1.1.1" checksum: 10/e1cf46bf84886c79055fdfa9dcb3e4711ad259949e3565154b004b260cd356c5d54b31a1437ce9782624bf766272fe6b0154f5f0c744fb7af5d454d2b60db045 @@ -4999,48 +5890,62 @@ __metadata: languageName: node linkType: hard -"pilot@workspace:service/pilot": - version: 0.0.0-use.local - resolution: "pilot@workspace:service/pilot" - dependencies: - "@eslint/js": "npm:^9.9.0" - "@flexive/core": "npm:^0.4.8" - "@types/react": "npm:^18.3.3" - "@types/react-dom": "npm:^18.3.0" - "@vitejs/plugin-react": "npm:^4.3.1" - dayjs: "npm:^1.11.13" - eslint: "npm:^9.9.0" - eslint-plugin-react-hooks: "npm:^5.1.0-rc.0" - eslint-plugin-react-refresh: "npm:^0.4.9" - globals: "npm:^15.9.0" - react: "npm:^18.3.1" - react-dom: "npm:^18.3.1" - react-router-dom: "npm:^6.26.2" - typescript: "npm:^5.5.3" - typescript-eslint: "npm:^8.0.1" - vite: "npm:^5.4.1" - languageName: unknown - linkType: soft +"picomatch@npm:^4.0.2": + version: 4.0.2 + resolution: "picomatch@npm:4.0.2" + checksum: 10/ce617b8da36797d09c0baacb96ca8a44460452c89362d7cb8f70ca46b4158ba8bc3606912de7c818eb4a939f7f9015cef3c766ec8a0c6bfc725fdc078e39c717 + languageName: node + linkType: hard -"postcss@npm:^8.4.43": - version: 8.4.47 - resolution: "postcss@npm:8.4.47" +"plist@npm:3.1.0, plist@npm:^3.0.4, plist@npm:^3.0.5, plist@npm:^3.1.0": + version: 3.1.0 + resolution: "plist@npm:3.1.0" dependencies: - nanoid: "npm:^3.3.7" - picocolors: "npm:^1.1.0" - source-map-js: "npm:^1.2.1" - checksum: 10/f2b50ba9b6fcb795232b6bb20de7cdc538c0025989a8ed9c4438d1960196ba3b7eaff41fdb1a5c701b3504651ea87aeb685577707f0ae4d6ce6f3eae5df79a81 + "@xmldom/xmldom": "npm:^0.8.8" + base64-js: "npm:^1.5.1" + xmlbuilder: "npm:^15.1.1" + checksum: 10/f513beecc01a021b4913d4e5816894580b284335ae437e7ed2d5e78f8b6f0d2e0f874ec57bab9c9d424cc49e77b8347efa75abcfa8ac138dbfb63a045e1ce559 languageName: node linkType: hard -"postcss@npm:^8.4.49": - version: 8.4.49 - resolution: "postcss@npm:8.4.49" +"postcss@npm:^8.5.6": + version: 8.5.6 + resolution: "postcss@npm:8.5.6" dependencies: - nanoid: "npm:^3.3.7" + nanoid: "npm:^3.3.11" picocolors: "npm:^1.1.1" source-map-js: "npm:^1.2.1" - checksum: 10/28fe1005b1339870e0a5006375ba5ac1213fd69800f79e7db09c398e074421ba6e162898e94f64942fed554037fd292db3811d87835d25ab5ef7f3c9daacb6ca + checksum: 10/9e4fbe97574091e9736d0e82a591e29aa100a0bf60276a926308f8c57249698935f35c5d2f4e80de778d0cbb8dcffab4f383d85fd50c5649aca421c3df729b86 + languageName: node + linkType: hard + +"postgres-array@npm:~2.0.0": + version: 2.0.0 + resolution: "postgres-array@npm:2.0.0" + checksum: 10/aff99e79714d1271fe942fec4ffa2007b755e7e7dc3d2feecae3f1ceecb86fd3637c8138037fc3d9e7ec369231eeb136843c0b25927bf1ce295245a40ef849b4 + languageName: node + linkType: hard + +"postgres-bytea@npm:~1.0.0": + version: 1.0.0 + resolution: "postgres-bytea@npm:1.0.0" + checksum: 10/d844ae4ca7a941b70e45cac1261a73ee8ed39d72d3d74ab1d645248185a1b7f0ac91a3c63d6159441020f4e1f7fe64689ac56536a307b31cef361e5187335090 + languageName: node + linkType: hard + +"postgres-date@npm:~1.0.4": + version: 1.0.7 + resolution: "postgres-date@npm:1.0.7" + checksum: 10/571ef45bec4551bb5d608c31b79987d7a895141f7d6c7b82e936a52d23d97474c770c6143e5cf8936c1cdc8b0dfd95e79f8136bf56a90164182a60f242c19f2b + languageName: node + linkType: hard + +"postgres-interval@npm:^1.1.0": + version: 1.2.0 + resolution: "postgres-interval@npm:1.2.0" + dependencies: + xtend: "npm:^4.0.0" + checksum: 10/746b71f93805ae33b03528e429dc624706d1f9b20ee81bf743263efb6a0cd79ae02a642a8a480dbc0f09547b4315ab7df6ce5ec0be77ed700bac42730f5c76b2 languageName: node linkType: hard @@ -5060,22 +5965,31 @@ __metadata: languageName: node linkType: hard -"prism-react-renderer@npm:^2.4.1": - version: 2.4.1 - resolution: "prism-react-renderer@npm:2.4.1" - dependencies: - "@types/prismjs": "npm:^1.26.0" - clsx: "npm:^2.0.0" - peerDependencies: - react: ">=16.0.0" - checksum: 10/f76ea89b8b18c477eb74e9ddda2571b5c4d21142731f6733160723aa03567b17df315d7db68ffb1122c199750ece65578ecacb488559229b26db5474d6aae55b +"proc-log@npm:^2.0.1": + version: 2.0.1 + resolution: "proc-log@npm:2.0.1" + checksum: 10/f6f23564ff759097db37443e6e2765af84979a703d2c52c1b9df506ee9f87caa101ba49d8fdc115c1a313ec78e37e8134704e9069e6a870f3499d98bb24c436f languageName: node linkType: hard -"proc-log@npm:^4.1.0, proc-log@npm:^4.2.0": - version: 4.2.0 - resolution: "proc-log@npm:4.2.0" - checksum: 10/4e1394491b717f6c1ade15c570ecd4c2b681698474d3ae2d303c1e4b6ab9455bd5a81566211e82890d5a5ae9859718cc6954d5150bb18b09b72ecb297beae90a +"proc-log@npm:^5.0.0": + version: 5.0.0 + resolution: "proc-log@npm:5.0.0" + checksum: 10/35610bdb0177d3ab5d35f8827a429fb1dc2518d9e639f2151ac9007f01a061c30e0c635a970c9b00c39102216160f6ec54b62377c92fac3b7bfc2ad4b98d195c + languageName: node + linkType: hard + +"progress@npm:^2.0.3": + version: 2.0.3 + resolution: "progress@npm:2.0.3" + checksum: 10/e6f0bcb71f716eee9dfac0fe8a2606e3704d6a64dd93baaf49fbadbc8499989a610fe14cf1bc6f61b6d6653c49408d94f4a94e124538084efd8e4cf525e0293d + languageName: node + linkType: hard + +"promise-inflight@npm:^1.0.1": + version: 1.0.1 + resolution: "promise-inflight@npm:1.0.1" + checksum: 10/1560d413ea20c5a74f3631d39ba8cbd1972b9228072a755d01e1f5ca5110382d9af76a1582d889445adc6e75bb5ac4886b56dc4b6eae51b30145d7bb1ac7505b languageName: node linkType: hard @@ -5089,13 +6003,13 @@ __metadata: languageName: node linkType: hard -"proxy-addr@npm:~2.0.7": - version: 2.0.7 - resolution: "proxy-addr@npm:2.0.7" +"pump@npm:^3.0.0": + version: 3.0.3 + resolution: "pump@npm:3.0.3" dependencies: - forwarded: "npm:0.2.0" - ipaddr.js: "npm:1.9.1" - checksum: 10/f24a0c80af0e75d31e3451398670d73406ec642914da11a2965b80b1898ca6f66a0e3e091a11a4327079b2b268795f6fa06691923fef91887215c3d0e8ea3f68 + end-of-stream: "npm:^1.1.0" + once: "npm:^1.3.1" + checksum: 10/52843fc933b838c0330f588388115a1b28ef2a5ffa7774709b142e35431e8ab0c2edec90de3fa34ebb72d59fef854f151eea7dfc211b6dcf586b384556bd2f39 languageName: node linkType: hard @@ -5106,15 +6020,6 @@ __metadata: languageName: node linkType: hard -"qs@npm:6.13.0": - version: 6.13.0 - resolution: "qs@npm:6.13.0" - dependencies: - side-channel: "npm:^1.0.6" - checksum: 10/f548b376e685553d12e461409f0d6e5c59ec7c7d76f308e2a888fd9db3e0c5e89902bedd0754db3a9038eda5f27da2331a6f019c8517dc5e0a16b3c9a6e9cef8 - languageName: node - linkType: hard - "queue-microtask@npm:^1.2.2": version: 1.2.3 resolution: "queue-microtask@npm:1.2.3" @@ -5122,128 +6027,132 @@ __metadata: languageName: node linkType: hard -"ramda@npm:^0.30.1": - version: 0.30.1 - resolution: "ramda@npm:0.30.1" - checksum: 10/f3e1a7bc11f3a113edb3bb4764c2c22088c5896594934c01cf1980184d00f1d5a7af82761a3389419e2d51542ad2121ff44e718f40792d167e2846bba79a4c6d +"quick-lru@npm:^5.1.1": + version: 5.1.1 + resolution: "quick-lru@npm:5.1.1" + checksum: 10/a516faa25574be7947969883e6068dbe4aa19e8ef8e8e0fd96cddd6d36485e9106d85c0041a27153286b0770b381328f4072aa40d3b18a19f5f7d2b78b94b5ed languageName: node linkType: hard -"range-parser@npm:1.2.0": - version: 1.2.0 - resolution: "range-parser@npm:1.2.0" - checksum: 10/1a561fef1feae1cee3a3cb2440d4d9d3ab96cf2eebaf0d3a5cf06aecf91bc869f273ca0e2f05f73a4c530e751e4af0ed2723b7b86aeef296e3eaea7cfd0a5bfb +"react-dom@npm:^19.1.0": + version: 19.1.0 + resolution: "react-dom@npm:19.1.0" + dependencies: + scheduler: "npm:^0.26.0" + peerDependencies: + react: ^19.1.0 + checksum: 10/c5b58605862c7b0bb044416b01c73647bb8e89717fb5d7a2c279b11815fb7b49b619fe685c404e59f55eb52c66831236cc565c25ee1c2d042739f4a2cc538aa2 languageName: node linkType: hard -"range-parser@npm:~1.2.1": - version: 1.2.1 - resolution: "range-parser@npm:1.2.1" - checksum: 10/ce21ef2a2dd40506893157970dc76e835c78cf56437e26e19189c48d5291e7279314477b06ac38abd6a401b661a6840f7b03bd0b1249da9b691deeaa15872c26 +"react-refresh@npm:^0.17.0": + version: 0.17.0 + resolution: "react-refresh@npm:0.17.0" + checksum: 10/5e94f07d43bb1cfdc9b0c6e0c8c73e754005489950dcff1edb53aa8451d1d69a47b740b195c7c80fb4eb511c56a3585dc55eddd83f0097fb5e015116a1460467 languageName: node linkType: hard -"raw-body@npm:2.5.2": - version: 2.5.2 - resolution: "raw-body@npm:2.5.2" +"react-router-dom@npm:6.30.1": + version: 6.30.1 + resolution: "react-router-dom@npm:6.30.1" dependencies: - bytes: "npm:3.1.2" - http-errors: "npm:2.0.0" - iconv-lite: "npm:0.4.24" - unpipe: "npm:1.0.0" - checksum: 10/863b5171e140546a4d99f349b720abac4410338e23df5e409cfcc3752538c9caf947ce382c89129ba976f71894bd38b5806c774edac35ebf168d02aa1ac11a95 + "@remix-run/router": "npm:1.23.0" + react-router: "npm:6.30.1" + peerDependencies: + react: ">=16.8" + react-dom: ">=16.8" + checksum: 10/d61f04a36ca8a0a61e71bac2616f3f0d4142ced4a473d872738ca363b43d042f4d6dc249e7f7ae1c06f89599277e2fde11583d61cf6b34e999e79caf845acb37 languageName: node linkType: hard -"rc@npm:^1.0.1, rc@npm:^1.1.6": - version: 1.2.8 - resolution: "rc@npm:1.2.8" +"react-router@npm:6.30.1": + version: 6.30.1 + resolution: "react-router@npm:6.30.1" dependencies: - deep-extend: "npm:^0.6.0" - ini: "npm:~1.3.0" - minimist: "npm:^1.2.0" - strip-json-comments: "npm:~2.0.1" - bin: - rc: ./cli.js - checksum: 10/5c4d72ae7eec44357171585938c85ce066da8ca79146b5635baf3d55d74584c92575fa4e2c9eac03efbed3b46a0b2e7c30634c012b4b4fa40d654353d3c163eb + "@remix-run/router": "npm:1.23.0" + peerDependencies: + react: ">=16.8" + checksum: 10/880d6cafd6376dd1e624f6f600b7a208c4142d60eaea66241980ef57260c237b3465c3ff96b28f21ae354410345bbbb1817c3bba083012aade6626027d53506f languageName: node linkType: hard -"react-dom@npm:^18.3.1": - version: 18.3.1 - resolution: "react-dom@npm:18.3.1" +"react-router@npm:^7.9.5": + version: 7.9.5 + resolution: "react-router@npm:7.9.5" dependencies: - loose-envify: "npm:^1.1.0" - scheduler: "npm:^0.23.2" + cookie: "npm:^1.0.1" + set-cookie-parser: "npm:^2.6.0" peerDependencies: - react: ^18.3.1 - checksum: 10/3f4b73a3aa083091173b29812b10394dd06f4ac06aff410b74702cfb3aa29d7b0ced208aab92d5272919b612e5cda21aeb1d54191848cf6e46e9e354f3541f81 + react: ">=18" + react-dom: ">=18" + peerDependenciesMeta: + react-dom: + optional: true + checksum: 10/cfef53455c5ead14450283218c73aa08d95dfeb6dd85e52c10d2534c2ee1ba55c6dab81df8655f8fcc5ae858f1796448d9895a225ffd8a2b2865a0a03a117073 languageName: node linkType: hard -"react-refresh@npm:^0.14.2": - version: 0.14.2 - resolution: "react-refresh@npm:0.14.2" - checksum: 10/512abf97271ab8623486061be04b608c39d932e3709f9af1720b41573415fa4993d0009fa5138b6705b60a98f4102f744d4e26c952b14f41a0e455521c6be4cc +"react@npm:^19.1.0": + version: 19.1.0 + resolution: "react@npm:19.1.0" + checksum: 10/d0180689826fd9de87e839c365f6f361c561daea397d61d724687cae88f432a307d1c0f53a0ee95ddbe3352c10dac41d7ff1ad85530fb24951b27a39e5398db4 languageName: node linkType: hard -"react-router-dom@npm:6.27, react-router-dom@npm:^6.26.2, react-router-dom@npm:^6.27.0": - version: 6.27.0 - resolution: "react-router-dom@npm:6.27.0" +"read-binary-file-arch@npm:^1.0.6": + version: 1.0.6 + resolution: "read-binary-file-arch@npm:1.0.6" dependencies: - "@remix-run/router": "npm:1.20.0" - react-router: "npm:6.27.0" - peerDependencies: - react: ">=16.8" - react-dom: ">=16.8" - checksum: 10/cfbcbc1d387d3341a335e3a075e487cc09dcbb62f1b83bc827fc3eec937523d5647a2c4488c804dc61581e65561823d0166d17b5dbc8579998c25b5a0bcabad6 + debug: "npm:^4.3.4" + bin: + read-binary-file-arch: cli.js + checksum: 10/7a25894816ff9caf5c27886b0aea1740bfab29483443a2859e5a0dc367c56ee9489f3cdba9da676a6d5913d3e421e71c6afbdbcfb636714ff49d93d152c72ba5 languageName: node linkType: hard -"react-router@npm:6.27.0": - version: 6.27.0 - resolution: "react-router@npm:6.27.0" +"readable-stream@npm:>=1.0.33-1 <1.1.0-0": + version: 1.0.34 + resolution: "readable-stream@npm:1.0.34" dependencies: - "@remix-run/router": "npm:1.20.0" - peerDependencies: - react: ">=16.8" - checksum: 10/352e3af2075cdccf9d114b7e06d94a1b46a2147ba9d6e8643787a92464f5fd9ead950252a98d551f99f21860288bcf3a4f088cb5f46b28d1274a4e2ba24cc0f9 + core-util-is: "npm:~1.0.0" + inherits: "npm:~2.0.1" + isarray: "npm:0.0.1" + string_decoder: "npm:~0.10.x" + checksum: 10/20537fca5a8ffd4af0f483be1cce0e981ed8cbb1087e0c762e2e92ae77f1005627272cebed8422f28047b465056aa1961fefd24baf532ca6a3616afea6811ae0 languageName: node linkType: hard -"react@npm:^18.3.1": - version: 18.3.1 - resolution: "react@npm:18.3.1" +"readable-stream@npm:^3.4.0": + version: 3.6.2 + resolution: "readable-stream@npm:3.6.2" dependencies: - loose-envify: "npm:^1.1.0" - checksum: 10/261137d3f3993eaa2368a83110466fc0e558bc2c7f7ae7ca52d94f03aac945f45146bd85e5f481044db1758a1dbb57879e2fcdd33924e2dde1bdc550ce73f7bf + inherits: "npm:^2.0.3" + string_decoder: "npm:^1.1.1" + util-deprecate: "npm:^1.0.1" + checksum: 10/d9e3e53193adcdb79d8f10f2a1f6989bd4389f5936c6f8b870e77570853561c362bee69feca2bbb7b32368ce96a85504aa4cedf7cf80f36e6a9de30d64244048 languageName: node linkType: hard -"registry-auth-token@npm:3.3.2": - version: 3.3.2 - resolution: "registry-auth-token@npm:3.3.2" - dependencies: - rc: "npm:^1.1.6" - safe-buffer: "npm:^5.0.1" - checksum: 10/5a76bd9b4290b1b1624646862239ec36f0d856218035a5b716f4f9bb3b28c87068f0ec834a5e4e4ad0feab726b35def919ce2219ceafa9bef02cd4f516805e1b +"require-directory@npm:^2.1.1": + version: 2.1.1 + resolution: "require-directory@npm:2.1.1" + checksum: 10/a72468e2589270d91f06c7d36ec97a88db53ae5d6fe3787fadc943f0b0276b10347f89b363b2a82285f650bdcc135ad4a257c61bdd4d00d6df1fa24875b0ddaf languageName: node linkType: hard -"registry-url@npm:3.1.0": - version: 3.1.0 - resolution: "registry-url@npm:3.1.0" +"resedit@npm:^1.7.0": + version: 1.7.2 + resolution: "resedit@npm:1.7.2" dependencies: - rc: "npm:^1.0.1" - checksum: 10/6d223da41b04e1824f5faa63905c6f2e43b216589d72794111573f017352b790aef42cd1f826463062f89d804abb2027e3d9665d2a9a0426a11eedd04d470af3 + pe-library: "npm:^0.4.1" + checksum: 10/0fc470cb320a6dbbc85c38abd695cb90ca075d9dbea96846fa5f84ab8add23aa39a02520d70f14c93c84181ba4812a5513da7c79df7491826e7b423cee4e058f languageName: node linkType: hard -"require-from-string@npm:^2.0.2": - version: 2.0.2 - resolution: "require-from-string@npm:2.0.2" - checksum: 10/839a3a890102a658f4cb3e7b2aa13a1f80a3a976b512020c3d1efc418491c48a886b6e481ea56afc6c4cb5eef678f23b2a4e70575e7534eccadf5e30ed2e56eb +"resolve-alpn@npm:^1.0.0": + version: 1.2.1 + resolution: "resolve-alpn@npm:1.2.1" + checksum: 10/744e87888f0b6fa0b256ab454ca0b9c0b80808715e2ef1f3672773665c92a941f6181194e30ccae4a8cd0adbe0d955d3f133102636d2ee0cca0119fec0bc9aec languageName: node linkType: hard @@ -5261,6 +6170,25 @@ __metadata: languageName: node linkType: hard +"responselike@npm:^2.0.0": + version: 2.0.1 + resolution: "responselike@npm:2.0.1" + dependencies: + lowercase-keys: "npm:^2.0.0" + checksum: 10/b122535466e9c97b55e69c7f18e2be0ce3823c5d47ee8de0d9c0b114aa55741c6db8bfbfce3766a94d1272e61bfb1ebf0a15e9310ac5629fbb7446a861b4fd3a + languageName: node + linkType: hard + +"restore-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "restore-cursor@npm:3.1.0" + dependencies: + onetime: "npm:^5.1.0" + signal-exit: "npm:^3.0.2" + checksum: 10/f877dd8741796b909f2a82454ec111afb84eb45890eb49ac947d87991379406b3b83ff9673a46012fca0d7844bb989f45cc5b788254cf1a39b6b5a9659de0630 + languageName: node + linkType: hard + "retry@npm:^0.12.0": version: 0.12.0 resolution: "retry@npm:0.12.0" @@ -5286,93 +6214,45 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^4.20.0": - version: 4.24.0 - resolution: "rollup@npm:4.24.0" - dependencies: - "@rollup/rollup-android-arm-eabi": "npm:4.24.0" - "@rollup/rollup-android-arm64": "npm:4.24.0" - "@rollup/rollup-darwin-arm64": "npm:4.24.0" - "@rollup/rollup-darwin-x64": "npm:4.24.0" - "@rollup/rollup-linux-arm-gnueabihf": "npm:4.24.0" - "@rollup/rollup-linux-arm-musleabihf": "npm:4.24.0" - "@rollup/rollup-linux-arm64-gnu": "npm:4.24.0" - "@rollup/rollup-linux-arm64-musl": "npm:4.24.0" - "@rollup/rollup-linux-powerpc64le-gnu": "npm:4.24.0" - "@rollup/rollup-linux-riscv64-gnu": "npm:4.24.0" - "@rollup/rollup-linux-s390x-gnu": "npm:4.24.0" - "@rollup/rollup-linux-x64-gnu": "npm:4.24.0" - "@rollup/rollup-linux-x64-musl": "npm:4.24.0" - "@rollup/rollup-win32-arm64-msvc": "npm:4.24.0" - "@rollup/rollup-win32-ia32-msvc": "npm:4.24.0" - "@rollup/rollup-win32-x64-msvc": "npm:4.24.0" - "@types/estree": "npm:1.0.6" - fsevents: "npm:~2.3.2" - dependenciesMeta: - "@rollup/rollup-android-arm-eabi": - optional: true - "@rollup/rollup-android-arm64": - optional: true - "@rollup/rollup-darwin-arm64": - optional: true - "@rollup/rollup-darwin-x64": - optional: true - "@rollup/rollup-linux-arm-gnueabihf": - optional: true - "@rollup/rollup-linux-arm-musleabihf": - optional: true - "@rollup/rollup-linux-arm64-gnu": - optional: true - "@rollup/rollup-linux-arm64-musl": - optional: true - "@rollup/rollup-linux-powerpc64le-gnu": - optional: true - "@rollup/rollup-linux-riscv64-gnu": - optional: true - "@rollup/rollup-linux-s390x-gnu": - optional: true - "@rollup/rollup-linux-x64-gnu": - optional: true - "@rollup/rollup-linux-x64-musl": - optional: true - "@rollup/rollup-win32-arm64-msvc": - optional: true - "@rollup/rollup-win32-ia32-msvc": - optional: true - "@rollup/rollup-win32-x64-msvc": - optional: true - fsevents: - optional: true - bin: - rollup: dist/bin/rollup - checksum: 10/291dce8f180628a73d6749119a3e50aa917c416075302bc6f6ac655affc7f0ce9d7f025bef7318d424d0c5623dcb83e360f9ea0125273b6a2285c232172800cc - languageName: node - linkType: hard - -"rollup@npm:^4.23.0": - version: 4.28.1 - resolution: "rollup@npm:4.28.1" - dependencies: - "@rollup/rollup-android-arm-eabi": "npm:4.28.1" - "@rollup/rollup-android-arm64": "npm:4.28.1" - "@rollup/rollup-darwin-arm64": "npm:4.28.1" - "@rollup/rollup-darwin-x64": "npm:4.28.1" - "@rollup/rollup-freebsd-arm64": "npm:4.28.1" - "@rollup/rollup-freebsd-x64": "npm:4.28.1" - "@rollup/rollup-linux-arm-gnueabihf": "npm:4.28.1" - "@rollup/rollup-linux-arm-musleabihf": "npm:4.28.1" - "@rollup/rollup-linux-arm64-gnu": "npm:4.28.1" - "@rollup/rollup-linux-arm64-musl": "npm:4.28.1" - "@rollup/rollup-linux-loongarch64-gnu": "npm:4.28.1" - "@rollup/rollup-linux-powerpc64le-gnu": "npm:4.28.1" - "@rollup/rollup-linux-riscv64-gnu": "npm:4.28.1" - "@rollup/rollup-linux-s390x-gnu": "npm:4.28.1" - "@rollup/rollup-linux-x64-gnu": "npm:4.28.1" - "@rollup/rollup-linux-x64-musl": "npm:4.28.1" - "@rollup/rollup-win32-arm64-msvc": "npm:4.28.1" - "@rollup/rollup-win32-ia32-msvc": "npm:4.28.1" - "@rollup/rollup-win32-x64-msvc": "npm:4.28.1" - "@types/estree": "npm:1.0.6" +"roarr@npm:^2.15.3": + version: 2.15.4 + resolution: "roarr@npm:2.15.4" + dependencies: + boolean: "npm:^3.0.1" + detect-node: "npm:^2.0.4" + globalthis: "npm:^1.0.1" + json-stringify-safe: "npm:^5.0.1" + semver-compare: "npm:^1.0.0" + sprintf-js: "npm:^1.1.2" + checksum: 10/baaa5ad91468bf1b7f0263c4132a40865c8638a3d0916b44dd0d42980a77fb53085a3792e3edf16fc4eea9e31c719793c88bd45b1623b760763c4dc59df97619 + languageName: node + linkType: hard + +"rollup@npm:^4.40.0": + version: 4.44.1 + resolution: "rollup@npm:4.44.1" + dependencies: + "@rollup/rollup-android-arm-eabi": "npm:4.44.1" + "@rollup/rollup-android-arm64": "npm:4.44.1" + "@rollup/rollup-darwin-arm64": "npm:4.44.1" + "@rollup/rollup-darwin-x64": "npm:4.44.1" + "@rollup/rollup-freebsd-arm64": "npm:4.44.1" + "@rollup/rollup-freebsd-x64": "npm:4.44.1" + "@rollup/rollup-linux-arm-gnueabihf": "npm:4.44.1" + "@rollup/rollup-linux-arm-musleabihf": "npm:4.44.1" + "@rollup/rollup-linux-arm64-gnu": "npm:4.44.1" + "@rollup/rollup-linux-arm64-musl": "npm:4.44.1" + "@rollup/rollup-linux-loongarch64-gnu": "npm:4.44.1" + "@rollup/rollup-linux-powerpc64le-gnu": "npm:4.44.1" + "@rollup/rollup-linux-riscv64-gnu": "npm:4.44.1" + "@rollup/rollup-linux-riscv64-musl": "npm:4.44.1" + "@rollup/rollup-linux-s390x-gnu": "npm:4.44.1" + "@rollup/rollup-linux-x64-gnu": "npm:4.44.1" + "@rollup/rollup-linux-x64-musl": "npm:4.44.1" + "@rollup/rollup-win32-arm64-msvc": "npm:4.44.1" + "@rollup/rollup-win32-ia32-msvc": "npm:4.44.1" + "@rollup/rollup-win32-x64-msvc": "npm:4.44.1" + "@types/estree": "npm:1.0.8" fsevents: "npm:~2.3.2" dependenciesMeta: "@rollup/rollup-android-arm-eabi": @@ -5401,6 +6281,8 @@ __metadata: optional: true "@rollup/rollup-linux-riscv64-gnu": optional: true + "@rollup/rollup-linux-riscv64-musl": + optional: true "@rollup/rollup-linux-s390x-gnu": optional: true "@rollup/rollup-linux-x64-gnu": @@ -5417,7 +6299,7 @@ __metadata: optional: true bin: rollup: dist/bin/rollup - checksum: 10/4337898d07e646835b52494b43b4ccd6929da87af2b0febc05ab217fd2425cfda05af5efaea6037c1641c90d803eb5b3e491eefdd47b28fda85af4f46a0dad34 + checksum: 10/4130fcc4fb7df4364bfbdf78f277c0c2afc881812b3d01bd498b709da180ce69ff359af003d187d7c554576956dbc66d85468f4fc62b4b42b87839cd095ee9fd languageName: node linkType: hard @@ -5430,150 +6312,287 @@ __metadata: languageName: node linkType: hard -"safe-buffer@npm:5.1.2": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: 10/7eb5b48f2ed9a594a4795677d5a150faa7eb54483b2318b568dc0c4fc94092a6cce5be02c7288a0500a156282f5276d5688bce7259299568d1053b2150ef374a +"rxjs@npm:^7.4.0": + version: 7.8.2 + resolution: "rxjs@npm:7.8.2" + dependencies: + tslib: "npm:^2.1.0" + checksum: 10/03dff09191356b2b87d94fbc1e97c4e9eb3c09d4452399dddd451b09c2f1ba8d56925a40af114282d7bc0c6fe7514a2236ca09f903cf70e4bbf156650dddb49d languageName: node linkType: hard -"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.0.1": +"safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" checksum: 10/32872cd0ff68a3ddade7a7617b8f4c2ae8764d8b7d884c651b74457967a9e0e886267d3ecc781220629c44a865167b61c375d2da6c720c840ecd73f45d5d9451 languageName: node linkType: hard -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0": +"safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" checksum: 10/7eaf7a0cf37cc27b42fb3ef6a9b1df6e93a1c6d98c6c6702b02fe262d5fcbd89db63320793b99b21cb5348097d0a53de81bd5f4e8b86e20cc9412e3f1cfb4e83 languageName: node linkType: hard -"scheduler@npm:^0.23.2": - version: 0.23.2 - resolution: "scheduler@npm:0.23.2" +"sanitize-filename@npm:^1.6.3": + version: 1.6.3 + resolution: "sanitize-filename@npm:1.6.3" dependencies: - loose-envify: "npm:^1.1.0" - checksum: 10/e8d68b89d18d5b028223edf090092846868a765a591944760942b77ea1f69b17235f7e956696efbb62c8130ab90af7e0949bfb8eba7896335507317236966bc9 + truncate-utf8-bytes: "npm:^1.0.0" + checksum: 10/1c162e2cffa797571221c3ed9fe796fa8c6eabb0812418b52a839e4fc63ab130093eb546ec39e1b94b8d3511c0d7de81db3e67906a7e76d7a7bcb6fbab4ed961 languageName: node linkType: hard -"scroll-into-view-if-needed@npm:^3.1.0": - version: 3.1.0 - resolution: "scroll-into-view-if-needed@npm:3.1.0" - dependencies: - compute-scroll-into-view: "npm:^3.0.2" - checksum: 10/1ea10d84b79db592493ed22563e307a4eaf858527b4c345e70cc26b9c51383636edda31a09d383541fafb5b50a94e59384d85351662cb7d6e5d70805c0d18798 +"sass-embedded-android-arm64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-android-arm64@npm:1.89.2" + conditions: os=android & cpu=arm64 languageName: node linkType: hard -"semver@npm:^6.3.1": - version: 6.3.1 - resolution: "semver@npm:6.3.1" - bin: - semver: bin/semver.js - checksum: 10/1ef3a85bd02a760c6ef76a45b8c1ce18226de40831e02a00bad78485390b98b6ccaa31046245fc63bba4a47a6a592b6c7eedc65cc47126e60489f9cc1ce3ed7e +"sass-embedded-android-arm@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-android-arm@npm:1.89.2" + conditions: os=android & cpu=arm languageName: node linkType: hard -"semver@npm:^7.3.5, semver@npm:^7.6.0": - version: 7.6.3 - resolution: "semver@npm:7.6.3" +"sass-embedded-android-riscv64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-android-riscv64@npm:1.89.2" + conditions: os=android & cpu=riscv64 + languageName: node + linkType: hard + +"sass-embedded-android-x64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-android-x64@npm:1.89.2" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + +"sass-embedded-darwin-arm64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-darwin-arm64@npm:1.89.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"sass-embedded-darwin-x64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-darwin-x64@npm:1.89.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"sass-embedded-linux-arm64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-linux-arm64@npm:1.89.2" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"sass-embedded-linux-arm@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-linux-arm@npm:1.89.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"sass-embedded-linux-musl-arm64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-linux-musl-arm64@npm:1.89.2" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"sass-embedded-linux-musl-arm@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-linux-musl-arm@npm:1.89.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"sass-embedded-linux-musl-riscv64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-linux-musl-riscv64@npm:1.89.2" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + +"sass-embedded-linux-musl-x64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-linux-musl-x64@npm:1.89.2" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"sass-embedded-linux-riscv64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-linux-riscv64@npm:1.89.2" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + +"sass-embedded-linux-x64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-linux-x64@npm:1.89.2" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"sass-embedded-win32-arm64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-win32-arm64@npm:1.89.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"sass-embedded-win32-x64@npm:1.89.2": + version: 1.89.2 + resolution: "sass-embedded-win32-x64@npm:1.89.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"sass-embedded@npm:^1.89.2": + version: 1.89.2 + resolution: "sass-embedded@npm:1.89.2" + dependencies: + "@bufbuild/protobuf": "npm:^2.5.0" + buffer-builder: "npm:^0.2.0" + colorjs.io: "npm:^0.5.0" + immutable: "npm:^5.0.2" + rxjs: "npm:^7.4.0" + sass-embedded-android-arm: "npm:1.89.2" + sass-embedded-android-arm64: "npm:1.89.2" + sass-embedded-android-riscv64: "npm:1.89.2" + sass-embedded-android-x64: "npm:1.89.2" + sass-embedded-darwin-arm64: "npm:1.89.2" + sass-embedded-darwin-x64: "npm:1.89.2" + sass-embedded-linux-arm: "npm:1.89.2" + sass-embedded-linux-arm64: "npm:1.89.2" + sass-embedded-linux-musl-arm: "npm:1.89.2" + sass-embedded-linux-musl-arm64: "npm:1.89.2" + sass-embedded-linux-musl-riscv64: "npm:1.89.2" + sass-embedded-linux-musl-x64: "npm:1.89.2" + sass-embedded-linux-riscv64: "npm:1.89.2" + sass-embedded-linux-x64: "npm:1.89.2" + sass-embedded-win32-arm64: "npm:1.89.2" + sass-embedded-win32-x64: "npm:1.89.2" + supports-color: "npm:^8.1.1" + sync-child-process: "npm:^1.0.2" + varint: "npm:^6.0.0" + dependenciesMeta: + sass-embedded-android-arm: + optional: true + sass-embedded-android-arm64: + optional: true + sass-embedded-android-riscv64: + optional: true + sass-embedded-android-x64: + optional: true + sass-embedded-darwin-arm64: + optional: true + sass-embedded-darwin-x64: + optional: true + sass-embedded-linux-arm: + optional: true + sass-embedded-linux-arm64: + optional: true + sass-embedded-linux-musl-arm: + optional: true + sass-embedded-linux-musl-arm64: + optional: true + sass-embedded-linux-musl-riscv64: + optional: true + sass-embedded-linux-musl-x64: + optional: true + sass-embedded-linux-riscv64: + optional: true + sass-embedded-linux-x64: + optional: true + sass-embedded-win32-arm64: + optional: true + sass-embedded-win32-x64: + optional: true bin: - semver: bin/semver.js - checksum: 10/36b1fbe1a2b6f873559cd57b238f1094a053dbfd997ceeb8757d79d1d2089c56d1321b9f1069ce263dc64cfa922fa1d2ad566b39426fe1ac6c723c1487589e10 + sass: dist/bin/sass.js + checksum: 10/90dbf6fbc38e2b0442d8ac51d0d8c7f7be138df64944521de551933ea9c16867814a4bb2bfa6035080f3419fc3ef9a6d5e25908b62ef348c8c229ae26bb532f6 languageName: node linkType: hard -"send@npm:0.19.0": - version: 0.19.0 - resolution: "send@npm:0.19.0" - dependencies: - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - encodeurl: "npm:~1.0.2" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - fresh: "npm:0.5.2" - http-errors: "npm:2.0.0" - mime: "npm:1.6.0" - ms: "npm:2.1.3" - on-finished: "npm:2.4.1" - range-parser: "npm:~1.2.1" - statuses: "npm:2.0.1" - checksum: 10/1f6064dea0ae4cbe4878437aedc9270c33f2a6650a77b56a16b62d057527f2766d96ee282997dd53ec0339082f2aad935bc7d989b46b48c82fc610800dc3a1d0 +"sax@npm:^1.2.4": + version: 1.4.1 + resolution: "sax@npm:1.4.1" + checksum: 10/b1c784b545019187b53a0c28edb4f6314951c971e2963a69739c6ce222bfbc767e54d320e689352daba79b7d5e06d22b5d7113b99336219d6e93718e2f99d335 languageName: node linkType: hard -"serve-handler@npm:6.1.6": - version: 6.1.6 - resolution: "serve-handler@npm:6.1.6" - dependencies: - bytes: "npm:3.0.0" - content-disposition: "npm:0.5.2" - mime-types: "npm:2.1.18" - minimatch: "npm:3.1.2" - path-is-inside: "npm:1.0.2" - path-to-regexp: "npm:3.3.0" - range-parser: "npm:1.2.0" - checksum: 10/7e7d93eb7e69fcd9f9c5afc2ef2b46cb0072b4af13cbabef9bca725afb350ddae6857d8c8be2c256f7ce1f7677c20347801399c11caa5805c0090339f894e8f2 +"scheduler@npm:^0.26.0": + version: 0.26.0 + resolution: "scheduler@npm:0.26.0" + checksum: 10/1ecf2e5d7de1a7a132796834afe14a2d589ba7e437615bd8c06f3e0786a3ac3434655e67aac8755d9b14e05754c177e49c064261de2673aaa3c926bc98caa002 languageName: node linkType: hard -"serve-static@npm:1.16.2": - version: 1.16.2 - resolution: "serve-static@npm:1.16.2" - dependencies: - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - parseurl: "npm:~1.3.3" - send: "npm:0.19.0" - checksum: 10/7fa9d9c68090f6289976b34fc13c50ac8cd7f16ae6bce08d16459300f7fc61fbc2d7ebfa02884c073ec9d6ab9e7e704c89561882bbe338e99fcacb2912fde737 +"semver-compare@npm:^1.0.0": + version: 1.0.0 + resolution: "semver-compare@npm:1.0.0" + checksum: 10/75f9c7a7786d1756f64b1429017746721e07bd7691bdad6368f7643885d3a98a27586777e9699456564f4844b407e9f186cc1d588a3f9c0be71310e517e942c3 languageName: node linkType: hard -"serve@npm:^14.2.4": - version: 14.2.4 - resolution: "serve@npm:14.2.4" - dependencies: - "@zeit/schemas": "npm:2.36.0" - ajv: "npm:8.12.0" - arg: "npm:5.0.2" - boxen: "npm:7.0.0" - chalk: "npm:5.0.1" - chalk-template: "npm:0.4.0" - clipboardy: "npm:3.0.0" - compression: "npm:1.7.4" - is-port-reachable: "npm:4.0.0" - serve-handler: "npm:6.1.6" - update-check: "npm:1.5.4" +"semver@npm:^5.5.0": + version: 5.7.2 + resolution: "semver@npm:5.7.2" + bin: + semver: bin/semver + checksum: 10/fca14418a174d4b4ef1fecb32c5941e3412d52a4d3d85165924ce3a47fbc7073372c26faf7484ceb4bbc2bde25880c6b97e492473dc7e9708fdfb1c6a02d546e + languageName: node + linkType: hard + +"semver@npm:^6.2.0, semver@npm:^6.3.1": + version: 6.3.1 + resolution: "semver@npm:6.3.1" + bin: + semver: bin/semver.js + checksum: 10/1ef3a85bd02a760c6ef76a45b8c1ce18226de40831e02a00bad78485390b98b6ccaa31046245fc63bba4a47a6a592b6c7eedc65cc47126e60489f9cc1ce3ed7e + languageName: node + linkType: hard + +"semver@npm:^7.3.2, semver@npm:^7.3.5, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.6.3": + version: 7.7.2 + resolution: "semver@npm:7.7.2" + bin: + semver: bin/semver.js + checksum: 10/7a24cffcaa13f53c09ce55e05efe25cd41328730b2308678624f8b9f5fc3093fc4d189f47950f0b811ff8f3c3039c24a2c36717ba7961615c682045bf03e1dda + languageName: node + linkType: hard + +"semver@npm:^7.6.0": + version: 7.6.3 + resolution: "semver@npm:7.6.3" bin: - serve: build/main.js - checksum: 10/79627f399226b765f6e2f0f62faeceda5db17d00f40f9ad9faa39049729ea4ce7b595a72cc0dba3543947288772cb60f2b0ab91efa3bbedfe644ca7ee0484df1 + semver: bin/semver.js + checksum: 10/36b1fbe1a2b6f873559cd57b238f1094a053dbfd997ceeb8757d79d1d2089c56d1321b9f1069ce263dc64cfa922fa1d2ad566b39426fe1ac6c723c1487589e10 languageName: node linkType: hard -"set-function-length@npm:^1.2.1": - version: 1.2.2 - resolution: "set-function-length@npm:1.2.2" +"serialize-error@npm:^7.0.1": + version: 7.0.1 + resolution: "serialize-error@npm:7.0.1" dependencies: - define-data-property: "npm:^1.1.4" - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.4" - gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.2" - checksum: 10/505d62b8e088468917ca4e3f8f39d0e29f9a563b97dbebf92f4bd2c3172ccfb3c5b8e4566d5fcd00784a00433900e7cb8fbc404e2dbd8c3818ba05bb9d4a8a6d + type-fest: "npm:^0.13.1" + checksum: 10/e0aba4dca2fc9fe74ae1baf38dbd99190e1945445a241ba646290f2176cdb2032281a76443b02ccf0caf30da5657d510746506368889a593b9835a497fc0732e languageName: node linkType: hard -"setprototypeof@npm:1.2.0": - version: 1.2.0 - resolution: "setprototypeof@npm:1.2.0" - checksum: 10/fde1630422502fbbc19e6844346778f99d449986b2f9cdcceb8326730d2f3d9964dbcb03c02aaadaefffecd0f2c063315ebea8b3ad895914bf1afc1747fc172e +"set-cookie-parser@npm:^2.6.0": + version: 2.7.2 + resolution: "set-cookie-parser@npm:2.7.2" + checksum: 10/4b6f5ec4e3fa1aef471d9207117704d217ba6bb6443400b41f5ea945c4a7f6fc08e405a122c1a32b4ebde41f06dea75e02c2af87cee9abb27f3e3fe911e5839b languageName: node linkType: hard @@ -5585,27 +6604,15 @@ __metadata: checksum: 10/6b52fe87271c12968f6a054e60f6bde5f0f3d2db483a1e5c3e12d657c488a15474121a1d55cd958f6df026a54374ec38a4a963988c213b7570e1d51575cea7fa languageName: node linkType: hard - -"shebang-regex@npm:^3.0.0": - version: 3.0.0 - resolution: "shebang-regex@npm:3.0.0" - checksum: 10/1a2bcae50de99034fcd92ad4212d8e01eedf52c7ec7830eedcf886622804fe36884278f2be8be0ea5fde3fd1c23911643a4e0f726c8685b61871c8908af01222 - languageName: node - linkType: hard - -"side-channel@npm:^1.0.6": - version: 1.0.6 - resolution: "side-channel@npm:1.0.6" - dependencies: - call-bind: "npm:^1.0.7" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.4" - object-inspect: "npm:^1.13.1" - checksum: 10/eb10944f38cebad8ad643dd02657592fa41273ce15b8bfa928d3291aff2d30c20ff777cfe908f76ccc4551ace2d1245822fdc576657cce40e9066c638ca8fa4d + +"shebang-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "shebang-regex@npm:3.0.0" + checksum: 10/1a2bcae50de99034fcd92ad4212d8e01eedf52c7ec7830eedcf886622804fe36884278f2be8be0ea5fde3fd1c23911643a4e0f726c8685b61871c8908af01222 languageName: node linkType: hard -"signal-exit@npm:^3.0.3": +"signal-exit@npm:^3.0.2": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" checksum: 10/a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 @@ -5619,80 +6626,72 @@ __metadata: languageName: node linkType: hard -"slate-react@npm:^0.110.2": - version: 0.110.2 - resolution: "slate-react@npm:0.110.2" - dependencies: - "@juggle/resize-observer": "npm:^3.4.0" - direction: "npm:^1.0.4" - is-hotkey: "npm:^0.2.0" - is-plain-object: "npm:^5.0.0" - lodash: "npm:^4.17.21" - scroll-into-view-if-needed: "npm:^3.1.0" - tiny-invariant: "npm:1.3.1" - peerDependencies: - react: ">=18.2.0" - react-dom: ">=18.2.0" - slate: ">=0.99.0" - checksum: 10/7426ff21543ba9f54cbea43e48dad971405a88d7b24ba81dba943b8983ad268434bc2d51135a50e1b1469b1770687bcd8c591d08121ba6e3d9dd4079dfa31835 - languageName: node - linkType: hard - -"slate-react@npm:^0.110.3": - version: 0.110.3 - resolution: "slate-react@npm:0.110.3" +"simple-update-notifier@npm:2.0.0": + version: 2.0.0 + resolution: "simple-update-notifier@npm:2.0.0" dependencies: - "@juggle/resize-observer": "npm:^3.4.0" - direction: "npm:^1.0.4" - is-hotkey: "npm:^0.2.0" - is-plain-object: "npm:^5.0.0" - lodash: "npm:^4.17.21" - scroll-into-view-if-needed: "npm:^3.1.0" - tiny-invariant: "npm:1.3.1" - peerDependencies: - react: ">=18.2.0" - react-dom: ">=18.2.0" - slate: ">=0.99.0" - checksum: 10/e7c52f2408b183c9b8809187d31eb91859da28ff32a894bf1f44b33b76c9fbcc6871eea0aee3503ab42d7762b94b5e1a26d2fa7ad6c48c777dae9b6878e38c08 + semver: "npm:^7.5.3" + checksum: 10/40bd4f96aa89aedbf717ae9f4ab8fca70e8f7511e8b766feb15471cca3f6fe4fe673743309b08b4ba8abfe0965c9cd927e1de46550a757b819b70fc7430cc85d languageName: node linkType: hard -"slate@npm:^0.110.2": - version: 0.110.2 - resolution: "slate@npm:0.110.2" +"slice-ansi@npm:^3.0.0": + version: 3.0.0 + resolution: "slice-ansi@npm:3.0.0" dependencies: - immer: "npm:^10.0.3" - is-plain-object: "npm:^5.0.0" - tiny-warning: "npm:^1.0.3" - checksum: 10/ed62991ea919dba94a0021d9e82c4be1593b8e66dafb07d284b675d42cbb65d84eef7620eab60d8d57b92bfff87abf1c544859de8a0da5535c729ffebf358ade + ansi-styles: "npm:^4.0.0" + astral-regex: "npm:^2.0.0" + is-fullwidth-code-point: "npm:^3.0.0" + checksum: 10/5ec6d022d12e016347e9e3e98a7eb2a592213a43a65f1b61b74d2c78288da0aded781f665807a9f3876b9daa9ad94f64f77d7633a0458876c3a4fdc4eb223f24 languageName: node linkType: hard -"smart-buffer@npm:^4.2.0": +"smart-buffer@npm:^4.0.2, smart-buffer@npm:^4.2.0": version: 4.2.0 resolution: "smart-buffer@npm:4.2.0" checksum: 10/927484aa0b1640fd9473cee3e0a0bcad6fce93fd7bbc18bac9ad0c33686f5d2e2c422fba24b5899c184524af01e11dd2bd051c2bf2b07e47aff8ca72cbfc60d2 languageName: node linkType: hard +"socks-proxy-agent@npm:^7.0.0": + version: 7.0.0 + resolution: "socks-proxy-agent@npm:7.0.0" + dependencies: + agent-base: "npm:^6.0.2" + debug: "npm:^4.3.3" + socks: "npm:^2.6.2" + checksum: 10/26c75d9c62a9ed3fd494df60e65e88da442f78e0d4bc19bfd85ac37bd2c67470d6d4bba5202e804561cda6674db52864c9e2a2266775f879bc8d89c1445a5f4c + languageName: node + linkType: hard + "socks-proxy-agent@npm:^8.0.3": - version: 8.0.4 - resolution: "socks-proxy-agent@npm:8.0.4" + version: 8.0.5 + resolution: "socks-proxy-agent@npm:8.0.5" dependencies: - agent-base: "npm:^7.1.1" + agent-base: "npm:^7.1.2" debug: "npm:^4.3.4" socks: "npm:^2.8.3" - checksum: 10/c8e7c2b398338b49a0a0f4d2bae5c0602aeeca6b478b99415927b6c5db349ca258448f2c87c6958ebf83eea17d42cbc5d1af0bfecb276cac10b9658b0f07f7d7 + checksum: 10/ee99e1dacab0985b52cbe5a75640be6e604135e9489ebdc3048635d186012fbaecc20fbbe04b177dee434c319ba20f09b3e7dfefb7d932466c0d707744eac05c + languageName: node + linkType: hard + +"socks@npm:^2.6.2": + version: 2.8.6 + resolution: "socks@npm:2.8.6" + dependencies: + ip-address: "npm:^9.0.5" + smart-buffer: "npm:^4.2.0" + checksum: 10/7aef197dee914a01a39d5f250a59f0c9fa0a9fd10f8135ee2cff6c42576993ae1c817503a12eb424f1bb69f1e234f8dbaf8cc48bfcfa10c51a12af8f0ea97698 languageName: node linkType: hard "socks@npm:^2.8.3": - version: 2.8.3 - resolution: "socks@npm:2.8.3" + version: 2.8.5 + resolution: "socks@npm:2.8.5" dependencies: ip-address: "npm:^9.0.5" smart-buffer: "npm:^4.2.0" - checksum: 10/ffcb622c22481dfcd7589aae71fbfd71ca34334064d181df64bf8b7feaeee19706aba4cffd1de35cc7bbaeeaa0af96be2d7f40fcbc7bc0ab69533a7ae9ffc4fb + checksum: 10/0109090ec2bcb8d12d3875a987e85539ed08697500ad971a603c3057e4c266b4bf6a603e07af6d19218c422dd9b72d923aaa6c1f20abae275510bba458e4ccc9 languageName: node linkType: hard @@ -5703,30 +6702,70 @@ __metadata: languageName: node linkType: hard -"sprintf-js@npm:^1.1.3": +"source-map-support@npm:^0.5.19, source-map-support@npm:^0.5.21": + version: 0.5.21 + resolution: "source-map-support@npm:0.5.21" + dependencies: + buffer-from: "npm:^1.0.0" + source-map: "npm:^0.6.0" + checksum: 10/8317e12d84019b31e34b86d483dd41d6f832f389f7417faf8fc5c75a66a12d9686e47f589a0554a868b8482f037e23df9d040d29387eb16fa14cb85f091ba207 + languageName: node + linkType: hard + +"source-map@npm:^0.6.0": + version: 0.6.1 + resolution: "source-map@npm:0.6.1" + checksum: 10/59ef7462f1c29d502b3057e822cdbdae0b0e565302c4dd1a95e11e793d8d9d62006cdc10e0fd99163ca33ff2071360cf50ee13f90440806e7ed57d81cba2f7ff + languageName: node + linkType: hard + +"split2@npm:^4.1.0": + version: 4.2.0 + resolution: "split2@npm:4.2.0" + checksum: 10/09bbefc11bcf03f044584c9764cd31a252d8e52cea29130950b26161287c11f519807c5e54bd9e5804c713b79c02cefe6a98f4688630993386be353e03f534ab + languageName: node + linkType: hard + +"sprintf-js@npm:^1.1.2, sprintf-js@npm:^1.1.3": version: 1.1.3 resolution: "sprintf-js@npm:1.1.3" checksum: 10/e7587128c423f7e43cc625fe2f87e6affdf5ca51c1cc468e910d8aaca46bb44a7fbcfa552f787b1d3987f7043aeb4527d1b99559e6621e01b42b3f45e5a24cbb languageName: node linkType: hard -"ssri@npm:^10.0.0": - version: 10.0.6 - resolution: "ssri@npm:10.0.6" +"sprintf-js@npm:~1.0.2": + version: 1.0.3 + resolution: "sprintf-js@npm:1.0.3" + checksum: 10/c34828732ab8509c2741e5fd1af6b767c3daf2c642f267788f933a65b1614943c282e74c4284f4fa749c264b18ee016a0d37a3e5b73aee446da46277d3a85daa + languageName: node + linkType: hard + +"ssri@npm:^12.0.0": + version: 12.0.0 + resolution: "ssri@npm:12.0.0" dependencies: minipass: "npm:^7.0.3" - checksum: 10/f92c1b3cc9bfd0a925417412d07d999935917bc87049f43ebec41074661d64cf720315661844106a77da9f8204b6d55ae29f9514e673083cae39464343af2a8b + checksum: 10/7024c1a6e39b3f18aa8f1c8290e884fe91b0f9ca5a6c6d410544daad54de0ba664db879afe16412e187c6c292fd60b937f047ee44292e5c2af2dcc6d8e1a9b48 languageName: node linkType: hard -"statuses@npm:2.0.1": - version: 2.0.1 - resolution: "statuses@npm:2.0.1" - checksum: 10/18c7623fdb8f646fb213ca4051be4df7efb3484d4ab662937ca6fbef7ced9b9e12842709872eb3020cc3504b93bde88935c9f6417489627a7786f24f8031cbcb +"ssri@npm:^9.0.0": + version: 9.0.1 + resolution: "ssri@npm:9.0.1" + dependencies: + minipass: "npm:^3.1.1" + checksum: 10/7638a61e91432510718e9265d48d0438a17d53065e5184f1336f234ef6aa3479663942e41e97df56cda06bb24d9d0b5ef342c10685add3cac7267a82d7fa6718 + languageName: node + linkType: hard + +"stat-mode@npm:^1.0.0": + version: 1.0.0 + resolution: "stat-mode@npm:1.0.0" + checksum: 10/a7eac989332f4d057997225af77be14428789821bfbcadd9bdd67e40c73b9d0f9e0fead7171a0e4a8c4366564adcf1d463b16e71c68af8694af3d3ee1b5f88ed languageName: node linkType: hard -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0": +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" dependencies: @@ -5748,6 +6787,22 @@ __metadata: languageName: node linkType: hard +"string_decoder@npm:^1.1.1": + version: 1.3.0 + resolution: "string_decoder@npm:1.3.0" + dependencies: + safe-buffer: "npm:~5.2.0" + checksum: 10/54d23f4a6acae0e93f999a585e673be9e561b65cd4cca37714af1e893ab8cd8dfa52a9e4f58f48f87b4a44918d3a9254326cb80ed194bf2e4c226e2b21767e56 + languageName: node + linkType: hard + +"string_decoder@npm:~0.10.x": + version: 0.10.31 + resolution: "string_decoder@npm:0.10.31" + checksum: 10/cc43e6b1340d4c7843da0e37d4c87a4084c2342fc99dcf6563c3ec273bb082f0cbd4ebf25d5da19b04fb16400d393885fda830be5128e1c416c73b5a6165f175 + languageName: node + linkType: hard + "strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" @@ -5766,13 +6821,6 @@ __metadata: languageName: node linkType: hard -"strip-final-newline@npm:^2.0.0": - version: 2.0.0 - resolution: "strip-final-newline@npm:2.0.0" - checksum: 10/69412b5e25731e1938184b5d489c32e340605bb611d6140344abc3421b7f3c6f9984b21dff296dfcf056681b82caa3bb4cc996a965ce37bcfad663e92eae9c64 - languageName: node - linkType: hard - "strip-json-comments@npm:^3.1.1": version: 3.1.1 resolution: "strip-json-comments@npm:3.1.1" @@ -5780,19 +6828,12 @@ __metadata: languageName: node linkType: hard -"strip-json-comments@npm:~2.0.1": - version: 2.0.1 - resolution: "strip-json-comments@npm:2.0.1" - checksum: 10/1074ccb63270d32ca28edfb0a281c96b94dc679077828135141f27d52a5a398ef5e78bcf22809d23cadc2b81dfbe345eb5fd8699b385c8b1128907dec4a7d1e1 - languageName: node - linkType: hard - -"supports-color@npm:^5.3.0": - version: 5.5.0 - resolution: "supports-color@npm:5.5.0" +"sumchecker@npm:^3.0.1": + version: 3.0.1 + resolution: "sumchecker@npm:3.0.1" dependencies: - has-flag: "npm:^3.0.0" - checksum: 10/5f505c6fa3c6e05873b43af096ddeb22159831597649881aeb8572d6fe3b81e798cc10840d0c9735e0026b250368851b7f77b65e84f4e4daa820a4f69947f55b + debug: "npm:^4.1.0" + checksum: 10/5c69776ce2b53040c952cfbca0f7b487b1ee993c55b6d5523f674ec075f30e031fd84b6706dc8ccc4deb9761b58f9925be8806a316e5eedff2286bb48cb75044 languageName: node linkType: hard @@ -5805,7 +6846,32 @@ __metadata: languageName: node linkType: hard -"tar@npm:^6.1.11, tar@npm:^6.2.1": +"supports-color@npm:^8.1.1": + version: 8.1.1 + resolution: "supports-color@npm:8.1.1" + dependencies: + has-flag: "npm:^4.0.0" + checksum: 10/157b534df88e39c5518c5e78c35580c1eca848d7dbaf31bbe06cdfc048e22c7ff1a9d046ae17b25691128f631a51d9ec373c1b740c12ae4f0de6e292037e4282 + languageName: node + linkType: hard + +"sync-child-process@npm:^1.0.2": + version: 1.0.2 + resolution: "sync-child-process@npm:1.0.2" + dependencies: + sync-message-port: "npm:^1.0.0" + checksum: 10/6fbdbb7b6f5730a1966d6a77cdbfe7f5cb8d1a582dab955c62c32b56dc6c432ccdbfc68027265486f8f4b1a998cc4d7ee21856e8125748bef70b8874aaedb21c + languageName: node + linkType: hard + +"sync-message-port@npm:^1.0.0": + version: 1.1.3 + resolution: "sync-message-port@npm:1.1.3" + checksum: 10/a84b681afd678f28af4498074c4bc5cd5c763395fbf169f1bc9777c2e01aa8d41a3046dcca43a41e81102a7fd697713dfc03e155d1c662fec88af9481b249b8a + languageName: node + linkType: hard + +"tar@npm:^6.0.5, tar@npm:^6.1.11, tar@npm:^6.1.12, tar@npm:^6.2.1": version: 6.2.1 resolution: "tar@npm:6.2.1" dependencies: @@ -5819,10 +6885,27 @@ __metadata: languageName: node linkType: hard -"text-table@npm:^0.2.0": - version: 0.2.0 - resolution: "text-table@npm:0.2.0" - checksum: 10/4383b5baaeffa9bb4cda2ac33a4aa2e6d1f8aaf811848bf73513a9b88fd76372dc461f6fd6d2e9cb5100f48b473be32c6f95bd983509b7d92bb4d92c10747452 +"tar@npm:^7.4.3": + version: 7.4.3 + resolution: "tar@npm:7.4.3" + dependencies: + "@isaacs/fs-minipass": "npm:^4.0.0" + chownr: "npm:^3.0.0" + minipass: "npm:^7.1.2" + minizlib: "npm:^3.0.1" + mkdirp: "npm:^3.0.1" + yallist: "npm:^5.0.0" + checksum: 10/12a2a4fc6dee23e07cc47f1aeb3a14a1afd3f16397e1350036a8f4cdfee8dcac7ef5978337a4e7b2ac2c27a9a6d46388fc2088ea7c80cb6878c814b1425f8ecf + languageName: node + linkType: hard + +"temp-file@npm:^3.4.0": + version: 3.4.0 + resolution: "temp-file@npm:3.4.0" + dependencies: + async-exit-hook: "npm:^2.0.1" + fs-extra: "npm:^10.0.0" + checksum: 10/5b7132ff488e91ae928c3e81b25e308d8fc590c08a08fb37b0f1c1e8d186e65d69472abd1af1ea11e1162db2a2e6a7970214c827c92c7c6cebbc91bb7678b037 languageName: node linkType: hard @@ -5830,30 +6913,74 @@ __metadata: version: 0.0.0-use.local resolution: "the-codec@workspace:." dependencies: - eslint: "npm:^8.57.0" + eslint: "npm:^9" + eslint-plugin-react-hooks: "npm:^5.2.0" + eslint-plugin-react-refresh: "npm:^0.4.20" + eslint-plugin-simple-import-sort: "npm:^12.1.1" + globals: "npm:^16.2.0" husky: "npm:^9.1.7" prettier: "npm:^3.2.5" + typescript: "npm:^5" + typescript-eslint: "npm:^8.35.0" languageName: unknown linkType: soft -"tiny-invariant@npm:1.3.1": - version: 1.3.1 - resolution: "tiny-invariant@npm:1.3.1" - checksum: 10/872dbd1ff20a21303a2fd20ce3a15602cfa7fcf9b228bd694a52e2938224313b5385a1078cb667ed7375d1612194feaca81c4ecbe93121ca1baebe344de4f84c +"through2@npm:^0.6.3": + version: 0.6.5 + resolution: "through2@npm:0.6.5" + dependencies: + readable-stream: "npm:>=1.0.33-1 <1.1.0-0" + xtend: "npm:>=4.0.0 <4.1.0-0" + checksum: 10/37571f0bd4fa3d22f421ecf27af4c4b5eee34f350e6ca81d1a748dc09e0ede589a88248497d5bb2855c61a583a8e0dc9cd751e71c130040fceb19f778d43503d languageName: node linkType: hard -"tiny-warning@npm:^1.0.3": - version: 1.0.3 - resolution: "tiny-warning@npm:1.0.3" - checksum: 10/da62c4acac565902f0624b123eed6dd3509bc9a8d30c06e017104bedcf5d35810da8ff72864400ad19c5c7806fc0a8323c68baf3e326af7cb7d969f846100d71 +"tiny-async-pool@npm:1.3.0": + version: 1.3.0 + resolution: "tiny-async-pool@npm:1.3.0" + dependencies: + semver: "npm:^5.5.0" + checksum: 10/d51630522317b82355afa32b79ac3a02bcc29ef81e8045a95a2e4dfa736525bf4bcba1394abfb4169188fe42e3a9d9e4b378367f46daeb6b4b945d7cb727f860 languageName: node linkType: hard -"to-fast-properties@npm:^2.0.0": - version: 2.0.0 - resolution: "to-fast-properties@npm:2.0.0" - checksum: 10/be2de62fe58ead94e3e592680052683b1ec986c72d589e7b21e5697f8744cdbf48c266fa72f6c15932894c10187b5f54573a3bcf7da0bfd964d5caf23d436168 +"tiny-typed-emitter@npm:^2.1.0": + version: 2.1.0 + resolution: "tiny-typed-emitter@npm:2.1.0" + checksum: 10/709bca410054e08df4dc29d5ea0916328bb2900d60245c6a743068ea223887d9fd2c945b6070eb20336275a557a36c2808e5c87d2ed4b60633458632be4a3e10 + languageName: node + linkType: hard + +"tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.14": + version: 0.2.14 + resolution: "tinyglobby@npm:0.2.14" + dependencies: + fdir: "npm:^6.4.4" + picomatch: "npm:^4.0.2" + checksum: 10/3d306d319718b7cc9d79fb3f29d8655237aa6a1f280860a217f93417039d0614891aee6fc47c5db315f4fcc6ac8d55eb8e23e2de73b2c51a431b42456d9e5764 + languageName: node + linkType: hard + +"tinytim@npm:0.1.1": + version: 0.1.1 + resolution: "tinytim@npm:0.1.1" + checksum: 10/4bb372336f0ec2cd14d7ebb375660bc0a6a3bc14d937dbd0b5768486a0b87bec45e2f8766b4c06edcbd5534872f0a2965cbb81aabf1dad3c712a35f1728a1fad + languageName: node + linkType: hard + +"tmp-promise@npm:^3.0.2": + version: 3.0.3 + resolution: "tmp-promise@npm:3.0.3" + dependencies: + tmp: "npm:^0.2.0" + checksum: 10/0ca65b4f233b1d2b01e17a7a62961d32923e4b27383a370bf4d8d52f1062d79c3250e6b6b706ec390e73c9c58c13dc130b3855eedc89c86c7d90beb28b8382e5 + languageName: node + linkType: hard + +"tmp@npm:^0.2.0": + version: 0.2.3 + resolution: "tmp@npm:0.2.3" + checksum: 10/7b13696787f159c9754793a83aa79a24f1522d47b87462ddb57c18ee93ff26c74cbb2b8d9138f571d2e0e765c728fb2739863a672b280528512c6d83d511c6fa languageName: node linkType: hard @@ -5866,32 +6993,38 @@ __metadata: languageName: node linkType: hard -"toidentifier@npm:1.0.1": - version: 1.0.1 - resolution: "toidentifier@npm:1.0.1" - checksum: 10/952c29e2a85d7123239b5cfdd889a0dde47ab0497f0913d70588f19c53f7e0b5327c95f4651e413c74b785147f9637b17410ac8c846d5d4a20a5a33eb6dc3a45 +"tracer@npm:^0.7.3": + version: 0.7.4 + resolution: "tracer@npm:0.7.4" + dependencies: + colors: "npm:1.0.3" + dateformat: "npm:1.0.11" + tinytim: "npm:0.1.1" + checksum: 10/6fbed111aa8d483eb9e25adb06c38d2a05e0ad7f2cb5295496e48af5cf77569ad93cba7bf090d6dc6e27cb45cf925bef7b4218b935be669fbc6f6e96d90d9763 languageName: node linkType: hard -"ts-api-utils@npm:^1.3.0": - version: 1.3.0 - resolution: "ts-api-utils@npm:1.3.0" - peerDependencies: - typescript: ">=4.2.0" - checksum: 10/3ee44faa24410cd649b5c864e068d438aa437ef64e9e4a66a41646a6d3024d3097a695eeb3fb26ee364705d3cb9653a65756d009e6a53badb6066a5f447bf7ed +"truncate-utf8-bytes@npm:^1.0.0": + version: 1.0.2 + resolution: "truncate-utf8-bytes@npm:1.0.2" + dependencies: + utf8-byte-length: "npm:^1.0.1" + checksum: 10/366e47a0e22cc271d37eb4e62820453fb877784b55b37218842758b7aa1d402eedd0f8833cfb5d6f7a6cae1535d84289bd5e32c4ee962d2a86962fb7038a6983 languageName: node linkType: hard -"ts-toolbelt@npm:^9.6.0": - version: 9.6.0 - resolution: "ts-toolbelt@npm:9.6.0" - checksum: 10/2c2dea2631dbd7372a79cccc6d09a377a6ca2f319f767fd239d2e312cd1d9165a90f8c1777a047227bfdcda6aeba3addbadce88fdfc7f43caf4534d385a43c82 +"ts-api-utils@npm:^2.1.0": + version: 2.1.0 + resolution: "ts-api-utils@npm:2.1.0" + peerDependencies: + typescript: ">=4.8.4" + checksum: 10/02e55b49d9617c6eebf8aadfa08d3ca03ca0cd2f0586ad34117fdfc7aa3cd25d95051843fde9df86665ad907f99baed179e7a117b11021417f379e4d2614eacd languageName: node linkType: hard "tsconfck@npm:^3.0.3": - version: 3.1.4 - resolution: "tsconfck@npm:3.1.4" + version: 3.1.6 + resolution: "tsconfck@npm:3.1.6" peerDependencies: typescript: ^5.0.0 peerDependenciesMeta: @@ -5899,15 +7032,22 @@ __metadata: optional: true bin: tsconfck: bin/tsconfck.js - checksum: 10/4fb02e75ff374a82052b4800970bebe4466b5a6e7193d74e7b875cc8225acb5037fb4e7dcd4a5cd751c22129360cb13b4d5536897eae131d69c1a20fb18a99b4 + checksum: 10/8574595286850273bf83319b4e67ca760088df3c36f7ca1425aaf797416672e854271bd31e75c9b3e1836ed5b66410c6bc38cbbda9c638a5416c6a682ed94132 + languageName: node + linkType: hard + +"tslib@npm:^2.1.0": + version: 2.8.1 + resolution: "tslib@npm:2.8.1" + checksum: 10/3e2e043d5c2316461cb54e5c7fe02c30ef6dccb3384717ca22ae5c6b5bc95232a6241df19c622d9c73b809bea33b187f6dbc73030963e29950c2141bc32a79f7 languageName: node linkType: hard -"tsx@npm:^4.19.1": - version: 4.19.1 - resolution: "tsx@npm:4.19.1" +"tsx@npm:^4.7.1": + version: 4.20.3 + resolution: "tsx@npm:4.20.3" dependencies: - esbuild: "npm:~0.23.0" + esbuild: "npm:~0.25.0" fsevents: "npm:~2.3.3" get-tsconfig: "npm:^4.7.5" dependenciesMeta: @@ -5915,23 +7055,19 @@ __metadata: optional: true bin: tsx: dist/cli.mjs - checksum: 10/1f5f0b7c4107fc18f523e94c79204b043641aa328f721324795cc961826879035652a1f19fe29ba420465d9f4bacb0f47e08f0bd4b934684ab45727eca110311 + checksum: 10/62f40d06a41deebd51690b086f4387d842a826542639b6a26fd6cf09158c6b44956ca9d9088146330ab0622587b2329981cc3584b89025040f3aa100c50ac13c languageName: node linkType: hard -"tsx@npm:^4.19.2": - version: 4.19.2 - resolution: "tsx@npm:4.19.2" +"ttf2woff@npm:^3.0.0": + version: 3.0.0 + resolution: "ttf2woff@npm:3.0.0" dependencies: - esbuild: "npm:~0.23.0" - fsevents: "npm:~2.3.3" - get-tsconfig: "npm:^4.7.5" - dependenciesMeta: - fsevents: - optional: true + argparse: "npm:^2.0.1" + pako: "npm:^1.0.0" bin: - tsx: dist/cli.mjs - checksum: 10/4c5610ed1fb2f80d766681f8ac7827e1e8118dfe354c18f74800691f3ef1e9ed676a29842ab818806bcf8613cdc97c6af84b5645e768ddb7f4b0527b9100deda + ttf2woff: ttf2woff.js + checksum: 10/c8fca24616e1d4356c4141c7ec2e3d7f839185b7b6f3baf0bfb13f2eebba64e5ab3620f9f882161ac71e7c36980a70c6fc2548599ea2f66876e5947acaf65765 languageName: node linkType: hard @@ -5944,140 +7080,143 @@ __metadata: languageName: node linkType: hard -"type-fest@npm:^0.20.2": - version: 0.20.2 - resolution: "type-fest@npm:0.20.2" - checksum: 10/8907e16284b2d6cfa4f4817e93520121941baba36b39219ea36acfe64c86b9dbc10c9941af450bd60832c8f43464974d51c0957f9858bc66b952b66b6914cbb9 - languageName: node - linkType: hard - -"type-fest@npm:^2.13.0": - version: 2.19.0 - resolution: "type-fest@npm:2.19.0" - checksum: 10/7bf9e8fdf34f92c8bb364c0af14ca875fac7e0183f2985498b77be129dc1b3b1ad0a6b3281580f19e48c6105c037fb966ad9934520c69c6434d17fd0af4eed78 - languageName: node - linkType: hard - -"type-is@npm:~1.6.18": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" - dependencies: - media-typer: "npm:0.3.0" - mime-types: "npm:~2.1.24" - checksum: 10/0bd9eeae5efd27d98fd63519f999908c009e148039d8e7179a074f105362d4fcc214c38b24f6cda79c87e563cbd12083a4691381ed28559220d4a10c2047bed4 +"type-fest@npm:^0.13.1": + version: 0.13.1 + resolution: "type-fest@npm:0.13.1" + checksum: 10/11e9476dc85bf97a71f6844fb67ba8e64a4c7e445724c0f3bd37eb2ddf4bc97c1dc9337bd880b28bce158de1c0cb275c2d03259815a5bf64986727197126ab56 languageName: node linkType: hard -"types-ramda@npm:^0.30.1": - version: 0.30.1 - resolution: "types-ramda@npm:0.30.1" - dependencies: - ts-toolbelt: "npm:^9.6.0" - checksum: 10/b865c8f97df911b82b51b3cb4afa9b52b971d344dd79d203cd118e424a03761aebfea538c643f6283f700a3b4000d07d2168e353691b5caff076542bad78e420 - languageName: node - linkType: hard +"types@workspace:*, types@workspace:^, types@workspace:shared/types": + version: 0.0.0-use.local + resolution: "types@workspace:shared/types" + languageName: unknown + linkType: soft -"typescript-eslint@npm:^8.0.1, typescript-eslint@npm:^8.7.0": - version: 8.9.0 - resolution: "typescript-eslint@npm:8.9.0" +"typescript-eslint@npm:^8.35.0": + version: 8.35.0 + resolution: "typescript-eslint@npm:8.35.0" dependencies: - "@typescript-eslint/eslint-plugin": "npm:8.9.0" - "@typescript-eslint/parser": "npm:8.9.0" - "@typescript-eslint/utils": "npm:8.9.0" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/34ec65b9f3b9b2a8a17e02bf85c3eab1b9c8a1ccd51883038a2e69f8064177de68916b92976d3b1fe96e52c95898e0de204f43269b76e2230fbefad41cf9b061 + "@typescript-eslint/eslint-plugin": "npm:8.35.0" + "@typescript-eslint/parser": "npm:8.35.0" + "@typescript-eslint/utils": "npm:8.35.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/350f584dfe2de1863954d65e27f8a02849569970ee4e0c108d881180d044ffeb4cc112a447ea835f347357219219afefed35084bd0bfd27496eb882f221eb5de languageName: node linkType: hard -"typescript-eslint@npm:^8.15.0": - version: 8.18.0 - resolution: "typescript-eslint@npm:8.18.0" +"typescript-eslint@npm:^8.35.1": + version: 8.37.0 + resolution: "typescript-eslint@npm:8.37.0" dependencies: - "@typescript-eslint/eslint-plugin": "npm:8.18.0" - "@typescript-eslint/parser": "npm:8.18.0" - "@typescript-eslint/utils": "npm:8.18.0" + "@typescript-eslint/eslint-plugin": "npm:8.37.0" + "@typescript-eslint/parser": "npm:8.37.0" + "@typescript-eslint/typescript-estree": "npm:8.37.0" + "@typescript-eslint/utils": "npm:8.37.0" peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: 10/e39d39e25d3916b3c94715db3cb84cf7564b92e08ea026a5d6116a1bd6c8e0c1bfcadad2d26bdba195a59b0e0c1bed296f50b78a66f3516e13e9a6c380546719 + typescript: ">=4.8.4 <5.9.0" + checksum: 10/0f520089a156835cea076138c997c36061fe0ce951b0c758417e84a9e2c0f848a953f54349d935f6ef0faf02a0e5322633858cb8dc090dba3d86f88771d3dd12 languageName: node linkType: hard -"typescript@npm:^5.5.3, typescript@npm:~5.6.2": - version: 5.6.3 - resolution: "typescript@npm:5.6.3" +"typescript@npm:^5, typescript@npm:^5.4.3, typescript@npm:~5.8.3": + version: 5.8.3 + resolution: "typescript@npm:5.8.3" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 10/c328e418e124b500908781d9f7b9b93cf08b66bf5936d94332b463822eea2f4e62973bfb3b8a745fdc038785cb66cf59d1092bac3ec2ac6a3e5854687f7833f1 + checksum: 10/65c40944c51b513b0172c6710ee62e951b70af6f75d5a5da745cb7fab132c09ae27ffdf7838996e3ed603bb015dadd099006658046941bd0ba30340cc563ae92 languageName: node linkType: hard -"typescript@patch:typescript@npm%3A^5.5.3#optional!builtin, typescript@patch:typescript@npm%3A~5.6.2#optional!builtin": - version: 5.6.3 - resolution: "typescript@patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=379a07" +"typescript@patch:typescript@npm%3A^5#optional!builtin, typescript@patch:typescript@npm%3A^5.4.3#optional!builtin, typescript@patch:typescript@npm%3A~5.8.3#optional!builtin": + version: 5.8.3 + resolution: "typescript@patch:typescript@npm%3A5.8.3#optional!builtin::version=5.8.3&hash=5786d5" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 10/dc4bec403cd33a204b655b1152a096a08e7bad2c931cb59ef8ff26b6f2aa541bf98f09fc157958a60c921b1983a8dde9a85b692f9de60fa8f574fd131e3ae4dd + checksum: 10/b9b1e73dabac5dc730c041325dbd9c99467c1b0d239f1b74ec3b90d831384af3e2ba973946232df670519147eb51a2c20f6f96163cea2b359f03de1e2091cc4f languageName: node linkType: hard -"undici-types@npm:~6.19.2, undici-types@npm:~6.19.8": - version: 6.19.8 - resolution: "undici-types@npm:6.19.8" - checksum: 10/cf0b48ed4fc99baf56584afa91aaffa5010c268b8842f62e02f752df209e3dea138b372a60a963b3b2576ed932f32329ce7ddb9cb5f27a6c83040d8cd74b7a70 +"undici-types@npm:~6.21.0": + version: 6.21.0 + resolution: "undici-types@npm:6.21.0" + checksum: 10/ec8f41aa4359d50f9b59fa61fe3efce3477cc681908c8f84354d8567bb3701fafdddf36ef6bff307024d3feb42c837cf6f670314ba37fc8145e219560e473d14 languageName: node linkType: hard -"unique-filename@npm:^3.0.0": - version: 3.0.0 - resolution: "unique-filename@npm:3.0.0" +"undici-types@npm:~7.8.0": + version: 7.8.0 + resolution: "undici-types@npm:7.8.0" + checksum: 10/fcff3fbab234f067fbd69e374ee2c198ba74c364ceaf6d93db7ca267e784457b5518cd01d0d2329b075f412574205ea3172a9a675facb49b4c9efb7141cd80b7 + languageName: node + linkType: hard + +"unique-filename@npm:^2.0.0": + version: 2.0.1 + resolution: "unique-filename@npm:2.0.1" dependencies: - unique-slug: "npm:^4.0.0" - checksum: 10/8e2f59b356cb2e54aab14ff98a51ac6c45781d15ceaab6d4f1c2228b780193dc70fae4463ce9e1df4479cb9d3304d7c2043a3fb905bdeca71cc7e8ce27e063df + unique-slug: "npm:^3.0.0" + checksum: 10/807acf3381aff319086b64dc7125a9a37c09c44af7620bd4f7f3247fcd5565660ac12d8b80534dcbfd067e6fe88a67e621386dd796a8af828d1337a8420a255f languageName: node linkType: hard -"unique-slug@npm:^4.0.0": +"unique-filename@npm:^4.0.0": version: 4.0.0 - resolution: "unique-slug@npm:4.0.0" + resolution: "unique-filename@npm:4.0.0" + dependencies: + unique-slug: "npm:^5.0.0" + checksum: 10/6a62094fcac286b9ec39edbd1f8f64ff92383baa430af303dfed1ffda5e47a08a6b316408554abfddd9730c78b6106bef4ca4d02c1231a735ddd56ced77573df + languageName: node + linkType: hard + +"unique-slug@npm:^3.0.0": + version: 3.0.0 + resolution: "unique-slug@npm:3.0.0" dependencies: imurmurhash: "npm:^0.1.4" - checksum: 10/40912a8963fc02fb8b600cf50197df4a275c602c60de4cac4f75879d3c48558cfac48de08a25cc10df8112161f7180b3bbb4d662aadb711568602f9eddee54f0 + checksum: 10/26fc5bc209a875956dd5e84ca39b89bc3be777b112504667c35c861f9547df95afc80439358d836b878b6d91f6ee21fe5ba1a966e9ec2e9f071ddf3fd67d45ee languageName: node linkType: hard -"unpipe@npm:1.0.0, unpipe@npm:~1.0.0": - version: 1.0.0 - resolution: "unpipe@npm:1.0.0" - checksum: 10/4fa18d8d8d977c55cb09715385c203197105e10a6d220087ec819f50cb68870f02942244f1017565484237f1f8c5d3cd413631b1ae104d3096f24fdfde1b4aa2 +"unique-slug@npm:^5.0.0": + version: 5.0.0 + resolution: "unique-slug@npm:5.0.0" + dependencies: + imurmurhash: "npm:^0.1.4" + checksum: 10/beafdf3d6f44990e0a5ce560f8f881b4ee811be70b6ba0db25298c31c8cf525ed963572b48cd03be1c1349084f9e339be4241666d7cf1ebdad20598d3c652b27 languageName: node linkType: hard -"update-browserslist-db@npm:^1.1.0": - version: 1.1.1 - resolution: "update-browserslist-db@npm:1.1.1" +"universalify@npm:^0.1.0": + version: 0.1.2 + resolution: "universalify@npm:0.1.2" + checksum: 10/40cdc60f6e61070fe658ca36016a8f4ec216b29bf04a55dce14e3710cc84c7448538ef4dad3728d0bfe29975ccd7bfb5f414c45e7b78883567fb31b246f02dff + languageName: node + linkType: hard + +"universalify@npm:^2.0.0": + version: 2.0.1 + resolution: "universalify@npm:2.0.1" + checksum: 10/ecd8469fe0db28e7de9e5289d32bd1b6ba8f7183db34f3bfc4ca53c49891c2d6aa05f3fb3936a81285a905cc509fb641a0c3fc131ec786167eff41236ae32e60 + languageName: node + linkType: hard + +"update-browserslist-db@npm:^1.1.3": + version: 1.1.3 + resolution: "update-browserslist-db@npm:1.1.3" dependencies: escalade: "npm:^3.2.0" - picocolors: "npm:^1.1.0" + picocolors: "npm:^1.1.1" peerDependencies: browserslist: ">= 4.21.0" bin: update-browserslist-db: cli.js - checksum: 10/7678dd8609750588d01aa7460e8eddf2ff9d16c2a52fb1811190e0d056390f1fdffd94db3cf8fb209cf634ab4fa9407886338711c71cc6ccade5eeb22b093734 - languageName: node - linkType: hard - -"update-check@npm:1.5.4": - version: 1.5.4 - resolution: "update-check@npm:1.5.4" - dependencies: - registry-auth-token: "npm:3.3.2" - registry-url: "npm:3.1.0" - checksum: 10/97165ee7daf1df02bad2e05260349782fed7cb9928f89e473899b6b779f7c65064589a666acdc99cd043665e9bc678075b75f0b7f80f14a7789c079697cfc140 + checksum: 10/87af2776054ffb9194cf95e0201547d041f72ee44ce54b144da110e65ea7ca01379367407ba21de5c9edd52c74d95395366790de67f3eb4cc4afa0fe4424e76f languageName: node linkType: hard @@ -6090,59 +7229,45 @@ __metadata: languageName: node linkType: hard -"utils-merge@npm:1.0.1": - version: 1.0.1 - resolution: "utils-merge@npm:1.0.1" - checksum: 10/5d6949693d58cb2e636a84f3ee1c6e7b2f9c16cb1d42d0ecb386d8c025c69e327205aa1c69e2868cc06a01e5e20681fbba55a4e0ed0cce913d60334024eae798 +"utf8-byte-length@npm:^1.0.1": + version: 1.0.5 + resolution: "utf8-byte-length@npm:1.0.5" + checksum: 10/168edff8f7baca974b5bfb5256cebd57deaef8fbf2d0390301dd1009da52de64774d62f088254c94021e372147b6c938aa82f2318a3a19f9ebd21e48b7f40029 languageName: node linkType: hard -"vary@npm:~1.1.2": - version: 1.1.2 - resolution: "vary@npm:1.1.2" - checksum: 10/31389debef15a480849b8331b220782230b9815a8e0dbb7b9a8369559aed2e9a7800cd904d4371ea74f4c3527db456dc8e7ac5befce5f0d289014dbdf47b2242 +"util-deprecate@npm:^1.0.1": + version: 1.0.2 + resolution: "util-deprecate@npm:1.0.2" + checksum: 10/474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 languageName: node linkType: hard -"viajs-core@npm:^0.3.1": - version: 0.3.1 - resolution: "viajs-core@npm:0.3.1" - dependencies: - deepmerge: "npm:^4.3.1" - immer: "npm:^10.1.1" - lodash: "npm:^4.17.21" - nanoid: "npm:^5.0.7" - checksum: 10/5a0650795a23f809ddd0441c1ab0550e06aa41c9261212aeacba33d35a20e654ddfd2b1c5cfe47bed9a7871975e60c0ab9a1360948c67c0f5901f82859847ab0 +"varint@npm:^6.0.0": + version: 6.0.0 + resolution: "varint@npm:6.0.0" + checksum: 10/7684113c9d497c01e40396e50169c502eb2176203219b96e1c5ac965a3e15b4892bd22b7e48d87148e10fffe638130516b6dbeedd0efde2b2d0395aa1772eea7 languageName: node linkType: hard -"viajs-react@npm:^0.3.0": - version: 0.3.0 - resolution: "viajs-react@npm:0.3.0" +"verror@npm:^1.10.0": + version: 1.10.1 + resolution: "verror@npm:1.10.1" dependencies: - esbuild: "npm:^0.23.1" - nanoid: "npm:^5.0.7" - peerDependencies: - react: ">=18.0.0" - react-dom: ">=18.0.0" - viajs-core: ">=0.3.0" - checksum: 10/c36bd95f413f245b555e50245dd2d7f142ad5b748afa4c1f1b926b9cf44c11f5d3e91d259e5223b689c36d2a2bfabde12f1327d4462c6f43122598be82d1bc33 + assert-plus: "npm:^1.0.0" + core-util-is: "npm:1.0.2" + extsprintf: "npm:^1.2.0" + checksum: 10/2b24eb830ecee7be69ab84192946074d7e8a85a42b0784d9874a28f52616065953ab4297975c87045879505fe9a6ac38dedad29a7470bbe0324540e5b6e92f62 languageName: node linkType: hard -"vite-tsconfig-paths@npm:^5.1.2": - version: 5.1.2 - resolution: "vite-tsconfig-paths@npm:5.1.2" +"vinyl@npm:^0.4.6": + version: 0.4.6 + resolution: "vinyl@npm:0.4.6" dependencies: - debug: "npm:^4.1.1" - globrex: "npm:^0.1.2" - tsconfck: "npm:^3.0.3" - peerDependencies: - vite: "*" - peerDependenciesMeta: - vite: - optional: true - checksum: 10/0a46db04653b60621a5d77f2054de5c29a8a6b069535ba3137e0a466b3da0308b07efb95b52713695873e99fadf35ae8878820a7227eabf1c0c1b159d9083bc0 + clone: "npm:^0.2.0" + clone-stats: "npm:^0.0.1" + checksum: 10/42034346b72648cd0fd728ed0a31147695c9c941bc72754a5059da9d9026cdeee128b787716925e63ae5cf7f7ae1d0eab97b50001c7acd2bb4ed25f612f3f4e2 languageName: node linkType: hard @@ -6162,29 +7287,37 @@ __metadata: languageName: node linkType: hard -"vite@npm:^5.4.1, vite@npm:^5.4.8": - version: 5.4.9 - resolution: "vite@npm:5.4.9" +"vite@npm:^7.0.0": + version: 7.0.0 + resolution: "vite@npm:7.0.0" dependencies: - esbuild: "npm:^0.21.3" + esbuild: "npm:^0.25.0" + fdir: "npm:^6.4.6" fsevents: "npm:~2.3.3" - postcss: "npm:^8.4.43" - rollup: "npm:^4.20.0" + picomatch: "npm:^4.0.2" + postcss: "npm:^8.5.6" + rollup: "npm:^4.40.0" + tinyglobby: "npm:^0.2.14" peerDependencies: - "@types/node": ^18.0.0 || >=20.0.0 - less: "*" + "@types/node": ^20.19.0 || >=22.12.0 + jiti: ">=1.21.0" + less: ^4.0.0 lightningcss: ^1.21.0 - sass: "*" - sass-embedded: "*" - stylus: "*" - sugarss: "*" - terser: ^5.4.0 + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: ">=0.54.8" + sugarss: ^5.0.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 dependenciesMeta: fsevents: optional: true peerDependenciesMeta: "@types/node": optional: true + jiti: + optional: true less: optional: true lightningcss: @@ -6199,29 +7332,36 @@ __metadata: optional: true terser: optional: true + tsx: + optional: true + yaml: + optional: true bin: vite: bin/vite.js - checksum: 10/60dfb3912ba6367d2d128e798d899caae3f4ec58990657b9f679c4d9de21ddec7eba5f6ad3d4fa0e8ea31771d477521b8e757a622ecc54829d73cb7f7c146bc4 + checksum: 10/2501b706dc481529efb16c6241794a66d68ea7a074d49f22e45b701769fbeeccc721c58272c9fce743d3b1472a3de497f85ca18cb059b1b8b906b2b295e524dc languageName: node linkType: hard -"vite@npm:^6.0.1": - version: 6.0.3 - resolution: "vite@npm:6.0.3" +"vite@npm:^7.0.4": + version: 7.0.5 + resolution: "vite@npm:7.0.5" dependencies: - esbuild: "npm:^0.24.0" + esbuild: "npm:^0.25.0" + fdir: "npm:^6.4.6" fsevents: "npm:~2.3.3" - postcss: "npm:^8.4.49" - rollup: "npm:^4.23.0" + picomatch: "npm:^4.0.2" + postcss: "npm:^8.5.6" + rollup: "npm:^4.40.0" + tinyglobby: "npm:^0.2.14" peerDependencies: - "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 + "@types/node": ^20.19.0 || >=22.12.0 jiti: ">=1.21.0" - less: "*" + less: ^4.0.0 lightningcss: ^1.21.0 - sass: "*" - sass-embedded: "*" - stylus: "*" - sugarss: "*" + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: ">=0.54.8" + sugarss: ^5.0.0 terser: ^5.16.0 tsx: ^4.8.1 yaml: ^2.4.2 @@ -6253,11 +7393,32 @@ __metadata: optional: true bin: vite: bin/vite.js - checksum: 10/eca0949b8cbc887e78977515d8fc22eaa2d03425d60a0a422f2db1da9d26bd1b431b2815a273c798e8e3fe176a99e105c3d87b0ba615ca19b8bf19e0334d807a + checksum: 10/7429198ee4a62badb20691356425b5b98fe87be82108748c3b3661487868fdc647c3fbb2bb1fe1803aea8e72f1a6494815fc53bf6c329b61c6784f5f2273e9eb + languageName: node + linkType: hard + +"wawoff2@npm:^1.0.1": + version: 1.0.2 + resolution: "wawoff2@npm:1.0.2" + dependencies: + argparse: "npm:^1.0.6" + bin: + woff2_compress.js: ./bin/woff2_compress.js + woff2_decompress.js: ./bin/woff2_decompress.js + checksum: 10/1c1794f916252fe55fee73213d02a0f07b48b9ec1292e297c72e9e05873edc815fe05d6ba30cc59acec95aba9aa72d6fecfb84967bcdd8e1bc31a8de76e66642 + languageName: node + linkType: hard + +"wcwidth@npm:^1.0.1": + version: 1.0.1 + resolution: "wcwidth@npm:1.0.1" + dependencies: + defaults: "npm:^1.0.3" + checksum: 10/182ebac8ca0b96845fae6ef44afd4619df6987fe5cf552fdee8396d3daa1fb9b8ec5c6c69855acb7b3c1231571393bd1f0a4cdc4028d421575348f64bb0a8817 languageName: node linkType: hard -"which@npm:^2.0.1": +"which@npm:^2.0.1, which@npm:^2.0.2": version: 2.0.2 resolution: "which@npm:2.0.2" dependencies: @@ -6268,23 +7429,14 @@ __metadata: languageName: node linkType: hard -"which@npm:^4.0.0": - version: 4.0.0 - resolution: "which@npm:4.0.0" +"which@npm:^5.0.0": + version: 5.0.0 + resolution: "which@npm:5.0.0" dependencies: isexe: "npm:^3.1.1" bin: node-which: bin/which.js - checksum: 10/f17e84c042592c21e23c8195108cff18c64050b9efb8459589116999ea9da6dd1509e6a1bac3aeebefd137be00fabbb61b5c2bc0aa0f8526f32b58ee2f545651 - languageName: node - linkType: hard - -"widest-line@npm:^4.0.1": - version: 4.0.1 - resolution: "widest-line@npm:4.0.1" - dependencies: - string-width: "npm:^5.0.1" - checksum: 10/64c48cf27171221be5f86fc54b94dd29879165bdff1a7aa92dde723d9a8c99fb108312768a5d62c8c2b80b701fa27bbd36a1ddc58367585cd45c0db7920a0cba + checksum: 10/6ec99e89ba32c7e748b8a3144e64bfc74aa63e2b2eacbb61a0060ad0b961eb1a632b08fb1de067ed59b002cec3e21de18299216ebf2325ef0f78e0f121e14e90 languageName: node linkType: hard @@ -6295,7 +7447,7 @@ __metadata: languageName: node linkType: hard -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" dependencies: @@ -6306,7 +7458,7 @@ __metadata: languageName: node linkType: hard -"wrap-ansi@npm:^8.0.1, wrap-ansi@npm:^8.1.0": +"wrap-ansi@npm:^8.1.0": version: 8.1.0 resolution: "wrap-ansi@npm:8.1.0" dependencies: @@ -6324,6 +7476,27 @@ __metadata: languageName: node linkType: hard +"xmlbuilder@npm:>=11.0.1, xmlbuilder@npm:^15.1.1": + version: 15.1.1 + resolution: "xmlbuilder@npm:15.1.1" + checksum: 10/e6f4bab2504afdd5f80491bda948894d2146756532521dbe7db33ae0931cd3000e3b4da19b3f5b3f51bedbd9ee06582144d28136d68bd1df96579ecf4d4404a2 + languageName: node + linkType: hard + +"xtend@npm:>=4.0.0 <4.1.0-0, xtend@npm:^4.0.0": + version: 4.0.2 + resolution: "xtend@npm:4.0.2" + checksum: 10/ac5dfa738b21f6e7f0dd6e65e1b3155036d68104e67e5d5d1bde74892e327d7e5636a076f625599dc394330a731861e87343ff184b0047fef1360a7ec0a5a36a + languageName: node + linkType: hard + +"y18n@npm:^5.0.5": + version: 5.0.8 + resolution: "y18n@npm:5.0.8" + checksum: 10/5f1b5f95e3775de4514edbb142398a2c37849ccfaf04a015be5d75521e9629d3be29bd4432d23c57f37e5b61ade592fb0197022e9993f81a06a5afbdcda9346d + languageName: node + linkType: hard + "yallist@npm:^3.0.2": version: 3.1.1 resolution: "yallist@npm:3.1.1" @@ -6338,6 +7511,45 @@ __metadata: languageName: node linkType: hard +"yallist@npm:^5.0.0": + version: 5.0.0 + resolution: "yallist@npm:5.0.0" + checksum: 10/1884d272d485845ad04759a255c71775db0fac56308764b4c77ea56a20d56679fad340213054c8c9c9c26fcfd4c4b2a90df993b7e0aaf3cdb73c618d1d1a802a + languageName: node + linkType: hard + +"yargs-parser@npm:^21.1.1": + version: 21.1.1 + resolution: "yargs-parser@npm:21.1.1" + checksum: 10/9dc2c217ea3bf8d858041252d43e074f7166b53f3d010a8c711275e09cd3d62a002969a39858b92bbda2a6a63a585c7127014534a560b9c69ed2d923d113406e + languageName: node + linkType: hard + +"yargs@npm:^17.0.1, yargs@npm:^17.6.2": + version: 17.7.2 + resolution: "yargs@npm:17.7.2" + dependencies: + cliui: "npm:^8.0.1" + escalade: "npm:^3.1.1" + get-caller-file: "npm:^2.0.5" + require-directory: "npm:^2.1.1" + string-width: "npm:^4.2.3" + y18n: "npm:^5.0.5" + yargs-parser: "npm:^21.1.1" + checksum: 10/abb3e37678d6e38ea85485ed86ebe0d1e3464c640d7d9069805ea0da12f69d5a32df8e5625e370f9c96dd1c2dc088ab2d0a4dd32af18222ef3c4224a19471576 + languageName: node + linkType: hard + +"yauzl@npm:^2.10.0": + version: 2.10.0 + resolution: "yauzl@npm:2.10.0" + dependencies: + buffer-crc32: "npm:~0.2.3" + fd-slicer: "npm:~1.1.0" + checksum: 10/1e4c311050dc0cf2ee3dbe8854fe0a6cde50e420b3e561a8d97042526b4cf7a0718d6c8d89e9e526a152f4a9cec55bcea9c3617264115f48bd6704cf12a04445 + languageName: node + linkType: hard + "yocto-queue@npm:^0.1.0": version: 0.1.0 resolution: "yocto-queue@npm:0.1.0" @@ -6345,9 +7557,16 @@ __metadata: languageName: node linkType: hard -"zod@npm:^3.23.8": - version: 3.23.8 - resolution: "zod@npm:3.23.8" - checksum: 10/846fd73e1af0def79c19d510ea9e4a795544a67d5b34b7e1c4d0425bf6bfd1c719446d94cdfa1721c1987d891321d61f779e8236fde517dc0e524aa851a6eff1 +"zod@npm:^3.25.67": + version: 3.25.67 + resolution: "zod@npm:3.25.67" + checksum: 10/0e35432dcca7f053e63f5dd491a87c78abe0d981817547252c3b6d05f0f58788695d1a69724759c6501dff3fd62929be24c9f314a3625179bee889150f7a61fa + languageName: node + linkType: hard + +"zod@npm:^4.0.5": + version: 4.0.5 + resolution: "zod@npm:4.0.5" + checksum: 10/f057f46e685e91ea280039ecda026c91facabdcbf869b3bae482ed13d34dce2efe9ee1f513fb1c8c0fde3b32e5904391f5ca015ec50b0924abf83a2b6f9dba65 languageName: node linkType: hard