ember-source 7.4.0-alpha.1 → 7.5.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (228) hide show
  1. package/build-metadata.json +3 -3
  2. package/dist/dev/packages/@ember/-internals/deprecations/index.js +45 -0
  3. package/dist/dev/packages/@ember/-internals/glimmer/index.js +9 -9
  4. package/dist/dev/packages/@ember/-internals/metal/index.js +12 -12
  5. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +6 -6
  6. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +2 -2
  7. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/comparable.js +2 -2
  8. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/container_proxy.js +2 -2
  9. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/registry_proxy.js +2 -2
  10. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -3
  11. package/dist/dev/packages/@ember/-internals/views/index.js +1 -0
  12. package/dist/dev/packages/@ember/-internals/views/lib/mixins/action_support.js +2 -2
  13. package/dist/dev/packages/@ember/-internals/views/lib/system/event_dispatcher.js +1 -1
  14. package/dist/dev/packages/@ember/-internals/views/lib/views/core-view-utils.js +14 -0
  15. package/dist/dev/packages/@ember/-internals/views/lib/views/core_view.js +25 -21
  16. package/dist/dev/packages/@ember/-internals/views/lib/views/states.js +5 -2
  17. package/dist/dev/packages/@ember/application/index.js +1 -1
  18. package/dist/dev/packages/@ember/application/instance.js +16 -13
  19. package/dist/dev/packages/@ember/application/namespace.js +1 -1
  20. package/dist/dev/packages/@ember/array/index.js +8 -8
  21. package/dist/dev/packages/@ember/array/proxy.js +8 -5
  22. package/dist/dev/packages/@ember/component/helper.js +2 -2
  23. package/dist/dev/packages/@ember/component/index.js +7 -7
  24. package/dist/dev/packages/@ember/component/template-only.js +1 -1
  25. package/dist/dev/packages/@ember/controller/index.js +4 -4
  26. package/dist/dev/packages/@ember/engine/index.js +2 -2
  27. package/dist/dev/packages/@ember/enumerable/index.js +2 -2
  28. package/dist/dev/packages/@ember/enumerable/mutable.js +2 -2
  29. package/dist/dev/packages/@ember/helper/index.js +8 -8
  30. package/dist/dev/packages/@ember/modifier/index.js +2 -2
  31. package/dist/dev/packages/@ember/modifier/on.js +1 -1
  32. package/dist/dev/packages/@ember/object/-internals.js +1 -1
  33. package/dist/dev/packages/@ember/object/computed.js +2 -2
  34. package/dist/dev/packages/@ember/object/core.js +7 -7
  35. package/dist/dev/packages/@ember/object/evented.js +3 -71
  36. package/dist/dev/packages/@ember/object/events.js +17 -1
  37. package/dist/dev/packages/@ember/object/index.js +4 -4
  38. package/dist/dev/packages/@ember/object/lib/computed/computed_macros.js +3 -3
  39. package/dist/dev/packages/@ember/object/lib/computed/reduce_computed_macros.js +1 -1
  40. package/dist/dev/packages/@ember/object/mixin.js +11 -592
  41. package/dist/dev/packages/@ember/object/observable.js +7 -7
  42. package/dist/dev/packages/@ember/object/observers.js +1 -1
  43. package/dist/dev/packages/@ember/object/promise-proxy-mixin.js +10 -4
  44. package/dist/dev/packages/@ember/object/proxy.js +8 -1
  45. package/dist/dev/packages/@ember/renderer/index.js +1 -1
  46. package/dist/dev/packages/@ember/routing/index.js +1 -1
  47. package/dist/dev/packages/@ember/routing/lib/routing-service.js +2 -2
  48. package/dist/dev/packages/@ember/routing/route.js +34 -9
  49. package/dist/dev/packages/@ember/routing/router-service.js +71 -6
  50. package/dist/dev/packages/@ember/routing/router.js +32 -6
  51. package/dist/dev/packages/@ember/runloop/index.js +1 -1
  52. package/dist/dev/packages/@ember/service/index.js +1 -1
  53. package/dist/dev/packages/@ember/template-compiler/lib/compile-options.js +3 -3
  54. package/dist/dev/packages/@glimmer/destroyable/index.js +43 -14
  55. package/dist/dev/packages/@glimmer/manager/index.js +3 -3
  56. package/dist/dev/packages/@glimmer/node/index.js +2 -2
  57. package/dist/dev/packages/@glimmer/program/index.js +1 -1
  58. package/dist/dev/packages/@glimmer/reference/index.js +2 -2
  59. package/dist/dev/packages/@glimmer/runtime/index.js +11 -11
  60. package/dist/dev/packages/@glimmer/tracking/index.js +1 -1
  61. package/dist/dev/packages/ember/version.js +1 -1
  62. package/dist/dev/packages/shared-chunks/{alias-3DBxvoim.js → alias-CSzPOqZC.js} +3 -3
  63. package/dist/dev/packages/shared-chunks/{api-BlZDPg1n.js → api-B0N4oLJG.js} +3 -3
  64. package/dist/dev/packages/shared-chunks/{api-Dz70AUL_.js → api-CK8FxDZV.js} +2 -0
  65. package/dist/dev/packages/shared-chunks/{api-DuLOZMO_.js → api-PyzZqscb.js} +2 -2
  66. package/dist/dev/packages/shared-chunks/{args-proxy-CS5Brs3_.js → args-proxy-C39f5UPF.js} +1 -1
  67. package/dist/dev/packages/shared-chunks/{arguments-DniR8eF2.js → arguments-LEaMCStR.js} +7 -3
  68. package/dist/dev/packages/shared-chunks/{array-DvaweI_T.js → array-CxZAmpTY.js} +2 -2
  69. package/dist/dev/packages/shared-chunks/{chain-tags-uWSImHzB.js → chain-tags-uYrtCZq1.js} +1 -1
  70. package/dist/dev/packages/shared-chunks/{computed-DGxbeUbf.js → computed-CXIM4Sjc.js} +3 -3
  71. package/dist/dev/packages/shared-chunks/{curly-BCD_vyHq.js → curly-DbGgDeux.js} +18 -17
  72. package/dist/dev/packages/shared-chunks/destroyable-key-BsfVBM7f.js +12 -0
  73. package/dist/dev/packages/shared-chunks/{element-Cgoi4ldD.js → element-DLh78jeJ.js} +3 -3
  74. package/dist/dev/packages/shared-chunks/evented-cAr_RO4u.js +100 -0
  75. package/dist/dev/packages/shared-chunks/{events-6aFVjD4k.js → events-e_Do73jh.js} +3 -0
  76. package/dist/dev/packages/shared-chunks/{get-zsePWrJL.js → get-fzmvcT9R.js} +3 -3
  77. package/dist/dev/packages/shared-chunks/{hash-BFu91gtE.js → hash-D1O4fZ99.js} +3 -3
  78. package/dist/dev/packages/shared-chunks/{index-Bv9SQpEx.js → index-D8La4_AP.js} +12 -12
  79. package/dist/dev/packages/shared-chunks/{injected_property-DbXd6Gax.js → injected_property-DyyWscn-.js} +1 -1
  80. package/dist/dev/packages/shared-chunks/{internal-DTOXyEGM.js → internal-CZjbPyX3.js} +2 -2
  81. package/dist/dev/packages/shared-chunks/{internal-helper-CKrni0b_.js → internal-helper-BkRVvV7p.js} +1 -1
  82. package/dist/dev/packages/shared-chunks/{invoke-CgF42joE.js → invoke-BPNErlhO.js} +2 -2
  83. package/dist/dev/packages/shared-chunks/mixin-M88Ghbyw.js +612 -0
  84. package/dist/dev/packages/shared-chunks/{namespace_search-BfvzEQzN.js → namespace_search-TFdmjK_a.js} +1 -1
  85. package/dist/dev/packages/shared-chunks/{not-0cVb-rLf.js → not-DNpbxEvj.js} +2 -2
  86. package/dist/dev/packages/shared-chunks/{observers-DMlX2nCi.js → observers-BsxKjjpC.js} +2 -2
  87. package/dist/dev/packages/shared-chunks/{on-CVIjn2C-.js → on-Dfya_9b_.js} +3 -3
  88. package/dist/dev/packages/shared-chunks/{outlet-BO5-QFmm.js → outlet-wIOlGMfN.js} +3 -3
  89. package/dist/dev/packages/shared-chunks/{property_set-DezUwDX4.js → property_set-CxxTalOq.js} +1 -1
  90. package/dist/dev/packages/shared-chunks/{reference-BqOLhKFy.js → reference-De0V3Vxp.js} +2 -0
  91. package/dist/dev/packages/shared-chunks/{rehydrate-builder-CsnkZkur.js → rehydrate-builder-B3wE1O5a.js} +1 -1
  92. package/dist/dev/packages/shared-chunks/{render-D_Rawf-r.js → render-CNXCIKfb.js} +16 -5
  93. package/dist/dev/packages/shared-chunks/{serialize-builder-D1oAeiyl.js → serialize-builder-v4amW_JS.js} +1 -1
  94. package/dist/{prod/packages/shared-chunks/set_properties-DYiBfzdk.js → dev/packages/shared-chunks/set_properties-KoN0q2wj.js} +2 -2
  95. package/dist/dev/packages/shared-chunks/{setup-registry-Ci8Af2Bz.js → setup-registry-BPb25ZxQ.js} +16 -15
  96. package/dist/dev/packages/shared-chunks/{template-only-Cu639ICT.js → template-only-DHdQevpG.js} +2 -2
  97. package/dist/dev/packages/shared-chunks/{textarea-DvS6Xmdh.js → textarea-Obtv2iCY.js} +3 -3
  98. package/dist/dev/packages/shared-chunks/{tracked-57EW14Ny.js → tracked-CLY9ttD5.js} +1 -1
  99. package/dist/dev/packages/shared-chunks/{unique-id-Csxuh1I7.js → unique-id-CdB2MG3m.js} +2 -2
  100. package/dist/prod/packages/@ember/-internals/deprecations/index.js +45 -0
  101. package/dist/prod/packages/@ember/-internals/glimmer/index.js +9 -9
  102. package/dist/prod/packages/@ember/-internals/metal/index.js +13 -13
  103. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +6 -6
  104. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +2 -2
  105. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/comparable.js +2 -2
  106. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/container_proxy.js +2 -2
  107. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/registry_proxy.js +2 -2
  108. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -3
  109. package/dist/prod/packages/@ember/-internals/views/index.js +1 -0
  110. package/dist/prod/packages/@ember/-internals/views/lib/mixins/action_support.js +2 -2
  111. package/dist/prod/packages/@ember/-internals/views/lib/system/event_dispatcher.js +1 -1
  112. package/dist/prod/packages/@ember/-internals/views/lib/views/core-view-utils.js +14 -0
  113. package/dist/prod/packages/@ember/-internals/views/lib/views/core_view.js +25 -21
  114. package/dist/prod/packages/@ember/-internals/views/lib/views/states.js +5 -2
  115. package/dist/prod/packages/@ember/application/index.js +1 -1
  116. package/dist/prod/packages/@ember/application/instance.js +14 -12
  117. package/dist/prod/packages/@ember/application/namespace.js +1 -1
  118. package/dist/prod/packages/@ember/array/index.js +8 -8
  119. package/dist/prod/packages/@ember/array/proxy.js +8 -5
  120. package/dist/prod/packages/@ember/component/helper.js +2 -2
  121. package/dist/prod/packages/@ember/component/index.js +8 -8
  122. package/dist/prod/packages/@ember/component/template-only.js +1 -1
  123. package/dist/prod/packages/@ember/controller/index.js +4 -4
  124. package/dist/prod/packages/@ember/engine/index.js +2 -2
  125. package/dist/prod/packages/@ember/enumerable/index.js +2 -2
  126. package/dist/prod/packages/@ember/enumerable/mutable.js +2 -2
  127. package/dist/prod/packages/@ember/helper/index.js +8 -8
  128. package/dist/prod/packages/@ember/modifier/index.js +2 -2
  129. package/dist/prod/packages/@ember/modifier/on.js +1 -1
  130. package/dist/prod/packages/@ember/object/-internals.js +1 -0
  131. package/dist/prod/packages/@ember/object/compat.js +1 -1
  132. package/dist/prod/packages/@ember/object/computed.js +2 -2
  133. package/dist/prod/packages/@ember/object/core.js +7 -7
  134. package/dist/prod/packages/@ember/object/evented.js +3 -71
  135. package/dist/prod/packages/@ember/object/events.js +17 -1
  136. package/dist/prod/packages/@ember/object/index.js +5 -5
  137. package/dist/prod/packages/@ember/object/internals.js +1 -0
  138. package/dist/prod/packages/@ember/object/lib/computed/computed_macros.js +3 -3
  139. package/dist/prod/packages/@ember/object/lib/computed/reduce_computed_macros.js +1 -1
  140. package/dist/prod/packages/@ember/object/mixin.js +9 -557
  141. package/dist/prod/packages/@ember/object/observable.js +7 -7
  142. package/dist/prod/packages/@ember/object/observers.js +1 -1
  143. package/dist/prod/packages/@ember/object/promise-proxy-mixin.js +10 -4
  144. package/dist/prod/packages/@ember/object/proxy.js +8 -1
  145. package/dist/prod/packages/@ember/renderer/index.js +1 -1
  146. package/dist/prod/packages/@ember/routing/index.js +1 -1
  147. package/dist/prod/packages/@ember/routing/lib/routing-service.js +2 -2
  148. package/dist/prod/packages/@ember/routing/route.js +35 -10
  149. package/dist/prod/packages/@ember/routing/router-service.js +71 -6
  150. package/dist/prod/packages/@ember/routing/router.js +32 -6
  151. package/dist/prod/packages/@ember/runloop/index.js +1 -1
  152. package/dist/prod/packages/@ember/service/index.js +1 -1
  153. package/dist/prod/packages/@ember/template-compiler/lib/compile-options.js +3 -3
  154. package/dist/prod/packages/@glimmer/destroyable/index.js +37 -11
  155. package/dist/prod/packages/@glimmer/manager/index.js +3 -3
  156. package/dist/prod/packages/@glimmer/node/index.js +2 -2
  157. package/dist/prod/packages/@glimmer/program/index.js +1 -1
  158. package/dist/prod/packages/@glimmer/reference/index.js +2 -2
  159. package/dist/prod/packages/@glimmer/runtime/index.js +11 -11
  160. package/dist/prod/packages/@glimmer/tracking/index.js +1 -1
  161. package/dist/prod/packages/ember/version.js +1 -1
  162. package/dist/prod/packages/shared-chunks/{alias-IFzw6sv_.js → alias-DvgufSYq.js} +4 -4
  163. package/dist/prod/packages/shared-chunks/{api-DzOa0Acr.js → api-B3M8aF1d.js} +2 -0
  164. package/dist/prod/packages/shared-chunks/{api-B_poQGXS.js → api-CoUjEXgs.js} +3 -3
  165. package/dist/prod/packages/shared-chunks/{api-DlJKfm_f.js → api-DJnXAjon.js} +2 -2
  166. package/dist/prod/packages/shared-chunks/{args-proxy-CCoFtYLS.js → args-proxy-BHODnDyt.js} +1 -1
  167. package/dist/prod/packages/shared-chunks/{arguments-CCYATlEH.js → arguments-xjTAZ6VE.js} +7 -3
  168. package/dist/prod/packages/shared-chunks/{array-CnXdmzOG.js → array-CK__rqeu.js} +2 -2
  169. package/dist/prod/packages/shared-chunks/{chain-tags-B2J7DsxO.js → chain-tags-BlsXEpE-.js} +1 -1
  170. package/dist/prod/packages/shared-chunks/{computed-BNdMwGhH.js → computed-ZvOk7SJQ.js} +4 -4
  171. package/dist/prod/packages/shared-chunks/{curly-CdvJuTyW.js → curly-Bg--Dj0X.js} +18 -17
  172. package/dist/prod/packages/shared-chunks/{decorator-9ikVwsjY.js → decorator-DcvVDSJV.js} +1 -1
  173. package/dist/prod/packages/shared-chunks/destroyable-key-BsfVBM7f.js +12 -0
  174. package/dist/prod/packages/shared-chunks/{element-BmBjPjkQ.js → element-CZnh4CbF.js} +3 -3
  175. package/dist/prod/packages/shared-chunks/evented-DYsL5t87.js +100 -0
  176. package/dist/prod/packages/shared-chunks/{events-DYrYz3V8.js → events-3Q5Qvo6Q.js} +3 -0
  177. package/dist/prod/packages/shared-chunks/{get-CEjFJzGs.js → get-B1Vq9Mmk.js} +3 -3
  178. package/dist/prod/packages/shared-chunks/{hash-BitfXhCx.js → hash-pP7ZP_NN.js} +3 -3
  179. package/dist/prod/packages/shared-chunks/{index-D8cl-pfl.js → index-Dncpaycf.js} +12 -12
  180. package/dist/prod/packages/shared-chunks/{injected_property-DqQ0XV7k.js → injected_property-4vB_6fM8.js} +2 -2
  181. package/dist/prod/packages/shared-chunks/{internal-BQ7zHrqS.js → internal-D1sloI2P.js} +2 -2
  182. package/dist/prod/packages/shared-chunks/{internal-helper-Bz1lpDXr.js → internal-helper-Becm19An.js} +1 -1
  183. package/dist/prod/packages/shared-chunks/{invoke-4JGJYH7Z.js → invoke-BqNxG81o.js} +2 -2
  184. package/dist/prod/packages/shared-chunks/mixin-AGmJaAAY.js +576 -0
  185. package/dist/prod/packages/shared-chunks/{namespace_search-BfvzEQzN.js → namespace_search-TFdmjK_a.js} +1 -1
  186. package/dist/prod/packages/shared-chunks/{not-Dn5s9qVZ.js → not-BRssU6nS.js} +2 -2
  187. package/dist/prod/packages/shared-chunks/{observers-BmobpXAF.js → observers-B1wiwQeH.js} +2 -2
  188. package/dist/prod/packages/shared-chunks/{on-ov4KAucw.js → on-BFt-Sx9A.js} +3 -3
  189. package/dist/prod/packages/shared-chunks/{outlet-BWnaVOrA.js → outlet-bc38zkd8.js} +3 -3
  190. package/dist/prod/packages/shared-chunks/{property_set-BmAQ0MGK.js → property_set-CVmdjPdh.js} +2 -2
  191. package/dist/prod/packages/shared-chunks/{reference-CG0yPgLy.js → reference-CccCE8mJ.js} +2 -0
  192. package/dist/prod/packages/shared-chunks/{rehydrate-builder-n_8RCUj9.js → rehydrate-builder-B9bh-2Dy.js} +1 -1
  193. package/dist/prod/packages/shared-chunks/{render-BAVl5E6X.js → render-C_iak8Db.js} +16 -5
  194. package/dist/prod/packages/shared-chunks/{serialize-builder-CsG9WHVw.js → serialize-builder-Du-432zt.js} +1 -1
  195. package/dist/{dev/packages/shared-chunks/set_properties-BzM_irwA.js → prod/packages/shared-chunks/set_properties-BObIgkE-.js} +2 -2
  196. package/dist/prod/packages/shared-chunks/{setup-registry-DeyoFe6Q.js → setup-registry-Czh4z4t2.js} +16 -15
  197. package/dist/prod/packages/shared-chunks/{template-only-DKNcKM5b.js → template-only-CWsfnbVm.js} +2 -2
  198. package/dist/prod/packages/shared-chunks/{textarea-B-sssXGa.js → textarea-DbUSajBD.js} +3 -3
  199. package/dist/prod/packages/shared-chunks/{tracked-DvOpYI0o.js → tracked-z77O-F0O.js} +2 -2
  200. package/dist/prod/packages/shared-chunks/{unique-id-BJb1p8EG.js → unique-id-DNqsbhfh.js} +2 -2
  201. package/docs/data.json +859 -511
  202. package/lib/browsers.cjs +33 -33
  203. package/package.json +3 -2
  204. package/types/stable/@ember/-internals/deprecations/index.d.ts +30 -0
  205. package/types/stable/@ember/-internals/glimmer/index.d.ts +1 -1
  206. package/types/stable/@ember/-internals/metal/lib/evented-methods.d.ts +22 -0
  207. package/types/stable/@ember/-internals/metal/lib/events.d.ts +1 -0
  208. package/types/stable/@ember/-internals/utils/lib/internal-mixin-create.d.ts +13 -0
  209. package/types/stable/@ember/-internals/views/index.d.ts +1 -0
  210. package/types/stable/@ember/-internals/views/lib/views/core-view-utils.d.ts +5 -0
  211. package/types/stable/@ember/-internals/views/lib/views/core_view.d.ts +9 -6
  212. package/types/stable/@ember/array/proxy.d.ts +1 -0
  213. package/types/stable/@ember/object/evented.d.ts +6 -0
  214. package/types/stable/@ember/object/events.d.ts +26 -1
  215. package/types/stable/@ember/object/mixin.d.ts +3 -0
  216. package/types/stable/@ember/object/promise-proxy-mixin.d.ts +1 -0
  217. package/types/stable/@ember/object/proxy.d.ts +2 -0
  218. package/types/stable/@ember/routing/route.d.ts +9 -2
  219. package/types/stable/@ember/routing/router-service.d.ts +54 -6
  220. package/types/stable/@ember/routing/router.d.ts +9 -8
  221. package/types/stable/@glimmer/destroyable/index.d.ts +1 -0
  222. package/types/stable/@glimmer/runtime/lib/opcodes.d.ts +1 -2
  223. package/types/stable/@glimmer/runtime/lib/vm/element-builder.d.ts +2 -0
  224. package/types/stable/@glimmer/runtime/lib/vm/render-result.d.ts +2 -0
  225. package/types/stable/@glimmer/runtime/lib/vm/update.d.ts +2 -0
  226. package/types/stable/@glimmer/syntax/lib/keywords.d.ts +2 -2
  227. package/types/stable/@glimmer/util/lib/destroyable-key.d.ts +15 -0
  228. package/types/stable/index.d.ts +4 -0
@@ -0,0 +1,612 @@
1
+ import { I as INIT_FACTORY } from './container-BzzHmCNj.js';
2
+ import { peekMeta, meta } from '../@ember/-internals/meta/lib/meta.js';
3
+ import { R as ROOT, o as observerListenerMetaFor, w as wrap } from './super-BBBjgF69.js';
4
+ import '../@ember/debug/index.js';
5
+ import { n as nativeDescDecorator, a as isClassicDecorator, b as descriptorForDecorator, m as makeComputedDecorator } from './decorator-B5Uh5NFI.js';
6
+ import { i as defineValue, h as defineDecorator, C as ComputedProperty } from './computed-CXIM4Sjc.js';
7
+ import { e as setUnprocessedMixins } from './namespace_search-TFdmjK_a.js';
8
+ import { c as revalidateObservers, b as addObserver, r as removeObserver } from './observers-BsxKjjpC.js';
9
+ import { a as addListener, r as removeListener } from './events-e_Do73jh.js';
10
+ import { deprecateUntil, DEPRECATIONS } from '../@ember/-internals/deprecations/index.js';
11
+ import { assert } from '../@ember/debug/lib/assert.js';
12
+
13
+ /**
14
+ Key for the internal Mixin constructor.
15
+
16
+ Ember's own internals are built on mixins, so they need a way to construct
17
+ one without triggering the mixin deprecation that `Mixin.create` emits. This
18
+ is deliberately a Symbol so that it does not show up as a discoverable
19
+ property name and cannot be reached by name from application code.
20
+
21
+ @private
22
+ */
23
+ const INTERNAL_MIXIN_CREATE = Symbol('__internal__mixin__');
24
+
25
+ /**
26
+ @module @ember/object/mixin
27
+ */
28
+ const a_concat = Array.prototype.concat;
29
+ const {
30
+ isArray
31
+ } = Array;
32
+ function extractAccessors(properties) {
33
+ if (properties !== undefined) {
34
+ for (let key of Object.keys(properties)) {
35
+ let desc = Object.getOwnPropertyDescriptor(properties, key);
36
+ if (desc.get !== undefined || desc.set !== undefined) {
37
+ Object.defineProperty(properties, key, {
38
+ value: nativeDescDecorator(desc)
39
+ });
40
+ }
41
+ }
42
+ }
43
+ return properties;
44
+ }
45
+ function concatenatedMixinProperties(concatProp, props, values, base) {
46
+ // reset before adding each new mixin to pickup concats from previous
47
+ let concats = values[concatProp] || base[concatProp];
48
+ if (props[concatProp]) {
49
+ concats = concats ? a_concat.call(concats, props[concatProp]) : props[concatProp];
50
+ }
51
+ return concats;
52
+ }
53
+ function giveDecoratorSuper(key, decorator, property, descs) {
54
+ if (property === true) {
55
+ return decorator;
56
+ }
57
+ let originalGetter = property._getter;
58
+ if (originalGetter === undefined) {
59
+ return decorator;
60
+ }
61
+ let superDesc = descs[key];
62
+
63
+ // Check to see if the super property is a decorator first, if so load its descriptor
64
+ let superProperty = typeof superDesc === 'function' ? descriptorForDecorator(superDesc) : superDesc;
65
+ if (superProperty === undefined || superProperty === true) {
66
+ return decorator;
67
+ }
68
+ let superGetter = superProperty._getter;
69
+ if (superGetter === undefined) {
70
+ return decorator;
71
+ }
72
+ let get = wrap(originalGetter, superGetter);
73
+ let set;
74
+ let originalSetter = property._setter;
75
+ let superSetter = superProperty._setter;
76
+ if (superSetter !== undefined) {
77
+ if (originalSetter !== undefined) {
78
+ set = wrap(originalSetter, superSetter);
79
+ } else {
80
+ // If the super property has a setter, we default to using it no matter what.
81
+ // This is clearly very broken and weird, but it's what was here so we have
82
+ // to keep it until the next major at least.
83
+ //
84
+ // TODO: Add a deprecation here.
85
+ set = superSetter;
86
+ }
87
+ } else {
88
+ set = originalSetter;
89
+ }
90
+
91
+ // only create a new CP if we must
92
+ if (get !== originalGetter || set !== originalSetter) {
93
+ // Since multiple mixins may inherit from the same parent, we need
94
+ // to clone the computed property so that other mixins do not receive
95
+ // the wrapped version.
96
+ let dependentKeys = property._dependentKeys || [];
97
+ let newProperty = new ComputedProperty([...dependentKeys, {
98
+ get,
99
+ set
100
+ }]);
101
+ newProperty._readOnly = property._readOnly;
102
+ newProperty._meta = property._meta;
103
+ newProperty.enumerable = property.enumerable;
104
+
105
+ // SAFETY: We passed in the impl for this class
106
+ return makeComputedDecorator(newProperty, ComputedProperty);
107
+ }
108
+ return decorator;
109
+ }
110
+ function giveMethodSuper(key, method, values, descs) {
111
+ // Methods overwrite computed properties, and do not call super to them.
112
+ if (descs[key] !== undefined) {
113
+ return method;
114
+ }
115
+
116
+ // Find the original method in a parent mixin
117
+ let superMethod = values[key];
118
+
119
+ // Only wrap the new method if the original method was a function
120
+ if (typeof superMethod === 'function') {
121
+ return wrap(method, superMethod);
122
+ }
123
+ return method;
124
+ }
125
+ function simpleMakeArray(value) {
126
+ if (!value) {
127
+ return [];
128
+ } else if (!Array.isArray(value)) {
129
+ return [value];
130
+ } else {
131
+ return value;
132
+ }
133
+ }
134
+ function applyConcatenatedProperties(key, value, values) {
135
+ let baseValue = values[key];
136
+ let ret = simpleMakeArray(baseValue).concat(simpleMakeArray(value));
137
+ {
138
+ // it is possible to use concatenatedProperties with strings (which cannot be frozen)
139
+ // only freeze objects...
140
+ if (typeof ret === 'object' && ret !== null) {
141
+ // prevent mutating `concatenatedProperties` array after it is applied
142
+ Object.freeze(ret);
143
+ }
144
+ }
145
+ return ret;
146
+ }
147
+ function applyMergedProperties(key, value, values) {
148
+ let baseValue = values[key];
149
+ (!(!isArray(value)) && assert(`You passed in \`${JSON.stringify(value)}\` as the value for \`${key}\` but \`${key}\` cannot be an Array`, !isArray(value)));
150
+ if (!baseValue) {
151
+ return value;
152
+ }
153
+ let newBase = Object.assign({}, baseValue);
154
+ let hasFunction = false;
155
+ let props = Object.keys(value);
156
+ for (let prop of props) {
157
+ let propValue = value[prop];
158
+ if (typeof propValue === 'function') {
159
+ hasFunction = true;
160
+ newBase[prop] = giveMethodSuper(prop, propValue, baseValue, {});
161
+ } else {
162
+ newBase[prop] = propValue;
163
+ }
164
+ }
165
+ if (hasFunction) {
166
+ newBase._super = ROOT;
167
+ }
168
+ return newBase;
169
+ }
170
+ function mergeMixins(mixins, meta, descs, values, base, keys, keysWithSuper) {
171
+ let currentMixin;
172
+ for (let i = 0; i < mixins.length; i++) {
173
+ currentMixin = mixins[i];
174
+ (!(typeof currentMixin === 'object' && currentMixin !== null && Object.prototype.toString.call(currentMixin) !== '[object Array]') && assert(`Expected hash or Mixin instance, got ${Object.prototype.toString.call(currentMixin)}`, typeof currentMixin === 'object' && currentMixin !== null && Object.prototype.toString.call(currentMixin) !== '[object Array]'));
175
+ if (MIXINS.has(currentMixin)) {
176
+ if (meta.hasMixin(currentMixin)) {
177
+ continue;
178
+ }
179
+ meta.addMixin(currentMixin);
180
+ let {
181
+ properties,
182
+ mixins
183
+ } = currentMixin;
184
+ if (properties !== undefined) {
185
+ mergeProps(meta, properties, descs, values, base, keys, keysWithSuper);
186
+ } else if (mixins !== undefined) {
187
+ mergeMixins(mixins, meta, descs, values, base, keys, keysWithSuper);
188
+ if (currentMixin instanceof Mixin && currentMixin._without !== undefined) {
189
+ currentMixin._without.forEach(keyName => {
190
+ // deleting the key means we won't process the value
191
+ let index = keys.indexOf(keyName);
192
+ if (index !== -1) {
193
+ keys.splice(index, 1);
194
+ }
195
+ });
196
+ }
197
+ }
198
+ } else {
199
+ mergeProps(meta, currentMixin, descs, values, base, keys, keysWithSuper);
200
+ }
201
+ }
202
+ }
203
+ function mergeProps(meta, props, descs, values, base, keys, keysWithSuper) {
204
+ let concats = concatenatedMixinProperties('concatenatedProperties', props, values, base);
205
+ let mergings = concatenatedMixinProperties('mergedProperties', props, values, base);
206
+ let propKeys = Object.keys(props);
207
+ for (let key of propKeys) {
208
+ let value = props[key];
209
+ if (value === undefined) continue;
210
+ if (keys.indexOf(key) === -1) {
211
+ keys.push(key);
212
+ let desc = meta.peekDescriptors(key);
213
+ if (desc === undefined) {
214
+ // If the value is a classic decorator, we don't want to actually
215
+ // access it, because that will execute the decorator while we're
216
+ // building the class.
217
+ if (!isClassicDecorator(value)) {
218
+ // The superclass did not have a CP, which means it may have
219
+ // observers or listeners on that property.
220
+ let prev = values[key] = base[key];
221
+ if (typeof prev === 'function') {
222
+ updateObserversAndListeners(base, key, prev, false);
223
+ }
224
+ }
225
+ } else {
226
+ descs[key] = desc;
227
+
228
+ // The super desc will be overwritten on descs, so save off the fact that
229
+ // there was a super so we know to Object.defineProperty when writing
230
+ // the value
231
+ keysWithSuper.push(key);
232
+ desc.teardown(base, key, meta);
233
+ }
234
+ }
235
+ let isFunction = typeof value === 'function';
236
+ if (isFunction) {
237
+ let desc = descriptorForDecorator(value);
238
+ if (desc !== undefined) {
239
+ // Wrap descriptor function to implement _super() if needed
240
+ descs[key] = giveDecoratorSuper(key, value, desc, descs);
241
+ values[key] = undefined;
242
+ continue;
243
+ }
244
+ }
245
+ if (concats && concats.indexOf(key) >= 0 || key === 'concatenatedProperties' || key === 'mergedProperties') {
246
+ value = applyConcatenatedProperties(key, value, values);
247
+ } else if (mergings && mergings.indexOf(key) > -1) {
248
+ value = applyMergedProperties(key, value, values);
249
+ } else if (isFunction) {
250
+ value = giveMethodSuper(key, value, values, descs);
251
+ }
252
+ values[key] = value;
253
+ descs[key] = undefined;
254
+ }
255
+ }
256
+ function updateObserversAndListeners(obj, key, fn, add) {
257
+ let meta = observerListenerMetaFor(fn);
258
+ if (meta === undefined) return;
259
+ let {
260
+ observers,
261
+ listeners
262
+ } = meta;
263
+ if (observers !== undefined) {
264
+ let updateObserver = add ? addObserver : removeObserver;
265
+ for (let path of observers.paths) {
266
+ updateObserver(obj, path, null, key, observers.sync);
267
+ }
268
+ }
269
+ if (listeners !== undefined) {
270
+ let updateListener = add ? addListener : removeListener;
271
+ for (let listener of listeners) {
272
+ updateListener(obj, listener, null, key);
273
+ }
274
+ }
275
+ }
276
+ function applyMixin(obj, mixins, _hideKeys = false) {
277
+ let descs = Object.create(null);
278
+ let values = Object.create(null);
279
+ let meta$1 = meta(obj);
280
+ let keys = [];
281
+ let keysWithSuper = [];
282
+ obj._super = ROOT;
283
+
284
+ // Go through all mixins and hashes passed in, and:
285
+ //
286
+ // * Handle concatenated properties
287
+ // * Handle merged properties
288
+ // * Set up _super wrapping if necessary
289
+ // * Set up computed property descriptors
290
+ // * Copying `toString` in broken browsers
291
+ mergeMixins(mixins, meta$1, descs, values, obj, keys, keysWithSuper);
292
+ for (let key of keys) {
293
+ let value = values[key];
294
+ let desc = descs[key];
295
+ if (value !== undefined) {
296
+ if (typeof value === 'function') {
297
+ updateObserversAndListeners(obj, key, value, true);
298
+ }
299
+ defineValue(obj, key, value, keysWithSuper.indexOf(key) !== -1, !_hideKeys);
300
+ } else if (desc !== undefined) {
301
+ defineDecorator(obj, key, desc, meta$1);
302
+ }
303
+ }
304
+ if (!meta$1.isPrototypeMeta(obj)) {
305
+ revalidateObservers(obj);
306
+ }
307
+ return obj;
308
+ }
309
+
310
+ /**
311
+ @method mixin
312
+ @param obj
313
+ @param mixins*
314
+ @return obj
315
+ @private
316
+ */
317
+ function mixin(obj, ...args) {
318
+ applyMixin(obj, args);
319
+ return obj;
320
+ }
321
+ const MIXINS = new WeakSet();
322
+
323
+ /**
324
+ The `Mixin` class allows you to create mixins, whose properties can be
325
+ added to other classes. For instance,
326
+
327
+ ```javascript
328
+ import Mixin from '@ember/object/mixin';
329
+
330
+ const EditableMixin = Mixin.create({
331
+ edit() {
332
+ console.log('starting to edit');
333
+ this.set('isEditing', true);
334
+ },
335
+ isEditing: false
336
+ });
337
+ ```
338
+
339
+ ```javascript
340
+ import EmberObject from '@ember/object';
341
+ import EditableMixin from '../mixins/editable';
342
+
343
+ // Mix mixins into classes by passing them as the first arguments to
344
+ // `.extend.`
345
+ class Comment extends EmberObject.extend(EditableMixin) {
346
+ post = null
347
+ }
348
+
349
+ let comment = Comment.create({
350
+ post: somePost
351
+ });
352
+
353
+ comment.edit(); // outputs 'starting to edit'
354
+ ```
355
+
356
+ Note that Mixins are created with `Mixin.create`, not
357
+ `Mixin.extend`.
358
+
359
+ Note that mixins extend a constructor's prototype so arrays and object literals
360
+ defined as properties will be shared amongst objects that implement the mixin.
361
+ If you want to define a property in a mixin that is not shared, you can define
362
+ it either as a computed property or have it be created on initialization of the object.
363
+
364
+ ```javascript
365
+ // filters array will be shared amongst any object implementing mixin
366
+ import Mixin from '@ember/object/mixin';
367
+ import { A } from '@ember/array';
368
+
369
+ const FilterableMixin = Mixin.create({
370
+ filters: A()
371
+ });
372
+ ```
373
+
374
+ ```javascript
375
+ import Mixin from '@ember/object/mixin';
376
+ import { A } from '@ember/array';
377
+ import { computed } from '@ember/object';
378
+
379
+ // filters will be a separate array for every object implementing the mixin
380
+ const FilterableMixin = Mixin.create({
381
+ filters: computed(function() {
382
+ return A();
383
+ })
384
+ });
385
+ ```
386
+
387
+ ```javascript
388
+ import Mixin from '@ember/object/mixin';
389
+ import { A } from '@ember/array';
390
+
391
+ // filters will be created as a separate array during the object's initialization
392
+ const Filterable = Mixin.create({
393
+ filters: null,
394
+
395
+ init() {
396
+ this._super(...arguments);
397
+ this.set("filters", A());
398
+ }
399
+ });
400
+ ```
401
+
402
+ @class Mixin
403
+ @public
404
+ */
405
+ class Mixin {
406
+ /** @internal */
407
+
408
+ /** @internal */
409
+ mixins;
410
+
411
+ /** @internal */
412
+ properties;
413
+
414
+ /** @internal */
415
+ ownerConstructor;
416
+
417
+ /** @internal */
418
+ _without;
419
+ /** @internal */
420
+ constructor(mixins, properties) {
421
+ MIXINS.add(this);
422
+ this.properties = extractAccessors(properties);
423
+ this.mixins = buildMixinsArray(mixins);
424
+ this.ownerConstructor = undefined;
425
+ this._without = undefined;
426
+ {
427
+ // Eagerly add INIT_FACTORY to avoid issues in DEBUG as a result of Object.seal(mixin)
428
+ this[INIT_FACTORY] = null;
429
+ if (Mixin._disableDebugSeal !== true) {
430
+ Object.seal(this);
431
+ }
432
+ }
433
+ }
434
+
435
+ /**
436
+ @method create
437
+ @for @ember/object/mixin
438
+ @static
439
+ @param arguments*
440
+ @public
441
+ */
442
+ static create(...args) {
443
+ deprecateUntil(`Using mixins is deprecated. Refactor to composition patterns or class decorators.`, DEPRECATIONS.DEPRECATE_MIXINS);
444
+ return this[INTERNAL_MIXIN_CREATE](...args);
445
+ }
446
+
447
+ /** @internal */
448
+ static [INTERNAL_MIXIN_CREATE](...args) {
449
+ setUnprocessedMixins();
450
+ let M = this;
451
+ return new M(args, undefined);
452
+ }
453
+
454
+ // returns the mixins currently applied to the specified object
455
+ // TODO: Make `mixin`
456
+ /** @internal */
457
+ static mixins(obj) {
458
+ let meta = peekMeta(obj);
459
+ let ret = [];
460
+ if (meta === null) {
461
+ return ret;
462
+ }
463
+ meta.forEachMixins(currentMixin => {
464
+ // skip primitive mixins since these are always anonymous
465
+ if (!currentMixin.properties) {
466
+ ret.push(currentMixin);
467
+ }
468
+ });
469
+ return ret;
470
+ }
471
+
472
+ /**
473
+ @method reopen
474
+ @param arguments*
475
+ @private
476
+ @internal
477
+ */
478
+ reopen(...args) {
479
+ if (args.length === 0) {
480
+ return this;
481
+ }
482
+ if (this.properties) {
483
+ let currentMixin = new Mixin(undefined, this.properties);
484
+ this.properties = undefined;
485
+ this.mixins = [currentMixin];
486
+ } else if (!this.mixins) {
487
+ this.mixins = [];
488
+ }
489
+ this.mixins = this.mixins.concat(buildMixinsArray(args));
490
+ return this;
491
+ }
492
+
493
+ /**
494
+ @method apply
495
+ @param obj
496
+ @return applied object
497
+ @private
498
+ @internal
499
+ */
500
+ apply(obj, _hideKeys = false) {
501
+ // Ember.NativeArray is a normal Ember.Mixin that we mix into `Array.prototype` when prototype extensions are enabled
502
+ // mutating a native object prototype like this should _not_ result in enumerable properties being added (or we have significant
503
+ // issues with things like deep equality checks from test frameworks, or things like jQuery.extend(true, [], [])).
504
+ //
505
+ // _hideKeys disables enumerablity when applying the mixin. This is a hack, and we should stop mutating the array prototype by default 😫
506
+ return applyMixin(obj, [this], _hideKeys);
507
+ }
508
+
509
+ /** @internal */
510
+ applyPartial(obj) {
511
+ return applyMixin(obj, [this]);
512
+ }
513
+
514
+ /**
515
+ @method detect
516
+ @param obj
517
+ @return {Boolean}
518
+ @private
519
+ @internal
520
+ */
521
+ detect(obj) {
522
+ if (typeof obj !== 'object' || obj === null) {
523
+ return false;
524
+ }
525
+ if (MIXINS.has(obj)) {
526
+ return _detect(obj, this);
527
+ }
528
+ let meta = peekMeta(obj);
529
+ if (meta === null) {
530
+ return false;
531
+ }
532
+ return meta.hasMixin(this);
533
+ }
534
+
535
+ /** @internal */
536
+ without(...args) {
537
+ let ret = new Mixin([this]);
538
+ ret._without = args;
539
+ return ret;
540
+ }
541
+
542
+ /** @internal */
543
+ keys() {
544
+ let keys = _keys(this);
545
+ (!(keys) && assert('[BUG] Missing keys for mixin!', keys));
546
+ return keys;
547
+ }
548
+
549
+ /** @internal */
550
+ toString() {
551
+ return '(unknown mixin)';
552
+ }
553
+ }
554
+ {
555
+ Object.defineProperty(Mixin, '_disableDebugSeal', {
556
+ configurable: true,
557
+ enumerable: false,
558
+ writable: true,
559
+ value: false
560
+ });
561
+ }
562
+ function buildMixinsArray(mixins) {
563
+ let length = mixins && mixins.length || 0;
564
+ let m = undefined;
565
+ if (length > 0) {
566
+ m = new Array(length);
567
+ for (let i = 0; i < length; i++) {
568
+ let x = mixins[i];
569
+ (!(typeof x === 'object' && x !== null && Object.prototype.toString.call(x) !== '[object Array]') && assert(`Expected hash or Mixin instance, got ${Object.prototype.toString.call(x)}`, typeof x === 'object' && x !== null && Object.prototype.toString.call(x) !== '[object Array]'));
570
+ if (MIXINS.has(x)) {
571
+ m[i] = x;
572
+ } else {
573
+ m[i] = new Mixin(undefined, x);
574
+ }
575
+ }
576
+ }
577
+ return m;
578
+ }
579
+ {
580
+ Object.seal(Mixin.prototype);
581
+ }
582
+ function _detect(curMixin, targetMixin, seen = new Set()) {
583
+ if (seen.has(curMixin)) {
584
+ return false;
585
+ }
586
+ seen.add(curMixin);
587
+ if (curMixin === targetMixin) {
588
+ return true;
589
+ }
590
+ let mixins = curMixin.mixins;
591
+ if (mixins) {
592
+ return mixins.some(mixin => _detect(mixin, targetMixin, seen));
593
+ }
594
+ return false;
595
+ }
596
+ function _keys(mixin, ret = new Set(), seen = new Set()) {
597
+ if (seen.has(mixin)) {
598
+ return;
599
+ }
600
+ seen.add(mixin);
601
+ if (mixin.properties) {
602
+ let props = Object.keys(mixin.properties);
603
+ for (let prop of props) {
604
+ ret.add(prop);
605
+ }
606
+ } else if (mixin.mixins) {
607
+ mixin.mixins.forEach(x => _keys(x, ret, seen));
608
+ }
609
+ return ret;
610
+ }
611
+
612
+ export { INTERNAL_MIXIN_CREATE as I, Mixin as M, applyMixin as a, mixin as m };
@@ -131,4 +131,4 @@ function tryIsNamespace(lookup, prop) {
131
131
  }
132
132
  }
133
133
 
134
- export { NAMESPACES as N, NAMESPACES_BY_ID as a, addNamespace as b, findNamespaces as c, processNamespace as d, setSearchDisabled as e, findNamespace as f, isSearchDisabled as i, processAllNamespaces as p, removeNamespace as r, setUnprocessedMixins as s };
134
+ export { NAMESPACES as N, NAMESPACES_BY_ID as a, addNamespace as b, findNamespaces as c, processNamespace as d, setUnprocessedMixins as e, findNamespace as f, isSearchDisabled as i, processAllNamespaces as p, removeNamespace as r, setSearchDisabled as s };
@@ -1,6 +1,6 @@
1
1
  import { toBool } from '../@glimmer/global-context/index.js';
2
- import { c as createComputeRef, v as valueForRef } from './reference-BqOLhKFy.js';
3
- import { i as internalHelper } from './hash-BFu91gtE.js';
2
+ import { c as createComputeRef, v as valueForRef } from './reference-De0V3Vxp.js';
3
+ import { i as internalHelper } from './hash-D1O4fZ99.js';
4
4
 
5
5
  /**
6
6
  * Performs a strict equality comparison.
@@ -3,8 +3,8 @@ import { peekMeta } from '../@ember/-internals/meta/lib/meta.js';
3
3
  import { registerDestructor } from '../@glimmer/destroyable/index.js';
4
4
  import { a as valueForTag, v as validateTag, k as CURRENT_TAG } from './cache-DGDPVCpC.js';
5
5
  import { a as tagMetaFor } from './meta-BqC7f9Ia.js';
6
- import { g as getChainTagsForKey } from './chain-tags-uWSImHzB.js';
7
- import { a as addListener, r as removeListener, s as sendEvent } from './events-6aFVjD4k.js';
6
+ import { g as getChainTagsForKey } from './chain-tags-uYrtCZq1.js';
7
+ import { a as addListener, r as removeListener, s as sendEvent } from './events-e_Do73jh.js';
8
8
 
9
9
  const AFTER_OBSERVERS = ':change';
10
10
  function changeEvent(keyName) {
@@ -1,7 +1,7 @@
1
- import { g as buildUntouchableThis, h as check, e as reifyNamed } from './arguments-DniR8eF2.js';
1
+ import { g as buildUntouchableThis, h as check, e as reifyNamed } from './arguments-LEaMCStR.js';
2
2
  import { registerDestructor } from '../@glimmer/destroyable/index.js';
3
- import { k as setInternalModifierManager } from './api-DuLOZMO_.js';
4
- import { v as valueForRef } from './reference-BqOLhKFy.js';
3
+ import { k as setInternalModifierManager } from './api-PyzZqscb.js';
4
+ import { v as valueForRef } from './reference-De0V3Vxp.js';
5
5
  import { b as createUpdatableTag } from './cache-DGDPVCpC.js';
6
6
 
7
7
  const untouchableContext = buildUntouchableThis('`on` modifier');
@@ -1,9 +1,9 @@
1
1
  import '../@ember/debug/index.js';
2
2
  import { _instrumentStart } from '../@ember/instrumentation/index.js';
3
3
  import { c as capabilityFlagsFrom } from './capabilities-CajW4QjE.js';
4
- import { v as valueForRef, U as UNDEFINED_REFERENCE } from './reference-BqOLhKFy.js';
5
- import { E as EMPTY_ARGS } from './arguments-DniR8eF2.js';
6
- import { u as unwrapTemplate } from './curly-BCD_vyHq.js';
4
+ import { v as valueForRef, U as UNDEFINED_REFERENCE } from './reference-De0V3Vxp.js';
5
+ import { E as EMPTY_ARGS } from './arguments-LEaMCStR.js';
6
+ import { u as unwrapTemplate } from './curly-DbGgDeux.js';
7
7
  import { t as templateFactory } from './index-BYUSIu_W.js';
8
8
  import { assert } from '../@ember/debug/lib/assert.js';
9
9
 
@@ -3,7 +3,7 @@ import { t as toString } from './to-string-C7M8LBLH.js';
3
3
  import '../@ember/debug/index.js';
4
4
  import { C as COMPUTED_SETTERS } from './decorator-B5Uh5NFI.js';
5
5
  import { i as isPath, _ as _getPath, a as getPossibleMandatoryProxyValue } from './property_get-DXwpgTe7.js';
6
- import { n as notifyPropertyChange } from './computed-DGxbeUbf.js';
6
+ import { n as notifyPropertyChange } from './computed-CXIM4Sjc.js';
7
7
  import { assert } from '../@ember/debug/lib/assert.js';
8
8
 
9
9
  /**
@@ -1,4 +1,5 @@
1
1
  import { e as expect, i as isDict } from './collections-DPkjqeA3.js';
2
+ import { D as DESTROYABLE_META_KEY } from './destroyable-key-BsfVBM7f.js';
2
3
  import { setProp, getProp } from '../@glimmer/global-context/index.js';
3
4
  import { C as CONSTANT_TAG, I as INITIAL, v as validateTag, t as track, a as valueForTag, c as consumeTag } from './cache-DGDPVCpC.js';
4
5
 
@@ -11,6 +12,7 @@ const INVOKABLE = 3;
11
12
  //////////
12
13
 
13
14
  class ReferenceImpl {
15
+ [DESTROYABLE_META_KEY];
14
16
  [REFERENCE];
15
17
  tag = null;
16
18
  lastRevision = INITIAL;
@@ -1,4 +1,4 @@
1
- import { N as NewTreeBuilder, R as RemoteBlock, C as COMMENT_NODE, T as TEXT_NODE, E as ELEMENT_NODE, e as NS_SVG } from './api-Dz70AUL_.js';
1
+ import { N as NewTreeBuilder, R as RemoteBlock, C as COMMENT_NODE, T as TEXT_NODE, E as ELEMENT_NODE, e as NS_SVG } from './api-CK8FxDZV.js';
2
2
  import { c as castToSimple, a as castToBrowser } from './simple-cast-DCvJLSin.js';
3
3
  import { e as expect } from './collections-DPkjqeA3.js';
4
4
  import { a as assert } from './assert-Zqc4wiAV.js';