From 56b2726437366972f0a4dfbfaa191a5eb7d50361 Mon Sep 17 00:00:00 2001 From: Anthony Fu Date: Wed, 28 Oct 2020 18:05:02 +0800 Subject: [PATCH] feat: PWA support! --- README.md | 7 +- index.html | 3 + package.json | 5 +- pnpm-lock.yaml | 1591 +++++++++++++++++++++++++++++++++- public/pwa-192x192.png | Bin 0 -> 6414 bytes public/pwa-512x512.png | Bin 0 -> 15039 bytes public/safari-pinned-tab.svg | 41 + vite.config.ts | 19 + 8 files changed, 1661 insertions(+), 5 deletions(-) create mode 100644 public/pwa-192x192.png create mode 100644 public/pwa-512x512.png create mode 100644 public/safari-pinned-tab.svg diff --git a/README.md b/README.md index 4152b62..25da18f 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,9 @@ - 🗂 [File based routing](./src/pages) -- 📲 [Components auto importing](./src/components) +- 📦 [Components auto importing](./src/components) + +- 📲 [PWA](https://github.com/antfu/vite-plugin-pwa) - 🎨 TailwindCSS with dark mode out-of-box @@ -30,7 +32,7 @@ - 🦾 TypeScript, of course -- ☁️ Deploy on Netlify, zero config +- ☁️ Deploy on Netlify, zero-config
@@ -50,6 +52,7 @@ - [Vue Router](https://github.com/vuejs/vue-router) - [vite-plugin-voie](https://github.com/vamplate/vite-plugin-voie) - file system based routing - [vite-plugin-components](https://github.com/antfu/vite-plugin-components) - components auto import +- [vite-plugin-pwa](https://github.com/antfu/vite-plugin-pwa) - PWA - [vue-i18n](https://github.com/intlify/vue-i18n-next) - internationalization - [VueUse](https://github.com/antfu/vueuse) - collection of useful composition APIs diff --git a/index.html b/index.html index 0c8ace3..ce4a960 100644 --- a/index.html +++ b/index.html @@ -4,6 +4,9 @@ + + + Vitesse diff --git a/package.json b/package.json index bcdd094..6efd2d7 100644 --- a/package.json +++ b/package.json @@ -15,18 +15,19 @@ }, "devDependencies": { "@antfu/eslint-config-vue": "^0.4.3", - "@iconify/json": "^1.1.247", + "@iconify/json": "^1.1.248", "@purge-icons/generated": "^0.4.1", "@typescript-eslint/eslint-plugin": "^4.6.0", "@vue/compiler-sfc": "^3.0.2", "@vuedx/typescript-plugin-vue": "^0.2.3", "cross-env": "^7.0.2", - "eslint": "^7.12.0", + "eslint": "^7.12.1", "tailwindcss": "^1.9.6", "typescript": "^4.0.5", "vite": "^1.0.0-rc.8", "vite-plugin-components": "^0.2.14", "vite-plugin-purge-icons": "^0.4.4", + "vite-plugin-pwa": "^0.1.3", "vite-plugin-voie": "^0.4.0", "voie-pages": "^0.4.0" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 43830c1..f5b49b0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -18,6 +18,7 @@ devDependencies: vite: 1.0.0-rc.8 vite-plugin-components: 0.2.14 vite-plugin-purge-icons: 0.4.4 + vite-plugin-pwa: 0.1.3 vite-plugin-voie: 0.4.0_c84bdc0603573c924810a81fe0ed9090 voie-pages: 0.4.0_vue@3.0.2 lockfileVersion: 5.1 @@ -67,6 +68,33 @@ packages: dev: true resolution: integrity: sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== + /@babel/compat-data/7.12.1: + dev: true + resolution: + integrity: sha512-725AQupWJZ8ba0jbKceeFblZTY90McUBWMwHhkFQ9q1zKPJ95GUktljFcgcsIVwRnTnRKlcYzfiNImg5G9m6ZQ== + /@babel/core/7.12.3: + dependencies: + '@babel/code-frame': 7.10.4 + '@babel/generator': 7.12.1 + '@babel/helper-module-transforms': 7.12.1 + '@babel/helpers': 7.12.1 + '@babel/parser': 7.12.3 + '@babel/template': 7.10.4 + '@babel/traverse': 7.12.1 + '@babel/types': 7.12.1 + convert-source-map: 1.7.0 + debug: 4.3.0 + gensync: 1.0.0-beta.2 + json5: 2.1.3 + lodash: 4.17.20 + resolve: 1.18.1 + semver: 5.7.1 + source-map: 0.5.7 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g== /@babel/generator/7.11.6: dependencies: '@babel/types': 7.12.1 @@ -75,6 +103,77 @@ packages: dev: true resolution: integrity: sha512-DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA== + /@babel/generator/7.12.1: + dependencies: + '@babel/types': 7.12.1 + jsesc: 2.5.2 + source-map: 0.5.7 + dev: true + resolution: + integrity: sha512-DB+6rafIdc9o72Yc3/Ph5h+6hUjeOp66pF0naQBgUFFuPqzQwIlPTm3xZR7YNvduIMtkDIj2t21LSQwnbCrXvg== + /@babel/helper-annotate-as-pure/7.10.4: + dependencies: + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA== + /@babel/helper-builder-binary-assignment-operator-visitor/7.10.4: + dependencies: + '@babel/helper-explode-assignable-expression': 7.12.1 + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg== + /@babel/helper-compilation-targets/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/compat-data': 7.12.1 + '@babel/core': 7.12.3 + '@babel/helper-validator-option': 7.12.1 + browserslist: 4.14.5 + semver: 5.7.1 + dev: true + peerDependencies: + '@babel/core': ^7.0.0 + resolution: + integrity: sha512-jtBEif7jsPwP27GPHs06v4WBV0KrE8a/P7n0N0sSvHn2hwUCYnolP/CLmz51IzAW4NlN+HuoBtb9QcwnRo9F/g== + /@babel/helper-create-class-features-plugin/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-function-name': 7.10.4 + '@babel/helper-member-expression-to-functions': 7.12.1 + '@babel/helper-optimise-call-expression': 7.10.4 + '@babel/helper-replace-supers': 7.12.1 + '@babel/helper-split-export-declaration': 7.11.0 + dev: true + peerDependencies: + '@babel/core': ^7.0.0 + resolution: + integrity: sha512-hkL++rWeta/OVOBTRJc9a5Azh5mt5WgZUGAKMD8JM141YsE08K//bp1unBBieO6rUKkIPyUE0USQ30jAy3Sk1w== + /@babel/helper-create-regexp-features-plugin/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-annotate-as-pure': 7.10.4 + '@babel/helper-regex': 7.10.5 + regexpu-core: 4.7.1 + dev: true + peerDependencies: + '@babel/core': ^7.0.0 + resolution: + integrity: sha512-rsZ4LGvFTZnzdNZR5HZdmJVuXK8834R5QkF3WvcnBhrlVtF0HSIUC6zbreL9MgjTywhKokn8RIYRiq99+DLAxA== + /@babel/helper-define-map/7.10.5: + dependencies: + '@babel/helper-function-name': 7.10.4 + '@babel/types': 7.12.1 + lodash: 4.17.20 + dev: true + resolution: + integrity: sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ== + /@babel/helper-explode-assignable-expression/7.12.1: + dependencies: + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-dmUwH8XmlrUpVqgtZ737tK88v07l840z9j3OEhCLwKTkjlvKpfqXVIZ0wpK3aeOxspwGrf/5AP5qLx4rO3w5rA== /@babel/helper-function-name/7.10.4: dependencies: '@babel/helper-get-function-arity': 7.10.4 @@ -89,6 +188,83 @@ packages: dev: true resolution: integrity: sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A== + /@babel/helper-hoist-variables/7.10.4: + dependencies: + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA== + /@babel/helper-member-expression-to-functions/7.12.1: + dependencies: + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-k0CIe3tXUKTRSoEx1LQEPFU9vRQfqHtl+kf8eNnDqb4AUJEy5pz6aIiog+YWtVm2jpggjS1laH68bPsR+KWWPQ== + /@babel/helper-module-imports/7.12.1: + dependencies: + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-ZeC1TlMSvikvJNy1v/wPIazCu3NdOwgYZLIkmIyAsGhqkNpiDoQQRmaCK8YP4Pq3GPTLPV9WXaPCJKvx06JxKA== + /@babel/helper-module-transforms/7.12.1: + dependencies: + '@babel/helper-module-imports': 7.12.1 + '@babel/helper-replace-supers': 7.12.1 + '@babel/helper-simple-access': 7.12.1 + '@babel/helper-split-export-declaration': 7.11.0 + '@babel/helper-validator-identifier': 7.10.4 + '@babel/template': 7.10.4 + '@babel/traverse': 7.12.1 + '@babel/types': 7.12.1 + lodash: 4.17.20 + dev: true + resolution: + integrity: sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w== + /@babel/helper-optimise-call-expression/7.10.4: + dependencies: + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg== + /@babel/helper-plugin-utils/7.10.4: + dev: true + resolution: + integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== + /@babel/helper-regex/7.10.5: + dependencies: + lodash: 4.17.20 + dev: true + resolution: + integrity: sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg== + /@babel/helper-remap-async-to-generator/7.12.1: + dependencies: + '@babel/helper-annotate-as-pure': 7.10.4 + '@babel/helper-wrap-function': 7.12.3 + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-9d0KQCRM8clMPcDwo8SevNs+/9a8yWVVmaE80FGJcEP8N1qToREmWEGnBn8BUlJhYRFz6fqxeRL1sl5Ogsed7A== + /@babel/helper-replace-supers/7.12.1: + dependencies: + '@babel/helper-member-expression-to-functions': 7.12.1 + '@babel/helper-optimise-call-expression': 7.10.4 + '@babel/traverse': 7.12.1 + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-zJjTvtNJnCFsCXVi5rUInstLd/EIVNmIKA1Q9ynESmMBWPWd+7sdR+G4/wdu+Mppfep0XLyG2m7EBPvjCeFyrw== + /@babel/helper-simple-access/7.12.1: + dependencies: + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA== + /@babel/helper-skip-transparent-expression-wrappers/7.12.1: + dependencies: + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA== /@babel/helper-split-export-declaration/7.11.0: dependencies: '@babel/types': 7.12.1 @@ -98,6 +274,27 @@ packages: /@babel/helper-validator-identifier/7.10.4: resolution: integrity: sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== + /@babel/helper-validator-option/7.12.1: + dev: true + resolution: + integrity: sha512-YpJabsXlJVWP0USHjnC/AQDTLlZERbON577YUVO/wLpqyj6HAtVYnWaQaN0iUN+1/tWn3c+uKKXjRut5115Y2A== + /@babel/helper-wrap-function/7.12.3: + dependencies: + '@babel/helper-function-name': 7.10.4 + '@babel/template': 7.10.4 + '@babel/traverse': 7.12.1 + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-Cvb8IuJDln3rs6tzjW3Y8UeelAOdnpB8xtQ4sme2MSZ9wOxrbThporC0y/EtE16VAtoyEfLM404Xr1e0OOp+ow== + /@babel/helpers/7.12.1: + dependencies: + '@babel/template': 7.10.4 + '@babel/traverse': 7.12.1 + '@babel/types': 7.12.1 + dev: true + resolution: + integrity: sha512-9JoDSBGoWtmbay98efmT2+mySkwjzeFeAL9BuWNoVQpkPFQF8SIIFUfY5os9u8wVzglzoiPRSW7cuJmBDUt43g== /@babel/highlight/7.10.4: dependencies: '@babel/helper-validator-identifier': 7.10.4 @@ -119,6 +316,656 @@ packages: hasBin: true resolution: integrity: sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw== + /@babel/plugin-proposal-async-generator-functions/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-remap-async-to-generator': 7.12.1 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-d+/o30tJxFxrA1lhzJqiUcEJdI6jKlNregCv5bASeGf2Q4MXmnwH7viDo7nhx1/ohf09oaH8j1GVYG/e3Yqk6A== + /@babel/plugin-proposal-class-properties/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-create-class-features-plugin': 7.12.1_@babel+core@7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-cKp3dlQsFsEs5CWKnN7BnSHOd0EOW8EKpEjkoz1pO2E5KzIDNV9Ros1b0CnmbVgAGXJubOYVBOGCT1OmJwOI7w== + /@babel/plugin-proposal-dynamic-import/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-a4rhUSZFuq5W8/OO8H7BL5zspjnc1FLd9hlOxIK/f7qG4a0qsqk8uvF/ywgBA8/OmjsapjpvaEOYItfGG1qIvQ== + /@babel/plugin-proposal-export-namespace-from/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-6CThGf0irEkzujYS5LQcjBx8j/4aQGiVv7J9+2f7pGfxqyKh3WnmVJYW3hdrQjyksErMGBPQrCnHfOtna+WLbw== + /@babel/plugin-proposal-json-strings/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-GoLDUi6U9ZLzlSda2Df++VSqDJg3CG+dR0+iWsv6XRw1rEq+zwt4DirM9yrxW6XWaTpmai1cWJLMfM8qQJf+yw== + /@babel/plugin-proposal-logical-assignment-operators/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-k8ZmVv0JU+4gcUGeCDZOGd0lCIamU/sMtIiX3UWnUc5yzgq6YUGyEolNYD+MLYKfSzgECPcqetVcJP9Afe/aCA== + /@babel/plugin-proposal-nullish-coalescing-operator/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-nZY0ESiaQDI1y96+jk6VxMOaL4LPo/QDHBqL+SF3/vl6dHkTwHlOI8L4ZwuRBHgakRBw5zsVylel7QPbbGuYgg== + /@babel/plugin-proposal-numeric-separator/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-MR7Ok+Af3OhNTCxYVjJZHS0t97ydnJZt/DbR4WISO39iDnhiD8XHrY12xuSJ90FFEGjir0Fzyyn7g/zY6hxbxA== + /@babel/plugin-proposal-object-rest-spread/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.12.3 + '@babel/plugin-transform-parameters': 7.12.1_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA== + /@babel/plugin-proposal-optional-catch-binding/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-hFvIjgprh9mMw5v42sJWLI1lzU5L2sznP805zeT6rySVRA0Y18StRhDqhSxlap0oVgItRsB6WSROp4YnJTJz0g== + /@babel/plugin-proposal-optional-chaining/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-skip-transparent-expression-wrappers': 7.12.1 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-c2uRpY6WzaVDzynVY9liyykS+kVU+WRZPMPYpkelXH8KBt1oXoI89kPbZKKG/jDT5UK92FTW2fZkZaJhdiBabw== + /@babel/plugin-proposal-private-methods/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-create-class-features-plugin': 7.12.1_@babel+core@7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-mwZ1phvH7/NHK6Kf8LP7MYDogGV+DKB1mryFOEwx5EBNQrosvIczzZFTUmWaeujd5xT6G1ELYWUz3CutMhjE1w== + /@babel/plugin-proposal-unicode-property-regex/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-create-regexp-features-plugin': 7.12.1_@babel+core@7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + engines: + node: '>=4' + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-MYq+l+PvHuw/rKUz1at/vb6nCnQ2gmJBNaM62z0OgH7B2W1D9pvkpYtlti9bGtizNIU1K3zm4bZF9F91efVY0w== + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== + /@babel/plugin-syntax-class-properties/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-U40A76x5gTwmESz+qiqssqmeEsKvcSyvtgktrm0uzcARAmM9I1jR221f6Oq+GmHrcD+LvZDag1UTOTe2fL3TeA== + /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== + /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + /@babel/plugin-syntax-top-level-await/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-i7ooMZFS+a/Om0crxZodrTzNEPJHZrlMVGMTEpFAj6rYY/bKCddB0Dk/YxfPuYXOopuhKk/e1jV6h+WUU9XN3A== + /@babel/plugin-transform-arrow-functions/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-5QB50qyN44fzzz4/qxDPQMBCTHgxg3n0xRBLJUmBlLoU/sFvxVWGZF/ZUfMVDQuJUKXaBhbupxIzIfZ6Fwk/0A== + /@babel/plugin-transform-async-to-generator/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-module-imports': 7.12.1 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-remap-async-to-generator': 7.12.1 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-SDtqoEcarK1DFlRJ1hHRY5HvJUj5kX4qmtpMAm2QnhOlyuMC4TMdCRgW6WXpv93rZeYNeLP22y8Aq2dbcDRM1A== + /@babel/plugin-transform-block-scoped-functions/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-5OpxfuYnSgPalRpo8EWGPzIYf0lHBWORCkj5M0oLBwHdlux9Ri36QqGW3/LR13RSVOAoUUMzoPI/jpE4ABcHoA== + /@babel/plugin-transform-block-scoping/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-zJyAC9sZdE60r1nVQHblcfCj29Dh2Y0DOvlMkcqSo0ckqjiCwNiUezUKw+RjOCwGfpLRwnAeQ2XlLpsnGkvv9w== + /@babel/plugin-transform-classes/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-annotate-as-pure': 7.10.4 + '@babel/helper-define-map': 7.10.5 + '@babel/helper-function-name': 7.10.4 + '@babel/helper-optimise-call-expression': 7.10.4 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-replace-supers': 7.12.1 + '@babel/helper-split-export-declaration': 7.11.0 + globals: 11.12.0 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-/74xkA7bVdzQTBeSUhLLJgYIcxw/dpEpCdRDiHgPJ3Mv6uC11UhjpOhl72CgqbBCmt1qtssCyB2xnJm1+PFjog== + /@babel/plugin-transform-computed-properties/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-vVUOYpPWB7BkgUWPo4C44mUQHpTZXakEqFjbv8rQMg7TC6S6ZhGZ3otQcRH6u7+adSlE5i0sp63eMC/XGffrzg== + /@babel/plugin-transform-destructuring/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-fRMYFKuzi/rSiYb2uRLiUENJOKq4Gnl+6qOv5f8z0TZXg3llUwUhsNNwrwaT/6dUhJTzNpBr+CUvEWBtfNY1cw== + /@babel/plugin-transform-dotall-regex/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-create-regexp-features-plugin': 7.12.1_@babel+core@7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-B2pXeRKoLszfEW7J4Hg9LoFaWEbr/kzo3teWHmtFCszjRNa/b40f9mfeqZsIDLLt/FjwQ6pz/Gdlwy85xNckBA== + /@babel/plugin-transform-duplicate-keys/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-iRght0T0HztAb/CazveUpUQrZY+aGKKaWXMJ4uf9YJtqxSUe09j3wteztCUDRHs+SRAL7yMuFqUsLoAKKzgXjw== + /@babel/plugin-transform-exponentiation-operator/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.10.4 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-7tqwy2bv48q+c1EHbXK0Zx3KXd2RVQp6OC7PbwFNt/dPTAV3Lu5sWtWuAj8owr5wqtWnqHfl2/mJlUmqkChKug== + /@babel/plugin-transform-for-of/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-Zaeq10naAsuHo7heQvyV0ptj4dlZJwZgNAtBYBnu5nNKJoW62m0zKcIEyVECrUKErkUkg6ajMy4ZfnVZciSBhg== + /@babel/plugin-transform-function-name/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-function-name': 7.10.4 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-JF3UgJUILoFrFMEnOJLJkRHSk6LUSXLmEFsA23aR2O5CSLUxbeUX1IZ1YQ7Sn0aXb601Ncwjx73a+FVqgcljVw== + /@babel/plugin-transform-literals/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-+PxVGA+2Ag6uGgL0A5f+9rklOnnMccwEBzwYFL3EUaKuiyVnUipyXncFcfjSkbimLrODoqki1U9XxZzTvfN7IQ== + /@babel/plugin-transform-member-expression-literals/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-1sxePl6z9ad0gFMB9KqmYofk34flq62aqMt9NqliS/7hPEpURUCMbyHXrMPlo282iY7nAvUB1aQd5mg79UD9Jg== + /@babel/plugin-transform-modules-amd/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-module-transforms': 7.12.1 + '@babel/helper-plugin-utils': 7.10.4 + babel-plugin-dynamic-import-node: 2.3.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-tDW8hMkzad5oDtzsB70HIQQRBiTKrhfgwC/KkJeGsaNFTdWhKNt/BiE8c5yj19XiGyrxpbkOfH87qkNg1YGlOQ== + /@babel/plugin-transform-modules-commonjs/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-module-transforms': 7.12.1 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-simple-access': 7.12.1 + babel-plugin-dynamic-import-node: 2.3.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-dY789wq6l0uLY8py9c1B48V8mVL5gZh/+PQ5ZPrylPYsnAvnEMjqsUXkuoDVPeVK+0VyGar+D08107LzDQ6pag== + /@babel/plugin-transform-modules-systemjs/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-hoist-variables': 7.10.4 + '@babel/helper-module-transforms': 7.12.1 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-validator-identifier': 7.10.4 + babel-plugin-dynamic-import-node: 2.3.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-Hn7cVvOavVh8yvW6fLwveFqSnd7rbQN3zJvoPNyNaQSvgfKmDBO9U1YL9+PCXGRlZD9tNdWTy5ACKqMuzyn32Q== + /@babel/plugin-transform-modules-umd/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-module-transforms': 7.12.1 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-aEIubCS0KHKM0zUos5fIoQm+AZUMt1ZvMpqz0/H5qAQ7vWylr9+PLYurT+Ic7ID/bKLd4q8hDovaG3Zch2uz5Q== + /@babel/plugin-transform-named-capturing-groups-regex/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-create-regexp-features-plugin': 7.12.1_@babel+core@7.12.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0 + resolution: + integrity: sha512-tB43uQ62RHcoDp9v2Nsf+dSM8sbNodbEicbQNA53zHz8pWUhsgHSJCGpt7daXxRydjb0KnfmB+ChXOv3oADp1Q== + /@babel/plugin-transform-new-target/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-+eW/VLcUL5L9IvJH7rT1sT0CzkdUTvPrXC2PXTn/7z7tXLBuKvezYbGdxD5WMRoyvyaujOq2fWoKl869heKjhw== + /@babel/plugin-transform-object-super/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-replace-supers': 7.12.1 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-AvypiGJH9hsquNUn+RXVcBdeE3KHPZexWRdimhuV59cSoOt5kFBmqlByorAeUlGG2CJWd0U+4ZtNKga/TB0cAw== + /@babel/plugin-transform-parameters/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-xq9C5EQhdPK23ZeCdMxl8bbRnAgHFrw5EOC3KJUsSylZqdkCaFEXxGSBuTSObOpiiHHNyb82es8M1QYgfQGfNg== + /@babel/plugin-transform-property-literals/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-6MTCR/mZ1MQS+AwZLplX4cEySjCpnIF26ToWo942nqn8hXSm7McaHQNeGx/pt7suI1TWOWMfa/NgBhiqSnX0cQ== + /@babel/plugin-transform-regenerator/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + regenerator-transform: 0.14.5 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-gYrHqs5itw6i4PflFX3OdBPMQdPbF4bj2REIUxlMRUFk0/ZOAIpDFuViuxPjUL7YC8UPnf+XG7/utJvqXdPKng== + /@babel/plugin-transform-reserved-words/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-pOnUfhyPKvZpVyBHhSBoX8vfA09b7r00Pmm1sH+29ae2hMTKVmSp4Ztsr8KBKjLjx17H0eJqaRC3bR2iThM54A== + /@babel/plugin-transform-shorthand-properties/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-GFZS3c/MhX1OusqB1MZ1ct2xRzX5ppQh2JU1h2Pnfk88HtFTM+TWQqJNfwkmxtPQtb/s1tk87oENfXJlx7rSDw== + /@babel/plugin-transform-spread/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-skip-transparent-expression-wrappers': 7.12.1 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-vuLp8CP0BE18zVYjsEBZ5xoCecMK6LBMMxYzJnh01rxQRvhNhH1csMMmBfNo5tGpGO+NhdSNW2mzIvBu3K1fng== + /@babel/plugin-transform-sticky-regex/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-regex': 7.10.5 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-CiUgKQ3AGVk7kveIaPEET1jNDhZZEl1RPMWdTBE1799bdz++SwqDHStmxfCtDfBhQgCl38YRiSnrMuUMZIWSUQ== + /@babel/plugin-transform-template-literals/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-b4Zx3KHi+taXB1dVRBhVJtEPi9h1THCeKmae2qP0YdUHIFhVjtpqqNfxeVAa1xeHVhAy4SbHxEwx5cltAu5apw== + /@babel/plugin-transform-typeof-symbol/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-EPGgpGy+O5Kg5pJFNDKuxt9RdmTgj5sgrus2XVeMp/ZIbOESadgILUbm50SNpghOh3/6yrbsH+NB5+WJTmsA7Q== + /@babel/plugin-transform-unicode-escapes/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-I8gNHJLIc7GdApm7wkVnStWssPNbSRMPtgHdmH3sRM1zopz09UWPS4x5V4n1yz/MIWTVnJ9sp6IkuXdWM4w+2Q== + /@babel/plugin-transform-unicode-regex/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-create-regexp-features-plugin': 7.12.1_@babel+core@7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-SqH4ClNngh/zGwHZOOQMTD+e8FGWexILV+ePMyiDJttAWRh5dhDL8rcl5lSgU3Huiq6Zn6pWTMvdPAb21Dwdyg== + /@babel/preset-env/7.12.1_@babel+core@7.12.3: + dependencies: + '@babel/compat-data': 7.12.1 + '@babel/core': 7.12.3 + '@babel/helper-compilation-targets': 7.12.1_@babel+core@7.12.3 + '@babel/helper-module-imports': 7.12.1 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-validator-option': 7.12.1 + '@babel/plugin-proposal-async-generator-functions': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-class-properties': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-dynamic-import': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-export-namespace-from': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-json-strings': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-logical-assignment-operators': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-numeric-separator': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-object-rest-spread': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-optional-catch-binding': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-optional-chaining': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-private-methods': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-proposal-unicode-property-regex': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.12.3 + '@babel/plugin-syntax-class-properties': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.12.3 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.12.3 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.12.3 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.12.3 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.12.3 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.12.3 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.12.3 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.12.3 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.12.3 + '@babel/plugin-syntax-top-level-await': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-arrow-functions': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-async-to-generator': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-block-scoped-functions': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-block-scoping': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-classes': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-computed-properties': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-destructuring': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-dotall-regex': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-duplicate-keys': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-exponentiation-operator': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-for-of': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-function-name': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-literals': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-member-expression-literals': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-modules-amd': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-modules-commonjs': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-modules-systemjs': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-modules-umd': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-named-capturing-groups-regex': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-new-target': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-object-super': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-parameters': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-property-literals': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-regenerator': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-reserved-words': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-shorthand-properties': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-spread': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-sticky-regex': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-template-literals': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-typeof-symbol': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-unicode-escapes': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-unicode-regex': 7.12.1_@babel+core@7.12.3 + '@babel/preset-modules': 0.1.4_@babel+core@7.12.3 + '@babel/types': 7.12.1 + core-js-compat: 3.6.5 + semver: 5.7.1 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-H8kxXmtPaAGT7TyBvSSkoSTUK6RHh61So05SyEbpmr0MCZrsNYn7mGMzzeYoOUCdHzww61k8XBft2TaES+xPLg== + /@babel/preset-modules/0.1.4_@babel+core@7.12.3: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-plugin-utils': 7.10.4 + '@babel/plugin-proposal-unicode-property-regex': 7.12.1_@babel+core@7.12.3 + '@babel/plugin-transform-dotall-regex': 7.12.1_@babel+core@7.12.3 + '@babel/types': 7.12.1 + esutils: 2.0.3 + dev: true + peerDependencies: + '@babel/core': ^7.0.0-0 + resolution: + integrity: sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg== + /@babel/runtime/7.12.1: + dependencies: + regenerator-runtime: 0.13.7 + dev: true + resolution: + integrity: sha512-J5AIf3vPj3UwXaAzb5j1xM4WAQDX3EMgemF8rjCP3SoW09LfRKAXQKt6CoVYl230P6iWdRcBbnLDDdnqWxZSCA== /@babel/template/7.10.4: dependencies: '@babel/code-frame': 7.10.4 @@ -141,6 +988,20 @@ packages: dev: true resolution: integrity: sha512-EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ== + /@babel/traverse/7.12.1: + dependencies: + '@babel/code-frame': 7.10.4 + '@babel/generator': 7.12.1 + '@babel/helper-function-name': 7.10.4 + '@babel/helper-split-export-declaration': 7.11.0 + '@babel/parser': 7.12.3 + '@babel/types': 7.12.1 + debug: 4.3.0 + globals: 11.12.0 + lodash: 4.17.20 + dev: true + resolution: + integrity: sha512-MA3WPoRt1ZHo2ZmoGKNqi20YnPt0B1S0GTZEPhhd+hw2KGUzBlHuVunj6K4sNuK+reEvyiPwtp0cpaqLzJDmAw== /@babel/types/7.11.5: dependencies: '@babel/helper-validator-identifier': 7.10.4 @@ -180,6 +1041,38 @@ packages: dev: true resolution: integrity: sha512-qnKm5dIOyPGJ70kPZ5jiz0I9foVOic0j+cOzNDoo8KoCf6HjicIZ99UfO2OmE7vCYSKAAepEwJtNzpiiZAh9xw== + /@hapi/address/2.1.4: + deprecated: Moved to 'npm install @sideway/address' + dev: true + resolution: + integrity: sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ== + /@hapi/bourne/1.3.2: + deprecated: This version has been deprecated and is no longer supported or maintained + dev: true + resolution: + integrity: sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA== + /@hapi/hoek/8.5.1: + deprecated: This version has been deprecated and is no longer supported or maintained + dev: true + resolution: + integrity: sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow== + /@hapi/joi/15.1.1: + dependencies: + '@hapi/address': 2.1.4 + '@hapi/bourne': 1.3.2 + '@hapi/hoek': 8.5.1 + '@hapi/topo': 3.1.6 + deprecated: Switch to 'npm install joi' + dev: true + resolution: + integrity: sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ== + /@hapi/topo/3.1.6: + dependencies: + '@hapi/hoek': 8.5.1 + deprecated: This version has been deprecated and is no longer supported or maintained + dev: true + resolution: + integrity: sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ== /@iconify/iconify/2.0.0-rc.1: resolution: integrity: sha512-ji5H04VjYtR4seIEgVVLPxg1KRhrFquOiyfPyLVS6vYPkuqV6bcWdssi05YSmf/OAzG4E7Qsg80/bOKyd5tYTw== @@ -261,6 +1154,37 @@ packages: rollup: ^1.20.0 || ^2.0.0 resolution: integrity: sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw== + /@rollup/plugin-node-resolve/7.1.3_rollup@1.32.1: + dependencies: + '@rollup/pluginutils': 3.1.0_rollup@1.32.1 + '@types/resolve': 0.0.8 + builtin-modules: 3.1.0 + is-module: 1.0.0 + resolve: 1.18.1 + rollup: 1.32.1 + dev: true + engines: + node: '>= 8.0.0' + peerDependencies: + rollup: ^1.20.0||^2.0.0 + resolution: + integrity: sha512-RxtSL3XmdTAE2byxekYLnx+98kEUOrPHF/KRVjLH+DEIHy6kjIw7YINQzn+NXiH/NTrQLAwYs0GWB+csWygA9Q== + /@rollup/plugin-node-resolve/8.4.0: + dependencies: + '@rollup/pluginutils': 3.1.0 + '@types/resolve': 1.17.1 + builtin-modules: 3.1.0 + deep-freeze: 0.0.1 + deepmerge: 4.2.2 + is-module: 1.0.0 + resolve: 1.18.1 + dev: true + engines: + node: '>= 8.0.0' + peerDependencies: + rollup: ^1.20.0||^2.0.0 + resolution: + integrity: sha512-LFqKdRLn0ShtQyf6SBYO69bGE1upV6wUhBX0vFOUnLAyzx5cwp8svA0eHUnu8+YU57XOkrMtfG63QOpQx25pHQ== /@rollup/plugin-node-resolve/9.0.0_rollup@2.32.1: dependencies: '@rollup/pluginutils': 3.1.0_rollup@2.32.1 @@ -277,6 +1201,50 @@ packages: rollup: ^1.20.0||^2.0.0 resolution: integrity: sha512-gPz+utFHLRrd41WMP13Jq5mqqzHL3OXrfj3/MkSyB6UBIcuNt9j60GCbarzMzdf1VHFpOxfQh/ez7wyadLMqkg== + /@rollup/plugin-replace/2.3.4: + dependencies: + '@rollup/pluginutils': 3.1.0 + magic-string: 0.25.7 + dev: true + peerDependencies: + rollup: ^1.20.0 || ^2.0.0 + resolution: + integrity: sha512-waBhMzyAtjCL1GwZes2jaE9MjuQ/DQF2BatH3fRivUF3z0JBFrU0U6iBNC/4WR+2rLKhaAhPWDNPYp4mI6RqdQ== + /@rollup/plugin-replace/2.3.4_rollup@1.32.1: + dependencies: + '@rollup/pluginutils': 3.1.0_rollup@1.32.1 + magic-string: 0.25.7 + rollup: 1.32.1 + dev: true + peerDependencies: + rollup: ^1.20.0 || ^2.0.0 + resolution: + integrity: sha512-waBhMzyAtjCL1GwZes2jaE9MjuQ/DQF2BatH3fRivUF3z0JBFrU0U6iBNC/4WR+2rLKhaAhPWDNPYp4mI6RqdQ== + /@rollup/pluginutils/3.1.0: + dependencies: + '@types/estree': 0.0.39 + estree-walker: 1.0.1 + picomatch: 2.2.2 + dev: true + engines: + node: '>= 8.0.0' + peerDependencies: + rollup: ^1.20.0||^2.0.0 + resolution: + integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== + /@rollup/pluginutils/3.1.0_rollup@1.32.1: + dependencies: + '@types/estree': 0.0.39 + estree-walker: 1.0.1 + picomatch: 2.2.2 + rollup: 1.32.1 + dev: true + engines: + node: '>= 8.0.0' + peerDependencies: + rollup: ^1.20.0||^2.0.0 + resolution: + integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== /@rollup/pluginutils/3.1.0_rollup@2.32.1: dependencies: '@types/estree': 0.0.39 @@ -303,6 +1271,13 @@ packages: rollup: ^1.20.0||^2.0.0 resolution: integrity: sha512-b5QiJRye4JlSg29bKNEECoKbLuPXZkPEHSgEjjP1CJV1CPdDBybfYHfm6kyq8yK51h/Zsyl8OvWUrp0FUBukEQ== + /@surma/rollup-plugin-off-main-thread/1.4.1: + dependencies: + ejs: 2.7.4 + magic-string: 0.25.7 + dev: true + resolution: + integrity: sha512-ZPBWYQDdO4JZiTmTP3DABsHhIPA7bEJk9Znk7tZsrbPGanoGo8YxMv//WLx5Cvb+lRgS42+6yiOIYYHCKDmkpQ== /@types/accepts/1.3.5: dependencies: '@types/node': 14.10.0 @@ -415,6 +1390,10 @@ packages: dev: true resolution: integrity: sha512-SOIyrdADB4cq6eY1F+9iU48iIomFAPltu11LCvA9PKcyEwHadjCFzNVPotAR+oEJA0bCP4Xvvgy+vwu1ZjVh8g== + /@types/node/14.14.5: + dev: true + resolution: + integrity: sha512-H5Wn24s/ZOukBmDn03nnGTp18A60ny9AmCwnEcgJiTgSGsCO7k+NWP7zjCCbhlcnVCoI+co52dUAt9GMhOSULw== /@types/normalize-package-data/2.4.0: dev: true resolution: @@ -431,6 +1410,12 @@ packages: dev: true resolution: integrity: sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== + /@types/resolve/0.0.8: + dependencies: + '@types/node': 14.14.5 + dev: true + resolution: + integrity: sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ== /@types/resolve/1.17.1: dependencies: '@types/node': 14.10.0 @@ -870,6 +1855,13 @@ packages: hasBin: true resolution: integrity: sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w== + /acorn/7.4.1: + dev: true + engines: + node: '>=0.4.0' + hasBin: true + resolution: + integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== /ajv/6.12.4: dependencies: fast-deep-equal: 3.1.3 @@ -1005,6 +1997,43 @@ packages: eslint: '>= 4.12.1' resolution: integrity: sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== + /babel-extract-comments/1.0.0: + dependencies: + babylon: 6.18.0 + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ== + /babel-plugin-dynamic-import-node/2.3.3: + dependencies: + object.assign: 4.1.1 + dev: true + resolution: + integrity: sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== + /babel-plugin-syntax-object-rest-spread/6.13.0: + dev: true + resolution: + integrity: sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= + /babel-plugin-transform-object-rest-spread/6.26.0: + dependencies: + babel-plugin-syntax-object-rest-spread: 6.13.0 + babel-runtime: 6.26.0 + dev: true + resolution: + integrity: sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY= + /babel-runtime/6.26.0: + dependencies: + core-js: 2.6.11 + regenerator-runtime: 0.11.1 + dev: true + resolution: + integrity: sha1-llxwWGaOgrVde/4E/yM3vItWR/4= + /babylon/6.18.0: + dev: true + hasBin: true + resolution: + integrity: sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== /balanced-match/1.0.0: dev: true resolution: @@ -1058,6 +2087,18 @@ packages: hasBin: true resolution: integrity: sha512-HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw== + /browserslist/4.14.5: + dependencies: + caniuse-lite: 1.0.30001151 + electron-to-chromium: 1.3.584 + escalade: 3.1.1 + node-releases: 1.1.64 + dev: true + engines: + node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 + hasBin: true + resolution: + integrity: sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA== /buffer-from/1.1.1: dev: true resolution: @@ -1111,6 +2152,10 @@ packages: dev: true resolution: integrity: sha512-9f+r7BW8Qli917mU3j0fUaTweT3f3vnX/Lcs+1C73V+RADmFme+Ih0Br8vONQi3X0lseOe6ZHfsZLCA8MSjxUA== + /caniuse-lite/1.0.30001151: + dev: true + resolution: + integrity: sha512-Zh3sHqskX6mHNrqUerh+fkf0N72cMxrmflzje/JyVImfpknscMnkeJrlFGJcqTmaa0iszdYptGpWMJCRQDkBVw== /chalk/2.4.2: dependencies: ansi-styles: 3.2.1 @@ -1281,6 +2326,12 @@ packages: node: '>= 6' resolution: integrity: sha512-wl7PNrYWd2y5mp1OK/LhTlv8Ff4kQJQRXXAvF+uU/TPNiVJUxZLRYGj/B0y/lPGAVcSbJqH2Za/cvHmrPMC8mA== + /common-tags/1.8.0: + dev: true + engines: + node: '>=4.0.0' + resolution: + integrity: sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw== /commondir/1.0.1: dev: true resolution: @@ -1325,6 +2376,12 @@ packages: node: '>= 0.6' resolution: integrity: sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== + /convert-source-map/1.7.0: + dependencies: + safe-buffer: 5.1.2 + dev: true + resolution: + integrity: sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== /cookies/0.8.0: dependencies: depd: 2.0.0 @@ -1334,6 +2391,19 @@ packages: node: '>= 0.8' resolution: integrity: sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow== + /core-js-compat/3.6.5: + dependencies: + browserslist: 4.14.5 + semver: 7.0.0 + dev: true + resolution: + integrity: sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng== + /core-js/2.6.11: + deprecated: 'core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3.' + dev: true + requiresBuild: true + resolution: + integrity: sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg== /cosmiconfig/7.0.0: dependencies: '@types/parse-json': 4.0.0 @@ -1367,6 +2437,12 @@ packages: node: '>= 8' resolution: integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + /crypto-random-string/1.0.0: + dev: true + engines: + node: '>=4' + resolution: + integrity: sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4= /css-unit-converter/1.1.2: dev: true resolution: @@ -1439,6 +2515,10 @@ packages: dev: true resolution: integrity: sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= + /deep-freeze/0.0.1: + dev: true + resolution: + integrity: sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ= /deep-is/0.1.3: dev: true resolution: @@ -1569,10 +2649,21 @@ packages: dev: true resolution: integrity: sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + /ejs/2.7.4: + dev: true + engines: + node: '>=0.10.0' + requiresBuild: true + resolution: + integrity: sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA== /electron-to-chromium/1.3.564: dev: true resolution: integrity: sha512-fNaYN3EtKQWLQsrKXui8mzcryJXuA0LbCLoizeX6oayG2emBaS5MauKjCPAvc29NEY4FpLHIUWiP+Y0Bfrs5dg== + /electron-to-chromium/1.3.584: + dev: true + resolution: + integrity: sha512-NB3DzrTzJFhWkUp+nl2KtUtoFzrfGXTir2S+BU4tXGyXH9vlluPuFpE3pTKeH7+PY460tHLjKzh6K2+TWwW+Ww== /emoji-regex/7.0.3: dev: true resolution: @@ -1635,13 +2726,32 @@ packages: node: '>= 0.4' resolution: integrity: sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw== + /es-abstract/1.18.0-next.1: + dependencies: + es-to-primitive: 1.2.1 + function-bind: 1.1.1 + has: 1.0.3 + has-symbols: 1.0.1 + is-callable: 1.2.2 + is-negative-zero: 2.0.0 + is-regex: 1.1.1 + object-inspect: 1.8.0 + object-keys: 1.1.1 + object.assign: 4.1.1 + string.prototype.trimend: 1.0.2 + string.prototype.trimstart: 1.0.2 + dev: true + engines: + node: '>= 0.4' + resolution: + integrity: sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA== /es-module-lexer/0.3.25: dev: true resolution: integrity: sha512-H9VoFD5H9zEfiOX2LeTWDwMvAbLqcAyA2PIb40TOAvGpScOjit02oTGWgIh+M0rx2eJOKyJVM9wtpKFVgnyC3A== /es-to-primitive/1.2.1: dependencies: - is-callable: 1.2.1 + is-callable: 1.2.2 is-date-object: 1.0.2 is-symbol: 1.0.3 dev: true @@ -1661,6 +2771,12 @@ packages: node: '>=6' resolution: integrity: sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ== + /escalade/3.1.1: + dev: true + engines: + node: '>=6' + resolution: + integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== /escape-html/1.0.3: dev: true resolution: @@ -2142,12 +3258,22 @@ packages: dev: true resolution: integrity: sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ== + /gensync/1.0.0-beta.2: + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== /get-caller-file/2.0.5: dev: true engines: node: 6.* || 8.* || >= 10.* resolution: integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + /get-own-enumerable-property-symbols/3.0.2: + dev: true + resolution: + integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== /get-stream/5.2.0: dependencies: pump: 3.0.0 @@ -2434,6 +3560,18 @@ packages: node: '>= 0.4' resolution: integrity: sha512-wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg== + /is-callable/1.2.2: + dev: true + engines: + node: '>= 0.4' + resolution: + integrity: sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA== + /is-core-module/2.0.0: + dependencies: + has: 1.0.3 + dev: true + resolution: + integrity: sha512-jq1AH6C8MuteOoBPwkxHafmByhL9j5q4OaPGdbuD+ZtQJVzH+i6E3BJDQcBA09k57i2Hh2yQbEG8yObZ0jdlWw== /is-date-object/1.0.2: dev: true engines: @@ -2489,12 +3627,24 @@ packages: dev: true resolution: integrity: sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= + /is-negative-zero/2.0.0: + dev: true + engines: + node: '>= 0.4' + resolution: + integrity: sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE= /is-number/7.0.0: dev: true engines: node: '>=0.12.0' resolution: integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + /is-obj/1.0.1: + dev: true + engines: + node: '>=0.10.0' + resolution: + integrity: sha1-PkcprB9f3gJc19g6iW2rn09n2w8= /is-reference/1.2.1: dependencies: '@types/estree': 0.0.45 @@ -2509,6 +3659,12 @@ packages: node: '>= 0.4' resolution: integrity: sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg== + /is-regexp/1.0.0: + dev: true + engines: + node: '>=0.10.0' + resolution: + integrity: sha1-/S2INUXEa6xaYz57mgnof6LLUGk= /is-stream/2.0.0: dev: true engines: @@ -2555,6 +3711,15 @@ packages: dev: true resolution: integrity: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + /jest-worker/24.9.0: + dependencies: + merge-stream: 2.0.0 + supports-color: 6.1.0 + dev: true + engines: + node: '>= 6' + resolution: + integrity: sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw== /jest-worker/26.6.1: dependencies: '@types/node': 14.10.0 @@ -2577,6 +3742,11 @@ packages: hasBin: true resolution: integrity: sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== + /jsesc/0.5.0: + dev: true + hasBin: true + resolution: + integrity: sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= /jsesc/2.5.2: dev: true engines: @@ -2603,6 +3773,15 @@ packages: hasBin: true resolution: integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + /json5/2.1.3: + dependencies: + minimist: 1.2.5 + dev: true + engines: + node: '>=6' + hasBin: true + resolution: + integrity: sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== /jsonfile/4.0.0: dev: true optionalDependencies: @@ -2770,6 +3949,10 @@ packages: node: '>=8' resolution: integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + /lodash._reinterpolate/3.0.0: + dev: true + resolution: + integrity: sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= /lodash.camelcase/4.3.0: dev: true resolution: @@ -2778,6 +3961,19 @@ packages: dev: true resolution: integrity: sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= + /lodash.template/4.5.0: + dependencies: + lodash._reinterpolate: 3.0.0 + lodash.templatesettings: 4.2.0 + dev: true + resolution: + integrity: sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== + /lodash.templatesettings/4.2.0: + dependencies: + lodash._reinterpolate: 3.0.0 + dev: true + resolution: + integrity: sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== /lodash.toarray/4.4.0: dev: true resolution: @@ -2935,6 +4131,10 @@ packages: dev: true resolution: integrity: sha512-DD5vebQLg8jLCOzwupn954fbIiZht05DAZs0k2u8NStSe6h9XdsuIQL8hSRKYiU8WUQRznmSDrKGbv3ObOmC7g== + /node-releases/1.1.64: + dev: true + resolution: + integrity: sha512-Iec8O9166/x2HRMJyLLLWkd0sFFLrFNy+Xf+JQfSQsdBJzPcHpNl3JQ9gD4j+aJxmCa25jNsIbM4bmACtSbkSg== /normalize-package-data/2.5.0: dependencies: hosted-git-info: 2.8.8 @@ -3005,6 +4205,17 @@ packages: node: '>= 0.4' resolution: integrity: sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== + /object.assign/4.1.1: + dependencies: + define-properties: 1.1.3 + es-abstract: 1.18.0-next.1 + has-symbols: 1.0.1 + object-keys: 1.1.1 + dev: true + engines: + node: '>= 0.4' + resolution: + integrity: sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA== /object.values/1.1.1: dependencies: define-properties: 1.1.3 @@ -3402,6 +4613,12 @@ packages: node: '>= 0.8.0' resolution: integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + /pretty-bytes/5.4.1: + dev: true + engines: + node: '>=6' + resolution: + integrity: sha512-s1Iam6Gwz3JI5Hweaz4GoCD1WUNUIyzePFy5+Js2hjwGVt2Z79wNN+ZKOZ2vB6C+Xs6njyB84Z1IthQg8d9LxA== /pretty-hrtime/1.0.3: dev: true engines: @@ -3510,6 +4727,32 @@ packages: dev: true resolution: integrity: sha512-fDnlZ+AybAS3C7Q9xDq5y8A2z+lT63zLbynew/lur/IR24OQF5x98tfNwf79mzEdfywZ0a2wpM860FhFfMxZlA== + /regenerate-unicode-properties/8.2.0: + dependencies: + regenerate: 1.4.1 + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== + /regenerate/1.4.1: + dev: true + resolution: + integrity: sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A== + /regenerator-runtime/0.11.1: + dev: true + resolution: + integrity: sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== + /regenerator-runtime/0.13.7: + dev: true + resolution: + integrity: sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew== + /regenerator-transform/0.14.5: + dependencies: + '@babel/runtime': 7.12.1 + dev: true + resolution: + integrity: sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== /regexp-tree/0.1.21: dev: true hasBin: true @@ -3521,6 +4764,30 @@ packages: node: '>=8' resolution: integrity: sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== + /regexpu-core/4.7.1: + dependencies: + regenerate: 1.4.1 + regenerate-unicode-properties: 8.2.0 + regjsgen: 0.5.2 + regjsparser: 0.6.4 + unicode-match-property-ecmascript: 1.0.4 + unicode-match-property-value-ecmascript: 1.2.0 + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ== + /regjsgen/0.5.2: + dev: true + resolution: + integrity: sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== + /regjsparser/0.6.4: + dependencies: + jsesc: 0.5.0 + dev: true + hasBin: true + resolution: + integrity: sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw== /require-directory/2.1.1: dev: true engines: @@ -3566,6 +4833,13 @@ packages: dev: true resolution: integrity: sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== + /resolve/1.18.1: + dependencies: + is-core-module: 2.0.0 + path-parse: 1.0.6 + dev: true + resolution: + integrity: sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA== /restore-cursor/3.1.0: dependencies: onetime: 5.1.2 @@ -3589,6 +4863,19 @@ packages: hasBin: true resolution: integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== + /rollup-plugin-babel/4.4.0_@babel+core@7.12.3+rollup@1.32.1: + dependencies: + '@babel/core': 7.12.3 + '@babel/helper-module-imports': 7.12.1 + rollup: 1.32.1 + rollup-pluginutils: 2.8.2 + deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-babel. + dev: true + peerDependencies: + '@babel/core': 7 || ^7.0.0-rc.2 + rollup: '>=0.60.0 <3' + resolution: + integrity: sha512-Lek/TYp1+7g7I+uMfJnnSJ7YWoD58ajo6Oarhlex7lvUce+RCKRuGRSgztDO3/MF/PuGKmUL5iTHKf208UNszw== /rollup-plugin-dynamic-import-variables/1.1.0_rollup@2.32.1: dependencies: '@rollup/pluginutils': 3.1.0_rollup@2.32.1 @@ -3609,6 +4896,30 @@ packages: node: '>= 12' resolution: integrity: sha512-9FHX1OLyDhHx8xsfCp6nxKo5A5CTTsEohVEjRqh641nagbAfwxIofmYc7bnjgr2x21VN4vFOdjBLql9swKYWsA== + /rollup-plugin-terser/5.3.1_rollup@1.32.1: + dependencies: + '@babel/code-frame': 7.10.4 + jest-worker: 24.9.0 + rollup: 1.32.1 + rollup-pluginutils: 2.8.2 + serialize-javascript: 4.0.0 + terser: 4.8.0 + dev: true + peerDependencies: + rollup: '>=0.66.0 <3' + resolution: + integrity: sha512-1pkwkervMJQGFYvM9nscrUoncPwiKR/K+bHdjv6PFgRo3cgPHoRT83y2Aa3GvINj4539S15t/tpFPb775TDs6w== + /rollup-plugin-terser/6.1.0: + dependencies: + '@babel/code-frame': 7.10.4 + jest-worker: 26.6.1 + serialize-javascript: 3.1.0 + terser: 4.8.0 + dev: true + peerDependencies: + rollup: ^2.0.0 + resolution: + integrity: sha512-4fB3M9nuoWxrwm39habpd4hvrbrde2W2GG4zEGPQg1YITNkM3Tqur5jSuXlWNzbv/2aMLJ+dZJaySc3GCD8oDw== /rollup-plugin-terser/7.0.2_rollup@2.32.1: dependencies: '@babel/code-frame': 7.10.4 @@ -3640,12 +4951,31 @@ packages: rollup: ^1.9.2 || ^2.0.0 resolution: integrity: sha512-Td36kmB4iz10xqI/gJFCv2xZZ21fY6E7AGVFOT3PWIDkM1BeBrfuzeNh1tFIkD6fHtjQhppnedkYFaIlGHuEvA== + /rollup-plugin-workbox/5.2.1: + dependencies: + '@rollup/plugin-node-resolve': 8.4.0 + '@rollup/plugin-replace': 2.3.4 + pretty-bytes: 5.4.1 + rollup-plugin-terser: 6.1.0 + workbox-build: 5.1.4 + dev: true + resolution: + integrity: sha512-C+yIoYkZ3VUcJTZpOH2zbaarHCwy8eQod987eS8hXE6qwfMLDqV3RkLYNplnO0PcMi+3JgZPiE6d1zuXgwkO7Q== /rollup-pluginutils/2.8.2: dependencies: estree-walker: 0.6.1 dev: true resolution: integrity: sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ== + /rollup/1.32.1: + dependencies: + '@types/estree': 0.0.45 + '@types/node': 14.14.5 + acorn: 7.4.1 + dev: true + hasBin: true + resolution: + integrity: sha512-/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A== /rollup/2.32.1: dev: true engines: @@ -3689,6 +5019,11 @@ packages: hasBin: true resolution: integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + /semver/7.0.0: + dev: true + hasBin: true + resolution: + integrity: sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== /semver/7.3.2: dev: true engines: @@ -3696,6 +5031,12 @@ packages: hasBin: true resolution: integrity: sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== + /serialize-javascript/3.1.0: + dependencies: + randombytes: 2.1.0 + dev: true + resolution: + integrity: sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg== /serialize-javascript/4.0.0: dependencies: randombytes: 2.1.0 @@ -3765,6 +5106,10 @@ packages: dev: true resolution: integrity: sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== + /source-map-url/0.4.0: + dev: true + resolution: + integrity: sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= /source-map/0.5.7: dev: true engines: @@ -3849,6 +5194,13 @@ packages: dev: true resolution: integrity: sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== + /string.prototype.trimend/1.0.2: + dependencies: + define-properties: 1.1.3 + es-abstract: 1.18.0-next.1 + dev: true + resolution: + integrity: sha512-8oAG/hi14Z4nOVP0z6mdiVZ/wqjDtWSLygMigTzAb+7aPEDTleeFf+WrF+alzecxIRkckkJVn+dTlwzJXORATw== /string.prototype.trimstart/1.0.1: dependencies: define-properties: 1.1.3 @@ -3856,6 +5208,23 @@ packages: dev: true resolution: integrity: sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== + /string.prototype.trimstart/1.0.2: + dependencies: + define-properties: 1.1.3 + es-abstract: 1.18.0-next.1 + dev: true + resolution: + integrity: sha512-7F6CdBTl5zyu30BJFdzSTlSlLPwODC23Od+iLoVH8X6+3fvDPPuBVVj9iaB1GOsSTSIgVfsfm27R2FGrAPznWg== + /stringify-object/3.3.0: + dependencies: + get-own-enumerable-property-symbols: 3.0.2 + is-obj: 1.0.1 + is-regexp: 1.0.0 + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== /strip-ansi/5.2.0: dependencies: ansi-regex: 4.1.0 @@ -3878,6 +5247,15 @@ packages: node: '>=4' resolution: integrity: sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + /strip-comments/1.0.2: + dependencies: + babel-extract-comments: 1.0.0 + babel-plugin-transform-object-rest-spread: 6.26.0 + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw== /strip-final-newline/2.0.0: dev: true engines: @@ -3955,6 +5333,33 @@ packages: hasBin: true resolution: integrity: sha512-nY8WYM/RLPqGsPEGEV2z63riyQPcHYZUJpAwdyBzVpxQHOHqHE+F/fvbCeXhdF1+TA5l72vSkZrtYCB9hRcwkQ== + /temp-dir/1.0.0: + dev: true + engines: + node: '>=4' + resolution: + integrity: sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= + /tempy/0.3.0: + dependencies: + temp-dir: 1.0.0 + type-fest: 0.3.1 + unique-string: 1.0.0 + dev: true + engines: + node: '>=8' + resolution: + integrity: sha512-WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ== + /terser/4.8.0: + dependencies: + commander: 2.20.3 + source-map: 0.6.1 + source-map-support: 0.5.19 + dev: true + engines: + node: '>=6.0.0' + hasBin: true + resolution: + integrity: sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== /terser/5.3.8: dependencies: commander: 2.20.3 @@ -4041,6 +5446,12 @@ packages: node: '>= 0.8.0' resolution: integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + /type-fest/0.3.1: + dev: true + engines: + node: '>=6' + resolution: + integrity: sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== /type-fest/0.6.0: dev: true engines: @@ -4076,10 +5487,45 @@ packages: hasBin: true resolution: integrity: sha512-ywmr/VrTVCmNTJ6iV2LwIrfG1P+lv6luD8sUJs+2eI9NLGigaN+nUQc13iHqisq7bra9lnmUSYqbJvegraBOPQ== + /unicode-canonical-property-names-ecmascript/1.0.4: + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== + /unicode-match-property-ecmascript/1.0.4: + dependencies: + unicode-canonical-property-names-ecmascript: 1.0.4 + unicode-property-aliases-ecmascript: 1.1.0 + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== + /unicode-match-property-value-ecmascript/1.2.0: + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== + /unicode-property-aliases-ecmascript/1.1.0: + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== /uniq/1.0.1: dev: true resolution: integrity: sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= + /unique-string/1.0.0: + dependencies: + crypto-random-string: 1.0.0 + dev: true + engines: + node: '>=4' + resolution: + integrity: sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo= /universalify/0.1.2: dev: true engines: @@ -4092,6 +5538,12 @@ packages: node: '>= 10.0.0' resolution: integrity: sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== + /upath/1.2.0: + dev: true + engines: + node: '>=4' + resolution: + integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== /uri-js/4.4.0: dependencies: punycode: 2.1.1 @@ -4137,6 +5589,14 @@ packages: node: '>= 12' resolution: integrity: sha512-T4btagiqi90FchfcVwKFASgK6Dj3QotEL8eZBNOE6YcxQVPWbkZ8I3UgbNbkiGy43pmsvlLkXOAEgEPiSe/q2w== + /vite-plugin-pwa/0.1.3: + dependencies: + debug: 4.3.0 + fast-glob: 3.2.4 + rollup-plugin-workbox: 5.2.1 + dev: true + resolution: + integrity: sha512-WZ1zMQyXpZVprX69zD8KFYb0mcVKtacktXYfSNVPQl3mG1Ucsm6tl398eIZOshVEzhlRvUDH8xcLAB26+2sDeg== /vite-plugin-voie/0.4.0_c84bdc0603573c924810a81fe0ed9090: dependencies: fast-glob: 3.2.4 @@ -4310,6 +5770,134 @@ packages: node: '>=0.10.0' resolution: integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + /workbox-background-sync/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-AH6x5pYq4vwQvfRDWH+vfOePfPIYQ00nCEB7dJRU1e0n9+9HMRyvI63FlDvtFT2AvXVRsXvUt7DNMEToyJLpSA== + /workbox-broadcast-update/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-HTyTWkqXvHRuqY73XrwvXPud/FN6x3ROzkfFPsRjtw/kGZuZkPzfeH531qdUGfhtwjmtO/ZzXcWErqVzJNdXaA== + /workbox-build/5.1.4: + dependencies: + '@babel/core': 7.12.3 + '@babel/preset-env': 7.12.1_@babel+core@7.12.3 + '@babel/runtime': 7.12.1 + '@hapi/joi': 15.1.1 + '@rollup/plugin-node-resolve': 7.1.3_rollup@1.32.1 + '@rollup/plugin-replace': 2.3.4_rollup@1.32.1 + '@surma/rollup-plugin-off-main-thread': 1.4.1 + common-tags: 1.8.0 + fast-json-stable-stringify: 2.1.0 + fs-extra: 8.1.0 + glob: 7.1.6 + lodash.template: 4.5.0 + pretty-bytes: 5.4.1 + rollup: 1.32.1 + rollup-plugin-babel: 4.4.0_@babel+core@7.12.3+rollup@1.32.1 + rollup-plugin-terser: 5.3.1_rollup@1.32.1 + source-map: 0.7.3 + source-map-url: 0.4.0 + stringify-object: 3.3.0 + strip-comments: 1.0.2 + tempy: 0.3.0 + upath: 1.2.0 + workbox-background-sync: 5.1.4 + workbox-broadcast-update: 5.1.4 + workbox-cacheable-response: 5.1.4 + workbox-core: 5.1.4 + workbox-expiration: 5.1.4 + workbox-google-analytics: 5.1.4 + workbox-navigation-preload: 5.1.4 + workbox-precaching: 5.1.4 + workbox-range-requests: 5.1.4 + workbox-routing: 5.1.4 + workbox-strategies: 5.1.4 + workbox-streams: 5.1.4 + workbox-sw: 5.1.4 + workbox-window: 5.1.4 + dev: true + engines: + node: '>=8.0.0' + resolution: + integrity: sha512-xUcZn6SYU8usjOlfLb9Y2/f86Gdo+fy1fXgH8tJHjxgpo53VVsqRX0lUDw8/JuyzNmXuo8vXX14pXX2oIm9Bow== + /workbox-cacheable-response/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-0bfvMZs0Of1S5cdswfQK0BXt6ulU5kVD4lwer2CeI+03czHprXR3V4Y8lPTooamn7eHP8Iywi5QjyAMjw0qauA== + /workbox-core/5.1.4: + dev: true + resolution: + integrity: sha512-+4iRQan/1D8I81nR2L5vcbaaFskZC2CL17TLbvWVzQ4qiF/ytOGF6XeV54pVxAvKUtkLANhk8TyIUMtiMw2oDg== + /workbox-expiration/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-oDO/5iC65h2Eq7jctAv858W2+CeRW5e0jZBMNRXpzp0ZPvuT6GblUiHnAsC5W5lANs1QS9atVOm4ifrBiYY7AQ== + /workbox-google-analytics/5.1.4: + dependencies: + workbox-background-sync: 5.1.4 + workbox-core: 5.1.4 + workbox-routing: 5.1.4 + workbox-strategies: 5.1.4 + dev: true + resolution: + integrity: sha512-0IFhKoEVrreHpKgcOoddV+oIaVXBFKXUzJVBI+nb0bxmcwYuZMdteBTp8AEDJacENtc9xbR0wa9RDCnYsCDLjA== + /workbox-navigation-preload/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-Wf03osvK0wTflAfKXba//QmWC5BIaIZARU03JIhAEO2wSB2BDROWI8Q/zmianf54kdV7e1eLaIEZhth4K4MyfQ== + /workbox-precaching/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-gCIFrBXmVQLFwvAzuGLCmkUYGVhBb7D1k/IL7pUJUO5xacjLcFUaLnnsoVepBGAiKw34HU1y/YuqvTKim9qAZA== + /workbox-range-requests/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-1HSujLjgTeoxHrMR2muDW2dKdxqCGMc1KbeyGcmjZZAizJTFwu7CWLDmLv6O1ceWYrhfuLFJO+umYMddk2XMhw== + /workbox-routing/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-8ljknRfqE1vEQtnMtzfksL+UXO822jJlHTIR7+BtJuxQ17+WPZfsHqvk1ynR/v0EHik4x2+826Hkwpgh4GKDCw== + /workbox-strategies/5.1.4: + dependencies: + workbox-core: 5.1.4 + workbox-routing: 5.1.4 + dev: true + resolution: + integrity: sha512-VVS57LpaJTdjW3RgZvPwX0NlhNmscR7OQ9bP+N/34cYMDzXLyA6kqWffP6QKXSkca1OFo/v6v7hW7zrrguo6EA== + /workbox-streams/5.1.4: + dependencies: + workbox-core: 5.1.4 + workbox-routing: 5.1.4 + dev: true + resolution: + integrity: sha512-xU8yuF1hI/XcVhJUAfbQLa1guQUhdLMPQJkdT0kn6HP5CwiPOGiXnSFq80rAG4b1kJUChQQIGPrq439FQUNVrw== + /workbox-sw/5.1.4: + dev: true + resolution: + integrity: sha512-9xKnKw95aXwSNc8kk8gki4HU0g0W6KXu+xks7wFuC7h0sembFnTrKtckqZxbSod41TDaGh+gWUA5IRXrL0ECRA== + /workbox-window/5.1.4: + dependencies: + workbox-core: 5.1.4 + dev: true + resolution: + integrity: sha512-vXQtgTeMCUq/4pBWMfQX8Ee7N2wVC4Q7XYFqLnfbXJ2hqew/cU1uMTD2KqGEgEpE4/30luxIxgE+LkIa8glBYw== /wrap-ansi/6.2.0: dependencies: ansi-styles: 4.2.1 @@ -4419,6 +6007,7 @@ specifiers: vite: ^1.0.0-rc.8 vite-plugin-components: ^0.2.14 vite-plugin-purge-icons: ^0.4.4 + vite-plugin-pwa: ^0.1.3 vite-plugin-voie: ^0.4.0 voie-pages: ^0.4.0 vue: ^3.0.2 diff --git a/public/pwa-192x192.png b/public/pwa-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..aaf18fa1e43c2f21f3047f5101e4bf2b3e7d3735 GIT binary patch literal 6414 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 MQrB0jzHb}xKTz~Dp#T5? literal 0 HcmV?d00001 diff --git a/public/pwa-512x512.png b/public/pwa-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..d83f8a9dc874e3b6f61c3c742a21288cd099b163 GIT binary patch literal 15039 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 Lxl`3AuEhNx;oq&b literal 0 HcmV?d00001 diff --git a/public/safari-pinned-tab.svg b/public/safari-pinned-tab.svg new file mode 100644 index 0000000..f05d4d9 --- /dev/null +++ b/public/safari-pinned-tab.svg @@ -0,0 +1,41 @@ + + + + +Created by potrace 1.11, written by Peter Selinger 2001-2013 + + + + + diff --git a/vite.config.ts b/vite.config.ts index 24d3284..cab9155 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -3,6 +3,7 @@ import { UserConfig } from 'vite' import Voie from 'vite-plugin-voie' import PurgeIcons from 'vite-plugin-purge-icons' import ViteComponents from 'vite-plugin-components' +import { VitePWA } from 'vite-plugin-pwa' const alias = { '/~/': path.resolve(__dirname, 'src'), @@ -26,6 +27,24 @@ const config: UserConfig = { alias, }), PurgeIcons(), + VitePWA({ + manifest: { + name: 'Vitesse', + short_name: 'Vitesse', + icons: [ + { + src: '/pwa-192x192.png', + sizes: '192x192', + type: 'image/png', + }, + { + src: '/pwa-512x512.png', + sizes: '512x512', + type: 'image/png', + }, + ], + }, + }), ], }