From 0a0a897e11c83b618e2b1909fd65b9367650421c Mon Sep 17 00:00:00 2001 From: Romulus21 Date: Thu, 28 Dec 2023 21:41:45 +0100 Subject: [PATCH] add icons --- Makefile | 1 + index.html | 6 +- package.json | 5 +- pnpm-lock.yaml | 451 ++++++++++++++++++++++++++++ public/apple-touch-icon-180x180.png | Bin 0 -> 1319 bytes public/cake.svg | 28 ++ public/favicon.ico | Bin 0 -> 926 bytes public/maskable-icon-512x512.png | Bin 0 -> 3818 bytes public/pwa-192x192.png | Bin 0 -> 2282 bytes public/pwa-512x512.png | Bin 0 -> 5561 bytes public/pwa-64x64.png | Bin 0 -> 768 bytes public/vite.svg | 1 - pwa-assets.config.ts | 12 + src/App.tsx | 5 +- src/assets/react.svg | 1 - src/components/BirthdayList.tsx | 10 +- vite.config.ts | 1 + 17 files changed, 508 insertions(+), 13 deletions(-) create mode 100644 public/apple-touch-icon-180x180.png create mode 100644 public/cake.svg create mode 100644 public/favicon.ico create mode 100644 public/maskable-icon-512x512.png create mode 100644 public/pwa-192x192.png create mode 100644 public/pwa-512x512.png create mode 100644 public/pwa-64x64.png delete mode 100644 public/vite.svg create mode 100644 pwa-assets.config.ts delete mode 100644 src/assets/react.svg diff --git a/Makefile b/Makefile index ed832e0..1e06fb9 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,7 @@ deploy: public/build/manifest.json pnpm run build --mode prod scp -r dist/* raspigate:/var/www/html/birthdays/ + scp -r public/* raspigate:/var/www/html/birthdays/ public/build/manifest.json: package.json pnpm install diff --git a/index.html b/index.html index bf15ef0..076e99d 100644 --- a/index.html +++ b/index.html @@ -2,13 +2,13 @@ - + Birthdays - - + + diff --git a/package.json b/package.json index 998e437..3c75cd5 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,8 @@ "dev": "vite", "build": "tsc && vite build", "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", - "preview": "vite preview" + "preview": "vite preview", + "generate-pwa-assets": "pwa-assets-generator" }, "dependencies": { "react": "^18.2.0", @@ -18,12 +19,14 @@ "@types/react-dom": "^18.2.17", "@typescript-eslint/eslint-plugin": "^6.14.0", "@typescript-eslint/parser": "^6.14.0", + "@vite-pwa/assets-generator": "^0.2.2", "@vitejs/plugin-react-swc": "^3.5.0", "autoprefixer": "^10.4.16", "eslint": "^8.55.0", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-react-refresh": "^0.4.5", "postcss": "^8.4.32", + "rollup-plugin-copy": "^3.5.0", "tailwindcss": "^3.4.0", "typescript": "^5.2.2", "vite": "^5.0.8", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b6d0f18..63845fc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -25,6 +25,9 @@ devDependencies: '@typescript-eslint/parser': specifier: ^6.14.0 version: 6.15.0(eslint@8.56.0)(typescript@5.3.3) + '@vite-pwa/assets-generator': + specifier: ^0.2.2 + version: 0.2.2 '@vitejs/plugin-react-swc': specifier: ^3.5.0 version: 3.5.0(vite@5.0.10) @@ -43,6 +46,9 @@ devDependencies: postcss: specifier: ^8.4.32 version: 8.4.32 + rollup-plugin-copy: + specifier: ^3.5.0 + version: 3.5.0 tailwindcss: specifier: ^3.4.0 version: 3.4.0 @@ -76,6 +82,10 @@ packages: '@jridgewell/trace-mapping': 0.3.20 dev: true + /@antfu/utils@0.7.7: + resolution: {integrity: sha512-gFPqTG7otEJ8uP6wrhDv6mqwGWYZKNvAcCq6u9hOj0c+IKCEsY4L1oC9trPq2SaWIzAfHvqfBDxF591JkMf+kg==} + dev: true + /@apideck/better-ajv-errors@0.3.6(ajv@8.12.0): resolution: {integrity: sha512-P+ZygBLZtkp0qqOAJJVX4oX/sFo5JR3eBWwwuqHHhK0GIgQOKWrAfiAaWX0aArHkRWHMuggFEgAZNxVPwPZYaA==} engines: {node: '>=10'} @@ -1254,6 +1264,10 @@ packages: to-fast-properties: 2.0.0 dev: true + /@canvas/image-data@1.0.0: + resolution: {integrity: sha512-BxOqI5LgsIQP1odU5KMwV9yoijleOPzHL18/YvNqF9KFSGF2K/DLlYAbDQsWqd/1nbaFuSkYD/191dpMtNh4vw==} + dev: true + /@esbuild/aix-ppc64@0.19.10: resolution: {integrity: sha512-Q+mk96KJ+FZ30h9fsJl+67IjNJm3x2eX+GBWGmocAKgzp27cowCOOqSdscX80s0SpdFXZnIv/+1xD1EctFx96Q==} engines: {node: '>=12'} @@ -1889,10 +1903,27 @@ packages: resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} dev: true + /@types/fs-extra@8.1.5: + resolution: {integrity: sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==} + dependencies: + '@types/node': 20.10.5 + dev: true + + /@types/glob@7.2.0: + resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} + dependencies: + '@types/minimatch': 5.1.2 + '@types/node': 20.10.5 + dev: true + /@types/json-schema@7.0.15: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} dev: true + /@types/minimatch@5.1.2: + resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} + dev: true + /@types/node@20.10.5: resolution: {integrity: sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==} dependencies: @@ -2070,6 +2101,19 @@ packages: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} dev: true + /@vite-pwa/assets-generator@0.2.2: + resolution: {integrity: sha512-Trk0ryNl33te5iSmMIQmGMSaEpcSSmgQwhN45DMVm1cSAueUFCj1WnEfEBOQrWH2NPpTcRKuD3pWrSYgSlorUA==} + engines: {node: '>=16.14.0'} + hasBin: true + dependencies: + cac: 6.7.14 + colorette: 2.0.20 + consola: 3.2.3 + sharp: 0.32.6 + sharp-ico: 0.1.5 + unconfig: 0.3.11 + dev: true + /@vitejs/plugin-react-swc@3.5.0(vite@5.0.10): resolution: {integrity: sha512-1PrOvAaDpqlCV+Up8RkAh9qaiUjoDUcjtttyhXDKw53XA6Ve16SOp6cCOpRs8Dj8DqUQs6eTW5YkLcLJjrXAig==} peerDependencies: @@ -2217,6 +2261,10 @@ packages: engines: {node: '>= 0.4'} dev: true + /b4a@1.6.4: + resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} + dev: true + /babel-plugin-polyfill-corejs2@0.4.7(@babel/core@7.23.6): resolution: {integrity: sha512-LidDk/tEGDfuHW2DWh/Hgo4rmnw3cduK6ZkOI1NPFceSK3n/yAGeOsNT7FLnSGHkXj3RHGSEVkN3FsCTY6w2CQ==} peerDependencies: @@ -2257,11 +2305,23 @@ packages: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true + /base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + dev: true + /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} dev: true + /bl@4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + dependencies: + buffer: 5.7.1 + inherits: 2.0.4 + readable-stream: 3.6.2 + dev: true + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -2297,11 +2357,23 @@ packages: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true + /buffer@5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + dev: true + /builtin-modules@3.3.0: resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} engines: {node: '>=6'} dev: true + /cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + dev: true + /call-bind@1.0.5: resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} dependencies: @@ -2356,6 +2428,10 @@ packages: fsevents: 2.3.3 dev: true + /chownr@1.1.4: + resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} + dev: true + /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: @@ -2377,6 +2453,29 @@ packages: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true + /color-string@1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.2 + dev: true + + /color@4.2.3: + resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} + engines: {node: '>=12.5.0'} + dependencies: + color-convert: 2.0.1 + color-string: 1.9.1 + dev: true + + /colorette@1.4.0: + resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + dev: true + + /colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + dev: true + /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: true @@ -2395,6 +2494,11 @@ packages: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} dev: true + /consola@3.2.3: + resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} + engines: {node: ^14.18.0 || >=16.10.0} + dev: true + /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} dev: true @@ -2441,6 +2545,35 @@ packages: ms: 2.1.2 dev: true + /decode-bmp@0.2.1: + resolution: {integrity: sha512-NiOaGe+GN0KJqi2STf24hfMkFitDUaIoUU3eKvP/wAbLe8o6FuW5n/x7MHPR0HKvBokp6MQY/j7w8lewEeVCIA==} + engines: {node: '>=8.6.0'} + dependencies: + '@canvas/image-data': 1.0.0 + to-data-view: 1.1.0 + dev: true + + /decode-ico@0.4.1: + resolution: {integrity: sha512-69NZfbKIzux1vBOd31al3XnMnH+2mqDhEgLdpygErm4d60N+UwA5Sq5WFjmEDQzumgB9fElojGwWG0vybVfFmA==} + engines: {node: '>=8.6'} + dependencies: + '@canvas/image-data': 1.0.0 + decode-bmp: 0.2.1 + to-data-view: 1.1.0 + dev: true + + /decompress-response@6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} + dependencies: + mimic-response: 3.1.0 + dev: true + + /deep-extend@0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} + dev: true + /deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: true @@ -2468,6 +2601,15 @@ packages: object-keys: 1.1.1 dev: true + /defu@6.1.3: + resolution: {integrity: sha512-Vy2wmG3NTkmHNg/kzpuvHhkqeIx3ODWqasgCRbKtbXEN0G+HpEEv9BtJLp7ZG1CZloFaC41Ah3ZFbq7aqCqMeQ==} + dev: true + + /detect-libc@2.0.2: + resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} + engines: {node: '>=8'} + dev: true + /didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} dev: true @@ -2514,6 +2656,12 @@ packages: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: true + /end-of-stream@1.4.4: + resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} + dependencies: + once: 1.4.0 + dev: true + /es-abstract@1.22.3: resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==} engines: {node: '>= 0.4'} @@ -2737,10 +2885,19 @@ packages: engines: {node: '>=0.10.0'} dev: true + /expand-template@2.0.3: + resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} + engines: {node: '>=6'} + dev: true + /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true + /fast-fifo@1.3.2: + resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} + dev: true + /fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} @@ -2825,6 +2982,19 @@ packages: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} dev: true + /fs-constants@1.0.0: + resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + dev: true + + /fs-extra@8.1.0: + resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} + engines: {node: '>=6 <7 || >=8'} + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + dev: true + /fs-extra@9.1.0: resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} engines: {node: '>=10'} @@ -2891,6 +3061,10 @@ packages: get-intrinsic: 1.2.2 dev: true + /github-from-package@0.0.0: + resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} + dev: true + /glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -2947,6 +3121,20 @@ packages: define-properties: 1.2.1 dev: true + /globby@10.0.1: + resolution: {integrity: sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==} + engines: {node: '>=8'} + dependencies: + '@types/glob': 7.2.0 + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.2 + glob: 7.2.3 + ignore: 5.3.0 + merge2: 1.4.1 + slash: 3.0.0 + dev: true + /globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} @@ -3017,10 +3205,18 @@ packages: function-bind: 1.1.2 dev: true + /ico-endec@0.1.6: + resolution: {integrity: sha512-ZdLU38ZoED3g1j3iEyzcQj+wAkY2xfWNkymszfJPoxucIUhK7NayQ+/C4Kv0nDFMIsbtbEHldv3V8PU494/ueQ==} + dev: true + /idb@7.1.1: resolution: {integrity: sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==} dev: true + /ieee754@1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + dev: true + /ignore@5.3.0: resolution: {integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==} engines: {node: '>= 4'} @@ -3050,6 +3246,10 @@ packages: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} dev: true + /ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + dev: true + /internal-slot@1.0.6: resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} engines: {node: '>= 0.4'} @@ -3067,6 +3267,10 @@ packages: is-typed-array: 1.1.12 dev: true + /is-arrayish@0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + dev: true + /is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: @@ -3154,6 +3358,11 @@ packages: engines: {node: '>=8'} dev: true + /is-plain-object@3.0.1: + resolution: {integrity: sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==} + engines: {node: '>=0.10.0'} + dev: true + /is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} @@ -3294,6 +3503,16 @@ packages: hasBin: true dev: true + /jsonc-parser@3.2.0: + resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} + dev: true + + /jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + optionalDependencies: + graceful-fs: 4.2.11 + dev: true + /jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} dependencies: @@ -3411,6 +3630,11 @@ packages: picomatch: 2.3.1 dev: true + /mimic-response@3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} + dev: true + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -3431,11 +3655,28 @@ packages: brace-expansion: 2.0.1 dev: true + /minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + dev: true + /minipass@7.0.4: resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} engines: {node: '>=16 || 14 >=14.17'} dev: true + /mkdirp-classic@0.5.3: + resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} + dev: true + + /mlly@1.4.2: + resolution: {integrity: sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==} + dependencies: + acorn: 8.11.2 + pathe: 1.1.1 + pkg-types: 1.0.3 + ufo: 1.3.2 + dev: true + /ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} dev: true @@ -3454,10 +3695,25 @@ packages: hasBin: true dev: true + /napi-build-utils@1.0.2: + resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} + dev: true + /natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true + /node-abi@3.52.0: + resolution: {integrity: sha512-JJ98b02z16ILv7859irtXn4oUaFWADtvkzy2c0IAatNVX2Mc9Yoh8z6hZInn3QwvMEYhHuQloYi+TTQy67SIdQ==} + engines: {node: '>=10'} + dependencies: + semver: 7.5.4 + dev: true + + /node-addon-api@6.1.0: + resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} + dev: true + /node-releases@2.0.14: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} dev: true @@ -3572,6 +3828,10 @@ packages: engines: {node: '>=8'} dev: true + /pathe@1.1.1: + resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==} + dev: true + /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} dev: true @@ -3591,6 +3851,14 @@ packages: engines: {node: '>= 6'} dev: true + /pkg-types@1.0.3: + resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} + dependencies: + jsonc-parser: 3.2.0 + mlly: 1.4.2 + pathe: 1.1.1 + dev: true + /postcss-import@15.1.0(postcss@8.4.32): resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} engines: {node: '>=14.0.0'} @@ -3661,6 +3929,25 @@ packages: source-map-js: 1.0.2 dev: true + /prebuild-install@7.1.1: + resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} + engines: {node: '>=10'} + hasBin: true + dependencies: + detect-libc: 2.0.2 + expand-template: 2.0.3 + github-from-package: 0.0.0 + minimist: 1.2.8 + mkdirp-classic: 0.5.3 + napi-build-utils: 1.0.2 + node-abi: 3.52.0 + pump: 3.0.0 + rc: 1.2.8 + simple-get: 4.0.1 + tar-fs: 2.1.1 + tunnel-agent: 0.6.0 + dev: true + /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -3676,6 +3963,13 @@ packages: engines: {node: ^14.13.1 || >=16.0.0} dev: true + /pump@3.0.0: + resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} + dependencies: + end-of-stream: 1.4.4 + once: 1.4.0 + dev: true + /punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -3685,12 +3979,26 @@ packages: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} dev: true + /queue-tick@1.0.1: + resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} + dev: true + /randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: safe-buffer: 5.2.1 dev: true + /rc@1.2.8: + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + hasBin: true + dependencies: + deep-extend: 0.6.0 + ini: 1.3.8 + minimist: 1.2.8 + strip-json-comments: 2.0.1 + dev: true + /react-dom@18.2.0(react@18.2.0): resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} peerDependencies: @@ -3714,6 +4022,15 @@ packages: pify: 2.3.0 dev: true + /readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + dev: true + /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} @@ -3801,6 +4118,17 @@ packages: glob: 7.2.3 dev: true + /rollup-plugin-copy@3.5.0: + resolution: {integrity: sha512-wI8D5dvYovRMx/YYKtUNt3Yxaw4ORC9xo6Gt9t22kveWz1enG9QrhVlagzwrxSC455xD1dHMKhIJkbsQ7d48BA==} + engines: {node: '>=8.3'} + dependencies: + '@types/fs-extra': 8.1.5 + colorette: 1.4.0 + fs-extra: 8.1.0 + globby: 10.0.1 + is-plain-object: 3.0.1 + dev: true + /rollup-plugin-terser@7.0.2(rollup@2.79.1): resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==} deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser @@ -3915,6 +4243,29 @@ packages: has-property-descriptors: 1.0.1 dev: true + /sharp-ico@0.1.5: + resolution: {integrity: sha512-a3jODQl82NPp1d5OYb0wY+oFaPk7AvyxipIowCHk7pBsZCWgbe0yAkU2OOXdoH0ENyANhyOQbs9xkAiRHcF02Q==} + dependencies: + decode-ico: 0.4.1 + ico-endec: 0.1.6 + sharp: 0.32.6 + dev: true + + /sharp@0.32.6: + resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} + engines: {node: '>=14.15.0'} + requiresBuild: true + dependencies: + color: 4.2.3 + detect-libc: 2.0.2 + node-addon-api: 6.1.0 + prebuild-install: 7.1.1 + semver: 7.5.4 + simple-get: 4.0.1 + tar-fs: 3.0.4 + tunnel-agent: 0.6.0 + dev: true + /shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -3940,6 +4291,24 @@ packages: engines: {node: '>=14'} dev: true + /simple-concat@1.0.1: + resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} + dev: true + + /simple-get@4.0.1: + resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} + dependencies: + decompress-response: 6.0.0 + once: 1.4.0 + simple-concat: 1.0.1 + dev: true + + /simple-swizzle@0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + dependencies: + is-arrayish: 0.3.2 + dev: true + /slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} @@ -3974,6 +4343,13 @@ packages: deprecated: Please use @jridgewell/sourcemap-codec instead dev: true + /streamx@2.15.6: + resolution: {integrity: sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==} + dependencies: + fast-fifo: 1.3.2 + queue-tick: 1.0.1 + dev: true + /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -4031,6 +4407,12 @@ packages: es-abstract: 1.22.3 dev: true + /string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + dependencies: + safe-buffer: 5.2.1 + dev: true + /stringify-object@3.3.0: resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==} engines: {node: '>=4'} @@ -4059,6 +4441,11 @@ packages: engines: {node: '>=10'} dev: true + /strip-json-comments@2.0.1: + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} + engines: {node: '>=0.10.0'} + dev: true + /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} @@ -4128,6 +4515,42 @@ packages: - ts-node dev: true + /tar-fs@2.1.1: + resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} + dependencies: + chownr: 1.1.4 + mkdirp-classic: 0.5.3 + pump: 3.0.0 + tar-stream: 2.2.0 + dev: true + + /tar-fs@3.0.4: + resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} + dependencies: + mkdirp-classic: 0.5.3 + pump: 3.0.0 + tar-stream: 3.1.6 + dev: true + + /tar-stream@2.2.0: + resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} + engines: {node: '>=6'} + dependencies: + bl: 4.1.0 + end-of-stream: 1.4.4 + fs-constants: 1.0.0 + inherits: 2.0.4 + readable-stream: 3.6.2 + dev: true + + /tar-stream@3.1.6: + resolution: {integrity: sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==} + dependencies: + b4a: 1.6.4 + fast-fifo: 1.3.2 + streamx: 2.15.6 + dev: true + /temp-dir@2.0.0: resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==} engines: {node: '>=8'} @@ -4171,6 +4594,10 @@ packages: any-promise: 1.3.0 dev: true + /to-data-view@1.1.0: + resolution: {integrity: sha512-1eAdufMg6mwgmlojAx3QeMnzB/BTVp7Tbndi3U7ftcT2zCZadjxkkmLmd97zmaxWi+sgGcgWrokmpEoy0Dn0vQ==} + dev: true + /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} @@ -4202,6 +4629,12 @@ packages: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} dev: true + /tunnel-agent@0.6.0: + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + dependencies: + safe-buffer: 5.2.1 + dev: true + /type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -4263,6 +4696,10 @@ packages: hasBin: true dev: true + /ufo@1.3.2: + resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} + dev: true + /unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: @@ -4272,6 +4709,15 @@ packages: which-boxed-primitive: 1.0.2 dev: true + /unconfig@0.3.11: + resolution: {integrity: sha512-bV/nqePAKv71v3HdVUn6UefbsDKQWRX+bJIkiSm0+twIds6WiD2bJLWWT3i214+J/B4edufZpG2w7Y63Vbwxow==} + dependencies: + '@antfu/utils': 0.7.7 + defu: 6.1.3 + jiti: 1.21.0 + mlly: 1.4.2 + dev: true + /undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} dev: true @@ -4306,6 +4752,11 @@ packages: crypto-random-string: 2.0.0 dev: true + /universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + dev: true + /universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} diff --git a/public/apple-touch-icon-180x180.png b/public/apple-touch-icon-180x180.png new file mode 100644 index 0000000000000000000000000000000000000000..5940d3117e2bf8aad93693847018f80d03b6163c GIT binary patch literal 1319 zcmV+?1=#wDP)x#MHQIq`Gj{n)-|KEJvH-`Djn(KOi_Q2Ntk=OIDob8gA_txgvT_4K; z000SaNLh0L00Za%00Za&wR=))000D42By>Kqv+O|F1nzRBG#P zyLU5$xxAmO+nssDkdQ!nyNN_1kw_#Gi9{liNF)-8L?V$$Boh5kq}71X;O6m|$qhHu z=uCpan3Xe=aeAyt==?NIgku>rWai1ck(lRf97QgSGz)2Ao`#x=5LakF(o`hBLYtA| z%LYA^QB&NY2O4RF%{&IO=}=u>qOn#>W^o>2s4xyL`sBt6<9WqI4#I7?yv3m!i#mXF zE~fz_O~l}o)@6w|(o6)kEvwad&^RD80*wYe6FgufXhLxCcsxc5FIa%Ha42Y8nE{4_ z&J_e43A#i>)VHyqLF+o?BbmpRcMS+VyYZlBHv;rrX|Yt6G}42=%hNfQP%Voo%&B_QwbuJ#!vteL(NozM zL?tLVkO|zD*pht~m-3AU3fbAUMy+6tix})#fd@5E>!N>E;NV5n5(__vwg3#y8-zB1 zf1>_dUaCyBW1O}Aea!n;C0kFNwZDKL;QQAV;N&2hSAPYqfZ0ed7E%ZMa-=&a1v5Cb z-wH5e>y8^j7~I#;+e`WG6x2F{}FhPMJ)Og^Q1%zcA;EJ_D_4 z{C@Qy*OO57&19McJb?XPU6y-_?7vc%;v~X|&^REpg4Y1f-=@#8a9`hj#@@wy=$8O~ z`g>jTU8P;U{PfiVZ-@S2wbyB9L%m%q=}NBa2Yr>_>TYX~KdakrOj{KF*57qonwA4r ze`Cg;<+0%YWFejVcJij|w@ESaA(M}t^KnR%FULwhEac@nYCgrDuy=*2 z9PWmGYAEEzQ>6PT}-$MK8^$jHKzZFp1L;Q;woJKlr&hu$8FN0VZmiHG~xqsSBVcGnY+<82k%ysVg7=zHYUmt6z7`3>5$3F6I6 z+8lKx%||CcJX)Udeg8uzB#*Onl$k} zbXtvr&oS_P8X=mU)m%ZF#H&HEbT21!o_-B$dkw_#Gi9{liNF)-8L?V$$Boc{4 dBGG@Ue*mFpY`l5r#K!;t002ovPDHLkV1it>n&AKd literal 0 HcmV?d00001 diff --git a/public/cake.svg b/public/cake.svg new file mode 100644 index 0000000..57e97cf --- /dev/null +++ b/public/cake.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..740eabe9a2766111a806a811a78f04a1b1ea7fc5 GIT binary patch literal 926 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 Eg8gAhApigX literal 0 HcmV?d00001 diff --git a/public/pwa-512x512.png b/public/pwa-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..691363dd4edc58bbb551bc2ddcaaacfdcb8b58d8 GIT binary patch literal 5561 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