From 4a0b8cd4804e7c4985607afb8e250d9c52edee66 Mon Sep 17 00:00:00 2001 From: Eugene Serb <46799701+eugene-serb@users.noreply.github.com> Date: Wed, 10 Aug 2022 16:59:32 +0300 Subject: [PATCH 01/22] - added new app section manual for use through gamepad with button press. - rename old manual-file to custom, that need to use app through form. - added custom redirect file. - updated meta keywords. - updated sitemaps. - updated dependencies. - updated var names. - clean template in app-custom. --- package-lock.json | 36 +++--- public/about.html | 2 +- public/custom.html | 11 ++ public/donate.html | 2 +- public/faq.html | 2 +- public/index.html | 2 +- public/sitemap-internal.xml | 8 +- public/sitemap.xml | 2 +- src/components/AppCustom.vue | 109 +++++++++++++++++ src/components/AppDiagnostic.vue | 6 +- src/components/AppManual.vue | 192 +++++++++++++++++++++--------- src/components/NavigationList.vue | 3 +- src/router/index.ts | 5 + src/views/CustomView.vue | 16 +++ 14 files changed, 311 insertions(+), 85 deletions(-) create mode 100644 public/custom.html create mode 100644 src/components/AppCustom.vue create mode 100644 src/views/CustomView.vue diff --git a/package-lock.json b/package-lock.json index 537de52..b3c89bd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4039,9 +4039,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001374", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001374.tgz", - "integrity": "sha512-mWvzatRx3w+j5wx/mpFN5v5twlPrabG8NqX2c6e45LCpymdoGqNvRkRutFUqpRTXKFQFNQJasvK0YT7suW6/Hw==", + "version": "1.0.30001375", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001375.tgz", + "integrity": "sha512-kWIMkNzLYxSvnjy0hL8w1NOaWNr2rn39RTAVyIwcw8juu60bZDWiF1/loOYANzjtJmy6qPgNmn38ro5Pygagdw==", "dev": true, "funding": [ { @@ -5186,9 +5186,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.212", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.212.tgz", - "integrity": "sha512-LjQUg1SpLj2GfyaPDVBUHdhmlDU1vDB4f0mJWSGkISoXQrn5/lH3ECPCuo2Bkvf6Y30wO+b69te+rZK/llZmjg==", + "version": "1.4.213", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.213.tgz", + "integrity": "sha512-+3DbGHGOCHTVB/Ms63bGqbyC1b8y7Fk86+7ltssB8NQrZtSCvZG6eooSl9U2Q0yw++fL2DpHKOdTU0NVEkFObg==", "dev": true }, "node_modules/emoji-regex": { @@ -9708,9 +9708,9 @@ "dev": true }, "node_modules/sass": { - "version": "1.54.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.3.tgz", - "integrity": "sha512-fLodey5Qd41Pxp/Tk7Al97sViYwF/TazRc5t6E65O7JOk4XF8pzwIW7CvCxYVOfJFFI/1x5+elDyBIixrp+zrw==", + "version": "1.54.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.4.tgz", + "integrity": "sha512-3tmF16yvnBwtlPrNBHw/H907j8MlOX8aTBnlNX1yrKx24RKcJGPyLhFUwkoKBKesR3unP93/2z14Ll8NicwQUA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -14973,9 +14973,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001374", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001374.tgz", - "integrity": "sha512-mWvzatRx3w+j5wx/mpFN5v5twlPrabG8NqX2c6e45LCpymdoGqNvRkRutFUqpRTXKFQFNQJasvK0YT7suW6/Hw==", + "version": "1.0.30001375", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001375.tgz", + "integrity": "sha512-kWIMkNzLYxSvnjy0hL8w1NOaWNr2rn39RTAVyIwcw8juu60bZDWiF1/loOYANzjtJmy6qPgNmn38ro5Pygagdw==", "dev": true }, "case-sensitive-paths-webpack-plugin": { @@ -15802,9 +15802,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.4.212", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.212.tgz", - "integrity": "sha512-LjQUg1SpLj2GfyaPDVBUHdhmlDU1vDB4f0mJWSGkISoXQrn5/lH3ECPCuo2Bkvf6Y30wO+b69te+rZK/llZmjg==", + "version": "1.4.213", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.213.tgz", + "integrity": "sha512-+3DbGHGOCHTVB/Ms63bGqbyC1b8y7Fk86+7ltssB8NQrZtSCvZG6eooSl9U2Q0yw++fL2DpHKOdTU0NVEkFObg==", "dev": true }, "emoji-regex": { @@ -19121,9 +19121,9 @@ "dev": true }, "sass": { - "version": "1.54.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.3.tgz", - "integrity": "sha512-fLodey5Qd41Pxp/Tk7Al97sViYwF/TazRc5t6E65O7JOk4XF8pzwIW7CvCxYVOfJFFI/1x5+elDyBIixrp+zrw==", + "version": "1.54.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.4.tgz", + "integrity": "sha512-3tmF16yvnBwtlPrNBHw/H907j8MlOX8aTBnlNX1yrKx24RKcJGPyLhFUwkoKBKesR3unP93/2z14Ll8NicwQUA==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/public/about.html b/public/about.html index cb68e05..9e0b169 100644 --- a/public/about.html +++ b/public/about.html @@ -16,7 +16,7 @@ - + diff --git a/public/custom.html b/public/custom.html new file mode 100644 index 0000000..b601ca6 --- /dev/null +++ b/public/custom.html @@ -0,0 +1,11 @@ + + + + Wavelovers – Redirect + + + + + + + diff --git a/public/donate.html b/public/donate.html index 9618af9..bea60b1 100644 --- a/public/donate.html +++ b/public/donate.html @@ -16,7 +16,7 @@ - + diff --git a/public/faq.html b/public/faq.html index 7f00e39..a9d98b2 100644 --- a/public/faq.html +++ b/public/faq.html @@ -16,7 +16,7 @@ - + diff --git a/public/index.html b/public/index.html index 31e074b..d114a2e 100644 --- a/public/index.html +++ b/public/index.html @@ -16,7 +16,7 @@ - + diff --git a/public/sitemap-internal.xml b/public/sitemap-internal.xml index 1ed3c3d..04b623e 100644 --- a/public/sitemap-internal.xml +++ b/public/sitemap-internal.xml @@ -2,25 +2,25 @@ https://wavelovers.ru/ - 2022-08-09 + 2022-08-10 weekly 1.0 https://wavelovers.ru/faq.html - 2022-08-09 + 2022-08-10 weekly 1.0 https://wavelovers.ru/about.html - 2022-08-09 + 2022-08-10 weekly 1.0 https://wavelovers.ru/donate.html - 2022-08-09 + 2022-08-10 weekly 1.0 diff --git a/public/sitemap.xml b/public/sitemap.xml index 2659deb..5fdf0aa 100644 --- a/public/sitemap.xml +++ b/public/sitemap.xml @@ -2,7 +2,7 @@ https://wavelovers.ru/sitemap-internal.xml - 2022-08-09 + 2022-08-10 diff --git a/src/components/AppCustom.vue b/src/components/AppCustom.vue new file mode 100644 index 0000000..aaafb73 --- /dev/null +++ b/src/components/AppCustom.vue @@ -0,0 +1,109 @@ + + + + + + diff --git a/src/components/AppDiagnostic.vue b/src/components/AppDiagnostic.vue index b54408a..6cf0cef 100644 --- a/src/components/AppDiagnostic.vue +++ b/src/components/AppDiagnostic.vue @@ -30,17 +30,17 @@ const result: Vibrator[] = store.getters.gamepads as Vibrator[]; result.forEach((item) => { item.interval = timestamp; - }) + }); return result; }, }, methods: { - updateTimestamp: function (): void { + updateComputed: function (): void { this.timestamp = Date.now(); }, }, mounted() { - this.interval = setInterval(this.updateTimestamp, 1); + this.interval = setInterval(this.updateComputed, 1); }, unmounted() { clearInterval(this.interval); diff --git a/src/components/AppManual.vue b/src/components/AppManual.vue index c422105..74ad772 100644 --- a/src/components/AppManual.vue +++ b/src/components/AppManual.vue @@ -1,79 +1,167 @@  diff --git a/src/components/NavigationList.vue b/src/components/NavigationList.vue index 1e7220a..238a365 100644 --- a/src/components/NavigationList.vue +++ b/src/components/NavigationList.vue @@ -1,7 +1,8 @@  diff --git a/src/router/index.ts b/src/router/index.ts index 26cf6a2..b25b1b4 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -7,6 +7,11 @@ const routes: Array = [ name: 'patterns-view', component: PatternsView, }, + { + path: '/custom', + name: 'custom-view', + component: () => import('@/views/CustomView.vue'), + }, { path: '/manual', name: 'manual-view', diff --git a/src/views/CustomView.vue b/src/views/CustomView.vue new file mode 100644 index 0000000..8e918b9 --- /dev/null +++ b/src/views/CustomView.vue @@ -0,0 +1,16 @@ + + + + From d340a6e81ddbd1d6c57c87a46cd8342e2bf4fd8b Mon Sep 17 00:00:00 2001 From: Eugene Serb <46799701+eugene-serb@users.noreply.github.com> Date: Wed, 10 Aug 2022 17:46:21 +0300 Subject: [PATCH 02/22] - added vibrate-function that is delegate playEffect in Vibrator and IVibrator. - old-vibrate-function now is loop-function. - added token readonly in IGamepad. - updated dependencies. --- package-lock.json | 24 ++++++++++++------------ src/models/IGamepad.ts | 2 +- src/models/IVibrator.ts | 5 +++-- src/models/Vibrator.ts | 21 +++++++++++++-------- src/store/index.ts | 9 +++------ src/store/modules/MGamepads.ts | 10 +++++++++- 6 files changed, 41 insertions(+), 30 deletions(-) diff --git a/package-lock.json b/package-lock.json index b3c89bd..fea7bde 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4322,9 +4322,9 @@ "dev": true }, "node_modules/colord": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.2.tgz", - "integrity": "sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ==", + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", "dev": true }, "node_modules/colorette": { @@ -11490,9 +11490,9 @@ } }, "node_modules/webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.10.0.tgz", + "integrity": "sha512-7dezwAs+k6yXVFZ+MaL8VnE+APobiO3zvpp3rBHe/HmWQ+avwh0Q3d0xxacOiBybZZ3syTZw9HXzpa3YNbAZDQ==", "dev": true, "dependencies": { "@types/bonjour": "^3.5.9", @@ -15178,9 +15178,9 @@ "dev": true }, "colord": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.2.tgz", - "integrity": "sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ==", + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", "dev": true }, "colorette": { @@ -20481,9 +20481,9 @@ } }, "webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.10.0.tgz", + "integrity": "sha512-7dezwAs+k6yXVFZ+MaL8VnE+APobiO3zvpp3rBHe/HmWQ+avwh0Q3d0xxacOiBybZZ3syTZw9HXzpa3YNbAZDQ==", "dev": true, "requires": { "@types/bonjour": "^3.5.9", diff --git a/src/models/IGamepad.ts b/src/models/IGamepad.ts index c5a7b2b..d24fe99 100644 --- a/src/models/IGamepad.ts +++ b/src/models/IGamepad.ts @@ -9,7 +9,7 @@ interface IGamepad { readonly mapping: string; readonly axes: number[]; readonly buttons: IGamepadButton[]; - vibrationActuator: IVibrationActuator; + readonly vibrationActuator: IVibrationActuator; } export default IGamepad; diff --git a/src/models/IVibrator.ts b/src/models/IVibrator.ts index faecd7e..fd1b02f 100644 --- a/src/models/IVibrator.ts +++ b/src/models/IVibrator.ts @@ -2,14 +2,15 @@ import TPatternUnit from '@/models/TPatternUnit'; import IGamepad from '@/models/IGamepad'; interface IVibrator { + unit: IGamepad; readonly id: number; readonly canVibrate: boolean; isVibrating: boolean; - unit: IGamepad; interval: number; update(): void; + loop(pattern: TPatternUnit[]): void; + vibrate(pattern: TPatternUnit): void; reset(): void; - vibrate(pattern: TPatternUnit[]): void; sleep(ms: number): Promise; } diff --git a/src/models/Vibrator.ts b/src/models/Vibrator.ts index a2ab22f..c5ed7d5 100644 --- a/src/models/Vibrator.ts +++ b/src/models/Vibrator.ts @@ -3,10 +3,11 @@ import IGamepad from '@/models/IGamepad'; import IVibrator from '@/models/IVibrator'; class Vibrator implements IVibrator { + + unit: IGamepad; readonly id: number; readonly canVibrate: boolean; isVibrating: boolean; - unit: IGamepad; interval: number; constructor(unit: IGamepad) { @@ -23,18 +24,13 @@ class Vibrator implements IVibrator { this.unit = gamepads[this.unit.index] as unknown as IGamepad; } - reset(): void { - this.isVibrating = false; - this.unit.vibrationActuator.reset(); - } - - async vibrate(pattern: TPatternUnit[]) { + async loop(pattern: TPatternUnit[]) { this.isVibrating = true; const offsetTime = 10; while (this.isVibrating === true) { for (let i = 0; i < pattern.length; i++) { if (this.isVibrating === true) { - this.unit.vibrationActuator.playEffect('dual-rumble', pattern[i]); + this.vibrate(pattern[i]); await this.sleep(pattern[i].startDelay + pattern[i].duration - offsetTime); } else { return; @@ -43,6 +39,15 @@ class Vibrator implements IVibrator { } } + vibrate(pattern: TPatternUnit): void { + this.unit.vibrationActuator.playEffect('dual-rumble', pattern); + } + + reset(): void { + this.isVibrating = false; + this.unit.vibrationActuator.reset(); + } + sleep(ms: number): Promise { return new Promise(resolve => setTimeout(resolve, ms)); } diff --git a/src/store/index.ts b/src/store/index.ts index fabcdec..9f8738a 100644 --- a/src/store/index.ts +++ b/src/store/index.ts @@ -2,7 +2,7 @@ import { createStore, Store } from 'vuex'; import IRootState from './models/IRootState'; import MGamepads from '@/store/modules/MGamepads'; import MPatterns from '@/store/modules/MPatterns'; -import TPatternUnit from '../models/TPatternUnit'; +import TPatternUnit from '@/models/TPatternUnit'; const store: Store = createStore({ state: () => ({ @@ -41,10 +41,7 @@ const store: Store = createStore({ } if (context.getters.isActive === true) { context.dispatch('reset'); - context.dispatch( - 'vibrate', - context.getters.patterns[context.getters.mode].pattern - ); + context.dispatch('loop', context.getters.patterns[context.getters.mode].pattern); } else { context.dispatch('reset'); } @@ -53,7 +50,7 @@ const store: Store = createStore({ context.dispatch('setIsActive', false); context.dispatch('setMode', 0); context.dispatch('reset'); - context.dispatch('vibrate', pattern); + context.dispatch('loop', pattern); }, }, modules: { diff --git a/src/store/modules/MGamepads.ts b/src/store/modules/MGamepads.ts index f0a3780..5948613 100644 --- a/src/store/modules/MGamepads.ts +++ b/src/store/modules/MGamepads.ts @@ -45,9 +45,17 @@ const MGamepads: Module = { } }); }, - vibrate: function ( + loop: function ( context: ActionContext, pattern: TPatternUnit[] + ): void { + context.getters.gamepads.forEach((gamepad: Vibrator) => { + gamepad.loop(pattern); + }); + }, + vibrate: function ( + context: ActionContext, + pattern: TPatternUnit ): void { context.getters.gamepads.forEach((gamepad: Vibrator) => { gamepad.vibrate(pattern); From 34e3db0d021cf41a967c9324940dce3aebeb644e Mon Sep 17 00:00:00 2001 From: Eugene Serb <46799701+eugene-serb@users.noreply.github.com> Date: Thu, 11 Aug 2022 13:59:33 +0300 Subject: [PATCH 03/22] - added interface IPatternUnit and his implementation PatternUnit. - deleted createPatternUnit-function in AppCustom and AppManual, used now class PatternUnit to create. - deleted consoles in AppManual. - updated dependencies. --- package-lock.json | 24 ++++++++++++------------ src/components/AppCustom.vue | 18 ++++++++---------- src/components/AppManual.vue | 35 ++++++++++++++--------------------- src/models/IPatternUnit.ts | 9 +++++++++ src/models/PatternUnit.ts | 22 ++++++++++++++++++++++ 5 files changed, 65 insertions(+), 43 deletions(-) create mode 100644 src/models/IPatternUnit.ts create mode 100644 src/models/PatternUnit.ts diff --git a/package-lock.json b/package-lock.json index fea7bde..78b4d3d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2219,9 +2219,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "18.6.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.6.5.tgz", - "integrity": "sha512-Xjt5ZGUa5WusGZJ4WJPbOT8QOqp6nDynVFRKcUt32bOgvXEoc6o085WNkYTMO7ifAj2isEfQQ2cseE+wT6jsRw==", + "version": "18.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.1.tgz", + "integrity": "sha512-GKX1Qnqxo4S+Z/+Z8KKPLpH282LD7jLHWJcVryOflnsnH+BtSDfieR6ObwBMwpnNws0bUK8GI7z0unQf9bARNQ==", "dev": true }, "node_modules/@types/normalize-package-data": { @@ -5186,9 +5186,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.213", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.213.tgz", - "integrity": "sha512-+3DbGHGOCHTVB/Ms63bGqbyC1b8y7Fk86+7ltssB8NQrZtSCvZG6eooSl9U2Q0yw++fL2DpHKOdTU0NVEkFObg==", + "version": "1.4.215", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.215.tgz", + "integrity": "sha512-vqZxT8C5mlDZ//hQFhneHmOLnj1LhbzxV0+I1yqHV8SB1Oo4Y5Ne9+qQhwHl7O1s9s9cRuo2l5CoLEHdhMTwZg==", "dev": true }, "node_modules/emoji-regex": { @@ -13592,9 +13592,9 @@ "dev": true }, "@types/node": { - "version": "18.6.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.6.5.tgz", - "integrity": "sha512-Xjt5ZGUa5WusGZJ4WJPbOT8QOqp6nDynVFRKcUt32bOgvXEoc6o085WNkYTMO7ifAj2isEfQQ2cseE+wT6jsRw==", + "version": "18.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.1.tgz", + "integrity": "sha512-GKX1Qnqxo4S+Z/+Z8KKPLpH282LD7jLHWJcVryOflnsnH+BtSDfieR6ObwBMwpnNws0bUK8GI7z0unQf9bARNQ==", "dev": true }, "@types/normalize-package-data": { @@ -15802,9 +15802,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.4.213", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.213.tgz", - "integrity": "sha512-+3DbGHGOCHTVB/Ms63bGqbyC1b8y7Fk86+7ltssB8NQrZtSCvZG6eooSl9U2Q0yw++fL2DpHKOdTU0NVEkFObg==", + "version": "1.4.215", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.215.tgz", + "integrity": "sha512-vqZxT8C5mlDZ//hQFhneHmOLnj1LhbzxV0+I1yqHV8SB1Oo4Y5Ne9+qQhwHl7O1s9s9cRuo2l5CoLEHdhMTwZg==", "dev": true }, "emoji-regex": { diff --git a/src/components/AppCustom.vue b/src/components/AppCustom.vue index aaafb73..b2a81b9 100644 --- a/src/components/AppCustom.vue +++ b/src/components/AppCustom.vue @@ -37,6 +37,7 @@ import { defineComponent } from 'vue'; import store from '@/store/index'; import TPatternUnit from '@/models/TPatternUnit'; + import PatternUnit from '@/models/PatternUnit'; export default defineComponent({ name: 'AppCustom', @@ -49,17 +50,14 @@ }; }, methods: { - createPatternUnit: function (): TPatternUnit[] { - const patternUnit: TPatternUnit[] = [{ - startDelay: this.startDelay, - duration: this.duration, - weakMagnitude: this.weakMagnitude, - strongMagnitude: this.strongMagnitude, - }]; - return patternUnit as TPatternUnit[]; - }, start: function (): void { - store.dispatch('startCustom', this.createPatternUnit()); + const patterns: TPatternUnit[] = [new PatternUnit( + this.startDelay, + this.duration, + this.weakMagnitude, + this.strongMagnitude, + )]; + store.dispatch('startCustom', patterns); }, stop: function (): void { store.dispatch('reset'); diff --git a/src/components/AppManual.vue b/src/components/AppManual.vue index 74ad772..073dfc3 100644 --- a/src/components/AppManual.vue +++ b/src/components/AppManual.vue @@ -42,19 +42,20 @@ import store from '@/store/index'; import Vibrator from '@/models/Vibrator'; import TPatternUnit from '@/models/TPatternUnit'; + import PatternUnit from '@/models/PatternUnit'; export default defineComponent({ name: 'AppCustom', data: () => { return { - startDelay: 0 as number, - duration: 260 as number, - weakMagnitude: 0 as number, - strongMagnitude: 0 as number, timestamp: 0 as number, interval: 0 as number, mode: 0 as number, lock: false as boolean, + startDelay: 0 as number, + duration: 260 as number, + weakMagnitude: 0 as number, + strongMagnitude: 0 as number, }; }, computed: { @@ -68,17 +69,14 @@ }, }, methods: { - createPatternUnit: function (): TPatternUnit { - const patternUnit: TPatternUnit = { - startDelay: this.startDelay, - duration: this.duration, - weakMagnitude: this.weakMagnitude, - strongMagnitude: this.strongMagnitude, - }; - return patternUnit as TPatternUnit; - }, start: function (): void { - store.dispatch('startCustom', this.createPatternUnit()); + const pattern: TPatternUnit = new PatternUnit( + this.startDelay, + this.duration, + this.weakMagnitude, + this.strongMagnitude, + ); + store.dispatch('vibrate', pattern); }, stop: function (): void { store.dispatch('setIsActive', false); @@ -98,20 +96,16 @@ if (this.gamepads.length > 0) { if (this.gamepads[0].unit.buttons[1].pressed === true) { this.lock = !this.lock; - console.log('B', this.lock); } if (this.lock === false) { if (this.gamepads[0].unit.buttons[0].pressed === true) { this.mode = 0; - console.log('A', this.mode); } if (this.gamepads[0].unit.buttons[2].pressed === true) { this.mode = 1; - console.log('X', this.mode); } if (this.gamepads[0].unit.buttons[3].pressed === true) { this.mode = 2; - console.log('Y', this.mode); } } } @@ -137,9 +131,8 @@ handle: function (): void { if (this.gamepads.length > 0) { this.gamepads.forEach((gamepad) => { - if (gamepad.unit.buttons[7].value > 0 - || this.lock === true) { - gamepad.unit.vibrationActuator.playEffect('dual-rumble', this.createPatternUnit()); + if (gamepad.unit.buttons[7].value > 0 || this.lock === true) { + this.start(); } else { this.stop(); } diff --git a/src/models/IPatternUnit.ts b/src/models/IPatternUnit.ts new file mode 100644 index 0000000..663f794 --- /dev/null +++ b/src/models/IPatternUnit.ts @@ -0,0 +1,9 @@ +interface IPatternUnit { + startDelay: number; + duration: number; + weakMagnitude: number; + strongMagnitude: number; +} + +export default IPatternUnit; + diff --git a/src/models/PatternUnit.ts b/src/models/PatternUnit.ts new file mode 100644 index 0000000..c1825cd --- /dev/null +++ b/src/models/PatternUnit.ts @@ -0,0 +1,22 @@ +import IPatternUnit from "@/models/IPatternUnit"; + +class PatternUnit implements IPatternUnit { + + startDelay: number; + duration: number; + weakMagnitude: number; + strongMagnitude: number; + + constructor( + startDelay: number, duration: number, + weakMagnitude: number, strongMagnitude: number + ) { + this.startDelay = startDelay; + this.duration = duration; + this.weakMagnitude = weakMagnitude; + this.strongMagnitude = strongMagnitude; + } +} + +export default PatternUnit; + From 10bffbb044ed7a79b5f0e240ed5bfdc9a251795f Mon Sep 17 00:00:00 2001 From: Eugene Serb <46799701+eugene-serb@users.noreply.github.com> Date: Thu, 11 Aug 2022 14:15:11 +0300 Subject: [PATCH 04/22] - updated sitemaps. - added eslint ignore in MPatterns loadPatterns action. --- public/sitemap-internal.xml | 8 ++++---- public/sitemap.xml | 2 +- src/store/modules/MPatterns.ts | 2 ++ 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/public/sitemap-internal.xml b/public/sitemap-internal.xml index 04b623e..cdaf48e 100644 --- a/public/sitemap-internal.xml +++ b/public/sitemap-internal.xml @@ -2,25 +2,25 @@ https://wavelovers.ru/ - 2022-08-10 + 2022-08-11 weekly 1.0 https://wavelovers.ru/faq.html - 2022-08-10 + 2022-08-11 weekly 1.0 https://wavelovers.ru/about.html - 2022-08-10 + 2022-08-11 weekly 1.0 https://wavelovers.ru/donate.html - 2022-08-10 + 2022-08-11 weekly 1.0 diff --git a/public/sitemap.xml b/public/sitemap.xml index 5fdf0aa..340a081 100644 --- a/public/sitemap.xml +++ b/public/sitemap.xml @@ -2,7 +2,7 @@ https://wavelovers.ru/sitemap-internal.xml - 2022-08-10 + 2022-08-11 diff --git a/src/store/modules/MPatterns.ts b/src/store/modules/MPatterns.ts index 5a80ea6..0c6aa29 100644 --- a/src/store/modules/MPatterns.ts +++ b/src/store/modules/MPatterns.ts @@ -28,9 +28,11 @@ const MPatterns: Module = { const json: TPattern[] = await response.json(); context.commit('setPatterns', json as TPattern[]); } else { + // eslint-disable-next-line console.log('Connect to the Internet for download more patterns...'); } } catch (error) { + // eslint-disable-next-line console.log(error); } }, From 29befb71297509b469294a50d70d2a8eeae33524 Mon Sep 17 00:00:00 2001 From: Eugene Serb <46799701+eugene-serb@users.noreply.github.com> Date: Thu, 11 Aug 2022 14:16:57 +0300 Subject: [PATCH 05/22] - build and deploy production. --- docs/about.html | 2 +- docs/css/{554.10b8ac32.css => 264.10b8ac32.css} | 0 docs/css/441.19a8cda3.css | 1 + docs/css/46.30c3638a.css | 1 - docs/css/941.06b3a622.css | 1 + docs/custom.html | 11 +++++++++++ docs/donate.html | 2 +- docs/faq.html | 2 +- docs/index.html | 4 ++-- docs/js/{554.0d3dfa8b.js => 264.5a60390d.js} | 4 ++-- docs/js/264.5a60390d.js.map | 1 + docs/js/441.be7aaf75.js | 2 ++ docs/js/441.be7aaf75.js.map | 1 + docs/js/46.c7a9f83c.js | 2 -- docs/js/46.c7a9f83c.js.map | 1 - docs/js/554.0d3dfa8b.js.map | 1 - docs/js/{567.1165d9e5.js => 567.681eca51.js} | 2 +- docs/js/{567.1165d9e5.js.map => 567.681eca51.js.map} | 2 +- docs/js/941.6295b5fd.js | 2 ++ docs/js/941.6295b5fd.js.map | 1 + docs/js/app.26b99067.js | 2 -- docs/js/app.26b99067.js.map | 1 - docs/js/app.b6f99632.js | 2 ++ docs/js/app.b6f99632.js.map | 1 + docs/js/chunk-vendors.248cd14b.js.map | 1 - ...-vendors.248cd14b.js => chunk-vendors.8748c580.js} | 4 ++-- docs/js/chunk-vendors.8748c580.js.map | 1 + docs/sitemap-internal.xml | 8 ++++---- docs/sitemap.xml | 2 +- 29 files changed, 40 insertions(+), 25 deletions(-) rename docs/css/{554.10b8ac32.css => 264.10b8ac32.css} (100%) create mode 100644 docs/css/441.19a8cda3.css delete mode 100644 docs/css/46.30c3638a.css create mode 100644 docs/css/941.06b3a622.css create mode 100644 docs/custom.html rename docs/js/{554.0d3dfa8b.js => 264.5a60390d.js} (90%) create mode 100644 docs/js/264.5a60390d.js.map create mode 100644 docs/js/441.be7aaf75.js create mode 100644 docs/js/441.be7aaf75.js.map delete mode 100644 docs/js/46.c7a9f83c.js delete mode 100644 docs/js/46.c7a9f83c.js.map delete mode 100644 docs/js/554.0d3dfa8b.js.map rename docs/js/{567.1165d9e5.js => 567.681eca51.js} (92%) rename docs/js/{567.1165d9e5.js.map => 567.681eca51.js.map} (97%) create mode 100644 docs/js/941.6295b5fd.js create mode 100644 docs/js/941.6295b5fd.js.map delete mode 100644 docs/js/app.26b99067.js delete mode 100644 docs/js/app.26b99067.js.map create mode 100644 docs/js/app.b6f99632.js create mode 100644 docs/js/app.b6f99632.js.map delete mode 100644 docs/js/chunk-vendors.248cd14b.js.map rename docs/js/{chunk-vendors.248cd14b.js => chunk-vendors.8748c580.js} (53%) create mode 100644 docs/js/chunk-vendors.8748c580.js.map diff --git a/docs/about.html b/docs/about.html index cb68e05..9e0b169 100644 --- a/docs/about.html +++ b/docs/about.html @@ -16,7 +16,7 @@ - + diff --git a/docs/css/554.10b8ac32.css b/docs/css/264.10b8ac32.css similarity index 100% rename from docs/css/554.10b8ac32.css rename to docs/css/264.10b8ac32.css diff --git a/docs/css/441.19a8cda3.css b/docs/css/441.19a8cda3.css new file mode 100644 index 0000000..92201f6 --- /dev/null +++ b/docs/css/441.19a8cda3.css @@ -0,0 +1 @@ +.custom-form{display:flex;flex-direction:column-reverse;justify-content:space-between;gap:16px}.custom-form__input{display:grid;grid-template-columns:1fr;align-items:center}.custom-form__buttons{display:flex;flex-direction:row;justify-content:space-between;gap:32px}.custom-form__button{width:100%}@media only screen and (min-width:540px){.custom-form{display:flex;flex-direction:column;gap:32px}.custom-form__input{display:grid;grid-template-columns:1fr 1fr}} \ No newline at end of file diff --git a/docs/css/46.30c3638a.css b/docs/css/46.30c3638a.css deleted file mode 100644 index 8d2d2d4..0000000 --- a/docs/css/46.30c3638a.css +++ /dev/null @@ -1 +0,0 @@ -.manual-form{display:flex;flex-direction:column-reverse;justify-content:space-between;gap:16px}.manual-form__input{display:grid;grid-template-columns:1fr;align-items:center}.manual-form__buttons{display:flex;flex-direction:row;justify-content:space-between;gap:32px}.manual-form__button{width:100%}@media only screen and (min-width:540px){.manual-form{display:flex;flex-direction:column;gap:32px}.manual-form__input{display:grid;grid-template-columns:1fr 1fr}} \ No newline at end of file diff --git a/docs/css/941.06b3a622.css b/docs/css/941.06b3a622.css new file mode 100644 index 0000000..d25a6bc --- /dev/null +++ b/docs/css/941.06b3a622.css @@ -0,0 +1 @@ +.app-manual{display:flex;flex-direction:column;justify-content:space-between;gap:32px}.manual-form__input{display:grid;grid-template-columns:1fr;align-items:center}.manual-controls{display:flex;flex-direction:column;justify-content:space-between;align-self:center}@media only screen and (min-width:540px){.manual-form__input{display:grid;grid-template-columns:1fr 1fr}.manual-controls{display:flex;flex-direction:row;align-self:stretch}} \ No newline at end of file diff --git a/docs/custom.html b/docs/custom.html new file mode 100644 index 0000000..b601ca6 --- /dev/null +++ b/docs/custom.html @@ -0,0 +1,11 @@ + + + + Wavelovers – Redirect + + + + + + + diff --git a/docs/donate.html b/docs/donate.html index 9618af9..bea60b1 100644 --- a/docs/donate.html +++ b/docs/donate.html @@ -16,7 +16,7 @@ - + diff --git a/docs/faq.html b/docs/faq.html index 7f00e39..a9d98b2 100644 --- a/docs/faq.html +++ b/docs/faq.html @@ -16,7 +16,7 @@ - + diff --git a/docs/index.html b/docs/index.html index 0db454a..6f88438 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,4 +1,4 @@ -Wavelovers

Wavelovers

\ No newline at end of file + }

Wavelovers

\ No newline at end of file diff --git a/docs/js/554.0d3dfa8b.js b/docs/js/264.5a60390d.js similarity index 90% rename from docs/js/554.0d3dfa8b.js rename to docs/js/264.5a60390d.js index 21dce13..5d049fd 100644 --- a/docs/js/554.0d3dfa8b.js +++ b/docs/js/264.5a60390d.js @@ -1,2 +1,2 @@ -"use strict";(self["webpackChunkwavelovers"]=self["webpackChunkwavelovers"]||[]).push([[554],{4554:function(a,t,e){e.r(t),e.d(t,{default:function(){return F}});var s=e(3396);function n(a,t,e,n,u,i){const p=(0,s.up)("AppDiagnostic");return(0,s.wg)(),(0,s.j4)(p)}const u={key:0,class:"content-item"};function i(a,t,e,n,i,p){const d=(0,s.up)("DiagnosticItem");return a.gamepads.length>0?((0,s.wg)(),(0,s.iD)("div",u,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(a.gamepads,(t=>((0,s.wg)(),(0,s.j4)(d,{key:t.id,gamepad:t,timestamp:a.timestamp},null,8,["gamepad","timestamp"])))),128))])):(0,s.kq)("",!0)}var p=e(1746),d=e(7139);const o={class:"output-gamepad"},l={class:"gamepad-group"};function m(a,t,e,n,u,i){return(0,s.wg)(),(0,s.iD)("div",o,[(0,s._)("h3",null,"#"+(0,d.zw)(a.gamepad.unit.index+1)+". "+(0,d.zw)(a.gamepad.unit.id),1),(0,s._)("div",l,[(0,s._)("div",null,[(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[0].value?"pressed":""])},"A: "+(0,d.zw)(a.gamepad.unit.buttons[0].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[1].value?"pressed":""])},"B: "+(0,d.zw)(a.gamepad.unit.buttons[1].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[2].value?"pressed":""])},"X: "+(0,d.zw)(a.gamepad.unit.buttons[2].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[3].value?"pressed":""])},"Y: "+(0,d.zw)(a.gamepad.unit.buttons[3].value.toFixed(2)),3)]),(0,s._)("div",null,[(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[4].value?"pressed":""])},"LB: "+(0,d.zw)(a.gamepad.unit.buttons[4].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[5].value?"pressed":""])},"RB: "+(0,d.zw)(a.gamepad.unit.buttons[5].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[6].value?"pressed":""])},"LT: "+(0,d.zw)(a.gamepad.unit.buttons[6].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[7].value?"pressed":""])},"RT: "+(0,d.zw)(a.gamepad.unit.buttons[7].value.toFixed(2)),3)]),(0,s._)("div",null,[(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[8].value?"pressed":""])},"Back: "+(0,d.zw)(a.gamepad.unit.buttons[8].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[9].value?"pressed":""])},"Start: "+(0,d.zw)(a.gamepad.unit.buttons[9].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[10].value?"pressed":""])},"Left Stick: "+(0,d.zw)(a.gamepad.unit.buttons[10].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[11].value?"pressed":""])},"Right Stick: "+(0,d.zw)(a.gamepad.unit.buttons[11].value.toFixed(2)),3)]),(0,s._)("div",null,[(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[12].value?"pressed":""])},"Forward: "+(0,d.zw)(a.gamepad.unit.buttons[12].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[13].value?"pressed":""])},"Backward: "+(0,d.zw)(a.gamepad.unit.buttons[13].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[14].value?"pressed":""])},"Left: "+(0,d.zw)(a.gamepad.unit.buttons[14].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[15].value?"pressed":""])},"Right: "+(0,d.zw)(a.gamepad.unit.buttons[15].value.toFixed(2)),3)]),(0,s._)("div",null,[(0,s._)("span",null,"Left Stick X: "+(0,d.zw)(a.gamepad.unit.axes[0]?a.gamepad.unit.axes[0].toFixed(2):"missing"),1),(0,s._)("span",null,"Left Stick Y: "+(0,d.zw)(a.gamepad.unit.axes[1]?a.gamepad.unit.axes[1].toFixed(2):"missing"),1),(0,s._)("span",null,"Right Stick X: "+(0,d.zw)(a.gamepad.unit.axes[2]?a.gamepad.unit.axes[2].toFixed(2):"missing"),1),(0,s._)("span",null,"Right Stick Y: "+(0,d.zw)(a.gamepad.unit.axes[3]?a.gamepad.unit.axes[3].toFixed(2):"missing"),1)])]),(0,s._)("span",null,"Vibration Actuator: "+(0,d.zw)(a.gamepad.unit.vibrationActuator?"Available":"missing"),1)])}var g=(0,s.aZ)({name:"DiagnosticItem",props:{gamepad:{type:Object},timestamp:{type:Number}}}),r=e(89);const c=(0,r.Z)(g,[["render",m]]);var v=c,_=(0,s.aZ)({name:"AppDiagnostic",components:{DiagnosticItem:v},data:()=>({timestamp:0,interval:0}),computed:{gamepads:function(){const a=this.timestamp,t=p.Z.getters.gamepads;return t.forEach((t=>{t.interval=a})),t}},methods:{updateTimestamp:function(){this.timestamp=Date.now()}},mounted(){this.interval=setInterval(this.updateTimestamp,1)},unmounted(){clearInterval(this.interval)}});const b=(0,r.Z)(_,[["render",i]]);var w=b,x=(0,s.aZ)({name:"DiagnosticView",components:{AppDiagnostic:w}});const z=(0,r.Z)(x,[["render",n]]);var F=z}}]); -//# sourceMappingURL=554.0d3dfa8b.js.map \ No newline at end of file +"use strict";(self["webpackChunkwavelovers"]=self["webpackChunkwavelovers"]||[]).push([[264],{2264:function(a,t,e){e.r(t),e.d(t,{default:function(){return F}});var s=e(3396);function n(a,t,e,n,u,i){const p=(0,s.up)("AppDiagnostic");return(0,s.wg)(),(0,s.j4)(p)}const u={key:0,class:"content-item"};function i(a,t,e,n,i,p){const d=(0,s.up)("DiagnosticItem");return a.gamepads.length>0?((0,s.wg)(),(0,s.iD)("div",u,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(a.gamepads,(t=>((0,s.wg)(),(0,s.j4)(d,{key:t.id,gamepad:t,timestamp:a.timestamp},null,8,["gamepad","timestamp"])))),128))])):(0,s.kq)("",!0)}var p=e(1746),d=e(7139);const o={class:"output-gamepad"},l={class:"gamepad-group"};function m(a,t,e,n,u,i){return(0,s.wg)(),(0,s.iD)("div",o,[(0,s._)("h3",null,"#"+(0,d.zw)(a.gamepad.unit.index+1)+". "+(0,d.zw)(a.gamepad.unit.id),1),(0,s._)("div",l,[(0,s._)("div",null,[(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[0].value?"pressed":""])},"A: "+(0,d.zw)(a.gamepad.unit.buttons[0].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[1].value?"pressed":""])},"B: "+(0,d.zw)(a.gamepad.unit.buttons[1].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[2].value?"pressed":""])},"X: "+(0,d.zw)(a.gamepad.unit.buttons[2].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[3].value?"pressed":""])},"Y: "+(0,d.zw)(a.gamepad.unit.buttons[3].value.toFixed(2)),3)]),(0,s._)("div",null,[(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[4].value?"pressed":""])},"LB: "+(0,d.zw)(a.gamepad.unit.buttons[4].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[5].value?"pressed":""])},"RB: "+(0,d.zw)(a.gamepad.unit.buttons[5].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[6].value?"pressed":""])},"LT: "+(0,d.zw)(a.gamepad.unit.buttons[6].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[7].value?"pressed":""])},"RT: "+(0,d.zw)(a.gamepad.unit.buttons[7].value.toFixed(2)),3)]),(0,s._)("div",null,[(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[8].value?"pressed":""])},"Back: "+(0,d.zw)(a.gamepad.unit.buttons[8].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[9].value?"pressed":""])},"Start: "+(0,d.zw)(a.gamepad.unit.buttons[9].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[10].value?"pressed":""])},"Left Stick: "+(0,d.zw)(a.gamepad.unit.buttons[10].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[11].value?"pressed":""])},"Right Stick: "+(0,d.zw)(a.gamepad.unit.buttons[11].value.toFixed(2)),3)]),(0,s._)("div",null,[(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[12].value?"pressed":""])},"Forward: "+(0,d.zw)(a.gamepad.unit.buttons[12].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[13].value?"pressed":""])},"Backward: "+(0,d.zw)(a.gamepad.unit.buttons[13].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[14].value?"pressed":""])},"Left: "+(0,d.zw)(a.gamepad.unit.buttons[14].value.toFixed(2)),3),(0,s._)("span",{class:(0,d.C_)([1===a.gamepad.unit.buttons[15].value?"pressed":""])},"Right: "+(0,d.zw)(a.gamepad.unit.buttons[15].value.toFixed(2)),3)]),(0,s._)("div",null,[(0,s._)("span",null,"Left Stick X: "+(0,d.zw)(a.gamepad.unit.axes[0]?a.gamepad.unit.axes[0].toFixed(2):"missing"),1),(0,s._)("span",null,"Left Stick Y: "+(0,d.zw)(a.gamepad.unit.axes[1]?a.gamepad.unit.axes[1].toFixed(2):"missing"),1),(0,s._)("span",null,"Right Stick X: "+(0,d.zw)(a.gamepad.unit.axes[2]?a.gamepad.unit.axes[2].toFixed(2):"missing"),1),(0,s._)("span",null,"Right Stick Y: "+(0,d.zw)(a.gamepad.unit.axes[3]?a.gamepad.unit.axes[3].toFixed(2):"missing"),1)])]),(0,s._)("span",null,"Vibration Actuator: "+(0,d.zw)(a.gamepad.unit.vibrationActuator?"Available":"missing"),1)])}var g=(0,s.aZ)({name:"DiagnosticItem",props:{gamepad:{type:Object},timestamp:{type:Number}}}),r=e(89);const c=(0,r.Z)(g,[["render",m]]);var v=c,_=(0,s.aZ)({name:"AppDiagnostic",components:{DiagnosticItem:v},data:()=>({timestamp:0,interval:0}),computed:{gamepads:function(){const a=this.timestamp,t=p.Z.getters.gamepads;return t.forEach((t=>{t.interval=a})),t}},methods:{updateComputed:function(){this.timestamp=Date.now()}},mounted(){this.interval=setInterval(this.updateComputed,1)},unmounted(){clearInterval(this.interval)}});const b=(0,r.Z)(_,[["render",i]]);var w=b,x=(0,s.aZ)({name:"DiagnosticView",components:{AppDiagnostic:w}});const z=(0,r.Z)(x,[["render",n]]);var F=z}}]); +//# sourceMappingURL=264.5a60390d.js.map \ No newline at end of file diff --git a/docs/js/264.5a60390d.js.map b/docs/js/264.5a60390d.js.map new file mode 100644 index 0000000..2b4ae34 --- /dev/null +++ b/docs/js/264.5a60390d.js.map @@ -0,0 +1 @@ +{"version":3,"file":"js/264.5a60390d.js","mappings":"8KAEM,SAAUA,EAAOC,EAAUC,EAAYC,EAAYC,EAAYC,EAAWC,GAC9E,MAAMC,GAA2BC,EAAAA,EAAAA,IAAkB,iBAEnD,OAAQC,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAaH,EACpC,CCJD,MAAMI,EAAa,CACjBC,IAAK,EACLC,MAAO,gBAGH,SAAUb,EAAOC,EAAUC,EAAYC,EAAYC,EAAYC,EAAWC,GAC9E,MAAMQ,GAA4BN,EAAAA,EAAAA,IAAkB,kBAEpD,OAAQP,EAAKc,SAASC,OAAS,IAC1BP,EAAAA,EAAAA,OAAcQ,EAAAA,EAAAA,IAAoB,MAAON,EAAY,GACnDF,EAAAA,EAAAA,KAAW,IAAOQ,EAAAA,EAAAA,IAAoBC,EAAAA,GAAW,MAAMC,EAAAA,EAAAA,IAAYlB,EAAKc,UAAWK,KAC1EX,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAaI,EAA2B,CAC5DF,IAAKQ,EAAQC,GACbD,QAASA,EACTE,UAAWrB,EAAKqB,WACf,KAAM,EAAG,CAAC,UAAW,iBACtB,UAENC,EAAAA,EAAAA,IAAoB,IAAI,EAC7B,C,wBCnBD,MAAMZ,EAAa,CAAEE,MAAO,kBACtBW,EAAa,CAAEX,MAAO,iBAEtB,SAAUb,EAAOC,EAAUC,EAAYC,EAAYC,EAAYC,EAAWC,GAC9E,OAAQG,EAAAA,EAAAA,OAAcQ,EAAAA,EAAAA,IAAoB,MAAON,EAAY,EAC3Dc,EAAAA,EAAAA,GAAoB,KAAM,KAAM,KAAMC,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKC,MAAQ,GAAK,MAAOF,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKN,IAAK,IACrII,EAAAA,EAAAA,GAAoB,MAAOD,EAAY,EACrCC,EAAAA,EAAAA,GAAoB,MAAO,KAAM,EAC/BA,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,OAAQL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,IAC5EP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAwC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC9E,OAAQL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,IAC5EP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,OAAQL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,IAC5EP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,OAAQL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,MAE9EP,EAAAA,EAAAA,GAAoB,MAAO,KAAM,EAC/BA,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,QAASL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,IAC7EP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,QAASL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,IAC7EP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,QAASL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,IAC7EP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,QAASL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,MAE/EP,EAAAA,EAAAA,GAAoB,MAAO,KAAM,EAC/BA,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,UAAWL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,IAC/EP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAAyC,IAAvC5B,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAc,UAAY,MAC/E,WAAYL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,GAAGC,MAAMC,QAAQ,IAAK,IAChFP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAA0C,IAAxC5B,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAc,UAAY,MAChF,gBAAiBL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAMC,QAAQ,IAAK,IACtFP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAA0C,IAAxC5B,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAc,UAAY,MAChF,iBAAkBL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAMC,QAAQ,IAAK,MAEzFP,EAAAA,EAAAA,GAAoB,MAAO,KAAM,EAC/BA,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAA0C,IAAxC5B,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAc,UAAY,MAChF,aAAcL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAMC,QAAQ,IAAK,IACnFP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAA0C,IAAxC5B,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAc,UAAY,MAChF,cAAeL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAMC,QAAQ,IAAK,IACpFP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAA0C,IAAxC5B,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAc,UAAY,MAChF,UAAWL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAMC,QAAQ,IAAK,IAChFP,EAAAA,EAAAA,GAAoB,OAAQ,CAC1BZ,OAAOgB,EAAAA,EAAAA,IAAgB,CAA0C,IAAxC5B,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAc,UAAY,MAChF,WAAYL,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKG,QAAQ,IAAIC,MAAMC,QAAQ,IAAK,MAEnFP,EAAAA,EAAAA,GAAoB,MAAO,KAAM,EAC/BA,EAAAA,EAAAA,GAAoB,OAAQ,KAAM,kBAAmBC,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKM,KAAK,GAAKhC,EAAKmB,QAAQO,KAAKM,KAAK,GAAGD,QAAQ,GAAK,WAAY,IACrJP,EAAAA,EAAAA,GAAoB,OAAQ,KAAM,kBAAmBC,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKM,KAAK,GAAKhC,EAAKmB,QAAQO,KAAKM,KAAK,GAAGD,QAAQ,GAAK,WAAY,IACrJP,EAAAA,EAAAA,GAAoB,OAAQ,KAAM,mBAAoBC,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKM,KAAK,GAAKhC,EAAKmB,QAAQO,KAAKM,KAAK,GAAGD,QAAQ,GAAK,WAAY,IACtJP,EAAAA,EAAAA,GAAoB,OAAQ,KAAM,mBAAoBC,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKM,KAAK,GAAKhC,EAAKmB,QAAQO,KAAKM,KAAK,GAAGD,QAAQ,GAAK,WAAY,QAG1JP,EAAAA,EAAAA,GAAoB,OAAQ,KAAM,wBAAyBC,EAAAA,EAAAA,IAAiBzB,EAAKmB,QAAQO,KAAKO,kBAAoB,YAAc,WAAY,IAE/I,CCvEG,OAAeC,EAAAA,EAAAA,IAAgB,CAC3BC,KAAM,iBACNC,MAAO,CACHjB,QAAS,CACLkB,KAAMC,QAEVjB,UAAW,CACPgB,KAAME,W,QCHtB,MAAMC,GAA2B,OAAgB,EAAQ,CAAC,CAAC,SAAS,KAEpE,QCHI,GAAeN,EAAAA,EAAAA,IAAgB,CAC3BC,KAAM,gBACNM,WAAY,CACRC,eAAgBA,GAEpBC,KAAM,KACK,CACHtB,UAAW,EACXuB,SAAU,IAGlBC,SAAU,CACN/B,SAAU,WACN,MAAMO,EAAoByB,KAAKzB,UACzB0B,EAAqBC,EAAAA,EAAAA,QAAAA,SAI3B,OAHAD,EAAOE,SAASC,IACZA,EAAKN,SAAWvB,CAAhB,IAEG0B,CACV,GAELI,QAAS,CACLC,eAAgB,WACZN,KAAKzB,UAAYgC,KAAKC,KACzB,GAELC,UACIT,KAAKF,SAAWY,YAAYV,KAAKM,eAAgB,EACpD,EACDK,YACIC,cAAcZ,KAAKF,SACtB,IChCT,MAAM,GAA2B,OAAgB,EAAQ,CAAC,CAAC,SAAS,KAEpE,QCHI,GAAeV,EAAAA,EAAAA,IAAgB,CAC3BC,KAAM,iBACNM,WAAY,CACRkB,cAAeA,KCF3B,MAAM,GAA2B,OAAgB,EAAQ,CAAC,CAAC,SAAS5D,KAEpE,O","sources":["webpack://wavelovers/./src/views/DiagnosticView.vue?4dbd","webpack://wavelovers/./src/components/AppDiagnostic.vue?340e","webpack://wavelovers/./src/components/DiagnosticItem.vue?f20a","webpack://wavelovers/./src/components/DiagnosticItem.vue?0e90","webpack://wavelovers/./src/components/DiagnosticItem.vue","webpack://wavelovers/./src/components/AppDiagnostic.vue?1eec","webpack://wavelovers/./src/components/AppDiagnostic.vue","webpack://wavelovers/./src/views/DiagnosticView.vue?a628","webpack://wavelovers/./src/views/DiagnosticView.vue"],"sourcesContent":["import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AppDiagnostic = _resolveComponent(\"AppDiagnostic\")!\n\n return (_openBlock(), _createBlock(_component_AppDiagnostic))\n}","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"content-item\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_DiagnosticItem = _resolveComponent(\"DiagnosticItem\")!\n\n return (_ctx.gamepads.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.gamepads, (gamepad) => {\n return (_openBlock(), _createBlock(_component_DiagnosticItem, {\n key: gamepad.id,\n gamepad: gamepad,\n timestamp: _ctx.timestamp\n }, null, 8, [\"gamepad\", \"timestamp\"]))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"output-gamepad\" }\nconst _hoisted_2 = { class: \"gamepad-group\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"h3\", null, \"#\" + _toDisplayString(_ctx.gamepad.unit.index + 1) + \". \" + _toDisplayString(_ctx.gamepad.unit.id), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[0].value === 1 ? 'pressed' : '' ])\n }, \"A: \" + _toDisplayString(_ctx.gamepad.unit.buttons[0].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.gamepad.unit.buttons[1].value === 1 ? 'pressed' : '' ])\n }, \"B: \" + _toDisplayString(_ctx.gamepad.unit.buttons[1].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[2].value === 1 ? 'pressed' : '' ])\n }, \"X: \" + _toDisplayString(_ctx.gamepad.unit.buttons[2].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[3].value === 1 ? 'pressed' : '' ])\n }, \"Y: \" + _toDisplayString(_ctx.gamepad.unit.buttons[3].value.toFixed(2)), 3)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[4].value === 1 ? 'pressed' : '' ])\n }, \"LB: \" + _toDisplayString(_ctx.gamepad.unit.buttons[4].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[5].value === 1 ? 'pressed' : '' ])\n }, \"RB: \" + _toDisplayString(_ctx.gamepad.unit.buttons[5].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[6].value === 1 ? 'pressed' : '' ])\n }, \"LT: \" + _toDisplayString(_ctx.gamepad.unit.buttons[6].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[7].value === 1 ? 'pressed' : '' ])\n }, \"RT: \" + _toDisplayString(_ctx.gamepad.unit.buttons[7].value.toFixed(2)), 3)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[8].value === 1 ? 'pressed' : '' ])\n }, \"Back: \" + _toDisplayString(_ctx.gamepad.unit.buttons[8].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[9].value === 1 ? 'pressed' : '' ])\n }, \"Start: \" + _toDisplayString(_ctx.gamepad.unit.buttons[9].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[10].value === 1 ? 'pressed' : '' ])\n }, \"Left Stick: \" + _toDisplayString(_ctx.gamepad.unit.buttons[10].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[11].value === 1 ? 'pressed' : '' ])\n }, \"Right Stick: \" + _toDisplayString(_ctx.gamepad.unit.buttons[11].value.toFixed(2)), 3)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[12].value === 1 ? 'pressed' : '' ])\n }, \"Forward: \" + _toDisplayString(_ctx.gamepad.unit.buttons[12].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[13].value === 1 ? 'pressed' : '' ])\n }, \"Backward: \" + _toDisplayString(_ctx.gamepad.unit.buttons[13].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[14].value === 1 ? 'pressed' : '' ])\n }, \"Left: \" + _toDisplayString(_ctx.gamepad.unit.buttons[14].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[15].value === 1 ? 'pressed' : '' ])\n }, \"Right: \" + _toDisplayString(_ctx.gamepad.unit.buttons[15].value.toFixed(2)), 3)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", null, \"Left Stick X: \" + _toDisplayString(_ctx.gamepad.unit.axes[0] ? _ctx.gamepad.unit.axes[0].toFixed(2) : 'missing'), 1),\n _createElementVNode(\"span\", null, \"Left Stick Y: \" + _toDisplayString(_ctx.gamepad.unit.axes[1] ? _ctx.gamepad.unit.axes[1].toFixed(2) : 'missing'), 1),\n _createElementVNode(\"span\", null, \"Right Stick X: \" + _toDisplayString(_ctx.gamepad.unit.axes[2] ? _ctx.gamepad.unit.axes[2].toFixed(2) : 'missing'), 1),\n _createElementVNode(\"span\", null, \"Right Stick Y: \" + _toDisplayString(_ctx.gamepad.unit.axes[3] ? _ctx.gamepad.unit.axes[3].toFixed(2) : 'missing'), 1)\n ])\n ]),\n _createElementVNode(\"span\", null, \"Vibration Actuator: \" + _toDisplayString(_ctx.gamepad.unit.vibrationActuator ? 'Available' : 'missing'), 1)\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'DiagnosticItem',\r\n props: {\r\n gamepad: {\r\n type: Object,\r\n },\r\n timestamp: {\r\n type: Number,\r\n },\r\n },\r\n });\r\n","import { render } from \"./DiagnosticItem.vue?vue&type=template&id=2ff11dd7&ts=true\"\nimport script from \"./DiagnosticItem.vue?vue&type=script&lang=ts\"\nexport * from \"./DiagnosticItem.vue?vue&type=script&lang=ts\"\n\nimport \"./DiagnosticItem.vue?vue&type=style&index=0&id=2ff11dd7&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import Vibrator from '@/models/Vibrator';\r\n import DiagnosticItem from '@/components/DiagnosticItem.vue';\r\n\r\n export default defineComponent({\r\n name: 'AppDiagnostic',\r\n components: {\r\n DiagnosticItem: DiagnosticItem,\r\n },\r\n data: () => {\r\n return {\r\n timestamp: 0 as number,\r\n interval: 0 as number,\r\n };\r\n },\r\n computed: {\r\n gamepads: function (): Vibrator[] {\r\n const timestamp: number = this.timestamp;\r\n const result: Vibrator[] = store.getters.gamepads as Vibrator[];\r\n result.forEach((item) => {\r\n item.interval = timestamp;\r\n });\r\n return result;\r\n },\r\n },\r\n methods: {\r\n updateComputed: function (): void {\r\n this.timestamp = Date.now();\r\n },\r\n },\r\n mounted() {\r\n this.interval = setInterval(this.updateComputed, 1);\r\n },\r\n unmounted() {\r\n clearInterval(this.interval);\r\n },\r\n });\r\n","import { render } from \"./AppDiagnostic.vue?vue&type=template&id=3847b974&ts=true\"\nimport script from \"./AppDiagnostic.vue?vue&type=script&lang=ts\"\nexport * from \"./AppDiagnostic.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import AppDiagnostic from '@/components/AppDiagnostic.vue';\r\n\r\n export default defineComponent({\r\n name: 'DiagnosticView',\r\n components: {\r\n AppDiagnostic: AppDiagnostic,\r\n },\r\n });\r\n","import { render } from \"./DiagnosticView.vue?vue&type=template&id=18fa3366&ts=true\"\nimport script from \"./DiagnosticView.vue?vue&type=script&lang=ts\"\nexport * from \"./DiagnosticView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["render","_ctx","_cache","$props","$setup","$data","$options","_component_AppDiagnostic","_resolveComponent","_openBlock","_createBlock","_hoisted_1","key","class","_component_DiagnosticItem","gamepads","length","_createElementBlock","_Fragment","_renderList","gamepad","id","timestamp","_createCommentVNode","_hoisted_2","_createElementVNode","_toDisplayString","unit","index","_normalizeClass","buttons","value","toFixed","axes","vibrationActuator","defineComponent","name","props","type","Object","Number","__exports__","components","DiagnosticItem","data","interval","computed","this","result","store","forEach","item","methods","updateComputed","Date","now","mounted","setInterval","unmounted","clearInterval","AppDiagnostic"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/441.be7aaf75.js b/docs/js/441.be7aaf75.js new file mode 100644 index 0000000..5cd7ef1 --- /dev/null +++ b/docs/js/441.be7aaf75.js @@ -0,0 +1,2 @@ +"use strict";(self["webpackChunkwavelovers"]=self["webpackChunkwavelovers"]||[]).push([[441],{3913:function(t,n,a){var e=a(2482);class s{constructor(t,n,a,s){(0,e.Z)(this,"startDelay",void 0),(0,e.Z)(this,"duration",void 0),(0,e.Z)(this,"weakMagnitude",void 0),(0,e.Z)(this,"strongMagnitude",void 0),this.startDelay=t,this.duration=n,this.weakMagnitude=a,this.strongMagnitude=s}}n["Z"]=s},441:function(t,n,a){a.r(n),a.d(n,{default:function(){return C}});var e=a(3396);function s(t,n,a,s,u,o){const r=(0,e.up)("AppCustom");return(0,e.wg)(),(0,e.j4)(r)}var u=a(9242);const o={class:"content-item app-custom"},r={class:"custom-form"},i={class:"custom-form__input"},l=(0,e._)("span",null,"Start Delay (ms)",-1),d={class:"custom-form__input"},p=(0,e._)("span",null,"Duration (ms)",-1),c={class:"custom-form__input"},m=(0,e._)("span",null,"Weak Magnitude",-1),_={class:"custom-form__input"},g=(0,e._)("span",null,"Strong Magnitude",-1),h={class:"custom-form__buttons"};function f(t,n,a,s,f,w){return(0,e.wg)(),(0,e.iD)("div",o,[(0,e._)("fieldset",r,[(0,e._)("label",i,[l,(0,e.wy)((0,e._)("input",{"onUpdate:modelValue":n[0]||(n[0]=n=>t.startDelay=n),type:"number",placeholder:"Start Delay",min:"0",max:"1000",step:"25",required:""},null,512),[[u.nr,t.startDelay]])]),(0,e._)("label",d,[p,(0,e.wy)((0,e._)("input",{"onUpdate:modelValue":n[1]||(n[1]=n=>t.duration=n),type:"number",placeholder:"Duration",min:"0",max:"1000",step:"25",required:""},null,512),[[u.nr,t.duration]])]),(0,e._)("label",c,[m,(0,e.wy)((0,e._)("input",{"onUpdate:modelValue":n[2]||(n[2]=n=>t.weakMagnitude=n),type:"range",required:"",min:"0.0",max:"1.0",step:"0.01"},null,512),[[u.nr,t.weakMagnitude]])]),(0,e._)("label",_,[g,(0,e.wy)((0,e._)("input",{"onUpdate:modelValue":n[3]||(n[3]=n=>t.strongMagnitude=n),type:"range",required:"",min:"0.0",max:"1.0",step:"0.01"},null,512),[[u.nr,t.strongMagnitude]])]),(0,e._)("div",h,[(0,e._)("button",{onClick:n[4]||(n[4]=(...n)=>t.start&&t.start(...n)),class:"custom-form__button"},"Start"),(0,e._)("button",{onClick:n[5]||(n[5]=(...n)=>t.stop&&t.stop(...n)),class:"custom-form__button"},"Stop")])])])}var w=a(1746),v=a(3913),y=(0,e.aZ)({name:"AppCustom",data:()=>({startDelay:250,duration:250,weakMagnitude:1,strongMagnitude:1}),methods:{start:function(){const t=[new v.Z(this.startDelay,this.duration,this.weakMagnitude,this.strongMagnitude)];w.Z.dispatch("startCustom",t)},stop:function(){w.Z.dispatch("reset")}}}),M=a(89);const b=(0,M.Z)(y,[["render",f]]);var k=b,Z=(0,e.aZ)({name:"CustomView",components:{AppCustom:k}});const D=(0,M.Z)(Z,[["render",s]]);var C=D}}]); +//# sourceMappingURL=441.be7aaf75.js.map \ No newline at end of file diff --git a/docs/js/441.be7aaf75.js.map b/docs/js/441.be7aaf75.js.map new file mode 100644 index 0000000..8465421 --- /dev/null +++ b/docs/js/441.be7aaf75.js.map @@ -0,0 +1 @@ +{"version":3,"file":"js/441.be7aaf75.js","mappings":"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","sources":["webpack://wavelovers/./src/models/PatternUnit.ts","webpack://wavelovers/./src/views/CustomView.vue?2501","webpack://wavelovers/./src/components/AppCustom.vue?d418","webpack://wavelovers/./src/components/AppCustom.vue?08c8","webpack://wavelovers/./src/components/AppCustom.vue","webpack://wavelovers/./src/views/CustomView.vue?8886","webpack://wavelovers/./src/views/CustomView.vue"],"sourcesContent":["import IPatternUnit from \"@/models/IPatternUnit\";\r\n\r\nclass PatternUnit implements IPatternUnit {\r\n\r\n startDelay: number;\r\n duration: number;\r\n weakMagnitude: number;\r\n strongMagnitude: number;\r\n\r\n constructor(\r\n startDelay: number, duration: number,\r\n weakMagnitude: number, strongMagnitude: number\r\n ) {\r\n this.startDelay = startDelay;\r\n this.duration = duration;\r\n this.weakMagnitude = weakMagnitude;\r\n this.strongMagnitude = strongMagnitude;\r\n }\r\n}\r\n\r\nexport default PatternUnit;\r\n\r\n","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AppCustom = _resolveComponent(\"AppCustom\")!\n\n return (_openBlock(), _createBlock(_component_AppCustom))\n}","import { createElementVNode as _createElementVNode, vModelText as _vModelText, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item app-custom\" }\nconst _hoisted_2 = { class: \"custom-form\" }\nconst _hoisted_3 = { class: \"custom-form__input\" }\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Start Delay (ms)\", -1)\nconst _hoisted_5 = { class: \"custom-form__input\" }\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Duration (ms)\", -1)\nconst _hoisted_7 = { class: \"custom-form__input\" }\nconst _hoisted_8 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Weak Magnitude\", -1)\nconst _hoisted_9 = { class: \"custom-form__input\" }\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Strong Magnitude\", -1)\nconst _hoisted_11 = { class: \"custom-form__buttons\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"fieldset\", _hoisted_2, [\n _createElementVNode(\"label\", _hoisted_3, [\n _hoisted_4,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.startDelay) = $event)),\n type: \"number\",\n placeholder: \"Start Delay\",\n min: \"0\",\n max: \"1000\",\n step: \"25\",\n required: \"\"\n }, null, 512), [\n [_vModelText, _ctx.startDelay]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_5, [\n _hoisted_6,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_ctx.duration) = $event)),\n type: \"number\",\n placeholder: \"Duration\",\n min: \"0\",\n max: \"1000\",\n step: \"25\",\n required: \"\"\n }, null, 512), [\n [_vModelText, _ctx.duration]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_7, [\n _hoisted_8,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_ctx.weakMagnitude) = $event)),\n type: \"range\",\n required: \"\",\n min: \"0.0\",\n max: \"1.0\",\n step: \"0.01\"\n }, null, 512), [\n [_vModelText, _ctx.weakMagnitude]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_9, [\n _hoisted_10,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_ctx.strongMagnitude) = $event)),\n type: \"range\",\n required: \"\",\n min: \"0.0\",\n max: \"1.0\",\n step: \"0.01\"\n }, null, 512), [\n [_vModelText, _ctx.strongMagnitude]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"button\", {\n onClick: _cache[4] || (_cache[4] = \n//@ts-ignore\n(...args) => (_ctx.start && _ctx.start(...args))),\n class: \"custom-form__button\"\n }, \"Start\"),\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = \n//@ts-ignore\n(...args) => (_ctx.stop && _ctx.stop(...args))),\n class: \"custom-form__button\"\n }, \"Stop\")\n ])\n ])\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import TPatternUnit from '@/models/TPatternUnit';\r\n import PatternUnit from '@/models/PatternUnit';\r\n\r\n export default defineComponent({\r\n name: 'AppCustom',\r\n data: () => {\r\n return {\r\n startDelay: 250 as number,\r\n duration: 250 as number,\r\n weakMagnitude: 1 as number,\r\n strongMagnitude: 1 as number,\r\n };\r\n },\r\n methods: {\r\n start: function (): void {\r\n const patterns: TPatternUnit[] = [new PatternUnit(\r\n this.startDelay,\r\n this.duration,\r\n this.weakMagnitude,\r\n this.strongMagnitude,\r\n )];\r\n store.dispatch('startCustom', patterns);\r\n },\r\n stop: function (): void {\r\n store.dispatch('reset');\r\n },\r\n },\r\n });\r\n","import { render } from \"./AppCustom.vue?vue&type=template&id=260a57f2&ts=true\"\nimport script from \"./AppCustom.vue?vue&type=script&lang=ts\"\nexport * from \"./AppCustom.vue?vue&type=script&lang=ts\"\n\nimport \"./AppCustom.vue?vue&type=style&index=0&id=260a57f2&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import AppCustom from '@/components/AppCustom.vue';\r\n\r\n export default defineComponent({\r\n name: 'CustomView',\r\n components: {\r\n AppCustom: AppCustom,\r\n },\r\n });\r\n","import { render } from \"./CustomView.vue?vue&type=template&id=28fa2a2f&ts=true\"\nimport script from \"./CustomView.vue?vue&type=script&lang=ts\"\nexport * from \"./CustomView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["PatternUnit","constructor","startDelay","duration","weakMagnitude","strongMagnitude","this","render","_ctx","_cache","$props","$setup","$data","$options","_component_AppCustom","_resolveComponent","_openBlock","_createBlock","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_createElementVNode","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_createElementBlock","_withDirectives","$event","type","placeholder","min","max","step","required","_vModelText","onClick","args","start","stop","defineComponent","name","data","methods","patterns","store","__exports__","components","AppCustom"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/46.c7a9f83c.js b/docs/js/46.c7a9f83c.js deleted file mode 100644 index 504caba..0000000 --- a/docs/js/46.c7a9f83c.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self["webpackChunkwavelovers"]=self["webpackChunkwavelovers"]||[]).push([[46],{9046:function(a,t,n){n.r(t),n.d(t,{default:function(){return S}});var e=n(3396);function u(a,t,n,u,r,l){const s=(0,e.up)("AppManual");return(0,e.wg)(),(0,e.j4)(s)}var r=n(9242);const l={class:"content-item app-manual"},s={class:"manual-form"},o={class:"manual-form__input"},i=(0,e._)("span",null,"Start Delay (ms)",-1),p={class:"manual-form__input"},d=(0,e._)("span",null,"Duration (ms)",-1),m={class:"manual-form__input"},c=(0,e._)("span",null,"Weak Magnitude",-1),_={class:"manual-form__input"},g=(0,e._)("span",null,"Strong Magnitude",-1),f={class:"manual-form__buttons"};function M(a,t,n,u,M,w){return(0,e.wg)(),(0,e.iD)("div",l,[(0,e._)("fieldset",s,[(0,e._)("label",o,[i,(0,e.wy)((0,e._)("input",{"onUpdate:modelValue":t[0]||(t[0]=t=>a.startDelay=t),type:"number",placeholder:"Start Delay",min:"0",max:"1000",step:"25",required:""},null,512),[[r.nr,a.startDelay]])]),(0,e._)("label",p,[d,(0,e.wy)((0,e._)("input",{"onUpdate:modelValue":t[1]||(t[1]=t=>a.duration=t),type:"number",placeholder:"Duration",min:"0",max:"1000",step:"25",required:""},null,512),[[r.nr,a.duration]])]),(0,e._)("label",m,[c,(0,e.wy)((0,e._)("input",{"onUpdate:modelValue":t[2]||(t[2]=t=>a.weakMagnitude=t),type:"range",placeholder:"Weak Magnitude",min:"0.0",max:"1.0",step:"0.01",required:""},null,512),[[r.nr,a.weakMagnitude]])]),(0,e._)("label",_,[g,(0,e.wy)((0,e._)("input",{"onUpdate:modelValue":t[3]||(t[3]=t=>a.strongMagnitude=t),type:"range",placeholder:"Strong Magnitude",min:"0.0",max:"1.0",step:"0.01",required:""},null,512),[[r.nr,a.strongMagnitude]])]),(0,e._)("div",f,[(0,e._)("button",{onClick:t[4]||(t[4]=(...t)=>a.start&&a.start(...t)),class:"manual-form__button"},"Start"),(0,e._)("button",{onClick:t[5]||(t[5]=(...t)=>a.stop&&a.stop(...t)),class:"manual-form__button"},"Stop")])])])}var w=n(1746),h=(0,e.aZ)({name:"AppManual",data:()=>({startDelay:250,duration:250,weakMagnitude:1,strongMagnitude:1}),methods:{createPatternUnit:function(){const a=[{startDelay:this.startDelay,duration:this.duration,weakMagnitude:this.weakMagnitude,strongMagnitude:this.strongMagnitude}];return a},start:function(){w.Z.dispatch("startCustom",this.createPatternUnit())},stop:function(){w.Z.dispatch("reset")}}}),y=n(89);const b=(0,y.Z)(h,[["render",M]]);var k=b,v=(0,e.aZ)({name:"ManualView",components:{AppManual:k}});const D=(0,y.Z)(v,[["render",u]]);var S=D}}]); -//# sourceMappingURL=46.c7a9f83c.js.map \ No newline at end of file diff --git a/docs/js/46.c7a9f83c.js.map b/docs/js/46.c7a9f83c.js.map deleted file mode 100644 index a112578..0000000 --- a/docs/js/46.c7a9f83c.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"js/46.c7a9f83c.js","mappings":"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","sources":["webpack://wavelovers/./src/views/ManualView.vue?28f6","webpack://wavelovers/./src/components/AppManual.vue?7cd6","webpack://wavelovers/./src/components/AppManual.vue?5cf9","webpack://wavelovers/./src/components/AppManual.vue","webpack://wavelovers/./src/views/ManualView.vue?67f9","webpack://wavelovers/./src/views/ManualView.vue"],"sourcesContent":["import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AppManual = _resolveComponent(\"AppManual\")!\n\n return (_openBlock(), _createBlock(_component_AppManual))\n}","import { createElementVNode as _createElementVNode, vModelText as _vModelText, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item app-manual\" }\nconst _hoisted_2 = { class: \"manual-form\" }\nconst _hoisted_3 = { class: \"manual-form__input\" }\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Start Delay (ms)\", -1)\nconst _hoisted_5 = { class: \"manual-form__input\" }\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Duration (ms)\", -1)\nconst _hoisted_7 = { class: \"manual-form__input\" }\nconst _hoisted_8 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Weak Magnitude\", -1)\nconst _hoisted_9 = { class: \"manual-form__input\" }\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Strong Magnitude\", -1)\nconst _hoisted_11 = { class: \"manual-form__buttons\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"fieldset\", _hoisted_2, [\n _createElementVNode(\"label\", _hoisted_3, [\n _hoisted_4,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.startDelay) = $event)),\n type: \"number\",\n placeholder: \"Start Delay\",\n min: \"0\",\n max: \"1000\",\n step: \"25\",\n required: \"\"\n }, null, 512), [\n [_vModelText, _ctx.startDelay]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_5, [\n _hoisted_6,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_ctx.duration) = $event)),\n type: \"number\",\n placeholder: \"Duration\",\n min: \"0\",\n max: \"1000\",\n step: \"25\",\n required: \"\"\n }, null, 512), [\n [_vModelText, _ctx.duration]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_7, [\n _hoisted_8,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_ctx.weakMagnitude) = $event)),\n type: \"range\",\n placeholder: \"Weak Magnitude\",\n min: \"0.0\",\n max: \"1.0\",\n step: \"0.01\",\n required: \"\"\n }, null, 512), [\n [_vModelText, _ctx.weakMagnitude]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_9, [\n _hoisted_10,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_ctx.strongMagnitude) = $event)),\n type: \"range\",\n placeholder: \"Strong Magnitude\",\n min: \"0.0\",\n max: \"1.0\",\n step: \"0.01\",\n required: \"\"\n }, null, 512), [\n [_vModelText, _ctx.strongMagnitude]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"button\", {\n onClick: _cache[4] || (_cache[4] = \n//@ts-ignore\n(...args) => (_ctx.start && _ctx.start(...args))),\n class: \"manual-form__button\"\n }, \"Start\"),\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = \n//@ts-ignore\n(...args) => (_ctx.stop && _ctx.stop(...args))),\n class: \"manual-form__button\"\n }, \"Stop\")\n ])\n ])\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import TPatternUnit from '@/models/TPatternUnit';\r\n\r\n export default defineComponent({\r\n name: 'AppManual',\r\n data: () => {\r\n return {\r\n startDelay: 250 as number,\r\n duration: 250 as number,\r\n weakMagnitude: 1 as number,\r\n strongMagnitude: 1 as number,\r\n };\r\n },\r\n methods: {\r\n createPatternUnit: function (): TPatternUnit[] {\r\n const patternUnit: TPatternUnit[] = [{\r\n startDelay: this.startDelay,\r\n duration: this.duration,\r\n weakMagnitude: this.weakMagnitude,\r\n strongMagnitude: this.strongMagnitude,\r\n }];\r\n return patternUnit as TPatternUnit[];\r\n },\r\n start: function (): void {\r\n store.dispatch('startCustom', this.createPatternUnit());\r\n },\r\n stop: function (): void {\r\n store.dispatch('reset');\r\n },\r\n },\r\n });\r\n","import { render } from \"./AppManual.vue?vue&type=template&id=3856b41a&ts=true\"\nimport script from \"./AppManual.vue?vue&type=script&lang=ts\"\nexport * from \"./AppManual.vue?vue&type=script&lang=ts\"\n\nimport \"./AppManual.vue?vue&type=style&index=0&id=3856b41a&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import AppManual from '@/components/AppManual.vue';\r\n\r\n export default defineComponent({\r\n name: 'ManualView',\r\n components: {\r\n AppManual: AppManual,\r\n },\r\n });\r\n","import { render } from \"./ManualView.vue?vue&type=template&id=66794a10&ts=true\"\nimport script from \"./ManualView.vue?vue&type=script&lang=ts\"\nexport * from \"./ManualView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["render","_ctx","_cache","$props","$setup","$data","$options","_component_AppManual","_resolveComponent","_openBlock","_createBlock","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_createElementVNode","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_createElementBlock","_withDirectives","$event","startDelay","type","placeholder","min","max","step","required","_vModelText","duration","weakMagnitude","strongMagnitude","onClick","args","start","stop","defineComponent","name","data","methods","createPatternUnit","patternUnit","this","store","__exports__","components","AppManual"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/554.0d3dfa8b.js.map b/docs/js/554.0d3dfa8b.js.map deleted file mode 100644 index 542b0f7..0000000 --- a/docs/js/554.0d3dfa8b.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"js/554.0d3dfa8b.js","mappings":"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","sources":["webpack://wavelovers/./src/views/DiagnosticView.vue?4dbd","webpack://wavelovers/./src/components/AppDiagnostic.vue?fa67","webpack://wavelovers/./src/components/DiagnosticItem.vue?f20a","webpack://wavelovers/./src/components/DiagnosticItem.vue?0e90","webpack://wavelovers/./src/components/DiagnosticItem.vue","webpack://wavelovers/./src/components/AppDiagnostic.vue?1eec","webpack://wavelovers/./src/components/AppDiagnostic.vue","webpack://wavelovers/./src/views/DiagnosticView.vue?a628","webpack://wavelovers/./src/views/DiagnosticView.vue"],"sourcesContent":["import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AppDiagnostic = _resolveComponent(\"AppDiagnostic\")!\n\n return (_openBlock(), _createBlock(_component_AppDiagnostic))\n}","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"content-item\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_DiagnosticItem = _resolveComponent(\"DiagnosticItem\")!\n\n return (_ctx.gamepads.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.gamepads, (gamepad) => {\n return (_openBlock(), _createBlock(_component_DiagnosticItem, {\n key: gamepad.id,\n gamepad: gamepad,\n timestamp: _ctx.timestamp\n }, null, 8, [\"gamepad\", \"timestamp\"]))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"output-gamepad\" }\nconst _hoisted_2 = { class: \"gamepad-group\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"h3\", null, \"#\" + _toDisplayString(_ctx.gamepad.unit.index + 1) + \". \" + _toDisplayString(_ctx.gamepad.unit.id), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[0].value === 1 ? 'pressed' : '' ])\n }, \"A: \" + _toDisplayString(_ctx.gamepad.unit.buttons[0].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.gamepad.unit.buttons[1].value === 1 ? 'pressed' : '' ])\n }, \"B: \" + _toDisplayString(_ctx.gamepad.unit.buttons[1].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[2].value === 1 ? 'pressed' : '' ])\n }, \"X: \" + _toDisplayString(_ctx.gamepad.unit.buttons[2].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[3].value === 1 ? 'pressed' : '' ])\n }, \"Y: \" + _toDisplayString(_ctx.gamepad.unit.buttons[3].value.toFixed(2)), 3)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[4].value === 1 ? 'pressed' : '' ])\n }, \"LB: \" + _toDisplayString(_ctx.gamepad.unit.buttons[4].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[5].value === 1 ? 'pressed' : '' ])\n }, \"RB: \" + _toDisplayString(_ctx.gamepad.unit.buttons[5].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[6].value === 1 ? 'pressed' : '' ])\n }, \"LT: \" + _toDisplayString(_ctx.gamepad.unit.buttons[6].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[7].value === 1 ? 'pressed' : '' ])\n }, \"RT: \" + _toDisplayString(_ctx.gamepad.unit.buttons[7].value.toFixed(2)), 3)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[8].value === 1 ? 'pressed' : '' ])\n }, \"Back: \" + _toDisplayString(_ctx.gamepad.unit.buttons[8].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[9].value === 1 ? 'pressed' : '' ])\n }, \"Start: \" + _toDisplayString(_ctx.gamepad.unit.buttons[9].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[10].value === 1 ? 'pressed' : '' ])\n }, \"Left Stick: \" + _toDisplayString(_ctx.gamepad.unit.buttons[10].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[11].value === 1 ? 'pressed' : '' ])\n }, \"Right Stick: \" + _toDisplayString(_ctx.gamepad.unit.buttons[11].value.toFixed(2)), 3)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[12].value === 1 ? 'pressed' : '' ])\n }, \"Forward: \" + _toDisplayString(_ctx.gamepad.unit.buttons[12].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[13].value === 1 ? 'pressed' : '' ])\n }, \"Backward: \" + _toDisplayString(_ctx.gamepad.unit.buttons[13].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[14].value === 1 ? 'pressed' : '' ])\n }, \"Left: \" + _toDisplayString(_ctx.gamepad.unit.buttons[14].value.toFixed(2)), 3),\n _createElementVNode(\"span\", {\n class: _normalizeClass([ _ctx.gamepad.unit.buttons[15].value === 1 ? 'pressed' : '' ])\n }, \"Right: \" + _toDisplayString(_ctx.gamepad.unit.buttons[15].value.toFixed(2)), 3)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", null, \"Left Stick X: \" + _toDisplayString(_ctx.gamepad.unit.axes[0] ? _ctx.gamepad.unit.axes[0].toFixed(2) : 'missing'), 1),\n _createElementVNode(\"span\", null, \"Left Stick Y: \" + _toDisplayString(_ctx.gamepad.unit.axes[1] ? _ctx.gamepad.unit.axes[1].toFixed(2) : 'missing'), 1),\n _createElementVNode(\"span\", null, \"Right Stick X: \" + _toDisplayString(_ctx.gamepad.unit.axes[2] ? _ctx.gamepad.unit.axes[2].toFixed(2) : 'missing'), 1),\n _createElementVNode(\"span\", null, \"Right Stick Y: \" + _toDisplayString(_ctx.gamepad.unit.axes[3] ? _ctx.gamepad.unit.axes[3].toFixed(2) : 'missing'), 1)\n ])\n ]),\n _createElementVNode(\"span\", null, \"Vibration Actuator: \" + _toDisplayString(_ctx.gamepad.unit.vibrationActuator ? 'Available' : 'missing'), 1)\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'DiagnosticItem',\r\n props: {\r\n gamepad: {\r\n type: Object,\r\n },\r\n timestamp: {\r\n type: Number,\r\n },\r\n },\r\n });\r\n","import { render } from \"./DiagnosticItem.vue?vue&type=template&id=2ff11dd7&ts=true\"\nimport script from \"./DiagnosticItem.vue?vue&type=script&lang=ts\"\nexport * from \"./DiagnosticItem.vue?vue&type=script&lang=ts\"\n\nimport \"./DiagnosticItem.vue?vue&type=style&index=0&id=2ff11dd7&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import Vibrator from '@/models/Vibrator';\r\n import DiagnosticItem from '@/components/DiagnosticItem.vue';\r\n\r\n export default defineComponent({\r\n name: 'AppDiagnostic',\r\n components: {\r\n DiagnosticItem: DiagnosticItem,\r\n },\r\n data: () => {\r\n return {\r\n timestamp: 0 as number,\r\n interval: 0 as number,\r\n };\r\n },\r\n computed: {\r\n gamepads: function (): Vibrator[] {\r\n const timestamp: number = this.timestamp;\r\n const result: Vibrator[] = store.getters.gamepads as Vibrator[];\r\n result.forEach((item) => {\r\n item.interval = timestamp;\r\n })\r\n return result;\r\n },\r\n },\r\n methods: {\r\n updateTimestamp: function (): void {\r\n this.timestamp = Date.now();\r\n },\r\n },\r\n mounted() {\r\n this.interval = setInterval(this.updateTimestamp, 1);\r\n },\r\n unmounted() {\r\n clearInterval(this.interval);\r\n },\r\n });\r\n","import { render } from \"./AppDiagnostic.vue?vue&type=template&id=064d7da3&ts=true\"\nimport script from \"./AppDiagnostic.vue?vue&type=script&lang=ts\"\nexport * from \"./AppDiagnostic.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import AppDiagnostic from '@/components/AppDiagnostic.vue';\r\n\r\n export default defineComponent({\r\n name: 'DiagnosticView',\r\n components: {\r\n AppDiagnostic: AppDiagnostic,\r\n },\r\n });\r\n","import { render } from \"./DiagnosticView.vue?vue&type=template&id=18fa3366&ts=true\"\nimport script from \"./DiagnosticView.vue?vue&type=script&lang=ts\"\nexport * from \"./DiagnosticView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["render","_ctx","_cache","$props","$setup","$data","$options","_component_AppDiagnostic","_resolveComponent","_openBlock","_createBlock","_hoisted_1","key","class","_component_DiagnosticItem","gamepads","length","_createElementBlock","_Fragment","_renderList","gamepad","id","timestamp","_createCommentVNode","_hoisted_2","_createElementVNode","_toDisplayString","unit","index","_normalizeClass","buttons","value","toFixed","axes","vibrationActuator","defineComponent","name","props","type","Object","Number","__exports__","components","DiagnosticItem","data","interval","computed","this","result","store","forEach","item","methods","updateTimestamp","Date","now","mounted","setInterval","unmounted","clearInterval","AppDiagnostic"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/567.1165d9e5.js b/docs/js/567.681eca51.js similarity index 92% rename from docs/js/567.1165d9e5.js rename to docs/js/567.681eca51.js index cd2875d..19c2378 100644 --- a/docs/js/567.1165d9e5.js +++ b/docs/js/567.681eca51.js @@ -1,2 +1,2 @@ "use strict";(self["webpackChunkwavelovers"]=self["webpackChunkwavelovers"]||[]).push([[567],{7567:function(n,e,t){t.r(e),t.d(e,{default:function(){return i}});var u=t(3396);const r={class:"content-item"},a=(0,u._)("h2",null,"404. Page not Found...",-1);function o(n,e,t,o,c,s){const l=(0,u.up)("center");return(0,u.wg)(),(0,u.iD)("div",r,[(0,u.Wm)(l,null,{default:(0,u.w5)((()=>[a])),_:1})])}var c=(0,u.aZ)({name:"NotFoundView"}),s=t(89);const l=(0,s.Z)(c,[["render",o]]);var i=l}}]); -//# sourceMappingURL=567.1165d9e5.js.map \ No newline at end of file +//# sourceMappingURL=567.681eca51.js.map \ No newline at end of file diff --git a/docs/js/567.1165d9e5.js.map b/docs/js/567.681eca51.js.map similarity index 97% rename from docs/js/567.1165d9e5.js.map rename to docs/js/567.681eca51.js.map index 2e1d9d9..5c23a32 100644 --- a/docs/js/567.1165d9e5.js.map +++ b/docs/js/567.681eca51.js.map @@ -1 +1 @@ -{"version":3,"file":"js/567.1165d9e5.js","mappings":"8KAEA,MAAMA,EAAa,CAAEC,MAAO,gBACtBC,GAA0BC,EAAAA,EAAAA,GAAoB,KAAM,KAAM,0BAA2B,GAErF,SAAUC,EAAOC,EAAUC,EAAYC,EAAYC,EAAYC,EAAWC,GAC9E,MAAMC,GAAoBC,EAAAA,EAAAA,IAAkB,UAE5C,OAAQC,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAoB,MAAOd,EAAY,EAC3De,EAAAA,EAAAA,IAAaJ,EAAmB,KAAM,CACpCK,SAASC,EAAAA,EAAAA,KAAS,IAAM,CACtBf,KAEFgB,EAAG,KAGR,CCbG,OAAeC,EAAAA,EAAAA,IAAgB,CAC3BC,KAAM,iB,QCCd,MAAMC,GAA2B,OAAgB,EAAQ,CAAC,CAAC,SAASjB,KAEpE,O","sources":["webpack://wavelovers/./src/views/NotFoundView.vue?e76c","webpack://wavelovers/./src/views/NotFoundView.vue?6f3f","webpack://wavelovers/./src/views/NotFoundView.vue"],"sourcesContent":["import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item\" }\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"h2\", null, \"404. Page not Found...\", -1)\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_center = _resolveComponent(\"center\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_center, null, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n })\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'NotFoundView',\r\n });\r\n","import { render } from \"./NotFoundView.vue?vue&type=template&id=e1bb3c6a&ts=true\"\nimport script from \"./NotFoundView.vue?vue&type=script&lang=ts\"\nexport * from \"./NotFoundView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_createElementVNode","render","_ctx","_cache","$props","$setup","$data","$options","_component_center","_resolveComponent","_openBlock","_createElementBlock","_createVNode","default","_withCtx","_","defineComponent","name","__exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/567.681eca51.js","mappings":"8KAEA,MAAMA,EAAa,CAAEC,MAAO,gBACtBC,GAA0BC,EAAAA,EAAAA,GAAoB,KAAM,KAAM,0BAA2B,GAErF,SAAUC,EAAOC,EAAUC,EAAYC,EAAYC,EAAYC,EAAWC,GAC9E,MAAMC,GAAoBC,EAAAA,EAAAA,IAAkB,UAE5C,OAAQC,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAoB,MAAOd,EAAY,EAC3De,EAAAA,EAAAA,IAAaJ,EAAmB,KAAM,CACpCK,SAASC,EAAAA,EAAAA,KAAS,IAAM,CACtBf,KAEFgB,EAAG,KAGR,CCbG,OAAeC,EAAAA,EAAAA,IAAgB,CAC3BC,KAAM,iB,QCCd,MAAMC,GAA2B,OAAgB,EAAQ,CAAC,CAAC,SAASjB,KAEpE,O","sources":["webpack://wavelovers/./src/views/NotFoundView.vue?e76c","webpack://wavelovers/./src/views/NotFoundView.vue?6f3f","webpack://wavelovers/./src/views/NotFoundView.vue"],"sourcesContent":["import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item\" }\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"h2\", null, \"404. Page not Found...\", -1)\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_center = _resolveComponent(\"center\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_center, null, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n })\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'NotFoundView',\r\n });\r\n","import { render } from \"./NotFoundView.vue?vue&type=template&id=e1bb3c6a&ts=true\"\nimport script from \"./NotFoundView.vue?vue&type=script&lang=ts\"\nexport * from \"./NotFoundView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_createElementVNode","render","_ctx","_cache","$props","$setup","$data","$options","_component_center","_resolveComponent","_openBlock","_createElementBlock","_createVNode","default","_withCtx","_","defineComponent","name","__exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/941.6295b5fd.js b/docs/js/941.6295b5fd.js new file mode 100644 index 0000000..94dd44c --- /dev/null +++ b/docs/js/941.6295b5fd.js @@ -0,0 +1,2 @@ +"use strict";(self["webpackChunkwavelovers"]=self["webpackChunkwavelovers"]||[]).push([[941],{3913:function(t,a,e){var s=e(2482);class n{constructor(t,a,e,n){(0,s.Z)(this,"startDelay",void 0),(0,s.Z)(this,"duration",void 0),(0,s.Z)(this,"weakMagnitude",void 0),(0,s.Z)(this,"strongMagnitude",void 0),this.startDelay=t,this.duration=a,this.weakMagnitude=e,this.strongMagnitude=n}}a["Z"]=n},8941:function(t,a,e){e.r(a),e.d(a,{default:function(){return w}});var s=e(3396);function n(t,a,e,n,i,d){const u=(0,s.up)("AppManual");return(0,s.wg)(),(0,s.j4)(u)}var i=e(9242);const d={class:"content-item app-manual"},u={class:"manual-form__input"},o=(0,s._)("span",null,"Weak Magnitude",-1),r={class:"manual-form__input"},p=(0,s._)("span",null,"Strong Magnitude",-1),h=(0,s.uE)('
RT – Vibrate
A – Light Mode
X – Heavy Mode
Y – Combined Mode
B – Lock
',1);function l(t,a,e,n,l,g){return(0,s.wg)(),(0,s.iD)("div",d,[(0,s._)("label",u,[o,(0,s.wy)((0,s._)("input",{"onUpdate:modelValue":a[0]||(a[0]=a=>t.weakMagnitude=a),type:"range",required:"",disabled:"",min:"0.0",max:"1.0",step:"0.01"},null,512),[[i.nr,t.weakMagnitude]])]),(0,s._)("label",r,[p,(0,s.wy)((0,s._)("input",{"onUpdate:modelValue":a[1]||(a[1]=a=>t.strongMagnitude=a),type:"range",required:"",disabled:"",min:"0.0",max:"1.0",step:"0.01"},null,512),[[i.nr,t.strongMagnitude]])]),h])}var g=e(1746),m=e(3913),c=(0,s.aZ)({name:"AppCustom",data:()=>({timestamp:0,interval:0,mode:0,lock:!1,startDelay:0,duration:260,weakMagnitude:0,strongMagnitude:0}),computed:{gamepads:function(){const t=this.timestamp,a=g.Z.getters.gamepads;return a.forEach((a=>{a.interval=t})),a}},methods:{start:function(){const t=new m.Z(this.startDelay,this.duration,this.weakMagnitude,this.strongMagnitude);g.Z.dispatch("vibrate",t)},stop:function(){g.Z.dispatch("setIsActive",!1),g.Z.dispatch("setMode",0),g.Z.dispatch("reset")},eventLoop:function(){this.updateComputed(),this.updateMode(),this.updatePattern(),this.handle()},updateComputed:function(){this.timestamp=Date.now()},updateMode:function(){this.gamepads.length>0&&(!0===this.gamepads[0].unit.buttons[1].pressed&&(this.lock=!this.lock),!1===this.lock&&(!0===this.gamepads[0].unit.buttons[0].pressed&&(this.mode=0),!0===this.gamepads[0].unit.buttons[2].pressed&&(this.mode=1),!0===this.gamepads[0].unit.buttons[3].pressed&&(this.mode=2)))},updatePattern:function(){this.gamepads.length>0&&!1===this.lock&&(0===this.mode&&(this.weakMagnitude=this.gamepads[0].unit.buttons[7].value,this.strongMagnitude=this.gamepads[0].unit.buttons[7].value),1===this.mode&&(this.weakMagnitude=0,this.strongMagnitude=this.gamepads[0].unit.buttons[7].value),2===this.mode&&(this.weakMagnitude=this.gamepads[0].unit.buttons[7].value,this.strongMagnitude=0))},handle:function(){this.gamepads.length>0&&this.gamepads.forEach((t=>{t.unit.buttons[7].value>0||!0===this.lock?this.start():this.stop()}))}},mounted(){this.interval=setInterval(this.eventLoop,250)},unmounted(){clearInterval(this.interval)}}),v=e(89);const k=(0,v.Z)(c,[["render",l]]);var M=k,b=(0,s.aZ)({name:"ManualView",components:{AppManual:M}});const f=(0,v.Z)(b,[["render",n]]);var w=f}}]); +//# sourceMappingURL=941.6295b5fd.js.map \ No newline at end of file diff --git a/docs/js/941.6295b5fd.js.map b/docs/js/941.6295b5fd.js.map new file mode 100644 index 0000000..23da3b8 --- /dev/null +++ b/docs/js/941.6295b5fd.js.map @@ -0,0 +1 @@ +{"version":3,"file":"js/941.6295b5fd.js","mappings":"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","sources":["webpack://wavelovers/./src/models/PatternUnit.ts","webpack://wavelovers/./src/views/ManualView.vue?28f6","webpack://wavelovers/./src/components/AppManual.vue?6f56","webpack://wavelovers/./src/components/AppManual.vue?5cf9","webpack://wavelovers/./src/components/AppManual.vue","webpack://wavelovers/./src/views/ManualView.vue?67f9","webpack://wavelovers/./src/views/ManualView.vue"],"sourcesContent":["import IPatternUnit from \"@/models/IPatternUnit\";\r\n\r\nclass PatternUnit implements IPatternUnit {\r\n\r\n startDelay: number;\r\n duration: number;\r\n weakMagnitude: number;\r\n strongMagnitude: number;\r\n\r\n constructor(\r\n startDelay: number, duration: number,\r\n weakMagnitude: number, strongMagnitude: number\r\n ) {\r\n this.startDelay = startDelay;\r\n this.duration = duration;\r\n this.weakMagnitude = weakMagnitude;\r\n this.strongMagnitude = strongMagnitude;\r\n }\r\n}\r\n\r\nexport default PatternUnit;\r\n\r\n","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AppManual = _resolveComponent(\"AppManual\")!\n\n return (_openBlock(), _createBlock(_component_AppManual))\n}","import { createElementVNode as _createElementVNode, vModelText as _vModelText, withDirectives as _withDirectives, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item app-manual\" }\nconst _hoisted_2 = { class: \"manual-form__input\" }\nconst _hoisted_3 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Weak Magnitude\", -1)\nconst _hoisted_4 = { class: \"manual-form__input\" }\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Strong Magnitude\", -1)\nconst _hoisted_6 = /*#__PURE__*/_createStaticVNode(\"
RT – Vibrate
A – Light Mode
X – Heavy Mode
Y – Combined Mode
B – Lock
\", 1)\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"label\", _hoisted_2, [\n _hoisted_3,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.weakMagnitude) = $event)),\n type: \"range\",\n required: \"\",\n disabled: \"\",\n min: \"0.0\",\n max: \"1.0\",\n step: \"0.01\"\n }, null, 512), [\n [_vModelText, _ctx.weakMagnitude]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_4, [\n _hoisted_5,\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_ctx.strongMagnitude) = $event)),\n type: \"range\",\n required: \"\",\n disabled: \"\",\n min: \"0.0\",\n max: \"1.0\",\n step: \"0.01\"\n }, null, 512), [\n [_vModelText, _ctx.strongMagnitude]\n ])\n ]),\n _hoisted_6\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import Vibrator from '@/models/Vibrator';\r\n import TPatternUnit from '@/models/TPatternUnit';\r\n import PatternUnit from '@/models/PatternUnit';\r\n\r\n export default defineComponent({\r\n name: 'AppCustom',\r\n data: () => {\r\n return {\r\n timestamp: 0 as number,\r\n interval: 0 as number,\r\n mode: 0 as number,\r\n lock: false as boolean,\r\n startDelay: 0 as number,\r\n duration: 260 as number,\r\n weakMagnitude: 0 as number,\r\n strongMagnitude: 0 as number,\r\n };\r\n },\r\n computed: {\r\n gamepads: function (): Vibrator[] {\r\n const timestamp: number = this.timestamp;\r\n const result: Vibrator[] = store.getters.gamepads as Vibrator[];\r\n result.forEach((item) => {\r\n item.interval = timestamp;\r\n })\r\n return result;\r\n },\r\n },\r\n methods: {\r\n start: function (): void {\r\n const pattern: TPatternUnit = new PatternUnit(\r\n this.startDelay,\r\n this.duration,\r\n this.weakMagnitude,\r\n this.strongMagnitude,\r\n );\r\n store.dispatch('vibrate', pattern);\r\n },\r\n stop: function (): void {\r\n store.dispatch('setIsActive', false);\r\n store.dispatch('setMode', 0);\r\n store.dispatch('reset');\r\n },\r\n eventLoop: function (): void {\r\n this.updateComputed();\r\n this.updateMode();\r\n this.updatePattern();\r\n this.handle();\r\n },\r\n updateComputed: function (): void {\r\n this.timestamp = Date.now();\r\n },\r\n updateMode: function (): void {\r\n if (this.gamepads.length > 0) {\r\n if (this.gamepads[0].unit.buttons[1].pressed === true) {\r\n this.lock = !this.lock;\r\n }\r\n if (this.lock === false) {\r\n if (this.gamepads[0].unit.buttons[0].pressed === true) {\r\n this.mode = 0;\r\n }\r\n if (this.gamepads[0].unit.buttons[2].pressed === true) {\r\n this.mode = 1;\r\n }\r\n if (this.gamepads[0].unit.buttons[3].pressed === true) {\r\n this.mode = 2;\r\n }\r\n }\r\n }\r\n },\r\n updatePattern: function (): void {\r\n if (this.gamepads.length > 0) {\r\n if (this.lock === false) {\r\n if (this.mode === 0) {\r\n this.weakMagnitude = this.gamepads[0].unit.buttons[7].value;\r\n this.strongMagnitude = this.gamepads[0].unit.buttons[7].value;\r\n }\r\n if (this.mode === 1) {\r\n this.weakMagnitude = 0;\r\n this.strongMagnitude = this.gamepads[0].unit.buttons[7].value;\r\n }\r\n if (this.mode === 2) {\r\n this.weakMagnitude = this.gamepads[0].unit.buttons[7].value;\r\n this.strongMagnitude = 0;\r\n }\r\n }\r\n }\r\n },\r\n handle: function (): void {\r\n if (this.gamepads.length > 0) {\r\n this.gamepads.forEach((gamepad) => {\r\n if (gamepad.unit.buttons[7].value > 0 || this.lock === true) {\r\n this.start();\r\n } else {\r\n this.stop();\r\n }\r\n });\r\n }\r\n },\r\n },\r\n mounted() {\r\n this.interval = setInterval(this.eventLoop, 250);\r\n },\r\n unmounted() {\r\n clearInterval(this.interval);\r\n },\r\n });\r\n","import { render } from \"./AppManual.vue?vue&type=template&id=397a7ec5&ts=true\"\nimport script from \"./AppManual.vue?vue&type=script&lang=ts\"\nexport * from \"./AppManual.vue?vue&type=script&lang=ts\"\n\nimport \"./AppManual.vue?vue&type=style&index=0&id=397a7ec5&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import AppManual from '@/components/AppManual.vue';\r\n\r\n export default defineComponent({\r\n name: 'ManualView',\r\n components: {\r\n AppManual: AppManual,\r\n },\r\n });\r\n","import { render } from \"./ManualView.vue?vue&type=template&id=66794a10&ts=true\"\nimport script from \"./ManualView.vue?vue&type=script&lang=ts\"\nexport * from \"./ManualView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["PatternUnit","constructor","startDelay","duration","weakMagnitude","strongMagnitude","this","render","_ctx","_cache","$props","$setup","$data","$options","_component_AppManual","_resolveComponent","_openBlock","_createBlock","_hoisted_1","class","_hoisted_2","_hoisted_3","_createElementVNode","_hoisted_4","_hoisted_5","_hoisted_6","_createStaticVNode","_createElementBlock","_withDirectives","$event","type","required","disabled","min","max","step","_vModelText","defineComponent","name","data","timestamp","interval","mode","lock","computed","gamepads","result","store","forEach","item","methods","start","pattern","stop","eventLoop","updateComputed","updateMode","updatePattern","handle","Date","now","length","unit","buttons","pressed","value","gamepad","mounted","setInterval","unmounted","clearInterval","__exports__","components","AppManual"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/app.26b99067.js b/docs/js/app.26b99067.js deleted file mode 100644 index e44b6b0..0000000 --- a/docs/js/app.26b99067.js +++ /dev/null @@ -1,2 +0,0 @@ -(function(){"use strict";var t={2892:function(t,e,n){var a=n(9242),i=n(3396);const r={class:"wavelovers"},s=(0,i.Uk)("Press any gamepad button or connect a new gamepad to vibrate.");function o(t,e,n,a,o,c){const u=(0,i.up)("NavigationList"),d=(0,i.up)("router-view"),p=(0,i.up)("GamepadList"),m=(0,i.up)("MessageItem");return(0,i.wg)(),(0,i.iD)("div",r,[(0,i.Wm)(u),(0,i.Wm)(d),t.gamepads.length>0?((0,i.wg)(),(0,i.j4)(p,{key:0,gamepads:t.gamepads},null,8,["gamepads"])):((0,i.wg)(),(0,i.j4)(m,{key:1},{default:(0,i.w5)((()=>[s])),_:1}))])}var c=n(1746);const u={class:"content-item navigation-list"},d=(0,i.Uk)("Manual"),p=(0,i.Uk)("Patterns"),m=(0,i.Uk)("Diagnostic");function l(t,e,n,a,r,s){const o=(0,i.up)("router-link");return(0,i.wg)(),(0,i.iD)("div",u,[(0,i.Wm)(o,{to:"/manual",class:"navigation-item"},{default:(0,i.w5)((()=>[d])),_:1}),(0,i.Wm)(o,{to:"/",class:"navigation-item"},{default:(0,i.w5)((()=>[p])),_:1}),(0,i.Wm)(o,{to:"/diagnostic",class:"navigation-item"},{default:(0,i.w5)((()=>[m])),_:1})])}var f=(0,i.aZ)({name:"NavigationList"}),v=n(89);const g=(0,v.Z)(f,[["render",l]]);var h=g,w=n(7139);const b={class:"content-item device-list"};function y(t,e,n,a,r,s){const o=(0,i.up)("GamepadItem");return(0,i.wg)(),(0,i.iD)("div",b,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(t.gamepads,(t=>((0,i.wg)(),(0,i.j4)(o,{key:t.id,textContent:(0,w.zw)(t.unit.id)},null,8,["textContent"])))),128))])}const A={class:"list-item"};function Z(t,e,n,a,r,s){return(0,i.wg)(),(0,i.iD)("div",A)}var k=(0,i.aZ)({name:"GamepadItem"});const C=(0,v.Z)(k,[["render",Z]]);var _=C,P=(0,i.aZ)({name:"GamepadList",props:{gamepads:{type:Array}},components:{GamepadItem:_}});const E=(0,v.Z)(P,[["render",y]]);var L=E;const j={class:"content-item message"};function I(t,e,n,a,r,s){return(0,i.wg)(),(0,i.iD)("div",j,[(0,i._)("span",null,[(0,i.WI)(t.$slots,"default")])])}var x=(0,i.aZ)({name:"MessageItem"});const G=(0,v.Z)(x,[["render",I]]);var M=G,O=(0,i.aZ)({name:"App",components:{NavigationList:h,GamepadList:L,MessageItem:M},computed:{gamepads:function(){return c.Z.getters.gamepads}},methods:{addEventListeners(){window.addEventListener("gamepadconnected",(t=>c.Z.dispatch("addGamepad",t))),window.addEventListener("gamepaddisconnected",(t=>c.Z.dispatch("deleteGamepad",t)))},removeEventListeners(){window.removeEventListener("gamepadconnected",(t=>c.Z.dispatch("addGamepad",t))),window.removeEventListener("gamepaddisconnected",(t=>c.Z.dispatch("deleteGamepad",t)))}},mounted(){this.addEventListeners()},unmounted(){this.removeEventListeners()}});const D=(0,v.Z)(O,[["render",o]]);var N=D,T=n(2483);function S(t,e,n,a,r,s){const o=(0,i.up)("AppPatterns");return(0,i.wg)(),(0,i.j4)(o)}const V={class:"app-patterns"},U=(0,i.Uk)("Loading...");function W(t,e,n,a,r,s){const o=(0,i.up)("PatternList"),c=(0,i.up)("MessageItem");return(0,i.wg)(),(0,i.iD)("div",V,[t.patterns.length>0?((0,i.wg)(),(0,i.j4)(o,{key:0,patterns:t.patterns,mode:t.mode,isActive:t.isActive,onChange:t.change},null,8,["patterns","mode","isActive","onChange"])):((0,i.wg)(),(0,i.j4)(c,{key:1},{default:(0,i.w5)((()=>[U])),_:1}))])}const B={class:"content-item pattern-list"};function z(t,e,n,a,r,s){const o=(0,i.up)("PatternItem");return(0,i.wg)(),(0,i.iD)("div",B,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(t.patterns,((e,n)=>((0,i.wg)(),(0,i.j4)(o,{key:e.name,pattern:e,index:n,mode:t.mode,isActive:t.isActive,onChange:t.change},null,8,["pattern","index","mode","isActive","onChange"])))),128))])}const F=["textContent"],H={class:"pattern-item__info-container"},K=["textContent"],$=["textContent"];function q(t,e,n,a,r,s){return(0,i.wg)(),(0,i.iD)("div",{onClick:e[0]||(e[0]=e=>t.change(t.index)),class:(0,w.C_)(["pattern-item",t.index===t.mode&&!0===t.isActive?"pattern-item_selected":""])},[(0,i._)("span",{class:"pattern-item__icon",textContent:(0,w.zw)(t.pattern.icon)},null,8,F),(0,i._)("div",H,[(0,i._)("span",{class:"pattern-item__name",textContent:(0,w.zw)(t.pattern.name)},null,8,K),(0,i._)("span",{class:"pattern-item__type",textContent:(0,w.zw)(t.pattern.type)},null,8,$)])],2)}var Y=(0,i.aZ)({name:"PatternItem",props:{pattern:{type:Object},index:{type:Number},mode:{type:Number},isActive:{type:Boolean}},methods:{change:function(t){this.$emit("change",t)}}});const J=(0,v.Z)(Y,[["render",q]]);var Q=J,R=(0,i.aZ)({name:"PatternList",props:{patterns:{type:Array},mode:{type:Number},isActive:{type:Boolean}},components:{PatternItem:Q},methods:{change:function(t){this.$emit("change",t)}}});const X=(0,v.Z)(R,[["render",z]]);var tt=X,et=(0,i.aZ)({name:"AppPatterns",components:{PatternList:tt,MessageItem:M},computed:{patterns:function(){return c.Z.getters.patterns},mode:function(){return c.Z.getters.mode},isActive:function(){return c.Z.getters.isActive}},methods:{change(t){c.Z.dispatch("change",t)}},mounted(){c.Z.dispatch("loadPatterns")}});const nt=(0,v.Z)(et,[["render",W]]);var at=nt,it=(0,i.aZ)({name:"PatternsView",components:{AppPatterns:at}});const rt=(0,v.Z)(it,[["render",S]]);var st=rt;const ot=[{path:"/",name:"patterns-view",component:st},{path:"/manual",name:"manual-view",component:()=>n.e(46).then(n.bind(n,9046))},{path:"/diagnostic",name:"diagnostic-view",component:()=>n.e(554).then(n.bind(n,4554))},{path:"/404",name:"404",component:()=>n.e(567).then(n.bind(n,7567))},{path:"/:catchAll(.*)",redirect:"/404"}],ct=(0,T.p7)({history:(0,T.PO)("/"),routes:ot});var ut=ct;(0,a.ri)(N).use(c.Z).use(ut).mount("#app")},1746:function(t,e,n){n.d(e,{Z:function(){return m}});var a=n(65),i=n(2482);class r{constructor(t){(0,i.Z)(this,"id",void 0),(0,i.Z)(this,"canVibrate",void 0),(0,i.Z)(this,"isVibrating",void 0),(0,i.Z)(this,"unit",void 0),(0,i.Z)(this,"interval",void 0),this.unit=t,this.id=Date.now(),this.canVibrate=!!this.unit.vibrationActuator,this.isVibrating=!1,this.update=this.update.bind(this),this.interval=setInterval(this.update,1)}update(){const t=navigator.getGamepads();this.unit=t[this.unit.index]}reset(){this.isVibrating=!1,this.unit.vibrationActuator.reset()}async vibrate(t){this.isVibrating=!0;const e=10;while(!0===this.isVibrating)for(let n=0;nsetTimeout(e,t)))}}var s=r;const o={state:()=>({gamepads:[]}),getters:{gamepads:function(t){return t.gamepads}},mutations:{addGamepad:function(t,e){t.gamepads.push(e)},deleteGamepad:function(t,e){t.gamepads.splice(e,1)}},actions:{addGamepad:function(t,e){const n=e;t.getters.gamepads.length>=1||t.commit("addGamepad",new s(n.gamepad))},deleteGamepad:function(t,e){t.getters.gamepads.forEach(((n,a)=>{n.unit.id===e.gamepad.id&&t.commit("deleteGamepad",a)}))},vibrate:function(t,e){t.getters.gamepads.forEach((t=>{t.vibrate(e)}))},reset:function(t){t.getters.gamepads.forEach((t=>{t.reset()}))}}};var c=o;const u={state:()=>({patterns:[]}),getters:{patterns:function(t){return t.patterns}},mutations:{setPatterns:function(t,e){t.patterns=e}},actions:{loadPatterns:async function(t){const e="https://wavelovers.ru/assets/patterns.json";try{const n=await fetch(e);if(n.ok){const e=await n.json();t.commit("setPatterns",e)}else console.log("Connect to the Internet for download more patterns...")}catch(n){console.log(n)}}}};var d=u;const p=(0,a.MT)({state:()=>({mode:0,isActive:!1}),getters:{mode:function(t){return t.mode},isActive:function(t){return t.isActive}},mutations:{setMode:function(t,e){t.mode=e},setIsActive:function(t,e){t.isActive=e}},actions:{setMode:function(t,e){t.commit("setMode",e)},setIsActive:function(t,e){t.commit("setIsActive",e)},change:function(t,e){t.getters.mode===e?t.dispatch("setIsActive",!t.getters.isActive):(t.dispatch("setIsActive",!0),t.dispatch("setMode",e)),!0===t.getters.isActive?(t.dispatch("reset"),t.dispatch("vibrate",t.getters.patterns[t.getters.mode].pattern)):t.dispatch("reset")},startCustom:function(t,e){t.dispatch("setIsActive",!1),t.dispatch("setMode",0),t.dispatch("reset"),t.dispatch("vibrate",e)}},modules:{MGamepads:c,MPatterns:d}});var m=p}},e={};function n(a){var i=e[a];if(void 0!==i)return i.exports;var r=e[a]={exports:{}};return t[a](r,r.exports,n),r.exports}n.m=t,function(){var t=[];n.O=function(e,a,i,r){if(!a){var s=1/0;for(d=0;d=r)&&Object.keys(n.O).every((function(t){return n.O[t](a[c])}))?a.splice(c--,1):(o=!1,r0&&t[d-1][2]>r;d--)t[d]=t[d-1];t[d]=[a,i,r]}}(),function(){n.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return n.d(e,{a:e}),e}}(),function(){n.d=function(t,e){for(var a in e)n.o(e,a)&&!n.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})}}(),function(){n.f={},n.e=function(t){return Promise.all(Object.keys(n.f).reduce((function(e,a){return n.f[a](t,e),e}),[]))}}(),function(){n.u=function(t){return"js/"+t+"."+{46:"c7a9f83c",554:"0d3dfa8b",567:"1165d9e5"}[t]+".js"}}(),function(){n.miniCssF=function(t){return"css/"+t+"."+{46:"30c3638a",554:"10b8ac32"}[t]+".css"}}(),function(){n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"===typeof window)return window}}()}(),function(){n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)}}(),function(){var t={},e="wavelovers:";n.l=function(a,i,r,s){if(t[a])t[a].push(i);else{var o,c;if(void 0!==r)for(var u=document.getElementsByTagName("script"),d=0;d 0)\n ? (_openBlock(), _createBlock(_component_GamepadList, {\n key: 0,\n gamepads: _ctx.gamepads\n }, null, 8, [\"gamepads\"]))\n : (_openBlock(), _createBlock(_component_MessageItem, { key: 1 }, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n }))\n ]))\n}","import { createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item navigation-list\" }\nconst _hoisted_2 = /*#__PURE__*/_createTextVNode(\"Manual\")\nconst _hoisted_3 = /*#__PURE__*/_createTextVNode(\"Patterns\")\nconst _hoisted_4 = /*#__PURE__*/_createTextVNode(\"Diagnostic\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_router_link, {\n to: \"/manual\",\n class: \"navigation-item\"\n }, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n to: \"/\",\n class: \"navigation-item\"\n }, {\n default: _withCtx(() => [\n _hoisted_3\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n to: \"/diagnostic\",\n class: \"navigation-item\"\n }, {\n default: _withCtx(() => [\n _hoisted_4\n ]),\n _: 1\n })\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'NavigationList',\r\n });\r\n","import { render } from \"./NavigationList.vue?vue&type=template&id=1919eb74&ts=true\"\nimport script from \"./NavigationList.vue?vue&type=script&lang=ts\"\nexport * from \"./NavigationList.vue?vue&type=script&lang=ts\"\n\nimport \"./NavigationList.vue?vue&type=style&index=0&id=1919eb74&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, toDisplayString as _toDisplayString, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item device-list\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_GamepadItem = _resolveComponent(\"GamepadItem\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.gamepads, (gamepad) => {\n return (_openBlock(), _createBlock(_component_GamepadItem, {\n key: gamepad.id,\n textContent: _toDisplayString(gamepad.unit.id)\n }, null, 8, [\"textContent\"]))\n }), 128))\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"list-item\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'GamepadItem',\r\n });\r\n","import { render } from \"./GamepadItem.vue?vue&type=template&id=e6e6c988&ts=true\"\nimport script from \"./GamepadItem.vue?vue&type=script&lang=ts\"\nexport * from \"./GamepadItem.vue?vue&type=script&lang=ts\"\n\nimport \"./GamepadItem.vue?vue&type=style&index=0&id=e6e6c988&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import GamepadItem from '@/components/GamepadItem.vue';\r\n\r\n export default defineComponent({\r\n name: 'GamepadList',\r\n props: {\r\n gamepads: {\r\n type: Array,\r\n },\r\n },\r\n components: {\r\n GamepadItem: GamepadItem,\r\n },\r\n });\r\n ","import { render } from \"./GamepadList.vue?vue&type=template&id=16065af4&ts=true\"\nimport script from \"./GamepadList.vue?vue&type=script&lang=ts\"\nexport * from \"./GamepadList.vue?vue&type=script&lang=ts\"\n\nimport \"./GamepadList.vue?vue&type=style&index=0&id=16065af4&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { renderSlot as _renderSlot, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item message\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"span\", null, [\n _renderSlot(_ctx.$slots, \"default\")\n ])\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'MessageItem',\r\n });\r\n","import { render } from \"./MessageItem.vue?vue&type=template&id=31b477d2&ts=true\"\nimport script from \"./MessageItem.vue?vue&type=script&lang=ts\"\nexport * from \"./MessageItem.vue?vue&type=script&lang=ts\"\n\nimport \"./MessageItem.vue?vue&type=style&index=0&id=31b477d2&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import NavigationList from '@/components/NavigationList.vue';\r\n import GamepadList from '@/components/GamepadList.vue';\r\n import MessageItem from '@/components/MessageItem.vue';\r\n import Vibrator from '@/models/Vibrator';\r\n\r\n export default defineComponent({\r\n name: 'App',\r\n components: {\r\n NavigationList: NavigationList,\r\n GamepadList: GamepadList,\r\n MessageItem: MessageItem,\r\n },\r\n computed: {\r\n gamepads: function (): Vibrator[] {\r\n return store.getters.gamepads as Vibrator[];\r\n },\r\n },\r\n methods: {\r\n addEventListeners(): void {\r\n window.addEventListener('gamepadconnected', (event: GamepadEvent) => store.dispatch('addGamepad', event));\r\n window.addEventListener('gamepaddisconnected', (event: GamepadEvent) => store.dispatch('deleteGamepad', event));\r\n },\r\n removeEventListeners(): void {\r\n window.removeEventListener('gamepadconnected', (event: GamepadEvent) => store.dispatch('addGamepad', event));\r\n window.removeEventListener('gamepaddisconnected', (event: GamepadEvent) => store.dispatch('deleteGamepad', event));\r\n },\r\n },\r\n mounted() {\r\n this.addEventListeners();\r\n },\r\n unmounted() {\r\n this.removeEventListeners();\r\n },\r\n });\r\n","import { render } from \"./App.vue?vue&type=template&id=7f0977f6&ts=true\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AppPatterns = _resolveComponent(\"AppPatterns\")!\n\n return (_openBlock(), _createBlock(_component_AppPatterns))\n}","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"app-patterns\" }\nconst _hoisted_2 = /*#__PURE__*/_createTextVNode(\"Loading...\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_PatternList = _resolveComponent(\"PatternList\")!\n const _component_MessageItem = _resolveComponent(\"MessageItem\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.patterns.length > 0)\n ? (_openBlock(), _createBlock(_component_PatternList, {\n key: 0,\n patterns: _ctx.patterns,\n mode: _ctx.mode,\n isActive: _ctx.isActive,\n onChange: _ctx.change\n }, null, 8, [\"patterns\", \"mode\", \"isActive\", \"onChange\"]))\n : (_openBlock(), _createBlock(_component_MessageItem, { key: 1 }, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n }))\n ]))\n}","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item pattern-list\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_PatternItem = _resolveComponent(\"PatternItem\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.patterns, (pattern, index) => {\n return (_openBlock(), _createBlock(_component_PatternItem, {\n key: pattern.name,\n pattern: pattern,\n index: index,\n mode: _ctx.mode,\n isActive: _ctx.isActive,\n onChange: _ctx.change\n }, null, 8, [\"pattern\", \"index\", \"mode\", \"isActive\", \"onChange\"]))\n }), 128))\n ]))\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"textContent\"]\nconst _hoisted_2 = { class: \"pattern-item__info-container\" }\nconst _hoisted_3 = [\"textContent\"]\nconst _hoisted_4 = [\"textContent\"]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.change(_ctx.index))),\n class: _normalizeClass(['pattern-item',\r\n _ctx.index === _ctx.mode && _ctx.isActive === true ?\r\n 'pattern-item_selected' : '',\r\n ])\n }, [\n _createElementVNode(\"span\", {\n class: \"pattern-item__icon\",\n textContent: _toDisplayString(_ctx.pattern.icon)\n }, null, 8, _hoisted_1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"span\", {\n class: \"pattern-item__name\",\n textContent: _toDisplayString(_ctx.pattern.name)\n }, null, 8, _hoisted_3),\n _createElementVNode(\"span\", {\n class: \"pattern-item__type\",\n textContent: _toDisplayString(_ctx.pattern.type)\n }, null, 8, _hoisted_4)\n ])\n ], 2))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'PatternItem',\r\n props: {\r\n pattern: {\r\n type: Object,\r\n },\r\n index: {\r\n type: Number,\r\n },\r\n mode: {\r\n type: Number,\r\n },\r\n isActive: {\r\n type: Boolean,\r\n },\r\n },\r\n methods: {\r\n change: function (index: number): void {\r\n this.$emit('change', index as number);\r\n },\r\n },\r\n });\r\n","import { render } from \"./PatternItem.vue?vue&type=template&id=7dfe2650&ts=true\"\nimport script from \"./PatternItem.vue?vue&type=script&lang=ts\"\nexport * from \"./PatternItem.vue?vue&type=script&lang=ts\"\n\nimport \"./PatternItem.vue?vue&type=style&index=0&id=7dfe2650&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import PatternItem from '@/components/PatternItem.vue';\r\n\r\n export default defineComponent({\r\n name: 'PatternList',\r\n props: {\r\n patterns: {\r\n type: Array,\r\n },\r\n mode: {\r\n type: Number,\r\n },\r\n isActive: {\r\n type: Boolean,\r\n },\r\n },\r\n components: {\r\n PatternItem: PatternItem,\r\n },\r\n methods: {\r\n change: function (index: number): void {\r\n this.$emit('change', index as number);\r\n },\r\n },\r\n });\r\n","import { render } from \"./PatternList.vue?vue&type=template&id=0515b58e&ts=true\"\nimport script from \"./PatternList.vue?vue&type=script&lang=ts\"\nexport * from \"./PatternList.vue?vue&type=script&lang=ts\"\n\nimport \"./PatternList.vue?vue&type=style&index=0&id=0515b58e&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import PatternList from '@/components/PatternList.vue';\r\n import MessageItem from '@/components/MessageItem.vue';\r\n import TPattern from '@/models/TPattern';\r\n\r\n export default defineComponent({\r\n name: 'AppPatterns',\r\n components: {\r\n PatternList: PatternList,\r\n MessageItem: MessageItem,\r\n },\r\n computed: {\r\n patterns: function (): TPattern[] {\r\n return store.getters.patterns as TPattern[];\r\n },\r\n mode: function (): number {\r\n return store.getters.mode as number;\r\n },\r\n isActive: function (): boolean {\r\n return store.getters.isActive as boolean;\r\n },\r\n },\r\n methods: {\r\n change(index: number): void {\r\n store.dispatch('change', index as number);\r\n },\r\n },\r\n mounted() {\r\n store.dispatch('loadPatterns');\r\n },\r\n });\r\n","import { render } from \"./AppPatterns.vue?vue&type=template&id=44c5840c&ts=true\"\nimport script from \"./AppPatterns.vue?vue&type=script&lang=ts\"\nexport * from \"./AppPatterns.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import AppPatterns from '@/components/AppPatterns.vue';\r\n\r\n export default defineComponent({\r\n name: 'PatternsView',\r\n components: {\r\n AppPatterns: AppPatterns,\r\n },\r\n });\r\n","import { render } from \"./PatternsView.vue?vue&type=template&id=440c70d9&ts=true\"\nimport script from \"./PatternsView.vue?vue&type=script&lang=ts\"\nexport * from \"./PatternsView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router';\r\nimport PatternsView from '@/views/PatternsView.vue';\r\n\r\nconst routes: Array = [\r\n {\r\n path: '/',\r\n name: 'patterns-view',\r\n component: PatternsView,\r\n },\r\n {\r\n path: '/manual',\r\n name: 'manual-view',\r\n component: () => import('@/views/ManualView.vue'),\r\n },\r\n {\r\n path: '/diagnostic',\r\n name: 'diagnostic-view',\r\n component: () => import('@/views/DiagnosticView.vue'),\r\n },\r\n {\r\n path: '/404',\r\n name: '404',\r\n component: () => import('@/views/NotFoundView.vue'),\r\n },\r\n {\r\n path: '/:catchAll(.*)',\r\n redirect: '/404',\r\n },\r\n];\r\n\r\nconst router = createRouter({\r\n history: createWebHistory(process.env.BASE_URL),\r\n routes,\r\n});\r\n\r\nexport default router;\r\n\r\n","import { createApp } from 'vue';\r\nimport App from './App.vue';\r\nimport router from './router';\r\nimport store from './store';\r\n\r\ncreateApp(App).use(store).use(router).mount('#app');\r\n\r\n","import TPatternUnit from '@/models/TPatternUnit';\r\nimport IGamepad from '@/models/IGamepad';\r\nimport IVibrator from '@/models/IVibrator';\r\n\r\nclass Vibrator implements IVibrator {\r\n readonly id: number;\r\n readonly canVibrate: boolean;\r\n isVibrating: boolean;\r\n unit: IGamepad;\r\n interval: number;\r\n\r\n constructor(unit: IGamepad) {\r\n this.unit = unit;\r\n this.id = Date.now();\r\n this.canVibrate = (this.unit.vibrationActuator) ? true : false;\r\n this.isVibrating = false;\r\n this.update = this.update.bind(this);\r\n this.interval = setInterval(this.update, 1);\r\n }\r\n\r\n update(): void {\r\n const gamepads = navigator.getGamepads();\r\n this.unit = gamepads[this.unit.index] as unknown as IGamepad;\r\n }\r\n\r\n reset(): void {\r\n this.isVibrating = false;\r\n this.unit.vibrationActuator.reset();\r\n }\r\n\r\n async vibrate(pattern: TPatternUnit[]) {\r\n this.isVibrating = true;\r\n const offsetTime = 10;\r\n while (this.isVibrating === true) {\r\n for (let i = 0; i < pattern.length; i++) {\r\n if (this.isVibrating === true) {\r\n this.unit.vibrationActuator.playEffect('dual-rumble', pattern[i]);\r\n await this.sleep(pattern[i].startDelay + pattern[i].duration - offsetTime);\r\n } else {\r\n return;\r\n }\r\n }\r\n }\r\n }\r\n\r\n sleep(ms: number): Promise {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n }\r\n}\r\n\r\nexport default Vibrator;\r\n\r\n","import { ActionContext, Module } from 'vuex';\r\nimport IRootState from '@/store/models/IRootState';\r\nimport IGamepadsState from '@/store/models/IGamepadsState';\r\nimport Vibrator from '@/models/Vibrator';\r\nimport IGamepad from '@/models/IGamepad';\r\nimport IGamepadEvent from '@/models/IGamepadEvent';\r\nimport TPatternUnit from '@/models/TPatternUnit';\r\n\r\nconst MGamepads: Module = {\r\n state: () => ({\r\n gamepads: [] as Vibrator[],\r\n }),\r\n getters: {\r\n gamepads: function (state: IGamepadsState): Vibrator[] {\r\n return state.gamepads as Vibrator[];\r\n },\r\n },\r\n mutations: {\r\n addGamepad: function (state: IGamepadsState, gamepad: Vibrator): void {\r\n state.gamepads.push(gamepad as Vibrator);\r\n },\r\n deleteGamepad: function (state: IGamepadsState, index: number): void {\r\n state.gamepads.splice(index, 1);\r\n },\r\n },\r\n actions: {\r\n addGamepad: function (\r\n context: ActionContext,\r\n event: GamepadEvent\r\n ): void {\r\n const iEvent: IGamepadEvent = event as unknown as IGamepadEvent;\r\n if (context.getters.gamepads.length >= 1) {\r\n return;\r\n } else {\r\n context.commit('addGamepad', new Vibrator(iEvent.gamepad as IGamepad));\r\n }\r\n },\r\n deleteGamepad: function (\r\n context: ActionContext,\r\n event: GamepadEvent\r\n ): void {\r\n context.getters.gamepads.forEach((gamepad: Vibrator, index: number) => {\r\n if (gamepad.unit.id === event.gamepad.id) {\r\n context.commit('deleteGamepad', index as number);\r\n }\r\n });\r\n },\r\n vibrate: function (\r\n context: ActionContext,\r\n pattern: TPatternUnit[]\r\n ): void {\r\n context.getters.gamepads.forEach((gamepad: Vibrator) => {\r\n gamepad.vibrate(pattern);\r\n });\r\n },\r\n reset: function (\r\n context: ActionContext\r\n ): void {\r\n context.getters.gamepads.forEach((gamepad: Vibrator) => {\r\n gamepad.reset();\r\n });\r\n },\r\n },\r\n};\r\n\r\nexport default MGamepads;\r\n\r\n","import { ActionContext, Module } from 'vuex';\r\nimport IRootState from '@/store/models/IRootState';\r\nimport IPatternState from '@/store/models/IPatternState';\r\nimport TPattern from '@/models/TPattern';\r\n\r\nconst MPatterns: Module = {\r\n state: () => ({\r\n patterns: [] as TPattern[],\r\n }),\r\n getters: {\r\n patterns: function (state: IPatternState): TPattern[] {\r\n return state.patterns as TPattern[];\r\n },\r\n },\r\n mutations: {\r\n setPatterns: function (state: IPatternState, patterns: TPattern[]): void {\r\n state.patterns = patterns as TPattern[];\r\n },\r\n },\r\n actions: {\r\n loadPatterns: async function (\r\n context: ActionContext\r\n ): Promise {\r\n const url = 'https://wavelovers.ru/assets/patterns.json';\r\n try {\r\n const response: Response = await fetch(url);\r\n if (response.ok) {\r\n const json: TPattern[] = await response.json();\r\n context.commit('setPatterns', json as TPattern[]);\r\n } else {\r\n console.log('Connect to the Internet for download more patterns...');\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n },\r\n },\r\n};\r\n\r\nexport default MPatterns;\r\n\r\n","import { createStore, Store } from 'vuex';\r\nimport IRootState from './models/IRootState';\r\nimport MGamepads from '@/store/modules/MGamepads';\r\nimport MPatterns from '@/store/modules/MPatterns';\r\nimport TPatternUnit from '../models/TPatternUnit';\r\n\r\nconst store: Store = createStore({\r\n state: () => ({\r\n mode: 0 as number,\r\n isActive: false as boolean,\r\n }),\r\n getters: {\r\n mode: function (state: IRootState): number {\r\n return state.mode as number;\r\n },\r\n isActive: function (state: IRootState): boolean {\r\n return state.isActive as boolean;\r\n },\r\n },\r\n mutations: {\r\n setMode: function (state: IRootState, mode: number): void {\r\n state.mode = mode as number;\r\n },\r\n setIsActive: function (state: IRootState, isActive: boolean): void {\r\n state.isActive = isActive as boolean;\r\n },\r\n },\r\n actions: {\r\n setMode: function (context, index: number): void {\r\n context.commit('setMode', index as number);\r\n },\r\n setIsActive: function (context, isActive: boolean): void {\r\n context.commit('setIsActive', isActive as boolean);\r\n },\r\n change: function (context, index: number): void {\r\n if (context.getters.mode === index) {\r\n context.dispatch('setIsActive', !context.getters.isActive);\r\n } else {\r\n context.dispatch('setIsActive', true);\r\n context.dispatch('setMode', index);\r\n }\r\n if (context.getters.isActive === true) {\r\n context.dispatch('reset');\r\n context.dispatch(\r\n 'vibrate',\r\n context.getters.patterns[context.getters.mode].pattern\r\n );\r\n } else {\r\n context.dispatch('reset');\r\n }\r\n },\r\n startCustom: function (context, pattern: TPatternUnit[]): void {\r\n context.dispatch('setIsActive', false);\r\n context.dispatch('setMode', 0);\r\n context.dispatch('reset');\r\n context.dispatch('vibrate', pattern);\r\n },\r\n },\r\n modules: {\r\n MGamepads: MGamepads,\r\n MPatterns: MPatterns,\r\n },\r\n});\r\n\r\nexport default store;\r\n\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"46\":\"c7a9f83c\",\"554\":\"0d3dfa8b\",\"567\":\"1165d9e5\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"46\":\"30c3638a\",\"554\":\"10b8ac32\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"wavelovers:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","var createStylesheet = function(chunkId, fullhref, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tdocument.head.appendChild(linkTag);\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"46\":1,\"554\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkwavelovers\"] = self[\"webpackChunkwavelovers\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(2892); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_hoisted_1","class","_hoisted_2","_createTextVNode","render","_ctx","_cache","$props","$setup","$data","$options","_component_NavigationList","_resolveComponent","_component_router_view","_component_GamepadList","_component_MessageItem","_openBlock","_createElementBlock","_createVNode","gamepads","length","_createBlock","key","default","_withCtx","_","_hoisted_3","_hoisted_4","_component_router_link","to","defineComponent","name","__exports__","_component_GamepadItem","_Fragment","_renderList","gamepad","id","textContent","_toDisplayString","unit","props","type","Array","components","GamepadItem","_createElementVNode","_renderSlot","$slots","NavigationList","GamepadList","MessageItem","computed","store","methods","addEventListeners","window","addEventListener","event","removeEventListeners","removeEventListener","mounted","this","unmounted","_component_AppPatterns","_component_PatternList","patterns","mode","isActive","onChange","change","_component_PatternItem","pattern","index","onClick","$event","_normalizeClass","icon","Object","Number","Boolean","$emit","PatternItem","PatternList","AppPatterns","routes","path","component","PatternsView","redirect","router","createRouter","history","createWebHistory","process","createApp","App","use","mount","Vibrator","constructor","Date","now","canVibrate","vibrationActuator","isVibrating","update","bind","interval","setInterval","navigator","getGamepads","reset","offsetTime","i","playEffect","sleep","startDelay","duration","ms","Promise","resolve","setTimeout","MGamepads","state","getters","mutations","addGamepad","push","deleteGamepad","splice","actions","context","iEvent","commit","forEach","vibrate","MPatterns","setPatterns","loadPatterns","async","url","response","fetch","ok","json","console","log","error","createStore","setMode","setIsActive","dispatch","startCustom","modules","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","m","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","keys","every","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","f","e","chunkId","all","reduce","promises","u","miniCssF","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","call","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","target","head","appendChild","Symbol","toStringTag","value","p","createStylesheet","fullhref","reject","linkTag","rel","onLinkComplete","errorType","realHref","href","err","Error","code","request","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","then","installedChunks","installedChunkData","promise","loadingEnded","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","data","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/app.b6f99632.js b/docs/js/app.b6f99632.js new file mode 100644 index 0000000..cebaba7 --- /dev/null +++ b/docs/js/app.b6f99632.js @@ -0,0 +1,2 @@ +(function(){"use strict";var t={4421:function(t,e,n){var a=n(9242),i=n(3396);const o={class:"wavelovers"},r=(0,i.Uk)("Press any gamepad button or connect a new gamepad to vibrate.");function s(t,e,n,a,s,c){const u=(0,i.up)("NavigationList"),d=(0,i.up)("router-view"),p=(0,i.up)("GamepadList"),m=(0,i.up)("MessageItem");return(0,i.wg)(),(0,i.iD)("div",o,[(0,i.Wm)(u),(0,i.Wm)(d),t.gamepads.length>0?((0,i.wg)(),(0,i.j4)(p,{key:0,gamepads:t.gamepads},null,8,["gamepads"])):((0,i.wg)(),(0,i.j4)(m,{key:1},{default:(0,i.w5)((()=>[r])),_:1}))])}var c=n(1746);const u={class:"content-item navigation-list"},d=(0,i.Uk)("Patterns"),p=(0,i.Uk)("Custom"),m=(0,i.Uk)("Manual"),l=(0,i.Uk)("Diagnostic");function f(t,e,n,a,o,r){const s=(0,i.up)("router-link");return(0,i.wg)(),(0,i.iD)("div",u,[(0,i.Wm)(s,{to:"/",class:"navigation-item"},{default:(0,i.w5)((()=>[d])),_:1}),(0,i.Wm)(s,{to:"/custom",class:"navigation-item"},{default:(0,i.w5)((()=>[p])),_:1}),(0,i.Wm)(s,{to:"/manual",class:"navigation-item"},{default:(0,i.w5)((()=>[m])),_:1}),(0,i.Wm)(s,{to:"/diagnostic",class:"navigation-item"},{default:(0,i.w5)((()=>[l])),_:1})])}var v=(0,i.aZ)({name:"NavigationList"}),g=n(89);const h=(0,g.Z)(v,[["render",f]]);var w=h,b=n(7139);const y={class:"content-item device-list"};function A(t,e,n,a,o,r){const s=(0,i.up)("GamepadItem");return(0,i.wg)(),(0,i.iD)("div",y,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(t.gamepads,(t=>((0,i.wg)(),(0,i.j4)(s,{key:t.id,textContent:(0,b.zw)(t.unit.id)},null,8,["textContent"])))),128))])}const Z={class:"list-item"};function k(t,e,n,a,o,r){return(0,i.wg)(),(0,i.iD)("div",Z)}var C=(0,i.aZ)({name:"GamepadItem"});const _=(0,g.Z)(C,[["render",k]]);var P=_,E=(0,i.aZ)({name:"GamepadList",props:{gamepads:{type:Array}},components:{GamepadItem:P}});const L=(0,g.Z)(E,[["render",A]]);var j=L;const I={class:"content-item message"};function x(t,e,n,a,o,r){return(0,i.wg)(),(0,i.iD)("div",I,[(0,i._)("span",null,[(0,i.WI)(t.$slots,"default")])])}var G=(0,i.aZ)({name:"MessageItem"});const M=(0,g.Z)(G,[["render",x]]);var O=M,D=(0,i.aZ)({name:"App",components:{NavigationList:w,GamepadList:j,MessageItem:O},computed:{gamepads:function(){return c.Z.getters.gamepads}},methods:{addEventListeners(){window.addEventListener("gamepadconnected",(t=>c.Z.dispatch("addGamepad",t))),window.addEventListener("gamepaddisconnected",(t=>c.Z.dispatch("deleteGamepad",t)))},removeEventListeners(){window.removeEventListener("gamepadconnected",(t=>c.Z.dispatch("addGamepad",t))),window.removeEventListener("gamepaddisconnected",(t=>c.Z.dispatch("deleteGamepad",t)))}},mounted(){this.addEventListeners()},unmounted(){this.removeEventListeners()}});const N=(0,g.Z)(D,[["render",s]]);var T=N,S=n(2483);function V(t,e,n,a,o,r){const s=(0,i.up)("AppPatterns");return(0,i.wg)(),(0,i.j4)(s)}const U={class:"app-patterns"},W=(0,i.Uk)("Loading...");function B(t,e,n,a,o,r){const s=(0,i.up)("PatternList"),c=(0,i.up)("MessageItem");return(0,i.wg)(),(0,i.iD)("div",U,[t.patterns.length>0?((0,i.wg)(),(0,i.j4)(s,{key:0,patterns:t.patterns,mode:t.mode,isActive:t.isActive,onChange:t.change},null,8,["patterns","mode","isActive","onChange"])):((0,i.wg)(),(0,i.j4)(c,{key:1},{default:(0,i.w5)((()=>[W])),_:1}))])}const z={class:"content-item pattern-list"};function F(t,e,n,a,o,r){const s=(0,i.up)("PatternItem");return(0,i.wg)(),(0,i.iD)("div",z,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(t.patterns,((e,n)=>((0,i.wg)(),(0,i.j4)(s,{key:e.name,pattern:e,index:n,mode:t.mode,isActive:t.isActive,onChange:t.change},null,8,["pattern","index","mode","isActive","onChange"])))),128))])}const H=["textContent"],K={class:"pattern-item__info-container"},$=["textContent"],q=["textContent"];function Y(t,e,n,a,o,r){return(0,i.wg)(),(0,i.iD)("div",{onClick:e[0]||(e[0]=e=>t.change(t.index)),class:(0,b.C_)(["pattern-item",t.index===t.mode&&!0===t.isActive?"pattern-item_selected":""])},[(0,i._)("span",{class:"pattern-item__icon",textContent:(0,b.zw)(t.pattern.icon)},null,8,H),(0,i._)("div",K,[(0,i._)("span",{class:"pattern-item__name",textContent:(0,b.zw)(t.pattern.name)},null,8,$),(0,i._)("span",{class:"pattern-item__type",textContent:(0,b.zw)(t.pattern.type)},null,8,q)])],2)}var J=(0,i.aZ)({name:"PatternItem",props:{pattern:{type:Object},index:{type:Number},mode:{type:Number},isActive:{type:Boolean}},methods:{change:function(t){this.$emit("change",t)}}});const Q=(0,g.Z)(J,[["render",Y]]);var R=Q,X=(0,i.aZ)({name:"PatternList",props:{patterns:{type:Array},mode:{type:Number},isActive:{type:Boolean}},components:{PatternItem:R},methods:{change:function(t){this.$emit("change",t)}}});const tt=(0,g.Z)(X,[["render",F]]);var et=tt,nt=(0,i.aZ)({name:"AppPatterns",components:{PatternList:et,MessageItem:O},computed:{patterns:function(){return c.Z.getters.patterns},mode:function(){return c.Z.getters.mode},isActive:function(){return c.Z.getters.isActive}},methods:{change(t){c.Z.dispatch("change",t)}},mounted(){c.Z.dispatch("loadPatterns")}});const at=(0,g.Z)(nt,[["render",B]]);var it=at,ot=(0,i.aZ)({name:"PatternsView",components:{AppPatterns:it}});const rt=(0,g.Z)(ot,[["render",V]]);var st=rt;const ct=[{path:"/",name:"patterns-view",component:st},{path:"/custom",name:"custom-view",component:()=>n.e(441).then(n.bind(n,441))},{path:"/manual",name:"manual-view",component:()=>n.e(941).then(n.bind(n,8941))},{path:"/diagnostic",name:"diagnostic-view",component:()=>n.e(264).then(n.bind(n,2264))},{path:"/404",name:"404",component:()=>n.e(567).then(n.bind(n,7567))},{path:"/:catchAll(.*)",redirect:"/404"}],ut=(0,S.p7)({history:(0,S.PO)("/"),routes:ct});var dt=ut;(0,a.ri)(T).use(c.Z).use(dt).mount("#app")},1746:function(t,e,n){n.d(e,{Z:function(){return m}});var a=n(65),i=n(2482);class o{constructor(t){(0,i.Z)(this,"unit",void 0),(0,i.Z)(this,"id",void 0),(0,i.Z)(this,"canVibrate",void 0),(0,i.Z)(this,"isVibrating",void 0),(0,i.Z)(this,"interval",void 0),this.unit=t,this.id=Date.now(),this.canVibrate=!!this.unit.vibrationActuator,this.isVibrating=!1,this.update=this.update.bind(this),this.interval=setInterval(this.update,1)}update(){const t=navigator.getGamepads();this.unit=t[this.unit.index]}async loop(t){this.isVibrating=!0;const e=10;while(!0===this.isVibrating)for(let n=0;nsetTimeout(e,t)))}}var r=o;const s={state:()=>({gamepads:[]}),getters:{gamepads:function(t){return t.gamepads}},mutations:{addGamepad:function(t,e){t.gamepads.push(e)},deleteGamepad:function(t,e){t.gamepads.splice(e,1)}},actions:{addGamepad:function(t,e){const n=e;t.getters.gamepads.length>=1||t.commit("addGamepad",new r(n.gamepad))},deleteGamepad:function(t,e){t.getters.gamepads.forEach(((n,a)=>{n.unit.id===e.gamepad.id&&t.commit("deleteGamepad",a)}))},loop:function(t,e){t.getters.gamepads.forEach((t=>{t.loop(e)}))},vibrate:function(t,e){t.getters.gamepads.forEach((t=>{t.vibrate(e)}))},reset:function(t){t.getters.gamepads.forEach((t=>{t.reset()}))}}};var c=s;const u={state:()=>({patterns:[]}),getters:{patterns:function(t){return t.patterns}},mutations:{setPatterns:function(t,e){t.patterns=e}},actions:{loadPatterns:async function(t){const e="https://wavelovers.ru/assets/patterns.json";try{const n=await fetch(e);if(n.ok){const e=await n.json();t.commit("setPatterns",e)}else console.log("Connect to the Internet for download more patterns...")}catch(n){console.log(n)}}}};var d=u;const p=(0,a.MT)({state:()=>({mode:0,isActive:!1}),getters:{mode:function(t){return t.mode},isActive:function(t){return t.isActive}},mutations:{setMode:function(t,e){t.mode=e},setIsActive:function(t,e){t.isActive=e}},actions:{setMode:function(t,e){t.commit("setMode",e)},setIsActive:function(t,e){t.commit("setIsActive",e)},change:function(t,e){t.getters.mode===e?t.dispatch("setIsActive",!t.getters.isActive):(t.dispatch("setIsActive",!0),t.dispatch("setMode",e)),!0===t.getters.isActive?(t.dispatch("reset"),t.dispatch("loop",t.getters.patterns[t.getters.mode].pattern)):t.dispatch("reset")},startCustom:function(t,e){t.dispatch("setIsActive",!1),t.dispatch("setMode",0),t.dispatch("reset"),t.dispatch("loop",e)}},modules:{MGamepads:c,MPatterns:d}});var m=p}},e={};function n(a){var i=e[a];if(void 0!==i)return i.exports;var o=e[a]={exports:{}};return t[a](o,o.exports,n),o.exports}n.m=t,function(){var t=[];n.O=function(e,a,i,o){if(!a){var r=1/0;for(d=0;d=o)&&Object.keys(n.O).every((function(t){return n.O[t](a[c])}))?a.splice(c--,1):(s=!1,o0&&t[d-1][2]>o;d--)t[d]=t[d-1];t[d]=[a,i,o]}}(),function(){n.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return n.d(e,{a:e}),e}}(),function(){n.d=function(t,e){for(var a in e)n.o(e,a)&&!n.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})}}(),function(){n.f={},n.e=function(t){return Promise.all(Object.keys(n.f).reduce((function(e,a){return n.f[a](t,e),e}),[]))}}(),function(){n.u=function(t){return"js/"+t+"."+{264:"5a60390d",441:"be7aaf75",567:"681eca51",941:"6295b5fd"}[t]+".js"}}(),function(){n.miniCssF=function(t){return"css/"+t+"."+{264:"10b8ac32",441:"19a8cda3",941:"06b3a622"}[t]+".css"}}(),function(){n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"===typeof window)return window}}()}(),function(){n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)}}(),function(){var t={},e="wavelovers:";n.l=function(a,i,o,r){if(t[a])t[a].push(i);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d 0)\n ? (_openBlock(), _createBlock(_component_GamepadList, {\n key: 0,\n gamepads: _ctx.gamepads\n }, null, 8, [\"gamepads\"]))\n : (_openBlock(), _createBlock(_component_MessageItem, { key: 1 }, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n }))\n ]))\n}","import { createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item navigation-list\" }\nconst _hoisted_2 = /*#__PURE__*/_createTextVNode(\"Patterns\")\nconst _hoisted_3 = /*#__PURE__*/_createTextVNode(\"Custom\")\nconst _hoisted_4 = /*#__PURE__*/_createTextVNode(\"Manual\")\nconst _hoisted_5 = /*#__PURE__*/_createTextVNode(\"Diagnostic\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_router_link, {\n to: \"/\",\n class: \"navigation-item\"\n }, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n to: \"/custom\",\n class: \"navigation-item\"\n }, {\n default: _withCtx(() => [\n _hoisted_3\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n to: \"/manual\",\n class: \"navigation-item\"\n }, {\n default: _withCtx(() => [\n _hoisted_4\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n to: \"/diagnostic\",\n class: \"navigation-item\"\n }, {\n default: _withCtx(() => [\n _hoisted_5\n ]),\n _: 1\n })\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'NavigationList',\r\n });\r\n","import { render } from \"./NavigationList.vue?vue&type=template&id=2bbb40f5&ts=true\"\nimport script from \"./NavigationList.vue?vue&type=script&lang=ts\"\nexport * from \"./NavigationList.vue?vue&type=script&lang=ts\"\n\nimport \"./NavigationList.vue?vue&type=style&index=0&id=2bbb40f5&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, toDisplayString as _toDisplayString, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item device-list\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_GamepadItem = _resolveComponent(\"GamepadItem\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.gamepads, (gamepad) => {\n return (_openBlock(), _createBlock(_component_GamepadItem, {\n key: gamepad.id,\n textContent: _toDisplayString(gamepad.unit.id)\n }, null, 8, [\"textContent\"]))\n }), 128))\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"list-item\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'GamepadItem',\r\n });\r\n","import { render } from \"./GamepadItem.vue?vue&type=template&id=e6e6c988&ts=true\"\nimport script from \"./GamepadItem.vue?vue&type=script&lang=ts\"\nexport * from \"./GamepadItem.vue?vue&type=script&lang=ts\"\n\nimport \"./GamepadItem.vue?vue&type=style&index=0&id=e6e6c988&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import GamepadItem from '@/components/GamepadItem.vue';\r\n\r\n export default defineComponent({\r\n name: 'GamepadList',\r\n props: {\r\n gamepads: {\r\n type: Array,\r\n },\r\n },\r\n components: {\r\n GamepadItem: GamepadItem,\r\n },\r\n });\r\n ","import { render } from \"./GamepadList.vue?vue&type=template&id=16065af4&ts=true\"\nimport script from \"./GamepadList.vue?vue&type=script&lang=ts\"\nexport * from \"./GamepadList.vue?vue&type=script&lang=ts\"\n\nimport \"./GamepadList.vue?vue&type=style&index=0&id=16065af4&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { renderSlot as _renderSlot, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item message\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"span\", null, [\n _renderSlot(_ctx.$slots, \"default\")\n ])\n ]))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'MessageItem',\r\n });\r\n","import { render } from \"./MessageItem.vue?vue&type=template&id=31b477d2&ts=true\"\nimport script from \"./MessageItem.vue?vue&type=script&lang=ts\"\nexport * from \"./MessageItem.vue?vue&type=script&lang=ts\"\n\nimport \"./MessageItem.vue?vue&type=style&index=0&id=31b477d2&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import NavigationList from '@/components/NavigationList.vue';\r\n import GamepadList from '@/components/GamepadList.vue';\r\n import MessageItem from '@/components/MessageItem.vue';\r\n import Vibrator from '@/models/Vibrator';\r\n\r\n export default defineComponent({\r\n name: 'App',\r\n components: {\r\n NavigationList: NavigationList,\r\n GamepadList: GamepadList,\r\n MessageItem: MessageItem,\r\n },\r\n computed: {\r\n gamepads: function (): Vibrator[] {\r\n return store.getters.gamepads as Vibrator[];\r\n },\r\n },\r\n methods: {\r\n addEventListeners(): void {\r\n window.addEventListener('gamepadconnected', (event: GamepadEvent) => store.dispatch('addGamepad', event));\r\n window.addEventListener('gamepaddisconnected', (event: GamepadEvent) => store.dispatch('deleteGamepad', event));\r\n },\r\n removeEventListeners(): void {\r\n window.removeEventListener('gamepadconnected', (event: GamepadEvent) => store.dispatch('addGamepad', event));\r\n window.removeEventListener('gamepaddisconnected', (event: GamepadEvent) => store.dispatch('deleteGamepad', event));\r\n },\r\n },\r\n mounted() {\r\n this.addEventListeners();\r\n },\r\n unmounted() {\r\n this.removeEventListeners();\r\n },\r\n });\r\n","import { render } from \"./App.vue?vue&type=template&id=7f0977f6&ts=true\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AppPatterns = _resolveComponent(\"AppPatterns\")!\n\n return (_openBlock(), _createBlock(_component_AppPatterns))\n}","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"app-patterns\" }\nconst _hoisted_2 = /*#__PURE__*/_createTextVNode(\"Loading...\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_PatternList = _resolveComponent(\"PatternList\")!\n const _component_MessageItem = _resolveComponent(\"MessageItem\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.patterns.length > 0)\n ? (_openBlock(), _createBlock(_component_PatternList, {\n key: 0,\n patterns: _ctx.patterns,\n mode: _ctx.mode,\n isActive: _ctx.isActive,\n onChange: _ctx.change\n }, null, 8, [\"patterns\", \"mode\", \"isActive\", \"onChange\"]))\n : (_openBlock(), _createBlock(_component_MessageItem, { key: 1 }, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n }))\n ]))\n}","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-item pattern-list\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_PatternItem = _resolveComponent(\"PatternItem\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.patterns, (pattern, index) => {\n return (_openBlock(), _createBlock(_component_PatternItem, {\n key: pattern.name,\n pattern: pattern,\n index: index,\n mode: _ctx.mode,\n isActive: _ctx.isActive,\n onChange: _ctx.change\n }, null, 8, [\"pattern\", \"index\", \"mode\", \"isActive\", \"onChange\"]))\n }), 128))\n ]))\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"textContent\"]\nconst _hoisted_2 = { class: \"pattern-item__info-container\" }\nconst _hoisted_3 = [\"textContent\"]\nconst _hoisted_4 = [\"textContent\"]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.change(_ctx.index))),\n class: _normalizeClass(['pattern-item',\r\n _ctx.index === _ctx.mode && _ctx.isActive === true ?\r\n 'pattern-item_selected' : '',\r\n ])\n }, [\n _createElementVNode(\"span\", {\n class: \"pattern-item__icon\",\n textContent: _toDisplayString(_ctx.pattern.icon)\n }, null, 8, _hoisted_1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"span\", {\n class: \"pattern-item__name\",\n textContent: _toDisplayString(_ctx.pattern.name)\n }, null, 8, _hoisted_3),\n _createElementVNode(\"span\", {\n class: \"pattern-item__type\",\n textContent: _toDisplayString(_ctx.pattern.type)\n }, null, 8, _hoisted_4)\n ])\n ], 2))\n}","\r\n import { defineComponent } from 'vue';\r\n\r\n export default defineComponent({\r\n name: 'PatternItem',\r\n props: {\r\n pattern: {\r\n type: Object,\r\n },\r\n index: {\r\n type: Number,\r\n },\r\n mode: {\r\n type: Number,\r\n },\r\n isActive: {\r\n type: Boolean,\r\n },\r\n },\r\n methods: {\r\n change: function (index: number): void {\r\n this.$emit('change', index as number);\r\n },\r\n },\r\n });\r\n","import { render } from \"./PatternItem.vue?vue&type=template&id=7dfe2650&ts=true\"\nimport script from \"./PatternItem.vue?vue&type=script&lang=ts\"\nexport * from \"./PatternItem.vue?vue&type=script&lang=ts\"\n\nimport \"./PatternItem.vue?vue&type=style&index=0&id=7dfe2650&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import PatternItem from '@/components/PatternItem.vue';\r\n\r\n export default defineComponent({\r\n name: 'PatternList',\r\n props: {\r\n patterns: {\r\n type: Array,\r\n },\r\n mode: {\r\n type: Number,\r\n },\r\n isActive: {\r\n type: Boolean,\r\n },\r\n },\r\n components: {\r\n PatternItem: PatternItem,\r\n },\r\n methods: {\r\n change: function (index: number): void {\r\n this.$emit('change', index as number);\r\n },\r\n },\r\n });\r\n","import { render } from \"./PatternList.vue?vue&type=template&id=0515b58e&ts=true\"\nimport script from \"./PatternList.vue?vue&type=script&lang=ts\"\nexport * from \"./PatternList.vue?vue&type=script&lang=ts\"\n\nimport \"./PatternList.vue?vue&type=style&index=0&id=0515b58e&lang=scss\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import store from '@/store/index';\r\n import PatternList from '@/components/PatternList.vue';\r\n import MessageItem from '@/components/MessageItem.vue';\r\n import TPattern from '@/models/TPattern';\r\n\r\n export default defineComponent({\r\n name: 'AppPatterns',\r\n components: {\r\n PatternList: PatternList,\r\n MessageItem: MessageItem,\r\n },\r\n computed: {\r\n patterns: function (): TPattern[] {\r\n return store.getters.patterns as TPattern[];\r\n },\r\n mode: function (): number {\r\n return store.getters.mode as number;\r\n },\r\n isActive: function (): boolean {\r\n return store.getters.isActive as boolean;\r\n },\r\n },\r\n methods: {\r\n change(index: number): void {\r\n store.dispatch('change', index as number);\r\n },\r\n },\r\n mounted() {\r\n store.dispatch('loadPatterns');\r\n },\r\n });\r\n","import { render } from \"./AppPatterns.vue?vue&type=template&id=44c5840c&ts=true\"\nimport script from \"./AppPatterns.vue?vue&type=script&lang=ts\"\nexport * from \"./AppPatterns.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n import { defineComponent } from 'vue';\r\n import AppPatterns from '@/components/AppPatterns.vue';\r\n\r\n export default defineComponent({\r\n name: 'PatternsView',\r\n components: {\r\n AppPatterns: AppPatterns,\r\n },\r\n });\r\n","import { render } from \"./PatternsView.vue?vue&type=template&id=440c70d9&ts=true\"\nimport script from \"./PatternsView.vue?vue&type=script&lang=ts\"\nexport * from \"./PatternsView.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"E:\\\\Sources\\\\Repos\\\\wavelovers\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router';\r\nimport PatternsView from '@/views/PatternsView.vue';\r\n\r\nconst routes: Array = [\r\n {\r\n path: '/',\r\n name: 'patterns-view',\r\n component: PatternsView,\r\n },\r\n {\r\n path: '/custom',\r\n name: 'custom-view',\r\n component: () => import('@/views/CustomView.vue'),\r\n },\r\n {\r\n path: '/manual',\r\n name: 'manual-view',\r\n component: () => import('@/views/ManualView.vue'),\r\n },\r\n {\r\n path: '/diagnostic',\r\n name: 'diagnostic-view',\r\n component: () => import('@/views/DiagnosticView.vue'),\r\n },\r\n {\r\n path: '/404',\r\n name: '404',\r\n component: () => import('@/views/NotFoundView.vue'),\r\n },\r\n {\r\n path: '/:catchAll(.*)',\r\n redirect: '/404',\r\n },\r\n];\r\n\r\nconst router = createRouter({\r\n history: createWebHistory(process.env.BASE_URL),\r\n routes,\r\n});\r\n\r\nexport default router;\r\n\r\n","import { createApp } from 'vue';\r\nimport App from './App.vue';\r\nimport router from './router';\r\nimport store from './store';\r\n\r\ncreateApp(App).use(store).use(router).mount('#app');\r\n\r\n","import TPatternUnit from '@/models/TPatternUnit';\r\nimport IGamepad from '@/models/IGamepad';\r\nimport IVibrator from '@/models/IVibrator';\r\n\r\nclass Vibrator implements IVibrator {\r\n\r\n unit: IGamepad;\r\n readonly id: number;\r\n readonly canVibrate: boolean;\r\n isVibrating: boolean;\r\n interval: number;\r\n\r\n constructor(unit: IGamepad) {\r\n this.unit = unit;\r\n this.id = Date.now();\r\n this.canVibrate = (this.unit.vibrationActuator) ? true : false;\r\n this.isVibrating = false;\r\n this.update = this.update.bind(this);\r\n this.interval = setInterval(this.update, 1);\r\n }\r\n\r\n update(): void {\r\n const gamepads = navigator.getGamepads();\r\n this.unit = gamepads[this.unit.index] as unknown as IGamepad;\r\n }\r\n\r\n async loop(pattern: TPatternUnit[]) {\r\n this.isVibrating = true;\r\n const offsetTime = 10;\r\n while (this.isVibrating === true) {\r\n for (let i = 0; i < pattern.length; i++) {\r\n if (this.isVibrating === true) {\r\n this.vibrate(pattern[i]);\r\n await this.sleep(pattern[i].startDelay + pattern[i].duration - offsetTime);\r\n } else {\r\n return;\r\n }\r\n }\r\n }\r\n }\r\n\r\n vibrate(pattern: TPatternUnit): void {\r\n this.unit.vibrationActuator.playEffect('dual-rumble', pattern);\r\n }\r\n\r\n reset(): void {\r\n this.isVibrating = false;\r\n this.unit.vibrationActuator.reset();\r\n }\r\n\r\n sleep(ms: number): Promise {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n }\r\n}\r\n\r\nexport default Vibrator;\r\n\r\n","import { ActionContext, Module } from 'vuex';\r\nimport IRootState from '@/store/models/IRootState';\r\nimport IGamepadsState from '@/store/models/IGamepadsState';\r\nimport Vibrator from '@/models/Vibrator';\r\nimport IGamepad from '@/models/IGamepad';\r\nimport IGamepadEvent from '@/models/IGamepadEvent';\r\nimport TPatternUnit from '@/models/TPatternUnit';\r\n\r\nconst MGamepads: Module = {\r\n state: () => ({\r\n gamepads: [] as Vibrator[],\r\n }),\r\n getters: {\r\n gamepads: function (state: IGamepadsState): Vibrator[] {\r\n return state.gamepads as Vibrator[];\r\n },\r\n },\r\n mutations: {\r\n addGamepad: function (state: IGamepadsState, gamepad: Vibrator): void {\r\n state.gamepads.push(gamepad as Vibrator);\r\n },\r\n deleteGamepad: function (state: IGamepadsState, index: number): void {\r\n state.gamepads.splice(index, 1);\r\n },\r\n },\r\n actions: {\r\n addGamepad: function (\r\n context: ActionContext,\r\n event: GamepadEvent\r\n ): void {\r\n const iEvent: IGamepadEvent = event as unknown as IGamepadEvent;\r\n if (context.getters.gamepads.length >= 1) {\r\n return;\r\n } else {\r\n context.commit('addGamepad', new Vibrator(iEvent.gamepad as IGamepad));\r\n }\r\n },\r\n deleteGamepad: function (\r\n context: ActionContext,\r\n event: GamepadEvent\r\n ): void {\r\n context.getters.gamepads.forEach((gamepad: Vibrator, index: number) => {\r\n if (gamepad.unit.id === event.gamepad.id) {\r\n context.commit('deleteGamepad', index as number);\r\n }\r\n });\r\n },\r\n loop: function (\r\n context: ActionContext,\r\n pattern: TPatternUnit[]\r\n ): void {\r\n context.getters.gamepads.forEach((gamepad: Vibrator) => {\r\n gamepad.loop(pattern);\r\n });\r\n },\r\n vibrate: function (\r\n context: ActionContext,\r\n pattern: TPatternUnit\r\n ): void {\r\n context.getters.gamepads.forEach((gamepad: Vibrator) => {\r\n gamepad.vibrate(pattern);\r\n });\r\n },\r\n reset: function (\r\n context: ActionContext\r\n ): void {\r\n context.getters.gamepads.forEach((gamepad: Vibrator) => {\r\n gamepad.reset();\r\n });\r\n },\r\n },\r\n};\r\n\r\nexport default MGamepads;\r\n\r\n","import { ActionContext, Module } from 'vuex';\r\nimport IRootState from '@/store/models/IRootState';\r\nimport IPatternState from '@/store/models/IPatternState';\r\nimport TPattern from '@/models/TPattern';\r\n\r\nconst MPatterns: Module = {\r\n state: () => ({\r\n patterns: [] as TPattern[],\r\n }),\r\n getters: {\r\n patterns: function (state: IPatternState): TPattern[] {\r\n return state.patterns as TPattern[];\r\n },\r\n },\r\n mutations: {\r\n setPatterns: function (state: IPatternState, patterns: TPattern[]): void {\r\n state.patterns = patterns as TPattern[];\r\n },\r\n },\r\n actions: {\r\n loadPatterns: async function (\r\n context: ActionContext\r\n ): Promise {\r\n const url = 'https://wavelovers.ru/assets/patterns.json';\r\n try {\r\n const response: Response = await fetch(url);\r\n if (response.ok) {\r\n const json: TPattern[] = await response.json();\r\n context.commit('setPatterns', json as TPattern[]);\r\n } else {\r\n // eslint-disable-next-line\r\n console.log('Connect to the Internet for download more patterns...');\r\n }\r\n } catch (error) {\r\n // eslint-disable-next-line\r\n console.log(error);\r\n }\r\n },\r\n },\r\n};\r\n\r\nexport default MPatterns;\r\n\r\n","import { createStore, Store } from 'vuex';\r\nimport IRootState from './models/IRootState';\r\nimport MGamepads from '@/store/modules/MGamepads';\r\nimport MPatterns from '@/store/modules/MPatterns';\r\nimport TPatternUnit from '@/models/TPatternUnit';\r\n\r\nconst store: Store = createStore({\r\n state: () => ({\r\n mode: 0 as number,\r\n isActive: false as boolean,\r\n }),\r\n getters: {\r\n mode: function (state: IRootState): number {\r\n return state.mode as number;\r\n },\r\n isActive: function (state: IRootState): boolean {\r\n return state.isActive as boolean;\r\n },\r\n },\r\n mutations: {\r\n setMode: function (state: IRootState, mode: number): void {\r\n state.mode = mode as number;\r\n },\r\n setIsActive: function (state: IRootState, isActive: boolean): void {\r\n state.isActive = isActive as boolean;\r\n },\r\n },\r\n actions: {\r\n setMode: function (context, index: number): void {\r\n context.commit('setMode', index as number);\r\n },\r\n setIsActive: function (context, isActive: boolean): void {\r\n context.commit('setIsActive', isActive as boolean);\r\n },\r\n change: function (context, index: number): void {\r\n if (context.getters.mode === index) {\r\n context.dispatch('setIsActive', !context.getters.isActive);\r\n } else {\r\n context.dispatch('setIsActive', true);\r\n context.dispatch('setMode', index);\r\n }\r\n if (context.getters.isActive === true) {\r\n context.dispatch('reset');\r\n context.dispatch('loop', context.getters.patterns[context.getters.mode].pattern);\r\n } else {\r\n context.dispatch('reset');\r\n }\r\n },\r\n startCustom: function (context, pattern: TPatternUnit[]): void {\r\n context.dispatch('setIsActive', false);\r\n context.dispatch('setMode', 0);\r\n context.dispatch('reset');\r\n context.dispatch('loop', pattern);\r\n },\r\n },\r\n modules: {\r\n MGamepads: MGamepads,\r\n MPatterns: MPatterns,\r\n },\r\n});\r\n\r\nexport default store;\r\n\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"264\":\"5a60390d\",\"441\":\"be7aaf75\",\"567\":\"681eca51\",\"941\":\"6295b5fd\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"264\":\"10b8ac32\",\"441\":\"19a8cda3\",\"941\":\"06b3a622\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"wavelovers:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","var createStylesheet = function(chunkId, fullhref, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tdocument.head.appendChild(linkTag);\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"264\":1,\"441\":1,\"941\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkwavelovers\"] = self[\"webpackChunkwavelovers\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(4421); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_hoisted_1","class","_hoisted_2","_createTextVNode","render","_ctx","_cache","$props","$setup","$data","$options","_component_NavigationList","_resolveComponent","_component_router_view","_component_GamepadList","_component_MessageItem","_openBlock","_createElementBlock","_createVNode","gamepads","length","_createBlock","key","default","_withCtx","_","_hoisted_3","_hoisted_4","_hoisted_5","_component_router_link","to","defineComponent","name","__exports__","_component_GamepadItem","_Fragment","_renderList","gamepad","id","textContent","_toDisplayString","unit","props","type","Array","components","GamepadItem","_createElementVNode","_renderSlot","$slots","NavigationList","GamepadList","MessageItem","computed","store","methods","addEventListeners","window","addEventListener","event","removeEventListeners","removeEventListener","mounted","this","unmounted","_component_AppPatterns","_component_PatternList","patterns","mode","isActive","onChange","change","_component_PatternItem","pattern","index","onClick","$event","_normalizeClass","icon","Object","Number","Boolean","$emit","PatternItem","PatternList","AppPatterns","routes","path","component","PatternsView","redirect","router","createRouter","history","createWebHistory","process","createApp","App","use","mount","Vibrator","constructor","Date","now","canVibrate","vibrationActuator","isVibrating","update","bind","interval","setInterval","navigator","getGamepads","offsetTime","i","vibrate","sleep","startDelay","duration","playEffect","reset","ms","Promise","resolve","setTimeout","MGamepads","state","getters","mutations","addGamepad","push","deleteGamepad","splice","actions","context","iEvent","commit","forEach","loop","MPatterns","setPatterns","loadPatterns","async","url","response","fetch","ok","json","console","log","error","createStore","setMode","setIsActive","dispatch","startCustom","modules","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","m","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","keys","every","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","f","e","chunkId","all","reduce","promises","u","miniCssF","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","call","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","target","head","appendChild","Symbol","toStringTag","value","p","createStylesheet","fullhref","reject","linkTag","rel","onLinkComplete","errorType","realHref","href","err","Error","code","request","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","then","installedChunks","installedChunkData","promise","loadingEnded","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","data","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/chunk-vendors.248cd14b.js.map b/docs/js/chunk-vendors.248cd14b.js.map deleted file mode 100644 index ef6082e..0000000 --- a/docs/js/chunk-vendors.248cd14b.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"js/chunk-vendors.248cd14b.js","mappings":"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","sources":["webpack://wavelovers/./node_modules/core-js/internals/a-callable.js","webpack://wavelovers/./node_modules/core-js/internals/a-possible-prototype.js","webpack://wavelovers/./node_modules/core-js/internals/an-object.js","webpack://wavelovers/./node_modules/core-js/internals/array-includes.js","webpack://wavelovers/./node_modules/core-js/internals/classof-raw.js","webpack://wavelovers/./node_modules/core-js/internals/classof.js","webpack://wavelovers/./node_modules/core-js/internals/clear-error-stack.js","webpack://wavelovers/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://wavelovers/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://wavelovers/./node_modules/core-js/internals/create-property-descriptor.js","webpack://wavelovers/./node_modules/core-js/internals/define-built-in.js","webpack://wavelovers/./node_modules/core-js/internals/define-global-property.js","webpack://wavelovers/./node_modules/core-js/internals/descriptors.js","webpack://wavelovers/./node_modules/core-js/internals/document-create-element.js","webpack://wavelovers/./node_modules/core-js/internals/engine-user-agent.js","webpack://wavelovers/./node_modules/core-js/internals/engine-v8-version.js","webpack://wavelovers/./node_modules/core-js/internals/enum-bug-keys.js","webpack://wavelovers/./node_modules/core-js/internals/error-stack-installable.js","webpack://wavelovers/./node_modules/core-js/internals/export.js","webpack://wavelovers/./node_modules/core-js/internals/fails.js","webpack://wavelovers/./node_modules/core-js/internals/function-apply.js","webpack://wavelovers/./node_modules/core-js/internals/function-bind-native.js","webpack://wavelovers/./node_modules/core-js/internals/function-call.js","webpack://wavelovers/./node_modules/core-js/internals/function-name.js","webpack://wavelovers/./node_modules/core-js/internals/function-uncurry-this.js","webpack://wavelovers/./node_modules/core-js/internals/get-built-in.js","webpack://wavelovers/./node_modules/core-js/internals/get-method.js","webpack://wavelovers/./node_modules/core-js/internals/global.js","webpack://wavelovers/./node_modules/core-js/internals/has-own-property.js","webpack://wavelovers/./node_modules/core-js/internals/hidden-keys.js","webpack://wavelovers/./node_modules/core-js/internals/ie8-dom-define.js","webpack://wavelovers/./node_modules/core-js/internals/indexed-object.js","webpack://wavelovers/./node_modules/core-js/internals/inherit-if-required.js","webpack://wavelovers/./node_modules/core-js/internals/inspect-source.js","webpack://wavelovers/./node_modules/core-js/internals/install-error-cause.js","webpack://wavelovers/./node_modules/core-js/internals/internal-state.js","webpack://wavelovers/./node_modules/core-js/internals/is-callable.js","webpack://wavelovers/./node_modules/core-js/internals/is-forced.js","webpack://wavelovers/./node_modules/core-js/internals/is-object.js","webpack://wavelovers/./node_modules/core-js/internals/is-pure.js","webpack://wavelovers/./node_modules/core-js/internals/is-symbol.js","webpack://wavelovers/./node_modules/core-js/internals/length-of-array-like.js","webpack://wavelovers/./node_modules/core-js/internals/make-built-in.js","webpack://wavelovers/./node_modules/core-js/internals/math-trunc.js","webpack://wavelovers/./node_modules/core-js/internals/native-symbol.js","webpack://wavelovers/./node_modules/core-js/internals/native-weak-map.js","webpack://wavelovers/./node_modules/core-js/internals/normalize-string-argument.js","webpack://wavelovers/./node_modules/core-js/internals/object-define-property.js","webpack://wavelovers/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://wavelovers/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://wavelovers/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://wavelovers/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://wavelovers/./node_modules/core-js/internals/object-keys-internal.js","webpack://wavelovers/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://wavelovers/./node_modules/core-js/internals/object-set-prototype-of.js","webpack://wavelovers/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://wavelovers/./node_modules/core-js/internals/own-keys.js","webpack://wavelovers/./node_modules/core-js/internals/proxy-accessor.js","webpack://wavelovers/./node_modules/core-js/internals/require-object-coercible.js","webpack://wavelovers/./node_modules/core-js/internals/shared-key.js","webpack://wavelovers/./node_modules/core-js/internals/shared-store.js","webpack://wavelovers/./node_modules/core-js/internals/shared.js","webpack://wavelovers/./node_modules/core-js/internals/to-absolute-index.js","webpack://wavelovers/./node_modules/core-js/internals/to-indexed-object.js","webpack://wavelovers/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://wavelovers/./node_modules/core-js/internals/to-length.js","webpack://wavelovers/./node_modules/core-js/internals/to-object.js","webpack://wavelovers/./node_modules/core-js/internals/to-primitive.js","webpack://wavelovers/./node_modules/core-js/internals/to-property-key.js","webpack://wavelovers/./node_modules/core-js/internals/to-string-tag-support.js","webpack://wavelovers/./node_modules/core-js/internals/to-string.js","webpack://wavelovers/./node_modules/core-js/internals/try-to-string.js","webpack://wavelovers/./node_modules/core-js/internals/uid.js","webpack://wavelovers/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://wavelovers/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://wavelovers/./node_modules/core-js/internals/well-known-symbol.js","webpack://wavelovers/./node_modules/core-js/internals/wrap-error-constructor-with-cause.js","webpack://wavelovers/./node_modules/core-js/modules/es.error.cause.js","webpack://wavelovers/./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js","webpack://wavelovers/./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js","webpack://wavelovers/./node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js","webpack://wavelovers/./node_modules/@vue/shared/dist/shared.esm-bundler.js","webpack://wavelovers/./node_modules/vue-loader/dist/exportHelper.js","webpack://wavelovers/./node_modules/@vue/devtools-api/lib/esm/env.js","webpack://wavelovers/./node_modules/@vue/devtools-api/lib/esm/const.js","webpack://wavelovers/./node_modules/@vue/devtools-api/lib/esm/time.js","webpack://wavelovers/./node_modules/@vue/devtools-api/lib/esm/proxy.js","webpack://wavelovers/./node_modules/@vue/devtools-api/lib/esm/index.js","webpack://wavelovers/./node_modules/vuex/dist/vuex.esm-bundler.js","webpack://wavelovers/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://wavelovers/./node_modules/vue-router/dist/vue-router.mjs"],"sourcesContent":["var isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a function');\n};\n","var isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","var isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw $TypeError($String(argument) + ' is not an object');\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar $Error = Error;\nvar replace = uncurryThis(''.replace);\n\nvar TEST = (function (arg) { return String($Error(arg).stack); })('zxcasd');\nvar V8_OR_CHAKRA_STACK_ENTRY = /\\n\\s*at [^:]*:[^\\n]*/;\nvar IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);\n\nmodule.exports = function (stack, dropEntries) {\n if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {\n while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');\n } return stack;\n};\n","var hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","var global = require('../internals/global');\n\n// eslint-disable-next-line es-x/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var fails = require('../internals/fails');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = !fails(function () {\n var error = Error('a');\n if (!('stack' in error)) return true;\n // eslint-disable-next-line es-x/no-object-defineproperty -- safe\n Object.defineProperty(error, 'stack', createPropertyDescriptor(1, 7));\n return error.stack !== 7;\n});\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es-x/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es-x/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar bind = FunctionPrototype.bind;\nvar call = FunctionPrototype.call;\nvar uncurryThis = NATIVE_BIND && bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? function (fn) {\n return fn && uncurryThis(fn);\n} : function (fn) {\n return fn && function () {\n return call.apply(fn, arguments);\n };\n};\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","var aCallable = require('../internals/a-callable');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return func == null ? undefined : aCallable(func);\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es-x/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es-x/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","module.exports = {};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","var isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\n// `InstallErrorCause` abstract operation\n// https://tc39.es/proposal-error-cause/#sec-errorobjects-install-error-cause\nmodule.exports = function (O, options) {\n if (isObject(options) && 'cause' in options) {\n createNonEnumerableProperty(O, 'cause', options.cause);\n }\n};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = uncurryThis(store.get);\n var wmhas = uncurryThis(store.has);\n var wmset = uncurryThis(store.set);\n set = function (it, metadata) {\n if (wmhas(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget(store, it) || {};\n };\n has = function (it) {\n return wmhas(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = function (argument) {\n return typeof argument == 'function';\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","module.exports = false;\n","var getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","var toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\n// eslint-disable-next-line es-x/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = TEMPLATE.join(typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es-x/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","/* eslint-disable es-x/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es-x/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n return !String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(inspectSource(WeakMap));\n","var toString = require('../internals/to-string');\n\nmodule.exports = function (argument, $default) {\n return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es-x/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es-x/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","// eslint-disable-next-line es-x/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","/* eslint-disable no-proto -- safe */\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es-x/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\n setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw $TypeError(\"Can't convert object to primitive value\");\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","var defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (Target, Source, key) {\n key in Target || defineProperty(Target, key, {\n configurable: true,\n get: function () { return Source[key]; },\n set: function (it) { Source[key] = it; }\n });\n};\n","var $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","var global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.24.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.24.1/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","var call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","var toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","var $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","/* eslint-disable es-x/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype != 42;\n});\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar symbolFor = Symbol && Symbol['for'];\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n var description = 'Symbol.' + name;\n if (NATIVE_SYMBOL && hasOwn(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else if (USE_SYMBOL_AS_UID && symbolFor) {\n WellKnownSymbolsStore[name] = symbolFor(description);\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol(description);\n }\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar hasOwn = require('../internals/has-own-property');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar proxyAccessor = require('../internals/proxy-accessor');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar normalizeStringArgument = require('../internals/normalize-string-argument');\nvar installErrorCause = require('../internals/install-error-cause');\nvar clearErrorStack = require('../internals/clear-error-stack');\nvar ERROR_STACK_INSTALLABLE = require('../internals/error-stack-installable');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IS_PURE = require('../internals/is-pure');\n\nmodule.exports = function (FULL_NAME, wrapper, FORCED, IS_AGGREGATE_ERROR) {\n var STACK_TRACE_LIMIT = 'stackTraceLimit';\n var OPTIONS_POSITION = IS_AGGREGATE_ERROR ? 2 : 1;\n var path = FULL_NAME.split('.');\n var ERROR_NAME = path[path.length - 1];\n var OriginalError = getBuiltIn.apply(null, path);\n\n if (!OriginalError) return;\n\n var OriginalErrorPrototype = OriginalError.prototype;\n\n // V8 9.3- bug https://bugs.chromium.org/p/v8/issues/detail?id=12006\n if (!IS_PURE && hasOwn(OriginalErrorPrototype, 'cause')) delete OriginalErrorPrototype.cause;\n\n if (!FORCED) return OriginalError;\n\n var BaseError = getBuiltIn('Error');\n\n var WrappedError = wrapper(function (a, b) {\n var message = normalizeStringArgument(IS_AGGREGATE_ERROR ? b : a, undefined);\n var result = IS_AGGREGATE_ERROR ? new OriginalError(a) : new OriginalError();\n if (message !== undefined) createNonEnumerableProperty(result, 'message', message);\n if (ERROR_STACK_INSTALLABLE) createNonEnumerableProperty(result, 'stack', clearErrorStack(result.stack, 2));\n if (this && isPrototypeOf(OriginalErrorPrototype, this)) inheritIfRequired(result, this, WrappedError);\n if (arguments.length > OPTIONS_POSITION) installErrorCause(result, arguments[OPTIONS_POSITION]);\n return result;\n });\n\n WrappedError.prototype = OriginalErrorPrototype;\n\n if (ERROR_NAME !== 'Error') {\n if (setPrototypeOf) setPrototypeOf(WrappedError, BaseError);\n else copyConstructorProperties(WrappedError, BaseError, { name: true });\n } else if (DESCRIPTORS && STACK_TRACE_LIMIT in OriginalError) {\n proxyAccessor(WrappedError, OriginalError, STACK_TRACE_LIMIT);\n proxyAccessor(WrappedError, OriginalError, 'prepareStackTrace');\n }\n\n copyConstructorProperties(WrappedError, OriginalError);\n\n if (!IS_PURE) try {\n // Safari 13- bug: WebAssembly errors does not have a proper `.name`\n if (OriginalErrorPrototype.name !== ERROR_NAME) {\n createNonEnumerableProperty(OriginalErrorPrototype, 'name', ERROR_NAME);\n }\n OriginalErrorPrototype.constructor = WrappedError;\n } catch (error) { /* empty */ }\n\n return WrappedError;\n};\n","/* eslint-disable no-unused-vars -- required for functions `.length` */\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar wrapErrorConstructorWithCause = require('../internals/wrap-error-constructor-with-cause');\n\nvar WEB_ASSEMBLY = 'WebAssembly';\nvar WebAssembly = global[WEB_ASSEMBLY];\n\nvar FORCED = Error('e', { cause: 7 }).cause !== 7;\n\nvar exportGlobalErrorCauseWrapper = function (ERROR_NAME, wrapper) {\n var O = {};\n O[ERROR_NAME] = wrapErrorConstructorWithCause(ERROR_NAME, wrapper, FORCED);\n $({ global: true, constructor: true, arity: 1, forced: FORCED }, O);\n};\n\nvar exportWebAssemblyErrorCauseWrapper = function (ERROR_NAME, wrapper) {\n if (WebAssembly && WebAssembly[ERROR_NAME]) {\n var O = {};\n O[ERROR_NAME] = wrapErrorConstructorWithCause(WEB_ASSEMBLY + '.' + ERROR_NAME, wrapper, FORCED);\n $({ target: WEB_ASSEMBLY, stat: true, constructor: true, arity: 1, forced: FORCED }, O);\n }\n};\n\n// https://github.com/tc39/proposal-error-cause\nexportGlobalErrorCauseWrapper('Error', function (init) {\n return function Error(message) { return apply(init, this, arguments); };\n});\nexportGlobalErrorCauseWrapper('EvalError', function (init) {\n return function EvalError(message) { return apply(init, this, arguments); };\n});\nexportGlobalErrorCauseWrapper('RangeError', function (init) {\n return function RangeError(message) { return apply(init, this, arguments); };\n});\nexportGlobalErrorCauseWrapper('ReferenceError', function (init) {\n return function ReferenceError(message) { return apply(init, this, arguments); };\n});\nexportGlobalErrorCauseWrapper('SyntaxError', function (init) {\n return function SyntaxError(message) { return apply(init, this, arguments); };\n});\nexportGlobalErrorCauseWrapper('TypeError', function (init) {\n return function TypeError(message) { return apply(init, this, arguments); };\n});\nexportGlobalErrorCauseWrapper('URIError', function (init) {\n return function URIError(message) { return apply(init, this, arguments); };\n});\nexportWebAssemblyErrorCauseWrapper('CompileError', function (init) {\n return function CompileError(message) { return apply(init, this, arguments); };\n});\nexportWebAssemblyErrorCauseWrapper('LinkError', function (init) {\n return function LinkError(message) { return apply(init, this, arguments); };\n});\nexportWebAssemblyErrorCauseWrapper('RuntimeError', function (init) {\n return function RuntimeError(message) { return apply(init, this, arguments); };\n});\n","import { extend, isArray, isMap, isIntegerKey, hasOwn, isSymbol, isObject, hasChanged, makeMap, capitalize, toRawType, def, isFunction, NOOP } from '@vue/shared';\n\nfunction warn(msg, ...args) {\r\n console.warn(`[Vue warn] ${msg}`, ...args);\r\n}\n\nlet activeEffectScope;\r\nclass EffectScope {\r\n constructor(detached = false) {\r\n /**\r\n * @internal\r\n */\r\n this.active = true;\r\n /**\r\n * @internal\r\n */\r\n this.effects = [];\r\n /**\r\n * @internal\r\n */\r\n this.cleanups = [];\r\n if (!detached && activeEffectScope) {\r\n this.parent = activeEffectScope;\r\n this.index =\r\n (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;\r\n }\r\n }\r\n run(fn) {\r\n if (this.active) {\r\n const currentEffectScope = activeEffectScope;\r\n try {\r\n activeEffectScope = this;\r\n return fn();\r\n }\r\n finally {\r\n activeEffectScope = currentEffectScope;\r\n }\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`cannot run an inactive effect scope.`);\r\n }\r\n }\r\n /**\r\n * This should only be called on non-detached scopes\r\n * @internal\r\n */\r\n on() {\r\n activeEffectScope = this;\r\n }\r\n /**\r\n * This should only be called on non-detached scopes\r\n * @internal\r\n */\r\n off() {\r\n activeEffectScope = this.parent;\r\n }\r\n stop(fromParent) {\r\n if (this.active) {\r\n let i, l;\r\n for (i = 0, l = this.effects.length; i < l; i++) {\r\n this.effects[i].stop();\r\n }\r\n for (i = 0, l = this.cleanups.length; i < l; i++) {\r\n this.cleanups[i]();\r\n }\r\n if (this.scopes) {\r\n for (i = 0, l = this.scopes.length; i < l; i++) {\r\n this.scopes[i].stop(true);\r\n }\r\n }\r\n // nested scope, dereference from parent to avoid memory leaks\r\n if (this.parent && !fromParent) {\r\n // optimized O(1) removal\r\n const last = this.parent.scopes.pop();\r\n if (last && last !== this) {\r\n this.parent.scopes[this.index] = last;\r\n last.index = this.index;\r\n }\r\n }\r\n this.active = false;\r\n }\r\n }\r\n}\r\nfunction effectScope(detached) {\r\n return new EffectScope(detached);\r\n}\r\nfunction recordEffectScope(effect, scope = activeEffectScope) {\r\n if (scope && scope.active) {\r\n scope.effects.push(effect);\r\n }\r\n}\r\nfunction getCurrentScope() {\r\n return activeEffectScope;\r\n}\r\nfunction onScopeDispose(fn) {\r\n if (activeEffectScope) {\r\n activeEffectScope.cleanups.push(fn);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`onScopeDispose() is called when there is no active effect scope` +\r\n ` to be associated with.`);\r\n }\r\n}\n\nconst createDep = (effects) => {\r\n const dep = new Set(effects);\r\n dep.w = 0;\r\n dep.n = 0;\r\n return dep;\r\n};\r\nconst wasTracked = (dep) => (dep.w & trackOpBit) > 0;\r\nconst newTracked = (dep) => (dep.n & trackOpBit) > 0;\r\nconst initDepMarkers = ({ deps }) => {\r\n if (deps.length) {\r\n for (let i = 0; i < deps.length; i++) {\r\n deps[i].w |= trackOpBit; // set was tracked\r\n }\r\n }\r\n};\r\nconst finalizeDepMarkers = (effect) => {\r\n const { deps } = effect;\r\n if (deps.length) {\r\n let ptr = 0;\r\n for (let i = 0; i < deps.length; i++) {\r\n const dep = deps[i];\r\n if (wasTracked(dep) && !newTracked(dep)) {\r\n dep.delete(effect);\r\n }\r\n else {\r\n deps[ptr++] = dep;\r\n }\r\n // clear bits\r\n dep.w &= ~trackOpBit;\r\n dep.n &= ~trackOpBit;\r\n }\r\n deps.length = ptr;\r\n }\r\n};\n\nconst targetMap = new WeakMap();\r\n// The number of effects currently being tracked recursively.\r\nlet effectTrackDepth = 0;\r\nlet trackOpBit = 1;\r\n/**\r\n * The bitwise track markers support at most 30 levels of recursion.\r\n * This value is chosen to enable modern JS engines to use a SMI on all platforms.\r\n * When recursion depth is greater, fall back to using a full cleanup.\r\n */\r\nconst maxMarkerBits = 30;\r\nlet activeEffect;\r\nconst ITERATE_KEY = Symbol((process.env.NODE_ENV !== 'production') ? 'iterate' : '');\r\nconst MAP_KEY_ITERATE_KEY = Symbol((process.env.NODE_ENV !== 'production') ? 'Map key iterate' : '');\r\nclass ReactiveEffect {\r\n constructor(fn, scheduler = null, scope) {\r\n this.fn = fn;\r\n this.scheduler = scheduler;\r\n this.active = true;\r\n this.deps = [];\r\n this.parent = undefined;\r\n recordEffectScope(this, scope);\r\n }\r\n run() {\r\n if (!this.active) {\r\n return this.fn();\r\n }\r\n let parent = activeEffect;\r\n let lastShouldTrack = shouldTrack;\r\n while (parent) {\r\n if (parent === this) {\r\n return;\r\n }\r\n parent = parent.parent;\r\n }\r\n try {\r\n this.parent = activeEffect;\r\n activeEffect = this;\r\n shouldTrack = true;\r\n trackOpBit = 1 << ++effectTrackDepth;\r\n if (effectTrackDepth <= maxMarkerBits) {\r\n initDepMarkers(this);\r\n }\r\n else {\r\n cleanupEffect(this);\r\n }\r\n return this.fn();\r\n }\r\n finally {\r\n if (effectTrackDepth <= maxMarkerBits) {\r\n finalizeDepMarkers(this);\r\n }\r\n trackOpBit = 1 << --effectTrackDepth;\r\n activeEffect = this.parent;\r\n shouldTrack = lastShouldTrack;\r\n this.parent = undefined;\r\n if (this.deferStop) {\r\n this.stop();\r\n }\r\n }\r\n }\r\n stop() {\r\n // stopped while running itself - defer the cleanup\r\n if (activeEffect === this) {\r\n this.deferStop = true;\r\n }\r\n else if (this.active) {\r\n cleanupEffect(this);\r\n if (this.onStop) {\r\n this.onStop();\r\n }\r\n this.active = false;\r\n }\r\n }\r\n}\r\nfunction cleanupEffect(effect) {\r\n const { deps } = effect;\r\n if (deps.length) {\r\n for (let i = 0; i < deps.length; i++) {\r\n deps[i].delete(effect);\r\n }\r\n deps.length = 0;\r\n }\r\n}\r\nfunction effect(fn, options) {\r\n if (fn.effect) {\r\n fn = fn.effect.fn;\r\n }\r\n const _effect = new ReactiveEffect(fn);\r\n if (options) {\r\n extend(_effect, options);\r\n if (options.scope)\r\n recordEffectScope(_effect, options.scope);\r\n }\r\n if (!options || !options.lazy) {\r\n _effect.run();\r\n }\r\n const runner = _effect.run.bind(_effect);\r\n runner.effect = _effect;\r\n return runner;\r\n}\r\nfunction stop(runner) {\r\n runner.effect.stop();\r\n}\r\nlet shouldTrack = true;\r\nconst trackStack = [];\r\nfunction pauseTracking() {\r\n trackStack.push(shouldTrack);\r\n shouldTrack = false;\r\n}\r\nfunction enableTracking() {\r\n trackStack.push(shouldTrack);\r\n shouldTrack = true;\r\n}\r\nfunction resetTracking() {\r\n const last = trackStack.pop();\r\n shouldTrack = last === undefined ? true : last;\r\n}\r\nfunction track(target, type, key) {\r\n if (shouldTrack && activeEffect) {\r\n let depsMap = targetMap.get(target);\r\n if (!depsMap) {\r\n targetMap.set(target, (depsMap = new Map()));\r\n }\r\n let dep = depsMap.get(key);\r\n if (!dep) {\r\n depsMap.set(key, (dep = createDep()));\r\n }\r\n const eventInfo = (process.env.NODE_ENV !== 'production')\r\n ? { effect: activeEffect, target, type, key }\r\n : undefined;\r\n trackEffects(dep, eventInfo);\r\n }\r\n}\r\nfunction trackEffects(dep, debuggerEventExtraInfo) {\r\n let shouldTrack = false;\r\n if (effectTrackDepth <= maxMarkerBits) {\r\n if (!newTracked(dep)) {\r\n dep.n |= trackOpBit; // set newly tracked\r\n shouldTrack = !wasTracked(dep);\r\n }\r\n }\r\n else {\r\n // Full cleanup mode.\r\n shouldTrack = !dep.has(activeEffect);\r\n }\r\n if (shouldTrack) {\r\n dep.add(activeEffect);\r\n activeEffect.deps.push(dep);\r\n if ((process.env.NODE_ENV !== 'production') && activeEffect.onTrack) {\r\n activeEffect.onTrack(Object.assign({ effect: activeEffect }, debuggerEventExtraInfo));\r\n }\r\n }\r\n}\r\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\r\n const depsMap = targetMap.get(target);\r\n if (!depsMap) {\r\n // never been tracked\r\n return;\r\n }\r\n let deps = [];\r\n if (type === \"clear\" /* CLEAR */) {\r\n // collection being cleared\r\n // trigger all effects for target\r\n deps = [...depsMap.values()];\r\n }\r\n else if (key === 'length' && isArray(target)) {\r\n depsMap.forEach((dep, key) => {\r\n if (key === 'length' || key >= newValue) {\r\n deps.push(dep);\r\n }\r\n });\r\n }\r\n else {\r\n // schedule runs for SET | ADD | DELETE\r\n if (key !== void 0) {\r\n deps.push(depsMap.get(key));\r\n }\r\n // also run for iteration key on ADD | DELETE | Map.SET\r\n switch (type) {\r\n case \"add\" /* ADD */:\r\n if (!isArray(target)) {\r\n deps.push(depsMap.get(ITERATE_KEY));\r\n if (isMap(target)) {\r\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\r\n }\r\n }\r\n else if (isIntegerKey(key)) {\r\n // new index added to array -> length changes\r\n deps.push(depsMap.get('length'));\r\n }\r\n break;\r\n case \"delete\" /* DELETE */:\r\n if (!isArray(target)) {\r\n deps.push(depsMap.get(ITERATE_KEY));\r\n if (isMap(target)) {\r\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\r\n }\r\n }\r\n break;\r\n case \"set\" /* SET */:\r\n if (isMap(target)) {\r\n deps.push(depsMap.get(ITERATE_KEY));\r\n }\r\n break;\r\n }\r\n }\r\n const eventInfo = (process.env.NODE_ENV !== 'production')\r\n ? { target, type, key, newValue, oldValue, oldTarget }\r\n : undefined;\r\n if (deps.length === 1) {\r\n if (deps[0]) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n triggerEffects(deps[0], eventInfo);\r\n }\r\n else {\r\n triggerEffects(deps[0]);\r\n }\r\n }\r\n }\r\n else {\r\n const effects = [];\r\n for (const dep of deps) {\r\n if (dep) {\r\n effects.push(...dep);\r\n }\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n triggerEffects(createDep(effects), eventInfo);\r\n }\r\n else {\r\n triggerEffects(createDep(effects));\r\n }\r\n }\r\n}\r\nfunction triggerEffects(dep, debuggerEventExtraInfo) {\r\n // spread into array for stabilization\r\n const effects = isArray(dep) ? dep : [...dep];\r\n for (const effect of effects) {\r\n if (effect.computed) {\r\n triggerEffect(effect, debuggerEventExtraInfo);\r\n }\r\n }\r\n for (const effect of effects) {\r\n if (!effect.computed) {\r\n triggerEffect(effect, debuggerEventExtraInfo);\r\n }\r\n }\r\n}\r\nfunction triggerEffect(effect, debuggerEventExtraInfo) {\r\n if (effect !== activeEffect || effect.allowRecurse) {\r\n if ((process.env.NODE_ENV !== 'production') && effect.onTrigger) {\r\n effect.onTrigger(extend({ effect }, debuggerEventExtraInfo));\r\n }\r\n if (effect.scheduler) {\r\n effect.scheduler();\r\n }\r\n else {\r\n effect.run();\r\n }\r\n }\r\n}\n\nconst isNonTrackableKeys = /*#__PURE__*/ makeMap(`__proto__,__v_isRef,__isVue`);\r\nconst builtInSymbols = new Set(\r\n/*#__PURE__*/\r\nObject.getOwnPropertyNames(Symbol)\r\n // ios10.x Object.getOwnPropertyNames(Symbol) can enumerate 'arguments' and 'caller'\r\n // but accessing them on Symbol leads to TypeError because Symbol is a strict mode\r\n // function\r\n .filter(key => key !== 'arguments' && key !== 'caller')\r\n .map(key => Symbol[key])\r\n .filter(isSymbol));\r\nconst get = /*#__PURE__*/ createGetter();\r\nconst shallowGet = /*#__PURE__*/ createGetter(false, true);\r\nconst readonlyGet = /*#__PURE__*/ createGetter(true);\r\nconst shallowReadonlyGet = /*#__PURE__*/ createGetter(true, true);\r\nconst arrayInstrumentations = /*#__PURE__*/ createArrayInstrumentations();\r\nfunction createArrayInstrumentations() {\r\n const instrumentations = {};\r\n ['includes', 'indexOf', 'lastIndexOf'].forEach(key => {\r\n instrumentations[key] = function (...args) {\r\n const arr = toRaw(this);\r\n for (let i = 0, l = this.length; i < l; i++) {\r\n track(arr, \"get\" /* GET */, i + '');\r\n }\r\n // we run the method using the original args first (which may be reactive)\r\n const res = arr[key](...args);\r\n if (res === -1 || res === false) {\r\n // if that didn't work, run it again using raw values.\r\n return arr[key](...args.map(toRaw));\r\n }\r\n else {\r\n return res;\r\n }\r\n };\r\n });\r\n ['push', 'pop', 'shift', 'unshift', 'splice'].forEach(key => {\r\n instrumentations[key] = function (...args) {\r\n pauseTracking();\r\n const res = toRaw(this)[key].apply(this, args);\r\n resetTracking();\r\n return res;\r\n };\r\n });\r\n return instrumentations;\r\n}\r\nfunction createGetter(isReadonly = false, shallow = false) {\r\n return function get(target, key, receiver) {\r\n if (key === \"__v_isReactive\" /* IS_REACTIVE */) {\r\n return !isReadonly;\r\n }\r\n else if (key === \"__v_isReadonly\" /* IS_READONLY */) {\r\n return isReadonly;\r\n }\r\n else if (key === \"__v_isShallow\" /* IS_SHALLOW */) {\r\n return shallow;\r\n }\r\n else if (key === \"__v_raw\" /* RAW */ &&\r\n receiver ===\r\n (isReadonly\r\n ? shallow\r\n ? shallowReadonlyMap\r\n : readonlyMap\r\n : shallow\r\n ? shallowReactiveMap\r\n : reactiveMap).get(target)) {\r\n return target;\r\n }\r\n const targetIsArray = isArray(target);\r\n if (!isReadonly && targetIsArray && hasOwn(arrayInstrumentations, key)) {\r\n return Reflect.get(arrayInstrumentations, key, receiver);\r\n }\r\n const res = Reflect.get(target, key, receiver);\r\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\r\n return res;\r\n }\r\n if (!isReadonly) {\r\n track(target, \"get\" /* GET */, key);\r\n }\r\n if (shallow) {\r\n return res;\r\n }\r\n if (isRef(res)) {\r\n // ref unwrapping - skip unwrap for Array + integer key.\r\n return targetIsArray && isIntegerKey(key) ? res : res.value;\r\n }\r\n if (isObject(res)) {\r\n // Convert returned value into a proxy as well. we do the isObject check\r\n // here to avoid invalid value warning. Also need to lazy access readonly\r\n // and reactive here to avoid circular dependency.\r\n return isReadonly ? readonly(res) : reactive(res);\r\n }\r\n return res;\r\n };\r\n}\r\nconst set = /*#__PURE__*/ createSetter();\r\nconst shallowSet = /*#__PURE__*/ createSetter(true);\r\nfunction createSetter(shallow = false) {\r\n return function set(target, key, value, receiver) {\r\n let oldValue = target[key];\r\n if (isReadonly(oldValue) && isRef(oldValue) && !isRef(value)) {\r\n return false;\r\n }\r\n if (!shallow && !isReadonly(value)) {\r\n if (!isShallow(value)) {\r\n value = toRaw(value);\r\n oldValue = toRaw(oldValue);\r\n }\r\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\r\n oldValue.value = value;\r\n return true;\r\n }\r\n }\r\n const hadKey = isArray(target) && isIntegerKey(key)\r\n ? Number(key) < target.length\r\n : hasOwn(target, key);\r\n const result = Reflect.set(target, key, value, receiver);\r\n // don't trigger if target is something up in the prototype chain of original\r\n if (target === toRaw(receiver)) {\r\n if (!hadKey) {\r\n trigger(target, \"add\" /* ADD */, key, value);\r\n }\r\n else if (hasChanged(value, oldValue)) {\r\n trigger(target, \"set\" /* SET */, key, value, oldValue);\r\n }\r\n }\r\n return result;\r\n };\r\n}\r\nfunction deleteProperty(target, key) {\r\n const hadKey = hasOwn(target, key);\r\n const oldValue = target[key];\r\n const result = Reflect.deleteProperty(target, key);\r\n if (result && hadKey) {\r\n trigger(target, \"delete\" /* DELETE */, key, undefined, oldValue);\r\n }\r\n return result;\r\n}\r\nfunction has(target, key) {\r\n const result = Reflect.has(target, key);\r\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\r\n track(target, \"has\" /* HAS */, key);\r\n }\r\n return result;\r\n}\r\nfunction ownKeys(target) {\r\n track(target, \"iterate\" /* ITERATE */, isArray(target) ? 'length' : ITERATE_KEY);\r\n return Reflect.ownKeys(target);\r\n}\r\nconst mutableHandlers = {\r\n get,\r\n set,\r\n deleteProperty,\r\n has,\r\n ownKeys\r\n};\r\nconst readonlyHandlers = {\r\n get: readonlyGet,\r\n set(target, key) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Set operation on key \"${String(key)}\" failed: target is readonly.`, target);\r\n }\r\n return true;\r\n },\r\n deleteProperty(target, key) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Delete operation on key \"${String(key)}\" failed: target is readonly.`, target);\r\n }\r\n return true;\r\n }\r\n};\r\nconst shallowReactiveHandlers = /*#__PURE__*/ extend({}, mutableHandlers, {\r\n get: shallowGet,\r\n set: shallowSet\r\n});\r\n// Props handlers are special in the sense that it should not unwrap top-level\r\n// refs (in order to allow refs to be explicitly passed down), but should\r\n// retain the reactivity of the normal readonly object.\r\nconst shallowReadonlyHandlers = /*#__PURE__*/ extend({}, readonlyHandlers, {\r\n get: shallowReadonlyGet\r\n});\n\nconst toShallow = (value) => value;\r\nconst getProto = (v) => Reflect.getPrototypeOf(v);\r\nfunction get$1(target, key, isReadonly = false, isShallow = false) {\r\n // #1772: readonly(reactive(Map)) should return readonly + reactive version\r\n // of the value\r\n target = target[\"__v_raw\" /* RAW */];\r\n const rawTarget = toRaw(target);\r\n const rawKey = toRaw(key);\r\n if (!isReadonly) {\r\n if (key !== rawKey) {\r\n track(rawTarget, \"get\" /* GET */, key);\r\n }\r\n track(rawTarget, \"get\" /* GET */, rawKey);\r\n }\r\n const { has } = getProto(rawTarget);\r\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\r\n if (has.call(rawTarget, key)) {\r\n return wrap(target.get(key));\r\n }\r\n else if (has.call(rawTarget, rawKey)) {\r\n return wrap(target.get(rawKey));\r\n }\r\n else if (target !== rawTarget) {\r\n // #3602 readonly(reactive(Map))\r\n // ensure that the nested reactive `Map` can do tracking for itself\r\n target.get(key);\r\n }\r\n}\r\nfunction has$1(key, isReadonly = false) {\r\n const target = this[\"__v_raw\" /* RAW */];\r\n const rawTarget = toRaw(target);\r\n const rawKey = toRaw(key);\r\n if (!isReadonly) {\r\n if (key !== rawKey) {\r\n track(rawTarget, \"has\" /* HAS */, key);\r\n }\r\n track(rawTarget, \"has\" /* HAS */, rawKey);\r\n }\r\n return key === rawKey\r\n ? target.has(key)\r\n : target.has(key) || target.has(rawKey);\r\n}\r\nfunction size(target, isReadonly = false) {\r\n target = target[\"__v_raw\" /* RAW */];\r\n !isReadonly && track(toRaw(target), \"iterate\" /* ITERATE */, ITERATE_KEY);\r\n return Reflect.get(target, 'size', target);\r\n}\r\nfunction add(value) {\r\n value = toRaw(value);\r\n const target = toRaw(this);\r\n const proto = getProto(target);\r\n const hadKey = proto.has.call(target, value);\r\n if (!hadKey) {\r\n target.add(value);\r\n trigger(target, \"add\" /* ADD */, value, value);\r\n }\r\n return this;\r\n}\r\nfunction set$1(key, value) {\r\n value = toRaw(value);\r\n const target = toRaw(this);\r\n const { has, get } = getProto(target);\r\n let hadKey = has.call(target, key);\r\n if (!hadKey) {\r\n key = toRaw(key);\r\n hadKey = has.call(target, key);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n checkIdentityKeys(target, has, key);\r\n }\r\n const oldValue = get.call(target, key);\r\n target.set(key, value);\r\n if (!hadKey) {\r\n trigger(target, \"add\" /* ADD */, key, value);\r\n }\r\n else if (hasChanged(value, oldValue)) {\r\n trigger(target, \"set\" /* SET */, key, value, oldValue);\r\n }\r\n return this;\r\n}\r\nfunction deleteEntry(key) {\r\n const target = toRaw(this);\r\n const { has, get } = getProto(target);\r\n let hadKey = has.call(target, key);\r\n if (!hadKey) {\r\n key = toRaw(key);\r\n hadKey = has.call(target, key);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n checkIdentityKeys(target, has, key);\r\n }\r\n const oldValue = get ? get.call(target, key) : undefined;\r\n // forward the operation before queueing reactions\r\n const result = target.delete(key);\r\n if (hadKey) {\r\n trigger(target, \"delete\" /* DELETE */, key, undefined, oldValue);\r\n }\r\n return result;\r\n}\r\nfunction clear() {\r\n const target = toRaw(this);\r\n const hadItems = target.size !== 0;\r\n const oldTarget = (process.env.NODE_ENV !== 'production')\r\n ? isMap(target)\r\n ? new Map(target)\r\n : new Set(target)\r\n : undefined;\r\n // forward the operation before queueing reactions\r\n const result = target.clear();\r\n if (hadItems) {\r\n trigger(target, \"clear\" /* CLEAR */, undefined, undefined, oldTarget);\r\n }\r\n return result;\r\n}\r\nfunction createForEach(isReadonly, isShallow) {\r\n return function forEach(callback, thisArg) {\r\n const observed = this;\r\n const target = observed[\"__v_raw\" /* RAW */];\r\n const rawTarget = toRaw(target);\r\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\r\n !isReadonly && track(rawTarget, \"iterate\" /* ITERATE */, ITERATE_KEY);\r\n return target.forEach((value, key) => {\r\n // important: make sure the callback is\r\n // 1. invoked with the reactive map as `this` and 3rd arg\r\n // 2. the value received should be a corresponding reactive/readonly.\r\n return callback.call(thisArg, wrap(value), wrap(key), observed);\r\n });\r\n };\r\n}\r\nfunction createIterableMethod(method, isReadonly, isShallow) {\r\n return function (...args) {\r\n const target = this[\"__v_raw\" /* RAW */];\r\n const rawTarget = toRaw(target);\r\n const targetIsMap = isMap(rawTarget);\r\n const isPair = method === 'entries' || (method === Symbol.iterator && targetIsMap);\r\n const isKeyOnly = method === 'keys' && targetIsMap;\r\n const innerIterator = target[method](...args);\r\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\r\n !isReadonly &&\r\n track(rawTarget, \"iterate\" /* ITERATE */, isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY);\r\n // return a wrapped iterator which returns observed versions of the\r\n // values emitted from the real iterator\r\n return {\r\n // iterator protocol\r\n next() {\r\n const { value, done } = innerIterator.next();\r\n return done\r\n ? { value, done }\r\n : {\r\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\r\n done\r\n };\r\n },\r\n // iterable protocol\r\n [Symbol.iterator]() {\r\n return this;\r\n }\r\n };\r\n };\r\n}\r\nfunction createReadonlyMethod(type) {\r\n return function (...args) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\r\n console.warn(`${capitalize(type)} operation ${key}failed: target is readonly.`, toRaw(this));\r\n }\r\n return type === \"delete\" /* DELETE */ ? false : this;\r\n };\r\n}\r\nfunction createInstrumentations() {\r\n const mutableInstrumentations = {\r\n get(key) {\r\n return get$1(this, key);\r\n },\r\n get size() {\r\n return size(this);\r\n },\r\n has: has$1,\r\n add,\r\n set: set$1,\r\n delete: deleteEntry,\r\n clear,\r\n forEach: createForEach(false, false)\r\n };\r\n const shallowInstrumentations = {\r\n get(key) {\r\n return get$1(this, key, false, true);\r\n },\r\n get size() {\r\n return size(this);\r\n },\r\n has: has$1,\r\n add,\r\n set: set$1,\r\n delete: deleteEntry,\r\n clear,\r\n forEach: createForEach(false, true)\r\n };\r\n const readonlyInstrumentations = {\r\n get(key) {\r\n return get$1(this, key, true);\r\n },\r\n get size() {\r\n return size(this, true);\r\n },\r\n has(key) {\r\n return has$1.call(this, key, true);\r\n },\r\n add: createReadonlyMethod(\"add\" /* ADD */),\r\n set: createReadonlyMethod(\"set\" /* SET */),\r\n delete: createReadonlyMethod(\"delete\" /* DELETE */),\r\n clear: createReadonlyMethod(\"clear\" /* CLEAR */),\r\n forEach: createForEach(true, false)\r\n };\r\n const shallowReadonlyInstrumentations = {\r\n get(key) {\r\n return get$1(this, key, true, true);\r\n },\r\n get size() {\r\n return size(this, true);\r\n },\r\n has(key) {\r\n return has$1.call(this, key, true);\r\n },\r\n add: createReadonlyMethod(\"add\" /* ADD */),\r\n set: createReadonlyMethod(\"set\" /* SET */),\r\n delete: createReadonlyMethod(\"delete\" /* DELETE */),\r\n clear: createReadonlyMethod(\"clear\" /* CLEAR */),\r\n forEach: createForEach(true, true)\r\n };\r\n const iteratorMethods = ['keys', 'values', 'entries', Symbol.iterator];\r\n iteratorMethods.forEach(method => {\r\n mutableInstrumentations[method] = createIterableMethod(method, false, false);\r\n readonlyInstrumentations[method] = createIterableMethod(method, true, false);\r\n shallowInstrumentations[method] = createIterableMethod(method, false, true);\r\n shallowReadonlyInstrumentations[method] = createIterableMethod(method, true, true);\r\n });\r\n return [\r\n mutableInstrumentations,\r\n readonlyInstrumentations,\r\n shallowInstrumentations,\r\n shallowReadonlyInstrumentations\r\n ];\r\n}\r\nconst [mutableInstrumentations, readonlyInstrumentations, shallowInstrumentations, shallowReadonlyInstrumentations] = /* #__PURE__*/ createInstrumentations();\r\nfunction createInstrumentationGetter(isReadonly, shallow) {\r\n const instrumentations = shallow\r\n ? isReadonly\r\n ? shallowReadonlyInstrumentations\r\n : shallowInstrumentations\r\n : isReadonly\r\n ? readonlyInstrumentations\r\n : mutableInstrumentations;\r\n return (target, key, receiver) => {\r\n if (key === \"__v_isReactive\" /* IS_REACTIVE */) {\r\n return !isReadonly;\r\n }\r\n else if (key === \"__v_isReadonly\" /* IS_READONLY */) {\r\n return isReadonly;\r\n }\r\n else if (key === \"__v_raw\" /* RAW */) {\r\n return target;\r\n }\r\n return Reflect.get(hasOwn(instrumentations, key) && key in target\r\n ? instrumentations\r\n : target, key, receiver);\r\n };\r\n}\r\nconst mutableCollectionHandlers = {\r\n get: /*#__PURE__*/ createInstrumentationGetter(false, false)\r\n};\r\nconst shallowCollectionHandlers = {\r\n get: /*#__PURE__*/ createInstrumentationGetter(false, true)\r\n};\r\nconst readonlyCollectionHandlers = {\r\n get: /*#__PURE__*/ createInstrumentationGetter(true, false)\r\n};\r\nconst shallowReadonlyCollectionHandlers = {\r\n get: /*#__PURE__*/ createInstrumentationGetter(true, true)\r\n};\r\nfunction checkIdentityKeys(target, has, key) {\r\n const rawKey = toRaw(key);\r\n if (rawKey !== key && has.call(target, rawKey)) {\r\n const type = toRawType(target);\r\n console.warn(`Reactive ${type} contains both the raw and reactive ` +\r\n `versions of the same object${type === `Map` ? ` as keys` : ``}, ` +\r\n `which can lead to inconsistencies. ` +\r\n `Avoid differentiating between the raw and reactive versions ` +\r\n `of an object and only use the reactive version if possible.`);\r\n }\r\n}\n\nconst reactiveMap = new WeakMap();\r\nconst shallowReactiveMap = new WeakMap();\r\nconst readonlyMap = new WeakMap();\r\nconst shallowReadonlyMap = new WeakMap();\r\nfunction targetTypeMap(rawType) {\r\n switch (rawType) {\r\n case 'Object':\r\n case 'Array':\r\n return 1 /* COMMON */;\r\n case 'Map':\r\n case 'Set':\r\n case 'WeakMap':\r\n case 'WeakSet':\r\n return 2 /* COLLECTION */;\r\n default:\r\n return 0 /* INVALID */;\r\n }\r\n}\r\nfunction getTargetType(value) {\r\n return value[\"__v_skip\" /* SKIP */] || !Object.isExtensible(value)\r\n ? 0 /* INVALID */\r\n : targetTypeMap(toRawType(value));\r\n}\r\nfunction reactive(target) {\r\n // if trying to observe a readonly proxy, return the readonly version.\r\n if (isReadonly(target)) {\r\n return target;\r\n }\r\n return createReactiveObject(target, false, mutableHandlers, mutableCollectionHandlers, reactiveMap);\r\n}\r\n/**\r\n * Return a shallowly-reactive copy of the original object, where only the root\r\n * level properties are reactive. It also does not auto-unwrap refs (even at the\r\n * root level).\r\n */\r\nfunction shallowReactive(target) {\r\n return createReactiveObject(target, false, shallowReactiveHandlers, shallowCollectionHandlers, shallowReactiveMap);\r\n}\r\n/**\r\n * Creates a readonly copy of the original object. Note the returned copy is not\r\n * made reactive, but `readonly` can be called on an already reactive object.\r\n */\r\nfunction readonly(target) {\r\n return createReactiveObject(target, true, readonlyHandlers, readonlyCollectionHandlers, readonlyMap);\r\n}\r\n/**\r\n * Returns a reactive-copy of the original object, where only the root level\r\n * properties are readonly, and does NOT unwrap refs nor recursively convert\r\n * returned properties.\r\n * This is used for creating the props proxy object for stateful components.\r\n */\r\nfunction shallowReadonly(target) {\r\n return createReactiveObject(target, true, shallowReadonlyHandlers, shallowReadonlyCollectionHandlers, shallowReadonlyMap);\r\n}\r\nfunction createReactiveObject(target, isReadonly, baseHandlers, collectionHandlers, proxyMap) {\r\n if (!isObject(target)) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n console.warn(`value cannot be made reactive: ${String(target)}`);\r\n }\r\n return target;\r\n }\r\n // target is already a Proxy, return it.\r\n // exception: calling readonly() on a reactive object\r\n if (target[\"__v_raw\" /* RAW */] &&\r\n !(isReadonly && target[\"__v_isReactive\" /* IS_REACTIVE */])) {\r\n return target;\r\n }\r\n // target already has corresponding Proxy\r\n const existingProxy = proxyMap.get(target);\r\n if (existingProxy) {\r\n return existingProxy;\r\n }\r\n // only specific value types can be observed.\r\n const targetType = getTargetType(target);\r\n if (targetType === 0 /* INVALID */) {\r\n return target;\r\n }\r\n const proxy = new Proxy(target, targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers);\r\n proxyMap.set(target, proxy);\r\n return proxy;\r\n}\r\nfunction isReactive(value) {\r\n if (isReadonly(value)) {\r\n return isReactive(value[\"__v_raw\" /* RAW */]);\r\n }\r\n return !!(value && value[\"__v_isReactive\" /* IS_REACTIVE */]);\r\n}\r\nfunction isReadonly(value) {\r\n return !!(value && value[\"__v_isReadonly\" /* IS_READONLY */]);\r\n}\r\nfunction isShallow(value) {\r\n return !!(value && value[\"__v_isShallow\" /* IS_SHALLOW */]);\r\n}\r\nfunction isProxy(value) {\r\n return isReactive(value) || isReadonly(value);\r\n}\r\nfunction toRaw(observed) {\r\n const raw = observed && observed[\"__v_raw\" /* RAW */];\r\n return raw ? toRaw(raw) : observed;\r\n}\r\nfunction markRaw(value) {\r\n def(value, \"__v_skip\" /* SKIP */, true);\r\n return value;\r\n}\r\nconst toReactive = (value) => isObject(value) ? reactive(value) : value;\r\nconst toReadonly = (value) => isObject(value) ? readonly(value) : value;\n\nfunction trackRefValue(ref) {\r\n if (shouldTrack && activeEffect) {\r\n ref = toRaw(ref);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n trackEffects(ref.dep || (ref.dep = createDep()), {\r\n target: ref,\r\n type: \"get\" /* GET */,\r\n key: 'value'\r\n });\r\n }\r\n else {\r\n trackEffects(ref.dep || (ref.dep = createDep()));\r\n }\r\n }\r\n}\r\nfunction triggerRefValue(ref, newVal) {\r\n ref = toRaw(ref);\r\n if (ref.dep) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n triggerEffects(ref.dep, {\r\n target: ref,\r\n type: \"set\" /* SET */,\r\n key: 'value',\r\n newValue: newVal\r\n });\r\n }\r\n else {\r\n triggerEffects(ref.dep);\r\n }\r\n }\r\n}\r\nfunction isRef(r) {\r\n return !!(r && r.__v_isRef === true);\r\n}\r\nfunction ref(value) {\r\n return createRef(value, false);\r\n}\r\nfunction shallowRef(value) {\r\n return createRef(value, true);\r\n}\r\nfunction createRef(rawValue, shallow) {\r\n if (isRef(rawValue)) {\r\n return rawValue;\r\n }\r\n return new RefImpl(rawValue, shallow);\r\n}\r\nclass RefImpl {\r\n constructor(value, __v_isShallow) {\r\n this.__v_isShallow = __v_isShallow;\r\n this.dep = undefined;\r\n this.__v_isRef = true;\r\n this._rawValue = __v_isShallow ? value : toRaw(value);\r\n this._value = __v_isShallow ? value : toReactive(value);\r\n }\r\n get value() {\r\n trackRefValue(this);\r\n return this._value;\r\n }\r\n set value(newVal) {\r\n newVal = this.__v_isShallow ? newVal : toRaw(newVal);\r\n if (hasChanged(newVal, this._rawValue)) {\r\n this._rawValue = newVal;\r\n this._value = this.__v_isShallow ? newVal : toReactive(newVal);\r\n triggerRefValue(this, newVal);\r\n }\r\n }\r\n}\r\nfunction triggerRef(ref) {\r\n triggerRefValue(ref, (process.env.NODE_ENV !== 'production') ? ref.value : void 0);\r\n}\r\nfunction unref(ref) {\r\n return isRef(ref) ? ref.value : ref;\r\n}\r\nconst shallowUnwrapHandlers = {\r\n get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)),\r\n set: (target, key, value, receiver) => {\r\n const oldValue = target[key];\r\n if (isRef(oldValue) && !isRef(value)) {\r\n oldValue.value = value;\r\n return true;\r\n }\r\n else {\r\n return Reflect.set(target, key, value, receiver);\r\n }\r\n }\r\n};\r\nfunction proxyRefs(objectWithRefs) {\r\n return isReactive(objectWithRefs)\r\n ? objectWithRefs\r\n : new Proxy(objectWithRefs, shallowUnwrapHandlers);\r\n}\r\nclass CustomRefImpl {\r\n constructor(factory) {\r\n this.dep = undefined;\r\n this.__v_isRef = true;\r\n const { get, set } = factory(() => trackRefValue(this), () => triggerRefValue(this));\r\n this._get = get;\r\n this._set = set;\r\n }\r\n get value() {\r\n return this._get();\r\n }\r\n set value(newVal) {\r\n this._set(newVal);\r\n }\r\n}\r\nfunction customRef(factory) {\r\n return new CustomRefImpl(factory);\r\n}\r\nfunction toRefs(object) {\r\n if ((process.env.NODE_ENV !== 'production') && !isProxy(object)) {\r\n console.warn(`toRefs() expects a reactive object but received a plain one.`);\r\n }\r\n const ret = isArray(object) ? new Array(object.length) : {};\r\n for (const key in object) {\r\n ret[key] = toRef(object, key);\r\n }\r\n return ret;\r\n}\r\nclass ObjectRefImpl {\r\n constructor(_object, _key, _defaultValue) {\r\n this._object = _object;\r\n this._key = _key;\r\n this._defaultValue = _defaultValue;\r\n this.__v_isRef = true;\r\n }\r\n get value() {\r\n const val = this._object[this._key];\r\n return val === undefined ? this._defaultValue : val;\r\n }\r\n set value(newVal) {\r\n this._object[this._key] = newVal;\r\n }\r\n}\r\nfunction toRef(object, key, defaultValue) {\r\n const val = object[key];\r\n return isRef(val)\r\n ? val\r\n : new ObjectRefImpl(object, key, defaultValue);\r\n}\n\nclass ComputedRefImpl {\r\n constructor(getter, _setter, isReadonly, isSSR) {\r\n this._setter = _setter;\r\n this.dep = undefined;\r\n this.__v_isRef = true;\r\n this._dirty = true;\r\n this.effect = new ReactiveEffect(getter, () => {\r\n if (!this._dirty) {\r\n this._dirty = true;\r\n triggerRefValue(this);\r\n }\r\n });\r\n this.effect.computed = this;\r\n this.effect.active = this._cacheable = !isSSR;\r\n this[\"__v_isReadonly\" /* IS_READONLY */] = isReadonly;\r\n }\r\n get value() {\r\n // the computed ref may get wrapped by other proxies e.g. readonly() #3376\r\n const self = toRaw(this);\r\n trackRefValue(self);\r\n if (self._dirty || !self._cacheable) {\r\n self._dirty = false;\r\n self._value = self.effect.run();\r\n }\r\n return self._value;\r\n }\r\n set value(newValue) {\r\n this._setter(newValue);\r\n }\r\n}\r\nfunction computed(getterOrOptions, debugOptions, isSSR = false) {\r\n let getter;\r\n let setter;\r\n const onlyGetter = isFunction(getterOrOptions);\r\n if (onlyGetter) {\r\n getter = getterOrOptions;\r\n setter = (process.env.NODE_ENV !== 'production')\r\n ? () => {\r\n console.warn('Write operation failed: computed value is readonly');\r\n }\r\n : NOOP;\r\n }\r\n else {\r\n getter = getterOrOptions.get;\r\n setter = getterOrOptions.set;\r\n }\r\n const cRef = new ComputedRefImpl(getter, setter, onlyGetter || !setter, isSSR);\r\n if ((process.env.NODE_ENV !== 'production') && debugOptions && !isSSR) {\r\n cRef.effect.onTrack = debugOptions.onTrack;\r\n cRef.effect.onTrigger = debugOptions.onTrigger;\r\n }\r\n return cRef;\r\n}\n\nvar _a;\r\nconst tick = /*#__PURE__*/ Promise.resolve();\r\nconst queue = [];\r\nlet queued = false;\r\nconst scheduler = (fn) => {\r\n queue.push(fn);\r\n if (!queued) {\r\n queued = true;\r\n tick.then(flush);\r\n }\r\n};\r\nconst flush = () => {\r\n for (let i = 0; i < queue.length; i++) {\r\n queue[i]();\r\n }\r\n queue.length = 0;\r\n queued = false;\r\n};\r\nclass DeferredComputedRefImpl {\r\n constructor(getter) {\r\n this.dep = undefined;\r\n this._dirty = true;\r\n this.__v_isRef = true;\r\n this[_a] = true;\r\n let compareTarget;\r\n let hasCompareTarget = false;\r\n let scheduled = false;\r\n this.effect = new ReactiveEffect(getter, (computedTrigger) => {\r\n if (this.dep) {\r\n if (computedTrigger) {\r\n compareTarget = this._value;\r\n hasCompareTarget = true;\r\n }\r\n else if (!scheduled) {\r\n const valueToCompare = hasCompareTarget ? compareTarget : this._value;\r\n scheduled = true;\r\n hasCompareTarget = false;\r\n scheduler(() => {\r\n if (this.effect.active && this._get() !== valueToCompare) {\r\n triggerRefValue(this);\r\n }\r\n scheduled = false;\r\n });\r\n }\r\n // chained upstream computeds are notified synchronously to ensure\r\n // value invalidation in case of sync access; normal effects are\r\n // deferred to be triggered in scheduler.\r\n for (const e of this.dep) {\r\n if (e.computed instanceof DeferredComputedRefImpl) {\r\n e.scheduler(true /* computedTrigger */);\r\n }\r\n }\r\n }\r\n this._dirty = true;\r\n });\r\n this.effect.computed = this;\r\n }\r\n _get() {\r\n if (this._dirty) {\r\n this._dirty = false;\r\n return (this._value = this.effect.run());\r\n }\r\n return this._value;\r\n }\r\n get value() {\r\n trackRefValue(this);\r\n // the computed ref may get wrapped by other proxies e.g. readonly() #3376\r\n return toRaw(this)._get();\r\n }\r\n}\r\n_a = \"__v_isReadonly\" /* IS_READONLY */;\r\nfunction deferredComputed(getter) {\r\n return new DeferredComputedRefImpl(getter);\r\n}\n\nexport { EffectScope, ITERATE_KEY, ReactiveEffect, computed, customRef, deferredComputed, effect, effectScope, enableTracking, getCurrentScope, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, pauseTracking, proxyRefs, reactive, readonly, ref, resetTracking, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, track, trigger, triggerRef, unref };\n","import { pauseTracking, resetTracking, isRef, toRaw, isShallow as isShallow$1, isReactive, ReactiveEffect, ref, shallowReadonly, track, reactive, shallowReactive, trigger, isProxy, EffectScope, markRaw, proxyRefs, computed as computed$1, isReadonly } from '@vue/reactivity';\nexport { EffectScope, ReactiveEffect, customRef, effect, effectScope, getCurrentScope, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, triggerRef, unref } from '@vue/reactivity';\nimport { isString, isFunction, isPromise, isArray, NOOP, getGlobalThis, extend, EMPTY_OBJ, toHandlerKey, toNumber, hyphenate, camelize, isOn, hasOwn, isModelListener, hasChanged, remove, isObject, isSet, isMap, isPlainObject, invokeArrayFns, isBuiltInDirective, capitalize, isGloballyWhitelisted, def, isReservedProp, EMPTY_ARR, toRawType, makeMap, NO, normalizeClass, normalizeStyle } from '@vue/shared';\nexport { camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared';\n\nconst stack = [];\r\nfunction pushWarningContext(vnode) {\r\n stack.push(vnode);\r\n}\r\nfunction popWarningContext() {\r\n stack.pop();\r\n}\r\nfunction warn(msg, ...args) {\r\n // avoid props formatting or warn handler tracking deps that might be mutated\r\n // during patch, leading to infinite recursion.\r\n pauseTracking();\r\n const instance = stack.length ? stack[stack.length - 1].component : null;\r\n const appWarnHandler = instance && instance.appContext.config.warnHandler;\r\n const trace = getComponentTrace();\r\n if (appWarnHandler) {\r\n callWithErrorHandling(appWarnHandler, instance, 11 /* APP_WARN_HANDLER */, [\r\n msg + args.join(''),\r\n instance && instance.proxy,\r\n trace\r\n .map(({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`)\r\n .join('\\n'),\r\n trace\r\n ]);\r\n }\r\n else {\r\n const warnArgs = [`[Vue warn]: ${msg}`, ...args];\r\n /* istanbul ignore if */\r\n if (trace.length &&\r\n // avoid spamming console during tests\r\n !false) {\r\n warnArgs.push(`\\n`, ...formatTrace(trace));\r\n }\r\n console.warn(...warnArgs);\r\n }\r\n resetTracking();\r\n}\r\nfunction getComponentTrace() {\r\n let currentVNode = stack[stack.length - 1];\r\n if (!currentVNode) {\r\n return [];\r\n }\r\n // we can't just use the stack because it will be incomplete during updates\r\n // that did not start from the root. Re-construct the parent chain using\r\n // instance parent pointers.\r\n const normalizedStack = [];\r\n while (currentVNode) {\r\n const last = normalizedStack[0];\r\n if (last && last.vnode === currentVNode) {\r\n last.recurseCount++;\r\n }\r\n else {\r\n normalizedStack.push({\r\n vnode: currentVNode,\r\n recurseCount: 0\r\n });\r\n }\r\n const parentInstance = currentVNode.component && currentVNode.component.parent;\r\n currentVNode = parentInstance && parentInstance.vnode;\r\n }\r\n return normalizedStack;\r\n}\r\n/* istanbul ignore next */\r\nfunction formatTrace(trace) {\r\n const logs = [];\r\n trace.forEach((entry, i) => {\r\n logs.push(...(i === 0 ? [] : [`\\n`]), ...formatTraceEntry(entry));\r\n });\r\n return logs;\r\n}\r\nfunction formatTraceEntry({ vnode, recurseCount }) {\r\n const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;\r\n const isRoot = vnode.component ? vnode.component.parent == null : false;\r\n const open = ` at <${formatComponentName(vnode.component, vnode.type, isRoot)}`;\r\n const close = `>` + postfix;\r\n return vnode.props\r\n ? [open, ...formatProps(vnode.props), close]\r\n : [open + close];\r\n}\r\n/* istanbul ignore next */\r\nfunction formatProps(props) {\r\n const res = [];\r\n const keys = Object.keys(props);\r\n keys.slice(0, 3).forEach(key => {\r\n res.push(...formatProp(key, props[key]));\r\n });\r\n if (keys.length > 3) {\r\n res.push(` ...`);\r\n }\r\n return res;\r\n}\r\n/* istanbul ignore next */\r\nfunction formatProp(key, value, raw) {\r\n if (isString(value)) {\r\n value = JSON.stringify(value);\r\n return raw ? value : [`${key}=${value}`];\r\n }\r\n else if (typeof value === 'number' ||\r\n typeof value === 'boolean' ||\r\n value == null) {\r\n return raw ? value : [`${key}=${value}`];\r\n }\r\n else if (isRef(value)) {\r\n value = formatProp(key, toRaw(value.value), true);\r\n return raw ? value : [`${key}=Ref<`, value, `>`];\r\n }\r\n else if (isFunction(value)) {\r\n return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];\r\n }\r\n else {\r\n value = toRaw(value);\r\n return raw ? value : [`${key}=`, value];\r\n }\r\n}\n\nconst ErrorTypeStrings = {\r\n [\"sp\" /* SERVER_PREFETCH */]: 'serverPrefetch hook',\r\n [\"bc\" /* BEFORE_CREATE */]: 'beforeCreate hook',\r\n [\"c\" /* CREATED */]: 'created hook',\r\n [\"bm\" /* BEFORE_MOUNT */]: 'beforeMount hook',\r\n [\"m\" /* MOUNTED */]: 'mounted hook',\r\n [\"bu\" /* BEFORE_UPDATE */]: 'beforeUpdate hook',\r\n [\"u\" /* UPDATED */]: 'updated',\r\n [\"bum\" /* BEFORE_UNMOUNT */]: 'beforeUnmount hook',\r\n [\"um\" /* UNMOUNTED */]: 'unmounted hook',\r\n [\"a\" /* ACTIVATED */]: 'activated hook',\r\n [\"da\" /* DEACTIVATED */]: 'deactivated hook',\r\n [\"ec\" /* ERROR_CAPTURED */]: 'errorCaptured hook',\r\n [\"rtc\" /* RENDER_TRACKED */]: 'renderTracked hook',\r\n [\"rtg\" /* RENDER_TRIGGERED */]: 'renderTriggered hook',\r\n [0 /* SETUP_FUNCTION */]: 'setup function',\r\n [1 /* RENDER_FUNCTION */]: 'render function',\r\n [2 /* WATCH_GETTER */]: 'watcher getter',\r\n [3 /* WATCH_CALLBACK */]: 'watcher callback',\r\n [4 /* WATCH_CLEANUP */]: 'watcher cleanup function',\r\n [5 /* NATIVE_EVENT_HANDLER */]: 'native event handler',\r\n [6 /* COMPONENT_EVENT_HANDLER */]: 'component event handler',\r\n [7 /* VNODE_HOOK */]: 'vnode hook',\r\n [8 /* DIRECTIVE_HOOK */]: 'directive hook',\r\n [9 /* TRANSITION_HOOK */]: 'transition hook',\r\n [10 /* APP_ERROR_HANDLER */]: 'app errorHandler',\r\n [11 /* APP_WARN_HANDLER */]: 'app warnHandler',\r\n [12 /* FUNCTION_REF */]: 'ref function',\r\n [13 /* ASYNC_COMPONENT_LOADER */]: 'async component loader',\r\n [14 /* SCHEDULER */]: 'scheduler flush. This is likely a Vue internals bug. ' +\r\n 'Please open an issue at https://new-issue.vuejs.org/?repo=vuejs/core'\r\n};\r\nfunction callWithErrorHandling(fn, instance, type, args) {\r\n let res;\r\n try {\r\n res = args ? fn(...args) : fn();\r\n }\r\n catch (err) {\r\n handleError(err, instance, type);\r\n }\r\n return res;\r\n}\r\nfunction callWithAsyncErrorHandling(fn, instance, type, args) {\r\n if (isFunction(fn)) {\r\n const res = callWithErrorHandling(fn, instance, type, args);\r\n if (res && isPromise(res)) {\r\n res.catch(err => {\r\n handleError(err, instance, type);\r\n });\r\n }\r\n return res;\r\n }\r\n const values = [];\r\n for (let i = 0; i < fn.length; i++) {\r\n values.push(callWithAsyncErrorHandling(fn[i], instance, type, args));\r\n }\r\n return values;\r\n}\r\nfunction handleError(err, instance, type, throwInDev = true) {\r\n const contextVNode = instance ? instance.vnode : null;\r\n if (instance) {\r\n let cur = instance.parent;\r\n // the exposed instance is the render proxy to keep it consistent with 2.x\r\n const exposedInstance = instance.proxy;\r\n // in production the hook receives only the error code\r\n const errorInfo = (process.env.NODE_ENV !== 'production') ? ErrorTypeStrings[type] : type;\r\n while (cur) {\r\n const errorCapturedHooks = cur.ec;\r\n if (errorCapturedHooks) {\r\n for (let i = 0; i < errorCapturedHooks.length; i++) {\r\n if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) {\r\n return;\r\n }\r\n }\r\n }\r\n cur = cur.parent;\r\n }\r\n // app-level handling\r\n const appErrorHandler = instance.appContext.config.errorHandler;\r\n if (appErrorHandler) {\r\n callWithErrorHandling(appErrorHandler, null, 10 /* APP_ERROR_HANDLER */, [err, exposedInstance, errorInfo]);\r\n return;\r\n }\r\n }\r\n logError(err, type, contextVNode, throwInDev);\r\n}\r\nfunction logError(err, type, contextVNode, throwInDev = true) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const info = ErrorTypeStrings[type];\r\n if (contextVNode) {\r\n pushWarningContext(contextVNode);\r\n }\r\n warn(`Unhandled error${info ? ` during execution of ${info}` : ``}`);\r\n if (contextVNode) {\r\n popWarningContext();\r\n }\r\n // crash in dev by default so it's more noticeable\r\n if (throwInDev) {\r\n throw err;\r\n }\r\n else {\r\n console.error(err);\r\n }\r\n }\r\n else {\r\n // recover in prod to reduce the impact on end-user\r\n console.error(err);\r\n }\r\n}\n\nlet isFlushing = false;\r\nlet isFlushPending = false;\r\nconst queue = [];\r\nlet flushIndex = 0;\r\nconst pendingPreFlushCbs = [];\r\nlet activePreFlushCbs = null;\r\nlet preFlushIndex = 0;\r\nconst pendingPostFlushCbs = [];\r\nlet activePostFlushCbs = null;\r\nlet postFlushIndex = 0;\r\nconst resolvedPromise = /*#__PURE__*/ Promise.resolve();\r\nlet currentFlushPromise = null;\r\nlet currentPreFlushParentJob = null;\r\nconst RECURSION_LIMIT = 100;\r\nfunction nextTick(fn) {\r\n const p = currentFlushPromise || resolvedPromise;\r\n return fn ? p.then(this ? fn.bind(this) : fn) : p;\r\n}\r\n// #2768\r\n// Use binary-search to find a suitable position in the queue,\r\n// so that the queue maintains the increasing order of job's id,\r\n// which can prevent the job from being skipped and also can avoid repeated patching.\r\nfunction findInsertionIndex(id) {\r\n // the start index should be `flushIndex + 1`\r\n let start = flushIndex + 1;\r\n let end = queue.length;\r\n while (start < end) {\r\n const middle = (start + end) >>> 1;\r\n const middleJobId = getId(queue[middle]);\r\n middleJobId < id ? (start = middle + 1) : (end = middle);\r\n }\r\n return start;\r\n}\r\nfunction queueJob(job) {\r\n // the dedupe search uses the startIndex argument of Array.includes()\r\n // by default the search index includes the current job that is being run\r\n // so it cannot recursively trigger itself again.\r\n // if the job is a watch() callback, the search will start with a +1 index to\r\n // allow it recursively trigger itself - it is the user's responsibility to\r\n // ensure it doesn't end up in an infinite loop.\r\n if ((!queue.length ||\r\n !queue.includes(job, isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex)) &&\r\n job !== currentPreFlushParentJob) {\r\n if (job.id == null) {\r\n queue.push(job);\r\n }\r\n else {\r\n queue.splice(findInsertionIndex(job.id), 0, job);\r\n }\r\n queueFlush();\r\n }\r\n}\r\nfunction queueFlush() {\r\n if (!isFlushing && !isFlushPending) {\r\n isFlushPending = true;\r\n currentFlushPromise = resolvedPromise.then(flushJobs);\r\n }\r\n}\r\nfunction invalidateJob(job) {\r\n const i = queue.indexOf(job);\r\n if (i > flushIndex) {\r\n queue.splice(i, 1);\r\n }\r\n}\r\nfunction queueCb(cb, activeQueue, pendingQueue, index) {\r\n if (!isArray(cb)) {\r\n if (!activeQueue ||\r\n !activeQueue.includes(cb, cb.allowRecurse ? index + 1 : index)) {\r\n pendingQueue.push(cb);\r\n }\r\n }\r\n else {\r\n // if cb is an array, it is a component lifecycle hook which can only be\r\n // triggered by a job, which is already deduped in the main queue, so\r\n // we can skip duplicate check here to improve perf\r\n pendingQueue.push(...cb);\r\n }\r\n queueFlush();\r\n}\r\nfunction queuePreFlushCb(cb) {\r\n queueCb(cb, activePreFlushCbs, pendingPreFlushCbs, preFlushIndex);\r\n}\r\nfunction queuePostFlushCb(cb) {\r\n queueCb(cb, activePostFlushCbs, pendingPostFlushCbs, postFlushIndex);\r\n}\r\nfunction flushPreFlushCbs(seen, parentJob = null) {\r\n if (pendingPreFlushCbs.length) {\r\n currentPreFlushParentJob = parentJob;\r\n activePreFlushCbs = [...new Set(pendingPreFlushCbs)];\r\n pendingPreFlushCbs.length = 0;\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n seen = seen || new Map();\r\n }\r\n for (preFlushIndex = 0; preFlushIndex < activePreFlushCbs.length; preFlushIndex++) {\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n checkRecursiveUpdates(seen, activePreFlushCbs[preFlushIndex])) {\r\n continue;\r\n }\r\n activePreFlushCbs[preFlushIndex]();\r\n }\r\n activePreFlushCbs = null;\r\n preFlushIndex = 0;\r\n currentPreFlushParentJob = null;\r\n // recursively flush until it drains\r\n flushPreFlushCbs(seen, parentJob);\r\n }\r\n}\r\nfunction flushPostFlushCbs(seen) {\r\n // flush any pre cbs queued during the flush (e.g. pre watchers)\r\n flushPreFlushCbs();\r\n if (pendingPostFlushCbs.length) {\r\n const deduped = [...new Set(pendingPostFlushCbs)];\r\n pendingPostFlushCbs.length = 0;\r\n // #1947 already has active queue, nested flushPostFlushCbs call\r\n if (activePostFlushCbs) {\r\n activePostFlushCbs.push(...deduped);\r\n return;\r\n }\r\n activePostFlushCbs = deduped;\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n seen = seen || new Map();\r\n }\r\n activePostFlushCbs.sort((a, b) => getId(a) - getId(b));\r\n for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {\r\n continue;\r\n }\r\n activePostFlushCbs[postFlushIndex]();\r\n }\r\n activePostFlushCbs = null;\r\n postFlushIndex = 0;\r\n }\r\n}\r\nconst getId = (job) => job.id == null ? Infinity : job.id;\r\nfunction flushJobs(seen) {\r\n isFlushPending = false;\r\n isFlushing = true;\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n seen = seen || new Map();\r\n }\r\n flushPreFlushCbs(seen);\r\n // Sort queue before flush.\r\n // This ensures that:\r\n // 1. Components are updated from parent to child. (because parent is always\r\n // created before the child so its render effect will have smaller\r\n // priority number)\r\n // 2. If a component is unmounted during a parent component's update,\r\n // its update can be skipped.\r\n queue.sort((a, b) => getId(a) - getId(b));\r\n // conditional usage of checkRecursiveUpdate must be determined out of\r\n // try ... catch block since Rollup by default de-optimizes treeshaking\r\n // inside try-catch. This can leave all warning code unshaked. Although\r\n // they would get eventually shaken by a minifier like terser, some minifiers\r\n // would fail to do that (e.g. https://github.com/evanw/esbuild/issues/1610)\r\n const check = (process.env.NODE_ENV !== 'production')\r\n ? (job) => checkRecursiveUpdates(seen, job)\r\n : NOOP;\r\n try {\r\n for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {\r\n const job = queue[flushIndex];\r\n if (job && job.active !== false) {\r\n if ((process.env.NODE_ENV !== 'production') && check(job)) {\r\n continue;\r\n }\r\n // console.log(`running:`, job.id)\r\n callWithErrorHandling(job, null, 14 /* SCHEDULER */);\r\n }\r\n }\r\n }\r\n finally {\r\n flushIndex = 0;\r\n queue.length = 0;\r\n flushPostFlushCbs(seen);\r\n isFlushing = false;\r\n currentFlushPromise = null;\r\n // some postFlushCb queued jobs!\r\n // keep flushing until it drains.\r\n if (queue.length ||\r\n pendingPreFlushCbs.length ||\r\n pendingPostFlushCbs.length) {\r\n flushJobs(seen);\r\n }\r\n }\r\n}\r\nfunction checkRecursiveUpdates(seen, fn) {\r\n if (!seen.has(fn)) {\r\n seen.set(fn, 1);\r\n }\r\n else {\r\n const count = seen.get(fn);\r\n if (count > RECURSION_LIMIT) {\r\n const instance = fn.ownerInstance;\r\n const componentName = instance && getComponentName(instance.type);\r\n warn(`Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. ` +\r\n `This means you have a reactive effect that is mutating its own ` +\r\n `dependencies and thus recursively triggering itself. Possible sources ` +\r\n `include component template, render function, updated hook or ` +\r\n `watcher source function.`);\r\n return true;\r\n }\r\n else {\r\n seen.set(fn, count + 1);\r\n }\r\n }\r\n}\n\n/* eslint-disable no-restricted-globals */\r\nlet isHmrUpdating = false;\r\nconst hmrDirtyComponents = new Set();\r\n// Expose the HMR runtime on the global object\r\n// This makes it entirely tree-shakable without polluting the exports and makes\r\n// it easier to be used in toolings like vue-loader\r\n// Note: for a component to be eligible for HMR it also needs the __hmrId option\r\n// to be set so that its instances can be registered / removed.\r\nif ((process.env.NODE_ENV !== 'production')) {\r\n getGlobalThis().__VUE_HMR_RUNTIME__ = {\r\n createRecord: tryWrap(createRecord),\r\n rerender: tryWrap(rerender),\r\n reload: tryWrap(reload)\r\n };\r\n}\r\nconst map = new Map();\r\nfunction registerHMR(instance) {\r\n const id = instance.type.__hmrId;\r\n let record = map.get(id);\r\n if (!record) {\r\n createRecord(id, instance.type);\r\n record = map.get(id);\r\n }\r\n record.instances.add(instance);\r\n}\r\nfunction unregisterHMR(instance) {\r\n map.get(instance.type.__hmrId).instances.delete(instance);\r\n}\r\nfunction createRecord(id, initialDef) {\r\n if (map.has(id)) {\r\n return false;\r\n }\r\n map.set(id, {\r\n initialDef: normalizeClassComponent(initialDef),\r\n instances: new Set()\r\n });\r\n return true;\r\n}\r\nfunction normalizeClassComponent(component) {\r\n return isClassComponent(component) ? component.__vccOpts : component;\r\n}\r\nfunction rerender(id, newRender) {\r\n const record = map.get(id);\r\n if (!record) {\r\n return;\r\n }\r\n // update initial record (for not-yet-rendered component)\r\n record.initialDef.render = newRender;\r\n [...record.instances].forEach(instance => {\r\n if (newRender) {\r\n instance.render = newRender;\r\n normalizeClassComponent(instance.type).render = newRender;\r\n }\r\n instance.renderCache = [];\r\n // this flag forces child components with slot content to update\r\n isHmrUpdating = true;\r\n instance.update();\r\n isHmrUpdating = false;\r\n });\r\n}\r\nfunction reload(id, newComp) {\r\n const record = map.get(id);\r\n if (!record)\r\n return;\r\n newComp = normalizeClassComponent(newComp);\r\n // update initial def (for not-yet-rendered components)\r\n updateComponentDef(record.initialDef, newComp);\r\n // create a snapshot which avoids the set being mutated during updates\r\n const instances = [...record.instances];\r\n for (const instance of instances) {\r\n const oldComp = normalizeClassComponent(instance.type);\r\n if (!hmrDirtyComponents.has(oldComp)) {\r\n // 1. Update existing comp definition to match new one\r\n if (oldComp !== record.initialDef) {\r\n updateComponentDef(oldComp, newComp);\r\n }\r\n // 2. mark definition dirty. This forces the renderer to replace the\r\n // component on patch.\r\n hmrDirtyComponents.add(oldComp);\r\n }\r\n // 3. invalidate options resolution cache\r\n instance.appContext.optionsCache.delete(instance.type);\r\n // 4. actually update\r\n if (instance.ceReload) {\r\n // custom element\r\n hmrDirtyComponents.add(oldComp);\r\n instance.ceReload(newComp.styles);\r\n hmrDirtyComponents.delete(oldComp);\r\n }\r\n else if (instance.parent) {\r\n // 4. Force the parent instance to re-render. This will cause all updated\r\n // components to be unmounted and re-mounted. Queue the update so that we\r\n // don't end up forcing the same parent to re-render multiple times.\r\n queueJob(instance.parent.update);\r\n // instance is the inner component of an async custom element\r\n // invoke to reset styles\r\n if (instance.parent.type.__asyncLoader &&\r\n instance.parent.ceReload) {\r\n instance.parent.ceReload(newComp.styles);\r\n }\r\n }\r\n else if (instance.appContext.reload) {\r\n // root instance mounted via createApp() has a reload method\r\n instance.appContext.reload();\r\n }\r\n else if (typeof window !== 'undefined') {\r\n // root instance inside tree created via raw render(). Force reload.\r\n window.location.reload();\r\n }\r\n else {\r\n console.warn('[HMR] Root or manually mounted instance modified. Full reload required.');\r\n }\r\n }\r\n // 5. make sure to cleanup dirty hmr components after update\r\n queuePostFlushCb(() => {\r\n for (const instance of instances) {\r\n hmrDirtyComponents.delete(normalizeClassComponent(instance.type));\r\n }\r\n });\r\n}\r\nfunction updateComponentDef(oldComp, newComp) {\r\n extend(oldComp, newComp);\r\n for (const key in oldComp) {\r\n if (key !== '__file' && !(key in newComp)) {\r\n delete oldComp[key];\r\n }\r\n }\r\n}\r\nfunction tryWrap(fn) {\r\n return (id, arg) => {\r\n try {\r\n return fn(id, arg);\r\n }\r\n catch (e) {\r\n console.error(e);\r\n console.warn(`[HMR] Something went wrong during Vue component hot-reload. ` +\r\n `Full reload required.`);\r\n }\r\n };\r\n}\n\nlet devtools;\r\nlet buffer = [];\r\nlet devtoolsNotInstalled = false;\r\nfunction emit(event, ...args) {\r\n if (devtools) {\r\n devtools.emit(event, ...args);\r\n }\r\n else if (!devtoolsNotInstalled) {\r\n buffer.push({ event, args });\r\n }\r\n}\r\nfunction setDevtoolsHook(hook, target) {\r\n var _a, _b;\r\n devtools = hook;\r\n if (devtools) {\r\n devtools.enabled = true;\r\n buffer.forEach(({ event, args }) => devtools.emit(event, ...args));\r\n buffer = [];\r\n }\r\n else if (\r\n // handle late devtools injection - only do this if we are in an actual\r\n // browser environment to avoid the timer handle stalling test runner exit\r\n // (#4815)\r\n typeof window !== 'undefined' &&\r\n // some envs mock window but not fully\r\n window.HTMLElement &&\r\n // also exclude jsdom\r\n !((_b = (_a = window.navigator) === null || _a === void 0 ? void 0 : _a.userAgent) === null || _b === void 0 ? void 0 : _b.includes('jsdom'))) {\r\n const replay = (target.__VUE_DEVTOOLS_HOOK_REPLAY__ =\r\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []);\r\n replay.push((newHook) => {\r\n setDevtoolsHook(newHook, target);\r\n });\r\n // clear buffer after 3s - the user probably doesn't have devtools installed\r\n // at all, and keeping the buffer will cause memory leaks (#4738)\r\n setTimeout(() => {\r\n if (!devtools) {\r\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;\r\n devtoolsNotInstalled = true;\r\n buffer = [];\r\n }\r\n }, 3000);\r\n }\r\n else {\r\n // non-browser env, assume not installed\r\n devtoolsNotInstalled = true;\r\n buffer = [];\r\n }\r\n}\r\nfunction devtoolsInitApp(app, version) {\r\n emit(\"app:init\" /* APP_INIT */, app, version, {\r\n Fragment,\r\n Text,\r\n Comment,\r\n Static\r\n });\r\n}\r\nfunction devtoolsUnmountApp(app) {\r\n emit(\"app:unmount\" /* APP_UNMOUNT */, app);\r\n}\r\nconst devtoolsComponentAdded = /*#__PURE__*/ createDevtoolsComponentHook(\"component:added\" /* COMPONENT_ADDED */);\r\nconst devtoolsComponentUpdated = \r\n/*#__PURE__*/ createDevtoolsComponentHook(\"component:updated\" /* COMPONENT_UPDATED */);\r\nconst devtoolsComponentRemoved = \r\n/*#__PURE__*/ createDevtoolsComponentHook(\"component:removed\" /* COMPONENT_REMOVED */);\r\nfunction createDevtoolsComponentHook(hook) {\r\n return (component) => {\r\n emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);\r\n };\r\n}\r\nconst devtoolsPerfStart = /*#__PURE__*/ createDevtoolsPerformanceHook(\"perf:start\" /* PERFORMANCE_START */);\r\nconst devtoolsPerfEnd = /*#__PURE__*/ createDevtoolsPerformanceHook(\"perf:end\" /* PERFORMANCE_END */);\r\nfunction createDevtoolsPerformanceHook(hook) {\r\n return (component, type, time) => {\r\n emit(hook, component.appContext.app, component.uid, component, type, time);\r\n };\r\n}\r\nfunction devtoolsComponentEmit(component, event, params) {\r\n emit(\"component:emit\" /* COMPONENT_EMIT */, component.appContext.app, component, event, params);\r\n}\n\nfunction emit$1(instance, event, ...rawArgs) {\r\n if (instance.isUnmounted)\r\n return;\r\n const props = instance.vnode.props || EMPTY_OBJ;\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const { emitsOptions, propsOptions: [propsOptions] } = instance;\r\n if (emitsOptions) {\r\n if (!(event in emitsOptions) &&\r\n !(false )) {\r\n if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {\r\n warn(`Component emitted event \"${event}\" but it is neither declared in ` +\r\n `the emits option nor as an \"${toHandlerKey(event)}\" prop.`);\r\n }\r\n }\r\n else {\r\n const validator = emitsOptions[event];\r\n if (isFunction(validator)) {\r\n const isValid = validator(...rawArgs);\r\n if (!isValid) {\r\n warn(`Invalid event arguments: event validation failed for event \"${event}\".`);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n let args = rawArgs;\r\n const isModelListener = event.startsWith('update:');\r\n // for v-model update:xxx events, apply modifiers on args\r\n const modelArg = isModelListener && event.slice(7);\r\n if (modelArg && modelArg in props) {\r\n const modifiersKey = `${modelArg === 'modelValue' ? 'model' : modelArg}Modifiers`;\r\n const { number, trim } = props[modifiersKey] || EMPTY_OBJ;\r\n if (trim) {\r\n args = rawArgs.map(a => a.trim());\r\n }\r\n if (number) {\r\n args = rawArgs.map(toNumber);\r\n }\r\n }\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n devtoolsComponentEmit(instance, event, args);\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const lowerCaseEvent = event.toLowerCase();\r\n if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {\r\n warn(`Event \"${lowerCaseEvent}\" is emitted in component ` +\r\n `${formatComponentName(instance, instance.type)} but the handler is registered for \"${event}\". ` +\r\n `Note that HTML attributes are case-insensitive and you cannot use ` +\r\n `v-on to listen to camelCase events when using in-DOM templates. ` +\r\n `You should probably use \"${hyphenate(event)}\" instead of \"${event}\".`);\r\n }\r\n }\r\n let handlerName;\r\n let handler = props[(handlerName = toHandlerKey(event))] ||\r\n // also try camelCase event handler (#2249)\r\n props[(handlerName = toHandlerKey(camelize(event)))];\r\n // for v-model update:xxx events, also trigger kebab-case equivalent\r\n // for props passed via kebab-case\r\n if (!handler && isModelListener) {\r\n handler = props[(handlerName = toHandlerKey(hyphenate(event)))];\r\n }\r\n if (handler) {\r\n callWithAsyncErrorHandling(handler, instance, 6 /* COMPONENT_EVENT_HANDLER */, args);\r\n }\r\n const onceHandler = props[handlerName + `Once`];\r\n if (onceHandler) {\r\n if (!instance.emitted) {\r\n instance.emitted = {};\r\n }\r\n else if (instance.emitted[handlerName]) {\r\n return;\r\n }\r\n instance.emitted[handlerName] = true;\r\n callWithAsyncErrorHandling(onceHandler, instance, 6 /* COMPONENT_EVENT_HANDLER */, args);\r\n }\r\n}\r\nfunction normalizeEmitsOptions(comp, appContext, asMixin = false) {\r\n const cache = appContext.emitsCache;\r\n const cached = cache.get(comp);\r\n if (cached !== undefined) {\r\n return cached;\r\n }\r\n const raw = comp.emits;\r\n let normalized = {};\r\n // apply mixin/extends props\r\n let hasExtends = false;\r\n if (__VUE_OPTIONS_API__ && !isFunction(comp)) {\r\n const extendEmits = (raw) => {\r\n const normalizedFromExtend = normalizeEmitsOptions(raw, appContext, true);\r\n if (normalizedFromExtend) {\r\n hasExtends = true;\r\n extend(normalized, normalizedFromExtend);\r\n }\r\n };\r\n if (!asMixin && appContext.mixins.length) {\r\n appContext.mixins.forEach(extendEmits);\r\n }\r\n if (comp.extends) {\r\n extendEmits(comp.extends);\r\n }\r\n if (comp.mixins) {\r\n comp.mixins.forEach(extendEmits);\r\n }\r\n }\r\n if (!raw && !hasExtends) {\r\n cache.set(comp, null);\r\n return null;\r\n }\r\n if (isArray(raw)) {\r\n raw.forEach(key => (normalized[key] = null));\r\n }\r\n else {\r\n extend(normalized, raw);\r\n }\r\n cache.set(comp, normalized);\r\n return normalized;\r\n}\r\n// Check if an incoming prop key is a declared emit event listener.\r\n// e.g. With `emits: { click: null }`, props named `onClick` and `onclick` are\r\n// both considered matched listeners.\r\nfunction isEmitListener(options, key) {\r\n if (!options || !isOn(key)) {\r\n return false;\r\n }\r\n key = key.slice(2).replace(/Once$/, '');\r\n return (hasOwn(options, key[0].toLowerCase() + key.slice(1)) ||\r\n hasOwn(options, hyphenate(key)) ||\r\n hasOwn(options, key));\r\n}\n\n/**\r\n * mark the current rendering instance for asset resolution (e.g.\r\n * resolveComponent, resolveDirective) during render\r\n */\r\nlet currentRenderingInstance = null;\r\nlet currentScopeId = null;\r\n/**\r\n * Note: rendering calls maybe nested. The function returns the parent rendering\r\n * instance if present, which should be restored after the render is done:\r\n *\r\n * ```js\r\n * const prev = setCurrentRenderingInstance(i)\r\n * // ...render\r\n * setCurrentRenderingInstance(prev)\r\n * ```\r\n */\r\nfunction setCurrentRenderingInstance(instance) {\r\n const prev = currentRenderingInstance;\r\n currentRenderingInstance = instance;\r\n currentScopeId = (instance && instance.type.__scopeId) || null;\r\n return prev;\r\n}\r\n/**\r\n * Set scope id when creating hoisted vnodes.\r\n * @private compiler helper\r\n */\r\nfunction pushScopeId(id) {\r\n currentScopeId = id;\r\n}\r\n/**\r\n * Technically we no longer need this after 3.0.8 but we need to keep the same\r\n * API for backwards compat w/ code generated by compilers.\r\n * @private\r\n */\r\nfunction popScopeId() {\r\n currentScopeId = null;\r\n}\r\n/**\r\n * Only for backwards compat\r\n * @private\r\n */\r\nconst withScopeId = (_id) => withCtx;\r\n/**\r\n * Wrap a slot function to memoize current rendering instance\r\n * @private compiler helper\r\n */\r\nfunction withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot // false only\r\n) {\r\n if (!ctx)\r\n return fn;\r\n // already normalized\r\n if (fn._n) {\r\n return fn;\r\n }\r\n const renderFnWithContext = (...args) => {\r\n // If a user calls a compiled slot inside a template expression (#1745), it\r\n // can mess up block tracking, so by default we disable block tracking and\r\n // force bail out when invoking a compiled slot (indicated by the ._d flag).\r\n // This isn't necessary if rendering a compiled ``, so we flip the\r\n // ._d flag off when invoking the wrapped fn inside `renderSlot`.\r\n if (renderFnWithContext._d) {\r\n setBlockTracking(-1);\r\n }\r\n const prevInstance = setCurrentRenderingInstance(ctx);\r\n const res = fn(...args);\r\n setCurrentRenderingInstance(prevInstance);\r\n if (renderFnWithContext._d) {\r\n setBlockTracking(1);\r\n }\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n devtoolsComponentUpdated(ctx);\r\n }\r\n return res;\r\n };\r\n // mark normalized to avoid duplicated wrapping\r\n renderFnWithContext._n = true;\r\n // mark this as compiled by default\r\n // this is used in vnode.ts -> normalizeChildren() to set the slot\r\n // rendering flag.\r\n renderFnWithContext._c = true;\r\n // disable block tracking by default\r\n renderFnWithContext._d = true;\r\n return renderFnWithContext;\r\n}\n\n/**\r\n * dev only flag to track whether $attrs was used during render.\r\n * If $attrs was used during render then the warning for failed attrs\r\n * fallthrough can be suppressed.\r\n */\r\nlet accessedAttrs = false;\r\nfunction markAttrsAccessed() {\r\n accessedAttrs = true;\r\n}\r\nfunction renderComponentRoot(instance) {\r\n const { type: Component, vnode, proxy, withProxy, props, propsOptions: [propsOptions], slots, attrs, emit, render, renderCache, data, setupState, ctx, inheritAttrs } = instance;\r\n let result;\r\n let fallthroughAttrs;\r\n const prev = setCurrentRenderingInstance(instance);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n accessedAttrs = false;\r\n }\r\n try {\r\n if (vnode.shapeFlag & 4 /* STATEFUL_COMPONENT */) {\r\n // withProxy is a proxy with a different `has` trap only for\r\n // runtime-compiled render functions using `with` block.\r\n const proxyToUse = withProxy || proxy;\r\n result = normalizeVNode(render.call(proxyToUse, proxyToUse, renderCache, props, setupState, data, ctx));\r\n fallthroughAttrs = attrs;\r\n }\r\n else {\r\n // functional\r\n const render = Component;\r\n // in dev, mark attrs accessed if optional props (attrs === props)\r\n if ((process.env.NODE_ENV !== 'production') && attrs === props) {\r\n markAttrsAccessed();\r\n }\r\n result = normalizeVNode(render.length > 1\r\n ? render(props, (process.env.NODE_ENV !== 'production')\r\n ? {\r\n get attrs() {\r\n markAttrsAccessed();\r\n return attrs;\r\n },\r\n slots,\r\n emit\r\n }\r\n : { attrs, slots, emit })\r\n : render(props, null /* we know it doesn't need it */));\r\n fallthroughAttrs = Component.props\r\n ? attrs\r\n : getFunctionalFallthrough(attrs);\r\n }\r\n }\r\n catch (err) {\r\n blockStack.length = 0;\r\n handleError(err, instance, 1 /* RENDER_FUNCTION */);\r\n result = createVNode(Comment);\r\n }\r\n // attr merging\r\n // in dev mode, comments are preserved, and it's possible for a template\r\n // to have comments along side the root element which makes it a fragment\r\n let root = result;\r\n let setRoot = undefined;\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n result.patchFlag > 0 &&\r\n result.patchFlag & 2048 /* DEV_ROOT_FRAGMENT */) {\r\n [root, setRoot] = getChildRoot(result);\r\n }\r\n if (fallthroughAttrs && inheritAttrs !== false) {\r\n const keys = Object.keys(fallthroughAttrs);\r\n const { shapeFlag } = root;\r\n if (keys.length) {\r\n if (shapeFlag & (1 /* ELEMENT */ | 6 /* COMPONENT */)) {\r\n if (propsOptions && keys.some(isModelListener)) {\r\n // If a v-model listener (onUpdate:xxx) has a corresponding declared\r\n // prop, it indicates this component expects to handle v-model and\r\n // it should not fallthrough.\r\n // related: #1543, #1643, #1989\r\n fallthroughAttrs = filterModelListeners(fallthroughAttrs, propsOptions);\r\n }\r\n root = cloneVNode(root, fallthroughAttrs);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production') && !accessedAttrs && root.type !== Comment) {\r\n const allAttrs = Object.keys(attrs);\r\n const eventAttrs = [];\r\n const extraAttrs = [];\r\n for (let i = 0, l = allAttrs.length; i < l; i++) {\r\n const key = allAttrs[i];\r\n if (isOn(key)) {\r\n // ignore v-model handlers when they fail to fallthrough\r\n if (!isModelListener(key)) {\r\n // remove `on`, lowercase first letter to reflect event casing\r\n // accurately\r\n eventAttrs.push(key[2].toLowerCase() + key.slice(3));\r\n }\r\n }\r\n else {\r\n extraAttrs.push(key);\r\n }\r\n }\r\n if (extraAttrs.length) {\r\n warn(`Extraneous non-props attributes (` +\r\n `${extraAttrs.join(', ')}) ` +\r\n `were passed to component but could not be automatically inherited ` +\r\n `because component renders fragment or text root nodes.`);\r\n }\r\n if (eventAttrs.length) {\r\n warn(`Extraneous non-emits event listeners (` +\r\n `${eventAttrs.join(', ')}) ` +\r\n `were passed to component but could not be automatically inherited ` +\r\n `because component renders fragment or text root nodes. ` +\r\n `If the listener is intended to be a component custom event listener only, ` +\r\n `declare it using the \"emits\" option.`);\r\n }\r\n }\r\n }\r\n }\r\n // inherit directives\r\n if (vnode.dirs) {\r\n if ((process.env.NODE_ENV !== 'production') && !isElementRoot(root)) {\r\n warn(`Runtime directive used on component with non-element root node. ` +\r\n `The directives will not function as intended.`);\r\n }\r\n // clone before mutating since the root may be a hoisted vnode\r\n root = cloneVNode(root);\r\n root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;\r\n }\r\n // inherit transition data\r\n if (vnode.transition) {\r\n if ((process.env.NODE_ENV !== 'production') && !isElementRoot(root)) {\r\n warn(`Component inside renders non-element root node ` +\r\n `that cannot be animated.`);\r\n }\r\n root.transition = vnode.transition;\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && setRoot) {\r\n setRoot(root);\r\n }\r\n else {\r\n result = root;\r\n }\r\n setCurrentRenderingInstance(prev);\r\n return result;\r\n}\r\n/**\r\n * dev only\r\n * In dev mode, template root level comments are rendered, which turns the\r\n * template into a fragment root, but we need to locate the single element\r\n * root for attrs and scope id processing.\r\n */\r\nconst getChildRoot = (vnode) => {\r\n const rawChildren = vnode.children;\r\n const dynamicChildren = vnode.dynamicChildren;\r\n const childRoot = filterSingleRoot(rawChildren);\r\n if (!childRoot) {\r\n return [vnode, undefined];\r\n }\r\n const index = rawChildren.indexOf(childRoot);\r\n const dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1;\r\n const setRoot = (updatedRoot) => {\r\n rawChildren[index] = updatedRoot;\r\n if (dynamicChildren) {\r\n if (dynamicIndex > -1) {\r\n dynamicChildren[dynamicIndex] = updatedRoot;\r\n }\r\n else if (updatedRoot.patchFlag > 0) {\r\n vnode.dynamicChildren = [...dynamicChildren, updatedRoot];\r\n }\r\n }\r\n };\r\n return [normalizeVNode(childRoot), setRoot];\r\n};\r\nfunction filterSingleRoot(children) {\r\n let singleRoot;\r\n for (let i = 0; i < children.length; i++) {\r\n const child = children[i];\r\n if (isVNode(child)) {\r\n // ignore user comment\r\n if (child.type !== Comment || child.children === 'v-if') {\r\n if (singleRoot) {\r\n // has more than 1 non-comment child, return now\r\n return;\r\n }\r\n else {\r\n singleRoot = child;\r\n }\r\n }\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n return singleRoot;\r\n}\r\nconst getFunctionalFallthrough = (attrs) => {\r\n let res;\r\n for (const key in attrs) {\r\n if (key === 'class' || key === 'style' || isOn(key)) {\r\n (res || (res = {}))[key] = attrs[key];\r\n }\r\n }\r\n return res;\r\n};\r\nconst filterModelListeners = (attrs, props) => {\r\n const res = {};\r\n for (const key in attrs) {\r\n if (!isModelListener(key) || !(key.slice(9) in props)) {\r\n res[key] = attrs[key];\r\n }\r\n }\r\n return res;\r\n};\r\nconst isElementRoot = (vnode) => {\r\n return (vnode.shapeFlag & (6 /* COMPONENT */ | 1 /* ELEMENT */) ||\r\n vnode.type === Comment // potential v-if branch switch\r\n );\r\n};\r\nfunction shouldUpdateComponent(prevVNode, nextVNode, optimized) {\r\n const { props: prevProps, children: prevChildren, component } = prevVNode;\r\n const { props: nextProps, children: nextChildren, patchFlag } = nextVNode;\r\n const emits = component.emitsOptions;\r\n // Parent component's render function was hot-updated. Since this may have\r\n // caused the child component's slots content to have changed, we need to\r\n // force the child to update as well.\r\n if ((process.env.NODE_ENV !== 'production') && (prevChildren || nextChildren) && isHmrUpdating) {\r\n return true;\r\n }\r\n // force child update for runtime directive or transition on component vnode.\r\n if (nextVNode.dirs || nextVNode.transition) {\r\n return true;\r\n }\r\n if (optimized && patchFlag >= 0) {\r\n if (patchFlag & 1024 /* DYNAMIC_SLOTS */) {\r\n // slot content that references values that might have changed,\r\n // e.g. in a v-for\r\n return true;\r\n }\r\n if (patchFlag & 16 /* FULL_PROPS */) {\r\n if (!prevProps) {\r\n return !!nextProps;\r\n }\r\n // presence of this flag indicates props are always non-null\r\n return hasPropsChanged(prevProps, nextProps, emits);\r\n }\r\n else if (patchFlag & 8 /* PROPS */) {\r\n const dynamicProps = nextVNode.dynamicProps;\r\n for (let i = 0; i < dynamicProps.length; i++) {\r\n const key = dynamicProps[i];\r\n if (nextProps[key] !== prevProps[key] &&\r\n !isEmitListener(emits, key)) {\r\n return true;\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n // this path is only taken by manually written render functions\r\n // so presence of any children leads to a forced update\r\n if (prevChildren || nextChildren) {\r\n if (!nextChildren || !nextChildren.$stable) {\r\n return true;\r\n }\r\n }\r\n if (prevProps === nextProps) {\r\n return false;\r\n }\r\n if (!prevProps) {\r\n return !!nextProps;\r\n }\r\n if (!nextProps) {\r\n return true;\r\n }\r\n return hasPropsChanged(prevProps, nextProps, emits);\r\n }\r\n return false;\r\n}\r\nfunction hasPropsChanged(prevProps, nextProps, emitsOptions) {\r\n const nextKeys = Object.keys(nextProps);\r\n if (nextKeys.length !== Object.keys(prevProps).length) {\r\n return true;\r\n }\r\n for (let i = 0; i < nextKeys.length; i++) {\r\n const key = nextKeys[i];\r\n if (nextProps[key] !== prevProps[key] &&\r\n !isEmitListener(emitsOptions, key)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n}\r\nfunction updateHOCHostEl({ vnode, parent }, el // HostNode\r\n) {\r\n while (parent && parent.subTree === vnode) {\r\n (vnode = parent.vnode).el = el;\r\n parent = parent.parent;\r\n }\r\n}\n\nconst isSuspense = (type) => type.__isSuspense;\r\n// Suspense exposes a component-like API, and is treated like a component\r\n// in the compiler, but internally it's a special built-in type that hooks\r\n// directly into the renderer.\r\nconst SuspenseImpl = {\r\n name: 'Suspense',\r\n // In order to make Suspense tree-shakable, we need to avoid importing it\r\n // directly in the renderer. The renderer checks for the __isSuspense flag\r\n // on a vnode's type and calls the `process` method, passing in renderer\r\n // internals.\r\n __isSuspense: true,\r\n process(n1, n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, \r\n // platform-specific impl passed from renderer\r\n rendererInternals) {\r\n if (n1 == null) {\r\n mountSuspense(n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals);\r\n }\r\n else {\r\n patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotScopeIds, optimized, rendererInternals);\r\n }\r\n },\r\n hydrate: hydrateSuspense,\r\n create: createSuspenseBoundary,\r\n normalize: normalizeSuspenseChildren\r\n};\r\n// Force-casted public typing for h and TSX props inference\r\nconst Suspense = (SuspenseImpl );\r\nfunction triggerEvent(vnode, name) {\r\n const eventListener = vnode.props && vnode.props[name];\r\n if (isFunction(eventListener)) {\r\n eventListener();\r\n }\r\n}\r\nfunction mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals) {\r\n const { p: patch, o: { createElement } } = rendererInternals;\r\n const hiddenContainer = createElement('div');\r\n const suspense = (vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals));\r\n // start mounting the content subtree in an off-dom container\r\n patch(null, (suspense.pendingBranch = vnode.ssContent), hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds);\r\n // now check if we have encountered any async deps\r\n if (suspense.deps > 0) {\r\n // has async\r\n // invoke @fallback event\r\n triggerEvent(vnode, 'onPending');\r\n triggerEvent(vnode, 'onFallback');\r\n // mount the fallback tree\r\n patch(null, vnode.ssFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context\r\n isSVG, slotScopeIds);\r\n setActiveBranch(suspense, vnode.ssFallback);\r\n }\r\n else {\r\n // Suspense has no async deps. Just resolve.\r\n suspense.resolve();\r\n }\r\n}\r\nfunction patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotScopeIds, optimized, { p: patch, um: unmount, o: { createElement } }) {\r\n const suspense = (n2.suspense = n1.suspense);\r\n suspense.vnode = n2;\r\n n2.el = n1.el;\r\n const newBranch = n2.ssContent;\r\n const newFallback = n2.ssFallback;\r\n const { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense;\r\n if (pendingBranch) {\r\n suspense.pendingBranch = newBranch;\r\n if (isSameVNodeType(newBranch, pendingBranch)) {\r\n // same root type but content may have changed.\r\n patch(pendingBranch, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n if (suspense.deps <= 0) {\r\n suspense.resolve();\r\n }\r\n else if (isInFallback) {\r\n patch(activeBranch, newFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context\r\n isSVG, slotScopeIds, optimized);\r\n setActiveBranch(suspense, newFallback);\r\n }\r\n }\r\n else {\r\n // toggled before pending tree is resolved\r\n suspense.pendingId++;\r\n if (isHydrating) {\r\n // if toggled before hydration is finished, the current DOM tree is\r\n // no longer valid. set it as the active branch so it will be unmounted\r\n // when resolved\r\n suspense.isHydrating = false;\r\n suspense.activeBranch = pendingBranch;\r\n }\r\n else {\r\n unmount(pendingBranch, parentComponent, suspense);\r\n }\r\n // increment pending ID. this is used to invalidate async callbacks\r\n // reset suspense state\r\n suspense.deps = 0;\r\n // discard effects from pending branch\r\n suspense.effects.length = 0;\r\n // discard previous container\r\n suspense.hiddenContainer = createElement('div');\r\n if (isInFallback) {\r\n // already in fallback state\r\n patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n if (suspense.deps <= 0) {\r\n suspense.resolve();\r\n }\r\n else {\r\n patch(activeBranch, newFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context\r\n isSVG, slotScopeIds, optimized);\r\n setActiveBranch(suspense, newFallback);\r\n }\r\n }\r\n else if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\r\n // toggled \"back\" to current active branch\r\n patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n // force resolve\r\n suspense.resolve(true);\r\n }\r\n else {\r\n // switched to a 3rd branch\r\n patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n if (suspense.deps <= 0) {\r\n suspense.resolve();\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\r\n // root did not change, just normal patch\r\n patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n setActiveBranch(suspense, newBranch);\r\n }\r\n else {\r\n // root node toggled\r\n // invoke @pending event\r\n triggerEvent(n2, 'onPending');\r\n // mount pending branch in off-dom container\r\n suspense.pendingBranch = newBranch;\r\n suspense.pendingId++;\r\n patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n if (suspense.deps <= 0) {\r\n // incoming branch has no async deps, resolve now.\r\n suspense.resolve();\r\n }\r\n else {\r\n const { timeout, pendingId } = suspense;\r\n if (timeout > 0) {\r\n setTimeout(() => {\r\n if (suspense.pendingId === pendingId) {\r\n suspense.fallback(newFallback);\r\n }\r\n }, timeout);\r\n }\r\n else if (timeout === 0) {\r\n suspense.fallback(newFallback);\r\n }\r\n }\r\n }\r\n }\r\n}\r\nlet hasWarned = false;\r\nfunction createSuspenseBoundary(vnode, parent, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals, isHydrating = false) {\r\n /* istanbul ignore if */\r\n if ((process.env.NODE_ENV !== 'production') && !false && !hasWarned) {\r\n hasWarned = true;\r\n // @ts-ignore `console.info` cannot be null error\r\n console[console.info ? 'info' : 'log'](` is an experimental feature and its API will likely change.`);\r\n }\r\n const { p: patch, m: move, um: unmount, n: next, o: { parentNode, remove } } = rendererInternals;\r\n const timeout = toNumber(vnode.props && vnode.props.timeout);\r\n const suspense = {\r\n vnode,\r\n parent,\r\n parentComponent,\r\n isSVG,\r\n container,\r\n hiddenContainer,\r\n anchor,\r\n deps: 0,\r\n pendingId: 0,\r\n timeout: typeof timeout === 'number' ? timeout : -1,\r\n activeBranch: null,\r\n pendingBranch: null,\r\n isInFallback: true,\r\n isHydrating,\r\n isUnmounted: false,\r\n effects: [],\r\n resolve(resume = false) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n if (!resume && !suspense.pendingBranch) {\r\n throw new Error(`suspense.resolve() is called without a pending branch.`);\r\n }\r\n if (suspense.isUnmounted) {\r\n throw new Error(`suspense.resolve() is called on an already unmounted suspense boundary.`);\r\n }\r\n }\r\n const { vnode, activeBranch, pendingBranch, pendingId, effects, parentComponent, container } = suspense;\r\n if (suspense.isHydrating) {\r\n suspense.isHydrating = false;\r\n }\r\n else if (!resume) {\r\n const delayEnter = activeBranch &&\r\n pendingBranch.transition &&\r\n pendingBranch.transition.mode === 'out-in';\r\n if (delayEnter) {\r\n activeBranch.transition.afterLeave = () => {\r\n if (pendingId === suspense.pendingId) {\r\n move(pendingBranch, container, anchor, 0 /* ENTER */);\r\n }\r\n };\r\n }\r\n // this is initial anchor on mount\r\n let { anchor } = suspense;\r\n // unmount current active tree\r\n if (activeBranch) {\r\n // if the fallback tree was mounted, it may have been moved\r\n // as part of a parent suspense. get the latest anchor for insertion\r\n anchor = next(activeBranch);\r\n unmount(activeBranch, parentComponent, suspense, true);\r\n }\r\n if (!delayEnter) {\r\n // move content from off-dom container to actual container\r\n move(pendingBranch, container, anchor, 0 /* ENTER */);\r\n }\r\n }\r\n setActiveBranch(suspense, pendingBranch);\r\n suspense.pendingBranch = null;\r\n suspense.isInFallback = false;\r\n // flush buffered effects\r\n // check if there is a pending parent suspense\r\n let parent = suspense.parent;\r\n let hasUnresolvedAncestor = false;\r\n while (parent) {\r\n if (parent.pendingBranch) {\r\n // found a pending parent suspense, merge buffered post jobs\r\n // into that parent\r\n parent.effects.push(...effects);\r\n hasUnresolvedAncestor = true;\r\n break;\r\n }\r\n parent = parent.parent;\r\n }\r\n // no pending parent suspense, flush all jobs\r\n if (!hasUnresolvedAncestor) {\r\n queuePostFlushCb(effects);\r\n }\r\n suspense.effects = [];\r\n // invoke @resolve event\r\n triggerEvent(vnode, 'onResolve');\r\n },\r\n fallback(fallbackVNode) {\r\n if (!suspense.pendingBranch) {\r\n return;\r\n }\r\n const { vnode, activeBranch, parentComponent, container, isSVG } = suspense;\r\n // invoke @fallback event\r\n triggerEvent(vnode, 'onFallback');\r\n const anchor = next(activeBranch);\r\n const mountFallback = () => {\r\n if (!suspense.isInFallback) {\r\n return;\r\n }\r\n // mount the fallback tree\r\n patch(null, fallbackVNode, container, anchor, parentComponent, null, // fallback tree will not have suspense context\r\n isSVG, slotScopeIds, optimized);\r\n setActiveBranch(suspense, fallbackVNode);\r\n };\r\n const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === 'out-in';\r\n if (delayEnter) {\r\n activeBranch.transition.afterLeave = mountFallback;\r\n }\r\n suspense.isInFallback = true;\r\n // unmount current active branch\r\n unmount(activeBranch, parentComponent, null, // no suspense so unmount hooks fire now\r\n true // shouldRemove\r\n );\r\n if (!delayEnter) {\r\n mountFallback();\r\n }\r\n },\r\n move(container, anchor, type) {\r\n suspense.activeBranch &&\r\n move(suspense.activeBranch, container, anchor, type);\r\n suspense.container = container;\r\n },\r\n next() {\r\n return suspense.activeBranch && next(suspense.activeBranch);\r\n },\r\n registerDep(instance, setupRenderEffect) {\r\n const isInPendingSuspense = !!suspense.pendingBranch;\r\n if (isInPendingSuspense) {\r\n suspense.deps++;\r\n }\r\n const hydratedEl = instance.vnode.el;\r\n instance\r\n .asyncDep.catch(err => {\r\n handleError(err, instance, 0 /* SETUP_FUNCTION */);\r\n })\r\n .then(asyncSetupResult => {\r\n // retry when the setup() promise resolves.\r\n // component may have been unmounted before resolve.\r\n if (instance.isUnmounted ||\r\n suspense.isUnmounted ||\r\n suspense.pendingId !== instance.suspenseId) {\r\n return;\r\n }\r\n // retry from this component\r\n instance.asyncResolved = true;\r\n const { vnode } = instance;\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n pushWarningContext(vnode);\r\n }\r\n handleSetupResult(instance, asyncSetupResult, false);\r\n if (hydratedEl) {\r\n // vnode may have been replaced if an update happened before the\r\n // async dep is resolved.\r\n vnode.el = hydratedEl;\r\n }\r\n const placeholder = !hydratedEl && instance.subTree.el;\r\n setupRenderEffect(instance, vnode, \r\n // component may have been moved before resolve.\r\n // if this is not a hydration, instance.subTree will be the comment\r\n // placeholder.\r\n parentNode(hydratedEl || instance.subTree.el), \r\n // anchor will not be used if this is hydration, so only need to\r\n // consider the comment placeholder case.\r\n hydratedEl ? null : next(instance.subTree), suspense, isSVG, optimized);\r\n if (placeholder) {\r\n remove(placeholder);\r\n }\r\n updateHOCHostEl(instance, vnode.el);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n popWarningContext();\r\n }\r\n // only decrease deps count if suspense is not already resolved\r\n if (isInPendingSuspense && --suspense.deps === 0) {\r\n suspense.resolve();\r\n }\r\n });\r\n },\r\n unmount(parentSuspense, doRemove) {\r\n suspense.isUnmounted = true;\r\n if (suspense.activeBranch) {\r\n unmount(suspense.activeBranch, parentComponent, parentSuspense, doRemove);\r\n }\r\n if (suspense.pendingBranch) {\r\n unmount(suspense.pendingBranch, parentComponent, parentSuspense, doRemove);\r\n }\r\n }\r\n };\r\n return suspense;\r\n}\r\nfunction hydrateSuspense(node, vnode, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals, hydrateNode) {\r\n /* eslint-disable no-restricted-globals */\r\n const suspense = (vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, node.parentNode, document.createElement('div'), null, isSVG, slotScopeIds, optimized, rendererInternals, true /* hydrating */));\r\n // there are two possible scenarios for server-rendered suspense:\r\n // - success: ssr content should be fully resolved\r\n // - failure: ssr content should be the fallback branch.\r\n // however, on the client we don't really know if it has failed or not\r\n // attempt to hydrate the DOM assuming it has succeeded, but we still\r\n // need to construct a suspense boundary first\r\n const result = hydrateNode(node, (suspense.pendingBranch = vnode.ssContent), parentComponent, suspense, slotScopeIds, optimized);\r\n if (suspense.deps === 0) {\r\n suspense.resolve();\r\n }\r\n return result;\r\n /* eslint-enable no-restricted-globals */\r\n}\r\nfunction normalizeSuspenseChildren(vnode) {\r\n const { shapeFlag, children } = vnode;\r\n const isSlotChildren = shapeFlag & 32 /* SLOTS_CHILDREN */;\r\n vnode.ssContent = normalizeSuspenseSlot(isSlotChildren ? children.default : children);\r\n vnode.ssFallback = isSlotChildren\r\n ? normalizeSuspenseSlot(children.fallback)\r\n : createVNode(Comment);\r\n}\r\nfunction normalizeSuspenseSlot(s) {\r\n let block;\r\n if (isFunction(s)) {\r\n const trackBlock = isBlockTreeEnabled && s._c;\r\n if (trackBlock) {\r\n // disableTracking: false\r\n // allow block tracking for compiled slots\r\n // (see ./componentRenderContext.ts)\r\n s._d = false;\r\n openBlock();\r\n }\r\n s = s();\r\n if (trackBlock) {\r\n s._d = true;\r\n block = currentBlock;\r\n closeBlock();\r\n }\r\n }\r\n if (isArray(s)) {\r\n const singleChild = filterSingleRoot(s);\r\n if ((process.env.NODE_ENV !== 'production') && !singleChild) {\r\n warn(` slots expect a single root node.`);\r\n }\r\n s = singleChild;\r\n }\r\n s = normalizeVNode(s);\r\n if (block && !s.dynamicChildren) {\r\n s.dynamicChildren = block.filter(c => c !== s);\r\n }\r\n return s;\r\n}\r\nfunction queueEffectWithSuspense(fn, suspense) {\r\n if (suspense && suspense.pendingBranch) {\r\n if (isArray(fn)) {\r\n suspense.effects.push(...fn);\r\n }\r\n else {\r\n suspense.effects.push(fn);\r\n }\r\n }\r\n else {\r\n queuePostFlushCb(fn);\r\n }\r\n}\r\nfunction setActiveBranch(suspense, branch) {\r\n suspense.activeBranch = branch;\r\n const { vnode, parentComponent } = suspense;\r\n const el = (vnode.el = branch.el);\r\n // in case suspense is the root node of a component,\r\n // recursively update the HOC el\r\n if (parentComponent && parentComponent.subTree === vnode) {\r\n parentComponent.vnode.el = el;\r\n updateHOCHostEl(parentComponent, el);\r\n }\r\n}\n\nfunction provide(key, value) {\r\n if (!currentInstance) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`provide() can only be used inside setup().`);\r\n }\r\n }\r\n else {\r\n let provides = currentInstance.provides;\r\n // by default an instance inherits its parent's provides object\r\n // but when it needs to provide values of its own, it creates its\r\n // own provides object using parent provides object as prototype.\r\n // this way in `inject` we can simply look up injections from direct\r\n // parent and let the prototype chain do the work.\r\n const parentProvides = currentInstance.parent && currentInstance.parent.provides;\r\n if (parentProvides === provides) {\r\n provides = currentInstance.provides = Object.create(parentProvides);\r\n }\r\n // TS doesn't allow symbol as index type\r\n provides[key] = value;\r\n }\r\n}\r\nfunction inject(key, defaultValue, treatDefaultAsFactory = false) {\r\n // fallback to `currentRenderingInstance` so that this can be called in\r\n // a functional component\r\n const instance = currentInstance || currentRenderingInstance;\r\n if (instance) {\r\n // #2400\r\n // to support `app.use` plugins,\r\n // fallback to appContext's `provides` if the instance is at root\r\n const provides = instance.parent == null\r\n ? instance.vnode.appContext && instance.vnode.appContext.provides\r\n : instance.parent.provides;\r\n if (provides && key in provides) {\r\n // TS doesn't allow symbol as index type\r\n return provides[key];\r\n }\r\n else if (arguments.length > 1) {\r\n return treatDefaultAsFactory && isFunction(defaultValue)\r\n ? defaultValue.call(instance.proxy)\r\n : defaultValue;\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`injection \"${String(key)}\" not found.`);\r\n }\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`inject() can only be used inside setup() or functional components.`);\r\n }\r\n}\n\n// Simple effect.\r\nfunction watchEffect(effect, options) {\r\n return doWatch(effect, null, options);\r\n}\r\nfunction watchPostEffect(effect, options) {\r\n return doWatch(effect, null, ((process.env.NODE_ENV !== 'production')\r\n ? Object.assign(Object.assign({}, options), { flush: 'post' }) : { flush: 'post' }));\r\n}\r\nfunction watchSyncEffect(effect, options) {\r\n return doWatch(effect, null, ((process.env.NODE_ENV !== 'production')\r\n ? Object.assign(Object.assign({}, options), { flush: 'sync' }) : { flush: 'sync' }));\r\n}\r\n// initial value for watchers to trigger on undefined initial values\r\nconst INITIAL_WATCHER_VALUE = {};\r\n// implementation\r\nfunction watch(source, cb, options) {\r\n if ((process.env.NODE_ENV !== 'production') && !isFunction(cb)) {\r\n warn(`\\`watch(fn, options?)\\` signature has been moved to a separate API. ` +\r\n `Use \\`watchEffect(fn, options?)\\` instead. \\`watch\\` now only ` +\r\n `supports \\`watch(source, cb, options?) signature.`);\r\n }\r\n return doWatch(source, cb, options);\r\n}\r\nfunction doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EMPTY_OBJ) {\r\n if ((process.env.NODE_ENV !== 'production') && !cb) {\r\n if (immediate !== undefined) {\r\n warn(`watch() \"immediate\" option is only respected when using the ` +\r\n `watch(source, callback, options?) signature.`);\r\n }\r\n if (deep !== undefined) {\r\n warn(`watch() \"deep\" option is only respected when using the ` +\r\n `watch(source, callback, options?) signature.`);\r\n }\r\n }\r\n const warnInvalidSource = (s) => {\r\n warn(`Invalid watch source: `, s, `A watch source can only be a getter/effect function, a ref, ` +\r\n `a reactive object, or an array of these types.`);\r\n };\r\n const instance = currentInstance;\r\n let getter;\r\n let forceTrigger = false;\r\n let isMultiSource = false;\r\n if (isRef(source)) {\r\n getter = () => source.value;\r\n forceTrigger = isShallow$1(source);\r\n }\r\n else if (isReactive(source)) {\r\n getter = () => source;\r\n deep = true;\r\n }\r\n else if (isArray(source)) {\r\n isMultiSource = true;\r\n forceTrigger = source.some(s => isReactive(s) || isShallow$1(s));\r\n getter = () => source.map(s => {\r\n if (isRef(s)) {\r\n return s.value;\r\n }\r\n else if (isReactive(s)) {\r\n return traverse(s);\r\n }\r\n else if (isFunction(s)) {\r\n return callWithErrorHandling(s, instance, 2 /* WATCH_GETTER */);\r\n }\r\n else {\r\n (process.env.NODE_ENV !== 'production') && warnInvalidSource(s);\r\n }\r\n });\r\n }\r\n else if (isFunction(source)) {\r\n if (cb) {\r\n // getter with cb\r\n getter = () => callWithErrorHandling(source, instance, 2 /* WATCH_GETTER */);\r\n }\r\n else {\r\n // no cb -> simple effect\r\n getter = () => {\r\n if (instance && instance.isUnmounted) {\r\n return;\r\n }\r\n if (cleanup) {\r\n cleanup();\r\n }\r\n return callWithAsyncErrorHandling(source, instance, 3 /* WATCH_CALLBACK */, [onCleanup]);\r\n };\r\n }\r\n }\r\n else {\r\n getter = NOOP;\r\n (process.env.NODE_ENV !== 'production') && warnInvalidSource(source);\r\n }\r\n if (cb && deep) {\r\n const baseGetter = getter;\r\n getter = () => traverse(baseGetter());\r\n }\r\n let cleanup;\r\n let onCleanup = (fn) => {\r\n cleanup = effect.onStop = () => {\r\n callWithErrorHandling(fn, instance, 4 /* WATCH_CLEANUP */);\r\n };\r\n };\r\n // in SSR there is no need to setup an actual effect, and it should be noop\r\n // unless it's eager\r\n if (isInSSRComponentSetup) {\r\n // we will also not call the invalidate callback (+ runner is not set up)\r\n onCleanup = NOOP;\r\n if (!cb) {\r\n getter();\r\n }\r\n else if (immediate) {\r\n callWithAsyncErrorHandling(cb, instance, 3 /* WATCH_CALLBACK */, [\r\n getter(),\r\n isMultiSource ? [] : undefined,\r\n onCleanup\r\n ]);\r\n }\r\n return NOOP;\r\n }\r\n let oldValue = isMultiSource ? [] : INITIAL_WATCHER_VALUE;\r\n const job = () => {\r\n if (!effect.active) {\r\n return;\r\n }\r\n if (cb) {\r\n // watch(source, cb)\r\n const newValue = effect.run();\r\n if (deep ||\r\n forceTrigger ||\r\n (isMultiSource\r\n ? newValue.some((v, i) => hasChanged(v, oldValue[i]))\r\n : hasChanged(newValue, oldValue)) ||\r\n (false )) {\r\n // cleanup before running cb again\r\n if (cleanup) {\r\n cleanup();\r\n }\r\n callWithAsyncErrorHandling(cb, instance, 3 /* WATCH_CALLBACK */, [\r\n newValue,\r\n // pass undefined as the old value when it's changed for the first time\r\n oldValue === INITIAL_WATCHER_VALUE ? undefined : oldValue,\r\n onCleanup\r\n ]);\r\n oldValue = newValue;\r\n }\r\n }\r\n else {\r\n // watchEffect\r\n effect.run();\r\n }\r\n };\r\n // important: mark the job as a watcher callback so that scheduler knows\r\n // it is allowed to self-trigger (#1727)\r\n job.allowRecurse = !!cb;\r\n let scheduler;\r\n if (flush === 'sync') {\r\n scheduler = job; // the scheduler function gets called directly\r\n }\r\n else if (flush === 'post') {\r\n scheduler = () => queuePostRenderEffect(job, instance && instance.suspense);\r\n }\r\n else {\r\n // default: 'pre'\r\n scheduler = () => queuePreFlushCb(job);\r\n }\r\n const effect = new ReactiveEffect(getter, scheduler);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n effect.onTrack = onTrack;\r\n effect.onTrigger = onTrigger;\r\n }\r\n // initial run\r\n if (cb) {\r\n if (immediate) {\r\n job();\r\n }\r\n else {\r\n oldValue = effect.run();\r\n }\r\n }\r\n else if (flush === 'post') {\r\n queuePostRenderEffect(effect.run.bind(effect), instance && instance.suspense);\r\n }\r\n else {\r\n effect.run();\r\n }\r\n return () => {\r\n effect.stop();\r\n if (instance && instance.scope) {\r\n remove(instance.scope.effects, effect);\r\n }\r\n };\r\n}\r\n// this.$watch\r\nfunction instanceWatch(source, value, options) {\r\n const publicThis = this.proxy;\r\n const getter = isString(source)\r\n ? source.includes('.')\r\n ? createPathGetter(publicThis, source)\r\n : () => publicThis[source]\r\n : source.bind(publicThis, publicThis);\r\n let cb;\r\n if (isFunction(value)) {\r\n cb = value;\r\n }\r\n else {\r\n cb = value.handler;\r\n options = value;\r\n }\r\n const cur = currentInstance;\r\n setCurrentInstance(this);\r\n const res = doWatch(getter, cb.bind(publicThis), options);\r\n if (cur) {\r\n setCurrentInstance(cur);\r\n }\r\n else {\r\n unsetCurrentInstance();\r\n }\r\n return res;\r\n}\r\nfunction createPathGetter(ctx, path) {\r\n const segments = path.split('.');\r\n return () => {\r\n let cur = ctx;\r\n for (let i = 0; i < segments.length && cur; i++) {\r\n cur = cur[segments[i]];\r\n }\r\n return cur;\r\n };\r\n}\r\nfunction traverse(value, seen) {\r\n if (!isObject(value) || value[\"__v_skip\" /* SKIP */]) {\r\n return value;\r\n }\r\n seen = seen || new Set();\r\n if (seen.has(value)) {\r\n return value;\r\n }\r\n seen.add(value);\r\n if (isRef(value)) {\r\n traverse(value.value, seen);\r\n }\r\n else if (isArray(value)) {\r\n for (let i = 0; i < value.length; i++) {\r\n traverse(value[i], seen);\r\n }\r\n }\r\n else if (isSet(value) || isMap(value)) {\r\n value.forEach((v) => {\r\n traverse(v, seen);\r\n });\r\n }\r\n else if (isPlainObject(value)) {\r\n for (const key in value) {\r\n traverse(value[key], seen);\r\n }\r\n }\r\n return value;\r\n}\n\nfunction useTransitionState() {\r\n const state = {\r\n isMounted: false,\r\n isLeaving: false,\r\n isUnmounting: false,\r\n leavingVNodes: new Map()\r\n };\r\n onMounted(() => {\r\n state.isMounted = true;\r\n });\r\n onBeforeUnmount(() => {\r\n state.isUnmounting = true;\r\n });\r\n return state;\r\n}\r\nconst TransitionHookValidator = [Function, Array];\r\nconst BaseTransitionImpl = {\r\n name: `BaseTransition`,\r\n props: {\r\n mode: String,\r\n appear: Boolean,\r\n persisted: Boolean,\r\n // enter\r\n onBeforeEnter: TransitionHookValidator,\r\n onEnter: TransitionHookValidator,\r\n onAfterEnter: TransitionHookValidator,\r\n onEnterCancelled: TransitionHookValidator,\r\n // leave\r\n onBeforeLeave: TransitionHookValidator,\r\n onLeave: TransitionHookValidator,\r\n onAfterLeave: TransitionHookValidator,\r\n onLeaveCancelled: TransitionHookValidator,\r\n // appear\r\n onBeforeAppear: TransitionHookValidator,\r\n onAppear: TransitionHookValidator,\r\n onAfterAppear: TransitionHookValidator,\r\n onAppearCancelled: TransitionHookValidator\r\n },\r\n setup(props, { slots }) {\r\n const instance = getCurrentInstance();\r\n const state = useTransitionState();\r\n let prevTransitionKey;\r\n return () => {\r\n const children = slots.default && getTransitionRawChildren(slots.default(), true);\r\n if (!children || !children.length) {\r\n return;\r\n }\r\n let child = children[0];\r\n if (children.length > 1) {\r\n let hasFound = false;\r\n // locate first non-comment child\r\n for (const c of children) {\r\n if (c.type !== Comment) {\r\n if ((process.env.NODE_ENV !== 'production') && hasFound) {\r\n // warn more than one non-comment child\r\n warn(' can only be used on a single element or component. ' +\r\n 'Use for lists.');\r\n break;\r\n }\r\n child = c;\r\n hasFound = true;\r\n if (!(process.env.NODE_ENV !== 'production'))\r\n break;\r\n }\r\n }\r\n }\r\n // there's no need to track reactivity for these props so use the raw\r\n // props for a bit better perf\r\n const rawProps = toRaw(props);\r\n const { mode } = rawProps;\r\n // check mode\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n mode &&\r\n mode !== 'in-out' &&\r\n mode !== 'out-in' &&\r\n mode !== 'default') {\r\n warn(`invalid mode: ${mode}`);\r\n }\r\n if (state.isLeaving) {\r\n return emptyPlaceholder(child);\r\n }\r\n // in the case of , we need to\r\n // compare the type of the kept-alive children.\r\n const innerChild = getKeepAliveChild(child);\r\n if (!innerChild) {\r\n return emptyPlaceholder(child);\r\n }\r\n const enterHooks = resolveTransitionHooks(innerChild, rawProps, state, instance);\r\n setTransitionHooks(innerChild, enterHooks);\r\n const oldChild = instance.subTree;\r\n const oldInnerChild = oldChild && getKeepAliveChild(oldChild);\r\n let transitionKeyChanged = false;\r\n const { getTransitionKey } = innerChild.type;\r\n if (getTransitionKey) {\r\n const key = getTransitionKey();\r\n if (prevTransitionKey === undefined) {\r\n prevTransitionKey = key;\r\n }\r\n else if (key !== prevTransitionKey) {\r\n prevTransitionKey = key;\r\n transitionKeyChanged = true;\r\n }\r\n }\r\n // handle mode\r\n if (oldInnerChild &&\r\n oldInnerChild.type !== Comment &&\r\n (!isSameVNodeType(innerChild, oldInnerChild) || transitionKeyChanged)) {\r\n const leavingHooks = resolveTransitionHooks(oldInnerChild, rawProps, state, instance);\r\n // update old tree's hooks in case of dynamic transition\r\n setTransitionHooks(oldInnerChild, leavingHooks);\r\n // switching between different views\r\n if (mode === 'out-in') {\r\n state.isLeaving = true;\r\n // return placeholder node and queue update when leave finishes\r\n leavingHooks.afterLeave = () => {\r\n state.isLeaving = false;\r\n instance.update();\r\n };\r\n return emptyPlaceholder(child);\r\n }\r\n else if (mode === 'in-out' && innerChild.type !== Comment) {\r\n leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => {\r\n const leavingVNodesCache = getLeavingNodesForType(state, oldInnerChild);\r\n leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild;\r\n // early removal callback\r\n el._leaveCb = () => {\r\n earlyRemove();\r\n el._leaveCb = undefined;\r\n delete enterHooks.delayedLeave;\r\n };\r\n enterHooks.delayedLeave = delayedLeave;\r\n };\r\n }\r\n }\r\n return child;\r\n };\r\n }\r\n};\r\n// export the public type for h/tsx inference\r\n// also to avoid inline import() in generated d.ts files\r\nconst BaseTransition = BaseTransitionImpl;\r\nfunction getLeavingNodesForType(state, vnode) {\r\n const { leavingVNodes } = state;\r\n let leavingVNodesCache = leavingVNodes.get(vnode.type);\r\n if (!leavingVNodesCache) {\r\n leavingVNodesCache = Object.create(null);\r\n leavingVNodes.set(vnode.type, leavingVNodesCache);\r\n }\r\n return leavingVNodesCache;\r\n}\r\n// The transition hooks are attached to the vnode as vnode.transition\r\n// and will be called at appropriate timing in the renderer.\r\nfunction resolveTransitionHooks(vnode, props, state, instance) {\r\n const { appear, mode, persisted = false, onBeforeEnter, onEnter, onAfterEnter, onEnterCancelled, onBeforeLeave, onLeave, onAfterLeave, onLeaveCancelled, onBeforeAppear, onAppear, onAfterAppear, onAppearCancelled } = props;\r\n const key = String(vnode.key);\r\n const leavingVNodesCache = getLeavingNodesForType(state, vnode);\r\n const callHook = (hook, args) => {\r\n hook &&\r\n callWithAsyncErrorHandling(hook, instance, 9 /* TRANSITION_HOOK */, args);\r\n };\r\n const callAsyncHook = (hook, args) => {\r\n const done = args[1];\r\n callHook(hook, args);\r\n if (isArray(hook)) {\r\n if (hook.every(hook => hook.length <= 1))\r\n done();\r\n }\r\n else if (hook.length <= 1) {\r\n done();\r\n }\r\n };\r\n const hooks = {\r\n mode,\r\n persisted,\r\n beforeEnter(el) {\r\n let hook = onBeforeEnter;\r\n if (!state.isMounted) {\r\n if (appear) {\r\n hook = onBeforeAppear || onBeforeEnter;\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n // for same element (v-show)\r\n if (el._leaveCb) {\r\n el._leaveCb(true /* cancelled */);\r\n }\r\n // for toggled element with same key (v-if)\r\n const leavingVNode = leavingVNodesCache[key];\r\n if (leavingVNode &&\r\n isSameVNodeType(vnode, leavingVNode) &&\r\n leavingVNode.el._leaveCb) {\r\n // force early removal (not cancelled)\r\n leavingVNode.el._leaveCb();\r\n }\r\n callHook(hook, [el]);\r\n },\r\n enter(el) {\r\n let hook = onEnter;\r\n let afterHook = onAfterEnter;\r\n let cancelHook = onEnterCancelled;\r\n if (!state.isMounted) {\r\n if (appear) {\r\n hook = onAppear || onEnter;\r\n afterHook = onAfterAppear || onAfterEnter;\r\n cancelHook = onAppearCancelled || onEnterCancelled;\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n let called = false;\r\n const done = (el._enterCb = (cancelled) => {\r\n if (called)\r\n return;\r\n called = true;\r\n if (cancelled) {\r\n callHook(cancelHook, [el]);\r\n }\r\n else {\r\n callHook(afterHook, [el]);\r\n }\r\n if (hooks.delayedLeave) {\r\n hooks.delayedLeave();\r\n }\r\n el._enterCb = undefined;\r\n });\r\n if (hook) {\r\n callAsyncHook(hook, [el, done]);\r\n }\r\n else {\r\n done();\r\n }\r\n },\r\n leave(el, remove) {\r\n const key = String(vnode.key);\r\n if (el._enterCb) {\r\n el._enterCb(true /* cancelled */);\r\n }\r\n if (state.isUnmounting) {\r\n return remove();\r\n }\r\n callHook(onBeforeLeave, [el]);\r\n let called = false;\r\n const done = (el._leaveCb = (cancelled) => {\r\n if (called)\r\n return;\r\n called = true;\r\n remove();\r\n if (cancelled) {\r\n callHook(onLeaveCancelled, [el]);\r\n }\r\n else {\r\n callHook(onAfterLeave, [el]);\r\n }\r\n el._leaveCb = undefined;\r\n if (leavingVNodesCache[key] === vnode) {\r\n delete leavingVNodesCache[key];\r\n }\r\n });\r\n leavingVNodesCache[key] = vnode;\r\n if (onLeave) {\r\n callAsyncHook(onLeave, [el, done]);\r\n }\r\n else {\r\n done();\r\n }\r\n },\r\n clone(vnode) {\r\n return resolveTransitionHooks(vnode, props, state, instance);\r\n }\r\n };\r\n return hooks;\r\n}\r\n// the placeholder really only handles one special case: KeepAlive\r\n// in the case of a KeepAlive in a leave phase we need to return a KeepAlive\r\n// placeholder with empty content to avoid the KeepAlive instance from being\r\n// unmounted.\r\nfunction emptyPlaceholder(vnode) {\r\n if (isKeepAlive(vnode)) {\r\n vnode = cloneVNode(vnode);\r\n vnode.children = null;\r\n return vnode;\r\n }\r\n}\r\nfunction getKeepAliveChild(vnode) {\r\n return isKeepAlive(vnode)\r\n ? vnode.children\r\n ? vnode.children[0]\r\n : undefined\r\n : vnode;\r\n}\r\nfunction setTransitionHooks(vnode, hooks) {\r\n if (vnode.shapeFlag & 6 /* COMPONENT */ && vnode.component) {\r\n setTransitionHooks(vnode.component.subTree, hooks);\r\n }\r\n else if (vnode.shapeFlag & 128 /* SUSPENSE */) {\r\n vnode.ssContent.transition = hooks.clone(vnode.ssContent);\r\n vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);\r\n }\r\n else {\r\n vnode.transition = hooks;\r\n }\r\n}\r\nfunction getTransitionRawChildren(children, keepComment = false, parentKey) {\r\n let ret = [];\r\n let keyedFragmentCount = 0;\r\n for (let i = 0; i < children.length; i++) {\r\n let child = children[i];\r\n // #5360 inherit parent key in case of