ember-source 2.2.1 → 2.3.0.beta.1
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 +507 -239
- data/dist/ember-template-compiler.js +240 -157
- data/dist/ember-testing.js +21 -66
- data/dist/ember.debug.js +1354 -864
- data/dist/ember.js +1354 -864
- data/dist/ember.min.js +15 -14
- data/dist/ember.prod.js +1235 -782
- metadata +4 -4
@@ -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.
|
9
|
+
* @version 2.3.0-beta.1
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, requirejs, Ember;
|
@@ -43,6 +43,15 @@ var mainContext = this;
|
|
43
43
|
requirejs = require = requireModule = function(name) {
|
44
44
|
return internalRequire(name, null);
|
45
45
|
}
|
46
|
+
require['default'] = require;
|
47
|
+
|
48
|
+
function missingModule(name, referrerName) {
|
49
|
+
if (referrerName) {
|
50
|
+
throw new Error('Could not find module ' + name + ' required by: ' + referrerName);
|
51
|
+
} else {
|
52
|
+
throw new Error('Could not find module ' + name);
|
53
|
+
}
|
54
|
+
}
|
46
55
|
|
47
56
|
function internalRequire(name, referrerName) {
|
48
57
|
var exports = seen[name];
|
@@ -54,24 +63,22 @@ var mainContext = this;
|
|
54
63
|
exports = seen[name] = {};
|
55
64
|
|
56
65
|
if (!registry[name]) {
|
57
|
-
|
58
|
-
throw new Error('Could not find module ' + name + ' required by: ' + referrerName);
|
59
|
-
} else {
|
60
|
-
throw new Error('Could not find module ' + name);
|
61
|
-
}
|
66
|
+
missingModule(name, referrerName);
|
62
67
|
}
|
63
68
|
|
64
69
|
var mod = registry[name];
|
65
70
|
var deps = mod.deps;
|
66
71
|
var callback = mod.callback;
|
67
|
-
var reified = [];
|
68
72
|
var length = deps.length;
|
73
|
+
var reified = new Array(length);;
|
69
74
|
|
70
75
|
for (var i = 0; i < length; i++) {
|
71
76
|
if (deps[i] === 'exports') {
|
72
|
-
reified
|
77
|
+
reified[i] = exports;
|
78
|
+
} else if (deps[i] === 'require') {
|
79
|
+
reified[i] = require;
|
73
80
|
} else {
|
74
|
-
reified
|
81
|
+
reified[i] = internalRequire(deps[i], name);
|
75
82
|
}
|
76
83
|
}
|
77
84
|
|
@@ -1632,6 +1639,10 @@ enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/debug', 'embe
|
|
1632
1639
|
_emberMetalFeatures.FEATURES['features-stripped-test'] = true;
|
1633
1640
|
var featuresWereStripped = true;
|
1634
1641
|
|
1642
|
+
if (_emberMetalFeatures.default('features-stripped-test')) {
|
1643
|
+
exports.featuresWereStripped = featuresWereStripped = false;
|
1644
|
+
}
|
1645
|
+
|
1635
1646
|
delete _emberMetalFeatures.FEATURES['features-stripped-test'];
|
1636
1647
|
_warnIfUsingStrippedFeatureFlags(_emberMetalCore.default.ENV.FEATURES, featuresWereStripped);
|
1637
1648
|
|
@@ -2507,7 +2518,7 @@ enifed('ember-metal/chains', ['exports', 'ember-metal/debug', 'ember-metal/prope
|
|
2507
2518
|
return;
|
2508
2519
|
}
|
2509
2520
|
|
2510
|
-
var m = obj
|
2521
|
+
var m = _emberMetalMeta.peekMeta(obj);
|
2511
2522
|
|
2512
2523
|
if (!m || !m.readableChainWatchers()) {
|
2513
2524
|
return;
|
@@ -2555,7 +2566,7 @@ enifed('ember-metal/chains', ['exports', 'ember-metal/debug', 'ember-metal/prope
|
|
2555
2566
|
return;
|
2556
2567
|
}
|
2557
2568
|
|
2558
|
-
var meta = obj
|
2569
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
2559
2570
|
|
2560
2571
|
// check if object meant only to be a prototype
|
2561
2572
|
if (meta && meta.proto === obj) {
|
@@ -2761,7 +2772,7 @@ enifed('ember-metal/chains', ['exports', 'ember-metal/debug', 'ember-metal/prope
|
|
2761
2772
|
|
2762
2773
|
function finishChains(obj) {
|
2763
2774
|
// We only create meta if we really have to
|
2764
|
-
var m = obj
|
2775
|
+
var m = _emberMetalMeta.peekMeta(obj);
|
2765
2776
|
if (m) {
|
2766
2777
|
m = _emberMetalMeta.meta(obj);
|
2767
2778
|
|
@@ -3077,7 +3088,7 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/debug', 'ember-metal/pro
|
|
3077
3088
|
}
|
3078
3089
|
|
3079
3090
|
// don't create objects just to invalidate
|
3080
|
-
var meta = obj
|
3091
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
3081
3092
|
if (!meta || meta.source !== obj) {
|
3082
3093
|
return;
|
3083
3094
|
}
|
@@ -3301,22 +3312,20 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/debug', 'ember-metal/pro
|
|
3301
3312
|
computed property function. You can use this helper to define properties
|
3302
3313
|
with mixins or via `Ember.defineProperty()`.
|
3303
3314
|
|
3304
|
-
If you pass function as argument
|
3305
|
-
|
3306
|
-
|
3307
|
-
The `get` function should accept two parameters, `key` and `value`. If `value` is not
|
3308
|
-
undefined you should set the `value` first. In either case return the
|
3309
|
-
current value of the property.
|
3310
|
-
|
3311
|
-
A computed property defined in this way might look like this:
|
3315
|
+
If you pass a function as an argument, it will be used as a getter. A computed
|
3316
|
+
property defined in this way might look like this:
|
3312
3317
|
|
3313
3318
|
```js
|
3314
3319
|
let Person = Ember.Object.extend({
|
3315
|
-
|
3316
|
-
|
3320
|
+
init() {
|
3321
|
+
this._super(...arguments);
|
3322
|
+
|
3323
|
+
this.firstName = 'Betty';
|
3324
|
+
this.lastName = 'Jones';
|
3325
|
+
},
|
3317
3326
|
|
3318
3327
|
fullName: Ember.computed('firstName', 'lastName', function() {
|
3319
|
-
return this.get('firstName')
|
3328
|
+
return `${this.get('firstName')} ${this.get('lastName')}`;
|
3320
3329
|
})
|
3321
3330
|
});
|
3322
3331
|
|
@@ -3328,14 +3337,45 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/debug', 'ember-metal/pro
|
|
3328
3337
|
client.get('fullName'); // 'Betty Fuller'
|
3329
3338
|
```
|
3330
3339
|
|
3340
|
+
You can pass a hash with two functions, `get` and `set`, as an
|
3341
|
+
argument to provide both a getter and setter:
|
3342
|
+
|
3343
|
+
```js
|
3344
|
+
let Person = Ember.Object.extend({
|
3345
|
+
init() {
|
3346
|
+
this._super(...arguments);
|
3347
|
+
|
3348
|
+
this.firstName = 'Betty';
|
3349
|
+
this.lastName = 'Jones';
|
3350
|
+
},
|
3351
|
+
|
3352
|
+
fullName: Ember.computed({
|
3353
|
+
get(key) {
|
3354
|
+
return `${this.get('firstName')} ${this.get('lastName')}`;
|
3355
|
+
},
|
3356
|
+
set(key, value) {
|
3357
|
+
let [firstName, lastName] = value.split(/\s+/);
|
3358
|
+
this.setProperties({ firstName, lastName });
|
3359
|
+
return value;
|
3360
|
+
}
|
3361
|
+
});
|
3362
|
+
})
|
3363
|
+
|
3364
|
+
let client = Person.create();
|
3365
|
+
client.get('firstName'); // 'Betty'
|
3366
|
+
|
3367
|
+
client.set('fullName', 'Carroll Fuller');
|
3368
|
+
client.get('firstName'); // 'Carroll'
|
3369
|
+
```
|
3370
|
+
|
3371
|
+
The `set` function should accept two parameters, `key` and `value`. The value
|
3372
|
+
returned from `set` will be the new value of the property.
|
3373
|
+
|
3331
3374
|
_Note: This is the preferred way to define computed properties when writing third-party
|
3332
3375
|
libraries that depend on or use Ember, since there is no guarantee that the user
|
3333
|
-
will have prototype extensions enabled._
|
3376
|
+
will have [prototype Extensions](http://emberjs.com/guides/configuring-ember/disabling-prototype-extensions/) enabled._
|
3334
3377
|
|
3335
|
-
|
3336
|
-
[Prototype Extensions](http://emberjs.com/guides/configuring-ember/disabling-prototype-extensions/).
|
3337
|
-
The alternative syntax might look like this
|
3338
|
-
(if prototype extensions are enabled, which is the default behavior):
|
3378
|
+
The alternative syntax, with prototype extensions, might look like:
|
3339
3379
|
|
3340
3380
|
```js
|
3341
3381
|
fullName() {
|
@@ -3385,7 +3425,7 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/debug', 'ember-metal/pro
|
|
3385
3425
|
@public
|
3386
3426
|
*/
|
3387
3427
|
function cacheFor(obj, key) {
|
3388
|
-
var meta = obj
|
3428
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
3389
3429
|
var cache = meta && meta.source === obj && meta.readableCache();
|
3390
3430
|
var ret = cache && cache[key];
|
3391
3431
|
|
@@ -3419,7 +3459,7 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/debug', 'ember-metal/pro
|
|
3419
3459
|
exports.computed = computed;
|
3420
3460
|
exports.cacheFor = cacheFor;
|
3421
3461
|
});
|
3422
|
-
enifed('ember-metal/computed_macros', ['exports', 'ember-metal/
|
3462
|
+
enifed('ember-metal/computed_macros', ['exports', 'ember-metal/debug', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/computed', 'ember-metal/is_empty', 'ember-metal/is_none', 'ember-metal/alias'], function (exports, _emberMetalDebug, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalComputed, _emberMetalIs_empty, _emberMetalIs_none, _emberMetalAlias) {
|
3423
3463
|
'use strict';
|
3424
3464
|
|
3425
3465
|
exports.empty = empty;
|
@@ -3925,47 +3965,6 @@ enifed('ember-metal/computed_macros', ['exports', 'ember-metal/core', 'ember-met
|
|
3925
3965
|
});
|
3926
3966
|
|
3927
3967
|
exports.or = or;
|
3928
|
-
/**
|
3929
|
-
A computed property that returns the array of values
|
3930
|
-
for the provided dependent properties.
|
3931
|
-
|
3932
|
-
Example
|
3933
|
-
|
3934
|
-
```javascript
|
3935
|
-
var Hamster = Ember.Object.extend({
|
3936
|
-
clothes: Ember.computed.collect('hat', 'shirt')
|
3937
|
-
});
|
3938
|
-
|
3939
|
-
var hamster = Hamster.create();
|
3940
|
-
|
3941
|
-
hamster.get('clothes'); // [null, null]
|
3942
|
-
hamster.set('hat', 'Camp Hat');
|
3943
|
-
hamster.set('shirt', 'Camp Shirt');
|
3944
|
-
hamster.get('clothes'); // ['Camp Hat', 'Camp Shirt']
|
3945
|
-
```
|
3946
|
-
|
3947
|
-
@method collect
|
3948
|
-
@for Ember.computed
|
3949
|
-
@param {String} dependentKey*
|
3950
|
-
@return {Ember.ComputedProperty} computed property which maps
|
3951
|
-
values of all passed in properties to an array.
|
3952
|
-
@public
|
3953
|
-
*/
|
3954
|
-
var collect = generateComputedWithProperties(function (properties) {
|
3955
|
-
var res = _emberMetalCore.default.A();
|
3956
|
-
for (var key in properties) {
|
3957
|
-
if (properties.hasOwnProperty(key)) {
|
3958
|
-
if (_emberMetalIs_none.default(properties[key])) {
|
3959
|
-
res.push(null);
|
3960
|
-
} else {
|
3961
|
-
res.push(properties[key]);
|
3962
|
-
}
|
3963
|
-
}
|
3964
|
-
}
|
3965
|
-
return res;
|
3966
|
-
});
|
3967
|
-
|
3968
|
-
exports.collect = collect;
|
3969
3968
|
/**
|
3970
3969
|
Creates a new property that is an alias for another property
|
3971
3970
|
on an object. Calls to `get` or `set` this property behave as
|
@@ -4136,7 +4135,7 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
4136
4135
|
|
4137
4136
|
@class Ember
|
4138
4137
|
@static
|
4139
|
-
@version 2.
|
4138
|
+
@version 2.3.0-beta.1
|
4140
4139
|
@public
|
4141
4140
|
*/
|
4142
4141
|
|
@@ -4180,11 +4179,11 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
4180
4179
|
|
4181
4180
|
@property VERSION
|
4182
4181
|
@type String
|
4183
|
-
@default '2.
|
4182
|
+
@default '2.3.0-beta.1'
|
4184
4183
|
@static
|
4185
4184
|
@public
|
4186
4185
|
*/
|
4187
|
-
Ember.VERSION = '2.
|
4186
|
+
Ember.VERSION = '2.3.0-beta.1';
|
4188
4187
|
|
4189
4188
|
/**
|
4190
4189
|
The hash of environment variables used to control various configuration
|
@@ -4639,7 +4638,7 @@ enifed('ember-metal/events', ['exports', 'ember-metal/debug', 'ember-metal/utils
|
|
4639
4638
|
}
|
4640
4639
|
|
4641
4640
|
function accumulateListeners(obj, eventName, otherActions) {
|
4642
|
-
var meta = obj
|
4641
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
4643
4642
|
if (!meta) {
|
4644
4643
|
return;
|
4645
4644
|
}
|
@@ -4799,7 +4798,7 @@ enifed('ember-metal/events', ['exports', 'ember-metal/debug', 'ember-metal/utils
|
|
4799
4798
|
|
4800
4799
|
function sendEvent(obj, eventName, params, actions) {
|
4801
4800
|
if (!actions) {
|
4802
|
-
var meta = obj
|
4801
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
4803
4802
|
actions = meta && meta.matchingListeners(eventName);
|
4804
4803
|
}
|
4805
4804
|
|
@@ -4851,7 +4850,7 @@ enifed('ember-metal/events', ['exports', 'ember-metal/debug', 'ember-metal/utils
|
|
4851
4850
|
*/
|
4852
4851
|
|
4853
4852
|
function hasListeners(obj, eventName) {
|
4854
|
-
var meta = obj
|
4853
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
4855
4854
|
if (!meta) {
|
4856
4855
|
return false;
|
4857
4856
|
}
|
@@ -4868,7 +4867,7 @@ enifed('ember-metal/events', ['exports', 'ember-metal/debug', 'ember-metal/utils
|
|
4868
4867
|
|
4869
4868
|
function listenersFor(obj, eventName) {
|
4870
4869
|
var ret = [];
|
4871
|
-
var meta = obj
|
4870
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
4872
4871
|
var actions = meta && meta.matchingListeners(eventName);
|
4873
4872
|
|
4874
4873
|
if (!actions) {
|
@@ -5094,7 +5093,7 @@ enifed('ember-metal/get_properties', ['exports', 'ember-metal/property_get'], fu
|
|
5094
5093
|
return ret;
|
5095
5094
|
}
|
5096
5095
|
});
|
5097
|
-
enifed('ember-metal/injected_property', ['exports', 'ember-metal/debug', 'ember-metal/computed', 'ember-metal/alias', 'ember-metal/properties'], function (exports, _emberMetalDebug, _emberMetalComputed, _emberMetalAlias, _emberMetalProperties) {
|
5096
|
+
enifed('ember-metal/injected_property', ['exports', 'ember-metal/debug', 'ember-metal/computed', 'ember-metal/alias', 'ember-metal/properties', 'container/owner'], function (exports, _emberMetalDebug, _emberMetalComputed, _emberMetalAlias, _emberMetalProperties, _containerOwner) {
|
5098
5097
|
'use strict';
|
5099
5098
|
|
5100
5099
|
/**
|
@@ -5118,11 +5117,12 @@ enifed('ember-metal/injected_property', ['exports', 'ember-metal/debug', 'ember-
|
|
5118
5117
|
|
5119
5118
|
function injectedPropertyGet(keyName) {
|
5120
5119
|
var desc = this[keyName];
|
5120
|
+
var owner = _containerOwner.getOwner(this);
|
5121
5121
|
|
5122
5122
|
_emberMetalDebug.assert('InjectedProperties should be defined with the Ember.inject computed property macros.', desc && desc.isDescriptor && desc.type);
|
5123
|
-
_emberMetalDebug.assert('Attempting to lookup an injected property on an object without a container, ensure that the object was instantiated via a container.',
|
5123
|
+
_emberMetalDebug.assert('Attempting to lookup an injected property on an object without a container, ensure that the object was instantiated via a container.', owner);
|
5124
5124
|
|
5125
|
-
return
|
5125
|
+
return owner.lookup(desc.type + ':' + (desc.name || keyName));
|
5126
5126
|
}
|
5127
5127
|
|
5128
5128
|
InjectedProperty.prototype = Object.create(_emberMetalProperties.Descriptor.prototype);
|
@@ -5445,6 +5445,8 @@ enifed('ember-metal/is_empty', ['exports', 'ember-metal/property_get', 'ember-me
|
|
5445
5445
|
Ember.isEmpty({}); // false
|
5446
5446
|
Ember.isEmpty('Adam Hawkins'); // false
|
5447
5447
|
Ember.isEmpty([0,1,2]); // false
|
5448
|
+
Ember.isEmpty('\n\t'); // false
|
5449
|
+
Ember.isEmpty(' '); // false
|
5448
5450
|
```
|
5449
5451
|
|
5450
5452
|
@method isEmpty
|
@@ -5611,6 +5613,12 @@ enifed('ember-metal/libraries', ['exports', 'ember-metal/debug', 'ember-metal/fe
|
|
5611
5613
|
}
|
5612
5614
|
};
|
5613
5615
|
|
5616
|
+
if (_emberMetalFeatures.default('ember-libraries-isregistered')) {
|
5617
|
+
Libraries.prototype.isRegistered = function (name) {
|
5618
|
+
return !!this._getLibraryByName(name);
|
5619
|
+
};
|
5620
|
+
}
|
5621
|
+
|
5614
5622
|
exports.default = Libraries;
|
5615
5623
|
});
|
5616
5624
|
enifed('ember-metal/logger', ['exports', 'ember-metal/core', 'ember-metal/error'], function (exports, _emberMetalCore, _emberMetalError) {
|
@@ -6282,6 +6290,9 @@ enifed('ember-metal/merge', ['exports', 'ember-metal/debug', 'ember-metal/featur
|
|
6282
6290
|
*/
|
6283
6291
|
|
6284
6292
|
function merge(original, updates) {
|
6293
|
+
if (_emberMetalFeatures.default('ember-metal-ember-assign')) {
|
6294
|
+
_emberMetalDebug.deprecate('Usage of `Ember.merge` is deprecated, use `Ember.assign` instead.', false, { id: 'ember-metal.merge', until: '3.0.0' });
|
6295
|
+
}
|
6285
6296
|
|
6286
6297
|
if (!updates || typeof updates !== 'object') {
|
6287
6298
|
return original;
|
@@ -6305,6 +6316,8 @@ enifed('ember-metal/meta', ['exports', 'ember-metal/meta_listeners', 'ember-meta
|
|
6305
6316
|
// https://bugs.webkit.org/show_bug.cgi?id=138038 is fixed
|
6306
6317
|
|
6307
6318
|
exports.meta = meta;
|
6319
|
+
exports.peekMeta = peekMeta;
|
6320
|
+
exports.deleteMeta = deleteMeta;
|
6308
6321
|
|
6309
6322
|
/**
|
6310
6323
|
@module ember-metal
|
@@ -6343,6 +6356,7 @@ enifed('ember-metal/meta', ['exports', 'ember-metal/meta_listeners', 'ember-meta
|
|
6343
6356
|
};
|
6344
6357
|
|
6345
6358
|
var memberNames = Object.keys(members);
|
6359
|
+
var META_FIELD = '__ember_meta__';
|
6346
6360
|
|
6347
6361
|
function Meta(obj, parentMeta) {
|
6348
6362
|
this._cache = undefined;
|
@@ -6601,14 +6615,25 @@ enifed('ember-metal/meta', ['exports', 'ember-metal/meta_listeners', 'ember-meta
|
|
6601
6615
|
|
6602
6616
|
exports.META_DESC = META_DESC;
|
6603
6617
|
var EMBER_META_PROPERTY = {
|
6604
|
-
name:
|
6618
|
+
name: META_FIELD,
|
6605
6619
|
descriptor: META_DESC
|
6606
6620
|
};
|
6607
6621
|
|
6608
|
-
//
|
6609
|
-
var
|
6622
|
+
// choose the one appropriate for given platform
|
6623
|
+
var setMeta = function (obj, meta) {
|
6624
|
+
// if `null` already, just set it to the new value
|
6625
|
+
// otherwise define property first
|
6626
|
+
if (obj[META_FIELD] !== null) {
|
6627
|
+
if (obj.__defineNonEnumerable) {
|
6628
|
+
obj.__defineNonEnumerable(EMBER_META_PROPERTY);
|
6629
|
+
} else {
|
6630
|
+
Object.defineProperty(obj, META_FIELD, META_DESC);
|
6631
|
+
}
|
6632
|
+
}
|
6633
|
+
|
6634
|
+
obj[META_FIELD] = meta;
|
6635
|
+
};
|
6610
6636
|
|
6611
|
-
exports.EMPTY_META = EMPTY_META;
|
6612
6637
|
/**
|
6613
6638
|
Retrieves the meta hash for an object. If `writable` is true ensures the
|
6614
6639
|
hash is writable for this object as well.
|
@@ -6628,34 +6653,32 @@ enifed('ember-metal/meta', ['exports', 'ember-metal/meta_listeners', 'ember-meta
|
|
6628
6653
|
@return {Object} the meta hash for an object
|
6629
6654
|
*/
|
6630
6655
|
|
6631
|
-
function meta(obj
|
6632
|
-
var
|
6633
|
-
|
6634
|
-
return ret || EMPTY_META;
|
6635
|
-
}
|
6656
|
+
function meta(obj) {
|
6657
|
+
var maybeMeta = peekMeta(obj);
|
6658
|
+
var parent = undefined;
|
6636
6659
|
|
6637
|
-
|
6638
|
-
|
6660
|
+
// remove this code, in-favor of explicit parent
|
6661
|
+
if (maybeMeta) {
|
6662
|
+
if (maybeMeta.source === obj) {
|
6663
|
+
return maybeMeta;
|
6664
|
+
}
|
6665
|
+
parent = maybeMeta;
|
6639
6666
|
}
|
6640
6667
|
|
6641
|
-
|
6642
|
-
|
6643
|
-
|
6644
|
-
|
6645
|
-
}
|
6668
|
+
var newMeta = new Meta(obj, parent);
|
6669
|
+
setMeta(obj, newMeta);
|
6670
|
+
return newMeta;
|
6671
|
+
}
|
6646
6672
|
|
6647
|
-
|
6648
|
-
|
6649
|
-
|
6650
|
-
if (obj.__defineNonEnumerable) {
|
6651
|
-
obj.__defineNonEnumerable(EMBER_META_PROPERTY);
|
6652
|
-
} else {
|
6653
|
-
Object.defineProperty(obj, '__ember_meta__', META_DESC);
|
6654
|
-
}
|
6655
|
-
}
|
6656
|
-
obj.__ember_meta__ = ret;
|
6673
|
+
function peekMeta(obj) {
|
6674
|
+
return obj[META_FIELD];
|
6675
|
+
}
|
6657
6676
|
|
6658
|
-
|
6677
|
+
function deleteMeta(obj) {
|
6678
|
+
if (typeof obj[META_FIELD] !== 'object') {
|
6679
|
+
return;
|
6680
|
+
}
|
6681
|
+
obj[META_FIELD] = null;
|
6659
6682
|
}
|
6660
6683
|
});
|
6661
6684
|
enifed('ember-metal/meta_listeners', ['exports'], function (exports) {
|
@@ -6840,7 +6863,6 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
6840
6863
|
@module ember
|
6841
6864
|
@submodule ember-metal
|
6842
6865
|
*/
|
6843
|
-
|
6844
6866
|
exports.mixin = mixin;
|
6845
6867
|
exports.default = Mixin;
|
6846
6868
|
exports.required = required;
|
@@ -7330,6 +7352,10 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
7330
7352
|
this.mixins = undefined;
|
7331
7353
|
}
|
7332
7354
|
this.ownerConstructor = undefined;
|
7355
|
+
this._without = undefined;
|
7356
|
+
this[_emberMetalUtils.GUID_KEY] = null;
|
7357
|
+
this[_emberMetalUtils.GUID_KEY + '_name'] = null;
|
7358
|
+
_emberMetalDebug.debugSeal(this);
|
7333
7359
|
}
|
7334
7360
|
|
7335
7361
|
Mixin._apply = applyMixin;
|
@@ -7446,7 +7472,7 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
7446
7472
|
if (obj instanceof Mixin) {
|
7447
7473
|
return _detect(obj, this, {});
|
7448
7474
|
}
|
7449
|
-
var m = obj
|
7475
|
+
var m = _emberMetalMeta.peekMeta(obj);
|
7450
7476
|
if (!m) {
|
7451
7477
|
return false;
|
7452
7478
|
}
|
@@ -7497,10 +7523,12 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
7497
7523
|
return ret;
|
7498
7524
|
};
|
7499
7525
|
|
7526
|
+
_emberMetalDebug.debugSeal(MixinPrototype);
|
7527
|
+
|
7500
7528
|
// returns the mixins currently applied to the specified object
|
7501
7529
|
// TODO: Make Ember.mixin
|
7502
7530
|
Mixin.mixins = function (obj) {
|
7503
|
-
var m = obj
|
7531
|
+
var m = _emberMetalMeta.peekMeta(obj);
|
7504
7532
|
var ret = [];
|
7505
7533
|
if (!m) {
|
7506
7534
|
return ret;
|
@@ -7591,7 +7619,7 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
7591
7619
|
@param {String} propertyNames*
|
7592
7620
|
@param {Function} func
|
7593
7621
|
@return func
|
7594
|
-
@
|
7622
|
+
@public
|
7595
7623
|
*/
|
7596
7624
|
|
7597
7625
|
function observer() {
|
@@ -8100,10 +8128,10 @@ enifed('ember-metal/properties', ['exports', 'ember-metal/debug', 'ember-metal/f
|
|
8100
8128
|
return this;
|
8101
8129
|
}
|
8102
8130
|
});
|
8103
|
-
enifed('ember-metal/property_events', ['exports', 'ember-metal/utils', 'ember-metal/events', 'ember-metal/observer_set'], function (exports, _emberMetalUtils, _emberMetalEvents, _emberMetalObserver_set) {
|
8131
|
+
enifed('ember-metal/property_events', ['exports', 'ember-metal/utils', 'ember-metal/meta', 'ember-metal/events', 'ember-metal/observer_set', 'ember-metal/symbol'], function (exports, _emberMetalUtils, _emberMetalMeta, _emberMetalEvents, _emberMetalObserver_set, _emberMetalSymbol) {
|
8104
8132
|
'use strict';
|
8105
8133
|
|
8106
|
-
var PROPERTY_DID_CHANGE =
|
8134
|
+
var PROPERTY_DID_CHANGE = _emberMetalSymbol.default('PROPERTY_DID_CHANGE');
|
8107
8135
|
|
8108
8136
|
exports.PROPERTY_DID_CHANGE = PROPERTY_DID_CHANGE;
|
8109
8137
|
var beforeObserverSet = new _emberMetalObserver_set.default();
|
@@ -8131,7 +8159,7 @@ enifed('ember-metal/property_events', ['exports', 'ember-metal/utils', 'ember-me
|
|
8131
8159
|
@private
|
8132
8160
|
*/
|
8133
8161
|
function propertyWillChange(obj, keyName) {
|
8134
|
-
var m = obj
|
8162
|
+
var m = _emberMetalMeta.peekMeta(obj);
|
8135
8163
|
var watching = m && m.peekWatching(keyName) > 0 || keyName === 'length';
|
8136
8164
|
var proto = m && m.proto;
|
8137
8165
|
var possibleDesc = obj[keyName];
|
@@ -8171,7 +8199,7 @@ enifed('ember-metal/property_events', ['exports', 'ember-metal/utils', 'ember-me
|
|
8171
8199
|
@private
|
8172
8200
|
*/
|
8173
8201
|
function propertyDidChange(obj, keyName) {
|
8174
|
-
var m = obj
|
8202
|
+
var m = _emberMetalMeta.peekMeta(obj);
|
8175
8203
|
var watching = m && m.peekWatching(keyName) > 0 || keyName === 'length';
|
8176
8204
|
var proto = m && m.proto;
|
8177
8205
|
var possibleDesc = obj[keyName];
|
@@ -8383,7 +8411,7 @@ enifed('ember-metal/property_events', ['exports', 'ember-metal/utils', 'ember-me
|
|
8383
8411
|
exports.endPropertyChanges = endPropertyChanges;
|
8384
8412
|
exports.changeProperties = changeProperties;
|
8385
8413
|
});
|
8386
|
-
enifed('ember-metal/property_get', ['exports', 'ember-metal/core', 'ember-metal/debug', 'ember-metal/features', 'ember-metal/error', 'ember-metal/path_cache'], function (exports, _emberMetalCore, _emberMetalDebug, _emberMetalFeatures, _emberMetalError, _emberMetalPath_cache) {
|
8414
|
+
enifed('ember-metal/property_get', ['exports', 'ember-metal/core', 'ember-metal/debug', 'ember-metal/features', 'ember-metal/error', 'ember-metal/path_cache', 'ember-metal/meta'], function (exports, _emberMetalCore, _emberMetalDebug, _emberMetalFeatures, _emberMetalError, _emberMetalPath_cache, _emberMetalMeta) {
|
8387
8415
|
/**
|
8388
8416
|
@module ember-metal
|
8389
8417
|
*/
|
@@ -8441,9 +8469,9 @@ enifed('ember-metal/property_get', ['exports', 'ember-metal/core', 'ember-metal/
|
|
8441
8469
|
return obj;
|
8442
8470
|
}
|
8443
8471
|
|
8444
|
-
var meta = obj
|
8445
|
-
var
|
8446
|
-
var desc =
|
8472
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
8473
|
+
var value = obj[keyName];
|
8474
|
+
var desc = value !== null && typeof value === 'object' && value.isDescriptor ? value : undefined;
|
8447
8475
|
var ret;
|
8448
8476
|
|
8449
8477
|
if (desc === undefined && _emberMetalPath_cache.isPath(keyName)) {
|
@@ -8456,7 +8484,7 @@ enifed('ember-metal/property_get', ['exports', 'ember-metal/core', 'ember-metal/
|
|
8456
8484
|
if (meta && meta.peekWatching(keyName) > 0) {
|
8457
8485
|
ret = meta.peekValues(keyName);
|
8458
8486
|
} else {
|
8459
|
-
ret =
|
8487
|
+
ret = value;
|
8460
8488
|
}
|
8461
8489
|
|
8462
8490
|
if (ret === undefined && 'object' === typeof obj && !(keyName in obj) && 'function' === typeof obj.unknownProperty) {
|
@@ -8540,6 +8568,23 @@ enifed('ember-metal/property_get', ['exports', 'ember-metal/core', 'ember-metal/
|
|
8540
8568
|
return root;
|
8541
8569
|
}
|
8542
8570
|
|
8571
|
+
/**
|
8572
|
+
Retrieves the value of a property from an Object, or a default value in the
|
8573
|
+
case that the property returns `undefined`.
|
8574
|
+
|
8575
|
+
```javascript
|
8576
|
+
Ember.getWithDefault(person, 'lastName', 'Doe');
|
8577
|
+
```
|
8578
|
+
|
8579
|
+
@method getWithDefault
|
8580
|
+
@for Ember
|
8581
|
+
@param {Object} obj The object to retrieve from.
|
8582
|
+
@param {String} keyName The name of the property to retrieve
|
8583
|
+
@param {Object} defaultValue The value to return if the property value is undefined
|
8584
|
+
@return {Object} The property value or the defaultValue.
|
8585
|
+
@public
|
8586
|
+
*/
|
8587
|
+
|
8543
8588
|
function getWithDefault(root, key, defaultValue) {
|
8544
8589
|
var value = get(root, key);
|
8545
8590
|
|
@@ -8551,7 +8596,7 @@ enifed('ember-metal/property_get', ['exports', 'ember-metal/core', 'ember-metal/
|
|
8551
8596
|
|
8552
8597
|
exports.default = get;
|
8553
8598
|
});
|
8554
|
-
enifed('ember-metal/property_set', ['exports', 'ember-metal/debug', 'ember-metal/features', 'ember-metal/property_get', 'ember-metal/property_events', 'ember-metal/properties', 'ember-metal/error', 'ember-metal/path_cache'], function (exports, _emberMetalDebug, _emberMetalFeatures, _emberMetalProperty_get, _emberMetalProperty_events, _emberMetalProperties, _emberMetalError, _emberMetalPath_cache) {
|
8599
|
+
enifed('ember-metal/property_set', ['exports', 'ember-metal/debug', 'ember-metal/features', 'ember-metal/property_get', 'ember-metal/property_events', 'ember-metal/properties', 'ember-metal/error', 'ember-metal/path_cache', 'ember-metal/meta'], function (exports, _emberMetalDebug, _emberMetalFeatures, _emberMetalProperty_get, _emberMetalProperty_events, _emberMetalProperties, _emberMetalError, _emberMetalPath_cache, _emberMetalMeta) {
|
8555
8600
|
'use strict';
|
8556
8601
|
|
8557
8602
|
exports.set = set;
|
@@ -8580,7 +8625,7 @@ enifed('ember-metal/property_set', ['exports', 'ember-metal/debug', 'ember-metal
|
|
8580
8625
|
|
8581
8626
|
var meta, possibleDesc, desc;
|
8582
8627
|
if (obj) {
|
8583
|
-
meta = obj
|
8628
|
+
meta = _emberMetalMeta.peekMeta(obj);
|
8584
8629
|
possibleDesc = obj[keyName];
|
8585
8630
|
desc = possibleDesc !== null && typeof possibleDesc === 'object' && possibleDesc.isDescriptor ? possibleDesc : undefined;
|
8586
8631
|
}
|
@@ -9548,7 +9593,11 @@ enifed('ember-metal/streams/dependency', ['exports', 'ember-metal/debug', 'ember
|
|
9548
9593
|
enifed('ember-metal/streams/key-stream', ['exports', 'ember-metal/debug', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/observer', 'ember-metal/streams/stream', 'ember-metal/streams/utils'], function (exports, _emberMetalDebug, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalObserver, _emberMetalStreamsStream, _emberMetalStreamsUtils) {
|
9549
9594
|
'use strict';
|
9550
9595
|
|
9551
|
-
|
9596
|
+
function labelFor(source, key) {
|
9597
|
+
return source.label ? source.label + '.' + key : key;
|
9598
|
+
}
|
9599
|
+
|
9600
|
+
exports.default = _emberMetalStreamsStream.default.extend({
|
9552
9601
|
init: function (source, key) {
|
9553
9602
|
_emberMetalDebug.assert('KeyStream error: source must be a stream', _emberMetalStreamsUtils.isStream(source)); // TODO: This isn't necessary.
|
9554
9603
|
_emberMetalDebug.assert('KeyStream error: key must be a non-empty string', typeof key === 'string' && key.length > 0);
|
@@ -9565,9 +9614,17 @@ enifed('ember-metal/streams/key-stream', ['exports', 'ember-metal/debug', 'ember
|
|
9565
9614
|
|
9566
9615
|
compute: function () {
|
9567
9616
|
var object = this.sourceDep.getValue();
|
9568
|
-
|
9617
|
+
var type = typeof object;
|
9618
|
+
|
9619
|
+
if (!object || type === 'boolean') {
|
9620
|
+
return;
|
9621
|
+
}
|
9622
|
+
|
9623
|
+
if (type === 'object') {
|
9569
9624
|
return _emberMetalProperty_get.get(object, this.key);
|
9570
9625
|
}
|
9626
|
+
|
9627
|
+
return object[this.key];
|
9571
9628
|
},
|
9572
9629
|
|
9573
9630
|
setValue: function (value) {
|
@@ -9612,12 +9669,6 @@ enifed('ember-metal/streams/key-stream', ['exports', 'ember-metal/debug', 'ember
|
|
9612
9669
|
this._clearObservedObject();
|
9613
9670
|
}
|
9614
9671
|
});
|
9615
|
-
|
9616
|
-
function labelFor(source, key) {
|
9617
|
-
return source.label ? source.label + '.' + key : key;
|
9618
|
-
}
|
9619
|
-
|
9620
|
-
exports.default = KeyStream;
|
9621
9672
|
});
|
9622
9673
|
enifed('ember-metal/streams/proxy-stream', ['exports', 'ember-runtime/system/object', 'ember-metal/streams/stream'], function (exports, _emberRuntimeSystemObject, _emberMetalStreamsStream) {
|
9623
9674
|
'use strict';
|
@@ -9651,7 +9702,7 @@ enifed('ember-metal/streams/proxy-stream', ['exports', 'ember-runtime/system/obj
|
|
9651
9702
|
|
9652
9703
|
exports.default = ProxyStream;
|
9653
9704
|
});
|
9654
|
-
enifed('ember-metal/streams/stream', ['exports', 'ember-metal/
|
9705
|
+
enifed('ember-metal/streams/stream', ['exports', 'ember-metal/assign', 'ember-metal/debug', 'ember-metal/path_cache', 'ember-metal/observer', 'ember-metal/streams/utils', 'ember-metal/empty_object', 'ember-metal/streams/subscriber', 'ember-metal/streams/dependency', 'ember-metal/utils', 'require'], function (exports, _emberMetalAssign, _emberMetalDebug, _emberMetalPath_cache, _emberMetalObserver, _emberMetalStreamsUtils, _emberMetalEmpty_object, _emberMetalStreamsSubscriber, _emberMetalStreamsDependency, _emberMetalUtils, _require) {
|
9655
9706
|
'use strict';
|
9656
9707
|
|
9657
9708
|
exports.wrap = wrap;
|
@@ -9693,7 +9744,7 @@ enifed('ember-metal/streams/stream', ['exports', 'ember-metal/core', 'ember-meta
|
|
9693
9744
|
},
|
9694
9745
|
|
9695
9746
|
_makeChildStream: function (key) {
|
9696
|
-
KeyStream = KeyStream ||
|
9747
|
+
KeyStream = KeyStream || _require.default('ember-metal/streams/key-stream').default;
|
9697
9748
|
return new KeyStream(this, key);
|
9698
9749
|
},
|
9699
9750
|
|
@@ -9833,7 +9884,7 @@ enifed('ember-metal/streams/stream', ['exports', 'ember-metal/core', 'ember-meta
|
|
9833
9884
|
if (value !== this.observedProxy) {
|
9834
9885
|
this._clearObservedProxy();
|
9835
9886
|
|
9836
|
-
ProxyMixin = ProxyMixin ||
|
9887
|
+
ProxyMixin = ProxyMixin || _require.default('ember-runtime/mixins/-proxy').default;
|
9837
9888
|
|
9838
9889
|
if (ProxyMixin.detect(value)) {
|
9839
9890
|
_emberMetalObserver.addObserver(value, 'content', this, this.notify);
|
@@ -10428,8 +10479,18 @@ enifed('ember-metal/streams/utils', ['exports', 'ember-metal/debug', 'ember-meta
|
|
10428
10479
|
}
|
10429
10480
|
}
|
10430
10481
|
});
|
10431
|
-
enifed(
|
10432
|
-
|
10482
|
+
enifed('ember-metal/symbol', ['exports', 'ember-metal/utils'], function (exports, _emberMetalUtils) {
|
10483
|
+
'use strict';
|
10484
|
+
|
10485
|
+
exports.default = symbol;
|
10486
|
+
|
10487
|
+
function symbol(debugName) {
|
10488
|
+
// TODO: Investigate using platform symbols, but we do not
|
10489
|
+
// want to require non-enumerability for this API, which
|
10490
|
+
// would introduce a large cost.
|
10491
|
+
|
10492
|
+
return _emberMetalUtils.intern(debugName + ' [id=' + _emberMetalUtils.GUID_KEY + Math.floor(Math.random() * new Date()) + ']');
|
10493
|
+
}
|
10433
10494
|
});
|
10434
10495
|
enifed('ember-metal/utils', ['exports'], function (exports) {
|
10435
10496
|
'no use strict';
|
@@ -10448,7 +10509,7 @@ enifed('ember-metal/utils', ['exports'], function (exports) {
|
|
10448
10509
|
@return {Number} the uuid
|
10449
10510
|
*/
|
10450
10511
|
exports.uuid = uuid;
|
10451
|
-
exports.
|
10512
|
+
exports.intern = intern;
|
10452
10513
|
exports.generateGuid = generateGuid;
|
10453
10514
|
exports.guidFor = guidFor;
|
10454
10515
|
exports.wrap = wrap;
|
@@ -10525,6 +10586,7 @@ enifed('ember-metal/utils', ['exports'], function (exports) {
|
|
10525
10586
|
@private
|
10526
10587
|
@return {String} interned version of the provided string
|
10527
10588
|
*/
|
10589
|
+
|
10528
10590
|
function intern(str) {
|
10529
10591
|
var obj = {};
|
10530
10592
|
obj[str] = 1;
|
@@ -10536,14 +10598,6 @@ enifed('ember-metal/utils', ['exports'], function (exports) {
|
|
10536
10598
|
return str;
|
10537
10599
|
}
|
10538
10600
|
|
10539
|
-
function symbol(debugName) {
|
10540
|
-
// TODO: Investigate using platform symbols, but we do not
|
10541
|
-
// want to require non-enumerability for this API, which
|
10542
|
-
// would introduce a large cost.
|
10543
|
-
|
10544
|
-
return intern(debugName + ' [id=' + GUID_KEY + Math.floor(Math.random() * new Date()) + ']');
|
10545
|
-
}
|
10546
|
-
|
10547
10601
|
/**
|
10548
10602
|
A unique key used to assign guids and other private metadata to objects.
|
10549
10603
|
If you inspect an object in your browser debugger you will often see these.
|
@@ -11006,6 +11060,9 @@ enifed('ember-metal/watch_key', ['exports', 'ember-metal/features', 'ember-metal
|
|
11006
11060
|
exports.watchKey = watchKey;
|
11007
11061
|
exports.unwatchKey = unwatchKey;
|
11008
11062
|
|
11063
|
+
var handleMandatorySetter = undefined,
|
11064
|
+
lookupDescriptor = undefined;
|
11065
|
+
|
11009
11066
|
function watchKey(obj, keyName, meta) {
|
11010
11067
|
// can't watch length on Array - it is special...
|
11011
11068
|
if (keyName === 'length' && Array.isArray(obj)) {
|
@@ -11034,8 +11091,23 @@ enifed('ember-metal/watch_key', ['exports', 'ember-metal/features', 'ember-metal
|
|
11034
11091
|
}
|
11035
11092
|
}
|
11036
11093
|
|
11037
|
-
|
11038
|
-
var
|
11094
|
+
lookupDescriptor = function lookupDescriptor(obj, keyName) {
|
11095
|
+
var current = obj;
|
11096
|
+
while (current) {
|
11097
|
+
var descriptor = Object.getOwnPropertyDescriptor(current, keyName);
|
11098
|
+
|
11099
|
+
if (descriptor) {
|
11100
|
+
return descriptor;
|
11101
|
+
}
|
11102
|
+
|
11103
|
+
current = Object.getPrototypeOf(current);
|
11104
|
+
}
|
11105
|
+
|
11106
|
+
return null;
|
11107
|
+
};
|
11108
|
+
|
11109
|
+
handleMandatorySetter = function handleMandatorySetter(m, obj, keyName) {
|
11110
|
+
var descriptor = lookupDescriptor(obj, keyName);
|
11039
11111
|
var configurable = descriptor ? descriptor.configurable : true;
|
11040
11112
|
var isWritable = descriptor ? descriptor.writable : true;
|
11041
11113
|
var hasValue = descriptor ? 'value' in descriptor : true;
|
@@ -11142,7 +11214,7 @@ enifed('ember-metal/watch_path', ['exports', 'ember-metal/meta', 'ember-metal/ch
|
|
11142
11214
|
}
|
11143
11215
|
}
|
11144
11216
|
});
|
11145
|
-
enifed('ember-metal/watching', ['exports', 'ember-metal/chains', 'ember-metal/watch_key', 'ember-metal/watch_path', 'ember-metal/path_cache'], function (exports, _emberMetalChains, _emberMetalWatch_key, _emberMetalWatch_path, _emberMetalPath_cache) {
|
11217
|
+
enifed('ember-metal/watching', ['exports', 'ember-metal/chains', 'ember-metal/watch_key', 'ember-metal/watch_path', 'ember-metal/path_cache', 'ember-metal/meta'], function (exports, _emberMetalChains, _emberMetalWatch_key, _emberMetalWatch_path, _emberMetalPath_cache, _emberMetalMeta) {
|
11146
11218
|
/**
|
11147
11219
|
@module ember-metal
|
11148
11220
|
*/
|
@@ -11182,7 +11254,7 @@ enifed('ember-metal/watching', ['exports', 'ember-metal/chains', 'ember-metal/wa
|
|
11182
11254
|
exports.watch = watch;
|
11183
11255
|
|
11184
11256
|
function isWatching(obj, key) {
|
11185
|
-
var meta = obj
|
11257
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
11186
11258
|
return (meta && meta.peekWatching(key)) > 0;
|
11187
11259
|
}
|
11188
11260
|
|
@@ -11215,11 +11287,11 @@ enifed('ember-metal/watching', ['exports', 'ember-metal/chains', 'ember-metal/wa
|
|
11215
11287
|
*/
|
11216
11288
|
|
11217
11289
|
function destroy(obj) {
|
11218
|
-
var meta = obj
|
11290
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
11219
11291
|
var node, nodes, key, nodeObject;
|
11220
11292
|
|
11221
11293
|
if (meta) {
|
11222
|
-
obj
|
11294
|
+
_emberMetalMeta.deleteMeta(obj);
|
11223
11295
|
// remove chainWatchers to remove circular references that would prevent GC
|
11224
11296
|
node = meta.readableChains();
|
11225
11297
|
if (node) {
|
@@ -11303,9 +11375,9 @@ enifed('ember-metal', ['exports', 'ember-metal/core', 'ember-metal/debug', 'embe
|
|
11303
11375
|
_emberMetalCore.default.Error = _emberMetalError.default;
|
11304
11376
|
_emberMetalCore.default.guidFor = _emberMetalUtils.guidFor;
|
11305
11377
|
_emberMetalCore.default.META_DESC = _emberMetalMeta.META_DESC;
|
11306
|
-
_emberMetalCore.default.EMPTY_META = _emberMetalMeta.EMPTY_META;
|
11307
11378
|
_emberMetalCore.default.meta = _emberMetalMeta.meta;
|
11308
11379
|
_emberMetalCore.default.inspect = _emberMetalUtils.inspect;
|
11380
|
+
|
11309
11381
|
_emberMetalCore.default.tryCatchFinally = _emberMetalUtils.deprecatedTryCatchFinally;
|
11310
11382
|
_emberMetalCore.default.makeArray = _emberMetalUtils.makeArray;
|
11311
11383
|
_emberMetalCore.default.canInvoke = _emberMetalUtils.canInvoke;
|
@@ -11415,7 +11487,12 @@ enifed('ember-metal', ['exports', 'ember-metal/core', 'ember-metal/debug', 'embe
|
|
11415
11487
|
_emberMetalCore.default.isBlank = _emberMetalIs_blank.default;
|
11416
11488
|
_emberMetalCore.default.isPresent = _emberMetalIs_present.default;
|
11417
11489
|
|
11418
|
-
|
11490
|
+
if (_emberMetalFeatures.default('ember-metal-ember-assign')) {
|
11491
|
+
_emberMetalCore.default.assign = Object.assign || _emberMetalAssign.default;
|
11492
|
+
_emberMetalCore.default.merge = _emberMetalMerge.default;
|
11493
|
+
} else {
|
11494
|
+
_emberMetalCore.default.merge = _emberMetalMerge.default;
|
11495
|
+
}
|
11419
11496
|
|
11420
11497
|
_emberMetalCore.default.FEATURES = _emberMetalFeatures.FEATURES;
|
11421
11498
|
_emberMetalCore.default.FEATURES.isEnabled = _emberMetalFeatures.default;
|
@@ -12338,6 +12415,9 @@ enifed('ember-template-compiler/plugins/transform-top-level-components', ['expor
|
|
12338
12415
|
|
12339
12416
|
if (lastComponentNode.type === 'ComponentNode') {
|
12340
12417
|
componentCallback(lastComponentNode);
|
12418
|
+
} else if (_emberMetalFeatures.default('ember-htmlbars-component-generation')) {
|
12419
|
+
var component = elementCallback(lastComponentNode);
|
12420
|
+
body.splice(lastIndex, 1, component);
|
12341
12421
|
}
|
12342
12422
|
}
|
12343
12423
|
|
@@ -12490,6 +12570,9 @@ enifed('ember-template-compiler/system/compile_options', ['exports', 'ember-meta
|
|
12490
12570
|
|
12491
12571
|
exports.default = function (_options) {
|
12492
12572
|
var disableComponentGeneration = true;
|
12573
|
+
if (_emberMetalFeatures.default('ember-htmlbars-component-generation')) {
|
12574
|
+
disableComponentGeneration = false;
|
12575
|
+
}
|
12493
12576
|
|
12494
12577
|
var options = undefined;
|
12495
12578
|
// When calling `Ember.Handlebars.compile()` a second argument of `true`
|
@@ -12515,7 +12598,7 @@ enifed('ember-template-compiler/system/compile_options', ['exports', 'ember-meta
|
|
12515
12598
|
options.buildMeta = function buildMeta(program) {
|
12516
12599
|
return {
|
12517
12600
|
fragmentReason: fragmentReason(program),
|
12518
|
-
revision: 'Ember@2.
|
12601
|
+
revision: 'Ember@2.3.0-beta.1',
|
12519
12602
|
loc: program.loc,
|
12520
12603
|
moduleName: options.moduleName
|
12521
12604
|
};
|
@@ -19592,8 +19675,8 @@ enifed('morph-range', ['exports', 'morph-range/utils'], function (exports, _morp
|
|
19592
19675
|
return this.setNode(content);
|
19593
19676
|
}
|
19594
19677
|
/* Handlebars.SafeString */
|
19595
|
-
if (typeof content.
|
19596
|
-
return this.setHTML(content.
|
19678
|
+
if (typeof content.string === 'string') {
|
19679
|
+
return this.setHTML(content.string);
|
19597
19680
|
}
|
19598
19681
|
if (this.parseTextAsHTML) {
|
19599
19682
|
return this.setHTML(content.toString());
|