├── sk-form-actions
├── .eslintignore
├── .eslintrc.cjs
├── .gitignore
├── .npmrc
├── .prettierignore
├── .prettierrc
├── README.md
├── package-lock.json
├── package.json
├── src
│ ├── app.html
│ ├── lib
│ │ └── server
│ │ │ └── secrets.js
│ └── routes
│ │ ├── +page.svelte
│ │ ├── auth-modal
│ │ └── +page.svelte
│ │ ├── auth
│ │ ├── +page.server.js
│ │ ├── +page.svelte
│ │ └── +server.js
│ │ ├── contact
│ │ ├── +page.js
│ │ └── +page.svelte
│ │ └── news
│ │ ├── +page.server.js
│ │ └── +page.svelte
├── static
│ └── favicon.png
├── svelte.config.js
└── vite.config.js
├── sk-loading-data
├── .eslintignore
├── .eslintrc.cjs
├── .gitignore
├── .npmrc
├── .prettierignore
├── .prettierrc
├── README.md
├── db.json
├── package-lock.json
├── package.json
├── src
│ ├── app.html
│ └── routes
│ │ ├── +layout.js
│ │ ├── +layout.svelte
│ │ ├── +page.js
│ │ ├── +page.svelte
│ │ ├── address
│ │ ├── +page.js
│ │ └── +page.svelte
│ │ ├── api
│ │ ├── current-time
│ │ │ └── +server.js
│ │ └── postcodes
│ │ │ └── +server.js
│ │ ├── products
│ │ ├── +layout.js
│ │ ├── +layout.svelte
│ │ ├── +page.js
│ │ ├── +page.server.js
│ │ ├── +page.svelte
│ │ ├── [productId]
│ │ │ ├── +error.svelte
│ │ │ ├── +page.server.js
│ │ │ └── +page.svelte
│ │ └── product.svelte
│ │ └── stocks
│ │ ├── +layout.js
│ │ ├── +layout.svelte
│ │ ├── +page.js
│ │ └── +page.svelte
├── static
│ └── favicon.png
├── svelte.config.js
└── vite.config.js
└── sk-routing
├── .eslintignore
├── .eslintrc.cjs
├── .gitignore
├── .npmrc
├── .prettierignore
├── .prettierrc
├── README.md
├── package-lock.json
├── package.json
├── src
├── app.html
├── lib
│ ├── comments.js
│ ├── footer.svelte
│ └── header.svelte
├── params
│ └── integer.js
└── routes
│ ├── (auth)
│ ├── +layout.svelte
│ ├── login
│ │ └── +page.svelte
│ ├── password
│ │ ├── +layout.svelte
│ │ ├── forgot
│ │ │ └── +page@.svelte
│ │ └── reset
│ │ │ └── +page.svelte
│ └── register
│ │ └── +page.svelte
│ ├── +layout.svelte
│ ├── +page.svelte
│ ├── about
│ └── +page.svelte
│ ├── api
│ └── comments
│ │ ├── +server.js
│ │ └── [commentId]
│ │ └── +server.js
│ ├── blog
│ ├── +page.svelte
│ ├── first
│ │ └── +page.svelte
│ └── second
│ │ └── +page.svelte
│ ├── demo-api
│ └── +server.js
│ ├── docs
│ └── [...slug]
│ │ └── +page.svelte
│ ├── marketing
│ └── [[lang]]
│ │ └── +page.svelte
│ └── products
│ ├── +page.svelte
│ └── [productId=integer]
│ ├── +layout.svelte
│ ├── +page.svelte
│ └── review
│ └── [reviewId]
│ └── +page.svelte
├── static
└── favicon.png
├── svelte.config.js
└── vite.config.js
/sk-form-actions/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 |
10 | # Ignore files for PNPM, NPM and YARN
11 | pnpm-lock.yaml
12 | package-lock.json
13 | yarn.lock
14 |
--------------------------------------------------------------------------------
/sk-form-actions/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | extends: ['eslint:recommended', 'prettier'],
4 | plugins: ['svelte3'],
5 | overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }],
6 | parserOptions: {
7 | sourceType: 'module',
8 | ecmaVersion: 2020
9 | },
10 | env: {
11 | browser: true,
12 | es2017: true,
13 | node: true
14 | }
15 | };
16 |
--------------------------------------------------------------------------------
/sk-form-actions/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 | vite.config.js.timestamp-*
10 | vite.config.ts.timestamp-*
11 |
--------------------------------------------------------------------------------
/sk-form-actions/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/sk-form-actions/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 |
10 | # Ignore files for PNPM, NPM and YARN
11 | pnpm-lock.yaml
12 | package-lock.json
13 | yarn.lock
14 |
--------------------------------------------------------------------------------
/sk-form-actions/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100,
6 | "plugins": ["prettier-plugin-svelte"],
7 | "pluginSearchDirs": ["."],
8 | "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }]
9 | }
10 |
--------------------------------------------------------------------------------
/sk-form-actions/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 |
--------------------------------------------------------------------------------
/sk-form-actions/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sk-form-actions",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "dev": "vite dev",
7 | "build": "vite build",
8 | "preview": "vite preview",
9 | "lint": "prettier --plugin-search-dir . --check . && eslint .",
10 | "format": "prettier --plugin-search-dir . --write ."
11 | },
12 | "devDependencies": {
13 | "@sveltejs/adapter-auto": "^2.0.0",
14 | "@sveltejs/kit": "^1.7.2",
15 | "eslint": "^8.28.0",
16 | "eslint-config-prettier": "^8.5.0",
17 | "eslint-plugin-svelte3": "^4.0.0",
18 | "prettier": "^2.8.0",
19 | "prettier-plugin-svelte": "^2.8.1",
20 | "svelte": "^3.54.0",
21 | "vite": "^4.0.0"
22 | },
23 | "type": "module"
24 | }
25 |
--------------------------------------------------------------------------------
/sk-form-actions/src/app.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | %sveltekit.head%
8 |
9 |
10 | %sveltekit.body%
11 |
12 |
13 |
--------------------------------------------------------------------------------
/sk-form-actions/src/lib/server/secrets.js:
--------------------------------------------------------------------------------
1 | export const secretKey = 'secret-key';
2 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/+page.svelte:
--------------------------------------------------------------------------------
1 | Welcome to SvelteKit
2 | Visit kit.svelte.dev to read the documentation
3 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/auth-modal/+page.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 |
12 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/auth/+page.server.js:
--------------------------------------------------------------------------------
1 | import { fail, redirect } from '@sveltejs/kit';
2 |
3 | export const actions = {
4 | login: async ({ request, cookies, url }) => {
5 | const data = await request.formData();
6 | const username = data.get('username');
7 | const password = data.get('password');
8 | if (!username || !password) {
9 | return fail(400, { username, message: 'Missing username or password' });
10 | }
11 | cookies.set('username', username, { path: '/' });
12 | throw redirect(303, url.searchParams.get('redirectTo') || '/');
13 | },
14 | register: async ({ request, cookies, url }) => {
15 | const data = await request.formData();
16 | const username = data.get('username');
17 | const password = data.get('password');
18 | if (!username || !password) {
19 | return fail(400, { username, message: 'Missing username or password' });
20 | }
21 | cookies.set('username', username, { path: '/' });
22 | throw redirect(303, url.searchParams.get('redirectTo') || '/');
23 | }
24 | };
25 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/auth/+page.svelte:
--------------------------------------------------------------------------------
1 |
7 |
8 |
15 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/auth/+server.js:
--------------------------------------------------------------------------------
1 | import { json } from '@sveltejs/kit';
2 |
3 | export async function POST({ request, cookies }) {
4 | const data = await request.json();
5 | const { username, password } = data;
6 | if (!username || !password) {
7 | return json(
8 | { message: 'Missing username or password' },
9 | {
10 | status: 400
11 | }
12 | );
13 | }
14 | cookies.set('username', username, { path: '/' });
15 | return json({ message: 'Logged in' });
16 | }
17 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/contact/+page.js:
--------------------------------------------------------------------------------
1 | import { PUBLIC_ANALYTICS_KEY } from '$env/static/public';
2 |
3 | export const load = () => {
4 | console.log(PUBLIC_ANALYTICS_KEY);
5 | return {};
6 | };
7 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/contact/+page.svelte:
--------------------------------------------------------------------------------
1 |
21 |
22 | Contact form
23 |
24 |
30 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/news/+page.server.js:
--------------------------------------------------------------------------------
1 | import { redirect } from '@sveltejs/kit';
2 | import { DB_USER, DB_PASSWORD } from '$env/static/private';
3 | import { secretKey } from '$lib/server/secrets';
4 |
5 | export const load = ({ cookies, url }) => {
6 | console.log(`Connecting to database with username ${DB_USER} and password ${DB_PASSWORD}`);
7 | console.log(secretKey);
8 | // Redirect to auth page if user is not logged in
9 | if (!cookies.get('username')) {
10 | throw redirect(307, `/auth?redirectTo=${url.pathname}`);
11 | }
12 | const newsAPIKey = 'YOUR_NEWS_API_KEY';
13 | console.log(newsAPIKey);
14 | /** Make API call using API key to fetch news data */
15 | const news = [
16 | { id: 1, title: 'News 1' },
17 | { id: 2, title: 'News 2' },
18 | { id: 3, title: 'News 3' }
19 | ];
20 |
21 | return { news };
22 | };
23 |
--------------------------------------------------------------------------------
/sk-form-actions/src/routes/news/+page.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 | Today's headlines
6 | {#each data.news as article}
7 | {article.title}
8 | {/each}
9 |
--------------------------------------------------------------------------------
/sk-form-actions/static/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gopinav/SvelteKit-Tutorials/2a98621dbdc08743f3bd2167b74e7372b27ca798/sk-form-actions/static/favicon.png
--------------------------------------------------------------------------------
/sk-form-actions/svelte.config.js:
--------------------------------------------------------------------------------
1 | import adapter from '@sveltejs/adapter-auto';
2 |
3 | /** @type {import('@sveltejs/kit').Config} */
4 | const config = {
5 | kit: {
6 | adapter: adapter()
7 | }
8 | };
9 |
10 | export default config;
11 |
--------------------------------------------------------------------------------
/sk-form-actions/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | const config = {
4 | plugins: [sveltekit()]
5 | };
6 |
7 | export default config;
8 |
--------------------------------------------------------------------------------
/sk-loading-data/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 |
10 | # Ignore files for PNPM, NPM and YARN
11 | pnpm-lock.yaml
12 | package-lock.json
13 | yarn.lock
14 |
--------------------------------------------------------------------------------
/sk-loading-data/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | extends: ['eslint:recommended', 'prettier'],
4 | plugins: ['svelte3'],
5 | overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }],
6 | parserOptions: {
7 | sourceType: 'module',
8 | ecmaVersion: 2020
9 | },
10 | env: {
11 | browser: true,
12 | es2017: true,
13 | node: true
14 | }
15 | };
16 |
--------------------------------------------------------------------------------
/sk-loading-data/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 | vite.config.js.timestamp-*
10 | vite.config.ts.timestamp-*
11 |
--------------------------------------------------------------------------------
/sk-loading-data/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/sk-loading-data/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 |
10 | # Ignore files for PNPM, NPM and YARN
11 | pnpm-lock.yaml
12 | package-lock.json
13 | yarn.lock
14 |
--------------------------------------------------------------------------------
/sk-loading-data/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100,
6 | "plugins": ["prettier-plugin-svelte"],
7 | "pluginSearchDirs": ["."],
8 | "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }]
9 | }
10 |
--------------------------------------------------------------------------------
/sk-loading-data/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 |
--------------------------------------------------------------------------------
/sk-loading-data/db.json:
--------------------------------------------------------------------------------
1 | {
2 | "products": [
3 | {
4 | "id": 1,
5 | "title": "Product 1",
6 | "price": 700,
7 | "description": "Description 1"
8 | },
9 | {
10 | "id": 2,
11 | "title": "Product 2",
12 | "price": 1050,
13 | "description": "Description 2"
14 | },
15 | {
16 | "id": 3,
17 | "title": "Product 3",
18 | "price": 2600,
19 | "description": "Description 3"
20 | }
21 | ],
22 | "featured-products": [
23 | {
24 | "id": 1,
25 | "title": "Featured Product 1",
26 | "price": 700,
27 | "description": "Description 1"
28 | },
29 | {
30 | "id": 2,
31 | "title": "Featured Product 2",
32 | "price": 1050,
33 | "description": "Description 2"
34 | },
35 | {
36 | "id": 3,
37 | "title": "Featured Product 3",
38 | "price": 2600,
39 | "description": "Description 3"
40 | }
41 | ],
42 | "stocks": [
43 | {
44 | "symbol": "STOCK D",
45 | "price": 151.0
46 | },
47 | {
48 | "symbol": "STOCK E",
49 | "price": 100.0
50 | },
51 | {
52 | "symbol": "STOCK F",
53 | "price": 240.0
54 | }
55 | ],
56 | "most-active-stock": {
57 | "symbol": "STOCK A",
58 | "price": 351.0
59 | },
60 | "top-gaining-stock": {
61 | "symbol": "STOCK B",
62 | "price": 50.0
63 | },
64 | "top-losing-stock": {
65 | "symbol": "STOCK C",
66 | "price": 100.0
67 | },
68 | "postcodes": [
69 | {
70 | "postcode": "E3 4NA",
71 | "postcode_inward": "4NA",
72 | "postcode_outward": "E3",
73 | "post_town": "London",
74 | "dependant_locality": "",
75 | "double_dependant_locality": "",
76 | "thoroughfare": "Wellington Way",
77 | "dependant_thoroughfare": "",
78 | "building_number": "",
79 | "building_name": "Wellington Buildings",
80 | "sub_building_name": "Flat 1",
81 | "po_box": "",
82 | "department_name": "",
83 | "organisation_name": "",
84 | "udprn": 7871403,
85 | "postcode_type": "S",
86 | "su_organisation_indicator": "",
87 | "delivery_point_suffix": "1A",
88 | "line_1": "Flat 1",
89 | "line_2": "Wellington Buildings",
90 | "line_3": "Wellington Way",
91 | "premise": "Flat 1, Wellington Buildings",
92 | "longitude": -0.0252715,
93 | "latitude": 51.5266544,
94 | "eastings": 537084,
95 | "northings": 182708,
96 | "country": "England",
97 | "traditional_county": "Greater London",
98 | "administrative_county": "",
99 | "postal_county": "London",
100 | "county": "London",
101 | "district": "Tower Hamlets",
102 | "ward": "Bromley North",
103 | "uprn": "6074452",
104 | "id": "paf_7871403",
105 | "country_iso": "GBR",
106 | "country_iso_2": "GB",
107 | "county_code": "",
108 | "language": "en",
109 | "umprn": "",
110 | "dataset": "paf"
111 | },
112 | {
113 | "postcode": "E3 4NA",
114 | "postcode_inward": "4NA",
115 | "postcode_outward": "E3",
116 | "post_town": "London",
117 | "dependant_locality": "",
118 | "double_dependant_locality": "",
119 | "thoroughfare": "Wellington Way",
120 | "dependant_thoroughfare": "",
121 | "building_number": "",
122 | "building_name": "Wellington Buildings",
123 | "sub_building_name": "Flat 2",
124 | "po_box": "",
125 | "department_name": "",
126 | "organisation_name": "",
127 | "udprn": 7871414,
128 | "postcode_type": "S",
129 | "su_organisation_indicator": "",
130 | "delivery_point_suffix": "1Q",
131 | "line_1": "Flat 2",
132 | "line_2": "Wellington Buildings",
133 | "line_3": "Wellington Way",
134 | "premise": "Flat 2, Wellington Buildings",
135 | "longitude": -0.0252715,
136 | "latitude": 51.5266544,
137 | "eastings": 537084,
138 | "northings": 182708,
139 | "country": "England",
140 | "traditional_county": "Greater London",
141 | "administrative_county": "",
142 | "postal_county": "London",
143 | "county": "London",
144 | "district": "Tower Hamlets",
145 | "ward": "Bromley North",
146 | "uprn": "6074463",
147 | "id": "paf_7871414",
148 | "country_iso": "GBR",
149 | "country_iso_2": "GB",
150 | "county_code": "",
151 | "language": "en",
152 | "umprn": "",
153 | "dataset": "paf"
154 | },
155 | {
156 | "postcode": "E3 4NA",
157 | "postcode_inward": "4NA",
158 | "postcode_outward": "E3",
159 | "post_town": "London",
160 | "dependant_locality": "",
161 | "double_dependant_locality": "",
162 | "thoroughfare": "Wellington Way",
163 | "dependant_thoroughfare": "",
164 | "building_number": "",
165 | "building_name": "Wellington Buildings",
166 | "sub_building_name": "Flat 3",
167 | "po_box": "",
168 | "department_name": "",
169 | "organisation_name": "",
170 | "udprn": 7871425,
171 | "postcode_type": "S",
172 | "su_organisation_indicator": "",
173 | "delivery_point_suffix": "2D",
174 | "line_1": "Flat 3",
175 | "line_2": "Wellington Buildings",
176 | "line_3": "Wellington Way",
177 | "premise": "Flat 3, Wellington Buildings",
178 | "longitude": -0.0252715,
179 | "latitude": 51.5266544,
180 | "eastings": 537084,
181 | "northings": 182708,
182 | "country": "England",
183 | "traditional_county": "Greater London",
184 | "administrative_county": "",
185 | "postal_county": "London",
186 | "county": "London",
187 | "district": "Tower Hamlets",
188 | "ward": "Bromley North",
189 | "uprn": "6074474",
190 | "id": "paf_7871425",
191 | "country_iso": "GBR",
192 | "country_iso_2": "GB",
193 | "county_code": "",
194 | "language": "en",
195 | "umprn": "",
196 | "dataset": "paf"
197 | }
198 | ]
199 | }
200 |
--------------------------------------------------------------------------------
/sk-loading-data/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sk-loading-data",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "dev": "vite dev",
7 | "build": "vite build",
8 | "preview": "vite preview",
9 | "lint": "prettier --plugin-search-dir . --check . && eslint .",
10 | "format": "prettier --plugin-search-dir . --write .",
11 | "serve-json": "json-server --watch db.json --port 4000"
12 | },
13 | "devDependencies": {
14 | "@sveltejs/adapter-auto": "^1.0.0",
15 | "@sveltejs/kit": "^1.0.0",
16 | "eslint": "^8.28.0",
17 | "eslint-config-prettier": "^8.5.0",
18 | "eslint-plugin-svelte3": "^4.0.0",
19 | "prettier": "^2.8.0",
20 | "prettier-plugin-svelte": "^2.8.1",
21 | "svelte": "^3.54.0",
22 | "vite": "^4.0.0"
23 | },
24 | "type": "module",
25 | "dependencies": {
26 | "json-server": "^0.17.1"
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/sk-loading-data/src/app.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | %sveltekit.head%
8 |
9 |
10 | %sveltekit.body%
11 |
12 |
13 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/+layout.js:
--------------------------------------------------------------------------------
1 | export const load = () => {
2 | return {
3 | username: 'Vishwas'
4 | };
5 | };
6 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/+layout.svelte:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 | {$page.data.title || 'Codevolution'}
10 |
11 |
12 | {#if $page.data.notification}
13 | {$page.data.notification}
14 | {/if}
15 | Welcome, {username}
16 |
17 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/+page.js:
--------------------------------------------------------------------------------
1 | export const load = async ({ fetch }) => {
2 | console.log('home page universal load function called');
3 | const response = await fetch('/api/current-time');
4 | const currentTime = await response.text();
5 | return { currentTime };
6 | };
7 |
8 | export const prerender = true;
9 | // export const csr = false;
10 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/+page.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 | Welcome to SvelteKit @ {data.currentTime}
7 | Visit kit.svelte.dev to read the documentation
8 | Products
9 |
20 |
21 |
26 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/address/+page.js:
--------------------------------------------------------------------------------
1 | export const load = async (loadEvent) => {
2 | const { fetch } = loadEvent;
3 | const response = await fetch('/api/postcodes');
4 | const postcodes = await response.json();
5 | const addressList = postcodes.map((postcode) => {
6 | return `${postcode.buildingName}, ${postcode.line1} ,${postcode.line2}, ${postcode.line3}, ${postcode.town}, ${postcode.country}, ${postcode.postcode}`;
7 | });
8 | return { addressList };
9 | };
10 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/address/+page.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 | Select your address
8 |
9 |
15 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/api/current-time/+server.js:
--------------------------------------------------------------------------------
1 | export async function GET() {
2 | console.log('current-time GET handler invoked');
3 | return new Response(new Date().toLocaleTimeString());
4 | }
5 |
6 | // export const prerender = true;
7 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/api/postcodes/+server.js:
--------------------------------------------------------------------------------
1 | export async function GET() {
2 | const response = await fetch('http://localhost:4000/postcodes');
3 | const postcodes = await response.json();
4 | const appPostCodes = postcodes.map((postcode) => {
5 | return {
6 | buildingName: postcode.building_name,
7 | line1: postcode.line_1,
8 | line2: postcode.line_2,
9 | line3: postcode.line_3,
10 | town: postcode.post_town,
11 | country: postcode.country,
12 | postcode: postcode.postcode
13 | };
14 | });
15 | return new Response(JSON.stringify(appPostCodes), {
16 | headers: {
17 | 'Content-Type': 'application/json'
18 | }
19 | });
20 | }
21 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/+layout.js:
--------------------------------------------------------------------------------
1 | export const load = async ({ fetch, parent }) => {
2 | const parentData = await parent();
3 | const { username } = parentData;
4 | const title = 'Featured products';
5 | const response = await fetch('http://localhost:4000/featured-products');
6 | const featuredProducts = await response.json();
7 | return { username, title, featuredProducts };
8 | };
9 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/+layout.svelte:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 | {title} for {username}
11 |
12 | {#each featuredProducts as product}
13 |
14 |
{product.title}
15 |
{product.description}
16 |
17 | {/each}
18 |
19 |
29 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/+page.js:
--------------------------------------------------------------------------------
1 | import Product from './product.svelte';
2 |
3 | export const load = async ({ data }) => {
4 | console.log('universal load function called');
5 | const notification = 'End of season sale!';
6 | return { ...data, notification, Component: Product };
7 | };
8 |
9 | export const ssr = true;
10 | export const csr = false;
11 | export const prerender = true;
12 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/+page.server.js:
--------------------------------------------------------------------------------
1 | export const load = async ({ fetch }) => {
2 | console.log('server load function called');
3 | const title = 'List of available products';
4 | const response = await fetch('http://localhost:4000/products');
5 | const products = await response.json();
6 | return { title, products };
7 | };
8 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/+page.svelte:
--------------------------------------------------------------------------------
1 |
7 |
8 | {title} for username
9 |
10 | {#each products as product}
11 |
12 | {/each}
13 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/[productId]/+error.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 | {$page.status}: {$page.error.message}
6 | {$page.error.hint}
7 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/[productId]/+page.server.js:
--------------------------------------------------------------------------------
1 | import { error } from '@sveltejs/kit';
2 | // import { redirect } from '@sveltejs/kit';
3 |
4 | export const load = async ({ fetch, params }) => {
5 | const { productId } = params;
6 | if (productId > 3) {
7 | throw error(404, { message: 'Product not found', hint: 'Try a different product' });
8 | // throw redirect(307, '/products');
9 | }
10 | const title = 'Product details';
11 | const notification = 'End of season sale! 60% off!';
12 | const response = await fetch(`http://localhost:4000/products/${productId}`);
13 | const product = await response.json();
14 | return { title, notification, product };
15 | };
16 |
17 | export const prerender = 'auto';
18 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/[productId]/+page.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 | {title}
8 |
9 |
10 |
{product.title} - ${product.price}
11 |
{product.description}
12 |
13 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/products/product.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 |
12 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/stocks/+layout.js:
--------------------------------------------------------------------------------
1 | export const load = async (loadEvent) => {
2 | const { fetch } = loadEvent;
3 | const mostActiveStockResponse = await fetch('http://localhost:4000/most-active-stock');
4 | const topGainingStockResponse = await fetch('http://localhost:4000/top-gaining-stock');
5 | const topLosingStockResponse = await fetch('http://localhost:4000/top-losing-stock');
6 | // const mostActiveStock = await mostActiveStockResponse.json();
7 | // const topGainingStock = await topGainingResponse.json();
8 | // const topLosingStock = await topLosingResponse.json();
9 | return {
10 | mostActiveStock: mostActiveStockResponse.json(),
11 | topGainingStock: topGainingStockResponse.json(),
12 | topLosingStock: topLosingStockResponse.json()
13 | };
14 | };
15 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/stocks/+layout.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 | Most active stock - {data.mostActiveStock.symbol}
6 | Top gaining stock - {data.topGainingStock.symbol}
7 | Top losing stock - {data.topLosingStock.symbol}
8 |
9 |
10 |
16 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/stocks/+page.js:
--------------------------------------------------------------------------------
1 | export const load = async (loadEvent) => {
2 | const { fetch, depends } = loadEvent;
3 | depends('stocks:actively-trading');
4 | const response = await fetch('http://localhost:4000/stocks');
5 | const stocks = await response.json();
6 | return { stocks };
7 | };
8 |
--------------------------------------------------------------------------------
/sk-loading-data/src/routes/stocks/+page.svelte:
--------------------------------------------------------------------------------
1 |
10 |
11 | Actively trading stocks
12 |
13 | {#each data.stocks as stock}
14 | {stock.symbol} - ${stock.price}
15 | {/each}
16 |
17 |
18 |
--------------------------------------------------------------------------------
/sk-loading-data/static/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gopinav/SvelteKit-Tutorials/2a98621dbdc08743f3bd2167b74e7372b27ca798/sk-loading-data/static/favicon.png
--------------------------------------------------------------------------------
/sk-loading-data/svelte.config.js:
--------------------------------------------------------------------------------
1 | import adapter from '@sveltejs/adapter-auto';
2 |
3 | /** @type {import('@sveltejs/kit').Config} */
4 | const config = {
5 | kit: {
6 | adapter: adapter(),
7 | prerender: {
8 | crawl: false,
9 | entries: ['/', '/products', '/products/1', '/products/2']
10 | }
11 | }
12 | };
13 |
14 | export default config;
15 |
--------------------------------------------------------------------------------
/sk-loading-data/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | const config = {
4 | plugins: [sveltekit()]
5 | };
6 |
7 | export default config;
8 |
--------------------------------------------------------------------------------
/sk-routing/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 |
10 | # Ignore files for PNPM, NPM and YARN
11 | pnpm-lock.yaml
12 | package-lock.json
13 | yarn.lock
14 |
--------------------------------------------------------------------------------
/sk-routing/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | extends: ['eslint:recommended', 'prettier'],
4 | plugins: ['svelte3'],
5 | overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }],
6 | parserOptions: {
7 | sourceType: 'module',
8 | ecmaVersion: 2020
9 | },
10 | env: {
11 | browser: true,
12 | es2017: true,
13 | node: true
14 | }
15 | };
16 |
--------------------------------------------------------------------------------
/sk-routing/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 | vite.config.js.timestamp-*
10 | vite.config.ts.timestamp-*
11 |
--------------------------------------------------------------------------------
/sk-routing/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/sk-routing/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 |
10 | # Ignore files for PNPM, NPM and YARN
11 | pnpm-lock.yaml
12 | package-lock.json
13 | yarn.lock
14 |
--------------------------------------------------------------------------------
/sk-routing/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100,
6 | "plugins": ["prettier-plugin-svelte"],
7 | "pluginSearchDirs": ["."],
8 | "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }]
9 | }
10 |
--------------------------------------------------------------------------------
/sk-routing/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 |
--------------------------------------------------------------------------------
/sk-routing/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sk-routing",
3 | "version": "0.0.1",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "sk-routing",
9 | "version": "0.0.1",
10 | "devDependencies": {
11 | "@sveltejs/adapter-auto": "^1.0.0",
12 | "@sveltejs/kit": "^1.0.0",
13 | "eslint": "^8.28.0",
14 | "eslint-config-prettier": "^8.5.0",
15 | "eslint-plugin-svelte3": "^4.0.0",
16 | "prettier": "^2.8.0",
17 | "prettier-plugin-svelte": "^2.8.1",
18 | "svelte": "^3.54.0",
19 | "vite": "^4.0.0"
20 | }
21 | },
22 | "node_modules/@esbuild/android-arm": {
23 | "version": "0.16.17",
24 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz",
25 | "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==",
26 | "cpu": [
27 | "arm"
28 | ],
29 | "dev": true,
30 | "optional": true,
31 | "os": [
32 | "android"
33 | ],
34 | "engines": {
35 | "node": ">=12"
36 | }
37 | },
38 | "node_modules/@esbuild/android-arm64": {
39 | "version": "0.16.17",
40 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz",
41 | "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==",
42 | "cpu": [
43 | "arm64"
44 | ],
45 | "dev": true,
46 | "optional": true,
47 | "os": [
48 | "android"
49 | ],
50 | "engines": {
51 | "node": ">=12"
52 | }
53 | },
54 | "node_modules/@esbuild/android-x64": {
55 | "version": "0.16.17",
56 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz",
57 | "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==",
58 | "cpu": [
59 | "x64"
60 | ],
61 | "dev": true,
62 | "optional": true,
63 | "os": [
64 | "android"
65 | ],
66 | "engines": {
67 | "node": ">=12"
68 | }
69 | },
70 | "node_modules/@esbuild/darwin-arm64": {
71 | "version": "0.16.17",
72 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz",
73 | "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==",
74 | "cpu": [
75 | "arm64"
76 | ],
77 | "dev": true,
78 | "optional": true,
79 | "os": [
80 | "darwin"
81 | ],
82 | "engines": {
83 | "node": ">=12"
84 | }
85 | },
86 | "node_modules/@esbuild/darwin-x64": {
87 | "version": "0.16.17",
88 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz",
89 | "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==",
90 | "cpu": [
91 | "x64"
92 | ],
93 | "dev": true,
94 | "optional": true,
95 | "os": [
96 | "darwin"
97 | ],
98 | "engines": {
99 | "node": ">=12"
100 | }
101 | },
102 | "node_modules/@esbuild/freebsd-arm64": {
103 | "version": "0.16.17",
104 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz",
105 | "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==",
106 | "cpu": [
107 | "arm64"
108 | ],
109 | "dev": true,
110 | "optional": true,
111 | "os": [
112 | "freebsd"
113 | ],
114 | "engines": {
115 | "node": ">=12"
116 | }
117 | },
118 | "node_modules/@esbuild/freebsd-x64": {
119 | "version": "0.16.17",
120 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz",
121 | "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==",
122 | "cpu": [
123 | "x64"
124 | ],
125 | "dev": true,
126 | "optional": true,
127 | "os": [
128 | "freebsd"
129 | ],
130 | "engines": {
131 | "node": ">=12"
132 | }
133 | },
134 | "node_modules/@esbuild/linux-arm": {
135 | "version": "0.16.17",
136 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz",
137 | "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==",
138 | "cpu": [
139 | "arm"
140 | ],
141 | "dev": true,
142 | "optional": true,
143 | "os": [
144 | "linux"
145 | ],
146 | "engines": {
147 | "node": ">=12"
148 | }
149 | },
150 | "node_modules/@esbuild/linux-arm64": {
151 | "version": "0.16.17",
152 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz",
153 | "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==",
154 | "cpu": [
155 | "arm64"
156 | ],
157 | "dev": true,
158 | "optional": true,
159 | "os": [
160 | "linux"
161 | ],
162 | "engines": {
163 | "node": ">=12"
164 | }
165 | },
166 | "node_modules/@esbuild/linux-ia32": {
167 | "version": "0.16.17",
168 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz",
169 | "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==",
170 | "cpu": [
171 | "ia32"
172 | ],
173 | "dev": true,
174 | "optional": true,
175 | "os": [
176 | "linux"
177 | ],
178 | "engines": {
179 | "node": ">=12"
180 | }
181 | },
182 | "node_modules/@esbuild/linux-loong64": {
183 | "version": "0.16.17",
184 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz",
185 | "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==",
186 | "cpu": [
187 | "loong64"
188 | ],
189 | "dev": true,
190 | "optional": true,
191 | "os": [
192 | "linux"
193 | ],
194 | "engines": {
195 | "node": ">=12"
196 | }
197 | },
198 | "node_modules/@esbuild/linux-mips64el": {
199 | "version": "0.16.17",
200 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz",
201 | "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==",
202 | "cpu": [
203 | "mips64el"
204 | ],
205 | "dev": true,
206 | "optional": true,
207 | "os": [
208 | "linux"
209 | ],
210 | "engines": {
211 | "node": ">=12"
212 | }
213 | },
214 | "node_modules/@esbuild/linux-ppc64": {
215 | "version": "0.16.17",
216 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz",
217 | "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==",
218 | "cpu": [
219 | "ppc64"
220 | ],
221 | "dev": true,
222 | "optional": true,
223 | "os": [
224 | "linux"
225 | ],
226 | "engines": {
227 | "node": ">=12"
228 | }
229 | },
230 | "node_modules/@esbuild/linux-riscv64": {
231 | "version": "0.16.17",
232 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz",
233 | "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==",
234 | "cpu": [
235 | "riscv64"
236 | ],
237 | "dev": true,
238 | "optional": true,
239 | "os": [
240 | "linux"
241 | ],
242 | "engines": {
243 | "node": ">=12"
244 | }
245 | },
246 | "node_modules/@esbuild/linux-s390x": {
247 | "version": "0.16.17",
248 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz",
249 | "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==",
250 | "cpu": [
251 | "s390x"
252 | ],
253 | "dev": true,
254 | "optional": true,
255 | "os": [
256 | "linux"
257 | ],
258 | "engines": {
259 | "node": ">=12"
260 | }
261 | },
262 | "node_modules/@esbuild/linux-x64": {
263 | "version": "0.16.17",
264 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz",
265 | "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==",
266 | "cpu": [
267 | "x64"
268 | ],
269 | "dev": true,
270 | "optional": true,
271 | "os": [
272 | "linux"
273 | ],
274 | "engines": {
275 | "node": ">=12"
276 | }
277 | },
278 | "node_modules/@esbuild/netbsd-x64": {
279 | "version": "0.16.17",
280 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz",
281 | "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==",
282 | "cpu": [
283 | "x64"
284 | ],
285 | "dev": true,
286 | "optional": true,
287 | "os": [
288 | "netbsd"
289 | ],
290 | "engines": {
291 | "node": ">=12"
292 | }
293 | },
294 | "node_modules/@esbuild/openbsd-x64": {
295 | "version": "0.16.17",
296 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz",
297 | "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==",
298 | "cpu": [
299 | "x64"
300 | ],
301 | "dev": true,
302 | "optional": true,
303 | "os": [
304 | "openbsd"
305 | ],
306 | "engines": {
307 | "node": ">=12"
308 | }
309 | },
310 | "node_modules/@esbuild/sunos-x64": {
311 | "version": "0.16.17",
312 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz",
313 | "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==",
314 | "cpu": [
315 | "x64"
316 | ],
317 | "dev": true,
318 | "optional": true,
319 | "os": [
320 | "sunos"
321 | ],
322 | "engines": {
323 | "node": ">=12"
324 | }
325 | },
326 | "node_modules/@esbuild/win32-arm64": {
327 | "version": "0.16.17",
328 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz",
329 | "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==",
330 | "cpu": [
331 | "arm64"
332 | ],
333 | "dev": true,
334 | "optional": true,
335 | "os": [
336 | "win32"
337 | ],
338 | "engines": {
339 | "node": ">=12"
340 | }
341 | },
342 | "node_modules/@esbuild/win32-ia32": {
343 | "version": "0.16.17",
344 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz",
345 | "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==",
346 | "cpu": [
347 | "ia32"
348 | ],
349 | "dev": true,
350 | "optional": true,
351 | "os": [
352 | "win32"
353 | ],
354 | "engines": {
355 | "node": ">=12"
356 | }
357 | },
358 | "node_modules/@esbuild/win32-x64": {
359 | "version": "0.16.17",
360 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz",
361 | "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==",
362 | "cpu": [
363 | "x64"
364 | ],
365 | "dev": true,
366 | "optional": true,
367 | "os": [
368 | "win32"
369 | ],
370 | "engines": {
371 | "node": ">=12"
372 | }
373 | },
374 | "node_modules/@eslint/eslintrc": {
375 | "version": "1.4.1",
376 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz",
377 | "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==",
378 | "dev": true,
379 | "dependencies": {
380 | "ajv": "^6.12.4",
381 | "debug": "^4.3.2",
382 | "espree": "^9.4.0",
383 | "globals": "^13.19.0",
384 | "ignore": "^5.2.0",
385 | "import-fresh": "^3.2.1",
386 | "js-yaml": "^4.1.0",
387 | "minimatch": "^3.1.2",
388 | "strip-json-comments": "^3.1.1"
389 | },
390 | "engines": {
391 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
392 | },
393 | "funding": {
394 | "url": "https://opencollective.com/eslint"
395 | }
396 | },
397 | "node_modules/@humanwhocodes/config-array": {
398 | "version": "0.11.8",
399 | "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz",
400 | "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==",
401 | "dev": true,
402 | "dependencies": {
403 | "@humanwhocodes/object-schema": "^1.2.1",
404 | "debug": "^4.1.1",
405 | "minimatch": "^3.0.5"
406 | },
407 | "engines": {
408 | "node": ">=10.10.0"
409 | }
410 | },
411 | "node_modules/@humanwhocodes/module-importer": {
412 | "version": "1.0.1",
413 | "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
414 | "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
415 | "dev": true,
416 | "engines": {
417 | "node": ">=12.22"
418 | },
419 | "funding": {
420 | "type": "github",
421 | "url": "https://github.com/sponsors/nzakas"
422 | }
423 | },
424 | "node_modules/@humanwhocodes/object-schema": {
425 | "version": "1.2.1",
426 | "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
427 | "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
428 | "dev": true
429 | },
430 | "node_modules/@jridgewell/sourcemap-codec": {
431 | "version": "1.4.14",
432 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
433 | "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
434 | "dev": true
435 | },
436 | "node_modules/@nodelib/fs.scandir": {
437 | "version": "2.1.5",
438 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
439 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
440 | "dev": true,
441 | "dependencies": {
442 | "@nodelib/fs.stat": "2.0.5",
443 | "run-parallel": "^1.1.9"
444 | },
445 | "engines": {
446 | "node": ">= 8"
447 | }
448 | },
449 | "node_modules/@nodelib/fs.stat": {
450 | "version": "2.0.5",
451 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
452 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
453 | "dev": true,
454 | "engines": {
455 | "node": ">= 8"
456 | }
457 | },
458 | "node_modules/@nodelib/fs.walk": {
459 | "version": "1.2.8",
460 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
461 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
462 | "dev": true,
463 | "dependencies": {
464 | "@nodelib/fs.scandir": "2.1.5",
465 | "fastq": "^1.6.0"
466 | },
467 | "engines": {
468 | "node": ">= 8"
469 | }
470 | },
471 | "node_modules/@polka/url": {
472 | "version": "1.0.0-next.21",
473 | "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz",
474 | "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==",
475 | "dev": true
476 | },
477 | "node_modules/@sveltejs/adapter-auto": {
478 | "version": "1.0.2",
479 | "resolved": "https://registry.npmjs.org/@sveltejs/adapter-auto/-/adapter-auto-1.0.2.tgz",
480 | "integrity": "sha512-UXpEO/gutERZnD+Z5Vi4J/ifD3WSRuCI7xwtLJTcKNQvJ6t5Xsj1X3Mw2F8Vv/XTUuxf7xPLYUgThU331r0Y9w==",
481 | "dev": true,
482 | "dependencies": {
483 | "import-meta-resolve": "^2.2.0"
484 | },
485 | "peerDependencies": {
486 | "@sveltejs/kit": "^1.0.0"
487 | }
488 | },
489 | "node_modules/@sveltejs/kit": {
490 | "version": "1.2.10",
491 | "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.2.10.tgz",
492 | "integrity": "sha512-5LKhBEvkli5xzRObhV0c9QfyRiV96MQNouFM2Cn9nlEno6c88WVCFlNFPuTiSmHM2GE3pSCB+uT37fMFoWSERA==",
493 | "dev": true,
494 | "hasInstallScript": true,
495 | "dependencies": {
496 | "@sveltejs/vite-plugin-svelte": "^2.0.0",
497 | "@types/cookie": "^0.5.1",
498 | "cookie": "^0.5.0",
499 | "devalue": "^4.2.2",
500 | "esm-env": "^1.0.0",
501 | "kleur": "^4.1.5",
502 | "magic-string": "^0.27.0",
503 | "mime": "^3.0.0",
504 | "sade": "^1.8.1",
505 | "set-cookie-parser": "^2.5.1",
506 | "sirv": "^2.0.2",
507 | "tiny-glob": "^0.2.9",
508 | "undici": "5.16.0"
509 | },
510 | "bin": {
511 | "svelte-kit": "svelte-kit.js"
512 | },
513 | "engines": {
514 | "node": "^16.14 || >=18"
515 | },
516 | "peerDependencies": {
517 | "svelte": "^3.54.0",
518 | "vite": "^4.0.0"
519 | }
520 | },
521 | "node_modules/@sveltejs/vite-plugin-svelte": {
522 | "version": "2.0.2",
523 | "resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-2.0.2.tgz",
524 | "integrity": "sha512-xCEan0/NNpQuL0l5aS42FjwQ6wwskdxC3pW1OeFtEKNZwRg7Evro9lac9HesGP6TdFsTv2xMes5ASQVKbCacxg==",
525 | "dev": true,
526 | "dependencies": {
527 | "debug": "^4.3.4",
528 | "deepmerge": "^4.2.2",
529 | "kleur": "^4.1.5",
530 | "magic-string": "^0.27.0",
531 | "svelte-hmr": "^0.15.1",
532 | "vitefu": "^0.2.3"
533 | },
534 | "engines": {
535 | "node": "^14.18.0 || >= 16"
536 | },
537 | "peerDependencies": {
538 | "svelte": "^3.54.0",
539 | "vite": "^4.0.0"
540 | }
541 | },
542 | "node_modules/@types/cookie": {
543 | "version": "0.5.1",
544 | "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.5.1.tgz",
545 | "integrity": "sha512-COUnqfB2+ckwXXSFInsFdOAWQzCCx+a5hq2ruyj+Vjund94RJQd4LG2u9hnvJrTgunKAaax7ancBYlDrNYxA0g==",
546 | "dev": true
547 | },
548 | "node_modules/acorn": {
549 | "version": "8.8.2",
550 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz",
551 | "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==",
552 | "dev": true,
553 | "bin": {
554 | "acorn": "bin/acorn"
555 | },
556 | "engines": {
557 | "node": ">=0.4.0"
558 | }
559 | },
560 | "node_modules/acorn-jsx": {
561 | "version": "5.3.2",
562 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
563 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
564 | "dev": true,
565 | "peerDependencies": {
566 | "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
567 | }
568 | },
569 | "node_modules/ajv": {
570 | "version": "6.12.6",
571 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
572 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
573 | "dev": true,
574 | "dependencies": {
575 | "fast-deep-equal": "^3.1.1",
576 | "fast-json-stable-stringify": "^2.0.0",
577 | "json-schema-traverse": "^0.4.1",
578 | "uri-js": "^4.2.2"
579 | },
580 | "funding": {
581 | "type": "github",
582 | "url": "https://github.com/sponsors/epoberezkin"
583 | }
584 | },
585 | "node_modules/ansi-regex": {
586 | "version": "5.0.1",
587 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
588 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
589 | "dev": true,
590 | "engines": {
591 | "node": ">=8"
592 | }
593 | },
594 | "node_modules/ansi-styles": {
595 | "version": "4.3.0",
596 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
597 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
598 | "dev": true,
599 | "dependencies": {
600 | "color-convert": "^2.0.1"
601 | },
602 | "engines": {
603 | "node": ">=8"
604 | },
605 | "funding": {
606 | "url": "https://github.com/chalk/ansi-styles?sponsor=1"
607 | }
608 | },
609 | "node_modules/argparse": {
610 | "version": "2.0.1",
611 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
612 | "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
613 | "dev": true
614 | },
615 | "node_modules/balanced-match": {
616 | "version": "1.0.2",
617 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
618 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
619 | "dev": true
620 | },
621 | "node_modules/brace-expansion": {
622 | "version": "1.1.11",
623 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
624 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
625 | "dev": true,
626 | "dependencies": {
627 | "balanced-match": "^1.0.0",
628 | "concat-map": "0.0.1"
629 | }
630 | },
631 | "node_modules/busboy": {
632 | "version": "1.6.0",
633 | "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
634 | "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
635 | "dev": true,
636 | "dependencies": {
637 | "streamsearch": "^1.1.0"
638 | },
639 | "engines": {
640 | "node": ">=10.16.0"
641 | }
642 | },
643 | "node_modules/callsites": {
644 | "version": "3.1.0",
645 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
646 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
647 | "dev": true,
648 | "engines": {
649 | "node": ">=6"
650 | }
651 | },
652 | "node_modules/chalk": {
653 | "version": "4.1.2",
654 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
655 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
656 | "dev": true,
657 | "dependencies": {
658 | "ansi-styles": "^4.1.0",
659 | "supports-color": "^7.1.0"
660 | },
661 | "engines": {
662 | "node": ">=10"
663 | },
664 | "funding": {
665 | "url": "https://github.com/chalk/chalk?sponsor=1"
666 | }
667 | },
668 | "node_modules/color-convert": {
669 | "version": "2.0.1",
670 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
671 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
672 | "dev": true,
673 | "dependencies": {
674 | "color-name": "~1.1.4"
675 | },
676 | "engines": {
677 | "node": ">=7.0.0"
678 | }
679 | },
680 | "node_modules/color-name": {
681 | "version": "1.1.4",
682 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
683 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
684 | "dev": true
685 | },
686 | "node_modules/concat-map": {
687 | "version": "0.0.1",
688 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
689 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
690 | "dev": true
691 | },
692 | "node_modules/cookie": {
693 | "version": "0.5.0",
694 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
695 | "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
696 | "dev": true,
697 | "engines": {
698 | "node": ">= 0.6"
699 | }
700 | },
701 | "node_modules/cross-spawn": {
702 | "version": "7.0.3",
703 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
704 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
705 | "dev": true,
706 | "dependencies": {
707 | "path-key": "^3.1.0",
708 | "shebang-command": "^2.0.0",
709 | "which": "^2.0.1"
710 | },
711 | "engines": {
712 | "node": ">= 8"
713 | }
714 | },
715 | "node_modules/debug": {
716 | "version": "4.3.4",
717 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
718 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
719 | "dev": true,
720 | "dependencies": {
721 | "ms": "2.1.2"
722 | },
723 | "engines": {
724 | "node": ">=6.0"
725 | },
726 | "peerDependenciesMeta": {
727 | "supports-color": {
728 | "optional": true
729 | }
730 | }
731 | },
732 | "node_modules/deep-is": {
733 | "version": "0.1.4",
734 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
735 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
736 | "dev": true
737 | },
738 | "node_modules/deepmerge": {
739 | "version": "4.2.2",
740 | "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
741 | "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
742 | "dev": true,
743 | "engines": {
744 | "node": ">=0.10.0"
745 | }
746 | },
747 | "node_modules/devalue": {
748 | "version": "4.2.2",
749 | "resolved": "https://registry.npmjs.org/devalue/-/devalue-4.2.2.tgz",
750 | "integrity": "sha512-Pkwd8qrI9O20VJ14fBNHu+on99toTNZFbgWRpZbC0zbDXpnE2WHYcrC1fHhMsF/3Ee+2yaW7vEujAT7fCYgqrA==",
751 | "dev": true
752 | },
753 | "node_modules/doctrine": {
754 | "version": "3.0.0",
755 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
756 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
757 | "dev": true,
758 | "dependencies": {
759 | "esutils": "^2.0.2"
760 | },
761 | "engines": {
762 | "node": ">=6.0.0"
763 | }
764 | },
765 | "node_modules/esbuild": {
766 | "version": "0.16.17",
767 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz",
768 | "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==",
769 | "dev": true,
770 | "hasInstallScript": true,
771 | "bin": {
772 | "esbuild": "bin/esbuild"
773 | },
774 | "engines": {
775 | "node": ">=12"
776 | },
777 | "optionalDependencies": {
778 | "@esbuild/android-arm": "0.16.17",
779 | "@esbuild/android-arm64": "0.16.17",
780 | "@esbuild/android-x64": "0.16.17",
781 | "@esbuild/darwin-arm64": "0.16.17",
782 | "@esbuild/darwin-x64": "0.16.17",
783 | "@esbuild/freebsd-arm64": "0.16.17",
784 | "@esbuild/freebsd-x64": "0.16.17",
785 | "@esbuild/linux-arm": "0.16.17",
786 | "@esbuild/linux-arm64": "0.16.17",
787 | "@esbuild/linux-ia32": "0.16.17",
788 | "@esbuild/linux-loong64": "0.16.17",
789 | "@esbuild/linux-mips64el": "0.16.17",
790 | "@esbuild/linux-ppc64": "0.16.17",
791 | "@esbuild/linux-riscv64": "0.16.17",
792 | "@esbuild/linux-s390x": "0.16.17",
793 | "@esbuild/linux-x64": "0.16.17",
794 | "@esbuild/netbsd-x64": "0.16.17",
795 | "@esbuild/openbsd-x64": "0.16.17",
796 | "@esbuild/sunos-x64": "0.16.17",
797 | "@esbuild/win32-arm64": "0.16.17",
798 | "@esbuild/win32-ia32": "0.16.17",
799 | "@esbuild/win32-x64": "0.16.17"
800 | }
801 | },
802 | "node_modules/escape-string-regexp": {
803 | "version": "4.0.0",
804 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
805 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
806 | "dev": true,
807 | "engines": {
808 | "node": ">=10"
809 | },
810 | "funding": {
811 | "url": "https://github.com/sponsors/sindresorhus"
812 | }
813 | },
814 | "node_modules/eslint": {
815 | "version": "8.32.0",
816 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz",
817 | "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==",
818 | "dev": true,
819 | "dependencies": {
820 | "@eslint/eslintrc": "^1.4.1",
821 | "@humanwhocodes/config-array": "^0.11.8",
822 | "@humanwhocodes/module-importer": "^1.0.1",
823 | "@nodelib/fs.walk": "^1.2.8",
824 | "ajv": "^6.10.0",
825 | "chalk": "^4.0.0",
826 | "cross-spawn": "^7.0.2",
827 | "debug": "^4.3.2",
828 | "doctrine": "^3.0.0",
829 | "escape-string-regexp": "^4.0.0",
830 | "eslint-scope": "^7.1.1",
831 | "eslint-utils": "^3.0.0",
832 | "eslint-visitor-keys": "^3.3.0",
833 | "espree": "^9.4.0",
834 | "esquery": "^1.4.0",
835 | "esutils": "^2.0.2",
836 | "fast-deep-equal": "^3.1.3",
837 | "file-entry-cache": "^6.0.1",
838 | "find-up": "^5.0.0",
839 | "glob-parent": "^6.0.2",
840 | "globals": "^13.19.0",
841 | "grapheme-splitter": "^1.0.4",
842 | "ignore": "^5.2.0",
843 | "import-fresh": "^3.0.0",
844 | "imurmurhash": "^0.1.4",
845 | "is-glob": "^4.0.0",
846 | "is-path-inside": "^3.0.3",
847 | "js-sdsl": "^4.1.4",
848 | "js-yaml": "^4.1.0",
849 | "json-stable-stringify-without-jsonify": "^1.0.1",
850 | "levn": "^0.4.1",
851 | "lodash.merge": "^4.6.2",
852 | "minimatch": "^3.1.2",
853 | "natural-compare": "^1.4.0",
854 | "optionator": "^0.9.1",
855 | "regexpp": "^3.2.0",
856 | "strip-ansi": "^6.0.1",
857 | "strip-json-comments": "^3.1.0",
858 | "text-table": "^0.2.0"
859 | },
860 | "bin": {
861 | "eslint": "bin/eslint.js"
862 | },
863 | "engines": {
864 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
865 | },
866 | "funding": {
867 | "url": "https://opencollective.com/eslint"
868 | }
869 | },
870 | "node_modules/eslint-config-prettier": {
871 | "version": "8.6.0",
872 | "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz",
873 | "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==",
874 | "dev": true,
875 | "bin": {
876 | "eslint-config-prettier": "bin/cli.js"
877 | },
878 | "peerDependencies": {
879 | "eslint": ">=7.0.0"
880 | }
881 | },
882 | "node_modules/eslint-plugin-svelte3": {
883 | "version": "4.0.0",
884 | "resolved": "https://registry.npmjs.org/eslint-plugin-svelte3/-/eslint-plugin-svelte3-4.0.0.tgz",
885 | "integrity": "sha512-OIx9lgaNzD02+MDFNLw0GEUbuovNcglg+wnd/UY0fbZmlQSz7GlQiQ1f+yX0XvC07XPcDOnFcichqI3xCwp71g==",
886 | "dev": true,
887 | "peerDependencies": {
888 | "eslint": ">=8.0.0",
889 | "svelte": "^3.2.0"
890 | }
891 | },
892 | "node_modules/eslint-scope": {
893 | "version": "7.1.1",
894 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
895 | "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
896 | "dev": true,
897 | "dependencies": {
898 | "esrecurse": "^4.3.0",
899 | "estraverse": "^5.2.0"
900 | },
901 | "engines": {
902 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
903 | }
904 | },
905 | "node_modules/eslint-utils": {
906 | "version": "3.0.0",
907 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz",
908 | "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
909 | "dev": true,
910 | "dependencies": {
911 | "eslint-visitor-keys": "^2.0.0"
912 | },
913 | "engines": {
914 | "node": "^10.0.0 || ^12.0.0 || >= 14.0.0"
915 | },
916 | "funding": {
917 | "url": "https://github.com/sponsors/mysticatea"
918 | },
919 | "peerDependencies": {
920 | "eslint": ">=5"
921 | }
922 | },
923 | "node_modules/eslint-utils/node_modules/eslint-visitor-keys": {
924 | "version": "2.1.0",
925 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
926 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
927 | "dev": true,
928 | "engines": {
929 | "node": ">=10"
930 | }
931 | },
932 | "node_modules/eslint-visitor-keys": {
933 | "version": "3.3.0",
934 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
935 | "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==",
936 | "dev": true,
937 | "engines": {
938 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
939 | }
940 | },
941 | "node_modules/esm-env": {
942 | "version": "1.0.0",
943 | "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.0.0.tgz",
944 | "integrity": "sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==",
945 | "dev": true
946 | },
947 | "node_modules/espree": {
948 | "version": "9.4.1",
949 | "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz",
950 | "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==",
951 | "dev": true,
952 | "dependencies": {
953 | "acorn": "^8.8.0",
954 | "acorn-jsx": "^5.3.2",
955 | "eslint-visitor-keys": "^3.3.0"
956 | },
957 | "engines": {
958 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
959 | },
960 | "funding": {
961 | "url": "https://opencollective.com/eslint"
962 | }
963 | },
964 | "node_modules/esquery": {
965 | "version": "1.4.0",
966 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
967 | "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
968 | "dev": true,
969 | "dependencies": {
970 | "estraverse": "^5.1.0"
971 | },
972 | "engines": {
973 | "node": ">=0.10"
974 | }
975 | },
976 | "node_modules/esrecurse": {
977 | "version": "4.3.0",
978 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
979 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
980 | "dev": true,
981 | "dependencies": {
982 | "estraverse": "^5.2.0"
983 | },
984 | "engines": {
985 | "node": ">=4.0"
986 | }
987 | },
988 | "node_modules/estraverse": {
989 | "version": "5.3.0",
990 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
991 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
992 | "dev": true,
993 | "engines": {
994 | "node": ">=4.0"
995 | }
996 | },
997 | "node_modules/esutils": {
998 | "version": "2.0.3",
999 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
1000 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
1001 | "dev": true,
1002 | "engines": {
1003 | "node": ">=0.10.0"
1004 | }
1005 | },
1006 | "node_modules/fast-deep-equal": {
1007 | "version": "3.1.3",
1008 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
1009 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
1010 | "dev": true
1011 | },
1012 | "node_modules/fast-json-stable-stringify": {
1013 | "version": "2.1.0",
1014 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1015 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
1016 | "dev": true
1017 | },
1018 | "node_modules/fast-levenshtein": {
1019 | "version": "2.0.6",
1020 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
1021 | "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
1022 | "dev": true
1023 | },
1024 | "node_modules/fastq": {
1025 | "version": "1.15.0",
1026 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
1027 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
1028 | "dev": true,
1029 | "dependencies": {
1030 | "reusify": "^1.0.4"
1031 | }
1032 | },
1033 | "node_modules/file-entry-cache": {
1034 | "version": "6.0.1",
1035 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
1036 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
1037 | "dev": true,
1038 | "dependencies": {
1039 | "flat-cache": "^3.0.4"
1040 | },
1041 | "engines": {
1042 | "node": "^10.12.0 || >=12.0.0"
1043 | }
1044 | },
1045 | "node_modules/find-up": {
1046 | "version": "5.0.0",
1047 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
1048 | "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
1049 | "dev": true,
1050 | "dependencies": {
1051 | "locate-path": "^6.0.0",
1052 | "path-exists": "^4.0.0"
1053 | },
1054 | "engines": {
1055 | "node": ">=10"
1056 | },
1057 | "funding": {
1058 | "url": "https://github.com/sponsors/sindresorhus"
1059 | }
1060 | },
1061 | "node_modules/flat-cache": {
1062 | "version": "3.0.4",
1063 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
1064 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
1065 | "dev": true,
1066 | "dependencies": {
1067 | "flatted": "^3.1.0",
1068 | "rimraf": "^3.0.2"
1069 | },
1070 | "engines": {
1071 | "node": "^10.12.0 || >=12.0.0"
1072 | }
1073 | },
1074 | "node_modules/flatted": {
1075 | "version": "3.2.7",
1076 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
1077 | "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==",
1078 | "dev": true
1079 | },
1080 | "node_modules/fs.realpath": {
1081 | "version": "1.0.0",
1082 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1083 | "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
1084 | "dev": true
1085 | },
1086 | "node_modules/fsevents": {
1087 | "version": "2.3.2",
1088 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
1089 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
1090 | "dev": true,
1091 | "hasInstallScript": true,
1092 | "optional": true,
1093 | "os": [
1094 | "darwin"
1095 | ],
1096 | "engines": {
1097 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1098 | }
1099 | },
1100 | "node_modules/function-bind": {
1101 | "version": "1.1.1",
1102 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
1103 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
1104 | "dev": true
1105 | },
1106 | "node_modules/glob": {
1107 | "version": "7.2.3",
1108 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
1109 | "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
1110 | "dev": true,
1111 | "dependencies": {
1112 | "fs.realpath": "^1.0.0",
1113 | "inflight": "^1.0.4",
1114 | "inherits": "2",
1115 | "minimatch": "^3.1.1",
1116 | "once": "^1.3.0",
1117 | "path-is-absolute": "^1.0.0"
1118 | },
1119 | "engines": {
1120 | "node": "*"
1121 | },
1122 | "funding": {
1123 | "url": "https://github.com/sponsors/isaacs"
1124 | }
1125 | },
1126 | "node_modules/glob-parent": {
1127 | "version": "6.0.2",
1128 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
1129 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
1130 | "dev": true,
1131 | "dependencies": {
1132 | "is-glob": "^4.0.3"
1133 | },
1134 | "engines": {
1135 | "node": ">=10.13.0"
1136 | }
1137 | },
1138 | "node_modules/globals": {
1139 | "version": "13.19.0",
1140 | "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz",
1141 | "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==",
1142 | "dev": true,
1143 | "dependencies": {
1144 | "type-fest": "^0.20.2"
1145 | },
1146 | "engines": {
1147 | "node": ">=8"
1148 | },
1149 | "funding": {
1150 | "url": "https://github.com/sponsors/sindresorhus"
1151 | }
1152 | },
1153 | "node_modules/globalyzer": {
1154 | "version": "0.1.0",
1155 | "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz",
1156 | "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==",
1157 | "dev": true
1158 | },
1159 | "node_modules/globrex": {
1160 | "version": "0.1.2",
1161 | "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz",
1162 | "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==",
1163 | "dev": true
1164 | },
1165 | "node_modules/grapheme-splitter": {
1166 | "version": "1.0.4",
1167 | "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
1168 | "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==",
1169 | "dev": true
1170 | },
1171 | "node_modules/has": {
1172 | "version": "1.0.3",
1173 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
1174 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
1175 | "dev": true,
1176 | "dependencies": {
1177 | "function-bind": "^1.1.1"
1178 | },
1179 | "engines": {
1180 | "node": ">= 0.4.0"
1181 | }
1182 | },
1183 | "node_modules/has-flag": {
1184 | "version": "4.0.0",
1185 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
1186 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
1187 | "dev": true,
1188 | "engines": {
1189 | "node": ">=8"
1190 | }
1191 | },
1192 | "node_modules/ignore": {
1193 | "version": "5.2.4",
1194 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
1195 | "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
1196 | "dev": true,
1197 | "engines": {
1198 | "node": ">= 4"
1199 | }
1200 | },
1201 | "node_modules/import-fresh": {
1202 | "version": "3.3.0",
1203 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
1204 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
1205 | "dev": true,
1206 | "dependencies": {
1207 | "parent-module": "^1.0.0",
1208 | "resolve-from": "^4.0.0"
1209 | },
1210 | "engines": {
1211 | "node": ">=6"
1212 | },
1213 | "funding": {
1214 | "url": "https://github.com/sponsors/sindresorhus"
1215 | }
1216 | },
1217 | "node_modules/import-meta-resolve": {
1218 | "version": "2.2.1",
1219 | "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-2.2.1.tgz",
1220 | "integrity": "sha512-C6lLL7EJPY44kBvA80gq4uMsVFw5x3oSKfuMl1cuZ2RkI5+UJqQXgn+6hlUew0y4ig7Ypt4CObAAIzU53Nfpuw==",
1221 | "dev": true,
1222 | "funding": {
1223 | "type": "github",
1224 | "url": "https://github.com/sponsors/wooorm"
1225 | }
1226 | },
1227 | "node_modules/imurmurhash": {
1228 | "version": "0.1.4",
1229 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
1230 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
1231 | "dev": true,
1232 | "engines": {
1233 | "node": ">=0.8.19"
1234 | }
1235 | },
1236 | "node_modules/inflight": {
1237 | "version": "1.0.6",
1238 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1239 | "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
1240 | "dev": true,
1241 | "dependencies": {
1242 | "once": "^1.3.0",
1243 | "wrappy": "1"
1244 | }
1245 | },
1246 | "node_modules/inherits": {
1247 | "version": "2.0.4",
1248 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1249 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
1250 | "dev": true
1251 | },
1252 | "node_modules/is-core-module": {
1253 | "version": "2.11.0",
1254 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz",
1255 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
1256 | "dev": true,
1257 | "dependencies": {
1258 | "has": "^1.0.3"
1259 | },
1260 | "funding": {
1261 | "url": "https://github.com/sponsors/ljharb"
1262 | }
1263 | },
1264 | "node_modules/is-extglob": {
1265 | "version": "2.1.1",
1266 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1267 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
1268 | "dev": true,
1269 | "engines": {
1270 | "node": ">=0.10.0"
1271 | }
1272 | },
1273 | "node_modules/is-glob": {
1274 | "version": "4.0.3",
1275 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
1276 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
1277 | "dev": true,
1278 | "dependencies": {
1279 | "is-extglob": "^2.1.1"
1280 | },
1281 | "engines": {
1282 | "node": ">=0.10.0"
1283 | }
1284 | },
1285 | "node_modules/is-path-inside": {
1286 | "version": "3.0.3",
1287 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
1288 | "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
1289 | "dev": true,
1290 | "engines": {
1291 | "node": ">=8"
1292 | }
1293 | },
1294 | "node_modules/isexe": {
1295 | "version": "2.0.0",
1296 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1297 | "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
1298 | "dev": true
1299 | },
1300 | "node_modules/js-sdsl": {
1301 | "version": "4.3.0",
1302 | "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz",
1303 | "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==",
1304 | "dev": true,
1305 | "funding": {
1306 | "type": "opencollective",
1307 | "url": "https://opencollective.com/js-sdsl"
1308 | }
1309 | },
1310 | "node_modules/js-yaml": {
1311 | "version": "4.1.0",
1312 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
1313 | "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
1314 | "dev": true,
1315 | "dependencies": {
1316 | "argparse": "^2.0.1"
1317 | },
1318 | "bin": {
1319 | "js-yaml": "bin/js-yaml.js"
1320 | }
1321 | },
1322 | "node_modules/json-schema-traverse": {
1323 | "version": "0.4.1",
1324 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
1325 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
1326 | "dev": true
1327 | },
1328 | "node_modules/json-stable-stringify-without-jsonify": {
1329 | "version": "1.0.1",
1330 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
1331 | "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
1332 | "dev": true
1333 | },
1334 | "node_modules/kleur": {
1335 | "version": "4.1.5",
1336 | "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
1337 | "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
1338 | "dev": true,
1339 | "engines": {
1340 | "node": ">=6"
1341 | }
1342 | },
1343 | "node_modules/levn": {
1344 | "version": "0.4.1",
1345 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
1346 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
1347 | "dev": true,
1348 | "dependencies": {
1349 | "prelude-ls": "^1.2.1",
1350 | "type-check": "~0.4.0"
1351 | },
1352 | "engines": {
1353 | "node": ">= 0.8.0"
1354 | }
1355 | },
1356 | "node_modules/locate-path": {
1357 | "version": "6.0.0",
1358 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
1359 | "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
1360 | "dev": true,
1361 | "dependencies": {
1362 | "p-locate": "^5.0.0"
1363 | },
1364 | "engines": {
1365 | "node": ">=10"
1366 | },
1367 | "funding": {
1368 | "url": "https://github.com/sponsors/sindresorhus"
1369 | }
1370 | },
1371 | "node_modules/lodash.merge": {
1372 | "version": "4.6.2",
1373 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
1374 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
1375 | "dev": true
1376 | },
1377 | "node_modules/magic-string": {
1378 | "version": "0.27.0",
1379 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz",
1380 | "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==",
1381 | "dev": true,
1382 | "dependencies": {
1383 | "@jridgewell/sourcemap-codec": "^1.4.13"
1384 | },
1385 | "engines": {
1386 | "node": ">=12"
1387 | }
1388 | },
1389 | "node_modules/mime": {
1390 | "version": "3.0.0",
1391 | "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz",
1392 | "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==",
1393 | "dev": true,
1394 | "bin": {
1395 | "mime": "cli.js"
1396 | },
1397 | "engines": {
1398 | "node": ">=10.0.0"
1399 | }
1400 | },
1401 | "node_modules/minimatch": {
1402 | "version": "3.1.2",
1403 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
1404 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
1405 | "dev": true,
1406 | "dependencies": {
1407 | "brace-expansion": "^1.1.7"
1408 | },
1409 | "engines": {
1410 | "node": "*"
1411 | }
1412 | },
1413 | "node_modules/mri": {
1414 | "version": "1.2.0",
1415 | "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
1416 | "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
1417 | "dev": true,
1418 | "engines": {
1419 | "node": ">=4"
1420 | }
1421 | },
1422 | "node_modules/mrmime": {
1423 | "version": "1.0.1",
1424 | "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz",
1425 | "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==",
1426 | "dev": true,
1427 | "engines": {
1428 | "node": ">=10"
1429 | }
1430 | },
1431 | "node_modules/ms": {
1432 | "version": "2.1.2",
1433 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1434 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
1435 | "dev": true
1436 | },
1437 | "node_modules/nanoid": {
1438 | "version": "3.3.4",
1439 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
1440 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
1441 | "dev": true,
1442 | "bin": {
1443 | "nanoid": "bin/nanoid.cjs"
1444 | },
1445 | "engines": {
1446 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
1447 | }
1448 | },
1449 | "node_modules/natural-compare": {
1450 | "version": "1.4.0",
1451 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
1452 | "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
1453 | "dev": true
1454 | },
1455 | "node_modules/once": {
1456 | "version": "1.4.0",
1457 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1458 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
1459 | "dev": true,
1460 | "dependencies": {
1461 | "wrappy": "1"
1462 | }
1463 | },
1464 | "node_modules/optionator": {
1465 | "version": "0.9.1",
1466 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
1467 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
1468 | "dev": true,
1469 | "dependencies": {
1470 | "deep-is": "^0.1.3",
1471 | "fast-levenshtein": "^2.0.6",
1472 | "levn": "^0.4.1",
1473 | "prelude-ls": "^1.2.1",
1474 | "type-check": "^0.4.0",
1475 | "word-wrap": "^1.2.3"
1476 | },
1477 | "engines": {
1478 | "node": ">= 0.8.0"
1479 | }
1480 | },
1481 | "node_modules/p-limit": {
1482 | "version": "3.1.0",
1483 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
1484 | "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
1485 | "dev": true,
1486 | "dependencies": {
1487 | "yocto-queue": "^0.1.0"
1488 | },
1489 | "engines": {
1490 | "node": ">=10"
1491 | },
1492 | "funding": {
1493 | "url": "https://github.com/sponsors/sindresorhus"
1494 | }
1495 | },
1496 | "node_modules/p-locate": {
1497 | "version": "5.0.0",
1498 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
1499 | "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
1500 | "dev": true,
1501 | "dependencies": {
1502 | "p-limit": "^3.0.2"
1503 | },
1504 | "engines": {
1505 | "node": ">=10"
1506 | },
1507 | "funding": {
1508 | "url": "https://github.com/sponsors/sindresorhus"
1509 | }
1510 | },
1511 | "node_modules/parent-module": {
1512 | "version": "1.0.1",
1513 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
1514 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
1515 | "dev": true,
1516 | "dependencies": {
1517 | "callsites": "^3.0.0"
1518 | },
1519 | "engines": {
1520 | "node": ">=6"
1521 | }
1522 | },
1523 | "node_modules/path-exists": {
1524 | "version": "4.0.0",
1525 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
1526 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
1527 | "dev": true,
1528 | "engines": {
1529 | "node": ">=8"
1530 | }
1531 | },
1532 | "node_modules/path-is-absolute": {
1533 | "version": "1.0.1",
1534 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
1535 | "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
1536 | "dev": true,
1537 | "engines": {
1538 | "node": ">=0.10.0"
1539 | }
1540 | },
1541 | "node_modules/path-key": {
1542 | "version": "3.1.1",
1543 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1544 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1545 | "dev": true,
1546 | "engines": {
1547 | "node": ">=8"
1548 | }
1549 | },
1550 | "node_modules/path-parse": {
1551 | "version": "1.0.7",
1552 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
1553 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
1554 | "dev": true
1555 | },
1556 | "node_modules/picocolors": {
1557 | "version": "1.0.0",
1558 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
1559 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
1560 | "dev": true
1561 | },
1562 | "node_modules/postcss": {
1563 | "version": "8.4.21",
1564 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz",
1565 | "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==",
1566 | "dev": true,
1567 | "funding": [
1568 | {
1569 | "type": "opencollective",
1570 | "url": "https://opencollective.com/postcss/"
1571 | },
1572 | {
1573 | "type": "tidelift",
1574 | "url": "https://tidelift.com/funding/github/npm/postcss"
1575 | }
1576 | ],
1577 | "dependencies": {
1578 | "nanoid": "^3.3.4",
1579 | "picocolors": "^1.0.0",
1580 | "source-map-js": "^1.0.2"
1581 | },
1582 | "engines": {
1583 | "node": "^10 || ^12 || >=14"
1584 | }
1585 | },
1586 | "node_modules/prelude-ls": {
1587 | "version": "1.2.1",
1588 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
1589 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
1590 | "dev": true,
1591 | "engines": {
1592 | "node": ">= 0.8.0"
1593 | }
1594 | },
1595 | "node_modules/prettier": {
1596 | "version": "2.8.3",
1597 | "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.3.tgz",
1598 | "integrity": "sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==",
1599 | "dev": true,
1600 | "bin": {
1601 | "prettier": "bin-prettier.js"
1602 | },
1603 | "engines": {
1604 | "node": ">=10.13.0"
1605 | },
1606 | "funding": {
1607 | "url": "https://github.com/prettier/prettier?sponsor=1"
1608 | }
1609 | },
1610 | "node_modules/prettier-plugin-svelte": {
1611 | "version": "2.9.0",
1612 | "resolved": "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-2.9.0.tgz",
1613 | "integrity": "sha512-3doBi5NO4IVgaNPtwewvrgPpqAcvNv0NwJNflr76PIGgi9nf1oguQV1Hpdm9TI2ALIQVn/9iIwLpBO5UcD2Jiw==",
1614 | "dev": true,
1615 | "peerDependencies": {
1616 | "prettier": "^1.16.4 || ^2.0.0",
1617 | "svelte": "^3.2.0"
1618 | }
1619 | },
1620 | "node_modules/punycode": {
1621 | "version": "2.3.0",
1622 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
1623 | "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
1624 | "dev": true,
1625 | "engines": {
1626 | "node": ">=6"
1627 | }
1628 | },
1629 | "node_modules/queue-microtask": {
1630 | "version": "1.2.3",
1631 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
1632 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
1633 | "dev": true,
1634 | "funding": [
1635 | {
1636 | "type": "github",
1637 | "url": "https://github.com/sponsors/feross"
1638 | },
1639 | {
1640 | "type": "patreon",
1641 | "url": "https://www.patreon.com/feross"
1642 | },
1643 | {
1644 | "type": "consulting",
1645 | "url": "https://feross.org/support"
1646 | }
1647 | ]
1648 | },
1649 | "node_modules/regexpp": {
1650 | "version": "3.2.0",
1651 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
1652 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
1653 | "dev": true,
1654 | "engines": {
1655 | "node": ">=8"
1656 | },
1657 | "funding": {
1658 | "url": "https://github.com/sponsors/mysticatea"
1659 | }
1660 | },
1661 | "node_modules/resolve": {
1662 | "version": "1.22.1",
1663 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
1664 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
1665 | "dev": true,
1666 | "dependencies": {
1667 | "is-core-module": "^2.9.0",
1668 | "path-parse": "^1.0.7",
1669 | "supports-preserve-symlinks-flag": "^1.0.0"
1670 | },
1671 | "bin": {
1672 | "resolve": "bin/resolve"
1673 | },
1674 | "funding": {
1675 | "url": "https://github.com/sponsors/ljharb"
1676 | }
1677 | },
1678 | "node_modules/resolve-from": {
1679 | "version": "4.0.0",
1680 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
1681 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
1682 | "dev": true,
1683 | "engines": {
1684 | "node": ">=4"
1685 | }
1686 | },
1687 | "node_modules/reusify": {
1688 | "version": "1.0.4",
1689 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
1690 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
1691 | "dev": true,
1692 | "engines": {
1693 | "iojs": ">=1.0.0",
1694 | "node": ">=0.10.0"
1695 | }
1696 | },
1697 | "node_modules/rimraf": {
1698 | "version": "3.0.2",
1699 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
1700 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
1701 | "dev": true,
1702 | "dependencies": {
1703 | "glob": "^7.1.3"
1704 | },
1705 | "bin": {
1706 | "rimraf": "bin.js"
1707 | },
1708 | "funding": {
1709 | "url": "https://github.com/sponsors/isaacs"
1710 | }
1711 | },
1712 | "node_modules/rollup": {
1713 | "version": "3.11.0",
1714 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.11.0.tgz",
1715 | "integrity": "sha512-+uWPPkpWQ2H3Qi7sNBcRfhhHJyUNgBYhG4wKe5wuGRj2m55kpo+0p5jubKNBjQODyPe6tSBE3tNpdDwEisQvAQ==",
1716 | "dev": true,
1717 | "bin": {
1718 | "rollup": "dist/bin/rollup"
1719 | },
1720 | "engines": {
1721 | "node": ">=14.18.0",
1722 | "npm": ">=8.0.0"
1723 | },
1724 | "optionalDependencies": {
1725 | "fsevents": "~2.3.2"
1726 | }
1727 | },
1728 | "node_modules/run-parallel": {
1729 | "version": "1.2.0",
1730 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
1731 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
1732 | "dev": true,
1733 | "funding": [
1734 | {
1735 | "type": "github",
1736 | "url": "https://github.com/sponsors/feross"
1737 | },
1738 | {
1739 | "type": "patreon",
1740 | "url": "https://www.patreon.com/feross"
1741 | },
1742 | {
1743 | "type": "consulting",
1744 | "url": "https://feross.org/support"
1745 | }
1746 | ],
1747 | "dependencies": {
1748 | "queue-microtask": "^1.2.2"
1749 | }
1750 | },
1751 | "node_modules/sade": {
1752 | "version": "1.8.1",
1753 | "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz",
1754 | "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==",
1755 | "dev": true,
1756 | "dependencies": {
1757 | "mri": "^1.1.0"
1758 | },
1759 | "engines": {
1760 | "node": ">=6"
1761 | }
1762 | },
1763 | "node_modules/set-cookie-parser": {
1764 | "version": "2.5.1",
1765 | "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.5.1.tgz",
1766 | "integrity": "sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==",
1767 | "dev": true
1768 | },
1769 | "node_modules/shebang-command": {
1770 | "version": "2.0.0",
1771 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1772 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1773 | "dev": true,
1774 | "dependencies": {
1775 | "shebang-regex": "^3.0.0"
1776 | },
1777 | "engines": {
1778 | "node": ">=8"
1779 | }
1780 | },
1781 | "node_modules/shebang-regex": {
1782 | "version": "3.0.0",
1783 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1784 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1785 | "dev": true,
1786 | "engines": {
1787 | "node": ">=8"
1788 | }
1789 | },
1790 | "node_modules/sirv": {
1791 | "version": "2.0.2",
1792 | "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.2.tgz",
1793 | "integrity": "sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==",
1794 | "dev": true,
1795 | "dependencies": {
1796 | "@polka/url": "^1.0.0-next.20",
1797 | "mrmime": "^1.0.0",
1798 | "totalist": "^3.0.0"
1799 | },
1800 | "engines": {
1801 | "node": ">= 10"
1802 | }
1803 | },
1804 | "node_modules/source-map-js": {
1805 | "version": "1.0.2",
1806 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
1807 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
1808 | "dev": true,
1809 | "engines": {
1810 | "node": ">=0.10.0"
1811 | }
1812 | },
1813 | "node_modules/streamsearch": {
1814 | "version": "1.1.0",
1815 | "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
1816 | "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
1817 | "dev": true,
1818 | "engines": {
1819 | "node": ">=10.0.0"
1820 | }
1821 | },
1822 | "node_modules/strip-ansi": {
1823 | "version": "6.0.1",
1824 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
1825 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
1826 | "dev": true,
1827 | "dependencies": {
1828 | "ansi-regex": "^5.0.1"
1829 | },
1830 | "engines": {
1831 | "node": ">=8"
1832 | }
1833 | },
1834 | "node_modules/strip-json-comments": {
1835 | "version": "3.1.1",
1836 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
1837 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
1838 | "dev": true,
1839 | "engines": {
1840 | "node": ">=8"
1841 | },
1842 | "funding": {
1843 | "url": "https://github.com/sponsors/sindresorhus"
1844 | }
1845 | },
1846 | "node_modules/supports-color": {
1847 | "version": "7.2.0",
1848 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1849 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1850 | "dev": true,
1851 | "dependencies": {
1852 | "has-flag": "^4.0.0"
1853 | },
1854 | "engines": {
1855 | "node": ">=8"
1856 | }
1857 | },
1858 | "node_modules/supports-preserve-symlinks-flag": {
1859 | "version": "1.0.0",
1860 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
1861 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
1862 | "dev": true,
1863 | "engines": {
1864 | "node": ">= 0.4"
1865 | },
1866 | "funding": {
1867 | "url": "https://github.com/sponsors/ljharb"
1868 | }
1869 | },
1870 | "node_modules/svelte": {
1871 | "version": "3.55.1",
1872 | "resolved": "https://registry.npmjs.org/svelte/-/svelte-3.55.1.tgz",
1873 | "integrity": "sha512-S+87/P0Ve67HxKkEV23iCdAh/SX1xiSfjF1HOglno/YTbSTW7RniICMCofWGdJJbdjw3S+0PfFb1JtGfTXE0oQ==",
1874 | "dev": true,
1875 | "engines": {
1876 | "node": ">= 8"
1877 | }
1878 | },
1879 | "node_modules/svelte-hmr": {
1880 | "version": "0.15.1",
1881 | "resolved": "https://registry.npmjs.org/svelte-hmr/-/svelte-hmr-0.15.1.tgz",
1882 | "integrity": "sha512-BiKB4RZ8YSwRKCNVdNxK/GfY+r4Kjgp9jCLEy0DuqAKfmQtpL38cQK3afdpjw4sqSs4PLi3jIPJIFp259NkZtA==",
1883 | "dev": true,
1884 | "engines": {
1885 | "node": "^12.20 || ^14.13.1 || >= 16"
1886 | },
1887 | "peerDependencies": {
1888 | "svelte": ">=3.19.0"
1889 | }
1890 | },
1891 | "node_modules/text-table": {
1892 | "version": "0.2.0",
1893 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
1894 | "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
1895 | "dev": true
1896 | },
1897 | "node_modules/tiny-glob": {
1898 | "version": "0.2.9",
1899 | "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz",
1900 | "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==",
1901 | "dev": true,
1902 | "dependencies": {
1903 | "globalyzer": "0.1.0",
1904 | "globrex": "^0.1.2"
1905 | }
1906 | },
1907 | "node_modules/totalist": {
1908 | "version": "3.0.0",
1909 | "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.0.tgz",
1910 | "integrity": "sha512-eM+pCBxXO/njtF7vdFsHuqb+ElbxqtI4r5EAvk6grfAFyJ6IvWlSkfZ5T9ozC6xWw3Fj1fGoSmrl0gUs46JVIw==",
1911 | "dev": true,
1912 | "engines": {
1913 | "node": ">=6"
1914 | }
1915 | },
1916 | "node_modules/type-check": {
1917 | "version": "0.4.0",
1918 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
1919 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
1920 | "dev": true,
1921 | "dependencies": {
1922 | "prelude-ls": "^1.2.1"
1923 | },
1924 | "engines": {
1925 | "node": ">= 0.8.0"
1926 | }
1927 | },
1928 | "node_modules/type-fest": {
1929 | "version": "0.20.2",
1930 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
1931 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
1932 | "dev": true,
1933 | "engines": {
1934 | "node": ">=10"
1935 | },
1936 | "funding": {
1937 | "url": "https://github.com/sponsors/sindresorhus"
1938 | }
1939 | },
1940 | "node_modules/undici": {
1941 | "version": "5.16.0",
1942 | "resolved": "https://registry.npmjs.org/undici/-/undici-5.16.0.tgz",
1943 | "integrity": "sha512-KWBOXNv6VX+oJQhchXieUznEmnJMqgXMbs0xxH2t8q/FUAWSJvOSr/rMaZKnX5RIVq7JDn0JbP4BOnKG2SGXLQ==",
1944 | "dev": true,
1945 | "dependencies": {
1946 | "busboy": "^1.6.0"
1947 | },
1948 | "engines": {
1949 | "node": ">=12.18"
1950 | }
1951 | },
1952 | "node_modules/uri-js": {
1953 | "version": "4.4.1",
1954 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
1955 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
1956 | "dev": true,
1957 | "dependencies": {
1958 | "punycode": "^2.1.0"
1959 | }
1960 | },
1961 | "node_modules/vite": {
1962 | "version": "4.0.4",
1963 | "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.4.tgz",
1964 | "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==",
1965 | "dev": true,
1966 | "dependencies": {
1967 | "esbuild": "^0.16.3",
1968 | "postcss": "^8.4.20",
1969 | "resolve": "^1.22.1",
1970 | "rollup": "^3.7.0"
1971 | },
1972 | "bin": {
1973 | "vite": "bin/vite.js"
1974 | },
1975 | "engines": {
1976 | "node": "^14.18.0 || >=16.0.0"
1977 | },
1978 | "optionalDependencies": {
1979 | "fsevents": "~2.3.2"
1980 | },
1981 | "peerDependencies": {
1982 | "@types/node": ">= 14",
1983 | "less": "*",
1984 | "sass": "*",
1985 | "stylus": "*",
1986 | "sugarss": "*",
1987 | "terser": "^5.4.0"
1988 | },
1989 | "peerDependenciesMeta": {
1990 | "@types/node": {
1991 | "optional": true
1992 | },
1993 | "less": {
1994 | "optional": true
1995 | },
1996 | "sass": {
1997 | "optional": true
1998 | },
1999 | "stylus": {
2000 | "optional": true
2001 | },
2002 | "sugarss": {
2003 | "optional": true
2004 | },
2005 | "terser": {
2006 | "optional": true
2007 | }
2008 | }
2009 | },
2010 | "node_modules/vitefu": {
2011 | "version": "0.2.4",
2012 | "resolved": "https://registry.npmjs.org/vitefu/-/vitefu-0.2.4.tgz",
2013 | "integrity": "sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==",
2014 | "dev": true,
2015 | "peerDependencies": {
2016 | "vite": "^3.0.0 || ^4.0.0"
2017 | },
2018 | "peerDependenciesMeta": {
2019 | "vite": {
2020 | "optional": true
2021 | }
2022 | }
2023 | },
2024 | "node_modules/which": {
2025 | "version": "2.0.2",
2026 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
2027 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
2028 | "dev": true,
2029 | "dependencies": {
2030 | "isexe": "^2.0.0"
2031 | },
2032 | "bin": {
2033 | "node-which": "bin/node-which"
2034 | },
2035 | "engines": {
2036 | "node": ">= 8"
2037 | }
2038 | },
2039 | "node_modules/word-wrap": {
2040 | "version": "1.2.3",
2041 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
2042 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
2043 | "dev": true,
2044 | "engines": {
2045 | "node": ">=0.10.0"
2046 | }
2047 | },
2048 | "node_modules/wrappy": {
2049 | "version": "1.0.2",
2050 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
2051 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
2052 | "dev": true
2053 | },
2054 | "node_modules/yocto-queue": {
2055 | "version": "0.1.0",
2056 | "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
2057 | "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
2058 | "dev": true,
2059 | "engines": {
2060 | "node": ">=10"
2061 | },
2062 | "funding": {
2063 | "url": "https://github.com/sponsors/sindresorhus"
2064 | }
2065 | }
2066 | },
2067 | "dependencies": {
2068 | "@esbuild/android-arm": {
2069 | "version": "0.16.17",
2070 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz",
2071 | "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==",
2072 | "dev": true,
2073 | "optional": true
2074 | },
2075 | "@esbuild/android-arm64": {
2076 | "version": "0.16.17",
2077 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz",
2078 | "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==",
2079 | "dev": true,
2080 | "optional": true
2081 | },
2082 | "@esbuild/android-x64": {
2083 | "version": "0.16.17",
2084 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz",
2085 | "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==",
2086 | "dev": true,
2087 | "optional": true
2088 | },
2089 | "@esbuild/darwin-arm64": {
2090 | "version": "0.16.17",
2091 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz",
2092 | "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==",
2093 | "dev": true,
2094 | "optional": true
2095 | },
2096 | "@esbuild/darwin-x64": {
2097 | "version": "0.16.17",
2098 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz",
2099 | "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==",
2100 | "dev": true,
2101 | "optional": true
2102 | },
2103 | "@esbuild/freebsd-arm64": {
2104 | "version": "0.16.17",
2105 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz",
2106 | "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==",
2107 | "dev": true,
2108 | "optional": true
2109 | },
2110 | "@esbuild/freebsd-x64": {
2111 | "version": "0.16.17",
2112 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz",
2113 | "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==",
2114 | "dev": true,
2115 | "optional": true
2116 | },
2117 | "@esbuild/linux-arm": {
2118 | "version": "0.16.17",
2119 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz",
2120 | "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==",
2121 | "dev": true,
2122 | "optional": true
2123 | },
2124 | "@esbuild/linux-arm64": {
2125 | "version": "0.16.17",
2126 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz",
2127 | "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==",
2128 | "dev": true,
2129 | "optional": true
2130 | },
2131 | "@esbuild/linux-ia32": {
2132 | "version": "0.16.17",
2133 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz",
2134 | "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==",
2135 | "dev": true,
2136 | "optional": true
2137 | },
2138 | "@esbuild/linux-loong64": {
2139 | "version": "0.16.17",
2140 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz",
2141 | "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==",
2142 | "dev": true,
2143 | "optional": true
2144 | },
2145 | "@esbuild/linux-mips64el": {
2146 | "version": "0.16.17",
2147 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz",
2148 | "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==",
2149 | "dev": true,
2150 | "optional": true
2151 | },
2152 | "@esbuild/linux-ppc64": {
2153 | "version": "0.16.17",
2154 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz",
2155 | "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==",
2156 | "dev": true,
2157 | "optional": true
2158 | },
2159 | "@esbuild/linux-riscv64": {
2160 | "version": "0.16.17",
2161 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz",
2162 | "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==",
2163 | "dev": true,
2164 | "optional": true
2165 | },
2166 | "@esbuild/linux-s390x": {
2167 | "version": "0.16.17",
2168 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz",
2169 | "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==",
2170 | "dev": true,
2171 | "optional": true
2172 | },
2173 | "@esbuild/linux-x64": {
2174 | "version": "0.16.17",
2175 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz",
2176 | "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==",
2177 | "dev": true,
2178 | "optional": true
2179 | },
2180 | "@esbuild/netbsd-x64": {
2181 | "version": "0.16.17",
2182 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz",
2183 | "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==",
2184 | "dev": true,
2185 | "optional": true
2186 | },
2187 | "@esbuild/openbsd-x64": {
2188 | "version": "0.16.17",
2189 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz",
2190 | "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==",
2191 | "dev": true,
2192 | "optional": true
2193 | },
2194 | "@esbuild/sunos-x64": {
2195 | "version": "0.16.17",
2196 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz",
2197 | "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==",
2198 | "dev": true,
2199 | "optional": true
2200 | },
2201 | "@esbuild/win32-arm64": {
2202 | "version": "0.16.17",
2203 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz",
2204 | "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==",
2205 | "dev": true,
2206 | "optional": true
2207 | },
2208 | "@esbuild/win32-ia32": {
2209 | "version": "0.16.17",
2210 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz",
2211 | "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==",
2212 | "dev": true,
2213 | "optional": true
2214 | },
2215 | "@esbuild/win32-x64": {
2216 | "version": "0.16.17",
2217 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz",
2218 | "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==",
2219 | "dev": true,
2220 | "optional": true
2221 | },
2222 | "@eslint/eslintrc": {
2223 | "version": "1.4.1",
2224 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz",
2225 | "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==",
2226 | "dev": true,
2227 | "requires": {
2228 | "ajv": "^6.12.4",
2229 | "debug": "^4.3.2",
2230 | "espree": "^9.4.0",
2231 | "globals": "^13.19.0",
2232 | "ignore": "^5.2.0",
2233 | "import-fresh": "^3.2.1",
2234 | "js-yaml": "^4.1.0",
2235 | "minimatch": "^3.1.2",
2236 | "strip-json-comments": "^3.1.1"
2237 | }
2238 | },
2239 | "@humanwhocodes/config-array": {
2240 | "version": "0.11.8",
2241 | "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz",
2242 | "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==",
2243 | "dev": true,
2244 | "requires": {
2245 | "@humanwhocodes/object-schema": "^1.2.1",
2246 | "debug": "^4.1.1",
2247 | "minimatch": "^3.0.5"
2248 | }
2249 | },
2250 | "@humanwhocodes/module-importer": {
2251 | "version": "1.0.1",
2252 | "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
2253 | "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
2254 | "dev": true
2255 | },
2256 | "@humanwhocodes/object-schema": {
2257 | "version": "1.2.1",
2258 | "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
2259 | "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
2260 | "dev": true
2261 | },
2262 | "@jridgewell/sourcemap-codec": {
2263 | "version": "1.4.14",
2264 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
2265 | "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
2266 | "dev": true
2267 | },
2268 | "@nodelib/fs.scandir": {
2269 | "version": "2.1.5",
2270 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
2271 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
2272 | "dev": true,
2273 | "requires": {
2274 | "@nodelib/fs.stat": "2.0.5",
2275 | "run-parallel": "^1.1.9"
2276 | }
2277 | },
2278 | "@nodelib/fs.stat": {
2279 | "version": "2.0.5",
2280 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
2281 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
2282 | "dev": true
2283 | },
2284 | "@nodelib/fs.walk": {
2285 | "version": "1.2.8",
2286 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
2287 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
2288 | "dev": true,
2289 | "requires": {
2290 | "@nodelib/fs.scandir": "2.1.5",
2291 | "fastq": "^1.6.0"
2292 | }
2293 | },
2294 | "@polka/url": {
2295 | "version": "1.0.0-next.21",
2296 | "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz",
2297 | "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==",
2298 | "dev": true
2299 | },
2300 | "@sveltejs/adapter-auto": {
2301 | "version": "1.0.2",
2302 | "resolved": "https://registry.npmjs.org/@sveltejs/adapter-auto/-/adapter-auto-1.0.2.tgz",
2303 | "integrity": "sha512-UXpEO/gutERZnD+Z5Vi4J/ifD3WSRuCI7xwtLJTcKNQvJ6t5Xsj1X3Mw2F8Vv/XTUuxf7xPLYUgThU331r0Y9w==",
2304 | "dev": true,
2305 | "requires": {
2306 | "import-meta-resolve": "^2.2.0"
2307 | }
2308 | },
2309 | "@sveltejs/kit": {
2310 | "version": "1.2.10",
2311 | "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.2.10.tgz",
2312 | "integrity": "sha512-5LKhBEvkli5xzRObhV0c9QfyRiV96MQNouFM2Cn9nlEno6c88WVCFlNFPuTiSmHM2GE3pSCB+uT37fMFoWSERA==",
2313 | "dev": true,
2314 | "requires": {
2315 | "@sveltejs/vite-plugin-svelte": "^2.0.0",
2316 | "@types/cookie": "^0.5.1",
2317 | "cookie": "^0.5.0",
2318 | "devalue": "^4.2.2",
2319 | "esm-env": "^1.0.0",
2320 | "kleur": "^4.1.5",
2321 | "magic-string": "^0.27.0",
2322 | "mime": "^3.0.0",
2323 | "sade": "^1.8.1",
2324 | "set-cookie-parser": "^2.5.1",
2325 | "sirv": "^2.0.2",
2326 | "tiny-glob": "^0.2.9",
2327 | "undici": "5.16.0"
2328 | }
2329 | },
2330 | "@sveltejs/vite-plugin-svelte": {
2331 | "version": "2.0.2",
2332 | "resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-2.0.2.tgz",
2333 | "integrity": "sha512-xCEan0/NNpQuL0l5aS42FjwQ6wwskdxC3pW1OeFtEKNZwRg7Evro9lac9HesGP6TdFsTv2xMes5ASQVKbCacxg==",
2334 | "dev": true,
2335 | "requires": {
2336 | "debug": "^4.3.4",
2337 | "deepmerge": "^4.2.2",
2338 | "kleur": "^4.1.5",
2339 | "magic-string": "^0.27.0",
2340 | "svelte-hmr": "^0.15.1",
2341 | "vitefu": "^0.2.3"
2342 | }
2343 | },
2344 | "@types/cookie": {
2345 | "version": "0.5.1",
2346 | "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.5.1.tgz",
2347 | "integrity": "sha512-COUnqfB2+ckwXXSFInsFdOAWQzCCx+a5hq2ruyj+Vjund94RJQd4LG2u9hnvJrTgunKAaax7ancBYlDrNYxA0g==",
2348 | "dev": true
2349 | },
2350 | "acorn": {
2351 | "version": "8.8.2",
2352 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz",
2353 | "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==",
2354 | "dev": true
2355 | },
2356 | "acorn-jsx": {
2357 | "version": "5.3.2",
2358 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
2359 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
2360 | "dev": true,
2361 | "requires": {}
2362 | },
2363 | "ajv": {
2364 | "version": "6.12.6",
2365 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
2366 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
2367 | "dev": true,
2368 | "requires": {
2369 | "fast-deep-equal": "^3.1.1",
2370 | "fast-json-stable-stringify": "^2.0.0",
2371 | "json-schema-traverse": "^0.4.1",
2372 | "uri-js": "^4.2.2"
2373 | }
2374 | },
2375 | "ansi-regex": {
2376 | "version": "5.0.1",
2377 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
2378 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2379 | "dev": true
2380 | },
2381 | "ansi-styles": {
2382 | "version": "4.3.0",
2383 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2384 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2385 | "dev": true,
2386 | "requires": {
2387 | "color-convert": "^2.0.1"
2388 | }
2389 | },
2390 | "argparse": {
2391 | "version": "2.0.1",
2392 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
2393 | "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
2394 | "dev": true
2395 | },
2396 | "balanced-match": {
2397 | "version": "1.0.2",
2398 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
2399 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
2400 | "dev": true
2401 | },
2402 | "brace-expansion": {
2403 | "version": "1.1.11",
2404 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
2405 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
2406 | "dev": true,
2407 | "requires": {
2408 | "balanced-match": "^1.0.0",
2409 | "concat-map": "0.0.1"
2410 | }
2411 | },
2412 | "busboy": {
2413 | "version": "1.6.0",
2414 | "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
2415 | "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
2416 | "dev": true,
2417 | "requires": {
2418 | "streamsearch": "^1.1.0"
2419 | }
2420 | },
2421 | "callsites": {
2422 | "version": "3.1.0",
2423 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
2424 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
2425 | "dev": true
2426 | },
2427 | "chalk": {
2428 | "version": "4.1.2",
2429 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
2430 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
2431 | "dev": true,
2432 | "requires": {
2433 | "ansi-styles": "^4.1.0",
2434 | "supports-color": "^7.1.0"
2435 | }
2436 | },
2437 | "color-convert": {
2438 | "version": "2.0.1",
2439 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2440 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2441 | "dev": true,
2442 | "requires": {
2443 | "color-name": "~1.1.4"
2444 | }
2445 | },
2446 | "color-name": {
2447 | "version": "1.1.4",
2448 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2449 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
2450 | "dev": true
2451 | },
2452 | "concat-map": {
2453 | "version": "0.0.1",
2454 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
2455 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
2456 | "dev": true
2457 | },
2458 | "cookie": {
2459 | "version": "0.5.0",
2460 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
2461 | "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
2462 | "dev": true
2463 | },
2464 | "cross-spawn": {
2465 | "version": "7.0.3",
2466 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
2467 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
2468 | "dev": true,
2469 | "requires": {
2470 | "path-key": "^3.1.0",
2471 | "shebang-command": "^2.0.0",
2472 | "which": "^2.0.1"
2473 | }
2474 | },
2475 | "debug": {
2476 | "version": "4.3.4",
2477 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
2478 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
2479 | "dev": true,
2480 | "requires": {
2481 | "ms": "2.1.2"
2482 | }
2483 | },
2484 | "deep-is": {
2485 | "version": "0.1.4",
2486 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
2487 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
2488 | "dev": true
2489 | },
2490 | "deepmerge": {
2491 | "version": "4.2.2",
2492 | "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
2493 | "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
2494 | "dev": true
2495 | },
2496 | "devalue": {
2497 | "version": "4.2.2",
2498 | "resolved": "https://registry.npmjs.org/devalue/-/devalue-4.2.2.tgz",
2499 | "integrity": "sha512-Pkwd8qrI9O20VJ14fBNHu+on99toTNZFbgWRpZbC0zbDXpnE2WHYcrC1fHhMsF/3Ee+2yaW7vEujAT7fCYgqrA==",
2500 | "dev": true
2501 | },
2502 | "doctrine": {
2503 | "version": "3.0.0",
2504 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
2505 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
2506 | "dev": true,
2507 | "requires": {
2508 | "esutils": "^2.0.2"
2509 | }
2510 | },
2511 | "esbuild": {
2512 | "version": "0.16.17",
2513 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz",
2514 | "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==",
2515 | "dev": true,
2516 | "requires": {
2517 | "@esbuild/android-arm": "0.16.17",
2518 | "@esbuild/android-arm64": "0.16.17",
2519 | "@esbuild/android-x64": "0.16.17",
2520 | "@esbuild/darwin-arm64": "0.16.17",
2521 | "@esbuild/darwin-x64": "0.16.17",
2522 | "@esbuild/freebsd-arm64": "0.16.17",
2523 | "@esbuild/freebsd-x64": "0.16.17",
2524 | "@esbuild/linux-arm": "0.16.17",
2525 | "@esbuild/linux-arm64": "0.16.17",
2526 | "@esbuild/linux-ia32": "0.16.17",
2527 | "@esbuild/linux-loong64": "0.16.17",
2528 | "@esbuild/linux-mips64el": "0.16.17",
2529 | "@esbuild/linux-ppc64": "0.16.17",
2530 | "@esbuild/linux-riscv64": "0.16.17",
2531 | "@esbuild/linux-s390x": "0.16.17",
2532 | "@esbuild/linux-x64": "0.16.17",
2533 | "@esbuild/netbsd-x64": "0.16.17",
2534 | "@esbuild/openbsd-x64": "0.16.17",
2535 | "@esbuild/sunos-x64": "0.16.17",
2536 | "@esbuild/win32-arm64": "0.16.17",
2537 | "@esbuild/win32-ia32": "0.16.17",
2538 | "@esbuild/win32-x64": "0.16.17"
2539 | }
2540 | },
2541 | "escape-string-regexp": {
2542 | "version": "4.0.0",
2543 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
2544 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
2545 | "dev": true
2546 | },
2547 | "eslint": {
2548 | "version": "8.32.0",
2549 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz",
2550 | "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==",
2551 | "dev": true,
2552 | "requires": {
2553 | "@eslint/eslintrc": "^1.4.1",
2554 | "@humanwhocodes/config-array": "^0.11.8",
2555 | "@humanwhocodes/module-importer": "^1.0.1",
2556 | "@nodelib/fs.walk": "^1.2.8",
2557 | "ajv": "^6.10.0",
2558 | "chalk": "^4.0.0",
2559 | "cross-spawn": "^7.0.2",
2560 | "debug": "^4.3.2",
2561 | "doctrine": "^3.0.0",
2562 | "escape-string-regexp": "^4.0.0",
2563 | "eslint-scope": "^7.1.1",
2564 | "eslint-utils": "^3.0.0",
2565 | "eslint-visitor-keys": "^3.3.0",
2566 | "espree": "^9.4.0",
2567 | "esquery": "^1.4.0",
2568 | "esutils": "^2.0.2",
2569 | "fast-deep-equal": "^3.1.3",
2570 | "file-entry-cache": "^6.0.1",
2571 | "find-up": "^5.0.0",
2572 | "glob-parent": "^6.0.2",
2573 | "globals": "^13.19.0",
2574 | "grapheme-splitter": "^1.0.4",
2575 | "ignore": "^5.2.0",
2576 | "import-fresh": "^3.0.0",
2577 | "imurmurhash": "^0.1.4",
2578 | "is-glob": "^4.0.0",
2579 | "is-path-inside": "^3.0.3",
2580 | "js-sdsl": "^4.1.4",
2581 | "js-yaml": "^4.1.0",
2582 | "json-stable-stringify-without-jsonify": "^1.0.1",
2583 | "levn": "^0.4.1",
2584 | "lodash.merge": "^4.6.2",
2585 | "minimatch": "^3.1.2",
2586 | "natural-compare": "^1.4.0",
2587 | "optionator": "^0.9.1",
2588 | "regexpp": "^3.2.0",
2589 | "strip-ansi": "^6.0.1",
2590 | "strip-json-comments": "^3.1.0",
2591 | "text-table": "^0.2.0"
2592 | }
2593 | },
2594 | "eslint-config-prettier": {
2595 | "version": "8.6.0",
2596 | "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz",
2597 | "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==",
2598 | "dev": true,
2599 | "requires": {}
2600 | },
2601 | "eslint-plugin-svelte3": {
2602 | "version": "4.0.0",
2603 | "resolved": "https://registry.npmjs.org/eslint-plugin-svelte3/-/eslint-plugin-svelte3-4.0.0.tgz",
2604 | "integrity": "sha512-OIx9lgaNzD02+MDFNLw0GEUbuovNcglg+wnd/UY0fbZmlQSz7GlQiQ1f+yX0XvC07XPcDOnFcichqI3xCwp71g==",
2605 | "dev": true,
2606 | "requires": {}
2607 | },
2608 | "eslint-scope": {
2609 | "version": "7.1.1",
2610 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
2611 | "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
2612 | "dev": true,
2613 | "requires": {
2614 | "esrecurse": "^4.3.0",
2615 | "estraverse": "^5.2.0"
2616 | }
2617 | },
2618 | "eslint-utils": {
2619 | "version": "3.0.0",
2620 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz",
2621 | "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
2622 | "dev": true,
2623 | "requires": {
2624 | "eslint-visitor-keys": "^2.0.0"
2625 | },
2626 | "dependencies": {
2627 | "eslint-visitor-keys": {
2628 | "version": "2.1.0",
2629 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
2630 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
2631 | "dev": true
2632 | }
2633 | }
2634 | },
2635 | "eslint-visitor-keys": {
2636 | "version": "3.3.0",
2637 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
2638 | "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==",
2639 | "dev": true
2640 | },
2641 | "esm-env": {
2642 | "version": "1.0.0",
2643 | "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.0.0.tgz",
2644 | "integrity": "sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==",
2645 | "dev": true
2646 | },
2647 | "espree": {
2648 | "version": "9.4.1",
2649 | "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz",
2650 | "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==",
2651 | "dev": true,
2652 | "requires": {
2653 | "acorn": "^8.8.0",
2654 | "acorn-jsx": "^5.3.2",
2655 | "eslint-visitor-keys": "^3.3.0"
2656 | }
2657 | },
2658 | "esquery": {
2659 | "version": "1.4.0",
2660 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
2661 | "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
2662 | "dev": true,
2663 | "requires": {
2664 | "estraverse": "^5.1.0"
2665 | }
2666 | },
2667 | "esrecurse": {
2668 | "version": "4.3.0",
2669 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
2670 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
2671 | "dev": true,
2672 | "requires": {
2673 | "estraverse": "^5.2.0"
2674 | }
2675 | },
2676 | "estraverse": {
2677 | "version": "5.3.0",
2678 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
2679 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
2680 | "dev": true
2681 | },
2682 | "esutils": {
2683 | "version": "2.0.3",
2684 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
2685 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
2686 | "dev": true
2687 | },
2688 | "fast-deep-equal": {
2689 | "version": "3.1.3",
2690 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
2691 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
2692 | "dev": true
2693 | },
2694 | "fast-json-stable-stringify": {
2695 | "version": "2.1.0",
2696 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
2697 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
2698 | "dev": true
2699 | },
2700 | "fast-levenshtein": {
2701 | "version": "2.0.6",
2702 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
2703 | "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
2704 | "dev": true
2705 | },
2706 | "fastq": {
2707 | "version": "1.15.0",
2708 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
2709 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
2710 | "dev": true,
2711 | "requires": {
2712 | "reusify": "^1.0.4"
2713 | }
2714 | },
2715 | "file-entry-cache": {
2716 | "version": "6.0.1",
2717 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
2718 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
2719 | "dev": true,
2720 | "requires": {
2721 | "flat-cache": "^3.0.4"
2722 | }
2723 | },
2724 | "find-up": {
2725 | "version": "5.0.0",
2726 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
2727 | "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
2728 | "dev": true,
2729 | "requires": {
2730 | "locate-path": "^6.0.0",
2731 | "path-exists": "^4.0.0"
2732 | }
2733 | },
2734 | "flat-cache": {
2735 | "version": "3.0.4",
2736 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
2737 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
2738 | "dev": true,
2739 | "requires": {
2740 | "flatted": "^3.1.0",
2741 | "rimraf": "^3.0.2"
2742 | }
2743 | },
2744 | "flatted": {
2745 | "version": "3.2.7",
2746 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
2747 | "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==",
2748 | "dev": true
2749 | },
2750 | "fs.realpath": {
2751 | "version": "1.0.0",
2752 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
2753 | "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
2754 | "dev": true
2755 | },
2756 | "fsevents": {
2757 | "version": "2.3.2",
2758 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
2759 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
2760 | "dev": true,
2761 | "optional": true
2762 | },
2763 | "function-bind": {
2764 | "version": "1.1.1",
2765 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
2766 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
2767 | "dev": true
2768 | },
2769 | "glob": {
2770 | "version": "7.2.3",
2771 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
2772 | "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
2773 | "dev": true,
2774 | "requires": {
2775 | "fs.realpath": "^1.0.0",
2776 | "inflight": "^1.0.4",
2777 | "inherits": "2",
2778 | "minimatch": "^3.1.1",
2779 | "once": "^1.3.0",
2780 | "path-is-absolute": "^1.0.0"
2781 | }
2782 | },
2783 | "glob-parent": {
2784 | "version": "6.0.2",
2785 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
2786 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
2787 | "dev": true,
2788 | "requires": {
2789 | "is-glob": "^4.0.3"
2790 | }
2791 | },
2792 | "globals": {
2793 | "version": "13.19.0",
2794 | "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz",
2795 | "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==",
2796 | "dev": true,
2797 | "requires": {
2798 | "type-fest": "^0.20.2"
2799 | }
2800 | },
2801 | "globalyzer": {
2802 | "version": "0.1.0",
2803 | "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz",
2804 | "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==",
2805 | "dev": true
2806 | },
2807 | "globrex": {
2808 | "version": "0.1.2",
2809 | "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz",
2810 | "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==",
2811 | "dev": true
2812 | },
2813 | "grapheme-splitter": {
2814 | "version": "1.0.4",
2815 | "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
2816 | "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==",
2817 | "dev": true
2818 | },
2819 | "has": {
2820 | "version": "1.0.3",
2821 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
2822 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
2823 | "dev": true,
2824 | "requires": {
2825 | "function-bind": "^1.1.1"
2826 | }
2827 | },
2828 | "has-flag": {
2829 | "version": "4.0.0",
2830 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2831 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2832 | "dev": true
2833 | },
2834 | "ignore": {
2835 | "version": "5.2.4",
2836 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
2837 | "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
2838 | "dev": true
2839 | },
2840 | "import-fresh": {
2841 | "version": "3.3.0",
2842 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
2843 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
2844 | "dev": true,
2845 | "requires": {
2846 | "parent-module": "^1.0.0",
2847 | "resolve-from": "^4.0.0"
2848 | }
2849 | },
2850 | "import-meta-resolve": {
2851 | "version": "2.2.1",
2852 | "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-2.2.1.tgz",
2853 | "integrity": "sha512-C6lLL7EJPY44kBvA80gq4uMsVFw5x3oSKfuMl1cuZ2RkI5+UJqQXgn+6hlUew0y4ig7Ypt4CObAAIzU53Nfpuw==",
2854 | "dev": true
2855 | },
2856 | "imurmurhash": {
2857 | "version": "0.1.4",
2858 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
2859 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
2860 | "dev": true
2861 | },
2862 | "inflight": {
2863 | "version": "1.0.6",
2864 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
2865 | "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
2866 | "dev": true,
2867 | "requires": {
2868 | "once": "^1.3.0",
2869 | "wrappy": "1"
2870 | }
2871 | },
2872 | "inherits": {
2873 | "version": "2.0.4",
2874 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
2875 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
2876 | "dev": true
2877 | },
2878 | "is-core-module": {
2879 | "version": "2.11.0",
2880 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz",
2881 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
2882 | "dev": true,
2883 | "requires": {
2884 | "has": "^1.0.3"
2885 | }
2886 | },
2887 | "is-extglob": {
2888 | "version": "2.1.1",
2889 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
2890 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
2891 | "dev": true
2892 | },
2893 | "is-glob": {
2894 | "version": "4.0.3",
2895 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
2896 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
2897 | "dev": true,
2898 | "requires": {
2899 | "is-extglob": "^2.1.1"
2900 | }
2901 | },
2902 | "is-path-inside": {
2903 | "version": "3.0.3",
2904 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
2905 | "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
2906 | "dev": true
2907 | },
2908 | "isexe": {
2909 | "version": "2.0.0",
2910 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
2911 | "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
2912 | "dev": true
2913 | },
2914 | "js-sdsl": {
2915 | "version": "4.3.0",
2916 | "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz",
2917 | "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==",
2918 | "dev": true
2919 | },
2920 | "js-yaml": {
2921 | "version": "4.1.0",
2922 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
2923 | "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
2924 | "dev": true,
2925 | "requires": {
2926 | "argparse": "^2.0.1"
2927 | }
2928 | },
2929 | "json-schema-traverse": {
2930 | "version": "0.4.1",
2931 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
2932 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
2933 | "dev": true
2934 | },
2935 | "json-stable-stringify-without-jsonify": {
2936 | "version": "1.0.1",
2937 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
2938 | "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
2939 | "dev": true
2940 | },
2941 | "kleur": {
2942 | "version": "4.1.5",
2943 | "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
2944 | "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
2945 | "dev": true
2946 | },
2947 | "levn": {
2948 | "version": "0.4.1",
2949 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
2950 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
2951 | "dev": true,
2952 | "requires": {
2953 | "prelude-ls": "^1.2.1",
2954 | "type-check": "~0.4.0"
2955 | }
2956 | },
2957 | "locate-path": {
2958 | "version": "6.0.0",
2959 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
2960 | "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
2961 | "dev": true,
2962 | "requires": {
2963 | "p-locate": "^5.0.0"
2964 | }
2965 | },
2966 | "lodash.merge": {
2967 | "version": "4.6.2",
2968 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
2969 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
2970 | "dev": true
2971 | },
2972 | "magic-string": {
2973 | "version": "0.27.0",
2974 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz",
2975 | "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==",
2976 | "dev": true,
2977 | "requires": {
2978 | "@jridgewell/sourcemap-codec": "^1.4.13"
2979 | }
2980 | },
2981 | "mime": {
2982 | "version": "3.0.0",
2983 | "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz",
2984 | "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==",
2985 | "dev": true
2986 | },
2987 | "minimatch": {
2988 | "version": "3.1.2",
2989 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
2990 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
2991 | "dev": true,
2992 | "requires": {
2993 | "brace-expansion": "^1.1.7"
2994 | }
2995 | },
2996 | "mri": {
2997 | "version": "1.2.0",
2998 | "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
2999 | "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
3000 | "dev": true
3001 | },
3002 | "mrmime": {
3003 | "version": "1.0.1",
3004 | "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz",
3005 | "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==",
3006 | "dev": true
3007 | },
3008 | "ms": {
3009 | "version": "2.1.2",
3010 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
3011 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
3012 | "dev": true
3013 | },
3014 | "nanoid": {
3015 | "version": "3.3.4",
3016 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
3017 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
3018 | "dev": true
3019 | },
3020 | "natural-compare": {
3021 | "version": "1.4.0",
3022 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
3023 | "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
3024 | "dev": true
3025 | },
3026 | "once": {
3027 | "version": "1.4.0",
3028 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
3029 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
3030 | "dev": true,
3031 | "requires": {
3032 | "wrappy": "1"
3033 | }
3034 | },
3035 | "optionator": {
3036 | "version": "0.9.1",
3037 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
3038 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
3039 | "dev": true,
3040 | "requires": {
3041 | "deep-is": "^0.1.3",
3042 | "fast-levenshtein": "^2.0.6",
3043 | "levn": "^0.4.1",
3044 | "prelude-ls": "^1.2.1",
3045 | "type-check": "^0.4.0",
3046 | "word-wrap": "^1.2.3"
3047 | }
3048 | },
3049 | "p-limit": {
3050 | "version": "3.1.0",
3051 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
3052 | "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
3053 | "dev": true,
3054 | "requires": {
3055 | "yocto-queue": "^0.1.0"
3056 | }
3057 | },
3058 | "p-locate": {
3059 | "version": "5.0.0",
3060 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
3061 | "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
3062 | "dev": true,
3063 | "requires": {
3064 | "p-limit": "^3.0.2"
3065 | }
3066 | },
3067 | "parent-module": {
3068 | "version": "1.0.1",
3069 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
3070 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
3071 | "dev": true,
3072 | "requires": {
3073 | "callsites": "^3.0.0"
3074 | }
3075 | },
3076 | "path-exists": {
3077 | "version": "4.0.0",
3078 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
3079 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
3080 | "dev": true
3081 | },
3082 | "path-is-absolute": {
3083 | "version": "1.0.1",
3084 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
3085 | "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
3086 | "dev": true
3087 | },
3088 | "path-key": {
3089 | "version": "3.1.1",
3090 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
3091 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
3092 | "dev": true
3093 | },
3094 | "path-parse": {
3095 | "version": "1.0.7",
3096 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
3097 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
3098 | "dev": true
3099 | },
3100 | "picocolors": {
3101 | "version": "1.0.0",
3102 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
3103 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
3104 | "dev": true
3105 | },
3106 | "postcss": {
3107 | "version": "8.4.21",
3108 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz",
3109 | "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==",
3110 | "dev": true,
3111 | "requires": {
3112 | "nanoid": "^3.3.4",
3113 | "picocolors": "^1.0.0",
3114 | "source-map-js": "^1.0.2"
3115 | }
3116 | },
3117 | "prelude-ls": {
3118 | "version": "1.2.1",
3119 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
3120 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
3121 | "dev": true
3122 | },
3123 | "prettier": {
3124 | "version": "2.8.3",
3125 | "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.3.tgz",
3126 | "integrity": "sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==",
3127 | "dev": true
3128 | },
3129 | "prettier-plugin-svelte": {
3130 | "version": "2.9.0",
3131 | "resolved": "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-2.9.0.tgz",
3132 | "integrity": "sha512-3doBi5NO4IVgaNPtwewvrgPpqAcvNv0NwJNflr76PIGgi9nf1oguQV1Hpdm9TI2ALIQVn/9iIwLpBO5UcD2Jiw==",
3133 | "dev": true,
3134 | "requires": {}
3135 | },
3136 | "punycode": {
3137 | "version": "2.3.0",
3138 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
3139 | "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
3140 | "dev": true
3141 | },
3142 | "queue-microtask": {
3143 | "version": "1.2.3",
3144 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
3145 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
3146 | "dev": true
3147 | },
3148 | "regexpp": {
3149 | "version": "3.2.0",
3150 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
3151 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
3152 | "dev": true
3153 | },
3154 | "resolve": {
3155 | "version": "1.22.1",
3156 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
3157 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
3158 | "dev": true,
3159 | "requires": {
3160 | "is-core-module": "^2.9.0",
3161 | "path-parse": "^1.0.7",
3162 | "supports-preserve-symlinks-flag": "^1.0.0"
3163 | }
3164 | },
3165 | "resolve-from": {
3166 | "version": "4.0.0",
3167 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
3168 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
3169 | "dev": true
3170 | },
3171 | "reusify": {
3172 | "version": "1.0.4",
3173 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
3174 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
3175 | "dev": true
3176 | },
3177 | "rimraf": {
3178 | "version": "3.0.2",
3179 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
3180 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
3181 | "dev": true,
3182 | "requires": {
3183 | "glob": "^7.1.3"
3184 | }
3185 | },
3186 | "rollup": {
3187 | "version": "3.11.0",
3188 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.11.0.tgz",
3189 | "integrity": "sha512-+uWPPkpWQ2H3Qi7sNBcRfhhHJyUNgBYhG4wKe5wuGRj2m55kpo+0p5jubKNBjQODyPe6tSBE3tNpdDwEisQvAQ==",
3190 | "dev": true,
3191 | "requires": {
3192 | "fsevents": "~2.3.2"
3193 | }
3194 | },
3195 | "run-parallel": {
3196 | "version": "1.2.0",
3197 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
3198 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
3199 | "dev": true,
3200 | "requires": {
3201 | "queue-microtask": "^1.2.2"
3202 | }
3203 | },
3204 | "sade": {
3205 | "version": "1.8.1",
3206 | "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz",
3207 | "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==",
3208 | "dev": true,
3209 | "requires": {
3210 | "mri": "^1.1.0"
3211 | }
3212 | },
3213 | "set-cookie-parser": {
3214 | "version": "2.5.1",
3215 | "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.5.1.tgz",
3216 | "integrity": "sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==",
3217 | "dev": true
3218 | },
3219 | "shebang-command": {
3220 | "version": "2.0.0",
3221 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
3222 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
3223 | "dev": true,
3224 | "requires": {
3225 | "shebang-regex": "^3.0.0"
3226 | }
3227 | },
3228 | "shebang-regex": {
3229 | "version": "3.0.0",
3230 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
3231 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
3232 | "dev": true
3233 | },
3234 | "sirv": {
3235 | "version": "2.0.2",
3236 | "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.2.tgz",
3237 | "integrity": "sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==",
3238 | "dev": true,
3239 | "requires": {
3240 | "@polka/url": "^1.0.0-next.20",
3241 | "mrmime": "^1.0.0",
3242 | "totalist": "^3.0.0"
3243 | }
3244 | },
3245 | "source-map-js": {
3246 | "version": "1.0.2",
3247 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
3248 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
3249 | "dev": true
3250 | },
3251 | "streamsearch": {
3252 | "version": "1.1.0",
3253 | "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
3254 | "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
3255 | "dev": true
3256 | },
3257 | "strip-ansi": {
3258 | "version": "6.0.1",
3259 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
3260 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
3261 | "dev": true,
3262 | "requires": {
3263 | "ansi-regex": "^5.0.1"
3264 | }
3265 | },
3266 | "strip-json-comments": {
3267 | "version": "3.1.1",
3268 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
3269 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
3270 | "dev": true
3271 | },
3272 | "supports-color": {
3273 | "version": "7.2.0",
3274 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
3275 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
3276 | "dev": true,
3277 | "requires": {
3278 | "has-flag": "^4.0.0"
3279 | }
3280 | },
3281 | "supports-preserve-symlinks-flag": {
3282 | "version": "1.0.0",
3283 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
3284 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
3285 | "dev": true
3286 | },
3287 | "svelte": {
3288 | "version": "3.55.1",
3289 | "resolved": "https://registry.npmjs.org/svelte/-/svelte-3.55.1.tgz",
3290 | "integrity": "sha512-S+87/P0Ve67HxKkEV23iCdAh/SX1xiSfjF1HOglno/YTbSTW7RniICMCofWGdJJbdjw3S+0PfFb1JtGfTXE0oQ==",
3291 | "dev": true
3292 | },
3293 | "svelte-hmr": {
3294 | "version": "0.15.1",
3295 | "resolved": "https://registry.npmjs.org/svelte-hmr/-/svelte-hmr-0.15.1.tgz",
3296 | "integrity": "sha512-BiKB4RZ8YSwRKCNVdNxK/GfY+r4Kjgp9jCLEy0DuqAKfmQtpL38cQK3afdpjw4sqSs4PLi3jIPJIFp259NkZtA==",
3297 | "dev": true,
3298 | "requires": {}
3299 | },
3300 | "text-table": {
3301 | "version": "0.2.0",
3302 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
3303 | "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
3304 | "dev": true
3305 | },
3306 | "tiny-glob": {
3307 | "version": "0.2.9",
3308 | "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz",
3309 | "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==",
3310 | "dev": true,
3311 | "requires": {
3312 | "globalyzer": "0.1.0",
3313 | "globrex": "^0.1.2"
3314 | }
3315 | },
3316 | "totalist": {
3317 | "version": "3.0.0",
3318 | "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.0.tgz",
3319 | "integrity": "sha512-eM+pCBxXO/njtF7vdFsHuqb+ElbxqtI4r5EAvk6grfAFyJ6IvWlSkfZ5T9ozC6xWw3Fj1fGoSmrl0gUs46JVIw==",
3320 | "dev": true
3321 | },
3322 | "type-check": {
3323 | "version": "0.4.0",
3324 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
3325 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
3326 | "dev": true,
3327 | "requires": {
3328 | "prelude-ls": "^1.2.1"
3329 | }
3330 | },
3331 | "type-fest": {
3332 | "version": "0.20.2",
3333 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
3334 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
3335 | "dev": true
3336 | },
3337 | "undici": {
3338 | "version": "5.16.0",
3339 | "resolved": "https://registry.npmjs.org/undici/-/undici-5.16.0.tgz",
3340 | "integrity": "sha512-KWBOXNv6VX+oJQhchXieUznEmnJMqgXMbs0xxH2t8q/FUAWSJvOSr/rMaZKnX5RIVq7JDn0JbP4BOnKG2SGXLQ==",
3341 | "dev": true,
3342 | "requires": {
3343 | "busboy": "^1.6.0"
3344 | }
3345 | },
3346 | "uri-js": {
3347 | "version": "4.4.1",
3348 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
3349 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
3350 | "dev": true,
3351 | "requires": {
3352 | "punycode": "^2.1.0"
3353 | }
3354 | },
3355 | "vite": {
3356 | "version": "4.0.4",
3357 | "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.4.tgz",
3358 | "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==",
3359 | "dev": true,
3360 | "requires": {
3361 | "esbuild": "^0.16.3",
3362 | "fsevents": "~2.3.2",
3363 | "postcss": "^8.4.20",
3364 | "resolve": "^1.22.1",
3365 | "rollup": "^3.7.0"
3366 | }
3367 | },
3368 | "vitefu": {
3369 | "version": "0.2.4",
3370 | "resolved": "https://registry.npmjs.org/vitefu/-/vitefu-0.2.4.tgz",
3371 | "integrity": "sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==",
3372 | "dev": true,
3373 | "requires": {}
3374 | },
3375 | "which": {
3376 | "version": "2.0.2",
3377 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
3378 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
3379 | "dev": true,
3380 | "requires": {
3381 | "isexe": "^2.0.0"
3382 | }
3383 | },
3384 | "word-wrap": {
3385 | "version": "1.2.3",
3386 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
3387 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
3388 | "dev": true
3389 | },
3390 | "wrappy": {
3391 | "version": "1.0.2",
3392 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
3393 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
3394 | "dev": true
3395 | },
3396 | "yocto-queue": {
3397 | "version": "0.1.0",
3398 | "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
3399 | "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
3400 | "dev": true
3401 | }
3402 | }
3403 | }
3404 |
--------------------------------------------------------------------------------
/sk-routing/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sk-routing",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "dev": "vite dev",
7 | "build": "vite build",
8 | "preview": "vite preview",
9 | "lint": "prettier --plugin-search-dir . --check . && eslint .",
10 | "format": "prettier --plugin-search-dir . --write ."
11 | },
12 | "devDependencies": {
13 | "@sveltejs/adapter-auto": "^1.0.0",
14 | "@sveltejs/kit": "^1.0.0",
15 | "eslint": "^8.28.0",
16 | "eslint-config-prettier": "^8.5.0",
17 | "eslint-plugin-svelte3": "^4.0.0",
18 | "prettier": "^2.8.0",
19 | "prettier-plugin-svelte": "^2.8.1",
20 | "svelte": "^3.54.0",
21 | "vite": "^4.0.0"
22 | },
23 | "type": "module"
24 | }
25 |
--------------------------------------------------------------------------------
/sk-routing/src/app.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | %sveltekit.head%
8 |
9 |
10 | %sveltekit.body%
11 |
12 |
13 |
--------------------------------------------------------------------------------
/sk-routing/src/lib/comments.js:
--------------------------------------------------------------------------------
1 | export const comments = [
2 | {
3 | id: 1,
4 | text: 'This is the first comment'
5 | },
6 | {
7 | id: 2,
8 | text: 'This is the second comment'
9 | },
10 | {
11 | id: 3,
12 | text: 'This is the third comment'
13 | }
14 | ];
15 |
--------------------------------------------------------------------------------
/sk-routing/src/lib/footer.svelte:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
--------------------------------------------------------------------------------
/sk-routing/src/lib/header.svelte:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
--------------------------------------------------------------------------------
/sk-routing/src/params/integer.js:
--------------------------------------------------------------------------------
1 | export function match(param) {
2 | return /^\d+$/.test(param);
3 | }
4 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/(auth)/+layout.svelte:
--------------------------------------------------------------------------------
1 | Welcome to Codevolution!
2 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/(auth)/login/+page.svelte:
--------------------------------------------------------------------------------
1 | Login
2 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/(auth)/password/+layout.svelte:
--------------------------------------------------------------------------------
1 | Password help
2 |
3 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/(auth)/password/forgot/+page@.svelte:
--------------------------------------------------------------------------------
1 | Forgot password
--------------------------------------------------------------------------------
/sk-routing/src/routes/(auth)/password/reset/+page.svelte:
--------------------------------------------------------------------------------
1 | Reset password
--------------------------------------------------------------------------------
/sk-routing/src/routes/(auth)/register/+page.svelte:
--------------------------------------------------------------------------------
1 | Register
--------------------------------------------------------------------------------
/sk-routing/src/routes/+layout.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/+page.svelte:
--------------------------------------------------------------------------------
1 | Home page
2 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/about/+page.svelte:
--------------------------------------------------------------------------------
1 | About page
2 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/api/comments/+server.js:
--------------------------------------------------------------------------------
1 | import { json } from '@sveltejs/kit';
2 | import { comments } from '$lib/comments.js';
3 |
4 | export function GET() {
5 | return json(comments);
6 | // return new Response(JSON.stringify(comments), {
7 | // headers: {
8 | // 'Content-Type': 'application/json'
9 | // }
10 | // });
11 | }
12 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/api/comments/[commentId]/+server.js:
--------------------------------------------------------------------------------
1 | import { comments } from '$lib/comments.js';
2 |
3 | export function GET({ params }) {
4 | const { commentId } = params;
5 | const comment = comments.find((comment) => comment.id === parseInt(commentId));
6 | return new Response(JSON.stringify(comment), {
7 | headers: {
8 | 'Content-Type': 'application/json'
9 | }
10 | });
11 | }
12 |
13 | export async function PATCH({ params, request }) {
14 | const { commentId } = params;
15 | const { text } = await request.json();
16 | const comment = comments.find((comment) => comment.id === parseInt(commentId));
17 | comment.text = text;
18 | return new Response(JSON.stringify(comment));
19 | }
20 |
21 | export async function DELETE({ params }) {
22 | const { commentId } = params;
23 | const deletedComment = comments.find((comment) => comment.id === parseInt(commentId));
24 | const index = comments.findIndex((comment) => comment.id === parseInt(commentId));
25 | comments.splice(index, 1);
26 | return new Response(JSON.stringify(deletedComment));
27 | }
28 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/blog/+page.svelte:
--------------------------------------------------------------------------------
1 | My blog
2 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/blog/first/+page.svelte:
--------------------------------------------------------------------------------
1 | First blog post
2 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/blog/second/+page.svelte:
--------------------------------------------------------------------------------
1 | Second blog post
2 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/demo-api/+server.js:
--------------------------------------------------------------------------------
1 | export function GET() {
2 | return new Response('Hello from the demo API!');
3 | }
4 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/docs/[...slug]/+page.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 | {#if slugArr.length === 1}
8 | Viewing docs for feature {slugArr[0]}
9 | {:else if slugArr.length === 2}
10 | Viewing docs for feature {slugArr[0]} and concept {slugArr[1]}
11 | {/if}
12 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/marketing/[[lang]]/+page.svelte:
--------------------------------------------------------------------------------
1 |
18 |
19 | {greeting} Welcome to SvelteKit
20 | Visit kit.svelte.dev to read the documentation
21 | About Vishwas
22 |
23 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/products/+page.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 | Products
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/products/[productId=integer]/+layout.svelte:
--------------------------------------------------------------------------------
1 |
2 | Featured products
3 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/products/[productId=integer]/+page.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 | Details about product {productId}
7 |
--------------------------------------------------------------------------------
/sk-routing/src/routes/products/[productId=integer]/review/[reviewId]/+page.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 | Review {reviewId} for product {productId}
7 |
--------------------------------------------------------------------------------
/sk-routing/static/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gopinav/SvelteKit-Tutorials/2a98621dbdc08743f3bd2167b74e7372b27ca798/sk-routing/static/favicon.png
--------------------------------------------------------------------------------
/sk-routing/svelte.config.js:
--------------------------------------------------------------------------------
1 | import adapter from '@sveltejs/adapter-auto';
2 |
3 | /** @type {import('@sveltejs/kit').Config} */
4 | const config = {
5 | kit: {
6 | adapter: adapter()
7 | }
8 | };
9 |
10 | export default config;
11 |
--------------------------------------------------------------------------------
/sk-routing/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | const config = {
4 | plugins: [sveltekit()]
5 | };
6 |
7 | export default config;
8 |
--------------------------------------------------------------------------------