├── robots.txt ├── public ├── favicon.ico ├── favicon-16x16.png ├── favicon-32x32.png ├── apple-touch-icon.png ├── waktu-solat-preview.jpg ├── android-chrome-192x192.png ├── android-chrome-512x512.png └── site.webmanifest ├── src ├── assets │ ├── azan.mp3 │ └── bg-waktu-solat.webp ├── main.js ├── style.css ├── components │ ├── Footer.vue │ ├── Countdown.vue │ ├── Schedule.vue │ ├── Notification.vue │ ├── Azan.vue │ └── Zone.vue └── App.vue ├── .vscode └── extensions.json ├── screenshots ├── screenshot-1.png └── screenshot-2.png ├── postcss.config.cjs ├── vite.config.js ├── tailwind.config.cjs ├── .gitignore ├── package.json ├── README.md ├── index.html └── pnpm-lock.yaml /robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/public/favicon.ico -------------------------------------------------------------------------------- /src/assets/azan.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/src/assets/azan.mp3 -------------------------------------------------------------------------------- /public/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/public/favicon-16x16.png -------------------------------------------------------------------------------- /public/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/public/favicon-32x32.png -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"] 3 | } 4 | -------------------------------------------------------------------------------- /public/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/public/apple-touch-icon.png -------------------------------------------------------------------------------- /screenshots/screenshot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/screenshots/screenshot-1.png -------------------------------------------------------------------------------- /screenshots/screenshot-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/screenshots/screenshot-2.png -------------------------------------------------------------------------------- /public/waktu-solat-preview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/public/waktu-solat-preview.jpg -------------------------------------------------------------------------------- /src/assets/bg-waktu-solat.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/src/assets/bg-waktu-solat.webp -------------------------------------------------------------------------------- /postcss.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /public/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/public/android-chrome-192x192.png -------------------------------------------------------------------------------- /public/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/salimi-my/waktu-solat/master/public/android-chrome-512x512.png -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue'; 2 | import './style.css'; 3 | import App from './App.vue'; 4 | 5 | createApp(App).mount('#app'); 6 | -------------------------------------------------------------------------------- /src/style.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | 5 | @layer base { 6 | html { 7 | font-family: Inconsolata; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite' 2 | import vue from '@vitejs/plugin-vue' 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [vue()], 7 | }) 8 | -------------------------------------------------------------------------------- /public/site.webmanifest: -------------------------------------------------------------------------------- 1 | {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} -------------------------------------------------------------------------------- /tailwind.config.cjs: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | module.exports = { 3 | content: ['./index.html', './src/**/*.{vue,js,ts,jsx,tsx}'], 4 | theme: { 5 | extend: { 6 | fontFamily: { 7 | sans: ['Inconsolata'] 8 | } 9 | } 10 | }, 11 | plugins: [require('@tailwindcss/forms')] 12 | }; 13 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /src/components/Footer.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "solat", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "dependencies": { 12 | "@headlessui/vue": "^1.7.16", 13 | "@heroicons/vue": "^2.0.18", 14 | "@vueuse/core": "^9.13.0", 15 | "dayjs": "^1.11.10", 16 | "vue": "^3.3.8" 17 | }, 18 | "devDependencies": { 19 | "@tailwindcss/forms": "^0.5.7", 20 | "@vitejs/plugin-vue": "^4.5.0", 21 | "autoprefixer": "^10.4.16", 22 | "postcss": "^8.4.31", 23 | "tailwindcss": "^3.3.5", 24 | "vite": "^4.5.0" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # [Waktu Solat](https://solat.salimi.my) · [![Author Salimi](https://img.shields.io/badge/Author-Salimi-%3C%3E)](https://www.linkedin.com/in/mohamad-salimi/) 2 | 3 | This is a simple web application created using Vue.js that aims to display prayer times throughout the Malaysian zone. There will be a countdown to show the immediate next prayer time and will automatically play adhan for each prayer's time. 4 | 5 | The prayer's time data taken directly from [JAKIM's e-Solat Portal](https://www.e-solat.gov.my/) 6 | 7 | ## Malaysia solat schedule app 8 | 9 | - Available for all Malaysia's zone 10 | - Countdown to immediate next prayer time 11 | - Automatically play adhan 12 | 13 | ## Tech/framework used 14 | 15 | - Vue.js 16 | - Vite 17 | - Tailwind CSS 18 | - Tailwind UI 19 | - Day.js 20 | 21 | ## Starting the project 22 | 23 | Clone the repository and install all the dependencies to start the app by following command below: 24 | 25 | ```bash 26 | git clone https://github.com/salimi-my/waktu-solat.git 27 | cd waktu-solat 28 | npm install 29 | npm run dev 30 | ``` 31 | 32 | To build the app, run the following command: 33 | 34 | ```bash 35 | npm run build 36 | ``` 37 | 38 | ## Demo 39 | 40 | Hosted privately on personal DigitalOcean Droplet. [Click here](https://solat.salimi.my) to visit. 41 |
42 | Direct link: `https://solat.salimi.my` 43 | 44 | ## Screenshots 45 | 46 | #### Countdown 47 | 48 | ![Countdown](/screenshots/screenshot-1.png) 49 | 50 | #### Adhan 51 | 52 | ![Adhan](/screenshots/screenshot-2.png) 53 | -------------------------------------------------------------------------------- /src/components/Countdown.vue: -------------------------------------------------------------------------------- 1 | 19 | 20 | -------------------------------------------------------------------------------- /src/components/Schedule.vue: -------------------------------------------------------------------------------- 1 | 38 | 39 | -------------------------------------------------------------------------------- /src/components/Notification.vue: -------------------------------------------------------------------------------- 1 | 38 | 39 | -------------------------------------------------------------------------------- /src/components/Azan.vue: -------------------------------------------------------------------------------- 1 | 39 | 40 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Waktu Solat — Jadual Solat Malaysia 13 | 14 | 18 | 19 | 20 | 21 | 22 | 23 | 27 | 31 | 32 | 33 | 34 | 35 | 39 | 43 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 63 | 70 | 71 | 72 |
73 | 74 | 75 | 76 | -------------------------------------------------------------------------------- /src/App.vue: -------------------------------------------------------------------------------- 1 | 36 | 37 | 161 | -------------------------------------------------------------------------------- /src/components/Zone.vue: -------------------------------------------------------------------------------- 1 | 110 | 111 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | dependencies: 8 | '@headlessui/vue': 9 | specifier: ^1.7.16 10 | version: 1.7.16(vue@3.3.8) 11 | '@heroicons/vue': 12 | specifier: ^2.0.18 13 | version: 2.0.18(vue@3.3.8) 14 | '@vueuse/core': 15 | specifier: ^9.13.0 16 | version: 9.13.0(vue@3.3.8) 17 | dayjs: 18 | specifier: ^1.11.10 19 | version: 1.11.10 20 | vue: 21 | specifier: ^3.3.8 22 | version: 3.3.8 23 | 24 | devDependencies: 25 | '@tailwindcss/forms': 26 | specifier: ^0.5.7 27 | version: 0.5.7(tailwindcss@3.3.5) 28 | '@vitejs/plugin-vue': 29 | specifier: ^4.5.0 30 | version: 4.5.0(vite@4.5.0)(vue@3.3.8) 31 | autoprefixer: 32 | specifier: ^10.4.16 33 | version: 10.4.16(postcss@8.4.31) 34 | postcss: 35 | specifier: ^8.4.31 36 | version: 8.4.31 37 | tailwindcss: 38 | specifier: ^3.3.5 39 | version: 3.3.5 40 | vite: 41 | specifier: ^4.5.0 42 | version: 4.5.0 43 | 44 | packages: 45 | 46 | /@alloc/quick-lru@5.2.0: 47 | resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} 48 | engines: {node: '>=10'} 49 | dev: true 50 | 51 | /@babel/helper-string-parser@7.22.5: 52 | resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} 53 | engines: {node: '>=6.9.0'} 54 | 55 | /@babel/helper-validator-identifier@7.22.20: 56 | resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} 57 | engines: {node: '>=6.9.0'} 58 | 59 | /@babel/parser@7.23.3: 60 | resolution: {integrity: sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw==} 61 | engines: {node: '>=6.0.0'} 62 | hasBin: true 63 | dependencies: 64 | '@babel/types': 7.23.3 65 | 66 | /@babel/types@7.23.3: 67 | resolution: {integrity: sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw==} 68 | engines: {node: '>=6.9.0'} 69 | dependencies: 70 | '@babel/helper-string-parser': 7.22.5 71 | '@babel/helper-validator-identifier': 7.22.20 72 | to-fast-properties: 2.0.0 73 | 74 | /@esbuild/android-arm64@0.18.20: 75 | resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} 76 | engines: {node: '>=12'} 77 | cpu: [arm64] 78 | os: [android] 79 | requiresBuild: true 80 | dev: true 81 | optional: true 82 | 83 | /@esbuild/android-arm@0.18.20: 84 | resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} 85 | engines: {node: '>=12'} 86 | cpu: [arm] 87 | os: [android] 88 | requiresBuild: true 89 | dev: true 90 | optional: true 91 | 92 | /@esbuild/android-x64@0.18.20: 93 | resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} 94 | engines: {node: '>=12'} 95 | cpu: [x64] 96 | os: [android] 97 | requiresBuild: true 98 | dev: true 99 | optional: true 100 | 101 | /@esbuild/darwin-arm64@0.18.20: 102 | resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} 103 | engines: {node: '>=12'} 104 | cpu: [arm64] 105 | os: [darwin] 106 | requiresBuild: true 107 | dev: true 108 | optional: true 109 | 110 | /@esbuild/darwin-x64@0.18.20: 111 | resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} 112 | engines: {node: '>=12'} 113 | cpu: [x64] 114 | os: [darwin] 115 | requiresBuild: true 116 | dev: true 117 | optional: true 118 | 119 | /@esbuild/freebsd-arm64@0.18.20: 120 | resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} 121 | engines: {node: '>=12'} 122 | cpu: [arm64] 123 | os: [freebsd] 124 | requiresBuild: true 125 | dev: true 126 | optional: true 127 | 128 | /@esbuild/freebsd-x64@0.18.20: 129 | resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} 130 | engines: {node: '>=12'} 131 | cpu: [x64] 132 | os: [freebsd] 133 | requiresBuild: true 134 | dev: true 135 | optional: true 136 | 137 | /@esbuild/linux-arm64@0.18.20: 138 | resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} 139 | engines: {node: '>=12'} 140 | cpu: [arm64] 141 | os: [linux] 142 | requiresBuild: true 143 | dev: true 144 | optional: true 145 | 146 | /@esbuild/linux-arm@0.18.20: 147 | resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} 148 | engines: {node: '>=12'} 149 | cpu: [arm] 150 | os: [linux] 151 | requiresBuild: true 152 | dev: true 153 | optional: true 154 | 155 | /@esbuild/linux-ia32@0.18.20: 156 | resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} 157 | engines: {node: '>=12'} 158 | cpu: [ia32] 159 | os: [linux] 160 | requiresBuild: true 161 | dev: true 162 | optional: true 163 | 164 | /@esbuild/linux-loong64@0.18.20: 165 | resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} 166 | engines: {node: '>=12'} 167 | cpu: [loong64] 168 | os: [linux] 169 | requiresBuild: true 170 | dev: true 171 | optional: true 172 | 173 | /@esbuild/linux-mips64el@0.18.20: 174 | resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} 175 | engines: {node: '>=12'} 176 | cpu: [mips64el] 177 | os: [linux] 178 | requiresBuild: true 179 | dev: true 180 | optional: true 181 | 182 | /@esbuild/linux-ppc64@0.18.20: 183 | resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} 184 | engines: {node: '>=12'} 185 | cpu: [ppc64] 186 | os: [linux] 187 | requiresBuild: true 188 | dev: true 189 | optional: true 190 | 191 | /@esbuild/linux-riscv64@0.18.20: 192 | resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} 193 | engines: {node: '>=12'} 194 | cpu: [riscv64] 195 | os: [linux] 196 | requiresBuild: true 197 | dev: true 198 | optional: true 199 | 200 | /@esbuild/linux-s390x@0.18.20: 201 | resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} 202 | engines: {node: '>=12'} 203 | cpu: [s390x] 204 | os: [linux] 205 | requiresBuild: true 206 | dev: true 207 | optional: true 208 | 209 | /@esbuild/linux-x64@0.18.20: 210 | resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} 211 | engines: {node: '>=12'} 212 | cpu: [x64] 213 | os: [linux] 214 | requiresBuild: true 215 | dev: true 216 | optional: true 217 | 218 | /@esbuild/netbsd-x64@0.18.20: 219 | resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} 220 | engines: {node: '>=12'} 221 | cpu: [x64] 222 | os: [netbsd] 223 | requiresBuild: true 224 | dev: true 225 | optional: true 226 | 227 | /@esbuild/openbsd-x64@0.18.20: 228 | resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} 229 | engines: {node: '>=12'} 230 | cpu: [x64] 231 | os: [openbsd] 232 | requiresBuild: true 233 | dev: true 234 | optional: true 235 | 236 | /@esbuild/sunos-x64@0.18.20: 237 | resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} 238 | engines: {node: '>=12'} 239 | cpu: [x64] 240 | os: [sunos] 241 | requiresBuild: true 242 | dev: true 243 | optional: true 244 | 245 | /@esbuild/win32-arm64@0.18.20: 246 | resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} 247 | engines: {node: '>=12'} 248 | cpu: [arm64] 249 | os: [win32] 250 | requiresBuild: true 251 | dev: true 252 | optional: true 253 | 254 | /@esbuild/win32-ia32@0.18.20: 255 | resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} 256 | engines: {node: '>=12'} 257 | cpu: [ia32] 258 | os: [win32] 259 | requiresBuild: true 260 | dev: true 261 | optional: true 262 | 263 | /@esbuild/win32-x64@0.18.20: 264 | resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} 265 | engines: {node: '>=12'} 266 | cpu: [x64] 267 | os: [win32] 268 | requiresBuild: true 269 | dev: true 270 | optional: true 271 | 272 | /@headlessui/vue@1.7.16(vue@3.3.8): 273 | resolution: {integrity: sha512-nKT+nf/q6x198SsyK54mSszaQl/z+QxtASmgMEJtpxSX2Q0OPJX0upS/9daDyiECpeAsvjkoOrm2O/6PyBQ+Qg==} 274 | engines: {node: '>=10'} 275 | peerDependencies: 276 | vue: ^3.2.0 277 | dependencies: 278 | vue: 3.3.8 279 | dev: false 280 | 281 | /@heroicons/vue@2.0.18(vue@3.3.8): 282 | resolution: {integrity: sha512-BcTC9nq2TkwNSfQuqo96J7ehx4etezypc2YeTq7KsXWxrcrerhkgjLrxGRBnStN0wrXo0Gv4BInybqz5uBG6Cw==} 283 | peerDependencies: 284 | vue: '>= 3' 285 | dependencies: 286 | vue: 3.3.8 287 | dev: false 288 | 289 | /@jridgewell/gen-mapping@0.3.3: 290 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} 291 | engines: {node: '>=6.0.0'} 292 | dependencies: 293 | '@jridgewell/set-array': 1.1.2 294 | '@jridgewell/sourcemap-codec': 1.4.15 295 | '@jridgewell/trace-mapping': 0.3.20 296 | dev: true 297 | 298 | /@jridgewell/resolve-uri@3.1.1: 299 | resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} 300 | engines: {node: '>=6.0.0'} 301 | dev: true 302 | 303 | /@jridgewell/set-array@1.1.2: 304 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} 305 | engines: {node: '>=6.0.0'} 306 | dev: true 307 | 308 | /@jridgewell/sourcemap-codec@1.4.15: 309 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 310 | 311 | /@jridgewell/trace-mapping@0.3.20: 312 | resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} 313 | dependencies: 314 | '@jridgewell/resolve-uri': 3.1.1 315 | '@jridgewell/sourcemap-codec': 1.4.15 316 | dev: true 317 | 318 | /@nodelib/fs.scandir@2.1.5: 319 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 320 | engines: {node: '>= 8'} 321 | dependencies: 322 | '@nodelib/fs.stat': 2.0.5 323 | run-parallel: 1.2.0 324 | dev: true 325 | 326 | /@nodelib/fs.stat@2.0.5: 327 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 328 | engines: {node: '>= 8'} 329 | dev: true 330 | 331 | /@nodelib/fs.walk@1.2.8: 332 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 333 | engines: {node: '>= 8'} 334 | dependencies: 335 | '@nodelib/fs.scandir': 2.1.5 336 | fastq: 1.15.0 337 | dev: true 338 | 339 | /@tailwindcss/forms@0.5.7(tailwindcss@3.3.5): 340 | resolution: {integrity: sha512-QE7X69iQI+ZXwldE+rzasvbJiyV/ju1FGHH0Qn2W3FKbuYtqp8LKcy6iSw79fVUT5/Vvf+0XgLCeYVG+UV6hOw==} 341 | peerDependencies: 342 | tailwindcss: '>=3.0.0 || >= 3.0.0-alpha.1' 343 | dependencies: 344 | mini-svg-data-uri: 1.4.4 345 | tailwindcss: 3.3.5 346 | dev: true 347 | 348 | /@types/web-bluetooth@0.0.16: 349 | resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==} 350 | dev: false 351 | 352 | /@vitejs/plugin-vue@4.5.0(vite@4.5.0)(vue@3.3.8): 353 | resolution: {integrity: sha512-a2WSpP8X8HTEww/U00bU4mX1QpLINNuz/2KMNpLsdu3BzOpak3AGI1CJYBTXcc4SPhaD0eNRUp7IyQK405L5dQ==} 354 | engines: {node: ^14.18.0 || >=16.0.0} 355 | peerDependencies: 356 | vite: ^4.0.0 || ^5.0.0 357 | vue: ^3.2.25 358 | dependencies: 359 | vite: 4.5.0 360 | vue: 3.3.8 361 | dev: true 362 | 363 | /@vue/compiler-core@3.3.8: 364 | resolution: {integrity: sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==} 365 | dependencies: 366 | '@babel/parser': 7.23.3 367 | '@vue/shared': 3.3.8 368 | estree-walker: 2.0.2 369 | source-map-js: 1.0.2 370 | 371 | /@vue/compiler-dom@3.3.8: 372 | resolution: {integrity: sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==} 373 | dependencies: 374 | '@vue/compiler-core': 3.3.8 375 | '@vue/shared': 3.3.8 376 | 377 | /@vue/compiler-sfc@3.3.8: 378 | resolution: {integrity: sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==} 379 | dependencies: 380 | '@babel/parser': 7.23.3 381 | '@vue/compiler-core': 3.3.8 382 | '@vue/compiler-dom': 3.3.8 383 | '@vue/compiler-ssr': 3.3.8 384 | '@vue/reactivity-transform': 3.3.8 385 | '@vue/shared': 3.3.8 386 | estree-walker: 2.0.2 387 | magic-string: 0.30.5 388 | postcss: 8.4.31 389 | source-map-js: 1.0.2 390 | 391 | /@vue/compiler-ssr@3.3.8: 392 | resolution: {integrity: sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==} 393 | dependencies: 394 | '@vue/compiler-dom': 3.3.8 395 | '@vue/shared': 3.3.8 396 | 397 | /@vue/reactivity-transform@3.3.8: 398 | resolution: {integrity: sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==} 399 | dependencies: 400 | '@babel/parser': 7.23.3 401 | '@vue/compiler-core': 3.3.8 402 | '@vue/shared': 3.3.8 403 | estree-walker: 2.0.2 404 | magic-string: 0.30.5 405 | 406 | /@vue/reactivity@3.3.8: 407 | resolution: {integrity: sha512-ctLWitmFBu6mtddPyOKpHg8+5ahouoTCRtmAHZAXmolDtuZXfjL2T3OJ6DL6ezBPQB1SmMnpzjiWjCiMYmpIuw==} 408 | dependencies: 409 | '@vue/shared': 3.3.8 410 | 411 | /@vue/runtime-core@3.3.8: 412 | resolution: {integrity: sha512-qurzOlb6q26KWQ/8IShHkMDOuJkQnQcTIp1sdP4I9MbCf9FJeGVRXJFr2mF+6bXh/3Zjr9TDgURXrsCr9bfjUw==} 413 | dependencies: 414 | '@vue/reactivity': 3.3.8 415 | '@vue/shared': 3.3.8 416 | 417 | /@vue/runtime-dom@3.3.8: 418 | resolution: {integrity: sha512-Noy5yM5UIf9UeFoowBVgghyGGPIDPy1Qlqt0yVsUdAVbqI8eeMSsTqBtauaEoT2UFXUk5S64aWVNJN4MJ2vRdA==} 419 | dependencies: 420 | '@vue/runtime-core': 3.3.8 421 | '@vue/shared': 3.3.8 422 | csstype: 3.1.2 423 | 424 | /@vue/server-renderer@3.3.8(vue@3.3.8): 425 | resolution: {integrity: sha512-zVCUw7RFskvPuNlPn/8xISbrf0zTWsTSdYTsUTN1ERGGZGVnRxM2QZ3x1OR32+vwkkCm0IW6HmJ49IsPm7ilLg==} 426 | peerDependencies: 427 | vue: 3.3.8 428 | dependencies: 429 | '@vue/compiler-ssr': 3.3.8 430 | '@vue/shared': 3.3.8 431 | vue: 3.3.8 432 | 433 | /@vue/shared@3.3.8: 434 | resolution: {integrity: sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==} 435 | 436 | /@vueuse/core@9.13.0(vue@3.3.8): 437 | resolution: {integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==} 438 | dependencies: 439 | '@types/web-bluetooth': 0.0.16 440 | '@vueuse/metadata': 9.13.0 441 | '@vueuse/shared': 9.13.0(vue@3.3.8) 442 | vue-demi: 0.14.6(vue@3.3.8) 443 | transitivePeerDependencies: 444 | - '@vue/composition-api' 445 | - vue 446 | dev: false 447 | 448 | /@vueuse/metadata@9.13.0: 449 | resolution: {integrity: sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==} 450 | dev: false 451 | 452 | /@vueuse/shared@9.13.0(vue@3.3.8): 453 | resolution: {integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==} 454 | dependencies: 455 | vue-demi: 0.14.6(vue@3.3.8) 456 | transitivePeerDependencies: 457 | - '@vue/composition-api' 458 | - vue 459 | dev: false 460 | 461 | /any-promise@1.3.0: 462 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 463 | dev: true 464 | 465 | /anymatch@3.1.3: 466 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 467 | engines: {node: '>= 8'} 468 | dependencies: 469 | normalize-path: 3.0.0 470 | picomatch: 2.3.1 471 | dev: true 472 | 473 | /arg@5.0.2: 474 | resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} 475 | dev: true 476 | 477 | /autoprefixer@10.4.16(postcss@8.4.31): 478 | resolution: {integrity: sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==} 479 | engines: {node: ^10 || ^12 || >=14} 480 | hasBin: true 481 | peerDependencies: 482 | postcss: ^8.1.0 483 | dependencies: 484 | browserslist: 4.22.1 485 | caniuse-lite: 1.0.30001563 486 | fraction.js: 4.3.7 487 | normalize-range: 0.1.2 488 | picocolors: 1.0.0 489 | postcss: 8.4.31 490 | postcss-value-parser: 4.2.0 491 | dev: true 492 | 493 | /balanced-match@1.0.2: 494 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 495 | dev: true 496 | 497 | /binary-extensions@2.2.0: 498 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 499 | engines: {node: '>=8'} 500 | dev: true 501 | 502 | /brace-expansion@1.1.11: 503 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 504 | dependencies: 505 | balanced-match: 1.0.2 506 | concat-map: 0.0.1 507 | dev: true 508 | 509 | /braces@3.0.2: 510 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 511 | engines: {node: '>=8'} 512 | dependencies: 513 | fill-range: 7.0.1 514 | dev: true 515 | 516 | /browserslist@4.22.1: 517 | resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} 518 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 519 | hasBin: true 520 | dependencies: 521 | caniuse-lite: 1.0.30001563 522 | electron-to-chromium: 1.4.588 523 | node-releases: 2.0.13 524 | update-browserslist-db: 1.0.13(browserslist@4.22.1) 525 | dev: true 526 | 527 | /camelcase-css@2.0.1: 528 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 529 | engines: {node: '>= 6'} 530 | dev: true 531 | 532 | /caniuse-lite@1.0.30001563: 533 | resolution: {integrity: sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==} 534 | dev: true 535 | 536 | /chokidar@3.5.3: 537 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} 538 | engines: {node: '>= 8.10.0'} 539 | dependencies: 540 | anymatch: 3.1.3 541 | braces: 3.0.2 542 | glob-parent: 5.1.2 543 | is-binary-path: 2.1.0 544 | is-glob: 4.0.3 545 | normalize-path: 3.0.0 546 | readdirp: 3.6.0 547 | optionalDependencies: 548 | fsevents: 2.3.3 549 | dev: true 550 | 551 | /commander@4.1.1: 552 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 553 | engines: {node: '>= 6'} 554 | dev: true 555 | 556 | /concat-map@0.0.1: 557 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 558 | dev: true 559 | 560 | /cssesc@3.0.0: 561 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 562 | engines: {node: '>=4'} 563 | hasBin: true 564 | dev: true 565 | 566 | /csstype@3.1.2: 567 | resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} 568 | 569 | /dayjs@1.11.10: 570 | resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} 571 | dev: false 572 | 573 | /didyoumean@1.2.2: 574 | resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} 575 | dev: true 576 | 577 | /dlv@1.1.3: 578 | resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} 579 | dev: true 580 | 581 | /electron-to-chromium@1.4.588: 582 | resolution: {integrity: sha512-soytjxwbgcCu7nh5Pf4S2/4wa6UIu+A3p03U2yVr53qGxi1/VTR3ENI+p50v+UxqqZAfl48j3z55ud7VHIOr9w==} 583 | dev: true 584 | 585 | /esbuild@0.18.20: 586 | resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} 587 | engines: {node: '>=12'} 588 | hasBin: true 589 | requiresBuild: true 590 | optionalDependencies: 591 | '@esbuild/android-arm': 0.18.20 592 | '@esbuild/android-arm64': 0.18.20 593 | '@esbuild/android-x64': 0.18.20 594 | '@esbuild/darwin-arm64': 0.18.20 595 | '@esbuild/darwin-x64': 0.18.20 596 | '@esbuild/freebsd-arm64': 0.18.20 597 | '@esbuild/freebsd-x64': 0.18.20 598 | '@esbuild/linux-arm': 0.18.20 599 | '@esbuild/linux-arm64': 0.18.20 600 | '@esbuild/linux-ia32': 0.18.20 601 | '@esbuild/linux-loong64': 0.18.20 602 | '@esbuild/linux-mips64el': 0.18.20 603 | '@esbuild/linux-ppc64': 0.18.20 604 | '@esbuild/linux-riscv64': 0.18.20 605 | '@esbuild/linux-s390x': 0.18.20 606 | '@esbuild/linux-x64': 0.18.20 607 | '@esbuild/netbsd-x64': 0.18.20 608 | '@esbuild/openbsd-x64': 0.18.20 609 | '@esbuild/sunos-x64': 0.18.20 610 | '@esbuild/win32-arm64': 0.18.20 611 | '@esbuild/win32-ia32': 0.18.20 612 | '@esbuild/win32-x64': 0.18.20 613 | dev: true 614 | 615 | /escalade@3.1.1: 616 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 617 | engines: {node: '>=6'} 618 | dev: true 619 | 620 | /estree-walker@2.0.2: 621 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 622 | 623 | /fast-glob@3.3.2: 624 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} 625 | engines: {node: '>=8.6.0'} 626 | dependencies: 627 | '@nodelib/fs.stat': 2.0.5 628 | '@nodelib/fs.walk': 1.2.8 629 | glob-parent: 5.1.2 630 | merge2: 1.4.1 631 | micromatch: 4.0.5 632 | dev: true 633 | 634 | /fastq@1.15.0: 635 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 636 | dependencies: 637 | reusify: 1.0.4 638 | dev: true 639 | 640 | /fill-range@7.0.1: 641 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 642 | engines: {node: '>=8'} 643 | dependencies: 644 | to-regex-range: 5.0.1 645 | dev: true 646 | 647 | /fraction.js@4.3.7: 648 | resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} 649 | dev: true 650 | 651 | /fs.realpath@1.0.0: 652 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 653 | dev: true 654 | 655 | /fsevents@2.3.3: 656 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 657 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 658 | os: [darwin] 659 | requiresBuild: true 660 | dev: true 661 | optional: true 662 | 663 | /function-bind@1.1.2: 664 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 665 | dev: true 666 | 667 | /glob-parent@5.1.2: 668 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 669 | engines: {node: '>= 6'} 670 | dependencies: 671 | is-glob: 4.0.3 672 | dev: true 673 | 674 | /glob-parent@6.0.2: 675 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 676 | engines: {node: '>=10.13.0'} 677 | dependencies: 678 | is-glob: 4.0.3 679 | dev: true 680 | 681 | /glob@7.1.6: 682 | resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} 683 | dependencies: 684 | fs.realpath: 1.0.0 685 | inflight: 1.0.6 686 | inherits: 2.0.4 687 | minimatch: 3.1.2 688 | once: 1.4.0 689 | path-is-absolute: 1.0.1 690 | dev: true 691 | 692 | /hasown@2.0.0: 693 | resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} 694 | engines: {node: '>= 0.4'} 695 | dependencies: 696 | function-bind: 1.1.2 697 | dev: true 698 | 699 | /inflight@1.0.6: 700 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 701 | dependencies: 702 | once: 1.4.0 703 | wrappy: 1.0.2 704 | dev: true 705 | 706 | /inherits@2.0.4: 707 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 708 | dev: true 709 | 710 | /is-binary-path@2.1.0: 711 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 712 | engines: {node: '>=8'} 713 | dependencies: 714 | binary-extensions: 2.2.0 715 | dev: true 716 | 717 | /is-core-module@2.13.1: 718 | resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} 719 | dependencies: 720 | hasown: 2.0.0 721 | dev: true 722 | 723 | /is-extglob@2.1.1: 724 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 725 | engines: {node: '>=0.10.0'} 726 | dev: true 727 | 728 | /is-glob@4.0.3: 729 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 730 | engines: {node: '>=0.10.0'} 731 | dependencies: 732 | is-extglob: 2.1.1 733 | dev: true 734 | 735 | /is-number@7.0.0: 736 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 737 | engines: {node: '>=0.12.0'} 738 | dev: true 739 | 740 | /jiti@1.21.0: 741 | resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} 742 | hasBin: true 743 | dev: true 744 | 745 | /lilconfig@2.1.0: 746 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 747 | engines: {node: '>=10'} 748 | dev: true 749 | 750 | /lines-and-columns@1.2.4: 751 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 752 | dev: true 753 | 754 | /magic-string@0.30.5: 755 | resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} 756 | engines: {node: '>=12'} 757 | dependencies: 758 | '@jridgewell/sourcemap-codec': 1.4.15 759 | 760 | /merge2@1.4.1: 761 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 762 | engines: {node: '>= 8'} 763 | dev: true 764 | 765 | /micromatch@4.0.5: 766 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 767 | engines: {node: '>=8.6'} 768 | dependencies: 769 | braces: 3.0.2 770 | picomatch: 2.3.1 771 | dev: true 772 | 773 | /mini-svg-data-uri@1.4.4: 774 | resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} 775 | hasBin: true 776 | dev: true 777 | 778 | /minimatch@3.1.2: 779 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 780 | dependencies: 781 | brace-expansion: 1.1.11 782 | dev: true 783 | 784 | /mz@2.7.0: 785 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 786 | dependencies: 787 | any-promise: 1.3.0 788 | object-assign: 4.1.1 789 | thenify-all: 1.6.0 790 | dev: true 791 | 792 | /nanoid@3.3.7: 793 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 794 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 795 | hasBin: true 796 | 797 | /node-releases@2.0.13: 798 | resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} 799 | dev: true 800 | 801 | /normalize-path@3.0.0: 802 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 803 | engines: {node: '>=0.10.0'} 804 | dev: true 805 | 806 | /normalize-range@0.1.2: 807 | resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} 808 | engines: {node: '>=0.10.0'} 809 | dev: true 810 | 811 | /object-assign@4.1.1: 812 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 813 | engines: {node: '>=0.10.0'} 814 | dev: true 815 | 816 | /object-hash@3.0.0: 817 | resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 818 | engines: {node: '>= 6'} 819 | dev: true 820 | 821 | /once@1.4.0: 822 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 823 | dependencies: 824 | wrappy: 1.0.2 825 | dev: true 826 | 827 | /path-is-absolute@1.0.1: 828 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 829 | engines: {node: '>=0.10.0'} 830 | dev: true 831 | 832 | /path-parse@1.0.7: 833 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 834 | dev: true 835 | 836 | /picocolors@1.0.0: 837 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 838 | 839 | /picomatch@2.3.1: 840 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 841 | engines: {node: '>=8.6'} 842 | dev: true 843 | 844 | /pify@2.3.0: 845 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 846 | engines: {node: '>=0.10.0'} 847 | dev: true 848 | 849 | /pirates@4.0.6: 850 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 851 | engines: {node: '>= 6'} 852 | dev: true 853 | 854 | /postcss-import@15.1.0(postcss@8.4.31): 855 | resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} 856 | engines: {node: '>=14.0.0'} 857 | peerDependencies: 858 | postcss: ^8.0.0 859 | dependencies: 860 | postcss: 8.4.31 861 | postcss-value-parser: 4.2.0 862 | read-cache: 1.0.0 863 | resolve: 1.22.8 864 | dev: true 865 | 866 | /postcss-js@4.0.1(postcss@8.4.31): 867 | resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 868 | engines: {node: ^12 || ^14 || >= 16} 869 | peerDependencies: 870 | postcss: ^8.4.21 871 | dependencies: 872 | camelcase-css: 2.0.1 873 | postcss: 8.4.31 874 | dev: true 875 | 876 | /postcss-load-config@4.0.1(postcss@8.4.31): 877 | resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} 878 | engines: {node: '>= 14'} 879 | peerDependencies: 880 | postcss: '>=8.0.9' 881 | ts-node: '>=9.0.0' 882 | peerDependenciesMeta: 883 | postcss: 884 | optional: true 885 | ts-node: 886 | optional: true 887 | dependencies: 888 | lilconfig: 2.1.0 889 | postcss: 8.4.31 890 | yaml: 2.3.4 891 | dev: true 892 | 893 | /postcss-nested@6.0.1(postcss@8.4.31): 894 | resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} 895 | engines: {node: '>=12.0'} 896 | peerDependencies: 897 | postcss: ^8.2.14 898 | dependencies: 899 | postcss: 8.4.31 900 | postcss-selector-parser: 6.0.13 901 | dev: true 902 | 903 | /postcss-selector-parser@6.0.13: 904 | resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==} 905 | engines: {node: '>=4'} 906 | dependencies: 907 | cssesc: 3.0.0 908 | util-deprecate: 1.0.2 909 | dev: true 910 | 911 | /postcss-value-parser@4.2.0: 912 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 913 | dev: true 914 | 915 | /postcss@8.4.31: 916 | resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} 917 | engines: {node: ^10 || ^12 || >=14} 918 | dependencies: 919 | nanoid: 3.3.7 920 | picocolors: 1.0.0 921 | source-map-js: 1.0.2 922 | 923 | /queue-microtask@1.2.3: 924 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 925 | dev: true 926 | 927 | /read-cache@1.0.0: 928 | resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} 929 | dependencies: 930 | pify: 2.3.0 931 | dev: true 932 | 933 | /readdirp@3.6.0: 934 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 935 | engines: {node: '>=8.10.0'} 936 | dependencies: 937 | picomatch: 2.3.1 938 | dev: true 939 | 940 | /resolve@1.22.8: 941 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} 942 | hasBin: true 943 | dependencies: 944 | is-core-module: 2.13.1 945 | path-parse: 1.0.7 946 | supports-preserve-symlinks-flag: 1.0.0 947 | dev: true 948 | 949 | /reusify@1.0.4: 950 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 951 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 952 | dev: true 953 | 954 | /rollup@3.29.4: 955 | resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==} 956 | engines: {node: '>=14.18.0', npm: '>=8.0.0'} 957 | hasBin: true 958 | optionalDependencies: 959 | fsevents: 2.3.3 960 | dev: true 961 | 962 | /run-parallel@1.2.0: 963 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 964 | dependencies: 965 | queue-microtask: 1.2.3 966 | dev: true 967 | 968 | /source-map-js@1.0.2: 969 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 970 | engines: {node: '>=0.10.0'} 971 | 972 | /sucrase@3.34.0: 973 | resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==} 974 | engines: {node: '>=8'} 975 | hasBin: true 976 | dependencies: 977 | '@jridgewell/gen-mapping': 0.3.3 978 | commander: 4.1.1 979 | glob: 7.1.6 980 | lines-and-columns: 1.2.4 981 | mz: 2.7.0 982 | pirates: 4.0.6 983 | ts-interface-checker: 0.1.13 984 | dev: true 985 | 986 | /supports-preserve-symlinks-flag@1.0.0: 987 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 988 | engines: {node: '>= 0.4'} 989 | dev: true 990 | 991 | /tailwindcss@3.3.5: 992 | resolution: {integrity: sha512-5SEZU4J7pxZgSkv7FP1zY8i2TIAOooNZ1e/OGtxIEv6GltpoiXUqWvLy89+a10qYTB1N5Ifkuw9lqQkN9sscvA==} 993 | engines: {node: '>=14.0.0'} 994 | hasBin: true 995 | dependencies: 996 | '@alloc/quick-lru': 5.2.0 997 | arg: 5.0.2 998 | chokidar: 3.5.3 999 | didyoumean: 1.2.2 1000 | dlv: 1.1.3 1001 | fast-glob: 3.3.2 1002 | glob-parent: 6.0.2 1003 | is-glob: 4.0.3 1004 | jiti: 1.21.0 1005 | lilconfig: 2.1.0 1006 | micromatch: 4.0.5 1007 | normalize-path: 3.0.0 1008 | object-hash: 3.0.0 1009 | picocolors: 1.0.0 1010 | postcss: 8.4.31 1011 | postcss-import: 15.1.0(postcss@8.4.31) 1012 | postcss-js: 4.0.1(postcss@8.4.31) 1013 | postcss-load-config: 4.0.1(postcss@8.4.31) 1014 | postcss-nested: 6.0.1(postcss@8.4.31) 1015 | postcss-selector-parser: 6.0.13 1016 | resolve: 1.22.8 1017 | sucrase: 3.34.0 1018 | transitivePeerDependencies: 1019 | - ts-node 1020 | dev: true 1021 | 1022 | /thenify-all@1.6.0: 1023 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 1024 | engines: {node: '>=0.8'} 1025 | dependencies: 1026 | thenify: 3.3.1 1027 | dev: true 1028 | 1029 | /thenify@3.3.1: 1030 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 1031 | dependencies: 1032 | any-promise: 1.3.0 1033 | dev: true 1034 | 1035 | /to-fast-properties@2.0.0: 1036 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} 1037 | engines: {node: '>=4'} 1038 | 1039 | /to-regex-range@5.0.1: 1040 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1041 | engines: {node: '>=8.0'} 1042 | dependencies: 1043 | is-number: 7.0.0 1044 | dev: true 1045 | 1046 | /ts-interface-checker@0.1.13: 1047 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 1048 | dev: true 1049 | 1050 | /update-browserslist-db@1.0.13(browserslist@4.22.1): 1051 | resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} 1052 | hasBin: true 1053 | peerDependencies: 1054 | browserslist: '>= 4.21.0' 1055 | dependencies: 1056 | browserslist: 4.22.1 1057 | escalade: 3.1.1 1058 | picocolors: 1.0.0 1059 | dev: true 1060 | 1061 | /util-deprecate@1.0.2: 1062 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 1063 | dev: true 1064 | 1065 | /vite@4.5.0: 1066 | resolution: {integrity: sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==} 1067 | engines: {node: ^14.18.0 || >=16.0.0} 1068 | hasBin: true 1069 | peerDependencies: 1070 | '@types/node': '>= 14' 1071 | less: '*' 1072 | lightningcss: ^1.21.0 1073 | sass: '*' 1074 | stylus: '*' 1075 | sugarss: '*' 1076 | terser: ^5.4.0 1077 | peerDependenciesMeta: 1078 | '@types/node': 1079 | optional: true 1080 | less: 1081 | optional: true 1082 | lightningcss: 1083 | optional: true 1084 | sass: 1085 | optional: true 1086 | stylus: 1087 | optional: true 1088 | sugarss: 1089 | optional: true 1090 | terser: 1091 | optional: true 1092 | dependencies: 1093 | esbuild: 0.18.20 1094 | postcss: 8.4.31 1095 | rollup: 3.29.4 1096 | optionalDependencies: 1097 | fsevents: 2.3.3 1098 | dev: true 1099 | 1100 | /vue-demi@0.14.6(vue@3.3.8): 1101 | resolution: {integrity: sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==} 1102 | engines: {node: '>=12'} 1103 | hasBin: true 1104 | requiresBuild: true 1105 | peerDependencies: 1106 | '@vue/composition-api': ^1.0.0-rc.1 1107 | vue: ^3.0.0-0 || ^2.6.0 1108 | peerDependenciesMeta: 1109 | '@vue/composition-api': 1110 | optional: true 1111 | dependencies: 1112 | vue: 3.3.8 1113 | dev: false 1114 | 1115 | /vue@3.3.8: 1116 | resolution: {integrity: sha512-5VSX/3DabBikOXMsxzlW8JyfeLKlG9mzqnWgLQLty88vdZL7ZJgrdgBOmrArwxiLtmS+lNNpPcBYqrhE6TQW5w==} 1117 | peerDependencies: 1118 | typescript: '*' 1119 | peerDependenciesMeta: 1120 | typescript: 1121 | optional: true 1122 | dependencies: 1123 | '@vue/compiler-dom': 3.3.8 1124 | '@vue/compiler-sfc': 3.3.8 1125 | '@vue/runtime-dom': 3.3.8 1126 | '@vue/server-renderer': 3.3.8(vue@3.3.8) 1127 | '@vue/shared': 3.3.8 1128 | 1129 | /wrappy@1.0.2: 1130 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 1131 | dev: true 1132 | 1133 | /yaml@2.3.4: 1134 | resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} 1135 | engines: {node: '>= 14'} 1136 | dev: true 1137 | --------------------------------------------------------------------------------