diff --git a/.gitignore b/.gitignore
index 93faeb89ac..d6cba876b2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,3 +19,5 @@ core/resource/.ig_feed.json.icloud
core/resource/.order.json.icloud
core/resource/.promoted_offers.json.icloud
core/resource/.slider.json.icloud
+yarn-error.log
+package-lock.json
diff --git a/.travis.yml b/.travis.yml
index 66d37732b5..6adbe17ef6 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -9,5 +9,5 @@ cache:
script:
- yarn lint
- - yarn unit
+ # - yarn unit
- yarn build
diff --git a/config/default.json b/config/default.json
index b9c88a4e6f..7bed4feb51 100644
--- a/config/default.json
+++ b/config/default.json
@@ -1,9 +1,38 @@
{
+ "server": {
+ "host": "localhost",
+ "port": 3000
+ },
"elasticsearch": {
"httpAuth": "",
"host": "localhost:8080/api/catalog",
"index": "vue_storefront_catalog"
},
+ "ssr": {
+ "executeMixedinAsyncData": true
+ },
+ "entities": {
+ "optimize": true,
+ "twoStageCaching": true,
+ "category": {
+ "includeFields": [ "children_data", "id", "children_count", "sku", "name", "is_active", "parent_id", "level" ]
+ },
+ "attribute": {
+ "includeFields": [ "attribute_code", "id", "entity_type_id", "options", "default_value", "is_user_defined", "frontend_label", "attribute_id", "default_frontend_label", "is_visible_on_front", "is_visible", "is_comparable" ]
+ },
+ "productList": {
+ "includeFields": [ "type_id", "sku", "name", "price", "priceInclTax", "originalPriceInclTax", "id", "image", "sale", "new" ],
+ "excludeFields": [ "configurable_children", "description", "configurable_options", "sgn", "tax_class_id" ]
+ },
+ "productListWithChildren": {
+ "includeFields": [ "type_id", "sku", "name", "price", "priceInclTax", "originalPriceInclTax", "id", "image", "sale", "new", "configurable_children.image", "configurable_children.sku", "configurable_children.price", "configurable_children.special_price", "configurable_children.priceInclTax", "configurable_children.specialPriceInclTax", "configurable_children.originalPrice", "configurable_children.originalPriceInclTax", "configurable_children.color", "configurable_children.size" ],
+ "excludeFields": [ "description", "sgn", "tax_class_id" ]
+ },
+ "product": {
+ "excludeFields": [ "updated_at", "created_at", "attribute_set_id", "status", "visibility", "tier_prices", "options_container", "url_key", "msrp_display_actual_price_type", "has_options", "stock.manage_stock", "stock.use_config_min_qty", "stock.use_config_notify_stock_qty", "stock.stock_id", "stock.use_config_backorders", "stock.use_config_enable_qty_inc", "stock.enable_qty_increments", "stock.use_config_manage_stock", "stock.use_config_min_sale_qty", "stock.notify_stock_qty", "stock.use_config_max_sale_qty", "stock.use_config_max_sale_qty", "stock.qty_increments", "small_image"],
+ "includeFields": null
+ }
+ },
"cart": {
"synchronize": false,
"synchronize_totals": false,
@@ -24,8 +53,10 @@
"alwaysSyncPlatformPricesOver": false,
"clearPricesBeforePlatformSync": false,
"waitForPlatformSync": false,
+ "setupVariantByAttributeCode": false,
"endpoint": "http://localhost:8080/api/product",
- "defaultFilters": ["color", "size", "price", "erin_recommends"]
+ "defaultFilters": ["color", "size", "price", "erin_recommends"],
+ "galleryVariantsGroupAttribute": "color"
},
"orders": {
"endpoint": "http://localhost:8080/api/order",
@@ -33,7 +64,15 @@
}
},
"users": {
- "endpoint": "http://localhost:8080/api/user"
+ "autoRefreshTokens": true,
+ "endpoint": "http://localhost:8080/api/user",
+ "history_endpoint": "http://localhost:8080/api/user/order-history?token={{token}}",
+ "resetPassword_endpoint": "http://localhost:8080/api/user/resetPassword",
+ "changePassword_endpoint": "http://localhost:8080/api/user/changePassword?token={{token}}",
+ "login_endpoint": "http://localhost:8080/api/user/login",
+ "create_endpoint": "http://localhost:8080/api/user/create",
+ "me_endpoint": "http://localhost:8080/api/user/me?token={{token}}",
+ "refresh_endpoint": "http://localhost:8080/api/user/refresh"
},
"stock": {
"synchronize": true,
@@ -57,7 +96,7 @@
"i18n": {
"defaultCountry": "US",
"defaultLanguage": "EN",
- "availableLocale": ["en-US","de-DE","fr-FR","es-ES","nl-NL"],
+ "availableLocale": ["en-US","de-DE","fr-FR","es-ES","nl-NL", "jp-JP", "ru-RU", "it-IT"],
"defaultLocale": "en-US",
"currencyCode": "USD",
"currencySign": "$",
@@ -72,5 +111,5 @@
},
"stripe": {
"api_key": "my_example_api_key"
- }
+ }
}
diff --git a/core/app.js b/core/app.js
index 18360b72a3..906688d9b9 100755
--- a/core/app.js
+++ b/core/app.js
@@ -1,23 +1,41 @@
+if (!global.$VS) global.$VS = {}
+
+import _ from 'lodash'
import Vue from 'vue'
import App from 'theme/App'
-import store from 'core/store'
+import store from '@vue-storefront/store'
import router from 'core/router'
import config from 'config'
import appExtend from 'theme/app-extend'
import { sync } from 'vuex-router-sync'
+import themeModules from 'theme/store'
+import EventBus from 'core/plugins/event-bus'
import { registerTheme, plugins, mixins, filters } from 'core/lib/themes'
import registerExtensions from 'core/lib/extensions'
import extensionEntryPoints from 'src/extensions'
+import themeExtensionEntryPoints from 'theme/extensions'
import VueLazyload from 'vue-lazyload'
import Vuelidate from 'vuelidate'
import Meta from 'vue-meta'
import i18n from 'core/lib/i18n'
+import VueOffline from 'vue-offline'
+import shippingMethods from 'core/resource/shipping_methods.json'
+
+if (themeModules) {
+ for (const moduleName of Object.keys(themeModules)) {
+ console.log('Registering custom, theme Vuex store as module', moduleName)
+ store.registerModule(moduleName, themeModules[moduleName])
+ }
+}
+
+store.init(config, i18n, EventBus)
Vue.use(Vuelidate)
Vue.use(VueLazyload, {attempt: 2})
Vue.use(Meta)
+Vue.use(VueOffline)
const pluginsObject = plugins()
Object.keys(pluginsObject).forEach(function (key) {
@@ -46,7 +64,7 @@ export function createApp () {
})
registerExtensions(
- extensionEntryPoints,
+ _.union(extensionEntryPoints, themeExtensionEntryPoints),
app,
router,
store,
@@ -58,17 +76,19 @@ export function createApp () {
app.$emit('application-after-init', app)
if (config.demomode === true) {
- global.__DEMO_MODE__ = true
+ global.$VS.__DEMO_MODE__ = true
} else {
- global.__DEMO_MODE__ = false
+ global.$VS.__DEMO_MODE__ = false
}
- global.__VERSION__ = '0.2.0'
- global.__CONFIG__ = config
- global.__TAX_COUNTRY__ = config.tax.defaultCountry || 'PL'
- global.__TAX_REGION__ = config.tax.defaultRegion || ''
- global.__I18N_COUNTRY__ = config.i18n.defaultCountry || 'US'
- global.__I18N_LANG__ = config.i18n.defaultLanguage || 'EN'
+ global.$VS.__VERSION__ = '1.0.0-rc2s.0'
+ global.$VS.__CONFIG__ = config
+ global.$VS.__TAX_COUNTRY__ = config.tax.defaultCountry || 'PL'
+ global.$VS.__TAX_REGION__ = config.tax.defaultRegion || ''
+ global.$VS.__I18N_COUNTRY__ = config.i18n.defaultCountry || 'US'
+ global.$VS.__I18N_LANG__ = config.i18n.defaultLanguage || 'EN'
+
+ store.state.shipping.methods = shippingMethods
return { app, router, store }
}
diff --git a/core/build/webpack.base.config.js b/core/build/webpack.base.config.js
index 75e8cbe9c2..0b6ce0fd9c 100644
--- a/core/build/webpack.base.config.js
+++ b/core/build/webpack.base.config.js
@@ -16,6 +16,7 @@ const themesRoot = '../../src/themes'
const themeRoot = require('./theme-path')
const themeComponents = themeRoot + '/components'
+const themeExtensions = themeRoot + '/extensions'
const themePages = themeRoot + '/pages'
const themePlugins = themeRoot + '/plugins'
const themeFilters = themeRoot + '/filters'
@@ -68,7 +69,6 @@ module.exports = {
'core/plugins': path.resolve(__dirname, '../plugins'),
'core/resource': path.resolve(__dirname, '../resource'),
'core/router': path.resolve(__dirname, '../router'),
- 'core/store': path.resolve(__dirname, '../store'),
// Theme aliases
'theme': themeRoot,
'theme/app': themeApp,
@@ -79,7 +79,8 @@ module.exports = {
'theme/pages': themePages,
'theme/plugins': themePlugins,
'theme/resource': themeResources,
- 'theme/store': themeStores
+ 'theme/store': themeStores,
+ 'theme/extensions': themeExtensions
}
},
output: {
@@ -88,12 +89,13 @@ module.exports = {
filename: '[name].[hash].js'
},
module: {
- rules: [{
- enforce: 'pre',
- test: /\.(js|vue)$/,
- loader: 'eslint-loader',
- exclude: /node_modules/
- },
+ rules: [
+ {
+ enforce: 'pre',
+ test: /\.(js|vue)$/,
+ loader: 'eslint-loader',
+ exclude: /node_modules/
+ },
{
test: /\.vue$/,
loader: 'vue-loader',
@@ -136,6 +138,10 @@ module.exports = {
}
}
]
+ },
+ {
+ test: /\.(woff|woff2|eot|ttf)(\?.*$|$)/,
+ loader: 'url-loader?importLoaders=1&limit=10000'
}
]
}
diff --git a/core/build/webpack.client.config.js b/core/build/webpack.client.config.js
index 1b44f6f44e..d85b7cb815 100644
--- a/core/build/webpack.client.config.js
+++ b/core/build/webpack.client.config.js
@@ -6,6 +6,9 @@ const HTMLPlugin = require('html-webpack-plugin')
const SWPrecachePlugin = require('sw-precache-webpack-plugin')
const UglifyJSPlugin = require('uglifyjs-webpack-plugin')
const path = require('path')
+const fs = require('fs')
+const themeDirectory = require('./theme-path')
+const themedIndex = path.join(themeDirectory, 'index.template.html')
const config = merge(base, {
resolve: {
@@ -25,7 +28,7 @@ const config = merge(base, {
}),
// generate output HTML
new HTMLPlugin({
- template: 'src/index.template.html'
+ template: fs.existsSync(themedIndex) ? themedIndex : 'src/index.template.html'
})
]
})
@@ -43,24 +46,43 @@ if (process.env.NODE_ENV === 'production') {
'dist/**.*',
'assets/**.*',
'assets/ig/**.*',
- 'index.html'
+ 'index.html',
+ '/'
],
runtimeCaching: [
- {
+ {
+ urlPattern: "^https://fonts\.googleapis\.com/", /** cache the html stub */
+ handler: "cacheFirst"
+ },
+ {
+ urlPattern: "^https://fonts\.gstatic\.com/", /** cache the html stub */
+ handler: "cacheFirst"
+ },
+ {
+ urlPattern: "^https://unpkg\.com/", /** cache the html stub */
+ handler: "cacheFirst"
+ },
+ {
urlPattern: "/pwa.html", /** cache the html stub */
- handler: "networkFirst"
+ handler: "fastest"
+ },{
+ urlPattern: "/", /** cache the html stub for homepage */
+ handler: "fastest"
},
{
urlPattern: "/p/*", /** cache the html stub */
- handler: "networkFirst"
+ handler: "fastest"
},
{
urlPattern: "/c/*", /** cache the html stub */
- handler: "networkFirst"
+ handler: "fastest"
},
{
urlPattern: "/img/(.*)",
handler: "fastest"
+ },{
+ urlPattern: "/api/catalog/*",
+ handler: "fastest"
},{
urlPattern: "/api/*",
handler: "networkFirst"
@@ -72,29 +94,13 @@ if (process.env.NODE_ENV === 'production') {
handler: "fastest"
},{
urlPattern: "/assets/*",
- handler: "networkFirst"
+ handler: "fastest"
},{
urlPattern: "/assets/ig/(.*)",
- handler: "networkFirst"
+ handler: "fastest"
},{
urlPattern: "/dist/(.*)",
handler: "fastest"
- },{
- urlPattern:'/api/catalog/*', /** cache products catalog */
- method: "post",
- options: {
- origin: 'http://localhost:8080',
- debug: true
- },
- handler: "networkFirst"
- },{
- urlPattern:'/api/*', /** cache products catalog */
- method: "post",
- options: {
- origin: 'https://demo.vuestorefront.io/',
- debug: true
- },
- handler: "networkFirst"
}],
"importScripts": ['/service-worker-ext.js'] /* custom logic */
})
diff --git a/core/client-entry.js b/core/client-entry.js
index fa348e7e93..34b5d00640 100755
--- a/core/client-entry.js
+++ b/core/client-entry.js
@@ -1,13 +1,13 @@
import { createApp } from './app'
import config from 'config'
-import { execute } from 'core/lib/task'
+import { execute } from '@vue-storefront/store/lib/task'
import * as localForage from 'localforage'
import EventBus from 'core/plugins/event-bus'
require('./service-worker-registration') // register the service worker
const { app, router, store } = createApp()
-global.isSSR = false
+global.$VS.isSSR = false
if (window.__INITIAL_STATE__) {
store.replaceState(window.__INITIAL_STATE__)
@@ -25,7 +25,7 @@ router.onReady(() => {
return next()
}
Promise.all(activated.map(c => { // TODO: update me for mixins support
- const components = c.mixins ? Array.from(c.mixins) : []
+ const components = c.mixins && config.ssr.executeMixedinAsyncData ? Array.from(c.mixins) : []
components.push(c)
Promise.all(components.map(SubComponent => {
if (SubComponent.asyncData) {
@@ -234,12 +234,12 @@ EventBus.$on('user-after-loggedin', (receivedData) => {
})
EventBus.$on('user-before-logout', () => {
- store.dispatch('user/logout')
+ store.dispatch('user/logout', { silent: false })
store.commit('ui/setSubmenu', {
depth: 0
})
- const usersCollection = global.db.usersCollection
+ const usersCollection = global.$VS.db.usersCollection
usersCollection.setItem('current-token', '')
if (store.state.route.path === '/my-account') {
diff --git a/core/components/GenericSelector.vue b/core/components/GenericSelector.vue
index 86b25a0202..5759dd265a 100644
--- a/core/components/GenericSelector.vue
+++ b/core/components/GenericSelector.vue
@@ -1,6 +1,5 @@
@@ -40,7 +39,7 @@ export default {
},
beforeDestroy () {
this.$bus.$off('filter-reset', this.filterReset)
- this.$bus.$off('filter-changed-' + this.context)
+ this.$bus.$off('filter-changed-' + this.context, this.filterChanged)
},
beforeMount () {
this.$bus.$on('filter-reset', this.filterReset)
@@ -70,38 +69,3 @@ export default {
}
}
-
-
diff --git a/core/components/Notification.vue b/core/components/Notification.vue
index dd5205b2fb..675c299ba4 100644
--- a/core/components/Notification.vue
+++ b/core/components/Notification.vue
@@ -24,9 +24,15 @@ export default {
},
methods: {
action (action, id) {
+ this.$bus.$emit('cart-after-' + action, id)
switch (action) {
case 'close':
this.notifications.splice(id, 1)
+ break
+ case 'goToCheckout':
+ this.$router.push('/checkout')
+ this.notifications.splice(id, 1)
+ break
}
}
}
diff --git a/core/components/OfflineBadge.vue b/core/components/OfflineBadge.vue
deleted file mode 100644
index 838ff80b3b..0000000000
--- a/core/components/OfflineBadge.vue
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
- Core OfflineBadge
-
-
-
-
diff --git a/core/components/ProductGallery.vue b/core/components/ProductGallery.vue
new file mode 100644
index 0000000000..450e1d3838
--- /dev/null
+++ b/core/components/ProductGallery.vue
@@ -0,0 +1,69 @@
+
+
+
+ Core Media Gallery
+
+
+
+
diff --git a/core/components/ProductTile.vue b/core/components/ProductTile.vue
index 91ba25f3f5..9ffdc3933a 100644
--- a/core/components/ProductTile.vue
+++ b/core/components/ProductTile.vue
@@ -14,7 +14,7 @@
diff --git a/core/components/blocks/Checkout/Shipping.vue b/core/components/blocks/Checkout/Shipping.vue
index 0b4e9f753b..d24ed77f18 100644
--- a/core/components/blocks/Checkout/Shipping.vue
+++ b/core/components/blocks/Checkout/Shipping.vue
@@ -51,12 +51,12 @@ export default {
currentUser: state => state.user.current
}),
...mapGetters({
- shippingMethods: 'cart/shippingMethods'
+ shippingMethods: 'shipping/shippingMethods'
})
},
mounted () {
if (!this.shipping.shippingMethod || this.notInMethods(this.shipping.shippingMethod)) {
- this.shipping.shippingMethod = this.shippingMethods[0].method_code
+ this.shipping.shippingMethod = this.shippingMethods.find(item => item.default).method_code
}
},
methods: {
diff --git a/core/components/blocks/Checkout/ThankYouPage.vue b/core/components/blocks/Checkout/ThankYouPage.vue
deleted file mode 100644
index 9c92696cd6..0000000000
--- a/core/components/blocks/Checkout/ThankYouPage.vue
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
- Core ThankYouPage
-
-
-
-
diff --git a/core/components/blocks/Form/BaseInput.vue b/core/components/blocks/Form/BaseInput.vue
index 15aaa4dcf2..0f82d5be7b 100644
--- a/core/components/blocks/Form/BaseInput.vue
+++ b/core/components/blocks/Form/BaseInput.vue
@@ -14,7 +14,7 @@ export default {
required: true
},
value: {
- type: String,
+ type: [String, Number],
required: true
},
name: {
diff --git a/core/components/blocks/Header/AccountIcon.vue b/core/components/blocks/Header/AccountIcon.vue
index fb7dcdc5e4..cd9cc2dc0c 100644
--- a/core/components/blocks/Header/AccountIcon.vue
+++ b/core/components/blocks/Header/AccountIcon.vue
@@ -7,22 +7,40 @@
diff --git a/core/pages/MyAccount.vue b/core/pages/MyAccount.vue
index d2e240d827..6fb52c9147 100644
--- a/core/pages/MyAccount.vue
+++ b/core/pages/MyAccount.vue
@@ -31,44 +31,22 @@ export default {
},
data () {
return {
- navigation: [
- { title: 'My profile', link: '/my-account' },
- { title: 'My shipping details', link: '/my-account/shipping-details' },
- { title: 'My newsletter', link: '/my-account/newsletter' },
- { title: 'My orders', link: '/my-account/orders' },
- { title: 'My loyalty card', link: '#' },
- { title: 'My product reviews', link: '#' }
- ]
+ navigation: [],
+ returnEditMode: false
}
},
created () {
- this.$bus.$on('myAccount-before-updateUser', (updatedData) => {
- if (updatedData) {
- this.$store.dispatch('user/update', { customer: updatedData })
- }
- })
- this.$bus.$on('myAccount-before-changePassword', (passwordData) => {
- this.$store.dispatch('user/changePassword', passwordData)
- })
- this.$bus.$on('myAccount-before-updatePreferences', (updatedData) => {
- if (updatedData) {
- if (updatedData.action === 'subscribe') {
- this.$bus.$emit('newsletter-after-subscribe', { email: updatedData.email })
- this.$store.dispatch('user/updatePreferences', updatedData.preferences)
- } else {
- this.$bus.$emit('newsletter-after-unsubscribe', { email: updatedData.email })
- this.$store.dispatch('user/updatePreferences', null)
- }
- }
- })
+ this.$bus.$on('myAccount-before-updateUser', this.onBeforeUpdateUser)
+ this.$bus.$on('myAccount-before-changePassword', this.onBeforeChangePassword)
+ this.$bus.$on('myAccount-before-updatePreferences', this.onBeforeUpdatePreferences)
},
destroyed () {
- this.$bus.$off('myAccount-before-updateUser')
- this.$bus.$off('myAccount-before-changePassword')
- this.$bus.$off('myAccount-before-updatePreferences')
+ this.$bus.$off('myAccount-before-updateUser', this.onBeforeUpdateUser)
+ this.$bus.$off('myAccount-before-changePassword', this.onBeforeChangePassword)
+ this.$bus.$off('myAccount-before-updatePreferences', this.onBeforeUpdatePreferences)
},
mounted () {
- const usersCollection = global.db.usersCollection
+ const usersCollection = global.$VS.db.usersCollection
usersCollection.getItem('current-token', (err, token) => {
if (err) {
console.error(err)
@@ -79,12 +57,36 @@ export default {
})
},
methods: {
+ onBeforeUpdatePreferences (updatedData) {
+ if (updatedData) {
+ if (updatedData.action === 'subscribe') {
+ this.$bus.$emit('newsletter-after-subscribe', { email: updatedData.email })
+ this.$store.dispatch('user/updatePreferences', updatedData.preferences)
+ } else {
+ this.$bus.$emit('newsletter-after-unsubscribe', { email: updatedData.email })
+ this.$store.dispatch('user/updatePreferences', null)
+ }
+ }
+ },
+ onBeforeChangePassword (passwordData) {
+ this.$store.dispatch('user/changePassword', passwordData)
+ },
+ onBeforeUpdateUser (updatedData) {
+ if (updatedData) {
+ try {
+ this.$store.dispatch('user/update', { customer: updatedData })
+ } catch (err) {
+ this.$bus.$emit('myAccount-before-remainInEditMode', this.$props.activeBlock)
+ console.error(err)
+ }
+ }
+ },
notify (title) {
if (title === 'My loyalty card' || title === 'My product reviews') {
this.$bus.$emit('notification', {
type: 'warning',
message: i18n.t('This feature is not implemented yet! Please take a look at https://github.com/DivanteLtd/vue-storefront/issues for our Roadmap!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
}
}
diff --git a/core/pages/PageNotFound.vue b/core/pages/PageNotFound.vue
index 8e914808fa..ac142797c2 100644
--- a/core/pages/PageNotFound.vue
+++ b/core/pages/PageNotFound.vue
@@ -22,7 +22,7 @@ export default {
asyncData ({ store, route }) { // this is for SSR purposes to prefetch data
return new Promise((resolve, reject) => {
console.log('Entering asyncData for PageNotFound ' + new Date())
- let ourBestsellersQuery = builder().query('range', 'visibility', { 'gte': 3, 'lte': 4 }/** Magento visibility in search & categories */).build()
+ let ourBestsellersQuery = builder().query('range', 'visibility', { 'gte': 2, 'lte': 4 }/** Magento visibility in search & categories */).build()
store.dispatch('category/list', {}).then((categories) => {
store.dispatch('product/list', {
query: ourBestsellersQuery,
diff --git a/core/pages/Product.vue b/core/pages/Product.vue
index f6137833b0..80a8598aa3 100644
--- a/core/pages/Product.vue
+++ b/core/pages/Product.vue
@@ -7,135 +7,13 @@
diff --git a/core/plugins/event-bus/index.js b/core/plugins/event-bus/index.js
index 4c469024b7..15ba162303 100644
--- a/core/plugins/event-bus/index.js
+++ b/core/plugins/event-bus/index.js
@@ -72,5 +72,5 @@ const EventBusPlugin = {
}
}
}
-
+if (!global.$VS) { global.$VS = { eventBus: EventBus } } else { global.$VS.eventBus = EventBus }
export { EventBus as default, EventBusPlugin }
diff --git a/core/resource/i18n/de-DE.csv b/core/resource/i18n/de-DE.csv
index 30be0d4ae9..252925022b 100644
--- a/core/resource/i18n/de-DE.csv
+++ b/core/resource/i18n/de-DE.csv
@@ -278,3 +278,23 @@
"erin_recommends_filter","Erin empfiehlt"
"Select No","Nein auswählen"
"Select Yes","Ja auswählen"
+"Order ID","ID der bestellung"
+"Date and time","Datum und Uhrzeit"
+"Author","Autor"
+"Value","Wert"
+"Type","Typ"
+"Status","Status"
+"Purchase","Kaufen"
+"View order","Anzeigereihenfolge"
+"Remake order","Reihenfolge der Nachfertigung"
+"No orders yet","Noch keine Bestellungen"
+"Order #","Bestellung #"
+"Items ordered","Bestellte Artikel"
+"Product Name","Produktbezeichnung"
+"SKU","SKU"
+"Subtotal","Zwischensumme"
+"Tax","Steuer"
+"Discount","Rabatt"
+"Order informations","bestellinformationen"
+"Shipping address","Versandadresse"
+"Billing address","Rechnungsadresse"
diff --git a/core/resource/i18n/en-US.csv b/core/resource/i18n/en-US.csv
index 78ec334b75..9a7bd2a210 100644
--- a/core/resource/i18n/en-US.csv
+++ b/core/resource/i18n/en-US.csv
@@ -297,7 +297,8 @@
"Discount","Discount"
"Order informations","Order informations"
"Shipping address","Shipping address"
-"Shipping method","Shipping method"
"Billing address","Billing address"
-
-
+"not authorized","not authorized"
+"Internal Application error while refreshing the tokens. Please clear the storage and refresh page.", "Internal Application error while refreshing the tokens. Please clear the storage and refresh page."
+"Proceed to checkout","Proceed to checkout"
+"OK","OK"
\ No newline at end of file
diff --git a/core/resource/i18n/it-IT.csv b/core/resource/i18n/it-IT.csv
new file mode 100644
index 0000000000..61d0adb402
--- /dev/null
+++ b/core/resource/i18n/it-IT.csv
@@ -0,0 +1,243 @@
+"coreMessage","Messaggio principale"
+"customMessage","Questo è il messaggio principale. Può essere sovrascritto nel tema"
+"Registering the account ...","Registro l'account ..."
+"No products synchronized for this category. Please come back while online!","Nessun prodotto in questa categoria. Verifica la connessione di rete e riprova!"
+"Shopping cart is empty. Please add some products before entering Checkout","Il tuo carrello è vuoto. Aggiungi almeno un prodotto prima di procedere al checkout"
+"Out of stock!","Non disponibile"
+" is out of the stock!"," non è disponibile!"
+"Some of the ordered products are not available!","Alcuni dei prodotti ordinati non sono disponibili!"
+"Stock check in progress, please wait while available stock quantities are checked","Verifica disponibilità in corso, attendere la verifica della quantità dei prodotti"
+"There is no Internet connection. You can still place your order. We will notify you if any of ordered products is not available because we cannot check it right now.","Non sei connesso ad internet ma puoi ugualmente procedere con l'ordine. Non è possibile verificare adesso la disponibilità dei prodotti, se qualcuno dei prodotti ordinati non sarà più disponibile te lo faremo sapere."
+"Please do correct validation errors","Correggi gli errori di validazione"
+"No such configuration for the product. Please do choose another combination of attributes.","Configurazione del prodotto inesistente. Scegli un'altra combinazione di attributi"
+"The system is not sure about the stock quantity (volatile). Product has been added to the cart for pre-reservation.","Il sistema non è sicuro della disponibilità del prodotto (volatile). Il prodotto è stato aggiunto al carrello per prenotazione"
+"This feature is not implemented yet! Please take a look at https://github.com/DivanteLtd/vue-storefront/issues for our Roadmap!","Questa funzionalità non è ancora stata implementata! Dai un'occhiata qui https://github.com/DivanteLtd/vue-storefront/issues alla nostra Roadmap!"
+"The product is out of stock and cannot be added to the cart!","Il prodotto non è più disponibile e non può essere aggiunto al carrello"
+"Product has been added to the cart!","Il prodotto è stato aggiunto al carrello!"
+"Internal validation error. Please check if all required fields are filled in. Please contact us on contributors@vuestorefront.io","Errore di validazione interno. Se tutti i campi sono stati compilati contattare contributors@vuestorefront.io"
+"Product {productName} has been added to the compare!","Il prodotto {productName} è stato aggiunto al comparatore!"
+"Product {productName} has been removed from compare!","Il prodotto {productName} è stato rimosso dal comparatore"
+"Product {productName} has been added to wishlist!","Il prodotto {productName} è stato aggiunto alla lista dei desideri!"
+"Product {productName} has been removed from wishlist!","Le produit {productName} è stato rimosso dalla lista dei desideri"
+"Account data has successfully been updated","Le tue informazioni sono state aggiornate con successo"
+"You are logged out","Ti sei disconnesso"
+"Remove from compare","Rimuovi dal comparatore"
+"Newsletter preferences have successfully been updated","Le tue preferenze sulla newsletter sono state aggiornate con successo"
+"This feature has not been implemented yet. Please follow our Roadmap for the details","Questa funzionalità non è ancora stata implementata. Consulta la nostra Roadmap per ulteriori informazioni"
+"Newsletter successfully subscribed. Thank you!","Grazie! ti sei iscritto alla newsletter con successo"
+"You have already subscribed our newsletter","Sei già iscritto alla nostra newsletter"
+"Email field is empty","Il campo email è vuoto"
+"Resetting the password ... ","Reimposto la password ... "
+"Error while sending reset password e-mail","Errore durante l'invio della mail per reimpostare la password"
+"Reset password feature does not work while offline!","Non puoi reimpostare la password quando non sei in linea!"
+"Authorization in progress ...","Autorizzazione in corso ..."
+"You are logged in!","Accesso eseguito!"
+"This feature is not implemented yet :( Newsletter is on our roadmap - issue #200!","Questa funzionalità non è ancora stata implementata :( La newsletter è sulla nostra Roadmap - issue #200!"
+"Please fix the validation errors","Correggi gli errori di validazione"
+"You have been successfully subscribed to our newsletter!","Ti sei iscritto alla newsletter con successo !"
+"Everything new","Tutte le novità"
+"Get inspired","Lasciati ispirare"
+"Size guide","Guida alle taglie"
+"Add to favorite","Aggiungi ai preferiti"
+"Add to compare","Confronta"
+"Product details","Dettagli del prodotto"
+"Filters","Filtri"
+"Product price is unknown, product cannot be added to the cart!","Il prezzo di questo prodotto è sconosciuto, non è possibile aggiungerlo al carrello!"
+"You're logged in as ","Sei connesso come "
+"My account","Il mio account"
+"My Account","Il mio account"
+"Logout","Esci"
+"Enter your email to receive instructions on how to reset your password.","Inserisci la tua mail per ricevere istruzioni su come reimpostare la password"
+"Reset password","Reimposta la password"
+"or","o"
+"return to log in","Ritorna al login"
+"Back to login","Ritorna al login"
+"We've sent password reset instructions to your email. Check your inbox and follow the link.","Abbiamo inviato le istruzioni per reimpostare la password al tuo indirizzo email. Verifica la tua casella di posta e segui il link."
+"Log in","Accedi"
+"Remember me","Ricordami"
+"Forgot the password?","Hai dimenticato la password?"
+"Log in to your account","Accedi al tuo account"
+"You must accept the terms and conditions.","Accetta le condizioni generali del servizio"
+"Register","Registrati"
+"register an account","Registra un account"
+"Register an account","Registra un account"
+"login to your account","Accedi al tuo account"
+"Filter","Filtri"
+"Color","Colore"
+"Size","Taglia"
+"Price","Prezzo"
+"color_filter","Colore"
+"size_filter","Taglia"
+"price_filter","Prezzo"
+"erin_recommends_filter","Erin Recommends"
+"Order Summary","Riepilogo dell'ordine"
+"Safety","Sicurezza"
+"Shipping","Spedizione"
+"Payment","Pagamento"
+"Returns","Reso"
+"Review order","Verifica dell'ordine"
+"Please check if all data are correct","Controlla che tutte le informazioni siano corrette"
+"I agree to","Accetto"
+"Terms and conditions","Termini e condizioni"
+"Place the order","Acquista"
+"Edit payment","Modifica il pagamento"
+"We will send you the invoice to given e-mail address","La fattura verrà inviata all'indirizzo email inserito"
+"Payment method","Metodo di pagamento"
+"Go review the order","Vai al riepilogo dell'ordine"
+"Phone number may be needed by carrier","Il numero di telefono potrebbe servire al corriere"
+"Personal Details","Informazioni personali"
+"Edit personal details","Modifica le informazioni personali"
+"Continue to shipping","Continua gli acquisti"
+"We will send you details regarding the order","Ti invieremo i dettegli dell'ordine"
+"The new account will be created with the purchase. You will receive details on e-mail.","Il nuovo account verrà creato con l'acquisto. Riceverai le informazioni tramite email"
+"Edit shipping","Modifica le opzioni di spedizione"
+"Ship to my default address","Invia all'indirizzo di default"
+"Shipping method","Metodo di spedizione"
+"Continue to payment","Continua con il pagamento"
+"Departments","dipartimenti"
+"Women fashion","Abbigliamento donna"
+"Men's fashion","Abbigliamento uomo"
+"Kidswear","Abbigliamento bimbo"
+"Orders","Ordini"
+"Track my order","Traccia il mio ordine"
+"Delivery","Spedizione"
+"Return policy","Politica dei resi"
+"Customer service","Servizio clienti"
+"Contact us","Contattaci"
+"About us","Chi siamo"
+"Store locator","Store locator"
+"United States (US)","Stati Uniti (US)"
+"Legal notice","Note legali"
+"Subscribe to the newsletter and receive a coupon for 10% off","Iscriviti alla newsletter e ricevi un codice sconto del 10%"
+"Subscribe","Iscriviti"
+"Return to shopping","Continua gli acquisti"
+"Login to your account","Accedi al tuo account"
+"You are logged in as","sei connesso come"
+"Edit","Modifica"
+"Shopping cart","Carrello"
+"Your shopping cart is empty.","Il tuo carrello è vuoto"
+"Don't hesitate and","Non esitare e "
+"browse our catalog","Sfoglia il catalogo"
+"to find something beautiful for You!","per trovare qualcosa di bello per te!"
+"Shopping summary","Riepilogo acquisti"
+"Subtotal inc. tax","Subtotale tasse incluse"
+"Total inc. tax","Totale tasse incluse"
+"Go to checkout","Vai al Checkout"
+"Remove","Elimina"
+"My newsletter","Newsletter"
+"Edit newsletter preferences","Modifica le preferenze della newsletter"
+"General agreement","Condizioni generali"
+"Preferences","Preferenze"
+"Cancel","Annulla"
+"Update my preferences","Aggiorna le preferenze"
+"My profile","Profilo"
+"Edit your profile","Modifica il profilo"
+"Update my profile","Aggiorna il profilo"
+"My shipping details","Informazioni di spedizione"
+"Edit your shipping details","Modifica le informazioni di spedizione"
+"Update my shipping details","Modifica le informazioni di spedizione"
+"Country","Paese"
+"Similar products","Prodotti simili"
+"No results were found.","Non abbiamo trovato niente"
+"Type what you are looking for...","Digita quello che stai cercando..."
+"Sale","Sconti"
+"My orders","I miei ordini"
+"My loyalty card","Carta fedeltà"
+"My product reviews","Recensioni prodotti"
+"Wishlist","Lista dei desideri"
+"Your wishlist is empty.","La lista dei desideri è vuota."
+"Add to cart","Aggiungi al carrello"
+"Select color ","Seleziona un colore "
+"See details","Dettagli"
+"We use cookies to give you the best shopping experience.","Utilizziamo cookies per offrirvi la migliore esperienza d'acquisto possibile."
+"Home Page","Home"
+"Sign up to our newsletter and receive a coupon for 10% off!","Iscriviti alla newsletter e ricevi un codice sconto del 10% !"
+"Quantity","Quantità"
+"Price ","Prezzo"
+"Select size ","Seleziona la taglia "
+"Print This Page","Stampa la pagina"
+"You have no items to compare.","Non hai niente da comparare."
+"New Luma Yoga Collection","Nuova collezione Luma Yoga"
+"We can't find the page","Non troviamo la pagina"
+"Unfortunately we can't find the page you are looking for.","Sfortunatamente non riusciamo a trovare la pagina che stai cercando."
+"If you need an assistance you can drop us a line on","Se hai bisogno di aiuto scrivici un messaggio"
+"a chat","Una chat"
+"or write to us through","o scrivici tramite"
+"a contact page","la pagina dei contatti"
+"You can also use","Puoi utilizzare anche"
+"search","cerca"
+"to find product you were looking for.","Per trovare il prodotto che cerchi."
+"See our bestsellers","Visualizza i prodotti più venduti"
+"Thank you!","Grazie!"
+"Thank you for placing an order.","Grazie di aver acquistato"
+"Your order has been sent to the server and will be immediately processed","Il tuo ordine è stato inviato e verrà processato al più presto"
+"Your order will be sent to the server as soon as you connect to the Internet and then confirmed regarding the stock quantities of selected items","Il tuo ordine verrà inviato appena sarai connesso ad internet, la disponibilità degli articoli ordinati deve essere confermata."
+"You are offline, some of the functionalities are limited","Non sei connesso ad internet, alcune funzionalità potranno essere limitate"
+"Search","Cerca"
+"Help","Aiuto"
+"Go to Facebook","Vai su Facebook"
+"Go to Instagram","Vai su Instagram"
+"Go to Pinterest","Vai su Pinterest"
+"Go to Youtube","Vai su Youtube"
+"Subtotal incl. tax","Subtotale tasse incluse"
+"Cash on delivery","Contrassegno"
+"DPD Courier","Corriere DPD"
+"Grand total","Totale"
+"I accept ","Accetto "
+"terms and conditions","termini e condizioni"
+"Use my billing data","Utilizza l'indirizzo di fatturazione"
+"I want to generate an invoice for the company","Genera la fattura"
+"Field is required","Campo obbligatorio"
+"Field is required.","Campi obbligatori"
+"Name must have at least 3 letters.","Il nome deve avere almeno 3 lettere"
+"Zip-code must have at least 3 letters.","Il codice postale deve avere almeno 3 lettere"
+"I want to create an account'","Voglio creare un account'"
+"Copy address data from shipping","Utilizza l'indirizzo di spedizione"
+"Tax identification number must have at least 3 letters.","Il codice fiscale deve avere almeno 3 lettere"
+"Please provide valid e-mail address.","Inserisci un indirizzo email valido"
+"Use my company's address details","Usa l'indirizzo della società"
+"Passwords must be identical","Le password devono essere uguali"
+"Tax ID must have at least 3 letters","La partita iva deve avere almeno 3 lettere"
+"Subscribe to magazine","Abbonati alla rivista"
+"E-mail address","Indirizzo Email"
+"Save product","Salva il prodotto"
+"Find the right sporting clothes for all situations","Trova il vestito sportivo giusto per ogni situazione"
+"E-mail address *","Indirizzo email *"
+"You did not sign in correctly or your account is temporarily disabled.","I tuoi dati non sono corretti o il tuo account è temporaneamente disabilitato"
+"First name","Nome"
+"Last name","Cognome"
+"Email address","Email"
+"Change my password","Modifica password"
+"I have a company and want to receive an invoice for every order","Ho una società e desidero ricevere una fattura per ogni ordine"
+"Company name *","Ragione sociale *"
+"Street name *","Via *"
+"House/Apartment number *","Numero/interno *"
+"City *","Città *"
+"Zip-code *","CAP *"
+"Tax ID *","Partita iva *"
+"State / Province","Provincia"
+"City","Città"
+"Phone Number","Telefono"
+"House/Apartment number","Numero/interno"
+"Street name","Via"
+"Zip-code","CAP"
+"Current password *","Password attuale *"
+"New password *","Nuova password *"
+"Repeat new password *","Ripeti la nuova password *"
+"Passwords must be identical.","Le due password devono essere uguali."
+"First name *","Nome *"
+"Last name *","Cognome *"
+"Repeat password *","Ripeti la password *"
+"Email address *","Email *"
+"I want to create an account","Desidero creare un account"
+"Tax identification number *","Codice fiscale/partita iva *"
+"You're logged out","Ti sei disconnesso"
+"No products found!","Nessun prodotto trovato!"
+"Compare Products","Confronta prodotti"
+"404 Page Not Found","404 Pagina non trovata"
+"Error with response - bad content-type!","Errore nella risposta - content-type non valido !"
+"Unhandled error, wrong response format!","Errore inatteso, Formato della risposta non valido"
+"Cash On Delivery","Contrassegno"
+"Fixed","Fisso"
+"The real payment methods will be implemented soon. Please kindly take a look at https://github.com/DivanteLtd/vue-storefront/issues for our Roadmap.","I metodi di pagamento reali verranno implementati al più presto. Consulta https://github.com/DivanteLtd/vue-storefront/issues per la Roadmap."
+"View all","Vedi tutto"
diff --git a/core/resource/i18n/jp-JP.csv b/core/resource/i18n/jp-JP.csv
new file mode 100644
index 0000000000..ead45ac1c8
--- /dev/null
+++ b/core/resource/i18n/jp-JP.csv
@@ -0,0 +1,301 @@
+"coreMessage","これはコアメッセージです"
+"customMessage","これはコアメッセージです。テーマから上書き可能です。"
+"Registering the account ...","アカウントを登録中 ..."
+"No products synchronized for this category. Please come back while online!","このカテゴリーには商品がありません。しばらくしてからまた来てください!"
+"Shopping cart is empty. Please add some products before entering Checkout","ショッピングカートは空です。チェックアウトに進む前に商品を追加してください。"
+"Out of stock!","在庫がありません!"
+" is out of the stock!"," は在庫がありません!"
+"Some of the ordered products are not available!","注文された商品は現在取り扱いがありません!"
+"Stock check in progress, please wait while available stock quantities are checked","在庫の確認をしています、在庫の確認が終わるまで少々お待ちください。"
+"There is no Internet connection. You can still place your order. We will notify you if any of ordered products is not available because we cannot check it right now.","ネットへの接続が切れていますが注文を行うことがはできます。現在商品の在庫についてチェックすることはできませんが、確認でき次第お伝えします。"
+"Please do correct validation errors","間違った入力を修正してください"
+"No such configuration for the product. Please do choose another combination of attributes.","商品のこの組み合わせはありません。別の組み合わせを選んでください。"
+"The system is not sure about the stock quantity (volatile). Product has been added to the cart for pre-reservation.","現在在庫数を確認することはできません。カートに入った商品は予約商品としてこの後在庫チェックが行われます。"
+"This feature is not implemented yet! Please take a look at https://github.com/DivanteLtd/vue-storefront/issues for our Roadmap!","この機能はまだ実装されていません! https://github.com/DivanteLtd/vue-storefront/issues から今後のロードマップを参照してください。"
+"The product is out of stock and cannot be added to the cart!","この商品の在庫はないのでカートに追加することができません!"
+"Product has been added to the cart!","商品がカートに追加されました!"
+"Internal validation error. Please check if all required fields are filled in. Please contact us on contributors@vuestorefront.io","内部の検証エラー。必須項目が全て入力されているのを確認してください。contributors@vuestorefront.io まで問い合わせしてください。"
+"Product {productName} has been added to the compare!","商品 {productName} が比較に追加されました!"
+"Product {productName} has been removed from compare!","商品 {productName} が比較から削除されました!"
+"Product {productName} has been added to wishlist!","商品 {productName} が欲しいものリストに追加されました!"
+"Product {productName} has been removed from wishlit!","商品 {productName} が欲しいモノリストから削除されました!"
+"Account data has successfully been updated","アカウント情報が更新されました"
+"You are logged out","ログアウトしました"
+"Remove from compare","比較から削除する"
+"Newsletter preferences have successfully been updated","ニュースレターの設定が更新されました"
+"This feature has not been implemented yet. Please follow our Roadmap for the details","この機能はまだ実装されていません。こちらの ロードマップ から詳細を確認してください。"
+"Newsletter successfully subscribed. Thank you!","ニュースレターに登録されました。ありがとうございます!"
+"You have already subscribed our newsletter","すでにニュースレターに登録しています"
+"Email field is empty","メールアドレスが空です"
+"Resetting the password ... ","パスワードをリセットしていあmす ... "
+"Error while sending reset password e-mail","リセットパスワードを送る際にエラー"
+"Reset password feature does not work while offline!","リセットパスワードの機能はオフラインの間は使えません!"
+"Authorization in progress ...","認証を実行中 ..."
+"You are logged in!","ログインされています!"
+"This feature is not implemented yet :( Newsletter is on our roadmap - issue #200!","この機能は実装されていません :( ニュースレターはロードマップにあります。issue #200!"
+"Please fix the validation errors","無効な入力のエラーを修正してください"
+"You have been successfully subscribed to our newsletter!","ニュースレターに購読しました!"
+"Everything new","全ての新しいもの"
+"Get inspired","インスピレーションをもらいましょう"
+"Size guide","サイズガイド"
+"Add to favorite","お気に入りへの追加"
+"Add to compare","比較への追加"
+"Product details","商品の詳細"
+"Filters","フィルター"
+"Product price is unknown, product cannot be added to the cart!","商品価格は不明です。商品をカートに追加すすることはできません!"
+"You're logged in as ","ログイン中 "
+"My account","自分のアカウント"
+"My Account","自分のアカウント"
+"Logout","ログアウト"
+"Enter your email to receive instructions on how to reset your password.","メールアドレスを入力して、パスワードリセットの手順を受信してください。"
+"Reset password","リセットパスワード"
+"or","か"
+"return to log in","ログインに戻る"
+"Back to login","ログインに戻る"
+"We've sent password reset instructions to your email. Check your inbox and follow the link.","パスワードリセットのメールを送りました。メールの中にあるリンクをクリックしてください。"
+"Log in","ログイン"
+"Remember me","ログインを覚える"
+"Forgot the password?","パスワードを忘れましたか?"
+"Log in to your account","アカウントにログインする"
+"You must accept the terms and conditions.","利用規格に同意してください"
+"Register","登録"
+"register an account","アカウントの登録"
+"Register an account","アカウントの登録"
+"login to your account","アカウントへのログイン"
+"Filter","フィルター"
+"Color","色"
+"Size","サイズ"
+"Price","価格"
+"Order Summary","注文の詳細"
+"Safety","安全性"
+"Shipping","送料"
+"Payment","支払い"
+"Returns","返品"
+"Review order","注文の確認"
+"Please check if all data are correct","全てのデータが正しいかどうか確認してください"
+"I agree to","同意します"
+"Terms and conditions","利用規約"
+"Place the order","注文を行う"
+"Edit payment","支払いの編集"
+"We will send you the invoice to given e-mail address","指定されたメールアドレスに請求書を送ります"
+"Payment method","決済方法"
+"Go review the order","注文の確認"
+"Phone number may be needed by carrier","発送に電話番号が必要な事があります"
+"Personal Details","個人の詳細"
+"Edit personal details","個人の詳細の編集"
+"Continue to shipping","買い物を続ける"
+"We will send you details regarding the order","注文に関する詳細を送ります"
+"The new account will be created with the purchase. You will receive details on e-mail.","この買い物の後にアカウントが作成されます。詳細の入ったメールが送られます"
+"Qty","数量"
+"Edit shipping","発送方法の編集"
+"Ship to my default address","デフォルトの住所に発送する"
+"Shipping method","発送方法"
+"Continue to payment","支払いに進む"
+"Departments","部署"
+"Women fashion","女性のファッション"
+"Men's fashion","男性のファッション"
+"Kidswear","子供服"
+"Home","ホーム"
+"Orders","注文"
+"Track my order","注文のトラッキング"
+"Delivery","発送"
+"Return policy","返品ポリシー"
+"Customer service","カスタマーサービス"
+"Contact us","Contact us"
+"About us","About us"
+"Store locator","Store locator"
+"United States (US)","米国 (US)"
+"Legal notice","法律のお知らせ"
+"Privacy policy","プライバシー・ポリシー"
+"Subscribe to the newsletter and receive a coupon for 10% off","ニュースレターに登録して10%オフのクーポンをもらいましょう"
+"Subscribe","登録"
+"Return to shopping","買い物に戻る"
+"Login to your account","アカウントにログイン"
+"You are logged in as","ログイン中 "
+"Edit","編集"
+"Shopping cart","ショッピングカート"
+"Your shopping cart is empty.","ショッピングカートは空です"
+"Don't hesitate and","躊躇しないで"
+"browse our catalog","カタログを見る"
+"to find something beautiful for You!","あなたにあった素敵なものを見つけましょう!"
+"Shopping summary","買い物の詳細"
+"Subtotal inc. tax","税込み小計"
+"Total inc. tax","税込み総額"
+"Go to checkout","チェックアウトに進む"
+"Remove","削除する"
+"My newsletter","自分のニュースレター"
+"Edit newsletter preferences","ニュースレターの設定を変更する"
+"General agreement","ユーザー同意"
+"Preferences","設定"
+"Cancel","キャンセル"
+"Update my preferences","設定を更新する"
+"My profile","自分のプロフィール"
+"Edit your profile","プロフールの編集"
+"Update my profile","プロフィールを更新"
+"My shipping details","買い物の詳細"
+"Edit your shipping details","買い物の詳細を編集"
+"Update my shipping details","買い物の詳細の更新"
+"Country","国"
+"Erin Recommends","エリンのおすすめ"
+"Similar products","似た商品"
+"No results were found.","なにもありません"
+"Type what you are looking for...","探しているものを入力してください..."
+"Magazine","マガジン"
+"Sale","セール"
+"My orders","自分の注文"
+"My loyalty card","自分のポイントカード"
+"My product reviews","自分の商品レビュー"
+"Wishlist","欲しいモノリスト"
+"Your wishlist is empty.","欲しいモノリストは空です"
+"Add to cart","カートに追加"
+"Select color ","色の選択 "
+"See details","詳細を見る"
+"We use cookies to give you the best shopping experience.","買い物をできるだけ良いものにするためクッキーを使っています"
+"Home Page","ホームページ"
+"Newsletter","ニュースレター"
+"Sign up to our newsletter and receive a coupon for 10% off!","ニュースレターに登録して、10%割引のクーポンをうけとりましょう!"
+"Quantity","数量"
+"Price ","価格 "
+"Select size ","サイズの選択 "
+"Checkout","チェックアウト"
+"Print This Page","このページを印刷"
+"You have no items to compare.","比較するアイテムはありません"
+"New Luma Yoga Collection","Luma Yogaの新しいコレクション"
+"We can't find the page","ページがありません"
+"Unfortunately we can't find the page you are looking for.","すみません、お探しのページはありません。"
+"If you need an assistance you can drop us a line on","お問合わせはこちらからお願いします"
+"a chat","チャット"
+"or write to us through","かこちらから連絡ください"
+"a contact page","コンタクトページ"
+"You can also use","こちらを使うこともできます"
+"search","検索"
+"to find product you were looking for.","から欲しい商品を見つける"
+"See our bestsellers","ベストセラーを見る"
+"Thank you!","ありがとうございます!"
+"Thank you for placing an order.","注文していただきありがとうございます"
+"Your order has been sent to the server and will be immediately processed","注文はサーバーに送られ、処理されます"
+"Your order will be sent to the server as soon as you connect to the Internet and then confirmed regarding the stock quantities of selected items","注文はネットへの接続が戻り、在庫が確認され次第サーバーに送られます。"
+"You are offline, some of the functionalities are limited","オフラインです、使えない機能があります"
+"Search","検索"
+"Help","ヘルプ"
+"Go to Facebook","Facebookへ行く"
+"Go to Instagram","Instagramへ行く"
+"Go to Pinterest","Pinterestへ行く"
+"Go to Youtube","Youtubeへ行く"
+"Subtotal incl. tax","税込みの小計"
+"Cash on delivery","代引き"
+"DPD Courier","DPDキャリア"
+"Grand total","総額"
+"I accept ","同意する "
+"terms and conditions","利用規約"
+"Use my billing data","請求書情報を使う"
+"I want to generate an invoice for the company","この会社への請求書を発行する"
+"Field is required","必須の項目です"
+"Field is required.","必須の項目です."
+"Name must have at least 3 letters.","名前は最低3文字必要です"
+"Zip-code must have at least 3 letters.","郵便番号は最低3文字必要です"
+"I want to create an account'","アカウントを作成する'"
+"Copy address data from shipping","発送先の住所をコピーする"
+"Tax identification number must have at least 3 letters.","税金IDは最低3文字必要です"
+"Please provide valid e-mail address.","正しいメールアドレスを入力してください"
+"Use my company's address details","自分の会社の住所を使う"
+"Passwords must be identical","パスワードは同じである必要があります"
+"Tax ID must have at least 3 letters","税金IDは最低3文字必要です"
+"Subscribe to magazine","マガジンに登録する"
+"E-mail address","メールアドレス"
+"Save product","商品の保存"
+"Find the right sporting clothes for all situations","いろんな場面での最適なスポーツウェアを見つける"
+"E-mail address *","メールアドレス *"
+"Password *","パスワード *"
+"You did not sign in correctly or your account is temporarily disabled.","ログイン情報が間違っているか、アカウントが現在使えなくなっています"
+"First name","名"
+"Last name","姓"
+"Email address","メールアドレス"
+"Change my password","パスワードの変更"
+"I have a company and want to receive an invoice for every order","法人からなので、全ての注文に請求書を発行してください"
+"Company name *","会社名 *"
+"Street name *","住所 *"
+"House/Apartment number *","部屋番号、建物名 *"
+"City *","市町村 *"
+"Zip-code *","郵便番号 *"
+"Tax ID *","税金ID *"
+"State / Province","都道府県"
+"City","市町村"
+"Phone Number","電話番号"
+"House/Apartment number","部屋番号、建物名"
+"Street name","住所"
+"Zip-code","郵便番号"
+"Current password *","現在のパスワード *"
+"New password *","新しいパスワード *"
+"Repeat new password *","もう一度新しいパスワード *"
+"Passwords must be identical.","パスワードは同じである必要があります"
+"First name *","名 *"
+"Last name *","姓 *"
+"Repeat password *","パスワードもう一度 *"
+"Email address *","メールアドレス *"
+"I want to create an account","アカウントを作成"
+"Tax identification number *","税金ID番号 *"
+"You're logged out","ログアウトされました"
+"No products found!","商品がありません!"
+"Erin recommends","エリンのおすすめ"
+"Compare Products","商品の比較"
+"404 Page Not Found","404ページが見つかりません"
+"Error with response - bad content-type!","エラー:無効なcontent-type!"
+"Unhandled error, wrong response format!","処理不能エラー、レスポンスのフォーマットが間違っています!"
+"Cash On Delivery","代引き"
+"Fixed","確認済"
+"The real payment methods will be implemented soon. Please kindly take a look at https://github.com/DivanteLtd/vue-storefront/issues for our Roadmap.","実際に使える決済方法は間もなく実装されます。こちらをさんしょうしてください https://github.com/DivanteLtd/vue-storefront/issues for our Roadmap."
+"Placing Order","注文を入れる"
+"Open my account","自分のアカウントを開く"
+"Open microcart","小さなカートを開く"
+"Open wishlist","欲しいモノリストを開く"
+"Open search panel","検索パネルを開く"
+"Open menu","メニューを開く"
+"Show subcategories","サブカテゴリーを開く"
+"Back","戻る"
+"Close","閉じる"
+"View all","全てを見る"
+"Create a new account","アカウントを作る"
+"I accept terms and conditions","利用規約に同意する"
+"I want to receive a newsletter, and agree to its terms","規約に同意して、ニュースレターを受け取ります"
+"Men","男性"
+"Women","女性"
+"Kids","子供"
+"Use my company's address details","自分の会社の住所の詳細を使う"
+"Tax ID must have at least 3 letters","税金IDは3文字以上である必要があります"
+"No such entity with cartId = null","cartId = nullは存在しません"
+"Tax ID must have at least 3 letters.","税金IDは3文字以上である必要があります"
+"Country *","国 *"
+"The password doesn't match this account.","無効なパスワードです"
+"Toggle password visibility","パスワードの見え方の切り替え"
+"You've entered an incorrect coupon code. Please try again.","クーポンコードが無効です。もう一度試してください。"
+"Add a discount code","ディスカウントコードを追加する"
+"Discount code","ディスカウントコード"
+"Add discount code","申し込み"
+"color_filter","色"
+"size_filter","サイズ"
+"price_filter","価格"
+"erin_recommends_filter","エリンのおすすめ"
+"Select No","番号を選ぶ"
+"Select Yes","Yesを選ぶ"
+"Order ID","注文ID"
+"Date and time","日時"
+"Author","書いた人"
+"Value","値"
+"Type","タイプ"
+"Status","ステータス"
+"Purchase","購入"
+"View order","注文をみる"
+"Remake order","注文を再度行う"
+"No orders yet","また注文されていません"
+"Order #","注文番号"
+"Items ordered","注文されました"
+"Product Name","商品名"
+"SKU","SKU"
+"Subtotal","小計"
+"Tax","税金"
+"Discount","ディスカウント"
+"Order informations","注文の情報"
+"Shipping address","発送住所"
+"Shipping method","発送方法"
+"Billing address","請求先住所"
diff --git a/core/resource/i18n/ru-RU.csv b/core/resource/i18n/ru-RU.csv
new file mode 100644
index 0000000000..e67b8ffd1e
--- /dev/null
+++ b/core/resource/i18n/ru-RU.csv
@@ -0,0 +1,300 @@
+"coreMessage","Это основное сообщение"
+"customMessage","Это основное сообщение, которое может быть изменено в теме"
+"Registering the account ...","Создается учетная запись ..."
+"No products synchronized for this category. Please come back while online!","По данной категории товары не синхронизированы. Пожалуйста вернитесь когда будете онлайн!"
+"Shopping cart is empty. Please add some products before entering Checkout","Корзина пустая. Пожалуйста добавьте товары перед оформлением заказа"
+"Out of stock!","Нет в наличии!"
+" is out of the stock!"," нет в наличии!"
+"Some of the ordered products are not available!","Некоторые из заказанных товаров не доступны!"
+"Stock check in progress, please wait while available stock quantities are checked","Производится проверка товаров на наличие, пожалуйста дождитесь завершения процесса проверки доступного количества"
+"There is no Internet connection. You can still place your order. We will notify you if any of ordered products is not available because we cannot check it right now.","Отсутствует соединение к интернету. Однако вы можете оформить заказ. Мы уведомим Вас об отсутствии какого-либо из заказанных товаров позднее, так как не можем проверить это в данный момент."
+"Please do correct validation errors","Пожалуйста исправьте валидационные ошибки"
+"No such configuration for the product. Please do choose another combination of attributes.","У товара отсутствует данная конфигурация. Пожалуйста выберите другие значения атрибутов."
+"The system is not sure about the stock quantity (volatile). Product has been added to the cart for pre-reservation.","Система не может удостовериться в наличии необходимого количества (изменчиво). Товар добавлен в корзину для предварительного бронирования."
+"This feature is not implemented yet! Please take a look at https://github.com/DivanteLtd/vue-storefront/issues for our Roadmap!","Данная возможность пока не реализована! Пожалуйста ознакомьтесь с нашей дорожной картой тут: https://github.com/DivanteLtd/vue-storefront/issues"
+"The product is out of stock and cannot be added to the cart!","Товара нет в наличии и его нельзя добавить в корзину"
+"Product has been added to the cart!","Товар добавлен в корзину!"
+"Internal validation error. Please check if all required fields are filled in. Please contact us on contributors@vuestorefront.io","Внутренняя валидационная ошибка. Пожалуйста проверьте заполненность всех обязательных полей. Пожалуйста свяжитесь с нами по contributors@vuestorefront.io"
+"Product {productName} has been added to the compare!","Товар {productName} добавлен к странице сравнения!"
+"Product {productName} has been removed from compare!","Товар {productName} удален из страницы сравнения!"
+"Product {productName} has been added to wishlist!","Товар {productName} добавлен к списку пожеланий!"
+"Product {productName} has been removed from wishlit!","Товар {productName} удален из списка пожеланий!"
+"Account data has successfully been updated","Данные учетной записи успешно обновлены"
+"You are logged out","Вы вышли из учетной записи"
+"Remove from compare","Удалить из страницы сравнения"
+"Newsletter preferences have successfully been updated","Предпочтения по новостям успешно обновлены"
+"This feature has not been implemented yet. Please follow our Roadmap for the details","Данная возможность пока не реализована. Подробности Вы можете проследить на нашей дорожной карте "
+"Newsletter successfully subscribed. Thank you!","Подписка к новостям успешно завершена. Спасибо!"
+"You have already subscribed our newsletter","Вы уже подписаны к нашим новостям"
+"Email field is empty","Поле 'Электронный адрес' не заполнено"
+"Resetting the password ... ","Пароль переустанавливается ... "
+"Error while sending reset password e-mail","Произошла ошибка при отправке письма для переустановки пароля"
+"Reset password feature does not work while offline!","Возможность переустановки пароля не работает при отсутствующем соединении к интернету!"
+"Authorization in progress ...","Производится авторизация ..."
+"You are logged in!","Вы авторизовались!"
+"This feature is not implemented yet :( Newsletter is on our roadmap - issue #200!","Данная возможность пока не реализована :( Новости есть в нашей дорожной карте - задача #200!"
+"Please fix the validation errors","Пожалуйста исправьте валидационные ошибки"
+"You have been successfully subscribed to our newsletter!","Вы успешно подписались к нашим новостям!"
+"Everything new","Новинки"
+"Get inspired","Воодушевись"
+"Size guide", "Помощник по размерам"
+"Add to favorite","Добавить в избранное"
+"Add to compare","Добавить для сравнения"
+"Product details","Детали товара"
+"Filters","Фильтры"
+"Product price is unknown, product cannot be added to the cart!","Цена товара неизвестна, товар нельзя добавить в корзину!"
+"You're logged in as ","Вы авторизовались как "
+"My account","Личный кабинет"
+"My Account","Личный кабинет"
+"Logout","Выйти"
+"Enter your email to receive instructions on how to reset your password.","Введите свой электронный адрес для получения инструкции как переустановить свой пароль."
+"Reset password","Переустановить пароль"
+"or","или"
+"return to log in","вернуться для авторизации"
+"Back to login","Назад на авторизацию"
+"We've sent password reset instructions to your email. Check your inbox and follow the link.","Мы выслали на Ваш электронный адрес инструкцию по переустановке пароля. Проверьте почту и следуйте указанной там ссылке."
+"Log in","Войти"
+"Remember me","Запомнить меня"
+"Forgot the password?","Забыли пароль?"
+"Log in to your account","Войти под своей учетной записью"
+"You must accept the terms and conditions.","Вам необходимо принять условия и положения."
+"Register","Регистрация"
+"register an account","создать учетную запись"
+"Register an account","Создать учетную запись"
+"login to your account","войти под своей учетной записью"
+"Filter","Фильтр"
+"Color","Цвет"
+"Size","Размер"
+"Price","Цена"
+"Order Summary","Итог заказа"
+"Safety","Безопасность"
+"Shipping","Доставка"
+"Payment","Платеж"
+"Returns","Возвраты"
+"Review order","Обзор заказа"
+"Please check if all data are correct","Пожалуйста проверьте корректность всех данных"
+"I agree to","Я согласен с"
+"Terms and conditions","Условия и положения"
+"Place the order","Оформить заказ"
+"Edit payment","Изменить платеж"
+"We will send you the invoice to given e-mail address","Мы вышлем Вам счет на указанный электронный адрес"
+"Payment method","Способ оплаты"
+"Go review the order","Перейдите к обзору заказа"
+"Phone number may be needed by carrier","Номер телефона может понадобиться курьеру"
+"Personal Details","Личная информация"
+"Edit personal details","Изменить личную информацию"
+"Continue to shipping","Перейти к доставке"
+"We will send you details regarding the order","Мы вышлем Вам детали заказа"
+"The new account will be created with the purchase. You will receive details on e-mail.","Новая учетная запись будет создана вместе с заказом. Детали будут высланы Вам на электронный адрес."
+"Qty","К-во"
+"Edit shipping","Изменить доставку"
+"Ship to my default address","Отправить на мой адрес по умолчанию"
+"Shipping method","Способ доставки"
+"Continue to payment","Перейти к платежу"
+"Departments","Отделы"
+"Women fashion","Женская одежда"
+"Men's fashion","Мужская одежда"
+"Kidswear","Детская одежда"
+"Home","Главная"
+"Orders","Заказы"
+"Track my order","Отследить заказ"
+"Delivery","Доставка"
+"Return policy","Политика возврата"
+"Customer service","Служба поддержки"
+"Contact us","Контакты"
+"About us","О нас"
+"Store locator","Расположение магазинов"
+"United States (US)","Соединенные Штаты Америки (США)"
+"Legal notice","Официальное уведомление"
+"Privacy policy","Политика конфиденциальности"
+"Subscribe to the newsletter and receive a coupon for 10% off","Подпишитесь к новостям и получите купон на 10% скидку"
+"Subscribe","Подписка"
+"Return to shopping","Вернуться в магазин"
+"Login to your account","Войти под своей учетной записью"
+"You are logged in as","Вы авторизованы как"
+"Edit","Изменить"
+"Shopping cart","Корзина"
+"Your shopping cart is empty.","Ваша корзина пустая."
+"Don't hesitate and","Не раздумывайте и"
+"browse our catalog","пролистайте наш каталог"
+"to find something beautiful for You!","чтобы найти что-нибудь красивое для Вас!"
+"Shopping summary","Резюме покупок"
+"Subtotal inc. tax","Подитог вкл. налог"
+"Total inc. tax","Итог вкл. налог"
+"Go to checkout","Перейти к оформлению заказа"
+"Remove","Удалить"
+"My newsletter","Мои новости"
+"Edit newsletter preferences","Изменить новостные предпочтения"
+"General agreement","Генеральное соглашение"
+"Preferences","Предпочтения"
+"Cancel","Отмена"
+"Update my preferences","Обновить мои предпочтения"
+"My profile","Мой личный кабинет"
+"Edit your profile","Изменить личный кабинет"
+"Update my profile","Обновить личный кабинет"
+"My shipping details","Мои детали доставки"
+"Edit your shipping details","Изменить детали доставки"
+"Update my shipping details","Обновить детали доставки"
+"Country","Страна"
+"Erin Recommends","Erin рекомендует"
+"Similar products","Похожие товары"
+"No results were found.","Ничего не найдено."
+"Type what you are looking for...","Введите то что Вы ищите..."
+"Magazine","Журнал"
+"Sale","Распродажа"
+"My orders","Мои заказы"
+"My loyalty card","Моя дисконтная карта"
+"My product reviews","Мои обзоры товаров"
+"Wishlist","Список пожеланий"
+"Your wishlist is empty.","Ваш список пожеланий пуст."
+"Add to cart","Добавить в корзину"
+"Select color ","Выберите цвет "
+"See details","Посмотреть детали"
+"We use cookies to give you the best shopping experience.","Для предоставления Вам лучшего сервиса мы используем cookies."
+"Home Page","Главная страница"
+"Newsletter","Новости"
+"Sign up to our newsletter and receive a coupon for 10% off!","Подпишитесь к нашим новостям и получите купон на 10% скидку!"
+"Quantity","Количество"
+"Price ","Цена "
+"Select size ","Выберите размер "
+"Checkout","Оформление заказа"
+"Print This Page","Распечатать текущую страницу"
+"You have no items to compare.","У Вас нет товаров для сравнения."
+"New Luma Yoga Collection","Новая коллекция Luma Yoga"
+"We can't find the page","Мы не смогли найти страницу"
+"Unfortunately we can't find the page you are looking for.","К сожалению, мы не смогли найти запрашиваемую Вами страницу."
+"If you need an assistance you can drop us a line on","Если Вам нужна помощь, Вы можете написать нам в"
+"a chat","чат"
+"or write to us through","или написать нам через"
+"a contact page","страницу контактов"
+"You can also use","Также Вы можете воспользоваться"
+"search","поиском"
+"to find product you were looking for.","чтобы найти искомый Вами товар."
+"See our bestsellers","Посмотрите наши бестселлеры"
+"Thank you!","Спасибо!"
+"Thank you for placing an order.","Благодарим Вас за оформление заказа."
+"Your order has been sent to the server and will be immediately processed","Ваш заказ отправлен на сервер и будет немедленно обработан"
+"Your order will be sent to the server as soon as you connect to the Internet and then confirmed regarding the stock quantities of selected items","Ваш заказ будет отправлен на сервер как только появится соединение с интернетом, после чего Вы получите подтверждение наличия выбранных товаров"
+"You are offline, some of the functionalities are limited","Отсутствует соединение с интернетом, некоторые возможности будут ограничены"
+"Search","Поиск"
+"Help","Помощь"
+"Go to Facebook","Перейти в Facebook"
+"Go to Instagram","Перейти в Instagram"
+"Go to Pinterest","Перейти в Pinterest"
+"Go to Youtube","Перейти в Youtube"
+"Subtotal incl. tax","Подитог вкл. налог"
+"Cash on delivery","Оплата при доставке"
+"DPD Courier","Курьер DPD"
+"Grand total","Общий итог"
+"I accept ","Я принимаю "
+"terms and conditions","условия и положения"
+"Use my billing data","Использовать мои платежные данные"
+"I want to generate an invoice for the company","Я хочу сгенерировать счет для компании"
+"Field is required","Обязательное поле"
+"Field is required.","Обязательное поле."
+"Name must have at least 3 letters.","Имя должно состоять из минимум 3 букв."
+"Zip-code must have at least 3 letters.","Почтовый индекс должен состоять из минимум 3 символов."
+"I want to create an account'","Я хочу создать учетную запись'"
+"Copy address data from shipping","Скопировать адресные данные из доставки"
+"Tax identification number must have at least 3 letters.","Идентификационный номер налогоплательщика должен состоять из минимум 3 символов."
+"Please provide valid e-mail address.","Пожалуйста укажите валидный электронный адрес."
+"Use my company's address details","Использовать адресные данные моей компании"
+"Passwords must be identical","Пароли должны быть идентичными"
+"Tax ID must have at least 3 letters","ИНН должен состоять из минимум 3 символов"
+"Subscribe to magazine","Подписаться на журнал"
+"E-mail address","Электронный адрес"
+"Save product","Сохранить товар"
+"Find the right sporting clothes for all situations","Найти правильную спортивную одежду для всех случаев"
+"E-mail address *","Электронный адрес *"
+"Password *","Пароль *"
+"You did not sign in correctly or your account is temporarily disabled.","Вы неверно авторизовались либо Ваша учетная запись временно отключена."
+"First name","Имя"
+"Last name","Фамилия"
+"Email address","Электронный адрес"
+"Change my password","Изменить мой пароль"
+"I have a company and want to receive an invoice for every order","У меня есть компания и я хотел бы получать счет по каждому заказу"
+"Company name *","Название компании *"
+"Street name *","Название улицы *"
+"House/Apartment number *","Дом/Номер квартиры *"
+"City *","Город *"
+"Zip-code *","Почтовый индекс *"
+"Tax ID *","ИНН *"
+"State / Province","Область / Район"
+"City","Город"
+"Phone Number","Номер телефона"
+"House/Apartment number","Дом/Номер квартиры"
+"Street name","Название улицы"
+"Zip-code","Почтовый индекс"
+"Current password *","Текущий пароль *"
+"New password *","Новый пароль *"
+"Repeat new password *","Повторите новый пароль *"
+"Passwords must be identical.","Пароли должны быть идентичными."
+"First name *","Имя *"
+"Last name *","Фамилия *"
+"Repeat password *","Повторите пароль *"
+"Email address *","Электронный адрес *"
+"I want to create an account","Я хочу создать учетную запись"
+"Tax identification number *","Идентификационный номер налогоплательщика *"
+"You're logged out","Вы вышли из учетной записи"
+"No products found!","Товары не найдены!"
+"Erin recommends","Erin рекомендует"
+"Compare Products","Сравнить товары"
+"404 Page Not Found","404 Страница не найдена"
+"Error with response - bad content-type!","Ошибка в ответе - плохой content-type!"
+"Unhandled error, wrong response format!","Необработанная ошибка, неверный формат ответа!"
+"Cash On Delivery","Оплата при доставке"
+"Fixed","Фиксированный"
+"The real payment methods will be implemented soon. Please kindly take a look at https://github.com/DivanteLtd/vue-storefront/issues for our Roadmap.","Настоящие способы оплаты будут скоро реализованы. Пожалуйста взгляните на нашу дорожную карту тут: https://github.com/DivanteLtd/vue-storefront/issues"
+"Placing Order","Заказ обрабатывается"
+"Open my account","Открыть личный кабинет"
+"Open microcart","Открыть корзину"
+"Open wishlist","Открыть список пожеланий"
+"Open search panel","Открыть панель поиска"
+"Open menu","Открыть меню"
+"Show subcategories","Показать подкатегории"
+"Back","Назад"
+"Close","Закрыть"
+"View all","Посмотреть все"
+"Create a new account","Создать новую учетную запись"
+"I accept terms and conditions","Я принимаю условия и положения"
+"I want to receive a newsletter, and agree to its terms","Я хочу получать новости, и принимаю условия и положения"
+"Men","Мужчины"
+"Women","Женщины"
+"Kids","Дети"
+"Use my company's address details","Использовать адресные данные моей компании"
+"Tax ID must have at least 3 letters","ИНН должен состоять из минимум 3 символов"
+"No such entity with cartId = null","Не существует сущности с cartId = null"
+"Tax ID must have at least 3 letters.","ИНН должен состоять из минимум 3 символов."
+"Country *","Страна *"
+"The password doesn't match this account.","Пароль не соответствует данной учетной записи."
+"Toggle password visibility","Переключить видимость пароля"
+"You've entered an incorrect coupon code. Please try again.","Вы ввели неверный код купона. Пожалуйста попробуйте еще раз."
+"Add a discount code","Ввести скидочный код"
+"Discount code","Скидочный код"
+"Add discount code","Применить"
+"color_filter","Цвет"
+"size_filter","Размер"
+"price_filter","Цена"
+"erin_recommends_filter","Erin рекомендует"
+"Select No","Выберите Нет"
+"Select Yes","Выберите Да"
+"Order ID","ID заказа"
+"Date and time","Дата и время"
+"Author","Автор"
+"Value","Значение"
+"Type","Тип"
+"Status","Статус"
+"Purchase","Заказ"
+"View order","Посмотреть заказ"
+"Remake order","Повторить заказ"
+"No orders yet","Заказов пока нет"
+"Order #","Заказ #"
+"Items ordered","Заказанные товары"
+"Product Name","Название товара"
+"SKU","Идентификационный номер товара"
+"Subtotal","Подитог"
+"Tax","Налог"
+"Discount","Скидка"
+"Order informations","Информация о заказе"
+"Shipping address","Адрес доставки"
+"Billing address","Платежный адрес"
diff --git a/core/scripts/installer.js b/core/scripts/installer.js
index 676802b52f..6ecfeb840d 100644
--- a/core/scripts/installer.js
+++ b/core/scripts/installer.js
@@ -349,6 +349,13 @@ class Storefront extends Abstract {
config.orders.endpoint = `${backendPath}/api/order`
config.products.endpoint = `${backendPath}/api/product`
config.users.endpoint = `${backendPath}/api/user`
+ config.users.history_endpoint = `${backendPath}/api/user/order-history?token={{token}}`
+ config.users.resetPassword_endpoint = `${backendPath}/api/user/resetPassword`
+ config.users.changePassword_endpoint = `${backendPath}/api/user/changePassword?token={{token}}`
+ config.users.login_endpoint = `${backendPath}/api/user/login`
+ config.users.create_endpoint = `${backendPath}/api/user/create`
+ config.users.me_endpoint = `${backendPath}/api/user/me?token={{token}}`
+ config.users.refresh_endpoint = `${backendPath}/api/user/refresh`
config.stock.endpoint = `${backendPath}/api/stock`
config.cart.create_endpoint = `${backendPath}/api/cart/create?token={{token}}`
config.cart.updateitem_endpoint = `${backendPath}/api/cart/update?token={{token}}&cartId={{cartId}}`
diff --git a/core/scripts/server.js b/core/scripts/server.js
index 754cc182b7..5741cd0f4d 100755
--- a/core/scripts/server.js
+++ b/core/scripts/server.js
@@ -3,6 +3,7 @@ const path = require('path')
const express = require('express')
const rootPath = require('app-root-path').path
const resolve = file => path.resolve(rootPath, file)
+const config = require('config')
const isProd = process.env.NODE_ENV === 'production'
process.noDeprecation = true
@@ -93,7 +94,8 @@ app.get('*', (req, res) => {
.pipe(res)
})
-const port = process.env.PORT || 3000
+const port = process.env.PORT || config.server.port
+const host = process.env.HOST || config.server.host
app.listen(port, () => {
- console.log(`Vue Storefront Server started at http://localhost:${port}`)
+ console.log(`Vue Storefront Server started at http://${host}:${port}`)
})
diff --git a/core/server-entry.js b/core/server-entry.js
index 4730371205..b3226acff6 100755
--- a/core/server-entry.js
+++ b/core/server-entry.js
@@ -1,5 +1,6 @@
import { createApp } from './app'
-global.isSSR = true
+import { HttpError } from 'core/lib/exceptions'
+global.$VS.isSSR = true
export default context => {
return new Promise((resolve, reject) => {
@@ -10,7 +11,7 @@ export default context => {
router.onReady(() => {
const matchedComponents = router.getMatchedComponents()
if (!matchedComponents.length) {
- return reject(new Error({ code: 404 }))
+ return reject(new HttpError('No components matched', 404))
}
Promise.all(matchedComponents.map(Component => {
const components = Component.mixins ? Array.from(Component.mixins) : []
@@ -27,9 +28,9 @@ export default context => {
resolve(app)
}).catch(err => {
if (err.message.indexOf('query returned empty result') > 0) {
- reject(new Error({ code: 404 }))
+ reject(new HttpError(err.message, 404))
} else {
- reject(new Error())
+ reject(new Error(err.message))
}
})
}))
diff --git a/core/store/helpers/index.js b/core/store/helpers/index.js
new file mode 100644
index 0000000000..f229bf9f8e
--- /dev/null
+++ b/core/store/helpers/index.js
@@ -0,0 +1,117 @@
+import builder from 'bodybuilder'
+import config from '../lib/config'
+
+/**
+ * Create slugify -> "create-slugify" permalink of text
+ * @param {String} text
+ */
+export function slugify (text) {
+ return text.toString().toLowerCase()
+ .replace(/\s+/g, '-') // Replace spaces with -
+ .replace(/&/g, '-and-') // Replace & with 'and'
+ .replace(/[^\w-]+/g, '') // Remove all non-word chars
+ .replace(/--+/g, '-') // Replace multiple - with single -
+}
+
+/**
+ * Re-format category path to be suitable for breadcrumb
+ * @param {Array} categoryPath
+ */
+export function breadCrumbRoutes (categoryPath) {
+ const tmpRts = []
+ for (let sc of categoryPath) {
+ tmpRts.push({
+ name: sc.name,
+ route_link: '/c/' + sc.slug
+ })
+ }
+
+ return tmpRts
+}
+
+/**
+ * Return configurable product thumbnail depending on the configurable_children
+ * @param {object} product
+ * @param {bool} ignoreConfig
+ */
+export function productThumbnailPath (product, ignoreConfig = false) {
+ let thumbnail = product.image
+ if ((product.type_id && product.type_id === 'configurable') && product.hasOwnProperty('configurable_children') &&
+ product.configurable_children.length && (ignoreConfig || !product.is_configured) &&
+ ('image' in product.configurable_children[0])
+ ) {
+ thumbnail = product.configurable_children[0].image
+ }
+ return thumbnail
+}
+
+export function buildFilterProductsQuery (currentCategory, chosenFilters, defaultFilters = null) {
+ let filterQr = baseFilterProductsQuery(currentCategory, defaultFilters == null ? config.products.defaultFilters : defaultFilters)
+ let attrFilterBuilder = (filterQr, attrPostfix = '') => {
+ for (let code of Object.keys(chosenFilters)) {
+ const filter = chosenFilters[code]
+
+ if (filter.attribute_code !== 'price') {
+ filterQr = filterQr.andFilter('match', filter.attribute_code + attrPostfix, filter.id)
+ } else { // multi should be possible filter here?
+ const rangeqr = {}
+ if (filter.from) {
+ rangeqr['gte'] = filter.from
+ }
+ if (filter.to) {
+ rangeqr['lte'] = filter.to
+ }
+ filterQr = filterQr.andFilter('range', filter.attribute_code, rangeqr)
+ }
+ }
+ return filterQr
+ }
+ filterQr = filterQr.orFilter('bool', (b) => attrFilterBuilder(b).filter('match', 'type_id', 'simple'))
+ .orFilter('bool', (b) => attrFilterBuilder(b, '_options').filter('match', 'type_id', 'configurable'))
+ return filterQr
+}
+
+export function baseFilterProductsQuery (parentCategory, filters = []) { // TODO add aggregation of color_options and size_options fields
+ let searchProductQuery = builder().query('range', 'price', { 'gt': 0 }).andFilter('range', 'visibility', { 'gte': 2, 'lte': 4 }/** Magento visibility in search & categories */)
+
+ // add filters to query
+ for (let attrToFilter of filters) {
+ if (attrToFilter !== 'price') {
+ searchProductQuery = searchProductQuery.aggregation('terms', attrToFilter)
+ searchProductQuery = searchProductQuery.aggregation('terms', attrToFilter + '_options')
+ } else {
+ searchProductQuery = searchProductQuery.aggregation('terms', attrToFilter)
+ searchProductQuery.aggregation('range', 'price', {
+ ranges: [
+ { from: 0, to: 50 },
+ { from: 50, to: 100 },
+ { from: 100, to: 150 },
+ { from: 150 }
+ ]
+ })
+ }
+ }
+
+ let childCats = [parentCategory.id]
+ if (parentCategory.children_data) {
+ let recurCatFinderBuilder = (category) => {
+ if (!category) {
+ return
+ }
+
+ if (!category.children_data) {
+ return
+ }
+
+ for (let sc of category.children_data) {
+ if (sc && sc.id) {
+ childCats.push(sc.id)
+ }
+ recurCatFinderBuilder(sc)
+ }
+ }
+ recurCatFinderBuilder(parentCategory)
+ }
+ searchProductQuery = searchProductQuery.filter('terms', 'category.category_id', childCats)
+ return searchProductQuery
+}
diff --git a/core/store/index.js b/core/store/index.js
index ac347947ea..7955ab8992 100644
--- a/core/store/index.js
+++ b/core/store/index.js
@@ -2,7 +2,7 @@ import Vue from 'vue'
import Vuex from 'vuex'
import * as types from './mutation-types'
import localForage from 'localforage'
-import UniversalStorage from 'core/lib/storage'
+import UniversalStorage from './lib/storage'
import order from './modules/order'
import product from './modules/product'
import category from './modules/category'
@@ -22,7 +22,6 @@ import social from './modules/social-tiles'
import claims from './modules/claims'
import sync from './modules/sync'
import promoted from './modules/promoted-offers'
-import themeModules from 'theme/store'
Vue.prototype.$db = {
ordersCollection: new UniversalStorage(localForage.createInstance({
@@ -96,7 +95,8 @@ Vue.prototype.$db = {
}))
}
-global.db = Vue.prototype.$db // localForage instance
+if (!global.$VS) global.$VS = {}
+global.$VS.db = Vue.prototype.$db // localForage instance
Vue.use(Vuex)
@@ -120,56 +120,70 @@ const mutations = {
const plugins = [
store => {
store.subscribe((mutation, state) => {
- if (mutation.type.indexOf(types.SN_CART) === 0) { // check if this mutation is cart related
- global.db.cartsCollection.setItem('current-cart', state.cart.cartItems).catch((reason) => {
+ let nameArray = mutation.type.split('/')
+ let storeName, actionName
+ if (nameArray.length) {
+ storeName = nameArray[0]
+ actionName = nameArray.slice(1).join('/')
+ } else {
+ console.error('Store mutation name is incorrectly formed')
+ }
+
+ if (storeName === types.SN_CART) { // check if this mutation is cart related
+ global.$VS.db.cartsCollection.setItem('current-cart', state.cart.cartItems).catch((reason) => {
console.error(reason) // it doesn't work on SSR
}) // populate cache
- global.db.cartsCollection.setItem('current-cart-token', state.cart.cartServerToken).catch((reason) => {
+ global.$VS.db.cartsCollection.setItem('current-cart-token', state.cart.cartServerToken).catch((reason) => {
console.error(reason)
})
}
- if (mutation.type.indexOf(types.SN_WISHLIST) === 0) { // check if this mutation is wishlist related
- global.db.wishlistCollection.setItem('current-wishlist', state.wishlist.itemsWishlist).catch((reason) => {
+ if (storeName === types.SN_WISHLIST) { // check if this mutation is wishlist related
+ global.$VS.db.wishlistCollection.setItem('current-wishlist', state.wishlist.itemsWishlist).catch((reason) => {
console.error(reason) // it doesn't work on SSR
})
}
- if (mutation.type.indexOf(types.SN_COMPARE) === 0) { // check if this mutation is compare related
- global.db.compareCollection.setItem('current-compare', state.compare.itemsCompare).catch((reason) => {
+ if (storeName === types.SN_COMPARE) { // check if this mutation is compare related
+ global.$VS.db.compareCollection.setItem('current-compare', state.compare.itemsCompare).catch((reason) => {
console.error(reason) // it doesn't work on SSR
})
}
- if (mutation.type.indexOf(types.USER_INFO_LOADED) >= 0) { // check if this mutation is user related
- global.db.usersCollection.setItem('current-user', state.user.current).catch((reason) => {
+ if (actionName === types.USER_INFO_LOADED) { // check if this mutation is user related
+ global.$VS.db.usersCollection.setItem('current-user', state.user.current).catch((reason) => {
console.error(reason) // it doesn't work on SSR
}) // populate cache
}
- if (mutation.type.indexOf(types.USER_ORDERS_HISTORY_LOADED) >= 0) { // check if this mutation is user related
- global.db.ordersHistoryCollection.setItem('orders-history', state.user.orders_history).catch((reason) => {
+ if (actionName === types.USER_ORDERS_HISTORY_LOADED) { // check if this mutation is user related
+ global.$VS.db.ordersHistoryCollection.setItem('orders-history', state.user.orders_history).catch((reason) => {
console.error(reason) // it doesn't work on SSR
}) // populate cache
}
- if (mutation.type.indexOf(types.USER_TOKEN_CHANGED) >= 0) { // check if this mutation is user related
- global.db.usersCollection.setItem('current-token', state.user.token).catch((reason) => {
+ if (actionName === types.USER_TOKEN_CHANGED) { // check if this mutation is user related
+ global.$VS.db.usersCollection.setItem('current-token', state.user.token).catch((reason) => {
console.error(reason) // it doesn't work on SSR
}) // populate cache
+ if (state.user.refreshToken) {
+ global.$VS.db.usersCollection.setItem('current-refresh-token', state.user.refreshToken).catch((reason) => {
+ console.error(reason) // it doesn't work on SSR
+ }) // populate cache
+ }
}
- if (mutation.type.indexOf(types.SN_CHECKOUT) === 0) {
- if (mutation.type.indexOf(types.CHECKOUT_SAVE_PERSONAL_DETAILS) > 0) {
- global.db.checkoutFieldsCollection.setItem('personal-details', state.checkout.personalDetails).catch((reason) => {
+ if (storeName === types.SN_CHECKOUT) {
+ if (actionName === types.CHECKOUT_SAVE_PERSONAL_DETAILS) {
+ global.$VS.db.checkoutFieldsCollection.setItem('personal-details', state.checkout.personalDetails).catch((reason) => {
console.error(reason) // it doesn't work on SSR
}) // populate cache
- } else if (mutation.type.indexOf(types.CHECKOUT_SAVE_SHIPPING_DETAILS) > 0) {
- global.db.checkoutFieldsCollection.setItem('shipping-details', state.checkout.shippingDetails).catch((reason) => {
+ } else if (actionName === types.CHECKOUT_SAVE_SHIPPING_DETAILS) {
+ global.$VS.db.checkoutFieldsCollection.setItem('shipping-details', state.checkout.shippingDetails).catch((reason) => {
console.error(reason) // it doesn't work on SSR
}) // populate cache
- } else if (mutation.type.indexOf(types.CHECKOUT_SAVE_PAYMENT_DETAILS) > 0) {
- global.db.checkoutFieldsCollection.setItem('payment-details', state.checkout.paymentDetails).catch((reason) => {
+ } else if (actionName === types.CHECKOUT_SAVE_PAYMENT_DETAILS) {
+ global.$VS.db.checkoutFieldsCollection.setItem('payment-details', state.checkout.paymentDetails).catch((reason) => {
console.error(reason) // it doesn't work on SSR
}) // populate cache
}
}
- if (mutation.type.indexOf(types.USER_UPDATE_PREFERENCES) >= 0) {
- global.db.newsletterPreferencesCollection.setItem('newsletter-preferences', state.user.newsletter).catch((reason) => {
+ if (actionName === types.USER_UPDATE_PREFERENCES) {
+ global.$VS.db.newsletterPreferencesCollection.setItem('newsletter-preferences', state.user.newsletter).catch((reason) => {
console.error(reason)
})
}
@@ -177,8 +191,8 @@ const plugins = [
}
]
-export default new Vuex.Store({
- modules: {
+let rootStore = new Vuex.Store({
+ modules: { // TODO: refactor it to return just the constructor to avoid event-bus and i18n shenigans; challenge: the singleton management OR add i18n and eventBus here to rootStore instance? modules: {
order,
product,
category,
@@ -197,10 +211,35 @@ export default new Vuex.Store({
tax,
claims,
sync,
- promoted,
- ...themeModules
+ promoted
},
state,
mutations,
plugins
})
+
+rootStore.i18n = {
+ t: function (key) {
+ return key
+ }
+}
+rootStore.eventBus = new Vue()
+
+rootStore.init = function (config, i18n = null, eventBus = null) { // TODO: init sub modules "context" with i18n + eventBus
+ if (config !== null) {
+ console.debug('Vuex VS store - using external config')
+ this.config = config
+ global.$VS.config = Object.assign(global.$VS.config, config)
+ }
+ if (i18n !== null) {
+ console.debug('Vuex VS store - using external i18n')
+ this.i18n = i18n
+ global.$VS.i18n = Object.assign(global.$VS.i18n, i18n)
+ }
+ if (eventBus !== null) {
+ console.debug('Vuex VS store - using external event-bus')
+ this.eventBus = eventBus
+ global.$VS.eventBus = Object.assign(global.$VS.eventBus, eventBus)
+ }
+}
+export default rootStore
diff --git a/core/store/lib/config.js b/core/store/lib/config.js
new file mode 100644
index 0000000000..866e04d5ea
--- /dev/null
+++ b/core/store/lib/config.js
@@ -0,0 +1,5 @@
+global.$VS = (global.$VS ? global.$VS : {})
+if (!global.$VS.config) {
+ global.$VS.config = {}
+}
+export default global.$VS.config
diff --git a/core/lib/entities.js b/core/store/lib/entities.js
similarity index 100%
rename from core/lib/entities.js
rename to core/store/lib/entities.js
diff --git a/core/store/lib/event-bus.js b/core/store/lib/event-bus.js
new file mode 100644
index 0000000000..9a4c0f4ad2
--- /dev/null
+++ b/core/store/lib/event-bus.js
@@ -0,0 +1,6 @@
+import Vue from 'vue'
+let eventBus = global.$VS ? global.$VS.eventBus : null
+if (!eventBus) {
+ eventBus = new Vue()
+}
+export default eventBus
diff --git a/core/store/lib/exceptions.js b/core/store/lib/exceptions.js
new file mode 100644
index 0000000000..b896be730e
--- /dev/null
+++ b/core/store/lib/exceptions.js
@@ -0,0 +1,21 @@
+export class ValidationError {
+ /**
+ * ValidationError to be used with multiple validation errors return from Ajv or other validators
+ * @param {Object} _validationMessages dictionary of validation errors
+ */
+ constructor (_validationMessages) {
+ this._messages = _validationMessages
+ this.name = 'ValidationError'
+ }
+
+ /**
+ * @return {Array} array of errors
+ */
+ get messages () {
+ return this._messages
+ }
+
+ toString () {
+ return this._messages.join(', ')
+ }
+}
diff --git a/core/store/lib/filters.js b/core/store/lib/filters.js
new file mode 100644
index 0000000000..2b239c25bd
--- /dev/null
+++ b/core/store/lib/filters.js
@@ -0,0 +1,9 @@
+import he from 'he'
+
+/**
+ * Decodes any named and numerical character references in text
+ * @param {String} value
+ */
+export function htmlDecode (value) {
+ return value ? he.decode(value) : ''
+}
diff --git a/core/store/lib/i18n.js b/core/store/lib/i18n.js
new file mode 100644
index 0000000000..cb5eaedf80
--- /dev/null
+++ b/core/store/lib/i18n.js
@@ -0,0 +1,9 @@
+let i18n = global.$VS ? global.$VS.i18n : null // TODO: we should have translation support separated from the VS core
+if (!i18n) {
+ i18n = {
+ t: function (key) {
+ return key
+ }
+ }
+}
+export default i18n
diff --git a/core/lib/search.js b/core/store/lib/search.js
similarity index 83%
rename from core/lib/search.js
rename to core/store/lib/search.js
index 8440510bb4..8a5dad1e62 100644
--- a/core/lib/search.js
+++ b/core/store/lib/search.js
@@ -1,18 +1,10 @@
-import config from 'config'
+import config from '../lib/config'
import _ from 'lodash'
-import { slugify } from 'core/helpers'
+import { slugify } from '../helpers'
import hash from 'object-hash'
let es = require('elasticsearch')
-let client = new es.Client({
- host: config.elasticsearch.host,
- httpAuth: config.elasticsearch.httpAuth,
- log: 'debug',
- apiVersion: '5.5',
- requestTimeout: 5000
-})
-
function isOnline () {
if (typeof navigator !== 'undefined') {
return navigator.onLine
@@ -20,6 +12,20 @@ function isOnline () {
return true // SSR
}
}
+
+function _getEsClientSingleton () {
+ if (!global.$VS.esClient) {
+ global.$VS.esClient = new es.Client({
+ host: config.elasticsearch.host,
+ httpAuth: config.elasticsearch.httpAuth,
+ log: 'debug',
+ apiVersion: '5.5',
+ requestTimeout: 5000
+ })
+ }
+
+ return global.$VS.esClient
+}
/**
* Helper function to handle ElasticSearch Results
* @param {Object} resp result from ES call
@@ -57,21 +63,24 @@ function _handleEsResult (resp, start = 0, size = 50) {
* @param {Int} size page size
* @return {Promise}
*/
-export function quickSearchByQuery ({ query, start = 0, size = 50, entityType = 'product', sort = '' }) {
+export function quickSearchByQuery ({ query, start = 0, size = 50, entityType = 'product', sort = '', index = null, excludeFields = null, includeFields = null }) {
size = parseInt(size)
if (size <= 0) size = 50
if (start < 0) start = 0
return new Promise((resolve, reject) => {
const esQuery = {
- index: config.elasticsearch.index, // TODO: add grouped prodduct and bundled product support
+ index: index || config.elasticsearch.index, // TODO: add grouped prodduct and bundled product support
type: entityType,
body: query,
size: size,
from: start,
sort: sort
}
- const cache = global.db.elasticCacheCollection // switch to appcache?
+
+ if (excludeFields) esQuery._sourceExclude = excludeFields
+ if (includeFields) esQuery._sourceInclude = includeFields
+ const cache = global.$VS.db.elasticCacheCollection // switch to appcache?
const cacheKey = hash(esQuery)
let servedFromCache = false
const benchmarkTime = new Date()
@@ -107,6 +116,7 @@ export function quickSearchByQuery ({ query, start = 0, size = 50, entityType =
}
}
}).catch((err) => { console.error('Cannot read cache for ' + cacheKey + ', ' + err) })
+ let client = _getEsClientSingleton()
client.search(esQuery).then(function (resp) { // we're always trying to populate cache - when online
const res = _handleEsResult(resp, start, size)
cache.setItem(cacheKey, res).catch((err) => { console.error('Cannot store cache for ' + cacheKey + ', ' + err) })
@@ -137,6 +147,7 @@ export function quickSearchByText ({ queryText, start = 0, size = 50 }) {
if (start < 0) start = 0
return new Promise((resolve, reject) => {
+ let client = _getEsClientSingleton()
client.search({
index: config.elasticsearch.index, // TODO: add grouped prodduct and bundled product support
type: 'product',
diff --git a/core/lib/storage.js b/core/store/lib/storage.js
similarity index 85%
rename from core/lib/storage.js
rename to core/store/lib/storage.js
index 749ba3650c..c3b5f7b488 100644
--- a/core/lib/storage.js
+++ b/core/store/lib/storage.js
@@ -16,16 +16,25 @@ class LocalForageCacheDriver {
getItem (key, callback) {
const self = this
const isCallbackCallable = (typeof callback !== 'undefined' && callback)
+ let isResolved = false
const promise = this._localForageCollection.getItem(key).then(result => {
if (isCallbackCallable) {
callback(null, result)
}
+ isResolved = true
return result
}).catch(err => {
console.debug('UniversalStorage - probably in SSR mode: ' + err)
if (isCallbackCallable) callback(null, typeof self._localCache[key] !== 'undefined' ? self._localCache[key] : null)
+ isResolved = true
})
+ setTimeout(function () {
+ if (!isResolved) { // this is cache time out check
+ console.error('Cache not responding within 1s')
+ if (isCallbackCallable) callback(null, typeof self._localCache[key] !== 'undefined' ? self._localCache[key] : null)
+ }
+ }, 1000)
return promise
}
@@ -74,5 +83,5 @@ class LocalForageCacheDriver {
}
// The actual localForage object that we expose as a module or via a
-// global. It's extended by pulling in one of our other libraries.
+// global.$VS. It's extended by pulling in one of our other libraries.
export default LocalForageCacheDriver
diff --git a/core/store/lib/task.js b/core/store/lib/task.js
new file mode 100644
index 0000000000..96d809ce5e
--- /dev/null
+++ b/core/store/lib/task.js
@@ -0,0 +1,121 @@
+import EventBus from './event-bus'
+import i18n from './i18n'
+import _ from 'lodash'
+import fetch from 'isomorphic-fetch'
+import rootStore from '../'
+import config from './config'
+
+function _sleep (time) {
+ return new Promise((resolve) => setTimeout(resolve, time))
+}
+
+function _internalExecute (resolve, reject, task, currentToken, currentCartId) {
+ if (currentToken !== null && global.$VS.userTokenInvalidateLock) { // invalidate lock set
+ console.log('Waiting for global.$VS.userTokenInvalidateLock to release for', task.url)
+ _sleep(1000).then(() => {
+ console.log('Another try for global.$VS.userTokenInvalidateLock for ', task.url)
+ _internalExecute(resolve, reject, task, currentToken, currentCartId)
+ })
+
+ return // return but not resolve
+ } else {
+ if (global.$VS.userTokenInvalidated) {
+ console.log('Using new user token', global.$VS.userTokenInvalidated)
+ currentToken = global.$VS.userTokenInvalidated
+ }
+ }
+ const url = task.url.replace('{{token}}', (currentToken == null) ? '' : currentToken).replace('{{cartId}}', (currentCartId == null) ? '' : currentCartId)
+ let silentMode = false
+ return fetch(url, task.payload).then((response) => {
+ const contentType = response.headers.get('content-type')
+ if (contentType && contentType.includes('application/json')) {
+ return response.json()
+ } else {
+ const msg = i18n.t('Error with response - bad content-type!')
+ console.error(msg)
+ reject(msg)
+ }
+ }).then((jsonResponse) => {
+ if (jsonResponse) {
+ if (parseInt(jsonResponse.code) !== 200) {
+ let resultString = jsonResponse.result ? _.toString(jsonResponse.result) : null
+ if (resultString && (resultString.indexOf(i18n.t('not authorized')) >= 0 || resultString.indexOf('not authorized')) >= 0 && currentToken !== null) { // the token is no longer valid, try to invalidate it
+ console.error('Invalid token - need to be revalidated', currentToken, task.url)
+ silentMode = true
+ if (config.users.autoRefreshTokens) {
+ _internalExecute(resolve, reject, task, currentToken, currentCartId) // retry
+ if (!global.$VS.userTokenInvalidateLock) {
+ if (global.$VS.userTokenInvalidateAttemptsCount > 20) {
+ console.error('Internal Application error while refreshing the tokens. Please clear the storage and refresh page.')
+ rootStore.dispatch('user/logout', { silent: true })
+ EventBus.$emit('modal-show', 'modal-signup')
+ EventBus.$emit('notification', {
+ type: 'error',
+ message: i18n.t('Internal Application error while refreshing the tokens. Please clear the storage and refresh page.'),
+ action1: { label: i18n.t('OK'), action: 'close' }
+ })
+ } else {
+ console.info('Invalidation process in progress (autoRefreshTokens is set to true)', global.$VS.userTokenInvalidateAttemptsCount)
+ global.$VS.userTokenInvalidateLock = _.isNumber(global.$VS.userTokenInvalidateLock) ? global.$VS.userTokenInvalidateLock++ : 1
+ global.$VS.userTokenInvalidateAttemptsCount++
+ rootStore.dispatch('user/refresh').then((resp) => {
+ if (resp.code === 200) {
+ global.$VS.userTokenInvalidateLock = 0
+ global.$VS.userTokenInvalidated = resp.result
+ console.info('User token refreshed successfully', resp.result)
+ } else {
+ global.$VS.userTokenInvalidateLock = 0
+ rootStore.dispatch('user/logout', { silent: true })
+ EventBus.$emit('modal-show', 'modal-signup')
+ console.error('Error refreshing user token', resp.result)
+ }
+ })
+ }
+ }
+ } else {
+ console.info('Invalidation process is disabled (autoRefreshTokens is set to false)')
+ rootStore.dispatch('user/logout', { silent: true })
+ EventBus.$emit('modal-show', 'modal-signup')
+ }
+ }
+ if (!task.silent && (jsonResponse.result && jsonResponse.result.code !== 'ENOTFOUND' && !silentMode)) {
+ EventBus.$emit('notification', {
+ type: 'error',
+ message: i18n.t(jsonResponse.result),
+ action1: { label: i18n.t('OK'), action: 'close' }
+ })
+ }
+ }
+ console.info('Response for: ' + task.task_id + ' = ' + jsonResponse.result)
+ task.transmited = true
+ task.transmited_at = new Date()
+ task.result = jsonResponse.result
+ task.resultCode = jsonResponse.code
+ task.code = jsonResponse.code // backward compatibility to fetch()
+ task.acknowledged = false
+
+ if (task.callback_event) {
+ EventBus.$emit(task.callback_event, task)
+ }
+ if (!global.$VS.userTokenInvalidateLock) { // in case we're revalidaing the token - user must wait for it
+ resolve(task)
+ }
+ } else {
+ const msg = i18n.t('Unhandled error, wrong response format!')
+ console.error(msg)
+ reject(msg)
+ }
+ }).catch((err) => {
+ console.error(err)
+ reject(err)
+ })
+}
+
+export function execute (task, currentToken = null, currentCartId = null) {
+ const taskId = task.task_id
+
+ console.log('Pushing out task ' + taskId)
+ return new Promise((resolve, reject) => {
+ _internalExecute(resolve, reject, task, currentToken, currentCartId)
+ })
+}
diff --git a/core/lib/taxcalc.js b/core/store/lib/taxcalc.js
similarity index 100%
rename from core/lib/taxcalc.js
rename to core/store/lib/taxcalc.js
diff --git a/core/store/modules/attribute/actions.js b/core/store/modules/attribute/actions.js
index a4a33dd572..9d8fc664e2 100644
--- a/core/store/modules/attribute/actions.js
+++ b/core/store/modules/attribute/actions.js
@@ -1,6 +1,7 @@
import * as types from '../../mutation-types'
import bodybuilder from 'bodybuilder'
-import { quickSearchByQuery } from 'core/lib/search'
+import { quickSearchByQuery } from '../../lib/search'
+import config from '../../lib/config'
export default {
/**
@@ -8,7 +9,7 @@ export default {
* @param {Object} context
* @param {Array} attrCodes attribute codes to load
*/
- list (context, { filterValues = null, filterField = 'attribute_code', size = 150, start = 0 }) {
+ list (context, { filterValues = null, filterField = 'attribute_code', size = 150, start = 0, includeFields = config.entities.optimize ? config.entities.attribute.includeFields : null }) {
const commit = context.commit
let qrObj = bodybuilder()
@@ -16,7 +17,7 @@ export default {
qrObj = qrObj.orFilter('term', filterField, value)
}
- return quickSearchByQuery({ entityType: 'attribute', query: qrObj.build() }).then(function (resp) {
+ return quickSearchByQuery({ entityType: 'attribute', query: qrObj.build(), includeFields: includeFields }).then(function (resp) {
commit(types.ATTRIBUTE_UPD_ATTRIBUTES, resp)
}).catch(function (err) {
console.error(err)
diff --git a/core/store/modules/attribute/mutations.js b/core/store/modules/attribute/mutations.js
index 035ecb34e6..d98a11333c 100644
--- a/core/store/modules/attribute/mutations.js
+++ b/core/store/modules/attribute/mutations.js
@@ -1,5 +1,5 @@
import * as types from '../../mutation-types'
-import { entityKeyName } from 'core/lib/entities'
+import { entityKeyName } from '../../lib/entities'
export default {
/**
@@ -16,7 +16,7 @@ export default {
attrHashByCode[attr.attribute_code] = attr
attrHashById[attr.attribute_id] = attr
- const attrCollection = global.db.attributesCollection
+ const attrCollection = global.$VS.db.attributesCollection
try {
attrCollection.setItem(entityKeyName('attribute_code', attr.attribute_code.toLowerCase()), attr).catch((reason) => {
console.error(reason) // it doesn't work on SSR
diff --git a/core/store/modules/cart/actions.js b/core/store/modules/cart/actions.js
index 88b2b518b0..37b99ec56f 100644
--- a/core/store/modules/cart/actions.js
+++ b/core/store/modules/cart/actions.js
@@ -1,8 +1,8 @@
-import config from 'config'
+import config from '../../lib/config'
import * as types from '../../mutation-types'
import rootStore from '../../'
-import EventBus from 'core/plugins/event-bus'
-import i18n from 'core/lib/i18n'
+import EventBus from '../../lib/event-bus'
+import i18n from '../../lib/i18n'
import hash from 'object-hash'
const CART_PULL_INTERVAL_MS = 2000
@@ -24,7 +24,7 @@ export default {
context.commit(types.CART_SAVE)
},
serverPull (context, { forceClientState = false }) { // pull current cart FROM the server
- if (config.cart.synchronize) {
+ if (config.cart.synchronize && !global.$VS.isSSR) {
const newItemsHash = hash({ items: context.state.cartItems, token: context.state.cartServerToken })
if ((new Date() - context.state.cartServerPullAt) >= CART_PULL_INTERVAL_MS || (newItemsHash !== context.state.cartItemsHash)) {
context.state.cartServerPullAt = new Date()
@@ -39,13 +39,13 @@ export default {
force_client_state: forceClientState,
callback_event: 'servercart-after-pulled'
}, { root: true }).then(task => {
- rootStore.dispatch('cart/getPaymentMethods')
+ /* rootStore.dispatch('cart/getPaymentMethods')
if (context.state.cartItems.length > 0) {
- let country = rootStore.state.checkout.shippingDetails.country ? rootStore.state.checkout.shippingDetails.country : config.tax.defaultCountry
+ /* let country = rootStore.state.checkout.shippingDetails.country ? rootStore.state.checkout.shippingDetails.country : config.tax.defaultCountry
rootStore.dispatch('cart/getShippingMethods', {
country_id: country
})
- }
+ } */
})
} else {
console.log('Too short interval for refreshing the cart or items not changed', newItemsHash, context.state.cartItemsHash)
@@ -53,7 +53,7 @@ export default {
}
},
serverTotals (context, { forceClientState = false }) { // pull current cart FROM the server
- if (config.cart.synchronize_totals) {
+ if (config.cart.synchronize_totals && !global.$VS.isSSR) {
if ((new Date() - context.state.cartServerTotalsAt) >= CART_TOTALS_INTERVAL_MS) {
context.state.cartServerPullAt = new Date()
context.dispatch('sync/execute', { url: config.cart.totals_endpoint, // sync the cart
@@ -74,7 +74,7 @@ export default {
}
},
serverCreate (context, { guestCart = false }) {
- if (config.cart.synchronize) {
+ if (config.cart.synchronize && !global.$VS.isSSR) {
if ((new Date() - context.state.cartServerCreatedAt) >= CART_CREATE_INTERVAL_MS) {
const task = { url: guestCart ? config.cart.create_endpoint.replace('{{token}}', '') : config.cart.create_endpoint, // sync the cart
payload: {
@@ -91,7 +91,7 @@ export default {
}
},
serverUpdateItem (context, cartItem) {
- if (config.cart.synchronize) {
+ if (config.cart.synchronize && !global.$VS.isSSR) {
if (!cartItem.quoteId) {
cartItem = Object.assign(cartItem, { quoteId: context.state.cartServerToken })
}
@@ -115,7 +115,7 @@ export default {
}
},
serverDeleteItem (context, cartItem) {
- if (config.cart.synchronize) {
+ if (config.cart.synchronize && !global.$VS.isSSR) {
if (!cartItem.quoteId) {
cartItem = Object.assign(cartItem, { quoteId: context.state.cartServerToken })
}
@@ -141,22 +141,24 @@ export default {
}
},
load (context) {
+ if (global.$VS.isSSR) return
console.log('Loading cart ...')
const commit = context.commit
- const rootState = context.rootState
const state = context.state
- if (!state.shipping.code) {
- state.shipping = rootState.shipping.methods.find((el) => { if (el.default === true) return el }) // TODO: use commit() instead of modifying the state in actions
+ if (!state.shipping.method_code) {
+ let shippingMethod = context.rootGetters['shipping/shippingMethods'].find(item => item.default)
+ commit(types.CART_UPD_SHIPPING, shippingMethod)
}
if (!state.payment.code) {
- state.payment = rootState.payment.methods.find((el) => { if (el.default === true) return el })
+ let paymentMethod = context.rootGetters['payment/paymentMethods'].find(item => item.default)
+ commit(types.CART_UPD_PAYMENT, paymentMethod)
}
- global.db.cartsCollection.getItem('current-cart', (err, storedItems) => {
+ global.$VS.db.cartsCollection.getItem('current-cart', (err, storedItems) => {
if (err) throw new Error(err)
if (config.cart.synchronize) {
- global.db.cartsCollection.getItem('current-cart-token', (err, token) => {
+ global.$VS.db.cartsCollection.getItem('current-cart-token', (err, token) => {
if (err) throw new Error(err)
// TODO: if token is null create cart server side and store the token!
if (token) { // previously set token
@@ -190,7 +192,7 @@ export default {
EventBus.$emit('notification', {
type: 'error',
message: i18n.t('Product price is unknown, product cannot be added to the cart!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
continue
}
@@ -201,14 +203,14 @@ export default {
EventBus.$emit('notification', {
type: 'warning',
message: i18n.t('The system is not sure about the stock quantity (volatile). Product has been added to the cart for pre-reservation.'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
}
if (result.status === 'out_of_stock') {
EventBus.$emit('notification', {
type: 'error',
message: i18n.t('The product is out of stock and cannot be added to the cart!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
}
if (result.status === 'ok' || result.status === 'volatile') {
@@ -224,7 +226,8 @@ export default {
EventBus.$emit('notification', {
type: 'success',
message: i18n.t('Product has been added to the cart!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' },
+ action2: { label: i18n.t('Proceed to checkout'), action: 'goToCheckout' }
})
}
})
@@ -265,15 +268,18 @@ export default {
silent: true
}, { root: true }).then(task => {
let backendMethods = task.result
- let paymentMethods = rootStore.state.payment.methods.slice(0) // copy
+ let paymentMethods = context.rootGetters['payment/paymentMethods'].slice(0).filter((itm) => {
+ return (typeof itm !== 'object' || !itm.is_server_method)
+ }) // copy
let uniqueBackendMethods = []
for (let i = 0; i < backendMethods.length; i++) {
- if (!paymentMethods.find(item => item.code === backendMethods[i].code)) {
+ if (typeof backendMethods[i] === 'object' && !paymentMethods.find(item => item.code === backendMethods[i].code)) {
+ backendMethods[i].is_server_method = true
paymentMethods.push(backendMethods[i])
uniqueBackendMethods.push(backendMethods[i])
}
}
- context.commit(types.CART_UPD_PAYMENT, paymentMethods)
+ rootStore.dispatch('payment/replaceMethods', paymentMethods, { root: true })
rootStore.commit('setBackendPaymentMethods', uniqueBackendMethods)
}).catch(e => {
console.error(e)
@@ -294,7 +300,7 @@ export default {
silent: true
}, { root: true }).then(task => {
if (task.result.length > 0) {
- context.commit(types.CART_UPD_SHIPPING, task.result)
+ rootStore.dispatch('shipping/replaceMethods', task.result, { root: true })
}
}).catch(e => {
console.error(e)
@@ -305,8 +311,8 @@ export default {
if (config.cart.synchronize_totals && (typeof navigator !== 'undefined' ? navigator.onLine : true)) {
if (!methodsData) {
let country = rootStore.state.checkout.shippingDetails.country ? rootStore.state.checkout.shippingDetails.country : config.tax.defaultCountry
- let shipping = context.getters.shippingMethods[0]
- let payment = context.getters.paymentMethods[0]
+ let shipping = context.rootGetters['shipping/shippingMethods'].find(item => item.default)
+ let payment = context.rootGetters['payment/paymentMethods'].find(item => item.default)
methodsData = {
country: country,
method_code: shipping ? shipping.method_code : null,
@@ -315,44 +321,24 @@ export default {
}
}
if (methodsData.country && methodsData.carrier_code) {
- context.dispatch('sync/execute', { url: config.cart.shippinginfo_endpoint,
+ context.dispatch('sync/execute', { url: config.cart.collecttotals_endpoint,
payload: {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
mode: 'cors',
body: JSON.stringify({
- addressInformation: {
- shipping_address: {
- country_id: methodsData.country
+ methods: {
+ paymentMethod: {
+ method: methodsData.payment_method
},
- shipping_method_code: methodsData.method_code,
- shipping_carrier_code: methodsData.carrier_code
+ shippingCarrierCode: methodsData.carrier_code,
+ shippingMethodCode: methodsData.method_code
}
})
},
- silent: true
- }, { root: true }).then(task => {
- context.dispatch('sync/execute', { url: config.cart.collecttotals_endpoint,
- payload: {
- method: 'POST',
- headers: { 'Content-Type': 'application/json' },
- mode: 'cors',
- body: JSON.stringify({
- methods: {
- paymentMethod: {
- method: methodsData.payment_method
- },
- shippingCarrierCode: methodsData.carrier_code,
- shippingMethodCode: methodsData.method_code
- }
- })
- },
- silent: true,
- callback_event: 'servercart-after-totals'
- }, { root: true }).then(task => {}).catch(e => {
- console.error(e)
- })
- }).catch(e => {
+ silent: true,
+ callback_event: 'servercart-after-totals'
+ }, { root: true }).then(task => {}).catch(e => {
console.error(e)
})
} else {
@@ -394,7 +380,7 @@ export default {
EventBus.$emit('notification', {
type: 'warning',
message: i18n.t('You\'ve entered an incorrect coupon code. Please try again.'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
}
}).catch(e => {
diff --git a/core/store/modules/cart/getters.js b/core/store/modules/cart/getters.js
index 6c950041a9..5b2ec2c014 100644
--- a/core/store/modules/cart/getters.js
+++ b/core/store/modules/cart/getters.js
@@ -1,5 +1,5 @@
import _ from 'lodash'
-import i18n from 'core/lib/i18n'
+import i18n from '../../lib/i18n'
export default {
totals (state) {
@@ -44,19 +44,5 @@ export default {
return _.sumBy(state.cartItems, (p) => {
return p.qty
})
- },
- shippingMethods (state) {
- if (state.shipping instanceof Array) {
- return state.shipping
- } else {
- return [state.shipping]
- }
- },
- paymentMethods (state) {
- if (state.payment instanceof Array) {
- return state.payment
- } else {
- return [state.payment]
- }
}
}
diff --git a/core/store/modules/cart/index.js b/core/store/modules/cart/index.js
index 5764c3b6c0..461b4ed689 100644
--- a/core/store/modules/cart/index.js
+++ b/core/store/modules/cart/index.js
@@ -1,11 +1,10 @@
-// import config from 'config'
import actions from './actions'
import getters from './getters'
import mutations from './mutations'
-import EventBus from 'core/plugins/event-bus'
+import EventBus from '../../lib/event-bus'
import rootStore from '../../'
import * as types from '../../mutation-types'
-import i18n from 'core/lib/i18n'
+import i18n from '../../lib/i18n'
const MAX_BYPASS_COUNT = 10
@@ -68,6 +67,7 @@ EventBus.$on('servercart-after-pulled', (event) => { // example stock check call
sku: clientItem.sku,
qty: clientItem.qty
}, { root: true })
+ serverCartUpdateRequired = true
} else if (serverItem.qty !== clientItem.qty) {
console.log('Wrong qty for ' + clientItem.sku, clientItem.qty, serverItem.qty)
rootStore.dispatch('cart/serverUpdateItem', {
diff --git a/core/store/modules/cart/mutations.js b/core/store/modules/cart/mutations.js
index 256518b59c..bf99681751 100644
--- a/core/store/modules/cart/mutations.js
+++ b/core/store/modules/cart/mutations.js
@@ -1,6 +1,6 @@
import * as types from '../../mutation-types'
-import EventBus from 'core/plugins/event-bus'
-import config from 'config'
+import EventBus from '../../lib/event-bus'
+import config from '../../lib/config'
export default {
/**
@@ -49,8 +49,8 @@ export default {
}
state.cartSavedAt = new Date()
},
- [types.CART_UPD_SHIPPING] (state, shippingMethods) {
- state.shipping = shippingMethods
+ [types.CART_UPD_SHIPPING] (state, shippingMethod) {
+ state.shipping = shippingMethod
state.cartSavedAt = new Date()
},
[types.CART_LOAD_CART] (state, storedItems) {
@@ -71,8 +71,8 @@ export default {
state.platformTotalSegments = platformTotalSegments
EventBus.$emit('cart-after-updatetotals', { platformTotals: totals, platformTotalSegments: platformTotalSegments })
},
- [types.CART_UPD_PAYMENT] (state, paymentMethods) {
- state.payment = paymentMethods
+ [types.CART_UPD_PAYMENT] (state, paymentMethod) {
+ state.payment = paymentMethod
state.cartSavedAt = new Date()
}
}
diff --git a/core/store/modules/category/actions.js b/core/store/modules/category/actions.js
index 1898ee9bf5..a6ecefc59d 100644
--- a/core/store/modules/category/actions.js
+++ b/core/store/modules/category/actions.js
@@ -1,8 +1,13 @@
import * as types from '../../mutation-types'
-import { quickSearchByQuery } from 'core/lib/search'
-import { entityKeyName } from 'core/lib/entities'
-import EventBus from 'core/plugins/event-bus'
-const bodybuilder = require('bodybuilder')
+import { quickSearchByQuery } from '../../lib/search'
+import { entityKeyName } from '../../lib/entities'
+import EventBus from '../../lib/event-bus'
+import config from '../../lib/config'
+import rootStore from '../../'
+import bodybuilder from 'bodybuilder'
+import i18n from '../../lib/i18n'
+import _ from 'lodash'
+import { optionLabel } from '../attribute/helpers'
export default {
/**
@@ -19,7 +24,7 @@ export default {
* @param {Object} commit promise
* @param {Object} parent parent category
*/
- list (context, { parent = null, onlyActive = true, onlyNotEmpty = false, size = 4000, start = 0, sort = 'position:asc' }) {
+ list (context, { parent = null, onlyActive = true, onlyNotEmpty = false, size = 4000, start = 0, sort = 'position:asc', includeFields = config.entities.optimize ? config.entities.category.includeFields : null }) {
const commit = context.commit
let qrObj = bodybuilder()
if (parent && typeof parent !== 'undefined') {
@@ -34,13 +39,21 @@ export default {
qrObj = qrObj.andFilter('range', 'product_count', {'gt': 0}) // show only active cateogires
}
- return quickSearchByQuery({ entityType: 'category', query: qrObj.build(), sort: sort, size: size, start: start }).then(function (resp) {
- commit(types.CATEGORY_UPD_CATEGORIES, resp)
- EventBus.$emit('category-after-list', { query: qrObj, sort: sort, size: size, start: start, list: resp })
- return resp
- }).catch(function (err) {
- console.error(err)
- })
+ if (!context.state.list | context.state.list.length === 0) {
+ return quickSearchByQuery({ entityType: 'category', query: qrObj.build(), sort: sort, size: size, start: start, includeFields: includeFields }).then(function (resp) {
+ commit(types.CATEGORY_UPD_CATEGORIES, resp)
+ EventBus.$emit('category-after-list', { query: qrObj, sort: sort, size: size, start: start, list: resp })
+ return resp
+ }).catch(function (err) {
+ console.error(err)
+ })
+ } else {
+ return new Promise((resolve, reject) => {
+ let resp = { items: context.state.list, total: context.state.list.length }
+ EventBus.$emit('category-after-list', { query: qrObj, sort: sort, size: size, start: start, list: resp })
+ resolve(resp)
+ })
+ }
},
/**
@@ -85,7 +98,7 @@ export default {
}
}).catch(err => {
console.error(err)
- commit(types.CATEGORY_UPD_CURRENT_CATEGORY_PATH, currentPath) // this is the case when category is not binded to the root tree - for example "Erin Recommends"
+ commit(types.CATEGORY_UPD_CURRENT_CATEGORY_PATH, currentPath) // this is the case when category is not binded to the root tree - for example 'Erin Recommends'
resolve(mainCategory)
})
} else {
@@ -109,15 +122,144 @@ export default {
if (category || value === 1) {
setcat(null, category)
} else {
- reject(Error('Category query returned empty result ' + key + ' = ' + value))
+ reject(new Error('Category query returned empty result ' + key + ' = ' + value))
}
} else {
- const catCollection = global.db.categoriesCollection
+ const catCollection = global.$VS.db.categoriesCollection
// Check if category does not exist in the store AND we haven't recursively reached Default category (id=1)
if (!catCollection.getItem(entityKeyName(key, value), setcat) && value !== 1) {
- reject(Error('Category query returned empty result ' + key + ' = ' + value))
+ reject(new Error('Category query returned empty result ' + key + ' = ' + value))
}
}
})
+ },
+ /**
+ * Filter category products
+ */
+ products (context, { populateAggregations = false, filters = [], searchProductQuery, current = 0, perPage = 50, includeFields = null, excludeFields = null, configuration = null, append = false }) {
+ rootStore.state.product.current_query = {
+ populateAggregations,
+ filters,
+ current,
+ perPage,
+ includeFields,
+ excludeFields,
+ configuration,
+ append
+ }
+
+ if (config.entities.twoStageCaching && config.entities.optimize && !global.$VS.isSSR && !global.$VS.twoStageCachingDisabled) { // only client side, only when two stage caching enabled
+ includeFields = config.entities.productListWithChildren.includeFields // we need configurable_children for filters to work
+ excludeFields = config.entities.productListWithChildren.excludeFields
+ console.log('Using two stage caching for performance optimization - executing first stage product pre-fetching')
+ } else {
+ if (global.$VS.twoStageCachingDisabled) {
+ console.log('Two stage caching is disabled runtime because of no performance gain')
+ } else {
+ console.log('Two stage caching is disabled by the config')
+ }
+ }
+ let t0 = new Date().getTime()
+ let precachedQuery = searchProductQuery.build()
+ let productPromise = rootStore.dispatch('product/list', {
+ query: precachedQuery,
+ start: current,
+ size: perPage,
+ excludeFields: excludeFields,
+ includeFields: includeFields,
+ configuration: configuration,
+ append: append
+ }).then(function (res) {
+ let t1 = new Date().getTime()
+ global.$VS.twoStageCachingDelta1 = t1 - t0
+
+ let subloaders = []
+ if (!res || (res.noresults)) {
+ EventBus.$emit('notification', {
+ type: 'warning',
+ message: i18n.t('No products synchronized for this category. Please come back while online!'),
+ action1: { label: i18n.t('OK'), action: 'close' }
+ })
+ if (!append) rootStore.dispatch('product/reset')
+ rootStore.state.product.list = { items: [] } // no products to show TODO: refactor to rootStore.state.category.reset() and rootStore.state.product.reset()
+ // rootStore.state.category.filters = { color: [], size: [], price: [] }
+ } else {
+ if (populateAggregations === true) { // populate filter aggregates
+ for (let attrToFilter of filters) { // fill out the filter options
+ rootStore.state.category.filters.available[attrToFilter] = []
+
+ let uniqueFilterValues = new Set()
+ if (attrToFilter !== 'price') {
+ if (res.aggregations['agg_terms_' + attrToFilter]) {
+ let buckets = res.aggregations['agg_terms_' + attrToFilter].buckets
+ if (res.aggregations['agg_terms_' + attrToFilter + '_options']) {
+ buckets = buckets.concat(res.aggregations['agg_terms_' + attrToFilter + '_options'].buckets)
+ }
+
+ for (let option of buckets) {
+ uniqueFilterValues.add(_.toString(option.key))
+ }
+ }
+
+ for (let key of uniqueFilterValues.values()) {
+ const label = optionLabel(rootStore.state.attribute, { attributeKey: attrToFilter, optionId: key })
+ if (_.trim(label) !== '') { // is there any situation when label could be empty and we should still support it?
+ rootStore.state.category.filters.available[attrToFilter].push({
+ id: key,
+ label: label
+ })
+ }
+ }
+ } else { // special case is range filter for prices
+ if (res.aggregations['agg_range_' + attrToFilter]) {
+ let index = 0
+ let count = res.aggregations['agg_range_' + attrToFilter].buckets.length
+ for (let option of res.aggregations['agg_range_' + attrToFilter].buckets) {
+ rootStore.state.category.filters.available[attrToFilter].push({
+ id: option.key,
+ from: option.from,
+ to: option.to,
+ label: (index === 0 || (index === count - 1)) ? (option.to ? '< $' + option.to : '> $' + option.from) : '$' + option.from + (option.to ? ' - ' + option.to : '')// TODO: add better way for formatting, extract currency sign
+ })
+ index++
+ }
+ }
+ }
+ }
+ }
+ }
+ return subloaders
+ }).catch((err) => {
+ console.info(err)
+ EventBus.$emit('notification', {
+ type: 'warning',
+ message: i18n.t('No products synchronized for this category. Please come back while online!'),
+ action1: { label: i18n.t('OK'), action: 'close' }
+ })
+ })
+
+ if (config.entities.twoStageCaching && config.entities.optimize && !global.$VS.isSSR && !global.$VS.twoStageCachingDisabled) { // second stage - request for caching entities
+ console.log('Using two stage caching for performance optimization - executing second stage product caching') // TODO: in this case we can pre-fetch products in advance getting more products than set by pageSize
+ rootStore.dispatch('product/list', {
+ query: precachedQuery,
+ start: current,
+ size: perPage,
+ excludeFields: null,
+ includeFields: null,
+ updateState: false // not update the product listing - this request is only for caching
+ }).catch((err) => {
+ console.info("Problem with second stage caching - couldn't store the data")
+ console.info(err)
+ }).then((res) => {
+ let t2 = new Date().getTime()
+ global.$VS.twoStageCachingDelta2 = t2 - t0
+ console.log('Using two stage caching for performance optimization - Time comparison stage1 vs stage2', global.$VS.twoStageCachingDelta1, global.$VS.twoStageCachingDelta2)
+ if (global.$VS.twoStageCachingDelta1 > global.$VS.twoStageCachingDelta2) { // two stage caching is not making any good
+ global.$VS.twoStageCachingDisabled = true
+ console.log('Disabling two stage caching')
+ }
+ })
+ }
+ return productPromise
}
}
diff --git a/core/store/modules/category/mutations.js b/core/store/modules/category/mutations.js
index 06651d879f..3cbe2d719f 100644
--- a/core/store/modules/category/mutations.js
+++ b/core/store/modules/category/mutations.js
@@ -1,7 +1,7 @@
import * as types from '../../mutation-types'
-import { slugify } from 'core/helpers'
-import { entityKeyName } from 'core/lib/entities'
-import EventBus from 'core/plugins/event-bus'
+import { slugify, breadCrumbRoutes } from '../../helpers'
+import { entityKeyName } from '../../lib/entities'
+import EventBus from '../../lib/event-bus'
export default {
[types.CATEGORY_UPD_CURRENT_CATEGORY] (state, category) {
@@ -10,6 +10,7 @@ export default {
},
[types.CATEGORY_UPD_CURRENT_CATEGORY_PATH] (state, path) {
state.current_path = path // TODO: store to cache
+ state.breadcrumbs.routes = breadCrumbRoutes(state.current_path)
},
[types.CATEGORY_UPD_CATEGORIES] (state, categories) {
@@ -23,7 +24,7 @@ export default {
}
}
catSlugSetter(category)
- const catCollection = global.db.categoriesCollection
+ const catCollection = global.$VS.db.categoriesCollection
try {
catCollection.setItem(entityKeyName('slug', category.slug.toLowerCase()), category).catch((reason) => {
console.error(reason) // it doesn't work on SSR
diff --git a/core/store/modules/checkout/actions.js b/core/store/modules/checkout/actions.js
index b96fc4f891..10bdd461e0 100644
--- a/core/store/modules/checkout/actions.js
+++ b/core/store/modules/checkout/actions.js
@@ -1,6 +1,6 @@
import * as types from '../../mutation-types'
-import EventBus from 'core/plugins/event-bus'
-import i18n from 'core/lib/i18n'
+import EventBus from '../../lib/event-bus'
+import i18n from '../../lib/i18n'
export default {
/**
@@ -22,7 +22,7 @@ export default {
EventBus.$emit('notification', {
type: 'error',
message: i18n.t('Internal validation error. Please check if all required fields are filled in. Please contact us on contributors@vuestorefront.io'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
} else {
console.error(e)
@@ -39,19 +39,19 @@ export default {
commit(types.CHECKOUT_SAVE_PAYMENT_DETAILS, paymentDetails)
},
load ({ commit }) {
- global.db.checkoutFieldsCollection.getItem('personal-details', (err, details) => {
+ global.$VS.db.checkoutFieldsCollection.getItem('personal-details', (err, details) => {
if (err) throw new Error(err)
if (details) {
commit(types.CHECKOUT_LOAD_PERSONAL_DETAILS, details)
}
})
- global.db.checkoutFieldsCollection.getItem('shipping-details', (err, details) => {
+ global.$VS.db.checkoutFieldsCollection.getItem('shipping-details', (err, details) => {
if (err) throw new Error(err)
if (details) {
commit(types.CHECKOUT_LOAD_SHIPPING_DETAILS, details)
}
})
- global.db.checkoutFieldsCollection.getItem('payment-details', (err, details) => {
+ global.$VS.db.checkoutFieldsCollection.getItem('payment-details', (err, details) => {
if (err) throw new Error(err)
if (details) {
commit(types.CHECKOUT_LOAD_PAYMENT_DETAILS, details)
diff --git a/core/store/modules/claims/actions.js b/core/store/modules/claims/actions.js
index e654240ea9..5929739d2d 100644
--- a/core/store/modules/claims/actions.js
+++ b/core/store/modules/claims/actions.js
@@ -1,6 +1,6 @@
export default {
set (context, { claimCode, value, description }) {
- const claimCollection = global.db.claimsCollection
+ const claimCollection = global.$VS.db.claimsCollection
claimCollection.setItem(claimCode, {
code: claimCode,
created_at: new Date(),
@@ -12,14 +12,14 @@ export default {
},
unset (context, { claimCode }) {
- const claimCollection = global.db.claimsCollection
+ const claimCollection = global.$VS.db.claimsCollection
claimCollection.removeItem(claimCode).catch((reason) => {
console.error(reason) // it doesn't work on SSR
})
},
check (context, { claimCode }) {
- const claimCollection = global.db.claimsCollection
+ const claimCollection = global.$VS.db.claimsCollection
return claimCollection.getItem(claimCode).catch((reason) => {
console.error(reason) // it doesn't work on SSR
})
diff --git a/core/store/modules/compare/actions.js b/core/store/modules/compare/actions.js
index 58968d17f7..7d64e8b3de 100644
--- a/core/store/modules/compare/actions.js
+++ b/core/store/modules/compare/actions.js
@@ -1,12 +1,12 @@
import * as types from '../../mutation-types'
-import EventBus from 'core/plugins/event-bus'
-import { htmlDecode } from 'core/filters'
-import i18n from 'core/lib/i18n'
+import EventBus from '../../lib/event-bus'
+import { htmlDecode } from '../../lib/filters'
+import i18n from '../../lib/i18n'
export default {
load (context) {
const commit = context.commit
- global.db.compareCollection.getItem('current-compare', (err, storedItems) => {
+ global.$VS.db.compareCollection.getItem('current-compare', (err, storedItems) => {
if (err) throw new Error(err)
commit(types.COMPARE_LOAD_COMPARE, storedItems)
})
@@ -16,7 +16,7 @@ export default {
EventBus.$emit('notification', {
type: 'success',
message: i18n.t('Product {productName} has been added to the compare!', { productName: htmlDecode(product.name) }),
- action1: {label: 'OK', action: 'close'}
+ action1: {label: i18n.t('OK'), action: 'close'}
})
},
removeItem ({commit}, product) {
@@ -24,7 +24,7 @@ export default {
EventBus.$emit('notification', {
type: 'success',
message: i18n.t('Product {productName} has been removed from compare!', { productName: htmlDecode(product.name) }),
- action1: {label: 'OK', action: 'close'}
+ action1: {label: i18n.t('OK'), action: 'close'}
})
}
}
diff --git a/core/store/modules/order/actions.js b/core/store/modules/order/actions.js
index 96348ba00a..eebc935f3e 100644
--- a/core/store/modules/order/actions.js
+++ b/core/store/modules/order/actions.js
@@ -1,6 +1,6 @@
import * as types from '../../mutation-types'
-import EventBus from 'core/plugins/event-bus'
-import { ValidationError } from 'core/lib/exceptions'
+import EventBus from '../../lib/event-bus'
+import { ValidationError } from '../../lib/exceptions'
const Ajv = require('ajv') // json validator
export default {
@@ -11,7 +11,7 @@ export default {
*/
placeOrder ({ commit }, order) {
const ajv = new Ajv()
- const validate = ajv.compile(require('core/models/order.schema.json'))
+ const validate = ajv.compile(require('./order.schema.json'))
if (!validate(order)) { // schema validation of upcoming order
throw new ValidationError(validate.errors)
diff --git a/core/store/modules/order/mutations.js b/core/store/modules/order/mutations.js
index 37a0b6fd7f..f14b462fca 100644
--- a/core/store/modules/order/mutations.js
+++ b/core/store/modules/order/mutations.js
@@ -1,7 +1,7 @@
import * as types from '../../mutation-types'
-import * as entities from 'core/lib/entities'
-import EventBus from 'core/plugins/event-bus'
-import config from 'config'
+import * as entities from '../../lib/entities'
+import EventBus from '../../lib/event-bus'
+import config from '../../lib/config'
export default {
/**
@@ -9,7 +9,7 @@ export default {
* @param {Object} product data format for products is described in /doc/ElasticSearch data formats.md
*/
[types.ORDER_PLACE_ORDER] (state, order) {
- const ordersCollection = global.db.ordersCollection
+ const ordersCollection = global.$VS.db.ordersCollection
const orderId = entities.uniqueEntityId(order) // timestamp as a order id is not the best we can do but it's enough
order.order_id = orderId.toString()
order.transmited = false
diff --git a/core/models/order.schema.json b/core/store/modules/order/order.schema.json
similarity index 100%
rename from core/models/order.schema.json
rename to core/store/modules/order/order.schema.json
diff --git a/core/store/modules/payment/index.js b/core/store/modules/payment/index.js
index dfe8a37a88..f3eeced180 100644
--- a/core/store/modules/payment/index.js
+++ b/core/store/modules/payment/index.js
@@ -2,5 +2,26 @@ export default {
namespaced: true,
state: {
methods: []
+ },
+ mutations: {
+ addMethod (state, paymentMethod) {
+ state.methods.push(paymentMethod)
+ },
+ replaceMethods (state, paymentMethods) {
+ state.methods = paymentMethods
+ }
+ },
+ actions: {
+ addMethod ({commit}, paymentMethod) {
+ commit('addMethod', paymentMethod)
+ },
+ replaceMethods ({commit}, paymentMethods) {
+ commit('replaceMethods', paymentMethods)
+ }
+ },
+ getters: {
+ paymentMethods (state) {
+ return state.methods
+ }
}
}
diff --git a/core/store/modules/product/actions.js b/core/store/modules/product/actions.js
index d2f23fef67..39fb666703 100644
--- a/core/store/modules/product/actions.js
+++ b/core/store/modules/product/actions.js
@@ -1,14 +1,14 @@
-import config from 'config'
+import config from '../../lib/config'
import * as types from '../../mutation-types'
-import { breadCrumbRoutes } from 'core/helpers'
+import { breadCrumbRoutes, productThumbnailPath } from '../../helpers'
import { configureProductAsync, doPlatformPricesSync, calculateTaxes } from './helpers'
import bodybuilder from 'bodybuilder'
-import { entityKeyName } from 'core/lib/entities'
-import { optionLabel } from 'core/store/modules/attribute/helpers'
-import { quickSearchByQuery } from 'core/lib/search'
-import EventBus from 'core/plugins/event-bus'
+import { entityKeyName } from '../../lib/entities'
+import { optionLabel } from '../attribute/helpers'
+import { quickSearchByQuery } from '../../lib/search'
+import EventBus from '../../lib/event-bus'
import _ from 'lodash'
-import { productThumbnailPath } from '../../../helpers'
+import rootStore from '../../'
export default {
/**
@@ -100,7 +100,7 @@ export default {
options: { sku: pl.linked_product_sku },
setCurrentProduct: false,
selectDefaultVariant: false
- }).catch(err => { console.log('err'); console.error(err) }).then((asocProd) => {
+ }).catch(err => { console.error(err) }).then((asocProd) => {
pl.product = asocProd
pl.product.qty = 1
product.price += pl.product.price
@@ -179,8 +179,11 @@ export default {
label: optionLabel(context.rootState.attribute, { attributeKey: selectedOption.attribute_code, searchBy: 'code', optionId: selectedOption.value })
}
context.state.current_configuration[attr.attribute_code] = confVal
- const fallbackKey = attr.frontend_label ? attr.frontend_label : attr.default_frontend_label
- context.state.current_configuration[fallbackKey.toLowerCase()] = confVal // @deprecated fallback for VS <= 1.0RC
+ // @deprecated fallback for VS <= 1.0RC
+ if (!('setupVariantByAttributeCode' in config.products) || config.products.setupVariantByAttributeCode === false) {
+ const fallbackKey = attr.frontend_label ? attr.frontend_label : attr.default_frontend_label
+ context.state.current_configuration[fallbackKey.toLowerCase()] = confVal // @deprecated fallback for VS <= 1.0RC
+ }
}
}).catch(err => {
console.error(err)
@@ -196,11 +199,33 @@ export default {
* @param {Int} size page size
* @return {Promise}
*/
- list (context, { query, start = 0, size = 50, entityType = 'product', sort = '', cacheByKey = 'sku', prefetchGroupProducts = true, updateState = true, meta = {} }) {
- return quickSearchByQuery({ query, start, size, entityType, sort }).then((resp) => {
+ list (context, { query, start = 0, size = 50, entityType = 'product', sort = '', cacheByKey = 'sku', prefetchGroupProducts = true, updateState = true, meta = {}, excludeFields = null, includeFields = null, configuration = null, append = false }) {
+ let isCacheable = (includeFields === null && excludeFields === null)
+ if (isCacheable) {
+ console.log('Entity cache is enabled for productList')
+ } else {
+ console.log('Entity cache is disabled for productList')
+ }
+
+ if (config.entities.optimize) {
+ if (excludeFields === null) { // if not set explicitly we do optimize the amount of data by using some default field list; this is cacheable
+ excludeFields = config.entities.product.excludeFields
+ }
+ if (includeFields === null) { // if not set explicitly we do optimize the amount of data by using some default field list; this is cacheable
+ includeFields = config.entities.product.includeFields
+ }
+ }
+ return quickSearchByQuery({ query, start, size, entityType, sort, excludeFields, includeFields }).then((resp) => {
+ if (resp.items && resp.items.length && configuration) { // preconfigure products; eg: after filters
+ for (let product of resp.items) {
+ let selectedVariant = configureProductAsync(context, { product: product, configuration: configuration, selectDefaultVariant: false })
+ product.parentSku = product.sku
+ Object.assign(product, selectedVariant)
+ }
+ }
return calculateTaxes(resp.items, context).then((updatedProducts) => {
// handle cache
- const cache = global.db.elasticCacheCollection
+ const cache = global.$VS.db.elasticCacheCollection
for (let prod of resp.items) { // we store each product separately in cache to have offline access to products/single method
if (prod.configurable_children) {
for (let configurableChild of prod.configurable_children) {
@@ -216,17 +241,19 @@ export default {
cacheByKey = 'id'
}
const cacheKey = entityKeyName(cacheByKey, prod[cacheByKey])
- cache.setItem(cacheKey, prod)
- .catch((err) => {
- console.error('Cannot store cache for ' + cacheKey + ', ' + err)
- })
+ if (isCacheable) { // store cache only for full loads
+ cache.setItem(cacheKey, prod)
+ .catch((err) => {
+ console.error('Cannot store cache for ' + cacheKey, err)
+ })
+ }
if (prod.type_id === 'grouped' && prefetchGroupProducts) {
context.dispatch('setupAssociated', { product: prod })
}
}
// commit update products list mutation
if (updateState) {
- context.commit(types.CATALOG_UPD_PRODUCTS, resp)
+ context.commit(types.CATALOG_UPD_PRODUCTS, { products: resp, append: append })
}
EventBus.$emit('product-after-list', { query: query, start: start, size: size, sort: sort, entityType: entityType, meta: meta, result: resp })
return resp
@@ -247,7 +274,7 @@ export default {
return new Promise((resolve, reject) => {
const benchmarkTime = new Date()
- const cache = global.db.elasticCacheCollection
+ const cache = global.$VS.db.elasticCacheCollection
cache.getItem(cacheKey, (err, res) => {
// report errors
if (err) {
@@ -263,6 +290,9 @@ export default {
}
// check is prod has configurable children
const hasConfigurableChildren = prod && prod.configurable_children && prod.configurable_children.length
+ if (prod.type_id === 'simple' && hasConfigurableChildren) { // workaround for #983
+ prod = _.omit(prod, ['configurable_children', 'configurable_options'])
+ }
// set current product - configurable or not
if (prod.type_id === 'configurable' && hasConfigurableChildren) {
// set first available configuration
@@ -279,15 +309,15 @@ export default {
const cachedProduct = setupProduct(res)
if (config.products.alwaysSyncPlatformPricesOver) {
doPlatformPricesSync([cachedProduct]).then((products) => {
- EventBus.$emitFilter('product-after-single', { key: key, options: options, product: products[0] })
+ if (EventBus.$emitFilter) EventBus.$emitFilter('product-after-single', { key: key, options: options, product: products[0] })
resolve(products[0])
})
if (!config.products.waitForPlatformSync) {
- EventBus.$emitFilter('product-after-single', { key: key, options: options, product: cachedProduct })
+ if (EventBus.$emitFilter) EventBus.$emitFilter('product-after-single', { key: key, options: options, product: cachedProduct })
resolve(cachedProduct)
}
} else {
- EventBus.$emitFilter('product-after-single', { key: key, options: options, product: cachedProduct })
+ if (EventBus.$emitFilter) EventBus.$emitFilter('product-after-single', { key: key, options: options, product: cachedProduct })
resolve(cachedProduct)
}
} else {
@@ -298,10 +328,10 @@ export default {
prefetchGroupProducts: false
}).then((res) => {
if (res && res.items && res.items.length) {
- EventBus.$emitFilter('product-after-single', { key: key, options: options, product: res.items[0] })
+ if (EventBus.$emitFilter) EventBus.$emitFilter('product-after-single', { key: key, options: options, product: res.items[0] })
resolve(setupProduct(res.items[0]))
} else {
- reject(Error('Product query returned empty result'))
+ reject(new Error('Product query returned empty result'))
}
})
}
@@ -350,5 +380,66 @@ export default {
*/
related (context, { key = 'related-products', items }) {
context.commit(types.CATALOG_UPD_RELATED, { key, items })
+ },
+
+ /**
+ * Load the product data
+ */
+ fetch (context, { parentSku, childSku = null }) {
+ // pass both id and sku to render a product
+ const productSingleOptions = {
+ sku: parentSku,
+ childSku: childSku
+ }
+ return context.dispatch('single', { options: productSingleOptions }).then((product) => {
+ let subloaders = []
+ if (product) {
+ subloaders.push(context.dispatch('setupBreadcrumbs', { product: product }))
+
+ subloaders.push(rootStore.dispatch('attribute/list', { // load attributes to be shown on the product details
+ filterValues: [true],
+ filterField: 'is_user_defined',
+ includeFields: config.entities.optimize ? config.entities.attribute.includeFields : null
+ }))
+
+ subloaders.push(context.dispatch('setupVariants', { product: product }))
+ subloaders.push(context.dispatch('setupAssociated', { product: product }))
+
+ if (config.products.preventConfigurableChildrenDirectAccess) {
+ subloaders.push(context.dispatch('checkConfigurableParent', { product: product }))
+ }
+ } else { // error or redirect
+
+ }
+ return subloaders
+ })
+ },
+ /**
+ * Load the product data - async version for asyncData()
+ */
+ fetchAsync (context, { parentSku, childSku = null, route = null }) {
+ return new Promise((resolve, reject) => {
+ console.log('Entering fetchAsync for Product root ' + new Date(), parentSku, childSku)
+ EventBus.$emit('product-before-load', { store: rootStore, route: route })
+ context.dispatch('reset').then(() => {
+ context.dispatch('fetch', { parentSku: parentSku, childSku: childSku }).then((subpromises) => {
+ Promise.all(subpromises).then(subresults => {
+ EventBus.$emitFilter('product-after-load', { store: rootStore, route: route }).then((results) => {
+ return resolve()
+ }).catch((err) => {
+ console.error(err)
+ return resolve()
+ })
+ }).catch(errs => {
+ console.error(errs)
+ return resolve()
+ })
+ }).catch(err => {
+ console.error(err)
+ reject(err)
+ })
+ })
+ })
}
+
}
diff --git a/core/store/modules/product/helpers.js b/core/store/modules/product/helpers.js
index e155604581..2d884398d4 100644
--- a/core/store/modules/product/helpers.js
+++ b/core/store/modules/product/helpers.js
@@ -1,7 +1,7 @@
-import config from 'config'
+import config from '../../lib/config'
import rootStore from '../../'
-import EventBus from 'core/plugins/event-bus'
-import { calculateProductTax } from 'core/lib/taxcalc'
+import EventBus from '../../lib/event-bus'
+import { calculateProductTax } from '../../lib/taxcalc'
import _ from 'lodash'
export function syncProductPrice (product, backProduct) { // TODO: we probably need to update the Net prices here as well
@@ -100,7 +100,7 @@ export function doPlatformPricesSync (products) {
}
resolve(products)
})
- if (!config.products.waitForPlatformSync && !global.isSSR) {
+ if (!config.products.waitForPlatformSync && !global.$VS.isSSR) {
console.log('Returning products, the prices yet to come from backend!')
for (let product of products) {
product.price_is_current = false // in case we're syncing up the prices we should mark if we do have current or not
@@ -127,7 +127,7 @@ export function calculateTaxes (products, store) {
} else {
store.dispatch('tax/list', { query: '' }, { root: true }).then((tcs) => { // TODO: move it to the server side for one requests OR cache in indexedDb
for (let product of products) {
- product = calculateProductTax(product, tcs.items, global.__TAX_COUNTRY__, global.__TAX_REGION__)
+ product = calculateProductTax(product, tcs.items, global.$VS.__TAX_COUNTRY__, global.$VS.__TAX_REGION__)
}
doPlatformPricesSync(products).then((products) => {
resolve(products)
diff --git a/core/store/modules/product/index.js b/core/store/modules/product/index.js
index 2e8d5d8742..33ea1b14e5 100644
--- a/core/store/modules/product/index.js
+++ b/core/store/modules/product/index.js
@@ -13,7 +13,8 @@ export default {
list: [],
original: null, // default, not configured product
related: {},
- offlineImage: null
+ offlineImage: null,
+ current_query: null
},
getters,
actions,
diff --git a/core/store/modules/product/mutations.js b/core/store/modules/product/mutations.js
index a31c80adc4..4fe4fd2ed0 100644
--- a/core/store/modules/product/mutations.js
+++ b/core/store/modules/product/mutations.js
@@ -1,13 +1,19 @@
import * as types from '../../mutation-types'
-import EventBus from 'core/plugins/event-bus'
+import EventBus from '../../lib/event-bus'
export default {
[types.CATALOG_UPD_RELATED] (state, { key, items }) {
state.related[key] = items
EventBus.$emit('product-after-related', { key: key, items: items })
},
- [types.CATALOG_UPD_PRODUCTS] (state, products) {
- state.list = products // extract fields from ES _source
+ [types.CATALOG_UPD_PRODUCTS] (state, { products, append }) {
+ if (append === false) {
+ state.list = products
+ } else {
+ state.list.start = products.start
+ state.list.perPage = products.perPage
+ state.list.items = state.list.items.concat(products.items)
+ }
},
[types.CATALOG_SET_PRODUCT_CURRENT] (state, product) {
state.current = product
diff --git a/core/store/modules/shipping/index.js b/core/store/modules/shipping/index.js
index ba00cf68a2..ac19d03972 100644
--- a/core/store/modules/shipping/index.js
+++ b/core/store/modules/shipping/index.js
@@ -1,8 +1,27 @@
-import shippingtMethods from 'core/resource/shipping_methods.json'
-
export default {
namespaced: true,
state: {
- methods: shippingtMethods
+ methods: []
+ },
+ mutations: {
+ addMethod (state, shippingMethods) {
+ state.methods.push(shippingMethods)
+ },
+ replaceMethods (state, shippingMethods) {
+ state.methods = shippingMethods
+ }
+ },
+ actions: {
+ addMethod ({commit}, shippingMethod) {
+ commit('addMethod', shippingMethod)
+ },
+ replaceMethods ({commit}, shippingMethods) {
+ commit('replaceMethods', shippingMethods)
+ }
+ },
+ getters: {
+ shippingMethods (state) {
+ return state.methods
+ }
}
}
diff --git a/core/store/modules/stock/actions.js b/core/store/modules/stock/actions.js
index 2b2329414e..d9cc1d8dbd 100644
--- a/core/store/modules/stock/actions.js
+++ b/core/store/modules/stock/actions.js
@@ -1,4 +1,4 @@
-import config from 'config'
+import config from '../../lib/config'
export default {
/**
@@ -16,7 +16,7 @@ export default {
product_sku: product.sku,
callback_event: 'stock-after-check'
}, { root: true }).then(task => {
- resolve({ qty: product.stock.qty, status: product.stock.is_in_stock ? 'ok' : 'out_of_stock', onlineCheckTaskId: task.task_id }) // if not online, cannot check the source of true here
+ resolve({ qty: product.stock ? product.stock.qty : 0, status: product.stock ? (product.stock.is_in_stock ? 'ok' : 'out_of_stock') : 'ok', onlineCheckTaskId: task.task_id }) // if online we can return ok because it will be verified anyway
})
} else {
resolve({ qty: product.stock ? product.stock.qty : 0, status: product.stock ? (product.stock.is_in_stock ? 'ok' : 'out_of_stock') : 'volatile' }) // if not online, cannot check the source of true here
diff --git a/core/store/modules/stock/index.js b/core/store/modules/stock/index.js
index f26a714283..adac7a78de 100644
--- a/core/store/modules/stock/index.js
+++ b/core/store/modules/stock/index.js
@@ -1,8 +1,8 @@
import actions from './actions'
import store from '../../'
-import EventBus from 'core/plugins/event-bus'
+import EventBus from '../../lib/event-bus'
import * as types from '../../mutation-types'
-import config from 'config'
+import config from '../../lib/config'
EventBus.$on('stock-after-check', (event) => { // example stock check callback
store.dispatch('cart/getItem', event.product_sku).then((cartItem) => {
diff --git a/core/store/modules/sync/actions.js b/core/store/modules/sync/actions.js
index e4638d11c5..7ed25804ce 100644
--- a/core/store/modules/sync/actions.js
+++ b/core/store/modules/sync/actions.js
@@ -1,5 +1,5 @@
import * as types from '../../mutation-types'
-import { execute as taskExecute } from 'core/lib/task'
+import { execute as taskExecute } from '../../lib/task'
import { _prepareTask } from './helpers'
import * as localForage from 'localforage'
@@ -31,7 +31,7 @@ export default {
storeName: 'carts'
})
return new Promise((resolve, reject) => {
- if (global.isSSR) {
+ if (global.$VS.isSSR) {
taskExecute(task, null, null).then((result) => {
resolve(result)
}).catch(err => {
diff --git a/core/store/modules/sync/helpers.js b/core/store/modules/sync/helpers.js
index 9dd44c5f75..082582eeb1 100644
--- a/core/store/modules/sync/helpers.js
+++ b/core/store/modules/sync/helpers.js
@@ -1,4 +1,4 @@
-import * as entities from 'core/lib/entities'
+import * as entities from '../../lib/entities'
export function _prepareTask (task) {
const taskId = entities.uniqueEntityId(task) // timestamp as a order id is not the best we can do but it's enough
diff --git a/core/store/modules/sync/mutations.js b/core/store/modules/sync/mutations.js
index 45794e36b5..65ce40a684 100644
--- a/core/store/modules/sync/mutations.js
+++ b/core/store/modules/sync/mutations.js
@@ -1,7 +1,7 @@
import * as types from '../../mutation-types'
import { _prepareTask } from './helpers'
-import EventBus from 'core/plugins/event-bus'
-import config from 'config'
+import EventBus from '../../lib/event-bus'
+import config from '../../lib/config'
export default {
/**
@@ -9,7 +9,7 @@ export default {
* @param {Object} product data format for products is described in /doc/ElasticSearch data formats.md
*/
[types.SYNC_ADD_TASK] (state, task) {
- const tasksCollection = global.db.syncTaskCollection
+ const tasksCollection = global.$VS.db.syncTaskCollection
task = _prepareTask(task)
tasksCollection.setItem(task.task_id.toString(), task).catch((reason) => {
console.error(reason) // it doesn't work on SSR
diff --git a/core/store/modules/tax/actions.js b/core/store/modules/tax/actions.js
index 19836e44d4..773031e184 100644
--- a/core/store/modules/tax/actions.js
+++ b/core/store/modules/tax/actions.js
@@ -1,5 +1,5 @@
import * as types from '../../mutation-types'
-import { quickSearchByQuery } from 'core/lib/search'
+import { quickSearchByQuery } from '../../lib/search'
import builder from 'bodybuilder'
export default {
diff --git a/core/store/modules/tax/mutations.js b/core/store/modules/tax/mutations.js
index 6a661aceaf..3608b44e1a 100644
--- a/core/store/modules/tax/mutations.js
+++ b/core/store/modules/tax/mutations.js
@@ -1,9 +1,9 @@
import * as types from '../../mutation-types'
-import { entityKeyName } from 'core/lib/entities'
+import { entityKeyName } from '../../lib/entities'
export default {
[types.TAX_UPDATE_RULES] (state, taxClasses) {
- const cache = global.db.elasticCacheCollection
+ const cache = global.$VS.db.elasticCacheCollection
for (let tc of taxClasses.items) { // we store each product separately in cache to have offline acces for products/single method
const cacheKey = entityKeyName('tc', tc.id)
cache.setItem(cacheKey, tc).catch((err) => {
diff --git a/core/store/modules/user/actions.js b/core/store/modules/user/actions.js
index f689ab9bf1..a821023994 100644
--- a/core/store/modules/user/actions.js
+++ b/core/store/modules/user/actions.js
@@ -1,15 +1,15 @@
-import EventBus from 'core/plugins/event-bus'
+import EventBus from '../../lib/event-bus'
import * as types from '../../mutation-types'
-import config from 'config'
+import config from '../../lib/config'
import store from '../../'
+import { ValidationError } from '../../lib/exceptions'
+import i18n from '../../lib/i18n'
const Ajv = require('ajv') // json validator
-import { ValidationError } from 'core/lib/exceptions'
-import i18n from 'core/lib/i18n'
export default {
startSession (context) {
context.commit(types.USER_START_SESSION)
- const cache = global.db.usersCollection
+ const cache = global.$VS.db.usersCollection
cache.getItem('current-token', (err, res) => {
if (err) {
console.error(err)
@@ -17,12 +17,12 @@ export default {
}
if (res) {
- context.commit(types.USER_TOKEN_CHANGED, res)
+ context.commit(types.USER_TOKEN_CHANGED, { newToken: res })
}
EventBus.$emit('session-after-started')
})
- const newsletterStorage = global.db.newsletterPreferencesCollection
+ const newsletterStorage = global.$VS.db.newsletterPreferencesCollection
newsletterStorage.getItem('newsletter-preferences', (err, res) => {
if (err) {
console.error(err)
@@ -39,22 +39,17 @@ export default {
*/
resetPassword (context, { email }) {
console.log({ email: email })
- return fetch(config.users.endpoint + '/resetPassword', {
- method: 'POST',
- mode: 'cors',
- headers: {
- 'Accept': 'application/json, text/plain, */*',
- 'Content-Type': 'application/json'
- },
- body: JSON.stringify({ email: email })
- }).then((response) => {
- const contentType = response.headers.get('content-type')
- if (contentType && contentType.includes('application/json')) {
- return response.json()
- } else {
- console.error('Error with response - bad content-type!')
+ return context.dispatch('sync/execute', { url: config.users.resetPassword_endpoint,
+ payload: {
+ method: 'POST',
+ mode: 'cors',
+ headers: {
+ 'Accept': 'application/json, text/plain, */*',
+ 'Content-Type': 'application/json'
+ },
+ body: JSON.stringify({ email: email })
}
-
+ }, { root: true }).then((response) => {
return response
})
},
@@ -62,7 +57,7 @@ export default {
* Login user and return user profile and current token
*/
login (context, { username, password }) {
- return fetch(config.users.endpoint + '/login', { method: 'POST',
+ return fetch(config.users.login_endpoint, { method: 'POST',
mode: 'cors',
headers: {
'Accept': 'application/json, text/plain, */*',
@@ -72,7 +67,7 @@ export default {
}).then(resp => { return resp.json() })
.then((resp) => {
if (resp.code === 200) {
- context.commit(types.USER_TOKEN_CHANGED, resp.result)
+ context.commit(types.USER_TOKEN_CHANGED, { newToken: resp.result, meta: resp.meta }) // TODO: handle the "Refresh-token" header
context.dispatch('me', { refresh: true, useCache: false }).then(result => {})
context.dispatch('getOrdersHistory', { refresh: true, useCache: false }).then(result => {})
}
@@ -83,7 +78,7 @@ export default {
* Login user and return user profile and current token
*/
register (context, { email, firstname, lastname, password }) {
- return fetch(config.users.endpoint + '/create', { method: 'POST',
+ return fetch(config.users.create_endpoint, { method: 'POST',
mode: 'cors',
headers: {
'Accept': 'application/json, text/plain, */*',
@@ -99,6 +94,35 @@ export default {
return resp
})
},
+
+ /**
+ * Invalidate user token
+ */
+ refresh (context) {
+ return new Promise((resolve, reject) => {
+ const usersCollection = global.$VS.db.usersCollection
+ usersCollection.getItem('current-refresh-token', (err, refreshToken) => {
+ if (err) {
+ console.error(err)
+ }
+ return fetch(config.users.refresh_endpoint, { method: 'POST',
+ mode: 'cors',
+ headers: {
+ 'Accept': 'application/json, text/plain, */*',
+ 'Content-Type': 'application/json'
+ },
+ body: JSON.stringify({ refreshToken: refreshToken })
+ }).then(resp => { return resp.json() })
+ .then((resp) => {
+ if (resp.code === 200) {
+ context.commit(types.USER_TOKEN_CHANGED, { newToken: resp.result, meta: resp.meta ? resp.meta : null }) // TODO: handle the "Refresh-token" header
+ }
+ resolve(resp)
+ }).catch((exc) => reject(exc))
+ })
+ })
+ },
+
/**
* Load current user profile
*/
@@ -108,7 +132,7 @@ export default {
console.log('No User token, user unathorized')
return resolve(null)
}
- const cache = global.db.usersCollection
+ const cache = global.$VS.db.usersCollection
let resolvedFromCache = false
if (useCache === true) { // after login for example we shouldn't use cache to be sure we're loading currently logged in user
@@ -119,6 +143,7 @@ export default {
}
if (res) {
+ global.$VS.userTokenInvalidateLock = 0
context.commit(types.USER_INFO_LOADED, res)
EventBus.$emit('user-after-loggedin', res)
@@ -130,22 +155,23 @@ export default {
}
if (refresh) {
- console.log(config.users.endpoint + '/me?token=' + context.state.token)
- return fetch(config.users.endpoint + '/me?token=' + context.state.token, { method: 'GET',
- mode: 'cors',
- headers: {
- 'Accept': 'application/json, text/plain, */*',
- 'Content-Type': 'application/json'
+ return context.dispatch('sync/execute', { url: config.users.me_endpoint,
+ payload: { method: 'GET',
+ mode: 'cors',
+ headers: {
+ 'Accept': 'application/json, text/plain, */*',
+ 'Content-Type': 'application/json'
+ }
}
- }).then(resp => { return resp.json() })
+ }, { root: true })
.then((resp) => {
- if (resp.code === 200) {
+ if (resp.resultCode === 200) {
context.commit(types.USER_INFO_LOADED, resp.result) // this also stores the current user to localForage
EventBus.$emit('user-after-loggedin', resp.result)
}
if (!resolvedFromCache) {
- resolve(resp.code === 200 ? resp : null)
+ resolve(resp.resultCode === 200 ? resp : null)
}
return resp
})
@@ -161,19 +187,18 @@ export default {
*/
update (context, userData) {
const ajv = new Ajv()
- const validate = ajv.compile(require('core/models/userProfile.schema.json'))
+ const validate = ajv.compile(require('./userProfile.schema.json'))
if (!validate(userData)) { // schema validation of user profile data
- console.error(validate.errors)
EventBus.$emit('notification', {
type: 'error',
message: i18n.t('Internal validation error. Please check if all required fields are filled in. Please contact us on contributors@vuestorefront.io'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
throw new ValidationError(validate.errors)
} else {
return new Promise((resolve, reject) => {
- context.dispatch('sync/queue', { url: config.users.endpoint + '/me?token={{token}}',
+ context.dispatch('sync/queue', { url: config.users.me_endpoint,
payload: {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
@@ -195,46 +220,47 @@ export default {
*/
changePassword (context, passwordData) {
console.log(context)
- return fetch(config.users.endpoint + '/changePassword?token=' + context.state.token,
- {
+ return context.dispatch('sync/execute', { url: config.users.changePassword_endpoint,
+ payload: {
method: 'POST',
mode: 'cors',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(passwordData)
}
- ).then(resp => { return resp.json() })
- .then((resp) => {
- if (resp.code === 200) {
- EventBus.$emit('notification', {
- type: 'success',
- message: 'Password has successfully been changed',
- action1: { label: 'OK', action: 'close' }
- })
+ }).then((resp) => {
+ if (resp.code === 200) {
+ EventBus.$emit('notification', {
+ type: 'success',
+ message: 'Password has successfully been changed',
+ action1: { label: i18n.t('OK'), action: 'close' }
+ })
- store.dispatch('user/login', {
- username: context.state.current.email,
- password: passwordData.newPassword
- })
- } else {
- EventBus.$emit('notification', {
- type: 'error',
- message: i18n.t(resp.result),
- action1: { label: 'OK', action: 'close' }
- })
- }
- })
+ store.dispatch('user/login', {
+ username: context.state.current.email,
+ password: passwordData.newPassword
+ })
+ } else {
+ EventBus.$emit('notification', {
+ type: 'error',
+ message: i18n.t(resp.result),
+ action1: { label: i18n.t('OK'), action: 'close' }
+ })
+ }
+ })
},
/**
* Logout user
*/
- logout (context) {
+ logout (context, { silent = false }) {
context.commit(types.USER_END_SESSION)
context.dispatch('cart/serverTokenClear', {}, { root: true })
- EventBus.$emit('notification', {
- type: 'success',
- message: i18n.t('You\'re logged out'),
- action1: { label: 'OK', action: 'close' }
- })
+ if (!silent) {
+ EventBus.$emit('notification', {
+ type: 'success',
+ message: i18n.t('You\'re logged out'),
+ action1: { label: i18n.t('OK'), action: 'close' }
+ })
+ }
},
/**
* Save user's newsletter preferences
@@ -244,7 +270,7 @@ export default {
EventBus.$emit('notification', {
type: 'success',
message: i18n.t('Newsletter preferences have successfully been updated'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
},
/**
@@ -256,7 +282,7 @@ export default {
console.log('No User token, user unathorized')
return resolve(null)
}
- const cache = global.db.ordersHistoryCollection
+ const cache = global.$VS.db.ordersHistoryCollection
let resolvedFromCache = false
if (useCache === true) { // after login for example we shouldn't use cache to be sure we're loading currently logged in user
@@ -278,25 +304,25 @@ export default {
}
if (refresh) {
- console.log(config.users.endpoint + '/order-history?token=' + context.state.token)
- return fetch(config.users.endpoint + '/order-history?token=' + context.state.token, { method: 'GET',
- mode: 'cors',
- headers: {
- 'Accept': 'application/json, text/plain, */*',
- 'Content-Type': 'application/json'
+ return context.dispatch('sync/execute', { url: config.users.history_endpoint,
+ payload: { method: 'GET',
+ mode: 'cors',
+ headers: {
+ 'Accept': 'application/json, text/plain, */*',
+ 'Content-Type': 'application/json'
+ }
}
- }).then(resp => { return resp.json() })
- .then((resp) => {
- if (resp.code === 200) {
- context.commit(types.USER_ORDERS_HISTORY_LOADED, resp.result) // this also stores the current user to localForage
+ }, { root: true }).then((resp) => {
+ if (resp.code === 200) {
+ context.commit(types.USER_ORDERS_HISTORY_LOADED, resp.result) // this also stores the current user to localForage
- EventBus.$emit('user-after-loaded-orders', resp.result)
- }
- if (!resolvedFromCache) {
- resolve(resp.code === 200 ? resp : null)
- }
- return resp
- })
+ EventBus.$emit('user-after-loaded-orders', resp.result)
+ }
+ if (!resolvedFromCache) {
+ resolve(resp.code === 200 ? resp : null)
+ }
+ return resp
+ })
} else {
if (!resolvedFromCache) {
resolve(null)
diff --git a/core/store/modules/user/index.js b/core/store/modules/user/index.js
index d16e9105d3..a9b4e55e90 100644
--- a/core/store/modules/user/index.js
+++ b/core/store/modules/user/index.js
@@ -1,8 +1,8 @@
import actions from './actions'
import getters from './getters'
import mutations from './mutations'
-import EventBus from 'core/plugins/event-bus'
-import i18n from 'core/lib/i18n'
+import EventBus from '../../lib/event-bus'
+import i18n from '../../lib/i18n'
import store from '../../'
EventBus.$on('user-after-update', (event) => {
@@ -10,7 +10,7 @@ EventBus.$on('user-after-update', (event) => {
EventBus.$emit('notification', {
type: 'success',
message: i18n.t('Account data has successfully been updated'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
store.dispatch('user/refreshCurrentUser', event.result)
}
diff --git a/core/store/modules/user/mutations.js b/core/store/modules/user/mutations.js
index 4fc36f6182..1f1c40cdcf 100644
--- a/core/store/modules/user/mutations.js
+++ b/core/store/modules/user/mutations.js
@@ -1,8 +1,12 @@
import * as types from '../../mutation-types'
export default {
- [types.USER_TOKEN_CHANGED] (state, newToken) {
- state.token = newToken
+ [types.USER_TOKEN_CHANGED] (state, payload) {
+ state.token = payload.newToken
+ if (payload.meta && payload.meta.refreshToken) {
+ state.refreshToken = payload.meta.refreshToken // store the refresh token
+ console.log('Refresh token is set to', state.refreshToken)
+ }
},
[types.USER_START_SESSION] (state) {
state.session_started = new Date()
diff --git a/core/models/userProfile.schema.json b/core/store/modules/user/userProfile.schema.json
similarity index 90%
rename from core/models/userProfile.schema.json
rename to core/store/modules/user/userProfile.schema.json
index 4845e797f3..49f3f00d1a 100644
--- a/core/models/userProfile.schema.json
+++ b/core/store/modules/user/userProfile.schema.json
@@ -48,8 +48,7 @@
"street": {
"minItems": 2,
"items": {
- "type": "string",
- "minLength": 1
+ "type": ["string", "number"]
}
},
"city": {
@@ -64,22 +63,17 @@
}
},
"country_id": {
- "type": "string",
+ "type": ["string", "null"],
"minLength": 2,
"pattern": "[A-Z]+"
},
"postcode": {
- "type": "string",
- "minLength": 5
+ "type": ["string", "null"]
},
"company": {
"type": "string",
"minLength": 1
},
- "vat_id": {
- "type": "string",
- "minLength": 3
- },
"telephone": {
"type": "string"
},
diff --git a/core/store/modules/wishlist/actions.js b/core/store/modules/wishlist/actions.js
index bfc66d9bfa..34824643b6 100644
--- a/core/store/modules/wishlist/actions.js
+++ b/core/store/modules/wishlist/actions.js
@@ -1,7 +1,7 @@
import * as types from '../../mutation-types'
-import EventBus from 'core/plugins/event-bus'
-import i18n from 'core/lib/i18n'
-import { htmlDecode } from 'core/filters'
+import EventBus from '../../lib/event-bus'
+import i18n from '../../lib/i18n'
+import { htmlDecode } from '../../lib/filters'
export default {
clear (context) {
@@ -9,7 +9,7 @@ export default {
},
load (context) {
const commit = context.commit
- global.db.wishlistCollection.getItem('current-wishlist', (err, storedItems) => {
+ global.$VS.db.wishlistCollection.getItem('current-wishlist', (err, storedItems) => {
if (err) throw new Error(err)
commit(types.WISH_LOAD_WISH, storedItems)
})
@@ -19,7 +19,7 @@ export default {
EventBus.$emit('notification', {
type: 'success',
message: i18n.t('Product {productName} has been added to wishlist!', { productName: htmlDecode(product.name) }),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
},
removeItem ({ commit }, product) {
@@ -27,7 +27,7 @@ export default {
EventBus.$emit('notification', {
type: 'success',
message: i18n.t('Product {productName} has been removed from wishlit!', { productName: htmlDecode(product.name) }),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
}
}
diff --git a/core/store/package.json b/core/store/package.json
new file mode 100644
index 0000000000..9aa143202c
--- /dev/null
+++ b/core/store/package.json
@@ -0,0 +1,25 @@
+{
+ "name": "@vue-storefront/store",
+ "version": "1.0.0-rc.0",
+ "description": "Vue Storefront core data store",
+ "license": "MIT",
+ "main": "index.js",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "dependencies": {
+ "ajv": "^6.4.0",
+ "babel-plugin-add-module-exports": "^0.2.1",
+ "babel-preset-es2015": "^6.24.1",
+ "babel-preset-es2015-loose": "^8.0.0",
+ "bodybuilder": "^2.2.10",
+ "config": "^1.30.0",
+ "elasticsearch": "^14.2.2",
+ "he": "^1.1.1",
+ "isomorphic-fetch": "^2.2.1",
+ "localforage": "^1.7.1",
+ "lodash": "^4.17.5",
+ "object-hash": "^1.3.0",
+ "vuex": "^3.0.1"
+ }
+}
diff --git a/doc/API docs - vue-storefront-api.md b/doc/API docs - vue-storefront-api.md
new file mode 100644
index 0000000000..502d733f6f
--- /dev/null
+++ b/doc/API docs - vue-storefront-api.md
@@ -0,0 +1,2192 @@
+# Vue Storefront API - draft
+
+Vue Storefront is powered by vue-storefront-api data middleware. It's a REST service which unifies all the differences between eCommerce platforms under one, platform agnostic API. Please find more details about the project [on Github](http://github.com/DivanteLtd/vue-storefront-api).
+
+Read more on:
+
+- [3rd party platform integration with Vue Storefront](https://medium.com/@piotrkarwatka/how-to-connect-3rd-party-platform-to-vue-storefront-df9cb30779f6?source=user_profile---------18----------------)
+- [Integrating Magento cart and orders](https://medium.com/@piotrkarwatka/vue-storefront-cart-totals-orders-integration-with-magento2-6fbe6860fcd?source=user_profile---------9----------------)
+
+All methods accept and respond with `application/json` content type.
+
+## Cart module
+
+Cart module is in charge of creating the eCommerce backend shopping carts and synchronizing the items users have in Vue Storefront and eCommerce backend. For example it can synchronize Vue Storefront shopping cart with the Magento quotes.
+
+### POST [/api/cart/create](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+#### WHEN:
+
+This method is called when new Vue Storefront shopping cart is created. First visit, page refresh, after user-authorization ... If the `token` GET parameter is provided it's called as logged-in user; if not - it's called as guest-user. To draw the difference - let's keep to Magento example. For guest user vue-storefront-api is subsequently operating on `/guest-carts` API endpoints and for authorized users on `/carts/` endpoints)
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/create' -X POST
+```
+
+For authorized user:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/create?token=xu8h02nd66yq0gaayj4x3kpqwity02or' -X POST
+```
+
+
+#### RESPONSE BODY:
+
+For guest user
+
+```
+{
+ "code": 200,
+ "result": "a17b9b5fb9f56652b8280bb94c52cd93"
+}
+```
+
+The `result` is a guest-cart id that should be used for all subsequent cart related operations as `?cartId=a17b9b5fb9f56652b8280bb94c52cd93`
+
+For authorized user
+```
+{
+ "code":200,
+ "result":"81668"
+}
+```
+The `result` is a cart-id that should be used for all subsequent cart related operations as `?cartId=81668`
+
+#### RESPONSE CODES:
+
+- `200` when success
+- `500` in case of error
+
+
+### POST [/api/cart/pull](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L131)
+
+Method used to fetch the current server side shopping cart content, used mostly for synchronization purposes when `config.cart.synchronize=true`
+
+#### WHEN:
+This method is called just after any Vue Storefrotn cart modification to check if the server or client shopping cart items need to be updated. It get's the current list of the shopping cart items. The synchronization algoritm in Vue Storefront determines if server or client items need to be updated and executes `api/cart/update` or `api/cart/delete` accordngly.
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+`cartId` - numeric (integer) value for authorized user cart id or GUID (mixed string) for guest cart ID obtained from [`api/cart/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+
+#### RESPONSE BODY:
+```json
+{
+ "code":200,
+ "result":
+ [
+ {
+ "item_id":5853,
+ "sku":"MS10-XS-Black",
+ "qty":1,"name":"Logan HeatTec® Tee-XS-Black",
+ "price":0,
+ "product_type":"simple",
+ "quote_id":"81668"
+ }
+ ]
+}
+```
+
+
+### POST [/api/cart/update](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L43)
+
+Method used to add or update shopping cart item server side. As a request body there should be JSON given representing the cart item. `sku` and `qty` are the two required options. If you like to update/edit server cart item You need to pass `item_id` identifier as well (can be optainted from `api/cart/pull`)
+
+#### WHEN:
+This method is called just after `api/cart/pull` as a consequence of the synchronization process
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+`cartId` - numeric (integer) value for authorized user cart id or GUID (mixed string) for guest cart ID obtained from [`api/cart/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+#### REQUEST BODY:
+
+```json
+{
+ "cartItem":
+ {
+ "sku":"MS10-XS-Black",
+ "qty":2,
+ "item_id":5853,
+ "quoteId":"81668"
+ }
+}
+```
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/update?token=xu8h02nd66yq0gaayj4x3kpqwity02or&cartId=81668' -H 'content-type: application/json' -H 'accept: */*' --data-binary '{"cartItem":{"sku":"MS10-XS-Black","item_id":5853,"quoteId":"81668"}}' --compressed
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":
+ {
+ "item_id":5853,
+ "sku":"MS10-XS-Black",
+ "qty":2,
+ "name":"Logan HeatTec® Tee-XS-Black",
+ "price":24,
+ "product_type":"simple",
+ "quote_id":"81668"
+ }
+}
+```
+
+### POST [/api/cart/delete](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L113)
+
+This method is used to remove the shopping cart item server side.
+
+#### WHEN:
+This method is called just after `api/cart/pull` as a consequence of the synchronization process
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+`cartId` - numeric (integer) value for authorized user cart id or GUID (mixed string) for guest cart ID obtained from [`api/cart/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/delete?token=xu8h02nd66yq0gaayj4x3kpqwity02or&cartId=81668' -H 'content-type: application/json' -H 'accept: */*' --data-binary '{"cartItem":{"sku":"MS10-XS-Black","item_id":5853,"quoteId":"81668"}}' --compressed
+```
+
+#### REQUEST BODY:
+
+```json
+{
+ "cartItem":
+ {
+ "sku":"MS10-XS-Black",
+ "item_id":5853,
+ "quoteId":"81668"
+ }
+}
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":true
+}
+```
+
+### POST [/api/cart/apply-coupon](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L63)
+
+This method is used to apply the discount code to the current server side quote.
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/apply-coupon?token=2q1w9oixh3bukxyj947tiordnehai4td&cartId=5effb906a97ebecd6ae96e3958d04edc&coupon=ARMANI' -X POST -H 'content-type: application/json' -H 'accept: */*'
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":true
+}
+```
+
+
+### POST [/api/cart/delete-coupon](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L82)
+
+This method is used to delete the discount code to the current server side quote.
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/delete-coupon?token=2q1w9oixh3bukxyj947tiordnehai4td&cartId=5effb906a97ebecd6ae96e3958d04edc' -X POST -H 'content-type: application/json' -H 'accept: */*'
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":true
+}
+```
+
+### GET [/api/cart/coupon](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L82)
+
+This method is used to get the currently applied coupon code
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/coupon?token=2q1w9oixh3bukxyj947tiordnehai4td&cartId=5effb906a97ebecd6ae96e3958d04edc' -H 'content-type: application/json' -H 'accept: */*'
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":"ARMANI"
+}
+```
+
+### GET [/api/cart/totals](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L145)
+
+Method called when the `config.synchronize_totals=true` just after any shopping cart modification. It's used to synchronize the Magento / other CMS totals after all promotion rules processed with current Vue Storefront state.
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/totals?token=xu8h02nd66yq0gaayj4x3kpqwity02or&cartId=81668' -H 'content-type: application/json' -H 'accept: */*'
+```
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+`cartId` - numeric (integer) value for authorized user cart id or GUID (mixed string) for guest cart ID obtained from [`api/cart/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+#### RESPONSE BODY:
+
+You have totals data for the current, synchronized quote returned:
+
+```json
+{
+ "code":200,
+ "result":
+ {
+ "grand_total":0,
+ "weee_tax_applied_amount":null,
+ "base_currency_code":"USD",
+ "quote_currency_code":"USD",
+ "items_qty":1,
+ "items":
+ [
+ {
+ "item_id":5853,
+ "price":0,
+ "base_price":0,
+ "qty":1,
+ "row_total":0,
+ "base_row_total":0,
+ "row_total_with_discount":0,
+ "tax_amount":0,
+ "base_tax_amount":0,
+ "tax_percent":0,
+ "discount_amount":0,
+ "base_discount_amount":0,
+ "discount_percent":0,
+ "options":"[]",
+ "weee_tax_applied_amount":null,
+ "weee_tax_applied":null,
+ "name":"Logan HeatTec® Tee-XS-Black"
+ }
+ ],
+ "total_segments":
+ [
+ {
+ "code":"subtotal",
+ "title":"Subtotal",
+ "value":0
+ },
+ {
+ "code":"shipping",
+ "title":"Shipping & Handling",
+ "value":null
+ },
+ {
+ "code":"tax",
+ "title":"Tax",
+ "value":0,
+ "extension_attributes":
+ {
+ "tax_grandtotal_details":[]
+ }
+ },
+ {
+ "code":"grand_total",
+ "title":"Grand Total",
+ "value":null,
+ "area":"footer"
+ }
+ ]
+ }
+}
+```
+
+### GET [/api/cart/payment-methods](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L178)
+
+This method is used as a step in the cart synchronization process to get all the payment methods with actuall costs as available inside the backend CMS
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/payment-methods?token=xu8h02nd66yq0gaayj4x3kpqwity02or&cartId=81668' -H 'content-type: application/json' -H 'accept: */*'
+```
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+`cartId` - numeric (integer) value for authorized user cart id or GUID (mixed string) for guest cart ID obtained from [`api/cart/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":
+ [
+ {
+ "code":"cashondelivery",
+ "title":"Cash On Delivery"
+ },
+ {
+ "code":"checkmo","title":
+ "Check / Money order"
+ },
+ {
+ "code":"free",
+ "title":"No Payment Information Required"
+ }
+ ]
+}
+```
+
+### POST [/api/cart/shipping-methods](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L160)
+
+This method is used as a step in the cart synchronization process to get all the shipping methods with actuall costs as available inside the backend CMS
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/shipping-methods?token=xu8h02nd66yq0gaayj4x3kpqwity02or&cartId=81668' -H 'content-type: application/json' -H 'accept: */*' --data-binary '{"address":{"country_id":"PL"}}'
+```
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+`cartId` - numeric (integer) value for authorized user cart id or GUID (mixed string) for guest cart ID obtained from [`api/cart/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+
+#### REQUEST BODY:
+
+If the shipping methods are dependend on the full address - probably we need to pass the whole address record with the same format as it's passed to `api/order/create` or `api/user/me`. The minimum required field is the `country_id`
+
+```json
+{
+ "address":
+ {
+ "country_id":"PL"
+ }
+}
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":
+ [
+ {
+ "carrier_code":"flatrate",
+ "method_code":"flatrate",
+ "carrier_title":"Flat Rate",
+ "method_title":"Fixed",
+ "amount":5,
+ "base_amount":5
+ ,"available":true,
+ "error_message":"",
+ "price_excl_tax":5,
+ "price_incl_tax":5
+ }
+ ]
+}
+```
+
+### POST [/api/cart/shipping-information](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L188)
+
+This method sets the shipping information on specified quote which is a required step before calling `api/cart/collect-totals`
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/shipping-information?token=xu8h02nd66yq0gaayj4x3kpqwity02or&cartId=81668' -H 'content-type: application/json' -H 'accept: */*' --data-binary '{"addressInformation":{"shipping_address":{"country_id":"PL"},"shipping_method_code":"flatrate","shipping_carrier_code":"flatrate"}}'
+```
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+`cartId` - numeric (integer) value for authorized user cart id or GUID (mixed string) for guest cart ID obtained from [`api/cart/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+
+#### REQUEST BODY:
+
+```json
+{
+ "addressInformation":
+ {
+ "shipping_address":
+ {
+ "country_id":"PL"
+ },
+ "shipping_method_code":"flatrate",
+ "shipping_carrier_code":"flatrate"
+ }
+}
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code": 200,
+ "result": {
+ "payment_methods": [
+ {
+ "code": "cashondelivery",
+ "title": "Cash On Delivery"
+ },
+ {
+ "code": "checkmo",
+ "title": "Check / Money order"
+ }
+ ],
+ "totals": {
+ "grand_total": 45.8,
+ "base_grand_total": 55.18,
+ "subtotal": 48,
+ "base_subtotal": 48,
+ "discount_amount": -8.86,
+ "base_discount_amount": -8.86,
+ "subtotal_with_discount": 39.14,
+ "base_subtotal_with_discount": 39.14,
+ "shipping_amount": 5,
+ "base_shipping_amount": 5,
+ "shipping_discount_amount": 0,
+ "base_shipping_discount_amount": 0,
+ "tax_amount": 9.38,
+ "base_tax_amount": 9.38,
+ "weee_tax_applied_amount": null,
+ "shipping_tax_amount": 0,
+ "base_shipping_tax_amount": 0,
+ "subtotal_incl_tax": 59.04,
+ "shipping_incl_tax": 5,
+ "base_shipping_incl_tax": 5,
+ "base_currency_code": "USD",
+ "quote_currency_code": "USD",
+ "items_qty": 2,
+ "items": [
+ {
+ "item_id": 5853,
+ "price": 24,
+ "base_price": 24,
+ "qty": 2,
+ "row_total": 48,
+ "base_row_total": 48,
+ "row_total_with_discount": 0,
+ "tax_amount": 9.38,
+ "base_tax_amount": 9.38,
+ "tax_percent": 23,
+ "discount_amount": 8.86,
+ "base_discount_amount": 8.86,
+ "discount_percent": 15,
+ "price_incl_tax": 29.52,
+ "base_price_incl_tax": 29.52,
+ "row_total_incl_tax": 59.04,
+ "base_row_total_incl_tax": 59.04,
+ "options": "[]",
+ "weee_tax_applied_amount": null,
+ "weee_tax_applied": null,
+ "name": "Logan HeatTec® Tee-XS-Black"
+ }
+ ],
+ "total_segments": [
+ {
+ "code": "subtotal",
+ "title": "Subtotal",
+ "value": 59.04
+ },
+ {
+ "code": "shipping",
+ "title": "Shipping & Handling (Flat Rate - Fixed)",
+ "value": 5
+ },
+ {
+ "code": "discount",
+ "title": "Discount",
+ "value": -8.86
+ },
+ {
+ "code": "tax",
+ "title": "Tax",
+ "value": 9.38,
+ "area": "taxes",
+ "extension_attributes": {
+ "tax_grandtotal_details": [
+ {
+ "amount": 9.38,
+ "rates": [
+ {
+ "percent": "23",
+ "title": "VAT23"
+ }
+ ],
+ "group_id": 1
+ }
+ ]
+ }
+ },
+ {
+ "code": "grand_total",
+ "title": "Grand Total",
+ "value": 55.18,
+ "area": "footer"
+ }
+ ]
+ }
+ }
+}
+```
+
+
+### POST [/api/cart/collect-totals](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L212)
+
+This method is called to update the quote totals just after the address information has been changed.
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/cart/collect-totals?token=xu8h02nd66yq0gaayj4x3kpqwity02or&cartId=81668' -H 'content-type: application/json' -H 'accept: */*' --data-binary '{"methods":{"paymentMethod":{"method":"cashondelivery"},"shippingCarrierCode":"flatrate","shippingMethodCode":"flatrate"}}'
+```
+
+#### GET PARAMS:
+`token` - null OR user token obtained from [`/api/user/login`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+`cartId` - numeric (integer) value for authorized user cart id or GUID (mixed string) for guest cart ID obtained from [`api/cart/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/cart.js#L26)
+
+
+#### REQUEST BODY:
+
+```json
+{
+ "methods": {
+ "paymentMethod": {
+ "method": "cashondelivery"
+ },
+ "shippingCarrierCode": "flatrate",
+ "shippingMethodCode": "flatrate"
+ }
+}
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code": 200,
+ "result": {
+ "grand_total": 45.8,
+ "base_grand_total": 55.18,
+ "subtotal": 48,
+ "base_subtotal": 48,
+ "discount_amount": -8.86,
+ "base_discount_amount": -8.86,
+ "subtotal_with_discount": 39.14,
+ "base_subtotal_with_discount": 39.14,
+ "shipping_amount": 5,
+ "base_shipping_amount": 5,
+ "shipping_discount_amount": 0,
+ "base_shipping_discount_amount": 0,
+ "tax_amount": 9.38,
+ "base_tax_amount": 9.38,
+ "weee_tax_applied_amount": null,
+ "shipping_tax_amount": 0,
+ "base_shipping_tax_amount": 0,
+ "subtotal_incl_tax": 59.04,
+ "base_subtotal_incl_tax": 59.04,
+ "shipping_incl_tax": 5,
+ "base_shipping_incl_tax": 5,
+ "base_currency_code": "USD",
+ "quote_currency_code": "USD",
+ "items_qty": 2,
+ "items": [
+ {
+ "item_id": 5853,
+ "price": 24,
+ "base_price": 24,
+ "qty": 2,
+ "row_total": 48,
+ "base_row_total": 48,
+ "row_total_with_discount": 0,
+ "tax_amount": 9.38,
+ "base_tax_amount": 9.38,
+ "tax_percent": 23,
+ "discount_amount": 8.86,
+ "base_discount_amount": 8.86,
+ "discount_percent": 15,
+ "price_incl_tax": 29.52,
+ "base_price_incl_tax": 29.52,
+ "row_total_incl_tax": 59.04,
+ "base_row_total_incl_tax": 59.04,
+ "options": "[]",
+ "weee_tax_applied_amount": null,
+ "weee_tax_applied": null,
+ "name": "Logan HeatTec® Tee-XS-Black"
+ }
+ ],
+ "total_segments": [
+ {
+ "code": "subtotal",
+ "title": "Subtotal",
+ "value": 59.04
+ },
+ {
+ "code": "shipping",
+ "title": "Shipping & Handling (Flat Rate - Fixed)",
+ "value": 5
+ },
+ {
+ "code": "discount",
+ "title": "Discount",
+ "value": -8.86
+ },
+ {
+ "code": "tax",
+ "title": "Tax",
+ "value": 9.38,
+ "area": "taxes",
+ "extension_attributes": {
+ "tax_grandtotal_details": [
+ {
+ "amount": 9.38,
+ "rates": [
+ {
+ "percent": "23",
+ "title": "VAT23"
+ }
+ ],
+ "group_id": 1
+ }
+ ]
+ }
+ },
+ {
+ "code": "grand_total",
+ "title": "Grand Total",
+ "value": 55.18,
+ "area": "footer"
+ }
+ ]
+ }
+}
+```
+
+## User module
+
+### POST [/api/user/create](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L25)
+
+Registers new user to eCommerce backend users database.
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/user/create' -H 'content-type: application/json' -H 'accept: application/json, text/plain, */*'--data-binary '{"customer":{"email":"pkarwatka9998@divante.pl","firstname":"Joe","lastname":"Black"},"password":"SecretPassword!@#123"}'
+```
+
+#### REQUEST BODY:
+
+```json
+{
+ "customer": {
+ "email": "pkarwatka9998@divante.pl",
+ "firstname": "Joe",
+ "lastname": "Black"
+ },
+ "password": "SecretPassword"
+}
+```
+
+#### RESPONSE BODY:
+
+In case of success
+
+```json
+{
+ "code": 200,
+ "result": {
+ "id": 286,
+ "group_id": 1,
+ "created_at": "2018-04-03 13:35:13",
+ "updated_at": "2018-04-03 13:35:13",
+ "created_in": "Default Store View",
+ "email": "pkarwatka9998@divante.pl",
+ "firstname": "Joe",
+ "lastname": "Black",
+ "store_id": 1,
+ "website_id": 1,
+ "addresses": [],
+ "disable_auto_group_change": 0
+ }
+}
+```
+
+In case of error:
+
+```json
+{
+ "code": 500,
+ "result": "Minimum of different classes of characters in password is 3. Classes of characters: Lower Case, Upper Case, Digits, Special Characters."
+}
+```
+
+
+### POST [/api/user/login](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L48)
+
+Authorizes the user. It's called after user submits "Login" form inside the Vue Storefront app. It returns the user token which should be used for all subsequent API calls that requires authorization
+
+#### GET PARAMS:
+
+```
+null
+```
+
+#### REQUEST BODY:
+
+```json
+{
+ "username":"pkarwatka102@divante.pl",
+ "password":"TopSecretPassword"}
+```
+
+#### RESPONSE BODY:
+
+`curl 'https://demo.vuestorefront.io/api/user/login' -H 'content-type: application/json' -H 'accept: application/json' --data-binary '"username":"pkarwatka102@divante.pl","password":"TopSecretPassword}'`
+
+```json
+{
+ "code":200,
+ "result":"xu8h02nd66yq0gaayj4x3kpqwity02or"
+}
+```
+
+or in case of error:
+
+```json
+{
+ "code":500,
+ "result":"You did not sign in correctly or your account is temporarily disabled."
+}
+```
+
+The result is a authorization token, that should be passed via `?token=xu8h02nd66yq0gaayj4x3kpqwity02or` GET param to all subsequent API calls that requires authorization
+
+#### RESPONSE CODES:
+
+- `200` when success
+- `500` in case of error
+
+### POST [/api/user/resetPassword](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L60)
+
+Sends the password reset link for the specified user.
+
+#### EXAMPLE CALL:
+
+```bash
+curl 'https://demo.vuestorefront.io/api/user/resetPassword' -H 'content-type: application/json' -H 'accept: application/json, text/plain, */*' --data-binary '{"email":"pkarwatka992@divante.pl"}'
+```
+
+#### REQUEST BODY:
+
+```json
+{
+ "email": "pkarwatka992@divante.pl"
+}
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code": 500,
+ "result": "No such entity with email = pkarwatka992@divante.pl, websiteId = 1"
+}
+```
+
+
+### POST [/api/user/changePassword](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L124)
+
+This method is used to change password for current user identified by `token` obtained from `api/user/login`
+
+#### GET PARAMS:
+
+`token` - user token returned from `POST /api/user/login`
+
+#### REQUEST BODY:
+
+```json
+{
+ "currentPassword":"OldPassword",
+ "newPassword":"NewPassword"
+}
+```
+
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":500,
+ "result":"The password doesn't match this account."
+}
+```
+
+### GET [/api/user/order-history](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L91)
+
+Get the user order history from server side
+
+#### GET PARAMS:
+
+`token` - user token returned from `POST /api/user/login`
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code": 200,
+ "result": {
+ "items": [
+ {
+ "applied_rule_ids": "1,5",
+ "base_currency_code": "USD",
+ "base_discount_amount": -3.3,
+ "base_grand_total": 28,
+ "base_discount_tax_compensation_amount": 0,
+ "base_shipping_amount": 5,
+ "base_shipping_discount_amount": 0,
+ "base_shipping_incl_tax": 5,
+ "base_shipping_tax_amount": 0,
+ "base_subtotal": 22,
+ "base_subtotal_incl_tax": 27.06,
+ "base_tax_amount": 4.3,
+ "base_total_due": 28,
+ "base_to_global_rate": 1,
+ "base_to_order_rate": 1,
+ "billing_address_id": 204,
+ "created_at": "2018-01-23 15:30:04",
+ "customer_email": "pkarwatka28@example.com",
+ "customer_group_id": 0,
+ "customer_is_guest": 1,
+ "customer_note_notify": 1,
+ "discount_amount": -3.3,
+ "email_sent": 1,
+ "entity_id": 102,
+ "global_currency_code": "USD",
+ "grand_total": 28,
+ "discount_tax_compensation_amount": 0,
+ "increment_id": "000000102",
+ "is_virtual": 0,
+ "order_currency_code": "USD",
+ "protect_code": "3984835d33abd2423b8a47efd0f74579",
+ "quote_id": 1112,
+ "shipping_amount": 5,
+ "shipping_description": "Flat Rate - Fixed",
+ "shipping_discount_amount": 0,
+ "shipping_discount_tax_compensation_amount": 0,
+ "shipping_incl_tax": 5,
+ "shipping_tax_amount": 0,
+ "state": "new",
+ "status": "pending",
+ "store_currency_code": "USD",
+ "store_id": 1,
+ "store_name": "Main Website\nMain Website Store\n",
+ "store_to_base_rate": 0,
+ "store_to_order_rate": 0,
+ "subtotal": 22,
+ "subtotal_incl_tax": 27.06,
+ "tax_amount": 4.3,
+ "total_due": 28,
+ "total_item_count": 1,
+ "total_qty_ordered": 1,
+ "updated_at": "2018-01-23 15:30:05",
+ "weight": 1,
+ "items": [
+ {
+ "amount_refunded": 0,
+ "applied_rule_ids": "1,5",
+ "base_amount_refunded": 0,
+ "base_discount_amount": 3.3,
+ "base_discount_invoiced": 0,
+ "base_discount_tax_compensation_amount": 0,
+ "base_original_price": 22,
+ "base_price": 22,
+ "base_price_incl_tax": 27.06,
+ "base_row_invoiced": 0,
+ "base_row_total": 22,
+ "base_row_total_incl_tax": 27.06,
+ "base_tax_amount": 4.3,
+ "base_tax_invoiced": 0,
+ "created_at": "2018-01-23 15:30:04",
+ "discount_amount": 3.3,
+ "discount_invoiced": 0,
+ "discount_percent": 15,
+ "free_shipping": 0,
+ "discount_tax_compensation_amount": 0,
+ "is_qty_decimal": 0,
+ "is_virtual": 0,
+ "item_id": 224,
+ "name": "Radiant Tee-XS-Blue",
+ "no_discount": 0,
+ "order_id": 102,
+ "original_price": 22,
+ "price": 22,
+ "price_incl_tax": 27.06,
+ "product_id": 1546,
+ "product_type": "simple",
+ "qty_canceled": 0,
+ "qty_invoiced": 0,
+ "qty_ordered": 1,
+ "qty_refunded": 0,
+ "qty_shipped": 0,
+ "quote_item_id": 675,
+ "row_invoiced": 0,
+ "row_total": 22,
+ "row_total_incl_tax": 27.06,
+ "row_weight": 1,
+ "sku": "WS12-XS-Blue",
+ "store_id": 1,
+ "tax_amount": 4.3,
+ "tax_invoiced": 0,
+ "tax_percent": 23,
+ "updated_at": "2018-01-23 15:30:04",
+ "weight": 1
+ }
+ ],
+ "billing_address": {
+ "address_type": "billing",
+ "city": "Some city2",
+ "company": "Divante",
+ "country_id": "PL",
+ "email": "pkarwatka28@example.com",
+ "entity_id": 204,
+ "firstname": "Piotr",
+ "lastname": "Karwatka",
+ "parent_id": 102,
+ "postcode": "50-203",
+ "street": [
+ "XYZ",
+ "17"
+ ],
+ "telephone": null,
+ "vat_id": "PL8951930748"
+ },
+ "payment": {
+ "account_status": null,
+ "additional_information": [
+ "Cash On Delivery",
+ ""
+ ],
+ "amount_ordered": 28,
+ "base_amount_ordered": 28,
+ "base_shipping_amount": 5,
+ "cc_last4": null,
+ "entity_id": 102,
+ "method": "cashondelivery",
+ "parent_id": 102,
+ "shipping_amount": 5
+ },
+ "status_histories": [],
+ "extension_attributes": {
+ "shipping_assignments": [
+ {
+ "shipping": {
+ "address": {
+ "address_type": "shipping",
+ "city": "Some city",
+ "company": "NA",
+ "country_id": "PL",
+ "email": "pkarwatka28@example.com",
+ "entity_id": 203,
+ "firstname": "Piotr",
+ "lastname": "Karwatka",
+ "parent_id": 102,
+ "postcode": "51-169",
+ "street": [
+ "XYZ",
+ "13"
+ ],
+ "telephone": null
+ },
+ "method": "flatrate_flatrate",
+ "total": {
+ "base_shipping_amount": 5,
+ "base_shipping_discount_amount": 0,
+ "base_shipping_incl_tax": 5,
+ "base_shipping_tax_amount": 0,
+ "shipping_amount": 5,
+ "shipping_discount_amount": 0,
+ "shipping_discount_tax_compensation_amount": 0,
+ "shipping_incl_tax": 5,
+ "shipping_tax_amount": 0
+ }
+ },
+ "items": [
+ {
+ "amount_refunded": 0,
+ "applied_rule_ids": "1,5",
+ "base_amount_refunded": 0,
+ "base_discount_amount": 3.3,
+ "base_discount_invoiced": 0,
+ "base_discount_tax_compensation_amount": 0,
+ "base_original_price": 22,
+ "base_price": 22,
+ "base_price_incl_tax": 27.06,
+ "base_row_invoiced": 0,
+ "base_row_total": 22,
+ "base_row_total_incl_tax": 27.06,
+ "base_tax_amount": 4.3,
+ "base_tax_invoiced": 0,
+ "created_at": "2018-01-23 15:30:04",
+ "discount_amount": 3.3,
+ "discount_invoiced": 0,
+ "discount_percent": 15,
+ "free_shipping": 0,
+ "discount_tax_compensation_amount": 0,
+ "is_qty_decimal": 0,
+ "is_virtual": 0,
+ "item_id": 224,
+ "name": "Radiant Tee-XS-Blue",
+ "no_discount": 0,
+ "order_id": 102,
+ "original_price": 22,
+ "price": 22,
+ "price_incl_tax": 27.06,
+ "product_id": 1546,
+ "product_type": "simple",
+ "qty_canceled": 0,
+ "qty_invoiced": 0,
+ "qty_ordered": 1,
+ "qty_refunded": 0,
+ "qty_shipped": 0,
+ "quote_item_id": 675,
+ "row_invoiced": 0,
+ "row_total": 22,
+ "row_total_incl_tax": 27.06,
+ "row_weight": 1,
+ "sku": "WS12-XS-Blue",
+ "store_id": 1,
+ "tax_amount": 4.3,
+ "tax_invoiced": 0,
+ "tax_percent": 23,
+ "updated_at": "2018-01-23 15:30:04",
+ "weight": 1
+ }
+ ]
+ }
+ ]
+ }
+ }
+ ],
+ "search_criteria": {
+ "filter_groups": [
+ {
+ "filters": [
+ {
+ "field": "customer_email",
+ "value": "pkarwatka28@example.com",
+ "condition_type": "eq"
+ }
+ ]
+ }
+ ]
+ },
+ "total_count": 61
+ }
+}
+```
+
+### GET [/api/user/me](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L78)
+
+Gets the User profile for currently authorized user. It's called after `POST /api/user/login` successfull call.
+
+#### GET PARAMS:
+
+`token` - user token returned from `POST /api/user/login`
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":
+ {
+ "id":158,
+ "group_id":1,
+ "default_shipping":"67",
+ "created_at":"2018-02-28 12:05:39",
+ "updated_at":"2018-03-29 10:46:03",
+ "created_in":"Default Store View",
+ "email":"pkarwatka102@divante.pl",
+ "firstname":"Piotr",
+ "lastname":"Karwatka",
+ "store_id":1,
+ "website_id":1,
+ "addresses":[
+ {
+ "id":67,
+ "customer_id":158,
+ "region":
+ {
+ "region_code":null,
+ "region":null,
+ "region_id":0
+ },
+ "region_id":0,
+ "country_id":"PL",
+ "street": ["Street name","13"],
+ "telephone":"",
+ "postcode":"41-157",
+ "city":"Wrocław",
+ "firstname":"John","lastname":"Murphy",
+ "default_shipping":true
+ }],
+ "disable_auto_group_change":0
+ }
+}
+```
+#### RESPONSE CODES:
+
+- `200` when success
+- `500` in case of error
+
+
+
+### POST [/api/user/me](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/user.js#L78)
+
+Updates the user address and other data information.
+
+#### GET PARAMS:
+
+`token` - user token returned from `POST /api/user/login`
+
+#### REQUEST BODY:
+
+As the request You should post the address information You like to apply to the current user (identified by the token).
+
+```json
+{
+ "customer": {
+ "id": 222,
+ "group_id": 1,
+ "default_billing": "105",
+ "default_shipping": "105",
+ "created_at": "2018-03-16 19:01:18",
+ "updated_at": "2018-04-03 12:59:13",
+ "created_in": "Default Store View",
+ "email": "pkarwatka30@divante.pl",
+ "firstname": "Piotr",
+ "lastname": "Karwatka",
+ "store_id": 1,
+ "website_id": 1,
+ "addresses": [
+ {
+ "id": 109,
+ "customer_id": 222,
+ "region": {
+ "region_code": null,
+ "region": null,
+ "region_id": 0
+ },
+ "region_id": 0,
+ "country_id": "PL",
+ "street": [
+ "Dmowskiego",
+ "17"
+ ],
+ "company": "Divante2",
+ "telephone": "",
+ "postcode": "50-203",
+ "city": "Wrocław",
+ "firstname": "Piotr",
+ "lastname": "Karwatka2",
+ "vat_id": "PL8951930748"
+ }
+ ],
+ "disable_auto_group_change": 0
+ }
+}
+```
+
+#### RESPONSE BODY:
+
+In the response You'll get the current, updated information about the user.
+
+```json
+{
+ "code": 200,
+ "result": {
+ "id": 222,
+ "group_id": 1,
+ "created_at": "2018-03-16 19:01:18",
+ "updated_at": "2018-04-04 02:59:52",
+ "created_in": "Default Store View",
+ "email": "pkarwatka30@divante.pl",
+ "firstname": "Piotr",
+ "lastname": "Karwatka",
+ "store_id": 1,
+ "website_id": 1,
+ "addresses": [
+ {
+ "id": 109,
+ "customer_id": 222,
+ "region": {
+ "region_code": null,
+ "region": null,
+ "region_id": 0
+ },
+ "region_id": 0,
+ "country_id": "PL",
+ "street": [
+ "Dmowskiego",
+ "17"
+ ],
+ "company": "Divante2",
+ "telephone": "",
+ "postcode": "50-203",
+ "city": "Wrocław",
+ "firstname": "Piotr",
+ "lastname": "Karwatka2",
+ "vat_id": "PL8951930748"
+ }
+ ],
+ "disable_auto_group_change": 0
+ }
+}
+```
+
+#### RESPONSE CODES:
+
+- `200` when success
+- `500` in case of error
+
+
+## Stock module
+
+### GET [`/api/stock/check/:sku`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/stock.js#L20)
+
+This method is used to check the stock item for specified product sku
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code": 200,
+ "result": {
+ "item_id": 580,
+ "product_id": 580,
+ "stock_id": 1,
+ "qty": 53,
+ "is_in_stock": true,
+ "is_qty_decimal": false,
+ "show_default_notification_message": false,
+ "use_config_min_qty": true,
+ "min_qty": 0,
+ "use_config_min_sale_qty": 1,
+ "min_sale_qty": 1,
+ "use_config_max_sale_qty": true,
+ "max_sale_qty": 10000,
+ "use_config_backorders": true,
+ "backorders": 0,
+ "use_config_notify_stock_qty": true,
+ "notify_stock_qty": 1,
+ "use_config_qty_increments": true,
+ "qty_increments": 0,
+ "use_config_enable_qty_inc": true,
+ "enable_qty_increments": false,
+ "use_config_manage_stock": true,
+ "manage_stock": true,
+ "low_stock_date": null,
+ "is_decimal_divided": false,
+ "stock_status_changed_auto": 0
+ }
+}
+```
+
+
+## Order module
+
+### POST ['/api/order/create`](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/order.js#L17)
+
+Queue the order into the order queue which will be asynchronously submited to the eCommerce backend.
+
+#### REQUEST BODY:
+
+The `user_id` field is a numeric user id as returned in `api/user/me`.
+The `cart_id` is a guest or authorized users quote id (You can mix guest cart with authroized user as well)
+
+```json
+{
+ "user_id": "",
+ "cart_id": "d90e9869fbfe3357281a67e3717e3524",
+ "products": [
+ {
+ "sku": "WT08-XS-Yellow",
+ "qty": 1
+ }
+ ],
+ "addressInformation": {
+ "shippingAddress": {
+ "region": "",
+ "region_id": 0,
+ "country_id": "PL",
+ "street": [
+ "Example",
+ "12"
+ ],
+ "company": "NA",
+ "telephone": "",
+ "postcode": "50-201",
+ "city": "Wroclaw",
+ "firstname": "Piotr",
+ "lastname": "Karwatka",
+ "email": "pkarwatka30@divante.pl",
+ "region_code": ""
+ },
+ "billingAddress": {
+ "region": "",
+ "region_id": 0,
+ "country_id": "PL",
+ "street": [
+ "Example",
+ "12"
+ ],
+ "company": "Company name",
+ "telephone": "",
+ "postcode": "50-201",
+ "city": "Wroclaw",
+ "firstname": "Piotr",
+ "lastname": "Karwatka",
+ "email": "pkarwatka30@divante.pl",
+ "region_code": "",
+ "vat_id": "PL88182881112"
+ },
+ "shipping_method_code": "flatrate",
+ "shipping_carrier_code": "flatrate",
+ "payment_method_code": "cashondelivery",
+ "payment_method_additional": {}
+ },
+ "order_id": "1522811662622-d3736c94-49a5-cd34-724c-87a3a57c2750",
+ "transmited": false,
+ "created_at": "2018-04-04T03:14:22.622Z",
+ "updated_at": "2018-04-04T03:14:22.622Z"
+}
+```
+
+#### RESPONSE BODY:
+
+```json
+{
+ "code":200,
+ "result":"OK"
+}
+```
+In case of the JSON validation error, the validation errors will be returned inside the `result` object.
+
+
+## Catalog module
+
+### [/api/catalog](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/catalog.js#L4)
+
+Catalog endpoints are a proxy to Elastic Search 5.x and can be used to search the store catalog (synchronized with Magento2 or other platform).
+
+#### GET PARAMETERS
+
+`/api/catalog/:index-name/:entity-name/_search?size=:pageSize&from=:offset&sort=`
+
+`index-name` is an Elastic Search index name - by default it's `vue_storefront_catalog` for most instalations
+`entity-name` is an Elastic Search entity name - `product`, `attribute`, `taxrule`, `category` ...
+`pageSize` numeric value of the number of records to be returned
+`offset` numeric value of the first record to be returned
+
+#### EXAMPLE CALL
+
+```bash
+curl 'https://demo.vuestorefront.io/api/catalog/vue_storefront_catalog/attribute/_search?size=50&from=0&sort=' -H 'content-type: application/json' -H 'accept: */*' --data-binary '{"query":{"bool":{"filter":{"bool":{"should":[{"term":{"attribute_code":"color"}},{"term":{"attribute_code":"size"}},{"term":{"attribute_code":"price"}}]}}}}}'
+```
+
+#### REQUEST BODY
+
+Request body is a Elastic Search query. [Please read more on Elastic querying DSL](https://www.elastic.co/guide/en/elasticsearch/reference/current/_introducing_the_query_language.html)
+
+```json
+{
+ "query": {
+ "bool": {
+ "filter": {
+ "bool": {
+ "should": [
+ {
+ "term": {
+ "attribute_code": "color"
+ }
+ },
+ {
+ "term": {
+ "attribute_code": "size"
+ }
+ },
+ {
+ "term": {
+ "attribute_code": "price"
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
+```
+
+#### RESPONSE BODY:
+
+Elastic Search data format. Please read more on [data formats used in Vue Storefront](https://github.com/DivanteLtd/vue-storefront/blob/master/doc/ElasticSearch%20data%20formats.md)
+
+```json
+{
+ "took": 0,
+ "timed_out": false,
+ "_shards": {
+ "total": 5,
+ "successful": 5,
+ "failed": 0
+ },
+ "hits": {
+ "total": 4,
+ "max_score": 0,
+ "hits": [
+ {
+ "_index": "vue_storefront_catalog",
+ "_type": "attribute",
+ "_id": "157",
+ "_score": 0,
+ "_source": {
+ "is_wysiwyg_enabled": false,
+ "is_html_allowed_on_front": true,
+ "used_for_sort_by": false,
+ "is_filterable": true,
+ "is_filterable_in_search": false,
+ "is_used_in_grid": false,
+ "is_visible_in_grid": false,
+ "is_filterable_in_grid": false,
+ "position": 0,
+ "apply_to": [],
+ "is_searchable": "0",
+ "is_visible_in_advanced_search": "0",
+ "is_comparable": "0",
+ "is_used_for_promo_rules": "1",
+ "is_visible_on_front": "0",
+ "used_in_product_listing": "1",
+ "is_visible": true,
+ "scope": "global",
+ "attribute_id": 157,
+ "attribute_code": "size",
+ "frontend_input": "select",
+ "entity_type_id": "4",
+ "is_required": false,
+ "options": [
+ {
+ "label": " ",
+ "value": ""
+ },
+ {
+ "label": "55 cm",
+ "value": "91"
+ },
+ {
+ "label": "XS",
+ "value": "167"
+ },
+ {
+ "label": "65 cm",
+ "value": "92"
+ },
+ {
+ "label": "S",
+ "value": "168"
+ },
+ {
+ "label": "75 cm",
+ "value": "93"
+ },
+ {
+ "label": "M",
+ "value": "169"
+ },
+ {
+ "label": "6 foot",
+ "value": "94"
+ },
+ {
+ "label": "L",
+ "value": "170"
+ },
+ {
+ "label": "8 foot",
+ "value": "95"
+ },
+ {
+ "label": "XL",
+ "value": "171"
+ },
+ {
+ "label": "10 foot",
+ "value": "96"
+ },
+ {
+ "label": "28",
+ "value": "172"
+ },
+ {
+ "label": "29",
+ "value": "173"
+ },
+ {
+ "label": "30",
+ "value": "174"
+ },
+ {
+ "label": "31",
+ "value": "175"
+ },
+ {
+ "label": "32",
+ "value": "176"
+ },
+ {
+ "label": "33",
+ "value": "177"
+ },
+ {
+ "label": "34",
+ "value": "178"
+ },
+ {
+ "label": "36",
+ "value": "179"
+ },
+ {
+ "label": "38",
+ "value": "180"
+ }
+ ],
+ "is_user_defined": true,
+ "default_frontend_label": "Size",
+ "frontend_labels": null,
+ "backend_type": "int",
+ "source_model": "Magento\\Eav\\Model\\Entity\\Attribute\\Source\\Table",
+ "default_value": "91",
+ "is_unique": "0",
+ "validation_rules": [],
+ "id": 157,
+ "tsk": 1507209128867,
+ "sgn": "lHoCOBS4B8qUtgG_ne8N1XnfdTwcWgRyvwAeVPRdVUE"
+ }
+ },
+ {
+ "_index": "vue_storefront_catalog",
+ "_type": "attribute",
+ "_id": "142",
+ "_score": 0,
+ "_source": {
+ "is_wysiwyg_enabled": false,
+ "is_html_allowed_on_front": true,
+ "used_for_sort_by": false,
+ "is_filterable": true,
+ "is_filterable_in_search": false,
+ "is_used_in_grid": false,
+ "is_visible_in_grid": false,
+ "is_filterable_in_grid": false,
+ "position": 0,
+ "apply_to": [],
+ "is_searchable": "0",
+ "is_visible_in_advanced_search": "0",
+ "is_comparable": "0",
+ "is_used_for_promo_rules": "1",
+ "is_visible_on_front": "0",
+ "used_in_product_listing": "1",
+ "is_visible": true,
+ "scope": "global",
+ "attribute_id": 142,
+ "attribute_code": "size",
+ "frontend_input": "select",
+ "entity_type_id": "4",
+ "is_required": false,
+ "options": [
+ {
+ "label": " ",
+ "value": ""
+ },
+ {
+ "label": "55 cm",
+ "value": "91"
+ },
+ {
+ "label": "XS",
+ "value": "167"
+ },
+ {
+ "label": "65 cm",
+ "value": "92"
+ },
+ {
+ "label": "S",
+ "value": "168"
+ },
+ {
+ "label": "75 cm",
+ "value": "93"
+ },
+ {
+ "label": "M",
+ "value": "169"
+ },
+ {
+ "label": "6 foot",
+ "value": "94"
+ },
+ {
+ "label": "L",
+ "value": "170"
+ },
+ {
+ "label": "8 foot",
+ "value": "95"
+ },
+ {
+ "label": "XL",
+ "value": "171"
+ },
+ {
+ "label": "10 foot",
+ "value": "96"
+ },
+ {
+ "label": "28",
+ "value": "172"
+ },
+ {
+ "label": "29",
+ "value": "173"
+ },
+ {
+ "label": "30",
+ "value": "174"
+ },
+ {
+ "label": "31",
+ "value": "175"
+ },
+ {
+ "label": "32",
+ "value": "176"
+ },
+ {
+ "label": "33",
+ "value": "177"
+ },
+ {
+ "label": "34",
+ "value": "178"
+ },
+ {
+ "label": "36",
+ "value": "179"
+ },
+ {
+ "label": "38",
+ "value": "180"
+ }
+ ],
+ "is_user_defined": true,
+ "default_frontend_label": "Size",
+ "frontend_labels": null,
+ "backend_type": "int",
+ "is_unique": "0",
+ "validation_rules": [],
+ "id": 142,
+ "tsk": 1512134647691,
+ "default_value": "91",
+ "source_model": "Magento\\Eav\\Model\\Entity\\Attribute\\Source\\Table",
+ "sgn": "vHkjS2mGumtgjjzlDrGJnF6i8EeUU2twc2zkZe69ABc"
+ }
+ },
+ {
+ "_index": "vue_storefront_catalog",
+ "_type": "attribute",
+ "_id": "93",
+ "_score": 0,
+ "_source": {
+ "is_wysiwyg_enabled": false,
+ "is_html_allowed_on_front": true,
+ "used_for_sort_by": false,
+ "is_filterable": true,
+ "is_filterable_in_search": false,
+ "is_used_in_grid": true,
+ "is_visible_in_grid": false,
+ "is_filterable_in_grid": true,
+ "position": 0,
+ "apply_to": [
+ "simple",
+ "virtual",
+ "configurable"
+ ],
+ "is_searchable": "0",
+ "is_visible_in_advanced_search": "0",
+ "is_comparable": "0",
+ "is_used_for_promo_rules": "1",
+ "is_visible_on_front": "0",
+ "used_in_product_listing": "1",
+ "is_visible": true,
+ "scope": "global",
+ "attribute_id": 93,
+ "attribute_code": "color",
+ "frontend_input": "select",
+ "entity_type_id": "4",
+ "is_required": false,
+ "options": [
+ {
+ "label": " ",
+ "value": ""
+ },
+ {
+ "label": "Black",
+ "value": "49"
+ },
+ {
+ "label": "Blue",
+ "value": "50"
+ },
+ {
+ "label": "Brown",
+ "value": "51"
+ },
+ {
+ "label": "Gray",
+ "value": "52"
+ },
+ {
+ "label": "Green",
+ "value": "53"
+ },
+ {
+ "label": "Lavender",
+ "value": "54"
+ },
+ {
+ "label": "Multi",
+ "value": "55"
+ },
+ {
+ "label": "Orange",
+ "value": "56"
+ },
+ {
+ "label": "Purple",
+ "value": "57"
+ },
+ {
+ "label": "Red",
+ "value": "58"
+ },
+ {
+ "label": "White",
+ "value": "59"
+ },
+ {
+ "label": "Yellow",
+ "value": "60"
+ }
+ ],
+ "is_user_defined": true,
+ "default_frontend_label": "Color",
+ "frontend_labels": null,
+ "backend_type": "int",
+ "source_model": "Magento\\Eav\\Model\\Entity\\Attribute\\Source\\Table",
+ "default_value": "49",
+ "is_unique": "0",
+ "validation_rules": [],
+ "id": 93,
+ "tsk": 1512134647691,
+ "sgn": "-FiYBhiIoVUHYxoL5kIEy3WP00emAeT-RtwqsmB69Lo"
+ }
+ },
+ {
+ "_index": "vue_storefront_catalog",
+ "_type": "attribute",
+ "_id": "77",
+ "_score": 0,
+ "_source": {
+ "is_wysiwyg_enabled": false,
+ "is_html_allowed_on_front": false,
+ "used_for_sort_by": true,
+ "is_filterable": true,
+ "is_filterable_in_search": false,
+ "is_used_in_grid": false,
+ "is_visible_in_grid": false,
+ "is_filterable_in_grid": false,
+ "position": 0,
+ "apply_to": [
+ "simple",
+ "virtual",
+ "bundle",
+ "downloadable",
+ "configurable"
+ ],
+ "is_searchable": "1",
+ "is_visible_in_advanced_search": "1",
+ "is_comparable": "0",
+ "is_used_for_promo_rules": "0",
+ "is_visible_on_front": "0",
+ "used_in_product_listing": "1",
+ "is_visible": true,
+ "scope": "global",
+ "attribute_id": 77,
+ "attribute_code": "price",
+ "frontend_input": "price",
+ "entity_type_id": "4",
+ "is_required": true,
+ "options": [],
+ "is_user_defined": false,
+ "default_frontend_label": "Price",
+ "frontend_labels": null,
+ "backend_type": "decimal",
+ "backend_model": "Magento\\Catalog\\Model\\Product\\Attribute\\Backend\\Price",
+ "is_unique": "0",
+ "validation_rules": [],
+ "id": 77,
+ "tsk": 1512134647691,
+ "sgn": "qU1O7BGcjcqZA_5KgJIaw4-HSUHcMyqgTy9jXy0THoE"
+ }
+ }
+ ]
+ }
+}
+```
+
+### [/api/product/list](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/product.js#L22) and [/api/product/render-list](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/product.js#L39)
+
+Magento specific methods to return the product details for specifed SKUs.
+Methods are mostly used for data synchronization with Magento two and for some specific cases when overriding the platform prices inside Vue Storefront.
+
+#### GET PARAMS:
+`skus` - comma separated list of skus to get
+
+#### EXAMPLE CALL:
+
+```bash
+curl https://demo.vuestorefront.io/api/product/list?skus=WP07
+curl https://demo.vuestorefront.io/api/product/render-list?skus=WP07
+```
+
+#### RESPONSE BODY:
+
+For list:
+
+```json
+{
+ "code": 200,
+ "result": {
+ "items": [
+ {
+ "id": 1866,
+ "sku": "WP07",
+ "name": "Aeon Capri",
+ "attribute_set_id": 10,
+ "price": 0,
+ "status": 1,
+ "visibility": 4,
+ "type_id": "configurable",
+ "created_at": "2017-11-06 12:17:26",
+ "updated_at": "2017-11-06 12:17:26",
+ "product_links": [],
+ "tier_prices": [],
+ "custom_attributes": [
+ {
+ "attribute_code": "description",
+ "value": "
Reach for the stars and beyond in these Aeon Capri pant. With a soft, comfortable feel and moisture wicking fabric, these duo-tone leggings are easy to wear -- and wear attractively.
\n• Black capris with teal accents. • Thick, 3\" flattering waistband. • Media pocket on inner waistband. • Dry wick finish for ultimate comfort and dryness.
"
+ },
+ {
+ "attribute_code": "image",
+ "value": "/w/p/wp07-black_main.jpg"
+ },
+ {
+ "attribute_code": "small_image",
+ "value": "/w/p/wp07-black_main.jpg"
+ },
+ {
+ "attribute_code": "thumbnail",
+ "value": "/w/p/wp07-black_main.jpg"
+ },
+ {
+ "attribute_code": "category_ids",
+ "value": [
+ "27",
+ "32",
+ "35",
+ "2"
+ ]
+ },
+ {
+ "attribute_code": "options_container",
+ "value": "container2"
+ },
+ {
+ "attribute_code": "required_options",
+ "value": "0"
+ },
+ {
+ "attribute_code": "has_options",
+ "value": "1"
+ },
+ {
+ "attribute_code": "url_key",
+ "value": "aeon-capri"
+ },
+ {
+ "attribute_code": "msrp_display_actual_price_type",
+ "value": "0"
+ },
+ {
+ "attribute_code": "tax_class_id",
+ "value": "2"
+ },
+ {
+ "attribute_code": "material",
+ "value": "156,150,154"
+ },
+ {
+ "attribute_code": "eco_collection",
+ "value": "0"
+ },
+ {
+ "attribute_code": "performance_fabric",
+ "value": "1"
+ },
+ {
+ "attribute_code": "erin_recommends",
+ "value": "0"
+ },
+ {
+ "attribute_code": "new",
+ "value": "0"
+ },
+ {
+ "attribute_code": "sale",
+ "value": "0"
+ },
+ {
+ "attribute_code": "style_bottom",
+ "value": "107"
+ },
+ {
+ "attribute_code": "pattern",
+ "value": "195"
+ },
+ {
+ "attribute_code": "climate",
+ "value": "205,212,206"
+ }
+ ]
+ }
+ ],
+ "search_criteria": {
+ "filter_groups": [
+ {
+ "filters": [
+ {
+ "field": "sku",
+ "value": "WP07",
+ "condition_type": "in"
+ }
+ ]
+ }
+ ]
+ },
+ "total_count": 1
+ }
+}
+```
+
+For render-list:
+
+```json
+{
+ "code": 200,
+ "result": {
+ "items": [
+ {
+ "add_to_cart_button": {
+ "post_data": "{\"action\":\"http:\\/\\/demo-magento2.vuestorefront.io\\/checkout\\/cart\\/add\\/uenc\\/%25uenc%25\\/product\\/1866\\/\",\"data\":{\"product\":\"1866\",\"uenc\":\"%uenc%\"}}",
+ "url": "http://demo-magento2.vuestorefront.io/checkout/cart/add/uenc/%25uenc%25/product/1866/",
+ "required_options": true
+ },
+ "add_to_compare_button": {
+ "post_data": null,
+ "url": "{\"action\":\"http:\\/\\/demo-magento2.vuestorefront.io\\/catalog\\/product_compare\\/add\\/\",\"data\":{\"product\":\"1866\",\"uenc\":\"aHR0cDovL2RlbW8tbWFnZW50bzIudnVlc3RvcmVmcm9udC5pby9yZXN0L1YxL3Byb2R1Y3RzLXJlbmRlci1pbmZvP3NlYXJjaENyaXRlcmlhPSZzZWFyY2hDcml0ZXJpYVtmaWx0ZXJfZ3JvdXBzXVswXVtmaWx0ZXJzXVswXVtmaWVsZF09c2t1JnNlYXJjaENyaXRlcmlhW2ZpbHRlcl9ncm91cHNdWzBdW2ZpbHRlcnNdWzBdW3ZhbHVlXT1XUDA3JnNlYXJjaENyaXRlcmlhW2ZpbHRlcl9ncm91cHNdWzBdW2ZpbHRlcnNdWzBdW2NvbmRpdGlvbl90eXBlXT1pbiZzdG9yZUlkPTEmY3VycmVuY3lDb2RlPVVTRA,,\"}}",
+ "required_options": null
+ },
+ "price_info": {
+ "final_price": 59.04,
+ "max_price": 59.04,
+ "max_regular_price": 59.04,
+ "minimal_regular_price": 59.04,
+ "special_price": null,
+ "minimal_price": 59.04,
+ "regular_price": 48,
+ "formatted_prices": {
+ "final_price": "$59.04 ",
+ "max_price": "$59.04 ",
+ "minimal_price": "$59.04 ",
+ "max_regular_price": "$59.04 ",
+ "minimal_regular_price": null,
+ "special_price": null,
+ "regular_price": "$48.00 "
+ },
+ "extension_attributes": {
+ "msrp": {
+ "msrp_price": "$0.00 ",
+ "is_applicable": "",
+ "is_shown_price_on_gesture": "1",
+ "msrp_message": "",
+ "explanation_message": "Our price is lower than the manufacturer's "minimum advertised price." As a result, we cannot show you the price in catalog or the product page. You have no obligation to purchase the product once you know the price. You can simply remove the item from your cart."
+ },
+ "tax_adjustments": {
+ "final_price": 47.999999,
+ "max_price": 47.999999,
+ "max_regular_price": 47.999999,
+ "minimal_regular_price": 47.999999,
+ "special_price": 47.999999,
+ "minimal_price": 47.999999,
+ "regular_price": 48,
+ "formatted_prices": {
+ "final_price": "$48.00 ",
+ "max_price": "$48.00 ",
+ "minimal_price": "$48.00 ",
+ "max_regular_price": "$48.00 ",
+ "minimal_regular_price": null,
+ "special_price": "$48.00 ",
+ "regular_price": "$48.00 "
+ }
+ },
+ "weee_attributes": [],
+ "weee_adjustment": "$59.04 "
+ }
+ },
+ "images": [
+ {
+ "url": "http://demo-magento2.vuestorefront.io/media/catalog/product/cache/f073062f50e48eb0f0998593e568d857/w/p/wp07-black_main.jpg",
+ "code": "recently_viewed_products_grid_content_widget",
+ "height": 300,
+ "width": 240,
+ "label": "Aeon Capri",
+ "resized_width": 240,
+ "resized_height": 300
+ },
+ {
+ "url": "http://demo-magento2.vuestorefront.io/media/catalog/product/cache/900f44f0120b35eff596cbeba48e1c0a/w/p/wp07-black_main.jpg",
+ "code": "recently_viewed_products_list_content_widget",
+ "height": 340,
+ "width": 270,
+ "label": "Aeon Capri",
+ "resized_width": 270,
+ "resized_height": 340
+ },
+ {
+ "url": "http://demo-magento2.vuestorefront.io/media/catalog/product/cache/15dc7e9ba1a6bafcd505d927c7fcfa03/w/p/wp07-black_main.jpg",
+ "code": "recently_viewed_products_images_names_widget",
+ "height": 90,
+ "width": 75,
+ "label": "Aeon Capri",
+ "resized_width": 75,
+ "resized_height": 90
+ },
+ {
+ "url": "http://demo-magento2.vuestorefront.io/media/catalog/product/cache/f073062f50e48eb0f0998593e568d857/w/p/wp07-black_main.jpg",
+ "code": "recently_compared_products_grid_content_widget",
+ "height": 300,
+ "width": 240,
+ "label": "Aeon Capri",
+ "resized_width": 240,
+ "resized_height": 300
+ },
+ {
+ "url": "http://demo-magento2.vuestorefront.io/media/catalog/product/cache/900f44f0120b35eff596cbeba48e1c0a/w/p/wp07-black_main.jpg",
+ "code": "recently_compared_products_list_content_widget",
+ "height": 340,
+ "width": 270,
+ "label": "Aeon Capri",
+ "resized_width": 270,
+ "resized_height": 340
+ },
+ {
+ "url": "http://demo-magento2.vuestorefront.io/media/catalog/product/cache/2b4546e5ba001f3aea4287545d649df0/w/p/wp07-black_main.jpg",
+ "code": "recently_compared_products_images_names_widget",
+ "height": 90,
+ "width": 75,
+ "label": "Aeon Capri",
+ "resized_width": 75,
+ "resized_height": 90
+ }
+ ],
+ "url": "http://demo-magento2.vuestorefront.io/aeon-capri.html",
+ "id": 1866,
+ "name": "Aeon Capri",
+ "type": "configurable",
+ "is_salable": "1",
+ "store_id": 1,
+ "currency_code": "USD",
+ "extension_attributes": {
+ "review_html": "\n",
+ "wishlist_button": {
+ "post_data": null,
+ "url": "{\"action\":\"http:\\/\\/demo-magento2.vuestorefront.io\\/wishlist\\/index\\/add\\/\",\"data\":{\"product\":\"1866\",\"uenc\":\"aHR0cDovL2RlbW8tbWFnZW50bzIudnVlc3RvcmVmcm9udC5pby9yZXN0L1YxL3Byb2R1Y3RzLXJlbmRlci1pbmZvP3NlYXJjaENyaXRlcmlhPSZzZWFyY2hDcml0ZXJpYVtmaWx0ZXJfZ3JvdXBzXVswXVtmaWx0ZXJzXVswXVtmaWVsZF09c2t1JnNlYXJjaENyaXRlcmlhW2ZpbHRlcl9ncm91cHNdWzBdW2ZpbHRlcnNdWzBdW3ZhbHVlXT1XUDA3JnNlYXJjaENyaXRlcmlhW2ZpbHRlcl9ncm91cHNdWzBdW2ZpbHRlcnNdWzBdW2NvbmRpdGlvbl90eXBlXT1pbiZzdG9yZUlkPTEmY3VycmVuY3lDb2RlPVVTRA,,\"}}",
+ "required_options": null
+ }
+ },
+ "sgn": "bCt7e44sl1iZV8hzYGioKvSq0EdsAcF21FhpTG5t8l8"
+ }
+ ]
+ }
+}
+```
+
+
+## Image module
+
+### [/img](https://github.com/DivanteLtd/vue-storefront-api/blob/7d98771994b1009ad17d69c458f9e93686cfb145/src/api/img.js#L5)
+
+This simple API module is used to just resize the images using [Imageable](https://github.com/sdepold/node-imageable) node library.
+
+#### GET PARAMS
+
+`/img/{width}/{height}/{operation}/{relativeUrl}`
+
+for example:
+
+`https://demo.vuestorefront.io/img/310/300/resize/w/p/wp07-black_main.jpg`
+
+`width` - numeric value of the picure width - to be "resized", "cropped" ... regarding the `operation` parameter
+`height` - numeric value of the picure height - to be "resized", "cropped" ... regarding the `operation` parameter
+`operation` - one of the operations supported by [Imageable](https://github.com/sdepold/node-imageable): crop, fit, resize, identify (to get the picture EXIF data)
+`relatveUrl` is the relative to
+
+Other examples:
+
+- https://demo.vuestorefront.io/img/310/300/identify/w/p/wp07-black_main.jpg - to get the JSON encoded EXIF information
+- https://demo.vuestorefront.io/img/310/300/crop/w/p/wp07-black_main.jpg?crop=500x500%2B200%2B400 - to crop image (the crop parameter format = '{width}x{height}+{left}+{top}')
\ No newline at end of file
diff --git a/doc/Database tool.md b/doc/Database tool.md
index 4ee2c102f6..706b2b26b8 100644
--- a/doc/Database tool.md
+++ b/doc/Database tool.md
@@ -37,3 +37,21 @@ This tool will drop your current index and create new, empty one with all the me
You can specify different (than this set in `config/local.json`) index name by running:
`npm run db rebuild -- --indexName=custom_index_name`
+
+## Chaning the index structure / adding new fields / chaning the types
+
+If You like to extenend the ElasticSearch data structures or map some particular field types. For example after getting kind of this error:
+
+```
+[{"type":"illegal_argument_exception","reason":"Fielddata is disabled on text fields by default. Set fielddata=true on [created_at] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memory. Alternatively use a keyword field instead."}]
+```
+
+Please do change the ES schema by modifying:
+- [config/elastic.schema.product.extension.json](https://github.com/DivanteLtd/vue-storefront-api/blob/master/config/elastic.schema.product.extension.json)
+- [config/elastic.schema.attribute.extension.json](https://github.com/DivanteLtd/vue-storefront-api/blob/master/config/elastic.schema.attribute.extension.json)
+- [config/elastic.schema.taxrate.extension.json](https://github.com/DivanteLtd/vue-storefront-api/blob/master/config/elastic.schema.taxrate.extension.json)
+
+The format is compliant with ES DSL for schema modifications: https://www.elastic.co/blog/found-elasticsearch-mapping-introduction
+
+After the changes please do run the following indexing command:
+`npm run db rebuild`
diff --git a/doc/FAQ and Receipes.md b/doc/FAQ and Receipes.md
index f5e5824f6e..83595e9d91 100644
--- a/doc/FAQ and Receipes.md
+++ b/doc/FAQ and Receipes.md
@@ -18,6 +18,7 @@ If you solved any new issues by yourself please let us know on [slack](http://vu
* Is there any documentation on integrating payment gateways?
* Is there any internationalisation support?
* If 10k products are on the site will it create a high bandwith download when you navigate on the site for the first time on a mobile device
+* How to add/remove/change field types in the ElasticSearch index
### Problem starting docker while installing the vue-storefront
@@ -196,3 +197,6 @@ The currency is set in the local.json configuration file and it's (along with th
Not necessarily. VS is caching the products from the categories browsed. This is default solution which can be changed by modifying 'core/store/lib/search.js'
+### How to add/remove/change field types in the ElasticSearch schema
+
+It's done via Database Tool schema changes. Please follow the instructions from the Database Tool Manual
diff --git a/doc/Working with data.md b/doc/Working with data.md
index 061b1aff8b..dbd83e39a6 100644
--- a/doc/Working with data.md
+++ b/doc/Working with data.md
@@ -6,7 +6,7 @@ Vue storefront uses two primary data sources:
## Local data store
-You can access localForage repositories thru `Vue.$db` or `global.db` objects anywhere in the code BUT all data-related operations SHOULD be placed in Vuex stores.
+You can access localForage repositories thru `Vue.$db` or `global.$VS.db` objects anywhere in the code BUT all data-related operations SHOULD be placed in Vuex stores.
Details on localForage API: http://localforage.github.io/localForage/
@@ -80,7 +80,7 @@ Vue.prototype.$db = {
}))
}
-global.db = Vue.prototype.$db // localForage instance
+global.$VS.db = Vue.prototype.$db // localForage instance
```
## Example Vuex store
@@ -89,8 +89,8 @@ Here you have example on how to the Vuex store should be constructed. Please not
```js
import * as types from '../mutation-types'
-import { ValidationError } from 'core/lib/exceptions'
-import * as entities from 'core/lib/entities'
+import { ValidationError } from 'core/store/lib/exceptions'
+import * as entities from '../../lib/entities'
import * as sw from 'core/lib/sw'
import config from '../../config'
const Ajv = require('ajv') // json validator
@@ -129,7 +129,7 @@ const mutations = {
* @param {Object} product data format for products is described in /doc/ElasticSearch data formats.md
*/
[types.CHECKOUT_PLACE_ORDER] (state, order) {
- const ordersCollection = global.db.ordersCollection
+ const ordersCollection = global.$VS.db.ordersCollection
const orderId = entities.uniqueEntityId(order) // timestamp as a order id is not the best we can do but it's enough
order.order_id = orderId.toString()
order.transmited = false
diff --git a/doc/Working with service-worker.md b/doc/Working with service-worker.md
index 5ceda175dd..a53c588e4d 100644
--- a/doc/Working with service-worker.md
+++ b/doc/Working with service-worker.md
@@ -42,7 +42,7 @@ It allows you to send data to service worker. For example, when the order is pla
* @param {Object} product data format for products is described in /doc/ElasticSearch data formats.md
*/
[types.CHECKOUT_PLACE_ORDER] (state, order) {
- const ordersCollection = global.db.ordersCollection
+ const ordersCollection = global.$VS.db.ordersCollection
const orderId = entities.uniqueEntityId(order) // timestamp as a order id is not the best we can do but it's enough
order.id = orderId.toString()
order.transmited = false
diff --git a/doc/data/ElasticSearch Queries.md b/doc/data/ElasticSearch Queries.md
index 3b0a57c8bb..058bb6bc2b 100644
--- a/doc/data/ElasticSearch Queries.md
+++ b/doc/data/ElasticSearch Queries.md
@@ -6,7 +6,7 @@ To properly access ElasticSearch data You should implement specific Vuex action.
```js
-import { quickSearchByQuery } from 'core/lib/search'
+import { quickSearchByQuery } from '../../lib/search'
/**
* Load categories within specified parent
diff --git a/doc/i18n/Working with translations.md b/doc/i18n/Working with translations.md
index eef1db2653..801d4ff0c3 100644
--- a/doc/i18n/Working with translations.md
+++ b/doc/i18n/Working with translations.md
@@ -13,7 +13,7 @@ When you're working with plain JS module you can simply use the translation help
EventBus.$emit('notification', {
type: 'success',
message: i18n.t('Product has been added to the cart!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
```
diff --git a/package-lock.json b/package-lock.json
deleted file mode 100644
index 48ddea7073..0000000000
--- a/package-lock.json
+++ /dev/null
@@ -1,19136 +0,0 @@
-{
- "name": "vue-storefront",
- "requires": true,
- "lockfileVersion": 1,
- "dependencies": {
- "JSONStream": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.2.tgz",
- "integrity": "sha1-wQI3G27Dp887hHygDCC7D85Mbeo=",
- "dev": true,
- "requires": {
- "jsonparse": "1.3.1",
- "through": "2.3.8"
- }
- },
- "abab": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz",
- "integrity": "sha1-X6rZwsB/YN12dw9xzwJbYqY8/U4=",
- "optional": true
- },
- "abbrev": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
- "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
- "dev": true
- },
- "accepts": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
- "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=",
- "requires": {
- "mime-types": "2.1.18",
- "negotiator": "0.6.1"
- }
- },
- "acorn": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-2.7.0.tgz",
- "integrity": "sha1-q259nYhqrKiwhbwzEreaGYQz8Oc="
- },
- "acorn-dynamic-import": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz",
- "integrity": "sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ=",
- "dev": true,
- "requires": {
- "acorn": "4.0.13"
- },
- "dependencies": {
- "acorn": {
- "version": "4.0.13",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
- "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
- "dev": true
- }
- }
- },
- "acorn-globals": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-1.0.9.tgz",
- "integrity": "sha1-VbtemGkVB7dFedBRNBMhfDgMVM8=",
- "optional": true,
- "requires": {
- "acorn": "2.7.0"
- }
- },
- "acorn-jsx": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
- "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=",
- "dev": true,
- "requires": {
- "acorn": "3.3.0"
- },
- "dependencies": {
- "acorn": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
- "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=",
- "dev": true
- }
- }
- },
- "add-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz",
- "integrity": "sha1-anmQQ3ynNtXhKI25K9MmbV9csqo=",
- "dev": true
- },
- "after": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
- "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
- "dev": true
- },
- "agentkeepalive": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-2.2.0.tgz",
- "integrity": "sha1-xdG9SxKQCPEWPyNvhuX66iAm4u8="
- },
- "ajv": {
- "version": "5.5.2",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
- "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
- "requires": {
- "co": "4.6.0",
- "fast-deep-equal": "1.1.0",
- "fast-json-stable-stringify": "2.0.0",
- "json-schema-traverse": "0.3.1"
- }
- },
- "ajv-keywords": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz",
- "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=",
- "dev": true
- },
- "align-text": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
- "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2",
- "longest": "1.0.1",
- "repeat-string": "1.6.1"
- }
- },
- "alphanum-sort": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz",
- "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=",
- "dev": true
- },
- "amdefine": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
- "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
- "dev": true
- },
- "ansi-align": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz",
- "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=",
- "dev": true,
- "requires": {
- "string-width": "2.1.1"
- }
- },
- "ansi-escapes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
- "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw=="
- },
- "ansi-html": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz",
- "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=",
- "dev": true
- },
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
- },
- "ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
- },
- "anymatch": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
- "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
- "dev": true,
- "requires": {
- "micromatch": "2.3.11",
- "normalize-path": "2.1.1"
- }
- },
- "app-root-path": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.0.1.tgz",
- "integrity": "sha1-zWLc+OT9WkF+/GZNLlsQZTxlG0Y="
- },
- "aproba": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
- "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
- "dev": true
- },
- "are-we-there-yet": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
- "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
- "dev": true,
- "requires": {
- "delegates": "1.0.0",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "requires": {
- "sprintf-js": "1.0.3"
- }
- },
- "arr-diff": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
- "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
- "dev": true,
- "requires": {
- "arr-flatten": "1.1.0"
- }
- },
- "arr-flatten": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
- "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
- "dev": true
- },
- "arr-union": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
- "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
- "dev": true
- },
- "array-find-index": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
- "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
- "dev": true
- },
- "array-flatten": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
- "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
- },
- "array-ify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz",
- "integrity": "sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4=",
- "dev": true
- },
- "array-slice": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
- "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
- "dev": true
- },
- "array-union": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
- "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
- "dev": true,
- "requires": {
- "array-uniq": "1.0.3"
- }
- },
- "array-uniq": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
- "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
- "dev": true
- },
- "array-unique": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
- "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
- "dev": true
- },
- "arraybuffer.slice": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz",
- "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=",
- "dev": true
- },
- "arrify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
- "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
- "dev": true
- },
- "asn1": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
- "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y="
- },
- "asn1.js": {
- "version": "4.10.1",
- "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
- "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
- "dev": true,
- "requires": {
- "bn.js": "4.11.8",
- "inherits": "2.0.3",
- "minimalistic-assert": "1.0.0"
- }
- },
- "assert": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz",
- "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=",
- "dev": true,
- "requires": {
- "util": "0.10.3"
- }
- },
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
- },
- "assertion-error": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
- "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
- "dev": true
- },
- "assign-symbols": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
- "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
- "dev": true
- },
- "async": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz",
- "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
- "dev": true,
- "requires": {
- "lodash": "4.17.5"
- }
- },
- "async-each": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
- "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=",
- "dev": true
- },
- "async-foreach": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
- "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
- "dev": true
- },
- "asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
- },
- "atob": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/atob/-/atob-2.0.3.tgz",
- "integrity": "sha1-GcenYEc3dEaPILLS0DNyrX1Mv10=",
- "dev": true
- },
- "autoprefixer": {
- "version": "6.7.7",
- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz",
- "integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=",
- "dev": true,
- "requires": {
- "browserslist": "1.7.7",
- "caniuse-db": "1.0.30000820",
- "normalize-range": "0.1.2",
- "num2fraction": "1.2.2",
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- },
- "dependencies": {
- "browserslist": {
- "version": "1.7.7",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz",
- "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=",
- "dev": true,
- "requires": {
- "caniuse-db": "1.0.30000820",
- "electron-to-chromium": "1.3.40"
- }
- }
- }
- },
- "aws-sign2": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
- "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg="
- },
- "aws4": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
- "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4="
- },
- "axios": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/axios/-/axios-0.13.1.tgz",
- "integrity": "sha1-Pmer/kMzvJ0tX+b70TtGlOr8jfg=",
- "requires": {
- "follow-redirects": "0.0.7"
- }
- },
- "babel-code-frame": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
- "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
- "dev": true,
- "requires": {
- "chalk": "1.1.3",
- "esutils": "2.0.2",
- "js-tokens": "3.0.2"
- }
- },
- "babel-core": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz",
- "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=",
- "dev": true,
- "requires": {
- "babel-code-frame": "6.26.0",
- "babel-generator": "6.26.1",
- "babel-helpers": "6.24.1",
- "babel-messages": "6.23.0",
- "babel-register": "6.26.0",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0",
- "babylon": "6.18.0",
- "convert-source-map": "1.5.1",
- "debug": "2.6.9",
- "json5": "0.5.1",
- "lodash": "4.17.5",
- "minimatch": "3.0.4",
- "path-is-absolute": "1.0.1",
- "private": "0.1.8",
- "slash": "1.0.0",
- "source-map": "0.5.7"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- },
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "babel-generator": {
- "version": "6.26.1",
- "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz",
- "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==",
- "dev": true,
- "requires": {
- "babel-messages": "6.23.0",
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0",
- "detect-indent": "4.0.0",
- "jsesc": "1.3.0",
- "lodash": "4.17.5",
- "source-map": "0.5.7",
- "trim-right": "1.0.1"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "babel-helper-bindify-decorators": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz",
- "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-builder-binary-assignment-operator-visitor": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz",
- "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=",
- "dev": true,
- "requires": {
- "babel-helper-explode-assignable-expression": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-call-delegate": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz",
- "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=",
- "dev": true,
- "requires": {
- "babel-helper-hoist-variables": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-define-map": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz",
- "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=",
- "dev": true,
- "requires": {
- "babel-helper-function-name": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0",
- "lodash": "4.17.5"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-explode-assignable-expression": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz",
- "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-explode-class": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz",
- "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=",
- "dev": true,
- "requires": {
- "babel-helper-bindify-decorators": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-function-name": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz",
- "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=",
- "dev": true,
- "requires": {
- "babel-helper-get-function-arity": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-get-function-arity": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz",
- "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-hoist-variables": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz",
- "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-optimise-call-expression": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz",
- "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-regex": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz",
- "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0",
- "lodash": "4.17.5"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-remap-async-to-generator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz",
- "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=",
- "dev": true,
- "requires": {
- "babel-helper-function-name": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helper-replace-supers": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz",
- "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=",
- "dev": true,
- "requires": {
- "babel-helper-optimise-call-expression": "6.24.1",
- "babel-messages": "6.23.0",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-helpers": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
- "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-loader": {
- "version": "7.1.4",
- "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.4.tgz",
- "integrity": "sha512-/hbyEvPzBJuGpk9o80R0ZyTej6heEOr59GoEUtn8qFKbnx4cJm9FWES6J/iv644sYgrtVw9JJQkjaLW/bqb5gw==",
- "dev": true,
- "requires": {
- "find-cache-dir": "1.0.0",
- "loader-utils": "1.1.0",
- "mkdirp": "0.5.1"
- }
- },
- "babel-messages": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
- "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-check-es2015-constants": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz",
- "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-syntax-async-functions": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz",
- "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=",
- "dev": true
- },
- "babel-plugin-syntax-async-generators": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz",
- "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=",
- "dev": true
- },
- "babel-plugin-syntax-class-properties": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz",
- "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=",
- "dev": true
- },
- "babel-plugin-syntax-decorators": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz",
- "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=",
- "dev": true
- },
- "babel-plugin-syntax-dynamic-import": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz",
- "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=",
- "dev": true
- },
- "babel-plugin-syntax-exponentiation-operator": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz",
- "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=",
- "dev": true
- },
- "babel-plugin-syntax-object-rest-spread": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz",
- "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=",
- "dev": true
- },
- "babel-plugin-syntax-trailing-function-commas": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz",
- "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=",
- "dev": true
- },
- "babel-plugin-transform-async-generator-functions": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz",
- "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=",
- "dev": true,
- "requires": {
- "babel-helper-remap-async-to-generator": "6.24.1",
- "babel-plugin-syntax-async-generators": "6.13.0",
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-async-to-generator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz",
- "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=",
- "dev": true,
- "requires": {
- "babel-helper-remap-async-to-generator": "6.24.1",
- "babel-plugin-syntax-async-functions": "6.13.0",
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-class-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz",
- "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=",
- "dev": true,
- "requires": {
- "babel-helper-function-name": "6.24.1",
- "babel-plugin-syntax-class-properties": "6.13.0",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-decorators": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz",
- "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=",
- "dev": true,
- "requires": {
- "babel-helper-explode-class": "6.24.1",
- "babel-plugin-syntax-decorators": "6.13.0",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-arrow-functions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz",
- "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-block-scoped-functions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz",
- "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-block-scoping": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz",
- "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0",
- "lodash": "4.17.5"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-classes": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz",
- "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=",
- "dev": true,
- "requires": {
- "babel-helper-define-map": "6.26.0",
- "babel-helper-function-name": "6.24.1",
- "babel-helper-optimise-call-expression": "6.24.1",
- "babel-helper-replace-supers": "6.24.1",
- "babel-messages": "6.23.0",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-computed-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz",
- "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-destructuring": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz",
- "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-duplicate-keys": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz",
- "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-for-of": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz",
- "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-function-name": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz",
- "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=",
- "dev": true,
- "requires": {
- "babel-helper-function-name": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-literals": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz",
- "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-modules-amd": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz",
- "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=",
- "dev": true,
- "requires": {
- "babel-plugin-transform-es2015-modules-commonjs": "6.26.0",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-modules-commonjs": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz",
- "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=",
- "dev": true,
- "requires": {
- "babel-plugin-transform-strict-mode": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-modules-systemjs": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz",
- "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=",
- "dev": true,
- "requires": {
- "babel-helper-hoist-variables": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-modules-umd": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz",
- "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=",
- "dev": true,
- "requires": {
- "babel-plugin-transform-es2015-modules-amd": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-object-super": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz",
- "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=",
- "dev": true,
- "requires": {
- "babel-helper-replace-supers": "6.24.1",
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-parameters": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz",
- "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=",
- "dev": true,
- "requires": {
- "babel-helper-call-delegate": "6.24.1",
- "babel-helper-get-function-arity": "6.24.1",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-shorthand-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz",
- "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-spread": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz",
- "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-sticky-regex": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz",
- "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=",
- "dev": true,
- "requires": {
- "babel-helper-regex": "6.26.0",
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-template-literals": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz",
- "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-typeof-symbol": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz",
- "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-es2015-unicode-regex": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz",
- "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=",
- "dev": true,
- "requires": {
- "babel-helper-regex": "6.26.0",
- "babel-runtime": "6.26.0",
- "regexpu-core": "2.0.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-exponentiation-operator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz",
- "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=",
- "dev": true,
- "requires": {
- "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1",
- "babel-plugin-syntax-exponentiation-operator": "6.13.0",
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-object-rest-spread": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz",
- "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=",
- "dev": true,
- "requires": {
- "babel-plugin-syntax-object-rest-spread": "6.13.0",
- "babel-runtime": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-plugin-transform-regenerator": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz",
- "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=",
- "dev": true,
- "requires": {
- "regenerator-transform": "0.10.1"
- }
- },
- "babel-plugin-transform-strict-mode": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz",
- "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-preset-env": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.1.tgz",
- "integrity": "sha512-W6VIyA6Ch9ePMI7VptNn2wBM6dbG0eSz25HEiL40nQXCsXGTGZSTZu1Iap+cj3Q0S5a7T9+529l/5Bkvd+afNA==",
- "dev": true,
- "requires": {
- "babel-plugin-check-es2015-constants": "6.22.0",
- "babel-plugin-syntax-trailing-function-commas": "6.22.0",
- "babel-plugin-transform-async-to-generator": "6.24.1",
- "babel-plugin-transform-es2015-arrow-functions": "6.22.0",
- "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0",
- "babel-plugin-transform-es2015-block-scoping": "6.26.0",
- "babel-plugin-transform-es2015-classes": "6.24.1",
- "babel-plugin-transform-es2015-computed-properties": "6.24.1",
- "babel-plugin-transform-es2015-destructuring": "6.23.0",
- "babel-plugin-transform-es2015-duplicate-keys": "6.24.1",
- "babel-plugin-transform-es2015-for-of": "6.23.0",
- "babel-plugin-transform-es2015-function-name": "6.24.1",
- "babel-plugin-transform-es2015-literals": "6.22.0",
- "babel-plugin-transform-es2015-modules-amd": "6.24.1",
- "babel-plugin-transform-es2015-modules-commonjs": "6.26.0",
- "babel-plugin-transform-es2015-modules-systemjs": "6.24.1",
- "babel-plugin-transform-es2015-modules-umd": "6.24.1",
- "babel-plugin-transform-es2015-object-super": "6.24.1",
- "babel-plugin-transform-es2015-parameters": "6.24.1",
- "babel-plugin-transform-es2015-shorthand-properties": "6.24.1",
- "babel-plugin-transform-es2015-spread": "6.22.0",
- "babel-plugin-transform-es2015-sticky-regex": "6.24.1",
- "babel-plugin-transform-es2015-template-literals": "6.22.0",
- "babel-plugin-transform-es2015-typeof-symbol": "6.23.0",
- "babel-plugin-transform-es2015-unicode-regex": "6.24.1",
- "babel-plugin-transform-exponentiation-operator": "6.24.1",
- "babel-plugin-transform-regenerator": "6.26.0",
- "browserslist": "2.11.3",
- "invariant": "2.2.4",
- "semver": "5.5.0"
- }
- },
- "babel-preset-stage-2": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz",
- "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=",
- "dev": true,
- "requires": {
- "babel-plugin-syntax-dynamic-import": "6.18.0",
- "babel-plugin-transform-class-properties": "6.24.1",
- "babel-plugin-transform-decorators": "6.24.1",
- "babel-preset-stage-3": "6.24.1"
- }
- },
- "babel-preset-stage-3": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz",
- "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=",
- "dev": true,
- "requires": {
- "babel-plugin-syntax-trailing-function-commas": "6.22.0",
- "babel-plugin-transform-async-generator-functions": "6.24.1",
- "babel-plugin-transform-async-to-generator": "6.24.1",
- "babel-plugin-transform-exponentiation-operator": "6.24.1",
- "babel-plugin-transform-object-rest-spread": "6.26.0"
- }
- },
- "babel-register": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
- "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=",
- "dev": true,
- "requires": {
- "babel-core": "6.26.0",
- "babel-runtime": "6.26.0",
- "core-js": "2.5.3",
- "home-or-tmp": "2.0.0",
- "lodash": "4.17.5",
- "mkdirp": "0.5.1",
- "source-map-support": "0.4.18"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-runtime": {
- "version": "5.8.38",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-5.8.38.tgz",
- "integrity": "sha1-HAsC62MxL18If/IEUIJ7QlydTBk=",
- "requires": {
- "core-js": "1.2.7"
- }
- },
- "babel-template": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
- "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0",
- "babylon": "6.18.0",
- "lodash": "4.17.5"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-traverse": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
- "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
- "dev": true,
- "requires": {
- "babel-code-frame": "6.26.0",
- "babel-messages": "6.23.0",
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0",
- "babylon": "6.18.0",
- "debug": "2.6.9",
- "globals": "9.18.0",
- "invariant": "2.2.4",
- "lodash": "4.17.5"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babel-types": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
- "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "esutils": "2.0.2",
- "lodash": "4.17.5",
- "to-fast-properties": "1.0.3"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "babylon": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
- "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
- "dev": true
- },
- "backo2": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
- "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
- "dev": true
- },
- "balanced-match": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
- "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
- },
- "base": {
- "version": "0.11.2",
- "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
- "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
- "dev": true,
- "requires": {
- "cache-base": "1.0.1",
- "class-utils": "0.3.6",
- "component-emitter": "1.2.1",
- "define-property": "1.0.0",
- "isobject": "3.0.1",
- "mixin-deep": "1.3.1",
- "pascalcase": "0.1.1"
- },
- "dependencies": {
- "component-emitter": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
- "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
- "dev": true
- },
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "1.0.2"
- }
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "base64-arraybuffer": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
- "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=",
- "dev": true
- },
- "base64-js": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.3.tgz",
- "integrity": "sha512-MsAhsUW1GxCdgYSO6tAfZrNapmUKk7mWx/k5mFY/A1gBtkaCaNapTg+FExCw1r9yeaZhqx/xPg43xgTFH6KL5w==",
- "dev": true
- },
- "base64id": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
- "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=",
- "dev": true
- },
- "bcrypt-pbkdf": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
- "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
- "optional": true,
- "requires": {
- "tweetnacl": "0.14.5"
- }
- },
- "better-assert": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
- "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
- "dev": true,
- "requires": {
- "callsite": "1.0.0"
- }
- },
- "big.js": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz",
- "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q=="
- },
- "binary-extensions": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
- "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
- "dev": true
- },
- "blob": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
- "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=",
- "dev": true
- },
- "block-stream": {
- "version": "0.0.9",
- "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
- "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3"
- }
- },
- "bluebird": {
- "version": "3.5.1",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
- "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
- "dev": true
- },
- "bn.js": {
- "version": "4.11.8",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
- "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==",
- "dev": true
- },
- "body-parser": {
- "version": "1.18.2",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
- "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
- "requires": {
- "bytes": "3.0.0",
- "content-type": "1.0.4",
- "debug": "2.6.9",
- "depd": "1.1.2",
- "http-errors": "1.6.2",
- "iconv-lite": "0.4.19",
- "on-finished": "2.3.0",
- "qs": "6.5.1",
- "raw-body": "2.3.2",
- "type-is": "1.6.16"
- }
- },
- "bodybuilder": {
- "version": "2.2.10",
- "resolved": "https://registry.npmjs.org/bodybuilder/-/bodybuilder-2.2.10.tgz",
- "integrity": "sha1-ALYczgm+UZ3TG6GA0za8JNIpHHg=",
- "requires": {
- "lodash": "4.17.5"
- }
- },
- "boolbase": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
- "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
- },
- "boom": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz",
- "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=",
- "requires": {
- "hoek": "4.2.1"
- }
- },
- "boxen": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz",
- "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==",
- "dev": true,
- "requires": {
- "ansi-align": "2.0.0",
- "camelcase": "4.1.0",
- "chalk": "2.3.2",
- "cli-boxes": "1.0.0",
- "string-width": "2.1.1",
- "term-size": "1.2.0",
- "widest-line": "2.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "camelcase": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz",
- "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=",
- "dev": true
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "requires": {
- "balanced-match": "1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "braces": {
- "version": "1.8.5",
- "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
- "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
- "dev": true,
- "requires": {
- "expand-range": "1.8.2",
- "preserve": "0.2.0",
- "repeat-element": "1.1.2"
- }
- },
- "brorand": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
- "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
- "dev": true
- },
- "browser-stdout": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz",
- "integrity": "sha1-81HTKWnTL6XXpVZxVCY9korjvR8=",
- "dev": true
- },
- "browserify-aes": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.1.tgz",
- "integrity": "sha512-UGnTYAnB2a3YuYKIRy1/4FB2HdM866E0qC46JXvVTYKlBlZlnvfpSfY6OKfXZAkv70eJ2a1SqzpAo5CRhZGDFg==",
- "dev": true,
- "requires": {
- "buffer-xor": "1.0.3",
- "cipher-base": "1.0.4",
- "create-hash": "1.1.3",
- "evp_bytestokey": "1.0.3",
- "inherits": "2.0.3",
- "safe-buffer": "5.1.1"
- }
- },
- "browserify-cipher": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz",
- "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=",
- "dev": true,
- "requires": {
- "browserify-aes": "1.1.1",
- "browserify-des": "1.0.0",
- "evp_bytestokey": "1.0.3"
- }
- },
- "browserify-des": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz",
- "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=",
- "dev": true,
- "requires": {
- "cipher-base": "1.0.4",
- "des.js": "1.0.0",
- "inherits": "2.0.3"
- }
- },
- "browserify-rsa": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
- "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
- "dev": true,
- "requires": {
- "bn.js": "4.11.8",
- "randombytes": "2.0.6"
- }
- },
- "browserify-sign": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz",
- "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=",
- "dev": true,
- "requires": {
- "bn.js": "4.11.8",
- "browserify-rsa": "4.0.1",
- "create-hash": "1.1.3",
- "create-hmac": "1.1.6",
- "elliptic": "6.4.0",
- "inherits": "2.0.3",
- "parse-asn1": "5.1.0"
- }
- },
- "browserify-zlib": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
- "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
- "dev": true,
- "requires": {
- "pako": "1.0.6"
- }
- },
- "browserslist": {
- "version": "2.11.3",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.11.3.tgz",
- "integrity": "sha512-yWu5cXT7Av6mVwzWc8lMsJMHWn4xyjSuGYi4IozbVTLUOEYPSagUB8kiMDUHA1fS3zjr8nkxkn9jdvug4BBRmA==",
- "dev": true,
- "requires": {
- "caniuse-lite": "1.0.30000820",
- "electron-to-chromium": "1.3.40"
- }
- },
- "buffer": {
- "version": "4.9.1",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
- "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=",
- "dev": true,
- "requires": {
- "base64-js": "1.2.3",
- "ieee754": "1.1.11",
- "isarray": "1.0.0"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- }
- }
- },
- "buffer-from": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz",
- "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==",
- "dev": true
- },
- "buffer-xor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
- "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
- "dev": true
- },
- "builtin-modules": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
- "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
- "dev": true
- },
- "builtin-status-codes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
- "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
- "dev": true
- },
- "byline": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz",
- "integrity": "sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE=",
- "dev": true
- },
- "bytes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
- "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
- },
- "cacache": {
- "version": "10.0.4",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
- "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==",
- "dev": true,
- "requires": {
- "bluebird": "3.5.1",
- "chownr": "1.0.1",
- "glob": "7.1.2",
- "graceful-fs": "4.1.11",
- "lru-cache": "4.1.2",
- "mississippi": "2.0.0",
- "mkdirp": "0.5.1",
- "move-concurrently": "1.0.1",
- "promise-inflight": "1.0.1",
- "rimraf": "2.6.2",
- "ssri": "5.3.0",
- "unique-filename": "1.1.0",
- "y18n": "4.0.0"
- },
- "dependencies": {
- "y18n": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz",
- "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==",
- "dev": true
- }
- }
- },
- "cache-base": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
- "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
- "dev": true,
- "requires": {
- "collection-visit": "1.0.0",
- "component-emitter": "1.2.1",
- "get-value": "2.0.6",
- "has-value": "1.0.0",
- "isobject": "3.0.1",
- "set-value": "2.0.0",
- "to-object-path": "0.3.0",
- "union-value": "1.0.0",
- "unset-value": "1.0.0"
- },
- "dependencies": {
- "component-emitter": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
- "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
- "dev": true
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "caller-path": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz",
- "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=",
- "dev": true,
- "requires": {
- "callsites": "0.2.0"
- }
- },
- "callsite": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
- "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=",
- "dev": true
- },
- "callsites": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz",
- "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=",
- "dev": true
- },
- "camel-case": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz",
- "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=",
- "dev": true,
- "requires": {
- "no-case": "2.3.2",
- "upper-case": "1.1.3"
- }
- },
- "camelcase": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
- "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
- "dev": true
- },
- "camelcase-keys": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz",
- "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=",
- "dev": true,
- "requires": {
- "camelcase": "4.1.0",
- "map-obj": "2.0.0",
- "quick-lru": "1.1.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz",
- "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=",
- "dev": true
- }
- }
- },
- "caniuse-api": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-1.6.1.tgz",
- "integrity": "sha1-tTTnxzTE+B7F++isoq0kNUuWLGw=",
- "dev": true,
- "requires": {
- "browserslist": "1.7.7",
- "caniuse-db": "1.0.30000820",
- "lodash.memoize": "4.1.2",
- "lodash.uniq": "4.5.0"
- },
- "dependencies": {
- "browserslist": {
- "version": "1.7.7",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz",
- "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=",
- "dev": true,
- "requires": {
- "caniuse-db": "1.0.30000820",
- "electron-to-chromium": "1.3.40"
- }
- }
- }
- },
- "caniuse-db": {
- "version": "1.0.30000820",
- "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000820.tgz",
- "integrity": "sha1-fCDiXOoXaLJhtyT4LjpqJTqqFGg=",
- "dev": true
- },
- "caniuse-lite": {
- "version": "1.0.30000820",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000820.tgz",
- "integrity": "sha512-E0dpVjnt1XTNmWlGgdiae/tOF0jrJ/s+dOnwk8PLmPdu5uSu8wTLJhhbhcgUWU4aO9Iy5yUMZYxT60JS259sbQ==",
- "dev": true
- },
- "capture-stack-trace": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz",
- "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=",
- "dev": true
- },
- "case-sensitive-paths-webpack-plugin": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.1.2.tgz",
- "integrity": "sha512-oEZgAFfEvKtjSRCu6VgYkuGxwrWXMnQzyBmlLPP7r6PWQVtHxP5Z5N6XsuJvtoVax78am/r7lr46bwo3IVEBOg==",
- "dev": true
- },
- "caseless": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
- "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
- },
- "center-align": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
- "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
- "dev": true,
- "requires": {
- "align-text": "0.1.4",
- "lazy-cache": "1.0.4"
- }
- },
- "chai": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/chai/-/chai-3.5.0.tgz",
- "integrity": "sha1-TQJjewZ/6Vi9v906QOxW/vc3Mkc=",
- "dev": true,
- "requires": {
- "assertion-error": "1.1.0",
- "deep-eql": "0.1.3",
- "type-detect": "1.0.0"
- }
- },
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
- "requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
- }
- },
- "chardet": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz",
- "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I="
- },
- "cheerio": {
- "version": "0.20.0",
- "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.20.0.tgz",
- "integrity": "sha1-XHEPK6uVZTJyhCugHG6mGzVF7DU=",
- "requires": {
- "css-select": "1.2.0",
- "dom-serializer": "0.1.0",
- "entities": "1.1.1",
- "htmlparser2": "3.8.3",
- "jsdom": "7.2.2",
- "lodash": "4.17.5"
- }
- },
- "chokidar": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
- "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
- "dev": true,
- "requires": {
- "anymatch": "1.3.2",
- "async-each": "1.0.1",
- "fsevents": "1.1.3",
- "glob-parent": "2.0.0",
- "inherits": "2.0.3",
- "is-binary-path": "1.0.1",
- "is-glob": "2.0.1",
- "path-is-absolute": "1.0.1",
- "readdirp": "2.1.0"
- }
- },
- "chownr": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
- "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=",
- "dev": true
- },
- "ci-info": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.3.tgz",
- "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==",
- "dev": true
- },
- "cipher-base": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
- "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "safe-buffer": "5.1.1"
- }
- },
- "circular-json": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz",
- "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==",
- "dev": true
- },
- "clap": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz",
- "integrity": "sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==",
- "dev": true,
- "requires": {
- "chalk": "1.1.3"
- }
- },
- "class-utils": {
- "version": "0.3.6",
- "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
- "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
- "dev": true,
- "requires": {
- "arr-union": "3.1.0",
- "define-property": "0.2.5",
- "isobject": "3.0.1",
- "static-extend": "0.1.2"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "0.1.6"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "0.1.6",
- "is-data-descriptor": "0.1.4",
- "kind-of": "5.1.0"
- }
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- },
- "kind-of": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
- "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
- "dev": true
- }
- }
- },
- "clean-css": {
- "version": "4.1.11",
- "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.1.11.tgz",
- "integrity": "sha1-Ls3xRaujj1R0DybO/Q/z4D4SXWo=",
- "dev": true,
- "requires": {
- "source-map": "0.5.7"
- },
- "dependencies": {
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "cli-boxes": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz",
- "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=",
- "dev": true
- },
- "cli-cursor": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
- "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
- "requires": {
- "restore-cursor": "2.0.0"
- }
- },
- "cli-width": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
- "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk="
- },
- "cliui": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
- "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
- "dev": true,
- "requires": {
- "center-align": "0.1.3",
- "right-align": "0.1.3",
- "wordwrap": "0.0.2"
- },
- "dependencies": {
- "wordwrap": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
- "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
- "dev": true
- }
- }
- },
- "clone": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
- "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=",
- "dev": true
- },
- "clone-deep": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz",
- "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==",
- "dev": true,
- "requires": {
- "for-own": "1.0.0",
- "is-plain-object": "2.0.4",
- "kind-of": "6.0.2",
- "shallow-clone": "1.0.0"
- },
- "dependencies": {
- "for-own": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
- "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
- "dev": true,
- "requires": {
- "for-in": "1.0.2"
- }
- },
- "kind-of": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
- "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
- "dev": true
- }
- }
- },
- "cmd-shim": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-2.0.2.tgz",
- "integrity": "sha1-b8vamUg6j9FdfTChlspp1oii79s=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "mkdirp": "0.5.1"
- }
- },
- "co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ="
- },
- "coa": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/coa/-/coa-1.0.4.tgz",
- "integrity": "sha1-qe8VNmDWqGqL3sAomlxoTSF0Mv0=",
- "dev": true,
- "requires": {
- "q": "1.5.1"
- }
- },
- "code-point-at": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
- "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
- "dev": true
- },
- "collection-visit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
- "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
- "dev": true,
- "requires": {
- "map-visit": "1.0.0",
- "object-visit": "1.0.1"
- }
- },
- "color": {
- "version": "0.11.4",
- "resolved": "https://registry.npmjs.org/color/-/color-0.11.4.tgz",
- "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=",
- "dev": true,
- "requires": {
- "clone": "1.0.4",
- "color-convert": "1.9.1",
- "color-string": "0.3.0"
- }
- },
- "color-convert": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz",
- "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==",
- "requires": {
- "color-name": "1.1.3"
- }
- },
- "color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
- },
- "color-string": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz",
- "integrity": "sha1-J9RvtnAlxcL6JZk7+/V55HhBuZE=",
- "dev": true,
- "requires": {
- "color-name": "1.1.3"
- }
- },
- "colormin": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/colormin/-/colormin-1.1.2.tgz",
- "integrity": "sha1-6i90IKcrlogaOKrlnsEkpvcpgTM=",
- "dev": true,
- "requires": {
- "color": "0.11.4",
- "css-color-names": "0.0.4",
- "has": "1.0.1"
- }
- },
- "colors": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
- "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
- "dev": true
- },
- "columnify": {
- "version": "1.5.4",
- "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz",
- "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=",
- "dev": true,
- "requires": {
- "strip-ansi": "3.0.1",
- "wcwidth": "1.0.1"
- }
- },
- "combine-lists": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz",
- "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=",
- "dev": true,
- "requires": {
- "lodash": "4.17.5"
- }
- },
- "combined-stream": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
- "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
- "requires": {
- "delayed-stream": "1.0.0"
- }
- },
- "command-exists": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.2.tgz",
- "integrity": "sha1-EoGcZPr5VEbsCuB/5sr7brNwiyI="
- },
- "command-join": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/command-join/-/command-join-2.0.0.tgz",
- "integrity": "sha1-Uui5hPSHLZUv8b3IuYOX0nxxRM8=",
- "dev": true
- },
- "commander": {
- "version": "2.15.1",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
- "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag=="
- },
- "commondir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
- "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
- "dev": true
- },
- "compare-func": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-1.3.2.tgz",
- "integrity": "sha1-md0LpFfh+bxyKxLAjsM+6rMfpkg=",
- "dev": true,
- "requires": {
- "array-ify": "1.0.0",
- "dot-prop": "3.0.0"
- }
- },
- "component-bind": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
- "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=",
- "dev": true
- },
- "component-emitter": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz",
- "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=",
- "dev": true
- },
- "component-inherit": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
- "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=",
- "dev": true
- },
- "concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
- },
- "concat-stream": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
- "dev": true,
- "requires": {
- "buffer-from": "1.0.0",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "typedarray": "0.0.6"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "config": {
- "version": "1.30.0",
- "resolved": "https://registry.npmjs.org/config/-/config-1.30.0.tgz",
- "integrity": "sha1-HWCp81NIoTwXV5jThOgaWhbDum4=",
- "requires": {
- "json5": "0.4.0",
- "os-homedir": "1.0.2"
- }
- },
- "config-chain": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.11.tgz",
- "integrity": "sha1-q6CXR9++TD5w52am5BWG4YWfxvI=",
- "dev": true,
- "requires": {
- "ini": "1.3.5",
- "proto-list": "1.2.4"
- }
- },
- "configstore": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz",
- "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==",
- "dev": true,
- "requires": {
- "dot-prop": "4.2.0",
- "graceful-fs": "4.1.11",
- "make-dir": "1.2.0",
- "unique-string": "1.0.0",
- "write-file-atomic": "2.3.0",
- "xdg-basedir": "3.0.0"
- },
- "dependencies": {
- "dot-prop": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz",
- "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==",
- "dev": true,
- "requires": {
- "is-obj": "1.0.1"
- }
- }
- }
- },
- "connect": {
- "version": "3.6.6",
- "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz",
- "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=",
- "dev": true,
- "requires": {
- "debug": "2.6.9",
- "finalhandler": "1.1.0",
- "parseurl": "1.3.2",
- "utils-merge": "1.0.1"
- },
- "dependencies": {
- "finalhandler": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz",
- "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=",
- "dev": true,
- "requires": {
- "debug": "2.6.9",
- "encodeurl": "1.0.2",
- "escape-html": "1.0.3",
- "on-finished": "2.3.0",
- "parseurl": "1.3.2",
- "statuses": "1.3.1",
- "unpipe": "1.0.0"
- }
- },
- "statuses": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
- "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=",
- "dev": true
- }
- }
- },
- "console-browserify": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
- "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
- "dev": true,
- "requires": {
- "date-now": "0.1.4"
- }
- },
- "console-control-strings": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
- "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
- "dev": true
- },
- "consolidate": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.14.5.tgz",
- "integrity": "sha1-WiUEe8dvcwcmZ8jLUsmJiI9JTGM=",
- "dev": true,
- "requires": {
- "bluebird": "3.5.1"
- }
- },
- "constants-browserify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
- "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
- "dev": true
- },
- "content-disposition": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz",
- "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ="
- },
- "content-type": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
- "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
- },
- "conventional-changelog": {
- "version": "1.1.19",
- "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-1.1.19.tgz",
- "integrity": "sha512-QlZpBVekLp5U8FWR8CAu0co5CM80ImhhR+nkRkEvp/cJpeiDSct410Pxz/Xec5F4ii+2tfUVChFa94qFjmLf5A==",
- "dev": true,
- "requires": {
- "conventional-changelog-angular": "1.6.6",
- "conventional-changelog-atom": "0.2.5",
- "conventional-changelog-codemirror": "0.3.5",
- "conventional-changelog-core": "2.0.6",
- "conventional-changelog-ember": "0.3.7",
- "conventional-changelog-eslint": "1.0.6",
- "conventional-changelog-express": "0.3.5",
- "conventional-changelog-jquery": "0.1.0",
- "conventional-changelog-jscs": "0.1.0",
- "conventional-changelog-jshint": "0.3.5",
- "conventional-changelog-preset-loader": "1.1.7"
- }
- },
- "conventional-changelog-angular": {
- "version": "1.6.6",
- "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-1.6.6.tgz",
- "integrity": "sha512-suQnFSqCxRwyBxY68pYTsFkG0taIdinHLNEAX5ivtw8bCRnIgnpvcHmlR/yjUyZIrNPYAoXlY1WiEKWgSE4BNg==",
- "dev": true,
- "requires": {
- "compare-func": "1.3.2",
- "q": "1.5.1"
- }
- },
- "conventional-changelog-atom": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-0.2.5.tgz",
- "integrity": "sha512-JNkzZ/T9B7BeY5ec5gxKJY/ZArZF668J+jOtT44l06zkRLEHTBBWYMWB9BW2YBquZjUiJdlsYIK2VKZRpHGMcg==",
- "dev": true,
- "requires": {
- "q": "1.5.1"
- }
- },
- "conventional-changelog-cli": {
- "version": "1.3.17",
- "resolved": "https://registry.npmjs.org/conventional-changelog-cli/-/conventional-changelog-cli-1.3.17.tgz",
- "integrity": "sha512-zXGWyxB4MmEbsTjr5PGP9cxOB9wsLskGMa/2+VyMmDrR5c6DJaoRrg/UH6tRaESK3vbIh0yHnKcA+4jDEfmhNw==",
- "dev": true,
- "requires": {
- "add-stream": "1.0.0",
- "conventional-changelog": "1.1.19",
- "lodash": "4.17.5",
- "meow": "4.0.0",
- "tempfile": "1.1.1"
- }
- },
- "conventional-changelog-codemirror": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.3.5.tgz",
- "integrity": "sha512-TRcKG8wNSEOCQf7giKRTcmXH9lPyrLbYT4jMQxh2LtZ/6WUgS/ocyHk+60Pei5x5woxX+KABx2CTorr08eV2Xg==",
- "dev": true,
- "requires": {
- "q": "1.5.1"
- }
- },
- "conventional-changelog-core": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-2.0.6.tgz",
- "integrity": "sha512-md2KnSj/6UTBHdD/bisCyWOEEX+2pxGDWquGsK9AGUlAdV+PUJEPbK5taEMhpb0fx0o2YiXxS6h92BIBd8HX6w==",
- "dev": true,
- "requires": {
- "conventional-changelog-writer": "3.0.5",
- "conventional-commits-parser": "2.1.6",
- "dateformat": "3.0.3",
- "get-pkg-repo": "1.4.0",
- "git-raw-commits": "1.3.5",
- "git-remote-origin-url": "2.0.0",
- "git-semver-tags": "1.3.5",
- "lodash": "4.17.5",
- "normalize-package-data": "2.4.0",
- "q": "1.5.1",
- "read-pkg": "1.1.0",
- "read-pkg-up": "1.0.1",
- "through2": "2.0.3"
- },
- "dependencies": {
- "load-json-file": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
- "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "parse-json": "2.2.0",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1",
- "strip-bom": "2.0.0"
- }
- },
- "parse-json": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
- "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
- "dev": true,
- "requires": {
- "error-ex": "1.3.1"
- }
- },
- "path-type": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
- "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1"
- }
- },
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- },
- "read-pkg": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
- "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
- "dev": true,
- "requires": {
- "load-json-file": "1.1.0",
- "normalize-package-data": "2.4.0",
- "path-type": "1.1.0"
- }
- },
- "strip-bom": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
- "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
- "dev": true,
- "requires": {
- "is-utf8": "0.2.1"
- }
- }
- }
- },
- "conventional-changelog-ember": {
- "version": "0.3.7",
- "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-0.3.7.tgz",
- "integrity": "sha512-wu0Q6CO/9wll9cedpnWhQqe3z+eJz92hOZxdXyDiu7n0Sp9NC42Nvh/wCNwwWW7/FaPsVXGzbxpYylpebSC1+Q==",
- "dev": true,
- "requires": {
- "q": "1.5.1"
- }
- },
- "conventional-changelog-eslint": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-1.0.6.tgz",
- "integrity": "sha512-+ZOmJez6R3z9DH/OBd6nd4l+saJzyi27i/gqwglW+ibC8XJe+B0lt56MFB1Su8EmjZyX4iDXf/QRUoXT1jzGyQ==",
- "dev": true,
- "requires": {
- "q": "1.5.1"
- }
- },
- "conventional-changelog-express": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-0.3.5.tgz",
- "integrity": "sha512-1H0+evGa2CLUe0VPpiynI3jSP2uMSuvT/iGKzsd5R7iko85Lkwh91Mx9VVgH8scU6RKweEpy2Wn8HN+/0wM6Lg==",
- "dev": true,
- "requires": {
- "q": "1.5.1"
- }
- },
- "conventional-changelog-jquery": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-0.1.0.tgz",
- "integrity": "sha1-Agg5cWLjhGmG5xJztsecW1+A9RA=",
- "dev": true,
- "requires": {
- "q": "1.5.1"
- }
- },
- "conventional-changelog-jscs": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/conventional-changelog-jscs/-/conventional-changelog-jscs-0.1.0.tgz",
- "integrity": "sha1-BHnrRDzH1yxYvwvPDvHURKkvDlw=",
- "dev": true,
- "requires": {
- "q": "1.5.1"
- }
- },
- "conventional-changelog-jshint": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-0.3.5.tgz",
- "integrity": "sha512-K1dOn53tMah5ggkR95/V+1foi0cxALl4AWIks6RR0jLE0vOktn9utDgCQD7HcRbQ4i2U2odhYbPTbIFRJs1fIA==",
- "dev": true,
- "requires": {
- "compare-func": "1.3.2",
- "q": "1.5.1"
- }
- },
- "conventional-changelog-preset-loader": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-1.1.7.tgz",
- "integrity": "sha512-Lx188u/dEFrwcZ+CWYm/3BXM9HEMUV0hxxVX9VMZ12wsXXZokYnJe5RJC6ZcLvElsjCKehtmT+gGio5QdvCOTg==",
- "dev": true
- },
- "conventional-changelog-writer": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-3.0.5.tgz",
- "integrity": "sha512-4nVvhRvvtdbBSfoeK+1QIbjqjx4Y+VddF4NRcsJgInDnA/TuVel0SXLCtTOeRH1DueFctiuILfVqdammBxmWEQ==",
- "dev": true,
- "requires": {
- "compare-func": "1.3.2",
- "conventional-commits-filter": "1.1.6",
- "dateformat": "3.0.3",
- "handlebars": "4.0.11",
- "json-stringify-safe": "5.0.1",
- "lodash": "4.17.5",
- "meow": "4.0.0",
- "semver": "5.5.0",
- "split": "1.0.1",
- "through2": "2.0.3"
- }
- },
- "conventional-commits-filter": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-1.1.6.tgz",
- "integrity": "sha512-KcDgtCRKJCQhyk6VLT7zR+ZOyCnerfemE/CsR3iQpzRRFbLEs0Y6rwk3mpDvtOh04X223z+1xyJ582Stfct/0Q==",
- "dev": true,
- "requires": {
- "is-subset": "0.1.1",
- "modify-values": "1.0.1"
- }
- },
- "conventional-commits-parser": {
- "version": "2.1.6",
- "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-2.1.6.tgz",
- "integrity": "sha512-3Z77cAKSvEG3D5BSm3IFkOTP2qz8TZX8e8OPU7BGP2ruP7zPs7laHSqiZ7eYup835FKP4yyj+DHjmcvmOyp/0w==",
- "dev": true,
- "requires": {
- "JSONStream": "1.3.2",
- "is-text-path": "1.0.1",
- "lodash": "4.17.5",
- "meow": "4.0.0",
- "split2": "2.2.0",
- "through2": "2.0.3",
- "trim-off-newlines": "1.0.1"
- }
- },
- "conventional-recommended-bump": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-1.2.1.tgz",
- "integrity": "sha512-oJjG6DkRgtnr/t/VrPdzmf4XZv8c4xKVJrVT4zrSHd92KEL+EYxSbYoKq8lQ7U5yLMw7130wrcQTLRjM/T+d4w==",
- "dev": true,
- "requires": {
- "concat-stream": "1.6.2",
- "conventional-commits-filter": "1.1.6",
- "conventional-commits-parser": "2.1.6",
- "git-raw-commits": "1.3.5",
- "git-semver-tags": "1.3.5",
- "meow": "3.7.0",
- "object-assign": "4.1.1"
- },
- "dependencies": {
- "camelcase": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
- "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
- "dev": true
- },
- "camelcase-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
- "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
- "dev": true,
- "requires": {
- "camelcase": "2.1.1",
- "map-obj": "1.0.1"
- }
- },
- "indent-string": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
- "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
- "dev": true,
- "requires": {
- "repeating": "2.0.1"
- }
- },
- "map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
- "dev": true
- },
- "meow": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
- "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
- "dev": true,
- "requires": {
- "camelcase-keys": "2.1.0",
- "decamelize": "1.2.0",
- "loud-rejection": "1.6.0",
- "map-obj": "1.0.1",
- "minimist": "1.2.0",
- "normalize-package-data": "2.4.0",
- "object-assign": "4.1.1",
- "read-pkg-up": "1.0.1",
- "redent": "1.0.0",
- "trim-newlines": "1.0.0"
- }
- },
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- },
- "redent": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
- "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
- "dev": true,
- "requires": {
- "indent-string": "2.1.0",
- "strip-indent": "1.0.1"
- }
- },
- "strip-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
- "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
- "dev": true,
- "requires": {
- "get-stdin": "4.0.1"
- }
- },
- "trim-newlines": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
- "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
- "dev": true
- }
- }
- },
- "convert-source-map": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz",
- "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=",
- "dev": true
- },
- "cookie": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
- "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
- },
- "cookie-signature": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
- "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
- },
- "copy-concurrently": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz",
- "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==",
- "dev": true,
- "requires": {
- "aproba": "1.2.0",
- "fs-write-stream-atomic": "1.0.10",
- "iferr": "0.1.5",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.2",
- "run-queue": "1.0.3"
- }
- },
- "copy-descriptor": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
- "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
- "dev": true
- },
- "core-js": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
- "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY="
- },
- "core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
- },
- "create-ecdh": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz",
- "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=",
- "dev": true,
- "requires": {
- "bn.js": "4.11.8",
- "elliptic": "6.4.0"
- }
- },
- "create-error-class": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz",
- "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=",
- "dev": true,
- "requires": {
- "capture-stack-trace": "1.0.0"
- }
- },
- "create-hash": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz",
- "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=",
- "dev": true,
- "requires": {
- "cipher-base": "1.0.4",
- "inherits": "2.0.3",
- "ripemd160": "2.0.1",
- "sha.js": "2.4.11"
- }
- },
- "create-hmac": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz",
- "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=",
- "dev": true,
- "requires": {
- "cipher-base": "1.0.4",
- "create-hash": "1.1.3",
- "inherits": "2.0.3",
- "ripemd160": "2.0.1",
- "safe-buffer": "5.1.1",
- "sha.js": "2.4.11"
- }
- },
- "cross-env": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-3.2.4.tgz",
- "integrity": "sha1-ngWF8neGTtQhznVvgamA/w1piro=",
- "requires": {
- "cross-spawn": "5.1.0",
- "is-windows": "1.0.2"
- }
- },
- "cross-spawn": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
- "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
- "requires": {
- "lru-cache": "4.1.2",
- "shebang-command": "1.2.0",
- "which": "1.3.0"
- }
- },
- "cryptiles": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz",
- "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=",
- "requires": {
- "boom": "5.2.0"
- },
- "dependencies": {
- "boom": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz",
- "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==",
- "requires": {
- "hoek": "4.2.1"
- }
- }
- }
- },
- "crypto-browserify": {
- "version": "3.12.0",
- "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
- "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
- "dev": true,
- "requires": {
- "browserify-cipher": "1.0.0",
- "browserify-sign": "4.0.4",
- "create-ecdh": "4.0.0",
- "create-hash": "1.1.3",
- "create-hmac": "1.1.6",
- "diffie-hellman": "5.0.2",
- "inherits": "2.0.3",
- "pbkdf2": "3.0.14",
- "public-encrypt": "4.0.0",
- "randombytes": "2.0.6",
- "randomfill": "1.0.4"
- }
- },
- "crypto-random-string": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz",
- "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=",
- "dev": true
- },
- "css-color-names": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz",
- "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=",
- "dev": true
- },
- "css-loader": {
- "version": "0.23.1",
- "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.23.1.tgz",
- "integrity": "sha1-n6I/K1wJZSNZEK1ezvO4o2OQ/lA=",
- "dev": true,
- "requires": {
- "css-selector-tokenizer": "0.5.4",
- "cssnano": "3.10.0",
- "loader-utils": "0.2.17",
- "lodash.camelcase": "3.0.1",
- "object-assign": "4.1.1",
- "postcss": "5.2.18",
- "postcss-modules-extract-imports": "1.1.0",
- "postcss-modules-local-by-default": "1.2.0",
- "postcss-modules-scope": "1.1.0",
- "postcss-modules-values": "1.3.0",
- "source-list-map": "0.1.8"
- },
- "dependencies": {
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "loader-utils": {
- "version": "0.2.17",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
- "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
- "dev": true,
- "requires": {
- "big.js": "3.2.0",
- "emojis-list": "2.1.0",
- "json5": "0.5.1",
- "object-assign": "4.1.1"
- }
- }
- }
- },
- "css-parse": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz",
- "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=",
- "dev": true
- },
- "css-select": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
- "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=",
- "requires": {
- "boolbase": "1.0.0",
- "css-what": "2.1.0",
- "domutils": "1.5.1",
- "nth-check": "1.0.1"
- }
- },
- "css-selector-tokenizer": {
- "version": "0.5.4",
- "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.5.4.tgz",
- "integrity": "sha1-E5uv00o1/QwUKEhwSeBpnm9qLCE=",
- "dev": true,
- "requires": {
- "cssesc": "0.1.0",
- "fastparse": "1.1.1"
- }
- },
- "css-what": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz",
- "integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0="
- },
- "cssesc": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz",
- "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=",
- "dev": true
- },
- "cssnano": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-3.10.0.tgz",
- "integrity": "sha1-Tzj2zqK5sX+gFJDyPx3GjqZcHDg=",
- "dev": true,
- "requires": {
- "autoprefixer": "6.7.7",
- "decamelize": "1.2.0",
- "defined": "1.0.0",
- "has": "1.0.1",
- "object-assign": "4.1.1",
- "postcss": "5.2.18",
- "postcss-calc": "5.3.1",
- "postcss-colormin": "2.2.2",
- "postcss-convert-values": "2.6.1",
- "postcss-discard-comments": "2.0.4",
- "postcss-discard-duplicates": "2.1.0",
- "postcss-discard-empty": "2.1.0",
- "postcss-discard-overridden": "0.1.1",
- "postcss-discard-unused": "2.2.3",
- "postcss-filter-plugins": "2.0.2",
- "postcss-merge-idents": "2.1.7",
- "postcss-merge-longhand": "2.0.2",
- "postcss-merge-rules": "2.1.2",
- "postcss-minify-font-values": "1.0.5",
- "postcss-minify-gradients": "1.0.5",
- "postcss-minify-params": "1.2.2",
- "postcss-minify-selectors": "2.1.1",
- "postcss-normalize-charset": "1.1.1",
- "postcss-normalize-url": "3.0.8",
- "postcss-ordered-values": "2.2.3",
- "postcss-reduce-idents": "2.4.0",
- "postcss-reduce-initial": "1.0.1",
- "postcss-reduce-transforms": "1.0.4",
- "postcss-svgo": "2.1.6",
- "postcss-unique-selectors": "2.0.2",
- "postcss-value-parser": "3.3.0",
- "postcss-zindex": "2.2.0"
- }
- },
- "csso": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/csso/-/csso-2.3.2.tgz",
- "integrity": "sha1-3dUsWHAz9J6Utx/FVWnyUuj/X4U=",
- "dev": true,
- "requires": {
- "clap": "1.2.3",
- "source-map": "0.5.7"
- },
- "dependencies": {
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "cssom": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.2.tgz",
- "integrity": "sha1-uANhcMefB6kP8vFuIihAJ6JDhIs="
- },
- "cssstyle": {
- "version": "0.2.37",
- "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-0.2.37.tgz",
- "integrity": "sha1-VBCXI0yyUTyDzu06zdwn/yeYfVQ=",
- "optional": true,
- "requires": {
- "cssom": "0.3.2"
- }
- },
- "currently-unhandled": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
- "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
- "dev": true,
- "requires": {
- "array-find-index": "1.0.2"
- }
- },
- "custom-event": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz",
- "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=",
- "dev": true
- },
- "cyclist": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz",
- "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=",
- "dev": true
- },
- "d3-dsv": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-1.0.8.tgz",
- "integrity": "sha512-IVCJpQ+YGe3qu6odkPQI0KPqfxkhbP/oM1XhhE/DFiYmcXKfCRub4KXyiuehV1d4drjWVXHUWx4gHqhdZb6n/A==",
- "requires": {
- "commander": "2.15.1",
- "iconv-lite": "0.4.19",
- "rw": "1.3.3"
- }
- },
- "dargs": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/dargs/-/dargs-4.1.0.tgz",
- "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "dashdash": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
- "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
- "requires": {
- "assert-plus": "1.0.0"
- }
- },
- "date-now": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
- "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=",
- "dev": true
- },
- "dateformat": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
- "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==",
- "dev": true
- },
- "de-indent": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz",
- "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=",
- "dev": true
- },
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "requires": {
- "ms": "2.0.0"
- }
- },
- "decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
- "dev": true
- },
- "decamelize-keys": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz",
- "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=",
- "dev": true,
- "requires": {
- "decamelize": "1.2.0",
- "map-obj": "1.0.1"
- },
- "dependencies": {
- "map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
- "dev": true
- }
- }
- },
- "decode-uri-component": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
- "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
- "dev": true
- },
- "dedent": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
- "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=",
- "dev": true
- },
- "deep-eql": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-0.1.3.tgz",
- "integrity": "sha1-71WKyrjeJSBs1xOQbXTlaTDrafI=",
- "dev": true,
- "requires": {
- "type-detect": "0.1.1"
- },
- "dependencies": {
- "type-detect": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-0.1.1.tgz",
- "integrity": "sha1-C6XsKohWQORw6k6FBZcZANrFiCI=",
- "dev": true
- }
- }
- },
- "deep-extend": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz",
- "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=",
- "dev": true
- },
- "deep-is": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
- "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ="
- },
- "deepmerge": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.1.0.tgz",
- "integrity": "sha512-Q89Z26KAfA3lpPGhbF6XMfYAm3jIV3avViy6KOJ2JLzFbeWHOvPQUu5aSJIWXap3gDZC2y1eF5HXEPI2wGqgvw=="
- },
- "defaults": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz",
- "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=",
- "dev": true,
- "requires": {
- "clone": "1.0.4"
- }
- },
- "define-property": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
- "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
- "dev": true,
- "requires": {
- "is-descriptor": "1.0.2",
- "isobject": "3.0.1"
- },
- "dependencies": {
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "defined": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
- "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
- "dev": true
- },
- "del": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
- "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
- "dev": true,
- "requires": {
- "globby": "5.0.0",
- "is-path-cwd": "1.0.0",
- "is-path-in-cwd": "1.0.1",
- "object-assign": "4.1.1",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1",
- "rimraf": "2.6.2"
- },
- "dependencies": {
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- }
- }
- },
- "delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
- },
- "delegates": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
- "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
- "dev": true
- },
- "depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
- },
- "des.js": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz",
- "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "minimalistic-assert": "1.0.0"
- }
- },
- "destroy": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
- "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
- },
- "detect-indent": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
- "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=",
- "dev": true,
- "requires": {
- "repeating": "2.0.1"
- }
- },
- "detect-installed": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/detect-installed/-/detect-installed-2.0.4.tgz",
- "integrity": "sha1-oIUEZefD68/5eda2U1rTRLgN18U=",
- "requires": {
- "get-installed-path": "2.1.1"
- }
- },
- "di": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz",
- "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=",
- "dev": true
- },
- "diff": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-3.2.0.tgz",
- "integrity": "sha1-yc45Okt8vQsFinJck98pkCeGj/k=",
- "dev": true
- },
- "diffie-hellman": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz",
- "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=",
- "dev": true,
- "requires": {
- "bn.js": "4.11.8",
- "miller-rabin": "4.0.1",
- "randombytes": "2.0.6"
- }
- },
- "doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dev": true,
- "requires": {
- "esutils": "2.0.2"
- }
- },
- "dom-converter": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.1.4.tgz",
- "integrity": "sha1-pF71cnuJDJv/5tfIduexnLDhfzs=",
- "dev": true,
- "requires": {
- "utila": "0.3.3"
- },
- "dependencies": {
- "utila": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz",
- "integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY=",
- "dev": true
- }
- }
- },
- "dom-serialize": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz",
- "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=",
- "dev": true,
- "requires": {
- "custom-event": "1.0.1",
- "ent": "2.2.0",
- "extend": "3.0.1",
- "void-elements": "2.0.1"
- }
- },
- "dom-serializer": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz",
- "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=",
- "requires": {
- "domelementtype": "1.1.3",
- "entities": "1.1.1"
- },
- "dependencies": {
- "domelementtype": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz",
- "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs="
- }
- }
- },
- "dom-urls": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/dom-urls/-/dom-urls-1.1.0.tgz",
- "integrity": "sha1-AB3fgWKM0ecGElxxdvU8zsVdkY4=",
- "dev": true,
- "requires": {
- "urijs": "1.19.1"
- }
- },
- "domain-browser": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
- "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
- "dev": true
- },
- "domelementtype": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz",
- "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI="
- },
- "domhandler": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz",
- "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
- "requires": {
- "domelementtype": "1.3.0"
- }
- },
- "domutils": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
- "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
- "requires": {
- "dom-serializer": "0.1.0",
- "domelementtype": "1.3.0"
- }
- },
- "dot-prop": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-3.0.0.tgz",
- "integrity": "sha1-G3CK8JSknJoOfbyteQq6U52sEXc=",
- "dev": true,
- "requires": {
- "is-obj": "1.0.1"
- }
- },
- "duplexer": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
- "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=",
- "dev": true
- },
- "duplexer3": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
- "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=",
- "dev": true
- },
- "duplexify": {
- "version": "3.5.4",
- "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.4.tgz",
- "integrity": "sha512-JzYSLYMhoVVBe8+mbHQ4KgpvHpm0DZpJuL8PY93Vyv1fW7jYJ90LoXa1di/CVbJM+TgMs91rbDapE/RNIfnJsA==",
- "dev": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "ecc-jsbn": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
- "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
- "optional": true,
- "requires": {
- "jsbn": "0.1.1"
- }
- },
- "editorconfig": {
- "version": "0.13.3",
- "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.13.3.tgz",
- "integrity": "sha512-WkjsUNVCu+ITKDj73QDvi0trvpdDWdkDyHybDGSXPfekLCqwmpD7CP7iPbvBgosNuLcI96XTDwNa75JyFl7tEQ==",
- "dev": true,
- "requires": {
- "bluebird": "3.5.1",
- "commander": "2.15.1",
- "lru-cache": "3.2.0",
- "semver": "5.5.0",
- "sigmund": "1.0.1"
- },
- "dependencies": {
- "lru-cache": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-3.2.0.tgz",
- "integrity": "sha1-cXibO39Tmb7IVl3aOKow0qCX7+4=",
- "dev": true,
- "requires": {
- "pseudomap": "1.0.2"
- }
- }
- }
- },
- "ee-first": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
- "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
- },
- "elasticsearch": {
- "version": "13.3.1",
- "resolved": "https://registry.npmjs.org/elasticsearch/-/elasticsearch-13.3.1.tgz",
- "integrity": "sha1-xTCuqa+xfqkcPQpW8fERukm8kjk=",
- "requires": {
- "agentkeepalive": "2.2.0",
- "chalk": "1.1.3",
- "lodash": "2.4.2",
- "lodash.get": "4.4.2",
- "lodash.isempty": "4.4.0",
- "lodash.trimend": "4.5.1"
- },
- "dependencies": {
- "lodash": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
- "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4="
- }
- }
- },
- "electron-to-chromium": {
- "version": "1.3.40",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.40.tgz",
- "integrity": "sha1-H71tl779crim+SHcONIkE9L2/d8=",
- "dev": true
- },
- "elliptic": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz",
- "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=",
- "dev": true,
- "requires": {
- "bn.js": "4.11.8",
- "brorand": "1.1.0",
- "hash.js": "1.1.3",
- "hmac-drbg": "1.0.1",
- "inherits": "2.0.3",
- "minimalistic-assert": "1.0.0",
- "minimalistic-crypto-utils": "1.0.1"
- }
- },
- "emojis-list": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
- "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k="
- },
- "empty-dir": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/empty-dir/-/empty-dir-0.2.1.tgz",
- "integrity": "sha1-gJ7kih60rRy1EMJXLWb9DthNAas=",
- "requires": {
- "fs-exists-sync": "0.1.0"
- }
- },
- "encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
- },
- "encoding": {
- "version": "0.1.12",
- "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz",
- "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=",
- "requires": {
- "iconv-lite": "0.4.19"
- }
- },
- "end-of-stream": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
- "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
- "dev": true,
- "requires": {
- "once": "1.4.0"
- }
- },
- "engine.io": {
- "version": "1.8.3",
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.3.tgz",
- "integrity": "sha1-jef5eJXSDTm4X4ju7nd7K9QrE9Q=",
- "dev": true,
- "requires": {
- "accepts": "1.3.3",
- "base64id": "1.0.0",
- "cookie": "0.3.1",
- "debug": "2.3.3",
- "engine.io-parser": "1.3.2",
- "ws": "1.1.2"
- },
- "dependencies": {
- "accepts": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz",
- "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=",
- "dev": true,
- "requires": {
- "mime-types": "2.1.18",
- "negotiator": "0.6.1"
- }
- },
- "debug": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
- "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
- "dev": true,
- "requires": {
- "ms": "0.7.2"
- }
- },
- "ms": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
- "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
- "dev": true
- }
- }
- },
- "engine.io-client": {
- "version": "1.8.3",
- "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.3.tgz",
- "integrity": "sha1-F5jtk0USRkU9TG9jXXogH+lA1as=",
- "dev": true,
- "requires": {
- "component-emitter": "1.2.1",
- "component-inherit": "0.0.3",
- "debug": "2.3.3",
- "engine.io-parser": "1.3.2",
- "has-cors": "1.1.0",
- "indexof": "0.0.1",
- "parsejson": "0.0.3",
- "parseqs": "0.0.5",
- "parseuri": "0.0.5",
- "ws": "1.1.2",
- "xmlhttprequest-ssl": "1.5.3",
- "yeast": "0.1.2"
- },
- "dependencies": {
- "component-emitter": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
- "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
- "dev": true
- },
- "debug": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
- "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
- "dev": true,
- "requires": {
- "ms": "0.7.2"
- }
- },
- "ms": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
- "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
- "dev": true
- }
- }
- },
- "engine.io-parser": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz",
- "integrity": "sha1-k3sHnwAH0Ik+xW1GyyILjLQ1Igo=",
- "dev": true,
- "requires": {
- "after": "0.8.2",
- "arraybuffer.slice": "0.0.6",
- "base64-arraybuffer": "0.1.5",
- "blob": "0.0.4",
- "has-binary": "0.1.7",
- "wtf-8": "1.0.0"
- }
- },
- "enhanced-resolve": {
- "version": "3.4.1",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz",
- "integrity": "sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "memory-fs": "0.4.1",
- "object-assign": "4.1.1",
- "tapable": "0.2.8"
- }
- },
- "ent": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
- "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",
- "dev": true
- },
- "entities": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz",
- "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA="
- },
- "errno": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz",
- "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==",
- "dev": true,
- "requires": {
- "prr": "1.0.1"
- }
- },
- "error-ex": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
- "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
- "dev": true,
- "requires": {
- "is-arrayish": "0.2.1"
- }
- },
- "es6-promise": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz",
- "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ=="
- },
- "escape-html": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
- "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
- },
- "escodegen": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.9.1.tgz",
- "integrity": "sha512-6hTjO1NAWkHnDk3OqQ4YrCuwwmGHL9S3nPlzBOUG/R44rda3wLNrfvQ5fkSGjyhHFKM7ALPKcKGrwvCLe0lC7Q==",
- "optional": true,
- "requires": {
- "esprima": "3.1.3",
- "estraverse": "4.2.0",
- "esutils": "2.0.2",
- "optionator": "0.8.2",
- "source-map": "0.6.1"
- }
- },
- "eslint": {
- "version": "4.19.1",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz",
- "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==",
- "dev": true,
- "requires": {
- "ajv": "5.5.2",
- "babel-code-frame": "6.26.0",
- "chalk": "2.3.2",
- "concat-stream": "1.6.2",
- "cross-spawn": "5.1.0",
- "debug": "3.1.0",
- "doctrine": "2.1.0",
- "eslint-scope": "3.7.1",
- "eslint-visitor-keys": "1.0.0",
- "espree": "3.5.4",
- "esquery": "1.0.0",
- "esutils": "2.0.2",
- "file-entry-cache": "2.0.0",
- "functional-red-black-tree": "1.0.1",
- "glob": "7.1.2",
- "globals": "11.4.0",
- "ignore": "3.3.7",
- "imurmurhash": "0.1.4",
- "inquirer": "3.3.0",
- "is-resolvable": "1.1.0",
- "js-yaml": "3.11.0",
- "json-stable-stringify-without-jsonify": "1.0.1",
- "levn": "0.3.0",
- "lodash": "4.17.5",
- "minimatch": "3.0.4",
- "mkdirp": "0.5.1",
- "natural-compare": "1.4.0",
- "optionator": "0.8.2",
- "path-is-inside": "1.0.2",
- "pluralize": "7.0.0",
- "progress": "2.0.0",
- "regexpp": "1.0.1",
- "require-uncached": "1.0.3",
- "semver": "5.5.0",
- "strip-ansi": "4.0.0",
- "strip-json-comments": "2.0.1",
- "table": "4.0.2",
- "text-table": "0.2.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
- "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
- "dev": true
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "esprima": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
- "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
- "dev": true
- },
- "globals": {
- "version": "11.4.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.4.0.tgz",
- "integrity": "sha512-Dyzmifil8n/TmSqYDEXbm+C8yitzJQqQIlJQLNRMwa+BOUJpRC19pyVeN12JAjt61xonvXjtff+hJruTRXn5HA==",
- "dev": true
- },
- "js-yaml": {
- "version": "3.11.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz",
- "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==",
- "dev": true,
- "requires": {
- "argparse": "1.0.10",
- "esprima": "4.0.0"
- }
- },
- "strip-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
- "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
- "dev": true,
- "requires": {
- "ansi-regex": "3.0.0"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "eslint-config-standard": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-6.2.1.tgz",
- "integrity": "sha1-06aKr8cZFjnn7kQec0hzkCY1QpI=",
- "dev": true
- },
- "eslint-friendly-formatter": {
- "version": "2.0.7",
- "resolved": "https://registry.npmjs.org/eslint-friendly-formatter/-/eslint-friendly-formatter-2.0.7.tgz",
- "integrity": "sha1-ZX+VoZr0mJY2r+uxzJ3mzrvQiO4=",
- "dev": true,
- "requires": {
- "chalk": "1.1.3",
- "extend": "3.0.1",
- "minimist": "1.2.0",
- "text-table": "0.2.0"
- },
- "dependencies": {
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- }
- }
- },
- "eslint-loader": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-1.9.0.tgz",
- "integrity": "sha512-40aN976qSNPyb9ejTqjEthZITpls1SVKtwguahmH1dzGCwQU/vySE+xX33VZmD8csU0ahVNCtFlsPgKqRBiqgg==",
- "dev": true,
- "requires": {
- "loader-fs-cache": "1.0.1",
- "loader-utils": "1.1.0",
- "object-assign": "4.1.1",
- "object-hash": "1.3.0",
- "rimraf": "2.6.2"
- }
- },
- "eslint-plugin-promise": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.7.0.tgz",
- "integrity": "sha512-2WO+ZFh7vxUKRfR0cOIMrWgYKdR6S1AlOezw6pC52B6oYpd5WFghN+QHxvrRdZMtbo8h3dfUZ2o1rWb0UPbKtg==",
- "dev": true
- },
- "eslint-plugin-standard": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-2.3.1.tgz",
- "integrity": "sha1-Z2W9Km2ezce98bFFrkuzDit7hvg=",
- "dev": true
- },
- "eslint-plugin-vue": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-4.4.0.tgz",
- "integrity": "sha512-UHeE0aTEv9A/9xe8J6X7rDLMbwV6GuQFKAscMyLEv49Y4wK4KwQiifr2X0MsNsVlmccrDUyjI9KO4DuFTkPP9A==",
- "dev": true,
- "requires": {
- "vue-eslint-parser": "2.0.3"
- }
- },
- "eslint-scope": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz",
- "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=",
- "dev": true,
- "requires": {
- "esrecurse": "4.2.1",
- "estraverse": "4.2.0"
- }
- },
- "eslint-visitor-keys": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz",
- "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==",
- "dev": true
- },
- "espree": {
- "version": "3.5.4",
- "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
- "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
- "dev": true,
- "requires": {
- "acorn": "5.5.3",
- "acorn-jsx": "3.0.1"
- },
- "dependencies": {
- "acorn": {
- "version": "5.5.3",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz",
- "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==",
- "dev": true
- }
- }
- },
- "esprima": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
- "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=",
- "optional": true
- },
- "esquery": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz",
- "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=",
- "dev": true,
- "requires": {
- "estraverse": "4.2.0"
- }
- },
- "esrecurse": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
- "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
- "dev": true,
- "requires": {
- "estraverse": "4.2.0"
- }
- },
- "estraverse": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz",
- "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM="
- },
- "esutils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
- "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs="
- },
- "etag": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
- "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
- },
- "eventemitter3": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz",
- "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=",
- "dev": true
- },
- "events": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz",
- "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=",
- "dev": true
- },
- "evp_bytestokey": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
- "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
- "dev": true,
- "requires": {
- "md5.js": "1.3.4",
- "safe-buffer": "5.1.1"
- }
- },
- "execa": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz",
- "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=",
- "dev": true,
- "requires": {
- "cross-spawn": "5.1.0",
- "get-stream": "3.0.0",
- "is-stream": "1.1.0",
- "npm-run-path": "2.0.2",
- "p-finally": "1.0.0",
- "signal-exit": "3.0.2",
- "strip-eof": "1.0.0"
- }
- },
- "expand-braces": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz",
- "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=",
- "dev": true,
- "requires": {
- "array-slice": "0.2.3",
- "array-unique": "0.2.1",
- "braces": "0.1.5"
- },
- "dependencies": {
- "braces": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz",
- "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=",
- "dev": true,
- "requires": {
- "expand-range": "0.1.1"
- }
- },
- "expand-range": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz",
- "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=",
- "dev": true,
- "requires": {
- "is-number": "0.1.1",
- "repeat-string": "0.2.2"
- }
- },
- "is-number": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz",
- "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=",
- "dev": true
- },
- "repeat-string": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz",
- "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=",
- "dev": true
- }
- }
- },
- "expand-brackets": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
- "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
- "dev": true,
- "requires": {
- "is-posix-bracket": "0.1.1"
- }
- },
- "expand-range": {
- "version": "1.8.2",
- "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
- "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
- "dev": true,
- "requires": {
- "fill-range": "2.2.3"
- }
- },
- "expand-tilde": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
- "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
- "requires": {
- "homedir-polyfill": "1.0.1"
- }
- },
- "express": {
- "version": "4.16.3",
- "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz",
- "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=",
- "requires": {
- "accepts": "1.3.5",
- "array-flatten": "1.1.1",
- "body-parser": "1.18.2",
- "content-disposition": "0.5.2",
- "content-type": "1.0.4",
- "cookie": "0.3.1",
- "cookie-signature": "1.0.6",
- "debug": "2.6.9",
- "depd": "1.1.2",
- "encodeurl": "1.0.2",
- "escape-html": "1.0.3",
- "etag": "1.8.1",
- "finalhandler": "1.1.1",
- "fresh": "0.5.2",
- "merge-descriptors": "1.0.1",
- "methods": "1.1.2",
- "on-finished": "2.3.0",
- "parseurl": "1.3.2",
- "path-to-regexp": "0.1.7",
- "proxy-addr": "2.0.3",
- "qs": "6.5.1",
- "range-parser": "1.2.0",
- "safe-buffer": "5.1.1",
- "send": "0.16.2",
- "serve-static": "1.13.2",
- "setprototypeof": "1.1.0",
- "statuses": "1.4.0",
- "type-is": "1.6.16",
- "utils-merge": "1.0.1",
- "vary": "1.1.2"
- }
- },
- "extend": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
- "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ="
- },
- "extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
- "dev": true,
- "requires": {
- "assign-symbols": "1.0.0",
- "is-extendable": "1.0.1"
- },
- "dependencies": {
- "is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "requires": {
- "is-plain-object": "2.0.4"
- }
- }
- }
- },
- "external-editor": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz",
- "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==",
- "requires": {
- "chardet": "0.4.2",
- "iconv-lite": "0.4.19",
- "tmp": "0.0.33"
- }
- },
- "extglob": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
- "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
- "dev": true,
- "requires": {
- "is-extglob": "1.0.0"
- }
- },
- "extract-zip": {
- "version": "1.6.6",
- "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.6.tgz",
- "integrity": "sha1-EpDt6NINCHK0Kf0/NRyhKOxe+Fw=",
- "dev": true,
- "requires": {
- "concat-stream": "1.6.0",
- "debug": "2.6.9",
- "mkdirp": "0.5.0",
- "yauzl": "2.4.1"
- },
- "dependencies": {
- "concat-stream": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz",
- "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "typedarray": "0.0.6"
- }
- },
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "mkdirp": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
- "integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=",
- "dev": true,
- "requires": {
- "minimist": "0.0.8"
- }
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "extsprintf": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
- "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
- },
- "fast-deep-equal": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
- "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ="
- },
- "fast-json-stable-stringify": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
- "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I="
- },
- "fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
- },
- "fastparse": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz",
- "integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=",
- "dev": true
- },
- "fd-slicer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz",
- "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=",
- "dev": true,
- "requires": {
- "pend": "1.2.0"
- }
- },
- "figures": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
- "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=",
- "requires": {
- "escape-string-regexp": "1.0.5"
- }
- },
- "file-entry-cache": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz",
- "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=",
- "dev": true,
- "requires": {
- "flat-cache": "1.3.0",
- "object-assign": "4.1.1"
- }
- },
- "file-loader": {
- "version": "0.8.5",
- "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-0.8.5.tgz",
- "integrity": "sha1-knXQMf54DyfUf19K8CvUNxPMFRs=",
- "dev": true,
- "requires": {
- "loader-utils": "0.2.17"
- },
- "dependencies": {
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "loader-utils": {
- "version": "0.2.17",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
- "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
- "dev": true,
- "requires": {
- "big.js": "3.2.0",
- "emojis-list": "2.1.0",
- "json5": "0.5.1",
- "object-assign": "4.1.1"
- }
- }
- }
- },
- "filename-regex": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
- "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=",
- "dev": true
- },
- "fill-range": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
- "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
- "dev": true,
- "requires": {
- "is-number": "2.1.0",
- "isobject": "2.1.0",
- "randomatic": "1.1.7",
- "repeat-element": "1.1.2",
- "repeat-string": "1.6.1"
- }
- },
- "finalhandler": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
- "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==",
- "requires": {
- "debug": "2.6.9",
- "encodeurl": "1.0.2",
- "escape-html": "1.0.3",
- "on-finished": "2.3.0",
- "parseurl": "1.3.2",
- "statuses": "1.4.0",
- "unpipe": "1.0.0"
- }
- },
- "find-cache-dir": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz",
- "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=",
- "dev": true,
- "requires": {
- "commondir": "1.0.1",
- "make-dir": "1.2.0",
- "pkg-dir": "2.0.0"
- }
- },
- "find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "requires": {
- "locate-path": "2.0.0"
- }
- },
- "flat-cache": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz",
- "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=",
- "dev": true,
- "requires": {
- "circular-json": "0.3.3",
- "del": "2.2.2",
- "graceful-fs": "4.1.11",
- "write": "0.2.1"
- }
- },
- "flatten": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz",
- "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=",
- "dev": true
- },
- "flush-write-stream": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz",
- "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "follow-redirects": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-0.0.7.tgz",
- "integrity": "sha1-NLkLqyqRGqNHVx2pDyK9NuzYqRk=",
- "requires": {
- "debug": "2.6.9",
- "stream-consume": "0.1.1"
- }
- },
- "for-in": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
- "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
- "dev": true
- },
- "for-own": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
- "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
- "dev": true,
- "requires": {
- "for-in": "1.0.2"
- }
- },
- "forever-agent": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
- "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
- },
- "form-data": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
- "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
- "requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.6",
- "mime-types": "2.1.18"
- }
- },
- "formatio": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/formatio/-/formatio-1.1.1.tgz",
- "integrity": "sha1-XtPM1jZVEJc4NGXZlhmRAOhhYek=",
- "dev": true,
- "requires": {
- "samsam": "1.1.2"
- }
- },
- "forwarded": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
- "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ="
- },
- "fragment-cache": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
- "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
- "dev": true,
- "requires": {
- "map-cache": "0.2.2"
- }
- },
- "fresh": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
- "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
- },
- "from2": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz",
- "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "fs-exists-sync": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz",
- "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0="
- },
- "fs-extra": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz",
- "integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "jsonfile": "2.4.0",
- "klaw": "1.3.1"
- },
- "dependencies": {
- "jsonfile": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz",
- "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11"
- }
- }
- }
- },
- "fs-write-stream-atomic": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
- "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "iferr": "0.1.5",
- "imurmurhash": "0.1.4",
- "readable-stream": "1.1.14"
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
- },
- "fsevents": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz",
- "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==",
- "dev": true,
- "optional": true,
- "requires": {
- "nan": "2.10.0",
- "node-pre-gyp": "0.6.39"
- },
- "dependencies": {
- "abbrev": {
- "version": "1.1.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "ajv": {
- "version": "4.11.8",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "co": "4.6.0",
- "json-stable-stringify": "1.0.1"
- }
- },
- "ansi-regex": {
- "version": "2.1.1",
- "bundled": true,
- "dev": true
- },
- "aproba": {
- "version": "1.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "are-we-there-yet": {
- "version": "1.1.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "delegates": "1.0.0",
- "readable-stream": "2.2.9"
- }
- },
- "asn1": {
- "version": "0.2.3",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "assert-plus": {
- "version": "0.2.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "asynckit": {
- "version": "0.4.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "aws-sign2": {
- "version": "0.6.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "aws4": {
- "version": "1.6.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "balanced-match": {
- "version": "0.4.2",
- "bundled": true,
- "dev": true
- },
- "bcrypt-pbkdf": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "tweetnacl": "0.14.5"
- }
- },
- "block-stream": {
- "version": "0.0.9",
- "bundled": true,
- "dev": true,
- "requires": {
- "inherits": "2.0.3"
- }
- },
- "boom": {
- "version": "2.10.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "brace-expansion": {
- "version": "1.1.7",
- "bundled": true,
- "dev": true,
- "requires": {
- "balanced-match": "0.4.2",
- "concat-map": "0.0.1"
- }
- },
- "buffer-shims": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true
- },
- "caseless": {
- "version": "0.12.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "co": {
- "version": "4.6.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "code-point-at": {
- "version": "1.1.0",
- "bundled": true,
- "dev": true
- },
- "combined-stream": {
- "version": "1.0.5",
- "bundled": true,
- "dev": true,
- "requires": {
- "delayed-stream": "1.0.0"
- }
- },
- "concat-map": {
- "version": "0.0.1",
- "bundled": true,
- "dev": true
- },
- "console-control-strings": {
- "version": "1.1.0",
- "bundled": true,
- "dev": true
- },
- "core-util-is": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true
- },
- "cryptiles": {
- "version": "2.0.5",
- "bundled": true,
- "dev": true,
- "requires": {
- "boom": "2.10.1"
- }
- },
- "dashdash": {
- "version": "1.14.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "assert-plus": "1.0.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "debug": {
- "version": "2.6.8",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "deep-extend": {
- "version": "0.4.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "delayed-stream": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true
- },
- "delegates": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "detect-libc": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "ecc-jsbn": {
- "version": "0.1.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "jsbn": "0.1.1"
- }
- },
- "extend": {
- "version": "3.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "extsprintf": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true
- },
- "forever-agent": {
- "version": "0.6.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "form-data": {
- "version": "2.1.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.5",
- "mime-types": "2.1.15"
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true
- },
- "fstream": {
- "version": "1.0.11",
- "bundled": true,
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "inherits": "2.0.3",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.1"
- }
- },
- "fstream-ignore": {
- "version": "1.0.5",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "fstream": "1.0.11",
- "inherits": "2.0.3",
- "minimatch": "3.0.4"
- }
- },
- "gauge": {
- "version": "2.7.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "aproba": "1.1.1",
- "console-control-strings": "1.1.0",
- "has-unicode": "2.0.1",
- "object-assign": "4.1.1",
- "signal-exit": "3.0.2",
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wide-align": "1.1.2"
- }
- },
- "getpass": {
- "version": "0.1.7",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "assert-plus": "1.0.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "glob": {
- "version": "7.1.2",
- "bundled": true,
- "dev": true,
- "requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
- }
- },
- "graceful-fs": {
- "version": "4.1.11",
- "bundled": true,
- "dev": true
- },
- "har-schema": {
- "version": "1.0.5",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "har-validator": {
- "version": "4.2.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "ajv": "4.11.8",
- "har-schema": "1.0.5"
- }
- },
- "has-unicode": {
- "version": "2.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "hawk": {
- "version": "3.1.3",
- "bundled": true,
- "dev": true,
- "requires": {
- "boom": "2.10.1",
- "cryptiles": "2.0.5",
- "hoek": "2.16.3",
- "sntp": "1.0.9"
- }
- },
- "hoek": {
- "version": "2.16.3",
- "bundled": true,
- "dev": true
- },
- "http-signature": {
- "version": "1.1.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "assert-plus": "0.2.0",
- "jsprim": "1.4.0",
- "sshpk": "1.13.0"
- }
- },
- "inflight": {
- "version": "1.0.6",
- "bundled": true,
- "dev": true,
- "requires": {
- "once": "1.4.0",
- "wrappy": "1.0.2"
- }
- },
- "inherits": {
- "version": "2.0.3",
- "bundled": true,
- "dev": true
- },
- "ini": {
- "version": "1.3.4",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "is-typedarray": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "isarray": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true
- },
- "isstream": {
- "version": "0.1.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "jodid25519": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "jsbn": "0.1.1"
- }
- },
- "jsbn": {
- "version": "0.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "json-schema": {
- "version": "0.2.3",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "json-stable-stringify": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "jsonify": "0.0.0"
- }
- },
- "json-stringify-safe": {
- "version": "5.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "jsonify": {
- "version": "0.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "jsprim": {
- "version": "1.4.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "assert-plus": "1.0.0",
- "extsprintf": "1.0.2",
- "json-schema": "0.2.3",
- "verror": "1.3.6"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "mime-db": {
- "version": "1.27.0",
- "bundled": true,
- "dev": true
- },
- "mime-types": {
- "version": "2.1.15",
- "bundled": true,
- "dev": true,
- "requires": {
- "mime-db": "1.27.0"
- }
- },
- "minimatch": {
- "version": "3.0.4",
- "bundled": true,
- "dev": true,
- "requires": {
- "brace-expansion": "1.1.7"
- }
- },
- "minimist": {
- "version": "0.0.8",
- "bundled": true,
- "dev": true
- },
- "mkdirp": {
- "version": "0.5.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "minimist": "0.0.8"
- }
- },
- "ms": {
- "version": "2.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "node-pre-gyp": {
- "version": "0.6.39",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "detect-libc": "1.0.2",
- "hawk": "3.1.3",
- "mkdirp": "0.5.1",
- "nopt": "4.0.1",
- "npmlog": "4.1.0",
- "rc": "1.2.1",
- "request": "2.81.0",
- "rimraf": "2.6.1",
- "semver": "5.3.0",
- "tar": "2.2.1",
- "tar-pack": "3.4.0"
- }
- },
- "nopt": {
- "version": "4.0.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "abbrev": "1.1.0",
- "osenv": "0.1.4"
- }
- },
- "npmlog": {
- "version": "4.1.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "are-we-there-yet": "1.1.4",
- "console-control-strings": "1.1.0",
- "gauge": "2.7.4",
- "set-blocking": "2.0.0"
- }
- },
- "number-is-nan": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true
- },
- "oauth-sign": {
- "version": "0.8.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "object-assign": {
- "version": "4.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "once": {
- "version": "1.4.0",
- "bundled": true,
- "dev": true,
- "requires": {
- "wrappy": "1.0.2"
- }
- },
- "os-homedir": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "os-tmpdir": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "osenv": {
- "version": "0.1.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "os-homedir": "1.0.2",
- "os-tmpdir": "1.0.2"
- }
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true
- },
- "performance-now": {
- "version": "0.2.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "process-nextick-args": {
- "version": "1.0.7",
- "bundled": true,
- "dev": true
- },
- "punycode": {
- "version": "1.4.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "qs": {
- "version": "6.4.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "rc": {
- "version": "1.2.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "deep-extend": "0.4.2",
- "ini": "1.3.4",
- "minimist": "1.2.0",
- "strip-json-comments": "2.0.1"
- },
- "dependencies": {
- "minimist": {
- "version": "1.2.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "readable-stream": {
- "version": "2.2.9",
- "bundled": true,
- "dev": true,
- "requires": {
- "buffer-shims": "1.0.0",
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "1.0.7",
- "string_decoder": "1.0.1",
- "util-deprecate": "1.0.2"
- }
- },
- "request": {
- "version": "2.81.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "aws-sign2": "0.6.0",
- "aws4": "1.6.0",
- "caseless": "0.12.0",
- "combined-stream": "1.0.5",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.1.4",
- "har-validator": "4.2.1",
- "hawk": "3.1.3",
- "http-signature": "1.1.1",
- "is-typedarray": "1.0.0",
- "isstream": "0.1.2",
- "json-stringify-safe": "5.0.1",
- "mime-types": "2.1.15",
- "oauth-sign": "0.8.2",
- "performance-now": "0.2.0",
- "qs": "6.4.0",
- "safe-buffer": "5.0.1",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.2",
- "tunnel-agent": "0.6.0",
- "uuid": "3.0.1"
- }
- },
- "rimraf": {
- "version": "2.6.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "glob": "7.1.2"
- }
- },
- "safe-buffer": {
- "version": "5.0.1",
- "bundled": true,
- "dev": true
- },
- "semver": {
- "version": "5.3.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "set-blocking": {
- "version": "2.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "sntp": {
- "version": "1.0.9",
- "bundled": true,
- "dev": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "sshpk": {
- "version": "1.13.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "asn1": "0.2.3",
- "assert-plus": "1.0.0",
- "bcrypt-pbkdf": "1.0.1",
- "dashdash": "1.14.1",
- "ecc-jsbn": "0.1.1",
- "getpass": "0.1.7",
- "jodid25519": "1.0.2",
- "jsbn": "0.1.1",
- "tweetnacl": "0.14.5"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "string-width": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- },
- "string_decoder": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "safe-buffer": "5.0.1"
- }
- },
- "stringstream": {
- "version": "0.0.5",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "strip-ansi": {
- "version": "3.0.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "ansi-regex": "2.1.1"
- }
- },
- "strip-json-comments": {
- "version": "2.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "tar": {
- "version": "2.2.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "block-stream": "0.0.9",
- "fstream": "1.0.11",
- "inherits": "2.0.3"
- }
- },
- "tar-pack": {
- "version": "3.4.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "debug": "2.6.8",
- "fstream": "1.0.11",
- "fstream-ignore": "1.0.5",
- "once": "1.4.0",
- "readable-stream": "2.2.9",
- "rimraf": "2.6.1",
- "tar": "2.2.1",
- "uid-number": "0.0.6"
- }
- },
- "tough-cookie": {
- "version": "2.3.2",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "punycode": "1.4.1"
- }
- },
- "tunnel-agent": {
- "version": "0.6.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "safe-buffer": "5.0.1"
- }
- },
- "tweetnacl": {
- "version": "0.14.5",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "uid-number": {
- "version": "0.0.6",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "util-deprecate": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true
- },
- "uuid": {
- "version": "3.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "verror": {
- "version": "1.3.6",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "extsprintf": "1.0.2"
- }
- },
- "wide-align": {
- "version": "1.1.2",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "string-width": "1.0.2"
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true
- }
- }
- },
- "fstream": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
- "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "inherits": "2.0.3",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.2"
- }
- },
- "function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
- "dev": true
- },
- "functional-red-black-tree": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
- "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
- "dev": true
- },
- "gauge": {
- "version": "2.7.4",
- "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
- "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
- "dev": true,
- "requires": {
- "aproba": "1.2.0",
- "console-control-strings": "1.1.0",
- "has-unicode": "2.0.1",
- "object-assign": "4.1.1",
- "signal-exit": "3.0.2",
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wide-align": "1.1.2"
- },
- "dependencies": {
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- }
- }
- },
- "gaze": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
- "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
- "dev": true,
- "requires": {
- "globule": "1.2.0"
- }
- },
- "generate-function": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
- "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=",
- "dev": true
- },
- "generate-object-property": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
- "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
- "dev": true,
- "requires": {
- "is-property": "1.0.2"
- }
- },
- "get-caller-file": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
- "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
- "dev": true
- },
- "get-installed-path": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/get-installed-path/-/get-installed-path-2.1.1.tgz",
- "integrity": "sha512-Qkn9eq6tW5/q9BDVdMpB8tOHljX9OSP0jRC5TRNVA4qRc839t4g8KQaR8t0Uv0EFVL0MlyG7m/ofjEgAROtYsA==",
- "requires": {
- "global-modules": "1.0.0"
- }
- },
- "get-pkg-repo": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz",
- "integrity": "sha1-xztInAbYDMVTbCyFP54FIyBWly0=",
- "dev": true,
- "requires": {
- "hosted-git-info": "2.6.0",
- "meow": "3.7.0",
- "normalize-package-data": "2.4.0",
- "parse-github-repo-url": "1.4.1",
- "through2": "2.0.3"
- },
- "dependencies": {
- "camelcase": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
- "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
- "dev": true
- },
- "camelcase-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
- "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
- "dev": true,
- "requires": {
- "camelcase": "2.1.1",
- "map-obj": "1.0.1"
- }
- },
- "indent-string": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
- "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
- "dev": true,
- "requires": {
- "repeating": "2.0.1"
- }
- },
- "map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
- "dev": true
- },
- "meow": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
- "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
- "dev": true,
- "requires": {
- "camelcase-keys": "2.1.0",
- "decamelize": "1.2.0",
- "loud-rejection": "1.6.0",
- "map-obj": "1.0.1",
- "minimist": "1.2.0",
- "normalize-package-data": "2.4.0",
- "object-assign": "4.1.1",
- "read-pkg-up": "1.0.1",
- "redent": "1.0.0",
- "trim-newlines": "1.0.0"
- }
- },
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- },
- "redent": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
- "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
- "dev": true,
- "requires": {
- "indent-string": "2.1.0",
- "strip-indent": "1.0.1"
- }
- },
- "strip-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
- "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
- "dev": true,
- "requires": {
- "get-stdin": "4.0.1"
- }
- },
- "trim-newlines": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
- "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
- "dev": true
- }
- }
- },
- "get-port": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz",
- "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=",
- "dev": true
- },
- "get-stdin": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
- "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
- "dev": true
- },
- "get-stream": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
- "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
- "dev": true
- },
- "get-value": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
- "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
- "dev": true
- },
- "getpass": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
- "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
- "requires": {
- "assert-plus": "1.0.0"
- }
- },
- "git-raw-commits": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-1.3.5.tgz",
- "integrity": "sha512-r6NFrgh9oGzHwMA0go6sEa8jgR+N2/74HPXIXR59asiJzxPXpmk3aM5SMH2bLGsmTPwJtysgbf8EE/LwWHqGgg==",
- "dev": true,
- "requires": {
- "dargs": "4.1.0",
- "lodash.template": "4.4.0",
- "meow": "4.0.0",
- "split2": "2.2.0",
- "through2": "2.0.3"
- }
- },
- "git-remote-origin-url": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz",
- "integrity": "sha1-UoJlna4hBxRaERJhEq0yFuxfpl8=",
- "dev": true,
- "requires": {
- "gitconfiglocal": "1.0.0",
- "pify": "2.3.0"
- },
- "dependencies": {
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- }
- }
- },
- "git-semver-tags": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-1.3.5.tgz",
- "integrity": "sha512-+uttbaoLSIvxdJWQKmRcs/G3uHitbypvpM41rz1C48Eeq7AI47Mzh+hQ5xX2mY1Kehpv5WGe4yXg1LbSw29d2A==",
- "dev": true,
- "requires": {
- "meow": "4.0.0",
- "semver": "5.5.0"
- }
- },
- "gitconfiglocal": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz",
- "integrity": "sha1-QdBF84UaXqiPA/JMocYXgRRGS5s=",
- "dev": true,
- "requires": {
- "ini": "1.3.5"
- }
- },
- "glob": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
- "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
- "requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
- }
- },
- "glob-base": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
- "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
- "dev": true,
- "requires": {
- "glob-parent": "2.0.0",
- "is-glob": "2.0.1"
- }
- },
- "glob-parent": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
- "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
- "dev": true,
- "requires": {
- "is-glob": "2.0.1"
- }
- },
- "global-dirs": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
- "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=",
- "dev": true,
- "requires": {
- "ini": "1.3.5"
- }
- },
- "global-modules": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
- "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
- "requires": {
- "global-prefix": "1.0.2",
- "is-windows": "1.0.2",
- "resolve-dir": "1.0.1"
- }
- },
- "global-prefix": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
- "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
- "requires": {
- "expand-tilde": "2.0.2",
- "homedir-polyfill": "1.0.1",
- "ini": "1.3.5",
- "is-windows": "1.0.2",
- "which": "1.3.0"
- }
- },
- "globals": {
- "version": "9.18.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
- "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==",
- "dev": true
- },
- "globby": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
- "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
- "dev": true,
- "requires": {
- "array-union": "1.0.2",
- "arrify": "1.0.1",
- "glob": "7.1.2",
- "object-assign": "4.1.1",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1"
- },
- "dependencies": {
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- }
- }
- },
- "globule": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
- "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
- "dev": true,
- "requires": {
- "glob": "7.1.2",
- "lodash": "4.17.5",
- "minimatch": "3.0.4"
- }
- },
- "got": {
- "version": "6.7.1",
- "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz",
- "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=",
- "dev": true,
- "requires": {
- "create-error-class": "3.0.2",
- "duplexer3": "0.1.4",
- "get-stream": "3.0.0",
- "is-redirect": "1.0.0",
- "is-retry-allowed": "1.1.0",
- "is-stream": "1.1.0",
- "lowercase-keys": "1.0.1",
- "safe-buffer": "5.1.1",
- "timed-out": "4.0.1",
- "unzip-response": "2.0.1",
- "url-parse-lax": "1.0.0"
- }
- },
- "graceful-fs": {
- "version": "4.1.11",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
- "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
- },
- "graceful-readlink": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz",
- "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=",
- "dev": true
- },
- "growl": {
- "version": "1.9.2",
- "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz",
- "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=",
- "dev": true
- },
- "handlebars": {
- "version": "4.0.11",
- "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz",
- "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=",
- "dev": true,
- "requires": {
- "async": "1.5.2",
- "optimist": "0.6.1",
- "source-map": "0.4.4",
- "uglify-js": "2.8.29"
- },
- "dependencies": {
- "async": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
- "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
- "dev": true
- },
- "source-map": {
- "version": "0.4.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
- "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
- "dev": true,
- "requires": {
- "amdefine": "1.0.1"
- }
- },
- "uglify-js": {
- "version": "2.8.29",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
- "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
- "dev": true,
- "optional": true,
- "requires": {
- "source-map": "0.5.7",
- "uglify-to-browserify": "1.0.2",
- "yargs": "3.10.0"
- },
- "dependencies": {
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true,
- "optional": true
- }
- }
- },
- "yargs": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
- "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
- "dev": true,
- "optional": true,
- "requires": {
- "camelcase": "1.2.1",
- "cliui": "2.1.0",
- "decamelize": "1.2.0",
- "window-size": "0.1.0"
- }
- }
- }
- },
- "har-schema": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
- "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI="
- },
- "har-validator": {
- "version": "5.0.3",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz",
- "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
- "requires": {
- "ajv": "5.5.2",
- "har-schema": "2.0.0"
- }
- },
- "has": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz",
- "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=",
- "dev": true,
- "requires": {
- "function-bind": "1.1.1"
- }
- },
- "has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
- "requires": {
- "ansi-regex": "2.1.1"
- }
- },
- "has-binary": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.7.tgz",
- "integrity": "sha1-aOYesWIQyVRaClzOBqhzkS/h5ow=",
- "dev": true,
- "requires": {
- "isarray": "0.0.1"
- }
- },
- "has-cors": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
- "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=",
- "dev": true
- },
- "has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0="
- },
- "has-unicode": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
- "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
- "dev": true
- },
- "has-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
- "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
- "dev": true,
- "requires": {
- "get-value": "2.0.6",
- "has-values": "1.0.0",
- "isobject": "3.0.1"
- },
- "dependencies": {
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "has-values": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
- "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
- "dev": true,
- "requires": {
- "is-number": "3.0.0",
- "kind-of": "4.0.0"
- },
- "dependencies": {
- "is-number": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
- "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "kind-of": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
- "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "hash-base": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz",
- "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3"
- }
- },
- "hash-sum": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
- "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ="
- },
- "hash.js": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz",
- "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "minimalistic-assert": "1.0.0"
- }
- },
- "hasha": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz",
- "integrity": "sha1-eNfL/B5tZjA/55g3NlmEUXsvbuE=",
- "dev": true,
- "requires": {
- "is-stream": "1.1.0",
- "pinkie-promise": "2.0.1"
- }
- },
- "hawk": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz",
- "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==",
- "requires": {
- "boom": "4.3.1",
- "cryptiles": "3.1.2",
- "hoek": "4.2.1",
- "sntp": "2.1.0"
- }
- },
- "he": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz",
- "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0="
- },
- "highlight.js": {
- "version": "9.12.0",
- "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz",
- "integrity": "sha1-5tnb5Xy+/mB1HwKvM2GVhwyQwB4="
- },
- "hmac-drbg": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
- "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
- "dev": true,
- "requires": {
- "hash.js": "1.1.3",
- "minimalistic-assert": "1.0.0",
- "minimalistic-crypto-utils": "1.0.1"
- }
- },
- "hoek": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz",
- "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA=="
- },
- "home-or-tmp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
- "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=",
- "dev": true,
- "requires": {
- "os-homedir": "1.0.2",
- "os-tmpdir": "1.0.2"
- }
- },
- "homedir-polyfill": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz",
- "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=",
- "requires": {
- "parse-passwd": "1.0.0"
- }
- },
- "hosted-git-info": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz",
- "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==",
- "dev": true
- },
- "html-comment-regex": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.1.tgz",
- "integrity": "sha1-ZouTd26q5V696POtRkswekljYl4=",
- "dev": true
- },
- "html-entities": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz",
- "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=",
- "dev": true
- },
- "html-minifier": {
- "version": "3.5.12",
- "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.12.tgz",
- "integrity": "sha512-+N778qLf0RWBscD0TPGoYdeGNDZ0s76/0pQhY1/409EOudcENkm9IbSkk37RDyPdg/09GVHTKotU4ya93RF1Gg==",
- "dev": true,
- "requires": {
- "camel-case": "3.0.0",
- "clean-css": "4.1.11",
- "commander": "2.15.1",
- "he": "1.1.1",
- "ncname": "1.0.0",
- "param-case": "2.1.1",
- "relateurl": "0.2.7",
- "uglify-js": "3.3.16"
- }
- },
- "html-webpack-plugin": {
- "version": "2.30.1",
- "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-2.30.1.tgz",
- "integrity": "sha1-f5xCG36pHsRg9WUn1430hO51N9U=",
- "dev": true,
- "requires": {
- "bluebird": "3.5.1",
- "html-minifier": "3.5.12",
- "loader-utils": "0.2.17",
- "lodash": "4.17.5",
- "pretty-error": "2.1.1",
- "toposort": "1.0.6"
- },
- "dependencies": {
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "loader-utils": {
- "version": "0.2.17",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
- "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
- "dev": true,
- "requires": {
- "big.js": "3.2.0",
- "emojis-list": "2.1.0",
- "json5": "0.5.1",
- "object-assign": "4.1.1"
- }
- }
- }
- },
- "htmlparser2": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz",
- "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
- "requires": {
- "domelementtype": "1.3.0",
- "domhandler": "2.3.0",
- "domutils": "1.5.1",
- "entities": "1.0.0",
- "readable-stream": "1.1.14"
- },
- "dependencies": {
- "entities": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz",
- "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY="
- }
- }
- },
- "http-errors": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz",
- "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
- "requires": {
- "depd": "1.1.1",
- "inherits": "2.0.3",
- "setprototypeof": "1.0.3",
- "statuses": "1.4.0"
- },
- "dependencies": {
- "depd": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz",
- "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k="
- },
- "setprototypeof": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
- "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
- }
- }
- },
- "http-proxy": {
- "version": "1.16.2",
- "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.16.2.tgz",
- "integrity": "sha1-Bt/ykpUr9k2+hHH6nfcwZtTzd0I=",
- "dev": true,
- "requires": {
- "eventemitter3": "1.2.0",
- "requires-port": "1.0.0"
- }
- },
- "http-signature": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
- "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
- "requires": {
- "assert-plus": "1.0.0",
- "jsprim": "1.4.1",
- "sshpk": "1.14.1"
- }
- },
- "https-browserify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
- "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
- "dev": true
- },
- "iconv-lite": {
- "version": "0.4.19",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
- "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ=="
- },
- "icss-replace-symbols": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz",
- "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=",
- "dev": true
- },
- "ieee754": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.11.tgz",
- "integrity": "sha512-VhDzCKN7K8ufStx/CLj5/PDTMgph+qwN5Pkd5i0sGnVwk56zJ0lkT8Qzi1xqWLS0Wp29DgDtNeS7v8/wMoZeHg==",
- "dev": true
- },
- "iferr": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz",
- "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=",
- "dev": true
- },
- "ignore": {
- "version": "3.3.7",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz",
- "integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==",
- "dev": true
- },
- "immediate": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
- "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps="
- },
- "import-lazy": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz",
- "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=",
- "dev": true
- },
- "imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
- "dev": true
- },
- "in-publish": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz",
- "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=",
- "dev": true
- },
- "indent-string": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz",
- "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=",
- "dev": true
- },
- "indexes-of": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
- "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=",
- "dev": true
- },
- "indexof": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
- "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
- "dev": true
- },
- "inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "requires": {
- "once": "1.4.0",
- "wrappy": "1.0.2"
- }
- },
- "inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
- },
- "ini": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
- "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw=="
- },
- "inquirer": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz",
- "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==",
- "requires": {
- "ansi-escapes": "3.1.0",
- "chalk": "2.3.2",
- "cli-cursor": "2.1.0",
- "cli-width": "2.2.0",
- "external-editor": "2.1.0",
- "figures": "2.0.0",
- "lodash": "4.17.5",
- "mute-stream": "0.0.7",
- "run-async": "2.3.0",
- "rx-lite": "4.0.8",
- "rx-lite-aggregates": "4.0.8",
- "string-width": "2.1.1",
- "strip-ansi": "4.0.0",
- "through": "2.3.8"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
- "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg="
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "strip-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
- "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
- "requires": {
- "ansi-regex": "3.0.0"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "interpret": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
- "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ="
- },
- "invariant": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
- "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
- "dev": true,
- "requires": {
- "loose-envify": "1.3.1"
- }
- },
- "invert-kv": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
- "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
- "dev": true
- },
- "ipaddr.js": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz",
- "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs="
- },
- "is-absolute-url": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz",
- "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=",
- "dev": true
- },
- "is-accessor-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
- "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
- "dev": true,
- "requires": {
- "kind-of": "6.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
- "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
- "dev": true
- }
- }
- },
- "is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
- "dev": true
- },
- "is-binary-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
- "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
- "dev": true,
- "requires": {
- "binary-extensions": "1.11.0"
- }
- },
- "is-buffer": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
- "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
- "dev": true
- },
- "is-builtin-module": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
- "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
- "dev": true,
- "requires": {
- "builtin-modules": "1.1.1"
- }
- },
- "is-ci": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz",
- "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==",
- "dev": true,
- "requires": {
- "ci-info": "1.1.3"
- }
- },
- "is-data-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
- "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
- "dev": true,
- "requires": {
- "kind-of": "6.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
- "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
- "dev": true
- }
- }
- },
- "is-descriptor": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
- "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "1.0.0",
- "is-data-descriptor": "1.0.0",
- "kind-of": "6.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
- "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
- "dev": true
- }
- }
- },
- "is-dotfile": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
- "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=",
- "dev": true
- },
- "is-equal-shallow": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz",
- "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=",
- "dev": true,
- "requires": {
- "is-primitive": "2.0.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- },
- "is-extglob": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
- "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
- "dev": true
- },
- "is-finite": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
- "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8="
- },
- "is-glob": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
- "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
- "dev": true,
- "requires": {
- "is-extglob": "1.0.0"
- }
- },
- "is-installed-globally": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz",
- "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=",
- "dev": true,
- "requires": {
- "global-dirs": "0.1.1",
- "is-path-inside": "1.0.1"
- }
- },
- "is-my-ip-valid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz",
- "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==",
- "dev": true
- },
- "is-my-json-valid": {
- "version": "2.17.2",
- "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz",
- "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==",
- "dev": true,
- "requires": {
- "generate-function": "2.0.0",
- "generate-object-property": "1.2.0",
- "is-my-ip-valid": "1.0.0",
- "jsonpointer": "4.0.1",
- "xtend": "4.0.1"
- }
- },
- "is-npm": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz",
- "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=",
- "dev": true
- },
- "is-number": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
- "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- }
- },
- "is-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
- "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=",
- "dev": true
- },
- "is-odd": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz",
- "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==",
- "dev": true,
- "requires": {
- "is-number": "4.0.0"
- },
- "dependencies": {
- "is-number": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz",
- "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==",
- "dev": true
- }
- }
- },
- "is-path-cwd": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz",
- "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=",
- "dev": true
- },
- "is-path-in-cwd": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz",
- "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==",
- "dev": true,
- "requires": {
- "is-path-inside": "1.0.1"
- }
- },
- "is-path-inside": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz",
- "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=",
- "dev": true,
- "requires": {
- "path-is-inside": "1.0.2"
- }
- },
- "is-plain-obj": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
- "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=",
- "dev": true
- },
- "is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "requires": {
- "isobject": "3.0.1"
- },
- "dependencies": {
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "is-posix-bracket": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz",
- "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=",
- "dev": true
- },
- "is-primitive": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz",
- "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=",
- "dev": true
- },
- "is-promise": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
- "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o="
- },
- "is-property": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
- "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=",
- "dev": true
- },
- "is-redirect": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz",
- "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=",
- "dev": true
- },
- "is-resolvable": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz",
- "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==",
- "dev": true
- },
- "is-retry-allowed": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz",
- "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=",
- "dev": true
- },
- "is-stream": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
- "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
- },
- "is-subset": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz",
- "integrity": "sha1-ilkRfZMt4d4A8kX83TnOQ/HpOaY=",
- "dev": true
- },
- "is-svg": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz",
- "integrity": "sha1-z2EJDaDZ77yrhyLeum8DIgjbsOk=",
- "dev": true,
- "requires": {
- "html-comment-regex": "1.1.1"
- }
- },
- "is-text-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz",
- "integrity": "sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4=",
- "dev": true,
- "requires": {
- "text-extensions": "1.7.0"
- }
- },
- "is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
- },
- "is-utf8": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
- "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
- "dev": true
- },
- "is-windows": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
- "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="
- },
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
- },
- "isbinaryfile": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.2.tgz",
- "integrity": "sha1-Sj6XTsDLqQBNP8bN5yCeppNopiE=",
- "dev": true
- },
- "isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
- },
- "isobject": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
- "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
- "dev": true,
- "requires": {
- "isarray": "1.0.0"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- }
- }
- },
- "isomorphic-fetch": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz",
- "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=",
- "requires": {
- "node-fetch": "1.7.3",
- "whatwg-fetch": "2.0.3"
- }
- },
- "isstream": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
- "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
- },
- "js-base64": {
- "version": "2.4.3",
- "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.3.tgz",
- "integrity": "sha512-H7ErYLM34CvDMto3GbD6xD0JLUGYXR3QTcH6B/tr4Hi/QpSThnCsIp+Sy5FRTw3B0d6py4HcNkW7nO/wdtGWEw==",
- "dev": true
- },
- "js-beautify": {
- "version": "1.7.5",
- "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.7.5.tgz",
- "integrity": "sha512-9OhfAqGOrD7hoQBLJMTA+BKuKmoEtTJXzZ7WDF/9gvjtey1koVLuZqIY6c51aPDjbNdNtIXAkiWKVhziawE9Og==",
- "dev": true,
- "requires": {
- "config-chain": "1.1.11",
- "editorconfig": "0.13.3",
- "mkdirp": "0.5.1",
- "nopt": "3.0.6"
- }
- },
- "js-tokens": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
- "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
- "dev": true
- },
- "js-yaml": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz",
- "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=",
- "dev": true,
- "requires": {
- "argparse": "1.0.10",
- "esprima": "2.7.3"
- },
- "dependencies": {
- "esprima": {
- "version": "2.7.3",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
- "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
- "dev": true
- }
- }
- },
- "jsbn": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
- "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
- "optional": true
- },
- "jsdom": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-7.2.2.tgz",
- "integrity": "sha1-QLQCdwwr2iNGkJa+6Rq2deOx/G4=",
- "optional": true,
- "requires": {
- "abab": "1.0.4",
- "acorn": "2.7.0",
- "acorn-globals": "1.0.9",
- "cssom": "0.3.2",
- "cssstyle": "0.2.37",
- "escodegen": "1.9.1",
- "nwmatcher": "1.4.4",
- "parse5": "1.5.1",
- "request": "2.85.0",
- "sax": "1.2.4",
- "symbol-tree": "3.2.2",
- "tough-cookie": "2.3.4",
- "webidl-conversions": "2.0.1",
- "whatwg-url-compat": "0.6.5",
- "xml-name-validator": "2.0.1"
- }
- },
- "jsesc": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
- "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=",
- "dev": true
- },
- "json-loader": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz",
- "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==",
- "dev": true
- },
- "json-parse-better-errors": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz",
- "integrity": "sha512-xyQpxeWWMKyJps9CuGJYeng6ssI5bpqS9ltQpdVQ90t4ql6NdnxFKh95JcRt2cun/DjMVNrdjniLPuMA69xmCw==",
- "dev": true
- },
- "json-schema": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
- "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
- },
- "json-schema-traverse": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
- "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A="
- },
- "json-stable-stringify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
- "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
- "dev": true,
- "requires": {
- "jsonify": "0.0.0"
- }
- },
- "json-stable-stringify-without-jsonify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
- "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
- "dev": true
- },
- "json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
- },
- "json3": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz",
- "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=",
- "dev": true
- },
- "json5": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz",
- "integrity": "sha1-BUNS5MTIDIbAkjh31EneF2pzLI0="
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "requires": {
- "graceful-fs": "4.1.11"
- }
- },
- "jsonify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
- "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
- "dev": true
- },
- "jsonparse": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
- "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=",
- "dev": true
- },
- "jsonpointer": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz",
- "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=",
- "dev": true
- },
- "jsprim": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
- "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
- "requires": {
- "assert-plus": "1.0.0",
- "extsprintf": "1.3.0",
- "json-schema": "0.2.3",
- "verror": "1.10.0"
- }
- },
- "karma": {
- "version": "1.7.1",
- "resolved": "https://registry.npmjs.org/karma/-/karma-1.7.1.tgz",
- "integrity": "sha512-k5pBjHDhmkdaUccnC7gE3mBzZjcxyxYsYVaqiL2G5AqlfLyBO5nw2VdNK+O16cveEPd/gIOWULH7gkiYYwVNHg==",
- "dev": true,
- "requires": {
- "bluebird": "3.5.1",
- "body-parser": "1.18.2",
- "chokidar": "1.7.0",
- "colors": "1.1.2",
- "combine-lists": "1.0.1",
- "connect": "3.6.6",
- "core-js": "2.5.3",
- "di": "0.0.1",
- "dom-serialize": "2.2.1",
- "expand-braces": "0.1.2",
- "glob": "7.1.2",
- "graceful-fs": "4.1.11",
- "http-proxy": "1.16.2",
- "isbinaryfile": "3.0.2",
- "lodash": "3.10.1",
- "log4js": "0.6.38",
- "mime": "1.4.1",
- "minimatch": "3.0.4",
- "optimist": "0.6.1",
- "qjobs": "1.2.0",
- "range-parser": "1.2.0",
- "rimraf": "2.6.2",
- "safe-buffer": "5.1.1",
- "socket.io": "1.7.3",
- "source-map": "0.5.7",
- "tmp": "0.0.31",
- "useragent": "2.3.0"
- },
- "dependencies": {
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- },
- "lodash": {
- "version": "3.10.1",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
- "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- },
- "tmp": {
- "version": "0.0.31",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz",
- "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=",
- "dev": true,
- "requires": {
- "os-tmpdir": "1.0.2"
- }
- }
- }
- },
- "karma-mocha": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/karma-mocha/-/karma-mocha-1.3.0.tgz",
- "integrity": "sha1-7qrH/8DiAetjxGdEDStpx883eL8=",
- "dev": true,
- "requires": {
- "minimist": "1.2.0"
- },
- "dependencies": {
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- }
- }
- },
- "karma-phantomjs-launcher": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/karma-phantomjs-launcher/-/karma-phantomjs-launcher-1.0.4.tgz",
- "integrity": "sha1-0jyjSAG9qYY60xjju0vUBisTrNI=",
- "dev": true,
- "requires": {
- "lodash": "4.17.5",
- "phantomjs-prebuilt": "2.1.16"
- }
- },
- "karma-sinon-chai": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/karma-sinon-chai/-/karma-sinon-chai-1.3.3.tgz",
- "integrity": "sha1-pZfltKE2n+ez19dsCe0gYaOOdH8=",
- "dev": true,
- "requires": {
- "lolex": "1.6.0"
- }
- },
- "karma-sourcemap-loader": {
- "version": "0.3.7",
- "resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz",
- "integrity": "sha1-kTIsd/jxPUb+0GKwQuEAnUxFBdg=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11"
- }
- },
- "karma-spec-reporter": {
- "version": "0.0.26",
- "resolved": "https://registry.npmjs.org/karma-spec-reporter/-/karma-spec-reporter-0.0.26.tgz",
- "integrity": "sha1-v1VhN33OG2PPLJdcGvPjXxmeImU=",
- "dev": true,
- "requires": {
- "colors": "0.6.2"
- },
- "dependencies": {
- "colors": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz",
- "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=",
- "dev": true
- }
- }
- },
- "karma-webpack": {
- "version": "2.0.13",
- "resolved": "https://registry.npmjs.org/karma-webpack/-/karma-webpack-2.0.13.tgz",
- "integrity": "sha512-2cyII34jfrAabbI2+4Rk4j95Nazl98FvZQhgSiqKUDarT317rxfv/EdzZ60CyATN4PQxJdO5ucR5bOOXkEVrXw==",
- "dev": true,
- "requires": {
- "async": "2.6.0",
- "babel-runtime": "6.26.0",
- "loader-utils": "1.1.0",
- "lodash": "4.17.5",
- "source-map": "0.5.7",
- "webpack-dev-middleware": "1.12.2"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "kew": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz",
- "integrity": "sha1-edk9LTM2PW/dKXCzNdkUGtWR15s=",
- "dev": true
- },
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- },
- "klaw": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz",
- "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11"
- }
- },
- "latest-version": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz",
- "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=",
- "dev": true,
- "requires": {
- "package-json": "4.0.1"
- }
- },
- "lazy-cache": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
- "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=",
- "dev": true
- },
- "lcid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
- "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
- "dev": true,
- "requires": {
- "invert-kv": "1.0.0"
- }
- },
- "lerna": {
- "version": "2.9.0",
- "resolved": "https://registry.npmjs.org/lerna/-/lerna-2.9.0.tgz",
- "integrity": "sha512-8KvXqRsnkqkorOlE7tMnaDl8b43t8i6/ZyGthoyIzb7ikeH2XNrQOHuI1FWsuOtP2HY3vLp2zuMvM5Zuw3ulUA==",
- "dev": true,
- "requires": {
- "async": "1.5.2",
- "chalk": "2.3.2",
- "cmd-shim": "2.0.2",
- "columnify": "1.5.4",
- "command-join": "2.0.0",
- "conventional-changelog-cli": "1.3.17",
- "conventional-recommended-bump": "1.2.1",
- "dedent": "0.7.0",
- "execa": "0.8.0",
- "find-up": "2.1.0",
- "fs-extra": "4.0.3",
- "get-port": "3.2.0",
- "glob": "7.1.2",
- "glob-parent": "3.1.0",
- "globby": "6.1.0",
- "graceful-fs": "4.1.11",
- "hosted-git-info": "2.6.0",
- "inquirer": "3.3.0",
- "is-ci": "1.1.0",
- "load-json-file": "4.0.0",
- "lodash": "4.17.5",
- "minimatch": "3.0.4",
- "npmlog": "4.1.2",
- "p-finally": "1.0.0",
- "package-json": "4.0.1",
- "path-exists": "3.0.0",
- "read-cmd-shim": "1.0.1",
- "read-pkg": "3.0.0",
- "rimraf": "2.6.2",
- "safe-buffer": "5.1.1",
- "semver": "5.5.0",
- "signal-exit": "3.0.2",
- "slash": "1.0.0",
- "strong-log-transformer": "1.0.6",
- "temp-write": "3.4.0",
- "write-file-atomic": "2.3.0",
- "write-json-file": "2.3.0",
- "write-pkg": "3.1.0",
- "yargs": "8.0.2"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "async": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
- "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
- "dev": true
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "fs-extra": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz",
- "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "jsonfile": "4.0.0",
- "universalify": "0.1.1"
- }
- },
- "glob-parent": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
- "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
- "dev": true,
- "requires": {
- "is-glob": "3.1.0",
- "path-dirname": "1.0.2"
- }
- },
- "globby": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
- "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
- "dev": true,
- "requires": {
- "array-union": "1.0.2",
- "glob": "7.1.2",
- "object-assign": "4.1.1",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1"
- }
- },
- "is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
- "dev": true
- },
- "is-glob": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
- "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
- "dev": true,
- "requires": {
- "is-extglob": "2.1.1"
- }
- },
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
- "requires": {
- "prelude-ls": "1.1.2",
- "type-check": "0.3.2"
- }
- },
- "lie": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz",
- "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=",
- "requires": {
- "immediate": "3.0.6"
- }
- },
- "linkify-it": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.0.3.tgz",
- "integrity": "sha1-2UpGSPmxwXnWT6lykSaL22zpQ08=",
- "requires": {
- "uc.micro": "1.0.5"
- }
- },
- "load-json-file": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
- "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "parse-json": "4.0.0",
- "pify": "3.0.0",
- "strip-bom": "3.0.0"
- }
- },
- "loader-fs-cache": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.1.tgz",
- "integrity": "sha1-VuC/CL2XCLJqdltoUJhAyN7J/bw=",
- "dev": true,
- "requires": {
- "find-cache-dir": "0.1.1",
- "mkdirp": "0.5.1"
- },
- "dependencies": {
- "find-cache-dir": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz",
- "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=",
- "dev": true,
- "requires": {
- "commondir": "1.0.1",
- "mkdirp": "0.5.1",
- "pkg-dir": "1.0.0"
- }
- },
- "find-up": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
- "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
- "dev": true,
- "requires": {
- "path-exists": "2.1.0",
- "pinkie-promise": "2.0.1"
- }
- },
- "path-exists": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
- "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
- "dev": true,
- "requires": {
- "pinkie-promise": "2.0.1"
- }
- },
- "pkg-dir": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz",
- "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=",
- "dev": true,
- "requires": {
- "find-up": "1.1.2"
- }
- }
- }
- },
- "loader-runner": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz",
- "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=",
- "dev": true
- },
- "loader-utils": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz",
- "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=",
- "requires": {
- "big.js": "3.2.0",
- "emojis-list": "2.1.0",
- "json5": "0.5.1"
- },
- "dependencies": {
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE="
- }
- }
- },
- "localforage": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.6.0.tgz",
- "integrity": "sha1-iwBZvus4dcSBJChsp/2/I9UrjJc=",
- "requires": {
- "lie": "3.1.1"
- }
- },
- "locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "requires": {
- "p-locate": "2.0.0",
- "path-exists": "3.0.0"
- }
- },
- "lodash": {
- "version": "4.17.5",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
- "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw=="
- },
- "lodash._baseassign": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz",
- "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=",
- "dev": true,
- "requires": {
- "lodash._basecopy": "3.0.1",
- "lodash.keys": "3.1.2"
- }
- },
- "lodash._basecopy": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz",
- "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=",
- "dev": true
- },
- "lodash._basecreate": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz",
- "integrity": "sha1-G8ZhYU2qf8MRt9A78WgGoCE8+CE=",
- "dev": true
- },
- "lodash._createcompounder": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lodash._createcompounder/-/lodash._createcompounder-3.0.0.tgz",
- "integrity": "sha1-XdLLVTctbnDg4jkvsjBNZjEJEHU=",
- "dev": true,
- "requires": {
- "lodash.deburr": "3.2.0",
- "lodash.words": "3.2.0"
- }
- },
- "lodash._getnative": {
- "version": "3.9.1",
- "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz",
- "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=",
- "dev": true
- },
- "lodash._isiterateecall": {
- "version": "3.0.9",
- "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz",
- "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=",
- "dev": true
- },
- "lodash._reinterpolate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
- "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0="
- },
- "lodash._root": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz",
- "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=",
- "dev": true
- },
- "lodash.assign": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
- "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=",
- "dev": true
- },
- "lodash.camelcase": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-3.0.1.tgz",
- "integrity": "sha1-kyyLh/ikN3iXxnGXUzKC+Xrqwpg=",
- "dev": true,
- "requires": {
- "lodash._createcompounder": "3.0.0"
- }
- },
- "lodash.clonedeep": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
- "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=",
- "dev": true
- },
- "lodash.create": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/lodash.create/-/lodash.create-3.1.1.tgz",
- "integrity": "sha1-1/KEnw29p+BGgruM1yqwIkYd6+c=",
- "dev": true,
- "requires": {
- "lodash._baseassign": "3.2.0",
- "lodash._basecreate": "3.0.3",
- "lodash._isiterateecall": "3.0.9"
- }
- },
- "lodash.deburr": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/lodash.deburr/-/lodash.deburr-3.2.0.tgz",
- "integrity": "sha1-baj1QzSjZqfPTEx2742Aqhs2XtU=",
- "dev": true,
- "requires": {
- "lodash._root": "3.0.1"
- }
- },
- "lodash.defaults": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
- "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=",
- "dev": true
- },
- "lodash.get": {
- "version": "4.4.2",
- "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
- "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk="
- },
- "lodash.isarguments": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz",
- "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=",
- "dev": true
- },
- "lodash.isarray": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz",
- "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=",
- "dev": true
- },
- "lodash.isempty": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz",
- "integrity": "sha1-b4bL7di+TsmHvpqvM8loTbGzHn4="
- },
- "lodash.isplainobject": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
- "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs="
- },
- "lodash.keys": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz",
- "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=",
- "dev": true,
- "requires": {
- "lodash._getnative": "3.9.1",
- "lodash.isarguments": "3.1.0",
- "lodash.isarray": "3.0.4"
- }
- },
- "lodash.memoize": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
- "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=",
- "dev": true
- },
- "lodash.mergewith": {
- "version": "4.6.1",
- "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz",
- "integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==",
- "dev": true
- },
- "lodash.tail": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lodash.tail/-/lodash.tail-4.1.1.tgz",
- "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=",
- "dev": true
- },
- "lodash.template": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz",
- "integrity": "sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A=",
- "requires": {
- "lodash._reinterpolate": "3.0.0",
- "lodash.templatesettings": "4.1.0"
- }
- },
- "lodash.templatesettings": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz",
- "integrity": "sha1-K01OlbpEDZFf8IvImeRVNmZxMxY=",
- "requires": {
- "lodash._reinterpolate": "3.0.0"
- }
- },
- "lodash.trimend": {
- "version": "4.5.1",
- "resolved": "https://registry.npmjs.org/lodash.trimend/-/lodash.trimend-4.5.1.tgz",
- "integrity": "sha1-EoBENyhrmMrYmWt5QU4RMAEUCC8="
- },
- "lodash.uniq": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz",
- "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M="
- },
- "lodash.words": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/lodash.words/-/lodash.words-3.2.0.tgz",
- "integrity": "sha1-TiqGSbwIdFsXxpWxo86P7llmI7M=",
- "dev": true,
- "requires": {
- "lodash._root": "3.0.1"
- }
- },
- "log4js": {
- "version": "0.6.38",
- "resolved": "https://registry.npmjs.org/log4js/-/log4js-0.6.38.tgz",
- "integrity": "sha1-LElBFmldb7JUgJQ9P8hy5mKlIv0=",
- "dev": true,
- "requires": {
- "readable-stream": "1.0.34",
- "semver": "4.3.6"
- },
- "dependencies": {
- "readable-stream": {
- "version": "1.0.34",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
- "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "0.0.1",
- "string_decoder": "0.10.31"
- }
- },
- "semver": {
- "version": "4.3.6",
- "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz",
- "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=",
- "dev": true
- }
- }
- },
- "lolex": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/lolex/-/lolex-1.6.0.tgz",
- "integrity": "sha1-OpoCg0UqR9dDnnJzG54H1zhuSfY=",
- "dev": true
- },
- "longest": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
- "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=",
- "dev": true
- },
- "loose-envify": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz",
- "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=",
- "dev": true,
- "requires": {
- "js-tokens": "3.0.2"
- }
- },
- "loud-rejection": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
- "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
- "dev": true,
- "requires": {
- "currently-unhandled": "0.4.1",
- "signal-exit": "3.0.2"
- }
- },
- "lower-case": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz",
- "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=",
- "dev": true
- },
- "lowercase-keys": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz",
- "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==",
- "dev": true
- },
- "lru-cache": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz",
- "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==",
- "requires": {
- "pseudomap": "1.0.2",
- "yallist": "2.1.2"
- }
- },
- "macaddress": {
- "version": "0.2.8",
- "resolved": "https://registry.npmjs.org/macaddress/-/macaddress-0.2.8.tgz",
- "integrity": "sha1-WQTcU3w57G2+/q6QIycTX6hRHxI=",
- "dev": true
- },
- "make-dir": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.2.0.tgz",
- "integrity": "sha512-aNUAa4UMg/UougV25bbrU4ZaaKNjJ/3/xnvg/twpmKROPdKZPZ9wGgI0opdZzO8q/zUFawoUuixuOv33eZ61Iw==",
- "dev": true,
- "requires": {
- "pify": "3.0.0"
- }
- },
- "map-cache": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
- "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
- "dev": true
- },
- "map-obj": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz",
- "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=",
- "dev": true
- },
- "map-visit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
- "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
- "dev": true,
- "requires": {
- "object-visit": "1.0.1"
- }
- },
- "markdown-it": {
- "version": "8.4.1",
- "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.1.tgz",
- "integrity": "sha512-CzzqSSNkFRUf9vlWvhK1awpJreMRqdCrBvZ8DIoDWTOkESMIF741UPAhuAmbyWmdiFPA6WARNhnu2M6Nrhwa+A==",
- "requires": {
- "argparse": "1.0.10",
- "entities": "1.1.1",
- "linkify-it": "2.0.3",
- "mdurl": "1.0.1",
- "uc.micro": "1.0.5"
- }
- },
- "marker-clusterer-plus": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/marker-clusterer-plus/-/marker-clusterer-plus-2.1.4.tgz",
- "integrity": "sha1-+O/3TVmdqzt9Dj/tUmTqDnBPXWc="
- },
- "math-expression-evaluator": {
- "version": "1.2.17",
- "resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz",
- "integrity": "sha1-3oGf282E3M2PrlnGrreWFbnSZqw=",
- "dev": true
- },
- "md5.js": {
- "version": "1.3.4",
- "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz",
- "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=",
- "dev": true,
- "requires": {
- "hash-base": "3.0.4",
- "inherits": "2.0.3"
- },
- "dependencies": {
- "hash-base": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
- "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "mdurl": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz",
- "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4="
- },
- "media-typer": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
- "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
- },
- "mem": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz",
- "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=",
- "dev": true,
- "requires": {
- "mimic-fn": "1.2.0"
- }
- },
- "memory-fs": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz",
- "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=",
- "dev": true,
- "requires": {
- "errno": "0.1.7",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "meow": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.0.tgz",
- "integrity": "sha512-Me/kel335m6vMKmEmA6c87Z6DUFW3JqkINRnxkbC+A/PUm0D5Fl2dEBQrPKnqCL9Te/CIa1MUt/0InMJhuC/sw==",
- "dev": true,
- "requires": {
- "camelcase-keys": "4.2.0",
- "decamelize-keys": "1.1.0",
- "loud-rejection": "1.6.0",
- "minimist": "1.2.0",
- "minimist-options": "3.0.2",
- "normalize-package-data": "2.4.0",
- "read-pkg-up": "3.0.0",
- "redent": "2.0.0",
- "trim-newlines": "2.0.0"
- },
- "dependencies": {
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- },
- "read-pkg-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz",
- "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=",
- "dev": true,
- "requires": {
- "find-up": "2.1.0",
- "read-pkg": "3.0.0"
- }
- }
- }
- },
- "merge-descriptors": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
- "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
- },
- "methods": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
- "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
- },
- "micromatch": {
- "version": "2.3.11",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
- "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
- "dev": true,
- "requires": {
- "arr-diff": "2.0.0",
- "array-unique": "0.2.1",
- "braces": "1.8.5",
- "expand-brackets": "0.1.5",
- "extglob": "0.3.2",
- "filename-regex": "2.0.1",
- "is-extglob": "1.0.0",
- "is-glob": "2.0.1",
- "kind-of": "3.2.2",
- "normalize-path": "2.1.1",
- "object.omit": "2.0.1",
- "parse-glob": "3.0.4",
- "regex-cache": "0.4.4"
- }
- },
- "miller-rabin": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
- "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
- "dev": true,
- "requires": {
- "bn.js": "4.11.8",
- "brorand": "1.1.0"
- }
- },
- "mime": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
- "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ=="
- },
- "mime-db": {
- "version": "1.33.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
- "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ=="
- },
- "mime-types": {
- "version": "2.1.18",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
- "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
- "requires": {
- "mime-db": "1.33.0"
- }
- },
- "mimic-fn": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz",
- "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ=="
- },
- "minimalistic-assert": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz",
- "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=",
- "dev": true
- },
- "minimalistic-crypto-utils": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
- "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
- "dev": true
- },
- "minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "requires": {
- "brace-expansion": "1.1.11"
- }
- },
- "minimist": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
- "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
- },
- "minimist-options": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz",
- "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==",
- "dev": true,
- "requires": {
- "arrify": "1.0.1",
- "is-plain-obj": "1.1.0"
- }
- },
- "mississippi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz",
- "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==",
- "dev": true,
- "requires": {
- "concat-stream": "1.6.2",
- "duplexify": "3.5.4",
- "end-of-stream": "1.4.1",
- "flush-write-stream": "1.0.3",
- "from2": "2.3.0",
- "parallel-transform": "1.1.0",
- "pump": "2.0.1",
- "pumpify": "1.4.0",
- "stream-each": "1.2.2",
- "through2": "2.0.3"
- }
- },
- "mixin-deep": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz",
- "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==",
- "dev": true,
- "requires": {
- "for-in": "1.0.2",
- "is-extendable": "1.0.1"
- },
- "dependencies": {
- "is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "requires": {
- "is-plain-object": "2.0.4"
- }
- }
- }
- },
- "mixin-object": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz",
- "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=",
- "dev": true,
- "requires": {
- "for-in": "0.1.8",
- "is-extendable": "0.1.1"
- },
- "dependencies": {
- "for-in": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz",
- "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=",
- "dev": true
- }
- }
- },
- "mkdirp": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
- "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
- "requires": {
- "minimist": "0.0.8"
- }
- },
- "mocha": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.5.3.tgz",
- "integrity": "sha512-/6na001MJWEtYxHOV1WLfsmR4YIynkUEhBwzsb+fk2qmQ3iqsi258l/Q2MWHJMImAcNpZ8DEdYAK72NHoIQ9Eg==",
- "dev": true,
- "requires": {
- "browser-stdout": "1.3.0",
- "commander": "2.9.0",
- "debug": "2.6.8",
- "diff": "3.2.0",
- "escape-string-regexp": "1.0.5",
- "glob": "7.1.1",
- "growl": "1.9.2",
- "he": "1.1.1",
- "json3": "3.3.2",
- "lodash.create": "3.1.1",
- "mkdirp": "0.5.1",
- "supports-color": "3.1.2"
- },
- "dependencies": {
- "commander": {
- "version": "2.9.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz",
- "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=",
- "dev": true,
- "requires": {
- "graceful-readlink": "1.0.1"
- }
- },
- "debug": {
- "version": "2.6.8",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
- "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "glob": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz",
- "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=",
- "dev": true,
- "requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
- }
- },
- "has-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
- "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
- "dev": true
- },
- "supports-color": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz",
- "integrity": "sha1-cqJiiU2dQIuVbKBf83su2KbiotU=",
- "dev": true,
- "requires": {
- "has-flag": "1.0.0"
- }
- }
- }
- },
- "modify-values": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz",
- "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==",
- "dev": true
- },
- "moment": {
- "version": "2.21.0",
- "resolved": "https://registry.npmjs.org/moment/-/moment-2.21.0.tgz",
- "integrity": "sha512-TCZ36BjURTeFTM/CwRcViQlfkMvL1/vFISuNLO5GkcVm1+QHfbSiNqZuWeMFjj1/3+uAjXswgRk30j1kkLYJBQ=="
- },
- "move-concurrently": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
- "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=",
- "dev": true,
- "requires": {
- "aproba": "1.2.0",
- "copy-concurrently": "1.0.5",
- "fs-write-stream-atomic": "1.0.10",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.2",
- "run-queue": "1.0.3"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
- },
- "mute-stream": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
- "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s="
- },
- "nan": {
- "version": "2.10.0",
- "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
- "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==",
- "dev": true
- },
- "nanomatch": {
- "version": "1.2.9",
- "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz",
- "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==",
- "dev": true,
- "requires": {
- "arr-diff": "4.0.0",
- "array-unique": "0.3.2",
- "define-property": "2.0.2",
- "extend-shallow": "3.0.2",
- "fragment-cache": "0.2.1",
- "is-odd": "2.0.0",
- "is-windows": "1.0.2",
- "kind-of": "6.0.2",
- "object.pick": "1.3.0",
- "regex-not": "1.0.2",
- "snapdragon": "0.8.2",
- "to-regex": "3.0.2"
- },
- "dependencies": {
- "arr-diff": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
- "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
- "dev": true
- },
- "array-unique": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
- "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
- "dev": true
- },
- "kind-of": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
- "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
- "dev": true
- }
- }
- },
- "natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
- "dev": true
- },
- "ncname": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/ncname/-/ncname-1.0.0.tgz",
- "integrity": "sha1-W1etGLHKCShk72Kwse2BlPODtxw=",
- "dev": true,
- "requires": {
- "xml-char-classes": "1.0.0"
- }
- },
- "negotiator": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
- "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
- },
- "neo-async": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.0.tgz",
- "integrity": "sha512-nJmSswG4As/MkRq7QZFuH/sf/yuv8ODdMZrY4Bedjp77a5MK4A6s7YbBB64c9u79EBUOfXUXBvArmvzTD0X+6g==",
- "dev": true
- },
- "no-case": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz",
- "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==",
- "dev": true,
- "requires": {
- "lower-case": "1.1.4"
- }
- },
- "node-fetch": {
- "version": "1.7.3",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz",
- "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==",
- "requires": {
- "encoding": "0.1.12",
- "is-stream": "1.1.0"
- }
- },
- "node-gyp": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz",
- "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=",
- "dev": true,
- "requires": {
- "fstream": "1.0.11",
- "glob": "7.1.2",
- "graceful-fs": "4.1.11",
- "minimatch": "3.0.4",
- "mkdirp": "0.5.1",
- "nopt": "3.0.6",
- "npmlog": "4.1.2",
- "osenv": "0.1.5",
- "request": "2.85.0",
- "rimraf": "2.6.2",
- "semver": "5.3.0",
- "tar": "2.2.1",
- "which": "1.3.0"
- },
- "dependencies": {
- "semver": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
- "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
- "dev": true
- }
- }
- },
- "node-libs-browser": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz",
- "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==",
- "dev": true,
- "requires": {
- "assert": "1.4.1",
- "browserify-zlib": "0.2.0",
- "buffer": "4.9.1",
- "console-browserify": "1.1.0",
- "constants-browserify": "1.0.0",
- "crypto-browserify": "3.12.0",
- "domain-browser": "1.2.0",
- "events": "1.1.1",
- "https-browserify": "1.0.0",
- "os-browserify": "0.3.0",
- "path-browserify": "0.0.0",
- "process": "0.11.10",
- "punycode": "1.4.1",
- "querystring-es3": "0.2.1",
- "readable-stream": "2.3.5",
- "stream-browserify": "2.0.1",
- "stream-http": "2.8.1",
- "string_decoder": "1.1.0",
- "timers-browserify": "2.0.6",
- "tty-browserify": "0.0.0",
- "url": "0.11.0",
- "util": "0.10.3",
- "vm-browserify": "0.0.4"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- },
- "dependencies": {
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "string_decoder": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.0.tgz",
- "integrity": "sha512-8zQpRF6juocE69ae7CSPmYEGJe4VCXwP6S6dxUWI7i53Gwv54/ec41fiUA+X7BPGGv7fRSQJjBQVa0gomGaOgg==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "node-sass": {
- "version": "4.8.3",
- "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.8.3.tgz",
- "integrity": "sha512-tfFWhUsCk/Y19zarDcPo5xpj+IW3qCfOjVdHtYeG6S1CKbQOh1zqylnQK6cV3z9k80yxAnFX9Y+a9+XysDhhfg==",
- "dev": true,
- "requires": {
- "async-foreach": "0.1.3",
- "chalk": "1.1.3",
- "cross-spawn": "3.0.1",
- "gaze": "1.1.2",
- "get-stdin": "4.0.1",
- "glob": "7.1.2",
- "in-publish": "2.0.0",
- "lodash.assign": "4.2.0",
- "lodash.clonedeep": "4.5.0",
- "lodash.mergewith": "4.6.1",
- "meow": "3.7.0",
- "mkdirp": "0.5.1",
- "nan": "2.10.0",
- "node-gyp": "3.6.2",
- "npmlog": "4.1.2",
- "request": "2.79.0",
- "sass-graph": "2.2.4",
- "stdout-stream": "1.4.0",
- "true-case-path": "1.0.2"
- },
- "dependencies": {
- "assert-plus": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
- "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
- "dev": true
- },
- "aws-sign2": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
- "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=",
- "dev": true
- },
- "boom": {
- "version": "2.10.1",
- "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
- "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
- "dev": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "camelcase": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
- "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
- "dev": true
- },
- "camelcase-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
- "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
- "dev": true,
- "requires": {
- "camelcase": "2.1.1",
- "map-obj": "1.0.1"
- }
- },
- "caseless": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz",
- "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=",
- "dev": true
- },
- "cross-spawn": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
- "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
- "dev": true,
- "requires": {
- "lru-cache": "4.1.2",
- "which": "1.3.0"
- }
- },
- "cryptiles": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
- "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
- "dev": true,
- "requires": {
- "boom": "2.10.1"
- }
- },
- "form-data": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
- "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
- "dev": true,
- "requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.6",
- "mime-types": "2.1.18"
- }
- },
- "har-validator": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
- "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
- "dev": true,
- "requires": {
- "chalk": "1.1.3",
- "commander": "2.15.1",
- "is-my-json-valid": "2.17.2",
- "pinkie-promise": "2.0.1"
- }
- },
- "hawk": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
- "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
- "dev": true,
- "requires": {
- "boom": "2.10.1",
- "cryptiles": "2.0.5",
- "hoek": "2.16.3",
- "sntp": "1.0.9"
- }
- },
- "hoek": {
- "version": "2.16.3",
- "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
- "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
- "dev": true
- },
- "http-signature": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
- "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
- "dev": true,
- "requires": {
- "assert-plus": "0.2.0",
- "jsprim": "1.4.1",
- "sshpk": "1.14.1"
- }
- },
- "indent-string": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
- "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
- "dev": true,
- "requires": {
- "repeating": "2.0.1"
- }
- },
- "map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
- "dev": true
- },
- "meow": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
- "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
- "dev": true,
- "requires": {
- "camelcase-keys": "2.1.0",
- "decamelize": "1.2.0",
- "loud-rejection": "1.6.0",
- "map-obj": "1.0.1",
- "minimist": "1.2.0",
- "normalize-package-data": "2.4.0",
- "object-assign": "4.1.1",
- "read-pkg-up": "1.0.1",
- "redent": "1.0.0",
- "trim-newlines": "1.0.0"
- }
- },
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- },
- "qs": {
- "version": "6.3.2",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz",
- "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=",
- "dev": true
- },
- "redent": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
- "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
- "dev": true,
- "requires": {
- "indent-string": "2.1.0",
- "strip-indent": "1.0.1"
- }
- },
- "request": {
- "version": "2.79.0",
- "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz",
- "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=",
- "dev": true,
- "requires": {
- "aws-sign2": "0.6.0",
- "aws4": "1.6.0",
- "caseless": "0.11.0",
- "combined-stream": "1.0.6",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.1.4",
- "har-validator": "2.0.6",
- "hawk": "3.1.3",
- "http-signature": "1.1.1",
- "is-typedarray": "1.0.0",
- "isstream": "0.1.2",
- "json-stringify-safe": "5.0.1",
- "mime-types": "2.1.18",
- "oauth-sign": "0.8.2",
- "qs": "6.3.2",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.4",
- "tunnel-agent": "0.4.3",
- "uuid": "3.2.1"
- }
- },
- "sntp": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
- "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
- "dev": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "strip-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
- "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
- "dev": true,
- "requires": {
- "get-stdin": "4.0.1"
- }
- },
- "trim-newlines": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
- "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
- "dev": true
- },
- "tunnel-agent": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz",
- "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=",
- "dev": true
- }
- }
- },
- "nopt": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
- "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
- "dev": true,
- "requires": {
- "abbrev": "1.1.1"
- }
- },
- "normalize-package-data": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
- "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
- "dev": true,
- "requires": {
- "hosted-git-info": "2.6.0",
- "is-builtin-module": "1.0.0",
- "semver": "5.5.0",
- "validate-npm-package-license": "3.0.3"
- }
- },
- "normalize-path": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
- "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
- "dev": true,
- "requires": {
- "remove-trailing-separator": "1.1.0"
- }
- },
- "normalize-range": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
- "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
- "dev": true
- },
- "normalize-url": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz",
- "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=",
- "dev": true,
- "requires": {
- "object-assign": "4.1.1",
- "prepend-http": "1.0.4",
- "query-string": "4.3.4",
- "sort-keys": "1.1.2"
- }
- },
- "npm": {
- "version": "5.8.0",
- "resolved": "https://registry.npmjs.org/npm/-/npm-5.8.0.tgz",
- "integrity": "sha512-DowXzQwtSWDtbAjuWecuEiismR0VdNEYaL3VxNTYTdW6AGkYxfGk9LUZ/rt6etEyiH4IEk95HkJeGfXE5Rz9xQ==",
- "requires": {
- "JSONStream": "1.3.2",
- "abbrev": "1.1.1",
- "ansi-regex": "3.0.0",
- "ansicolors": "0.3.2",
- "ansistyles": "0.1.3",
- "aproba": "1.2.0",
- "archy": "1.0.0",
- "bin-links": "1.1.0",
- "bluebird": "3.5.1",
- "cacache": "10.0.4",
- "call-limit": "1.1.0",
- "chownr": "1.0.1",
- "cli-table2": "0.2.0",
- "cmd-shim": "2.0.2",
- "columnify": "1.5.4",
- "config-chain": "1.1.11",
- "debuglog": "1.0.1",
- "detect-indent": "5.0.0",
- "detect-newline": "2.1.0",
- "dezalgo": "1.0.3",
- "editor": "1.0.0",
- "find-npm-prefix": "1.0.2",
- "fs-vacuum": "1.2.10",
- "fs-write-stream-atomic": "1.0.10",
- "gentle-fs": "2.0.1",
- "glob": "7.1.2",
- "graceful-fs": "4.1.11",
- "has-unicode": "2.0.1",
- "hosted-git-info": "2.6.0",
- "iferr": "0.1.5",
- "imurmurhash": "0.1.4",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "ini": "1.3.5",
- "init-package-json": "1.10.3",
- "is-cidr": "1.0.0",
- "json-parse-better-errors": "1.0.1",
- "lazy-property": "1.0.0",
- "libcipm": "1.6.0",
- "libnpx": "10.0.1",
- "lockfile": "1.0.3",
- "lodash._baseindexof": "3.1.0",
- "lodash._baseuniq": "4.6.0",
- "lodash._bindcallback": "3.0.1",
- "lodash._cacheindexof": "3.0.2",
- "lodash._createcache": "3.1.2",
- "lodash._getnative": "3.9.1",
- "lodash.clonedeep": "4.5.0",
- "lodash.restparam": "3.6.1",
- "lodash.union": "4.6.0",
- "lodash.uniq": "4.5.0",
- "lodash.without": "4.4.0",
- "lru-cache": "4.1.1",
- "meant": "1.0.1",
- "mississippi": "3.0.0",
- "mkdirp": "0.5.1",
- "move-concurrently": "1.0.1",
- "nopt": "4.0.1",
- "normalize-package-data": "2.4.0",
- "npm-cache-filename": "1.0.2",
- "npm-install-checks": "3.0.0",
- "npm-lifecycle": "2.0.1",
- "npm-package-arg": "6.0.0",
- "npm-packlist": "1.1.10",
- "npm-profile": "3.0.1",
- "npm-registry-client": "8.5.1",
- "npm-user-validate": "1.0.0",
- "npmlog": "4.1.2",
- "once": "1.4.0",
- "opener": "1.4.3",
- "osenv": "0.1.5",
- "pacote": "7.6.1",
- "path-is-inside": "1.0.2",
- "promise-inflight": "1.0.1",
- "qrcode-terminal": "0.11.0",
- "query-string": "5.1.0",
- "qw": "1.0.1",
- "read": "1.0.7",
- "read-cmd-shim": "1.0.1",
- "read-installed": "4.0.3",
- "read-package-json": "2.0.13",
- "read-package-tree": "5.1.6",
- "readable-stream": "2.3.5",
- "readdir-scoped-modules": "1.0.2",
- "request": "2.83.0",
- "retry": "0.10.1",
- "rimraf": "2.6.2",
- "safe-buffer": "5.1.1",
- "semver": "5.5.0",
- "sha": "2.0.1",
- "slide": "1.1.6",
- "sorted-object": "2.0.1",
- "sorted-union-stream": "2.1.3",
- "ssri": "5.2.4",
- "strip-ansi": "4.0.0",
- "tar": "4.4.0",
- "text-table": "0.2.0",
- "uid-number": "0.0.6",
- "umask": "1.1.0",
- "unique-filename": "1.1.0",
- "unpipe": "1.0.0",
- "update-notifier": "2.3.0",
- "uuid": "3.2.1",
- "validate-npm-package-license": "3.0.1",
- "validate-npm-package-name": "3.0.0",
- "which": "1.3.0",
- "worker-farm": "1.5.4",
- "wrappy": "1.0.2",
- "write-file-atomic": "2.3.0"
- },
- "dependencies": {
- "JSONStream": {
- "version": "1.3.2",
- "bundled": true,
- "requires": {
- "jsonparse": "1.3.1",
- "through": "2.3.8"
- },
- "dependencies": {
- "jsonparse": {
- "version": "1.3.1",
- "bundled": true
- },
- "through": {
- "version": "2.3.8",
- "bundled": true
- }
- }
- },
- "abbrev": {
- "version": "1.1.1",
- "bundled": true
- },
- "ansi-regex": {
- "version": "3.0.0",
- "bundled": true
- },
- "ansicolors": {
- "version": "0.3.2",
- "bundled": true
- },
- "ansistyles": {
- "version": "0.1.3",
- "bundled": true
- },
- "aproba": {
- "version": "1.2.0",
- "bundled": true
- },
- "archy": {
- "version": "1.0.0",
- "bundled": true
- },
- "bin-links": {
- "version": "1.1.0",
- "bundled": true,
- "requires": {
- "bluebird": "3.5.1",
- "cmd-shim": "2.0.2",
- "fs-write-stream-atomic": "1.0.10",
- "gentle-fs": "2.0.1",
- "graceful-fs": "4.1.11",
- "slide": "1.1.6"
- }
- },
- "bluebird": {
- "version": "3.5.1",
- "bundled": true
- },
- "cacache": {
- "version": "10.0.4",
- "bundled": true,
- "requires": {
- "bluebird": "3.5.1",
- "chownr": "1.0.1",
- "glob": "7.1.2",
- "graceful-fs": "4.1.11",
- "lru-cache": "4.1.1",
- "mississippi": "2.0.0",
- "mkdirp": "0.5.1",
- "move-concurrently": "1.0.1",
- "promise-inflight": "1.0.1",
- "rimraf": "2.6.2",
- "ssri": "5.2.4",
- "unique-filename": "1.1.0",
- "y18n": "4.0.0"
- },
- "dependencies": {
- "mississippi": {
- "version": "2.0.0",
- "bundled": true,
- "requires": {
- "concat-stream": "1.6.1",
- "duplexify": "3.5.4",
- "end-of-stream": "1.4.1",
- "flush-write-stream": "1.0.2",
- "from2": "2.3.0",
- "parallel-transform": "1.1.0",
- "pump": "2.0.1",
- "pumpify": "1.4.0",
- "stream-each": "1.2.2",
- "through2": "2.0.3"
- },
- "dependencies": {
- "concat-stream": {
- "version": "1.6.1",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "typedarray": "0.0.6"
- },
- "dependencies": {
- "typedarray": {
- "version": "0.0.6",
- "bundled": true
- }
- }
- },
- "duplexify": {
- "version": "3.5.4",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "end-of-stream": {
- "version": "1.4.1",
- "bundled": true,
- "requires": {
- "once": "1.4.0"
- }
- },
- "flush-write-stream": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- }
- },
- "from2": {
- "version": "2.3.0",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- }
- },
- "parallel-transform": {
- "version": "1.1.0",
- "bundled": true,
- "requires": {
- "cyclist": "0.2.2",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "cyclist": {
- "version": "0.2.2",
- "bundled": true
- }
- }
- },
- "pump": {
- "version": "2.0.1",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
- }
- },
- "pumpify": {
- "version": "1.4.0",
- "bundled": true,
- "requires": {
- "duplexify": "3.5.4",
- "inherits": "2.0.3",
- "pump": "2.0.1"
- }
- },
- "stream-each": {
- "version": "1.2.2",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "through2": {
- "version": "2.0.3",
- "bundled": true,
- "requires": {
- "readable-stream": "2.3.5",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "xtend": {
- "version": "4.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "y18n": {
- "version": "4.0.0",
- "bundled": true
- }
- }
- },
- "call-limit": {
- "version": "1.1.0",
- "bundled": true
- },
- "chownr": {
- "version": "1.0.1",
- "bundled": true
- },
- "cli-table2": {
- "version": "0.2.0",
- "bundled": true,
- "requires": {
- "colors": "1.1.2",
- "lodash": "3.10.1",
- "string-width": "1.0.2"
- },
- "dependencies": {
- "colors": {
- "version": "1.1.2",
- "bundled": true,
- "optional": true
- },
- "lodash": {
- "version": "3.10.1",
- "bundled": true
- },
- "string-width": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- },
- "dependencies": {
- "code-point-at": {
- "version": "1.1.0",
- "bundled": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "number-is-nan": "1.0.1"
- },
- "dependencies": {
- "number-is-nan": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "ansi-regex": "2.1.1"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "bundled": true
- }
- }
- }
- }
- }
- }
- },
- "cmd-shim": {
- "version": "2.0.2",
- "bundled": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "mkdirp": "0.5.1"
- }
- },
- "columnify": {
- "version": "1.5.4",
- "bundled": true,
- "requires": {
- "strip-ansi": "3.0.1",
- "wcwidth": "1.0.1"
- },
- "dependencies": {
- "strip-ansi": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "ansi-regex": "2.1.1"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "bundled": true
- }
- }
- },
- "wcwidth": {
- "version": "1.0.1",
- "bundled": true,
- "requires": {
- "defaults": "1.0.3"
- },
- "dependencies": {
- "defaults": {
- "version": "1.0.3",
- "bundled": true,
- "requires": {
- "clone": "1.0.2"
- },
- "dependencies": {
- "clone": {
- "version": "1.0.2",
- "bundled": true
- }
- }
- }
- }
- }
- }
- },
- "config-chain": {
- "version": "1.1.11",
- "bundled": true,
- "requires": {
- "ini": "1.3.5",
- "proto-list": "1.2.4"
- },
- "dependencies": {
- "proto-list": {
- "version": "1.2.4",
- "bundled": true
- }
- }
- },
- "debuglog": {
- "version": "1.0.1",
- "bundled": true
- },
- "detect-indent": {
- "version": "5.0.0",
- "bundled": true
- },
- "detect-newline": {
- "version": "2.1.0",
- "bundled": true
- },
- "dezalgo": {
- "version": "1.0.3",
- "bundled": true,
- "requires": {
- "asap": "2.0.5",
- "wrappy": "1.0.2"
- },
- "dependencies": {
- "asap": {
- "version": "2.0.5",
- "bundled": true
- }
- }
- },
- "editor": {
- "version": "1.0.0",
- "bundled": true
- },
- "find-npm-prefix": {
- "version": "1.0.2",
- "bundled": true
- },
- "fs-vacuum": {
- "version": "1.2.10",
- "bundled": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "path-is-inside": "1.0.2",
- "rimraf": "2.6.2"
- }
- },
- "fs-write-stream-atomic": {
- "version": "1.0.10",
- "bundled": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "iferr": "0.1.5",
- "imurmurhash": "0.1.4",
- "readable-stream": "2.3.5"
- }
- },
- "gentle-fs": {
- "version": "2.0.1",
- "bundled": true,
- "requires": {
- "aproba": "1.2.0",
- "fs-vacuum": "1.2.10",
- "graceful-fs": "4.1.11",
- "iferr": "0.1.5",
- "mkdirp": "0.5.1",
- "path-is-inside": "1.0.2",
- "read-cmd-shim": "1.0.1",
- "slide": "1.1.6"
- }
- },
- "glob": {
- "version": "7.1.2",
- "bundled": true,
- "requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
- },
- "dependencies": {
- "fs.realpath": {
- "version": "1.0.0",
- "bundled": true
- },
- "minimatch": {
- "version": "3.0.4",
- "bundled": true,
- "requires": {
- "brace-expansion": "1.1.8"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "1.1.8",
- "bundled": true,
- "requires": {
- "balanced-match": "1.0.0",
- "concat-map": "0.0.1"
- },
- "dependencies": {
- "balanced-match": {
- "version": "1.0.0",
- "bundled": true
- },
- "concat-map": {
- "version": "0.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- },
- "graceful-fs": {
- "version": "4.1.11",
- "bundled": true
- },
- "has-unicode": {
- "version": "2.0.1",
- "bundled": true
- },
- "hosted-git-info": {
- "version": "2.6.0",
- "bundled": true
- },
- "iferr": {
- "version": "0.1.5",
- "bundled": true
- },
- "imurmurhash": {
- "version": "0.1.4",
- "bundled": true
- },
- "inflight": {
- "version": "1.0.6",
- "bundled": true,
- "requires": {
- "once": "1.4.0",
- "wrappy": "1.0.2"
- }
- },
- "inherits": {
- "version": "2.0.3",
- "bundled": true
- },
- "ini": {
- "version": "1.3.5",
- "bundled": true
- },
- "init-package-json": {
- "version": "1.10.3",
- "bundled": true,
- "requires": {
- "glob": "7.1.2",
- "npm-package-arg": "6.0.0",
- "promzard": "0.3.0",
- "read": "1.0.7",
- "read-package-json": "2.0.13",
- "semver": "5.5.0",
- "validate-npm-package-license": "3.0.1",
- "validate-npm-package-name": "3.0.0"
- },
- "dependencies": {
- "promzard": {
- "version": "0.3.0",
- "bundled": true,
- "requires": {
- "read": "1.0.7"
- }
- }
- }
- },
- "is-cidr": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "cidr-regex": "1.0.6"
- },
- "dependencies": {
- "cidr-regex": {
- "version": "1.0.6",
- "bundled": true
- }
- }
- },
- "json-parse-better-errors": {
- "version": "1.0.1",
- "bundled": true
- },
- "lazy-property": {
- "version": "1.0.0",
- "bundled": true
- },
- "libcipm": {
- "version": "1.6.0",
- "bundled": true,
- "requires": {
- "bin-links": "1.1.0",
- "bluebird": "3.5.1",
- "find-npm-prefix": "1.0.2",
- "graceful-fs": "4.1.11",
- "lock-verify": "2.0.0",
- "npm-lifecycle": "2.0.1",
- "npm-logical-tree": "1.2.1",
- "npm-package-arg": "6.0.0",
- "pacote": "7.6.1",
- "protoduck": "5.0.0",
- "read-package-json": "2.0.13",
- "rimraf": "2.6.2",
- "worker-farm": "1.5.4"
- },
- "dependencies": {
- "lock-verify": {
- "version": "2.0.0",
- "bundled": true,
- "requires": {
- "npm-package-arg": "5.1.2",
- "semver": "5.5.0"
- },
- "dependencies": {
- "npm-package-arg": {
- "version": "5.1.2",
- "bundled": true,
- "requires": {
- "hosted-git-info": "2.6.0",
- "osenv": "0.1.5",
- "semver": "5.5.0",
- "validate-npm-package-name": "3.0.0"
- }
- }
- }
- },
- "npm-logical-tree": {
- "version": "1.2.1",
- "bundled": true
- },
- "protoduck": {
- "version": "5.0.0",
- "bundled": true,
- "requires": {
- "genfun": "4.0.1"
- },
- "dependencies": {
- "genfun": {
- "version": "4.0.1",
- "bundled": true
- }
- }
- },
- "worker-farm": {
- "version": "1.5.4",
- "bundled": true,
- "requires": {
- "errno": "0.1.7",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "errno": {
- "version": "0.1.7",
- "bundled": true,
- "requires": {
- "prr": "1.0.1"
- },
- "dependencies": {
- "prr": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- },
- "xtend": {
- "version": "4.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "libnpx": {
- "version": "10.0.1",
- "bundled": true,
- "requires": {
- "dotenv": "5.0.1",
- "npm-package-arg": "6.0.0",
- "rimraf": "2.6.2",
- "safe-buffer": "5.1.1",
- "update-notifier": "2.3.0",
- "which": "1.3.0",
- "y18n": "4.0.0",
- "yargs": "11.0.0"
- },
- "dependencies": {
- "dotenv": {
- "version": "5.0.1",
- "bundled": true
- },
- "y18n": {
- "version": "4.0.0",
- "bundled": true
- },
- "yargs": {
- "version": "11.0.0",
- "bundled": true,
- "requires": {
- "cliui": "4.0.0",
- "decamelize": "1.2.0",
- "find-up": "2.1.0",
- "get-caller-file": "1.0.2",
- "os-locale": "2.1.0",
- "require-directory": "2.1.1",
- "require-main-filename": "1.0.1",
- "set-blocking": "2.0.0",
- "string-width": "2.1.1",
- "which-module": "2.0.0",
- "y18n": "3.2.1",
- "yargs-parser": "9.0.2"
- },
- "dependencies": {
- "cliui": {
- "version": "4.0.0",
- "bundled": true,
- "requires": {
- "string-width": "2.1.1",
- "strip-ansi": "4.0.0",
- "wrap-ansi": "2.1.0"
- },
- "dependencies": {
- "wrap-ansi": {
- "version": "2.1.0",
- "bundled": true,
- "requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1"
- },
- "dependencies": {
- "string-width": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- },
- "dependencies": {
- "code-point-at": {
- "version": "1.1.0",
- "bundled": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "number-is-nan": "1.0.1"
- },
- "dependencies": {
- "number-is-nan": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "ansi-regex": "2.1.1"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "bundled": true
- }
- }
- }
- }
- }
- }
- },
- "decamelize": {
- "version": "1.2.0",
- "bundled": true
- },
- "find-up": {
- "version": "2.1.0",
- "bundled": true,
- "requires": {
- "locate-path": "2.0.0"
- },
- "dependencies": {
- "locate-path": {
- "version": "2.0.0",
- "bundled": true,
- "requires": {
- "p-locate": "2.0.0",
- "path-exists": "3.0.0"
- },
- "dependencies": {
- "p-locate": {
- "version": "2.0.0",
- "bundled": true,
- "requires": {
- "p-limit": "1.2.0"
- },
- "dependencies": {
- "p-limit": {
- "version": "1.2.0",
- "bundled": true,
- "requires": {
- "p-try": "1.0.0"
- },
- "dependencies": {
- "p-try": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "path-exists": {
- "version": "3.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "get-caller-file": {
- "version": "1.0.2",
- "bundled": true
- },
- "os-locale": {
- "version": "2.1.0",
- "bundled": true,
- "requires": {
- "execa": "0.7.0",
- "lcid": "1.0.0",
- "mem": "1.1.0"
- },
- "dependencies": {
- "execa": {
- "version": "0.7.0",
- "bundled": true,
- "requires": {
- "cross-spawn": "5.1.0",
- "get-stream": "3.0.0",
- "is-stream": "1.1.0",
- "npm-run-path": "2.0.2",
- "p-finally": "1.0.0",
- "signal-exit": "3.0.2",
- "strip-eof": "1.0.0"
- },
- "dependencies": {
- "cross-spawn": {
- "version": "5.1.0",
- "bundled": true,
- "requires": {
- "lru-cache": "4.1.1",
- "shebang-command": "1.2.0",
- "which": "1.3.0"
- },
- "dependencies": {
- "shebang-command": {
- "version": "1.2.0",
- "bundled": true,
- "requires": {
- "shebang-regex": "1.0.0"
- },
- "dependencies": {
- "shebang-regex": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "get-stream": {
- "version": "3.0.0",
- "bundled": true
- },
- "is-stream": {
- "version": "1.1.0",
- "bundled": true
- },
- "npm-run-path": {
- "version": "2.0.2",
- "bundled": true,
- "requires": {
- "path-key": "2.0.1"
- },
- "dependencies": {
- "path-key": {
- "version": "2.0.1",
- "bundled": true
- }
- }
- },
- "p-finally": {
- "version": "1.0.0",
- "bundled": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "bundled": true
- },
- "strip-eof": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "lcid": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "invert-kv": "1.0.0"
- },
- "dependencies": {
- "invert-kv": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "mem": {
- "version": "1.1.0",
- "bundled": true,
- "requires": {
- "mimic-fn": "1.2.0"
- },
- "dependencies": {
- "mimic-fn": {
- "version": "1.2.0",
- "bundled": true
- }
- }
- }
- }
- },
- "require-directory": {
- "version": "2.1.1",
- "bundled": true
- },
- "require-main-filename": {
- "version": "1.0.1",
- "bundled": true
- },
- "set-blocking": {
- "version": "2.0.0",
- "bundled": true
- },
- "string-width": {
- "version": "2.1.1",
- "bundled": true,
- "requires": {
- "is-fullwidth-code-point": "2.0.0",
- "strip-ansi": "4.0.0"
- },
- "dependencies": {
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- },
- "which-module": {
- "version": "2.0.0",
- "bundled": true
- },
- "y18n": {
- "version": "3.2.1",
- "bundled": true
- },
- "yargs-parser": {
- "version": "9.0.2",
- "bundled": true,
- "requires": {
- "camelcase": "4.1.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "4.1.0",
- "bundled": true
- }
- }
- }
- }
- }
- }
- },
- "lockfile": {
- "version": "1.0.3",
- "bundled": true
- },
- "lodash._baseindexof": {
- "version": "3.1.0",
- "bundled": true
- },
- "lodash._baseuniq": {
- "version": "4.6.0",
- "bundled": true,
- "requires": {
- "lodash._createset": "4.0.3",
- "lodash._root": "3.0.1"
- },
- "dependencies": {
- "lodash._createset": {
- "version": "4.0.3",
- "bundled": true
- },
- "lodash._root": {
- "version": "3.0.1",
- "bundled": true
- }
- }
- },
- "lodash._bindcallback": {
- "version": "3.0.1",
- "bundled": true
- },
- "lodash._cacheindexof": {
- "version": "3.0.2",
- "bundled": true
- },
- "lodash._createcache": {
- "version": "3.1.2",
- "bundled": true,
- "requires": {
- "lodash._getnative": "3.9.1"
- }
- },
- "lodash._getnative": {
- "version": "3.9.1",
- "bundled": true
- },
- "lodash.clonedeep": {
- "version": "4.5.0",
- "bundled": true
- },
- "lodash.restparam": {
- "version": "3.6.1",
- "bundled": true
- },
- "lodash.union": {
- "version": "4.6.0",
- "bundled": true
- },
- "lodash.uniq": {
- "version": "4.5.0",
- "bundled": true
- },
- "lodash.without": {
- "version": "4.4.0",
- "bundled": true
- },
- "lru-cache": {
- "version": "4.1.1",
- "bundled": true,
- "requires": {
- "pseudomap": "1.0.2",
- "yallist": "2.1.2"
- },
- "dependencies": {
- "pseudomap": {
- "version": "1.0.2",
- "bundled": true
- },
- "yallist": {
- "version": "2.1.2",
- "bundled": true
- }
- }
- },
- "meant": {
- "version": "1.0.1",
- "bundled": true
- },
- "mississippi": {
- "version": "3.0.0",
- "bundled": true,
- "requires": {
- "concat-stream": "1.6.1",
- "duplexify": "3.5.4",
- "end-of-stream": "1.4.1",
- "flush-write-stream": "1.0.2",
- "from2": "2.3.0",
- "parallel-transform": "1.1.0",
- "pump": "3.0.0",
- "pumpify": "1.4.0",
- "stream-each": "1.2.2",
- "through2": "2.0.3"
- },
- "dependencies": {
- "concat-stream": {
- "version": "1.6.1",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "typedarray": "0.0.6"
- },
- "dependencies": {
- "typedarray": {
- "version": "0.0.6",
- "bundled": true
- }
- }
- },
- "duplexify": {
- "version": "3.5.4",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "end-of-stream": {
- "version": "1.4.1",
- "bundled": true,
- "requires": {
- "once": "1.4.0"
- }
- },
- "flush-write-stream": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- }
- },
- "from2": {
- "version": "2.3.0",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- }
- },
- "parallel-transform": {
- "version": "1.1.0",
- "bundled": true,
- "requires": {
- "cyclist": "0.2.2",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "cyclist": {
- "version": "0.2.2",
- "bundled": true
- }
- }
- },
- "pump": {
- "version": "3.0.0",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
- }
- },
- "pumpify": {
- "version": "1.4.0",
- "bundled": true,
- "requires": {
- "duplexify": "3.5.4",
- "inherits": "2.0.3",
- "pump": "2.0.1"
- },
- "dependencies": {
- "pump": {
- "version": "2.0.1",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
- }
- }
- }
- },
- "stream-each": {
- "version": "1.2.2",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "through2": {
- "version": "2.0.3",
- "bundled": true,
- "requires": {
- "readable-stream": "2.3.5",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "xtend": {
- "version": "4.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "mkdirp": {
- "version": "0.5.1",
- "bundled": true,
- "requires": {
- "minimist": "0.0.8"
- },
- "dependencies": {
- "minimist": {
- "version": "0.0.8",
- "bundled": true
- }
- }
- },
- "move-concurrently": {
- "version": "1.0.1",
- "bundled": true,
- "requires": {
- "aproba": "1.2.0",
- "copy-concurrently": "1.0.5",
- "fs-write-stream-atomic": "1.0.10",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.2",
- "run-queue": "1.0.3"
- },
- "dependencies": {
- "copy-concurrently": {
- "version": "1.0.5",
- "bundled": true,
- "requires": {
- "aproba": "1.2.0",
- "fs-write-stream-atomic": "1.0.10",
- "iferr": "0.1.5",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.2",
- "run-queue": "1.0.3"
- }
- },
- "run-queue": {
- "version": "1.0.3",
- "bundled": true,
- "requires": {
- "aproba": "1.2.0"
- }
- }
- }
- },
- "nopt": {
- "version": "4.0.1",
- "bundled": true,
- "requires": {
- "abbrev": "1.1.1",
- "osenv": "0.1.5"
- }
- },
- "normalize-package-data": {
- "version": "2.4.0",
- "bundled": true,
- "requires": {
- "hosted-git-info": "2.6.0",
- "is-builtin-module": "1.0.0",
- "semver": "5.5.0",
- "validate-npm-package-license": "3.0.1"
- },
- "dependencies": {
- "is-builtin-module": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "builtin-modules": "1.1.1"
- },
- "dependencies": {
- "builtin-modules": {
- "version": "1.1.1",
- "bundled": true
- }
- }
- }
- }
- },
- "npm-cache-filename": {
- "version": "1.0.2",
- "bundled": true
- },
- "npm-install-checks": {
- "version": "3.0.0",
- "bundled": true,
- "requires": {
- "semver": "5.5.0"
- }
- },
- "npm-lifecycle": {
- "version": "2.0.1",
- "bundled": true,
- "requires": {
- "byline": "5.0.0",
- "graceful-fs": "4.1.11",
- "node-gyp": "3.6.2",
- "resolve-from": "4.0.0",
- "slide": "1.1.6",
- "uid-number": "0.0.6",
- "umask": "1.1.0",
- "which": "1.3.0"
- },
- "dependencies": {
- "byline": {
- "version": "5.0.0",
- "bundled": true
- },
- "node-gyp": {
- "version": "3.6.2",
- "bundled": true,
- "requires": {
- "fstream": "1.0.11",
- "glob": "7.1.2",
- "graceful-fs": "4.1.11",
- "minimatch": "3.0.4",
- "mkdirp": "0.5.1",
- "nopt": "3.0.6",
- "npmlog": "4.1.2",
- "osenv": "0.1.5",
- "request": "2.83.0",
- "rimraf": "2.6.2",
- "semver": "5.3.0",
- "tar": "2.2.1",
- "which": "1.3.0"
- },
- "dependencies": {
- "fstream": {
- "version": "1.0.11",
- "bundled": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "inherits": "2.0.3",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.2"
- }
- },
- "minimatch": {
- "version": "3.0.4",
- "bundled": true,
- "requires": {
- "brace-expansion": "1.1.11"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "1.1.11",
- "bundled": true,
- "requires": {
- "balanced-match": "1.0.0",
- "concat-map": "0.0.1"
- },
- "dependencies": {
- "balanced-match": {
- "version": "1.0.0",
- "bundled": true
- },
- "concat-map": {
- "version": "0.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "nopt": {
- "version": "3.0.6",
- "bundled": true,
- "requires": {
- "abbrev": "1.1.1"
- }
- },
- "semver": {
- "version": "5.3.0",
- "bundled": true
- },
- "tar": {
- "version": "2.2.1",
- "bundled": true,
- "requires": {
- "block-stream": "0.0.9",
- "fstream": "1.0.11",
- "inherits": "2.0.3"
- },
- "dependencies": {
- "block-stream": {
- "version": "0.0.9",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3"
- }
- }
- }
- }
- }
- },
- "resolve-from": {
- "version": "4.0.0",
- "bundled": true
- }
- }
- },
- "npm-package-arg": {
- "version": "6.0.0",
- "bundled": true,
- "requires": {
- "hosted-git-info": "2.6.0",
- "osenv": "0.1.5",
- "semver": "5.5.0",
- "validate-npm-package-name": "3.0.0"
- }
- },
- "npm-packlist": {
- "version": "1.1.10",
- "bundled": true,
- "requires": {
- "ignore-walk": "3.0.1",
- "npm-bundled": "1.0.3"
- },
- "dependencies": {
- "ignore-walk": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "minimatch": "3.0.4"
- },
- "dependencies": {
- "minimatch": {
- "version": "3.0.4",
- "bundled": true,
- "requires": {
- "brace-expansion": "1.1.8"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "1.1.8",
- "bundled": true,
- "requires": {
- "balanced-match": "1.0.0",
- "concat-map": "0.0.1"
- },
- "dependencies": {
- "balanced-match": {
- "version": "1.0.0",
- "bundled": true
- },
- "concat-map": {
- "version": "0.0.1",
- "bundled": true
- }
- }
- }
- }
- }
- }
- },
- "npm-bundled": {
- "version": "1.0.3",
- "bundled": true
- }
- }
- },
- "npm-profile": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "aproba": "1.2.0",
- "make-fetch-happen": "2.6.0"
- },
- "dependencies": {
- "make-fetch-happen": {
- "version": "2.6.0",
- "bundled": true,
- "requires": {
- "agentkeepalive": "3.3.0",
- "cacache": "10.0.4",
- "http-cache-semantics": "3.8.1",
- "http-proxy-agent": "2.0.0",
- "https-proxy-agent": "2.1.1",
- "lru-cache": "4.1.1",
- "mississippi": "1.3.1",
- "node-fetch-npm": "2.0.2",
- "promise-retry": "1.1.1",
- "socks-proxy-agent": "3.0.1",
- "ssri": "5.2.4"
- },
- "dependencies": {
- "agentkeepalive": {
- "version": "3.3.0",
- "bundled": true,
- "requires": {
- "humanize-ms": "1.2.1"
- },
- "dependencies": {
- "humanize-ms": {
- "version": "1.2.1",
- "bundled": true,
- "requires": {
- "ms": "2.1.1"
- },
- "dependencies": {
- "ms": {
- "version": "2.1.1",
- "bundled": true
- }
- }
- }
- }
- },
- "http-cache-semantics": {
- "version": "3.8.1",
- "bundled": true
- },
- "http-proxy-agent": {
- "version": "2.0.0",
- "bundled": true,
- "requires": {
- "agent-base": "4.2.0",
- "debug": "2.6.9"
- },
- "dependencies": {
- "agent-base": {
- "version": "4.2.0",
- "bundled": true,
- "requires": {
- "es6-promisify": "5.0.0"
- },
- "dependencies": {
- "es6-promisify": {
- "version": "5.0.0",
- "bundled": true,
- "requires": {
- "es6-promise": "4.2.4"
- },
- "dependencies": {
- "es6-promise": {
- "version": "4.2.4",
- "bundled": true
- }
- }
- }
- }
- },
- "debug": {
- "version": "2.6.9",
- "bundled": true,
- "requires": {
- "ms": "2.0.0"
- },
- "dependencies": {
- "ms": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "https-proxy-agent": {
- "version": "2.1.1",
- "bundled": true,
- "requires": {
- "agent-base": "4.2.0",
- "debug": "3.1.0"
- },
- "dependencies": {
- "agent-base": {
- "version": "4.2.0",
- "bundled": true,
- "requires": {
- "es6-promisify": "5.0.0"
- },
- "dependencies": {
- "es6-promisify": {
- "version": "5.0.0",
- "bundled": true,
- "requires": {
- "es6-promise": "4.2.4"
- },
- "dependencies": {
- "es6-promise": {
- "version": "4.2.4",
- "bundled": true
- }
- }
- }
- }
- },
- "debug": {
- "version": "3.1.0",
- "bundled": true,
- "requires": {
- "ms": "2.0.0"
- },
- "dependencies": {
- "ms": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "mississippi": {
- "version": "1.3.1",
- "bundled": true,
- "requires": {
- "concat-stream": "1.6.0",
- "duplexify": "3.5.3",
- "end-of-stream": "1.4.1",
- "flush-write-stream": "1.0.2",
- "from2": "2.3.0",
- "parallel-transform": "1.1.0",
- "pump": "1.0.3",
- "pumpify": "1.4.0",
- "stream-each": "1.2.2",
- "through2": "2.0.3"
- },
- "dependencies": {
- "concat-stream": {
- "version": "1.6.0",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "typedarray": "0.0.6"
- },
- "dependencies": {
- "typedarray": {
- "version": "0.0.6",
- "bundled": true
- }
- }
- },
- "duplexify": {
- "version": "3.5.3",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "end-of-stream": {
- "version": "1.4.1",
- "bundled": true,
- "requires": {
- "once": "1.4.0"
- }
- },
- "flush-write-stream": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- }
- },
- "from2": {
- "version": "2.3.0",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- }
- },
- "parallel-transform": {
- "version": "1.1.0",
- "bundled": true,
- "requires": {
- "cyclist": "0.2.2",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "cyclist": {
- "version": "0.2.2",
- "bundled": true
- }
- }
- },
- "pump": {
- "version": "1.0.3",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
- }
- },
- "pumpify": {
- "version": "1.4.0",
- "bundled": true,
- "requires": {
- "duplexify": "3.5.3",
- "inherits": "2.0.3",
- "pump": "2.0.1"
- },
- "dependencies": {
- "pump": {
- "version": "2.0.1",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
- }
- }
- }
- },
- "stream-each": {
- "version": "1.2.2",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "through2": {
- "version": "2.0.3",
- "bundled": true,
- "requires": {
- "readable-stream": "2.3.5",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "xtend": {
- "version": "4.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "node-fetch-npm": {
- "version": "2.0.2",
- "bundled": true,
- "requires": {
- "encoding": "0.1.12",
- "json-parse-better-errors": "1.0.1",
- "safe-buffer": "5.1.1"
- },
- "dependencies": {
- "encoding": {
- "version": "0.1.12",
- "bundled": true,
- "requires": {
- "iconv-lite": "0.4.19"
- },
- "dependencies": {
- "iconv-lite": {
- "version": "0.4.19",
- "bundled": true
- }
- }
- },
- "json-parse-better-errors": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- },
- "promise-retry": {
- "version": "1.1.1",
- "bundled": true,
- "requires": {
- "err-code": "1.1.2",
- "retry": "0.10.1"
- },
- "dependencies": {
- "err-code": {
- "version": "1.1.2",
- "bundled": true
- }
- }
- },
- "socks-proxy-agent": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "agent-base": "4.2.0",
- "socks": "1.1.10"
- },
- "dependencies": {
- "agent-base": {
- "version": "4.2.0",
- "bundled": true,
- "requires": {
- "es6-promisify": "5.0.0"
- },
- "dependencies": {
- "es6-promisify": {
- "version": "5.0.0",
- "bundled": true,
- "requires": {
- "es6-promise": "4.2.4"
- },
- "dependencies": {
- "es6-promise": {
- "version": "4.2.4",
- "bundled": true
- }
- }
- }
- }
- },
- "socks": {
- "version": "1.1.10",
- "bundled": true,
- "requires": {
- "ip": "1.1.5",
- "smart-buffer": "1.1.15"
- },
- "dependencies": {
- "ip": {
- "version": "1.1.5",
- "bundled": true
- },
- "smart-buffer": {
- "version": "1.1.15",
- "bundled": true
- }
- }
- }
- }
- }
- }
- }
- }
- },
- "npm-registry-client": {
- "version": "8.5.1",
- "bundled": true,
- "requires": {
- "concat-stream": "1.6.1",
- "graceful-fs": "4.1.11",
- "normalize-package-data": "2.4.0",
- "npm-package-arg": "6.0.0",
- "npmlog": "4.1.2",
- "once": "1.4.0",
- "request": "2.83.0",
- "retry": "0.10.1",
- "safe-buffer": "5.1.1",
- "semver": "5.5.0",
- "slide": "1.1.6",
- "ssri": "5.2.4"
- },
- "dependencies": {
- "concat-stream": {
- "version": "1.6.1",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "typedarray": "0.0.6"
- },
- "dependencies": {
- "typedarray": {
- "version": "0.0.6",
- "bundled": true
- }
- }
- }
- }
- },
- "npm-user-validate": {
- "version": "1.0.0",
- "bundled": true
- },
- "npmlog": {
- "version": "4.1.2",
- "bundled": true,
- "requires": {
- "are-we-there-yet": "1.1.4",
- "console-control-strings": "1.1.0",
- "gauge": "2.7.4",
- "set-blocking": "2.0.0"
- },
- "dependencies": {
- "are-we-there-yet": {
- "version": "1.1.4",
- "bundled": true,
- "requires": {
- "delegates": "1.0.0",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "delegates": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "console-control-strings": {
- "version": "1.1.0",
- "bundled": true
- },
- "gauge": {
- "version": "2.7.4",
- "bundled": true,
- "requires": {
- "aproba": "1.2.0",
- "console-control-strings": "1.1.0",
- "has-unicode": "2.0.1",
- "object-assign": "4.1.1",
- "signal-exit": "3.0.2",
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wide-align": "1.1.2"
- },
- "dependencies": {
- "object-assign": {
- "version": "4.1.1",
- "bundled": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "bundled": true
- },
- "string-width": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- },
- "dependencies": {
- "code-point-at": {
- "version": "1.1.0",
- "bundled": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "number-is-nan": "1.0.1"
- },
- "dependencies": {
- "number-is-nan": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "ansi-regex": "2.1.1"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "bundled": true
- }
- }
- },
- "wide-align": {
- "version": "1.1.2",
- "bundled": true,
- "requires": {
- "string-width": "1.0.2"
- }
- }
- }
- },
- "set-blocking": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- },
- "once": {
- "version": "1.4.0",
- "bundled": true,
- "requires": {
- "wrappy": "1.0.2"
- }
- },
- "opener": {
- "version": "1.4.3",
- "bundled": true
- },
- "osenv": {
- "version": "0.1.5",
- "bundled": true,
- "requires": {
- "os-homedir": "1.0.2",
- "os-tmpdir": "1.0.2"
- },
- "dependencies": {
- "os-homedir": {
- "version": "1.0.2",
- "bundled": true
- },
- "os-tmpdir": {
- "version": "1.0.2",
- "bundled": true
- }
- }
- },
- "pacote": {
- "version": "7.6.1",
- "bundled": true,
- "requires": {
- "bluebird": "3.5.1",
- "cacache": "10.0.4",
- "get-stream": "3.0.0",
- "glob": "7.1.2",
- "lru-cache": "4.1.1",
- "make-fetch-happen": "2.6.0",
- "minimatch": "3.0.4",
- "mississippi": "3.0.0",
- "mkdirp": "0.5.1",
- "normalize-package-data": "2.4.0",
- "npm-package-arg": "6.0.0",
- "npm-packlist": "1.1.10",
- "npm-pick-manifest": "2.1.0",
- "osenv": "0.1.5",
- "promise-inflight": "1.0.1",
- "promise-retry": "1.1.1",
- "protoduck": "5.0.0",
- "rimraf": "2.6.2",
- "safe-buffer": "5.1.1",
- "semver": "5.5.0",
- "ssri": "5.2.4",
- "tar": "4.4.0",
- "unique-filename": "1.1.0",
- "which": "1.3.0"
- },
- "dependencies": {
- "get-stream": {
- "version": "3.0.0",
- "bundled": true
- },
- "make-fetch-happen": {
- "version": "2.6.0",
- "bundled": true,
- "requires": {
- "agentkeepalive": "3.4.0",
- "cacache": "10.0.4",
- "http-cache-semantics": "3.8.1",
- "http-proxy-agent": "2.1.0",
- "https-proxy-agent": "2.2.0",
- "lru-cache": "4.1.1",
- "mississippi": "1.3.1",
- "node-fetch-npm": "2.0.2",
- "promise-retry": "1.1.1",
- "socks-proxy-agent": "3.0.1",
- "ssri": "5.2.4"
- },
- "dependencies": {
- "agentkeepalive": {
- "version": "3.4.0",
- "bundled": true,
- "requires": {
- "humanize-ms": "1.2.1"
- },
- "dependencies": {
- "humanize-ms": {
- "version": "1.2.1",
- "bundled": true,
- "requires": {
- "ms": "2.1.1"
- },
- "dependencies": {
- "ms": {
- "version": "2.1.1",
- "bundled": true
- }
- }
- }
- }
- },
- "http-cache-semantics": {
- "version": "3.8.1",
- "bundled": true
- },
- "http-proxy-agent": {
- "version": "2.1.0",
- "bundled": true,
- "requires": {
- "agent-base": "4.2.0",
- "debug": "3.1.0"
- },
- "dependencies": {
- "agent-base": {
- "version": "4.2.0",
- "bundled": true,
- "requires": {
- "es6-promisify": "5.0.0"
- },
- "dependencies": {
- "es6-promisify": {
- "version": "5.0.0",
- "bundled": true,
- "requires": {
- "es6-promise": "4.2.4"
- },
- "dependencies": {
- "es6-promise": {
- "version": "4.2.4",
- "bundled": true
- }
- }
- }
- }
- },
- "debug": {
- "version": "3.1.0",
- "bundled": true,
- "requires": {
- "ms": "2.0.0"
- },
- "dependencies": {
- "ms": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "https-proxy-agent": {
- "version": "2.2.0",
- "bundled": true,
- "requires": {
- "agent-base": "4.2.0",
- "debug": "3.1.0"
- },
- "dependencies": {
- "agent-base": {
- "version": "4.2.0",
- "bundled": true,
- "requires": {
- "es6-promisify": "5.0.0"
- },
- "dependencies": {
- "es6-promisify": {
- "version": "5.0.0",
- "bundled": true,
- "requires": {
- "es6-promise": "4.2.4"
- },
- "dependencies": {
- "es6-promise": {
- "version": "4.2.4",
- "bundled": true
- }
- }
- }
- }
- },
- "debug": {
- "version": "3.1.0",
- "bundled": true,
- "requires": {
- "ms": "2.0.0"
- },
- "dependencies": {
- "ms": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "mississippi": {
- "version": "1.3.1",
- "bundled": true,
- "requires": {
- "concat-stream": "1.6.1",
- "duplexify": "3.5.4",
- "end-of-stream": "1.4.1",
- "flush-write-stream": "1.0.2",
- "from2": "2.3.0",
- "parallel-transform": "1.1.0",
- "pump": "1.0.3",
- "pumpify": "1.4.0",
- "stream-each": "1.2.2",
- "through2": "2.0.3"
- },
- "dependencies": {
- "concat-stream": {
- "version": "1.6.1",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "typedarray": "0.0.6"
- },
- "dependencies": {
- "typedarray": {
- "version": "0.0.6",
- "bundled": true
- }
- }
- },
- "duplexify": {
- "version": "3.5.4",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "end-of-stream": {
- "version": "1.4.1",
- "bundled": true,
- "requires": {
- "once": "1.4.0"
- }
- },
- "flush-write-stream": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- }
- },
- "from2": {
- "version": "2.3.0",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- }
- },
- "parallel-transform": {
- "version": "1.1.0",
- "bundled": true,
- "requires": {
- "cyclist": "0.2.2",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "cyclist": {
- "version": "0.2.2",
- "bundled": true
- }
- }
- },
- "pump": {
- "version": "1.0.3",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
- }
- },
- "pumpify": {
- "version": "1.4.0",
- "bundled": true,
- "requires": {
- "duplexify": "3.5.4",
- "inherits": "2.0.3",
- "pump": "2.0.1"
- },
- "dependencies": {
- "pump": {
- "version": "2.0.1",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
- }
- }
- }
- },
- "stream-each": {
- "version": "1.2.2",
- "bundled": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "through2": {
- "version": "2.0.3",
- "bundled": true,
- "requires": {
- "readable-stream": "2.3.5",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "xtend": {
- "version": "4.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "node-fetch-npm": {
- "version": "2.0.2",
- "bundled": true,
- "requires": {
- "encoding": "0.1.12",
- "json-parse-better-errors": "1.0.1",
- "safe-buffer": "5.1.1"
- },
- "dependencies": {
- "encoding": {
- "version": "0.1.12",
- "bundled": true,
- "requires": {
- "iconv-lite": "0.4.19"
- },
- "dependencies": {
- "iconv-lite": {
- "version": "0.4.19",
- "bundled": true
- }
- }
- },
- "json-parse-better-errors": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- },
- "socks-proxy-agent": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "agent-base": "4.2.0",
- "socks": "1.1.10"
- },
- "dependencies": {
- "agent-base": {
- "version": "4.2.0",
- "bundled": true,
- "requires": {
- "es6-promisify": "5.0.0"
- },
- "dependencies": {
- "es6-promisify": {
- "version": "5.0.0",
- "bundled": true,
- "requires": {
- "es6-promise": "4.2.4"
- },
- "dependencies": {
- "es6-promise": {
- "version": "4.2.4",
- "bundled": true
- }
- }
- }
- }
- },
- "socks": {
- "version": "1.1.10",
- "bundled": true,
- "requires": {
- "ip": "1.1.5",
- "smart-buffer": "1.1.15"
- },
- "dependencies": {
- "ip": {
- "version": "1.1.5",
- "bundled": true
- },
- "smart-buffer": {
- "version": "1.1.15",
- "bundled": true
- }
- }
- }
- }
- }
- }
- },
- "minimatch": {
- "version": "3.0.4",
- "bundled": true,
- "requires": {
- "brace-expansion": "1.1.11"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "1.1.11",
- "bundled": true,
- "requires": {
- "balanced-match": "1.0.0",
- "concat-map": "0.0.1"
- },
- "dependencies": {
- "balanced-match": {
- "version": "1.0.0",
- "bundled": true
- },
- "concat-map": {
- "version": "0.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "npm-pick-manifest": {
- "version": "2.1.0",
- "bundled": true,
- "requires": {
- "npm-package-arg": "6.0.0",
- "semver": "5.5.0"
- }
- },
- "promise-retry": {
- "version": "1.1.1",
- "bundled": true,
- "requires": {
- "err-code": "1.1.2",
- "retry": "0.10.1"
- },
- "dependencies": {
- "err-code": {
- "version": "1.1.2",
- "bundled": true
- }
- }
- },
- "protoduck": {
- "version": "5.0.0",
- "bundled": true,
- "requires": {
- "genfun": "4.0.1"
- },
- "dependencies": {
- "genfun": {
- "version": "4.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "path-is-inside": {
- "version": "1.0.2",
- "bundled": true
- },
- "promise-inflight": {
- "version": "1.0.1",
- "bundled": true
- },
- "qrcode-terminal": {
- "version": "0.11.0",
- "bundled": true
- },
- "query-string": {
- "version": "5.1.0",
- "bundled": true,
- "requires": {
- "decode-uri-component": "0.2.0",
- "object-assign": "4.1.1",
- "strict-uri-encode": "1.1.0"
- },
- "dependencies": {
- "decode-uri-component": {
- "version": "0.2.0",
- "bundled": true
- },
- "object-assign": {
- "version": "4.1.1",
- "bundled": true
- },
- "strict-uri-encode": {
- "version": "1.1.0",
- "bundled": true
- }
- }
- },
- "qw": {
- "version": "1.0.1",
- "bundled": true
- },
- "read": {
- "version": "1.0.7",
- "bundled": true,
- "requires": {
- "mute-stream": "0.0.7"
- },
- "dependencies": {
- "mute-stream": {
- "version": "0.0.7",
- "bundled": true
- }
- }
- },
- "read-cmd-shim": {
- "version": "1.0.1",
- "bundled": true,
- "requires": {
- "graceful-fs": "4.1.11"
- }
- },
- "read-installed": {
- "version": "4.0.3",
- "bundled": true,
- "requires": {
- "debuglog": "1.0.1",
- "graceful-fs": "4.1.11",
- "read-package-json": "2.0.13",
- "readdir-scoped-modules": "1.0.2",
- "semver": "5.5.0",
- "slide": "1.1.6",
- "util-extend": "1.0.3"
- },
- "dependencies": {
- "util-extend": {
- "version": "1.0.3",
- "bundled": true
- }
- }
- },
- "read-package-json": {
- "version": "2.0.13",
- "bundled": true,
- "requires": {
- "glob": "7.1.2",
- "graceful-fs": "4.1.11",
- "json-parse-better-errors": "1.0.1",
- "normalize-package-data": "2.4.0",
- "slash": "1.0.0"
- },
- "dependencies": {
- "json-parse-better-errors": {
- "version": "1.0.1",
- "bundled": true
- },
- "slash": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "read-package-tree": {
- "version": "5.1.6",
- "bundled": true,
- "requires": {
- "debuglog": "1.0.1",
- "dezalgo": "1.0.3",
- "once": "1.4.0",
- "read-package-json": "2.0.13",
- "readdir-scoped-modules": "1.0.2"
- }
- },
- "readable-stream": {
- "version": "2.3.5",
- "bundled": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- },
- "dependencies": {
- "core-util-is": {
- "version": "1.0.2",
- "bundled": true
- },
- "isarray": {
- "version": "1.0.0",
- "bundled": true
- },
- "process-nextick-args": {
- "version": "2.0.0",
- "bundled": true
- },
- "string_decoder": {
- "version": "1.0.3",
- "bundled": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- },
- "util-deprecate": {
- "version": "1.0.2",
- "bundled": true
- }
- }
- },
- "readdir-scoped-modules": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "debuglog": "1.0.1",
- "dezalgo": "1.0.3",
- "graceful-fs": "4.1.11",
- "once": "1.4.0"
- }
- },
- "request": {
- "version": "2.83.0",
- "bundled": true,
- "requires": {
- "aws-sign2": "0.7.0",
- "aws4": "1.6.0",
- "caseless": "0.12.0",
- "combined-stream": "1.0.5",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.3.1",
- "har-validator": "5.0.3",
- "hawk": "6.0.2",
- "http-signature": "1.2.0",
- "is-typedarray": "1.0.0",
- "isstream": "0.1.2",
- "json-stringify-safe": "5.0.1",
- "mime-types": "2.1.17",
- "oauth-sign": "0.8.2",
- "performance-now": "2.1.0",
- "qs": "6.5.1",
- "safe-buffer": "5.1.1",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.3",
- "tunnel-agent": "0.6.0",
- "uuid": "3.2.1"
- },
- "dependencies": {
- "aws-sign2": {
- "version": "0.7.0",
- "bundled": true
- },
- "aws4": {
- "version": "1.6.0",
- "bundled": true
- },
- "caseless": {
- "version": "0.12.0",
- "bundled": true
- },
- "combined-stream": {
- "version": "1.0.5",
- "bundled": true,
- "requires": {
- "delayed-stream": "1.0.0"
- },
- "dependencies": {
- "delayed-stream": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "extend": {
- "version": "3.0.1",
- "bundled": true
- },
- "forever-agent": {
- "version": "0.6.1",
- "bundled": true
- },
- "form-data": {
- "version": "2.3.1",
- "bundled": true,
- "requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.5",
- "mime-types": "2.1.17"
- },
- "dependencies": {
- "asynckit": {
- "version": "0.4.0",
- "bundled": true
- }
- }
- },
- "har-validator": {
- "version": "5.0.3",
- "bundled": true,
- "requires": {
- "ajv": "5.2.3",
- "har-schema": "2.0.0"
- },
- "dependencies": {
- "ajv": {
- "version": "5.2.3",
- "bundled": true,
- "requires": {
- "co": "4.6.0",
- "fast-deep-equal": "1.0.0",
- "json-schema-traverse": "0.3.1",
- "json-stable-stringify": "1.0.1"
- },
- "dependencies": {
- "co": {
- "version": "4.6.0",
- "bundled": true
- },
- "fast-deep-equal": {
- "version": "1.0.0",
- "bundled": true
- },
- "json-schema-traverse": {
- "version": "0.3.1",
- "bundled": true
- },
- "json-stable-stringify": {
- "version": "1.0.1",
- "bundled": true,
- "requires": {
- "jsonify": "0.0.0"
- },
- "dependencies": {
- "jsonify": {
- "version": "0.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "har-schema": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- },
- "hawk": {
- "version": "6.0.2",
- "bundled": true,
- "requires": {
- "boom": "4.3.1",
- "cryptiles": "3.1.2",
- "hoek": "4.2.0",
- "sntp": "2.0.2"
- },
- "dependencies": {
- "boom": {
- "version": "4.3.1",
- "bundled": true,
- "requires": {
- "hoek": "4.2.0"
- }
- },
- "cryptiles": {
- "version": "3.1.2",
- "bundled": true,
- "requires": {
- "boom": "5.2.0"
- },
- "dependencies": {
- "boom": {
- "version": "5.2.0",
- "bundled": true,
- "requires": {
- "hoek": "4.2.0"
- }
- }
- }
- },
- "hoek": {
- "version": "4.2.0",
- "bundled": true
- },
- "sntp": {
- "version": "2.0.2",
- "bundled": true,
- "requires": {
- "hoek": "4.2.0"
- }
- }
- }
- },
- "http-signature": {
- "version": "1.2.0",
- "bundled": true,
- "requires": {
- "assert-plus": "1.0.0",
- "jsprim": "1.4.1",
- "sshpk": "1.13.1"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true
- },
- "jsprim": {
- "version": "1.4.1",
- "bundled": true,
- "requires": {
- "assert-plus": "1.0.0",
- "extsprintf": "1.3.0",
- "json-schema": "0.2.3",
- "verror": "1.10.0"
- },
- "dependencies": {
- "extsprintf": {
- "version": "1.3.0",
- "bundled": true
- },
- "json-schema": {
- "version": "0.2.3",
- "bundled": true
- },
- "verror": {
- "version": "1.10.0",
- "bundled": true,
- "requires": {
- "assert-plus": "1.0.0",
- "core-util-is": "1.0.2",
- "extsprintf": "1.3.0"
- },
- "dependencies": {
- "core-util-is": {
- "version": "1.0.2",
- "bundled": true
- }
- }
- }
- }
- },
- "sshpk": {
- "version": "1.13.1",
- "bundled": true,
- "requires": {
- "asn1": "0.2.3",
- "assert-plus": "1.0.0",
- "bcrypt-pbkdf": "1.0.1",
- "dashdash": "1.14.1",
- "ecc-jsbn": "0.1.1",
- "getpass": "0.1.7",
- "jsbn": "0.1.1",
- "tweetnacl": "0.14.5"
- },
- "dependencies": {
- "asn1": {
- "version": "0.2.3",
- "bundled": true
- },
- "bcrypt-pbkdf": {
- "version": "1.0.1",
- "bundled": true,
- "optional": true,
- "requires": {
- "tweetnacl": "0.14.5"
- }
- },
- "dashdash": {
- "version": "1.14.1",
- "bundled": true,
- "requires": {
- "assert-plus": "1.0.0"
- }
- },
- "ecc-jsbn": {
- "version": "0.1.1",
- "bundled": true,
- "optional": true,
- "requires": {
- "jsbn": "0.1.1"
- }
- },
- "getpass": {
- "version": "0.1.7",
- "bundled": true,
- "requires": {
- "assert-plus": "1.0.0"
- }
- },
- "jsbn": {
- "version": "0.1.1",
- "bundled": true,
- "optional": true
- },
- "tweetnacl": {
- "version": "0.14.5",
- "bundled": true,
- "optional": true
- }
- }
- }
- }
- },
- "is-typedarray": {
- "version": "1.0.0",
- "bundled": true
- },
- "isstream": {
- "version": "0.1.2",
- "bundled": true
- },
- "json-stringify-safe": {
- "version": "5.0.1",
- "bundled": true
- },
- "mime-types": {
- "version": "2.1.17",
- "bundled": true,
- "requires": {
- "mime-db": "1.30.0"
- },
- "dependencies": {
- "mime-db": {
- "version": "1.30.0",
- "bundled": true
- }
- }
- },
- "oauth-sign": {
- "version": "0.8.2",
- "bundled": true
- },
- "performance-now": {
- "version": "2.1.0",
- "bundled": true
- },
- "qs": {
- "version": "6.5.1",
- "bundled": true
- },
- "stringstream": {
- "version": "0.0.5",
- "bundled": true
- },
- "tough-cookie": {
- "version": "2.3.3",
- "bundled": true,
- "requires": {
- "punycode": "1.4.1"
- },
- "dependencies": {
- "punycode": {
- "version": "1.4.1",
- "bundled": true
- }
- }
- },
- "tunnel-agent": {
- "version": "0.6.0",
- "bundled": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "retry": {
- "version": "0.10.1",
- "bundled": true
- },
- "rimraf": {
- "version": "2.6.2",
- "bundled": true,
- "requires": {
- "glob": "7.1.2"
- }
- },
- "safe-buffer": {
- "version": "5.1.1",
- "bundled": true
- },
- "semver": {
- "version": "5.5.0",
- "bundled": true
- },
- "sha": {
- "version": "2.0.1",
- "bundled": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "readable-stream": "2.3.5"
- }
- },
- "slide": {
- "version": "1.1.6",
- "bundled": true
- },
- "sorted-object": {
- "version": "2.0.1",
- "bundled": true
- },
- "sorted-union-stream": {
- "version": "2.1.3",
- "bundled": true,
- "requires": {
- "from2": "1.3.0",
- "stream-iterate": "1.2.0"
- },
- "dependencies": {
- "from2": {
- "version": "1.3.0",
- "bundled": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "1.1.14"
- },
- "dependencies": {
- "readable-stream": {
- "version": "1.1.14",
- "bundled": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "0.0.1",
- "string_decoder": "0.10.31"
- },
- "dependencies": {
- "core-util-is": {
- "version": "1.0.2",
- "bundled": true
- },
- "isarray": {
- "version": "0.0.1",
- "bundled": true
- },
- "string_decoder": {
- "version": "0.10.31",
- "bundled": true
- }
- }
- }
- }
- },
- "stream-iterate": {
- "version": "1.2.0",
- "bundled": true,
- "requires": {
- "readable-stream": "2.3.5",
- "stream-shift": "1.0.0"
- },
- "dependencies": {
- "stream-shift": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "ssri": {
- "version": "5.2.4",
- "bundled": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- },
- "strip-ansi": {
- "version": "4.0.0",
- "bundled": true,
- "requires": {
- "ansi-regex": "3.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "3.0.0",
- "bundled": true
- }
- }
- },
- "tar": {
- "version": "4.4.0",
- "bundled": true,
- "requires": {
- "chownr": "1.0.1",
- "fs-minipass": "1.2.5",
- "minipass": "2.2.1",
- "minizlib": "1.1.0",
- "mkdirp": "0.5.1",
- "yallist": "3.0.2"
- },
- "dependencies": {
- "fs-minipass": {
- "version": "1.2.5",
- "bundled": true,
- "requires": {
- "minipass": "2.2.1"
- }
- },
- "minipass": {
- "version": "2.2.1",
- "bundled": true,
- "requires": {
- "yallist": "3.0.2"
- }
- },
- "minizlib": {
- "version": "1.1.0",
- "bundled": true,
- "requires": {
- "minipass": "2.2.1"
- }
- },
- "yallist": {
- "version": "3.0.2",
- "bundled": true
- }
- }
- },
- "text-table": {
- "version": "0.2.0",
- "bundled": true
- },
- "uid-number": {
- "version": "0.0.6",
- "bundled": true
- },
- "umask": {
- "version": "1.1.0",
- "bundled": true
- },
- "unique-filename": {
- "version": "1.1.0",
- "bundled": true,
- "requires": {
- "unique-slug": "2.0.0"
- },
- "dependencies": {
- "unique-slug": {
- "version": "2.0.0",
- "bundled": true,
- "requires": {
- "imurmurhash": "0.1.4"
- }
- }
- }
- },
- "unpipe": {
- "version": "1.0.0",
- "bundled": true
- },
- "update-notifier": {
- "version": "2.3.0",
- "bundled": true,
- "requires": {
- "boxen": "1.2.1",
- "chalk": "2.1.0",
- "configstore": "3.1.1",
- "import-lazy": "2.1.0",
- "is-installed-globally": "0.1.0",
- "is-npm": "1.0.0",
- "latest-version": "3.1.0",
- "semver-diff": "2.1.0",
- "xdg-basedir": "3.0.0"
- },
- "dependencies": {
- "boxen": {
- "version": "1.2.1",
- "bundled": true,
- "requires": {
- "ansi-align": "2.0.0",
- "camelcase": "4.1.0",
- "chalk": "2.1.0",
- "cli-boxes": "1.0.0",
- "string-width": "2.1.1",
- "term-size": "1.2.0",
- "widest-line": "1.0.0"
- },
- "dependencies": {
- "ansi-align": {
- "version": "2.0.0",
- "bundled": true,
- "requires": {
- "string-width": "2.1.1"
- }
- },
- "camelcase": {
- "version": "4.1.0",
- "bundled": true
- },
- "cli-boxes": {
- "version": "1.0.0",
- "bundled": true
- },
- "string-width": {
- "version": "2.1.1",
- "bundled": true,
- "requires": {
- "is-fullwidth-code-point": "2.0.0",
- "strip-ansi": "4.0.0"
- },
- "dependencies": {
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- },
- "term-size": {
- "version": "1.2.0",
- "bundled": true,
- "requires": {
- "execa": "0.7.0"
- },
- "dependencies": {
- "execa": {
- "version": "0.7.0",
- "bundled": true,
- "requires": {
- "cross-spawn": "5.1.0",
- "get-stream": "3.0.0",
- "is-stream": "1.1.0",
- "npm-run-path": "2.0.2",
- "p-finally": "1.0.0",
- "signal-exit": "3.0.2",
- "strip-eof": "1.0.0"
- },
- "dependencies": {
- "cross-spawn": {
- "version": "5.1.0",
- "bundled": true,
- "requires": {
- "lru-cache": "4.1.1",
- "shebang-command": "1.2.0",
- "which": "1.3.0"
- },
- "dependencies": {
- "shebang-command": {
- "version": "1.2.0",
- "bundled": true,
- "requires": {
- "shebang-regex": "1.0.0"
- },
- "dependencies": {
- "shebang-regex": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "get-stream": {
- "version": "3.0.0",
- "bundled": true
- },
- "is-stream": {
- "version": "1.1.0",
- "bundled": true
- },
- "npm-run-path": {
- "version": "2.0.2",
- "bundled": true,
- "requires": {
- "path-key": "2.0.1"
- },
- "dependencies": {
- "path-key": {
- "version": "2.0.1",
- "bundled": true
- }
- }
- },
- "p-finally": {
- "version": "1.0.0",
- "bundled": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "bundled": true
- },
- "strip-eof": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "widest-line": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "string-width": "1.0.2"
- },
- "dependencies": {
- "string-width": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- },
- "dependencies": {
- "code-point-at": {
- "version": "1.1.0",
- "bundled": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "number-is-nan": "1.0.1"
- },
- "dependencies": {
- "number-is-nan": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "ansi-regex": "2.1.1"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "bundled": true
- }
- }
- }
- }
- }
- }
- }
- }
- },
- "chalk": {
- "version": "2.1.0",
- "bundled": true,
- "requires": {
- "ansi-styles": "3.2.0",
- "escape-string-regexp": "1.0.5",
- "supports-color": "4.4.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.0",
- "bundled": true,
- "requires": {
- "color-convert": "1.9.0"
- },
- "dependencies": {
- "color-convert": {
- "version": "1.9.0",
- "bundled": true,
- "requires": {
- "color-name": "1.1.3"
- },
- "dependencies": {
- "color-name": {
- "version": "1.1.3",
- "bundled": true
- }
- }
- }
- }
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "bundled": true
- },
- "supports-color": {
- "version": "4.4.0",
- "bundled": true,
- "requires": {
- "has-flag": "2.0.0"
- },
- "dependencies": {
- "has-flag": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "configstore": {
- "version": "3.1.1",
- "bundled": true,
- "requires": {
- "dot-prop": "4.2.0",
- "graceful-fs": "4.1.11",
- "make-dir": "1.0.0",
- "unique-string": "1.0.0",
- "write-file-atomic": "2.3.0",
- "xdg-basedir": "3.0.0"
- },
- "dependencies": {
- "dot-prop": {
- "version": "4.2.0",
- "bundled": true,
- "requires": {
- "is-obj": "1.0.1"
- },
- "dependencies": {
- "is-obj": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- },
- "make-dir": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "pify": "2.3.0"
- },
- "dependencies": {
- "pify": {
- "version": "2.3.0",
- "bundled": true
- }
- }
- },
- "unique-string": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "crypto-random-string": "1.0.0"
- },
- "dependencies": {
- "crypto-random-string": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- }
- }
- },
- "import-lazy": {
- "version": "2.1.0",
- "bundled": true
- },
- "is-installed-globally": {
- "version": "0.1.0",
- "bundled": true,
- "requires": {
- "global-dirs": "0.1.0",
- "is-path-inside": "1.0.0"
- },
- "dependencies": {
- "global-dirs": {
- "version": "0.1.0",
- "bundled": true,
- "requires": {
- "ini": "1.3.5"
- }
- },
- "is-path-inside": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "path-is-inside": "1.0.2"
- }
- }
- }
- },
- "is-npm": {
- "version": "1.0.0",
- "bundled": true
- },
- "latest-version": {
- "version": "3.1.0",
- "bundled": true,
- "requires": {
- "package-json": "4.0.1"
- },
- "dependencies": {
- "package-json": {
- "version": "4.0.1",
- "bundled": true,
- "requires": {
- "got": "6.7.1",
- "registry-auth-token": "3.3.1",
- "registry-url": "3.1.0",
- "semver": "5.5.0"
- },
- "dependencies": {
- "got": {
- "version": "6.7.1",
- "bundled": true,
- "requires": {
- "create-error-class": "3.0.2",
- "duplexer3": "0.1.4",
- "get-stream": "3.0.0",
- "is-redirect": "1.0.0",
- "is-retry-allowed": "1.1.0",
- "is-stream": "1.1.0",
- "lowercase-keys": "1.0.0",
- "safe-buffer": "5.1.1",
- "timed-out": "4.0.1",
- "unzip-response": "2.0.1",
- "url-parse-lax": "1.0.0"
- },
- "dependencies": {
- "create-error-class": {
- "version": "3.0.2",
- "bundled": true,
- "requires": {
- "capture-stack-trace": "1.0.0"
- },
- "dependencies": {
- "capture-stack-trace": {
- "version": "1.0.0",
- "bundled": true
- }
- }
- },
- "duplexer3": {
- "version": "0.1.4",
- "bundled": true
- },
- "get-stream": {
- "version": "3.0.0",
- "bundled": true
- },
- "is-redirect": {
- "version": "1.0.0",
- "bundled": true
- },
- "is-retry-allowed": {
- "version": "1.1.0",
- "bundled": true
- },
- "is-stream": {
- "version": "1.1.0",
- "bundled": true
- },
- "lowercase-keys": {
- "version": "1.0.0",
- "bundled": true
- },
- "timed-out": {
- "version": "4.0.1",
- "bundled": true
- },
- "unzip-response": {
- "version": "2.0.1",
- "bundled": true
- },
- "url-parse-lax": {
- "version": "1.0.0",
- "bundled": true,
- "requires": {
- "prepend-http": "1.0.4"
- },
- "dependencies": {
- "prepend-http": {
- "version": "1.0.4",
- "bundled": true
- }
- }
- }
- }
- },
- "registry-auth-token": {
- "version": "3.3.1",
- "bundled": true,
- "requires": {
- "rc": "1.2.1",
- "safe-buffer": "5.1.1"
- },
- "dependencies": {
- "rc": {
- "version": "1.2.1",
- "bundled": true,
- "requires": {
- "deep-extend": "0.4.2",
- "ini": "1.3.5",
- "minimist": "1.2.0",
- "strip-json-comments": "2.0.1"
- },
- "dependencies": {
- "deep-extend": {
- "version": "0.4.2",
- "bundled": true
- },
- "minimist": {
- "version": "1.2.0",
- "bundled": true
- },
- "strip-json-comments": {
- "version": "2.0.1",
- "bundled": true
- }
- }
- }
- }
- },
- "registry-url": {
- "version": "3.1.0",
- "bundled": true,
- "requires": {
- "rc": "1.2.1"
- },
- "dependencies": {
- "rc": {
- "version": "1.2.1",
- "bundled": true,
- "requires": {
- "deep-extend": "0.4.2",
- "ini": "1.3.5",
- "minimist": "1.2.0",
- "strip-json-comments": "2.0.1"
- },
- "dependencies": {
- "deep-extend": {
- "version": "0.4.2",
- "bundled": true
- },
- "minimist": {
- "version": "1.2.0",
- "bundled": true
- },
- "strip-json-comments": {
- "version": "2.0.1",
- "bundled": true
- }
- }
- }
- }
- }
- }
- }
- }
- },
- "semver-diff": {
- "version": "2.1.0",
- "bundled": true,
- "requires": {
- "semver": "5.5.0"
- }
- },
- "xdg-basedir": {
- "version": "3.0.0",
- "bundled": true
- }
- }
- },
- "uuid": {
- "version": "3.2.1",
- "bundled": true
- },
- "validate-npm-package-license": {
- "version": "3.0.1",
- "bundled": true,
- "requires": {
- "spdx-correct": "1.0.2",
- "spdx-expression-parse": "1.0.4"
- },
- "dependencies": {
- "spdx-correct": {
- "version": "1.0.2",
- "bundled": true,
- "requires": {
- "spdx-license-ids": "1.2.2"
- },
- "dependencies": {
- "spdx-license-ids": {
- "version": "1.2.2",
- "bundled": true
- }
- }
- },
- "spdx-expression-parse": {
- "version": "1.0.4",
- "bundled": true
- }
- }
- },
- "validate-npm-package-name": {
- "version": "3.0.0",
- "bundled": true,
- "requires": {
- "builtins": "1.0.3"
- },
- "dependencies": {
- "builtins": {
- "version": "1.0.3",
- "bundled": true
- }
- }
- },
- "which": {
- "version": "1.3.0",
- "bundled": true,
- "requires": {
- "isexe": "2.0.0"
- },
- "dependencies": {
- "isexe": {
- "version": "2.0.0",
- "bundled": true
- }
- }
- },
- "worker-farm": {
- "version": "1.5.4",
- "bundled": true,
- "requires": {
- "errno": "0.1.7",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "errno": {
- "version": "0.1.7",
- "bundled": true,
- "requires": {
- "prr": "1.0.1"
- },
- "dependencies": {
- "prr": {
- "version": "1.0.1",
- "bundled": true
- }
- }
- },
- "xtend": {
- "version": "4.0.1",
- "bundled": true
- }
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "bundled": true
- },
- "write-file-atomic": {
- "version": "2.3.0",
- "bundled": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "imurmurhash": "0.1.4",
- "signal-exit": "3.0.2"
- },
- "dependencies": {
- "signal-exit": {
- "version": "3.0.2",
- "bundled": true
- }
- }
- }
- }
- },
- "npm-run-path": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
- "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
- "dev": true,
- "requires": {
- "path-key": "2.0.1"
- }
- },
- "npmlog": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
- "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
- "dev": true,
- "requires": {
- "are-we-there-yet": "1.1.4",
- "console-control-strings": "1.1.0",
- "gauge": "2.7.4",
- "set-blocking": "2.0.0"
- }
- },
- "nth-check": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz",
- "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=",
- "requires": {
- "boolbase": "1.0.0"
- }
- },
- "num2fraction": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz",
- "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=",
- "dev": true
- },
- "number-is-nan": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
- "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
- "dev": true
- },
- "nwmatcher": {
- "version": "1.4.4",
- "resolved": "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.4.4.tgz",
- "integrity": "sha512-3iuY4N5dhgMpCUrOVnuAdGrgxVqV2cJpM+XNccjR2DKOB1RUP0aA+wGXEiNziG/UKboFyGBIoKOaNlJxx8bciQ==",
- "optional": true
- },
- "oauth-sign": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
- "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM="
- },
- "object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
- },
- "object-component": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz",
- "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=",
- "dev": true
- },
- "object-copy": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
- "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
- "dev": true,
- "requires": {
- "copy-descriptor": "0.1.1",
- "define-property": "0.2.5",
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "0.1.6"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "0.1.6",
- "is-data-descriptor": "0.1.4",
- "kind-of": "5.1.0"
- },
- "dependencies": {
- "kind-of": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
- "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
- "dev": true
- }
- }
- }
- }
- },
- "object-hash": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.0.tgz",
- "integrity": "sha512-05KzQ70lSeGSrZJQXE5wNDiTkBJDlUT/myi6RX9dVIvz7a7Qh4oH93BQdiPMn27nldYvVQCKMUaM83AfizZlsQ=="
- },
- "object-visit": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
- "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
- "dev": true,
- "requires": {
- "isobject": "3.0.1"
- },
- "dependencies": {
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "object.omit": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
- "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=",
- "dev": true,
- "requires": {
- "for-own": "0.1.5",
- "is-extendable": "0.1.1"
- }
- },
- "object.pick": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
- "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
- "dev": true,
- "requires": {
- "isobject": "3.0.1"
- },
- "dependencies": {
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
- "requires": {
- "ee-first": "1.1.1"
- }
- },
- "once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "requires": {
- "wrappy": "1.0.2"
- }
- },
- "onetime": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
- "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
- "requires": {
- "mimic-fn": "1.2.0"
- }
- },
- "optimist": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
- "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
- "dev": true,
- "requires": {
- "minimist": "0.0.8",
- "wordwrap": "0.0.3"
- },
- "dependencies": {
- "wordwrap": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
- "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=",
- "dev": true
- }
- }
- },
- "optionator": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz",
- "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=",
- "requires": {
- "deep-is": "0.1.3",
- "fast-levenshtein": "2.0.6",
- "levn": "0.3.0",
- "prelude-ls": "1.1.2",
- "type-check": "0.3.2",
- "wordwrap": "1.0.0"
- }
- },
- "options": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz",
- "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=",
- "dev": true
- },
- "os-browserify": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
- "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
- "dev": true
- },
- "os-homedir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
- "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M="
- },
- "os-locale": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz",
- "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==",
- "dev": true,
- "requires": {
- "execa": "0.7.0",
- "lcid": "1.0.0",
- "mem": "1.1.0"
- },
- "dependencies": {
- "execa": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
- "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
- "dev": true,
- "requires": {
- "cross-spawn": "5.1.0",
- "get-stream": "3.0.0",
- "is-stream": "1.1.0",
- "npm-run-path": "2.0.2",
- "p-finally": "1.0.0",
- "signal-exit": "3.0.2",
- "strip-eof": "1.0.0"
- }
- }
- }
- },
- "os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ="
- },
- "osenv": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
- "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
- "dev": true,
- "requires": {
- "os-homedir": "1.0.2",
- "os-tmpdir": "1.0.2"
- }
- },
- "p-finally": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
- "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
- "dev": true
- },
- "p-limit": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz",
- "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==",
- "dev": true,
- "requires": {
- "p-try": "1.0.0"
- }
- },
- "p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "requires": {
- "p-limit": "1.2.0"
- }
- },
- "p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true
- },
- "package-json": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz",
- "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=",
- "dev": true,
- "requires": {
- "got": "6.7.1",
- "registry-auth-token": "3.3.2",
- "registry-url": "3.1.0",
- "semver": "5.5.0"
- }
- },
- "pako": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz",
- "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==",
- "dev": true
- },
- "parallel-transform": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz",
- "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=",
- "dev": true,
- "requires": {
- "cyclist": "0.2.2",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "param-case": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz",
- "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=",
- "dev": true,
- "requires": {
- "no-case": "2.3.2"
- }
- },
- "parse-asn1": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz",
- "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=",
- "dev": true,
- "requires": {
- "asn1.js": "4.10.1",
- "browserify-aes": "1.1.1",
- "create-hash": "1.1.3",
- "evp_bytestokey": "1.0.3",
- "pbkdf2": "3.0.14"
- }
- },
- "parse-github-repo-url": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz",
- "integrity": "sha1-nn2LslKmy2ukJZUGC3v23z28H1A=",
- "dev": true
- },
- "parse-glob": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz",
- "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=",
- "dev": true,
- "requires": {
- "glob-base": "0.3.0",
- "is-dotfile": "1.0.3",
- "is-extglob": "1.0.0",
- "is-glob": "2.0.1"
- }
- },
- "parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
- "dev": true,
- "requires": {
- "error-ex": "1.3.1",
- "json-parse-better-errors": "1.0.1"
- }
- },
- "parse-passwd": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
- "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY="
- },
- "parse5": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz",
- "integrity": "sha1-m387DeMr543CQBsXVzzK8Pb1nZQ=",
- "optional": true
- },
- "parsejson": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/parsejson/-/parsejson-0.0.3.tgz",
- "integrity": "sha1-q343WfIJ7OmUN5c/fQ8fZK4OZKs=",
- "dev": true,
- "requires": {
- "better-assert": "1.0.2"
- }
- },
- "parseqs": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz",
- "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=",
- "dev": true,
- "requires": {
- "better-assert": "1.0.2"
- }
- },
- "parseuri": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz",
- "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=",
- "dev": true,
- "requires": {
- "better-assert": "1.0.2"
- }
- },
- "parseurl": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
- "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M="
- },
- "pascalcase": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
- "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
- "dev": true
- },
- "path-browserify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz",
- "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=",
- "dev": true
- },
- "path-dirname": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
- "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=",
- "dev": true
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
- },
- "path-is-inside": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
- "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
- "dev": true
- },
- "path-key": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
- "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
- "dev": true
- },
- "path-parse": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
- "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME="
- },
- "path-to-regexp": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
- "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
- },
- "path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "dev": true,
- "requires": {
- "pify": "3.0.0"
- }
- },
- "pbkdf2": {
- "version": "3.0.14",
- "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz",
- "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==",
- "dev": true,
- "requires": {
- "create-hash": "1.1.3",
- "create-hmac": "1.1.6",
- "ripemd160": "2.0.1",
- "safe-buffer": "5.1.1",
- "sha.js": "2.4.11"
- }
- },
- "pend": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
- "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
- "dev": true
- },
- "performance-now": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
- "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
- },
- "phantomjs-prebuilt": {
- "version": "2.1.16",
- "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz",
- "integrity": "sha1-79ISpKOWbTZHaE6ouniFSb4q7+8=",
- "dev": true,
- "requires": {
- "es6-promise": "4.2.4",
- "extract-zip": "1.6.6",
- "fs-extra": "1.0.0",
- "hasha": "2.2.0",
- "kew": "0.7.0",
- "progress": "1.1.8",
- "request": "2.85.0",
- "request-progress": "2.0.1",
- "which": "1.3.0"
- },
- "dependencies": {
- "progress": {
- "version": "1.1.8",
- "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz",
- "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=",
- "dev": true
- }
- }
- },
- "pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "dev": true
- },
- "pinkie": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
- "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
- "dev": true
- },
- "pinkie-promise": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
- "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
- "dev": true,
- "requires": {
- "pinkie": "2.0.4"
- }
- },
- "pkg-dir": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
- "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=",
- "dev": true,
- "requires": {
- "find-up": "2.1.0"
- }
- },
- "pluralize": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz",
- "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==",
- "dev": true
- },
- "posix-character-classes": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
- "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
- "dev": true
- },
- "postcss": {
- "version": "5.2.18",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz",
- "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==",
- "dev": true,
- "requires": {
- "chalk": "1.1.3",
- "js-base64": "2.4.3",
- "source-map": "0.5.7",
- "supports-color": "3.2.3"
- },
- "dependencies": {
- "has-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
- "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- },
- "supports-color": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
- "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
- "dev": true,
- "requires": {
- "has-flag": "1.0.0"
- }
- }
- }
- },
- "postcss-calc": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-5.3.1.tgz",
- "integrity": "sha1-d7rnypKK2FcW4v2kLyYb98HWW14=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18",
- "postcss-message-helpers": "2.0.0",
- "reduce-css-calc": "1.3.0"
- }
- },
- "postcss-colormin": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-2.2.2.tgz",
- "integrity": "sha1-ZjFBfV8OkJo9fsJrJMio0eT5bks=",
- "dev": true,
- "requires": {
- "colormin": "1.1.2",
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-convert-values": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz",
- "integrity": "sha1-u9hZPFwf0uPRwyK7kl3K6Nrk1i0=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-discard-comments": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz",
- "integrity": "sha1-vv6J+v1bPazlzM5Rt2uBUUvgDj0=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18"
- }
- },
- "postcss-discard-duplicates": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz",
- "integrity": "sha1-uavye4isGIFYpesSq8riAmO5GTI=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18"
- }
- },
- "postcss-discard-empty": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz",
- "integrity": "sha1-0rS9nVztXr2Nyt52QMfXzX9PkrU=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18"
- }
- },
- "postcss-discard-overridden": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz",
- "integrity": "sha1-ix6vVU9ob7KIzYdMVWZ7CqNmjVg=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18"
- }
- },
- "postcss-discard-unused": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz",
- "integrity": "sha1-vOMLLMWR/8Y0Mitfs0ZLbZNPRDM=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18",
- "uniqs": "2.0.0"
- }
- },
- "postcss-filter-plugins": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz",
- "integrity": "sha1-bYWGJTTXNaxCDkqFgG4fXUKG2Ew=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18",
- "uniqid": "4.1.1"
- }
- },
- "postcss-merge-idents": {
- "version": "2.1.7",
- "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz",
- "integrity": "sha1-TFUwMTwI4dWzu/PSu8dH4njuonA=",
- "dev": true,
- "requires": {
- "has": "1.0.1",
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-merge-longhand": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz",
- "integrity": "sha1-I9kM0Sewp3mUkVMyc5A0oaTz1lg=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18"
- }
- },
- "postcss-merge-rules": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz",
- "integrity": "sha1-0d9d+qexrMO+VT8OnhDofGG19yE=",
- "dev": true,
- "requires": {
- "browserslist": "1.7.7",
- "caniuse-api": "1.6.1",
- "postcss": "5.2.18",
- "postcss-selector-parser": "2.2.3",
- "vendors": "1.0.1"
- },
- "dependencies": {
- "browserslist": {
- "version": "1.7.7",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz",
- "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=",
- "dev": true,
- "requires": {
- "caniuse-db": "1.0.30000820",
- "electron-to-chromium": "1.3.40"
- }
- }
- }
- },
- "postcss-message-helpers": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz",
- "integrity": "sha1-pPL0+rbk/gAvCu0ABHjN9S+bpg4=",
- "dev": true
- },
- "postcss-minify-font-values": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz",
- "integrity": "sha1-S1jttWZB66fIR0qzUmyv17vey2k=",
- "dev": true,
- "requires": {
- "object-assign": "4.1.1",
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-minify-gradients": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz",
- "integrity": "sha1-Xb2hE3NwP4PPtKPqOIHY11/15uE=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-minify-params": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz",
- "integrity": "sha1-rSzgcTc7lDs9kwo/pZo1jCjW8fM=",
- "dev": true,
- "requires": {
- "alphanum-sort": "1.0.2",
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0",
- "uniqs": "2.0.0"
- }
- },
- "postcss-minify-selectors": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz",
- "integrity": "sha1-ssapjAByz5G5MtGkllCBFDEXNb8=",
- "dev": true,
- "requires": {
- "alphanum-sort": "1.0.2",
- "has": "1.0.1",
- "postcss": "5.2.18",
- "postcss-selector-parser": "2.2.3"
- }
- },
- "postcss-modules-extract-imports": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz",
- "integrity": "sha1-thTJcgvmgW6u41+zpfqh26agXds=",
- "dev": true,
- "requires": {
- "postcss": "6.0.21"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "postcss": {
- "version": "6.0.21",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz",
- "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==",
- "dev": true,
- "requires": {
- "chalk": "2.3.2",
- "source-map": "0.6.1",
- "supports-color": "5.3.0"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "postcss-modules-local-by-default": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz",
- "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=",
- "dev": true,
- "requires": {
- "css-selector-tokenizer": "0.7.0",
- "postcss": "6.0.21"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "css-selector-tokenizer": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz",
- "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=",
- "dev": true,
- "requires": {
- "cssesc": "0.1.0",
- "fastparse": "1.1.1",
- "regexpu-core": "1.0.0"
- }
- },
- "postcss": {
- "version": "6.0.21",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz",
- "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==",
- "dev": true,
- "requires": {
- "chalk": "2.3.2",
- "source-map": "0.6.1",
- "supports-color": "5.3.0"
- }
- },
- "regexpu-core": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz",
- "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=",
- "dev": true,
- "requires": {
- "regenerate": "1.3.3",
- "regjsgen": "0.2.0",
- "regjsparser": "0.1.5"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "postcss-modules-scope": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz",
- "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=",
- "dev": true,
- "requires": {
- "css-selector-tokenizer": "0.7.0",
- "postcss": "6.0.21"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "css-selector-tokenizer": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz",
- "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=",
- "dev": true,
- "requires": {
- "cssesc": "0.1.0",
- "fastparse": "1.1.1",
- "regexpu-core": "1.0.0"
- }
- },
- "postcss": {
- "version": "6.0.21",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz",
- "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==",
- "dev": true,
- "requires": {
- "chalk": "2.3.2",
- "source-map": "0.6.1",
- "supports-color": "5.3.0"
- }
- },
- "regexpu-core": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz",
- "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=",
- "dev": true,
- "requires": {
- "regenerate": "1.3.3",
- "regjsgen": "0.2.0",
- "regjsparser": "0.1.5"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "postcss-modules-values": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz",
- "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=",
- "dev": true,
- "requires": {
- "icss-replace-symbols": "1.1.0",
- "postcss": "6.0.21"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "postcss": {
- "version": "6.0.21",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz",
- "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==",
- "dev": true,
- "requires": {
- "chalk": "2.3.2",
- "source-map": "0.6.1",
- "supports-color": "5.3.0"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "postcss-normalize-charset": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz",
- "integrity": "sha1-757nEhLX/nWceO0WL2HtYrXLk/E=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18"
- }
- },
- "postcss-normalize-url": {
- "version": "3.0.8",
- "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz",
- "integrity": "sha1-EI90s/L82viRov+j6kWSJ5/HgiI=",
- "dev": true,
- "requires": {
- "is-absolute-url": "2.1.0",
- "normalize-url": "1.9.1",
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-ordered-values": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz",
- "integrity": "sha1-7sbCpntsQSqNsgQud/6NpD+VwR0=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-reduce-idents": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz",
- "integrity": "sha1-wsbSDMlYKE9qv75j92Cb9AkFmtM=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-reduce-initial": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz",
- "integrity": "sha1-aPgGlfBF0IJjqHmtJA343WT2ROo=",
- "dev": true,
- "requires": {
- "postcss": "5.2.18"
- }
- },
- "postcss-reduce-transforms": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz",
- "integrity": "sha1-/3b02CEkN7McKYpC0uFEQCV3GuE=",
- "dev": true,
- "requires": {
- "has": "1.0.1",
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0"
- }
- },
- "postcss-selector-parser": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz",
- "integrity": "sha1-+UN3iGBsPJrO4W/+jYsWKX8nu5A=",
- "dev": true,
- "requires": {
- "flatten": "1.0.2",
- "indexes-of": "1.0.1",
- "uniq": "1.0.1"
- }
- },
- "postcss-svgo": {
- "version": "2.1.6",
- "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-2.1.6.tgz",
- "integrity": "sha1-tt8YqmE7Zm4TPwittSGcJoSsEI0=",
- "dev": true,
- "requires": {
- "is-svg": "2.1.0",
- "postcss": "5.2.18",
- "postcss-value-parser": "3.3.0",
- "svgo": "0.7.2"
- }
- },
- "postcss-unique-selectors": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz",
- "integrity": "sha1-mB1X0p3csz57Hf4f1DuGSfkzyh0=",
- "dev": true,
- "requires": {
- "alphanum-sort": "1.0.2",
- "postcss": "5.2.18",
- "uniqs": "2.0.0"
- }
- },
- "postcss-value-parser": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz",
- "integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU=",
- "dev": true
- },
- "postcss-zindex": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-2.2.0.tgz",
- "integrity": "sha1-0hCd3AVbka9n/EyzsCWUZjnSryI=",
- "dev": true,
- "requires": {
- "has": "1.0.1",
- "postcss": "5.2.18",
- "uniqs": "2.0.0"
- }
- },
- "prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ="
- },
- "prepend-http": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
- "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=",
- "dev": true
- },
- "preserve": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz",
- "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=",
- "dev": true
- },
- "pretty-bytes": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-4.0.2.tgz",
- "integrity": "sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk=",
- "dev": true
- },
- "pretty-error": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz",
- "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=",
- "dev": true,
- "requires": {
- "renderkid": "2.0.1",
- "utila": "0.4.0"
- }
- },
- "print-message": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/print-message/-/print-message-2.1.0.tgz",
- "integrity": "sha1-tViO0IsOG/d6x7y1y3gASvr5qJE=",
- "requires": {
- "chalk": "1.1.1"
- },
- "dependencies": {
- "chalk": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.1.tgz",
- "integrity": "sha1-UJr7ZwZudJn36zU1x3RFdyri0Bk=",
- "requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
- }
- }
- }
- },
- "private": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
- "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
- "dev": true
- },
- "process": {
- "version": "0.11.10",
- "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
- "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
- "dev": true
- },
- "process-nextick-args": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
- "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
- "dev": true
- },
- "progress": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz",
- "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=",
- "dev": true
- },
- "promise-inflight": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
- "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=",
- "dev": true
- },
- "proto-list": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz",
- "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=",
- "dev": true
- },
- "proxy-addr": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz",
- "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==",
- "requires": {
- "forwarded": "0.1.2",
- "ipaddr.js": "1.6.0"
- }
- },
- "prr": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz",
- "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=",
- "dev": true
- },
- "pseudomap": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
- "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM="
- },
- "public-encrypt": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz",
- "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=",
- "dev": true,
- "requires": {
- "bn.js": "4.11.8",
- "browserify-rsa": "4.0.1",
- "create-hash": "1.1.3",
- "parse-asn1": "5.1.0",
- "randombytes": "2.0.6"
- }
- },
- "pump": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
- "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
- "dev": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "once": "1.4.0"
- }
- },
- "pumpify": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.4.0.tgz",
- "integrity": "sha512-2kmNR9ry+Pf45opRVirpNuIFotsxUGLaYqxIwuR77AYrYRMuFCz9eryHBS52L360O+NcR383CL4QYlMKPq4zYA==",
- "dev": true,
- "requires": {
- "duplexify": "3.5.4",
- "inherits": "2.0.3",
- "pump": "2.0.1"
- }
- },
- "punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
- },
- "q": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
- "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=",
- "dev": true
- },
- "qjobs": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz",
- "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==",
- "dev": true
- },
- "qs": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz",
- "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A=="
- },
- "query-string": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz",
- "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=",
- "dev": true,
- "requires": {
- "object-assign": "4.1.1",
- "strict-uri-encode": "1.1.0"
- }
- },
- "querystring": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
- "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
- "dev": true
- },
- "querystring-es3": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
- "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
- "dev": true
- },
- "querystringify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-1.0.0.tgz",
- "integrity": "sha1-YoYkIRLFtxL6ZU5SZlK/ahP/Bcs="
- },
- "quick-lru": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz",
- "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=",
- "dev": true
- },
- "randomatic": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz",
- "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==",
- "dev": true,
- "requires": {
- "is-number": "3.0.0",
- "kind-of": "4.0.0"
- },
- "dependencies": {
- "is-number": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
- "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "kind-of": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
- "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "randombytes": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz",
- "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- },
- "randomfill": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
- "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
- "dev": true,
- "requires": {
- "randombytes": "2.0.6",
- "safe-buffer": "5.1.1"
- }
- },
- "range-parser": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz",
- "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4="
- },
- "raw-body": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz",
- "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=",
- "requires": {
- "bytes": "3.0.0",
- "http-errors": "1.6.2",
- "iconv-lite": "0.4.19",
- "unpipe": "1.0.0"
- }
- },
- "rc": {
- "version": "1.2.6",
- "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.6.tgz",
- "integrity": "sha1-6xiYnG1PTxYsOZ953dKfODVWgJI=",
- "dev": true,
- "requires": {
- "deep-extend": "0.4.2",
- "ini": "1.3.5",
- "minimist": "1.2.0",
- "strip-json-comments": "2.0.1"
- },
- "dependencies": {
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- }
- }
- },
- "read-cmd-shim": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-1.0.1.tgz",
- "integrity": "sha1-LV0Vd4ajfAVdIgd8MsU/gynpHHs=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11"
- }
- },
- "read-pkg": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
- "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
- "dev": true,
- "requires": {
- "load-json-file": "4.0.0",
- "normalize-package-data": "2.4.0",
- "path-type": "3.0.0"
- }
- },
- "read-pkg-up": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
- "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
- "dev": true,
- "requires": {
- "find-up": "1.1.2",
- "read-pkg": "1.1.0"
- },
- "dependencies": {
- "find-up": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
- "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
- "dev": true,
- "requires": {
- "path-exists": "2.1.0",
- "pinkie-promise": "2.0.1"
- }
- },
- "load-json-file": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
- "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "parse-json": "2.2.0",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1",
- "strip-bom": "2.0.0"
- }
- },
- "parse-json": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
- "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
- "dev": true,
- "requires": {
- "error-ex": "1.3.1"
- }
- },
- "path-exists": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
- "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
- "dev": true,
- "requires": {
- "pinkie-promise": "2.0.1"
- }
- },
- "path-type": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
- "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1"
- }
- },
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- },
- "read-pkg": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
- "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
- "dev": true,
- "requires": {
- "load-json-file": "1.1.0",
- "normalize-package-data": "2.4.0",
- "path-type": "1.1.0"
- }
- },
- "strip-bom": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
- "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
- "dev": true,
- "requires": {
- "is-utf8": "0.2.1"
- }
- }
- }
- },
- "readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "0.0.1",
- "string_decoder": "0.10.31"
- }
- },
- "readdirp": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
- "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "minimatch": "3.0.4",
- "readable-stream": "2.3.5",
- "set-immediate-shim": "1.0.1"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "rechoir": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
- "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
- "requires": {
- "resolve": "1.6.0"
- }
- },
- "redent": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz",
- "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=",
- "dev": true,
- "requires": {
- "indent-string": "3.2.0",
- "strip-indent": "2.0.0"
- }
- },
- "reduce-css-calc": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz",
- "integrity": "sha1-dHyRTgSWFKTJz7umKYca0dKSdxY=",
- "dev": true,
- "requires": {
- "balanced-match": "0.4.2",
- "math-expression-evaluator": "1.2.17",
- "reduce-function-call": "1.0.2"
- },
- "dependencies": {
- "balanced-match": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz",
- "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=",
- "dev": true
- }
- }
- },
- "reduce-function-call": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.2.tgz",
- "integrity": "sha1-WiAL+S4ON3UXUv5FsKszD9S2vpk=",
- "dev": true,
- "requires": {
- "balanced-match": "0.4.2"
- },
- "dependencies": {
- "balanced-match": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz",
- "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=",
- "dev": true
- }
- }
- },
- "regenerate": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz",
- "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==",
- "dev": true
- },
- "regenerator-runtime": {
- "version": "0.11.1",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
- "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==",
- "dev": true
- },
- "regenerator-transform": {
- "version": "0.10.1",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz",
- "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0",
- "private": "0.1.8"
- },
- "dependencies": {
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.3",
- "regenerator-runtime": "0.11.1"
- }
- },
- "core-js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz",
- "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=",
- "dev": true
- }
- }
- },
- "regex-cache": {
- "version": "0.4.4",
- "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz",
- "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==",
- "dev": true,
- "requires": {
- "is-equal-shallow": "0.1.3"
- }
- },
- "regex-not": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
- "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
- "dev": true,
- "requires": {
- "extend-shallow": "3.0.2",
- "safe-regex": "1.1.0"
- }
- },
- "regexpp": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.0.1.tgz",
- "integrity": "sha512-8Ph721maXiOYSLtaDGKVmDn5wdsNaF6Px85qFNeMPQq0r8K5Y10tgP6YuR65Ws35n4DvzFcCxEnRNBIXQunzLw==",
- "dev": true
- },
- "regexpu-core": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz",
- "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=",
- "dev": true,
- "requires": {
- "regenerate": "1.3.3",
- "regjsgen": "0.2.0",
- "regjsparser": "0.1.5"
- }
- },
- "registry-auth-token": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz",
- "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==",
- "dev": true,
- "requires": {
- "rc": "1.2.6",
- "safe-buffer": "5.1.1"
- }
- },
- "registry-url": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz",
- "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=",
- "dev": true,
- "requires": {
- "rc": "1.2.6"
- }
- },
- "regjsgen": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
- "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=",
- "dev": true
- },
- "regjsparser": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz",
- "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=",
- "dev": true,
- "requires": {
- "jsesc": "0.5.0"
- },
- "dependencies": {
- "jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
- "dev": true
- }
- }
- },
- "relateurl": {
- "version": "0.2.7",
- "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz",
- "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=",
- "dev": true
- },
- "remove-trailing-separator": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
- "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
- "dev": true
- },
- "renderkid": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.1.tgz",
- "integrity": "sha1-iYyr/Ivt5Le5ETWj/9Mj5YwNsxk=",
- "dev": true,
- "requires": {
- "css-select": "1.2.0",
- "dom-converter": "0.1.4",
- "htmlparser2": "3.3.0",
- "strip-ansi": "3.0.1",
- "utila": "0.3.3"
- },
- "dependencies": {
- "domhandler": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz",
- "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=",
- "dev": true,
- "requires": {
- "domelementtype": "1.3.0"
- }
- },
- "domutils": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz",
- "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=",
- "dev": true,
- "requires": {
- "domelementtype": "1.3.0"
- }
- },
- "htmlparser2": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz",
- "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=",
- "dev": true,
- "requires": {
- "domelementtype": "1.3.0",
- "domhandler": "2.1.0",
- "domutils": "1.1.6",
- "readable-stream": "1.0.34"
- }
- },
- "readable-stream": {
- "version": "1.0.34",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
- "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "0.0.1",
- "string_decoder": "0.10.31"
- }
- },
- "utila": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz",
- "integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY=",
- "dev": true
- }
- }
- },
- "repeat-element": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz",
- "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=",
- "dev": true
- },
- "repeat-string": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
- "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
- "dev": true
- },
- "repeating": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
- "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
- "dev": true,
- "requires": {
- "is-finite": "1.0.2"
- }
- },
- "request": {
- "version": "2.85.0",
- "resolved": "https://registry.npmjs.org/request/-/request-2.85.0.tgz",
- "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==",
- "requires": {
- "aws-sign2": "0.7.0",
- "aws4": "1.6.0",
- "caseless": "0.12.0",
- "combined-stream": "1.0.6",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.3.2",
- "har-validator": "5.0.3",
- "hawk": "6.0.2",
- "http-signature": "1.2.0",
- "is-typedarray": "1.0.0",
- "isstream": "0.1.2",
- "json-stringify-safe": "5.0.1",
- "mime-types": "2.1.18",
- "oauth-sign": "0.8.2",
- "performance-now": "2.1.0",
- "qs": "6.5.1",
- "safe-buffer": "5.1.1",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.4",
- "tunnel-agent": "0.6.0",
- "uuid": "3.2.1"
- }
- },
- "request-progress": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz",
- "integrity": "sha1-XTa7V5YcZzqlt4jbyBQf3yO0Tgg=",
- "dev": true,
- "requires": {
- "throttleit": "1.0.0"
- }
- },
- "require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
- "dev": true
- },
- "require-main-filename": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
- "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=",
- "dev": true
- },
- "require-uncached": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz",
- "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=",
- "dev": true,
- "requires": {
- "caller-path": "0.1.0",
- "resolve-from": "1.0.1"
- }
- },
- "requires-port": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
- "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8="
- },
- "resolve": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.6.0.tgz",
- "integrity": "sha512-mw7JQNu5ExIkcw4LPih0owX/TZXjD/ZUF/ZQ/pDnkw3ZKhDcZZw5klmBlj6gVMwjQ3Pz5Jgu7F3d0jcDVuEWdw==",
- "requires": {
- "path-parse": "1.0.5"
- }
- },
- "resolve-dir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
- "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
- "requires": {
- "expand-tilde": "2.0.2",
- "global-modules": "1.0.0"
- }
- },
- "resolve-from": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz",
- "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=",
- "dev": true
- },
- "resolve-url": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
- "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
- "dev": true
- },
- "restore-cursor": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
- "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
- "requires": {
- "onetime": "2.0.1",
- "signal-exit": "3.0.2"
- }
- },
- "ret": {
- "version": "0.1.15",
- "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
- "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
- "dev": true
- },
- "right-align": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
- "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
- "dev": true,
- "requires": {
- "align-text": "0.1.4"
- }
- },
- "rimraf": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
- "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
- "dev": true,
- "requires": {
- "glob": "7.1.2"
- }
- },
- "ripemd160": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz",
- "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=",
- "dev": true,
- "requires": {
- "hash-base": "2.0.2",
- "inherits": "2.0.3"
- }
- },
- "run-async": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
- "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
- "requires": {
- "is-promise": "2.1.0"
- }
- },
- "run-queue": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
- "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=",
- "dev": true,
- "requires": {
- "aproba": "1.2.0"
- }
- },
- "rw": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz",
- "integrity": "sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q="
- },
- "rx-lite": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz",
- "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ="
- },
- "rx-lite-aggregates": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz",
- "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=",
- "requires": {
- "rx-lite": "4.0.8"
- }
- },
- "safe-buffer": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
- "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
- },
- "safe-regex": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
- "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
- "dev": true,
- "requires": {
- "ret": "0.1.15"
- }
- },
- "samsam": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/samsam/-/samsam-1.1.2.tgz",
- "integrity": "sha1-vsEf3IOp/aBjQBIQ5AF2wwJNFWc=",
- "dev": true
- },
- "sass-graph": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz",
- "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=",
- "dev": true,
- "requires": {
- "glob": "7.1.2",
- "lodash": "4.17.5",
- "scss-tokenizer": "0.2.3",
- "yargs": "7.1.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
- "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
- "dev": true
- },
- "cliui": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
- "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
- "dev": true,
- "requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wrap-ansi": "2.1.0"
- }
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "os-locale": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
- "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
- "dev": true,
- "requires": {
- "lcid": "1.0.0"
- }
- },
- "string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- },
- "which-module": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz",
- "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=",
- "dev": true
- },
- "yargs": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz",
- "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=",
- "dev": true,
- "requires": {
- "camelcase": "3.0.0",
- "cliui": "3.2.0",
- "decamelize": "1.2.0",
- "get-caller-file": "1.0.2",
- "os-locale": "1.4.0",
- "read-pkg-up": "1.0.1",
- "require-directory": "2.1.1",
- "require-main-filename": "1.0.1",
- "set-blocking": "2.0.0",
- "string-width": "1.0.2",
- "which-module": "1.0.0",
- "y18n": "3.2.1",
- "yargs-parser": "5.0.0"
- }
- },
- "yargs-parser": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz",
- "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=",
- "dev": true,
- "requires": {
- "camelcase": "3.0.0"
- }
- }
- }
- },
- "sass-loader": {
- "version": "6.0.7",
- "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-6.0.7.tgz",
- "integrity": "sha512-JoiyD00Yo1o61OJsoP2s2kb19L1/Y2p3QFcCdWdF6oomBGKVYuZyqHWemRBfQ2uGYsk+CH3eCguXNfpjzlcpaA==",
- "dev": true,
- "requires": {
- "clone-deep": "2.0.2",
- "loader-utils": "1.1.0",
- "lodash.tail": "4.1.1",
- "neo-async": "2.5.0",
- "pify": "3.0.0"
- }
- },
- "sax": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
- "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
- },
- "schema-utils": {
- "version": "0.4.5",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz",
- "integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==",
- "dev": true,
- "requires": {
- "ajv": "6.4.0",
- "ajv-keywords": "3.1.0"
- },
- "dependencies": {
- "ajv": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz",
- "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=",
- "dev": true,
- "requires": {
- "fast-deep-equal": "1.1.0",
- "fast-json-stable-stringify": "2.0.0",
- "json-schema-traverse": "0.3.1",
- "uri-js": "3.0.2"
- }
- },
- "ajv-keywords": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.1.0.tgz",
- "integrity": "sha1-rCsnk5xUPpXSwG5/f1wnvkqlQ74=",
- "dev": true
- }
- }
- },
- "scrollreveal": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/scrollreveal/-/scrollreveal-3.4.0.tgz",
- "integrity": "sha512-clyIvaRqSsuU8kn3kg/7JhBdLfw9knUccUbyoZCqtSDb870XOqT58CKpS9IMnqw8AwFvHiFVfyhU9XP/GpiY5w=="
- },
- "scss-tokenizer": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
- "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
- "dev": true,
- "requires": {
- "js-base64": "2.4.3",
- "source-map": "0.4.4"
- },
- "dependencies": {
- "source-map": {
- "version": "0.4.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
- "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
- "dev": true,
- "requires": {
- "amdefine": "1.0.1"
- }
- }
- }
- },
- "semver": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
- "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==",
- "dev": true
- },
- "semver-diff": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz",
- "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=",
- "dev": true,
- "requires": {
- "semver": "5.5.0"
- }
- },
- "send": {
- "version": "0.16.2",
- "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
- "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==",
- "requires": {
- "debug": "2.6.9",
- "depd": "1.1.2",
- "destroy": "1.0.4",
- "encodeurl": "1.0.2",
- "escape-html": "1.0.3",
- "etag": "1.8.1",
- "fresh": "0.5.2",
- "http-errors": "1.6.2",
- "mime": "1.4.1",
- "ms": "2.0.0",
- "on-finished": "2.3.0",
- "range-parser": "1.2.0",
- "statuses": "1.4.0"
- }
- },
- "serialize-javascript": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.4.0.tgz",
- "integrity": "sha1-fJWFFNtqwkQ6irwGLcn3iGp/YAU="
- },
- "serve-static": {
- "version": "1.13.2",
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz",
- "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==",
- "requires": {
- "encodeurl": "1.0.2",
- "escape-html": "1.0.3",
- "parseurl": "1.3.2",
- "send": "0.16.2"
- }
- },
- "serviceworker-cache-polyfill": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/serviceworker-cache-polyfill/-/serviceworker-cache-polyfill-4.0.0.tgz",
- "integrity": "sha1-3hnuc77yGrPAdAo3sz22JGS6ves=",
- "dev": true
- },
- "set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
- "dev": true
- },
- "set-immediate-shim": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
- "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
- "dev": true
- },
- "set-value": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz",
- "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==",
- "dev": true,
- "requires": {
- "extend-shallow": "2.0.1",
- "is-extendable": "0.1.1",
- "is-plain-object": "2.0.4",
- "split-string": "3.1.0"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "0.1.1"
- }
- }
- }
- },
- "setimmediate": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
- "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=",
- "dev": true
- },
- "setprototypeof": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
- "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ=="
- },
- "sha.js": {
- "version": "2.4.11",
- "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
- "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "safe-buffer": "5.1.1"
- }
- },
- "shallow-clone": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz",
- "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==",
- "dev": true,
- "requires": {
- "is-extendable": "0.1.1",
- "kind-of": "5.1.0",
- "mixin-object": "2.0.1"
- },
- "dependencies": {
- "kind-of": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
- "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
- "dev": true
- }
- }
- },
- "shebang-command": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
- "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
- "requires": {
- "shebang-regex": "1.0.0"
- }
- },
- "shebang-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
- "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM="
- },
- "shelljs": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.1.tgz",
- "integrity": "sha512-YA/iYtZpzFe5HyWVGrb02FjPxc4EMCfpoU/Phg9fQoyMC72u9598OUBrsU8IrtwAKG0tO8IYaqbaLIw+k3IRGA==",
- "requires": {
- "glob": "7.1.2",
- "interpret": "1.1.0",
- "rechoir": "0.6.2"
- }
- },
- "sigmund": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
- "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=",
- "dev": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
- "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0="
- },
- "sinon": {
- "version": "1.17.7",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-1.17.7.tgz",
- "integrity": "sha1-RUKk9JugxFwF6y6d2dID4rjv4L8=",
- "dev": true,
- "requires": {
- "formatio": "1.1.1",
- "lolex": "1.3.2",
- "samsam": "1.1.2",
- "util": "0.10.3"
- },
- "dependencies": {
- "lolex": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/lolex/-/lolex-1.3.2.tgz",
- "integrity": "sha1-fD2mL/yzDw9agKJWbKJORdigHzE=",
- "dev": true
- }
- }
- },
- "sinon-chai": {
- "version": "2.14.0",
- "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-2.14.0.tgz",
- "integrity": "sha512-9stIF1utB0ywNHNT7RgiXbdmen8QDCRsrTjw+G9TgKt1Yexjiv8TOWZ6WHsTPz57Yky3DIswZvEqX8fpuHNDtQ==",
- "dev": true
- },
- "slash": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
- "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
- "dev": true
- },
- "slice-ansi": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz",
- "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==",
- "dev": true,
- "requires": {
- "is-fullwidth-code-point": "2.0.0"
- }
- },
- "snapdragon": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
- "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
- "dev": true,
- "requires": {
- "base": "0.11.2",
- "debug": "2.6.9",
- "define-property": "0.2.5",
- "extend-shallow": "2.0.1",
- "map-cache": "0.2.2",
- "source-map": "0.5.7",
- "source-map-resolve": "0.5.1",
- "use": "3.1.0"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "0.1.6"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "0.1.1"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "0.1.6",
- "is-data-descriptor": "0.1.4",
- "kind-of": "5.1.0"
- }
- },
- "kind-of": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
- "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "snapdragon-node": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
- "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
- "dev": true,
- "requires": {
- "define-property": "1.0.0",
- "isobject": "3.0.1",
- "snapdragon-util": "3.0.1"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "1.0.2"
- }
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "snapdragon-util": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
- "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- }
- },
- "sntp": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz",
- "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==",
- "requires": {
- "hoek": "4.2.1"
- }
- },
- "socket.io": {
- "version": "1.7.3",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-1.7.3.tgz",
- "integrity": "sha1-uK+cq6AJSeVo42nxMn6pvp6iRhs=",
- "dev": true,
- "requires": {
- "debug": "2.3.3",
- "engine.io": "1.8.3",
- "has-binary": "0.1.7",
- "object-assign": "4.1.0",
- "socket.io-adapter": "0.5.0",
- "socket.io-client": "1.7.3",
- "socket.io-parser": "2.3.1"
- },
- "dependencies": {
- "debug": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
- "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
- "dev": true,
- "requires": {
- "ms": "0.7.2"
- }
- },
- "ms": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
- "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
- "dev": true
- },
- "object-assign": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz",
- "integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A=",
- "dev": true
- }
- }
- },
- "socket.io-adapter": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-0.5.0.tgz",
- "integrity": "sha1-y21LuL7IHhB4uZZ3+c7QBGBmu4s=",
- "dev": true,
- "requires": {
- "debug": "2.3.3",
- "socket.io-parser": "2.3.1"
- },
- "dependencies": {
- "debug": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
- "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
- "dev": true,
- "requires": {
- "ms": "0.7.2"
- }
- },
- "ms": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
- "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
- "dev": true
- }
- }
- },
- "socket.io-client": {
- "version": "1.7.3",
- "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.7.3.tgz",
- "integrity": "sha1-sw6GqhDV7zVGYBwJzeR2Xjgdo3c=",
- "dev": true,
- "requires": {
- "backo2": "1.0.2",
- "component-bind": "1.0.0",
- "component-emitter": "1.2.1",
- "debug": "2.3.3",
- "engine.io-client": "1.8.3",
- "has-binary": "0.1.7",
- "indexof": "0.0.1",
- "object-component": "0.0.3",
- "parseuri": "0.0.5",
- "socket.io-parser": "2.3.1",
- "to-array": "0.1.4"
- },
- "dependencies": {
- "component-emitter": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
- "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
- "dev": true
- },
- "debug": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
- "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
- "dev": true,
- "requires": {
- "ms": "0.7.2"
- }
- },
- "ms": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
- "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
- "dev": true
- }
- }
- },
- "socket.io-parser": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.3.1.tgz",
- "integrity": "sha1-3VMgJRA85Clpcya+/WQAX8/ltKA=",
- "dev": true,
- "requires": {
- "component-emitter": "1.1.2",
- "debug": "2.2.0",
- "isarray": "0.0.1",
- "json3": "3.3.2"
- },
- "dependencies": {
- "debug": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",
- "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
- "dev": true,
- "requires": {
- "ms": "0.7.1"
- }
- },
- "ms": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
- "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=",
- "dev": true
- }
- }
- },
- "sort-keys": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz",
- "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=",
- "dev": true,
- "requires": {
- "is-plain-obj": "1.1.0"
- }
- },
- "source-list-map": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-0.1.8.tgz",
- "integrity": "sha1-xVCyq1Qn9rPyH1r+rYjE9Vh7IQY=",
- "dev": true
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
- },
- "source-map-resolve": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz",
- "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==",
- "dev": true,
- "requires": {
- "atob": "2.0.3",
- "decode-uri-component": "0.2.0",
- "resolve-url": "0.2.1",
- "source-map-url": "0.4.0",
- "urix": "0.1.0"
- }
- },
- "source-map-support": {
- "version": "0.4.18",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
- "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
- "dev": true,
- "requires": {
- "source-map": "0.5.7"
- },
- "dependencies": {
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "source-map-url": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
- "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
- "dev": true
- },
- "spdx-correct": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz",
- "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==",
- "dev": true,
- "requires": {
- "spdx-expression-parse": "3.0.0",
- "spdx-license-ids": "3.0.0"
- }
- },
- "spdx-exceptions": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz",
- "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==",
- "dev": true
- },
- "spdx-expression-parse": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz",
- "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
- "dev": true,
- "requires": {
- "spdx-exceptions": "2.1.0",
- "spdx-license-ids": "3.0.0"
- }
- },
- "spdx-license-ids": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz",
- "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==",
- "dev": true
- },
- "split": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
- "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
- "dev": true,
- "requires": {
- "through": "2.3.8"
- }
- },
- "split-string": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
- "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
- "dev": true,
- "requires": {
- "extend-shallow": "3.0.2"
- }
- },
- "split2": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz",
- "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==",
- "dev": true,
- "requires": {
- "through2": "2.0.3"
- }
- },
- "sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw="
- },
- "sshpk": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz",
- "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=",
- "requires": {
- "asn1": "0.2.3",
- "assert-plus": "1.0.0",
- "bcrypt-pbkdf": "1.0.1",
- "dashdash": "1.14.1",
- "ecc-jsbn": "0.1.1",
- "getpass": "0.1.7",
- "jsbn": "0.1.1",
- "tweetnacl": "0.14.5"
- }
- },
- "ssri": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz",
- "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- },
- "static-extend": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
- "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
- "dev": true,
- "requires": {
- "define-property": "0.2.5",
- "object-copy": "0.1.0"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "0.1.6"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "0.1.6",
- "is-data-descriptor": "0.1.4",
- "kind-of": "5.1.0"
- }
- },
- "kind-of": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
- "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
- "dev": true
- }
- }
- },
- "statuses": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
- "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew=="
- },
- "stdout-stream": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz",
- "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=",
- "dev": true,
- "requires": {
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "stream-browserify": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz",
- "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3",
- "readable-stream": "2.3.5"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "stream-consume": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz",
- "integrity": "sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg=="
- },
- "stream-each": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.2.tgz",
- "integrity": "sha512-mc1dbFhGBxvTM3bIWmAAINbqiuAk9TATcfIQC8P+/+HJefgaiTlMn2dHvkX8qlI12KeYKSQ1Ua9RrIqrn1VPoA==",
- "dev": true,
- "requires": {
- "end-of-stream": "1.4.1",
- "stream-shift": "1.0.0"
- }
- },
- "stream-http": {
- "version": "2.8.1",
- "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.1.tgz",
- "integrity": "sha512-cQ0jo17BLca2r0GfRdZKYAGLU6JRoIWxqSOakUMuKOT6MOK7AAlE856L33QuDmAy/eeOrhLee3dZKX0Uadu93A==",
- "dev": true,
- "requires": {
- "builtin-status-codes": "3.0.0",
- "inherits": "2.0.3",
- "readable-stream": "2.3.5",
- "to-arraybuffer": "1.0.1",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "stream-shift": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz",
- "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=",
- "dev": true
- },
- "strict-uri-encode": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz",
- "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=",
- "dev": true
- },
- "string-width": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
- "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
- "requires": {
- "is-fullwidth-code-point": "2.0.0",
- "strip-ansi": "4.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
- "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg="
- },
- "strip-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
- "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
- "requires": {
- "ansi-regex": "3.0.0"
- }
- }
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
- },
- "stringstream": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",
- "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg="
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "requires": {
- "ansi-regex": "2.1.1"
- }
- },
- "strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
- "dev": true
- },
- "strip-eof": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
- "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
- "dev": true
- },
- "strip-indent": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz",
- "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=",
- "dev": true
- },
- "strip-json-comments": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
- "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
- "dev": true
- },
- "strong-log-transformer": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-1.0.6.tgz",
- "integrity": "sha1-9/uTdYpppXEUAYEnfuoMLrEwH6M=",
- "dev": true,
- "requires": {
- "byline": "5.0.0",
- "duplexer": "0.1.1",
- "minimist": "0.1.0",
- "moment": "2.21.0",
- "through": "2.3.8"
- },
- "dependencies": {
- "minimist": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.1.0.tgz",
- "integrity": "sha1-md9lelJXTCHJBXSX33QnkLK0wN4=",
- "dev": true
- }
- }
- },
- "stylus": {
- "version": "0.54.5",
- "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz",
- "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=",
- "dev": true,
- "requires": {
- "css-parse": "1.7.0",
- "debug": "2.6.9",
- "glob": "7.0.6",
- "mkdirp": "0.5.1",
- "sax": "0.5.8",
- "source-map": "0.1.43"
- },
- "dependencies": {
- "glob": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz",
- "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=",
- "dev": true,
- "requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
- }
- },
- "sax": {
- "version": "0.5.8",
- "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz",
- "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=",
- "dev": true
- },
- "source-map": {
- "version": "0.1.43",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
- "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=",
- "dev": true,
- "requires": {
- "amdefine": "1.0.1"
- }
- }
- }
- },
- "stylus-loader": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-2.5.1.tgz",
- "integrity": "sha1-1a2KfglYrcErhYHnuxabmmHVQhY=",
- "dev": true,
- "requires": {
- "loader-utils": "0.2.17",
- "lodash.clonedeep": "4.5.0",
- "when": "3.6.4"
- },
- "dependencies": {
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "loader-utils": {
- "version": "0.2.17",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
- "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
- "dev": true,
- "requires": {
- "big.js": "3.2.0",
- "emojis-list": "2.1.0",
- "json5": "0.5.1",
- "object-assign": "4.1.1"
- }
- }
- }
- },
- "supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
- },
- "svgo": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz",
- "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=",
- "dev": true,
- "requires": {
- "coa": "1.0.4",
- "colors": "1.1.2",
- "csso": "2.3.2",
- "js-yaml": "3.7.0",
- "mkdirp": "0.5.1",
- "sax": "1.2.4",
- "whet.extend": "0.9.9"
- }
- },
- "sw-precache": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/sw-precache/-/sw-precache-5.2.1.tgz",
- "integrity": "sha512-8FAy+BP/FXE+ILfiVTt+GQJ6UEf4CVHD9OfhzH0JX+3zoy2uFk7Vn9EfXASOtVmmIVbL3jE/W8Z66VgPSZcMhw==",
- "dev": true,
- "requires": {
- "dom-urls": "1.1.0",
- "es6-promise": "4.2.4",
- "glob": "7.1.2",
- "lodash.defaults": "4.2.0",
- "lodash.template": "4.4.0",
- "meow": "3.7.0",
- "mkdirp": "0.5.1",
- "pretty-bytes": "4.0.2",
- "sw-toolbox": "3.6.0",
- "update-notifier": "2.4.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
- "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
- "dev": true
- },
- "camelcase-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
- "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
- "dev": true,
- "requires": {
- "camelcase": "2.1.1",
- "map-obj": "1.0.1"
- }
- },
- "indent-string": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
- "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
- "dev": true,
- "requires": {
- "repeating": "2.0.1"
- }
- },
- "map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
- "dev": true
- },
- "meow": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
- "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
- "dev": true,
- "requires": {
- "camelcase-keys": "2.1.0",
- "decamelize": "1.2.0",
- "loud-rejection": "1.6.0",
- "map-obj": "1.0.1",
- "minimist": "1.2.0",
- "normalize-package-data": "2.4.0",
- "object-assign": "4.1.1",
- "read-pkg-up": "1.0.1",
- "redent": "1.0.0",
- "trim-newlines": "1.0.0"
- }
- },
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- },
- "redent": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
- "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
- "dev": true,
- "requires": {
- "indent-string": "2.1.0",
- "strip-indent": "1.0.1"
- }
- },
- "strip-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
- "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
- "dev": true,
- "requires": {
- "get-stdin": "4.0.1"
- }
- },
- "trim-newlines": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
- "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
- "dev": true
- }
- }
- },
- "sw-precache-webpack-plugin": {
- "version": "0.9.2",
- "resolved": "https://registry.npmjs.org/sw-precache-webpack-plugin/-/sw-precache-webpack-plugin-0.9.2.tgz",
- "integrity": "sha1-NCCd6Bm8auqzUuqM5+ui2vX5O3E=",
- "dev": true,
- "requires": {
- "del": "2.2.2",
- "sw-precache": "5.2.1",
- "uglify-js": "2.8.29"
- },
- "dependencies": {
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- },
- "uglify-js": {
- "version": "2.8.29",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
- "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
- "dev": true,
- "requires": {
- "source-map": "0.5.7",
- "uglify-to-browserify": "1.0.2",
- "yargs": "3.10.0"
- }
- },
- "yargs": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
- "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
- "dev": true,
- "requires": {
- "camelcase": "1.2.1",
- "cliui": "2.1.0",
- "decamelize": "1.2.0",
- "window-size": "0.1.0"
- }
- }
- }
- },
- "sw-toolbox": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/sw-toolbox/-/sw-toolbox-3.6.0.tgz",
- "integrity": "sha1-Jt8dHHA0hljk3qKIQxkUm3sxg7U=",
- "dev": true,
- "requires": {
- "path-to-regexp": "1.7.0",
- "serviceworker-cache-polyfill": "4.0.0"
- },
- "dependencies": {
- "path-to-regexp": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz",
- "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=",
- "dev": true,
- "requires": {
- "isarray": "0.0.1"
- }
- }
- }
- },
- "symbol-tree": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.2.tgz",
- "integrity": "sha1-rifbOPZgp64uHDt9G8KQgZuFGeY=",
- "optional": true
- },
- "table": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz",
- "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==",
- "dev": true,
- "requires": {
- "ajv": "5.5.2",
- "ajv-keywords": "2.1.1",
- "chalk": "2.3.2",
- "lodash": "4.17.5",
- "slice-ansi": "1.0.0",
- "string-width": "2.1.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "tapable": {
- "version": "0.2.8",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.8.tgz",
- "integrity": "sha1-mTcqXJmb8t8WCvwNdL7U9HlIzSI=",
- "dev": true
- },
- "tar": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
- "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
- "dev": true,
- "requires": {
- "block-stream": "0.0.9",
- "fstream": "1.0.11",
- "inherits": "2.0.3"
- }
- },
- "temp-dir": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz",
- "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=",
- "dev": true
- },
- "temp-write": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz",
- "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "is-stream": "1.1.0",
- "make-dir": "1.2.0",
- "pify": "3.0.0",
- "temp-dir": "1.0.0",
- "uuid": "3.2.1"
- }
- },
- "tempfile": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz",
- "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=",
- "dev": true,
- "requires": {
- "os-tmpdir": "1.0.2",
- "uuid": "2.0.3"
- },
- "dependencies": {
- "uuid": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
- "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=",
- "dev": true
- }
- }
- },
- "term-size": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz",
- "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=",
- "dev": true,
- "requires": {
- "execa": "0.7.0"
- },
- "dependencies": {
- "execa": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
- "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
- "dev": true,
- "requires": {
- "cross-spawn": "5.1.0",
- "get-stream": "3.0.0",
- "is-stream": "1.1.0",
- "npm-run-path": "2.0.2",
- "p-finally": "1.0.0",
- "signal-exit": "3.0.2",
- "strip-eof": "1.0.0"
- }
- }
- }
- },
- "text-extensions": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.7.0.tgz",
- "integrity": "sha512-AKXZeDq230UaSzaO5s3qQUZOaC7iKbzq0jOFL614R7d9R593HLqAOL0cYoqLdkNrjBSOdmoQI06yigq1TSBXAg==",
- "dev": true
- },
- "text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
- "dev": true
- },
- "throttleit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz",
- "integrity": "sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=",
- "dev": true
- },
- "through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU="
- },
- "through2": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
- "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
- "dev": true,
- "requires": {
- "readable-stream": "2.3.5",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "2.0.0",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- }
- }
- },
- "time-stamp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.0.0.tgz",
- "integrity": "sha1-lcakRTDhW6jW9KPsuMOj+sRto1c=",
- "dev": true
- },
- "timed-out": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz",
- "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=",
- "dev": true
- },
- "timers-browserify": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.6.tgz",
- "integrity": "sha512-HQ3nbYRAowdVd0ckGFvmJPPCOH/CHleFN/Y0YQCX1DVaB7t+KFvisuyN09fuP8Jtp1CpfSh8O8bMkHbdbPe6Pw==",
- "dev": true,
- "requires": {
- "setimmediate": "1.0.5"
- }
- },
- "tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
- "requires": {
- "os-tmpdir": "1.0.2"
- }
- },
- "to-array": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz",
- "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=",
- "dev": true
- },
- "to-arraybuffer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
- "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=",
- "dev": true
- },
- "to-fast-properties": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
- "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=",
- "dev": true
- },
- "to-object-path": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
- "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- }
- },
- "to-regex": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
- "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
- "dev": true,
- "requires": {
- "define-property": "2.0.2",
- "extend-shallow": "3.0.2",
- "regex-not": "1.0.2",
- "safe-regex": "1.1.0"
- }
- },
- "to-regex-range": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
- "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
- "dev": true,
- "requires": {
- "is-number": "3.0.0",
- "repeat-string": "1.6.1"
- },
- "dependencies": {
- "is-number": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
- "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- }
- }
- }
- },
- "toposort": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.6.tgz",
- "integrity": "sha1-wxdI5V0hDv/AD9zcfW5o19e7nOw=",
- "dev": true
- },
- "tough-cookie": {
- "version": "2.3.4",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz",
- "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==",
- "requires": {
- "punycode": "1.4.1"
- }
- },
- "tr46": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
- "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=",
- "optional": true
- },
- "trim-newlines": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz",
- "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=",
- "dev": true
- },
- "trim-off-newlines": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz",
- "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=",
- "dev": true
- },
- "trim-right": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
- "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=",
- "dev": true
- },
- "true-case-path": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.2.tgz",
- "integrity": "sha1-fskRMJJHZsf1c74wIMNPj9/QDWI=",
- "dev": true,
- "requires": {
- "glob": "6.0.4"
- },
- "dependencies": {
- "glob": {
- "version": "6.0.4",
- "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz",
- "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=",
- "dev": true,
- "requires": {
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
- }
- }
- }
- },
- "tty-browserify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
- "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=",
- "dev": true
- },
- "tunnel-agent": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
- "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
- "requires": {
- "safe-buffer": "5.1.1"
- }
- },
- "tweetnacl": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
- "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
- "optional": true
- },
- "type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
- "requires": {
- "prelude-ls": "1.1.2"
- }
- },
- "type-detect": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-1.0.0.tgz",
- "integrity": "sha1-diIXzAbbJY7EiQihKY6LlRIejqI=",
- "dev": true
- },
- "type-is": {
- "version": "1.6.16",
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
- "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==",
- "requires": {
- "media-typer": "0.3.0",
- "mime-types": "2.1.18"
- }
- },
- "typedarray": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
- "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
- "dev": true
- },
- "uc.micro": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.5.tgz",
- "integrity": "sha512-JoLI4g5zv5qNyT09f4YAvEZIIV1oOjqnewYg5D38dkQljIzpPT296dbIGvKro3digYI1bkb7W6EP1y4uDlmzLg=="
- },
- "uglify-js": {
- "version": "3.3.16",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.3.16.tgz",
- "integrity": "sha512-FMh5SRqJRGhv9BbaTffENIpDDQIoPDR8DBraunGORGhySArsXlw9++CN+BWzPBLpoI4RcSnpfGPnilTxWL3Vvg==",
- "dev": true,
- "requires": {
- "commander": "2.15.1",
- "source-map": "0.6.1"
- }
- },
- "uglify-to-browserify": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
- "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=",
- "dev": true,
- "optional": true
- },
- "uglifyjs-webpack-plugin": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.4.tgz",
- "integrity": "sha512-z0IbjpW8b3O/OVn+TTZN4pI29RN1zktFBXLIzzfZ+++cUtZ1ERSlLWgpE/5OERuEUs1ijVQnpYAkSlpoVmQmSQ==",
- "dev": true,
- "requires": {
- "cacache": "10.0.4",
- "find-cache-dir": "1.0.0",
- "schema-utils": "0.4.5",
- "serialize-javascript": "1.4.0",
- "source-map": "0.6.1",
- "uglify-es": "3.3.9",
- "webpack-sources": "1.1.0",
- "worker-farm": "1.6.0"
- },
- "dependencies": {
- "commander": {
- "version": "2.13.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz",
- "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==",
- "dev": true
- },
- "uglify-es": {
- "version": "3.3.9",
- "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz",
- "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==",
- "dev": true,
- "requires": {
- "commander": "2.13.0",
- "source-map": "0.6.1"
- }
- }
- }
- },
- "ultron": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz",
- "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=",
- "dev": true
- },
- "union-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz",
- "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=",
- "dev": true,
- "requires": {
- "arr-union": "3.1.0",
- "get-value": "2.0.6",
- "is-extendable": "0.1.1",
- "set-value": "0.4.3"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "0.1.1"
- }
- },
- "set-value": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz",
- "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=",
- "dev": true,
- "requires": {
- "extend-shallow": "2.0.1",
- "is-extendable": "0.1.1",
- "is-plain-object": "2.0.4",
- "to-object-path": "0.3.0"
- }
- }
- }
- },
- "uniq": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
- "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=",
- "dev": true
- },
- "uniqid": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-4.1.1.tgz",
- "integrity": "sha1-iSIN32t1GuUrX3JISGNShZa7hME=",
- "dev": true,
- "requires": {
- "macaddress": "0.2.8"
- }
- },
- "uniqs": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz",
- "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=",
- "dev": true
- },
- "unique-filename": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz",
- "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=",
- "dev": true,
- "requires": {
- "unique-slug": "2.0.0"
- }
- },
- "unique-slug": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz",
- "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=",
- "dev": true,
- "requires": {
- "imurmurhash": "0.1.4"
- }
- },
- "unique-string": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz",
- "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=",
- "dev": true,
- "requires": {
- "crypto-random-string": "1.0.0"
- }
- },
- "universalify": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz",
- "integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=",
- "dev": true
- },
- "unpipe": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
- "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
- },
- "unset-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
- "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
- "dev": true,
- "requires": {
- "has-value": "0.3.1",
- "isobject": "3.0.1"
- },
- "dependencies": {
- "has-value": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
- "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
- "dev": true,
- "requires": {
- "get-value": "2.0.6",
- "has-values": "0.1.4",
- "isobject": "2.1.0"
- },
- "dependencies": {
- "isobject": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
- "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
- "dev": true,
- "requires": {
- "isarray": "1.0.0"
- }
- }
- }
- },
- "has-values": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
- "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
- "dev": true
- },
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- }
- }
- },
- "unzip-response": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz",
- "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=",
- "dev": true
- },
- "upath": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/upath/-/upath-1.0.4.tgz",
- "integrity": "sha512-d4SJySNBXDaQp+DPrziv3xGS6w3d2Xt69FijJr86zMPBy23JEloMCEOUBBzuN7xCtjLCnmB9tI/z7SBCahHBOw==",
- "dev": true
- },
- "update-notifier": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.4.0.tgz",
- "integrity": "sha1-+bTHAPv9TsEsgRWHJYd31WPYyGY=",
- "dev": true,
- "requires": {
- "boxen": "1.3.0",
- "chalk": "2.3.2",
- "configstore": "3.1.2",
- "import-lazy": "2.1.0",
- "is-ci": "1.1.0",
- "is-installed-globally": "0.1.0",
- "is-npm": "1.0.0",
- "latest-version": "3.1.0",
- "semver-diff": "2.1.0",
- "xdg-basedir": "3.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "1.9.1"
- }
- },
- "chalk": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
- "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "3.2.1",
- "escape-string-regexp": "1.0.5",
- "supports-color": "5.3.0"
- }
- },
- "supports-color": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
- "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
- "dev": true,
- "requires": {
- "has-flag": "3.0.0"
- }
- }
- }
- },
- "upper-case": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz",
- "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=",
- "dev": true
- },
- "uri-js": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-3.0.2.tgz",
- "integrity": "sha1-+QuFhQf4HepNz7s8TD2/orVX+qo=",
- "dev": true,
- "requires": {
- "punycode": "2.1.0"
- },
- "dependencies": {
- "punycode": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz",
- "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=",
- "dev": true
- }
- }
- },
- "urijs": {
- "version": "1.19.1",
- "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.1.tgz",
- "integrity": "sha512-xVrGVi94ueCJNrBSTjWqjvtgvl3cyOTThp2zaMaFNGp3F542TR6sM3f2o8RqZl+AwteClSVmoCyt0ka4RjQOQg==",
- "dev": true
- },
- "urix": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
- "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
- "dev": true
- },
- "url": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
- "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
- "dev": true,
- "requires": {
- "punycode": "1.3.2",
- "querystring": "0.2.0"
- },
- "dependencies": {
- "punycode": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
- "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
- "dev": true
- }
- }
- },
- "url-parse": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.2.0.tgz",
- "integrity": "sha512-DT1XbYAfmQP65M/mE6OALxmXzZ/z1+e5zk2TcSKe/KiYbNGZxgtttzC0mR/sjopbpOXcbniq7eIKmocJnUWlEw==",
- "requires": {
- "querystringify": "1.0.0",
- "requires-port": "1.0.0"
- }
- },
- "url-parse-lax": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz",
- "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=",
- "dev": true,
- "requires": {
- "prepend-http": "1.0.4"
- }
- },
- "use": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz",
- "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==",
- "dev": true,
- "requires": {
- "kind-of": "6.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
- "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
- "dev": true
- }
- }
- },
- "useragent": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz",
- "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==",
- "dev": true,
- "requires": {
- "lru-cache": "4.1.2",
- "tmp": "0.0.33"
- }
- },
- "util": {
- "version": "0.10.3",
- "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
- "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
- "dev": true,
- "requires": {
- "inherits": "2.0.1"
- },
- "dependencies": {
- "inherits": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
- "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
- "dev": true
- }
- }
- },
- "util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
- "dev": true
- },
- "utila": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz",
- "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=",
- "dev": true
- },
- "utils-merge": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
- "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
- },
- "uuid": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz",
- "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA=="
- },
- "val-loader": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/val-loader/-/val-loader-1.1.0.tgz",
- "integrity": "sha512-8m62XF42FcfrBBl02rtDY9hQhDcDczrEcr60/aSMxlzJiXAcbAimRPvsDoDa5QcGAusOgOmVTpFtK5EbfZdDwA==",
- "requires": {
- "loader-utils": "1.1.0"
- }
- },
- "validate-npm-package-license": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz",
- "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==",
- "dev": true,
- "requires": {
- "spdx-correct": "3.0.0",
- "spdx-expression-parse": "3.0.0"
- }
- },
- "vary": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
- "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
- },
- "vendors": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.1.tgz",
- "integrity": "sha1-N61zyO5Bf7PVgOeFMSMH0nSEfyI=",
- "dev": true
- },
- "verror": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
- "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
- "requires": {
- "assert-plus": "1.0.0",
- "core-util-is": "1.0.2",
- "extsprintf": "1.3.0"
- }
- },
- "vm-browserify": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz",
- "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=",
- "dev": true,
- "requires": {
- "indexof": "0.0.1"
- }
- },
- "void-elements": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz",
- "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=",
- "dev": true
- },
- "vue": {
- "version": "2.5.16",
- "resolved": "https://registry.npmjs.org/vue/-/vue-2.5.16.tgz",
- "integrity": "sha512-/ffmsiVuPC8PsWcFkZngdpas19ABm5mh2wA7iDqcltyCTwlgZjHGeJYOXkBMo422iPwIcviOtrTCUpSfXmToLQ=="
- },
- "vue-analytics": {
- "version": "5.9.1",
- "resolved": "https://registry.npmjs.org/vue-analytics/-/vue-analytics-5.9.1.tgz",
- "integrity": "sha1-OsmBD1bb5UvKT9HD7kI1S0M9kys="
- },
- "vue-eslint-parser": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-2.0.3.tgz",
- "integrity": "sha512-ZezcU71Owm84xVF6gfurBQUGg8WQ+WZGxgDEQu1IHFBZNx7BFZg3L1yHxrCBNNwbwFtE1GuvfJKMtb6Xuwc/Bw==",
- "dev": true,
- "requires": {
- "debug": "3.1.0",
- "eslint-scope": "3.7.1",
- "eslint-visitor-keys": "1.0.0",
- "espree": "3.5.4",
- "esquery": "1.0.0",
- "lodash": "4.17.5"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
- }
- },
- "vue-hot-reload-api": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.0.tgz",
- "integrity": "sha512-2j/t+wIbyVMP5NvctQoSUvLkYKoWAAk2QlQiilrM2a6/ulzFgdcLUJfTvs4XQ/3eZhHiBmmEojbjmM4AzZj8JA==",
- "dev": true
- },
- "vue-i18n": {
- "version": "7.6.0",
- "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-7.6.0.tgz",
- "integrity": "sha512-IqyGj4nOFrGopCCpRucfMPJSgp5WauuI8HTaAQc7XIpHT7iOH4flndy1g09FiUzidi0lRVKJME+S7sPJny/t/A=="
- },
- "vue-lazyload": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/vue-lazyload/-/vue-lazyload-1.2.2.tgz",
- "integrity": "sha512-SWrPuBTEbZN+KojvDTew8PMPlqVXfU6w7zqWGSgew8c3aB/l6aK9yMpp7qz5LqsgzIAxBBi39TAz8FyN2vHosA=="
- },
- "vue-loader": {
- "version": "10.3.0",
- "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-10.3.0.tgz",
- "integrity": "sha1-Q2Qhc26a0PHEgTMDJ8N2lj24ahk=",
- "dev": true,
- "requires": {
- "consolidate": "0.14.5",
- "hash-sum": "1.0.2",
- "js-beautify": "1.7.5",
- "loader-utils": "0.2.17",
- "lru-cache": "4.1.2",
- "postcss": "5.2.18",
- "postcss-selector-parser": "2.2.3",
- "source-map": "0.5.7",
- "vue-hot-reload-api": "2.3.0",
- "vue-style-loader": "2.0.5",
- "vue-template-es2015-compiler": "1.6.0"
- },
- "dependencies": {
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "loader-utils": {
- "version": "0.2.17",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
- "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
- "dev": true,
- "requires": {
- "big.js": "3.2.0",
- "emojis-list": "2.1.0",
- "json5": "0.5.1",
- "object-assign": "4.1.1"
- }
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "vue-markdown-loader": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/vue-markdown-loader/-/vue-markdown-loader-2.4.0.tgz",
- "integrity": "sha512-GoCNc5RB++RZGOQtAbomXHDvJMnpcl/iUXUEzG7zeim68ezNO3ZXorsQvTYG0gqx7pweG9bLL6c/cApHS9YXnQ==",
- "requires": {
- "cheerio": "0.20.0",
- "highlight.js": "9.12.0",
- "loader-utils": "1.1.0",
- "markdown-it": "8.4.1"
- }
- },
- "vue-meta": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/vue-meta/-/vue-meta-1.5.0.tgz",
- "integrity": "sha512-8zXr7JAxOaYkd1pSl84d/mlO3un/KDzOGeOHZynEBKM/uBIuVPYPNRvR4jMOu7PtgqbjkzDesmF5zyM9vWkznQ==",
- "requires": {
- "deepmerge": "2.1.0",
- "lodash.isplainobject": "4.0.6",
- "object-assign": "4.1.1"
- }
- },
- "vue-router": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.0.1.tgz",
- "integrity": "sha512-vLLoY452L+JBpALMP5UHum9+7nzR9PeIBCghU9ZtJ1eWm6ieUI8Zb/DI3MYxH32bxkjzYV1LRjNv4qr8d+uX/w=="
- },
- "vue-server-renderer": {
- "version": "2.5.16",
- "resolved": "https://registry.npmjs.org/vue-server-renderer/-/vue-server-renderer-2.5.16.tgz",
- "integrity": "sha512-IU+yq/1+TpMTPgD3S0flrtWYerkVgxo0i7AEs1AMkvtakDzNYA9m8pm28WYV0zhtL1gBREJI+3HR6QQsDOizww==",
- "requires": {
- "chalk": "1.1.3",
- "hash-sum": "1.0.2",
- "he": "1.1.1",
- "lodash.template": "4.4.0",
- "lodash.uniq": "4.5.0",
- "resolve": "1.6.0",
- "serialize-javascript": "1.4.0",
- "source-map": "0.5.6"
- },
- "dependencies": {
- "source-map": {
- "version": "0.5.6",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz",
- "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI="
- }
- }
- },
- "vue-ssr-webpack-plugin": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/vue-ssr-webpack-plugin/-/vue-ssr-webpack-plugin-1.0.3.tgz",
- "integrity": "sha1-6cMnItR2ydNrPWDoGNUHf0v3HG0=",
- "dev": true,
- "requires": {
- "chalk": "1.1.3"
- }
- },
- "vue-storefront-stripe": {
- "version": "1.0.71",
- "resolved": "https://registry.npmjs.org/vue-storefront-stripe/-/vue-storefront-stripe-1.0.71.tgz",
- "integrity": "sha512-vH5+tnOWrlTIgSwOepf4VEIFB6Tqi1k9A6WPVMJIseWdwnkrIUxM3Nh6Wg6eU46SjI4q/zENTEp6p+Q9sJ0W7Q=="
- },
- "vue-style-loader": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-2.0.5.tgz",
- "integrity": "sha1-8O+smS/r4/EuST4zTtsTzSNaPSI=",
- "dev": true,
- "requires": {
- "hash-sum": "1.0.2",
- "loader-utils": "1.1.0"
- }
- },
- "vue-template-compiler": {
- "version": "2.5.16",
- "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.5.16.tgz",
- "integrity": "sha512-ZbuhCcF/hTYmldoUOVcu2fcbeSAZnfzwDskGduOrnjBiIWHgELAd+R8nAtX80aZkceWDKGQ6N9/0/EUpt+l22A==",
- "dev": true,
- "requires": {
- "de-indent": "1.0.2",
- "he": "1.1.1"
- }
- },
- "vue-template-es2015-compiler": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.6.0.tgz",
- "integrity": "sha512-x3LV3wdmmERhVCYy3quqA57NJW7F3i6faas++pJQWtknWT+n7k30F4TVdHvCLn48peTJFRvCpxs3UuFPqgeELg==",
- "dev": true
- },
- "vue2-google-maps": {
- "version": "0.8.11",
- "resolved": "https://registry.npmjs.org/vue2-google-maps/-/vue2-google-maps-0.8.11.tgz",
- "integrity": "sha512-dK8Ekjc2MZN7Yc60MhXu5+Kj5ItruSP+jvwzF5+d32UpTV06g5aLgmHs4riv9Kfpc4kRTQMalDaYHUFS0NxZ7g==",
- "requires": {
- "babel-runtime": "5.8.38",
- "marker-clusterer-plus": "2.1.4"
- }
- },
- "vue2-slugify": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/vue2-slugify/-/vue2-slugify-0.0.1.tgz",
- "integrity": "sha1-+bvWQv7Z9SDQjmHA/fu7Fc/ds7I="
- },
- "vuelidate": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/vuelidate/-/vuelidate-0.6.2.tgz",
- "integrity": "sha512-rowo/OSwC8XEGdWg+ZgTpcgxYtmbQKbGOw4Z+lfT/BkNPoNyPEVgIeObUhhFO7Q7Lz0u0p429qfus/BHs9tMpg=="
- },
- "vuex": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.0.1.tgz",
- "integrity": "sha512-wLoqz0B7DSZtgbWL1ShIBBCjv22GV5U+vcBFox658g6V0s4wZV9P4YjCNyoHSyIBpj1f29JBoNQIqD82cR4O3w=="
- },
- "vuex-router-sync": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/vuex-router-sync/-/vuex-router-sync-5.0.0.tgz",
- "integrity": "sha512-Mry2sO4kiAG64714X1CFpTA/shUH1DmkZ26DFDtwoM/yyx6OtMrc+MxrU+7vvbNLO9LSpgwkiJ8W+rlmRtsM+w=="
- },
- "watchpack": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.5.0.tgz",
- "integrity": "sha512-RSlipNQB1u48cq0wH/BNfCu1tD/cJ8ydFIkNYhp9o+3d+8unClkIovpW5qpFPgmL9OE48wfAnlZydXByWP82AA==",
- "dev": true,
- "requires": {
- "chokidar": "2.0.3",
- "graceful-fs": "4.1.11",
- "neo-async": "2.5.0"
- },
- "dependencies": {
- "anymatch": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
- "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
- "dev": true,
- "requires": {
- "micromatch": "3.1.10",
- "normalize-path": "2.1.1"
- }
- },
- "arr-diff": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
- "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
- "dev": true
- },
- "array-unique": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
- "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
- "dev": true
- },
- "braces": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.1.tgz",
- "integrity": "sha512-SO5lYHA3vO6gz66erVvedSCkp7AKWdv6VcQ2N4ysXfPxdAlxAMMAdwegGGcv1Bqwm7naF1hNdk5d6AAIEHV2nQ==",
- "dev": true,
- "requires": {
- "arr-flatten": "1.1.0",
- "array-unique": "0.3.2",
- "define-property": "1.0.0",
- "extend-shallow": "2.0.1",
- "fill-range": "4.0.0",
- "isobject": "3.0.1",
- "kind-of": "6.0.2",
- "repeat-element": "1.1.2",
- "snapdragon": "0.8.2",
- "snapdragon-node": "2.1.1",
- "split-string": "3.1.0",
- "to-regex": "3.0.2"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "1.0.2"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "0.1.1"
- }
- }
- }
- },
- "chokidar": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.3.tgz",
- "integrity": "sha512-zW8iXYZtXMx4kux/nuZVXjkLP+CyIK5Al5FHnj1OgTKGZfp4Oy6/ymtMSKFv3GD8DviEmUPmJg9eFdJ/JzudMg==",
- "dev": true,
- "requires": {
- "anymatch": "2.0.0",
- "async-each": "1.0.1",
- "braces": "2.3.1",
- "fsevents": "1.1.3",
- "glob-parent": "3.1.0",
- "inherits": "2.0.3",
- "is-binary-path": "1.0.1",
- "is-glob": "4.0.0",
- "normalize-path": "2.1.1",
- "path-is-absolute": "1.0.1",
- "readdirp": "2.1.0",
- "upath": "1.0.4"
- }
- },
- "expand-brackets": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
- "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
- "dev": true,
- "requires": {
- "debug": "2.6.9",
- "define-property": "0.2.5",
- "extend-shallow": "2.0.1",
- "posix-character-classes": "0.1.1",
- "regex-not": "1.0.2",
- "snapdragon": "0.8.2",
- "to-regex": "3.0.2"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "0.1.6"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "0.1.1"
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "0.1.6",
- "is-data-descriptor": "0.1.4",
- "kind-of": "5.1.0"
- }
- },
- "kind-of": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
- "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
- "dev": true
- }
- }
- },
- "extglob": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
- "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
- "dev": true,
- "requires": {
- "array-unique": "0.3.2",
- "define-property": "1.0.0",
- "expand-brackets": "2.1.4",
- "extend-shallow": "2.0.1",
- "fragment-cache": "0.2.1",
- "regex-not": "1.0.2",
- "snapdragon": "0.8.2",
- "to-regex": "3.0.2"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "1.0.2"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "0.1.1"
- }
- }
- }
- },
- "fill-range": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
- "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
- "dev": true,
- "requires": {
- "extend-shallow": "2.0.1",
- "is-number": "3.0.0",
- "repeat-string": "1.6.1",
- "to-regex-range": "2.1.1"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "0.1.1"
- }
- }
- }
- },
- "glob-parent": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
- "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
- "dev": true,
- "requires": {
- "is-glob": "3.1.0",
- "path-dirname": "1.0.2"
- },
- "dependencies": {
- "is-glob": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
- "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
- "dev": true,
- "requires": {
- "is-extglob": "2.1.1"
- }
- }
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
- "dev": true
- },
- "is-glob": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz",
- "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=",
- "dev": true,
- "requires": {
- "is-extglob": "2.1.1"
- }
- },
- "is-number": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
- "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
- "dev": true,
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "1.1.6"
- }
- }
- }
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- },
- "kind-of": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
- "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
- "dev": true
- },
- "micromatch": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
- "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
- "dev": true,
- "requires": {
- "arr-diff": "4.0.0",
- "array-unique": "0.3.2",
- "braces": "2.3.1",
- "define-property": "2.0.2",
- "extend-shallow": "3.0.2",
- "extglob": "2.0.4",
- "fragment-cache": "0.2.1",
- "kind-of": "6.0.2",
- "nanomatch": "1.2.9",
- "object.pick": "1.3.0",
- "regex-not": "1.0.2",
- "snapdragon": "0.8.2",
- "to-regex": "3.0.2"
- }
- }
- }
- },
- "wcwidth": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
- "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=",
- "dev": true,
- "requires": {
- "defaults": "1.0.3"
- }
- },
- "webidl-conversions": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-2.0.1.tgz",
- "integrity": "sha1-O/glj30xjHRDw28uFpQCoaZwNQY=",
- "optional": true
- },
- "webpack": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-2.7.0.tgz",
- "integrity": "sha512-MjAA0ZqO1ba7ZQJRnoCdbM56mmFpipOPUv/vQpwwfSI42p5PVDdoiuK2AL2FwFUVgT859Jr43bFZXRg/LNsqvg==",
- "dev": true,
- "requires": {
- "acorn": "5.5.3",
- "acorn-dynamic-import": "2.0.2",
- "ajv": "4.11.8",
- "ajv-keywords": "1.5.1",
- "async": "2.6.0",
- "enhanced-resolve": "3.4.1",
- "interpret": "1.1.0",
- "json-loader": "0.5.7",
- "json5": "0.5.1",
- "loader-runner": "2.3.0",
- "loader-utils": "0.2.17",
- "memory-fs": "0.4.1",
- "mkdirp": "0.5.1",
- "node-libs-browser": "2.1.0",
- "source-map": "0.5.7",
- "supports-color": "3.2.3",
- "tapable": "0.2.8",
- "uglify-js": "2.8.29",
- "watchpack": "1.5.0",
- "webpack-sources": "1.1.0",
- "yargs": "6.6.0"
- },
- "dependencies": {
- "acorn": {
- "version": "5.5.3",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz",
- "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==",
- "dev": true
- },
- "ajv": {
- "version": "4.11.8",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
- "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
- "dev": true,
- "requires": {
- "co": "4.6.0",
- "json-stable-stringify": "1.0.1"
- }
- },
- "ajv-keywords": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz",
- "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=",
- "dev": true
- },
- "has-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
- "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
- "dev": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "loader-utils": {
- "version": "0.2.17",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
- "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
- "dev": true,
- "requires": {
- "big.js": "3.2.0",
- "emojis-list": "2.1.0",
- "json5": "0.5.1",
- "object-assign": "4.1.1"
- }
- },
- "os-locale": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
- "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
- "dev": true,
- "requires": {
- "lcid": "1.0.0"
- }
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- },
- "string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- },
- "supports-color": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
- "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
- "dev": true,
- "requires": {
- "has-flag": "1.0.0"
- }
- },
- "uglify-js": {
- "version": "2.8.29",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
- "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
- "dev": true,
- "requires": {
- "source-map": "0.5.7",
- "uglify-to-browserify": "1.0.2",
- "yargs": "3.10.0"
- },
- "dependencies": {
- "yargs": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
- "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
- "dev": true,
- "requires": {
- "camelcase": "1.2.1",
- "cliui": "2.1.0",
- "decamelize": "1.2.0",
- "window-size": "0.1.0"
- }
- }
- }
- },
- "which-module": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz",
- "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=",
- "dev": true
- },
- "yargs": {
- "version": "6.6.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz",
- "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=",
- "dev": true,
- "requires": {
- "camelcase": "3.0.0",
- "cliui": "3.2.0",
- "decamelize": "1.2.0",
- "get-caller-file": "1.0.2",
- "os-locale": "1.4.0",
- "read-pkg-up": "1.0.1",
- "require-directory": "2.1.1",
- "require-main-filename": "1.0.1",
- "set-blocking": "2.0.0",
- "string-width": "1.0.2",
- "which-module": "1.0.0",
- "y18n": "3.2.1",
- "yargs-parser": "4.2.1"
- },
- "dependencies": {
- "camelcase": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
- "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
- "dev": true
- },
- "cliui": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
- "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
- "dev": true,
- "requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wrap-ansi": "2.1.0"
- }
- }
- }
- },
- "yargs-parser": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz",
- "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=",
- "dev": true,
- "requires": {
- "camelcase": "3.0.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
- "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
- "dev": true
- }
- }
- }
- }
- },
- "webpack-dev-middleware": {
- "version": "1.12.2",
- "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz",
- "integrity": "sha512-FCrqPy1yy/sN6U/SaEZcHKRXGlqU0DUaEBL45jkUYoB8foVb6wCnbIJ1HKIx+qUFTW+3JpVcCJCxZ8VATL4e+A==",
- "dev": true,
- "requires": {
- "memory-fs": "0.4.1",
- "mime": "1.6.0",
- "path-is-absolute": "1.0.1",
- "range-parser": "1.2.0",
- "time-stamp": "2.0.0"
- },
- "dependencies": {
- "mime": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
- "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
- "dev": true
- }
- }
- },
- "webpack-hot-middleware": {
- "version": "2.21.2",
- "resolved": "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.21.2.tgz",
- "integrity": "sha512-N5c80o31E0COFJV8HRjiX3hJetDOwQ2Ajt5TTORKA9diOimhFtmaZKSfO3pQKMeQngb7I4TUnNDroJiUzPFhKQ==",
- "dev": true,
- "requires": {
- "ansi-html": "0.0.7",
- "html-entities": "1.2.1",
- "querystring": "0.2.0",
- "strip-ansi": "3.0.1"
- }
- },
- "webpack-merge": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.1.2.tgz",
- "integrity": "sha512-/0QYwW/H1N/CdXYA2PNPVbsxO3u2Fpz34vs72xm03SRfg6bMNGfMJIQEpQjKRvkG2JvT6oRJFpDtSrwbX8Jzvw==",
- "dev": true,
- "requires": {
- "lodash": "4.17.5"
- }
- },
- "webpack-sources": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz",
- "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==",
- "dev": true,
- "requires": {
- "source-list-map": "2.0.0",
- "source-map": "0.6.1"
- },
- "dependencies": {
- "source-list-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz",
- "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==",
- "dev": true
- }
- }
- },
- "whatwg-fetch": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz",
- "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ="
- },
- "whatwg-url-compat": {
- "version": "0.6.5",
- "resolved": "https://registry.npmjs.org/whatwg-url-compat/-/whatwg-url-compat-0.6.5.tgz",
- "integrity": "sha1-AImBEa9om7CXVBzVpFymyHmERb8=",
- "optional": true,
- "requires": {
- "tr46": "0.0.3"
- }
- },
- "when": {
- "version": "3.6.4",
- "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz",
- "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=",
- "dev": true
- },
- "whet.extend": {
- "version": "0.9.9",
- "resolved": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz",
- "integrity": "sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=",
- "dev": true
- },
- "which": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz",
- "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
- "requires": {
- "isexe": "2.0.0"
- }
- },
- "which-module": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
- "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
- "dev": true
- },
- "wide-align": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz",
- "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==",
- "dev": true,
- "requires": {
- "string-width": "1.0.2"
- },
- "dependencies": {
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- }
- }
- },
- "widest-line": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz",
- "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=",
- "dev": true,
- "requires": {
- "string-width": "2.1.1"
- }
- },
- "window-size": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
- "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
- "dev": true
- },
- "wordwrap": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
- "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus="
- },
- "worker-farm": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.6.0.tgz",
- "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==",
- "dev": true,
- "requires": {
- "errno": "0.1.7"
- }
- },
- "wrap-ansi": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
- "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
- "dev": true,
- "requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1"
- },
- "dependencies": {
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- }
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
- },
- "write": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz",
- "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=",
- "dev": true,
- "requires": {
- "mkdirp": "0.5.1"
- }
- },
- "write-file-atomic": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz",
- "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "imurmurhash": "0.1.4",
- "signal-exit": "3.0.2"
- }
- },
- "write-json-file": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz",
- "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=",
- "dev": true,
- "requires": {
- "detect-indent": "5.0.0",
- "graceful-fs": "4.1.11",
- "make-dir": "1.2.0",
- "pify": "3.0.0",
- "sort-keys": "2.0.0",
- "write-file-atomic": "2.3.0"
- },
- "dependencies": {
- "detect-indent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz",
- "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=",
- "dev": true
- },
- "sort-keys": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz",
- "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=",
- "dev": true,
- "requires": {
- "is-plain-obj": "1.1.0"
- }
- }
- }
- },
- "write-pkg": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.1.0.tgz",
- "integrity": "sha1-AwqZlMyZk9JbTnWp8aGSNgcpHOk=",
- "dev": true,
- "requires": {
- "sort-keys": "2.0.0",
- "write-json-file": "2.3.0"
- },
- "dependencies": {
- "sort-keys": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz",
- "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=",
- "dev": true,
- "requires": {
- "is-plain-obj": "1.1.0"
- }
- }
- }
- },
- "ws": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.2.tgz",
- "integrity": "sha1-iiRPoFJAHgjJiGz0SoUYnh/UBn8=",
- "dev": true,
- "requires": {
- "options": "0.0.6",
- "ultron": "1.0.2"
- }
- },
- "wtf-8": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/wtf-8/-/wtf-8-1.0.0.tgz",
- "integrity": "sha1-OS2LotDxw00e4tYw8V0O+2jhBIo=",
- "dev": true
- },
- "xdg-basedir": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz",
- "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=",
- "dev": true
- },
- "xml-char-classes": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/xml-char-classes/-/xml-char-classes-1.0.0.tgz",
- "integrity": "sha1-ZGV4SKIP/F31g6Qq2KJ3tFErvE0=",
- "dev": true
- },
- "xml-name-validator": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-2.0.1.tgz",
- "integrity": "sha1-TYuPHszTQZqjYgYb7O9RXh5VljU=",
- "optional": true
- },
- "xmlhttprequest-ssl": {
- "version": "1.5.3",
- "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz",
- "integrity": "sha1-GFqIjATspGw+QHDZn3tJ3jUomS0=",
- "dev": true
- },
- "xtend": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
- "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
- "dev": true
- },
- "y18n": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz",
- "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=",
- "dev": true
- },
- "yallist": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
- "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI="
- },
- "yargs": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz",
- "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=",
- "dev": true,
- "requires": {
- "camelcase": "4.1.0",
- "cliui": "3.2.0",
- "decamelize": "1.2.0",
- "get-caller-file": "1.0.2",
- "os-locale": "2.1.0",
- "read-pkg-up": "2.0.0",
- "require-directory": "2.1.1",
- "require-main-filename": "1.0.1",
- "set-blocking": "2.0.0",
- "string-width": "2.1.1",
- "which-module": "2.0.0",
- "y18n": "3.2.1",
- "yargs-parser": "7.0.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz",
- "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=",
- "dev": true
- },
- "cliui": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
- "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
- "dev": true,
- "requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wrap-ansi": "2.1.0"
- },
- "dependencies": {
- "string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- }
- }
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "load-json-file": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
- "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "parse-json": "2.2.0",
- "pify": "2.3.0",
- "strip-bom": "3.0.0"
- }
- },
- "parse-json": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
- "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
- "dev": true,
- "requires": {
- "error-ex": "1.3.1"
- }
- },
- "path-type": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz",
- "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=",
- "dev": true,
- "requires": {
- "pify": "2.3.0"
- }
- },
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- },
- "read-pkg": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz",
- "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=",
- "dev": true,
- "requires": {
- "load-json-file": "2.0.0",
- "normalize-package-data": "2.4.0",
- "path-type": "2.0.0"
- }
- },
- "read-pkg-up": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz",
- "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=",
- "dev": true,
- "requires": {
- "find-up": "2.1.0",
- "read-pkg": "2.0.0"
- }
- }
- }
- },
- "yargs-parser": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz",
- "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=",
- "dev": true,
- "requires": {
- "camelcase": "4.1.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz",
- "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=",
- "dev": true
- }
- }
- },
- "yauzl": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz",
- "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=",
- "dev": true,
- "requires": {
- "fd-slicer": "1.0.1"
- }
- },
- "yeast": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
- "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=",
- "dev": true
- }
- }
-}
diff --git a/package.json b/package.json
index 10b02e629e..667f752a14 100755
--- a/package.json
+++ b/package.json
@@ -64,16 +64,21 @@
"npm": "^5.7.1",
"object-hash": "^1.2.0",
"print-message": "^2.1.0",
+ "rimraf": "^2.6.0",
"scrollreveal": "^3.3.6",
"shelljs": "^0.8.1",
+ "url-loader": "^1.0.1",
"url-parse": "^1.2.0",
"val-loader": "^1.1.0",
"vue": "^2.5.2",
"vue-analytics": "^5.8.0",
+ "vue-carousel": "^0.6.9",
"vue-i18n": "^7.4.2",
- "vue-lazyload": "^1.1.4",
+ "vue-lazyload": "^1.2.3",
"vue-markdown-loader": "^2.2.1",
"vue-meta": "^1.4.3",
+ "vue-no-ssr": "^0.2.2",
+ "vue-offline": "^1.0.7",
"vue-router": "^3.0.1",
"vue-server-renderer": "^2.5.2",
"vue-storefront-stripe": "^1.0.71",
@@ -81,10 +86,7 @@
"vue2-slugify": "0.0.1",
"vuelidate": "^0.6.2",
"vuex": "^3.0.0",
- "vuex-router-sync": "^5.0.0",
- "rimraf": "^2.6.0",
- "vue-carousel": "^0.6.9",
- "vue-no-ssr": "^0.2.2"
+ "vuex-router-sync": "^5.0.0"
},
"devDependencies": {
"babel-core": "^6.26.0",
@@ -132,6 +134,7 @@
"webpack-merge": "^4.1.0"
},
"workspaces": [
+ "core/store",
"src/extensions/*",
"src/themes/*"
]
diff --git a/src/extensions/droppoint-shipping/store.js b/src/extensions/droppoint-shipping/store.js
index c7bbd7cc54..65633b61b8 100644
--- a/src/extensions/droppoint-shipping/store.js
+++ b/src/extensions/droppoint-shipping/store.js
@@ -1,5 +1,5 @@
-import { execute as taskExecute } from 'core/lib/task'
-import * as entities from 'core/lib/entities'
+import { execute as taskExecute } from '@vue-storefront/store/lib/task'
+import * as entities from '@vue-storefront/store/lib/entities'
const state = {
}
diff --git a/src/extensions/payment-cash-on-delivery/index.js b/src/extensions/payment-cash-on-delivery/index.js
index b028f224e8..0829d3be86 100755
--- a/src/extensions/payment-cash-on-delivery/index.js
+++ b/src/extensions/payment-cash-on-delivery/index.js
@@ -25,7 +25,7 @@ export default function (app, router, store, config) {
'offline': true
}
- app.$store.state.payment.methods.push(paymentMethodConfig)
+ app.$store.dispatch('payment/addMethod', paymentMethodConfig)
// Mount the info component when required.
EventBus.$on('checkout-payment-method-changed', (paymentMethodCode) => {
diff --git a/src/index.template.html b/src/index.template.html
index c9edc36efe..b976908795 100755
--- a/src/index.template.html
+++ b/src/index.template.html
@@ -3,7 +3,8 @@
{{{ meta.inject().title.text() }}}
{{{ meta.inject().meta.text() }}}
- {{{ meta.inject().link.text() }}}
+ {{{ meta.inject().link.text() }}}
+
<% for (var chunk of webpack.chunks) {
for (var file of chunk.files) {
if (file.match(/\.(js|css)$/)) { %>
diff --git a/src/themes/catalog/assets/fonts/MaterialIcons-Regular.woff b/src/themes/catalog/assets/fonts/MaterialIcons-Regular.woff
new file mode 100644
index 0000000000..b648a3eea2
Binary files /dev/null and b/src/themes/catalog/assets/fonts/MaterialIcons-Regular.woff differ
diff --git a/src/themes/catalog/assets/fonts/MaterialIcons-Regular.woff2 b/src/themes/catalog/assets/fonts/MaterialIcons-Regular.woff2
new file mode 100644
index 0000000000..9fa2112520
Binary files /dev/null and b/src/themes/catalog/assets/fonts/MaterialIcons-Regular.woff2 differ
diff --git a/src/themes/catalog/assets/manifest.json b/src/themes/catalog/assets/manifest.json
new file mode 100644
index 0000000000..35f99d1d7a
--- /dev/null
+++ b/src/themes/catalog/assets/manifest.json
@@ -0,0 +1,40 @@
+{
+ "short_name": "Vue Storefront",
+ "name": "Vue Storefront Catalog",
+ "background_color": "#ffffff",
+ "display": "standalone",
+ "theme_color": "#ffffff",
+ "icons": [
+ {
+ "src": "/assets/launcher-icon-1x.png",
+ "type": "image/png",
+ "sizes": "48x48"
+ },
+ {
+ "src": "/assets/launcher-icon-72x72.png",
+ "type": "image/png",
+ "sizes": "72x72"
+ },
+ {
+ "src": "/assets/launcher-icon-2x.png",
+ "type": "image/png",
+ "sizes": "96x96"
+ },
+ {
+ "src": "/assets/launcher-icon-144x144.png",
+ "type": "image/png",
+ "sizes": "144x144"
+ },
+ {
+ "src": "/assets/launcher-icon-168x168.png",
+ "type": "image/png",
+ "sizes": "168x168"
+ },
+ {
+ "src": "/assets/launcher-icon-4x.png",
+ "type": "image/png",
+ "sizes": "192x192"
+ }
+ ],
+ "start_url": "/pwa.html"
+ }
diff --git a/src/themes/catalog/components/core/Notification.vue b/src/themes/catalog/components/core/Notification.vue
index d3e66f91d0..6f59cda597 100644
--- a/src/themes/catalog/components/core/Notification.vue
+++ b/src/themes/catalog/components/core/Notification.vue
@@ -73,6 +73,6 @@ export default {
}
.notification.info {
- background: #333333;
+ background: #4F4F4F;
}
diff --git a/src/themes/catalog/components/core/blocks/Header/Header.vue b/src/themes/catalog/components/core/blocks/Header/Header.vue
index a134492e8a..28e140dc20 100644
--- a/src/themes/catalog/components/core/blocks/Header/Header.vue
+++ b/src/themes/catalog/components/core/blocks/Header/Header.vue
@@ -53,7 +53,7 @@ export default {
this.$bus.$emit('notification', {
type: 'success',
message: i18n.t('This feature has not been implemented yet. Please follow our Roadmap for the details'),
- action1: { label: 'OK', action: 'close' },
+ action1: { label: i18n.t('OK'), action: 'close' },
timeToLive: 20000
})
},
diff --git a/src/themes/catalog/components/core/blocks/Product/SimilarProducts.vue b/src/themes/catalog/components/core/blocks/Product/SimilarProducts.vue
index eb9062f4c2..b378a5ee32 100644
--- a/src/themes/catalog/components/core/blocks/Product/SimilarProducts.vue
+++ b/src/themes/catalog/components/core/blocks/Product/SimilarProducts.vue
@@ -24,7 +24,7 @@ export default {
beforeMount () {
let store = this.$store
let inst = this
- let byCategoryQuery = builder().query('terms', 'category.category_id', this.product.category.map((cat) => { return cat.category_id })).andFilter('range', 'visibility', { 'gte': 3, 'lte': 4 }/** Magento visibility in search & categories */).build()
+ let byCategoryQuery = builder().query('terms', 'category.category_id', this.product.category.map((cat) => { return cat.category_id })).andFilter('range', 'visibility', { 'gte': 2, 'lte': 4 }/** Magento visibility in search & categories */).build()
this.$store.dispatch('product/list', {
query: byCategoryQuery,
diff --git a/src/themes/catalog/components/theme/NewsletterSubscribeForm.vue b/src/themes/catalog/components/theme/NewsletterSubscribeForm.vue
index 526d37694e..37c580bac9 100644
--- a/src/themes/catalog/components/theme/NewsletterSubscribeForm.vue
+++ b/src/themes/catalog/components/theme/NewsletterSubscribeForm.vue
@@ -22,17 +22,17 @@ export default {
subscribed: {
type: 'success',
message: i18n.t('Newsletter successfully subscribed. Thank you!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
},
alreadySubscribed: {
type: 'error',
message: i18n.t('You have already subscribed our newsletter'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
},
wrongEmail: {
type: 'error',
message: i18n.t('Email field is empty'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
}
}
diff --git a/src/themes/catalog/css/base/_icons.scss b/src/themes/catalog/css/base/_icons.scss
new file mode 100644
index 0000000000..4c045add04
--- /dev/null
+++ b/src/themes/catalog/css/base/_icons.scss
@@ -0,0 +1,25 @@
+@font-face {
+ font-family: 'Material Icons';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Material Icons'),
+ local('MaterialIcons-Regular'),
+ url('../assets/fonts/MaterialIcons-Regular.woff2') format('woff2'),
+ url('../assets/fonts/MaterialIcons-Regular.woff') format('woff');
+}
+
+.material-icons {
+ font-family: 'Material Icons';
+ font-weight: normal;
+ font-style: normal;
+ font-size: 24px;
+ line-height: 1;
+ letter-spacing: normal;
+ text-transform: none;
+ display: inline-block;
+ white-space: nowrap;
+ word-wrap: normal;
+ direction: ltr;
+ -webkit-font-feature-settings: 'liga';
+ -webkit-font-smoothing: antialiased;
+}
\ No newline at end of file
diff --git a/src/themes/catalog/css/main.scss b/src/themes/catalog/css/main.scss
index feb8560ade..3722dd0315 100644
--- a/src/themes/catalog/css/main.scss
+++ b/src/themes/catalog/css/main.scss
@@ -5,6 +5,10 @@
@import 'mixins/transitions';
@import 'mixins/hovers';
+@import 'base/icons';
+
+@import 'vendor/flexboxgrid2';
+
@import 'text';
@import 'background';
@import 'border';
diff --git a/src/themes/catalog/css/vars/_colors.scss b/src/themes/catalog/css/vars/_colors.scss
index 61d522b988..1b6a1af7dd 100644
--- a/src/themes/catalog/css/vars/_colors.scss
+++ b/src/themes/catalog/css/vars/_colors.scss
@@ -10,7 +10,7 @@ $c-text-on-dark: white;
$c-text-on-light: black;
$c-text-on-accent: white;
$c-text-on-bg-secondary: #4F4F4F;
-$c-text-heading: #333333;
+$c-text-heading: #4F4F4F;
$c-text-header-link: black;
diff --git a/src/themes/catalog/css/vendor/_flexboxgrid2.scss b/src/themes/catalog/css/vendor/_flexboxgrid2.scss
new file mode 100644
index 0000000000..567c7dc1f6
--- /dev/null
+++ b/src/themes/catalog/css/vendor/_flexboxgrid2.scss
@@ -0,0 +1,1209 @@
+.container {
+ box-sizing: border-box;
+ margin-left: auto;
+ margin-right: auto;
+ padding-right: 8px;
+ padding-left: 8px;
+}
+
+.container-fluid {
+ padding-right: 16px;
+ padding-left: 16px;
+}
+
+@media only screen and (min-width: 576px) {
+ .container {
+ width: 560px;
+ max-width: 100%;
+ }
+}
+
+@media only screen and (min-width: 768px) {
+ .container {
+ width: 752px;
+ max-width: 100%;
+ }
+}
+
+@media only screen and (min-width: 992px) {
+ .container {
+ width: 976px;
+ max-width: 100%;
+ }
+}
+
+@media only screen and (min-width: 1200px) {
+ .container {
+ width: 1184px;
+ max-width: 100%;
+ }
+}
+
+.row {
+ box-sizing: border-box;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 1 auto;
+ flex: 0 1 auto;
+ -webkit-box-orient: horizontal;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: row;
+ flex-direction: row;
+ -ms-flex-wrap: wrap;
+ flex-wrap: wrap;
+ margin-right: -8px;
+ margin-left: -8px;
+}
+
+.row.reverse {
+ -webkit-box-orient: horizontal;
+ -webkit-box-direction: reverse;
+ -ms-flex-direction: row-reverse;
+ flex-direction: row-reverse;
+}
+
+.col.reverse {
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: reverse;
+ -ms-flex-direction: column-reverse;
+ flex-direction: column-reverse;
+}
+
+[class^="col-"] {
+ box-sizing: border-box;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ padding-right: 8px;
+ padding-left: 8px;
+ max-width: 100%;
+}
+
+.col-xs {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+}
+
+.col-xs-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+}
+
+.col-xs-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+}
+
+.col-xs-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+}
+
+.col-xs-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+}
+
+.col-xs-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+}
+
+.col-xs-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+}
+
+.col-xs-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+}
+
+.col-xs-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+}
+
+.col-xs-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+}
+
+.col-xs-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+}
+
+.col-xs-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+}
+
+.col-xs-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+}
+
+.col-xs-offset-0 {
+ margin-left: 0;
+}
+
+.col-xs-offset-1 {
+ margin-left: 8.33333333%;
+}
+
+.col-xs-offset-2 {
+ margin-left: 16.66666667%;
+}
+
+.col-xs-offset-3 {
+ margin-left: 25%;
+}
+
+.col-xs-offset-4 {
+ margin-left: 33.33333333%;
+}
+
+.col-xs-offset-5 {
+ margin-left: 41.66666667%;
+}
+
+.col-xs-offset-6 {
+ margin-left: 50%;
+}
+
+.col-xs-offset-7 {
+ margin-left: 58.33333333%;
+}
+
+.col-xs-offset-8 {
+ margin-left: 66.66666667%;
+}
+
+.col-xs-offset-9 {
+ margin-left: 75%;
+}
+
+.col-xs-offset-10 {
+ margin-left: 83.33333333%;
+}
+
+.col-xs-offset-11 {
+ margin-left: 91.66666667%;
+}
+
+.start-xs {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+}
+
+.center-xs {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+}
+
+.end-xs {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+}
+
+.top-xs {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+}
+
+.middle-xs {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+}
+
+.bottom-xs {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+}
+
+.around-xs {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+}
+
+.between-xs {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+}
+
+.first-xs {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+}
+
+.last-xs {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+}
+
+.initial-order-xs {
+ -webkit-box-ordinal-group: NaN;
+ -ms-flex-order: initial;
+ order: initial;
+}
+
+@media only screen and (min-width: 576px) {
+ .col-sm {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+ }
+
+ .col-sm-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+ }
+
+ .col-sm-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+ }
+
+ .col-sm-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+ }
+
+ .col-sm-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+ }
+
+ .col-sm-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+ }
+
+ .col-sm-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+ }
+
+ .col-sm-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+ }
+
+ .col-sm-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+ }
+
+ .col-sm-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+ }
+
+ .col-sm-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+ }
+
+ .col-sm-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+ }
+
+ .col-sm-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+ }
+
+ .col-sm-offset-0 {
+ margin-left: 0;
+ }
+
+ .col-sm-offset-1 {
+ margin-left: 8.33333333%;
+ }
+
+ .col-sm-offset-2 {
+ margin-left: 16.66666667%;
+ }
+
+ .col-sm-offset-3 {
+ margin-left: 25%;
+ }
+
+ .col-sm-offset-4 {
+ margin-left: 33.33333333%;
+ }
+
+ .col-sm-offset-5 {
+ margin-left: 41.66666667%;
+ }
+
+ .col-sm-offset-6 {
+ margin-left: 50%;
+ }
+
+ .col-sm-offset-7 {
+ margin-left: 58.33333333%;
+ }
+
+ .col-sm-offset-8 {
+ margin-left: 66.66666667%;
+ }
+
+ .col-sm-offset-9 {
+ margin-left: 75%;
+ }
+
+ .col-sm-offset-10 {
+ margin-left: 83.33333333%;
+ }
+
+ .col-sm-offset-11 {
+ margin-left: 91.66666667%;
+ }
+
+ .start-sm {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+ }
+
+ .center-sm {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+ }
+
+ .end-sm {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+ }
+
+ .top-sm {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+ }
+
+ .middle-sm {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ }
+
+ .bottom-sm {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+ }
+
+ .around-sm {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ }
+
+ .between-sm {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ }
+
+ .first-sm {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+ }
+
+ .last-sm {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+ }
+
+ .initial-order-sm {
+ -webkit-box-ordinal-group: NaN;
+ -ms-flex-order: initial;
+ order: initial;
+ }
+}
+
+@media only screen and (min-width: 768px) {
+ .col-md,
+ .col-md-1,
+ .col-md-2,
+ .col-md-3,
+ .col-md-4,
+ .col-md-5,
+ .col-md-6,
+ .col-md-7,
+ .col-md-8,
+ .col-md-9,
+ .col-md-10,
+ .col-md-11,
+ .col-md-12,
+ .col-md-offset-0,
+ .col-md-offset-1,
+ .col-md-offset-2,
+ .col-md-offset-3,
+ .col-md-offset-4,
+ .col-md-offset-5,
+ .col-md-offset-6,
+ .col-md-offset-7,
+ .col-md-offset-8,
+ .col-md-offset-9,
+ .col-md-offset-10,
+ .col-md-offset-11,
+ .col-md-offset-12 {
+ box-sizing: border-box;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ padding-right: 8px;
+ padding-left: 8px;
+ }
+
+ .col-md {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+ }
+
+ .col-md-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+ }
+
+ .col-md-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+ }
+
+ .col-md-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+ }
+
+ .col-md-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+ }
+
+ .col-md-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+ }
+
+ .col-md-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+ }
+
+ .col-md-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+ }
+
+ .col-md-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+ }
+
+ .col-md-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+ }
+
+ .col-md-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+ }
+
+ .col-md-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+ }
+
+ .col-md-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+ }
+
+ .col-md-offset-0 {
+ margin-left: 0;
+ }
+
+ .col-md-offset-1 {
+ margin-left: 8.33333333%;
+ }
+
+ .col-md-offset-2 {
+ margin-left: 16.66666667%;
+ }
+
+ .col-md-offset-3 {
+ margin-left: 25%;
+ }
+
+ .col-md-offset-4 {
+ margin-left: 33.33333333%;
+ }
+
+ .col-md-offset-5 {
+ margin-left: 41.66666667%;
+ }
+
+ .col-md-offset-6 {
+ margin-left: 50%;
+ }
+
+ .col-md-offset-7 {
+ margin-left: 58.33333333%;
+ }
+
+ .col-md-offset-8 {
+ margin-left: 66.66666667%;
+ }
+
+ .col-md-offset-9 {
+ margin-left: 75%;
+ }
+
+ .col-md-offset-10 {
+ margin-left: 83.33333333%;
+ }
+
+ .col-md-offset-11 {
+ margin-left: 91.66666667%;
+ }
+
+ .start-md {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+ }
+
+ .center-md {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+ }
+
+ .end-md {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+ }
+
+ .top-md {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+ }
+
+ .middle-md {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ }
+
+ .bottom-md {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+ }
+
+ .around-md {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ }
+
+ .between-md {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ }
+
+ .first-md {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+ }
+
+ .last-md {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+ }
+
+ .initial-order-md {
+ -webkit-box-ordinal-group: NaN;
+ -ms-flex-order: initial;
+ order: initial;
+ }
+}
+
+@media only screen and (min-width: 992px) {
+ .col-lg,
+ .col-lg-1,
+ .col-lg-2,
+ .col-lg-3,
+ .col-lg-4,
+ .col-lg-5,
+ .col-lg-6,
+ .col-lg-7,
+ .col-lg-8,
+ .col-lg-9,
+ .col-lg-10,
+ .col-lg-11,
+ .col-lg-12,
+ .col-lg-offset-0,
+ .col-lg-offset-1,
+ .col-lg-offset-2,
+ .col-lg-offset-3,
+ .col-lg-offset-4,
+ .col-lg-offset-5,
+ .col-lg-offset-6,
+ .col-lg-offset-7,
+ .col-lg-offset-8,
+ .col-lg-offset-9,
+ .col-lg-offset-10,
+ .col-lg-offset-11,
+ .col-lg-offset-12 {
+ box-sizing: border-box;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ padding-right: 8px;
+ padding-left: 8px;
+ }
+
+ .col-lg {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+ }
+
+ .col-lg-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+ }
+
+ .col-lg-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+ }
+
+ .col-lg-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+ }
+
+ .col-lg-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+ }
+
+ .col-lg-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+ }
+
+ .col-lg-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+ }
+
+ .col-lg-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+ }
+
+ .col-lg-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+ }
+
+ .col-lg-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+ }
+
+ .col-lg-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+ }
+
+ .col-lg-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+ }
+
+ .col-lg-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+ }
+
+ .col-lg-offset-0 {
+ margin-left: 0;
+ }
+
+ .col-lg-offset-1 {
+ margin-left: 8.33333333%;
+ }
+
+ .col-lg-offset-2 {
+ margin-left: 16.66666667%;
+ }
+
+ .col-lg-offset-3 {
+ margin-left: 25%;
+ }
+
+ .col-lg-offset-4 {
+ margin-left: 33.33333333%;
+ }
+
+ .col-lg-offset-5 {
+ margin-left: 41.66666667%;
+ }
+
+ .col-lg-offset-6 {
+ margin-left: 50%;
+ }
+
+ .col-lg-offset-7 {
+ margin-left: 58.33333333%;
+ }
+
+ .col-lg-offset-8 {
+ margin-left: 66.66666667%;
+ }
+
+ .col-lg-offset-9 {
+ margin-left: 75%;
+ }
+
+ .col-lg-offset-10 {
+ margin-left: 83.33333333%;
+ }
+
+ .col-lg-offset-11 {
+ margin-left: 91.66666667%;
+ }
+
+ .start-lg {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+ }
+
+ .center-lg {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+ }
+
+ .end-lg {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+ }
+
+ .top-lg {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+ }
+
+ .middle-lg {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ }
+
+ .bottom-lg {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+ }
+
+ .around-lg {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ }
+
+ .between-lg {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ }
+
+ .first-lg {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+ }
+
+ .last-lg {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+ }
+
+ .initial-order-lg {
+ -webkit-box-ordinal-group: NaN;
+ -ms-flex-order: initial;
+ order: initial;
+ }
+}
+
+@media only screen and (min-width: 1200px) {
+ .col-xl,
+ .col-xl-1,
+ .col-xl-2,
+ .col-xl-3,
+ .col-xl-4,
+ .col-xl-5,
+ .col-xl-6,
+ .col-xl-7,
+ .col-xl-8,
+ .col-xl-9,
+ .col-xl-10,
+ .col-xl-11,
+ .col-xl-12,
+ .col-xl-offset-0,
+ .col-xl-offset-1,
+ .col-xl-offset-2,
+ .col-xl-offset-3,
+ .col-xl-offset-4,
+ .col-xl-offset-5,
+ .col-xl-offset-6,
+ .col-xl-offset-7,
+ .col-xl-offset-8,
+ .col-xl-offset-9,
+ .col-xl-offset-10,
+ .col-xl-offset-11,
+ .col-xl-offset-12 {
+ box-sizing: border-box;
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 auto;
+ flex: 0 0 auto;
+ padding-right: 8px;
+ padding-left: 8px;
+ }
+
+ .col-xl {
+ -webkit-box-flex: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -ms-flex-preferred-size: 0;
+ flex-basis: 0;
+ max-width: 100%;
+ }
+
+ .col-xl-1 {
+ -ms-flex-preferred-size: 8.33333333%;
+ flex-basis: 8.33333333%;
+ max-width: 8.33333333%;
+ }
+
+ .col-xl-2 {
+ -ms-flex-preferred-size: 16.66666667%;
+ flex-basis: 16.66666667%;
+ max-width: 16.66666667%;
+ }
+
+ .col-xl-3 {
+ -ms-flex-preferred-size: 25%;
+ flex-basis: 25%;
+ max-width: 25%;
+ }
+
+ .col-xl-4 {
+ -ms-flex-preferred-size: 33.33333333%;
+ flex-basis: 33.33333333%;
+ max-width: 33.33333333%;
+ }
+
+ .col-xl-5 {
+ -ms-flex-preferred-size: 41.66666667%;
+ flex-basis: 41.66666667%;
+ max-width: 41.66666667%;
+ }
+
+ .col-xl-6 {
+ -ms-flex-preferred-size: 50%;
+ flex-basis: 50%;
+ max-width: 50%;
+ }
+
+ .col-xl-7 {
+ -ms-flex-preferred-size: 58.33333333%;
+ flex-basis: 58.33333333%;
+ max-width: 58.33333333%;
+ }
+
+ .col-xl-8 {
+ -ms-flex-preferred-size: 66.66666667%;
+ flex-basis: 66.66666667%;
+ max-width: 66.66666667%;
+ }
+
+ .col-xl-9 {
+ -ms-flex-preferred-size: 75%;
+ flex-basis: 75%;
+ max-width: 75%;
+ }
+
+ .col-xl-10 {
+ -ms-flex-preferred-size: 83.33333333%;
+ flex-basis: 83.33333333%;
+ max-width: 83.33333333%;
+ }
+
+ .col-xl-11 {
+ -ms-flex-preferred-size: 91.66666667%;
+ flex-basis: 91.66666667%;
+ max-width: 91.66666667%;
+ }
+
+ .col-xl-12 {
+ -ms-flex-preferred-size: 100%;
+ flex-basis: 100%;
+ max-width: 100%;
+ }
+
+ .col-xl-offset-0 {
+ margin-left: 0;
+ }
+
+ .col-xl-offset-1 {
+ margin-left: 8.33333333%;
+ }
+
+ .col-xl-offset-2 {
+ margin-left: 16.66666667%;
+ }
+
+ .col-xl-offset-3 {
+ margin-left: 25%;
+ }
+
+ .col-xl-offset-4 {
+ margin-left: 33.33333333%;
+ }
+
+ .col-xl-offset-5 {
+ margin-left: 41.66666667%;
+ }
+
+ .col-xl-offset-6 {
+ margin-left: 50%;
+ }
+
+ .col-xl-offset-7 {
+ margin-left: 58.33333333%;
+ }
+
+ .col-xl-offset-8 {
+ margin-left: 66.66666667%;
+ }
+
+ .col-xl-offset-9 {
+ margin-left: 75%;
+ }
+
+ .col-xl-offset-10 {
+ margin-left: 83.33333333%;
+ }
+
+ .col-xl-offset-11 {
+ margin-left: 91.66666667%;
+ }
+
+ .start-xl {
+ -webkit-box-pack: start;
+ -ms-flex-pack: start;
+ justify-content: flex-start;
+ text-align: start;
+ }
+
+ .center-xl {
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ text-align: center;
+ }
+
+ .end-xl {
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ text-align: end;
+ }
+
+ .top-xl {
+ -webkit-box-align: start;
+ -ms-flex-align: start;
+ align-items: flex-start;
+ }
+
+ .middle-xl {
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ }
+
+ .bottom-xl {
+ -webkit-box-align: end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+ }
+
+ .around-xl {
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ }
+
+ .between-xl {
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ }
+
+ .first-xl {
+ -webkit-box-ordinal-group: 0;
+ -ms-flex-order: -1;
+ order: -1;
+ }
+
+ .last-xl {
+ -webkit-box-ordinal-group: 2;
+ -ms-flex-order: 1;
+ order: 1;
+ }
+
+ .initial-order-xl {
+ -webkit-box-ordinal-group: NaN;
+ -ms-flex-order: initial;
+ order: initial;
+ }
+}
+
+@media only screen and (max-width: 575px) {
+ .hidden-xs {
+ display: none;
+ }
+}
+
+@media only screen and (min-width: 576px) and (max-width: 767px) {
+ .hidden-sm {
+ display: none;
+ }
+}
+
+@media only screen and (min-width: 768px) and (max-width: 991px) {
+ .hidden-md {
+ display: none;
+ }
+}
+
+@media only screen and (min-width: 992px) and (max-width: 1199px) {
+ .hidden-lg {
+ display: none;
+ }
+}
+
+@media only screen and (min-width: 1200px) {
+ .hidden-xl {
+ display: none;
+ }
+}
\ No newline at end of file
diff --git a/src/themes/catalog/extensions/example/index.js b/src/themes/catalog/extensions/example/index.js
new file mode 100644
index 0000000000..1a6190504f
--- /dev/null
+++ b/src/themes/catalog/extensions/example/index.js
@@ -0,0 +1,8 @@
+const EXTENSION_KEY = 'theme_default_example'
+
+export default function (app, router, store, config) {
+ app.$on('application-after-init', () => {
+ console.log('Hello from custom theme extension')
+ })
+ return { EXTENSION_KEY, extensionRoutes: null, extensionStore: null }
+}
diff --git a/src/themes/catalog/extensions/index.js b/src/themes/catalog/extensions/index.js
new file mode 100644
index 0000000000..f14296c8bf
--- /dev/null
+++ b/src/themes/catalog/extensions/index.js
@@ -0,0 +1,8 @@
+// Custom theme related extensions goes here
+//
+// if you need to have BABEL applied to extensions inside node_modules
+// (by default excluded from BABEL) please add ".js" file ext inside require
+
+export default [
+ require('theme/extensions/example/index.js')
+]
diff --git a/src/themes/catalog/index.template.html b/src/themes/catalog/index.template.html
new file mode 100755
index 0000000000..85645a87c1
--- /dev/null
+++ b/src/themes/catalog/index.template.html
@@ -0,0 +1,31 @@
+
+
+
+ {{{ meta.inject().title.text() }}}
+ {{{ meta.inject().meta.text() }}}
+ {{{ meta.inject().link.text() }}}
+
+
+
+ <% for (var chunk of webpack.chunks) {
+ for (var file of chunk.files) {
+ if (file.match(/\.(js|css)$/)) { %>
+ <% }}} %>
+
+
+
+
+
diff --git a/src/themes/catalog/resource/head.js b/src/themes/catalog/resource/head.js
index d6bbf33ce9..79ff8608e8 100644
--- a/src/themes/catalog/resource/head.js
+++ b/src/themes/catalog/resource/head.js
@@ -16,9 +16,6 @@ export default {
{ rel: 'icon', href: '/assets/logo.png' },
{ rel: 'apple-touch-startup-image', href: '/assets/launcher-icon-2x.png' },
{ rel: 'apple-touch-icon', href: '/assets/launcher-icon-1x.png' },
- { rel: 'manifest', href: '/assets/manifest.json' },
- { rel: 'stylesheet', href: 'https://unpkg.com/flexboxgrid2@7.1.0/flexboxgrid2.css' },
- { rel: 'stylesheet', href: 'https://fonts.googleapis.com/icon?family=Material+Icons' },
- { rel: 'stylesheet', href: 'https://fonts.googleapis.com/css?family=Montserrat:300,400,400i,500,600,700,800' }
+ { rel: 'manifest', href: '/assets/manifest.json' }
]
}
diff --git a/src/themes/default/assets/collection.jpg b/src/themes/default/assets/collection.jpg
index 728777dd50..e7920940a5 100644
Binary files a/src/themes/default/assets/collection.jpg and b/src/themes/default/assets/collection.jpg differ
diff --git a/src/themes/default/assets/fonts/MaterialIcons-Regular.woff b/src/themes/default/assets/fonts/MaterialIcons-Regular.woff
new file mode 100644
index 0000000000..b648a3eea2
Binary files /dev/null and b/src/themes/default/assets/fonts/MaterialIcons-Regular.woff differ
diff --git a/src/themes/default/assets/fonts/MaterialIcons-Regular.woff2 b/src/themes/default/assets/fonts/MaterialIcons-Regular.woff2
new file mode 100644
index 0000000000..9fa2112520
Binary files /dev/null and b/src/themes/default/assets/fonts/MaterialIcons-Regular.woff2 differ
diff --git a/src/themes/default/assets/ig/ig01.jpg b/src/themes/default/assets/ig/ig01.jpg
old mode 100755
new mode 100644
index 7d9a80d9a3..55f0cc50f7
Binary files a/src/themes/default/assets/ig/ig01.jpg and b/src/themes/default/assets/ig/ig01.jpg differ
diff --git a/src/themes/default/assets/ig/ig02.jpg b/src/themes/default/assets/ig/ig02.jpg
old mode 100755
new mode 100644
index f6e36a0ae7..a2334f2950
Binary files a/src/themes/default/assets/ig/ig02.jpg and b/src/themes/default/assets/ig/ig02.jpg differ
diff --git a/src/themes/default/assets/ig/ig03.jpg b/src/themes/default/assets/ig/ig03.jpg
old mode 100755
new mode 100644
index 5936648153..4a8ec81d90
Binary files a/src/themes/default/assets/ig/ig03.jpg and b/src/themes/default/assets/ig/ig03.jpg differ
diff --git a/src/themes/default/assets/ig/ig04.jpg b/src/themes/default/assets/ig/ig04.jpg
old mode 100755
new mode 100644
index 642cbb0bb7..4d70bfe878
Binary files a/src/themes/default/assets/ig/ig04.jpg and b/src/themes/default/assets/ig/ig04.jpg differ
diff --git a/src/themes/default/assets/ig/ig05.jpg b/src/themes/default/assets/ig/ig05.jpg
old mode 100755
new mode 100644
index 014b61af41..90c3d9efb8
Binary files a/src/themes/default/assets/ig/ig05.jpg and b/src/themes/default/assets/ig/ig05.jpg differ
diff --git a/src/themes/default/assets/ig/ig06.jpg b/src/themes/default/assets/ig/ig06.jpg
old mode 100755
new mode 100644
index d9d4a14fa3..d1f4f89d25
Binary files a/src/themes/default/assets/ig/ig06.jpg and b/src/themes/default/assets/ig/ig06.jpg differ
diff --git a/core/assets/manifest.json b/src/themes/default/assets/manifest.json
similarity index 100%
rename from core/assets/manifest.json
rename to src/themes/default/assets/manifest.json
diff --git a/src/themes/default/assets/slide_01.jpg b/src/themes/default/assets/slide_01.jpg
index cd8a551223..2b247d0627 100644
Binary files a/src/themes/default/assets/slide_01.jpg and b/src/themes/default/assets/slide_01.jpg differ
diff --git a/src/themes/default/assets/slide_02.jpg b/src/themes/default/assets/slide_02.jpg
index 9a2fb45dea..fb1ad962e6 100644
Binary files a/src/themes/default/assets/slide_02.jpg and b/src/themes/default/assets/slide_02.jpg differ
diff --git a/src/themes/default/assets/slide_03.jpg b/src/themes/default/assets/slide_03.jpg
index 69f4ade60a..447ff96209 100644
Binary files a/src/themes/default/assets/slide_03.jpg and b/src/themes/default/assets/slide_03.jpg differ
diff --git a/src/themes/default/components/core/Breadcrumbs.vue b/src/themes/default/components/core/Breadcrumbs.vue
index b249c4fe79..01a777b606 100644
--- a/src/themes/default/components/core/Breadcrumbs.vue
+++ b/src/themes/default/components/core/Breadcrumbs.vue
@@ -1,5 +1,5 @@
-
+
{{ link.name | htmlDecode }}
diff --git a/src/themes/default/components/core/GenericSelector.vue b/src/themes/default/components/core/GenericSelector.vue
new file mode 100644
index 0000000000..d359ec62a4
--- /dev/null
+++ b/src/themes/default/components/core/GenericSelector.vue
@@ -0,0 +1,52 @@
+
+
+ {{ label }}
+
+
+
+
+
+
+
diff --git a/src/themes/default/components/core/NewsletterPopup.vue b/src/themes/default/components/core/NewsletterPopup.vue
index ff0dc6da99..843bbb7b6a 100644
--- a/src/themes/default/components/core/NewsletterPopup.vue
+++ b/src/themes/default/components/core/NewsletterPopup.vue
@@ -69,7 +69,7 @@ export default {
this.$bus.$emit('notification', {
type: 'error',
message: i18n.t('Please fix the validation errors'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
return
}
@@ -80,7 +80,7 @@ export default {
this.$bus.$emit('notification', {
type: 'success',
message: i18n.t('You have been successfully subscribed to our newsletter!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
this.$bus.$emit('modal-hide', 'modal-newsletter')
diff --git a/src/themes/default/components/core/Notification.vue b/src/themes/default/components/core/Notification.vue
index 57a5e43b47..7d0d771fec 100644
--- a/src/themes/default/components/core/Notification.vue
+++ b/src/themes/default/components/core/Notification.vue
@@ -15,11 +15,20 @@
{{ notification.message }}
-
- {{ notification.action1.label }}
+
+
+ {{ notification.action1.label }}
+
+
+ {{ notification.action2.label }}
+
@@ -71,8 +80,10 @@ $color-action: color(black);
margin-top: 0;
}
}
+
.actions {
background: rgba($color-action, .2);
+ display: flex;
}
.success {
background: $color-success;
diff --git a/src/themes/default/components/core/OfflineBadge.vue b/src/themes/default/components/core/OfflineBadge.vue
index 1e13f251b1..61b61357ca 100644
--- a/src/themes/default/components/core/OfflineBadge.vue
+++ b/src/themes/default/components/core/OfflineBadge.vue
@@ -1,20 +1,23 @@
-
- {{ $t('You are offline, some of the functionalities are limited') }}
-
+
+
+ {{ $t('You are offline, some of the functionalities are limited') }}
+
+
-
+
+
diff --git a/src/themes/default/components/core/ProductLinks.vue b/src/themes/default/components/core/ProductLinks.vue
index 8553483c54..f61d1121c5 100644
--- a/src/themes/default/components/core/ProductLinks.vue
+++ b/src/themes/default/components/core/ProductLinks.vue
@@ -21,7 +21,7 @@
-
+
@@ -14,6 +14,7 @@
@@ -155,7 +136,6 @@ $color-white: color(white);
text-transform: uppercase;
color: $color-white;
font-size: 12px;
- font-weight: 400;
}
.product-image {
@@ -163,11 +143,16 @@ $color-white: color(white);
mix-blend-mode: multiply;
overflow: hidden;
transition: 0.3s all $motion-main;
+ max-height: 300px;
+
+ > div {
+ padding-top: 118%;
+ }
&:hover {
background-color: rgba($bg-secondary, .3);
- > img {
+ img {
transform: scale(1.1);
opacity: 1;
}
@@ -178,13 +163,18 @@ $color-white: color(white);
}
}
- > img {
+ img {
max-height: 100%;
- width: auto;
height: auto;
opacity: 0.8;
transition: 0.3s all $motion-main;
mix-blend-mode: multiply;
+ position: absolute;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
}
&.sale {
diff --git a/src/themes/default/components/core/ProductsSlider.vue b/src/themes/default/components/core/ProductsSlider.vue
index 98bd5d1d72..7a6504cde9 100644
--- a/src/themes/default/components/core/ProductsSlider.vue
+++ b/src/themes/default/components/core/ProductsSlider.vue
@@ -24,6 +24,7 @@
:product="product"
:class="{'is-muted': (currentPage == index || index == currentPage + 5)}"
:labels-active="false"
+ :instant="false"
/>
diff --git a/src/themes/default/components/core/blocks/Auth/ForgotPass.vue b/src/themes/default/components/core/blocks/Auth/ForgotPass.vue
index b6ffdfe7df..fee3b0a4f1 100644
--- a/src/themes/default/components/core/blocks/Auth/ForgotPass.vue
+++ b/src/themes/default/components/core/blocks/Auth/ForgotPass.vue
@@ -94,7 +94,7 @@ export default {
this.$bus.$emit('notification', {
type: 'error',
message: 'Please fix the validation errors',
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
return
}
@@ -108,7 +108,7 @@ export default {
this.$bus.$emit('notification', {
type: 'error',
message: i18n.t(response.result) || i18n.t('Error while sending reset password e-mail'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
}
}).catch((err) => {
diff --git a/src/themes/default/components/core/blocks/Auth/Login.vue b/src/themes/default/components/core/blocks/Auth/Login.vue
index 10008bb9d4..be73ff735b 100644
--- a/src/themes/default/components/core/blocks/Auth/Login.vue
+++ b/src/themes/default/components/core/blocks/Auth/Login.vue
@@ -109,7 +109,7 @@ export default {
this.$bus.$emit('notification', {
type: 'error',
message: i18n.t('Reset password feature does not work while offline!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
} else {
this.$store.commit('ui/setAuthElem', 'forgot-pass')
@@ -121,7 +121,7 @@ export default {
this.$bus.$emit('notification', {
type: 'error',
message: i18n.t('Please fix the validation errors'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
return
}
@@ -134,13 +134,13 @@ export default {
this.$bus.$emit('notification', {
type: 'error',
message: i18n.t(result.result),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
} else {
this.$bus.$emit('notification', {
type: 'success',
message: i18n.t('You are logged in!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
this.close()
}
diff --git a/src/themes/default/components/core/blocks/Auth/Register.vue b/src/themes/default/components/core/blocks/Auth/Register.vue
index 5ed4fb5eb8..35225dfe74 100644
--- a/src/themes/default/components/core/blocks/Auth/Register.vue
+++ b/src/themes/default/components/core/blocks/Auth/Register.vue
@@ -170,7 +170,7 @@ export default {
this.$bus.$emit('notification', {
type: 'error',
message: i18n.t('Please fix the validation errors'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
return
}
@@ -183,13 +183,13 @@ export default {
this.$bus.$emit('notification', {
type: 'error',
message: result.result,
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
} else {
this.$bus.$emit('notification', {
type: 'success',
message: i18n.t('You are logged in!'),
- action1: { label: 'OK', action: 'close' }
+ action1: { label: i18n.t('OK'), action: 'close' }
})
this.close()
}
diff --git a/src/themes/default/components/core/blocks/Category/Sidebar.vue b/src/themes/default/components/core/blocks/Category/Sidebar.vue
index 483eaf4a46..fe180bcda8 100644
--- a/src/themes/default/components/core/blocks/Category/Sidebar.vue
+++ b/src/themes/default/components/core/blocks/Category/Sidebar.vue
@@ -52,7 +52,7 @@
context="category"
:attribute_code="filter.attribute_code"
class="price-select mb10 block"
- code="price"
+ :code="filterIndex"
v-for="(option, index) in filter"
:key="index"
:id="option.id"
diff --git a/src/themes/default/components/core/blocks/Checkout/ThankYouPage.vue b/src/themes/default/components/core/blocks/Checkout/ThankYouPage.vue
index d9cd0ca0b3..eb9489d58d 100644
--- a/src/themes/default/components/core/blocks/Checkout/ThankYouPage.vue
+++ b/src/themes/default/components/core/blocks/Checkout/ThankYouPage.vue
@@ -6,10 +6,10 @@
{{ $t('Thank you for placing an order.') }}
-
+
{{ $t('Your order has been sent to the server and will be immediately processed') }}
-
+
{{ $t('Your order will be sent to the server as soon as you connect to the Internet and then confirmed regarding the stock quantities of selected items') }}
@@ -17,10 +17,10 @@
diff --git a/src/themes/default/components/core/blocks/Compare/RemoveButton.vue b/src/themes/default/components/core/blocks/Compare/RemoveButton.vue
index 9a67c4e619..ce0e00f415 100644
--- a/src/themes/default/components/core/blocks/Compare/RemoveButton.vue
+++ b/src/themes/default/components/core/blocks/Compare/RemoveButton.vue
@@ -1,5 +1,9 @@
-
+
close
diff --git a/src/themes/default/components/core/blocks/Header/AccountIcon.vue b/src/themes/default/components/core/blocks/Header/AccountIcon.vue
index d7249b8ad3..d703bf303c 100644
--- a/src/themes/default/components/core/blocks/Header/AccountIcon.vue
+++ b/src/themes/default/components/core/blocks/Header/AccountIcon.vue
@@ -1,67 +1,45 @@
-
-
+
+
account_circle
-
-
- {{ $t("You're logged in as ") }} {{ currentUser.firstname }}
-
-
-
-
- {{ $t('My account') }}
+
+
+
+
+
+ {{ page.title }}
-
+
+
-
+
diff --git a/src/themes/default/components/core/blocks/MyAccount/MyProfile.vue b/src/themes/default/components/core/blocks/MyAccount/MyProfile.vue
index b8793279b0..44ac0e3cb1 100644
--- a/src/themes/default/components/core/blocks/MyAccount/MyProfile.vue
+++ b/src/themes/default/components/core/blocks/MyAccount/MyProfile.vue
@@ -224,7 +224,7 @@
{{ $t('Country *') }}
@@ -233,6 +233,7 @@
v-for="country in countries"
:key="country.code"
:value="country.code"
+ class="cl-black"
>
{{ country.name }}
@@ -375,7 +376,7 @@ export default {
},
postcode: {
required,
- minLength: minLength(3)
+ minLength: minLength(5)
},
city: {
required
diff --git a/src/themes/default/components/core/blocks/MyAccount/MyShippingDetails.vue b/src/themes/default/components/core/blocks/MyAccount/MyShippingDetails.vue
index 0c73002995..16e2732418 100644
--- a/src/themes/default/components/core/blocks/MyAccount/MyShippingDetails.vue
+++ b/src/themes/default/components/core/blocks/MyAccount/MyShippingDetails.vue
@@ -21,152 +21,165 @@
-
+
+
-
+
-
- {{ $t("Use my company's address details") }}
-
+
+ {{ $t("Use my company's address details") }}
+
-
+
-
+
-
+
-
+
-
+
-
-
-
- {{ $t('Country') }}
-
-
+
- {{ country.name }}
-
-
-
- {{ $t('Field is required') }}
-
-
+
+ {{ `${$t('Country')} *` }}
+
+
+ {{ country.name }}
+
+
+
+ {{ $t('Field is required') }}
+
+
-
+
-
+
-
-
- {{ $t('Update my shipping details') }}
-
-
-
+
+
+ {{ $t('Update my shipping details') }}
+
+
+
+
diff --git a/src/themes/default/components/core/blocks/Product/Related.vue b/src/themes/default/components/core/blocks/Product/Related.vue
index 3cf5634085..eb60d38eab 100644
--- a/src/themes/default/components/core/blocks/Product/Related.vue
+++ b/src/themes/default/components/core/blocks/Product/Related.vue
@@ -45,8 +45,8 @@ export default {
beforeMount () {
let store = this.$store
let inst = this
- let byErinRecommends = builder().query('match', 'erin_recommends', '1').andFilter('range', 'visibility', { 'gte': 3, 'lte': 4 }/** Magento visibility in search & categories */).build()
- let byCategoryQuery = builder().query('terms', 'category.category_id', this.product.category.map((cat) => { return cat.category_id })).andFilter('range', 'visibility', { 'gte': 3, 'lte': 4 }/** Magento visibility in search & categories */).build()
+ let byErinRecommends = builder().query('match', 'erin_recommends', '1').andFilter('range', 'visibility', { 'gte': 2, 'lte': 4 }/** Magento visibility in search & categories */).build()
+ let byCategoryQuery = builder().query('terms', 'category.category_id', this.product.category.map((cat) => { return cat.category_id })).andFilter('range', 'visibility', { 'gte': 2, 'lte': 4 }/** Magento visibility in search & categories */).build()
store.dispatch('product/list', {
query: byErinRecommends,
size: 8,
diff --git a/src/themes/default/components/core/blocks/SidebarMenu/SidebarMenu.vue b/src/themes/default/components/core/blocks/SidebarMenu/SidebarMenu.vue
index aa1f754dad..43f02fa1cd 100644
--- a/src/themes/default/components/core/blocks/SidebarMenu/SidebarMenu.vue
+++ b/src/themes/default/components/core/blocks/SidebarMenu/SidebarMenu.vue
@@ -1,17 +1,14 @@