wavelovers/docs/js/app.6d107a0d.js.map

1 line
28 KiB
Plaintext

{"version":3,"file":"js/app.6d107a0d.js","mappings":"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","sources":["webpack://wavelovers/./src/components/Gamepad.js","webpack://wavelovers/./src/App.vue","webpack://wavelovers/./src/components/WaveloversApp.vue","webpack://wavelovers/./src/components/PatternList.vue","webpack://wavelovers/./src/components/PatternItem.vue","webpack://wavelovers/./src/components/PatternItem.vue?bc50","webpack://wavelovers/./src/components/PatternList.vue?66ca","webpack://wavelovers/./src/components/GamepadList.vue","webpack://wavelovers/./src/components/GamepadItem.vue","webpack://wavelovers/./src/components/GamepadItem.vue?db77","webpack://wavelovers/./src/components/GamepadList.vue?eda8","webpack://wavelovers/./src/components/WaveloversApp.vue?982f","webpack://wavelovers/./src/App.vue?7ccd","webpack://wavelovers/./src/main.js","webpack://wavelovers/webpack/bootstrap","webpack://wavelovers/webpack/runtime/chunk loaded","webpack://wavelovers/webpack/runtime/compat get default export","webpack://wavelovers/webpack/runtime/define property getters","webpack://wavelovers/webpack/runtime/global","webpack://wavelovers/webpack/runtime/hasOwnProperty shorthand","webpack://wavelovers/webpack/runtime/jsonp chunk loading","webpack://wavelovers/webpack/startup"],"sourcesContent":["module.exports = class Gamepad {\r\n constructor(gamepad) {\r\n this.unit = gamepad;\r\n this.init();\r\n }\r\n init = () => {\r\n this.id = Date.now();\r\n this.canVibrate = (this.unit.vibrationActuator) ? true : false;\r\n this.isVibrating = false;\r\n this.pattern = [];\r\n };\r\n update = () => {\r\n let gamepads = navigator.getGamepads();\r\n this.unit = gamepads[this.unit.index];\r\n };\r\n reset = () => {\r\n this.isVibrating = false;\r\n this.unit.vibrationActuator.reset();\r\n };\r\n vibrate = async (pattern) => {\r\n this.isVibrating = true;\r\n this.pattern = pattern;\r\n\r\n while (this.isVibrating === true) {\r\n for (let i = 0; i < this.pattern.length; i++) {\r\n if (this.isVibrating === true) {\r\n this.unit.vibrationActuator.playEffect('dual-rumble', this.pattern[i]);\r\n await this.sleep(this.pattern[i].startDelay + this.pattern[i].duration + 100);\r\n } else {\r\n return;\r\n }\r\n }\r\n }\r\n };\r\n sleep = (ms) => {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n };\r\n};\r\n\r\n","<template>\r\n <Wavelovers />\r\n</template>\r\n\r\n<script>\r\n import WaveloversApp from '@/components/WaveloversApp.vue';\r\n\r\n export default {\r\n name: 'App',\r\n components: {\r\n Wavelovers: WaveloversApp,\r\n },\r\n };\r\n</script>\r\n\r\n<style>\r\n</style>\r\n","<template>\r\n <div class=\"wavelovers\">\r\n <div class=\"content-item\">\r\n <PatternList v-if=\"patterns.length > 0\"\r\n :patterns=\"patterns\"\r\n :mode=\"mode\"\r\n :isActive=\"isActive\"\r\n @change=\"change\" />\r\n <div class=\"message\" v-else>\r\n <span>Loading...</span>\r\n </div>\r\n </div>\r\n <div class=\"content-item\">\r\n <GamepadList v-if=\"gamepads.length > 0\"\r\n :gamepads=\"gamepads\" />\r\n <div class=\"message\" v-else>\r\n <span>Press any gamepad's button or connect new gamepad.</span>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\n import PatternList from '@/components/PatternList.vue';\r\n import GamepadList from '@/components/GamepadList.vue';\r\n import Gamepad from '@/components/Gamepad.js';\r\n\r\n export default {\r\n name: 'WaveloversApp',\r\n components: {\r\n PatternList: PatternList,\r\n GamepadList: GamepadList,\r\n },\r\n data: () => {\r\n return {\r\n gamepads: [],\r\n patterns: [],\r\n isActive: false,\r\n mode: 0,\r\n };\r\n },\r\n methods: {\r\n loadPatterns: async function () {\r\n const url = 'https://wavelovers.ru/assets/patterns.json';\r\n try {\r\n const response = await fetch(url);\r\n if (response.ok) {\r\n let json = await response.json();\r\n this.patterns = json;\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]', error);\r\n }\r\n },\r\n addEventListeners() {\r\n window.addEventListener('gamepadconnected', () => this.addGamepad(event));\r\n window.addEventListener('gamepaddisconnected', () => this.deleteGamepad(event));\r\n },\r\n addGamepad(event) {\r\n if (this.gamepads.length > 1) {\r\n return;\r\n } else {\r\n this.gamepads.push(new Gamepad(event.gamepad));\r\n }\r\n },\r\n deleteGamepad(event) {\r\n this.gamepads.forEach((gamepad, index) => {\r\n if (gamepad.unit.id === event.gamepad.id) {\r\n this.gamepads.splice(index, 1);\r\n }\r\n });\r\n },\r\n change(index) {\r\n if (this.mode === index) {\r\n this.isActive = !this.isActive;\r\n this.reset();\r\n } else {\r\n this.isActive = true;\r\n this.mode = index;\r\n }\r\n if (this.isActive === true) {\r\n this.reset();\r\n this.vibrate();\r\n }\r\n },\r\n vibrate() {\r\n this.gamepads.forEach(gamepad => {\r\n gamepad.vibrate(this.patterns[this.mode].pattern);\r\n });\r\n },\r\n reset() {\r\n this.gamepads.forEach(gamepad => {\r\n gamepad.reset();\r\n });\r\n },\r\n },\r\n mounted() {\r\n this.loadPatterns();\r\n this.addEventListeners();\r\n },\r\n };\r\n</script>\r\n\r\n<style>\r\n .wavelovers {\r\n display: flex;\r\n flex-direction: column-reverse;\r\n justify-content: flex-start;\r\n gap: 16px;\r\n }\r\n\r\n @media only screen and (min-width: 540px) {\r\n .wavelovers {\r\n flex-direction: column;\r\n }\r\n }\r\n\r\n .message {\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n text-align: center;\r\n font-size: 16px;\r\n }\r\n\r\n @media only screen and (min-width: 540px) {\r\n .message {\r\n font-size: 24px;\r\n }\r\n }\r\n</style>\r\n","<template>\r\n <div class=\"pattern-list\">\r\n <PatternItem v-for=\"(pattern, index) in patterns\"\r\n :key=\"pattern.name\"\r\n :pattern=\"pattern\"\r\n :index=\"index\"\r\n :mode=\"mode\"\r\n :isActive=\"isActive\"\r\n @change=\"change\" />\r\n </div>\r\n</template>\r\n\r\n<script>\r\n import PatternItem from '@/components/PatternItem.vue';\r\n\r\n export default {\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(index) {\r\n this.$emit('change', index);\r\n },\r\n },\r\n };\r\n</script>\r\n\r\n<style>\r\n .pattern-list {\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-around;\r\n flex-wrap: wrap;\r\n gap: 32px;\r\n }\r\n</style>\r\n","<template>\r\n <div @click=\"change(index)\"\r\n :class=\"['pattern-item',\r\n index === mode && isActive === true ?\r\n 'pattern-item_selected' : '',\r\n ]\">\r\n <span class=\"pattern-item__icon\"\r\n v-text=\"pattern.icon\"></span>\r\n <span class=\"pattern-item__name\"\r\n v-text=\"pattern.name\"></span>\r\n </div>\r\n</template>\r\n\r\n<script>\r\n export default {\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 components: {},\r\n methods: {\r\n change(index) {\r\n this.$emit('change', index);\r\n },\r\n },\r\n };\r\n</script>\r\n\r\n<style>\r\n .pattern-item {\r\n width: 100%;\r\n height: 48px;\r\n padding: 8px;\r\n border-radius: var(--number-border-radius);\r\n background: var(--color-pattern-button);\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: flex-start;\r\n gap: 16px;\r\n align-items: center;\r\n text-align: center;\r\n overflow: hidden;\r\n cursor: default;\r\n }\r\n\r\n @media only screen and (min-width: 540px) {\r\n .pattern-item {\r\n width: 200px;\r\n }\r\n }\r\n\r\n .pattern-item ::selection {\r\n background-color: transparent;\r\n }\r\n\r\n .pattern-item_selected {\r\n background: var(--color-b);\r\n }\r\n\r\n .pattern-item__icon {\r\n font-size: 24px;\r\n }\r\n\r\n .pattern-item__name {\r\n font-size: 14px;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n color: var(--color-pattern-text);\r\n }\r\n</style>\r\n","import { render } from \"./PatternItem.vue?vue&type=template&id=63e50548\"\nimport script from \"./PatternItem.vue?vue&type=script&lang=js\"\nexport * from \"./PatternItem.vue?vue&type=script&lang=js\"\n\nimport \"./PatternItem.vue?vue&type=style&index=0&id=63e50548&lang=css\"\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 { render } from \"./PatternList.vue?vue&type=template&id=d7f3e51c\"\nimport script from \"./PatternList.vue?vue&type=script&lang=js\"\nexport * from \"./PatternList.vue?vue&type=script&lang=js\"\n\nimport \"./PatternList.vue?vue&type=style&index=0&id=d7f3e51c&lang=css\"\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__","<template>\r\n <div class=\"device-list\">\r\n <GamepadItem v-for=\"gamepad in gamepads\"\r\n :key=\"gamepad.id\"\r\n v-text=\"gamepad.unit.id\" />\r\n </div>\r\n</template>\r\n\r\n<script>\r\n import GamepadItem from '@/components/GamepadItem.vue';\r\n\r\n export default {\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</script>\r\n\r\n<style>\r\n .device-list {\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-around;\r\n gap: 16px;\r\n }\r\n</style>\r\n","<template>\r\n <div class=\"list-item\"></div>\r\n</template>\r\n\r\n<script>\r\n export default {\r\n name: 'GamepadItem',\r\n components: {},\r\n };\r\n</script>\r\n\r\n<style>\r\n .list-item {\r\n max-width: 100%;\r\n padding: 16px;\r\n border: 4px solid var(--color-b);\r\n border-radius: 4px;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: space-between;\r\n }\r\n\r\n .list-item__info {\r\n display: flex;\r\n flex-direction: column;\r\n gap: 16px;\r\n }\r\n\r\n .list-item_selected .list-item__info span {\r\n color: var(--color-white);\r\n }\r\n</style>\r\n","import { render } from \"./GamepadItem.vue?vue&type=template&id=ac1dbe44\"\nimport script from \"./GamepadItem.vue?vue&type=script&lang=js\"\nexport * from \"./GamepadItem.vue?vue&type=script&lang=js\"\n\nimport \"./GamepadItem.vue?vue&type=style&index=0&id=ac1dbe44&lang=css\"\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 { render } from \"./GamepadList.vue?vue&type=template&id=df298002\"\nimport script from \"./GamepadList.vue?vue&type=script&lang=js\"\nexport * from \"./GamepadList.vue?vue&type=script&lang=js\"\n\nimport \"./GamepadList.vue?vue&type=style&index=0&id=df298002&lang=css\"\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 { render } from \"./WaveloversApp.vue?vue&type=template&id=59c0b1a0\"\nimport script from \"./WaveloversApp.vue?vue&type=script&lang=js\"\nexport * from \"./WaveloversApp.vue?vue&type=script&lang=js\"\n\nimport \"./WaveloversApp.vue?vue&type=style&index=0&id=59c0b1a0&lang=css\"\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 { render } from \"./App.vue?vue&type=template&id=994f0e52\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\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 { createApp } from 'vue'\nimport App from './App.vue'\n\ncreateApp(App).mount('#app')\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__.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); }","// 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// no chunk on demand loading\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__(3596); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["module","exports","constructor","gamepad","this","id","Date","now","canVibrate","unit","vibrationActuator","isVibrating","pattern","gamepads","navigator","getGamepads","index","reset","async","i","length","playEffect","sleep","startDelay","duration","ms","Promise","resolve","setTimeout","init","_createBlock","_component_Wavelovers","class","_createElementVNode","_hoisted_4","_hoisted_8","_createElementBlock","_ctx","_component_PatternList","patterns","mode","isActive","onChange","$options","_hoisted_5","_component_GamepadList","_hoisted_9","_Fragment","_renderList","$props","_component_PatternItem","key","name","onClick","_toDisplayString","icon","props","type","Object","Number","Boolean","components","methods","change","$emit","__exports__","Array","PatternItem","_component_GamepadItem","GamepadItem","PatternList","GamepadList","data","loadPatterns","url","response","fetch","ok","json","console","log","error","addEventListeners","window","addEventListener","addGamepad","event","deleteGamepad","push","Gamepad","forEach","splice","vibrate","mounted","Wavelovers","WaveloversApp","render","createApp","App","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__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","g","globalThis","Function","e","obj","prop","prototype","hasOwnProperty","call","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","bind","__webpack_exports__"],"sourceRoot":""}