Loading...
16 | {:then animals}
17 | /**"],
13 | "type": "node",
14 | "console": "integratedTerminal"
15 | },
16 |
17 | {
18 | "type": "chrome",
19 | "request": "launch",
20 | "name": "Launch browser",
21 | "url": "http://127.0.0.1:5173",
22 | "webRoot": "${workspaceFolder}"
23 | }
24 | ],
25 | "compounds": [
26 | {
27 | "name": "Both",
28 | "configurations": ["Launch server", "Launch browser"]
29 | }
30 | ]
31 | }
32 |
--------------------------------------------------------------------------------
/src/routes/(common-layout)/jsform/+page.svelte:
--------------------------------------------------------------------------------
1 |
22 |
23 |
24 | JS Form
25 |
26 |
27 |
32 |
33 | {response}
34 |
--------------------------------------------------------------------------------
/src/routes/(common-layout)/+page.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 | This week in Svelte
6 | Demos
7 |
8 | {#if $navigating !== null}
9 | Loading page...
10 | {/if}
11 |
12 |
40 |
--------------------------------------------------------------------------------
/_examples/webcomponents/src/lib/components/Card.svelte:
--------------------------------------------------------------------------------
1 |
12 |
13 |
19 |
20 |
21 | {title}{complex?.number}
22 |
23 |
24 |
25 | Select
26 |
27 |
28 |
29 |
48 |
--------------------------------------------------------------------------------
/src/components/GrailAccordion/GrailAccordion.svelte:
--------------------------------------------------------------------------------
1 |
32 |
33 |
34 |
35 | {#each data as item}
36 |
37 | {item.title}
40 |
41 | {item.content}
42 |
43 |
44 | {/each}
45 |
46 |
47 |
--------------------------------------------------------------------------------
/_examples/static-blog-with-data/sanity/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "moccasin-reindeer",
3 | "private": true,
4 | "version": "1.0.0",
5 | "main": "package.json",
6 | "license": "UNLICENSED",
7 | "scripts": {
8 | "dev": "sanity dev",
9 | "start": "sanity start",
10 | "build": "sanity build",
11 | "deploy": "sanity deploy",
12 | "deploy-graphql": "sanity graphql deploy"
13 | },
14 | "keywords": [
15 | "sanity"
16 | ],
17 | "dependencies": {
18 | "@sanity/vision": "^3.0.0",
19 | "react": "^18.2.0",
20 | "react-dom": "^18.2.0",
21 | "react-is": "^18.2.0",
22 | "sanity": "^3.0.0",
23 | "styled-components": "^5.2.0"
24 | },
25 | "devDependencies": {
26 | "@sanity/eslint-config-studio": "^2.0.1",
27 | "@types/react": "^18.0.25",
28 | "@types/styled-components": "^5.1.26",
29 | "eslint": "^8.6.0",
30 | "prettier": "^2.8.7",
31 | "typescript": "^4.0.0"
32 | },
33 | "prettier": {
34 | "semi": false,
35 | "printWidth": 100,
36 | "bracketSpacing": false,
37 | "singleQuote": true
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/_examples/webcomponents/README.md:
--------------------------------------------------------------------------------
1 | # create-svelte
2 |
3 | Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
4 |
5 | ## Creating a project
6 |
7 | If you're seeing this, you've probably already done this step. Congrats!
8 |
9 | ```bash
10 | # create a new project in the current directory
11 | npm create svelte@latest
12 |
13 | # create a new project in my-app
14 | npm create svelte@latest my-app
15 | ```
16 |
17 | ## Developing
18 |
19 | Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:
20 |
21 | ```bash
22 | npm run dev
23 |
24 | # or start the server and open the app in a new browser tab
25 | npm run dev -- --open
26 | ```
27 |
28 | ## Building
29 |
30 | To create a production version of your app:
31 |
32 | ```bash
33 | npm run build
34 | ```
35 |
36 | You can preview the production build with `npm run preview`.
37 |
38 | > To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.
39 |
--------------------------------------------------------------------------------
/_examples/simple-mocking/README.md:
--------------------------------------------------------------------------------
1 | # create-svelte
2 |
3 | Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
4 |
5 | ## Creating a project
6 |
7 | If you're seeing this, you've probably already done this step. Congrats!
8 |
9 | ```bash
10 | # create a new project in the current directory
11 | npm create svelte@latest
12 |
13 | # create a new project in my-app
14 | npm create svelte@latest my-app
15 | ```
16 |
17 | ## Developing
18 |
19 | Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:
20 |
21 | ```bash
22 | npm run dev
23 |
24 | # or start the server and open the app in a new browser tab
25 | npm run dev -- --open
26 | ```
27 |
28 | ## Building
29 |
30 | To create a production version of your app:
31 |
32 | ```bash
33 | npm run build
34 | ```
35 |
36 | You can preview the production build with `npm run preview`.
37 |
38 | > To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.
39 |
--------------------------------------------------------------------------------
/_examples/static-blog-with-data/sanity/schemas/author.js:
--------------------------------------------------------------------------------
1 | import {defineField, defineType} from 'sanity'
2 |
3 | export default defineType({
4 | name: 'author',
5 | title: 'Author',
6 | type: 'document',
7 | fields: [
8 | defineField({
9 | name: 'name',
10 | title: 'Name',
11 | type: 'string',
12 | }),
13 | defineField({
14 | name: 'slug',
15 | title: 'Slug',
16 | type: 'slug',
17 | options: {
18 | source: 'name',
19 | maxLength: 96,
20 | },
21 | }),
22 | defineField({
23 | name: 'image',
24 | title: 'Image',
25 | type: 'image',
26 | options: {
27 | hotspot: true,
28 | },
29 | }),
30 | defineField({
31 | name: 'bio',
32 | title: 'Bio',
33 | type: 'array',
34 | of: [
35 | {
36 | title: 'Block',
37 | type: 'block',
38 | styles: [{title: 'Normal', value: 'normal'}],
39 | lists: [],
40 | },
41 | ],
42 | }),
43 | ],
44 | preview: {
45 | select: {
46 | title: 'name',
47 | media: 'image',
48 | },
49 | },
50 | })
51 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "this-week-in-svelte",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "dev": "vite dev",
7 | "build": "vite build",
8 | "preview": "vite preview",
9 | "check": "svelte-kit sync && svelte-check --tsconfig ./jsconfig.json",
10 | "check:watch": "svelte-kit sync && svelte-check --tsconfig ./jsconfig.json --watch",
11 | "test:e2e": "playwright test",
12 | "test:unit": "vitest",
13 | "lint": "prettier --plugin-search-dir . --check . && eslint .",
14 | "format": "prettier --plugin-search-dir . --write ."
15 | },
16 | "devDependencies": {
17 | "@axe-core/playwright": "^4.7.3",
18 | "@grail-ui/svelte": "^0.9.6",
19 | "@playwright/test": "^1.37.1",
20 | "@sveltejs/adapter-auto": "^2.1.0",
21 | "@sveltejs/kit": "^1.23.0",
22 | "@sveltejs/vite-plugin-svelte": "^2.4.5",
23 | "@testing-library/svelte": "^4.0.3",
24 | "eslint": "^8.47.0",
25 | "eslint-config-prettier": "^8.10.0",
26 | "eslint-plugin-svelte3": "^4.0.0",
27 | "happy-dom": "^10.11.0",
28 | "prettier": "^2.8.8",
29 | "prettier-plugin-svelte": "^2.10.1",
30 | "svelte": "^4.2.0",
31 | "svelte-check": "^3.5.0",
32 | "typescript": "^5.2.2",
33 | "vite": "^4.4.9",
34 | "vitest": "^0.34.2"
35 | },
36 | "type": "module"
37 | }
38 |
--------------------------------------------------------------------------------
/_examples/simple-mocking/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "simple-mocking",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "dev": "vite dev",
7 | "build": "vite build",
8 | "preview": "vite preview",
9 | "test": "npm run test:integration && npm run test:unit",
10 | "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
11 | "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
12 | "lint": "prettier --plugin-search-dir . --check . && eslint .",
13 | "format": "prettier --plugin-search-dir . --write .",
14 | "test:integration": "playwright test",
15 | "test:unit": "vitest"
16 | },
17 | "devDependencies": {
18 | "@playwright/test": "^1.28.1",
19 | "@sveltejs/adapter-auto": "^2.0.0",
20 | "@sveltejs/kit": "^1.20.4",
21 | "@typescript-eslint/eslint-plugin": "^5.45.0",
22 | "@typescript-eslint/parser": "^5.45.0",
23 | "eslint": "^8.28.0",
24 | "eslint-config-prettier": "^8.5.0",
25 | "eslint-plugin-svelte": "^2.30.0",
26 | "prettier": "^2.8.0",
27 | "prettier-plugin-svelte": "^2.10.1",
28 | "svelte": "^4.0.5",
29 | "svelte-check": "^3.4.3",
30 | "tslib": "^2.4.1",
31 | "typescript": "^5.0.0",
32 | "vite": "^4.4.2",
33 | "vitest": "^0.32.2"
34 | },
35 | "type": "module"
36 | }
37 |
--------------------------------------------------------------------------------
/_examples/webcomponents/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "webcomponents",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "dev": "vite dev",
7 | "build": "vite build",
8 | "build:cl": "vite build -c cl.vite.config.ts",
9 | "preview": "vite preview",
10 | "test": "npm run test:integration && npm run test:unit",
11 | "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
12 | "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
13 | "lint": "prettier --plugin-search-dir . --check . && eslint .",
14 | "format": "prettier --plugin-search-dir . --write .",
15 | "test:integration": "playwright test",
16 | "test:unit": "vitest"
17 | },
18 | "devDependencies": {
19 | "@playwright/test": "^1.28.1",
20 | "@sveltejs/adapter-auto": "^2.0.0",
21 | "@sveltejs/kit": "^1.20.4",
22 | "@typescript-eslint/eslint-plugin": "^5.45.0",
23 | "@typescript-eslint/parser": "^5.45.0",
24 | "eslint": "^8.28.0",
25 | "eslint-config-prettier": "^8.5.0",
26 | "eslint-plugin-svelte": "^2.30.0",
27 | "prettier": "^2.8.0",
28 | "prettier-plugin-svelte": "^2.10.1",
29 | "svelte": "^4.0.5",
30 | "svelte-check": "^3.4.3",
31 | "tslib": "^2.4.1",
32 | "typescript": "^5.0.0",
33 | "vite": "^4.4.2",
34 | "vitest": "^0.32.2"
35 | },
36 | "type": "module",
37 | "dependencies": {
38 | "@sveltejs/vite-plugin-svelte": "^2.4.3"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/src/routes/(common-layout)/links/+page.svelte:
--------------------------------------------------------------------------------
1 | Links
2 |
3 | Underlined links demonstration
4 |
5 |
6 | Look again at that dot. That's here. That's home. That's us. On it everyone you love,
9 | everyone you know
10 | , everyone you ever heard of, every human being who ever was, lived out their lives.
11 |
12 |
13 |
14 | Our posturings, our imagined self-importance, the delusion that we have some privileged position
15 | in the Universe, are challenged by this point of pale light. Our planet is a lonely speck in the
16 | great enveloping cosmic dark. In our obscurity, in all this vastness, there is no hint that help
17 | will come from elsewhere to save us from ourselves.
18 |
19 |
20 |
21 | The Earth is the only world known so far to harbor life. There is nowhere else, at least in the
22 | near future, to which our species could migrate. Visit, yes. Settle , not yet.
23 | Like it or not, for the moment the Earth is where we make our stand.
24 |
25 |
26 |
27 | It has been said that astronomy is a humbling and character-building experience. There is perhaps
28 | no better demonstration of the folly of human conceits than this distant image of our tiny world.
29 | To me, it underscores our responsibility to deal more kindly with one another, and to preserve and
30 | cherish the pale blue dot, the only home we've ever known.
31 |
32 |
--------------------------------------------------------------------------------
/src/routes/(no-layout)/component-playground/+page.svelte:
--------------------------------------------------------------------------------
1 |
12 |
13 |
14 | Component playground!
15 |
16 |
17 | How is this card?
18 |
19 |
20 |
25 |
26 | Use this:
27 | export { default as ComponentName } from './ComponentName.svelte'
28 |
29 |
30 |
31 |
32 |
34 | console.log(e.detail)}
35 | />
36 |
37 | Shared props examples.
38 |
39 | Regular button
40 | Cool button
41 |
42 | JSDoc Button
43 |
44 | JSDoc 'as const' typing
45 |
46 | {#if true}
47 | {@const person = /** @type {const} */ ({ name: 'Piers' })}
48 | Name is {person.name}
49 | {/if}
50 |
--------------------------------------------------------------------------------
/src/routes/(common-layout)/dynamic-form/+page.server.ts:
--------------------------------------------------------------------------------
1 | import { fail } from '@sveltejs/kit'
2 | import type { Actions } from './$types'
3 |
4 | export const actions: Actions = {
5 | addPet: async ({ request }) => {
6 | const formItems = await request.formData()
7 |
8 | const items = [...formItems.entries()]
9 |
10 | /**
11 | * The pets.
12 | */
13 | let pets: string[] = Array.from(
14 | formItems.getAll('petname'),
15 | (el) => el.toString()
16 | )
17 | pets.push('')
18 |
19 | return { items, pets }
20 | },
21 | removePet: async ({ request, url }) => {
22 | const formItems = await request.formData()
23 | const pet =
24 | parseInt(String(url.searchParams.get('pet')), 10) || 0
25 | console.log({ pet })
26 |
27 | const items = [...formItems.entries()]
28 | const pets = [...formItems.getAll('petname')]
29 |
30 | pets.splice(pet, 1)
31 |
32 | console.log('After removal', { pets })
33 |
34 | return { items, pets }
35 | },
36 | submit: async ({ request }) => {
37 | console.log('submitted!')
38 |
39 | const formData = await request.formData()
40 | const items: [string, any][] = [...formData.entries()]
41 |
42 | console.log({ items })
43 |
44 | interface Errors {
45 | [key: string]: string
46 | }
47 | const errors: Errors = {}
48 | if (!formData.get('name')) {
49 | errors.name = 'Please fill your name'
50 | }
51 | if (Object.keys(errors).length > 0) {
52 | return fail(400, {
53 | success: false,
54 | items,
55 | errors
56 | })
57 | }
58 |
59 | return { success: true, items }
60 | }
61 | }
62 |
--------------------------------------------------------------------------------
/_examples/static-blog-with-data/sanity/schemas/post.js:
--------------------------------------------------------------------------------
1 | import {defineField, defineType} from 'sanity'
2 |
3 | export default defineType({
4 | name: 'post',
5 | title: 'Post',
6 | type: 'document',
7 | fields: [
8 | defineField({
9 | name: 'title',
10 | title: 'Title',
11 | type: 'string',
12 | }),
13 | defineField({
14 | name: 'slug',
15 | title: 'Slug',
16 | type: 'slug',
17 | options: {
18 | source: 'title',
19 | maxLength: 96,
20 | },
21 | }),
22 | defineField({
23 | name: 'author',
24 | title: 'Author',
25 | type: 'reference',
26 | to: {type: 'author'},
27 | }),
28 | defineField({
29 | name: 'mainImage',
30 | title: 'Main image',
31 | type: 'image',
32 | options: {
33 | hotspot: true,
34 | },
35 | }),
36 | defineField({
37 | name: 'categories',
38 | title: 'Categories',
39 | type: 'array',
40 | of: [{type: 'reference', to: {type: 'category'}}],
41 | }),
42 | defineField({
43 | name: 'publishedAt',
44 | title: 'Published at',
45 | type: 'datetime',
46 | }),
47 | defineField({
48 | name: 'body',
49 | title: 'Body',
50 | type: 'blockContent',
51 | }),
52 | ],
53 |
54 | preview: {
55 | select: {
56 | title: 'title',
57 | author: 'author.name',
58 | media: 'mainImage',
59 | },
60 | prepare(selection) {
61 | const {author} = selection
62 | return {...selection, subtitle: author && `by ${author}`}
63 | },
64 | },
65 | })
66 |
--------------------------------------------------------------------------------
/src/components/GrailAccordion/GrailAccordionItem.svelte:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 | {title}
22 |
23 | {content}
24 |
25 |
26 |
27 |
70 |
--------------------------------------------------------------------------------
/src/routes/(common-layout)/loading-images/+page.svelte:
--------------------------------------------------------------------------------
1 |
20 |
21 | Example
22 |
23 | Pet samples
24 |
25 | {#each pets as pet}
26 | Pet species: {pet.species} Pet age: {pet.age}
27 | {/each}
28 |
29 | Some cat photos!
30 |
31 |
32 |
37 |
38 | Loaded as a static image! Photo by
39 | Alexander London
43 | on
44 | Unsplash
48 |
49 |
50 |
51 |
52 |
53 |
54 | Loaded via import! Photo by
55 | Amber Kipp
59 | on
60 | Unsplash
64 |
65 |
66 |
67 |
73 |
--------------------------------------------------------------------------------
/_examples/static-blog-with-data/sanity/schemas/blockContent.js:
--------------------------------------------------------------------------------
1 | import {defineType, defineArrayMember} from 'sanity'
2 |
3 | /**
4 | * This is the schema definition for the rich text fields used for
5 | * for this blog studio. When you import it in schemas.js it can be
6 | * reused in other parts of the studio with:
7 | * {
8 | * name: 'someName',
9 | * title: 'Some title',
10 | * type: 'blockContent'
11 | * }
12 | */
13 | export default defineType({
14 | title: 'Block Content',
15 | name: 'blockContent',
16 | type: 'array',
17 | of: [
18 | defineArrayMember({
19 | title: 'Block',
20 | type: 'block',
21 | // Styles let you set what your user can mark up blocks with. These
22 | // correspond with HTML tags, but you can set any title or value
23 | // you want and decide how you want to deal with it where you want to
24 | // use your content.
25 | styles: [
26 | {title: 'Normal', value: 'normal'},
27 | {title: 'H1', value: 'h1'},
28 | {title: 'H2', value: 'h2'},
29 | {title: 'H3', value: 'h3'},
30 | {title: 'H4', value: 'h4'},
31 | {title: 'Quote', value: 'blockquote'},
32 | ],
33 | lists: [{title: 'Bullet', value: 'bullet'}],
34 | // Marks let you mark up inline text in the block editor.
35 | marks: {
36 | // Decorators usually describe a single property – e.g. a typographic
37 | // preference or highlighting by editors.
38 | decorators: [
39 | {title: 'Strong', value: 'strong'},
40 | {title: 'Emphasis', value: 'em'},
41 | ],
42 | // Annotations can be any object structure – e.g. a link or a footnote.
43 | annotations: [
44 | {
45 | title: 'URL',
46 | name: 'link',
47 | type: 'object',
48 | fields: [
49 | {
50 | title: 'URL',
51 | name: 'href',
52 | type: 'url',
53 | },
54 | ],
55 | },
56 | ],
57 | },
58 | }),
59 | // You can add additional types here. Note that you can't use
60 | // primitive types such as 'string' and 'number' in the same array
61 | // as a block type.
62 | defineArrayMember({
63 | type: 'image',
64 | options: {hotspot: true},
65 | }),
66 | ],
67 | })
68 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # This Week in Svelte
2 |
3 | Live website:
4 |
5 | This repository is a collection of demos made for the "This Week in Svelte"
6 | livestream.
7 |
8 | - Join the [Svelte Discord](https://svelte.dev/chat).
9 | - Watch ["This Week in Svelte" on YouTube](https://youtube.com/playlist?list=PL8bMgX1kyZTiLCyvf8vF13sdnR4fhNl6v)
10 |
11 | Tools and features showcased in this repository:
12 |
13 | - Svelte
14 | - Underlined links
15 | - Static image loading and importing
16 | - SvelteKit
17 | - Streaming with promises
18 | - Form Actions with dynamic inputs
19 | - Error handling
20 | - Vitest
21 | - Testing library
22 | - Snapshot tests
23 | - Playwright
24 | - Full page accessibility testing
25 |
26 | Other examples:
27 |
28 | - [Static blog with live
29 | data](./_examples/static-blog-with-data/)
30 | - [Web Components made in Svelte](./_examples/webcomponents/)
31 |
32 | REPL links:
33 |
34 | - [Cross-component communication and focus management](https://svelte.dev/repl/773dd5b950394555955bf0c618bdb7cf?version=3.58.0)
35 | - [Svelte@3.58.0 container queries](https://svelte.dev/repl/8e9826d64dd243458c9c61dbdee1fd39?version=3.58.0)
36 | - [Prefers-reduced-motion](https://svelte.dev/repl/585ec05a69084f3cb77b25845c9e328b?version=3.58.0)
37 | - [Accessible button considerations](https://svelte.dev/repl/788110be6b62417b929fb7a856014e09?version=3.58.0)
38 | - [Toggle problem - with `setContext` and stores](https://svelte.dev/repl/f9523264e7de472685c6c56b8dfc8de0?version=3.58.0)
39 | - [Toggle problem - with `context=module`](https://svelte.dev/repl/0bed0640d35d464f80f2fcfbda0d1d79?version=3.58.0)
40 | - [Forwarding events](https://svelte.dev/repl/420ba8606b1148a0878c24f23c498917?version=3.58.0)
41 | - [Reactive deep object binding](https://svelte.dev/repl/357945f9985d4458992ff89070689fed?version=3.58.0)
42 | - [Skip links](https://www.sveltelab.dev/lqpb2gw177tgq9t)
43 | - [Navigation demo](https://www.sveltelab.dev/y65q2x6psxf3hk2)
44 | - [Markdown with mdsvex](https://www.sveltelab.dev/vcrn9v2tu26r6x8)
45 | - [No layout shift progressive enhancement Tabs](https://www.sveltelab.dev/5fb8n9qh3qd9see)
46 | - ["NoSSR component" by Paolo](https://www.sveltelab.dev/127sz4i474ph603)
47 | - ["Toggle Switch" by Enrico](https://svelte.dev/repl/43a1db77f9434391b41783ef4e414fd3?version=4.1.2)
48 | - ["Enhanced search" by Enrico](https://www.sveltelab.dev/7qfujs8m2rc51ew)
49 | - ["Bound functions" by Enrico](https://svelte.dev/repl/fd20327024254103a8acafe336277989?version=4.2.8)
50 |
--------------------------------------------------------------------------------
/src/routes/(no-layout)/hamburger-menu/HamburgerNav.svelte:
--------------------------------------------------------------------------------
1 |
28 |
29 |
30 |
47 |
48 |
Fancy restaurant
49 |
50 |
56 |
61 |
62 |
63 |
64 |
170 |
--------------------------------------------------------------------------------
/src/routes/(common-layout)/dynamic-form/+page.svelte:
--------------------------------------------------------------------------------
1 |
42 |
43 |
44 | Dynamic form!
45 |
46 |
47 | Dynamic form
48 |
49 | {#if dev}
50 | {JSON.stringify(form)}
51 | {/if}
52 |
53 |
62 | {#if form?.success === true}
63 |
Review
64 |
65 | {#each form.items as [key, value], i}
66 | {#if key === 'petname'}
67 |
68 | Pet name {i}: {value}
69 |
70 | {:else}
71 | {key}: {value}
72 | {/if}
73 | {/each}
74 |
75 | {/if}
76 |
77 | {#if form?.success === false}
78 |
There were errors in your submission
79 |
80 | {#each Object.entries(errors) as [fieldname, message]}
81 | {message}
82 | {/each}
83 |
84 | {/if}
85 |
86 |
87 |
136 |
137 |
160 |
--------------------------------------------------------------------------------
/_examples/webcomponents/dist/Card.js:
--------------------------------------------------------------------------------
1 | import { c as y, S as z, i as A, f as j, s as D, a as F, b as G, B as H, e as g, t as k, d as b, g as I, h, j as E, k as c, m as J, l as q, u as K, n as L, o as M, p as B, q as C, r as O, v as N, w as P } from "./Button-d256b521.js";
2 | function Q(s) {
3 | F(s, "svelte-1pwxk4p", "section.svelte-1pwxk4p{--padding:2rem;box-shadow:0 0 1rem 0 rgba(0 0 0 / 0.3);padding:var(--padding);font-family:sans-serif;border-radius:0.5rem}hr.svelte-1pwxk4p{margin-inline:calc(-1 * var(--padding));margin-block:var(--padding)}h1.svelte-1pwxk4p{margin:0}div.svelte-1pwxk4p{margin-block-start:var(--padding)}");
4 | }
5 | function R(s) {
6 | let e;
7 | return {
8 | c() {
9 | e = k("Select");
10 | },
11 | m(l, u) {
12 | E(l, e, u);
13 | },
14 | d(l) {
15 | l && O(e);
16 | }
17 | };
18 | }
19 | function T(s) {
20 | var $;
21 | let e, l, u, p = (
22 | /*complex*/
23 | (($ = s[1]) == null ? void 0 : $.number) + ""
24 | ), f, m, d, a, w, _, i, o;
25 | const v = (
26 | /*#slots*/
27 | s[2].default
28 | ), n = G(
29 | v,
30 | s,
31 | /*$$scope*/
32 | s[4],
33 | null
34 | );
35 | return i = new H({
36 | props: {
37 | $$slots: { default: [R] },
38 | $$scope: { ctx: s }
39 | }
40 | }), i.$on(
41 | "click",
42 | /*click_handler*/
43 | s[3]
44 | ), {
45 | c() {
46 | e = g("section"), l = g("h1"), u = k(
47 | /*title*/
48 | s[0]
49 | ), f = k(p), m = b(), d = g("hr"), a = b(), n && n.c(), w = b(), _ = g("div"), I(i.$$.fragment), h(l, "class", "svelte-1pwxk4p"), h(d, "class", "svelte-1pwxk4p"), h(_, "class", "svelte-1pwxk4p"), h(e, "class", "svelte-1pwxk4p");
50 | },
51 | m(t, r) {
52 | E(t, e, r), c(e, l), c(l, u), c(l, f), c(e, m), c(e, d), c(e, a), n && n.m(e, null), c(e, w), c(e, _), J(i, _, null), o = !0;
53 | },
54 | p(t, [r]) {
55 | var S;
56 | (!o || r & /*title*/
57 | 1) && q(
58 | u,
59 | /*title*/
60 | t[0]
61 | ), (!o || r & /*complex*/
62 | 2) && p !== (p = /*complex*/
63 | ((S = t[1]) == null ? void 0 : S.number) + "") && q(f, p), n && n.p && (!o || r & /*$$scope*/
64 | 16) && K(
65 | n,
66 | v,
67 | t,
68 | /*$$scope*/
69 | t[4],
70 | o ? M(
71 | v,
72 | /*$$scope*/
73 | t[4],
74 | r,
75 | null
76 | ) : L(
77 | /*$$scope*/
78 | t[4]
79 | ),
80 | null
81 | );
82 | const x = {};
83 | r & /*$$scope*/
84 | 16 && (x.$$scope = { dirty: r, ctx: t }), i.$set(x);
85 | },
86 | i(t) {
87 | o || (B(n, t), B(i.$$.fragment, t), o = !0);
88 | },
89 | o(t) {
90 | C(n, t), C(i.$$.fragment, t), o = !1;
91 | },
92 | d(t) {
93 | t && O(e), n && n.d(t), N(i);
94 | }
95 | };
96 | }
97 | function U(s, e, l) {
98 | let { $$slots: u = {}, $$scope: p } = e, { title: f = "" } = e, { complex: m } = e;
99 | function d(a) {
100 | P.call(this, s, a);
101 | }
102 | return s.$$set = (a) => {
103 | "title" in a && l(0, f = a.title), "complex" in a && l(1, m = a.complex), "$$scope" in a && l(4, p = a.$$scope);
104 | }, [f, m, u, d, p];
105 | }
106 | class V extends z {
107 | constructor(e) {
108 | super(), A(this, e, U, T, D, { title: 0, complex: 1 }, Q);
109 | }
110 | get title() {
111 | return this.$$.ctx[0];
112 | }
113 | set title(e) {
114 | this.$$set({ title: e }), j();
115 | }
116 | get complex() {
117 | return this.$$.ctx[1];
118 | }
119 | set complex(e) {
120 | this.$$set({ complex: e }), j();
121 | }
122 | }
123 | customElements.define("twis-card", y(V, { title: {}, complex: { type: "Object", reflect: !0 } }, ["default"], [], !0));
124 | export {
125 | V as default
126 | };
127 |
--------------------------------------------------------------------------------
/src/lib/mvp.css:
--------------------------------------------------------------------------------
1 | /* MVP.css v1.12 - https://github.com/andybrewer/mvp */
2 |
3 | :root {
4 | --active-brightness: 0.85;
5 | --border-radius: 5px;
6 | --box-shadow: 2px 2px 10px;
7 | --color-accent: #118bee15;
8 | --color-bg: #fff;
9 | --color-bg-secondary: #e9e9e9;
10 | --color-link: #118bee;
11 | --color-secondary: #920de9;
12 | --color-secondary-accent: #920de90b;
13 | --color-shadow: #f4f4f4;
14 | --color-table: #118bee;
15 | --color-text: #000;
16 | --color-text-secondary: #999;
17 | --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
18 | --hover-brightness: 1.2;
19 | --justify-important: center;
20 | --justify-normal: left;
21 | --line-height: 1.5;
22 | --width-card: 285px;
23 | --width-card-medium: 460px;
24 | --width-card-wide: 800px;
25 | --width-content: 1080px;
26 | }
27 |
28 | @media (prefers-color-scheme: dark) {
29 | :root[color-mode="user"] {
30 | --color-accent: #0097fc4f;
31 | --color-bg: #333;
32 | --color-bg-secondary: #555;
33 | --color-link: #0097fc;
34 | --color-secondary: #e20de9;
35 | --color-secondary-accent: #e20de94f;
36 | --color-shadow: #bbbbbb20;
37 | --color-table: #0097fc;
38 | --color-text: #f7f7f7;
39 | --color-text-secondary: #aaa;
40 | }
41 | }
42 |
43 | /* Layout */
44 | article aside {
45 | background: var(--color-secondary-accent);
46 | border-left: 4px solid var(--color-secondary);
47 | padding: 0.01rem 0.8rem;
48 | }
49 |
50 | body {
51 | background: var(--color-bg);
52 | color: var(--color-text);
53 | font-family: var(--font-family);
54 | line-height: var(--line-height);
55 | margin: 0;
56 | overflow-x: hidden;
57 | padding: 0;
58 | }
59 |
60 | footer,
61 | header,
62 | main {
63 | margin: 0 auto;
64 | max-width: var(--width-content);
65 | padding: 3rem 1rem;
66 | }
67 |
68 | hr {
69 | background-color: var(--color-bg-secondary);
70 | border: none;
71 | height: 1px;
72 | margin: 4rem 0;
73 | width: 100%;
74 | }
75 |
76 | section {
77 | display: flex;
78 | flex-wrap: wrap;
79 | justify-content: var(--justify-important);
80 | }
81 |
82 | section img,
83 | article img {
84 | max-width: 100%;
85 | }
86 |
87 | section pre {
88 | overflow: auto;
89 | }
90 |
91 | section aside {
92 | border: 1px solid var(--color-bg-secondary);
93 | border-radius: var(--border-radius);
94 | box-shadow: var(--box-shadow) var(--color-shadow);
95 | margin: 1rem;
96 | padding: 1.25rem;
97 | width: var(--width-card);
98 | }
99 |
100 | section aside:hover {
101 | box-shadow: var(--box-shadow) var(--color-bg-secondary);
102 | }
103 |
104 | [hidden] {
105 | display: none;
106 | }
107 |
108 | /* Headers */
109 | article header,
110 | div header,
111 | main header {
112 | padding-top: 0;
113 | }
114 |
115 | header {
116 | text-align: var(--justify-important);
117 | }
118 |
119 | header a b,
120 | header a em,
121 | header a i,
122 | header a strong {
123 | margin-left: 0.5rem;
124 | margin-right: 0.5rem;
125 | }
126 |
127 | header nav img {
128 | margin: 1rem 0;
129 | }
130 |
131 | section header {
132 | padding-top: 0;
133 | width: 100%;
134 | }
135 |
136 | /* Nav */
137 | nav {
138 | align-items: center;
139 | display: flex;
140 | font-weight: bold;
141 | justify-content: space-between;
142 | margin-bottom: 7rem;
143 | }
144 |
145 | nav ul {
146 | list-style: none;
147 | padding: 0;
148 | }
149 |
150 | nav ul li {
151 | display: inline-block;
152 | margin: 0 0.5rem;
153 | position: relative;
154 | text-align: left;
155 | }
156 |
157 | /* Nav Dropdown */
158 | nav ul li:hover ul {
159 | display: block;
160 | }
161 |
162 | nav ul li ul {
163 | background: var(--color-bg);
164 | border: 1px solid var(--color-bg-secondary);
165 | border-radius: var(--border-radius);
166 | box-shadow: var(--box-shadow) var(--color-shadow);
167 | display: none;
168 | height: auto;
169 | left: -2px;
170 | padding: .5rem 1rem;
171 | position: absolute;
172 | top: 1.7rem;
173 | white-space: nowrap;
174 | width: auto;
175 | z-index: 1;
176 | }
177 |
178 | nav ul li ul::before {
179 | /* fill gap above to make mousing over them easier */
180 | content: "";
181 | position: absolute;
182 | left: 0;
183 | right: 0;
184 | top: -0.5rem;
185 | height: 0.5rem;
186 | }
187 |
188 | nav ul li ul li,
189 | nav ul li ul li a {
190 | display: block;
191 | }
192 |
193 | /* Typography */
194 | code,
195 | samp {
196 | background-color: var(--color-accent);
197 | border-radius: var(--border-radius);
198 | color: var(--color-text);
199 | display: inline-block;
200 | margin: 0 0.1rem;
201 | padding: 0 0.5rem;
202 | }
203 |
204 | details {
205 | margin: 1.3rem 0;
206 | }
207 |
208 | details summary {
209 | font-weight: bold;
210 | cursor: pointer;
211 | }
212 |
213 | h1,
214 | h2,
215 | h3,
216 | h4,
217 | h5,
218 | h6 {
219 | line-height: var(--line-height);
220 | }
221 |
222 | mark {
223 | padding: 0.1rem;
224 | }
225 |
226 | ol li,
227 | ul li {
228 | padding: 0.2rem 0;
229 | }
230 |
231 | p {
232 | margin: 0.75rem 0;
233 | padding: 0;
234 | width: 100%;
235 | }
236 |
237 | pre {
238 | margin: 1rem 0;
239 | max-width: var(--width-card-wide);
240 | padding: 1rem 0;
241 | }
242 |
243 | pre code,
244 | pre samp {
245 | display: block;
246 | max-width: var(--width-card-wide);
247 | padding: 0.5rem 2rem;
248 | white-space: pre-wrap;
249 | }
250 |
251 | small {
252 | color: var(--color-text-secondary);
253 | }
254 |
255 | sup {
256 | background-color: var(--color-secondary);
257 | border-radius: var(--border-radius);
258 | color: var(--color-bg);
259 | font-size: xx-small;
260 | font-weight: bold;
261 | margin: 0.2rem;
262 | padding: 0.2rem 0.3rem;
263 | position: relative;
264 | top: -2px;
265 | }
266 |
267 | /* Links */
268 | a {
269 | color: var(--color-link);
270 | display: inline-block;
271 | font-weight: bold;
272 | text-decoration: none;
273 | }
274 |
275 | a:active {
276 | filter: brightness(var(--active-brightness));
277 | text-decoration: underline;
278 | }
279 |
280 | a:hover {
281 | filter: brightness(var(--hover-brightness));
282 | text-decoration: underline;
283 | }
284 |
285 | a b,
286 | a em,
287 | a i,
288 | a strong,
289 | button,
290 | input[type="submit"] {
291 | border-radius: var(--border-radius);
292 | display: inline-block;
293 | font-size: medium;
294 | font-weight: bold;
295 | line-height: var(--line-height);
296 | margin: 0.5rem 0;
297 | padding: 1rem 2rem;
298 | }
299 |
300 | button,
301 | input[type="submit"] {
302 | font-family: var(--font-family);
303 | }
304 |
305 | button:active,
306 | input[type="submit"]:active {
307 | filter: brightness(var(--active-brightness));
308 | }
309 |
310 | button:hover,
311 | input[type="submit"]:hover {
312 | cursor: pointer;
313 | filter: brightness(var(--hover-brightness));
314 | }
315 |
316 | a b,
317 | a strong,
318 | button,
319 | input[type="submit"] {
320 | background-color: var(--color-link);
321 | border: 2px solid var(--color-link);
322 | color: var(--color-bg);
323 | }
324 |
325 | a em,
326 | a i {
327 | border: 2px solid var(--color-link);
328 | border-radius: var(--border-radius);
329 | color: var(--color-link);
330 | display: inline-block;
331 | padding: 1rem 2rem;
332 | }
333 |
334 | article aside a {
335 | color: var(--color-secondary);
336 | }
337 |
338 | /* Images */
339 | figure {
340 | margin: 0;
341 | padding: 0;
342 | }
343 |
344 | figure img {
345 | max-width: 100%;
346 | }
347 |
348 | figure figcaption {
349 | color: var(--color-text-secondary);
350 | }
351 |
352 | /* Forms */
353 | button:disabled,
354 | input:disabled {
355 | background: var(--color-bg-secondary);
356 | border-color: var(--color-bg-secondary);
357 | color: var(--color-text-secondary);
358 | cursor: not-allowed;
359 | }
360 |
361 | button[disabled]:hover,
362 | input[type="submit"][disabled]:hover {
363 | filter: none;
364 | }
365 |
366 | form {
367 | border: 1px solid var(--color-bg-secondary);
368 | border-radius: var(--border-radius);
369 | box-shadow: var(--box-shadow) var(--color-shadow);
370 | display: block;
371 | max-width: var(--width-card-wide);
372 | min-width: var(--width-card);
373 | padding: 1.5rem;
374 | text-align: var(--justify-normal);
375 | }
376 |
377 | form header {
378 | margin: 1.5rem 0;
379 | padding: 1.5rem 0;
380 | }
381 |
382 | input,
383 | label,
384 | select,
385 | textarea {
386 | display: block;
387 | font-size: inherit;
388 | max-width: var(--width-card-wide);
389 | }
390 |
391 | input[type="checkbox"],
392 | input[type="radio"] {
393 | display: inline-block;
394 | }
395 |
396 | input[type="checkbox"]+label,
397 | input[type="radio"]+label {
398 | display: inline-block;
399 | font-weight: normal;
400 | position: relative;
401 | top: 1px;
402 | }
403 |
404 | input[type="range"] {
405 | padding: 0.4rem 0;
406 | }
407 |
408 | input,
409 | select,
410 | textarea {
411 | border: 1px solid var(--color-bg-secondary);
412 | border-radius: var(--border-radius);
413 | margin-bottom: 1rem;
414 | padding: 0.4rem 0.8rem;
415 | }
416 |
417 | input[type="text"],
418 | textarea {
419 | width: calc(100% - 1.6rem);
420 | }
421 |
422 | input[readonly],
423 | textarea[readonly] {
424 | background-color: var(--color-bg-secondary);
425 | }
426 |
427 | label {
428 | font-weight: bold;
429 | margin-bottom: 0.2rem;
430 | }
431 |
432 | /* Popups */
433 | dialog {
434 | border: 1px solid var(--color-bg-secondary);
435 | border-radius: var(--border-radius);
436 | box-shadow: var(--box-shadow) var(--color-shadow);
437 | position: fixed;
438 | top: 50%;
439 | left: 50%;
440 | transform: translate(-50%, -50%);
441 | width: 50%;
442 | z-index: 999;
443 | }
444 |
445 | /* Tables */
446 | table {
447 | border: 1px solid var(--color-bg-secondary);
448 | border-radius: var(--border-radius);
449 | border-spacing: 0;
450 | display: inline-block;
451 | max-width: 100%;
452 | overflow-x: auto;
453 | padding: 0;
454 | white-space: nowrap;
455 | }
456 |
457 | table td,
458 | table th,
459 | table tr {
460 | padding: 0.4rem 0.8rem;
461 | text-align: var(--justify-important);
462 | }
463 |
464 | table thead {
465 | background-color: var(--color-table);
466 | border-collapse: collapse;
467 | border-radius: var(--border-radius);
468 | color: var(--color-bg);
469 | margin: 0;
470 | padding: 0;
471 | }
472 |
473 | table thead th:first-child {
474 | border-top-left-radius: var(--border-radius);
475 | }
476 |
477 | table thead th:last-child {
478 | border-top-right-radius: var(--border-radius);
479 | }
480 |
481 | table thead th:first-child,
482 | table tr td:first-child {
483 | text-align: var(--justify-normal);
484 | }
485 |
486 | table tr:nth-child(even) {
487 | background-color: var(--color-accent);
488 | }
489 |
490 | /* Quotes */
491 | blockquote {
492 | display: block;
493 | font-size: x-large;
494 | line-height: var(--line-height);
495 | margin: 1rem auto;
496 | max-width: var(--width-card-medium);
497 | padding: 1.5rem 1rem;
498 | text-align: var(--justify-important);
499 | }
500 |
501 | blockquote footer {
502 | color: var(--color-text-secondary);
503 | display: block;
504 | font-size: small;
505 | line-height: var(--line-height);
506 | padding: 1.5rem 0;
507 | }
508 |
--------------------------------------------------------------------------------
/_examples/webcomponents/dist/Button-d256b521.js:
--------------------------------------------------------------------------------
1 | var z = Object.defineProperty;
2 | var F = (e, t, n) => t in e ? z(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3 | var l = (e, t, n) => (F(e, typeof t != "symbol" ? t + "" : t, n), n);
4 | function x() {
5 | }
6 | function b(e, t) {
7 | for (const n in t)
8 | e[n] = t[n];
9 | return (
10 | /** @type {T & S} */
11 | e
12 | );
13 | }
14 | function T(e) {
15 | return e();
16 | }
17 | function S() {
18 | return /* @__PURE__ */ Object.create(null);
19 | }
20 | function y(e) {
21 | e.forEach(T);
22 | }
23 | function D(e) {
24 | return typeof e == "function";
25 | }
26 | function G(e, t) {
27 | return e != e ? t == t : e !== t || e && typeof e == "object" || typeof e == "function";
28 | }
29 | function K(e) {
30 | return Object.keys(e).length === 0;
31 | }
32 | function Q(e, t, n, s) {
33 | if (e) {
34 | const r = I(e, t, n, s);
35 | return e[0](r);
36 | }
37 | }
38 | function I(e, t, n, s) {
39 | return e[1] && s ? b(n.ctx.slice(), e[1](s(t))) : n.ctx;
40 | }
41 | function W(e, t, n, s) {
42 | if (e[2] && s) {
43 | const r = e[2](s(n));
44 | if (t.dirty === void 0)
45 | return r;
46 | if (typeof r == "object") {
47 | const i = [], o = Math.max(t.dirty.length, r.length);
48 | for (let u = 0; u < o; u += 1)
49 | i[u] = t.dirty[u] | r[u];
50 | return i;
51 | }
52 | return t.dirty | r;
53 | }
54 | return t.dirty;
55 | }
56 | function X(e, t, n, s, r, i) {
57 | if (r) {
58 | const o = I(t, n, s, i);
59 | e.p(o, r);
60 | }
61 | }
62 | function Y(e) {
63 | if (e.ctx.length > 32) {
64 | const t = [], n = e.ctx.length / 32;
65 | for (let s = 0; s < n; s++)
66 | t[s] = -1;
67 | return t;
68 | }
69 | return -1;
70 | }
71 | function Z(e) {
72 | const t = {};
73 | for (const n in e)
74 | n[0] !== "$" && (t[n] = e[n]);
75 | return t;
76 | }
77 | function v(e, t) {
78 | const n = {};
79 | t = new Set(t);
80 | for (const s in e)
81 | !t.has(s) && s[0] !== "$" && (n[s] = e[s]);
82 | return n;
83 | }
84 | function tt(e, t) {
85 | e.appendChild(t);
86 | }
87 | function et(e, t, n) {
88 | const s = nt(e);
89 | if (!s.getElementById(t)) {
90 | const r = j("style");
91 | r.id = t, r.textContent = n, st(s, r);
92 | }
93 | }
94 | function nt(e) {
95 | if (!e)
96 | return document;
97 | const t = e.getRootNode ? e.getRootNode() : e.ownerDocument;
98 | return t && /** @type {ShadowRoot} */
99 | t.host ? (
100 | /** @type {ShadowRoot} */
101 | t
102 | ) : e.ownerDocument;
103 | }
104 | function st(e, t) {
105 | return tt(
106 | /** @type {Document} */
107 | e.head || e,
108 | t
109 | ), t.sheet;
110 | }
111 | function H(e, t, n) {
112 | e.insertBefore(t, n || null);
113 | }
114 | function O(e) {
115 | e.parentNode && e.parentNode.removeChild(e);
116 | }
117 | function j(e) {
118 | return document.createElement(e);
119 | }
120 | function rt(e) {
121 | return document.createTextNode(e);
122 | }
123 | function Nt() {
124 | return rt(" ");
125 | }
126 | function ot(e, t, n, s) {
127 | return e.addEventListener(t, n, s), () => e.removeEventListener(t, n, s);
128 | }
129 | function J(e, t, n) {
130 | n == null ? e.removeAttribute(t) : e.getAttribute(t) !== n && e.setAttribute(t, n);
131 | }
132 | const it = ["width", "height"];
133 | function P(e, t) {
134 | const n = Object.getOwnPropertyDescriptors(e.__proto__);
135 | for (const s in t)
136 | t[s] == null ? e.removeAttribute(s) : s === "style" ? e.style.cssText = t[s] : s === "__value" ? e.value = e[s] = t[s] : n[s] && n[s].set && it.indexOf(s) === -1 ? e[s] = t[s] : J(e, s, t[s]);
137 | }
138 | function ct(e) {
139 | return Array.from(e.childNodes);
140 | }
141 | function Ct(e, t) {
142 | t = "" + t, e.data !== t && (e.data = /** @type {string} */
143 | t);
144 | }
145 | function B(e, t, n) {
146 | e.classList.toggle(t, !!n);
147 | }
148 | function ut(e) {
149 | const t = {};
150 | return e.childNodes.forEach(
151 | /** @param {Element} node */
152 | (n) => {
153 | t[n.slot || "default"] = !0;
154 | }
155 | ), t;
156 | }
157 | let A;
158 | function g(e) {
159 | A = e;
160 | }
161 | function ft(e, t) {
162 | const n = e.$$.callbacks[t.type];
163 | n && n.slice().forEach((s) => s.call(this, t));
164 | }
165 | const h = [], M = [];
166 | let _ = [];
167 | const R = [], lt = /* @__PURE__ */ Promise.resolve();
168 | let E = !1;
169 | function at() {
170 | E || (E = !0, lt.then(V));
171 | }
172 | function k(e) {
173 | _.push(e);
174 | }
175 | const w = /* @__PURE__ */ new Set();
176 | let d = 0;
177 | function V() {
178 | if (d !== 0)
179 | return;
180 | const e = A;
181 | do {
182 | try {
183 | for (; d < h.length; ) {
184 | const t = h[d];
185 | d++, g(t), $t(t.$$);
186 | }
187 | } catch (t) {
188 | throw h.length = 0, d = 0, t;
189 | }
190 | for (g(null), h.length = 0, d = 0; M.length; )
191 | M.pop()();
192 | for (let t = 0; t < _.length; t += 1) {
193 | const n = _[t];
194 | w.has(n) || (w.add(n), n());
195 | }
196 | _.length = 0;
197 | } while (h.length);
198 | for (; R.length; )
199 | R.pop()();
200 | E = !1, w.clear(), g(e);
201 | }
202 | function $t(e) {
203 | if (e.fragment !== null) {
204 | e.update(), y(e.before_update);
205 | const t = e.dirty;
206 | e.dirty = [-1], e.fragment && e.fragment.p(e.ctx, t), e.after_update.forEach(k);
207 | }
208 | }
209 | function dt(e) {
210 | const t = [], n = [];
211 | _.forEach((s) => e.indexOf(s) === -1 ? t.push(s) : n.push(s)), n.forEach((s) => s()), _ = t;
212 | }
213 | const m = /* @__PURE__ */ new Set();
214 | let ht;
215 | function q(e, t) {
216 | e && e.i && (m.delete(e), e.i(t));
217 | }
218 | function _t(e, t, n, s) {
219 | if (e && e.o) {
220 | if (m.has(e))
221 | return;
222 | m.add(e), ht.c.push(() => {
223 | m.delete(e), s && (n && e.d(1), s());
224 | }), e.o(t);
225 | } else
226 | s && s();
227 | }
228 | function gt(e, t) {
229 | const n = {}, s = {}, r = { $$scope: 1 };
230 | let i = e.length;
231 | for (; i--; ) {
232 | const o = e[i], u = t[i];
233 | if (u) {
234 | for (const f in o)
235 | f in u || (s[f] = 1);
236 | for (const f in u)
237 | r[f] || (n[f] = u[f], r[f] = 1);
238 | e[i] = u;
239 | } else
240 | for (const f in o)
241 | r[f] = 1;
242 | }
243 | for (const o in s)
244 | o in n || (n[o] = void 0);
245 | return n;
246 | }
247 | function St(e) {
248 | e && e.c();
249 | }
250 | function mt(e, t, n) {
251 | const { fragment: s, after_update: r } = e.$$;
252 | s && s.m(t, n), k(() => {
253 | const i = e.$$.on_mount.map(T).filter(D);
254 | e.$$.on_destroy ? e.$$.on_destroy.push(...i) : y(i), e.$$.on_mount = [];
255 | }), r.forEach(k);
256 | }
257 | function pt(e, t) {
258 | const n = e.$$;
259 | n.fragment !== null && (dt(n.after_update), y(n.on_destroy), n.fragment && n.fragment.d(t), n.on_destroy = n.fragment = null, n.ctx = []);
260 | }
261 | function bt(e, t) {
262 | e.$$.dirty[0] === -1 && (h.push(e), at(), e.$$.dirty.fill(0)), e.$$.dirty[t / 31 | 0] |= 1 << t % 31;
263 | }
264 | function yt(e, t, n, s, r, i, o, u = [-1]) {
265 | const f = A;
266 | g(e);
267 | const c = e.$$ = {
268 | fragment: null,
269 | ctx: [],
270 | // state
271 | props: i,
272 | update: x,
273 | not_equal: r,
274 | bound: S(),
275 | // lifecycle
276 | on_mount: [],
277 | on_destroy: [],
278 | on_disconnect: [],
279 | before_update: [],
280 | after_update: [],
281 | context: new Map(t.context || (f ? f.$$.context : [])),
282 | // everything else
283 | callbacks: S(),
284 | dirty: u,
285 | skip_bound: !1,
286 | root: t.target || f.$$.root
287 | };
288 | o && o(c.root);
289 | let a = !1;
290 | if (c.ctx = n ? n(e, t.props || {}, ($, L, ...N) => {
291 | const C = N.length ? N[0] : L;
292 | return c.ctx && r(c.ctx[$], c.ctx[$] = C) && (!c.skip_bound && c.bound[$] && c.bound[$](C), a && bt(e, $)), L;
293 | }) : [], c.update(), a = !0, y(c.before_update), c.fragment = s ? s(c.ctx) : !1, t.target) {
294 | if (t.hydrate) {
295 | const $ = ct(t.target);
296 | c.fragment && c.fragment.l($), $.forEach(O);
297 | } else
298 | c.fragment && c.fragment.c();
299 | t.intro && q(e.$$.fragment), mt(e, t.target, t.anchor), V();
300 | }
301 | g(f);
302 | }
303 | let U;
304 | typeof HTMLElement == "function" && (U = class extends HTMLElement {
305 | constructor(t, n, s) {
306 | super();
307 | /** The Svelte component constructor */
308 | l(this, "$$ctor");
309 | /** Slots */
310 | l(this, "$$s");
311 | /** The Svelte component instance */
312 | l(this, "$$c");
313 | /** Whether or not the custom element is connected */
314 | l(this, "$$cn", !1);
315 | /** Component props data */
316 | l(this, "$$d", {});
317 | /** `true` if currently in the process of reflecting component props back to attributes */
318 | l(this, "$$r", !1);
319 | /** @type {Record} Props definition (name, reflected, type etc) */
320 | l(this, "$$p_d", {});
321 | /** @type {Record} Event listeners */
322 | l(this, "$$l", {});
323 | /** @type {Map} Event listener unsubscribe functions */
324 | l(this, "$$l_u", /* @__PURE__ */ new Map());
325 | this.$$ctor = t, this.$$s = n, s && this.attachShadow({ mode: "open" });
326 | }
327 | addEventListener(t, n, s) {
328 | if (this.$$l[t] = this.$$l[t] || [], this.$$l[t].push(n), this.$$c) {
329 | const r = this.$$c.$on(t, n);
330 | this.$$l_u.set(n, r);
331 | }
332 | super.addEventListener(t, n, s);
333 | }
334 | removeEventListener(t, n, s) {
335 | if (super.removeEventListener(t, n, s), this.$$c) {
336 | const r = this.$$l_u.get(n);
337 | r && (r(), this.$$l_u.delete(n));
338 | }
339 | }
340 | async connectedCallback() {
341 | if (this.$$cn = !0, !this.$$c) {
342 | let t = function(i) {
343 | return () => {
344 | let o;
345 | return {
346 | c: function() {
347 | o = j("slot"), i !== "default" && J(o, "name", i);
348 | },
349 | /**
350 | * @param {HTMLElement} target
351 | * @param {HTMLElement} [anchor]
352 | */
353 | m: function(c, a) {
354 | H(c, o, a);
355 | },
356 | d: function(c) {
357 | c && O(o);
358 | }
359 | };
360 | };
361 | };
362 | if (await Promise.resolve(), !this.$$cn)
363 | return;
364 | const n = {}, s = ut(this);
365 | for (const i of this.$$s)
366 | i in s && (n[i] = [t(i)]);
367 | for (const i of this.attributes) {
368 | const o = this.$$g_p(i.name);
369 | o in this.$$d || (this.$$d[o] = p(o, i.value, this.$$p_d, "toProp"));
370 | }
371 | this.$$c = new this.$$ctor({
372 | target: this.shadowRoot || this,
373 | props: {
374 | ...this.$$d,
375 | $$slots: n,
376 | $$scope: {
377 | ctx: []
378 | }
379 | }
380 | });
381 | const r = () => {
382 | this.$$r = !0;
383 | for (const i in this.$$p_d)
384 | if (this.$$d[i] = this.$$c.$$.ctx[this.$$c.$$.props[i]], this.$$p_d[i].reflect) {
385 | const o = p(
386 | i,
387 | this.$$d[i],
388 | this.$$p_d,
389 | "toAttribute"
390 | );
391 | o == null ? this.removeAttribute(i) : this.setAttribute(this.$$p_d[i].attribute || i, o);
392 | }
393 | this.$$r = !1;
394 | };
395 | this.$$c.$$.after_update.push(r), r();
396 | for (const i in this.$$l)
397 | for (const o of this.$$l[i]) {
398 | const u = this.$$c.$on(i, o);
399 | this.$$l_u.set(o, u);
400 | }
401 | this.$$l = {};
402 | }
403 | }
404 | // We don't need this when working within Svelte code, but for compatibility of people using this outside of Svelte
405 | // and setting attributes through setAttribute etc, this is helpful
406 | attributeChangedCallback(t, n, s) {
407 | var r;
408 | this.$$r || (t = this.$$g_p(t), this.$$d[t] = p(t, s, this.$$p_d, "toProp"), (r = this.$$c) == null || r.$set({ [t]: this.$$d[t] }));
409 | }
410 | disconnectedCallback() {
411 | this.$$cn = !1, Promise.resolve().then(() => {
412 | this.$$cn || (this.$$c.$destroy(), this.$$c = void 0);
413 | });
414 | }
415 | $$g_p(t) {
416 | return Object.keys(this.$$p_d).find(
417 | (n) => this.$$p_d[n].attribute === t || !this.$$p_d[n].attribute && n.toLowerCase() === t
418 | ) || t;
419 | }
420 | });
421 | function p(e, t, n, s) {
422 | var i;
423 | const r = (i = n[e]) == null ? void 0 : i.type;
424 | if (t = r === "Boolean" && typeof t != "boolean" ? t != null : t, !s || !n[e])
425 | return t;
426 | if (s === "toAttribute")
427 | switch (r) {
428 | case "Object":
429 | case "Array":
430 | return t == null ? null : JSON.stringify(t);
431 | case "Boolean":
432 | return t ? "" : null;
433 | case "Number":
434 | return t ?? null;
435 | default:
436 | return t;
437 | }
438 | else
439 | switch (r) {
440 | case "Object":
441 | case "Array":
442 | return t && JSON.parse(t);
443 | case "Boolean":
444 | return t;
445 | case "Number":
446 | return t != null ? +t : t;
447 | default:
448 | return t;
449 | }
450 | }
451 | function wt(e, t, n, s, r, i) {
452 | let o = class extends U {
453 | constructor() {
454 | super(e, n, r), this.$$p_d = t;
455 | }
456 | static get observedAttributes() {
457 | return Object.keys(t).map(
458 | (u) => (t[u].attribute || u).toLowerCase()
459 | );
460 | }
461 | };
462 | return Object.keys(t).forEach((u) => {
463 | Object.defineProperty(o.prototype, u, {
464 | get() {
465 | return this.$$c && u in this.$$c ? this.$$c[u] : this.$$d[u];
466 | },
467 | set(f) {
468 | var c;
469 | f = p(u, f, t), this.$$d[u] = f, (c = this.$$c) == null || c.$set({ [u]: f });
470 | }
471 | });
472 | }), s.forEach((u) => {
473 | Object.defineProperty(o.prototype, u, {
474 | get() {
475 | var f;
476 | return (f = this.$$c) == null ? void 0 : f[u];
477 | }
478 | });
479 | }), i && (o = i(o)), e.element = /** @type {any} */
480 | o, o;
481 | }
482 | class xt {
483 | constructor() {
484 | /**
485 | * ### PRIVATE API
486 | *
487 | * Do not use, may change at any time
488 | *
489 | * @type {any}
490 | */
491 | l(this, "$$");
492 | /**
493 | * ### PRIVATE API
494 | *
495 | * Do not use, may change at any time
496 | *
497 | * @type {any}
498 | */
499 | l(this, "$$set");
500 | }
501 | /** @returns {void} */
502 | $destroy() {
503 | pt(this, 1), this.$destroy = x;
504 | }
505 | /**
506 | * @template {Extract} K
507 | * @param {K} type
508 | * @param {((e: Events[K]) => void) | null | undefined} callback
509 | * @returns {() => void}
510 | */
511 | $on(t, n) {
512 | if (!D(n))
513 | return x;
514 | const s = this.$$.callbacks[t] || (this.$$.callbacks[t] = []);
515 | return s.push(n), () => {
516 | const r = s.indexOf(n);
517 | r !== -1 && s.splice(r, 1);
518 | };
519 | }
520 | /**
521 | * @param {Partial} props
522 | * @returns {void}
523 | */
524 | $set(t) {
525 | this.$$set && !K(t) && (this.$$.skip_bound = !0, this.$$set(t), this.$$.skip_bound = !1);
526 | }
527 | }
528 | const Et = "4";
529 | typeof window < "u" && (window.__svelte || (window.__svelte = { v: /* @__PURE__ */ new Set() })).v.add(Et);
530 | function kt(e) {
531 | et(e, "svelte-1i5hxsb", "button.svelte-1i5hxsb{background-color:lightgreen;padding:0.5rem 1rem;border-radius:0.5rem;font-weight:bold;border:0}");
532 | }
533 | function Ot(e) {
534 | let t, n, s, r;
535 | const i = (
536 | /*#slots*/
537 | e[2].default
538 | ), o = Q(
539 | i,
540 | e,
541 | /*$$scope*/
542 | e[1],
543 | null
544 | );
545 | let u = [
546 | /*$$restProps*/
547 | e[0]
548 | ], f = {};
549 | for (let c = 0; c < u.length; c += 1)
550 | f = b(f, u[c]);
551 | return {
552 | c() {
553 | t = j("button"), o && o.c(), P(t, f), B(t, "svelte-1i5hxsb", !0);
554 | },
555 | m(c, a) {
556 | H(c, t, a), o && o.m(t, null), t.autofocus && t.focus(), n = !0, s || (r = ot(
557 | t,
558 | "click",
559 | /*click_handler*/
560 | e[3]
561 | ), s = !0);
562 | },
563 | p(c, [a]) {
564 | o && o.p && (!n || a & /*$$scope*/
565 | 2) && X(
566 | o,
567 | i,
568 | c,
569 | /*$$scope*/
570 | c[1],
571 | n ? W(
572 | i,
573 | /*$$scope*/
574 | c[1],
575 | a,
576 | null
577 | ) : Y(
578 | /*$$scope*/
579 | c[1]
580 | ),
581 | null
582 | ), P(t, f = gt(u, [a & /*$$restProps*/
583 | 1 && /*$$restProps*/
584 | c[0]])), B(t, "svelte-1i5hxsb", !0);
585 | },
586 | i(c) {
587 | n || (q(o, c), n = !0);
588 | },
589 | o(c) {
590 | _t(o, c), n = !1;
591 | },
592 | d(c) {
593 | c && O(t), o && o.d(c), s = !1, r();
594 | }
595 | };
596 | }
597 | function jt(e, t, n) {
598 | const s = [];
599 | let r = v(t, s), { $$slots: i = {}, $$scope: o } = t;
600 | function u(f) {
601 | ft.call(this, e, f);
602 | }
603 | return e.$$set = (f) => {
604 | t = b(b({}, t), Z(f)), n(0, r = v(t, s)), "$$scope" in f && n(1, o = f.$$scope);
605 | }, [r, o, i, u];
606 | }
607 | class At extends xt {
608 | constructor(t) {
609 | super(), yt(this, t, jt, Ot, G, {}, kt);
610 | }
611 | }
612 | wt(At, {}, ["default"], [], !0);
613 | export {
614 | At as B,
615 | xt as S,
616 | et as a,
617 | Q as b,
618 | wt as c,
619 | Nt as d,
620 | j as e,
621 | V as f,
622 | St as g,
623 | J as h,
624 | yt as i,
625 | H as j,
626 | tt as k,
627 | Ct as l,
628 | mt as m,
629 | Y as n,
630 | W as o,
631 | q as p,
632 | _t as q,
633 | O as r,
634 | G as s,
635 | rt as t,
636 | X as u,
637 | pt as v,
638 | ft as w
639 | };
640 |
--------------------------------------------------------------------------------
/_examples/static-blog-with-data/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: '6.0'
2 |
3 | devDependencies:
4 | '@sveltejs/adapter-static':
5 | specifier: ^2.0.1
6 | version: 2.0.1(@sveltejs/kit@1.14.0)
7 | '@sveltejs/kit':
8 | specifier: ^1.5.0
9 | version: 1.14.0(svelte@3.57.0)(vite@4.2.1)
10 | svelte:
11 | specifier: ^3.54.0
12 | version: 3.57.0
13 | svelte-check:
14 | specifier: ^3.0.1
15 | version: 3.1.4(svelte@3.57.0)
16 | typescript:
17 | specifier: ^5.0.0
18 | version: 5.0.2
19 | vite:
20 | specifier: ^4.2.0
21 | version: 4.2.1
22 |
23 | packages:
24 |
25 | /@esbuild/android-arm64@0.17.14:
26 | resolution: {integrity: sha512-eLOpPO1RvtsP71afiFTvS7tVFShJBCT0txiv/xjFBo5a7R7Gjw7X0IgIaFoLKhqXYAXhahoXm7qAmRXhY4guJg==}
27 | engines: {node: '>=12'}
28 | cpu: [arm64]
29 | os: [android]
30 | requiresBuild: true
31 | dev: true
32 | optional: true
33 |
34 | /@esbuild/android-arm@0.17.14:
35 | resolution: {integrity: sha512-0CnlwnjDU8cks0yJLXfkaU/uoLyRf9VZJs4p1PskBr2AlAHeEsFEwJEo0of/Z3g+ilw5mpyDwThlxzNEIxOE4g==}
36 | engines: {node: '>=12'}
37 | cpu: [arm]
38 | os: [android]
39 | requiresBuild: true
40 | dev: true
41 | optional: true
42 |
43 | /@esbuild/android-x64@0.17.14:
44 | resolution: {integrity: sha512-nrfQYWBfLGfSGLvRVlt6xi63B5IbfHm3tZCdu/82zuFPQ7zez4XjmRtF/wIRYbJQ/DsZrxJdEvYFE67avYXyng==}
45 | engines: {node: '>=12'}
46 | cpu: [x64]
47 | os: [android]
48 | requiresBuild: true
49 | dev: true
50 | optional: true
51 |
52 | /@esbuild/darwin-arm64@0.17.14:
53 | resolution: {integrity: sha512-eoSjEuDsU1ROwgBH/c+fZzuSyJUVXQTOIN9xuLs9dE/9HbV/A5IqdXHU1p2OfIMwBwOYJ9SFVGGldxeRCUJFyw==}
54 | engines: {node: '>=12'}
55 | cpu: [arm64]
56 | os: [darwin]
57 | requiresBuild: true
58 | dev: true
59 | optional: true
60 |
61 | /@esbuild/darwin-x64@0.17.14:
62 | resolution: {integrity: sha512-zN0U8RWfrDttdFNkHqFYZtOH8hdi22z0pFm0aIJPsNC4QQZv7je8DWCX5iA4Zx6tRhS0CCc0XC2m7wKsbWEo5g==}
63 | engines: {node: '>=12'}
64 | cpu: [x64]
65 | os: [darwin]
66 | requiresBuild: true
67 | dev: true
68 | optional: true
69 |
70 | /@esbuild/freebsd-arm64@0.17.14:
71 | resolution: {integrity: sha512-z0VcD4ibeZWVQCW1O7szaLxGsx54gcCnajEJMdYoYjLiq4g1jrP2lMq6pk71dbS5+7op/L2Aod+erw+EUr28/A==}
72 | engines: {node: '>=12'}
73 | cpu: [arm64]
74 | os: [freebsd]
75 | requiresBuild: true
76 | dev: true
77 | optional: true
78 |
79 | /@esbuild/freebsd-x64@0.17.14:
80 | resolution: {integrity: sha512-hd9mPcxfTgJlolrPlcXkQk9BMwNBvNBsVaUe5eNUqXut6weDQH8whcNaKNF2RO8NbpT6GY8rHOK2A9y++s+ehw==}
81 | engines: {node: '>=12'}
82 | cpu: [x64]
83 | os: [freebsd]
84 | requiresBuild: true
85 | dev: true
86 | optional: true
87 |
88 | /@esbuild/linux-arm64@0.17.14:
89 | resolution: {integrity: sha512-FhAMNYOq3Iblcj9i+K0l1Fp/MHt+zBeRu/Qkf0LtrcFu3T45jcwB6A1iMsemQ42vR3GBhjNZJZTaCe3VFPbn9g==}
90 | engines: {node: '>=12'}
91 | cpu: [arm64]
92 | os: [linux]
93 | requiresBuild: true
94 | dev: true
95 | optional: true
96 |
97 | /@esbuild/linux-arm@0.17.14:
98 | resolution: {integrity: sha512-BNTl+wSJ1omsH8s3TkQmIIIQHwvwJrU9u1ggb9XU2KTVM4TmthRIVyxSp2qxROJHhZuW/r8fht46/QE8hU8Qvg==}
99 | engines: {node: '>=12'}
100 | cpu: [arm]
101 | os: [linux]
102 | requiresBuild: true
103 | dev: true
104 | optional: true
105 |
106 | /@esbuild/linux-ia32@0.17.14:
107 | resolution: {integrity: sha512-91OK/lQ5y2v7AsmnFT+0EyxdPTNhov3y2CWMdizyMfxSxRqHazXdzgBKtlmkU2KYIc+9ZK3Vwp2KyXogEATYxQ==}
108 | engines: {node: '>=12'}
109 | cpu: [ia32]
110 | os: [linux]
111 | requiresBuild: true
112 | dev: true
113 | optional: true
114 |
115 | /@esbuild/linux-loong64@0.17.14:
116 | resolution: {integrity: sha512-vp15H+5NR6hubNgMluqqKza85HcGJgq7t6rMH7O3Y6ApiOWPkvW2AJfNojUQimfTp6OUrACUXfR4hmpcENXoMQ==}
117 | engines: {node: '>=12'}
118 | cpu: [loong64]
119 | os: [linux]
120 | requiresBuild: true
121 | dev: true
122 | optional: true
123 |
124 | /@esbuild/linux-mips64el@0.17.14:
125 | resolution: {integrity: sha512-90TOdFV7N+fgi6c2+GO9ochEkmm9kBAKnuD5e08GQMgMINOdOFHuYLPQ91RYVrnWwQ5683sJKuLi9l4SsbJ7Hg==}
126 | engines: {node: '>=12'}
127 | cpu: [mips64el]
128 | os: [linux]
129 | requiresBuild: true
130 | dev: true
131 | optional: true
132 |
133 | /@esbuild/linux-ppc64@0.17.14:
134 | resolution: {integrity: sha512-NnBGeoqKkTugpBOBZZoktQQ1Yqb7aHKmHxsw43NddPB2YWLAlpb7THZIzsRsTr0Xw3nqiPxbA1H31ZMOG+VVPQ==}
135 | engines: {node: '>=12'}
136 | cpu: [ppc64]
137 | os: [linux]
138 | requiresBuild: true
139 | dev: true
140 | optional: true
141 |
142 | /@esbuild/linux-riscv64@0.17.14:
143 | resolution: {integrity: sha512-0qdlKScLXA8MGVy21JUKvMzCYWovctuP8KKqhtE5A6IVPq4onxXhSuhwDd2g5sRCzNDlDjitc5sX31BzDoL5Fw==}
144 | engines: {node: '>=12'}
145 | cpu: [riscv64]
146 | os: [linux]
147 | requiresBuild: true
148 | dev: true
149 | optional: true
150 |
151 | /@esbuild/linux-s390x@0.17.14:
152 | resolution: {integrity: sha512-Hdm2Jo1yaaOro4v3+6/zJk6ygCqIZuSDJHdHaf8nVH/tfOuoEX5Riv03Ka15LmQBYJObUTNS1UdyoMk0WUn9Ww==}
153 | engines: {node: '>=12'}
154 | cpu: [s390x]
155 | os: [linux]
156 | requiresBuild: true
157 | dev: true
158 | optional: true
159 |
160 | /@esbuild/linux-x64@0.17.14:
161 | resolution: {integrity: sha512-8KHF17OstlK4DuzeF/KmSgzrTWQrkWj5boluiiq7kvJCiQVzUrmSkaBvcLB2UgHpKENO2i6BthPkmUhNDaJsVw==}
162 | engines: {node: '>=12'}
163 | cpu: [x64]
164 | os: [linux]
165 | requiresBuild: true
166 | dev: true
167 | optional: true
168 |
169 | /@esbuild/netbsd-x64@0.17.14:
170 | resolution: {integrity: sha512-nVwpqvb3yyXztxIT2+VsxJhB5GCgzPdk1n0HHSnchRAcxqKO6ghXwHhJnr0j/B+5FSyEqSxF4q03rbA2fKXtUQ==}
171 | engines: {node: '>=12'}
172 | cpu: [x64]
173 | os: [netbsd]
174 | requiresBuild: true
175 | dev: true
176 | optional: true
177 |
178 | /@esbuild/openbsd-x64@0.17.14:
179 | resolution: {integrity: sha512-1RZ7uQQ9zcy/GSAJL1xPdN7NDdOOtNEGiJalg/MOzeakZeTrgH/DoCkbq7TaPDiPhWqnDF+4bnydxRqQD7il6g==}
180 | engines: {node: '>=12'}
181 | cpu: [x64]
182 | os: [openbsd]
183 | requiresBuild: true
184 | dev: true
185 | optional: true
186 |
187 | /@esbuild/sunos-x64@0.17.14:
188 | resolution: {integrity: sha512-nqMjDsFwv7vp7msrwWRysnM38Sd44PKmW8EzV01YzDBTcTWUpczQg6mGao9VLicXSgW/iookNK6AxeogNVNDZA==}
189 | engines: {node: '>=12'}
190 | cpu: [x64]
191 | os: [sunos]
192 | requiresBuild: true
193 | dev: true
194 | optional: true
195 |
196 | /@esbuild/win32-arm64@0.17.14:
197 | resolution: {integrity: sha512-xrD0mccTKRBBIotrITV7WVQAwNJ5+1va6L0H9zN92v2yEdjfAN7864cUaZwJS7JPEs53bDTzKFbfqVlG2HhyKQ==}
198 | engines: {node: '>=12'}
199 | cpu: [arm64]
200 | os: [win32]
201 | requiresBuild: true
202 | dev: true
203 | optional: true
204 |
205 | /@esbuild/win32-ia32@0.17.14:
206 | resolution: {integrity: sha512-nXpkz9bbJrLLyUTYtRotSS3t5b+FOuljg8LgLdINWFs3FfqZMtbnBCZFUmBzQPyxqU87F8Av+3Nco/M3hEcu1w==}
207 | engines: {node: '>=12'}
208 | cpu: [ia32]
209 | os: [win32]
210 | requiresBuild: true
211 | dev: true
212 | optional: true
213 |
214 | /@esbuild/win32-x64@0.17.14:
215 | resolution: {integrity: sha512-gPQmsi2DKTaEgG14hc3CHXHp62k8g6qr0Pas+I4lUxRMugGSATh/Bi8Dgusoz9IQ0IfdrvLpco6kujEIBoaogA==}
216 | engines: {node: '>=12'}
217 | cpu: [x64]
218 | os: [win32]
219 | requiresBuild: true
220 | dev: true
221 | optional: true
222 |
223 | /@jridgewell/resolve-uri@3.1.0:
224 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==}
225 | engines: {node: '>=6.0.0'}
226 | dev: true
227 |
228 | /@jridgewell/sourcemap-codec@1.4.14:
229 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
230 | dev: true
231 |
232 | /@jridgewell/trace-mapping@0.3.17:
233 | resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==}
234 | dependencies:
235 | '@jridgewell/resolve-uri': 3.1.0
236 | '@jridgewell/sourcemap-codec': 1.4.14
237 | dev: true
238 |
239 | /@nodelib/fs.scandir@2.1.5:
240 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
241 | engines: {node: '>= 8'}
242 | dependencies:
243 | '@nodelib/fs.stat': 2.0.5
244 | run-parallel: 1.2.0
245 | dev: true
246 |
247 | /@nodelib/fs.stat@2.0.5:
248 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
249 | engines: {node: '>= 8'}
250 | dev: true
251 |
252 | /@nodelib/fs.walk@1.2.8:
253 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
254 | engines: {node: '>= 8'}
255 | dependencies:
256 | '@nodelib/fs.scandir': 2.1.5
257 | fastq: 1.15.0
258 | dev: true
259 |
260 | /@polka/url@1.0.0-next.21:
261 | resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==}
262 | dev: true
263 |
264 | /@sveltejs/adapter-static@2.0.1(@sveltejs/kit@1.14.0):
265 | resolution: {integrity: sha512-o5/q3YwD/ErxYCFlK1v3ydvldyNKk1lh3oeyxn4mhz+Pkbx/uuxhzmbOpytTlp5aVqNHDVsb04xadUzOFCDDzw==}
266 | peerDependencies:
267 | '@sveltejs/kit': ^1.5.0
268 | dependencies:
269 | '@sveltejs/kit': 1.14.0(svelte@3.57.0)(vite@4.2.1)
270 | dev: true
271 |
272 | /@sveltejs/kit@1.14.0(svelte@3.57.0)(vite@4.2.1):
273 | resolution: {integrity: sha512-4e/cZT0z4IppEkqNvMrurGz6VE1gScukFU7XqwTL/yrGJGXHqS9D7RvsOcE1hASsgrMu6w/fKTIhxT5oN0K1Jw==}
274 | engines: {node: ^16.14 || >=18}
275 | hasBin: true
276 | requiresBuild: true
277 | peerDependencies:
278 | svelte: ^3.54.0
279 | vite: ^4.0.0
280 | dependencies:
281 | '@sveltejs/vite-plugin-svelte': 2.0.3(svelte@3.57.0)(vite@4.2.1)
282 | '@types/cookie': 0.5.1
283 | cookie: 0.5.0
284 | devalue: 4.3.0
285 | esm-env: 1.0.0
286 | kleur: 4.1.5
287 | magic-string: 0.30.0
288 | mime: 3.0.0
289 | sade: 1.8.1
290 | set-cookie-parser: 2.6.0
291 | sirv: 2.0.2
292 | svelte: 3.57.0
293 | tiny-glob: 0.2.9
294 | undici: 5.21.0
295 | vite: 4.2.1
296 | transitivePeerDependencies:
297 | - supports-color
298 | dev: true
299 |
300 | /@sveltejs/vite-plugin-svelte@2.0.3(svelte@3.57.0)(vite@4.2.1):
301 | resolution: {integrity: sha512-o+cguBFdwIGtRbNkYOyqTM7KvRUffxh5bfK4oJsWKG2obu+v/cbpT03tJrGl58C7tRXo/aEC0/axN5FVHBj0nA==}
302 | engines: {node: ^14.18.0 || >= 16}
303 | peerDependencies:
304 | svelte: ^3.54.0
305 | vite: ^4.0.0
306 | dependencies:
307 | debug: 4.3.4
308 | deepmerge: 4.3.1
309 | kleur: 4.1.5
310 | magic-string: 0.29.0
311 | svelte: 3.57.0
312 | svelte-hmr: 0.15.1(svelte@3.57.0)
313 | vite: 4.2.1
314 | vitefu: 0.2.4(vite@4.2.1)
315 | transitivePeerDependencies:
316 | - supports-color
317 | dev: true
318 |
319 | /@types/cookie@0.5.1:
320 | resolution: {integrity: sha512-COUnqfB2+ckwXXSFInsFdOAWQzCCx+a5hq2ruyj+Vjund94RJQd4LG2u9hnvJrTgunKAaax7ancBYlDrNYxA0g==}
321 | dev: true
322 |
323 | /@types/pug@2.0.6:
324 | resolution: {integrity: sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==}
325 | dev: true
326 |
327 | /anymatch@3.1.3:
328 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
329 | engines: {node: '>= 8'}
330 | dependencies:
331 | normalize-path: 3.0.0
332 | picomatch: 2.3.1
333 | dev: true
334 |
335 | /balanced-match@1.0.2:
336 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
337 | dev: true
338 |
339 | /binary-extensions@2.2.0:
340 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
341 | engines: {node: '>=8'}
342 | dev: true
343 |
344 | /brace-expansion@1.1.11:
345 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
346 | dependencies:
347 | balanced-match: 1.0.2
348 | concat-map: 0.0.1
349 | dev: true
350 |
351 | /braces@3.0.2:
352 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
353 | engines: {node: '>=8'}
354 | dependencies:
355 | fill-range: 7.0.1
356 | dev: true
357 |
358 | /buffer-crc32@0.2.13:
359 | resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==}
360 | dev: true
361 |
362 | /busboy@1.6.0:
363 | resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==}
364 | engines: {node: '>=10.16.0'}
365 | dependencies:
366 | streamsearch: 1.1.0
367 | dev: true
368 |
369 | /callsites@3.1.0:
370 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
371 | engines: {node: '>=6'}
372 | dev: true
373 |
374 | /chokidar@3.5.3:
375 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
376 | engines: {node: '>= 8.10.0'}
377 | dependencies:
378 | anymatch: 3.1.3
379 | braces: 3.0.2
380 | glob-parent: 5.1.2
381 | is-binary-path: 2.1.0
382 | is-glob: 4.0.3
383 | normalize-path: 3.0.0
384 | readdirp: 3.6.0
385 | optionalDependencies:
386 | fsevents: 2.3.2
387 | dev: true
388 |
389 | /concat-map@0.0.1:
390 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
391 | dev: true
392 |
393 | /cookie@0.5.0:
394 | resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==}
395 | engines: {node: '>= 0.6'}
396 | dev: true
397 |
398 | /debug@4.3.4:
399 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
400 | engines: {node: '>=6.0'}
401 | peerDependencies:
402 | supports-color: '*'
403 | peerDependenciesMeta:
404 | supports-color:
405 | optional: true
406 | dependencies:
407 | ms: 2.1.2
408 | dev: true
409 |
410 | /deepmerge@4.3.1:
411 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
412 | engines: {node: '>=0.10.0'}
413 | dev: true
414 |
415 | /detect-indent@6.1.0:
416 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
417 | engines: {node: '>=8'}
418 | dev: true
419 |
420 | /devalue@4.3.0:
421 | resolution: {integrity: sha512-n94yQo4LI3w7erwf84mhRUkUJfhLoCZiLyoOZ/QFsDbcWNZePrLwbQpvZBUG2TNxwV3VjCKPxkiiQA6pe3TrTA==}
422 | dev: true
423 |
424 | /es6-promise@3.3.1:
425 | resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==}
426 | dev: true
427 |
428 | /esbuild@0.17.14:
429 | resolution: {integrity: sha512-vOO5XhmVj/1XQR9NQ1UPq6qvMYL7QFJU57J5fKBKBKxp17uDt5PgxFDb4A2nEiXhr1qQs4x0F5+66hVVw4ruNw==}
430 | engines: {node: '>=12'}
431 | hasBin: true
432 | requiresBuild: true
433 | optionalDependencies:
434 | '@esbuild/android-arm': 0.17.14
435 | '@esbuild/android-arm64': 0.17.14
436 | '@esbuild/android-x64': 0.17.14
437 | '@esbuild/darwin-arm64': 0.17.14
438 | '@esbuild/darwin-x64': 0.17.14
439 | '@esbuild/freebsd-arm64': 0.17.14
440 | '@esbuild/freebsd-x64': 0.17.14
441 | '@esbuild/linux-arm': 0.17.14
442 | '@esbuild/linux-arm64': 0.17.14
443 | '@esbuild/linux-ia32': 0.17.14
444 | '@esbuild/linux-loong64': 0.17.14
445 | '@esbuild/linux-mips64el': 0.17.14
446 | '@esbuild/linux-ppc64': 0.17.14
447 | '@esbuild/linux-riscv64': 0.17.14
448 | '@esbuild/linux-s390x': 0.17.14
449 | '@esbuild/linux-x64': 0.17.14
450 | '@esbuild/netbsd-x64': 0.17.14
451 | '@esbuild/openbsd-x64': 0.17.14
452 | '@esbuild/sunos-x64': 0.17.14
453 | '@esbuild/win32-arm64': 0.17.14
454 | '@esbuild/win32-ia32': 0.17.14
455 | '@esbuild/win32-x64': 0.17.14
456 | dev: true
457 |
458 | /esm-env@1.0.0:
459 | resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==}
460 | dev: true
461 |
462 | /fast-glob@3.2.12:
463 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==}
464 | engines: {node: '>=8.6.0'}
465 | dependencies:
466 | '@nodelib/fs.stat': 2.0.5
467 | '@nodelib/fs.walk': 1.2.8
468 | glob-parent: 5.1.2
469 | merge2: 1.4.1
470 | micromatch: 4.0.5
471 | dev: true
472 |
473 | /fastq@1.15.0:
474 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
475 | dependencies:
476 | reusify: 1.0.4
477 | dev: true
478 |
479 | /fill-range@7.0.1:
480 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
481 | engines: {node: '>=8'}
482 | dependencies:
483 | to-regex-range: 5.0.1
484 | dev: true
485 |
486 | /fs.realpath@1.0.0:
487 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
488 | dev: true
489 |
490 | /fsevents@2.3.2:
491 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
492 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
493 | os: [darwin]
494 | requiresBuild: true
495 | dev: true
496 | optional: true
497 |
498 | /function-bind@1.1.1:
499 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
500 | dev: true
501 |
502 | /glob-parent@5.1.2:
503 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
504 | engines: {node: '>= 6'}
505 | dependencies:
506 | is-glob: 4.0.3
507 | dev: true
508 |
509 | /glob@7.2.3:
510 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
511 | dependencies:
512 | fs.realpath: 1.0.0
513 | inflight: 1.0.6
514 | inherits: 2.0.4
515 | minimatch: 3.1.2
516 | once: 1.4.0
517 | path-is-absolute: 1.0.1
518 | dev: true
519 |
520 | /globalyzer@0.1.0:
521 | resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==}
522 | dev: true
523 |
524 | /globrex@0.1.2:
525 | resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
526 | dev: true
527 |
528 | /graceful-fs@4.2.11:
529 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
530 | dev: true
531 |
532 | /has@1.0.3:
533 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
534 | engines: {node: '>= 0.4.0'}
535 | dependencies:
536 | function-bind: 1.1.1
537 | dev: true
538 |
539 | /import-fresh@3.3.0:
540 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
541 | engines: {node: '>=6'}
542 | dependencies:
543 | parent-module: 1.0.1
544 | resolve-from: 4.0.0
545 | dev: true
546 |
547 | /inflight@1.0.6:
548 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
549 | dependencies:
550 | once: 1.4.0
551 | wrappy: 1.0.2
552 | dev: true
553 |
554 | /inherits@2.0.4:
555 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
556 | dev: true
557 |
558 | /is-binary-path@2.1.0:
559 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
560 | engines: {node: '>=8'}
561 | dependencies:
562 | binary-extensions: 2.2.0
563 | dev: true
564 |
565 | /is-core-module@2.11.0:
566 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==}
567 | dependencies:
568 | has: 1.0.3
569 | dev: true
570 |
571 | /is-extglob@2.1.1:
572 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
573 | engines: {node: '>=0.10.0'}
574 | dev: true
575 |
576 | /is-glob@4.0.3:
577 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
578 | engines: {node: '>=0.10.0'}
579 | dependencies:
580 | is-extglob: 2.1.1
581 | dev: true
582 |
583 | /is-number@7.0.0:
584 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
585 | engines: {node: '>=0.12.0'}
586 | dev: true
587 |
588 | /kleur@4.1.5:
589 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
590 | engines: {node: '>=6'}
591 | dev: true
592 |
593 | /magic-string@0.27.0:
594 | resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==}
595 | engines: {node: '>=12'}
596 | dependencies:
597 | '@jridgewell/sourcemap-codec': 1.4.14
598 | dev: true
599 |
600 | /magic-string@0.29.0:
601 | resolution: {integrity: sha512-WcfidHrDjMY+eLjlU+8OvwREqHwpgCeKVBUpQ3OhYYuvfaYCUgcbuBzappNzZvg/v8onU3oQj+BYpkOJe9Iw4Q==}
602 | engines: {node: '>=12'}
603 | dependencies:
604 | '@jridgewell/sourcemap-codec': 1.4.14
605 | dev: true
606 |
607 | /magic-string@0.30.0:
608 | resolution: {integrity: sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==}
609 | engines: {node: '>=12'}
610 | dependencies:
611 | '@jridgewell/sourcemap-codec': 1.4.14
612 | dev: true
613 |
614 | /merge2@1.4.1:
615 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
616 | engines: {node: '>= 8'}
617 | dev: true
618 |
619 | /micromatch@4.0.5:
620 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
621 | engines: {node: '>=8.6'}
622 | dependencies:
623 | braces: 3.0.2
624 | picomatch: 2.3.1
625 | dev: true
626 |
627 | /mime@3.0.0:
628 | resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==}
629 | engines: {node: '>=10.0.0'}
630 | hasBin: true
631 | dev: true
632 |
633 | /min-indent@1.0.1:
634 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
635 | engines: {node: '>=4'}
636 | dev: true
637 |
638 | /minimatch@3.1.2:
639 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
640 | dependencies:
641 | brace-expansion: 1.1.11
642 | dev: true
643 |
644 | /minimist@1.2.8:
645 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
646 | dev: true
647 |
648 | /mkdirp@0.5.6:
649 | resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
650 | hasBin: true
651 | dependencies:
652 | minimist: 1.2.8
653 | dev: true
654 |
655 | /mri@1.2.0:
656 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
657 | engines: {node: '>=4'}
658 | dev: true
659 |
660 | /mrmime@1.0.1:
661 | resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==}
662 | engines: {node: '>=10'}
663 | dev: true
664 |
665 | /ms@2.1.2:
666 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
667 | dev: true
668 |
669 | /nanoid@3.3.6:
670 | resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==}
671 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
672 | hasBin: true
673 | dev: true
674 |
675 | /normalize-path@3.0.0:
676 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
677 | engines: {node: '>=0.10.0'}
678 | dev: true
679 |
680 | /once@1.4.0:
681 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
682 | dependencies:
683 | wrappy: 1.0.2
684 | dev: true
685 |
686 | /parent-module@1.0.1:
687 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
688 | engines: {node: '>=6'}
689 | dependencies:
690 | callsites: 3.1.0
691 | dev: true
692 |
693 | /path-is-absolute@1.0.1:
694 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
695 | engines: {node: '>=0.10.0'}
696 | dev: true
697 |
698 | /path-parse@1.0.7:
699 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
700 | dev: true
701 |
702 | /picocolors@1.0.0:
703 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
704 | dev: true
705 |
706 | /picomatch@2.3.1:
707 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
708 | engines: {node: '>=8.6'}
709 | dev: true
710 |
711 | /postcss@8.4.21:
712 | resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==}
713 | engines: {node: ^10 || ^12 || >=14}
714 | dependencies:
715 | nanoid: 3.3.6
716 | picocolors: 1.0.0
717 | source-map-js: 1.0.2
718 | dev: true
719 |
720 | /queue-microtask@1.2.3:
721 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
722 | dev: true
723 |
724 | /readdirp@3.6.0:
725 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
726 | engines: {node: '>=8.10.0'}
727 | dependencies:
728 | picomatch: 2.3.1
729 | dev: true
730 |
731 | /resolve-from@4.0.0:
732 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
733 | engines: {node: '>=4'}
734 | dev: true
735 |
736 | /resolve@1.22.1:
737 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==}
738 | hasBin: true
739 | dependencies:
740 | is-core-module: 2.11.0
741 | path-parse: 1.0.7
742 | supports-preserve-symlinks-flag: 1.0.0
743 | dev: true
744 |
745 | /reusify@1.0.4:
746 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
747 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
748 | dev: true
749 |
750 | /rimraf@2.7.1:
751 | resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==}
752 | hasBin: true
753 | dependencies:
754 | glob: 7.2.3
755 | dev: true
756 |
757 | /rollup@3.20.2:
758 | resolution: {integrity: sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==}
759 | engines: {node: '>=14.18.0', npm: '>=8.0.0'}
760 | hasBin: true
761 | optionalDependencies:
762 | fsevents: 2.3.2
763 | dev: true
764 |
765 | /run-parallel@1.2.0:
766 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
767 | dependencies:
768 | queue-microtask: 1.2.3
769 | dev: true
770 |
771 | /sade@1.8.1:
772 | resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
773 | engines: {node: '>=6'}
774 | dependencies:
775 | mri: 1.2.0
776 | dev: true
777 |
778 | /sander@0.5.1:
779 | resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==}
780 | dependencies:
781 | es6-promise: 3.3.1
782 | graceful-fs: 4.2.11
783 | mkdirp: 0.5.6
784 | rimraf: 2.7.1
785 | dev: true
786 |
787 | /set-cookie-parser@2.6.0:
788 | resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==}
789 | dev: true
790 |
791 | /sirv@2.0.2:
792 | resolution: {integrity: sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==}
793 | engines: {node: '>= 10'}
794 | dependencies:
795 | '@polka/url': 1.0.0-next.21
796 | mrmime: 1.0.1
797 | totalist: 3.0.0
798 | dev: true
799 |
800 | /sorcery@0.11.0:
801 | resolution: {integrity: sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==}
802 | hasBin: true
803 | dependencies:
804 | '@jridgewell/sourcemap-codec': 1.4.14
805 | buffer-crc32: 0.2.13
806 | minimist: 1.2.8
807 | sander: 0.5.1
808 | dev: true
809 |
810 | /source-map-js@1.0.2:
811 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
812 | engines: {node: '>=0.10.0'}
813 | dev: true
814 |
815 | /streamsearch@1.1.0:
816 | resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
817 | engines: {node: '>=10.0.0'}
818 | dev: true
819 |
820 | /strip-indent@3.0.0:
821 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
822 | engines: {node: '>=8'}
823 | dependencies:
824 | min-indent: 1.0.1
825 | dev: true
826 |
827 | /supports-preserve-symlinks-flag@1.0.0:
828 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
829 | engines: {node: '>= 0.4'}
830 | dev: true
831 |
832 | /svelte-check@3.1.4(svelte@3.57.0):
833 | resolution: {integrity: sha512-25Lb46ZS4IK/XpBMe4IBMrtYf23V8alqBX+szXoccb7uM0D2Wqq5rMRzYBONZnFVuU1bQG3R50lyIT5eRewv2g==}
834 | hasBin: true
835 | peerDependencies:
836 | svelte: ^3.55.0
837 | dependencies:
838 | '@jridgewell/trace-mapping': 0.3.17
839 | chokidar: 3.5.3
840 | fast-glob: 3.2.12
841 | import-fresh: 3.3.0
842 | picocolors: 1.0.0
843 | sade: 1.8.1
844 | svelte: 3.57.0
845 | svelte-preprocess: 5.0.3(svelte@3.57.0)(typescript@4.9.5)
846 | typescript: 4.9.5
847 | transitivePeerDependencies:
848 | - '@babel/core'
849 | - coffeescript
850 | - less
851 | - postcss
852 | - postcss-load-config
853 | - pug
854 | - sass
855 | - stylus
856 | - sugarss
857 | dev: true
858 |
859 | /svelte-hmr@0.15.1(svelte@3.57.0):
860 | resolution: {integrity: sha512-BiKB4RZ8YSwRKCNVdNxK/GfY+r4Kjgp9jCLEy0DuqAKfmQtpL38cQK3afdpjw4sqSs4PLi3jIPJIFp259NkZtA==}
861 | engines: {node: ^12.20 || ^14.13.1 || >= 16}
862 | peerDependencies:
863 | svelte: '>=3.19.0'
864 | dependencies:
865 | svelte: 3.57.0
866 | dev: true
867 |
868 | /svelte-preprocess@5.0.3(svelte@3.57.0)(typescript@4.9.5):
869 | resolution: {integrity: sha512-GrHF1rusdJVbOZOwgPWtpqmaexkydznKzy5qIC2FabgpFyKN57bjMUUUqPRfbBXK5igiEWn1uO/DXsa2vJ5VHA==}
870 | engines: {node: '>= 14.10.0'}
871 | requiresBuild: true
872 | peerDependencies:
873 | '@babel/core': ^7.10.2
874 | coffeescript: ^2.5.1
875 | less: ^3.11.3 || ^4.0.0
876 | postcss: ^7 || ^8
877 | postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0
878 | pug: ^3.0.0
879 | sass: ^1.26.8
880 | stylus: ^0.55.0
881 | sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0
882 | svelte: ^3.23.0
883 | typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0'
884 | peerDependenciesMeta:
885 | '@babel/core':
886 | optional: true
887 | coffeescript:
888 | optional: true
889 | less:
890 | optional: true
891 | postcss:
892 | optional: true
893 | postcss-load-config:
894 | optional: true
895 | pug:
896 | optional: true
897 | sass:
898 | optional: true
899 | stylus:
900 | optional: true
901 | sugarss:
902 | optional: true
903 | typescript:
904 | optional: true
905 | dependencies:
906 | '@types/pug': 2.0.6
907 | detect-indent: 6.1.0
908 | magic-string: 0.27.0
909 | sorcery: 0.11.0
910 | strip-indent: 3.0.0
911 | svelte: 3.57.0
912 | typescript: 4.9.5
913 | dev: true
914 |
915 | /svelte@3.57.0:
916 | resolution: {integrity: sha512-WMXEvF+RtAaclw0t3bPDTUe19pplMlfyKDsixbHQYgCWi9+O9VN0kXU1OppzrB9gPAvz4NALuoca2LfW2bOjTQ==}
917 | engines: {node: '>= 8'}
918 | dev: true
919 |
920 | /tiny-glob@0.2.9:
921 | resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==}
922 | dependencies:
923 | globalyzer: 0.1.0
924 | globrex: 0.1.2
925 | dev: true
926 |
927 | /to-regex-range@5.0.1:
928 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
929 | engines: {node: '>=8.0'}
930 | dependencies:
931 | is-number: 7.0.0
932 | dev: true
933 |
934 | /totalist@3.0.0:
935 | resolution: {integrity: sha512-eM+pCBxXO/njtF7vdFsHuqb+ElbxqtI4r5EAvk6grfAFyJ6IvWlSkfZ5T9ozC6xWw3Fj1fGoSmrl0gUs46JVIw==}
936 | engines: {node: '>=6'}
937 | dev: true
938 |
939 | /typescript@4.9.5:
940 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==}
941 | engines: {node: '>=4.2.0'}
942 | hasBin: true
943 | dev: true
944 |
945 | /typescript@5.0.2:
946 | resolution: {integrity: sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw==}
947 | engines: {node: '>=12.20'}
948 | hasBin: true
949 | dev: true
950 |
951 | /undici@5.21.0:
952 | resolution: {integrity: sha512-HOjK8l6a57b2ZGXOcUsI5NLfoTrfmbOl90ixJDl0AEFG4wgHNDQxtZy15/ZQp7HhjkpaGlp/eneMgtsu1dIlUA==}
953 | engines: {node: '>=12.18'}
954 | dependencies:
955 | busboy: 1.6.0
956 | dev: true
957 |
958 | /vite@4.2.1:
959 | resolution: {integrity: sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==}
960 | engines: {node: ^14.18.0 || >=16.0.0}
961 | hasBin: true
962 | peerDependencies:
963 | '@types/node': '>= 14'
964 | less: '*'
965 | sass: '*'
966 | stylus: '*'
967 | sugarss: '*'
968 | terser: ^5.4.0
969 | peerDependenciesMeta:
970 | '@types/node':
971 | optional: true
972 | less:
973 | optional: true
974 | sass:
975 | optional: true
976 | stylus:
977 | optional: true
978 | sugarss:
979 | optional: true
980 | terser:
981 | optional: true
982 | dependencies:
983 | esbuild: 0.17.14
984 | postcss: 8.4.21
985 | resolve: 1.22.1
986 | rollup: 3.20.2
987 | optionalDependencies:
988 | fsevents: 2.3.2
989 | dev: true
990 |
991 | /vitefu@0.2.4(vite@4.2.1):
992 | resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==}
993 | peerDependencies:
994 | vite: ^3.0.0 || ^4.0.0
995 | peerDependenciesMeta:
996 | vite:
997 | optional: true
998 | dependencies:
999 | vite: 4.2.1
1000 | dev: true
1001 |
1002 | /wrappy@1.0.2:
1003 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
1004 | dev: true
1005 |
--------------------------------------------------------------------------------