├── .github └── dependabot.yml ├── .gitignore ├── README.md ├── example ├── README.md ├── index.html ├── package.json ├── pnpm-lock.yaml ├── src │ ├── App.tsx │ ├── assets │ │ └── favicon.ico │ ├── changeColor.ts │ ├── index.css │ ├── index.tsx │ └── logo.svg ├── tsconfig.json ├── vite.config.ts └── yarn.lock ├── package.json ├── pnpm-lock.yaml ├── rollup.config.js ├── src ├── index.tsx └── utils │ ├── random.ts │ └── useInterval.ts ├── tsconfig.json ├── vite.config.ts └── yarn.lock /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | - package-ecosystem: "npm" # See documentation for possible values 9 | directory: "/" # Location of package manifests 10 | schedule: 11 | interval: "weekly" 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # solid-top-loading-bar 2 | 3 | > 4 | 5 | [![size](https://img.shields.io/bundlephobia/minzip/solid-top-loading-bar?style=for-the-badge)](https://bundlephobia.com/package/solid-top-loading-bar) 6 | [![size](https://img.shields.io/npm/v/solid-top-loading-bar?style=for-the-badge)](https://www.npmjs.com/package/solid-top-loading-bar) 7 | ![npm](https://img.shields.io/npm/dw/solid-top-loading-bar?style=for-the-badge) 8 | 9 | [download-image]: https://img.shields.io/npm/dm/solid-top-loading-bar.svg 10 | [download-url]: https://npmjs.org/package/solid-top-loading-bar 11 | 12 | [![solid-top-loading-bar](https://nodei.co/npm/solid-top-loading-bar.png)](https://npmjs.org/package/solid-top-loading-bar) 13 | 14 | This package was ported to Solid from the [react-top-loading-bar](https://github.com/klendi/react-top-loading-bar) package made by [Klendi Gocci](https://klendi.dev/) 15 | 16 | ## Install 17 | 18 | - using npm 19 | 20 | ```bash 21 | npm install --save solid-top-loading-bar 22 | ``` 23 | 24 | - using yarn 25 | 26 | ```bash 27 | yarn add solid-top-loading-bar 28 | ``` 29 | 30 | - CDN 31 | 32 | ``` 33 | https://unpkg.com/solid-top-loading-bar 34 | ``` 35 | 36 | ## Usage 37 | 38 | ### With ref 39 | 40 | ```jsx 41 | import LoadingBar, { LoadingBarRef } from "solid-top-loading-bar"; 42 | 43 | const App = () => { 44 | const [loadingBar, setLoadingBar] = createSignal() 45 | 46 | return ( 47 |
48 | 49 | 52 | 55 | 56 |
57 |
58 | ); 59 | }; 60 | 61 | export default App; 62 | ``` 63 | 64 | ### With state 65 | 66 | ```jsx 67 | import { createSignal } from "solid"; 68 | import LoadingBar from "solid-top-loading-bar"; 69 | 70 | const App = () => { 71 | const [progress, setProgress] = createSignal(0); 72 | 73 | return ( 74 |
75 | setProgress(0)} 79 | /> 80 | 81 | 82 | 83 |
84 |
85 | ); 86 | }; 87 | 88 | export default App; 89 | ``` 90 | 91 | ## Demo 92 | 93 | [Click here for demo](https://solid-top-loading-bar.vercel.app/) 94 | 95 | ## Built-in Methods 96 | 97 | | Methods | Parameters | Descriptions | 98 | | ------------------------------------------- | :---------------------------------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 99 | | add(value) | Number | Adds a value to the loading indicator. | 100 | | decrease(value) | Number | Decreases a value to the loading indicator. | 101 | | continuousStart(startingValue, refreshRate) | Number (optional), Number(optional) | Starts the loading indicator with a random starting value between 20-30, then repetitively after an refreshRate, increases it by a random value between 2-10. This continues until it reaches 90% of the indicator's width. | 102 | | staticStart(startingValue) | Number (optional) | Starts the loading indicator with a random starting value between 30-50. | 103 | | complete() | | Makes the loading indicator reach 100% of his width and then fade. | 104 | 105 | ## Properties 106 | 107 | | Property | Type | Default | Description | 108 | | :----------------- | :------------ | :------ | :-------------------------------------------------------------------------------------------------------------------------------- | 109 | | progress | Number | `0` | The progress/width indicator, progress prop varies from `0` to `100`. | 110 | | color | String | `red` | The color of the loading bar, color take values like css property `background:` do, for example `red`, `#000` `rgb(255,0,0)` etc. | 111 | | shadow | Boolean | `true` | Enables / Disables shadow underneath the loader. | 112 | | height | Number | `2` | The height of the loading bar in pixels. | 113 | | background | String | `3` | The loader parent background color. | 114 | | style | CSSProperties | | The style attribute to loader's div | 115 | | containerStyle | CSSProperties | | The style attribute to loader's container | 116 | | shadowStyle | CSSProperties | | The style attribute to loader's shadow | 117 | | transitionTime | Number | `300` | Fade transition time in miliseconds. | 118 | | loaderSpeed | Number | `500` | Loader transition speed in miliseconds. | 119 | | waitingTime | Number | `1000` | The delay we wait when bar reaches 100% before we proceed fading the loader out. | 120 | | className | String | | You can provide a class you'd like to add to the loading bar to add some styles to it | 121 | | containerClassName | String | | You can provide a class you'd like to add to the loading bar container to add some css styles | 122 | | onLoaderFinished | Function | | This is called when the loading bar completes, reaches 100% of his width. | 123 | 124 | ## Projects using solid-top-loading-bar 125 | 126 | Add your own project. Make a PR 127 | 128 | ## Code Style 129 | 130 | [![js-standard-style](https://cdn.rawgit.com/standard/standard/master/badge.svg)](http://standardjs.com) 131 | 132 | ## License 133 | 134 | MIT © aidanaden 135 | -------------------------------------------------------------------------------- /example/README.md: -------------------------------------------------------------------------------- 1 | ## Usage 2 | 3 | Those templates dependencies are maintained via [pnpm](https://pnpm.io) via `pnpm up -Lri`. 4 | 5 | This is the reason you see a `pnpm-lock.yaml`. That being said, any package manager will work. This file can be safely be removed once you clone a template. 6 | 7 | ```bash 8 | $ npm install # or pnpm install or yarn install 9 | ``` 10 | 11 | ### Learn more on the [Solid Website](https://solidjs.com) and come chat with us on our [Discord](https://discord.com/invite/solidjs) 12 | 13 | ## Available Scripts 14 | 15 | In the project directory, you can run: 16 | 17 | ### `npm dev` or `npm start` 18 | 19 | Runs the app in the development mode.
20 | Open [http://localhost:3000](http://localhost:3000) to view it in the browser. 21 | 22 | The page will reload if you make edits.
23 | 24 | ### `npm run build` 25 | 26 | Builds the app for production to the `dist` folder.
27 | It correctly bundles Solid in production mode and optimizes the build for the best performance. 28 | 29 | The build is minified and the filenames include the hashes.
30 | Your app is ready to be deployed! 31 | 32 | ## Deployment 33 | 34 | You can deploy the `dist` folder to any static host provider (netlify, surge, now, etc.) 35 | -------------------------------------------------------------------------------- /example/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Solid App 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "solid-top-loading-bar-example", 3 | "version": "0.1.0", 4 | "homepage": "https://github.com/aidanaden/solid-top-loading-bar", 5 | "private": true, 6 | "scripts": { 7 | "start": "vite", 8 | "dev": "vite", 9 | "build": "vite build", 10 | "serve": "vite preview" 11 | }, 12 | "license": "MIT", 13 | "devDependencies": { 14 | "typescript": "^4.6.4", 15 | "vite": "^2.9.9", 16 | "vite-plugin-solid": "^2.2.6" 17 | }, 18 | "dependencies": { 19 | "solid-js": "^1.4.8", 20 | "solid-top-loading-bar": "^0.3.1" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /example/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | specifiers: 4 | solid-js: ^1.4.2 5 | typescript: ^4.6.4 6 | vite: ^2.9.9 7 | vite-plugin-solid: ^2.2.6 8 | 9 | dependencies: 10 | solid-js: 1.4.2 11 | 12 | devDependencies: 13 | typescript: 4.6.4 14 | vite: 2.9.9 15 | vite-plugin-solid: 2.2.6 16 | 17 | packages: 18 | 19 | /@ampproject/remapping/2.1.2: 20 | resolution: {integrity: sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==} 21 | engines: {node: '>=6.0.0'} 22 | dependencies: 23 | '@jridgewell/trace-mapping': 0.3.4 24 | dev: true 25 | 26 | /@babel/code-frame/7.16.7: 27 | resolution: {integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==} 28 | engines: {node: '>=6.9.0'} 29 | dependencies: 30 | '@babel/highlight': 7.16.10 31 | dev: true 32 | 33 | /@babel/compat-data/7.17.7: 34 | resolution: {integrity: sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==} 35 | engines: {node: '>=6.9.0'} 36 | dev: true 37 | 38 | /@babel/core/7.17.8: 39 | resolution: {integrity: sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==} 40 | engines: {node: '>=6.9.0'} 41 | dependencies: 42 | '@ampproject/remapping': 2.1.2 43 | '@babel/code-frame': 7.16.7 44 | '@babel/generator': 7.17.7 45 | '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.8 46 | '@babel/helper-module-transforms': 7.17.7 47 | '@babel/helpers': 7.17.8 48 | '@babel/parser': 7.17.8 49 | '@babel/template': 7.16.7 50 | '@babel/traverse': 7.17.3 51 | '@babel/types': 7.17.0 52 | convert-source-map: 1.8.0 53 | debug: 4.3.4 54 | gensync: 1.0.0-beta.2 55 | json5: 2.2.1 56 | semver: 6.3.0 57 | transitivePeerDependencies: 58 | - supports-color 59 | dev: true 60 | 61 | /@babel/generator/7.17.7: 62 | resolution: {integrity: sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==} 63 | engines: {node: '>=6.9.0'} 64 | dependencies: 65 | '@babel/types': 7.17.0 66 | jsesc: 2.5.2 67 | source-map: 0.5.7 68 | dev: true 69 | 70 | /@babel/helper-annotate-as-pure/7.16.7: 71 | resolution: {integrity: sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==} 72 | engines: {node: '>=6.9.0'} 73 | dependencies: 74 | '@babel/types': 7.18.0 75 | dev: true 76 | 77 | /@babel/helper-compilation-targets/7.17.7_@babel+core@7.17.8: 78 | resolution: {integrity: sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==} 79 | engines: {node: '>=6.9.0'} 80 | peerDependencies: 81 | '@babel/core': ^7.0.0 82 | dependencies: 83 | '@babel/compat-data': 7.17.7 84 | '@babel/core': 7.17.8 85 | '@babel/helper-validator-option': 7.16.7 86 | browserslist: 4.20.2 87 | semver: 6.3.0 88 | dev: true 89 | 90 | /@babel/helper-create-class-features-plugin/7.17.6_@babel+core@7.17.8: 91 | resolution: {integrity: sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg==} 92 | engines: {node: '>=6.9.0'} 93 | peerDependencies: 94 | '@babel/core': ^7.0.0 95 | dependencies: 96 | '@babel/core': 7.17.8 97 | '@babel/helper-annotate-as-pure': 7.16.7 98 | '@babel/helper-environment-visitor': 7.16.7 99 | '@babel/helper-function-name': 7.16.7 100 | '@babel/helper-member-expression-to-functions': 7.17.7 101 | '@babel/helper-optimise-call-expression': 7.16.7 102 | '@babel/helper-replace-supers': 7.16.7 103 | '@babel/helper-split-export-declaration': 7.16.7 104 | transitivePeerDependencies: 105 | - supports-color 106 | dev: true 107 | 108 | /@babel/helper-environment-visitor/7.16.7: 109 | resolution: {integrity: sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==} 110 | engines: {node: '>=6.9.0'} 111 | dependencies: 112 | '@babel/types': 7.17.0 113 | dev: true 114 | 115 | /@babel/helper-function-name/7.16.7: 116 | resolution: {integrity: sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==} 117 | engines: {node: '>=6.9.0'} 118 | dependencies: 119 | '@babel/helper-get-function-arity': 7.16.7 120 | '@babel/template': 7.16.7 121 | '@babel/types': 7.17.0 122 | dev: true 123 | 124 | /@babel/helper-get-function-arity/7.16.7: 125 | resolution: {integrity: sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==} 126 | engines: {node: '>=6.9.0'} 127 | dependencies: 128 | '@babel/types': 7.17.0 129 | dev: true 130 | 131 | /@babel/helper-hoist-variables/7.16.7: 132 | resolution: {integrity: sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==} 133 | engines: {node: '>=6.9.0'} 134 | dependencies: 135 | '@babel/types': 7.17.0 136 | dev: true 137 | 138 | /@babel/helper-member-expression-to-functions/7.17.7: 139 | resolution: {integrity: sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==} 140 | engines: {node: '>=6.9.0'} 141 | dependencies: 142 | '@babel/types': 7.18.0 143 | dev: true 144 | 145 | /@babel/helper-module-imports/7.16.0: 146 | resolution: {integrity: sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==} 147 | engines: {node: '>=6.9.0'} 148 | dependencies: 149 | '@babel/types': 7.17.0 150 | dev: true 151 | 152 | /@babel/helper-module-imports/7.16.7: 153 | resolution: {integrity: sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==} 154 | engines: {node: '>=6.9.0'} 155 | dependencies: 156 | '@babel/types': 7.17.0 157 | dev: true 158 | 159 | /@babel/helper-module-transforms/7.17.7: 160 | resolution: {integrity: sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==} 161 | engines: {node: '>=6.9.0'} 162 | dependencies: 163 | '@babel/helper-environment-visitor': 7.16.7 164 | '@babel/helper-module-imports': 7.16.7 165 | '@babel/helper-simple-access': 7.17.7 166 | '@babel/helper-split-export-declaration': 7.16.7 167 | '@babel/helper-validator-identifier': 7.16.7 168 | '@babel/template': 7.16.7 169 | '@babel/traverse': 7.17.3 170 | '@babel/types': 7.17.0 171 | transitivePeerDependencies: 172 | - supports-color 173 | dev: true 174 | 175 | /@babel/helper-optimise-call-expression/7.16.7: 176 | resolution: {integrity: sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==} 177 | engines: {node: '>=6.9.0'} 178 | dependencies: 179 | '@babel/types': 7.18.0 180 | dev: true 181 | 182 | /@babel/helper-plugin-utils/7.16.7: 183 | resolution: {integrity: sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==} 184 | engines: {node: '>=6.9.0'} 185 | dev: true 186 | 187 | /@babel/helper-replace-supers/7.16.7: 188 | resolution: {integrity: sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==} 189 | engines: {node: '>=6.9.0'} 190 | dependencies: 191 | '@babel/helper-environment-visitor': 7.16.7 192 | '@babel/helper-member-expression-to-functions': 7.17.7 193 | '@babel/helper-optimise-call-expression': 7.16.7 194 | '@babel/traverse': 7.17.3 195 | '@babel/types': 7.18.0 196 | transitivePeerDependencies: 197 | - supports-color 198 | dev: true 199 | 200 | /@babel/helper-simple-access/7.17.7: 201 | resolution: {integrity: sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==} 202 | engines: {node: '>=6.9.0'} 203 | dependencies: 204 | '@babel/types': 7.17.0 205 | dev: true 206 | 207 | /@babel/helper-split-export-declaration/7.16.7: 208 | resolution: {integrity: sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==} 209 | engines: {node: '>=6.9.0'} 210 | dependencies: 211 | '@babel/types': 7.17.0 212 | dev: true 213 | 214 | /@babel/helper-validator-identifier/7.16.7: 215 | resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==} 216 | engines: {node: '>=6.9.0'} 217 | dev: true 218 | 219 | /@babel/helper-validator-option/7.16.7: 220 | resolution: {integrity: sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==} 221 | engines: {node: '>=6.9.0'} 222 | dev: true 223 | 224 | /@babel/helpers/7.17.8: 225 | resolution: {integrity: sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==} 226 | engines: {node: '>=6.9.0'} 227 | dependencies: 228 | '@babel/template': 7.16.7 229 | '@babel/traverse': 7.17.3 230 | '@babel/types': 7.17.0 231 | transitivePeerDependencies: 232 | - supports-color 233 | dev: true 234 | 235 | /@babel/highlight/7.16.10: 236 | resolution: {integrity: sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==} 237 | engines: {node: '>=6.9.0'} 238 | dependencies: 239 | '@babel/helper-validator-identifier': 7.16.7 240 | chalk: 2.4.2 241 | js-tokens: 4.0.0 242 | dev: true 243 | 244 | /@babel/parser/7.17.8: 245 | resolution: {integrity: sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==} 246 | engines: {node: '>=6.0.0'} 247 | hasBin: true 248 | dependencies: 249 | '@babel/types': 7.17.0 250 | dev: true 251 | 252 | /@babel/plugin-syntax-jsx/7.16.7_@babel+core@7.17.8: 253 | resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==} 254 | engines: {node: '>=6.9.0'} 255 | peerDependencies: 256 | '@babel/core': ^7.0.0-0 257 | dependencies: 258 | '@babel/core': 7.17.8 259 | '@babel/helper-plugin-utils': 7.16.7 260 | dev: true 261 | 262 | /@babel/plugin-syntax-typescript/7.16.7_@babel+core@7.17.8: 263 | resolution: {integrity: sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==} 264 | engines: {node: '>=6.9.0'} 265 | peerDependencies: 266 | '@babel/core': ^7.0.0-0 267 | dependencies: 268 | '@babel/core': 7.17.8 269 | '@babel/helper-plugin-utils': 7.16.7 270 | dev: true 271 | 272 | /@babel/plugin-transform-typescript/7.16.8_@babel+core@7.17.8: 273 | resolution: {integrity: sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ==} 274 | engines: {node: '>=6.9.0'} 275 | peerDependencies: 276 | '@babel/core': ^7.0.0-0 277 | dependencies: 278 | '@babel/core': 7.17.8 279 | '@babel/helper-create-class-features-plugin': 7.17.6_@babel+core@7.17.8 280 | '@babel/helper-plugin-utils': 7.16.7 281 | '@babel/plugin-syntax-typescript': 7.16.7_@babel+core@7.17.8 282 | transitivePeerDependencies: 283 | - supports-color 284 | dev: true 285 | 286 | /@babel/preset-typescript/7.16.7_@babel+core@7.17.8: 287 | resolution: {integrity: sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ==} 288 | engines: {node: '>=6.9.0'} 289 | peerDependencies: 290 | '@babel/core': ^7.0.0-0 291 | dependencies: 292 | '@babel/core': 7.17.8 293 | '@babel/helper-plugin-utils': 7.16.7 294 | '@babel/helper-validator-option': 7.16.7 295 | '@babel/plugin-transform-typescript': 7.16.8_@babel+core@7.17.8 296 | transitivePeerDependencies: 297 | - supports-color 298 | dev: true 299 | 300 | /@babel/template/7.16.7: 301 | resolution: {integrity: sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==} 302 | engines: {node: '>=6.9.0'} 303 | dependencies: 304 | '@babel/code-frame': 7.16.7 305 | '@babel/parser': 7.17.8 306 | '@babel/types': 7.17.0 307 | dev: true 308 | 309 | /@babel/traverse/7.17.3: 310 | resolution: {integrity: sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==} 311 | engines: {node: '>=6.9.0'} 312 | dependencies: 313 | '@babel/code-frame': 7.16.7 314 | '@babel/generator': 7.17.7 315 | '@babel/helper-environment-visitor': 7.16.7 316 | '@babel/helper-function-name': 7.16.7 317 | '@babel/helper-hoist-variables': 7.16.7 318 | '@babel/helper-split-export-declaration': 7.16.7 319 | '@babel/parser': 7.17.8 320 | '@babel/types': 7.17.0 321 | debug: 4.3.4 322 | globals: 11.12.0 323 | transitivePeerDependencies: 324 | - supports-color 325 | dev: true 326 | 327 | /@babel/types/7.17.0: 328 | resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} 329 | engines: {node: '>=6.9.0'} 330 | dependencies: 331 | '@babel/helper-validator-identifier': 7.16.7 332 | to-fast-properties: 2.0.0 333 | dev: true 334 | 335 | /@babel/types/7.18.0: 336 | resolution: {integrity: sha512-vhAmLPAiC8j9K2GnsnLPCIH5wCrPpYIVBCWRBFDCB7Y/BXLqi/O+1RSTTM2bsmg6U/551+FCf9PNPxjABmxHTw==} 337 | engines: {node: '>=6.9.0'} 338 | dependencies: 339 | '@babel/helper-validator-identifier': 7.16.7 340 | to-fast-properties: 2.0.0 341 | dev: true 342 | 343 | /@jridgewell/resolve-uri/3.0.5: 344 | resolution: {integrity: sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==} 345 | engines: {node: '>=6.0.0'} 346 | dev: true 347 | 348 | /@jridgewell/sourcemap-codec/1.4.11: 349 | resolution: {integrity: sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==} 350 | dev: true 351 | 352 | /@jridgewell/trace-mapping/0.3.4: 353 | resolution: {integrity: sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==} 354 | dependencies: 355 | '@jridgewell/resolve-uri': 3.0.5 356 | '@jridgewell/sourcemap-codec': 1.4.11 357 | dev: true 358 | 359 | /ansi-styles/3.2.1: 360 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 361 | engines: {node: '>=4'} 362 | dependencies: 363 | color-convert: 1.9.3 364 | dev: true 365 | 366 | /babel-plugin-jsx-dom-expressions/0.32.11_@babel+core@7.17.8: 367 | resolution: {integrity: sha512-hytqY33SGW6B3obSLt8K5X510UwtNkTktCCWgwba+QOOV0CowDFiqeL+0ru895FLacFaYANHFTu1y76dg3GVtw==} 368 | dependencies: 369 | '@babel/helper-module-imports': 7.16.0 370 | '@babel/plugin-syntax-jsx': 7.16.7_@babel+core@7.17.8 371 | '@babel/types': 7.17.0 372 | html-entities: 2.3.2 373 | transitivePeerDependencies: 374 | - '@babel/core' 375 | dev: true 376 | 377 | /babel-preset-solid/1.3.13_@babel+core@7.17.8: 378 | resolution: {integrity: sha512-MZnmsceI9yiHlwwFCSALTJhadk2eea/+2UP4ec4jkPZFR+XRKTLoIwRkrBh7uLtvHF+3lHGyUaXtZukOmmUwhA==} 379 | dependencies: 380 | babel-plugin-jsx-dom-expressions: 0.32.11_@babel+core@7.17.8 381 | transitivePeerDependencies: 382 | - '@babel/core' 383 | dev: true 384 | 385 | /browserslist/4.20.2: 386 | resolution: {integrity: sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==} 387 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 388 | hasBin: true 389 | dependencies: 390 | caniuse-lite: 1.0.30001320 391 | electron-to-chromium: 1.4.93 392 | escalade: 3.1.1 393 | node-releases: 2.0.2 394 | picocolors: 1.0.0 395 | dev: true 396 | 397 | /caniuse-lite/1.0.30001320: 398 | resolution: {integrity: sha512-MWPzG54AGdo3nWx7zHZTefseM5Y1ccM7hlQKHRqJkPozUaw3hNbBTMmLn16GG2FUzjR13Cr3NPfhIieX5PzXDA==} 399 | dev: true 400 | 401 | /chalk/2.4.2: 402 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 403 | engines: {node: '>=4'} 404 | dependencies: 405 | ansi-styles: 3.2.1 406 | escape-string-regexp: 1.0.5 407 | supports-color: 5.5.0 408 | dev: true 409 | 410 | /color-convert/1.9.3: 411 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 412 | dependencies: 413 | color-name: 1.1.3 414 | dev: true 415 | 416 | /color-name/1.1.3: 417 | resolution: {integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=} 418 | dev: true 419 | 420 | /convert-source-map/1.8.0: 421 | resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==} 422 | dependencies: 423 | safe-buffer: 5.1.2 424 | dev: true 425 | 426 | /debug/4.3.4: 427 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 428 | engines: {node: '>=6.0'} 429 | peerDependencies: 430 | supports-color: '*' 431 | peerDependenciesMeta: 432 | supports-color: 433 | optional: true 434 | dependencies: 435 | ms: 2.1.2 436 | dev: true 437 | 438 | /electron-to-chromium/1.4.93: 439 | resolution: {integrity: sha512-ywq9Pc5Gwwpv7NG767CtoU8xF3aAUQJjH9//Wy3MBCg4w5JSLbJUq2L8IsCdzPMjvSgxuue9WcVaTOyyxCL0aQ==} 440 | dev: true 441 | 442 | /esbuild-android-64/0.14.39: 443 | resolution: {integrity: sha512-EJOu04p9WgZk0UoKTqLId9VnIsotmI/Z98EXrKURGb3LPNunkeffqQIkjS2cAvidh+OK5uVrXaIP229zK6GvhQ==} 444 | engines: {node: '>=12'} 445 | cpu: [x64] 446 | os: [android] 447 | requiresBuild: true 448 | dev: true 449 | optional: true 450 | 451 | /esbuild-android-arm64/0.14.39: 452 | resolution: {integrity: sha512-+twajJqO7n3MrCz9e+2lVOnFplRsaGRwsq1KL/uOy7xK7QdRSprRQcObGDeDZUZsacD5gUkk6OiHiYp6RzU3CA==} 453 | engines: {node: '>=12'} 454 | cpu: [arm64] 455 | os: [android] 456 | requiresBuild: true 457 | dev: true 458 | optional: true 459 | 460 | /esbuild-darwin-64/0.14.39: 461 | resolution: {integrity: sha512-ImT6eUw3kcGcHoUxEcdBpi6LfTRWaV6+qf32iYYAfwOeV+XaQ/Xp5XQIBiijLeo+LpGci9M0FVec09nUw41a5g==} 462 | engines: {node: '>=12'} 463 | cpu: [x64] 464 | os: [darwin] 465 | requiresBuild: true 466 | dev: true 467 | optional: true 468 | 469 | /esbuild-darwin-arm64/0.14.39: 470 | resolution: {integrity: sha512-/fcQ5UhE05OiT+bW5v7/up1bDsnvaRZPJxXwzXsMRrr7rZqPa85vayrD723oWMT64dhrgWeA3FIneF8yER0XTw==} 471 | engines: {node: '>=12'} 472 | cpu: [arm64] 473 | os: [darwin] 474 | requiresBuild: true 475 | dev: true 476 | optional: true 477 | 478 | /esbuild-freebsd-64/0.14.39: 479 | resolution: {integrity: sha512-oMNH8lJI4wtgN5oxuFP7BQ22vgB/e3Tl5Woehcd6i2r6F3TszpCnNl8wo2d/KvyQ4zvLvCWAlRciumhQg88+kQ==} 480 | engines: {node: '>=12'} 481 | cpu: [x64] 482 | os: [freebsd] 483 | requiresBuild: true 484 | dev: true 485 | optional: true 486 | 487 | /esbuild-freebsd-arm64/0.14.39: 488 | resolution: {integrity: sha512-1GHK7kwk57ukY2yI4ILWKJXaxfr+8HcM/r/JKCGCPziIVlL+Wi7RbJ2OzMcTKZ1HpvEqCTBT/J6cO4ZEwW4Ypg==} 489 | engines: {node: '>=12'} 490 | cpu: [arm64] 491 | os: [freebsd] 492 | requiresBuild: true 493 | dev: true 494 | optional: true 495 | 496 | /esbuild-linux-32/0.14.39: 497 | resolution: {integrity: sha512-g97Sbb6g4zfRLIxHgW2pc393DjnkTRMeq3N1rmjDUABxpx8SjocK4jLen+/mq55G46eE2TA0MkJ4R3SpKMu7dg==} 498 | engines: {node: '>=12'} 499 | cpu: [ia32] 500 | os: [linux] 501 | requiresBuild: true 502 | dev: true 503 | optional: true 504 | 505 | /esbuild-linux-64/0.14.39: 506 | resolution: {integrity: sha512-4tcgFDYWdI+UbNMGlua9u1Zhu0N5R6u9tl5WOM8aVnNX143JZoBZLpCuUr5lCKhnD0SCO+5gUyMfupGrHtfggQ==} 507 | engines: {node: '>=12'} 508 | cpu: [x64] 509 | os: [linux] 510 | requiresBuild: true 511 | dev: true 512 | optional: true 513 | 514 | /esbuild-linux-arm/0.14.39: 515 | resolution: {integrity: sha512-t0Hn1kWVx5UpCzAJkKRfHeYOLyFnXwYynIkK54/h3tbMweGI7dj400D1k0Vvtj2u1P+JTRT9tx3AjtLEMmfVBQ==} 516 | engines: {node: '>=12'} 517 | cpu: [arm] 518 | os: [linux] 519 | requiresBuild: true 520 | dev: true 521 | optional: true 522 | 523 | /esbuild-linux-arm64/0.14.39: 524 | resolution: {integrity: sha512-23pc8MlD2D6Px1mV8GMglZlKgwgNKAO8gsgsLLcXWSs9lQsCYkIlMo/2Ycfo5JrDIbLdwgP8D2vpfH2KcBqrDQ==} 525 | engines: {node: '>=12'} 526 | cpu: [arm64] 527 | os: [linux] 528 | requiresBuild: true 529 | dev: true 530 | optional: true 531 | 532 | /esbuild-linux-mips64le/0.14.39: 533 | resolution: {integrity: sha512-epwlYgVdbmkuRr5n4es3B+yDI0I2e/nxhKejT9H0OLxFAlMkeQZxSpxATpDc9m8NqRci6Kwyb/SfmD1koG2Zuw==} 534 | engines: {node: '>=12'} 535 | cpu: [mips64el] 536 | os: [linux] 537 | requiresBuild: true 538 | dev: true 539 | optional: true 540 | 541 | /esbuild-linux-ppc64le/0.14.39: 542 | resolution: {integrity: sha512-W/5ezaq+rQiQBThIjLMNjsuhPHg+ApVAdTz2LvcuesZFMsJoQAW2hutoyg47XxpWi7aEjJGrkS26qCJKhRn3QQ==} 543 | engines: {node: '>=12'} 544 | cpu: [ppc64] 545 | os: [linux] 546 | requiresBuild: true 547 | dev: true 548 | optional: true 549 | 550 | /esbuild-linux-riscv64/0.14.39: 551 | resolution: {integrity: sha512-IS48xeokcCTKeQIOke2O0t9t14HPvwnZcy+5baG13Z1wxs9ZrC5ig5ypEQQh4QMKxURD5TpCLHw2W42CLuVZaA==} 552 | engines: {node: '>=12'} 553 | cpu: [riscv64] 554 | os: [linux] 555 | requiresBuild: true 556 | dev: true 557 | optional: true 558 | 559 | /esbuild-linux-s390x/0.14.39: 560 | resolution: {integrity: sha512-zEfunpqR8sMomqXhNTFEKDs+ik7HC01m3M60MsEjZOqaywHu5e5682fMsqOlZbesEAAaO9aAtRBsU7CHnSZWyA==} 561 | engines: {node: '>=12'} 562 | cpu: [s390x] 563 | os: [linux] 564 | requiresBuild: true 565 | dev: true 566 | optional: true 567 | 568 | /esbuild-netbsd-64/0.14.39: 569 | resolution: {integrity: sha512-Uo2suJBSIlrZCe4E0k75VDIFJWfZy+bOV6ih3T4MVMRJh1lHJ2UyGoaX4bOxomYN3t+IakHPyEoln1+qJ1qYaA==} 570 | engines: {node: '>=12'} 571 | cpu: [x64] 572 | os: [netbsd] 573 | requiresBuild: true 574 | dev: true 575 | optional: true 576 | 577 | /esbuild-openbsd-64/0.14.39: 578 | resolution: {integrity: sha512-secQU+EpgUPpYjJe3OecoeGKVvRMLeKUxSMGHnK+aK5uQM3n1FPXNJzyz1LHFOo0WOyw+uoCxBYdM4O10oaCAA==} 579 | engines: {node: '>=12'} 580 | cpu: [x64] 581 | os: [openbsd] 582 | requiresBuild: true 583 | dev: true 584 | optional: true 585 | 586 | /esbuild-sunos-64/0.14.39: 587 | resolution: {integrity: sha512-qHq0t5gePEDm2nqZLb+35p/qkaXVS7oIe32R0ECh2HOdiXXkj/1uQI9IRogGqKkK+QjDG+DhwiUw7QoHur/Rwg==} 588 | engines: {node: '>=12'} 589 | cpu: [x64] 590 | os: [sunos] 591 | requiresBuild: true 592 | dev: true 593 | optional: true 594 | 595 | /esbuild-windows-32/0.14.39: 596 | resolution: {integrity: sha512-XPjwp2OgtEX0JnOlTgT6E5txbRp6Uw54Isorm3CwOtloJazeIWXuiwK0ONJBVb/CGbiCpS7iP2UahGgd2p1x+Q==} 597 | engines: {node: '>=12'} 598 | cpu: [ia32] 599 | os: [win32] 600 | requiresBuild: true 601 | dev: true 602 | optional: true 603 | 604 | /esbuild-windows-64/0.14.39: 605 | resolution: {integrity: sha512-E2wm+5FwCcLpKsBHRw28bSYQw0Ikxb7zIMxw3OPAkiaQhLVr3dnVO8DofmbWhhf6b97bWzg37iSZ45ZDpLw7Ow==} 606 | engines: {node: '>=12'} 607 | cpu: [x64] 608 | os: [win32] 609 | requiresBuild: true 610 | dev: true 611 | optional: true 612 | 613 | /esbuild-windows-arm64/0.14.39: 614 | resolution: {integrity: sha512-sBZQz5D+Gd0EQ09tZRnz/PpVdLwvp/ufMtJ1iDFYddDaPpZXKqPyaxfYBLs3ueiaksQ26GGa7sci0OqFzNs7KA==} 615 | engines: {node: '>=12'} 616 | cpu: [arm64] 617 | os: [win32] 618 | requiresBuild: true 619 | dev: true 620 | optional: true 621 | 622 | /esbuild/0.14.39: 623 | resolution: {integrity: sha512-2kKujuzvRWYtwvNjYDY444LQIA3TyJhJIX3Yo4+qkFlDDtGlSicWgeHVJqMUP/2sSfH10PGwfsj+O2ro1m10xQ==} 624 | engines: {node: '>=12'} 625 | hasBin: true 626 | requiresBuild: true 627 | optionalDependencies: 628 | esbuild-android-64: 0.14.39 629 | esbuild-android-arm64: 0.14.39 630 | esbuild-darwin-64: 0.14.39 631 | esbuild-darwin-arm64: 0.14.39 632 | esbuild-freebsd-64: 0.14.39 633 | esbuild-freebsd-arm64: 0.14.39 634 | esbuild-linux-32: 0.14.39 635 | esbuild-linux-64: 0.14.39 636 | esbuild-linux-arm: 0.14.39 637 | esbuild-linux-arm64: 0.14.39 638 | esbuild-linux-mips64le: 0.14.39 639 | esbuild-linux-ppc64le: 0.14.39 640 | esbuild-linux-riscv64: 0.14.39 641 | esbuild-linux-s390x: 0.14.39 642 | esbuild-netbsd-64: 0.14.39 643 | esbuild-openbsd-64: 0.14.39 644 | esbuild-sunos-64: 0.14.39 645 | esbuild-windows-32: 0.14.39 646 | esbuild-windows-64: 0.14.39 647 | esbuild-windows-arm64: 0.14.39 648 | dev: true 649 | 650 | /escalade/3.1.1: 651 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 652 | engines: {node: '>=6'} 653 | dev: true 654 | 655 | /escape-string-regexp/1.0.5: 656 | resolution: {integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=} 657 | engines: {node: '>=0.8.0'} 658 | dev: true 659 | 660 | /fsevents/2.3.2: 661 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} 662 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 663 | os: [darwin] 664 | requiresBuild: true 665 | dev: true 666 | optional: true 667 | 668 | /function-bind/1.1.1: 669 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 670 | dev: true 671 | 672 | /gensync/1.0.0-beta.2: 673 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} 674 | engines: {node: '>=6.9.0'} 675 | dev: true 676 | 677 | /globals/11.12.0: 678 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 679 | engines: {node: '>=4'} 680 | dev: true 681 | 682 | /has-flag/3.0.0: 683 | resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} 684 | engines: {node: '>=4'} 685 | dev: true 686 | 687 | /has/1.0.3: 688 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 689 | engines: {node: '>= 0.4.0'} 690 | dependencies: 691 | function-bind: 1.1.1 692 | dev: true 693 | 694 | /html-entities/2.3.2: 695 | resolution: {integrity: sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==} 696 | dev: true 697 | 698 | /is-core-module/2.9.0: 699 | resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==} 700 | dependencies: 701 | has: 1.0.3 702 | dev: true 703 | 704 | /is-what/4.1.7: 705 | resolution: {integrity: sha512-DBVOQNiPKnGMxRMLIYSwERAS5MVY1B7xYiGnpgctsOFvVDz9f9PFXXxMcTOHuoqYp4NK9qFYQaIC1NRRxLMpBQ==} 706 | engines: {node: '>=12.13'} 707 | dev: true 708 | 709 | /js-tokens/4.0.0: 710 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 711 | dev: true 712 | 713 | /jsesc/2.5.2: 714 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} 715 | engines: {node: '>=4'} 716 | hasBin: true 717 | dev: true 718 | 719 | /json5/2.2.1: 720 | resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==} 721 | engines: {node: '>=6'} 722 | hasBin: true 723 | dev: true 724 | 725 | /merge-anything/5.0.2: 726 | resolution: {integrity: sha512-POPQBWkBC0vxdgzRJ2Mkj4+2NTKbvkHo93ih+jGDhNMLzIw+rYKjO7949hOQM2X7DxMHH1uoUkwWFLIzImw7gA==} 727 | engines: {node: '>=12.13'} 728 | dependencies: 729 | is-what: 4.1.7 730 | ts-toolbelt: 9.6.0 731 | dev: true 732 | 733 | /ms/2.1.2: 734 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 735 | dev: true 736 | 737 | /nanoid/3.3.4: 738 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} 739 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 740 | hasBin: true 741 | dev: true 742 | 743 | /node-releases/2.0.2: 744 | resolution: {integrity: sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==} 745 | dev: true 746 | 747 | /path-parse/1.0.7: 748 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 749 | dev: true 750 | 751 | /picocolors/1.0.0: 752 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 753 | dev: true 754 | 755 | /postcss/8.4.14: 756 | resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} 757 | engines: {node: ^10 || ^12 || >=14} 758 | dependencies: 759 | nanoid: 3.3.4 760 | picocolors: 1.0.0 761 | source-map-js: 1.0.2 762 | dev: true 763 | 764 | /resolve/1.22.0: 765 | resolution: {integrity: sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==} 766 | hasBin: true 767 | dependencies: 768 | is-core-module: 2.9.0 769 | path-parse: 1.0.7 770 | supports-preserve-symlinks-flag: 1.0.0 771 | dev: true 772 | 773 | /rollup/2.74.1: 774 | resolution: {integrity: sha512-K2zW7kV8Voua5eGkbnBtWYfMIhYhT9Pel2uhBk2WO5eMee161nPze/XRfvEQPFYz7KgrCCnmh2Wy0AMFLGGmMA==} 775 | engines: {node: '>=10.0.0'} 776 | hasBin: true 777 | optionalDependencies: 778 | fsevents: 2.3.2 779 | dev: true 780 | 781 | /safe-buffer/5.1.2: 782 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} 783 | dev: true 784 | 785 | /semver/6.3.0: 786 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} 787 | hasBin: true 788 | dev: true 789 | 790 | /solid-js/1.4.2: 791 | resolution: {integrity: sha512-IU5yKuT8P/n5F5g8j1rTXqxUdPYmoZDk/074TG94AEYf/nyXAeG82BSge4/lLIbCfUcnGUJ6DRdebIjujOAYyg==} 792 | 793 | /solid-refresh/0.4.0_solid-js@1.4.2: 794 | resolution: {integrity: sha512-5XCUz845n/sHPzKK2i2G2EeV61tAmzv6SqzqhXcPaYhrgzVy7nKTQaBpKK8InKrriq9Z2JFF/mguIU00t/73xw==} 795 | peerDependencies: 796 | solid-js: ^1.3.0 797 | dependencies: 798 | '@babel/generator': 7.17.7 799 | '@babel/helper-module-imports': 7.16.7 800 | '@babel/types': 7.17.0 801 | solid-js: 1.4.2 802 | dev: true 803 | 804 | /source-map-js/1.0.2: 805 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 806 | engines: {node: '>=0.10.0'} 807 | dev: true 808 | 809 | /source-map/0.5.7: 810 | resolution: {integrity: sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=} 811 | engines: {node: '>=0.10.0'} 812 | dev: true 813 | 814 | /supports-color/5.5.0: 815 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 816 | engines: {node: '>=4'} 817 | dependencies: 818 | has-flag: 3.0.0 819 | dev: true 820 | 821 | /supports-preserve-symlinks-flag/1.0.0: 822 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 823 | engines: {node: '>= 0.4'} 824 | dev: true 825 | 826 | /to-fast-properties/2.0.0: 827 | resolution: {integrity: sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=} 828 | engines: {node: '>=4'} 829 | dev: true 830 | 831 | /ts-toolbelt/9.6.0: 832 | resolution: {integrity: sha512-nsZd8ZeNUzukXPlJmTBwUAuABDe/9qtVDelJeT/qW0ow3ZS3BsQJtNkan1802aM9Uf68/Y8ljw86Hu0h5IUW3w==} 833 | dev: true 834 | 835 | /typescript/4.6.4: 836 | resolution: {integrity: sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==} 837 | engines: {node: '>=4.2.0'} 838 | hasBin: true 839 | dev: true 840 | 841 | /vite-plugin-solid/2.2.6: 842 | resolution: {integrity: sha512-J1RnmqkZZJSNYDW7vZj0giKKHLWGr9tS/gxR70WDSTYfhyXrgukbZdIfSEFbtrsg8ZiQ2t2zXcvkWoeefenqKw==} 843 | dependencies: 844 | '@babel/core': 7.17.8 845 | '@babel/preset-typescript': 7.16.7_@babel+core@7.17.8 846 | babel-preset-solid: 1.3.13_@babel+core@7.17.8 847 | merge-anything: 5.0.2 848 | solid-js: 1.4.2 849 | solid-refresh: 0.4.0_solid-js@1.4.2 850 | vite: 2.9.9 851 | transitivePeerDependencies: 852 | - less 853 | - sass 854 | - stylus 855 | - supports-color 856 | dev: true 857 | 858 | /vite/2.9.9: 859 | resolution: {integrity: sha512-ffaam+NgHfbEmfw/Vuh6BHKKlI/XIAhxE5QSS7gFLIngxg171mg1P3a4LSRME0z2ZU1ScxoKzphkipcYwSD5Ew==} 860 | engines: {node: '>=12.2.0'} 861 | hasBin: true 862 | peerDependencies: 863 | less: '*' 864 | sass: '*' 865 | stylus: '*' 866 | peerDependenciesMeta: 867 | less: 868 | optional: true 869 | sass: 870 | optional: true 871 | stylus: 872 | optional: true 873 | dependencies: 874 | esbuild: 0.14.39 875 | postcss: 8.4.14 876 | resolve: 1.22.0 877 | rollup: 2.74.1 878 | optionalDependencies: 879 | fsevents: 2.3.2 880 | dev: true 881 | -------------------------------------------------------------------------------- /example/src/App.tsx: -------------------------------------------------------------------------------- 1 | import { createEffect, createSignal, Show } from "solid-js"; 2 | 3 | import LoadingBar, { LoadingBarRef } from "solid-top-loading-bar"; 4 | import "./index.css"; 5 | import { changeColor } from "./changeColor"; 6 | 7 | const App = () => { 8 | const [progress, setProgress] = createSignal(0); 9 | const [barColor, setBarColor] = createSignal("#f11946"); 10 | const [buttonsColor, setButtonsColor] = createSignal("red"); 11 | const [loadingBar, setLoadingBar] = createSignal(); 12 | const [usingRef, setUsingRef] = createSignal(false); 13 | 14 | const saveToClipboard = (text: string) => { 15 | navigator.clipboard.writeText(text).then(() => { 16 | window.alert("Copied To Clipboard"); 17 | }); 18 | }; 19 | 20 | const changeMode = (refMode: boolean) => { 21 | if (refMode) { 22 | setProgress(0); 23 | } 24 | setUsingRef(refMode); 25 | }; 26 | 27 | return ( 28 |
29 | setProgress(0)} 36 | /> 37 | } 38 | > 39 | 45 | 46 |
47 |

solid-top-loading-bar

48 |
49 | saveToClipboard("npm i solid-top-loading-bar")} 52 | > 53 | npm i solid-top-loading-bar 54 | 55 |
56 | or 57 |
58 | saveToClipboard("yarn add solid-top-loading-bar")} 61 | > 62 | yarn add solid-top-loading-bar 63 | 64 |
65 |
66 |
67 | 68 | {usingRef() 69 | ? `const [loadingBar, setLoadingBar] = createSignal();\n\nloadingBar().continuousStart()` 70 | : `const [progress, setProgress] = createSignal(0);\n setProgress(100)} />`} 72 | 73 |
74 |
75 | {usingRef() ? ( 76 |
77 | 83 | 89 | 95 |
96 |
97 | ) : ( 98 |
99 | 105 | 111 | 117 | 118 |
119 |
120 | )} 121 | 131 | 137 |
138 |
139 | 162 |
163 |
164 |
165 | Ported to Solid by{" "} 166 | 171 | aidanaden 172 | 173 |
174 |
175 |
176 | 181 | Original react library by{" "} 182 | 183 | 188 | Klendi Gocci 189 | 190 |
191 |
192 |
193 | ); 194 | }; 195 | 196 | export default App; 197 | -------------------------------------------------------------------------------- /example/src/assets/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aidanaden/solid-top-loading-bar/5b8a55eb642d2f902d10d7f0766811cbdb4191c4/example/src/assets/favicon.ico -------------------------------------------------------------------------------- /example/src/changeColor.ts: -------------------------------------------------------------------------------- 1 | export const changeColor = (currentColor: string) => { 2 | function randomInt(min: number, max: number) { 3 | let i = (Math.random() * 32768) >>> 0; 4 | return (i % (min - max)) + min; 5 | } 6 | let colors = ["red", "purple", "green", "teal", "orange", "blue"]; 7 | colors = colors.filter((x) => x !== currentColor); 8 | let i = randomInt(0, colors.length); 9 | 10 | const color = colors[i]; 11 | 12 | let barColor = ""; 13 | switch (color) { 14 | case "red": 15 | barColor = "#f11946"; 16 | break; 17 | case "purple": 18 | barColor = "#8800ff"; 19 | break; 20 | case "green": 21 | barColor = "#28b485"; 22 | break; 23 | case "teal": 24 | barColor = "#00ffe2"; 25 | break; 26 | case "orange": 27 | barColor = "#ff7c05"; 28 | break; 29 | case "blue": 30 | barColor = "#2998ff"; 31 | break; 32 | 33 | default: 34 | barColor = "#f11946"; 35 | break; 36 | } 37 | return { barColor, color }; 38 | }; 39 | -------------------------------------------------------------------------------- /example/src/index.css: -------------------------------------------------------------------------------- 1 | @import url("https://fonts.googleapis.com/css?family=Roboto:100,400"); 2 | 3 | body { 4 | margin: 0; 5 | padding: 0; 6 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", 7 | "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", 8 | sans-serif; 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | color: #b4b4b4; 12 | background: #0a0a0a; 13 | } 14 | 15 | code { 16 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", 17 | monospace; 18 | } 19 | 20 | body { 21 | margin: 0; 22 | padding: 0; 23 | font-family: "Roboto", sans-serif; 24 | } 25 | 26 | .buttons-group { 27 | padding-top: 6rem; 28 | text-align: center; 29 | } 30 | 31 | .btn { 32 | padding: 1rem 2rem; 33 | margin: 0.5rem; 34 | outline: none; 35 | border: none; 36 | border-radius: 100rem; 37 | font-size: 16px; 38 | transition: all 0.1s ease-in; 39 | cursor: pointer; 40 | text-decoration: none; 41 | } 42 | 43 | a { 44 | font-size: 16px; 45 | text-decoration: none; 46 | color: white; 47 | } 48 | 49 | .btn:active, 50 | a:active { 51 | transform: scale(1.03) translateY(3px); 52 | } 53 | 54 | .btn.red { 55 | color: white; 56 | background-color: #f11946; 57 | box-shadow: 0 0.5rem 2rem rgba(241, 25, 70, 0.5); 58 | } 59 | 60 | .btn.red:hover { 61 | background-color: #be1737; 62 | } 63 | 64 | .btn.blue { 65 | color: white; 66 | background-color: #2998ff; 67 | box-shadow: 0 0.5rem 2rem rgba(41, 152, 255, 0.5); 68 | } 69 | 70 | .btn.blue:hover { 71 | background-color: #1d7acb; 72 | } 73 | 74 | .btn.purple { 75 | color: white; 76 | background-color: #8800ff; 77 | box-shadow: 0 0.5rem 2rem rgba(136, 0, 255, 0.5); 78 | } 79 | 80 | .btn.purple:hover { 81 | background-color: #6800c5; 82 | } 83 | 84 | .btn.green { 85 | color: white; 86 | background-color: #28b485; 87 | box-shadow: 0 0.5rem 2rem rgba(40, 180, 133, 0.5); 88 | } 89 | 90 | .btn.green:hover { 91 | background-color: #23986f; 92 | } 93 | 94 | .btn.teal { 95 | color: white; 96 | background-color: #0095a2; 97 | box-shadow: 0 0.5rem 2rem rgba(0, 255, 226, 0.5); 98 | } 99 | 100 | .btn.teal:hover { 101 | background-color: #00bcce; 102 | } 103 | 104 | .btn.orange { 105 | color: white; 106 | background-color: #ff7c05; 107 | box-shadow: 0 0.5rem 2rem rgba(255, 86, 0, 0.5); 108 | } 109 | 110 | .btn.orange:hover { 111 | background-color: #e66b04; 112 | } 113 | 114 | .header { 115 | text-align: center; 116 | font-weight: 100; 117 | font-size: 4rem; 118 | margin-top: 1rem; 119 | } 120 | 121 | .text-container { 122 | text-align: center; 123 | margin-bottom: -5rem; 124 | } 125 | 126 | .package-install-text { 127 | display: inline-block; 128 | padding: 1rem 2rem; 129 | border-radius: 50px; 130 | color: #d6d6d6; 131 | font-weight: 400; 132 | margin: 1em; 133 | transition: all 0.3s; 134 | cursor: pointer; 135 | border: 1px solid rgba(255, 255, 255, 0.25); 136 | } 137 | 138 | .package-install-text:hover { 139 | background: rgba(0, 255, 64, 0.2); 140 | border: 1px solid rgba(0, 173, 43, 0.4); 141 | } 142 | 143 | .github-buttons { 144 | margin-top: 2rem; 145 | } 146 | 147 | .btn.disabled { 148 | background: #c7c7c7; 149 | box-shadow: none; 150 | } 151 | 152 | .btn:hover.disabled { 153 | background: #c7c7c7; 154 | box-shadow: none; 155 | cursor: not-allowed; 156 | } 157 | 158 | /* 159 | Atom One Dark by Daniel Gamage 160 | Original One Dark Syntax theme from https://github.com/atom/one-dark-syntax 161 | base: #282c34 162 | mono-1: #abb2bf 163 | mono-2: #818896 164 | mono-3: #5c6370 165 | hue-1: #56b6c2 166 | hue-2: #61aeee 167 | hue-3: #c678dd 168 | hue-4: #98c379 169 | hue-5: #e06c75 170 | hue-5-2: #be5046 171 | hue-6: #d19a66 172 | hue-6-2: #e6c07b 173 | */ 174 | 175 | .hljs { 176 | display: block; 177 | overflow-x: auto; 178 | padding: 0.5em; 179 | color: #abb2bf; 180 | } 181 | 182 | .hljs-comment, 183 | .hljs-quote { 184 | color: #5c6370; 185 | font-style: italic; 186 | } 187 | 188 | .hljs-doctag, 189 | .hljs-keyword, 190 | .hljs-formula { 191 | color: #c678dd; 192 | } 193 | 194 | .hljs-section, 195 | .hljs-name, 196 | .hljs-selector-tag, 197 | .hljs-deletion, 198 | .hljs-subst { 199 | color: #e06c75; 200 | } 201 | 202 | .hljs-literal { 203 | color: #56b6c2; 204 | } 205 | 206 | .hljs-string, 207 | .hljs-regexp, 208 | .hljs-addition, 209 | .hljs-attribute, 210 | .hljs-meta-string { 211 | color: #98c379; 212 | } 213 | 214 | .hljs-built_in, 215 | .hljs-class .hljs-title { 216 | color: #e6c07b; 217 | } 218 | 219 | .hljs-attr, 220 | .hljs-variable, 221 | .hljs-template-variable, 222 | .hljs-type, 223 | .hljs-selector-class, 224 | .hljs-selector-attr, 225 | .hljs-selector-pseudo, 226 | .hljs-number { 227 | color: #d19a66; 228 | } 229 | 230 | .hljs-symbol, 231 | .hljs-bullet, 232 | .hljs-link, 233 | .hljs-meta, 234 | .hljs-selector-id, 235 | .hljs-title { 236 | color: #61aeee; 237 | } 238 | 239 | .hljs-emphasis { 240 | font-style: italic; 241 | } 242 | 243 | .hljs-strong { 244 | font-weight: bold; 245 | } 246 | 247 | .hljs-link { 248 | text-decoration: underline; 249 | } 250 | 251 | .code-highlighter { 252 | border-radius: 5px; 253 | display: inline-block; 254 | } 255 | -------------------------------------------------------------------------------- /example/src/index.tsx: -------------------------------------------------------------------------------- 1 | /* @refresh reload */ 2 | import { render } from "solid-js/web"; 3 | 4 | import "./index.css"; 5 | import App from "./App"; 6 | 7 | render(() => , document.getElementById("root") as HTMLElement); 8 | -------------------------------------------------------------------------------- /example/src/logo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /example/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "strict": true, 4 | "target": "ESNext", 5 | "module": "ESNext", 6 | "moduleResolution": "node", 7 | "allowSyntheticDefaultImports": true, 8 | "esModuleInterop": true, 9 | "jsx": "preserve", 10 | "jsxImportSource": "solid-js", 11 | "types": ["vite/client"], 12 | "noEmit": true, 13 | "isolatedModules": true 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /example/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite'; 2 | import solidPlugin from 'vite-plugin-solid'; 3 | 4 | export default defineConfig({ 5 | plugins: [solidPlugin()], 6 | build: { 7 | target: 'esnext', 8 | polyfillDynamicImport: false, 9 | }, 10 | }); 11 | -------------------------------------------------------------------------------- /example/yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@ampproject/remapping@^2.1.0": 6 | version "2.2.0" 7 | resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" 8 | integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== 9 | dependencies: 10 | "@jridgewell/gen-mapping" "^0.1.0" 11 | "@jridgewell/trace-mapping" "^0.3.9" 12 | 13 | "@babel/code-frame@^7.18.6": 14 | version "7.18.6" 15 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" 16 | integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== 17 | dependencies: 18 | "@babel/highlight" "^7.18.6" 19 | 20 | "@babel/compat-data@^7.18.8": 21 | version "7.18.8" 22 | resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.18.8.tgz#2483f565faca607b8535590e84e7de323f27764d" 23 | integrity sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ== 24 | 25 | "@babel/core@^7.18.6": 26 | version "7.18.10" 27 | resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.18.10.tgz#39ad504991d77f1f3da91be0b8b949a5bc466fb8" 28 | integrity sha512-JQM6k6ENcBFKVtWvLavlvi/mPcpYZ3+R+2EySDEMSMbp7Mn4FexlbbJVrx2R7Ijhr01T8gyqrOaABWIOgxeUyw== 29 | dependencies: 30 | "@ampproject/remapping" "^2.1.0" 31 | "@babel/code-frame" "^7.18.6" 32 | "@babel/generator" "^7.18.10" 33 | "@babel/helper-compilation-targets" "^7.18.9" 34 | "@babel/helper-module-transforms" "^7.18.9" 35 | "@babel/helpers" "^7.18.9" 36 | "@babel/parser" "^7.18.10" 37 | "@babel/template" "^7.18.10" 38 | "@babel/traverse" "^7.18.10" 39 | "@babel/types" "^7.18.10" 40 | convert-source-map "^1.7.0" 41 | debug "^4.1.0" 42 | gensync "^1.0.0-beta.2" 43 | json5 "^2.2.1" 44 | semver "^6.3.0" 45 | 46 | "@babel/generator@^7.18.10", "@babel/generator@^7.18.2": 47 | version "7.18.12" 48 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.18.12.tgz#fa58daa303757bd6f5e4bbca91b342040463d9f4" 49 | integrity sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg== 50 | dependencies: 51 | "@babel/types" "^7.18.10" 52 | "@jridgewell/gen-mapping" "^0.3.2" 53 | jsesc "^2.5.1" 54 | 55 | "@babel/helper-annotate-as-pure@^7.18.6": 56 | version "7.18.6" 57 | resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" 58 | integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA== 59 | dependencies: 60 | "@babel/types" "^7.18.6" 61 | 62 | "@babel/helper-compilation-targets@^7.18.9": 63 | version "7.18.9" 64 | resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz#69e64f57b524cde3e5ff6cc5a9f4a387ee5563bf" 65 | integrity sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg== 66 | dependencies: 67 | "@babel/compat-data" "^7.18.8" 68 | "@babel/helper-validator-option" "^7.18.6" 69 | browserslist "^4.20.2" 70 | semver "^6.3.0" 71 | 72 | "@babel/helper-create-class-features-plugin@^7.18.9": 73 | version "7.18.9" 74 | resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz#d802ee16a64a9e824fcbf0a2ffc92f19d58550ce" 75 | integrity sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw== 76 | dependencies: 77 | "@babel/helper-annotate-as-pure" "^7.18.6" 78 | "@babel/helper-environment-visitor" "^7.18.9" 79 | "@babel/helper-function-name" "^7.18.9" 80 | "@babel/helper-member-expression-to-functions" "^7.18.9" 81 | "@babel/helper-optimise-call-expression" "^7.18.6" 82 | "@babel/helper-replace-supers" "^7.18.9" 83 | "@babel/helper-split-export-declaration" "^7.18.6" 84 | 85 | "@babel/helper-environment-visitor@^7.18.9": 86 | version "7.18.9" 87 | resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" 88 | integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== 89 | 90 | "@babel/helper-function-name@^7.18.9": 91 | version "7.18.9" 92 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz#940e6084a55dee867d33b4e487da2676365e86b0" 93 | integrity sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A== 94 | dependencies: 95 | "@babel/template" "^7.18.6" 96 | "@babel/types" "^7.18.9" 97 | 98 | "@babel/helper-hoist-variables@^7.18.6": 99 | version "7.18.6" 100 | resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" 101 | integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== 102 | dependencies: 103 | "@babel/types" "^7.18.6" 104 | 105 | "@babel/helper-member-expression-to-functions@^7.18.9": 106 | version "7.18.9" 107 | resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815" 108 | integrity sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg== 109 | dependencies: 110 | "@babel/types" "^7.18.9" 111 | 112 | "@babel/helper-module-imports@7.16.0": 113 | version "7.16.0" 114 | resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz#90538e60b672ecf1b448f5f4f5433d37e79a3ec3" 115 | integrity sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg== 116 | dependencies: 117 | "@babel/types" "^7.16.0" 118 | 119 | "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6": 120 | version "7.18.6" 121 | resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" 122 | integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== 123 | dependencies: 124 | "@babel/types" "^7.18.6" 125 | 126 | "@babel/helper-module-transforms@^7.18.9": 127 | version "7.18.9" 128 | resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz#5a1079c005135ed627442df31a42887e80fcb712" 129 | integrity sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g== 130 | dependencies: 131 | "@babel/helper-environment-visitor" "^7.18.9" 132 | "@babel/helper-module-imports" "^7.18.6" 133 | "@babel/helper-simple-access" "^7.18.6" 134 | "@babel/helper-split-export-declaration" "^7.18.6" 135 | "@babel/helper-validator-identifier" "^7.18.6" 136 | "@babel/template" "^7.18.6" 137 | "@babel/traverse" "^7.18.9" 138 | "@babel/types" "^7.18.9" 139 | 140 | "@babel/helper-optimise-call-expression@^7.18.6": 141 | version "7.18.6" 142 | resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe" 143 | integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== 144 | dependencies: 145 | "@babel/types" "^7.18.6" 146 | 147 | "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9": 148 | version "7.18.9" 149 | resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz#4b8aea3b069d8cb8a72cdfe28ddf5ceca695ef2f" 150 | integrity sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w== 151 | 152 | "@babel/helper-replace-supers@^7.18.9": 153 | version "7.18.9" 154 | resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz#1092e002feca980fbbb0bd4d51b74a65c6a500e6" 155 | integrity sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ== 156 | dependencies: 157 | "@babel/helper-environment-visitor" "^7.18.9" 158 | "@babel/helper-member-expression-to-functions" "^7.18.9" 159 | "@babel/helper-optimise-call-expression" "^7.18.6" 160 | "@babel/traverse" "^7.18.9" 161 | "@babel/types" "^7.18.9" 162 | 163 | "@babel/helper-simple-access@^7.18.6": 164 | version "7.18.6" 165 | resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz#d6d8f51f4ac2978068df934b569f08f29788c7ea" 166 | integrity sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g== 167 | dependencies: 168 | "@babel/types" "^7.18.6" 169 | 170 | "@babel/helper-split-export-declaration@^7.18.6": 171 | version "7.18.6" 172 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" 173 | integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== 174 | dependencies: 175 | "@babel/types" "^7.18.6" 176 | 177 | "@babel/helper-string-parser@^7.18.10": 178 | version "7.18.10" 179 | resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz#181f22d28ebe1b3857fa575f5c290b1aaf659b56" 180 | integrity sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw== 181 | 182 | "@babel/helper-validator-identifier@^7.18.6": 183 | version "7.18.6" 184 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz#9c97e30d31b2b8c72a1d08984f2ca9b574d7a076" 185 | integrity sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g== 186 | 187 | "@babel/helper-validator-option@^7.18.6": 188 | version "7.18.6" 189 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" 190 | integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== 191 | 192 | "@babel/helpers@^7.18.9": 193 | version "7.18.9" 194 | resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.18.9.tgz#4bef3b893f253a1eced04516824ede94dcfe7ff9" 195 | integrity sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ== 196 | dependencies: 197 | "@babel/template" "^7.18.6" 198 | "@babel/traverse" "^7.18.9" 199 | "@babel/types" "^7.18.9" 200 | 201 | "@babel/highlight@^7.18.6": 202 | version "7.18.6" 203 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" 204 | integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== 205 | dependencies: 206 | "@babel/helper-validator-identifier" "^7.18.6" 207 | chalk "^2.0.0" 208 | js-tokens "^4.0.0" 209 | 210 | "@babel/parser@^7.18.10", "@babel/parser@^7.18.11": 211 | version "7.18.11" 212 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.11.tgz#68bb07ab3d380affa9a3f96728df07969645d2d9" 213 | integrity sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ== 214 | 215 | "@babel/plugin-syntax-jsx@^7.16.5": 216 | version "7.18.6" 217 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" 218 | integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== 219 | dependencies: 220 | "@babel/helper-plugin-utils" "^7.18.6" 221 | 222 | "@babel/plugin-syntax-typescript@^7.18.6": 223 | version "7.18.6" 224 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz#1c09cd25795c7c2b8a4ba9ae49394576d4133285" 225 | integrity sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA== 226 | dependencies: 227 | "@babel/helper-plugin-utils" "^7.18.6" 228 | 229 | "@babel/plugin-transform-typescript@^7.18.6": 230 | version "7.18.12" 231 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.18.12.tgz#712e9a71b9e00fde9f8c0238e0cceee86ab2f8fd" 232 | integrity sha512-2vjjam0cum0miPkenUbQswKowuxs/NjMwIKEq0zwegRxXk12C9YOF9STXnaUptITOtOJHKHpzvvWYOjbm6tc0w== 233 | dependencies: 234 | "@babel/helper-create-class-features-plugin" "^7.18.9" 235 | "@babel/helper-plugin-utils" "^7.18.9" 236 | "@babel/plugin-syntax-typescript" "^7.18.6" 237 | 238 | "@babel/preset-typescript@^7.18.6": 239 | version "7.18.6" 240 | resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz#ce64be3e63eddc44240c6358daefac17b3186399" 241 | integrity sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ== 242 | dependencies: 243 | "@babel/helper-plugin-utils" "^7.18.6" 244 | "@babel/helper-validator-option" "^7.18.6" 245 | "@babel/plugin-transform-typescript" "^7.18.6" 246 | 247 | "@babel/template@^7.18.10", "@babel/template@^7.18.6": 248 | version "7.18.10" 249 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71" 250 | integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA== 251 | dependencies: 252 | "@babel/code-frame" "^7.18.6" 253 | "@babel/parser" "^7.18.10" 254 | "@babel/types" "^7.18.10" 255 | 256 | "@babel/traverse@^7.18.10", "@babel/traverse@^7.18.9": 257 | version "7.18.11" 258 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.18.11.tgz#3d51f2afbd83ecf9912bcbb5c4d94e3d2ddaa16f" 259 | integrity sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ== 260 | dependencies: 261 | "@babel/code-frame" "^7.18.6" 262 | "@babel/generator" "^7.18.10" 263 | "@babel/helper-environment-visitor" "^7.18.9" 264 | "@babel/helper-function-name" "^7.18.9" 265 | "@babel/helper-hoist-variables" "^7.18.6" 266 | "@babel/helper-split-export-declaration" "^7.18.6" 267 | "@babel/parser" "^7.18.11" 268 | "@babel/types" "^7.18.10" 269 | debug "^4.1.0" 270 | globals "^11.1.0" 271 | 272 | "@babel/types@^7.16.0", "@babel/types@^7.18.10", "@babel/types@^7.18.4", "@babel/types@^7.18.6", "@babel/types@^7.18.9": 273 | version "7.18.10" 274 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.18.10.tgz#4908e81b6b339ca7c6b7a555a5fc29446f26dde6" 275 | integrity sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ== 276 | dependencies: 277 | "@babel/helper-string-parser" "^7.18.10" 278 | "@babel/helper-validator-identifier" "^7.18.6" 279 | to-fast-properties "^2.0.0" 280 | 281 | "@esbuild/linux-loong64@0.14.54": 282 | version "0.14.54" 283 | resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.14.54.tgz#de2a4be678bd4d0d1ffbb86e6de779cde5999028" 284 | integrity sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw== 285 | 286 | "@jridgewell/gen-mapping@^0.1.0": 287 | version "0.1.1" 288 | resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" 289 | integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== 290 | dependencies: 291 | "@jridgewell/set-array" "^1.0.0" 292 | "@jridgewell/sourcemap-codec" "^1.4.10" 293 | 294 | "@jridgewell/gen-mapping@^0.3.2": 295 | version "0.3.2" 296 | resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" 297 | integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== 298 | dependencies: 299 | "@jridgewell/set-array" "^1.0.1" 300 | "@jridgewell/sourcemap-codec" "^1.4.10" 301 | "@jridgewell/trace-mapping" "^0.3.9" 302 | 303 | "@jridgewell/resolve-uri@^3.0.3": 304 | version "3.1.0" 305 | resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" 306 | integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== 307 | 308 | "@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": 309 | version "1.1.2" 310 | resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" 311 | integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== 312 | 313 | "@jridgewell/sourcemap-codec@^1.4.10": 314 | version "1.4.14" 315 | resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" 316 | integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== 317 | 318 | "@jridgewell/trace-mapping@^0.3.9": 319 | version "0.3.15" 320 | resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz#aba35c48a38d3fd84b37e66c9c0423f9744f9774" 321 | integrity sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g== 322 | dependencies: 323 | "@jridgewell/resolve-uri" "^3.0.3" 324 | "@jridgewell/sourcemap-codec" "^1.4.10" 325 | 326 | ansi-styles@^3.2.1: 327 | version "3.2.1" 328 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 329 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 330 | dependencies: 331 | color-convert "^1.9.0" 332 | 333 | babel-plugin-jsx-dom-expressions@^0.33.14: 334 | version "0.33.14" 335 | resolved "https://registry.yarnpkg.com/babel-plugin-jsx-dom-expressions/-/babel-plugin-jsx-dom-expressions-0.33.14.tgz#18e3bf41487a4aa85669e85750b7ed34e95ae145" 336 | integrity sha512-91T8uEz6Wb42bUm5vxRBawY05fBHiwUxah/xWBimuWpH3nf7E0KJ0Wm/s8R7lxRIZzwGCILv1IBlUCqA50WOVw== 337 | dependencies: 338 | "@babel/helper-module-imports" "7.16.0" 339 | "@babel/plugin-syntax-jsx" "^7.16.5" 340 | "@babel/types" "^7.16.0" 341 | html-entities "2.3.2" 342 | 343 | babel-preset-solid@^1.4.6: 344 | version "1.4.8" 345 | resolved "https://registry.yarnpkg.com/babel-preset-solid/-/babel-preset-solid-1.4.8.tgz#0b14f670d0dd53956024d70d8d980ebf399372b4" 346 | integrity sha512-Qv1yoE7yIux68egUsUUEV26t7B0KLNyXKz1MTk89GJDc6mt+2s7+lDVr4tXa29PTZ/hXDTu2uLbEN/1OtmFFBg== 347 | dependencies: 348 | babel-plugin-jsx-dom-expressions "^0.33.14" 349 | 350 | browserslist@^4.20.2: 351 | version "4.21.3" 352 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.3.tgz#5df277694eb3c48bc5c4b05af3e8b7e09c5a6d1a" 353 | integrity sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ== 354 | dependencies: 355 | caniuse-lite "^1.0.30001370" 356 | electron-to-chromium "^1.4.202" 357 | node-releases "^2.0.6" 358 | update-browserslist-db "^1.0.5" 359 | 360 | caniuse-lite@^1.0.30001370: 361 | version "1.0.30001378" 362 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001378.tgz#3d2159bf5a8f9ca093275b0d3ecc717b00f27b67" 363 | integrity sha512-JVQnfoO7FK7WvU4ZkBRbPjaot4+YqxogSDosHv0Hv5mWpUESmN+UubMU6L/hGz8QlQ2aY5U0vR6MOs6j/CXpNA== 364 | 365 | chalk@^2.0.0: 366 | version "2.4.2" 367 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 368 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 369 | dependencies: 370 | ansi-styles "^3.2.1" 371 | escape-string-regexp "^1.0.5" 372 | supports-color "^5.3.0" 373 | 374 | color-convert@^1.9.0: 375 | version "1.9.3" 376 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 377 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 378 | dependencies: 379 | color-name "1.1.3" 380 | 381 | color-name@1.1.3: 382 | version "1.1.3" 383 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 384 | integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== 385 | 386 | convert-source-map@^1.7.0: 387 | version "1.8.0" 388 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" 389 | integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== 390 | dependencies: 391 | safe-buffer "~5.1.1" 392 | 393 | debug@^4.1.0: 394 | version "4.3.4" 395 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" 396 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== 397 | dependencies: 398 | ms "2.1.2" 399 | 400 | electron-to-chromium@^1.4.202: 401 | version "1.4.225" 402 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz#3e27bdd157cbaf19768141f2e0f0f45071e52338" 403 | integrity sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw== 404 | 405 | esbuild-android-64@0.14.54: 406 | version "0.14.54" 407 | resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.14.54.tgz#505f41832884313bbaffb27704b8bcaa2d8616be" 408 | integrity sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ== 409 | 410 | esbuild-android-arm64@0.14.54: 411 | version "0.14.54" 412 | resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.54.tgz#8ce69d7caba49646e009968fe5754a21a9871771" 413 | integrity sha512-F9E+/QDi9sSkLaClO8SOV6etqPd+5DgJje1F9lOWoNncDdOBL2YF59IhsWATSt0TLZbYCf3pNlTHvVV5VfHdvg== 414 | 415 | esbuild-darwin-64@0.14.54: 416 | version "0.14.54" 417 | resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.54.tgz#24ba67b9a8cb890a3c08d9018f887cc221cdda25" 418 | integrity sha512-jtdKWV3nBviOd5v4hOpkVmpxsBy90CGzebpbO9beiqUYVMBtSc0AL9zGftFuBon7PNDcdvNCEuQqw2x0wP9yug== 419 | 420 | esbuild-darwin-arm64@0.14.54: 421 | version "0.14.54" 422 | resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.54.tgz#3f7cdb78888ee05e488d250a2bdaab1fa671bf73" 423 | integrity sha512-OPafJHD2oUPyvJMrsCvDGkRrVCar5aVyHfWGQzY1dWnzErjrDuSETxwA2HSsyg2jORLY8yBfzc1MIpUkXlctmw== 424 | 425 | esbuild-freebsd-64@0.14.54: 426 | version "0.14.54" 427 | resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.54.tgz#09250f997a56ed4650f3e1979c905ffc40bbe94d" 428 | integrity sha512-OKwd4gmwHqOTp4mOGZKe/XUlbDJ4Q9TjX0hMPIDBUWWu/kwhBAudJdBoxnjNf9ocIB6GN6CPowYpR/hRCbSYAg== 429 | 430 | esbuild-freebsd-arm64@0.14.54: 431 | version "0.14.54" 432 | resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.54.tgz#bafb46ed04fc5f97cbdb016d86947a79579f8e48" 433 | integrity sha512-sFwueGr7OvIFiQT6WeG0jRLjkjdqWWSrfbVwZp8iMP+8UHEHRBvlaxL6IuKNDwAozNUmbb8nIMXa7oAOARGs1Q== 434 | 435 | esbuild-linux-32@0.14.54: 436 | version "0.14.54" 437 | resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.54.tgz#e2a8c4a8efdc355405325033fcebeb941f781fe5" 438 | integrity sha512-1ZuY+JDI//WmklKlBgJnglpUL1owm2OX+8E1syCD6UAxcMM/XoWd76OHSjl/0MR0LisSAXDqgjT3uJqT67O3qw== 439 | 440 | esbuild-linux-64@0.14.54: 441 | version "0.14.54" 442 | resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.54.tgz#de5fdba1c95666cf72369f52b40b03be71226652" 443 | integrity sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg== 444 | 445 | esbuild-linux-arm64@0.14.54: 446 | version "0.14.54" 447 | resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.54.tgz#dae4cd42ae9787468b6a5c158da4c84e83b0ce8b" 448 | integrity sha512-WL71L+0Rwv+Gv/HTmxTEmpv0UgmxYa5ftZILVi2QmZBgX3q7+tDeOQNqGtdXSdsL8TQi1vIaVFHUPDe0O0kdig== 449 | 450 | esbuild-linux-arm@0.14.54: 451 | version "0.14.54" 452 | resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.54.tgz#a2c1dff6d0f21dbe8fc6998a122675533ddfcd59" 453 | integrity sha512-qqz/SjemQhVMTnvcLGoLOdFpCYbz4v4fUo+TfsWG+1aOu70/80RV6bgNpR2JCrppV2moUQkww+6bWxXRL9YMGw== 454 | 455 | esbuild-linux-mips64le@0.14.54: 456 | version "0.14.54" 457 | resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.54.tgz#d9918e9e4cb972f8d6dae8e8655bf9ee131eda34" 458 | integrity sha512-qTHGQB8D1etd0u1+sB6p0ikLKRVuCWhYQhAHRPkO+OF3I/iSlTKNNS0Lh2Oc0g0UFGguaFZZiPJdJey3AGpAlw== 459 | 460 | esbuild-linux-ppc64le@0.14.54: 461 | version "0.14.54" 462 | resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.54.tgz#3f9a0f6d41073fb1a640680845c7de52995f137e" 463 | integrity sha512-j3OMlzHiqwZBDPRCDFKcx595XVfOfOnv68Ax3U4UKZ3MTYQB5Yz3X1mn5GnodEVYzhtZgxEBidLWeIs8FDSfrQ== 464 | 465 | esbuild-linux-riscv64@0.14.54: 466 | version "0.14.54" 467 | resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.54.tgz#618853c028178a61837bc799d2013d4695e451c8" 468 | integrity sha512-y7Vt7Wl9dkOGZjxQZnDAqqn+XOqFD7IMWiewY5SPlNlzMX39ocPQlOaoxvT4FllA5viyV26/QzHtvTjVNOxHZg== 469 | 470 | esbuild-linux-s390x@0.14.54: 471 | version "0.14.54" 472 | resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.54.tgz#d1885c4c5a76bbb5a0fe182e2c8c60eb9e29f2a6" 473 | integrity sha512-zaHpW9dziAsi7lRcyV4r8dhfG1qBidQWUXweUjnw+lliChJqQr+6XD71K41oEIC3Mx1KStovEmlzm+MkGZHnHA== 474 | 475 | esbuild-netbsd-64@0.14.54: 476 | version "0.14.54" 477 | resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.54.tgz#69ae917a2ff241b7df1dbf22baf04bd330349e81" 478 | integrity sha512-PR01lmIMnfJTgeU9VJTDY9ZerDWVFIUzAtJuDHwwceppW7cQWjBBqP48NdeRtoP04/AtO9a7w3viI+PIDr6d+w== 479 | 480 | esbuild-openbsd-64@0.14.54: 481 | version "0.14.54" 482 | resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.54.tgz#db4c8495287a350a6790de22edea247a57c5d47b" 483 | integrity sha512-Qyk7ikT2o7Wu76UsvvDS5q0amJvmRzDyVlL0qf5VLsLchjCa1+IAvd8kTBgUxD7VBUUVgItLkk609ZHUc1oCaw== 484 | 485 | esbuild-sunos-64@0.14.54: 486 | version "0.14.54" 487 | resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.54.tgz#54287ee3da73d3844b721c21bc80c1dc7e1bf7da" 488 | integrity sha512-28GZ24KmMSeKi5ueWzMcco6EBHStL3B6ubM7M51RmPwXQGLe0teBGJocmWhgwccA1GeFXqxzILIxXpHbl9Q/Kw== 489 | 490 | esbuild-windows-32@0.14.54: 491 | version "0.14.54" 492 | resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.54.tgz#f8aaf9a5667630b40f0fb3aa37bf01bbd340ce31" 493 | integrity sha512-T+rdZW19ql9MjS7pixmZYVObd9G7kcaZo+sETqNH4RCkuuYSuv9AGHUVnPoP9hhuE1WM1ZimHz1CIBHBboLU7w== 494 | 495 | esbuild-windows-64@0.14.54: 496 | version "0.14.54" 497 | resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.54.tgz#bf54b51bd3e9b0f1886ffdb224a4176031ea0af4" 498 | integrity sha512-AoHTRBUuYwXtZhjXZbA1pGfTo8cJo3vZIcWGLiUcTNgHpJJMC1rVA44ZereBHMJtotyN71S8Qw0npiCIkW96cQ== 499 | 500 | esbuild-windows-arm64@0.14.54: 501 | version "0.14.54" 502 | resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.54.tgz#937d15675a15e4b0e4fafdbaa3a01a776a2be982" 503 | integrity sha512-M0kuUvXhot1zOISQGXwWn6YtS+Y/1RT9WrVIOywZnJHo3jCDyewAc79aKNQWFCQm+xNHVTq9h8dZKvygoXQQRg== 504 | 505 | esbuild@^0.14.27: 506 | version "0.14.54" 507 | resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.54.tgz#8b44dcf2b0f1a66fc22459943dccf477535e9aa2" 508 | integrity sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA== 509 | optionalDependencies: 510 | "@esbuild/linux-loong64" "0.14.54" 511 | esbuild-android-64 "0.14.54" 512 | esbuild-android-arm64 "0.14.54" 513 | esbuild-darwin-64 "0.14.54" 514 | esbuild-darwin-arm64 "0.14.54" 515 | esbuild-freebsd-64 "0.14.54" 516 | esbuild-freebsd-arm64 "0.14.54" 517 | esbuild-linux-32 "0.14.54" 518 | esbuild-linux-64 "0.14.54" 519 | esbuild-linux-arm "0.14.54" 520 | esbuild-linux-arm64 "0.14.54" 521 | esbuild-linux-mips64le "0.14.54" 522 | esbuild-linux-ppc64le "0.14.54" 523 | esbuild-linux-riscv64 "0.14.54" 524 | esbuild-linux-s390x "0.14.54" 525 | esbuild-netbsd-64 "0.14.54" 526 | esbuild-openbsd-64 "0.14.54" 527 | esbuild-sunos-64 "0.14.54" 528 | esbuild-windows-32 "0.14.54" 529 | esbuild-windows-64 "0.14.54" 530 | esbuild-windows-arm64 "0.14.54" 531 | 532 | escalade@^3.1.1: 533 | version "3.1.1" 534 | resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" 535 | integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== 536 | 537 | escape-string-regexp@^1.0.5: 538 | version "1.0.5" 539 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 540 | integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== 541 | 542 | fsevents@~2.3.2: 543 | version "2.3.2" 544 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" 545 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== 546 | 547 | function-bind@^1.1.1: 548 | version "1.1.1" 549 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 550 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 551 | 552 | gensync@^1.0.0-beta.2: 553 | version "1.0.0-beta.2" 554 | resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" 555 | integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== 556 | 557 | globals@^11.1.0: 558 | version "11.12.0" 559 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 560 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 561 | 562 | has-flag@^3.0.0: 563 | version "3.0.0" 564 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 565 | integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== 566 | 567 | has@^1.0.3: 568 | version "1.0.3" 569 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 570 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 571 | dependencies: 572 | function-bind "^1.1.1" 573 | 574 | html-entities@2.3.2: 575 | version "2.3.2" 576 | resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.2.tgz#760b404685cb1d794e4f4b744332e3b00dcfe488" 577 | integrity sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ== 578 | 579 | is-core-module@^2.9.0: 580 | version "2.10.0" 581 | resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed" 582 | integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg== 583 | dependencies: 584 | has "^1.0.3" 585 | 586 | is-what@^4.1.6: 587 | version "4.1.7" 588 | resolved "https://registry.yarnpkg.com/is-what/-/is-what-4.1.7.tgz#c41dc1d2d2d6a9285c624c2505f61849c8b1f9cc" 589 | integrity sha512-DBVOQNiPKnGMxRMLIYSwERAS5MVY1B7xYiGnpgctsOFvVDz9f9PFXXxMcTOHuoqYp4NK9qFYQaIC1NRRxLMpBQ== 590 | 591 | js-tokens@^4.0.0: 592 | version "4.0.0" 593 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 594 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 595 | 596 | jsesc@^2.5.1: 597 | version "2.5.2" 598 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" 599 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 600 | 601 | json5@^2.2.1: 602 | version "2.2.1" 603 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" 604 | integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== 605 | 606 | merge-anything@^5.0.2: 607 | version "5.0.2" 608 | resolved "https://registry.yarnpkg.com/merge-anything/-/merge-anything-5.0.2.tgz#b023af9b8f48e2fc71eb859d4ad834ba667f4150" 609 | integrity sha512-POPQBWkBC0vxdgzRJ2Mkj4+2NTKbvkHo93ih+jGDhNMLzIw+rYKjO7949hOQM2X7DxMHH1uoUkwWFLIzImw7gA== 610 | dependencies: 611 | is-what "^4.1.6" 612 | ts-toolbelt "^9.6.0" 613 | 614 | ms@2.1.2: 615 | version "2.1.2" 616 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 617 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 618 | 619 | nanoid@^3.3.4: 620 | version "3.3.4" 621 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" 622 | integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== 623 | 624 | node-releases@^2.0.6: 625 | version "2.0.6" 626 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503" 627 | integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg== 628 | 629 | path-parse@^1.0.7: 630 | version "1.0.7" 631 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" 632 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== 633 | 634 | picocolors@^1.0.0: 635 | version "1.0.0" 636 | resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" 637 | integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== 638 | 639 | postcss@^8.4.13: 640 | version "8.4.16" 641 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.16.tgz#33a1d675fac39941f5f445db0de4db2b6e01d43c" 642 | integrity sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ== 643 | dependencies: 644 | nanoid "^3.3.4" 645 | picocolors "^1.0.0" 646 | source-map-js "^1.0.2" 647 | 648 | resolve@^1.22.0: 649 | version "1.22.1" 650 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" 651 | integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== 652 | dependencies: 653 | is-core-module "^2.9.0" 654 | path-parse "^1.0.7" 655 | supports-preserve-symlinks-flag "^1.0.0" 656 | 657 | "rollup@>=2.59.0 <2.78.0": 658 | version "2.77.3" 659 | resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.77.3.tgz#8f00418d3a2740036e15deb653bed1a90ee0cc12" 660 | integrity sha512-/qxNTG7FbmefJWoeeYJFbHehJ2HNWnjkAFRKzWN/45eNBBF/r8lo992CwcJXEzyVxs5FmfId+vTSTQDb+bxA+g== 661 | optionalDependencies: 662 | fsevents "~2.3.2" 663 | 664 | safe-buffer@~5.1.1: 665 | version "5.1.2" 666 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 667 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 668 | 669 | semver@^6.3.0: 670 | version "6.3.0" 671 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 672 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 673 | 674 | solid-js@^1.4.8: 675 | version "1.4.8" 676 | resolved "https://registry.yarnpkg.com/solid-js/-/solid-js-1.4.8.tgz#a1e7f56c17d64c1729c6fd36fe513ca283e78dbd" 677 | integrity sha512-XErZdnnYYXF7OwGSUAPcua2y5/ELB/c53zFCpWiEGqxTNoH1iQghzI8EsHJXk06sNn+Z/TGhb8bPDNNGSgimag== 678 | 679 | solid-refresh@^0.4.1: 680 | version "0.4.1" 681 | resolved "https://registry.yarnpkg.com/solid-refresh/-/solid-refresh-0.4.1.tgz#0681ffd633d9ef4de35bb1f5ef0722c865079f2a" 682 | integrity sha512-v3tD/OXQcUyXLrWjPW1dXZyeWwP7/+GQNs8YTL09GBq+5FguA6IejJWUvJDrLIA4M0ho9/5zK2e9n+uy+4488g== 683 | dependencies: 684 | "@babel/generator" "^7.18.2" 685 | "@babel/helper-module-imports" "^7.16.7" 686 | "@babel/types" "^7.18.4" 687 | 688 | solid-top-loading-bar@^0.3.1: 689 | version "0.3.1" 690 | resolved "https://registry.yarnpkg.com/solid-top-loading-bar/-/solid-top-loading-bar-0.3.1.tgz#adaf5a1123dce398d9133a771c5ea48a869c1b4c" 691 | integrity sha512-MctfxsMMdKmbA89U49e8ZmaW7i4LQi82yUJqQ7sqdBBcFbGMNLoBYu2SAu1RmTRGpRYOevP9TkNm3IUs/6EimQ== 692 | dependencies: 693 | solid-js "^1.4.8" 694 | 695 | source-map-js@^1.0.2: 696 | version "1.0.2" 697 | resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" 698 | integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== 699 | 700 | supports-color@^5.3.0: 701 | version "5.5.0" 702 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 703 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 704 | dependencies: 705 | has-flag "^3.0.0" 706 | 707 | supports-preserve-symlinks-flag@^1.0.0: 708 | version "1.0.0" 709 | resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" 710 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== 711 | 712 | to-fast-properties@^2.0.0: 713 | version "2.0.0" 714 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 715 | integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== 716 | 717 | ts-toolbelt@^9.6.0: 718 | version "9.6.0" 719 | resolved "https://registry.yarnpkg.com/ts-toolbelt/-/ts-toolbelt-9.6.0.tgz#50a25426cfed500d4a09bd1b3afb6f28879edfd5" 720 | integrity sha512-nsZd8ZeNUzukXPlJmTBwUAuABDe/9qtVDelJeT/qW0ow3ZS3BsQJtNkan1802aM9Uf68/Y8ljw86Hu0h5IUW3w== 721 | 722 | typescript@^4.6.4: 723 | version "4.7.4" 724 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.4.tgz#1a88596d1cf47d59507a1bcdfb5b9dfe4d488235" 725 | integrity sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ== 726 | 727 | update-browserslist-db@^1.0.5: 728 | version "1.0.5" 729 | resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz#be06a5eedd62f107b7c19eb5bcefb194411abf38" 730 | integrity sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q== 731 | dependencies: 732 | escalade "^3.1.1" 733 | picocolors "^1.0.0" 734 | 735 | vite-plugin-solid@^2.2.6: 736 | version "2.3.0" 737 | resolved "https://registry.yarnpkg.com/vite-plugin-solid/-/vite-plugin-solid-2.3.0.tgz#d479459dc45d30ce8eea1eafdf7bcf85c25a8004" 738 | integrity sha512-N2sa54C3UZC2nN5vpj5o6YP+XdIAZW6n6xv8OasxNAcAJPFeZT7EOVvumL0V4c8hBz1yuYniMWdESY8807fVSg== 739 | dependencies: 740 | "@babel/core" "^7.18.6" 741 | "@babel/preset-typescript" "^7.18.6" 742 | babel-preset-solid "^1.4.6" 743 | merge-anything "^5.0.2" 744 | solid-refresh "^0.4.1" 745 | 746 | vite@^2.9.9: 747 | version "2.9.15" 748 | resolved "https://registry.yarnpkg.com/vite/-/vite-2.9.15.tgz#2858dd5b2be26aa394a283e62324281892546f0b" 749 | integrity sha512-fzMt2jK4vQ3yK56te3Kqpkaeq9DkcZfBbzHwYpobasvgYmP2SoAr6Aic05CsB4CzCZbsDv4sujX3pkEGhLabVQ== 750 | dependencies: 751 | esbuild "^0.14.27" 752 | postcss "^8.4.13" 753 | resolve "^1.22.0" 754 | rollup ">=2.59.0 <2.78.0" 755 | optionalDependencies: 756 | fsevents "~2.3.2" 757 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "solid-top-loading-bar", 3 | "version": "0.3.1", 4 | "description": "A very simple, highly customisable solidjs top loader component, ported from react-top-loading-bar", 5 | "author": { 6 | "name": "Aidan Aden", 7 | "email": "vroomvroom@mailbox.org", 8 | "url": "https://github.com/aidanaden" 9 | }, 10 | "license": "MIT", 11 | "type": "module", 12 | "source": "src/index.tsx", 13 | "main": "dist/esm/index.js", 14 | "module": "dist/esm/index.js", 15 | "types": "dist/types/index.d.ts", 16 | "exports": { 17 | ".": { 18 | "solid": "./dist/source/index.jsx", 19 | "default": "./dist/esm/index.js", 20 | "import": "./dist/esm/index.js" 21 | } 22 | }, 23 | "sideEffects": false, 24 | "engines": { 25 | "node": ">=10", 26 | "yarn": ">=1.22.5" 27 | }, 28 | "files": [ 29 | "dist" 30 | ], 31 | "scripts": { 32 | "dev": "cd example && vite", 33 | "build": "rollup -c", 34 | "prepublishOnly": "yarn build", 35 | "serve": "vite preview" 36 | }, 37 | "devDependencies": { 38 | "rollup": "^2.78.1", 39 | "rollup-preset-solid": "^1.4.0", 40 | "typescript": "^4.7.4", 41 | "vite": "^3.0.9", 42 | "vite-plugin-solid": "^2.3.0" 43 | }, 44 | "dependencies": { 45 | "solid-js": "^1.4.8" 46 | }, 47 | "peerDependencies": { 48 | "solid-js": "^1.4.8" 49 | }, 50 | "keywords": [ 51 | "solidjs component", 52 | "solid-loading", 53 | "solid-loader", 54 | "animated loader", 55 | "solidjs youtube like loader", 56 | "solidjs", 57 | "animated solidjs loader", 58 | "solid-animated-loader", 59 | "solid-top-loader", 60 | "solid", 61 | "solid-component", 62 | "loading-bar", 63 | "youtube-loading-bar", 64 | "loading", 65 | "solid-loading-bar", 66 | "loading bar", 67 | "smooth", 68 | "animated", 69 | "youtube loading bar", 70 | "top loading bar", 71 | "component" 72 | ], 73 | "repository": { 74 | "type": "git", 75 | "url": "https://github.com/aidanaden/solid-top-loading-bar.git" 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | specifiers: 4 | autoprefixer: ^10.4.7 5 | postcss: ^8.4.14 6 | solid-js: ^1.4.2 7 | tailwindcss: ^3.0.24 8 | typescript: ^4.6.4 9 | vite: ^2.9.9 10 | vite-plugin-solid: ^2.2.6 11 | 12 | dependencies: 13 | solid-js: 1.4.2 14 | 15 | devDependencies: 16 | autoprefixer: 10.4.7_postcss@8.4.14 17 | postcss: 8.4.14 18 | tailwindcss: 3.0.24 19 | typescript: 4.6.4 20 | vite: 2.9.9 21 | vite-plugin-solid: 2.2.6 22 | 23 | packages: 24 | 25 | /@ampproject/remapping/2.1.2: 26 | resolution: {integrity: sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==} 27 | engines: {node: '>=6.0.0'} 28 | dependencies: 29 | '@jridgewell/trace-mapping': 0.3.4 30 | dev: true 31 | 32 | /@babel/code-frame/7.16.7: 33 | resolution: {integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==} 34 | engines: {node: '>=6.9.0'} 35 | dependencies: 36 | '@babel/highlight': 7.16.10 37 | dev: true 38 | 39 | /@babel/compat-data/7.17.7: 40 | resolution: {integrity: sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==} 41 | engines: {node: '>=6.9.0'} 42 | dev: true 43 | 44 | /@babel/core/7.17.8: 45 | resolution: {integrity: sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==} 46 | engines: {node: '>=6.9.0'} 47 | dependencies: 48 | '@ampproject/remapping': 2.1.2 49 | '@babel/code-frame': 7.16.7 50 | '@babel/generator': 7.17.7 51 | '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.8 52 | '@babel/helper-module-transforms': 7.17.7 53 | '@babel/helpers': 7.17.8 54 | '@babel/parser': 7.17.8 55 | '@babel/template': 7.16.7 56 | '@babel/traverse': 7.17.3 57 | '@babel/types': 7.17.0 58 | convert-source-map: 1.8.0 59 | debug: 4.3.4 60 | gensync: 1.0.0-beta.2 61 | json5: 2.2.1 62 | semver: 6.3.0 63 | transitivePeerDependencies: 64 | - supports-color 65 | dev: true 66 | 67 | /@babel/generator/7.17.7: 68 | resolution: {integrity: sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==} 69 | engines: {node: '>=6.9.0'} 70 | dependencies: 71 | '@babel/types': 7.17.0 72 | jsesc: 2.5.2 73 | source-map: 0.5.7 74 | dev: true 75 | 76 | /@babel/helper-annotate-as-pure/7.16.7: 77 | resolution: {integrity: sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==} 78 | engines: {node: '>=6.9.0'} 79 | dependencies: 80 | '@babel/types': 7.18.0 81 | dev: true 82 | 83 | /@babel/helper-compilation-targets/7.17.7_@babel+core@7.17.8: 84 | resolution: {integrity: sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==} 85 | engines: {node: '>=6.9.0'} 86 | peerDependencies: 87 | '@babel/core': ^7.0.0 88 | dependencies: 89 | '@babel/compat-data': 7.17.7 90 | '@babel/core': 7.17.8 91 | '@babel/helper-validator-option': 7.16.7 92 | browserslist: 4.20.2 93 | semver: 6.3.0 94 | dev: true 95 | 96 | /@babel/helper-create-class-features-plugin/7.17.6_@babel+core@7.17.8: 97 | resolution: {integrity: sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg==} 98 | engines: {node: '>=6.9.0'} 99 | peerDependencies: 100 | '@babel/core': ^7.0.0 101 | dependencies: 102 | '@babel/core': 7.17.8 103 | '@babel/helper-annotate-as-pure': 7.16.7 104 | '@babel/helper-environment-visitor': 7.16.7 105 | '@babel/helper-function-name': 7.16.7 106 | '@babel/helper-member-expression-to-functions': 7.17.7 107 | '@babel/helper-optimise-call-expression': 7.16.7 108 | '@babel/helper-replace-supers': 7.16.7 109 | '@babel/helper-split-export-declaration': 7.16.7 110 | transitivePeerDependencies: 111 | - supports-color 112 | dev: true 113 | 114 | /@babel/helper-environment-visitor/7.16.7: 115 | resolution: {integrity: sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==} 116 | engines: {node: '>=6.9.0'} 117 | dependencies: 118 | '@babel/types': 7.17.0 119 | dev: true 120 | 121 | /@babel/helper-function-name/7.16.7: 122 | resolution: {integrity: sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==} 123 | engines: {node: '>=6.9.0'} 124 | dependencies: 125 | '@babel/helper-get-function-arity': 7.16.7 126 | '@babel/template': 7.16.7 127 | '@babel/types': 7.17.0 128 | dev: true 129 | 130 | /@babel/helper-get-function-arity/7.16.7: 131 | resolution: {integrity: sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==} 132 | engines: {node: '>=6.9.0'} 133 | dependencies: 134 | '@babel/types': 7.17.0 135 | dev: true 136 | 137 | /@babel/helper-hoist-variables/7.16.7: 138 | resolution: {integrity: sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==} 139 | engines: {node: '>=6.9.0'} 140 | dependencies: 141 | '@babel/types': 7.17.0 142 | dev: true 143 | 144 | /@babel/helper-member-expression-to-functions/7.17.7: 145 | resolution: {integrity: sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==} 146 | engines: {node: '>=6.9.0'} 147 | dependencies: 148 | '@babel/types': 7.18.0 149 | dev: true 150 | 151 | /@babel/helper-module-imports/7.16.0: 152 | resolution: {integrity: sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==} 153 | engines: {node: '>=6.9.0'} 154 | dependencies: 155 | '@babel/types': 7.17.0 156 | dev: true 157 | 158 | /@babel/helper-module-imports/7.16.7: 159 | resolution: {integrity: sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==} 160 | engines: {node: '>=6.9.0'} 161 | dependencies: 162 | '@babel/types': 7.17.0 163 | dev: true 164 | 165 | /@babel/helper-module-transforms/7.17.7: 166 | resolution: {integrity: sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==} 167 | engines: {node: '>=6.9.0'} 168 | dependencies: 169 | '@babel/helper-environment-visitor': 7.16.7 170 | '@babel/helper-module-imports': 7.16.7 171 | '@babel/helper-simple-access': 7.17.7 172 | '@babel/helper-split-export-declaration': 7.16.7 173 | '@babel/helper-validator-identifier': 7.16.7 174 | '@babel/template': 7.16.7 175 | '@babel/traverse': 7.17.3 176 | '@babel/types': 7.17.0 177 | transitivePeerDependencies: 178 | - supports-color 179 | dev: true 180 | 181 | /@babel/helper-optimise-call-expression/7.16.7: 182 | resolution: {integrity: sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==} 183 | engines: {node: '>=6.9.0'} 184 | dependencies: 185 | '@babel/types': 7.18.0 186 | dev: true 187 | 188 | /@babel/helper-plugin-utils/7.16.7: 189 | resolution: {integrity: sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==} 190 | engines: {node: '>=6.9.0'} 191 | dev: true 192 | 193 | /@babel/helper-replace-supers/7.16.7: 194 | resolution: {integrity: sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==} 195 | engines: {node: '>=6.9.0'} 196 | dependencies: 197 | '@babel/helper-environment-visitor': 7.16.7 198 | '@babel/helper-member-expression-to-functions': 7.17.7 199 | '@babel/helper-optimise-call-expression': 7.16.7 200 | '@babel/traverse': 7.17.3 201 | '@babel/types': 7.18.0 202 | transitivePeerDependencies: 203 | - supports-color 204 | dev: true 205 | 206 | /@babel/helper-simple-access/7.17.7: 207 | resolution: {integrity: sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==} 208 | engines: {node: '>=6.9.0'} 209 | dependencies: 210 | '@babel/types': 7.17.0 211 | dev: true 212 | 213 | /@babel/helper-split-export-declaration/7.16.7: 214 | resolution: {integrity: sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==} 215 | engines: {node: '>=6.9.0'} 216 | dependencies: 217 | '@babel/types': 7.17.0 218 | dev: true 219 | 220 | /@babel/helper-validator-identifier/7.16.7: 221 | resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==} 222 | engines: {node: '>=6.9.0'} 223 | dev: true 224 | 225 | /@babel/helper-validator-option/7.16.7: 226 | resolution: {integrity: sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==} 227 | engines: {node: '>=6.9.0'} 228 | dev: true 229 | 230 | /@babel/helpers/7.17.8: 231 | resolution: {integrity: sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==} 232 | engines: {node: '>=6.9.0'} 233 | dependencies: 234 | '@babel/template': 7.16.7 235 | '@babel/traverse': 7.17.3 236 | '@babel/types': 7.17.0 237 | transitivePeerDependencies: 238 | - supports-color 239 | dev: true 240 | 241 | /@babel/highlight/7.16.10: 242 | resolution: {integrity: sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==} 243 | engines: {node: '>=6.9.0'} 244 | dependencies: 245 | '@babel/helper-validator-identifier': 7.16.7 246 | chalk: 2.4.2 247 | js-tokens: 4.0.0 248 | dev: true 249 | 250 | /@babel/parser/7.17.8: 251 | resolution: {integrity: sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==} 252 | engines: {node: '>=6.0.0'} 253 | hasBin: true 254 | dependencies: 255 | '@babel/types': 7.17.0 256 | dev: true 257 | 258 | /@babel/plugin-syntax-jsx/7.16.7_@babel+core@7.17.8: 259 | resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==} 260 | engines: {node: '>=6.9.0'} 261 | peerDependencies: 262 | '@babel/core': ^7.0.0-0 263 | dependencies: 264 | '@babel/core': 7.17.8 265 | '@babel/helper-plugin-utils': 7.16.7 266 | dev: true 267 | 268 | /@babel/plugin-syntax-typescript/7.16.7_@babel+core@7.17.8: 269 | resolution: {integrity: sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==} 270 | engines: {node: '>=6.9.0'} 271 | peerDependencies: 272 | '@babel/core': ^7.0.0-0 273 | dependencies: 274 | '@babel/core': 7.17.8 275 | '@babel/helper-plugin-utils': 7.16.7 276 | dev: true 277 | 278 | /@babel/plugin-transform-typescript/7.16.8_@babel+core@7.17.8: 279 | resolution: {integrity: sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ==} 280 | engines: {node: '>=6.9.0'} 281 | peerDependencies: 282 | '@babel/core': ^7.0.0-0 283 | dependencies: 284 | '@babel/core': 7.17.8 285 | '@babel/helper-create-class-features-plugin': 7.17.6_@babel+core@7.17.8 286 | '@babel/helper-plugin-utils': 7.16.7 287 | '@babel/plugin-syntax-typescript': 7.16.7_@babel+core@7.17.8 288 | transitivePeerDependencies: 289 | - supports-color 290 | dev: true 291 | 292 | /@babel/preset-typescript/7.16.7_@babel+core@7.17.8: 293 | resolution: {integrity: sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ==} 294 | engines: {node: '>=6.9.0'} 295 | peerDependencies: 296 | '@babel/core': ^7.0.0-0 297 | dependencies: 298 | '@babel/core': 7.17.8 299 | '@babel/helper-plugin-utils': 7.16.7 300 | '@babel/helper-validator-option': 7.16.7 301 | '@babel/plugin-transform-typescript': 7.16.8_@babel+core@7.17.8 302 | transitivePeerDependencies: 303 | - supports-color 304 | dev: true 305 | 306 | /@babel/template/7.16.7: 307 | resolution: {integrity: sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==} 308 | engines: {node: '>=6.9.0'} 309 | dependencies: 310 | '@babel/code-frame': 7.16.7 311 | '@babel/parser': 7.17.8 312 | '@babel/types': 7.17.0 313 | dev: true 314 | 315 | /@babel/traverse/7.17.3: 316 | resolution: {integrity: sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==} 317 | engines: {node: '>=6.9.0'} 318 | dependencies: 319 | '@babel/code-frame': 7.16.7 320 | '@babel/generator': 7.17.7 321 | '@babel/helper-environment-visitor': 7.16.7 322 | '@babel/helper-function-name': 7.16.7 323 | '@babel/helper-hoist-variables': 7.16.7 324 | '@babel/helper-split-export-declaration': 7.16.7 325 | '@babel/parser': 7.17.8 326 | '@babel/types': 7.17.0 327 | debug: 4.3.4 328 | globals: 11.12.0 329 | transitivePeerDependencies: 330 | - supports-color 331 | dev: true 332 | 333 | /@babel/types/7.17.0: 334 | resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} 335 | engines: {node: '>=6.9.0'} 336 | dependencies: 337 | '@babel/helper-validator-identifier': 7.16.7 338 | to-fast-properties: 2.0.0 339 | dev: true 340 | 341 | /@babel/types/7.18.0: 342 | resolution: {integrity: sha512-vhAmLPAiC8j9K2GnsnLPCIH5wCrPpYIVBCWRBFDCB7Y/BXLqi/O+1RSTTM2bsmg6U/551+FCf9PNPxjABmxHTw==} 343 | engines: {node: '>=6.9.0'} 344 | dependencies: 345 | '@babel/helper-validator-identifier': 7.16.7 346 | to-fast-properties: 2.0.0 347 | dev: true 348 | 349 | /@jridgewell/resolve-uri/3.0.5: 350 | resolution: {integrity: sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==} 351 | engines: {node: '>=6.0.0'} 352 | dev: true 353 | 354 | /@jridgewell/sourcemap-codec/1.4.11: 355 | resolution: {integrity: sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==} 356 | dev: true 357 | 358 | /@jridgewell/trace-mapping/0.3.4: 359 | resolution: {integrity: sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==} 360 | dependencies: 361 | '@jridgewell/resolve-uri': 3.0.5 362 | '@jridgewell/sourcemap-codec': 1.4.11 363 | dev: true 364 | 365 | /@nodelib/fs.scandir/2.1.5: 366 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 367 | engines: {node: '>= 8'} 368 | dependencies: 369 | '@nodelib/fs.stat': 2.0.5 370 | run-parallel: 1.2.0 371 | dev: true 372 | 373 | /@nodelib/fs.stat/2.0.5: 374 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 375 | engines: {node: '>= 8'} 376 | dev: true 377 | 378 | /@nodelib/fs.walk/1.2.8: 379 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 380 | engines: {node: '>= 8'} 381 | dependencies: 382 | '@nodelib/fs.scandir': 2.1.5 383 | fastq: 1.13.0 384 | dev: true 385 | 386 | /acorn-node/1.8.2: 387 | resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==} 388 | dependencies: 389 | acorn: 7.4.1 390 | acorn-walk: 7.2.0 391 | xtend: 4.0.2 392 | dev: true 393 | 394 | /acorn-walk/7.2.0: 395 | resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} 396 | engines: {node: '>=0.4.0'} 397 | dev: true 398 | 399 | /acorn/7.4.1: 400 | resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} 401 | engines: {node: '>=0.4.0'} 402 | hasBin: true 403 | dev: true 404 | 405 | /ansi-styles/3.2.1: 406 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 407 | engines: {node: '>=4'} 408 | dependencies: 409 | color-convert: 1.9.3 410 | dev: true 411 | 412 | /anymatch/3.1.2: 413 | resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} 414 | engines: {node: '>= 8'} 415 | dependencies: 416 | normalize-path: 3.0.0 417 | picomatch: 2.3.1 418 | dev: true 419 | 420 | /arg/5.0.1: 421 | resolution: {integrity: sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==} 422 | dev: true 423 | 424 | /autoprefixer/10.4.7_postcss@8.4.14: 425 | resolution: {integrity: sha512-ypHju4Y2Oav95SipEcCcI5J7CGPuvz8oat7sUtYj3ClK44bldfvtvcxK6IEK++7rqB7YchDGzweZIBG+SD0ZAA==} 426 | engines: {node: ^10 || ^12 || >=14} 427 | hasBin: true 428 | peerDependencies: 429 | postcss: ^8.1.0 430 | dependencies: 431 | browserslist: 4.20.3 432 | caniuse-lite: 1.0.30001338 433 | fraction.js: 4.2.0 434 | normalize-range: 0.1.2 435 | picocolors: 1.0.0 436 | postcss: 8.4.14 437 | postcss-value-parser: 4.2.0 438 | dev: true 439 | 440 | /babel-plugin-jsx-dom-expressions/0.32.11_@babel+core@7.17.8: 441 | resolution: {integrity: sha512-hytqY33SGW6B3obSLt8K5X510UwtNkTktCCWgwba+QOOV0CowDFiqeL+0ru895FLacFaYANHFTu1y76dg3GVtw==} 442 | dependencies: 443 | '@babel/helper-module-imports': 7.16.0 444 | '@babel/plugin-syntax-jsx': 7.16.7_@babel+core@7.17.8 445 | '@babel/types': 7.17.0 446 | html-entities: 2.3.2 447 | transitivePeerDependencies: 448 | - '@babel/core' 449 | dev: true 450 | 451 | /babel-preset-solid/1.3.13_@babel+core@7.17.8: 452 | resolution: {integrity: sha512-MZnmsceI9yiHlwwFCSALTJhadk2eea/+2UP4ec4jkPZFR+XRKTLoIwRkrBh7uLtvHF+3lHGyUaXtZukOmmUwhA==} 453 | dependencies: 454 | babel-plugin-jsx-dom-expressions: 0.32.11_@babel+core@7.17.8 455 | transitivePeerDependencies: 456 | - '@babel/core' 457 | dev: true 458 | 459 | /binary-extensions/2.2.0: 460 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 461 | engines: {node: '>=8'} 462 | dev: true 463 | 464 | /braces/3.0.2: 465 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 466 | engines: {node: '>=8'} 467 | dependencies: 468 | fill-range: 7.0.1 469 | dev: true 470 | 471 | /browserslist/4.20.2: 472 | resolution: {integrity: sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==} 473 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 474 | hasBin: true 475 | dependencies: 476 | caniuse-lite: 1.0.30001320 477 | electron-to-chromium: 1.4.93 478 | escalade: 3.1.1 479 | node-releases: 2.0.2 480 | picocolors: 1.0.0 481 | dev: true 482 | 483 | /browserslist/4.20.3: 484 | resolution: {integrity: sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==} 485 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 486 | hasBin: true 487 | dependencies: 488 | caniuse-lite: 1.0.30001338 489 | electron-to-chromium: 1.4.137 490 | escalade: 3.1.1 491 | node-releases: 2.0.4 492 | picocolors: 1.0.0 493 | dev: true 494 | 495 | /camelcase-css/2.0.1: 496 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 497 | engines: {node: '>= 6'} 498 | dev: true 499 | 500 | /caniuse-lite/1.0.30001320: 501 | resolution: {integrity: sha512-MWPzG54AGdo3nWx7zHZTefseM5Y1ccM7hlQKHRqJkPozUaw3hNbBTMmLn16GG2FUzjR13Cr3NPfhIieX5PzXDA==} 502 | dev: true 503 | 504 | /caniuse-lite/1.0.30001338: 505 | resolution: {integrity: sha512-1gLHWyfVoRDsHieO+CaeYe7jSo/MT7D7lhaXUiwwbuR5BwQxORs0f1tAwUSQr3YbxRXJvxHM/PA5FfPQRnsPeQ==} 506 | dev: true 507 | 508 | /chalk/2.4.2: 509 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 510 | engines: {node: '>=4'} 511 | dependencies: 512 | ansi-styles: 3.2.1 513 | escape-string-regexp: 1.0.5 514 | supports-color: 5.5.0 515 | dev: true 516 | 517 | /chokidar/3.5.3: 518 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} 519 | engines: {node: '>= 8.10.0'} 520 | dependencies: 521 | anymatch: 3.1.2 522 | braces: 3.0.2 523 | glob-parent: 5.1.2 524 | is-binary-path: 2.1.0 525 | is-glob: 4.0.3 526 | normalize-path: 3.0.0 527 | readdirp: 3.6.0 528 | optionalDependencies: 529 | fsevents: 2.3.2 530 | dev: true 531 | 532 | /color-convert/1.9.3: 533 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 534 | dependencies: 535 | color-name: 1.1.3 536 | dev: true 537 | 538 | /color-name/1.1.3: 539 | resolution: {integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=} 540 | dev: true 541 | 542 | /color-name/1.1.4: 543 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 544 | dev: true 545 | 546 | /convert-source-map/1.8.0: 547 | resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==} 548 | dependencies: 549 | safe-buffer: 5.1.2 550 | dev: true 551 | 552 | /cssesc/3.0.0: 553 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 554 | engines: {node: '>=4'} 555 | hasBin: true 556 | dev: true 557 | 558 | /debug/4.3.4: 559 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 560 | engines: {node: '>=6.0'} 561 | peerDependencies: 562 | supports-color: '*' 563 | peerDependenciesMeta: 564 | supports-color: 565 | optional: true 566 | dependencies: 567 | ms: 2.1.2 568 | dev: true 569 | 570 | /defined/1.0.0: 571 | resolution: {integrity: sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=} 572 | dev: true 573 | 574 | /detective/5.2.0: 575 | resolution: {integrity: sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==} 576 | engines: {node: '>=0.8.0'} 577 | hasBin: true 578 | dependencies: 579 | acorn-node: 1.8.2 580 | defined: 1.0.0 581 | minimist: 1.2.6 582 | dev: true 583 | 584 | /didyoumean/1.2.2: 585 | resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} 586 | dev: true 587 | 588 | /dlv/1.1.3: 589 | resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} 590 | dev: true 591 | 592 | /electron-to-chromium/1.4.137: 593 | resolution: {integrity: sha512-0Rcpald12O11BUogJagX3HsCN3FE83DSqWjgXoHo5a72KUKMSfI39XBgJpgNNxS9fuGzytaFjE06kZkiVFy2qA==} 594 | dev: true 595 | 596 | /electron-to-chromium/1.4.93: 597 | resolution: {integrity: sha512-ywq9Pc5Gwwpv7NG767CtoU8xF3aAUQJjH9//Wy3MBCg4w5JSLbJUq2L8IsCdzPMjvSgxuue9WcVaTOyyxCL0aQ==} 598 | dev: true 599 | 600 | /esbuild-android-64/0.14.39: 601 | resolution: {integrity: sha512-EJOu04p9WgZk0UoKTqLId9VnIsotmI/Z98EXrKURGb3LPNunkeffqQIkjS2cAvidh+OK5uVrXaIP229zK6GvhQ==} 602 | engines: {node: '>=12'} 603 | cpu: [x64] 604 | os: [android] 605 | requiresBuild: true 606 | dev: true 607 | optional: true 608 | 609 | /esbuild-android-arm64/0.14.39: 610 | resolution: {integrity: sha512-+twajJqO7n3MrCz9e+2lVOnFplRsaGRwsq1KL/uOy7xK7QdRSprRQcObGDeDZUZsacD5gUkk6OiHiYp6RzU3CA==} 611 | engines: {node: '>=12'} 612 | cpu: [arm64] 613 | os: [android] 614 | requiresBuild: true 615 | dev: true 616 | optional: true 617 | 618 | /esbuild-darwin-64/0.14.39: 619 | resolution: {integrity: sha512-ImT6eUw3kcGcHoUxEcdBpi6LfTRWaV6+qf32iYYAfwOeV+XaQ/Xp5XQIBiijLeo+LpGci9M0FVec09nUw41a5g==} 620 | engines: {node: '>=12'} 621 | cpu: [x64] 622 | os: [darwin] 623 | requiresBuild: true 624 | dev: true 625 | optional: true 626 | 627 | /esbuild-darwin-arm64/0.14.39: 628 | resolution: {integrity: sha512-/fcQ5UhE05OiT+bW5v7/up1bDsnvaRZPJxXwzXsMRrr7rZqPa85vayrD723oWMT64dhrgWeA3FIneF8yER0XTw==} 629 | engines: {node: '>=12'} 630 | cpu: [arm64] 631 | os: [darwin] 632 | requiresBuild: true 633 | dev: true 634 | optional: true 635 | 636 | /esbuild-freebsd-64/0.14.39: 637 | resolution: {integrity: sha512-oMNH8lJI4wtgN5oxuFP7BQ22vgB/e3Tl5Woehcd6i2r6F3TszpCnNl8wo2d/KvyQ4zvLvCWAlRciumhQg88+kQ==} 638 | engines: {node: '>=12'} 639 | cpu: [x64] 640 | os: [freebsd] 641 | requiresBuild: true 642 | dev: true 643 | optional: true 644 | 645 | /esbuild-freebsd-arm64/0.14.39: 646 | resolution: {integrity: sha512-1GHK7kwk57ukY2yI4ILWKJXaxfr+8HcM/r/JKCGCPziIVlL+Wi7RbJ2OzMcTKZ1HpvEqCTBT/J6cO4ZEwW4Ypg==} 647 | engines: {node: '>=12'} 648 | cpu: [arm64] 649 | os: [freebsd] 650 | requiresBuild: true 651 | dev: true 652 | optional: true 653 | 654 | /esbuild-linux-32/0.14.39: 655 | resolution: {integrity: sha512-g97Sbb6g4zfRLIxHgW2pc393DjnkTRMeq3N1rmjDUABxpx8SjocK4jLen+/mq55G46eE2TA0MkJ4R3SpKMu7dg==} 656 | engines: {node: '>=12'} 657 | cpu: [ia32] 658 | os: [linux] 659 | requiresBuild: true 660 | dev: true 661 | optional: true 662 | 663 | /esbuild-linux-64/0.14.39: 664 | resolution: {integrity: sha512-4tcgFDYWdI+UbNMGlua9u1Zhu0N5R6u9tl5WOM8aVnNX143JZoBZLpCuUr5lCKhnD0SCO+5gUyMfupGrHtfggQ==} 665 | engines: {node: '>=12'} 666 | cpu: [x64] 667 | os: [linux] 668 | requiresBuild: true 669 | dev: true 670 | optional: true 671 | 672 | /esbuild-linux-arm/0.14.39: 673 | resolution: {integrity: sha512-t0Hn1kWVx5UpCzAJkKRfHeYOLyFnXwYynIkK54/h3tbMweGI7dj400D1k0Vvtj2u1P+JTRT9tx3AjtLEMmfVBQ==} 674 | engines: {node: '>=12'} 675 | cpu: [arm] 676 | os: [linux] 677 | requiresBuild: true 678 | dev: true 679 | optional: true 680 | 681 | /esbuild-linux-arm64/0.14.39: 682 | resolution: {integrity: sha512-23pc8MlD2D6Px1mV8GMglZlKgwgNKAO8gsgsLLcXWSs9lQsCYkIlMo/2Ycfo5JrDIbLdwgP8D2vpfH2KcBqrDQ==} 683 | engines: {node: '>=12'} 684 | cpu: [arm64] 685 | os: [linux] 686 | requiresBuild: true 687 | dev: true 688 | optional: true 689 | 690 | /esbuild-linux-mips64le/0.14.39: 691 | resolution: {integrity: sha512-epwlYgVdbmkuRr5n4es3B+yDI0I2e/nxhKejT9H0OLxFAlMkeQZxSpxATpDc9m8NqRci6Kwyb/SfmD1koG2Zuw==} 692 | engines: {node: '>=12'} 693 | cpu: [mips64el] 694 | os: [linux] 695 | requiresBuild: true 696 | dev: true 697 | optional: true 698 | 699 | /esbuild-linux-ppc64le/0.14.39: 700 | resolution: {integrity: sha512-W/5ezaq+rQiQBThIjLMNjsuhPHg+ApVAdTz2LvcuesZFMsJoQAW2hutoyg47XxpWi7aEjJGrkS26qCJKhRn3QQ==} 701 | engines: {node: '>=12'} 702 | cpu: [ppc64] 703 | os: [linux] 704 | requiresBuild: true 705 | dev: true 706 | optional: true 707 | 708 | /esbuild-linux-riscv64/0.14.39: 709 | resolution: {integrity: sha512-IS48xeokcCTKeQIOke2O0t9t14HPvwnZcy+5baG13Z1wxs9ZrC5ig5ypEQQh4QMKxURD5TpCLHw2W42CLuVZaA==} 710 | engines: {node: '>=12'} 711 | cpu: [riscv64] 712 | os: [linux] 713 | requiresBuild: true 714 | dev: true 715 | optional: true 716 | 717 | /esbuild-linux-s390x/0.14.39: 718 | resolution: {integrity: sha512-zEfunpqR8sMomqXhNTFEKDs+ik7HC01m3M60MsEjZOqaywHu5e5682fMsqOlZbesEAAaO9aAtRBsU7CHnSZWyA==} 719 | engines: {node: '>=12'} 720 | cpu: [s390x] 721 | os: [linux] 722 | requiresBuild: true 723 | dev: true 724 | optional: true 725 | 726 | /esbuild-netbsd-64/0.14.39: 727 | resolution: {integrity: sha512-Uo2suJBSIlrZCe4E0k75VDIFJWfZy+bOV6ih3T4MVMRJh1lHJ2UyGoaX4bOxomYN3t+IakHPyEoln1+qJ1qYaA==} 728 | engines: {node: '>=12'} 729 | cpu: [x64] 730 | os: [netbsd] 731 | requiresBuild: true 732 | dev: true 733 | optional: true 734 | 735 | /esbuild-openbsd-64/0.14.39: 736 | resolution: {integrity: sha512-secQU+EpgUPpYjJe3OecoeGKVvRMLeKUxSMGHnK+aK5uQM3n1FPXNJzyz1LHFOo0WOyw+uoCxBYdM4O10oaCAA==} 737 | engines: {node: '>=12'} 738 | cpu: [x64] 739 | os: [openbsd] 740 | requiresBuild: true 741 | dev: true 742 | optional: true 743 | 744 | /esbuild-sunos-64/0.14.39: 745 | resolution: {integrity: sha512-qHq0t5gePEDm2nqZLb+35p/qkaXVS7oIe32R0ECh2HOdiXXkj/1uQI9IRogGqKkK+QjDG+DhwiUw7QoHur/Rwg==} 746 | engines: {node: '>=12'} 747 | cpu: [x64] 748 | os: [sunos] 749 | requiresBuild: true 750 | dev: true 751 | optional: true 752 | 753 | /esbuild-windows-32/0.14.39: 754 | resolution: {integrity: sha512-XPjwp2OgtEX0JnOlTgT6E5txbRp6Uw54Isorm3CwOtloJazeIWXuiwK0ONJBVb/CGbiCpS7iP2UahGgd2p1x+Q==} 755 | engines: {node: '>=12'} 756 | cpu: [ia32] 757 | os: [win32] 758 | requiresBuild: true 759 | dev: true 760 | optional: true 761 | 762 | /esbuild-windows-64/0.14.39: 763 | resolution: {integrity: sha512-E2wm+5FwCcLpKsBHRw28bSYQw0Ikxb7zIMxw3OPAkiaQhLVr3dnVO8DofmbWhhf6b97bWzg37iSZ45ZDpLw7Ow==} 764 | engines: {node: '>=12'} 765 | cpu: [x64] 766 | os: [win32] 767 | requiresBuild: true 768 | dev: true 769 | optional: true 770 | 771 | /esbuild-windows-arm64/0.14.39: 772 | resolution: {integrity: sha512-sBZQz5D+Gd0EQ09tZRnz/PpVdLwvp/ufMtJ1iDFYddDaPpZXKqPyaxfYBLs3ueiaksQ26GGa7sci0OqFzNs7KA==} 773 | engines: {node: '>=12'} 774 | cpu: [arm64] 775 | os: [win32] 776 | requiresBuild: true 777 | dev: true 778 | optional: true 779 | 780 | /esbuild/0.14.39: 781 | resolution: {integrity: sha512-2kKujuzvRWYtwvNjYDY444LQIA3TyJhJIX3Yo4+qkFlDDtGlSicWgeHVJqMUP/2sSfH10PGwfsj+O2ro1m10xQ==} 782 | engines: {node: '>=12'} 783 | hasBin: true 784 | requiresBuild: true 785 | optionalDependencies: 786 | esbuild-android-64: 0.14.39 787 | esbuild-android-arm64: 0.14.39 788 | esbuild-darwin-64: 0.14.39 789 | esbuild-darwin-arm64: 0.14.39 790 | esbuild-freebsd-64: 0.14.39 791 | esbuild-freebsd-arm64: 0.14.39 792 | esbuild-linux-32: 0.14.39 793 | esbuild-linux-64: 0.14.39 794 | esbuild-linux-arm: 0.14.39 795 | esbuild-linux-arm64: 0.14.39 796 | esbuild-linux-mips64le: 0.14.39 797 | esbuild-linux-ppc64le: 0.14.39 798 | esbuild-linux-riscv64: 0.14.39 799 | esbuild-linux-s390x: 0.14.39 800 | esbuild-netbsd-64: 0.14.39 801 | esbuild-openbsd-64: 0.14.39 802 | esbuild-sunos-64: 0.14.39 803 | esbuild-windows-32: 0.14.39 804 | esbuild-windows-64: 0.14.39 805 | esbuild-windows-arm64: 0.14.39 806 | dev: true 807 | 808 | /escalade/3.1.1: 809 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 810 | engines: {node: '>=6'} 811 | dev: true 812 | 813 | /escape-string-regexp/1.0.5: 814 | resolution: {integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=} 815 | engines: {node: '>=0.8.0'} 816 | dev: true 817 | 818 | /fast-glob/3.2.11: 819 | resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==} 820 | engines: {node: '>=8.6.0'} 821 | dependencies: 822 | '@nodelib/fs.stat': 2.0.5 823 | '@nodelib/fs.walk': 1.2.8 824 | glob-parent: 5.1.2 825 | merge2: 1.4.1 826 | micromatch: 4.0.5 827 | dev: true 828 | 829 | /fastq/1.13.0: 830 | resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} 831 | dependencies: 832 | reusify: 1.0.4 833 | dev: true 834 | 835 | /fill-range/7.0.1: 836 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 837 | engines: {node: '>=8'} 838 | dependencies: 839 | to-regex-range: 5.0.1 840 | dev: true 841 | 842 | /fraction.js/4.2.0: 843 | resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} 844 | dev: true 845 | 846 | /fsevents/2.3.2: 847 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} 848 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 849 | os: [darwin] 850 | requiresBuild: true 851 | dev: true 852 | optional: true 853 | 854 | /function-bind/1.1.1: 855 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 856 | dev: true 857 | 858 | /gensync/1.0.0-beta.2: 859 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} 860 | engines: {node: '>=6.9.0'} 861 | dev: true 862 | 863 | /glob-parent/5.1.2: 864 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 865 | engines: {node: '>= 6'} 866 | dependencies: 867 | is-glob: 4.0.3 868 | dev: true 869 | 870 | /glob-parent/6.0.2: 871 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 872 | engines: {node: '>=10.13.0'} 873 | dependencies: 874 | is-glob: 4.0.3 875 | dev: true 876 | 877 | /globals/11.12.0: 878 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 879 | engines: {node: '>=4'} 880 | dev: true 881 | 882 | /has-flag/3.0.0: 883 | resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} 884 | engines: {node: '>=4'} 885 | dev: true 886 | 887 | /has/1.0.3: 888 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 889 | engines: {node: '>= 0.4.0'} 890 | dependencies: 891 | function-bind: 1.1.1 892 | dev: true 893 | 894 | /html-entities/2.3.2: 895 | resolution: {integrity: sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==} 896 | dev: true 897 | 898 | /is-binary-path/2.1.0: 899 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 900 | engines: {node: '>=8'} 901 | dependencies: 902 | binary-extensions: 2.2.0 903 | dev: true 904 | 905 | /is-core-module/2.9.0: 906 | resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==} 907 | dependencies: 908 | has: 1.0.3 909 | dev: true 910 | 911 | /is-extglob/2.1.1: 912 | resolution: {integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=} 913 | engines: {node: '>=0.10.0'} 914 | dev: true 915 | 916 | /is-glob/4.0.3: 917 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 918 | engines: {node: '>=0.10.0'} 919 | dependencies: 920 | is-extglob: 2.1.1 921 | dev: true 922 | 923 | /is-number/7.0.0: 924 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 925 | engines: {node: '>=0.12.0'} 926 | dev: true 927 | 928 | /is-what/4.1.7: 929 | resolution: {integrity: sha512-DBVOQNiPKnGMxRMLIYSwERAS5MVY1B7xYiGnpgctsOFvVDz9f9PFXXxMcTOHuoqYp4NK9qFYQaIC1NRRxLMpBQ==} 930 | engines: {node: '>=12.13'} 931 | dev: true 932 | 933 | /js-tokens/4.0.0: 934 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 935 | dev: true 936 | 937 | /jsesc/2.5.2: 938 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} 939 | engines: {node: '>=4'} 940 | hasBin: true 941 | dev: true 942 | 943 | /json5/2.2.1: 944 | resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==} 945 | engines: {node: '>=6'} 946 | hasBin: true 947 | dev: true 948 | 949 | /lilconfig/2.0.5: 950 | resolution: {integrity: sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==} 951 | engines: {node: '>=10'} 952 | dev: true 953 | 954 | /merge-anything/5.0.2: 955 | resolution: {integrity: sha512-POPQBWkBC0vxdgzRJ2Mkj4+2NTKbvkHo93ih+jGDhNMLzIw+rYKjO7949hOQM2X7DxMHH1uoUkwWFLIzImw7gA==} 956 | engines: {node: '>=12.13'} 957 | dependencies: 958 | is-what: 4.1.7 959 | ts-toolbelt: 9.6.0 960 | dev: true 961 | 962 | /merge2/1.4.1: 963 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 964 | engines: {node: '>= 8'} 965 | dev: true 966 | 967 | /micromatch/4.0.5: 968 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 969 | engines: {node: '>=8.6'} 970 | dependencies: 971 | braces: 3.0.2 972 | picomatch: 2.3.1 973 | dev: true 974 | 975 | /minimist/1.2.6: 976 | resolution: {integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==} 977 | dev: true 978 | 979 | /ms/2.1.2: 980 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 981 | dev: true 982 | 983 | /nanoid/3.3.4: 984 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} 985 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 986 | hasBin: true 987 | dev: true 988 | 989 | /node-releases/2.0.2: 990 | resolution: {integrity: sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==} 991 | dev: true 992 | 993 | /node-releases/2.0.4: 994 | resolution: {integrity: sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ==} 995 | dev: true 996 | 997 | /normalize-path/3.0.0: 998 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 999 | engines: {node: '>=0.10.0'} 1000 | dev: true 1001 | 1002 | /normalize-range/0.1.2: 1003 | resolution: {integrity: sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=} 1004 | engines: {node: '>=0.10.0'} 1005 | dev: true 1006 | 1007 | /object-hash/3.0.0: 1008 | resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 1009 | engines: {node: '>= 6'} 1010 | dev: true 1011 | 1012 | /path-parse/1.0.7: 1013 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1014 | dev: true 1015 | 1016 | /picocolors/1.0.0: 1017 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 1018 | dev: true 1019 | 1020 | /picomatch/2.3.1: 1021 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1022 | engines: {node: '>=8.6'} 1023 | dev: true 1024 | 1025 | /postcss-js/4.0.0_postcss@8.4.14: 1026 | resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==} 1027 | engines: {node: ^12 || ^14 || >= 16} 1028 | peerDependencies: 1029 | postcss: ^8.3.3 1030 | dependencies: 1031 | camelcase-css: 2.0.1 1032 | postcss: 8.4.14 1033 | dev: true 1034 | 1035 | /postcss-load-config/3.1.4_postcss@8.4.14: 1036 | resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} 1037 | engines: {node: '>= 10'} 1038 | peerDependencies: 1039 | postcss: '>=8.0.9' 1040 | ts-node: '>=9.0.0' 1041 | peerDependenciesMeta: 1042 | postcss: 1043 | optional: true 1044 | ts-node: 1045 | optional: true 1046 | dependencies: 1047 | lilconfig: 2.0.5 1048 | postcss: 8.4.14 1049 | yaml: 1.10.2 1050 | dev: true 1051 | 1052 | /postcss-nested/5.0.6_postcss@8.4.14: 1053 | resolution: {integrity: sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==} 1054 | engines: {node: '>=12.0'} 1055 | peerDependencies: 1056 | postcss: ^8.2.14 1057 | dependencies: 1058 | postcss: 8.4.14 1059 | postcss-selector-parser: 6.0.10 1060 | dev: true 1061 | 1062 | /postcss-selector-parser/6.0.10: 1063 | resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} 1064 | engines: {node: '>=4'} 1065 | dependencies: 1066 | cssesc: 3.0.0 1067 | util-deprecate: 1.0.2 1068 | dev: true 1069 | 1070 | /postcss-value-parser/4.2.0: 1071 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 1072 | dev: true 1073 | 1074 | /postcss/8.4.14: 1075 | resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} 1076 | engines: {node: ^10 || ^12 || >=14} 1077 | dependencies: 1078 | nanoid: 3.3.4 1079 | picocolors: 1.0.0 1080 | source-map-js: 1.0.2 1081 | dev: true 1082 | 1083 | /queue-microtask/1.2.3: 1084 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1085 | dev: true 1086 | 1087 | /quick-lru/5.1.1: 1088 | resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} 1089 | engines: {node: '>=10'} 1090 | dev: true 1091 | 1092 | /readdirp/3.6.0: 1093 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 1094 | engines: {node: '>=8.10.0'} 1095 | dependencies: 1096 | picomatch: 2.3.1 1097 | dev: true 1098 | 1099 | /resolve/1.22.0: 1100 | resolution: {integrity: sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==} 1101 | hasBin: true 1102 | dependencies: 1103 | is-core-module: 2.9.0 1104 | path-parse: 1.0.7 1105 | supports-preserve-symlinks-flag: 1.0.0 1106 | dev: true 1107 | 1108 | /reusify/1.0.4: 1109 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1110 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1111 | dev: true 1112 | 1113 | /rollup/2.74.1: 1114 | resolution: {integrity: sha512-K2zW7kV8Voua5eGkbnBtWYfMIhYhT9Pel2uhBk2WO5eMee161nPze/XRfvEQPFYz7KgrCCnmh2Wy0AMFLGGmMA==} 1115 | engines: {node: '>=10.0.0'} 1116 | hasBin: true 1117 | optionalDependencies: 1118 | fsevents: 2.3.2 1119 | dev: true 1120 | 1121 | /run-parallel/1.2.0: 1122 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1123 | dependencies: 1124 | queue-microtask: 1.2.3 1125 | dev: true 1126 | 1127 | /safe-buffer/5.1.2: 1128 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} 1129 | dev: true 1130 | 1131 | /semver/6.3.0: 1132 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} 1133 | hasBin: true 1134 | dev: true 1135 | 1136 | /solid-js/1.4.2: 1137 | resolution: {integrity: sha512-IU5yKuT8P/n5F5g8j1rTXqxUdPYmoZDk/074TG94AEYf/nyXAeG82BSge4/lLIbCfUcnGUJ6DRdebIjujOAYyg==} 1138 | 1139 | /solid-refresh/0.4.0_solid-js@1.4.2: 1140 | resolution: {integrity: sha512-5XCUz845n/sHPzKK2i2G2EeV61tAmzv6SqzqhXcPaYhrgzVy7nKTQaBpKK8InKrriq9Z2JFF/mguIU00t/73xw==} 1141 | peerDependencies: 1142 | solid-js: ^1.3.0 1143 | dependencies: 1144 | '@babel/generator': 7.17.7 1145 | '@babel/helper-module-imports': 7.16.7 1146 | '@babel/types': 7.17.0 1147 | solid-js: 1.4.2 1148 | dev: true 1149 | 1150 | /source-map-js/1.0.2: 1151 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 1152 | engines: {node: '>=0.10.0'} 1153 | dev: true 1154 | 1155 | /source-map/0.5.7: 1156 | resolution: {integrity: sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=} 1157 | engines: {node: '>=0.10.0'} 1158 | dev: true 1159 | 1160 | /supports-color/5.5.0: 1161 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 1162 | engines: {node: '>=4'} 1163 | dependencies: 1164 | has-flag: 3.0.0 1165 | dev: true 1166 | 1167 | /supports-preserve-symlinks-flag/1.0.0: 1168 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1169 | engines: {node: '>= 0.4'} 1170 | dev: true 1171 | 1172 | /tailwindcss/3.0.24: 1173 | resolution: {integrity: sha512-H3uMmZNWzG6aqmg9q07ZIRNIawoiEcNFKDfL+YzOPuPsXuDXxJxB9icqzLgdzKNwjG3SAro2h9SYav8ewXNgig==} 1174 | engines: {node: '>=12.13.0'} 1175 | hasBin: true 1176 | dependencies: 1177 | arg: 5.0.1 1178 | chokidar: 3.5.3 1179 | color-name: 1.1.4 1180 | detective: 5.2.0 1181 | didyoumean: 1.2.2 1182 | dlv: 1.1.3 1183 | fast-glob: 3.2.11 1184 | glob-parent: 6.0.2 1185 | is-glob: 4.0.3 1186 | lilconfig: 2.0.5 1187 | normalize-path: 3.0.0 1188 | object-hash: 3.0.0 1189 | picocolors: 1.0.0 1190 | postcss: 8.4.14 1191 | postcss-js: 4.0.0_postcss@8.4.14 1192 | postcss-load-config: 3.1.4_postcss@8.4.14 1193 | postcss-nested: 5.0.6_postcss@8.4.14 1194 | postcss-selector-parser: 6.0.10 1195 | postcss-value-parser: 4.2.0 1196 | quick-lru: 5.1.1 1197 | resolve: 1.22.0 1198 | transitivePeerDependencies: 1199 | - ts-node 1200 | dev: true 1201 | 1202 | /to-fast-properties/2.0.0: 1203 | resolution: {integrity: sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=} 1204 | engines: {node: '>=4'} 1205 | dev: true 1206 | 1207 | /to-regex-range/5.0.1: 1208 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1209 | engines: {node: '>=8.0'} 1210 | dependencies: 1211 | is-number: 7.0.0 1212 | dev: true 1213 | 1214 | /ts-toolbelt/9.6.0: 1215 | resolution: {integrity: sha512-nsZd8ZeNUzukXPlJmTBwUAuABDe/9qtVDelJeT/qW0ow3ZS3BsQJtNkan1802aM9Uf68/Y8ljw86Hu0h5IUW3w==} 1216 | dev: true 1217 | 1218 | /typescript/4.6.4: 1219 | resolution: {integrity: sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==} 1220 | engines: {node: '>=4.2.0'} 1221 | hasBin: true 1222 | dev: true 1223 | 1224 | /util-deprecate/1.0.2: 1225 | resolution: {integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=} 1226 | dev: true 1227 | 1228 | /vite-plugin-solid/2.2.6: 1229 | resolution: {integrity: sha512-J1RnmqkZZJSNYDW7vZj0giKKHLWGr9tS/gxR70WDSTYfhyXrgukbZdIfSEFbtrsg8ZiQ2t2zXcvkWoeefenqKw==} 1230 | dependencies: 1231 | '@babel/core': 7.17.8 1232 | '@babel/preset-typescript': 7.16.7_@babel+core@7.17.8 1233 | babel-preset-solid: 1.3.13_@babel+core@7.17.8 1234 | merge-anything: 5.0.2 1235 | solid-js: 1.4.2 1236 | solid-refresh: 0.4.0_solid-js@1.4.2 1237 | vite: 2.9.9 1238 | transitivePeerDependencies: 1239 | - less 1240 | - sass 1241 | - stylus 1242 | - supports-color 1243 | dev: true 1244 | 1245 | /vite/2.9.9: 1246 | resolution: {integrity: sha512-ffaam+NgHfbEmfw/Vuh6BHKKlI/XIAhxE5QSS7gFLIngxg171mg1P3a4LSRME0z2ZU1ScxoKzphkipcYwSD5Ew==} 1247 | engines: {node: '>=12.2.0'} 1248 | hasBin: true 1249 | peerDependencies: 1250 | less: '*' 1251 | sass: '*' 1252 | stylus: '*' 1253 | peerDependenciesMeta: 1254 | less: 1255 | optional: true 1256 | sass: 1257 | optional: true 1258 | stylus: 1259 | optional: true 1260 | dependencies: 1261 | esbuild: 0.14.39 1262 | postcss: 8.4.14 1263 | resolve: 1.22.0 1264 | rollup: 2.74.1 1265 | optionalDependencies: 1266 | fsevents: 2.3.2 1267 | dev: true 1268 | 1269 | /xtend/4.0.2: 1270 | resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} 1271 | engines: {node: '>=0.4'} 1272 | dev: true 1273 | 1274 | /yaml/1.10.2: 1275 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} 1276 | engines: {node: '>= 6'} 1277 | dev: true 1278 | -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- 1 | import withSolid from "rollup-preset-solid"; 2 | 3 | export default withSolid(); 4 | -------------------------------------------------------------------------------- /src/index.tsx: -------------------------------------------------------------------------------- 1 | import { 2 | Component, 3 | createEffect, 4 | createSignal, 5 | JSX, 6 | mergeProps, 7 | onCleanup, 8 | onMount, 9 | Setter, 10 | on, 11 | createMemo, 12 | } from "solid-js"; 13 | import useInterval from "./utils/useInterval"; 14 | import randomInt from "./utils/random"; 15 | 16 | type IProps = { 17 | progress?: number; 18 | color?: string; 19 | shadow?: boolean; 20 | background?: string; 21 | height?: number; 22 | onLoaderFinished?: () => void; 23 | className?: string; 24 | containerClassName?: string; 25 | loaderSpeed?: number; 26 | transitionTime?: number; 27 | waitingTime?: number; 28 | style?: JSX.CSSProperties; 29 | containerStyle?: JSX.CSSProperties; 30 | shadowStyle?: JSX.CSSProperties; 31 | }; 32 | 33 | export type LoadingBarRef = { 34 | continuousStart: (startingValue?: number, refreshRate?: number) => void; 35 | staticStart: (startingValue?: number) => void; 36 | complete: () => void; 37 | }; 38 | 39 | type Props = { 40 | loadingBar?: LoadingBarRef; 41 | setLoadingBar?: Setter; 42 | } & IProps; 43 | 44 | const LoadingBar: Component = (_props) => { 45 | const defaultProps = { 46 | height: "2px", 47 | className: "", 48 | color: "red", 49 | background: "transparent", 50 | transitionTime: 300, 51 | loaderSpeed: 500, 52 | waitingTime: 1000, 53 | shadow: true, 54 | containerStyle: {}, 55 | style: {}, 56 | shadowStyle: {}, 57 | containerClassName: "", 58 | }; 59 | const props = mergeProps(defaultProps, _props); 60 | const color = createMemo(() => props.color); 61 | const loadingBar = createMemo(() => props.loadingBar); 62 | const progress = createMemo(() => props.progress); 63 | const shadow = createMemo(() => props.shadow); 64 | 65 | let isMounted = false; 66 | const [localProgress, setLocalProgress] = createSignal(0); 67 | const [pressedContinuous, setPressedContinuous] = createSignal<{ 68 | active: boolean; 69 | startingValue: number; 70 | refreshRate: number; 71 | }>({ active: false, startingValue: 20, refreshRate: 1000 }); 72 | const [usingProps, setUsingProps] = createSignal(false); 73 | const continuousActive = () => pressedContinuous().active || false; 74 | const continuousRefreshRate = () => pressedContinuous().refreshRate || 1000; 75 | const [pressedStaticStart, setStaticStartPressed] = createSignal<{ 76 | active: boolean; 77 | value: number; 78 | }>({ active: false, value: 20 }); 79 | 80 | const initialLoaderStyle: JSX.CSSProperties = { 81 | height: "100%", 82 | background: color(), 83 | transition: `all ${props.loaderSpeed}ms ease`, 84 | width: "0%", 85 | }; 86 | 87 | const loaderContainerStyle: JSX.CSSProperties = { 88 | position: "fixed", 89 | top: 0, 90 | left: 0, 91 | height: props.height, 92 | background: props.background, 93 | zIndex: 99999999999, 94 | width: 100 + "%", 95 | }; 96 | 97 | const initialShadowStyles: JSX.CSSProperties = { 98 | boxShadow: `0 0 10px ${color()}, 0 0 10px ${color()}`, 99 | width: "5%", 100 | opacity: 1, 101 | position: "absolute", 102 | height: "100%", 103 | transition: `all ${props.loaderSpeed}ms ease`, 104 | transform: "rotate(3deg) translate(0px, -4px)", 105 | left: "-10rem", 106 | }; 107 | 108 | const [loaderStyle, setLoaderStyle] = createSignal(initialLoaderStyle); 109 | const [shadowStyle, setShadowStyle] = createSignal(initialShadowStyles); 110 | 111 | onMount(() => { 112 | isMounted = true; 113 | onCleanup(() => { 114 | isMounted = false; 115 | }); 116 | }); 117 | 118 | if (props.setLoadingBar) { 119 | props.setLoadingBar({ 120 | continuousStart(startingValue?: number, refreshRate: number = 1000) { 121 | if (pressedStaticStart().active) return; 122 | if (usingProps()) { 123 | console.warn( 124 | "react-top-loading-bar: You can't use both controlling by props and ref methods to control the bar!" 125 | ); 126 | return; 127 | } 128 | const val = startingValue || randomInt(10, 20); 129 | const pressedContinuosValue = { 130 | active: true, 131 | refreshRate, 132 | startingValue, 133 | }; 134 | setPressedContinuous(pressedContinuosValue); 135 | setLocalProgress(val); 136 | checkIfFull(val); 137 | }, 138 | staticStart(startingValue?: number) { 139 | if (pressedContinuous().active) return; 140 | if (usingProps()) { 141 | console.warn( 142 | "react-top-loading-bar: You can't use both controlling by props and ref methods to control the bar!" 143 | ); 144 | return; 145 | } 146 | const val = startingValue || randomInt(30, 50); 147 | setStaticStartPressed({ 148 | active: true, 149 | value: val, 150 | }); 151 | setLocalProgress(val); 152 | checkIfFull(val); 153 | }, 154 | complete() { 155 | if (usingProps()) { 156 | console.warn( 157 | "react-top-loading-bar: You can't use both controlling by props and ref methods to control the bar!" 158 | ); 159 | return; 160 | } 161 | setLocalProgress(100); 162 | checkIfFull(100); 163 | }, 164 | }); 165 | } 166 | 167 | createEffect( 168 | on(color, (color) => { 169 | setLoaderStyle({ 170 | ...loaderStyle(), 171 | background: color, 172 | }); 173 | setShadowStyle({ 174 | ...shadowStyle(), 175 | boxShadow: `0 0 10px ${color}, 0 0 5px ${color}`, 176 | }); 177 | }) 178 | ); 179 | 180 | createEffect( 181 | on(progress, (progress) => { 182 | if (loadingBar()) { 183 | if (loadingBar() && progress !== undefined) { 184 | console.warn( 185 | 'react-top-loading-bar: You can\'t use both controlling by props and ref methods to control the bar! Please use only props or only ref methods! Ref methods will override props if "ref" property is available.' 186 | ); 187 | return; 188 | } 189 | checkIfFull(localProgress()); 190 | setUsingProps(false); 191 | } else { 192 | if (progress) checkIfFull(progress); 193 | setUsingProps(true); 194 | } 195 | }) 196 | ); 197 | 198 | const checkIfFull = (_progress: number) => { 199 | if (_progress >= 100) { 200 | // now it should wait a little bit 201 | setLoaderStyle({ 202 | ...loaderStyle(), 203 | width: "100%", 204 | }); 205 | if (shadow()) { 206 | setShadowStyle({ 207 | ...shadowStyle(), 208 | left: _progress - 10 + "%", 209 | }); 210 | } 211 | setTimeout(() => { 212 | if (!isMounted) { 213 | return; 214 | } 215 | // now it can fade out 216 | setLoaderStyle({ 217 | ...loaderStyle(), 218 | opacity: 0, 219 | width: "100%", 220 | transition: `all ${props.transitionTime}ms ease-out`, 221 | color: color(), 222 | }); 223 | setTimeout(() => { 224 | if (!isMounted) { 225 | return; 226 | } 227 | // here we wait for it to fade 228 | if (pressedContinuous().active) { 229 | // if we have continous loader just ending, we kill it and reset it 230 | setPressedContinuous({ 231 | ...pressedContinuous(), 232 | active: false, 233 | }); 234 | setLocalProgress(0); 235 | checkIfFull(0); 236 | } 237 | if (pressedStaticStart().active) { 238 | setStaticStartPressed({ 239 | ...pressedStaticStart(), 240 | active: false, 241 | }); 242 | setLocalProgress(0); 243 | checkIfFull(0); 244 | } 245 | if (props.onLoaderFinished) props.onLoaderFinished(); 246 | setLocalProgress(0); 247 | checkIfFull(0); 248 | }, props.transitionTime); 249 | }, props.waitingTime); 250 | } else { 251 | const widthStyleValue = _progress + "%"; 252 | setLoaderStyle({ 253 | ...loaderStyle(), 254 | width: widthStyleValue, 255 | opacity: 1, 256 | transition: _progress > 0 ? `all ${props.loaderSpeed}ms ease` : "", 257 | }); 258 | if (shadow()) { 259 | setShadowStyle({ 260 | ...shadowStyle(), 261 | left: _progress - 5.5 + "%", 262 | transition: _progress > 0 ? `all ${props.loaderSpeed}ms ease` : "", 263 | }); 264 | } 265 | } 266 | }; 267 | 268 | createEffect( 269 | on(continuousActive, (active) => 270 | useInterval( 271 | () => { 272 | const random = randomInt(10, 20); 273 | 274 | if (localProgress() + random < 90) { 275 | setLocalProgress(localProgress() + random); 276 | checkIfFull(localProgress() + random); 277 | } 278 | }, 279 | active ? continuousRefreshRate() : null 280 | ) 281 | ) 282 | ); 283 | 284 | return ( 285 |
291 |
298 | {shadow() ?
: null} 299 |
300 |
301 | ); 302 | }; 303 | 304 | export type { IProps }; 305 | 306 | export default LoadingBar; 307 | -------------------------------------------------------------------------------- /src/utils/random.ts: -------------------------------------------------------------------------------- 1 | export default function randomInt(min: number, max: number): number { 2 | return Math.floor(Math.random() * (max - min + 1) + min); 3 | } 4 | -------------------------------------------------------------------------------- /src/utils/useInterval.ts: -------------------------------------------------------------------------------- 1 | // ported from https://github.com/klendi/react-top-loading-bar/blob/master/src/useInterval.ts 2 | 3 | import { createEffect, onCleanup, on, createMemo } from "solid-js"; 4 | 5 | export function useInterval( 6 | fn: () => void, 7 | delay: number | null | false, 8 | immediate?: boolean 9 | ) { 10 | let savedFunction; 11 | const immediateValue = createMemo(() => immediate); 12 | const delayValue = createMemo(() => delay); 13 | 14 | // Remember the latest function. 15 | createEffect(() => { 16 | savedFunction = fn; 17 | }); 18 | 19 | // Execute callback if immediate is set. 20 | createEffect( 21 | on(immediateValue, (immediate) => { 22 | if (!immediate) return; 23 | if (delay === null || delay === false) return; 24 | savedFunction(); 25 | }) 26 | ); 27 | 28 | // Set up the interval. 29 | createEffect( 30 | on(delayValue, (delay) => { 31 | if (delay === null || delay === false) { 32 | return undefined; 33 | } 34 | const tick = () => savedFunction(); 35 | const id = setInterval(tick, delay); 36 | onCleanup(() => { 37 | clearInterval(id); 38 | }); 39 | }) 40 | ); 41 | } 42 | 43 | export default useInterval; 44 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "node", 6 | "allowSyntheticDefaultImports": true, 7 | "esModuleInterop": true, 8 | "jsx": "preserve", 9 | "jsxImportSource": "solid-js", 10 | "types": ["vite/client"], 11 | "noEmit": true, 12 | "isolatedModules": true 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite'; 2 | import solidPlugin from 'vite-plugin-solid'; 3 | 4 | export default defineConfig({ 5 | plugins: [solidPlugin()], 6 | build: { 7 | target: 'esnext', 8 | polyfillDynamicImport: false, 9 | }, 10 | }); 11 | --------------------------------------------------------------------------------