ember-source 2.3.0 → 2.3.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 +124 -41
- data/dist/ember-template-compiler.js +97 -12
- data/dist/ember-testing.js +1 -1
- data/dist/ember.debug.js +151 -51
- data/dist/ember.js +151 -51
- data/dist/ember.min.js +12 -12
- data/dist/ember.prod.js +149 -48
- metadata +2 -2
data/dist/ember-testing.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.
|
9
|
+
* @version 2.3.1
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, requirejs, Ember;
|
data/dist/ember.debug.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.
|
9
|
+
* @version 2.3.1
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, requirejs, Ember;
|
@@ -10137,7 +10137,7 @@ enifed('ember-htmlbars/keywords/outlet', ['exports', 'ember-metal/debug', 'ember
|
|
10137
10137
|
|
10138
10138
|
'use strict';
|
10139
10139
|
|
10140
|
-
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.
|
10140
|
+
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.1';
|
10141
10141
|
|
10142
10142
|
/**
|
10143
10143
|
The `{{outlet}}` helper lets you specify where a child routes will render in
|
@@ -14780,7 +14780,6 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/debug', 'ember-metal/pro
|
|
14780
14780
|
var args;
|
14781
14781
|
|
14782
14782
|
var addArg = function (property) {
|
14783
|
-
_emberMetalDebug.assert('Depending on arrays using a dependent key ending with `@each` is no longer supported. ' + ('Please refactor from `Ember.computed(\'' + property + '\', function() {});` to `Ember.computed(\'' + property.slice(0, -6) + '.[]\', function() {})`.'), property.slice(-5) !== '@each');
|
14784
14783
|
args.push(property);
|
14785
14784
|
};
|
14786
14785
|
|
@@ -15884,7 +15883,7 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
15884
15883
|
|
15885
15884
|
@class Ember
|
15886
15885
|
@static
|
15887
|
-
@version 2.3.
|
15886
|
+
@version 2.3.1
|
15888
15887
|
@public
|
15889
15888
|
*/
|
15890
15889
|
|
@@ -15928,11 +15927,11 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
15928
15927
|
|
15929
15928
|
@property VERSION
|
15930
15929
|
@type String
|
15931
|
-
@default '2.3.
|
15930
|
+
@default '2.3.1'
|
15932
15931
|
@static
|
15933
15932
|
@public
|
15934
15933
|
*/
|
15935
|
-
Ember.VERSION = '2.3.
|
15934
|
+
Ember.VERSION = '2.3.1';
|
15936
15935
|
|
15937
15936
|
/**
|
15938
15937
|
The hash of environment variables used to control various configuration
|
@@ -16669,6 +16668,8 @@ enifed('ember-metal/expand_properties', ['exports', 'ember-metal/error'], functi
|
|
16669
16668
|
|
16670
16669
|
var SPLIT_REGEX = /\{|\}/;
|
16671
16670
|
|
16671
|
+
var END_WITH_EACH_REGEX = /\.@each$/;
|
16672
|
+
|
16672
16673
|
/**
|
16673
16674
|
Expands `pattern`, invoking `callback` for each expansion.
|
16674
16675
|
|
@@ -16713,10 +16714,10 @@ enifed('ember-metal/expand_properties', ['exports', 'ember-metal/error'], functi
|
|
16713
16714
|
});
|
16714
16715
|
|
16715
16716
|
properties.forEach(function (property) {
|
16716
|
-
callback(property.join(''));
|
16717
|
+
callback(property.join('').replace(END_WITH_EACH_REGEX, '.[]'));
|
16717
16718
|
});
|
16718
16719
|
} else {
|
16719
|
-
callback(pattern);
|
16720
|
+
callback(pattern.replace(END_WITH_EACH_REGEX, '.[]'));
|
16720
16721
|
}
|
16721
16722
|
}
|
16722
16723
|
|
@@ -18595,6 +18596,7 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
18595
18596
|
exports.aliasMethod = aliasMethod;
|
18596
18597
|
exports.observer = observer;
|
18597
18598
|
exports._immediateObserver = _immediateObserver;
|
18599
|
+
exports._beforeObserver = _beforeObserver;
|
18598
18600
|
|
18599
18601
|
function ROOT() {}
|
18600
18602
|
ROOT.__hasSuper = false;
|
@@ -18918,11 +18920,13 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
18918
18920
|
var prev = obj[key];
|
18919
18921
|
|
18920
18922
|
if ('function' === typeof prev) {
|
18923
|
+
updateObserversAndListeners(obj, key, prev, '__ember_observesBefore__', _emberMetalObserver._removeBeforeObserver);
|
18921
18924
|
updateObserversAndListeners(obj, key, prev, '__ember_observes__', _emberMetalObserver.removeObserver);
|
18922
18925
|
updateObserversAndListeners(obj, key, prev, '__ember_listens__', _emberMetalEvents.removeListener);
|
18923
18926
|
}
|
18924
18927
|
|
18925
18928
|
if ('function' === typeof observerOrListener) {
|
18929
|
+
updateObserversAndListeners(obj, key, observerOrListener, '__ember_observesBefore__', _emberMetalObserver._addBeforeObserver);
|
18926
18930
|
updateObserversAndListeners(obj, key, observerOrListener, '__ember_observes__', _emberMetalObserver.addObserver);
|
18927
18931
|
updateObserversAndListeners(obj, key, observerOrListener, '__ember_listens__', _emberMetalEvents.addListener);
|
18928
18932
|
}
|
@@ -19361,8 +19365,6 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
19361
19365
|
var paths;
|
19362
19366
|
|
19363
19367
|
var addWatchedProperty = function (path) {
|
19364
|
-
_emberMetalDebug.assert('Depending on arrays using a dependent key ending with `@each` is no longer supported. ' + ('Please refactor from `Ember.observer(\'' + path + '\', function() {});` to `Ember.observer(\'' + path.slice(0, -6) + '.[]\', function() {})`.'), path.slice(-5) !== '@each');
|
19365
|
-
|
19366
19368
|
paths.push(path);
|
19367
19369
|
};
|
19368
19370
|
var _paths = args.slice(0, -1);
|
@@ -19426,6 +19428,82 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
19426
19428
|
return observer.apply(this, arguments);
|
19427
19429
|
}
|
19428
19430
|
|
19431
|
+
/**
|
19432
|
+
When observers fire, they are called with the arguments `obj`, `keyName`.
|
19433
|
+
|
19434
|
+
Note, `@each.property` observer is called per each add or replace of an element
|
19435
|
+
and it's not called with a specific enumeration item.
|
19436
|
+
|
19437
|
+
A `_beforeObserver` fires before a property changes.
|
19438
|
+
|
19439
|
+
A `_beforeObserver` is an alternative form of `.observesBefore()`.
|
19440
|
+
|
19441
|
+
```javascript
|
19442
|
+
App.PersonView = Ember.View.extend({
|
19443
|
+
friends: [{ name: 'Tom' }, { name: 'Stefan' }, { name: 'Kris' }],
|
19444
|
+
|
19445
|
+
valueDidChange: Ember.observer('content.value', function(obj, keyName) {
|
19446
|
+
// only run if updating a value already in the DOM
|
19447
|
+
if (this.get('state') === 'inDOM') {
|
19448
|
+
var color = obj.get(keyName) > this.changingFrom ? 'green' : 'red';
|
19449
|
+
// logic
|
19450
|
+
}
|
19451
|
+
}),
|
19452
|
+
|
19453
|
+
friendsDidChange: Ember.observer('friends.@each.name', function(obj, keyName) {
|
19454
|
+
// some logic
|
19455
|
+
// obj.get(keyName) returns friends array
|
19456
|
+
})
|
19457
|
+
});
|
19458
|
+
```
|
19459
|
+
|
19460
|
+
Also available as `Function.prototype.observesBefore` if prototype extensions are
|
19461
|
+
enabled.
|
19462
|
+
|
19463
|
+
@method beforeObserver
|
19464
|
+
@for Ember
|
19465
|
+
@param {String} propertyNames*
|
19466
|
+
@param {Function} func
|
19467
|
+
@return func
|
19468
|
+
@deprecated
|
19469
|
+
@private
|
19470
|
+
*/
|
19471
|
+
|
19472
|
+
function _beforeObserver() {
|
19473
|
+
for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
|
19474
|
+
args[_key5] = arguments[_key5];
|
19475
|
+
}
|
19476
|
+
|
19477
|
+
var func = args.slice(-1)[0];
|
19478
|
+
var paths;
|
19479
|
+
|
19480
|
+
var addWatchedProperty = function (path) {
|
19481
|
+
paths.push(path);
|
19482
|
+
};
|
19483
|
+
|
19484
|
+
var _paths = args.slice(0, -1);
|
19485
|
+
|
19486
|
+
if (typeof func !== 'function') {
|
19487
|
+
// revert to old, soft-deprecated argument ordering
|
19488
|
+
|
19489
|
+
func = args[0];
|
19490
|
+
_paths = args.slice(1);
|
19491
|
+
}
|
19492
|
+
|
19493
|
+
paths = [];
|
19494
|
+
|
19495
|
+
for (var i = 0; i < _paths.length; ++i) {
|
19496
|
+
_emberMetalExpand_properties.default(_paths[i], addWatchedProperty);
|
19497
|
+
}
|
19498
|
+
|
19499
|
+
if (typeof func !== 'function') {
|
19500
|
+
throw new _emberMetalCore.default.Error('Ember.beforeObserver called without a function');
|
19501
|
+
}
|
19502
|
+
|
19503
|
+
func.__ember_observesBefore__ = paths;
|
19504
|
+
return func;
|
19505
|
+
}
|
19506
|
+
|
19429
19507
|
exports.IS_BINDING = IS_BINDING;
|
19430
19508
|
exports.Mixin = Mixin;
|
19431
19509
|
exports.required = required;
|
@@ -22579,6 +22657,7 @@ enifed('ember-metal/utils', ['exports'], function (exports) {
|
|
22579
22657
|
|
22580
22658
|
superWrapper.wrappedFunction = func;
|
22581
22659
|
superWrapper.__ember_observes__ = func.__ember_observes__;
|
22660
|
+
superWrapper.__ember_observesBefore__ = func.__ember_observesBefore__;
|
22582
22661
|
superWrapper.__ember_listens__ = func.__ember_listens__;
|
22583
22662
|
|
22584
22663
|
return superWrapper;
|
@@ -22958,6 +23037,7 @@ enifed('ember-metal/watching', ['exports', 'ember-metal/chains', 'ember-metal/wa
|
|
22958
23037
|
'use strict';
|
22959
23038
|
|
22960
23039
|
exports.isWatching = isWatching;
|
23040
|
+
exports.watcherCount = watcherCount;
|
22961
23041
|
exports.unwatch = unwatch;
|
22962
23042
|
exports.destroy = destroy;
|
22963
23043
|
|
@@ -22994,6 +23074,11 @@ enifed('ember-metal/watching', ['exports', 'ember-metal/chains', 'ember-metal/wa
|
|
22994
23074
|
return (meta && meta.peekWatching(key)) > 0;
|
22995
23075
|
}
|
22996
23076
|
|
23077
|
+
function watcherCount(obj, key) {
|
23078
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
23079
|
+
return meta && meta.peekWatching(key) || 0;
|
23080
|
+
}
|
23081
|
+
|
22997
23082
|
watch.flushPending = _emberMetalChains.flushPendingChains;
|
22998
23083
|
|
22999
23084
|
function unwatch(obj, _keyPath, m) {
|
@@ -25591,6 +25676,10 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
25591
25676
|
subsequent `willTransition` actions to fire for the redirecting
|
25592
25677
|
transition, you must first explicitly call
|
25593
25678
|
`transition.abort()`.
|
25679
|
+
To allow the `willTransition` event to continue bubbling to the parent
|
25680
|
+
route, use `return true;`. When the `willTransition` method has a
|
25681
|
+
return value of `true` then the parent route's `willTransition` method
|
25682
|
+
will be fired, enabling "bubbling" behavior for the event.
|
25594
25683
|
@event willTransition
|
25595
25684
|
@param {Transition} transition
|
25596
25685
|
@public
|
@@ -29675,7 +29764,7 @@ enifed('ember-routing-views/components/link-to', ['exports', 'ember-metal/logger
|
|
29675
29764
|
|
29676
29765
|
'use strict';
|
29677
29766
|
|
29678
|
-
_emberHtmlbarsTemplatesLinkTo.default.meta.revision = 'Ember@2.3.
|
29767
|
+
_emberHtmlbarsTemplatesLinkTo.default.meta.revision = 'Ember@2.3.1';
|
29679
29768
|
|
29680
29769
|
/**
|
29681
29770
|
`Ember.LinkComponent` renders an element whose `click` event triggers a
|
@@ -30165,7 +30254,7 @@ enifed('ember-routing-views/views/outlet', ['exports', 'ember-views/views/view',
|
|
30165
30254
|
|
30166
30255
|
'use strict';
|
30167
30256
|
|
30168
|
-
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.
|
30257
|
+
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.1';
|
30169
30258
|
|
30170
30259
|
var CoreOutletView = _emberViewsViewsView.default.extend({
|
30171
30260
|
defaultTemplate: _emberHtmlbarsTemplatesTopLevelView.default,
|
@@ -31398,8 +31487,6 @@ enifed('ember-runtime/ext/function', ['exports', 'ember-metal/core', 'ember-meta
|
|
31398
31487
|
});
|
31399
31488
|
// Ember.EXTEND_PROTOTYPES
|
31400
31489
|
enifed('ember-runtime/ext/rsvp', ['exports', 'ember-metal/core', 'ember-metal/debug', 'ember-metal/logger', 'ember-metal/run_loop', 'rsvp'], function (exports, _emberMetalCore, _emberMetalDebug, _emberMetalLogger, _emberMetalRun_loop, _rsvp) {
|
31401
|
-
/* globals RSVP:true */
|
31402
|
-
|
31403
31490
|
'use strict';
|
31404
31491
|
|
31405
31492
|
exports.onerrorDefault = onerrorDefault;
|
@@ -32676,13 +32763,10 @@ enifed('ember-runtime/mixins/controller', ['exports', 'ember-metal/mixin', 'embe
|
|
32676
32763
|
For example, when a Handlebars template uses the `{{action}}` helper,
|
32677
32764
|
it will attempt to send the action to the view's controller's `target`.
|
32678
32765
|
By default, the value of the target property is set to the router, and
|
32679
|
-
is injected when a controller is instantiated. This injection is
|
32680
|
-
|
32681
|
-
|
32682
|
-
|
32683
|
-
template, or when a controller is used as an `itemController`. In most
|
32684
|
-
cases the `target` property will automatically be set to the logical
|
32685
|
-
consumer of actions for the controller.
|
32766
|
+
is injected when a controller is instantiated. This injection is applied
|
32767
|
+
as part of the application's initialization process. In most cases the
|
32768
|
+
`target` property will automatically be set to the logical consumer of
|
32769
|
+
actions for the controller.
|
32686
32770
|
@property target
|
32687
32771
|
@default null
|
32688
32772
|
@public
|
@@ -35625,21 +35709,7 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35625
35709
|
@type Ember.Array
|
35626
35710
|
@private
|
35627
35711
|
*/
|
35628
|
-
content:
|
35629
|
-
get: function () {
|
35630
|
-
return this._content;
|
35631
|
-
},
|
35632
|
-
set: function (k, v) {
|
35633
|
-
if (this._didInitArrayProxy) {
|
35634
|
-
var oldContent = this._content;
|
35635
|
-
var len = oldContent ? _emberMetalProperty_get.get(oldContent, 'length') : 0;
|
35636
|
-
this.arrangedContentArrayWillChange(this, 0, len, undefined);
|
35637
|
-
this.arrangedContentWillChange(this);
|
35638
|
-
}
|
35639
|
-
this._content = v;
|
35640
|
-
return v;
|
35641
|
-
}
|
35642
|
-
}),
|
35712
|
+
content: null,
|
35643
35713
|
|
35644
35714
|
/**
|
35645
35715
|
The array that the proxy pretends to be. In the default `ArrayProxy`
|
@@ -35647,7 +35717,7 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35647
35717
|
can override this property to provide things like sorting and filtering.
|
35648
35718
|
@property arrangedContent
|
35649
35719
|
@private
|
35650
|
-
|
35720
|
+
*/
|
35651
35721
|
arrangedContent: _emberMetalAlias.default('content'),
|
35652
35722
|
|
35653
35723
|
/**
|
@@ -35681,7 +35751,19 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35681
35751
|
_emberMetalProperty_get.get(this, 'content').replace(idx, amt, objects);
|
35682
35752
|
},
|
35683
35753
|
|
35684
|
-
|
35754
|
+
/**
|
35755
|
+
Invoked when the content property is about to change. Notifies observers that the
|
35756
|
+
entire array content will change.
|
35757
|
+
@private
|
35758
|
+
@method _contentWillChange
|
35759
|
+
*/
|
35760
|
+
_contentWillChange: _emberMetalMixin._beforeObserver('content', function () {
|
35761
|
+
this._teardownContent();
|
35762
|
+
}),
|
35763
|
+
|
35764
|
+
_teardownContent: function () {
|
35765
|
+
var content = _emberMetalProperty_get.get(this, 'content');
|
35766
|
+
|
35685
35767
|
if (content) {
|
35686
35768
|
content.removeArrayObserver(this, {
|
35687
35769
|
willChange: 'contentArrayWillChange',
|
@@ -35719,7 +35801,6 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35719
35801
|
*/
|
35720
35802
|
_contentDidChange: _emberMetalMixin.observer('content', function () {
|
35721
35803
|
var content = _emberMetalProperty_get.get(this, 'content');
|
35722
|
-
this._teardownContent(this._prevContent);
|
35723
35804
|
|
35724
35805
|
_emberMetalDebug.assert('Can\'t set ArrayProxy\'s content to itself', content !== this);
|
35725
35806
|
|
@@ -35728,7 +35809,6 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35728
35809
|
|
35729
35810
|
_setupContent: function () {
|
35730
35811
|
var content = _emberMetalProperty_get.get(this, 'content');
|
35731
|
-
this._prevContent = content;
|
35732
35812
|
|
35733
35813
|
if (content) {
|
35734
35814
|
_emberMetalDebug.assert('ArrayProxy expects an Array or Ember.ArrayProxy, but you passed ' + typeof content, _emberRuntimeUtils.isArray(content) || content.isDestroyed);
|
@@ -35740,8 +35820,17 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35740
35820
|
}
|
35741
35821
|
},
|
35742
35822
|
|
35823
|
+
_arrangedContentWillChange: _emberMetalMixin._beforeObserver('arrangedContent', function () {
|
35824
|
+
var arrangedContent = _emberMetalProperty_get.get(this, 'arrangedContent');
|
35825
|
+
var len = arrangedContent ? _emberMetalProperty_get.get(arrangedContent, 'length') : 0;
|
35826
|
+
|
35827
|
+
this.arrangedContentArrayWillChange(this, 0, len, undefined);
|
35828
|
+
this.arrangedContentWillChange(this);
|
35829
|
+
|
35830
|
+
this._teardownArrangedContent(arrangedContent);
|
35831
|
+
}),
|
35832
|
+
|
35743
35833
|
_arrangedContentDidChange: _emberMetalMixin.observer('arrangedContent', function () {
|
35744
|
-
this._teardownArrangedContent(this._prevArrangedContent);
|
35745
35834
|
var arrangedContent = _emberMetalProperty_get.get(this, 'arrangedContent');
|
35746
35835
|
var len = arrangedContent ? _emberMetalProperty_get.get(arrangedContent, 'length') : 0;
|
35747
35836
|
|
@@ -35755,7 +35844,6 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35755
35844
|
|
35756
35845
|
_setupArrangedContent: function () {
|
35757
35846
|
var arrangedContent = _emberMetalProperty_get.get(this, 'arrangedContent');
|
35758
|
-
this._prevArrangedContent = arrangedContent;
|
35759
35847
|
|
35760
35848
|
if (arrangedContent) {
|
35761
35849
|
_emberMetalDebug.assert('ArrayProxy expects an Array or Ember.ArrayProxy, but you passed ' + typeof arrangedContent, _emberRuntimeUtils.isArray(arrangedContent) || arrangedContent.isDestroyed);
|
@@ -35909,7 +35997,6 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35909
35997
|
},
|
35910
35998
|
|
35911
35999
|
init: function () {
|
35912
|
-
this._didInitArrayProxy = true;
|
35913
36000
|
this._super.apply(this, arguments);
|
35914
36001
|
this._setupContent();
|
35915
36002
|
this._setupArrangedContent();
|
@@ -35917,7 +36004,7 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35917
36004
|
|
35918
36005
|
willDestroy: function () {
|
35919
36006
|
this._teardownArrangedContent();
|
35920
|
-
this._teardownContent(
|
36007
|
+
this._teardownContent();
|
35921
36008
|
}
|
35922
36009
|
});
|
35923
36010
|
|
@@ -39108,7 +39195,7 @@ enifed('ember-template-compiler/system/compile_options', ['exports', 'ember-meta
|
|
39108
39195
|
options.buildMeta = function buildMeta(program) {
|
39109
39196
|
return {
|
39110
39197
|
fragmentReason: fragmentReason(program),
|
39111
|
-
revision: 'Ember@2.3.
|
39198
|
+
revision: 'Ember@2.3.1',
|
39112
39199
|
loc: program.loc,
|
39113
39200
|
moduleName: options.moduleName
|
39114
39201
|
};
|
@@ -40606,7 +40693,7 @@ enifed('ember-views/component_lookup', ['exports', 'ember-metal/core', 'ember-me
|
|
40606
40693
|
}
|
40607
40694
|
});
|
40608
40695
|
});
|
40609
|
-
enifed('ember-views/components/component', ['exports', 'ember-metal/debug', 'ember-runtime/mixins/target_action_support', 'ember-views/views/view', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/is_none', 'ember-metal/utils', 'ember-metal/computed', 'ember-views/compat/attrs-proxy', 'container/owner'], function (exports, _emberMetalDebug, _emberRuntimeMixinsTarget_action_support, _emberViewsViewsView, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalIs_none, _emberMetalUtils, _emberMetalComputed, _emberViewsCompatAttrsProxy, _containerOwner) {
|
40696
|
+
enifed('ember-views/components/component', ['exports', 'ember-metal/debug', 'ember-metal/environment', 'ember-runtime/mixins/target_action_support', 'ember-views/views/view', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/is_none', 'ember-metal/utils', 'ember-metal/computed', 'ember-views/compat/attrs-proxy', 'container/owner'], function (exports, _emberMetalDebug, _emberMetalEnvironment, _emberRuntimeMixinsTarget_action_support, _emberViewsViewsView, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalIs_none, _emberMetalUtils, _emberMetalComputed, _emberViewsCompatAttrsProxy, _containerOwner) {
|
40610
40697
|
'use strict';
|
40611
40698
|
|
40612
40699
|
function validateAction(component, actionName) {
|
@@ -40751,7 +40838,7 @@ enifed('ember-views/components/component', ['exports', 'ember-metal/debug', 'emb
|
|
40751
40838
|
}
|
40752
40839
|
|
40753
40840
|
// If in a tagless component, assert that no event handlers are defined
|
40754
|
-
_emberMetalDebug.assert('You can not define a function that handles DOM events in the `' + this + '` tagless component since it doesn\'t have any DOM element.', this.tagName !== '' || !(function () {
|
40841
|
+
_emberMetalDebug.assert('You can not define a function that handles DOM events in the `' + this + '` tagless component since it doesn\'t have any DOM element.', this.tagName !== '' || !_emberMetalEnvironment.default.hasDOM || !(function () {
|
40755
40842
|
var eventDispatcher = _containerOwner.getOwner(_this).lookup('event_dispatcher:main');
|
40756
40843
|
var events = eventDispatcher && eventDispatcher._finalEvents || {};
|
40757
40844
|
|
@@ -43466,7 +43553,7 @@ enifed('ember-views/system/build-component-template', ['exports', 'ember-metal/d
|
|
43466
43553
|
})());
|
43467
43554
|
}
|
43468
43555
|
});
|
43469
|
-
enifed('ember-views/system/event_dispatcher', ['exports', 'ember-metal/debug', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/is_none', 'ember-metal/run_loop', 'ember-runtime/system/object', 'ember-views/system/jquery', 'ember-views/system/action_manager', 'ember-views/views/view', 'ember-metal/assign', 'container/owner'], function (exports, _emberMetalDebug, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalIs_none, _emberMetalRun_loop, _emberRuntimeSystemObject, _emberViewsSystemJquery, _emberViewsSystemAction_manager, _emberViewsViewsView, _emberMetalAssign, _containerOwner) {
|
43556
|
+
enifed('ember-views/system/event_dispatcher', ['exports', 'ember-metal/debug', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/is_none', 'ember-metal/run_loop', 'ember-runtime/system/object', 'ember-views/system/jquery', 'ember-views/system/action_manager', 'ember-views/views/view', 'ember-metal/assign', 'container/owner', 'ember-metal/environment'], function (exports, _emberMetalDebug, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalIs_none, _emberMetalRun_loop, _emberRuntimeSystemObject, _emberViewsSystemJquery, _emberViewsSystemAction_manager, _emberViewsViewsView, _emberMetalAssign, _containerOwner, _emberMetalEnvironment) {
|
43470
43557
|
/**
|
43471
43558
|
@module ember
|
43472
43559
|
@submodule ember-views
|
@@ -43585,6 +43672,11 @@ enifed('ember-views/system/event_dispatcher', ['exports', 'ember-metal/debug', '
|
|
43585
43672
|
*/
|
43586
43673
|
canDispatchToEventManager: true,
|
43587
43674
|
|
43675
|
+
init: function () {
|
43676
|
+
this._super();
|
43677
|
+
_emberMetalDebug.assert('EventDispatcher should never be instantiated in fastboot mode. Please report this as an Ember bug.', _emberMetalEnvironment.default.hasDOM);
|
43678
|
+
},
|
43679
|
+
|
43588
43680
|
/**
|
43589
43681
|
Sets up event listeners for standard browser events.
|
43590
43682
|
This will be called after the browser sends a `DOMContentReady` event. By
|
@@ -44396,7 +44488,7 @@ enifed('ember-views/views/collection_view', ['exports', 'ember-metal/core', 'emb
|
|
44396
44488
|
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) {
|
44397
44489
|
'use strict';
|
44398
44490
|
|
44399
|
-
_emberHtmlbarsTemplatesContainerView.default.meta.revision = 'Ember@2.3.
|
44491
|
+
_emberHtmlbarsTemplatesContainerView.default.meta.revision = 'Ember@2.3.1';
|
44400
44492
|
|
44401
44493
|
/**
|
44402
44494
|
@module ember
|
@@ -49361,8 +49453,16 @@ enifed("morph-attr", ["exports", "morph-attr/sanitize-attribute-value", "dom-hel
|
|
49361
49453
|
|
49362
49454
|
function updateProperty(value) {
|
49363
49455
|
if (this._renderedInitially === true || !_domHelperProp.isAttrRemovalValue(value)) {
|
49364
|
-
|
49365
|
-
|
49456
|
+
var element = this.element;
|
49457
|
+
var attrName = this.attrName;
|
49458
|
+
|
49459
|
+
if (attrName === 'value' && element.tagName === 'INPUT' && element.value === value) {
|
49460
|
+
// Do nothing. Attempts to avoid accidently changing the input cursor location.
|
49461
|
+
// See https://github.com/tildeio/htmlbars/pull/447 for more details.
|
49462
|
+
} else {
|
49463
|
+
// do not render if initial value is undefined or null
|
49464
|
+
this.domHelper.setPropertyStrict(element, attrName, value);
|
49465
|
+
}
|
49366
49466
|
}
|
49367
49467
|
|
49368
49468
|
this._renderedInitially = true;
|
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.
|
9
|
+
* @version 2.3.1
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, requirejs, Ember;
|
@@ -10137,7 +10137,7 @@ enifed('ember-htmlbars/keywords/outlet', ['exports', 'ember-metal/debug', 'ember
|
|
10137
10137
|
|
10138
10138
|
'use strict';
|
10139
10139
|
|
10140
|
-
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.
|
10140
|
+
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.1';
|
10141
10141
|
|
10142
10142
|
/**
|
10143
10143
|
The `{{outlet}}` helper lets you specify where a child routes will render in
|
@@ -14780,7 +14780,6 @@ enifed('ember-metal/computed', ['exports', 'ember-metal/debug', 'ember-metal/pro
|
|
14780
14780
|
var args;
|
14781
14781
|
|
14782
14782
|
var addArg = function (property) {
|
14783
|
-
_emberMetalDebug.assert('Depending on arrays using a dependent key ending with `@each` is no longer supported. ' + ('Please refactor from `Ember.computed(\'' + property + '\', function() {});` to `Ember.computed(\'' + property.slice(0, -6) + '.[]\', function() {})`.'), property.slice(-5) !== '@each');
|
14784
14783
|
args.push(property);
|
14785
14784
|
};
|
14786
14785
|
|
@@ -15884,7 +15883,7 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
15884
15883
|
|
15885
15884
|
@class Ember
|
15886
15885
|
@static
|
15887
|
-
@version 2.3.
|
15886
|
+
@version 2.3.1
|
15888
15887
|
@public
|
15889
15888
|
*/
|
15890
15889
|
|
@@ -15928,11 +15927,11 @@ enifed('ember-metal/core', ['exports'], function (exports) {
|
|
15928
15927
|
|
15929
15928
|
@property VERSION
|
15930
15929
|
@type String
|
15931
|
-
@default '2.3.
|
15930
|
+
@default '2.3.1'
|
15932
15931
|
@static
|
15933
15932
|
@public
|
15934
15933
|
*/
|
15935
|
-
Ember.VERSION = '2.3.
|
15934
|
+
Ember.VERSION = '2.3.1';
|
15936
15935
|
|
15937
15936
|
/**
|
15938
15937
|
The hash of environment variables used to control various configuration
|
@@ -16669,6 +16668,8 @@ enifed('ember-metal/expand_properties', ['exports', 'ember-metal/error'], functi
|
|
16669
16668
|
|
16670
16669
|
var SPLIT_REGEX = /\{|\}/;
|
16671
16670
|
|
16671
|
+
var END_WITH_EACH_REGEX = /\.@each$/;
|
16672
|
+
|
16672
16673
|
/**
|
16673
16674
|
Expands `pattern`, invoking `callback` for each expansion.
|
16674
16675
|
|
@@ -16713,10 +16714,10 @@ enifed('ember-metal/expand_properties', ['exports', 'ember-metal/error'], functi
|
|
16713
16714
|
});
|
16714
16715
|
|
16715
16716
|
properties.forEach(function (property) {
|
16716
|
-
callback(property.join(''));
|
16717
|
+
callback(property.join('').replace(END_WITH_EACH_REGEX, '.[]'));
|
16717
16718
|
});
|
16718
16719
|
} else {
|
16719
|
-
callback(pattern);
|
16720
|
+
callback(pattern.replace(END_WITH_EACH_REGEX, '.[]'));
|
16720
16721
|
}
|
16721
16722
|
}
|
16722
16723
|
|
@@ -18595,6 +18596,7 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
18595
18596
|
exports.aliasMethod = aliasMethod;
|
18596
18597
|
exports.observer = observer;
|
18597
18598
|
exports._immediateObserver = _immediateObserver;
|
18599
|
+
exports._beforeObserver = _beforeObserver;
|
18598
18600
|
|
18599
18601
|
function ROOT() {}
|
18600
18602
|
ROOT.__hasSuper = false;
|
@@ -18918,11 +18920,13 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
18918
18920
|
var prev = obj[key];
|
18919
18921
|
|
18920
18922
|
if ('function' === typeof prev) {
|
18923
|
+
updateObserversAndListeners(obj, key, prev, '__ember_observesBefore__', _emberMetalObserver._removeBeforeObserver);
|
18921
18924
|
updateObserversAndListeners(obj, key, prev, '__ember_observes__', _emberMetalObserver.removeObserver);
|
18922
18925
|
updateObserversAndListeners(obj, key, prev, '__ember_listens__', _emberMetalEvents.removeListener);
|
18923
18926
|
}
|
18924
18927
|
|
18925
18928
|
if ('function' === typeof observerOrListener) {
|
18929
|
+
updateObserversAndListeners(obj, key, observerOrListener, '__ember_observesBefore__', _emberMetalObserver._addBeforeObserver);
|
18926
18930
|
updateObserversAndListeners(obj, key, observerOrListener, '__ember_observes__', _emberMetalObserver.addObserver);
|
18927
18931
|
updateObserversAndListeners(obj, key, observerOrListener, '__ember_listens__', _emberMetalEvents.addListener);
|
18928
18932
|
}
|
@@ -19361,8 +19365,6 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
19361
19365
|
var paths;
|
19362
19366
|
|
19363
19367
|
var addWatchedProperty = function (path) {
|
19364
|
-
_emberMetalDebug.assert('Depending on arrays using a dependent key ending with `@each` is no longer supported. ' + ('Please refactor from `Ember.observer(\'' + path + '\', function() {});` to `Ember.observer(\'' + path.slice(0, -6) + '.[]\', function() {})`.'), path.slice(-5) !== '@each');
|
19365
|
-
|
19366
19368
|
paths.push(path);
|
19367
19369
|
};
|
19368
19370
|
var _paths = args.slice(0, -1);
|
@@ -19426,6 +19428,82 @@ enifed('ember-metal/mixin', ['exports', 'ember-metal/core', 'ember-metal/error',
|
|
19426
19428
|
return observer.apply(this, arguments);
|
19427
19429
|
}
|
19428
19430
|
|
19431
|
+
/**
|
19432
|
+
When observers fire, they are called with the arguments `obj`, `keyName`.
|
19433
|
+
|
19434
|
+
Note, `@each.property` observer is called per each add or replace of an element
|
19435
|
+
and it's not called with a specific enumeration item.
|
19436
|
+
|
19437
|
+
A `_beforeObserver` fires before a property changes.
|
19438
|
+
|
19439
|
+
A `_beforeObserver` is an alternative form of `.observesBefore()`.
|
19440
|
+
|
19441
|
+
```javascript
|
19442
|
+
App.PersonView = Ember.View.extend({
|
19443
|
+
friends: [{ name: 'Tom' }, { name: 'Stefan' }, { name: 'Kris' }],
|
19444
|
+
|
19445
|
+
valueDidChange: Ember.observer('content.value', function(obj, keyName) {
|
19446
|
+
// only run if updating a value already in the DOM
|
19447
|
+
if (this.get('state') === 'inDOM') {
|
19448
|
+
var color = obj.get(keyName) > this.changingFrom ? 'green' : 'red';
|
19449
|
+
// logic
|
19450
|
+
}
|
19451
|
+
}),
|
19452
|
+
|
19453
|
+
friendsDidChange: Ember.observer('friends.@each.name', function(obj, keyName) {
|
19454
|
+
// some logic
|
19455
|
+
// obj.get(keyName) returns friends array
|
19456
|
+
})
|
19457
|
+
});
|
19458
|
+
```
|
19459
|
+
|
19460
|
+
Also available as `Function.prototype.observesBefore` if prototype extensions are
|
19461
|
+
enabled.
|
19462
|
+
|
19463
|
+
@method beforeObserver
|
19464
|
+
@for Ember
|
19465
|
+
@param {String} propertyNames*
|
19466
|
+
@param {Function} func
|
19467
|
+
@return func
|
19468
|
+
@deprecated
|
19469
|
+
@private
|
19470
|
+
*/
|
19471
|
+
|
19472
|
+
function _beforeObserver() {
|
19473
|
+
for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
|
19474
|
+
args[_key5] = arguments[_key5];
|
19475
|
+
}
|
19476
|
+
|
19477
|
+
var func = args.slice(-1)[0];
|
19478
|
+
var paths;
|
19479
|
+
|
19480
|
+
var addWatchedProperty = function (path) {
|
19481
|
+
paths.push(path);
|
19482
|
+
};
|
19483
|
+
|
19484
|
+
var _paths = args.slice(0, -1);
|
19485
|
+
|
19486
|
+
if (typeof func !== 'function') {
|
19487
|
+
// revert to old, soft-deprecated argument ordering
|
19488
|
+
|
19489
|
+
func = args[0];
|
19490
|
+
_paths = args.slice(1);
|
19491
|
+
}
|
19492
|
+
|
19493
|
+
paths = [];
|
19494
|
+
|
19495
|
+
for (var i = 0; i < _paths.length; ++i) {
|
19496
|
+
_emberMetalExpand_properties.default(_paths[i], addWatchedProperty);
|
19497
|
+
}
|
19498
|
+
|
19499
|
+
if (typeof func !== 'function') {
|
19500
|
+
throw new _emberMetalCore.default.Error('Ember.beforeObserver called without a function');
|
19501
|
+
}
|
19502
|
+
|
19503
|
+
func.__ember_observesBefore__ = paths;
|
19504
|
+
return func;
|
19505
|
+
}
|
19506
|
+
|
19429
19507
|
exports.IS_BINDING = IS_BINDING;
|
19430
19508
|
exports.Mixin = Mixin;
|
19431
19509
|
exports.required = required;
|
@@ -22579,6 +22657,7 @@ enifed('ember-metal/utils', ['exports'], function (exports) {
|
|
22579
22657
|
|
22580
22658
|
superWrapper.wrappedFunction = func;
|
22581
22659
|
superWrapper.__ember_observes__ = func.__ember_observes__;
|
22660
|
+
superWrapper.__ember_observesBefore__ = func.__ember_observesBefore__;
|
22582
22661
|
superWrapper.__ember_listens__ = func.__ember_listens__;
|
22583
22662
|
|
22584
22663
|
return superWrapper;
|
@@ -22958,6 +23037,7 @@ enifed('ember-metal/watching', ['exports', 'ember-metal/chains', 'ember-metal/wa
|
|
22958
23037
|
'use strict';
|
22959
23038
|
|
22960
23039
|
exports.isWatching = isWatching;
|
23040
|
+
exports.watcherCount = watcherCount;
|
22961
23041
|
exports.unwatch = unwatch;
|
22962
23042
|
exports.destroy = destroy;
|
22963
23043
|
|
@@ -22994,6 +23074,11 @@ enifed('ember-metal/watching', ['exports', 'ember-metal/chains', 'ember-metal/wa
|
|
22994
23074
|
return (meta && meta.peekWatching(key)) > 0;
|
22995
23075
|
}
|
22996
23076
|
|
23077
|
+
function watcherCount(obj, key) {
|
23078
|
+
var meta = _emberMetalMeta.peekMeta(obj);
|
23079
|
+
return meta && meta.peekWatching(key) || 0;
|
23080
|
+
}
|
23081
|
+
|
22997
23082
|
watch.flushPending = _emberMetalChains.flushPendingChains;
|
22998
23083
|
|
22999
23084
|
function unwatch(obj, _keyPath, m) {
|
@@ -25591,6 +25676,10 @@ enifed('ember-routing/system/route', ['exports', 'ember-metal/core', 'ember-meta
|
|
25591
25676
|
subsequent `willTransition` actions to fire for the redirecting
|
25592
25677
|
transition, you must first explicitly call
|
25593
25678
|
`transition.abort()`.
|
25679
|
+
To allow the `willTransition` event to continue bubbling to the parent
|
25680
|
+
route, use `return true;`. When the `willTransition` method has a
|
25681
|
+
return value of `true` then the parent route's `willTransition` method
|
25682
|
+
will be fired, enabling "bubbling" behavior for the event.
|
25594
25683
|
@event willTransition
|
25595
25684
|
@param {Transition} transition
|
25596
25685
|
@public
|
@@ -29675,7 +29764,7 @@ enifed('ember-routing-views/components/link-to', ['exports', 'ember-metal/logger
|
|
29675
29764
|
|
29676
29765
|
'use strict';
|
29677
29766
|
|
29678
|
-
_emberHtmlbarsTemplatesLinkTo.default.meta.revision = 'Ember@2.3.
|
29767
|
+
_emberHtmlbarsTemplatesLinkTo.default.meta.revision = 'Ember@2.3.1';
|
29679
29768
|
|
29680
29769
|
/**
|
29681
29770
|
`Ember.LinkComponent` renders an element whose `click` event triggers a
|
@@ -30165,7 +30254,7 @@ enifed('ember-routing-views/views/outlet', ['exports', 'ember-views/views/view',
|
|
30165
30254
|
|
30166
30255
|
'use strict';
|
30167
30256
|
|
30168
|
-
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.
|
30257
|
+
_emberHtmlbarsTemplatesTopLevelView.default.meta.revision = 'Ember@2.3.1';
|
30169
30258
|
|
30170
30259
|
var CoreOutletView = _emberViewsViewsView.default.extend({
|
30171
30260
|
defaultTemplate: _emberHtmlbarsTemplatesTopLevelView.default,
|
@@ -31398,8 +31487,6 @@ enifed('ember-runtime/ext/function', ['exports', 'ember-metal/core', 'ember-meta
|
|
31398
31487
|
});
|
31399
31488
|
// Ember.EXTEND_PROTOTYPES
|
31400
31489
|
enifed('ember-runtime/ext/rsvp', ['exports', 'ember-metal/core', 'ember-metal/debug', 'ember-metal/logger', 'ember-metal/run_loop', 'rsvp'], function (exports, _emberMetalCore, _emberMetalDebug, _emberMetalLogger, _emberMetalRun_loop, _rsvp) {
|
31401
|
-
/* globals RSVP:true */
|
31402
|
-
|
31403
31490
|
'use strict';
|
31404
31491
|
|
31405
31492
|
exports.onerrorDefault = onerrorDefault;
|
@@ -32676,13 +32763,10 @@ enifed('ember-runtime/mixins/controller', ['exports', 'ember-metal/mixin', 'embe
|
|
32676
32763
|
For example, when a Handlebars template uses the `{{action}}` helper,
|
32677
32764
|
it will attempt to send the action to the view's controller's `target`.
|
32678
32765
|
By default, the value of the target property is set to the router, and
|
32679
|
-
is injected when a controller is instantiated. This injection is
|
32680
|
-
|
32681
|
-
|
32682
|
-
|
32683
|
-
template, or when a controller is used as an `itemController`. In most
|
32684
|
-
cases the `target` property will automatically be set to the logical
|
32685
|
-
consumer of actions for the controller.
|
32766
|
+
is injected when a controller is instantiated. This injection is applied
|
32767
|
+
as part of the application's initialization process. In most cases the
|
32768
|
+
`target` property will automatically be set to the logical consumer of
|
32769
|
+
actions for the controller.
|
32686
32770
|
@property target
|
32687
32771
|
@default null
|
32688
32772
|
@public
|
@@ -35625,21 +35709,7 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35625
35709
|
@type Ember.Array
|
35626
35710
|
@private
|
35627
35711
|
*/
|
35628
|
-
content:
|
35629
|
-
get: function () {
|
35630
|
-
return this._content;
|
35631
|
-
},
|
35632
|
-
set: function (k, v) {
|
35633
|
-
if (this._didInitArrayProxy) {
|
35634
|
-
var oldContent = this._content;
|
35635
|
-
var len = oldContent ? _emberMetalProperty_get.get(oldContent, 'length') : 0;
|
35636
|
-
this.arrangedContentArrayWillChange(this, 0, len, undefined);
|
35637
|
-
this.arrangedContentWillChange(this);
|
35638
|
-
}
|
35639
|
-
this._content = v;
|
35640
|
-
return v;
|
35641
|
-
}
|
35642
|
-
}),
|
35712
|
+
content: null,
|
35643
35713
|
|
35644
35714
|
/**
|
35645
35715
|
The array that the proxy pretends to be. In the default `ArrayProxy`
|
@@ -35647,7 +35717,7 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35647
35717
|
can override this property to provide things like sorting and filtering.
|
35648
35718
|
@property arrangedContent
|
35649
35719
|
@private
|
35650
|
-
|
35720
|
+
*/
|
35651
35721
|
arrangedContent: _emberMetalAlias.default('content'),
|
35652
35722
|
|
35653
35723
|
/**
|
@@ -35681,7 +35751,19 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35681
35751
|
_emberMetalProperty_get.get(this, 'content').replace(idx, amt, objects);
|
35682
35752
|
},
|
35683
35753
|
|
35684
|
-
|
35754
|
+
/**
|
35755
|
+
Invoked when the content property is about to change. Notifies observers that the
|
35756
|
+
entire array content will change.
|
35757
|
+
@private
|
35758
|
+
@method _contentWillChange
|
35759
|
+
*/
|
35760
|
+
_contentWillChange: _emberMetalMixin._beforeObserver('content', function () {
|
35761
|
+
this._teardownContent();
|
35762
|
+
}),
|
35763
|
+
|
35764
|
+
_teardownContent: function () {
|
35765
|
+
var content = _emberMetalProperty_get.get(this, 'content');
|
35766
|
+
|
35685
35767
|
if (content) {
|
35686
35768
|
content.removeArrayObserver(this, {
|
35687
35769
|
willChange: 'contentArrayWillChange',
|
@@ -35719,7 +35801,6 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35719
35801
|
*/
|
35720
35802
|
_contentDidChange: _emberMetalMixin.observer('content', function () {
|
35721
35803
|
var content = _emberMetalProperty_get.get(this, 'content');
|
35722
|
-
this._teardownContent(this._prevContent);
|
35723
35804
|
|
35724
35805
|
_emberMetalDebug.assert('Can\'t set ArrayProxy\'s content to itself', content !== this);
|
35725
35806
|
|
@@ -35728,7 +35809,6 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35728
35809
|
|
35729
35810
|
_setupContent: function () {
|
35730
35811
|
var content = _emberMetalProperty_get.get(this, 'content');
|
35731
|
-
this._prevContent = content;
|
35732
35812
|
|
35733
35813
|
if (content) {
|
35734
35814
|
_emberMetalDebug.assert('ArrayProxy expects an Array or Ember.ArrayProxy, but you passed ' + typeof content, _emberRuntimeUtils.isArray(content) || content.isDestroyed);
|
@@ -35740,8 +35820,17 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35740
35820
|
}
|
35741
35821
|
},
|
35742
35822
|
|
35823
|
+
_arrangedContentWillChange: _emberMetalMixin._beforeObserver('arrangedContent', function () {
|
35824
|
+
var arrangedContent = _emberMetalProperty_get.get(this, 'arrangedContent');
|
35825
|
+
var len = arrangedContent ? _emberMetalProperty_get.get(arrangedContent, 'length') : 0;
|
35826
|
+
|
35827
|
+
this.arrangedContentArrayWillChange(this, 0, len, undefined);
|
35828
|
+
this.arrangedContentWillChange(this);
|
35829
|
+
|
35830
|
+
this._teardownArrangedContent(arrangedContent);
|
35831
|
+
}),
|
35832
|
+
|
35743
35833
|
_arrangedContentDidChange: _emberMetalMixin.observer('arrangedContent', function () {
|
35744
|
-
this._teardownArrangedContent(this._prevArrangedContent);
|
35745
35834
|
var arrangedContent = _emberMetalProperty_get.get(this, 'arrangedContent');
|
35746
35835
|
var len = arrangedContent ? _emberMetalProperty_get.get(arrangedContent, 'length') : 0;
|
35747
35836
|
|
@@ -35755,7 +35844,6 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35755
35844
|
|
35756
35845
|
_setupArrangedContent: function () {
|
35757
35846
|
var arrangedContent = _emberMetalProperty_get.get(this, 'arrangedContent');
|
35758
|
-
this._prevArrangedContent = arrangedContent;
|
35759
35847
|
|
35760
35848
|
if (arrangedContent) {
|
35761
35849
|
_emberMetalDebug.assert('ArrayProxy expects an Array or Ember.ArrayProxy, but you passed ' + typeof arrangedContent, _emberRuntimeUtils.isArray(arrangedContent) || arrangedContent.isDestroyed);
|
@@ -35909,7 +35997,6 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35909
35997
|
},
|
35910
35998
|
|
35911
35999
|
init: function () {
|
35912
|
-
this._didInitArrayProxy = true;
|
35913
36000
|
this._super.apply(this, arguments);
|
35914
36001
|
this._setupContent();
|
35915
36002
|
this._setupArrangedContent();
|
@@ -35917,7 +36004,7 @@ enifed('ember-runtime/system/array_proxy', ['exports', 'ember-metal/debug', 'emb
|
|
35917
36004
|
|
35918
36005
|
willDestroy: function () {
|
35919
36006
|
this._teardownArrangedContent();
|
35920
|
-
this._teardownContent(
|
36007
|
+
this._teardownContent();
|
35921
36008
|
}
|
35922
36009
|
});
|
35923
36010
|
|
@@ -39108,7 +39195,7 @@ enifed('ember-template-compiler/system/compile_options', ['exports', 'ember-meta
|
|
39108
39195
|
options.buildMeta = function buildMeta(program) {
|
39109
39196
|
return {
|
39110
39197
|
fragmentReason: fragmentReason(program),
|
39111
|
-
revision: 'Ember@2.3.
|
39198
|
+
revision: 'Ember@2.3.1',
|
39112
39199
|
loc: program.loc,
|
39113
39200
|
moduleName: options.moduleName
|
39114
39201
|
};
|
@@ -40606,7 +40693,7 @@ enifed('ember-views/component_lookup', ['exports', 'ember-metal/core', 'ember-me
|
|
40606
40693
|
}
|
40607
40694
|
});
|
40608
40695
|
});
|
40609
|
-
enifed('ember-views/components/component', ['exports', 'ember-metal/debug', 'ember-runtime/mixins/target_action_support', 'ember-views/views/view', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/is_none', 'ember-metal/utils', 'ember-metal/computed', 'ember-views/compat/attrs-proxy', 'container/owner'], function (exports, _emberMetalDebug, _emberRuntimeMixinsTarget_action_support, _emberViewsViewsView, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalIs_none, _emberMetalUtils, _emberMetalComputed, _emberViewsCompatAttrsProxy, _containerOwner) {
|
40696
|
+
enifed('ember-views/components/component', ['exports', 'ember-metal/debug', 'ember-metal/environment', 'ember-runtime/mixins/target_action_support', 'ember-views/views/view', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/is_none', 'ember-metal/utils', 'ember-metal/computed', 'ember-views/compat/attrs-proxy', 'container/owner'], function (exports, _emberMetalDebug, _emberMetalEnvironment, _emberRuntimeMixinsTarget_action_support, _emberViewsViewsView, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalIs_none, _emberMetalUtils, _emberMetalComputed, _emberViewsCompatAttrsProxy, _containerOwner) {
|
40610
40697
|
'use strict';
|
40611
40698
|
|
40612
40699
|
function validateAction(component, actionName) {
|
@@ -40751,7 +40838,7 @@ enifed('ember-views/components/component', ['exports', 'ember-metal/debug', 'emb
|
|
40751
40838
|
}
|
40752
40839
|
|
40753
40840
|
// If in a tagless component, assert that no event handlers are defined
|
40754
|
-
_emberMetalDebug.assert('You can not define a function that handles DOM events in the `' + this + '` tagless component since it doesn\'t have any DOM element.', this.tagName !== '' || !(function () {
|
40841
|
+
_emberMetalDebug.assert('You can not define a function that handles DOM events in the `' + this + '` tagless component since it doesn\'t have any DOM element.', this.tagName !== '' || !_emberMetalEnvironment.default.hasDOM || !(function () {
|
40755
40842
|
var eventDispatcher = _containerOwner.getOwner(_this).lookup('event_dispatcher:main');
|
40756
40843
|
var events = eventDispatcher && eventDispatcher._finalEvents || {};
|
40757
40844
|
|
@@ -43466,7 +43553,7 @@ enifed('ember-views/system/build-component-template', ['exports', 'ember-metal/d
|
|
43466
43553
|
})());
|
43467
43554
|
}
|
43468
43555
|
});
|
43469
|
-
enifed('ember-views/system/event_dispatcher', ['exports', 'ember-metal/debug', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/is_none', 'ember-metal/run_loop', 'ember-runtime/system/object', 'ember-views/system/jquery', 'ember-views/system/action_manager', 'ember-views/views/view', 'ember-metal/assign', 'container/owner'], function (exports, _emberMetalDebug, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalIs_none, _emberMetalRun_loop, _emberRuntimeSystemObject, _emberViewsSystemJquery, _emberViewsSystemAction_manager, _emberViewsViewsView, _emberMetalAssign, _containerOwner) {
|
43556
|
+
enifed('ember-views/system/event_dispatcher', ['exports', 'ember-metal/debug', 'ember-metal/property_get', 'ember-metal/property_set', 'ember-metal/is_none', 'ember-metal/run_loop', 'ember-runtime/system/object', 'ember-views/system/jquery', 'ember-views/system/action_manager', 'ember-views/views/view', 'ember-metal/assign', 'container/owner', 'ember-metal/environment'], function (exports, _emberMetalDebug, _emberMetalProperty_get, _emberMetalProperty_set, _emberMetalIs_none, _emberMetalRun_loop, _emberRuntimeSystemObject, _emberViewsSystemJquery, _emberViewsSystemAction_manager, _emberViewsViewsView, _emberMetalAssign, _containerOwner, _emberMetalEnvironment) {
|
43470
43557
|
/**
|
43471
43558
|
@module ember
|
43472
43559
|
@submodule ember-views
|
@@ -43585,6 +43672,11 @@ enifed('ember-views/system/event_dispatcher', ['exports', 'ember-metal/debug', '
|
|
43585
43672
|
*/
|
43586
43673
|
canDispatchToEventManager: true,
|
43587
43674
|
|
43675
|
+
init: function () {
|
43676
|
+
this._super();
|
43677
|
+
_emberMetalDebug.assert('EventDispatcher should never be instantiated in fastboot mode. Please report this as an Ember bug.', _emberMetalEnvironment.default.hasDOM);
|
43678
|
+
},
|
43679
|
+
|
43588
43680
|
/**
|
43589
43681
|
Sets up event listeners for standard browser events.
|
43590
43682
|
This will be called after the browser sends a `DOMContentReady` event. By
|
@@ -44396,7 +44488,7 @@ enifed('ember-views/views/collection_view', ['exports', 'ember-metal/core', 'emb
|
|
44396
44488
|
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) {
|
44397
44489
|
'use strict';
|
44398
44490
|
|
44399
|
-
_emberHtmlbarsTemplatesContainerView.default.meta.revision = 'Ember@2.3.
|
44491
|
+
_emberHtmlbarsTemplatesContainerView.default.meta.revision = 'Ember@2.3.1';
|
44400
44492
|
|
44401
44493
|
/**
|
44402
44494
|
@module ember
|
@@ -49361,8 +49453,16 @@ enifed("morph-attr", ["exports", "morph-attr/sanitize-attribute-value", "dom-hel
|
|
49361
49453
|
|
49362
49454
|
function updateProperty(value) {
|
49363
49455
|
if (this._renderedInitially === true || !_domHelperProp.isAttrRemovalValue(value)) {
|
49364
|
-
|
49365
|
-
|
49456
|
+
var element = this.element;
|
49457
|
+
var attrName = this.attrName;
|
49458
|
+
|
49459
|
+
if (attrName === 'value' && element.tagName === 'INPUT' && element.value === value) {
|
49460
|
+
// Do nothing. Attempts to avoid accidently changing the input cursor location.
|
49461
|
+
// See https://github.com/tildeio/htmlbars/pull/447 for more details.
|
49462
|
+
} else {
|
49463
|
+
// do not render if initial value is undefined or null
|
49464
|
+
this.domHelper.setPropertyStrict(element, attrName, value);
|
49465
|
+
}
|
49366
49466
|
}
|
49367
49467
|
|
49368
49468
|
this._renderedInitially = true;
|