ember-source 7.1.0-alpha.3 → 7.1.0-alpha.5

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 (484) hide show
  1. package/build-metadata.json +3 -3
  2. package/dist/dev/packages/@ember/-internals/container/index.js +4 -401
  3. package/dist/dev/packages/@ember/-internals/deprecations/index.js +1 -1
  4. package/dist/dev/packages/@ember/-internals/environment/index.js +3 -151
  5. package/dist/dev/packages/@ember/-internals/glimmer/index.js +14 -15
  6. package/dist/dev/packages/@ember/-internals/meta/lib/meta.js +0 -1
  7. package/dist/dev/packages/@ember/-internals/metal/index.js +18 -9
  8. package/dist/dev/packages/@ember/-internals/routing/index.js +1 -10
  9. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +10 -12
  10. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +1 -10
  11. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -10
  12. package/dist/dev/packages/@ember/-internals/string/index.js +0 -1
  13. package/dist/dev/packages/@ember/-internals/utils/index.js +8 -3
  14. package/dist/dev/packages/@ember/-internals/views/lib/compat/fallback-view-registry.js +0 -1
  15. package/dist/dev/packages/@ember/-internals/views/lib/mixins/action_support.js +3 -12
  16. package/dist/dev/packages/@ember/-internals/views/lib/system/event_dispatcher.js +2 -11
  17. package/dist/dev/packages/@ember/-internals/views/lib/system/utils.js +1 -1
  18. package/dist/dev/packages/@ember/-internals/views/lib/views/core_view.js +1 -18
  19. package/dist/dev/packages/@ember/-internals/views/lib/views/states.js +1 -1
  20. package/dist/dev/packages/@ember/application/index.js +5 -28
  21. package/dist/dev/packages/@ember/application/instance.js +3 -22
  22. package/dist/dev/packages/@ember/application/namespace.js +4 -11
  23. package/dist/dev/packages/@ember/array/index.js +7 -15
  24. package/dist/dev/packages/@ember/array/proxy.js +10 -14
  25. package/dist/dev/packages/@ember/canary-features/index.js +1 -1
  26. package/dist/dev/packages/@ember/component/helper.js +1 -14
  27. package/dist/dev/packages/@ember/component/index.js +1355 -16
  28. package/dist/dev/packages/@ember/component/template-only.js +1 -9
  29. package/dist/dev/packages/@ember/controller/index.js +3 -19
  30. package/dist/dev/packages/@ember/debug/container-debug-adapter.js +0 -19
  31. package/dist/dev/packages/@ember/debug/data-adapter.js +4 -11
  32. package/dist/dev/packages/@ember/debug/index.js +2 -1
  33. package/dist/dev/packages/@ember/debug/lib/deprecate.js +1 -1
  34. package/dist/dev/packages/@ember/engine/index.js +3 -29
  35. package/dist/dev/packages/@ember/engine/instance.js +3 -8
  36. package/dist/dev/packages/@ember/helper/index.js +211 -19
  37. package/dist/dev/packages/@ember/instrumentation/index.js +1 -1
  38. package/dist/dev/packages/@ember/modifier/index.js +2 -16
  39. package/dist/dev/packages/@ember/modifier/on.js +1 -9
  40. package/dist/dev/packages/@ember/object/-internals.js +3 -11
  41. package/dist/dev/packages/@ember/object/compat.js +3 -10
  42. package/dist/dev/packages/@ember/object/computed.js +2 -12
  43. package/dist/dev/packages/@ember/object/core.js +10 -18
  44. package/dist/dev/packages/@ember/object/evented.js +2 -12
  45. package/dist/dev/packages/@ember/object/events.js +1 -11
  46. package/dist/dev/packages/@ember/object/index.js +10 -14
  47. package/dist/dev/packages/@ember/object/internals.js +1 -1
  48. package/dist/dev/packages/@ember/object/lib/computed/computed_macros.js +6 -23
  49. package/dist/dev/packages/@ember/object/lib/computed/reduce_computed_macros.js +3 -12
  50. package/dist/dev/packages/@ember/object/mixin.js +7 -10
  51. package/dist/dev/packages/@ember/object/observable.js +8 -12
  52. package/dist/dev/packages/@ember/object/observers.js +1 -11
  53. package/dist/dev/packages/@ember/object/promise-proxy-mixin.js +3 -13
  54. package/dist/dev/packages/@ember/object/proxy.js +0 -7
  55. package/dist/dev/packages/@ember/reactive/collections.js +589 -1
  56. package/dist/dev/packages/@ember/renderer/index.js +1 -14
  57. package/dist/dev/packages/@ember/routing/-internals.js +1 -10
  58. package/dist/dev/packages/@ember/routing/index.js +614 -14
  59. package/dist/dev/packages/@ember/routing/lib/generate_controller.js +2 -11
  60. package/dist/dev/packages/@ember/routing/lib/routing-service.js +7 -17
  61. package/dist/dev/packages/@ember/routing/lib/utils.js +2 -11
  62. package/dist/dev/packages/@ember/routing/route.js +12 -23
  63. package/dist/dev/packages/@ember/routing/router-service.js +8 -17
  64. package/dist/dev/packages/@ember/routing/router.js +5 -21
  65. package/dist/dev/packages/@ember/runloop/index.js +1 -10
  66. package/dist/dev/packages/@ember/service/index.js +1 -11
  67. package/dist/dev/packages/@ember/template/index.js +1 -14
  68. package/dist/dev/packages/@ember/template-compiler/lib/compile-options.js +14 -15
  69. package/dist/dev/packages/@ember/template-compiler/lib/dasherize-component-name.js +0 -1
  70. package/dist/dev/packages/@ember/template-compiler/lib/plugins/auto-import-builtins.js +13 -42
  71. package/dist/dev/packages/@ember/template-compiler/lib/plugins/index.js +1 -1
  72. package/dist/dev/packages/@ember/template-compiler/lib/plugins/transform-resolutions.js +1 -3
  73. package/dist/dev/packages/@ember/template-compiler/lib/template.js +2 -10
  74. package/dist/dev/packages/@ember/template-factory/index.js +1 -8
  75. package/dist/dev/packages/@ember/utils/lib/compare.js +0 -7
  76. package/dist/dev/packages/@ember/utils/lib/is_empty.js +1 -12
  77. package/dist/dev/packages/@glimmer/manager/index.js +4 -314
  78. package/dist/dev/packages/@glimmer/node/index.js +3 -11
  79. package/dist/dev/packages/@glimmer/opcode-compiler/index.js +5 -7
  80. package/dist/dev/packages/@glimmer/program/index.js +194 -3
  81. package/dist/dev/packages/@glimmer/reference/index.js +4 -5
  82. package/dist/dev/packages/@glimmer/runtime/index.js +17 -10
  83. package/dist/dev/packages/@glimmer/tracking/index.js +2 -11
  84. package/dist/dev/packages/@glimmer/tracking/primitives/cache/index.js +1 -11
  85. package/dist/dev/packages/@glimmer/util/index.js +1 -2
  86. package/dist/dev/packages/@glimmer/validator/index.js +4 -1253
  87. package/dist/dev/packages/@glimmer/vm/index.js +1 -1
  88. package/dist/dev/packages/@glimmer/wire-format/index.js +3 -65
  89. package/dist/dev/packages/ember/version.js +1 -1
  90. package/dist/dev/packages/ember-template-compiler/index.js +7 -7
  91. package/dist/dev/packages/shared-chunks/{alias-CSC0WIbj.js → alias-ZcMQckQV.js} +8 -4
  92. package/dist/dev/packages/shared-chunks/api-AYt3zE12.js +310 -0
  93. package/dist/dev/packages/shared-chunks/{api-BqXkkT0p.js → api-WvJPuo9z.js} +4 -5
  94. package/dist/dev/packages/shared-chunks/{args-proxy-DgXMc9b5.js → args-proxy-BNLuRFlO.js} +2 -4
  95. package/dist/dev/packages/shared-chunks/{array-D8PfjQHi.js → array-Bh_kUjzy.js} +2 -1
  96. package/dist/dev/packages/shared-chunks/cache-B7dqAS38.js +596 -0
  97. package/dist/dev/packages/shared-chunks/{capabilities-O_xc7Yqk.js → capabilities-CZkuOqqC.js} +0 -5
  98. package/dist/dev/packages/shared-chunks/chain-tags-D6tuFUj_.js +190 -0
  99. package/dist/dev/packages/shared-chunks/{collections-D_nY_0UJ.js → collections-DPkjqeA3.js} +0 -1
  100. package/dist/dev/packages/shared-chunks/{compiler-D1leQ3Gl.js → compiler-CXB_8GdR.js} +7043 -234
  101. package/dist/dev/packages/shared-chunks/computed-CJnghmXC.js +980 -0
  102. package/dist/dev/packages/shared-chunks/container-BzzHmCNj.js +404 -0
  103. package/dist/dev/packages/shared-chunks/curly-CvC8E_4-.js +617 -0
  104. package/dist/dev/packages/shared-chunks/{fragment-Cc5k9Oy4.js → curried-BVwSNqpf.js} +5 -288
  105. package/dist/dev/packages/shared-chunks/decorator-B5Uh5NFI.js +135 -0
  106. package/dist/dev/packages/shared-chunks/element-C-QcIABg.js +109 -0
  107. package/dist/dev/packages/shared-chunks/element-builder-kHVx0F__.js +812 -0
  108. package/dist/dev/packages/shared-chunks/env-g-kaAFLN.js +161 -0
  109. package/dist/dev/packages/shared-chunks/events-6aFVjD4k.js +180 -0
  110. package/dist/dev/packages/shared-chunks/get-CpJjYeJO.js +138 -0
  111. package/dist/dev/packages/shared-chunks/get-debug-name-CSniHBsn.js +45 -0
  112. package/dist/dev/packages/shared-chunks/get_properties-CIm8IAtP.js +55 -0
  113. package/dist/dev/packages/shared-chunks/guid-Cbq2sNV_.js +123 -0
  114. package/dist/dev/packages/shared-chunks/hash-D3BENmhU.js +192 -0
  115. package/dist/dev/packages/shared-chunks/helper-DlC4YesW.js +314 -0
  116. package/dist/dev/packages/shared-chunks/index-CTxkmV78.js +2500 -0
  117. package/dist/dev/packages/shared-chunks/index-D-xTBV4B.js +220 -0
  118. package/dist/dev/packages/shared-chunks/{index-BUPd6pkm.js → index-DmGmwWPJ.js} +29 -29
  119. package/dist/dev/packages/shared-chunks/injected_property-B4T-FzZZ.js +70 -0
  120. package/dist/dev/packages/shared-chunks/intern-zquhAEIg.js +51 -0
  121. package/dist/dev/packages/shared-chunks/internal-CbQSKXEm.js +140 -0
  122. package/dist/dev/packages/shared-chunks/internal-helper-Dsl9_7H_.js +7 -0
  123. package/dist/dev/packages/shared-chunks/{invoke-CgfoEtMT.js → invoke-B6j6DdDz.js} +3 -7
  124. package/dist/{prod/packages/shared-chunks/is_proxy-Cr1qlMv_.js → dev/packages/shared-chunks/is_proxy-Bzg0d4m4.js} +1 -1
  125. package/dist/dev/packages/shared-chunks/libraries-CHBwbR72.js +79 -0
  126. package/dist/dev/packages/shared-chunks/mandatory-setter-BpbAMTzV.js +107 -0
  127. package/dist/dev/packages/shared-chunks/meta-BmRXesrk.js +46 -0
  128. package/dist/{prod/packages/shared-chunks/name-C68GLLO3.js → dev/packages/shared-chunks/name-Clp4Vsod.js} +1 -1
  129. package/dist/dev/packages/shared-chunks/{namespace_search-uT8odThF.js → namespace_search-BfvzEQzN.js} +1 -2
  130. package/dist/dev/packages/shared-chunks/normalize-CKySQVU7.js +84 -0
  131. package/dist/dev/packages/shared-chunks/observers-C2DurkLG.js +199 -0
  132. package/dist/dev/packages/shared-chunks/on-D8QwT-eN.js +253 -0
  133. package/dist/dev/packages/shared-chunks/opcode-metadata-9iSW5JGP.js +285 -0
  134. package/dist/dev/packages/shared-chunks/opcodes-CplRyHl_.js +50 -0
  135. package/dist/dev/packages/shared-chunks/or-DBU9Ge4r.js +118 -0
  136. package/dist/{prod/packages/shared-chunks/program-B7SJZ5NF.js → dev/packages/shared-chunks/program-DzAfcWFj.js} +1 -1
  137. package/dist/dev/packages/shared-chunks/{program-context-sJz0oHOA.js → program-context-CqcQMsfa.js} +3 -3
  138. package/dist/dev/packages/shared-chunks/property_get-CIBS9umw.js +139 -0
  139. package/dist/dev/packages/shared-chunks/{property_set-DaoZXGM5.js → property_set-D3PKyisF.js} +4 -2
  140. package/dist/dev/packages/shared-chunks/props-fiqxqhAH.js +85 -0
  141. package/dist/dev/packages/shared-chunks/{reference-C3TKDRnP.js → reference-BoPB2LfI.js} +3 -4
  142. package/dist/dev/packages/shared-chunks/{registers-ylirb0dq.js → registers-DoamZwaG.js} +1 -1
  143. package/dist/{prod/packages/shared-chunks/rehydrate-builder-CUefZL4I.js → dev/packages/shared-chunks/rehydrate-builder-DdzXTaJk.js} +7 -4
  144. package/dist/dev/packages/shared-chunks/{render-C1HzKUcM.js → render-DDdabL30.js} +510 -15
  145. package/dist/{prod/packages/shared-chunks/serialize-builder-DgpXSc2Q.js → dev/packages/shared-chunks/serialize-builder-B3u9Wr3n.js} +2 -7
  146. package/dist/dev/packages/shared-chunks/set_properties-BghuuGJx.js +48 -0
  147. package/dist/dev/packages/shared-chunks/{setup-registry-B7-RknRf.js → setup-registry-XxD0xvgf.js} +34 -14
  148. package/dist/dev/packages/shared-chunks/spec-BXl1reqK.js +16 -0
  149. package/dist/dev/packages/shared-chunks/super-BBBjgF69.js +91 -0
  150. package/dist/dev/packages/shared-chunks/template-BRrQR6KS.js +16 -0
  151. package/dist/dev/packages/shared-chunks/template-only-Yluyu0DY.js +78 -0
  152. package/dist/dev/packages/shared-chunks/textarea-C0Us0PNJ.js +468 -0
  153. package/dist/dev/packages/shared-chunks/tracked-CKE4wnE6.js +148 -0
  154. package/dist/dev/packages/shared-chunks/tracked-data-CGnA4ytZ.js +31 -0
  155. package/dist/dev/packages/shared-chunks/transform-resolutions-h1ik8gqW.js +645 -0
  156. package/dist/dev/packages/shared-chunks/unique-id-A83bjEE-.js +32 -0
  157. package/dist/{prod/packages/shared-chunks/on-CLxdmpmk.js → dev/packages/shared-chunks/untouchable-this-cH6_N2LJ.js} +215 -1397
  158. package/dist/dev/packages/shared-chunks/well-known-_EVO9RaV.js +17 -0
  159. package/dist/prod/packages/@ember/-internals/container/index.js +5 -315
  160. package/dist/prod/packages/@ember/-internals/deprecations/index.js +1 -1
  161. package/dist/prod/packages/@ember/-internals/environment/index.js +3 -148
  162. package/dist/prod/packages/@ember/-internals/glimmer/index.js +14 -13
  163. package/dist/prod/packages/@ember/-internals/meta/lib/meta.js +1 -2
  164. package/dist/prod/packages/@ember/-internals/metal/index.js +19 -13
  165. package/dist/prod/packages/@ember/-internals/routing/index.js +2 -6
  166. package/dist/prod/packages/@ember/-internals/runtime/lib/ext/rsvp.js +1 -1
  167. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +10 -10
  168. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +2 -6
  169. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/registry_proxy.js +1 -1
  170. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -6
  171. package/dist/prod/packages/@ember/-internals/string/index.js +0 -2
  172. package/dist/prod/packages/@ember/-internals/utils/index.js +33 -30
  173. package/dist/prod/packages/@ember/-internals/views/lib/compat/fallback-view-registry.js +0 -2
  174. package/dist/prod/packages/@ember/-internals/views/lib/mixins/action_support.js +2 -6
  175. package/dist/prod/packages/@ember/-internals/views/lib/system/event_dispatcher.js +3 -7
  176. package/dist/prod/packages/@ember/-internals/views/lib/system/utils.js +2 -2
  177. package/dist/prod/packages/@ember/-internals/views/lib/views/core_view.js +1 -14
  178. package/dist/prod/packages/@ember/-internals/views/lib/views/states.js +1 -2
  179. package/dist/prod/packages/@ember/application/index.js +5 -24
  180. package/dist/prod/packages/@ember/application/instance.js +6 -18
  181. package/dist/prod/packages/@ember/application/namespace.js +5 -8
  182. package/dist/prod/packages/@ember/array/index.js +8 -12
  183. package/dist/prod/packages/@ember/array/proxy.js +10 -10
  184. package/dist/prod/packages/@ember/canary-features/index.js +1 -1
  185. package/dist/prod/packages/@ember/component/helper.js +1 -12
  186. package/dist/prod/packages/@ember/component/index.js +1292 -15
  187. package/dist/prod/packages/@ember/component/template-only.js +1 -6
  188. package/dist/prod/packages/@ember/controller/index.js +3 -16
  189. package/dist/prod/packages/@ember/debug/container-debug-adapter.js +1 -15
  190. package/dist/prod/packages/@ember/debug/data-adapter.js +5 -7
  191. package/dist/prod/packages/@ember/debug/index.js +1 -0
  192. package/dist/prod/packages/@ember/debug/lib/deprecate.js +1 -1
  193. package/dist/prod/packages/@ember/engine/index.js +4 -25
  194. package/dist/prod/packages/@ember/engine/instance.js +4 -9
  195. package/dist/prod/packages/@ember/helper/index.js +211 -17
  196. package/dist/prod/packages/@ember/instrumentation/index.js +1 -1
  197. package/dist/prod/packages/@ember/modifier/index.js +2 -14
  198. package/dist/prod/packages/@ember/modifier/on.js +1 -6
  199. package/dist/prod/packages/@ember/object/-internals.js +3 -6
  200. package/dist/prod/packages/@ember/object/compat.js +4 -7
  201. package/dist/prod/packages/@ember/object/computed.js +2 -8
  202. package/dist/prod/packages/@ember/object/core.js +9 -15
  203. package/dist/prod/packages/@ember/object/evented.js +2 -7
  204. package/dist/prod/packages/@ember/object/events.js +1 -6
  205. package/dist/prod/packages/@ember/object/index.js +10 -12
  206. package/dist/prod/packages/@ember/object/internals.js +3 -6
  207. package/dist/prod/packages/@ember/object/lib/computed/computed_macros.js +6 -20
  208. package/dist/prod/packages/@ember/object/lib/computed/reduce_computed_macros.js +3 -9
  209. package/dist/prod/packages/@ember/object/mixin.js +7 -9
  210. package/dist/prod/packages/@ember/object/observable.js +8 -9
  211. package/dist/prod/packages/@ember/object/observers.js +1 -6
  212. package/dist/prod/packages/@ember/object/promise-proxy-mixin.js +3 -9
  213. package/dist/prod/packages/@ember/object/proxy.js +0 -7
  214. package/dist/prod/packages/@ember/reactive/collections.js +589 -1
  215. package/dist/prod/packages/@ember/renderer/index.js +1 -12
  216. package/dist/prod/packages/@ember/routing/history-location.js +1 -1
  217. package/dist/prod/packages/@ember/routing/index.js +581 -12
  218. package/dist/prod/packages/@ember/routing/lib/dsl.js +1 -1
  219. package/dist/prod/packages/@ember/routing/lib/generate_controller.js +2 -6
  220. package/dist/prod/packages/@ember/routing/lib/routing-service.js +5 -14
  221. package/dist/prod/packages/@ember/routing/lib/utils.js +2 -6
  222. package/dist/prod/packages/@ember/routing/none-location.js +1 -1
  223. package/dist/prod/packages/@ember/routing/route.js +12 -21
  224. package/dist/prod/packages/@ember/routing/router-service.js +6 -14
  225. package/dist/prod/packages/@ember/routing/router.js +5 -17
  226. package/dist/prod/packages/@ember/runloop/index.js +2 -6
  227. package/dist/prod/packages/@ember/service/index.js +1 -7
  228. package/dist/prod/packages/@ember/template/index.js +1 -12
  229. package/dist/prod/packages/@ember/template-compiler/lib/compile-options.js +15 -14
  230. package/dist/prod/packages/@ember/template-compiler/lib/dasherize-component-name.js +0 -2
  231. package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-against-attrs.js +1 -1
  232. package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-against-named-outlets.js +1 -1
  233. package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-input-helper-without-block.js +1 -1
  234. package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-reserved-named-arguments.js +1 -1
  235. package/dist/prod/packages/@ember/template-compiler/lib/plugins/auto-import-builtins.js +13 -42
  236. package/dist/prod/packages/@ember/template-compiler/lib/plugins/index.js +1 -1
  237. package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-each-track-array.js +1 -1
  238. package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-in-element.js +1 -1
  239. package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-resolutions.js +127 -4
  240. package/dist/prod/packages/@ember/template-compiler/lib/template.js +2 -7
  241. package/dist/prod/packages/@ember/template-factory/index.js +1 -5
  242. package/dist/prod/packages/@ember/utils/lib/compare.js +1 -8
  243. package/dist/prod/packages/@ember/utils/lib/is_empty.js +1 -7
  244. package/dist/prod/packages/@glimmer/manager/index.js +4 -292
  245. package/dist/prod/packages/@glimmer/node/index.js +3 -8
  246. package/dist/prod/packages/@glimmer/opcode-compiler/index.js +5 -5
  247. package/dist/prod/packages/@glimmer/program/index.js +194 -3
  248. package/dist/prod/packages/@glimmer/reference/index.js +4 -4
  249. package/dist/prod/packages/@glimmer/runtime/index.js +16 -8
  250. package/dist/prod/packages/@glimmer/tracking/index.js +2 -7
  251. package/dist/prod/packages/@glimmer/tracking/primitives/cache/index.js +1 -6
  252. package/dist/prod/packages/@glimmer/util/index.js +2 -2
  253. package/dist/prod/packages/@glimmer/validator/index.js +5 -1016
  254. package/dist/prod/packages/@glimmer/vm/index.js +1 -1
  255. package/dist/prod/packages/@glimmer/wire-format/index.js +3 -65
  256. package/dist/prod/packages/ember/version.js +1 -1
  257. package/dist/prod/packages/ember-template-compiler/index.js +5 -7
  258. package/dist/prod/packages/shared-chunks/{alias-BLBQkche.js → alias-CLuFeKoV.js} +8 -6
  259. package/dist/prod/packages/shared-chunks/api-CM1trl_4.js +289 -0
  260. package/dist/prod/packages/shared-chunks/{api-DtWa0ZaF.js → api-zh_k31vb.js} +4 -5
  261. package/dist/prod/packages/shared-chunks/{args-proxy-Dl0A0YWI.js → args-proxy-BDXbXCF9.js} +2 -2
  262. package/dist/prod/packages/shared-chunks/{array-kVQfzrQn.js → array-DHdr4__s.js} +3 -3
  263. package/dist/prod/packages/shared-chunks/assert-CUCJBR2C.js +19 -0
  264. package/dist/prod/packages/shared-chunks/cache-BIlOoPA7.js +371 -0
  265. package/dist/prod/packages/shared-chunks/{capabilities-DXA-L0iT.js → capabilities-_5e35539.js} +0 -3
  266. package/dist/prod/packages/shared-chunks/chain-tags-BJqcuCM1.js +179 -0
  267. package/dist/prod/packages/shared-chunks/{compiler-Bbki2GT_.js → compiler-DjQtTQGk.js} +7045 -193
  268. package/dist/prod/packages/shared-chunks/{namespace_search-Dcdalhj6.js → computed-2Udcmflw.js} +109 -239
  269. package/dist/prod/packages/shared-chunks/container-D5NwW5Fd.js +316 -0
  270. package/dist/prod/packages/shared-chunks/curly-BsqvV8G0.js +546 -0
  271. package/dist/prod/packages/shared-chunks/{fragment-D7nBU9ae.js → curried-BVwSNqpf.js} +6 -303
  272. package/dist/prod/packages/shared-chunks/debug-render-tree-BLtnOSbb.js +2049 -0
  273. package/dist/prod/packages/shared-chunks/{decorator-BdDDBUd2.js → decorator-DBCISop4.js} +1 -1
  274. package/dist/prod/packages/shared-chunks/element-BjFr0tO0.js +101 -0
  275. package/dist/prod/packages/shared-chunks/{element-builder-BmLF0C-1.js → element-builder-BPjq0rxK.js} +109 -88
  276. package/dist/prod/packages/shared-chunks/env-DXxsTFkM.js +158 -0
  277. package/dist/prod/packages/shared-chunks/events-970OxD6Q.js +175 -0
  278. package/dist/prod/packages/shared-chunks/get-D5wxdTkY.js +138 -0
  279. package/dist/prod/packages/shared-chunks/get_properties-BcAC5sGx.js +55 -0
  280. package/dist/prod/packages/shared-chunks/guid-Cbq2sNV_.js +123 -0
  281. package/dist/prod/packages/shared-chunks/hash-DcUe-meU.js +192 -0
  282. package/dist/prod/packages/shared-chunks/helper-Da672z4a.js +299 -0
  283. package/dist/prod/packages/shared-chunks/{index-CjaDF9kC.js → index--2U-v2nf.js} +18 -10
  284. package/dist/prod/packages/shared-chunks/index-D-xTBV4B.js +220 -0
  285. package/dist/prod/packages/shared-chunks/index-D87qoERP.js +2322 -0
  286. package/dist/prod/packages/shared-chunks/{injected_property-CTVs5FPh.js → injected_property-D9B-fPiH.js} +3 -3
  287. package/dist/prod/packages/shared-chunks/intern-zquhAEIg.js +51 -0
  288. package/dist/prod/packages/shared-chunks/internal-DidurjJB.js +137 -0
  289. package/dist/prod/packages/shared-chunks/internal-helper-DIbr1RgC.js +7 -0
  290. package/dist/prod/packages/shared-chunks/{invoke-BdJCXD-b.js → invoke-Dr_CRwA_.js} +3 -5
  291. package/dist/{dev/packages/shared-chunks/is_proxy-B0smdQy8.js → prod/packages/shared-chunks/is_proxy-Bzg0d4m4.js} +1 -1
  292. package/dist/prod/packages/shared-chunks/libraries-DaXpIDYN.js +60 -0
  293. package/dist/prod/packages/shared-chunks/meta-B9mldqPL.js +36 -0
  294. package/dist/{dev/packages/shared-chunks/name-Z7dpqvzn.js → prod/packages/shared-chunks/name-Clp4Vsod.js} +1 -1
  295. package/dist/prod/packages/shared-chunks/namespace_search-BfvzEQzN.js +134 -0
  296. package/dist/prod/packages/shared-chunks/normalize-D9jDJVGg.js +84 -0
  297. package/dist/prod/packages/shared-chunks/observers-Co4JALkS.js +199 -0
  298. package/dist/prod/packages/shared-chunks/on-C3ZQiUUD.js +228 -0
  299. package/dist/prod/packages/shared-chunks/opcode-metadata-9iSW5JGP.js +285 -0
  300. package/dist/prod/packages/shared-chunks/opcodes-CplRyHl_.js +50 -0
  301. package/dist/prod/packages/shared-chunks/or-oTVMuHc8.js +91 -0
  302. package/dist/{dev/packages/shared-chunks/program-DfV0v8aa.js → prod/packages/shared-chunks/program-B7CWdS8W.js} +1 -2
  303. package/dist/prod/packages/shared-chunks/{program-context-DFiwaPMR.js → program-context-CGMN-aQM.js} +3 -3
  304. package/dist/prod/packages/shared-chunks/property_get-hWJ0nGhW.js +122 -0
  305. package/dist/prod/packages/shared-chunks/{property_set-B2sZxeCw.js → property_set-Dj5-ScWk.js} +4 -5
  306. package/dist/prod/packages/shared-chunks/props-fiqxqhAH.js +85 -0
  307. package/dist/prod/packages/shared-chunks/{reference-BNqcwZWH.js → reference-BshxG6wn.js} +3 -3
  308. package/dist/prod/packages/shared-chunks/{registers-ylirb0dq.js → registers-DoamZwaG.js} +1 -1
  309. package/dist/{dev/packages/shared-chunks/rehydrate-builder-CEk2KOIk.js → prod/packages/shared-chunks/rehydrate-builder-BKg2X6Lo.js} +7 -7
  310. package/dist/prod/packages/shared-chunks/{render-BlriW61t.js → render-nx5-PsDW.js} +487 -12
  311. package/dist/{dev/packages/shared-chunks/serialize-builder-CPKxdfiH.js → prod/packages/shared-chunks/serialize-builder-BGbC30SN.js} +2 -10
  312. package/dist/prod/packages/shared-chunks/set_properties-oPyURk67.js +48 -0
  313. package/dist/prod/packages/shared-chunks/{setup-registry-DeObnZ2Z.js → setup-registry-TiaKLj5k.js} +35 -13
  314. package/dist/prod/packages/shared-chunks/spec-BXl1reqK.js +16 -0
  315. package/dist/prod/packages/shared-chunks/super-BBBjgF69.js +91 -0
  316. package/dist/prod/packages/shared-chunks/template-BRrQR6KS.js +16 -0
  317. package/dist/prod/packages/shared-chunks/template-only-BtLl0uH0.js +78 -0
  318. package/dist/prod/packages/shared-chunks/textarea-CPKZ1c_O.js +455 -0
  319. package/dist/prod/packages/shared-chunks/{tracked-Cl5l4v8b.js → tracked-CffAABMz.js} +6 -4
  320. package/dist/prod/packages/shared-chunks/tracked-data-C83f5V5S.js +31 -0
  321. package/dist/prod/packages/shared-chunks/unique-id-CfHImDRV.js +32 -0
  322. package/dist/prod/packages/shared-chunks/well-known-_EVO9RaV.js +17 -0
  323. package/docs/data.json +1368 -1031
  324. package/package.json +1 -1
  325. package/types/stable/@ember/-internals/container/lib/registry.d.ts +1 -1
  326. package/types/stable/@ember/-internals/deprecations/index.d.ts +1 -1
  327. package/types/stable/@ember/-internals/environment/lib/env.d.ts +11 -0
  328. package/types/stable/@ember/-internals/glimmer/index.d.ts +1 -1
  329. package/types/stable/@ember/-internals/glimmer/lib/component-managers/curly.d.ts +1 -1
  330. package/types/stable/@ember/-internals/glimmer/lib/component-managers/mount.d.ts +1 -1
  331. package/types/stable/@ember/-internals/glimmer/lib/component-managers/outlet.d.ts +1 -1
  332. package/types/stable/@ember/-internals/glimmer/lib/component-managers/route-template.d.ts +2 -2
  333. package/types/stable/@ember/-internals/glimmer/lib/component.d.ts +9 -7
  334. package/types/stable/@ember/-internals/glimmer/lib/components/abstract-input.d.ts +1 -1
  335. package/types/stable/@ember/-internals/glimmer/lib/dom.d.ts +6 -2
  336. package/types/stable/@ember/-internals/glimmer/lib/environment.d.ts +1 -1
  337. package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +1 -1
  338. package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +3 -3
  339. package/types/stable/@ember/-internals/glimmer/lib/setup-registry.d.ts +1 -1
  340. package/types/stable/@ember/-internals/glimmer/lib/utils/bindings.d.ts +1 -1
  341. package/types/stable/@ember/-internals/glimmer/lib/utils/curly-component-state-bucket.d.ts +3 -2
  342. package/types/stable/@ember/-internals/glimmer/lib/utils/iterator.d.ts +1 -1
  343. package/types/stable/@ember/-internals/glimmer/lib/utils/managers.d.ts +2 -1
  344. package/types/stable/@ember/-internals/glimmer/lib/utils/serialization-first-node-helpers.d.ts +1 -1
  345. package/types/stable/@ember/-internals/glimmer/lib/utils/string.d.ts +1 -1
  346. package/types/stable/@ember/-internals/meta/lib/meta.d.ts +3 -2
  347. package/types/stable/@ember/-internals/metal/lib/cache.d.ts +1 -1
  348. package/types/stable/@ember/-internals/metal/lib/chain-tags.d.ts +3 -2
  349. package/types/stable/@ember/-internals/metal/lib/computed.d.ts +1 -1
  350. package/types/stable/@ember/-internals/metal/lib/decorator.d.ts +1 -1
  351. package/types/stable/@ember/-internals/metal/lib/deprecate_property.d.ts +1 -1
  352. package/types/stable/@ember/-internals/metal/lib/events.d.ts +1 -1
  353. package/types/stable/@ember/-internals/metal/lib/observer.d.ts +1 -1
  354. package/types/stable/@ember/-internals/metal/lib/properties.d.ts +1 -1
  355. package/types/stable/@ember/-internals/metal/lib/property_events.d.ts +1 -1
  356. package/types/stable/@ember/-internals/metal/lib/tags.d.ts +2 -1
  357. package/types/stable/@ember/-internals/runtime/lib/mixins/container_proxy.d.ts +1 -1
  358. package/types/stable/@ember/-internals/runtime/lib/mixins/registry_proxy.d.ts +1 -1
  359. package/types/stable/@ember/-internals/utils/lib/is_proxy.d.ts +1 -1
  360. package/types/stable/@ember/-internals/utils/lib/mandatory-setter.d.ts +1 -1
  361. package/types/stable/@ember/-internals/views/lib/system/utils.d.ts +1 -1
  362. package/types/stable/@ember/-internals/views/lib/views/core_view.d.ts +2 -2
  363. package/types/stable/@ember/-internals/views/lib/views/states.d.ts +1 -1
  364. package/types/stable/@ember/application/index.d.ts +5 -4
  365. package/types/stable/@ember/application/instance.d.ts +4 -3
  366. package/types/stable/@ember/application/namespace.d.ts +1 -1
  367. package/types/stable/@ember/array/proxy.d.ts +4 -3
  368. package/types/stable/@ember/component/helper.d.ts +1 -1
  369. package/types/stable/@ember/component/index.d.ts +6 -3
  370. package/types/stable/@ember/controller/index.d.ts +2 -2
  371. package/types/stable/@ember/debug/container-debug-adapter.d.ts +1 -1
  372. package/types/stable/@ember/engine/index.d.ts +3 -3
  373. package/types/stable/@ember/engine/instance.d.ts +4 -3
  374. package/types/stable/@ember/helper/index.d.ts +223 -3
  375. package/types/stable/@ember/modifier/index.d.ts +1 -1
  376. package/types/stable/@ember/object/-internals.d.ts +2 -2
  377. package/types/stable/@ember/object/compat.d.ts +2 -2
  378. package/types/stable/@ember/object/computed.d.ts +3 -1
  379. package/types/stable/@ember/object/evented.d.ts +1 -1
  380. package/types/stable/@ember/object/events.d.ts +1 -1
  381. package/types/stable/@ember/object/index.d.ts +8 -2
  382. package/types/stable/@ember/object/lib/computed/computed_macros.d.ts +1 -1
  383. package/types/stable/@ember/object/mixin.d.ts +1 -1
  384. package/types/stable/@ember/object/observers.d.ts +1 -1
  385. package/types/stable/@ember/object/proxy.d.ts +1 -1
  386. package/types/stable/@ember/reactive/collections.d.ts +6 -6
  387. package/types/stable/@ember/renderer/index.d.ts +2 -2
  388. package/types/stable/@ember/routing/index.d.ts +1 -1
  389. package/types/stable/@ember/routing/lib/controller_for.d.ts +2 -2
  390. package/types/stable/@ember/routing/route.d.ts +2 -2
  391. package/types/stable/@ember/routing/router.d.ts +2 -2
  392. package/types/stable/@ember/service/index.d.ts +1 -1
  393. package/types/stable/@ember/template/index.d.ts +1 -1
  394. package/types/stable/@ember/template-compiler/lib/dasherize-component-name.d.ts +1 -1
  395. package/types/stable/@ember/template-compiler/lib/plugins/assert-against-attrs.d.ts +1 -1
  396. package/types/stable/@ember/template-compiler/lib/plugins/assert-against-named-outlets.d.ts +1 -1
  397. package/types/stable/@ember/template-compiler/lib/plugins/assert-input-helper-without-block.d.ts +1 -1
  398. package/types/stable/@ember/template-compiler/lib/plugins/assert-reserved-named-arguments.d.ts +1 -1
  399. package/types/stable/@ember/template-compiler/lib/plugins/auto-import-builtins.d.ts +1 -4
  400. package/types/stable/@ember/template-compiler/lib/plugins/transform-action-syntax.d.ts +1 -1
  401. package/types/stable/@ember/template-compiler/lib/plugins/transform-each-in-into-each.d.ts +1 -1
  402. package/types/stable/@ember/template-compiler/lib/plugins/transform-each-track-array.d.ts +1 -1
  403. package/types/stable/@ember/template-compiler/lib/plugins/transform-in-element.d.ts +1 -1
  404. package/types/stable/@ember/template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings.d.ts +1 -1
  405. package/types/stable/@ember/template-compiler/lib/plugins/transform-resolutions.d.ts +1 -1
  406. package/types/stable/@ember/template-compiler/lib/plugins/transform-wrap-mount-and-outlet.d.ts +1 -1
  407. package/types/stable/@ember/template-compiler/lib/plugins/utils.d.ts +1 -1
  408. package/types/stable/@ember/template-compiler/lib/system/calculate-location-display.d.ts +1 -1
  409. package/types/stable/@ember/template-compiler/lib/types.d.ts +2 -1
  410. package/types/stable/@ember/template-factory/index.d.ts +1 -1
  411. package/types/stable/@glimmer/compiler/lib/builder/builder-interface.d.ts +2 -2
  412. package/types/stable/@glimmer/compiler/lib/builder/builder.d.ts +2 -2
  413. package/types/stable/@glimmer/compiler/lib/compiler.d.ts +1 -1
  414. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/context.d.ts +2 -1
  415. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/index.d.ts +2 -1
  416. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/impl.d.ts +2 -1
  417. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/curry.d.ts +1 -1
  418. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/dynamic-vars.d.ts +1 -1
  419. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/has-block.d.ts +2 -1
  420. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/if-unless.d.ts +1 -1
  421. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/log.d.ts +1 -1
  422. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/element/classified.d.ts +1 -1
  423. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/element/component.d.ts +1 -1
  424. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/element/simple-element.d.ts +2 -1
  425. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/expressions.d.ts +1 -1
  426. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/statements.d.ts +1 -1
  427. package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/strict-mode.d.ts +1 -1
  428. package/types/stable/@glimmer/compiler/lib/passes/2-encoding/expressions.d.ts +1 -1
  429. package/types/stable/@glimmer/compiler/lib/passes/2-encoding/mir.d.ts +3 -1
  430. package/types/stable/@glimmer/compiler/lib/shared/result.d.ts +1 -1
  431. package/types/stable/@glimmer/manager/lib/public/component.d.ts +1 -1
  432. package/types/stable/@glimmer/manager/lib/util/args-proxy.d.ts +1 -1
  433. package/types/stable/@glimmer/manager/lib/util/capabilities.d.ts +1 -1
  434. package/types/stable/@glimmer/node/lib/node-dom-helper.d.ts +1 -1
  435. package/types/stable/@glimmer/opcode-compiler/lib/opcode-builder/helpers/components.d.ts +1 -1
  436. package/types/stable/@glimmer/runtime/index.d.ts +9 -4
  437. package/types/stable/@glimmer/runtime/lib/compiled/expressions/concat.d.ts +1 -1
  438. package/types/stable/@glimmer/runtime/lib/compiled/opcodes/-debug-strip.d.ts +4 -3
  439. package/types/stable/@glimmer/runtime/lib/compiled/opcodes/component.d.ts +1 -1
  440. package/types/stable/@glimmer/runtime/lib/compiled/opcodes/dom.d.ts +2 -2
  441. package/types/stable/@glimmer/runtime/lib/compiled/opcodes/vm.d.ts +2 -2
  442. package/types/stable/@glimmer/runtime/lib/component/template-only.d.ts +1 -1
  443. package/types/stable/@glimmer/runtime/lib/curried-value.d.ts +1 -1
  444. package/types/stable/@glimmer/runtime/lib/helpers/and.d.ts +3 -0
  445. package/types/stable/@glimmer/runtime/lib/helpers/eq.d.ts +8 -0
  446. package/types/stable/@glimmer/runtime/lib/helpers/gt.d.ts +8 -0
  447. package/types/stable/@glimmer/runtime/lib/helpers/gte.d.ts +8 -0
  448. package/types/stable/@glimmer/runtime/lib/helpers/invoke.d.ts +1 -1
  449. package/types/stable/@glimmer/runtime/lib/helpers/lt.d.ts +8 -0
  450. package/types/stable/@glimmer/runtime/lib/helpers/lte.d.ts +8 -0
  451. package/types/stable/@glimmer/runtime/lib/helpers/neq.d.ts +8 -0
  452. package/types/stable/@glimmer/runtime/lib/helpers/not.d.ts +3 -0
  453. package/types/stable/@glimmer/runtime/lib/helpers/or.d.ts +3 -0
  454. package/types/stable/@glimmer/runtime/lib/opcodes.d.ts +2 -2
  455. package/types/stable/@glimmer/runtime/lib/references/class-list.d.ts +1 -1
  456. package/types/stable/@glimmer/runtime/lib/references/curry-value.d.ts +1 -1
  457. package/types/stable/@glimmer/runtime/lib/render.d.ts +1 -1
  458. package/types/stable/@glimmer/runtime/lib/scope.d.ts +1 -1
  459. package/types/stable/@glimmer/runtime/lib/vm/append.d.ts +3 -2
  460. package/types/stable/@glimmer/runtime/lib/vm/arguments.d.ts +2 -2
  461. package/types/stable/@glimmer/runtime/lib/vm/content/text.d.ts +1 -1
  462. package/types/stable/@glimmer/runtime/lib/vm/element-builder.d.ts +1 -1
  463. package/types/stable/@glimmer/runtime/lib/vm/low-level.d.ts +2 -1
  464. package/types/stable/@glimmer/runtime/lib/vm/rehydrate-builder.d.ts +1 -1
  465. package/types/stable/@glimmer/runtime/lib/vm/update.d.ts +2 -1
  466. package/types/stable/@glimmer/syntax/lib/keywords.d.ts +2 -2
  467. package/types/stable/@glimmer/tracking/index.d.ts +2 -1
  468. package/types/stable/@glimmer/tracking/primitives/cache.d.ts +1 -1
  469. package/types/stable/index.d.ts +9 -0
  470. package/dist/dev/packages/shared-chunks/constants-p7AL-pog.js +0 -213
  471. package/dist/dev/packages/shared-chunks/dynamic-BfDKO5NI.js +0 -3823
  472. package/dist/dev/packages/shared-chunks/element-builder-DO43ztVP.js +0 -404
  473. package/dist/dev/packages/shared-chunks/index-QZstta6s.js +0 -6306
  474. package/dist/dev/packages/shared-chunks/mandatory-setter-DHZe7-kW.js +0 -425
  475. package/dist/dev/packages/shared-chunks/observers-Bj9qLVau.js +0 -2062
  476. package/dist/dev/packages/shared-chunks/set_properties-kVGzZL_a.js +0 -100
  477. package/dist/dev/packages/shared-chunks/transform-resolutions-D-YtZ0_g.js +0 -7458
  478. package/dist/prod/packages/shared-chunks/constants-2M371WiB.js +0 -210
  479. package/dist/prod/packages/shared-chunks/index-6pnzcm45.js +0 -5931
  480. package/dist/prod/packages/shared-chunks/observers-tZ2aOzr4.js +0 -714
  481. package/dist/prod/packages/shared-chunks/set_properties-C1T46IiN.js +0 -101
  482. package/dist/prod/packages/shared-chunks/super-Cm_a_cLQ.js +0 -275
  483. package/dist/prod/packages/shared-chunks/transform-resolutions-DR4GLmR2.js +0 -6936
  484. package/dist/prod/packages/shared-chunks/{collections-GpG8lT2g.js → collections-C3Y8z_9v.js} +9 -9
@@ -0,0 +1,617 @@
1
+ import { getOwner, setOwner } from '../@ember/-internals/owner/index.js';
2
+ import { g as guidFor } from './guid-Cbq2sNV_.js';
3
+ import { getViewElement, clearElementView, clearViewElement, addChildView, setViewElement, setElementView } from '../@ember/-internals/views/lib/system/utils.js';
4
+ import { debugFreeze } from '../@ember/debug/index.js';
5
+ import { _instrumentStart } from '../@ember/instrumentation/index.js';
6
+ import { a as createComputeRef, v as valueForRef, e as createPrimitiveRef, f as childRefFor, g as childRefFromParts, c as createConstRef, d as isUpdatableRef, u as updateRef } from './reference-BoPB2LfI.js';
7
+ import { f as reifyPositional } from './untouchable-this-cH6_N2LJ.js';
8
+ import { E as EMPTY_ARRAY } from './array-utils-CZQxrdD3.js';
9
+ import { z as valueForTag, h as beginUntrackFrame, q as endUntrackFrame, g as beginTrackFrame, p as endTrackFrame, k as consumeTag, y as validateTag } from './cache-B7dqAS38.js';
10
+ import { g as get } from './property_get-CIBS9umw.js';
11
+ import { dasherize } from '../@ember/-internals/string/index.js';
12
+ import { assert } from '../@ember/debug/lib/assert.js';
13
+ import { registerDestructor } from '../@glimmer/destroyable/index.js';
14
+ import { MUTABLE_CELL } from '../@ember/-internals/views/lib/compat/attrs.js';
15
+
16
+ /**
17
+ * @deprecated
18
+ */
19
+ function unwrapTemplate(template) {
20
+ if (template.result === 'error') {
21
+ throw new Error(`Compile Error: ${template.problem} @ ${template.span.start}..${template.span.end}`);
22
+ }
23
+ return template;
24
+ }
25
+
26
+ function isTemplateFactory(template) {
27
+ return typeof template === 'function';
28
+ }
29
+
30
+ function referenceForParts(rootRef, parts) {
31
+ let isAttrs = parts[0] === 'attrs';
32
+
33
+ // TODO deprecate this
34
+ if (isAttrs) {
35
+ parts.shift();
36
+ if (parts.length === 1) {
37
+ return childRefFor(rootRef, parts[0]);
38
+ }
39
+ }
40
+ return childRefFromParts(rootRef, parts);
41
+ }
42
+ function parseAttributeBinding(microsyntax) {
43
+ let colonIndex = microsyntax.indexOf(':');
44
+ if (colonIndex === -1) {
45
+ (!(microsyntax !== 'class') && assert('You cannot use class as an attributeBinding, use classNameBindings instead.', microsyntax !== 'class'));
46
+ return [microsyntax, microsyntax, true];
47
+ } else {
48
+ let prop = microsyntax.substring(0, colonIndex);
49
+ let attribute = microsyntax.substring(colonIndex + 1);
50
+ (!(attribute !== 'class') && assert('You cannot use class as an attributeBinding, use classNameBindings instead.', attribute !== 'class'));
51
+ return [prop, attribute, false];
52
+ }
53
+ }
54
+ function installAttributeBinding(component, rootRef, parsed, operations) {
55
+ let [prop, attribute, isSimple] = parsed;
56
+ if (attribute === 'id') {
57
+ // SAFETY: `get` could not infer the type of `prop` and just gave us `unknown`.
58
+ // we may want to throw an error in the future if the value isn't string or null/undefined.
59
+ let elementId = get(component, prop);
60
+ if (elementId === undefined || elementId === null) {
61
+ elementId = component.elementId;
62
+ }
63
+ let elementIdRef = createPrimitiveRef(elementId);
64
+ operations.setAttribute('id', elementIdRef, true, null);
65
+ return;
66
+ }
67
+ let isPath = prop.indexOf('.') > -1;
68
+ let reference = isPath ? referenceForParts(rootRef, prop.split('.')) : childRefFor(rootRef, prop);
69
+ (!(!(isSimple && isPath)) && assert(`Illegal attributeBinding: '${prop}' is not a valid attribute name.`, !(isSimple && isPath)));
70
+ operations.setAttribute(attribute, reference, false, null);
71
+ }
72
+ function createClassNameBindingRef(rootRef, microsyntax, operations) {
73
+ let parts = microsyntax.split(':');
74
+ let [prop, truthy, falsy] = parts;
75
+ // NOTE: This could be an empty string
76
+ (!(prop !== undefined) && assert('has prop', prop !== undefined)); // Will always have at least one part
77
+ let isStatic = prop === '';
78
+ if (isStatic) {
79
+ operations.setAttribute('class', createPrimitiveRef(truthy), true, null);
80
+ } else {
81
+ let isPath = prop.indexOf('.') > -1;
82
+ let parts = isPath ? prop.split('.') : [];
83
+ let value = isPath ? referenceForParts(rootRef, parts) : childRefFor(rootRef, prop);
84
+ let ref;
85
+ if (truthy === undefined) {
86
+ ref = createSimpleClassNameBindingRef(value, isPath ? parts[parts.length - 1] : prop);
87
+ } else {
88
+ ref = createColonClassNameBindingRef(value, truthy, falsy);
89
+ }
90
+ operations.setAttribute('class', ref, false, null);
91
+ }
92
+ }
93
+ function createSimpleClassNameBindingRef(inner, path) {
94
+ let dasherizedPath;
95
+ return createComputeRef(() => {
96
+ let value = valueForRef(inner);
97
+ if (value === true) {
98
+ (!(path !== undefined) && assert('You must pass a path when binding a to a class name using classNameBindings', path !== undefined));
99
+ return dasherizedPath || (dasherizedPath = dasherize(path));
100
+ } else if (value || value === 0) {
101
+ return String(value);
102
+ } else {
103
+ return null;
104
+ }
105
+ });
106
+ }
107
+ function createColonClassNameBindingRef(inner, truthy, falsy) {
108
+ return createComputeRef(() => {
109
+ return valueForRef(inner) ? truthy : falsy;
110
+ });
111
+ }
112
+
113
+ function NOOP() {}
114
+
115
+ /**
116
+ @module ember
117
+ */
118
+
119
+ /**
120
+ Represents the internal state of the component.
121
+
122
+ @class ComponentStateBucket
123
+ @private
124
+ */
125
+ class ComponentStateBucket {
126
+ classRef = null;
127
+ rootRef;
128
+ argsRevision;
129
+ constructor(component, args, argsTag, finalizer, hasWrappedElement, isInteractive) {
130
+ this.component = component;
131
+ this.args = args;
132
+ this.argsTag = argsTag;
133
+ this.finalizer = finalizer;
134
+ this.hasWrappedElement = hasWrappedElement;
135
+ this.isInteractive = isInteractive;
136
+ this.classRef = null;
137
+ this.argsRevision = args === null ? 0 : valueForTag(argsTag);
138
+ this.rootRef = createConstRef(component, 'this');
139
+ registerDestructor(this, () => this.willDestroy(), true);
140
+ registerDestructor(this, () => this.component.destroy());
141
+ }
142
+ willDestroy() {
143
+ let {
144
+ component,
145
+ isInteractive
146
+ } = this;
147
+ if (isInteractive) {
148
+ beginUntrackFrame();
149
+ component.trigger('willDestroyElement');
150
+ component.trigger('willClearRender');
151
+ endUntrackFrame();
152
+ let element = getViewElement(component);
153
+ if (element) {
154
+ clearElementView(element);
155
+ clearViewElement(component);
156
+ }
157
+ }
158
+ component.renderer.unregister(component);
159
+ }
160
+ finalize() {
161
+ let {
162
+ finalizer
163
+ } = this;
164
+ finalizer();
165
+ this.finalizer = NOOP;
166
+ }
167
+ }
168
+
169
+ // ComponentArgs takes EvaluatedNamedArgs and converts them into the
170
+ // inputs needed by CurlyComponents (attrs and props, with mutable
171
+ // cells, etc).
172
+ function processComponentArgs(namedArgs) {
173
+ let attrs = Object.create(null);
174
+ let props = Object.create(null);
175
+ for (let name in namedArgs) {
176
+ let ref = namedArgs[name];
177
+ (!(ref) && assert('expected ref', ref));
178
+ let value = valueForRef(ref);
179
+ if (isUpdatableRef(ref)) {
180
+ attrs[name] = new MutableCell(ref, value);
181
+ } else {
182
+ attrs[name] = value;
183
+ }
184
+ props[name] = value;
185
+ }
186
+ props.attrs = attrs;
187
+ return props;
188
+ }
189
+ const REF = Symbol('REF');
190
+ class MutableCell {
191
+ value;
192
+ [MUTABLE_CELL];
193
+ [REF];
194
+ constructor(ref, value) {
195
+ this[MUTABLE_CELL] = true;
196
+ this[REF] = ref;
197
+ this.value = value;
198
+ }
199
+ update(val) {
200
+ updateRef(this[REF], val);
201
+ }
202
+ }
203
+
204
+ const COMPONENT_ARGS_MAP = new WeakMap();
205
+ function getComponentCapturedArgs(component) {
206
+ return COMPONENT_ARGS_MAP.get(component);
207
+ }
208
+ const DIRTY_TAG = Symbol('DIRTY_TAG');
209
+ const IS_DISPATCHING_ATTRS = Symbol('IS_DISPATCHING_ATTRS');
210
+ const BOUNDS = Symbol('BOUNDS');
211
+ const EMBER_VIEW_REF = createPrimitiveRef('ember-view');
212
+ function aliasIdToElementId(args, props) {
213
+ if (args.named.has('id')) {
214
+ (!(!args.named.has('elementId')) && assert(`You cannot invoke a component with both 'id' and 'elementId' at the same time.`, !args.named.has('elementId')));
215
+ props.elementId = props.id;
216
+ }
217
+ }
218
+
219
+ // We must traverse the attributeBindings in reverse keeping track of
220
+ // what has already been applied. This is essentially refining the concatenated
221
+ // properties applying right to left.
222
+ function applyAttributeBindings(attributeBindings, component, rootRef, operations) {
223
+ let seen = [];
224
+ let i = attributeBindings.length - 1;
225
+ while (i !== -1) {
226
+ let binding = attributeBindings[i];
227
+ (!(binding) && assert('has binding', binding));
228
+ let parsed = parseAttributeBinding(binding);
229
+ let attribute = parsed[1];
230
+ if (seen.indexOf(attribute) === -1) {
231
+ seen.push(attribute);
232
+ installAttributeBinding(component, rootRef, parsed, operations);
233
+ }
234
+ i--;
235
+ }
236
+ if (seen.indexOf('id') === -1) {
237
+ let id = component.elementId ? component.elementId : guidFor(component);
238
+ operations.setAttribute('id', createPrimitiveRef(id), false, null);
239
+ }
240
+ }
241
+ const EMPTY_POSITIONAL_ARGS = [];
242
+ debugFreeze(EMPTY_POSITIONAL_ARGS);
243
+ class CurlyComponentManager {
244
+ templateFor(component) {
245
+ let {
246
+ layout,
247
+ layoutName
248
+ } = component;
249
+ let owner = getOwner(component);
250
+ (!(owner) && assert('Component is unexpectedly missing an owner', owner));
251
+ let factory;
252
+ if (layout === undefined) {
253
+ if (layoutName !== undefined) {
254
+ let _factory = owner.lookup(`template:${layoutName}`);
255
+ (!(_factory !== undefined) && assert(`Layout \`${layoutName}\` not found!`, _factory !== undefined));
256
+ factory = _factory;
257
+ } else {
258
+ return null;
259
+ }
260
+ } else if (isTemplateFactory(layout)) {
261
+ factory = layout;
262
+ } else {
263
+ // no layout was found, use the default layout
264
+ return null;
265
+ }
266
+ return unwrapTemplate(factory(owner)).asWrappedLayout();
267
+ }
268
+ getDynamicLayout(bucket) {
269
+ return this.templateFor(bucket.component);
270
+ }
271
+ getTagName(state) {
272
+ let {
273
+ component,
274
+ hasWrappedElement
275
+ } = state;
276
+ if (!hasWrappedElement) {
277
+ return null;
278
+ }
279
+ return component && component.tagName || 'div';
280
+ }
281
+ getCapabilities() {
282
+ return CURLY_CAPABILITIES;
283
+ }
284
+ prepareArgs(ComponentClass, args) {
285
+ if (args.named.has('__ARGS__')) {
286
+ (!(args.positional.length === 0) && assert('[BUG] cannot pass both __ARGS__ and positional arguments', args.positional.length === 0));
287
+ let {
288
+ __ARGS__,
289
+ ...rest
290
+ } = args.named.capture();
291
+ (!(__ARGS__) && assert('[BUG] unexpectedly missing __ARGS__ after check', __ARGS__)); // does this need to be untracked?
292
+ let __args__ = valueForRef(__ARGS__);
293
+ let prepared = {
294
+ positional: __args__.positional,
295
+ named: {
296
+ ...rest,
297
+ ...__args__.named
298
+ }
299
+ };
300
+ return prepared;
301
+ }
302
+ const {
303
+ positionalParams
304
+ } = ComponentClass.class ?? ComponentClass;
305
+
306
+ // early exits
307
+ if (positionalParams === undefined || positionalParams === null || args.positional.length === 0) {
308
+ return null;
309
+ }
310
+ let named;
311
+ if (typeof positionalParams === 'string') {
312
+ (!(!args.named.has(positionalParams)) && assert(`You cannot specify positional parameters and the hash argument \`${positionalParams}\`.`, !args.named.has(positionalParams)));
313
+ let captured = args.positional.capture();
314
+ named = {
315
+ [positionalParams]: createComputeRef(() => reifyPositional(captured))
316
+ };
317
+ Object.assign(named, args.named.capture());
318
+ } else if (Array.isArray(positionalParams) && positionalParams.length > 0) {
319
+ const count = Math.min(positionalParams.length, args.positional.length);
320
+ named = {};
321
+ Object.assign(named, args.named.capture());
322
+ for (let i = 0; i < count; i++) {
323
+ let name = positionalParams[i];
324
+ (!(name) && assert('Expected at least one positional param', name));
325
+ (!(!args.named.has(name)) && assert(`You cannot specify both a positional param (at position ${i}) and the hash argument \`${name}\`.`, !args.named.has(name)));
326
+ named[name] = args.positional.at(i);
327
+ }
328
+ } else {
329
+ return null;
330
+ }
331
+ return {
332
+ positional: EMPTY_ARRAY,
333
+ named
334
+ };
335
+ }
336
+
337
+ /*
338
+ * This hook is responsible for actually instantiating the component instance.
339
+ * It also is where we perform additional bookkeeping to support legacy
340
+ * features like exposed by view mixins like ChildViewSupport, ActionSupport,
341
+ * etc.
342
+ */
343
+ create(owner, ComponentClass, args, {
344
+ isInteractive
345
+ }, dynamicScope, callerSelfRef) {
346
+ // Get the nearest concrete component instance from the scope. "Virtual"
347
+ // components will be skipped.
348
+ let parentView = dynamicScope.view;
349
+
350
+ // Capture the arguments, which tells Glimmer to give us our own, stable
351
+ // copy of the Arguments object that is safe to hold on to between renders.
352
+ let capturedArgs = args.named.capture();
353
+ beginTrackFrame();
354
+ let props = processComponentArgs(capturedArgs);
355
+ let argsTag = endTrackFrame();
356
+
357
+ // Alias `id` argument to `elementId` property on the component instance.
358
+ aliasIdToElementId(args, props);
359
+
360
+ // Set component instance's parentView property to point to nearest concrete
361
+ // component.
362
+ props.parentView = parentView;
363
+
364
+ // Save the current `this` context of the template as the component's
365
+ // `_target`, so bubbled actions are routed to the right place.
366
+ props._target = valueForRef(callerSelfRef);
367
+ setOwner(props, owner);
368
+
369
+ // caller:
370
+ // <FaIcon @name="bug" />
371
+ //
372
+ // callee:
373
+ // <i class="fa-{{@name}}"></i>
374
+
375
+ // Now that we've built up all of the properties to set on the component instance,
376
+ // actually create it.
377
+ beginUntrackFrame();
378
+ let component = ComponentClass.create(props);
379
+
380
+ // Store capturedArgs in a WeakMap keyed by the component instance so that
381
+ // PROPERTY_DID_CHANGE can look them up
382
+ COMPONENT_ARGS_MAP.set(component, capturedArgs);
383
+ let finalizer = _instrumentStart('render.component', initialRenderInstrumentDetails, component);
384
+
385
+ // We become the new parentView for downstream components, so save our
386
+ // component off on the dynamic scope.
387
+ dynamicScope.view = component;
388
+
389
+ // Unless we're the root component, we need to add ourselves to our parent
390
+ // component's childViews array.
391
+ if (parentView !== null && parentView !== undefined) {
392
+ addChildView(parentView, component);
393
+ }
394
+ component.trigger('didReceiveAttrs');
395
+ let hasWrappedElement = component.tagName !== '';
396
+
397
+ // We usually do this in the `didCreateElement`, but that hook doesn't fire for tagless components
398
+ if (!hasWrappedElement) {
399
+ if (isInteractive) {
400
+ component.trigger('willRender');
401
+ }
402
+ component._transitionTo('hasElement');
403
+ if (isInteractive) {
404
+ component.trigger('willInsertElement');
405
+ }
406
+ }
407
+
408
+ // Track additional lifecycle metadata about this component in a state bucket.
409
+ // Essentially we're saving off all the state we'll need in the future.
410
+ let bucket = new ComponentStateBucket(component, capturedArgs, argsTag, finalizer, hasWrappedElement, isInteractive);
411
+ if (args.named.has('class')) {
412
+ bucket.classRef = args.named.get('class');
413
+ }
414
+ {
415
+ processComponentInitializationAssertions(component, props);
416
+ }
417
+ if (isInteractive && hasWrappedElement) {
418
+ component.trigger('willRender');
419
+ }
420
+ endUntrackFrame();
421
+
422
+ // consume every argument so we always run again
423
+ consumeTag(bucket.argsTag);
424
+ consumeTag(component[DIRTY_TAG]);
425
+ return bucket;
426
+ }
427
+ getDebugName(definition) {
428
+ return definition.fullName || definition.normalizedName || definition.class?.name || definition.name;
429
+ }
430
+ getSelf({
431
+ rootRef
432
+ }) {
433
+ return rootRef;
434
+ }
435
+ didCreateElement({
436
+ component,
437
+ classRef,
438
+ isInteractive,
439
+ rootRef
440
+ }, element, operations) {
441
+ setViewElement(component, element);
442
+ setElementView(element, component);
443
+ let {
444
+ attributeBindings,
445
+ classNames,
446
+ classNameBindings
447
+ } = component;
448
+ if (attributeBindings && attributeBindings.length) {
449
+ applyAttributeBindings(attributeBindings, component, rootRef, operations);
450
+ } else {
451
+ let id = component.elementId ? component.elementId : guidFor(component);
452
+ operations.setAttribute('id', createPrimitiveRef(id), false, null);
453
+ }
454
+ if (classRef) {
455
+ const ref = createSimpleClassNameBindingRef(classRef);
456
+ operations.setAttribute('class', ref, false, null);
457
+ }
458
+ if (classNames && classNames.length) {
459
+ classNames.forEach(name => {
460
+ operations.setAttribute('class', createPrimitiveRef(name), false, null);
461
+ });
462
+ }
463
+ if (classNameBindings && classNameBindings.length) {
464
+ classNameBindings.forEach(binding => {
465
+ createClassNameBindingRef(rootRef, binding, operations);
466
+ });
467
+ }
468
+ operations.setAttribute('class', EMBER_VIEW_REF, false, null);
469
+ if ('ariaRole' in component) {
470
+ operations.setAttribute('role', childRefFor(rootRef, 'ariaRole'), false, null);
471
+ }
472
+ component._transitionTo('hasElement');
473
+ if (isInteractive) {
474
+ beginUntrackFrame();
475
+ component.trigger('willInsertElement');
476
+ endUntrackFrame();
477
+ }
478
+ }
479
+ didRenderLayout(bucket, bounds) {
480
+ bucket.component[BOUNDS] = bounds;
481
+ bucket.finalize();
482
+ }
483
+ didCreate({
484
+ component,
485
+ isInteractive
486
+ }) {
487
+ if (isInteractive) {
488
+ component._transitionTo('inDOM');
489
+ component.trigger('didInsertElement');
490
+ component.trigger('didRender');
491
+ }
492
+ }
493
+ update(bucket) {
494
+ let {
495
+ component,
496
+ args,
497
+ argsTag,
498
+ argsRevision,
499
+ isInteractive
500
+ } = bucket;
501
+ bucket.finalizer = _instrumentStart('render.component', rerenderInstrumentDetails, component);
502
+ beginUntrackFrame();
503
+ if (args !== null && !validateTag(argsTag, argsRevision)) {
504
+ beginTrackFrame();
505
+ let props = processComponentArgs(args);
506
+ argsTag = bucket.argsTag = endTrackFrame();
507
+ bucket.argsRevision = valueForTag(argsTag);
508
+ component[IS_DISPATCHING_ATTRS] = true;
509
+ component.setProperties(props);
510
+ component[IS_DISPATCHING_ATTRS] = false;
511
+ component.trigger('didUpdateAttrs');
512
+ component.trigger('didReceiveAttrs');
513
+ }
514
+ if (isInteractive) {
515
+ component.trigger('willUpdate');
516
+ component.trigger('willRender');
517
+ }
518
+ endUntrackFrame();
519
+ consumeTag(argsTag);
520
+ consumeTag(component[DIRTY_TAG]);
521
+ }
522
+ didUpdateLayout(bucket) {
523
+ bucket.finalize();
524
+ }
525
+ didUpdate({
526
+ component,
527
+ isInteractive
528
+ }) {
529
+ if (isInteractive) {
530
+ component.trigger('didUpdate');
531
+ component.trigger('didRender');
532
+ }
533
+ }
534
+ getDestroyable(bucket) {
535
+ return bucket;
536
+ }
537
+ }
538
+ function processComponentInitializationAssertions(component, props) {
539
+ (!((() => {
540
+ let {
541
+ classNameBindings
542
+ } = component;
543
+ for (let i = 0; i < classNameBindings.length; i++) {
544
+ let binding = classNameBindings[i];
545
+ if (typeof binding !== 'string' || binding.length === 0) {
546
+ return false;
547
+ }
548
+ }
549
+ return true;
550
+ })()) && assert(`classNameBindings must be non-empty strings: ${component}`, (() => {
551
+ let {
552
+ classNameBindings
553
+ } = component;
554
+ for (let i = 0; i < classNameBindings.length; i++) {
555
+ let binding = classNameBindings[i];
556
+ if (typeof binding !== 'string' || binding.length === 0) {
557
+ return false;
558
+ }
559
+ }
560
+ return true;
561
+ })()));
562
+ (!((() => {
563
+ let {
564
+ classNameBindings
565
+ } = component;
566
+ for (let binding of classNameBindings) {
567
+ if (binding.split(' ').length > 1) {
568
+ return false;
569
+ }
570
+ }
571
+ return true;
572
+ })()) && assert(`classNameBindings must not have spaces in them: ${component}`, (() => {
573
+ let {
574
+ classNameBindings
575
+ } = component;
576
+ for (let binding of classNameBindings) {
577
+ if (binding.split(' ').length > 1) {
578
+ return false;
579
+ }
580
+ }
581
+ return true;
582
+ })()));
583
+ (!(component.tagName !== '' || !component.classNameBindings || component.classNameBindings.length === 0) && assert(`You cannot use \`classNameBindings\` on a tag-less component: ${component}`, component.tagName !== '' || !component.classNameBindings || component.classNameBindings.length === 0));
584
+ (!(component.tagName !== '' || props.id === component.elementId || !component.elementId && component.elementId !== '') && assert(`You cannot use \`elementId\` on a tag-less component: ${component}`, component.tagName !== '' || props.id === component.elementId || !component.elementId && component.elementId !== ''));
585
+ (!(component.tagName !== '' || !component.attributeBindings || component.attributeBindings.length === 0) && assert(`You cannot use \`attributeBindings\` on a tag-less component: ${component}`, component.tagName !== '' || !component.attributeBindings || component.attributeBindings.length === 0));
586
+ }
587
+ function initialRenderInstrumentDetails(component) {
588
+ return component.instrumentDetails({
589
+ initialRender: true
590
+ });
591
+ }
592
+ function rerenderInstrumentDetails(component) {
593
+ return component.instrumentDetails({
594
+ initialRender: false
595
+ });
596
+ }
597
+ const CURLY_CAPABILITIES = {
598
+ dynamicLayout: true,
599
+ dynamicTag: true,
600
+ prepareArgs: true,
601
+ createArgs: true,
602
+ attributeHook: true,
603
+ elementHook: true,
604
+ createCaller: true,
605
+ dynamicScope: true,
606
+ updateHook: true,
607
+ createInstance: true,
608
+ wrapped: true,
609
+ willDestroy: true,
610
+ hasSubOwner: false
611
+ };
612
+ const CURLY_COMPONENT_MANAGER = new CurlyComponentManager();
613
+ function isCurlyManager(manager) {
614
+ return manager === CURLY_COMPONENT_MANAGER;
615
+ }
616
+
617
+ export { BOUNDS as B, CURLY_COMPONENT_MANAGER as C, DIRTY_TAG as D, IS_DISPATCHING_ATTRS as I, CurlyComponentManager as a, ComponentStateBucket as b, isCurlyManager as c, getComponentCapturedArgs as g, initialRenderInstrumentDetails as i, processComponentInitializationAssertions as p, unwrapTemplate as u };