├── .eslintrc.cjs
├── .gitignore
├── .prettierrc
├── README.md
├── jsconfig.json
├── netlify.toml
├── package-lock.json
├── package.json
├── src
├── app.css
├── app.html
├── global.d.ts
├── hooks.js
├── lib
│ ├── DateModal.svelte
│ ├── Welcome.svelte
│ ├── date.js
│ ├── db.js
│ ├── nav
│ │ ├── Nav.svelte
│ │ └── svelte-logo.svg
│ └── stores
│ │ ├── lists.js
│ │ └── todos.js
└── routes
│ ├── __error.svelte
│ ├── __layout.svelte
│ ├── auth
│ ├── login.js
│ ├── logout.js
│ └── register.js
│ ├── index.svelte
│ ├── lists
│ ├── [listId].svelte
│ ├── index.json.js
│ └── index.svelte
│ ├── login
│ └── index.svelte
│ ├── register
│ └── index.svelte
│ ├── settings
│ └── index.svelte
│ ├── todos
│ ├── index.json.js
│ └── index.svelte
│ └── user
│ └── index.js
├── static
├── favicon.png
├── robots.txt
├── svelte-welcome.png
├── svelte-welcome.webp
└── themes
│ ├── dark.css
│ └── light.css
└── svelte.config.js
/.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: 2019
9 | },
10 | env: {
11 | browser: true,
12 | es2017: true,
13 | node: true
14 | }
15 | };
16 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "tabWidth": 4,
4 | "semi": false,
5 | "singleQuote": true,
6 | "trailingComma": "none",
7 | "printWidth": 100
8 | }
9 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Sveltekit Todos
2 |
3 | https://sveltekit-todos.netlify.app
4 |
5 | To-do app made with [Sveltekit](https://kit.svelte.dev/) and [MongoDB Atlas](https://www.mongodb.com/atlas).
6 |
7 | - Custom lists for categorizing tasks
8 | - Due dates
9 | - Clean UI
10 |
11 |
12 |
13 | The goal behind making this was to familiarize myself with MongoDB and the structure of a fullstack Sveltekit application.
14 |
--------------------------------------------------------------------------------
/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "baseUrl": ".",
4 | "paths": {
5 | "$lib": ["src/lib"],
6 | "$lib/*": ["src/lib/*"]
7 | }
8 | },
9 | "include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.svelte"]
10 | }
11 |
--------------------------------------------------------------------------------
/netlify.toml:
--------------------------------------------------------------------------------
1 | [build]
2 | command = "npm run build"
3 | publish = "build"
4 |
5 | [dev]
6 | command = "svelte-kit dev"
7 |
8 | [functions]
9 | directory = "netlify/functions"
10 | node_bundler = "esbuild"
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sveltekittest",
3 | "version": "0.0.1",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "@babel/code-frame": {
8 | "version": "7.12.11",
9 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
10 | "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
11 | "dev": true,
12 | "requires": {
13 | "@babel/highlight": "^7.10.4"
14 | }
15 | },
16 | "@babel/helper-validator-identifier": {
17 | "version": "7.15.7",
18 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz",
19 | "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==",
20 | "dev": true
21 | },
22 | "@babel/highlight": {
23 | "version": "7.16.0",
24 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz",
25 | "integrity": "sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==",
26 | "dev": true,
27 | "requires": {
28 | "@babel/helper-validator-identifier": "^7.15.7",
29 | "chalk": "^2.0.0",
30 | "js-tokens": "^4.0.0"
31 | },
32 | "dependencies": {
33 | "ansi-styles": {
34 | "version": "3.2.1",
35 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
36 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
37 | "dev": true,
38 | "requires": {
39 | "color-convert": "^1.9.0"
40 | }
41 | },
42 | "chalk": {
43 | "version": "2.4.2",
44 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
45 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
46 | "dev": true,
47 | "requires": {
48 | "ansi-styles": "^3.2.1",
49 | "escape-string-regexp": "^1.0.5",
50 | "supports-color": "^5.3.0"
51 | }
52 | },
53 | "color-convert": {
54 | "version": "1.9.3",
55 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
56 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
57 | "dev": true,
58 | "requires": {
59 | "color-name": "1.1.3"
60 | }
61 | },
62 | "color-name": {
63 | "version": "1.1.3",
64 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
65 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
66 | "dev": true
67 | },
68 | "escape-string-regexp": {
69 | "version": "1.0.5",
70 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
71 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
72 | "dev": true
73 | },
74 | "has-flag": {
75 | "version": "3.0.0",
76 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
77 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
78 | "dev": true
79 | },
80 | "supports-color": {
81 | "version": "5.5.0",
82 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
83 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
84 | "dev": true,
85 | "requires": {
86 | "has-flag": "^3.0.0"
87 | }
88 | }
89 | }
90 | },
91 | "@eslint/eslintrc": {
92 | "version": "0.4.3",
93 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz",
94 | "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==",
95 | "dev": true,
96 | "requires": {
97 | "ajv": "^6.12.4",
98 | "debug": "^4.1.1",
99 | "espree": "^7.3.0",
100 | "globals": "^13.9.0",
101 | "ignore": "^4.0.6",
102 | "import-fresh": "^3.2.1",
103 | "js-yaml": "^3.13.1",
104 | "minimatch": "^3.0.4",
105 | "strip-json-comments": "^3.1.1"
106 | }
107 | },
108 | "@fontsource/fira-mono": {
109 | "version": "4.5.0",
110 | "resolved": "https://registry.npmjs.org/@fontsource/fira-mono/-/fira-mono-4.5.0.tgz",
111 | "integrity": "sha512-KE+d3wmgq/YKM0BqgUF7p2yeBNi805Nfof1lC1wJ7E9i2EWoC363sGdKG+MQBVm+ei3GYZu+Bo8Xha1w1pkB7g=="
112 | },
113 | "@humanwhocodes/config-array": {
114 | "version": "0.5.0",
115 | "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz",
116 | "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==",
117 | "dev": true,
118 | "requires": {
119 | "@humanwhocodes/object-schema": "^1.2.0",
120 | "debug": "^4.1.1",
121 | "minimatch": "^3.0.4"
122 | }
123 | },
124 | "@humanwhocodes/object-schema": {
125 | "version": "1.2.1",
126 | "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
127 | "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
128 | "dev": true
129 | },
130 | "@iarna/toml": {
131 | "version": "2.2.5",
132 | "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz",
133 | "integrity": "sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==",
134 | "dev": true
135 | },
136 | "@lukeed/csprng": {
137 | "version": "1.0.0",
138 | "resolved": "https://registry.npmjs.org/@lukeed/csprng/-/csprng-1.0.0.tgz",
139 | "integrity": "sha512-ruuGHsnabmObBdeMg3vKdGRmh06Oog3eFpf/Tk6X0kDSJDpJTDCj2dqdp1+0VjzIUgHlFF9GBm7uFqfYhhdX9g=="
140 | },
141 | "@lukeed/uuid": {
142 | "version": "2.0.0",
143 | "resolved": "https://registry.npmjs.org/@lukeed/uuid/-/uuid-2.0.0.tgz",
144 | "integrity": "sha512-dUz8OmYvlY5A9wXaroHIMSPASpSYRLCqbPvxGSyHguhtTQIy24lC+EGxQlwv71AhRCO55WOtgwhzQLpw27JaJQ==",
145 | "requires": {
146 | "@lukeed/csprng": "^1.0.0"
147 | }
148 | },
149 | "@rollup/pluginutils": {
150 | "version": "4.1.1",
151 | "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.1.tgz",
152 | "integrity": "sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ==",
153 | "dev": true,
154 | "requires": {
155 | "estree-walker": "^2.0.1",
156 | "picomatch": "^2.2.2"
157 | }
158 | },
159 | "@sveltejs/adapter-netlify": {
160 | "version": "1.0.0-next.35",
161 | "resolved": "https://registry.npmjs.org/@sveltejs/adapter-netlify/-/adapter-netlify-1.0.0-next.35.tgz",
162 | "integrity": "sha512-3PC1RaRReu652ot+LC9EOjkebnZehdwvUm0zhPC8OFPJJccQwq6Y1kbHDeACIIFRTaKLIRBpuYh3idP6ffUGdw==",
163 | "dev": true,
164 | "requires": {
165 | "@iarna/toml": "^2.2.5",
166 | "esbuild": "^0.13.4"
167 | }
168 | },
169 | "@sveltejs/kit": {
170 | "version": "1.0.0-next.201",
171 | "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.201.tgz",
172 | "integrity": "sha512-WcYexOEPWgDWOk0oOteTU5QwWykdIcOFJig+akeHqwE/jVtPURLZFtTNx0ymUWXN4S+dUXf60KF6HEMv74FHpA==",
173 | "dev": true,
174 | "requires": {
175 | "@sveltejs/vite-plugin-svelte": "^1.0.0-next.30",
176 | "cheap-watch": "^1.0.4",
177 | "sade": "^1.7.4",
178 | "vite": "^2.6.12"
179 | }
180 | },
181 | "@sveltejs/vite-plugin-svelte": {
182 | "version": "1.0.0-next.30",
183 | "resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-1.0.0-next.30.tgz",
184 | "integrity": "sha512-YQqdMxjL1VgSFk4/+IY3yLwuRRapPafPiZTiaGEq1psbJYSNYUWx9F1zMm32GMsnogg3zn99mGJOqe3ld3HZSg==",
185 | "dev": true,
186 | "requires": {
187 | "@rollup/pluginutils": "^4.1.1",
188 | "debug": "^4.3.2",
189 | "kleur": "^4.1.4",
190 | "magic-string": "^0.25.7",
191 | "require-relative": "^0.8.7",
192 | "svelte-hmr": "^0.14.7"
193 | }
194 | },
195 | "@types/node": {
196 | "version": "16.11.7",
197 | "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.7.tgz",
198 | "integrity": "sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw=="
199 | },
200 | "@types/webidl-conversions": {
201 | "version": "6.1.1",
202 | "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz",
203 | "integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q=="
204 | },
205 | "@types/whatwg-url": {
206 | "version": "8.2.1",
207 | "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz",
208 | "integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==",
209 | "requires": {
210 | "@types/node": "*",
211 | "@types/webidl-conversions": "*"
212 | }
213 | },
214 | "acorn": {
215 | "version": "7.4.1",
216 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
217 | "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
218 | "dev": true
219 | },
220 | "acorn-jsx": {
221 | "version": "5.3.2",
222 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
223 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
224 | "dev": true
225 | },
226 | "ajv": {
227 | "version": "6.12.6",
228 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
229 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
230 | "dev": true,
231 | "requires": {
232 | "fast-deep-equal": "^3.1.1",
233 | "fast-json-stable-stringify": "^2.0.0",
234 | "json-schema-traverse": "^0.4.1",
235 | "uri-js": "^4.2.2"
236 | }
237 | },
238 | "ansi-colors": {
239 | "version": "4.1.1",
240 | "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
241 | "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
242 | "dev": true
243 | },
244 | "ansi-regex": {
245 | "version": "5.0.1",
246 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
247 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
248 | "dev": true
249 | },
250 | "ansi-styles": {
251 | "version": "4.3.0",
252 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
253 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
254 | "dev": true,
255 | "requires": {
256 | "color-convert": "^2.0.1"
257 | }
258 | },
259 | "argparse": {
260 | "version": "1.0.10",
261 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
262 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
263 | "dev": true,
264 | "requires": {
265 | "sprintf-js": "~1.0.2"
266 | }
267 | },
268 | "astral-regex": {
269 | "version": "2.0.0",
270 | "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
271 | "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
272 | "dev": true
273 | },
274 | "balanced-match": {
275 | "version": "1.0.2",
276 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
277 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
278 | "dev": true
279 | },
280 | "base64-js": {
281 | "version": "1.5.1",
282 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
283 | "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
284 | },
285 | "brace-expansion": {
286 | "version": "1.1.11",
287 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
288 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
289 | "dev": true,
290 | "requires": {
291 | "balanced-match": "^1.0.0",
292 | "concat-map": "0.0.1"
293 | }
294 | },
295 | "bson": {
296 | "version": "4.5.4",
297 | "resolved": "https://registry.npmjs.org/bson/-/bson-4.5.4.tgz",
298 | "integrity": "sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==",
299 | "requires": {
300 | "buffer": "^5.6.0"
301 | }
302 | },
303 | "buffer": {
304 | "version": "5.7.1",
305 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
306 | "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
307 | "requires": {
308 | "base64-js": "^1.3.1",
309 | "ieee754": "^1.1.13"
310 | }
311 | },
312 | "callsites": {
313 | "version": "3.1.0",
314 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
315 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
316 | "dev": true
317 | },
318 | "chalk": {
319 | "version": "4.1.2",
320 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
321 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
322 | "dev": true,
323 | "requires": {
324 | "ansi-styles": "^4.1.0",
325 | "supports-color": "^7.1.0"
326 | }
327 | },
328 | "cheap-watch": {
329 | "version": "1.0.4",
330 | "resolved": "https://registry.npmjs.org/cheap-watch/-/cheap-watch-1.0.4.tgz",
331 | "integrity": "sha512-QR/9FrtRL5fjfUJBhAKCdi0lSRQ3rVRRum3GF9wDKp2TJbEIMGhUEr2yU8lORzm9Isdjx7/k9S0DFDx+z5VGtw==",
332 | "dev": true
333 | },
334 | "color-convert": {
335 | "version": "2.0.1",
336 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
337 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
338 | "dev": true,
339 | "requires": {
340 | "color-name": "~1.1.4"
341 | }
342 | },
343 | "color-name": {
344 | "version": "1.1.4",
345 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
346 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
347 | "dev": true
348 | },
349 | "concat-map": {
350 | "version": "0.0.1",
351 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
352 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
353 | "dev": true
354 | },
355 | "cookie": {
356 | "version": "0.4.1",
357 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
358 | "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA=="
359 | },
360 | "cross-spawn": {
361 | "version": "7.0.3",
362 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
363 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
364 | "dev": true,
365 | "requires": {
366 | "path-key": "^3.1.0",
367 | "shebang-command": "^2.0.0",
368 | "which": "^2.0.1"
369 | }
370 | },
371 | "debug": {
372 | "version": "4.3.2",
373 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
374 | "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
375 | "dev": true,
376 | "requires": {
377 | "ms": "2.1.2"
378 | }
379 | },
380 | "deep-is": {
381 | "version": "0.1.4",
382 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
383 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
384 | "dev": true
385 | },
386 | "denque": {
387 | "version": "2.0.1",
388 | "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz",
389 | "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ=="
390 | },
391 | "doctrine": {
392 | "version": "3.0.0",
393 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
394 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
395 | "dev": true,
396 | "requires": {
397 | "esutils": "^2.0.2"
398 | }
399 | },
400 | "dotenv": {
401 | "version": "10.0.0",
402 | "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz",
403 | "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q=="
404 | },
405 | "emoji-regex": {
406 | "version": "8.0.0",
407 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
408 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
409 | "dev": true
410 | },
411 | "enquirer": {
412 | "version": "2.3.6",
413 | "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
414 | "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
415 | "dev": true,
416 | "requires": {
417 | "ansi-colors": "^4.1.1"
418 | }
419 | },
420 | "esbuild": {
421 | "version": "0.13.12",
422 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.12.tgz",
423 | "integrity": "sha512-vTKKUt+yoz61U/BbrnmlG9XIjwpdIxmHB8DlPR0AAW6OdS+nBQBci6LUHU2q9WbBobMEIQxxDpKbkmOGYvxsow==",
424 | "dev": true,
425 | "requires": {
426 | "esbuild-android-arm64": "0.13.12",
427 | "esbuild-darwin-64": "0.13.12",
428 | "esbuild-darwin-arm64": "0.13.12",
429 | "esbuild-freebsd-64": "0.13.12",
430 | "esbuild-freebsd-arm64": "0.13.12",
431 | "esbuild-linux-32": "0.13.12",
432 | "esbuild-linux-64": "0.13.12",
433 | "esbuild-linux-arm": "0.13.12",
434 | "esbuild-linux-arm64": "0.13.12",
435 | "esbuild-linux-mips64le": "0.13.12",
436 | "esbuild-linux-ppc64le": "0.13.12",
437 | "esbuild-netbsd-64": "0.13.12",
438 | "esbuild-openbsd-64": "0.13.12",
439 | "esbuild-sunos-64": "0.13.12",
440 | "esbuild-windows-32": "0.13.12",
441 | "esbuild-windows-64": "0.13.12",
442 | "esbuild-windows-arm64": "0.13.12"
443 | }
444 | },
445 | "esbuild-android-arm64": {
446 | "version": "0.13.12",
447 | "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.12.tgz",
448 | "integrity": "sha512-TSVZVrb4EIXz6KaYjXfTzPyyRpXV5zgYIADXtQsIenjZ78myvDGaPi11o4ZSaHIwFHsuwkB6ne5SZRBwAQ7maw==",
449 | "dev": true,
450 | "optional": true
451 | },
452 | "esbuild-darwin-64": {
453 | "version": "0.13.12",
454 | "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.12.tgz",
455 | "integrity": "sha512-c51C+N+UHySoV2lgfWSwwmlnLnL0JWj/LzuZt9Ltk9ub1s2Y8cr6SQV5W3mqVH1egUceew6KZ8GyI4nwu+fhsw==",
456 | "dev": true,
457 | "optional": true
458 | },
459 | "esbuild-darwin-arm64": {
460 | "version": "0.13.12",
461 | "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.12.tgz",
462 | "integrity": "sha512-JvAMtshP45Hd8A8wOzjkY1xAnTKTYuP/QUaKp5eUQGX+76GIie3fCdUUr2ZEKdvpSImNqxiZSIMziEiGB5oUmQ==",
463 | "dev": true,
464 | "optional": true
465 | },
466 | "esbuild-freebsd-64": {
467 | "version": "0.13.12",
468 | "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.12.tgz",
469 | "integrity": "sha512-r6On/Skv9f0ZjTu6PW5o7pdXr8aOgtFOEURJZYf1XAJs0IQ+gW+o1DzXjVkIoT+n1cm3N/t1KRJfX71MPg/ZUA==",
470 | "dev": true,
471 | "optional": true
472 | },
473 | "esbuild-freebsd-arm64": {
474 | "version": "0.13.12",
475 | "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.12.tgz",
476 | "integrity": "sha512-F6LmI2Q1gii073kmBE3NOTt/6zLL5zvZsxNLF8PMAwdHc+iBhD1vzfI8uQZMJA1IgXa3ocr3L3DJH9fLGXy6Yw==",
477 | "dev": true,
478 | "optional": true
479 | },
480 | "esbuild-linux-32": {
481 | "version": "0.13.12",
482 | "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.12.tgz",
483 | "integrity": "sha512-U1UZwG3UIwF7/V4tCVAo/nkBV9ag5KJiJTt+gaCmLVWH3bPLX7y+fNlhIWZy8raTMnXhMKfaTvWZ9TtmXzvkuQ==",
484 | "dev": true,
485 | "optional": true
486 | },
487 | "esbuild-linux-64": {
488 | "version": "0.13.12",
489 | "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.12.tgz",
490 | "integrity": "sha512-YpXSwtu2NxN3N4ifJxEdsgd6Q5d8LYqskrAwjmoCT6yQnEHJSF5uWcxv783HWN7lnGpJi9KUtDvYsnMdyGw71Q==",
491 | "dev": true,
492 | "optional": true
493 | },
494 | "esbuild-linux-arm": {
495 | "version": "0.13.12",
496 | "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.12.tgz",
497 | "integrity": "sha512-SyiT/JKxU6J+DY2qUiSLZJqCAftIt3uoGejZ0HDnUM2MGJqEGSGh7p1ecVL2gna3PxS4P+j6WAehCwgkBPXNIw==",
498 | "dev": true,
499 | "optional": true
500 | },
501 | "esbuild-linux-arm64": {
502 | "version": "0.13.12",
503 | "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.12.tgz",
504 | "integrity": "sha512-sgDNb8kb3BVodtAlcFGgwk+43KFCYjnFOaOfJibXnnIojNWuJHpL6aQJ4mumzNWw8Rt1xEtDQyuGK9f+Y24jGA==",
505 | "dev": true,
506 | "optional": true
507 | },
508 | "esbuild-linux-mips64le": {
509 | "version": "0.13.12",
510 | "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.12.tgz",
511 | "integrity": "sha512-qQJHlZBG+QwVIA8AbTEtbvF084QgDi4DaUsUnA+EolY1bxrG+UyOuGflM2ZritGhfS/k7THFjJbjH2wIeoKA2g==",
512 | "dev": true,
513 | "optional": true
514 | },
515 | "esbuild-linux-ppc64le": {
516 | "version": "0.13.12",
517 | "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.12.tgz",
518 | "integrity": "sha512-2dSnm1ldL7Lppwlo04CGQUpwNn5hGqXI38OzaoPOkRsBRWFBozyGxTFSee/zHFS+Pdh3b28JJbRK3owrrRgWNw==",
519 | "dev": true,
520 | "optional": true
521 | },
522 | "esbuild-netbsd-64": {
523 | "version": "0.13.12",
524 | "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.12.tgz",
525 | "integrity": "sha512-D4raxr02dcRiQNbxOLzpqBzcJNFAdsDNxjUbKkDMZBkL54Z0vZh4LRndycdZAMcIdizC/l/Yp/ZsBdAFxc5nbA==",
526 | "dev": true,
527 | "optional": true
528 | },
529 | "esbuild-openbsd-64": {
530 | "version": "0.13.12",
531 | "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.12.tgz",
532 | "integrity": "sha512-KuLCmYMb2kh05QuPJ+va60bKIH5wHL8ypDkmpy47lzwmdxNsuySeCMHuTv5o2Af1RUn5KLO5ZxaZeq4GEY7DaQ==",
533 | "dev": true,
534 | "optional": true
535 | },
536 | "esbuild-sunos-64": {
537 | "version": "0.13.12",
538 | "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.12.tgz",
539 | "integrity": "sha512-jBsF+e0woK3miKI8ufGWKG3o3rY9DpHvCVRn5eburMIIE+2c+y3IZ1srsthKyKI6kkXLvV4Cf/E7w56kLipMXw==",
540 | "dev": true,
541 | "optional": true
542 | },
543 | "esbuild-windows-32": {
544 | "version": "0.13.12",
545 | "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.12.tgz",
546 | "integrity": "sha512-L9m4lLFQrFeR7F+eLZXG82SbXZfUhyfu6CexZEil6vm+lc7GDCE0Q8DiNutkpzjv1+RAbIGVva9muItQ7HVTkQ==",
547 | "dev": true,
548 | "optional": true
549 | },
550 | "esbuild-windows-64": {
551 | "version": "0.13.12",
552 | "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.12.tgz",
553 | "integrity": "sha512-k4tX4uJlSbSkfs78W5d9+I9gpd+7N95W7H2bgOMFPsYREVJs31+Q2gLLHlsnlY95zBoPQMIzHooUIsixQIBjaQ==",
554 | "dev": true,
555 | "optional": true
556 | },
557 | "esbuild-windows-arm64": {
558 | "version": "0.13.12",
559 | "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.12.tgz",
560 | "integrity": "sha512-2tTv/BpYRIvuwHpp2M960nG7uvL+d78LFW/ikPItO+2GfK51CswIKSetSpDii+cjz8e9iSPgs+BU4o8nWICBwQ==",
561 | "dev": true,
562 | "optional": true
563 | },
564 | "escape-string-regexp": {
565 | "version": "4.0.0",
566 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
567 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
568 | "dev": true
569 | },
570 | "eslint": {
571 | "version": "7.32.0",
572 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz",
573 | "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==",
574 | "dev": true,
575 | "requires": {
576 | "@babel/code-frame": "7.12.11",
577 | "@eslint/eslintrc": "^0.4.3",
578 | "@humanwhocodes/config-array": "^0.5.0",
579 | "ajv": "^6.10.0",
580 | "chalk": "^4.0.0",
581 | "cross-spawn": "^7.0.2",
582 | "debug": "^4.0.1",
583 | "doctrine": "^3.0.0",
584 | "enquirer": "^2.3.5",
585 | "escape-string-regexp": "^4.0.0",
586 | "eslint-scope": "^5.1.1",
587 | "eslint-utils": "^2.1.0",
588 | "eslint-visitor-keys": "^2.0.0",
589 | "espree": "^7.3.1",
590 | "esquery": "^1.4.0",
591 | "esutils": "^2.0.2",
592 | "fast-deep-equal": "^3.1.3",
593 | "file-entry-cache": "^6.0.1",
594 | "functional-red-black-tree": "^1.0.1",
595 | "glob-parent": "^5.1.2",
596 | "globals": "^13.6.0",
597 | "ignore": "^4.0.6",
598 | "import-fresh": "^3.0.0",
599 | "imurmurhash": "^0.1.4",
600 | "is-glob": "^4.0.0",
601 | "js-yaml": "^3.13.1",
602 | "json-stable-stringify-without-jsonify": "^1.0.1",
603 | "levn": "^0.4.1",
604 | "lodash.merge": "^4.6.2",
605 | "minimatch": "^3.0.4",
606 | "natural-compare": "^1.4.0",
607 | "optionator": "^0.9.1",
608 | "progress": "^2.0.0",
609 | "regexpp": "^3.1.0",
610 | "semver": "^7.2.1",
611 | "strip-ansi": "^6.0.0",
612 | "strip-json-comments": "^3.1.0",
613 | "table": "^6.0.9",
614 | "text-table": "^0.2.0",
615 | "v8-compile-cache": "^2.0.3"
616 | }
617 | },
618 | "eslint-config-prettier": {
619 | "version": "8.3.0",
620 | "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz",
621 | "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==",
622 | "dev": true
623 | },
624 | "eslint-plugin-svelte3": {
625 | "version": "3.2.1",
626 | "resolved": "https://registry.npmjs.org/eslint-plugin-svelte3/-/eslint-plugin-svelte3-3.2.1.tgz",
627 | "integrity": "sha512-YoBR9mLoKCjGghJ/gvpnFZKaMEu/VRcuxpSRS8KuozuEo7CdBH7bmBHa6FmMm0i4kJnOyx+PVsaptz96K6H/4Q==",
628 | "dev": true
629 | },
630 | "eslint-scope": {
631 | "version": "5.1.1",
632 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
633 | "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
634 | "dev": true,
635 | "requires": {
636 | "esrecurse": "^4.3.0",
637 | "estraverse": "^4.1.1"
638 | }
639 | },
640 | "eslint-utils": {
641 | "version": "2.1.0",
642 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
643 | "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
644 | "dev": true,
645 | "requires": {
646 | "eslint-visitor-keys": "^1.1.0"
647 | },
648 | "dependencies": {
649 | "eslint-visitor-keys": {
650 | "version": "1.3.0",
651 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
652 | "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
653 | "dev": true
654 | }
655 | }
656 | },
657 | "eslint-visitor-keys": {
658 | "version": "2.1.0",
659 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
660 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
661 | "dev": true
662 | },
663 | "espree": {
664 | "version": "7.3.1",
665 | "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz",
666 | "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==",
667 | "dev": true,
668 | "requires": {
669 | "acorn": "^7.4.0",
670 | "acorn-jsx": "^5.3.1",
671 | "eslint-visitor-keys": "^1.3.0"
672 | },
673 | "dependencies": {
674 | "eslint-visitor-keys": {
675 | "version": "1.3.0",
676 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
677 | "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
678 | "dev": true
679 | }
680 | }
681 | },
682 | "esprima": {
683 | "version": "4.0.1",
684 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
685 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
686 | "dev": true
687 | },
688 | "esquery": {
689 | "version": "1.4.0",
690 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
691 | "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
692 | "dev": true,
693 | "requires": {
694 | "estraverse": "^5.1.0"
695 | },
696 | "dependencies": {
697 | "estraverse": {
698 | "version": "5.3.0",
699 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
700 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
701 | "dev": true
702 | }
703 | }
704 | },
705 | "esrecurse": {
706 | "version": "4.3.0",
707 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
708 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
709 | "dev": true,
710 | "requires": {
711 | "estraverse": "^5.2.0"
712 | },
713 | "dependencies": {
714 | "estraverse": {
715 | "version": "5.3.0",
716 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
717 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
718 | "dev": true
719 | }
720 | }
721 | },
722 | "estraverse": {
723 | "version": "4.3.0",
724 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
725 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
726 | "dev": true
727 | },
728 | "estree-walker": {
729 | "version": "2.0.2",
730 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
731 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
732 | "dev": true
733 | },
734 | "esutils": {
735 | "version": "2.0.3",
736 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
737 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
738 | "dev": true
739 | },
740 | "fast-deep-equal": {
741 | "version": "3.1.3",
742 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
743 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
744 | "dev": true
745 | },
746 | "fast-json-stable-stringify": {
747 | "version": "2.1.0",
748 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
749 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
750 | "dev": true
751 | },
752 | "fast-levenshtein": {
753 | "version": "2.0.6",
754 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
755 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
756 | "dev": true
757 | },
758 | "file-entry-cache": {
759 | "version": "6.0.1",
760 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
761 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
762 | "dev": true,
763 | "requires": {
764 | "flat-cache": "^3.0.4"
765 | }
766 | },
767 | "flat-cache": {
768 | "version": "3.0.4",
769 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
770 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
771 | "dev": true,
772 | "requires": {
773 | "flatted": "^3.1.0",
774 | "rimraf": "^3.0.2"
775 | }
776 | },
777 | "flatted": {
778 | "version": "3.2.2",
779 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz",
780 | "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==",
781 | "dev": true
782 | },
783 | "fs.realpath": {
784 | "version": "1.0.0",
785 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
786 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
787 | "dev": true
788 | },
789 | "fsevents": {
790 | "version": "2.3.2",
791 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
792 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
793 | "dev": true,
794 | "optional": true
795 | },
796 | "function-bind": {
797 | "version": "1.1.1",
798 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
799 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
800 | "dev": true
801 | },
802 | "functional-red-black-tree": {
803 | "version": "1.0.1",
804 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
805 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
806 | "dev": true
807 | },
808 | "glob": {
809 | "version": "7.2.0",
810 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
811 | "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
812 | "dev": true,
813 | "requires": {
814 | "fs.realpath": "^1.0.0",
815 | "inflight": "^1.0.4",
816 | "inherits": "2",
817 | "minimatch": "^3.0.4",
818 | "once": "^1.3.0",
819 | "path-is-absolute": "^1.0.0"
820 | }
821 | },
822 | "glob-parent": {
823 | "version": "5.1.2",
824 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
825 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
826 | "dev": true,
827 | "requires": {
828 | "is-glob": "^4.0.1"
829 | }
830 | },
831 | "globals": {
832 | "version": "13.12.0",
833 | "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz",
834 | "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==",
835 | "dev": true,
836 | "requires": {
837 | "type-fest": "^0.20.2"
838 | }
839 | },
840 | "has": {
841 | "version": "1.0.3",
842 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
843 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
844 | "dev": true,
845 | "requires": {
846 | "function-bind": "^1.1.1"
847 | }
848 | },
849 | "has-flag": {
850 | "version": "4.0.0",
851 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
852 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
853 | "dev": true
854 | },
855 | "ieee754": {
856 | "version": "1.2.1",
857 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
858 | "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
859 | },
860 | "ignore": {
861 | "version": "4.0.6",
862 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
863 | "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
864 | "dev": true
865 | },
866 | "import-fresh": {
867 | "version": "3.3.0",
868 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
869 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
870 | "dev": true,
871 | "requires": {
872 | "parent-module": "^1.0.0",
873 | "resolve-from": "^4.0.0"
874 | }
875 | },
876 | "imurmurhash": {
877 | "version": "0.1.4",
878 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
879 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
880 | "dev": true
881 | },
882 | "inflight": {
883 | "version": "1.0.6",
884 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
885 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
886 | "dev": true,
887 | "requires": {
888 | "once": "^1.3.0",
889 | "wrappy": "1"
890 | }
891 | },
892 | "inherits": {
893 | "version": "2.0.4",
894 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
895 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
896 | "dev": true
897 | },
898 | "is-core-module": {
899 | "version": "2.8.0",
900 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz",
901 | "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==",
902 | "dev": true,
903 | "requires": {
904 | "has": "^1.0.3"
905 | }
906 | },
907 | "is-extglob": {
908 | "version": "2.1.1",
909 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
910 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
911 | "dev": true
912 | },
913 | "is-fullwidth-code-point": {
914 | "version": "3.0.0",
915 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
916 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
917 | "dev": true
918 | },
919 | "is-glob": {
920 | "version": "4.0.3",
921 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
922 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
923 | "dev": true,
924 | "requires": {
925 | "is-extglob": "^2.1.1"
926 | }
927 | },
928 | "isexe": {
929 | "version": "2.0.0",
930 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
931 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
932 | "dev": true
933 | },
934 | "js-tokens": {
935 | "version": "4.0.0",
936 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
937 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
938 | "dev": true
939 | },
940 | "js-yaml": {
941 | "version": "3.14.1",
942 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
943 | "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
944 | "dev": true,
945 | "requires": {
946 | "argparse": "^1.0.7",
947 | "esprima": "^4.0.0"
948 | }
949 | },
950 | "json-schema-traverse": {
951 | "version": "0.4.1",
952 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
953 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
954 | "dev": true
955 | },
956 | "json-stable-stringify-without-jsonify": {
957 | "version": "1.0.1",
958 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
959 | "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
960 | "dev": true
961 | },
962 | "kleur": {
963 | "version": "4.1.4",
964 | "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
965 | "integrity": "sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA==",
966 | "dev": true
967 | },
968 | "levn": {
969 | "version": "0.4.1",
970 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
971 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
972 | "dev": true,
973 | "requires": {
974 | "prelude-ls": "^1.2.1",
975 | "type-check": "~0.4.0"
976 | }
977 | },
978 | "lodash.clonedeep": {
979 | "version": "4.5.0",
980 | "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
981 | "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=",
982 | "dev": true
983 | },
984 | "lodash.merge": {
985 | "version": "4.6.2",
986 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
987 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
988 | "dev": true
989 | },
990 | "lodash.truncate": {
991 | "version": "4.4.2",
992 | "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz",
993 | "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=",
994 | "dev": true
995 | },
996 | "lru-cache": {
997 | "version": "6.0.0",
998 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
999 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
1000 | "dev": true,
1001 | "requires": {
1002 | "yallist": "^4.0.0"
1003 | }
1004 | },
1005 | "magic-string": {
1006 | "version": "0.25.7",
1007 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
1008 | "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
1009 | "dev": true,
1010 | "requires": {
1011 | "sourcemap-codec": "^1.4.4"
1012 | }
1013 | },
1014 | "memory-pager": {
1015 | "version": "1.5.0",
1016 | "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
1017 | "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",
1018 | "optional": true
1019 | },
1020 | "minimatch": {
1021 | "version": "3.0.4",
1022 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
1023 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
1024 | "dev": true,
1025 | "requires": {
1026 | "brace-expansion": "^1.1.7"
1027 | }
1028 | },
1029 | "mongodb": {
1030 | "version": "4.1.4",
1031 | "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.1.4.tgz",
1032 | "integrity": "sha512-Cv/sk8on/tpvvqbEvR1h03mdyNdyvvO+WhtFlL4jrZ+DSsN/oSQHVqmJQI/sBCqqbOArFcYCAYDfyzqFwV4GSQ==",
1033 | "requires": {
1034 | "bson": "^4.5.4",
1035 | "denque": "^2.0.1",
1036 | "mongodb-connection-string-url": "^2.1.0",
1037 | "saslprep": "^1.0.3"
1038 | }
1039 | },
1040 | "mongodb-connection-string-url": {
1041 | "version": "2.1.0",
1042 | "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.1.0.tgz",
1043 | "integrity": "sha512-Qf9Zw7KGiRljWvMrrUFDdVqo46KIEiDuCzvEN97rh/PcKzk2bd6n9KuzEwBwW9xo5glwx69y1mI6s+jFUD/aIQ==",
1044 | "requires": {
1045 | "@types/whatwg-url": "^8.2.1",
1046 | "whatwg-url": "^9.1.0"
1047 | }
1048 | },
1049 | "mri": {
1050 | "version": "1.2.0",
1051 | "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
1052 | "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
1053 | "dev": true
1054 | },
1055 | "ms": {
1056 | "version": "2.1.2",
1057 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1058 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
1059 | "dev": true
1060 | },
1061 | "nanoid": {
1062 | "version": "3.1.30",
1063 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz",
1064 | "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==",
1065 | "dev": true
1066 | },
1067 | "natural-compare": {
1068 | "version": "1.4.0",
1069 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
1070 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
1071 | "dev": true
1072 | },
1073 | "once": {
1074 | "version": "1.4.0",
1075 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1076 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
1077 | "dev": true,
1078 | "requires": {
1079 | "wrappy": "1"
1080 | }
1081 | },
1082 | "optionator": {
1083 | "version": "0.9.1",
1084 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
1085 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
1086 | "dev": true,
1087 | "requires": {
1088 | "deep-is": "^0.1.3",
1089 | "fast-levenshtein": "^2.0.6",
1090 | "levn": "^0.4.1",
1091 | "prelude-ls": "^1.2.1",
1092 | "type-check": "^0.4.0",
1093 | "word-wrap": "^1.2.3"
1094 | }
1095 | },
1096 | "parent-module": {
1097 | "version": "1.0.1",
1098 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
1099 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
1100 | "dev": true,
1101 | "requires": {
1102 | "callsites": "^3.0.0"
1103 | }
1104 | },
1105 | "path-is-absolute": {
1106 | "version": "1.0.1",
1107 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
1108 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
1109 | "dev": true
1110 | },
1111 | "path-key": {
1112 | "version": "3.1.1",
1113 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1114 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1115 | "dev": true
1116 | },
1117 | "path-parse": {
1118 | "version": "1.0.7",
1119 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
1120 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
1121 | "dev": true
1122 | },
1123 | "picocolors": {
1124 | "version": "1.0.0",
1125 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
1126 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
1127 | "dev": true
1128 | },
1129 | "picomatch": {
1130 | "version": "2.3.0",
1131 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
1132 | "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==",
1133 | "dev": true
1134 | },
1135 | "postcss": {
1136 | "version": "8.4.1",
1137 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.1.tgz",
1138 | "integrity": "sha512-WqLs/TTzXdG+/A4ZOOK9WDZiikrRaiA+eoEb/jz2DT9KUhMNHgP7yKPO8vwi62ZCsb703Gwb7BMZwDzI54Y2Ag==",
1139 | "dev": true,
1140 | "requires": {
1141 | "nanoid": "^3.1.30",
1142 | "picocolors": "^1.0.0",
1143 | "source-map-js": "^1.0.1"
1144 | }
1145 | },
1146 | "prelude-ls": {
1147 | "version": "1.2.1",
1148 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
1149 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
1150 | "dev": true
1151 | },
1152 | "prettier": {
1153 | "version": "2.4.1",
1154 | "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz",
1155 | "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==",
1156 | "dev": true
1157 | },
1158 | "prettier-plugin-svelte": {
1159 | "version": "2.4.0",
1160 | "resolved": "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-2.4.0.tgz",
1161 | "integrity": "sha512-JwJ9bOz4XHLQtiLnX4mTSSDUdhu12WH8sTwy/XTDCSyPlah6IcV7NWeYBZscPEcceu2YnW8Y9sJCP40Z2UH9GA==",
1162 | "dev": true
1163 | },
1164 | "progress": {
1165 | "version": "2.0.3",
1166 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
1167 | "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
1168 | "dev": true
1169 | },
1170 | "punycode": {
1171 | "version": "2.1.1",
1172 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
1173 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
1174 | },
1175 | "regexpp": {
1176 | "version": "3.2.0",
1177 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
1178 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
1179 | "dev": true
1180 | },
1181 | "require-from-string": {
1182 | "version": "2.0.2",
1183 | "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
1184 | "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
1185 | "dev": true
1186 | },
1187 | "require-relative": {
1188 | "version": "0.8.7",
1189 | "resolved": "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz",
1190 | "integrity": "sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4=",
1191 | "dev": true
1192 | },
1193 | "resolve": {
1194 | "version": "1.20.0",
1195 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
1196 | "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
1197 | "dev": true,
1198 | "requires": {
1199 | "is-core-module": "^2.2.0",
1200 | "path-parse": "^1.0.6"
1201 | }
1202 | },
1203 | "resolve-from": {
1204 | "version": "4.0.0",
1205 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
1206 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
1207 | "dev": true
1208 | },
1209 | "rimraf": {
1210 | "version": "3.0.2",
1211 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
1212 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
1213 | "dev": true,
1214 | "requires": {
1215 | "glob": "^7.1.3"
1216 | }
1217 | },
1218 | "rollup": {
1219 | "version": "2.60.1",
1220 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.60.1.tgz",
1221 | "integrity": "sha512-akwfnpjY0rXEDSn1UTVfKXJhPsEBu+imi1gqBA1ZkHGydUnkV/fWCC90P7rDaLEW8KTwBcS1G3N4893Ndz+jwg==",
1222 | "dev": true,
1223 | "requires": {
1224 | "fsevents": "~2.3.2"
1225 | }
1226 | },
1227 | "sade": {
1228 | "version": "1.7.4",
1229 | "resolved": "https://registry.npmjs.org/sade/-/sade-1.7.4.tgz",
1230 | "integrity": "sha512-y5yauMD93rX840MwUJr7C1ysLFBgMspsdTo4UVrDg3fXDvtwOyIqykhVAAm6fk/3au77773itJStObgK+LKaiA==",
1231 | "dev": true,
1232 | "requires": {
1233 | "mri": "^1.1.0"
1234 | }
1235 | },
1236 | "saslprep": {
1237 | "version": "1.0.3",
1238 | "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz",
1239 | "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==",
1240 | "optional": true,
1241 | "requires": {
1242 | "sparse-bitfield": "^3.0.3"
1243 | }
1244 | },
1245 | "semver": {
1246 | "version": "7.3.5",
1247 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
1248 | "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
1249 | "dev": true,
1250 | "requires": {
1251 | "lru-cache": "^6.0.0"
1252 | }
1253 | },
1254 | "shebang-command": {
1255 | "version": "2.0.0",
1256 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1257 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1258 | "dev": true,
1259 | "requires": {
1260 | "shebang-regex": "^3.0.0"
1261 | }
1262 | },
1263 | "shebang-regex": {
1264 | "version": "3.0.0",
1265 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1266 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1267 | "dev": true
1268 | },
1269 | "slice-ansi": {
1270 | "version": "4.0.0",
1271 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
1272 | "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
1273 | "dev": true,
1274 | "requires": {
1275 | "ansi-styles": "^4.0.0",
1276 | "astral-regex": "^2.0.0",
1277 | "is-fullwidth-code-point": "^3.0.0"
1278 | }
1279 | },
1280 | "source-map-js": {
1281 | "version": "1.0.1",
1282 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.1.tgz",
1283 | "integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==",
1284 | "dev": true
1285 | },
1286 | "sourcemap-codec": {
1287 | "version": "1.4.8",
1288 | "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
1289 | "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
1290 | "dev": true
1291 | },
1292 | "sparse-bitfield": {
1293 | "version": "3.0.3",
1294 | "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
1295 | "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=",
1296 | "optional": true,
1297 | "requires": {
1298 | "memory-pager": "^1.0.2"
1299 | }
1300 | },
1301 | "sprintf-js": {
1302 | "version": "1.0.3",
1303 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
1304 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
1305 | "dev": true
1306 | },
1307 | "string-hash": {
1308 | "version": "1.1.3",
1309 | "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz",
1310 | "integrity": "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs="
1311 | },
1312 | "string-width": {
1313 | "version": "4.2.3",
1314 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
1315 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
1316 | "dev": true,
1317 | "requires": {
1318 | "emoji-regex": "^8.0.0",
1319 | "is-fullwidth-code-point": "^3.0.0",
1320 | "strip-ansi": "^6.0.1"
1321 | }
1322 | },
1323 | "strip-ansi": {
1324 | "version": "6.0.1",
1325 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
1326 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
1327 | "dev": true,
1328 | "requires": {
1329 | "ansi-regex": "^5.0.1"
1330 | }
1331 | },
1332 | "strip-json-comments": {
1333 | "version": "3.1.1",
1334 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
1335 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
1336 | "dev": true
1337 | },
1338 | "supports-color": {
1339 | "version": "7.2.0",
1340 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1341 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1342 | "dev": true,
1343 | "requires": {
1344 | "has-flag": "^4.0.0"
1345 | }
1346 | },
1347 | "svelte": {
1348 | "version": "3.44.1",
1349 | "resolved": "https://registry.npmjs.org/svelte/-/svelte-3.44.1.tgz",
1350 | "integrity": "sha512-4DrCEJoBvdR689efHNSxIQn2pnFwB7E7j2yLEJtHE/P8hxwZWIphCtJ8are7bjl/iVMlcEf5uh5pJ68IwR09vQ==",
1351 | "dev": true
1352 | },
1353 | "svelte-hmr": {
1354 | "version": "0.14.7",
1355 | "resolved": "https://registry.npmjs.org/svelte-hmr/-/svelte-hmr-0.14.7.tgz",
1356 | "integrity": "sha512-pDrzgcWSoMaK6AJkBWkmgIsecW0GChxYZSZieIYfCP0v2oPyx2CYU/zm7TBIcjLVUPP714WxmViE9Thht4etog==",
1357 | "dev": true
1358 | },
1359 | "table": {
1360 | "version": "6.7.2",
1361 | "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz",
1362 | "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==",
1363 | "dev": true,
1364 | "requires": {
1365 | "ajv": "^8.0.1",
1366 | "lodash.clonedeep": "^4.5.0",
1367 | "lodash.truncate": "^4.4.2",
1368 | "slice-ansi": "^4.0.0",
1369 | "string-width": "^4.2.3",
1370 | "strip-ansi": "^6.0.1"
1371 | },
1372 | "dependencies": {
1373 | "ajv": {
1374 | "version": "8.6.3",
1375 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz",
1376 | "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==",
1377 | "dev": true,
1378 | "requires": {
1379 | "fast-deep-equal": "^3.1.1",
1380 | "json-schema-traverse": "^1.0.0",
1381 | "require-from-string": "^2.0.2",
1382 | "uri-js": "^4.2.2"
1383 | }
1384 | },
1385 | "json-schema-traverse": {
1386 | "version": "1.0.0",
1387 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
1388 | "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
1389 | "dev": true
1390 | }
1391 | }
1392 | },
1393 | "text-table": {
1394 | "version": "0.2.0",
1395 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
1396 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
1397 | "dev": true
1398 | },
1399 | "tr46": {
1400 | "version": "2.1.0",
1401 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz",
1402 | "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==",
1403 | "requires": {
1404 | "punycode": "^2.1.1"
1405 | }
1406 | },
1407 | "type-check": {
1408 | "version": "0.4.0",
1409 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
1410 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
1411 | "dev": true,
1412 | "requires": {
1413 | "prelude-ls": "^1.2.1"
1414 | }
1415 | },
1416 | "type-fest": {
1417 | "version": "0.20.2",
1418 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
1419 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
1420 | "dev": true
1421 | },
1422 | "uri-js": {
1423 | "version": "4.4.1",
1424 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
1425 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
1426 | "dev": true,
1427 | "requires": {
1428 | "punycode": "^2.1.0"
1429 | }
1430 | },
1431 | "uuid": {
1432 | "version": "8.3.2",
1433 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
1434 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
1435 | },
1436 | "v8-compile-cache": {
1437 | "version": "2.3.0",
1438 | "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
1439 | "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
1440 | "dev": true
1441 | },
1442 | "vite": {
1443 | "version": "2.6.14",
1444 | "resolved": "https://registry.npmjs.org/vite/-/vite-2.6.14.tgz",
1445 | "integrity": "sha512-2HA9xGyi+EhY2MXo0+A2dRsqsAG3eFNEVIo12olkWhOmc8LfiM+eMdrXf+Ruje9gdXgvSqjLI9freec1RUM5EA==",
1446 | "dev": true,
1447 | "requires": {
1448 | "esbuild": "^0.13.2",
1449 | "fsevents": "~2.3.2",
1450 | "postcss": "^8.3.8",
1451 | "resolve": "^1.20.0",
1452 | "rollup": "^2.57.0"
1453 | }
1454 | },
1455 | "webidl-conversions": {
1456 | "version": "6.1.0",
1457 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz",
1458 | "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w=="
1459 | },
1460 | "whatwg-url": {
1461 | "version": "9.1.0",
1462 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-9.1.0.tgz",
1463 | "integrity": "sha512-CQ0UcrPHyomtlOCot1TL77WyMIm/bCwrJ2D6AOKGwEczU9EpyoqAokfqrf/MioU9kHcMsmJZcg1egXix2KYEsA==",
1464 | "requires": {
1465 | "tr46": "^2.1.0",
1466 | "webidl-conversions": "^6.1.0"
1467 | }
1468 | },
1469 | "which": {
1470 | "version": "2.0.2",
1471 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1472 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1473 | "dev": true,
1474 | "requires": {
1475 | "isexe": "^2.0.0"
1476 | }
1477 | },
1478 | "word-wrap": {
1479 | "version": "1.2.3",
1480 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
1481 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
1482 | "dev": true
1483 | },
1484 | "wrappy": {
1485 | "version": "1.0.2",
1486 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1487 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
1488 | "dev": true
1489 | },
1490 | "yallist": {
1491 | "version": "4.0.0",
1492 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
1493 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
1494 | "dev": true
1495 | }
1496 | }
1497 | }
1498 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sveltekittest",
3 | "version": "0.0.1",
4 | "scripts": {
5 | "dev": "svelte-kit dev",
6 | "build": "svelte-kit build",
7 | "preview": "svelte-kit preview",
8 | "lint": "prettier --ignore-path .gitignore --check --plugin-search-dir=. . && eslint --ignore-path .gitignore .",
9 | "format": "prettier --ignore-path .gitignore --write --plugin-search-dir=. ."
10 | },
11 | "devDependencies": {
12 | "@sveltejs/adapter-netlify": "^1.0.0-next.35",
13 | "@sveltejs/kit": "next",
14 | "eslint": "^7.32.0",
15 | "eslint-config-prettier": "^8.3.0",
16 | "eslint-plugin-svelte3": "^3.2.1",
17 | "prettier": "^2.4.1",
18 | "prettier-plugin-svelte": "^2.4.0",
19 | "svelte": "^3.34.0"
20 | },
21 | "type": "module",
22 | "dependencies": {
23 | "@fontsource/fira-mono": "^4.5.0",
24 | "@lukeed/uuid": "^2.0.0",
25 | "cookie": "^0.4.1",
26 | "dotenv": "^10.0.0",
27 | "mongodb": "^4.1.4",
28 | "string-hash": "^1.1.3",
29 | "uuid": "^8.3.2"
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/app.css:
--------------------------------------------------------------------------------
1 | :root {
2 | font-family: 'Outfit';
3 | font-weight: 300;
4 | font-size: 112.5%;
5 | }
6 |
7 | * {
8 | box-sizing: border-box;
9 | scrollbar-width: thin;
10 | }
11 |
12 | body {
13 | min-height: 100vh;
14 | margin: 0;
15 | background: var(--bg-color-2);
16 | color: var(--font-color);
17 | overflow: hidden;
18 | }
19 |
20 | #svelte {
21 | min-height: 100vh;
22 | display: flex;
23 | }
24 |
25 | ::-webkit-scrollbar {
26 | width: 7.5px;
27 | }
28 | ::-webkit-scrollbar-track {
29 | background: transparent;
30 | }
31 | ::-webkit-scrollbar-thumb {
32 | background: var(--bg-color-1-5);
33 | }
34 |
35 | ::placeholder,
36 | ::-webkit-input-placeholder {
37 | color: var(--sub-color);
38 | }
39 |
40 | :focus {
41 | outline: none;
42 | }
43 |
44 | input,
45 | button {
46 | color: inherit;
47 | font: inherit;
48 | border: none;
49 | background: transparent;
50 | }
51 |
52 | button {
53 | flex-shrink: 0;
54 | }
55 | button:hover {
56 | cursor: pointer;
57 | }
58 |
59 | hr {
60 | height: 2px;
61 | background: var(--bg-color-2-5);
62 | border: none;
63 | flex-shrink: 0;
64 | border-radius: 2px;
65 | }
66 |
67 | .heading-container {
68 | background: var(--bg-color-1);
69 | position: sticky;
70 | top: 0;
71 | width: 100%;
72 | padding: 20px 40px 10px 40px;
73 | border-radius: 18px;
74 | display: flex;
75 | align-items: center;
76 | }
77 | .heading-container h1 {
78 | margin: 0;
79 | margin-right: auto;
80 | }
81 |
82 | .scroll-container {
83 | display: flex;
84 | flex-direction: column;
85 | overflow-y: auto;
86 | scrollbar-color: var(--bg-color-1-5) transparent;
87 | height: 100%;
88 | }
89 |
90 | .item-container {
91 | padding: 10px 40px 86px 40px;
92 | }
93 |
94 | .text-container {
95 | width: 100%;
96 | display: flex;
97 | flex-direction: column;
98 | }
99 |
100 | .name {
101 | width: 100%;
102 | background: transparent;
103 | padding: 0;
104 | line-height: 24px;
105 | }
106 | .name:focus {
107 | outline: none;
108 | }
109 |
110 | .icon-button {
111 | display: flex;
112 | justify-content: center;
113 | width: 20px;
114 | height: 20px;
115 | padding: 0;
116 | color: var(--sub-color);
117 | }
118 | .icon-button:hover {
119 | color: var(--font-color);
120 | }
121 | .icon-button i {
122 | line-height: 20px;
123 | }
124 |
125 | .icon-button-lg {
126 | width: 36px;
127 | height: 36px;
128 | background: var(--bg-color-2);
129 | border-radius: 10px;
130 | margin-left: 12px;
131 | }
132 | .icon-button-lg:hover {
133 | background-color: var(--bg-color-2-5);
134 | }
135 | .icon-button-lg i {
136 | font-size: 20px;
137 | }
138 |
139 | .todo {
140 | display: flex;
141 | background: var(--bg-color-2);
142 | align-items: center;
143 | border-radius: 12px;
144 | padding: 10px 12px;
145 | margin-bottom: 8px;
146 | }
147 | .todo.completed .name {
148 | text-decoration: line-through;
149 | color: var(--sub-color);
150 | }
151 | .todo.completed .checkbox i {
152 | display: inline-block;
153 | }
154 |
155 | .checkbox {
156 | border-radius: 6px;
157 | margin-right: 12px;
158 | background: var(--bg-color-3);
159 | }
160 | .checkbox:hover {
161 | background: var(--bg-color-3-5);
162 | }
163 | .checkbox:active {
164 | background: var(--font-color);
165 | }
166 | .checkbox i {
167 | display: none;
168 | color: var(--font-color);
169 | margin-right: 2px !important;
170 | }
171 |
172 | .delete {
173 | margin-left: 12px;
174 | }
175 |
176 | .new-container {
177 | margin-top: auto;
178 | background: var(--bg-color-1);
179 | padding: 10px 40px 20px 40px;
180 | position: sticky;
181 | bottom: 0;
182 | width: 100%;
183 | border-radius: 18px;
184 | }
185 |
186 | .new {
187 | display: flex;
188 | background: var(--bg-color-2);
189 | align-items: center;
190 | border-radius: 12px;
191 | padding: 10px 12px;
192 | }
193 | .new .name {
194 | width: 100%;
195 | }
196 |
197 | .add {
198 | margin-right: 12px;
199 | font-size: 20px;
200 | }
201 | .add.active {
202 | color: var(--font-color);
203 | }
204 | .add.active:hover {
205 | color: var(--font-color);
206 | }
207 | .add:hover {
208 | color: var(--sub-color);
209 | }
210 |
211 | .due-date,
212 | .new-date {
213 | margin-left: 12px;
214 | }
215 |
216 | .due-date {
217 | color: var(--sub-color);
218 | font-size: 0.8em;
219 | padding: 0;
220 | }
221 | .due-date.overdue {
222 | color: hsl(0, 60%, 60%);
223 | }
224 | .due-date:hover {
225 | color: var(--font-color);
226 | }
227 |
--------------------------------------------------------------------------------
/src/app.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |