├── .github └── workflows │ └── node.js.yml ├── .vercel ├── README.txt └── project.json ├── CHANGELOG.md ├── LICENSE ├── README.md ├── documentation ├── .eslintignore ├── .eslintrc.cjs ├── .gitignore ├── .npmrc ├── .prettierignore ├── .prettierrc ├── README.md ├── package.json ├── postcss.config.cjs ├── src │ ├── app.css │ ├── app.d.ts │ ├── app.html │ ├── components │ │ ├── AlgoliaLogo.svelte │ │ ├── Anatomy │ │ │ ├── Anatomy.svelte │ │ │ ├── Classes.svelte │ │ │ ├── DynamicSlots.svelte │ │ │ ├── Slots.svelte │ │ │ └── Structure.svelte │ │ ├── Examples │ │ │ ├── Examples.svelte │ │ │ └── example.ts │ │ ├── Navigation.svelte │ │ ├── Pokemon │ │ │ ├── Pokedex.svelte │ │ │ ├── PokemonContent.svelte │ │ │ ├── PokemonEmptySearch.svelte │ │ │ ├── PokemonFooter.svelte │ │ │ ├── PokemonGroup.svelte │ │ │ ├── PokemonHeaderCenter.svelte │ │ │ ├── PokemonHeaderLeft.svelte │ │ │ ├── PokemonHeaderRight.svelte │ │ │ ├── PokemonItem.svelte │ │ │ ├── PokemonNoResult.svelte │ │ │ └── algoliaType.ts │ │ ├── Props │ │ │ └── Props.svelte │ │ ├── SideMenu.svelte │ │ ├── Simple │ │ │ └── Simple.svelte │ │ ├── Slots │ │ │ └── Slots.svelte │ │ ├── StickyBottom.svelte │ │ ├── Table.svelte │ │ └── ThemeSwitch.svelte │ └── routes │ │ ├── +layout.svelte │ │ └── +page.svelte ├── static │ ├── favicon.png │ └── pokemon.json ├── svelte.config.js ├── tailwind.config.cjs ├── tsconfig.json └── vite.config.ts ├── package.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml └── svelte-spotlight ├── .eslintignore ├── .eslintrc.cjs ├── .gitignore ├── .npmrc ├── .prettierignore ├── .prettierrc ├── .svelte-kit ├── ambient.d.ts ├── generated │ ├── client-manifest.js │ ├── client-matchers.js │ ├── nodes │ │ ├── 0.js │ │ ├── 1.js │ │ └── 2.js │ └── root.svelte ├── tsconfig.json └── types │ ├── route_meta_data.json │ └── src │ └── routes │ └── $types.d.ts ├── README.md ├── package.json ├── src ├── app.d.ts ├── app.html ├── lib │ ├── SvelteSpotlight.svelte │ ├── index.ts │ ├── portal.ts │ └── trapFocus.ts └── routes │ └── +page.svelte ├── static └── favicon.png ├── svelte.config.js ├── tsconfig.json └── vite.config.ts /.github/workflows/node.js.yml: -------------------------------------------------------------------------------- 1 | # # This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node 2 | # # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions 3 | 4 | # name: Node.js CI 5 | 6 | # on: 7 | # push: 8 | # branches: [ master ] 9 | # pull_request: 10 | # branches: [ master ] 11 | 12 | # jobs: 13 | 14 | # build: 15 | 16 | # runs-on: ubuntu-latest 17 | 18 | # strategy: 19 | # matrix: 20 | # node-version: [12.x, 14.x, 16.x] 21 | # # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ 22 | 23 | # steps: 24 | # - uses: actions/checkout@v3 25 | # - name: Setup PNPM 26 | # uses: pnpm/action-setup@v2.2.1 27 | # with: 28 | # version: "6.32.3" 29 | # - run: pnpm install --no-frozen-lockfile 30 | # - run: cd svelte-spotlight && pnpm run lint 31 | -------------------------------------------------------------------------------- /.vercel/README.txt: -------------------------------------------------------------------------------- 1 | > Why do I have a folder named ".vercel" in my project? 2 | The ".vercel" folder is created when you link a directory to a Vercel project. 3 | 4 | > What does the "project.json" file contain? 5 | The "project.json" file contains: 6 | - The ID of the Vercel project that you linked ("projectId") 7 | - The ID of the user or team your Vercel project is owned by ("orgId") 8 | 9 | > Should I commit the ".vercel" folder? 10 | No, you should not share the ".vercel" folder with anyone. 11 | Upon creation, it will be automatically added to your ".gitignore" file. 12 | -------------------------------------------------------------------------------- /.vercel/project.json: -------------------------------------------------------------------------------- 1 | {"projectId":"prj_awYMz6kL1aRmwX0bTtxlNrgLzD6d","orgId":"TPXhK7bxDCcwuviSAZB0nMX5"} -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | ## [v2.0.0] - 2023-29-08 4 | 5 | ### Improvement 6 | 7 | - It is now possible to import the component directly from the package like this = `import SvelteSpotlight from 'svelte-spotlight';` 8 | - Add focus trap and simpler but better logic for keyboard navigation, relaying more on native platform behavior. 9 | - Detect browser by using esm-env. 10 | - Add possibility to portal the spotlight into the document body. 11 | - Add itemClass prop to add a class to the rendered button list items. 12 | 13 | ### Breaking 14 | 15 | - Remove the option to choose the html element to use for the list and option tags. The list will always be a ul and the options will always be button. 16 | - sl-results-list classname is now sl-list 17 | - sl-results-item classname is now sl-item 18 | - New feature 19 | 20 | ### Patch 21 | 22 | - Add global directive to transition in order for them to run. 23 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 beynar 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # svelte-spotlight ![svelte-themes minzip package size](https://img.shields.io/bundlephobia/minzip/svelte-spotlight) ![Version](https://img.shields.io/npm/v/svelte-spotlight.svg?colorB=green) 2 | 3 | Headless spotlight component for Svelte 4 | 5 | Build your site global search box in minutes 6 | 7 | ```bash 8 | pnpm add svelte-spotlight 9 | 10 | npm install svelte-spotlight 11 | 12 | yarn add svelte-spotlight 13 | ``` 14 | 15 | - ✅ Bring your own style, completely headless. Svelte-spotlight only handle the layout. 16 | - ✅ Search method agnostic, local or asynchronous. 17 | - ✅ Data agnostic, render flat lists or grouped results. Integrate perfectly with Algolia 18 | - ✅ multi-index search. 19 | - ✅ Great DX with full TS support 20 | - ✅ 9 slots to customize every part you need 21 | - ✅ Animate it as you wish 22 | - ✅ Keyboard shortcut and navigation 23 | - ✅ Accessible 24 | 25 | # [DOCUMENTATION & EXAMPLES](https://svelte-spotlight.vercel.app) 26 | -------------------------------------------------------------------------------- /documentation/.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 | -------------------------------------------------------------------------------- /documentation/.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | parser: '@typescript-eslint/parser', 4 | extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'prettier'], 5 | plugins: ['svelte3', '@typescript-eslint'], 6 | ignorePatterns: ['*.cjs'], 7 | overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }], 8 | settings: { 9 | 'svelte3/typescript': () => require('typescript') 10 | }, 11 | parserOptions: { 12 | sourceType: 'module', 13 | ecmaVersion: 2020 14 | }, 15 | env: { 16 | browser: true, 17 | es2017: true, 18 | node: true 19 | } 20 | }; 21 | -------------------------------------------------------------------------------- /documentation/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /build 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | .vercel 10 | -------------------------------------------------------------------------------- /documentation/.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /documentation/.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 | -------------------------------------------------------------------------------- /documentation/.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 | -------------------------------------------------------------------------------- /documentation/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 | -------------------------------------------------------------------------------- /documentation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "documentation", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "dev": "vite dev", 7 | "build": "vite build", 8 | "preview": "vite preview", 9 | "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", 10 | "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", 11 | "lint": "prettier --plugin-search-dir . --check . && eslint .", 12 | "format": "prettier --plugin-search-dir . --write ." 13 | }, 14 | "devDependencies": { 15 | "@sveltejs/adapter-auto": "^2.0.1", 16 | "@sveltejs/kit": "^1.22.3", 17 | "@typescript-eslint/eslint-plugin": "^5.27.0", 18 | "@typescript-eslint/parser": "^5.27.0", 19 | "eslint": "^8.16.0", 20 | "eslint-config-prettier": "^8.3.0", 21 | "eslint-plugin-svelte3": "^4.0.0", 22 | "prettier": "^2.6.2", 23 | "prettier-plugin-svelte": "^3.0.3", 24 | "svelte": "^4.1.1", 25 | "svelte-check": "^3.4.6", 26 | "svelte-preprocess": "^5.0.4", 27 | "svelte-spotlight": "workspace:*", 28 | "tslib": "^2.3.1", 29 | "typescript": "^5.1.6", 30 | "vite": "^4.4.7" 31 | }, 32 | "type": "module", 33 | "dependencies": { 34 | "@algolia/client-search": "^4.14.2", 35 | "@fontsource/fira-mono": "^4.5.10", 36 | "@sveltejs/adapter-cloudflare": "^2.3.1", 37 | "@sveltejs/package": "^2.2.0", 38 | "algoliasearch": "^4.14.2", 39 | "autoprefixer": "^10.4.12", 40 | "daisyui": "^2.31.0", 41 | "match-sorter": "^6.3.1", 42 | "phosphor-svelte": "^1.2.1", 43 | "postcss": "^8.4.18", 44 | "prism-svelte": "^0.5.0", 45 | "prismjs": "^1.29.0", 46 | "svelte-icons": "^2.1.0", 47 | "svelte-themes": "^1.0.10", 48 | "tailwindcss": "^3.1.8", 49 | "type-fest": "^2.12.2" 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /documentation/postcss.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: [require('tailwindcss'), require('autoprefixer')] 3 | }; 4 | -------------------------------------------------------------------------------- /documentation/src/app.css: -------------------------------------------------------------------------------- 1 | @import '@fontsource/fira-mono'; 2 | @tailwind base; 3 | @tailwind components; 4 | @tailwind utilities; 5 | 6 | :root { 7 | font-family: Arial, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, 8 | Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; 9 | --font-mono: 'Fira Mono', monospace; 10 | --pure-white: #ffffff; 11 | --primary-color: #b9c6d2; 12 | --secondary-color: #d0dde9; 13 | --tertiary-color: #edf0f8; 14 | --accent-color: #ff3e00; 15 | --heading-color: rgba(0, 0, 0, 0.7); 16 | --text-color: #444444; 17 | --background-without-opacity: rgba(255, 255, 255, 0.7); 18 | --column-width: 42rem; 19 | --column-margin-top: 4rem; 20 | } 21 | 22 | html { 23 | scroll-behavior: smooth; 24 | scroll-padding-top: 100px; 25 | } 26 | body { 27 | min-height: 100vh; 28 | margin: 0; 29 | } 30 | 31 | body::before { 32 | content: ''; 33 | width: 80vw; 34 | height: 100vh; 35 | position: absolute; 36 | top: 0; 37 | left: 10vw; 38 | z-index: -1; 39 | 40 | opacity: 0.05; 41 | } 42 | 43 | #svelte { 44 | min-height: 100vh; 45 | display: flex; 46 | flex-direction: column; 47 | } 48 | 49 | h1, 50 | h2, 51 | p { 52 | font-weight: 400; 53 | } 54 | 55 | p { 56 | line-height: 1; 57 | } 58 | 59 | a { 60 | text-decoration: none; 61 | } 62 | 63 | pre { 64 | font-size: 16px; 65 | font-family: var(--font-mono); 66 | background-color: rgba(255, 255, 255, 0.45); 67 | border-radius: 3px; 68 | box-shadow: 2px 2px 6px rgb(255 255 255 / 25%); 69 | padding: 0.5em; 70 | overflow-x: auto; 71 | color: var(--text-color); 72 | } 73 | 74 | input, 75 | button { 76 | font-size: inherit; 77 | font-family: inherit; 78 | } 79 | 80 | button:focus:not(:focus-visible) { 81 | outline: none; 82 | } 83 | 84 | @media (min-width: 720px) { 85 | h1 { 86 | font-size: 2.4rem; 87 | } 88 | } 89 | 90 | .sl-content.pokedex ul { 91 | @apply grid grid-cols-2 lg:grid-cols-3; 92 | } 93 | 94 | .anatomy-part { 95 | @apply rounded-lg border-[1px] border-dashed border-base-content p-3 w-full; 96 | } 97 | code.class { 98 | @apply rounded-sm text-xs px-2 py-1 align-middle bg-secondary text-white; 99 | } 100 | 101 | code.props { 102 | @apply rounded-sm text-xs px-2 py-1 align-middle bg-primary text-white; 103 | } 104 | code.props, 105 | code.class { 106 | animation: fadeIn 200ms; 107 | } 108 | @keyframes fadeIn { 109 | 0% { 110 | opacity: 0; 111 | } 112 | 100% { 113 | opacity: 1; 114 | } 115 | } 116 | 117 | h2 { 118 | @apply text-5xl font-bold mt-20 mb-4 text-base-content; 119 | } 120 | 121 | h3 { 122 | @apply text-3xl font-bold mt-10 mb-4; 123 | } 124 | 125 | code[class*='language-'], 126 | pre[class*='language-'] { 127 | color: #9efeff; 128 | direction: ltr; 129 | text-align: left; 130 | white-space: pre; 131 | word-spacing: normal; 132 | word-break: normal; 133 | 134 | -moz-tab-size: 4; 135 | -o-tab-size: 4; 136 | tab-size: 4; 137 | 138 | -webkit-hyphens: none; 139 | -moz-hyphens: none; 140 | -ms-hyphens: none; 141 | hyphens: none; 142 | 143 | font-family: 'Operator Mono', 'Fira Code', Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', 144 | monospace; 145 | font-weight: 400; 146 | font-size: 12px; 147 | line-height: 20px; 148 | letter-spacing: 0.5px; 149 | text-shadow: 0 1px #222245; 150 | } 151 | 152 | pre[class*='language-']::-moz-selection, 153 | pre[class*='language-'] ::-moz-selection, 154 | code[class*='language-']::-moz-selection, 155 | code[class*='language-'] ::-moz-selection, 156 | pre[class*='language-']::selection, 157 | pre[class*='language-'] ::selection, 158 | code[class*='language-']::selection, 159 | code[class*='language-'] ::selection { 160 | color: inherit; 161 | background: #a599e9; 162 | } 163 | 164 | /* Code blocks. */ 165 | pre[class*='language-'] { 166 | padding: 2em; 167 | margin: 0.5em 0; 168 | overflow: auto; 169 | } 170 | 171 | :not(pre) > code[class*='language-'], 172 | pre[class*='language-'] { 173 | background: #1e1e3f; 174 | } 175 | 176 | /* Inline code */ 177 | :not(pre) > code[class*='language-'] { 178 | padding: 0.1em; 179 | border-radius: 0.3em; 180 | } 181 | 182 | .token { 183 | font-weight: 400; 184 | } 185 | 186 | .token.comment, 187 | .token.prolog, 188 | .token.cdata { 189 | color: #b362ff; 190 | } 191 | 192 | .token.delimiter, 193 | .token.keyword, 194 | .token.selector, 195 | .token.important, 196 | .token.atrule { 197 | color: #ff9d00; 198 | } 199 | 200 | .token.operator, 201 | .token.attr-name { 202 | color: rgb(255, 180, 84); 203 | } 204 | 205 | .token.punctuation { 206 | color: #ffffff; 207 | } 208 | 209 | .token.boolean { 210 | color: rgb(255, 98, 140); 211 | } 212 | 213 | .token.tag, 214 | .token.tag .punctuation, 215 | .token.doctype, 216 | .token.builtin { 217 | color: rgb(255, 157, 0); 218 | } 219 | 220 | .token.entity, 221 | .token.symbol { 222 | color: #6897bb; 223 | } 224 | 225 | .token.number { 226 | color: #ff628c; 227 | } 228 | 229 | .token.property, 230 | .token.constant, 231 | .token.variable { 232 | color: #ff628c; 233 | } 234 | 235 | .token.string, 236 | .token.char { 237 | color: #a5ff90; 238 | } 239 | 240 | .token.attr-value, 241 | .token.attr-value .punctuation { 242 | color: #a5c261; 243 | } 244 | 245 | .token.attr-value .punctuation:first-child { 246 | color: #a9b7c6; 247 | } 248 | 249 | .token.url { 250 | color: #287bde; 251 | text-decoration: underline; 252 | } 253 | 254 | .token.function { 255 | color: rgb(250, 208, 0); 256 | } 257 | 258 | .token.regex { 259 | background: #364135; 260 | } 261 | 262 | .token.bold { 263 | font-weight: bold; 264 | } 265 | 266 | .token.italic { 267 | font-style: italic; 268 | } 269 | 270 | .token.inserted { 271 | background: #00ff00; 272 | } 273 | 274 | .token.deleted { 275 | background: #ff000d; 276 | } 277 | 278 | code.language-css .token.property, 279 | code.language-css .token.property + .token.punctuation { 280 | color: #a9b7c6; 281 | } 282 | 283 | code.language-css .token.id { 284 | color: #ffc66d; 285 | } 286 | 287 | code.language-css .token.selector > .token.class, 288 | code.language-css .token.selector > .token.attribute, 289 | code.language-css .token.selector > .token.pseudo-class, 290 | code.language-css .token.selector > .token.pseudo-element { 291 | color: #ffc66d; 292 | } 293 | 294 | .token.class-name { 295 | color: #fb94ff; 296 | } 297 | 298 | .token.operator, 299 | .token.entity, 300 | .token.url, 301 | .language-css .token.string, 302 | .style .token.string { 303 | background: none; 304 | } 305 | 306 | .line-highlight.line-highlight { 307 | margin-top: 36px; 308 | background: linear-gradient(to right, rgba(179, 98, 255, 0.17), transparent); 309 | } 310 | 311 | .line-highlight.line-highlight:before, 312 | .line-highlight.line-highlight[data-end]:after { 313 | content: ''; 314 | } 315 | -------------------------------------------------------------------------------- /documentation/src/app.d.ts: -------------------------------------------------------------------------------- 1 | // See https://kit.svelte.dev/docs/types#app 2 | // for information about these interfaces 3 | // and what to do when importing types 4 | declare namespace App { 5 | // interface Locals {} 6 | // interface PageData {} 7 | // interface Error {} 8 | // interface Platform {} 9 | } 10 | -------------------------------------------------------------------------------- /documentation/src/app.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | %sveltekit.head% 9 | 10 | 11 |
%sveltekit.body%
12 | 13 | 14 | -------------------------------------------------------------------------------- /documentation/src/components/AlgoliaLogo.svelte: -------------------------------------------------------------------------------- 1 |
2 | Search by 17 |
18 | -------------------------------------------------------------------------------- /documentation/src/components/Anatomy/Anatomy.svelte: -------------------------------------------------------------------------------- 1 | 35 | 36 |

Anatomy

37 | 38 |
39 | {#each tabs as tab} 40 |
(currentTab = tab)} 42 | class={`tab ${currentTab.tab === tab.tab ? 'tab-active' : ''}`} 43 | > 44 | {tab.tab} 45 |
46 | {/each} 47 |
48 | 49 |

50 | {currentTab.text} 51 |

52 | 53 |
54 | 55 |
56 | -------------------------------------------------------------------------------- /documentation/src/components/Anatomy/Classes.svelte: -------------------------------------------------------------------------------- 1 |
2 | .sl-overlay overlayClass 3 |
4 | 5 |
6 | .sl-modal modalClass 7 |
8 |
9 | .sl-header headerClass 10 |
11 |
Header left
12 |
13 | .sl-input inputClass 14 |
15 |
Header right
16 |
17 |
18 |
19 | .sl-content contentClass 20 |
21 |
Content top
22 |
23 |
24 | .sl-results 25 | resultsClass 26 |
27 | 28 |
29 |
.sl-results-list
30 |
Group header
31 |
.sl-results-item
32 |
33 |
34 |
Side panel
35 |
Content bottom
36 |
37 |
38 |
39 | .sl-footer footerClass 40 |
41 |
42 |
43 | -------------------------------------------------------------------------------- /documentation/src/components/Anatomy/DynamicSlots.svelte: -------------------------------------------------------------------------------- 1 |
Overlay
2 |
3 |
Modal
4 |
5 |
Header
6 |
Header left
7 |
8 | headerCenterComponent 9 |
10 |
Header right
11 |
12 |
13 |
contentComponent
14 |
Content top
15 |
16 |
Results
17 |
18 |
Group
19 |
Group header
20 |
Result
21 |
22 |
23 |
Side panel
24 |
Content bottom
25 |
26 |
27 |
Footer
28 |
29 |
30 | -------------------------------------------------------------------------------- /documentation/src/components/Anatomy/Slots.svelte: -------------------------------------------------------------------------------- 1 |
Overlay
2 |
3 |
Modal
4 |
5 |
Header
6 |
7 | headerLeft 8 |
9 |
Input
10 |
11 | headerRight 12 |
13 |
14 |
15 |
Content
16 |
17 | contentTop 18 |
19 |
20 |
Results
21 | 22 |
23 |
Group
24 |
groupHeader
25 |
result
26 |
27 |
28 |
sidePanel
29 |
30 | contentBottom 31 |
32 |
33 |
34 |
footer
35 |
36 |
37 | -------------------------------------------------------------------------------- /documentation/src/components/Anatomy/Structure.svelte: -------------------------------------------------------------------------------- 1 |
Overlay
2 |
3 | Modal 4 |
5 |
Header
6 |
Header left
7 |
Input
8 |
Header right
9 |
10 |
11 |
Content
12 |
Content top
13 |
14 |
Results
15 |
16 |
Group
17 |
Group header
18 |
Result
19 |
20 |
21 |
Side panel
22 |
Content bottom
23 |
24 |
25 |
Footer
26 |
27 |
28 | -------------------------------------------------------------------------------- /documentation/src/components/Examples/Examples.svelte: -------------------------------------------------------------------------------- 1 | 19 | 20 |

Basic example

21 |
22 | {#each tabs as tab} 23 |
(currentTab = tab)} 25 | class={`tab ${currentTab.tab === tab.tab ? 'tab-active' : ''}`} 26 | > 27 | {tab.tab} 28 |
29 | {/each} 30 |
31 |
32 | 33 | {@html Prism.highlight(currentTab.code, Prism.languages.svelte, 'svelte')} 34 | 35 |
36 | 37 | 43 | -------------------------------------------------------------------------------- /documentation/src/components/Examples/example.ts: -------------------------------------------------------------------------------- 1 | export const tailwind = ` 25 | 26 | { 34 | // DO stuff 35 | }} 36 | > 37 |
38 | {result.title} 39 |

{result.description}

40 |
41 | 42 |
43 | No results... 44 |
45 |
`; 46 | export const css = ` 70 | 71 | { 76 | // DO stuff 77 | }} 78 | > 79 |
80 | {result.title} 81 |

{result.description}

82 |
83 | 84 |
85 | No results... 86 |
87 |
88 | 89 | `; 148 | -------------------------------------------------------------------------------- /documentation/src/components/Navigation.svelte: -------------------------------------------------------------------------------- 1 | 10 | 11 |
12 |
13 |

Svelte spotlight

14 | 15 |
16 |
17 | {#each links as link} 18 | 22 | 23 | {/each} 24 |
25 |
26 | 32 |
33 |
34 | 40 |
41 |
42 | 43 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/Pokedex.svelte: -------------------------------------------------------------------------------- 1 | 46 | 47 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 92 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonContent.svelte: -------------------------------------------------------------------------------- 1 | 5 | 6 |
7 | {selectedResult.ThumbnailAltText} 12 |
13 |
14 |
Weight
15 |
{selectedResult.weight}
16 |
17 | 18 |
19 |
Height
20 |
{selectedResult.height}
21 |
22 |
23 |
24 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonEmptySearch.svelte: -------------------------------------------------------------------------------- 1 |
2 |

Multi index Pokemon search

3 |

Try searching for "Bulbasaur"

4 |
5 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonFooter.svelte: -------------------------------------------------------------------------------- 1 | 5 | 6 | {#if selectedResult} 7 |
8 | {:else} 9 |
10 | 11 | 15 |
16 | {/if} 17 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonGroup.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 |
6 | {group.index} 7 |
8 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonHeaderCenter.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 |
{selectedResult?.name}
6 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonHeaderLeft.svelte: -------------------------------------------------------------------------------- 1 | 7 | 8 | 22 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonHeaderRight.svelte: -------------------------------------------------------------------------------- 1 | 6 | 7 |
8 | {#if query.length && !selectedResult} 9 | 12 | {/if} 13 | 14 | 17 |
18 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonItem.svelte: -------------------------------------------------------------------------------- 1 | 5 | 6 |
11 | {result.ThumbnailAltText} 12 |
13 |

14 | #{result.id} 15 | {result.name} 16 |

17 | {#each result.type as type} 18 | {type} 19 | {/each} 20 |
21 |
22 | 23 | 79 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/PokemonNoResult.svelte: -------------------------------------------------------------------------------- 1 |
2 |

No results found

3 |

4 | We can’t find anything with that term at the moment, try searching something else. 5 |

6 |
7 | -------------------------------------------------------------------------------- /documentation/src/components/Pokemon/algoliaType.ts: -------------------------------------------------------------------------------- 1 | export type IndexHit = { index: string; hits: Hit[] } & Record; 2 | 3 | export type Hit = { name: string; objectID: string }; 4 | -------------------------------------------------------------------------------- /documentation/src/components/Props/Props.svelte: -------------------------------------------------------------------------------- 1 | 197 | 198 |

Props

199 | 200 | -------------------------------------------------------------------------------- /documentation/src/components/SideMenu.svelte: -------------------------------------------------------------------------------- 1 | 10 | 11 | 17 | 18 | {#key isOpen} 19 | {#if isOpen} 20 | 21 |
26 | 27 | 34 | {/if} 35 | {/key} 36 | -------------------------------------------------------------------------------- /documentation/src/components/Simple/Simple.svelte: -------------------------------------------------------------------------------- 1 | 37 | 38 | { 52 | window.location.hash = event.detail.title.toLowerCase(); 53 | isOpen = false; 54 | }} 55 | > 56 |
65 | {result.title} 66 |

{result.description}

67 |
68 | 69 |
70 |

No results...

71 |
72 |
73 | -------------------------------------------------------------------------------- /documentation/src/components/Slots/Slots.svelte: -------------------------------------------------------------------------------- 1 | 116 | 117 |

Slots

118 |
119 | -------------------------------------------------------------------------------- /documentation/src/components/StickyBottom.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | 12 | 13 | View on github 14 | 15 | -------------------------------------------------------------------------------- /documentation/src/components/Table.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 | {#each group as { group, props, keys, description }} 6 | {#if group !== 'default'} 7 |

{group}

8 | {#if description} 9 |

{description}

10 | {/if} 11 | {/if} 12 | 13 | {#if props.length} 14 |
15 |
16 | 17 | 18 | 19 | {#each keys as key} 20 | 21 | {/each} 22 | 23 | 24 | 25 | {#each props as props} 26 | 27 | 28 | {#each keys as key} 29 | 30 | {/each} 31 | 32 | {/each} 33 | 34 |
Name{key}
{props.name} {props[key]}
35 |
36 | {/if} 37 | {/each} 38 | 39 | 48 | -------------------------------------------------------------------------------- /documentation/src/components/ThemeSwitch.svelte: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 27 | -------------------------------------------------------------------------------- /documentation/src/routes/+layout.svelte: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 22 |
23 | 24 |
25 |
26 | -------------------------------------------------------------------------------- /documentation/src/routes/+page.svelte: -------------------------------------------------------------------------------- 1 | 20 | 21 |
22 |

Svelte-spotlight

23 |

Headless spotlight component for Svelte

24 |

Build your site global search box in minutes

25 |
26 | npm i svelte-spotlight 27 |
28 |
29 | pnpm add svelte-spotlight 30 |
31 |
32 | yarn add svelte-spotlight 33 |
34 |
    35 |
  • Bring your own style, completely headless. Svelte-spotlight only handle the layout.
  • 36 |
  • Search method agnostic, local or asynchronous.
  • 37 |
  • 38 | Data agnostic, render flat lists or grouped results. Integrate perfectly with Algolia 39 | multi-index search. 40 |
  • 41 |
  • Great DX with full TS support
  • 42 |
  • 9 slots to customize every part you need
  • 43 |
  • Animate it as you wish
  • 44 |
  • Keyboard shortcut and navigation
  • 45 |
  • Accessible (but can be better)
  • 46 |
  • No dependencies
  • 47 |
48 | 49 | 50 | 51 | 52 |
53 | 54 | 62 | -------------------------------------------------------------------------------- /documentation/static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beynar/svelte-spotlight/f3f13ff95bcf9c870f177ea08934f8313f0beea8/documentation/static/favicon.png -------------------------------------------------------------------------------- /documentation/svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from '@sveltejs/adapter-auto'; 2 | import preprocess from 'svelte-preprocess'; 3 | 4 | /** @type {import('@sveltejs/kit').Config} */ 5 | const config = { 6 | // Consult https://github.com/sveltejs/svelte-preprocess 7 | // for more information about preprocessors 8 | preprocess: preprocess(), 9 | 10 | kit: { 11 | adapter: adapter() 12 | } 13 | }; 14 | 15 | export default config; 16 | -------------------------------------------------------------------------------- /documentation/tailwind.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | content: ['./src/**/*.{html,js,svelte,ts}'], 3 | theme: { 4 | extend: {} 5 | }, 6 | darkMode: 'class', 7 | plugins: [require('daisyui')], 8 | daisyui: { 9 | themes: ['dark', 'light'] 10 | } 11 | }; 12 | -------------------------------------------------------------------------------- /documentation/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./.svelte-kit/tsconfig.json", 3 | "compilerOptions": { 4 | "allowJs": true, 5 | "checkJs": true, 6 | "esModuleInterop": true, 7 | "forceConsistentCasingInFileNames": true, 8 | "resolveJsonModule": true, 9 | "skipLibCheck": true, 10 | "sourceMap": true, 11 | "strict": true 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /documentation/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { sveltekit } from '@sveltejs/kit/vite'; 2 | import type { UserConfig } from 'vite'; 3 | 4 | const config: UserConfig = { 5 | plugins: [sveltekit()] 6 | }; 7 | 8 | export default config; 9 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "dev:doc": "pnpm run dev --filter documentation", 4 | "package": "pnpm run package --filter svelte-spotlight", 5 | "publish": "cd svelte-spotlight/package && npm publish", 6 | "build": "pnpm run build --filter documentation", 7 | "copy:readme": "cp ./svelte-spotlight/README.md README.md", 8 | "deploy": "vercel --prod" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | importers: 4 | 5 | .: {} 6 | 7 | documentation: 8 | dependencies: 9 | '@algolia/client-search': 10 | specifier: ^4.14.2 11 | version: 4.14.2 12 | '@fontsource/fira-mono': 13 | specifier: ^4.5.10 14 | version: 4.5.10 15 | '@sveltejs/adapter-cloudflare': 16 | specifier: ^2.3.1 17 | version: 2.3.1(@sveltejs/kit@1.22.3) 18 | '@sveltejs/package': 19 | specifier: ^2.2.0 20 | version: 2.2.0(svelte@4.1.1)(typescript@5.1.6) 21 | algoliasearch: 22 | specifier: ^4.14.2 23 | version: 4.14.2 24 | autoprefixer: 25 | specifier: ^10.4.12 26 | version: 10.4.12(postcss@8.4.18) 27 | daisyui: 28 | specifier: ^2.31.0 29 | version: 2.31.0(autoprefixer@10.4.12)(postcss@8.4.18) 30 | match-sorter: 31 | specifier: ^6.3.1 32 | version: 6.3.1 33 | phosphor-svelte: 34 | specifier: ^1.2.1 35 | version: 1.2.1(svelte@4.1.1) 36 | postcss: 37 | specifier: ^8.4.18 38 | version: 8.4.18 39 | prism-svelte: 40 | specifier: ^0.5.0 41 | version: 0.5.0 42 | prismjs: 43 | specifier: ^1.29.0 44 | version: 1.29.0 45 | svelte-icons: 46 | specifier: ^2.1.0 47 | version: 2.1.0 48 | svelte-themes: 49 | specifier: ^1.0.10 50 | version: 1.0.10 51 | tailwindcss: 52 | specifier: ^3.1.8 53 | version: 3.1.8(postcss@8.4.18) 54 | type-fest: 55 | specifier: ^2.12.2 56 | version: 2.12.2 57 | devDependencies: 58 | '@sveltejs/adapter-auto': 59 | specifier: ^2.0.1 60 | version: 2.0.1(@sveltejs/kit@1.22.3) 61 | '@sveltejs/kit': 62 | specifier: ^1.22.3 63 | version: 1.22.3(svelte@4.1.1)(vite@4.4.7) 64 | '@typescript-eslint/eslint-plugin': 65 | specifier: ^5.27.0 66 | version: 5.40.0(@typescript-eslint/parser@5.40.0)(eslint@8.25.0)(typescript@5.1.6) 67 | '@typescript-eslint/parser': 68 | specifier: ^5.27.0 69 | version: 5.40.0(eslint@8.25.0)(typescript@5.1.6) 70 | eslint: 71 | specifier: ^8.16.0 72 | version: 8.25.0 73 | eslint-config-prettier: 74 | specifier: ^8.3.0 75 | version: 8.5.0(eslint@8.25.0) 76 | eslint-plugin-svelte3: 77 | specifier: ^4.0.0 78 | version: 4.0.0(eslint@8.25.0)(svelte@4.1.1) 79 | prettier: 80 | specifier: ^2.6.2 81 | version: 2.6.2 82 | prettier-plugin-svelte: 83 | specifier: ^3.0.3 84 | version: 3.0.3(prettier@2.6.2)(svelte@4.1.1) 85 | svelte: 86 | specifier: ^4.1.1 87 | version: 4.1.1 88 | svelte-check: 89 | specifier: ^3.4.6 90 | version: 3.4.6(postcss@8.4.18)(svelte@4.1.1) 91 | svelte-preprocess: 92 | specifier: ^5.0.4 93 | version: 5.0.4(postcss@8.4.18)(svelte@4.1.1)(typescript@5.1.6) 94 | svelte-spotlight: 95 | specifier: workspace:* 96 | version: link:../svelte-spotlight 97 | tslib: 98 | specifier: ^2.3.1 99 | version: 2.3.1 100 | typescript: 101 | specifier: ^5.1.6 102 | version: 5.1.6 103 | vite: 104 | specifier: ^4.4.7 105 | version: 4.4.7 106 | 107 | svelte-spotlight: 108 | devDependencies: 109 | '@sveltejs/adapter-auto': 110 | specifier: ^2.1.0 111 | version: 2.1.0(@sveltejs/kit@1.22.3) 112 | '@sveltejs/adapter-cloudflare': 113 | specifier: ^2.2.0 114 | version: 2.2.0(@sveltejs/kit@1.22.3) 115 | '@sveltejs/kit': 116 | specifier: ^1.22.3 117 | version: 1.22.3(svelte@4.1.1)(vite@4.4.7) 118 | '@sveltejs/package': 119 | specifier: ^2.2.0 120 | version: 2.2.0(svelte@4.1.1)(typescript@5.1.6) 121 | '@typescript-eslint/eslint-plugin': 122 | specifier: ^5.27.0 123 | version: 5.40.0(@typescript-eslint/parser@5.40.0)(eslint@8.25.0)(typescript@5.1.6) 124 | '@typescript-eslint/parser': 125 | specifier: ^5.27.0 126 | version: 5.40.0(eslint@8.25.0)(typescript@5.1.6) 127 | eslint: 128 | specifier: ^8.16.0 129 | version: 8.25.0 130 | eslint-config-prettier: 131 | specifier: ^8.3.0 132 | version: 8.5.0(eslint@8.25.0) 133 | eslint-plugin-svelte3: 134 | specifier: ^4.0.0 135 | version: 4.0.0(eslint@8.25.0)(svelte@4.1.1) 136 | esm-env: 137 | specifier: ^1.0.0 138 | version: 1.0.0 139 | prettier: 140 | specifier: ^3.0.0 141 | version: 3.0.0 142 | prettier-plugin-svelte: 143 | specifier: ^3.0.3 144 | version: 3.0.3(prettier@3.0.0)(svelte@4.1.1) 145 | svelte: 146 | specifier: ^4.1.1 147 | version: 4.1.1 148 | svelte-check: 149 | specifier: ^3.4.6 150 | version: 3.4.6(postcss@8.4.18)(svelte@4.1.1) 151 | svelte-preprocess: 152 | specifier: ^5.0.4 153 | version: 5.0.4(postcss@8.4.18)(svelte@4.1.1)(typescript@5.1.6) 154 | tslib: 155 | specifier: ^2.3.1 156 | version: 2.3.1 157 | type-fest: 158 | specifier: ^2.12.2 159 | version: 2.12.2 160 | typescript: 161 | specifier: ^5.1.6 162 | version: 5.1.6 163 | vite: 164 | specifier: ^4.4.7 165 | version: 4.4.7 166 | 167 | packages: 168 | 169 | /@algolia/cache-browser-local-storage@4.14.2: 170 | resolution: {integrity: sha512-FRweBkK/ywO+GKYfAWbrepewQsPTIEirhi1BdykX9mxvBPtGNKccYAxvGdDCumU1jL4r3cayio4psfzKMejBlA==} 171 | dependencies: 172 | '@algolia/cache-common': 4.14.2 173 | dev: false 174 | 175 | /@algolia/cache-common@4.14.2: 176 | resolution: {integrity: sha512-SbvAlG9VqNanCErr44q6lEKD2qoK4XtFNx9Qn8FK26ePCI8I9yU7pYB+eM/cZdS9SzQCRJBbHUumVr4bsQ4uxg==} 177 | dev: false 178 | 179 | /@algolia/cache-in-memory@4.14.2: 180 | resolution: {integrity: sha512-HrOukWoop9XB/VFojPv1R5SVXowgI56T9pmezd/djh2JnVN/vXswhXV51RKy4nCpqxyHt/aGFSq2qkDvj6KiuQ==} 181 | dependencies: 182 | '@algolia/cache-common': 4.14.2 183 | dev: false 184 | 185 | /@algolia/client-account@4.14.2: 186 | resolution: {integrity: sha512-WHtriQqGyibbb/Rx71YY43T0cXqyelEU0lB2QMBRXvD2X0iyeGl4qMxocgEIcbHyK7uqE7hKgjT8aBrHqhgc1w==} 187 | dependencies: 188 | '@algolia/client-common': 4.14.2 189 | '@algolia/client-search': 4.14.2 190 | '@algolia/transporter': 4.14.2 191 | dev: false 192 | 193 | /@algolia/client-analytics@4.14.2: 194 | resolution: {integrity: sha512-yBvBv2mw+HX5a+aeR0dkvUbFZsiC4FKSnfqk9rrfX+QrlNOKEhCG0tJzjiOggRW4EcNqRmaTULIYvIzQVL2KYQ==} 195 | dependencies: 196 | '@algolia/client-common': 4.14.2 197 | '@algolia/client-search': 4.14.2 198 | '@algolia/requester-common': 4.14.2 199 | '@algolia/transporter': 4.14.2 200 | dev: false 201 | 202 | /@algolia/client-common@4.14.2: 203 | resolution: {integrity: sha512-43o4fslNLcktgtDMVaT5XwlzsDPzlqvqesRi4MjQz2x4/Sxm7zYg5LRYFol1BIhG6EwxKvSUq8HcC/KxJu3J0Q==} 204 | dependencies: 205 | '@algolia/requester-common': 4.14.2 206 | '@algolia/transporter': 4.14.2 207 | dev: false 208 | 209 | /@algolia/client-personalization@4.14.2: 210 | resolution: {integrity: sha512-ACCoLi0cL8CBZ1W/2juehSltrw2iqsQBnfiu/Rbl9W2yE6o2ZUb97+sqN/jBqYNQBS+o0ekTMKNkQjHHAcEXNw==} 211 | dependencies: 212 | '@algolia/client-common': 4.14.2 213 | '@algolia/requester-common': 4.14.2 214 | '@algolia/transporter': 4.14.2 215 | dev: false 216 | 217 | /@algolia/client-search@4.14.2: 218 | resolution: {integrity: sha512-L5zScdOmcZ6NGiVbLKTvP02UbxZ0njd5Vq9nJAmPFtjffUSOGEp11BmD2oMJ5QvARgx2XbX4KzTTNS5ECYIMWw==} 219 | dependencies: 220 | '@algolia/client-common': 4.14.2 221 | '@algolia/requester-common': 4.14.2 222 | '@algolia/transporter': 4.14.2 223 | dev: false 224 | 225 | /@algolia/logger-common@4.14.2: 226 | resolution: {integrity: sha512-/JGlYvdV++IcMHBnVFsqEisTiOeEr6cUJtpjz8zc0A9c31JrtLm318Njc72p14Pnkw3A/5lHHh+QxpJ6WFTmsA==} 227 | dev: false 228 | 229 | /@algolia/logger-console@4.14.2: 230 | resolution: {integrity: sha512-8S2PlpdshbkwlLCSAB5f8c91xyc84VM9Ar9EdfE9UmX+NrKNYnWR1maXXVDQQoto07G1Ol/tYFnFVhUZq0xV/g==} 231 | dependencies: 232 | '@algolia/logger-common': 4.14.2 233 | dev: false 234 | 235 | /@algolia/requester-browser-xhr@4.14.2: 236 | resolution: {integrity: sha512-CEh//xYz/WfxHFh7pcMjQNWgpl4wFB85lUMRyVwaDPibNzQRVcV33YS+63fShFWc2+42YEipFGH2iPzlpszmDw==} 237 | dependencies: 238 | '@algolia/requester-common': 4.14.2 239 | dev: false 240 | 241 | /@algolia/requester-common@4.14.2: 242 | resolution: {integrity: sha512-73YQsBOKa5fvVV3My7iZHu1sUqmjjfs9TteFWwPwDmnad7T0VTCopttcsM3OjLxZFtBnX61Xxl2T2gmG2O4ehg==} 243 | dev: false 244 | 245 | /@algolia/requester-node-http@4.14.2: 246 | resolution: {integrity: sha512-oDbb02kd1o5GTEld4pETlPZLY0e+gOSWjWMJHWTgDXbv9rm/o2cF7japO6Vj1ENnrqWvLBmW1OzV9g6FUFhFXg==} 247 | dependencies: 248 | '@algolia/requester-common': 4.14.2 249 | dev: false 250 | 251 | /@algolia/transporter@4.14.2: 252 | resolution: {integrity: sha512-t89dfQb2T9MFQHidjHcfhh6iGMNwvuKUvojAj+JsrHAGbuSy7yE4BylhLX6R0Q1xYRoC4Vvv+O5qIw/LdnQfsQ==} 253 | dependencies: 254 | '@algolia/cache-common': 4.14.2 255 | '@algolia/logger-common': 4.14.2 256 | '@algolia/requester-common': 4.14.2 257 | dev: false 258 | 259 | /@ampproject/remapping@2.2.1: 260 | resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} 261 | engines: {node: '>=6.0.0'} 262 | dependencies: 263 | '@jridgewell/gen-mapping': 0.3.3 264 | '@jridgewell/trace-mapping': 0.3.18 265 | 266 | /@babel/runtime@7.19.4: 267 | resolution: {integrity: sha512-EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA==} 268 | engines: {node: '>=6.9.0'} 269 | dependencies: 270 | regenerator-runtime: 0.13.10 271 | dev: false 272 | 273 | /@cloudflare/workers-types@4.20230404.0: 274 | resolution: {integrity: sha512-fG3oaJX1icfsGV74nhx1+AC6opvZsGqnpx6FvrcVqQaBmCNkjKNqDRFrpasXWFiOIvysBXHKQAzsAJkBZgnM+A==} 275 | 276 | /@esbuild/android-arm64@0.16.17: 277 | resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==} 278 | engines: {node: '>=12'} 279 | cpu: [arm64] 280 | os: [android] 281 | requiresBuild: true 282 | dev: true 283 | optional: true 284 | 285 | /@esbuild/android-arm64@0.18.17: 286 | resolution: {integrity: sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==} 287 | engines: {node: '>=12'} 288 | cpu: [arm64] 289 | os: [android] 290 | requiresBuild: true 291 | optional: true 292 | 293 | /@esbuild/android-arm@0.16.17: 294 | resolution: {integrity: sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==} 295 | engines: {node: '>=12'} 296 | cpu: [arm] 297 | os: [android] 298 | requiresBuild: true 299 | dev: true 300 | optional: true 301 | 302 | /@esbuild/android-arm@0.18.17: 303 | resolution: {integrity: sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==} 304 | engines: {node: '>=12'} 305 | cpu: [arm] 306 | os: [android] 307 | requiresBuild: true 308 | optional: true 309 | 310 | /@esbuild/android-x64@0.16.17: 311 | resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==} 312 | engines: {node: '>=12'} 313 | cpu: [x64] 314 | os: [android] 315 | requiresBuild: true 316 | dev: true 317 | optional: true 318 | 319 | /@esbuild/android-x64@0.18.17: 320 | resolution: {integrity: sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==} 321 | engines: {node: '>=12'} 322 | cpu: [x64] 323 | os: [android] 324 | requiresBuild: true 325 | optional: true 326 | 327 | /@esbuild/darwin-arm64@0.16.17: 328 | resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==} 329 | engines: {node: '>=12'} 330 | cpu: [arm64] 331 | os: [darwin] 332 | requiresBuild: true 333 | dev: true 334 | optional: true 335 | 336 | /@esbuild/darwin-arm64@0.18.17: 337 | resolution: {integrity: sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==} 338 | engines: {node: '>=12'} 339 | cpu: [arm64] 340 | os: [darwin] 341 | requiresBuild: true 342 | optional: true 343 | 344 | /@esbuild/darwin-x64@0.16.17: 345 | resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==} 346 | engines: {node: '>=12'} 347 | cpu: [x64] 348 | os: [darwin] 349 | requiresBuild: true 350 | dev: true 351 | optional: true 352 | 353 | /@esbuild/darwin-x64@0.18.17: 354 | resolution: {integrity: sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==} 355 | engines: {node: '>=12'} 356 | cpu: [x64] 357 | os: [darwin] 358 | requiresBuild: true 359 | optional: true 360 | 361 | /@esbuild/freebsd-arm64@0.16.17: 362 | resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==} 363 | engines: {node: '>=12'} 364 | cpu: [arm64] 365 | os: [freebsd] 366 | requiresBuild: true 367 | dev: true 368 | optional: true 369 | 370 | /@esbuild/freebsd-arm64@0.18.17: 371 | resolution: {integrity: sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==} 372 | engines: {node: '>=12'} 373 | cpu: [arm64] 374 | os: [freebsd] 375 | requiresBuild: true 376 | optional: true 377 | 378 | /@esbuild/freebsd-x64@0.16.17: 379 | resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==} 380 | engines: {node: '>=12'} 381 | cpu: [x64] 382 | os: [freebsd] 383 | requiresBuild: true 384 | dev: true 385 | optional: true 386 | 387 | /@esbuild/freebsd-x64@0.18.17: 388 | resolution: {integrity: sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==} 389 | engines: {node: '>=12'} 390 | cpu: [x64] 391 | os: [freebsd] 392 | requiresBuild: true 393 | optional: true 394 | 395 | /@esbuild/linux-arm64@0.16.17: 396 | resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==} 397 | engines: {node: '>=12'} 398 | cpu: [arm64] 399 | os: [linux] 400 | requiresBuild: true 401 | dev: true 402 | optional: true 403 | 404 | /@esbuild/linux-arm64@0.18.17: 405 | resolution: {integrity: sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==} 406 | engines: {node: '>=12'} 407 | cpu: [arm64] 408 | os: [linux] 409 | requiresBuild: true 410 | optional: true 411 | 412 | /@esbuild/linux-arm@0.16.17: 413 | resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==} 414 | engines: {node: '>=12'} 415 | cpu: [arm] 416 | os: [linux] 417 | requiresBuild: true 418 | dev: true 419 | optional: true 420 | 421 | /@esbuild/linux-arm@0.18.17: 422 | resolution: {integrity: sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==} 423 | engines: {node: '>=12'} 424 | cpu: [arm] 425 | os: [linux] 426 | requiresBuild: true 427 | optional: true 428 | 429 | /@esbuild/linux-ia32@0.16.17: 430 | resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==} 431 | engines: {node: '>=12'} 432 | cpu: [ia32] 433 | os: [linux] 434 | requiresBuild: true 435 | dev: true 436 | optional: true 437 | 438 | /@esbuild/linux-ia32@0.18.17: 439 | resolution: {integrity: sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==} 440 | engines: {node: '>=12'} 441 | cpu: [ia32] 442 | os: [linux] 443 | requiresBuild: true 444 | optional: true 445 | 446 | /@esbuild/linux-loong64@0.16.17: 447 | resolution: {integrity: sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==} 448 | engines: {node: '>=12'} 449 | cpu: [loong64] 450 | os: [linux] 451 | requiresBuild: true 452 | dev: true 453 | optional: true 454 | 455 | /@esbuild/linux-loong64@0.18.17: 456 | resolution: {integrity: sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==} 457 | engines: {node: '>=12'} 458 | cpu: [loong64] 459 | os: [linux] 460 | requiresBuild: true 461 | optional: true 462 | 463 | /@esbuild/linux-mips64el@0.16.17: 464 | resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==} 465 | engines: {node: '>=12'} 466 | cpu: [mips64el] 467 | os: [linux] 468 | requiresBuild: true 469 | dev: true 470 | optional: true 471 | 472 | /@esbuild/linux-mips64el@0.18.17: 473 | resolution: {integrity: sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==} 474 | engines: {node: '>=12'} 475 | cpu: [mips64el] 476 | os: [linux] 477 | requiresBuild: true 478 | optional: true 479 | 480 | /@esbuild/linux-ppc64@0.16.17: 481 | resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==} 482 | engines: {node: '>=12'} 483 | cpu: [ppc64] 484 | os: [linux] 485 | requiresBuild: true 486 | dev: true 487 | optional: true 488 | 489 | /@esbuild/linux-ppc64@0.18.17: 490 | resolution: {integrity: sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==} 491 | engines: {node: '>=12'} 492 | cpu: [ppc64] 493 | os: [linux] 494 | requiresBuild: true 495 | optional: true 496 | 497 | /@esbuild/linux-riscv64@0.16.17: 498 | resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==} 499 | engines: {node: '>=12'} 500 | cpu: [riscv64] 501 | os: [linux] 502 | requiresBuild: true 503 | dev: true 504 | optional: true 505 | 506 | /@esbuild/linux-riscv64@0.18.17: 507 | resolution: {integrity: sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==} 508 | engines: {node: '>=12'} 509 | cpu: [riscv64] 510 | os: [linux] 511 | requiresBuild: true 512 | optional: true 513 | 514 | /@esbuild/linux-s390x@0.16.17: 515 | resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==} 516 | engines: {node: '>=12'} 517 | cpu: [s390x] 518 | os: [linux] 519 | requiresBuild: true 520 | dev: true 521 | optional: true 522 | 523 | /@esbuild/linux-s390x@0.18.17: 524 | resolution: {integrity: sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==} 525 | engines: {node: '>=12'} 526 | cpu: [s390x] 527 | os: [linux] 528 | requiresBuild: true 529 | optional: true 530 | 531 | /@esbuild/linux-x64@0.16.17: 532 | resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==} 533 | engines: {node: '>=12'} 534 | cpu: [x64] 535 | os: [linux] 536 | requiresBuild: true 537 | dev: true 538 | optional: true 539 | 540 | /@esbuild/linux-x64@0.18.17: 541 | resolution: {integrity: sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==} 542 | engines: {node: '>=12'} 543 | cpu: [x64] 544 | os: [linux] 545 | requiresBuild: true 546 | optional: true 547 | 548 | /@esbuild/netbsd-x64@0.16.17: 549 | resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==} 550 | engines: {node: '>=12'} 551 | cpu: [x64] 552 | os: [netbsd] 553 | requiresBuild: true 554 | dev: true 555 | optional: true 556 | 557 | /@esbuild/netbsd-x64@0.18.17: 558 | resolution: {integrity: sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==} 559 | engines: {node: '>=12'} 560 | cpu: [x64] 561 | os: [netbsd] 562 | requiresBuild: true 563 | optional: true 564 | 565 | /@esbuild/openbsd-x64@0.16.17: 566 | resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==} 567 | engines: {node: '>=12'} 568 | cpu: [x64] 569 | os: [openbsd] 570 | requiresBuild: true 571 | dev: true 572 | optional: true 573 | 574 | /@esbuild/openbsd-x64@0.18.17: 575 | resolution: {integrity: sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==} 576 | engines: {node: '>=12'} 577 | cpu: [x64] 578 | os: [openbsd] 579 | requiresBuild: true 580 | optional: true 581 | 582 | /@esbuild/sunos-x64@0.16.17: 583 | resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==} 584 | engines: {node: '>=12'} 585 | cpu: [x64] 586 | os: [sunos] 587 | requiresBuild: true 588 | dev: true 589 | optional: true 590 | 591 | /@esbuild/sunos-x64@0.18.17: 592 | resolution: {integrity: sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==} 593 | engines: {node: '>=12'} 594 | cpu: [x64] 595 | os: [sunos] 596 | requiresBuild: true 597 | optional: true 598 | 599 | /@esbuild/win32-arm64@0.16.17: 600 | resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==} 601 | engines: {node: '>=12'} 602 | cpu: [arm64] 603 | os: [win32] 604 | requiresBuild: true 605 | dev: true 606 | optional: true 607 | 608 | /@esbuild/win32-arm64@0.18.17: 609 | resolution: {integrity: sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==} 610 | engines: {node: '>=12'} 611 | cpu: [arm64] 612 | os: [win32] 613 | requiresBuild: true 614 | optional: true 615 | 616 | /@esbuild/win32-ia32@0.16.17: 617 | resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==} 618 | engines: {node: '>=12'} 619 | cpu: [ia32] 620 | os: [win32] 621 | requiresBuild: true 622 | dev: true 623 | optional: true 624 | 625 | /@esbuild/win32-ia32@0.18.17: 626 | resolution: {integrity: sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==} 627 | engines: {node: '>=12'} 628 | cpu: [ia32] 629 | os: [win32] 630 | requiresBuild: true 631 | optional: true 632 | 633 | /@esbuild/win32-x64@0.16.17: 634 | resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==} 635 | engines: {node: '>=12'} 636 | cpu: [x64] 637 | os: [win32] 638 | requiresBuild: true 639 | dev: true 640 | optional: true 641 | 642 | /@esbuild/win32-x64@0.18.17: 643 | resolution: {integrity: sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==} 644 | engines: {node: '>=12'} 645 | cpu: [x64] 646 | os: [win32] 647 | requiresBuild: true 648 | optional: true 649 | 650 | /@eslint/eslintrc@1.3.3: 651 | resolution: {integrity: sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==} 652 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 653 | dependencies: 654 | ajv: 6.12.6 655 | debug: 4.3.4 656 | espree: 9.4.0 657 | globals: 13.17.0 658 | ignore: 5.2.0 659 | import-fresh: 3.3.0 660 | js-yaml: 4.1.0 661 | minimatch: 3.1.2 662 | strip-json-comments: 3.1.1 663 | transitivePeerDependencies: 664 | - supports-color 665 | dev: true 666 | 667 | /@fontsource/fira-mono@4.5.10: 668 | resolution: {integrity: sha512-bxUnRP8xptGRo8YXeY073DSpfK74XpSb0ZyRNpHV9WvLnJ7TwPOjZll8hTMin7zLC6iOp59pDZ8EQDj1gzgAQQ==} 669 | dev: false 670 | 671 | /@humanwhocodes/config-array@0.10.7: 672 | resolution: {integrity: sha512-MDl6D6sBsaV452/QSdX+4CXIjZhIcI0PELsxUjk4U828yd58vk3bTIvk/6w5FY+4hIy9sLW0sfrV7K7Kc++j/w==} 673 | engines: {node: '>=10.10.0'} 674 | dependencies: 675 | '@humanwhocodes/object-schema': 1.2.1 676 | debug: 4.3.4 677 | minimatch: 3.1.2 678 | transitivePeerDependencies: 679 | - supports-color 680 | dev: true 681 | 682 | /@humanwhocodes/module-importer@1.0.1: 683 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 684 | engines: {node: '>=12.22'} 685 | dev: true 686 | 687 | /@humanwhocodes/object-schema@1.2.1: 688 | resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} 689 | dev: true 690 | 691 | /@jridgewell/gen-mapping@0.3.3: 692 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} 693 | engines: {node: '>=6.0.0'} 694 | dependencies: 695 | '@jridgewell/set-array': 1.1.2 696 | '@jridgewell/sourcemap-codec': 1.4.15 697 | '@jridgewell/trace-mapping': 0.3.18 698 | 699 | /@jridgewell/resolve-uri@3.1.0: 700 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} 701 | engines: {node: '>=6.0.0'} 702 | 703 | /@jridgewell/set-array@1.1.2: 704 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} 705 | engines: {node: '>=6.0.0'} 706 | 707 | /@jridgewell/sourcemap-codec@1.4.14: 708 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} 709 | 710 | /@jridgewell/sourcemap-codec@1.4.15: 711 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 712 | 713 | /@jridgewell/trace-mapping@0.3.18: 714 | resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} 715 | dependencies: 716 | '@jridgewell/resolve-uri': 3.1.0 717 | '@jridgewell/sourcemap-codec': 1.4.14 718 | 719 | /@nodelib/fs.scandir@2.1.5: 720 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 721 | engines: {node: '>= 8'} 722 | dependencies: 723 | '@nodelib/fs.stat': 2.0.5 724 | run-parallel: 1.2.0 725 | 726 | /@nodelib/fs.stat@2.0.5: 727 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 728 | engines: {node: '>= 8'} 729 | 730 | /@nodelib/fs.walk@1.2.8: 731 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 732 | engines: {node: '>= 8'} 733 | dependencies: 734 | '@nodelib/fs.scandir': 2.1.5 735 | fastq: 1.13.0 736 | 737 | /@polka/url@1.0.0-next.21: 738 | resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} 739 | 740 | /@sveltejs/adapter-auto@2.0.1(@sveltejs/kit@1.22.3): 741 | resolution: {integrity: sha512-anxxYMcQy7HWSKxN4YNaVcgNzCHtNFwygq72EA1Xv7c+5gSECOJ1ez1PYoLciPiFa7A3XBvMDQXUFJ2eqLDtAA==} 742 | peerDependencies: 743 | '@sveltejs/kit': ^1.0.0 744 | dependencies: 745 | '@sveltejs/kit': 1.22.3(svelte@4.1.1)(vite@4.4.7) 746 | import-meta-resolve: 3.0.0 747 | dev: true 748 | 749 | /@sveltejs/adapter-auto@2.1.0(@sveltejs/kit@1.22.3): 750 | resolution: {integrity: sha512-o2pZCfATFtA/Gw/BB0Xm7k4EYaekXxaPGER3xGSY3FvzFJGTlJlZjBseaXwYSM94lZ0HniOjTokN3cWaLX6fow==} 751 | peerDependencies: 752 | '@sveltejs/kit': ^1.0.0 753 | dependencies: 754 | '@sveltejs/kit': 1.22.3(svelte@4.1.1)(vite@4.4.7) 755 | import-meta-resolve: 3.0.0 756 | dev: true 757 | 758 | /@sveltejs/adapter-cloudflare@2.2.0(@sveltejs/kit@1.22.3): 759 | resolution: {integrity: sha512-B3GQtdPBLHG1eTjOUCjTOqlkTEuYbeSFFw984sEclWxNnLgj3dO6DY8pRTVyrltwNtKRG/7W+ltPVzcbcn30Dg==} 760 | peerDependencies: 761 | '@sveltejs/kit': ^1.0.0 762 | dependencies: 763 | '@cloudflare/workers-types': 4.20230404.0 764 | '@sveltejs/kit': 1.22.3(svelte@4.1.1)(vite@4.4.7) 765 | esbuild: 0.16.17 766 | worktop: 0.8.0-next.14 767 | dev: true 768 | 769 | /@sveltejs/adapter-cloudflare@2.3.1(@sveltejs/kit@1.22.3): 770 | resolution: {integrity: sha512-T+A8LZf70T6hqXj+amN+2mkaZrVDhrr2mzqFUlw2H8M5ClTkBVc8F0EEDQUaRlSQ+RBIFXIltPWUjfSNfb5uPw==} 771 | peerDependencies: 772 | '@sveltejs/kit': ^1.0.0 773 | dependencies: 774 | '@cloudflare/workers-types': 4.20230404.0 775 | '@sveltejs/kit': 1.22.3(svelte@4.1.1)(vite@4.4.7) 776 | esbuild: 0.18.17 777 | worktop: 0.8.0-next.15 778 | dev: false 779 | 780 | /@sveltejs/kit@1.22.3(svelte@4.1.1)(vite@4.4.7): 781 | resolution: {integrity: sha512-IpHD5wvuoOIHYaHQUBJ1zERD2Iz+fB/rBXhXjl8InKw6X4VKE9BSus+ttHhE7Ke+Ie9ecfilzX8BnWE3FeQyng==} 782 | engines: {node: ^16.14 || >=18} 783 | hasBin: true 784 | requiresBuild: true 785 | peerDependencies: 786 | svelte: ^3.54.0 || ^4.0.0-next.0 787 | vite: ^4.0.0 788 | dependencies: 789 | '@sveltejs/vite-plugin-svelte': 2.4.3(svelte@4.1.1)(vite@4.4.7) 790 | '@types/cookie': 0.5.1 791 | cookie: 0.5.0 792 | devalue: 4.3.2 793 | esm-env: 1.0.0 794 | kleur: 4.1.5 795 | magic-string: 0.30.2 796 | mime: 3.0.0 797 | sade: 1.8.1 798 | set-cookie-parser: 2.6.0 799 | sirv: 2.0.2 800 | svelte: 4.1.1 801 | undici: 5.22.0 802 | vite: 4.4.7 803 | transitivePeerDependencies: 804 | - supports-color 805 | 806 | /@sveltejs/package@2.2.0(svelte@4.1.1)(typescript@5.1.6): 807 | resolution: {integrity: sha512-TXbrzsk+T5WNcSzrU41D8P32vU5guo96lVS11/R+rpLhZBH5sORh0Qp6r68Jg4O5vcdS3JLwpwcpe8VFbT/QeA==} 808 | engines: {node: ^16.14 || >=18} 809 | hasBin: true 810 | peerDependencies: 811 | svelte: ^3.44.0 || ^4.0.0 812 | dependencies: 813 | chokidar: 3.5.3 814 | kleur: 4.1.5 815 | sade: 1.8.1 816 | semver: 7.5.4 817 | svelte: 4.1.1 818 | svelte2tsx: 0.6.19(svelte@4.1.1)(typescript@5.1.6) 819 | transitivePeerDependencies: 820 | - typescript 821 | 822 | /@sveltejs/vite-plugin-svelte-inspector@1.0.3(@sveltejs/vite-plugin-svelte@2.4.3)(svelte@4.1.1)(vite@4.4.7): 823 | resolution: {integrity: sha512-Khdl5jmmPN6SUsVuqSXatKpQTMIifoQPDanaxC84m9JxIibWvSABJyHpyys0Z+1yYrxY5TTEQm+6elh0XCMaOA==} 824 | engines: {node: ^14.18.0 || >= 16} 825 | peerDependencies: 826 | '@sveltejs/vite-plugin-svelte': ^2.2.0 827 | svelte: ^3.54.0 || ^4.0.0 828 | vite: ^4.0.0 829 | dependencies: 830 | '@sveltejs/vite-plugin-svelte': 2.4.3(svelte@4.1.1)(vite@4.4.7) 831 | debug: 4.3.4 832 | svelte: 4.1.1 833 | vite: 4.4.7 834 | transitivePeerDependencies: 835 | - supports-color 836 | 837 | /@sveltejs/vite-plugin-svelte@2.4.3(svelte@4.1.1)(vite@4.4.7): 838 | resolution: {integrity: sha512-NY2h+B54KHZO3kDURTdARqthn6D4YSIebtfW75NvZ/fwyk4G+AJw3V/i0OBjyN4406Ht9yZcnNWMuRUFnDNNiA==} 839 | engines: {node: ^14.18.0 || >= 16} 840 | peerDependencies: 841 | svelte: ^3.54.0 || ^4.0.0 842 | vite: ^4.0.0 843 | dependencies: 844 | '@sveltejs/vite-plugin-svelte-inspector': 1.0.3(@sveltejs/vite-plugin-svelte@2.4.3)(svelte@4.1.1)(vite@4.4.7) 845 | debug: 4.3.4 846 | deepmerge: 4.3.1 847 | kleur: 4.1.5 848 | magic-string: 0.30.2 849 | svelte: 4.1.1 850 | svelte-hmr: 0.15.2(svelte@4.1.1) 851 | vite: 4.4.7 852 | vitefu: 0.2.4(vite@4.4.7) 853 | transitivePeerDependencies: 854 | - supports-color 855 | 856 | /@types/cookie@0.5.1: 857 | resolution: {integrity: sha512-COUnqfB2+ckwXXSFInsFdOAWQzCCx+a5hq2ruyj+Vjund94RJQd4LG2u9hnvJrTgunKAaax7ancBYlDrNYxA0g==} 858 | 859 | /@types/estree@1.0.1: 860 | resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} 861 | 862 | /@types/json-schema@7.0.11: 863 | resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} 864 | dev: true 865 | 866 | /@types/pug@2.0.6: 867 | resolution: {integrity: sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==} 868 | dev: true 869 | 870 | /@typescript-eslint/eslint-plugin@5.40.0(@typescript-eslint/parser@5.40.0)(eslint@8.25.0)(typescript@5.1.6): 871 | resolution: {integrity: sha512-FIBZgS3DVJgqPwJzvZTuH4HNsZhHMa9SjxTKAZTlMsPw/UzpEjcf9f4dfgDJEHjK+HboUJo123Eshl6niwEm/Q==} 872 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 873 | peerDependencies: 874 | '@typescript-eslint/parser': ^5.0.0 875 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 876 | typescript: '*' 877 | peerDependenciesMeta: 878 | typescript: 879 | optional: true 880 | dependencies: 881 | '@typescript-eslint/parser': 5.40.0(eslint@8.25.0)(typescript@5.1.6) 882 | '@typescript-eslint/scope-manager': 5.40.0 883 | '@typescript-eslint/type-utils': 5.40.0(eslint@8.25.0)(typescript@5.1.6) 884 | '@typescript-eslint/utils': 5.40.0(eslint@8.25.0)(typescript@5.1.6) 885 | debug: 4.3.4 886 | eslint: 8.25.0 887 | ignore: 5.2.0 888 | regexpp: 3.2.0 889 | semver: 7.3.8 890 | tsutils: 3.21.0(typescript@5.1.6) 891 | typescript: 5.1.6 892 | transitivePeerDependencies: 893 | - supports-color 894 | dev: true 895 | 896 | /@typescript-eslint/parser@5.40.0(eslint@8.25.0)(typescript@5.1.6): 897 | resolution: {integrity: sha512-Ah5gqyX2ySkiuYeOIDg7ap51/b63QgWZA7w6AHtFrag7aH0lRQPbLzUjk0c9o5/KZ6JRkTTDKShL4AUrQa6/hw==} 898 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 899 | peerDependencies: 900 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 901 | typescript: '*' 902 | peerDependenciesMeta: 903 | typescript: 904 | optional: true 905 | dependencies: 906 | '@typescript-eslint/scope-manager': 5.40.0 907 | '@typescript-eslint/types': 5.40.0 908 | '@typescript-eslint/typescript-estree': 5.40.0(typescript@5.1.6) 909 | debug: 4.3.4 910 | eslint: 8.25.0 911 | typescript: 5.1.6 912 | transitivePeerDependencies: 913 | - supports-color 914 | dev: true 915 | 916 | /@typescript-eslint/scope-manager@5.40.0: 917 | resolution: {integrity: sha512-d3nPmjUeZtEWRvyReMI4I1MwPGC63E8pDoHy0BnrYjnJgilBD3hv7XOiETKLY/zTwI7kCnBDf2vWTRUVpYw0Uw==} 918 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 919 | dependencies: 920 | '@typescript-eslint/types': 5.40.0 921 | '@typescript-eslint/visitor-keys': 5.40.0 922 | dev: true 923 | 924 | /@typescript-eslint/type-utils@5.40.0(eslint@8.25.0)(typescript@5.1.6): 925 | resolution: {integrity: sha512-nfuSdKEZY2TpnPz5covjJqav+g5qeBqwSHKBvz7Vm1SAfy93SwKk/JeSTymruDGItTwNijSsno5LhOHRS1pcfw==} 926 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 927 | peerDependencies: 928 | eslint: '*' 929 | typescript: '*' 930 | peerDependenciesMeta: 931 | typescript: 932 | optional: true 933 | dependencies: 934 | '@typescript-eslint/typescript-estree': 5.40.0(typescript@5.1.6) 935 | '@typescript-eslint/utils': 5.40.0(eslint@8.25.0)(typescript@5.1.6) 936 | debug: 4.3.4 937 | eslint: 8.25.0 938 | tsutils: 3.21.0(typescript@5.1.6) 939 | typescript: 5.1.6 940 | transitivePeerDependencies: 941 | - supports-color 942 | dev: true 943 | 944 | /@typescript-eslint/types@5.40.0: 945 | resolution: {integrity: sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==} 946 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 947 | dev: true 948 | 949 | /@typescript-eslint/typescript-estree@5.40.0(typescript@5.1.6): 950 | resolution: {integrity: sha512-b0GYlDj8TLTOqwX7EGbw2gL5EXS2CPEWhF9nGJiGmEcmlpNBjyHsTwbqpyIEPVpl6br4UcBOYlcI2FJVtJkYhg==} 951 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 952 | peerDependencies: 953 | typescript: '*' 954 | peerDependenciesMeta: 955 | typescript: 956 | optional: true 957 | dependencies: 958 | '@typescript-eslint/types': 5.40.0 959 | '@typescript-eslint/visitor-keys': 5.40.0 960 | debug: 4.3.4 961 | globby: 11.1.0 962 | is-glob: 4.0.3 963 | semver: 7.3.8 964 | tsutils: 3.21.0(typescript@5.1.6) 965 | typescript: 5.1.6 966 | transitivePeerDependencies: 967 | - supports-color 968 | dev: true 969 | 970 | /@typescript-eslint/utils@5.40.0(eslint@8.25.0)(typescript@5.1.6): 971 | resolution: {integrity: sha512-MO0y3T5BQ5+tkkuYZJBjePewsY+cQnfkYeRqS6tPh28niiIwPnQ1t59CSRcs1ZwJJNOdWw7rv9pF8aP58IMihA==} 972 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 973 | peerDependencies: 974 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 975 | dependencies: 976 | '@types/json-schema': 7.0.11 977 | '@typescript-eslint/scope-manager': 5.40.0 978 | '@typescript-eslint/types': 5.40.0 979 | '@typescript-eslint/typescript-estree': 5.40.0(typescript@5.1.6) 980 | eslint: 8.25.0 981 | eslint-scope: 5.1.1 982 | eslint-utils: 3.0.0(eslint@8.25.0) 983 | semver: 7.3.8 984 | transitivePeerDependencies: 985 | - supports-color 986 | - typescript 987 | dev: true 988 | 989 | /@typescript-eslint/visitor-keys@5.40.0: 990 | resolution: {integrity: sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==} 991 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 992 | dependencies: 993 | '@typescript-eslint/types': 5.40.0 994 | eslint-visitor-keys: 3.3.0 995 | dev: true 996 | 997 | /acorn-jsx@5.3.2(acorn@8.8.0): 998 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 999 | peerDependencies: 1000 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 1001 | dependencies: 1002 | acorn: 8.8.0 1003 | dev: true 1004 | 1005 | /acorn-node@1.8.2: 1006 | resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==} 1007 | dependencies: 1008 | acorn: 7.4.1 1009 | acorn-walk: 7.2.0 1010 | xtend: 4.0.2 1011 | dev: false 1012 | 1013 | /acorn-walk@7.2.0: 1014 | resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} 1015 | engines: {node: '>=0.4.0'} 1016 | dev: false 1017 | 1018 | /acorn@7.4.1: 1019 | resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} 1020 | engines: {node: '>=0.4.0'} 1021 | hasBin: true 1022 | dev: false 1023 | 1024 | /acorn@8.10.0: 1025 | resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} 1026 | engines: {node: '>=0.4.0'} 1027 | hasBin: true 1028 | 1029 | /acorn@8.8.0: 1030 | resolution: {integrity: sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==} 1031 | engines: {node: '>=0.4.0'} 1032 | hasBin: true 1033 | dev: true 1034 | 1035 | /ajv@6.12.6: 1036 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 1037 | dependencies: 1038 | fast-deep-equal: 3.1.3 1039 | fast-json-stable-stringify: 2.1.0 1040 | json-schema-traverse: 0.4.1 1041 | uri-js: 4.4.1 1042 | dev: true 1043 | 1044 | /algoliasearch@4.14.2: 1045 | resolution: {integrity: sha512-ngbEQonGEmf8dyEh5f+uOIihv4176dgbuOZspiuhmTTBRBuzWu3KCGHre6uHj5YyuC7pNvQGzB6ZNJyZi0z+Sg==} 1046 | dependencies: 1047 | '@algolia/cache-browser-local-storage': 4.14.2 1048 | '@algolia/cache-common': 4.14.2 1049 | '@algolia/cache-in-memory': 4.14.2 1050 | '@algolia/client-account': 4.14.2 1051 | '@algolia/client-analytics': 4.14.2 1052 | '@algolia/client-common': 4.14.2 1053 | '@algolia/client-personalization': 4.14.2 1054 | '@algolia/client-search': 4.14.2 1055 | '@algolia/logger-common': 4.14.2 1056 | '@algolia/logger-console': 4.14.2 1057 | '@algolia/requester-browser-xhr': 4.14.2 1058 | '@algolia/requester-common': 4.14.2 1059 | '@algolia/requester-node-http': 4.14.2 1060 | '@algolia/transporter': 4.14.2 1061 | dev: false 1062 | 1063 | /ansi-regex@5.0.1: 1064 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 1065 | engines: {node: '>=8'} 1066 | dev: true 1067 | 1068 | /ansi-styles@4.3.0: 1069 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1070 | engines: {node: '>=8'} 1071 | dependencies: 1072 | color-convert: 2.0.1 1073 | dev: true 1074 | 1075 | /anymatch@3.1.2: 1076 | resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} 1077 | engines: {node: '>= 8'} 1078 | dependencies: 1079 | normalize-path: 3.0.0 1080 | picomatch: 2.3.1 1081 | 1082 | /arg@5.0.2: 1083 | resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} 1084 | dev: false 1085 | 1086 | /argparse@2.0.1: 1087 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 1088 | dev: true 1089 | 1090 | /aria-query@5.3.0: 1091 | resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} 1092 | dependencies: 1093 | dequal: 2.0.3 1094 | 1095 | /array-union@2.1.0: 1096 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 1097 | engines: {node: '>=8'} 1098 | dev: true 1099 | 1100 | /autoprefixer@10.4.12(postcss@8.4.18): 1101 | resolution: {integrity: sha512-WrCGV9/b97Pa+jtwf5UGaRjgQIg7OK3D06GnoYoZNcG1Xb8Gt3EfuKjlhh9i/VtT16g6PYjZ69jdJ2g8FxSC4Q==} 1102 | engines: {node: ^10 || ^12 || >=14} 1103 | hasBin: true 1104 | peerDependencies: 1105 | postcss: ^8.1.0 1106 | dependencies: 1107 | browserslist: 4.21.4 1108 | caniuse-lite: 1.0.30001419 1109 | fraction.js: 4.2.0 1110 | normalize-range: 0.1.2 1111 | picocolors: 1.0.0 1112 | postcss: 8.4.18 1113 | postcss-value-parser: 4.2.0 1114 | dev: false 1115 | 1116 | /axobject-query@3.2.1: 1117 | resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} 1118 | dependencies: 1119 | dequal: 2.0.3 1120 | 1121 | /balanced-match@1.0.2: 1122 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1123 | dev: true 1124 | 1125 | /binary-extensions@2.2.0: 1126 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 1127 | engines: {node: '>=8'} 1128 | 1129 | /brace-expansion@1.1.11: 1130 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 1131 | dependencies: 1132 | balanced-match: 1.0.2 1133 | concat-map: 0.0.1 1134 | dev: true 1135 | 1136 | /braces@3.0.2: 1137 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 1138 | engines: {node: '>=8'} 1139 | dependencies: 1140 | fill-range: 7.0.1 1141 | 1142 | /browserslist@4.21.4: 1143 | resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==} 1144 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 1145 | hasBin: true 1146 | dependencies: 1147 | caniuse-lite: 1.0.30001419 1148 | electron-to-chromium: 1.4.283 1149 | node-releases: 2.0.6 1150 | update-browserslist-db: 1.0.10(browserslist@4.21.4) 1151 | dev: false 1152 | 1153 | /buffer-crc32@0.2.13: 1154 | resolution: {integrity: sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=} 1155 | dev: true 1156 | 1157 | /busboy@1.6.0: 1158 | resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} 1159 | engines: {node: '>=10.16.0'} 1160 | dependencies: 1161 | streamsearch: 1.1.0 1162 | 1163 | /callsites@3.1.0: 1164 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 1165 | engines: {node: '>=6'} 1166 | dev: true 1167 | 1168 | /camelcase-css@2.0.1: 1169 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 1170 | engines: {node: '>= 6'} 1171 | dev: false 1172 | 1173 | /caniuse-lite@1.0.30001419: 1174 | resolution: {integrity: sha512-aFO1r+g6R7TW+PNQxKzjITwLOyDhVRLjW0LcwS/HCZGUUKTGNp9+IwLC4xyDSZBygVL/mxaFR3HIV6wEKQuSzw==} 1175 | dev: false 1176 | 1177 | /chalk@4.1.2: 1178 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1179 | engines: {node: '>=10'} 1180 | dependencies: 1181 | ansi-styles: 4.3.0 1182 | supports-color: 7.2.0 1183 | dev: true 1184 | 1185 | /chokidar@3.5.3: 1186 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} 1187 | engines: {node: '>= 8.10.0'} 1188 | dependencies: 1189 | anymatch: 3.1.2 1190 | braces: 3.0.2 1191 | glob-parent: 5.1.2 1192 | is-binary-path: 2.1.0 1193 | is-glob: 4.0.3 1194 | normalize-path: 3.0.0 1195 | readdirp: 3.6.0 1196 | optionalDependencies: 1197 | fsevents: 2.3.2 1198 | 1199 | /code-red@1.0.3: 1200 | resolution: {integrity: sha512-kVwJELqiILQyG5aeuyKFbdsI1fmQy1Cmf7dQ8eGmVuJoaRVdwey7WaMknr2ZFeVSYSKT0rExsa8EGw0aoI/1QQ==} 1201 | dependencies: 1202 | '@jridgewell/sourcemap-codec': 1.4.15 1203 | '@types/estree': 1.0.1 1204 | acorn: 8.10.0 1205 | estree-walker: 3.0.3 1206 | periscopic: 3.1.0 1207 | 1208 | /color-convert@2.0.1: 1209 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1210 | engines: {node: '>=7.0.0'} 1211 | dependencies: 1212 | color-name: 1.1.4 1213 | 1214 | /color-name@1.1.4: 1215 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1216 | 1217 | /color-string@1.9.1: 1218 | resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} 1219 | dependencies: 1220 | color-name: 1.1.4 1221 | simple-swizzle: 0.2.2 1222 | dev: false 1223 | 1224 | /color@4.2.3: 1225 | resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} 1226 | engines: {node: '>=12.5.0'} 1227 | dependencies: 1228 | color-convert: 2.0.1 1229 | color-string: 1.9.1 1230 | dev: false 1231 | 1232 | /concat-map@0.0.1: 1233 | resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} 1234 | dev: true 1235 | 1236 | /cookie@0.5.0: 1237 | resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} 1238 | engines: {node: '>= 0.6'} 1239 | 1240 | /cross-spawn@7.0.3: 1241 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 1242 | engines: {node: '>= 8'} 1243 | dependencies: 1244 | path-key: 3.1.1 1245 | shebang-command: 2.0.0 1246 | which: 2.0.2 1247 | dev: true 1248 | 1249 | /css-selector-tokenizer@0.8.0: 1250 | resolution: {integrity: sha512-Jd6Ig3/pe62/qe5SBPTN8h8LeUg/pT4lLgtavPf7updwwHpvFzxvOQBHYj2LZDMjUnBzgvIUSjRcf6oT5HzHFg==} 1251 | dependencies: 1252 | cssesc: 3.0.0 1253 | fastparse: 1.1.2 1254 | dev: false 1255 | 1256 | /css-tree@2.3.1: 1257 | resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} 1258 | engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} 1259 | dependencies: 1260 | mdn-data: 2.0.30 1261 | source-map-js: 1.0.2 1262 | 1263 | /cssesc@3.0.0: 1264 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 1265 | engines: {node: '>=4'} 1266 | hasBin: true 1267 | dev: false 1268 | 1269 | /daisyui@2.31.0(autoprefixer@10.4.12)(postcss@8.4.18): 1270 | resolution: {integrity: sha512-qepRXgQPLNcJ8ZPZy+dUvsC7mRWvMLRcVMe85/wZA60Tnhm/bkidhOzdllL8aAk2JX+W/xlIsTJ8NZFpPm+eyw==} 1271 | peerDependencies: 1272 | autoprefixer: ^10.0.2 1273 | postcss: ^8.1.6 1274 | dependencies: 1275 | autoprefixer: 10.4.12(postcss@8.4.18) 1276 | color: 4.2.3 1277 | css-selector-tokenizer: 0.8.0 1278 | postcss: 8.4.18 1279 | postcss-js: 4.0.0(postcss@8.4.18) 1280 | tailwindcss: 3.1.8(postcss@8.4.18) 1281 | transitivePeerDependencies: 1282 | - ts-node 1283 | dev: false 1284 | 1285 | /debug@4.3.4: 1286 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1287 | engines: {node: '>=6.0'} 1288 | peerDependencies: 1289 | supports-color: '*' 1290 | peerDependenciesMeta: 1291 | supports-color: 1292 | optional: true 1293 | dependencies: 1294 | ms: 2.1.2 1295 | 1296 | /dedent-js@1.0.1: 1297 | resolution: {integrity: sha512-OUepMozQULMLUmhxS95Vudo0jb0UchLimi3+pQ2plj61Fcy8axbP9hbiD4Sz6DPqn6XG3kfmziVfQ1rSys5AJQ==} 1298 | 1299 | /deep-is@0.1.4: 1300 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 1301 | dev: true 1302 | 1303 | /deepmerge@4.3.1: 1304 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 1305 | engines: {node: '>=0.10.0'} 1306 | 1307 | /defined@1.0.1: 1308 | resolution: {integrity: sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==} 1309 | dev: false 1310 | 1311 | /dequal@2.0.3: 1312 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} 1313 | engines: {node: '>=6'} 1314 | 1315 | /detect-indent@6.1.0: 1316 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} 1317 | engines: {node: '>=8'} 1318 | dev: true 1319 | 1320 | /detective@5.2.1: 1321 | resolution: {integrity: sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==} 1322 | engines: {node: '>=0.8.0'} 1323 | hasBin: true 1324 | dependencies: 1325 | acorn-node: 1.8.2 1326 | defined: 1.0.1 1327 | minimist: 1.2.6 1328 | dev: false 1329 | 1330 | /devalue@4.3.2: 1331 | resolution: {integrity: sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg==} 1332 | 1333 | /didyoumean@1.2.2: 1334 | resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} 1335 | dev: false 1336 | 1337 | /dir-glob@3.0.1: 1338 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 1339 | engines: {node: '>=8'} 1340 | dependencies: 1341 | path-type: 4.0.0 1342 | dev: true 1343 | 1344 | /dlv@1.1.3: 1345 | resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} 1346 | dev: false 1347 | 1348 | /doctrine@3.0.0: 1349 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 1350 | engines: {node: '>=6.0.0'} 1351 | dependencies: 1352 | esutils: 2.0.3 1353 | dev: true 1354 | 1355 | /electron-to-chromium@1.4.283: 1356 | resolution: {integrity: sha512-g6RQ9zCOV+U5QVHW9OpFR7rdk/V7xfopNXnyAamdpFgCHgZ1sjI8VuR1+zG2YG/TZk+tQ8mpNkug4P8FU0fuOA==} 1357 | dev: false 1358 | 1359 | /es6-promise@3.3.1: 1360 | resolution: {integrity: sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=} 1361 | dev: true 1362 | 1363 | /esbuild@0.16.17: 1364 | resolution: {integrity: sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==} 1365 | engines: {node: '>=12'} 1366 | hasBin: true 1367 | requiresBuild: true 1368 | optionalDependencies: 1369 | '@esbuild/android-arm': 0.16.17 1370 | '@esbuild/android-arm64': 0.16.17 1371 | '@esbuild/android-x64': 0.16.17 1372 | '@esbuild/darwin-arm64': 0.16.17 1373 | '@esbuild/darwin-x64': 0.16.17 1374 | '@esbuild/freebsd-arm64': 0.16.17 1375 | '@esbuild/freebsd-x64': 0.16.17 1376 | '@esbuild/linux-arm': 0.16.17 1377 | '@esbuild/linux-arm64': 0.16.17 1378 | '@esbuild/linux-ia32': 0.16.17 1379 | '@esbuild/linux-loong64': 0.16.17 1380 | '@esbuild/linux-mips64el': 0.16.17 1381 | '@esbuild/linux-ppc64': 0.16.17 1382 | '@esbuild/linux-riscv64': 0.16.17 1383 | '@esbuild/linux-s390x': 0.16.17 1384 | '@esbuild/linux-x64': 0.16.17 1385 | '@esbuild/netbsd-x64': 0.16.17 1386 | '@esbuild/openbsd-x64': 0.16.17 1387 | '@esbuild/sunos-x64': 0.16.17 1388 | '@esbuild/win32-arm64': 0.16.17 1389 | '@esbuild/win32-ia32': 0.16.17 1390 | '@esbuild/win32-x64': 0.16.17 1391 | dev: true 1392 | 1393 | /esbuild@0.18.17: 1394 | resolution: {integrity: sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==} 1395 | engines: {node: '>=12'} 1396 | hasBin: true 1397 | requiresBuild: true 1398 | optionalDependencies: 1399 | '@esbuild/android-arm': 0.18.17 1400 | '@esbuild/android-arm64': 0.18.17 1401 | '@esbuild/android-x64': 0.18.17 1402 | '@esbuild/darwin-arm64': 0.18.17 1403 | '@esbuild/darwin-x64': 0.18.17 1404 | '@esbuild/freebsd-arm64': 0.18.17 1405 | '@esbuild/freebsd-x64': 0.18.17 1406 | '@esbuild/linux-arm': 0.18.17 1407 | '@esbuild/linux-arm64': 0.18.17 1408 | '@esbuild/linux-ia32': 0.18.17 1409 | '@esbuild/linux-loong64': 0.18.17 1410 | '@esbuild/linux-mips64el': 0.18.17 1411 | '@esbuild/linux-ppc64': 0.18.17 1412 | '@esbuild/linux-riscv64': 0.18.17 1413 | '@esbuild/linux-s390x': 0.18.17 1414 | '@esbuild/linux-x64': 0.18.17 1415 | '@esbuild/netbsd-x64': 0.18.17 1416 | '@esbuild/openbsd-x64': 0.18.17 1417 | '@esbuild/sunos-x64': 0.18.17 1418 | '@esbuild/win32-arm64': 0.18.17 1419 | '@esbuild/win32-ia32': 0.18.17 1420 | '@esbuild/win32-x64': 0.18.17 1421 | 1422 | /escalade@3.1.1: 1423 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 1424 | engines: {node: '>=6'} 1425 | dev: false 1426 | 1427 | /escape-string-regexp@4.0.0: 1428 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 1429 | engines: {node: '>=10'} 1430 | dev: true 1431 | 1432 | /eslint-config-prettier@8.5.0(eslint@8.25.0): 1433 | resolution: {integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==} 1434 | hasBin: true 1435 | peerDependencies: 1436 | eslint: '>=7.0.0' 1437 | dependencies: 1438 | eslint: 8.25.0 1439 | dev: true 1440 | 1441 | /eslint-plugin-svelte3@4.0.0(eslint@8.25.0)(svelte@4.1.1): 1442 | resolution: {integrity: sha512-OIx9lgaNzD02+MDFNLw0GEUbuovNcglg+wnd/UY0fbZmlQSz7GlQiQ1f+yX0XvC07XPcDOnFcichqI3xCwp71g==} 1443 | peerDependencies: 1444 | eslint: '>=8.0.0' 1445 | svelte: ^3.2.0 1446 | dependencies: 1447 | eslint: 8.25.0 1448 | svelte: 4.1.1 1449 | dev: true 1450 | 1451 | /eslint-scope@5.1.1: 1452 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} 1453 | engines: {node: '>=8.0.0'} 1454 | dependencies: 1455 | esrecurse: 4.3.0 1456 | estraverse: 4.3.0 1457 | dev: true 1458 | 1459 | /eslint-scope@7.1.1: 1460 | resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==} 1461 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1462 | dependencies: 1463 | esrecurse: 4.3.0 1464 | estraverse: 5.3.0 1465 | dev: true 1466 | 1467 | /eslint-utils@3.0.0(eslint@8.25.0): 1468 | resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} 1469 | engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} 1470 | peerDependencies: 1471 | eslint: '>=5' 1472 | dependencies: 1473 | eslint: 8.25.0 1474 | eslint-visitor-keys: 2.1.0 1475 | dev: true 1476 | 1477 | /eslint-visitor-keys@2.1.0: 1478 | resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} 1479 | engines: {node: '>=10'} 1480 | dev: true 1481 | 1482 | /eslint-visitor-keys@3.3.0: 1483 | resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} 1484 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1485 | dev: true 1486 | 1487 | /eslint@8.25.0: 1488 | resolution: {integrity: sha512-DVlJOZ4Pn50zcKW5bYH7GQK/9MsoQG2d5eDH0ebEkE8PbgzTTmtt/VTH9GGJ4BfeZCpBLqFfvsjX35UacUL83A==} 1489 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1490 | hasBin: true 1491 | dependencies: 1492 | '@eslint/eslintrc': 1.3.3 1493 | '@humanwhocodes/config-array': 0.10.7 1494 | '@humanwhocodes/module-importer': 1.0.1 1495 | ajv: 6.12.6 1496 | chalk: 4.1.2 1497 | cross-spawn: 7.0.3 1498 | debug: 4.3.4 1499 | doctrine: 3.0.0 1500 | escape-string-regexp: 4.0.0 1501 | eslint-scope: 7.1.1 1502 | eslint-utils: 3.0.0(eslint@8.25.0) 1503 | eslint-visitor-keys: 3.3.0 1504 | espree: 9.4.0 1505 | esquery: 1.4.0 1506 | esutils: 2.0.3 1507 | fast-deep-equal: 3.1.3 1508 | file-entry-cache: 6.0.1 1509 | find-up: 5.0.0 1510 | glob-parent: 6.0.2 1511 | globals: 13.17.0 1512 | globby: 11.1.0 1513 | grapheme-splitter: 1.0.4 1514 | ignore: 5.2.0 1515 | import-fresh: 3.3.0 1516 | imurmurhash: 0.1.4 1517 | is-glob: 4.0.3 1518 | js-sdsl: 4.1.5 1519 | js-yaml: 4.1.0 1520 | json-stable-stringify-without-jsonify: 1.0.1 1521 | levn: 0.4.1 1522 | lodash.merge: 4.6.2 1523 | minimatch: 3.1.2 1524 | natural-compare: 1.4.0 1525 | optionator: 0.9.1 1526 | regexpp: 3.2.0 1527 | strip-ansi: 6.0.1 1528 | strip-json-comments: 3.1.1 1529 | text-table: 0.2.0 1530 | transitivePeerDependencies: 1531 | - supports-color 1532 | dev: true 1533 | 1534 | /esm-env@1.0.0: 1535 | resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} 1536 | 1537 | /espree@9.4.0: 1538 | resolution: {integrity: sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==} 1539 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1540 | dependencies: 1541 | acorn: 8.8.0 1542 | acorn-jsx: 5.3.2(acorn@8.8.0) 1543 | eslint-visitor-keys: 3.3.0 1544 | dev: true 1545 | 1546 | /esquery@1.4.0: 1547 | resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==} 1548 | engines: {node: '>=0.10'} 1549 | dependencies: 1550 | estraverse: 5.3.0 1551 | dev: true 1552 | 1553 | /esrecurse@4.3.0: 1554 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1555 | engines: {node: '>=4.0'} 1556 | dependencies: 1557 | estraverse: 5.3.0 1558 | dev: true 1559 | 1560 | /estraverse@4.3.0: 1561 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} 1562 | engines: {node: '>=4.0'} 1563 | dev: true 1564 | 1565 | /estraverse@5.3.0: 1566 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1567 | engines: {node: '>=4.0'} 1568 | dev: true 1569 | 1570 | /estree-walker@3.0.3: 1571 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 1572 | dependencies: 1573 | '@types/estree': 1.0.1 1574 | 1575 | /esutils@2.0.3: 1576 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1577 | engines: {node: '>=0.10.0'} 1578 | dev: true 1579 | 1580 | /fast-deep-equal@3.1.3: 1581 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1582 | dev: true 1583 | 1584 | /fast-glob@3.2.11: 1585 | resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==} 1586 | engines: {node: '>=8.6.0'} 1587 | dependencies: 1588 | '@nodelib/fs.stat': 2.0.5 1589 | '@nodelib/fs.walk': 1.2.8 1590 | glob-parent: 5.1.2 1591 | merge2: 1.4.1 1592 | micromatch: 4.0.5 1593 | 1594 | /fast-json-stable-stringify@2.1.0: 1595 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1596 | dev: true 1597 | 1598 | /fast-levenshtein@2.0.6: 1599 | resolution: {integrity: sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=} 1600 | dev: true 1601 | 1602 | /fastparse@1.1.2: 1603 | resolution: {integrity: sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==} 1604 | dev: false 1605 | 1606 | /fastq@1.13.0: 1607 | resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} 1608 | dependencies: 1609 | reusify: 1.0.4 1610 | 1611 | /file-entry-cache@6.0.1: 1612 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 1613 | engines: {node: ^10.12.0 || >=12.0.0} 1614 | dependencies: 1615 | flat-cache: 3.0.4 1616 | dev: true 1617 | 1618 | /fill-range@7.0.1: 1619 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1620 | engines: {node: '>=8'} 1621 | dependencies: 1622 | to-regex-range: 5.0.1 1623 | 1624 | /find-up@5.0.0: 1625 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1626 | engines: {node: '>=10'} 1627 | dependencies: 1628 | locate-path: 6.0.0 1629 | path-exists: 4.0.0 1630 | dev: true 1631 | 1632 | /flat-cache@3.0.4: 1633 | resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} 1634 | engines: {node: ^10.12.0 || >=12.0.0} 1635 | dependencies: 1636 | flatted: 3.2.5 1637 | rimraf: 3.0.2 1638 | dev: true 1639 | 1640 | /flatted@3.2.5: 1641 | resolution: {integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==} 1642 | dev: true 1643 | 1644 | /fraction.js@4.2.0: 1645 | resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} 1646 | dev: false 1647 | 1648 | /fs.realpath@1.0.0: 1649 | resolution: {integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=} 1650 | dev: true 1651 | 1652 | /fsevents@2.3.2: 1653 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} 1654 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1655 | os: [darwin] 1656 | requiresBuild: true 1657 | optional: true 1658 | 1659 | /function-bind@1.1.1: 1660 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 1661 | dev: false 1662 | 1663 | /glob-parent@5.1.2: 1664 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1665 | engines: {node: '>= 6'} 1666 | dependencies: 1667 | is-glob: 4.0.3 1668 | 1669 | /glob-parent@6.0.2: 1670 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 1671 | engines: {node: '>=10.13.0'} 1672 | dependencies: 1673 | is-glob: 4.0.3 1674 | 1675 | /glob@7.2.0: 1676 | resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==} 1677 | dependencies: 1678 | fs.realpath: 1.0.0 1679 | inflight: 1.0.6 1680 | inherits: 2.0.4 1681 | minimatch: 3.0.4 1682 | once: 1.4.0 1683 | path-is-absolute: 1.0.1 1684 | dev: true 1685 | 1686 | /globals@13.17.0: 1687 | resolution: {integrity: sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==} 1688 | engines: {node: '>=8'} 1689 | dependencies: 1690 | type-fest: 0.20.2 1691 | dev: true 1692 | 1693 | /globby@11.1.0: 1694 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 1695 | engines: {node: '>=10'} 1696 | dependencies: 1697 | array-union: 2.1.0 1698 | dir-glob: 3.0.1 1699 | fast-glob: 3.2.11 1700 | ignore: 5.2.0 1701 | merge2: 1.4.1 1702 | slash: 3.0.0 1703 | dev: true 1704 | 1705 | /graceful-fs@4.2.10: 1706 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} 1707 | dev: true 1708 | 1709 | /grapheme-splitter@1.0.4: 1710 | resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} 1711 | dev: true 1712 | 1713 | /has-flag@4.0.0: 1714 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1715 | engines: {node: '>=8'} 1716 | dev: true 1717 | 1718 | /has@1.0.3: 1719 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 1720 | engines: {node: '>= 0.4.0'} 1721 | dependencies: 1722 | function-bind: 1.1.1 1723 | dev: false 1724 | 1725 | /ignore@5.2.0: 1726 | resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} 1727 | engines: {node: '>= 4'} 1728 | dev: true 1729 | 1730 | /import-fresh@3.3.0: 1731 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1732 | engines: {node: '>=6'} 1733 | dependencies: 1734 | parent-module: 1.0.1 1735 | resolve-from: 4.0.0 1736 | dev: true 1737 | 1738 | /import-meta-resolve@3.0.0: 1739 | resolution: {integrity: sha512-4IwhLhNNA8yy445rPjD/lWh++7hMDOml2eHtd58eG7h+qK3EryMuuRbsHGPikCoAgIkkDnckKfWSk2iDla/ejg==} 1740 | dev: true 1741 | 1742 | /imurmurhash@0.1.4: 1743 | resolution: {integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o=} 1744 | engines: {node: '>=0.8.19'} 1745 | dev: true 1746 | 1747 | /inflight@1.0.6: 1748 | resolution: {integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=} 1749 | dependencies: 1750 | once: 1.4.0 1751 | wrappy: 1.0.2 1752 | dev: true 1753 | 1754 | /inherits@2.0.4: 1755 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1756 | dev: true 1757 | 1758 | /is-arrayish@0.3.2: 1759 | resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 1760 | dev: false 1761 | 1762 | /is-binary-path@2.1.0: 1763 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 1764 | engines: {node: '>=8'} 1765 | dependencies: 1766 | binary-extensions: 2.2.0 1767 | 1768 | /is-core-module@2.10.0: 1769 | resolution: {integrity: sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==} 1770 | dependencies: 1771 | has: 1.0.3 1772 | dev: false 1773 | 1774 | /is-extglob@2.1.1: 1775 | resolution: {integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=} 1776 | engines: {node: '>=0.10.0'} 1777 | 1778 | /is-glob@4.0.3: 1779 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1780 | engines: {node: '>=0.10.0'} 1781 | dependencies: 1782 | is-extglob: 2.1.1 1783 | 1784 | /is-number@7.0.0: 1785 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1786 | engines: {node: '>=0.12.0'} 1787 | 1788 | /is-reference@3.0.1: 1789 | resolution: {integrity: sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w==} 1790 | dependencies: 1791 | '@types/estree': 1.0.1 1792 | 1793 | /isexe@2.0.0: 1794 | resolution: {integrity: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=} 1795 | dev: true 1796 | 1797 | /js-sdsl@4.1.5: 1798 | resolution: {integrity: sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==} 1799 | dev: true 1800 | 1801 | /js-yaml@4.1.0: 1802 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1803 | hasBin: true 1804 | dependencies: 1805 | argparse: 2.0.1 1806 | dev: true 1807 | 1808 | /json-schema-traverse@0.4.1: 1809 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1810 | dev: true 1811 | 1812 | /json-stable-stringify-without-jsonify@1.0.1: 1813 | resolution: {integrity: sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=} 1814 | dev: true 1815 | 1816 | /kleur@4.1.5: 1817 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 1818 | engines: {node: '>=6'} 1819 | 1820 | /levn@0.4.1: 1821 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1822 | engines: {node: '>= 0.8.0'} 1823 | dependencies: 1824 | prelude-ls: 1.2.1 1825 | type-check: 0.4.0 1826 | dev: true 1827 | 1828 | /lilconfig@2.0.6: 1829 | resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==} 1830 | engines: {node: '>=10'} 1831 | dev: false 1832 | 1833 | /locate-character@3.0.0: 1834 | resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 1835 | 1836 | /locate-path@6.0.0: 1837 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1838 | engines: {node: '>=10'} 1839 | dependencies: 1840 | p-locate: 5.0.0 1841 | dev: true 1842 | 1843 | /lodash.merge@4.6.2: 1844 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1845 | dev: true 1846 | 1847 | /lower-case@2.0.2: 1848 | resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} 1849 | dependencies: 1850 | tslib: 2.3.1 1851 | 1852 | /lru-cache@6.0.0: 1853 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 1854 | engines: {node: '>=10'} 1855 | dependencies: 1856 | yallist: 4.0.0 1857 | 1858 | /magic-string@0.27.0: 1859 | resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} 1860 | engines: {node: '>=12'} 1861 | dependencies: 1862 | '@jridgewell/sourcemap-codec': 1.4.15 1863 | dev: true 1864 | 1865 | /magic-string@0.30.2: 1866 | resolution: {integrity: sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==} 1867 | engines: {node: '>=12'} 1868 | dependencies: 1869 | '@jridgewell/sourcemap-codec': 1.4.15 1870 | 1871 | /match-sorter@6.3.1: 1872 | resolution: {integrity: sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==} 1873 | dependencies: 1874 | '@babel/runtime': 7.19.4 1875 | remove-accents: 0.4.2 1876 | dev: false 1877 | 1878 | /mdn-data@2.0.30: 1879 | resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} 1880 | 1881 | /merge2@1.4.1: 1882 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1883 | engines: {node: '>= 8'} 1884 | 1885 | /micromatch@4.0.5: 1886 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 1887 | engines: {node: '>=8.6'} 1888 | dependencies: 1889 | braces: 3.0.2 1890 | picomatch: 2.3.1 1891 | 1892 | /mime@3.0.0: 1893 | resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} 1894 | engines: {node: '>=10.0.0'} 1895 | hasBin: true 1896 | 1897 | /min-indent@1.0.1: 1898 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} 1899 | engines: {node: '>=4'} 1900 | dev: true 1901 | 1902 | /minimatch@3.0.4: 1903 | resolution: {integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==} 1904 | dependencies: 1905 | brace-expansion: 1.1.11 1906 | dev: true 1907 | 1908 | /minimatch@3.1.2: 1909 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1910 | dependencies: 1911 | brace-expansion: 1.1.11 1912 | dev: true 1913 | 1914 | /minimist@1.2.6: 1915 | resolution: {integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==} 1916 | 1917 | /mkdirp@0.5.6: 1918 | resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} 1919 | hasBin: true 1920 | dependencies: 1921 | minimist: 1.2.6 1922 | dev: true 1923 | 1924 | /mri@1.2.0: 1925 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 1926 | engines: {node: '>=4'} 1927 | 1928 | /mrmime@1.0.0: 1929 | resolution: {integrity: sha512-a70zx7zFfVO7XpnQ2IX1Myh9yY4UYvfld/dikWRnsXxbyvMcfz+u6UfgNAtH+k2QqtJuzVpv6eLTx1G2+WKZbQ==} 1930 | engines: {node: '>=10'} 1931 | 1932 | /ms@2.1.2: 1933 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1934 | 1935 | /nanoid@3.3.4: 1936 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} 1937 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1938 | hasBin: true 1939 | 1940 | /nanoid@3.3.6: 1941 | resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} 1942 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1943 | hasBin: true 1944 | 1945 | /natural-compare@1.4.0: 1946 | resolution: {integrity: sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=} 1947 | dev: true 1948 | 1949 | /no-case@3.0.4: 1950 | resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} 1951 | dependencies: 1952 | lower-case: 2.0.2 1953 | tslib: 2.3.1 1954 | 1955 | /node-releases@2.0.6: 1956 | resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==} 1957 | dev: false 1958 | 1959 | /normalize-path@3.0.0: 1960 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 1961 | engines: {node: '>=0.10.0'} 1962 | 1963 | /normalize-range@0.1.2: 1964 | resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} 1965 | engines: {node: '>=0.10.0'} 1966 | dev: false 1967 | 1968 | /object-hash@3.0.0: 1969 | resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 1970 | engines: {node: '>= 6'} 1971 | dev: false 1972 | 1973 | /once@1.4.0: 1974 | resolution: {integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E=} 1975 | dependencies: 1976 | wrappy: 1.0.2 1977 | dev: true 1978 | 1979 | /optionator@0.9.1: 1980 | resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} 1981 | engines: {node: '>= 0.8.0'} 1982 | dependencies: 1983 | deep-is: 0.1.4 1984 | fast-levenshtein: 2.0.6 1985 | levn: 0.4.1 1986 | prelude-ls: 1.2.1 1987 | type-check: 0.4.0 1988 | word-wrap: 1.2.3 1989 | dev: true 1990 | 1991 | /p-limit@3.1.0: 1992 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1993 | engines: {node: '>=10'} 1994 | dependencies: 1995 | yocto-queue: 0.1.0 1996 | dev: true 1997 | 1998 | /p-locate@5.0.0: 1999 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 2000 | engines: {node: '>=10'} 2001 | dependencies: 2002 | p-limit: 3.1.0 2003 | dev: true 2004 | 2005 | /parent-module@1.0.1: 2006 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 2007 | engines: {node: '>=6'} 2008 | dependencies: 2009 | callsites: 3.1.0 2010 | dev: true 2011 | 2012 | /pascal-case@3.1.2: 2013 | resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} 2014 | dependencies: 2015 | no-case: 3.0.4 2016 | tslib: 2.3.1 2017 | 2018 | /path-exists@4.0.0: 2019 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 2020 | engines: {node: '>=8'} 2021 | dev: true 2022 | 2023 | /path-is-absolute@1.0.1: 2024 | resolution: {integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18=} 2025 | engines: {node: '>=0.10.0'} 2026 | dev: true 2027 | 2028 | /path-key@3.1.1: 2029 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2030 | engines: {node: '>=8'} 2031 | dev: true 2032 | 2033 | /path-parse@1.0.7: 2034 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 2035 | dev: false 2036 | 2037 | /path-type@4.0.0: 2038 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 2039 | engines: {node: '>=8'} 2040 | dev: true 2041 | 2042 | /periscopic@3.1.0: 2043 | resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} 2044 | dependencies: 2045 | '@types/estree': 1.0.1 2046 | estree-walker: 3.0.3 2047 | is-reference: 3.0.1 2048 | 2049 | /phosphor-svelte@1.2.1(svelte@4.1.1): 2050 | resolution: {integrity: sha512-mJDTRr4kBTRYA+SqEAj7rSZ9jbtRWrkqKjn+uYG8Ivhe17LnD685ZehRbQPNdkN8v+T4rjnfnysyKhqn3WXeTw==} 2051 | peerDependencies: 2052 | svelte: '>=3' 2053 | dependencies: 2054 | svelte: 4.1.1 2055 | dev: false 2056 | 2057 | /picocolors@1.0.0: 2058 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 2059 | 2060 | /picomatch@2.3.1: 2061 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 2062 | engines: {node: '>=8.6'} 2063 | 2064 | /pify@2.3.0: 2065 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 2066 | engines: {node: '>=0.10.0'} 2067 | dev: false 2068 | 2069 | /postcss-import@14.1.0(postcss@8.4.18): 2070 | resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} 2071 | engines: {node: '>=10.0.0'} 2072 | peerDependencies: 2073 | postcss: ^8.0.0 2074 | dependencies: 2075 | postcss: 8.4.18 2076 | postcss-value-parser: 4.2.0 2077 | read-cache: 1.0.0 2078 | resolve: 1.22.1 2079 | dev: false 2080 | 2081 | /postcss-js@4.0.0(postcss@8.4.18): 2082 | resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==} 2083 | engines: {node: ^12 || ^14 || >= 16} 2084 | peerDependencies: 2085 | postcss: ^8.3.3 2086 | dependencies: 2087 | camelcase-css: 2.0.1 2088 | postcss: 8.4.18 2089 | dev: false 2090 | 2091 | /postcss-load-config@3.1.4(postcss@8.4.18): 2092 | resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} 2093 | engines: {node: '>= 10'} 2094 | peerDependencies: 2095 | postcss: '>=8.0.9' 2096 | ts-node: '>=9.0.0' 2097 | peerDependenciesMeta: 2098 | postcss: 2099 | optional: true 2100 | ts-node: 2101 | optional: true 2102 | dependencies: 2103 | lilconfig: 2.0.6 2104 | postcss: 8.4.18 2105 | yaml: 1.10.2 2106 | dev: false 2107 | 2108 | /postcss-nested@5.0.6(postcss@8.4.18): 2109 | resolution: {integrity: sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==} 2110 | engines: {node: '>=12.0'} 2111 | peerDependencies: 2112 | postcss: ^8.2.14 2113 | dependencies: 2114 | postcss: 8.4.18 2115 | postcss-selector-parser: 6.0.10 2116 | dev: false 2117 | 2118 | /postcss-selector-parser@6.0.10: 2119 | resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} 2120 | engines: {node: '>=4'} 2121 | dependencies: 2122 | cssesc: 3.0.0 2123 | util-deprecate: 1.0.2 2124 | dev: false 2125 | 2126 | /postcss-value-parser@4.2.0: 2127 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 2128 | dev: false 2129 | 2130 | /postcss@8.4.18: 2131 | resolution: {integrity: sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==} 2132 | engines: {node: ^10 || ^12 || >=14} 2133 | dependencies: 2134 | nanoid: 3.3.4 2135 | picocolors: 1.0.0 2136 | source-map-js: 1.0.2 2137 | 2138 | /postcss@8.4.27: 2139 | resolution: {integrity: sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==} 2140 | engines: {node: ^10 || ^12 || >=14} 2141 | dependencies: 2142 | nanoid: 3.3.6 2143 | picocolors: 1.0.0 2144 | source-map-js: 1.0.2 2145 | 2146 | /prelude-ls@1.2.1: 2147 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 2148 | engines: {node: '>= 0.8.0'} 2149 | dev: true 2150 | 2151 | /prettier-plugin-svelte@3.0.3(prettier@2.6.2)(svelte@4.1.1): 2152 | resolution: {integrity: sha512-dLhieh4obJEK1hnZ6koxF+tMUrZbV5YGvRpf2+OADyanjya5j0z1Llo8iGwiHmFWZVG/hLEw/AJD5chXd9r3XA==} 2153 | peerDependencies: 2154 | prettier: ^3.0.0 2155 | svelte: ^3.2.0 || ^4.0.0-next.0 2156 | dependencies: 2157 | prettier: 2.6.2 2158 | svelte: 4.1.1 2159 | dev: true 2160 | 2161 | /prettier-plugin-svelte@3.0.3(prettier@3.0.0)(svelte@4.1.1): 2162 | resolution: {integrity: sha512-dLhieh4obJEK1hnZ6koxF+tMUrZbV5YGvRpf2+OADyanjya5j0z1Llo8iGwiHmFWZVG/hLEw/AJD5chXd9r3XA==} 2163 | peerDependencies: 2164 | prettier: ^3.0.0 2165 | svelte: ^3.2.0 || ^4.0.0-next.0 2166 | dependencies: 2167 | prettier: 3.0.0 2168 | svelte: 4.1.1 2169 | dev: true 2170 | 2171 | /prettier@2.6.2: 2172 | resolution: {integrity: sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==} 2173 | engines: {node: '>=10.13.0'} 2174 | hasBin: true 2175 | dev: true 2176 | 2177 | /prettier@3.0.0: 2178 | resolution: {integrity: sha512-zBf5eHpwHOGPC47h0zrPyNn+eAEIdEzfywMoYn2XPi0P44Zp0tSq64rq0xAREh4auw2cJZHo9QUob+NqCQky4g==} 2179 | engines: {node: '>=14'} 2180 | hasBin: true 2181 | dev: true 2182 | 2183 | /prism-svelte@0.5.0: 2184 | resolution: {integrity: sha512-db91Bf3pRGKDPz1lAqLFSJXeW13mulUJxhycysFpfXV5MIK7RgWWK2E5aPAa71s8TCzQUXxF5JOV42/iOs6QkA==} 2185 | dev: false 2186 | 2187 | /prismjs@1.29.0: 2188 | resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} 2189 | engines: {node: '>=6'} 2190 | dev: false 2191 | 2192 | /punycode@2.1.1: 2193 | resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} 2194 | engines: {node: '>=6'} 2195 | dev: true 2196 | 2197 | /queue-microtask@1.2.3: 2198 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 2199 | 2200 | /quick-lru@5.1.1: 2201 | resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} 2202 | engines: {node: '>=10'} 2203 | dev: false 2204 | 2205 | /read-cache@1.0.0: 2206 | resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} 2207 | dependencies: 2208 | pify: 2.3.0 2209 | dev: false 2210 | 2211 | /readdirp@3.6.0: 2212 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 2213 | engines: {node: '>=8.10.0'} 2214 | dependencies: 2215 | picomatch: 2.3.1 2216 | 2217 | /regenerator-runtime@0.13.10: 2218 | resolution: {integrity: sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==} 2219 | dev: false 2220 | 2221 | /regexparam@2.0.1: 2222 | resolution: {integrity: sha512-zRgSaYemnNYxUv+/5SeoHI0eJIgTL/A2pUtXUPLHQxUldagouJ9p+K6IbIZ/JiQuCEv2E2B1O11SjVQy3aMCkw==} 2223 | engines: {node: '>=8'} 2224 | 2225 | /regexpp@3.2.0: 2226 | resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} 2227 | engines: {node: '>=8'} 2228 | dev: true 2229 | 2230 | /remove-accents@0.4.2: 2231 | resolution: {integrity: sha1-CkPTqq4egNuRngeuJUsoXZ4ce7U=} 2232 | dev: false 2233 | 2234 | /resolve-from@4.0.0: 2235 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 2236 | engines: {node: '>=4'} 2237 | dev: true 2238 | 2239 | /resolve@1.22.1: 2240 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 2241 | hasBin: true 2242 | dependencies: 2243 | is-core-module: 2.10.0 2244 | path-parse: 1.0.7 2245 | supports-preserve-symlinks-flag: 1.0.0 2246 | dev: false 2247 | 2248 | /reusify@1.0.4: 2249 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 2250 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 2251 | 2252 | /rimraf@2.7.1: 2253 | resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} 2254 | hasBin: true 2255 | dependencies: 2256 | glob: 7.2.0 2257 | dev: true 2258 | 2259 | /rimraf@3.0.2: 2260 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 2261 | hasBin: true 2262 | dependencies: 2263 | glob: 7.2.0 2264 | dev: true 2265 | 2266 | /rollup@3.27.0: 2267 | resolution: {integrity: sha512-aOltLCrYZ0FhJDm7fCqwTjIUEVjWjcydKBV/Zeid6Mn8BWgDCUBBWT5beM5ieForYNo/1ZHuGJdka26kvQ3Gzg==} 2268 | engines: {node: '>=14.18.0', npm: '>=8.0.0'} 2269 | hasBin: true 2270 | optionalDependencies: 2271 | fsevents: 2.3.2 2272 | 2273 | /run-parallel@1.2.0: 2274 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 2275 | dependencies: 2276 | queue-microtask: 1.2.3 2277 | 2278 | /sade@1.8.1: 2279 | resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 2280 | engines: {node: '>=6'} 2281 | dependencies: 2282 | mri: 1.2.0 2283 | 2284 | /sander@0.5.1: 2285 | resolution: {integrity: sha1-dB4kXiMfB8r7b98PEzrfohalAq0=} 2286 | dependencies: 2287 | es6-promise: 3.3.1 2288 | graceful-fs: 4.2.10 2289 | mkdirp: 0.5.6 2290 | rimraf: 2.7.1 2291 | dev: true 2292 | 2293 | /semver@7.3.8: 2294 | resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} 2295 | engines: {node: '>=10'} 2296 | hasBin: true 2297 | dependencies: 2298 | lru-cache: 6.0.0 2299 | dev: true 2300 | 2301 | /semver@7.5.4: 2302 | resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} 2303 | engines: {node: '>=10'} 2304 | hasBin: true 2305 | dependencies: 2306 | lru-cache: 6.0.0 2307 | 2308 | /set-cookie-parser@2.6.0: 2309 | resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==} 2310 | 2311 | /shebang-command@2.0.0: 2312 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 2313 | engines: {node: '>=8'} 2314 | dependencies: 2315 | shebang-regex: 3.0.0 2316 | dev: true 2317 | 2318 | /shebang-regex@3.0.0: 2319 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 2320 | engines: {node: '>=8'} 2321 | dev: true 2322 | 2323 | /simple-swizzle@0.2.2: 2324 | resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} 2325 | dependencies: 2326 | is-arrayish: 0.3.2 2327 | dev: false 2328 | 2329 | /sirv@2.0.2: 2330 | resolution: {integrity: sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==} 2331 | engines: {node: '>= 10'} 2332 | dependencies: 2333 | '@polka/url': 1.0.0-next.21 2334 | mrmime: 1.0.0 2335 | totalist: 3.0.0 2336 | 2337 | /slash@3.0.0: 2338 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 2339 | engines: {node: '>=8'} 2340 | dev: true 2341 | 2342 | /sorcery@0.11.0: 2343 | resolution: {integrity: sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==} 2344 | hasBin: true 2345 | dependencies: 2346 | '@jridgewell/sourcemap-codec': 1.4.15 2347 | buffer-crc32: 0.2.13 2348 | minimist: 1.2.6 2349 | sander: 0.5.1 2350 | dev: true 2351 | 2352 | /source-map-js@1.0.2: 2353 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 2354 | engines: {node: '>=0.10.0'} 2355 | 2356 | /streamsearch@1.1.0: 2357 | resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} 2358 | engines: {node: '>=10.0.0'} 2359 | 2360 | /strip-ansi@6.0.1: 2361 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 2362 | engines: {node: '>=8'} 2363 | dependencies: 2364 | ansi-regex: 5.0.1 2365 | dev: true 2366 | 2367 | /strip-indent@3.0.0: 2368 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} 2369 | engines: {node: '>=8'} 2370 | dependencies: 2371 | min-indent: 1.0.1 2372 | dev: true 2373 | 2374 | /strip-json-comments@3.1.1: 2375 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 2376 | engines: {node: '>=8'} 2377 | dev: true 2378 | 2379 | /supports-color@7.2.0: 2380 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 2381 | engines: {node: '>=8'} 2382 | dependencies: 2383 | has-flag: 4.0.0 2384 | dev: true 2385 | 2386 | /supports-preserve-symlinks-flag@1.0.0: 2387 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 2388 | engines: {node: '>= 0.4'} 2389 | dev: false 2390 | 2391 | /svelte-check@3.4.6(postcss@8.4.18)(svelte@4.1.1): 2392 | resolution: {integrity: sha512-OBlY8866Zh1zHQTkBMPS6psPi7o2umTUyj6JWm4SacnIHXpWFm658pG32m3dKvKFL49V4ntAkfFHKo4ztH07og==} 2393 | hasBin: true 2394 | peerDependencies: 2395 | svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0 2396 | dependencies: 2397 | '@jridgewell/trace-mapping': 0.3.18 2398 | chokidar: 3.5.3 2399 | fast-glob: 3.2.11 2400 | import-fresh: 3.3.0 2401 | picocolors: 1.0.0 2402 | sade: 1.8.1 2403 | svelte: 4.1.1 2404 | svelte-preprocess: 5.0.4(postcss@8.4.18)(svelte@4.1.1)(typescript@5.1.6) 2405 | typescript: 5.1.6 2406 | transitivePeerDependencies: 2407 | - '@babel/core' 2408 | - coffeescript 2409 | - less 2410 | - postcss 2411 | - postcss-load-config 2412 | - pug 2413 | - sass 2414 | - stylus 2415 | - sugarss 2416 | dev: true 2417 | 2418 | /svelte-hmr@0.15.2(svelte@4.1.1): 2419 | resolution: {integrity: sha512-q/bAruCvFLwvNbeE1x3n37TYFb3mTBJ6TrCq6p2CoFbSTNhDE9oAtEfpy+wmc9So8AG0Tja+X0/mJzX9tSfvIg==} 2420 | engines: {node: ^12.20 || ^14.13.1 || >= 16} 2421 | peerDependencies: 2422 | svelte: ^3.19.0 || ^4.0.0-next.0 2423 | dependencies: 2424 | svelte: 4.1.1 2425 | 2426 | /svelte-icons@2.1.0: 2427 | resolution: {integrity: sha512-rHPQjweEc9fGSnvM0/4gA3pDHwyZyYsC5KhttCZRhSMJfLttJST5Uq0B16Czhw+HQ+HbSOk8kLigMlPs7gZtfg==} 2428 | dev: false 2429 | 2430 | /svelte-preprocess@5.0.4(postcss@8.4.18)(svelte@4.1.1)(typescript@5.1.6): 2431 | resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==} 2432 | engines: {node: '>= 14.10.0'} 2433 | requiresBuild: true 2434 | peerDependencies: 2435 | '@babel/core': ^7.10.2 2436 | coffeescript: ^2.5.1 2437 | less: ^3.11.3 || ^4.0.0 2438 | postcss: ^7 || ^8 2439 | postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 2440 | pug: ^3.0.0 2441 | sass: ^1.26.8 2442 | stylus: ^0.55.0 2443 | sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 2444 | svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0 2445 | typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0' 2446 | peerDependenciesMeta: 2447 | '@babel/core': 2448 | optional: true 2449 | coffeescript: 2450 | optional: true 2451 | less: 2452 | optional: true 2453 | postcss: 2454 | optional: true 2455 | postcss-load-config: 2456 | optional: true 2457 | pug: 2458 | optional: true 2459 | sass: 2460 | optional: true 2461 | stylus: 2462 | optional: true 2463 | sugarss: 2464 | optional: true 2465 | typescript: 2466 | optional: true 2467 | dependencies: 2468 | '@types/pug': 2.0.6 2469 | detect-indent: 6.1.0 2470 | magic-string: 0.27.0 2471 | postcss: 8.4.18 2472 | sorcery: 0.11.0 2473 | strip-indent: 3.0.0 2474 | svelte: 4.1.1 2475 | typescript: 5.1.6 2476 | dev: true 2477 | 2478 | /svelte-themes@1.0.10: 2479 | resolution: {integrity: sha512-qF3nYlty2ZV2XYPbL6LU7vG0P9zfVFo9v2BC2ah/iV7wDHs31HkNVu/YzOelp3VrckEloUWf/uQu31O7g1klbg==} 2480 | dev: false 2481 | 2482 | /svelte2tsx@0.6.19(svelte@4.1.1)(typescript@5.1.6): 2483 | resolution: {integrity: sha512-h3b5OtcO8zyVL/RiB2zsDwCopeo/UH+887uyhgb2mjnewOFwiTxu+4IGuVwrrlyuh2onM2ktfUemNrNmQwXONQ==} 2484 | peerDependencies: 2485 | svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 2486 | typescript: ^4.9.4 || ^5.0.0 2487 | dependencies: 2488 | dedent-js: 1.0.1 2489 | pascal-case: 3.1.2 2490 | svelte: 4.1.1 2491 | typescript: 5.1.6 2492 | 2493 | /svelte@4.1.1: 2494 | resolution: {integrity: sha512-Enick5fPFISLoVy0MFK45cG+YlQt6upw8skEK9zzTpJnH1DqEv8xOZwizCGSo3Q6HZ7KrZTM0J18poF7aQg5zw==} 2495 | engines: {node: '>=16'} 2496 | dependencies: 2497 | '@ampproject/remapping': 2.2.1 2498 | '@jridgewell/sourcemap-codec': 1.4.15 2499 | '@jridgewell/trace-mapping': 0.3.18 2500 | acorn: 8.10.0 2501 | aria-query: 5.3.0 2502 | axobject-query: 3.2.1 2503 | code-red: 1.0.3 2504 | css-tree: 2.3.1 2505 | estree-walker: 3.0.3 2506 | is-reference: 3.0.1 2507 | locate-character: 3.0.0 2508 | magic-string: 0.30.2 2509 | periscopic: 3.1.0 2510 | 2511 | /tailwindcss@3.1.8(postcss@8.4.18): 2512 | resolution: {integrity: sha512-YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==} 2513 | engines: {node: '>=12.13.0'} 2514 | hasBin: true 2515 | peerDependencies: 2516 | postcss: ^8.0.9 2517 | dependencies: 2518 | arg: 5.0.2 2519 | chokidar: 3.5.3 2520 | color-name: 1.1.4 2521 | detective: 5.2.1 2522 | didyoumean: 1.2.2 2523 | dlv: 1.1.3 2524 | fast-glob: 3.2.11 2525 | glob-parent: 6.0.2 2526 | is-glob: 4.0.3 2527 | lilconfig: 2.0.6 2528 | normalize-path: 3.0.0 2529 | object-hash: 3.0.0 2530 | picocolors: 1.0.0 2531 | postcss: 8.4.18 2532 | postcss-import: 14.1.0(postcss@8.4.18) 2533 | postcss-js: 4.0.0(postcss@8.4.18) 2534 | postcss-load-config: 3.1.4(postcss@8.4.18) 2535 | postcss-nested: 5.0.6(postcss@8.4.18) 2536 | postcss-selector-parser: 6.0.10 2537 | postcss-value-parser: 4.2.0 2538 | quick-lru: 5.1.1 2539 | resolve: 1.22.1 2540 | transitivePeerDependencies: 2541 | - ts-node 2542 | dev: false 2543 | 2544 | /text-table@0.2.0: 2545 | resolution: {integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=} 2546 | dev: true 2547 | 2548 | /to-regex-range@5.0.1: 2549 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 2550 | engines: {node: '>=8.0'} 2551 | dependencies: 2552 | is-number: 7.0.0 2553 | 2554 | /totalist@3.0.0: 2555 | resolution: {integrity: sha512-eM+pCBxXO/njtF7vdFsHuqb+ElbxqtI4r5EAvk6grfAFyJ6IvWlSkfZ5T9ozC6xWw3Fj1fGoSmrl0gUs46JVIw==} 2556 | engines: {node: '>=6'} 2557 | 2558 | /tslib@1.14.1: 2559 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 2560 | dev: true 2561 | 2562 | /tslib@2.3.1: 2563 | resolution: {integrity: sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==} 2564 | 2565 | /tsutils@3.21.0(typescript@5.1.6): 2566 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 2567 | engines: {node: '>= 6'} 2568 | peerDependencies: 2569 | typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' 2570 | dependencies: 2571 | tslib: 1.14.1 2572 | typescript: 5.1.6 2573 | dev: true 2574 | 2575 | /type-check@0.4.0: 2576 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 2577 | engines: {node: '>= 0.8.0'} 2578 | dependencies: 2579 | prelude-ls: 1.2.1 2580 | dev: true 2581 | 2582 | /type-fest@0.20.2: 2583 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 2584 | engines: {node: '>=10'} 2585 | dev: true 2586 | 2587 | /type-fest@2.12.2: 2588 | resolution: {integrity: sha512-qt6ylCGpLjZ7AaODxbpyBZSs9fCI9SkL3Z9q2oxMBQhs/uyY+VD8jHA8ULCGmWQJlBgqvO3EJeAngOHD8zQCrQ==} 2589 | engines: {node: '>=12.20'} 2590 | 2591 | /typescript@5.1.6: 2592 | resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} 2593 | engines: {node: '>=14.17'} 2594 | hasBin: true 2595 | 2596 | /undici@5.22.0: 2597 | resolution: {integrity: sha512-fR9RXCc+6Dxav4P9VV/sp5w3eFiSdOjJYsbtWfd4s5L5C4ogyuVpdKIVHeW0vV1MloM65/f7W45nR9ZxwVdyiA==} 2598 | engines: {node: '>=14.0'} 2599 | dependencies: 2600 | busboy: 1.6.0 2601 | 2602 | /update-browserslist-db@1.0.10(browserslist@4.21.4): 2603 | resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} 2604 | hasBin: true 2605 | peerDependencies: 2606 | browserslist: '>= 4.21.0' 2607 | dependencies: 2608 | browserslist: 4.21.4 2609 | escalade: 3.1.1 2610 | picocolors: 1.0.0 2611 | dev: false 2612 | 2613 | /uri-js@4.4.1: 2614 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 2615 | dependencies: 2616 | punycode: 2.1.1 2617 | dev: true 2618 | 2619 | /util-deprecate@1.0.2: 2620 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 2621 | dev: false 2622 | 2623 | /vite@4.4.7: 2624 | resolution: {integrity: sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==} 2625 | engines: {node: ^14.18.0 || >=16.0.0} 2626 | hasBin: true 2627 | peerDependencies: 2628 | '@types/node': '>= 14' 2629 | less: '*' 2630 | lightningcss: ^1.21.0 2631 | sass: '*' 2632 | stylus: '*' 2633 | sugarss: '*' 2634 | terser: ^5.4.0 2635 | peerDependenciesMeta: 2636 | '@types/node': 2637 | optional: true 2638 | less: 2639 | optional: true 2640 | lightningcss: 2641 | optional: true 2642 | sass: 2643 | optional: true 2644 | stylus: 2645 | optional: true 2646 | sugarss: 2647 | optional: true 2648 | terser: 2649 | optional: true 2650 | dependencies: 2651 | esbuild: 0.18.17 2652 | postcss: 8.4.27 2653 | rollup: 3.27.0 2654 | optionalDependencies: 2655 | fsevents: 2.3.2 2656 | 2657 | /vitefu@0.2.4(vite@4.4.7): 2658 | resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} 2659 | peerDependencies: 2660 | vite: ^3.0.0 || ^4.0.0 2661 | peerDependenciesMeta: 2662 | vite: 2663 | optional: true 2664 | dependencies: 2665 | vite: 4.4.7 2666 | 2667 | /which@2.0.2: 2668 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 2669 | engines: {node: '>= 8'} 2670 | hasBin: true 2671 | dependencies: 2672 | isexe: 2.0.0 2673 | dev: true 2674 | 2675 | /word-wrap@1.2.3: 2676 | resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} 2677 | engines: {node: '>=0.10.0'} 2678 | dev: true 2679 | 2680 | /worktop@0.8.0-next.14: 2681 | resolution: {integrity: sha512-RZgqHu1w/JcUdWOE/BUEAzarrUUHh39eWkLdX8XpA6MfgLJF6X5Vl26CV7/wcm4O/UpZvHMGJUtB9eYTqDjc9g==} 2682 | engines: {node: '>=12'} 2683 | dependencies: 2684 | mrmime: 1.0.0 2685 | regexparam: 2.0.1 2686 | dev: true 2687 | 2688 | /worktop@0.8.0-next.15: 2689 | resolution: {integrity: sha512-0ycNO52P6nVwsjr1y20zuf0nqJatAb8L7MODBfQIxbxndHV5O4s50oZZMHWhJG1RLpHwbK0Epq8aaQK4E2GlgQ==} 2690 | engines: {node: '>=12'} 2691 | dependencies: 2692 | mrmime: 1.0.0 2693 | regexparam: 2.0.1 2694 | dev: false 2695 | 2696 | /wrappy@1.0.2: 2697 | resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=} 2698 | dev: true 2699 | 2700 | /xtend@4.0.2: 2701 | resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} 2702 | engines: {node: '>=0.4'} 2703 | dev: false 2704 | 2705 | /yallist@4.0.0: 2706 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 2707 | 2708 | /yaml@1.10.2: 2709 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} 2710 | engines: {node: '>= 6'} 2711 | dev: false 2712 | 2713 | /yocto-queue@0.1.0: 2714 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 2715 | engines: {node: '>=10'} 2716 | dev: true 2717 | -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - "svelte-spotlight" 3 | - "documentation" 4 | -------------------------------------------------------------------------------- /svelte-spotlight/.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 | -------------------------------------------------------------------------------- /svelte-spotlight/.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | parser: '@typescript-eslint/parser', 4 | extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'prettier'], 5 | plugins: ['svelte3', '@typescript-eslint'], 6 | ignorePatterns: ['*.cjs'], 7 | overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }], 8 | settings: { 9 | 'svelte3/typescript': () => require('typescript') 10 | }, 11 | parserOptions: { 12 | sourceType: 'module', 13 | ecmaVersion: 2020 14 | }, 15 | env: { 16 | browser: true, 17 | es2017: true, 18 | node: true 19 | } 20 | }; 21 | -------------------------------------------------------------------------------- /svelte-spotlight/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /.svelte-kit 4 | .svelte-kit 5 | /build 6 | /dist 7 | /package 8 | .env 9 | .env.* 10 | !.env.example 11 | -------------------------------------------------------------------------------- /svelte-spotlight/.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /svelte-spotlight/.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 | -------------------------------------------------------------------------------- /svelte-spotlight/.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 | -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/ambient.d.ts: -------------------------------------------------------------------------------- 1 | 2 | // this file is generated — do not edit it 3 | 4 | 5 | /// 6 | 7 | /** 8 | * Environment variables [loaded by Vite](https://vitejs.dev/guide/env-and-mode.html#env-files) from `.env` files and `process.env`. Like [`$env/dynamic/private`](https://kit.svelte.dev/docs/modules#$env-dynamic-private), this module cannot be imported into client-side code. This module only includes variables that _do not_ begin with [`config.kit.env.publicPrefix`](https://kit.svelte.dev/docs/configuration#env) _and do_ start with [`config.kit.env.privatePrefix`](https://kit.svelte.dev/docs/configuration#env) (if configured). 9 | * 10 | * _Unlike_ [`$env/dynamic/private`](https://kit.svelte.dev/docs/modules#$env-dynamic-private), the values exported from this module are statically injected into your bundle at build time, enabling optimisations like dead code elimination. 11 | * 12 | * ```ts 13 | * import { API_KEY } from '$env/static/private'; 14 | * ``` 15 | * 16 | * Note that all environment variables referenced in your code should be declared (for example in an `.env` file), even if they don't have a value until the app is deployed: 17 | * 18 | * ``` 19 | * MY_FEATURE_FLAG="" 20 | * ``` 21 | * 22 | * You can override `.env` values from the command line like so: 23 | * 24 | * ```bash 25 | * MY_FEATURE_FLAG="enabled" npm run dev 26 | * ``` 27 | */ 28 | declare module '$env/static/private' { 29 | export const FIG_PID: string; 30 | export const LC_FIG_SET_PARENT: string; 31 | export const MANPATH: string; 32 | export const npm_package_devDependencies_prettier: string; 33 | export const rvm_use_flag: string; 34 | export const TERM_PROGRAM: string; 35 | export const rvm_bin_path: string; 36 | export const FNM_LOGLEVEL: string; 37 | export const NODE: string; 38 | export const NVM_CD_FLAGS: string; 39 | export const rvm_quiet_flag: string; 40 | export const npm_package_devDependencies_prettier_plugin_svelte: string; 41 | export const npm_package_devDependencies_typescript: string; 42 | export const INIT_CWD: string; 43 | export const SHELL: string; 44 | export const TERM: string; 45 | export const rvm_gemstone_url: string; 46 | export const npm_package_devDependencies_vite: string; 47 | export const FIGTERM_SESSION_ID: string; 48 | export const FNM_NODE_DIST_MIRROR: string; 49 | export const HOMEBREW_REPOSITORY: string; 50 | export const TMPDIR: string; 51 | export const rvm_docs_type: string; 52 | export const npm_package_scripts_lint: string; 53 | export const TERM_PROGRAM_VERSION: string; 54 | export const npm_package_devDependencies_eslint_plugin_svelte3: string; 55 | export const npm_package_scripts_dev: string; 56 | export const MallocNanoZone: string; 57 | export const ORIGINAL_XDG_CURRENT_DESKTOP: string; 58 | export const ZDOTDIR: string; 59 | export const rvm_hook: string; 60 | export const npm_package_devDependencies__sveltejs_kit: string; 61 | export const npm_package_devDependencies_svelte_preprocess: string; 62 | export const npm_package_exports___svelte: string; 63 | export const npm_config_registry: string; 64 | export const FIG_SET_PARENT_CHECK: string; 65 | export const PNPM_HOME: string; 66 | export const NVM_DIR: string; 67 | export const USER: string; 68 | export const npm_config_python: string; 69 | export const rvm_gemstone_package_file: string; 70 | export const npm_package_scripts_check_watch: string; 71 | export const npm_package_exports___package_json: string; 72 | export const npm_package_peerDependencies_esm_env: string; 73 | export const COMMAND_MODE: string; 74 | export const PNPM_SCRIPT_SRC_DIR: string; 75 | export const rvm_path: string; 76 | export const npm_package_devDependencies_esm_env: string; 77 | export const SSH_AUTH_SOCK: string; 78 | export const __CF_USER_TEXT_ENCODING: string; 79 | export const npm_package_devDependencies_eslint: string; 80 | export const rvm_proxy: string; 81 | export const npm_package_devDependencies__typescript_eslint_eslint_plugin: string; 82 | export const npm_package_devDependencies_tslib: string; 83 | export const npm_execpath: string; 84 | export const PAGER: string; 85 | export const rvm_ruby_file: string; 86 | export const npm_package_devDependencies_svelte: string; 87 | export const FNM_VERSION_FILE_STRATEGY: string; 88 | export const LSCOLORS: string; 89 | export const FNM_ARCH: string; 90 | export const rvm_prefix: string; 91 | export const rvm_silent_flag: string; 92 | export const npm_package_devDependencies__typescript_eslint_parser: string; 93 | export const PATH: string; 94 | export const rvm_ruby_make: string; 95 | export const npm_package_devDependencies_type_fest: string; 96 | export const npm_config_engine_strict: string; 97 | export const USER_ZDOTDIR: string; 98 | export const __CFBundleIdentifier: string; 99 | export const PWD: string; 100 | export const TTY: string; 101 | export const npm_command: string; 102 | export const npm_package_devDependencies__sveltejs_package: string; 103 | export const npm_package_scripts_pub: string; 104 | export const npm_lifecycle_event: string; 105 | export const LANG: string; 106 | export const rvm_sdk: string; 107 | export const npm_package_name: string; 108 | export const npm_package_svelte: string; 109 | export const npm_package_types: string; 110 | export const NODE_PATH: string; 111 | export const npm_package_scripts_build: string; 112 | export const npm_package_exports___types: string; 113 | export const FNM_MULTISHELL_PATH: string; 114 | export const VSCODE_GIT_ASKPASS_EXTRA_ARGS: string; 115 | export const XPC_FLAGS: string; 116 | export const npm_package_devDependencies_eslint_config_prettier: string; 117 | export const npm_config_node_gyp: string; 118 | export const XPC_SERVICE_NAME: string; 119 | export const npm_package_version: string; 120 | export const npm_package_devDependencies__sveltejs_adapter_auto: string; 121 | export const VSCODE_INJECTION: string; 122 | export const rvm_version: string; 123 | export const npm_package_devDependencies_svelte_check: string; 124 | export const HOME: string; 125 | export const SHLVL: string; 126 | export const rvm_pretty_print_flag: string; 127 | export const rvm_script_name: string; 128 | export const npm_package_type: string; 129 | export const VSCODE_GIT_ASKPASS_MAIN: string; 130 | export const rvm_ruby_mode: string; 131 | export const npm_package_typesVersions_____0: string; 132 | export const HOMEBREW_PREFIX: string; 133 | export const FNM_DIR: string; 134 | export const FIG_SET_PARENT: string; 135 | export const npm_package_exports___default: string; 136 | export const LESS: string; 137 | export const LOGNAME: string; 138 | export const npm_package_scripts_format: string; 139 | export const npm_package_devDependencies__sveltejs_adapter_cloudflare: string; 140 | export const rvm_alias_expanded: string; 141 | export const npm_package_peerDependencies_svelte: string; 142 | export const npm_lifecycle_script: string; 143 | export const LC_CTYPE: string; 144 | export const VSCODE_GIT_IPC_HANDLE: string; 145 | export const BUN_INSTALL: string; 146 | export const rvm_nightly_flag: string; 147 | export const npm_config_user_agent: string; 148 | export const GIT_ASKPASS: string; 149 | export const HOMEBREW_CELLAR: string; 150 | export const INFOPATH: string; 151 | export const VSCODE_GIT_ASKPASS_NODE: string; 152 | export const rvm_ruby_make_install: string; 153 | export const rvm_niceness: string; 154 | export const npm_package_scripts_build_watch: string; 155 | export const rvm_ruby_bits: string; 156 | export const npm_package_files_0: string; 157 | export const rvm_bin_flag: string; 158 | export const rvm_only_path_flag: string; 159 | export const npm_config_init_author_name: string; 160 | export const npm_package_scripts_check: string; 161 | export const COLORTERM: string; 162 | export const FIG_TERM: string; 163 | export const npm_node_execpath: string; 164 | } 165 | 166 | /** 167 | * Similar to [`$env/static/private`](https://kit.svelte.dev/docs/modules#$env-static-private), except that it only includes environment variables that begin with [`config.kit.env.publicPrefix`](https://kit.svelte.dev/docs/configuration#env) (which defaults to `PUBLIC_`), and can therefore safely be exposed to client-side code. 168 | * 169 | * Values are replaced statically at build time. 170 | * 171 | * ```ts 172 | * import { PUBLIC_BASE_URL } from '$env/static/public'; 173 | * ``` 174 | */ 175 | declare module '$env/static/public' { 176 | 177 | } 178 | 179 | /** 180 | * This module provides access to runtime environment variables, as defined by the platform you're running on. For example if you're using [`adapter-node`](https://github.com/sveltejs/kit/tree/master/packages/adapter-node) (or running [`vite preview`](https://kit.svelte.dev/docs/cli)), this is equivalent to `process.env`. This module only includes variables that _do not_ begin with [`config.kit.env.publicPrefix`](https://kit.svelte.dev/docs/configuration#env) _and do_ start with [`config.kit.env.privatePrefix`](https://kit.svelte.dev/docs/configuration#env) (if configured). 181 | * 182 | * This module cannot be imported into client-side code. 183 | * 184 | * ```ts 185 | * import { env } from '$env/dynamic/private'; 186 | * console.log(env.DEPLOYMENT_SPECIFIC_VARIABLE); 187 | * ``` 188 | * 189 | * > In `dev`, `$env/dynamic` always includes environment variables from `.env`. In `prod`, this behavior will depend on your adapter. 190 | */ 191 | declare module '$env/dynamic/private' { 192 | export const env: { 193 | FIG_PID: string; 194 | LC_FIG_SET_PARENT: string; 195 | MANPATH: string; 196 | npm_package_devDependencies_prettier: string; 197 | rvm_use_flag: string; 198 | TERM_PROGRAM: string; 199 | rvm_bin_path: string; 200 | FNM_LOGLEVEL: string; 201 | NODE: string; 202 | NVM_CD_FLAGS: string; 203 | rvm_quiet_flag: string; 204 | npm_package_devDependencies_prettier_plugin_svelte: string; 205 | npm_package_devDependencies_typescript: string; 206 | INIT_CWD: string; 207 | SHELL: string; 208 | TERM: string; 209 | rvm_gemstone_url: string; 210 | npm_package_devDependencies_vite: string; 211 | FIGTERM_SESSION_ID: string; 212 | FNM_NODE_DIST_MIRROR: string; 213 | HOMEBREW_REPOSITORY: string; 214 | TMPDIR: string; 215 | rvm_docs_type: string; 216 | npm_package_scripts_lint: string; 217 | TERM_PROGRAM_VERSION: string; 218 | npm_package_devDependencies_eslint_plugin_svelte3: string; 219 | npm_package_scripts_dev: string; 220 | MallocNanoZone: string; 221 | ORIGINAL_XDG_CURRENT_DESKTOP: string; 222 | ZDOTDIR: string; 223 | rvm_hook: string; 224 | npm_package_devDependencies__sveltejs_kit: string; 225 | npm_package_devDependencies_svelte_preprocess: string; 226 | npm_package_exports___svelte: string; 227 | npm_config_registry: string; 228 | FIG_SET_PARENT_CHECK: string; 229 | PNPM_HOME: string; 230 | NVM_DIR: string; 231 | USER: string; 232 | npm_config_python: string; 233 | rvm_gemstone_package_file: string; 234 | npm_package_scripts_check_watch: string; 235 | npm_package_exports___package_json: string; 236 | npm_package_peerDependencies_esm_env: string; 237 | COMMAND_MODE: string; 238 | PNPM_SCRIPT_SRC_DIR: string; 239 | rvm_path: string; 240 | npm_package_devDependencies_esm_env: string; 241 | SSH_AUTH_SOCK: string; 242 | __CF_USER_TEXT_ENCODING: string; 243 | npm_package_devDependencies_eslint: string; 244 | rvm_proxy: string; 245 | npm_package_devDependencies__typescript_eslint_eslint_plugin: string; 246 | npm_package_devDependencies_tslib: string; 247 | npm_execpath: string; 248 | PAGER: string; 249 | rvm_ruby_file: string; 250 | npm_package_devDependencies_svelte: string; 251 | FNM_VERSION_FILE_STRATEGY: string; 252 | LSCOLORS: string; 253 | FNM_ARCH: string; 254 | rvm_prefix: string; 255 | rvm_silent_flag: string; 256 | npm_package_devDependencies__typescript_eslint_parser: string; 257 | PATH: string; 258 | rvm_ruby_make: string; 259 | npm_package_devDependencies_type_fest: string; 260 | npm_config_engine_strict: string; 261 | USER_ZDOTDIR: string; 262 | __CFBundleIdentifier: string; 263 | PWD: string; 264 | TTY: string; 265 | npm_command: string; 266 | npm_package_devDependencies__sveltejs_package: string; 267 | npm_package_scripts_pub: string; 268 | npm_lifecycle_event: string; 269 | LANG: string; 270 | rvm_sdk: string; 271 | npm_package_name: string; 272 | npm_package_svelte: string; 273 | npm_package_types: string; 274 | NODE_PATH: string; 275 | npm_package_scripts_build: string; 276 | npm_package_exports___types: string; 277 | FNM_MULTISHELL_PATH: string; 278 | VSCODE_GIT_ASKPASS_EXTRA_ARGS: string; 279 | XPC_FLAGS: string; 280 | npm_package_devDependencies_eslint_config_prettier: string; 281 | npm_config_node_gyp: string; 282 | XPC_SERVICE_NAME: string; 283 | npm_package_version: string; 284 | npm_package_devDependencies__sveltejs_adapter_auto: string; 285 | VSCODE_INJECTION: string; 286 | rvm_version: string; 287 | npm_package_devDependencies_svelte_check: string; 288 | HOME: string; 289 | SHLVL: string; 290 | rvm_pretty_print_flag: string; 291 | rvm_script_name: string; 292 | npm_package_type: string; 293 | VSCODE_GIT_ASKPASS_MAIN: string; 294 | rvm_ruby_mode: string; 295 | npm_package_typesVersions_____0: string; 296 | HOMEBREW_PREFIX: string; 297 | FNM_DIR: string; 298 | FIG_SET_PARENT: string; 299 | npm_package_exports___default: string; 300 | LESS: string; 301 | LOGNAME: string; 302 | npm_package_scripts_format: string; 303 | npm_package_devDependencies__sveltejs_adapter_cloudflare: string; 304 | rvm_alias_expanded: string; 305 | npm_package_peerDependencies_svelte: string; 306 | npm_lifecycle_script: string; 307 | LC_CTYPE: string; 308 | VSCODE_GIT_IPC_HANDLE: string; 309 | BUN_INSTALL: string; 310 | rvm_nightly_flag: string; 311 | npm_config_user_agent: string; 312 | GIT_ASKPASS: string; 313 | HOMEBREW_CELLAR: string; 314 | INFOPATH: string; 315 | VSCODE_GIT_ASKPASS_NODE: string; 316 | rvm_ruby_make_install: string; 317 | rvm_niceness: string; 318 | npm_package_scripts_build_watch: string; 319 | rvm_ruby_bits: string; 320 | npm_package_files_0: string; 321 | rvm_bin_flag: string; 322 | rvm_only_path_flag: string; 323 | npm_config_init_author_name: string; 324 | npm_package_scripts_check: string; 325 | COLORTERM: string; 326 | FIG_TERM: string; 327 | npm_node_execpath: string; 328 | [key: `PUBLIC_${string}`]: undefined; 329 | [key: `${string}`]: string | undefined; 330 | } 331 | } 332 | 333 | /** 334 | * Similar to [`$env/dynamic/private`](https://kit.svelte.dev/docs/modules#$env-dynamic-private), but only includes variables that begin with [`config.kit.env.publicPrefix`](https://kit.svelte.dev/docs/configuration#env) (which defaults to `PUBLIC_`), and can therefore safely be exposed to client-side code. 335 | * 336 | * Note that public dynamic environment variables must all be sent from the server to the client, causing larger network requests — when possible, use `$env/static/public` instead. 337 | * 338 | * ```ts 339 | * import { env } from '$env/dynamic/public'; 340 | * console.log(env.PUBLIC_DEPLOYMENT_SPECIFIC_VARIABLE); 341 | * ``` 342 | */ 343 | declare module '$env/dynamic/public' { 344 | export const env: { 345 | [key: `PUBLIC_${string}`]: string | undefined; 346 | } 347 | } 348 | -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/generated/client-manifest.js: -------------------------------------------------------------------------------- 1 | export { matchers } from './client-matchers.js'; 2 | 3 | export const nodes = [() => import('./nodes/0'), 4 | () => import('./nodes/1'), 5 | () => import('./nodes/2')]; 6 | 7 | export const server_loads = []; 8 | 9 | export const dictionary = { 10 | "": [2] 11 | }; 12 | 13 | export const hooks = { 14 | handleError: (({ error }) => { console.error(error) }), 15 | }; -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/generated/client-matchers.js: -------------------------------------------------------------------------------- 1 | export const matchers = {}; -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/generated/nodes/0.js: -------------------------------------------------------------------------------- 1 | export { default as component } from "../../../../node_modules/.pnpm/@sveltejs+kit@1.0.0-next.516_svelte@3.51.0+vite@3.1.8/node_modules/@sveltejs/kit/src/runtime/components/layout.svelte"; -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/generated/nodes/1.js: -------------------------------------------------------------------------------- 1 | export { default as component } from "../../../../node_modules/.pnpm/@sveltejs+kit@1.0.0-next.516_svelte@3.51.0+vite@3.1.8/node_modules/@sveltejs/kit/src/runtime/components/error.svelte"; -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/generated/nodes/2.js: -------------------------------------------------------------------------------- 1 | export { default as component } from "../../../src/routes/+page.svelte"; -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/generated/root.svelte: -------------------------------------------------------------------------------- 1 | 2 | 41 | 42 | {#if constructors[1]} 43 | 44 | 45 | 46 | {:else} 47 | 48 | {/if} 49 | 50 | {#if mounted} 51 |
52 | {#if navigated} 53 | {title} 54 | {/if} 55 |
56 | {/if} -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "paths": { 4 | "$lib": [ 5 | "../src/lib" 6 | ], 7 | "$lib/*": [ 8 | "../src/lib/*" 9 | ] 10 | }, 11 | "rootDirs": [ 12 | "..", 13 | "./types" 14 | ], 15 | "importsNotUsedAsValues": "error", 16 | "isolatedModules": true, 17 | "preserveValueImports": true, 18 | "lib": [ 19 | "esnext", 20 | "DOM", 21 | "DOM.Iterable" 22 | ], 23 | "moduleResolution": "node", 24 | "module": "esnext", 25 | "target": "esnext", 26 | "ignoreDeprecations": "5.0" 27 | }, 28 | "include": [ 29 | "ambient.d.ts", 30 | "./types/**/$types.d.ts", 31 | "../vite.config.ts", 32 | "../src/**/*.js", 33 | "../src/**/*.ts", 34 | "../src/**/*.svelte", 35 | "../tests/**/*.js", 36 | "../tests/**/*.ts", 37 | "../tests/**/*.svelte" 38 | ], 39 | "exclude": [ 40 | "../node_modules/**", 41 | "./[!ambient.d.ts]**", 42 | "../src/service-worker.js", 43 | "../src/service-worker.ts", 44 | "../src/service-worker.d.ts" 45 | ] 46 | } -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/types/route_meta_data.json: -------------------------------------------------------------------------------- 1 | { 2 | "/": [] 3 | } -------------------------------------------------------------------------------- /svelte-spotlight/.svelte-kit/types/src/routes/$types.d.ts: -------------------------------------------------------------------------------- 1 | import type * as Kit from '@sveltejs/kit'; 2 | 3 | type Expand = T extends infer O ? { [K in keyof O]: O[K] } : never; 4 | type RouteParams = { } 5 | type RouteId = '/'; 6 | type MaybeWithVoid = {} extends T ? T | void : T; 7 | export type RequiredKeys = { [K in keyof T]-?: {} extends { [P in K]: T[K] } ? never : K; }[keyof T]; 8 | type OutputDataShape = MaybeWithVoid> & Partial> & Record> 9 | type EnsureDefined = T extends null | undefined ? {} : T; 10 | type OptionalUnion, A extends keyof U = U extends U ? keyof U : never> = U extends unknown ? { [P in Exclude]?: never } & U : never; 11 | export type Snapshot = Kit.Snapshot; 12 | type PageParentData = EnsureDefined; 13 | type LayoutRouteId = RouteId | "/" | null 14 | type LayoutParams = RouteParams & { } 15 | type LayoutParentData = EnsureDefined<{}>; 16 | 17 | export type PageServerData = null; 18 | export type PageData = Expand; 19 | export type LayoutServerData = null; 20 | export type LayoutData = Expand; -------------------------------------------------------------------------------- /svelte-spotlight/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 | -------------------------------------------------------------------------------- /svelte-spotlight/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "svelte-spotlight", 3 | "version": "2.0.0", 4 | "scripts": { 5 | "dev": "vite dev", 6 | "pub": "pnpm run build && cd package && npm publish", 7 | "build": "svelte-kit sync && svelte-package", 8 | "build-watch": "svelte-kit sync && svelte-package --watch", 9 | "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", 10 | "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", 11 | "lint": "prettier --plugin-search-dir . --check . && eslint .", 12 | "format": "prettier --plugin-search-dir . --write ." 13 | }, 14 | "files": [ 15 | "dist" 16 | ], 17 | "devDependencies": { 18 | "@sveltejs/adapter-auto": "^2.1.0", 19 | "@sveltejs/adapter-cloudflare": "^2.2.0", 20 | "@sveltejs/kit": "^1.22.3", 21 | "@sveltejs/package": "^2.2.0", 22 | "@typescript-eslint/eslint-plugin": "^5.27.0", 23 | "@typescript-eslint/parser": "^5.27.0", 24 | "eslint": "^8.16.0", 25 | "eslint-config-prettier": "^8.3.0", 26 | "eslint-plugin-svelte3": "^4.0.0", 27 | "esm-env": "^1.0.0", 28 | "prettier": "^3.0.0", 29 | "prettier-plugin-svelte": "^3.0.3", 30 | "svelte": "^4.1.1", 31 | "svelte-check": "^3.4.6", 32 | "svelte-preprocess": "^5.0.4", 33 | "tslib": "^2.3.1", 34 | "type-fest": "^2.12.2", 35 | "typescript": "^5.1.6", 36 | "vite": "^4.4.7" 37 | }, 38 | "exports": { 39 | "./package.json": "./package.json", 40 | ".": { 41 | "default": "./dist/SvelteSpotlight.svelte", 42 | "svelte": "./dist/SvelteSpotlight.svelte", 43 | "types": "./dist/SvelteSpotlight.svelte.d.ts" 44 | } 45 | }, 46 | "typesVersions": { 47 | "*": { 48 | ".": [ 49 | "./dist/SvelteSpotlight.svelte.d.ts" 50 | ] 51 | } 52 | }, 53 | "type": "module", 54 | "svelte": "./dist/SvelteSpotlight.svelte", 55 | "types": "./dist/SvelteSpotlight.svelte.d.ts", 56 | "peerDependencies": { 57 | "esm-env": "^1.0.0", 58 | "svelte": "^4.1.1" 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /svelte-spotlight/src/app.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | 3 | // See https://kit.svelte.dev/docs/types#app 4 | // for information about these interfaces 5 | // and what to do when importing types 6 | declare namespace App { 7 | // interface Locals {} 8 | // interface PageData {} 9 | // interface Error {} 10 | // interface Platform {} 11 | } 12 | -------------------------------------------------------------------------------- /svelte-spotlight/src/app.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | %sveltekit.head% 8 | 9 | 10 |
%sveltekit.body%
11 | 12 | 13 | -------------------------------------------------------------------------------- /svelte-spotlight/src/lib/SvelteSpotlight.svelte: -------------------------------------------------------------------------------- 1 | 179 | 180 | 181 | 182 | {#key isOpen} 183 | {#if isOpen} 184 |
185 |
191 |
{ 193 | if (document.activeElement && !document.activeElement.classList.contains('sl-item')) { 194 | preSelectedResult = undefined; 195 | } 196 | }} 197 | role="combobox" 198 | aria-controls="sl-content" 199 | use:trapFocus={results} 200 | aria-expanded={isOpen} 201 | aria-haspopup="listbox" 202 | aria-labelledby="sv-sl" 203 | aria-owns="sl-content" 204 | aria-label="Spotlight" 205 | style:top={`${distanceFromTop}px`} 206 | class={`sl-modal ${modalClass}`} 207 | on:introstart={onIntroStart} 208 | on:outroend={onOutroEnd} 209 | in:modalTransitionIn|global={modalTransitionInConfig} 210 | out:modalTransitionOut|global={modalTransitionOutConfig} 211 | > 212 |
213 | 214 | {#if headerCenterComponent} 215 | 216 | {:else} 217 | 236 | {/if} 237 | 238 |
239 |
240 |
246 | {#if contentComponent} 247 | 248 | {:else} 249 | 250 | {#if query.length === 0 && $$slots.emptySearch} 251 | 252 | {:else if noResults} 253 | 254 | {:else if !noResults} 255 | {#if groupResultsKey && groupIdKey} 256 | {#each results as group, groupIndex (group[groupIdKey])} 257 | {@const groupedResults = group[groupResultsKey]} 258 | {#if groupedResults.length} 259 | 260 |
    261 | {#each groupedResults as result, index (result[resultIdKey])} 262 | {@const selected = 263 | preSelectedResult?.[resultIdKey] === result[resultIdKey]} 264 | 276 | {/each} 277 |
278 | {/if} 279 | {/each} 280 | {:else} 281 |
    282 | {#each results as result, index (result[resultIdKey])} 283 | {@const selected = preSelectedResult?.[resultIdKey] === result[resultIdKey]} 284 | 296 | {/each} 297 |
298 | {/if} 299 | {/if} 300 | 301 | {/if} 302 |
303 | 304 |
305 |
306 | 307 |
308 |
309 |
310 | {/if} 311 | {/key} 312 | 313 | 314 | 315 | 362 | -------------------------------------------------------------------------------- /svelte-spotlight/src/lib/index.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | fade, 3 | fly, 4 | scale, 5 | blur, 6 | slide, 7 | BlurParams, 8 | CrossfadeParams, 9 | FadeParams, 10 | ScaleParams, 11 | SlideParams 12 | } from 'svelte/transition'; 13 | import type { RequireExactlyOne } from 'type-fest'; 14 | 15 | export type Fade = typeof fade; 16 | export type Fly = typeof fly; 17 | export type Scale = typeof scale; 18 | export type Blur = typeof blur; 19 | export type Slide = typeof slide; 20 | 21 | export type AnimationFunctions = Fade | Fly | Scale | Blur | Slide; 22 | export type AnimationConfig = Parameters[1]; 23 | export type AnimatingParams = FadeParams & ScaleParams & CrossfadeParams & SlideParams & BlurParams; 24 | 25 | export const isCombo = (e: KeyboardEvent, combo: T) => { 26 | if (typeof combo === 'boolean') { 27 | return; 28 | } else { 29 | return combo?.key === e.key && ((combo?.metaKey && e.metaKey) || (combo?.ctrlKey && e.ctrlKey)); 30 | } 31 | }; 32 | 33 | type defaultSlotProps = { 34 | selectedResult: Result | undefined; 35 | preSelectedResult: Result | undefined; 36 | noResults: boolean; 37 | query: string; 38 | }; 39 | export type Slots = { 40 | headerLeft: defaultSlotProps; 41 | headerRight: defaultSlotProps; 42 | contentTop: defaultSlotProps; 43 | contentBottom: defaultSlotProps; 44 | emptySearch: defaultSlotProps; 45 | noResults: defaultSlotProps; 46 | groupHeader: defaultSlotProps & { 47 | group: R; 48 | groupIndex: number; 49 | }; 50 | result: defaultSlotProps & { 51 | result: Result; 52 | selected: boolean; 53 | index: number; 54 | }; 55 | sidePanel: defaultSlotProps & { 56 | maxHeight: number; 57 | }; 58 | trigger: defaultSlotProps & { 59 | toggle: () => void; 60 | }; 61 | footer: defaultSlotProps; 62 | }; 63 | 64 | export type Combo = 65 | | (RequireExactlyOne< 66 | { 67 | metaKey?: boolean; 68 | ctrlKey?: boolean; 69 | }, 70 | 'ctrlKey' | 'metaKey' 71 | > & { key: string }) 72 | | boolean; 73 | -------------------------------------------------------------------------------- /svelte-spotlight/src/lib/portal.ts: -------------------------------------------------------------------------------- 1 | import { tick } from 'svelte'; 2 | export function portal(node: HTMLElement, usePortal: boolean) { 3 | async function update(usePortal: boolean) { 4 | if (!usePortal) { 5 | return; 6 | } 7 | let targetNode: Document['body'] = document.body; 8 | if (targetNode === null) { 9 | await tick(); 10 | targetNode = document.body; 11 | } 12 | 13 | if (targetNode) { 14 | targetNode.appendChild(node); 15 | node.hidden = false; 16 | } 17 | } 18 | function destroy() { 19 | if (node.parentNode) { 20 | node.parentNode.removeChild(node); 21 | } 22 | } 23 | update(usePortal); 24 | return { 25 | update, 26 | destroy 27 | }; 28 | } 29 | -------------------------------------------------------------------------------- /svelte-spotlight/src/lib/trapFocus.ts: -------------------------------------------------------------------------------- 1 | export function trapFocus(node: HTMLDivElement, results: unknown) { 2 | const getFocusableEls = () => { 3 | return Array.from( 4 | node.querySelectorAll( 5 | 'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"]), [contenteditable="true"]' 6 | ) 7 | ) as HTMLElement[]; 8 | }; 9 | let focusableEls = getFocusableEls(); 10 | let firstFocusableEl = focusableEls[0]; 11 | let nextFocusableEl = focusableEls[1]; 12 | const moveFocus = (e: KeyboardEvent) => { 13 | if ( 14 | e.key === 'Tab' || 15 | e.key === 'ArrowDown' || 16 | e.key === 'ArrowUp' || 17 | e.key === 'ArrowLeft' || 18 | e.key === 'ArrowRight' 19 | ) { 20 | const direction: 'forward' | 'backward' = 21 | e.shiftKey || e.key === 'ArrowUp' || e.key === 'ArrowLeft' ? 'backward' : 'forward'; 22 | console.log({ nextFocusableEl, direction }); 23 | e.preventDefault(); 24 | 25 | const nextIndex = 26 | focusableEls.indexOf(document.activeElement as HTMLElement) + 27 | (direction === 'forward' ? 1 : -1); 28 | nextFocusableEl = 29 | direction === 'forward' 30 | ? nextIndex === focusableEls.length 31 | ? firstFocusableEl 32 | : focusableEls[nextIndex] 33 | : nextIndex === -1 34 | ? focusableEls[focusableEls.length - 1] 35 | : focusableEls[nextIndex]; 36 | nextFocusableEl.focus(); 37 | } 38 | }; 39 | window.addEventListener('keydown', moveFocus); 40 | node.focus(); 41 | return { 42 | destroy() { 43 | // window.removeEventListener('keydown', handleFirstTab); 44 | window.removeEventListener('keydown', moveFocus); 45 | }, 46 | update() { 47 | focusableEls = getFocusableEls(); 48 | firstFocusableEl = focusableEls[0]; 49 | nextFocusableEl = focusableEls[1]; 50 | } 51 | }; 52 | } 53 | -------------------------------------------------------------------------------- /svelte-spotlight/src/routes/+page.svelte: -------------------------------------------------------------------------------- 1 |

Welcome to your library project

2 |

Create your package using @sveltejs/package and preview/showcase your work with SvelteKit

3 |

Visit kit.svelte.dev to read the documentation

4 | -------------------------------------------------------------------------------- /svelte-spotlight/static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beynar/svelte-spotlight/f3f13ff95bcf9c870f177ea08934f8313f0beea8/svelte-spotlight/static/favicon.png -------------------------------------------------------------------------------- /svelte-spotlight/svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from '@sveltejs/adapter-auto'; 2 | import preprocess from 'svelte-preprocess'; 3 | 4 | /** @type {import('@sveltejs/kit').Config} */ 5 | const config = { 6 | // Consult https://github.com/sveltejs/svelte-preprocess 7 | // for more information about preprocessors 8 | preprocess: preprocess(), 9 | 10 | kit: { 11 | adapter: adapter() 12 | } 13 | }; 14 | 15 | export default config; 16 | -------------------------------------------------------------------------------- /svelte-spotlight/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./.svelte-kit/tsconfig.json", 3 | "compilerOptions": { 4 | "allowJs": true, 5 | "checkJs": true, 6 | "esModuleInterop": true, 7 | "forceConsistentCasingInFileNames": true, 8 | "resolveJsonModule": true, 9 | "skipLibCheck": true, 10 | "sourceMap": true, 11 | "strict": true 12 | } 13 | // Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias 14 | // 15 | // If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes 16 | // from the referenced tsconfig.json - TypeScript does not merge them in 17 | } 18 | -------------------------------------------------------------------------------- /svelte-spotlight/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { sveltekit } from '@sveltejs/kit/vite'; 2 | import type { UserConfig } from 'vite'; 3 | 4 | const config: UserConfig = { 5 | plugins: [sveltekit()] 6 | }; 7 | 8 | export default config; 9 | --------------------------------------------------------------------------------