ember-source 4.4.0-alpha.3 → 4.4.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 (89) hide show
  1. package/CHANGELOG.md +5 -1
  2. package/blueprints/-addon-import.js +9 -0
  3. package/blueprints/-maybe-polyfill-typescript-blueprints.js +17 -0
  4. package/blueprints/acceptance-test/index.js +8 -0
  5. package/blueprints/acceptance-test/mocha-rfc-232-files/tests/acceptance/{__name__-test.js → __name__-test.ts} +1 -1
  6. package/blueprints/acceptance-test/qunit-rfc-232-files/tests/acceptance/{__name__-test.js → __name__-test.ts} +1 -1
  7. package/blueprints/component/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  8. package/blueprints/component/index.js +6 -1
  9. package/blueprints/component-addon/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  10. package/blueprints/component-addon/index.js +9 -0
  11. package/blueprints/component-class/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  12. package/blueprints/component-class/index.js +5 -0
  13. package/blueprints/component-class-addon/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  14. package/blueprints/component-class-addon/index.js +9 -0
  15. package/blueprints/component-test/index.js +8 -0
  16. package/blueprints/component-test/mocha-rfc-232-files/__root__/__testType__/__path__/{__test__.js → __test__.ts} +2 -2
  17. package/blueprints/component-test/qunit-rfc-232-files/__root__/__testType__/__path__/{__test__.js → __test__.ts} +3 -3
  18. package/blueprints/controller/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  19. package/blueprints/controller/index.js +10 -0
  20. package/blueprints/controller-test/index.js +10 -0
  21. package/blueprints/controller-test/mocha-rfc-232-files/__root__/__testType__/__path__/{__test__.js → __test__.ts} +1 -1
  22. package/blueprints/controller-test/qunit-rfc-232-files/__root__/__testType__/__path__/{__test__.js → __test__.ts} +1 -1
  23. package/blueprints/helper/files/__root__/__collection__/{__name__.js → __name__.ts} +0 -0
  24. package/blueprints/helper/index.js +9 -0
  25. package/blueprints/helper-addon/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  26. package/blueprints/helper-test/index.js +9 -0
  27. package/blueprints/helper-test/mocha-rfc-232-files/__root__/__testType__/__collection__/{__name__-test.js → __name__-test.ts} +1 -1
  28. package/blueprints/helper-test/qunit-rfc-232-files/__root__/__testType__/__collection__/{__name__-test.js → __name__-test.ts} +1 -1
  29. package/blueprints/initializer/files/__root__/initializers/__name__.ts +6 -0
  30. package/blueprints/initializer/index.js +9 -0
  31. package/blueprints/initializer-addon/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  32. package/blueprints/initializer-test/index.js +8 -0
  33. package/blueprints/initializer-test/mocha-rfc-232-files/__root__/__testType__/__path__/{__name__-test.js → __name__-test.ts} +3 -1
  34. package/blueprints/initializer-test/qunit-rfc-232-files/__root__/__testType__/__path__/__name__-test.ts +37 -0
  35. package/blueprints/instance-initializer/files/__root__/instance-initializers/__name__.ts +6 -0
  36. package/blueprints/instance-initializer/index.js +9 -0
  37. package/blueprints/instance-initializer-addon/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  38. package/blueprints/instance-initializer-test/index.js +8 -0
  39. package/blueprints/instance-initializer-test/mocha-rfc-232-files/__root__/__testType__/__path__/{__name__-test.js → __name__-test.ts} +5 -1
  40. package/blueprints/instance-initializer-test/qunit-rfc-232-files/__root__/__testType__/__path__/{__name__-test.js → __name__-test.ts} +6 -1
  41. package/blueprints/route/files/__root__/__path__/{__name__.js → __name__.ts} +2 -4
  42. package/blueprints/route/index.js +9 -0
  43. package/blueprints/route-addon/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  44. package/blueprints/route-addon/index.js +9 -0
  45. package/blueprints/route-test/index.js +9 -0
  46. package/blueprints/route-test/mocha-rfc-232-files/__root__/__testType__/__path__/{__test__.js → __test__.ts} +1 -1
  47. package/blueprints/route-test/qunit-rfc-232-files/__root__/__testType__/__path__/{__test__.js → __test__.ts} +1 -1
  48. package/blueprints/service/files/__root__/__path__/{__name__.js → __name__.ts} +0 -0
  49. package/blueprints/service/index.js +10 -0
  50. package/blueprints/service-test/index.js +8 -0
  51. package/blueprints/service-test/mocha-rfc-232-files/__root__/__testType__/__path__/{__test__.js → __test__.ts} +1 -1
  52. package/blueprints/service-test/qunit-rfc-232-files/__root__/__testType__/__path__/{__test__.js → __test__.ts} +1 -1
  53. package/blueprints/util/files/__root__/utils/{__name__.js → __name__.ts} +0 -0
  54. package/blueprints/util/index.js +10 -0
  55. package/blueprints/util-test/index.js +8 -0
  56. package/blueprints/util-test/mocha-rfc-232-files/__root__/__testType__/{__name__-test.js → __name__-test.ts} +0 -0
  57. package/blueprints/util-test/qunit-rfc-232-files/__root__/__testType__/{__name__-test.js → __name__-test.ts} +0 -0
  58. package/build-metadata.json +3 -3
  59. package/dist/ember-template-compiler.js +15 -13
  60. package/dist/ember-template-compiler.map +1 -1
  61. package/dist/ember-testing.js +8 -4
  62. package/dist/ember-testing.map +1 -1
  63. package/dist/ember.debug.js +478 -1149
  64. package/dist/ember.debug.map +1 -1
  65. package/dist/header/license.js +1 -1
  66. package/dist/packages/@ember/-internals/container/index.js +1 -25
  67. package/dist/packages/@ember/-internals/extension-support/lib/container_debug_adapter.js +10 -19
  68. package/dist/packages/@ember/-internals/extension-support/lib/data_adapter.js +113 -112
  69. package/dist/packages/@ember/-internals/glimmer/index.js +117 -749
  70. package/dist/packages/@ember/-internals/metal/index.js +17 -22
  71. package/dist/packages/@ember/-internals/routing/lib/services/router.js +140 -145
  72. package/dist/packages/@ember/-internals/routing/lib/system/router.js +3 -1
  73. package/dist/packages/@ember/-internals/runtime/lib/ext/rsvp.js +8 -4
  74. package/dist/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +1 -1
  75. package/dist/packages/@ember/-internals/runtime/lib/mixins/array.js +1 -1
  76. package/dist/packages/@ember/-internals/runtime/lib/mixins/promise_proxy.js +16 -16
  77. package/dist/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +8 -8
  78. package/dist/packages/@ember/-internals/views/lib/system/utils.js +4 -2
  79. package/dist/packages/@ember/-internals/views/lib/views/core_view.js +5 -22
  80. package/dist/packages/@ember/canary-features/index.js +1 -5
  81. package/dist/packages/@ember/debug/index.js +1 -1
  82. package/dist/packages/@ember/debug/lib/deprecate.js +6 -2
  83. package/dist/packages/@ember/renderer/index.js +21 -0
  84. package/dist/packages/ember/version.js +1 -1
  85. package/docs/data.json +447 -260
  86. package/package.json +15 -12
  87. package/blueprints/initializer/files/__root__/initializers/__name__.js +0 -5
  88. package/blueprints/initializer-test/qunit-rfc-232-files/__root__/__testType__/__path__/__name__-test.js +0 -34
  89. package/blueprints/instance-initializer/files/__root__/instance-initializers/__name__.js +0 -5
@@ -6,7 +6,7 @@
6
6
  * Portions Copyright 2008-2011 Apple Inc. All rights reserved.
7
7
  * @license Licensed under MIT license
8
8
  * See https://raw.github.com/emberjs/ember.js/master/LICENSE
9
- * @version 4.4.0-alpha.3
9
+ * @version 4.4.0-alpha.6
10
10
  */
11
11
  /* eslint-disable no-var */
12
12
 
@@ -565,10 +565,6 @@ define("@ember/-internals/container/index", ["exports", "@ember/-internals/owner
565
565
  this.madeToString = undefined;
566
566
  this.injections = undefined;
567
567
  setFactoryFor(this, this);
568
-
569
- if (isInstantiatable(container, fullName)) {
570
- setFactoryFor(factory, this);
571
- }
572
568
  }
573
569
 
574
570
  toString() {
@@ -588,14 +584,10 @@ define("@ember/-internals/container/index", ["exports", "@ember/-internals/owner
588
584
  throw new Error(`Cannot create new instances after the owner has been destroyed (you attempted to create ${this.fullName})`);
589
585
  }
590
586
 
591
- var props = {};
587
+ var props = options ? Object.assign({}, options) : {};
592
588
  (0, _owner.setOwner)(props, container.owner);
593
589
  setFactoryFor(props, this);
594
590
 
595
- if (options !== undefined) {
596
- props = Object.assign({}, props, options);
597
- }
598
-
599
591
  if (true
600
592
  /* DEBUG */
601
593
  ) {
@@ -704,22 +696,6 @@ define("@ember/-internals/container/index", ["exports", "@ember/-internals/owner
704
696
  container(options) {
705
697
  return new Container(this, options);
706
698
  }
707
- /**
708
- Registers a factory for later injection.
709
- Example:
710
- ```javascript
711
- let registry = new Registry();
712
- registry.register('model:user', Person, {singleton: false });
713
- registry.register('fruit:favorite', Orange);
714
- registry.register('communication:main', Email, {singleton: false});
715
- ```
716
- @private
717
- @method register
718
- @param {String} fullName
719
- @param {Function} factory
720
- @param {Object} options
721
- */
722
-
723
699
 
724
700
  register(fullName, factory, options) {
725
701
  if (options === void 0) {
@@ -1497,23 +1473,11 @@ define("@ember/-internals/extension-support/lib/container_debug_adapter", ["expo
1497
1473
  @since 1.5.0
1498
1474
  @public
1499
1475
  */
1500
- var _default = _runtime.Object.extend({
1501
- init() {
1502
- this._super(...arguments);
1503
-
1476
+ class ContainerDebugAdapter extends _runtime.Object {
1477
+ constructor(owner) {
1478
+ super(owner);
1504
1479
  this.resolver = (0, _owner.getOwner)(this).lookup('resolver-for-debugging:main');
1505
- },
1506
-
1507
- /**
1508
- The resolver instance of the application
1509
- being debugged. This property will be injected
1510
- on creation.
1511
- @property resolver
1512
- @default null
1513
- @public
1514
- */
1515
- resolver: null,
1516
-
1480
+ }
1517
1481
  /**
1518
1482
  Returns true if it is possible to catalog a list of available
1519
1483
  classes in the resolver for a given type.
@@ -1522,14 +1486,15 @@ define("@ember/-internals/extension-support/lib/container_debug_adapter", ["expo
1522
1486
  @return {boolean} whether a list is available for this type.
1523
1487
  @public
1524
1488
  */
1489
+
1490
+
1525
1491
  canCatalogEntriesByType(type) {
1526
1492
  if (type === 'model' || type === 'template') {
1527
1493
  return false;
1528
1494
  }
1529
1495
 
1530
1496
  return true;
1531
- },
1532
-
1497
+ }
1533
1498
  /**
1534
1499
  Returns the available classes a given type.
1535
1500
  @method catalogEntriesByType
@@ -1537,6 +1502,8 @@ define("@ember/-internals/extension-support/lib/container_debug_adapter", ["expo
1537
1502
  @return {Array} An array of strings.
1538
1503
  @public
1539
1504
  */
1505
+
1506
+
1540
1507
  catalogEntriesByType(type) {
1541
1508
  var namespaces = (0, _runtime.A)(_runtime.Namespace.NAMESPACES);
1542
1509
  var types = (0, _runtime.A)();
@@ -1559,9 +1526,9 @@ define("@ember/-internals/extension-support/lib/container_debug_adapter", ["expo
1559
1526
  return types;
1560
1527
  }
1561
1528
 
1562
- });
1529
+ }
1563
1530
 
1564
- _exports.default = _default;
1531
+ _exports.default = ContainerDebugAdapter;
1565
1532
  });
1566
1533
  define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@ember/-internals/owner", "@ember/runloop", "@ember/-internals/metal", "@ember/string", "@ember/-internals/runtime", "@glimmer/validator"], function (_exports, _owner, _runloop, _metal, _string, _runtime, _validator) {
1567
1534
  "use strict";
@@ -1583,12 +1550,12 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1583
1550
 
1584
1551
  class RecordsWatcher {
1585
1552
  constructor(records, recordsAdded, recordsUpdated, recordsRemoved, wrapRecord, release) {
1553
+ this.wrapRecord = wrapRecord;
1554
+ this.release = release;
1586
1555
  this.recordCaches = new Map();
1587
1556
  this.added = [];
1588
1557
  this.updated = [];
1589
1558
  this.removed = [];
1590
- this.release = release;
1591
- this.wrapRecord = wrapRecord;
1592
1559
  this.recordArrayCache = (0, _validator.createCache)(() => {
1593
1560
  var seen = new Set(); // Track `[]` for legacy support
1594
1561
 
@@ -1600,7 +1567,7 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1600
1567
  // should not be polled again in the future
1601
1568
 
1602
1569
  (0, _validator.untrack)(() => {
1603
- this.recordCaches.forEach((cache, record) => {
1570
+ this.recordCaches.forEach((_cache, record) => {
1604
1571
  if (!seen.has(record)) {
1605
1572
  this.removed.push(wrapRecord(record));
1606
1573
  this.recordCaches.delete(record);
@@ -1652,6 +1619,7 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1652
1619
 
1653
1620
  class TypeWatcher {
1654
1621
  constructor(records, onChange, release) {
1622
+ this.release = release;
1655
1623
  var hasBeenAccessed = false;
1656
1624
  this.cache = (0, _validator.createCache)(() => {
1657
1625
  // Empty iteration, we're doing this just
@@ -1720,49 +1688,47 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1720
1688
  */
1721
1689
 
1722
1690
 
1723
- var _default = _runtime.Object.extend({
1724
- init() {
1725
- this._super(...arguments);
1726
-
1727
- this.containerDebugAdapter = (0, _owner.getOwner)(this).lookup('container-debug-adapter:main');
1691
+ class DataAdapter extends _runtime.Object {
1692
+ constructor(owner) {
1693
+ super(owner);
1728
1694
  this.releaseMethods = (0, _runtime.A)();
1729
1695
  this.recordsWatchers = new Map();
1730
1696
  this.typeWatchers = new Map();
1731
1697
  this.flushWatchers = null;
1732
- },
1733
-
1734
- /**
1735
- The container-debug-adapter which is used
1736
- to list all models.
1737
- @property containerDebugAdapter
1738
- @default undefined
1739
- @since 1.5.0
1740
- @public
1741
- **/
1698
+ /**
1699
+ The container-debug-adapter which is used
1700
+ to list all models.
1701
+ @property containerDebugAdapter
1702
+ @default undefined
1703
+ @since 1.5.0
1704
+ @public
1705
+ **/
1742
1706
 
1743
- /**
1744
- The number of attributes to send
1745
- as columns. (Enough to make the record
1746
- identifiable).
1747
- @private
1748
- @property attributeLimit
1749
- @default 3
1750
- @since 1.3.0
1751
- */
1752
- attributeLimit: 3,
1707
+ /**
1708
+ The number of attributes to send
1709
+ as columns. (Enough to make the record
1710
+ identifiable).
1711
+ @private
1712
+ @property attributeLimit
1713
+ @default 3
1714
+ @since 1.3.0
1715
+ */
1753
1716
 
1754
- /**
1755
- Ember Data > v1.0.0-beta.18
1756
- requires string model names to be passed
1757
- around instead of the actual factories.
1758
- This is a stamp for the Ember Inspector
1759
- to differentiate between the versions
1760
- to be able to support older versions too.
1761
- @public
1762
- @property acceptsModelName
1763
- */
1764
- acceptsModelName: true,
1717
+ this.attributeLimit = 3;
1718
+ /**
1719
+ Ember Data > v1.0.0-beta.18
1720
+ requires string model names to be passed
1721
+ around instead of the actual factories.
1722
+ This is a stamp for the Ember Inspector
1723
+ to differentiate between the versions
1724
+ to be able to support older versions too.
1725
+ @public
1726
+ @property acceptsModelName
1727
+ */
1765
1728
 
1729
+ this.acceptsModelName = true;
1730
+ this.containerDebugAdapter = (0, _owner.getOwner)(this).lookup('container-debug-adapter:main');
1731
+ }
1766
1732
  /**
1767
1733
  Map from records arrays to RecordsWatcher instances
1768
1734
  @private
@@ -1802,10 +1768,11 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1802
1768
  @return {Array} List of objects defining filters.
1803
1769
  The object should have a `name` and `desc` property.
1804
1770
  */
1771
+
1772
+
1805
1773
  getFilters() {
1806
1774
  return (0, _runtime.A)();
1807
- },
1808
-
1775
+ }
1809
1776
  /**
1810
1777
  Fetch the model types and observe them for changes.
1811
1778
  @public
@@ -1816,6 +1783,8 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1816
1783
  Takes an array of objects containing wrapped types.
1817
1784
  @return {Function} Method to call to remove all observers
1818
1785
  */
1786
+
1787
+
1819
1788
  watchModelTypes(typesAdded, typesUpdated) {
1820
1789
  var modelTypes = this.getModelTypes();
1821
1790
  var releaseMethods = (0, _runtime.A)();
@@ -1835,7 +1804,7 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1835
1804
 
1836
1805
  this.releaseMethods.pushObject(release);
1837
1806
  return release;
1838
- },
1807
+ }
1839
1808
 
1840
1809
  _nameToClass(type) {
1841
1810
  if (typeof type === 'string') {
@@ -1845,8 +1814,7 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1845
1814
  }
1846
1815
 
1847
1816
  return type;
1848
- },
1849
-
1817
+ }
1850
1818
  /**
1851
1819
  Fetch the records of a given type and observe them for changes.
1852
1820
  @public
@@ -1863,6 +1831,8 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1863
1831
  Takes an array of objects containing wrapped records.
1864
1832
  @return {Function} Method to call to remove all observers.
1865
1833
  */
1834
+
1835
+
1866
1836
  watchRecords(modelName, recordsAdded, recordsUpdated, recordsRemoved) {
1867
1837
  var klass = this._nameToClass(modelName);
1868
1838
 
@@ -1883,7 +1853,7 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1883
1853
  }
1884
1854
 
1885
1855
  return recordsWatcher.release;
1886
- },
1856
+ }
1887
1857
 
1888
1858
  updateFlushWatchers() {
1889
1859
  if (this.flushWatchers === null) {
@@ -1900,13 +1870,14 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1900
1870
 
1901
1871
  this.flushWatchers = null;
1902
1872
  }
1903
- },
1904
-
1873
+ }
1905
1874
  /**
1906
1875
  Clear all observers before destruction
1907
1876
  @private
1908
1877
  @method willDestroy
1909
1878
  */
1879
+
1880
+
1910
1881
  willDestroy() {
1911
1882
  this._super(...arguments);
1912
1883
 
@@ -1917,8 +1888,7 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1917
1888
  if (this.flushWatchers) {
1918
1889
  _runloop._backburner.off('end', this.flushWatchers);
1919
1890
  }
1920
- },
1921
-
1891
+ }
1922
1892
  /**
1923
1893
  Detect whether a class is a model.
1924
1894
  Test that against the model class
@@ -1927,10 +1897,11 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1927
1897
  @method detect
1928
1898
  @return boolean Whether the class is a model class or not.
1929
1899
  */
1930
- detect() {
1931
- return false;
1932
- },
1933
1900
 
1901
+
1902
+ detect(_klass) {
1903
+ return false;
1904
+ }
1934
1905
  /**
1935
1906
  Get the columns for a given model type.
1936
1907
  @public
@@ -1939,10 +1910,11 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1939
1910
  name: {String} The name of the column.
1940
1911
  desc: {String} Humanized description (what would show in a table column name).
1941
1912
  */
1942
- columnsForType() {
1943
- return (0, _runtime.A)();
1944
- },
1945
1913
 
1914
+
1915
+ columnsForType(_klass) {
1916
+ return (0, _runtime.A)();
1917
+ }
1946
1918
  /**
1947
1919
  Adds observers to a model type class.
1948
1920
  @private
@@ -1951,6 +1923,8 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1951
1923
  @param {Function} typesUpdated Called when a type is modified.
1952
1924
  @return {Function} The function to call to remove observers.
1953
1925
  */
1926
+
1927
+
1954
1928
  observeModelType(modelName, typesUpdated) {
1955
1929
  var klass = this._nameToClass(modelName);
1956
1930
 
@@ -1976,63 +1950,50 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
1976
1950
  }
1977
1951
 
1978
1952
  return typeWatcher.release;
1979
- },
1980
-
1953
+ }
1981
1954
  /**
1982
1955
  Wraps a given model type and observes changes to it.
1983
1956
  @private
1984
1957
  @method wrapModelType
1985
1958
  @param {Class} klass A model class.
1986
1959
  @param {String} modelName Name of the class.
1987
- @return {Object} Contains the wrapped type and the function to remove observers
1988
- Format:
1989
- type: {Object} The wrapped type.
1990
- The wrapped type has the following format:
1991
- name: {String} The name of the type.
1992
- count: {Integer} The number of records available.
1993
- columns: {Columns} An array of columns to describe the record.
1994
- object: {Class} The actual Model type class.
1995
- release: {Function} The function to remove observers.
1960
+ @return {Object} The wrapped type has the following format:
1961
+ name: {String} The name of the type.
1962
+ count: {Integer} The number of records available.
1963
+ columns: {Columns} An array of columns to describe the record.
1964
+ object: {Class} The actual Model type class.
1996
1965
  */
1966
+
1967
+
1997
1968
  wrapModelType(klass, name) {
1998
1969
  var records = this.getRecords(klass, name);
1999
- var typeToSend;
2000
- typeToSend = {
1970
+ return {
2001
1971
  name,
2002
1972
  count: (0, _metal.get)(records, 'length'),
2003
1973
  columns: this.columnsForType(klass),
2004
1974
  object: klass
2005
1975
  };
2006
- return typeToSend;
2007
- },
2008
-
1976
+ }
2009
1977
  /**
2010
1978
  Fetches all models defined in the application.
2011
1979
  @private
2012
1980
  @method getModelTypes
2013
1981
  @return {Array} Array of model types.
2014
1982
  */
2015
- getModelTypes() {
2016
- var containerDebugAdapter = this.get('containerDebugAdapter');
2017
- var types;
2018
1983
 
2019
- if (containerDebugAdapter.canCatalogEntriesByType('model')) {
2020
- types = containerDebugAdapter.catalogEntriesByType('model');
2021
- } else {
2022
- types = this._getObjectsOnNamespaces();
2023
- } // New adapters return strings instead of classes.
2024
1984
 
1985
+ getModelTypes() {
1986
+ var containerDebugAdapter = this.containerDebugAdapter;
1987
+ var stringTypes = containerDebugAdapter.canCatalogEntriesByType('model') ? containerDebugAdapter.catalogEntriesByType('model') : this._getObjectsOnNamespaces(); // New adapters return strings instead of classes.
2025
1988
 
2026
- types = (0, _runtime.A)(types).map(name => {
1989
+ var klassTypes = (0, _runtime.A)(stringTypes).map(name => {
2027
1990
  return {
2028
1991
  klass: this._nameToClass(name),
2029
1992
  name
2030
1993
  };
2031
1994
  });
2032
- types = (0, _runtime.A)(types).filter(type => this.detect(type.klass));
2033
- return (0, _runtime.A)(types);
2034
- },
2035
-
1995
+ return (0, _runtime.A)(klassTypes).filter(type => this.detect(type.klass));
1996
+ }
2036
1997
  /**
2037
1998
  Loops over all namespaces and all objects
2038
1999
  attached to them.
@@ -2040,6 +2001,8 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
2040
2001
  @method _getObjectsOnNamespaces
2041
2002
  @return {Array} Array of model type strings.
2042
2003
  */
2004
+
2005
+
2043
2006
  _getObjectsOnNamespaces() {
2044
2007
  var namespaces = (0, _runtime.A)(_runtime.Namespace.NAMESPACES);
2045
2008
  var types = (0, _runtime.A)();
@@ -2060,8 +2023,7 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
2060
2023
  }
2061
2024
  });
2062
2025
  return types;
2063
- },
2064
-
2026
+ }
2065
2027
  /**
2066
2028
  Fetches all loaded records for a given type.
2067
2029
  @public
@@ -2070,10 +2032,11 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
2070
2032
  This array will be observed for changes,
2071
2033
  so it should update when new records are added/removed.
2072
2034
  */
2073
- getRecords() {
2074
- return (0, _runtime.A)();
2075
- },
2076
2035
 
2036
+
2037
+ getRecords(_klass, _name) {
2038
+ return (0, _runtime.A)();
2039
+ }
2077
2040
  /**
2078
2041
  Wraps a record and observers changes to it.
2079
2042
  @private
@@ -2083,17 +2046,17 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
2083
2046
  columnValues: {Array}
2084
2047
  searchKeywords: {Array}
2085
2048
  */
2049
+
2050
+
2086
2051
  wrapRecord(record) {
2087
- var recordToSend = {
2088
- object: record
2052
+ return {
2053
+ object: record,
2054
+ columnValues: this.getRecordColumnValues(record),
2055
+ searchKeywords: this.getRecordKeywords(record),
2056
+ filterValues: this.getRecordFilterValues(record),
2057
+ color: this.getRecordColor(record)
2089
2058
  };
2090
- recordToSend.columnValues = this.getRecordColumnValues(record);
2091
- recordToSend.searchKeywords = this.getRecordKeywords(record);
2092
- recordToSend.filterValues = this.getRecordFilterValues(record);
2093
- recordToSend.color = this.getRecordColor(record);
2094
- return recordToSend;
2095
- },
2096
-
2059
+ }
2097
2060
  /**
2098
2061
  Gets the values for each column.
2099
2062
  @public
@@ -2101,20 +2064,22 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
2101
2064
  @return {Object} Keys should match column names defined
2102
2065
  by the model type.
2103
2066
  */
2104
- getRecordColumnValues() {
2105
- return {};
2106
- },
2107
2067
 
2068
+
2069
+ getRecordColumnValues(_record) {
2070
+ return {};
2071
+ }
2108
2072
  /**
2109
2073
  Returns keywords to match when searching records.
2110
2074
  @public
2111
2075
  @method getRecordKeywords
2112
2076
  @return {Array} Relevant keywords for search.
2113
2077
  */
2114
- getRecordKeywords() {
2115
- return (0, _runtime.A)();
2116
- },
2117
2078
 
2079
+
2080
+ getRecordKeywords(_record) {
2081
+ return (0, _runtime.A)();
2082
+ }
2118
2083
  /**
2119
2084
  Returns the values of filters defined by `getFilters`.
2120
2085
  @public
@@ -2122,10 +2087,11 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
2122
2087
  @param {Object} record The record instance.
2123
2088
  @return {Object} The filter values.
2124
2089
  */
2125
- getRecordFilterValues() {
2126
- return {};
2127
- },
2128
2090
 
2091
+
2092
+ getRecordFilterValues(_record) {
2093
+ return {};
2094
+ }
2129
2095
  /**
2130
2096
  Each record can have a color that represents its state.
2131
2097
  @public
@@ -2134,13 +2100,15 @@ define("@ember/-internals/extension-support/lib/data_adapter", ["exports", "@emb
2134
2100
  @return {String} The records color.
2135
2101
  Possible options: black, red, blue, green.
2136
2102
  */
2137
- getRecordColor() {
2103
+
2104
+
2105
+ getRecordColor(_record) {
2138
2106
  return null;
2139
2107
  }
2140
2108
 
2141
- });
2109
+ }
2142
2110
 
2143
- _exports.default = _default;
2111
+ _exports.default = DataAdapter;
2144
2112
  });
2145
2113
  define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler", "@ember/-internals/owner", "@ember/-internals/utils", "@ember/debug", "@glimmer/manager", "@glimmer/reference", "@glimmer/validator", "@ember/-internals/metal", "@ember/object", "@ember/-internals/browser-environment", "@ember/-internals/views", "@ember/engine", "@ember/engine/instance", "@ember/instrumentation", "@ember/service", "@ember/string", "@glimmer/destroyable", "@ember/runloop", "@glimmer/util", "@glimmer/runtime", "@ember/-internals/runtime", "@ember/-internals/environment", "@ember/-internals/container", "@glimmer/node", "@ember/-internals/glimmer", "@glimmer/global-context", "@ember/-internals/routing", "@glimmer/program", "rsvp"], function (_exports, _opcodeCompiler, _owner2, _utils, _debug, _manager2, _reference, _validator, _metal, _object, _browserEnvironment, _views, _engine, _instance, _instrumentation, _service, _string, _destroyable, _runloop, _util, _runtime, _runtime2, _environment2, _container, _node, _glimmer, _globalContext, _routing2, _program, _rsvp) {
2146
2114
  "use strict";
@@ -2476,7 +2444,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
2476
2444
  class AbstractInput extends InternalComponent {
2477
2445
  constructor() {
2478
2446
  super(...arguments);
2479
- this._value = valueFrom(this.args.named.value);
2447
+ this._value = valueFrom(this.args.named['value']);
2480
2448
  }
2481
2449
 
2482
2450
  validateArguments() {
@@ -2734,7 +2702,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
2734
2702
  class Input extends AbstractInput {
2735
2703
  constructor() {
2736
2704
  super(...arguments);
2737
- this._checked = valueFrom(this.args.named.checked);
2705
+ this._checked = valueFrom(this.args.named['checked']);
2738
2706
  }
2739
2707
 
2740
2708
  static toString() {
@@ -2774,7 +2742,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
2774
2742
 
2775
2743
  get checked() {
2776
2744
  if (this.isCheckbox) {
2777
- (true && (0, _debug.warn)('`<Input @type="checkbox" />` reflects its checked state via the `@checked` argument. ' + 'You wrote `<Input @type="checkbox" @value={{...}} />` which is likely not what you intended. ' + 'Did you mean `<Input @type="checkbox" @checked={{...}} />`?', (0, _validator.untrack)(() => this.args.named.checked !== undefined || this.args.named.value === undefined || typeof (0, _reference.valueForRef)(this.args.named.value) === 'string'), {
2745
+ (true && (0, _debug.warn)('`<Input @type="checkbox" />` reflects its checked state via the `@checked` argument. ' + 'You wrote `<Input @type="checkbox" @value={{...}} />` which is likely not what you intended. ' + 'Did you mean `<Input @type="checkbox" @checked={{...}} />`?', (0, _validator.untrack)(() => this.args.named['checked'] !== undefined || this.args.named['value'] === undefined || typeof (0, _reference.valueForRef)(this.args.named['value']) === 'string'), {
2778
2746
  id: 'ember.built-in-components.input-checkbox-value'
2779
2747
  }));
2780
2748
  return this._checked.get();
@@ -2784,7 +2752,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
2784
2752
  }
2785
2753
 
2786
2754
  set checked(checked) {
2787
- (true && (0, _debug.warn)('`<Input @type="checkbox" />` reflects its checked state via the `@checked` argument. ' + 'You wrote `<Input @type="checkbox" @value={{...}} />` which is likely not what you intended. ' + 'Did you mean `<Input @type="checkbox" @checked={{...}} />`?', (0, _validator.untrack)(() => this.args.named.checked !== undefined || this.args.named.value === undefined || typeof (0, _reference.valueForRef)(this.args.named.value) === 'string'), {
2755
+ (true && (0, _debug.warn)('`<Input @type="checkbox" />` reflects its checked state via the `@checked` argument. ' + 'You wrote `<Input @type="checkbox" @value={{...}} />` which is likely not what you intended. ' + 'Did you mean `<Input @type="checkbox" @checked={{...}} />`?', (0, _validator.untrack)(() => this.args.named['checked'] !== undefined || this.args.named['value'] === undefined || typeof (0, _reference.valueForRef)(this.args.named['value']) === 'string'), {
2788
2756
  id: 'ember.built-in-components.input-checkbox-value'
2789
2757
  }));
2790
2758
 
@@ -4093,8 +4061,8 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
4093
4061
  var [context, action$$1, ...restArgs] = positional;
4094
4062
  (true && !(context && action$$1) && (0, _debug.assert)('hash position arguments', context && action$$1));
4095
4063
  var debugKey = action$$1.debugLabel;
4096
- var target = 'target' in named && named.target ? named.target : context;
4097
- var processArgs = makeArgsProcessor('value' in named && named.value || false, restArgs);
4064
+ var target = 'target' in named ? named['target'] : context;
4065
+ var processArgs = makeArgsProcessor('value' in named && named['value'] || false, restArgs);
4098
4066
  var fn$$1;
4099
4067
 
4100
4068
  if ((0, _reference.isInvokableRef)(action$$1)) {
@@ -4735,624 +4703,6 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
4735
4703
  }
4736
4704
 
4737
4705
  var lazyEventsProcessed = new WeakMap();
4738
- /**
4739
- @module @ember/component
4740
- */
4741
-
4742
- /**
4743
- A component is a reusable UI element that consists of a `.hbs` template and an
4744
- optional JavaScript class that defines its behavior. For example, someone
4745
- might make a `button` in the template and handle the click behavior in the
4746
- JavaScript file that shares the same name as the template.
4747
-
4748
- Components are broken down into two categories:
4749
-
4750
- - Components _without_ JavaScript, that are based only on a template. These
4751
- are called Template-only or TO components.
4752
- - Components _with_ JavaScript, which consist of a template and a backing
4753
- class.
4754
-
4755
- Ember ships with two types of JavaScript classes for components:
4756
-
4757
- 1. Glimmer components, imported from `@glimmer/component`, which are the
4758
- default component's for Ember Octane (3.15) and more recent editions.
4759
- 2. Classic components, imported from `@ember/component`, which were the
4760
- default for older editions of Ember (pre 3.15).
4761
-
4762
- Below is the documentation for Classic components. If you are looking for the
4763
- API documentation for Template-only or Glimmer components, it is
4764
- [available here](/ember/release/modules/@glimmer%2Fcomponent).
4765
-
4766
- ## Defining a Classic Component
4767
-
4768
- If you want to customize the component in order to handle events, transform
4769
- arguments or maintain internal state, you implement a subclass of `Component`.
4770
-
4771
- One example is to add computed properties to your component:
4772
-
4773
- ```app/components/person-profile.js
4774
- import Component from '@ember/component';
4775
-
4776
- export default Component.extend({
4777
- displayName: computed('person.title', 'person.firstName', 'person.lastName', function() {
4778
- let { title, firstName, lastName } = this.person;
4779
-
4780
- if (title) {
4781
- return `${title} ${lastName}`;
4782
- } else {
4783
- return `${firstName} ${lastName}`;
4784
- }
4785
- })
4786
- });
4787
- ```
4788
-
4789
- And then use it in the component's template:
4790
-
4791
- ```app/templates/components/person-profile.hbs
4792
- <h1>{{this.displayName}}</h1>
4793
- {{yield}}
4794
- ```
4795
-
4796
- ## Customizing a Classic Component's HTML Element in JavaScript
4797
-
4798
- ### HTML Tag
4799
-
4800
- The default HTML tag name used for a component's HTML representation is `div`.
4801
- This can be customized by setting the `tagName` property.
4802
-
4803
- Consider the following component class:
4804
-
4805
- ```app/components/emphasized-paragraph.js
4806
- import Component from '@ember/component';
4807
-
4808
- export default Component.extend({
4809
- tagName: 'em'
4810
- });
4811
- ```
4812
-
4813
- When invoked, this component would produce output that looks something like
4814
- this:
4815
-
4816
- ```html
4817
- <em id="ember1" class="ember-view"></em>
4818
- ```
4819
-
4820
- ### HTML `class` Attribute
4821
-
4822
- The HTML `class` attribute of a component's tag can be set by providing a
4823
- `classNames` property that is set to an array of strings:
4824
-
4825
- ```app/components/my-widget.js
4826
- import Component from '@ember/component';
4827
-
4828
- export default Component.extend({
4829
- classNames: ['my-class', 'my-other-class']
4830
- });
4831
- ```
4832
-
4833
- Invoking this component will produce output that looks like this:
4834
-
4835
- ```html
4836
- <div id="ember1" class="ember-view my-class my-other-class"></div>
4837
- ```
4838
-
4839
- `class` attribute values can also be set by providing a `classNameBindings`
4840
- property set to an array of properties names for the component. The return
4841
- value of these properties will be added as part of the value for the
4842
- components's `class` attribute. These properties can be computed properties:
4843
-
4844
- ```app/components/my-widget.js
4845
- import Component from '@ember/component';
4846
- import { computed } from '@ember/object';
4847
-
4848
- export default Component.extend({
4849
- classNames: ['my-class', 'my-other-class'],
4850
- classNameBindings: ['propertyA', 'propertyB'],
4851
-
4852
- propertyA: 'from-a',
4853
- propertyB: computed(function() {
4854
- if (someLogic) { return 'from-b'; }
4855
- })
4856
- });
4857
- ```
4858
-
4859
- Invoking this component will produce HTML that looks like:
4860
-
4861
- ```html
4862
- <div id="ember1" class="ember-view my-class my-other-class from-a from-b"></div>
4863
- ```
4864
-
4865
- Note that `classNames` and `classNameBindings` is in addition to the `class`
4866
- attribute passed with the angle bracket invocation syntax. Therefore, if this
4867
- component was invoked like so:
4868
-
4869
- ```handlebars
4870
- <MyWidget class="from-invocation" />
4871
- ```
4872
-
4873
- The resulting HTML will look similar to this:
4874
-
4875
- ```html
4876
- <div id="ember1" class="from-invocation ember-view my-class my-other-class from-a from-b"></div>
4877
- ```
4878
-
4879
- If the value of a class name binding returns a boolean the property name
4880
- itself will be used as the class name if the property is true. The class name
4881
- will not be added if the value is `false` or `undefined`.
4882
-
4883
- ```app/components/my-widget.js
4884
- import Component from '@ember/component';
4885
-
4886
- export default Component.extend({
4887
- classNameBindings: ['hovered'],
4888
-
4889
- hovered: true
4890
- });
4891
- ```
4892
-
4893
- Invoking this component will produce HTML that looks like:
4894
-
4895
- ```html
4896
- <div id="ember1" class="ember-view hovered"></div>
4897
- ```
4898
-
4899
- ### Custom Class Names for Boolean Values
4900
-
4901
- When using boolean class name bindings you can supply a string value other
4902
- than the property name for use as the `class` HTML attribute by appending the
4903
- preferred value after a ":" character when defining the binding:
4904
-
4905
- ```app/components/my-widget.js
4906
- import Component from '@ember/component';
4907
-
4908
- export default Component.extend({
4909
- classNameBindings: ['awesome:so-very-cool'],
4910
-
4911
- awesome: true
4912
- });
4913
- ```
4914
-
4915
- Invoking this component will produce HTML that looks like:
4916
-
4917
- ```html
4918
- <div id="ember1" class="ember-view so-very-cool"></div>
4919
- ```
4920
-
4921
- Boolean value class name bindings whose property names are in a
4922
- camelCase-style format will be converted to a dasherized format:
4923
-
4924
- ```app/components/my-widget.js
4925
- import Component from '@ember/component';
4926
-
4927
- export default Component.extend({
4928
- classNameBindings: ['isUrgent'],
4929
-
4930
- isUrgent: true
4931
- });
4932
- ```
4933
-
4934
- Invoking this component will produce HTML that looks like:
4935
-
4936
- ```html
4937
- <div id="ember1" class="ember-view is-urgent"></div>
4938
- ```
4939
-
4940
- Class name bindings can also refer to object values that are found by
4941
- traversing a path relative to the component itself:
4942
-
4943
- ```app/components/my-widget.js
4944
- import Component from '@ember/component';
4945
- import EmberObject from '@ember/object';
4946
-
4947
- export default Component.extend({
4948
- classNameBindings: ['messages.empty'],
4949
-
4950
- messages: EmberObject.create({
4951
- empty: true
4952
- })
4953
- });
4954
- ```
4955
-
4956
- Invoking this component will produce HTML that looks like:
4957
-
4958
- ```html
4959
- <div id="ember1" class="ember-view empty"></div>
4960
- ```
4961
-
4962
- If you want to add a class name for a property which evaluates to true and
4963
- and a different class name if it evaluates to false, you can pass a binding
4964
- like this:
4965
-
4966
- ```app/components/my-widget.js
4967
- import Component from '@ember/component';
4968
-
4969
- export default Component.extend({
4970
- classNameBindings: ['isEnabled:enabled:disabled'],
4971
- isEnabled: true
4972
- });
4973
- ```
4974
-
4975
- Invoking this component will produce HTML that looks like:
4976
-
4977
- ```html
4978
- <div id="ember1" class="ember-view enabled"></div>
4979
- ```
4980
-
4981
- When isEnabled is `false`, the resulting HTML representation looks like this:
4982
-
4983
- ```html
4984
- <div id="ember1" class="ember-view disabled"></div>
4985
- ```
4986
-
4987
- This syntax offers the convenience to add a class if a property is `false`:
4988
-
4989
- ```app/components/my-widget.js
4990
- import Component from '@ember/component';
4991
-
4992
- // Applies no class when isEnabled is true and class 'disabled' when isEnabled is false
4993
- export default Component.extend({
4994
- classNameBindings: ['isEnabled::disabled'],
4995
- isEnabled: true
4996
- });
4997
- ```
4998
-
4999
- Invoking this component when the `isEnabled` property is true will produce
5000
- HTML that looks like:
5001
-
5002
- ```html
5003
- <div id="ember1" class="ember-view"></div>
5004
- ```
5005
-
5006
- Invoking it when the `isEnabled` property on the component is `false` will
5007
- produce HTML that looks like:
5008
-
5009
- ```html
5010
- <div id="ember1" class="ember-view disabled"></div>
5011
- ```
5012
-
5013
- Updates to the value of a class name binding will result in automatic update
5014
- of the HTML `class` attribute in the component's rendered HTML
5015
- representation. If the value becomes `false` or `undefined` the class name
5016
- will be removed.
5017
-
5018
- Both `classNames` and `classNameBindings` are concatenated properties. See
5019
- [EmberObject](/ember/release/classes/EmberObject) documentation for more
5020
- information about concatenated properties.
5021
-
5022
- ### Other HTML Attributes
5023
-
5024
- The HTML attribute section of a component's tag can be set by providing an
5025
- `attributeBindings` property set to an array of property names on the component.
5026
- The return value of these properties will be used as the value of the component's
5027
- HTML associated attribute:
5028
-
5029
- ```app/components/my-anchor.js
5030
- import Component from '@ember/component';
5031
-
5032
- export default Component.extend({
5033
- tagName: 'a',
5034
- attributeBindings: ['href'],
5035
-
5036
- href: 'http://google.com'
5037
- });
5038
- ```
5039
-
5040
- Invoking this component will produce HTML that looks like:
5041
-
5042
- ```html
5043
- <a id="ember1" class="ember-view" href="http://google.com"></a>
5044
- ```
5045
-
5046
- One property can be mapped on to another by placing a ":" between
5047
- the source property and the destination property:
5048
-
5049
- ```app/components/my-anchor.js
5050
- import Component from '@ember/component';
5051
-
5052
- export default Component.extend({
5053
- tagName: 'a',
5054
- attributeBindings: ['url:href'],
5055
-
5056
- url: 'http://google.com'
5057
- });
5058
- ```
5059
-
5060
- Invoking this component will produce HTML that looks like:
5061
-
5062
- ```html
5063
- <a id="ember1" class="ember-view" href="http://google.com"></a>
5064
- ```
5065
-
5066
- HTML attributes passed with angle bracket invocations will take precedence
5067
- over those specified in `attributeBindings`. Therefore, if this component was
5068
- invoked like so:
5069
-
5070
- ```handlebars
5071
- <MyAnchor href="http://bing.com" @url="http://google.com" />
5072
- ```
5073
-
5074
- The resulting HTML will looks like this:
5075
-
5076
- ```html
5077
- <a id="ember1" class="ember-view" href="http://bing.com"></a>
5078
- ```
5079
-
5080
- Note that the `href` attribute is ultimately set to `http://bing.com`,
5081
- despite it having attribute binidng to the `url` property, which was
5082
- set to `http://google.com`.
5083
-
5084
- Namespaced attributes (e.g. `xlink:href`) are supported, but have to be
5085
- mapped, since `:` is not a valid character for properties in Javascript:
5086
-
5087
- ```app/components/my-use.js
5088
- import Component from '@ember/component';
5089
-
5090
- export default Component.extend({
5091
- tagName: 'use',
5092
- attributeBindings: ['xlinkHref:xlink:href'],
5093
-
5094
- xlinkHref: '#triangle'
5095
- });
5096
- ```
5097
-
5098
- Invoking this component will produce HTML that looks like:
5099
-
5100
- ```html
5101
- <use xlink:href="#triangle"></use>
5102
- ```
5103
-
5104
- If the value of a property monitored by `attributeBindings` is a boolean, the
5105
- attribute will be present or absent depending on the value:
5106
-
5107
- ```app/components/my-text-input.js
5108
- import Component from '@ember/component';
5109
-
5110
- export default Component.extend({
5111
- tagName: 'input',
5112
- attributeBindings: ['disabled'],
5113
-
5114
- disabled: false
5115
- });
5116
- ```
5117
-
5118
- Invoking this component will produce HTML that looks like:
5119
-
5120
- ```html
5121
- <input id="ember1" class="ember-view" />
5122
- ```
5123
-
5124
- `attributeBindings` can refer to computed properties:
5125
-
5126
- ```app/components/my-text-input.js
5127
- import Component from '@ember/component';
5128
- import { computed } from '@ember/object';
5129
-
5130
- export default Component.extend({
5131
- tagName: 'input',
5132
- attributeBindings: ['disabled'],
5133
-
5134
- disabled: computed(function() {
5135
- if (someLogic) {
5136
- return true;
5137
- } else {
5138
- return false;
5139
- }
5140
- })
5141
- });
5142
- ```
5143
-
5144
- To prevent setting an attribute altogether, use `null` or `undefined` as the
5145
- value of the property used in `attributeBindings`:
5146
-
5147
- ```app/components/my-text-input.js
5148
- import Component from '@ember/component';
5149
-
5150
- export default Component.extend({
5151
- tagName: 'form',
5152
- attributeBindings: ['novalidate'],
5153
- novalidate: null
5154
- });
5155
- ```
5156
-
5157
- Updates to the property of an attribute binding will result in automatic
5158
- update of the HTML attribute in the component's HTML output.
5159
-
5160
- `attributeBindings` is a concatenated property. See
5161
- [EmberObject](/ember/release/classes/EmberObject) documentation for more
5162
- information about concatenated properties.
5163
-
5164
- ## Layouts
5165
-
5166
- The `layout` property can be used to dynamically specify a template associated
5167
- with a component class, instead of relying on Ember to link together a
5168
- component class and a template based on file names.
5169
-
5170
- In general, applications should not use this feature, but it's commonly used
5171
- in addons for historical reasons.
5172
-
5173
- The `layout` property should be set to the default export of a template
5174
- module, which is the name of a template file without the `.hbs` extension.
5175
-
5176
- ```app/templates/components/person-profile.hbs
5177
- <h1>Person's Title</h1>
5178
- <div class='details'>{{yield}}</div>
5179
- ```
5180
-
5181
- ```app/components/person-profile.js
5182
- import Component from '@ember/component';
5183
- import layout from '../templates/components/person-profile';
5184
-
5185
- export default Component.extend({
5186
- layout
5187
- });
5188
- ```
5189
-
5190
- If you invoke the component:
5191
-
5192
- ```handlebars
5193
- <PersonProfile>
5194
- <h2>Chief Basket Weaver</h2>
5195
- <h3>Fisherman Industries</h3>
5196
- </PersonProfile>
5197
- ```
5198
-
5199
- or
5200
-
5201
- ```handlebars
5202
- {{#person-profile}}
5203
- <h2>Chief Basket Weaver</h2>
5204
- <h3>Fisherman Industries</h3>
5205
- {{/person-profile}}
5206
- ```
5207
-
5208
- It will result in the following HTML output:
5209
-
5210
- ```html
5211
- <h1>Person's Title</h1>
5212
- <div class="details">
5213
- <h2>Chief Basket Weaver</h2>
5214
- <h3>Fisherman Industries</h3>
5215
- </div>
5216
- ```
5217
-
5218
- ## Handling Browser Events
5219
-
5220
- Components can respond to user-initiated events in one of three ways: passing
5221
- actions with angle bracket invocation, adding event handler methods to the
5222
- component's class, or adding actions to the component's template.
5223
-
5224
- ### Passing Actions With Angle Bracket Invocation
5225
-
5226
- For one-off events specific to particular instance of a component, it is possible
5227
- to pass actions to the component's element using angle bracket invocation syntax.
5228
-
5229
- ```handlebars
5230
- <MyWidget {{action 'firstWidgetClicked'}} />
5231
-
5232
- <MyWidget {{action 'secondWidgetClicked'}} />
5233
- ```
5234
-
5235
- In this case, when the first component is clicked on, Ember will invoke the
5236
- `firstWidgetClicked` action. When the second component is clicked on, Ember
5237
- will invoke the `secondWidgetClicked` action instead.
5238
-
5239
- Besides `{{action}}`, it is also possible to pass any arbitrary element modifiers
5240
- using the angle bracket invocation syntax.
5241
-
5242
- ### Event Handler Methods
5243
-
5244
- Components can also respond to user-initiated events by implementing a method
5245
- that matches the event name. This approach is appropriate when the same event
5246
- should be handled by all instances of the same component.
5247
-
5248
- An event object will be passed as the argument to the event handler method.
5249
-
5250
- ```app/components/my-widget.js
5251
- import Component from '@ember/component';
5252
-
5253
- export default Component.extend({
5254
- click(event) {
5255
- // `event.target` is either the component's element or one of its children
5256
- let tag = event.target.tagName.toLowerCase();
5257
- console.log('clicked on a `<${tag}>` HTML element!');
5258
- }
5259
- });
5260
- ```
5261
-
5262
- In this example, whenever the user clicked anywhere inside the component, it
5263
- will log a message to the console.
5264
-
5265
- It is possible to handle event types other than `click` by implementing the
5266
- following event handler methods. In addition, custom events can be registered
5267
- by using `Application.customEvents`.
5268
-
5269
- Touch events:
5270
-
5271
- * `touchStart`
5272
- * `touchMove`
5273
- * `touchEnd`
5274
- * `touchCancel`
5275
-
5276
- Keyboard events:
5277
-
5278
- * `keyDown`
5279
- * `keyUp`
5280
- * `keyPress`
5281
-
5282
- Mouse events:
5283
-
5284
- * `mouseDown`
5285
- * `mouseUp`
5286
- * `contextMenu`
5287
- * `click`
5288
- * `doubleClick`
5289
- * `focusIn`
5290
- * `focusOut`
5291
-
5292
- Form events:
5293
-
5294
- * `submit`
5295
- * `change`
5296
- * `focusIn`
5297
- * `focusOut`
5298
- * `input`
5299
-
5300
- Drag and drop events:
5301
-
5302
- * `dragStart`
5303
- * `drag`
5304
- * `dragEnter`
5305
- * `dragLeave`
5306
- * `dragOver`
5307
- * `dragEnd`
5308
- * `drop`
5309
-
5310
- ### `{{action}}` Helper
5311
-
5312
- Instead of handling all events of a particular type anywhere inside the
5313
- component's element, you may instead want to limit it to a particular
5314
- element in the component's template. In this case, it would be more
5315
- convenient to implement an action instead.
5316
-
5317
- For example, you could implement the action `hello` for the `person-profile`
5318
- component:
5319
-
5320
- ```app/components/person-profile.js
5321
- import Component from '@ember/component';
5322
-
5323
- export default Component.extend({
5324
- actions: {
5325
- hello(name) {
5326
- console.log("Hello", name);
5327
- }
5328
- }
5329
- });
5330
- ```
5331
-
5332
- And then use it in the component's template:
5333
-
5334
- ```app/templates/components/person-profile.hbs
5335
- <h1>{{@person.name}}</h1>
5336
-
5337
- <button {{action 'hello' @person.name}}>
5338
- Say Hello to {{@person.name}}
5339
- </button>
5340
- ```
5341
-
5342
- When the user clicks the button, Ember will invoke the `hello` action,
5343
- passing in the current value of `@person.name` as an argument.
5344
-
5345
- See [Ember.Templates.helpers.action](/ember/release/classes/Ember.Templates.helpers/methods/action?anchor=action).
5346
-
5347
- @class Component
5348
- @extends Ember.CoreView
5349
- @uses Ember.TargetActionSupport
5350
- @uses Ember.ClassNamesSupport
5351
- @uses Ember.ActionSupport
5352
- @uses Ember.ViewMixin
5353
- @uses Ember.ViewStateSupport
5354
- @public
5355
- */
5356
4706
 
5357
4707
  var Component = _views.CoreView.extend(_views.ChildViewsSupport, _views.ViewStateSupport, _views.ClassNamesSupport, _runtime2.TargetActionSupport, _views.ActionSupport, _views.ViewMixin, {
5358
4708
  isComponent: true,
@@ -5662,23 +5012,6 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
5662
5012
  @since 1.13.0
5663
5013
  */
5664
5014
 
5665
- /**
5666
- Layout can be used to wrap content in a component.
5667
- @property layout
5668
- @type Function
5669
- @public
5670
- */
5671
-
5672
- /**
5673
- The name of the layout to lookup if no layout is provided.
5674
- By default `Component` will lookup a template with this name in
5675
- `Ember.TEMPLATES` (a shared global object).
5676
- @property layoutName
5677
- @type String
5678
- @default null
5679
- @private
5680
- */
5681
-
5682
5015
  /**
5683
5016
  The HTML `id` of the component's element in the DOM. You can provide this
5684
5017
  value yourself but it must be unique (just as in HTML):
@@ -6739,7 +6072,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
6739
6072
  },
6740
6073
 
6741
6074
  warnIfStyleNotTrusted(value) {
6742
- (true && (0, _debug.warn)((0, _views.constructStyleDeprecationMessage)(value), (() => {
6075
+ (true && (0, _debug.warn)((0, _views.constructStyleDeprecationMessage)(String(value)), (() => {
6743
6076
  if (value === null || value === undefined || isHTMLSafe$1(value)) {
6744
6077
  return true;
6745
6078
  }
@@ -6835,9 +6168,9 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
6835
6168
  } = _ref12;
6836
6169
  var nameOrValueRef = positional[0];
6837
6170
  (true && !(positional.length === 1 && nameOrValueRef) && (0, _debug.assert)(`[BUG] wrong number of positional arguments, expecting 1, got ${positional.length}`, positional.length === 1 && nameOrValueRef));
6838
- var typeRef = named.type;
6839
- var locRef = named.loc;
6840
- var originalRef = named.original;
6171
+ var typeRef = named['type'];
6172
+ var locRef = named['loc'];
6173
+ var originalRef = named['original'];
6841
6174
  (true && !(typeRef) && (0, _debug.assert)(`[BUG] expecting \`type\` named argument`, typeRef));
6842
6175
  (true && !(locRef) && (0, _debug.assert)(`[BUG] expecting \`loc\` named argument`, locRef));
6843
6176
  (true && !(originalRef) && (0, _debug.assert)(`[BUG] expecting \`original\` named argument`, originalRef)); // Bug: why do these fail?
@@ -7221,7 +6554,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
7221
6554
  @module ember
7222
6555
  */
7223
6556
 
7224
- internalHelper(() => {
6557
+ var uniqueId = internalHelper(() => {
7225
6558
  return (0, _reference.createConstRef)(uniqueId$1(), 'unique-id');
7226
6559
  }); // From https://gist.github.com/selfish/fef2c0ba6cdfe07af76e64cecd74888b
7227
6560
  //
@@ -7754,7 +7087,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
7754
7087
  var outletRef = (0, _reference.createComputeRef)(() => {
7755
7088
  var state = (0, _reference.valueForRef)(scope.get('outletState'));
7756
7089
  var outlets = state !== undefined ? state.outlets : undefined;
7757
- return outlets !== undefined ? outlets.main : undefined;
7090
+ return outlets !== undefined ? outlets['main'] : undefined;
7758
7091
  });
7759
7092
  var lastState = null;
7760
7093
  var definition = null;
@@ -7779,7 +7112,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
7779
7112
  // provide the correct updated value. So we stop updating and return
7780
7113
  // the _last_ model value for that outlet.
7781
7114
 
7782
- named.model = (0, _reference.createComputeRef)(() => {
7115
+ named['model'] = (0, _reference.createComputeRef)(() => {
7783
7116
  if (lastState === state) {
7784
7117
  model = (0, _reference.valueForRef)(modelRef);
7785
7118
  }
@@ -7790,7 +7123,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
7790
7123
  if (true
7791
7124
  /* DEBUG */
7792
7125
  ) {
7793
- named.model = (0, _reference.createDebugAliasRef)('@model', named.model);
7126
+ named['model'] = (0, _reference.createDebugAliasRef)('@model', named['model']);
7794
7127
  }
7795
7128
 
7796
7129
  var args = (0, _runtime.createCapturedArgs)(named, _runtime.EMPTY_POSITIONAL);
@@ -7920,6 +7253,9 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
7920
7253
  get: _runtime.get,
7921
7254
  hash: _runtime.hash
7922
7255
  });
7256
+ {
7257
+ BUILTIN_HELPERS['unique-id'] = uniqueId;
7258
+ }
7923
7259
  var BUILTIN_KEYWORD_MODIFIERS = {
7924
7260
  action: actionModifier
7925
7261
  };
@@ -8076,6 +7412,107 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
8076
7412
 
8077
7413
  }
8078
7414
 
7415
+ var TOP_LEVEL_NAME = '-top-level';
7416
+ var TOP_LEVEL_OUTLET = 'main';
7417
+
7418
+ class OutletView {
7419
+ constructor(_environment, owner, template, namespace) {
7420
+ this._environment = _environment;
7421
+ this.owner = owner;
7422
+ this.template = template;
7423
+ this.namespace = namespace;
7424
+ var outletStateTag = (0, _validator.createTag)();
7425
+ var outletState = {
7426
+ outlets: {
7427
+ main: undefined
7428
+ },
7429
+ render: {
7430
+ owner: owner,
7431
+ into: undefined,
7432
+ outlet: TOP_LEVEL_OUTLET,
7433
+ name: TOP_LEVEL_NAME,
7434
+ controller: undefined,
7435
+ model: undefined,
7436
+ template
7437
+ }
7438
+ };
7439
+ var ref = this.ref = (0, _reference.createComputeRef)(() => {
7440
+ (0, _validator.consumeTag)(outletStateTag);
7441
+ return outletState;
7442
+ }, state => {
7443
+ (0, _validator.dirtyTag)(outletStateTag);
7444
+ outletState.outlets['main'] = state;
7445
+ });
7446
+ this.state = {
7447
+ ref,
7448
+ name: TOP_LEVEL_NAME,
7449
+ outlet: TOP_LEVEL_OUTLET,
7450
+ template,
7451
+ controller: undefined,
7452
+ model: undefined
7453
+ };
7454
+ }
7455
+
7456
+ static extend(injections) {
7457
+ return class extends OutletView {
7458
+ static create(options) {
7459
+ if (options) {
7460
+ return super.create(Object.assign({}, injections, options));
7461
+ } else {
7462
+ return super.create(injections);
7463
+ }
7464
+ }
7465
+
7466
+ };
7467
+ }
7468
+
7469
+ static reopenClass(injections) {
7470
+ Object.assign(this, injections);
7471
+ }
7472
+
7473
+ static create(options) {
7474
+ var {
7475
+ environment: _environment,
7476
+ application: namespace,
7477
+ template: templateFactory$$1
7478
+ } = options;
7479
+ var owner = (0, _owner2.getOwner)(options);
7480
+ (true && !(owner) && (0, _debug.assert)('OutletView is unexpectedly missing an owner', owner));
7481
+ var template = templateFactory$$1(owner);
7482
+ return new OutletView(_environment, owner, template, namespace);
7483
+ }
7484
+
7485
+ appendTo(selector) {
7486
+ var target;
7487
+
7488
+ if (this._environment.hasDOM) {
7489
+ target = typeof selector === 'string' ? document.querySelector(selector) : selector;
7490
+ } else {
7491
+ target = selector;
7492
+ }
7493
+
7494
+ var renderer = this.owner.lookup('renderer:-dom'); // SAFETY: It's not clear that this cast is safe.
7495
+ // The types for appendOutletView may be incorrect or this is a potential bug.
7496
+
7497
+ (0, _runloop.schedule)('render', renderer, 'appendOutletView', this, target);
7498
+ }
7499
+
7500
+ rerender() {
7501
+ /**/
7502
+ }
7503
+
7504
+ setOutletState(state) {
7505
+ (0, _reference.updateRef)(this.ref, state);
7506
+ }
7507
+
7508
+ destroy() {
7509
+ /**/
7510
+ }
7511
+
7512
+ }
7513
+
7514
+ _exports.OutletView = OutletView;
7515
+
8079
7516
  class DynamicScope {
8080
7517
  constructor(view, outletState) {
8081
7518
  this.view = view;
@@ -8133,7 +7570,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
8133
7570
  this.root = root;
8134
7571
  this.runtime = runtime;
8135
7572
  (true && !(template !== undefined) && (0, _debug.assert)(`You cannot render \`${(0, _reference.valueForRef)(self)}\` without a template.`, template !== undefined));
8136
- this.id = (0, _views.getViewId)(root);
7573
+ this.id = root instanceof OutletView ? (0, _utils.guidFor)(root) : (0, _views.getViewId)(root);
8137
7574
  this.result = undefined;
8138
7575
  this.destroyed = false;
8139
7576
  this.render = errorLoopTransaction(() => {
@@ -8575,106 +8012,6 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
8575
8012
  "moduleName": "packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",
8576
8013
  "isStrictMode": false
8577
8014
  });
8578
- var TOP_LEVEL_NAME = '-top-level';
8579
- var TOP_LEVEL_OUTLET = 'main';
8580
-
8581
- class OutletView {
8582
- constructor(_environment, owner, template, namespace) {
8583
- this._environment = _environment;
8584
- this.owner = owner;
8585
- this.template = template;
8586
- this.namespace = namespace;
8587
- var outletStateTag = (0, _validator.createTag)();
8588
- var outletState = {
8589
- outlets: {
8590
- main: undefined
8591
- },
8592
- render: {
8593
- owner: owner,
8594
- into: undefined,
8595
- outlet: TOP_LEVEL_OUTLET,
8596
- name: TOP_LEVEL_NAME,
8597
- controller: undefined,
8598
- model: undefined,
8599
- template
8600
- }
8601
- };
8602
- var ref = this.ref = (0, _reference.createComputeRef)(() => {
8603
- (0, _validator.consumeTag)(outletStateTag);
8604
- return outletState;
8605
- }, state => {
8606
- (0, _validator.dirtyTag)(outletStateTag);
8607
- outletState.outlets.main = state;
8608
- });
8609
- this.state = {
8610
- ref,
8611
- name: TOP_LEVEL_NAME,
8612
- outlet: TOP_LEVEL_OUTLET,
8613
- template,
8614
- controller: undefined,
8615
- model: undefined
8616
- };
8617
- }
8618
-
8619
- static extend(injections) {
8620
- return class extends OutletView {
8621
- static create(options) {
8622
- if (options) {
8623
- return super.create(Object.assign({}, injections, options));
8624
- } else {
8625
- return super.create(injections);
8626
- }
8627
- }
8628
-
8629
- };
8630
- }
8631
-
8632
- static reopenClass(injections) {
8633
- Object.assign(this, injections);
8634
- }
8635
-
8636
- static create(options) {
8637
- var {
8638
- environment: _environment,
8639
- application: namespace,
8640
- template: templateFactory$$1
8641
- } = options;
8642
- var owner = (0, _owner2.getOwner)(options);
8643
- (true && !(owner) && (0, _debug.assert)('OutletView is unexpectedly missing an owner', owner));
8644
- var template = templateFactory$$1(owner);
8645
- return new OutletView(_environment, owner, template, namespace);
8646
- }
8647
-
8648
- appendTo(selector) {
8649
- var target;
8650
-
8651
- if (this._environment.hasDOM) {
8652
- target = typeof selector === 'string' ? document.querySelector(selector) : selector;
8653
- } else {
8654
- target = selector;
8655
- }
8656
-
8657
- var renderer = this.owner.lookup('renderer:-dom'); // SAFETY: It's not clear that this cast is safe.
8658
- // The types for appendOutletView may be incorrect or this is a potential bug.
8659
-
8660
- (0, _runloop.schedule)('render', renderer, 'appendOutletView', this, target);
8661
- }
8662
-
8663
- rerender() {
8664
- /**/
8665
- }
8666
-
8667
- setOutletState(state) {
8668
- (0, _reference.updateRef)(this.ref, state);
8669
- }
8670
-
8671
- destroy() {
8672
- /**/
8673
- }
8674
-
8675
- }
8676
-
8677
- _exports.OutletView = OutletView;
8678
8015
 
8679
8016
  function setupApplicationRegistry(registry) {
8680
8017
  // because we are using injections we can't use instantiate false
@@ -11527,10 +10864,6 @@ define("@ember/-internals/metal/index", ["exports", "@ember/-internals/meta", "@
11527
10864
  function isPath(path) {
11528
10865
  return typeof path === 'string' && firstDotIndexCache.get(path) !== -1;
11529
10866
  }
11530
- /**
11531
- @module @ember/object
11532
- */
11533
-
11534
10867
 
11535
10868
  var PROXY_CONTENT = (0, _utils.symbol)('PROXY_CONTENT');
11536
10869
  _exports.PROXY_CONTENT = PROXY_CONTENT;
@@ -12569,7 +11902,7 @@ define("@ember/-internals/metal/index", ["exports", "@ember/-internals/meta", "@
12569
11902
  } else if (_mixins !== undefined) {
12570
11903
  mergeMixins(_mixins, meta$$1, descs, values, base, keys, keysWithSuper);
12571
11904
 
12572
- if (currentMixin._without !== undefined) {
11905
+ if (currentMixin instanceof Mixin && currentMixin._without !== undefined) {
12573
11906
  currentMixin._without.forEach(keyName => {
12574
11907
  // deleting the key means we won't process the value
12575
11908
  var index = keys.indexOf(keyName);
@@ -13302,40 +12635,38 @@ define("@ember/-internals/metal/index", ["exports", "@ember/-internals/meta", "@
13302
12635
  _exports.TrackedDescriptor = TrackedDescriptor;
13303
12636
 
13304
12637
  var cached = function () {
13305
- {
13306
- for (var _len12 = arguments.length, args = new Array(_len12), _key13 = 0; _key13 < _len12; _key13++) {
13307
- args[_key13] = arguments[_key13];
13308
- }
12638
+ for (var _len12 = arguments.length, args = new Array(_len12), _key13 = 0; _key13 < _len12; _key13++) {
12639
+ args[_key13] = arguments[_key13];
12640
+ }
13309
12641
 
13310
- var [target, key, descriptor] = args; // Error on `@cached()`, `@cached(...args)`, and `@cached propName = value;`
12642
+ var [target, key, descriptor] = args; // Error on `@cached()`, `@cached(...args)`, and `@cached propName = value;`
13311
12643
 
13312
- if (true
13313
- /* DEBUG */
13314
- && target === undefined) throwCachedExtraneousParens();
12644
+ if (true
12645
+ /* DEBUG */
12646
+ && target === undefined) throwCachedExtraneousParens();
13315
12647
 
13316
- if (true
13317
- /* DEBUG */
13318
- && (typeof target !== 'object' || typeof key !== 'string' || typeof descriptor !== 'object' || args.length !== 3)) {
13319
- throwCachedInvalidArgsError(args);
13320
- }
12648
+ if (true
12649
+ /* DEBUG */
12650
+ && (typeof target !== 'object' || typeof key !== 'string' || typeof descriptor !== 'object' || args.length !== 3)) {
12651
+ throwCachedInvalidArgsError(args);
12652
+ }
13321
12653
 
13322
- if (true
13323
- /* DEBUG */
13324
- && (!('get' in descriptor) || typeof descriptor.get !== 'function')) {
13325
- throwCachedGetterOnlyError(key);
13326
- }
12654
+ if (true
12655
+ /* DEBUG */
12656
+ && (!('get' in descriptor) || typeof descriptor.get !== 'function')) {
12657
+ throwCachedGetterOnlyError(key);
12658
+ }
13327
12659
 
13328
- var caches = new WeakMap();
13329
- var getter = descriptor.get;
12660
+ var caches = new WeakMap();
12661
+ var getter = descriptor.get;
13330
12662
 
13331
- descriptor.get = function () {
13332
- if (!caches.has(this)) {
13333
- caches.set(this, (0, _validator.createCache)(getter.bind(this)));
13334
- }
12663
+ descriptor.get = function () {
12664
+ if (!caches.has(this)) {
12665
+ caches.set(this, (0, _validator.createCache)(getter.bind(this)));
12666
+ }
13335
12667
 
13336
- return (0, _validator.getValue)(caches.get(this));
13337
- };
13338
- }
12668
+ return (0, _validator.getValue)(caches.get(this));
12669
+ };
13339
12670
  };
13340
12671
 
13341
12672
  _exports.cached = cached;
@@ -15028,151 +14359,6 @@ define("@ember/-internals/routing/lib/services/router", ["exports", "@ember/-int
15028
14359
  }
15029
14360
 
15030
14361
  class RouterService extends _service.default.extend(_runtime.Evented) {
15031
- constructor() {
15032
- super(...arguments);
15033
- /**
15034
- You can register a listener for events emitted by this service with `.on()`:
15035
- ```app/routes/contact-form.js
15036
- import Route from '@ember/routing';
15037
- import { service } from '@ember/service';
15038
- export default class extends Route {
15039
- @service router;
15040
- activate() {
15041
- this.router.on('routeWillChange', (transition) => {
15042
- if (!transition.to.find(route => route.name === this.routeName)) {
15043
- alert("Please save or cancel your changes.");
15044
- transition.abort();
15045
- }
15046
- })
15047
- }
15048
- }
15049
- ```
15050
- @method on
15051
- @param {String} eventName
15052
- @param {Function} callback
15053
- @public
15054
- */
15055
-
15056
- /**
15057
- You can unregister a listener for events emitted by this service with `.off()`:
15058
- ```app/routes/contact-form.js
15059
- import Route from '@ember/routing';
15060
- import { service } from '@ember/service';
15061
- export default class extends Route {
15062
- @service router;
15063
- callback = (transition) => {
15064
- if (!transition.to.find(route => route.name === this.routeName)) {
15065
- alert("Please save or cancel your changes.");
15066
- transition.abort();
15067
- }
15068
- };
15069
- activate() {
15070
- this.router.on('routeWillChange', this.callback);
15071
- }
15072
- deactivate() {
15073
- this.router.off('routeWillChange', this.callback);
15074
- }
15075
- ```
15076
- @method off
15077
- @param {String} eventName
15078
- @param {Function} callback
15079
- @public
15080
- */
15081
-
15082
- /**
15083
- The `routeWillChange` event is fired at the beginning of any
15084
- attempted transition with a `Transition` object as the sole
15085
- argument. This action can be used for aborting, redirecting,
15086
- or decorating the transition from the currently active routes.
15087
- A good example is preventing navigation when a form is
15088
- half-filled out:
15089
- ```app/routes/contact-form.js
15090
- import Route from '@ember/routing';
15091
- import { service } from '@ember/service';
15092
- export default class extends Route {
15093
- @service router;
15094
- activate() {
15095
- this.router.on('routeWillChange', (transition) => {
15096
- if (!transition.to.find(route => route.name === this.routeName)) {
15097
- alert("Please save or cancel your changes.");
15098
- transition.abort();
15099
- }
15100
- })
15101
- }
15102
- }
15103
- ```
15104
- The `routeWillChange` event fires whenever a new route is chosen as the desired target of a transition. This includes `transitionTo`, `replaceWith`, all redirection for any reason including error handling, and abort. Aborting implies changing the desired target back to where you already were. Once a transition has completed, `routeDidChange` fires.
15105
- @event routeWillChange
15106
- @param {Transition} transition
15107
- @public
15108
- */
15109
-
15110
- /**
15111
- The `routeDidChange` event only fires once a transition has settled.
15112
- This includes aborts and error substates. Like the `routeWillChange` event
15113
- it receives a Transition as the sole argument.
15114
- A good example is sending some analytics when the route has transitioned:
15115
- ```app/routes/contact-form.js
15116
- import Route from '@ember/routing';
15117
- import { service } from '@ember/service';
15118
- export default class extends Route {
15119
- @service router;
15120
- activate() {
15121
- this.router.on('routeDidChange', (transition) => {
15122
- ga.send('pageView', {
15123
- current: transition.to.name,
15124
- from: transition.from.name
15125
- });
15126
- })
15127
- }
15128
- }
15129
- ```
15130
- `routeDidChange` will be called after any `Route`'s
15131
- [didTransition](/ember/release/classes/Route/events/didTransition?anchor=didTransition)
15132
- action has been fired.
15133
- The updates of properties
15134
- [currentURL](/ember/release/classes/RouterService/properties/currentURL?anchor=currentURL),
15135
- [currentRouteName](/ember/release/classes/RouterService/properties/currentURL?anchor=currentRouteName)
15136
- and
15137
- [currentRoute](/ember/release/classes/RouterService/properties/currentURL?anchor=currentRoute)
15138
- are completed at the time `routeDidChange` is called.
15139
- @event routeDidChange
15140
- @param {Transition} transition
15141
- @public
15142
- */
15143
- // Canary features
15144
-
15145
- /**
15146
- * Refreshes all currently active routes, doing a full transition.
15147
- * If a route name is provided and refers to a currently active route,
15148
- * it will refresh only that route and its descendents.
15149
- * Returns a promise that will be resolved once the refresh is complete.
15150
- * All resetController, beforeModel, model, afterModel, redirect, and setupController
15151
- * hooks will be called again. You will get new data from the model hook.
15152
- *
15153
- * @method refresh
15154
- * @param {String} [routeName] the route to refresh (along with all child routes)
15155
- * @return Transition
15156
- * @category EMBER_ROUTING_ROUTER_SERVICE_REFRESH
15157
- * @public
15158
- */
15159
-
15160
- this.refresh = true
15161
- /* EMBER_ROUTING_ROUTER_SERVICE_REFRESH */
15162
- ? function (pivotRouteName) {
15163
- if (!pivotRouteName) {
15164
- return this._router._routerMicrolib.refresh();
15165
- }
15166
-
15167
- (true && !(this._router.hasRoute(pivotRouteName)) && (0, _debug.assert)(`The route "${pivotRouteName}" was not found`, this._router.hasRoute(pivotRouteName)));
15168
- (true && !(this.isActive(pivotRouteName)) && (0, _debug.assert)(`The route "${pivotRouteName}" is currently not active`, this.isActive(pivotRouteName)));
15169
- var owner = (0, _owner.getOwner)(this);
15170
- (true && !(owner) && (0, _debug.assert)('RouterService is unexpectedly missing an owner', owner));
15171
- var pivotRoute = owner.lookup(`route:${pivotRouteName}`);
15172
- return this._router._routerMicrolib.refresh(pivotRoute);
15173
- } : undefined;
15174
- }
15175
-
15176
14362
  get _router() {
15177
14363
  var router = this[ROUTER];
15178
14364
 
@@ -15508,6 +14694,146 @@ define("@ember/-internals/routing/lib/services/router", ["exports", "@ember/-int
15508
14694
  var internalURL = cleanURL(url, this.rootURL);
15509
14695
  return this._router._routerMicrolib.recognizeAndLoad(internalURL);
15510
14696
  }
14697
+ /**
14698
+ You can register a listener for events emitted by this service with `.on()`:
14699
+ ```app/routes/contact-form.js
14700
+ import Route from '@ember/routing';
14701
+ import { service } from '@ember/service';
14702
+ export default class extends Route {
14703
+ @service router;
14704
+ activate() {
14705
+ this.router.on('routeWillChange', (transition) => {
14706
+ if (!transition.to.find(route => route.name === this.routeName)) {
14707
+ alert("Please save or cancel your changes.");
14708
+ transition.abort();
14709
+ }
14710
+ })
14711
+ }
14712
+ }
14713
+ ```
14714
+ @method on
14715
+ @param {String} eventName
14716
+ @param {Function} callback
14717
+ @public
14718
+ */
14719
+
14720
+ /**
14721
+ You can unregister a listener for events emitted by this service with `.off()`:
14722
+ ```app/routes/contact-form.js
14723
+ import Route from '@ember/routing';
14724
+ import { service } from '@ember/service';
14725
+ export default class extends Route {
14726
+ @service router;
14727
+ callback = (transition) => {
14728
+ if (!transition.to.find(route => route.name === this.routeName)) {
14729
+ alert("Please save or cancel your changes.");
14730
+ transition.abort();
14731
+ }
14732
+ };
14733
+ activate() {
14734
+ this.router.on('routeWillChange', this.callback);
14735
+ }
14736
+ deactivate() {
14737
+ this.router.off('routeWillChange', this.callback);
14738
+ }
14739
+ ```
14740
+ @method off
14741
+ @param {String} eventName
14742
+ @param {Function} callback
14743
+ @public
14744
+ */
14745
+
14746
+ /**
14747
+ The `routeWillChange` event is fired at the beginning of any
14748
+ attempted transition with a `Transition` object as the sole
14749
+ argument. This action can be used for aborting, redirecting,
14750
+ or decorating the transition from the currently active routes.
14751
+ A good example is preventing navigation when a form is
14752
+ half-filled out:
14753
+ ```app/routes/contact-form.js
14754
+ import Route from '@ember/routing';
14755
+ import { service } from '@ember/service';
14756
+ export default class extends Route {
14757
+ @service router;
14758
+ activate() {
14759
+ this.router.on('routeWillChange', (transition) => {
14760
+ if (!transition.to.find(route => route.name === this.routeName)) {
14761
+ alert("Please save or cancel your changes.");
14762
+ transition.abort();
14763
+ }
14764
+ })
14765
+ }
14766
+ }
14767
+ ```
14768
+ The `routeWillChange` event fires whenever a new route is chosen as the desired target of a transition. This includes `transitionTo`, `replaceWith`, all redirection for any reason including error handling, and abort. Aborting implies changing the desired target back to where you already were. Once a transition has completed, `routeDidChange` fires.
14769
+ @event routeWillChange
14770
+ @param {Transition} transition
14771
+ @public
14772
+ */
14773
+
14774
+ /**
14775
+ The `routeDidChange` event only fires once a transition has settled.
14776
+ This includes aborts and error substates. Like the `routeWillChange` event
14777
+ it receives a Transition as the sole argument.
14778
+ A good example is sending some analytics when the route has transitioned:
14779
+ ```app/routes/contact-form.js
14780
+ import Route from '@ember/routing';
14781
+ import { service } from '@ember/service';
14782
+ export default class extends Route {
14783
+ @service router;
14784
+ activate() {
14785
+ this.router.on('routeDidChange', (transition) => {
14786
+ ga.send('pageView', {
14787
+ current: transition.to.name,
14788
+ from: transition.from.name
14789
+ });
14790
+ })
14791
+ }
14792
+ }
14793
+ ```
14794
+ `routeDidChange` will be called after any `Route`'s
14795
+ [didTransition](/ember/release/classes/Route/events/didTransition?anchor=didTransition)
14796
+ action has been fired.
14797
+ The updates of properties
14798
+ [currentURL](/ember/release/classes/RouterService/properties/currentURL?anchor=currentURL),
14799
+ [currentRouteName](/ember/release/classes/RouterService/properties/currentURL?anchor=currentRouteName)
14800
+ and
14801
+ [currentRoute](/ember/release/classes/RouterService/properties/currentURL?anchor=currentRoute)
14802
+ are completed at the time `routeDidChange` is called.
14803
+ @event routeDidChange
14804
+ @param {Transition} transition
14805
+ @public
14806
+ */
14807
+
14808
+ /**
14809
+ * Refreshes all currently active routes, doing a full transition.
14810
+ * If a route name is provided and refers to a currently active route,
14811
+ * it will refresh only that route and its descendents.
14812
+ * Returns a promise that will be resolved once the refresh is complete.
14813
+ * All resetController, beforeModel, model, afterModel, redirect, and setupController
14814
+ * hooks will be called again. You will get new data from the model hook.
14815
+ *
14816
+ * @method refresh
14817
+ * @param {String} [routeName] the route to refresh (along with all child routes)
14818
+ * @return Transition
14819
+ * @public
14820
+ */
14821
+
14822
+
14823
+ refresh(pivotRouteName) {
14824
+ if (!pivotRouteName) {
14825
+ return this._router._routerMicrolib.refresh();
14826
+ }
14827
+
14828
+ (true && !(this._router.hasRoute(pivotRouteName)) && (0, _debug.assert)(`The route "${pivotRouteName}" was not found`, this._router.hasRoute(pivotRouteName)));
14829
+ (true && !(this.isActive(pivotRouteName)) && (0, _debug.assert)(`The route "${pivotRouteName}" is currently not active`, this.isActive(pivotRouteName)));
14830
+ var owner = (0, _owner.getOwner)(this);
14831
+ (true && !(owner) && (0, _debug.assert)('RouterService is unexpectedly missing an owner', owner));
14832
+ var pivotRoute = owner.lookup(`route:${pivotRouteName}`); // R could be instantiated with a different sub-type
14833
+ // @ts-ignore
14834
+
14835
+ return this._router._routerMicrolib.refresh(pivotRoute);
14836
+ }
15511
14837
 
15512
14838
  }
15513
14839
 
@@ -18025,6 +17351,8 @@ define("@ember/-internals/routing/lib/system/router", ["exports", "@ember/-inter
18025
17351
  seen[name] = true;
18026
17352
 
18027
17353
  if (!route) {
17354
+ // SAFETY: this is configured in `commonSetupRegistry` in the
17355
+ // `@ember/application/lib` package.
18028
17356
  var DefaultRoute = routeOwner.factoryFor('route:basic').class;
18029
17357
  routeOwner.register(fullRouteName, DefaultRoute.extend());
18030
17358
  route = routeOwner.lookup(fullRouteName);
@@ -19473,7 +18801,7 @@ define("@ember/-internals/routing/lib/system/router", ["exports", "@ember/-inter
19473
18801
  // Create an entry to represent our default template name,
19474
18802
  // just so other routes can target it and inherit its place
19475
18803
  // in the outlet hierarchy.
19476
- defaultParentState.outlets.main = {
18804
+ defaultParentState.outlets['main'] = {
19477
18805
  render: {
19478
18806
  name: routeName,
19479
18807
  outlet: 'main'
@@ -20433,13 +19761,17 @@ define("@ember/-internals/runtime/lib/ext/rsvp", ["exports", "rsvp", "@ember/run
20433
19761
 
20434
19762
  function errorFor(reason) {
20435
19763
  if (!reason) return;
19764
+ var withErrorThrown = reason;
20436
19765
 
20437
- if (reason.errorThrown) {
20438
- return unwrapErrorThrown(reason);
19766
+ if (withErrorThrown.errorThrown) {
19767
+ return unwrapErrorThrown(withErrorThrown);
20439
19768
  }
20440
19769
 
20441
- if (reason.name === 'UnrecognizedURLError') {
20442
- (true && !(false) && (0, _debug.assert)(`The URL '${reason.message}' did not match any routes in your application`, false));
19770
+ var withName = reason;
19771
+
19772
+ if (withName.name === 'UnrecognizedURLError') {
19773
+ (true && !(false) && (0, _debug.assert)(`The URL '${withName.message}' did not match any routes in your application`, false)); // @ts-expect-error We'll hit this if the assert is stripped
19774
+
20443
19775
  return;
20444
19776
  }
20445
19777
 
@@ -20598,7 +19930,7 @@ define("@ember/-internals/runtime/lib/mixins/-proxy", ["exports", "@ember/-inter
20598
19930
  var _default = _metal.Mixin.create({
20599
19931
  /**
20600
19932
  The object whose properties will be forwarded.
20601
- @property content
19933
+ @property content
20602
19934
  @type {unknown}
20603
19935
  @default null
20604
19936
  @public
@@ -22254,7 +21586,7 @@ define("@ember/-internals/runtime/lib/mixins/array", ["exports", "@ember/-intern
22254
21586
  colors.unshiftObjects('yellow'); // Type Error: 'undefined' is not a function
22255
21587
  ```
22256
21588
  @method unshiftObjects
22257
- @param {Enumberable} objects the objects to add
21589
+ @param {Enumerable} objects the objects to add
22258
21590
  @return {EmberArray} receiver
22259
21591
  @public
22260
21592
  */
@@ -23419,7 +22751,7 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23419
22751
  /**
23420
22752
  If the proxied promise is rejected this will contain the reason
23421
22753
  provided.
23422
- @property reason
22754
+ @property reason
23423
22755
  @default null
23424
22756
  @public
23425
22757
  */
@@ -23427,7 +22759,7 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23427
22759
 
23428
22760
  /**
23429
22761
  Once the proxied promise has settled this will become `false`.
23430
- @property isPending
22762
+ @property isPending
23431
22763
  @default true
23432
22764
  @public
23433
22765
  */
@@ -23437,7 +22769,7 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23437
22769
 
23438
22770
  /**
23439
22771
  Once the proxied promise has settled this will become `true`.
23440
- @property isSettled
22772
+ @property isSettled
23441
22773
  @default false
23442
22774
  @public
23443
22775
  */
@@ -23447,7 +22779,7 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23447
22779
 
23448
22780
  /**
23449
22781
  Will become `true` if the proxied promise is rejected.
23450
- @property isRejected
22782
+ @property isRejected
23451
22783
  @default false
23452
22784
  @public
23453
22785
  */
@@ -23455,7 +22787,7 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23455
22787
 
23456
22788
  /**
23457
22789
  Will become `true` if the proxied promise is fulfilled.
23458
- @property isFulfilled
22790
+ @property isFulfilled
23459
22791
  @default false
23460
22792
  @public
23461
22793
  */
@@ -23463,17 +22795,17 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23463
22795
 
23464
22796
  /**
23465
22797
  The promise whose fulfillment value is being proxied by this object.
23466
- This property must be specified upon creation, and should not be
22798
+ This property must be specified upon creation, and should not be
23467
22799
  changed once created.
23468
- Example:
23469
- ```javascript
22800
+ Example:
22801
+ ```javascript
23470
22802
  import ObjectProxy from '@ember/object/proxy';
23471
22803
  import PromiseProxyMixin from '@ember/object/promise-proxy-mixin';
23472
- ObjectProxy.extend(PromiseProxyMixin).create({
22804
+ ObjectProxy.extend(PromiseProxyMixin).create({
23473
22805
  promise: <thenable>
23474
22806
  });
23475
22807
  ```
23476
- @property promise
22808
+ @property promise
23477
22809
  @public
23478
22810
  */
23479
22811
  promise: (0, _metal.computed)({
@@ -23489,8 +22821,8 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23489
22821
 
23490
22822
  /**
23491
22823
  An alias to the proxied promise's `then`.
23492
- See RSVP.Promise.then.
23493
- @method then
22824
+ See RSVP.Promise.then.
22825
+ @method then
23494
22826
  @param {Function} callback
23495
22827
  @return {RSVP.Promise}
23496
22828
  @public
@@ -23499,8 +22831,8 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23499
22831
 
23500
22832
  /**
23501
22833
  An alias to the proxied promise's `catch`.
23502
- See RSVP.Promise.catch.
23503
- @method catch
22834
+ See RSVP.Promise.catch.
22835
+ @method catch
23504
22836
  @param {Function} callback
23505
22837
  @return {RSVP.Promise}
23506
22838
  @since 1.3.0
@@ -23510,8 +22842,8 @@ define("@ember/-internals/runtime/lib/mixins/promise_proxy", ["exports", "@ember
23510
22842
 
23511
22843
  /**
23512
22844
  An alias to the proxied promise's `finally`.
23513
- See RSVP.Promise.finally.
23514
- @method finally
22845
+ See RSVP.Promise.finally.
22846
+ @method finally
23515
22847
  @param {Function} callback
23516
22848
  @return {RSVP.Promise}
23517
22849
  @since 1.3.0
@@ -23802,9 +23134,9 @@ define("@ember/-internals/runtime/lib/mixins/target_action_support", ["exports",
23802
23134
  /**
23803
23135
  Send an `action` with an `actionContext` to a `target`. The action, actionContext
23804
23136
  and target will be retrieved from properties of the object. For example:
23805
- ```javascript
23137
+ ```javascript
23806
23138
  import { alias } from '@ember/object/computed';
23807
- App.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {
23139
+ App.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {
23808
23140
  target: alias('controller'),
23809
23141
  action: 'save',
23810
23142
  actionContext: alias('context'),
@@ -23814,9 +23146,9 @@ define("@ember/-internals/runtime/lib/mixins/target_action_support", ["exports",
23814
23146
  }
23815
23147
  });
23816
23148
  ```
23817
- The `target`, `action`, and `actionContext` can be provided as properties of
23149
+ The `target`, `action`, and `actionContext` can be provided as properties of
23818
23150
  an optional object argument to `triggerAction` as well.
23819
- ```javascript
23151
+ ```javascript
23820
23152
  App.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {
23821
23153
  click() {
23822
23154
  this.triggerAction({
@@ -23828,12 +23160,12 @@ define("@ember/-internals/runtime/lib/mixins/target_action_support", ["exports",
23828
23160
  }
23829
23161
  });
23830
23162
  ```
23831
- The `actionContext` defaults to the object you are mixing `TargetActionSupport` into.
23163
+ The `actionContext` defaults to the object you are mixing `TargetActionSupport` into.
23832
23164
  But `target` and `action` must be specified either as properties or with the argument
23833
23165
  to `triggerAction`, or a combination:
23834
- ```javascript
23166
+ ```javascript
23835
23167
  import { alias } from '@ember/object/computed';
23836
- App.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {
23168
+ App.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {
23837
23169
  target: alias('controller'),
23838
23170
  click() {
23839
23171
  this.triggerAction({
@@ -23843,7 +23175,7 @@ define("@ember/-internals/runtime/lib/mixins/target_action_support", ["exports",
23843
23175
  }
23844
23176
  });
23845
23177
  ```
23846
- @method triggerAction
23178
+ @method triggerAction
23847
23179
  @param opts {Object} (optional, with the optional keys action, target and/or actionContext)
23848
23180
  @return {Boolean} true if the action was sent successfully and did not return false
23849
23181
  @private
@@ -27601,12 +26933,14 @@ define("@ember/-internals/views/lib/system/utils", ["exports", "@ember/-internal
27601
26933
  _exports.setElementView = setElementView;
27602
26934
  _exports.setViewElement = setViewElement;
27603
26935
 
27604
- /* globals Element */
27605
-
27606
26936
  /**
27607
26937
  @module ember
27608
26938
  */
27609
26939
  function isSimpleClick(event) {
26940
+ if (!(event instanceof MouseEvent)) {
26941
+ return false;
26942
+ }
26943
+
27610
26944
  var modifier = event.shiftKey || event.metaKey || event.altKey || event.ctrlKey;
27611
26945
  var secondaryClick = event.which > 1; // IE9 may return undefined
27612
26946
 
@@ -27834,22 +27168,6 @@ define("@ember/-internals/views/lib/views/core_view", ["exports", "@ember/-inter
27834
27168
  });
27835
27169
  _exports.default = void 0;
27836
27170
 
27837
- /**
27838
- `Ember.CoreView` is an abstract class that exists to give view-like behavior
27839
- to both Ember's main view class `Component` and other classes that don't need
27840
- the full functionality of `Component`.
27841
-
27842
- Unless you have specific needs for `CoreView`, you will use `Component`
27843
- in your applications.
27844
-
27845
- @class CoreView
27846
- @namespace Ember
27847
- @extends EmberObject
27848
- @deprecated Use `Component` instead.
27849
- @uses Evented
27850
- @uses Ember.ActionHandler
27851
- @private
27852
- */
27853
27171
  var CoreView = _runtime.FrameworkObject.extend(_runtime.Evented, _runtime.ActionHandler, {
27854
27172
  isView: true,
27855
27173
  _states: _states.default,
@@ -27866,7 +27184,7 @@ define("@ember/-internals/views/lib/views/core_view", ["exports", "@ember/-inter
27866
27184
  /**
27867
27185
  If the view is currently inserted into the DOM of a parent view, this
27868
27186
  property will point to the parent of the view.
27869
- @property parentView
27187
+ @property parentView
27870
27188
  @type Ember.View
27871
27189
  @default null
27872
27190
  @private
@@ -27874,16 +27192,16 @@ define("@ember/-internals/views/lib/views/core_view", ["exports", "@ember/-inter
27874
27192
  parentView: null,
27875
27193
 
27876
27194
  instrumentDetails(hash) {
27877
- hash.object = this.toString();
27878
- hash.containerKey = this._debugContainerKey;
27879
- hash.view = this;
27195
+ hash['object'] = this.toString();
27196
+ hash['containerKey'] = this._debugContainerKey;
27197
+ hash['view'] = this;
27880
27198
  return hash;
27881
27199
  },
27882
27200
 
27883
27201
  /**
27884
27202
  Override the default event firing from `Evented` to
27885
27203
  also call methods with the given name.
27886
- @method trigger
27204
+ @method trigger
27887
27205
  @param name {String}
27888
27206
  @private
27889
27207
  */
@@ -29727,7 +29045,7 @@ define("@ember/canary-features/index", ["exports", "@ember/-internals/environmen
29727
29045
  Object.defineProperty(_exports, "__esModule", {
29728
29046
  value: true
29729
29047
  });
29730
- _exports.FEATURES = _exports.EMBER_UNIQUE_ID_HELPER = _exports.EMBER_ROUTING_ROUTER_SERVICE_REFRESH = _exports.EMBER_LIBRARIES_ISREGISTERED = _exports.EMBER_IMPROVED_INSTRUMENTATION = _exports.EMBER_CACHED = _exports.DEFAULT_FEATURES = void 0;
29048
+ _exports.FEATURES = _exports.EMBER_UNIQUE_ID_HELPER = _exports.EMBER_LIBRARIES_ISREGISTERED = _exports.EMBER_IMPROVED_INSTRUMENTATION = _exports.DEFAULT_FEATURES = void 0;
29731
29049
  _exports.isEnabled = isEnabled;
29732
29050
 
29733
29051
  /**
@@ -29743,9 +29061,7 @@ define("@ember/canary-features/index", ["exports", "@ember/-internals/environmen
29743
29061
  var DEFAULT_FEATURES = {
29744
29062
  EMBER_LIBRARIES_ISREGISTERED: null,
29745
29063
  EMBER_IMPROVED_INSTRUMENTATION: null,
29746
- EMBER_ROUTING_ROUTER_SERVICE_REFRESH: true,
29747
- EMBER_CACHED: true,
29748
- EMBER_UNIQUE_ID_HELPER: null
29064
+ EMBER_UNIQUE_ID_HELPER: true
29749
29065
  };
29750
29066
  /**
29751
29067
  The hash of enabled Canary features. Add to this, any canary features
@@ -29801,10 +29117,6 @@ define("@ember/canary-features/index", ["exports", "@ember/-internals/environmen
29801
29117
  _exports.EMBER_LIBRARIES_ISREGISTERED = EMBER_LIBRARIES_ISREGISTERED;
29802
29118
  var EMBER_IMPROVED_INSTRUMENTATION = featureValue(FEATURES.EMBER_IMPROVED_INSTRUMENTATION);
29803
29119
  _exports.EMBER_IMPROVED_INSTRUMENTATION = EMBER_IMPROVED_INSTRUMENTATION;
29804
- var EMBER_ROUTING_ROUTER_SERVICE_REFRESH = featureValue(FEATURES.EMBER_ROUTING_ROUTER_SERVICE_REFRESH);
29805
- _exports.EMBER_ROUTING_ROUTER_SERVICE_REFRESH = EMBER_ROUTING_ROUTER_SERVICE_REFRESH;
29806
- var EMBER_CACHED = featureValue(FEATURES.EMBER_CACHED);
29807
- _exports.EMBER_CACHED = EMBER_CACHED;
29808
29120
  var EMBER_UNIQUE_ID_HELPER = featureValue(FEATURES.EMBER_UNIQUE_ID_HELPER);
29809
29121
  _exports.EMBER_UNIQUE_ID_HELPER = EMBER_UNIQUE_ID_HELPER;
29810
29122
  });
@@ -30323,7 +29635,7 @@ define("@ember/debug/index", ["exports", "@ember/-internals/browser-environment"
30323
29635
  && !(0, _testing.isTesting)()) {
30324
29636
  if (typeof window !== 'undefined' && (_browserEnvironment.isFirefox || _browserEnvironment.isChrome) && window.addEventListener) {
30325
29637
  window.addEventListener('load', () => {
30326
- if (document.documentElement && document.documentElement.dataset && !document.documentElement.dataset.emberExtension) {
29638
+ if (document.documentElement && document.documentElement.dataset && !document.documentElement.dataset['emberExtension']) {
30327
29639
  var downloadURL;
30328
29640
 
30329
29641
  if (_browserEnvironment.isChrome) {
@@ -30445,11 +29757,15 @@ define("@ember/debug/lib/deprecate", ["exports", "@ember/-internals/environment"
30445
29757
  var formatMessage = function formatMessage(_message, options) {
30446
29758
  var message = _message;
30447
29759
 
30448
- if (options && options.id) {
29760
+ if (options === null || options === void 0 ? void 0 : options.id) {
30449
29761
  message = message + ` [deprecation id: ${options.id}]`;
30450
29762
  }
30451
29763
 
30452
- if (options && options.url) {
29764
+ if (options === null || options === void 0 ? void 0 : options.until) {
29765
+ message = message + ` This will be removed in Ember ${options.until}.`;
29766
+ }
29767
+
29768
+ if (options === null || options === void 0 ? void 0 : options.url) {
30453
29769
  message += ` See ${options.url} for more details.`;
30454
29770
  }
30455
29771
 
@@ -34760,6 +34076,19 @@ define("@ember/polyfills/lib/assign", ["exports", "@ember/debug"], function (_ex
34760
34076
  return Object.assign(target, ...rest);
34761
34077
  }
34762
34078
  });
34079
+ define("@ember/renderer/index", ["exports", "@ember/-internals/glimmer"], function (_exports, _glimmer) {
34080
+ "use strict";
34081
+
34082
+ Object.defineProperty(_exports, "__esModule", {
34083
+ value: true
34084
+ });
34085
+ Object.defineProperty(_exports, "renderSettled", {
34086
+ enumerable: true,
34087
+ get: function () {
34088
+ return _glimmer.renderSettled;
34089
+ }
34090
+ });
34091
+ });
34763
34092
  define("@ember/routing/auto-location", ["exports", "@ember/-internals/routing"], function (_exports, _routing) {
34764
34093
  "use strict";
34765
34094
 
@@ -55722,7 +55051,7 @@ define("ember/version", ["exports"], function (_exports) {
55722
55051
  value: true
55723
55052
  });
55724
55053
  _exports.default = void 0;
55725
- var _default = "4.4.0-alpha.3";
55054
+ var _default = "4.4.0-alpha.6";
55726
55055
  _exports.default = _default;
55727
55056
  });
55728
55057
  define("route-recognizer", ["exports"], function (_exports) {