diff --git a/ember-cli-build.js b/ember-cli-build.js index cd4f87ebbed..399ed235440 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -89,7 +89,7 @@ function rsvp() { function routeRecognizer() { var packageJson = require('route-recognizer/package'); var packageDir = path.dirname(require.resolve('route-recognizer/package')); - var entry = path.join(packageDir, packageJson['module'] || packageJson['js:next'] || packageJson['main'].replace(/dist\//, 'dist/es6/')); + var entry = path.join(packageDir, packageJson['module'] || packageJson['jsnext:main'] || packageJson['main'].replace(/dist\//, 'dist/es6/')); var basename = path.basename(entry); var es6 = new Funnel(path.dirname(entry), { files: [ basename ] @@ -107,6 +107,46 @@ function routeRecognizer() { }); } +function buildPackage(name, options) { + options = options ? options : {}; + var packageJson = require(name + '/package'); + var packageDir = path.dirname(require.resolve(name + '/package')); + + if (options.entry && !options.srcDir) { + throw new Error('If resolving from a non-package.json entry point, you must supply the srcDirectory.'); + } + + var entryModule = packageJson['module'] || packageJson['jsnext:main'] || packageJson['main'].replace(/dist\//, 'dist/es6/'); + var funnelDir = path.join(packageDir, options.entry ? options.srcDir : path.dirname(entryModule)); + var sourceEntry = options.entry ? options.entry : path.basename(entryModule); + + var es6 = new Funnel(funnelDir, { + include: ['**/*.js' ] + }); + var moduleId = options.moduleId ? options.moduleId : name; + var destination = options.dest ? options.dest + '.js': moduleId + '.js'; + var external = options.external ? options.external : []; + var plugins = options.plugins ? options.plugins : []; + var rolledUp = new Rollup(es6, { + rollup: { + external: external, + entry: sourceEntry, + dest: destination, + plugins: plugins, + format: 'es', + moduleId: moduleId, + exports: 'named' + }, + annotation: destination + }); + + var transpileES6 = require('emberjs-build/lib/utils/transpile-es6'); + + return transpileES6(rolledUp, name, { + stripRuntimeChecks: true + }); +} + function router() { return new Rollup(path.resolve(path.dirname(require.resolve('router_js')), '../lib'), { rollup: { @@ -197,27 +237,6 @@ function babelConfigFor(environment) { }; } -var glimmerEngine = require('glimmer-engine/ember-cli-build')({ - shouldExternalizeHelpers: true, - stripRuntimeChecks: true -}); - -function glimmerPackage(name) { - return replace(new Funnel(glimmerEngine, { - include: [ - 'named-amd/' + name + '.js', - 'named-amd/' + name + '/**/*.js' - ] - }), { - files: ['**/*.js'], - pattern: { - match: /\/\/#\s+sourceMappingURL.*/g, - replacement: '' - }, - annotation: 'strip sourceMappingURL' - }); -} - function getVersion() { var projectPath = process.cwd(); var info = getGitInfo(projectPath); @@ -254,6 +273,21 @@ function qunit() { }); } +function handlebarsFix() { + var HANDLEBARS_UTIL = /\/utils.js$/; + return { + load: function(id) { + if (HANDLEBARS_UTIL.test(id)) { + var code = fs.readFileSync(id, 'utf8'); + return { + code: code.replace(/export var isFunction/, 'export { isFunction }'), + map: { mappings: null } + }; + } + } + } +} + module.exports = function() { var features = getFeatures(); var version = getVersion(); @@ -266,18 +300,28 @@ module.exports = function() { 'router': router(), 'dag-map': dag(), 'route-recognizer': routeRecognizer(), - 'simple-html-tokenizer': htmlbarsPackage('simple-html-tokenizer', { libPath: 'node_modules/glimmer-engine/dist/es6' }), - - 'glimmer': glimmerPackage('glimmer'), - 'glimmer-compiler': glimmerPackage('glimmer-compiler'), - 'glimmer-reference': glimmerPackage('glimmer-reference'), - 'glimmer-runtime': glimmerPackage('glimmer-runtime'), - 'glimmer-node': glimmerPackage('glimmer-node'), - 'glimmer-syntax': glimmerPackage('glimmer-syntax'), - 'glimmer-test-helpers': glimmerPackage('glimmer-test-helpers'), - 'glimmer-util': glimmerPackage('glimmer-util'), - 'glimmer-wire-format': glimmerPackage('glimmer-wire-format'), - 'handlebars': glimmerPackage('handlebars') // inlined parser + 'simple-html-tokenizer': buildPackage('simple-html-tokenizer'), + + '@glimmer/compiler': buildPackage('@glimmer/compiler', { + external: ['@glimmer/syntax', '@glimmer/wire-format', '@glimmer/util'] + }), + '@glimmer/reference': buildPackage('@glimmer/reference', { external: ['@glimmer/util'] }), + '@glimmer/runtime': buildPackage('@glimmer/runtime', { + external: ['@glimmer/util', + '@glimmer/reference', + '@glimmer/wire-format', + '@glimmer/syntax'] + }), + '@glimmer/node': buildPackage('@glimmer/node', { external: ['@glimmer/runtime'] }), + '@glimmer/syntax': buildPackage('@glimmer/syntax', { external: ['handlebars', 'simple-html-tokenizer'] }), + '@glimmer/test-helpers': buildPackage('@glimmer/test-helpers'), + '@glimmer/util': buildPackage('@glimmer/util', { external: [] }), + '@glimmer/wire-format': buildPackage('@glimmer/wire-format', { external: ['@glimmer/util'] }), + 'handlebars': buildPackage('handlebars', { + srcDir: 'lib', + entry: 'handlebars/compiler/base.js', + plugins: [handlebarsFix()] + }) // inlined parser }; // Replace _getBowerTree with one from npm @@ -349,7 +393,7 @@ module.exports = function() { development: getFeatures('development'), production: getFeatures('production') }, - glimmer: require('glimmer-engine'), + glimmer: require('@glimmer/compiler'), packages: getPackages(features), vendoredPackages: vendorPackages, version: version diff --git a/lib/packages.js b/lib/packages.js index 93b80b956c0..b2ccd210477 100644 --- a/lib/packages.js +++ b/lib/packages.js @@ -17,12 +17,12 @@ module.exports = function(features) { templateCompilerVendor: [ 'simple-html-tokenizer', 'backburner', - 'glimmer-wire-format', - 'glimmer-syntax', - 'glimmer-util', - 'glimmer-compiler', - 'glimmer-reference', - 'glimmer-runtime', + '@glimmer/wire-format', + '@glimmer/syntax', + '@glimmer/util', + '@glimmer/compiler', + '@glimmer/reference', + '@glimmer/runtime', 'handlebars' ] }, @@ -37,12 +37,11 @@ module.exports = function(features) { requirements: ['container', 'ember-metal', 'ember-routing' ], hasTemplates: true, vendorRequirements: [ - 'glimmer', - 'glimmer-runtime', - 'glimmer-reference', - 'glimmer-util', - 'glimmer-wire-format', - 'glimmer-node' + '@glimmer/runtime', + '@glimmer/reference', + '@glimmer/util', + '@glimmer/wire-format', + '@glimmer/node' ], testingVendorRequirements: [] } diff --git a/package.json b/package.json index 47badf33939..d77df641ae2 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,11 @@ "test:testem": "testem -f testem.dist.json" }, "dependencies": { + "@glimmer/compiler": "^0.21.1", + "@glimmer/node": "^0.21.1", + "@glimmer/reference": "^0.21.0", + "@glimmer/runtime": "^0.21.1", + "@glimmer/util": "^0.21.0", "broccoli-stew": "^1.2.0", "ember-cli-get-component-path-option": "^1.0.0", "ember-cli-normalize-entity-name": "^1.0.0", @@ -35,12 +40,15 @@ "ember-cli-test-info": "^1.0.0", "ember-cli-valid-component-name": "^1.0.0", "ember-cli-version-checker": "^1.1.7", + "handlebars": "~3", "jquery": "^3.1.1", "resolve": "^1.1.7", "rsvp": "^3.3.3", - "simple-dom": "^0.3.0" + "simple-dom": "^0.3.0", + "simple-html-tokenizer": "^0.3.0" }, "devDependencies": { + "@glimmer/test-helpers": "^0.21.1", "aws-sdk": "~2.2.43", "babel-plugin-feature-flags": "^0.2.3", "babel-plugin-filter-imports": "~0.2.0", @@ -64,7 +72,6 @@ "git-repo-info": "^1.1.4", "git-repo-version": "^0.3.1", "github": "^0.2.3", - "glimmer-engine": "^0.19.4", "glob": "^5.0.13", "html-differ": "^1.3.4", "mocha": "^2.4.5", diff --git a/packages/ember-glimmer/lib/component.js b/packages/ember-glimmer/lib/component.js index 8f9f764d8b9..f06f99e3690 100644 --- a/packages/ember-glimmer/lib/component.js +++ b/packages/ember-glimmer/lib/component.js @@ -16,8 +16,8 @@ import { deprecate } from 'ember-metal'; import { UPDATE, RootReference } from './utils/references'; -import { DirtyableTag } from 'glimmer-reference'; -import { readDOMAttr } from 'glimmer-runtime'; +import { DirtyableTag } from '@glimmer/reference'; +import { readDOMAttr } from '@glimmer/runtime'; export const DIRTY_TAG = symbol('DIRTY_TAG'); export const ARGS = symbol('ARGS'); diff --git a/packages/ember-glimmer/lib/dom.js b/packages/ember-glimmer/lib/dom.js index 578db905e7a..66e351da266 100644 --- a/packages/ember-glimmer/lib/dom.js +++ b/packages/ember-glimmer/lib/dom.js @@ -1,2 +1,2 @@ -export { DOMChanges, DOMTreeConstruction } from 'glimmer-runtime'; -export { NodeDOMTreeConstruction } from 'glimmer-node'; +export { DOMChanges, DOMTreeConstruction } from '@glimmer/runtime'; +export { NodeDOMTreeConstruction } from '@glimmer/node'; diff --git a/packages/ember-glimmer/lib/environment.js b/packages/ember-glimmer/lib/environment.js index f7a74543726..b65caf6586d 100644 --- a/packages/ember-glimmer/lib/environment.js +++ b/packages/ember-glimmer/lib/environment.js @@ -12,13 +12,13 @@ import { isSafeString, compileLayout, getDynamicVar -} from 'glimmer-runtime'; +} from '@glimmer/runtime'; import { - CurlyComponentSyntax, CurlyComponentDefinition } from './syntax/curly-component'; -import { findSyntaxBuilder } from './syntax'; -import { DynamicComponentSyntax } from './syntax/dynamic-component'; +import { + populateMacros +} from './syntax'; import createIterable from './utils/iterable'; import { ConditionalReference, @@ -31,12 +31,9 @@ import { inlineIf, inlineUnless } from './helpers/if-unless'; -import { wrapComponentClassAttribute } from './utils/bindings'; - import { default as action } from './helpers/action'; import { default as componentHelper } from './helpers/component'; import { default as concat } from './helpers/concat'; -import { default as debuggerHelper } from './helpers/debugger'; import { default as get } from './helpers/get'; import { default as hash } from './helpers/hash'; import { default as loc } from './helpers/loc'; @@ -54,10 +51,6 @@ import { default as htmlSafeHelper } from './helpers/-html-safe'; import installPlatformSpecificProtocolForURL from './protocol-for-url'; import { FACTORY_FOR } from 'container'; -const builtInComponents = { - textarea: '-text-area' -}; - import { default as ActionModifierManager } from './modifiers/action'; export default class Environment extends GlimmerEnvironment { @@ -117,7 +110,6 @@ export default class Environment extends GlimmerEnvironment { action, component: componentHelper, concat, - debugger: debuggerHelper, get, hash, loc, @@ -138,102 +130,10 @@ export default class Environment extends GlimmerEnvironment { runInDebug(() => this.debugStack = new DebugStack()); } - // Hello future traveler, welcome to the world of syntax refinement. - // The method below is called by Glimmer's runtime compiler to allow - // us to take generic statement syntax and refine it to more meaniful - // syntax for Ember's use case. This on the fly switch-a-roo sounds fine - // and dandy, however Ember has precedence on statement refinement that you - // need to be aware of. The presendence for language constructs is as follows: - // - // ------------------------ - // Native & Built-in Syntax - // ------------------------ - // User-land components - // ------------------------ - // User-land helpers - // ------------------------ - // - // The one caveat here is that Ember also allows for dashed references that are - // not a component or helper: - // - // export default Component.extend({ - // 'foo-bar': 'LAME' - // }); - // - // {{foo-bar}} - // - // The heuristic for the above situation is a dashed "key" in inline form - // that does not resolve to a defintion. In this case refine statement simply - // isn't going to return any syntax and the Glimmer engine knows how to handle - // this case. - - refineStatement(statement, symbolTable) { - // 1. resolve any native syntax – if, unless, with, each, and partial - let nativeSyntax = super.refineStatement(statement, symbolTable); - - if (nativeSyntax) { - return nativeSyntax; - } - - let { - appendType, - isSimple, - isInline, - isBlock, - isModifier, - key, - path, - args - } = statement; - - assert(`You attempted to overwrite the built-in helper "${key}" which is not allowed. Please rename the helper.`, !(this.builtInHelpers[key] && this.owner.hasRegistration(`helper:${key}`))); - - if (isSimple && (isInline || isBlock) && appendType !== 'get') { - // 2. built-in syntax - - let RefinedSyntax = findSyntaxBuilder(key); - if (RefinedSyntax) { - return RefinedSyntax.create(this, args, symbolTable); - } - - let internalKey = builtInComponents[key]; - let definition = null; - - if (internalKey) { - definition = this.getComponentDefinition([internalKey], symbolTable); - } else if (key.indexOf('-') >= 0) { - definition = this.getComponentDefinition(path, symbolTable); - } - - if (definition) { - wrapComponentClassAttribute(args); - - return new CurlyComponentSyntax(args, definition, symbolTable); - } - - assert(`A component or helper named "${key}" could not be found`, !isBlock || this.hasHelper(path, symbolTable)); - } - - if (isInline && !isSimple && appendType !== 'helper') { - return statement.original.deopt(); - } - - if (!isSimple && path) { - return DynamicComponentSyntax.fromPath(this, path, args, symbolTable); - } - - assert(`Helpers may not be used in the block form, for example {{#${key}}}{{/${key}}}. Please use a component, or alternatively use the helper in combination with a built-in Ember helper, for example {{#if (${key})}}{{/if}}.`, !isBlock || !this.hasHelper(path, symbolTable)); - - assert(`Helpers may not be used in the element form.`, (() => { - if (nativeSyntax) { return true; } - if (!key) { return true; } - - if (isModifier && !this.hasModifier(path, symbolTable) && this.hasHelper(path, symbolTable)) { - return false; - } - - return true; - })()); + macros() { + let macros = super.macros(); + populateMacros(macros.blocks, macros.inlines); + return macros; } hasComponentDefinition() { diff --git a/packages/ember-glimmer/lib/helper.js b/packages/ember-glimmer/lib/helper.js index 0c39490c797..22a1b66f404 100644 --- a/packages/ember-glimmer/lib/helper.js +++ b/packages/ember-glimmer/lib/helper.js @@ -5,7 +5,7 @@ import { symbol } from 'ember-utils'; import { FrameworkObject } from 'ember-runtime'; -import { DirtyableTag } from 'glimmer-reference'; +import { DirtyableTag } from '@glimmer/reference'; export const RECOMPUTE_TAG = symbol('RECOMPUTE_TAG'); diff --git a/packages/ember-glimmer/lib/helpers/action.js b/packages/ember-glimmer/lib/helpers/action.js index 89fe012351a..a60c3ce205c 100644 --- a/packages/ember-glimmer/lib/helpers/action.js +++ b/packages/ember-glimmer/lib/helpers/action.js @@ -12,8 +12,8 @@ import { runInDebug } from 'ember-metal'; import { UnboundReference } from '../utils/references'; -import { EvaluatedPositionalArgs } from 'glimmer-runtime'; -import { isConst } from 'glimmer-reference'; +import { EvaluatedPositionalArgs } from '@glimmer/runtime'; +import { isConst } from '@glimmer/reference'; export const INVOKE = symbol('INVOKE'); export const ACTION = symbol('ACTION'); @@ -378,7 +378,7 @@ function makeClosureAction(context, target, action, processArgs, debugKey) { } return function(...args) { - let payload = { target: self, args, label: 'glimmer-closure-action' }; + let payload = { target: self, args, label: '@glimmer/closure-action' }; return flaggedInstrument('interaction.ember-action', payload, () => { return run.join(self, fn, ...processArgs(args)); }); diff --git a/packages/ember-glimmer/lib/helpers/component.js b/packages/ember-glimmer/lib/helpers/component.js index e27bba897dd..314b55f754c 100644 --- a/packages/ember-glimmer/lib/helpers/component.js +++ b/packages/ember-glimmer/lib/helpers/component.js @@ -9,13 +9,12 @@ import { validatePositionalParameters } from '../syntax/curly-component'; import { - Blocks, EvaluatedArgs, EvaluatedNamedArgs, EvaluatedPositionalArgs, isComponentDefinition -} from 'glimmer-runtime'; -import { assert } from 'ember-metal'; +} from '@glimmer/runtime'; +import { assert, runInDebug } from 'ember-metal'; /** The `{{component}}` helper lets you add instances of `Ember.Component` to a @@ -206,6 +205,15 @@ function createCurriedDefinition(definition, args) { ); } +let EMPTY_BLOCKS = { + default: null, + inverse: null +}; + +runInDebug(() => { + EMPTY_BLOCKS = Object.freeze(EMPTY_BLOCKS); +}); + function curryArgs(definition, newArgs) { let { args, ComponentClass } = definition; let positionalParams = ComponentClass.class.positionalParams; @@ -258,7 +266,7 @@ function curryArgs(definition, newArgs) { let mergedArgs = EvaluatedArgs.create( EvaluatedPositionalArgs.create(mergedPositional), EvaluatedNamedArgs.create(mergedNamed), - Blocks.empty() + EMPTY_BLOCKS ); return mergedArgs; diff --git a/packages/ember-glimmer/lib/helpers/concat.js b/packages/ember-glimmer/lib/helpers/concat.js index 65bd35d0019..f51e98f8fcc 100644 --- a/packages/ember-glimmer/lib/helpers/concat.js +++ b/packages/ember-glimmer/lib/helpers/concat.js @@ -1,5 +1,5 @@ import { InternalHelperReference } from '../utils/references'; -import { normalizeTextValue } from 'glimmer-runtime'; +import { normalizeTextValue } from '@glimmer/runtime'; /** @module ember diff --git a/packages/ember-glimmer/lib/helpers/get.js b/packages/ember-glimmer/lib/helpers/get.js index da88ed49314..1e6f52e3d08 100644 --- a/packages/ember-glimmer/lib/helpers/get.js +++ b/packages/ember-glimmer/lib/helpers/get.js @@ -6,7 +6,7 @@ import { combine, isConst, referenceFromParts -} from 'glimmer-reference'; +} from '@glimmer/reference'; /** @module ember diff --git a/packages/ember-glimmer/lib/helpers/if-unless.js b/packages/ember-glimmer/lib/helpers/if-unless.js index 4c00c6ee85e..7f426da0e40 100644 --- a/packages/ember-glimmer/lib/helpers/if-unless.js +++ b/packages/ember-glimmer/lib/helpers/if-unless.js @@ -14,7 +14,7 @@ import { UpdatableTag, combine, isConst -} from 'glimmer-reference'; +} from '@glimmer/reference'; /** diff --git a/packages/ember-glimmer/lib/index.js b/packages/ember-glimmer/lib/index.js index da0465c1cff..f5e7e4fd5b9 100644 --- a/packages/ember-glimmer/lib/index.js +++ b/packages/ember-glimmer/lib/index.js @@ -200,7 +200,6 @@ export { INVOKE } from './helpers/action'; export { default as RootTemplate } from './templates/root'; -export { registerSyntax } from './syntax'; export { default as template } from './template'; export { default as Checkbox } from './components/checkbox'; export { default as TextField } from './components/text_field'; diff --git a/packages/ember-glimmer/lib/renderer.js b/packages/ember-glimmer/lib/renderer.js index ce0a829d16d..0dee18c7fa2 100644 --- a/packages/ember-glimmer/lib/renderer.js +++ b/packages/ember-glimmer/lib/renderer.js @@ -6,7 +6,7 @@ import { runInTransaction as _runInTransaction, isFeatureEnabled } from 'ember-metal'; -import { CURRENT_TAG, UNDEFINED_REFERENCE } from 'glimmer-reference'; +import { CURRENT_TAG, UNDEFINED_REFERENCE } from '@glimmer/reference'; import { fallbackViewRegistry, getViewElement, diff --git a/packages/ember-glimmer/lib/syntax.js b/packages/ember-glimmer/lib/syntax.js index ee0e37a14bb..745dd6e338a 100644 --- a/packages/ember-glimmer/lib/syntax.js +++ b/packages/ember-glimmer/lib/syntax.js @@ -1,44 +1,102 @@ -import { RenderSyntax } from './syntax/render'; -import { OutletSyntax } from './syntax/outlet'; -import { MountSyntax } from './syntax/mount'; -import { DynamicComponentSyntax } from './syntax/dynamic-component'; -import { InputSyntax } from './syntax/input'; +import { renderMacro } from './syntax/render'; +import { outletMacro } from './syntax/outlet'; +import { mountMacro } from './syntax/mount'; import { - WithDynamicVarsSyntax, - InElementSyntax -} from 'glimmer-runtime'; + blockComponentMacro, + inlineComponentMacro, + closureComponentMacro +} from './syntax/dynamic-component'; +import { wrapComponentClassAttribute } from './utils/bindings'; +import { _withDynamicVarsMacro } from './syntax/-with-dynamic-vars'; +import { _inElementMacro } from './syntax/-in-element'; +import { inputMacro } from './syntax/input'; +import { textAreaMacro } from './syntax/-text-area'; +import { assert } from 'ember-metal'; +function refineInlineSyntax(path, params, hash, builder) { + let [ name ] = path; -let syntaxKeys = []; -let syntaxes = []; + assert(`You attempted to overwrite the built-in helper "${name}" which is not allowed. Please rename the helper.`, !(builder.env.builtInHelpers[name] && builder.env.owner.hasRegistration(`helper:${name}`))); -export function registerSyntax(key, syntax) { - syntaxKeys.push(key); - syntaxes.push(syntax); -} + if (path.length > 1) { + return closureComponentMacro(path, params, hash, null, null, builder); + } + + let { symbolTable } = builder; -export function findSyntaxBuilder(key) { - let index = syntaxKeys.indexOf(key); + let definition; + if (name.indexOf('-') > -1) { + definition = builder.env.getComponentDefinition(path, symbolTable); + } - if (index > -1) { - return syntaxes[index]; + if (definition) { + wrapComponentClassAttribute(hash); + builder.component.static(definition, [params, hash, null, null], symbolTable); + return true; } + + return false; } -registerSyntax('render', RenderSyntax); -registerSyntax('outlet', OutletSyntax); -registerSyntax('mount', MountSyntax); -registerSyntax('component', DynamicComponentSyntax); -registerSyntax('input', InputSyntax); +function refineBlockSyntax(sexp, builder) { + let [, path, params, hash, _default, inverse] = sexp; + let [ name ] = path; + + if (path.length > 1) { + return closureComponentMacro(path, params, hash, _default, inverse, builder); + } + + if (name.indexOf('-') === -1) { + return false; + } + + let { symbolTable } = builder; + let definition; + if (name.indexOf('-') > -1) { + definition = builder.env.getComponentDefinition(path, symbolTable); + } -registerSyntax('-with-dynamic-vars', class { - static create(environment, args, symbolTable) { - return new WithDynamicVarsSyntax(args); + if (definition) { + wrapComponentClassAttribute(hash); + builder.component.static(definition, [params, hash, _default, inverse], symbolTable); + return true; } -}); -registerSyntax('-in-element', class { - static create(environment, args, symbolTable) { - return new InElementSyntax(args); + assert(`A component or helper named "${name}" could not be found`, builder.env.hasHelper(path, symbolTable)); + + assert(`Helpers may not be used in the block form, for example {{#${name}}}{{/${name}}}. Please use a component, or alternatively use the helper in combination with a built-in Ember helper, for example {{#if (${name})}}{{/if}}.`, !builder.env.hasHelper(path, symbolTable)); + + return false; +} + +let experimentalMacros = []; + +// This is a private API to allow for expiremental macros +// to be created in user space. Registering a macro should +// should be done in an initializer. +export function registerMacros(macro) { + experimentalMacros.push(macro); +} + +export function populateMacros(blocks, inlines) { + inlines.add('outlet', outletMacro); + inlines.add('component', inlineComponentMacro); + inlines.add('render', renderMacro); + inlines.add('mount', mountMacro); + inlines.add('input', inputMacro); + inlines.add('textarea', textAreaMacro); + inlines.addMissing(refineInlineSyntax); + blocks.add('component', blockComponentMacro); + blocks.add('-with-dynamic-vars', _withDynamicVarsMacro); + blocks.add('-in-element', _inElementMacro); + blocks.addMissing(refineBlockSyntax); + + for (let i = 0; i < experimentalMacros.length; i++) { + let macro = experimentalMacros[i]; + macro(blocks, inlines); } -}); + + experimentalMacros = []; + + return { blocks, inlines }; +} diff --git a/packages/ember-glimmer/lib/syntax/-in-element.js b/packages/ember-glimmer/lib/syntax/-in-element.js new file mode 100644 index 00000000000..e0a823ac181 --- /dev/null +++ b/packages/ember-glimmer/lib/syntax/-in-element.js @@ -0,0 +1,23 @@ +import { BaselineSyntax, compileArgs } from '@glimmer/runtime'; +import { unwrap } from '@glimmer/util'; + +const { + defaultBlock, + params, + hash +} = BaselineSyntax.NestedBlock; + +export function _inElementMacro(sexp, builder) { + let block = defaultBlock(sexp); + let args = compileArgs(params(sexp), hash(sexp), builder); + + builder.putArgs(args); + builder.test('simple'); + + builder.labelled(null, b => { + b.jumpUnless('END'); + b.pushRemoteElement(); + b.evaluate(unwrap(block)); + b.popRemoteElement(); + }); +} diff --git a/packages/ember-glimmer/lib/syntax/-text-area.js b/packages/ember-glimmer/lib/syntax/-text-area.js new file mode 100644 index 00000000000..95400dc9af1 --- /dev/null +++ b/packages/ember-glimmer/lib/syntax/-text-area.js @@ -0,0 +1,8 @@ +import { wrapComponentClassAttribute } from '../utils/bindings'; + +export function textAreaMacro(path, params, hash, builder) { + let definition = builder.env.getComponentDefinition(['-text-area'], builder.symbolTable); + wrapComponentClassAttribute(hash); + builder.component.static(definition, [params, hash, null, null], builder.symbolTable); + return true; +} diff --git a/packages/ember-glimmer/lib/syntax/-with-dynamic-vars.js b/packages/ember-glimmer/lib/syntax/-with-dynamic-vars.js new file mode 100644 index 00000000000..c1ab1943abd --- /dev/null +++ b/packages/ember-glimmer/lib/syntax/-with-dynamic-vars.js @@ -0,0 +1,21 @@ +import { BaselineSyntax, compileArgs } from '@glimmer/runtime'; +import { unwrap } from '@glimmer/util'; + +const { + defaultBlock, + params, + hash +} = BaselineSyntax.NestedBlock; + +export function _withDynamicVarsMacro(sexp, builder) { + let block = defaultBlock(sexp); + let args = compileArgs(params(sexp), hash(sexp), builder); + + builder.unit(b => { + b.putArgs(args); + b.pushDynamicScope(); + b.bindDynamicScope(args.named.keys); + b.evaluate(unwrap(block)); + b.popDynamicScope(); + }); +} diff --git a/packages/ember-glimmer/lib/syntax/curly-component.js b/packages/ember-glimmer/lib/syntax/curly-component.js index 047279a7641..57a1f6b3a35 100644 --- a/packages/ember-glimmer/lib/syntax/curly-component.js +++ b/packages/ember-glimmer/lib/syntax/curly-component.js @@ -1,9 +1,8 @@ import { OWNER } from 'ember-utils'; import { - StatementSyntax, PrimitiveReference, ComponentDefinition -} from 'glimmer-runtime'; +} from '@glimmer/runtime'; import { AttributeBinding, ClassNameBinding, @@ -126,20 +125,6 @@ function applyAttributeBindings(element, attributeBindings, component, operation } } -export class CurlyComponentSyntax extends StatementSyntax { - constructor(args, definition, symbolTable) { - super(); - this.args = args; - this.definition = definition; - this.symbolTable = symbolTable; - this.shadow = null; - } - - compile(builder) { - builder.component.static(this.definition, this.args, this.symbolTable, this.shadow); - } -} - function NOOP() {} class ComponentStateBucket { diff --git a/packages/ember-glimmer/lib/syntax/dynamic-component.js b/packages/ember-glimmer/lib/syntax/dynamic-component.js index 10720ac54bd..0e2249b918c 100644 --- a/packages/ember-glimmer/lib/syntax/dynamic-component.js +++ b/packages/ember-glimmer/lib/syntax/dynamic-component.js @@ -1,11 +1,7 @@ import { - ArgsSyntax, - StatementSyntax, - GetSyntax, - PositionalArgsSyntax, isComponentDefinition -} from 'glimmer-runtime'; -import { UNDEFINED_REFERENCE } from 'glimmer-reference'; +} from '@glimmer/runtime'; +import { UNDEFINED_REFERENCE } from '@glimmer/reference'; import { assert } from 'ember-metal'; function dynamicComponentFor(vm, symbolTable) { @@ -16,37 +12,33 @@ function dynamicComponentFor(vm, symbolTable) { return new DynamicComponentReference({ nameRef, env, symbolTable }); } -export class DynamicComponentSyntax extends StatementSyntax { - // for {{component componentName}} - static create(environment, args, symbolTable) { - let definitionArgs = ArgsSyntax.fromPositionalArgs(args.positional.slice(0, 1)); - let invocationArgs = ArgsSyntax.build(args.positional.slice(1), args.named, args.blocks); - - return new this(definitionArgs, invocationArgs, symbolTable); - } - - // Transforms {{foo.bar with=args}} or {{#foo.bar with=args}}{{/foo.bar}} - // into {{component foo.bar with=args}} or - // {{#component foo.bar with=args}}{{/component}} - // with all of it's arguments - static fromPath(environment, path, args, symbolTable) { - let positional = ArgsSyntax.fromPositionalArgs(PositionalArgsSyntax.build([GetSyntax.build(path.join('.'))])); +export function closureComponentMacro(path, params, hash, _default, inverse, builder) { + let definitionArgs = [[['get', path]], hash, _default, inverse]; + let args = [params, hash, _default, inverse]; + builder.component.dynamic(definitionArgs, dynamicComponentFor, args, builder.symbolTable); + return true; +} - return new this(positional, args, symbolTable); - } +export function dynamicComponentMacro(params, hash, _default, inverse, builder) { + let definitionArgs = [params.slice(0, 1), null, null, null]; + let args = [params.slice(1), hash, null, null]; + builder.component.dynamic(definitionArgs, dynamicComponentFor, args, builder.symbolTable); + return true; +} - constructor(definitionArgs, args, symbolTable) { - super(); - this.definition = dynamicComponentFor; - this.definitionArgs = definitionArgs; - this.args = args; - this.symbolTable = symbolTable; - this.shadow = null; - } +export function blockComponentMacro(sexp, builder) { + let [, , params, hash, _default, inverse] = sexp; + let definitionArgs = [params.slice(0, 1), null, null, null]; + let args = [params.slice(1), hash, _default, inverse]; + builder.component.dynamic(definitionArgs, dynamicComponentFor, args, builder.symbolTable); + return true; +} - compile(builder) { - builder.component.dynamic(this.definitionArgs, this.definition, this.args, this.symbolTable, this.shadow); - } +export function inlineComponentMacro(path, params, hash, builder) { + let definitionArgs = [params.slice(0, 1), null, null, null]; + let args = [params.slice(1), hash, null, null]; + builder.component.dynamic(definitionArgs, dynamicComponentFor, args, builder.symbolTable); + return true; } class DynamicComponentReference { diff --git a/packages/ember-glimmer/lib/syntax/input.js b/packages/ember-glimmer/lib/syntax/input.js index 4c7ec2460b5..5ebd2fc4861 100644 --- a/packages/ember-glimmer/lib/syntax/input.js +++ b/packages/ember-glimmer/lib/syntax/input.js @@ -3,14 +3,13 @@ @submodule ember-glimmer */ import { assert } from 'ember-metal'; -import { CurlyComponentSyntax } from './curly-component'; -import { DynamicComponentSyntax } from './dynamic-component'; import { wrapComponentClassAttribute } from '../utils/bindings'; +import { dynamicComponentMacro } from './dynamic-component'; -function buildTextFieldSyntax(args, getDefinition, symbolTable) { - let definition = getDefinition('-text-field'); - wrapComponentClassAttribute(args); - return new CurlyComponentSyntax(args, definition, symbolTable); +function buildTextFieldSyntax(params, hash, builder) { + let definition = builder.env.getComponentDefinition(['-text-field'], builder.symbolTable); + builder.component.static(definition, [params, hash, null, null], builder.symbolTable); + return true; } /** @@ -145,31 +144,47 @@ function buildTextFieldSyntax(args, getDefinition, symbolTable) { @param {Hash} options @public */ -export const InputSyntax = { - create(environment, args, symbolTable) { - let getDefinition = (path) => environment.getComponentDefinition([path], symbolTable); - - if (args.named.has('type')) { - let typeArg = args.named.at('type'); - if (typeArg.type === 'value') { - if (typeArg.value === 'checkbox') { - assert( - '{{input type=\'checkbox\'}} does not support setting `value=someBooleanValue`; ' + - 'you must use `checked=someBooleanValue` instead.', - !args.named.has('value') - ); - - wrapComponentClassAttribute(args); - let definition = getDefinition('-checkbox'); - return new CurlyComponentSyntax(args, definition, symbolTable); - } else { - return buildTextFieldSyntax(args, getDefinition, symbolTable); - } + +export function inputMacro(path, params, hash, builder) { + let keys; + let values; + let typeIndex = -1; + let valueIndex = -1; + + if (hash) { + keys = hash[0]; + values = hash[1]; + typeIndex = keys.indexOf('type'); + valueIndex = keys.indexOf('value'); + } + + if (!params) { + params = []; + } + + if (typeIndex > -1) { + let typeArg = values[typeIndex]; + if (!Array.isArray(typeArg)) { + if (typeArg === 'checkbox') { + assert( + '{{input type=\'checkbox\'}} does not support setting `value=someBooleanValue`; ' + + 'you must use `checked=someBooleanValue` instead.', + valueIndex === -1 + ); + + wrapComponentClassAttribute(hash); + + let definition = builder.env.getComponentDefinition(['-checkbox'], builder.symbolTable); + builder.component.static(definition, [params, hash, null, null], builder.symbolTable); + return true; + } else { + return buildTextFieldSyntax(params, hash, builder); } - } else { - return buildTextFieldSyntax(args, getDefinition, symbolTable); } - - return DynamicComponentSyntax.create(environment, args, symbolTable); + } else { + return buildTextFieldSyntax(params, hash, builder); } -}; + + + return dynamicComponentMacro(params, hash, null, null, builder); +} diff --git a/packages/ember-glimmer/lib/syntax/mount.js b/packages/ember-glimmer/lib/syntax/mount.js index 611599e80ce..0570e85567e 100644 --- a/packages/ember-glimmer/lib/syntax/mount.js +++ b/packages/ember-glimmer/lib/syntax/mount.js @@ -3,11 +3,9 @@ @submodule ember-glimmer */ import { - ArgsSyntax, - StatementSyntax, ComponentDefinition -} from 'glimmer-runtime'; -import { UNDEFINED_REFERENCE } from 'glimmer-reference'; +} from '@glimmer/runtime'; +import { UNDEFINED_REFERENCE } from '@glimmer/reference'; import { assert, runInDebug } from 'ember-metal'; import { RootReference } from '../utils/references'; import { generateControllerFactory } from 'ember-routing'; @@ -35,39 +33,26 @@ import AbstractManager from './abstract-manager'; @category ember-application-engines @public */ -export class MountSyntax extends StatementSyntax { - static create(env, args, symbolTable) { - assert( - 'You can only pass a single argument to the {{mount}} helper, e.g. {{mount "chat-engine"}}.', - args.positional.length === 1 && args.named.length === 0 - ); - - assert( - 'The first argument of {{mount}} must be quoted, e.g. {{mount "chat-engine"}}.', - args.positional.at(0).type === 'value' && typeof args.positional.at(0).inner() === 'string' - ); - - let name = args.positional.at(0).inner(); - - assert( - `You used \`{{mount '${name}'}}\`, but the engine '${name}' can not be found.`, - env.owner.hasRegistration(`engine:${name}`) - ); - - let definition = new MountDefinition(name, env); - - return new MountSyntax(definition, symbolTable); - } - - constructor(definition, symbolTable) { - super(); - this.definition = definition; - this.symbolTable = symbolTable; - } - - compile(builder) { - builder.component.static(this.definition, ArgsSyntax.empty(), null, this.symbolTable, null); - } +export function mountMacro(path, params, hash, builder) { + assert( + 'You can only pass a single argument to the {{mount}} helper, e.g. {{mount "chat-engine"}}.', + params.length === 1 && hash === null + ); + + let name = params[0]; + + assert( + 'The first argument of {{mount}} must be quoted, e.g. {{mount "chat-engine"}}.', + typeof name === 'string' + ); + + assert( + `You used \`{{mount '${name}'}}\`, but the engine '${name}' can not be found.`, + builder.env.owner.hasRegistration(`engine:${name}`) + ); + + builder.component.static(new MountDefinition(name, builder.env), [params, hash, null, null], builder.symbolTable); + return true; } class MountManager extends AbstractManager { diff --git a/packages/ember-glimmer/lib/syntax/outlet.js b/packages/ember-glimmer/lib/syntax/outlet.js index 02883c4b7ef..48f57b50ff1 100644 --- a/packages/ember-glimmer/lib/syntax/outlet.js +++ b/packages/ember-glimmer/lib/syntax/outlet.js @@ -4,18 +4,17 @@ */ import { generateGuid, guidFor } from 'ember-utils'; import { - ArgsSyntax, - StatementSyntax, - ComponentDefinition -} from 'glimmer-runtime'; -import { runInDebug, _instrumentStart } from 'ember-metal'; + ComponentDefinition, + CompiledArgs +} from '@glimmer/runtime'; +import { _instrumentStart, runInDebug } from 'ember-metal'; import { RootReference } from '../utils/references'; +import AbstractManager from './abstract-manager'; import { UpdatableTag, ConstReference, combine -} from 'glimmer-reference'; -import AbstractManager from './abstract-manager'; +} from '@glimmer/reference'; function outletComponentFor(vm) { let { outletState } = vm.dynamicScope(); @@ -31,6 +30,7 @@ function outletComponentFor(vm) { return new OutletComponentReference(outletNameRef, outletState); } + /** The `{{outlet}}` helper lets you specify where a child route will render in your template. An important use of the `{{outlet}}` helper is in your @@ -80,24 +80,13 @@ function outletComponentFor(vm) { @for Ember.Templates.helpers @public */ -export class OutletSyntax extends StatementSyntax { - static create(environment, args, symbolTable) { - let definitionArgs = ArgsSyntax.fromPositionalArgs(args.positional.slice(0, 1)); - return new this(environment, definitionArgs, symbolTable); - } - - constructor(environment, args, symbolTable) { - super(); - this.definitionArgs = args; - this.definition = outletComponentFor; - this.args = ArgsSyntax.empty(); - this.symbolTable = symbolTable; - this.shadow = null; - } - - compile(builder) { - builder.component.dynamic(this.definitionArgs, this.definition, this.args, this.symbolTable, this.shadow); +export function outletMacro(path, params, hash, builder) { + if (!params) { + params = []; } + let definitionArgs = [params.slice(0, 1), null, null, null]; + builder.component.dynamic(definitionArgs, outletComponentFor, CompiledArgs.empty(), builder.symbolTable, null); + return true; } class OutletComponentReference { diff --git a/packages/ember-glimmer/lib/syntax/render.js b/packages/ember-glimmer/lib/syntax/render.js index e647e4e4717..f83b8733f99 100644 --- a/packages/ember-glimmer/lib/syntax/render.js +++ b/packages/ember-glimmer/lib/syntax/render.js @@ -3,11 +3,9 @@ @submodule ember-glimmer */ import { - ArgsSyntax, - StatementSyntax, ComponentDefinition -} from 'glimmer-runtime'; -import { ConstReference, isConst } from 'glimmer-reference'; +} from '@glimmer/runtime'; +import { ConstReference, isConst } from '@glimmer/reference'; import { assert, runInDebug } from 'ember-metal'; import { RootReference } from '../utils/references'; import { generateController, generateControllerFactory } from 'ember-routing'; @@ -50,6 +48,7 @@ function makeComponentDefinition(vm) { } } + /** Calling ``{{render}}`` from within a template will insert another template that matches the provided name. The inserted template will @@ -119,23 +118,14 @@ function makeComponentDefinition(vm) { @return {String} HTML string @public */ -export class RenderSyntax extends StatementSyntax { - static create(environment, args, symbolTable) { - return new this(environment, args, symbolTable); - } - - constructor(environment, args, symbolTable) { - super(); - this.definitionArgs = args; - this.definition = makeComponentDefinition; - this.args = ArgsSyntax.fromPositionalArgs(args.positional.slice(1, 2)); - this.symbolTable = symbolTable; - this.shadow = null; - } - - compile(builder) { - builder.component.dynamic(this.definitionArgs, this.definition, this.args, this.symbolTable, this.shadow); +export function renderMacro(path, params, hash, builder) { + if (!params) { + params = []; } + let definitionArgs = [params.slice(0), hash, null, null]; + let args = [params.slice(1), hash, null, null]; + builder.component.dynamic(definitionArgs, makeComponentDefinition, args, builder.symbolTable); + return true; } class AbstractRenderManager extends AbstractManager { diff --git a/packages/ember-glimmer/lib/template.js b/packages/ember-glimmer/lib/template.js index 3919ff3471a..f8e97bdd69a 100644 --- a/packages/ember-glimmer/lib/template.js +++ b/packages/ember-glimmer/lib/template.js @@ -1,5 +1,5 @@ import { OWNER } from 'ember-utils'; -import { templateFactory } from 'glimmer-runtime'; +import { templateFactory } from '@glimmer/runtime'; export default function template(json) { let factory = templateFactory(json); diff --git a/packages/ember-glimmer/lib/utils/bindings.js b/packages/ember-glimmer/lib/utils/bindings.js index 4c3d0205596..fc0ce9ae280 100644 --- a/packages/ember-glimmer/lib/utils/bindings.js +++ b/packages/ember-glimmer/lib/utils/bindings.js @@ -3,8 +3,7 @@ import { combine, map, referenceFromParts -} from 'glimmer-reference'; -import { HelperSyntax } from 'glimmer-runtime'; +} from '@glimmer/reference'; import { get, assert } from 'ember-metal'; import { String as StringUtils } from 'ember-runtime'; import { ROOT_REF } from '../component'; @@ -30,20 +29,26 @@ function referenceForParts(component, parts) { } // TODO we should probably do this transform at build time -export function wrapComponentClassAttribute(args) { - let { named } = args; - let index = named.keys.indexOf('class'); +export function wrapComponentClassAttribute(hash) { + if (!hash) { + return hash; + } + + let [ keys, values ] = hash; + let index = keys.indexOf('class'); if (index !== -1) { - let { ref, type } = named.values[index]; + let [ type ] = values[index]; if (type === 'get') { - let propName = ref.parts[ref.parts.length - 1]; - named.values[index] = HelperSyntax.fromSpec(['helper', ['-class'], [['get', ref.parts], propName], null]); + let getExp = values[index]; + let path = getExp[1]; + let propName = path[path.length - 1]; + hash[1][index] = ['helper', ['-class'], [getExp, propName]]; } } - return args; + return hash; } export const AttributeBinding = { diff --git a/packages/ember-glimmer/lib/utils/iterable.js b/packages/ember-glimmer/lib/utils/iterable.js index ee42da0b696..368e7a71f99 100644 --- a/packages/ember-glimmer/lib/utils/iterable.js +++ b/packages/ember-glimmer/lib/utils/iterable.js @@ -13,7 +13,7 @@ import { CONSTANT_TAG, UpdatableTag, combine -} from 'glimmer-reference'; +} from '@glimmer/reference'; const ITERATOR_KEY_GUID = 'be277757-bbbe-4620-9fcb-213ef433cca2'; diff --git a/packages/ember-glimmer/lib/utils/process-args.js b/packages/ember-glimmer/lib/utils/process-args.js index db530573325..e7fcc4ca11c 100644 --- a/packages/ember-glimmer/lib/utils/process-args.js +++ b/packages/ember-glimmer/lib/utils/process-args.js @@ -5,7 +5,7 @@ import { } from 'ember-utils'; import { CONSTANT_TAG -} from 'glimmer-reference'; +} from '@glimmer/reference'; import { ARGS } from '../component'; import { UPDATE } from './references'; import { MUTABLE_CELL } from 'ember-views'; @@ -13,7 +13,7 @@ import { ACTION } from '../helpers/action'; import { EvaluatedArgs, EvaluatedPositionalArgs -} from 'glimmer-runtime'; +} from '@glimmer/runtime'; // Maps all variants of positional and dynamically scoped arguments // into the named arguments. Input `args` and return value are both diff --git a/packages/ember-glimmer/lib/utils/references.js b/packages/ember-glimmer/lib/utils/references.js index 76f2d75a07a..7ef1529970b 100644 --- a/packages/ember-glimmer/lib/utils/references.js +++ b/packages/ember-glimmer/lib/utils/references.js @@ -21,19 +21,19 @@ import { UpdatableTag, combine, isConst -} from 'glimmer-reference'; +} from '@glimmer/reference'; import { ConditionalReference as GlimmerConditionalReference, PrimitiveReference, NULL_REFERENCE, UNDEFINED_REFERENCE -} from 'glimmer-runtime'; +} from '@glimmer/runtime'; import emberToBool from './to-bool'; import { RECOMPUTE_TAG } from '../helper'; export const UPDATE = symbol('UPDATE'); -export { NULL_REFERENCE, UNDEFINED_REFERENCE } from 'glimmer-runtime'; +export { NULL_REFERENCE, UNDEFINED_REFERENCE } from '@glimmer/runtime'; // @abstract // @implements PathReference diff --git a/packages/ember-glimmer/lib/views/outlet.js b/packages/ember-glimmer/lib/views/outlet.js index 9845f092a1a..0b3e51c7c7a 100644 --- a/packages/ember-glimmer/lib/views/outlet.js +++ b/packages/ember-glimmer/lib/views/outlet.js @@ -3,7 +3,7 @@ @submodule ember-glimmer */ import { assign, EmptyObject } from 'ember-utils'; -import { DirtyableTag } from 'glimmer-reference'; +import { DirtyableTag } from '@glimmer/reference'; import { environment } from 'ember-environment'; import { OWNER } from 'ember-utils'; import { run } from 'ember-metal'; diff --git a/packages/ember-glimmer/tests/integration/helpers/custom-helper-test.js b/packages/ember-glimmer/tests/integration/helpers/custom-helper-test.js index a4c2119ea07..ddb41a6c20a 100644 --- a/packages/ember-glimmer/tests/integration/helpers/custom-helper-test.js +++ b/packages/ember-glimmer/tests/integration/helpers/custom-helper-test.js @@ -417,9 +417,9 @@ moduleFor('Helpers test: custom helpers', class extends RenderingTest { ['@test simple helper not usable within element']() { this.registerHelper('some-helper', () => {}); - expectAssertion(() => { + this.assert.throws(() => { this.render(`
`); - }, /Helpers may not be used in the element form/); + }, /Compile Error some-helper is not a modifier: Helpers may not be used in the element form/); } ['@test class-based helper not usable within element']() { @@ -428,9 +428,9 @@ moduleFor('Helpers test: custom helpers', class extends RenderingTest { } }); - expectAssertion(() => { + this.assert.throws(() => { this.render(``); - }, /Helpers may not be used in the element form/); + }, /Compile Error some-helper is not a modifier: Helpers may not be used in the element form/); } ['@test class-based helper is torn down']() { diff --git a/packages/ember-glimmer/tests/integration/helpers/debugger-test.js b/packages/ember-glimmer/tests/integration/helpers/debugger-test.js index ac9f406c157..b37806d4757 100644 --- a/packages/ember-glimmer/tests/integration/helpers/debugger-test.js +++ b/packages/ember-glimmer/tests/integration/helpers/debugger-test.js @@ -3,7 +3,7 @@ import { Component } from '../../utils/helpers'; import { setDebuggerCallback, resetDebuggerCallback -} from '../../../helpers/debugger'; +} from '@glimmer/runtime'; import { set } from 'ember-metal'; import { A as emberA } from 'ember-runtime'; @@ -150,7 +150,7 @@ moduleFor('Helpers test: {{debugger}}', class extends RenderingTest { this.zomg = 'zomg'; } }), - template: `{{debugger not.here}}foo-bar` + template: `{{debugger}}foo-bar` }); this.expectDebuggerCallback( diff --git a/packages/ember-glimmer/tests/unit/layout-cache-test.js b/packages/ember-glimmer/tests/unit/layout-cache-test.js index 9035893faba..d069de8dc70 100644 --- a/packages/ember-glimmer/tests/unit/layout-cache-test.js +++ b/packages/ember-glimmer/tests/unit/layout-cache-test.js @@ -1,6 +1,6 @@ import { EmptyObject } from 'ember-utils'; import { RenderingTest, moduleFor } from '../utils/test-case'; -import { CompiledBlock } from 'glimmer-runtime'; +import { CompiledBlock } from '@glimmer/runtime'; import { OWNER } from 'ember-utils'; class Counter { diff --git a/packages/ember-metal/lib/tags.js b/packages/ember-metal/lib/tags.js index d12eaad972d..0a12fbdbef6 100644 --- a/packages/ember-metal/lib/tags.js +++ b/packages/ember-metal/lib/tags.js @@ -1,4 +1,4 @@ -import { CONSTANT_TAG, DirtyableTag } from 'glimmer-reference'; +import { CONSTANT_TAG, DirtyableTag } from '@glimmer/reference'; import { meta as metaFor } from './meta'; import require from 'require'; import { isProxy } from './is_proxy'; diff --git a/packages/ember-runtime/lib/mixins/-proxy.js b/packages/ember-runtime/lib/mixins/-proxy.js index b1d466c74a9..d178c230c53 100644 --- a/packages/ember-runtime/lib/mixins/-proxy.js +++ b/packages/ember-runtime/lib/mixins/-proxy.js @@ -3,7 +3,7 @@ @submodule ember-runtime */ -import { CachedTag, DirtyableTag, UpdatableTag } from 'glimmer-reference'; +import { CachedTag, DirtyableTag, UpdatableTag } from '@glimmer/reference'; import { assert, deprecate, diff --git a/packages/ember-template-compiler/lib/system/precompile.js b/packages/ember-template-compiler/lib/system/precompile.js index f4b4729d726..a8a24a8d73f 100644 --- a/packages/ember-template-compiler/lib/system/precompile.js +++ b/packages/ember-template-compiler/lib/system/precompile.js @@ -19,8 +19,8 @@ let glimmerPrecompile; @param {String} templateString This is the string to be compiled by HTMLBars. */ export default function precompile(templateString, options) { - if (!glimmerPrecompile && has('glimmer-compiler')) { - glimmerPrecompile = require('glimmer-compiler').precompile; + if (!glimmerPrecompile && has('@glimmer/compiler')) { + glimmerPrecompile = require('@glimmer/compiler').precompile; } if (!glimmerPrecompile) { diff --git a/yarn.lock b/yarn.lock index 21317541364..65fb7718672 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,11 +2,98 @@ # yarn lockfile v1 -"JSV@>= 4.0.x": - version "4.0.2" - resolved "https://registry.yarnpkg.com/JSV/-/JSV-4.0.2.tgz#d077f6825571f82132f9dffaed587b4029feff57" +"@glimmer/compiler@^0.21.1": + version "0.21.1" + resolved "https://registry.yarnpkg.com/@glimmer/compiler/-/compiler-0.21.1.tgz#0f248c0a39928a0940dbce1129c4e3352534096b" + dependencies: + "@glimmer/syntax" "^0.21.1" + "@glimmer/util" "^0.21.0" + "@glimmer/wire-format" "^0.21.0" + simple-html-tokenizer "^0.3.0" + +"@glimmer/interfaces@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@glimmer/interfaces/-/interfaces-0.21.0.tgz#386b2c5bbe5bf6f54eda014937adf2e3927571bf" + dependencies: + "@glimmer/wire-format" "^0.21.0" + +"@glimmer/node@^0.21.1": + version "0.21.1" + resolved "https://registry.yarnpkg.com/@glimmer/node/-/node-0.21.1.tgz#31690f141542ffca685fad497aaee49c44687763" + dependencies: + "@glimmer/runtime" "^0.21.1" + simple-dom "^0.3.0" + +"@glimmer/object-model@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@glimmer/object-model/-/object-model-0.21.0.tgz#dba8779bbf7c57179b46e999ec6441d72b013a6a" + dependencies: + "@glimmer/reference" "^0.21.0" + "@glimmer/util" "^0.21.0" + +"@glimmer/object-reference@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@glimmer/object-reference/-/object-reference-0.21.0.tgz#3feac2c4d700034bb27034a9e973a6113f0c7cfe" + dependencies: + "@glimmer/reference" "^0.21.0" + "@glimmer/util" "^0.21.0" + +"@glimmer/object@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@glimmer/object/-/object-0.21.0.tgz#2ac659c0611fdd22da60b13e0a8c34665ab9b352" + dependencies: + "@glimmer/object-reference" "^0.21.0" + "@glimmer/util" "^0.21.0" + +"@glimmer/reference@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@glimmer/reference/-/reference-0.21.0.tgz#8719a7a942654a33db7e6b1556fc06fac39e98c8" + dependencies: + "@glimmer/util" "^0.21.0" -abbrev@1, abbrev@1.0.x, abbrev@~1.0.9: +"@glimmer/runtime@^0.21.1": + version "0.21.1" + resolved "https://registry.yarnpkg.com/@glimmer/runtime/-/runtime-0.21.1.tgz#ae7207a9930ce0c26203dbc626d53c2fe78f8204" + dependencies: + "@glimmer/interfaces" "^0.21.0" + "@glimmer/object" "^0.21.0" + "@glimmer/object-reference" "^0.21.0" + "@glimmer/reference" "^0.21.0" + "@glimmer/util" "^0.21.0" + "@glimmer/wire-format" "^0.21.0" + +"@glimmer/syntax@^0.21.1": + version "0.21.1" + resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.21.1.tgz#020c7b5816bbdc0004c663fe3c51856e6d86ed62" + dependencies: + handlebars "^3.0.3" + simple-html-tokenizer "^0.3.0" + +"@glimmer/test-helpers@^0.21.1": + version "0.21.1" + resolved "https://registry.yarnpkg.com/@glimmer/test-helpers/-/test-helpers-0.21.1.tgz#c113e542a6205fd54c6c736c6e50475ea1e1947a" + dependencies: + "@glimmer/compiler" "^0.21.1" + "@glimmer/interfaces" "^0.21.0" + "@glimmer/object" "^0.21.0" + "@glimmer/object-model" "^0.21.0" + "@glimmer/object-reference" "^0.21.0" + "@glimmer/reference" "^0.21.0" + "@glimmer/runtime" "^0.21.1" + "@glimmer/util" "^0.21.0" + "@glimmer/wire-format" "^0.21.0" + +"@glimmer/util@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.21.0.tgz#86c1e972e2f777f5af664b59c5bc037b71e9ef00" + +"@glimmer/wire-format@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@glimmer/wire-format/-/wire-format-0.21.0.tgz#ec97adafaf6d1bbd4d1fcf0cbd0a9df2784a22d5" + dependencies: + "@glimmer/util" "^0.21.0" + +abbrev@1, abbrev@~1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" @@ -109,10 +196,6 @@ ansi-styles@^2.0.1, ansi-styles@^2.1.0, ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" -ansi-styles@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178" - ansicolors@~0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.2.1.tgz#be089599097b74a5c9c4a84a0cdbcdb62bd87aef" @@ -171,16 +254,12 @@ are-we-there-yet@~1.1.2: delegates "^1.0.0" readable-stream "^2.0.0 || ^1.1.13" -argparse@^1.0.2, argparse@^1.0.7, argparse@~1.0.2: +argparse@^1.0.7, argparse@~1.0.2: version "1.0.9" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" dependencies: sprintf-js "~1.0.2" -argsparser@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/argsparser/-/argsparser-0.0.6.tgz#ff45eb5b92c004225cf146a51d339dccb265be63" - arr-diff@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" @@ -288,10 +367,6 @@ async-disk-cache@^1.0.0: rimraf "^2.5.3" rsvp "^3.0.18" -async@0.2.x, async@~0.2.6, async@~0.2.9: - version "0.2.10" - resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" - async@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/async/-/async-2.0.1.tgz#b709cc0280a9c36f09f4536be823c838a9049e25" @@ -308,6 +383,10 @@ async@^2.0.0, async@^2.0.1, async@^2.1.2: dependencies: lodash "^4.14.0" +async@~0.2.6, async@~0.2.9: + version "0.2.10" + resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" + async@~0.9.0: version "0.9.2" resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" @@ -344,7 +423,7 @@ babel-code-frame@^6.16.0: esutils "^2.0.2" js-tokens "^2.0.0" -babel-core@^5.0.0, babel-core@~5.8.3: +babel-core@^5.0.0: version "5.8.38" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-5.8.38.tgz#1fcaee79d7e61b750b00b8e54f6dfc9d0af86558" dependencies: @@ -395,13 +474,6 @@ babel-core@^5.0.0, babel-core@~5.8.3: trim-right "^1.0.0" try-resolve "^1.0.0" -babel-jscs@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/babel-jscs/-/babel-jscs-2.0.5.tgz#0a347046b48145acbca56e8c8ed5f736bc54f9d0" - dependencies: - babel-core "~5.8.3" - lodash.assign "^3.2.0" - babel-plugin-constant-folding@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/babel-plugin-constant-folding/-/babel-plugin-constant-folding-1.0.1.tgz#8361d364c98e449c3692bdba51eff0844290aa8e" @@ -687,7 +759,7 @@ broccoli-clean-css@^1.1.0: inline-source-map-comment "^1.0.5" json-stable-stringify "^1.0.0" -broccoli-concat@^2.0.0, broccoli-concat@^2.1.0: +broccoli-concat@^2.0.0: version "2.3.8" resolved "https://registry.yarnpkg.com/broccoli-concat/-/broccoli-concat-2.3.8.tgz#590cdcc021bb905b6c121d87c2d1d57df44a2a48" dependencies: @@ -740,24 +812,11 @@ broccoli-file-creator@^1.0.0: rsvp "~3.0.6" symlink-or-copy "^1.0.1" -broccoli-filter@^0.1.6: - version "0.1.14" - resolved "https://registry.yarnpkg.com/broccoli-filter/-/broccoli-filter-0.1.14.tgz#23cae3891ff9ebb7b4d7db00c6dcf03535daf7ad" - dependencies: - broccoli-kitchen-sink-helpers "^0.2.6" - broccoli-writer "^0.1.1" - mkdirp "^0.3.5" - promise-map-series "^0.2.1" - quick-temp "^0.1.2" - rsvp "^3.0.16" - symlink-or-copy "^1.0.1" - walk-sync "^0.1.3" - broccoli-funnel-reducer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/broccoli-funnel-reducer/-/broccoli-funnel-reducer-1.0.0.tgz#11365b2a785aec9b17972a36df87eef24c5cc0ea" -broccoli-funnel@^1.0.0, broccoli-funnel@^1.0.1, broccoli-funnel@^1.0.2, broccoli-funnel@^1.0.6: +broccoli-funnel@^1.0.0, broccoli-funnel@^1.0.1, broccoli-funnel@^1.0.6: version "1.1.0" resolved "https://registry.yarnpkg.com/broccoli-funnel/-/broccoli-funnel-1.1.0.tgz#dfb91a37c902456456de4a40a1881948d65b27d9" dependencies: @@ -776,31 +835,6 @@ broccoli-funnel@^1.0.0, broccoli-funnel@^1.0.1, broccoli-funnel@^1.0.2, broccoli symlink-or-copy "^1.0.0" walk-sync "^0.3.1" -broccoli-jscs@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/broccoli-jscs/-/broccoli-jscs-1.4.1.tgz#075bfff902274db8b5ea7b4514b5b78973a76909" - dependencies: - broccoli-funnel "^1.0.1" - broccoli-merge-trees "^1.1.1" - broccoli-persistent-filter "^1.0.0" - ember-cli-version-checker "^1.0.2" - findup-sync "^0.4.0" - js-string-escape "^1.0.0" - jscs "^2.0.0" - json-stable-stringify "^1.0.0" - minimatch "^3.0.0" - -broccoli-jshint@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/broccoli-jshint/-/broccoli-jshint-1.2.0.tgz#8cd565d11a04bfd32cb8f85a0f7ede1e5be7a6a2" - dependencies: - broccoli-persistent-filter "^1.2.0" - chalk "~0.4.0" - findup-sync "^0.3.0" - jshint "^2.7.0" - json-stable-stringify "^1.0.0" - mkdirp "~0.4.0" - broccoli-kitchen-sink-helpers@^0.2.5, broccoli-kitchen-sink-helpers@^0.2.6, broccoli-kitchen-sink-helpers@~0.2.0: version "0.2.9" resolved "https://registry.yarnpkg.com/broccoli-kitchen-sink-helpers/-/broccoli-kitchen-sink-helpers-0.2.9.tgz#a5e0986ed8d76fb5984b68c3f0450d3a96e36ecc" @@ -846,7 +880,7 @@ broccoli-middleware@^0.18.1: handlebars "^4.0.4" mime "^1.2.11" -broccoli-persistent-filter@^1.0.0, broccoli-persistent-filter@^1.0.1, broccoli-persistent-filter@^1.0.8, broccoli-persistent-filter@^1.1.5, broccoli-persistent-filter@^1.1.6, broccoli-persistent-filter@^1.2.0: +broccoli-persistent-filter@^1.0.1, broccoli-persistent-filter@^1.0.8, broccoli-persistent-filter@^1.1.5, broccoli-persistent-filter@^1.1.6, broccoli-persistent-filter@^1.2.0: version "1.2.11" resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-1.2.11.tgz#95cc6b0b0eb0dcce5f8e6ae18f6a3cc45a06bf40" dependencies: @@ -932,36 +966,6 @@ broccoli-string-replace@0.1.1, broccoli-string-replace@^0.1.1: broccoli-persistent-filter "^1.1.5" minimatch "^2.0.8" -broccoli-tslinter@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/broccoli-tslinter/-/broccoli-tslinter-1.0.2.tgz#de4b79e556c57543148b724a9e63dad5a3eadf80" - dependencies: - broccoli-persistent-filter "^1.2.0" - chalk "^1.1.1" - exists-sync "0.0.3" - tslint "^3.5.0" - typescript "^1.8.7" - -broccoli-typescript-compiler@^0.6.0: - version "0.6.2" - resolved "https://registry.yarnpkg.com/broccoli-typescript-compiler/-/broccoli-typescript-compiler-0.6.2.tgz#dc26bce755787d2ba0f765da082bb2f6236a3ce7" - dependencies: - broccoli-funnel "^1.0.2" - broccoli-merge-trees "^1.1.1" - broccoli-persistent-filter "^1.0.1" - clone "^0.2.0" - findup "^0.1.5" - get-caller-file "^1.0.1" - json-stable-stringify "^1.0.0" - walk-sync "^0.2.6" - -broccoli-uglify-js@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/broccoli-uglify-js/-/broccoli-uglify-js-0.1.3.tgz#927621ea62cc2e63c2550ed95f4f508e7ab05238" - dependencies: - broccoli-filter "^0.1.6" - uglify-js "~2.4.11" - broccoli-uglify-sourcemap@^1.0.1, broccoli-uglify-sourcemap@^1.4.2: version "1.5.1" resolved "https://registry.yarnpkg.com/broccoli-uglify-sourcemap/-/broccoli-uglify-sourcemap-1.5.1.tgz#9fd2e87f1c177b11a758e73c3a11d6a03d90d086" @@ -976,7 +980,7 @@ broccoli-uglify-sourcemap@^1.0.1, broccoli-uglify-sourcemap@^1.4.2: uglify-js "^2.7.0" walk-sync "^0.1.3" -broccoli-writer@^0.1.1, broccoli-writer@~0.1.1: +broccoli-writer@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/broccoli-writer/-/broccoli-writer-0.1.1.tgz#d4d71aa8f2afbc67a3866b91a2da79084b96ab2d" dependencies: @@ -1129,7 +1133,7 @@ chalk@^0.5.1: strip-ansi "^0.3.0" supports-color "^0.2.0" -chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3, chalk@~1.1.0: +chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: @@ -1139,14 +1143,6 @@ chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3, chalk@~1.1.0: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.4.0.tgz#5199a3ddcd0c1efe23bc08c1b027b06176e0c64f" - dependencies: - ansi-styles "~1.0.0" - has-color "~0.1.0" - strip-ansi "~0.1.0" - charm@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/charm/-/charm-1.0.2.tgz#8add367153a6d9a581331052c4090991da995e35" @@ -1203,7 +1199,7 @@ cli-table2@^0.2.0: optionalDependencies: colors "^1.1.2" -cli-table@^0.3.0, cli-table@^0.3.1, cli-table@~0.3.1: +cli-table@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.1.tgz#f53b05266a8b1a0b934b3d0821e6e2dc5914ae23" dependencies: @@ -1220,13 +1216,6 @@ cli-width@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" -cli@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cli/-/cli-1.0.1.tgz#22817534f24bfa4950c34d532d48ecbc621b8c14" - dependencies: - exit "0.1.2" - glob "^7.1.1" - cliui@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" @@ -1254,10 +1243,6 @@ cmd-shim@~2.0.2: graceful-fs "^4.1.2" mkdirp "~0.5.0" -co@^3.0.6: - version "3.1.0" - resolved "https://registry.yarnpkg.com/co/-/co-3.1.0.tgz#4ea54ea5a08938153185e15210c68d9092bc1b78" - co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -1272,10 +1257,6 @@ code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" -colors@0.6.x, colors@~0.6.0-1: - version "0.6.2" - resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc" - colors@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" @@ -1284,6 +1265,10 @@ colors@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" +colors@~0.6.0-1: + version "0.6.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc" + columnify@~1.5.4: version "1.5.4" resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" @@ -1317,7 +1302,7 @@ commander@2.8.x: dependencies: graceful-readlink ">= 1.0.0" -commander@^2.5.0, commander@^2.6.0, commander@^2.9.0, commander@~2.9.0: +commander@^2.5.0, commander@^2.6.0, commander@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" dependencies: @@ -1327,12 +1312,6 @@ commander@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.1.0.tgz#d121bbae860d9992a3d517ba96f56588e47c6781" -comment-parser@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-0.3.1.tgz#fd657aac8c1492d308c9a6100fc9b49d2435aba1" - dependencies: - readable-stream "^2.0.4" - commoner@~0.10.3: version "0.10.8" resolved "https://registry.yarnpkg.com/commoner/-/commoner-0.10.8.tgz#34fc3672cd24393e8bb47e70caa0293811f4f2c5" @@ -1431,12 +1410,6 @@ connect@^3.3.3: parseurl "~1.3.1" utils-merge "1.0.0" -console-browserify@1.1.x: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - dependencies: - date-now "^0.1.4" - console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" @@ -1530,10 +1503,6 @@ ctype@0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/ctype/-/ctype-0.5.3.tgz#82c18c2461f74114ef16c135224ad0b9144ca12f" -cycle@1.0.x: - version "1.0.3" - resolved "https://registry.yarnpkg.com/cycle/-/cycle-1.0.3.tgz#21e80b2be8580f98b468f379430662b046c34ad2" - d@^0.1.1, d@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/d/-/d-0.1.1.tgz#da184c535d18d8ee7ba2aa229b914009fae11309" @@ -1550,10 +1519,6 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - debug@2, debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0: version "2.5.2" resolved "https://registry.yarnpkg.com/debug/-/debug-2.5.2.tgz#50c295a53dbf1657146e0c1b21307275e90d49cb" @@ -1586,10 +1551,6 @@ deep-eql@^0.1.3: dependencies: type-detect "0.1.1" -deep-equal@*: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -1687,10 +1648,6 @@ diff@1.4.0, diff@^1.3.1: version "1.4.0" resolved "https://registry.yarnpkg.com/diff/-/diff-1.4.0.tgz#7f28d2eb9ee7b15a97efd89ce63dcfdaa3ccbabf" -diff@^2.2.1: - version "2.2.3" - resolved "https://registry.yarnpkg.com/diff/-/diff-2.2.3.tgz#60eafd0d28ee906e4e8ff0a52c1229521033bf99" - doctrine@^1.2.2: version "1.5.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" @@ -1698,34 +1655,6 @@ doctrine@^1.2.2: esutils "^2.0.2" isarray "^1.0.0" -dom-serializer@0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" - dependencies: - domelementtype "~1.1.1" - entities "~1.1.1" - -domelementtype@1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" - -domelementtype@~1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" - -domhandler@2.3: - version "2.3.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.3.0.tgz#2de59a0822d5027fabff6f032c2b25a2a8abe738" - dependencies: - domelementtype "1" - -domutils@1.5: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - dependencies: - dom-serializer "0" - domelementtype "1" - dot-prop@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" @@ -2065,32 +1994,6 @@ emberjs-build@0.19.0: json-stable-stringify "^1.0.1" lodash "^3.10.1" -emberjs-build@^0.15.0: - version "0.15.2" - resolved "https://registry.yarnpkg.com/emberjs-build/-/emberjs-build-0.15.2.tgz#5904f0e439e8aeb9f0ad5d254fe8ad1236a0e040" - dependencies: - amd-name-resolver "0.0.4" - broccoli "0.16.3" - broccoli-babel-transpiler "^5.6.1" - broccoli-concat "^2.0.0" - broccoli-file-creator "^1.0.0" - broccoli-funnel "^1.0.1" - broccoli-jscs "^1.4.1" - broccoli-jshint "^1.1.0" - broccoli-kitchen-sink-helpers "^0.2.6" - broccoli-merge-trees "^1.1.1" - broccoli-persistent-filter "^1.0.8" - broccoli-source "^1.1.0" - broccoli-stew "^1.1.1" - broccoli-string-replace "0.1.1" - broccoli-uglify-sourcemap "^1.0.1" - core-object "0.0.4" - ember-cli-yuidoc " 0.8.4" - git-repo-version "0.3.0" - js-string-escape "^1.0.0" - json-stable-stringify "^1.0.1" - lodash "^3.10.1" - encodeurl@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" @@ -2150,10 +2053,6 @@ ensure-posix-path@^1.0.0, ensure-posix-path@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/ensure-posix-path/-/ensure-posix-path-1.0.2.tgz#a65b3e42d0b71cfc585eb774f9943c8d9b91b0c2" -entities@1.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.0.0.tgz#b2987aa3821347fcde642b24fdfc9e4fb712bf26" - entities@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" @@ -2229,17 +2128,7 @@ escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^ version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" -escodegen@1.2.x: - version "1.2.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.2.0.tgz#09de7967791cc958b7f89a2ddb6d23451af327e1" - dependencies: - esprima "~1.0.4" - estraverse "~1.5.0" - esutils "~1.0.0" - optionalDependencies: - source-map "~0.1.30" - -escope@^3.2.0, escope@^3.6.0: +escope@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" dependencies: @@ -2302,18 +2191,10 @@ esprima-fb@~15001.1001.0-dev-harmony-fb: version "15001.1001.0-dev-harmony-fb" resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-15001.1001.0-dev-harmony-fb.tgz#43beb57ec26e8cf237d3dd8b33e42533577f2659" -esprima@^2.6.0, esprima@~2.7.0: +esprima@^2.6.0: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" -"esprima@git://github.com/ariya/esprima.git#harmony": - version "1.1.0-dev-harmony" - resolved "git://github.com/ariya/esprima.git#a65a3eb93b9a5dce9a1184ca2d1bd0b184c6b8fd" - -esprima@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" - esprima@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.0.0.tgz#53cf247acda77313e551c3aa2e73342d3fb4f7d9" @@ -2329,14 +2210,10 @@ esrecurse@^4.1.0: estraverse "~4.1.0" object-assign "^4.0.1" -estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: +estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" -estraverse@~1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71" - estraverse@~4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.1.1.tgz#f6caca728933a850ef90661d0e17982ba47111a2" @@ -2345,10 +2222,6 @@ esutils@^2.0.0, esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" -esutils@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" - etag@~1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/etag/-/etag-1.7.0.tgz#03d30b5f67dd6e632d2945d30d6652731a34d5d8" @@ -2386,7 +2259,7 @@ exit-hook@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" -exit@0.1.2, exit@0.1.x, exit@^0.1.2, exit@~0.1.2: +exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -2461,10 +2334,6 @@ extsprintf@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" -eyes@0.1.x: - version "0.1.8" - resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0" - fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" @@ -2518,13 +2387,6 @@ filename-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775" -fileset@0.1.x: - version "0.1.8" - resolved "https://registry.yarnpkg.com/fileset/-/fileset-0.1.8.tgz#506b91a9396eaa7e32fb42a84077c7a0c736b741" - dependencies: - glob "3.x" - minimatch "0.x" - filesize@^3.1.3: version "3.3.0" resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.3.0.tgz#53149ea3460e3b2e024962a51648aa572cf98122" @@ -2571,13 +2433,7 @@ findup-sync@^0.2.1: dependencies: glob "~4.3.0" -findup-sync@^0.3.0, findup-sync@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.3.0.tgz#37930aa5d816b777c03445e1966cc6790a4c0b16" - dependencies: - glob "~5.0.0" - -findup-sync@^0.4.0, findup-sync@^0.4.2: +findup-sync@^0.4.2: version "0.4.3" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.4.3.tgz#40043929e7bc60adf0b7f4827c4c6e75a0deca12" dependencies: @@ -2801,7 +2657,7 @@ generate-object-property@^1.1.0: dependencies: is-property "^1.0.0" -get-caller-file@^1.0.0, get-caller-file@^1.0.1: +get-caller-file@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" @@ -2831,12 +2687,6 @@ git-repo-version@0.3.0: dependencies: git-repo-info "^1.0.4" -git-repo-version@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/git-repo-version/-/git-repo-version-0.1.2.tgz#8dd89fc818034a5341e1b0fae12f312c2ac4e505" - dependencies: - git-repo-info "^1.0.4" - git-repo-version@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/git-repo-version/-/git-repo-version-0.3.1.tgz#829a24d5973716dae90e222a148fb5ded9492092" @@ -2849,26 +2699,6 @@ github@^0.2.3: dependencies: mime "^1.2.11" -glimmer-engine@^0.19.4: - version "0.19.4" - resolved "https://registry.yarnpkg.com/glimmer-engine/-/glimmer-engine-0.19.4.tgz#7dc29f30efa4ab4682e8131e0418dcc3ba3dc8e3" - dependencies: - broccoli-concat "^2.1.0" - broccoli-funnel "^1.0.1" - broccoli-merge-trees "^1.1.1" - broccoli-stew "^1.2.0" - broccoli-tslinter "^1.0.2" - broccoli-typescript-compiler "^0.6.0" - broccoli-uglify-js "~0.1.3" - emberjs-build "^0.15.0" - exists-sync "0.0.3" - git-repo-version "^0.1.2" - handlebars "^3.0.2" - qunit "^0.9.1" - simple-dom "^0.3.0" - simple-html-tokenizer "^0.2.5" - typescript "~2.0.9" - glob-base@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" @@ -2882,7 +2712,7 @@ glob-parent@^2.0.0: dependencies: is-glob "^2.0.0" -glob@3.2.11, glob@3.x: +glob@3.2.11: version "3.2.11" resolved "https://registry.yarnpkg.com/glob/-/glob-3.2.11.tgz#4a973f635b9190f715d10987d5c00fd2815ebe3d" dependencies: @@ -2896,7 +2726,7 @@ glob@3.2.8: inherits "2" minimatch "~0.2.11" -glob@7.1.1, glob@^7.0.0, glob@^7.0.3, glob@^7.0.4, glob@^7.0.5, glob@^7.1.1: +glob@7.1.1, glob@^7.0.0, glob@^7.0.3, glob@^7.0.4, glob@^7.0.5: version "7.1.1" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" dependencies: @@ -2907,7 +2737,7 @@ glob@7.1.1, glob@^7.0.0, glob@^7.0.3, glob@^7.0.4, glob@^7.0.5, glob@^7.1.1: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^5.0.1, glob@^5.0.10, glob@^5.0.13, glob@^5.0.15, glob@~5.0.0: +glob@^5.0.10, glob@^5.0.13, glob@^5.0.15: version "5.0.15" resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" dependencies: @@ -3017,15 +2847,7 @@ growly@^1.2.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" -handlebars@1.3.x: - version "1.3.0" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-1.3.0.tgz#9e9b130a93e389491322d975cf3ec1818c37ce34" - dependencies: - optimist "~0.3" - optionalDependencies: - uglify-js "~2.3" - -handlebars@^3.0.1, handlebars@^3.0.2: +handlebars@^3.0.1, handlebars@^3.0.3, handlebars@~3: version "3.0.3" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-3.0.3.tgz#0e09651a2f0fb3c949160583710d551f92e6d2ad" dependencies: @@ -3084,7 +2906,7 @@ has-binary@0.1.7: dependencies: isarray "0.0.1" -has-color@^0.1.7, has-color@~0.1.0: +has-color@^0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f" @@ -3179,16 +3001,6 @@ html-differ@^1.3.4: vow "0.4.3" vow-fs "0.3.1" -htmlparser2@3.8.3, htmlparser2@3.8.x: - version "3.8.3" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.8.3.tgz#996c28b191516a8be86501a7d79757e5c70c1068" - dependencies: - domelementtype "1" - domhandler "2.3" - domutils "1.5" - entities "1.0" - readable-stream "1.1" - http-errors@~1.5.0: version "1.5.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.1.tgz#788c0d2c1de2c81b9e6e8c01843b6b97eb920750" @@ -3228,10 +3040,6 @@ https-proxy-agent@~1.0.0: debug "2" extend "3" -i@0.3.x: - version "0.3.5" - resolved "https://registry.yarnpkg.com/i/-/i-0.3.5.tgz#1d2b854158ec8169113c6cb7f6b6801e99e211d5" - iconv-lite@^0.4.5, iconv-lite@~0.4.13: version "0.4.15" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" @@ -3267,10 +3075,6 @@ inflight@^1.0.4, inflight@~1.0.5: once "^1.3.0" wrappy "1" -inherit@^2.2.2: - version "2.2.6" - resolved "https://registry.yarnpkg.com/inherit/-/inherit-2.2.6.tgz#f1614b06c8544e8128e4229c86347db73ad9788d" - inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" @@ -3482,10 +3286,6 @@ is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - is-windows@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c" @@ -3512,27 +3312,10 @@ isobject@^2.0.0: dependencies: isarray "1.0.0" -isstream@0.1.x, isstream@~0.1.2: +isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" -"istanbul@https://github.com/gotwarlost/istanbul/tarball/harmony": - version "0.2.5" - resolved "https://github.com/gotwarlost/istanbul/tarball/harmony#02dabfd3743b695942d170a809171d3924466331" - dependencies: - abbrev "1.0.x" - async "0.2.x" - escodegen "1.2.x" - esprima "git://github.com/ariya/esprima.git#harmony" - fileset "0.1.x" - handlebars "1.3.x" - js-yaml "3.x" - mkdirp "0.3.x" - nopt "2.2.x" - resolve "0.6.x" - which "1.0.x" - wordwrap "0.0.x" - istextorbinary@2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-2.1.0.tgz#dbed2a6f51be2f7475b68f89465811141b758874" @@ -3574,92 +3357,21 @@ js-tokens@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-2.0.0.tgz#79903f5563ee778cc1162e6dcf1a0027c97f9cb5" -js-yaml@3.x, js-yaml@^3.2.5, js-yaml@^3.2.7, js-yaml@^3.5.1, js-yaml@^3.6.1: +js-yaml@^3.2.5, js-yaml@^3.2.7, js-yaml@^3.5.1, js-yaml@^3.6.1: version "3.7.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" dependencies: argparse "^1.0.7" esprima "^2.6.0" -js-yaml@~3.4.0: - version "3.4.6" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.4.6.tgz#6be1b23f6249f53d293370fd4d1aaa63ce1b4eb0" - dependencies: - argparse "^1.0.2" - esprima "^2.6.0" - inherit "^2.2.2" - jsbn@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.0.tgz#650987da0dd74f4ebf5a11377a2aa2d273e97dfd" -jscs-jsdoc@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/jscs-jsdoc/-/jscs-jsdoc-1.3.2.tgz#1f2c82b6ab4b97524da958f46b4e562e0305f9a7" - dependencies: - comment-parser "^0.3.1" - jsdoctypeparser "~1.2.0" - -jscs-preset-wikimedia@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/jscs-preset-wikimedia/-/jscs-preset-wikimedia-1.0.0.tgz#fff563342038fc2e8826b7bb7309c3ae3406fc7e" - -jscs@^2.0.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/jscs/-/jscs-2.11.0.tgz#6e11ef0caaa07731f9dcc2b2b27d8ecee1ddbcb6" - dependencies: - babel-jscs "^2.0.0" - chalk "~1.1.0" - cli-table "~0.3.1" - commander "~2.9.0" - escope "^3.2.0" - esprima "~2.7.0" - estraverse "^4.1.0" - exit "~0.1.2" - glob "^5.0.1" - htmlparser2 "3.8.3" - js-yaml "~3.4.0" - jscs-jsdoc "^1.3.1" - jscs-preset-wikimedia "~1.0.0" - jsonlint "~1.6.2" - lodash "~3.10.0" - minimatch "~3.0.0" - natural-compare "~1.2.2" - pathval "~0.1.1" - prompt "~0.2.14" - reserved-words "^0.1.1" - resolve "^1.1.6" - strip-bom "^2.0.0" - strip-json-comments "~1.0.2" - to-double-quotes "^2.0.0" - to-single-quotes "^2.0.0" - vow "~0.4.8" - vow-fs "~0.3.4" - xmlbuilder "^3.1.0" - -jsdoctypeparser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/jsdoctypeparser/-/jsdoctypeparser-1.2.0.tgz#e7dedc153a11849ffc5141144ae86a7ef0c25392" - dependencies: - lodash "^3.7.0" - jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" -jshint@^2.7.0: - version "2.9.4" - resolved "https://registry.yarnpkg.com/jshint/-/jshint-2.9.4.tgz#5e3ba97848d5290273db514aee47fe24cf592934" - dependencies: - cli "~1.0.0" - console-browserify "1.1.x" - exit "0.1.x" - htmlparser2 "3.8.x" - lodash "3.7.x" - minimatch "~3.0.2" - shelljs "0.3.x" - strip-json-comments "1.0.x" - json-parse-helpfulerror@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz#13f14ce02eed4e981297b64eb9e3b932e2dd13dc" @@ -3698,13 +3410,6 @@ jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" -jsonlint@~1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/jsonlint/-/jsonlint-1.6.2.tgz#5737045085f55eb455c68b1ff4ebc01bd50e8830" - dependencies: - JSV ">= 4.0.x" - nomnom ">= 1.5.x" - jsonpointer@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" @@ -4015,15 +3720,11 @@ lodash@2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-2.4.1.tgz#5b7723034dda4d262e5a46fb2c58d7cc22f71420" -lodash@3.7.x: - version "3.7.0" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.7.0.tgz#3678bd8ab995057c07ade836ed2ef087da811d45" - lodash@4.16.2: version "4.16.2" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.16.2.tgz#3e626db827048a699281a8a125226326cfc0e652" -lodash@^3.10.0, lodash@^3.10.1, lodash@^3.5.0, lodash@^3.7.0, lodash@^3.9.3, lodash@~3.10.0: +lodash@^3.10.0, lodash@^3.10.1, lodash@^3.9.3: version "3.10.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" @@ -4190,14 +3891,14 @@ mime@~1.2.11: version "1.2.11" resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10" -minimatch@0.3, minimatch@0.x: +minimatch@0.3: version "0.3.0" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.3.0.tgz#275d8edaac4f1bb3326472089e7949c8394699dd" dependencies: lru-cache "2" sigmund "~1.0.0" -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@~3.0.0, minimatch@~3.0.2: +"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" dependencies: @@ -4235,21 +3936,15 @@ mkdirp@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e" -mkdirp@0.3.x, mkdirp@^0.3.5, mkdirp@~0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.5.tgz#de3e5f8961c88c787ee1368df849ac4413eca8d7" - -mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@0.x.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: +mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: minimist "0.0.8" -mkdirp@~0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.4.2.tgz#427c8c18ece398b932f6f666f4e1e5b7740e78c8" - dependencies: - minimist "0.0.8" +mkdirp@~0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.5.tgz#de3e5f8961c88c787ee1368df849ac4413eca8d7" mktemp@~0.4.0: version "0.4.0" @@ -4312,14 +4007,6 @@ natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" -natural-compare@~1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.2.2.tgz#1f96d60e3141cac1b6d05653ce0daeac763af6aa" - -ncp@0.4.x: - version "0.4.2" - resolved "https://registry.yarnpkg.com/ncp/-/ncp-0.4.2.tgz#abcc6cbd3ec2ed2a729ff6e7c1fa8f01784a8574" - negotiator@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" @@ -4384,25 +4071,12 @@ node-uuid@^1.4.3, node-uuid@~1.4.0, node-uuid@~1.4.7: version "1.4.7" resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.7.tgz#6da5a17668c4b3dd59623bda11cf7fa4c1f60a6f" -"nomnom@>= 1.5.x": - version "1.8.1" - resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.8.1.tgz#2151f722472ba79e50a76fc125bb8c8f2e4dc2a7" - dependencies: - chalk "~0.4.0" - underscore "~1.6.0" - "nopt@2 || 3", nopt@^3.0.1, nopt@~3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" dependencies: abbrev "1" -nopt@2.2.x: - version "2.2.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-2.2.1.tgz#2aa09b7d1768487b3b89a9c5aa52335bff0baea7" - dependencies: - abbrev "1" - normalize-git-url@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/normalize-git-url/-/normalize-git-url-3.0.2.tgz#8e5f14be0bdaedb73e07200310aa416c27350fc4" @@ -4608,14 +4282,14 @@ opener@~1.4.1: version "1.4.2" resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.2.tgz#b32582080042af8680c389a499175b4c54fff523" -optimist@^0.6.1, optimist@~0.6.0: +optimist@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" dependencies: minimist "~0.0.1" wordwrap "~0.0.2" -optimist@~0.3, optimist@~0.3.5: +optimist@~0.3.5: version "0.3.7" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz#c90941ad59e4273328923074d2cf2e7cbc6ec0d9" dependencies: @@ -4749,10 +4423,6 @@ path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" -pathval@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-0.1.1.tgz#08f911cdca9cce5942880da7817bc0b723b66d82" - pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -4767,14 +4437,6 @@ pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" -pkginfo@0.3.x: - version "0.3.1" - resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.3.1.tgz#5b29f6a81f70717142e09e765bbeab97b4f81e21" - -pkginfo@0.x.x: - version "0.4.0" - resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.0.tgz#349dbb7ffd38081fcadc0853df687f0c7744cd65" - pluralize@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45" @@ -4823,16 +4485,6 @@ promise-map-series@^0.2.1: dependencies: rsvp "^3.0.14" -prompt@~0.2.14: - version "0.2.14" - resolved "https://registry.yarnpkg.com/prompt/-/prompt-0.2.14.tgz#57754f64f543fd7b0845707c818ece618f05ffdc" - dependencies: - pkginfo "0.x.x" - read "1.0.x" - revalidator "0.1.x" - utile "0.2.x" - winston "0.8.x" - promzard@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" @@ -4890,23 +4542,6 @@ qunit-phantomjs-runner@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/qunit-phantomjs-runner/-/qunit-phantomjs-runner-2.2.0.tgz#557a0f55d7d83c315312d1b7048ed972ffea4549" -qunit@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/qunit/-/qunit-0.9.1.tgz#a985244d140fa5715c1b88b42dc4ebed8519a265" - dependencies: - argsparser "^0.0.6" - cli-table "^0.3.0" - co "^3.0.6" - qunitjs "1.10.0" - tracejs "^0.1.8" - underscore "^1.6.0" - optionalDependencies: - istanbul "https://github.com/gotwarlost/istanbul/tarball/harmony" - -qunitjs@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/qunitjs/-/qunitjs-1.10.0.tgz#a01918dad03476557254f40bc02a2fc66d76af78" - qunitjs@^1.22.0: version "1.23.1" resolved "https://registry.yarnpkg.com/qunitjs/-/qunitjs-1.23.1.tgz#1971cf97ac9be01a64d2315508d2e48e6fd4e719" @@ -4968,7 +4603,7 @@ read-package-tree@~5.1.5: read-package-json "^2.0.0" readdir-scoped-modules "^1.0.0" -read@1, read@1.0.x, read@~1.0.1, read@~1.0.7: +read@1, read@~1.0.1, read@~1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" dependencies: @@ -4986,16 +4621,7 @@ read@1, read@1.0.x, read@~1.0.1, read@~1.0.7: string_decoder "~0.10.x" util-deprecate "~1.0.1" -readable-stream@1.1: - version "1.1.13" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@^2.0.0, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.2.2: +readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e" dependencies: @@ -5225,10 +4851,6 @@ requires-port@1.x.x: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" -reserved-words@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/reserved-words/-/reserved-words-0.1.1.tgz#6f7c15e5e5614c50da961630da46addc87c0cef2" - resolve-dir@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e" @@ -5240,10 +4862,6 @@ resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" -resolve@0.6.x: - version "0.6.3" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.6.3.tgz#dd957982e7e736debdf53b58a4dd91754575dd46" - resolve@^1.1.2, resolve@^1.1.6, resolve@^1.1.7: version "1.2.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.2.0.tgz#9589c3f2f6149d1417a40becc1663db6ec6bc26c" @@ -5259,17 +4877,13 @@ retry@^0.10.0, retry@~0.10.0: version "0.10.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" -revalidator@0.1.x: - version "0.1.8" - resolved "https://registry.yarnpkg.com/revalidator/-/revalidator-0.1.8.tgz#fece61bfa0c1b52a206bd6b18198184bdd523a3b" - right-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" dependencies: align-text "^0.1.1" -rimraf@2, rimraf@2.x.x, rimraf@^2.2.8, rimraf@^2.3.2, rimraf@^2.3.4, rimraf@^2.4.1, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@^2.5.2, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@~2.5.4: +rimraf@2, rimraf@^2.2.8, rimraf@^2.3.2, rimraf@^2.3.4, rimraf@^2.4.1, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@^2.5.2, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@~2.5.4: version "2.5.4" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04" dependencies: @@ -5435,10 +5049,6 @@ shebang-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" -shelljs@0.3.x: - version "0.3.0" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.3.0.tgz#3596e6307a781544f591f37da618360f31db57b1" - shelljs@^0.7.5: version "0.7.5" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.5.tgz#2eef7a50a21e1ccf37da00df767ec69e30ad0675" @@ -5473,9 +5083,9 @@ simple-fmt@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/simple-fmt/-/simple-fmt-0.1.0.tgz#191bf566a59e6530482cb25ab53b4a8dc85c3a6b" -simple-html-tokenizer@^0.2.5: - version "0.2.6" - resolved "https://registry.yarnpkg.com/simple-html-tokenizer/-/simple-html-tokenizer-0.2.6.tgz#a6efab7bc705cf3a96f1aaeaa1a76365f0d16c33" +simple-html-tokenizer@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/simple-html-tokenizer/-/simple-html-tokenizer-0.3.0.tgz#9b8b5559d80e331a544dd13dd59382e5d0d94411" simple-is@~0.2.0: version "0.2.0" @@ -5585,19 +5195,13 @@ source-map@0.1.32: dependencies: amdefine ">=0.0.4" -source-map@0.1.34: - version "0.1.34" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.34.tgz#a7cfe89aec7b1682c3b198d0acfb47d7d090566b" - dependencies: - amdefine ">=0.0.4" - source-map@0.4.x, source-map@^0.4.2, source-map@^0.4.4: version "0.4.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" dependencies: amdefine ">=0.0.4" -source-map@^0.1.40, source-map@~0.1.30, source-map@~0.1.7: +source-map@^0.1.40, source-map@~0.1.7: version "0.1.43" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" dependencies: @@ -5655,10 +5259,6 @@ stable@~0.1.3: version "0.1.5" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.5.tgz#08232f60c732e9890784b5bed0734f8b32a887b9" -stack-trace@0.0.x: - version "0.0.9" - resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.9.tgz#a8f6eaeca90674c333e7c43953f275b451510695" - "statuses@>= 1.3.1 < 2", statuses@~1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" @@ -5720,21 +5320,11 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1, strip-ansi@~3.0.1: dependencies: ansi-regex "^2.0.0" -strip-ansi@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991" - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - dependencies: - is-utf8 "^0.2.0" - strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" -strip-json-comments@1.0.x, strip-json-comments@~1.0.1, strip-json-comments@~1.0.2: +strip-json-comments@~1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" @@ -5896,10 +5486,6 @@ to-array@0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890" -to-double-quotes@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-double-quotes/-/to-double-quotes-2.0.0.tgz#aaf231d6fa948949f819301bbab4484d8588e4a7" - to-fast-properties@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" @@ -5908,20 +5494,12 @@ to-iso-string@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/to-iso-string/-/to-iso-string-0.0.2.tgz#4dc19e664dfccbe25bd8db508b00c6da158255d1" -to-single-quotes@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/to-single-quotes/-/to-single-quotes-2.0.1.tgz#7cc29151f0f5f2c41946f119f5932fe554170125" - tough-cookie@>=0.12.0, tough-cookie@~2.3.0: version "2.3.2" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" dependencies: punycode "^1.4.1" -tracejs@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/tracejs/-/tracejs-0.1.8.tgz#6c26787b1853f1371634622c1c80bc44026c5d70" - tree-sync@^1.1.4: version "1.2.1" resolved "https://registry.yarnpkg.com/tree-sync/-/tree-sync-1.2.1.tgz#35619b7c310f5dfb4091601c013e8a72da67937a" @@ -5948,18 +5526,6 @@ tryor@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/tryor/-/tryor-0.1.2.tgz#8145e4ca7caff40acde3ccf946e8b8bb75b4172b" -tslint@^3.5.0: - version "3.15.1" - resolved "https://registry.yarnpkg.com/tslint/-/tslint-3.15.1.tgz#da165ca93d8fdc2c086b51165ee1bacb48c98ea5" - dependencies: - colors "^1.1.2" - diff "^2.2.1" - findup-sync "~0.3.0" - glob "^7.0.3" - optimist "~0.6.0" - resolve "^1.1.7" - underscore.string "^3.3.4" - tunnel-agent@~0.4.0, tunnel-agent@~0.4.1: version "0.4.3" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" @@ -5993,14 +5559,6 @@ typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" -typescript@^1.8.7: - version "1.8.10" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-1.8.10.tgz#b475d6e0dff0bf50f296e5ca6ef9fbb5c7320f1e" - -typescript@~2.0.9: - version "2.0.10" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.0.10.tgz#ccdd4ed86fd5550a407101a0814012e1b3fac3dd" - uc.micro@^1.0.0, uc.micro@^1.0.1, uc.micro@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.3.tgz#7ed50d5e0f9a9fb0a573379259f2a77458d50192" @@ -6022,15 +5580,6 @@ uglify-js@~2.3: optimist "~0.3.5" source-map "~0.1.7" -uglify-js@~2.4.11: - version "2.4.24" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.4.24.tgz#fad5755c1e1577658bb06ff9ab6e548c95bebd6e" - dependencies: - async "~0.2.6" - source-map "0.1.34" - uglify-to-browserify "~1.0.0" - yargs "~3.5.4" - uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" @@ -6047,7 +5596,7 @@ umask@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" -underscore.string@3.3.4, underscore.string@^3.3.4: +underscore.string@3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-3.3.4.tgz#2c2a3f9f83e64762fdc45e6ceac65142864213db" dependencies: @@ -6058,14 +5607,10 @@ underscore.string@~2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-2.3.3.tgz#71c08bf6b428b1133f37e78fa3a21c82f7329b0d" -underscore@>=1.8.3, underscore@^1.6.0: +underscore@>=1.8.3: version "1.8.3" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz#4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022" -underscore@~1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.6.0.tgz#8b38b10cacdef63337b8b24e4ff86d45aea529a8" - unique-filename@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" @@ -6106,22 +5651,11 @@ util-extend@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/util-extend/-/util-extend-1.0.3.tgz#a7c216d267545169637b3b6edc6ca9119e2ff93f" -utile@0.2.x: - version "0.2.1" - resolved "https://registry.yarnpkg.com/utile/-/utile-0.2.1.tgz#930c88e99098d6220834c356cbd9a770522d90d7" - dependencies: - async "~0.2.9" - deep-equal "*" - i "0.3.x" - mkdirp "0.x.x" - ncp "0.4.x" - rimraf "2.x.x" - utils-merge@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" -uuid@^2.0.1, uuid@^2.0.2: +uuid@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" @@ -6160,38 +5694,19 @@ vow-fs@0.3.1: node-uuid "1.4.0" vow-queue "0.1.0" -vow-fs@~0.3.4: - version "0.3.6" - resolved "https://registry.yarnpkg.com/vow-fs/-/vow-fs-0.3.6.tgz#2d4c59be22e2bf2618ddf597ab4baa923be7200d" - dependencies: - glob "^7.0.5" - uuid "^2.0.2" - vow "^0.4.7" - vow-queue "^0.4.1" - vow-queue@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/vow-queue/-/vow-queue-0.1.0.tgz#a9b561477c7ea5d563b0caaa52e40e668de0c238" -vow-queue@^0.4.1: - version "0.4.2" - resolved "https://registry.yarnpkg.com/vow-queue/-/vow-queue-0.4.2.tgz#e7fe17160e15c7c4184d1b666a9bc64e18e30184" - dependencies: - vow "~0.4.0" - vow@0.4.3: version "0.4.3" resolved "https://registry.yarnpkg.com/vow/-/vow-0.4.3.tgz#d5c394d4f1e844c988100b57b540956c4a005ba6" -vow@^0.4.7, vow@~0.4.0, vow@~0.4.8: - version "0.4.13" - resolved "https://registry.yarnpkg.com/vow/-/vow-0.4.13.tgz#e7c14f1bd9c8be0e7359a4597fe2d1ef6d1a7e88" - walk-sync@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-0.1.3.tgz#8a07261a00bda6cfb1be25e9f100fad57546f583" -walk-sync@^0.2.0, walk-sync@^0.2.5, walk-sync@^0.2.6, walk-sync@^0.2.7: +walk-sync@^0.2.0, walk-sync@^0.2.5, walk-sync@^0.2.7: version "0.2.7" resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-0.2.7.tgz#b49be4ee6867657aeb736978b56a29d10fa39969" dependencies: @@ -6249,10 +5764,6 @@ which@1, which@^1.0.5, which@^1.2.12, which@^1.2.9, which@~1.2.11: dependencies: isexe "^1.1.1" -which@1.0.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/which/-/which-1.0.9.tgz#460c1da0f810103d0321a9b633af9e575e64486f" - wide-align@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.0.tgz#40edde802a71fea1f070da3e62dcda2e7add96ad" @@ -6267,19 +5778,7 @@ window-size@^0.1.2: version "0.1.4" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" -winston@0.8.x: - version "0.8.3" - resolved "https://registry.yarnpkg.com/winston/-/winston-0.8.3.tgz#64b6abf4cd01adcaefd5009393b1d8e8bec19db0" - dependencies: - async "0.2.x" - colors "0.6.x" - cycle "1.0.x" - eyes "0.1.x" - isstream "0.1.x" - pkginfo "0.3.x" - stack-trace "0.0.x" - -wordwrap@0.0.2, wordwrap@0.0.x, wordwrap@~0.0.2: +wordwrap@0.0.2, wordwrap@~0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" @@ -6335,12 +5834,6 @@ xmlbuilder@2.6.2, xmlbuilder@>=2.4.6: dependencies: lodash "~3.5.0" -xmlbuilder@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-3.1.0.tgz#2c86888f2d4eade850fa38ca7f7223f7209516e1" - dependencies: - lodash "^3.5.0" - xmldom@^0.1.19: version "0.1.27" resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9" @@ -6388,15 +5881,6 @@ yargs@~3.27.0: window-size "^0.1.2" y18n "^3.2.0" -yargs@~3.5.4: - version "3.5.4" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.5.4.tgz#d8aff8f665e94c34bd259bdebd1bfaf0ddd35361" - dependencies: - camelcase "^1.0.2" - decamelize "^1.0.0" - window-size "0.1.0" - wordwrap "0.0.2" - yeast@0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419"