+
diff --git a/custom-fonts/icomoon/fonts/icomoon.eot b/custom-fonts/icomoon/fonts/icomoon.eot
index d3a9e4d..48124d1 100644
Binary files a/custom-fonts/icomoon/fonts/icomoon.eot and b/custom-fonts/icomoon/fonts/icomoon.eot differ
diff --git a/custom-fonts/icomoon/fonts/icomoon.svg b/custom-fonts/icomoon/fonts/icomoon.svg
index bc4b112..a01dff7 100644
--- a/custom-fonts/icomoon/fonts/icomoon.svg
+++ b/custom-fonts/icomoon/fonts/icomoon.svg
@@ -7,6 +7,8 @@
+
+
diff --git a/custom-fonts/icomoon/fonts/icomoon.ttf b/custom-fonts/icomoon/fonts/icomoon.ttf
index ebc9a74..4f3ecac 100644
Binary files a/custom-fonts/icomoon/fonts/icomoon.ttf and b/custom-fonts/icomoon/fonts/icomoon.ttf differ
diff --git a/custom-fonts/icomoon/fonts/icomoon.woff b/custom-fonts/icomoon/fonts/icomoon.woff
index aa12c92..4a6a0f7 100644
Binary files a/custom-fonts/icomoon/fonts/icomoon.woff and b/custom-fonts/icomoon/fonts/icomoon.woff differ
diff --git a/custom-fonts/icomoon/selection.json b/custom-fonts/icomoon/selection.json
index cd2ce89..0d9e7e4 100644
--- a/custom-fonts/icomoon/selection.json
+++ b/custom-fonts/icomoon/selection.json
@@ -1,6 +1,65 @@
{
"IcoMoonType": "selection",
"icons": [
+ {
+ "icon": {
+ "paths": [
+ "M704 384h234v256h-234l-128-128zM384 704l128-128 128 128v234h-256v-234zM320 384l128 128-128 128h-234v-256h234zM640 320l-128 128-128-128v-234h256v234z"
+ ],
+ "attrs": [
+ {}
+ ],
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "games"
+ ],
+ "grid": 24
+ },
+ "attrs": [
+ {}
+ ],
+ "properties": {
+ "order": 1,
+ "id": 0,
+ "name": "directional",
+ "prevSize": 24,
+ "code": 59649
+ },
+ "setIdx": 0,
+ "setId": 3,
+ "iconIdx": 0
+ },
+ {
+ "icon": {
+ "paths": [
+ "M475.429 621.714v-73.143c0-10.286-8-18.286-18.286-18.286h-109.714v-109.714c0-10.286-8-18.286-18.286-18.286h-73.143c-10.286 0-18.286 8-18.286 18.286v109.714h-109.714c-10.286 0-18.286 8-18.286 18.286v73.143c0 10.286 8 18.286 18.286 18.286h109.714v109.714c0 10.286 8 18.286 18.286 18.286h73.143c10.286 0 18.286-8 18.286-18.286v-109.714h109.714c10.286 0 18.286-8 18.286-18.286zM804.571 658.286c0-40.571-32.571-73.143-73.143-73.143s-73.143 32.571-73.143 73.143 32.571 73.143 73.143 73.143 73.143-32.571 73.143-73.143zM950.857 512c0-40.571-32.571-73.143-73.143-73.143s-73.143 32.571-73.143 73.143 32.571 73.143 73.143 73.143 73.143-32.571 73.143-73.143zM1097.143 585.143c0 161.714-130.857 292.571-292.571 292.571-74.286 0-141.714-28-193.143-73.143h-125.714c-51.429 45.143-118.857 73.143-193.143 73.143-161.714 0-292.571-130.857-292.571-292.571s130.857-292.571 292.571-292.571h512c161.714 0 292.571 130.857 292.571 292.571z"
+ ],
+ "attrs": [
+ {}
+ ],
+ "width": 1097,
+ "isMulticolor": false,
+ "isMulticolor2": false,
+ "tags": [
+ "gamepad"
+ ],
+ "grid": 14
+ },
+ "attrs": [
+ {}
+ ],
+ "properties": {
+ "order": 1,
+ "id": 0,
+ "name": "gamepad",
+ "prevSize": 28,
+ "code": 59648
+ },
+ "setIdx": 1,
+ "setId": 2,
+ "iconIdx": 0
+ },
{
"icon": {
"paths": [
@@ -24,8 +83,8 @@
"code": 61655,
"name": "caret-down"
},
- "setIdx": 0,
- "setId": 4,
+ "setIdx": 2,
+ "setId": 1,
"iconIdx": 0
},
{
@@ -51,8 +110,8 @@
"code": 61656,
"name": "caret-up"
},
- "setIdx": 0,
- "setId": 4,
+ "setIdx": 2,
+ "setId": 1,
"iconIdx": 1
},
{
@@ -78,8 +137,8 @@
"code": 61657,
"name": "caret-left"
},
- "setIdx": 0,
- "setId": 4,
+ "setIdx": 2,
+ "setId": 1,
"iconIdx": 2
},
{
@@ -105,8 +164,8 @@
"code": 61658,
"name": "caret-right"
},
- "setIdx": 0,
- "setId": 4,
+ "setIdx": 2,
+ "setId": 1,
"iconIdx": 3
},
{
@@ -132,9 +191,9 @@
"code": 61459,
"name": "cog"
},
- "setIdx": 1,
- "setId": 3,
- "iconIdx": 18
+ "setIdx": 2,
+ "setId": 1,
+ "iconIdx": 4
},
{
"icon": {
@@ -158,9 +217,9 @@
"code": 61541,
"name": "expand"
},
- "setIdx": 1,
- "setId": 3,
- "iconIdx": 95
+ "setIdx": 2,
+ "setId": 1,
+ "iconIdx": 5
}
],
"height": 1024,
diff --git a/custom-fonts/icomoon/style.css b/custom-fonts/icomoon/style.css
index 6f91367..bbcc45a 100644
--- a/custom-fonts/icomoon/style.css
+++ b/custom-fonts/icomoon/style.css
@@ -1,10 +1,10 @@
@font-face {
font-family: 'icomoon';
- src: url('fonts/icomoon.eot?i94kbs');
- src: url('fonts/icomoon.eot?i94kbs#iefix') format('embedded-opentype'),
- url('fonts/icomoon.ttf?i94kbs') format('truetype'),
- url('fonts/icomoon.woff?i94kbs') format('woff'),
- url('fonts/icomoon.svg?i94kbs#icomoon') format('svg');
+ src: url('fonts/icomoon.eot?yfuwoz');
+ src: url('fonts/icomoon.eot?yfuwoz#iefix') format('embedded-opentype'),
+ url('fonts/icomoon.ttf?yfuwoz') format('truetype'),
+ url('fonts/icomoon.woff?yfuwoz') format('woff'),
+ url('fonts/icomoon.svg?yfuwoz#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
@@ -24,6 +24,12 @@
-moz-osx-font-smoothing: grayscale;
}
+.fa-directional:before {
+ content: "\e901";
+}
+.fa-gamepad:before {
+ content: "\e900";
+}
.fa-caret-down:before {
content: "\f0d7";
}
diff --git a/package.json b/package.json
index 9ba5ac2..4349d2c 100644
--- a/package.json
+++ b/package.json
@@ -14,12 +14,12 @@
},
"dependencies": {
"animate.css": "^3.5.2",
- "bulma": "^0.3.1",
+ "bulma": "^0.4.0",
"compression": "^1.6.2",
"connect-history-api-fallback": "^1.1.0",
"express": "^4.14.0",
"mqtt": "^2.1.3",
- "vue": "^2.1.0",
+ "vue": "^2.2.6",
"vue-router": "^2.1.1",
"vue-touch": "next",
"vuex": "^2.1.1",
@@ -78,9 +78,9 @@
"sinon": "^1.17.3",
"sinon-chai": "^2.8.0",
"url-loader": "^0.5.7",
- "vue-loader": "^10.0.0",
- "vue-style-loader": "^1.0.0",
- "vue-template-compiler": "^2.1.0",
+ "vue-loader": "^11.3.4",
+ "vue-style-loader": "^2.0.5",
+ "vue-template-compiler": "^2.2.6",
"webpack": "^1.13.2",
"webpack-dev-middleware": "^1.8.3",
"webpack-hot-middleware": "^2.12.2",
diff --git a/src/assets/custom-fonts/fonts/icomoon.eot b/src/assets/custom-fonts/fonts/icomoon.eot
index d3a9e4d..48124d1 100644
Binary files a/src/assets/custom-fonts/fonts/icomoon.eot and b/src/assets/custom-fonts/fonts/icomoon.eot differ
diff --git a/src/assets/custom-fonts/fonts/icomoon.svg b/src/assets/custom-fonts/fonts/icomoon.svg
index bc4b112..a01dff7 100644
--- a/src/assets/custom-fonts/fonts/icomoon.svg
+++ b/src/assets/custom-fonts/fonts/icomoon.svg
@@ -7,6 +7,8 @@
+
+
diff --git a/src/assets/custom-fonts/fonts/icomoon.ttf b/src/assets/custom-fonts/fonts/icomoon.ttf
index ebc9a74..4f3ecac 100644
Binary files a/src/assets/custom-fonts/fonts/icomoon.ttf and b/src/assets/custom-fonts/fonts/icomoon.ttf differ
diff --git a/src/assets/custom-fonts/fonts/icomoon.woff b/src/assets/custom-fonts/fonts/icomoon.woff
index aa12c92..4a6a0f7 100644
Binary files a/src/assets/custom-fonts/fonts/icomoon.woff and b/src/assets/custom-fonts/fonts/icomoon.woff differ
diff --git a/src/assets/custom-fonts/style.css b/src/assets/custom-fonts/style.css
index 53886bc..bbcc45a 100644
--- a/src/assets/custom-fonts/style.css
+++ b/src/assets/custom-fonts/style.css
@@ -1,10 +1,10 @@
@font-face {
font-family: 'icomoon';
- src: url('fonts/icomoon.eot?i94kbs');
- src: url('fonts/icomoon.eot?i94kbs#iefix') format('embedded-opentype'),
- url('fonts/icomoon.ttf?i94kbs') format('truetype'),
- url('fonts/icomoon.woff?i94kbs') format('woff'),
- url('fonts/icomoon.svg?i94kbs#icomoon') format('svg');
+ src: url('fonts/icomoon.eot?yfuwoz');
+ src: url('fonts/icomoon.eot?yfuwoz#iefix') format('embedded-opentype'),
+ url('fonts/icomoon.ttf?yfuwoz') format('truetype'),
+ url('fonts/icomoon.woff?yfuwoz') format('woff'),
+ url('fonts/icomoon.svg?yfuwoz#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
@@ -24,6 +24,12 @@
-moz-osx-font-smoothing: grayscale;
}
+.fa-directional:before {
+ content: "\e901";
+}
+.fa-gamepad:before {
+ content: "\e900";
+}
.fa-caret-down:before {
content: "\f0d7";
}
@@ -42,20 +48,4 @@
.fa-expand:before {
content: "\f065";
}
-.fa-lg {
- font-size: 1.33333333em;
- line-height: 0.75em;
- vertical-align: -15%;
-}
-.fa-2x {
- font-size: 2em;
-}
-.fa-3x {
- font-size: 3em;
-}
-.fa-4x {
- font-size: 4em;
-}
-.fa-5x {
- font-size: 5em;
-}
+
diff --git a/src/components/ConnectedIndicator.vue b/src/components/ConnectedIndicator.vue
index 106e9cf..7d73850 100644
--- a/src/components/ConnectedIndicator.vue
+++ b/src/components/ConnectedIndicator.vue
@@ -1,6 +1,6 @@
{{ text }} - {{ currentPlayer }}
+ :class="color">{{ text }} - {{ player }}
+
+
diff --git a/src/layouts/directional/DirectionalAndTwoButtons.vue b/src/layouts/directional/DirectionalAndTwoButtons.vue
new file mode 100644
index 0000000..cb1dae3
--- /dev/null
+++ b/src/layouts/directional/DirectionalAndTwoButtons.vue
@@ -0,0 +1,96 @@
+
+
+
+
+
+
+
diff --git a/src/layouts/directional/LayoutSelectorItem.vue b/src/layouts/directional/LayoutSelectorItem.vue
new file mode 100644
index 0000000..f7e2f06
--- /dev/null
+++ b/src/layouts/directional/LayoutSelectorItem.vue
@@ -0,0 +1,95 @@
+
+
+
+
+
+
+
diff --git a/src/layouts/directional/ModalLayoutSelector.vue b/src/layouts/directional/ModalLayoutSelector.vue
new file mode 100644
index 0000000..90a894c
--- /dev/null
+++ b/src/layouts/directional/ModalLayoutSelector.vue
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+ Pad Selector
+
+
+
+
+
+
+
+
+
+
+ No additional layouts found.
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layouts/directional/ThreeButtons.vue b/src/layouts/directional/ThreeButtons.vue
new file mode 100644
index 0000000..8db007e
--- /dev/null
+++ b/src/layouts/directional/ThreeButtons.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
diff --git a/src/layouts/directional/TwoButtons.vue b/src/layouts/directional/TwoButtons.vue
new file mode 100644
index 0000000..88828f5
--- /dev/null
+++ b/src/layouts/directional/TwoButtons.vue
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+
diff --git a/src/mixins/mqtt_sender_wrapper.js b/src/mixins/mqtt_sender_wrapper.js
new file mode 100644
index 0000000..5dd26f7
--- /dev/null
+++ b/src/mixins/mqtt_sender_wrapper.js
@@ -0,0 +1,42 @@
+
+export default {
+ props: ['mqtt'],
+ data () {
+ return {
+ keypress: {
+ Y: false,
+ X: false,
+ B: false,
+ A: false,
+ left: false,
+ right: false,
+ up: false,
+ down: false
+ },
+ lastCommandSent: null,
+ interval: null
+ }
+ },
+ methods: {
+ send () {
+ const command = JSON.stringify(this.keypress)
+ if (this.mqtt.client &&
+ this.$store.state.pad.enabled &&
+ command !== this.lastCommandSent) {
+ // publishes only if the command change
+ this.lastCommandSent = command
+ const { player } = this.$store.state
+ this.mqtt.client.publish(`pad/${player}`, command)
+ }
+ }
+ },
+ mounted () {
+ // Setup a 60fps interval - 15
+ this.interval = setInterval(() => {
+ this.send()
+ }, 30)
+ },
+ beforeDestroy () {
+ clearInterval(this.interval)
+ }
+}
diff --git a/src/pages/Config.vue b/src/pages/Config.vue
index 790028e..9189d75 100644
--- a/src/pages/Config.vue
+++ b/src/pages/Config.vue
@@ -12,7 +12,8 @@
:value="obj.value"
:number="obj.number"
:selectedValue="player"
- @updateSelected="updateSelected">
+ @updateSelected="updateSelected"
+ :key="obj.number">
diff --git a/src/pages/DirectionalPad.vue b/src/pages/DirectionalPad.vue
index 69da355..8c574bd 100644
--- a/src/pages/DirectionalPad.vue
+++ b/src/pages/DirectionalPad.vue
@@ -1,149 +1,62 @@
-
diff --git a/src/pages/RacePad.vue b/src/pages/RacePad.vue
index b9874f8..ed35712 100644
--- a/src/pages/RacePad.vue
+++ b/src/pages/RacePad.vue
@@ -49,12 +49,7 @@
-
+
@@ -87,27 +82,6 @@ export default {
...mapGetters([
'laf'
])
- },
- methods: {
- touchstart (command) {
- this.keypress[command] = true
- },
- touchend (command) {
- this.keypress[command] = false
- },
- pan (command, opposite) {
- this.keypress[command] = true
- // guarantee that opposite buttons can't be enabled
- // at the same time
- this.keypress[opposite] = false
- },
- panend () {
- this.keypress.up = false
- this.keypress.down = false
- }
- },
- mounted () {
- this.$store.commit('updatePadType', 'race')
}
}
diff --git a/src/store.js b/src/store.js
index c8c6e80..2f8362e 100644
--- a/src/store.js
+++ b/src/store.js
@@ -20,20 +20,32 @@ const store = new Vuex.Store({
},
updatePadType (state, type) {
state.pad.type = type
+ },
+ showMessage (state, {text, type}) {
+ state.message.text = text
+ state.message.type = type
+ state.message.show = true
+ },
+ clearMessage (state) {
+ state.message.text = ''
+ state.message.type = ''
+ state.message.show = false
}
},
getters: {
laf (state) {
- switch (state.profile) {
- case 'n64--default':
- return require(`./store/laf/${state.pad.type}/n64--default`)
- case 'psx--default':
- return require(`./store/laf/${state.pad.type}/psx--default`)
- case 'snes--default':
- return require(`./store/laf/${state.pad.type}/snes--default`)
- default:
+ try {
+ return require(`./store/laf/${state.pad.type}/${state.profile}`)
+ } catch (err) {
return require(`./store/laf/${state.pad.type}/default`)
}
+ },
+ layouts (state) {
+ try {
+ return require(`./store/layouts/${state.pad.type}/${state.profile}`)
+ } catch (e) {
+ return []
+ }
}
},
plugins: [
@@ -50,7 +62,12 @@ const store = new Vuex.Store({
port: 1884
},
accelerationSensibility: 4,
- profile: ''
+ profile: 'default',
+ message: {
+ text: '',
+ type: '',
+ show: false
+ }
}
})
]
diff --git a/src/store/laf/directional/n64--default.js b/src/store/laf/directional/n64--default.js
index 9ac885e..3746bf4 100644
--- a/src/store/laf/directional/n64--default.js
+++ b/src/store/laf/directional/n64--default.js
@@ -8,33 +8,59 @@ module.exports = {
btnA: {
bgColor: BLUE,
fgColor: WHITE,
- label: 'A'
+ label: 'A',
+ keyb: 'A'
},
btnB: {
bgColor: GREEN,
fgColor: WHITE,
- label: 'B'
+ label: 'B',
+ keyb: 'B'
},
btnY: {
bgColor: BLUE_GREY,
fgColor: WHITE,
- label: 'R'
+ label: 'R',
+ keyb: 'Y'
},
btnX: {
bgColor: BLUE_GREY,
fgColor: WHITE,
- label: 'Z'
+ label: 'Z',
+ keyb: 'X'
},
directional: {
bgColor: BLUE_GREY,
- fgColor: WHITE
+ fgColor: WHITE,
+ label: 'Directional',
+ icon: 'fa-directional'
},
left: {
bgColor: BLUE_GREY,
- fgColor: WHITE
+ fgColor: WHITE,
+ label: 'Left',
+ icon: 'fa-caret-left',
+ keyb: 'left'
},
right: {
bgColor: BLUE_GREY,
- fgColor: WHITE
+ fgColor: WHITE,
+ label: 'Right',
+ icon: 'fa-caret-right',
+ keyb: 'right'
+ },
+ up: {
+ bgColor: BLUE_GREY,
+ fgColor: WHITE,
+ label: 'Up',
+ icon: 'fa-caret-up',
+ keyb: 'up'
+ },
+ down: {
+ bgColor: BLUE_GREY,
+ fgColor: WHITE,
+ label: 'Down',
+ icon: 'fa-caret-down',
+ keyb: 'down'
}
}
diff --git a/src/store/layouts/directional/n64--default.js b/src/store/layouts/directional/n64--default.js
new file mode 100644
index 0000000..45f8721
--- /dev/null
+++ b/src/store/layouts/directional/n64--default.js
@@ -0,0 +1,23 @@
+
+module.exports = [
+ {
+ layout: 'pad-dir-and-2btn--touch',
+ keyset: ['directional', 'btnB', 'btnA']
+ },
+ {
+ layout: 'pad-2btn--touch',
+ keyset: ['btnB', 'btnA']
+ },
+ {
+ layout: 'pad-2btn--touch',
+ keyset: ['left', 'right']
+ },
+ {
+ layout: 'pad-3btn--touch',
+ keyset: ['btnX', 'btnB', 'btnA']
+ },
+ {
+ layout: 'pad-2btn--touch',
+ keyset: ['down', 'up']
+ }
+]
diff --git a/yarn.lock b/yarn.lock
index f014992..be4b670 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1010,9 +1010,9 @@ builtin-status-codes@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-2.0.0.tgz#6f22003baacf003ccd287afe6872151fddc58579"
-bulma@^0.3.1:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/bulma/-/bulma-0.3.1.tgz#0166be77e7a5f62ede01b0be3f1e77e954978bd2"
+bulma@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/bulma/-/bulma-0.4.0.tgz#2a0b07555d53bb4eb17861e3159e2616c21dfa6c"
bytes@2.3.0:
version "2.3.0"
@@ -1429,6 +1429,17 @@ core-util-is@~1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+cosmiconfig@^2.1.0, cosmiconfig@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.1.1.tgz#817f2c2039347a1e9bf7d090c0923e53f749ca82"
+ dependencies:
+ js-yaml "^3.4.3"
+ minimist "^1.2.0"
+ object-assign "^4.1.0"
+ os-homedir "^1.0.1"
+ parse-json "^2.2.0"
+ require-from-string "^1.1.0"
+
cross-spawn@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982"
@@ -3136,7 +3147,7 @@ js-tokens@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-2.0.0.tgz#79903f5563ee778cc1162e6dcf1a0027c97f9cb5"
-js-yaml@3.x, js-yaml@^3.5.1:
+js-yaml@3.x, js-yaml@^3.4.3, js-yaml@^3.5.1:
version "3.7.0"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80"
dependencies:
@@ -3347,7 +3358,7 @@ load-json-file@^1.0.0:
pinkie-promise "^2.0.0"
strip-bom "^2.0.0"
-loader-utils@0.2.x, loader-utils@^0.2.10, loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0.2.16, loader-utils@^0.2.3, loader-utils@^0.2.5, loader-utils@^0.2.7, loader-utils@~0.2.2, loader-utils@~0.2.5:
+loader-utils@0.2.x, loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0.2.16, loader-utils@^0.2.3, loader-utils@^0.2.5, loader-utils@^0.2.7, loader-utils@~0.2.2, loader-utils@~0.2.5:
version "0.2.16"
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.16.tgz#f08632066ed8282835dff88dfb52704765adee6d"
dependencies:
@@ -3356,6 +3367,14 @@ loader-utils@0.2.x, loader-utils@^0.2.10, loader-utils@^0.2.11, loader-utils@^0.
json5 "^0.5.0"
object-assign "^4.0.1"
+loader-utils@^1.0.2, loader-utils@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd"
+ dependencies:
+ big.js "^3.1.3"
+ emojis-list "^2.0.0"
+ json5 "^0.5.0"
+
lodash._arraycopy@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz#76e7b7c1f1fb92547374878a562ed06a3e50f6e1"
@@ -4115,7 +4134,7 @@ oauth-sign@~0.8.1:
version "0.8.2"
resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
-object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0:
+object-assign@^4.0.1, object-assign@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0"
@@ -4203,7 +4222,7 @@ os-browserify@^0.2.0:
version "0.2.1"
resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.2.1.tgz#63fc4ccee5d2d7763d26bbf8601078e6c2e0044f"
-os-homedir@^1.0.0:
+os-homedir@^1.0.0, os-homedir@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
@@ -4442,6 +4461,29 @@ postcss-filter-plugins@^2.0.0:
postcss "^5.0.4"
uniqid "^4.0.0"
+postcss-load-config@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a"
+ dependencies:
+ cosmiconfig "^2.1.0"
+ object-assign "^4.1.0"
+ postcss-load-options "^1.2.0"
+ postcss-load-plugins "^2.3.0"
+
+postcss-load-options@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c"
+ dependencies:
+ cosmiconfig "^2.1.0"
+ object-assign "^4.1.0"
+
+postcss-load-plugins@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92"
+ dependencies:
+ cosmiconfig "^2.1.1"
+ object-assign "^4.1.0"
+
postcss-merge-idents@^2.1.5:
version "2.1.7"
resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270"
@@ -4607,7 +4649,7 @@ postcss-zindex@^2.0.1:
postcss "^5.0.4"
uniqs "^2.0.0"
-postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.6:
+postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.21, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.6:
version "5.2.6"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.6.tgz#a252cd67cd52585035f17e9ad12b35137a7bdd9e"
dependencies:
@@ -5023,6 +5065,10 @@ require-directory@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
+require-from-string@^1.1.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418"
+
require-main-filename@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
@@ -5851,40 +5897,41 @@ void-elements@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec"
-vue-hot-reload-api@^2.0.1:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.0.6.tgz#817d4bfb30f55428aa1012d029499e07f3147d21"
+vue-hot-reload-api@^2.0.11:
+ version "2.0.11"
+ resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.0.11.tgz#bf26374fb73366ce03f799e65ef5dfd0e28a1568"
-vue-loader@^10.0.0:
- version "10.0.2"
- resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-10.0.2.tgz#6fe7bcefb32c5439bd0338464aa22673ad62299c"
+vue-loader@^11.3.4:
+ version "11.3.4"
+ resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-11.3.4.tgz#65e10a44ce092d906e14bbc72981dec99eb090d2"
dependencies:
consolidate "^0.14.0"
hash-sum "^1.0.2"
js-beautify "^1.6.3"
- loader-utils "^0.2.10"
+ loader-utils "^1.1.0"
lru-cache "^4.0.1"
- object-assign "^4.0.0"
- postcss "^5.0.10"
+ postcss "^5.0.21"
+ postcss-load-config "^1.1.0"
postcss-selector-parser "^2.0.0"
source-map "^0.5.6"
- vue-hot-reload-api "^2.0.1"
- vue-style-loader "^1.0.0"
+ vue-hot-reload-api "^2.0.11"
+ vue-style-loader "^2.0.0"
vue-template-es2015-compiler "^1.2.2"
vue-router@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-2.1.1.tgz#10c31bbdcb6da92bd3e0223fa12345e73018625a"
-vue-style-loader@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-1.0.0.tgz#abeb7bd0f46313083741244d3079d4f14449e049"
+vue-style-loader@^2.0.0, vue-style-loader@^2.0.5:
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-2.0.5.tgz#f0efac992febe3f12e493e334edb13cd235a3d22"
dependencies:
- loader-utils "^0.2.7"
+ hash-sum "^1.0.2"
+ loader-utils "^1.0.2"
-vue-template-compiler@^2.1.0:
- version "2.1.6"
- resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.1.6.tgz#f96f968652fc1e861bb0052f61993ba1fdc18ad3"
+vue-template-compiler@^2.2.6:
+ version "2.2.6"
+ resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.2.6.tgz#2e2928daf0cd0feca9dfc35a9729adeae173ec68"
dependencies:
de-indent "^1.0.2"
he "^1.1.0"
@@ -5902,9 +5949,9 @@ vue-touch@next:
rollup-plugin-commonjs "^7.0.0"
rollup-plugin-node-resolve "^2.0.0"
-vue@^2.1.0:
- version "2.1.6"
- resolved "https://registry.yarnpkg.com/vue/-/vue-2.1.6.tgz#2fc0024c07479ac6bc7d34a2cd5ef9ca5e90b143"
+vue@^2.2.6:
+ version "2.2.6"
+ resolved "https://registry.yarnpkg.com/vue/-/vue-2.2.6.tgz#451714b394dd6d4eae7b773c40c2034a59621aed"
vuex-localstorage@^1.0.0:
version "1.0.0"