ember-source 4.1.0-alpha.2 → 4.1.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/blueprints/initializer/files/__root__/initializers/__name__.js +0 -1
  3. package/blueprints/instance-initializer/files/__root__/instance-initializers/__name__.js +0 -1
  4. package/build-metadata.json +3 -3
  5. package/dist/ember-template-compiler.js +25 -274
  6. package/dist/ember-template-compiler.map +1 -1
  7. package/dist/ember-testing.js +4 -1
  8. package/dist/ember-testing.map +1 -1
  9. package/dist/ember.debug.js +227 -1338
  10. package/dist/ember.debug.map +1 -1
  11. package/dist/header/license.js +1 -1
  12. package/dist/header/loader.js +1 -0
  13. package/dist/packages/@ember/-internals/container/index.js +17 -183
  14. package/dist/packages/@ember/-internals/environment/index.js +0 -12
  15. package/dist/packages/@ember/-internals/extension-support/lib/container_debug_adapter.js +7 -0
  16. package/dist/packages/@ember/-internals/glimmer/index.js +34 -71
  17. package/dist/packages/@ember/-internals/metal/index.js +65 -2
  18. package/dist/packages/@ember/-internals/routing/lib/ext/controller.js +1 -0
  19. package/dist/packages/@ember/-internals/routing/lib/services/router.js +16 -8
  20. package/dist/packages/@ember/-internals/routing/lib/system/route.js +2 -1
  21. package/dist/packages/@ember/-internals/routing/lib/system/router.js +10 -45
  22. package/dist/packages/@ember/-internals/runtime/lib/system/core_object.js +4 -90
  23. package/dist/packages/@ember/-internals/views/index.js +0 -1
  24. package/dist/packages/@ember/-internals/views/lib/system/event_dispatcher.js +22 -72
  25. package/dist/packages/@ember/application/instance.js +1 -22
  26. package/dist/packages/@ember/application/lib/application.js +7 -24
  27. package/dist/packages/@ember/canary-features/index.js +4 -2
  28. package/dist/packages/@ember/deprecated-features/index.js +0 -3
  29. package/dist/packages/@ember/engine/index.js +1 -5
  30. package/dist/packages/@ember/engine/instance.js +0 -4
  31. package/dist/packages/@ember/object/lib/computed/computed_macros.js +0 -373
  32. package/dist/packages/@ember/object/lib/computed/reduce_computed_macros.js +0 -351
  33. package/dist/packages/@ember/service/index.js +19 -5
  34. package/dist/packages/@glimmer/tracking/index.js +1 -1
  35. package/dist/packages/ember/index.js +2 -3
  36. package/dist/packages/ember/version.js +1 -1
  37. package/dist/packages/ember-testing/lib/adapters/qunit.js +1 -0
  38. package/docs/data.json +326 -368
  39. package/lib/index.js +11 -48
  40. package/package.json +33 -33
  41. package/dist/packages/@ember/-internals/views/lib/system/jquery.js +0 -26
  42. package/dist/packages/jquery/index.js +0 -2
@@ -156,8 +156,6 @@ const EngineInstance = EmberObject.extend(RegistryProxyMixin, ContainerProxyMixi
156
156
  singletons.forEach(key => this.register(key, parent.lookup(key), {
157
157
  instantiate: false
158
158
  }));
159
- this.inject('view', '_environment', '-environment:main');
160
- this.inject('route', '_environment', '-environment:main');
161
159
  }
162
160
 
163
161
  });
@@ -173,8 +171,6 @@ EngineInstance.reopenClass({
173
171
  if (!options) {
174
172
  return;
175
173
  }
176
-
177
- registry.injection('view', '_environment', '-environment:main');
178
174
  }
179
175
 
180
176
  });
@@ -67,25 +67,6 @@ function generateComputedWithPredicate(name, predicate) {
67
67
  todoList.isDone; // true
68
68
  ```
69
69
 
70
- Classic Class Example:
71
-
72
- ```javascript
73
- import EmberObject, { set } from '@ember/object';
74
- import { empty } from '@ember/object/computed';
75
-
76
- let ToDoList = EmberObject.extend({
77
- isDone: empty('todos')
78
- });
79
-
80
- let todoList = ToDoList.create({
81
- todos: ['Unit Test', 'Documentation', 'Release']
82
- });
83
-
84
- todoList.isDone; // false
85
- set(todoList, 'todos', []);
86
- todoList.isDone; // true
87
- ```
88
-
89
70
  @since 1.6.0
90
71
  @method empty
91
72
  @static
@@ -132,25 +113,6 @@ export function empty(dependentKey) {
132
113
  hamster.hasStuff; // false
133
114
  ```
134
115
 
135
- Classic Class Example:
136
-
137
- ```javascript
138
- import EmberObject, { set } from '@ember/object';
139
- import { notEmpty } from '@ember/object/computed';
140
-
141
- let Hamster = EmberObject.extend({
142
- hasStuff: notEmpty('backpack')
143
- });
144
-
145
- let hamster = Hamster.create({
146
- backpack: ['Food', 'Sleeping Bag', 'Tent']
147
- });
148
-
149
- hamster.hasStuff; // true
150
- set(hamster, 'backpack', []);
151
- hamster.hasStuff; // false
152
- ```
153
-
154
116
  @method notEmpty
155
117
  @static
156
118
  @for @ember/object/computed
@@ -190,27 +152,6 @@ export function notEmpty(dependentKey) {
190
152
  hamster.isHungry; // true
191
153
  ```
192
154
 
193
- Classic Class Example:
194
-
195
- ```javascript
196
- import EmberObject, { set } from '@ember/object';
197
- import { none } from '@ember/object/computed';
198
-
199
- let Hamster = EmberObject.extend({
200
- isHungry: none('food')
201
- });
202
-
203
- let hamster = Hamster.create();
204
-
205
- hamster.isHungry; // true
206
-
207
- set(hamster, 'food', 'Banana');
208
- hamster.isHungry; // false
209
-
210
- set(hamster, 'food', null);
211
- hamster.isHungry; // true
212
- ```
213
-
214
155
  @method none
215
156
  @static
216
157
  @for @ember/object/computed
@@ -249,25 +190,6 @@ export function none(dependentKey) {
249
190
  user.isAnonymous; // false
250
191
  ```
251
192
 
252
- Classic Class Example:
253
-
254
- ```javascript
255
- import EmberObject, { set } from '@ember/object';
256
- import { not } from '@ember/object/computed';
257
-
258
- let User = EmberObject.extend({
259
- loggedIn: false,
260
-
261
- isAnonymous: not('loggedIn')
262
- });
263
-
264
- let user = User.create();
265
-
266
- user.isAnonymous; // true
267
- set(user, 'loggedIn', true);
268
- user.isAnonymous; // false
269
- ```
270
-
271
193
  @method not
272
194
  @static
273
195
  @for @ember/object/computed
@@ -312,31 +234,6 @@ export function not(dependentKey) {
312
234
  hamster.hasBananas; // false
313
235
  ```
314
236
 
315
- Classic Class Example:
316
-
317
- ```javascript
318
- import EmberObject, { set } from '@ember/object';
319
- import { bool } from '@ember/object/computed';
320
-
321
-
322
- let Hamster = EmberObject.extend({
323
- hasBananas: bool('numBananas')
324
- });
325
-
326
- let hamster = Hamster.create();
327
-
328
- hamster.hasBananas; // false
329
-
330
- set(hamster, 'numBananas', 0);
331
- hamster.hasBananas; // false
332
-
333
- set(hamster, 'numBananas', 1);
334
- hamster.hasBananas; // true
335
-
336
- set(hamster, 'numBananas', null);
337
- hamster.hasBananas; // false
338
- ```
339
-
340
237
  @method bool
341
238
  @static
342
239
  @for @ember/object/computed
@@ -378,27 +275,6 @@ export function bool(dependentKey) {
378
275
  user.hasValidEmail; // true
379
276
  ```
380
277
 
381
- Classic Class Example:
382
-
383
- ```javascript
384
- import EmberObject, { set } from '@ember/object';
385
- import { match } from '@ember/object/computed';
386
-
387
- let User = EmberObject.extend({
388
- hasValidEmail: match('email', /^.+@.+\..+$/)
389
- });
390
-
391
- let user = User.create();
392
-
393
- user.hasValidEmail; // false
394
-
395
- set(user, 'email', '');
396
- user.hasValidEmail; // false
397
-
398
- set(user, 'email', 'ember_hamster@example.com');
399
- user.hasValidEmail; // true
400
- ```
401
-
402
278
  @method match
403
279
  @static
404
280
  @for @ember/object/computed
@@ -441,27 +317,6 @@ export function match(dependentKey, regexp) {
441
317
  hamster.satisfied; // false
442
318
  ```
443
319
 
444
- Classic Class Example:
445
-
446
- ```javascript
447
- import EmberObject, { set } from '@ember/object';
448
- import { equal } from '@ember/object/computed';
449
-
450
- let Hamster = EmberObject.extend({
451
- satisfied: equal('percentCarrotsEaten', 100)
452
- });
453
-
454
- let hamster = Hamster.create();
455
-
456
- hamster.satisfied; // false
457
-
458
- set(hamster, 'percentCarrotsEaten', 100);
459
- hamster.satisfied; // true
460
-
461
- set(hamster, 'percentCarrotsEaten', 50);
462
- hamster.satisfied; // false
463
- ```
464
-
465
320
  @method equal
466
321
  @static
467
322
  @for @ember/object/computed
@@ -503,27 +358,6 @@ export function equal(dependentKey, value) {
503
358
  hamster.hasTooManyBananas; // true
504
359
  ```
505
360
 
506
- Classic Class Example:
507
-
508
- ```javascript
509
- import EmberObject, { set } from '@ember/object';
510
- import { gt } from '@ember/object/computed';
511
-
512
- let Hamster = EmberObject.extend({
513
- hasTooManyBananas: gt('numBananas', 10)
514
- });
515
-
516
- let hamster = Hamster.create();
517
-
518
- hamster.hasTooManyBananas; // false
519
-
520
- set(hamster, 'numBananas', 3);
521
- hamster.hasTooManyBananas; // false
522
-
523
- set(hamster, 'numBananas', 11);
524
- hamster.hasTooManyBananas; // true
525
- ```
526
-
527
361
  @method gt
528
362
  @static
529
363
  @for @ember/object/computed
@@ -565,27 +399,6 @@ export function gt(dependentKey, value) {
565
399
  hamster.hasTooManyBananas; // true
566
400
  ```
567
401
 
568
- Classic Class Example:
569
-
570
- ```javascript
571
- import EmberObject, { set } from '@ember/object';
572
- import { gte } from '@ember/object/computed';
573
-
574
- let Hamster = EmberObject.extend({
575
- hasTooManyBananas: gte('numBananas', 10)
576
- });
577
-
578
- let hamster = Hamster.create();
579
-
580
- hamster.hasTooManyBananas; // false
581
-
582
- set(hamster, 'numBananas', 3);
583
- hamster.hasTooManyBananas; // false
584
-
585
- set(hamster, 'numBananas', 10);
586
- hamster.hasTooManyBananas; // true
587
- ```
588
-
589
402
  @method gte
590
403
  @static
591
404
  @for @ember/object/computed
@@ -627,27 +440,6 @@ export function gte(dependentKey, value) {
627
440
  hamster.needsMoreBananas; // true
628
441
  ```
629
442
 
630
- Classic Class Example:
631
-
632
- ```javascript
633
- import EmberObject, { set } from '@ember/object';
634
- import { lt } from '@ember/object/computed';
635
-
636
- let Hamster = EmberObject.extend({
637
- needsMoreBananas: lt('numBananas', 3)
638
- });
639
-
640
- let hamster = Hamster.create();
641
-
642
- hamster.needsMoreBananas; // true
643
-
644
- set(hamster, 'numBananas', 3);
645
- hamster.needsMoreBananas; // false
646
-
647
- set(hamster, 'numBananas', 2);
648
- hamster.needsMoreBananas; // true
649
- ```
650
-
651
443
  @method lt
652
444
  @static
653
445
  @for @ember/object/computed
@@ -689,27 +481,6 @@ export function lt(dependentKey, value) {
689
481
  hamster.needsMoreBananas; // true
690
482
  ```
691
483
 
692
- Classic Class Example:
693
-
694
- ```javascript
695
- import EmberObject, { set } from '@ember/object';
696
- import { lte } from '@ember/object/computed';
697
-
698
- let Hamster = EmberObject.extend({
699
- needsMoreBananas: lte('numBananas', 3)
700
- });
701
-
702
- let hamster = Hamster.create();
703
-
704
- hamster.needsMoreBananas; // true
705
-
706
- set(hamster, 'numBananas', 5);
707
- hamster.needsMoreBananas; // false
708
-
709
- set(hamster, 'numBananas', 3);
710
- hamster.needsMoreBananas; // true
711
- ```
712
-
713
484
  @method lte
714
485
  @static
715
486
  @for @ember/object/computed
@@ -762,34 +533,6 @@ export function lte(dependentKey, value) {
762
533
  tomster.readyForHike; // null
763
534
  ```
764
535
 
765
- Classic Class Example:
766
-
767
- ```javascript
768
- import EmberObject, { set } from '@ember/object';
769
- import { and } from '@ember/object/computed';
770
-
771
- let Hamster = EmberObject.extend({
772
- readyForCamp: and('hasTent', 'hasBackpack'),
773
- readyForHike: and('hasWalkingStick', 'hasBackpack')
774
- });
775
-
776
- let tomster = Hamster.create();
777
-
778
- tomster.readyForCamp; // false
779
-
780
- set(tomster, 'hasTent', true);
781
- tomster.readyForCamp; // false
782
-
783
- set(tomster, 'hasBackpack', true);
784
- tomster.readyForCamp; // true
785
-
786
- set(tomster, 'hasBackpack', 'Yes');
787
- tomster.readyForCamp; // 'Yes'
788
-
789
- set(tomster, 'hasWalkingStick', null);
790
- tomster.readyForHike; // null
791
- ```
792
-
793
536
  @method and
794
537
  @static
795
538
  @for @ember/object/computed
@@ -833,31 +576,6 @@ export const and = generateComputedWithPredicate('and', value => value);
833
576
  tomster.readyForBeach; // 'Check'
834
577
  ```
835
578
 
836
- Classic Class Example:
837
-
838
- ```javascript
839
- import EmberObject, { set } from '@ember/object';
840
- import { or } from '@ember/object/computed';
841
-
842
- let Hamster = EmberObject.extend({
843
- readyForRain: or('hasJacket', 'hasUmbrella'),
844
- readyForBeach: or('hasSunscreen', 'hasUmbrella')
845
- });
846
-
847
- let tomster = Hamster.create();
848
-
849
- tomster.readyForRain; // undefined
850
-
851
- set(tomster, 'hasUmbrella', true);
852
- tomster.readyForRain; // true
853
-
854
- set(tomster, 'hasJacket', 'Yes');
855
- tomster.readyForRain; // 'Yes'
856
-
857
- set(tomster, 'hasSunscreen', 'Check');
858
- tomster.readyForBeach; // 'Check'
859
- ```
860
-
861
579
  @method or
862
580
  @static
863
581
  @for @ember/object/computed
@@ -894,27 +612,6 @@ export const or = generateComputedWithPredicate('or', value => !value);
894
612
  alex.name; // '@machty'
895
613
  ```
896
614
 
897
- Classic Class Example:
898
-
899
- ```javascript
900
- import EmberObject, { set } from '@ember/object';
901
- import { alias } from '@ember/object/computed';
902
-
903
- let Person = EmberObject.extend({
904
- name: 'Alex Matchneer',
905
-
906
- nomen: alias('name')
907
- });
908
-
909
- let alex = Person.create();
910
-
911
- alex.nomen; // 'Alex Matchneer'
912
- alex.name; // 'Alex Matchneer'
913
-
914
- set(alex, 'nomen', '@machty');
915
- alex.name; // '@machty'
916
- ```
917
-
918
615
  @method alias
919
616
  @static
920
617
  @for @ember/object/computed
@@ -955,31 +652,6 @@ export const or = generateComputedWithPredicate('or', value => !value);
955
652
  teddy.nickName; // 'TeddyBear'
956
653
  ```
957
654
 
958
- Classic Class Example:
959
-
960
- ```javascript
961
- import EmberObject, { set } from '@ember/object';
962
- import { oneWay } from '@ember/object/computed';
963
-
964
- let User = EmberObject.extend({
965
- firstName: null,
966
- lastName: null,
967
-
968
- nickName: oneWay('firstName')
969
- });
970
-
971
- let teddy = User.create({
972
- firstName: 'Teddy',
973
- lastName: 'Zeenny'
974
- });
975
-
976
- teddy.nickName; // 'Teddy'
977
-
978
- set(teddy, 'nickName', 'TeddyBear'); // 'TeddyBear'
979
- teddy.firstName; // 'Teddy'
980
- teddy.nickName; // 'TeddyBear'
981
- ```
982
-
983
655
  @method oneWay
984
656
  @static
985
657
  @for @ember/object/computed
@@ -1039,32 +711,6 @@ export function oneWay(dependentKey) {
1039
711
  teddy.firstName; // 'Teddy'
1040
712
  ```
1041
713
 
1042
- Classic Class Example:
1043
-
1044
- ```javascript
1045
- import EmberObject, { set } from '@ember/object';
1046
- import { readOnly } from '@ember/object/computed';
1047
-
1048
- let User = EmberObject.extend({
1049
- firstName: null,
1050
- lastName: null,
1051
-
1052
- nickName: readOnly('firstName')
1053
- });
1054
-
1055
- let teddy = User.create({
1056
- firstName: 'Teddy',
1057
- lastName: 'Zeenny'
1058
- });
1059
-
1060
- teddy.nickName; // 'Teddy'
1061
-
1062
- set(teddy, 'nickName', 'TeddyBear'); // throws Exception
1063
- // throw new EmberError('Cannot Set: nickName on: <User:ember27288>' );`
1064
-
1065
- teddy.firstName; // 'Teddy'
1066
- ```
1067
-
1068
714
  @method readOnly
1069
715
  @static
1070
716
  @for @ember/object/computed
@@ -1104,25 +750,6 @@ export function readOnly(dependentKey) {
1104
750
  hamster.cavendishCount; // 5
1105
751
  ```
1106
752
 
1107
- Classic Class Example:
1108
-
1109
- ```javascript
1110
- import EmberObject, { set } from '@ember/object';
1111
- import { deprecatingAlias } from '@ember/object/computed';
1112
-
1113
- let Hamster = EmberObject.extend({
1114
- bananaCount: deprecatingAlias('cavendishCount', {
1115
- id: 'hamster.deprecate-banana',
1116
- until: '3.0.0'
1117
- })
1118
- });
1119
-
1120
- let hamster = Hamster.create();
1121
-
1122
- set(hamster, 'bananaCount', 5); // Prints a deprecation warning.
1123
- hamster.cavendishCount; // 5
1124
- ```
1125
-
1126
753
  @method deprecatingAlias
1127
754
  @static
1128
755
  @for @ember/object/computed