ember-source 2.3.0.beta.1 → 2.3.0.beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/dist/ember-runtime.js +112 -42
- data/dist/ember-template-compiler.js +35 -52
- data/dist/ember-testing.js +2 -7
- data/dist/ember.debug.js +257 -178
- data/dist/ember.js +257 -178
- data/dist/ember.min.js +15 -15
- data/dist/ember.prod.js +258 -117
- metadata +2 -2
data/dist/ember.js
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
* Portions Copyright 2008-2011 Apple Inc. All rights reserved.
|
7
7
|
* @license Licensed under MIT license
|
8
8
|
* See https://raw.github.com/emberjs/ember.js/master/LICENSE
|
9
|
-
* @version 2.3.0-beta.
|
9
|
+
* @version 2.3.0-beta.3
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, requirejs, Ember;
|
@@ -1189,9 +1189,11 @@ enifed('backburner', ['exports', 'backburner/utils', 'backburner/platform', 'bac
|
|
1189
1189
|
clearTimeout(item[2]);
|
1190
1190
|
}
|
1191
1191
|
});
|
1192
|
-
enifed('container/container', ['exports', 'ember-metal/core', 'ember-metal/debug', 'ember-metal/dictionary', 'ember-metal/features', 'container/owner', 'ember-runtime/mixins/container_proxy'], function (exports, _emberMetalCore, _emberMetalDebug, _emberMetalDictionary, _emberMetalFeatures, _containerOwner, _emberRuntimeMixinsContainer_proxy) {
|
1192
|
+
enifed('container/container', ['exports', 'ember-metal/core', 'ember-metal/debug', 'ember-metal/dictionary', 'ember-metal/features', 'container/owner', 'ember-runtime/mixins/container_proxy', 'ember-metal/symbol'], function (exports, _emberMetalCore, _emberMetalDebug, _emberMetalDictionary, _emberMetalFeatures, _containerOwner, _emberRuntimeMixinsContainer_proxy, _emberMetalSymbol) {
|
1193
1193
|
'use strict';
|
1194
1194
|
|
1195
|
+
var CONTAINER_OVERRIDE = _emberMetalSymbol.default('CONTAINER_OVERRIDE');
|
1196
|
+
|
1195
1197
|
/**
|
1196
1198
|
A container used to instantiate and cache objects.
|
1197
1199
|
|
@@ -1213,6 +1215,7 @@ enifed('container/container', ['exports', 'ember-metal/core', 'ember-metal/debug
|
|
1213
1215
|
this.validationCache = _emberMetalDictionary.default(options && options.validationCache ? options.validationCache : null);
|
1214
1216
|
|
1215
1217
|
this._fakeContainerToInject = _emberRuntimeMixinsContainer_proxy.buildFakeContainerWithDeprecations(this);
|
1218
|
+
this[CONTAINER_OVERRIDE] = undefined;
|
1216
1219
|
}
|
1217
1220
|
|
1218
1221
|
Container.prototype = {
|
@@ -1328,6 +1331,19 @@ enifed('container/container', ['exports', 'ember-metal/core', 'ember-metal/debug
|
|
1328
1331
|
} else {
|
1329
1332
|
resetCache(this);
|
1330
1333
|
}
|
1334
|
+
},
|
1335
|
+
|
1336
|
+
/**
|
1337
|
+
Returns an object that can be used to provide an owner to a
|
1338
|
+
manually created instance.
|
1339
|
+
@private
|
1340
|
+
@method ownerInjection
|
1341
|
+
@returns { Object }
|
1342
|
+
*/
|
1343
|
+
ownerInjection: function () {
|
1344
|
+
var _ref;
|
1345
|
+
|
1346
|
+
return _ref = {}, _ref[_containerOwner.OWNER] = this.owner, _ref;
|
1331
1347
|
}
|
1332
1348
|
};
|
1333
1349
|
|
@@ -1510,7 +1526,9 @@ enifed('container/container', ['exports', 'ember-metal/core', 'ember-metal/debug
|
|
1510
1526
|
|
1511
1527
|
// TODO - remove when Ember reaches v3.0.0
|
1512
1528
|
|
1513
|
-
|
1529
|
+
if (!Object.isFrozen(obj) && 'container' in obj) {
|
1530
|
+
injectDeprecatedContainer(obj, container);
|
1531
|
+
}
|
1514
1532
|
}
|
1515
1533
|
|
1516
1534
|
return obj;
|
@@ -1524,7 +1542,15 @@ enifed('container/container', ['exports', 'ember-metal/core', 'ember-metal/debug
|
|
1524
1542
|
enumerable: false,
|
1525
1543
|
get: function () {
|
1526
1544
|
_emberMetalDebug.deprecate('Using the injected `container` is deprecated. Please use the `getOwner` helper instead to access the owner of this object.', false, { id: 'ember-application.injected-container', until: '3.0.0', url: 'http://emberjs.com/deprecations/v2.x#toc_injected-container-access' });
|
1527
|
-
return container;
|
1545
|
+
return this[CONTAINER_OVERRIDE] || container;
|
1546
|
+
},
|
1547
|
+
|
1548
|
+
set: function (value) {
|
1549
|
+
_emberMetalDebug.deprecate('Providing the `container` property to ' + this + ' is deprecated. Please use `Ember.setOwner` or `owner.ownerInjection()` instead to provide an owner to the instance being created.', false, { id: 'ember-application.injected-container', until: '3.0.0', url: 'http://emberjs.com/deprecations/v2.x#toc_injected-container-access' });
|
1550
|
+
|
1551
|
+
this[CONTAINER_OVERRIDE] = value;
|
1552
|
+
|
1553
|
+
return value;
|
1528
1554
|
}
|
1529
1555
|
});
|
1530
1556
|
}
|
@@ -1663,7 +1689,13 @@ enifed('container/registry', ['exports', 'ember-metal/debug', 'ember-metal/dicti
|
|
1663
1689
|
function Registry(options) {
|
1664
1690
|
this.fallback = options && options.fallback ? options.fallback : null;
|
1665
1691
|
|
1666
|
-
|
1692
|
+
if (options && options.resolver) {
|
1693
|
+
this.resolver = options.resolver;
|
1694
|
+
|
1695
|
+
if (typeof this.resolver === 'function') {
|
1696
|
+
deprecateResolverFunction(this);
|
1697
|
+
}
|
1698
|
+
}
|
1667
1699
|
|
1668
1700
|
this.registrations = _emberMetalDictionary.default(options && options.registrations ? options.registrations : null);
|
1669
1701
|
|
@@ -1690,9 +1722,10 @@ enifed('container/registry', ['exports', 'ember-metal/debug', 'ember-metal/dicti
|
|
1690
1722
|
fallback: null,
|
1691
1723
|
|
1692
1724
|
/**
|
1693
|
-
|
1725
|
+
An object that has a `resolve` method that resolves a name.
|
1726
|
+
@private
|
1694
1727
|
@property resolver
|
1695
|
-
@type
|
1728
|
+
@type Resolver
|
1696
1729
|
*/
|
1697
1730
|
resolver: null,
|
1698
1731
|
|
@@ -1874,7 +1907,13 @@ enifed('container/registry', ['exports', 'ember-metal/debug', 'ember-metal/dicti
|
|
1874
1907
|
@return {string} described fullName
|
1875
1908
|
*/
|
1876
1909
|
describe: function (fullName) {
|
1877
|
-
|
1910
|
+
if (this.resolver && this.resolver.lookupDescription) {
|
1911
|
+
return this.resolver.lookupDescription(fullName);
|
1912
|
+
} else if (this.fallback) {
|
1913
|
+
return this.fallback.describe(fullName);
|
1914
|
+
} else {
|
1915
|
+
return fullName;
|
1916
|
+
}
|
1878
1917
|
},
|
1879
1918
|
|
1880
1919
|
/**
|
@@ -1885,7 +1924,13 @@ enifed('container/registry', ['exports', 'ember-metal/debug', 'ember-metal/dicti
|
|
1885
1924
|
@return {string} normalized fullName
|
1886
1925
|
*/
|
1887
1926
|
normalizeFullName: function (fullName) {
|
1888
|
-
|
1927
|
+
if (this.resolver && this.resolver.normalize) {
|
1928
|
+
return this.resolver.normalize(fullName);
|
1929
|
+
} else if (this.fallback) {
|
1930
|
+
return this.fallback.normalizeFullName(fullName);
|
1931
|
+
} else {
|
1932
|
+
return fullName;
|
1933
|
+
}
|
1889
1934
|
},
|
1890
1935
|
|
1891
1936
|
/**
|
@@ -1907,7 +1952,13 @@ enifed('container/registry', ['exports', 'ember-metal/debug', 'ember-metal/dicti
|
|
1907
1952
|
@return {function} toString function
|
1908
1953
|
*/
|
1909
1954
|
makeToString: function (factory, fullName) {
|
1910
|
-
|
1955
|
+
if (this.resolver && this.resolver.makeToString) {
|
1956
|
+
return this.resolver.makeToString(factory, fullName);
|
1957
|
+
} else if (this.fallback) {
|
1958
|
+
return this.fallback.makeToString(factory, fullName);
|
1959
|
+
} else {
|
1960
|
+
return factory.toString();
|
1961
|
+
}
|
1911
1962
|
},
|
1912
1963
|
|
1913
1964
|
/**
|
@@ -2198,7 +2249,7 @@ enifed('container/registry', ['exports', 'ember-metal/debug', 'ember-metal/dicti
|
|
2198
2249
|
fallbackKnown = this.fallback.knownForType(type);
|
2199
2250
|
}
|
2200
2251
|
|
2201
|
-
if (this.resolver.knownForType) {
|
2252
|
+
if (this.resolver && this.resolver.knownForType) {
|
2202
2253
|
resolverKnown = this.resolver.knownForType(type);
|
2203
2254
|
}
|
2204
2255
|
|
@@ -2278,6 +2329,13 @@ enifed('container/registry', ['exports', 'ember-metal/debug', 'ember-metal/dicti
|
|
2278
2329
|
}
|
2279
2330
|
};
|
2280
2331
|
|
2332
|
+
function deprecateResolverFunction(registry) {
|
2333
|
+
_emberMetalDebug.deprecate('Passing a `resolver` function into a Registry is deprecated. Please pass in a Resolver object with a `resolve` method.', false, { id: 'ember-application.registry-resolver-as-function', until: '3.0.0', url: 'http://emberjs.com/deprecations/v2.x#toc_registry-resolver-as-function' });
|
2334
|
+
registry.resolver = {
|
2335
|
+
resolve: registry.resolver
|
2336
|
+
};
|
2337
|
+
}
|
2338
|
+
|
2281
2339
|
function resolve(registry, normalizedName) {
|
2282
2340
|
var cached = registry._resolveCache[normalizedName];
|
2283
2341
|
if (cached) {
|
@@ -2287,7 +2345,13 @@ enifed('container/registry', ['exports', 'ember-metal/debug', 'ember-metal/dicti
|
|
2287
2345
|
return;
|
2288
2346
|
}
|
2289
2347
|
|
2290
|
-
var resolved =
|
2348
|
+
var resolved = undefined;
|
2349
|
+
|
2350
|
+
if (registry.resolver) {
|
2351
|
+
resolved = registry.resolver.resolve(normalizedName);
|
2352
|
+
}
|
2353
|
+
|
2354
|
+
resolved = resolved || registry.registrations[normalizedName];
|
2291
2355
|
|
2292
2356
|
if (resolved) {
|
2293
2357
|
registry._resolveCache[normalizedName] = resolved;
|
@@ -2965,6 +3029,8 @@ enifed('dom-helper/prop', ['exports'], function (exports) {
|
|
2965
3029
|
}
|
2966
3030
|
});
|
2967
3031
|
enifed("dom-helper", ["exports", "htmlbars-runtime/morph", "morph-attr", "dom-helper/build-html-dom", "dom-helper/classes", "dom-helper/prop"], function (exports, _htmlbarsRuntimeMorph, _morphAttr, _domHelperBuildHtmlDom, _domHelperClasses, _domHelperProp) {
|
3032
|
+
/*globals module, URL*/
|
3033
|
+
|
2968
3034
|
"use strict";
|
2969
3035
|
|
2970
3036
|
var doc = typeof document === 'undefined' ? false : document;
|
@@ -3115,6 +3181,8 @@ enifed("dom-helper", ["exports", "htmlbars-runtime/morph", "morph-attr", "dom-he
|
|
3115
3181
|
}
|
3116
3182
|
this.canClone = canClone;
|
3117
3183
|
this.namespace = null;
|
3184
|
+
|
3185
|
+
installEnvironmentSpecificMethods(this);
|
3118
3186
|
}
|
3119
3187
|
|
3120
3188
|
var prototype = DOMHelper.prototype;
|
@@ -3514,17 +3582,57 @@ enifed("dom-helper", ["exports", "htmlbars-runtime/morph", "morph-attr", "dom-he
|
|
3514
3582
|
return fragment;
|
3515
3583
|
};
|
3516
3584
|
|
3585
|
+
var nodeURL;
|
3517
3586
|
var parsingNode;
|
3518
3587
|
|
3519
|
-
|
3520
|
-
|
3588
|
+
function installEnvironmentSpecificMethods(domHelper) {
|
3589
|
+
var protocol = browserProtocolForURL.call(domHelper, 'foobar:baz');
|
3590
|
+
|
3591
|
+
// Test to see if our DOM implementation parses
|
3592
|
+
// and normalizes URLs.
|
3593
|
+
if (protocol === 'foobar:') {
|
3594
|
+
// Swap in the method that doesn't do this test now that
|
3595
|
+
// we know it works.
|
3596
|
+
domHelper.protocolForURL = browserProtocolForURL;
|
3597
|
+
} else if (typeof URL === 'object') {
|
3598
|
+
// URL globally provided, likely from FastBoot's sandbox
|
3599
|
+
nodeURL = URL;
|
3600
|
+
domHelper.protocolForURL = nodeProtocolForURL;
|
3601
|
+
} else if (typeof module === 'object' && typeof module.require === 'function') {
|
3602
|
+
// Otherwise, we need to fall back to our own URL parsing.
|
3603
|
+
// Global `require` is shadowed by Ember's loader so we have to use the fully
|
3604
|
+
// qualified `module.require`.
|
3605
|
+
nodeURL = module.require('url');
|
3606
|
+
domHelper.protocolForURL = nodeProtocolForURL;
|
3607
|
+
} else {
|
3608
|
+
throw new Error("DOM Helper could not find valid URL parsing mechanism");
|
3609
|
+
}
|
3610
|
+
|
3611
|
+
// A SimpleDOM-specific extension that allows us to place HTML directly
|
3612
|
+
// into the DOM tree, for when the output target is always serialized HTML.
|
3613
|
+
if (domHelper.document.createRawHTMLSection) {
|
3614
|
+
domHelper.setMorphHTML = nodeSetMorphHTML;
|
3615
|
+
}
|
3616
|
+
}
|
3617
|
+
|
3618
|
+
function nodeSetMorphHTML(morph, html) {
|
3619
|
+
var section = this.document.createRawHTMLSection(html);
|
3620
|
+
morph.setNode(section);
|
3621
|
+
}
|
3622
|
+
|
3623
|
+
function browserProtocolForURL(url) {
|
3521
3624
|
if (!parsingNode) {
|
3522
3625
|
parsingNode = this.document.createElement('a');
|
3523
3626
|
}
|
3524
3627
|
|
3525
3628
|
parsingNode.href = url;
|
3526
3629
|
return parsingNode.protocol;
|
3527
|
-
}
|
3630
|
+
}
|
3631
|
+
|
3632
|
+
function nodeProtocolForURL(url) {
|
3633
|
+
var protocol = nodeURL.parse(url).protocol;
|
3634
|
+
return protocol === null ? ':' : protocol;
|
3635
|
+
}
|
3528
3636
|
|
3529
3637
|
exports.default = DOMHelper;
|
3530
3638
|
});
|
@@ -3604,8 +3712,6 @@ enifed('ember-application/system/application-instance', ['exports', 'ember-metal
|
|
3604
3712
|
var registry = this.__registry__ = new _containerRegistry.default({
|
3605
3713
|
fallback: applicationRegistry
|
3606
3714
|
});
|
3607
|
-
registry.normalizeFullName = applicationRegistry.normalizeFullName;
|
3608
|
-
registry.makeToString = applicationRegistry.makeToString;
|
3609
3715
|
|
3610
3716
|
// Create a per-instance container from the instance's registry
|
3611
3717
|
this.__container__ = registry.container({ owner: this });
|
@@ -3780,6 +3886,19 @@ enifed('ember-application/system/application-instance', ['exports', 'ember-metal
|
|
3780
3886
|
willDestroy: function () {
|
3781
3887
|
this._super.apply(this, arguments);
|
3782
3888
|
_emberMetalRun_loop.default(this.__container__, 'destroy');
|
3889
|
+
},
|
3890
|
+
|
3891
|
+
/**
|
3892
|
+
Unregister a factory.
|
3893
|
+
Overrides `RegistryProxy#unregister` in order to clear any cached instances
|
3894
|
+
of the unregistered factory.
|
3895
|
+
@public
|
3896
|
+
@method unregister
|
3897
|
+
@param {String} fullName
|
3898
|
+
*/
|
3899
|
+
unregister: function (fullName) {
|
3900
|
+
this.__container__.reset(fullName);
|
3901
|
+
this._super.apply(this, arguments);
|
3783
3902
|
}
|
3784
3903
|
});
|
3785
3904
|
|
@@ -5180,13 +5299,11 @@ enifed('ember-application/system/application', ['exports', 'dag-map', 'container
|
|
5180
5299
|
@public
|
5181
5300
|
*/
|
5182
5301
|
buildRegistry: function (namespace) {
|
5183
|
-
var registry = new _containerRegistry.default(
|
5302
|
+
var registry = new _containerRegistry.default({
|
5303
|
+
resolver: resolverFor(namespace)
|
5304
|
+
});
|
5184
5305
|
|
5185
5306
|
registry.set = _emberMetalProperty_set.set;
|
5186
|
-
registry.resolver = resolverFor(namespace);
|
5187
|
-
registry.normalizeFullName = registry.resolver.normalize;
|
5188
|
-
registry.describe = registry.resolver.describe;
|
5189
|
-
registry.makeToString = registry.resolver.makeToString;
|
5190
5307
|
|
5191
5308
|
registry.optionsForType('component', { singleton: false });
|
5192
5309
|
registry.optionsForType('view', { singleton: false });
|
@@ -5247,7 +5364,7 @@ enifed('ember-application/system/application', ['exports', 'dag-map', 'container
|
|
5247
5364
|
registry.injection('service:-routing', 'router', 'router:main');
|
5248
5365
|
|
5249
5366
|
// DEBUGGING
|
5250
|
-
registry.register('resolver-for-debugging:main', registry.resolver
|
5367
|
+
registry.register('resolver-for-debugging:main', registry.resolver, { instantiate: false });
|
5251
5368
|
registry.injection('container-debug-adapter:main', 'resolver', 'resolver-for-debugging:main');
|
5252
5369
|
registry.injection('data-adapter:main', 'containerDebugAdapter', 'container-debug-adapter:main');
|
5253
5370
|
// Custom resolver authors may want to register their own ContainerDebugAdapter with this key
|
@@ -5276,39 +5393,10 @@ enifed('ember-application/system/application', ['exports', 'dag-map', 'container
|
|
5276
5393
|
*/
|
5277
5394
|
function resolverFor(namespace) {
|
5278
5395
|
var ResolverClass = namespace.get('Resolver') || _emberApplicationSystemResolver.default;
|
5279
|
-
|
5396
|
+
|
5397
|
+
return ResolverClass.create({
|
5280
5398
|
namespace: namespace
|
5281
5399
|
});
|
5282
|
-
|
5283
|
-
function resolve(fullName) {
|
5284
|
-
return resolver.resolve(fullName);
|
5285
|
-
}
|
5286
|
-
|
5287
|
-
resolve.describe = function (fullName) {
|
5288
|
-
return resolver.lookupDescription(fullName);
|
5289
|
-
};
|
5290
|
-
|
5291
|
-
resolve.makeToString = function (factory, fullName) {
|
5292
|
-
return resolver.makeToString(factory, fullName);
|
5293
|
-
};
|
5294
|
-
|
5295
|
-
resolve.normalize = function (fullName) {
|
5296
|
-
if (resolver.normalize) {
|
5297
|
-
return resolver.normalize(fullName);
|
5298
|
-
}
|
5299
|
-
};
|
5300
|
-
|
5301
|
-
resolve.knownForType = function knownForType(type) {
|
5302
|
-
if (resolver.knownForType) {
|
5303
|
-
return resolver.knownForType(type);
|
5304
|
-
}
|
5305
|
-
};
|
5306
|
-
|
5307
|
-
resolve.moduleBasedResolver = resolver.moduleBasedResolver;
|
5308
|
-
|
5309
|
-
resolve.__resolver__ = resolver;
|
5310
|
-
|
5311
|
-
return resolve;
|
5312
5400
|
}
|
5313
5401
|
|
5314
5402
|
function registerLibraries() {
|
@@ -6282,7 +6370,7 @@ enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/debug', 'embe
|
|
6282
6370
|
_emberMetalDebug.setDebugFunction('warn', _emberDebugWarn.default);
|
6283
6371
|
|
6284
6372
|
/**
|
6285
|
-
Will call `Ember.warn()` if
|
6373
|
+
Will call `Ember.warn()` if ENABLE_OPTIONAL_FEATURES or
|
6286
6374
|
any specific FEATURES flag is truthy.
|
6287
6375
|
|
6288
6376
|
This method is called automatically in debug canary builds.
|
@@ -6294,7 +6382,6 @@ enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/debug', 'embe
|
|
6294
6382
|
|
6295
6383
|
function _warnIfUsingStrippedFeatureFlags(FEATURES, featuresWereStripped) {
|
6296
6384
|
if (featuresWereStripped) {
|
6297
|
-
_emberMetalDebug.warn('Ember.ENV.ENABLE_ALL_FEATURES is only available in canary builds.', !_emberMetalCore.default.ENV.ENABLE_ALL_FEATURES, { id: 'ember-debug.feature-flag-with-features-stripped' });
|
6298
6385
|
_emberMetalDebug.warn('Ember.ENV.ENABLE_OPTIONAL_FEATURES is only available in canary builds.', !_emberMetalCore.default.ENV.ENABLE_OPTIONAL_FEATURES, { id: 'ember-debug.feature-flag-with-features-stripped' });
|
6299
6386
|
|
6300
6387
|
for (var key in FEATURES) {
|
@@ -6310,10 +6397,6 @@ enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/debug', 'embe
|
|
6310
6397
|
_emberMetalFeatures.FEATURES['features-stripped-test'] = true;
|
6311
6398
|
var featuresWereStripped = true;
|
6312
6399
|
|
6313
|
-
if (_emberMetalFeatures.default('features-stripped-test')) {
|
6314
|
-
exports.featuresWereStripped = featuresWereStripped = false;
|
6315
|
-
}
|
6316
|
-
|
6317
6400
|
delete _emberMetalFeatures.FEATURES['features-stripped-test'];
|
6318
6401
|
_warnIfUsingStrippedFeatureFlags(_emberMetalCore.default.ENV.FEATURES, featuresWereStripped);
|
6319
6402
|
|
@@ -7816,7 +7899,7 @@ enifed('ember-htmlbars/helpers/with', ['exports', 'ember-views/streams/should_di
|
|
7816
7899
|
for semantic clarity as it allows you to retain default scope or to reference a property from another
|
7817
7900
|
`{{with}}` block.
|
7818
7901
|
|
7819
|
-
If the aliased property is "falsey", for example: `false`, `undefined` `null`, `""`, `0
|
7902
|
+
If the aliased property is "falsey", for example: `false`, `undefined` `null`, `""`, `0`, NaN or
|
7820
7903
|
an empty array, the block will not be rendered.
|
7821
7904
|
|
7822
7905
|
```handlebars
|
@@ -8084,22 +8167,37 @@ enifed('ember-htmlbars/hooks/component', ['exports', 'ember-metal/debug', 'ember
|
|
8084
8167
|
function componentHook(renderNode, env, scope, _tagName, params, attrs, templates, visitor) {
|
8085
8168
|
var state = renderNode.getState();
|
8086
8169
|
|
8087
|
-
// Determine if this is an initial render or a re-render
|
8088
|
-
if (state.manager) {
|
8089
|
-
state.manager.rerender(env, attrs, visitor);
|
8090
|
-
return;
|
8091
|
-
}
|
8092
|
-
|
8093
8170
|
var tagName = _tagName;
|
8094
8171
|
if (_emberHtmlbarsSystemLookupHelper.CONTAINS_DOT_CACHE.get(tagName)) {
|
8095
8172
|
var stream = env.hooks.get(env, scope, tagName);
|
8096
8173
|
var componentCell = stream.value();
|
8097
8174
|
if (_emberHtmlbarsKeywordsClosureComponent.isComponentCell(componentCell)) {
|
8098
8175
|
tagName = componentCell[_emberHtmlbarsKeywordsClosureComponent.COMPONENT_PATH];
|
8176
|
+
|
8177
|
+
/*
|
8178
|
+
* Processing positional params before merging into a hash must be done
|
8179
|
+
* here to avoid problems with rest positional parameters rendered using
|
8180
|
+
* the dot notation.
|
8181
|
+
*
|
8182
|
+
* Closure components (for the contextual component feature) do not
|
8183
|
+
* actually keep the positional params, but process them at each level.
|
8184
|
+
* Therefore, when rendering a closure component with the component
|
8185
|
+
* helper we process the parameters and attributes and then merge those
|
8186
|
+
* on top of the closure component attributes.
|
8187
|
+
*
|
8188
|
+
*/
|
8189
|
+
_emberHtmlbarsKeywordsClosureComponent.processPositionalParamsFromCell(componentCell, params, attrs);
|
8190
|
+
params = [];
|
8099
8191
|
attrs = _emberHtmlbarsKeywordsClosureComponent.mergeInNewHash(componentCell[_emberHtmlbarsKeywordsClosureComponent.COMPONENT_HASH], attrs);
|
8100
8192
|
}
|
8101
8193
|
}
|
8102
8194
|
|
8195
|
+
// Determine if this is an initial render or a re-render
|
8196
|
+
if (state.manager) {
|
8197
|
+
state.manager.rerender(env, attrs, visitor);
|
8198
|
+
return;
|
8199
|
+
}
|
8200
|
+
|
8103
8201
|
var isAngleBracket = false;
|
8104
8202
|
var isTopLevel = false;
|
8105
8203
|
var isDasherized = false;
|
@@ -8681,7 +8779,7 @@ enifed('ember-htmlbars/hooks/invoke-helper', ['exports', 'ember-htmlbars/system/
|
|
8681
8779
|
return { value: helperStream.value() };
|
8682
8780
|
}
|
8683
8781
|
});
|
8684
|
-
enifed('ember-htmlbars/hooks/link-render-node', ['exports', 'ember-htmlbars/utils/subscribe', 'ember-runtime/utils', 'ember-metal/streams/utils'], function (exports, _emberHtmlbarsUtilsSubscribe, _emberRuntimeUtils, _emberMetalStreamsUtils) {
|
8782
|
+
enifed('ember-htmlbars/hooks/link-render-node', ['exports', 'ember-htmlbars/utils/subscribe', 'ember-runtime/utils', 'ember-metal/streams/utils', 'ember-htmlbars/system/lookup-helper', 'ember-htmlbars/keywords/closure-component'], function (exports, _emberHtmlbarsUtilsSubscribe, _emberRuntimeUtils, _emberMetalStreamsUtils, _emberHtmlbarsSystemLookupHelper, _emberHtmlbarsKeywordsClosureComponent) {
|
8685
8783
|
/**
|
8686
8784
|
@module ember
|
8687
8785
|
@submodule ember-htmlbars
|
@@ -8711,6 +8809,22 @@ enifed('ember-htmlbars/hooks/link-render-node', ['exports', 'ember-htmlbars/util
|
|
8711
8809
|
}
|
8712
8810
|
}
|
8713
8811
|
|
8812
|
+
// If has a dot in the path, we need to subscribe to the arguments in the
|
8813
|
+
// closure component as well.
|
8814
|
+
|
8815
|
+
if (_emberHtmlbarsSystemLookupHelper.CONTAINS_DOT_CACHE.get(path)) {
|
8816
|
+
var stream = env.hooks.get(env, scope, path);
|
8817
|
+
var componentCell = stream.value();
|
8818
|
+
|
8819
|
+
if (_emberHtmlbarsKeywordsClosureComponent.isComponentCell(componentCell)) {
|
8820
|
+
var closureAttrs = _emberHtmlbarsKeywordsClosureComponent.mergeInNewHash(componentCell[_emberHtmlbarsKeywordsClosureComponent.COMPONENT_HASH], hash);
|
8821
|
+
|
8822
|
+
for (var key in closureAttrs) {
|
8823
|
+
_emberHtmlbarsUtilsSubscribe.default(renderNode, env, scope, closureAttrs[key]);
|
8824
|
+
}
|
8825
|
+
}
|
8826
|
+
}
|
8827
|
+
|
8714
8828
|
if (params && params.length) {
|
8715
8829
|
for (var i = 0; i < params.length; i++) {
|
8716
8830
|
_emberHtmlbarsUtilsSubscribe.default(renderNode, env, scope, params[i]);
|
@@ -8929,6 +9043,7 @@ enifed('ember-htmlbars/keywords/closure-component', ['exports', 'ember-metal/deb
|
|
8929
9043
|
|
8930
9044
|
exports.default = closureComponent;
|
8931
9045
|
exports.isComponentCell = isComponentCell;
|
9046
|
+
exports.processPositionalParamsFromCell = processPositionalParamsFromCell;
|
8932
9047
|
exports.mergeInNewHash = mergeInNewHash;
|
8933
9048
|
var COMPONENT_REFERENCE = _emberMetalSymbol.default('COMPONENT_REFERENCE');
|
8934
9049
|
exports.COMPONENT_REFERENCE = COMPONENT_REFERENCE;
|
@@ -9004,12 +9119,16 @@ enifed('ember-htmlbars/keywords/closure-component', ['exports', 'ember-metal/deb
|
|
9004
9119
|
function createNestedClosureComponentCell(componentCell, params, hash) {
|
9005
9120
|
var _ref;
|
9006
9121
|
|
9122
|
+
// This needs to be done in each nesting level to avoid raising assertions
|
9123
|
+
processPositionalParamsFromCell(componentCell, params, hash);
|
9124
|
+
|
9125
|
+
return _ref = {}, _ref[COMPONENT_PATH] = componentCell[COMPONENT_PATH], _ref[COMPONENT_HASH] = mergeInNewHash(componentCell[COMPONENT_HASH], hash), _ref[COMPONENT_POSITIONAL_PARAMS] = componentCell[COMPONENT_POSITIONAL_PARAMS], _ref[COMPONENT_CELL] = true, _ref;
|
9126
|
+
}
|
9127
|
+
|
9128
|
+
function processPositionalParamsFromCell(componentCell, params, hash) {
|
9007
9129
|
var positionalParams = componentCell[COMPONENT_POSITIONAL_PARAMS];
|
9008
9130
|
|
9009
|
-
// This needs to be done in each nesting level to avoid raising assertions
|
9010
9131
|
_emberHtmlbarsUtilsExtractPositionalParams.processPositionalParams(null, positionalParams, params, hash);
|
9011
|
-
|
9012
|
-
return _ref = {}, _ref[COMPONENT_PATH] = componentCell[COMPONENT_PATH], _ref[COMPONENT_HASH] = mergeInNewHash(componentCell[COMPONENT_HASH], hash), _ref[COMPONENT_POSITIONAL_PARAMS] = positionalParams, _ref[COMPONENT_CELL] = true, _ref;
|
9013
9132
|
}
|
9014
9133
|
|
9015
9134
|
function createNewClosureComponentCell(env, componentPath, params, hash) {
|
@@ -9424,7 +9543,7 @@ enifed('ember-htmlbars/keywords/each', ['exports'], function (exports) {
|
|
9424
9543
|
return false;
|
9425
9544
|
}
|
9426
9545
|
});
|
9427
|
-
enifed('ember-htmlbars/keywords/element-component', ['exports', 'ember-metal/assign', 'ember-htmlbars/keywords/closure-component'
|
9546
|
+
enifed('ember-htmlbars/keywords/element-component', ['exports', 'ember-metal/assign', 'ember-htmlbars/keywords/closure-component'], function (exports, _emberMetalAssign, _emberHtmlbarsKeywordsClosureComponent) {
|
9428
9547
|
'use strict';
|
9429
9548
|
|
9430
9549
|
exports.default = {
|
@@ -9485,10 +9604,9 @@ enifed('ember-htmlbars/keywords/element-component', ['exports', 'ember-metal/ass
|
|
9485
9604
|
|
9486
9605
|
if (_emberHtmlbarsKeywordsClosureComponent.isComponentCell(path)) {
|
9487
9606
|
var closureComponent = env.hooks.getValue(path);
|
9488
|
-
var positionalParams = closureComponent[_emberHtmlbarsKeywordsClosureComponent.COMPONENT_POSITIONAL_PARAMS];
|
9489
9607
|
|
9490
9608
|
// This needs to be done in each nesting level to avoid raising assertions
|
9491
|
-
|
9609
|
+
_emberHtmlbarsKeywordsClosureComponent.processPositionalParamsFromCell(closureComponent, params, hash);
|
9492
9610
|
params = [];
|
9493
9611
|
hash = _emberHtmlbarsKeywordsClosureComponent.mergeInNewHash(closureComponent[_emberHtmlbarsKeywordsClosureComponent.COMPONENT_HASH], hash);
|
9494
9612
|
}
|
@@ -10006,7 +10124,7 @@ enifed('ember-htmlbars/keywords/outlet', ['exports', 'ember-metal/debug', 'ember
|
|
10006
10124
|
|
10007
10125
|
'use strict';
|
10008
10126
|
|
10009
|
-
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.0-beta.
|
10127
|
+
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.0-beta.3';
|
10010
10128
|
|
10011
10129
|
/**
|
10012
10130
|
The `{{outlet}}` helper lets you specify where a child routes will render in
|
@@ -10115,10 +10233,6 @@ enifed('ember-htmlbars/keywords/outlet', ['exports', 'ember-metal/debug', 'ember
|
|
10115
10233
|
|
10116
10234
|
var Component;
|
10117
10235
|
|
10118
|
-
if (_emberMetalFeatures.default('ember-routing-routable-components')) {
|
10119
|
-
Component = outletState.render.Component;
|
10120
|
-
}
|
10121
|
-
|
10122
10236
|
var options;
|
10123
10237
|
var attrs = {};
|
10124
10238
|
if (Component) {
|
@@ -10915,7 +11029,7 @@ enifed('ember-htmlbars/keywords', ['exports', 'htmlbars-runtime'], function (exp
|
|
10915
11029
|
|
10916
11030
|
exports.default = keywords;
|
10917
11031
|
});
|
10918
|
-
enifed('ember-htmlbars/morphs/attr-morph', ['exports', 'ember-metal/debug', 'dom-helper'], function (exports, _emberMetalDebug, _domHelper) {
|
11032
|
+
enifed('ember-htmlbars/morphs/attr-morph', ['exports', 'ember-metal/debug', 'dom-helper', 'ember-metal/is_none'], function (exports, _emberMetalDebug, _domHelper, _emberMetalIs_none) {
|
10919
11033
|
'use strict';
|
10920
11034
|
|
10921
11035
|
var HTMLBarsAttrMorph = _domHelper.default.prototype.AttrMorphClass;
|
@@ -10934,7 +11048,7 @@ enifed('ember-htmlbars/morphs/attr-morph', ['exports', 'ember-metal/debug', 'dom
|
|
10934
11048
|
function deprecateEscapedStyle(morph, value) {
|
10935
11049
|
_emberMetalDebug.warn(styleWarning, (function (name, value, escaped) {
|
10936
11050
|
// SafeString
|
10937
|
-
if (value && value.toHTML) {
|
11051
|
+
if (_emberMetalIs_none.default(value) || value && value.toHTML) {
|
10938
11052
|
return true;
|
10939
11053
|
}
|
10940
11054
|
|
@@ -12999,9 +13113,9 @@ enifed('ember-htmlbars/utils/extract-positional-params', ['exports', 'ember-meta
|
|
12999
13113
|
}
|
13000
13114
|
|
13001
13115
|
function processPositionalParams(renderNode, positionalParams, params, attrs) {
|
13002
|
-
var
|
13116
|
+
var isRest = typeof positionalParams === 'string';
|
13003
13117
|
|
13004
|
-
if (
|
13118
|
+
if (isRest) {
|
13005
13119
|
processRestPositionalParameters(renderNode, positionalParams, params, attrs);
|
13006
13120
|
} else {
|
13007
13121
|
processNamedPositionalParameters(renderNode, positionalParams, params, attrs);
|
@@ -13341,10 +13455,6 @@ enifed('ember-htmlbars', ['exports', 'ember-metal/core', 'ember-metal/features',
|
|
13341
13455
|
DOMHelper: _emberHtmlbarsSystemDomHelper.default
|
13342
13456
|
};
|
13343
13457
|
|
13344
|
-
if (_emberMetalFeatures.default('ember-htmlbars-component-generation')) {
|
13345
|
-
_emberMetalCore.default.GlimmerComponent = _emberHtmlbarsGlimmerComponent.default;
|
13346
|
-
}
|
13347
|
-
|
13348
13458
|
_emberHtmlbarsHelper.default.helper = _emberHtmlbarsHelper.helper;
|
13349
13459
|
_emberMetalCore.default.Helper = _emberHtmlbarsHelper.default;
|
13350
13460
|
|
@@ -15761,7 +15871,7 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
15761
15871
|
|
15762
15872
|
@class Ember
|
15763
15873
|
@static
|
15764
|
-
@version 2.3.0-beta.
|
15874
|
+
@version 2.3.0-beta.3
|
15765
15875
|
@public
|
15766
15876
|
*/
|
15767
15877
|
|
@@ -15805,11 +15915,11 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
15805
15915
|
|
15806
15916
|
@property VERSION
|
15807
15917
|
@type String
|
15808
|
-
@default '2.3.0-beta.
|
15918
|
+
@default '2.3.0-beta.3'
|
15809
15919
|
@static
|
15810
15920
|
@public
|
15811
15921
|
*/
|
15812
|
-
Ember.VERSION = '2.3.0-beta.
|
15922
|
+
Ember.VERSION = '2.3.0-beta.3';
|
15813
15923
|
|
15814
15924
|
/**
|
15815
15925
|
The hash of environment variables used to control various configuration
|
@@ -15834,13 +15944,13 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
15834
15944
|
Ember.ENV = {};
|
15835
15945
|
}
|
15836
15946
|
|
15837
|
-
|
15838
|
-
|
15839
|
-
|
15840
|
-
if ('undefined' === typeof Ember.ENV.DISABLE_RANGE_API) {
|
15841
|
-
Ember.ENV.DISABLE_RANGE_API = true;
|
15947
|
+
// ENABLE_ALL_FEATURES was documented, but you can't actually enable non optional features.
|
15948
|
+
if (Ember.ENV.ENABLE_ALL_FEATURES) {
|
15949
|
+
Ember.ENV.ENABLE_OPTIONAL_FEATURES = Ember.ENV.ENABLE_ALL_FEATURES;
|
15842
15950
|
}
|
15843
15951
|
|
15952
|
+
Ember.config = Ember.config || {};
|
15953
|
+
|
15844
15954
|
// ..........................................................
|
15845
15955
|
// BOOTSTRAP
|
15846
15956
|
//
|
@@ -15881,17 +15991,6 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
15881
15991
|
*/
|
15882
15992
|
Ember.LOG_STACKTRACE_ON_DEPRECATION = Ember.ENV.LOG_STACKTRACE_ON_DEPRECATION !== false;
|
15883
15993
|
|
15884
|
-
/**
|
15885
|
-
The `SHIM_ES5` property, when true, tells Ember to add ECMAScript 5 Array
|
15886
|
-
shims to older browsers.
|
15887
|
-
|
15888
|
-
@property SHIM_ES5
|
15889
|
-
@type Boolean
|
15890
|
-
@default Ember.EXTEND_PROTOTYPES
|
15891
|
-
@public
|
15892
|
-
*/
|
15893
|
-
Ember.SHIM_ES5 = Ember.ENV.SHIM_ES5 === false ? false : Ember.EXTEND_PROTOTYPES;
|
15894
|
-
|
15895
15994
|
/**
|
15896
15995
|
The `LOG_VERSION` property, when true, tells Ember to log versions of all
|
15897
15996
|
dependent libraries in use.
|
@@ -16649,7 +16748,6 @@ enifed('ember-metal/features', ['exports', 'ember-metal/core', 'ember-metal/assi
|
|
16649
16748
|
|
16650
16749
|
You can define the following configuration options:
|
16651
16750
|
|
16652
|
-
* `EmberENV.ENABLE_ALL_FEATURES` - force all features to be enabled.
|
16653
16751
|
* `EmberENV.ENABLE_OPTIONAL_FEATURES` - enable any features that have not been explicitly
|
16654
16752
|
enabled/disabled.
|
16655
16753
|
|
@@ -16664,9 +16762,7 @@ enifed('ember-metal/features', ['exports', 'ember-metal/core', 'ember-metal/assi
|
|
16664
16762
|
function isEnabled(feature) {
|
16665
16763
|
var featureValue = FEATURES[feature];
|
16666
16764
|
|
16667
|
-
if (
|
16668
|
-
return true;
|
16669
|
-
} else if (featureValue === true || featureValue === false || featureValue === undefined) {
|
16765
|
+
if (featureValue === true || featureValue === false || featureValue === undefined) {
|
16670
16766
|
return featureValue;
|
16671
16767
|
} else if (_emberMetalCore.default.ENV.ENABLE_OPTIONAL_FEATURES) {
|
16672
16768
|
return true;
|
@@ -19064,6 +19160,10 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
19064
19160
|
return applyMixin(obj, [this], true);
|
19065
19161
|
};
|
19066
19162
|
|
19163
|
+
MixinPrototype.toString = function Mixin_toString() {
|
19164
|
+
return '(unknown mixin)';
|
19165
|
+
};
|
19166
|
+
|
19067
19167
|
function _detect(curMixin, targetMixin, seen) {
|
19068
19168
|
var guid = _emberMetalUtils.guidFor(curMixin);
|
19069
19169
|
|
@@ -23260,7 +23360,6 @@ enifed('ember-metal', ['exports', 'ember-metal/core', 'ember-metal/debug', 'embe
|
|
23260
23360
|
_emberMetalComputed.computed.and = _emberMetalComputed_macros.and;
|
23261
23361
|
_emberMetalComputed.computed.or = _emberMetalComputed_macros.or;
|
23262
23362
|
_emberMetalComputed.computed.any = _emberMetalComputed_macros.any;
|
23263
|
-
_emberMetalComputed.computed.collect = _emberMetalComputed_macros.collect;
|
23264
23363
|
|
23265
23364
|
// END IMPORTS
|
23266
23365
|
|
@@ -23398,12 +23497,7 @@ enifed('ember-metal', ['exports', 'ember-metal/core', 'ember-metal/debug', 'embe
|
|
23398
23497
|
_emberMetalCore.default.isBlank = _emberMetalIs_blank.default;
|
23399
23498
|
_emberMetalCore.default.isPresent = _emberMetalIs_present.default;
|
23400
23499
|
|
23401
|
-
|
23402
|
-
_emberMetalCore.default.assign = Object.assign || _emberMetalAssign.default;
|
23403
|
-
_emberMetalCore.default.merge = _emberMetalMerge.default;
|
23404
|
-
} else {
|
23405
|
-
_emberMetalCore.default.merge = _emberMetalMerge.default;
|
23406
|
-
}
|
23500
|
+
_emberMetalCore.default.merge = _emberMetalMerge.default;
|
23407
23501
|
|
23408
23502
|
_emberMetalCore.default.FEATURES = _emberMetalFeatures.FEATURES;
|
23409
23503
|
_emberMetalCore.default.FEATURES.isEnabled = _emberMetalFeatures.default;
|
@@ -25097,12 +25191,6 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
25097
25191
|
var controllerDefinedQueryParameterConfiguration = _emberMetalProperty_get.get(controllerProto, 'queryParams');
|
25098
25192
|
var normalizedControllerQueryParameterConfiguration = _emberRoutingUtils.normalizeControllerQueryParams(controllerDefinedQueryParameterConfiguration);
|
25099
25193
|
combinedQueryParameterConfiguration = mergeEachQueryParams(normalizedControllerQueryParameterConfiguration, queryParameterConfiguraton);
|
25100
|
-
|
25101
|
-
if (_emberMetalFeatures.default('ember-routing-route-configured-query-params')) {
|
25102
|
-
if (controllerDefinedQueryParameterConfiguration.length) {
|
25103
|
-
_emberMetalDebug.deprecate('Configuring query parameters on a controller is deprecated. Migrate the query parameters configuration from the \'' + controllerName + '\' controller to the \'' + this.routeName + '\' route: ' + combinedQueryParameterConfiguration, false, { id: 'ember-routing.controller-configured-query-params', until: '3.0.0' });
|
25104
|
-
}
|
25105
|
-
}
|
25106
25194
|
} else if (hasRouterDefinedQueryParams) {
|
25107
25195
|
// the developer has not defined a controller but *has* supplied route query params.
|
25108
25196
|
// Generate a class for them so we can later insert default values
|
@@ -25129,19 +25217,6 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
25129
25217
|
|
25130
25218
|
var desc = combinedQueryParameterConfiguration[propName];
|
25131
25219
|
|
25132
|
-
if (_emberMetalFeatures.default('ember-routing-route-configured-query-params')) {
|
25133
|
-
// apply default values to controllers
|
25134
|
-
// detect that default value defined on router config
|
25135
|
-
if (desc.hasOwnProperty('defaultValue')) {
|
25136
|
-
// detect that property was not defined on controller
|
25137
|
-
if (controllerProto[propName] === undefined) {
|
25138
|
-
controllerProto[propName] = desc.defaultValue;
|
25139
|
-
} else {
|
25140
|
-
deprecateQueryParamDefaultValuesSetOnController(controllerName, this.routeName, propName);
|
25141
|
-
}
|
25142
|
-
}
|
25143
|
-
}
|
25144
|
-
|
25145
25220
|
var scope = desc.scope || 'model';
|
25146
25221
|
var parts;
|
25147
25222
|
|
@@ -25370,7 +25445,7 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
25370
25445
|
```javascript
|
25371
25446
|
App.ArticlesRoute = Ember.Route.extend({
|
25372
25447
|
// ...
|
25373
|
-
resetController: function
|
25448
|
+
resetController: function(controller, isExiting, transition) {
|
25374
25449
|
if (isExiting) {
|
25375
25450
|
controller.set('page', 1);
|
25376
25451
|
}
|
@@ -26464,7 +26539,7 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
26464
26539
|
model: function() {
|
26465
26540
|
return this.store.find('photo');
|
26466
26541
|
},
|
26467
|
-
setupController: function
|
26542
|
+
setupController: function(controller, model) {
|
26468
26543
|
// Call _super for default behavior
|
26469
26544
|
this._super(controller, model);
|
26470
26545
|
// Implement your custom setup after
|
@@ -26944,17 +27019,6 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
26944
27019
|
};
|
26945
27020
|
|
26946
27021
|
var Component = undefined;
|
26947
|
-
if (_emberMetalFeatures.default('ember-routing-routable-components')) {
|
26948
|
-
var componentName = options && options.component || namePassed && name || route.componentName || name;
|
26949
|
-
var componentLookup = owner.lookup('component-lookup:main');
|
26950
|
-
Component = componentLookup.lookupFactory(componentName);
|
26951
|
-
var isGlimmerComponent = Component && Component.proto().isGlimmerComponent;
|
26952
|
-
if (!template && !ViewClass && Component && isGlimmerComponent) {
|
26953
|
-
renderOptions.Component = Component;
|
26954
|
-
renderOptions.ViewClass = undefined;
|
26955
|
-
renderOptions.attrs = { model: _emberMetalProperty_get.get(controller, 'model') };
|
26956
|
-
}
|
26957
|
-
}
|
26958
27022
|
|
26959
27023
|
if (!ViewClass && !template && !Component) {
|
26960
27024
|
_emberMetalDebug.assert('Could not find "' + name + '" template, view, or component.', isDefaultRender);
|
@@ -27022,16 +27086,12 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
27022
27086
|
var keysAlreadyMergedOrSkippable;
|
27023
27087
|
var qps = {};
|
27024
27088
|
|
27025
|
-
|
27026
|
-
|
27027
|
-
|
27028
|
-
|
27029
|
-
|
27030
|
-
|
27031
|
-
scope: true,
|
27032
|
-
as: true
|
27033
|
-
};
|
27034
|
-
}
|
27089
|
+
keysAlreadyMergedOrSkippable = {
|
27090
|
+
defaultValue: true,
|
27091
|
+
type: true,
|
27092
|
+
scope: true,
|
27093
|
+
as: true
|
27094
|
+
};
|
27035
27095
|
|
27036
27096
|
// first loop over all controller qps, merging them with any matching route qps
|
27037
27097
|
// into a new empty object to avoid mutating.
|
@@ -27078,6 +27138,11 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
27078
27138
|
exports.default = Route;
|
27079
27139
|
});
|
27080
27140
|
// FEATURES, A, deprecate, assert, Logger
|
27141
|
+
|
27142
|
+
// apply default values to controllers
|
27143
|
+
// detect that default value defined on router config
|
27144
|
+
|
27145
|
+
// detect that property was not defined on controller
|
27081
27146
|
enifed('ember-routing/system/router', ['exports', 'ember-metal/logger', 'ember-metal/debug', 'ember-metal/error', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/properties', 'ember-metal/empty_object', 'ember-metal/computed', 'ember-metal/assign', 'ember-metal/run_loop', 'ember-runtime/system/object', 'ember-runtime/mixins/evented', 'ember-routing/system/dsl', 'ember-routing/location/api', 'ember-routing/utils', 'ember-routing/system/router_state', 'container/owner', 'router', 'router/transition'], function (exports, _emberMetalLogger, _emberMetalDebug, _emberMetalError, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalProperties, _emberMetalEmpty_object, _emberMetalComputed, _emberMetalAssign, _emberMetalRun_loop, _emberRuntimeSystemObject, _emberRuntimeMixinsEvented, _emberRoutingSystemDsl, _emberRoutingLocationApi, _emberRoutingUtils, _emberRoutingSystemRouter_state, _containerOwner, _router4, _routerTransition) {
|
27082
27147
|
'use strict';
|
27083
27148
|
|
@@ -29571,7 +29636,7 @@ enifed('ember-routing-views/components/link-to', ['exports', 'ember-metal/logger
|
|
29571
29636
|
|
29572
29637
|
'use strict';
|
29573
29638
|
|
29574
|
-
_emberHtmlbarsTemplatesLinkTo.default.meta.revision = 'Ember@2.3.0-beta.
|
29639
|
+
_emberHtmlbarsTemplatesLinkTo.default.meta.revision = 'Ember@2.3.0-beta.3';
|
29575
29640
|
|
29576
29641
|
/**
|
29577
29642
|
`Ember.LinkComponent` renders an element whose `click` event triggers a
|
@@ -30061,7 +30126,7 @@ enifed('ember-routing-views/views/outlet', ['exports', 'ember-views/views/view',
|
|
30061
30126
|
|
30062
30127
|
'use strict';
|
30063
30128
|
|
30064
|
-
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.0-beta.
|
30129
|
+
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.0-beta.3';
|
30065
30130
|
|
30066
30131
|
var CoreOutletView = _emberViewsViewsView.default.extend({
|
30067
30132
|
defaultTemplate: _emberHtmlbarsTemplatesTopLevelView.default,
|
@@ -32450,6 +32515,23 @@ enifed('ember-runtime/mixins/container_proxy', ['exports', 'ember-metal/run_loop
|
|
32450
32515
|
*/
|
32451
32516
|
__container__: null,
|
32452
32517
|
|
32518
|
+
/**
|
32519
|
+
Returns an object that can be used to provide an owner to a
|
32520
|
+
manually created instance.
|
32521
|
+
Example:
|
32522
|
+
```
|
32523
|
+
let owner = Ember.getOwner(this);
|
32524
|
+
User.create(
|
32525
|
+
owner.ownerInjection(),
|
32526
|
+
{ username: 'rwjblue' }
|
32527
|
+
)
|
32528
|
+
```
|
32529
|
+
@public
|
32530
|
+
@method ownerInjection
|
32531
|
+
@return {Object}
|
32532
|
+
*/
|
32533
|
+
ownerInjection: containerAlias('ownerInjection'),
|
32534
|
+
|
32453
32535
|
/**
|
32454
32536
|
Given a fullName return a corresponding instance.
|
32455
32537
|
The default behaviour is for lookup to return a singleton instance.
|
@@ -36372,14 +36454,13 @@ enifed('ember-runtime/system/core_object', ['exports', 'ember-metal/debug', 'emb
|
|
36372
36454
|
@private
|
36373
36455
|
*/
|
36374
36456
|
eachComputedProperty: function (callback, binding) {
|
36375
|
-
var property
|
36457
|
+
var property;
|
36376
36458
|
var empty = {};
|
36377
36459
|
|
36378
36460
|
var properties = _emberMetalProperty_get.get(this, '_computedProperties');
|
36379
36461
|
|
36380
36462
|
for (var i = 0, length = properties.length; i < length; i++) {
|
36381
36463
|
property = properties[i];
|
36382
|
-
name = property.name;
|
36383
36464
|
callback.call(binding || this, property.name, property.meta || empty);
|
36384
36465
|
}
|
36385
36466
|
}
|
@@ -37291,7 +37372,7 @@ enifed('ember-runtime/system/object_proxy', ['exports', 'ember-runtime/system/ob
|
|
37291
37372
|
|
37292
37373
|
```javascript
|
37293
37374
|
ProxyWithComputedProperty = Ember.ObjectProxy.extend({
|
37294
|
-
fullName: function
|
37375
|
+
fullName: function() {
|
37295
37376
|
var firstName = this.get('firstName'),
|
37296
37377
|
lastName = this.get('lastName');
|
37297
37378
|
if (firstName && lastName) {
|
@@ -37454,7 +37535,7 @@ enifed('ember-runtime/system/string', ['exports', 'ember-metal/debug', 'ember-me
|
|
37454
37535
|
}
|
37455
37536
|
|
37456
37537
|
function fmt(str, formats) {
|
37457
|
-
_emberMetalDebug.deprecate('Ember.String.fmt is deprecated, use ES6 template strings instead.', false, { id: 'ember-string-utils.fmt', until: '3.0.0', url: '
|
37538
|
+
_emberMetalDebug.deprecate('Ember.String.fmt is deprecated, use ES6 template strings instead.', false, { id: 'ember-string-utils.fmt', until: '3.0.0', url: 'http://babeljs.io/docs/learn-es2015/#template-strings' });
|
37458
37539
|
return _fmt.apply(undefined, arguments);
|
37459
37540
|
}
|
37460
37541
|
|
@@ -37523,7 +37604,7 @@ enifed('ember-runtime/system/string', ['exports', 'ember-metal/debug', 'ember-me
|
|
37523
37604
|
@param {Array} formats An array of parameters to interpolate into string.
|
37524
37605
|
@return {String} formatted string
|
37525
37606
|
@public
|
37526
|
-
@deprecated Use ES6 template strings instead:
|
37607
|
+
@deprecated Use ES6 template strings instead: http://babeljs.io/docs/learn-es2015/#template-strings
|
37527
37608
|
*/
|
37528
37609
|
fmt: fmt,
|
37529
37610
|
|
@@ -37657,7 +37738,7 @@ enifed('ember-runtime/system/string', ['exports', 'ember-metal/debug', 'ember-me
|
|
37657
37738
|
'action_name'.capitalize() // 'Action_name'
|
37658
37739
|
'css-class-name'.capitalize() // 'Css-class-name'
|
37659
37740
|
'my favorite items'.capitalize() // 'My favorite items'
|
37660
|
-
'privateDocs/ownerInvoice'.capitalize(); // 'PrivateDocs/
|
37741
|
+
'privateDocs/ownerInvoice'.capitalize(); // 'PrivateDocs/ownerInvoice'
|
37661
37742
|
```
|
37662
37743
|
@method capitalize
|
37663
37744
|
@param {String} str The string to capitalize.
|
@@ -37878,6 +37959,7 @@ enifed('ember-runtime', ['exports', 'ember-metal', 'ember-runtime/is-equal', 'em
|
|
37878
37959
|
EmComputed.uniq = _emberRuntimeComputedReduce_computed_macros.uniq;
|
37879
37960
|
EmComputed.union = _emberRuntimeComputedReduce_computed_macros.union;
|
37880
37961
|
EmComputed.intersect = _emberRuntimeComputedReduce_computed_macros.intersect;
|
37962
|
+
EmComputed.collect = _emberRuntimeComputedReduce_computed_macros.collect;
|
37881
37963
|
|
37882
37964
|
_emberMetal.default.String = _emberRuntimeSystemString.default;
|
37883
37965
|
_emberMetal.default.Object = _emberRuntimeSystemObject.default;
|
@@ -38993,7 +39075,7 @@ enifed('ember-template-compiler/system/compile_options', ['exports', 'ember-meta
|
|
38993
39075
|
options.buildMeta = function buildMeta(program) {
|
38994
39076
|
return {
|
38995
39077
|
fragmentReason: fragmentReason(program),
|
38996
|
-
revision: 'Ember@2.3.0-beta.
|
39078
|
+
revision: 'Ember@2.3.0-beta.3',
|
38997
39079
|
loc: program.loc,
|
38998
39080
|
moduleName: options.moduleName
|
38999
39081
|
};
|
@@ -44283,7 +44365,7 @@ enifed('ember-views/views/collection_view', ['exports', 'ember-metal/core', 'emb
|
|
44283
44365
|
enifed('ember-views/views/container_view', ['exports', 'ember-metal/core', 'ember-metal/debug', 'ember-runtime/mixins/mutable_array', 'ember-runtime/system/native_array', 'ember-views/views/view', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/mixin', 'ember-metal/events', 'ember-htmlbars/templates/container-view'], function (exports, _emberMetalCore, _emberMetalDebug, _emberRuntimeMixinsMutable_array, _emberRuntimeSystemNative_array, _emberViewsViewsView, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalMixin, _emberMetalEvents, _emberHtmlbarsTemplatesContainerView) {
|
44284
44366
|
'use strict';
|
44285
44367
|
|
44286
|
-
_emberHtmlbarsTemplatesContainerView.default.meta.revision = 'Ember@2.3.0-beta.
|
44368
|
+
_emberHtmlbarsTemplatesContainerView.default.meta.revision = 'Ember@2.3.0-beta.3';
|
44287
44369
|
|
44288
44370
|
/**
|
44289
44371
|
@module ember
|
@@ -45851,10 +45933,6 @@ enifed('ember-views/views/view', ['exports', 'ember-metal/core', 'ember-metal/de
|
|
45851
45933
|
@submodule ember-views
|
45852
45934
|
*/
|
45853
45935
|
|
45854
|
-
_emberMetalDebug.warn('The VIEW_PRESERVES_CONTEXT flag has been removed and the functionality can no longer be disabled.', _emberMetalCore.default.ENV.VIEW_PRESERVES_CONTEXT !== false, {
|
45855
|
-
id: 'ember-views.view-preserves-context-flag',
|
45856
|
-
until: '2.0.0'
|
45857
|
-
});
|
45858
45936
|
/**
|
45859
45937
|
`Ember.View` is the class in Ember responsible for encapsulating templates of
|
45860
45938
|
HTML content, combining templates with data to render as sections of a page's
|
@@ -46901,7 +46979,7 @@ enifed("htmlbars-runtime/hooks", ["exports", "htmlbars-runtime/render", "morph-r
|
|
46901
46979
|
return {
|
46902
46980
|
meta: template.meta,
|
46903
46981
|
arity: template.arity,
|
46904
|
-
yield: yieldArgs,
|
46982
|
+
'yield': yieldArgs, // quoted since it's a reserved word, see issue #420
|
46905
46983
|
yieldItem: yieldItem(template, env, scope, morph, renderState, visitor),
|
46906
46984
|
raw: template,
|
46907
46985
|
|
@@ -47088,7 +47166,7 @@ enifed("htmlbars-runtime/hooks", ["exports", "htmlbars-runtime/render", "morph-r
|
|
47088
47166
|
function thisFor(options) {
|
47089
47167
|
return {
|
47090
47168
|
arity: options.template.arity,
|
47091
|
-
yield: options.template.yield,
|
47169
|
+
'yield': options.template.yield, // quoted since it's a reserved word, see issue #420
|
47092
47170
|
yieldItem: options.template.yieldItem,
|
47093
47171
|
yieldIn: options.template.yieldIn
|
47094
47172
|
};
|
@@ -47577,7 +47655,8 @@ enifed("htmlbars-runtime/hooks", ["exports", "htmlbars-runtime/render", "morph-r
|
|
47577
47655
|
return true;
|
47578
47656
|
},
|
47579
47657
|
|
47580
|
-
|
47658
|
+
// quoted since it's a reserved word, see issue #420
|
47659
|
+
'yield': function (morph, env, scope, params, hash, template, inverse, visitor) {
|
47581
47660
|
// the current scope is provided purely for the creation of shadow
|
47582
47661
|
// scopes; it should not be provided to user code.
|
47583
47662
|
|
@@ -49077,7 +49156,7 @@ enifed("htmlbars-util/template-utils", ["exports", "htmlbars-util/morph-utils",
|
|
49077
49156
|
// If we don't see the key in handledMorphs, it wasn't
|
49078
49157
|
// yielded in and we can safely remove it from DOM.
|
49079
49158
|
if (!(item.key in handledMorphs)) {
|
49080
|
-
|
49159
|
+
morphMap[item.key] = undefined;
|
49081
49160
|
clearMorph(item, env, true);
|
49082
49161
|
item.destroy();
|
49083
49162
|
}
|
@@ -49140,7 +49219,7 @@ enifed("htmlbars-util/template-utils", ["exports", "htmlbars-util/morph-utils",
|
|
49140
49219
|
|
49141
49220
|
while (item) {
|
49142
49221
|
var next = item.nextMorph;
|
49143
|
-
|
49222
|
+
morph.morphMap[item.key] = undefined;
|
49144
49223
|
clearMorph(item, env, true);
|
49145
49224
|
item.destroy();
|
49146
49225
|
|