ember-source 1.0.0.rc3.3 → 1.0.0.rc3.4
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of ember-source might be problematic. Click here for more details.
- data/dist/ember-data-deps.js +95 -69
- data/dist/ember-data-deps.min.js +5 -5
- data/dist/ember-data-deps.prod.js +92 -66
- data/dist/ember-debug.js +2 -2
- data/dist/ember-old-router.js +134 -97
- data/dist/ember-old-router.min.js +8 -8
- data/dist/ember-old-router.prod.js +128 -92
- data/dist/ember-runtime.js +95 -69
- data/dist/ember-runtime.min.js +5 -5
- data/dist/ember-runtime.prod.js +92 -66
- data/dist/ember-spade.js +1 -1
- data/dist/ember-template-compiler.js +4 -4
- data/dist/ember-template-compiler.min.js +3 -3
- data/dist/ember-template-compiler.prod.js +1 -1
- data/dist/ember-tests.js +1 -1
- data/dist/ember.js +486 -164
- data/dist/ember.min.js +9 -9
- data/dist/ember.prod.js +478 -157
- metadata +4 -10
data/dist/ember-runtime.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
// Version: v1.0.0-rc.3-
|
2
|
-
// Last commit:
|
1
|
+
// Version: v1.0.0-rc.3-251-gcd5dfe3
|
2
|
+
// Last commit: cd5dfe3 (2013-05-18 11:06:43 -0700)
|
3
3
|
|
4
4
|
|
5
5
|
(function() {
|
@@ -151,8 +151,8 @@ Ember.deprecateFunc = function(message, func) {
|
|
151
151
|
|
152
152
|
})();
|
153
153
|
|
154
|
-
// Version: v1.0.0-rc.3-
|
155
|
-
// Last commit:
|
154
|
+
// Version: v1.0.0-rc.3-251-gcd5dfe3
|
155
|
+
// Last commit: cd5dfe3 (2013-05-18 11:06:43 -0700)
|
156
156
|
|
157
157
|
|
158
158
|
(function() {
|
@@ -827,7 +827,7 @@ Ember.guidFor = function guidFor(obj) {
|
|
827
827
|
if (obj === undefined) return "(undefined)";
|
828
828
|
if (obj === null) return "(null)";
|
829
829
|
|
830
|
-
var
|
830
|
+
var ret;
|
831
831
|
var type = typeof obj;
|
832
832
|
|
833
833
|
// Don't allow prototype changes to String etc. to change the guidFor
|
@@ -1228,7 +1228,7 @@ if (needsFinallyFix) {
|
|
1228
1228
|
*/
|
1229
1229
|
if (needsFinallyFix) {
|
1230
1230
|
Ember.tryCatchFinally = function(tryable, catchable, finalizer, binding) {
|
1231
|
-
var result, finalResult, finalError
|
1231
|
+
var result, finalResult, finalError;
|
1232
1232
|
|
1233
1233
|
binding = binding || this;
|
1234
1234
|
|
@@ -2124,7 +2124,7 @@ var o_create = Ember.create,
|
|
2124
2124
|
metaFor = Ember.meta,
|
2125
2125
|
META_KEY = Ember.META_KEY,
|
2126
2126
|
/* listener flags */
|
2127
|
-
ONCE = 1, SUSPENDED = 2
|
2127
|
+
ONCE = 1, SUSPENDED = 2;
|
2128
2128
|
|
2129
2129
|
/*
|
2130
2130
|
The event system uses a series of nested hashes to store listeners on an
|
@@ -2741,11 +2741,11 @@ var endPropertyChanges = Ember.endPropertyChanges = function() {
|
|
2741
2741
|
});
|
2742
2742
|
```
|
2743
2743
|
|
2744
|
-
@method
|
2744
|
+
@method changeProperties
|
2745
2745
|
@param {Function} callback
|
2746
2746
|
@param [binding]
|
2747
2747
|
*/
|
2748
|
-
|
2748
|
+
Ember.changeProperties = function(cb, binding){
|
2749
2749
|
beginPropertyChanges();
|
2750
2750
|
tryFinally(cb, endPropertyChanges, binding);
|
2751
2751
|
};
|
@@ -2950,7 +2950,7 @@ var MANDATORY_SETTER = Ember.ENV.MANDATORY_SETTER;
|
|
2950
2950
|
@private
|
2951
2951
|
@constructor
|
2952
2952
|
*/
|
2953
|
-
|
2953
|
+
Ember.Descriptor = function() {};
|
2954
2954
|
|
2955
2955
|
// ..........................................................
|
2956
2956
|
// DEFINING PROPERTIES API
|
@@ -3511,7 +3511,7 @@ Ember.watchPath = function(obj, keyPath) {
|
|
3511
3511
|
};
|
3512
3512
|
|
3513
3513
|
Ember.unwatchPath = function(obj, keyPath) {
|
3514
|
-
var m = metaFor(obj), watching = m.watching
|
3514
|
+
var m = metaFor(obj), watching = m.watching;
|
3515
3515
|
|
3516
3516
|
if (watching[keyPath] === 1) {
|
3517
3517
|
watching[keyPath] = 0;
|
@@ -4057,7 +4057,6 @@ ComputedPropertyPrototype.teardown = function(obj, keyName) {
|
|
4057
4057
|
The function should accept two parameters, key and value. If value is not
|
4058
4058
|
undefined you should set the value first. In either case return the
|
4059
4059
|
current value of the property.
|
4060
|
-
|
4061
4060
|
@method computed
|
4062
4061
|
@for Ember
|
4063
4062
|
@param {Function} func The computed property function.
|
@@ -4299,7 +4298,7 @@ registerComputedWithProperties('or', function(properties) {
|
|
4299
4298
|
@for Ember
|
4300
4299
|
@param {String} dependentKey, [dependentKey...]
|
4301
4300
|
@return {Ember.ComputedProperty} computed property which returns
|
4302
|
-
the first
|
4301
|
+
the first truthy value of given list of properties.
|
4303
4302
|
*/
|
4304
4303
|
registerComputedWithProperties('any', function(properties) {
|
4305
4304
|
for (var key in properties) {
|
@@ -4349,6 +4348,48 @@ Ember.computed.alias = function(dependentKey) {
|
|
4349
4348
|
});
|
4350
4349
|
};
|
4351
4350
|
|
4351
|
+
/**
|
4352
|
+
@method computed.oneWay
|
4353
|
+
@for Ember
|
4354
|
+
@param {String} dependentKey
|
4355
|
+
@return {Ember.ComputedProperty} computed property which creates an
|
4356
|
+
one way computed property to the original value for property.
|
4357
|
+
|
4358
|
+
Where `computed.alias` aliases `get` and `set`, and allows for bidirectional
|
4359
|
+
data flow, `computed.oneWay` only provides an aliased `get`. The `set` will
|
4360
|
+
not mutate the upstream property, rather causes the current property to
|
4361
|
+
become the value set. This causes the downstream property to permentantly
|
4362
|
+
diverge from the upstream property.
|
4363
|
+
|
4364
|
+
```javascript
|
4365
|
+
User = Ember.Object.extend({
|
4366
|
+
firstName: null,
|
4367
|
+
lastName: null,
|
4368
|
+
nickName: Ember.computed.oneWay('firstName')
|
4369
|
+
});
|
4370
|
+
|
4371
|
+
user = User.create({
|
4372
|
+
firstName: 'Teddy',
|
4373
|
+
lastName: 'Zeenny'
|
4374
|
+
});
|
4375
|
+
|
4376
|
+
user.get('nickName');
|
4377
|
+
# 'Teddy'
|
4378
|
+
|
4379
|
+
user.set('nickName', 'TeddyBear');
|
4380
|
+
# 'TeddyBear'
|
4381
|
+
|
4382
|
+
user.get('firstName');
|
4383
|
+
# 'Teddy'
|
4384
|
+
```
|
4385
|
+
*/
|
4386
|
+
Ember.computed.oneWay = function(dependentKey) {
|
4387
|
+
return Ember.computed(dependentKey, function() {
|
4388
|
+
return get(this, dependentKey);
|
4389
|
+
});
|
4390
|
+
};
|
4391
|
+
|
4392
|
+
|
4352
4393
|
/**
|
4353
4394
|
@method computed.defaultTo
|
4354
4395
|
@for Ember
|
@@ -4378,8 +4419,6 @@ Ember.computed.defaultTo = function(defaultPath) {
|
|
4378
4419
|
var AFTER_OBSERVERS = ':change';
|
4379
4420
|
var BEFORE_OBSERVERS = ':before';
|
4380
4421
|
|
4381
|
-
var guidFor = Ember.guidFor;
|
4382
|
-
|
4383
4422
|
function changeEvent(keyName) {
|
4384
4423
|
return keyName+AFTER_OBSERVERS;
|
4385
4424
|
}
|
@@ -5538,7 +5577,7 @@ mixinProperties(Binding, {
|
|
5538
5577
|
|
5539
5578
|
You should consider using one way bindings anytime you have an object that
|
5540
5579
|
may be created frequently and you do not intend to change a property; only
|
5541
|
-
to monitor it for changes
|
5580
|
+
to monitor it for changes (such as in the example above).
|
5542
5581
|
|
5543
5582
|
## Adding Bindings Manually
|
5544
5583
|
|
@@ -5839,14 +5878,6 @@ function mergeMixins(mixins, m, descs, values, base, keys) {
|
|
5839
5878
|
}
|
5840
5879
|
}
|
5841
5880
|
|
5842
|
-
function writableReq(obj) {
|
5843
|
-
var m = Ember.meta(obj), req = m.required;
|
5844
|
-
if (!req || !m.hasOwnProperty('required')) {
|
5845
|
-
req = m.required = req ? o_create(req) : {};
|
5846
|
-
}
|
5847
|
-
return req;
|
5848
|
-
}
|
5849
|
-
|
5850
5881
|
var IS_BINDING = Ember.IS_BINDING = /^.+Binding$/;
|
5851
5882
|
|
5852
5883
|
function detectBinding(obj, key, value, m) {
|
@@ -7505,7 +7536,7 @@ var errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'n
|
|
7505
7536
|
@constructor
|
7506
7537
|
*/
|
7507
7538
|
Ember.Error = function() {
|
7508
|
-
var tmp = Error.
|
7539
|
+
var tmp = Error.apply(this, arguments);
|
7509
7540
|
|
7510
7541
|
// Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.
|
7511
7542
|
for (var idx = 0; idx < errorProps.length; idx++) {
|
@@ -7767,10 +7798,12 @@ Ember.String = {
|
|
7767
7798
|
/**
|
7768
7799
|
Returns the Capitalized form of a string
|
7769
7800
|
|
7770
|
-
|
7771
|
-
|
7772
|
-
|
7773
|
-
|
7801
|
+
```javascript
|
7802
|
+
'innerHTML'.capitalize() // 'InnerHTML'
|
7803
|
+
'action_name'.capitalize() // 'Action_name'
|
7804
|
+
'css-class-name'.capitalize() // 'Css-class-name'
|
7805
|
+
'my favorite items'.capitalize() // 'My favorite items'
|
7806
|
+
```
|
7774
7807
|
|
7775
7808
|
@method capitalize
|
7776
7809
|
@param {String} str
|
@@ -8938,7 +8971,7 @@ var get = Ember.get, set = Ember.set, isNone = Ember.isNone, map = Ember.Enumera
|
|
8938
8971
|
|
8939
8972
|
You can use the methods defined in this module to access and modify array
|
8940
8973
|
contents in a KVO-friendly way. You can also be notified whenever the
|
8941
|
-
membership
|
8974
|
+
membership of an array changes by changing the syntax of the property to
|
8942
8975
|
`.observes('*myProperty.[]')`.
|
8943
8976
|
|
8944
8977
|
To support `Ember.Array` in your own class, you must override two
|
@@ -8955,9 +8988,6 @@ var get = Ember.get, set = Ember.set, isNone = Ember.isNone, map = Ember.Enumera
|
|
8955
8988
|
*/
|
8956
8989
|
Ember.Array = Ember.Mixin.create(Ember.Enumerable, /** @scope Ember.Array.prototype */ {
|
8957
8990
|
|
8958
|
-
// compatibility
|
8959
|
-
isSCArray: true,
|
8960
|
-
|
8961
8991
|
/**
|
8962
8992
|
Your array must support the `length` property. Your replace methods should
|
8963
8993
|
set this property whenever it changes.
|
@@ -9414,8 +9444,7 @@ var get = Ember.get, set = Ember.set;
|
|
9414
9444
|
@extends Ember.Mixin
|
9415
9445
|
@since Ember 0.9
|
9416
9446
|
*/
|
9417
|
-
Ember.Copyable = Ember.Mixin.create(
|
9418
|
-
/** @scope Ember.Copyable.prototype */ {
|
9447
|
+
Ember.Copyable = Ember.Mixin.create(/** @scope Ember.Copyable.prototype */ {
|
9419
9448
|
|
9420
9449
|
/**
|
9421
9450
|
Override to return a copy of the receiver. Default implementation raises
|
@@ -9520,8 +9549,7 @@ var get = Ember.get, set = Ember.set;
|
|
9520
9549
|
@extends Ember.Mixin
|
9521
9550
|
@since Ember 0.9
|
9522
9551
|
*/
|
9523
|
-
Ember.Freezable = Ember.Mixin.create(
|
9524
|
-
/** @scope Ember.Freezable.prototype */ {
|
9552
|
+
Ember.Freezable = Ember.Mixin.create(/** @scope Ember.Freezable.prototype */ {
|
9525
9553
|
|
9526
9554
|
/**
|
9527
9555
|
Set to `true` when the object is frozen. Use this property to detect
|
@@ -9702,8 +9730,7 @@ var get = Ember.get, set = Ember.set;
|
|
9702
9730
|
@uses Ember.Array
|
9703
9731
|
@uses Ember.MutableEnumerable
|
9704
9732
|
*/
|
9705
|
-
Ember.MutableArray = Ember.Mixin.create(Ember.Array, Ember.MutableEnumerable
|
9706
|
-
/** @scope Ember.MutableArray.prototype */ {
|
9733
|
+
Ember.MutableArray = Ember.Mixin.create(Ember.Array, Ember.MutableEnumerable,/** @scope Ember.MutableArray.prototype */ {
|
9707
9734
|
|
9708
9735
|
/**
|
9709
9736
|
__Required.__ You must implement this method to apply this mixin.
|
@@ -9974,7 +10001,6 @@ Ember.MutableArray = Ember.Mixin.create(Ember.Array, Ember.MutableEnumerable,
|
|
9974
10001
|
|
9975
10002
|
});
|
9976
10003
|
|
9977
|
-
|
9978
10004
|
})();
|
9979
10005
|
|
9980
10006
|
|
@@ -10022,7 +10048,7 @@ var get = Ember.get, set = Ember.set;
|
|
10022
10048
|
For example:
|
10023
10049
|
|
10024
10050
|
```javascript
|
10025
|
-
Ember.Object.
|
10051
|
+
Ember.Object.extend({
|
10026
10052
|
valueObserver: function() {
|
10027
10053
|
// Executes whenever the "value" property changes
|
10028
10054
|
}.observes('value')
|
@@ -10041,8 +10067,8 @@ var get = Ember.get, set = Ember.set;
|
|
10041
10067
|
object.addObserver('propertyKey', targetObject, targetAction)
|
10042
10068
|
```
|
10043
10069
|
|
10044
|
-
This will call the `targetAction` method on the `targetObject`
|
10045
|
-
|
10070
|
+
This will call the `targetAction` method on the `targetObject` whenever
|
10071
|
+
the value of the `propertyKey` changes.
|
10046
10072
|
|
10047
10073
|
Note that if `propertyKey` is a computed property, the observer will be
|
10048
10074
|
called when any of the property dependencies are changed, even if the
|
@@ -10302,8 +10328,8 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10302
10328
|
|
10303
10329
|
This is the core method used to register an observer for a property.
|
10304
10330
|
|
10305
|
-
Once you call this method,
|
10306
|
-
will be notified. Note that the observers are triggered
|
10331
|
+
Once you call this method, any time the key's value is set, your observer
|
10332
|
+
will be notified. Note that the observers are triggered any time the
|
10307
10333
|
value is set, regardless of whether it has actually changed. Your
|
10308
10334
|
observer should be prepared to handle that.
|
10309
10335
|
|
@@ -10428,8 +10454,8 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10428
10454
|
|
10429
10455
|
@method incrementProperty
|
10430
10456
|
@param {String} keyName The name of the property to increment
|
10431
|
-
@param {
|
10432
|
-
@return {
|
10457
|
+
@param {Number} increment The amount to increment by. Defaults to 1
|
10458
|
+
@return {Number} The new property value
|
10433
10459
|
*/
|
10434
10460
|
incrementProperty: function(keyName, increment) {
|
10435
10461
|
if (Ember.isNone(increment)) { increment = 1; }
|
@@ -10447,12 +10473,12 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10447
10473
|
|
10448
10474
|
@method decrementProperty
|
10449
10475
|
@param {String} keyName The name of the property to decrement
|
10450
|
-
@param {
|
10451
|
-
@return {
|
10476
|
+
@param {Number} decrement The amount to decrement by. Defaults to 1
|
10477
|
+
@return {Number} The new property value
|
10452
10478
|
*/
|
10453
|
-
decrementProperty: function(keyName,
|
10454
|
-
if (Ember.isNone(
|
10455
|
-
set(this, keyName, (get(this, keyName) || 0)-
|
10479
|
+
decrementProperty: function(keyName, decrement) {
|
10480
|
+
if (Ember.isNone(decrement)) { decrement = 1; }
|
10481
|
+
set(this, keyName, (get(this, keyName) || 0)-decrement);
|
10456
10482
|
return get(this, keyName);
|
10457
10483
|
},
|
10458
10484
|
|
@@ -10461,7 +10487,7 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10461
10487
|
current value.
|
10462
10488
|
|
10463
10489
|
```javascript
|
10464
|
-
starship.toggleProperty('
|
10490
|
+
starship.toggleProperty('warpDriveEngaged');
|
10465
10491
|
```
|
10466
10492
|
|
10467
10493
|
@method toggleProperty
|
@@ -10493,7 +10519,6 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10493
10519
|
}
|
10494
10520
|
});
|
10495
10521
|
|
10496
|
-
|
10497
10522
|
})();
|
10498
10523
|
|
10499
10524
|
|
@@ -10819,15 +10844,15 @@ Ember.DeferredMixin = Ember.Mixin.create({
|
|
10819
10844
|
deferred = get(this, '_deferred');
|
10820
10845
|
promise = deferred.promise;
|
10821
10846
|
|
10822
|
-
|
10847
|
+
function fulfillmentHandler(fulfillment) {
|
10823
10848
|
if (fulfillment === promise) {
|
10824
10849
|
return resolve(entity);
|
10825
10850
|
} else {
|
10826
10851
|
return resolve(fulfillment);
|
10827
10852
|
}
|
10828
|
-
}
|
10829
|
-
|
10830
|
-
|
10853
|
+
}
|
10854
|
+
|
10855
|
+
return promise.then(resolve && fulfillmentHandler, reject);
|
10831
10856
|
},
|
10832
10857
|
|
10833
10858
|
/**
|
@@ -11691,8 +11716,7 @@ var get = Ember.get, set = Ember.set;
|
|
11691
11716
|
@extends Ember.Object
|
11692
11717
|
@uses Ember.MutableArray
|
11693
11718
|
*/
|
11694
|
-
Ember.ArrayProxy = Ember.Object.extend(Ember.MutableArray
|
11695
|
-
/** @scope Ember.ArrayProxy.prototype */ {
|
11719
|
+
Ember.ArrayProxy = Ember.Object.extend(Ember.MutableArray,/** @scope Ember.ArrayProxy.prototype */ {
|
11696
11720
|
|
11697
11721
|
/**
|
11698
11722
|
The content array. Must be an object that implements `Ember.Array` and/or
|
@@ -11968,7 +11992,6 @@ Ember.ArrayProxy = Ember.Object.extend(Ember.MutableArray,
|
|
11968
11992
|
}
|
11969
11993
|
});
|
11970
11994
|
|
11971
|
-
|
11972
11995
|
})();
|
11973
11996
|
|
11974
11997
|
|
@@ -12068,8 +12091,7 @@ function contentPropertyDidChange(content, contentKey) {
|
|
12068
12091
|
@namespace Ember
|
12069
12092
|
@extends Ember.Object
|
12070
12093
|
*/
|
12071
|
-
Ember.ObjectProxy = Ember.Object.extend(
|
12072
|
-
/** @scope Ember.ObjectProxy.prototype */ {
|
12094
|
+
Ember.ObjectProxy = Ember.Object.extend(/** @scope Ember.ObjectProxy.prototype */ {
|
12073
12095
|
/**
|
12074
12096
|
The object whose properties will be forwarded.
|
12075
12097
|
|
@@ -13090,20 +13112,19 @@ Ember.ControllerMixin = Ember.Mixin.create({
|
|
13090
13112
|
|
13091
13113
|
container: null,
|
13092
13114
|
|
13115
|
+
parentController: null,
|
13116
|
+
|
13093
13117
|
store: null,
|
13094
13118
|
|
13095
13119
|
model: Ember.computed.alias('content'),
|
13096
13120
|
|
13097
13121
|
send: function(actionName) {
|
13098
|
-
var args = [].slice.call(arguments, 1), target
|
13099
|
-
bubble = true;
|
13122
|
+
var args = [].slice.call(arguments, 1), target;
|
13100
13123
|
|
13101
13124
|
if (this[actionName]) {
|
13102
13125
|
Ember.assert("The controller " + this + " does not have the action " + actionName, typeof this[actionName] === 'function');
|
13103
|
-
|
13104
|
-
}
|
13105
|
-
|
13106
|
-
if (bubble && (target = get(this, 'target'))) {
|
13126
|
+
this[actionName].apply(this, args);
|
13127
|
+
} else if(target = get(this, 'target')) {
|
13107
13128
|
Ember.assert("The target for controller " + this + " (" + target + ") did not define a `send` method", typeof target.send === 'function');
|
13108
13129
|
target.send.apply(target, arguments);
|
13109
13130
|
}
|
@@ -13435,6 +13456,10 @@ var get = Ember.get, set = Ember.set, forEach = Ember.EnumerableUtils.forEach,
|
|
13435
13456
|
});
|
13436
13457
|
```
|
13437
13458
|
|
13459
|
+
The itemController instances will have a `parentController` property set to
|
13460
|
+
either the the `parentController` property of the `ArrayController`
|
13461
|
+
or to the `ArrayController` instance itself.
|
13462
|
+
|
13438
13463
|
@class ArrayController
|
13439
13464
|
@namespace Ember
|
13440
13465
|
@extends Ember.ArrayProxy
|
@@ -13545,6 +13570,7 @@ Ember.ArrayController = Ember.ArrayProxy.extend(Ember.ControllerMixin,
|
|
13545
13570
|
}
|
13546
13571
|
|
13547
13572
|
subController.set('target', this);
|
13573
|
+
subController.set('parentController', get(this, 'parentController') || this);
|
13548
13574
|
subController.set('content', object);
|
13549
13575
|
|
13550
13576
|
return subController;
|
data/dist/ember-runtime.min.js
CHANGED
@@ -8,10 +8,10 @@
|
|
8
8
|
// ==========================================================================
|
9
9
|
|
10
10
|
|
11
|
-
// Version: v1.0.0-rc.3-
|
12
|
-
// Last commit:
|
11
|
+
// Version: v1.0.0-rc.3-251-gcd5dfe3
|
12
|
+
// Last commit: cd5dfe3 (2013-05-18 11:06:43 -0700)
|
13
13
|
|
14
14
|
|
15
|
-
(function(){var e,r;(function(){var t={},n={};e=function(e,r,n){t[e]={deps:r,callback:n}},r=function(e){if(n[e])return n[e];n[e]={};for(var i,o=t[e],s=o.deps,a=o.callback,u=[],c=0,h=s.length;h>c;c++)"exports"===s[c]?u.push(i={}):u.push(r(s[c]));var l=a.apply(this,u);return n[e]=i||l}})(),function(){function e(e){return r.console&&r.console[e]?r.console[e].apply?function(){r.console[e].apply(r.console,arguments)}:function(){var t=Array.prototype.join.call(arguments,", ");r.console[e](t)}:void 0}"undefined"==typeof Ember&&(Ember={});var r=Ember.imports=Ember.imports||this,t=Ember.exports=Ember.exports||this;Ember.lookup=Ember.lookup||this,t.Em=t.Ember=Em=Ember,Ember.isNamespace=!0,Ember.toString=function(){return"Ember"},Ember.VERSION="1.0.0-rc.3",Ember.ENV=Ember.ENV||("undefined"==typeof ENV?{}:ENV),Ember.config=Ember.config||{},Ember.EXTEND_PROTOTYPES=Ember.ENV.EXTEND_PROTOTYPES,"undefined"==typeof Ember.EXTEND_PROTOTYPES&&(Ember.EXTEND_PROTOTYPES=!0),Ember.LOG_STACKTRACE_ON_DEPRECATION=Ember.ENV.LOG_STACKTRACE_ON_DEPRECATION!==!1,Ember.SHIM_ES5=Ember.ENV.SHIM_ES5===!1?!1:Ember.EXTEND_PROTOTYPES,Ember.LOG_VERSION=Ember.ENV.LOG_VERSION===!1?!1:!0,Ember.K=function(){return this},"undefined"==typeof Ember.assert&&(Ember.assert=Ember.K),"undefined"==typeof Ember.warn&&(Ember.warn=Ember.K),"undefined"==typeof Ember.debug&&(Ember.debug=Ember.K),"undefined"==typeof Ember.deprecate&&(Ember.deprecate=Ember.K),"undefined"==typeof Ember.deprecateFunc&&(Ember.deprecateFunc=function(e,r){return r}),Ember.uuid=0,Ember.Logger={log:e("log")||Ember.K,warn:e("warn")||Ember.K,error:e("error")||Ember.K,info:e("info")||Ember.K,debug:e("debug")||e("info")||Ember.K},Ember.onerror=null,Ember.handleErrors=function(e,r){if("function"!=typeof Ember.onerror)return e.call(r||this);try{return e.call(r||this)}catch(t){Ember.onerror(t)}},Ember.merge=function(e,r){for(var t in r)r.hasOwnProperty(t)&&(e[t]=r[t]);return e},Ember.isNone=function(e){return null===e||void 0===e},Ember.none=Ember.deprecateFunc("Ember.none is deprecated. Please use Ember.isNone instead.",Ember.isNone),Ember.isEmpty=function(e){return Ember.isNone(e)||0===e.length&&"function"!=typeof e||"object"==typeof e&&0===Ember.get(e,"length")},Ember.empty=Ember.deprecateFunc("Ember.empty is deprecated. Please use Ember.isEmpty instead.",Ember.isEmpty)}(),function(){var e=Ember.platform={};if(Ember.create=Object.create,Ember.create&&2!==Ember.create({a:1},{a:{value:2}}).a&&(Ember.create=null),!Ember.create||Ember.ENV.STUB_OBJECT_CREATE){var r=function(){};Ember.create=function(e,t){if(r.prototype=e,e=new r,t){r.prototype=e;for(var n in t)r.prototype[n]=t[n].value;e=new r}return r.prototype=null,e},Ember.create.isSimulated=!0}var t,n,i=Object.defineProperty;if(i)try{i({},"a",{get:function(){}})}catch(o){i=null}i&&(t=function(){var e={};return i(e,"a",{configurable:!0,enumerable:!0,get:function(){},set:function(){}}),i(e,"a",{configurable:!0,enumerable:!0,writable:!0,value:!0}),e.a===!0}(),n=function(){try{return i(document.createElement("div"),"definePropertyOnDOM",{}),!0}catch(e){}return!1}(),t?n||(i=function(e,r,t){var n;return n="object"==typeof Node?e instanceof Node:"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName,n?e[r]=t.value:Object.defineProperty(e,r,t)}):i=null),e.defineProperty=i,e.hasPropertyAccessors=!0,e.defineProperty||(e.hasPropertyAccessors=!1,e.defineProperty=function(e,r,t){t.get||(e[r]=t.value)},e.defineProperty.isSimulated=!0),Ember.ENV.MANDATORY_SETTER&&!e.hasPropertyAccessors&&(Ember.ENV.MANDATORY_SETTER=!1)}(),function(){var e=function(e){return e&&Function.prototype.toString.call(e).indexOf("[native code]")>-1},r=e(Array.prototype.map)?Array.prototype.map:function(e){if(void 0===this||null===this)throw new TypeError;var r=Object(this),t=r.length>>>0;if("function"!=typeof e)throw new TypeError;for(var n=new Array(t),i=arguments[1],o=0;t>o;o++)o in r&&(n[o]=e.call(i,r[o],o,r));return n},t=e(Array.prototype.forEach)?Array.prototype.forEach:function(e){if(void 0===this||null===this)throw new TypeError;var r=Object(this),t=r.length>>>0;if("function"!=typeof e)throw new TypeError;for(var n=arguments[1],i=0;t>i;i++)i in r&&e.call(n,r[i],i,r)},n=e(Array.prototype.indexOf)?Array.prototype.indexOf:function(e,r){null===r||void 0===r?r=0:0>r&&(r=Math.max(0,this.length+r));for(var t=r,n=this.length;n>t;t++)if(this[t]===e)return t;return-1};Ember.ArrayPolyfills={map:r,forEach:t,indexOf:n},Ember.SHIM_ES5&&(Array.prototype.map||(Array.prototype.map=r),Array.prototype.forEach||(Array.prototype.forEach=t),Array.prototype.indexOf||(Array.prototype.indexOf=n))}(),function(){function e(e){this.descs={},this.watching={},this.cache={},this.source=e}function r(e,r){return!(!e||"function"!=typeof e[r])}var t=Ember.platform.defineProperty,n=Ember.create,i="__ember"+ +new Date,o=0,s=[],a={},u=Ember.ENV.MANDATORY_SETTER;Ember.GUID_KEY=i;var c={writable:!1,configurable:!1,enumerable:!1,value:null};Ember.generateGuid=function(e,r){r||(r="ember");var n=r+o++;return e&&(c.value=n,t(e,i,c)),n},Ember.guidFor=function(e){if(void 0===e)return"(undefined)";if(null===e)return"(null)";var r,n=typeof e;switch(n){case"number":return r=s[e],r||(r=s[e]="nu"+e),r;case"string":return r=a[e],r||(r=a[e]="st"+o++),r;case"boolean":return e?"(true)":"(false)";default:return e[i]?e[i]:e===Object?"(Object)":e===Array?"(Array)":(r="ember"+o++,c.value=r,t(e,i,c),r)}};var h={writable:!0,configurable:!1,enumerable:!1,value:null},l=Ember.GUID_KEY+"_meta";Ember.META_KEY=l;var f={descs:{},watching:{}};u&&(f.values={}),Ember.EMPTY_META=f,Object.freeze&&Object.freeze(f);var m=Ember.platform.defineProperty.isSimulated;m&&(e.prototype.__preventPlainObject__=!0,e.prototype.toJSON=function(){}),Ember.meta=function(r,i){var o=r[l];return i===!1?o||f:(o?o.source!==r&&(m||t(r,l,h),o=n(o),o.descs=n(o.descs),o.watching=n(o.watching),o.cache={},o.source=r,u&&(o.values=n(o.values)),r[l]=o):(m||t(r,l,h),o=new e(r),u&&(o.values={}),r[l]=o,o.descs.constructor=null),o)},Ember.getMeta=function(e,r){var t=Ember.meta(e,!1);return t[r]},Ember.setMeta=function(e,r,t){var n=Ember.meta(e,!0);return n[r]=t,t},Ember.metaPath=function(e,r,t){for(var i,o,s=Ember.meta(e,t),a=0,u=r.length;u>a;a++){if(i=r[a],o=s[i]){if(o.__ember_source__!==e){if(!t)return void 0;o=s[i]=n(o),o.__ember_source__=e}}else{if(!t)return void 0;o=s[i]={__ember_source__:e}}s=o}return o},Ember.wrap=function(e,r){function t(){}function n(){var n,i=this._super;return this._super=r||t,n=e.apply(this,arguments),this._super=i,n}return n.wrappedFunction=e,n.__ember_observes__=e.__ember_observes__,n.__ember_observesBefore__=e.__ember_observesBefore__,n},Ember.isArray=function(e){return!e||e.setInterval?!1:Array.isArray&&Array.isArray(e)?!0:Ember.Array&&Ember.Array.detect(e)?!0:void 0!==e.length&&"object"==typeof e?!0:!1},Ember.makeArray=function(e){return null===e||void 0===e?[]:Ember.isArray(e)?e:[e]},Ember.canInvoke=r,Ember.tryInvoke=function(e,t,n){return r(e,t)?e[t].apply(e,n||[]):void 0};var b=function(){var e=0;try{try{}finally{throw e++,new Error("needsFinallyFixTest")}}catch(r){}return 1!==e}();Ember.tryFinally=b?function(e,r,t){var n,i,o;t=t||this;try{n=e.call(t)}finally{try{i=r.call(t)}catch(s){o=s}}if(o)throw o;return void 0===i?n:i}:function(e,r,t){var n,i;t=t||this;try{n=e.call(t)}finally{i=r.call(t)}return void 0===i?n:i},Ember.tryCatchFinally=b?function(e,r,t,n){var i,o,s;n=n||this;try{i=e.call(n)}catch(a){i=r.call(n,a)}finally{try{o=t.call(n)}catch(u){s=u}}if(s)throw s;return void 0===o?i:o}:function(e,r,t,n){var i,o;n=n||this;try{i=e.call(n)}catch(s){i=r.call(n,s)}finally{o=t.call(n)}return void 0===o?i:o};var p={},E="Boolean Number String Function Array Date RegExp Object".split(" ");Ember.ArrayPolyfills.forEach.call(E,function(e){p["[object "+e+"]"]=e.toLowerCase()});var d=Object.prototype.toString;Ember.typeOf=function(e){var r;return r=null===e||void 0===e?String(e):p[d.call(e)]||"object","function"===r?Ember.Object&&Ember.Object.detect(e)&&(r="class"):"object"===r&&(r=e instanceof Error?"error":Ember.Object&&e instanceof Ember.Object?"instance":"object"),r}}(),function(){Ember.Instrumentation={};var e=[],r={},t=function(t){for(var n,i=[],o=0,s=e.length;s>o;o++)n=e[o],n.regex.test(t)&&i.push(n.object);return r[t]=i,i},n=function(){var e="undefined"!=typeof window?window.performance||{}:{},r=e.now||e.mozNow||e.webkitNow||e.msNow||e.oNow;return r?r.bind(e):function(){return+new Date}}();Ember.Instrumentation.instrument=function(e,i,o,s){function a(){for(b=0,p=f.length;p>b;b++)m=f[b],E[b]=m.before(e,n(),i);return o.call(s)}function u(e){i=i||{},i.exception=e}function c(){for(b=0,p=f.length;p>b;b++)m=f[b],m.after(e,n(),i,E[b]);Ember.STRUCTURED_PROFILE&&console.timeEnd(h)}var h,l,f=r[e];if(Ember.STRUCTURED_PROFILE&&(h=e+": "+i.object,console.time(h)),f||(f=t(e)),0===f.length)return l=o.call(s),Ember.STRUCTURED_PROFILE&&console.timeEnd(h),l;var m,b,p,E=[];return Ember.tryCatchFinally(a,u,c)},Ember.Instrumentation.subscribe=function(t,n){for(var i,o=t.split("."),s=[],a=0,u=o.length;u>a;a++)i=o[a],"*"===i?s.push("[^\\.]*"):s.push(i);s=s.join("\\."),s+="(\\..*)?";var c={pattern:t,regex:new RegExp("^"+s+"$"),object:n};return e.push(c),r={},c},Ember.Instrumentation.unsubscribe=function(t){for(var n,i=0,o=e.length;o>i;i++)e[i]===t&&(n=i);e.splice(n,1),r={}},Ember.Instrumentation.reset=function(){e=[],r={}},Ember.instrument=Ember.Instrumentation.instrument,Ember.subscribe=Ember.Instrumentation.subscribe}(),function(){var e,r,t,n;n=Array.prototype.concat,e=Array.prototype.map||Ember.ArrayPolyfills.map,r=Array.prototype.forEach||Ember.ArrayPolyfills.forEach,t=Array.prototype.indexOf||Ember.ArrayPolyfills.indexOf;var i=Ember.EnumerableUtils={map:function(r,t,n){return r.map?r.map.call(r,t,n):e.call(r,t,n)},forEach:function(e,t,n){return e.forEach?e.forEach.call(e,t,n):r.call(e,t,n)},indexOf:function(e,r,n){return e.indexOf?e.indexOf.call(e,r,n):t.call(e,r,n)},indexesOf:function(e,r){return void 0===r?[]:i.map(r,function(r){return i.indexOf(e,r)})},addObject:function(e,r){var t=i.indexOf(e,r);-1===t&&e.push(r)},removeObject:function(e,r){var t=i.indexOf(e,r);-1!==t&&e.splice(t,1)},replace:function(e,r,t,i){if(e.replace)return e.replace(r,t,i);var o=n.apply([r,t],i);return e.splice.apply(e,o)},intersection:function(e,r){var t=[];return i.forEach(e,function(e){i.indexOf(r,e)>=0&&t.push(e)}),t}}}(),function(){var e=Ember.guidFor,r=Ember.ArrayPolyfills.indexOf,t=function(e){var r={};for(var t in e)e.hasOwnProperty(t)&&(r[t]=e[t]);return r},n=function(e,r){var n=e.keys.copy(),i=t(e.values);return r.keys=n,r.values=i,r},i=Ember.OrderedSet=function(){this.clear()};i.create=function(){return new i},i.prototype={clear:function(){this.presenceSet={},this.list=[]},add:function(r){var t=e(r),n=this.presenceSet,i=this.list;t in n||(n[t]=!0,i.push(r))},remove:function(t){var n=e(t),i=this.presenceSet,o=this.list;delete i[n];var s=r.call(o,t);s>-1&&o.splice(s,1)},isEmpty:function(){return 0===this.list.length},has:function(r){var t=e(r),n=this.presenceSet;return t in n},forEach:function(e,r){for(var t=this.toArray(),n=0,i=t.length;i>n;n++)e.call(r,t[n])},toArray:function(){return this.list.slice()},copy:function(){var e=new i;return e.presenceSet=t(this.presenceSet),e.list=this.toArray(),e}};var o=Ember.Map=function(){this.keys=Ember.OrderedSet.create(),this.values={}};o.create=function(){return new o},o.prototype={get:function(r){var t=this.values,n=e(r);return t[n]},set:function(r,t){var n=this.keys,i=this.values,o=e(r);n.add(r),i[o]=t},remove:function(r){var t=this.keys,n=this.values,i=e(r);return n.hasOwnProperty(i)?(t.remove(r),delete n[i],!0):!1},has:function(r){var t=this.values,n=e(r);return t.hasOwnProperty(n)},forEach:function(r,t){var n=this.keys,i=this.values;n.forEach(function(n){var o=e(n);r.call(t,n,i[o])})},copy:function(){return n(this,new o)}};var s=Ember.MapWithDefault=function(e){o.call(this),this.defaultValue=e.defaultValue};s.create=function(e){return e?new s(e):new o},s.prototype=Ember.create(o.prototype),s.prototype.get=function(e){var r=this.has(e);if(r)return o.prototype.get.call(this,e);var t=this.defaultValue(e);return this.set(e,t),t},s.prototype.copy=function(){return n(this,new s({defaultValue:this.defaultValue}))}}(),function(){function e(e){return e.match(a)[0]}function r(r,n){var i,a=s.test(n),u=!a&&o.test(n);if((!r||u)&&(r=Ember.lookup),a&&(n=n.slice(5)),r===Ember.lookup&&(i=e(n),r=t(r,i),n=n.slice(i.length+1)),!n||0===n.length)throw new Error("Invalid Path");return[r,n]}var t,n=Ember.META_KEY,i=Ember.ENV.MANDATORY_SETTER,o=/^([A-Z$]|([0-9][A-Z$])).*[\.\*]/,s=/^this[\.\*]/,a=/^([^\.\*]+)/;t=function t(e,r){if(""===r)return e;if(r||"string"!=typeof e||(r=e,e=null),null===e||-1!==r.indexOf("."))return u(e,r);var t,o=e[n],s=o&&o.descs[r];return s?s.get(e,r):(t=i&&o&&o.watching[r]>0?o.values[r]:e[r],void 0!==t||"object"!=typeof e||r in e||"function"!=typeof e.unknownProperty?t:e.unknownProperty(r))},Ember.config.overrideAccessors&&(Ember.get=t,Ember.config.overrideAccessors(),t=Ember.get);var u=Ember._getPath=function(e,n){var i,o,a,u,c;if(null===e&&-1===n.indexOf("."))return t(Ember.lookup,n);for(i=s.test(n),(!e||i)&&(a=r(e,n),e=a[0],n=a[1],a.length=0),o=n.split("."),c=o.length,u=0;void 0!==e&&null!==e&&c>u;u++)if(e=t(e,o[u],!0),e&&e.isDestroyed)return void 0;return e};Ember.normalizeTuple=function(e,t){return r(e,t)},Ember.getWithDefault=function(e,r,n){var i=t(e,r);return void 0===i?n:i},Ember.get=t,Ember.getPath=Ember.deprecateFunc("getPath is deprecated since get now supports paths",Ember.get)}(),function(){function e(e,r,t){for(var n=-1,i=0,o=e.length;o>i;i++)if(r===e[i][0]&&t===e[i][1]){n=i;break}return n}function r(e,r){var t,n=m(e,!0);return n.listeners||(n.listeners={}),n.hasOwnProperty("listeners")||(n.listeners=f(n.listeners)),t=n.listeners[r],t&&!n.listeners.hasOwnProperty(r)?t=n.listeners[r]=n.listeners[r].slice():t||(t=n.listeners[r]=[]),t}function t(r,t,n){var i=r[b],o=i&&i.listeners&&i.listeners[t];if(o)for(var s=o.length-1;s>=0;s--){var a=o[s][0],u=o[s][1],c=o[s][2],h=e(n,a,u);-1===h&&n.push([a,u,c])}}function n(r,t,n){var i=r[b],o=i&&i.listeners&&i.listeners[t],s=[];if(o){for(var a=o.length-1;a>=0;a--){var u=o[a][0],c=o[a][1],h=o[a][2],l=e(n,u,c);-1===l&&(n.push([u,c,h]),s.push([u,c,h]))}return s}}function i(t,n,i,o,s){o||"function"!=typeof i||(o=i,i=null);var a=r(t,n),u=e(a,i,o),c=0;s&&(c|=p),-1===u&&(a.push([i,o,c]),"function"==typeof t.didAddListener&&t.didAddListener(n,i,o))}function o(t,n,i,o){function s(i,o){var s=r(t,n),a=e(s,i,o);-1!==a&&(s.splice(a,1),"function"==typeof t.didRemoveListener&&t.didRemoveListener(n,i,o))}if(o||"function"!=typeof i||(o=i,i=null),o)s(i,o);else{var a=t[b],u=a&&a.listeners&&a.listeners[n];if(!u)return;for(var c=u.length-1;c>=0;c--)s(u[c][0],u[c][1])}}function s(t,n,i,o,s){function a(){return s.call(i)}function u(){c&&(c[2]&=~E)}o||"function"!=typeof i||(o=i,i=null);var c,h=r(t,n),l=e(h,i,o);return-1!==l&&(c=h[l].slice(),c[2]|=E,h[l]=c),Ember.tryFinally(a,u)}function a(t,n,i,o,s){function a(){return s.call(i)}function u(){for(f=0,m=b.length;m>f;f++)b[f][2]&=~E}o||"function"!=typeof i||(o=i,i=null);var c,h,l,f,m,b=[];for(f=0,m=n.length;m>f;f++){c=n[f],h=r(t,c);var p=e(h,i,o);-1!==p&&(l=h[p].slice(),l[2]|=E,h[p]=l,b.push(l))}return Ember.tryFinally(a,u)}function u(e){var r=e[b].listeners,t=[];if(r)for(var n in r)r[n]&&t.push(n);return t}function c(e,r,t,n){if(e!==Ember&&"function"==typeof e.sendEvent&&e.sendEvent(r,t),!n){var i=e[b];n=i&&i.listeners&&i.listeners[r]}if(n){for(var s=n.length-1;s>=0;s--){var a=n[s];if(a){var u=a[0],c=a[1],h=a[2];h&E||(h&p&&o(e,r,u,c),u||(u=e),"string"==typeof c&&(c=u[c]),t?c.apply(u,t):c.call(u))}}return!0}}function h(e,r){var t=e[b],n=t&&t.listeners&&t.listeners[r];return!(!n||!n.length)}function l(e,r){var t=[],n=e[b],i=n&&n.listeners&&n.listeners[r];if(!i)return t;for(var o=0,s=i.length;s>o;o++){var a=i[o][0],u=i[o][1];t.push([a,u])}return t}var f=Ember.create,m=Ember.meta,b=Ember.META_KEY,p=1,E=2;Ember.addListener=i,Ember.removeListener=o,Ember._suspendListener=s,Ember._suspendListeners=a,Ember.sendEvent=c,Ember.hasListeners=h,Ember.watchedEvents=u,Ember.listenersFor=l,Ember.listenersDiff=n,Ember.listenersUnion=t}(),function(){var e=Ember.guidFor,r=Ember.sendEvent,t=Ember._ObserverSet=function(){this.clear()};t.prototype.add=function(r,t,n){var i,o=this.observerSet,s=this.observers,a=e(r),u=o[a];return u||(o[a]=u={}),i=u[t],void 0===i&&(i=s.push({sender:r,keyName:t,eventName:n,listeners:[]})-1,u[t]=i),s[i].listeners},t.prototype.flush=function(){var e,t,n,i,o=this.observers;for(this.clear(),e=0,t=o.length;t>e;++e)n=o[e],i=n.sender,i.isDestroying||i.isDestroyed||r(i,n.eventName,[i,n.keyName],n.listeners)},t.prototype.clear=function(){this.observerSet={},this.observers=[]}}(),function(){function e(e,r,i){if(!e.isDestroying){var o=n,s=!o;s&&(o=n={}),t(p,e,r,o,i),s&&(n=null)}}function r(e,r,n){if(!e.isDestroying){var o=i,s=!o;s&&(o=i={}),t(E,e,r,o,n),s&&(i=null)}}function t(e,r,t,n,i){var o=s(r);if(n[o]||(n[o]={}),!n[o][t]){n[o][t]=!0;var a=i.deps;if(a=a&&a[t])for(var u in a){var c=i.descs[u];c&&c._suspended===r||e(r,u)}}}var n,i,o=Ember.meta,s=Ember.guidFor,a=Ember.tryFinally,u=Ember.sendEvent,c=Ember.listenersUnion,h=Ember.listenersDiff,l=Ember._ObserverSet,f=new l,m=new l,b=0,p=Ember.propertyWillChange=function(r,t){var n=o(r,!1),i=n.watching[t]>0||"length"===t,s=n.proto,a=n.descs[t];i&&s!==r&&(a&&a.willChange&&a.willChange(r,t),e(r,t,n),d(r,t,n),_(r,t))},E=Ember.propertyDidChange=function(e,t){var n=o(e,!1),i=n.watching[t]>0||"length"===t,s=n.proto,a=n.descs[t];s!==e&&(a&&a.didChange&&a.didChange(e,t),(i||"length"===t)&&(r(e,t,n),v(e,t,n),O(e,t)))},d=function(e,r,t,n){if(t.hasOwnProperty("chainWatchers")){var i=t.chainWatchers;if(i=i[r])for(var o=0,s=i.length;s>o;o++)i[o].willChange(n)}},v=function(e,r,t,n){if(t.hasOwnProperty("chainWatchers")){var i=t.chainWatchers;if(i=i[r])for(var o=i.length-1;o>=0;o--)i[o].didChange(n)}};Ember.overrideChains=function(e,r,t){v(e,r,t,!0)};var g=Ember.beginPropertyChanges=function(){b++},y=Ember.endPropertyChanges=function(){b--,0>=b&&(f.clear(),m.flush())};Ember.changeProperties=function(e,r){g(),a(e,y,r)};var _=function(e,r){if(!e.isDestroying){var t,n,i=r+":before";b?(t=f.add(e,r,i),n=h(e,i,t),u(e,i,[e,r],n)):u(e,i,[e,r])}},O=function(e,r){if(!e.isDestroying){var t,n=r+":change";b?(t=m.add(e,r,n),c(e,n,t)):u(e,n,[e,r])}}}(),function(){function e(e,r,t,o){var s;if(s=r.slice(r.lastIndexOf(".")+1),r=r.slice(0,r.length-(s.length+1)),"this"!==r&&(e=n(e,r)),!s||0===s.length)throw new Error("You passed an empty path");if(!e){if(o)return;throw new Error("Object in path "+r+" could not be found or was destroyed.")}return i(e,s,t)}var r=Ember.META_KEY,t=Ember.ENV.MANDATORY_SETTER,n=Ember._getPath,i=function i(n,i,o,s){if("string"==typeof n&&(o=i,i=n,n=null),!n||-1!==i.indexOf("."))return e(n,i,o,s);var a,u,c=n[r],h=c&&c.descs[i];return h?h.set(n,i,o):(a="object"==typeof n&&!(i in n),a&&"function"==typeof n.setUnknownProperty?n.setUnknownProperty(i,o):c&&c.watching[i]>0?(u=t?c.values[i]:n[i],o!==u&&(Ember.propertyWillChange(n,i),t?void 0!==u||i in n?c.values[i]=o:Ember.defineProperty(n,i,null,o):n[i]=o,Ember.propertyDidChange(n,i))):n[i]=o),o};Ember.config.overrideAccessors&&(Ember.set=i,Ember.config.overrideAccessors(),i=Ember.set),Ember.set=i,Ember.setPath=Ember.deprecateFunc("setPath is deprecated since set now supports paths",Ember.set),Ember.trySet=function(e,r,t){return i(e,r,t,!0)},Ember.trySetPath=Ember.deprecateFunc("trySetPath has been renamed to trySet",Ember.trySet)}(),function(){var e=Ember.META_KEY,r=Ember.meta,t=Ember.platform.defineProperty,n=Ember.ENV.MANDATORY_SETTER;Ember.Descriptor=function(){};var i=Ember.MANDATORY_SETTER_FUNCTION=function(){},o=Ember.DEFAULT_GETTER_FUNCTION=function(r){return function(){var t=this[e];return t&&t.values[r]}};Ember.defineProperty=function(e,s,a,u,c){var h,l,f,m;return c||(c=r(e)),h=c.descs,l=c.descs[s],f=c.watching[s]>0,l instanceof Ember.Descriptor&&l.teardown(e,s),a instanceof Ember.Descriptor?(m=a,h[s]=a,n&&f?t(e,s,{configurable:!0,enumerable:!0,writable:!0,value:void 0}):e[s]=void 0,a.setup(e,s)):(h[s]=void 0,null==a?(m=u,n&&f?(c.values[s]=u,t(e,s,{configurable:!0,enumerable:!0,set:i,get:o(s)})):e[s]=u):(m=a,t(e,s,a))),f&&Ember.overrideChains(e,s,c),e.didDefineProperty&&e.didDefineProperty(e,s,m),this}}(),function(){var e=Ember.changeProperties,r=Ember.set;Ember.setProperties=function(t,n){return e(function(){for(var e in n)n.hasOwnProperty(e)&&r(t,e,n[e])}),t}}(),function(){var e=Ember.meta,r=Ember.typeOf,t=Ember.ENV.MANDATORY_SETTER,n=Ember.platform.defineProperty;Ember.watchKey=function(i,o){if("length"!==o||"array"!==r(i)){var s,a=e(i),u=a.watching;u[o]?u[o]=(u[o]||0)+1:(u[o]=1,s=a.descs[o],s&&s.willWatch&&s.willWatch(i,o),"function"==typeof i.willWatchProperty&&i.willWatchProperty(o),t&&o in i&&(a.values[o]=i[o],n(i,o,{configurable:!0,enumerable:!0,set:Ember.MANDATORY_SETTER_FUNCTION,get:Ember.DEFAULT_GETTER_FUNCTION(o)})))}},Ember.unwatchKey=function(r,i){var o,s=e(r),a=s.watching;1===a[i]?(a[i]=0,o=s.descs[i],o&&o.didUnwatch&&o.didUnwatch(r,i),"function"==typeof r.didUnwatchProperty&&r.didUnwatchProperty(i),t&&i in r&&(n(r,i,{configurable:!0,enumerable:!0,writable:!0,value:s.values[i]}),delete s.values[i])):a[i]>1&&a[i]--}}(),function(){function e(e){return e.match(f)[0]}function r(e,r,t){if(e&&"object"==typeof e){var i=n(e),o=i.chainWatchers;i.hasOwnProperty("chainWatchers")||(o=i.chainWatchers={}),o[r]||(o[r]=[]),o[r].push(t),u(e,r)}}function t(e){return n(e,!1).proto===e}var n=Ember.meta,i=Ember.get,o=Ember.normalizeTuple,s=Ember.ArrayPolyfills.forEach,a=Ember.warn,u=Ember.watchKey,c=Ember.unwatchKey,h=Ember.propertyWillChange,l=Ember.propertyDidChange,f=/^([^\.\*]+)/,m=[];Ember.flushPendingChains=function(){if(0!==m.length){var e=m;m=[],s.call(e,function(e){e[0].add(e[1])}),a("Watching an undefined global, Ember expects watched globals to be setup by the time the run loop is flushed, check for typos",0===m.length)}};var b=Ember.removeChainWatcher=function(e,r,t){if(e&&"object"==typeof e){var i=n(e,!1);if(i.hasOwnProperty("chainWatchers")){var o=i.chainWatchers;if(o[r]){o=o[r];for(var s=0,a=o.length;a>s;s++)o[s]===t&&o.splice(s,1)}c(e,r)}}},p=Ember._ChainNode=function(e,t,n){this._parent=e,this._key=t,this._watching=void 0===n,this._value=n,this._paths={},this._watching&&(this._object=e.value(),this._object&&r(this._object,this._key,this)),this._parent&&"@each"===this._parent._key&&this.value()},E=p.prototype;E.value=function(){if(void 0===this._value&&this._watching){var e=this._parent.value();this._value=e&&!t(e)?i(e,this._key):void 0}return this._value},E.destroy=function(){if(this._watching){var e=this._object;e&&b(e,this._key,this),this._watching=!1}},E.copy=function(e){var r,t=new p(null,null,e),n=this._paths;for(r in n)0>=n[r]||t.add(r);return t},E.add=function(r){var t,n,i,s,a;if(a=this._paths,a[r]=(a[r]||0)+1,t=this.value(),n=o(t,r),n[0]&&n[0]===t)r=n[1],i=e(r),r=r.slice(i.length+1);else{if(!n[0])return m.push([this,r]),n.length=0,void 0;s=n[0],i=r.slice(0,0-(n[1].length+1)),r=n[1]}n.length=0,this.chain(i,r,s)},E.remove=function(r){var t,n,i,s,a;a=this._paths,a[r]>0&&a[r]--,t=this.value(),n=o(t,r),n[0]===t?(r=n[1],i=e(r),r=r.slice(i.length+1)):(s=n[0],i=r.slice(0,0-(n[1].length+1)),r=n[1]),n.length=0,this.unchain(i,r)},E.count=0,E.chain=function(r,t,n){var i,o=this._chains;o||(o=this._chains={}),i=o[r],i||(i=o[r]=new p(this,r,n)),i.count++,t&&t.length>0&&(r=e(t),t=t.slice(r.length+1),i.chain(r,t))},E.unchain=function(r,t){var n=this._chains,i=n[r];t&&t.length>1&&(r=e(t),t=t.slice(r.length+1),i.unchain(r,t)),i.count--,0>=i.count&&(delete n[i._key],i.destroy())},E.willChange=function(){var e=this._chains;if(e)for(var r in e)e.hasOwnProperty(r)&&e[r].willChange();this._parent&&this._parent.chainWillChange(this,this._key,1)},E.chainWillChange=function(e,r,t){this._key&&(r=this._key+"."+r),this._parent?this._parent.chainWillChange(this,r,t+1):(t>1&&h(this.value(),r),r="this."+r,this._paths[r]>0&&h(this.value(),r))},E.chainDidChange=function(e,r,t){this._key&&(r=this._key+"."+r),this._parent?this._parent.chainDidChange(this,r,t+1):(t>1&&l(this.value(),r),r="this."+r,this._paths[r]>0&&l(this.value(),r))},E.didChange=function(e){if(this._watching){var t=this._parent.value();t!==this._object&&(b(this._object,this._key,this),this._object=t,r(t,this._key,this)),this._value=void 0,this._parent&&"@each"===this._parent._key&&this.value()}var n=this._chains;if(n)for(var i in n)n.hasOwnProperty(i)&&n[i].didChange(e);e||this._parent&&this._parent.chainDidChange(this,this._key,1)},Ember.finishChains=function(e){var r=n(e,!1),t=r.chains;t&&(t.value()!==e&&(r.chains=t=t.copy(e)),t.didChange(!0))}}(),function(){function e(e){var t=r(e),i=t.chains;return i?i.value()!==e&&(i=t.chains=i.copy(e)):i=t.chains=new n(null,null,e),i}var r=Ember.meta,t=Ember.typeOf,n=Ember._ChainNode;Ember.watchPath=function(n,i){if("length"!==i||"array"!==t(n)){var o=r(n),s=o.watching;s[i]?s[i]=(s[i]||0)+1:(s[i]=1,e(n).add(i))}},Ember.unwatchPath=function(t,n){var i=r(t),o=i.watching;1===o[n]?(o[n]=0,e(t).remove(n)):o[n]>1&&o[n]--}}(),function(){function e(e){return"*"===e||!l.test(e)}var r=Ember.meta,t=Ember.GUID_KEY,n=Ember.META_KEY,i=Ember.removeChainWatcher,o=Ember.watchKey,s=Ember.unwatchKey,a=Ember.watchPath,u=Ember.unwatchPath,c=Ember.typeOf,h=Ember.generateGuid,l=/[\.\*]/;Ember.watch=function(r,t){("length"!==t||"array"!==c(r))&&(e(t)?o(r,t):a(r,t))},Ember.isWatching=function(e,r){var t=e[n];return(t&&t.watching[r])>0},Ember.watch.flushPending=Ember.flushPendingChains,Ember.unwatch=function(r,t){("length"!==t||"array"!==c(r))&&(e(t)?s(r,t):u(r,t))},Ember.rewatch=function(e){var n=r(e,!1),i=n.chains;t in e&&!e.hasOwnProperty(t)&&h(e,"ember"),i&&i.value()!==e&&(n.chains=i.copy(e))};var f=[];Ember.destroy=function(e){var r,t,o,s,a=e[n];if(a&&(e[n]=null,r=a.chains))for(f.push(r);f.length>0;){if(r=f.pop(),t=r._chains)for(o in t)t.hasOwnProperty(o)&&f.push(t[o]);r._watching&&(s=r._object,s&&i(s,r._key,r))}}}(),function(){function e(e,r){var t=e[r];return t?e.hasOwnProperty(r)||(t=e[r]=f(t)):t=e[r]={},t}function r(r){return e(r,"deps")}function t(t,n,i,o){var s,a,u,c,h,l=t._dependentKeys;if(l)for(s=r(o),a=0,u=l.length;u>a;a++)c=l[a],h=e(s,c),h[i]=(h[i]||0)+1,b(n,c)}function n(t,n,i,o){var s,a,u,c,h,l=t._dependentKeys;if(l)for(s=r(o),a=0,u=l.length;u>a;a++)c=l[a],h=e(s,c),h[i]=(h[i]||0)-1,p(n,c)}function i(e,r){this.func=e,this._cacheable=r&&void 0!==r.cacheable?r.cacheable:!0,this._dependentKeys=r&&r.dependentKeys,this._readOnly=r&&(void 0!==r.readOnly||!!r.readOnly)}function o(e,r){for(var t={},n=0;r.length>n;n++)t[r[n]]=u(e,r[n]);return t}function s(e,r){Ember.computed[e]=function(e){var t=l.call(arguments);return Ember.computed(e,function(){return r.apply(this,t)})}}function a(e,r){Ember.computed[e]=function(){var e=l.call(arguments),t=Ember.computed(function(){return r.apply(this,[o(this,e)])});return t.property.apply(t,e)}}var u=Ember.get,c=Ember.set,h=Ember.meta,l=[].slice,f=Ember.create,m=Ember.META_KEY,b=Ember.watch,p=Ember.unwatch;Ember.ComputedProperty=i,i.prototype=new Ember.Descriptor;var E=i.prototype;E.cacheable=function(e){return this._cacheable=e!==!1,this},E.volatile=function(){return this.cacheable(!1)},E.readOnly=function(e){return this._readOnly=void 0===e||!!e,this},E.property=function(){for(var e=[],r=0,t=arguments.length;t>r;r++)e.push(arguments[r]);return this._dependentKeys=e,this},E.meta=function(e){return 0===arguments.length?this._meta||{}:(this._meta=e,this)},E.willWatch=function(e,r){var n=e[m];r in n.cache||t(this,e,r,n)},E.didUnwatch=function(e,r){var t=e[m];r in t.cache||n(this,e,r,t)},E.didChange=function(e,r){if(this._cacheable&&this._suspended!==e){var t=h(e);r in t.cache&&(delete t.cache[r],t.watching[r]||n(this,e,r,t))}},E.get=function(e,r){var n,i,o;if(this._cacheable){if(o=h(e),i=o.cache,r in i)return i[r];n=i[r]=this.func.call(e,r),o.watching[r]||t(this,e,r,o)}else n=this.func.call(e,r);return n},E.set=function(e,r,n){var i,o,s=this._cacheable,a=this.func,u=h(e,s),c=u.watching[r],l=this._suspended,f=!1,m=u.cache;if(this._readOnly)throw new Error("Cannot Set: "+r+" on: "+e.toString());this._suspended=e;try{if(s&&m.hasOwnProperty(r)&&(i=m[r],f=!0),a.wrappedFunction&&(a=a.wrappedFunction),3===a.length)o=a.call(e,r,n,i);else{if(2!==a.length)return Ember.defineProperty(e,r,null,i),Ember.set(e,r,n),void 0;o=a.call(e,r,n)}if(f&&i===o)return;c&&Ember.propertyWillChange(e,r),f&&delete m[r],s&&(c||f||t(this,e,r,u),m[r]=o),c&&Ember.propertyDidChange(e,r)}finally{this._suspended=l}return o},E.setup=function(e,r){var n=e[m];n&&n.watching[r]&&t(this,e,r,h(e))},E.teardown=function(e,r){var t=h(e);return(t.watching[r]||r in t.cache)&&n(this,e,r,t),this._cacheable&&delete t.cache[r],null},Ember.computed=function(e){var r;if(arguments.length>1&&(r=l.call(arguments,0,-1),e=l.call(arguments,-1)[0]),"function"!=typeof e)throw new Error("Computed Property declared without a property function");var t=new i(e);return r&&t.property.apply(t,r),t},Ember.cacheFor=function(e,r){var t=h(e,!1).cache;return t&&r in t?t[r]:void 0},s("empty",function(e){return Ember.isEmpty(u(this,e))}),s("notEmpty",function(e){return!Ember.isEmpty(u(this,e))}),s("none",function(e){return Ember.isNone(u(this,e))}),s("not",function(e){return!u(this,e)}),s("bool",function(e){return!!u(this,e)}),s("match",function(e,r){var t=u(this,e);return"string"==typeof t?!!t.match(r):!1}),s("equal",function(e,r){return u(this,e)===r}),s("gt",function(e,r){return u(this,e)>r}),s("gte",function(e,r){return u(this,e)>=r}),s("lt",function(e,r){return r>u(this,e)}),s("lte",function(e,r){return r>=u(this,e)}),a("and",function(e){for(var r in e)if(e.hasOwnProperty(r)&&!e[r])return!1;return!0}),a("or",function(e){for(var r in e)if(e.hasOwnProperty(r)&&e[r])return!0;return!1}),a("any",function(e){for(var r in e)if(e.hasOwnProperty(r)&&e[r])return e[r];return null}),a("map",function(e){var r=[];for(var t in e)e.hasOwnProperty(t)&&(Ember.isNone(e[t])?r.push(null):r.push(e[t]));return r}),Ember.computed.alias=function(e){return Ember.computed(e,function(r,t){return arguments.length>1?(c(this,e,t),t):u(this,e)})},Ember.computed.defaultTo=function(e){return Ember.computed(function(r,t,n){return 1===arguments.length?null!=n?n:u(this,e):null!=t?t:u(this,e)})}}(),function(){function e(e){return e+t}function r(e){return e+n}var t=":change",n=":before";Ember.guidFor,Ember.addObserver=function(r,t,n,i){return Ember.addListener(r,e(t),n,i),Ember.watch(r,t),this},Ember.observersFor=function(r,t){return Ember.listenersFor(r,e(t))},Ember.removeObserver=function(r,t,n,i){return Ember.unwatch(r,t),Ember.removeListener(r,e(t),n,i),this},Ember.addBeforeObserver=function(e,t,n,i){return Ember.addListener(e,r(t),n,i),Ember.watch(e,t),this},Ember._suspendBeforeObserver=function(e,t,n,i,o){return Ember._suspendListener(e,r(t),n,i,o)},Ember._suspendObserver=function(r,t,n,i,o){return Ember._suspendListener(r,e(t),n,i,o)};var i=Ember.ArrayPolyfills.map;Ember._suspendBeforeObservers=function(e,t,n,o,s){var a=i.call(t,r);return Ember._suspendListeners(e,a,n,o,s)},Ember._suspendObservers=function(r,t,n,o,s){var a=i.call(t,e);return Ember._suspendListeners(r,a,n,o,s)},Ember.beforeObserversFor=function(e,t){return Ember.listenersFor(e,r(t))},Ember.removeBeforeObserver=function(e,t,n,i){return Ember.unwatch(e,t),Ember.removeListener(e,r(t),n,i),this}}(),function(){function e(e,r,t,n){return void 0===r&&(r=e,e=void 0),"string"==typeof r&&(r=e[r]),t&&n>0&&(t=t.length>n?s.call(t,n):null),Ember.handleErrors(function(){return r.apply(e||this,t||[])},this)}function r(){h=null,c.currentRunLoop&&c.end()}function t(e,r){var t=e.expires,n=r.expires;return t>n?1:n>t?-1:0}function n(){l=null,c(function(){var r=+new Date,i=-1,o=[];for(var s in m)if(m.hasOwnProperty(s)){var u=m[s];u&&u.expires&&(r>=u.expires?(delete m[s],o.push(u)):(0>i||i>u.expires)&&(i=u.expires))}a.call(o.sort(t),function(r){e(r.target,r.method,r.args,2)}),i>0&&(l=window.setTimeout(n,i-r),f=i)})}function i(r,t){t[this.tguid]&&delete t[this.tguid][this.mguid],m[r]&&e(this.target,this.method,this.args),delete m[r]}function o(e,r,t,n){var o,s=Ember.guidFor(r),a=Ember.guidFor(t),u=c.autorun().onceTimers,h=u[s]&&u[s][a];return h&&m[h]?m[h].args=n:(o={target:r,method:t,args:n,tguid:s,mguid:a},h=Ember.guidFor(o),m[h]=o,u[s]||(u[s]={}),u[s][a]=h,c.schedule(e,o,i,h,u)),h}var s=[].slice,a=Ember.ArrayPolyfills.forEach,u=function(e){this._prev=e||null,this.onceTimers={}};u.prototype={end:function(){this.flush()},prev:function(){return this._prev},schedule:function(e,r,t){var n,i=this._queues;i||(i=this._queues={}),n=i[e],n||(n=i[e]=[]);var o=arguments.length>3?s.call(arguments,3):null;return n.push({target:r,method:t,args:o}),this
|
16
|
-
},flush:function(r){function t(r){e(r.target,r.method,r.args)}function n(){a.call(u,t)}var i,o,s,u,c;if(!this._queues)return this;if(Ember.watch.flushPending(),r)for(;this._queues&&(u=this._queues[r]);)this._queues[r]=null,"sync"===r?(c=Ember.LOG_BINDINGS,c&&Ember.Logger.log("Begin: Flush Sync Queue"),Ember.beginPropertyChanges(),Ember.tryFinally(n,Ember.endPropertyChanges),c&&Ember.Logger.log("End: Flush Sync Queue")):a.call(u,t);else{i=Ember.run.queues,s=i.length,o=0;e:for(;s>o;){r=i[o],u=this._queues&&this._queues[r],delete this._queues[r],u&&("sync"===r?(c=Ember.LOG_BINDINGS,c&&Ember.Logger.log("Begin: Flush Sync Queue"),Ember.beginPropertyChanges(),Ember.tryFinally(n,Ember.endPropertyChanges),c&&Ember.Logger.log("End: Flush Sync Queue")):a.call(u,t));for(var h=0;o>=h;h++)if(this._queues&&this._queues[i[h]]){o=h;continue e}o++}}return this}},Ember.RunLoop=u,Ember.run=function(r,t){function n(){return r||t?e(r,t,i,2):void 0}var i=arguments;return c.begin(),Ember.tryFinally(n,c.end)};var c=Ember.run;Ember.run.begin=function(){c.currentRunLoop=new u(c.currentRunLoop)},Ember.run.end=function(){function e(){c.currentRunLoop.end()}function r(){c.currentRunLoop=c.currentRunLoop.prev()}Ember.tryFinally(e,r)},Ember.run.queues=["sync","actions","destroy"],Ember.run.schedule=function(){var e=c.autorun();e.schedule.apply(e,arguments)};var h;Ember.run.hasScheduledTimers=function(){return!(!h&&!l)},Ember.run.cancelTimers=function(){h&&(clearTimeout(h),h=null),l&&(clearTimeout(l),l=null),m={}},Ember.run.autorun=function(){return c.currentRunLoop||(c.begin(),h||(h=setTimeout(r,1))),c.currentRunLoop},Ember.run.sync=function(){c.autorun(),c.currentRunLoop.flush("sync")};var l,f,m={};Ember.run.later=function(e,r){var t,i,o,a,u;return 2===arguments.length&&"function"==typeof e?(u=r,r=e,e=void 0,t=[e,r]):(t=s.call(arguments),u=t.pop()),i=+new Date+u,o={target:e,method:r,expires:i,args:t},a=Ember.guidFor(o),m[a]=o,l&&f>i&&(clearTimeout(l),l=null),l||(l=setTimeout(n,u),f=i),a},Ember.run.once=function(e,r){return o("actions",e,r,s.call(arguments,2))},Ember.run.scheduleOnce=function(e,r,t){return o(e,r,t,s.call(arguments,3))},Ember.run.next=function(){var e=s.call(arguments);return e.push(1),c.later.apply(this,e)},Ember.run.cancel=function(e){delete m[e]}}(),function(){function e(e,r){return t(o(r)?Ember.lookup:e,r)}function r(e,r){for(var t in r)r.hasOwnProperty(t)&&(e[t]=r[t])}Ember.LOG_BINDINGS=!1||!!Ember.ENV.LOG_BINDINGS;var t=Ember.get,n=(Ember.set,Ember.guidFor),i=/^([A-Z$]|([0-9][A-Z$]))/,o=Ember.isGlobalPath=function(e){return i.test(e)},s=function(e,r){this._direction="fwd",this._from=r,this._to=e,this._directionMap=Ember.Map.create()};s.prototype={copy:function(){var e=new s(this._to,this._from);return this._oneWay&&(e._oneWay=!0),e},from:function(e){return this._from=e,this},to:function(e){return this._to=e,this},oneWay:function(){return this._oneWay=!0,this},toString:function(){var e=this._oneWay?"[oneWay]":"";return"Ember.Binding<"+n(this)+">("+this._from+" -> "+this._to+")"+e},connect:function(r){var t=this._from,n=this._to;return Ember.trySet(r,n,e(r,t)),Ember.addObserver(r,t,this,this.fromDidChange),this._oneWay||Ember.addObserver(r,n,this,this.toDidChange),this._readyToSync=!0,this},disconnect:function(e){var r=!this._oneWay;return Ember.removeObserver(e,this._from,this,this.fromDidChange),r&&Ember.removeObserver(e,this._to,this,this.toDidChange),this._readyToSync=!1,this},fromDidChange:function(e){this._scheduleSync(e,"fwd")},toDidChange:function(e){this._scheduleSync(e,"back")},_scheduleSync:function(e,r){var t=this._directionMap,n=t.get(e);n||(Ember.run.schedule("sync",this,this._sync,e),t.set(e,r)),"back"===n&&"fwd"===r&&t.set(e,"fwd")},_sync:function(r){var n=Ember.LOG_BINDINGS;if(!r.isDestroyed&&this._readyToSync){var i=this._directionMap,o=i.get(r),s=this._from,a=this._to;if(i.remove(r),"fwd"===o){var u=e(r,this._from);n&&Ember.Logger.log(" ",this.toString(),"->",u,r),this._oneWay?Ember.trySet(r,a,u):Ember._suspendObserver(r,a,this,this.toDidChange,function(){Ember.trySet(r,a,u)})}else if("back"===o){var c=t(r,this._to);n&&Ember.Logger.log(" ",this.toString(),"<-",c,r),Ember._suspendObserver(r,s,this,this.fromDidChange,function(){Ember.trySet(Ember.isGlobalPath(s)?Ember.lookup:r,s,c)})}}}},r(s,{from:function(){var e=this,r=new e;return r.from.apply(r,arguments)},to:function(){var e=this,r=new e;return r.to.apply(r,arguments)},oneWay:function(e,r){var t=this,n=new t(null,e);return n.oneWay(r)}}),Ember.Binding=s,Ember.bind=function(e,r,t){return new Ember.Binding(r,t).connect(e)},Ember.oneWay=function(e,r,t){return new Ember.Binding(r,t).oneWay().connect(e)}}(),function(){function e(e){var r=Ember.meta(e,!0),t=r.mixins;return t?r.hasOwnProperty("mixins")||(t=r.mixins=A(t)):t=r.mixins={},t}function r(e,r){return r&&r.length>0&&(e.mixins=O.call(r,function(e){if(e instanceof g)return e;var r=new g;return r.properties=e,r})),e}function t(e){return"function"==typeof e&&e.isMethod!==!1&&e!==Boolean&&e!==Object&&e!==Number&&e!==Array&&e!==Date&&e!==String}function n(e,r){var t;return r instanceof g?(t=S(r),e[t]?D:(e[t]=r,r.properties)):r}function i(e,r,t){var n;return n=r.concatenatedProperties||t.concatenatedProperties,e.concatenatedProperties&&(n=n?n.concat(e.concatenatedProperties):e.concatenatedProperties),n}function o(e,r,t,n,i){var o;return void 0===n[r]&&(o=i[r]),o=o||e.descs[r],o&&o instanceof Ember.ComputedProperty?(t=A(t),t.func=Ember.wrap(t.func,o.func),t):t}function s(e,r,t,n,i){var o;return void 0===i[r]&&(o=n[r]),o=o||e[r],"function"!=typeof o?t:Ember.wrap(t,o)}function a(e,r,t,n){var i=n[r]||e[r];return i?"function"==typeof i.concat?i.concat(t):Ember.makeArray(i).concat(t):Ember.makeArray(t)}function u(e,r,n,i,u,c,h){if(n instanceof Ember.Descriptor){if(n===y&&u[r])return D;n.func&&(n=o(i,r,n,c,u)),u[r]=n,c[r]=void 0}else t(n)?n=s(e,r,n,c,u):(h&&C.call(h,r)>=0||"concatenatedProperties"===r)&&(n=a(e,r,n,c)),u[r]=void 0,c[r]=n}function c(e,r,t,o,s,a){function h(e){delete t[e],delete o[e]}for(var l,f,m,b,p,E=0,d=e.length;d>E;E++)if(l=e[E],f=n(r,l),f!==D)if(f){p=Ember.meta(s),b=i(f,o,s);for(m in f)f.hasOwnProperty(m)&&(a.push(m),u(s,m,f[m],p,t,o,b));f.hasOwnProperty("toString")&&(s.toString=f.toString)}else l.mixins&&(c(l.mixins,r,t,o,s,a),l._without&&w.call(l._without,h))}function h(e,r,t,n){if(x.test(r)){var i=n.bindings;i?n.hasOwnProperty("bindings")||(i=n.bindings=A(n.bindings)):i=n.bindings={},i[r]=t}}function l(e,r){var t,n,i,o=r.bindings;if(o){for(t in o)n=o[t],n&&(i=t.slice(0,-7),n instanceof Ember.Binding?(n=n.copy(),n.to(i)):n=new Ember.Binding(i,n),n.connect(e),e[t]=n);r.bindings={}}}function f(e,r){return l(e,r||Ember.meta(e)),e}function m(e,r,t,n,i){var o,s=r.methodName;return n[s]||i[s]?(o=i[s],r=n[s]):t.descs[s]?(r=t.descs[s],o=void 0):(r=void 0,o=e[s]),{desc:r,value:o}}function b(e,r,t,n,i){if("function"==typeof t){var o=t[n];if(o)for(var s=0,a=o.length;a>s;s++)Ember[i](e,o[s],null,r)}}function p(e,r,t){var n=e[r];b(e,r,n,"__ember_observesBefore__","removeBeforeObserver"),b(e,r,n,"__ember_observes__","removeObserver"),b(e,r,t,"__ember_observesBefore__","addBeforeObserver"),b(e,r,t,"__ember_observes__","addObserver")}function E(r,t,n){var i,o,s,a={},u={},l=Ember.meta(r),b=[];c(t,e(r),a,u,r,b);for(var E=0,d=b.length;d>E;E++)if(i=b[E],"constructor"!==i&&u.hasOwnProperty(i)&&(s=a[i],o=u[i],s!==y)){for(;s&&s instanceof _;){var v=m(r,s,l,a,u);s=v.desc,o=v.value}(void 0!==s||void 0!==o)&&(p(r,i,o),h(r,i,o,l),j(r,i,s,o,l))}return n||f(r,l),r}function d(e,r,t){var n=S(e);if(t[n])return!1;if(t[n]=!0,e===r)return!0;for(var i=e.mixins,o=i?i.length:0;--o>=0;)if(d(i[o],r,t))return!0;return!1}function v(e,r,t){if(!t[S(r)])if(t[S(r)]=!0,r.properties){var n=r.properties;for(var i in n)n.hasOwnProperty(i)&&(e[i]=!0)}else r.mixins&&w.call(r.mixins,function(r){v(e,r,t)})}var g,y,_,O=Ember.ArrayPolyfills.map,C=Ember.ArrayPolyfills.indexOf,w=Ember.ArrayPolyfills.forEach,P=[].slice,A=Ember.create,j=Ember.defineProperty,S=Ember.guidFor,D={},x=Ember.IS_BINDING=/^.+Binding$/;Ember.mixin=function(e){var r=P.call(arguments,1);return E(e,r,!1),e},Ember.Mixin=function(){return r(this,arguments)},g=Ember.Mixin,g.prototype={properties:null,mixins:null,ownerConstructor:null},g._apply=E,g.applyPartial=function(e){var r=P.call(arguments,1);return E(e,r,!0)},g.finishPartial=f,Ember.anyUnprocessedMixins=!1,g.create=function(){Ember.anyUnprocessedMixins=!0;var e=this;return r(new e,arguments)};var N=g.prototype;N.reopen=function(){var e,r;this.properties?(e=g.create(),e.properties=this.properties,delete this.properties,this.mixins=[e]):this.mixins||(this.mixins=[]);var t,n=arguments.length,i=this.mixins;for(t=0;n>t;t++)e=arguments[t],e instanceof g?i.push(e):(r=g.create(),r.properties=e,i.push(r));return this},N.apply=function(e){return E(e,[this],!1)},N.applyPartial=function(e){return E(e,[this],!0)},N.detect=function(e){if(!e)return!1;if(e instanceof g)return d(e,this,{});var r=Ember.meta(e,!1).mixins;return r?!!r[S(this)]:!1},N.without=function(){var e=new g(this);return e._without=P.call(arguments),e},N.keys=function(){var e={},r={},t=[];v(e,this,r);for(var n in e)e.hasOwnProperty(n)&&t.push(n);return t},g.mixins=function(e){var r=Ember.meta(e,!1).mixins,t=[];if(!r)return t;for(var n in r){var i=r[n];i.properties||t.push(i)}return t},y=new Ember.Descriptor,y.toString=function(){return"(Required Property)"},Ember.required=function(){return y},_=function(e){this.methodName=e},_.prototype=new Ember.Descriptor,Ember.alias=function(e){return new _(e)},Ember.alias=Ember.deprecateFunc("Ember.alias is deprecated. Please use Ember.aliasMethod or Ember.computed.alias instead.",Ember.alias),Ember.aliasMethod=function(e){return new _(e)},Ember.observer=function(e){var r=P.call(arguments,1);return e.__ember_observes__=r,e},Ember.immediateObserver=function(){for(var e=0,r=arguments.length;r>e;e++)arguments[e];return Ember.observer.apply(this,arguments)},Ember.beforeObserver=function(e){var r=P.call(arguments,1);return e.__ember_observesBefore__=r,e}}(),function(){e("rsvp/all",["rsvp/defer","exports"],function(e,r){"use strict";function t(e){var r=[],t=n(),i=e.length;0===i&&t.resolve([]);for(var o=function(e){return function(r){s(e,r)}},s=function(e,n){r[e]=n,0===--i&&t.resolve(r)},a=function(e){t.reject(e)},u=0;e.length>u;u++)e[u]&&"function"==typeof e[u].then?e[u].then(o(u),a):s(u,e[u]);return t.promise}var n=e.defer;r.all=t}),e("rsvp/async",["exports"],function(e){"use strict";var r,t="undefined"!=typeof window?window:{},n=t.MutationObserver||t.WebKitMutationObserver;if("undefined"!=typeof process&&"[object process]"==={}.toString.call(process))r=function(e,r){process.nextTick(function(){e.call(r)})};else if(n){var i=[],o=new n(function(){var e=i.slice();i=[],e.forEach(function(e){var r=e[0],t=e[1];r.call(t)})}),s=document.createElement("div");o.observe(s,{attributes:!0}),window.addEventListener("unload",function(){o.disconnect(),o=null}),r=function(e,r){i.push([e,r]),s.setAttribute("drainQueue","drainQueue")}}else r=function(e,r){setTimeout(function(){e.call(r)},1)};e.async=r}),e("rsvp/config",["rsvp/async","exports"],function(e,r){"use strict";var t=e.async,n={};n.async=t,r.config=n}),e("rsvp/defer",["rsvp/promise","exports"],function(e,r){"use strict";function t(){var e={},r=new n(function(r,t){e.resolve=r,e.reject=t});return e.promise=r,e}var n=e.Promise;r.defer=t}),e("rsvp/events",["exports"],function(e){"use strict";var r=function(e,r){this.type=e;for(var t in r)r.hasOwnProperty(t)&&(this[t]=r[t])},t=function(e,r){for(var t=0,n=e.length;n>t;t++)if(e[t][0]===r)return t;return-1},n=function(e){var r=e._promiseCallbacks;return r||(r=e._promiseCallbacks={}),r},i={mixin:function(e){return e.on=this.on,e.off=this.off,e.trigger=this.trigger,e},on:function(e,r,i){var o,s,a=n(this);for(e=e.split(/\s+/),i=i||this;s=e.shift();)o=a[s],o||(o=a[s]=[]),-1===t(o,r)&&o.push([r,i])},off:function(e,r){var i,o,s,a=n(this);for(e=e.split(/\s+/);o=e.shift();)r?(i=a[o],s=t(i,r),-1!==s&&i.splice(s,1)):a[o]=[]},trigger:function(e,t){var i,o,s,a,u,c=n(this);if(i=c[e])for(var h=0;i.length>h;h++)o=i[h],s=o[0],a=o[1],"object"!=typeof t&&(t={detail:t}),u=new r(e,t),s.call(a,u)}};e.EventTarget=i}),e("rsvp/hash",["rsvp/defer","exports"],function(e,r){"use strict";function t(e){var r=0;for(var t in e)r++;return r}function n(e){var r={},n=i(),o=t(e);0===o&&n.resolve({});var s=function(e){return function(r){a(e,r)}},a=function(e,t){r[e]=t,0===--o&&n.resolve(r)},u=function(e){n.reject(e)};for(var c in e)e[c]&&"function"==typeof e[c].then?e[c].then(s(c),u):a(c,e[c]);return n.promise}var i=e.defer;r.hash=n}),e("rsvp/node",["rsvp/promise","rsvp/all","exports"],function(e,r,t){"use strict";function n(e,r){return function(t,n){t?r(t):arguments.length>2?e(Array.prototype.slice.call(arguments,1)):e(n)}}function i(e){return function(){var r,t,i=Array.prototype.slice.call(arguments),a=new o(function(e,n){r=e,t=n});return s(i).then(function(i){i.push(n(r,t));try{e.apply(this,i)}catch(o){t(o)}}),a}}var o=e.Promise,s=r.all;t.denodeify=i}),e("rsvp/promise",["rsvp/config","rsvp/events","exports"],function(e,r,t){"use strict";function n(e){return i(e)||"object"==typeof e&&null!==e}function i(e){return"function"==typeof e}function o(e,r){e===r?a(e,r):s(e,r)||a(e,r)}function s(e,r){var t=null;if(n(r)){try{t=r.then}catch(s){return u(e,s),!0}if(i(t)){try{t.call(r,function(t){r!==t?o(e,t):a(e,t)},function(r){u(e,r)})}catch(s){u(e,s)}return!0}}return!1}function a(e,r){c.async(function(){e.trigger("promise:resolved",{detail:r}),e.isFulfilled=!0,e.fulfillmentValue=r})}function u(e,r){c.async(function(){e.trigger("promise:failed",{detail:r}),e.isRejected=!0,e.rejectedReason=r})}var c=e.config,h=r.EventTarget,l=function(e){var r=this,t=!1;if("function"!=typeof e)throw new TypeError("You must pass a resolver function as the sole argument to the promise constructor");if(!(r instanceof l))return new l(e);var n=function(e){t||(t=!0,o(r,e))},i=function(e){t||(t=!0,u(r,e))};this.on("promise:resolved",function(e){this.trigger("success",{detail:e.detail})},this),this.on("promise:failed",function(e){this.trigger("error",{detail:e.detail})},this);try{e(n,i)}catch(s){i(s)}},f=function(e,r,t,n){var a,c,h,l,f=i(t);if(f)try{a=t(n.detail),h=!0}catch(m){l=!0,c=m}else a=n.detail,h=!0;s(r,a)||(f&&h?o(r,a):l?u(r,c):"resolve"===e?o(r,a):"reject"===e&&u(r,a))};l.prototype={constructor:l,then:function(e,r){var t=new l(function(){});return this.isFulfilled&&c.async(function(){f("resolve",t,e,{detail:this.fulfillmentValue})},this),this.isRejected&&c.async(function(){f("reject",t,r,{detail:this.rejectedReason})},this),this.on("promise:resolved",function(r){f("resolve",t,e,r)}),this.on("promise:failed",function(e){f("reject",t,r,e)}),t}},h.mixin(l.prototype),t.Promise=l}),e("rsvp/reject",["rsvp/promise","exports"],function(e,r){"use strict";function t(e){return new n(function(r,t){t(e)})}var n=e.Promise;r.reject=t}),e("rsvp/resolve",["rsvp/promise","exports"],function(e,r){"use strict";function t(e){return"function"==typeof e||"object"==typeof e&&null!==e}function n(e){var r=new i(function(r,n){var i;try{t(e)?(i=e.then,"function"==typeof i?i.call(e,r,n):r(e)):r(e)}catch(o){n(o)}});return r}var i=e.Promise;r.resolve=n}),e("rsvp",["rsvp/events","rsvp/promise","rsvp/node","rsvp/all","rsvp/hash","rsvp/defer","rsvp/config","rsvp/resolve","rsvp/reject","exports"],function(e,r,t,n,i,o,s,a,u,c){"use strict";function h(e,r){d[e]=r}var l=e.EventTarget,f=r.Promise,m=t.denodeify,b=n.all,p=i.hash,E=o.defer,d=s.config,v=a.resolve,g=u.reject;c.Promise=f,c.EventTarget=l,c.all=b,c.hash=p,c.defer=E,c.denodeify=m,c.configure=h,c.resolve=v,c.reject=g})}(),function(){e("container",[],function(){function e(e){this.parent=e,this.dict={}}function r(r){this.parent=r,this.children=[],this.resolver=r&&r.resolver||function(){},this.registry=new e(r&&r.registry),this.cache=new e(r&&r.cache),this.typeInjections=new e(r&&r.typeInjections),this.injections={},this._options=new e(r&&r._options),this._typeOptions=new e(r&&r._typeOptions)}function t(e){throw new Error(e+" is not currently supported on child containers")}function n(e,r){var t=o(e,r,"singleton");return t!==!1}function i(e,r){var t={};if(!r)return t;for(var n,i,o=0,s=r.length;s>o;o++)n=r[o],i=e.lookup(n.fullName),t[n.property]=i;return t}function o(e,r,t){var n=e._options.get(r);if(n&&void 0!==n[t])return n[t];var i=r.split(":")[0];return n=e._typeOptions.get(i),n?n[t]:void 0}function s(e,r){var t=e.normalize(r);return e.resolve(t)}function a(e,r){var t,n=s(e,r),a=r.split(":"),u=a[0];if(o(e,r,"instantiate")===!1)return n;if(n){var c=[];c=c.concat(e.typeInjections.get(u)||[]),c=c.concat(e.injections[r]||[]);var h=i(e,c);return h.container=e,h._debugContainerKey=r,t=n.create(h)}}function u(e,r){e.cache.eachLocal(function(t,n){o(e,t,"instantiate")!==!1&&r(n)})}function c(e){e.cache.eachLocal(function(r,t){o(e,r,"instantiate")!==!1&&t.destroy()}),e.cache.dict={}}return e.prototype={get:function(e){var r=this.dict;return r.hasOwnProperty(e)?r[e]:this.parent?this.parent.get(e):void 0},set:function(e,r){this.dict[e]=r},has:function(e){var r=this.dict;return r.hasOwnProperty(e)?!0:this.parent?this.parent.has(e):!1},eachLocal:function(e,r){var t=this.dict;for(var n in t)t.hasOwnProperty(n)&&e.call(r,n,t[n])}},r.prototype={child:function(){var e=new r(this);return this.children.push(e),e},set:function(e,r,t){e[r]=t},register:function(e,r,t,n){var i;-1!==e.indexOf(":")?(n=t,t=r,i=e):i=e+":"+r;var o=this.normalize(i);this.registry.set(o,t),this._options.set(o,n||{})},resolve:function(e){return this.resolver(e)||this.registry.get(e)},normalize:function(e){return e},lookup:function(e,r){if(e=this.normalize(e),r=r||{},this.cache.has(e)&&r.singleton!==!1)return this.cache.get(e);var t=a(this,e);return t?(n(this,e)&&r.singleton!==!1&&this.cache.set(e,t),t):void 0},has:function(e){return this.cache.has(e)?!0:!!s(this,e)},optionsForType:function(e,r){this.parent&&t("optionsForType"),this._typeOptions.set(e,r)},options:function(e,r){this.optionsForType(e,r)},typeInjection:function(e,r,n){this.parent&&t("typeInjection");var i=this.typeInjections.get(e);i||(i=[],this.typeInjections.set(e,i)),i.push({property:r,fullName:n})},injection:function(e,r,n){if(this.parent&&t("injection"),-1===e.indexOf(":"))return this.typeInjection(e,r,n);var i=this.injections[e]=this.injections[e]||[];i.push({property:r,fullName:n})},destroy:function(){this.isDestroyed=!0;for(var e=0,r=this.children.length;r>e;e++)this.children[e].destroy();this.children=[],u(this,function(e){e.isDestroying=!0}),u(this,function(e){e.destroy()}),delete this.parent,this.isDestroyed=!0},reset:function(){for(var e=0,r=this.children.length;r>e;e++)c(this.children[e]);c(this)}},r})}(),function(){function e(t,n,i,o){var s,a,u;if("object"!=typeof t||null===t)return t;if(n&&(a=r(i,t))>=0)return o[a];if("array"===Ember.typeOf(t)){if(s=t.slice(),n)for(a=s.length;--a>=0;)s[a]=e(s[a],n,i,o)}else if(Ember.Copyable&&Ember.Copyable.detect(t))s=t.copy(n,i,o);else{s={};for(u in t)t.hasOwnProperty(u)&&"__"!==u.substring(0,2)&&(s[u]=n?e(t[u],n,i,o):t[u])}return n&&(i.push(t),o.push(s)),s}var r=Ember.EnumerableUtils.indexOf;Ember.compare=function t(e,r){if(e===r)return 0;var n=Ember.typeOf(e),i=Ember.typeOf(r),o=Ember.Comparable;if(o){if("instance"===n&&o.detect(e.constructor))return e.constructor.compare(e,r);if("instance"===i&&o.detect(r.constructor))return 1-r.constructor.compare(r,e)}var s=Ember.ORDER_DEFINITION_MAPPING;if(!s){var a=Ember.ORDER_DEFINITION;s=Ember.ORDER_DEFINITION_MAPPING={};var u,c;for(u=0,c=a.length;c>u;++u)s[a[u]]=u;delete Ember.ORDER_DEFINITION}var h=s[n],l=s[i];if(l>h)return-1;if(h>l)return 1;switch(n){case"boolean":case"number":return r>e?-1:e>r?1:0;case"string":var f=e.localeCompare(r);return 0>f?-1:f>0?1:0;case"array":for(var m=e.length,b=r.length,p=Math.min(m,b),E=0,d=0;0===E&&p>d;)E=t(e[d],r[d]),d++;return 0!==E?E:b>m?-1:m>b?1:0;case"instance":return Ember.Comparable&&Ember.Comparable.detect(e)?e.compare(e,r):0;case"date":var v=e.getTime(),g=r.getTime();return g>v?-1:v>g?1:0;default:return 0}},Ember.copy=function(r,t){return"object"!=typeof r||null===r?r:Ember.Copyable&&Ember.Copyable.detect(r)?r.copy(t):e(r,t,t?[]:null,t?[]:null)},Ember.inspect=function(e){if("object"!=typeof e||null===e)return e+"";var r,t=[];for(var n in e)if(e.hasOwnProperty(n)){if(r=e[n],"toString"===r)continue;"function"===Ember.typeOf(r)&&(r="function() { ... }"),t.push(n+": "+r)}return"{"+t.join(", ")+"}"},Ember.isEqual=function(e,r){return e&&"function"==typeof e.isEqual?e.isEqual(r):e===r},Ember.ORDER_DEFINITION=Ember.ENV.ORDER_DEFINITION||["undefined","null","boolean","number","string","array","object","instance","function","class","date"],Ember.keys=Object.keys,Ember.keys||(Ember.keys=function(e){var r=[];for(var t in e)e.hasOwnProperty(t)&&r.push(t);return r});var n=["description","fileName","lineNumber","message","name","number","stack"];Ember.Error=function(){for(var e=Error.prototype.constructor.apply(this,arguments),r=0;n.length>r;r++)this[n[r]]=e[n[r]]},Ember.Error.prototype=Ember.create(Error.prototype)}(),function(){Ember.RSVP=r("rsvp")}(),function(){var e=/[ _]/g,r={},t=/([a-z])([A-Z])/g,n=/(\-|_|\.|\s)+(.)?/g,i=/([a-z\d])([A-Z]+)/g,o=/\-|\s+/g;Ember.STRINGS={},Ember.String={fmt:function(e,r){var t=0;return e.replace(/%@([0-9]+)?/g,function(e,n){return n=n?parseInt(n,0)-1:t++,e=r[n],(null===e?"(null)":void 0===e?"":e).toString()})},loc:function(e,r){return e=Ember.STRINGS[e]||e,Ember.String.fmt(e,r)},w:function(e){return e.split(/\s+/)},decamelize:function(e){return e.replace(t,"$1_$2").toLowerCase()},dasherize:function(t){var n,i=r,o=i.hasOwnProperty(t);return o?i[t]:(n=Ember.String.decamelize(t).replace(e,"-"),i[t]=n,n)},camelize:function(e){return e.replace(n,function(e,r,t){return t?t.toUpperCase():""}).replace(/^([A-Z])/,function(e){return e.toLowerCase()})},classify:function(e){for(var r=e.split("."),t=[],n=0,i=r.length;i>n;n++){var o=Ember.String.camelize(r[n]);t.push(o.charAt(0).toUpperCase()+o.substr(1))}return t.join(".")},underscore:function(e){return e.replace(i,"$1_$2").replace(o,"_").toLowerCase()},capitalize:function(e){return e.charAt(0).toUpperCase()+e.substr(1)}}}(),function(){var e=Ember.String.fmt,r=Ember.String.w,t=Ember.String.loc,n=Ember.String.camelize,i=Ember.String.decamelize,o=Ember.String.dasherize,s=Ember.String.underscore,a=Ember.String.capitalize,u=Ember.String.classify;(Ember.EXTEND_PROTOTYPES===!0||Ember.EXTEND_PROTOTYPES.String)&&(String.prototype.fmt=function(){return e(this,arguments)},String.prototype.w=function(){return r(this)},String.prototype.loc=function(){return t(this,arguments)},String.prototype.camelize=function(){return n(this)},String.prototype.decamelize=function(){return i(this)},String.prototype.dasherize=function(){return o(this)},String.prototype.underscore=function(){return s(this)},String.prototype.classify=function(){return u(this)},String.prototype.capitalize=function(){return a(this)})}(),function(){var e=Array.prototype.slice;(Ember.EXTEND_PROTOTYPES===!0||Ember.EXTEND_PROTOTYPES.Function)&&(Function.prototype.property=function(){var e=Ember.computed(this);return e.property.apply(e,arguments)},Function.prototype.observes=function(){return this.__ember_observes__=e.call(arguments),this},Function.prototype.observesBefore=function(){return this.__ember_observesBefore__=e.call(arguments),this})}(),function(){function e(){return 0===a.length?{}:a.pop()}function r(e){return a.push(e),null}function t(e,r){function t(t){var o=n(t,e);return i?r===o:!!o}var i=2===arguments.length;return t}var n=Ember.get,i=Ember.set,o=Array.prototype.slice,s=Ember.EnumerableUtils.indexOf,a=[];Ember.Enumerable=Ember.Mixin.create({isEnumerable:!0,nextObject:Ember.required(Function),firstObject:Ember.computed(function(){if(0===n(this,"length"))return void 0;var t,i=e();return t=this.nextObject(0,null,i),r(i),t}).property("[]"),lastObject:Ember.computed(function(){var t=n(this,"length");if(0===t)return void 0;var i,o=e(),s=0,a=null;do a=i,i=this.nextObject(s++,a,o);while(void 0!==i);return r(o),a}).property("[]"),contains:function(e){return void 0!==this.find(function(r){return r===e})},forEach:function(t,i){if("function"!=typeof t)throw new TypeError;var o=n(this,"length"),s=null,a=e();void 0===i&&(i=null);for(var u=0;o>u;u++){var c=this.nextObject(u,s,a);t.call(i,c,u,this),s=c}return s=null,a=r(a),this},getEach:function(e){return this.mapProperty(e)},setEach:function(e,r){return this.forEach(function(t){i(t,e,r)})},map:function(e,r){var t=Ember.A([]);return this.forEach(function(n,i,o){t[i]=e.call(r,n,i,o)}),t},mapProperty:function(e){return this.map(function(r){return n(r,e)})},filter:function(e,r){var t=Ember.A([]);return this.forEach(function(n,i,o){e.call(r,n,i,o)&&t.push(n)}),t},reject:function(e,r){return this.filter(function(){return!e.apply(r,arguments)})},filterProperty:function(){return this.filter(t.apply(this,arguments))},rejectProperty:function(e,r){var t=function(t){return n(t,e)===r},i=function(r){return!!n(r,e)},o=2===arguments.length?t:i;return this.reject(o)},find:function(t,i){var o=n(this,"length");void 0===i&&(i=null);for(var s,a,u=null,c=!1,h=e(),l=0;o>l&&!c;l++)s=this.nextObject(l,u,h),(c=t.call(i,s,l,this))&&(a=s),u=s;return s=u=null,h=r(h),a},findProperty:function(){return this.find(t.apply(this,arguments))},every:function(e,r){return!this.find(function(t,n,i){return!e.call(r,t,n,i)})},everyProperty:function(){return this.every(t.apply(this,arguments))},some:function(e,r){return!!this.find(function(t,n,i){return!!e.call(r,t,n,i)})},someProperty:function(){return this.some(t.apply(this,arguments))},reduce:function(e,r,t){if("function"!=typeof e)throw new TypeError;var n=r;return this.forEach(function(r,i){n=e.call(null,n,r,i,this,t)},this),n},invoke:function(e){var r,t=Ember.A([]);return arguments.length>1&&(r=o.call(arguments,1)),this.forEach(function(n,i){var o=n&&n[e];"function"==typeof o&&(t[i]=r?o.apply(n,r):o.call(n))},this),t},toArray:function(){var e=Ember.A([]);return this.forEach(function(r,t){e[t]=r}),e},compact:function(){return this.filter(function(e){return null!=e})},without:function(e){if(!this.contains(e))return this;var r=Ember.A([]);return this.forEach(function(t){t!==e&&(r[r.length]=t)}),r},uniq:function(){var e=Ember.A([]);return this.forEach(function(r){0>s(e,r)&&e.push(r)}),e},"[]":Ember.computed(function(){return this}),addEnumerableObserver:function(e,r){var t=r&&r.willChange||"enumerableWillChange",i=r&&r.didChange||"enumerableDidChange",o=n(this,"hasEnumerableObservers");return o||Ember.propertyWillChange(this,"hasEnumerableObservers"),Ember.addListener(this,"@enumerable:before",e,t),Ember.addListener(this,"@enumerable:change",e,i),o||Ember.propertyDidChange(this,"hasEnumerableObservers"),this},removeEnumerableObserver:function(e,r){var t=r&&r.willChange||"enumerableWillChange",i=r&&r.didChange||"enumerableDidChange",o=n(this,"hasEnumerableObservers");return o&&Ember.propertyWillChange(this,"hasEnumerableObservers"),Ember.removeListener(this,"@enumerable:before",e,t),Ember.removeListener(this,"@enumerable:change",e,i),o&&Ember.propertyDidChange(this,"hasEnumerableObservers"),this},hasEnumerableObservers:Ember.computed(function(){return Ember.hasListeners(this,"@enumerable:change")||Ember.hasListeners(this,"@enumerable:before")}),enumerableContentWillChange:function(e,r){var t,i,o;return t="number"==typeof e?e:e?n(e,"length"):e=-1,i="number"==typeof r?r:r?n(r,"length"):r=-1,o=0>i||0>t||0!==i-t,-1===e&&(e=null),-1===r&&(r=null),Ember.propertyWillChange(this,"[]"),o&&Ember.propertyWillChange(this,"length"),Ember.sendEvent(this,"@enumerable:before",[this,e,r]),this},enumerableContentDidChange:function(e,r){var t,i,o;return t="number"==typeof e?e:e?n(e,"length"):e=-1,i="number"==typeof r?r:r?n(r,"length"):r=-1,o=0>i||0>t||0!==i-t,-1===e&&(e=null),-1===r&&(r=null),Ember.sendEvent(this,"@enumerable:change",[this,e,r]),o&&Ember.propertyDidChange(this,"length"),Ember.propertyDidChange(this,"[]"),this}})}(),function(){var e=Ember.get,r=(Ember.set,Ember.isNone),t=Ember.EnumerableUtils.map,n=Ember.cacheFor;Ember.Array=Ember.Mixin.create(Ember.Enumerable,{isSCArray:!0,length:Ember.required(),objectAt:function(r){return 0>r||r>=e(this,"length")?void 0:e(this,r)},objectsAt:function(e){var r=this;return t(e,function(e){return r.objectAt(e)})},nextObject:function(e){return this.objectAt(e)},"[]":Ember.computed(function(r,t){return void 0!==t&&this.replace(0,e(this,"length"),t),this}),firstObject:Ember.computed(function(){return this.objectAt(0)}),lastObject:Ember.computed(function(){return this.objectAt(e(this,"length")-1)}),contains:function(e){return this.indexOf(e)>=0},slice:function(t,n){var i=Ember.A([]),o=e(this,"length");for(r(t)&&(t=0),(r(n)||n>o)&&(n=o),0>t&&(t=o+t),0>n&&(n=o+n);n>t;)i[i.length]=this.objectAt(t++);return i},indexOf:function(r,t){var n,i=e(this,"length");for(void 0===t&&(t=0),0>t&&(t+=i),n=t;i>n;n++)if(this.objectAt(n,!0)===r)return n;return-1},lastIndexOf:function(r,t){var n,i=e(this,"length");for((void 0===t||t>=i)&&(t=i-1),0>t&&(t+=i),n=t;n>=0;n--)if(this.objectAt(n)===r)return n;return-1},addArrayObserver:function(r,t){var n=t&&t.willChange||"arrayWillChange",i=t&&t.didChange||"arrayDidChange",o=e(this,"hasArrayObservers");return o||Ember.propertyWillChange(this,"hasArrayObservers"),Ember.addListener(this,"@array:before",r,n),Ember.addListener(this,"@array:change",r,i),o||Ember.propertyDidChange(this,"hasArrayObservers"),this},removeArrayObserver:function(r,t){var n=t&&t.willChange||"arrayWillChange",i=t&&t.didChange||"arrayDidChange",o=e(this,"hasArrayObservers");return o&&Ember.propertyWillChange(this,"hasArrayObservers"),Ember.removeListener(this,"@array:before",r,n),Ember.removeListener(this,"@array:change",r,i),o&&Ember.propertyDidChange(this,"hasArrayObservers"),this},hasArrayObservers:Ember.computed(function(){return Ember.hasListeners(this,"@array:change")||Ember.hasListeners(this,"@array:before")}),arrayContentWillChange:function(r,t,n){void 0===r?(r=0,t=n=-1):(void 0===t&&(t=-1),void 0===n&&(n=-1)),Ember.isWatching(this,"@each")&&e(this,"@each"),Ember.sendEvent(this,"@array:before",[this,r,t,n]);var i,o;if(r>=0&&t>=0&&e(this,"hasEnumerableObservers")){i=[],o=r+t;for(var s=r;o>s;s++)i.push(this.objectAt(s))}else i=t;return this.enumerableContentWillChange(i,n),this},arrayContentDidChange:function(r,t,i){void 0===r?(r=0,t=i=-1):(void 0===t&&(t=-1),void 0===i&&(i=-1));var o,s;if(r>=0&&i>=0&&e(this,"hasEnumerableObservers")){o=[],s=r+i;for(var a=r;s>a;a++)o.push(this.objectAt(a))}else o=i;this.enumerableContentDidChange(t,o),Ember.sendEvent(this,"@array:change",[this,r,t,i]);var u=e(this,"length"),c=n(this,"firstObject"),h=n(this,"lastObject");return this.objectAt(0)!==c&&(Ember.propertyWillChange(this,"firstObject"),Ember.propertyDidChange(this,"firstObject")),this.objectAt(u-1)!==h&&(Ember.propertyWillChange(this,"lastObject"),Ember.propertyDidChange(this,"lastObject")),this},"@each":Ember.computed(function(){return this.__each||(this.__each=new Ember.EachProxy(this)),this.__each})})}(),function(){Ember.Comparable=Ember.Mixin.create({isComparable:!0,compare:Ember.required(Function)})}(),function(){var e=Ember.get;Ember.set,Ember.Copyable=Ember.Mixin.create({copy:Ember.required(Function),frozenCopy:function(){if(Ember.Freezable&&Ember.Freezable.detect(this))return e(this,"isFrozen")?this:this.copy().freeze();throw new Error(Ember.String.fmt("%@ does not support freezing",[this]))}})}(),function(){var e=Ember.get,r=Ember.set;Ember.Freezable=Ember.Mixin.create({isFrozen:!1,freeze:function(){return e(this,"isFrozen")?this:(r(this,"isFrozen",!0),this)}}),Ember.FROZEN_ERROR="Frozen object cannot be modified."}(),function(){var e=Ember.EnumerableUtils.forEach;Ember.MutableEnumerable=Ember.Mixin.create(Ember.Enumerable,{addObject:Ember.required(Function),addObjects:function(r){return Ember.beginPropertyChanges(this),e(r,function(e){this.addObject(e)},this),Ember.endPropertyChanges(this),this},removeObject:Ember.required(Function),removeObjects:function(r){return Ember.beginPropertyChanges(this),e(r,function(e){this.removeObject(e)},this),Ember.endPropertyChanges(this),this}})}(),function(){var e="Index out of range",r=[],t=Ember.get;Ember.set,Ember.MutableArray=Ember.Mixin.create(Ember.Array,Ember.MutableEnumerable,{replace:Ember.required(),clear:function(){var e=t(this,"length");return 0===e?this:(this.replace(0,e,r),this)},insertAt:function(r,n){if(r>t(this,"length"))throw new Error(e);return this.replace(r,0,[n]),this},removeAt:function(n,i){if("number"==typeof n){if(0>n||n>=t(this,"length"))throw new Error(e);void 0===i&&(i=1),this.replace(n,i,r)}return this},pushObject:function(e){return this.insertAt(t(this,"length"),e),e},pushObjects:function(e){return this.replace(t(this,"length"),0,e),this
|
17
|
-
},popObject:function(){var e=t(this,"length");if(0===e)return null;var r=this.objectAt(e-1);return this.removeAt(e-1,1),r},shiftObject:function(){if(0===t(this,"length"))return null;var e=this.objectAt(0);return this.removeAt(0),e},unshiftObject:function(e){return this.insertAt(0,e),e},unshiftObjects:function(e){return this.replace(0,0,e),this},reverseObjects:function(){var e=t(this,"length");if(0===e)return this;var r=this.toArray().reverse();return this.replace(0,e,r),this},setObjects:function(e){if(0===e.length)return this.clear();var r=t(this,"length");return this.replace(0,r,e),this},removeObject:function(e){for(var r=t(this,"length")||0;--r>=0;){var n=this.objectAt(r);n===e&&this.removeAt(r)}return this},addObject:function(e){return this.contains(e)||this.pushObject(e),this}})}(),function(){var e=Ember.get,r=Ember.set;Ember.Observable=Ember.Mixin.create({get:function(r){return e(this,r)},getProperties:function(){var r={},t=arguments;1===arguments.length&&"array"===Ember.typeOf(arguments[0])&&(t=arguments[0]);for(var n=0;t.length>n;n++)r[t[n]]=e(this,t[n]);return r},set:function(e,t){return r(this,e,t),this},setProperties:function(e){return Ember.setProperties(this,e)},beginPropertyChanges:function(){return Ember.beginPropertyChanges(),this},endPropertyChanges:function(){return Ember.endPropertyChanges(),this},propertyWillChange:function(e){return Ember.propertyWillChange(this,e),this},propertyDidChange:function(e){return Ember.propertyDidChange(this,e),this},notifyPropertyChange:function(e){return this.propertyWillChange(e),this.propertyDidChange(e),this},addBeforeObserver:function(e,r,t){Ember.addBeforeObserver(this,e,r,t)},addObserver:function(e,r,t){Ember.addObserver(this,e,r,t)},removeObserver:function(e,r,t){Ember.removeObserver(this,e,r,t)},hasObserverFor:function(e){return Ember.hasListeners(this,e+":change")},getPath:function(e){return this.get(e)},setPath:function(e,r){return this.set(e,r)},getWithDefault:function(e,r){return Ember.getWithDefault(this,e,r)},incrementProperty:function(t,n){return Ember.isNone(n)&&(n=1),r(this,t,(e(this,t)||0)+n),e(this,t)},decrementProperty:function(t,n){return Ember.isNone(n)&&(n=1),r(this,t,(e(this,t)||0)-n),e(this,t)},toggleProperty:function(t){return r(this,t,!e(this,t)),e(this,t)},cacheFor:function(e){return Ember.cacheFor(this,e)},observersForKey:function(e){return Ember.observersFor(this,e)}})}(),function(){var e=Ember.get;Ember.set,Ember.TargetActionSupport=Ember.Mixin.create({target:null,action:null,actionContext:null,targetObject:Ember.computed(function(){var r=e(this,"target");if("string"===Ember.typeOf(r)){var t=e(this,r);return void 0===t&&(t=e(Ember.lookup,r)),t}return r}).property("target"),actionContextObject:Ember.computed(function(){var r=e(this,"actionContext");if("string"===Ember.typeOf(r)){var t=e(this,r);return void 0===t&&(t=e(Ember.lookup,r)),t}return r}).property("actionContext"),triggerAction:function(r){r=r||{};var t=r.action||e(this,"action"),n=r.target||e(this,"targetObject"),i=r.actionContext||e(this,"actionContextObject")||this;if(n&&t){var o;return o=n.send?n.send.apply(n,[t,i]):n[t].apply(n,[i]),o!==!1&&(o=!0),o}return!1}})}(),function(){Ember.Evented=Ember.Mixin.create({on:function(e,r,t){return Ember.addListener(this,e,r,t),this},one:function(e,r,t){return t||(t=r,r=null),Ember.addListener(this,e,r,t,!0),this},trigger:function(e){var r,t,n=[];for(r=1,t=arguments.length;t>r;r++)n.push(arguments[r]);Ember.sendEvent(this,e,n)},fire:function(){this.trigger.apply(this,arguments)},off:function(e,r,t){return Ember.removeListener(this,e,r,t),this},has:function(e){return Ember.hasListeners(this,e)}})}(),function(){var e=r("rsvp");e.configure("async",function(e,r){Ember.run.schedule("actions",r,e)});var t=Ember.get;Ember.DeferredMixin=Ember.Mixin.create({then:function(e,r){var n,i,o;return o=this,n=t(this,"_deferred"),i=n.promise,i.then(function(r){return r===i?e(o):e(r)},function(e){return r(e)})},resolve:function(e){var r,n;r=t(this,"_deferred"),n=r.promise,e===this?r.resolve(n):r.resolve(e)},reject:function(e){t(this,"_deferred").reject(e)},_deferred:Ember.computed(function(){return e.defer()})})}(),function(){Ember.Container=r("container"),Ember.Container.set=Ember.set}(),function(){function e(){var e,r,o=!1,s=function(){o||s.proto(),n(this,i,v),n(this,"_super",v);var u=a(this);if(u.proto=this,e){var h=e;e=null,this.reopen.apply(this,h)}if(r){var l=r;r=null;for(var f=this.concatenatedProperties,m=0,p=l.length;p>m;m++){var g=l[m];for(var y in g)if(g.hasOwnProperty(y)){var _=g[y],O=Ember.IS_BINDING;if(O.test(y)){var C=u.bindings;C?u.hasOwnProperty("bindings")||(C=u.bindings=t(u.bindings)):C=u.bindings={},C[y]=_}var w=u.descs[y];if(f&&d(f,y)>=0){var P=this[y];_=P?"function"==typeof P.concat?P.concat(_):Ember.makeArray(P).concat(_):Ember.makeArray(_)}w?w.set(this,y,_):"function"!=typeof this.setUnknownProperty||y in this?E?Ember.defineProperty(this,y,null,_):this[y]=_:this.setUnknownProperty(y,_)}}}b(this,u),delete u.proto,c(this),this.init.apply(this,arguments)};return s.toString=f.prototype.toString,s.willReopen=function(){o&&(s.PrototypeMixin=f.create(s.PrototypeMixin)),o=!1},s._initMixins=function(r){e=r},s._initProperties=function(e){r=e},s.proto=function(){var e=s.superclass;return e&&e.proto(),o||(o=!0,s.PrototypeMixin.applyPartial(s.prototype),u(s.prototype)),this.prototype},s}function r(e){return function(){return e}}var t=(Ember.set,Ember.get,Ember.create),n=Ember.platform.defineProperty,i=Ember.GUID_KEY,o=Ember.guidFor,s=Ember.generateGuid,a=Ember.meta,u=Ember.rewatch,c=Ember.finishChains,h=Ember.destroy,l=Ember.run.schedule,f=Ember.Mixin,m=f._apply,b=f.finishPartial,p=f.prototype.reopen,E=Ember.ENV.MANDATORY_SETTER,d=Ember.EnumerableUtils.indexOf,v={configurable:!0,writable:!0,enumerable:!1,value:void 0},g=e();g.toString=function(){return"Ember.CoreObject"},g.PrototypeMixin=f.create({reopen:function(){return m(this,arguments,!0),this},isInstance:!0,init:function(){},concatenatedProperties:null,isDestroyed:!1,isDestroying:!1,destroy:function(){return this._didCallDestroy?void 0:(this.isDestroying=!0,this._didCallDestroy=!0,l("destroy",this,this._scheduledDestroy),this)},willDestroy:Ember.K,_scheduledDestroy:function(){this.willDestroy&&this.willDestroy(),h(this),this.isDestroyed=!0,this.didDestroy&&this.didDestroy()},bind:function(e,r){return r instanceof Ember.Binding||(r=Ember.Binding.from(r)),r.to(e).connect(this),r},toString:function(){var e="function"==typeof this.toStringExtension,t=e?":"+this.toStringExtension():"",n="<"+this.constructor.toString()+":"+o(this)+t+">";return this.toString=r(n),n}}),g.PrototypeMixin.ownerConstructor=g,Ember.config.overridePrototypeMixin&&Ember.config.overridePrototypeMixin(g.PrototypeMixin),g.__super__=null;var y=f.create({ClassMixin:Ember.required(),PrototypeMixin:Ember.required(),isClass:!0,isMethod:!1,extend:function(){var r,n=e();return n.ClassMixin=f.create(this.ClassMixin),n.PrototypeMixin=f.create(this.PrototypeMixin),n.ClassMixin.ownerConstructor=n,n.PrototypeMixin.ownerConstructor=n,p.apply(n.PrototypeMixin,arguments),n.superclass=this,n.__super__=this.prototype,r=n.prototype=t(this.prototype),r.constructor=n,s(r,"ember"),a(r).proto=r,n.ClassMixin.apply(n),n},createWithMixins:function(){var e=this;return arguments.length>0&&this._initMixins(arguments),new e},create:function(){var e=this;return arguments.length>0&&this._initProperties(arguments),new e},reopen:function(){return this.willReopen(),p.apply(this.PrototypeMixin,arguments),this},reopenClass:function(){return p.apply(this.ClassMixin,arguments),m(this,arguments,!1),this},detect:function(e){if("function"!=typeof e)return!1;for(;e;){if(e===this)return!0;e=e.superclass}return!1},detectInstance:function(e){return e instanceof this},metaForProperty:function(e){var r=a(this.proto(),!1).descs[e];return r._meta||{}},eachComputedProperty:function(e,r){var t,n=this.proto(),i=a(n).descs,o={};for(var s in i)t=i[s],t instanceof Ember.ComputedProperty&&e.call(r||this,s,t._meta||o)}});y.ownerConstructor=g,Ember.config.overrideClassMixin&&Ember.config.overrideClassMixin(y),g.ClassMixin=y,y.apply(g),Ember.CoreObject=g}(),function(){Ember.Object=Ember.CoreObject.extend(Ember.Observable),Ember.Object.toString=function(){return"Ember.Object"}}(),function(){function e(r,t,i){var s=r.length;c[r.join(".")]=t;for(var a in t)if(h.call(t,a)){var u=t[a];if(r[s]=a,u&&u.toString===n)u.toString=o(r.join(".")),u[f]=r.join(".");else if(u&&u.isNamespace){if(i[l(u)])continue;i[l(u)]=!0,e(r,u,i)}}r.length=s}function r(){var e,r,t=Ember.Namespace,n=Ember.lookup;if(!t.PROCESSED)for(var i in n)if("parent"!==i&&"top"!==i&&"frameElement"!==i&&"webkitStorageInfo"!==i&&!("globalStorage"===i&&n.StorageList&&n.globalStorage instanceof n.StorageList||n.hasOwnProperty&&!n.hasOwnProperty(i))){try{e=Ember.lookup[i],r=e&&e.isNamespace}catch(o){continue}r&&(e[f]=i)}}function t(e){var r=e.superclass;return r?r[f]?r[f]:t(r):void 0}function n(){Ember.BOOTED||this[f]||i();var e;if(this[f])e=this[f];else{var r=t(this);e=r?"(subclass of "+r+")":"(unknown mixin)",this.toString=o(e)}return e}function i(){var t=!u.PROCESSED,n=Ember.anyUnprocessedMixins;if(t&&(r(),u.PROCESSED=!0),t||n){for(var i,o=u.NAMESPACES,s=0,a=o.length;a>s;s++)i=o[s],e([i.toString()],i,{});Ember.anyUnprocessedMixins=!1}}function o(e){return function(){return e}}var s=Ember.get,a=Ember.ArrayPolyfills.indexOf,u=Ember.Namespace=Ember.Object.extend({isNamespace:!0,init:function(){Ember.Namespace.NAMESPACES.push(this),Ember.Namespace.PROCESSED=!1},toString:function(){var e=s(this,"name");return e?e:(r(),this[Ember.GUID_KEY+"_name"])},nameClasses:function(){e([this.toString()],this,{})},destroy:function(){var e=Ember.Namespace.NAMESPACES;Ember.lookup[this.toString()]=void 0,e.splice(a.call(e,this),1),this._super()}});u.reopenClass({NAMESPACES:[Ember],NAMESPACES_BY_ID:{},PROCESSED:!1,processAll:i,byName:function(e){return Ember.BOOTED||i(),c[e]}});var c=u.NAMESPACES_BY_ID,h={}.hasOwnProperty,l=Ember.guidFor,f=Ember.NAME_KEY=Ember.GUID_KEY+"_name";Ember.Mixin.prototype.toString=n}(),function(){Ember.Application=Ember.Namespace.extend()}(),function(){var e="Index out of range",r=[],t=Ember.get;Ember.set,Ember.ArrayProxy=Ember.Object.extend(Ember.MutableArray,{content:null,arrangedContent:Ember.computed.alias("content"),objectAtContent:function(e){return t(this,"arrangedContent").objectAt(e)},replaceContent:function(e,r,n){t(this,"content").replace(e,r,n)},_contentWillChange:Ember.beforeObserver(function(){this._teardownContent()},"content"),_teardownContent:function(){var e=t(this,"content");e&&e.removeArrayObserver(this,{willChange:"contentArrayWillChange",didChange:"contentArrayDidChange"})},contentArrayWillChange:Ember.K,contentArrayDidChange:Ember.K,_contentDidChange:Ember.observer(function(){t(this,"content"),this._setupContent()},"content"),_setupContent:function(){var e=t(this,"content");e&&e.addArrayObserver(this,{willChange:"contentArrayWillChange",didChange:"contentArrayDidChange"})},_arrangedContentWillChange:Ember.beforeObserver(function(){var e=t(this,"arrangedContent"),r=e?t(e,"length"):0;this.arrangedContentArrayWillChange(this,0,r,void 0),this.arrangedContentWillChange(this),this._teardownArrangedContent(e)},"arrangedContent"),_arrangedContentDidChange:Ember.observer(function(){var e=t(this,"arrangedContent"),r=e?t(e,"length"):0;this._setupArrangedContent(),this.arrangedContentDidChange(this),this.arrangedContentArrayDidChange(this,0,void 0,r)},"arrangedContent"),_setupArrangedContent:function(){var e=t(this,"arrangedContent");e&&e.addArrayObserver(this,{willChange:"arrangedContentArrayWillChange",didChange:"arrangedContentArrayDidChange"})},_teardownArrangedContent:function(){var e=t(this,"arrangedContent");e&&e.removeArrayObserver(this,{willChange:"arrangedContentArrayWillChange",didChange:"arrangedContentArrayDidChange"})},arrangedContentWillChange:Ember.K,arrangedContentDidChange:Ember.K,objectAt:function(e){return t(this,"content")&&this.objectAtContent(e)},length:Ember.computed(function(){var e=t(this,"arrangedContent");return e?t(e,"length"):0}),_replace:function(e,r,n){var i=t(this,"content");return i&&this.replaceContent(e,r,n),this},replace:function(){if(t(this,"arrangedContent")!==t(this,"content"))throw new Ember.Error("Using replace on an arranged ArrayProxy is not allowed.");this._replace.apply(this,arguments)},_insertAt:function(r,n){if(r>t(this,"content.length"))throw new Error(e);return this._replace(r,0,[n]),this},insertAt:function(e,r){if(t(this,"arrangedContent")===t(this,"content"))return this._insertAt(e,r);throw new Ember.Error("Using insertAt on an arranged ArrayProxy is not allowed.")},removeAt:function(n,i){if("number"==typeof n){var o,s=t(this,"content"),a=t(this,"arrangedContent"),u=[];if(0>n||n>=t(this,"length"))throw new Error(e);for(void 0===i&&(i=1),o=n;n+i>o;o++)u.push(s.indexOf(a.objectAt(o)));for(u.sort(function(e,r){return r-e}),Ember.beginPropertyChanges(),o=0;u.length>o;o++)this._replace(u[o],1,r);Ember.endPropertyChanges()}return this},pushObject:function(e){return this._insertAt(t(this,"content.length"),e),e},pushObjects:function(e){return this._replace(t(this,"length"),0,e),this},setObjects:function(e){if(0===e.length)return this.clear();var r=t(this,"length");return this._replace(0,r,e),this},unshiftObject:function(e){return this._insertAt(0,e),e},unshiftObjects:function(e){return this._replace(0,0,e),this},slice:function(){var e=this.toArray();return e.slice.apply(e,arguments)},arrangedContentArrayWillChange:function(e,r,t,n){this.arrayContentWillChange(r,t,n)},arrangedContentArrayDidChange:function(e,r,t,n){this.arrayContentDidChange(r,t,n)},init:function(){this._super(),this._setupContent(),this._setupArrangedContent()},willDestroy:function(){this._teardownArrangedContent(),this._teardownContent()}})}(),function(){function e(e,r){var t=r.slice(8);t in this||u(this,t)}function r(e,r){var t=r.slice(8);t in this||c(this,t)}var t=Ember.get,n=Ember.set,i=(Ember.String.fmt,Ember.addBeforeObserver),o=Ember.addObserver,s=Ember.removeBeforeObserver,a=Ember.removeObserver,u=Ember.propertyWillChange,c=Ember.propertyDidChange;Ember.ObjectProxy=Ember.Object.extend({content:null,_contentDidChange:Ember.observer(function(){},"content"),isTruthy:Ember.computed.bool("content"),_debugContainerKey:null,willWatchProperty:function(t){var n="content."+t;i(this,n,null,e),o(this,n,null,r)},didUnwatchProperty:function(t){var n="content."+t;s(this,n,null,e),a(this,n,null,r)},unknownProperty:function(e){var r=t(this,"content");return r?t(r,e):void 0},setUnknownProperty:function(e,r){var i=t(this,"content");return n(i,e,r)}}),Ember.ObjectProxy.reopenClass({create:function(){var e,r,t,n,i,o;if(arguments.length){for(r=this.proto(),t=0,n=arguments.length;n>t;t++){i=arguments[t];for(o in i)!i.hasOwnProperty(o)||o in r||(e||(e={}),e[o]=null)}e&&this._initMixins([e])}return this._super.apply(this,arguments)}})}(),function(){function e(e,r,t,i,o){var s,a=t._objects;for(a||(a=t._objects={});--o>=i;){var u=e.objectAt(o);u&&(Ember.addBeforeObserver(u,r,t,"contentKeyWillChange"),Ember.addObserver(u,r,t,"contentKeyDidChange"),s=n(u),a[s]||(a[s]=[]),a[s].push(o))}}function r(e,r,t,i,o){var s=t._objects;s||(s=t._objects={});for(var a,u;--o>=i;){var c=e.objectAt(o);c&&(Ember.removeBeforeObserver(c,r,t,"contentKeyWillChange"),Ember.removeObserver(c,r,t,"contentKeyDidChange"),u=n(c),a=s[u],a[a.indexOf(o)]=null)}}var t=(Ember.set,Ember.get),n=Ember.guidFor,i=Ember.EnumerableUtils.forEach,o=Ember.Object.extend(Ember.Array,{init:function(e,r,t){this._super(),this._keyName=r,this._owner=t,this._content=e},objectAt:function(e){var r=this._content.objectAt(e);return r&&t(r,this._keyName)},length:Ember.computed(function(){var e=this._content;return e?t(e,"length"):0})}),s=/^.+:(before|change)$/;Ember.EachProxy=Ember.Object.extend({init:function(e){this._super(),this._content=e,e.addArrayObserver(this),i(Ember.watchedEvents(this),function(e){this.didAddListener(e)},this)},unknownProperty:function(e){var r;return r=new o(this._content,e,this),Ember.defineProperty(this,e,null,r),this.beginObservingContentKey(e),r},arrayWillChange:function(e,t,n){var i,o,s=this._keys;o=n>0?t+n:-1,Ember.beginPropertyChanges(this);for(i in s)s.hasOwnProperty(i)&&(o>0&&r(e,i,this,t,o),Ember.propertyWillChange(this,i));Ember.propertyWillChange(this._content,"@each"),Ember.endPropertyChanges(this)},arrayDidChange:function(r,t,n,i){var o,s,a=this._keys;s=i>0?t+i:-1,Ember.beginPropertyChanges(this);for(o in a)a.hasOwnProperty(o)&&(s>0&&e(r,o,this,t,s),Ember.propertyDidChange(this,o));Ember.propertyDidChange(this._content,"@each"),Ember.endPropertyChanges(this)},didAddListener:function(e){s.test(e)&&this.beginObservingContentKey(e.slice(0,-7))},didRemoveListener:function(e){s.test(e)&&this.stopObservingContentKey(e.slice(0,-7))},beginObservingContentKey:function(r){var n=this._keys;if(n||(n=this._keys={}),n[r])n[r]++;else{n[r]=1;var i=this._content,o=t(i,"length");e(i,r,this,0,o)}},stopObservingContentKey:function(e){var n=this._keys;if(n&&n[e]>0&&0>=--n[e]){var i=this._content,o=t(i,"length");r(i,e,this,0,o)}},contentKeyWillChange:function(e,r){Ember.propertyWillChange(this,r)},contentKeyDidChange:function(e,r){Ember.propertyDidChange(this,r)}})}(),function(){var e=Ember.get;Ember.set;var r=Ember.Mixin.create(Ember.MutableArray,Ember.Observable,Ember.Copyable,{get:function(e){return"length"===e?this.length:"number"==typeof e?this[e]:this._super(e)},objectAt:function(e){return this[e]},replace:function(r,t,n){if(this.isFrozen)throw Ember.FROZEN_ERROR;var i=n?e(n,"length"):0;if(this.arrayContentWillChange(r,t,i),n&&0!==n.length){var o=[r,t].concat(n);this.splice.apply(this,o)}else this.splice(r,t);return this.arrayContentDidChange(r,t,i),this},unknownProperty:function(e,r){var t;return void 0!==r&&void 0===t&&(t=this[e]=r),t},indexOf:function(e,r){var t,n=this.length;for(r=void 0===r?0:0>r?Math.ceil(r):Math.floor(r),0>r&&(r+=n),t=r;n>t;t++)if(this[t]===e)return t;return-1},lastIndexOf:function(e,r){var t,n=this.length;for(r=void 0===r?n-1:0>r?Math.ceil(r):Math.floor(r),0>r&&(r+=n),t=r;t>=0;t--)if(this[t]===e)return t;return-1},copy:function(e){return e?this.map(function(e){return Ember.copy(e,!0)}):this.slice()}}),t=["length"];Ember.EnumerableUtils.forEach(r.keys(),function(e){Array.prototype[e]&&t.push(e)}),t.length>0&&(r=r.without.apply(r,t)),Ember.NativeArray=r,Ember.A=function(e){return void 0===e&&(e=[]),Ember.Array.detect(e)?e:Ember.NativeArray.apply(e)},Ember.NativeArray.activate=function(){r.apply(Array.prototype),Ember.A=function(e){return e||[]}},(Ember.EXTEND_PROTOTYPES===!0||Ember.EXTEND_PROTOTYPES.Array)&&Ember.NativeArray.activate()}(),function(){var e=Ember.get,r=Ember.set,t=Ember.guidFor,n=Ember.isNone,i=Ember.String.fmt;Ember.Set=Ember.CoreObject.extend(Ember.MutableEnumerable,Ember.Copyable,Ember.Freezable,{length:0,clear:function(){if(this.isFrozen)throw new Error(Ember.FROZEN_ERROR);var n=e(this,"length");if(0===n)return this;var i;this.enumerableContentWillChange(n,0),Ember.propertyWillChange(this,"firstObject"),Ember.propertyWillChange(this,"lastObject");for(var o=0;n>o;o++)i=t(this[o]),delete this[i],delete this[o];return r(this,"length",0),Ember.propertyDidChange(this,"firstObject"),Ember.propertyDidChange(this,"lastObject"),this.enumerableContentDidChange(n,0),this},isEqual:function(r){if(!Ember.Enumerable.detect(r))return!1;var t=e(this,"length");if(e(r,"length")!==t)return!1;for(;--t>=0;)if(!r.contains(this[t]))return!1;return!0},add:Ember.aliasMethod("addObject"),remove:Ember.aliasMethod("removeObject"),pop:function(){if(e(this,"isFrozen"))throw new Error(Ember.FROZEN_ERROR);var r=this.length>0?this[this.length-1]:null;return this.remove(r),r},push:Ember.aliasMethod("addObject"),shift:Ember.aliasMethod("pop"),unshift:Ember.aliasMethod("push"),addEach:Ember.aliasMethod("addObjects"),removeEach:Ember.aliasMethod("removeObjects"),init:function(e){this._super(),e&&this.addObjects(e)},nextObject:function(e){return this[e]},firstObject:Ember.computed(function(){return this.length>0?this[0]:void 0}),lastObject:Ember.computed(function(){return this.length>0?this[this.length-1]:void 0}),addObject:function(i){if(e(this,"isFrozen"))throw new Error(Ember.FROZEN_ERROR);if(n(i))return this;var o,s=t(i),a=this[s],u=e(this,"length");return a>=0&&u>a&&this[a]===i?this:(o=[i],this.enumerableContentWillChange(null,o),Ember.propertyWillChange(this,"lastObject"),u=e(this,"length"),this[s]=u,this[u]=i,r(this,"length",u+1),Ember.propertyDidChange(this,"lastObject"),this.enumerableContentDidChange(null,o),this)},removeObject:function(i){if(e(this,"isFrozen"))throw new Error(Ember.FROZEN_ERROR);if(n(i))return this;var o,s,a=t(i),u=this[a],c=e(this,"length"),h=0===u,l=u===c-1;return u>=0&&c>u&&this[u]===i&&(s=[i],this.enumerableContentWillChange(s,null),h&&Ember.propertyWillChange(this,"firstObject"),l&&Ember.propertyWillChange(this,"lastObject"),c-1>u&&(o=this[c-1],this[u]=o,this[t(o)]=u),delete this[a],delete this[c-1],r(this,"length",c-1),h&&Ember.propertyDidChange(this,"firstObject"),l&&Ember.propertyDidChange(this,"lastObject"),this.enumerableContentDidChange(s,null)),this},contains:function(e){return this[t(e)]>=0},copy:function(){var n=this.constructor,i=new n,o=e(this,"length");for(r(i,"length",o);--o>=0;)i[o]=this[o],i[t(this[o])]=o;return i},toString:function(){var e,r=this.length,t=[];for(e=0;r>e;e++)t[e]=this[e];return i("Ember.Set<%@>",[t.join(",")])}})}(),function(){var e=Ember.DeferredMixin;Ember.get;var r=Ember.Object.extend(e);r.reopenClass({promise:function(e,t){var n=r.create();return e.call(t,n),n}}),Ember.Deferred=r}(),function(){var e=Ember.ArrayPolyfills.forEach,r=Ember.ENV.EMBER_LOAD_HOOKS||{},t={};Ember.onLoad=function(e,n){var i;r[e]=r[e]||Ember.A(),r[e].pushObject(n),(i=t[e])&&n(i)},Ember.runLoadHooks=function(n,i){t[n]=i,r[n]&&e.call(r[n],function(e){e(i)})}}(),function(){var e=Ember.get;Ember.ControllerMixin=Ember.Mixin.create({isController:!0,target:null,container:null,store:null,model:Ember.computed.alias("content"),send:function(r){var t,n=[].slice.call(arguments,1),i=!0;this[r]&&(i=this[r].apply(this,n)===!0),i&&(t=e(this,"target"))&&t.send.apply(t,arguments)}}),Ember.Controller=Ember.Object.extend(Ember.ControllerMixin)}(),function(){var e=Ember.get,r=(Ember.set,Ember.EnumerableUtils.forEach);Ember.SortableMixin=Ember.Mixin.create(Ember.MutableEnumerable,{sortProperties:null,sortAscending:!0,orderBy:function(t,n){var i=0,o=e(this,"sortProperties"),s=e(this,"sortAscending");return r(o,function(r){0===i&&(i=Ember.compare(e(t,r),e(n,r)),0===i||s||(i=-1*i))}),i},destroy:function(){var t=e(this,"content"),n=e(this,"sortProperties");return t&&n&&r(t,function(e){r(n,function(r){Ember.removeObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this),this._super()},isSorted:Ember.computed.bool("sortProperties"),arrangedContent:Ember.computed("content","sortProperties.@each",function(){var t=e(this,"content"),n=e(this,"isSorted"),i=e(this,"sortProperties"),o=this;return t&&n?(t=t.slice(),t.sort(function(e,r){return o.orderBy(e,r)}),r(t,function(e){r(i,function(r){Ember.addObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this),Ember.A(t)):t}),_contentWillChange:Ember.beforeObserver(function(){var t=e(this,"content"),n=e(this,"sortProperties");t&&n&&r(t,function(e){r(n,function(r){Ember.removeObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this),this._super()},"content"),sortAscendingWillChange:Ember.beforeObserver(function(){this._lastSortAscending=e(this,"sortAscending")},"sortAscending"),sortAscendingDidChange:Ember.observer(function(){if(e(this,"sortAscending")!==this._lastSortAscending){var r=e(this,"arrangedContent");r.reverseObjects()}},"sortAscending"),contentArrayWillChange:function(t,n,i,o){var s=e(this,"isSorted");if(s){var a=e(this,"arrangedContent"),u=t.slice(n,n+i),c=e(this,"sortProperties");r(u,function(e){a.removeObject(e),r(c,function(r){Ember.removeObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this)}return this._super(t,n,i,o)},contentArrayDidChange:function(t,n,i,o){var s=e(this,"isSorted"),a=e(this,"sortProperties");if(s){var u=t.slice(n,n+o);r(u,function(e){this.insertItemSorted(e),r(a,function(r){Ember.addObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this)}return this._super(t,n,i,o)},insertItemSorted:function(r){var t=e(this,"arrangedContent"),n=e(t,"length"),i=this._binarySearch(r,0,n);t.insertAt(i,r)},contentItemSortPropertyDidChange:function(r){var t=e(this,"arrangedContent"),n=t.indexOf(r),i=t.objectAt(n-1),o=t.objectAt(n+1),s=i&&this.orderBy(r,i),a=o&&this.orderBy(r,o);(0>s||a>0)&&(t.removeObject(r),this.insertItemSorted(r))},_binarySearch:function(r,t,n){var i,o,s,a;return t===n?t:(a=e(this,"arrangedContent"),i=t+Math.floor((n-t)/2),o=a.objectAt(i),s=this.orderBy(o,r),0>s?this._binarySearch(r,i+1,n):s>0?this._binarySearch(r,t,i):i)}})}(),function(){var e=Ember.get,r=(Ember.set,Ember.EnumerableUtils.forEach),t=Ember.EnumerableUtils.replace;Ember.ArrayController=Ember.ArrayProxy.extend(Ember.ControllerMixin,Ember.SortableMixin,{itemController:null,lookupItemController:function(){return e(this,"itemController")},objectAtContent:function(r){var t=e(this,"length"),n=e(this,"arrangedContent"),i=n&&n.objectAt(r);if(r>=0&&t>r){var o=this.lookupItemController(i);if(o)return this.controllerAt(r,i,o)}return i},arrangedContentDidChange:function(){this._super(),this._resetSubControllers()},arrayContentDidChange:function(n,i,o){var s=e(this,"_subControllers"),a=s.slice(n,n+i);r(a,function(e){e&&e.destroy()}),t(s,n,i,new Array(o)),this._super(n,i,o)},init:function(){this.get("content")||Ember.defineProperty(this,"content",void 0,Ember.A()),this._super(),this.set("_subControllers",Ember.A())},controllerAt:function(r,t,n){var i=e(this,"container"),o=e(this,"_subControllers"),s=o[r];if(s||(s=i.lookup("controller:"+n,{singleton:!1}),o[r]=s),!s)throw new Error('Could not resolve itemController: "'+n+'"');return s.set("target",this),s.set("content",t),s},_subControllers:null,_resetSubControllers:function(){var t=e(this,"_subControllers");t&&r(t,function(e){e&&e.destroy()}),this.set("_subControllers",Ember.A())}})}(),function(){Ember.ObjectController=Ember.ObjectProxy.extend(Ember.ControllerMixin)}()})(),"undefined"==typeof location||"localhost"!==location.hostname&&"127.0.0.1"!==location.hostname||console.warn("You are running a production build of Ember on localhost and won't receive detailed error messages. If you want full error messages please use the non-minified build provided on the Ember website.");
|
15
|
+
(function(){var e,r;(function(){var t={},n={};e=function(e,r,n){t[e]={deps:r,callback:n}},r=function(e){if(n[e])return n[e];n[e]={};for(var i,o=t[e],s=o.deps,a=o.callback,u=[],c=0,h=s.length;h>c;c++)s[c]==="exports"?u.push(i={}):u.push(r(s[c]));var l=a.apply(this,u);return n[e]=i||l}})(),function(){function e(e){return r.console&&r.console[e]?r.console[e].apply?function(){r.console[e].apply(r.console,arguments)}:function(){var t=Array.prototype.join.call(arguments,", ");r.console[e](t)}:void 0}"undefined"==typeof Ember&&(Ember={});var r=Ember.imports=Ember.imports||this,t=Ember.exports=Ember.exports||this;Ember.lookup=Ember.lookup||this,t.Em=t.Ember=Em=Ember,Ember.isNamespace=!0,Ember.toString=function(){return"Ember"},Ember.VERSION="1.0.0-rc.3",Ember.ENV=Ember.ENV||("undefined"==typeof ENV?{}:ENV),Ember.config=Ember.config||{},Ember.EXTEND_PROTOTYPES=Ember.ENV.EXTEND_PROTOTYPES,typeof Ember.EXTEND_PROTOTYPES=="undefined"&&(Ember.EXTEND_PROTOTYPES=!0),Ember.LOG_STACKTRACE_ON_DEPRECATION=Ember.ENV.LOG_STACKTRACE_ON_DEPRECATION!==!1,Ember.SHIM_ES5=Ember.ENV.SHIM_ES5===!1?!1:Ember.EXTEND_PROTOTYPES,Ember.LOG_VERSION=Ember.ENV.LOG_VERSION===!1?!1:!0,Ember.K=function(){return this},"undefined"==typeof Ember.assert&&(Ember.assert=Ember.K),"undefined"==typeof Ember.warn&&(Ember.warn=Ember.K),"undefined"==typeof Ember.debug&&(Ember.debug=Ember.K),"undefined"==typeof Ember.deprecate&&(Ember.deprecate=Ember.K),"undefined"==typeof Ember.deprecateFunc&&(Ember.deprecateFunc=function(e,r){return r}),Ember.uuid=0,Ember.Logger={log:e("log")||Ember.K,warn:e("warn")||Ember.K,error:e("error")||Ember.K,info:e("info")||Ember.K,debug:e("debug")||e("info")||Ember.K},Ember.onerror=null,Ember.handleErrors=function(e,r){if("function"!=typeof Ember.onerror)return e.call(r||this);try{return e.call(r||this)}catch(t){Ember.onerror(t)}},Ember.merge=function(e,r){for(var t in r)r.hasOwnProperty(t)&&(e[t]=r[t]);return e},Ember.isNone=function(e){return null===e||void 0===e},Ember.none=Ember.deprecateFunc("Ember.none is deprecated. Please use Ember.isNone instead.",Ember.isNone),Ember.isEmpty=function(e){return Ember.isNone(e)||e.length===0&&"function"!=typeof e||"object"==typeof e&&Ember.get(e,"length")===0},Ember.empty=Ember.deprecateFunc("Ember.empty is deprecated. Please use Ember.isEmpty instead.",Ember.isEmpty)}(),function(){var e=Ember.platform={};if(Ember.create=Object.create,Ember.create&&Ember.create({a:1},{a:{value:2}}).a!==2&&(Ember.create=null),!Ember.create||Ember.ENV.STUB_OBJECT_CREATE){var r=function(){};Ember.create=function(e,t){if(r.prototype=e,e=new r,t){r.prototype=e;for(var n in t)r.prototype[n]=t[n].value;e=new r}return r.prototype=null,e},Ember.create.isSimulated=!0}var t,n,i=Object.defineProperty;if(i)try{i({},"a",{get:function(){}})}catch(o){i=null}i&&(t=function(){var e={};return i(e,"a",{configurable:!0,enumerable:!0,get:function(){},set:function(){}}),i(e,"a",{configurable:!0,enumerable:!0,writable:!0,value:!0}),e.a===!0}(),n=function(){try{return i(document.createElement("div"),"definePropertyOnDOM",{}),!0}catch(e){}return!1}(),t?n||(i=function(e,r,t){var n;return n="object"==typeof Node?e instanceof Node:"object"==typeof e&&typeof e.nodeType=="number"&&typeof e.nodeName=="string",n?e[r]=t.value:Object.defineProperty(e,r,t)}):i=null),e.defineProperty=i,e.hasPropertyAccessors=!0,e.defineProperty||(e.hasPropertyAccessors=!1,e.defineProperty=function(e,r,t){t.get||(e[r]=t.value)},e.defineProperty.isSimulated=!0),Ember.ENV.MANDATORY_SETTER&&!e.hasPropertyAccessors&&(Ember.ENV.MANDATORY_SETTER=!1)}(),function(){var e=function(e){return e&&Function.prototype.toString.call(e).indexOf("[native code]")>-1},r=e(Array.prototype.map)?Array.prototype.map:function(e){if(void 0===this||null===this)throw new TypeError;var r=Object(this),t=r.length>>>0;if("function"!=typeof e)throw new TypeError;for(var n=new Array(t),i=arguments[1],o=0;t>o;o++)o in r&&(n[o]=e.call(i,r[o],o,r));return n},t=e(Array.prototype.forEach)?Array.prototype.forEach:function(e){if(void 0===this||null===this)throw new TypeError;var r=Object(this),t=r.length>>>0;if("function"!=typeof e)throw new TypeError;for(var n=arguments[1],i=0;t>i;i++)i in r&&e.call(n,r[i],i,r)},n=e(Array.prototype.indexOf)?Array.prototype.indexOf:function(e,r){null===r||void 0===r?r=0:0>r&&(r=Math.max(0,this.length+r));for(var t=r,n=this.length;n>t;t++)if(this[t]===e)return t;return-1};Ember.ArrayPolyfills={map:r,forEach:t,indexOf:n},Ember.SHIM_ES5&&(Array.prototype.map||(Array.prototype.map=r),Array.prototype.forEach||(Array.prototype.forEach=t),Array.prototype.indexOf||(Array.prototype.indexOf=n))}(),function(){function e(e){this.descs={},this.watching={},this.cache={},this.source=e}function r(e,r){return!(!e||typeof e[r]!="function")}var t=Ember.platform.defineProperty,n=Ember.create,i="__ember"+ +new Date,o=0,s=[],a={},u=Ember.ENV.MANDATORY_SETTER;Ember.GUID_KEY=i;var c={writable:!1,configurable:!1,enumerable:!1,value:null};Ember.generateGuid=function(e,r){r||(r="ember");var n=r+o++;return e&&(c.value=n,t(e,i,c)),n},Ember.guidFor=function(e){if(void 0===e)return"(undefined)";if(null===e)return"(null)";var r,n=typeof e;switch(n){case"number":return r=s[e],r||(r=s[e]="nu"+e),r;case"string":return r=a[e],r||(r=a[e]="st"+o++),r;case"boolean":return e?"(true)":"(false)";default:return e[i]?e[i]:e===Object?"(Object)":e===Array?"(Array)":(r="ember"+o++,c.value=r,t(e,i,c),r)}};var h={writable:!0,configurable:!1,enumerable:!1,value:null},l=Ember.GUID_KEY+"_meta";Ember.META_KEY=l;var f={descs:{},watching:{}};u&&(f.values={}),Ember.EMPTY_META=f,Object.freeze&&Object.freeze(f);var m=Ember.platform.defineProperty.isSimulated;m&&(e.prototype.__preventPlainObject__=!0,e.prototype.toJSON=function(){}),Ember.meta=function(r,i){var o=r[l];return i===!1?o||f:(o?o.source!==r&&(m||t(r,l,h),o=n(o),o.descs=n(o.descs),o.watching=n(o.watching),o.cache={},o.source=r,u&&(o.values=n(o.values)),r[l]=o):(m||t(r,l,h),o=new e(r),u&&(o.values={}),r[l]=o,o.descs.constructor=null),o)},Ember.getMeta=function(e,r){var t=Ember.meta(e,!1);return t[r]},Ember.setMeta=function(e,r,t){var n=Ember.meta(e,!0);return n[r]=t,t},Ember.metaPath=function(e,r,t){for(var i,o,s=Ember.meta(e,t),a=0,u=r.length;u>a;a++){if(i=r[a],o=s[i]){if(o.__ember_source__!==e){if(!t)return void 0;o=s[i]=n(o),o.__ember_source__=e}}else{if(!t)return void 0;o=s[i]={__ember_source__:e}}s=o}return o},Ember.wrap=function(e,r){function t(){}function n(){var n,i=this._super;return this._super=r||t,n=e.apply(this,arguments),this._super=i,n}return n.wrappedFunction=e,n.__ember_observes__=e.__ember_observes__,n.__ember_observesBefore__=e.__ember_observesBefore__,n},Ember.isArray=function(e){return!e||e.setInterval?!1:Array.isArray&&Array.isArray(e)?!0:Ember.Array&&Ember.Array.detect(e)?!0:e.length!==void 0&&"object"==typeof e?!0:!1},Ember.makeArray=function(e){return null===e||void 0===e?[]:Ember.isArray(e)?e:[e]},Ember.canInvoke=r,Ember.tryInvoke=function(e,t,n){return r(e,t)?e[t].apply(e,n||[]):void 0};var b=function(){var e=0;try{try{}finally{throw e++,new Error("needsFinallyFixTest")}}catch(r){}return 1!==e}();Ember.tryFinally=b?function(e,r,t){var n,i,o;t=t||this;try{n=e.call(t)}finally{try{i=r.call(t)}catch(s){o=s}}if(o)throw o;return void 0===i?n:i}:function(e,r,t){var n,i;t=t||this;try{n=e.call(t)}finally{i=r.call(t)}return void 0===i?n:i},Ember.tryCatchFinally=b?function(e,r,t,n){var i,o,s;n=n||this;try{i=e.call(n)}catch(a){i=r.call(n,a)}finally{try{o=t.call(n)}catch(u){s=u}}if(s)throw s;return void 0===o?i:o}:function(e,r,t,n){var i,o;n=n||this;try{i=e.call(n)}catch(s){i=r.call(n,s)}finally{o=t.call(n)}return void 0===o?i:o};var p={},E="Boolean Number String Function Array Date RegExp Object".split(" ");Ember.ArrayPolyfills.forEach.call(E,function(e){p["[object "+e+"]"]=e.toLowerCase()});var d=Object.prototype.toString;Ember.typeOf=function(e){var r;return r=null===e||void 0===e?String(e):p[d.call(e)]||"object","function"===r?Ember.Object&&Ember.Object.detect(e)&&(r="class"):"object"===r&&(r=e instanceof Error?"error":Ember.Object&&e instanceof Ember.Object?"instance":"object"),r}}(),function(){Ember.Instrumentation={};var e=[],r={},t=function(t){for(var n,i=[],o=0,s=e.length;s>o;o++)n=e[o],n.regex.test(t)&&i.push(n.object);return r[t]=i,i},n=function(){var e="undefined"!=typeof window?window.performance||{}:{},r=e.now||e.mozNow||e.webkitNow||e.msNow||e.oNow;return r?r.bind(e):function(){return+new Date}}();Ember.Instrumentation.instrument=function(e,i,o,s){function a(){for(b=0,p=f.length;p>b;b++)m=f[b],E[b]=m.before(e,n(),i);return o.call(s)}function u(e){i=i||{},i.exception=e}function c(){for(b=0,p=f.length;p>b;b++)m=f[b],m.after(e,n(),i,E[b]);Ember.STRUCTURED_PROFILE&&console.timeEnd(h)}var h,l,f=r[e];if(Ember.STRUCTURED_PROFILE&&(h=e+": "+i.object,console.time(h)),f||(f=t(e)),f.length===0)return l=o.call(s),Ember.STRUCTURED_PROFILE&&console.timeEnd(h),l;var m,b,p,E=[];return Ember.tryCatchFinally(a,u,c)},Ember.Instrumentation.subscribe=function(t,n){for(var i,o=t.split("."),s=[],a=0,u=o.length;u>a;a++)i=o[a],"*"===i?s.push("[^\\.]*"):s.push(i);s=s.join("\\."),s+="(\\..*)?";var c={pattern:t,regex:new RegExp("^"+s+"$"),object:n};return e.push(c),r={},c},Ember.Instrumentation.unsubscribe=function(t){for(var n,i=0,o=e.length;o>i;i++)e[i]===t&&(n=i);e.splice(n,1),r={}},Ember.Instrumentation.reset=function(){e=[],r={}},Ember.instrument=Ember.Instrumentation.instrument,Ember.subscribe=Ember.Instrumentation.subscribe}(),function(){var e,r,t,n;n=Array.prototype.concat,e=Array.prototype.map||Ember.ArrayPolyfills.map,r=Array.prototype.forEach||Ember.ArrayPolyfills.forEach,t=Array.prototype.indexOf||Ember.ArrayPolyfills.indexOf;var i=Ember.EnumerableUtils={map:function(r,t,n){return r.map?r.map.call(r,t,n):e.call(r,t,n)},forEach:function(e,t,n){return e.forEach?e.forEach.call(e,t,n):r.call(e,t,n)},indexOf:function(e,r,n){return e.indexOf?e.indexOf.call(e,r,n):t.call(e,r,n)},indexesOf:function(e,r){return void 0===r?[]:i.map(r,function(r){return i.indexOf(e,r)})},addObject:function(e,r){var t=i.indexOf(e,r);-1===t&&e.push(r)},removeObject:function(e,r){var t=i.indexOf(e,r);-1!==t&&e.splice(t,1)},replace:function(e,r,t,i){if(e.replace)return e.replace(r,t,i);var o=n.apply([r,t],i);return e.splice.apply(e,o)},intersection:function(e,r){var t=[];return i.forEach(e,function(e){i.indexOf(r,e)>=0&&t.push(e)}),t}}}(),function(){var e=Ember.guidFor,r=Ember.ArrayPolyfills.indexOf,t=function(e){var r={};for(var t in e)e.hasOwnProperty(t)&&(r[t]=e[t]);return r},n=function(e,r){var n=e.keys.copy(),i=t(e.values);return r.keys=n,r.values=i,r},i=Ember.OrderedSet=function(){this.clear()};i.create=function(){return new i},i.prototype={clear:function(){this.presenceSet={},this.list=[]},add:function(r){var t=e(r),n=this.presenceSet,i=this.list;t in n||(n[t]=!0,i.push(r))},remove:function(t){var n=e(t),i=this.presenceSet,o=this.list;delete i[n];var s=r.call(o,t);s>-1&&o.splice(s,1)},isEmpty:function(){return this.list.length===0},has:function(r){var t=e(r),n=this.presenceSet;return t in n},forEach:function(e,r){for(var t=this.toArray(),n=0,i=t.length;i>n;n++)e.call(r,t[n])},toArray:function(){return this.list.slice()},copy:function(){var e=new i;return e.presenceSet=t(this.presenceSet),e.list=this.toArray(),e}};var o=Ember.Map=function(){this.keys=Ember.OrderedSet.create(),this.values={}};o.create=function(){return new o},o.prototype={get:function(r){var t=this.values,n=e(r);return t[n]},set:function(r,t){var n=this.keys,i=this.values,o=e(r);n.add(r),i[o]=t},remove:function(r){var t=this.keys,n=this.values,i=e(r);return n.hasOwnProperty(i)?(t.remove(r),delete n[i],!0):!1},has:function(r){var t=this.values,n=e(r);return t.hasOwnProperty(n)},forEach:function(r,t){var n=this.keys,i=this.values;n.forEach(function(n){var o=e(n);r.call(t,n,i[o])})},copy:function(){return n(this,new o)}};var s=Ember.MapWithDefault=function(e){o.call(this),this.defaultValue=e.defaultValue};s.create=function(e){return e?new s(e):new o},s.prototype=Ember.create(o.prototype),s.prototype.get=function(e){var r=this.has(e);if(r)return o.prototype.get.call(this,e);var t=this.defaultValue(e);return this.set(e,t),t},s.prototype.copy=function(){return n(this,new s({defaultValue:this.defaultValue}))}}(),function(){function e(e){return e.match(a)[0]}function r(r,n){var i,a=s.test(n),u=!a&&o.test(n);if((!r||u)&&(r=Ember.lookup),a&&(n=n.slice(5)),r===Ember.lookup&&(i=e(n),r=t(r,i),n=n.slice(i.length+1)),!n||n.length===0)throw new Error("Invalid Path");return[r,n]}var t,n=Ember.META_KEY,i=Ember.ENV.MANDATORY_SETTER,o=/^([A-Z$]|([0-9][A-Z$])).*[\.\*]/,s=/^this[\.\*]/,a=/^([^\.\*]+)/;t=function(e,r){if(""===r)return e;if(r||"string"!=typeof e||(r=e,e=null),null===e||r.indexOf(".")!==-1)return u(e,r);var t,o=e[n],s=o&&o.descs[r];return s?s.get(e,r):(t=i&&o&&o.watching[r]>0?o.values[r]:e[r],void 0!==t||"object"!=typeof e||r in e||"function"!=typeof e.unknownProperty?t:e.unknownProperty(r))},Ember.config.overrideAccessors&&(Ember.get=t,Ember.config.overrideAccessors(),t=Ember.get);var u=Ember._getPath=function(e,n){var i,o,a,u,c;if(null===e&&n.indexOf(".")===-1)return t(Ember.lookup,n);for(i=s.test(n),(!e||i)&&(a=r(e,n),e=a[0],n=a[1],a.length=0),o=n.split("."),c=o.length,u=0;void 0!==e&&null!==e&&c>u;u++)if(e=t(e,o[u],!0),e&&e.isDestroyed)return void 0;return e};Ember.normalizeTuple=function(e,t){return r(e,t)},Ember.getWithDefault=function(e,r,n){var i=t(e,r);return void 0===i?n:i},Ember.get=t,Ember.getPath=Ember.deprecateFunc("getPath is deprecated since get now supports paths",Ember.get)}(),function(){function e(e,r,t){for(var n=-1,i=0,o=e.length;o>i;i++)if(r===e[i][0]&&t===e[i][1]){n=i;break}return n}function r(e,r){var t,n=m(e,!0);return n.listeners||(n.listeners={}),n.hasOwnProperty("listeners")||(n.listeners=f(n.listeners)),t=n.listeners[r],t&&!n.listeners.hasOwnProperty(r)?t=n.listeners[r]=n.listeners[r].slice():t||(t=n.listeners[r]=[]),t}function t(r,t,n){var i=r[b],o=i&&i.listeners&&i.listeners[t];if(o)for(var s=o.length-1;s>=0;s--){var a=o[s][0],u=o[s][1],c=o[s][2],h=e(n,a,u);-1===h&&n.push([a,u,c])}}function n(r,t,n){var i=r[b],o=i&&i.listeners&&i.listeners[t],s=[];if(o){for(var a=o.length-1;a>=0;a--){var u=o[a][0],c=o[a][1],h=o[a][2],l=e(n,u,c);-1===l&&(n.push([u,c,h]),s.push([u,c,h]))}return s}}function i(t,n,i,o,s){o||"function"!=typeof i||(o=i,i=null);var a=r(t,n),u=e(a,i,o),c=0;s&&(c|=p),-1===u&&(a.push([i,o,c]),"function"==typeof t.didAddListener&&t.didAddListener(n,i,o))}function o(t,n,i,o){function s(i,o){var s=r(t,n),a=e(s,i,o);-1!==a&&(s.splice(a,1),"function"==typeof t.didRemoveListener&&t.didRemoveListener(n,i,o))}if(o||"function"!=typeof i||(o=i,i=null),o)s(i,o);else{var a=t[b],u=a&&a.listeners&&a.listeners[n];if(!u)return;for(var c=u.length-1;c>=0;c--)s(u[c][0],u[c][1])}}function s(t,n,i,o,s){function a(){return s.call(i)}function u(){c&&(c[2]&=~E)}o||"function"!=typeof i||(o=i,i=null);var c,h=r(t,n),l=e(h,i,o);return-1!==l&&(c=h[l].slice(),c[2]|=E,h[l]=c),Ember.tryFinally(a,u)}function a(t,n,i,o,s){function a(){return s.call(i)}function u(){for(f=0,m=b.length;m>f;f++)b[f][2]&=~E}o||"function"!=typeof i||(o=i,i=null);var c,h,l,f,m,b=[];for(f=0,m=n.length;m>f;f++){c=n[f],h=r(t,c);var p=e(h,i,o);-1!==p&&(l=h[p].slice(),l[2]|=E,h[p]=l,b.push(l))}return Ember.tryFinally(a,u)}function u(e){var r=e[b].listeners,t=[];if(r)for(var n in r)r[n]&&t.push(n);return t}function c(e,r,t,n){if(e!==Ember&&"function"==typeof e.sendEvent&&e.sendEvent(r,t),!n){var i=e[b];n=i&&i.listeners&&i.listeners[r]}if(n){for(var s=n.length-1;s>=0;s--){var a=n[s];if(a){var u=a[0],c=a[1],h=a[2];h&E||(h&p&&o(e,r,u,c),u||(u=e),"string"==typeof c&&(c=u[c]),t?c.apply(u,t):c.call(u))}}return!0}}function h(e,r){var t=e[b],n=t&&t.listeners&&t.listeners[r];return!(!n||!n.length)}function l(e,r){var t=[],n=e[b],i=n&&n.listeners&&n.listeners[r];if(!i)return t;for(var o=0,s=i.length;s>o;o++){var a=i[o][0],u=i[o][1];t.push([a,u])}return t}var f=Ember.create,m=Ember.meta,b=Ember.META_KEY,p=1,E=2;Ember.addListener=i,Ember.removeListener=o,Ember._suspendListener=s,Ember._suspendListeners=a,Ember.sendEvent=c,Ember.hasListeners=h,Ember.watchedEvents=u,Ember.listenersFor=l,Ember.listenersDiff=n,Ember.listenersUnion=t}(),function(){var e=Ember.guidFor,r=Ember.sendEvent,t=Ember._ObserverSet=function(){this.clear()};t.prototype.add=function(r,t,n){var i,o=this.observerSet,s=this.observers,a=e(r),u=o[a];return u||(o[a]=u={}),i=u[t],void 0===i&&(i=s.push({sender:r,keyName:t,eventName:n,listeners:[]})-1,u[t]=i),s[i].listeners},t.prototype.flush=function(){var e,t,n,i,o=this.observers;for(this.clear(),e=0,t=o.length;t>e;++e)n=o[e],i=n.sender,i.isDestroying||i.isDestroyed||r(i,n.eventName,[i,n.keyName],n.listeners)},t.prototype.clear=function(){this.observerSet={},this.observers=[]}}(),function(){function e(e,r,i){if(!e.isDestroying){var o=n,s=!o;s&&(o=n={}),t(p,e,r,o,i),s&&(n=null)}}function r(e,r,n){if(!e.isDestroying){var o=i,s=!o;s&&(o=i={}),t(E,e,r,o,n),s&&(i=null)}}function t(e,r,t,n,i){var o=s(r);if(n[o]||(n[o]={}),!n[o][t]){n[o][t]=!0;var a=i.deps;if(a=a&&a[t])for(var u in a){var c=i.descs[u];c&&c._suspended===r||e(r,u)}}}var n,i,o=Ember.meta,s=Ember.guidFor,a=Ember.tryFinally,u=Ember.sendEvent,c=Ember.listenersUnion,h=Ember.listenersDiff,l=Ember._ObserverSet,f=new l,m=new l,b=0,p=Ember.propertyWillChange=function(r,t){var n=o(r,!1),i=n.watching[t]>0||"length"===t,s=n.proto,a=n.descs[t];i&&s!==r&&(a&&a.willChange&&a.willChange(r,t),e(r,t,n),d(r,t,n),_(r,t))},E=Ember.propertyDidChange=function(e,t){var n=o(e,!1),i=n.watching[t]>0||"length"===t,s=n.proto,a=n.descs[t];s!==e&&(a&&a.didChange&&a.didChange(e,t),(i||"length"===t)&&(r(e,t,n),v(e,t,n),O(e,t)))},d=function(e,r,t,n){if(t.hasOwnProperty("chainWatchers")){var i=t.chainWatchers;if(i=i[r])for(var o=0,s=i.length;s>o;o++)i[o].willChange(n)}},v=function(e,r,t,n){if(t.hasOwnProperty("chainWatchers")){var i=t.chainWatchers;if(i=i[r])for(var o=i.length-1;o>=0;o--)i[o].didChange(n)}};Ember.overrideChains=function(e,r,t){v(e,r,t,!0)};var g=Ember.beginPropertyChanges=function(){b++},y=Ember.endPropertyChanges=function(){b--,0>=b&&(f.clear(),m.flush())};Ember.changeProperties=function(e,r){g(),a(e,y,r)};var _=function(e,r){if(!e.isDestroying){var t,n,i=r+":before";b?(t=f.add(e,r,i),n=h(e,i,t),u(e,i,[e,r],n)):u(e,i,[e,r])}},O=function(e,r){if(!e.isDestroying){var t,n=r+":change";b?(t=m.add(e,r,n),c(e,n,t)):u(e,n,[e,r])}}}(),function(){function e(e,r,t,o){var s;if(s=r.slice(r.lastIndexOf(".")+1),r=r.slice(0,r.length-(s.length+1)),"this"!==r&&(e=n(e,r)),!s||s.length===0)throw new Error("You passed an empty path");if(!e){if(o)return;throw new Error("Object in path "+r+" could not be found or was destroyed.")}return i(e,s,t)}var r=Ember.META_KEY,t=Ember.ENV.MANDATORY_SETTER,n=Ember._getPath,i=function(n,i,o,s){if("string"==typeof n&&(o=i,i=n,n=null),!n||i.indexOf(".")!==-1)return e(n,i,o,s);var a,u,c=n[r],h=c&&c.descs[i];return h?h.set(n,i,o):(a="object"==typeof n&&!(i in n),a&&"function"==typeof n.setUnknownProperty?n.setUnknownProperty(i,o):c&&c.watching[i]>0?(u=t?c.values[i]:n[i],o!==u&&(Ember.propertyWillChange(n,i),t?void 0!==u||i in n?c.values[i]=o:Ember.defineProperty(n,i,null,o):n[i]=o,Ember.propertyDidChange(n,i))):n[i]=o),o};Ember.config.overrideAccessors&&(Ember.set=i,Ember.config.overrideAccessors(),i=Ember.set),Ember.set=i,Ember.setPath=Ember.deprecateFunc("setPath is deprecated since set now supports paths",Ember.set),Ember.trySet=function(e,r,t){return i(e,r,t,!0)},Ember.trySetPath=Ember.deprecateFunc("trySetPath has been renamed to trySet",Ember.trySet)}(),function(){var e=Ember.META_KEY,r=Ember.meta,t=Ember.platform.defineProperty,n=Ember.ENV.MANDATORY_SETTER;Ember.Descriptor=function(){};var i=Ember.MANDATORY_SETTER_FUNCTION=function(){},o=Ember.DEFAULT_GETTER_FUNCTION=function(r){return function(){var t=this[e];return t&&t.values[r]}};Ember.defineProperty=function(e,s,a,u,c){var h,l,f,m;return c||(c=r(e)),h=c.descs,l=c.descs[s],f=c.watching[s]>0,l instanceof Ember.Descriptor&&l.teardown(e,s),a instanceof Ember.Descriptor?(m=a,h[s]=a,n&&f?t(e,s,{configurable:!0,enumerable:!0,writable:!0,value:void 0}):e[s]=void 0,a.setup(e,s)):(h[s]=void 0,null==a?(m=u,n&&f?(c.values[s]=u,t(e,s,{configurable:!0,enumerable:!0,set:i,get:o(s)})):e[s]=u):(m=a,t(e,s,a))),f&&Ember.overrideChains(e,s,c),e.didDefineProperty&&e.didDefineProperty(e,s,m),this}}(),function(){var e=Ember.changeProperties,r=Ember.set;Ember.setProperties=function(t,n){return e(function(){for(var e in n)n.hasOwnProperty(e)&&r(t,e,n[e])}),t}}(),function(){var e=Ember.meta,r=Ember.typeOf,t=Ember.ENV.MANDATORY_SETTER,n=Ember.platform.defineProperty;Ember.watchKey=function(i,o){if("length"!==o||r(i)!=="array"){var s,a=e(i),u=a.watching;u[o]?u[o]=(u[o]||0)+1:(u[o]=1,s=a.descs[o],s&&s.willWatch&&s.willWatch(i,o),"function"==typeof i.willWatchProperty&&i.willWatchProperty(o),t&&o in i&&(a.values[o]=i[o],n(i,o,{configurable:!0,enumerable:!0,set:Ember.MANDATORY_SETTER_FUNCTION,get:Ember.DEFAULT_GETTER_FUNCTION(o)})))}},Ember.unwatchKey=function(r,i){var o,s=e(r),a=s.watching;a[i]===1?(a[i]=0,o=s.descs[i],o&&o.didUnwatch&&o.didUnwatch(r,i),"function"==typeof r.didUnwatchProperty&&r.didUnwatchProperty(i),t&&i in r&&(n(r,i,{configurable:!0,enumerable:!0,writable:!0,value:s.values[i]}),delete s.values[i])):a[i]>1&&a[i]--}}(),function(){function e(e){return e.match(f)[0]}function r(e,r,t){if(e&&"object"==typeof e){var i=n(e),o=i.chainWatchers;i.hasOwnProperty("chainWatchers")||(o=i.chainWatchers={}),o[r]||(o[r]=[]),o[r].push(t),u(e,r)}}function t(e){return n(e,!1).proto===e}var n=Ember.meta,i=Ember.get,o=Ember.normalizeTuple,s=Ember.ArrayPolyfills.forEach,a=Ember.warn,u=Ember.watchKey,c=Ember.unwatchKey,h=Ember.propertyWillChange,l=Ember.propertyDidChange,f=/^([^\.\*]+)/,m=[];Ember.flushPendingChains=function(){if(m.length!==0){var e=m;m=[],s.call(e,function(e){e[0].add(e[1])}),a("Watching an undefined global, Ember expects watched globals to be setup by the time the run loop is flushed, check for typos",m.length===0)}};var b=Ember.removeChainWatcher=function(e,r,t){if(e&&"object"==typeof e){var i=n(e,!1);if(i.hasOwnProperty("chainWatchers")){var o=i.chainWatchers;if(o[r]){o=o[r];for(var s=0,a=o.length;a>s;s++)o[s]===t&&o.splice(s,1)}c(e,r)}}},p=Ember._ChainNode=function(e,t,n){this._parent=e,this._key=t,this._watching=void 0===n,this._value=n,this._paths={},this._watching&&(this._object=e.value(),this._object&&r(this._object,this._key,this)),this._parent&&this._parent._key==="@each"&&this.value()},E=p.prototype;E.value=function(){if(this._value===void 0&&this._watching){var e=this._parent.value();this._value=e&&!t(e)?i(e,this._key):void 0}return this._value},E.destroy=function(){if(this._watching){var e=this._object;e&&b(e,this._key,this),this._watching=!1}},E.copy=function(e){var r,t=new p(null,null,e),n=this._paths;for(r in n)n[r]<=0||t.add(r);return t},E.add=function(r){var t,n,i,s,a;if(a=this._paths,a[r]=(a[r]||0)+1,t=this.value(),n=o(t,r),n[0]&&n[0]===t)r=n[1],i=e(r),r=r.slice(i.length+1);else{if(!n[0])return m.push([this,r]),n.length=0,void 0;s=n[0],i=r.slice(0,0-(n[1].length+1)),r=n[1]}n.length=0,this.chain(i,r,s)},E.remove=function(r){var t,n,i,s,a;a=this._paths,a[r]>0&&a[r]--,t=this.value(),n=o(t,r),n[0]===t?(r=n[1],i=e(r),r=r.slice(i.length+1)):(s=n[0],i=r.slice(0,0-(n[1].length+1)),r=n[1]),n.length=0,this.unchain(i,r)},E.count=0,E.chain=function(r,t,n){var i,o=this._chains;o||(o=this._chains={}),i=o[r],i||(i=o[r]=new p(this,r,n)),i.count++,t&&t.length>0&&(r=e(t),t=t.slice(r.length+1),i.chain(r,t))},E.unchain=function(r,t){var n=this._chains,i=n[r];t&&t.length>1&&(r=e(t),t=t.slice(r.length+1),i.unchain(r,t)),i.count--,i.count<=0&&(delete n[i._key],i.destroy())},E.willChange=function(){var e=this._chains;if(e)for(var r in e)e.hasOwnProperty(r)&&e[r].willChange();this._parent&&this._parent.chainWillChange(this,this._key,1)},E.chainWillChange=function(e,r,t){this._key&&(r=this._key+"."+r),this._parent?this._parent.chainWillChange(this,r,t+1):(t>1&&h(this.value(),r),r="this."+r,this._paths[r]>0&&h(this.value(),r))},E.chainDidChange=function(e,r,t){this._key&&(r=this._key+"."+r),this._parent?this._parent.chainDidChange(this,r,t+1):(t>1&&l(this.value(),r),r="this."+r,this._paths[r]>0&&l(this.value(),r))},E.didChange=function(e){if(this._watching){var t=this._parent.value();t!==this._object&&(b(this._object,this._key,this),this._object=t,r(t,this._key,this)),this._value=void 0,this._parent&&this._parent._key==="@each"&&this.value()}var n=this._chains;if(n)for(var i in n)n.hasOwnProperty(i)&&n[i].didChange(e);e||this._parent&&this._parent.chainDidChange(this,this._key,1)},Ember.finishChains=function(e){var r=n(e,!1),t=r.chains;t&&(t.value()!==e&&(r.chains=t=t.copy(e)),t.didChange(!0))}}(),function(){function e(e){var t=r(e),i=t.chains;return i?i.value()!==e&&(i=t.chains=i.copy(e)):i=t.chains=new n(null,null,e),i}var r=Ember.meta,t=Ember.typeOf,n=Ember._ChainNode;Ember.watchPath=function(n,i){if("length"!==i||t(n)!=="array"){var o=r(n),s=o.watching;s[i]?s[i]=(s[i]||0)+1:(s[i]=1,e(n).add(i))}},Ember.unwatchPath=function(t,n){var i=r(t),o=i.watching;o[n]===1?(o[n]=0,e(t).remove(n)):o[n]>1&&o[n]--}}(),function(){function e(e){return"*"===e||!l.test(e)}var r=Ember.meta,t=Ember.GUID_KEY,n=Ember.META_KEY,i=Ember.removeChainWatcher,o=Ember.watchKey,s=Ember.unwatchKey,a=Ember.watchPath,u=Ember.unwatchPath,c=Ember.typeOf,h=Ember.generateGuid,l=/[\.\*]/;Ember.watch=function(r,t){("length"!==t||c(r)!=="array")&&(e(t)?o(r,t):a(r,t))},Ember.isWatching=function(e,r){var t=e[n];return(t&&t.watching[r])>0},Ember.watch.flushPending=Ember.flushPendingChains,Ember.unwatch=function(r,t){("length"!==t||c(r)!=="array")&&(e(t)?s(r,t):u(r,t))},Ember.rewatch=function(e){var n=r(e,!1),i=n.chains;t in e&&!e.hasOwnProperty(t)&&h(e,"ember"),i&&i.value()!==e&&(n.chains=i.copy(e))};var f=[];Ember.destroy=function(e){var r,t,o,s,a=e[n];if(a&&(e[n]=null,r=a.chains))for(f.push(r);f.length>0;){if(r=f.pop(),t=r._chains)for(o in t)t.hasOwnProperty(o)&&f.push(t[o]);r._watching&&(s=r._object,s&&i(s,r._key,r))}}}(),function(){function e(e,r){var t=e[r];return t?e.hasOwnProperty(r)||(t=e[r]=f(t)):t=e[r]={},t}function r(r){return e(r,"deps")}function t(t,n,i,o){var s,a,u,c,h,l=t._dependentKeys;if(l)for(s=r(o),a=0,u=l.length;u>a;a++)c=l[a],h=e(s,c),h[i]=(h[i]||0)+1,b(n,c)}function n(t,n,i,o){var s,a,u,c,h,l=t._dependentKeys;if(l)for(s=r(o),a=0,u=l.length;u>a;a++)c=l[a],h=e(s,c),h[i]=(h[i]||0)-1,p(n,c)}function i(e,r){this.func=e,this._cacheable=r&&r.cacheable!==void 0?r.cacheable:!0,this._dependentKeys=r&&r.dependentKeys,this._readOnly=r&&(r.readOnly!==void 0||!!r.readOnly)}function o(e,r){for(var t={},n=0;n<r.length;n++)t[r[n]]=u(e,r[n]);return t}function s(e,r){Ember.computed[e]=function(e){var t=l.call(arguments);return Ember.computed(e,function(){return r.apply(this,t)})}}function a(e,r){Ember.computed[e]=function(){var e=l.call(arguments),t=Ember.computed(function(){return r.apply(this,[o(this,e)])});return t.property.apply(t,e)}}var u=Ember.get,c=Ember.set,h=Ember.meta,l=[].slice,f=Ember.create,m=Ember.META_KEY,b=Ember.watch,p=Ember.unwatch;Ember.ComputedProperty=i,i.prototype=new Ember.Descriptor;var E=i.prototype;E.cacheable=function(e){return this._cacheable=e!==!1,this},E.volatile=function(){return this.cacheable(!1)},E.readOnly=function(e){return this._readOnly=void 0===e||!!e,this},E.property=function(){for(var e=[],r=0,t=arguments.length;t>r;r++)e.push(arguments[r]);return this._dependentKeys=e,this},E.meta=function(e){return arguments.length===0?this._meta||{}:(this._meta=e,this)},E.willWatch=function(e,r){var n=e[m];r in n.cache||t(this,e,r,n)},E.didUnwatch=function(e,r){var t=e[m];r in t.cache||n(this,e,r,t)},E.didChange=function(e,r){if(this._cacheable&&this._suspended!==e){var t=h(e);r in t.cache&&(delete t.cache[r],t.watching[r]||n(this,e,r,t))}},E.get=function(e,r){var n,i,o;if(this._cacheable){if(o=h(e),i=o.cache,r in i)return i[r];n=i[r]=this.func.call(e,r),o.watching[r]||t(this,e,r,o)}else n=this.func.call(e,r);return n},E.set=function(e,r,n){var i,o,s=this._cacheable,a=this.func,u=h(e,s),c=u.watching[r],l=this._suspended,f=!1,m=u.cache;if(this._readOnly)throw new Error("Cannot Set: "+r+" on: "+e.toString());this._suspended=e;try{if(s&&m.hasOwnProperty(r)&&(i=m[r],f=!0),a.wrappedFunction&&(a=a.wrappedFunction),a.length===3)o=a.call(e,r,n,i);else{if(a.length!==2)return Ember.defineProperty(e,r,null,i),Ember.set(e,r,n),void 0;o=a.call(e,r,n)}if(f&&i===o)return;c&&Ember.propertyWillChange(e,r),f&&delete m[r],s&&(c||f||t(this,e,r,u),m[r]=o),c&&Ember.propertyDidChange(e,r)}finally{this._suspended=l}return o},E.setup=function(e,r){var n=e[m];n&&n.watching[r]&&t(this,e,r,h(e))},E.teardown=function(e,r){var t=h(e);return(t.watching[r]||r in t.cache)&&n(this,e,r,t),this._cacheable&&delete t.cache[r],null},Ember.computed=function(e){var r;if(arguments.length>1&&(r=l.call(arguments,0,-1),e=l.call(arguments,-1)[0]),"function"!=typeof e)throw new Error("Computed Property declared without a property function");var t=new i(e);return r&&t.property.apply(t,r),t},Ember.cacheFor=function(e,r){var t=h(e,!1).cache;return t&&r in t?t[r]:void 0},s("empty",function(e){return Ember.isEmpty(u(this,e))}),s("notEmpty",function(e){return!Ember.isEmpty(u(this,e))}),s("none",function(e){return Ember.isNone(u(this,e))}),s("not",function(e){return!u(this,e)}),s("bool",function(e){return!!u(this,e)}),s("match",function(e,r){var t=u(this,e);return"string"==typeof t?!!t.match(r):!1}),s("equal",function(e,r){return u(this,e)===r}),s("gt",function(e,r){return u(this,e)>r}),s("gte",function(e,r){return u(this,e)>=r}),s("lt",function(e,r){return u(this,e)<r}),s("lte",function(e,r){return u(this,e)<=r}),a("and",function(e){for(var r in e)if(e.hasOwnProperty(r)&&!e[r])return!1;return!0}),a("or",function(e){for(var r in e)if(e.hasOwnProperty(r)&&e[r])return!0;return!1}),a("any",function(e){for(var r in e)if(e.hasOwnProperty(r)&&e[r])return e[r];return null}),a("map",function(e){var r=[];for(var t in e)e.hasOwnProperty(t)&&(Ember.isNone(e[t])?r.push(null):r.push(e[t]));return r}),Ember.computed.alias=function(e){return Ember.computed(e,function(r,t){return arguments.length>1?(c(this,e,t),t):u(this,e)})},Ember.computed.oneWay=function(e){return Ember.computed(e,function(){return u(this,e)})},Ember.computed.defaultTo=function(e){return Ember.computed(function(r,t,n){return arguments.length===1?null!=n?n:u(this,e):null!=t?t:u(this,e)})}}(),function(){function e(e){return e+t}function r(e){return e+n}var t=":change",n=":before";Ember.addObserver=function(r,t,n,i){return Ember.addListener(r,e(t),n,i),Ember.watch(r,t),this},Ember.observersFor=function(r,t){return Ember.listenersFor(r,e(t))},Ember.removeObserver=function(r,t,n,i){return Ember.unwatch(r,t),Ember.removeListener(r,e(t),n,i),this},Ember.addBeforeObserver=function(e,t,n,i){return Ember.addListener(e,r(t),n,i),Ember.watch(e,t),this},Ember._suspendBeforeObserver=function(e,t,n,i,o){return Ember._suspendListener(e,r(t),n,i,o)},Ember._suspendObserver=function(r,t,n,i,o){return Ember._suspendListener(r,e(t),n,i,o)};var i=Ember.ArrayPolyfills.map;Ember._suspendBeforeObservers=function(e,t,n,o,s){var a=i.call(t,r);return Ember._suspendListeners(e,a,n,o,s)},Ember._suspendObservers=function(r,t,n,o,s){var a=i.call(t,e);return Ember._suspendListeners(r,a,n,o,s)},Ember.beforeObserversFor=function(e,t){return Ember.listenersFor(e,r(t))},Ember.removeBeforeObserver=function(e,t,n,i){return Ember.unwatch(e,t),Ember.removeListener(e,r(t),n,i),this}}(),function(){function e(e,r,t,n){return void 0===r&&(r=e,e=void 0),"string"==typeof r&&(r=e[r]),t&&n>0&&(t=t.length>n?s.call(t,n):null),Ember.handleErrors(function(){return r.apply(e||this,t||[])},this)}function r(){h=null,c.currentRunLoop&&c.end()}function t(e,r){var t=e.expires,n=r.expires;return t>n?1:n>t?-1:0}function n(){l=null,c(function(){var r=+new Date,i=-1,o=[];for(var s in m)if(m.hasOwnProperty(s)){var u=m[s];u&&u.expires&&(r>=u.expires?(delete m[s],o.push(u)):(0>i||u.expires<i)&&(i=u.expires))}a.call(o.sort(t),function(r){e(r.target,r.method,r.args,2)}),i>0&&(l=window.setTimeout(n,i-r),f=i)})}function i(r,t){t[this.tguid]&&delete t[this.tguid][this.mguid],m[r]&&e(this.target,this.method,this.args),delete m[r]}function o(e,r,t,n){var o,s=Ember.guidFor(r),a=Ember.guidFor(t),u=c.autorun().onceTimers,h=u[s]&&u[s][a];return h&&m[h]?m[h].args=n:(o={target:r,method:t,args:n,tguid:s,mguid:a},h=Ember.guidFor(o),m[h]=o,u[s]||(u[s]={}),u[s][a]=h,c.schedule(e,o,i,h,u)),h}var s=[].slice,a=Ember.ArrayPolyfills.forEach,u=function(e){this._prev=e||null,this.onceTimers={}};u.prototype={end:function(){this.flush()},prev:function(){return this._prev},schedule:function(e,r,t){var n,i=this._queues;i||(i=this._queues={}),n=i[e],n||(n=i[e]=[]);var o=arguments.length>3?s.call(arguments,3):null;
|
16
|
+
return n.push({target:r,method:t,args:o}),this},flush:function(r){function t(r){e(r.target,r.method,r.args)}function n(){a.call(u,t)}var i,o,s,u,c;if(!this._queues)return this;if(Ember.watch.flushPending(),r)for(;this._queues&&(u=this._queues[r]);)this._queues[r]=null,"sync"===r?(c=Ember.LOG_BINDINGS,c&&Ember.Logger.log("Begin: Flush Sync Queue"),Ember.beginPropertyChanges(),Ember.tryFinally(n,Ember.endPropertyChanges),c&&Ember.Logger.log("End: Flush Sync Queue")):a.call(u,t);else{i=Ember.run.queues,s=i.length,o=0;e:for(;s>o;){r=i[o],u=this._queues&&this._queues[r],delete this._queues[r],u&&("sync"===r?(c=Ember.LOG_BINDINGS,c&&Ember.Logger.log("Begin: Flush Sync Queue"),Ember.beginPropertyChanges(),Ember.tryFinally(n,Ember.endPropertyChanges),c&&Ember.Logger.log("End: Flush Sync Queue")):a.call(u,t));for(var h=0;o>=h;h++)if(this._queues&&this._queues[i[h]]){o=h;continue e}o++}}return this}},Ember.RunLoop=u,Ember.run=function(r,t){function n(){return r||t?e(r,t,i,2):void 0}var i=arguments;return c.begin(),Ember.tryFinally(n,c.end)};var c=Ember.run;Ember.run.begin=function(){c.currentRunLoop=new u(c.currentRunLoop)},Ember.run.end=function(){function e(){c.currentRunLoop.end()}function r(){c.currentRunLoop=c.currentRunLoop.prev()}Ember.tryFinally(e,r)},Ember.run.queues=["sync","actions","destroy"],Ember.run.schedule=function(){var e=c.autorun();e.schedule.apply(e,arguments)};var h;Ember.run.hasScheduledTimers=function(){return!(!h&&!l)},Ember.run.cancelTimers=function(){h&&(clearTimeout(h),h=null),l&&(clearTimeout(l),l=null),m={}},Ember.run.autorun=function(){return c.currentRunLoop||(c.begin(),h||(h=setTimeout(r,1))),c.currentRunLoop},Ember.run.sync=function(){c.autorun(),c.currentRunLoop.flush("sync")};var l,f,m={};Ember.run.later=function(e,r){var t,i,o,a,u;return arguments.length===2&&"function"==typeof e?(u=r,r=e,e=void 0,t=[e,r]):(t=s.call(arguments),u=t.pop()),i=+new Date+u,o={target:e,method:r,expires:i,args:t},a=Ember.guidFor(o),m[a]=o,l&&f>i&&(clearTimeout(l),l=null),l||(l=setTimeout(n,u),f=i),a},Ember.run.once=function(e,r){return o("actions",e,r,s.call(arguments,2))},Ember.run.scheduleOnce=function(e,r,t){return o(e,r,t,s.call(arguments,3))},Ember.run.next=function(){var e=s.call(arguments);return e.push(1),c.later.apply(this,e)},Ember.run.cancel=function(e){delete m[e]}}(),function(){function e(e,r){return t(o(r)?Ember.lookup:e,r)}function r(e,r){for(var t in r)r.hasOwnProperty(t)&&(e[t]=r[t])}Ember.LOG_BINDINGS=!1||!!Ember.ENV.LOG_BINDINGS;var t=Ember.get,n=(Ember.set,Ember.guidFor),i=/^([A-Z$]|([0-9][A-Z$]))/,o=Ember.isGlobalPath=function(e){return i.test(e)},s=function(e,r){this._direction="fwd",this._from=r,this._to=e,this._directionMap=Ember.Map.create()};s.prototype={copy:function(){var e=new s(this._to,this._from);return this._oneWay&&(e._oneWay=!0),e},from:function(e){return this._from=e,this},to:function(e){return this._to=e,this},oneWay:function(){return this._oneWay=!0,this},toString:function(){var e=this._oneWay?"[oneWay]":"";return"Ember.Binding<"+n(this)+">("+this._from+" -> "+this._to+")"+e},connect:function(r){var t=this._from,n=this._to;return Ember.trySet(r,n,e(r,t)),Ember.addObserver(r,t,this,this.fromDidChange),this._oneWay||Ember.addObserver(r,n,this,this.toDidChange),this._readyToSync=!0,this},disconnect:function(e){var r=!this._oneWay;return Ember.removeObserver(e,this._from,this,this.fromDidChange),r&&Ember.removeObserver(e,this._to,this,this.toDidChange),this._readyToSync=!1,this},fromDidChange:function(e){this._scheduleSync(e,"fwd")},toDidChange:function(e){this._scheduleSync(e,"back")},_scheduleSync:function(e,r){var t=this._directionMap,n=t.get(e);n||(Ember.run.schedule("sync",this,this._sync,e),t.set(e,r)),"back"===n&&"fwd"===r&&t.set(e,"fwd")},_sync:function(r){var n=Ember.LOG_BINDINGS;if(!r.isDestroyed&&this._readyToSync){var i=this._directionMap,o=i.get(r),s=this._from,a=this._to;if(i.remove(r),"fwd"===o){var u=e(r,this._from);n&&Ember.Logger.log(" ",this.toString(),"->",u,r),this._oneWay?Ember.trySet(r,a,u):Ember._suspendObserver(r,a,this,this.toDidChange,function(){Ember.trySet(r,a,u)})}else if("back"===o){var c=t(r,this._to);n&&Ember.Logger.log(" ",this.toString(),"<-",c,r),Ember._suspendObserver(r,s,this,this.fromDidChange,function(){Ember.trySet(Ember.isGlobalPath(s)?Ember.lookup:r,s,c)})}}}},r(s,{from:function(){var e=this,r=new e;return r.from.apply(r,arguments)},to:function(){var e=this,r=new e;return r.to.apply(r,arguments)},oneWay:function(e,r){var t=this,n=new t(null,e);return n.oneWay(r)}}),Ember.Binding=s,Ember.bind=function(e,r,t){return new Ember.Binding(r,t).connect(e)},Ember.oneWay=function(e,r,t){return new Ember.Binding(r,t).oneWay().connect(e)}}(),function(){function e(e){var r=Ember.meta(e,!0),t=r.mixins;return t?r.hasOwnProperty("mixins")||(t=r.mixins=A(t)):t=r.mixins={},t}function r(e,r){return r&&r.length>0&&(e.mixins=O.call(r,function(e){if(e instanceof g)return e;var r=new g;return r.properties=e,r})),e}function t(e){return"function"==typeof e&&e.isMethod!==!1&&e!==Boolean&&e!==Object&&e!==Number&&e!==Array&&e!==Date&&e!==String}function n(e,r){var t;return r instanceof g?(t=S(r),e[t]?D:(e[t]=r,r.properties)):r}function i(e,r,t){var n;return n=r.concatenatedProperties||t.concatenatedProperties,e.concatenatedProperties&&(n=n?n.concat(e.concatenatedProperties):e.concatenatedProperties),n}function o(e,r,t,n,i){var o;return n[r]===void 0&&(o=i[r]),o=o||e.descs[r],o&&o instanceof Ember.ComputedProperty?(t=A(t),t.func=Ember.wrap(t.func,o.func),t):t}function s(e,r,t,n,i){var o;return i[r]===void 0&&(o=n[r]),o=o||e[r],"function"!=typeof o?t:Ember.wrap(t,o)}function a(e,r,t,n){var i=n[r]||e[r];return i?"function"==typeof i.concat?i.concat(t):Ember.makeArray(i).concat(t):Ember.makeArray(t)}function u(e,r,n,i,u,c,h){if(n instanceof Ember.Descriptor){if(n===y&&u[r])return D;n.func&&(n=o(i,r,n,c,u)),u[r]=n,c[r]=void 0}else t(n)?n=s(e,r,n,c,u):(h&&C.call(h,r)>=0||"concatenatedProperties"===r)&&(n=a(e,r,n,c)),u[r]=void 0,c[r]=n}function c(e,r,t,o,s,a){function h(e){delete t[e],delete o[e]}for(var l,f,m,b,p,E=0,d=e.length;d>E;E++)if(l=e[E],f=n(r,l),f!==D)if(f){p=Ember.meta(s),b=i(f,o,s);for(m in f)f.hasOwnProperty(m)&&(a.push(m),u(s,m,f[m],p,t,o,b));f.hasOwnProperty("toString")&&(s.toString=f.toString)}else l.mixins&&(c(l.mixins,r,t,o,s,a),l._without&&w.call(l._without,h))}function h(e,r,t,n){if(x.test(r)){var i=n.bindings;i?n.hasOwnProperty("bindings")||(i=n.bindings=A(n.bindings)):i=n.bindings={},i[r]=t}}function l(e,r){var t,n,i,o=r.bindings;if(o){for(t in o)n=o[t],n&&(i=t.slice(0,-7),n instanceof Ember.Binding?(n=n.copy(),n.to(i)):n=new Ember.Binding(i,n),n.connect(e),e[t]=n);r.bindings={}}}function f(e,r){return l(e,r||Ember.meta(e)),e}function m(e,r,t,n,i){var o,s=r.methodName;return n[s]||i[s]?(o=i[s],r=n[s]):t.descs[s]?(r=t.descs[s],o=void 0):(r=void 0,o=e[s]),{desc:r,value:o}}function b(e,r,t,n,i){if("function"==typeof t){var o=t[n];if(o)for(var s=0,a=o.length;a>s;s++)Ember[i](e,o[s],null,r)}}function p(e,r,t){var n=e[r];b(e,r,n,"__ember_observesBefore__","removeBeforeObserver"),b(e,r,n,"__ember_observes__","removeObserver"),b(e,r,t,"__ember_observesBefore__","addBeforeObserver"),b(e,r,t,"__ember_observes__","addObserver")}function E(r,t,n){var i,o,s,a={},u={},l=Ember.meta(r),b=[];c(t,e(r),a,u,r,b);for(var E=0,d=b.length;d>E;E++)if(i=b[E],"constructor"!==i&&u.hasOwnProperty(i)&&(s=a[i],o=u[i],s!==y)){for(;s&&s instanceof _;){var v=m(r,s,l,a,u);s=v.desc,o=v.value}(void 0!==s||void 0!==o)&&(p(r,i,o),h(r,i,o,l),j(r,i,s,o,l))}return n||f(r,l),r}function d(e,r,t){var n=S(e);if(t[n])return!1;if(t[n]=!0,e===r)return!0;for(var i=e.mixins,o=i?i.length:0;--o>=0;)if(d(i[o],r,t))return!0;return!1}function v(e,r,t){if(!t[S(r)])if(t[S(r)]=!0,r.properties){var n=r.properties;for(var i in n)n.hasOwnProperty(i)&&(e[i]=!0)}else r.mixins&&w.call(r.mixins,function(r){v(e,r,t)})}var g,y,_,O=Ember.ArrayPolyfills.map,C=Ember.ArrayPolyfills.indexOf,w=Ember.ArrayPolyfills.forEach,P=[].slice,A=Ember.create,j=Ember.defineProperty,S=Ember.guidFor,D={},x=Ember.IS_BINDING=/^.+Binding$/;Ember.mixin=function(e){var r=P.call(arguments,1);return E(e,r,!1),e},Ember.Mixin=function(){return r(this,arguments)},g=Ember.Mixin,g.prototype={properties:null,mixins:null,ownerConstructor:null},g._apply=E,g.applyPartial=function(e){var r=P.call(arguments,1);return E(e,r,!0)},g.finishPartial=f,Ember.anyUnprocessedMixins=!1,g.create=function(){Ember.anyUnprocessedMixins=!0;var e=this;return r(new e,arguments)};var N=g.prototype;N.reopen=function(){var e,r;this.properties?(e=g.create(),e.properties=this.properties,delete this.properties,this.mixins=[e]):this.mixins||(this.mixins=[]);var t,n=arguments.length,i=this.mixins;for(t=0;n>t;t++)e=arguments[t],e instanceof g?i.push(e):(r=g.create(),r.properties=e,i.push(r));return this},N.apply=function(e){return E(e,[this],!1)},N.applyPartial=function(e){return E(e,[this],!0)},N.detect=function(e){if(!e)return!1;if(e instanceof g)return d(e,this,{});var r=Ember.meta(e,!1).mixins;return r?!!r[S(this)]:!1},N.without=function(){var e=new g(this);return e._without=P.call(arguments),e},N.keys=function(){var e={},r={},t=[];v(e,this,r);for(var n in e)e.hasOwnProperty(n)&&t.push(n);return t},g.mixins=function(e){var r=Ember.meta(e,!1).mixins,t=[];if(!r)return t;for(var n in r){var i=r[n];i.properties||t.push(i)}return t},y=new Ember.Descriptor,y.toString=function(){return"(Required Property)"},Ember.required=function(){return y},_=function(e){this.methodName=e},_.prototype=new Ember.Descriptor,Ember.alias=function(e){return new _(e)},Ember.alias=Ember.deprecateFunc("Ember.alias is deprecated. Please use Ember.aliasMethod or Ember.computed.alias instead.",Ember.alias),Ember.aliasMethod=function(e){return new _(e)},Ember.observer=function(e){var r=P.call(arguments,1);return e.__ember_observes__=r,e},Ember.immediateObserver=function(){for(var e=0,r=arguments.length;r>e;e++)arguments[e];return Ember.observer.apply(this,arguments)},Ember.beforeObserver=function(e){var r=P.call(arguments,1);return e.__ember_observesBefore__=r,e}}(),function(){e("rsvp/all",["rsvp/defer","exports"],function(e,r){"use strict";function t(e){var r=[],t=n(),i=e.length;0===i&&t.resolve([]);for(var o=function(e){return function(r){s(e,r)}},s=function(e,n){r[e]=n,--i===0&&t.resolve(r)},a=function(e){t.reject(e)},u=0;u<e.length;u++)e[u]&&typeof e[u].then=="function"?e[u].then(o(u),a):s(u,e[u]);return t.promise}var n=e.defer;r.all=t}),e("rsvp/async",["exports"],function(e){"use strict";var r,t="undefined"!=typeof window?window:{},n=t.MutationObserver||t.WebKitMutationObserver;if("undefined"!=typeof process&&{}.toString.call(process)==="[object process]")r=function(e,r){process.nextTick(function(){e.call(r)})};else if(n){var i=[],o=new n(function(){var e=i.slice();i=[],e.forEach(function(e){var r=e[0],t=e[1];r.call(t)})}),s=document.createElement("div");o.observe(s,{attributes:!0}),window.addEventListener("unload",function(){o.disconnect(),o=null}),r=function(e,r){i.push([e,r]),s.setAttribute("drainQueue","drainQueue")}}else r=function(e,r){setTimeout(function(){e.call(r)},1)};e.async=r}),e("rsvp/config",["rsvp/async","exports"],function(e,r){"use strict";var t=e.async,n={};n.async=t,r.config=n}),e("rsvp/defer",["rsvp/promise","exports"],function(e,r){"use strict";function t(){var e={},r=new n(function(r,t){e.resolve=r,e.reject=t});return e.promise=r,e}var n=e.Promise;r.defer=t}),e("rsvp/events",["exports"],function(e){"use strict";var r=function(e,r){this.type=e;for(var t in r)r.hasOwnProperty(t)&&(this[t]=r[t])},t=function(e,r){for(var t=0,n=e.length;n>t;t++)if(e[t][0]===r)return t;return-1},n=function(e){var r=e._promiseCallbacks;return r||(r=e._promiseCallbacks={}),r},i={mixin:function(e){return e.on=this.on,e.off=this.off,e.trigger=this.trigger,e},on:function(e,r,i){var o,s,a=n(this);for(e=e.split(/\s+/),i=i||this;s=e.shift();)o=a[s],o||(o=a[s]=[]),t(o,r)===-1&&o.push([r,i])},off:function(e,r){var i,o,s,a=n(this);for(e=e.split(/\s+/);o=e.shift();)r?(i=a[o],s=t(i,r),-1!==s&&i.splice(s,1)):a[o]=[]},trigger:function(e,t){var i,o,s,a,u,c=n(this);if(i=c[e])for(var h=0;h<i.length;h++)o=i[h],s=o[0],a=o[1],"object"!=typeof t&&(t={detail:t}),u=new r(e,t),s.call(a,u)}};e.EventTarget=i}),e("rsvp/hash",["rsvp/defer","exports"],function(e,r){"use strict";function t(e){var r=0;for(var t in e)r++;return r}function n(e){var r={},n=i(),o=t(e);0===o&&n.resolve({});var s=function(e){return function(r){a(e,r)}},a=function(e,t){r[e]=t,--o===0&&n.resolve(r)},u=function(e){n.reject(e)};for(var c in e)e[c]&&typeof e[c].then=="function"?e[c].then(s(c),u):a(c,e[c]);return n.promise}var i=e.defer;r.hash=n}),e("rsvp/node",["rsvp/promise","rsvp/all","exports"],function(e,r,t){"use strict";function n(e,r){return function(t,n){t?r(t):arguments.length>2?e(Array.prototype.slice.call(arguments,1)):e(n)}}function i(e){return function(){var r,t,i=Array.prototype.slice.call(arguments),a=new o(function(e,n){r=e,t=n});return s(i).then(function(i){i.push(n(r,t));try{e.apply(this,i)}catch(o){t(o)}}),a}}var o=e.Promise,s=r.all;t.denodeify=i}),e("rsvp/promise",["rsvp/config","rsvp/events","exports"],function(e,r,t){"use strict";function n(e){return i(e)||"object"==typeof e&&null!==e}function i(e){return"function"==typeof e}function o(e,r){e===r?a(e,r):s(e,r)||a(e,r)}function s(e,r){var t=null;if(n(r)){try{t=r.then}catch(s){return u(e,s),!0}if(i(t)){try{t.call(r,function(t){r!==t?o(e,t):a(e,t)},function(r){u(e,r)})}catch(s){u(e,s)}return!0}}return!1}function a(e,r){c.async(function(){e.trigger("promise:resolved",{detail:r}),e.isFulfilled=!0,e.fulfillmentValue=r})}function u(e,r){c.async(function(){e.trigger("promise:failed",{detail:r}),e.isRejected=!0,e.rejectedReason=r})}var c=e.config,h=r.EventTarget,l=function(e){var r=this,t=!1;if("function"!=typeof e)throw new TypeError("You must pass a resolver function as the sole argument to the promise constructor");if(!(r instanceof l))return new l(e);var n=function(e){t||(t=!0,o(r,e))},i=function(e){t||(t=!0,u(r,e))};this.on("promise:resolved",function(e){this.trigger("success",{detail:e.detail})},this),this.on("promise:failed",function(e){this.trigger("error",{detail:e.detail})},this);try{e(n,i)}catch(s){i(s)}},f=function(e,r,t,n){var a,c,h,l,f=i(t);if(f)try{a=t(n.detail),h=!0}catch(m){l=!0,c=m}else a=n.detail,h=!0;s(r,a)||(f&&h?o(r,a):l?u(r,c):"resolve"===e?o(r,a):"reject"===e&&u(r,a))};l.prototype={constructor:l,then:function(e,r){var t=new l(function(){});return this.isFulfilled&&c.async(function(){f("resolve",t,e,{detail:this.fulfillmentValue})},this),this.isRejected&&c.async(function(){f("reject",t,r,{detail:this.rejectedReason})},this),this.on("promise:resolved",function(r){f("resolve",t,e,r)}),this.on("promise:failed",function(e){f("reject",t,r,e)}),t}},h.mixin(l.prototype),t.Promise=l}),e("rsvp/reject",["rsvp/promise","exports"],function(e,r){"use strict";function t(e){return new n(function(r,t){t(e)})}var n=e.Promise;r.reject=t}),e("rsvp/resolve",["rsvp/promise","exports"],function(e,r){"use strict";function t(e){return"function"==typeof e||"object"==typeof e&&null!==e}function n(e){var r=new i(function(r,n){var i;try{t(e)?(i=e.then,"function"==typeof i?i.call(e,r,n):r(e)):r(e)}catch(o){n(o)}});return r}var i=e.Promise;r.resolve=n}),e("rsvp",["rsvp/events","rsvp/promise","rsvp/node","rsvp/all","rsvp/hash","rsvp/defer","rsvp/config","rsvp/resolve","rsvp/reject","exports"],function(e,r,t,n,i,o,s,a,u,c){"use strict";function h(e,r){d[e]=r}var l=e.EventTarget,f=r.Promise,m=t.denodeify,b=n.all,p=i.hash,E=o.defer,d=s.config,v=a.resolve,g=u.reject;c.Promise=f,c.EventTarget=l,c.all=b,c.hash=p,c.defer=E,c.denodeify=m,c.configure=h,c.resolve=v,c.reject=g})}(),function(){e("container",[],function(){function e(e){this.parent=e,this.dict={}}function r(r){this.parent=r,this.children=[],this.resolver=r&&r.resolver||function(){},this.registry=new e(r&&r.registry),this.cache=new e(r&&r.cache),this.typeInjections=new e(r&&r.typeInjections),this.injections={},this._options=new e(r&&r._options),this._typeOptions=new e(r&&r._typeOptions)}function t(e){throw new Error(e+" is not currently supported on child containers")}function n(e,r){var t=o(e,r,"singleton");return t!==!1}function i(e,r){var t={};if(!r)return t;for(var n,i,o=0,s=r.length;s>o;o++)n=r[o],i=e.lookup(n.fullName),t[n.property]=i;return t}function o(e,r,t){var n=e._options.get(r);if(n&&n[t]!==void 0)return n[t];var i=r.split(":")[0];return n=e._typeOptions.get(i),n?n[t]:void 0}function s(e,r){var t=e.normalize(r);return e.resolve(t)}function a(e,r){var t,n=s(e,r),a=r.split(":"),u=a[0];if(o(e,r,"instantiate")===!1)return n;if(n){var c=[];c=c.concat(e.typeInjections.get(u)||[]),c=c.concat(e.injections[r]||[]);var h=i(e,c);return h.container=e,h._debugContainerKey=r,t=n.create(h)}}function u(e,r){e.cache.eachLocal(function(t,n){o(e,t,"instantiate")!==!1&&r(n)})}function c(e){e.cache.eachLocal(function(r,t){o(e,r,"instantiate")!==!1&&t.destroy()}),e.cache.dict={}}return e.prototype={get:function(e){var r=this.dict;return r.hasOwnProperty(e)?r[e]:this.parent?this.parent.get(e):void 0},set:function(e,r){this.dict[e]=r},has:function(e){var r=this.dict;return r.hasOwnProperty(e)?!0:this.parent?this.parent.has(e):!1},eachLocal:function(e,r){var t=this.dict;for(var n in t)t.hasOwnProperty(n)&&e.call(r,n,t[n])}},r.prototype={child:function(){var e=new r(this);return this.children.push(e),e},set:function(e,r,t){e[r]=t},register:function(e,r,t,n){var i;e.indexOf(":")!==-1?(n=t,t=r,i=e):i=e+":"+r;var o=this.normalize(i);this.registry.set(o,t),this._options.set(o,n||{})},resolve:function(e){return this.resolver(e)||this.registry.get(e)},normalize:function(e){return e},lookup:function(e,r){if(e=this.normalize(e),r=r||{},this.cache.has(e)&&r.singleton!==!1)return this.cache.get(e);var t=a(this,e);return t?(n(this,e)&&r.singleton!==!1&&this.cache.set(e,t),t):void 0},has:function(e){return this.cache.has(e)?!0:!!s(this,e)},optionsForType:function(e,r){this.parent&&t("optionsForType"),this._typeOptions.set(e,r)},options:function(e,r){this.optionsForType(e,r)},typeInjection:function(e,r,n){this.parent&&t("typeInjection");var i=this.typeInjections.get(e);i||(i=[],this.typeInjections.set(e,i)),i.push({property:r,fullName:n})},injection:function(e,r,n){if(this.parent&&t("injection"),e.indexOf(":")===-1)return this.typeInjection(e,r,n);var i=this.injections[e]=this.injections[e]||[];i.push({property:r,fullName:n})},destroy:function(){this.isDestroyed=!0;for(var e=0,r=this.children.length;r>e;e++)this.children[e].destroy();this.children=[],u(this,function(e){e.isDestroying=!0}),u(this,function(e){e.destroy()}),delete this.parent,this.isDestroyed=!0},reset:function(){for(var e=0,r=this.children.length;r>e;e++)c(this.children[e]);c(this)}},r})}(),function(){function e(t,n,i,o){var s,a,u;if("object"!=typeof t||null===t)return t;if(n&&(a=r(i,t))>=0)return o[a];if(Ember.typeOf(t)==="array"){if(s=t.slice(),n)for(a=s.length;--a>=0;)s[a]=e(s[a],n,i,o)}else if(Ember.Copyable&&Ember.Copyable.detect(t))s=t.copy(n,i,o);else{s={};for(u in t)t.hasOwnProperty(u)&&u.substring(0,2)!=="__"&&(s[u]=n?e(t[u],n,i,o):t[u])}return n&&(i.push(t),o.push(s)),s}var r=Ember.EnumerableUtils.indexOf;Ember.compare=function n(e,r){if(e===r)return 0;var t=Ember.typeOf(e),i=Ember.typeOf(r),o=Ember.Comparable;if(o){if("instance"===t&&o.detect(e.constructor))return e.constructor.compare(e,r);if("instance"===i&&o.detect(r.constructor))return 1-r.constructor.compare(r,e)}var s=Ember.ORDER_DEFINITION_MAPPING;if(!s){var a=Ember.ORDER_DEFINITION;s=Ember.ORDER_DEFINITION_MAPPING={};var u,c;for(u=0,c=a.length;c>u;++u)s[a[u]]=u;delete Ember.ORDER_DEFINITION}var h=s[t],l=s[i];if(l>h)return-1;if(h>l)return 1;switch(t){case"boolean":case"number":return r>e?-1:e>r?1:0;case"string":var f=e.localeCompare(r);return 0>f?-1:f>0?1:0;case"array":for(var m=e.length,b=r.length,p=Math.min(m,b),E=0,d=0;0===E&&p>d;)E=n(e[d],r[d]),d++;return 0!==E?E:b>m?-1:m>b?1:0;case"instance":return Ember.Comparable&&Ember.Comparable.detect(e)?e.compare(e,r):0;case"date":var v=e.getTime(),g=r.getTime();return g>v?-1:v>g?1:0;default:return 0}},Ember.copy=function(r,t){return"object"!=typeof r||null===r?r:Ember.Copyable&&Ember.Copyable.detect(r)?r.copy(t):e(r,t,t?[]:null,t?[]:null)},Ember.inspect=function(e){if("object"!=typeof e||null===e)return e+"";var r,t=[];for(var n in e)if(e.hasOwnProperty(n)){if(r=e[n],"toString"===r)continue;Ember.typeOf(r)==="function"&&(r="function() { ... }"),t.push(n+": "+r)}return"{"+t.join(", ")+"}"},Ember.isEqual=function(e,r){return e&&"function"==typeof e.isEqual?e.isEqual(r):e===r},Ember.ORDER_DEFINITION=Ember.ENV.ORDER_DEFINITION||["undefined","null","boolean","number","string","array","object","instance","function","class","date"],Ember.keys=Object.keys,Ember.keys||(Ember.keys=function(e){var r=[];for(var t in e)e.hasOwnProperty(t)&&r.push(t);return r});var t=["description","fileName","lineNumber","message","name","number","stack"];Ember.Error=function(){for(var e=Error.apply(this,arguments),r=0;r<t.length;r++)this[t[r]]=e[t[r]]},Ember.Error.prototype=Ember.create(Error.prototype)}(),function(){Ember.RSVP=r("rsvp")}(),function(){var e=/[ _]/g,r={},t=/([a-z])([A-Z])/g,n=/(\-|_|\.|\s)+(.)?/g,i=/([a-z\d])([A-Z]+)/g,o=/\-|\s+/g;Ember.STRINGS={},Ember.String={fmt:function(e,r){var t=0;return e.replace(/%@([0-9]+)?/g,function(e,n){return n=n?parseInt(n,0)-1:t++,e=r[n],(null===e?"(null)":void 0===e?"":e).toString()})},loc:function(e,r){return e=Ember.STRINGS[e]||e,Ember.String.fmt(e,r)},w:function(e){return e.split(/\s+/)},decamelize:function(e){return e.replace(t,"$1_$2").toLowerCase()},dasherize:function(t){var n,i=r,o=i.hasOwnProperty(t);return o?i[t]:(n=Ember.String.decamelize(t).replace(e,"-"),i[t]=n,n)},camelize:function(e){return e.replace(n,function(e,r,t){return t?t.toUpperCase():""}).replace(/^([A-Z])/,function(e){return e.toLowerCase()})},classify:function(e){for(var r=e.split("."),t=[],n=0,i=r.length;i>n;n++){var o=Ember.String.camelize(r[n]);t.push(o.charAt(0).toUpperCase()+o.substr(1))}return t.join(".")},underscore:function(e){return e.replace(i,"$1_$2").replace(o,"_").toLowerCase()},capitalize:function(e){return e.charAt(0).toUpperCase()+e.substr(1)}}}(),function(){var e=Ember.String.fmt,r=Ember.String.w,t=Ember.String.loc,n=Ember.String.camelize,i=Ember.String.decamelize,o=Ember.String.dasherize,s=Ember.String.underscore,a=Ember.String.capitalize,u=Ember.String.classify;(Ember.EXTEND_PROTOTYPES===!0||Ember.EXTEND_PROTOTYPES.String)&&(String.prototype.fmt=function(){return e(this,arguments)},String.prototype.w=function(){return r(this)},String.prototype.loc=function(){return t(this,arguments)},String.prototype.camelize=function(){return n(this)},String.prototype.decamelize=function(){return i(this)},String.prototype.dasherize=function(){return o(this)},String.prototype.underscore=function(){return s(this)},String.prototype.classify=function(){return u(this)},String.prototype.capitalize=function(){return a(this)})}(),function(){var e=Array.prototype.slice;(Ember.EXTEND_PROTOTYPES===!0||Ember.EXTEND_PROTOTYPES.Function)&&(Function.prototype.property=function(){var e=Ember.computed(this);return e.property.apply(e,arguments)},Function.prototype.observes=function(){return this.__ember_observes__=e.call(arguments),this},Function.prototype.observesBefore=function(){return this.__ember_observesBefore__=e.call(arguments),this})}(),function(){function e(){return a.length===0?{}:a.pop()}function r(e){return a.push(e),null}function t(e,r){function t(t){var o=n(t,e);return i?r===o:!!o}var i=arguments.length===2;return t}var n=Ember.get,i=Ember.set,o=Array.prototype.slice,s=Ember.EnumerableUtils.indexOf,a=[];Ember.Enumerable=Ember.Mixin.create({isEnumerable:!0,nextObject:Ember.required(Function),firstObject:Ember.computed(function(){if(n(this,"length")===0)return void 0;var t,i=e();return t=this.nextObject(0,null,i),r(i),t}).property("[]"),lastObject:Ember.computed(function(){var t=n(this,"length");if(0===t)return void 0;var i,o=e(),s=0,a=null;do a=i,i=this.nextObject(s++,a,o);while(void 0!==i);return r(o),a}).property("[]"),contains:function(e){return this.find(function(r){return r===e})!==void 0},forEach:function(t,i){if("function"!=typeof t)throw new TypeError;var o=n(this,"length"),s=null,a=e();void 0===i&&(i=null);for(var u=0;o>u;u++){var c=this.nextObject(u,s,a);t.call(i,c,u,this),s=c}return s=null,a=r(a),this},getEach:function(e){return this.mapProperty(e)},setEach:function(e,r){return this.forEach(function(t){i(t,e,r)})},map:function(e,r){var t=Ember.A([]);return this.forEach(function(n,i,o){t[i]=e.call(r,n,i,o)}),t},mapProperty:function(e){return this.map(function(r){return n(r,e)})},filter:function(e,r){var t=Ember.A([]);return this.forEach(function(n,i,o){e.call(r,n,i,o)&&t.push(n)}),t},reject:function(e,r){return this.filter(function(){return!e.apply(r,arguments)})},filterProperty:function(){return this.filter(t.apply(this,arguments))},rejectProperty:function(e,r){var t=function(t){return n(t,e)===r},i=function(r){return!!n(r,e)},o=arguments.length===2?t:i;return this.reject(o)},find:function(t,i){var o=n(this,"length");void 0===i&&(i=null);for(var s,a,u=null,c=!1,h=e(),l=0;o>l&&!c;l++)s=this.nextObject(l,u,h),(c=t.call(i,s,l,this))&&(a=s),u=s;return s=u=null,h=r(h),a},findProperty:function(){return this.find(t.apply(this,arguments))},every:function(e,r){return!this.find(function(t,n,i){return!e.call(r,t,n,i)})},everyProperty:function(){return this.every(t.apply(this,arguments))},some:function(e,r){return!!this.find(function(t,n,i){return!!e.call(r,t,n,i)})},someProperty:function(){return this.some(t.apply(this,arguments))},reduce:function(e,r,t){if("function"!=typeof e)throw new TypeError;var n=r;return this.forEach(function(r,i){n=e.call(null,n,r,i,this,t)},this),n},invoke:function(e){var r,t=Ember.A([]);return arguments.length>1&&(r=o.call(arguments,1)),this.forEach(function(n,i){var o=n&&n[e];"function"==typeof o&&(t[i]=r?o.apply(n,r):o.call(n))},this),t},toArray:function(){var e=Ember.A([]);return this.forEach(function(r,t){e[t]=r}),e},compact:function(){return this.filter(function(e){return null!=e})},without:function(e){if(!this.contains(e))return this;var r=Ember.A([]);return this.forEach(function(t){t!==e&&(r[r.length]=t)}),r},uniq:function(){var e=Ember.A([]);return this.forEach(function(r){s(e,r)<0&&e.push(r)}),e},"[]":Ember.computed(function(){return this}),addEnumerableObserver:function(e,r){var t=r&&r.willChange||"enumerableWillChange",i=r&&r.didChange||"enumerableDidChange",o=n(this,"hasEnumerableObservers");return o||Ember.propertyWillChange(this,"hasEnumerableObservers"),Ember.addListener(this,"@enumerable:before",e,t),Ember.addListener(this,"@enumerable:change",e,i),o||Ember.propertyDidChange(this,"hasEnumerableObservers"),this},removeEnumerableObserver:function(e,r){var t=r&&r.willChange||"enumerableWillChange",i=r&&r.didChange||"enumerableDidChange",o=n(this,"hasEnumerableObservers");return o&&Ember.propertyWillChange(this,"hasEnumerableObservers"),Ember.removeListener(this,"@enumerable:before",e,t),Ember.removeListener(this,"@enumerable:change",e,i),o&&Ember.propertyDidChange(this,"hasEnumerableObservers"),this},hasEnumerableObservers:Ember.computed(function(){return Ember.hasListeners(this,"@enumerable:change")||Ember.hasListeners(this,"@enumerable:before")}),enumerableContentWillChange:function(e,r){var t,i,o;return t="number"==typeof e?e:e?n(e,"length"):e=-1,i="number"==typeof r?r:r?n(r,"length"):r=-1,o=0>i||0>t||0!==i-t,-1===e&&(e=null),-1===r&&(r=null),Ember.propertyWillChange(this,"[]"),o&&Ember.propertyWillChange(this,"length"),Ember.sendEvent(this,"@enumerable:before",[this,e,r]),this},enumerableContentDidChange:function(e,r){var t,i,o;return t="number"==typeof e?e:e?n(e,"length"):e=-1,i="number"==typeof r?r:r?n(r,"length"):r=-1,o=0>i||0>t||0!==i-t,-1===e&&(e=null),-1===r&&(r=null),Ember.sendEvent(this,"@enumerable:change",[this,e,r]),o&&Ember.propertyDidChange(this,"length"),Ember.propertyDidChange(this,"[]"),this}})}(),function(){var e=Ember.get,r=(Ember.set,Ember.isNone),t=Ember.EnumerableUtils.map,n=Ember.cacheFor;Ember.Array=Ember.Mixin.create(Ember.Enumerable,{length:Ember.required(),objectAt:function(r){return 0>r||r>=e(this,"length")?void 0:e(this,r)},objectsAt:function(e){var r=this;return t(e,function(e){return r.objectAt(e)})},nextObject:function(e){return this.objectAt(e)},"[]":Ember.computed(function(r,t){return void 0!==t&&this.replace(0,e(this,"length"),t),this}),firstObject:Ember.computed(function(){return this.objectAt(0)}),lastObject:Ember.computed(function(){return this.objectAt(e(this,"length")-1)}),contains:function(e){return this.indexOf(e)>=0},slice:function(t,n){var i=Ember.A([]),o=e(this,"length");for(r(t)&&(t=0),(r(n)||n>o)&&(n=o),0>t&&(t=o+t),0>n&&(n=o+n);n>t;)i[i.length]=this.objectAt(t++);return i},indexOf:function(r,t){var n,i=e(this,"length");for(void 0===t&&(t=0),0>t&&(t+=i),n=t;i>n;n++)if(this.objectAt(n,!0)===r)return n;return-1},lastIndexOf:function(r,t){var n,i=e(this,"length");for((void 0===t||t>=i)&&(t=i-1),0>t&&(t+=i),n=t;n>=0;n--)if(this.objectAt(n)===r)return n;return-1},addArrayObserver:function(r,t){var n=t&&t.willChange||"arrayWillChange",i=t&&t.didChange||"arrayDidChange",o=e(this,"hasArrayObservers");return o||Ember.propertyWillChange(this,"hasArrayObservers"),Ember.addListener(this,"@array:before",r,n),Ember.addListener(this,"@array:change",r,i),o||Ember.propertyDidChange(this,"hasArrayObservers"),this},removeArrayObserver:function(r,t){var n=t&&t.willChange||"arrayWillChange",i=t&&t.didChange||"arrayDidChange",o=e(this,"hasArrayObservers");return o&&Ember.propertyWillChange(this,"hasArrayObservers"),Ember.removeListener(this,"@array:before",r,n),Ember.removeListener(this,"@array:change",r,i),o&&Ember.propertyDidChange(this,"hasArrayObservers"),this},hasArrayObservers:Ember.computed(function(){return Ember.hasListeners(this,"@array:change")||Ember.hasListeners(this,"@array:before")}),arrayContentWillChange:function(r,t,n){void 0===r?(r=0,t=n=-1):(void 0===t&&(t=-1),void 0===n&&(n=-1)),Ember.isWatching(this,"@each")&&e(this,"@each"),Ember.sendEvent(this,"@array:before",[this,r,t,n]);var i,o;if(r>=0&&t>=0&&e(this,"hasEnumerableObservers")){i=[],o=r+t;for(var s=r;o>s;s++)i.push(this.objectAt(s))}else i=t;return this.enumerableContentWillChange(i,n),this},arrayContentDidChange:function(r,t,i){void 0===r?(r=0,t=i=-1):(void 0===t&&(t=-1),void 0===i&&(i=-1));var o,s;if(r>=0&&i>=0&&e(this,"hasEnumerableObservers")){o=[],s=r+i;for(var a=r;s>a;a++)o.push(this.objectAt(a))}else o=i;this.enumerableContentDidChange(t,o),Ember.sendEvent(this,"@array:change",[this,r,t,i]);var u=e(this,"length"),c=n(this,"firstObject"),h=n(this,"lastObject");return this.objectAt(0)!==c&&(Ember.propertyWillChange(this,"firstObject"),Ember.propertyDidChange(this,"firstObject")),this.objectAt(u-1)!==h&&(Ember.propertyWillChange(this,"lastObject"),Ember.propertyDidChange(this,"lastObject")),this},"@each":Ember.computed(function(){return this.__each||(this.__each=new Ember.EachProxy(this)),this.__each})})}(),function(){Ember.Comparable=Ember.Mixin.create({isComparable:!0,compare:Ember.required(Function)})}(),function(){var e=Ember.get;Ember.set,Ember.Copyable=Ember.Mixin.create({copy:Ember.required(Function),frozenCopy:function(){if(Ember.Freezable&&Ember.Freezable.detect(this))return e(this,"isFrozen")?this:this.copy().freeze();throw new Error(Ember.String.fmt("%@ does not support freezing",[this]))}})}(),function(){var e=Ember.get,r=Ember.set;Ember.Freezable=Ember.Mixin.create({isFrozen:!1,freeze:function(){return e(this,"isFrozen")?this:(r(this,"isFrozen",!0),this)}}),Ember.FROZEN_ERROR="Frozen object cannot be modified."}(),function(){var e=Ember.EnumerableUtils.forEach;Ember.MutableEnumerable=Ember.Mixin.create(Ember.Enumerable,{addObject:Ember.required(Function),addObjects:function(r){return Ember.beginPropertyChanges(this),e(r,function(e){this.addObject(e)},this),Ember.endPropertyChanges(this),this},removeObject:Ember.required(Function),removeObjects:function(r){return Ember.beginPropertyChanges(this),e(r,function(e){this.removeObject(e)},this),Ember.endPropertyChanges(this),this}})}(),function(){var e="Index out of range",r=[],t=Ember.get;Ember.set,Ember.MutableArray=Ember.Mixin.create(Ember.Array,Ember.MutableEnumerable,{replace:Ember.required(),clear:function(){var e=t(this,"length");return 0===e?this:(this.replace(0,e,r),this)},insertAt:function(r,n){if(r>t(this,"length"))throw new Error(e);return this.replace(r,0,[n]),this},removeAt:function(n,i){if("number"==typeof n){if(0>n||n>=t(this,"length"))throw new Error(e);void 0===i&&(i=1),this.replace(n,i,r)}return this},pushObject:function(e){return this.insertAt(t(this,"length"),e),e},pushObjects:function(e){return this.replace(t(this,"length"),0,e),this
|
17
|
+
},popObject:function(){var e=t(this,"length");if(0===e)return null;var r=this.objectAt(e-1);return this.removeAt(e-1,1),r},shiftObject:function(){if(t(this,"length")===0)return null;var e=this.objectAt(0);return this.removeAt(0),e},unshiftObject:function(e){return this.insertAt(0,e),e},unshiftObjects:function(e){return this.replace(0,0,e),this},reverseObjects:function(){var e=t(this,"length");if(0===e)return this;var r=this.toArray().reverse();return this.replace(0,e,r),this},setObjects:function(e){if(e.length===0)return this.clear();var r=t(this,"length");return this.replace(0,r,e),this},removeObject:function(e){for(var r=t(this,"length")||0;--r>=0;){var n=this.objectAt(r);n===e&&this.removeAt(r)}return this},addObject:function(e){return this.contains(e)||this.pushObject(e),this}})}(),function(){var e=Ember.get,r=Ember.set;Ember.Observable=Ember.Mixin.create({get:function(r){return e(this,r)},getProperties:function(){var r={},t=arguments;arguments.length===1&&Ember.typeOf(arguments[0])==="array"&&(t=arguments[0]);for(var n=0;n<t.length;n++)r[t[n]]=e(this,t[n]);return r},set:function(e,t){return r(this,e,t),this},setProperties:function(e){return Ember.setProperties(this,e)},beginPropertyChanges:function(){return Ember.beginPropertyChanges(),this},endPropertyChanges:function(){return Ember.endPropertyChanges(),this},propertyWillChange:function(e){return Ember.propertyWillChange(this,e),this},propertyDidChange:function(e){return Ember.propertyDidChange(this,e),this},notifyPropertyChange:function(e){return this.propertyWillChange(e),this.propertyDidChange(e),this},addBeforeObserver:function(e,r,t){Ember.addBeforeObserver(this,e,r,t)},addObserver:function(e,r,t){Ember.addObserver(this,e,r,t)},removeObserver:function(e,r,t){Ember.removeObserver(this,e,r,t)},hasObserverFor:function(e){return Ember.hasListeners(this,e+":change")},getPath:function(e){return this.get(e)},setPath:function(e,r){return this.set(e,r)},getWithDefault:function(e,r){return Ember.getWithDefault(this,e,r)},incrementProperty:function(t,n){return Ember.isNone(n)&&(n=1),r(this,t,(e(this,t)||0)+n),e(this,t)},decrementProperty:function(t,n){return Ember.isNone(n)&&(n=1),r(this,t,(e(this,t)||0)-n),e(this,t)},toggleProperty:function(t){return r(this,t,!e(this,t)),e(this,t)},cacheFor:function(e){return Ember.cacheFor(this,e)},observersForKey:function(e){return Ember.observersFor(this,e)}})}(),function(){var e=Ember.get;Ember.set,Ember.TargetActionSupport=Ember.Mixin.create({target:null,action:null,actionContext:null,targetObject:Ember.computed(function(){var r=e(this,"target");if(Ember.typeOf(r)==="string"){var t=e(this,r);return void 0===t&&(t=e(Ember.lookup,r)),t}return r}).property("target"),actionContextObject:Ember.computed(function(){var r=e(this,"actionContext");if(Ember.typeOf(r)==="string"){var t=e(this,r);return void 0===t&&(t=e(Ember.lookup,r)),t}return r}).property("actionContext"),triggerAction:function(r){r=r||{};var t=r.action||e(this,"action"),n=r.target||e(this,"targetObject"),i=r.actionContext||e(this,"actionContextObject")||this;if(n&&t){var o;return o=n.send?n.send.apply(n,[t,i]):n[t].apply(n,[i]),o!==!1&&(o=!0),o}return!1}})}(),function(){Ember.Evented=Ember.Mixin.create({on:function(e,r,t){return Ember.addListener(this,e,r,t),this},one:function(e,r,t){return t||(t=r,r=null),Ember.addListener(this,e,r,t,!0),this},trigger:function(e){var r,t,n=[];for(r=1,t=arguments.length;t>r;r++)n.push(arguments[r]);Ember.sendEvent(this,e,n)},fire:function(){this.trigger.apply(this,arguments)},off:function(e,r,t){return Ember.removeListener(this,e,r,t),this},has:function(e){return Ember.hasListeners(this,e)}})}(),function(){var e=r("rsvp");e.configure("async",function(e,r){Ember.run.schedule("actions",r,e)});var t=Ember.get;Ember.DeferredMixin=Ember.Mixin.create({then:function(e,r){function n(r){return r===o?e(s):e(r)}var i,o,s;return s=this,i=t(this,"_deferred"),o=i.promise,o.then(e&&n,r)},resolve:function(e){var r,n;r=t(this,"_deferred"),n=r.promise,e===this?r.resolve(n):r.resolve(e)},reject:function(e){t(this,"_deferred").reject(e)},_deferred:Ember.computed(function(){return e.defer()})})}(),function(){Ember.Container=r("container"),Ember.Container.set=Ember.set}(),function(){function e(){var e,r,o=!1,s=function(){o||s.proto(),n(this,i,v),n(this,"_super",v);var u=a(this);if(u.proto=this,e){var h=e;e=null,this.reopen.apply(this,h)}if(r){var l=r;r=null;for(var f=this.concatenatedProperties,m=0,p=l.length;p>m;m++){var g=l[m];for(var y in g)if(g.hasOwnProperty(y)){var _=g[y],O=Ember.IS_BINDING;if(O.test(y)){var C=u.bindings;C?u.hasOwnProperty("bindings")||(C=u.bindings=t(u.bindings)):C=u.bindings={},C[y]=_}var w=u.descs[y];if(f&&d(f,y)>=0){var P=this[y];_=P?"function"==typeof P.concat?P.concat(_):Ember.makeArray(P).concat(_):Ember.makeArray(_)}w?w.set(this,y,_):typeof this.setUnknownProperty!="function"||y in this?E?Ember.defineProperty(this,y,null,_):this[y]=_:this.setUnknownProperty(y,_)}}}b(this,u),delete u.proto,c(this),this.init.apply(this,arguments)};return s.toString=f.prototype.toString,s.willReopen=function(){o&&(s.PrototypeMixin=f.create(s.PrototypeMixin)),o=!1},s._initMixins=function(r){e=r},s._initProperties=function(e){r=e},s.proto=function(){var e=s.superclass;return e&&e.proto(),o||(o=!0,s.PrototypeMixin.applyPartial(s.prototype),u(s.prototype)),this.prototype},s}function r(e){return function(){return e}}var t=(Ember.set,Ember.get,Ember.create),n=Ember.platform.defineProperty,i=Ember.GUID_KEY,o=Ember.guidFor,s=Ember.generateGuid,a=Ember.meta,u=Ember.rewatch,c=Ember.finishChains,h=Ember.destroy,l=Ember.run.schedule,f=Ember.Mixin,m=f._apply,b=f.finishPartial,p=f.prototype.reopen,E=Ember.ENV.MANDATORY_SETTER,d=Ember.EnumerableUtils.indexOf,v={configurable:!0,writable:!0,enumerable:!1,value:void 0},g=e();g.toString=function(){return"Ember.CoreObject"},g.PrototypeMixin=f.create({reopen:function(){return m(this,arguments,!0),this},isInstance:!0,init:function(){},concatenatedProperties:null,isDestroyed:!1,isDestroying:!1,destroy:function(){return this._didCallDestroy?void 0:(this.isDestroying=!0,this._didCallDestroy=!0,l("destroy",this,this._scheduledDestroy),this)},willDestroy:Ember.K,_scheduledDestroy:function(){this.willDestroy&&this.willDestroy(),h(this),this.isDestroyed=!0,this.didDestroy&&this.didDestroy()},bind:function(e,r){return r instanceof Ember.Binding||(r=Ember.Binding.from(r)),r.to(e).connect(this),r},toString:function(){var e=typeof this.toStringExtension=="function",t=e?":"+this.toStringExtension():"",n="<"+this.constructor.toString()+":"+o(this)+t+">";return this.toString=r(n),n}}),g.PrototypeMixin.ownerConstructor=g,Ember.config.overridePrototypeMixin&&Ember.config.overridePrototypeMixin(g.PrototypeMixin),g.__super__=null;var y=f.create({ClassMixin:Ember.required(),PrototypeMixin:Ember.required(),isClass:!0,isMethod:!1,extend:function(){var r,n=e();return n.ClassMixin=f.create(this.ClassMixin),n.PrototypeMixin=f.create(this.PrototypeMixin),n.ClassMixin.ownerConstructor=n,n.PrototypeMixin.ownerConstructor=n,p.apply(n.PrototypeMixin,arguments),n.superclass=this,n.__super__=this.prototype,r=n.prototype=t(this.prototype),r.constructor=n,s(r,"ember"),a(r).proto=r,n.ClassMixin.apply(n),n},createWithMixins:function(){var e=this;return arguments.length>0&&this._initMixins(arguments),new e},create:function(){var e=this;return arguments.length>0&&this._initProperties(arguments),new e},reopen:function(){return this.willReopen(),p.apply(this.PrototypeMixin,arguments),this},reopenClass:function(){return p.apply(this.ClassMixin,arguments),m(this,arguments,!1),this},detect:function(e){if("function"!=typeof e)return!1;for(;e;){if(e===this)return!0;e=e.superclass}return!1},detectInstance:function(e){return e instanceof this},metaForProperty:function(e){var r=a(this.proto(),!1).descs[e];return r._meta||{}},eachComputedProperty:function(e,r){var t,n=this.proto(),i=a(n).descs,o={};for(var s in i)t=i[s],t instanceof Ember.ComputedProperty&&e.call(r||this,s,t._meta||o)}});y.ownerConstructor=g,Ember.config.overrideClassMixin&&Ember.config.overrideClassMixin(y),g.ClassMixin=y,y.apply(g),Ember.CoreObject=g}(),function(){Ember.Object=Ember.CoreObject.extend(Ember.Observable),Ember.Object.toString=function(){return"Ember.Object"}}(),function(){function e(r,t,i){var s=r.length;c[r.join(".")]=t;for(var a in t)if(h.call(t,a)){var u=t[a];if(r[s]=a,u&&u.toString===n)u.toString=o(r.join(".")),u[f]=r.join(".");else if(u&&u.isNamespace){if(i[l(u)])continue;i[l(u)]=!0,e(r,u,i)}}r.length=s}function r(){var e,r,t=Ember.Namespace,n=Ember.lookup;if(!t.PROCESSED)for(var i in n)if("parent"!==i&&"top"!==i&&"frameElement"!==i&&"webkitStorageInfo"!==i&&!("globalStorage"===i&&n.StorageList&&n.globalStorage instanceof n.StorageList||n.hasOwnProperty&&!n.hasOwnProperty(i))){try{e=Ember.lookup[i],r=e&&e.isNamespace}catch(o){continue}r&&(e[f]=i)}}function t(e){var r=e.superclass;return r?r[f]?r[f]:t(r):void 0}function n(){Ember.BOOTED||this[f]||i();var e;if(this[f])e=this[f];else{var r=t(this);e=r?"(subclass of "+r+")":"(unknown mixin)",this.toString=o(e)}return e}function i(){var t=!u.PROCESSED,n=Ember.anyUnprocessedMixins;if(t&&(r(),u.PROCESSED=!0),t||n){for(var i,o=u.NAMESPACES,s=0,a=o.length;a>s;s++)i=o[s],e([i.toString()],i,{});Ember.anyUnprocessedMixins=!1}}function o(e){return function(){return e}}var s=Ember.get,a=Ember.ArrayPolyfills.indexOf,u=Ember.Namespace=Ember.Object.extend({isNamespace:!0,init:function(){Ember.Namespace.NAMESPACES.push(this),Ember.Namespace.PROCESSED=!1},toString:function(){var e=s(this,"name");return e?e:(r(),this[Ember.GUID_KEY+"_name"])},nameClasses:function(){e([this.toString()],this,{})},destroy:function(){var e=Ember.Namespace.NAMESPACES;Ember.lookup[this.toString()]=void 0,e.splice(a.call(e,this),1),this._super()}});u.reopenClass({NAMESPACES:[Ember],NAMESPACES_BY_ID:{},PROCESSED:!1,processAll:i,byName:function(e){return Ember.BOOTED||i(),c[e]}});var c=u.NAMESPACES_BY_ID,h={}.hasOwnProperty,l=Ember.guidFor,f=Ember.NAME_KEY=Ember.GUID_KEY+"_name";Ember.Mixin.prototype.toString=n}(),function(){Ember.Application=Ember.Namespace.extend()}(),function(){var e="Index out of range",r=[],t=Ember.get;Ember.set,Ember.ArrayProxy=Ember.Object.extend(Ember.MutableArray,{content:null,arrangedContent:Ember.computed.alias("content"),objectAtContent:function(e){return t(this,"arrangedContent").objectAt(e)},replaceContent:function(e,r,n){t(this,"content").replace(e,r,n)},_contentWillChange:Ember.beforeObserver(function(){this._teardownContent()},"content"),_teardownContent:function(){var e=t(this,"content");e&&e.removeArrayObserver(this,{willChange:"contentArrayWillChange",didChange:"contentArrayDidChange"})},contentArrayWillChange:Ember.K,contentArrayDidChange:Ember.K,_contentDidChange:Ember.observer(function(){t(this,"content"),this._setupContent()},"content"),_setupContent:function(){var e=t(this,"content");e&&e.addArrayObserver(this,{willChange:"contentArrayWillChange",didChange:"contentArrayDidChange"})},_arrangedContentWillChange:Ember.beforeObserver(function(){var e=t(this,"arrangedContent"),r=e?t(e,"length"):0;this.arrangedContentArrayWillChange(this,0,r,void 0),this.arrangedContentWillChange(this),this._teardownArrangedContent(e)},"arrangedContent"),_arrangedContentDidChange:Ember.observer(function(){var e=t(this,"arrangedContent"),r=e?t(e,"length"):0;this._setupArrangedContent(),this.arrangedContentDidChange(this),this.arrangedContentArrayDidChange(this,0,void 0,r)},"arrangedContent"),_setupArrangedContent:function(){var e=t(this,"arrangedContent");e&&e.addArrayObserver(this,{willChange:"arrangedContentArrayWillChange",didChange:"arrangedContentArrayDidChange"})},_teardownArrangedContent:function(){var e=t(this,"arrangedContent");e&&e.removeArrayObserver(this,{willChange:"arrangedContentArrayWillChange",didChange:"arrangedContentArrayDidChange"})},arrangedContentWillChange:Ember.K,arrangedContentDidChange:Ember.K,objectAt:function(e){return t(this,"content")&&this.objectAtContent(e)},length:Ember.computed(function(){var e=t(this,"arrangedContent");return e?t(e,"length"):0}),_replace:function(e,r,n){var i=t(this,"content");return i&&this.replaceContent(e,r,n),this},replace:function(){if(t(this,"arrangedContent")!==t(this,"content"))throw new Ember.Error("Using replace on an arranged ArrayProxy is not allowed.");this._replace.apply(this,arguments)},_insertAt:function(r,n){if(r>t(this,"content.length"))throw new Error(e);return this._replace(r,0,[n]),this},insertAt:function(e,r){if(t(this,"arrangedContent")===t(this,"content"))return this._insertAt(e,r);throw new Ember.Error("Using insertAt on an arranged ArrayProxy is not allowed.")},removeAt:function(n,i){if("number"==typeof n){var o,s=t(this,"content"),a=t(this,"arrangedContent"),u=[];if(0>n||n>=t(this,"length"))throw new Error(e);for(void 0===i&&(i=1),o=n;n+i>o;o++)u.push(s.indexOf(a.objectAt(o)));for(u.sort(function(e,r){return r-e}),Ember.beginPropertyChanges(),o=0;o<u.length;o++)this._replace(u[o],1,r);Ember.endPropertyChanges()}return this},pushObject:function(e){return this._insertAt(t(this,"content.length"),e),e},pushObjects:function(e){return this._replace(t(this,"length"),0,e),this},setObjects:function(e){if(e.length===0)return this.clear();var r=t(this,"length");return this._replace(0,r,e),this},unshiftObject:function(e){return this._insertAt(0,e),e},unshiftObjects:function(e){return this._replace(0,0,e),this},slice:function(){var e=this.toArray();return e.slice.apply(e,arguments)},arrangedContentArrayWillChange:function(e,r,t,n){this.arrayContentWillChange(r,t,n)},arrangedContentArrayDidChange:function(e,r,t,n){this.arrayContentDidChange(r,t,n)},init:function(){this._super(),this._setupContent(),this._setupArrangedContent()},willDestroy:function(){this._teardownArrangedContent(),this._teardownContent()}})}(),function(){function e(e,r){var t=r.slice(8);t in this||u(this,t)}function r(e,r){var t=r.slice(8);t in this||c(this,t)}var t=Ember.get,n=Ember.set,i=(Ember.String.fmt,Ember.addBeforeObserver),o=Ember.addObserver,s=Ember.removeBeforeObserver,a=Ember.removeObserver,u=Ember.propertyWillChange,c=Ember.propertyDidChange;Ember.ObjectProxy=Ember.Object.extend({content:null,_contentDidChange:Ember.observer(function(){},"content"),isTruthy:Ember.computed.bool("content"),_debugContainerKey:null,willWatchProperty:function(t){var n="content."+t;i(this,n,null,e),o(this,n,null,r)},didUnwatchProperty:function(t){var n="content."+t;s(this,n,null,e),a(this,n,null,r)},unknownProperty:function(e){var r=t(this,"content");return r?t(r,e):void 0},setUnknownProperty:function(e,r){var i=t(this,"content");return n(i,e,r)}}),Ember.ObjectProxy.reopenClass({create:function(){var e,r,t,n,i,o;if(arguments.length){for(r=this.proto(),t=0,n=arguments.length;n>t;t++){i=arguments[t];for(o in i)!i.hasOwnProperty(o)||o in r||(e||(e={}),e[o]=null)}e&&this._initMixins([e])}return this._super.apply(this,arguments)}})}(),function(){function e(e,r,t,i,o){var s,a=t._objects;for(a||(a=t._objects={});--o>=i;){var u=e.objectAt(o);u&&(Ember.addBeforeObserver(u,r,t,"contentKeyWillChange"),Ember.addObserver(u,r,t,"contentKeyDidChange"),s=n(u),a[s]||(a[s]=[]),a[s].push(o))}}function r(e,r,t,i,o){var s=t._objects;s||(s=t._objects={});for(var a,u;--o>=i;){var c=e.objectAt(o);c&&(Ember.removeBeforeObserver(c,r,t,"contentKeyWillChange"),Ember.removeObserver(c,r,t,"contentKeyDidChange"),u=n(c),a=s[u],a[a.indexOf(o)]=null)}}var t=(Ember.set,Ember.get),n=Ember.guidFor,i=Ember.EnumerableUtils.forEach,o=Ember.Object.extend(Ember.Array,{init:function(e,r,t){this._super(),this._keyName=r,this._owner=t,this._content=e},objectAt:function(e){var r=this._content.objectAt(e);return r&&t(r,this._keyName)},length:Ember.computed(function(){var e=this._content;return e?t(e,"length"):0})}),s=/^.+:(before|change)$/;Ember.EachProxy=Ember.Object.extend({init:function(e){this._super(),this._content=e,e.addArrayObserver(this),i(Ember.watchedEvents(this),function(e){this.didAddListener(e)},this)},unknownProperty:function(e){var r;return r=new o(this._content,e,this),Ember.defineProperty(this,e,null,r),this.beginObservingContentKey(e),r},arrayWillChange:function(e,t,n){var i,o,s=this._keys;o=n>0?t+n:-1,Ember.beginPropertyChanges(this);for(i in s)s.hasOwnProperty(i)&&(o>0&&r(e,i,this,t,o),Ember.propertyWillChange(this,i));Ember.propertyWillChange(this._content,"@each"),Ember.endPropertyChanges(this)},arrayDidChange:function(r,t,n,i){var o,s,a=this._keys;s=i>0?t+i:-1,Ember.beginPropertyChanges(this);for(o in a)a.hasOwnProperty(o)&&(s>0&&e(r,o,this,t,s),Ember.propertyDidChange(this,o));Ember.propertyDidChange(this._content,"@each"),Ember.endPropertyChanges(this)},didAddListener:function(e){s.test(e)&&this.beginObservingContentKey(e.slice(0,-7))},didRemoveListener:function(e){s.test(e)&&this.stopObservingContentKey(e.slice(0,-7))},beginObservingContentKey:function(r){var n=this._keys;if(n||(n=this._keys={}),n[r])n[r]++;else{n[r]=1;var i=this._content,o=t(i,"length");e(i,r,this,0,o)}},stopObservingContentKey:function(e){var n=this._keys;if(n&&n[e]>0&&--n[e]<=0){var i=this._content,o=t(i,"length");r(i,e,this,0,o)}},contentKeyWillChange:function(e,r){Ember.propertyWillChange(this,r)},contentKeyDidChange:function(e,r){Ember.propertyDidChange(this,r)}})}(),function(){var e=Ember.get;Ember.set;var r=Ember.Mixin.create(Ember.MutableArray,Ember.Observable,Ember.Copyable,{get:function(e){return"length"===e?this.length:"number"==typeof e?this[e]:this._super(e)},objectAt:function(e){return this[e]},replace:function(r,t,n){if(this.isFrozen)throw Ember.FROZEN_ERROR;var i=n?e(n,"length"):0;if(this.arrayContentWillChange(r,t,i),n&&n.length!==0){var o=[r,t].concat(n);this.splice.apply(this,o)}else this.splice(r,t);return this.arrayContentDidChange(r,t,i),this},unknownProperty:function(e,r){var t;return void 0!==r&&void 0===t&&(t=this[e]=r),t},indexOf:function(e,r){var t,n=this.length;for(r=void 0===r?0:0>r?Math.ceil(r):Math.floor(r),0>r&&(r+=n),t=r;n>t;t++)if(this[t]===e)return t;return-1},lastIndexOf:function(e,r){var t,n=this.length;for(r=void 0===r?n-1:0>r?Math.ceil(r):Math.floor(r),0>r&&(r+=n),t=r;t>=0;t--)if(this[t]===e)return t;return-1},copy:function(e){return e?this.map(function(e){return Ember.copy(e,!0)}):this.slice()}}),t=["length"];Ember.EnumerableUtils.forEach(r.keys(),function(e){Array.prototype[e]&&t.push(e)}),t.length>0&&(r=r.without.apply(r,t)),Ember.NativeArray=r,Ember.A=function(e){return void 0===e&&(e=[]),Ember.Array.detect(e)?e:Ember.NativeArray.apply(e)},Ember.NativeArray.activate=function(){r.apply(Array.prototype),Ember.A=function(e){return e||[]}},(Ember.EXTEND_PROTOTYPES===!0||Ember.EXTEND_PROTOTYPES.Array)&&Ember.NativeArray.activate()}(),function(){var e=Ember.get,r=Ember.set,t=Ember.guidFor,n=Ember.isNone,i=Ember.String.fmt;Ember.Set=Ember.CoreObject.extend(Ember.MutableEnumerable,Ember.Copyable,Ember.Freezable,{length:0,clear:function(){if(this.isFrozen)throw new Error(Ember.FROZEN_ERROR);var n=e(this,"length");if(0===n)return this;var i;this.enumerableContentWillChange(n,0),Ember.propertyWillChange(this,"firstObject"),Ember.propertyWillChange(this,"lastObject");for(var o=0;n>o;o++)i=t(this[o]),delete this[i],delete this[o];return r(this,"length",0),Ember.propertyDidChange(this,"firstObject"),Ember.propertyDidChange(this,"lastObject"),this.enumerableContentDidChange(n,0),this},isEqual:function(r){if(!Ember.Enumerable.detect(r))return!1;var t=e(this,"length");if(e(r,"length")!==t)return!1;for(;--t>=0;)if(!r.contains(this[t]))return!1;return!0},add:Ember.aliasMethod("addObject"),remove:Ember.aliasMethod("removeObject"),pop:function(){if(e(this,"isFrozen"))throw new Error(Ember.FROZEN_ERROR);var r=this.length>0?this[this.length-1]:null;return this.remove(r),r},push:Ember.aliasMethod("addObject"),shift:Ember.aliasMethod("pop"),unshift:Ember.aliasMethod("push"),addEach:Ember.aliasMethod("addObjects"),removeEach:Ember.aliasMethod("removeObjects"),init:function(e){this._super(),e&&this.addObjects(e)},nextObject:function(e){return this[e]},firstObject:Ember.computed(function(){return this.length>0?this[0]:void 0}),lastObject:Ember.computed(function(){return this.length>0?this[this.length-1]:void 0}),addObject:function(i){if(e(this,"isFrozen"))throw new Error(Ember.FROZEN_ERROR);if(n(i))return this;var o,s=t(i),a=this[s],u=e(this,"length");return a>=0&&u>a&&this[a]===i?this:(o=[i],this.enumerableContentWillChange(null,o),Ember.propertyWillChange(this,"lastObject"),u=e(this,"length"),this[s]=u,this[u]=i,r(this,"length",u+1),Ember.propertyDidChange(this,"lastObject"),this.enumerableContentDidChange(null,o),this)},removeObject:function(i){if(e(this,"isFrozen"))throw new Error(Ember.FROZEN_ERROR);if(n(i))return this;var o,s,a=t(i),u=this[a],c=e(this,"length"),h=0===u,l=u===c-1;return u>=0&&c>u&&this[u]===i&&(s=[i],this.enumerableContentWillChange(s,null),h&&Ember.propertyWillChange(this,"firstObject"),l&&Ember.propertyWillChange(this,"lastObject"),c-1>u&&(o=this[c-1],this[u]=o,this[t(o)]=u),delete this[a],delete this[c-1],r(this,"length",c-1),h&&Ember.propertyDidChange(this,"firstObject"),l&&Ember.propertyDidChange(this,"lastObject"),this.enumerableContentDidChange(s,null)),this},contains:function(e){return this[t(e)]>=0},copy:function(){var n=this.constructor,i=new n,o=e(this,"length");for(r(i,"length",o);--o>=0;)i[o]=this[o],i[t(this[o])]=o;return i},toString:function(){var e,r=this.length,t=[];for(e=0;r>e;e++)t[e]=this[e];return i("Ember.Set<%@>",[t.join(",")])}})}(),function(){var e=Ember.DeferredMixin;Ember.get;var r=Ember.Object.extend(e);r.reopenClass({promise:function(e,t){var n=r.create();return e.call(t,n),n}}),Ember.Deferred=r}(),function(){var e=Ember.ArrayPolyfills.forEach,r=Ember.ENV.EMBER_LOAD_HOOKS||{},t={};Ember.onLoad=function(e,n){var i;r[e]=r[e]||Ember.A(),r[e].pushObject(n),(i=t[e])&&n(i)},Ember.runLoadHooks=function(n,i){t[n]=i,r[n]&&e.call(r[n],function(e){e(i)})}}(),function(){var e=Ember.get;Ember.ControllerMixin=Ember.Mixin.create({isController:!0,target:null,container:null,parentController:null,store:null,model:Ember.computed.alias("content"),send:function(r){var t,n=[].slice.call(arguments,1);this[r]?this[r].apply(this,n):(t=e(this,"target"))&&t.send.apply(t,arguments)}}),Ember.Controller=Ember.Object.extend(Ember.ControllerMixin)}(),function(){var e=Ember.get,r=(Ember.set,Ember.EnumerableUtils.forEach);Ember.SortableMixin=Ember.Mixin.create(Ember.MutableEnumerable,{sortProperties:null,sortAscending:!0,orderBy:function(t,n){var i=0,o=e(this,"sortProperties"),s=e(this,"sortAscending");return r(o,function(r){0===i&&(i=Ember.compare(e(t,r),e(n,r)),0===i||s||(i=-1*i))}),i},destroy:function(){var t=e(this,"content"),n=e(this,"sortProperties");return t&&n&&r(t,function(e){r(n,function(r){Ember.removeObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this),this._super()},isSorted:Ember.computed.bool("sortProperties"),arrangedContent:Ember.computed("content","sortProperties.@each",function(){var t=e(this,"content"),n=e(this,"isSorted"),i=e(this,"sortProperties"),o=this;return t&&n?(t=t.slice(),t.sort(function(e,r){return o.orderBy(e,r)}),r(t,function(e){r(i,function(r){Ember.addObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this),Ember.A(t)):t}),_contentWillChange:Ember.beforeObserver(function(){var t=e(this,"content"),n=e(this,"sortProperties");t&&n&&r(t,function(e){r(n,function(r){Ember.removeObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this),this._super()},"content"),sortAscendingWillChange:Ember.beforeObserver(function(){this._lastSortAscending=e(this,"sortAscending")},"sortAscending"),sortAscendingDidChange:Ember.observer(function(){if(e(this,"sortAscending")!==this._lastSortAscending){var r=e(this,"arrangedContent");r.reverseObjects()}},"sortAscending"),contentArrayWillChange:function(t,n,i,o){var s=e(this,"isSorted");if(s){var a=e(this,"arrangedContent"),u=t.slice(n,n+i),c=e(this,"sortProperties");r(u,function(e){a.removeObject(e),r(c,function(r){Ember.removeObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this)}return this._super(t,n,i,o)},contentArrayDidChange:function(t,n,i,o){var s=e(this,"isSorted"),a=e(this,"sortProperties");if(s){var u=t.slice(n,n+o);r(u,function(e){this.insertItemSorted(e),r(a,function(r){Ember.addObserver(e,r,this,"contentItemSortPropertyDidChange")},this)},this)}return this._super(t,n,i,o)},insertItemSorted:function(r){var t=e(this,"arrangedContent"),n=e(t,"length"),i=this._binarySearch(r,0,n);t.insertAt(i,r)},contentItemSortPropertyDidChange:function(r){var t=e(this,"arrangedContent"),n=t.indexOf(r),i=t.objectAt(n-1),o=t.objectAt(n+1),s=i&&this.orderBy(r,i),a=o&&this.orderBy(r,o);(0>s||a>0)&&(t.removeObject(r),this.insertItemSorted(r))},_binarySearch:function(r,t,n){var i,o,s,a;return t===n?t:(a=e(this,"arrangedContent"),i=t+Math.floor((n-t)/2),o=a.objectAt(i),s=this.orderBy(o,r),0>s?this._binarySearch(r,i+1,n):s>0?this._binarySearch(r,t,i):i)}})}(),function(){var e=Ember.get,r=(Ember.set,Ember.EnumerableUtils.forEach),t=Ember.EnumerableUtils.replace;Ember.ArrayController=Ember.ArrayProxy.extend(Ember.ControllerMixin,Ember.SortableMixin,{itemController:null,lookupItemController:function(){return e(this,"itemController")},objectAtContent:function(r){var t=e(this,"length"),n=e(this,"arrangedContent"),i=n&&n.objectAt(r);if(r>=0&&t>r){var o=this.lookupItemController(i);if(o)return this.controllerAt(r,i,o)}return i},arrangedContentDidChange:function(){this._super(),this._resetSubControllers()},arrayContentDidChange:function(n,i,o){var s=e(this,"_subControllers"),a=s.slice(n,n+i);r(a,function(e){e&&e.destroy()}),t(s,n,i,new Array(o)),this._super(n,i,o)},init:function(){this.get("content")||Ember.defineProperty(this,"content",void 0,Ember.A()),this._super(),this.set("_subControllers",Ember.A())},controllerAt:function(r,t,n){var i=e(this,"container"),o=e(this,"_subControllers"),s=o[r];if(s||(s=i.lookup("controller:"+n,{singleton:!1}),o[r]=s),!s)throw new Error('Could not resolve itemController: "'+n+'"');return s.set("target",this),s.set("parentController",e(this,"parentController")||this),s.set("content",t),s},_subControllers:null,_resetSubControllers:function(){var t=e(this,"_subControllers");t&&r(t,function(e){e&&e.destroy()}),this.set("_subControllers",Ember.A())}})}(),function(){Ember.ObjectController=Ember.ObjectProxy.extend(Ember.ControllerMixin)}()})(),"undefined"==typeof location||location.hostname!=="localhost"&&location.hostname!=="127.0.0.1"||Ember.Logger.warn("You are running a production build of Ember on localhost and won't receive detailed error messages. If you want full error messages please use the non-minified build provided on the Ember website.");
|
data/dist/ember-runtime.prod.js
CHANGED
@@ -670,7 +670,7 @@ Ember.guidFor = function guidFor(obj) {
|
|
670
670
|
if (obj === undefined) return "(undefined)";
|
671
671
|
if (obj === null) return "(null)";
|
672
672
|
|
673
|
-
var
|
673
|
+
var ret;
|
674
674
|
var type = typeof obj;
|
675
675
|
|
676
676
|
// Don't allow prototype changes to String etc. to change the guidFor
|
@@ -1071,7 +1071,7 @@ if (needsFinallyFix) {
|
|
1071
1071
|
*/
|
1072
1072
|
if (needsFinallyFix) {
|
1073
1073
|
Ember.tryCatchFinally = function(tryable, catchable, finalizer, binding) {
|
1074
|
-
var result, finalResult, finalError
|
1074
|
+
var result, finalResult, finalError;
|
1075
1075
|
|
1076
1076
|
binding = binding || this;
|
1077
1077
|
|
@@ -1966,7 +1966,7 @@ var o_create = Ember.create,
|
|
1966
1966
|
metaFor = Ember.meta,
|
1967
1967
|
META_KEY = Ember.META_KEY,
|
1968
1968
|
/* listener flags */
|
1969
|
-
ONCE = 1, SUSPENDED = 2
|
1969
|
+
ONCE = 1, SUSPENDED = 2;
|
1970
1970
|
|
1971
1971
|
/*
|
1972
1972
|
The event system uses a series of nested hashes to store listeners on an
|
@@ -2583,11 +2583,11 @@ var endPropertyChanges = Ember.endPropertyChanges = function() {
|
|
2583
2583
|
});
|
2584
2584
|
```
|
2585
2585
|
|
2586
|
-
@method
|
2586
|
+
@method changeProperties
|
2587
2587
|
@param {Function} callback
|
2588
2588
|
@param [binding]
|
2589
2589
|
*/
|
2590
|
-
|
2590
|
+
Ember.changeProperties = function(cb, binding){
|
2591
2591
|
beginPropertyChanges();
|
2592
2592
|
tryFinally(cb, endPropertyChanges, binding);
|
2593
2593
|
};
|
@@ -2791,7 +2791,7 @@ var MANDATORY_SETTER = Ember.ENV.MANDATORY_SETTER;
|
|
2791
2791
|
@private
|
2792
2792
|
@constructor
|
2793
2793
|
*/
|
2794
|
-
|
2794
|
+
Ember.Descriptor = function() {};
|
2795
2795
|
|
2796
2796
|
// ..........................................................
|
2797
2797
|
// DEFINING PROPERTIES API
|
@@ -3352,7 +3352,7 @@ Ember.watchPath = function(obj, keyPath) {
|
|
3352
3352
|
};
|
3353
3353
|
|
3354
3354
|
Ember.unwatchPath = function(obj, keyPath) {
|
3355
|
-
var m = metaFor(obj), watching = m.watching
|
3355
|
+
var m = metaFor(obj), watching = m.watching;
|
3356
3356
|
|
3357
3357
|
if (watching[keyPath] === 1) {
|
3358
3358
|
watching[keyPath] = 0;
|
@@ -3897,7 +3897,6 @@ ComputedPropertyPrototype.teardown = function(obj, keyName) {
|
|
3897
3897
|
The function should accept two parameters, key and value. If value is not
|
3898
3898
|
undefined you should set the value first. In either case return the
|
3899
3899
|
current value of the property.
|
3900
|
-
|
3901
3900
|
@method computed
|
3902
3901
|
@for Ember
|
3903
3902
|
@param {Function} func The computed property function.
|
@@ -4139,7 +4138,7 @@ registerComputedWithProperties('or', function(properties) {
|
|
4139
4138
|
@for Ember
|
4140
4139
|
@param {String} dependentKey, [dependentKey...]
|
4141
4140
|
@return {Ember.ComputedProperty} computed property which returns
|
4142
|
-
the first
|
4141
|
+
the first truthy value of given list of properties.
|
4143
4142
|
*/
|
4144
4143
|
registerComputedWithProperties('any', function(properties) {
|
4145
4144
|
for (var key in properties) {
|
@@ -4189,6 +4188,48 @@ Ember.computed.alias = function(dependentKey) {
|
|
4189
4188
|
});
|
4190
4189
|
};
|
4191
4190
|
|
4191
|
+
/**
|
4192
|
+
@method computed.oneWay
|
4193
|
+
@for Ember
|
4194
|
+
@param {String} dependentKey
|
4195
|
+
@return {Ember.ComputedProperty} computed property which creates an
|
4196
|
+
one way computed property to the original value for property.
|
4197
|
+
|
4198
|
+
Where `computed.alias` aliases `get` and `set`, and allows for bidirectional
|
4199
|
+
data flow, `computed.oneWay` only provides an aliased `get`. The `set` will
|
4200
|
+
not mutate the upstream property, rather causes the current property to
|
4201
|
+
become the value set. This causes the downstream property to permentantly
|
4202
|
+
diverge from the upstream property.
|
4203
|
+
|
4204
|
+
```javascript
|
4205
|
+
User = Ember.Object.extend({
|
4206
|
+
firstName: null,
|
4207
|
+
lastName: null,
|
4208
|
+
nickName: Ember.computed.oneWay('firstName')
|
4209
|
+
});
|
4210
|
+
|
4211
|
+
user = User.create({
|
4212
|
+
firstName: 'Teddy',
|
4213
|
+
lastName: 'Zeenny'
|
4214
|
+
});
|
4215
|
+
|
4216
|
+
user.get('nickName');
|
4217
|
+
# 'Teddy'
|
4218
|
+
|
4219
|
+
user.set('nickName', 'TeddyBear');
|
4220
|
+
# 'TeddyBear'
|
4221
|
+
|
4222
|
+
user.get('firstName');
|
4223
|
+
# 'Teddy'
|
4224
|
+
```
|
4225
|
+
*/
|
4226
|
+
Ember.computed.oneWay = function(dependentKey) {
|
4227
|
+
return Ember.computed(dependentKey, function() {
|
4228
|
+
return get(this, dependentKey);
|
4229
|
+
});
|
4230
|
+
};
|
4231
|
+
|
4232
|
+
|
4192
4233
|
/**
|
4193
4234
|
@method computed.defaultTo
|
4194
4235
|
@for Ember
|
@@ -4218,8 +4259,6 @@ Ember.computed.defaultTo = function(defaultPath) {
|
|
4218
4259
|
var AFTER_OBSERVERS = ':change';
|
4219
4260
|
var BEFORE_OBSERVERS = ':before';
|
4220
4261
|
|
4221
|
-
var guidFor = Ember.guidFor;
|
4222
|
-
|
4223
4262
|
function changeEvent(keyName) {
|
4224
4263
|
return keyName+AFTER_OBSERVERS;
|
4225
4264
|
}
|
@@ -5378,7 +5417,7 @@ mixinProperties(Binding, {
|
|
5378
5417
|
|
5379
5418
|
You should consider using one way bindings anytime you have an object that
|
5380
5419
|
may be created frequently and you do not intend to change a property; only
|
5381
|
-
to monitor it for changes
|
5420
|
+
to monitor it for changes (such as in the example above).
|
5382
5421
|
|
5383
5422
|
## Adding Bindings Manually
|
5384
5423
|
|
@@ -5679,14 +5718,6 @@ function mergeMixins(mixins, m, descs, values, base, keys) {
|
|
5679
5718
|
}
|
5680
5719
|
}
|
5681
5720
|
|
5682
|
-
function writableReq(obj) {
|
5683
|
-
var m = Ember.meta(obj), req = m.required;
|
5684
|
-
if (!req || !m.hasOwnProperty('required')) {
|
5685
|
-
req = m.required = req ? o_create(req) : {};
|
5686
|
-
}
|
5687
|
-
return req;
|
5688
|
-
}
|
5689
|
-
|
5690
5721
|
var IS_BINDING = Ember.IS_BINDING = /^.+Binding$/;
|
5691
5722
|
|
5692
5723
|
function detectBinding(obj, key, value, m) {
|
@@ -7344,7 +7375,7 @@ var errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'n
|
|
7344
7375
|
@constructor
|
7345
7376
|
*/
|
7346
7377
|
Ember.Error = function() {
|
7347
|
-
var tmp = Error.
|
7378
|
+
var tmp = Error.apply(this, arguments);
|
7348
7379
|
|
7349
7380
|
// Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.
|
7350
7381
|
for (var idx = 0; idx < errorProps.length; idx++) {
|
@@ -7606,10 +7637,12 @@ Ember.String = {
|
|
7606
7637
|
/**
|
7607
7638
|
Returns the Capitalized form of a string
|
7608
7639
|
|
7609
|
-
|
7610
|
-
|
7611
|
-
|
7612
|
-
|
7640
|
+
```javascript
|
7641
|
+
'innerHTML'.capitalize() // 'InnerHTML'
|
7642
|
+
'action_name'.capitalize() // 'Action_name'
|
7643
|
+
'css-class-name'.capitalize() // 'Css-class-name'
|
7644
|
+
'my favorite items'.capitalize() // 'My favorite items'
|
7645
|
+
```
|
7613
7646
|
|
7614
7647
|
@method capitalize
|
7615
7648
|
@param {String} str
|
@@ -8777,7 +8810,7 @@ var get = Ember.get, set = Ember.set, isNone = Ember.isNone, map = Ember.Enumera
|
|
8777
8810
|
|
8778
8811
|
You can use the methods defined in this module to access and modify array
|
8779
8812
|
contents in a KVO-friendly way. You can also be notified whenever the
|
8780
|
-
membership
|
8813
|
+
membership of an array changes by changing the syntax of the property to
|
8781
8814
|
`.observes('*myProperty.[]')`.
|
8782
8815
|
|
8783
8816
|
To support `Ember.Array` in your own class, you must override two
|
@@ -8794,9 +8827,6 @@ var get = Ember.get, set = Ember.set, isNone = Ember.isNone, map = Ember.Enumera
|
|
8794
8827
|
*/
|
8795
8828
|
Ember.Array = Ember.Mixin.create(Ember.Enumerable, /** @scope Ember.Array.prototype */ {
|
8796
8829
|
|
8797
|
-
// compatibility
|
8798
|
-
isSCArray: true,
|
8799
|
-
|
8800
8830
|
/**
|
8801
8831
|
Your array must support the `length` property. Your replace methods should
|
8802
8832
|
set this property whenever it changes.
|
@@ -9253,8 +9283,7 @@ var get = Ember.get, set = Ember.set;
|
|
9253
9283
|
@extends Ember.Mixin
|
9254
9284
|
@since Ember 0.9
|
9255
9285
|
*/
|
9256
|
-
Ember.Copyable = Ember.Mixin.create(
|
9257
|
-
/** @scope Ember.Copyable.prototype */ {
|
9286
|
+
Ember.Copyable = Ember.Mixin.create(/** @scope Ember.Copyable.prototype */ {
|
9258
9287
|
|
9259
9288
|
/**
|
9260
9289
|
Override to return a copy of the receiver. Default implementation raises
|
@@ -9359,8 +9388,7 @@ var get = Ember.get, set = Ember.set;
|
|
9359
9388
|
@extends Ember.Mixin
|
9360
9389
|
@since Ember 0.9
|
9361
9390
|
*/
|
9362
|
-
Ember.Freezable = Ember.Mixin.create(
|
9363
|
-
/** @scope Ember.Freezable.prototype */ {
|
9391
|
+
Ember.Freezable = Ember.Mixin.create(/** @scope Ember.Freezable.prototype */ {
|
9364
9392
|
|
9365
9393
|
/**
|
9366
9394
|
Set to `true` when the object is frozen. Use this property to detect
|
@@ -9541,8 +9569,7 @@ var get = Ember.get, set = Ember.set;
|
|
9541
9569
|
@uses Ember.Array
|
9542
9570
|
@uses Ember.MutableEnumerable
|
9543
9571
|
*/
|
9544
|
-
Ember.MutableArray = Ember.Mixin.create(Ember.Array, Ember.MutableEnumerable
|
9545
|
-
/** @scope Ember.MutableArray.prototype */ {
|
9572
|
+
Ember.MutableArray = Ember.Mixin.create(Ember.Array, Ember.MutableEnumerable,/** @scope Ember.MutableArray.prototype */ {
|
9546
9573
|
|
9547
9574
|
/**
|
9548
9575
|
__Required.__ You must implement this method to apply this mixin.
|
@@ -9813,7 +9840,6 @@ Ember.MutableArray = Ember.Mixin.create(Ember.Array, Ember.MutableEnumerable,
|
|
9813
9840
|
|
9814
9841
|
});
|
9815
9842
|
|
9816
|
-
|
9817
9843
|
})();
|
9818
9844
|
|
9819
9845
|
|
@@ -9861,7 +9887,7 @@ var get = Ember.get, set = Ember.set;
|
|
9861
9887
|
For example:
|
9862
9888
|
|
9863
9889
|
```javascript
|
9864
|
-
Ember.Object.
|
9890
|
+
Ember.Object.extend({
|
9865
9891
|
valueObserver: function() {
|
9866
9892
|
// Executes whenever the "value" property changes
|
9867
9893
|
}.observes('value')
|
@@ -9880,8 +9906,8 @@ var get = Ember.get, set = Ember.set;
|
|
9880
9906
|
object.addObserver('propertyKey', targetObject, targetAction)
|
9881
9907
|
```
|
9882
9908
|
|
9883
|
-
This will call the `targetAction` method on the `targetObject`
|
9884
|
-
|
9909
|
+
This will call the `targetAction` method on the `targetObject` whenever
|
9910
|
+
the value of the `propertyKey` changes.
|
9885
9911
|
|
9886
9912
|
Note that if `propertyKey` is a computed property, the observer will be
|
9887
9913
|
called when any of the property dependencies are changed, even if the
|
@@ -10141,8 +10167,8 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10141
10167
|
|
10142
10168
|
This is the core method used to register an observer for a property.
|
10143
10169
|
|
10144
|
-
Once you call this method,
|
10145
|
-
will be notified. Note that the observers are triggered
|
10170
|
+
Once you call this method, any time the key's value is set, your observer
|
10171
|
+
will be notified. Note that the observers are triggered any time the
|
10146
10172
|
value is set, regardless of whether it has actually changed. Your
|
10147
10173
|
observer should be prepared to handle that.
|
10148
10174
|
|
@@ -10267,8 +10293,8 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10267
10293
|
|
10268
10294
|
@method incrementProperty
|
10269
10295
|
@param {String} keyName The name of the property to increment
|
10270
|
-
@param {
|
10271
|
-
@return {
|
10296
|
+
@param {Number} increment The amount to increment by. Defaults to 1
|
10297
|
+
@return {Number} The new property value
|
10272
10298
|
*/
|
10273
10299
|
incrementProperty: function(keyName, increment) {
|
10274
10300
|
if (Ember.isNone(increment)) { increment = 1; }
|
@@ -10286,12 +10312,12 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10286
10312
|
|
10287
10313
|
@method decrementProperty
|
10288
10314
|
@param {String} keyName The name of the property to decrement
|
10289
|
-
@param {
|
10290
|
-
@return {
|
10315
|
+
@param {Number} decrement The amount to decrement by. Defaults to 1
|
10316
|
+
@return {Number} The new property value
|
10291
10317
|
*/
|
10292
|
-
decrementProperty: function(keyName,
|
10293
|
-
if (Ember.isNone(
|
10294
|
-
set(this, keyName, (get(this, keyName) || 0)-
|
10318
|
+
decrementProperty: function(keyName, decrement) {
|
10319
|
+
if (Ember.isNone(decrement)) { decrement = 1; }
|
10320
|
+
set(this, keyName, (get(this, keyName) || 0)-decrement);
|
10295
10321
|
return get(this, keyName);
|
10296
10322
|
},
|
10297
10323
|
|
@@ -10300,7 +10326,7 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10300
10326
|
current value.
|
10301
10327
|
|
10302
10328
|
```javascript
|
10303
|
-
starship.toggleProperty('
|
10329
|
+
starship.toggleProperty('warpDriveEngaged');
|
10304
10330
|
```
|
10305
10331
|
|
10306
10332
|
@method toggleProperty
|
@@ -10332,7 +10358,6 @@ Ember.Observable = Ember.Mixin.create(/** @scope Ember.Observable.prototype */ {
|
|
10332
10358
|
}
|
10333
10359
|
});
|
10334
10360
|
|
10335
|
-
|
10336
10361
|
})();
|
10337
10362
|
|
10338
10363
|
|
@@ -10658,15 +10683,15 @@ Ember.DeferredMixin = Ember.Mixin.create({
|
|
10658
10683
|
deferred = get(this, '_deferred');
|
10659
10684
|
promise = deferred.promise;
|
10660
10685
|
|
10661
|
-
|
10686
|
+
function fulfillmentHandler(fulfillment) {
|
10662
10687
|
if (fulfillment === promise) {
|
10663
10688
|
return resolve(entity);
|
10664
10689
|
} else {
|
10665
10690
|
return resolve(fulfillment);
|
10666
10691
|
}
|
10667
|
-
}
|
10668
|
-
|
10669
|
-
|
10692
|
+
}
|
10693
|
+
|
10694
|
+
return promise.then(resolve && fulfillmentHandler, reject);
|
10670
10695
|
},
|
10671
10696
|
|
10672
10697
|
/**
|
@@ -11527,8 +11552,7 @@ var get = Ember.get, set = Ember.set;
|
|
11527
11552
|
@extends Ember.Object
|
11528
11553
|
@uses Ember.MutableArray
|
11529
11554
|
*/
|
11530
|
-
Ember.ArrayProxy = Ember.Object.extend(Ember.MutableArray
|
11531
|
-
/** @scope Ember.ArrayProxy.prototype */ {
|
11555
|
+
Ember.ArrayProxy = Ember.Object.extend(Ember.MutableArray,/** @scope Ember.ArrayProxy.prototype */ {
|
11532
11556
|
|
11533
11557
|
/**
|
11534
11558
|
The content array. Must be an object that implements `Ember.Array` and/or
|
@@ -11802,7 +11826,6 @@ Ember.ArrayProxy = Ember.Object.extend(Ember.MutableArray,
|
|
11802
11826
|
}
|
11803
11827
|
});
|
11804
11828
|
|
11805
|
-
|
11806
11829
|
})();
|
11807
11830
|
|
11808
11831
|
|
@@ -11902,8 +11925,7 @@ function contentPropertyDidChange(content, contentKey) {
|
|
11902
11925
|
@namespace Ember
|
11903
11926
|
@extends Ember.Object
|
11904
11927
|
*/
|
11905
|
-
Ember.ObjectProxy = Ember.Object.extend(
|
11906
|
-
/** @scope Ember.ObjectProxy.prototype */ {
|
11928
|
+
Ember.ObjectProxy = Ember.Object.extend(/** @scope Ember.ObjectProxy.prototype */ {
|
11907
11929
|
/**
|
11908
11930
|
The object whose properties will be forwarded.
|
11909
11931
|
|
@@ -12924,20 +12946,19 @@ Ember.ControllerMixin = Ember.Mixin.create({
|
|
12924
12946
|
|
12925
12947
|
container: null,
|
12926
12948
|
|
12949
|
+
parentController: null,
|
12950
|
+
|
12927
12951
|
store: null,
|
12928
12952
|
|
12929
12953
|
model: Ember.computed.alias('content'),
|
12930
12954
|
|
12931
12955
|
send: function(actionName) {
|
12932
|
-
var args = [].slice.call(arguments, 1), target
|
12933
|
-
bubble = true;
|
12956
|
+
var args = [].slice.call(arguments, 1), target;
|
12934
12957
|
|
12935
12958
|
if (this[actionName]) {
|
12936
12959
|
|
12937
|
-
|
12938
|
-
}
|
12939
|
-
|
12940
|
-
if (bubble && (target = get(this, 'target'))) {
|
12960
|
+
this[actionName].apply(this, args);
|
12961
|
+
} else if(target = get(this, 'target')) {
|
12941
12962
|
|
12942
12963
|
target.send.apply(target, arguments);
|
12943
12964
|
}
|
@@ -13268,6 +13289,10 @@ var get = Ember.get, set = Ember.set, forEach = Ember.EnumerableUtils.forEach,
|
|
13268
13289
|
});
|
13269
13290
|
```
|
13270
13291
|
|
13292
|
+
The itemController instances will have a `parentController` property set to
|
13293
|
+
either the the `parentController` property of the `ArrayController`
|
13294
|
+
or to the `ArrayController` instance itself.
|
13295
|
+
|
13271
13296
|
@class ArrayController
|
13272
13297
|
@namespace Ember
|
13273
13298
|
@extends Ember.ArrayProxy
|
@@ -13378,6 +13403,7 @@ Ember.ArrayController = Ember.ArrayProxy.extend(Ember.ControllerMixin,
|
|
13378
13403
|
}
|
13379
13404
|
|
13380
13405
|
subController.set('target', this);
|
13406
|
+
subController.set('parentController', get(this, 'parentController') || this);
|
13381
13407
|
subController.set('content', object);
|
13382
13408
|
|
13383
13409
|
return subController;
|
@@ -13449,6 +13475,6 @@ Ember Runtime
|
|
13449
13475
|
|
13450
13476
|
|
13451
13477
|
if (typeof location !== 'undefined' && (location.hostname === 'localhost' || location.hostname === '127.0.0.1')) {
|
13452
|
-
|
13478
|
+
Ember.Logger.warn("You are running a production build of Ember on localhost and won't receive detailed error messages. "+
|
13453
13479
|
"If you want full error messages please use the non-minified build provided on the Ember website.");
|
13454
13480
|
}
|