From 4cda202ae7b82a27a73855cbd3249991d5fd3b2f Mon Sep 17 00:00:00 2001 From: Chigala <92148630+Chigala@users.noreply.github.com> Date: Fri, 6 Oct 2023 12:53:07 +0100 Subject: [PATCH 01/18] Feat/svelte kit support (#467) * feat: implemented svelte-kit adapter * feat: implemented the @trigger.dev/svelte package * scaffolded a sveltekit example project with trigger.dev * added the convertToStandardRequest function in the sveltekit package * example sveltekit project with the @trigger.dev/svelte package * doc: added the manual setup guide for sveltekit * updated the web app onboard for sveltekit * formatted the manual setup guide for sveltekit * added a link to webapp sveltekit onboarding * added a wait function to the sveltekit example app job * typo fix * removed comments from the @trigger.dev/svelte - commented out the useEventRunDetails * updated package.json to use internal packages * added a .env.example file * updated the example-svelte-app * updated the svelte-example * updated the onboarding page to reflect requested changes * made the manual setup guide more specific * created a .env.example file for svelte-example * added import aliases * updated the tsconfig and svelte.config file * updated to use uint8Array * added missing paths in the tsconfig --------- Co-authored-by: Matt Aitken --- .../frameworks/FrameworkSelector.tsx | 2 +- .../route.tsx | 114 +++++++- docs/_snippets/manual-setup-sveltekit.mdx | 249 +++++++++++++++++- .../concepts/client-adaptors.mdx | 17 +- examples/example-svelte-app/.env.example | 3 + examples/example-svelte-app/.eslintignore | 13 + examples/example-svelte-app/.eslintrc.cjs | 30 +++ examples/example-svelte-app/.gitignore | 10 + examples/example-svelte-app/.npmrc | 2 + examples/example-svelte-app/.prettierignore | 13 + examples/example-svelte-app/.prettierrc | 9 + examples/example-svelte-app/README.md | 38 +++ examples/example-svelte-app/package.json | 41 +++ examples/example-svelte-app/src/app.d.ts | 12 + examples/example-svelte-app/src/app.html | 12 + .../example-svelte-app/src/jobs/example.ts | 19 ++ .../src/lib/EventData.svelte | 20 ++ .../src/lib/EventRunData.svelte | 32 +++ .../example-svelte-app/src/lib/RunData.svelte | 27 ++ .../src/lib/SendEvent.svelte | 18 ++ .../src/routes/+layout.svelte | 23 ++ .../src/routes/+page.svelte | 10 + .../src/routes/api/demo/+server.ts | 5 + .../src/routes/api/send-test-event/+server.ts | 13 + .../src/routes/api/trigger/+server.ts | 12 + .../src/routes/events/[eventId]/+page.svelte | 18 ++ .../src/routes/events/[eventId]/+page.ts | 8 + examples/example-svelte-app/src/trigger.ts | 7 + .../example-svelte-app/static/favicon.png | Bin 0 -> 1571 bytes examples/example-svelte-app/svelte.config.js | 30 +++ examples/example-svelte-app/tsconfig.json | 29 ++ examples/example-svelte-app/vite.config.ts | 6 + examples/svelte-example/.env.example | 3 + examples/svelte-example/.eslintignore | 13 + examples/svelte-example/.eslintrc.cjs | 30 +++ examples/svelte-example/.gitignore | 10 + examples/svelte-example/.npmrc | 2 + examples/svelte-example/.prettierignore | 13 + examples/svelte-example/.prettierrc | 9 + examples/svelte-example/README.md | 38 +++ examples/svelte-example/package.json | 38 +++ examples/svelte-example/src/app.d.ts | 12 + examples/svelte-example/src/app.html | 12 + examples/svelte-example/src/jobs/example.ts | 20 ++ examples/svelte-example/src/lib/index.ts | 1 + .../svelte-example/src/routes/+page.svelte | 2 + .../src/routes/api/trigger/+server.ts | 12 + examples/svelte-example/src/trigger.ts | 7 + examples/svelte-example/static/favicon.png | Bin 0 -> 1571 bytes examples/svelte-example/svelte.config.js | 28 ++ examples/svelte-example/tsconfig.json | 25 ++ examples/svelte-example/vite.config.ts | 6 + packages/core/src/schemas/api.ts | 2 +- packages/svelte/.eslintignore | 13 + packages/svelte/.eslintrc.cjs | 30 +++ packages/svelte/.gitignore | 11 + packages/svelte/.npmrc | 2 + packages/svelte/.prettierignore | 13 + packages/svelte/.prettierrc | 9 + packages/svelte/README.md | 58 ++++ packages/svelte/package.json | 64 +++++ packages/svelte/src/TriggerProvider.svelte | 55 ++++ packages/svelte/src/app.html | 12 + packages/svelte/src/events.ts | 63 +++++ packages/svelte/src/fetch.ts | 32 +++ packages/svelte/src/index.ts | 3 + packages/svelte/src/providerContext.ts | 17 ++ packages/svelte/src/runs.ts | 54 ++++ packages/svelte/svelte.config.js | 18 ++ packages/svelte/tsconfig.json | 22 ++ packages/svelte/vite.config.ts | 9 + packages/sveltekit/LICENSE | 19 ++ packages/sveltekit/README.md | 9 + packages/sveltekit/package.json | 44 ++++ packages/sveltekit/src/index.ts | 42 +++ packages/sveltekit/tsconfig.json | 18 ++ packages/sveltekit/tsup.config.ts | 19 ++ 77 files changed, 1738 insertions(+), 23 deletions(-) create mode 100644 examples/example-svelte-app/.env.example create mode 100644 examples/example-svelte-app/.eslintignore create mode 100644 examples/example-svelte-app/.eslintrc.cjs create mode 100644 examples/example-svelte-app/.gitignore create mode 100644 examples/example-svelte-app/.npmrc create mode 100644 examples/example-svelte-app/.prettierignore create mode 100644 examples/example-svelte-app/.prettierrc create mode 100644 examples/example-svelte-app/README.md create mode 100644 examples/example-svelte-app/package.json create mode 100644 examples/example-svelte-app/src/app.d.ts create mode 100644 examples/example-svelte-app/src/app.html create mode 100644 examples/example-svelte-app/src/jobs/example.ts create mode 100644 examples/example-svelte-app/src/lib/EventData.svelte create mode 100644 examples/example-svelte-app/src/lib/EventRunData.svelte create mode 100644 examples/example-svelte-app/src/lib/RunData.svelte create mode 100644 examples/example-svelte-app/src/lib/SendEvent.svelte create mode 100644 examples/example-svelte-app/src/routes/+layout.svelte create mode 100644 examples/example-svelte-app/src/routes/+page.svelte create mode 100644 examples/example-svelte-app/src/routes/api/demo/+server.ts create mode 100644 examples/example-svelte-app/src/routes/api/send-test-event/+server.ts create mode 100644 examples/example-svelte-app/src/routes/api/trigger/+server.ts create mode 100644 examples/example-svelte-app/src/routes/events/[eventId]/+page.svelte create mode 100644 examples/example-svelte-app/src/routes/events/[eventId]/+page.ts create mode 100644 examples/example-svelte-app/src/trigger.ts create mode 100644 examples/example-svelte-app/static/favicon.png create mode 100644 examples/example-svelte-app/svelte.config.js create mode 100644 examples/example-svelte-app/tsconfig.json create mode 100644 examples/example-svelte-app/vite.config.ts create mode 100644 examples/svelte-example/.env.example create mode 100644 examples/svelte-example/.eslintignore create mode 100644 examples/svelte-example/.eslintrc.cjs create mode 100644 examples/svelte-example/.gitignore create mode 100644 examples/svelte-example/.npmrc create mode 100644 examples/svelte-example/.prettierignore create mode 100644 examples/svelte-example/.prettierrc create mode 100644 examples/svelte-example/README.md create mode 100644 examples/svelte-example/package.json create mode 100644 examples/svelte-example/src/app.d.ts create mode 100644 examples/svelte-example/src/app.html create mode 100644 examples/svelte-example/src/jobs/example.ts create mode 100644 examples/svelte-example/src/lib/index.ts create mode 100644 examples/svelte-example/src/routes/+page.svelte create mode 100644 examples/svelte-example/src/routes/api/trigger/+server.ts create mode 100644 examples/svelte-example/src/trigger.ts create mode 100644 examples/svelte-example/static/favicon.png create mode 100644 examples/svelte-example/svelte.config.js create mode 100644 examples/svelte-example/tsconfig.json create mode 100644 examples/svelte-example/vite.config.ts create mode 100644 packages/svelte/.eslintignore create mode 100644 packages/svelte/.eslintrc.cjs create mode 100644 packages/svelte/.gitignore create mode 100644 packages/svelte/.npmrc create mode 100644 packages/svelte/.prettierignore create mode 100644 packages/svelte/.prettierrc create mode 100644 packages/svelte/README.md create mode 100644 packages/svelte/package.json create mode 100644 packages/svelte/src/TriggerProvider.svelte create mode 100644 packages/svelte/src/app.html create mode 100644 packages/svelte/src/events.ts create mode 100644 packages/svelte/src/fetch.ts create mode 100644 packages/svelte/src/index.ts create mode 100644 packages/svelte/src/providerContext.ts create mode 100644 packages/svelte/src/runs.ts create mode 100644 packages/svelte/svelte.config.js create mode 100644 packages/svelte/tsconfig.json create mode 100644 packages/svelte/vite.config.ts create mode 100644 packages/sveltekit/LICENSE create mode 100644 packages/sveltekit/README.md create mode 100644 packages/sveltekit/package.json create mode 100644 packages/sveltekit/src/index.ts create mode 100644 packages/sveltekit/tsconfig.json create mode 100644 packages/sveltekit/tsup.config.ts diff --git a/apps/webapp/app/components/frameworks/FrameworkSelector.tsx b/apps/webapp/app/components/frameworks/FrameworkSelector.tsx index 8302e350d7f..3ce50b1e56e 100644 --- a/apps/webapp/app/components/frameworks/FrameworkSelector.tsx +++ b/apps/webapp/app/components/frameworks/FrameworkSelector.tsx @@ -66,7 +66,7 @@ export function FrameworkSelector() { - + diff --git a/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.setup.sveltekit/route.tsx b/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.setup.sveltekit/route.tsx index 8083db44b13..8ab8fac826a 100644 --- a/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.setup.sveltekit/route.tsx +++ b/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.setup.sveltekit/route.tsx @@ -1,23 +1,113 @@ -import { SvelteKitLogo } from "~/assets/logos/SveltekitLogo"; -import { FrameworkComingSoon } from "~/components/frameworks/FrameworkComingSoon"; +import { ChatBubbleLeftRightIcon, Squares2X2Icon } from "@heroicons/react/20/solid"; +import invariant from "tiny-invariant"; +import { Feedback } from "~/components/Feedback"; +import { PageGradient } from "~/components/PageGradient"; +import { RunDevCommand, TriggerDevStep } from "~/components/SetupCommands"; +import { StepContentContainer } from "~/components/StepContentContainer"; +import { InlineCode } from "~/components/code/InlineCode"; import { BreadcrumbLink } from "~/components/navigation/NavBar"; +import { Button, LinkButton } from "~/components/primitives/Buttons"; +import { ClipboardField } from "~/components/primitives/ClipboardField"; +import { Header1 } from "~/components/primitives/Headers"; +import { NamedIcon } from "~/components/primitives/NamedIcon"; +import { Paragraph } from "~/components/primitives/Paragraph"; +import { StepNumber } from "~/components/primitives/StepNumber"; +import { useAppOrigin } from "~/hooks/useAppOrigin"; +import { useProjectSetupComplete } from "~/hooks/useProjectSetupComplete"; +import { useDevEnvironment } from "~/hooks/useEnvironments"; +import { useOrganization } from "~/hooks/useOrganizations"; +import { useProject } from "~/hooks/useProject"; import { Handle } from "~/utils/handle"; -import { trimTrailingSlash } from "~/utils/pathBuilder"; - +import { projectSetupPath, trimTrailingSlash } from "~/utils/pathBuilder"; +import { Callout } from "~/components/primitives/Callout"; +import { Badge } from "~/components/primitives/Badge"; export const handle: Handle = { breadcrumb: (match) => ( ), }; -export default function Page() { +export default function SetUpSveltekit() { + const organization = useOrganization(); + const project = useProject(); + useProjectSetupComplete(); + const devEnvironment = useDevEnvironment(); + invariant(devEnvironment, "Dev environment must be defined"); return ( - - - + +
+
+ + Get setup in 5 minutes + +
+ + Choose a different framework + + + I'm stuck! + + } + defaultValue="help" + /> +
+
+
+ + Trigger.dev has full support for serverless. We will be adding support for long-running + servers soon. + +
+ + + Copy your server API Key to your clipboard: +
+ Server} + /> +
+ Now follow this guide: + + Manual installation guide + +
+
+ + + + + + + + + + + This page will automatically refresh. + +
+
+
+
); } diff --git a/docs/_snippets/manual-setup-sveltekit.mdx b/docs/_snippets/manual-setup-sveltekit.mdx index 8e299631de5..edf3382de46 100644 --- a/docs/_snippets/manual-setup-sveltekit.mdx +++ b/docs/_snippets/manual-setup-sveltekit.mdx @@ -1 +1,248 @@ -We're in the process of building support for the SvelteKit framework. You can follow along with progress or contribute via [this GitHub issue](https://github.com/triggerdotdev/trigger.dev/issues). +## Installing Required Packages + +To begin, install the necessary packages in your Sveltekit project directory. You can choose one of the following package managers: + + + +```bash npm + +npm i @trigger.dev/sdk @trigger.dev/sveltekit + +``` + +```bash pnpm +pnpm install @trigger.dev/sdk @trigger.dev/sveltekit + +``` + +```bash yarn +yarn add @trigger.dev/sdk @trigger.dev/sveltekit + +``` + + + +## Obtaining the Development API Key + +To locate your development API key, login to the [Trigger.dev +dashboard](https://cloud.trigger.dev) and select the Project you want to +connect to. Then click on the Environments & API Keys tab in the left menu. +You can copy your development API Key from the field at the top of this page. +(Your development key will start with `tr_dev_`). + +## Adding Environment Variables + +Create a `.env` file at the root of your project and include your Trigger API key and URL like this: + +```bash + +TRIGGER_API_KEY=ENTER_YOUR_DEVELOPMENT_API_KEY_HERE +TRIGGER_API_URL=https://cloud.trigger.dev + +``` + +Replace `ENTER_YOUR_DEVELOPMENT_API_KEY_HERE` with the actual API key obtained from the previous step. + +## Configuring the Trigger Client + +To set up the Trigger Client for your project, follow these steps: + +1. **Create Configuration File:** + + In your project directory, create a configuration file named `trigger.ts` or `trigger.js`, depending on whether your project uses TypeScript (`.ts`) or JavaScript (`.js`). + +2. **Choose Directory:** + + Create the file within the `src` directory. You can also create it directly in the project root. + +3. **Add Configuration Code:** + + Open the configuration file you created and add the following code: + + ```typescript src/trigger.(ts/js) + // trigger.ts (for TypeScript) or trigger.js (for JavaScript) + + import { TriggerClient } from "@trigger.dev/sdk"; + import { TRIGGER_API_KEY, TRIGGER_API_URL } from "$env/static/private"; + + export const client = new TriggerClient({ + id: "my-app", + apiKey: TRIGGER_API_KEY, + apiUrl: TRIGGER_API_URL, + }); + ``` + + Replace **"my-app"** with an appropriate identifier for your project. The **apiKey** and **apiUrl** are obtained from the environment variables you set earlier. + +4. **File Location:** + + Example Directory Structure: + + ``` + project-root/ + ├── src/ + ├── trigger.ts + ├── other files... + ``` + + Example Directory Structure where the file is stored in the project root + + ``` + project-root/ + |──src/ + |──other files... + ├── trigger.ts + ├── other files... + ``` + +By following these steps, you'll configure the Trigger Client to work with your project, regardless of whether you're using TypeScript or JavaScript files. + +## Creating the API Route + +To establish an API route for interacting with Trigger.dev, follow these steps based on your project's file type and structure + +1. Create a new file named `+server.(ts/js)` within the `src/routes/api/trigger` directory. +2. Add the following code to `trigger.(ts/js)`: + +```typescript +import { createSvelteRoute } from "@trigger.dev/sveltekit"; + +import { client } from "$trigger"; + +// Replace this with your own jobs +import "$jobs/example"; + +// Create the Svelte route handler using the createSvelteRoute function +const svelteRoute = createSvelteRoute(client); + +// Define your API route handler +export const POST = svelteRoute.POST; +``` + +## Creating the Example Job + +1. Create a folder named `Jobs` alongside your `src` directory +2. Inside the `Jobs` folder, add two files named `example.(ts/js)` and `index.(ts/js)`. + + + +```typescript src/jobs/example.(ts/js) +import { eventTrigger } from "@trigger.dev/sdk"; +import { client } from "$trigger"; + +// your first job +client.defineJob({ + id: "example-job", + name: "Example Job", + version: "0.0.1", + trigger: eventTrigger({ + name: "example.event", + }), + run: async (payload, io, ctx) => { + await io.logger.info("Hello world!", { payload }); + + return { + message: "Hello world!", + }; + }, +}); +``` + +```typescript index.(ts/js) +// import all your job files here + +export * from "./examples"; +``` + + + +## Additonal Job Definitions + +You can define more job definitions by creating additional files in the `Jobs` folder and exporting them in `index` file. + +For example, in `index.(ts/js)`, you can export other job files like this: + +```typescript +// import all your job files here + +export * from "./examples"; +export * from "./other-job-file"; +``` + +## Adding Configuration to `package.json` + +Inside the `package.json` file, add the following configuration under the root object: + +```json +"trigger.dev": { + "endpointId": "my-app" +} +``` + +Your `package.json` file might look something like this: + +```json +{ + "name": "my-app", + "version": "1.0.0", + "dependencies": { + // ... other dependencies + }, + "trigger.dev": { + "endpointId": "my-app" + } +} +``` + +Replace **"my-app"** with the appropriate identifier you used during the step for creating the Trigger Client. + +## Running + +### Run your Sveltekit app + +Run your Sveltekit app locally, like you normally would. For example: + + + +```bash npm +npm run dev +``` + +```bash pnpm +pnpm run dev +``` + +```bash yarn +yarn run dev +``` + + + +### Run the CLI 'dev' command + +In a **_separate terminal window or tab_** run: + + + +```bash npm +npx @trigger.dev/cli@latest dev +``` + +```bash pnpm +pnpm dlx @trigger.dev/cli@latest dev +``` + +```bash yarn +yarn dlx @trigger.dev/cli@latest dev +``` + + +
+ + You can optionally pass the port if you're not running on 3000 by adding + `--port 5173` to the end + + + You can optionally pass the hostname if you're not running on localhost by adding + `--hostname `. Example, in case your Sveltekit app is running on 0.0.0.0: `--hostname 0.0.0.0`. + diff --git a/docs/documentation/concepts/client-adaptors.mdx b/docs/documentation/concepts/client-adaptors.mdx index d724284ef1c..7cd7c3a9052 100644 --- a/docs/documentation/concepts/client-adaptors.mdx +++ b/docs/documentation/concepts/client-adaptors.mdx @@ -24,11 +24,12 @@ Adaptors allows Clients to receive data from the Trigger API. They do this by cr Each platform has one or more adaptors, see the guides below: -| Platform | Adaptor | -| ------------------------------------------------- | -------------------- | -| [Next.js](/documentation/guides/platforms/nextjs) | `createPagesRoute()` | -| [Next.js](/documentation/guides/platforms/nextjs) | `createAppRoute()` | -| [NestJS](/documentation/guides/manual/nestjs) | `TriggerDevModule` | -| [Astro](/documentation/guides/platforms/astro) | `createAstroRoute()` | -| [Remix](/documentation/guides/platforms/remix) | `createRemixRoute()` | -| Express | Coming soon | +| Platform | Adaptor | +| ------------------------------------------------------ | --------------------- | +| [Next.js](/documentation/guides/platforms/nextjs) | `createPagesRoute()` | +| [Next.js](/documentation/guides/platforms/nextjs) | `createAppRoute()` | +| [NestJS](/documentation/guides/manual/nestjs) | `TriggerDevModule` | +| [Astro](/documentation/guides/platforms/astro) | `createAstroRoute()` | +| [Remix](/documentation/guides/platforms/remix) | `createRemixRoute()` | +| [Sveltekit](/documentation/guides/platforms/sveltekit) | `createSvelteRoute()` | +| Express | Coming soon | diff --git a/examples/example-svelte-app/.env.example b/examples/example-svelte-app/.env.example new file mode 100644 index 00000000000..391f2ffed7d --- /dev/null +++ b/examples/example-svelte-app/.env.example @@ -0,0 +1,3 @@ +TRIGGER_API_KEY= +PUBLIC_TRIGGER_API_KEY= +PUBLIC_API_URL= \ No newline at end of file diff --git a/examples/example-svelte-app/.eslintignore b/examples/example-svelte-app/.eslintignore new file mode 100644 index 00000000000..38972655faf --- /dev/null +++ b/examples/example-svelte-app/.eslintignore @@ -0,0 +1,13 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example + +# Ignore files for PNPM, NPM and YARN +pnpm-lock.yaml +package-lock.json +yarn.lock diff --git a/examples/example-svelte-app/.eslintrc.cjs b/examples/example-svelte-app/.eslintrc.cjs new file mode 100644 index 00000000000..ebc19589fa5 --- /dev/null +++ b/examples/example-svelte-app/.eslintrc.cjs @@ -0,0 +1,30 @@ +module.exports = { + root: true, + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:svelte/recommended', + 'prettier' + ], + parser: '@typescript-eslint/parser', + plugins: ['@typescript-eslint'], + parserOptions: { + sourceType: 'module', + ecmaVersion: 2020, + extraFileExtensions: ['.svelte'] + }, + env: { + browser: true, + es2017: true, + node: true + }, + overrides: [ + { + files: ['*.svelte'], + parser: 'svelte-eslint-parser', + parserOptions: { + parser: '@typescript-eslint/parser' + } + } + ] +}; diff --git a/examples/example-svelte-app/.gitignore b/examples/example-svelte-app/.gitignore new file mode 100644 index 00000000000..6635cf55427 --- /dev/null +++ b/examples/example-svelte-app/.gitignore @@ -0,0 +1,10 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example +vite.config.js.timestamp-* +vite.config.ts.timestamp-* diff --git a/examples/example-svelte-app/.npmrc b/examples/example-svelte-app/.npmrc new file mode 100644 index 00000000000..0c05da457e4 --- /dev/null +++ b/examples/example-svelte-app/.npmrc @@ -0,0 +1,2 @@ +engine-strict=true +resolution-mode=highest diff --git a/examples/example-svelte-app/.prettierignore b/examples/example-svelte-app/.prettierignore new file mode 100644 index 00000000000..38972655faf --- /dev/null +++ b/examples/example-svelte-app/.prettierignore @@ -0,0 +1,13 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example + +# Ignore files for PNPM, NPM and YARN +pnpm-lock.yaml +package-lock.json +yarn.lock diff --git a/examples/example-svelte-app/.prettierrc b/examples/example-svelte-app/.prettierrc new file mode 100644 index 00000000000..a77fddea909 --- /dev/null +++ b/examples/example-svelte-app/.prettierrc @@ -0,0 +1,9 @@ +{ + "useTabs": true, + "singleQuote": true, + "trailingComma": "none", + "printWidth": 100, + "plugins": ["prettier-plugin-svelte"], + "pluginSearchDirs": ["."], + "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] +} diff --git a/examples/example-svelte-app/README.md b/examples/example-svelte-app/README.md new file mode 100644 index 00000000000..5c91169b0ca --- /dev/null +++ b/examples/example-svelte-app/README.md @@ -0,0 +1,38 @@ +# create-svelte + +Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte). + +## Creating a project + +If you're seeing this, you've probably already done this step. Congrats! + +```bash +# create a new project in the current directory +npm create svelte@latest + +# create a new project in my-app +npm create svelte@latest my-app +``` + +## Developing + +Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server: + +```bash +npm run dev + +# or start the server and open the app in a new browser tab +npm run dev -- --open +``` + +## Building + +To create a production version of your app: + +```bash +npm run build +``` + +You can preview the production build with `npm run preview`. + +> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment. diff --git a/examples/example-svelte-app/package.json b/examples/example-svelte-app/package.json new file mode 100644 index 00000000000..b41f8ff90af --- /dev/null +++ b/examples/example-svelte-app/package.json @@ -0,0 +1,41 @@ +{ + "name": "example-svelte-app", + "version": "0.0.1", + "private": true, + "scripts": { + "dev": "vite dev", + "build": "vite build", + "preview": "vite preview", + "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", + "lint": "prettier --plugin-search-dir . --check . && eslint .", + "format": "prettier --plugin-search-dir . --write ." + }, + "dependencies": { + "@tanstack/svelte-query": "^4.33.0", + "@trigger.dev/sdk": "workspace:*", + "@trigger.dev/svelte": "workspace:*", + "@trigger.dev/sveltekit": "workspace:*", + "@trigger.dev/core": "workspace:*" + }, + "devDependencies": { + "@sveltejs/adapter-auto": "^2.0.0", + "@sveltejs/kit": "^1.20.4", + "@typescript-eslint/eslint-plugin": "^5.45.0", + "@typescript-eslint/parser": "^5.45.0", + "eslint": "^8.28.0", + "eslint-config-prettier": "^8.5.0", + "eslint-plugin-svelte": "^2.30.0", + "prettier": "^2.8.0", + "prettier-plugin-svelte": "^2.10.1", + "svelte": "^4.0.5", + "svelte-check": "^3.4.3", + "tslib": "^2.4.1", + "typescript": "^5.0.0", + "vite": "^4.4.2" + }, + "trigger.dev": { + "endpointId": "test-svelte" + }, + "type": "module" +} diff --git a/examples/example-svelte-app/src/app.d.ts b/examples/example-svelte-app/src/app.d.ts new file mode 100644 index 00000000000..f59b884c51e --- /dev/null +++ b/examples/example-svelte-app/src/app.d.ts @@ -0,0 +1,12 @@ +// See https://kit.svelte.dev/docs/types#app +// for information about these interfaces +declare global { + namespace App { + // interface Error {} + // interface Locals {} + // interface PageData {} + // interface Platform {} + } +} + +export {}; diff --git a/examples/example-svelte-app/src/app.html b/examples/example-svelte-app/src/app.html new file mode 100644 index 00000000000..effe0d0d266 --- /dev/null +++ b/examples/example-svelte-app/src/app.html @@ -0,0 +1,12 @@ + + + + + + + %sveltekit.head% + + +
%sveltekit.body%
+ + diff --git a/examples/example-svelte-app/src/jobs/example.ts b/examples/example-svelte-app/src/jobs/example.ts new file mode 100644 index 00000000000..2bae1dc42fe --- /dev/null +++ b/examples/example-svelte-app/src/jobs/example.ts @@ -0,0 +1,19 @@ +import { eventTrigger } from '@trigger.dev/sdk'; +import { client } from '../trigger'; + +// your first job +client.defineJob({ + id: 'svelte-job-testing', + name: 'testing svelte', + version: '0.0.1', + trigger: eventTrigger({ + name: 'test.event.testing' + }), + run: async (payload, io, ctx) => { + await io.logger.info('Hello world!', { payload }); + + return { + message: 'Hello world!' + }; + } +}); diff --git a/examples/example-svelte-app/src/lib/EventData.svelte b/examples/example-svelte-app/src/lib/EventData.svelte new file mode 100644 index 00000000000..9d54e5d65aa --- /dev/null +++ b/examples/example-svelte-app/src/lib/EventData.svelte @@ -0,0 +1,20 @@ + + +

Event

+ +{#if isLoading} +

Loading

+{:else if error} +
{JSON.stringify(error, null, 2)}
+{:else if data} +

+ Event ID: + {data.id} +

+{/if} diff --git a/examples/example-svelte-app/src/lib/EventRunData.svelte b/examples/example-svelte-app/src/lib/EventRunData.svelte new file mode 100644 index 00000000000..197df556e19 --- /dev/null +++ b/examples/example-svelte-app/src/lib/EventRunData.svelte @@ -0,0 +1,32 @@ + + +

Event Run Data

+ +{#if $runDetails?.isLoading} +

Loading...

+{:else if $runDetails?.isError} +

Error

+{:else if $runDetails?.data} +
Run status: {$runDetails.data.status}
+
+ {#if $runDetails.data.tasks} + {#each $runDetails.data.tasks as task (task.id)} +
+

{task.displayKey ?? task.name}

+

{task.icon}

+

Status: {task.status}

+
+ {/each} + {/if} +
+ {#if $runDetails.data.output} + +
{JSON.stringify($runDetails.data.output, null, 2)}
+
+ {/if} +{/if} diff --git a/examples/example-svelte-app/src/lib/RunData.svelte b/examples/example-svelte-app/src/lib/RunData.svelte new file mode 100644 index 00000000000..ef7f9a863a7 --- /dev/null +++ b/examples/example-svelte-app/src/lib/RunData.svelte @@ -0,0 +1,27 @@ + + +

Run Data

+ +{#if isLoading} +

Loading...

+{:else if isError} +

Error

+{:else if data} +
Run status: {data.status}
+
+ {#if data.tasks} + {#each data.tasks as task (task.id)} +
+

{task.name}

+

Status: {task.status}

+
+ {/each} + {/if} +
+{/if} diff --git a/examples/example-svelte-app/src/lib/SendEvent.svelte b/examples/example-svelte-app/src/lib/SendEvent.svelte new file mode 100644 index 00000000000..ae40b0dae39 --- /dev/null +++ b/examples/example-svelte-app/src/lib/SendEvent.svelte @@ -0,0 +1,18 @@ + + + diff --git a/examples/example-svelte-app/src/routes/+layout.svelte b/examples/example-svelte-app/src/routes/+layout.svelte new file mode 100644 index 00000000000..0d02d2191d3 --- /dev/null +++ b/examples/example-svelte-app/src/routes/+layout.svelte @@ -0,0 +1,23 @@ + + + + +
+ +
+ + +
+
\ No newline at end of file diff --git a/examples/example-svelte-app/src/routes/+page.svelte b/examples/example-svelte-app/src/routes/+page.svelte new file mode 100644 index 00000000000..57f92864ae9 --- /dev/null +++ b/examples/example-svelte-app/src/routes/+page.svelte @@ -0,0 +1,10 @@ + + + +
+

Welcome to SvelteKit

+ + +
diff --git a/examples/example-svelte-app/src/routes/api/demo/+server.ts b/examples/example-svelte-app/src/routes/api/demo/+server.ts new file mode 100644 index 00000000000..98b9db315a1 --- /dev/null +++ b/examples/example-svelte-app/src/routes/api/demo/+server.ts @@ -0,0 +1,5 @@ +import { json } from "@sveltejs/kit"; + +export function GET() { + return json({ message: "Hello from the server!" },{status:200}) +} \ No newline at end of file diff --git a/examples/example-svelte-app/src/routes/api/send-test-event/+server.ts b/examples/example-svelte-app/src/routes/api/send-test-event/+server.ts new file mode 100644 index 00000000000..8e86dabbffe --- /dev/null +++ b/examples/example-svelte-app/src/routes/api/send-test-event/+server.ts @@ -0,0 +1,13 @@ +import { json } from '@sveltejs/kit'; +import type { RequestHandler } from './$types.js'; + +import { client } from '$trigger'; + +//this route is used to send events to Trigger.dev +export const POST: RequestHandler = async () => { + const event = await client.sendEvent({ + name: 'test.event.testing' + }); + + return json(event); +}; diff --git a/examples/example-svelte-app/src/routes/api/trigger/+server.ts b/examples/example-svelte-app/src/routes/api/trigger/+server.ts new file mode 100644 index 00000000000..ed06bee0718 --- /dev/null +++ b/examples/example-svelte-app/src/routes/api/trigger/+server.ts @@ -0,0 +1,12 @@ +import { createSvelteRoute } from '@trigger.dev/sveltekit'; + +import { client } from '$trigger'; + +//add your jobs here +import '$jobs/example'; + +// Create the Svelte route handler using the createSvelteRoute function +const svelteRoute = createSvelteRoute(client); + +// Define your API route handler +export const POST = svelteRoute.POST; diff --git a/examples/example-svelte-app/src/routes/events/[eventId]/+page.svelte b/examples/example-svelte-app/src/routes/events/[eventId]/+page.svelte new file mode 100644 index 00000000000..3bd6a60bf52 --- /dev/null +++ b/examples/example-svelte-app/src/routes/events/[eventId]/+page.svelte @@ -0,0 +1,18 @@ + + +
+ {#if $event.isLoading} +

Loading...

+ {:else if $event.isError} +

There was an error

+ {:else if $event.isSuccess} + + {/if} +
diff --git a/examples/example-svelte-app/src/routes/events/[eventId]/+page.ts b/examples/example-svelte-app/src/routes/events/[eventId]/+page.ts new file mode 100644 index 00000000000..e7e94397158 --- /dev/null +++ b/examples/example-svelte-app/src/routes/events/[eventId]/+page.ts @@ -0,0 +1,8 @@ +import type { PageLoad } from './$types'; + +export const load: PageLoad = ({ params }) => { + return { + eventId: params.eventId +}; +}; +export const ssr = false; diff --git a/examples/example-svelte-app/src/trigger.ts b/examples/example-svelte-app/src/trigger.ts new file mode 100644 index 00000000000..0b4f9a03812 --- /dev/null +++ b/examples/example-svelte-app/src/trigger.ts @@ -0,0 +1,7 @@ +import { TriggerClient } from '@trigger.dev/sdk'; +import {TRIGGER_API_KEY} from "$env/static/private" + +export const client = new TriggerClient({ + id: 'test-svelte', + apiKey: TRIGGER_API_KEY, +}); diff --git a/examples/example-svelte-app/static/favicon.png b/examples/example-svelte-app/static/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..825b9e65af7c104cfb07089bb28659393b4f2097 GIT binary patch literal 1571 zcmV+;2Hg3HP)Px)-AP12RCwC$UE6KzI1p6{F2N z1VK2vi|pOpn{~#djwYcWXTI_im_u^TJgMZ4JMOsSj!0ma>B?-(Hr@X&W@|R-$}W@Z zgj#$x=!~7LGqHW?IO8+*oE1MyDp!G=L0#^lUx?;!fXv@l^6SvTnf^ac{5OurzC#ZMYc20lI%HhX816AYVs1T3heS1*WaWH z%;x>)-J}YB5#CLzU@GBR6sXYrD>Vw(Fmt#|JP;+}<#6b63Ike{Fuo!?M{yEffez;| zp!PfsuaC)>h>-AdbnwN13g*1LowNjT5?+lFVd#9$!8Z9HA|$*6dQ8EHLu}U|obW6f z2%uGv?vr=KNq7YYa2Roj;|zooo<)lf=&2yxM@e`kM$CmCR#x>gI>I|*Ubr({5Y^rb zghxQU22N}F51}^yfDSt786oMTc!W&V;d?76)9KXX1 z+6Okem(d}YXmmOiZq$!IPk5t8nnS{%?+vDFz3BevmFNgpIod~R{>@#@5x9zJKEHLHv!gHeK~n)Ld!M8DB|Kfe%~123&Hz1Z(86nU7*G5chmyDe ziV7$pB7pJ=96hpxHv9rCR29%bLOXlKU<_13_M8x)6;P8E1Kz6G<&P?$P^%c!M5`2` zfY2zg;VK5~^>TJGQzc+33-n~gKt{{of8GzUkWmU110IgI0DLxRIM>0US|TsM=L|@F z0Bun8U!cRB7-2apz=y-7*UxOxz@Z0)@QM)9wSGki1AZ38ceG7Q72z5`i;i=J`ILzL z@iUO?SBBG-0cQuo+an4TsLy-g-x;8P4UVwk|D8{W@U1Zi z!M)+jqy@nQ$p?5tsHp-6J304Q={v-B>66$P0IDx&YT(`IcZ~bZfmn11#rXd7<5s}y zBi9eim&zQc0Dk|2>$bs0PnLmDfMP5lcXRY&cvJ=zKxI^f0%-d$tD!`LBf9^jMSYUA zI8U?CWdY@}cRq6{5~y+)#h1!*-HcGW@+gZ4B};0OnC~`xQOyH19z*TA!!BJ%9s0V3F?CAJ{hTd#*tf+ur-W9MOURF-@B77_-OshsY}6 zOXRY=5%C^*26z?l)1=$bz30!so5tfABdSYzO+H=CpV~aaUefmjvfZ3Ttu9W&W3Iu6 zROlh0MFA5h;my}8lB0tAV-Rvc2Zs_CCSJnx@d`**$idgy-iMob4dJWWw|21b4NB=LfsYp0Aeh{Ov)yztQi;eL4y5 zMi>8^SzKqk8~k?UiQK^^-5d8c%bV?$F8%X~czyiaKCI2=UH To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment. diff --git a/examples/svelte-example/package.json b/examples/svelte-example/package.json new file mode 100644 index 00000000000..92c355be21b --- /dev/null +++ b/examples/svelte-example/package.json @@ -0,0 +1,38 @@ +{ + "name": "svelte-example", + "version": "0.0.1", + "private": true, + "scripts": { + "dev": "vite dev", + "build": "vite build", + "preview": "vite preview", + "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", + "lint": "prettier --plugin-search-dir . --check . && eslint .", + "format": "prettier --plugin-search-dir . --write ." + }, + "devDependencies": { + "@sveltejs/adapter-auto": "^2.0.0", + "@sveltejs/kit": "^1.20.4", + "@typescript-eslint/eslint-plugin": "^5.45.0", + "@typescript-eslint/parser": "^5.45.0", + "eslint": "^8.28.0", + "eslint-config-prettier": "^8.5.0", + "eslint-plugin-svelte": "^2.30.0", + "prettier": "^2.8.0", + "prettier-plugin-svelte": "^2.10.1", + "svelte": "^4.0.5", + "svelte-check": "^3.4.3", + "tslib": "^2.4.1", + "typescript": "^5.0.0", + "vite": "^4.4.2" + }, + "dependencies": { + "@trigger.dev/sdk": "workspace:*", + "@trigger.dev/sveltekit": "workspace:*" + }, + "trigger.dev": { + "endpointId": "sveltekit-example" + }, + "type": "module" +} diff --git a/examples/svelte-example/src/app.d.ts b/examples/svelte-example/src/app.d.ts new file mode 100644 index 00000000000..f59b884c51e --- /dev/null +++ b/examples/svelte-example/src/app.d.ts @@ -0,0 +1,12 @@ +// See https://kit.svelte.dev/docs/types#app +// for information about these interfaces +declare global { + namespace App { + // interface Error {} + // interface Locals {} + // interface PageData {} + // interface Platform {} + } +} + +export {}; diff --git a/examples/svelte-example/src/app.html b/examples/svelte-example/src/app.html new file mode 100644 index 00000000000..effe0d0d266 --- /dev/null +++ b/examples/svelte-example/src/app.html @@ -0,0 +1,12 @@ + + + + + + + %sveltekit.head% + + +
%sveltekit.body%
+ + diff --git a/examples/svelte-example/src/jobs/example.ts b/examples/svelte-example/src/jobs/example.ts new file mode 100644 index 00000000000..aad34452b7a --- /dev/null +++ b/examples/svelte-example/src/jobs/example.ts @@ -0,0 +1,20 @@ +import { eventTrigger } from '@trigger.dev/sdk'; +import { client } from '../trigger'; + +// your first job +client.defineJob({ + id: 'test-svelte-job', + name: 'Test sveltekit', + version: '0.0.1', + trigger: eventTrigger({ + name: 'test.event' + }), + run: async (payload, io, ctx) => { + await io.wait("waiting", 5) + await io.logger.info('Hello world!', { payload }); + + return { + message: 'Hello world!' + }; + } +}); diff --git a/examples/svelte-example/src/lib/index.ts b/examples/svelte-example/src/lib/index.ts new file mode 100644 index 00000000000..856f2b6c38a --- /dev/null +++ b/examples/svelte-example/src/lib/index.ts @@ -0,0 +1 @@ +// place files you want to import through the `$lib` alias in this folder. diff --git a/examples/svelte-example/src/routes/+page.svelte b/examples/svelte-example/src/routes/+page.svelte new file mode 100644 index 00000000000..5982b0ae37d --- /dev/null +++ b/examples/svelte-example/src/routes/+page.svelte @@ -0,0 +1,2 @@ +

Welcome to SvelteKit

+

Visit kit.svelte.dev to read the documentation

diff --git a/examples/svelte-example/src/routes/api/trigger/+server.ts b/examples/svelte-example/src/routes/api/trigger/+server.ts new file mode 100644 index 00000000000..bfe2c729495 --- /dev/null +++ b/examples/svelte-example/src/routes/api/trigger/+server.ts @@ -0,0 +1,12 @@ +import { createSvelteRoute } from '@trigger.dev/sveltekit'; + +import { client } from '$trigger'; + +// // Replace this with your own jobs +import '$jobs/example'; + +// Create the Svelte route handler using the createSvelteRoute function +const svelteRoute = createSvelteRoute(client); + +// Define your API route handler +export const POST = svelteRoute.POST; diff --git a/examples/svelte-example/src/trigger.ts b/examples/svelte-example/src/trigger.ts new file mode 100644 index 00000000000..acea0c199dd --- /dev/null +++ b/examples/svelte-example/src/trigger.ts @@ -0,0 +1,7 @@ +import { TriggerClient } from '@trigger.dev/sdk'; +import { TRIGGER_API_KEY } from '$env/static/private'; + +export const client = new TriggerClient({ + id: 'sveltekit-example', + apiKey: TRIGGER_API_KEY, +}); diff --git a/examples/svelte-example/static/favicon.png b/examples/svelte-example/static/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..825b9e65af7c104cfb07089bb28659393b4f2097 GIT binary patch literal 1571 zcmV+;2Hg3HP)Px)-AP12RCwC$UE6KzI1p6{F2N z1VK2vi|pOpn{~#djwYcWXTI_im_u^TJgMZ4JMOsSj!0ma>B?-(Hr@X&W@|R-$}W@Z zgj#$x=!~7LGqHW?IO8+*oE1MyDp!G=L0#^lUx?;!fXv@l^6SvTnf^ac{5OurzC#ZMYc20lI%HhX816AYVs1T3heS1*WaWH z%;x>)-J}YB5#CLzU@GBR6sXYrD>Vw(Fmt#|JP;+}<#6b63Ike{Fuo!?M{yEffez;| zp!PfsuaC)>h>-AdbnwN13g*1LowNjT5?+lFVd#9$!8Z9HA|$*6dQ8EHLu}U|obW6f z2%uGv?vr=KNq7YYa2Roj;|zooo<)lf=&2yxM@e`kM$CmCR#x>gI>I|*Ubr({5Y^rb zghxQU22N}F51}^yfDSt786oMTc!W&V;d?76)9KXX1 z+6Okem(d}YXmmOiZq$!IPk5t8nnS{%?+vDFz3BevmFNgpIod~R{>@#@5x9zJKEHLHv!gHeK~n)Ld!M8DB|Kfe%~123&Hz1Z(86nU7*G5chmyDe ziV7$pB7pJ=96hpxHv9rCR29%bLOXlKU<_13_M8x)6;P8E1Kz6G<&P?$P^%c!M5`2` zfY2zg;VK5~^>TJGQzc+33-n~gKt{{of8GzUkWmU110IgI0DLxRIM>0US|TsM=L|@F z0Bun8U!cRB7-2apz=y-7*UxOxz@Z0)@QM)9wSGki1AZ38ceG7Q72z5`i;i=J`ILzL z@iUO?SBBG-0cQuo+an4TsLy-g-x;8P4UVwk|D8{W@U1Zi z!M)+jqy@nQ$p?5tsHp-6J304Q={v-B>66$P0IDx&YT(`IcZ~bZfmn11#rXd7<5s}y zBi9eim&zQc0Dk|2>$bs0PnLmDfMP5lcXRY&cvJ=zKxI^f0%-d$tD!`LBf9^jMSYUA zI8U?CWdY@}cRq6{5~y+)#h1!*-HcGW@+gZ4B};0OnC~`xQOyH19z*TA!!BJ%9s0V3F?CAJ{hTd#*tf+ur-W9MOURF-@B77_-OshsY}6 zOXRY=5%C^*26z?l)1=$bz30!so5tfABdSYzO+H=CpV~aaUefmjvfZ3Ttu9W&W3Iu6 zROlh0MFA5h;my}8lB0tAV-Rvc2Zs_CCSJnx@d`**$idgy-iMob4dJWWw|21b4NB=LfsYp0Aeh{Ov)yztQi;eL4y5 zMi>8^SzKqk8~k?UiQK^^-5d8c%bV?$F8%X~czyiaKCI2=UH; diff --git a/packages/svelte/.eslintignore b/packages/svelte/.eslintignore new file mode 100644 index 00000000000..38972655faf --- /dev/null +++ b/packages/svelte/.eslintignore @@ -0,0 +1,13 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example + +# Ignore files for PNPM, NPM and YARN +pnpm-lock.yaml +package-lock.json +yarn.lock diff --git a/packages/svelte/.eslintrc.cjs b/packages/svelte/.eslintrc.cjs new file mode 100644 index 00000000000..ebc19589fa5 --- /dev/null +++ b/packages/svelte/.eslintrc.cjs @@ -0,0 +1,30 @@ +module.exports = { + root: true, + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:svelte/recommended', + 'prettier' + ], + parser: '@typescript-eslint/parser', + plugins: ['@typescript-eslint'], + parserOptions: { + sourceType: 'module', + ecmaVersion: 2020, + extraFileExtensions: ['.svelte'] + }, + env: { + browser: true, + es2017: true, + node: true + }, + overrides: [ + { + files: ['*.svelte'], + parser: 'svelte-eslint-parser', + parserOptions: { + parser: '@typescript-eslint/parser' + } + } + ] +}; diff --git a/packages/svelte/.gitignore b/packages/svelte/.gitignore new file mode 100644 index 00000000000..ac7211b4033 --- /dev/null +++ b/packages/svelte/.gitignore @@ -0,0 +1,11 @@ +.DS_Store +node_modules +/build +/dist +/.svelte-kit +/package +.env +.env.* +!.env.example +vite.config.js.timestamp-* +vite.config.ts.timestamp-* diff --git a/packages/svelte/.npmrc b/packages/svelte/.npmrc new file mode 100644 index 00000000000..0c05da457e4 --- /dev/null +++ b/packages/svelte/.npmrc @@ -0,0 +1,2 @@ +engine-strict=true +resolution-mode=highest diff --git a/packages/svelte/.prettierignore b/packages/svelte/.prettierignore new file mode 100644 index 00000000000..38972655faf --- /dev/null +++ b/packages/svelte/.prettierignore @@ -0,0 +1,13 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example + +# Ignore files for PNPM, NPM and YARN +pnpm-lock.yaml +package-lock.json +yarn.lock diff --git a/packages/svelte/.prettierrc b/packages/svelte/.prettierrc new file mode 100644 index 00000000000..a77fddea909 --- /dev/null +++ b/packages/svelte/.prettierrc @@ -0,0 +1,9 @@ +{ + "useTabs": true, + "singleQuote": true, + "trailingComma": "none", + "printWidth": 100, + "plugins": ["prettier-plugin-svelte"], + "pluginSearchDirs": ["."], + "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] +} diff --git a/packages/svelte/README.md b/packages/svelte/README.md new file mode 100644 index 00000000000..4fee31f6f8e --- /dev/null +++ b/packages/svelte/README.md @@ -0,0 +1,58 @@ +# create-svelte + +Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte). + +Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging). + +## Creating a project + +If you're seeing this, you've probably already done this step. Congrats! + +```bash +# create a new project in the current directory +npm create svelte@latest + +# create a new project in my-app +npm create svelte@latest my-app +``` + +## Developing + +Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server: + +```bash +npm run dev + +# or start the server and open the app in a new browser tab +npm run dev -- --open +``` + +Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app. + +## Building + +To build your library: + +```bash +npm run package +``` + +To create a production version of your showcase app: + +```bash +npm run build +``` + +You can preview the production build with `npm run preview`. + +> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment. + +## Publishing + +Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)). + +To publish your library to [npm](https://www.npmjs.com): + +```bash +npm publish +``` diff --git a/packages/svelte/package.json b/packages/svelte/package.json new file mode 100644 index 00000000000..2e4a018d48a --- /dev/null +++ b/packages/svelte/package.json @@ -0,0 +1,64 @@ +{ + "name": "@trigger.dev/svelte", + "version": "0.0.1", + "description": "Trigger.dev Svelte SDK", + "license": "MIT", + "scripts": { + "dev": "vite dev", + "build": "svelte-package --input ./src --output ./build/lib", + "preview": "vite preview", + "package": "svelte-kit sync && svelte-package && publint", + "prepublishOnly": "npm run package", + "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", + "test": "vitest", + "lint": "prettier --plugin-search-dir . --check . && eslint .", + "format": "prettier --plugin-search-dir . --write ." + }, + "type": "module", + "types": "build/lib/index.d.ts", + "module": "build/lib/index.js", + "exports": { + ".": { + "types": "./build/lib/index.d.ts", + "import": "./build/lib/index.js", + "svelte": "./build/lib/index.js", + "default": "./build/lib/index.js" + }, + "./package.json": "./package.json" + }, + "files": [ + "dist", + "!dist/**/*.test.*", + "!dist/**/*.spec.*" + ], + "peerDependencies": { + "svelte": "^4.0.0" + }, + "devDependencies": { + "@sveltejs/adapter-auto": "^2.0.0", + "@sveltejs/kit": "^1.20.4", + "@sveltejs/package": "^2.0.0", + "@typescript-eslint/eslint-plugin": "^5.45.0", + "@typescript-eslint/parser": "^5.45.0", + "eslint": "^8.28.0", + "eslint-config-prettier": "^8.5.0", + "eslint-plugin-svelte": "^2.30.0", + "prettier": "^2.8.0", + "prettier-plugin-svelte": "^2.10.1", + "publint": "^0.1.9", + "svelte": "^4.0.5", + "svelte-check": "^3.4.3", + "tslib": "^2.4.1", + "typescript": "^5.0.0", + "vite": "^4.4.2", + "vitest": "^0.34.0" + }, + "dependencies": { + "@tanstack/svelte-query": "^4.33.0", + "@trigger.dev/core": "workspace:*", + "@trigger.dev/sdk": "workspace:*", + "esm-env": "^1.0.0", + "zod": "3.21.4" + } +} diff --git a/packages/svelte/src/TriggerProvider.svelte b/packages/svelte/src/TriggerProvider.svelte new file mode 100644 index 00000000000..98ab8ba4ed8 --- /dev/null +++ b/packages/svelte/src/TriggerProvider.svelte @@ -0,0 +1,55 @@ + + +
+ + + +
diff --git a/packages/svelte/src/app.html b/packages/svelte/src/app.html new file mode 100644 index 00000000000..effe0d0d266 --- /dev/null +++ b/packages/svelte/src/app.html @@ -0,0 +1,12 @@ + + + + + + + %sveltekit.head% + + +
%sveltekit.body%
+ + diff --git a/packages/svelte/src/events.ts b/packages/svelte/src/events.ts new file mode 100644 index 00000000000..4767da0a080 --- /dev/null +++ b/packages/svelte/src/events.ts @@ -0,0 +1,63 @@ +import { createQuery, type CreateQueryResult } from '@tanstack/svelte-query'; +import { GetEventSchema, type GetEvent } from '@trigger.dev/core'; +import { getTriggerContext } from './providerContext.js'; +import { zodfetch } from './fetch.js'; +import { runResolvedStatuses } from './runs.js'; + +const defaultRefreshInterval = 1000; + +export type UseEventDetailsResult = CreateQueryResult; +export function useEventDetails(eventId: string | undefined): UseEventDetailsResult { + const { apiUrl, publicApiKey } = getTriggerContext(); + + return createQuery({ + queryKey: [`triggerdotdev-event-${eventId}`], + queryFn: async () => { + return await zodfetch(GetEventSchema, `${apiUrl}/api/v1/events/${eventId}`, { + method: 'GET', + headers: { + Authorization: `Bearer ${publicApiKey}` + } + }); + }, + refetchInterval: (data) => { + if ( + data && + data.runs.length > 0 && + data.runs.every((r) => runResolvedStatuses.includes(r.status)) + ) { + return false; + } + + return defaultRefreshInterval; + }, + enabled: !!eventId + }); +} + +//we cannot call useRunDetails inside the subscription, because it would be called outside component initialization, we will have to do it inside the svelte component itself +//I'm still looking for better ways of doing this. + +// export function useEventRunDetails( +// eventId: string | undefined, +// options?: RunDetailOptions +// ): RunDetailsResult | undefined { +// const event = useEventDetails(eventId); +// let result: RunDetailsResult | undefined; +// const subscribedEvent = event.subscribe((event) => { +// if (event.data) { +// console.log('event: ', event.data?.id); +// const runs = useRunDetails(event.data?.runs[0].id, options); +// runs.subscribe((runs) => { +// console.log('runs: ', runs); +// result = runs; +// }); +// } +// }); + +// onDestroy(() => { +// subscribedEvent(); +// }); + +// return result; +// } diff --git a/packages/svelte/src/fetch.ts b/packages/svelte/src/fetch.ts new file mode 100644 index 00000000000..cf82ecc17ab --- /dev/null +++ b/packages/svelte/src/fetch.ts @@ -0,0 +1,32 @@ +import type { z } from 'zod'; + +// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-constraint +export async function zodfetch( + schema: z.Schema, + url: string, + requestInit?: RequestInit +): Promise { + const response = await fetch(url, requestInit); + + if ((!requestInit || requestInit.method === 'GET') && response.status === 404) { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + return; + } + + //todo improve error handling + + if (response.status >= 400 && response.status < 500) { + const body = await response.json(); + + throw new Error(body.error); + } + + if (response.status !== 200) { + throw new Error(`Failed to fetch ${url}, got status code ${response.status}`); + } + + const jsonBody = await response.json(); + + return schema.parse(jsonBody); +} diff --git a/packages/svelte/src/index.ts b/packages/svelte/src/index.ts new file mode 100644 index 00000000000..904ec0a810e --- /dev/null +++ b/packages/svelte/src/index.ts @@ -0,0 +1,3 @@ +export * from './events.js' +export * from './runs.js' +export { default as TriggerProvider } from './TriggerProvider.svelte'; \ No newline at end of file diff --git a/packages/svelte/src/providerContext.ts b/packages/svelte/src/providerContext.ts new file mode 100644 index 00000000000..fe94d03d944 --- /dev/null +++ b/packages/svelte/src/providerContext.ts @@ -0,0 +1,17 @@ +import { getContext, setContext } from 'svelte'; + + +type TriggerContext = { + publicApiKey: string; + apiUrl?: string; +}; +const triggerContextKey = "$$_TriggerContext" + + +export function setTriggerContext(context: TriggerContext) { + setContext(triggerContextKey, context); +} + +export function getTriggerContext(): TriggerContext { + return getContext(triggerContextKey); +} diff --git a/packages/svelte/src/runs.ts b/packages/svelte/src/runs.ts new file mode 100644 index 00000000000..b1025833126 --- /dev/null +++ b/packages/svelte/src/runs.ts @@ -0,0 +1,54 @@ +import { createQuery, type CreateQueryResult } from '@tanstack/svelte-query'; +import { + GetRunSchema, + urlWithSearchParams, + type GetRun, + type GetRunOptions +} from '@trigger.dev/core'; +import { getTriggerContext } from './providerContext.js'; +import { zodfetch } from './fetch.js'; + +export const runResolvedStatuses = ['SUCCESS', 'FAILURE', 'CANCELED', 'TIMED_OUT', 'ABORTED']; + +const defaultRefreshInterval = 1000; + +export type RunDetailOptions = GetRunOptions & { + /** How often you want to refresh, the default is 1000. Min is 500 */ + refreshIntervalMs?: number; +}; + +export type UseRunDetailsResult = CreateQueryResult; + +export function useRunDetails( + runId: string | undefined, + options?: RunDetailOptions +): UseRunDetailsResult { + const { apiUrl, publicApiKey } = getTriggerContext(); + + const { refreshIntervalMs: refreshInterval, ...otherOptions } = options || {}; + + const url = urlWithSearchParams(`${apiUrl}/api/v1/runs/${runId}`, otherOptions); + + return createQuery({ + queryKey: [`triggerdotdev-run-${runId}`], + queryFn: async () => { + return await zodfetch(GetRunSchema, url, { + method: 'GET', + headers: { + Authorization: `Bearer ${publicApiKey}` + } + }); + }, + enabled: !!runId, + refetchInterval: (data) => { + if (data?.status && runResolvedStatuses.includes(data.status)) { + return false; + } + if (refreshInterval !== undefined) { + return Math.max(refreshInterval, 500); + } + + return defaultRefreshInterval; + } + }); +} diff --git a/packages/svelte/svelte.config.js b/packages/svelte/svelte.config.js new file mode 100644 index 00000000000..9002d78ab4a --- /dev/null +++ b/packages/svelte/svelte.config.js @@ -0,0 +1,18 @@ +import adapter from '@sveltejs/adapter-auto'; +import { vitePreprocess } from '@sveltejs/kit/vite'; + +/** @type {import('@sveltejs/kit').Config} */ +const config = { + // Consult https://kit.svelte.dev/docs/integrations#preprocessors + // for more information about preprocessors + preprocess: vitePreprocess(), + + kit: { + // adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list. + // If your environment is not supported or you settled on a specific environment, switch out the adapter. + // See https://kit.svelte.dev/docs/adapters for more information about adapters. + adapter: adapter(), + } +}; + +export default config; diff --git a/packages/svelte/tsconfig.json b/packages/svelte/tsconfig.json new file mode 100644 index 00000000000..c7ed965f1a2 --- /dev/null +++ b/packages/svelte/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "./.svelte-kit/tsconfig.json", + "compilerOptions": { + "allowJs": true, + "checkJs": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true, + "skipLibCheck": true, + "sourceMap": true, + "strict": true, + "moduleResolution": "Node", + "ignoreDeprecations": "5.0", + "paths": { + "@trigger.dev/core": ["../core/src/index"], + "@trigger.dev/core/*": ["../core/src/*"], + "@trigger.dev/sdk": ["../trigger-sdk/src/index"], + "@trigger.dev/sdk/*": ["../trigger-sdk/src/*"] + } + }, + "exclude": ["node_modules"] +} diff --git a/packages/svelte/vite.config.ts b/packages/svelte/vite.config.ts new file mode 100644 index 00000000000..37b6a84bc3c --- /dev/null +++ b/packages/svelte/vite.config.ts @@ -0,0 +1,9 @@ +import { sveltekit } from '@sveltejs/kit/vite'; +import { defineConfig } from 'vitest/config'; + +export default defineConfig({ + plugins: [sveltekit()], + test: { + include: ['src/**/*.{test,spec}.{js,ts}'] + } +}); diff --git a/packages/sveltekit/LICENSE b/packages/sveltekit/LICENSE new file mode 100644 index 00000000000..9cf106272ac --- /dev/null +++ b/packages/sveltekit/LICENSE @@ -0,0 +1,19 @@ +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/packages/sveltekit/README.md b/packages/sveltekit/README.md new file mode 100644 index 00000000000..a1c4c89c85a --- /dev/null +++ b/packages/sveltekit/README.md @@ -0,0 +1,9 @@ +# SvelteKit and Trigger.dev + +Trigger.dev provides full support for the SvelteKit framework. + +For information about using Trigger.dev in your SvelteKit app, check out these useful documentation links: + +- [`Quick start guide for setting up Trigger.dev in a SvelteKit project`](https://trigger.dev/docs/documentation/quickstarts/sveltekit) +- [`Manually set up SvelteKit with Trigger.dev`](https://trigger.dev/docs/documentation/guides/manual/sveltekit) +- [`Using Trigger.dev with SvelteKit, handling middleware, and more`](https://trigger.dev/docs/documentation/guides/platforms/sveltekit) diff --git a/packages/sveltekit/package.json b/packages/sveltekit/package.json new file mode 100644 index 00000000000..d01c504f184 --- /dev/null +++ b/packages/sveltekit/package.json @@ -0,0 +1,44 @@ +{ + "name": "@trigger.dev/sveltekit", + "version": "0.0.1", + "description": "Trigger.dev svelteKit integration", + "license": "MIT", + "main": "./dist/index.js", + "types": "./dist/index.d.ts", + "type": "module", + "publishConfig": { + "access": "public" + }, + "files": [ + "dist" + ], + "exports": { + ".": { + "import": "./dist/index.js", + "require": "./dist/index.js" + }, + "./package.json": "./package.json" + }, + "devDependencies": { + "@sveltejs/kit": "^1.20.4", + "@trigger.dev/tsconfig": "workspace:*", + "@types/debug": "^4.1.7", + "@types/ws": "^8.5.3", + "rimraf": "^3.0.2", + "tsup": "^6.5.0" + }, + "scripts": { + "clean": "rimraf dist", + "build": "npm run clean && npm run build:tsup", + "build:tsup": "tsup" + }, + "peerDependencies": { + "@trigger.dev/sdk": "workspace:^2.0.14" + }, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">=16.8.0" + } +} diff --git a/packages/sveltekit/src/index.ts b/packages/sveltekit/src/index.ts new file mode 100644 index 00000000000..6450f015bab --- /dev/null +++ b/packages/sveltekit/src/index.ts @@ -0,0 +1,42 @@ +import type { TriggerClient } from "@trigger.dev/sdk"; + +import { json } from "@sveltejs/kit"; +import type { RequestHandler } from "@sveltejs/kit"; + +export function createSvelteRoute(client: TriggerClient) { + const POST: RequestHandler = async ({ request }) => { + const standardizedRequest = await convertToStandardRequest(request); + const response = await client.handleRequest(standardizedRequest); + + if (!response) { + return json({ error: "Resource not found" }, { status: 404 }); + } + + return json(response.body, { status: response.status }); + }; + return { POST }; +} + +async function convertToStandardRequest(req: Request): Promise { + // Prepare the request to be a fetch-compatible Request object: + const requestHeaders = req.headers; + const requestMethod = req.method; + const responseHeaders = Object.create(null); + + for (const [headerName, headerValue] of requestHeaders.entries()) { + responseHeaders[headerName] = headerValue; + } + + // Create a new Request object to be passed to the TriggerClient + // where we pass the clone the incoming request metadata such as + // headers, method, body. + const request = new Request("https://svelte/api/trigger", { + headers: responseHeaders, + method: requestMethod, + // @ts-ignore + body: req.body ? req.body : req, + duplex: "half", + }); + + return request; +} diff --git a/packages/sveltekit/tsconfig.json b/packages/sveltekit/tsconfig.json new file mode 100644 index 00000000000..3421bbad1f5 --- /dev/null +++ b/packages/sveltekit/tsconfig.json @@ -0,0 +1,18 @@ +{ + "extends": "@trigger.dev/tsconfig/node18.json", + "include": ["./src/**/*.ts", "tsup.config.ts"], + "compilerOptions": { + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "declaration": false, + "declarationMap": false, + "lib": ["DOM", "DOM.Iterable"], + "paths": { + "@trigger.dev/sdk": ["../trigger-sdk/src/index"], + "@trigger.dev/sdk/*": ["../trigger-sdk/src/*"], + "@trigger.dev/core": ["../core/src/index"], + "@trigger.dev/core/*": ["../core/src/*"] + } + }, + "exclude": ["node_modules"] +} diff --git a/packages/sveltekit/tsup.config.ts b/packages/sveltekit/tsup.config.ts new file mode 100644 index 00000000000..74c4f4dc148 --- /dev/null +++ b/packages/sveltekit/tsup.config.ts @@ -0,0 +1,19 @@ +import { defineConfig } from "tsup"; + +export default defineConfig([ + { + name: "main", + entry: ["./src/index.ts"], + outDir: "./dist", + platform: "node", + format: ["cjs"], + legacyOutput: true, + sourcemap: true, + clean: true, + bundle: true, + splitting: false, + dts: true, + external: ["http", "https", "util", "events", "tty", "os", "timers"], + esbuildPlugins: [], + }, +]); From 3324abd59ffab459d77f62cd6141ff096d6627ea Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 13:12:40 +0100 Subject: [PATCH 02/18] Moved examples to references --- examples/example-svelte-app/.env.example | 3 - examples/example-svelte-app/package.json | 41 - .../example-svelte-app/src/jobs/example.ts | 19 - .../src/lib/EventData.svelte | 20 - .../src/lib/EventRunData.svelte | 32 - .../example-svelte-app/src/lib/RunData.svelte | 27 - .../src/lib/SendEvent.svelte | 18 - .../src/routes/+layout.svelte | 23 - .../src/routes/+page.svelte | 10 - .../src/routes/api/demo/+server.ts | 5 - .../src/routes/api/send-test-event/+server.ts | 13 - .../src/routes/api/trigger/+server.ts | 12 - .../src/routes/events/[eventId]/+page.svelte | 18 - .../src/routes/events/[eventId]/+page.ts | 8 - examples/example-svelte-app/src/trigger.ts | 7 - examples/example-svelte-app/svelte.config.js | 30 - examples/example-svelte-app/tsconfig.json | 29 - examples/example-svelte-app/vite.config.ts | 6 - examples/svelte-example/.eslintignore | 13 - examples/svelte-example/.eslintrc.cjs | 30 - examples/svelte-example/.gitignore | 10 - examples/svelte-example/.npmrc | 2 - examples/svelte-example/.prettierignore | 13 - examples/svelte-example/.prettierrc | 9 - examples/svelte-example/README.md | 38 - examples/svelte-example/src/app.d.ts | 12 - examples/svelte-example/src/app.html | 12 - examples/svelte-example/static/favicon.png | Bin 1571 -> 0 bytes pnpm-lock.yaml | 907 ++++++++++++++++-- .../svelte-example/.env.example | 0 .../svelte-example}/.eslintignore | 0 .../svelte-example}/.eslintrc.cjs | 0 .../svelte-example}/.gitignore | 0 .../svelte-example}/.npmrc | 0 .../svelte-example}/.prettierignore | 0 .../svelte-example}/.prettierrc | 0 .../svelte-example}/README.md | 0 .../svelte-example/package.json | 0 .../svelte-example}/src/app.d.ts | 0 .../svelte-example}/src/app.html | 0 .../svelte-example/src/jobs/example.ts | 0 .../svelte-example/src/lib/index.ts | 0 .../svelte-example/src/routes/+page.svelte | 0 .../src/routes/api/trigger/+server.ts | 0 .../svelte-example/src/trigger.ts | 0 .../svelte-example}/static/favicon.png | Bin .../svelte-example/svelte.config.js | 0 .../svelte-example/tsconfig.json | 0 .../svelte-example/vite.config.ts | 0 49 files changed, 814 insertions(+), 553 deletions(-) delete mode 100644 examples/example-svelte-app/.env.example delete mode 100644 examples/example-svelte-app/package.json delete mode 100644 examples/example-svelte-app/src/jobs/example.ts delete mode 100644 examples/example-svelte-app/src/lib/EventData.svelte delete mode 100644 examples/example-svelte-app/src/lib/EventRunData.svelte delete mode 100644 examples/example-svelte-app/src/lib/RunData.svelte delete mode 100644 examples/example-svelte-app/src/lib/SendEvent.svelte delete mode 100644 examples/example-svelte-app/src/routes/+layout.svelte delete mode 100644 examples/example-svelte-app/src/routes/+page.svelte delete mode 100644 examples/example-svelte-app/src/routes/api/demo/+server.ts delete mode 100644 examples/example-svelte-app/src/routes/api/send-test-event/+server.ts delete mode 100644 examples/example-svelte-app/src/routes/api/trigger/+server.ts delete mode 100644 examples/example-svelte-app/src/routes/events/[eventId]/+page.svelte delete mode 100644 examples/example-svelte-app/src/routes/events/[eventId]/+page.ts delete mode 100644 examples/example-svelte-app/src/trigger.ts delete mode 100644 examples/example-svelte-app/svelte.config.js delete mode 100644 examples/example-svelte-app/tsconfig.json delete mode 100644 examples/example-svelte-app/vite.config.ts delete mode 100644 examples/svelte-example/.eslintignore delete mode 100644 examples/svelte-example/.eslintrc.cjs delete mode 100644 examples/svelte-example/.gitignore delete mode 100644 examples/svelte-example/.npmrc delete mode 100644 examples/svelte-example/.prettierignore delete mode 100644 examples/svelte-example/.prettierrc delete mode 100644 examples/svelte-example/README.md delete mode 100644 examples/svelte-example/src/app.d.ts delete mode 100644 examples/svelte-example/src/app.html delete mode 100644 examples/svelte-example/static/favicon.png rename {examples => references}/svelte-example/.env.example (100%) rename {examples/example-svelte-app => references/svelte-example}/.eslintignore (100%) rename {examples/example-svelte-app => references/svelte-example}/.eslintrc.cjs (100%) rename {examples/example-svelte-app => references/svelte-example}/.gitignore (100%) rename {examples/example-svelte-app => references/svelte-example}/.npmrc (100%) rename {examples/example-svelte-app => references/svelte-example}/.prettierignore (100%) rename {examples/example-svelte-app => references/svelte-example}/.prettierrc (100%) rename {examples/example-svelte-app => references/svelte-example}/README.md (100%) rename {examples => references}/svelte-example/package.json (100%) rename {examples/example-svelte-app => references/svelte-example}/src/app.d.ts (100%) rename {examples/example-svelte-app => references/svelte-example}/src/app.html (100%) rename {examples => references}/svelte-example/src/jobs/example.ts (100%) rename {examples => references}/svelte-example/src/lib/index.ts (100%) rename {examples => references}/svelte-example/src/routes/+page.svelte (100%) rename {examples => references}/svelte-example/src/routes/api/trigger/+server.ts (100%) rename {examples => references}/svelte-example/src/trigger.ts (100%) rename {examples/example-svelte-app => references/svelte-example}/static/favicon.png (100%) rename {examples => references}/svelte-example/svelte.config.js (100%) rename {examples => references}/svelte-example/tsconfig.json (100%) rename {examples => references}/svelte-example/vite.config.ts (100%) diff --git a/examples/example-svelte-app/.env.example b/examples/example-svelte-app/.env.example deleted file mode 100644 index 391f2ffed7d..00000000000 --- a/examples/example-svelte-app/.env.example +++ /dev/null @@ -1,3 +0,0 @@ -TRIGGER_API_KEY= -PUBLIC_TRIGGER_API_KEY= -PUBLIC_API_URL= \ No newline at end of file diff --git a/examples/example-svelte-app/package.json b/examples/example-svelte-app/package.json deleted file mode 100644 index b41f8ff90af..00000000000 --- a/examples/example-svelte-app/package.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "name": "example-svelte-app", - "version": "0.0.1", - "private": true, - "scripts": { - "dev": "vite dev", - "build": "vite build", - "preview": "vite preview", - "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", - "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", - "lint": "prettier --plugin-search-dir . --check . && eslint .", - "format": "prettier --plugin-search-dir . --write ." - }, - "dependencies": { - "@tanstack/svelte-query": "^4.33.0", - "@trigger.dev/sdk": "workspace:*", - "@trigger.dev/svelte": "workspace:*", - "@trigger.dev/sveltekit": "workspace:*", - "@trigger.dev/core": "workspace:*" - }, - "devDependencies": { - "@sveltejs/adapter-auto": "^2.0.0", - "@sveltejs/kit": "^1.20.4", - "@typescript-eslint/eslint-plugin": "^5.45.0", - "@typescript-eslint/parser": "^5.45.0", - "eslint": "^8.28.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-svelte": "^2.30.0", - "prettier": "^2.8.0", - "prettier-plugin-svelte": "^2.10.1", - "svelte": "^4.0.5", - "svelte-check": "^3.4.3", - "tslib": "^2.4.1", - "typescript": "^5.0.0", - "vite": "^4.4.2" - }, - "trigger.dev": { - "endpointId": "test-svelte" - }, - "type": "module" -} diff --git a/examples/example-svelte-app/src/jobs/example.ts b/examples/example-svelte-app/src/jobs/example.ts deleted file mode 100644 index 2bae1dc42fe..00000000000 --- a/examples/example-svelte-app/src/jobs/example.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { eventTrigger } from '@trigger.dev/sdk'; -import { client } from '../trigger'; - -// your first job -client.defineJob({ - id: 'svelte-job-testing', - name: 'testing svelte', - version: '0.0.1', - trigger: eventTrigger({ - name: 'test.event.testing' - }), - run: async (payload, io, ctx) => { - await io.logger.info('Hello world!', { payload }); - - return { - message: 'Hello world!' - }; - } -}); diff --git a/examples/example-svelte-app/src/lib/EventData.svelte b/examples/example-svelte-app/src/lib/EventData.svelte deleted file mode 100644 index 9d54e5d65aa..00000000000 --- a/examples/example-svelte-app/src/lib/EventData.svelte +++ /dev/null @@ -1,20 +0,0 @@ - - -

Event

- -{#if isLoading} -

Loading

-{:else if error} -
{JSON.stringify(error, null, 2)}
-{:else if data} -

- Event ID: - {data.id} -

-{/if} diff --git a/examples/example-svelte-app/src/lib/EventRunData.svelte b/examples/example-svelte-app/src/lib/EventRunData.svelte deleted file mode 100644 index 197df556e19..00000000000 --- a/examples/example-svelte-app/src/lib/EventRunData.svelte +++ /dev/null @@ -1,32 +0,0 @@ - - -

Event Run Data

- -{#if $runDetails?.isLoading} -

Loading...

-{:else if $runDetails?.isError} -

Error

-{:else if $runDetails?.data} -
Run status: {$runDetails.data.status}
-
- {#if $runDetails.data.tasks} - {#each $runDetails.data.tasks as task (task.id)} -
-

{task.displayKey ?? task.name}

-

{task.icon}

-

Status: {task.status}

-
- {/each} - {/if} -
- {#if $runDetails.data.output} - -
{JSON.stringify($runDetails.data.output, null, 2)}
-
- {/if} -{/if} diff --git a/examples/example-svelte-app/src/lib/RunData.svelte b/examples/example-svelte-app/src/lib/RunData.svelte deleted file mode 100644 index ef7f9a863a7..00000000000 --- a/examples/example-svelte-app/src/lib/RunData.svelte +++ /dev/null @@ -1,27 +0,0 @@ - - -

Run Data

- -{#if isLoading} -

Loading...

-{:else if isError} -

Error

-{:else if data} -
Run status: {data.status}
-
- {#if data.tasks} - {#each data.tasks as task (task.id)} -
-

{task.name}

-

Status: {task.status}

-
- {/each} - {/if} -
-{/if} diff --git a/examples/example-svelte-app/src/lib/SendEvent.svelte b/examples/example-svelte-app/src/lib/SendEvent.svelte deleted file mode 100644 index ae40b0dae39..00000000000 --- a/examples/example-svelte-app/src/lib/SendEvent.svelte +++ /dev/null @@ -1,18 +0,0 @@ - - - diff --git a/examples/example-svelte-app/src/routes/+layout.svelte b/examples/example-svelte-app/src/routes/+layout.svelte deleted file mode 100644 index 0d02d2191d3..00000000000 --- a/examples/example-svelte-app/src/routes/+layout.svelte +++ /dev/null @@ -1,23 +0,0 @@ - - - - -
- -
- - -
-
\ No newline at end of file diff --git a/examples/example-svelte-app/src/routes/+page.svelte b/examples/example-svelte-app/src/routes/+page.svelte deleted file mode 100644 index 57f92864ae9..00000000000 --- a/examples/example-svelte-app/src/routes/+page.svelte +++ /dev/null @@ -1,10 +0,0 @@ - - - -
-

Welcome to SvelteKit

- - -
diff --git a/examples/example-svelte-app/src/routes/api/demo/+server.ts b/examples/example-svelte-app/src/routes/api/demo/+server.ts deleted file mode 100644 index 98b9db315a1..00000000000 --- a/examples/example-svelte-app/src/routes/api/demo/+server.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { json } from "@sveltejs/kit"; - -export function GET() { - return json({ message: "Hello from the server!" },{status:200}) -} \ No newline at end of file diff --git a/examples/example-svelte-app/src/routes/api/send-test-event/+server.ts b/examples/example-svelte-app/src/routes/api/send-test-event/+server.ts deleted file mode 100644 index 8e86dabbffe..00000000000 --- a/examples/example-svelte-app/src/routes/api/send-test-event/+server.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { json } from '@sveltejs/kit'; -import type { RequestHandler } from './$types.js'; - -import { client } from '$trigger'; - -//this route is used to send events to Trigger.dev -export const POST: RequestHandler = async () => { - const event = await client.sendEvent({ - name: 'test.event.testing' - }); - - return json(event); -}; diff --git a/examples/example-svelte-app/src/routes/api/trigger/+server.ts b/examples/example-svelte-app/src/routes/api/trigger/+server.ts deleted file mode 100644 index ed06bee0718..00000000000 --- a/examples/example-svelte-app/src/routes/api/trigger/+server.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { createSvelteRoute } from '@trigger.dev/sveltekit'; - -import { client } from '$trigger'; - -//add your jobs here -import '$jobs/example'; - -// Create the Svelte route handler using the createSvelteRoute function -const svelteRoute = createSvelteRoute(client); - -// Define your API route handler -export const POST = svelteRoute.POST; diff --git a/examples/example-svelte-app/src/routes/events/[eventId]/+page.svelte b/examples/example-svelte-app/src/routes/events/[eventId]/+page.svelte deleted file mode 100644 index 3bd6a60bf52..00000000000 --- a/examples/example-svelte-app/src/routes/events/[eventId]/+page.svelte +++ /dev/null @@ -1,18 +0,0 @@ - - -
- {#if $event.isLoading} -

Loading...

- {:else if $event.isError} -

There was an error

- {:else if $event.isSuccess} - - {/if} -
diff --git a/examples/example-svelte-app/src/routes/events/[eventId]/+page.ts b/examples/example-svelte-app/src/routes/events/[eventId]/+page.ts deleted file mode 100644 index e7e94397158..00000000000 --- a/examples/example-svelte-app/src/routes/events/[eventId]/+page.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type { PageLoad } from './$types'; - -export const load: PageLoad = ({ params }) => { - return { - eventId: params.eventId -}; -}; -export const ssr = false; diff --git a/examples/example-svelte-app/src/trigger.ts b/examples/example-svelte-app/src/trigger.ts deleted file mode 100644 index 0b4f9a03812..00000000000 --- a/examples/example-svelte-app/src/trigger.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TriggerClient } from '@trigger.dev/sdk'; -import {TRIGGER_API_KEY} from "$env/static/private" - -export const client = new TriggerClient({ - id: 'test-svelte', - apiKey: TRIGGER_API_KEY, -}); diff --git a/examples/example-svelte-app/svelte.config.js b/examples/example-svelte-app/svelte.config.js deleted file mode 100644 index 124832bda3d..00000000000 --- a/examples/example-svelte-app/svelte.config.js +++ /dev/null @@ -1,30 +0,0 @@ -import adapter from '@sveltejs/adapter-auto'; -import { vitePreprocess } from '@sveltejs/kit/vite'; - -/** @type {import('@sveltejs/kit').Config} */ -const config = { - // Consult https://kit.svelte.dev/docs/integrations#preprocessors - // for more information about preprocessors - preprocess: vitePreprocess(), - - kit: { - // adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list. - // If your environment is not supported or you settled on a specific environment, switch out the adapter. - // See https://kit.svelte.dev/docs/adapters for more information about adapters. - adapter: adapter(), - alias: { - $trigger: 'src/trigger', - '$jobs/*': 'src/jobs/*', - '@trigger.dev/sveltekit': '../../packages/sveltekit/src/index', - '@trigger.dev/sveltekit/*': '../../packages/sveltekit/src/*', - '@trigger.dev/svelte': '../../packages/svelte/src/index', - '@trigger.dev/svelte/*': '../../packages/svelte/src/*', - '@trigger.dev/sdk': '../../packages/trigger-sdk/src/index', - '@trigger.dev/sdk/*': '../../packages/trigger-sdk/src/*', - '@trigger.dev/core': '../../packages/core/src/index', - '@trigger.dev/core/*': '../../packages/core/src/*' - } - } -}; - -export default config; diff --git a/examples/example-svelte-app/tsconfig.json b/examples/example-svelte-app/tsconfig.json deleted file mode 100644 index a650566b0da..00000000000 --- a/examples/example-svelte-app/tsconfig.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "extends": "./.svelte-kit/tsconfig.json", - "compilerOptions": { - "lib": ["DOM", "DOM.Iterable", "ES2019"], - "isolatedModules": true, - "esModuleInterop": true, - "ignoreDeprecations": "5.0", - "moduleResolution": "node", - "resolveJsonModule": true, - "target": "ES2019", - "strict": true, - "allowJs": true, - "forceConsistentCasingInFileNames": true, - "baseUrl": ".", - "paths": { - "$lib": ["src/lib"], - "$lib/*": ["src/lib/*"], - "$trigger" : ["src/trigger"], - "$jobs/*":[ "src/jobs/*"], - } - }, -// Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias - // - // If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes - // from the referenced tsconfig.json - TypeScript does not merge them in - "include": ["src/**/*", "src/node_modules", ".svelte-kit/ambient.d.ts"], // see last element - - "exclude": ["node_modules"] -} diff --git a/examples/example-svelte-app/vite.config.ts b/examples/example-svelte-app/vite.config.ts deleted file mode 100644 index fce9e8704c9..00000000000 --- a/examples/example-svelte-app/vite.config.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { sveltekit } from '@sveltejs/kit/vite'; -import { defineConfig } from 'vite'; - -export default defineConfig({ - plugins: [sveltekit()], -}); diff --git a/examples/svelte-example/.eslintignore b/examples/svelte-example/.eslintignore deleted file mode 100644 index 38972655faf..00000000000 --- a/examples/svelte-example/.eslintignore +++ /dev/null @@ -1,13 +0,0 @@ -.DS_Store -node_modules -/build -/.svelte-kit -/package -.env -.env.* -!.env.example - -# Ignore files for PNPM, NPM and YARN -pnpm-lock.yaml -package-lock.json -yarn.lock diff --git a/examples/svelte-example/.eslintrc.cjs b/examples/svelte-example/.eslintrc.cjs deleted file mode 100644 index ebc19589fa5..00000000000 --- a/examples/svelte-example/.eslintrc.cjs +++ /dev/null @@ -1,30 +0,0 @@ -module.exports = { - root: true, - extends: [ - 'eslint:recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:svelte/recommended', - 'prettier' - ], - parser: '@typescript-eslint/parser', - plugins: ['@typescript-eslint'], - parserOptions: { - sourceType: 'module', - ecmaVersion: 2020, - extraFileExtensions: ['.svelte'] - }, - env: { - browser: true, - es2017: true, - node: true - }, - overrides: [ - { - files: ['*.svelte'], - parser: 'svelte-eslint-parser', - parserOptions: { - parser: '@typescript-eslint/parser' - } - } - ] -}; diff --git a/examples/svelte-example/.gitignore b/examples/svelte-example/.gitignore deleted file mode 100644 index 6635cf55427..00000000000 --- a/examples/svelte-example/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -.DS_Store -node_modules -/build -/.svelte-kit -/package -.env -.env.* -!.env.example -vite.config.js.timestamp-* -vite.config.ts.timestamp-* diff --git a/examples/svelte-example/.npmrc b/examples/svelte-example/.npmrc deleted file mode 100644 index 0c05da457e4..00000000000 --- a/examples/svelte-example/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -engine-strict=true -resolution-mode=highest diff --git a/examples/svelte-example/.prettierignore b/examples/svelte-example/.prettierignore deleted file mode 100644 index 38972655faf..00000000000 --- a/examples/svelte-example/.prettierignore +++ /dev/null @@ -1,13 +0,0 @@ -.DS_Store -node_modules -/build -/.svelte-kit -/package -.env -.env.* -!.env.example - -# Ignore files for PNPM, NPM and YARN -pnpm-lock.yaml -package-lock.json -yarn.lock diff --git a/examples/svelte-example/.prettierrc b/examples/svelte-example/.prettierrc deleted file mode 100644 index a77fddea909..00000000000 --- a/examples/svelte-example/.prettierrc +++ /dev/null @@ -1,9 +0,0 @@ -{ - "useTabs": true, - "singleQuote": true, - "trailingComma": "none", - "printWidth": 100, - "plugins": ["prettier-plugin-svelte"], - "pluginSearchDirs": ["."], - "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] -} diff --git a/examples/svelte-example/README.md b/examples/svelte-example/README.md deleted file mode 100644 index 5c91169b0ca..00000000000 --- a/examples/svelte-example/README.md +++ /dev/null @@ -1,38 +0,0 @@ -# create-svelte - -Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte). - -## Creating a project - -If you're seeing this, you've probably already done this step. Congrats! - -```bash -# create a new project in the current directory -npm create svelte@latest - -# create a new project in my-app -npm create svelte@latest my-app -``` - -## Developing - -Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server: - -```bash -npm run dev - -# or start the server and open the app in a new browser tab -npm run dev -- --open -``` - -## Building - -To create a production version of your app: - -```bash -npm run build -``` - -You can preview the production build with `npm run preview`. - -> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment. diff --git a/examples/svelte-example/src/app.d.ts b/examples/svelte-example/src/app.d.ts deleted file mode 100644 index f59b884c51e..00000000000 --- a/examples/svelte-example/src/app.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -// See https://kit.svelte.dev/docs/types#app -// for information about these interfaces -declare global { - namespace App { - // interface Error {} - // interface Locals {} - // interface PageData {} - // interface Platform {} - } -} - -export {}; diff --git a/examples/svelte-example/src/app.html b/examples/svelte-example/src/app.html deleted file mode 100644 index effe0d0d266..00000000000 --- a/examples/svelte-example/src/app.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - %sveltekit.head% - - -
%sveltekit.body%
- - diff --git a/examples/svelte-example/static/favicon.png b/examples/svelte-example/static/favicon.png deleted file mode 100644 index 825b9e65af7c104cfb07089bb28659393b4f2097..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1571 zcmV+;2Hg3HP)Px)-AP12RCwC$UE6KzI1p6{F2N z1VK2vi|pOpn{~#djwYcWXTI_im_u^TJgMZ4JMOsSj!0ma>B?-(Hr@X&W@|R-$}W@Z zgj#$x=!~7LGqHW?IO8+*oE1MyDp!G=L0#^lUx?;!fXv@l^6SvTnf^ac{5OurzC#ZMYc20lI%HhX816AYVs1T3heS1*WaWH z%;x>)-J}YB5#CLzU@GBR6sXYrD>Vw(Fmt#|JP;+}<#6b63Ike{Fuo!?M{yEffez;| zp!PfsuaC)>h>-AdbnwN13g*1LowNjT5?+lFVd#9$!8Z9HA|$*6dQ8EHLu}U|obW6f z2%uGv?vr=KNq7YYa2Roj;|zooo<)lf=&2yxM@e`kM$CmCR#x>gI>I|*Ubr({5Y^rb zghxQU22N}F51}^yfDSt786oMTc!W&V;d?76)9KXX1 z+6Okem(d}YXmmOiZq$!IPk5t8nnS{%?+vDFz3BevmFNgpIod~R{>@#@5x9zJKEHLHv!gHeK~n)Ld!M8DB|Kfe%~123&Hz1Z(86nU7*G5chmyDe ziV7$pB7pJ=96hpxHv9rCR29%bLOXlKU<_13_M8x)6;P8E1Kz6G<&P?$P^%c!M5`2` zfY2zg;VK5~^>TJGQzc+33-n~gKt{{of8GzUkWmU110IgI0DLxRIM>0US|TsM=L|@F z0Bun8U!cRB7-2apz=y-7*UxOxz@Z0)@QM)9wSGki1AZ38ceG7Q72z5`i;i=J`ILzL z@iUO?SBBG-0cQuo+an4TsLy-g-x;8P4UVwk|D8{W@U1Zi z!M)+jqy@nQ$p?5tsHp-6J304Q={v-B>66$P0IDx&YT(`IcZ~bZfmn11#rXd7<5s}y zBi9eim&zQc0Dk|2>$bs0PnLmDfMP5lcXRY&cvJ=zKxI^f0%-d$tD!`LBf9^jMSYUA zI8U?CWdY@}cRq6{5~y+)#h1!*-HcGW@+gZ4B};0OnC~`xQOyH19z*TA!!BJ%9s0V3F?CAJ{hTd#*tf+ur-W9MOURF-@B77_-OshsY}6 zOXRY=5%C^*26z?l)1=$bz30!so5tfABdSYzO+H=CpV~aaUefmjvfZ3Ttu9W&W3Iu6 zROlh0MFA5h;my}8lB0tAV-Rvc2Zs_CCSJnx@d`**$idgy-iMob4dJWWw|21b4NB=LfsYp0Aeh{Ov)yztQi;eL4y5 zMi>8^SzKqk8~k?UiQK^^-5d8c%bV?$F8%X~czyiaKCI2=UH=6.0.0'} + dependencies: + '@jridgewell/gen-mapping': 0.3.2 + '@jridgewell/trace-mapping': 0.3.19 /@angular-devkit/core/16.1.8: resolution: {integrity: sha512-dSRD/+bGanArIXkj+kaU1kDFleZeQMzmBiOXX+pK0Ah9/0Yn1VmY3RZh1zcX9vgIQXV+t7UPrTpOjaERMUtVGw==} @@ -1629,7 +1742,7 @@ packages: dset: 3.1.2 is-docker: 3.0.0 is-wsl: 3.0.0 - undici: 5.24.0 + undici: 5.25.4 which-pm-runs: 1.1.0 transitivePeerDependencies: - supports-color @@ -1668,7 +1781,7 @@ packages: resolution: {integrity: sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==} engines: {node: '>=6.9.0'} dependencies: - '@ampproject/remapping': 2.2.0 + '@ampproject/remapping': 2.2.1 '@babel/code-frame': 7.22.13 '@babel/generator': 7.22.15 '@babel/helper-compilation-targets': 7.22.15 @@ -1714,7 +1827,7 @@ packages: resolution: {integrity: sha512-2EENLmhpwplDux5PSsZnSbnSkB3tZ6QTksgO25xwEL7pIDcNOMhF5v/s6RzwjMZzZzw9Ofc30gHv5ChCC8pifQ==} engines: {node: '>=6.9.0'} dependencies: - '@ampproject/remapping': 2.2.0 + '@ampproject/remapping': 2.2.1 '@babel/code-frame': 7.22.13 '@babel/generator': 7.22.15 '@babel/helper-compilation-targets': 7.22.15 @@ -6951,6 +7064,10 @@ packages: fast-uri: 2.2.0 dev: true + /@fastify/busboy/2.0.0: + resolution: {integrity: sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==} + engines: {node: '>=14'} + /@fastify/deepmerge/1.3.0: resolution: {integrity: sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==} dev: true @@ -7541,6 +7658,7 @@ packages: dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 + dev: true /@jridgewell/gen-mapping/0.3.2: resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} @@ -7731,7 +7849,7 @@ packages: engines: {node: '>=14'} dependencies: '@types/set-cookie-parser': 2.4.2 - set-cookie-parser: 2.5.1 + set-cookie-parser: 2.6.0 dev: true /@mswjs/interceptors/0.17.6: @@ -9543,6 +9661,10 @@ packages: config-chain: 1.1.13 dev: false + /@polka/url/1.0.0-next.23: + resolution: {integrity: sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==} + dev: true + /@prisma/client/4.16.0_prisma@4.16.0: resolution: {integrity: sha512-CBD+5IdZPiavhLkQokvsz1uz4r9ppixaqY/ajybWs4WXNnsDVMBKEqN3BiPzpSo79jiy22VKj/67pqt4VwIg9w==} engines: {node: '>=14.17'} @@ -10984,7 +11106,7 @@ packages: '@types/cookie': 0.4.1 '@web3-storage/multipart-parser': 1.0.0 cookie: 0.4.2 - set-cookie-parser: 2.5.1 + set-cookie-parser: 2.6.0 source-map: 0.7.4 /@remix-run/server-runtime/2.0.1_typescript@4.9.5: @@ -12633,6 +12755,154 @@ packages: - supports-color dev: false + /@sveltejs/adapter-auto/2.1.0_@sveltejs+kit@1.25.1: + resolution: {integrity: sha512-o2pZCfATFtA/Gw/BB0Xm7k4EYaekXxaPGER3xGSY3FvzFJGTlJlZjBseaXwYSM94lZ0HniOjTokN3cWaLX6fow==} + peerDependencies: + '@sveltejs/kit': ^1.0.0 + dependencies: + '@sveltejs/kit': 1.25.1_svelte@4.2.1+vite@4.4.9 + import-meta-resolve: 3.0.0 + dev: true + + /@sveltejs/kit/1.25.1: + resolution: {integrity: sha512-pD8XsvNJNgTNkFngNlM60my/X8dXWPKVzN5RghEQr0NjGZmuCjy49AfFu2cGbZjNf5pBcqd2RCNMW912P5fkhA==} + engines: {node: ^16.14 || >=18} + hasBin: true + requiresBuild: true + peerDependencies: + svelte: ^3.54.0 || ^4.0.0-next.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 2.4.6 + '@types/cookie': 0.5.2 + cookie: 0.5.0 + devalue: 4.3.2 + esm-env: 1.0.0 + kleur: 4.1.5 + magic-string: 0.30.3 + mime: 3.0.0 + sade: 1.8.1 + set-cookie-parser: 2.6.0 + sirv: 2.0.3 + tiny-glob: 0.2.9 + undici: 5.25.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/kit/1.25.1_svelte@4.2.1+vite@4.4.9: + resolution: {integrity: sha512-pD8XsvNJNgTNkFngNlM60my/X8dXWPKVzN5RghEQr0NjGZmuCjy49AfFu2cGbZjNf5pBcqd2RCNMW912P5fkhA==} + engines: {node: ^16.14 || >=18} + hasBin: true + requiresBuild: true + peerDependencies: + svelte: ^3.54.0 || ^4.0.0-next.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 2.4.6_svelte@4.2.1+vite@4.4.9 + '@types/cookie': 0.5.2 + cookie: 0.5.0 + devalue: 4.3.2 + esm-env: 1.0.0 + kleur: 4.1.5 + magic-string: 0.30.3 + mime: 3.0.0 + sade: 1.8.1 + set-cookie-parser: 2.6.0 + sirv: 2.0.3 + svelte: 4.2.1 + tiny-glob: 0.2.9 + undici: 5.25.4 + vite: 4.4.9 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/package/2.2.2_ihwjmfflvgyqta4xkfhaggvtwe: + resolution: {integrity: sha512-rP3sVv6cAntcdcG4r4KspLU6nZYYUrHJBAX3Arrw0KJFdgxtlsi2iDwN0Jwr/vIkgjcU0ZPWM8kkT5kpZDlWAw==} + engines: {node: ^16.14 || >=18} + hasBin: true + peerDependencies: + svelte: ^3.44.0 || ^4.0.0 + dependencies: + chokidar: 3.5.3 + kleur: 4.1.5 + sade: 1.8.1 + semver: 7.5.4 + svelte: 4.2.1 + svelte2tsx: 0.6.22_ihwjmfflvgyqta4xkfhaggvtwe + transitivePeerDependencies: + - typescript + dev: true + + /@sveltejs/vite-plugin-svelte-inspector/1.0.4_25hzhjyralpt5lwm3sm7wb3ghq: + resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + '@sveltejs/vite-plugin-svelte': ^2.2.0 + svelte: ^3.54.0 || ^4.0.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 2.4.6 + debug: 4.3.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/vite-plugin-svelte-inspector/1.0.4_x762n3kazuogrgydgy4ei75iqi: + resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + '@sveltejs/vite-plugin-svelte': ^2.2.0 + svelte: ^3.54.0 || ^4.0.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 2.4.6_svelte@4.2.1+vite@4.4.9 + debug: 4.3.4 + svelte: 4.2.1 + vite: 4.4.9 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/vite-plugin-svelte/2.4.6: + resolution: {integrity: sha512-zO79p0+DZnXPnF0ltIigWDx/ux7Ni+HRaFOw720Qeivc1azFUrJxTl0OryXVibYNx1hCboGia1NRV3x8RNv4cA==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + svelte: ^3.54.0 || ^4.0.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte-inspector': 1.0.4_25hzhjyralpt5lwm3sm7wb3ghq + debug: 4.3.4 + deepmerge: 4.3.1 + kleur: 4.1.5 + magic-string: 0.30.3 + svelte-hmr: 0.15.3 + vitefu: 0.2.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/vite-plugin-svelte/2.4.6_svelte@4.2.1+vite@4.4.9: + resolution: {integrity: sha512-zO79p0+DZnXPnF0ltIigWDx/ux7Ni+HRaFOw720Qeivc1azFUrJxTl0OryXVibYNx1hCboGia1NRV3x8RNv4cA==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + svelte: ^3.54.0 || ^4.0.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte-inspector': 1.0.4_x762n3kazuogrgydgy4ei75iqi + debug: 4.3.4 + deepmerge: 4.3.1 + kleur: 4.1.5 + magic-string: 0.30.3 + svelte: 4.2.1 + svelte-hmr: 0.15.3_svelte@4.2.1 + vite: 4.4.9 + vitefu: 0.2.4_vite@4.4.9 + transitivePeerDependencies: + - supports-color + dev: true + /@swc/core-darwin-arm64/1.3.26: resolution: {integrity: sha512-FWWflBfKRYrUJtko2xiedC5XCa31O75IZZqnTWuLpe9g3C5tnUuF3M8LSXZS/dn6wprome1MhtG9GMPkSYkhkg==} engines: {node: '>=10'} @@ -12808,6 +13078,10 @@ packages: tailwindcss: 3.3.2_ts-node@10.9.1 dev: true + /@tanstack/query-core/4.35.7: + resolution: {integrity: sha512-PgDJtX75ubFS0WCYFM7DqEoJ4QbxU3S5OH3gJSI40xr7UVVax3/J4CM3XUMOTs+EOT5YGEfssi3tfRVGte4DEw==} + dev: false + /@tanstack/query-core/5.0.0-beta.0: resolution: {integrity: sha512-VGq/H3PuRoj0shOcg1S5Flv3YD2qNz2ttk8w5xe5AHQE1I8NO9EHSBUxezIpk4dD6M7bQDtwHBMqqU2EwMwyUw==} dev: false @@ -12829,6 +13103,15 @@ packages: react: 18.2.0 dev: false + /@tanstack/svelte-query/4.35.7_svelte@4.2.1: + resolution: {integrity: sha512-YQ9NbAn2F6f5J765iLqVFIcL3XsGHByckMQICaYgNLKY0PTlWeMl0rjG7GwPX9wymUhn8KQuXdyqsUyLlRjHJQ==} + peerDependencies: + svelte: '>=3 <5' + dependencies: + '@tanstack/query-core': 4.35.7 + svelte: 4.2.1 + dev: false + /@team-plain/typescript-sdk/2.2.0: resolution: {integrity: sha512-ZNRZJ1uhQYHqaAKNAMdcSvULxutDQldocJWEDxJ5CJX4QYyzD8adK7gB9szKQDsxHFA3sZgTjtSruFBOf+C2fw==} dependencies: @@ -12990,7 +13273,7 @@ packages: /@types/acorn/4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /@types/aria-query/5.0.1: @@ -13098,6 +13381,10 @@ packages: /@types/cookie/0.4.1: resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==} + /@types/cookie/0.5.2: + resolution: {integrity: sha512-DBpRoJGKJZn7RY92dPrgoMew8xCWc2P71beqsjyhEI/Ds9mOyVmBwtekyfhpwFIVt1WrxTonFifiOZ62V8CnNA==} + dev: true + /@types/cookiejar/2.1.2: resolution: {integrity: sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==} dev: true @@ -13182,7 +13469,7 @@ packages: resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} dependencies: '@types/eslint': 8.4.10 - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /@types/eslint/8.4.10: @@ -13195,13 +13482,13 @@ packages: /@types/estree-jsx/0.0.1: resolution: {integrity: sha512-gcLAYiMfQklDCPjQegGn0TBAn9it05ISEsEhlKQUddIk7o2XDokOcTN7HBO8tznM0D9dGezvHEfRZBfZf6me0A==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /@types/estree-jsx/1.0.0: resolution: {integrity: sha512-3qvGd0z8F2ENTGr/GG1yViqfiKmRfrXVx5sJyHGFu3z7m5g5utCQtGp/g29JnjflhtQJBv1WDQukHiT58xPcYQ==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /@types/estree/0.0.51: @@ -13211,6 +13498,9 @@ packages: /@types/estree/1.0.0: resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==} + /@types/estree/1.0.2: + resolution: {integrity: sha512-VeiPZ9MMwXjO32/Xu7+OwflfmeoRwkE/qzndw42gGtgJwZopBnzy2gD//NN1+go1mADzkDcqf/KnFRSjTJ8xJA==} + /@types/express-serve-static-core/4.17.32: resolution: {integrity: sha512-aI5h/VOkxOF2Z1saPy0Zsxs5avets/iaiAJYznQFm5By/pamU31xWKL//epiF4OfUA2qTOc9PV6tCUjhO8wlZA==} dependencies: @@ -13649,6 +13939,10 @@ packages: /@types/prop-types/15.7.5: resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} + /@types/pug/2.0.7: + resolution: {integrity: sha512-I469DU0UXNC1aHepwirWhu9YKg5fkxohZD95Ey/5A7lovC+Siu+MCLffva87lnfThaOrw9Vb1DUN5t55oULAAw==} + dev: true + /@types/qs/6.9.7: resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} @@ -13865,6 +14159,34 @@ packages: - supports-color dev: true + /@typescript-eslint/eslint-plugin/5.59.6_ltg3s7zeaq5lfn26f6cgiedibm: + resolution: {integrity: sha512-sXtOgJNEuRU5RLwPUb1jxtToZbgvq3M6FPpY4QENxoOggK+UpTxUBpj6tD8+Qh2g46Pi9We87E+eHnUw8YcGsw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + '@typescript-eslint/parser': ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@eslint-community/regexpp': 4.5.1 + '@typescript-eslint/parser': 5.59.6_ox3na7ge7wjdarbyztnclevxam + '@typescript-eslint/scope-manager': 5.59.6 + '@typescript-eslint/type-utils': 5.59.6_ox3na7ge7wjdarbyztnclevxam + '@typescript-eslint/utils': 5.59.6_ox3na7ge7wjdarbyztnclevxam + debug: 4.3.4 + eslint: 8.45.0 + grapheme-splitter: 1.0.4 + ignore: 5.2.4 + natural-compare-lite: 1.4.0 + semver: 7.5.0 + tsutils: 3.21.0_typescript@5.2.2 + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/eslint-plugin/6.7.4_ygtxu7ao4w7xzfo6eep522bcem: resolution: {integrity: sha512-DAbgDXwtX+pDkAHwiGhqP3zWUGpW49B7eqmgpPtg+BKJXwdct79ut9+ifqOFPJGClGKSHXn2PTBatCnldJRUoA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -13992,6 +14314,26 @@ packages: - supports-color dev: true + /@typescript-eslint/parser/5.59.6_ox3na7ge7wjdarbyztnclevxam: + resolution: {integrity: sha512-7pCa6al03Pv1yf/dUg/s1pXz/yGMUBAw5EeWqNTFiSueKvRNonze3hma3lhdsOrQcaOXhbk5gKu2Fludiho9VA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 5.59.6 + '@typescript-eslint/types': 5.59.6 + '@typescript-eslint/typescript-estree': 5.59.6_typescript@5.2.2 + debug: 4.3.4 + eslint: 8.45.0 + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/parser/6.7.4_ox3na7ge7wjdarbyztnclevxam: resolution: {integrity: sha512-I5zVZFY+cw4IMZUeNCU7Sh2PO5O57F7Lr0uyhgCJmhN/BuTlnc55KxPonR4+EM3GBdfiCyGZye6DgMjtubQkmA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -14068,6 +14410,26 @@ packages: - supports-color dev: true + /@typescript-eslint/type-utils/5.59.6_ox3na7ge7wjdarbyztnclevxam: + resolution: {integrity: sha512-A4tms2Mp5yNvLDlySF+kAThV9VTBPCvGf0Rp8nl/eoDX9Okun8byTKoj3fJ52IJitjWOk0fKPNQhXEB++eNozQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '*' + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/typescript-estree': 5.59.6_typescript@5.2.2 + '@typescript-eslint/utils': 5.59.6_ox3na7ge7wjdarbyztnclevxam + debug: 4.3.4 + eslint: 8.45.0 + tsutils: 3.21.0_typescript@5.2.2 + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/type-utils/6.7.4_ox3na7ge7wjdarbyztnclevxam: resolution: {integrity: sha512-n+g3zi1QzpcAdHFP9KQF+rEFxMb2KxtnJGID3teA/nxKHOVi3ylKovaqEzGBbVY2pBttU6z85gp0D00ufLzViQ==} engines: {node: ^16.0.0 || >=18.0.0} @@ -14200,6 +14562,27 @@ packages: transitivePeerDependencies: - supports-color + /@typescript-eslint/typescript-estree/5.59.6_typescript@5.2.2: + resolution: {integrity: sha512-vW6JP3lMAs/Tq4KjdI/RiHaaJSO7IUsbkz17it/Rl9Q+WkQ77EOuOnlbaU8kKfVIOJxMhnRiBG+olE7f3M16DA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 5.59.6 + '@typescript-eslint/visitor-keys': 5.59.6 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.5.4 + tsutils: 3.21.0_typescript@5.2.2 + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/typescript-estree/6.7.4_typescript@5.2.2: resolution: {integrity: sha512-ty8b5qHKatlNYd9vmpHooQz3Vki3gG+3PchmtsA4TgrZBKWHNjWfkQid7K7xQogBqqc7/BhGazxMD5vr6Ha+iQ==} engines: {node: ^16.0.0 || >=18.0.0} @@ -14281,6 +14664,26 @@ packages: - typescript dev: true + /@typescript-eslint/utils/5.59.6_ox3na7ge7wjdarbyztnclevxam: + resolution: {integrity: sha512-vzaaD6EXbTS29cVH0JjXBdzMt6VBlv+hE31XktDRMX1j3462wZCJa7VzO2AxXEXcIl8GQqZPcOPuW/Z1tZVogg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0_eslint@8.45.0 + '@types/json-schema': 7.0.11 + '@types/semver': 7.3.13 + '@typescript-eslint/scope-manager': 5.59.6 + '@typescript-eslint/types': 5.59.6 + '@typescript-eslint/typescript-estree': 5.59.6_typescript@5.2.2 + eslint: 8.45.0 + eslint-scope: 5.1.1 + semver: 7.5.4 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + /@typescript-eslint/utils/6.7.4_ox3na7ge7wjdarbyztnclevxam: resolution: {integrity: sha512-PRQAs+HUn85Qdk+khAxsVV+oULy3VkbH3hQ8hxLRJXWBEd7iI+GbQxH5SEUSH7kbEoTp6oT1bOwyga24ELALTA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -14397,7 +14800,7 @@ packages: lodash: 4.17.21 mlly: 1.1.1 outdent: 0.8.0 - vite: 4.1.4 + vite: 4.4.9 vite-node: 0.28.5 transitivePeerDependencies: - '@types/node' @@ -14424,7 +14827,7 @@ packages: lodash: 4.17.21 mlly: 1.1.1 outdent: 0.8.0 - vite: 4.1.4_@types+node@18.11.18 + vite: 4.4.9_@types+node@18.11.18 vite-node: 0.28.5_@types+node@18.11.18 transitivePeerDependencies: - '@types/node' @@ -14995,8 +15398,13 @@ packages: dependencies: deep-equal: 2.2.0 - /arr-diff/1.1.0: - resolution: {integrity: sha512-OQwDZUqYaQwyyhDJHThmzId8daf4/RFNLaeh3AevmSeZ5Y7ug4Ga/yKc6l6kTZOBW781rCj103ZuTh8GAsB3+Q==} + /aria-query/5.3.0: + resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + dependencies: + dequal: 2.0.3 + + /arr-diff/1.1.0: + resolution: {integrity: sha512-OQwDZUqYaQwyyhDJHThmzId8daf4/RFNLaeh3AevmSeZ5Y7ug4Ga/yKc6l6kTZOBW781rCj103ZuTh8GAsB3+Q==} engines: {node: '>=0.10.0'} dependencies: arr-flatten: 1.1.0 @@ -15374,6 +15782,11 @@ packages: dependencies: deep-equal: 2.2.0 + /axobject-query/3.2.1: + resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} + dependencies: + dequal: 2.0.3 + /b4a/1.6.4: resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} optional: true @@ -16465,6 +16878,15 @@ packages: engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} dev: true + /code-red/1.0.4: + resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + '@types/estree': 1.0.2 + acorn: 8.10.0 + estree-walker: 3.0.3 + periscopic: 3.1.0 + /codemirror/6.0.1: resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==} dependencies: @@ -16936,6 +17358,13 @@ packages: source-map: 0.6.1 dev: false + /css-tree/2.3.1: + resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + dependencies: + mdn-data: 2.0.30 + source-map-js: 1.0.2 + /css-unit-converter/1.1.2: resolution: {integrity: sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==} dev: false @@ -17212,6 +17641,10 @@ packages: dependencies: mimic-response: 3.1.0 + /dedent-js/1.0.1: + resolution: {integrity: sha512-OUepMozQULMLUmhxS95Vudo0jb0UchLimi3+pQ2plj61Fcy8axbP9hbiD4Sz6DPqn6XG3kfmziVfQ1rSys5AJQ==} + dev: true + /dedent/0.7.0: resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} dev: true @@ -17267,6 +17700,11 @@ packages: resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} engines: {node: '>=0.10.0'} + /deepmerge/4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + dev: true + /default-browser-id/3.0.0: resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==} engines: {node: '>=12'} @@ -17863,6 +18301,10 @@ packages: resolution: {integrity: sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==} dev: true + /es6-promise/3.3.1: + resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} + dev: true + /es6-symbol/3.1.3: resolution: {integrity: sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==} dependencies: @@ -18426,6 +18868,15 @@ packages: eslint: 8.31.0 dev: true + /eslint-config-prettier/8.6.0_eslint@8.45.0: + resolution: {integrity: sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + dependencies: + eslint: 8.45.0 + dev: true + /eslint-config-prettier/9.0.0_eslint@8.45.0: resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} hasBin: true @@ -18629,7 +19080,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.59.6_eslint@8.42.0 + '@typescript-eslint/parser': 5.59.6_binxsscxvozjxebftqdoazsxm4 debug: 3.2.7 eslint: 8.42.0 eslint-import-resolver-node: 0.3.7 @@ -18714,7 +19165,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.59.6_eslint@8.42.0 + '@typescript-eslint/parser': 5.59.6_binxsscxvozjxebftqdoazsxm4 array-includes: 3.1.6 array.prototype.flat: 1.3.1 array.prototype.flatmap: 1.3.1 @@ -19090,6 +19541,34 @@ packages: semver: 6.3.1 string.prototype.matchall: 4.0.8 + /eslint-plugin-svelte/2.34.0_eslint@8.45.0+svelte@4.2.1: + resolution: {integrity: sha512-4RYUgNai7wr0v+T/kljMiYSjC/oqwgq5i+cPppawryAayj4C7WK1ixFlWCGmNmBppnoKCl4iA4ZPzPtlHcb4CA==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0-0 + svelte: ^3.37.0 || ^4.0.0 + peerDependenciesMeta: + svelte: + optional: true + dependencies: + '@eslint-community/eslint-utils': 4.4.0_eslint@8.45.0 + '@jridgewell/sourcemap-codec': 1.4.15 + debug: 4.3.4 + eslint: 8.45.0 + esutils: 2.0.3 + known-css-properties: 0.28.0 + postcss: 8.4.29 + postcss-load-config: 3.1.4_postcss@8.4.29 + postcss-safe-parser: 6.0.0_postcss@8.4.29 + postcss-selector-parser: 6.0.11 + semver: 7.5.4 + svelte: 4.2.1 + svelte-eslint-parser: 0.33.1_svelte@4.2.1 + transitivePeerDependencies: + - supports-color + - ts-node + dev: true + /eslint-plugin-testing-library/5.11.0_iukboom6ndih5an6iafl45j2fe: resolution: {integrity: sha512-ELY7Gefo+61OfXKlQeXNIDVVLPcvKTeiQOoMZG9TeuWa7Ln4dUNRv8JdRWBQI9Mbb427XGlVB1aa1QPZxBJM8Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'} @@ -19335,6 +19814,9 @@ packages: transitivePeerDependencies: - supports-color + /esm-env/1.0.0: + resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} + /espree/9.4.1: resolution: {integrity: sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -19399,7 +19881,7 @@ packages: /estree-util-attach-comments/2.1.0: resolution: {integrity: sha512-rJz6I4L0GaXYtHpoMScgDIwM0/Vwbu5shbMeER596rB2D1EWF6+Gj0e0UKzJPZrpoOc87+Q2kgVFHfjAymIqmw==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /estree-util-build-jsx/2.2.2: @@ -20126,7 +20608,7 @@ packages: chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 7.1.0 - deepmerge: 4.2.2 + deepmerge: 4.3.1 fs-extra: 10.1.0 memfs: 3.5.3 minimatch: 3.1.2 @@ -21012,7 +21494,7 @@ packages: /hast-util-to-estree/2.1.0: resolution: {integrity: sha512-Vwch1etMRmm89xGgz+voWXvVHba2iiMdGMKmaMfYt35rbVtFDq8JNwwAIvi8zHMkO6Gvqo9oTMwJTmzVRfXh4g==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 '@types/estree-jsx': 1.0.0 '@types/hast': 2.3.4 '@types/unist': 2.0.6 @@ -21349,6 +21831,13 @@ packages: resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==} dev: true + /ignore-walk/5.0.1: + resolution: {integrity: sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + minimatch: 5.1.2 + dev: true + /ignore-walk/6.0.3: resolution: {integrity: sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -21904,7 +22393,6 @@ packages: resolution: {integrity: sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w==} dependencies: '@types/estree': 1.0.0 - dev: true /is-regex/1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} @@ -22258,7 +22746,7 @@ packages: babel-jest: 29.6.2_@babel+core@7.22.17 chalk: 4.1.2 ci-info: 3.8.0 - deepmerge: 4.2.2 + deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.10 jest-circus: 29.6.2 @@ -22298,7 +22786,7 @@ packages: babel-jest: 29.6.2_@babel+core@7.22.17 chalk: 4.1.2 ci-info: 3.8.0 - deepmerge: 4.2.2 + deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.10 jest-circus: 29.6.2 @@ -22338,7 +22826,7 @@ packages: babel-jest: 29.6.2_@babel+core@7.22.17 chalk: 4.1.2 ci-info: 3.8.0 - deepmerge: 4.2.2 + deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.10 jest-circus: 29.6.2 @@ -23005,6 +23493,10 @@ packages: engines: {node: '>= 8'} dev: true + /known-css-properties/0.28.0: + resolution: {integrity: sha512-9pSL5XB4J+ifHP0e0jmmC98OGC1nL8/JjS+fi6mnTlIf//yt/MfVLtKg7S6nCtj/8KTcWX7nRlY0XywoYY1ISQ==} + dev: true + /language-subtag-registry/0.3.22: resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} @@ -23073,7 +23565,7 @@ packages: dependencies: cookie: 0.5.0 process-warning: 2.2.0 - set-cookie-parser: 2.5.1 + set-cookie-parser: 2.6.0 dev: true /lilconfig/2.0.6: @@ -23178,6 +23670,9 @@ packages: - supports-color dev: false + /locate-character/3.0.0: + resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} + /locate-path/3.0.0: resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} engines: {node: '>=6'} @@ -23352,6 +23847,13 @@ packages: engines: {node: '>=6'} dev: true + /magic-string/0.27.0: + resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} + engines: {node: '>=12'} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + /magic-string/0.30.0: resolution: {integrity: sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==} engines: {node: '>=12'} @@ -23700,6 +24202,9 @@ packages: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} dev: false + /mdn-data/2.0.30: + resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + /mdurl/1.0.1: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} dev: true @@ -24008,7 +24513,7 @@ packages: resolution: {integrity: sha512-WWp3bf7xT9MppNuw3yPjpnOxa8cj5ACivEzXJKu0WwnjBYfzaBvIAT9KfeyI0Qkll+bfQtfftSwdgTH6QhTOKw==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 estree-util-visit: 1.2.0 micromark-util-types: 1.0.2 uvu: 0.5.6 @@ -24930,6 +25435,13 @@ packages: engines: {node: '>=14.16'} dev: false + /npm-bundled/2.0.1: + resolution: {integrity: sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + npm-normalize-package-bin: 2.0.0 + dev: true + /npm-bundled/3.0.0: resolution: {integrity: sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -24985,6 +25497,11 @@ packages: semver: 7.5.4 dev: false + /npm-normalize-package-bin/2.0.0: + resolution: {integrity: sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dev: true + /npm-normalize-package-bin/3.0.1: resolution: {integrity: sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -25000,6 +25517,17 @@ packages: validate-npm-package-name: 5.0.0 dev: false + /npm-packlist/5.1.3: + resolution: {integrity: sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + hasBin: true + dependencies: + glob: 8.1.0 + ignore-walk: 5.0.1 + npm-bundled: 2.0.1 + npm-normalize-package-bin: 2.0.0 + dev: true + /npm-packlist/7.0.4: resolution: {integrity: sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -25806,6 +26334,13 @@ packages: is-reference: 3.0.1 dev: true + /periscopic/3.1.0: + resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} + dependencies: + '@types/estree': 1.0.0 + estree-walker: 3.0.3 + is-reference: 3.0.1 + /pg-connection-string/2.5.0: resolution: {integrity: sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==} dev: false @@ -26088,6 +26623,23 @@ packages: yaml: 1.10.2 dev: true + /postcss-load-config/3.1.4_postcss@8.4.29: + resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} + engines: {node: '>= 10'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 2.1.0 + postcss: 8.4.29 + yaml: 1.10.2 + dev: true + /postcss-load-config/4.0.1: resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} engines: {node: '>= 14'} @@ -26312,6 +26864,24 @@ packages: postcss-selector-parser: 6.0.11 dev: false + /postcss-safe-parser/6.0.0_postcss@8.4.29: + resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.3.3 + dependencies: + postcss: 8.4.29 + dev: true + + /postcss-scss/4.0.9_postcss@8.4.29: + resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.4.29 + dependencies: + postcss: 8.4.29 + dev: true + /postcss-selector-parser/6.0.10: resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} engines: {node: '>=4'} @@ -26471,6 +27041,16 @@ packages: fast-diff: 1.3.0 dev: true + /prettier-plugin-svelte/2.10.1_hfafeyo6vw33o2ufgpsfnrywzu: + resolution: {integrity: sha512-Wlq7Z5v2ueCubWo0TZzKc9XHcm7TDxqcuzRuGd0gcENfzfT4JZ9yDlCbEgxWgiPmLHkBjfOtpAWkcT28MCDpUQ==} + peerDependencies: + prettier: ^1.16.4 || ^2.0.0 + svelte: ^3.2.0 || ^4.0.0-next.0 + dependencies: + prettier: 2.8.8 + svelte: 4.2.1 + dev: true + /prettier-plugin-tailwindcss/0.3.0_prettier@2.8.8: resolution: {integrity: sha512-009/Xqdy7UmkcTBpwlq7jsViDqXAYSOMLDrHAdTMlVZOrKfM2o9Ci7EMWTMZ7SkKBFTG04UM9F9iM2+4i6boDA==} engines: {node: '>=12.17.0'} @@ -26729,6 +27309,16 @@ packages: resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} dev: true + /publint/0.1.16: + resolution: {integrity: sha512-wJgk7HnXDT5Ap0DjFYbGz78kPkN44iQvDiaq8P63IEEyNU9mYXvaMd2cAyIM6OgqXM/IA3CK6XWIsRq+wjNpgw==} + engines: {node: '>=16'} + hasBin: true + dependencies: + npm-packlist: 5.1.3 + picocolors: 1.0.0 + sade: 1.8.1 + dev: true + /pump/2.0.1: resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==} dependencies: @@ -28071,6 +28661,15 @@ packages: /safer-buffer/2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + /sander/0.5.1: + resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==} + dependencies: + es6-promise: 3.3.1 + graceful-fs: 4.2.10 + mkdirp: 0.5.6 + rimraf: 2.7.1 + dev: true + /sass-loader/13.2.2: resolution: {integrity: sha512-nrIdVAAte3B9icfBiGWvmMhT/D+eCDwnk+yA7VE/76dp/WkHX+i44Q/pfo71NYbwj0Ap+PGsn0ekOuU1WFJ2AA==} engines: {node: '>= 14.15.0'} @@ -28270,6 +28869,9 @@ packages: /set-cookie-parser/2.5.1: resolution: {integrity: sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==} + /set-cookie-parser/2.6.0: + resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==} + /set-harmonic-interval/1.0.1: resolution: {integrity: sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==} engines: {node: '>=6.9'} @@ -28454,6 +29056,15 @@ packages: resolution: {integrity: sha512-bBAoTn75tuKh83opmZ1VoyVoQIsvLCKzSxuasAxbnKofrT8eGyOEIaXSuNfhi/hI160+fwsR7ObcbBpOyzDvXg==} dev: false + /sirv/2.0.3: + resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==} + engines: {node: '>= 10'} + dependencies: + '@polka/url': 1.0.0-next.23 + mrmime: 1.0.1 + totalist: 3.0.1 + dev: true + /sisteransi/1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -28581,6 +29192,16 @@ packages: atomic-sleep: 1.0.0 dev: true + /sorcery/0.11.0: + resolution: {integrity: sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==} + hasBin: true + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + buffer-crc32: 0.2.13 + minimist: 1.2.7 + sander: 0.5.1 + dev: true + /sort-object-keys/1.1.3: resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} dev: true @@ -29210,6 +29831,143 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + /svelte-check/3.5.2_svelte@4.2.1: + resolution: {integrity: sha512-5a/YWbiH4c+AqAUP+0VneiV5bP8YOk9JL3jwvN+k2PEPLgpu85bjQc5eE67+eIZBBwUEJzmO3I92OqKcqbp3fw==} + hasBin: true + peerDependencies: + svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0 + dependencies: + '@jridgewell/trace-mapping': 0.3.19 + chokidar: 3.5.3 + fast-glob: 3.3.1 + import-fresh: 3.3.0 + picocolors: 1.0.0 + sade: 1.8.1 + svelte: 4.2.1 + svelte-preprocess: 5.0.4_ihwjmfflvgyqta4xkfhaggvtwe + typescript: 5.2.2 + transitivePeerDependencies: + - '@babel/core' + - coffeescript + - less + - postcss + - postcss-load-config + - pug + - sass + - stylus + - sugarss + dev: true + + /svelte-eslint-parser/0.33.1_svelte@4.2.1: + resolution: {integrity: sha512-vo7xPGTlKBGdLH8T5L64FipvTrqv3OQRx9d2z5X05KKZDlF4rQk8KViZO4flKERY+5BiVdOh7zZ7JGJWo5P0uA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + svelte: ^3.37.0 || ^4.0.0 + peerDependenciesMeta: + svelte: + optional: true + dependencies: + eslint-scope: 7.2.0 + eslint-visitor-keys: 3.4.2 + espree: 9.6.0 + postcss: 8.4.29 + postcss-scss: 4.0.9_postcss@8.4.29 + svelte: 4.2.1 + dev: true + + /svelte-hmr/0.15.3: + resolution: {integrity: sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==} + engines: {node: ^12.20 || ^14.13.1 || >= 16} + peerDependencies: + svelte: ^3.19.0 || ^4.0.0 + dev: true + + /svelte-hmr/0.15.3_svelte@4.2.1: + resolution: {integrity: sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==} + engines: {node: ^12.20 || ^14.13.1 || >= 16} + peerDependencies: + svelte: ^3.19.0 || ^4.0.0 + dependencies: + svelte: 4.2.1 + dev: true + + /svelte-preprocess/5.0.4_ihwjmfflvgyqta4xkfhaggvtwe: + resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==} + engines: {node: '>= 14.10.0'} + requiresBuild: true + peerDependencies: + '@babel/core': ^7.10.2 + coffeescript: ^2.5.1 + less: ^3.11.3 || ^4.0.0 + postcss: ^7 || ^8 + postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 + pug: ^3.0.0 + sass: ^1.26.8 + stylus: ^0.55.0 + sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 + svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0 + typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0' + peerDependenciesMeta: + '@babel/core': + optional: true + coffeescript: + optional: true + less: + optional: true + postcss: + optional: true + postcss-load-config: + optional: true + pug: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + typescript: + optional: true + dependencies: + '@types/pug': 2.0.7 + detect-indent: 6.1.0 + magic-string: 0.27.0 + sorcery: 0.11.0 + strip-indent: 3.0.0 + svelte: 4.2.1 + typescript: 5.2.2 + dev: true + + /svelte/4.2.1: + resolution: {integrity: sha512-LpLqY2Jr7cRxkrTc796/AaaoMLF/1ax7cto8Ot76wrvKQhrPmZ0JgajiWPmg9mTSDqO16SSLiD17r9MsvAPTmw==} + engines: {node: '>=16'} + dependencies: + '@ampproject/remapping': 2.2.1 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.19 + acorn: 8.10.0 + aria-query: 5.3.0 + axobject-query: 3.2.1 + code-red: 1.0.4 + css-tree: 2.3.1 + estree-walker: 3.0.3 + is-reference: 3.0.1 + locate-character: 3.0.0 + magic-string: 0.30.3 + periscopic: 3.1.0 + + /svelte2tsx/0.6.22_ihwjmfflvgyqta4xkfhaggvtwe: + resolution: {integrity: sha512-eFCfz0juaWeanbwGeQV21kPMwH3LKhfrUYRy1PqRmlieuHvJs8VeK7CaoHJdpBZWCXba2cltHVdywJmwOGhbww==} + peerDependencies: + svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 + typescript: ^4.9.4 || ^5.0.0 + dependencies: + dedent-js: 1.0.1 + pascal-case: 3.1.2 + svelte: 4.2.1 + typescript: 5.2.2 + dev: true + /symbol-observable/4.0.0: resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==} engines: {node: '>=0.10'} @@ -29665,6 +30423,11 @@ packages: resolution: {integrity: sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==} dev: true + /totalist/3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} + engines: {node: '>=6'} + dev: true + /touch/3.1.0: resolution: {integrity: sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==} hasBin: true @@ -30298,6 +31061,16 @@ packages: tslib: 1.14.1 typescript: 5.1.6 + /tsutils/3.21.0_typescript@5.2.2: + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + dependencies: + tslib: 1.14.1 + typescript: 5.2.2 + dev: true + /tsx/3.12.2: resolution: {integrity: sha512-ykAEkoBg30RXxeOMVeZwar+JH632dZn9EUJVyJwhfag62k6UO/dIyJEV58YuLF6e5BTdV/qmbQrpkWqjq9cUnQ==} hasBin: true @@ -30565,6 +31338,12 @@ packages: dependencies: busboy: 1.6.0 + /undici/5.25.4: + resolution: {integrity: sha512-450yJxT29qKMf3aoudzFpIciqpx6Pji3hEWaXqXmanbXF58LTAGCKxcJjxMXWu3iG+Mudgo3ZUfDB6YDFd/dAw==} + engines: {node: '>=14.0'} + dependencies: + '@fastify/busboy': 2.0.0 + /unfetch/4.2.0: resolution: {integrity: sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==} @@ -31199,73 +31978,6 @@ packages: - typescript dev: true - /vite/4.1.4: - resolution: {integrity: sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - dependencies: - esbuild: 0.16.17 - postcss: 8.4.29 - resolve: 1.22.1 - rollup: 3.10.0 - optionalDependencies: - fsevents: 2.3.3 - dev: true - - /vite/4.1.4_@types+node@18.11.18: - resolution: {integrity: sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - dependencies: - '@types/node': 18.11.18 - esbuild: 0.16.17 - postcss: 8.4.29 - resolve: 1.22.1 - rollup: 3.10.0 - optionalDependencies: - fsevents: 2.3.3 - dev: true - /vite/4.1.4_@types+node@18.17.1: resolution: {integrity: sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==} engines: {node: ^14.18.0 || >=16.0.0} @@ -31439,6 +32151,15 @@ packages: optionalDependencies: fsevents: 2.3.3 + /vitefu/0.2.4: + resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} + peerDependencies: + vite: ^3.0.0 || ^4.0.0 + peerDependenciesMeta: + vite: + optional: true + dev: true + /vitefu/0.2.4_vite@4.4.9: resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} peerDependencies: @@ -31694,7 +32415,7 @@ packages: optional: true dependencies: '@types/eslint-scope': 3.7.4 - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 '@webassemblyjs/ast': 1.11.5 '@webassemblyjs/wasm-edit': 1.11.5 '@webassemblyjs/wasm-parser': 1.11.5 @@ -31734,7 +32455,7 @@ packages: optional: true dependencies: '@types/eslint-scope': 3.7.4 - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 '@webassemblyjs/ast': 1.11.5 '@webassemblyjs/wasm-edit': 1.11.5 '@webassemblyjs/wasm-parser': 1.11.5 diff --git a/examples/svelte-example/.env.example b/references/svelte-example/.env.example similarity index 100% rename from examples/svelte-example/.env.example rename to references/svelte-example/.env.example diff --git a/examples/example-svelte-app/.eslintignore b/references/svelte-example/.eslintignore similarity index 100% rename from examples/example-svelte-app/.eslintignore rename to references/svelte-example/.eslintignore diff --git a/examples/example-svelte-app/.eslintrc.cjs b/references/svelte-example/.eslintrc.cjs similarity index 100% rename from examples/example-svelte-app/.eslintrc.cjs rename to references/svelte-example/.eslintrc.cjs diff --git a/examples/example-svelte-app/.gitignore b/references/svelte-example/.gitignore similarity index 100% rename from examples/example-svelte-app/.gitignore rename to references/svelte-example/.gitignore diff --git a/examples/example-svelte-app/.npmrc b/references/svelte-example/.npmrc similarity index 100% rename from examples/example-svelte-app/.npmrc rename to references/svelte-example/.npmrc diff --git a/examples/example-svelte-app/.prettierignore b/references/svelte-example/.prettierignore similarity index 100% rename from examples/example-svelte-app/.prettierignore rename to references/svelte-example/.prettierignore diff --git a/examples/example-svelte-app/.prettierrc b/references/svelte-example/.prettierrc similarity index 100% rename from examples/example-svelte-app/.prettierrc rename to references/svelte-example/.prettierrc diff --git a/examples/example-svelte-app/README.md b/references/svelte-example/README.md similarity index 100% rename from examples/example-svelte-app/README.md rename to references/svelte-example/README.md diff --git a/examples/svelte-example/package.json b/references/svelte-example/package.json similarity index 100% rename from examples/svelte-example/package.json rename to references/svelte-example/package.json diff --git a/examples/example-svelte-app/src/app.d.ts b/references/svelte-example/src/app.d.ts similarity index 100% rename from examples/example-svelte-app/src/app.d.ts rename to references/svelte-example/src/app.d.ts diff --git a/examples/example-svelte-app/src/app.html b/references/svelte-example/src/app.html similarity index 100% rename from examples/example-svelte-app/src/app.html rename to references/svelte-example/src/app.html diff --git a/examples/svelte-example/src/jobs/example.ts b/references/svelte-example/src/jobs/example.ts similarity index 100% rename from examples/svelte-example/src/jobs/example.ts rename to references/svelte-example/src/jobs/example.ts diff --git a/examples/svelte-example/src/lib/index.ts b/references/svelte-example/src/lib/index.ts similarity index 100% rename from examples/svelte-example/src/lib/index.ts rename to references/svelte-example/src/lib/index.ts diff --git a/examples/svelte-example/src/routes/+page.svelte b/references/svelte-example/src/routes/+page.svelte similarity index 100% rename from examples/svelte-example/src/routes/+page.svelte rename to references/svelte-example/src/routes/+page.svelte diff --git a/examples/svelte-example/src/routes/api/trigger/+server.ts b/references/svelte-example/src/routes/api/trigger/+server.ts similarity index 100% rename from examples/svelte-example/src/routes/api/trigger/+server.ts rename to references/svelte-example/src/routes/api/trigger/+server.ts diff --git a/examples/svelte-example/src/trigger.ts b/references/svelte-example/src/trigger.ts similarity index 100% rename from examples/svelte-example/src/trigger.ts rename to references/svelte-example/src/trigger.ts diff --git a/examples/example-svelte-app/static/favicon.png b/references/svelte-example/static/favicon.png similarity index 100% rename from examples/example-svelte-app/static/favicon.png rename to references/svelte-example/static/favicon.png diff --git a/examples/svelte-example/svelte.config.js b/references/svelte-example/svelte.config.js similarity index 100% rename from examples/svelte-example/svelte.config.js rename to references/svelte-example/svelte.config.js diff --git a/examples/svelte-example/tsconfig.json b/references/svelte-example/tsconfig.json similarity index 100% rename from examples/svelte-example/tsconfig.json rename to references/svelte-example/tsconfig.json diff --git a/examples/svelte-example/vite.config.ts b/references/svelte-example/vite.config.ts similarity index 100% rename from examples/svelte-example/vite.config.ts rename to references/svelte-example/vite.config.ts From 7de712dc0a8bd0ef249c3b97181a5d9daa84d012 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 13:26:55 +0100 Subject: [PATCH 03/18] Tweaked the SveleteKit manual setup guide --- docs/_snippets/manual-setup-sveltekit.mdx | 90 +++++++---------------- 1 file changed, 25 insertions(+), 65 deletions(-) diff --git a/docs/_snippets/manual-setup-sveltekit.mdx b/docs/_snippets/manual-setup-sveltekit.mdx index edf3382de46..b68887da32a 100644 --- a/docs/_snippets/manual-setup-sveltekit.mdx +++ b/docs/_snippets/manual-setup-sveltekit.mdx @@ -5,23 +5,21 @@ To begin, install the necessary packages in your Sveltekit project directory. Yo ```bash npm - npm i @trigger.dev/sdk @trigger.dev/sveltekit - ``` ```bash pnpm pnpm install @trigger.dev/sdk @trigger.dev/sveltekit - ``` ```bash yarn yarn add @trigger.dev/sdk @trigger.dev/sveltekit - ``` +
+Ensure that you execute this command within a SvelteKit project. ## Obtaining the Development API Key To locate your development API key, login to the [Trigger.dev @@ -35,74 +33,38 @@ You can copy your development API Key from the field at the top of this page. Create a `.env` file at the root of your project and include your Trigger API key and URL like this: ```bash - TRIGGER_API_KEY=ENTER_YOUR_DEVELOPMENT_API_KEY_HERE -TRIGGER_API_URL=https://cloud.trigger.dev - +TRIGGER_API_URL=https://api.trigger.dev # this is only necessary if you are self-hosting ``` Replace `ENTER_YOUR_DEVELOPMENT_API_KEY_HERE` with the actual API key obtained from the previous step. ## Configuring the Trigger Client -To set up the Trigger Client for your project, follow these steps: - -1. **Create Configuration File:** - - In your project directory, create a configuration file named `trigger.ts` or `trigger.js`, depending on whether your project uses TypeScript (`.ts`) or JavaScript (`.js`). - -2. **Choose Directory:** - - Create the file within the `src` directory. You can also create it directly in the project root. +Create a file at `/src/trigger.ts` or `/trigger.ts` depending on whether you're using the `src` directory or not. `` represents the root directory of your project. -3. **Add Configuration Code:** +Next, add the following code to the file which creates and exports a new `TriggerClient`: - Open the configuration file you created and add the following code: +```typescript src/trigger.(ts/js) +// trigger.ts (for TypeScript) or trigger.js (for JavaScript) - ```typescript src/trigger.(ts/js) - // trigger.ts (for TypeScript) or trigger.js (for JavaScript) +import { TriggerClient } from "@trigger.dev/sdk"; +import { TRIGGER_API_KEY, TRIGGER_API_URL } from "$env/static/private"; - import { TriggerClient } from "@trigger.dev/sdk"; - import { TRIGGER_API_KEY, TRIGGER_API_URL } from "$env/static/private"; - - export const client = new TriggerClient({ - id: "my-app", - apiKey: TRIGGER_API_KEY, - apiUrl: TRIGGER_API_URL, - }); - ``` - - Replace **"my-app"** with an appropriate identifier for your project. The **apiKey** and **apiUrl** are obtained from the environment variables you set earlier. - -4. **File Location:** - - Example Directory Structure: - - ``` - project-root/ - ├── src/ - ├── trigger.ts - ├── other files... - ``` - - Example Directory Structure where the file is stored in the project root - - ``` - project-root/ - |──src/ - |──other files... - ├── trigger.ts - ├── other files... - ``` +export const client = new TriggerClient({ + id: "my-app", + apiKey: TRIGGER_API_KEY, + apiUrl: TRIGGER_API_URL, +}); +``` -By following these steps, you'll configure the Trigger Client to work with your project, regardless of whether you're using TypeScript or JavaScript files. +Replace **"my-app"** with an appropriate identifier for your project. ## Creating the API Route To establish an API route for interacting with Trigger.dev, follow these steps based on your project's file type and structure -1. Create a new file named `+server.(ts/js)` within the `src/routes/api/trigger` directory. -2. Add the following code to `trigger.(ts/js)`: +Create a new file named `+server.(ts/js)` within the `src/routes/api/trigger` directory, and add the following code: ```typescript import { createSvelteRoute } from "@trigger.dev/sveltekit"; @@ -110,7 +72,7 @@ import { createSvelteRoute } from "@trigger.dev/sveltekit"; import { client } from "$trigger"; // Replace this with your own jobs -import "$jobs/example"; +import "$jobs"; // Create the Svelte route handler using the createSvelteRoute function const svelteRoute = createSvelteRoute(client); @@ -121,8 +83,8 @@ export const POST = svelteRoute.POST; ## Creating the Example Job -1. Create a folder named `Jobs` alongside your `src` directory -2. Inside the `Jobs` folder, add two files named `example.(ts/js)` and `index.(ts/js)`. +1. Create a folder named `jobs` alongside your `src` directory +2. Inside the `jobs` folder, add two files named `example.(ts/js)` and `index.(ts/js)`. @@ -149,23 +111,21 @@ client.defineJob({ ``` ```typescript index.(ts/js) -// import all your job files here - -export * from "./examples"; +// export all your job files here +export * from "./example"; ``` ## Additonal Job Definitions -You can define more job definitions by creating additional files in the `Jobs` folder and exporting them in `index` file. +You can define more job definitions by creating additional files in the `jobs` folder and exporting them in the `src/jobs/index` file. For example, in `index.(ts/js)`, you can export other job files like this: ```typescript -// import all your job files here - -export * from "./examples"; +// export all your job files here +export * from "./example"; export * from "./other-job-file"; ``` From 50b82cb4364aef2674935d5cd24098e61e471c3a Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 13:36:37 +0100 Subject: [PATCH 04/18] Updated zod, and set the svelte/sveltekit package versions to match other packages --- packages/svelte/package.json | 4 ++-- packages/sveltekit/package.json | 2 +- pnpm-lock.yaml | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/svelte/package.json b/packages/svelte/package.json index 2e4a018d48a..bbb01c6dbea 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -1,6 +1,6 @@ { "name": "@trigger.dev/svelte", - "version": "0.0.1", + "version": "2.1.9", "description": "Trigger.dev Svelte SDK", "license": "MIT", "scripts": { @@ -59,6 +59,6 @@ "@trigger.dev/core": "workspace:*", "@trigger.dev/sdk": "workspace:*", "esm-env": "^1.0.0", - "zod": "3.21.4" + "zod": "3.22.3" } } diff --git a/packages/sveltekit/package.json b/packages/sveltekit/package.json index d01c504f184..b6d82e7a01d 100644 --- a/packages/sveltekit/package.json +++ b/packages/sveltekit/package.json @@ -1,6 +1,6 @@ { "name": "@trigger.dev/sveltekit", - "version": "0.0.1", + "version": "2.1.9", "description": "Trigger.dev svelteKit integration", "license": "MIT", "main": "./dist/index.js", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fab5f26c63c..9f80f53bdda 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1017,13 +1017,13 @@ importers: typescript: ^5.0.0 vite: ^4.4.2 vitest: ^0.34.0 - zod: 3.21.4 + zod: 3.22.3 dependencies: '@tanstack/svelte-query': 4.35.7_svelte@4.2.1 '@trigger.dev/core': link:../core '@trigger.dev/sdk': link:../trigger-sdk esm-env: 1.0.0 - zod: 3.21.4 + zod: 3.22.3 devDependencies: '@sveltejs/adapter-auto': 2.1.0_@sveltejs+kit@1.25.1 '@sveltejs/kit': 1.25.1_svelte@4.2.1+vite@4.4.9 From 7dcb5f14d5c82b12652be9b5f1cbb7a9fdb73b1e Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 13:45:48 +0100 Subject: [PATCH 05/18] Added the headers to the response from the SvelteKit api/trigger route --- packages/sveltekit/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/sveltekit/src/index.ts b/packages/sveltekit/src/index.ts index 6450f015bab..f832d92f7e0 100644 --- a/packages/sveltekit/src/index.ts +++ b/packages/sveltekit/src/index.ts @@ -12,7 +12,7 @@ export function createSvelteRoute(client: TriggerClient) { return json({ error: "Resource not found" }, { status: 404 }); } - return json(response.body, { status: response.status }); + return json(response.body, { status: response.status, headers: response.headers }); }; return { POST }; } From e5b44bb48149859ef31f2ee4d6ce7e2ba2ff759a Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 13:46:50 +0100 Subject: [PATCH 06/18] Changeset for Svelte and SvelteKit packages --- .changeset/neat-feet-wait.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .changeset/neat-feet-wait.md diff --git a/.changeset/neat-feet-wait.md b/.changeset/neat-feet-wait.md new file mode 100644 index 00000000000..9fe518a8ea3 --- /dev/null +++ b/.changeset/neat-feet-wait.md @@ -0,0 +1,7 @@ +--- +"@trigger.dev/sveltekit": patch +"@trigger.dev/svelte": patch +"@trigger.dev/core": patch +--- + +SvelteKit adaptor and Svelte package From d2fc4ab9fe51b009ad054c617e79ad9ec9a292e5 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 13:54:59 +0100 Subject: [PATCH 07/18] Revert change to rawBody --- packages/core/src/schemas/api.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/schemas/api.ts b/packages/core/src/schemas/api.ts index 58342a9b089..ac9828e7a8f 100644 --- a/packages/core/src/schemas/api.ts +++ b/packages/core/src/schemas/api.ts @@ -140,7 +140,7 @@ export const HttpSourceRequestSchema = z.object({ url: z.string().url(), method: z.string(), headers: z.record(z.string()), - rawBody: z.instanceof(Uint8Array).optional().nullable(), + rawBody: z.instanceof(Buffer).optional().nullable(), }); export type HttpSourceRequest = z.infer; From fb064897db0414659e26598639291294af9a2f56 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 13:55:32 +0100 Subject: [PATCH 08/18] Remove core from changeset packages --- .changeset/neat-feet-wait.md | 1 - 1 file changed, 1 deletion(-) diff --git a/.changeset/neat-feet-wait.md b/.changeset/neat-feet-wait.md index 9fe518a8ea3..aa1b33dacef 100644 --- a/.changeset/neat-feet-wait.md +++ b/.changeset/neat-feet-wait.md @@ -1,7 +1,6 @@ --- "@trigger.dev/sveltekit": patch "@trigger.dev/svelte": patch -"@trigger.dev/core": patch --- SvelteKit adaptor and Svelte package From 90456cc4fbabb20572d8f9b1288080495cc9fe01 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 13:52:14 +0100 Subject: [PATCH 09/18] Delete svelte .npmrc file --- packages/svelte/.npmrc | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 packages/svelte/.npmrc diff --git a/packages/svelte/.npmrc b/packages/svelte/.npmrc deleted file mode 100644 index 0c05da457e4..00000000000 --- a/packages/svelte/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -engine-strict=true -resolution-mode=highest From 2735ba5407807f91b53fbe9a2b0174814db95bba Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 14:54:11 +0100 Subject: [PATCH 10/18] Build svelte package to build, not build/lib --- packages/svelte/package.json | 14 +++++++------- pnpm-lock.yaml | 9 ++++----- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/packages/svelte/package.json b/packages/svelte/package.json index bbb01c6dbea..fa8508e2345 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -5,7 +5,7 @@ "license": "MIT", "scripts": { "dev": "vite dev", - "build": "svelte-package --input ./src --output ./build/lib", + "build": "svelte-package --input ./src --output ./build", "preview": "vite preview", "package": "svelte-kit sync && svelte-package && publint", "prepublishOnly": "npm run package", @@ -16,14 +16,14 @@ "format": "prettier --plugin-search-dir . --write ." }, "type": "module", - "types": "build/lib/index.d.ts", - "module": "build/lib/index.js", + "types": "build/index.d.ts", + "module": "build/index.js", "exports": { ".": { - "types": "./build/lib/index.d.ts", - "import": "./build/lib/index.js", - "svelte": "./build/lib/index.js", - "default": "./build/lib/index.js" + "types": "./build/index.d.ts", + "import": "./build/index.js", + "svelte": "./build/index.js", + "default": "./build/index.js" }, "./package.json": "./package.json" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9f80f53bdda..5010b013954 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15754,7 +15754,7 @@ packages: /axios/0.26.1: resolution: {integrity: sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==} dependencies: - follow-redirects: 1.15.2 + follow-redirects: 1.15.2_debug@4.3.2 transitivePeerDependencies: - debug dev: false @@ -15762,7 +15762,7 @@ packages: /axios/0.27.2: resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} dependencies: - follow-redirects: 1.15.2 + follow-redirects: 1.15.2_debug@4.3.2 form-data: 4.0.0 transitivePeerDependencies: - debug @@ -15770,7 +15770,7 @@ packages: /axios/1.4.0: resolution: {integrity: sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==} dependencies: - follow-redirects: 1.15.2 + follow-redirects: 1.15.2_debug@4.3.2 form-data: 4.0.0 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -17570,7 +17570,6 @@ packages: optional: true dependencies: ms: 2.1.2 - dev: false /debug/4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} @@ -20542,6 +20541,7 @@ packages: peerDependenciesMeta: debug: optional: true + dev: false /follow-redirects/1.15.2_debug@4.3.2: resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} @@ -20553,7 +20553,6 @@ packages: optional: true dependencies: debug: 4.3.2 - dev: false /for-each/0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} From 50ae6ac41d5cefa1d39cc49bf6f1c4d6cca302fa Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 15:02:07 +0100 Subject: [PATCH 11/18] Made the snapshot instructions easier to copy --- CHANGESETS.md | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/CHANGESETS.md b/CHANGESETS.md index 9565e908ce9..dab130bc8bc 100644 --- a/CHANGESETS.md +++ b/CHANGESETS.md @@ -32,7 +32,26 @@ Please follow the best-practice of adding changesets in the same commit as the c !MAKE SURE TO UPDATE THE TAG IN THE INSTRUCTIONS BELOW! -1. Add changesets as usual `pnpm run changeset:add` -2. Create a snapshot version (replace "dev" with your tag) `pnpm exec changeset version --snapshot dev` -3. Build the packages: `pnpm run build --filter "@trigger.dev/*"` -4. Publish the snapshot (replace "dev" with your tag) `pnpm exec changeset publish --no-git-tag --snapshot --tag dev` +1. Add changesets as usual + +```sh +pnpm run changeset:add +``` + +2. Create a snapshot version (replace "prerelease" with your tag) + +```sh +pnpm exec changeset version --snapshot prerelease +``` + +3. Build the packages: + +```sh +pnpm run build --filter "@trigger.dev/*" +``` + +4. Publish the snapshot (replace "dev" with your tag) + +```sh +pnpm exec changeset publish --no-git-tag --snapshot --tag prerelease +``` From caf629c6644da87db54c7ccdf8befd834521b7d2 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 16:00:31 +0100 Subject: [PATCH 12/18] Delete the svelte package --- .changeset/neat-feet-wait.md | 1 - packages/svelte/.eslintignore | 13 ----- packages/svelte/.eslintrc.cjs | 30 ---------- packages/svelte/.gitignore | 11 ---- packages/svelte/.prettierignore | 13 ----- packages/svelte/.prettierrc | 9 --- packages/svelte/README.md | 58 -------------------- packages/svelte/package.json | 64 ---------------------- packages/svelte/src/TriggerProvider.svelte | 55 ------------------- packages/svelte/src/app.html | 12 ---- packages/svelte/src/events.ts | 63 --------------------- packages/svelte/src/fetch.ts | 32 ----------- packages/svelte/src/index.ts | 3 - packages/svelte/src/providerContext.ts | 17 ------ packages/svelte/src/runs.ts | 54 ------------------ packages/svelte/svelte.config.js | 18 ------ packages/svelte/tsconfig.json | 22 -------- packages/svelte/vite.config.ts | 9 --- 18 files changed, 484 deletions(-) delete mode 100644 packages/svelte/.eslintignore delete mode 100644 packages/svelte/.eslintrc.cjs delete mode 100644 packages/svelte/.gitignore delete mode 100644 packages/svelte/.prettierignore delete mode 100644 packages/svelte/.prettierrc delete mode 100644 packages/svelte/README.md delete mode 100644 packages/svelte/package.json delete mode 100644 packages/svelte/src/TriggerProvider.svelte delete mode 100644 packages/svelte/src/app.html delete mode 100644 packages/svelte/src/events.ts delete mode 100644 packages/svelte/src/fetch.ts delete mode 100644 packages/svelte/src/index.ts delete mode 100644 packages/svelte/src/providerContext.ts delete mode 100644 packages/svelte/src/runs.ts delete mode 100644 packages/svelte/svelte.config.js delete mode 100644 packages/svelte/tsconfig.json delete mode 100644 packages/svelte/vite.config.ts diff --git a/.changeset/neat-feet-wait.md b/.changeset/neat-feet-wait.md index aa1b33dacef..39ce373282c 100644 --- a/.changeset/neat-feet-wait.md +++ b/.changeset/neat-feet-wait.md @@ -1,6 +1,5 @@ --- "@trigger.dev/sveltekit": patch -"@trigger.dev/svelte": patch --- SvelteKit adaptor and Svelte package diff --git a/packages/svelte/.eslintignore b/packages/svelte/.eslintignore deleted file mode 100644 index 38972655faf..00000000000 --- a/packages/svelte/.eslintignore +++ /dev/null @@ -1,13 +0,0 @@ -.DS_Store -node_modules -/build -/.svelte-kit -/package -.env -.env.* -!.env.example - -# Ignore files for PNPM, NPM and YARN -pnpm-lock.yaml -package-lock.json -yarn.lock diff --git a/packages/svelte/.eslintrc.cjs b/packages/svelte/.eslintrc.cjs deleted file mode 100644 index ebc19589fa5..00000000000 --- a/packages/svelte/.eslintrc.cjs +++ /dev/null @@ -1,30 +0,0 @@ -module.exports = { - root: true, - extends: [ - 'eslint:recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:svelte/recommended', - 'prettier' - ], - parser: '@typescript-eslint/parser', - plugins: ['@typescript-eslint'], - parserOptions: { - sourceType: 'module', - ecmaVersion: 2020, - extraFileExtensions: ['.svelte'] - }, - env: { - browser: true, - es2017: true, - node: true - }, - overrides: [ - { - files: ['*.svelte'], - parser: 'svelte-eslint-parser', - parserOptions: { - parser: '@typescript-eslint/parser' - } - } - ] -}; diff --git a/packages/svelte/.gitignore b/packages/svelte/.gitignore deleted file mode 100644 index ac7211b4033..00000000000 --- a/packages/svelte/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -.DS_Store -node_modules -/build -/dist -/.svelte-kit -/package -.env -.env.* -!.env.example -vite.config.js.timestamp-* -vite.config.ts.timestamp-* diff --git a/packages/svelte/.prettierignore b/packages/svelte/.prettierignore deleted file mode 100644 index 38972655faf..00000000000 --- a/packages/svelte/.prettierignore +++ /dev/null @@ -1,13 +0,0 @@ -.DS_Store -node_modules -/build -/.svelte-kit -/package -.env -.env.* -!.env.example - -# Ignore files for PNPM, NPM and YARN -pnpm-lock.yaml -package-lock.json -yarn.lock diff --git a/packages/svelte/.prettierrc b/packages/svelte/.prettierrc deleted file mode 100644 index a77fddea909..00000000000 --- a/packages/svelte/.prettierrc +++ /dev/null @@ -1,9 +0,0 @@ -{ - "useTabs": true, - "singleQuote": true, - "trailingComma": "none", - "printWidth": 100, - "plugins": ["prettier-plugin-svelte"], - "pluginSearchDirs": ["."], - "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] -} diff --git a/packages/svelte/README.md b/packages/svelte/README.md deleted file mode 100644 index 4fee31f6f8e..00000000000 --- a/packages/svelte/README.md +++ /dev/null @@ -1,58 +0,0 @@ -# create-svelte - -Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte). - -Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging). - -## Creating a project - -If you're seeing this, you've probably already done this step. Congrats! - -```bash -# create a new project in the current directory -npm create svelte@latest - -# create a new project in my-app -npm create svelte@latest my-app -``` - -## Developing - -Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server: - -```bash -npm run dev - -# or start the server and open the app in a new browser tab -npm run dev -- --open -``` - -Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app. - -## Building - -To build your library: - -```bash -npm run package -``` - -To create a production version of your showcase app: - -```bash -npm run build -``` - -You can preview the production build with `npm run preview`. - -> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment. - -## Publishing - -Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)). - -To publish your library to [npm](https://www.npmjs.com): - -```bash -npm publish -``` diff --git a/packages/svelte/package.json b/packages/svelte/package.json deleted file mode 100644 index fa8508e2345..00000000000 --- a/packages/svelte/package.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "name": "@trigger.dev/svelte", - "version": "2.1.9", - "description": "Trigger.dev Svelte SDK", - "license": "MIT", - "scripts": { - "dev": "vite dev", - "build": "svelte-package --input ./src --output ./build", - "preview": "vite preview", - "package": "svelte-kit sync && svelte-package && publint", - "prepublishOnly": "npm run package", - "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", - "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", - "test": "vitest", - "lint": "prettier --plugin-search-dir . --check . && eslint .", - "format": "prettier --plugin-search-dir . --write ." - }, - "type": "module", - "types": "build/index.d.ts", - "module": "build/index.js", - "exports": { - ".": { - "types": "./build/index.d.ts", - "import": "./build/index.js", - "svelte": "./build/index.js", - "default": "./build/index.js" - }, - "./package.json": "./package.json" - }, - "files": [ - "dist", - "!dist/**/*.test.*", - "!dist/**/*.spec.*" - ], - "peerDependencies": { - "svelte": "^4.0.0" - }, - "devDependencies": { - "@sveltejs/adapter-auto": "^2.0.0", - "@sveltejs/kit": "^1.20.4", - "@sveltejs/package": "^2.0.0", - "@typescript-eslint/eslint-plugin": "^5.45.0", - "@typescript-eslint/parser": "^5.45.0", - "eslint": "^8.28.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-svelte": "^2.30.0", - "prettier": "^2.8.0", - "prettier-plugin-svelte": "^2.10.1", - "publint": "^0.1.9", - "svelte": "^4.0.5", - "svelte-check": "^3.4.3", - "tslib": "^2.4.1", - "typescript": "^5.0.0", - "vite": "^4.4.2", - "vitest": "^0.34.0" - }, - "dependencies": { - "@tanstack/svelte-query": "^4.33.0", - "@trigger.dev/core": "workspace:*", - "@trigger.dev/sdk": "workspace:*", - "esm-env": "^1.0.0", - "zod": "3.22.3" - } -} diff --git a/packages/svelte/src/TriggerProvider.svelte b/packages/svelte/src/TriggerProvider.svelte deleted file mode 100644 index 98ab8ba4ed8..00000000000 --- a/packages/svelte/src/TriggerProvider.svelte +++ /dev/null @@ -1,55 +0,0 @@ - - -
- - - -
diff --git a/packages/svelte/src/app.html b/packages/svelte/src/app.html deleted file mode 100644 index effe0d0d266..00000000000 --- a/packages/svelte/src/app.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - %sveltekit.head% - - -
%sveltekit.body%
- - diff --git a/packages/svelte/src/events.ts b/packages/svelte/src/events.ts deleted file mode 100644 index 4767da0a080..00000000000 --- a/packages/svelte/src/events.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { createQuery, type CreateQueryResult } from '@tanstack/svelte-query'; -import { GetEventSchema, type GetEvent } from '@trigger.dev/core'; -import { getTriggerContext } from './providerContext.js'; -import { zodfetch } from './fetch.js'; -import { runResolvedStatuses } from './runs.js'; - -const defaultRefreshInterval = 1000; - -export type UseEventDetailsResult = CreateQueryResult; -export function useEventDetails(eventId: string | undefined): UseEventDetailsResult { - const { apiUrl, publicApiKey } = getTriggerContext(); - - return createQuery({ - queryKey: [`triggerdotdev-event-${eventId}`], - queryFn: async () => { - return await zodfetch(GetEventSchema, `${apiUrl}/api/v1/events/${eventId}`, { - method: 'GET', - headers: { - Authorization: `Bearer ${publicApiKey}` - } - }); - }, - refetchInterval: (data) => { - if ( - data && - data.runs.length > 0 && - data.runs.every((r) => runResolvedStatuses.includes(r.status)) - ) { - return false; - } - - return defaultRefreshInterval; - }, - enabled: !!eventId - }); -} - -//we cannot call useRunDetails inside the subscription, because it would be called outside component initialization, we will have to do it inside the svelte component itself -//I'm still looking for better ways of doing this. - -// export function useEventRunDetails( -// eventId: string | undefined, -// options?: RunDetailOptions -// ): RunDetailsResult | undefined { -// const event = useEventDetails(eventId); -// let result: RunDetailsResult | undefined; -// const subscribedEvent = event.subscribe((event) => { -// if (event.data) { -// console.log('event: ', event.data?.id); -// const runs = useRunDetails(event.data?.runs[0].id, options); -// runs.subscribe((runs) => { -// console.log('runs: ', runs); -// result = runs; -// }); -// } -// }); - -// onDestroy(() => { -// subscribedEvent(); -// }); - -// return result; -// } diff --git a/packages/svelte/src/fetch.ts b/packages/svelte/src/fetch.ts deleted file mode 100644 index cf82ecc17ab..00000000000 --- a/packages/svelte/src/fetch.ts +++ /dev/null @@ -1,32 +0,0 @@ -import type { z } from 'zod'; - -// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-constraint -export async function zodfetch( - schema: z.Schema, - url: string, - requestInit?: RequestInit -): Promise { - const response = await fetch(url, requestInit); - - if ((!requestInit || requestInit.method === 'GET') && response.status === 404) { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - return; - } - - //todo improve error handling - - if (response.status >= 400 && response.status < 500) { - const body = await response.json(); - - throw new Error(body.error); - } - - if (response.status !== 200) { - throw new Error(`Failed to fetch ${url}, got status code ${response.status}`); - } - - const jsonBody = await response.json(); - - return schema.parse(jsonBody); -} diff --git a/packages/svelte/src/index.ts b/packages/svelte/src/index.ts deleted file mode 100644 index 904ec0a810e..00000000000 --- a/packages/svelte/src/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './events.js' -export * from './runs.js' -export { default as TriggerProvider } from './TriggerProvider.svelte'; \ No newline at end of file diff --git a/packages/svelte/src/providerContext.ts b/packages/svelte/src/providerContext.ts deleted file mode 100644 index fe94d03d944..00000000000 --- a/packages/svelte/src/providerContext.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { getContext, setContext } from 'svelte'; - - -type TriggerContext = { - publicApiKey: string; - apiUrl?: string; -}; -const triggerContextKey = "$$_TriggerContext" - - -export function setTriggerContext(context: TriggerContext) { - setContext(triggerContextKey, context); -} - -export function getTriggerContext(): TriggerContext { - return getContext(triggerContextKey); -} diff --git a/packages/svelte/src/runs.ts b/packages/svelte/src/runs.ts deleted file mode 100644 index b1025833126..00000000000 --- a/packages/svelte/src/runs.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { createQuery, type CreateQueryResult } from '@tanstack/svelte-query'; -import { - GetRunSchema, - urlWithSearchParams, - type GetRun, - type GetRunOptions -} from '@trigger.dev/core'; -import { getTriggerContext } from './providerContext.js'; -import { zodfetch } from './fetch.js'; - -export const runResolvedStatuses = ['SUCCESS', 'FAILURE', 'CANCELED', 'TIMED_OUT', 'ABORTED']; - -const defaultRefreshInterval = 1000; - -export type RunDetailOptions = GetRunOptions & { - /** How often you want to refresh, the default is 1000. Min is 500 */ - refreshIntervalMs?: number; -}; - -export type UseRunDetailsResult = CreateQueryResult; - -export function useRunDetails( - runId: string | undefined, - options?: RunDetailOptions -): UseRunDetailsResult { - const { apiUrl, publicApiKey } = getTriggerContext(); - - const { refreshIntervalMs: refreshInterval, ...otherOptions } = options || {}; - - const url = urlWithSearchParams(`${apiUrl}/api/v1/runs/${runId}`, otherOptions); - - return createQuery({ - queryKey: [`triggerdotdev-run-${runId}`], - queryFn: async () => { - return await zodfetch(GetRunSchema, url, { - method: 'GET', - headers: { - Authorization: `Bearer ${publicApiKey}` - } - }); - }, - enabled: !!runId, - refetchInterval: (data) => { - if (data?.status && runResolvedStatuses.includes(data.status)) { - return false; - } - if (refreshInterval !== undefined) { - return Math.max(refreshInterval, 500); - } - - return defaultRefreshInterval; - } - }); -} diff --git a/packages/svelte/svelte.config.js b/packages/svelte/svelte.config.js deleted file mode 100644 index 9002d78ab4a..00000000000 --- a/packages/svelte/svelte.config.js +++ /dev/null @@ -1,18 +0,0 @@ -import adapter from '@sveltejs/adapter-auto'; -import { vitePreprocess } from '@sveltejs/kit/vite'; - -/** @type {import('@sveltejs/kit').Config} */ -const config = { - // Consult https://kit.svelte.dev/docs/integrations#preprocessors - // for more information about preprocessors - preprocess: vitePreprocess(), - - kit: { - // adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list. - // If your environment is not supported or you settled on a specific environment, switch out the adapter. - // See https://kit.svelte.dev/docs/adapters for more information about adapters. - adapter: adapter(), - } -}; - -export default config; diff --git a/packages/svelte/tsconfig.json b/packages/svelte/tsconfig.json deleted file mode 100644 index c7ed965f1a2..00000000000 --- a/packages/svelte/tsconfig.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "extends": "./.svelte-kit/tsconfig.json", - "compilerOptions": { - "allowJs": true, - "checkJs": true, - "esModuleInterop": true, - "forceConsistentCasingInFileNames": true, - "resolveJsonModule": true, - "skipLibCheck": true, - "sourceMap": true, - "strict": true, - "moduleResolution": "Node", - "ignoreDeprecations": "5.0", - "paths": { - "@trigger.dev/core": ["../core/src/index"], - "@trigger.dev/core/*": ["../core/src/*"], - "@trigger.dev/sdk": ["../trigger-sdk/src/index"], - "@trigger.dev/sdk/*": ["../trigger-sdk/src/*"] - } - }, - "exclude": ["node_modules"] -} diff --git a/packages/svelte/vite.config.ts b/packages/svelte/vite.config.ts deleted file mode 100644 index 37b6a84bc3c..00000000000 --- a/packages/svelte/vite.config.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { sveltekit } from '@sveltejs/kit/vite'; -import { defineConfig } from 'vitest/config'; - -export default defineConfig({ - plugins: [sveltekit()], - test: { - include: ['src/**/*.{test,spec}.{js,ts}'] - } -}); From 67d0d7122571369ac33ac41857a0261ce5b8d970 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 16:04:15 +0100 Subject: [PATCH 13/18] Latest lockfile --- pnpm-lock.yaml | 144 ++++--------------------------------------------- 1 file changed, 10 insertions(+), 134 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5010b013954..12531561d7e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -994,55 +994,6 @@ importers: tsx: 3.12.2 typescript: 4.9.5 - packages/svelte: - specifiers: - '@sveltejs/adapter-auto': ^2.0.0 - '@sveltejs/kit': ^1.20.4 - '@sveltejs/package': ^2.0.0 - '@tanstack/svelte-query': ^4.33.0 - '@trigger.dev/core': workspace:* - '@trigger.dev/sdk': workspace:* - '@typescript-eslint/eslint-plugin': ^5.45.0 - '@typescript-eslint/parser': ^5.45.0 - eslint: ^8.28.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-svelte: ^2.30.0 - esm-env: ^1.0.0 - prettier: ^2.8.0 - prettier-plugin-svelte: ^2.10.1 - publint: ^0.1.9 - svelte: ^4.0.5 - svelte-check: ^3.4.3 - tslib: ^2.4.1 - typescript: ^5.0.0 - vite: ^4.4.2 - vitest: ^0.34.0 - zod: 3.22.3 - dependencies: - '@tanstack/svelte-query': 4.35.7_svelte@4.2.1 - '@trigger.dev/core': link:../core - '@trigger.dev/sdk': link:../trigger-sdk - esm-env: 1.0.0 - zod: 3.22.3 - devDependencies: - '@sveltejs/adapter-auto': 2.1.0_@sveltejs+kit@1.25.1 - '@sveltejs/kit': 1.25.1_svelte@4.2.1+vite@4.4.9 - '@sveltejs/package': 2.2.2_ihwjmfflvgyqta4xkfhaggvtwe - '@typescript-eslint/eslint-plugin': 5.59.6_ltg3s7zeaq5lfn26f6cgiedibm - '@typescript-eslint/parser': 5.59.6_ox3na7ge7wjdarbyztnclevxam - eslint: 8.45.0 - eslint-config-prettier: 8.6.0_eslint@8.45.0 - eslint-plugin-svelte: 2.34.0_eslint@8.45.0+svelte@4.2.1 - prettier: 2.8.8 - prettier-plugin-svelte: 2.10.1_hfafeyo6vw33o2ufgpsfnrywzu - publint: 0.1.16 - svelte: 4.2.1 - svelte-check: 3.5.2_svelte@4.2.1 - tslib: 2.6.2 - typescript: 5.2.2 - vite: 4.4.9 - vitest: 0.34.4 - packages/sveltekit: specifiers: '@sveltejs/kit': ^1.20.4 @@ -12818,23 +12769,6 @@ packages: - supports-color dev: true - /@sveltejs/package/2.2.2_ihwjmfflvgyqta4xkfhaggvtwe: - resolution: {integrity: sha512-rP3sVv6cAntcdcG4r4KspLU6nZYYUrHJBAX3Arrw0KJFdgxtlsi2iDwN0Jwr/vIkgjcU0ZPWM8kkT5kpZDlWAw==} - engines: {node: ^16.14 || >=18} - hasBin: true - peerDependencies: - svelte: ^3.44.0 || ^4.0.0 - dependencies: - chokidar: 3.5.3 - kleur: 4.1.5 - sade: 1.8.1 - semver: 7.5.4 - svelte: 4.2.1 - svelte2tsx: 0.6.22_ihwjmfflvgyqta4xkfhaggvtwe - transitivePeerDependencies: - - typescript - dev: true - /@sveltejs/vite-plugin-svelte-inspector/1.0.4_25hzhjyralpt5lwm3sm7wb3ghq: resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==} engines: {node: ^14.18.0 || >= 16} @@ -13078,10 +13012,6 @@ packages: tailwindcss: 3.3.2_ts-node@10.9.1 dev: true - /@tanstack/query-core/4.35.7: - resolution: {integrity: sha512-PgDJtX75ubFS0WCYFM7DqEoJ4QbxU3S5OH3gJSI40xr7UVVax3/J4CM3XUMOTs+EOT5YGEfssi3tfRVGte4DEw==} - dev: false - /@tanstack/query-core/5.0.0-beta.0: resolution: {integrity: sha512-VGq/H3PuRoj0shOcg1S5Flv3YD2qNz2ttk8w5xe5AHQE1I8NO9EHSBUxezIpk4dD6M7bQDtwHBMqqU2EwMwyUw==} dev: false @@ -13103,15 +13033,6 @@ packages: react: 18.2.0 dev: false - /@tanstack/svelte-query/4.35.7_svelte@4.2.1: - resolution: {integrity: sha512-YQ9NbAn2F6f5J765iLqVFIcL3XsGHByckMQICaYgNLKY0PTlWeMl0rjG7GwPX9wymUhn8KQuXdyqsUyLlRjHJQ==} - peerDependencies: - svelte: '>=3 <5' - dependencies: - '@tanstack/query-core': 4.35.7 - svelte: 4.2.1 - dev: false - /@team-plain/typescript-sdk/2.2.0: resolution: {integrity: sha512-ZNRZJ1uhQYHqaAKNAMdcSvULxutDQldocJWEDxJ5CJX4QYyzD8adK7gB9szKQDsxHFA3sZgTjtSruFBOf+C2fw==} dependencies: @@ -13500,6 +13421,7 @@ packages: /@types/estree/1.0.2: resolution: {integrity: sha512-VeiPZ9MMwXjO32/Xu7+OwflfmeoRwkE/qzndw42gGtgJwZopBnzy2gD//NN1+go1mADzkDcqf/KnFRSjTJ8xJA==} + dev: true /@types/express-serve-static-core/4.17.32: resolution: {integrity: sha512-aI5h/VOkxOF2Z1saPy0Zsxs5avets/iaiAJYznQFm5By/pamU31xWKL//epiF4OfUA2qTOc9PV6tCUjhO8wlZA==} @@ -15402,6 +15324,7 @@ packages: resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} dependencies: dequal: 2.0.3 + dev: true /arr-diff/1.1.0: resolution: {integrity: sha512-OQwDZUqYaQwyyhDJHThmzId8daf4/RFNLaeh3AevmSeZ5Y7ug4Ga/yKc6l6kTZOBW781rCj103ZuTh8GAsB3+Q==} @@ -15786,6 +15709,7 @@ packages: resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} dependencies: dequal: 2.0.3 + dev: true /b4a/1.6.4: resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} @@ -16886,6 +16810,7 @@ packages: acorn: 8.10.0 estree-walker: 3.0.3 periscopic: 3.1.0 + dev: true /codemirror/6.0.1: resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==} @@ -17364,6 +17289,7 @@ packages: dependencies: mdn-data: 2.0.30 source-map-js: 1.0.2 + dev: true /css-unit-converter/1.1.2: resolution: {integrity: sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==} @@ -17640,10 +17566,6 @@ packages: dependencies: mimic-response: 3.1.0 - /dedent-js/1.0.1: - resolution: {integrity: sha512-OUepMozQULMLUmhxS95Vudo0jb0UchLimi3+pQ2plj61Fcy8axbP9hbiD4Sz6DPqn6XG3kfmziVfQ1rSys5AJQ==} - dev: true - /dedent/0.7.0: resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} dev: true @@ -19815,6 +19737,7 @@ packages: /esm-env/1.0.0: resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} + dev: true /espree/9.4.1: resolution: {integrity: sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==} @@ -21830,13 +21753,6 @@ packages: resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==} dev: true - /ignore-walk/5.0.1: - resolution: {integrity: sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - dependencies: - minimatch: 5.1.2 - dev: true - /ignore-walk/6.0.3: resolution: {integrity: sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -22392,6 +22308,7 @@ packages: resolution: {integrity: sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w==} dependencies: '@types/estree': 1.0.0 + dev: true /is-regex/1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} @@ -23671,6 +23588,7 @@ packages: /locate-character/3.0.0: resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} + dev: true /locate-path/3.0.0: resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} @@ -24203,6 +24121,7 @@ packages: /mdn-data/2.0.30: resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + dev: true /mdurl/1.0.1: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} @@ -25434,13 +25353,6 @@ packages: engines: {node: '>=14.16'} dev: false - /npm-bundled/2.0.1: - resolution: {integrity: sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - dependencies: - npm-normalize-package-bin: 2.0.0 - dev: true - /npm-bundled/3.0.0: resolution: {integrity: sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -25496,11 +25408,6 @@ packages: semver: 7.5.4 dev: false - /npm-normalize-package-bin/2.0.0: - resolution: {integrity: sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - dev: true - /npm-normalize-package-bin/3.0.1: resolution: {integrity: sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -25516,17 +25423,6 @@ packages: validate-npm-package-name: 5.0.0 dev: false - /npm-packlist/5.1.3: - resolution: {integrity: sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - hasBin: true - dependencies: - glob: 8.1.0 - ignore-walk: 5.0.1 - npm-bundled: 2.0.1 - npm-normalize-package-bin: 2.0.0 - dev: true - /npm-packlist/7.0.4: resolution: {integrity: sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -26339,6 +26235,7 @@ packages: '@types/estree': 1.0.0 estree-walker: 3.0.3 is-reference: 3.0.1 + dev: true /pg-connection-string/2.5.0: resolution: {integrity: sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==} @@ -27308,16 +27205,6 @@ packages: resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} dev: true - /publint/0.1.16: - resolution: {integrity: sha512-wJgk7HnXDT5Ap0DjFYbGz78kPkN44iQvDiaq8P63IEEyNU9mYXvaMd2cAyIM6OgqXM/IA3CK6XWIsRq+wjNpgw==} - engines: {node: '>=16'} - hasBin: true - dependencies: - npm-packlist: 5.1.3 - picocolors: 1.0.0 - sade: 1.8.1 - dev: true - /pump/2.0.1: resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==} dependencies: @@ -29954,17 +29841,6 @@ packages: locate-character: 3.0.0 magic-string: 0.30.3 periscopic: 3.1.0 - - /svelte2tsx/0.6.22_ihwjmfflvgyqta4xkfhaggvtwe: - resolution: {integrity: sha512-eFCfz0juaWeanbwGeQV21kPMwH3LKhfrUYRy1PqRmlieuHvJs8VeK7CaoHJdpBZWCXba2cltHVdywJmwOGhbww==} - peerDependencies: - svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 - typescript: ^4.9.4 || ^5.0.0 - dependencies: - dedent-js: 1.0.1 - pascal-case: 3.1.2 - svelte: 4.2.1 - typescript: 5.2.2 dev: true /symbol-observable/4.0.0: From 30adfe5ecdbf8080946058fec7df8b6eee218153 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 16:24:30 +0100 Subject: [PATCH 14/18] Updated the SvelteKit docs --- docs/_snippets/manual-setup-sveltekit.mdx | 25 +++++++++++++++-------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/docs/_snippets/manual-setup-sveltekit.mdx b/docs/_snippets/manual-setup-sveltekit.mdx index b68887da32a..60764ea97b1 100644 --- a/docs/_snippets/manual-setup-sveltekit.mdx +++ b/docs/_snippets/manual-setup-sveltekit.mdx @@ -39,6 +39,14 @@ TRIGGER_API_URL=https://api.trigger.dev # this is only necessary if you are self Replace `ENTER_YOUR_DEVELOPMENT_API_KEY_HERE` with the actual API key obtained from the previous step. +## Syncing Environment Variable types (TypeScript) + +You will have type errors for your environment variables unless you run this command: + +```sh +npx svelte-kit sync +``` + ## Configuring the Trigger Client Create a file at `/src/trigger.ts` or `/trigger.ts` depending on whether you're using the `src` directory or not. `` represents the root directory of your project. @@ -68,11 +76,10 @@ Create a new file named `+server.(ts/js)` within the `src/routes/api/trigger` di ```typescript import { createSvelteRoute } from "@trigger.dev/sveltekit"; +import { client } from "../../../trigger"; -import { client } from "$trigger"; - -// Replace this with your own jobs -import "$jobs"; +//import all jobs +import "../../../jobs"; // Create the Svelte route handler using the createSvelteRoute function const svelteRoute = createSvelteRoute(client); @@ -90,7 +97,7 @@ export const POST = svelteRoute.POST; ```typescript src/jobs/example.(ts/js) import { eventTrigger } from "@trigger.dev/sdk"; -import { client } from "$trigger"; +import { client } from "../trigger"; // your first job client.defineJob({ @@ -110,7 +117,7 @@ client.defineJob({ }); ``` -```typescript index.(ts/js) +```typescript src/jobs/index.(ts/js) // export all your job files here export * from "./example"; ``` @@ -185,15 +192,15 @@ In a **_separate terminal window or tab_** run: ```bash npm -npx @trigger.dev/cli@latest dev +npx @trigger.dev/cli@latest dev --port 5173 ``` ```bash pnpm -pnpm dlx @trigger.dev/cli@latest dev +pnpm dlx @trigger.dev/cli@latest dev --port 5173 ``` ```bash yarn -yarn dlx @trigger.dev/cli@latest dev +yarn dlx @trigger.dev/cli@latest dev --port 5173 ``` From db5bbc45521fa4ca70fa4144c3277b9e12d8bea4 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 16:39:44 +0100 Subject: [PATCH 15/18] Attempt to get Svelte to import the package --- packages/sveltekit/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/sveltekit/package.json b/packages/sveltekit/package.json index b6d82e7a01d..ed6490b7588 100644 --- a/packages/sveltekit/package.json +++ b/packages/sveltekit/package.json @@ -5,7 +5,7 @@ "license": "MIT", "main": "./dist/index.js", "types": "./dist/index.d.ts", - "type": "module", + "type": "commonjs", "publishConfig": { "access": "public" }, From 483708617f79312aa1e86428573c4aec26b6d050 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 16:54:47 +0100 Subject: [PATCH 16/18] Updates for port and host options --- apps/webapp/app/components/SetupCommands.tsx | 20 +++++++++---------- .../route.tsx | 4 ++-- docs/_snippets/manual-setup-sveltekit.mdx | 10 ++++++---- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/apps/webapp/app/components/SetupCommands.tsx b/apps/webapp/app/components/SetupCommands.tsx index 245eeff8bac..f04083c7e21 100644 --- a/apps/webapp/app/components/SetupCommands.tsx +++ b/apps/webapp/app/components/SetupCommands.tsx @@ -44,7 +44,7 @@ export function InitCommand({ appOrigin, apiKey }: { appOrigin: string; apiKey: ); } -export function RunDevCommand() { +export function RunDevCommand({ extra }: { extra?: string }) { return ( @@ -53,19 +53,19 @@ export function RunDevCommand() { yarn - + - + - + ); } -export function TriggerDevCommand() { +export function TriggerDevCommand({ extra }: { extra?: string }) { return ( @@ -77,34 +77,34 @@ export function TriggerDevCommand() { ); } -export function TriggerDevStep() { +export function TriggerDevStep({ extra }: { extra?: string }) { return ( <> In a separate terminal window or tab run: - + If you’re not running on the default you can specify the port by adding{" "} --port 3001 to the end. diff --git a/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.setup.sveltekit/route.tsx b/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.setup.sveltekit/route.tsx index 8ab8fac826a..eb47e5fdfc7 100644 --- a/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.setup.sveltekit/route.tsx +++ b/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.setup.sveltekit/route.tsx @@ -95,11 +95,11 @@ export default function SetUpSveltekit() { - + - + diff --git a/docs/_snippets/manual-setup-sveltekit.mdx b/docs/_snippets/manual-setup-sveltekit.mdx index 60764ea97b1..4380056894f 100644 --- a/docs/_snippets/manual-setup-sveltekit.mdx +++ b/docs/_snippets/manual-setup-sveltekit.mdx @@ -167,20 +167,22 @@ Replace **"my-app"** with the appropriate identifier you used during the step fo ### Run your Sveltekit app -Run your Sveltekit app locally, like you normally would. For example: +Run your Sveltekit app locally. You need to use the `--host` flag to allow the Trigger.dev CLI to connect to your app. + +For example: ```bash npm -npm run dev +npm run dev -- --open --host ``` ```bash pnpm -pnpm run dev +pnpm run dev -- --open --host ``` ```bash yarn -yarn run dev +yarn run dev -- --open --host ``` From 49d63101a83c1ba6e6fac280f92ce4b8dcc38db8 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 17:02:51 +0100 Subject: [PATCH 17/18] Updated lockfile from main --- pnpm-lock.yaml | 769 +++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 683 insertions(+), 86 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8f347a8714c..4287788db70 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -994,6 +994,25 @@ importers: tsx: 3.12.2 typescript: 4.9.5 + packages/sveltekit: + specifiers: + '@sveltejs/kit': ^1.20.4 + '@trigger.dev/tsconfig': workspace:* + '@types/debug': ^4.1.7 + '@types/ws': ^8.5.3 + debug: ^4.3.4 + rimraf: ^3.0.2 + tsup: ^6.5.0 + dependencies: + debug: 4.3.4 + devDependencies: + '@sveltejs/kit': 1.25.1 + '@trigger.dev/tsconfig': link:../../config-packages/tsconfig + '@types/debug': 4.1.7 + '@types/ws': 8.5.4 + rimraf: 3.0.2 + tsup: 6.6.3 + packages/testing: specifiers: '@trigger.dev/core': workspace:* @@ -1424,6 +1443,43 @@ importers: eslint: 8.45.0 typescript: 4.9.5 + references/svelte-example: + specifiers: + '@sveltejs/adapter-auto': ^2.0.0 + '@sveltejs/kit': ^1.20.4 + '@trigger.dev/sdk': workspace:* + '@trigger.dev/sveltekit': workspace:* + '@typescript-eslint/eslint-plugin': ^5.45.0 + '@typescript-eslint/parser': ^5.45.0 + eslint: ^8.28.0 + eslint-config-prettier: ^8.5.0 + eslint-plugin-svelte: ^2.30.0 + prettier: ^2.8.0 + prettier-plugin-svelte: ^2.10.1 + svelte: ^4.0.5 + svelte-check: ^3.4.3 + tslib: ^2.4.1 + typescript: ^5.0.0 + vite: ^4.4.2 + dependencies: + '@trigger.dev/sdk': link:../../packages/trigger-sdk + '@trigger.dev/sveltekit': link:../../packages/sveltekit + devDependencies: + '@sveltejs/adapter-auto': 2.1.0_@sveltejs+kit@1.25.1 + '@sveltejs/kit': 1.25.1_svelte@4.2.1+vite@4.4.9 + '@typescript-eslint/eslint-plugin': 5.59.6_ltg3s7zeaq5lfn26f6cgiedibm + '@typescript-eslint/parser': 5.59.6_ox3na7ge7wjdarbyztnclevxam + eslint: 8.45.0 + eslint-config-prettier: 8.6.0_eslint@8.45.0 + eslint-plugin-svelte: 2.34.0_eslint@8.45.0+svelte@4.2.1 + prettier: 2.8.8 + prettier-plugin-svelte: 2.10.1_hfafeyo6vw33o2ufgpsfnrywzu + svelte: 4.2.1 + svelte-check: 3.5.2_svelte@4.2.1 + tslib: 2.6.2 + typescript: 5.2.2 + vite: 4.4.9 + references/unit-testing: specifiers: '@trigger.dev/sdk': workspace:* @@ -1461,6 +1517,14 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.1.1 '@jridgewell/trace-mapping': 0.3.19 + dev: true + + /@ampproject/remapping/2.2.1: + resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/gen-mapping': 0.3.2 + '@jridgewell/trace-mapping': 0.3.19 /@angular-devkit/core/16.1.8: resolution: {integrity: sha512-dSRD/+bGanArIXkj+kaU1kDFleZeQMzmBiOXX+pK0Ah9/0Yn1VmY3RZh1zcX9vgIQXV+t7UPrTpOjaERMUtVGw==} @@ -1623,7 +1687,7 @@ packages: dset: 3.1.2 is-docker: 3.0.0 is-wsl: 3.0.0 - undici: 5.24.0 + undici: 5.25.4 which-pm-runs: 1.1.0 transitivePeerDependencies: - supports-color @@ -1662,7 +1726,7 @@ packages: resolution: {integrity: sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==} engines: {node: '>=6.9.0'} dependencies: - '@ampproject/remapping': 2.2.0 + '@ampproject/remapping': 2.2.1 '@babel/code-frame': 7.22.13 '@babel/generator': 7.22.15 '@babel/helper-compilation-targets': 7.22.15 @@ -1708,7 +1772,7 @@ packages: resolution: {integrity: sha512-2EENLmhpwplDux5PSsZnSbnSkB3tZ6QTksgO25xwEL7pIDcNOMhF5v/s6RzwjMZzZzw9Ofc30gHv5ChCC8pifQ==} engines: {node: '>=6.9.0'} dependencies: - '@ampproject/remapping': 2.2.0 + '@ampproject/remapping': 2.2.1 '@babel/code-frame': 7.22.13 '@babel/generator': 7.22.15 '@babel/helper-compilation-targets': 7.22.15 @@ -6945,6 +7009,10 @@ packages: fast-uri: 2.2.0 dev: true + /@fastify/busboy/2.0.0: + resolution: {integrity: sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==} + engines: {node: '>=14'} + /@fastify/deepmerge/1.3.0: resolution: {integrity: sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==} dev: true @@ -7492,6 +7560,7 @@ packages: dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 + dev: true /@jridgewell/gen-mapping/0.3.2: resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} @@ -7682,7 +7751,7 @@ packages: engines: {node: '>=14'} dependencies: '@types/set-cookie-parser': 2.4.2 - set-cookie-parser: 2.5.1 + set-cookie-parser: 2.6.0 dev: true /@mswjs/interceptors/0.17.6: @@ -9494,6 +9563,10 @@ packages: config-chain: 1.1.13 dev: false + /@polka/url/1.0.0-next.23: + resolution: {integrity: sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==} + dev: true + /@prisma/client/5.4.1_prisma@5.4.1: resolution: {integrity: sha512-xyD0DJ3gRNfLbPsC+YfMBBuLJtZKQfy1OD2qU/PZg+HKrr7SO+09174LMeTlWP0YF2wca9LxtVd4HnAiB5ketQ==} engines: {node: '>=16.13'} @@ -10935,7 +11008,7 @@ packages: '@types/cookie': 0.4.1 '@web3-storage/multipart-parser': 1.0.0 cookie: 0.4.2 - set-cookie-parser: 2.5.1 + set-cookie-parser: 2.6.0 source-map: 0.7.4 /@remix-run/server-runtime/2.0.1_typescript@4.9.5: @@ -12584,6 +12657,137 @@ packages: - supports-color dev: false + /@sveltejs/adapter-auto/2.1.0_@sveltejs+kit@1.25.1: + resolution: {integrity: sha512-o2pZCfATFtA/Gw/BB0Xm7k4EYaekXxaPGER3xGSY3FvzFJGTlJlZjBseaXwYSM94lZ0HniOjTokN3cWaLX6fow==} + peerDependencies: + '@sveltejs/kit': ^1.0.0 + dependencies: + '@sveltejs/kit': 1.25.1_svelte@4.2.1+vite@4.4.9 + import-meta-resolve: 3.0.0 + dev: true + + /@sveltejs/kit/1.25.1: + resolution: {integrity: sha512-pD8XsvNJNgTNkFngNlM60my/X8dXWPKVzN5RghEQr0NjGZmuCjy49AfFu2cGbZjNf5pBcqd2RCNMW912P5fkhA==} + engines: {node: ^16.14 || >=18} + hasBin: true + requiresBuild: true + peerDependencies: + svelte: ^3.54.0 || ^4.0.0-next.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 2.4.6 + '@types/cookie': 0.5.2 + cookie: 0.5.0 + devalue: 4.3.2 + esm-env: 1.0.0 + kleur: 4.1.5 + magic-string: 0.30.3 + mime: 3.0.0 + sade: 1.8.1 + set-cookie-parser: 2.6.0 + sirv: 2.0.3 + tiny-glob: 0.2.9 + undici: 5.25.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/kit/1.25.1_svelte@4.2.1+vite@4.4.9: + resolution: {integrity: sha512-pD8XsvNJNgTNkFngNlM60my/X8dXWPKVzN5RghEQr0NjGZmuCjy49AfFu2cGbZjNf5pBcqd2RCNMW912P5fkhA==} + engines: {node: ^16.14 || >=18} + hasBin: true + requiresBuild: true + peerDependencies: + svelte: ^3.54.0 || ^4.0.0-next.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 2.4.6_svelte@4.2.1+vite@4.4.9 + '@types/cookie': 0.5.2 + cookie: 0.5.0 + devalue: 4.3.2 + esm-env: 1.0.0 + kleur: 4.1.5 + magic-string: 0.30.3 + mime: 3.0.0 + sade: 1.8.1 + set-cookie-parser: 2.6.0 + sirv: 2.0.3 + svelte: 4.2.1 + tiny-glob: 0.2.9 + undici: 5.25.4 + vite: 4.4.9 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/vite-plugin-svelte-inspector/1.0.4_25hzhjyralpt5lwm3sm7wb3ghq: + resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + '@sveltejs/vite-plugin-svelte': ^2.2.0 + svelte: ^3.54.0 || ^4.0.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 2.4.6 + debug: 4.3.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/vite-plugin-svelte-inspector/1.0.4_x762n3kazuogrgydgy4ei75iqi: + resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + '@sveltejs/vite-plugin-svelte': ^2.2.0 + svelte: ^3.54.0 || ^4.0.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 2.4.6_svelte@4.2.1+vite@4.4.9 + debug: 4.3.4 + svelte: 4.2.1 + vite: 4.4.9 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/vite-plugin-svelte/2.4.6: + resolution: {integrity: sha512-zO79p0+DZnXPnF0ltIigWDx/ux7Ni+HRaFOw720Qeivc1azFUrJxTl0OryXVibYNx1hCboGia1NRV3x8RNv4cA==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + svelte: ^3.54.0 || ^4.0.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte-inspector': 1.0.4_25hzhjyralpt5lwm3sm7wb3ghq + debug: 4.3.4 + deepmerge: 4.3.1 + kleur: 4.1.5 + magic-string: 0.30.3 + svelte-hmr: 0.15.3 + vitefu: 0.2.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@sveltejs/vite-plugin-svelte/2.4.6_svelte@4.2.1+vite@4.4.9: + resolution: {integrity: sha512-zO79p0+DZnXPnF0ltIigWDx/ux7Ni+HRaFOw720Qeivc1azFUrJxTl0OryXVibYNx1hCboGia1NRV3x8RNv4cA==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + svelte: ^3.54.0 || ^4.0.0 + vite: ^4.0.0 + dependencies: + '@sveltejs/vite-plugin-svelte-inspector': 1.0.4_x762n3kazuogrgydgy4ei75iqi + debug: 4.3.4 + deepmerge: 4.3.1 + kleur: 4.1.5 + magic-string: 0.30.3 + svelte: 4.2.1 + svelte-hmr: 0.15.3_svelte@4.2.1 + vite: 4.4.9 + vitefu: 0.2.4_vite@4.4.9 + transitivePeerDependencies: + - supports-color + dev: true + /@swc/core-darwin-arm64/1.3.26: resolution: {integrity: sha512-FWWflBfKRYrUJtko2xiedC5XCa31O75IZZqnTWuLpe9g3C5tnUuF3M8LSXZS/dn6wprome1MhtG9GMPkSYkhkg==} engines: {node: '>=10'} @@ -12941,7 +13145,7 @@ packages: /@types/acorn/4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /@types/aria-query/5.0.1: @@ -13049,6 +13253,10 @@ packages: /@types/cookie/0.4.1: resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==} + /@types/cookie/0.5.2: + resolution: {integrity: sha512-DBpRoJGKJZn7RY92dPrgoMew8xCWc2P71beqsjyhEI/Ds9mOyVmBwtekyfhpwFIVt1WrxTonFifiOZ62V8CnNA==} + dev: true + /@types/cookiejar/2.1.2: resolution: {integrity: sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==} dev: true @@ -13133,7 +13341,7 @@ packages: resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} dependencies: '@types/eslint': 8.4.10 - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /@types/eslint/8.4.10: @@ -13146,13 +13354,13 @@ packages: /@types/estree-jsx/0.0.1: resolution: {integrity: sha512-gcLAYiMfQklDCPjQegGn0TBAn9it05ISEsEhlKQUddIk7o2XDokOcTN7HBO8tznM0D9dGezvHEfRZBfZf6me0A==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /@types/estree-jsx/1.0.0: resolution: {integrity: sha512-3qvGd0z8F2ENTGr/GG1yViqfiKmRfrXVx5sJyHGFu3z7m5g5utCQtGp/g29JnjflhtQJBv1WDQukHiT58xPcYQ==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /@types/estree/0.0.51: @@ -13162,6 +13370,10 @@ packages: /@types/estree/1.0.0: resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==} + /@types/estree/1.0.2: + resolution: {integrity: sha512-VeiPZ9MMwXjO32/Xu7+OwflfmeoRwkE/qzndw42gGtgJwZopBnzy2gD//NN1+go1mADzkDcqf/KnFRSjTJ8xJA==} + dev: true + /@types/express-serve-static-core/4.17.32: resolution: {integrity: sha512-aI5h/VOkxOF2Z1saPy0Zsxs5avets/iaiAJYznQFm5By/pamU31xWKL//epiF4OfUA2qTOc9PV6tCUjhO8wlZA==} dependencies: @@ -13600,6 +13812,10 @@ packages: /@types/prop-types/15.7.5: resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} + /@types/pug/2.0.7: + resolution: {integrity: sha512-I469DU0UXNC1aHepwirWhu9YKg5fkxohZD95Ey/5A7lovC+Siu+MCLffva87lnfThaOrw9Vb1DUN5t55oULAAw==} + dev: true + /@types/qs/6.9.7: resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} @@ -13816,6 +14032,34 @@ packages: - supports-color dev: true + /@typescript-eslint/eslint-plugin/5.59.6_ltg3s7zeaq5lfn26f6cgiedibm: + resolution: {integrity: sha512-sXtOgJNEuRU5RLwPUb1jxtToZbgvq3M6FPpY4QENxoOggK+UpTxUBpj6tD8+Qh2g46Pi9We87E+eHnUw8YcGsw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + '@typescript-eslint/parser': ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@eslint-community/regexpp': 4.5.1 + '@typescript-eslint/parser': 5.59.6_ox3na7ge7wjdarbyztnclevxam + '@typescript-eslint/scope-manager': 5.59.6 + '@typescript-eslint/type-utils': 5.59.6_ox3na7ge7wjdarbyztnclevxam + '@typescript-eslint/utils': 5.59.6_ox3na7ge7wjdarbyztnclevxam + debug: 4.3.4 + eslint: 8.45.0 + grapheme-splitter: 1.0.4 + ignore: 5.2.4 + natural-compare-lite: 1.4.0 + semver: 7.5.0 + tsutils: 3.21.0_typescript@5.2.2 + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/eslint-plugin/6.7.4_ygtxu7ao4w7xzfo6eep522bcem: resolution: {integrity: sha512-DAbgDXwtX+pDkAHwiGhqP3zWUGpW49B7eqmgpPtg+BKJXwdct79ut9+ifqOFPJGClGKSHXn2PTBatCnldJRUoA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -13943,6 +14187,26 @@ packages: - supports-color dev: true + /@typescript-eslint/parser/5.59.6_ox3na7ge7wjdarbyztnclevxam: + resolution: {integrity: sha512-7pCa6al03Pv1yf/dUg/s1pXz/yGMUBAw5EeWqNTFiSueKvRNonze3hma3lhdsOrQcaOXhbk5gKu2Fludiho9VA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 5.59.6 + '@typescript-eslint/types': 5.59.6 + '@typescript-eslint/typescript-estree': 5.59.6_typescript@5.2.2 + debug: 4.3.4 + eslint: 8.45.0 + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/parser/6.7.4_ox3na7ge7wjdarbyztnclevxam: resolution: {integrity: sha512-I5zVZFY+cw4IMZUeNCU7Sh2PO5O57F7Lr0uyhgCJmhN/BuTlnc55KxPonR4+EM3GBdfiCyGZye6DgMjtubQkmA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -14019,6 +14283,26 @@ packages: - supports-color dev: true + /@typescript-eslint/type-utils/5.59.6_ox3na7ge7wjdarbyztnclevxam: + resolution: {integrity: sha512-A4tms2Mp5yNvLDlySF+kAThV9VTBPCvGf0Rp8nl/eoDX9Okun8byTKoj3fJ52IJitjWOk0fKPNQhXEB++eNozQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '*' + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/typescript-estree': 5.59.6_typescript@5.2.2 + '@typescript-eslint/utils': 5.59.6_ox3na7ge7wjdarbyztnclevxam + debug: 4.3.4 + eslint: 8.45.0 + tsutils: 3.21.0_typescript@5.2.2 + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/type-utils/6.7.4_ox3na7ge7wjdarbyztnclevxam: resolution: {integrity: sha512-n+g3zi1QzpcAdHFP9KQF+rEFxMb2KxtnJGID3teA/nxKHOVi3ylKovaqEzGBbVY2pBttU6z85gp0D00ufLzViQ==} engines: {node: ^16.0.0 || >=18.0.0} @@ -14151,6 +14435,27 @@ packages: transitivePeerDependencies: - supports-color + /@typescript-eslint/typescript-estree/5.59.6_typescript@5.2.2: + resolution: {integrity: sha512-vW6JP3lMAs/Tq4KjdI/RiHaaJSO7IUsbkz17it/Rl9Q+WkQ77EOuOnlbaU8kKfVIOJxMhnRiBG+olE7f3M16DA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 5.59.6 + '@typescript-eslint/visitor-keys': 5.59.6 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.5.4 + tsutils: 3.21.0_typescript@5.2.2 + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/typescript-estree/6.7.4_typescript@5.2.2: resolution: {integrity: sha512-ty8b5qHKatlNYd9vmpHooQz3Vki3gG+3PchmtsA4TgrZBKWHNjWfkQid7K7xQogBqqc7/BhGazxMD5vr6Ha+iQ==} engines: {node: ^16.0.0 || >=18.0.0} @@ -14232,6 +14537,26 @@ packages: - typescript dev: true + /@typescript-eslint/utils/5.59.6_ox3na7ge7wjdarbyztnclevxam: + resolution: {integrity: sha512-vzaaD6EXbTS29cVH0JjXBdzMt6VBlv+hE31XktDRMX1j3462wZCJa7VzO2AxXEXcIl8GQqZPcOPuW/Z1tZVogg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0_eslint@8.45.0 + '@types/json-schema': 7.0.11 + '@types/semver': 7.3.13 + '@typescript-eslint/scope-manager': 5.59.6 + '@typescript-eslint/types': 5.59.6 + '@typescript-eslint/typescript-estree': 5.59.6_typescript@5.2.2 + eslint: 8.45.0 + eslint-scope: 5.1.1 + semver: 7.5.4 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + /@typescript-eslint/utils/6.7.4_ox3na7ge7wjdarbyztnclevxam: resolution: {integrity: sha512-PRQAs+HUn85Qdk+khAxsVV+oULy3VkbH3hQ8hxLRJXWBEd7iI+GbQxH5SEUSH7kbEoTp6oT1bOwyga24ELALTA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -14348,7 +14673,7 @@ packages: lodash: 4.17.21 mlly: 1.1.1 outdent: 0.8.0 - vite: 4.1.4 + vite: 4.4.9 vite-node: 0.28.5 transitivePeerDependencies: - '@types/node' @@ -14375,7 +14700,7 @@ packages: lodash: 4.17.21 mlly: 1.1.1 outdent: 0.8.0 - vite: 4.1.4_@types+node@18.11.18 + vite: 4.4.9_@types+node@18.11.18 vite-node: 0.28.5_@types+node@18.11.18 transitivePeerDependencies: - '@types/node' @@ -14946,6 +15271,12 @@ packages: dependencies: deep-equal: 2.2.0 + /aria-query/5.3.0: + resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + dependencies: + dequal: 2.0.3 + dev: true + /arr-diff/1.1.0: resolution: {integrity: sha512-OQwDZUqYaQwyyhDJHThmzId8daf4/RFNLaeh3AevmSeZ5Y7ug4Ga/yKc6l6kTZOBW781rCj103ZuTh8GAsB3+Q==} engines: {node: '>=0.10.0'} @@ -15325,6 +15656,12 @@ packages: dependencies: deep-equal: 2.2.0 + /axobject-query/3.2.1: + resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} + dependencies: + dequal: 2.0.3 + dev: true + /b4a/1.6.4: resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} optional: true @@ -16416,6 +16753,16 @@ packages: engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} dev: true + /code-red/1.0.4: + resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + '@types/estree': 1.0.2 + acorn: 8.10.0 + estree-walker: 3.0.3 + periscopic: 3.1.0 + dev: true + /codemirror/6.0.1: resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==} dependencies: @@ -16887,6 +17234,14 @@ packages: source-map: 0.6.1 dev: false + /css-tree/2.3.1: + resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + dependencies: + mdn-data: 2.0.30 + source-map-js: 1.0.2 + dev: true + /css-unit-converter/1.1.2: resolution: {integrity: sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==} dev: false @@ -17218,6 +17573,11 @@ packages: resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} engines: {node: '>=0.10.0'} + /deepmerge/4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + dev: true + /default-browser-id/3.0.0: resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==} engines: {node: '>=12'} @@ -17814,6 +18174,10 @@ packages: resolution: {integrity: sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==} dev: true + /es6-promise/3.3.1: + resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} + dev: true + /es6-symbol/3.1.3: resolution: {integrity: sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==} dependencies: @@ -18377,6 +18741,15 @@ packages: eslint: 8.31.0 dev: true + /eslint-config-prettier/8.6.0_eslint@8.45.0: + resolution: {integrity: sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + dependencies: + eslint: 8.45.0 + dev: true + /eslint-config-prettier/9.0.0_eslint@8.45.0: resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} hasBin: true @@ -19041,6 +19414,34 @@ packages: semver: 6.3.1 string.prototype.matchall: 4.0.8 + /eslint-plugin-svelte/2.34.0_eslint@8.45.0+svelte@4.2.1: + resolution: {integrity: sha512-4RYUgNai7wr0v+T/kljMiYSjC/oqwgq5i+cPppawryAayj4C7WK1ixFlWCGmNmBppnoKCl4iA4ZPzPtlHcb4CA==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0-0 + svelte: ^3.37.0 || ^4.0.0 + peerDependenciesMeta: + svelte: + optional: true + dependencies: + '@eslint-community/eslint-utils': 4.4.0_eslint@8.45.0 + '@jridgewell/sourcemap-codec': 1.4.15 + debug: 4.3.4 + eslint: 8.45.0 + esutils: 2.0.3 + known-css-properties: 0.28.0 + postcss: 8.4.29 + postcss-load-config: 3.1.4_postcss@8.4.29 + postcss-safe-parser: 6.0.0_postcss@8.4.29 + postcss-selector-parser: 6.0.11 + semver: 7.5.4 + svelte: 4.2.1 + svelte-eslint-parser: 0.33.1_svelte@4.2.1 + transitivePeerDependencies: + - supports-color + - ts-node + dev: true + /eslint-plugin-testing-library/5.11.0_iukboom6ndih5an6iafl45j2fe: resolution: {integrity: sha512-ELY7Gefo+61OfXKlQeXNIDVVLPcvKTeiQOoMZG9TeuWa7Ln4dUNRv8JdRWBQI9Mbb427XGlVB1aa1QPZxBJM8Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'} @@ -19286,6 +19687,10 @@ packages: transitivePeerDependencies: - supports-color + /esm-env/1.0.0: + resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} + dev: true + /espree/9.4.1: resolution: {integrity: sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -19350,7 +19755,7 @@ packages: /estree-util-attach-comments/2.1.0: resolution: {integrity: sha512-rJz6I4L0GaXYtHpoMScgDIwM0/Vwbu5shbMeER596rB2D1EWF6+Gj0e0UKzJPZrpoOc87+Q2kgVFHfjAymIqmw==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 dev: true /estree-util-build-jsx/2.2.2: @@ -20963,7 +21368,7 @@ packages: /hast-util-to-estree/2.1.0: resolution: {integrity: sha512-Vwch1etMRmm89xGgz+voWXvVHba2iiMdGMKmaMfYt35rbVtFDq8JNwwAIvi8zHMkO6Gvqo9oTMwJTmzVRfXh4g==} dependencies: - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 '@types/estree-jsx': 1.0.0 '@types/hast': 2.3.4 '@types/unist': 2.0.6 @@ -22180,7 +22585,7 @@ packages: babel-jest: 29.6.2_@babel+core@7.22.17 chalk: 4.1.2 ci-info: 3.8.0 - deepmerge: 4.2.2 + deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.10 jest-circus: 29.6.2 @@ -22220,7 +22625,7 @@ packages: babel-jest: 29.6.2_@babel+core@7.22.17 chalk: 4.1.2 ci-info: 3.8.0 - deepmerge: 4.2.2 + deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.10 jest-circus: 29.6.2 @@ -22865,6 +23270,10 @@ packages: engines: {node: '>= 8'} dev: true + /known-css-properties/0.28.0: + resolution: {integrity: sha512-9pSL5XB4J+ifHP0e0jmmC98OGC1nL8/JjS+fi6mnTlIf//yt/MfVLtKg7S6nCtj/8KTcWX7nRlY0XywoYY1ISQ==} + dev: true + /language-subtag-registry/0.3.22: resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} @@ -22933,7 +23342,7 @@ packages: dependencies: cookie: 0.5.0 process-warning: 2.2.0 - set-cookie-parser: 2.5.1 + set-cookie-parser: 2.6.0 dev: true /lilconfig/2.0.6: @@ -23038,6 +23447,10 @@ packages: - supports-color dev: false + /locate-character/3.0.0: + resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} + dev: true + /locate-path/3.0.0: resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} engines: {node: '>=6'} @@ -23212,6 +23625,13 @@ packages: engines: {node: '>=6'} dev: true + /magic-string/0.27.0: + resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} + engines: {node: '>=12'} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + /magic-string/0.30.0: resolution: {integrity: sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==} engines: {node: '>=12'} @@ -23560,6 +23980,10 @@ packages: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} dev: false + /mdn-data/2.0.30: + resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + dev: true + /mdurl/1.0.1: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} dev: true @@ -23868,7 +24292,7 @@ packages: resolution: {integrity: sha512-WWp3bf7xT9MppNuw3yPjpnOxa8cj5ACivEzXJKu0WwnjBYfzaBvIAT9KfeyI0Qkll+bfQtfftSwdgTH6QhTOKw==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 estree-util-visit: 1.2.0 micromark-util-types: 1.0.2 uvu: 0.5.6 @@ -25666,6 +26090,14 @@ packages: is-reference: 3.0.1 dev: true + /periscopic/3.1.0: + resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} + dependencies: + '@types/estree': 1.0.0 + estree-walker: 3.0.3 + is-reference: 3.0.1 + dev: true + /pg-connection-string/2.5.0: resolution: {integrity: sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==} dev: false @@ -25948,6 +26380,23 @@ packages: yaml: 1.10.2 dev: true + /postcss-load-config/3.1.4_postcss@8.4.29: + resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} + engines: {node: '>= 10'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 2.1.0 + postcss: 8.4.29 + yaml: 1.10.2 + dev: true + /postcss-load-config/4.0.1: resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} engines: {node: '>= 14'} @@ -26172,6 +26621,24 @@ packages: postcss-selector-parser: 6.0.11 dev: false + /postcss-safe-parser/6.0.0_postcss@8.4.29: + resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.3.3 + dependencies: + postcss: 8.4.29 + dev: true + + /postcss-scss/4.0.9_postcss@8.4.29: + resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.4.29 + dependencies: + postcss: 8.4.29 + dev: true + /postcss-selector-parser/6.0.10: resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} engines: {node: '>=4'} @@ -26331,6 +26798,16 @@ packages: fast-diff: 1.3.0 dev: true + /prettier-plugin-svelte/2.10.1_hfafeyo6vw33o2ufgpsfnrywzu: + resolution: {integrity: sha512-Wlq7Z5v2ueCubWo0TZzKc9XHcm7TDxqcuzRuGd0gcENfzfT4JZ9yDlCbEgxWgiPmLHkBjfOtpAWkcT28MCDpUQ==} + peerDependencies: + prettier: ^1.16.4 || ^2.0.0 + svelte: ^3.2.0 || ^4.0.0-next.0 + dependencies: + prettier: 2.8.8 + svelte: 4.2.1 + dev: true + /prettier-plugin-tailwindcss/0.3.0_prettier@2.8.8: resolution: {integrity: sha512-009/Xqdy7UmkcTBpwlq7jsViDqXAYSOMLDrHAdTMlVZOrKfM2o9Ci7EMWTMZ7SkKBFTG04UM9F9iM2+4i6boDA==} engines: {node: '>=12.17.0'} @@ -27931,6 +28408,15 @@ packages: /safer-buffer/2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + /sander/0.5.1: + resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==} + dependencies: + es6-promise: 3.3.1 + graceful-fs: 4.2.10 + mkdirp: 0.5.6 + rimraf: 2.7.1 + dev: true + /sass-loader/13.2.2: resolution: {integrity: sha512-nrIdVAAte3B9icfBiGWvmMhT/D+eCDwnk+yA7VE/76dp/WkHX+i44Q/pfo71NYbwj0Ap+PGsn0ekOuU1WFJ2AA==} engines: {node: '>= 14.15.0'} @@ -28130,6 +28616,9 @@ packages: /set-cookie-parser/2.5.1: resolution: {integrity: sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==} + /set-cookie-parser/2.6.0: + resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==} + /set-harmonic-interval/1.0.1: resolution: {integrity: sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==} engines: {node: '>=6.9'} @@ -28314,6 +28803,15 @@ packages: resolution: {integrity: sha512-bBAoTn75tuKh83opmZ1VoyVoQIsvLCKzSxuasAxbnKofrT8eGyOEIaXSuNfhi/hI160+fwsR7ObcbBpOyzDvXg==} dev: false + /sirv/2.0.3: + resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==} + engines: {node: '>= 10'} + dependencies: + '@polka/url': 1.0.0-next.23 + mrmime: 1.0.1 + totalist: 3.0.1 + dev: true + /sisteransi/1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -28441,6 +28939,16 @@ packages: atomic-sleep: 1.0.0 dev: true + /sorcery/0.11.0: + resolution: {integrity: sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==} + hasBin: true + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + buffer-crc32: 0.2.13 + minimist: 1.2.7 + sander: 0.5.1 + dev: true + /sort-object-keys/1.1.3: resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} dev: true @@ -29070,6 +29578,132 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + /svelte-check/3.5.2_svelte@4.2.1: + resolution: {integrity: sha512-5a/YWbiH4c+AqAUP+0VneiV5bP8YOk9JL3jwvN+k2PEPLgpu85bjQc5eE67+eIZBBwUEJzmO3I92OqKcqbp3fw==} + hasBin: true + peerDependencies: + svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0 + dependencies: + '@jridgewell/trace-mapping': 0.3.19 + chokidar: 3.5.3 + fast-glob: 3.3.1 + import-fresh: 3.3.0 + picocolors: 1.0.0 + sade: 1.8.1 + svelte: 4.2.1 + svelte-preprocess: 5.0.4_ihwjmfflvgyqta4xkfhaggvtwe + typescript: 5.2.2 + transitivePeerDependencies: + - '@babel/core' + - coffeescript + - less + - postcss + - postcss-load-config + - pug + - sass + - stylus + - sugarss + dev: true + + /svelte-eslint-parser/0.33.1_svelte@4.2.1: + resolution: {integrity: sha512-vo7xPGTlKBGdLH8T5L64FipvTrqv3OQRx9d2z5X05KKZDlF4rQk8KViZO4flKERY+5BiVdOh7zZ7JGJWo5P0uA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + svelte: ^3.37.0 || ^4.0.0 + peerDependenciesMeta: + svelte: + optional: true + dependencies: + eslint-scope: 7.2.0 + eslint-visitor-keys: 3.4.2 + espree: 9.6.0 + postcss: 8.4.29 + postcss-scss: 4.0.9_postcss@8.4.29 + svelte: 4.2.1 + dev: true + + /svelte-hmr/0.15.3: + resolution: {integrity: sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==} + engines: {node: ^12.20 || ^14.13.1 || >= 16} + peerDependencies: + svelte: ^3.19.0 || ^4.0.0 + dev: true + + /svelte-hmr/0.15.3_svelte@4.2.1: + resolution: {integrity: sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==} + engines: {node: ^12.20 || ^14.13.1 || >= 16} + peerDependencies: + svelte: ^3.19.0 || ^4.0.0 + dependencies: + svelte: 4.2.1 + dev: true + + /svelte-preprocess/5.0.4_ihwjmfflvgyqta4xkfhaggvtwe: + resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==} + engines: {node: '>= 14.10.0'} + requiresBuild: true + peerDependencies: + '@babel/core': ^7.10.2 + coffeescript: ^2.5.1 + less: ^3.11.3 || ^4.0.0 + postcss: ^7 || ^8 + postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 + pug: ^3.0.0 + sass: ^1.26.8 + stylus: ^0.55.0 + sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 + svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0 + typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0' + peerDependenciesMeta: + '@babel/core': + optional: true + coffeescript: + optional: true + less: + optional: true + postcss: + optional: true + postcss-load-config: + optional: true + pug: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + typescript: + optional: true + dependencies: + '@types/pug': 2.0.7 + detect-indent: 6.1.0 + magic-string: 0.27.0 + sorcery: 0.11.0 + strip-indent: 3.0.0 + svelte: 4.2.1 + typescript: 5.2.2 + dev: true + + /svelte/4.2.1: + resolution: {integrity: sha512-LpLqY2Jr7cRxkrTc796/AaaoMLF/1ax7cto8Ot76wrvKQhrPmZ0JgajiWPmg9mTSDqO16SSLiD17r9MsvAPTmw==} + engines: {node: '>=16'} + dependencies: + '@ampproject/remapping': 2.2.1 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.19 + acorn: 8.10.0 + aria-query: 5.3.0 + axobject-query: 3.2.1 + code-red: 1.0.4 + css-tree: 2.3.1 + estree-walker: 3.0.3 + is-reference: 3.0.1 + locate-character: 3.0.0 + magic-string: 0.30.3 + periscopic: 3.1.0 + dev: true + /symbol-observable/4.0.0: resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==} engines: {node: '>=0.10'} @@ -29525,6 +30159,11 @@ packages: resolution: {integrity: sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==} dev: true + /totalist/3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} + engines: {node: '>=6'} + dev: true + /touch/3.1.0: resolution: {integrity: sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==} hasBin: true @@ -30125,6 +30764,16 @@ packages: tslib: 1.14.1 typescript: 5.1.6 + /tsutils/3.21.0_typescript@5.2.2: + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + dependencies: + tslib: 1.14.1 + typescript: 5.2.2 + dev: true + /tsx/3.12.2: resolution: {integrity: sha512-ykAEkoBg30RXxeOMVeZwar+JH632dZn9EUJVyJwhfag62k6UO/dIyJEV58YuLF6e5BTdV/qmbQrpkWqjq9cUnQ==} hasBin: true @@ -30392,6 +31041,12 @@ packages: dependencies: busboy: 1.6.0 + /undici/5.25.4: + resolution: {integrity: sha512-450yJxT29qKMf3aoudzFpIciqpx6Pji3hEWaXqXmanbXF58LTAGCKxcJjxMXWu3iG+Mudgo3ZUfDB6YDFd/dAw==} + engines: {node: '>=14.0'} + dependencies: + '@fastify/busboy': 2.0.0 + /unfetch/4.2.0: resolution: {integrity: sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==} @@ -31026,73 +31681,6 @@ packages: - typescript dev: true - /vite/4.1.4: - resolution: {integrity: sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - dependencies: - esbuild: 0.16.17 - postcss: 8.4.29 - resolve: 1.22.1 - rollup: 3.10.0 - optionalDependencies: - fsevents: 2.3.3 - dev: true - - /vite/4.1.4_@types+node@18.11.18: - resolution: {integrity: sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - dependencies: - '@types/node': 18.11.18 - esbuild: 0.16.17 - postcss: 8.4.29 - resolve: 1.22.1 - rollup: 3.10.0 - optionalDependencies: - fsevents: 2.3.3 - dev: true - /vite/4.1.4_@types+node@18.17.1: resolution: {integrity: sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==} engines: {node: ^14.18.0 || >=16.0.0} @@ -31266,6 +31854,15 @@ packages: optionalDependencies: fsevents: 2.3.3 + /vitefu/0.2.4: + resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} + peerDependencies: + vite: ^3.0.0 || ^4.0.0 + peerDependenciesMeta: + vite: + optional: true + dev: true + /vitefu/0.2.4_vite@4.4.9: resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} peerDependencies: @@ -31521,7 +32118,7 @@ packages: optional: true dependencies: '@types/eslint-scope': 3.7.4 - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 '@webassemblyjs/ast': 1.11.5 '@webassemblyjs/wasm-edit': 1.11.5 '@webassemblyjs/wasm-parser': 1.11.5 @@ -31561,7 +32158,7 @@ packages: optional: true dependencies: '@types/eslint-scope': 3.7.4 - '@types/estree': 1.0.0 + '@types/estree': 1.0.2 '@webassemblyjs/ast': 1.11.5 '@webassemblyjs/wasm-edit': 1.11.5 '@webassemblyjs/wasm-parser': 1.11.5 From 78c56003ca38acc4c4db493d619ab22919eece7e Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Fri, 6 Oct 2023 17:09:00 +0100 Subject: [PATCH 18/18] Update neat-feet-wait.md --- .changeset/neat-feet-wait.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/neat-feet-wait.md b/.changeset/neat-feet-wait.md index 39ce373282c..ab385fe373c 100644 --- a/.changeset/neat-feet-wait.md +++ b/.changeset/neat-feet-wait.md @@ -2,4 +2,4 @@ "@trigger.dev/sveltekit": patch --- -SvelteKit adaptor and Svelte package +SvelteKit adaptor package