diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index 219985c2..00000000 --- a/.editorconfig +++ /dev/null @@ -1,20 +0,0 @@ -# EditorConfig helps developers define and maintain consistent -# coding styles between different editors and IDEs -# editorconfig.org - -root = true - - -[*] -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true -indent_style = space -indent_size = 2 - -[*.hbs] -insert_final_newline = false - -[*.{diff,md}] -trim_trailing_whitespace = false diff --git a/.ember-cli b/.ember-cli deleted file mode 100644 index ee64cfed..00000000 --- a/.ember-cli +++ /dev/null @@ -1,9 +0,0 @@ -{ - /** - Ember CLI sends analytics information by default. The data is completely - anonymous, but there are times when you might want to disable this behavior. - - Setting `disableAnalytics` to true will prevent any data from being sent. - */ - "disableAnalytics": false -} diff --git a/.ember-cli.example b/.ember-cli.example deleted file mode 100644 index ee64cfed..00000000 --- a/.ember-cli.example +++ /dev/null @@ -1,9 +0,0 @@ -{ - /** - Ember CLI sends analytics information by default. The data is completely - anonymous, but there are times when you might want to disable this behavior. - - Setting `disableAnalytics` to true will prevent any data from being sent. - */ - "disableAnalytics": false -} diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index 2873e2fc..00000000 --- a/.eslintrc.js +++ /dev/null @@ -1,13 +0,0 @@ -module.exports = { - root: true, - parserOptions: { - ecmaVersion: 2017, - sourceType: 'module' - }, - extends: 'eslint:recommended', - env: { - browser: true - }, - rules: { - } -}; diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 8fa39a63..00000000 --- a/.gitignore +++ /dev/null @@ -1,23 +0,0 @@ -# See https://help.github.com/ignore-files/ for more about ignoring files. - -# compiled output -/dist -/tmp - -# dependencies -/node_modules -/bower_components - -# misc -/.sass-cache -/connect.lock -/coverage/* -/libpeerconnection.log -npm-debug.log* -yarn-error.log -testem.log - -# ember-try -.node_modules.ember-try/ -bower.json.ember-try -package.json.ember-try diff --git a/.jshintrc b/.jshintrc deleted file mode 100644 index fedc18ea..00000000 --- a/.jshintrc +++ /dev/null @@ -1,33 +0,0 @@ -{ - "predef": [ - "document", - "requirejs", - "window", - "-Promise" - ], - "browser": true, - "boss": true, - "curly": true, - "debug": false, - "devel": true, - "eqeqeq": true, - "evil": true, - "forin": false, - "immed": false, - "laxbreak": false, - "newcap": true, - "noarg": true, - "noempty": false, - "nonew": false, - "nomen": false, - "onevar": false, - "plusplus": false, - "regexp": false, - "undef": true, - "sub": true, - "strict": false, - "white": false, - "eqnull": true, - "esversion": 6, - "unused": true -} diff --git a/.npmignore b/.npmignore deleted file mode 100644 index e07b0783..00000000 --- a/.npmignore +++ /dev/null @@ -1,21 +0,0 @@ -/bower_components -/config/ember-try.js -/dist -/tests -/tmp -**/.gitkeep -.bowerrc -.editorconfig -.ember-cli -.gitignore -.eslintrc.js -.watchmanconfig -.travis.yml -bower.json -ember-cli-build.js -testem.js - -# ember-try -.node_modules.ember-try/ -bower.json.ember-try -package.json.ember-try diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 68817b27..00000000 --- a/.travis.yml +++ /dev/null @@ -1,47 +0,0 @@ ---- -language: node_js -node_js: - - "4" - -sudo: required -dist: trusty - -addons: - chrome: stable - -cache: - directories: - - $HOME/.npm - -env: - global: - # See https://git.io/vdao3 for details. - - JOBS=1 - matrix: - # we recommend testing LTS's and latest stable release (bonus points to beta/canary) - - EMBER_TRY_SCENARIO=ember-lts-2.4 - - EMBER_TRY_SCENARIO=ember-lts-2.8 - - EMBER_TRY_SCENARIO=ember-lts-2.12 - - EMBER_TRY_SCENARIO=ember-lts-2.16 - - EMBER_TRY_SCENARIO=ember-release - - EMBER_TRY_SCENARIO=ember-beta - - EMBER_TRY_SCENARIO=ember-canary - - EMBER_TRY_SCENARIO=ember-default - -matrix: - fast_finish: true - allow_failures: - - env: EMBER_TRY_SCENARIO=ember-canary - -before_install: - - npm config set spin false - - npm install -g npm@4 - - npm --version - -install: - - npm install - -script: - # Usually, it's ok to finish the test scenario without reverting - # to the addon's original dependency state, skipping "cleanup". - - node_modules/.bin/ember try:one $EMBER_TRY_SCENARIO --skip-cleanup diff --git a/.watchmanconfig b/.watchmanconfig deleted file mode 100644 index e7834e3e..00000000 --- a/.watchmanconfig +++ /dev/null @@ -1,3 +0,0 @@ -{ - "ignore_dirs": ["tmp", "dist"] -} diff --git a/Changelog.md b/Changelog.md index e0b5332f..93a4a08a 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,3 +1,5 @@ +This library has been deprecated in favor of [ember-intl][https://github.com/ember-intl/ember-intl] + ## 5.2.0 * Added support for default locale fallback with a new configuration named `defaultFallback` ## 5.1.0 diff --git a/README.md b/README.md index 34ff0bc5..00c8476c 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,3 @@ ## Ember-I18n - Internationalization for Ember -[![Build Status](https://travis-ci.org/jamesarosen/ember-i18n.svg?branch=master)](https://travis-ci.org/jamesarosen/ember-i18n) - -Documentation is in the [wiki](https://github.com/jamesarosen/ember-i18n/wiki). Recommended reading: - - * [Installation](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-Installation) - * [Defining Translations](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-Defining-Translations) - * The [service:i18n](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-i18n-Service) object - * [Setting the Locale](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-Setting-the-Locale) - * [Translating Text](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-Translating-Text) - * [Pluralization](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-Pluralization) - * The [Translation Compiler](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-Translation-Compiler) - * [Missing Translations](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-Missing-Translations) - * [Testing with ember-i18n](https://github.com/jamesarosen/ember-i18n/wiki/Doc:-Testing) +This library has been deprecated in favor of [ember-intl][https://github.com/ember-intl/ember-intl]. This repository will stay open until at least 2019-12-31. If you find security-related issues with released versions, please contact a maintainer directly, or, if that fails, open an issue. diff --git a/addon-test-support/-private/assert-translation.js b/addon-test-support/-private/assert-translation.js deleted file mode 100644 index d8432c51..00000000 --- a/addon-test-support/-private/assert-translation.js +++ /dev/null @@ -1,18 +0,0 @@ -/* globals QUnit, expect */ - -export default (function() { - if (typeof QUnit !== 'undefined' && typeof QUnit.assert.ok === 'function') { - return function(element, key, text) { - QUnit.assert.ok(document.querySelector(element).textContent.indexOf(text) !== -1, `Found translation key ${key} in ${element}`); - }; - } else if (typeof expect === 'function') { - return function(element, key, text) { - const found = !!(document.querySelector(element).textContent.indexOf(text) !== -1); - expect(found).to.equal(true); - }; - } else { - return function() { - throw new Error("ember-i18n could not find a compatible test framework"); - }; - } -}()); diff --git a/addon-test-support/-private/t.js b/addon-test-support/-private/t.js deleted file mode 100644 index 2dc0b49c..00000000 --- a/addon-test-support/-private/t.js +++ /dev/null @@ -1,4 +0,0 @@ -export default function (owner, key, interpolations) { - const i18n = owner.lookup('service:i18n'); - return i18n.t(key, interpolations); -} diff --git a/addon-test-support/index.js b/addon-test-support/index.js deleted file mode 100644 index 26067df9..00000000 --- a/addon-test-support/index.js +++ /dev/null @@ -1,14 +0,0 @@ -import { getContext } from '@ember/test-helpers'; -import _t from './-private/t'; -import _assertTranslation from './-private/assert-translation'; - -export function t(key, interpolations) { - let { owner } = getContext(); - return _t(owner, key, interpolations); -} - -export function expectTranslation(element, key, interpolations) { - let { owner } = getContext(); - let text = _t(owner, key, interpolations); - _assertTranslation(element, key, text); -} diff --git a/addon/config/ar.js b/addon/config/ar.js deleted file mode 100644 index 00d9d4f1..00000000 --- a/addon/config/ar.js +++ /dev/null @@ -1,16 +0,0 @@ -import { ZERO, ONE, TWO, FEW, MANY, OTHER } from './constants'; - -export default { - rtl: true, - - pluralForm(n) { - const mod100 = n % 100; - - if (n === 0) { return ZERO; } - if (n === 1) { return ONE; } - if (n === 2) { return TWO; } - if (mod100 >= 3 && mod100 <= 10) { return FEW; } - if (mod100 >= 11 && mod100 <= 99) { return MANY; } - return OTHER; - } -}; diff --git a/addon/config/bn.js b/addon/config/bn.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/bn.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/constants.js b/addon/config/constants.js deleted file mode 100644 index 6f9b18b2..00000000 --- a/addon/config/constants.js +++ /dev/null @@ -1,6 +0,0 @@ -export const ZERO = 'zero'; -export const ONE = 'one'; -export const TWO = 'two'; -export const FEW = 'few'; -export const MANY = 'many'; -export const OTHER = 'other'; diff --git a/addon/config/da.js b/addon/config/da.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/da.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/de.js b/addon/config/de.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/de.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/en.js b/addon/config/en.js deleted file mode 100644 index be7aa561..00000000 --- a/addon/config/en.js +++ /dev/null @@ -1,10 +0,0 @@ -import { ONE, OTHER } from "./constants"; - -export default { - rtl: false, - - pluralForm(n) { - if (n === 1) { return ONE; } - return OTHER; - } -}; diff --git a/addon/config/es.js b/addon/config/es.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/es.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/fa.js b/addon/config/fa.js deleted file mode 100644 index 9471e642..00000000 --- a/addon/config/fa.js +++ /dev/null @@ -1,2 +0,0 @@ -import zh from './zh'; -export default zh; diff --git a/addon/config/fr.js b/addon/config/fr.js deleted file mode 100644 index 0d5f39f8..00000000 --- a/addon/config/fr.js +++ /dev/null @@ -1,10 +0,0 @@ -import { ONE, OTHER } from "./constants"; - -export default { - rtl: false, - - pluralForm(n) { - if (n >= 0 && n < 2) { return ONE; } - return OTHER; - } -}; diff --git a/addon/config/fy.js b/addon/config/fy.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/fy.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/he.js b/addon/config/he.js deleted file mode 100644 index b7a11289..00000000 --- a/addon/config/he.js +++ /dev/null @@ -1,7 +0,0 @@ -import en from './en'; - -export default { - rtl: true, - - pluralForm: en.pluralForm -}; diff --git a/addon/config/hi.js b/addon/config/hi.js deleted file mode 100644 index 79feea6d..00000000 --- a/addon/config/hi.js +++ /dev/null @@ -1,11 +0,0 @@ -import { ONE, OTHER } from "./constants"; - -export default { - rtl: false, - - pluralForm(n) { - if (n === 0) { return ONE; } - if (n === 1) { return ONE; } - return OTHER; - } -}; diff --git a/addon/config/it.js b/addon/config/it.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/it.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/iw.js b/addon/config/iw.js deleted file mode 100644 index d5312032..00000000 --- a/addon/config/iw.js +++ /dev/null @@ -1,2 +0,0 @@ -import he from "./he"; -export default he; diff --git a/addon/config/ja.js b/addon/config/ja.js deleted file mode 100644 index 9471e642..00000000 --- a/addon/config/ja.js +++ /dev/null @@ -1,2 +0,0 @@ -import zh from './zh'; -export default zh; diff --git a/addon/config/jv.js b/addon/config/jv.js deleted file mode 100644 index 9471e642..00000000 --- a/addon/config/jv.js +++ /dev/null @@ -1,2 +0,0 @@ -import zh from './zh'; -export default zh; diff --git a/addon/config/ko.js b/addon/config/ko.js deleted file mode 100644 index 9471e642..00000000 --- a/addon/config/ko.js +++ /dev/null @@ -1,2 +0,0 @@ -import zh from './zh'; -export default zh; diff --git a/addon/config/mr.js b/addon/config/mr.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/mr.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/ms.js b/addon/config/ms.js deleted file mode 100644 index 9471e642..00000000 --- a/addon/config/ms.js +++ /dev/null @@ -1,2 +0,0 @@ -import zh from './zh'; -export default zh; diff --git a/addon/config/nl.js b/addon/config/nl.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/nl.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/no.js b/addon/config/no.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/no.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/pa.js b/addon/config/pa.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/pa.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/pl.js b/addon/config/pl.js deleted file mode 100644 index 4669ceea..00000000 --- a/addon/config/pl.js +++ /dev/null @@ -1,16 +0,0 @@ -import { ONE, FEW, MANY, OTHER } from './constants'; - -export default { - rtl: false, - - pluralForm(n) { - const mod1 = n % 1; - const mod10 = n % 10; - const mod100 = n % 100; - - if (n === 1) { return ONE; } - if (mod1 === 0 && (mod10 >= 2 && mod10 <= 4) && !(mod100 >= 12 && mod100 <= 14)) { return FEW; } - if (mod1 === 0 && (mod10 === 0 || mod10 === 1 || (mod10 >= 5 && mod10 <= 9) || (mod100 >= 12 && mod100 <= 14))) { return MANY; } - return OTHER; - } -}; diff --git a/addon/config/pt.js b/addon/config/pt.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/pt.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/ru.js b/addon/config/ru.js deleted file mode 100644 index 22ecafee..00000000 --- a/addon/config/ru.js +++ /dev/null @@ -1,16 +0,0 @@ -import { ONE, FEW, MANY, OTHER } from './constants'; - -export default { - rtl: false, - - pluralForm(n) { - const mod1 = n % 1; - const mod10 = n % 10; - const mod100 = n % 100; - - if (mod10 === 1 && mod100 !== 11) { return ONE; } - if (mod1 === 0 && (mod10 >= 2 && mod10 <= 4) && !(mod100 >= 12 && mod100 <= 14)) { return FEW; } - if (mod1 === 0 && (mod10 === 0 || (mod10 >= 5 && mod10 <= 9) || (mod100 >= 11 && mod100 <= 14))) { return MANY; } - return OTHER; - } -}; diff --git a/addon/config/sv.js b/addon/config/sv.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/sv.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/ta.js b/addon/config/ta.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/ta.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/te.js b/addon/config/te.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/te.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/tr.js b/addon/config/tr.js deleted file mode 100644 index 1e55d821..00000000 --- a/addon/config/tr.js +++ /dev/null @@ -1,9 +0,0 @@ -import { ONE } from './constants'; - -export default { - rtl: false, - - pluralForm() /* n */{ - return ONE; - } -}; diff --git a/addon/config/ur.js b/addon/config/ur.js deleted file mode 100644 index 5e49b62a..00000000 --- a/addon/config/ur.js +++ /dev/null @@ -1,2 +0,0 @@ -import en from './en'; -export default en; diff --git a/addon/config/vi.js b/addon/config/vi.js deleted file mode 100644 index 9471e642..00000000 --- a/addon/config/vi.js +++ /dev/null @@ -1,2 +0,0 @@ -import zh from './zh'; -export default zh; diff --git a/addon/config/x-i18n.js b/addon/config/x-i18n.js deleted file mode 100644 index e511334f..00000000 --- a/addon/config/x-i18n.js +++ /dev/null @@ -1,9 +0,0 @@ -import { OTHER } from './constants'; - -export default { - rtl: false, - - pluralForm() /* n */{ - return OTHER; - } -}; diff --git a/addon/config/zh.js b/addon/config/zh.js deleted file mode 100644 index e511334f..00000000 --- a/addon/config/zh.js +++ /dev/null @@ -1,9 +0,0 @@ -import { OTHER } from './constants'; - -export default { - rtl: false, - - pluralForm() /* n */{ - return OTHER; - } -}; diff --git a/addon/helper.js b/addon/helper.js deleted file mode 100644 index ff0e357e..00000000 --- a/addon/helper.js +++ /dev/null @@ -1,27 +0,0 @@ -import Ember from "ember"; - -const { get, inject, Helper, Object: EmberObject, observer } = Ember; - -function mergedContext(objectContext, hashContext) { - return EmberObject.create({ - unknownProperty(key) { - const fromHash = get(hashContext, key); - return fromHash === undefined ? get(objectContext, key) : fromHash; - } - }); -} - -export default Helper.extend({ - i18n: inject.service(), - - compute([key, contextObject = {}], interpolations) { - const mergedInterpolations = mergedContext(contextObject, interpolations); - - const i18n = get(this, 'i18n'); - return i18n.t(key, mergedInterpolations); - }, - - _recomputeOnLocaleChange: observer('i18n.locale', function() { - this.recompute(); - }) -}); diff --git a/addon/index.js b/addon/index.js deleted file mode 100644 index d04701ea..00000000 --- a/addon/index.js +++ /dev/null @@ -1,5 +0,0 @@ -import compileTemplate from "./utils/i18n/compile-template"; -import Service from "./services/i18n"; -import translationMacro from "./utils/macro"; - -export { compileTemplate, Service, translationMacro }; diff --git a/addon/initializers/ember-i18n.js b/addon/initializers/ember-i18n.js deleted file mode 100644 index dca87b99..00000000 --- a/addon/initializers/ember-i18n.js +++ /dev/null @@ -1,10 +0,0 @@ -// As of 4.3.0 using the ember-i18n initializer is no longer necessary. -// -// This is a no-op initializer to prevent applications that relied on the -// 'ember-i18n' initializer in their own workflow from breaking. -export default { - name: 'ember-i18n', - initialize() { - // No-op. - } -}; diff --git a/addon/instance-initializers/ember-i18n.js b/addon/instance-initializers/ember-i18n.js deleted file mode 100644 index 29703c2f..00000000 --- a/addon/instance-initializers/ember-i18n.js +++ /dev/null @@ -1,11 +0,0 @@ -// As of 4.3.0 using the ember-i18n instance initializer is no longer -// necessary. -// -// This is a no-op initializer to prevent applications that relied on the -// 'ember-i18n' instance initializer in their own workflow from breaking. -export default { - name: 'ember-i18n', - initialize() { - // No-op. - } -}; diff --git a/addon/legacy/README.md b/addon/legacy/README.md deleted file mode 100644 index 5d145e66..00000000 --- a/addon/legacy/README.md +++ /dev/null @@ -1 +0,0 @@ -This folder includes support for Ember 1.12 diff --git a/addon/legacy/helper.js b/addon/legacy/helper.js deleted file mode 100644 index 896be7fe..00000000 --- a/addon/legacy/helper.js +++ /dev/null @@ -1,50 +0,0 @@ -import Stream from "./stream"; -import { readHash } from "./stream"; -import Ember from 'ember'; - -const assign = Ember.assign || Ember.merge; - -export default function tHelper([i18nKey, contextObject = { value: () => {} }], hash, options, env) { - const i18n = env.data.view.container.lookup('service:i18n'); - - - - var out = new Stream(function() { - const value = i18nKey.isStream ? i18nKey.value() : i18nKey; - - const contextObjectValue = contextObject.value(); - const mergedHash = {}; - assign(mergedHash, contextObjectValue); - assign(mergedHash, hash); - - return value === undefined ? '' : i18n.t(value, readHash(mergedHash)); - }); - - // Once the view is destroyed destroy the steam as well - env.data.view.one('willDestroyElement', out, function() { - this.destroy(); - }); - - if (contextObject && contextObject.isStream) { - contextObject.subscribe(out.notify, out); - } - - // observe any hash arguments that are streams: - Object.keys(hash).forEach(function(key) { - const value = hash[key]; - - if (value && value.isStream) { - value.subscribe(out.notify, out); - } - }); - - // observe the locale: - i18n.localeStream.subscribe(out.notify, out); - - // if the i18n key itself is dynamic, observe it: - if (i18nKey.isStream) { - i18nKey.subscribe(out.notify, out); - } - - return out; -} diff --git a/addon/legacy/initializer.js b/addon/legacy/initializer.js deleted file mode 100644 index b2070c5b..00000000 --- a/addon/legacy/initializer.js +++ /dev/null @@ -1,23 +0,0 @@ -import Ember from "ember"; -import Stream from './stream'; -import legacyHelper from "./helper"; - -// Used for Ember < 1.13 -export default { - name: 'ember-i18n-legacy-helper', - - initialize(registry) { - const i18n = registry.lookup('service:i18n'); - - i18n.localeStream = new Stream(function() { - return i18n.get('locale'); - }); - - Ember.addObserver(i18n, 'locale', i18n, function() { - this.localeStream.value(); // force the stream to be dirty - this.localeStream.notify(); - }); - - Ember.HTMLBars._registerHelper('t', legacyHelper); - } -}; diff --git a/addon/legacy/stream.js b/addon/legacy/stream.js deleted file mode 100644 index ba362c67..00000000 --- a/addon/legacy/stream.js +++ /dev/null @@ -1,11 +0,0 @@ -import Ember from 'ember'; - -// As of v1.12, Streams are still private API. Thus, we need to reach in to -// Ember internals to get access to it. -// -// See https://github.com/emberjs/ember.js/blob/v1.12.0/packages/ember-metal/lib/main.js#L384-L386 -// See https://github.com/emberjs/ember.js/pull/9693 -// See https://github.com/dockyard/ember-cli-i18n/blob/v0.0.6/addon/utils/stream.js - -export default Ember.__loader.require('ember-metal/streams/stream')['default']; -export const readHash = Ember.__loader.require('ember-metal/streams/utils').readHash; diff --git a/addon/services/i18n.js b/addon/services/i18n.js deleted file mode 100644 index d4330f09..00000000 --- a/addon/services/i18n.js +++ /dev/null @@ -1,100 +0,0 @@ -import Ember from "ember"; -import Locale from "../utils/locale"; -import addTranslations from "../utils/add-translations"; -import getLocales from "../utils/get-locales"; - -const { assert, computed, get, Evented, makeArray, on, typeOf, warn, getOwner } = Ember; -const Parent = Ember.Service || Ember.Object; - -// @public -export default Parent.extend(Evented, { - // @public - // The user's locale. - locale: null, - - // @public - // A list of found locales. - locales: computed(getLocales), - - // @public - // - // Returns the translation `key` interpolated with `data` - // in the current `locale`. - t(key, data = {}) { - Ember.deprecate('locale is a reserved attribute', data['locale'] === undefined, { - id: 'ember-i18n.reserve-locale', - until: '5.0.0' - }); - - Ember.deprecate('htmlSafe is a reserved attribute', data['htmlSafe'] === undefined, { - id: 'ember-i18n.reserve-htmlSafe', - until: '5.0.0' - }); - - const locale = this.get('_locale'); - assert("I18n: Cannot translate when locale is null", locale); - const count = get(data, 'count'); - - const defaults = makeArray(get(data, 'default')); - - defaults.unshift(key); - const template = locale.getCompiledTemplate(defaults, count); - - if (template._isMissing) { - this.trigger('missing', this.get('locale'), key, data); - } - - return template(data); - }, - - // @public - exists(key, data = {}) { - const locale = this.get('_locale'); - assert("I18n: Cannot check existance when locale is null", locale); - const count = get(data, 'count'); - - const translation = locale.findTranslation(makeArray(key), count); - return typeOf(translation.result) !== 'undefined' && !translation.result._isMissing; - }, - - // @public - addTranslations(locale, translations) { - addTranslations(locale, translations, getOwner(this)); - this._addLocale(locale); - - if (this.get('locale').indexOf(locale) === 0) { - this.get('_locale').rebuild(); - } - }, - - // @private - _initDefaults: on('init', function() { - let owner = getOwner(this); - let ENV = owner.factoryFor('config:environment').class; - - if (this.get('locale') == null) { - var defaultLocale = (ENV.i18n || {}).defaultLocale; - if (defaultLocale == null) { - warn('ember-i18n did not find a default locale; falling back to "en".', false, { - id: 'ember-i18n.default-locale' - }); - - defaultLocale = 'en'; - } - this.set('locale', defaultLocale); - } - }), - - // @private - // - // adds a runtime locale to the array of locales on disk - _addLocale(locale) { - this.get('locales').addObject(locale); - }, - - _locale: computed('locale', function() { - const locale = this.get('locale'); - - return locale ? new Locale(this.get('locale'), getOwner(this)) : null; - }) -}); diff --git a/addon/utils/add-translations.js b/addon/utils/add-translations.js deleted file mode 100644 index 4b42fe29..00000000 --- a/addon/utils/add-translations.js +++ /dev/null @@ -1,16 +0,0 @@ -import Ember from "ember"; - -const assign = Ember.assign || Ember.merge; - -export default function addTranslations(locale, newTranslations, owner) { - const key = `locale:${locale}/translations`; - let factory = owner.factoryFor(key); - let existingTranslations = factory && factory.class; - - if (existingTranslations == null) { - existingTranslations = {}; - owner.register(key, existingTranslations); - } - - assign(existingTranslations, newTranslations); -} diff --git a/addon/utils/get-locales.js b/addon/utils/get-locales.js deleted file mode 100644 index 9b7f7dd9..00000000 --- a/addon/utils/get-locales.js +++ /dev/null @@ -1,16 +0,0 @@ -/* globals require */ -import { A } from '@ember/array'; - -const matchKey = '/locales/(.+)/translations$'; - -export default function getLocales() { - return Object.keys(require.entries) - .reduce((locales, module) => { - var match = module.match(matchKey); - if (match) { - locales.pushObject(match[1]); - } - return locales; - }, A()) - .sort(); -} diff --git a/addon/utils/i18n/compile-template.js b/addon/utils/i18n/compile-template.js deleted file mode 100644 index fe2cf579..00000000 --- a/addon/utils/i18n/compile-template.js +++ /dev/null @@ -1,26 +0,0 @@ -import Ember from "ember"; - -const htmlSafe = Ember.String.htmlSafe; -const get = Ember.get; -const escapeExpression = Ember.Handlebars.Utils.escapeExpression; -const tripleStache = /\{\{\{\s*(.*?)\s*\}\}\}/g; -const doubleStache = /\{\{\s*(.*?)\s*\}\}/g; - -// @public -// -// Compile a translation template. -// -// To override this, define `util:i18n/compile-template` with -// the signature -// `Function(String, Boolean) -> Function(Object) -> String`. -export default function compileTemplate(template, rtl = false) { - return function renderTemplate(data) { - const result = template - .replace(tripleStache, (i, match) => get(data, match)) - .replace(doubleStache, (i, match) => escapeExpression(get(data, match))); - - const wrapped = rtl ? `\u202B${result}\u202C` : result; - - return htmlSafe(wrapped); - }; -} diff --git a/addon/utils/i18n/missing-message.js b/addon/utils/i18n/missing-message.js deleted file mode 100644 index d81bc34e..00000000 --- a/addon/utils/i18n/missing-message.js +++ /dev/null @@ -1,12 +0,0 @@ -// @public -// -// Generate a "missing template" message that will be used -// as a translation. -// -// To override this, define `util:i18n/missing-message` with -// the signature -// -// `Function(String, String, Object) -> String`. -export default function missingMessage(locale, key /*, data */) { - return `Missing translation: ${key}`; -} diff --git a/addon/utils/locale.js b/addon/utils/locale.js deleted file mode 100644 index 7fc040f6..00000000 --- a/addon/utils/locale.js +++ /dev/null @@ -1,184 +0,0 @@ -import Ember from "ember"; -const { assert, typeOf, warn } = Ember; -const assign = Ember.assign || Ember.merge; - -// @private -// -// This class is the work-horse of localization look-up. -function Locale(id, owner) { - // On Construction: - // 1. look for translations in the locale (e.g. pt-BR) and all parent - // locales (e.g. pt), flatten any nested keys, and then merge them. - // 2. walk through the configs from most specific to least specific - // and use the first value for `rtl` and `pluralForm` - // 3. Default `rtl` to `false` - // 4. Ensure `pluralForm` is defined - this.id = id; - this.owner = owner; - this.rebuild(); -} - -Locale.prototype = { - rebuild() { - this.translations = getFlattenedTranslations(this.id, this.owner); - this._setConfig(); - }, - - _setConfig() { - walkConfigs(this.id, this.owner, (config) => { - if (this.rtl === undefined) { this.rtl = config.rtl; } - if (this.pluralForm === undefined) { this.pluralForm = config.pluralForm; } - }); - - // Exit early if we already have an RTL and pluralForm config set - if (this.rtl !== undefined && this.pluralForm !== undefined) { - return; - } - - let defaultConfigFactory = this.owner.factoryFor('ember-i18n@config:x-i18n'); - let defaultConfig = defaultConfigFactory ? defaultConfigFactory.class : null; - - if (this.rtl === undefined) { - warn(`ember-i18n: No RTL configuration found for ${this.id}.`, false, { id: 'ember-i18n.no-rtl-configuration' }); - this.rtl = defaultConfig.rtl; - } - - if (this.pluralForm === undefined) { - warn(`ember-i18n: No pluralForm configuration found for ${this.id}.`, false, { id: 'ember-i18n.no-plural-form' }); - this.pluralForm = defaultConfig.pluralForm; - } - }, - - getCompiledTemplate(fallbackChain, count) { - let translation = this.findTranslation(fallbackChain, count); - let result = translation.result; - - if (typeOf(result) === 'number') { - result = result.toString(); - } - - if (typeOf(result) === 'string') { - result = this._compileTemplate(translation.key, result); - } - - if (result == null) { - result = this._defineMissingTranslationTemplate(fallbackChain[0]); - } - - assert(`Template for ${translation.key} in ${this.id} is not a function`, typeOf(result) === 'function'); - - return result; - }, - - findTranslation(fallbackChain, count) { - if (this.translations === undefined) { this._init(); } - - let result; - let i; - for (i = 0; i < fallbackChain.length; i++) { - let key = fallbackChain[i]; - if (count != null) { - const inflection = this.pluralForm(+count); - result = this.translations[`${key}.${inflection}`]; - } - - if (result == null) { - result = this.translations[key]; - } - - if (result) { - break; - } - } - - return { - key: fallbackChain[i], - result: result - }; - }, - - _defineMissingTranslationTemplate(key) { - const i18n = this.owner.lookup('service:i18n'); - const locale = this.id; - let missingMessage = this.owner.factoryFor('util:i18n/missing-message').class; - - function missingTranslation(data) { return missingMessage.call(i18n, locale, key, data); } - - missingTranslation._isMissing = true; - this.translations[key] = missingTranslation; - return missingTranslation; - }, - - _compileTemplate(key, string) { - let compile = this.owner.factoryFor('util:i18n/compile-template').class; - const template = compile(string, this.rtl); - this.translations[key] = template; - return template; - } -}; - -function getFlattenedTranslations(id, owner) { - const result = {}; - - const parentId = parentLocale(id); - if (parentId) { - assign(result, getFlattenedTranslations(parentId, owner)); - } - - let envConfig = owner.factoryFor('config:environment').class; - let ENV = (envConfig.i18n || {}); - let defaultLocale = ENV.defaultLocale; - let defaultFallback = ENV.defaultFallback; - if (defaultFallback && defaultLocale && defaultLocale !== id) { - let defaultFactory = owner.factoryFor(`locale:${defaultLocale}/translations`); - let defaultTranslations = defaultFactory && defaultFactory.class; - assign(result, withFlattenedKeys(defaultTranslations || {})); - } - - let factory = owner.factoryFor(`locale:${id}/translations`); - let translations = factory && factory.class; - assign(result, withFlattenedKeys(translations || {})); - - return result; -} - -// Walk up confiugration objects from most specific to least. -function walkConfigs(id, owner, fn) { - let maybeAppConfig = owner.factoryFor(`locale:${id}/config`); - let appConfig = maybeAppConfig && maybeAppConfig.class; - if (appConfig) { fn(appConfig); } - - let maybeAddonConfig = owner.factoryFor(`ember-i18n@config:${id}`); - let addonConfig = maybeAddonConfig && maybeAddonConfig.class; - if (addonConfig) { fn(addonConfig); } - - const parentId = parentLocale(id); - if (parentId) { walkConfigs(parentId, owner, fn); } -} - -function parentLocale(id) { - const lastDash = id.lastIndexOf('-'); - return lastDash > 0 ? id.substr(0, lastDash) : null; -} - -function withFlattenedKeys(object) { - const result = {}; - - Object.keys(object).forEach(function(key) { - var value = object[key]; - - if (typeOf(value) === 'object') { - value = withFlattenedKeys(value); - - Object.keys(value).forEach(function(suffix) { - result[`${key}.${suffix}`] = value[suffix]; - }); - } else { - result[key] = value; - } - }); - - return result; -} - -export default Locale; diff --git a/addon/utils/macro.js b/addon/utils/macro.js deleted file mode 100644 index a35df3b4..00000000 --- a/addon/utils/macro.js +++ /dev/null @@ -1,29 +0,0 @@ -import Ember from "ember"; - -const keys = Object.keys; -const get = Ember.get; - -// @public -export default function createTranslatedComputedProperty(key, interpolations = {}) { - const dependencies = [ 'i18n.locale' ].concat(values(interpolations)); - - return Ember.computed(...dependencies, function() { - const i18n = get(this, 'i18n'); - Ember.assert(`Cannot translate ${key}. ${this} does not have an i18n.`, i18n); - return i18n.t(key, mapPropertiesByHash(this, interpolations)); - }); -} - -function values(object) { - return keys(object).map((key) => object[key]); -} - -function mapPropertiesByHash(object, hash) { - const result = {}; - - keys(hash).forEach(function(key) { - result[key] = get(object, hash[key]); - }); - - return result; -} diff --git a/app/helpers/t.js b/app/helpers/t.js deleted file mode 100644 index 5b613fcd..00000000 --- a/app/helpers/t.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from 'ember-i18n/helper'; diff --git a/app/initializers/ember-i18n-legacy-helper.js b/app/initializers/ember-i18n-legacy-helper.js deleted file mode 100644 index 9304a4a7..00000000 --- a/app/initializers/ember-i18n-legacy-helper.js +++ /dev/null @@ -1,2 +0,0 @@ -import initializer from 'ember-i18n/legacy/initializer'; -export default initializer; diff --git a/app/initializers/ember-i18n.js b/app/initializers/ember-i18n.js deleted file mode 100644 index 32151ff2..00000000 --- a/app/initializers/ember-i18n.js +++ /dev/null @@ -1,2 +0,0 @@ -import initializer from 'ember-i18n/initializers/ember-i18n'; -export default initializer; diff --git a/app/instance-initializers/ember-i18n.js b/app/instance-initializers/ember-i18n.js deleted file mode 100644 index 4ae0a652..00000000 --- a/app/instance-initializers/ember-i18n.js +++ /dev/null @@ -1,2 +0,0 @@ -import initializer from 'ember-i18n/instance-initializers/ember-i18n'; -export default initializer; diff --git a/app/services/i18n.js b/app/services/i18n.js deleted file mode 100644 index 14c65164..00000000 --- a/app/services/i18n.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from 'ember-i18n/services/i18n'; \ No newline at end of file diff --git a/app/utils/i18n/compile-template.js b/app/utils/i18n/compile-template.js deleted file mode 100644 index c6ba7a45..00000000 --- a/app/utils/i18n/compile-template.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from 'ember-i18n/utils/i18n/compile-template'; \ No newline at end of file diff --git a/app/utils/i18n/missing-message.js b/app/utils/i18n/missing-message.js deleted file mode 100644 index 0b3131fd..00000000 --- a/app/utils/i18n/missing-message.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from 'ember-i18n/utils/i18n/missing-message'; \ No newline at end of file diff --git a/blueprints/locale/files/app/locales/__name__/config.js b/blueprints/locale/files/app/locales/__name__/config.js deleted file mode 100644 index 42b3d17a..00000000 --- a/blueprints/locale/files/app/locales/__name__/config.js +++ /dev/null @@ -1,16 +0,0 @@ -// Ember-I18n includes configuration for common locales. Most users -// can safely delete this file. Use it if you need to override behavior -// for a locale or define behavior for a locale that Ember-I18n -// doesn't know about. -export default { - // rtl: [true|FALSE], - // - // pluralForm: function(count) { - // if (count === 0) { return 'zero'; } - // if (count === 1) { return 'one'; } - // if (count === 2) { return 'two'; } - // if (count < 5) { return 'few'; } - // if (count >= 5) { return 'many'; } - // return 'other'; - // } -}; diff --git a/blueprints/locale/files/app/locales/__name__/translations.js b/blueprints/locale/files/app/locales/__name__/translations.js deleted file mode 100644 index 331fb469..00000000 --- a/blueprints/locale/files/app/locales/__name__/translations.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - // "some.translation.key": "Text for some.translation.key", - // - // "a": { - // "nested": { - // "key": "Text for a.nested.key" - // } - // }, - // - // "key.with.interpolation": "Text with {{anInterpolation}}" -}; diff --git a/blueprints/locale/index.js b/blueprints/locale/index.js deleted file mode 100644 index 1265055a..00000000 --- a/blueprints/locale/index.js +++ /dev/null @@ -1,15 +0,0 @@ -module.exports = { - description: 'Generates new i18n locale directory with config and translations files.', - - beforeInstall(options) { - if (options.args.length < 2) { - throw new Error("ember-i18n locale generator requires a locale name."); - } - - const locale = options.args[1]; - - if (!/^[a-zA-Z0-9-]+$/.test(locale)) { - throw new Error(locale + ' is not a valid locale name.'); - } - } -}; diff --git a/config/ember-try.js b/config/ember-try.js deleted file mode 100644 index 8c1e17ef..00000000 --- a/config/ember-try.js +++ /dev/null @@ -1,107 +0,0 @@ -/* eslint-env node */ -module.exports = { - scenarios: [ - { - name: 'ember-lts-2.4', - bower: { - dependencies: { - 'ember': 'components/ember#lts-2-4' - }, - resolutions: { - 'ember': 'lts-2-4' - } - }, - npm: { - devDependencies: { - 'ember-source': null - } - } - }, - { - name: 'ember-lts-2.8', - bower: { - dependencies: { - 'ember': 'components/ember#lts-2-8' - }, - resolutions: { - 'ember': 'lts-2-8' - } - }, - npm: { - devDependencies: { - 'ember-source': null - } - } - }, - { - name: 'ember-lts-2.12', - npm: { - devDependencies: { - 'ember-source': '~2.12.0' - } - } - }, - { - name: 'ember-lts-2.16', - npm: { - devDependencies: { - 'ember-source': '~2.16.0' - } - } - }, - { - name: 'ember-release', - bower: { - dependencies: { - 'ember': 'components/ember#release' - }, - resolutions: { - 'ember': 'release' - } - }, - npm: { - devDependencies: { - 'ember-source': null - } - } - }, - { - name: 'ember-beta', - bower: { - dependencies: { - 'ember': 'components/ember#beta' - }, - resolutions: { - 'ember': 'beta' - } - }, - npm: { - devDependencies: { - 'ember-source': null - } - } - }, - { - name: 'ember-canary', - bower: { - dependencies: { - 'ember': 'components/ember#canary' - }, - resolutions: { - 'ember': 'canary' - } - }, - npm: { - devDependencies: { - 'ember-source': null - } - } - }, - { - name: 'ember-default', - npm: { - devDependencies: {} - } - } - ] -}; diff --git a/config/environment.js b/config/environment.js deleted file mode 100644 index 012a412f..00000000 --- a/config/environment.js +++ /dev/null @@ -1,6 +0,0 @@ -/* eslint-env node */ -'use strict'; - -module.exports = function(/* environment, appConfig */) { - return { }; -}; diff --git a/ember-cli-build.js b/ember-cli-build.js deleted file mode 100644 index 156e23fa..00000000 --- a/ember-cli-build.js +++ /dev/null @@ -1,19 +0,0 @@ -/* eslint-env node */ -'use strict'; - -const EmberAddon = require('ember-cli/lib/broccoli/ember-addon'); - -module.exports = function(defaults) { - let app = new EmberAddon(defaults, { - // Add options here - }); - - /* - This build file specifies the options for the dummy test app of this - addon, located in `/tests/dummy` - This build file does *not* influence how the addon or the app using it - behave. You most likely want to be modifying `./index.js` or app's build file - */ - - return app.toTree(); -}; diff --git a/index.js b/index.js deleted file mode 100644 index 7ae33c1a..00000000 --- a/index.js +++ /dev/null @@ -1,43 +0,0 @@ -/* eslint-env node */ -'use strict'; -var Funnel = require('broccoli-funnel'); -var VersionChecker = require('ember-cli-version-checker'); - -module.exports = { - name: 'ember-i18n', - isLocalizationFramework: true, - - init() { - this._super.init && this._super.init.apply(this, arguments); - - var checker = new VersionChecker(this); - var dep = checker.forEmber(); - this.hasEmberHelper = !dep.lt('1.13.0'); - }, - - treeFor(name) { - var result = this._super.treeFor.apply(this, arguments); - - if (this.hasEmberHelper) { - result = exclude(result, [ - 'initializers/ember-i18n-legacy-helper.js', - 'modules/ember-i18n/legacy/helper.js', - 'modules/ember-i18n/legacy/initializer.js', - 'modules/ember-i18n/legacy/stream.js' - ]); - } else { - result = exclude(result, [ - 'helpers/t.js', - 'modules/ember-i18n/helper.js' - ]); - } - - return result; - } -}; - -function exclude(tree, files) { - return new Funnel(tree, { - exclude: files - }); -} diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index ae165077..00000000 --- a/package-lock.json +++ /dev/null @@ -1,8639 +0,0 @@ -{ - "name": "ember-i18n", - "version": "5.2.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@ember/test-helpers": { - "version": "0.7.9", - "resolved": "https://registry.npmjs.org/@ember/test-helpers/-/test-helpers-0.7.9.tgz", - "integrity": "sha512-n6BDVCVTXupSbqVgrW0dQP6v8V/DhQu/EzY5MW5QRqjFOcBwbwCoiWgXn2UXiyHl3xEbeUeFjcEXZgI9JsHoFg==", - "dev": true, - "requires": { - "broccoli-funnel": "2.0.1", - "ember-cli-babel": "6.11.0" - } - }, - "@glimmer/di": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@glimmer/di/-/di-0.2.0.tgz", - "integrity": "sha1-c7/Upu5BSKgL8JLopdKbysnUzn4=", - "dev": true - }, - "@glimmer/resolver": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@glimmer/resolver/-/resolver-0.4.2.tgz", - "integrity": "sha512-OYOSn2qKPMWRTrInu4W7Ilx2q4+mFfeKS8o8SCWdGN6q/9LnRUvN3vfiAEEfpgoMSvEr8TSGw6/b2WSLWoYAAA==", - "dev": true, - "requires": { - "@glimmer/di": "0.2.0" - } - }, - "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.4", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", - "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", - "dev": true, - "requires": { - "mime-types": "2.1.17", - "negotiator": "0.6.1" - } - }, - "acorn": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz", - "integrity": "sha512-jG0u7c4Ly+3QkkW18V+NRDN+4bWHdln30NL1ZL2AvFZZmQe/BfopYCtghCKKVBUSetZ4QKcyA0pY6/4Gw8Pv8w==", - "dev": true - }, - "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 - } - } - }, - "after": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.1.tgz", - "integrity": "sha1-q11PuIP1loFtNRX495HAr0ht1ic=", - "dev": true - }, - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.0.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" - } - }, - "amd-name-resolver": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/amd-name-resolver/-/amd-name-resolver-0.0.7.tgz", - "integrity": "sha1-gUMBrf6KLxCfboTV6TUZbvtmlhU=", - "requires": { - "ensure-posix-path": "1.0.2" - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, - "ansi-escapes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", - "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=" - }, - "ansicolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.2.1.tgz", - "integrity": "sha1-vgiVmQl7dKXJxKhKDNvNtivYeu8=", - "dev": true - }, - "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" - } - }, - "aot-test-generators": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/aot-test-generators/-/aot-test-generators-0.1.0.tgz", - "integrity": "sha1-Q/D2Ffl8spjXkZwbC05rcxCwPNA=", - "dev": true, - "requires": { - "jsesc": "2.5.1" - }, - "dependencies": { - "jsesc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", - "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", - "dev": true - } - } - }, - "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.3" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", - "dev": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "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.9", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", - "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", - "dev": true, - "requires": { - "sprintf-js": "1.0.3" - }, - "dependencies": { - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - } - } - }, - "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 - }, - "array-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", - "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=" - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, - "array-to-error": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-to-error/-/array-to-error-1.1.1.tgz", - "integrity": "sha1-1ogSkm0UCXogVXmmZ+6vGFakTAc=", - "dev": true, - "requires": { - "array-to-sentence": "1.1.0" - } - }, - "array-to-sentence": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-to-sentence/-/array-to-sentence-1.1.0.tgz", - "integrity": "sha1-yASVba+lMjJJWyBalFJ1OiWNOfw=", - "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 - }, - "ast-types": { - "version": "0.9.6", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.9.6.tgz", - "integrity": "sha1-ECyenpAF0+fjgpvwxPok7oYu6bk=", - "dev": true - }, - "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "requires": { - "lodash": "4.17.4" - } - }, - "async-disk-cache": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-1.3.3.tgz", - "integrity": "sha512-GyaWSbDAZCltxSobtj1m1ptXa0+zSdjWs3sM4IqnvhoRwMDHW5786sXQ1RiXbR3ZGuQe6NXMB4N0vUmW163cew==", - "requires": { - "debug": "2.6.9", - "heimdalljs": "0.2.5", - "istextorbinary": "2.1.0", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "rsvp": "3.6.2", - "username-sync": "1.0.1" - } - }, - "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-promise-queue": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/async-promise-queue/-/async-promise-queue-1.0.4.tgz", - "integrity": "sha512-GQ5X3DT+TefYuFPHdvIPXFTlKnh39U7dwtl+aUBGeKjMea9nBpv3c91DXgeyBQmY07vQ97f3Sr9XHqkamEameQ==", - "requires": { - "async": "2.6.0", - "debug": "2.6.9" - } - }, - "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=", - "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=", - "requires": { - "babel-code-frame": "6.26.0", - "babel-generator": "6.26.0", - "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.4", - "minimatch": "3.0.4", - "path-is-absolute": "1.0.1", - "private": "0.1.8", - "slash": "1.0.0", - "source-map": "0.5.7" - } - }, - "babel-generator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", - "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", - "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.4", - "source-map": "0.5.7", - "trim-right": "1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" - } - } - }, - "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=", - "requires": { - "babel-helper-explode-assignable-expression": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "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" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "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=", - "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" - } - }, - "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=", - "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" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-debug-macros": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/babel-plugin-debug-macros/-/babel-plugin-debug-macros-0.1.11.tgz", - "integrity": "sha512-hZw5qNNGAR02Y+yBUrtsnJHh8OXavkayPRqKGAXnIm4t5rWVpj3ArwsC7TWdpZsBguQvHAeyTxZ7s23yY60HHg==", - "requires": { - "semver": "5.4.1" - } - }, - "babel-plugin-ember-modules-api-polyfill": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-2.3.0.tgz", - "integrity": "sha512-cv5ZimF5X52uW7Ul83UUxtsFZE6rZYkMv6qWnAeiDLT1/KtpVrTkJpwzDlvJ/FhKJZ43ih4GbFbhuhBKKT7vIw==", - "requires": { - "ember-rfc176-data": "0.3.1" - } - }, - "babel-plugin-htmlbars-inline-precompile": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-0.2.3.tgz", - "integrity": "sha1-zTZeJ4r0Cb+mvncExDVL7udCRGs=", - "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=" - }, - "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=" - }, - "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=" - }, - "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=", - "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-functions": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "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=", - "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" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "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=", - "requires": { - "babel-plugin-transform-strict-mode": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "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=", - "requires": { - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "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=", - "requires": { - "babel-helper-replace-supers": "6.24.1", - "babel-runtime": "6.26.0" - } - }, - "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=", - "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" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "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=", - "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "regexpu-core": "2.0.0" - } - }, - "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=", - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", - "babel-plugin-syntax-exponentiation-operator": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "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=", - "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=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", - "requires": { - "babel-runtime": "6.26.0", - "core-js": "2.5.3", - "regenerator-runtime": "0.10.5" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" - } - } - }, - "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==", - "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.10.0", - "invariant": "2.2.2", - "semver": "5.4.1" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "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.4", - "mkdirp": "0.5.1", - "source-map-support": "0.4.18" - } - }, - "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=", - "requires": { - "core-js": "2.5.3", - "regenerator-runtime": "0.11.1" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "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.2", - "lodash": "4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.4", - "to-fast-properties": "1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" - }, - "backbone": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/backbone/-/backbone-1.3.3.tgz", - "integrity": "sha1-TMgOp8sWMaxHSInOQPL4vGg7KZk=", - "dev": true, - "requires": { - "underscore": "1.8.3" - } - }, - "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=" - }, - "base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", - "dev": true - }, - "base64id": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz", - "integrity": "sha1-As4P3u4M709ACA4ec+g08LG/zj8=", - "dev": true - }, - "basic-auth": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.0.tgz", - "integrity": "sha1-AV2z81PgLlY3d1X5YnQuiYHnu7o=", - "dev": true, - "requires": { - "safe-buffer": "5.1.1" - } - }, - "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" - } - }, - "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", - "dev": true - }, - "binaryextensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.0.0.tgz", - "integrity": "sha1-5ZfRp6ajVYotHHJBoWyZll5qpA8=" - }, - "blank-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/blank-object/-/blank-object-1.0.2.tgz", - "integrity": "sha1-+ZB5P76ajI3QE/syGUIL7IHV9Lk=" - }, - "blob": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", - "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=", - "dev": true - }, - "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 - }, - "body": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", - "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", - "dev": true, - "requires": { - "continuable-cache": "0.3.1", - "error": "7.0.2", - "raw-body": "1.1.7", - "safe-json-parse": "1.0.1" - }, - "dependencies": { - "bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", - "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", - "dev": true - }, - "raw-body": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", - "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", - "dev": true, - "requires": { - "bytes": "1.0.0", - "string_decoder": "0.10.31" - } - } - } - }, - "body-parser": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", - "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", - "dev": true, - "requires": { - "bytes": "3.0.0", - "content-type": "1.0.4", - "debug": "2.6.9", - "depd": "1.1.1", - "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.15" - } - }, - "bower-config": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/bower-config/-/bower-config-1.4.1.tgz", - "integrity": "sha1-hf2d82fCuNu9DKpMXyutQM2Ewsw=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "mout": "1.1.0", - "optimist": "0.6.1", - "osenv": "0.1.4", - "untildify": "2.1.0" - } - }, - "bower-endpoint-parser": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/bower-endpoint-parser/-/bower-endpoint-parser-0.2.2.tgz", - "integrity": "sha1-ALVlrb+rby01rd3pd+l5Yqy8s/Y=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", - "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", - "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" - } - }, - "broccoli-asset-rev": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/broccoli-asset-rev/-/broccoli-asset-rev-2.6.0.tgz", - "integrity": "sha1-BjP8OgsroMLB1W+p/rezMfyDvm0=", - "dev": true, - "requires": { - "broccoli-asset-rewrite": "1.1.0", - "broccoli-filter": "1.2.4", - "json-stable-stringify": "1.0.1", - "minimatch": "3.0.4", - "rsvp": "3.6.2" - } - }, - "broccoli-asset-rewrite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/broccoli-asset-rewrite/-/broccoli-asset-rewrite-1.1.0.tgz", - "integrity": "sha1-d6XaVhV6oxjFkRMkXouvtGF/iDA=", - "dev": true, - "requires": { - "broccoli-filter": "1.2.4" - } - }, - "broccoli-babel-transpiler": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/broccoli-babel-transpiler/-/broccoli-babel-transpiler-6.1.2.tgz", - "integrity": "sha512-o1OUe5RZ5EP5+QICEmRNvWlhMvIciMisVACHu6qUPt6dE0Q0UnI5lUpWTmuXg/X+QuznqD/s1PApIpahv/QMZw==", - "requires": { - "babel-core": "6.26.0", - "broccoli-funnel": "1.2.0", - "broccoli-merge-trees": "1.2.4", - "broccoli-persistent-filter": "1.4.3", - "clone": "2.1.1", - "hash-for-dep": "1.2.3", - "heimdalljs-logger": "0.1.9", - "json-stable-stringify": "1.0.1", - "rsvp": "3.6.2", - "workerpool": "2.3.0" - }, - "dependencies": { - "broccoli-funnel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz", - "integrity": "sha1-zdw6/F/xaFqAI0iP/3TOb7WlEpY=", - "requires": { - "array-equal": "1.0.0", - "blank-object": "1.0.2", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "exists-sync": "0.0.4", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "path-posix": "1.0.0", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - } - } - }, - "broccoli-brocfile-loader": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/broccoli-brocfile-loader/-/broccoli-brocfile-loader-0.18.0.tgz", - "integrity": "sha1-LoYCHIBcNP/I0povtyHPJz6Bnks=", - "dev": true, - "requires": { - "findup-sync": "0.4.3" - } - }, - "broccoli-builder": { - "version": "0.18.10", - "resolved": "https://registry.npmjs.org/broccoli-builder/-/broccoli-builder-0.18.10.tgz", - "integrity": "sha512-4U2jqaR5vxVR0ODxa9bWdrxz69k0WzhWfCGaTSIktJsKIVKmfD5kX1AMOUGBUaIJLJpUOd2t3XPHbXmwjnLCmQ==", - "dev": true, - "requires": { - "heimdalljs": "0.2.5", - "promise-map-series": "0.2.3", - "quick-temp": "0.1.8", - "rimraf": "2.6.2", - "rsvp": "3.6.2", - "silent-error": "1.1.0" - } - }, - "broccoli-caching-writer": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/broccoli-caching-writer/-/broccoli-caching-writer-3.0.3.tgz", - "integrity": "sha1-C9LJapc41qarWQ8HujXFFX19tHY=", - "dev": true, - "requires": { - "broccoli-kitchen-sink-helpers": "0.3.1", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "rimraf": "2.6.2", - "rsvp": "3.6.2", - "walk-sync": "0.3.2" - } - }, - "broccoli-clean-css": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/broccoli-clean-css/-/broccoli-clean-css-1.1.0.tgz", - "integrity": "sha1-nbFD2a9+CuecJuOsWpuy1yDqGfo=", - "dev": true, - "requires": { - "broccoli-persistent-filter": "1.4.3", - "clean-css-promise": "0.1.1", - "inline-source-map-comment": "1.0.5", - "json-stable-stringify": "1.0.1" - } - }, - "broccoli-concat": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/broccoli-concat/-/broccoli-concat-3.2.2.tgz", - "integrity": "sha1-hv/cUmButZC6n2uJTF7HoBb1t7k=", - "dev": true, - "requires": { - "broccoli-kitchen-sink-helpers": "0.3.1", - "broccoli-plugin": "1.3.0", - "broccoli-stew": "1.5.0", - "ensure-posix-path": "1.0.2", - "fast-sourcemap-concat": "1.2.3", - "find-index": "1.1.0", - "fs-extra": "1.0.0", - "fs-tree-diff": "0.5.7", - "lodash.merge": "4.6.0", - "lodash.omit": "4.5.0", - "lodash.uniq": "4.5.0", - "walk-sync": "0.3.2" - }, - "dependencies": { - "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" - } - } - } - }, - "broccoli-config-loader": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/broccoli-config-loader/-/broccoli-config-loader-1.0.1.tgz", - "integrity": "sha512-MDKYQ50rxhn+g17DYdfzfEM9DjTuSGu42Db37A8TQHQe8geYEcUZ4SQqZRgzdAI3aRQNlA1yBHJfOeGmOjhLIg==", - "dev": true, - "requires": { - "broccoli-caching-writer": "3.0.3" - } - }, - "broccoli-config-replace": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/broccoli-config-replace/-/broccoli-config-replace-1.1.2.tgz", - "integrity": "sha1-bqh52SpbrWNNETKbUfxfSq/anAA=", - "dev": true, - "requires": { - "broccoli-kitchen-sink-helpers": "0.3.1", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "fs-extra": "0.24.0" - }, - "dependencies": { - "fs-extra": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.24.0.tgz", - "integrity": "sha1-1OQ0KpZnXLeEZjOmCZJJMytTmVI=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0", - "path-is-absolute": "1.0.1", - "rimraf": "2.6.2" - } - } - } - }, - "broccoli-debug": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/broccoli-debug/-/broccoli-debug-0.6.4.tgz", - "integrity": "sha512-CixMUndBqTljCc26i6ubhBrGbAWXpWBsGJFce6ZOr76Tul2Ev1xxM0tmf7OjSzdYhkr5BrPd/CNbR9VMPi+NBg==", - "requires": { - "broccoli-plugin": "1.3.0", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "heimdalljs-logger": "0.1.9", - "symlink-or-copy": "1.1.8", - "tree-sync": "1.2.2" - } - }, - "broccoli-file-creator": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/broccoli-file-creator/-/broccoli-file-creator-1.1.1.tgz", - "integrity": "sha1-GzW2fSFavfrdjUnutpSTw55sNFA=", - "dev": true, - "requires": { - "broccoli-kitchen-sink-helpers": "0.2.9", - "broccoli-plugin": "1.3.0", - "broccoli-writer": "0.1.1", - "mkdirp": "0.5.1", - "rsvp": "3.0.21", - "symlink-or-copy": "1.1.8" - }, - "dependencies": { - "broccoli-kitchen-sink-helpers": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/broccoli-kitchen-sink-helpers/-/broccoli-kitchen-sink-helpers-0.2.9.tgz", - "integrity": "sha1-peCYbtjXb7WYS2jD8EUNOpbjbsw=", - "dev": true, - "requires": { - "glob": "5.0.15", - "mkdirp": "0.5.1" - } - }, - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "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" - } - }, - "rsvp": { - "version": "3.0.21", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.0.21.tgz", - "integrity": "sha1-ScWI/hjvKTvNCrn05nVuasQzNZ8=", - "dev": true - } - } - }, - "broccoli-filter": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/broccoli-filter/-/broccoli-filter-1.2.4.tgz", - "integrity": "sha1-QJr7lLmjptqfrIE06R4gX0DMczA=", - "dev": true, - "requires": { - "broccoli-kitchen-sink-helpers": "0.3.1", - "broccoli-plugin": "1.3.0", - "copy-dereference": "1.0.0", - "debug": "2.6.9", - "mkdirp": "0.5.1", - "promise-map-series": "0.2.3", - "rsvp": "3.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - }, - "broccoli-funnel": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/broccoli-funnel/-/broccoli-funnel-2.0.1.tgz", - "integrity": "sha512-C8Lnp9TVsSSiZMGEF16C0dCiNg2oJqUKwuZ1K4kVC6qRPG/2Cj/rtB5kRCC9qEbwqhX71bDbfHROx0L3J7zXQg==", - "requires": { - "array-equal": "1.0.0", - "blank-object": "1.0.2", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "path-posix": "1.0.0", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - }, - "broccoli-funnel-reducer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/broccoli-funnel-reducer/-/broccoli-funnel-reducer-1.0.0.tgz", - "integrity": "sha1-ETZbKnha7JsXlyo234fu8kxcwOo=", - "dev": true - }, - "broccoli-kitchen-sink-helpers": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/broccoli-kitchen-sink-helpers/-/broccoli-kitchen-sink-helpers-0.3.1.tgz", - "integrity": "sha1-d8fBgZS5ZkFj7E/O4nk0RJJuDAY=", - "requires": { - "glob": "5.0.15", - "mkdirp": "0.5.1" - }, - "dependencies": { - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - } - } - }, - "broccoli-lint-eslint": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/broccoli-lint-eslint/-/broccoli-lint-eslint-4.2.1.tgz", - "integrity": "sha512-Jvm06UvuMPa5gEH+9/Sb+QpoIodDAYzbyIUEqxniPCdA6JJooa91hQDCTJc32RUV46JNMcLhb3Dl55BdA8v5mw==", - "dev": true, - "requires": { - "aot-test-generators": "0.1.0", - "broccoli-concat": "3.2.2", - "broccoli-persistent-filter": "1.4.3", - "eslint": "4.13.1", - "json-stable-stringify": "1.0.1", - "lodash.defaultsdeep": "4.6.0", - "md5-hex": "2.0.0" - } - }, - "broccoli-merge-trees": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-1.2.4.tgz", - "integrity": "sha1-oAFRm7UGfwZYnZGvopQkRaLQ/bU=", - "requires": { - "broccoli-plugin": "1.3.0", - "can-symlink": "1.0.0", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "heimdalljs-logger": "0.1.9", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8" - } - }, - "broccoli-middleware": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/broccoli-middleware/-/broccoli-middleware-1.0.0.tgz", - "integrity": "sha1-kvTh+5p5HqmGJFpwd/NcxkjasJc=", - "dev": true, - "requires": { - "handlebars": "4.0.11", - "mime": "1.6.0" - } - }, - "broccoli-persistent-filter": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-1.4.3.tgz", - "integrity": "sha512-JwNLDvvXJlhUmr+CHcbVhCyp33NbCIAITjQZmJY9e8QzANXh3jpFWlhSFvkWghwKA8rTAKcXkW12agtiZjxr4g==", - "requires": { - "async-disk-cache": "1.3.3", - "async-promise-queue": "1.0.4", - "broccoli-plugin": "1.3.0", - "fs-tree-diff": "0.5.7", - "hash-for-dep": "1.2.3", - "heimdalljs": "0.2.5", - "heimdalljs-logger": "0.1.9", - "mkdirp": "0.5.1", - "promise-map-series": "0.2.3", - "rimraf": "2.6.2", - "rsvp": "3.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - }, - "broccoli-plugin": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/broccoli-plugin/-/broccoli-plugin-1.3.0.tgz", - "integrity": "sha1-vucEqOQtoIy1jlE6qkNu+38O8e4=", - "requires": { - "promise-map-series": "0.2.3", - "quick-temp": "0.1.8", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8" - } - }, - "broccoli-slow-trees": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/broccoli-slow-trees/-/broccoli-slow-trees-3.0.1.tgz", - "integrity": "sha1-m/Kp4vjrPtOj8qvd6YjaQ3zNybQ=", - "dev": true, - "requires": { - "heimdalljs": "0.2.5" - } - }, - "broccoli-source": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/broccoli-source/-/broccoli-source-1.1.0.tgz", - "integrity": "sha1-VPDoLItz9GWAy7xPV48LMvyo+Ak=" - }, - "broccoli-sri-hash": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/broccoli-sri-hash/-/broccoli-sri-hash-2.1.2.tgz", - "integrity": "sha1-vGmQXtejga0yXMDQLe0HEyjr8/M=", - "dev": true, - "requires": { - "broccoli-caching-writer": "2.3.1", - "mkdirp": "0.5.1", - "rsvp": "3.6.2", - "sri-toolbox": "0.2.0", - "symlink-or-copy": "1.1.8" - }, - "dependencies": { - "broccoli-caching-writer": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/broccoli-caching-writer/-/broccoli-caching-writer-2.3.1.tgz", - "integrity": "sha1-uTz1j5Jk8AMHWGjbBXdPTn8lvQc=", - "dev": true, - "requires": { - "broccoli-kitchen-sink-helpers": "0.2.9", - "broccoli-plugin": "1.1.0", - "debug": "2.6.9", - "rimraf": "2.6.2", - "rsvp": "3.6.2", - "walk-sync": "0.2.7" - } - }, - "broccoli-kitchen-sink-helpers": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/broccoli-kitchen-sink-helpers/-/broccoli-kitchen-sink-helpers-0.2.9.tgz", - "integrity": "sha1-peCYbtjXb7WYS2jD8EUNOpbjbsw=", - "dev": true, - "requires": { - "glob": "5.0.15", - "mkdirp": "0.5.1" - } - }, - "broccoli-plugin": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/broccoli-plugin/-/broccoli-plugin-1.1.0.tgz", - "integrity": "sha1-c+LPoF+OoeP8FCDEDD2efcckvwI=", - "dev": true, - "requires": { - "promise-map-series": "0.2.3", - "quick-temp": "0.1.8", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8" - } - }, - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "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" - } - }, - "walk-sync": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-0.2.7.tgz", - "integrity": "sha1-tJvk7mhnZXrrc2l4tWop0Q+jmWk=", - "dev": true, - "requires": { - "ensure-posix-path": "1.0.2", - "matcher-collection": "1.0.5" - } - } - } - }, - "broccoli-stew": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/broccoli-stew/-/broccoli-stew-1.5.0.tgz", - "integrity": "sha1-16+MGFEdzlEOSdMIpi5Zd/RhiDw=", - "dev": true, - "requires": { - "broccoli-debug": "0.6.4", - "broccoli-funnel": "1.2.0", - "broccoli-merge-trees": "1.2.4", - "broccoli-persistent-filter": "1.4.3", - "broccoli-plugin": "1.3.0", - "chalk": "1.1.3", - "debug": "2.6.9", - "ensure-posix-path": "1.0.2", - "fs-extra": "2.1.2", - "minimatch": "3.0.4", - "resolve": "1.5.0", - "rsvp": "3.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - }, - "dependencies": { - "broccoli-funnel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz", - "integrity": "sha1-zdw6/F/xaFqAI0iP/3TOb7WlEpY=", - "dev": true, - "requires": { - "array-equal": "1.0.0", - "blank-object": "1.0.2", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "exists-sync": "0.0.4", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "path-posix": "1.0.0", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - }, - "fs-extra": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-2.1.2.tgz", - "integrity": "sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0" - } - } - } - }, - "broccoli-uglify-sourcemap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/broccoli-uglify-sourcemap/-/broccoli-uglify-sourcemap-2.0.1.tgz", - "integrity": "sha1-6PL2xJ4Etukh8ezTDhLwb7deWF8=", - "dev": true, - "requires": { - "broccoli-plugin": "1.3.0", - "debug": "3.1.0", - "lodash.defaultsdeep": "4.6.0", - "matcher-collection": "1.0.5", - "mkdirp": "0.5.1", - "source-map-url": "0.4.0", - "symlink-or-copy": "1.1.8", - "uglify-es": "3.2.2", - "walk-sync": "0.3.2" - }, - "dependencies": { - "commander": { - "version": "2.12.2", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.2.tgz", - "integrity": "sha512-BFnaq5ZOGcDN7FlrtBT4xxkgIToalIIxwjxLWVJ8bGTpe1LroqMiqQXdA7ygc7CRvaYS+9zfPGFnJqFSayx+AA==", - "dev": true - }, - "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" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "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 - }, - "uglify-es": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.2.2.tgz", - "integrity": "sha512-l+s5VLzFwGJfS+fbqaGf/Dfwo1MF13jLOF2ekL0PytzqEqQ6cVppvHf4jquqFok+35USMpKjqkYxy6pQyUcuug==", - "dev": true, - "requires": { - "commander": "2.12.2", - "source-map": "0.6.1" - } - } - } - }, - "broccoli-writer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/broccoli-writer/-/broccoli-writer-0.1.1.tgz", - "integrity": "sha1-1NcaqPKvvGejhmuRotp5CEuWqy0=", - "dev": true, - "requires": { - "quick-temp": "0.1.8", - "rsvp": "3.6.2" - } - }, - "browserslist": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.10.0.tgz", - "integrity": "sha512-WyvzSLsuAVPOjbljXnyeWl14Ae+ukAT8MUuagKVzIDvwBxl4UAwD1xqtyQs2eWYPGUKMeC3Ol62goqYuKqTTcw==", - "requires": { - "caniuse-lite": "1.0.30000783", - "electron-to-chromium": "1.3.29" - } - }, - "bser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.0.0.tgz", - "integrity": "sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk=", - "dev": true, - "requires": { - "node-int64": "0.4.0" - } - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true - }, - "calculate-cache-key-for-tree": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/calculate-cache-key-for-tree/-/calculate-cache-key-for-tree-1.1.0.tgz", - "integrity": "sha1-DD5CycE088neU1jA8WeTYn6pdtY=", - "dev": true, - "requires": { - "json-stable-stringify": "1.0.1" - } - }, - "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 - }, - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true, - "optional": true - }, - "can-symlink": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/can-symlink/-/can-symlink-1.0.0.tgz", - "integrity": "sha1-l7YH2KhLtsbiKLkC2GTstZS50hk=", - "requires": { - "tmp": "0.0.28" - } - }, - "caniuse-lite": { - "version": "1.0.30000783", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000783.tgz", - "integrity": "sha1-m1SZ+xtQPSNF0SqmuGEoUvQnb/0=" - }, - "capture-exit": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-1.2.0.tgz", - "integrity": "sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28=", - "dev": true, - "requires": { - "rsvp": "3.6.2" - } - }, - "cardinal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-1.0.0.tgz", - "integrity": "sha1-UOIcGwqjdyn5N33vGWtanOyTLuk=", - "dev": true, - "requires": { - "ansicolors": "0.2.1", - "redeyed": "1.0.1" - } - }, - "center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "optional": true, - "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" - } - }, - "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=", - "dev": true - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "chokidar": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.6.1.tgz", - "integrity": "sha1-L0RHq16W5Q+z14n9kNTHLg5McMI=", - "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" - } - }, - "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 - }, - "clean-base-url": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clean-base-url/-/clean-base-url-1.0.0.tgz", - "integrity": "sha1-yQHPCiC5ckNbDszVLQVoJKQ1G3s=", - "dev": true - }, - "clean-css": { - "version": "3.4.28", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz", - "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=", - "dev": true, - "requires": { - "commander": "2.8.1", - "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" - } - } - } - }, - "clean-css-promise": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/clean-css-promise/-/clean-css-promise-0.1.1.tgz", - "integrity": "sha1-Q/PSyN/LK/BxSBJSzZt2QzwI7ss=", - "dev": true, - "requires": { - "array-to-error": "1.1.1", - "clean-css": "3.4.28", - "pinkie-promise": "2.0.1" - } - }, - "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", - "dev": true, - "requires": { - "restore-cursor": "1.0.1" - } - }, - "cli-spinners": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.1.0.tgz", - "integrity": "sha1-8YR7FohE2RemceudFH499JfJDQY=", - "dev": true - }, - "cli-table": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz", - "integrity": "sha1-9TsFJmqLGguTSz0IIebi3FkUriM=", - "dev": true, - "requires": { - "colors": "1.0.3" - }, - "dependencies": { - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", - "dev": true - } - } - }, - "cli-table2": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/cli-table2/-/cli-table2-0.2.0.tgz", - "integrity": "sha1-LR738hig54biFFQFYtS9F3/jLZc=", - "dev": true, - "requires": { - "colors": "1.1.2", - "lodash": "3.10.1", - "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" - } - }, - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", - "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" - } - } - } - }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "optional": 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, - "optional": true - } - } - }, - "clone": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz", - "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=" - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, - "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 - }, - "color-convert": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", - "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", - "dev": true, - "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=", - "dev": true - }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", - "dev": true, - "optional": true - }, - "commander": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", - "dev": true, - "requires": { - "graceful-readlink": "1.0.1" - } - }, - "common-tags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.5.1.tgz", - "integrity": "sha512-NrUYGY5TApAk9KB+IZXkR3GR4tA3g26HDsoiGt4kCMHZ727gOGkC+UNfq0Z22jE15bLkc/6RV5Jw1RBW6Usg6A==", - "dev": true, - "requires": { - "babel-runtime": "6.26.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 - }, - "compressible": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.12.tgz", - "integrity": "sha1-xZpcmdt2dn6YdlAOJx72OzSTvWY=", - "dev": true, - "requires": { - "mime-db": "1.30.0" - } - }, - "compression": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.1.tgz", - "integrity": "sha1-7/JgPvwuIs+G810uuTWJ+YdTc9s=", - "dev": true, - "requires": { - "accepts": "1.3.4", - "bytes": "3.0.0", - "compressible": "2.0.12", - "debug": "2.6.9", - "on-headers": "1.0.1", - "safe-buffer": "5.1.1", - "vary": "1.1.2" - } - }, - "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.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.3", - "typedarray": "0.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", - "dev": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "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" - } - } - } - }, - "configstore": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.1.tgz", - "integrity": "sha512-5oNkD/L++l0O6xGXxb1EWS7SivtjfGQlRyxJsYgE0Z495/L81e2h4/d3r969hoPXuFItzNOKMtsXgYG4c7dYvw==", - "dev": true, - "requires": { - "dot-prop": "4.2.0", - "graceful-fs": "4.1.11", - "make-dir": "1.1.0", - "unique-string": "1.0.0", - "write-file-atomic": "2.3.0", - "xdg-basedir": "3.0.0" - } - }, - "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 - }, - "console-ui": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/console-ui/-/console-ui-2.0.1.tgz", - "integrity": "sha1-VtByHrzETmycPeAvNV+JirpB6nk=", - "dev": true, - "requires": { - "chalk": "2.3.0", - "inquirer": "2.0.0", - "ora": "1.3.0", - "through": "2.3.8" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true, - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", - "dev": true, - "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" - } - }, - "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", - "dev": true, - "requires": { - "has-flag": "2.0.0" - } - } - } - }, - "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" - } - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", - "dev": true - }, - "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==", - "dev": true - }, - "continuable-cache": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", - "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", - "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=" - }, - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, - "copy-dereference": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/copy-dereference/-/copy-dereference-1.0.0.tgz", - "integrity": "sha1-axMYZUIP2BtBO6mUtE02VTERUrY=", - "dev": true - }, - "core-js": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", - "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" - }, - "core-object": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/core-object/-/core-object-3.1.5.tgz", - "integrity": "sha512-sA2/4+/PZ/KV6CKgjrVrrUVBKCkdDO02CUlQ0YKTQoYUwPYNOtOAcWlbYhd5v/1JqYaA6oZ4sDlOU4ppVw6Wbg==", - "dev": true, - "requires": { - "chalk": "2.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true, - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", - "dev": true, - "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" - } - }, - "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", - "dev": true, - "requires": { - "has-flag": "2.0.0" - } - } - } - }, - "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=", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "lru-cache": "4.1.1", - "shebang-command": "1.2.0", - "which": "1.3.0" - } - }, - "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 - }, - "dag-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dag-map/-/dag-map-2.0.2.tgz", - "integrity": "sha1-lxS0ct6CoYQ94vuptodpOMq0TGg=", - "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, - "optional": 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=", - "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.0", - "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 - } - } - }, - "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.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", - "dev": true - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true - }, - "detect-file": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-0.1.0.tgz", - "integrity": "sha1-STXe39lIhkjgBrASlWbpOGcR6mM=", - "dev": true, - "requires": { - "fs-exists-sync": "0.1.0" - } - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "requires": { - "repeating": "2.0.1" - } - }, - "diff": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.4.0.tgz", - "integrity": "sha512-QpVuMTEoJMF7cKzi6bvWhRulU1fZqZnvyVQgNhPaxxuTYwyjn/j1v9falseQ/uXWwPnO56RBfwtg4h/EQXmucA==", - "dev": true - }, - "doctrine": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.2.tgz", - "integrity": "sha512-y0tm5Pq6ywp3qSTZ1vPgVdAnbDEoeoc5wlOHXoY1c4Wug/a7JvqHIl7BTvwodaHmejWkK/9dSb3sCYfyo/om8A==", - "dev": true, - "requires": { - "esutils": "2.0.2" - } - }, - "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" - } - }, - "editions": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/editions/-/editions-1.3.3.tgz", - "integrity": "sha1-CQcQG92iD6w8vjNMJ8vQaI3Jmls=" - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, - "electron-to-chromium": { - "version": "1.3.29", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.29.tgz", - "integrity": "sha1-elgja5VGjD52YAkTSFItZddzazY=" - }, - "ember-ajax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ember-ajax/-/ember-ajax-3.0.0.tgz", - "integrity": "sha1-jyHp2gwdQzz4eaqFX85GTVF+mrU=", - "dev": true, - "requires": { - "ember-cli-babel": "6.11.0" - } - }, - "ember-cli": { - "version": "2.17.1", - "resolved": "https://registry.npmjs.org/ember-cli/-/ember-cli-2.17.1.tgz", - "integrity": "sha512-Sl/T1plO5g2KNIYo6aCG2hgP//gK53NMI/zdDKZPrUvkELxavS/EM6+SHXxIocgJer1zkQDIb5L2fJo3uBCGUQ==", - "dev": true, - "requires": { - "amd-name-resolver": "1.0.0", - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "bower-config": "1.4.1", - "bower-endpoint-parser": "0.2.2", - "broccoli-babel-transpiler": "6.1.2", - "broccoli-brocfile-loader": "0.18.0", - "broccoli-builder": "0.18.10", - "broccoli-concat": "3.2.2", - "broccoli-config-loader": "1.0.1", - "broccoli-config-replace": "1.1.2", - "broccoli-debug": "0.6.4", - "broccoli-funnel": "2.0.1", - "broccoli-funnel-reducer": "1.0.0", - "broccoli-merge-trees": "2.0.0", - "broccoli-middleware": "1.0.0", - "broccoli-source": "1.1.0", - "broccoli-stew": "1.5.0", - "calculate-cache-key-for-tree": "1.1.0", - "capture-exit": "1.2.0", - "chalk": "2.3.0", - "clean-base-url": "1.0.0", - "compression": "1.7.1", - "configstore": "3.1.1", - "console-ui": "2.0.1", - "core-object": "3.1.5", - "dag-map": "2.0.2", - "diff": "3.4.0", - "ember-cli-broccoli-sane-watcher": "2.0.4", - "ember-cli-is-package-missing": "1.0.0", - "ember-cli-legacy-blueprints": "0.1.5", - "ember-cli-lodash-subset": "2.0.1", - "ember-cli-normalize-entity-name": "1.0.0", - "ember-cli-preprocess-registry": "3.1.1", - "ember-cli-string-utils": "1.1.0", - "ember-try": "0.2.22", - "ensure-posix-path": "1.0.2", - "execa": "0.8.0", - "exists-sync": "0.0.4", - "exit": "0.1.2", - "express": "4.16.2", - "filesize": "3.5.11", - "find-up": "2.1.0", - "fs-extra": "4.0.3", - "fs-tree-diff": "0.5.7", - "get-caller-file": "1.0.2", - "git-repo-info": "1.4.1", - "glob": "7.1.1", - "heimdalljs": "0.2.5", - "heimdalljs-fs-monitor": "0.1.0", - "heimdalljs-graph": "0.3.4", - "heimdalljs-logger": "0.1.9", - "http-proxy": "1.16.2", - "inflection": "1.12.0", - "is-git-url": "1.0.0", - "isbinaryfile": "3.0.2", - "js-yaml": "3.10.0", - "json-stable-stringify": "1.0.1", - "leek": "0.0.24", - "lodash.template": "4.4.0", - "markdown-it": "8.4.0", - "markdown-it-terminal": "0.1.0", - "minimatch": "3.0.4", - "morgan": "1.9.0", - "node-modules-path": "1.0.1", - "nopt": "3.0.6", - "npm-package-arg": "4.2.1", - "portfinder": "1.0.13", - "promise-map-series": "0.2.3", - "quick-temp": "0.1.8", - "resolve": "1.5.0", - "rsvp": "4.7.0", - "sane": "1.7.0", - "semver": "5.4.1", - "silent-error": "1.1.0", - "sort-package-json": "1.7.1", - "symlink-or-copy": "1.1.8", - "temp": "0.8.3", - "testem": "1.18.4", - "tiny-lr": "1.0.5", - "tree-sync": "1.2.2", - "uuid": "3.1.0", - "validate-npm-package-name": "3.0.0", - "walk-sync": "0.3.2", - "yam": "0.0.22" - }, - "dependencies": { - "amd-name-resolver": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/amd-name-resolver/-/amd-name-resolver-1.0.0.tgz", - "integrity": "sha1-Dlk7KNb6MyarF5gQftrqlhBG6Ng=", - "dev": true, - "requires": { - "ensure-posix-path": "1.0.2" - } - }, - "ansi-styles": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true, - "requires": { - "color-convert": "1.9.1" - } - }, - "broccoli-merge-trees": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.0.tgz", - "integrity": "sha1-EK6kbdXOvMi499WlTwqEpPC7kLk=", - "dev": true, - "requires": { - "broccoli-plugin": "1.3.0", - "merge-trees": "1.0.1" - } - }, - "chalk": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", - "dev": true, - "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.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" - } - }, - "rsvp": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.7.0.tgz", - "integrity": "sha1-3BsLGlNvfeydK+ReChKtQZfJ/ZY=", - "dev": true - }, - "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", - "dev": true, - "requires": { - "has-flag": "2.0.0" - } - } - } - }, - "ember-cli-babel": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/ember-cli-babel/-/ember-cli-babel-6.11.0.tgz", - "integrity": "sha512-lHQyl30lbAsMmMq2it1GO85HKrqr2gMpK5CFxmOgTJ3moBqOGMKsdV3Z0qXWpgh8Asy7pB9AACMShdgfQvSGPg==", - "requires": { - "amd-name-resolver": "0.0.7", - "babel-plugin-debug-macros": "0.1.11", - "babel-plugin-ember-modules-api-polyfill": "2.3.0", - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-polyfill": "6.26.0", - "babel-preset-env": "1.6.1", - "broccoli-babel-transpiler": "6.1.2", - "broccoli-debug": "0.6.4", - "broccoli-funnel": "1.2.0", - "broccoli-source": "1.1.0", - "clone": "2.1.1", - "ember-cli-version-checker": "2.1.0", - "semver": "5.4.1" - }, - "dependencies": { - "broccoli-funnel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz", - "integrity": "sha1-zdw6/F/xaFqAI0iP/3TOb7WlEpY=", - "requires": { - "array-equal": "1.0.0", - "blank-object": "1.0.2", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "exists-sync": "0.0.4", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "path-posix": "1.0.0", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - } - } - }, - "ember-cli-broccoli-sane-watcher": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/ember-cli-broccoli-sane-watcher/-/ember-cli-broccoli-sane-watcher-2.0.4.tgz", - "integrity": "sha1-9D9C91t1CcIS+5Js2a6oauGSZMY=", - "dev": true, - "requires": { - "broccoli-slow-trees": "3.0.1", - "heimdalljs": "0.2.5", - "heimdalljs-logger": "0.1.9", - "rsvp": "3.6.2", - "sane": "1.7.0" - } - }, - "ember-cli-dependency-checker": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ember-cli-dependency-checker/-/ember-cli-dependency-checker-2.1.0.tgz", - "integrity": "sha1-nWYoanx3jpRzPq8hMg0SnE/Q3WQ=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "is-git-url": "1.0.0", - "resolve": "1.5.0", - "semver": "5.4.1" - } - }, - "ember-cli-eslint": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/ember-cli-eslint/-/ember-cli-eslint-4.2.3.tgz", - "integrity": "sha512-1fqRz9QVLTT790Zr07aDFmAprZ1vVsaBGJOGQgDEFmBpogq8BeaQopaxogWFp748hol8nGC4QP5tbzhVD6KQHw==", - "dev": true, - "requires": { - "broccoli-lint-eslint": "4.2.1", - "ember-cli-version-checker": "2.1.0", - "rsvp": "4.7.0", - "walk-sync": "0.3.2" - }, - "dependencies": { - "rsvp": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.7.0.tgz", - "integrity": "sha1-3BsLGlNvfeydK+ReChKtQZfJ/ZY=", - "dev": true - } - } - }, - "ember-cli-get-component-path-option": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-cli-get-component-path-option/-/ember-cli-get-component-path-option-1.0.0.tgz", - "integrity": "sha1-DXtZVVni+QUKvtgE8djv8bCLx3E=", - "dev": true - }, - "ember-cli-get-dependency-depth": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-cli-get-dependency-depth/-/ember-cli-get-dependency-depth-1.0.0.tgz", - "integrity": "sha1-4K/s+CotUvAPKKtGgpUoGuw2jRE=", - "dev": true - }, - "ember-cli-htmlbars": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/ember-cli-htmlbars/-/ember-cli-htmlbars-2.0.3.tgz", - "integrity": "sha512-oyWtJebOwxAqWZwMc0NKFJ8FJdxVixM7zl0FaXq1vTAG6bOgnU7yAhXEASlaO5f+PptZueZfOpdpvRwZW/Gk1A==", - "dev": true, - "requires": { - "broccoli-persistent-filter": "1.4.3", - "hash-for-dep": "1.2.3", - "json-stable-stringify": "1.0.1", - "strip-bom": "3.0.0" - } - }, - "ember-cli-htmlbars-inline-precompile": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ember-cli-htmlbars-inline-precompile/-/ember-cli-htmlbars-inline-precompile-1.0.2.tgz", - "integrity": "sha1-W1RPZk1dmRHwjNl5xfcNjLDKKt0=", - "dev": true, - "requires": { - "babel-plugin-htmlbars-inline-precompile": "0.2.3", - "ember-cli-version-checker": "2.1.0", - "hash-for-dep": "1.2.3", - "heimdalljs-logger": "0.1.9", - "silent-error": "1.1.0" - } - }, - "ember-cli-inject-live-reload": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/ember-cli-inject-live-reload/-/ember-cli-inject-live-reload-1.7.0.tgz", - "integrity": "sha512-+0zOwJlf4iR5NcvyeU7E7xU1qDfniP/+mXfNTfAEhHO2eE9sjQvasKV84O1sIIyLk2LMIjFPbGt7uv5fQcIGwg==", - "dev": true - }, - "ember-cli-is-package-missing": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-cli-is-package-missing/-/ember-cli-is-package-missing-1.0.0.tgz", - "integrity": "sha1-bmGEyvuSY13ZPKbJRrEEKS1OM5A=", - "dev": true - }, - "ember-cli-legacy-blueprints": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/ember-cli-legacy-blueprints/-/ember-cli-legacy-blueprints-0.1.5.tgz", - "integrity": "sha1-k8FcokLsUQfWKor37DD2rFOPOtk=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "ember-cli-get-component-path-option": "1.0.0", - "ember-cli-get-dependency-depth": "1.0.0", - "ember-cli-is-package-missing": "1.0.0", - "ember-cli-lodash-subset": "1.0.12", - "ember-cli-normalize-entity-name": "1.0.0", - "ember-cli-path-utils": "1.0.0", - "ember-cli-string-utils": "1.1.0", - "ember-cli-test-info": "1.0.0", - "ember-cli-valid-component-name": "1.0.0", - "ember-cli-version-checker": "1.3.1", - "ember-router-generator": "1.2.3", - "exists-sync": "0.0.3", - "fs-extra": "0.24.0", - "inflection": "1.12.0", - "rsvp": "3.6.2", - "silent-error": "1.1.0" - }, - "dependencies": { - "ember-cli-lodash-subset": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/ember-cli-lodash-subset/-/ember-cli-lodash-subset-1.0.12.tgz", - "integrity": "sha1-ry5366XcsNd/MwjTpv19NFD25Tc=", - "dev": true - }, - "ember-cli-version-checker": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-1.3.1.tgz", - "integrity": "sha1-C8LRNMgwFC2mS/lieg7e0QthrnI=", - "dev": true, - "requires": { - "semver": "5.4.1" - } - }, - "exists-sync": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/exists-sync/-/exists-sync-0.0.3.tgz", - "integrity": "sha1-uRAAC+27ETs3i4L19adjgQdiLc8=", - "dev": true - }, - "fs-extra": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.24.0.tgz", - "integrity": "sha1-1OQ0KpZnXLeEZjOmCZJJMytTmVI=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0", - "path-is-absolute": "1.0.1", - "rimraf": "2.6.2" - } - } - } - }, - "ember-cli-lodash-subset": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ember-cli-lodash-subset/-/ember-cli-lodash-subset-2.0.1.tgz", - "integrity": "sha1-IMtop5D+D94kiN39jvu332/nZvI=", - "dev": true - }, - "ember-cli-normalize-entity-name": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-cli-normalize-entity-name/-/ember-cli-normalize-entity-name-1.0.0.tgz", - "integrity": "sha1-CxT3vLxZmqEXtf3cgeT9A8S61bc=", - "dev": true, - "requires": { - "silent-error": "1.1.0" - } - }, - "ember-cli-path-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-cli-path-utils/-/ember-cli-path-utils-1.0.0.tgz", - "integrity": "sha1-Tjmvi1UwHN3FAXc5t3qAT7ogce0=", - "dev": true - }, - "ember-cli-preprocess-registry": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/ember-cli-preprocess-registry/-/ember-cli-preprocess-registry-3.1.1.tgz", - "integrity": "sha1-OEVsIcTStklFhQz57Gjba6dpKIo=", - "dev": true, - "requires": { - "broccoli-clean-css": "1.1.0", - "broccoli-funnel": "1.2.0", - "broccoli-merge-trees": "1.2.4", - "debug": "2.6.9", - "ember-cli-lodash-subset": "1.0.12", - "exists-sync": "0.0.3", - "process-relative-require": "1.0.0", - "silent-error": "1.1.0" - }, - "dependencies": { - "broccoli-funnel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz", - "integrity": "sha1-zdw6/F/xaFqAI0iP/3TOb7WlEpY=", - "dev": true, - "requires": { - "array-equal": "1.0.0", - "blank-object": "1.0.2", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "exists-sync": "0.0.4", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "path-posix": "1.0.0", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - }, - "dependencies": { - "exists-sync": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/exists-sync/-/exists-sync-0.0.4.tgz", - "integrity": "sha1-l0TCxCjMA7AQYNtFTUsS8O88iHk=", - "dev": true - } - } - }, - "ember-cli-lodash-subset": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/ember-cli-lodash-subset/-/ember-cli-lodash-subset-1.0.12.tgz", - "integrity": "sha1-ry5366XcsNd/MwjTpv19NFD25Tc=", - "dev": true - }, - "exists-sync": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/exists-sync/-/exists-sync-0.0.3.tgz", - "integrity": "sha1-uRAAC+27ETs3i4L19adjgQdiLc8=", - "dev": true - } - } - }, - "ember-cli-qunit": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ember-cli-qunit/-/ember-cli-qunit-4.2.1.tgz", - "integrity": "sha1-iVgObrFX7pi57vvUj7qbt16mRUQ=", - "dev": true, - "requires": { - "ember-cli-babel": "6.11.0", - "ember-qunit": "3.2.2" - } - }, - "ember-cli-release": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/ember-cli-release/-/ember-cli-release-0.2.9.tgz", - "integrity": "sha1-Xo3j0DTGVZeTN0gCMFhHDsEjGts=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "git-tools": "0.1.4", - "make-array": "0.1.2", - "merge": "1.2.0", - "moment-timezone": "0.3.1", - "nopt": "3.0.6", - "rsvp": "3.6.2", - "semver": "4.3.6", - "silent-error": "1.1.0" - }, - "dependencies": { - "semver": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", - "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=", - "dev": true - } - } - }, - "ember-cli-shims": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ember-cli-shims/-/ember-cli-shims-1.2.0.tgz", - "integrity": "sha1-D1Ov8Kq4C18p2jqXMbrFYWndlB8=", - "dev": true, - "requires": { - "broccoli-file-creator": "1.1.1", - "broccoli-merge-trees": "2.0.0", - "ember-cli-version-checker": "2.1.0", - "ember-rfc176-data": "0.3.1", - "silent-error": "1.1.0" - }, - "dependencies": { - "broccoli-merge-trees": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.0.tgz", - "integrity": "sha1-EK6kbdXOvMi499WlTwqEpPC7kLk=", - "dev": true, - "requires": { - "broccoli-plugin": "1.3.0", - "merge-trees": "1.0.1" - } - } - } - }, - "ember-cli-sri": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ember-cli-sri/-/ember-cli-sri-2.1.1.tgz", - "integrity": "sha1-lxYgk0pLkYPPeSPMA+F4uDqpB/0=", - "dev": true, - "requires": { - "broccoli-sri-hash": "2.1.2" - } - }, - "ember-cli-string-utils": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ember-cli-string-utils/-/ember-cli-string-utils-1.1.0.tgz", - "integrity": "sha1-ObZ3/CgF9VFzc1N2/O8njqpEUqE=", - "dev": true - }, - "ember-cli-test-info": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-cli-test-info/-/ember-cli-test-info-1.0.0.tgz", - "integrity": "sha1-7U6WDySel1I8+JHkrtIHLOhFd7Q=", - "dev": true, - "requires": { - "ember-cli-string-utils": "1.1.0" - } - }, - "ember-cli-test-loader": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ember-cli-test-loader/-/ember-cli-test-loader-2.2.0.tgz", - "integrity": "sha512-mlSXX9SciIRwGkFTX6XGyJYp4ry6oCFZRxh5jJ7VH8UXLTNx2ZACtDTwaWtNhYrWXgKyiDUvmD8enD56aePWRA==", - "dev": true, - "requires": { - "ember-cli-babel": "6.11.0" - } - }, - "ember-cli-uglify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ember-cli-uglify/-/ember-cli-uglify-2.0.0.tgz", - "integrity": "sha1-sJZyfX0XGKzJv+XRvIHOJsr99so=", - "dev": true, - "requires": { - "broccoli-uglify-sourcemap": "2.0.1", - "lodash.defaultsdeep": "4.6.0" - } - }, - "ember-cli-valid-component-name": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-cli-valid-component-name/-/ember-cli-valid-component-name-1.0.0.tgz", - "integrity": "sha1-cVUM44fgIzBl8wswsVEKot++h+8=", - "dev": true, - "requires": { - "silent-error": "1.1.0" - } - }, - "ember-cli-version-checker": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-2.1.0.tgz", - "integrity": "sha512-ssiNyVTp+PphroFum8guHX9py4xU1PCxkRYgb25NxumgjpKTPjhkgTfpRRKXlIQe+/wVMmhf+Uv6w9vSLZKWKQ==", - "requires": { - "resolve": "1.5.0", - "semver": "5.4.1" - } - }, - "ember-disable-prototype-extensions": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/ember-disable-prototype-extensions/-/ember-disable-prototype-extensions-1.1.3.tgz", - "integrity": "sha1-GWkTUhdlS14nj5/i2dTkm1cgMp4=", - "dev": true - }, - "ember-export-application-global": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ember-export-application-global/-/ember-export-application-global-2.0.0.tgz", - "integrity": "sha1-jW12GayKGj+MQwA1Sesh6+1oW9I=", - "dev": true, - "requires": { - "ember-cli-babel": "6.11.0" - } - }, - "ember-factory-for-polyfill": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/ember-factory-for-polyfill/-/ember-factory-for-polyfill-1.3.1.tgz", - "integrity": "sha512-y3iG2iCzH96lZMTWQw6LWNLAfOmDC4pXKbZP6FxG8lt7GGaNFkZjwsf+Z5GAe7kxfD7UG4lVkF7x37K82rySGA==", - "requires": { - "ember-cli-version-checker": "2.1.0" - } - }, - "ember-getowner-polyfill": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ember-getowner-polyfill/-/ember-getowner-polyfill-2.2.0.tgz", - "integrity": "sha512-rwGMJgbGzxIAiWYjdpAh04Abvt0s3HuS/VjHzUFhVyVg2pzAuz45B9AzOxYXzkp88vFC7FPaiA4kE8NxNk4A4Q==", - "requires": { - "ember-cli-version-checker": "2.1.0", - "ember-factory-for-polyfill": "1.3.1" - } - }, - "ember-load-initializers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-load-initializers/-/ember-load-initializers-1.0.0.tgz", - "integrity": "sha1-SRnq8G9t/sp+E0Yz2MBabJkh5uc=", - "dev": true, - "requires": { - "ember-cli-babel": "6.11.0" - } - }, - "ember-maybe-import-regenerator-for-testing": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ember-maybe-import-regenerator-for-testing/-/ember-maybe-import-regenerator-for-testing-1.0.0.tgz", - "integrity": "sha512-9ZOjrXZ6iO8WnVuk5kLqUZIFEEOx2O/EA08vcedaT/XSna6LzH2knLx5OiOD9f7XiO8jNaYuZoh0Uq3wnm8/oA==", - "dev": true, - "requires": { - "broccoli-funnel": "1.2.0", - "ember-cli-babel": "6.11.0", - "regenerator-runtime": "0.9.6" - }, - "dependencies": { - "broccoli-funnel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz", - "integrity": "sha1-zdw6/F/xaFqAI0iP/3TOb7WlEpY=", - "dev": true, - "requires": { - "array-equal": "1.0.0", - "blank-object": "1.0.2", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "exists-sync": "0.0.4", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "path-posix": "1.0.0", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - }, - "regenerator-runtime": { - "version": "0.9.6", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", - "integrity": "sha1-0z65XQ0gAaS+OWWXB8UbDLcc4Ck=", - "dev": true - } - } - }, - "ember-qunit": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/ember-qunit/-/ember-qunit-3.2.2.tgz", - "integrity": "sha512-KPbYeOdBe2N3APQ8geckRS6ns7Uoqz/LESSPYQ2e1VIhnFYfdQJC19Jk5g+RWioMxCHw8E8U+VdusibGfSuqVQ==", - "dev": true, - "requires": { - "@ember/test-helpers": "0.7.9", - "broccoli-funnel": "2.0.1", - "broccoli-merge-trees": "2.0.0", - "common-tags": "1.5.1", - "ember-cli-babel": "6.11.0", - "ember-cli-test-loader": "2.2.0", - "qunit": "2.4.1" - }, - "dependencies": { - "broccoli-merge-trees": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.0.tgz", - "integrity": "sha1-EK6kbdXOvMi499WlTwqEpPC7kLk=", - "dev": true, - "requires": { - "broccoli-plugin": "1.3.0", - "merge-trees": "1.0.1" - } - } - } - }, - "ember-resolver": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/ember-resolver/-/ember-resolver-4.5.0.tgz", - "integrity": "sha512-BX8yvFWIbrh1IVZmpIY/14WUb7nD8tQzT5s0aUG/Nwq2LVqD/uNAEPcsq0XS2gLvKawwDQEQN30ptcvJApQBhA==", - "dev": true, - "requires": { - "@glimmer/resolver": "0.4.2", - "babel-plugin-debug-macros": "0.1.11", - "broccoli-funnel": "1.2.0", - "broccoli-merge-trees": "2.0.0", - "ember-cli-babel": "6.11.0", - "ember-cli-version-checker": "2.1.0", - "resolve": "1.5.0" - }, - "dependencies": { - "broccoli-funnel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz", - "integrity": "sha1-zdw6/F/xaFqAI0iP/3TOb7WlEpY=", - "dev": true, - "requires": { - "array-equal": "1.0.0", - "blank-object": "1.0.2", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "exists-sync": "0.0.4", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "path-posix": "1.0.0", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - }, - "broccoli-merge-trees": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.0.tgz", - "integrity": "sha1-EK6kbdXOvMi499WlTwqEpPC7kLk=", - "dev": true, - "requires": { - "broccoli-plugin": "1.3.0", - "merge-trees": "1.0.1" - } - } - } - }, - "ember-rfc176-data": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/ember-rfc176-data/-/ember-rfc176-data-0.3.1.tgz", - "integrity": "sha512-u+W5rUvYO7xyKJjiPuCM7bIAvFyPwPTJ66fOZz1xuCv3AyReI9Oev5oOADOO6YJZk+vEn0xWiZ9N6zSf8WU7Fg==" - }, - "ember-router-generator": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/ember-router-generator/-/ember-router-generator-1.2.3.tgz", - "integrity": "sha1-jtLKhv8yM2MSD8FCeBkeno8TFe4=", - "dev": true, - "requires": { - "recast": "0.11.23" - } - }, - "ember-source": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/ember-source/-/ember-source-2.17.0.tgz", - "integrity": "sha1-t4hx3Um9jWQrgBdt9Pr3/X0Fnaw=", - "dev": true, - "requires": { - "broccoli-funnel": "1.2.0", - "broccoli-merge-trees": "2.0.0", - "ember-cli-get-component-path-option": "1.0.0", - "ember-cli-is-package-missing": "1.0.0", - "ember-cli-normalize-entity-name": "1.0.0", - "ember-cli-path-utils": "1.0.0", - "ember-cli-string-utils": "1.1.0", - "ember-cli-test-info": "1.0.0", - "ember-cli-valid-component-name": "1.0.0", - "ember-cli-version-checker": "2.1.0", - "ember-router-generator": "1.2.3", - "fs-extra": "4.0.3", - "inflection": "1.12.0", - "jquery": "3.2.1", - "resolve": "1.5.0" - }, - "dependencies": { - "broccoli-funnel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz", - "integrity": "sha1-zdw6/F/xaFqAI0iP/3TOb7WlEpY=", - "dev": true, - "requires": { - "array-equal": "1.0.0", - "blank-object": "1.0.2", - "broccoli-plugin": "1.3.0", - "debug": "2.6.9", - "exists-sync": "0.0.4", - "fast-ordered-set": "1.0.3", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "path-posix": "1.0.0", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8", - "walk-sync": "0.3.2" - } - }, - "broccoli-merge-trees": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.0.tgz", - "integrity": "sha1-EK6kbdXOvMi499WlTwqEpPC7kLk=", - "dev": true, - "requires": { - "broccoli-plugin": "1.3.0", - "merge-trees": "1.0.1" - } - } - } - }, - "ember-string-ishtmlsafe-polyfill": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ember-string-ishtmlsafe-polyfill/-/ember-string-ishtmlsafe-polyfill-2.0.0.tgz", - "integrity": "sha512-b2W5MUmcnWsUENFcSEjp65ZRV8EmyPQqhE89MqHawpajvR3ycS29rYyKRdta5P/EkKvS8PC0EV3ugTo4ONARng==", - "dev": true, - "requires": { - "ember-cli-version-checker": "1.3.1" - }, - "dependencies": { - "ember-cli-version-checker": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-1.3.1.tgz", - "integrity": "sha1-C8LRNMgwFC2mS/lieg7e0QthrnI=", - "dev": true, - "requires": { - "semver": "5.4.1" - } - } - } - }, - "ember-try": { - "version": "0.2.22", - "resolved": "https://registry.npmjs.org/ember-try/-/ember-try-0.2.22.tgz", - "integrity": "sha512-5NKqlKCGWqTUWAA61/dchIFKG2loqEBcHHI4ZbCHToKdK82NTzWkifxryhmwzFE0c9MomvQ3Rza7yxVD5C9rMw==", - "dev": true, - "requires": { - "chalk": "1.1.3", - "cli-table2": "0.2.0", - "core-object": "1.1.0", - "debug": "2.6.9", - "ember-try-config": "2.2.0", - "extend": "3.0.1", - "fs-extra": "0.26.7", - "promise-map-series": "0.2.3", - "resolve": "1.5.0", - "rimraf": "2.6.2", - "rsvp": "3.6.2", - "semver": "5.4.1" - }, - "dependencies": { - "core-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/core-object/-/core-object-1.1.0.tgz", - "integrity": "sha1-htY5GHM8+doaWq5ynmLAqI5mrQo=", - "dev": true - }, - "fs-extra": { - "version": "0.26.7", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.26.7.tgz", - "integrity": "sha1-muH92UiXeY7at20JGM9C0MMYT6k=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0", - "klaw": "1.3.1", - "path-is-absolute": "1.0.1", - "rimraf": "2.6.2" - } - } - } - }, - "ember-try-config": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ember-try-config/-/ember-try-config-2.2.0.tgz", - "integrity": "sha1-a+CvbHGUmBPgKseTVk/dv4M2uAc=", - "dev": true, - "requires": { - "lodash": "4.17.4", - "node-fetch": "1.7.3", - "rsvp": "3.6.2", - "semver": "5.4.1" - } - }, - "encodeurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.1.tgz", - "integrity": "sha1-eePVhlU0aQn+bw9Fpd5oEDspTSA=", - "dev": true - }, - "encoding": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", - "dev": true, - "requires": { - "iconv-lite": "0.4.19" - } - }, - "engine.io": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.0.tgz", - "integrity": "sha1-PutfJky3XbvsG6rqJtYfWk6s4qo=", - "dev": true, - "requires": { - "accepts": "1.3.3", - "base64id": "0.1.0", - "cookie": "0.3.1", - "debug": "2.3.3", - "engine.io-parser": "1.3.1", - "ws": "1.1.1" - }, - "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.17", - "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.0", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.0.tgz", - "integrity": "sha1-e3MOQSdBQIdZbZvjyI0rxf22z1w=", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "component-inherit": "0.0.3", - "debug": "2.3.3", - "engine.io-parser": "1.3.1", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parsejson": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "1.1.1", - "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.1", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.1.tgz", - "integrity": "sha1-lVTxrjMQfW+9FwylRm0vgz9qB88=", - "dev": true, - "requires": { - "after": "0.8.1", - "arraybuffer.slice": "0.0.6", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.4", - "has-binary": "0.1.6", - "wtf-8": "1.0.0" - }, - "dependencies": { - "has-binary": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.6.tgz", - "integrity": "sha1-JTJvOc+k9hath4eJTjryz7x7bhA=", - "dev": true, - "requires": { - "isarray": "0.0.1" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "ensure-posix-path": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ensure-posix-path/-/ensure-posix-path-1.0.2.tgz", - "integrity": "sha1-pls+QtC3HPxYXrd0+ZQ8jZuRsMI=" - }, - "entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", - "dev": true - }, - "error": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", - "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", - "dev": true, - "requires": { - "string-template": "0.2.1", - "xtend": "4.0.1" - } - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true - }, - "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=" - }, - "eslint": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.13.1.tgz", - "integrity": "sha512-UCJVV50RtLHYzBp1DZ8CMPtRSg4iVZvjgO9IJHIKyWU/AnJVjtdRikoUPLB29n5pzMB7TnsLQWf0V6VUJfoPfw==", - "dev": true, - "requires": { - "ajv": "5.5.2", - "babel-code-frame": "6.26.0", - "chalk": "2.3.0", - "concat-stream": "1.6.0", - "cross-spawn": "5.1.0", - "debug": "3.1.0", - "doctrine": "2.0.2", - "eslint-scope": "3.7.1", - "espree": "3.5.2", - "esquery": "1.0.0", - "estraverse": "4.2.0", - "esutils": "2.0.2", - "file-entry-cache": "2.0.0", - "functional-red-black-tree": "1.0.1", - "glob": "7.1.2", - "globals": "11.1.0", - "ignore": "3.3.7", - "imurmurhash": "0.1.4", - "inquirer": "3.3.0", - "is-resolvable": "1.0.1", - "js-yaml": "3.10.0", - "json-stable-stringify-without-jsonify": "1.0.1", - "levn": "0.3.0", - "lodash": "4.17.4", - "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", - "require-uncached": "1.0.3", - "semver": "5.4.1", - "strip-ansi": "4.0.0", - "strip-json-comments": "2.0.1", - "table": "4.0.2", - "text-table": "0.2.0" - }, - "dependencies": { - "ansi-escapes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz", - "integrity": "sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ==", - "dev": true - }, - "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.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true, - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", - "dev": true, - "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" - } - }, - "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=", - "dev": true, - "requires": { - "restore-cursor": "2.0.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" - } - }, - "external-editor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz", - "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==", - "dev": true, - "requires": { - "chardet": "0.4.2", - "iconv-lite": "0.4.19", - "tmp": "0.0.33" - } - }, - "globals": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.1.0.tgz", - "integrity": "sha512-uEuWt9mqTlPDwSqi+sHjD4nWU/1N+q0fiWI9T1mZpD2UENqX20CFD5T/ziLZvztPaBKl7ZylUi1q6Qfm7E2CiQ==", - "dev": true - }, - "inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", - "dev": true, - "requires": { - "ansi-escapes": "3.0.0", - "chalk": "2.3.0", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.1.0", - "figures": "2.0.0", - "lodash": "4.17.4", - "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" - } - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "1.1.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "2.0.1", - "signal-exit": "3.0.2" - } - }, - "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": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", - "dev": true, - "requires": { - "has-flag": "2.0.0" - } - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "1.0.2" - } - } - } - }, - "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.0", - "estraverse": "4.2.0" - } - }, - "espree": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.2.tgz", - "integrity": "sha512-sadKeYwaR/aJ3stC2CdvgXu1T16TdYN+qwCpcWbMnGJ8s0zNWemzrvb2GbD4OhmJ/fwpJjudThAlLobGbWZbCQ==", - "dev": true, - "requires": { - "acorn": "5.2.1", - "acorn-jsx": "3.0.1" - } - }, - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": 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.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz", - "integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=", - "dev": true, - "requires": { - "estraverse": "4.2.0", - "object-assign": "4.1.1" - } - }, - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true - }, - "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=", - "dev": true - }, - "eventemitter3": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", - "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=", - "dev": true - }, - "events-to-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", - "dev": true - }, - "exec-sh": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.1.tgz", - "integrity": "sha512-aLt95pexaugVtQerpmE51+4QfWrNc304uez7jvj6fWnN8GeEHpttB8F36n8N7uVhUMbH/1enbxQ9HImZ4w/9qg==", - "dev": true, - "requires": { - "merge": "1.2.0" - } - }, - "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" - } - }, - "exists-stat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/exists-stat/-/exists-stat-1.0.0.tgz", - "integrity": "sha1-BmDjUlouidnkRhKUQMJy7foktSk=", - "dev": true - }, - "exists-sync": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/exists-sync/-/exists-sync-0.0.4.tgz", - "integrity": "sha1-l0TCxCjMA7AQYNtFTUsS8O88iHk=" - }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "exit-hook": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", - "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": "1.2.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz", - "integrity": "sha1-C4HrqJflo9MdHD0QL48BRB5VlEk=", - "dev": true, - "requires": { - "os-homedir": "1.0.2" - } - }, - "express": { - "version": "4.16.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", - "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", - "dev": true, - "requires": { - "accepts": "1.3.4", - "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.1", - "encodeurl": "1.0.1", - "escape-html": "1.0.3", - "etag": "1.8.1", - "finalhandler": "1.1.0", - "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.2", - "qs": "6.5.1", - "range-parser": "1.2.0", - "safe-buffer": "5.1.1", - "send": "0.16.1", - "serve-static": "1.13.1", - "setprototypeof": "1.1.0", - "statuses": "1.3.1", - "type-is": "1.6.15", - "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=", - "dev": true - }, - "external-editor": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-1.1.1.tgz", - "integrity": "sha1-Etew24UPf/fnCBuvQAVwAGDEYAs=", - "dev": true, - "requires": { - "extend": "3.0.1", - "spawn-sync": "1.0.15", - "tmp": "0.0.29" - }, - "dependencies": { - "tmp": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz", - "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=", - "dev": true, - "requires": { - "os-tmpdir": "1.0.2" - } - } - } - }, - "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" - } - }, - "fast-deep-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", - "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=", - "dev": true - }, - "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=", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fast-ordered-set": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fast-ordered-set/-/fast-ordered-set-1.0.3.tgz", - "integrity": "sha1-P7s2Y097555PftvbSjV97iXRhOs=", - "requires": { - "blank-object": "1.0.2" - } - }, - "fast-sourcemap-concat": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/fast-sourcemap-concat/-/fast-sourcemap-concat-1.2.3.tgz", - "integrity": "sha1-IvFOktc543kgM0N27IQzv2deqgQ=", - "dev": true, - "requires": { - "chalk": "0.5.1", - "fs-extra": "0.30.0", - "heimdalljs-logger": "0.1.9", - "memory-streams": "0.1.2", - "mkdirp": "0.5.1", - "rsvp": "3.6.2", - "source-map": "0.4.4", - "source-map-url": "0.3.0", - "sourcemap-validator": "1.0.6" - }, - "dependencies": { - "ansi-regex": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-0.2.1.tgz", - "integrity": "sha1-DY6UaWej2BQ/k+JOKYUl/BsiNfk=", - "dev": true - }, - "ansi-styles": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.1.0.tgz", - "integrity": "sha1-6uy/Zs1waIJ2Cy9GkVgrj1XXp94=", - "dev": true - }, - "chalk": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz", - "integrity": "sha1-Zjs6ZItotV0EaQ1JFnqoN4WPIXQ=", - "dev": true, - "requires": { - "ansi-styles": "1.1.0", - "escape-string-regexp": "1.0.5", - "has-ansi": "0.1.0", - "strip-ansi": "0.3.0", - "supports-color": "0.2.0" - } - }, - "fs-extra": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", - "integrity": "sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0", - "klaw": "1.3.1", - "path-is-absolute": "1.0.1", - "rimraf": "2.6.2" - } - }, - "has-ansi": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz", - "integrity": "sha1-hPJlqujA5qiKEtcCKJS3VoiUxi4=", - "dev": true, - "requires": { - "ansi-regex": "0.2.1" - } - }, - "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" - } - }, - "strip-ansi": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.3.0.tgz", - "integrity": "sha1-JfSOoiynkYfzF0pNuHWTR7sSYiA=", - "dev": true, - "requires": { - "ansi-regex": "0.2.1" - } - }, - "supports-color": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz", - "integrity": "sha1-2S3iaU6z9nMjlz1649i1W0wiGQo=", - "dev": true - } - } - }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "dev": true, - "requires": { - "websocket-driver": "0.7.0" - } - }, - "fb-watchman": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz", - "integrity": "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=", - "dev": true, - "requires": { - "bser": "2.0.0" - } - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "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" - } - }, - "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 - }, - "filesize": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.5.11.tgz", - "integrity": "sha512-ZH7loueKBoDb7yG9esn1U+fgq7BzlzW6NRi5/rMdxIZ05dj7GFD/Xc5rq2CDt5Yq86CyfSYVyx4242QQNZbx1g==", - "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.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.1", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.3.1", - "unpipe": "1.0.0" - } - }, - "find-index": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-index/-/find-index-1.1.0.tgz", - "integrity": "sha1-UwB8ec0wBA1oFteUWOiDfVxXBe8=", - "dev": true - }, - "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" - } - }, - "findup-sync": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.3.tgz", - "integrity": "sha1-QAQ5Kee8YK3wt/SCfExudaDeyhI=", - "dev": true, - "requires": { - "detect-file": "0.1.0", - "is-glob": "2.0.1", - "micromatch": "2.3.11", - "resolve-dir": "0.1.1" - } - }, - "fireworm": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/fireworm/-/fireworm-0.7.1.tgz", - "integrity": "sha1-zPIPeUHxCIg/zduZOD2+bhhhx1g=", - "dev": true, - "requires": { - "async": "0.2.10", - "is-type": "0.0.1", - "lodash.debounce": "3.1.1", - "lodash.flatten": "3.0.2", - "minimatch": "3.0.4" - }, - "dependencies": { - "async": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", - "dev": true - } - } - }, - "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" - } - }, - "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" - } - }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", - "dev": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true - }, - "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=", - "dev": true - }, - "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" - }, - "dependencies": { - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11" - } - } - } - }, - "fs-tree-diff": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/fs-tree-diff/-/fs-tree-diff-0.5.7.tgz", - "integrity": "sha512-dJwDX6NBH7IfdfFjZAdHCZ6fIKc8LwR7kzqUhYRFJuX4g9ctG/7cuqJuwegGQsyLEykp6Z4krq+yIFMQlt7d9Q==", - "requires": { - "heimdalljs-logger": "0.1.9", - "object-assign": "4.1.1", - "path-posix": "1.0.0", - "symlink-or-copy": "1.1.8" - } - }, - "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.8.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 - } - } - }, - "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" - } - } - } - }, - "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-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 - }, - "git-repo-info": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/git-repo-info/-/git-repo-info-1.4.1.tgz", - "integrity": "sha1-KgcoIyVKr2L88HZgB9e2ZRvUGUM=", - "dev": true - }, - "git-tools": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/git-tools/-/git-tools-0.1.4.tgz", - "integrity": "sha1-XkPllEO4pd7bOdumY9pJ55+UOXg=", - "dev": true, - "requires": { - "spawnback": "1.0.0" - } - }, - "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-modules": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz", - "integrity": "sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0=", - "dev": true, - "requires": { - "global-prefix": "0.1.5", - "is-windows": "0.2.0" - } - }, - "global-prefix": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz", - "integrity": "sha1-jTvGuNo8qBEqFg2NSW/wRiv+948=", - "dev": true, - "requires": { - "homedir-polyfill": "1.0.1", - "ini": "1.3.5", - "is-windows": "0.2.0", - "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==" - }, - "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 - } - } - }, - "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", - "dev": true - }, - "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 - }, - "growly": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", - "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" - } - } - } - }, - "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" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "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": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "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 - }, - "hash-for-dep": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/hash-for-dep/-/hash-for-dep-1.2.3.tgz", - "integrity": "sha512-NE//rDaCFpWHViw30YM78OAGBShU+g4dnUGY3UWGyEzPOGYg/ptOjk32nEc+bC1xz+RfK5UIs6lOL6eQdrV4Ow==", - "requires": { - "broccoli-kitchen-sink-helpers": "0.3.1", - "heimdalljs": "0.2.5", - "heimdalljs-logger": "0.1.9", - "resolve": "1.5.0" - } - }, - "heimdalljs": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.5.tgz", - "integrity": "sha1-aqVDCO7nk7ZCz/nPlHgURfN3MKw=", - "requires": { - "rsvp": "3.2.1" - }, - "dependencies": { - "rsvp": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz", - "integrity": "sha1-B8tKXfJa3Z6Cbrxn3Mn9idsn2Eo=" - } - } - }, - "heimdalljs-fs-monitor": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/heimdalljs-fs-monitor/-/heimdalljs-fs-monitor-0.1.0.tgz", - "integrity": "sha1-1ASmVojGcUxIVGntNJXaSFNEAnI=", - "dev": true, - "requires": { - "heimdalljs": "0.2.5", - "heimdalljs-logger": "0.1.9" - } - }, - "heimdalljs-graph": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/heimdalljs-graph/-/heimdalljs-graph-0.3.4.tgz", - "integrity": "sha512-2DXgPIxdatgtBOjlh5qeVeHIGMTC2V9ujEvUhVJBVOVwqnU41g1OuGaRugLi6rvk0E+u1koYkfPeptybV8ZJ4g==", - "dev": true - }, - "heimdalljs-logger": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/heimdalljs-logger/-/heimdalljs-logger-0.1.9.tgz", - "integrity": "sha1-12raTkW3u294b8nAEKaOsuL68XY=", - "requires": { - "debug": "2.6.9", - "heimdalljs": "0.2.5" - } - }, - "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=", - "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=", - "dev": true, - "requires": { - "parse-passwd": "1.0.0" - } - }, - "hosted-git-info": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", - "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==", - "dev": true - }, - "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "dev": true, - "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": "1.3.1" - }, - "dependencies": { - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", - "dev": true - } - } - }, - "http-parser-js": { - "version": "0.4.9", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.9.tgz", - "integrity": "sha1-6hoE+2St/wJC6ZdPKX3Uw8rSceE=", - "dev": true - }, - "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" - } - }, - "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==", - "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 - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true - }, - "inflection": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.12.0.tgz", - "integrity": "sha1-ogCTVlbW9fa8TcdQLhrstwMihBY=", - "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==", - "dev": true - }, - "inline-source-map-comment": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/inline-source-map-comment/-/inline-source-map-comment-1.0.5.tgz", - "integrity": "sha1-UKikTCp5DfrEQbXJTszVRiY1+vY=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "get-stdin": "4.0.1", - "minimist": "1.2.0", - "sum-up": "1.0.3", - "xtend": "4.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "inquirer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-2.0.0.tgz", - "integrity": "sha1-4TUWh7kNFQykA86qPO+x4wZb70s=", - "dev": true, - "requires": { - "ansi-escapes": "1.4.0", - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "cli-width": "2.2.0", - "external-editor": "1.1.1", - "figures": "2.0.0", - "lodash": "4.17.4", - "mute-stream": "0.0.6", - "pinkie-promise": "2.0.1", - "run-async": "2.3.0", - "rx": "4.1.0", - "string-width": "2.1.1", - "strip-ansi": "3.0.1", - "through": "2.3.8" - } - }, - "invariant": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", - "requires": { - "loose-envify": "1.3.1" - } - }, - "ipaddr.js": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz", - "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A=", - "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-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=", - "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=", - "dev": true - }, - "is-git-url": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-git-url/-/is-git-url-1.0.0.tgz", - "integrity": "sha1-U/aEzRQyhbUsMkS05vKCU1J69ms=", - "dev": true - }, - "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-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-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.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", - "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", - "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-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=", - "dev": true - }, - "is-resolvable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.1.tgz", - "integrity": "sha512-y5CXYbzvB3jTnWAZH1Nl7ykUWb6T3BcTs56HUruwBf8MhF56n1HWqhDWnVFo8GHrUPDgvUUNVhrc2U8W7iqz5g==", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-type": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/is-type/-/is-type-0.0.1.tgz", - "integrity": "sha1-9lHYXDZdRJVdFKUdjXBh8/a0d5w=", - "dev": true, - "requires": { - "core-util-is": "1.0.2" - } - }, - "is-windows": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", - "integrity": "sha1-3hqm1j6indJIc3tp8f+LgALSEIw=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "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=", - "dev": true - }, - "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" - } - }, - "istextorbinary": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.1.0.tgz", - "integrity": "sha1-2+0qb1G+L3R1to+JRlgRFBt1iHQ=", - "requires": { - "binaryextensions": "2.0.0", - "editions": "1.3.3", - "textextensions": "2.1.0" - } - }, - "jquery": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.2.1.tgz", - "integrity": "sha1-XE2d5lKvbNCncBVKYxu6ErAVx4c=", - "dev": true - }, - "js-reporters": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/js-reporters/-/js-reporters-1.2.0.tgz", - "integrity": "sha1-fPLLaYGWaEeQNQ0MTKB/Su2ewX4=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "js-yaml": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", - "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", - "dev": true, - "requires": { - "argparse": "1.0.9", - "esprima": "4.0.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", - "dev": true - } - } - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" - }, - "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=", - "dev": true - }, - "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=", - "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 - }, - "json3": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", - "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", - "dev": true - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" - }, - "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" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" - }, - "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" - } - }, - "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true, - "optional": true - }, - "leek": { - "version": "0.0.24", - "resolved": "https://registry.npmjs.org/leek/-/leek-0.0.24.tgz", - "integrity": "sha1-5ADlfw5g2O8r1NBo3EKKVDRdvNo=", - "dev": true, - "requires": { - "debug": "2.6.9", - "lodash.assign": "3.2.0", - "rsvp": "3.6.2" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "requires": { - "prelude-ls": "1.1.2", - "type-check": "0.3.2" - } - }, - "linkify-it": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.0.3.tgz", - "integrity": "sha1-2UpGSPmxwXnWT6lykSaL22zpQ08=", - "dev": true, - "requires": { - "uc.micro": "1.0.3" - } - }, - "livereload-js": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.2.2.tgz", - "integrity": "sha1-bIclfmSKtHW8JOoldFftzB+NC8I=", - "dev": true - }, - "loader.js": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/loader.js/-/loader.js-4.6.0.tgz", - "integrity": "sha512-NjAnzMq/BM2VlXA9er0Nx1Runocgi+hEU53ENhCtTx82GX6/l9NXwfIqg81om6QvmhUlv2zH+4R+N+wOoeXytQ==", - "dev": true - }, - "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.4", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" - }, - "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" - }, - "dependencies": { - "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._basebind": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._basebind/-/lodash._basebind-2.3.0.tgz", - "integrity": "sha1-K1vEUqDhBhQ7IYafIzvbWHQX0kg=", - "dev": true, - "requires": { - "lodash._basecreate": "2.3.0", - "lodash._setbinddata": "2.3.0", - "lodash.isobject": "2.3.0" - } - }, - "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": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._basecreate/-/lodash._basecreate-2.3.0.tgz", - "integrity": "sha1-m4ioak3P97fzxh2Dovz8BnHsneA=", - "dev": true, - "requires": { - "lodash._renative": "2.3.0", - "lodash.isobject": "2.3.0", - "lodash.noop": "2.3.0" - } - }, - "lodash._basecreatecallback": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._basecreatecallback/-/lodash._basecreatecallback-2.3.0.tgz", - "integrity": "sha1-N7KrF1kaM56YjbMln81GAZ16w2I=", - "dev": true, - "requires": { - "lodash._setbinddata": "2.3.0", - "lodash.bind": "2.3.0", - "lodash.identity": "2.3.0", - "lodash.support": "2.3.0" - } - }, - "lodash._basecreatewrapper": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._basecreatewrapper/-/lodash._basecreatewrapper-2.3.0.tgz", - "integrity": "sha1-qgxhrZYETDkzN2ExSDqXWcNlEkc=", - "dev": true, - "requires": { - "lodash._basecreate": "2.3.0", - "lodash._setbinddata": "2.3.0", - "lodash._slice": "2.3.0", - "lodash.isobject": "2.3.0" - } - }, - "lodash._baseflatten": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/lodash._baseflatten/-/lodash._baseflatten-3.1.4.tgz", - "integrity": "sha1-B3D/gBMa9uNPO1EXlqe6UhTmX/c=", - "dev": true, - "requires": { - "lodash.isarguments": "3.1.0", - "lodash.isarray": "3.0.4" - } - }, - "lodash._bindcallback": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz", - "integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4=", - "dev": true - }, - "lodash._createassigner": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz", - "integrity": "sha1-g4pbri/aymOsIt7o4Z+k5taXCxE=", - "dev": true, - "requires": { - "lodash._bindcallback": "3.0.1", - "lodash._isiterateecall": "3.0.9", - "lodash.restparam": "3.6.1" - } - }, - "lodash._createwrapper": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._createwrapper/-/lodash._createwrapper-2.3.0.tgz", - "integrity": "sha1-0arhEC2t9EDo4G/BM6bt1/4UYHU=", - "dev": true, - "requires": { - "lodash._basebind": "2.3.0", - "lodash._basecreatewrapper": "2.3.0", - "lodash.isfunction": "2.3.0" - } - }, - "lodash._escapehtmlchar": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._escapehtmlchar/-/lodash._escapehtmlchar-2.3.0.tgz", - "integrity": "sha1-0D2mvYLu3zjcCltQPXQOzQ6JRZI=", - "dev": true, - "requires": { - "lodash._htmlescapes": "2.3.0" - } - }, - "lodash._escapestringchar": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._escapestringchar/-/lodash._escapestringchar-2.3.0.tgz", - "integrity": "sha1-zOc65g/G2lXSv4oGecI8orqxSfw=", - "dev": true - }, - "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._htmlescapes": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._htmlescapes/-/lodash._htmlescapes-2.3.0.tgz", - "integrity": "sha1-HKmIY8rfH6HYLITzXzHkBVagTzo=", - "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._objecttypes": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._objecttypes/-/lodash._objecttypes-2.3.0.tgz", - "integrity": "sha1-aj6jmH3W7rgCGy1cnDA1Scwrrh4=", - "dev": true - }, - "lodash._reinterpolate": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-2.3.0.tgz", - "integrity": "sha1-A+6dhcDlXL1ZDXFgiilb3aURKOw=", - "dev": true - }, - "lodash._renative": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._renative/-/lodash._renative-2.3.0.tgz", - "integrity": "sha1-d9jt1M7SbdWXH54Vpfdy5OMX+9M=", - "dev": true - }, - "lodash._reunescapedhtml": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._reunescapedhtml/-/lodash._reunescapedhtml-2.3.0.tgz", - "integrity": "sha1-25ILVax/P/glk5rOubosIxcT0k0=", - "dev": true, - "requires": { - "lodash._htmlescapes": "2.3.0", - "lodash.keys": "2.3.0" - } - }, - "lodash._setbinddata": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._setbinddata/-/lodash._setbinddata-2.3.0.tgz", - "integrity": "sha1-5WEEkKzRMnfVmFjZW18nJ/FQjwQ=", - "dev": true, - "requires": { - "lodash._renative": "2.3.0", - "lodash.noop": "2.3.0" - } - }, - "lodash._shimkeys": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._shimkeys/-/lodash._shimkeys-2.3.0.tgz", - "integrity": "sha1-YR+TFJ4+bHIQlrSHae8pU3rai6k=", - "dev": true, - "requires": { - "lodash._objecttypes": "2.3.0" - } - }, - "lodash._slice": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash._slice/-/lodash._slice-2.3.0.tgz", - "integrity": "sha1-FHGYEyhZly5GgMoppZkshVZpqlw=", - "dev": true - }, - "lodash.assign": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-3.2.0.tgz", - "integrity": "sha1-POnwI0tLIiPilrj6CsH+6OvKZPo=", - "dev": true, - "requires": { - "lodash._baseassign": "3.2.0", - "lodash._createassigner": "3.1.1", - "lodash.keys": "3.1.2" - }, - "dependencies": { - "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.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", - "dev": true - }, - "lodash.bind": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-2.3.0.tgz", - "integrity": "sha1-wqjhi2jl7MFS4rFoJmEW/qWwFsw=", - "dev": true, - "requires": { - "lodash._createwrapper": "2.3.0", - "lodash._renative": "2.3.0", - "lodash._slice": "2.3.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.debounce": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-3.1.1.tgz", - "integrity": "sha1-gSIRw3ipTMKdWqTjNGzwv846ffU=", - "dev": true, - "requires": { - "lodash._getnative": "3.9.1" - } - }, - "lodash.defaults": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-2.3.0.tgz", - "integrity": "sha1-qDKwAfE487uXIcKBmip8xa4h7SU=", - "dev": true, - "requires": { - "lodash._objecttypes": "2.3.0", - "lodash.keys": "2.3.0" - } - }, - "lodash.defaultsdeep": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.0.tgz", - "integrity": "sha1-vsECT4WxvZbL6kBbI8FK1kQ6b4E=", - "dev": true - }, - "lodash.escape": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-2.3.0.tgz", - "integrity": "sha1-hEw4xY+EThNi6+lnJhWbYs9fKlg=", - "dev": true, - "requires": { - "lodash._escapehtmlchar": "2.3.0", - "lodash._reunescapedhtml": "2.3.0", - "lodash.keys": "2.3.0" - } - }, - "lodash.find": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.find/-/lodash.find-4.6.0.tgz", - "integrity": "sha1-ywcE1Hq3F4n/oN6Ll92Sb7iLE7E=", - "dev": true - }, - "lodash.flatten": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-3.0.2.tgz", - "integrity": "sha1-3hz1d1j49EeTGdNcPpzGDEUBk4w=", - "dev": true, - "requires": { - "lodash._baseflatten": "3.1.4", - "lodash._isiterateecall": "3.0.9" - } - }, - "lodash.foreach": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-2.3.0.tgz", - "integrity": "sha1-CDQEyR6EbudyRf3512UZxosq8Wg=", - "dev": true, - "requires": { - "lodash._basecreatecallback": "2.3.0", - "lodash.forown": "2.3.0" - } - }, - "lodash.forown": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.forown/-/lodash.forown-2.3.0.tgz", - "integrity": "sha1-JPtKr4ANRfwtxgv+w84EyDajrX8=", - "dev": true, - "requires": { - "lodash._basecreatecallback": "2.3.0", - "lodash._objecttypes": "2.3.0", - "lodash.keys": "2.3.0" - } - }, - "lodash.identity": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.identity/-/lodash.identity-2.3.0.tgz", - "integrity": "sha1-awGiEMlIU1XCqRO0i2cRIZoXPe0=", - "dev": true - }, - "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.isfunction": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-2.3.0.tgz", - "integrity": "sha1-aylz5HpkfPEucNZ2rqE2Q3BuUmc=", - "dev": true - }, - "lodash.isobject": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-2.3.0.tgz", - "integrity": "sha1-LhbT/Fg9qYMZaJU/LY5tc0NPZ5k=", - "dev": true, - "requires": { - "lodash._objecttypes": "2.3.0" - } - }, - "lodash.keys": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-2.3.0.tgz", - "integrity": "sha1-s1D0+Syqn0WkouzwGEVM8vKK4lM=", - "dev": true, - "requires": { - "lodash._renative": "2.3.0", - "lodash._shimkeys": "2.3.0", - "lodash.isobject": "2.3.0" - } - }, - "lodash.merge": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.0.tgz", - "integrity": "sha1-aYhLoUSsM/5plzemCG3v+t0PicU=", - "dev": true - }, - "lodash.noop": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.noop/-/lodash.noop-2.3.0.tgz", - "integrity": "sha1-MFnWKNUbv5N80qC2/Dp/ISpmnCw=", - "dev": true - }, - "lodash.omit": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", - "integrity": "sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA=", - "dev": true - }, - "lodash.restparam": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", - "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=", - "dev": true - }, - "lodash.support": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.support/-/lodash.support-2.3.0.tgz", - "integrity": "sha1-fq8DivTw1qq3drRKptz8gDNMm/0=", - "dev": true, - "requires": { - "lodash._renative": "2.3.0" - } - }, - "lodash.template": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz", - "integrity": "sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A=", - "dev": true, - "requires": { - "lodash._reinterpolate": "3.0.0", - "lodash.templatesettings": "4.1.0" - }, - "dependencies": { - "lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", - "dev": true - }, - "lodash.templatesettings": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz", - "integrity": "sha1-K01OlbpEDZFf8IvImeRVNmZxMxY=", - "dev": true, - "requires": { - "lodash._reinterpolate": "3.0.0" - } - } - } - }, - "lodash.templatesettings": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-2.3.0.tgz", - "integrity": "sha1-MD0TLDQnEAQNWhjvqi1XL9A/jNw=", - "dev": true, - "requires": { - "lodash._reinterpolate": "2.3.0", - "lodash.escape": "2.3.0" - } - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true - }, - "lodash.uniqby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz", - "integrity": "sha1-2ZwHpmnp5tJOE2Lf4mbGdhavEwI=", - "dev": true - }, - "lodash.values": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.values/-/lodash.values-2.3.0.tgz", - "integrity": "sha1-ypb75gogsLDsK6K6X8anZb0Uo7o=", - "dev": true, - "requires": { - "lodash.keys": "2.3.0" - } - }, - "log-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", - "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", - "dev": true, - "requires": { - "chalk": "1.1.3" - } - }, - "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=", - "requires": { - "js-tokens": "3.0.2" - } - }, - "lru-cache": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", - "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", - "dev": true, - "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" - } - }, - "make-array": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/make-array/-/make-array-0.1.2.tgz", - "integrity": "sha1-M14267DFpDFU0hIToeyuriobs+8=", - "dev": true - }, - "make-dir": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz", - "integrity": "sha512-0Pkui4wLJ7rxvmfUvs87skoEaxmu0hCUApF8nonzpl7q//FWp9zu8W61Scz4sd/kUiqDxvUhtoam2efDyiBzcA==", - "dev": true, - "requires": { - "pify": "3.0.0" - } - }, - "makeerror": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", - "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", - "dev": true, - "requires": { - "tmpl": "1.0.4" - } - }, - "markdown-it": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.0.tgz", - "integrity": "sha512-tNuOCCfunY5v5uhcO2AUMArvKAyKMygX8tfup/JrgnsDqcCATQsAExBq7o5Ml9iMmO82bk6jYNLj6khcrl0JGA==", - "dev": true, - "requires": { - "argparse": "1.0.9", - "entities": "1.1.1", - "linkify-it": "2.0.3", - "mdurl": "1.0.1", - "uc.micro": "1.0.3" - } - }, - "markdown-it-terminal": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/markdown-it-terminal/-/markdown-it-terminal-0.1.0.tgz", - "integrity": "sha1-VFq9jdAcPWI1O/zqcdtYC1HSK9k=", - "dev": true, - "requires": { - "ansi-styles": "3.2.0", - "cardinal": "1.0.0", - "cli-table": "0.3.1", - "lodash.merge": "4.6.0", - "markdown-it": "8.4.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true, - "requires": { - "color-convert": "1.9.1" - } - } - } - }, - "matcher-collection": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/matcher-collection/-/matcher-collection-1.0.5.tgz", - "integrity": "sha512-nUCmzKipcJEwYsBVAFh5P+d7JBuhJaW1xs85Hara9xuMLqtCVUrW6DSC0JVIkluxEH2W45nPBM/wjHtBXa/tYA==", - "requires": { - "minimatch": "3.0.4" - } - }, - "md5-hex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", - "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", - "dev": true, - "requires": { - "md5-o-matic": "0.1.1" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", - "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", - "dev": true - }, - "mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", - "dev": true - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true - }, - "memory-streams": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/memory-streams/-/memory-streams-0.1.2.tgz", - "integrity": "sha1-Jz/3d6tg/sWZsRY1UlUoLMosUMI=", - "dev": true, - "requires": { - "readable-stream": "1.0.34" - } - }, - "merge": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.0.tgz", - "integrity": "sha1-dTHjnUlJwoGma4xabgJl6LBYlNo=", - "dev": true - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true - }, - "merge-trees": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-trees/-/merge-trees-1.0.1.tgz", - "integrity": "sha1-zL5nRWl4f53vF/1G5lJfVwC70j4=", - "dev": true, - "requires": { - "can-symlink": "1.0.0", - "fs-tree-diff": "0.5.7", - "heimdalljs": "0.2.5", - "heimdalljs-logger": "0.1.9", - "rimraf": "2.6.2", - "symlink-or-copy": "1.1.8" - } - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true - }, - "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" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "mime-db": { - "version": "1.30.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", - "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=", - "dev": true - }, - "mime-types": { - "version": "2.1.17", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", - "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", - "dev": true, - "requires": { - "mime-db": "1.30.0" - } - }, - "mimic-fn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", - "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=", - "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.8" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - }, - "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" - } - }, - "mktemp": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/mktemp/-/mktemp-0.4.0.tgz", - "integrity": "sha1-bQUVYRyKjITkhKogABKbmOmB/ws=" - }, - "moment": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.20.1.tgz", - "integrity": "sha512-Yh9y73JRljxW5QxN08Fner68eFLxM5ynNOAw2LbIB1YAGeQzZT8QFSUvkAz609Zf+IHhhaUxqZK8dG3W/+HEvg==", - "dev": true - }, - "moment-timezone": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.3.1.tgz", - "integrity": "sha1-PvR4VrAtU7cYoQpewgI6opnge/U=", - "dev": true, - "requires": { - "moment": "2.20.1" - } - }, - "morgan": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz", - "integrity": "sha1-0B+mxlhZt2/PMbPLU6OCGjEdgFE=", - "dev": true, - "requires": { - "basic-auth": "2.0.0", - "debug": "2.6.9", - "depd": "1.1.1", - "on-finished": "2.3.0", - "on-headers": "1.0.1" - } - }, - "mout": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mout/-/mout-1.1.0.tgz", - "integrity": "sha512-XsP0vf4As6BfqglxZqbqQ8SR6KQot2AgxvR0gG+WtUkf90vUXchMOZQtPf/Hml1rEffJupqL/tIrU6EYhsUQjw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "mustache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/mustache/-/mustache-2.3.0.tgz", - "integrity": "sha1-QCj3d4sXcIpImTCm5SrDvKDaQdA=", - "dev": true - }, - "mute-stream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.6.tgz", - "integrity": "sha1-SJYrGeFp/R38JAs/HnMXYnu8R9s=", - "dev": true - }, - "nan": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", - "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=", - "dev": true, - "optional": 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 - }, - "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", - "dev": true - }, - "node-fetch": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", - "dev": true, - "requires": { - "encoding": "0.1.12", - "is-stream": "1.1.0" - } - }, - "node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", - "dev": true - }, - "node-modules-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/node-modules-path/-/node-modules-path-1.0.1.tgz", - "integrity": "sha1-QAlrCM560OoUaAhjr0ScfHWl0cg=", - "dev": true - }, - "node-notifier": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.1.2.tgz", - "integrity": "sha1-L6nhJgX6EACdRFSdb82KY93g5P8=", - "dev": true, - "requires": { - "growly": "1.3.0", - "semver": "5.4.1", - "shellwords": "0.1.1", - "which": "1.3.0" - } - }, - "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-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" - } - }, - "npm-package-arg": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-4.2.1.tgz", - "integrity": "sha1-WTMD/eqF98Qid18X+et2cPaA4+w=", - "dev": true, - "requires": { - "hosted-git-info": "2.5.0", - "semver": "5.4.1" - } - }, - "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" - } - }, - "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=" - }, - "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.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" - } - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", - "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", - "dev": true - }, - "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": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "dev": true - }, - "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" - } - }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "dev": true, - "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" - }, - "dependencies": { - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true - } - } - }, - "options": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", - "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=", - "dev": true - }, - "ora": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-1.3.0.tgz", - "integrity": "sha1-gAeN0rkqk0r2ajrXKluRBpTt5Ro=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "cli-cursor": "2.1.0", - "cli-spinners": "1.1.0", - "log-symbols": "1.0.2" - }, - "dependencies": { - "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=", - "dev": true, - "requires": { - "restore-cursor": "2.0.0" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "1.1.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "2.0.1", - "signal-exit": "3.0.2" - } - } - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-shim": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", - "dev": true - }, - "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.4", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", - "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", - "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.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", - "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=", - "dev": true - }, - "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.1.0" - } - }, - "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-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": 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=", - "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-posix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/path-posix/-/path-posix-1.0.0.tgz", - "integrity": "sha1-BrJhE/Vr6rBCVFojv6iAA8ysJg8=" - }, - "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=", - "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" - } - }, - "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 - }, - "portfinder": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.13.tgz", - "integrity": "sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek=", - "dev": true, - "requires": { - "async": "1.5.2", - "debug": "2.6.9", - "mkdirp": "0.5.1" - }, - "dependencies": { - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true - } - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true - }, - "printf": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/printf/-/printf-0.2.5.tgz", - "integrity": "sha1-xDjKLKM+OSdnHbSracDlL5NqTw8=", - "dev": true - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" - }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", - "dev": true - }, - "process-relative-require": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-relative-require/-/process-relative-require-1.0.0.tgz", - "integrity": "sha1-FZDfz1uPKYO6U+OYRGtoJAtMxoo=", - "dev": true, - "requires": { - "node-modules-path": "1.0.1" - } - }, - "progress": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", - "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", - "dev": true - }, - "promise-map-series": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/promise-map-series/-/promise-map-series-0.2.3.tgz", - "integrity": "sha1-wtN3r8kyU/a9A9u3d1XriKsgqEc=", - "requires": { - "rsvp": "3.6.2" - } - }, - "proxy-addr": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", - "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=", - "dev": true, - "requires": { - "forwarded": "0.1.2", - "ipaddr.js": "1.5.2" - } - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true - }, - "quick-temp": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/quick-temp/-/quick-temp-0.1.8.tgz", - "integrity": "sha1-urAqJCq4+w3XWKPJd2sy+aXZRAg=", - "requires": { - "mktemp": "0.4.0", - "rimraf": "2.6.2", - "underscore.string": "3.3.4" - } - }, - "qunit": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/qunit/-/qunit-2.4.1.tgz", - "integrity": "sha512-AWAubD4gvbcFsQzb9KkkxM/BUEygIaC6yiq1aPqXyW2UAGb1uxvtwxJQ2dC2YfDFgJiAWBQJdvosAQ518BPoeQ==", - "dev": true, - "requires": { - "chokidar": "1.6.1", - "commander": "2.9.0", - "exists-stat": "1.0.0", - "findup-sync": "0.4.3", - "js-reporters": "1.2.0", - "resolve": "1.3.2", - "walk-sync": "0.3.1" - }, - "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" - } - }, - "resolve": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.3.2.tgz", - "integrity": "sha1-HwRCyeDLuBNuh7kwX5MvRsfygjU=", - "dev": true, - "requires": { - "path-parse": "1.0.5" - } - }, - "walk-sync": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-0.3.1.tgz", - "integrity": "sha1-VYoWrqyMDbWcAotzxm85doTs5GU=", - "dev": true, - "requires": { - "ensure-posix-path": "1.0.2", - "matcher-collection": "1.0.5" - } - } - } - }, - "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" - } - } - } - }, - "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", - "dev": true - }, - "raw-body": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", - "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", - "dev": true, - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", - "unpipe": "1.0.0" - } - }, - "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" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "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.3", - "set-immediate-shim": "1.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", - "dev": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "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" - } - } - } - }, - "recast": { - "version": "0.11.23", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.11.23.tgz", - "integrity": "sha1-RR/TAEqx5N+bTktmN2sqIZEkYtM=", - "dev": true, - "requires": { - "ast-types": "0.9.6", - "esprima": "3.1.3", - "private": "0.1.8", - "source-map": "0.5.7" - } - }, - "redeyed": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/redeyed/-/redeyed-1.0.1.tgz", - "integrity": "sha1-6WwZO0DAgWsArshCaY5hGF5VSYo=", - "dev": true, - "requires": { - "esprima": "3.0.0" - }, - "dependencies": { - "esprima": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.0.0.tgz", - "integrity": "sha1-U88kes2ncxPlUcOqLnM0LT+099k=", - "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==" - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" - }, - "regenerator-transform": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", - "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "private": "0.1.8" - } - }, - "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" - } - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "requires": { - "regenerate": "1.3.3", - "regjsgen": "0.2.0", - "regjsparser": "0.1.5" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=" - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "requires": { - "jsesc": "0.5.0" - } - }, - "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 - }, - "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=", - "requires": { - "is-finite": "1.0.2" - } - }, - "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=", - "dev": true - }, - "resolve": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", - "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", - "requires": { - "path-parse": "1.0.5" - } - }, - "resolve-dir": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz", - "integrity": "sha1-shklmlYC+sXFxJatiUpujMQwJh4=", - "dev": true, - "requires": { - "expand-tilde": "1.2.2", - "global-modules": "0.2.3" - } - }, - "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 - }, - "restore-cursor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", - "dev": true, - "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" - } - }, - "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, - "optional": 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==", - "requires": { - "glob": "7.1.2" - } - }, - "rsvp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz", - "integrity": "sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==" - }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, - "requires": { - "is-promise": "2.1.0" - } - }, - "rx": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", - "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", - "dev": true - }, - "rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", - "dev": true - }, - "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=", - "dev": true, - "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==", - "dev": true - }, - "safe-json-parse": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", - "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", - "dev": true - }, - "sane": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/sane/-/sane-1.7.0.tgz", - "integrity": "sha1-s1ebzLRclM8gNVzIESSZDf00bjA=", - "dev": true, - "requires": { - "anymatch": "1.3.2", - "exec-sh": "0.2.1", - "fb-watchman": "2.0.0", - "minimatch": "3.0.4", - "minimist": "1.2.0", - "walker": "1.0.7", - "watch": "0.10.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "semver": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" - }, - "send": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", - "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "1.1.1", - "destroy": "1.0.4", - "encodeurl": "1.0.1", - "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.3.1" - }, - "dependencies": { - "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", - "dev": true - } - } - }, - "serve-static": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", - "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", - "dev": true, - "requires": { - "encodeurl": "1.0.1", - "escape-html": "1.0.3", - "parseurl": "1.3.2", - "send": "0.16.1" - } - }, - "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 - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "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=", - "dev": true, - "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=", - "dev": true - }, - "shellwords": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true - }, - "silent-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/silent-error/-/silent-error-1.1.0.tgz", - "integrity": "sha1-IglwbxyFCp8dENDYQJGLRvJuG8k=", - "dev": true, - "requires": { - "debug": "2.6.9" - } - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, - "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" - } - }, - "socket.io": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-1.6.0.tgz", - "integrity": "sha1-PkDZMmN+a9kjmBslyvfFPoO24uE=", - "dev": true, - "requires": { - "debug": "2.3.3", - "engine.io": "1.8.0", - "has-binary": "0.1.7", - "object-assign": "4.1.0", - "socket.io-adapter": "0.5.0", - "socket.io-client": "1.6.0", - "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.6.0", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.6.0.tgz", - "integrity": "sha1-W2aPT3cTBN/u0XkGRwg4b6ZxeFM=", - "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.0", - "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" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true - } - } - }, - "sort-object-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.2.tgz", - "integrity": "sha1-06bEjcKsl+a8lDZ2luA/bQnTeVI=", - "dev": true - }, - "sort-package-json": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-1.7.1.tgz", - "integrity": "sha1-8uX7/+hCDMG7BEhfRQnwXnO0wPI=", - "dev": true, - "requires": { - "sort-object-keys": "1.1.2" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "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==", - "requires": { - "source-map": "0.5.7" - } - }, - "source-map-url": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.3.0.tgz", - "integrity": "sha1-fsrxO1e80J2opAxdJp2zN5nUqvk=", - "dev": true - }, - "sourcemap-validator": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/sourcemap-validator/-/sourcemap-validator-1.0.6.tgz", - "integrity": "sha1-q9Lx7Nrmo8RsLJbF8lZwWyFHycA=", - "dev": true, - "requires": { - "jsesc": "0.3.0", - "lodash.foreach": "2.3.0", - "lodash.template": "2.3.0", - "source-map": "0.1.43" - }, - "dependencies": { - "jsesc": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.3.0.tgz", - "integrity": "sha1-G/XuY7RTn+LibQwemcJAuXpFeXI=", - "dev": true - }, - "lodash.template": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-2.3.0.tgz", - "integrity": "sha1-Tj4pxDO0z+pnXsg15vEjkcYf0is=", - "dev": true, - "requires": { - "lodash._escapestringchar": "2.3.0", - "lodash._reinterpolate": "2.3.0", - "lodash.defaults": "2.3.0", - "lodash.escape": "2.3.0", - "lodash.keys": "2.3.0", - "lodash.templatesettings": "2.3.0", - "lodash.values": "2.3.0" - } - }, - "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" - } - } - } - }, - "spawn-args": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/spawn-args/-/spawn-args-0.2.0.tgz", - "integrity": "sha1-+30L0dcP1DFr2ePew4nmX51jYbs=", - "dev": true - }, - "spawn-sync": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", - "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", - "dev": true, - "requires": { - "concat-stream": "1.6.0", - "os-shim": "0.1.3" - } - }, - "spawnback": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/spawnback/-/spawnback-1.0.0.tgz", - "integrity": "sha1-9zZi9+VNlTZ+ynTWQmxnfdfqaG8=", - "dev": true - }, - "sprintf-js": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.1.tgz", - "integrity": "sha1-Nr54Mgr+WAH2zqPueLblqrlA6gw=" - }, - "sri-toolbox": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/sri-toolbox/-/sri-toolbox-0.2.0.tgz", - "integrity": "sha1-p/6lw/3lXmdc8cjAbz67XCk1g14=", - "dev": true - }, - "statuses": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", - "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", - "dev": true - }, - "string-template": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", - "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "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=", - "dev": true - }, - "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" - } - } - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true - }, - "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-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 - }, - "styled_string": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/styled_string/-/styled_string-0.0.1.tgz", - "integrity": "sha1-0ieCvYEpVFm8Tx3xjEutjpTdEko=", - "dev": true - }, - "sum-up": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sum-up/-/sum-up-1.0.3.tgz", - "integrity": "sha1-HGYfZnBX9jvLeHWqFDi8FiUlFW4=", - "dev": true, - "requires": { - "chalk": "1.1.3" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" - }, - "symlink-or-copy": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/symlink-or-copy/-/symlink-or-copy-1.1.8.tgz", - "integrity": "sha1-yr5h4AEMHAI8Fzsl7lEIs39LSqM=" - }, - "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.0", - "lodash": "4.17.4", - "slice-ansi": "1.0.0", - "string-width": "2.1.1" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", - "dev": true, - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", - "dev": true, - "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" - } - }, - "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", - "dev": true, - "requires": { - "has-flag": "2.0.0" - } - } - } - }, - "tap-parser": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-5.4.0.tgz", - "integrity": "sha512-BIsIaGqv7uTQgTW1KLTMNPSEQf4zDDPgYOBRdgOfuB+JFOLRBfEu6cLa/KvMvmqggu1FKXDfitjLwsq4827RvA==", - "dev": true, - "requires": { - "events-to-array": "1.1.2", - "js-yaml": "3.10.0", - "readable-stream": "2.3.3" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "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, - "optional": true, - "requires": { - "safe-buffer": "5.1.1" - } - } - } - }, - "temp": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz", - "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=", - "dev": true, - "requires": { - "os-tmpdir": "1.0.2", - "rimraf": "2.2.8" - }, - "dependencies": { - "rimraf": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz", - "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=", - "dev": true - } - } - }, - "testem": { - "version": "1.18.4", - "resolved": "https://registry.npmjs.org/testem/-/testem-1.18.4.tgz", - "integrity": "sha1-5F/tkivsL1SmFsQ/EZIlmKyX60E=", - "dev": true, - "requires": { - "backbone": "1.3.3", - "bluebird": "3.5.1", - "charm": "1.0.2", - "commander": "2.8.1", - "consolidate": "0.14.5", - "cross-spawn": "5.1.0", - "express": "4.16.2", - "fireworm": "0.7.1", - "glob": "7.1.2", - "http-proxy": "1.16.2", - "js-yaml": "3.10.0", - "lodash.assignin": "4.2.0", - "lodash.clonedeep": "4.5.0", - "lodash.find": "4.6.0", - "lodash.uniqby": "4.7.0", - "mkdirp": "0.5.1", - "mustache": "2.3.0", - "node-notifier": "5.1.2", - "npmlog": "4.1.2", - "printf": "0.2.5", - "rimraf": "2.6.2", - "socket.io": "1.6.0", - "spawn-args": "0.2.0", - "styled_string": "0.0.1", - "tap-parser": "5.4.0", - "xmldom": "0.1.27" - } - }, - "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 - }, - "textextensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.1.0.tgz", - "integrity": "sha1-G+DcKg3CRNRL6KCa9qha+5PE28M=" - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "tiny-lr": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.0.5.tgz", - "integrity": "sha512-YrxUSiMgOVh3PnAqtdAUQuUVEVRnqcRCxJ3BHrl/aaWV2fplKKB60oClM0GH2Gio2hcXvkxMUxsC/vXZrQePlg==", - "dev": true, - "requires": { - "body": "5.1.0", - "debug": "2.6.9", - "faye-websocket": "0.10.0", - "livereload-js": "2.2.2", - "object-assign": "4.1.1", - "qs": "6.5.1" - } - }, - "tmp": { - "version": "0.0.28", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.28.tgz", - "integrity": "sha1-Fyc1t/YU6nrzlmT6hM8N5OUV0SA=", - "requires": { - "os-tmpdir": "1.0.2" - } - }, - "tmpl": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", - "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", - "dev": true - }, - "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-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=" - }, - "tree-sync": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-sync/-/tree-sync-1.2.2.tgz", - "integrity": "sha1-LPdrhYn1n/7bWNtaOsfLAT0BWLc=", - "requires": { - "debug": "2.6.9", - "fs-tree-diff": "0.5.7", - "mkdirp": "0.5.1", - "quick-temp": "0.1.8", - "walk-sync": "0.2.7" - }, - "dependencies": { - "walk-sync": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-0.2.7.tgz", - "integrity": "sha1-tJvk7mhnZXrrc2l4tWop0Q+jmWk=", - "requires": { - "ensure-posix-path": "1.0.2", - "matcher-collection": "1.0.5" - } - } - } - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "requires": { - "prelude-ls": "1.1.2" - } - }, - "type-is": { - "version": "1.6.15", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", - "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "2.1.17" - } - }, - "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.3", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.3.tgz", - "integrity": "sha1-ftUNXg+an7ClczeSWfKndFjVAZI=", - "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, - "optional": true, - "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" - } - }, - "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 - }, - "ultron": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", - "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=", - "dev": true - }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", - "dev": true - }, - "underscore.string": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.4.tgz", - "integrity": "sha1-LCo/n4PmR2L9xF5s6sZRQoZCE9s=", - "requires": { - "sprintf-js": "1.1.1", - "util-deprecate": "1.0.2" - } - }, - "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=", - "dev": true - }, - "untildify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-2.1.0.tgz", - "integrity": "sha1-F+soB5h/dpUunASF/DEdBqgmouA=", - "dev": true, - "requires": { - "os-homedir": "1.0.2" - } - }, - "username-sync": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/username-sync/-/username-sync-1.0.1.tgz", - "integrity": "sha1-HN6H7vz5S4gimE2Ti6K3l0Jtrh8=" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true - }, - "uuid": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", - "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==", - "dev": true - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "1.0.3" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true - }, - "walk-sync": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-0.3.2.tgz", - "integrity": "sha512-FMB5VqpLqOCcqrzA9okZFc0wq0Qbmdm396qJxvQZhDpyu0W95G9JCmp74tx7iyYnyOcBtUuKJsgIKAqjozvmmQ==", - "requires": { - "ensure-posix-path": "1.0.2", - "matcher-collection": "1.0.5" - } - }, - "walker": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", - "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", - "dev": true, - "requires": { - "makeerror": "1.0.11" - } - }, - "watch": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/watch/-/watch-0.10.0.tgz", - "integrity": "sha1-d3mLLaD5kQ1ZXxrOWwwiWFIfIdw=", - "dev": true - }, - "websocket-driver": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", - "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", - "dev": true, - "requires": { - "http-parser-js": "0.4.9", - "websocket-extensions": "0.1.3" - } - }, - "websocket-extensions": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", - "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", - "dev": true - }, - "which": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", - "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", - "dev": true, - "requires": { - "isexe": "2.0.0" - } - }, - "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" - } - } - } - }, - "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, - "optional": true - }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - }, - "workerpool": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-2.3.0.tgz", - "integrity": "sha512-JP5DpviEV84zDmz13QnD4FfRjZBjnTOYY2O4pGgxtlqLh47WOzQFHm8o17TE5OSfcDoKC6vHSrN4yPju93DW0Q==", - "requires": { - "object-assign": "4.1.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" - } - }, - "ws": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.1.tgz", - "integrity": "sha1-CC3bbGQehdS7RR8D1S8G6r2x8Bg=", - "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 - }, - "xmldom": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", - "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", - "dev": 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 - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yam": { - "version": "0.0.22", - "resolved": "https://registry.npmjs.org/yam/-/yam-0.0.22.tgz", - "integrity": "sha1-OKdst5oZKE2SBu1JAx41mhNAvQY=", - "dev": true, - "requires": { - "fs-extra": "0.30.0", - "lodash.merge": "4.6.0" - }, - "dependencies": { - "fs-extra": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", - "integrity": "sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0", - "klaw": "1.3.1", - "path-is-absolute": "1.0.1", - "rimraf": "2.6.2" - } - } - } - }, - "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" - } - }, - "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 deleted file mode 100644 index 85bfcbf5..00000000 --- a/package.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "name": "ember-i18n", - "version": "5.2.1", - "description": "Internationalization for Ember", - "directories": { - "doc": "doc", - "test": "tests" - }, - "scripts": { - "start": "ember serve", - "build": "ember build", - "test": "ember try:each" - }, - "repository": { - "type": "git", - "url": "http://github.com/jamesarosen/ember-i18n.git" - }, - "engines": { - "node": "^4.5 || 6.* || >= 7.*" - }, - "author": "", - "license": "Apache-2.0", - "devDependencies": { - "broccoli-asset-rev": "^2.4.5", - "ember-ajax": "^3.0.0", - "ember-cli": "~2.17.1", - "ember-cli-dependency-checker": "^2.0.0", - "ember-cli-eslint": "^4.2.1", - "ember-cli-htmlbars": "^2.0.1", - "ember-cli-htmlbars-inline-precompile": "^1.0.0", - "ember-cli-inject-live-reload": "^1.4.1", - "ember-cli-qunit": "^4.2.1", - "ember-cli-release": "^0.2.9", - "ember-cli-shims": "^1.2.0", - "ember-cli-sri": "^2.1.0", - "ember-cli-uglify": "^2.0.0", - "ember-disable-prototype-extensions": "^1.1.2", - "ember-export-application-global": "^2.0.0", - "ember-load-initializers": "^1.0.0", - "ember-maybe-import-regenerator-for-testing": "^1.0.0", - "ember-resolver": "^4.0.0", - "ember-source": "~2.17.0", - "ember-string-ishtmlsafe-polyfill": "^2.0.0", - "loader.js": "^4.2.3" - }, - "keywords": [ - "ember-addon", - "i18n" - ], - "dependencies": { - "broccoli-funnel": "^2.0.1", - "ember-cli-babel": "^6.11.0", - "ember-cli-version-checker": "^2.1.0", - "ember-getowner-polyfill": "^2.2.0" - }, - "ember-addon": { - "configPath": "tests/dummy/config" - } -} diff --git a/test-support/helpers/ember-i18n/test-helpers.js b/test-support/helpers/ember-i18n/test-helpers.js deleted file mode 100644 index 048995e3..00000000 --- a/test-support/helpers/ember-i18n/test-helpers.js +++ /dev/null @@ -1,16 +0,0 @@ -import { registerHelper } from '@ember/test'; -import _t from 'ember-i18n/test-support/-private/t'; -import _assertTranslation from 'ember-i18n/test-support/-private/assert-translation'; - -// example usage: find(`.header:contains(${t('welcome_message')})`) -registerHelper('t', function(app, key, interpolations) { - return _t(app.__container__, key, interpolations); -}); - -// example usage: expectTranslation('.header', 'welcome_message'); -registerHelper('expectTranslation', function(app, element, key, interpolations){ - const text = _t(app.__container__, key, interpolations); - - _assertTranslation(element, key, text); -}); - diff --git a/testem.js b/testem.js deleted file mode 100644 index 63d1edf5..00000000 --- a/testem.js +++ /dev/null @@ -1,22 +0,0 @@ -/* eslint-env node */ -module.exports = { - test_page: 'tests/index.html?hidepassed', - disable_watching: true, - launch_in_ci: [ - 'Chrome' - ], - launch_in_dev: [ - 'Chrome' - ], - browser_args: { - Chrome: { - mode: 'ci', - args: [ - '--disable-gpu', - '--headless', - '--remote-debugging-port=0', - '--window-size=1440,900' - ] - } - } -}; diff --git a/tests/.eslintrc.js b/tests/.eslintrc.js deleted file mode 100644 index f5335a14..00000000 --- a/tests/.eslintrc.js +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - env: { - embertest: true - }, - globals: { - t: false, - expectTranslation: false - } -}; diff --git a/tests/.jshintrc b/tests/.jshintrc deleted file mode 100644 index 1a9d2022..00000000 --- a/tests/.jshintrc +++ /dev/null @@ -1,55 +0,0 @@ -{ - "predef": [ - "document", - "window", - "location", - "setTimeout", - "$", - "QUnit", - "-Promise", - "define", - "console", - "visit", - "exists", - "fillIn", - "click", - "keyEvent", - "triggerEvent", - "find", - "findWithAssert", - "wait", - "DS", - "andThen", - "currentURL", - "currentPath", - "currentRouteName", - "t", - "expectTranslation" - ], - "node": false, - "browser": false, - "boss": true, - "curly": false, - "debug": false, - "devel": false, - "eqeqeq": true, - "evil": true, - "forin": false, - "immed": false, - "laxbreak": false, - "newcap": true, - "noarg": true, - "noempty": false, - "nonew": false, - "nomen": false, - "onevar": false, - "plusplus": false, - "regexp": false, - "undef": true, - "sub": true, - "strict": false, - "white": false, - "eqnull": true, - "esversion": 6, - "unused": true -} diff --git a/tests/acceptance/new-test-helpers-in-new-acceptance-tests-test.js b/tests/acceptance/new-test-helpers-in-new-acceptance-tests-test.js deleted file mode 100644 index 2e96eb28..00000000 --- a/tests/acceptance/new-test-helpers-in-new-acceptance-tests-test.js +++ /dev/null @@ -1,13 +0,0 @@ -import { module, test } from 'qunit'; -import { setupApplicationTest } from 'ember-qunit'; -import { t } from 'ember-i18n/test-support'; - -module('Acceptance | {{t}} Helper', function(hooks) { - setupApplicationTest(hooks); - - test("t test helper", function(assert) { - assert.equal(t("pluralized.translation", { count: 1 }), "One Click", "test-helpers t returns translation"); - }); -}); - - diff --git a/tests/acceptance/test-helpers-test.js b/tests/acceptance/test-helpers-test.js deleted file mode 100644 index 254e6d70..00000000 --- a/tests/acceptance/test-helpers-test.js +++ /dev/null @@ -1,16 +0,0 @@ -import { test } from 'qunit'; -import moduleForAcceptance from '../../tests/helpers/module-for-acceptance'; - -moduleForAcceptance('Acceptance | {{t}} Helper', { - beforeEach() { - visit('/'); - } -}); - -test("t test helper", function(assert) { - assert.equal(t("pluralized.translation", { count: 1 }), "One Click", "test-helpers t returns translation"); -}); - -test("expectTranslation test helper", function() { - expectTranslation('.no-interpolations', 'no.interpolations'); -}); diff --git a/tests/dummy/app/app.js b/tests/dummy/app/app.js deleted file mode 100644 index b3b2bd67..00000000 --- a/tests/dummy/app/app.js +++ /dev/null @@ -1,14 +0,0 @@ -import Application from '@ember/application'; -import Resolver from './resolver'; -import loadInitializers from 'ember-load-initializers'; -import config from './config/environment'; - -const App = Application.extend({ - modulePrefix: config.modulePrefix, - podModulePrefix: config.podModulePrefix, - Resolver -}); - -loadInitializers(App, config.modulePrefix); - -export default App; diff --git a/tests/dummy/app/components/.gitkeep b/tests/dummy/app/components/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/dummy/app/controllers/.gitkeep b/tests/dummy/app/controllers/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/dummy/app/helpers/.gitkeep b/tests/dummy/app/helpers/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/dummy/app/index.html b/tests/dummy/app/index.html deleted file mode 100644 index 61400b20..00000000 --- a/tests/dummy/app/index.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - Dummy - - - - {{content-for "head"}} - - - - - {{content-for "head-footer"}} - - - {{content-for "body"}} - - - - - {{content-for "body-footer"}} - - diff --git a/tests/dummy/app/locales/en-bw/config.js b/tests/dummy/app/locales/en-bw/config.js deleted file mode 100644 index a5ee91da..00000000 --- a/tests/dummy/app/locales/en-bw/config.js +++ /dev/null @@ -1,3 +0,0 @@ -export default { - rtl: true -}; diff --git a/tests/dummy/app/locales/en-bw/translations.js b/tests/dummy/app/locales/en-bw/translations.js deleted file mode 100644 index 5f46a8b3..00000000 --- a/tests/dummy/app/locales/en-bw/translations.js +++ /dev/null @@ -1,7 +0,0 @@ -export default { - 'no.interpolations': 'snoitalopretni on htiw txet', - - 'with': { - interpolations: '{{clicks}} :skcilC' - } -}; diff --git a/tests/dummy/app/locales/en-ps/translations.js b/tests/dummy/app/locales/en-ps/translations.js deleted file mode 100644 index e77622cf..00000000 --- a/tests/dummy/app/locales/en-ps/translations.js +++ /dev/null @@ -1,3 +0,0 @@ -export default { - 'no.interpolations': 'téxt wîth nö ìntérpølåtíôns' -}; diff --git a/tests/dummy/app/locales/en-wz/config.js b/tests/dummy/app/locales/en-wz/config.js deleted file mode 100644 index a4ee6cb0..00000000 --- a/tests/dummy/app/locales/en-wz/config.js +++ /dev/null @@ -1,7 +0,0 @@ -export default { - pluralForm(count) { - if (count === 0) { return 'zero'; } - if (count === 1) { return 'one'; } - return 'other'; - } -}; diff --git a/tests/dummy/app/locales/en-wz/translations.js b/tests/dummy/app/locales/en-wz/translations.js deleted file mode 100644 index cb077ffd..00000000 --- a/tests/dummy/app/locales/en-wz/translations.js +++ /dev/null @@ -1,7 +0,0 @@ -export default { - 'pluralized.translation': { - zero: 'Zero Clicks', - one: 'One Click', - other: '{{count}} Clicks' - } -}; diff --git a/tests/dummy/app/locales/en/translations.js b/tests/dummy/app/locales/en/translations.js deleted file mode 100644 index c2251970..00000000 --- a/tests/dummy/app/locales/en/translations.js +++ /dev/null @@ -1,17 +0,0 @@ -export default { - 'defined.in.default': { - value: 'Default {{count}} value' - }, - 'no.interpolations': 'text with no interpolations', - 'no.interpolations.either': 'another text without interpolations', - - 'with': { - interpolations: 'Clicks: {{clicks}}', - number: 3 - }, - - 'pluralized.translation': { - one: 'One Click', - other: '{{count}} Clicks' - } -}; diff --git a/tests/dummy/app/locales/es/translations.js b/tests/dummy/app/locales/es/translations.js deleted file mode 100644 index 306e5f08..00000000 --- a/tests/dummy/app/locales/es/translations.js +++ /dev/null @@ -1,7 +0,0 @@ -export default { - no: { - interpolations: 'texto sin interpolaciones' - }, - - 'with.interpolations': 'Número de clicks: {{clicks}}' -}; diff --git a/tests/dummy/app/models/.gitkeep b/tests/dummy/app/models/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/dummy/app/resolver.js b/tests/dummy/app/resolver.js deleted file mode 100644 index 2fb563d6..00000000 --- a/tests/dummy/app/resolver.js +++ /dev/null @@ -1,3 +0,0 @@ -import Resolver from 'ember-resolver'; - -export default Resolver; diff --git a/tests/dummy/app/router.js b/tests/dummy/app/router.js deleted file mode 100644 index d0bb0095..00000000 --- a/tests/dummy/app/router.js +++ /dev/null @@ -1,12 +0,0 @@ -import EmberRouter from '@ember/routing/router'; -import config from './config/environment'; - -const Router = EmberRouter.extend({ - location: config.locationType, - rootURL: config.rootURL -}); - -Router.map(function() { -}); - -export default Router; diff --git a/tests/dummy/app/styles/app.css b/tests/dummy/app/styles/app.css deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/dummy/app/templates/application.hbs b/tests/dummy/app/templates/application.hbs deleted file mode 100644 index 05eb936c..00000000 --- a/tests/dummy/app/templates/application.hbs +++ /dev/null @@ -1,3 +0,0 @@ -

Welcome to Ember.js

- -{{outlet}} diff --git a/tests/dummy/app/templates/components/.gitkeep b/tests/dummy/app/templates/components/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/dummy/app/templates/index.hbs b/tests/dummy/app/templates/index.hbs deleted file mode 100644 index 1b6e7be3..00000000 --- a/tests/dummy/app/templates/index.hbs +++ /dev/null @@ -1,3 +0,0 @@ -
- {{t 'no.interpolations'}} -
diff --git a/tests/dummy/config/environment.js b/tests/dummy/config/environment.js deleted file mode 100644 index 9be111af..00000000 --- a/tests/dummy/config/environment.js +++ /dev/null @@ -1,53 +0,0 @@ -/* eslint-env node */ -'use strict'; - -module.exports = function(environment) { - let ENV = { - modulePrefix: 'dummy', - podModulePrefix: process.env.POD_MODULE_PREFIX, - environment, - rootURL: '/', - i18n: { defaultLocale: 'en' }, - locationType: 'auto', - EmberENV: { - FEATURES: { - // Here you can enable experimental features on an ember canary build - // e.g. 'with-controller': true - }, - EXTEND_PROTOTYPES: { - // Prevent Ember Data from overriding Date.parse. - Date: false - } - }, - - APP: { - // Here you can pass flags/options to your application instance - // when it is created - } - }; - - if (environment === 'development') { - // ENV.APP.LOG_RESOLVER = true; - // ENV.APP.LOG_ACTIVE_GENERATION = true; - // ENV.APP.LOG_TRANSITIONS = true; - // ENV.APP.LOG_TRANSITIONS_INTERNAL = true; - // ENV.APP.LOG_VIEW_LOOKUPS = true; - } - - if (environment === 'test') { - // Testem prefers this... - ENV.locationType = 'none'; - - // keep test console output quieter - ENV.APP.LOG_ACTIVE_GENERATION = false; - ENV.APP.LOG_VIEW_LOOKUPS = false; - - ENV.APP.rootElement = '#ember-testing'; - } - - if (environment === 'production') { - // here you can enable a production-specific feature - } - - return ENV; -}; diff --git a/tests/dummy/config/targets.js b/tests/dummy/config/targets.js deleted file mode 100644 index df7664c2..00000000 --- a/tests/dummy/config/targets.js +++ /dev/null @@ -1,9 +0,0 @@ -/* eslint-env node */ -module.exports = { - browsers: [ - 'ie 9', - 'last 1 Chrome versions', - 'last 1 Firefox versions', - 'last 1 Safari versions' - ] -}; diff --git a/tests/dummy/public/crossdomain.xml b/tests/dummy/public/crossdomain.xml deleted file mode 100644 index 0c16a7a0..00000000 --- a/tests/dummy/public/crossdomain.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - diff --git a/tests/dummy/public/robots.txt b/tests/dummy/public/robots.txt deleted file mode 100644 index f5916452..00000000 --- a/tests/dummy/public/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# http://www.robotstxt.org -User-agent: * -Disallow: diff --git a/tests/helpers/destroy-app.js b/tests/helpers/destroy-app.js deleted file mode 100644 index e7f983bd..00000000 --- a/tests/helpers/destroy-app.js +++ /dev/null @@ -1,5 +0,0 @@ -import { run } from '@ember/runloop'; - -export default function destroyApp(application) { - run(application, 'destroy'); -} diff --git a/tests/helpers/module-for-acceptance.js b/tests/helpers/module-for-acceptance.js deleted file mode 100644 index 90a93bac..00000000 --- a/tests/helpers/module-for-acceptance.js +++ /dev/null @@ -1,21 +0,0 @@ -import { module } from 'qunit'; -import { resolve } from 'rsvp'; -import startApp from '../helpers/start-app'; -import destroyApp from '../helpers/destroy-app'; - -export default function(name, options = {}) { - module(name, { - beforeEach() { - this.application = startApp(); - - if (options.beforeEach) { - return options.beforeEach.apply(this, arguments); - } - }, - - afterEach() { - let afterEach = options.afterEach && options.afterEach.apply(this, arguments); - return resolve(afterEach).then(() => destroyApp(this.application)); - } - }); -} diff --git a/tests/helpers/resolver.js b/tests/helpers/resolver.js deleted file mode 100644 index b208d38d..00000000 --- a/tests/helpers/resolver.js +++ /dev/null @@ -1,11 +0,0 @@ -import Resolver from '../../resolver'; -import config from '../../config/environment'; - -const resolver = Resolver.create(); - -resolver.namespace = { - modulePrefix: config.modulePrefix, - podModulePrefix: config.podModulePrefix -}; - -export default resolver; diff --git a/tests/helpers/start-app.js b/tests/helpers/start-app.js deleted file mode 100644 index 77bca100..00000000 --- a/tests/helpers/start-app.js +++ /dev/null @@ -1,28 +0,0 @@ -/* globals QUnit */ - -import Application from '../../app'; -import config from '../../config/environment'; -import { merge } from '@ember/polyfills'; -import { run } from '@ember/runloop'; -import './ember-i18n/test-helpers'; - -export default function startApp(attrs) { - let attributes = merge({}, config.APP); - attributes = merge(attributes, attrs); // use defaults, but you can override; - - return run(() => { - let application = Application.create(attributes); - application.setupForTesting(); - application.injectTestHelpers(); - return application; - }); -} - -if (QUnit.assert.textIs == null) { - QUnit.assert.textIs = function(selector, expected) { - andThen(() => { - const actual = findWithAssert(selector).text(); - this.push(actual === expected, actual, expected); - }); - }; -} diff --git a/tests/index.html b/tests/index.html deleted file mode 100644 index 5209b852..00000000 --- a/tests/index.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - Dummy Tests - - - - {{content-for "head"}} - {{content-for "test-head"}} - - - - - - {{content-for "head-footer"}} - {{content-for "test-head-footer"}} - - - {{content-for "body"}} - {{content-for "test-body"}} - - - - - - - - {{content-for "body-footer"}} - {{content-for "test-body-footer"}} - - diff --git a/tests/integration/new-test-helpers-in-new-integration-tests-test.js b/tests/integration/new-test-helpers-in-new-integration-tests-test.js deleted file mode 100644 index 0263f11e..00000000 --- a/tests/integration/new-test-helpers-in-new-integration-tests-test.js +++ /dev/null @@ -1,30 +0,0 @@ -import { module, test } from 'qunit'; -import { setupRenderingTest } from 'ember-qunit'; -import { render } from '@ember/test-helpers'; -import { t, expectTranslation } from 'ember-i18n/test-support'; -import hbs from 'htmlbars-inline-precompile'; - -module('Integration | {{t}} Helper', function (hooks) { - setupRenderingTest(hooks); - - test("t test helper", async function (assert) { - assert.expect(2); - await render(hbs` - {{t "pluralized.translation" count=1}} - `); - - assert.equal(t("pluralized.translation", { count: 1 }), "One Click", "test-helpers t returns translation"); - assert.equal(this.element.querySelector('#t-target').textContent, t("pluralized.translation", { count: 1 })); - }); - - test("expectTranslation test helper", async function (assert) { - assert.expect(1); - await render(hbs` - {{t "pluralized.translation" count=1}} - `); - - expectTranslation('[data-test-target]', "pluralized.translation", { count: 1 }); - }); -}); - - diff --git a/tests/test-helper.js b/tests/test-helper.js deleted file mode 100644 index edc8122d..00000000 --- a/tests/test-helper.js +++ /dev/null @@ -1,7 +0,0 @@ -import Application from '../app'; -import { setApplication } from '@ember/test-helpers'; -import { start } from 'ember-qunit'; - -setApplication(Application.create({ autoboot: false })); - -start(); diff --git a/tests/unit/helper-test.js b/tests/unit/helper-test.js deleted file mode 100644 index c0ed4030..00000000 --- a/tests/unit/helper-test.js +++ /dev/null @@ -1,147 +0,0 @@ -import Ember from 'ember'; -import hbs from 'htmlbars-inline-precompile'; -import { moduleForComponent, test } from 'ember-qunit'; -const { run } = Ember; - -moduleForComponent('no-such-component', 't helper', { - integration: true, - - beforeEach() { - if (Ember.Helper == null) { - const initializer = this.container.lookupFactory('initializer:ember-i18n-legacy-helper'); - initializer.initialize(this.registry); - } - - const i18n = this.i18n = this.container.lookup('service:i18n'); - i18n.set('locale', 'en'); - - this.addTranslations = function(locale, translations) { - run(i18n, 'addTranslations', locale, translations); - }; - }, - - afterEach() { - run(this.i18n, 'destroy'); - } -}); - -test('simple text, static key', function(assert) { - this.addTranslations('en', { 'foo.bar': 'Foo Bar' }); - - this.render(hbs`{{t 'foo.bar'}}`); - assert.equal(this.$().text(), 'Foo Bar'); -}); - -test('text with HTML, static key', function(assert) { - this.addTranslations('en', { name: 'Name:' }); - - this.render(hbs`{{t 'name'}}`); - assert.equal(this.$().html(), 'Name:'); -}); - -test('dynamic key', function(assert) { - this.addTranslations('en', { foo: 'Foo', bar: 'Bar' }); - this.set('someKey', 'foo'); - - this.render(hbs`{{t someKey}}`); - assert.equal(this.$().text(), 'Foo'); - - run(this, 'set', 'someKey', 'bar'); - assert.equal(this.$().text(), 'Bar'); -}); - -test('interpolations', function(assert) { - this.addTranslations('en', { 'bowl of soup': 'A bowl of {{soup}}' }); - this.set('soup', 'bisque'); - - this.render(hbs`{{t 'bowl of soup' soup=soup}}`); - assert.equal(this.$().text(), 'A bowl of bisque'); - - run(this, 'set', 'soup', 'clam chowder'); - assert.equal(this.$().text(), 'A bowl of clam chowder'); -}); - -test('interpolations with passed context', function(assert) { - this.addTranslations('en', { 'bowl of soup': 'A bowl of {{soup}}' }); - this.set('soup', 'bisque'); - - this.set('contextObject', Ember.computed('soup', function() { - return { - soup: this.get('soup') - }; - })); - - this.render(hbs`{{t 'bowl of soup' contextObject}}`); - assert.equal(this.$().text(), 'A bowl of bisque'); - - run(this, 'set', 'soup', 'clam chowder'); - assert.equal(this.$().text(), 'A bowl of clam chowder'); -}); - -test('interpolations with passed context and a hash', function(assert) { - this.addTranslations('en', { 'bowl of soup': 'A bowl of {{soup}} or {{salad}}' }); - this.set('soup', 'bisque'); - this.set('salad', 'mixed greens'); - - this.set('contextObject', Ember.computed('soup', function() { - return { - soup: this.get('soup') - }; - })); - - this.render(hbs`{{t 'bowl of soup' contextObject salad=salad}}`); - assert.equal(this.$().text(), 'A bowl of bisque or mixed greens'); - - run(this, 'set', 'soup', 'clam chowder'); - run(this, 'set', 'salad', 'cobb salad'); - assert.equal(this.$().text(), 'A bowl of clam chowder or cobb salad'); -}); - -test('interpolations with passed context and a hash - hash overrides context', function(assert) { - this.addTranslations('en', { 'A delicious entree': 'A delicious {{entree}}' }); - this.set('entreeFromContext', 'steak'); - this.set('entreeFromHash', 'pasta'); - - this.set('contextObject', Ember.computed('entreeFromContext', function() { - return { - soup: this.get('entreeFromContext') - }; - })); - - this.render(hbs`{{t 'A delicious entree' contextObject entree=entreeFromHash}}`); - assert.equal(this.$().text(), 'A delicious pasta'); - - run(this, 'set', 'entreeFromContext', 'burger'); - run(this, 'set', 'entreeFromHash', 'pizza'); - assert.equal(this.$().text(), 'A delicious pizza'); -}); - -test('locale change', function(assert) { - this.addTranslations('en', { soup: 'Soup' }); - this.addTranslations('zh', { soup: '湯' }); - - this.render(hbs`{{t 'soup'}}`); - assert.equal(this.$().text(), 'Soup'); - - run(this.i18n, 'set', 'locale', 'zh'); - assert.equal(this.$().text(), '湯'); -}); - -test('pluralization', function(assert) { - this.addTranslations('en', { - bowls: { - one: 'one bowl', - other: '{{count}} bowls' - } - }); - run(this, 'set', 'numberOfBowls', 0); - - this.render(hbs`{{t 'bowls' count=numberOfBowls}}`); - assert.equal(this.$().text(), '0 bowls'); - - run(this, 'set', 'numberOfBowls', 1); - assert.equal(this.$().text(), 'one bowl'); - - run(this, 'set', 'numberOfBowls', 2); - assert.equal(this.$().text(), '2 bowls'); -}); diff --git a/tests/unit/i18n-exists-test.js b/tests/unit/i18n-exists-test.js deleted file mode 100644 index 96f9c845..00000000 --- a/tests/unit/i18n-exists-test.js +++ /dev/null @@ -1,43 +0,0 @@ -import { moduleFor, test } from 'ember-qunit'; - -moduleFor('service:i18n', 'I18nService#t', { - integration: true -}); - -test('returns true when the key exists', function(assert) { - const i18n = this.subject({ locale: 'en' }); - - assert.equal(i18n.exists('no.interpolations'), true); -}); - -test('returns false when the key does not exist', function(assert) { - const i18n = this.subject({ locale: 'en' }); - - assert.equal(i18n.exists('not.yet.translated'), false); -}); - -test('works with interpolations', function(assert) { - const i18n = this.subject({ locale: 'en' }); - - assert.equal(i18n.exists('with.interpolations', { count: 2 }), true); -}); - -test('reports false when the key does not exist, but the fallback does', function(assert) { - const i18n = this.subject({ locale: 'en' }); - - assert.equal(i18n.exists('not.yet.translated', { default: 'no.interpolations' }), false); -}); - -test('fallsback to the parent locale', function(assert) { - const i18n = this.subject({ locale: 'en-ps' }); - - assert.equal(i18n.exists('no.interpolations.either'), true); -}); - -test('non-existing translations when checked twice do not exist', function (assert) { - const i18n = this.subject({ locale: 'en' }); - - assert.equal(i18n.exists('not.existing'), false); - assert.equal(i18n.t('not.existing'), 'Missing translation: not.existing'); - assert.equal(i18n.exists('not.existing'), false); -}); diff --git a/tests/unit/i18n-t-test.js b/tests/unit/i18n-t-test.js deleted file mode 100644 index 82c0af75..00000000 --- a/tests/unit/i18n-t-test.js +++ /dev/null @@ -1,205 +0,0 @@ -import Ember from 'ember'; -import { moduleFor, test } from 'ember-qunit'; - -const { run, deprecate:originalDeprecate } = Ember; - -moduleFor('service:i18n', 'I18nService#t', { - integration: true, - - afterEach() { - Ember.deprecate = originalDeprecate; - } -}); - -test('falls back to parent locale', function(assert) { - const i18n = this.subject({ locale: 'en-ps' }); - - assert.equal('' + i18n.t('no.interpolations'), 'téxt wîth nö ìntérpølåtíôns'); - assert.equal(i18n.t('with.interpolations', { clicks: 8 }), 'Clicks: 8'); -}); - -test('allows number values in translations', function(assert) { - const i18n = this.subject({ locale: 'en' }); - - assert.equal(i18n.t('with.number'), "3"); -}); - -test('supports changing locales', function(assert) { - const i18n = this.subject({ locale: 'en' }); - assert.equal('' + i18n.t('no.interpolations'), 'text with no interpolations'); - - run(i18n, 'set', 'locale', 'en-ps'); - assert.equal('' + i18n.t('no.interpolations'), 'téxt wîth nö ìntérpølåtíôns'); - - run(i18n, 'set', 'locale', 'en'); - assert.equal('' + i18n.t('no.interpolations'), 'text with no interpolations'); - - run(i18n, 'set', 'locale', 'es'); - assert.equal('' + i18n.t('no.interpolations'), 'texto sin interpolaciones'); - - run(i18n, 'set', 'locale', 'en'); - assert.equal('' + i18n.t('no.interpolations'), 'text with no interpolations'); -}); - -test('returns "missing translation" translations', function(assert) { - const result = this.subject({ locale: 'en' }).t('not.yet.translated', {}); - assert.equal('Missing translation: not.yet.translated', result); -}); - -test('warns on the presence of htmlSafe and locale', function(assert) { - const service = this.subject(); - let deprecations = 0; - - Ember.deprecate = function(message, predicate, options = {}) { - if (predicate) { return; } - - const { id } = options; - - if (id === 'ember-i18n.reserve-htmlSafe' || id === 'ember-i18n.reserve-locale') { - deprecations += 1; - } - }; - - service.t('not.yet.translated', { htmlSafe: true }); - assert.equal(deprecations, 1); - - service.t('not.yet.translated', { locale: true }); - assert.equal(deprecations, 2); - - service.t('not.yet.translated'); - service.t('not.yet.translated', { some: 'other key' }); - assert.equal(deprecations, 2); -}); - -test('emits "missing" events', function(assert) { - const i18n = this.subject({ locale: 'en' }); - const calls = []; - function spy() { calls.push(arguments); } - i18n.on('missing', spy); - - i18n.t('not.yet.translated', { some: 'data' }); - - assert.equal(calls.length, 1); - assert.equal(calls[0].length, 3); - assert.equal(calls[0][0], 'en'); - assert.equal(calls[0][1], 'not.yet.translated'); - assert.equal(calls[0][2].some, 'data'); -}); - -test('adds RTL markers if the locale calls for it', function(assert) { - this.subject({ locale: 'en-bw' }); - const result = this.subject().t('no.interpolations'); - - assert.equal(result, '\u202Bsnoitalopretni on htiw txet\u202C'); -}); - -test("applies pluralization rules from the locale", function(assert) { - const i18n = this.subject({ locale: 'en' }); - - assert.equal(i18n.t('pluralized.translation', { count: 0 }), '0 Clicks'); - assert.equal(i18n.t('pluralized.translation', { count: '1' }), 'One Click'); - assert.equal(i18n.t('pluralized.translation', { count: 2 }), '2 Clicks'); -}); - -test("applies custom pluralization rules", function(assert) { - const i18n = this.subject({ locale: 'en-wz' }); - - assert.equal(i18n.t('pluralized.translation', { count: '0' }), 'Zero Clicks'); - assert.equal(i18n.t('pluralized.translation', { count: 1 }), 'One Click'); - assert.equal(i18n.t('pluralized.translation', { count: 2 }), '2 Clicks'); -}); - -test("applies provided default translation in cascade when main one is not found", function(assert) { - const i18n = this.subject({ locale: 'en' }); - const defaultsChain = ['with.pretty-good-interpolations', 'with.interpolations']; - const calls = []; - function spy() { calls.push(arguments); } - i18n.on('missing', spy); - assert.equal(i18n.t('with.great-interpolations', { clicks: 8, default: defaultsChain }), 'Clicks: 8', 'default can be an array'); - assert.equal(i18n.t('with.great-interpolations', { clicks: 8, default: 'with.interpolations' }), 'Clicks: 8', 'default can be an string'); - assert.equal(calls.length, 0, 'The missing event is not fired when a fallback translation is found'); - assert.equal(i18n.t('not.yet.translated', { clicks: 8, default: ['not.translated.either'] }), 'Missing translation: not.yet.translated'); - assert.equal(calls[0][1], 'not.yet.translated', 'When the "missing" event is fired, it\'s fired with the provided key'); -}); - -test("check unknown locale", function(assert) { - const result = this.subject({ locale: 'uy' }).t('not.yet.translated', {count: 2}); - assert.equal('Missing translation: not.yet.translated', result); -}); - -test('provided default translation works as expected when locale is default', function(assert) { - this.register('config:environment', { - i18n: { - defaultLocale: 'en', - defaultFallback: true - } - }); - const i18n = this.subject({ locale: 'en' }); - assert.equal('' + i18n.t('defined.in.default.value', { count: 2 }), 'Default 2 value'); -}); - -test('falls back to default translation when label not found for locale', function(assert) { - this.register('config:environment', { - i18n: { - defaultLocale: 'en', - defaultFallback: true - } - }); - const i18n = this.subject({ locale: 'es' }); - assert.equal('' + i18n.t('defined.in.default.value', { count: 2 }), 'Default 2 value'); -}); - -test('falls back to default translation when label not found and locale not found', function(assert) { - this.register('config:environment', { - i18n: { - defaultLocale: 'en', - defaultFallback: true - } - }); - const i18n = this.subject({ locale: 'foobz' }); - assert.equal('' + i18n.t('defined.in.default.value', { count: 2 }), 'Default 2 value'); -}); - -test('does not fall back to default translation when configuration true but defaultLocale falsy', function(assert) { - this.register('config:environment', { - i18n: { - defaultLocale: '', - defaultFallback: true - } - }); - const i18n = this.subject({ locale: 'es' }); - assert.equal('' + i18n.t('defined.in.default.value', { count: 2 }), 'Missing translation: defined.in.default.value'); -}); - -test('does not fall back to default translation when configuration false', function(assert) { - this.register('config:environment', { - i18n: { - defaultLocale: 'en', - defaultFallback: false - } - }); - const i18n = this.subject({ locale: 'es' }); - assert.equal('' + i18n.t('defined.in.default.value', { count: 2 }), 'Missing translation: defined.in.default.value'); -}); - -test('does not fall back to default translation when configuration null', function(assert) { - this.register('config:environment', { - i18n: { - defaultLocale: 'en', - defaultFallback: null - } - }); - const i18n = this.subject({ locale: 'es' }); - assert.equal('' + i18n.t('defined.in.default.value', { count: 2 }), 'Missing translation: defined.in.default.value'); -}); - -test('does not fall back to default translation when configuration undefined', function(assert) { - this.register('config:environment', { - i18n: { - defaultLocale: 'en', - defaultFallback: undefined - } - }); - const i18n = this.subject({ locale: 'es' }); - assert.equal('' + i18n.t('defined.in.default.value', { count: 2 }), 'Missing translation: defined.in.default.value'); -}); diff --git a/tests/unit/utils/add-translations-test.js b/tests/unit/utils/add-translations-test.js deleted file mode 100644 index d2c943cf..00000000 --- a/tests/unit/utils/add-translations-test.js +++ /dev/null @@ -1,66 +0,0 @@ -import Ember from 'ember'; -import { moduleFor, test } from 'ember-qunit'; - -moduleFor('service:i18n', 'I18nService#addTranslations', { - integration: true -}); - -// `addTranslations` mutates global state, so be careful that these -// tests don't interact poorly with one another or other tests. - -test('adds translations to the current locale', function(assert) { - const i18n = this.subject({ locale: 'en' }); - - const before = i18n.t('defined.at.runtime.one'); - assert.equal(before, 'Missing translation: defined.at.runtime.one'); - - Ember.run(i18n, 'addTranslations', 'en', { - 'defined.at.runtime': { one: 'Defined at Runtime' } - }); - - const after = i18n.t('defined.at.runtime.one'); - assert.equal(after, 'Defined at Runtime'); -}); - -test('adds translations to a parent locale', function(assert) { - const i18n = this.subject({ locale: 'en-ps' }); - - const before = i18n.t('defined.at.runtime.two'); - assert.equal(before, 'Missing translation: defined.at.runtime.two'); - - Ember.run(i18n, 'addTranslations', 'en', { - 'defined.at.runtime.two': 'Defined at Runtime' - }); - - const after = i18n.t('defined.at.runtime.two'); - assert.equal(after, 'Defined at Runtime'); -}); - -test('adds translations to an unrelated locale', function(assert) { - const i18n = this.subject({ locale: 'es' }); - - const before = i18n.t('defined.at.runtime.three'); - assert.equal(before, 'Missing translation: defined.at.runtime.three'); - - Ember.run(i18n, 'addTranslations', 'en', { - 'defined.at': { 'runtime.three': 'Defined at Runtime' } - }); - - Ember.run(i18n, 'set', 'locale', 'en'); - - const after = i18n.t('defined.at.runtime.three'); - assert.equal(after, 'Defined at Runtime'); -}); - -test('adds translations to a locale that has not yet been defined', function(assert) { - const i18n = this.subject({ locale: 'en' }); - - Ember.run(i18n, 'addTranslations', 'en-xyz', { - 'defined.at': { 'runtime.four': 'Defined at Runtime' } - }); - - Ember.run(i18n, 'set', 'locale', 'en-xyz'); - - const after = i18n.t('defined.at.runtime.four'); - assert.equal(after, 'Defined at Runtime'); -}); diff --git a/tests/unit/utils/i18n/default-compiler-test.js b/tests/unit/utils/i18n/default-compiler-test.js deleted file mode 100644 index 1a84ee00..00000000 --- a/tests/unit/utils/i18n/default-compiler-test.js +++ /dev/null @@ -1,68 +0,0 @@ -import Ember from 'ember'; -import { module, test } from 'qunit'; -import { compileTemplate } from 'ember-i18n'; - -const { htmlSafe, isHTMLSafe } = Ember.String; - -module('compile-template'); - -function compileAndEval(template, data = {}, rtl = false) { - return compileTemplate(template, rtl)(data); -} - -test('it emits simple strings', function(assert) { - const result = compileAndEval('Add the brandy and cook 5 minutes.'); - assert.equal(result, 'Add the brandy and cook 5 minutes.'); -}); - -test('it emits Unicode strings', function(assert) { - const result = compileAndEval('Flambé'); - assert.equal(result, 'Flambé'); -}); - -// Interpolations - -test('it interpolates simple values', function(assert) { - const result = compileAndEval('Preheat oven to {{temp}}{{units}}', { temp: '200', units: '℃' }); - assert.equal(result, 'Preheat oven to 200℃'); -}); - -test('it ignores whitespace around interpolations', function(assert) { - const result = compileAndEval('Add the hot stock {{ amt }} at a time.', { - amt: '1/4 cup' - }); - assert.equal(result, 'Add the hot stock 1/4 cup at a time.'); -}); - -// HTML Safety - -test('it treats interpolations as HTML-unsafe', function(assert) { - const result = compileAndEval('Add {{amount}} cloves garlic', { amount: '9' }); - assert.equal(result, 'Add <em>9</em> cloves garlic'); -}); - -test('it obeys interpolations marked as HTML-safe', function(assert) { - const result = compileAndEval('Heat oil over {{temp}} heat.', { - temp: htmlSafe('medium') - }); - assert.equal(result, 'Heat oil over medium heat.'); -}); - -test('it treats triple-stache interpolations as HTML-safe', function(assert) { - const result = compileAndEval('Shred 100g {{{cheese}}}', { - cheese: 'Parmiggiano Reggiano' - }); - assert.equal(result, 'Shred 100g Parmiggiano Reggiano'); -}); - -test('it returns HTML-safe strings', function(assert) { - const result = compileAndEval('Roast the hazelnuts'); - assert.ok(isHTMLSafe(result)); -}); - -// Right-to-Left Support - -test('it wraps the result in Unicode Right-to-Left markers if asked', function(assert) { - const result = compileAndEval('skaets doc eht hsaW', {}, true); - assert.equal(result, '\u202Bskaets doc eht hsaW\u202C'); -}); diff --git a/tests/unit/utils/locale-test.js b/tests/unit/utils/locale-test.js deleted file mode 100644 index 75eb0ee0..00000000 --- a/tests/unit/utils/locale-test.js +++ /dev/null @@ -1,53 +0,0 @@ -import { moduleFor, test } from 'ember-qunit'; - -moduleFor('service:i18n', 'I18nService#locales', { - integration: true -}); - -test('locales have the correct length and names', function(assert) { - const expected = [ - 'en', - 'en-bw', - 'en-ps', - 'en-wz', - 'es' - ]; - const actual = this.subject().get('locales'); - - assert.deepEqual(actual, expected, JSON.stringify(actual)); -}); - -test('addTranslations adds to locales', function(assert) { - const expected = [ - 'en', - 'en-bw', - 'en-ps', - 'en-wz', - 'es', - 'it' - ]; - - const i18n = this.subject({ locale: 'en' }); - i18n.addTranslations('it', {}); - const actual = i18n.get('locales'); - - assert.deepEqual(actual, expected, JSON.stringify(actual)); -}); - -test('addTranslations doesn\'t add duplicate locales', function(assert) { - const expected = [ - 'en', - 'en-bw', - 'en-ps', - 'en-wz', - 'es', - 'it' - ]; - - const i18n = this.subject({ locale: 'en' }); - i18n.addTranslations('it', {}); - i18n.addTranslations('it', {}); - const actual = i18n.get('locales'); - - assert.deepEqual(actual, expected, JSON.stringify(actual)); -}); diff --git a/tests/unit/utils/macro-test.js b/tests/unit/utils/macro-test.js deleted file mode 100644 index f0b62b1d..00000000 --- a/tests/unit/utils/macro-test.js +++ /dev/null @@ -1,40 +0,0 @@ -import Ember from 'ember'; -import { moduleFor, test } from 'ember-qunit'; -import { translationMacro as t } from 'ember-i18n'; - -moduleFor('service:i18n', 'translationMacro', { - integration: true, - - beforeEach() { - const i18n = this.subject({ locale: 'en' }); - - this.object = Ember.Object.extend({ - i18n: i18n, - - numberClicks: 9, - - tMacroProperty1: t('no.interpolations'), - - tMacroProperty2: t('with.interpolations', { clicks: 'numberClicks' }), - }).create(); - } -}); - -test('defines a computed property that translates without interpolations', function(assert) { - assert.equal(this.object.get('tMacroProperty1'), 'text with no interpolations'); -}); - -test('defines a computed property that translates with interpolations', function(assert) { - assert.equal(this.object.get('tMacroProperty2'), 'Clicks: 9'); -}); - -test('defines a computed property with dependencies', function(assert) { - Ember.run(this.object, 'set', 'numberClicks', 13); - assert.equal(this.object.get('tMacroProperty2'), 'Clicks: 13'); -}); - -test('defines a computed property that depends on the locale', function(assert) { - assert.equal(this.object.get('tMacroProperty1'), 'text with no interpolations'); - Ember.run(this.object, 'set', 'i18n.locale', 'es'); - assert.equal(this.object.get('tMacroProperty1'), 'texto sin interpolaciones'); -}); diff --git a/vendor/.gitkeep b/vendor/.gitkeep deleted file mode 100644 index e69de29b..00000000