ember-source 5.0.0 → 5.1.0-alpha.2

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 (176) hide show
  1. package/build-metadata.json +3 -3
  2. package/dist/ember-template-compiler.js +19 -35
  3. package/dist/ember-template-compiler.map +1 -1
  4. package/dist/ember-testing.js +8 -31
  5. package/dist/ember-testing.map +1 -1
  6. package/dist/ember.debug.js +798 -436
  7. package/dist/ember.debug.map +1 -1
  8. package/dist/header/license.js +1 -1
  9. package/dist/packages/@ember/-internals/glimmer/index.js +44 -89
  10. package/dist/packages/@ember/-internals/metal/index.js +7 -66
  11. package/dist/packages/@ember/-internals/utility-types/index.js +1 -1
  12. package/dist/packages/@ember/array/proxy.js +0 -1
  13. package/dist/packages/@ember/component/template-only.js +15 -27
  14. package/dist/packages/@ember/debug/index.js +6 -30
  15. package/dist/packages/@ember/debug/lib/warn.js +1 -0
  16. package/dist/packages/@ember/helper/index.js +139 -3
  17. package/dist/packages/@ember/modifier/index.js +11 -3
  18. package/dist/packages/@ember/object/core.js +37 -0
  19. package/dist/packages/@ember/object/mixin.js +1 -1
  20. package/dist/packages/@ember/object/proxy.js +1 -0
  21. package/dist/packages/@ember/routing/lib/utils.js +0 -1
  22. package/dist/packages/@ember/routing/route.js +8 -0
  23. package/dist/packages/@ember/routing/router-service.js +0 -1
  24. package/dist/packages/@ember/runloop/-private/backburner.js +10 -0
  25. package/dist/packages/@ember/runloop/index.js +6 -2
  26. package/dist/packages/@ember/test/index.js +5 -3
  27. package/dist/packages/ember/index.js +229 -220
  28. package/dist/packages/ember/version.js +1 -1
  29. package/dist/packages/ember-testing/lib/test/waiters.js +4 -1
  30. package/docs/data.json +478 -327
  31. package/package.json +26 -23
  32. package/types/publish.mjs +147 -354
  33. package/types/stable/@ember/-internals/glimmer/index.d.ts +6 -1
  34. package/types/stable/@ember/-internals/glimmer/lib/component.d.ts +256 -132
  35. package/types/stable/@ember/-internals/glimmer/lib/components/input.d.ts +5 -2
  36. package/types/stable/@ember/-internals/glimmer/lib/components/link-to.d.ts +5 -2
  37. package/types/stable/@ember/-internals/glimmer/lib/components/textarea.d.ts +8 -2
  38. package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +66 -56
  39. package/types/stable/@ember/-internals/glimmer/lib/templates/empty.d.ts +5 -0
  40. package/types/stable/@ember/-internals/glimmer/lib/templates/input.d.ts +5 -0
  41. package/types/stable/@ember/-internals/glimmer/lib/templates/link-to.d.ts +5 -0
  42. package/types/stable/@ember/-internals/glimmer/lib/templates/outlet.d.ts +5 -0
  43. package/types/stable/@ember/-internals/glimmer/lib/templates/root.d.ts +5 -0
  44. package/types/stable/@ember/-internals/glimmer/lib/templates/textarea.d.ts +5 -0
  45. package/types/stable/@ember/-internals/metal/lib/computed.d.ts +2 -1
  46. package/types/stable/@ember/-internals/metal/lib/computed_cache.d.ts +1 -0
  47. package/types/stable/@ember/-internals/metal/lib/get_properties.d.ts +4 -2
  48. package/types/stable/@ember/-internals/metal/lib/set_properties.d.ts +3 -5
  49. package/types/stable/@ember/-internals/utility-types/index.d.ts +5 -0
  50. package/types/stable/@ember/-internals/views/lib/component_lookup.d.ts +8 -1
  51. package/types/stable/@ember/-internals/views/lib/system/action_manager.d.ts +3 -4
  52. package/types/stable/@ember/-internals/views/lib/views/core_view.d.ts +4 -6
  53. package/types/stable/@ember/application/instance.d.ts +1 -1
  54. package/types/stable/@ember/array/index.d.ts +1 -1
  55. package/types/stable/@ember/array/proxy.d.ts +11 -13
  56. package/types/stable/@ember/component/helper.d.ts +6 -1
  57. package/types/stable/@ember/component/template-only.d.ts +36 -1
  58. package/types/stable/@ember/controller/index.d.ts +6 -5
  59. package/types/stable/@ember/debug/data-adapter.d.ts +10 -3
  60. package/types/stable/@ember/debug/index.d.ts +4 -1
  61. package/types/stable/@ember/debug/lib/warn.d.ts +6 -1
  62. package/types/stable/@ember/engine/index.d.ts +2 -1
  63. package/types/stable/@ember/engine/instance.d.ts +2 -1
  64. package/types/stable/@ember/helper/index.d.ts +141 -3
  65. package/types/stable/@ember/modifier/index.d.ts +11 -2
  66. package/types/stable/@ember/object/core.d.ts +14 -9
  67. package/types/stable/@ember/object/index.d.ts +3 -2
  68. package/types/stable/@ember/object/lib/computed/reduce_computed_macros.d.ts +1 -1
  69. package/types/stable/@ember/object/mixin.d.ts +2 -2
  70. package/types/stable/@ember/object/observable.d.ts +21 -1
  71. package/types/stable/@ember/object/proxy.d.ts +26 -2
  72. package/types/stable/@ember/routing/hash-location.d.ts +0 -6
  73. package/types/stable/@ember/routing/history-location.d.ts +0 -6
  74. package/types/stable/@ember/routing/lib/controller_for.d.ts +2 -7
  75. package/types/stable/@ember/routing/lib/router_state.d.ts +10 -6
  76. package/types/stable/@ember/routing/lib/routing-service.d.ts +3 -3
  77. package/types/stable/@ember/routing/lib/utils.d.ts +14 -15
  78. package/types/stable/@ember/routing/location-ext.d.ts +18 -0
  79. package/types/stable/@ember/routing/location.d.ts +0 -6
  80. package/types/stable/@ember/routing/none-location.d.ts +0 -6
  81. package/types/stable/@ember/routing/owner-ext.d.ts +11 -0
  82. package/types/stable/@ember/routing/route.d.ts +39 -24
  83. package/types/stable/@ember/routing/router-service.d.ts +18 -15
  84. package/types/stable/@ember/routing/router.d.ts +42 -44
  85. package/types/stable/@ember/routing/service-ext.d.ts +14 -0
  86. package/types/stable/@ember/runloop/-private/backburner.d.ts +7 -0
  87. package/types/stable/@ember/runloop/index.d.ts +12 -4
  88. package/types/stable/@ember/service/index.d.ts +20 -7
  89. package/types/stable/@ember/service/owner-ext.d.ts +11 -0
  90. package/types/stable/@ember/template-compilation/index.d.ts +16 -1
  91. package/types/stable/@ember/test/index.d.ts +6 -6
  92. package/types/stable/@ember/utils/lib/compare.d.ts +1 -1
  93. package/types/stable/ember/index.d.ts +320 -246
  94. package/types/stable/ember/version.d.ts +4 -0
  95. package/types/stable/ember-template-compiler/index.d.ts +1 -8
  96. package/types/stable/ember-template-compiler/lib/types.d.ts +20 -0
  97. package/types/stable/ember-testing/lib/adapters/adapter.d.ts +37 -1
  98. package/types/stable/ember-testing/lib/adapters/qunit.d.ts +18 -3
  99. package/types/stable/ember-testing/lib/test/helpers.d.ts +5 -1
  100. package/types/stable/ember-testing/lib/test/promise.d.ts +1 -1
  101. package/types/stable/index.d.ts +298 -4
  102. package/types/stable/loader/lib/index.d.ts +4 -0
  103. package/types/stable/require.d.ts +4 -0
  104. package/types/preview/@ember/application/-private/event-dispatcher.d.ts +0 -18
  105. package/types/preview/@ember/application/-private/registry.d.ts +0 -15
  106. package/types/preview/@ember/application/index.d.ts +0 -136
  107. package/types/preview/@ember/application/instance.d.ts +0 -9
  108. package/types/preview/@ember/application/types.d.ts +0 -29
  109. package/types/preview/@ember/array/-private/enumerable.d.ts +0 -13
  110. package/types/preview/@ember/array/-private/mutable-enumerable.d.ts +0 -13
  111. package/types/preview/@ember/array/-private/native-array.d.ts +0 -181
  112. package/types/preview/@ember/array/index.d.ts +0 -251
  113. package/types/preview/@ember/array/mutable.d.ts +0 -94
  114. package/types/preview/@ember/array/proxy.d.ts +0 -29
  115. package/types/preview/@ember/component/-private/class-names-support.d.ts +0 -27
  116. package/types/preview/@ember/component/-private/core-view.d.ts +0 -14
  117. package/types/preview/@ember/component/-private/glimmer-interfaces.d.ts +0 -49
  118. package/types/preview/@ember/component/-private/signature-utils.d.ts +0 -107
  119. package/types/preview/@ember/component/-private/view-mixin.d.ts +0 -59
  120. package/types/preview/@ember/component/helper.d.ts +0 -122
  121. package/types/preview/@ember/component/index.d.ts +0 -164
  122. package/types/preview/@ember/component/template-only.d.ts +0 -47
  123. package/types/preview/@ember/controller/index.d.ts +0 -47
  124. package/types/preview/@ember/debug/container-debug-adapter.d.ts +0 -14
  125. package/types/preview/@ember/debug/data-adapter.d.ts +0 -64
  126. package/types/preview/@ember/debug/index.d.ts +0 -98
  127. package/types/preview/@ember/destroyable/index.d.ts +0 -23
  128. package/types/preview/@ember/engine/-private/container-proxy-mixin.d.ts +0 -11
  129. package/types/preview/@ember/engine/-private/registry-proxy-mixin.d.ts +0 -12
  130. package/types/preview/@ember/engine/-private/types/initializer.d.ts +0 -8
  131. package/types/preview/@ember/engine/index.d.ts +0 -45
  132. package/types/preview/@ember/engine/instance.d.ts +0 -25
  133. package/types/preview/@ember/helper/index.d.ts +0 -49
  134. package/types/preview/@ember/modifier/index.d.ts +0 -33
  135. package/types/preview/@ember/object/-private/action-handler.d.ts +0 -31
  136. package/types/preview/@ember/object/-private/types.d.ts +0 -63
  137. package/types/preview/@ember/object/compat.d.ts +0 -9
  138. package/types/preview/@ember/object/computed.d.ts +0 -263
  139. package/types/preview/@ember/object/core.d.ts +0 -89
  140. package/types/preview/@ember/object/evented.d.ts +0 -45
  141. package/types/preview/@ember/object/events.d.ts +0 -47
  142. package/types/preview/@ember/object/index.d.ts +0 -126
  143. package/types/preview/@ember/object/internals.d.ts +0 -17
  144. package/types/preview/@ember/object/mixin.d.ts +0 -19
  145. package/types/preview/@ember/object/observable.d.ts +0 -89
  146. package/types/preview/@ember/object/observers.d.ts +0 -34
  147. package/types/preview/@ember/object/promise-proxy-mixin.d.ts +0 -37
  148. package/types/preview/@ember/object/proxy.d.ts +0 -27
  149. package/types/preview/@ember/routing/-private/router-dsl.d.ts +0 -20
  150. package/types/preview/@ember/routing/hash-location.d.ts +0 -26
  151. package/types/preview/@ember/routing/history-location.d.ts +0 -25
  152. package/types/preview/@ember/routing/index.d.ts +0 -17
  153. package/types/preview/@ember/routing/location.d.ts +0 -104
  154. package/types/preview/@ember/routing/none-location.d.ts +0 -27
  155. package/types/preview/@ember/routing/route-info.d.ts +0 -73
  156. package/types/preview/@ember/routing/route.d.ts +0 -532
  157. package/types/preview/@ember/routing/router-service.d.ts +0 -359
  158. package/types/preview/@ember/routing/router.d.ts +0 -41
  159. package/types/preview/@ember/routing/transition.d.ts +0 -126
  160. package/types/preview/@ember/routing/types.d.ts +0 -15
  161. package/types/preview/@ember/runloop/-private/backburner.d.ts +0 -43
  162. package/types/preview/@ember/runloop/-private/types.d.ts +0 -9
  163. package/types/preview/@ember/runloop/index.d.ts +0 -175
  164. package/types/preview/@ember/runloop/types.d.ts +0 -5
  165. package/types/preview/@ember/service/index.d.ts +0 -32
  166. package/types/preview/@ember/template/-private/handlebars.d.ts +0 -7
  167. package/types/preview/@ember/template/index.d.ts +0 -6
  168. package/types/preview/@ember/template-compilation/index.d.ts +0 -28
  169. package/types/preview/@ember/test/adapter.d.ts +0 -22
  170. package/types/preview/@ember/test/index.d.ts +0 -49
  171. package/types/preview/@ember/utils/-private/types.d.ts +0 -39
  172. package/types/preview/@ember/utils/index.d.ts +0 -42
  173. package/types/preview/ember/-private/type-utils.d.ts +0 -57
  174. package/types/preview/ember/index.d.ts +0 -347
  175. package/types/preview/index.d.ts +0 -121
  176. /package/dist/dependencies/{backburner.js → backburner.js.js} +0 -0
@@ -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 5.0.0
9
+ * @version 5.1.0-alpha.2
10
10
  */
11
11
  /* eslint-disable no-var */
12
12
  /* globals global globalThis self */
@@ -1633,7 +1633,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
1633
1633
  @param {Hash} options
1634
1634
  @public
1635
1635
  */
1636
- class Input extends AbstractInput {
1636
+ class _Input extends AbstractInput {
1637
1637
  constructor() {
1638
1638
  super(...arguments);
1639
1639
  this._checked = valueFrom(this.args.named['checked']);
@@ -1703,11 +1703,11 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
1703
1703
  return supportedArguments.indexOf(name) !== -1 || super.isSupportedArgument(name);
1704
1704
  }
1705
1705
  }
1706
- __decorate$1([_object.action], Input.prototype, "change", null);
1707
- __decorate$1([_object.action], Input.prototype, "input", null);
1708
- __decorate$1([_object.action], Input.prototype, "checkedDidChange", null);
1709
- var Input$1 = opaquify(Input, InputTemplate);
1710
- _exports.Input = Input$1;
1706
+ __decorate$1([_object.action], _Input.prototype, "change", null);
1707
+ __decorate$1([_object.action], _Input.prototype, "input", null);
1708
+ __decorate$1([_object.action], _Input.prototype, "checkedDidChange", null);
1709
+ var Input = opaquify(_Input, InputTemplate);
1710
+ _exports.Input = Input;
1711
1711
  var LinkToTemplate = (0, _opcodeCompiler.templateFactory)({
1712
1712
  "id": "CVwkBtGh",
1713
1713
  "block": "[[[11,3],[16,1,[30,0,[\"id\"]]],[16,0,[30,0,[\"class\"]]],[16,\"role\",[30,0,[\"role\"]]],[16,\"title\",[30,0,[\"title\"]]],[16,\"rel\",[30,0,[\"rel\"]]],[16,\"tabindex\",[30,0,[\"tabindex\"]]],[16,\"target\",[30,0,[\"target\"]]],[17,1],[16,6,[30,0,[\"href\"]]],[4,[38,0],[\"click\",[30,0,[\"click\"]]],null],[12],[18,2,null],[13]],[\"&attrs\",\"&default\"],false,[\"on\",\"yield\"]]",
@@ -1965,7 +1965,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
1965
1965
  @see {Ember.Templates.components.LinkTo}
1966
1966
  @public
1967
1967
  **/
1968
- class LinkTo extends InternalComponent {
1968
+ class _LinkTo extends InternalComponent {
1969
1969
  constructor() {
1970
1970
  super(...arguments);
1971
1971
  // GH #17963
@@ -2191,11 +2191,11 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
2191
2191
  return supportedArguments.indexOf(name) !== -1 || super.isSupportedArgument(name);
2192
2192
  }
2193
2193
  }
2194
- __decorate$2([(0, _service.service)('-routing')], LinkTo.prototype, "routing", void 0);
2195
- __decorate$2([_object.action], LinkTo.prototype, "click", null);
2194
+ __decorate$2([(0, _service.service)('-routing')], _LinkTo.prototype, "routing", void 0);
2195
+ __decorate$2([_object.action], _LinkTo.prototype, "click", null);
2196
2196
  var {
2197
2197
  prototype
2198
- } = LinkTo;
2198
+ } = _LinkTo;
2199
2199
  var descriptorFor = (target, property) => {
2200
2200
  if (target) {
2201
2201
  return Object.getOwnPropertyDescriptor(target, property) || descriptorFor(Object.getPrototypeOf(target), property);
@@ -2276,8 +2276,8 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
2276
2276
  }
2277
2277
  });
2278
2278
  }
2279
- var LinkTo$1 = opaquify(LinkTo, LinkToTemplate);
2280
- _exports.LinkTo = LinkTo$1;
2279
+ var LinkTo = opaquify(_LinkTo, LinkToTemplate);
2280
+ _exports.LinkTo = LinkTo;
2281
2281
  var TextareaTemplate = (0, _opcodeCompiler.templateFactory)({
2282
2282
  "id": "OpzctQXz",
2283
2283
  "block": "[[[11,\"textarea\"],[16,1,[30,0,[\"id\"]]],[16,0,[30,0,[\"class\"]]],[17,1],[16,2,[30,0,[\"value\"]]],[4,[38,0],[\"change\",[30,0,[\"change\"]]],null],[4,[38,0],[\"input\",[30,0,[\"input\"]]],null],[4,[38,0],[\"keyup\",[30,0,[\"keyUp\"]]],null],[4,[38,0],[\"paste\",[30,0,[\"valueDidChange\"]]],null],[4,[38,0],[\"cut\",[30,0,[\"valueDidChange\"]]],null],[12],[13]],[\"&attrs\"],false,[\"on\"]]",
@@ -2424,7 +2424,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
2424
2424
  @see {Ember.Templates.components.Textarea}
2425
2425
  @public
2426
2426
  **/
2427
- class Textarea extends AbstractInput {
2427
+ class _Textarea extends AbstractInput {
2428
2428
  static toString() {
2429
2429
  return 'Textarea';
2430
2430
  }
@@ -2443,10 +2443,10 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
2443
2443
  return supportedArguments.indexOf(name) !== -1 || super.isSupportedArgument(name);
2444
2444
  }
2445
2445
  }
2446
- __decorate$3([_object.action], Textarea.prototype, "change", null);
2447
- __decorate$3([_object.action], Textarea.prototype, "input", null);
2448
- var Textarea$1 = opaquify(Textarea, TextareaTemplate);
2449
- _exports.Textarea = Textarea$1;
2446
+ __decorate$3([_object.action], _Textarea.prototype, "change", null);
2447
+ __decorate$3([_object.action], _Textarea.prototype, "input", null);
2448
+ var Textarea = opaquify(_Textarea, TextareaTemplate);
2449
+ _exports.Textarea = Textarea;
2450
2450
  function isTemplateFactory(template) {
2451
2451
  return typeof template === 'function';
2452
2452
  }
@@ -3533,49 +3533,6 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
3533
3533
  Component.isComponentFactory = true;
3534
3534
  // We continue to use reopenClass here so that positionalParams can be overridden with reopenClass in subclasses.
3535
3535
  Component.reopenClass({
3536
- /**
3537
- Enables components to take a list of parameters as arguments.
3538
- For example, a component that takes two parameters with the names
3539
- `name` and `age`:
3540
- ```app/components/my-component.js
3541
- import Component from '@ember/component';
3542
- let MyComponent = Component.extend();
3543
- MyComponent.reopenClass({
3544
- positionalParams: ['name', 'age']
3545
- });
3546
- export default MyComponent;
3547
- ```
3548
- It can then be invoked like this:
3549
- ```hbs
3550
- {{my-component "John" 38}}
3551
- ```
3552
- The parameters can be referred to just like named parameters:
3553
- ```hbs
3554
- Name: {{name}}, Age: {{age}}.
3555
- ```
3556
- Using a string instead of an array allows for an arbitrary number of
3557
- parameters:
3558
- ```app/components/my-component.js
3559
- import Component from '@ember/component';
3560
- let MyComponent = Component.extend();
3561
- MyComponent.reopenClass({
3562
- positionalParams: 'names'
3563
- });
3564
- export default MyComponent;
3565
- ```
3566
- It can then be invoked like this:
3567
- ```hbs
3568
- {{my-component "John" "Michael" "Scott"}}
3569
- ```
3570
- The parameters can then be referred to by enumerating over the list:
3571
- ```hbs
3572
- {{#each names as |name|}}{{name}}{{/each}}
3573
- ```
3574
- @static
3575
- @public
3576
- @property positionalParams
3577
- @since 1.13.0
3578
- */
3579
3536
  positionalParams: []
3580
3537
  });
3581
3538
  (0, _manager2.setInternalComponentManager)(CURLY_COMPONENT_MANAGER, Component);
@@ -3586,29 +3543,6 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
3586
3543
  var _a;
3587
3544
  var RECOMPUTE_TAG = Symbol('RECOMPUTE_TAG');
3588
3545
  var IS_CLASSIC_HELPER = Symbol('IS_CLASSIC_HELPER');
3589
- /**
3590
- In many cases it is not necessary to use the full `Helper` class.
3591
- The `helper` method create pure-function helpers without instances.
3592
- For example:
3593
-
3594
- ```app/helpers/format-currency.js
3595
- import { helper } from '@ember/component/helper';
3596
-
3597
- export default helper(function([cents], {currency}) {
3598
- return `${currency}${cents * 0.01}`;
3599
- });
3600
- ```
3601
-
3602
- @static
3603
- @param {Function} helper The helper function
3604
- @method helper
3605
- @for @ember/component/helper
3606
- @public
3607
- @since 1.13.0
3608
- */
3609
- function helper(helperFn) {
3610
- return new Wrapper(helperFn);
3611
- }
3612
3546
  class Helper extends _internals.FrameworkObject {
3613
3547
  init(properties) {
3614
3548
  super.init(properties);
@@ -3651,6 +3585,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
3651
3585
  // here, but it should definitely be reviewed and probably removed.
3652
3586
  /** @deprecated */
3653
3587
  Helper.helper = helper;
3588
+ /* eslint-enable import/export */
3654
3589
  function isClassicHelper(obj) {
3655
3590
  return obj[IS_CLASSIC_HELPER] === true;
3656
3591
  }
@@ -3734,10 +3669,7 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
3734
3669
  });
3735
3670
  }
3736
3671
  createHelper(definition, args) {
3737
- var {
3738
- compute
3739
- } = definition;
3740
- return () => compute.call(null, args.positional, args.named);
3672
+ return () => definition.compute.call(null, args.positional, args.named);
3741
3673
  }
3742
3674
  getValue(fn) {
3743
3675
  return fn();
@@ -3748,6 +3680,29 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
3748
3680
  }
3749
3681
  var SIMPLE_CLASSIC_HELPER_MANAGER = new SimpleClassicHelperManager();
3750
3682
  (0, _manager2.setHelperManager)(() => SIMPLE_CLASSIC_HELPER_MANAGER, Wrapper.prototype);
3683
+ function helper(helperFn
3684
+ // At the implementation site, we don't care about the actual underlying type
3685
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3686
+ ) {
3687
+ // SAFETY: this is completely lies, in two ways:
3688
+ //
3689
+ // 1. `Wrapper` is a `Factory<SimpleHelper<S>>`, but from the perspective of
3690
+ // any external callers (i.e. Ember *users*), it is quite important that
3691
+ // the `Factory` relationship be hidden, because it is not public API for
3692
+ // an end user to call `.create()` on a helper created this way. Instead,
3693
+ // we provide them an `abstract new` signature (which means it cannot be
3694
+ // directly constructed by calling `new` on it) and which does not have the
3695
+ // `.create()` signature on it anymore.
3696
+ //
3697
+ // 2. The produced type here ends up being a subtype of `Helper`, which is not
3698
+ // strictly true. This is necessary for the sake of Glint, which provides
3699
+ // its information by way of a "declaration merge" with `Helper<S>` in the
3700
+ // case of items produced by `helper()`.
3701
+ //
3702
+ // Long-term, this entire construct can go away in favor of deprecating the
3703
+ // `helper()` invocation in favor of using plain functions.
3704
+ return new Wrapper(helperFn);
3705
+ }
3751
3706
 
3752
3707
  /**
3753
3708
  @module @ember/template
@@ -6236,9 +6191,9 @@ define("@ember/-internals/glimmer/index", ["exports", "@glimmer/opcode-compiler"
6236
6191
  registry.optionsForType('helper', {
6237
6192
  instantiate: false
6238
6193
  });
6239
- registry.register('component:input', Input$1);
6240
- registry.register('component:link-to', LinkTo$1);
6241
- registry.register('component:textarea', Textarea$1);
6194
+ registry.register('component:input', Input);
6195
+ registry.register('component:link-to', LinkTo);
6196
+ registry.register('component:textarea', Textarea);
6242
6197
  if (!_environment2.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS) {
6243
6198
  registry.register((0, _container.privatize)`component:-default`, Component);
6244
6199
  }
@@ -8283,44 +8238,6 @@ define("@ember/-internals/metal/index", ["exports", "@ember/-internals/meta", "@
8283
8238
  desc._readOnly = true;
8284
8239
  return this;
8285
8240
  }
8286
- /**
8287
- In some cases, you may want to annotate computed properties with additional
8288
- metadata about how they function or what values they operate on. For example,
8289
- computed property functions may close over variables that are then no longer
8290
- available for introspection. You can pass a hash of these values to a
8291
- computed property.
8292
- Example:
8293
- ```javascript
8294
- import { computed } from '@ember/object';
8295
- import Person from 'my-app/utils/person';
8296
- class Store {
8297
- @computed().meta({ type: Person })
8298
- get person() {
8299
- let personId = this.personId;
8300
- return Person.create({ id: personId });
8301
- }
8302
- }
8303
- ```
8304
- Classic Class Example:
8305
- ```javascript
8306
- import { computed } from '@ember/object';
8307
- import Person from 'my-app/utils/person';
8308
- const Store = EmberObject.extend({
8309
- person: computed(function() {
8310
- let personId = this.get('personId');
8311
- return Person.create({ id: personId });
8312
- }).meta({ type: Person })
8313
- });
8314
- ```
8315
- The hash that you pass to the `meta()` function will be saved on the
8316
- computed property descriptor under the `_meta` key. Ember runtime
8317
- exposes a public API for retrieving these values from classes,
8318
- via the `metaForProperty()` function.
8319
- @method meta
8320
- @param {Object} meta
8321
- @chainable
8322
- @public
8323
- */
8324
8241
  meta(meta) {
8325
8242
  var prop = descriptorForDecorator(this);
8326
8243
  if (arguments.length === 0) {
@@ -8880,38 +8797,13 @@ define("@ember/-internals/metal/index", ["exports", "@ember/-internals/meta", "@
8880
8797
  propertyNames = Array.from(arguments);
8881
8798
  }
8882
8799
  for (; i < propertyNames.length; i++) {
8883
- ret[propertyNames[i]] = get(obj, propertyNames[i]);
8800
+ // SAFETY: we are just walking the list of property names, so we know the
8801
+ // index access never produces `undefined`.
8802
+ var name = propertyNames[i];
8803
+ ret[name] = get(obj, name);
8884
8804
  }
8885
8805
  return ret;
8886
8806
  }
8887
-
8888
- /**
8889
- @module @ember/object
8890
- */
8891
- /**
8892
- Set a list of properties on an object. These properties are set inside
8893
- a single `beginPropertyChanges` and `endPropertyChanges` batch, so
8894
- observers will be buffered.
8895
-
8896
- ```javascript
8897
- import EmberObject from '@ember/object';
8898
- let anObject = EmberObject.create();
8899
-
8900
- anObject.setProperties({
8901
- firstName: 'Stanley',
8902
- lastName: 'Stuart',
8903
- age: 21
8904
- });
8905
- ```
8906
-
8907
- @method setProperties
8908
- @static
8909
- @for @ember/object
8910
- @param obj
8911
- @param {Object} properties
8912
- @return properties
8913
- @public
8914
- */
8915
8807
  function setProperties(obj, properties) {
8916
8808
  if (properties === null || typeof properties !== 'object') {
8917
8809
  return properties;
@@ -8919,6 +8811,9 @@ define("@ember/-internals/metal/index", ["exports", "@ember/-internals/meta", "@
8919
8811
  changeProperties(() => {
8920
8812
  var props = Object.keys(properties);
8921
8813
  for (var propertyName of props) {
8814
+ // SAFETY: casting `properties` this way is safe because any object in JS
8815
+ // can be indexed this way, and the result will be `unknown`, making it
8816
+ // safe for callers.
8922
8817
  set(obj, propertyName, properties[propertyName]);
8923
8818
  }
8924
8819
  });
@@ -10012,6 +9907,9 @@ define("@ember/-internals/utility-types/index", ["exports"], function (_exports)
10012
9907
  Object.defineProperty(_exports, "__esModule", {
10013
9908
  value: true
10014
9909
  });
9910
+ _exports.Opaque = void 0;
9911
+ class Opaque {}
9912
+ _exports.Opaque = Opaque;
10015
9913
  });
10016
9914
  define("@ember/-internals/utils/index", ["exports", "@glimmer/util", "@ember/debug"], function (_exports, _util, _debug) {
10017
9915
  "use strict";
@@ -14052,7 +13950,6 @@ define("@ember/array/proxy", ["exports", "@ember/-internals/metal", "@ember/obje
14052
13950
  }
14053
13951
  _addArrangedContentArrayObserver(arrangedContent) {
14054
13952
  if (arrangedContent && !arrangedContent.isDestroyed) {
14055
- // @ts-expect-error This check is still good for ensuring correctness
14056
13953
  (true && !(arrangedContent !== this) && (0, _debug.assert)("Can't set ArrayProxy's content to itself", arrangedContent !== this));
14057
13954
  (true && !(function (arr) {
14058
13955
  return Array.isArray(arr) || _array.default.detect(arr);
@@ -14258,12 +14155,27 @@ define("@ember/component/template-only", ["exports", "@glimmer/runtime"], functi
14258
14155
  Object.defineProperty(_exports, "__esModule", {
14259
14156
  value: true
14260
14157
  });
14261
- Object.defineProperty(_exports, "default", {
14262
- enumerable: true,
14263
- get: function () {
14264
- return _runtime.templateOnlyComponent;
14265
- }
14266
- });
14158
+ _exports.default = void 0;
14159
+ /**
14160
+ @module @ember/component/template-only
14161
+ @public
14162
+ */
14163
+
14164
+ // NOTES:
14165
+ //
14166
+ // 1. The generic here is for a *signature: a way to hang information for tools
14167
+ // like Glint which can provide typey checking for component templates using
14168
+ // information supplied via this generic. While it may appear useless on this
14169
+ // class definition and extension, it is used by external tools and should
14170
+ // not be removed.
14171
+ // 2. SAFETY: this cast is *throwing away* information that is not part of the
14172
+ // public API and replacing it with something which has the same calling
14173
+ // contract, but much less information (since we do not want to expose the
14174
+ // internal APIs like `moduleName` etc.).
14175
+ // prettier-ignore
14176
+ var templateOnly = _runtime.templateOnlyComponent;
14177
+ var _default = templateOnly;
14178
+ _exports.default = _default;
14267
14179
  });
14268
14180
  define("@ember/controller/index", ["exports", "@ember/-internals/owner", "@ember/object", "@ember/object/-internals", "@ember/-internals/metal", "@ember/object/mixin", "@ember/-internals/runtime", "@ember/-internals/utils"], function (_exports, _owner, _object, _internals, _metal, _mixin, _runtime, _utils) {
14269
14181
  "use strict";
@@ -14989,6 +14901,8 @@ define("@ember/debug/index", ["exports", "@ember/-internals/browser-environment"
14989
14901
  _exports.warn = void 0;
14990
14902
  // These are the default production build versions:
14991
14903
  var noop = () => {};
14904
+ // SAFETY: these casts are just straight-up lies, but the point is that they do
14905
+ // not do anything in production builds.
14992
14906
  var assert = noop;
14993
14907
  _exports.assert = assert;
14994
14908
  var info = noop;
@@ -15063,39 +14977,13 @@ define("@ember/debug/index", ["exports", "@ember/-internals/browser-environment"
15063
14977
  @module @ember/debug
15064
14978
  */
15065
14979
  if (true /* DEBUG */) {
15066
- /**
15067
- Verify that a certain expectation is met, or throw a exception otherwise.
15068
- This is useful for communicating assumptions in the code to other human
15069
- readers as well as catching bugs that accidentally violates these
15070
- expectations.
15071
- Assertions are removed from production builds, so they can be freely added
15072
- for documentation and debugging purposes without worries of incuring any
15073
- performance penalty. However, because of that, they should not be used for
15074
- checks that could reasonably fail during normal usage. Furthermore, care
15075
- should be taken to avoid accidentally relying on side-effects produced from
15076
- evaluating the condition itself, since the code will not run in production.
15077
- ```javascript
15078
- import { assert } from '@ember/debug';
15079
- // Test for truthiness
15080
- assert('Must pass a string', typeof str === 'string');
15081
- // Fail unconditionally
15082
- assert('This code path should never be run');
15083
- ```
15084
- @method assert
15085
- @static
15086
- @for @ember/debug
15087
- @param {String} description Describes the expectation. This will become the
15088
- text of the Error thrown if the assertion fails.
15089
- @param {any} condition Must be truthy for the assertion to pass. If
15090
- falsy, an exception will be thrown.
15091
- @public
15092
- @since 1.0.0
15093
- */
15094
- setDebugFunction('assert', function assert(desc, test) {
14980
+ // eslint-disable-next-line no-inner-declarations
14981
+ function _assert(desc, test) {
15095
14982
  if (!test) {
15096
14983
  throw new Error(`Assertion Failed: ${desc}`);
15097
14984
  }
15098
- });
14985
+ }
14986
+ setDebugFunction('assert', _assert);
15099
14987
  /**
15100
14988
  Display a debug notice.
15101
14989
  Calls to this function are not invoked in production builds.
@@ -15719,6 +15607,7 @@ define("@ember/debug/lib/warn", ["exports", "@ember/debug/index", "@ember/debug/
15719
15607
  }
15720
15608
  (0, _index.assert)(missingOptionsDeprecation, Boolean(options));
15721
15609
  (0, _index.assert)(missingOptionsIdDeprecation, Boolean(options && options.id));
15610
+ // SAFETY: we checked this by way of the `arguments` check above.
15722
15611
  (0, _handlers.invoke)('warn', message, test, options);
15723
15612
  };
15724
15613
  }
@@ -16696,54 +16585,462 @@ define("@ember/helper/index", ["exports", "@glimmer/manager", "@glimmer/runtime"
16696
16585
  Object.defineProperty(_exports, "__esModule", {
16697
16586
  value: true
16698
16587
  });
16699
- Object.defineProperty(_exports, "array", {
16700
- enumerable: true,
16701
- get: function () {
16702
- return _runtime.array;
16703
- }
16704
- });
16705
- Object.defineProperty(_exports, "capabilities", {
16706
- enumerable: true,
16707
- get: function () {
16708
- return _manager.helperCapabilities;
16709
- }
16710
- });
16711
- Object.defineProperty(_exports, "concat", {
16712
- enumerable: true,
16713
- get: function () {
16714
- return _runtime.concat;
16715
- }
16716
- });
16717
- Object.defineProperty(_exports, "fn", {
16718
- enumerable: true,
16719
- get: function () {
16720
- return _runtime.fn;
16588
+ _exports.setHelperManager = _exports.invokeHelper = _exports.hash = _exports.get = _exports.fn = _exports.concat = _exports.capabilities = _exports.array = void 0;
16589
+ /**
16590
+ @module @ember/helper
16591
+ */
16592
+
16593
+ /**
16594
+ `capabilities` returns a capabilities configuration which can be used to modify
16595
+ the behavior of the manager. Manager capabilities _must_ be provided using the
16596
+ `capabilities` function, as the underlying implementation can change over time.
16597
+
16598
+ The first argument to capabilities is a version string, which is the version of
16599
+ Ember that the capabilities were defined in. Ember can add new versions at any
16600
+ time, and these may have entirely different behaviors, but it will not remove
16601
+ old versions until the next major version.
16602
+
16603
+ ```js
16604
+ capabilities('3.23');
16605
+ ```
16606
+
16607
+ The second argument is an object of capabilities and boolean values indicating
16608
+ whether they are enabled or disabled.
16609
+
16610
+ ```js
16611
+ capabilities('3.23', {
16612
+ hasValue: true,
16613
+ hasDestructor: true,
16614
+ });
16615
+ ```
16616
+
16617
+ If no value is specified, then the default value will be used.
16618
+
16619
+ ### `3.23` capabilities
16620
+
16621
+ #### `hasDestroyable`
16622
+
16623
+ - Default value: false
16624
+
16625
+ Determines if the helper has a destroyable to include in the destructor
16626
+ hierarchy. If enabled, the `getDestroyable` hook will be called, and its result
16627
+ will be associated with the destroyable parent block.
16628
+
16629
+ #### `hasValue`
16630
+
16631
+ - Default value: false
16632
+
16633
+ Determines if the helper has a value which can be used externally. The helper's
16634
+ `getValue` hook will be run whenever the value of the helper is accessed if this
16635
+ capability is enabled.
16636
+
16637
+ @method capabilities
16638
+ @for @ember/helper
16639
+ @static
16640
+ @param {String} managerApiVersion The version of capabilities that are being used
16641
+ @param options The capabilities values
16642
+ @return {Capabilities} The capabilities object instance
16643
+ @public
16644
+ */
16645
+ var capabilities = _manager.helperCapabilities;
16646
+ /**
16647
+ Sets the helper manager for an object or function.
16648
+
16649
+ ```js
16650
+ setHelperManager((owner) => new ClassHelperManager(owner), Helper)
16651
+ ```
16652
+
16653
+ When a value is used as a helper in a template, the helper manager is looked up
16654
+ on the object by walking up its prototype chain and finding the first helper
16655
+ manager. This manager then receives the value and can create and manage an
16656
+ instance of a helper from it. This provides a layer of indirection that allows
16657
+ users to design high-level helper APIs, without Ember needing to worry about the
16658
+ details. High-level APIs can be experimented with and iterated on while the
16659
+ core of Ember helpers remains stable, and new APIs can be introduced gradually
16660
+ over time to existing code bases.
16661
+
16662
+ `setHelperManager` receives two arguments:
16663
+
16664
+ 1. A factory function, which receives the `owner` and returns an instance of a
16665
+ helper manager.
16666
+ 2. A helper definition, which is the object or function to associate the factory function with.
16667
+
16668
+ The first time the object is looked up, the factory function will be called to
16669
+ create the helper manager. It will be cached, and in subsequent lookups the
16670
+ cached helper manager will be used instead.
16671
+
16672
+ Only one helper manager is guaranteed to exist per `owner` and per usage of
16673
+ `setHelperManager`, so many helpers will end up using the same instance of the
16674
+ helper manager. As such, you should only store state that is related to the
16675
+ manager itself. If you want to store state specific to a particular helper
16676
+ definition, you should assign a unique helper manager to that helper. In
16677
+ general, most managers should either be stateless, or only have the `owner` they
16678
+ were created with as state.
16679
+
16680
+ Helper managers must fulfill the following interface (This example uses
16681
+ [TypeScript interfaces](https://www.typescriptlang.org/docs/handbook/interfaces.html)
16682
+ for precision, you do not need to write helper managers using TypeScript):
16683
+
16684
+ ```ts
16685
+ interface HelperManager<HelperStateBucket> {
16686
+ capabilities: HelperCapabilities;
16687
+
16688
+ createHelper(definition: HelperDefinition, args: TemplateArgs): HelperStateBucket;
16689
+
16690
+ getValue?(bucket: HelperStateBucket): unknown;
16691
+
16692
+ runEffect?(bucket: HelperStateBucket): void;
16693
+
16694
+ getDestroyable?(bucket: HelperStateBucket): object;
16721
16695
  }
16722
- });
16723
- Object.defineProperty(_exports, "get", {
16724
- enumerable: true,
16725
- get: function () {
16726
- return _runtime.get;
16696
+ ```
16697
+
16698
+ The capabilities property _must_ be provided using the `capabilities()` function
16699
+ imported from the same module as `setHelperManager`:
16700
+
16701
+ ```js
16702
+ import { capabilities } from '@ember/helper';
16703
+
16704
+ class MyHelperManager {
16705
+ capabilities = capabilities('3.21.0', { hasValue: true });
16706
+
16707
+ // ...snip...
16727
16708
  }
16728
- });
16729
- Object.defineProperty(_exports, "hash", {
16730
- enumerable: true,
16731
- get: function () {
16732
- return _runtime.hash;
16709
+ ```
16710
+
16711
+ Below is a description of each of the methods on the interface and their
16712
+ functions.
16713
+
16714
+ #### `createHelper`
16715
+
16716
+ `createHelper` is a required hook on the HelperManager interface. The hook is
16717
+ passed the definition of the helper that is currently being created, and is
16718
+ expected to return a _state bucket_. This state bucket is what represents the
16719
+ current state of the helper, and will be passed to the other lifecycle hooks at
16720
+ appropriate times. It is not necessarily related to the definition of the
16721
+ helper itself - for instance, you could return an object _containing_ an
16722
+ instance of the helper:
16723
+
16724
+ ```js
16725
+ class MyManager {
16726
+ createHelper(Definition, args) {
16727
+ return {
16728
+ instance: new Definition(args);
16729
+ };
16730
+ }
16733
16731
  }
16734
- });
16735
- Object.defineProperty(_exports, "invokeHelper", {
16736
- enumerable: true,
16737
- get: function () {
16738
- return _runtime.invokeHelper;
16732
+ ```
16733
+
16734
+ This allows the manager to store metadata that it doesn't want to expose to the
16735
+ user.
16736
+
16737
+ This hook is _not_ autotracked - changes to tracked values used within this hook
16738
+ will _not_ result in a call to any of the other lifecycle hooks. This is because
16739
+ it is unclear what should happen if it invalidates, and rather than make a
16740
+ decision at this point, the initial API is aiming to allow as much expressivity
16741
+ as possible. This could change in the future with changes to capabilities and
16742
+ their behaviors.
16743
+
16744
+ If users do want to autotrack some values used during construction, they can
16745
+ either create the instance of the helper in `runEffect` or `getValue`, or they
16746
+ can use the `cache` API to autotrack the `createHelper` hook themselves. This
16747
+ provides maximum flexibility and expressiveness to manager authors.
16748
+
16749
+ This hook has the following timing semantics:
16750
+
16751
+ **Always**
16752
+ - called as discovered during DOM construction
16753
+ - called in definition order in the template
16754
+
16755
+ #### `getValue`
16756
+
16757
+ `getValue` is an optional hook that should return the value of the helper. This
16758
+ is the value that is returned from the helper and passed into the template.
16759
+
16760
+ This hook is called when the value is requested from the helper (e.g. when the
16761
+ template is rendering and the helper value is needed). The hook is autotracked,
16762
+ and will rerun whenever any tracked values used inside of it are updated.
16763
+ Otherwise it does not rerun.
16764
+
16765
+ > Note: This means that arguments which are not _consumed_ within the hook will
16766
+ > not trigger updates.
16767
+
16768
+ This hook is only called for helpers with the `hasValue` capability enabled.
16769
+ This hook has the following timing semantics:
16770
+
16771
+ **Always**
16772
+ - called the first time the helper value is requested
16773
+ - called after autotracked state has changed
16774
+
16775
+ **Never**
16776
+ - called if the `hasValue` capability is disabled
16777
+
16778
+ #### `runEffect`
16779
+
16780
+ `runEffect` is an optional hook that should run the effect that the helper is
16781
+ applying, setting it up or updating it.
16782
+
16783
+ This hook is scheduled to be called some time after render and prior to paint.
16784
+ There is not a guaranteed, 1-to-1 relationship between a render pass and this
16785
+ hook firing. For instance, multiple render passes could occur, and the hook may
16786
+ only trigger once. It may also never trigger if it was dirtied in one render
16787
+ pass and then destroyed in the next.
16788
+
16789
+ The hook is autotracked, and will rerun whenever any tracked values used inside
16790
+ of it are updated. Otherwise it does not rerun.
16791
+
16792
+ The hook is also run during a time period where state mutations are _disabled_
16793
+ in Ember. Any tracked state mutation will throw an error during this time,
16794
+ including changes to tracked properties, changes made using `Ember.set`, updates
16795
+ to computed properties, etc. This is meant to prevent infinite rerenders and
16796
+ other antipatterns.
16797
+
16798
+ This hook is only called for helpers with the `hasScheduledEffect` capability
16799
+ enabled. This hook is also not called in SSR currently, though this could be
16800
+ added as a capability in the future. It has the following timing semantics:
16801
+
16802
+ **Always**
16803
+ - called after the helper was first created, if the helper has not been
16804
+ destroyed since creation
16805
+ - called after autotracked state has changed, if the helper has not been
16806
+ destroyed during render
16807
+
16808
+ **Never**
16809
+ - called if the `hasScheduledEffect` capability is disabled
16810
+ - called in SSR
16811
+
16812
+ #### `getDestroyable`
16813
+
16814
+ `getDestroyable` is an optional hook that users can use to register a
16815
+ destroyable object for the helper. This destroyable will be registered to the
16816
+ containing block or template parent, and will be destroyed when it is destroyed.
16817
+ See the [Destroyables RFC](https://github.com/emberjs/rfcs/blob/master/text/0580-destroyables.md)
16818
+ for more details.
16819
+
16820
+ `getDestroyable` is only called if the `hasDestroyable` capability is enabled.
16821
+
16822
+ This hook has the following timing semantics:
16823
+
16824
+ **Always**
16825
+ - called immediately after the `createHelper` hook is called
16826
+
16827
+ **Never**
16828
+ - called if the `hasDestroyable` capability is disabled
16829
+
16830
+ @method setHelperManager
16831
+ @for @ember/helper
16832
+ @static
16833
+ @param {Function} factory A factory function which receives an optional owner, and returns a helper manager
16834
+ @param {object} definition The definition to associate the manager factory with
16835
+ @return {object} The definition passed into setHelperManager
16836
+ @public
16837
+ */
16838
+ _exports.capabilities = capabilities;
16839
+ var setHelperManager = _manager.setHelperManager;
16840
+ /**
16841
+ The `invokeHelper` function can be used to create a helper instance in
16842
+ JavaScript.
16843
+
16844
+ To access a helper's value you have to use `getValue` from
16845
+ `@glimmer/tracking/primitives/cache`.
16846
+
16847
+ ```js
16848
+ // app/components/data-loader.js
16849
+ import Component from '@glimmer/component';
16850
+ import { getValue } from '@glimmer/tracking/primitives/cache';
16851
+ import Helper from '@ember/component/helper';
16852
+ import { invokeHelper } from '@ember/helper';
16853
+
16854
+ class PlusOne extends Helper {
16855
+ compute([number]) {
16856
+ return number + 1;
16857
+ }
16739
16858
  }
16740
- });
16741
- Object.defineProperty(_exports, "setHelperManager", {
16742
- enumerable: true,
16743
- get: function () {
16744
- return _manager.setHelperManager;
16859
+
16860
+ export default class PlusOneComponent extends Component {
16861
+ plusOne = invokeHelper(this, PlusOne, () => {
16862
+ return {
16863
+ positional: [this.args.number],
16864
+ };
16865
+ });
16866
+
16867
+ get value() {
16868
+ return getValue(this.plusOne);
16869
+ }
16745
16870
  }
16746
- });
16871
+ ```
16872
+ ```js
16873
+ {{this.value}}
16874
+ ```
16875
+
16876
+ It receives three arguments:
16877
+
16878
+ * `context`: The parent context of the helper. When the parent is torn down and
16879
+ removed, the helper will be as well.
16880
+ * `definition`: The definition of the helper.
16881
+ * `computeArgs`: An optional function that produces the arguments to the helper.
16882
+ The function receives the parent context as an argument, and must return an
16883
+ object with a `positional` property that is an array and/or a `named`
16884
+ property that is an object.
16885
+
16886
+ And it returns a Cache instance that contains the most recent value of the
16887
+ helper. You can access the helper using `getValue()` like any other cache. The
16888
+ cache is also destroyable, and using the `destroy()` function on it will cause
16889
+ the helper to be torn down.
16890
+
16891
+ Note that using `getValue()` on helpers that have scheduled effects will not
16892
+ trigger the effect early. Effects will continue to run at their scheduled time.
16893
+
16894
+ @method invokeHelper
16895
+ @for @ember/helper
16896
+ @static
16897
+ @param {object} context The parent context of the helper
16898
+ @param {object} definition The helper definition
16899
+ @param {Function} computeArgs An optional function that produces args
16900
+ @returns
16901
+ @public
16902
+ */
16903
+ _exports.setHelperManager = setHelperManager;
16904
+ var invokeHelper = _runtime.invokeHelper;
16905
+ // SAFETY: we need to provide interfaces that Glint can declaration-merge with
16906
+ // to provide appropriate completions. In each case, the imported item is
16907
+ // currently typed only as `object`, and we are replacing it with a similarly
16908
+ // low-information interface type: these are empty objects which are simply able
16909
+ // to be distinguished so that Glint can provide the relevant extensions.
16910
+ /* eslint-disable @typescript-eslint/no-empty-interface */
16911
+ /**
16912
+ * Using the `{{hash}}` helper, you can pass objects directly from the template
16913
+ * as an argument to your components.
16914
+ *
16915
+ * ```
16916
+ * import { hash } from '@ember/helper';
16917
+ *
16918
+ * <template>
16919
+ * {{#each-in (hash givenName='Jen' familyName='Weber') as |key value|}}
16920
+ * <p>{{key}}: {{value}}</p>
16921
+ * {{/each-in}}
16922
+ * </template>
16923
+ * ```
16924
+ *
16925
+ * **NOTE:** this example uses the experimental `<template>` feature, which is
16926
+ * the only place you need to import `hash` to use it (it is a built-in when
16927
+ * writing standalone `.hbs` files).
16928
+ */
16929
+ _exports.invokeHelper = invokeHelper;
16930
+ var hash = _runtime.hash;
16931
+ /**
16932
+ * Using the `{{array}}` helper, you can pass arrays directly from the template
16933
+ * as an argument to your components.
16934
+ *
16935
+ * ```js
16936
+ * import { array } from '@ember/helper';
16937
+ *
16938
+ * <template>
16939
+ * <ul>
16940
+ * {{#each (array 'Tom Dale' 'Yehuda Katz' @anotherPerson) as |person|}}
16941
+ * <li>{{person}}</li>
16942
+ * {{/each}}
16943
+ * </ul>
16944
+ * </template>
16945
+ *
16946
+ * **NOTE:** this example uses the experimental `<template>` feature, which is
16947
+ * the only place you need to import `array` to use it (it is a built-in when
16948
+ * writing standalone `.hbs` files).
16949
+ * ```
16950
+ */
16951
+ _exports.hash = hash;
16952
+ var array = _runtime.array;
16953
+ /**
16954
+ * The `{{concat}}` helper makes it easy to dynamically send a number of
16955
+ * parameters to a component or helper as a single parameter in the format of a
16956
+ * concatenated string.
16957
+ *
16958
+ * For example:
16959
+ *
16960
+ * ```js
16961
+ * import { concat } from '@ember/helper';
16962
+ *
16963
+ * <template>
16964
+ * {{get @foo (concat "item" @index)}}
16965
+ * </template>
16966
+ * ```
16967
+ *
16968
+ * This will display the result of `@foo.item1` when `index` is `1`, and
16969
+ * `this.foo.item2` when `index` is `2`, etc.
16970
+ *
16971
+ * **NOTE:** this example uses the experimental `<template>` feature, which is
16972
+ * the only place you need to import `concat` to use it (it is a built-in when
16973
+ * writing standalone `.hbs` files).
16974
+ */
16975
+ _exports.array = array;
16976
+ var concat = _runtime.concat;
16977
+ /**
16978
+ * The `{{get}}` helper makes it easy to dynamically look up a property on an
16979
+ * object or an element in an array. The second argument to `{{get}}` can be a
16980
+ * string or a number, depending on the object being accessed.
16981
+ *
16982
+ * To access a property on an object with a string key:
16983
+ *
16984
+ * ```js
16985
+ * import { get } from '@ember/helper';
16986
+ *
16987
+ * <template>
16988
+ * {{get @someObject "objectKey"}}
16989
+ * </template>
16990
+ * ```
16991
+ *
16992
+ * To access the first element in an array:
16993
+ *
16994
+ * ```js
16995
+ * import { get } from '@ember/helper';
16996
+ *
16997
+ * <template>
16998
+ * {{get @someArray 0}}
16999
+ * </template>
17000
+ * ```
17001
+ *
17002
+ * To access a property on an object with a dynamic key:
17003
+ *
17004
+ * ```js
17005
+ * import { get } from '@ember/helper';
17006
+ *
17007
+ * <template>
17008
+ * {{get @address @field}}
17009
+ * </template>
17010
+ * ```
17011
+ *
17012
+ * This will display the result of `@foo.item1` when `index` is `1`, and
17013
+ * `this.foo.item2` when `index` is `2`, etc.
17014
+ *
17015
+ * **NOTE:** this example uses the experimental `<template>` feature, which is
17016
+ * the only place you need to import `concat` to use it (it is a built-in when
17017
+ * writing standalone `.hbs` files).
17018
+ */
17019
+ _exports.concat = concat;
17020
+ var get = _runtime.get;
17021
+ /**
17022
+ * `{{fn}}` is a helper that receives a function and some arguments, and returns
17023
+ * a new function that combines. This allows you to pass parameters along to
17024
+ * functions in your templates:
17025
+ *
17026
+ * ```js
17027
+ * import { fn } from '@ember/helper';
17028
+ *
17029
+ * function showAlert(message) {
17030
+ * alert(`The message is: '${message}'`);
17031
+ * }
17032
+ *
17033
+ * <template>
17034
+ * <button type="button" {{on "click" (fn showAlert "Hello!")}}>
17035
+ * Click me!
17036
+ * </button>
17037
+ * </template>
17038
+ * ```
17039
+ */
17040
+ _exports.get = get;
17041
+ var fn = _runtime.fn;
17042
+ /* eslint-enable @typescript-eslint/no-empty-interface */
17043
+ _exports.fn = fn;
16747
17044
  });
16748
17045
  define("@ember/instrumentation/index", ["exports", "@ember/-internals/environment", "@ember/debug"], function (_exports, _environment, _debug) {
16749
17046
  "use strict";
@@ -16980,7 +17277,7 @@ define("@ember/instrumentation/index", ["exports", "@ember/-internals/environmen
16980
17277
  cache = {};
16981
17278
  }
16982
17279
  });
16983
- define("@ember/modifier/index", ["exports", "@glimmer/manager", "@ember/-internals/glimmer", "@glimmer/runtime"], function (_exports, _manager, _glimmer, _runtime) {
17280
+ define("@ember/modifier/index", ["exports", "@glimmer/runtime", "@glimmer/manager", "@ember/-internals/glimmer"], function (_exports, _runtime, _manager, _glimmer) {
16984
17281
  "use strict";
16985
17282
 
16986
17283
  Object.defineProperty(_exports, "__esModule", {
@@ -16992,18 +17289,17 @@ define("@ember/modifier/index", ["exports", "@glimmer/manager", "@ember/-interna
16992
17289
  return _glimmer.modifierCapabilities;
16993
17290
  }
16994
17291
  });
16995
- Object.defineProperty(_exports, "on", {
16996
- enumerable: true,
16997
- get: function () {
16998
- return _runtime.on;
16999
- }
17000
- });
17001
- Object.defineProperty(_exports, "setModifierManager", {
17002
- enumerable: true,
17003
- get: function () {
17004
- return _manager.setModifierManager;
17005
- }
17006
- });
17292
+ _exports.setModifierManager = _exports.on = void 0;
17293
+ // SAFETY: at the time of writing, the cast here is from `{}` to `OnModifier`,
17294
+ // which makes it strictly safer to use outside this module because it is not
17295
+ // usable as "any non-null item", which is what `{}` means, without loss of any
17296
+ // information from the type itself.
17297
+ var on = _runtime.on;
17298
+ // NOTE: this uses assignment to *require* that the `glimmerSetModifierManager`
17299
+ // is legally assignable to this type, i.e. that variance is properly upheld.
17300
+ _exports.on = on;
17301
+ var setModifierManager = _manager.setModifierManager;
17302
+ _exports.setModifierManager = setModifierManager;
17007
17303
  });
17008
17304
  define("@ember/object/-internals", ["exports", "@ember/-internals/metal", "@ember/-internals/utils", "@ember/debug", "@ember/object"], function (_exports, _metal, _utils, _debug, _object) {
17009
17305
  "use strict";
@@ -17353,6 +17649,9 @@ define("@ember/object/core", ["exports", "@ember/-internals/container", "@ember/
17353
17649
  var mergedProperties = obj.mergedProperties;
17354
17650
  var keyNames = Object.keys(properties);
17355
17651
  for (var keyName of keyNames) {
17652
+ // SAFETY: this cast as a Record is safe because all object types can be
17653
+ // indexed in JS, and we explicitly type it as returning `unknown`, so the
17654
+ // result *must* be checked below.
17356
17655
  var value = properties[keyName];
17357
17656
  (true && !(!(0, _metal.isClassicDecorator)(value)) && (0, _debug.assert)('EmberObject.create no longer supports defining computed ' + 'properties. Define computed properties using extend() or reopen() ' + 'before calling create().', !(0, _metal.isClassicDecorator)(value)));
17358
17657
  (true && !(!(typeof value === 'function' && value.toString().indexOf('._super') !== -1)) && (0, _debug.assert)('EmberObject.create no longer supports defining methods that call _super.', !(typeof value === 'function' && value.toString().indexOf('._super') !== -1)));
@@ -17691,6 +17990,38 @@ define("@ember/object/core", ["exports", "@ember/-internals/container", "@ember/
17691
17990
  reopen.apply(Class.PrototypeMixin, mixins);
17692
17991
  return Class;
17693
17992
  }
17993
+ /**
17994
+ Creates an instance of a class. Accepts either no arguments, or an object
17995
+ containing values to initialize the newly instantiated object with.
17996
+ ```javascript
17997
+ import EmberObject from '@ember/object';
17998
+ const Person = EmberObject.extend({
17999
+ helloWorld() {
18000
+ alert(`Hi, my name is ${this.get('name')}`);
18001
+ }
18002
+ });
18003
+ let tom = Person.create({
18004
+ name: 'Tom Dale'
18005
+ });
18006
+ tom.helloWorld(); // alerts "Hi, my name is Tom Dale".
18007
+ ```
18008
+ `create` will call the `init` function if defined during
18009
+ `AnyObject.extend`
18010
+ If no arguments are passed to `create`, it will not set values to the new
18011
+ instance during initialization:
18012
+ ```javascript
18013
+ let noName = Person.create();
18014
+ noName.helloWorld(); // alerts undefined
18015
+ ```
18016
+ NOTE: For performance reasons, you cannot declare methods or computed
18017
+ properties during `create`. You should instead declare methods and computed
18018
+ properties when using `extend`.
18019
+ @method create
18020
+ @for @ember/object
18021
+ @static
18022
+ @param [arguments]*
18023
+ @public
18024
+ */
17694
18025
  static create() {
17695
18026
  for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
17696
18027
  args[_key3] = arguments[_key3];
@@ -17718,6 +18049,8 @@ define("@ember/object/core", ["exports", "@ember/-internals/container", "@ember/
17718
18049
  } else {
17719
18050
  initialize(instance, flattenProps.apply(this, args));
17720
18051
  }
18052
+ // SAFETY: The `initialize` call is responsible to merge the prototype chain
18053
+ // so that this holds.
17721
18054
  return instance;
17722
18055
  }
17723
18056
  /**
@@ -20334,7 +20667,7 @@ define("@ember/object/mixin", ["exports", "@ember/-internals/container", "@ember
20334
20667
  args[_key3] = arguments[_key3];
20335
20668
  }
20336
20669
  if (args.length === 0) {
20337
- return;
20670
+ return this;
20338
20671
  }
20339
20672
  if (this.properties) {
20340
20673
  var currentMixin = new Mixin(undefined, this.properties);
@@ -20684,6 +21017,7 @@ define("@ember/object/proxy", ["exports", "@ember/object/-internals", "@ember/-i
20684
21017
  @module @ember/object/proxy
20685
21018
  */
20686
21019
 
21020
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
20687
21021
  class ObjectProxy extends _internals.FrameworkObject {}
20688
21022
  ObjectProxy.PrototypeMixin.reopen(_runtime._ProxyMixin);
20689
21023
  var _default = ObjectProxy;
@@ -21908,7 +22242,6 @@ define("@ember/routing/lib/utils", ["exports", "@ember/-internals/metal", "@embe
21908
22242
  }
21909
22243
  _routeInfo['_names'] = names;
21910
22244
  var route = _routeInfo.route;
21911
- // SAFETY: This cast should be idential. I don't understand why it is needed.
21912
22245
  route._stashNames(_routeInfo, dynamicParent);
21913
22246
  }
21914
22247
  routeInfos['_namesStashed'] = true;
@@ -22225,6 +22558,11 @@ define("@ember/routing/route", ["exports", "@ember/-internals/container", "@embe
22225
22558
  class Route extends _object.default.extend(_runtime.ActionHandler, _evented.default) {
22226
22559
  constructor(owner) {
22227
22560
  super(owner);
22561
+ // These properties will end up appearing in the public interface because we
22562
+ // `implements IRoute` from `router.js`, which has them as part of *its*
22563
+ // public contract. We mark them as `@internal` so they at least signal to
22564
+ // people subclassing `Route` that they should not use them.
22565
+ /** @internal */
22228
22566
  this.context = {};
22229
22567
  if (owner) {
22230
22568
  var router = owner.lookup('router:main');
@@ -22474,6 +22812,9 @@ define("@ember/routing/route", ["exports", "@ember/-internals/container", "@embe
22474
22812
  @public
22475
22813
  */
22476
22814
  resetController(_controller, _isExiting, _transition) {
22815
+ // We document that subclasses do not have to return *anything* and in fact
22816
+ // do not even have to call super, so whiel we *do* return `this`, we need
22817
+ // to be explicit in the types that our return type is *effectively* `void`.
22477
22818
  return this;
22478
22819
  }
22479
22820
  /**
@@ -23972,7 +24313,6 @@ define("@ember/routing/router-service", ["exports", "@ember/-internals/owner", "
23972
24313
  var owner = (0, _owner.getOwner)(this);
23973
24314
  (true && !(owner) && (0, _debug.assert)('RouterService is unexpectedly missing an owner', owner));
23974
24315
  var pivotRoute = owner.lookup(`route:${pivotRouteName}`);
23975
- // @ts-expect-error R could be instantiated with a different sub-type
23976
24316
  return this._router._routerMicrolib.refresh(pivotRoute);
23977
24317
  }
23978
24318
  }
@@ -25367,7 +25707,14 @@ define("@ember/routing/transition", ["exports"], function (_exports) {
25367
25707
  value: true
25368
25708
  });
25369
25709
  });
25370
- define("@ember/runloop/index", ["exports", "@ember/debug", "@ember/-internals/error-handling", "@ember/-internals/metal", "backburner"], function (_exports, _debug, _errorHandling, _metal, _backburner2) {
25710
+ define("@ember/runloop/-private/backburner", ["exports"], function (_exports) {
25711
+ "use strict";
25712
+
25713
+ Object.defineProperty(_exports, "__esModule", {
25714
+ value: true
25715
+ });
25716
+ });
25717
+ define("@ember/runloop/index", ["exports", "@ember/debug", "@ember/-internals/error-handling", "@ember/-internals/metal", "backburner.js"], function (_exports, _debug, _errorHandling, _metal, _backburner2) {
25371
25718
  "use strict";
25372
25719
 
25373
25720
  Object.defineProperty(_exports, "__esModule", {
@@ -25428,6 +25775,10 @@ define("@ember/runloop/index", ["exports", "@ember/debug", "@ember/-internals/er
25428
25775
  // used to re-throw unhandled RSVP rejection errors specifically in this
25429
25776
  // position to avoid breaking anything rendered in the other sections
25430
25777
  _rsvpErrorQueue];
25778
+ /**
25779
+ * @internal
25780
+ * @private
25781
+ */
25431
25782
  _exports._queues = _queues;
25432
25783
  var _backburner = new _backburner2.default(_queues, {
25433
25784
  defaultQueue: 'actions',
@@ -25625,7 +25976,7 @@ define("@ember/runloop/index", ["exports", "@ember/debug", "@ember/-internals/er
25625
25976
  @method cancel
25626
25977
  @static
25627
25978
  @for @ember/runloop
25628
- @param {Object} timer Timer object to cancel
25979
+ @param {Object} [timer] Timer object to cancel
25629
25980
  @return {Boolean} true if canceled or false/undefined if it wasn't found
25630
25981
  @public
25631
25982
  */
@@ -25753,9 +26104,11 @@ define("@ember/test/index", ["exports", "require"], function (_exports, _require
25753
26104
  var unregisterWaiter;
25754
26105
  _exports.unregisterWaiter = unregisterWaiter;
25755
26106
  if ((0, _require.has)('ember-testing')) {
25756
- var {
25757
- Test
25758
- } = (0, _require.default)("ember-testing");
26107
+ // SAFETY: since `require` is opaque to TS, we need to inform it that this is
26108
+ // the actual type of what we import. This `require` needs to stay in sync
26109
+ // with the `import type` statement above. (This cast *increases* safety,
26110
+ // because the result of `require` is `any`.)
26111
+ var Test = (0, _require.default)("ember-testing").Test;
25759
26112
  _exports.registerAsyncHelper = registerAsyncHelper = Test.registerAsyncHelper;
25760
26113
  _exports.registerHelper = registerHelper = Test.registerHelper;
25761
26114
  _exports.registerWaiter = registerWaiter = Test.registerWaiter;
@@ -39338,7 +39691,7 @@ define("@simple-dom/document", ["exports"], function (_exports) {
39338
39691
  var _default = createHTMLDocument;
39339
39692
  _exports.default = _default;
39340
39693
  });
39341
- define("backburner", ["exports"], function (_exports) {
39694
+ define("backburner.js", ["exports"], function (_exports) {
39342
39695
  "use strict";
39343
39696
 
39344
39697
  Object.defineProperty(_exports, "__esModule", {
@@ -41921,7 +42274,7 @@ define("ember-testing/lib/test/waiters", ["exports"], function (_exports) {
41921
42274
  return -1;
41922
42275
  }
41923
42276
  });
41924
- define("ember/index", ["exports", "require", "@ember/-internals/environment", "@ember/-internals/utils", "@ember/-internals/container", "@ember/instrumentation", "@ember/-internals/meta", "@ember/-internals/metal", "@ember/canary-features", "@ember/debug", "backburner", "@ember/controller", "@ember/service", "@ember/object", "@ember/object/-internals", "@ember/object/compat", "@ember/object/computed", "@ember/object/events", "@ember/-internals/runtime", "@ember/-internals/glimmer", "ember/version", "@ember/-internals/views", "@ember/debug/container-debug-adapter", "@ember/debug/data-adapter", "@ember/runloop", "@ember/-internals/error-handling", "@ember/array", "@ember/array/mutable", "@ember/array/proxy", "@ember/application", "@ember/application/instance", "@ember/application/namespace", "@ember/component", "@ember/component/helper", "@ember/engine", "@ember/engine/instance", "@ember/enumerable", "@ember/enumerable/mutable", "@ember/object/core", "@ember/object/evented", "@ember/object/mixin", "@ember/object/observable", "@ember/object/observers", "@ember/object/proxy", "@ember/object/promise-proxy-mixin", "@ember/routing/hash-location", "@ember/routing/history-location", "@ember/routing/none-location", "@ember/routing/route", "@ember/routing/router", "@ember/routing/-internals", "@ember/utils", "@glimmer/runtime", "@glimmer/manager", "@ember/destroyable"], function (_exports, _require, _environment, utils, _container, instrumentation, _meta, metal, _canaryFeatures, EmberDebug, _backburner, _controller, _service, _object, _internals, _compat, _computed, _events, _runtime, _glimmer, _version, views, _containerDebugAdapter, _dataAdapter, _runloop, _errorHandling, _array, _mutable, _proxy, _application, _instance, _namespace, _component, _helper, _engine, _instance2, _enumerable, _mutable2, _core, _evented, _mixin, _observable, _observers, _proxy2, _promiseProxyMixin, _hashLocation, _historyLocation, _noneLocation, _route, _router, _internals2, _utils2, glimmerRuntime, _manager, _destroyable) {
42277
+ define("ember/index", ["exports", "require", "@ember/-internals/environment", "@ember/-internals/utils", "@ember/-internals/container", "@ember/instrumentation", "@ember/-internals/meta", "@ember/-internals/metal", "@ember/canary-features", "@ember/debug", "backburner.js", "@ember/controller", "@ember/service", "@ember/object", "@ember/object/-internals", "@ember/object/compat", "@ember/object/computed", "@ember/object/events", "@ember/-internals/runtime", "@ember/-internals/glimmer", "ember/version", "@ember/-internals/views", "@ember/debug/container-debug-adapter", "@ember/debug/data-adapter", "@ember/runloop", "@ember/-internals/error-handling", "@ember/array", "@ember/array/mutable", "@ember/array/proxy", "@ember/application", "@ember/application/instance", "@ember/application/namespace", "@ember/component", "@ember/component/helper", "@ember/engine", "@ember/engine/instance", "@ember/enumerable", "@ember/enumerable/mutable", "@ember/object/core", "@ember/object/evented", "@ember/object/mixin", "@ember/object/observable", "@ember/object/observers", "@ember/object/proxy", "@ember/object/promise-proxy-mixin", "@ember/routing/hash-location", "@ember/routing/history-location", "@ember/routing/none-location", "@ember/routing/route", "@ember/routing/router", "@ember/routing/-internals", "@ember/utils", "@glimmer/runtime", "@glimmer/manager", "@ember/destroyable"], function (_exports, _require, _environment, utils, _container, instrumentation, _meta, metal, _canaryFeatures, EmberDebug, _backburner, _controller, _service, _object, _internals, _compat, _computed, _events, _runtime, _glimmer, _version, views, _containerDebugAdapter, _dataAdapter, _runloop, _errorHandling, _array, _mutable, _proxy, _application, _instance, _namespace, _component, _helper, _engine, _instance2, _enumerable, _mutable2, _core, _evented, _mixin, _observable, _observers, _proxy2, _promiseProxyMixin, _hashLocation, _historyLocation, _noneLocation, _route, _router, _internals2, _utils2, glimmerRuntime, _manager, _destroyable) {
41925
42278
  "use strict";
41926
42279
 
41927
42280
  Object.defineProperty(_exports, "__esModule", {
@@ -41932,212 +42285,207 @@ define("ember/index", ["exports", "require", "@ember/-internals/environment", "@
41932
42285
  @module ember
41933
42286
  */
41934
42287
 
41935
- /**
41936
- Namespace for injection helper methods.
41937
-
41938
- @class inject
41939
- @namespace Ember
41940
- @static
41941
- @public
41942
- */
41943
- function inject() {
41944
- (true && !(false) && (0, EmberDebug.assert)(`Injected properties must be created through helpers, see '${Object.keys(inject).map(k => `'inject.${k}'`).join(' or ')}'`));
41945
- }
41946
- // ****@ember/controller****
41947
- inject.controller = _controller.inject;
41948
- // ****@ember/service****
41949
- inject.service = _service.service;
41950
- var PartialEmber = {
41951
- isNamespace: true,
41952
- toString() {
42288
+ // eslint-disable-next-line @typescript-eslint/no-namespace
42289
+ var Ember;
42290
+ (function (Ember) {
42291
+ Ember.isNamespace = true;
42292
+ function toString() {
41953
42293
  return 'Ember';
41954
- },
42294
+ }
42295
+ Ember.toString = toString;
41955
42296
  // ****@ember/-internals/container****
41956
- Container: _container.Container,
41957
- Registry: _container.Registry,
42297
+ Ember.Container = _container.Container;
42298
+ Ember.Registry = _container.Registry;
41958
42299
  // ****@ember/-internals/glimmer****
41959
42300
  // Partially re-exported from @glimmer/manager
41960
- _setComponentManager: _glimmer.setComponentManager,
41961
- _componentManagerCapabilities: _glimmer.componentCapabilities,
41962
- _modifierManagerCapabilities: _glimmer.modifierCapabilities,
42301
+ Ember._setComponentManager = _glimmer.setComponentManager;
42302
+ Ember._componentManagerCapabilities = _glimmer.componentCapabilities;
42303
+ Ember._modifierManagerCapabilities = _glimmer.modifierCapabilities;
41963
42304
  // ****@ember/-internals/meta****
41964
- meta: _meta.meta,
42305
+ Ember.meta = _meta.meta;
41965
42306
  // ****@ember/-internals/metal****
41966
- _createCache: metal.createCache,
41967
- _cacheGetValue: metal.getValue,
41968
- _cacheIsConst: metal.isConst,
41969
- _descriptor: metal.nativeDescDecorator,
41970
- _getPath: metal._getPath,
41971
- _setClassicDecorator: metal.setClassicDecorator,
41972
- _tracked: metal.tracked,
41973
- beginPropertyChanges: metal.beginPropertyChanges,
41974
- changeProperties: metal.changeProperties,
41975
- endPropertyChanges: metal.endPropertyChanges,
41976
- hasListeners: metal.hasListeners,
41977
- libraries: metal.libraries,
42307
+ Ember._createCache = metal.createCache; // Also @glimmer/validator
42308
+ Ember._cacheGetValue = metal.getValue; // Also @glimmer/validator
42309
+ Ember._cacheIsConst = metal.isConst; // Also @glimmer/validator
42310
+ Ember._descriptor = metal.nativeDescDecorator;
42311
+ Ember._getPath = metal._getPath;
42312
+ Ember._setClassicDecorator = metal.setClassicDecorator;
42313
+ Ember._tracked = metal.tracked; // Also exported from @glimmer/tracking
42314
+ Ember.beginPropertyChanges = metal.beginPropertyChanges;
42315
+ Ember.changeProperties = metal.changeProperties;
42316
+ Ember.endPropertyChanges = metal.endPropertyChanges;
42317
+ Ember.hasListeners = metal.hasListeners;
42318
+ Ember.libraries = metal.libraries;
41978
42319
  // ****@ember/-internals/runtime****
41979
- _ContainerProxyMixin: _runtime.ContainerProxyMixin,
41980
- _ProxyMixin: _runtime._ProxyMixin,
41981
- _RegistryProxyMixin: _runtime.RegistryProxyMixin,
41982
- ActionHandler: _runtime.ActionHandler,
41983
- Comparable: _runtime.Comparable,
41984
- RSVP: _runtime.RSVP,
42320
+ Ember._ContainerProxyMixin = _runtime.ContainerProxyMixin;
42321
+ Ember._ProxyMixin = _runtime._ProxyMixin;
42322
+ Ember._RegistryProxyMixin = _runtime.RegistryProxyMixin;
42323
+ Ember.ActionHandler = _runtime.ActionHandler;
42324
+ Ember.Comparable = _runtime.Comparable;
42325
+ // This syntax is namespace-specific: `import` in a namespace is aliasing one
42326
+ // namespace to another, while `export` marks the item public on the namespace
42327
+ // (as with the rest of the exported items).
42328
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
42329
+ Ember.RSVP = _runtime.RSVP;
41985
42330
  // ****@ember/-internals/view****
41986
- ComponentLookup: views.ComponentLookup,
41987
- EventDispatcher: views.EventDispatcher,
42331
+ Ember.ComponentLookup = views.ComponentLookup;
42332
+ Ember.EventDispatcher = views.EventDispatcher;
41988
42333
  // ****@ember/-internals/utils****
41989
- _Cache: utils.Cache,
41990
- GUID_KEY: utils.GUID_KEY,
41991
- canInvoke: utils.canInvoke,
41992
- generateGuid: utils.generateGuid,
41993
- guidFor: utils.guidFor,
41994
- uuid: utils.uuid,
41995
- wrap: utils.wrap,
42334
+ Ember._Cache = utils.Cache;
42335
+ Ember.GUID_KEY = utils.GUID_KEY;
42336
+ Ember.canInvoke = utils.canInvoke;
42337
+ Ember.generateGuid = utils.generateGuid;
42338
+ Ember.guidFor = utils.guidFor;
42339
+ Ember.uuid = utils.uuid;
42340
+ Ember.wrap = utils.wrap;
41996
42341
  // ****@ember/application****
41997
- getOwner: _application.getOwner,
41998
- onLoad: _application.onLoad,
41999
- runLoadHooks: _application.runLoadHooks,
42000
- setOwner: _application.setOwner,
42001
- Application: _application.default,
42342
+ Ember.getOwner = _application.getOwner;
42343
+ Ember.onLoad = _application.onLoad;
42344
+ Ember.runLoadHooks = _application.runLoadHooks;
42345
+ Ember.setOwner = _application.setOwner;
42346
+ Ember.Application = _application.default;
42002
42347
  // ****@ember/application/instance****
42003
- ApplicationInstance: _instance.default,
42004
- // ****@ember/application/namespace****
42005
- Namespace: _namespace.default,
42348
+ Ember.ApplicationInstance = _instance.default;
42349
+ // // ****@ember/application/namespace****
42350
+ Ember.Namespace = _namespace.default;
42006
42351
  // ****@ember/array****
42007
- A: _array.A,
42008
- Array: _array.default,
42009
- NativeArray: _array.NativeArray,
42010
- isArray: _array.isArray,
42011
- makeArray: _array.makeArray,
42352
+ Ember.A = _array.A;
42353
+ Ember.Array = _array.default;
42354
+ Ember.NativeArray = _array.NativeArray;
42355
+ Ember.isArray = _array.isArray;
42356
+ Ember.makeArray = _array.makeArray;
42012
42357
  // ****@ember/array/mutable****
42013
- MutableArray: _mutable.default,
42358
+ Ember.MutableArray = _mutable.default;
42014
42359
  // ****@ember/array/proxy****
42015
- ArrayProxy: _proxy.default,
42360
+ Ember.ArrayProxy = _proxy.default;
42016
42361
  // ****@ember/canary-features****
42017
- FEATURES: {
42362
+ Ember.FEATURES = {
42018
42363
  isEnabled: _canaryFeatures.isEnabled,
42019
42364
  ..._canaryFeatures.FEATURES
42020
- },
42365
+ };
42021
42366
  // ****@ember/component****
42022
- _Input: _component.Input,
42023
- Component: _component.default,
42024
- // ****@ember/component/helper****
42025
- Helper: _helper.default,
42367
+ Ember._Input = _component.Input;
42368
+ Ember.Component = _component.default;
42369
+ // // ****@ember/component/helper****
42370
+ Ember.Helper = _helper.default;
42026
42371
  // ****@ember/controller****
42027
- Controller: _controller.default,
42028
- ControllerMixin: _controller.ControllerMixin,
42372
+ Ember.Controller = _controller.default;
42373
+ Ember.ControllerMixin = _controller.ControllerMixin;
42029
42374
  // ****@ember/debug****
42030
- _captureRenderTree: EmberDebug.captureRenderTree,
42031
- assert: EmberDebug.assert,
42032
- warn: EmberDebug.warn,
42033
- debug: EmberDebug.debug,
42034
- deprecate: EmberDebug.deprecate,
42035
- deprecateFunc: EmberDebug.deprecateFunc,
42036
- runInDebug: EmberDebug.runInDebug,
42037
- inspect: EmberDebug.inspect,
42038
- Debug: {
42375
+ Ember._captureRenderTree = EmberDebug.captureRenderTree;
42376
+ Ember.assert = EmberDebug.assert;
42377
+ Ember.warn = EmberDebug.warn;
42378
+ Ember.debug = EmberDebug.debug;
42379
+ Ember.deprecate = EmberDebug.deprecate;
42380
+ Ember.deprecateFunc = EmberDebug.deprecateFunc;
42381
+ Ember.runInDebug = EmberDebug.runInDebug;
42382
+ Ember.inspect = EmberDebug.inspect;
42383
+ Ember.Debug = {
42039
42384
  registerDeprecationHandler: EmberDebug.registerDeprecationHandler,
42040
42385
  registerWarnHandler: EmberDebug.registerWarnHandler,
42041
42386
  // ****@ember/-internals/metal****
42042
42387
  isComputed: metal.isComputed
42043
- },
42388
+ };
42044
42389
  // ****@ember/debug/container-debug-adapter****
42045
- ContainerDebugAdapter: _containerDebugAdapter.default,
42390
+ Ember.ContainerDebugAdapter = _containerDebugAdapter.default;
42046
42391
  // ****@ember/debug/data-adapter****
42047
- DataAdapter: _dataAdapter.default,
42392
+ Ember.DataAdapter = _dataAdapter.default;
42048
42393
  // ****@ember/destroyable****
42049
- _assertDestroyablesDestroyed: _destroyable.assertDestroyablesDestroyed,
42050
- _associateDestroyableChild: _destroyable.associateDestroyableChild,
42051
- _enableDestroyableTracking: _destroyable.enableDestroyableTracking,
42052
- _isDestroying: _destroyable.isDestroying,
42053
- _isDestroyed: _destroyable.isDestroyed,
42054
- _registerDestructor: _destroyable.registerDestructor,
42055
- _unregisterDestructor: _destroyable.unregisterDestructor,
42056
- destroy: _destroyable.destroy,
42394
+ Ember._assertDestroyablesDestroyed = _destroyable.assertDestroyablesDestroyed;
42395
+ Ember._associateDestroyableChild = _destroyable.associateDestroyableChild;
42396
+ Ember._enableDestroyableTracking = _destroyable.enableDestroyableTracking;
42397
+ Ember._isDestroying = _destroyable.isDestroying;
42398
+ Ember._isDestroyed = _destroyable.isDestroyed;
42399
+ Ember._registerDestructor = _destroyable.registerDestructor;
42400
+ Ember._unregisterDestructor = _destroyable.unregisterDestructor;
42401
+ Ember.destroy = _destroyable.destroy;
42057
42402
  // ****@ember/engine****
42058
- Engine: _engine.default,
42403
+ Ember.Engine = _engine.default;
42059
42404
  // ****@ember/engine/instance****
42060
- EngineInstance: _instance2.default,
42405
+ Ember.EngineInstance = _instance2.default;
42061
42406
  // ****@ember/enumerable****
42062
- Enumerable: _enumerable.default,
42407
+ Ember.Enumerable = _enumerable.default;
42063
42408
  // ****@ember/enumerable/mutable****
42064
- MutableEnumerable: _mutable2.default,
42409
+ Ember.MutableEnumerable = _mutable2.default;
42065
42410
  // ****@ember/instrumentation****
42066
- instrument: instrumentation.instrument,
42067
- subscribe: instrumentation.subscribe,
42068
- Instrumentation: {
42411
+ /** @private */
42412
+ Ember.instrument = instrumentation.instrument;
42413
+ /** @private */
42414
+ Ember.subscribe = instrumentation.subscribe;
42415
+ /** @private */
42416
+ Ember.Instrumentation = {
42069
42417
  instrument: instrumentation.instrument,
42070
42418
  subscribe: instrumentation.subscribe,
42071
42419
  unsubscribe: instrumentation.unsubscribe,
42072
42420
  reset: instrumentation.reset
42073
- },
42421
+ };
42074
42422
  // ****@ember/object****
42075
- Object: _object.default,
42076
- _action: _object.action,
42077
- computed: _object.computed,
42078
- defineProperty: _object.defineProperty,
42079
- get: _object.get,
42080
- getProperties: _object.getProperties,
42081
- notifyPropertyChange: _object.notifyPropertyChange,
42082
- observer: _object.observer,
42083
- set: _object.set,
42084
- trySet: _object.trySet,
42085
- setProperties: _object.setProperties,
42423
+ Ember.Object = _object.default;
42424
+ Ember._action = _object.action;
42425
+ Ember.computed = _object.computed;
42426
+ Ember.defineProperty = _object.defineProperty;
42427
+ Ember.get = _object.get;
42428
+ Ember.getProperties = _object.getProperties;
42429
+ Ember.notifyPropertyChange = _object.notifyPropertyChange;
42430
+ Ember.observer = _object.observer;
42431
+ Ember.set = _object.set;
42432
+ Ember.trySet = _object.trySet;
42433
+ Ember.setProperties = _object.setProperties;
42086
42434
  // ****@ember/object/-internals****
42087
- cacheFor: _internals.cacheFor,
42435
+ Ember.cacheFor = _internals.cacheFor;
42088
42436
  // ****@ember/object/compat****
42089
- _dependentKeyCompat: _compat.dependentKeyCompat,
42437
+ Ember._dependentKeyCompat = _compat.dependentKeyCompat;
42090
42438
  // ****@ember/object/computed****
42091
- ComputedProperty: _computed.default,
42092
- expandProperties: _computed.expandProperties,
42439
+ Ember.ComputedProperty = _computed.default;
42440
+ Ember.expandProperties = _computed.expandProperties;
42093
42441
  // ****@ember/object/core****
42094
- CoreObject: _core.default,
42442
+ Ember.CoreObject = _core.default;
42095
42443
  // ****@ember/object/evented****
42096
- Evented: _evented.default,
42097
- on: _evented.on,
42444
+ Ember.Evented = _evented.default;
42445
+ Ember.on = _evented.on;
42098
42446
  // ****@ember/object/events****
42099
- addListener: _events.addListener,
42100
- removeListener: _events.removeListener,
42101
- sendEvent: _events.sendEvent,
42447
+ Ember.addListener = _events.addListener;
42448
+ Ember.removeListener = _events.removeListener;
42449
+ Ember.sendEvent = _events.sendEvent;
42102
42450
  // ****@ember/object/mixin****
42103
- Mixin: _mixin.default,
42104
- mixin: _mixin.mixin,
42451
+ Ember.Mixin = _mixin.default;
42452
+ Ember.mixin = _mixin.mixin;
42105
42453
  // ****@ember/object/observable****
42106
- Observable: _observable.default,
42454
+ Ember.Observable = _observable.default;
42107
42455
  // ****@ember/object/observers****
42108
- addObserver: _observers.addObserver,
42109
- removeObserver: _observers.removeObserver,
42456
+ Ember.addObserver = _observers.addObserver;
42457
+ Ember.removeObserver = _observers.removeObserver;
42110
42458
  // ****@ember/object/promise-proxy-mixin****
42111
- PromiseProxyMixin: _promiseProxyMixin.default,
42459
+ Ember.PromiseProxyMixin = _promiseProxyMixin.default;
42112
42460
  // ****@ember/object/proxy****
42113
- ObjectProxy: _proxy2.default,
42461
+ Ember.ObjectProxy = _proxy2.default;
42114
42462
  // ****@ember/routing/-internals****
42115
- RouterDSL: _internals2.DSL,
42116
- controllerFor: _internals2.controllerFor,
42117
- generateController: _internals2.generateController,
42118
- generateControllerFactory: _internals2.generateControllerFactory,
42463
+ Ember.RouterDSL = _internals2.DSL;
42464
+ Ember.controllerFor = _internals2.controllerFor;
42465
+ Ember.generateController = _internals2.generateController;
42466
+ Ember.generateControllerFactory = _internals2.generateControllerFactory;
42119
42467
  // ****@ember/routing/hash-location****
42120
- HashLocation: _hashLocation.default,
42468
+ Ember.HashLocation = _hashLocation.default;
42121
42469
  // ****@ember/routing/history-location****
42122
- HistoryLocation: _historyLocation.default,
42470
+ Ember.HistoryLocation = _historyLocation.default;
42123
42471
  // ****@ember/routing/none-location****
42124
- NoneLocation: _noneLocation.default,
42472
+ Ember.NoneLocation = _noneLocation.default;
42125
42473
  // ****@ember/routing/route****
42126
- Route: _route.default,
42474
+ Ember.Route = _route.default;
42127
42475
  // ****@ember/routing/router****
42128
- Router: _router.default,
42129
- // ****@ember/runloop****
42130
- run: _runloop.run,
42131
- // ****@ember/service****
42132
- Service: _service.default,
42476
+ Ember.Router = _router.default;
42477
+ // // ****@ember/runloop****
42478
+ Ember.run = _runloop.run;
42479
+ // // ****@ember/service****
42480
+ Ember.Service = _service.default;
42133
42481
  // ****@ember/utils****
42134
- compare: _utils2.compare,
42135
- isBlank: _utils2.isBlank,
42136
- isEmpty: _utils2.isEmpty,
42137
- isEqual: _utils2.isEqual,
42138
- isNone: _utils2.isNone,
42139
- isPresent: _utils2.isPresent,
42140
- typeOf: _utils2.typeOf,
42482
+ Ember.compare = _utils2.compare;
42483
+ Ember.isBlank = _utils2.isBlank;
42484
+ Ember.isEmpty = _utils2.isEmpty;
42485
+ Ember.isEqual = _utils2.isEqual;
42486
+ Ember.isNone = _utils2.isNone;
42487
+ Ember.isPresent = _utils2.isPresent;
42488
+ Ember.typeOf = _utils2.typeOf;
42141
42489
  // ****@ember/version****
42142
42490
  /**
42143
42491
  The semantic version
@@ -42145,8 +42493,8 @@ define("ember/index", ["exports", "require", "@ember/-internals/environment", "@
42145
42493
  @type String
42146
42494
  @public
42147
42495
  */
42148
- VERSION: _version.default,
42149
- ViewUtils: {
42496
+ Ember.VERSION = _version.default;
42497
+ Ember.ViewUtils = {
42150
42498
  // ****@ember/-internals/views****
42151
42499
  getChildViews: views.getChildViews,
42152
42500
  getElementView: views.getElementView,
@@ -42158,34 +42506,48 @@ define("ember/index", ["exports", "require", "@ember/-internals/environment", "@
42158
42506
  isSimpleClick: views.isSimpleClick,
42159
42507
  // ****@ember/-internals/glimmer****
42160
42508
  isSerializationFirstNode: _glimmer.isSerializationFirstNode
42161
- },
42509
+ };
42162
42510
  // ****@glimmer/manager****
42163
- _getComponentTemplate: _manager.getComponentTemplate,
42164
- _helperManagerCapabilities: _manager.helperCapabilities,
42165
- _setComponentTemplate: _manager.setComponentTemplate,
42166
- _setHelperManager: _manager.setHelperManager,
42167
- _setModifierManager: _manager.setModifierManager,
42511
+ Ember._getComponentTemplate = _manager.getComponentTemplate;
42512
+ Ember._helperManagerCapabilities = _manager.helperCapabilities;
42513
+ Ember._setComponentTemplate = _manager.setComponentTemplate;
42514
+ Ember._setHelperManager = _manager.setHelperManager;
42515
+ Ember._setModifierManager = _manager.setModifierManager;
42168
42516
  // ****@glimmer/runtime****
42169
- _templateOnlyComponent: glimmerRuntime.templateOnlyComponent,
42170
- _invokeHelper: glimmerRuntime.invokeHelper,
42171
- _hash: glimmerRuntime.hash,
42172
- _array: glimmerRuntime.array,
42173
- _concat: glimmerRuntime.concat,
42174
- _get: glimmerRuntime.get,
42175
- _on: glimmerRuntime.on,
42176
- _fn: glimmerRuntime.fn,
42517
+ Ember._templateOnlyComponent = glimmerRuntime.templateOnlyComponent;
42518
+ Ember._invokeHelper = glimmerRuntime.invokeHelper;
42519
+ Ember._hash = glimmerRuntime.hash;
42520
+ Ember._array = glimmerRuntime.array;
42521
+ Ember._concat = glimmerRuntime.concat;
42522
+ Ember._get = glimmerRuntime.get;
42523
+ Ember._on = glimmerRuntime.on;
42524
+ Ember._fn = glimmerRuntime.fn;
42177
42525
  // Backburner
42178
- _Backburner: _backburner.default,
42179
- // ****@ember/controller, @ember/service****
42180
- inject,
42181
- __loader: {
42526
+ Ember._Backburner = _backburner.default;
42527
+ // // ****@ember/controller, @ember/service****
42528
+ /**
42529
+ Namespace for injection helper methods.
42530
+ @class inject
42531
+ @namespace Ember
42532
+ @static
42533
+ @public
42534
+ */
42535
+ function inject() {
42536
+ // uses `globalThis` to avoid clobbering with `Ember.Object` in TS namespace
42537
+ (true && !(false) && (0, EmberDebug.assert)(`Injected properties must be created through helpers, see '${globalThis.Object.keys(inject).map(k => `'inject.${k}'`).join(' or ')}'`));
42538
+ }
42539
+ Ember.inject = inject;
42540
+ // ****@ember/controller****
42541
+ inject.controller = _controller.inject;
42542
+ // ****@ember/service****
42543
+ inject.service = _service.service;
42544
+ Ember.__loader = {
42182
42545
  require: _require.default,
42183
42546
  define,
42184
42547
  // @ts-expect-error These properties don't appear as being defined
42185
42548
  registry: typeof requirejs !== 'undefined' ? requirejs.entries : _require.default.entries
42186
- }
42187
- };
42188
- var Ember = PartialEmber;
42549
+ };
42550
+ })(Ember || (Ember = {}));
42189
42551
  Object.defineProperty(Ember, 'ENV', {
42190
42552
  get: _environment.getENV,
42191
42553
  enumerable: false
@@ -42318,7 +42680,7 @@ define("ember/version", ["exports"], function (_exports) {
42318
42680
  value: true
42319
42681
  });
42320
42682
  _exports.default = void 0;
42321
- var _default = "5.0.0";
42683
+ var _default = "5.1.0-alpha.2";
42322
42684
  _exports.default = _default;
42323
42685
  });
42324
42686
  define("route-recognizer", ["exports"], function (_exports) {