ember-source 7.2.0-alpha.4 → 7.2.0

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 (336) hide show
  1. package/blueprints/-addon-import.js +4 -6
  2. package/blueprints/-utils.js +6 -9
  3. package/build-metadata.json +3 -3
  4. package/dist/dev/packages/@ember/-internals/browser-environment/index.js +1 -1
  5. package/dist/dev/packages/@ember/-internals/glimmer/index.js +11 -11
  6. package/dist/dev/packages/@ember/-internals/metal/index.js +18 -18
  7. package/dist/dev/packages/@ember/-internals/routing/index.js +3 -3
  8. package/dist/dev/packages/@ember/-internals/runtime/index.js +1 -1
  9. package/dist/dev/packages/@ember/-internals/runtime/lib/ext/rsvp.js +1 -1
  10. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +7 -7
  11. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +1 -1
  12. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -3
  13. package/dist/dev/packages/@ember/-internals/utils/index.js +2 -2
  14. package/dist/dev/packages/@ember/-internals/views/lib/mixins/action_support.js +1 -1
  15. package/dist/dev/packages/@ember/-internals/views/lib/system/event_dispatcher.js +2 -2
  16. package/dist/dev/packages/@ember/-internals/views/lib/system/utils.js +1 -1
  17. package/dist/dev/packages/@ember/-internals/views/lib/views/core_view.js +1 -1
  18. package/dist/dev/packages/@ember/application/index.js +6 -7
  19. package/dist/dev/packages/@ember/application/instance.js +4 -4
  20. package/dist/dev/packages/@ember/application/namespace.js +3 -3
  21. package/dist/dev/packages/@ember/array/index.js +10 -64
  22. package/dist/dev/packages/@ember/array/lib/is-array.js +71 -0
  23. package/dist/dev/packages/@ember/array/proxy.js +8 -8
  24. package/dist/dev/packages/@ember/component/helper.js +1 -1
  25. package/dist/dev/packages/@ember/component/index.js +22 -16
  26. package/dist/dev/packages/@ember/component/template-only.js +1 -1
  27. package/dist/dev/packages/@ember/controller/index.js +3 -3
  28. package/dist/dev/packages/@ember/debug/data-adapter.js +3 -3
  29. package/dist/dev/packages/@ember/debug/index.js +1 -1
  30. package/dist/dev/packages/@ember/engine/index.js +5 -5
  31. package/dist/dev/packages/@ember/engine/instance.js +2 -2
  32. package/dist/dev/packages/@ember/helper/index.js +1132 -98
  33. package/dist/dev/packages/@ember/modifier/index.js +2 -2
  34. package/dist/dev/packages/@ember/modifier/on.js +1 -1
  35. package/dist/dev/packages/@ember/object/-internals.js +2 -2
  36. package/dist/dev/packages/@ember/object/compat.js +3 -35
  37. package/dist/dev/packages/@ember/object/computed.js +2 -2
  38. package/dist/dev/packages/@ember/object/core.js +7 -7
  39. package/dist/dev/packages/@ember/object/evented.js +2 -2
  40. package/dist/dev/packages/@ember/object/events.js +1 -1
  41. package/dist/dev/packages/@ember/object/index.js +30 -25
  42. package/dist/dev/packages/@ember/object/internals.js +1 -1
  43. package/dist/dev/packages/@ember/object/lib/computed/computed_macros.js +5 -5
  44. package/dist/dev/packages/@ember/object/lib/computed/reduce_computed_macros.js +3 -3
  45. package/dist/dev/packages/@ember/object/mixin.js +6 -6
  46. package/dist/dev/packages/@ember/object/observable.js +7 -7
  47. package/dist/dev/packages/@ember/object/observers.js +1 -1
  48. package/dist/dev/packages/@ember/object/promise-proxy-mixin.js +3 -3
  49. package/dist/dev/packages/@ember/reactive/collections.js +153 -153
  50. package/dist/dev/packages/@ember/renderer/index.js +1 -1
  51. package/dist/dev/packages/@ember/routing/-internals.js +3 -3
  52. package/dist/dev/packages/@ember/routing/index.js +18 -34
  53. package/dist/dev/packages/@ember/routing/lib/generate_controller.js +2 -3
  54. package/dist/dev/packages/@ember/routing/lib/routing-service.js +5 -5
  55. package/dist/dev/packages/@ember/routing/lib/utils.js +3 -3
  56. package/dist/dev/packages/@ember/routing/route.js +12 -12
  57. package/dist/dev/packages/@ember/routing/router-service.js +25 -18
  58. package/dist/dev/packages/@ember/routing/router.js +5 -5
  59. package/dist/dev/packages/@ember/runloop/index.js +1 -1
  60. package/dist/dev/packages/@ember/service/index.js +1 -1
  61. package/dist/dev/packages/@ember/template-compiler/lib/compile-options.js +3 -3
  62. package/dist/dev/packages/@ember/template-compiler/lib/template.js +2 -2
  63. package/dist/dev/packages/@ember/template-factory/index.js +1 -1
  64. package/dist/dev/packages/@ember/utils/lib/is_empty.js +1 -1
  65. package/dist/dev/packages/@glimmer/encoder/index.js +1 -1
  66. package/dist/dev/packages/@glimmer/manager/index.js +4 -4
  67. package/dist/dev/packages/@glimmer/node/index.js +3 -3
  68. package/dist/dev/packages/@glimmer/opcode-compiler/index.js +2 -2
  69. package/dist/dev/packages/@glimmer/program/index.js +10 -10
  70. package/dist/dev/packages/@glimmer/reference/index.js +5 -5
  71. package/dist/dev/packages/@glimmer/runtime/index.js +13 -13
  72. package/dist/dev/packages/@glimmer/tracking/index.js +2 -2
  73. package/dist/dev/packages/@glimmer/tracking/primitives/cache/index.js +1 -1
  74. package/dist/dev/packages/@glimmer/util/index.js +4 -4
  75. package/dist/dev/packages/@glimmer/validator/index.js +3 -3
  76. package/dist/dev/packages/@glimmer/vm/index.js +2 -2
  77. package/dist/dev/packages/ember/version.js +1 -1
  78. package/dist/dev/packages/ember-template-compiler/index.js +4 -4
  79. package/dist/dev/packages/router_js/index.js +2 -2
  80. package/dist/dev/packages/rsvp/index.js +1 -1
  81. package/dist/dev/packages/shared-chunks/{alias-RGbDZoAB.js → alias-DpqL1qx6.js} +7 -7
  82. package/dist/dev/packages/shared-chunks/{api-BT9M3UaD.js → api-BlZDPg1n.js} +6 -6
  83. package/dist/dev/packages/shared-chunks/{element-builder-Cl1kHFJE.js → api-C0PAtEgQ.js} +139 -120
  84. package/dist/dev/packages/shared-chunks/{api-DG5kRT-o.js → api-DuLOZMO_.js} +3 -3
  85. package/dist/dev/packages/shared-chunks/{args-proxy-CB0SM6jC.js → args-proxy-CS5Brs3_.js} +2 -2
  86. package/dist/dev/packages/shared-chunks/{untouchable-this-BHdAERUu.js → arguments-CDkbOqTS.js} +236 -236
  87. package/dist/dev/packages/shared-chunks/{array-BMaSKezP.js → array-CVEnNWng.js} +3 -3
  88. package/dist/dev/packages/shared-chunks/{array-utils-BEaSKdEb.js → array-utils-CZQxrdD3.js} +1 -1
  89. package/dist/dev/packages/shared-chunks/{cache-CeWOBNQg.js → cache-DGDPVCpC.js} +2 -3
  90. package/dist/dev/packages/shared-chunks/{capabilities-CZkuOqqC.js → capabilities-CajW4QjE.js} +1 -1
  91. package/dist/dev/packages/shared-chunks/{chain-tags-DfmU63mS.js → chain-tags-uWSImHzB.js} +4 -4
  92. package/dist/dev/packages/shared-chunks/{collections-DEt-i-8B.js → collections-DPkjqeA3.js} +2 -2
  93. package/dist/dev/packages/shared-chunks/{compiler-DhH2WLpA.js → compiler-QUSl_urU.js} +3 -3
  94. package/dist/dev/packages/shared-chunks/{computed-Daavz6vC.js → computed-BPCtuOxQ.js} +6 -6
  95. package/dist/dev/packages/shared-chunks/{curly-YoYS2vXw.js → curly-Ei5G8jhk.js} +7 -7
  96. package/dist/dev/packages/shared-chunks/{curried-Cnjy9_ug.js → curried-BZnYakIg.js} +1 -1
  97. package/dist/dev/packages/shared-chunks/{decorator-DYQwMItS.js → decorator-B5Uh5NFI.js} +1 -1
  98. package/dist/dev/packages/shared-chunks/{element-bBwMD8cw.js → element-Cgoi4ldD.js} +3 -25
  99. package/dist/dev/packages/shared-chunks/{events-B1lx9T1I.js → events-6aFVjD4k.js} +1 -1
  100. package/dist/{prod/packages/shared-chunks/flags-B9qxc-pB.js → dev/packages/shared-chunks/flags-BZxHQ0yn.js} +1 -1
  101. package/dist/dev/packages/shared-chunks/get-B4o_4OLA.js +40 -0
  102. package/dist/{prod/packages/shared-chunks/get_properties-wj_Qmotj.js → dev/packages/shared-chunks/get_properties-Cm2sWt5f.js} +1 -1
  103. package/dist/dev/packages/shared-chunks/{guid-PO2v9BaN.js → guid-Cbq2sNV_.js} +1 -1
  104. package/dist/dev/packages/shared-chunks/hash-Bg4r3CU4.js +57 -0
  105. package/dist/dev/packages/shared-chunks/{helper-Bm6EhgSW.js → helper--ZiOCQkd.js} +21 -9
  106. package/dist/dev/packages/shared-chunks/{index-DX90CU4L.js → index-BGP1rw3B.js} +1 -1
  107. package/dist/dev/packages/shared-chunks/{index-dyv6rcBf.js → index-C5Q8WHUG.js} +304 -201
  108. package/dist/dev/packages/shared-chunks/{index-DkwVSPP5.js → index-DaFzpTIE.js} +10 -9
  109. package/dist/dev/packages/shared-chunks/{injected_property-B075jH6c.js → injected_property-CbBLr5jt.js} +2 -2
  110. package/dist/dev/packages/shared-chunks/{internal-Bpr6ihB_.js → internal-DTOXyEGM.js} +4 -4
  111. package/dist/dev/packages/shared-chunks/{internal-helper-IC87S6iZ.js → internal-helper-CKrni0b_.js} +1 -1
  112. package/dist/dev/packages/shared-chunks/{invoke-Ds0KEfP_.js → invoke-d9sqa50M.js} +3 -3
  113. package/dist/dev/packages/shared-chunks/{libraries-P8Ins5CB.js → libraries-DwffpMGE.js} +1 -1
  114. package/dist/dev/packages/shared-chunks/{meta-Cjo3zQJq.js → meta-BqC7f9Ia.js} +1 -1
  115. package/dist/{prod/packages/shared-chunks/namespace_search-TFdmjK_a.js → dev/packages/shared-chunks/namespace_search-BfvzEQzN.js} +1 -1
  116. package/dist/dev/packages/shared-chunks/{normalize-CxG_iVLJ.js → normalize-CKySQVU7.js} +2 -2
  117. package/dist/dev/packages/shared-chunks/{or-Bg6rCMF8.js → not-JB6ln6bJ.js} +36 -36
  118. package/dist/dev/packages/shared-chunks/{observers-CejcZw5s.js → observers-DMlX2nCi.js} +5 -5
  119. package/dist/dev/packages/shared-chunks/{on-Ch_lyozr.js → on-CQqC2-wL.js} +29 -18
  120. package/dist/dev/packages/shared-chunks/{present-D0EfKzC6.js → present-B1rrjAVM.js} +1 -1
  121. package/dist/{prod/packages/shared-chunks/program-CF651Zuj.js → dev/packages/shared-chunks/program-DlgjqLa6.js} +3 -3
  122. package/dist/dev/packages/shared-chunks/{program-context-BaYVr5GA.js → program-context-Dq8xN2HI.js} +5 -4
  123. package/dist/dev/packages/shared-chunks/{property_get-BjbsrgpU.js → property_get-CRP7MFz_.js} +3 -3
  124. package/dist/dev/packages/shared-chunks/{property_set-LJskl202.js → property_set-qCUylPEK.js} +3 -3
  125. package/dist/dev/packages/shared-chunks/{reference-C-OXd_kp.js → reference-BqOLhKFy.js} +3 -3
  126. package/dist/dev/packages/shared-chunks/{registers-Buvdhhxx.js → registers-C_W2qYHJ.js} +1 -1
  127. package/dist/dev/packages/shared-chunks/{rehydrate-builder-IH4d_JQy.js → rehydrate-builder-C6k1XhET.js} +4 -4
  128. package/dist/dev/packages/shared-chunks/{render-Dz3OWqXy.js → render-87_sKZ_k.js} +94 -94
  129. package/dist/dev/packages/shared-chunks/{rsvp-C6j8G1D1.js → rsvp-aLN_pQtn.js} +4 -4
  130. package/dist/dev/packages/shared-chunks/{serialize-builder-DKliZPPG.js → serialize-builder-BlxBjwO-.js} +2 -2
  131. package/dist/dev/packages/shared-chunks/{set_properties-CNds2HCH.js → set_properties-C4TSebH6.js} +2 -2
  132. package/dist/dev/packages/shared-chunks/{setup-registry-C_YovxNX.js → setup-registry-Dovj1LIQ.js} +18 -18
  133. package/dist/{prod/packages/shared-chunks/simple-cast-BXTrayoV.js → dev/packages/shared-chunks/simple-cast-DCvJLSin.js} +1 -1
  134. package/dist/{prod/packages/shared-chunks/super-D4qkU4uq.js → dev/packages/shared-chunks/super-BBBjgF69.js} +1 -1
  135. package/dist/{prod/packages/shared-chunks/syscall-ops-nrBHMOTp.js → dev/packages/shared-chunks/syscall-ops-CN7STuUn.js} +1 -1
  136. package/dist/dev/packages/shared-chunks/{template-B0Apv9g2.js → template-BRrQR6KS.js} +1 -1
  137. package/dist/dev/packages/shared-chunks/{template-only-BxYzSEnC.js → template-only-Cu639ICT.js} +2 -4
  138. package/dist/dev/packages/shared-chunks/{textarea-DHjEFpZu.js → textarea-B5TmhnQU.js} +14 -30
  139. package/dist/dev/packages/shared-chunks/{tracked-B76E1nGz.js → tracked-DEyf0T_X.js} +5 -5
  140. package/dist/dev/packages/shared-chunks/{tracked-data-CH1USZZy.js → tracked-data-DgqqRdYO.js} +2 -2
  141. package/dist/dev/packages/shared-chunks/{unique-id-Hd96VZlE.js → unique-id-Csxuh1I7.js} +2 -6
  142. package/dist/dev/packages/shared-chunks/{unrecognized-url-error-BQdkjTtZ.js → unrecognized-url-error-DyurFqvv.js} +2 -2
  143. package/dist/{prod/packages/shared-chunks/vm-ops-5QCUIRx4.js → dev/packages/shared-chunks/vm-ops-ImHv0Wtg.js} +1 -1
  144. package/dist/prod/packages/@ember/-internals/glimmer/index.js +11 -11
  145. package/dist/prod/packages/@ember/-internals/metal/index.js +18 -18
  146. package/dist/prod/packages/@ember/-internals/routing/index.js +3 -3
  147. package/dist/prod/packages/@ember/-internals/runtime/index.js +1 -1
  148. package/dist/prod/packages/@ember/-internals/runtime/lib/ext/rsvp.js +1 -1
  149. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +7 -7
  150. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +1 -1
  151. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -3
  152. package/dist/prod/packages/@ember/-internals/utils/index.js +2 -2
  153. package/dist/prod/packages/@ember/-internals/views/lib/mixins/action_support.js +1 -1
  154. package/dist/prod/packages/@ember/-internals/views/lib/system/event_dispatcher.js +2 -2
  155. package/dist/prod/packages/@ember/-internals/views/lib/system/utils.js +1 -1
  156. package/dist/prod/packages/@ember/-internals/views/lib/views/core_view.js +1 -1
  157. package/dist/prod/packages/@ember/application/index.js +5 -6
  158. package/dist/prod/packages/@ember/application/instance.js +4 -4
  159. package/dist/prod/packages/@ember/application/namespace.js +3 -3
  160. package/dist/prod/packages/@ember/array/index.js +11 -58
  161. package/dist/prod/packages/@ember/array/lib/is-array.js +64 -0
  162. package/dist/prod/packages/@ember/array/proxy.js +8 -8
  163. package/dist/prod/packages/@ember/component/helper.js +1 -1
  164. package/dist/prod/packages/@ember/component/index.js +21 -15
  165. package/dist/prod/packages/@ember/component/template-only.js +1 -1
  166. package/dist/prod/packages/@ember/controller/index.js +3 -3
  167. package/dist/prod/packages/@ember/debug/data-adapter.js +3 -3
  168. package/dist/prod/packages/@ember/engine/index.js +5 -5
  169. package/dist/prod/packages/@ember/engine/instance.js +2 -2
  170. package/dist/prod/packages/@ember/helper/index.js +1132 -98
  171. package/dist/prod/packages/@ember/modifier/index.js +2 -2
  172. package/dist/prod/packages/@ember/modifier/on.js +1 -1
  173. package/dist/prod/packages/@ember/object/-internals.js +2 -2
  174. package/dist/prod/packages/@ember/object/compat.js +3 -35
  175. package/dist/prod/packages/@ember/object/computed.js +2 -2
  176. package/dist/prod/packages/@ember/object/core.js +7 -7
  177. package/dist/prod/packages/@ember/object/evented.js +2 -2
  178. package/dist/prod/packages/@ember/object/events.js +1 -1
  179. package/dist/prod/packages/@ember/object/index.js +30 -25
  180. package/dist/prod/packages/@ember/object/internals.js +2 -2
  181. package/dist/prod/packages/@ember/object/lib/computed/computed_macros.js +4 -4
  182. package/dist/prod/packages/@ember/object/lib/computed/reduce_computed_macros.js +2 -2
  183. package/dist/prod/packages/@ember/object/mixin.js +6 -6
  184. package/dist/prod/packages/@ember/object/observable.js +7 -7
  185. package/dist/prod/packages/@ember/object/observers.js +1 -1
  186. package/dist/prod/packages/@ember/object/promise-proxy-mixin.js +3 -3
  187. package/dist/prod/packages/@ember/reactive/collections.js +153 -153
  188. package/dist/prod/packages/@ember/renderer/index.js +1 -1
  189. package/dist/prod/packages/@ember/routing/index.js +18 -34
  190. package/dist/prod/packages/@ember/routing/lib/generate_controller.js +1 -2
  191. package/dist/prod/packages/@ember/routing/lib/routing-service.js +4 -4
  192. package/dist/prod/packages/@ember/routing/lib/utils.js +3 -3
  193. package/dist/prod/packages/@ember/routing/route.js +12 -12
  194. package/dist/prod/packages/@ember/routing/router-service.js +24 -17
  195. package/dist/prod/packages/@ember/routing/router.js +5 -5
  196. package/dist/prod/packages/@ember/runloop/index.js +1 -1
  197. package/dist/prod/packages/@ember/service/index.js +1 -1
  198. package/dist/prod/packages/@ember/template-compiler/lib/compile-options.js +3 -3
  199. package/dist/prod/packages/@ember/template-compiler/lib/template.js +2 -2
  200. package/dist/prod/packages/@ember/template-factory/index.js +1 -1
  201. package/dist/prod/packages/@ember/utils/lib/is_empty.js +1 -1
  202. package/dist/prod/packages/@glimmer/encoder/index.js +1 -1
  203. package/dist/prod/packages/@glimmer/manager/index.js +4 -4
  204. package/dist/prod/packages/@glimmer/node/index.js +3 -3
  205. package/dist/prod/packages/@glimmer/opcode-compiler/index.js +2 -2
  206. package/dist/prod/packages/@glimmer/program/index.js +10 -10
  207. package/dist/prod/packages/@glimmer/reference/index.js +5 -5
  208. package/dist/prod/packages/@glimmer/runtime/index.js +13 -13
  209. package/dist/prod/packages/@glimmer/tracking/index.js +2 -2
  210. package/dist/prod/packages/@glimmer/tracking/primitives/cache/index.js +1 -1
  211. package/dist/prod/packages/@glimmer/util/index.js +4 -4
  212. package/dist/prod/packages/@glimmer/validator/index.js +3 -3
  213. package/dist/prod/packages/@glimmer/vm/index.js +2 -2
  214. package/dist/prod/packages/ember/version.js +1 -1
  215. package/dist/prod/packages/ember-template-compiler/index.js +4 -4
  216. package/dist/prod/packages/router_js/index.js +2 -2
  217. package/dist/prod/packages/rsvp/index.js +1 -1
  218. package/dist/prod/packages/shared-chunks/{alias-DsIh-16z.js → alias-Bod6qdNp.js} +7 -7
  219. package/dist/prod/packages/shared-chunks/{api-CGZbGcvX.js → api-B_poQGXS.js} +6 -6
  220. package/dist/prod/packages/shared-chunks/{element-builder-CZePCkbA.js → api-CQexacBn.js} +139 -120
  221. package/dist/prod/packages/shared-chunks/{api-DOLN_cR2.js → api-DlJKfm_f.js} +3 -3
  222. package/dist/prod/packages/shared-chunks/{args-proxy-CaXVcI8G.js → args-proxy-CCoFtYLS.js} +2 -2
  223. package/dist/prod/packages/shared-chunks/{debug-render-tree-CYENUjgX.js → arguments-BzAkZVBa.js} +198 -198
  224. package/dist/prod/packages/shared-chunks/{array-DYFI95FA.js → array-BzReKMeW.js} +3 -3
  225. package/dist/prod/packages/shared-chunks/{array-utils-BEaSKdEb.js → array-utils-CZQxrdD3.js} +1 -1
  226. package/dist/prod/packages/shared-chunks/{cache-CG6_L9db.js → cache-CofLhaS4.js} +1 -2
  227. package/dist/prod/packages/shared-chunks/{capabilities-_5e35539.js → capabilities-BuVYh-vx.js} +1 -1
  228. package/dist/prod/packages/shared-chunks/{chain-tags-BP0V2LnZ.js → chain-tags-B2J7DsxO.js} +4 -4
  229. package/dist/prod/packages/shared-chunks/{collections-By4M3cTy.js → collections-GpG8lT2g.js} +10 -10
  230. package/dist/prod/packages/shared-chunks/{compiler-DQmEjFyx.js → compiler-lBSssiWp.js} +2 -2
  231. package/dist/prod/packages/shared-chunks/{computed-D6MVTTDd.js → computed-DtIStxvq.js} +6 -6
  232. package/dist/prod/packages/shared-chunks/{curly-DCYSwLtz.js → curly-IY06zACp.js} +7 -7
  233. package/dist/prod/packages/shared-chunks/{curried-Cnjy9_ug.js → curried-BZnYakIg.js} +1 -1
  234. package/dist/prod/packages/shared-chunks/{decorator-B8Lpq40g.js → decorator-9ikVwsjY.js} +1 -1
  235. package/dist/prod/packages/shared-chunks/{element-CT5H5uxF.js → element-BmBjPjkQ.js} +3 -25
  236. package/dist/prod/packages/shared-chunks/{events-C7aYCy0N.js → events-DYrYz3V8.js} +1 -1
  237. package/dist/{dev/packages/shared-chunks/flags-B9qxc-pB.js → prod/packages/shared-chunks/flags-BZxHQ0yn.js} +1 -1
  238. package/dist/prod/packages/shared-chunks/get-DpBAICuC.js +40 -0
  239. package/dist/{dev/packages/shared-chunks/get_properties-B203vZpz.js → prod/packages/shared-chunks/get_properties-Dg3xFpiS.js} +1 -1
  240. package/dist/prod/packages/shared-chunks/{guid-PO2v9BaN.js → guid-Cbq2sNV_.js} +1 -1
  241. package/dist/prod/packages/shared-chunks/hash-D31JO-BD.js +57 -0
  242. package/dist/prod/packages/shared-chunks/{helper-CCK8Ef0x.js → helper-Df5MpdcT.js} +21 -9
  243. package/dist/prod/packages/shared-chunks/{index-DabsnYit.js → index-BQaaoknf.js} +301 -198
  244. package/dist/prod/packages/shared-chunks/{index-D-rcNBLp.js → index-Bf53M8eS.js} +9 -8
  245. package/dist/prod/packages/shared-chunks/{injected_property-COGiYHKc.js → injected_property-Y-FadDej.js} +2 -2
  246. package/dist/prod/packages/shared-chunks/{internal-BEJC2IJ-.js → internal-BQ7zHrqS.js} +4 -4
  247. package/dist/prod/packages/shared-chunks/{internal-helper-CoxiRnnb.js → internal-helper-Bz1lpDXr.js} +1 -1
  248. package/dist/prod/packages/shared-chunks/{invoke-D_jsLbsj.js → invoke-DhQ5QRp2.js} +3 -3
  249. package/dist/prod/packages/shared-chunks/{libraries-Bs3H8iwC.js → libraries-DBql0hdn.js} +2 -2
  250. package/dist/prod/packages/shared-chunks/{meta-Ce6-qROq.js → meta-BJtIZDir.js} +1 -1
  251. package/dist/{dev/packages/shared-chunks/namespace_search-TFdmjK_a.js → prod/packages/shared-chunks/namespace_search-BfvzEQzN.js} +1 -1
  252. package/dist/prod/packages/shared-chunks/{normalize-Bx4H3NjB.js → normalize-C_IStty9.js} +2 -2
  253. package/dist/prod/packages/shared-chunks/{or-sYlRiUn_.js → not-Bm2-x-jD.js} +28 -28
  254. package/dist/prod/packages/shared-chunks/{observers-Ci31SE36.js → observers-BmobpXAF.js} +5 -5
  255. package/dist/prod/packages/shared-chunks/{on-Dgmychhk.js → on-8aS8t_5D.js} +29 -18
  256. package/dist/{dev/packages/shared-chunks/program-CPXeXWVB.js → prod/packages/shared-chunks/program-BAh__OXZ.js} +3 -3
  257. package/dist/prod/packages/shared-chunks/{program-context-DmI53TzJ.js → program-context-COSioH46.js} +5 -4
  258. package/dist/prod/packages/shared-chunks/{property_get-Sw0SicEZ.js → property_get-DAKgbeJX.js} +2 -2
  259. package/dist/prod/packages/shared-chunks/{property_set-SHEIPMUG.js → property_set-BaQJdVfS.js} +3 -3
  260. package/dist/prod/packages/shared-chunks/{reference-D2agTt1V.js → reference-CG0yPgLy.js} +3 -3
  261. package/dist/prod/packages/shared-chunks/{registers-Buvdhhxx.js → registers-C_W2qYHJ.js} +1 -1
  262. package/dist/prod/packages/shared-chunks/{rehydrate-builder-B7MtrWip.js → rehydrate-builder-Blt1x9MP.js} +4 -4
  263. package/dist/prod/packages/shared-chunks/{render-B790-vbk.js → render-Dx7lr1hR.js} +94 -94
  264. package/dist/prod/packages/shared-chunks/{rsvp-C6j8G1D1.js → rsvp-aLN_pQtn.js} +4 -4
  265. package/dist/prod/packages/shared-chunks/{serialize-builder-kEyOKbzp.js → serialize-builder-BvAXYHTr.js} +2 -2
  266. package/dist/prod/packages/shared-chunks/{set_properties-CcLLHg1w.js → set_properties-Qxhw4qzw.js} +2 -2
  267. package/dist/prod/packages/shared-chunks/{setup-registry-D14I0iDX.js → setup-registry-DMAzVcVn.js} +18 -18
  268. package/dist/{dev/packages/shared-chunks/simple-cast-BXTrayoV.js → prod/packages/shared-chunks/simple-cast-DCvJLSin.js} +1 -1
  269. package/dist/{dev/packages/shared-chunks/super-D4qkU4uq.js → prod/packages/shared-chunks/super-BBBjgF69.js} +1 -1
  270. package/dist/{dev/packages/shared-chunks/syscall-ops-nrBHMOTp.js → prod/packages/shared-chunks/syscall-ops-CN7STuUn.js} +1 -1
  271. package/dist/prod/packages/shared-chunks/{template-B0Apv9g2.js → template-BRrQR6KS.js} +1 -1
  272. package/dist/prod/packages/shared-chunks/{template-only-CP0NT7ce.js → template-only-DKNcKM5b.js} +2 -4
  273. package/dist/prod/packages/shared-chunks/{textarea-B_JYBuE8.js → textarea-CQmTzSKe.js} +13 -29
  274. package/dist/prod/packages/shared-chunks/{tracked-CXcapuAm.js → tracked-B9380JtC.js} +5 -5
  275. package/dist/prod/packages/shared-chunks/{tracked-data-DNDzhYXf.js → tracked-data-CHq42QHb.js} +2 -2
  276. package/dist/prod/packages/shared-chunks/{unique-id-Hn8Qp4dS.js → unique-id-BJb1p8EG.js} +2 -6
  277. package/dist/prod/packages/shared-chunks/{unrecognized-url-error-ClNyMFJt.js → unrecognized-url-error-DgXBAzKl.js} +2 -2
  278. package/dist/{dev/packages/shared-chunks/vm-ops-5QCUIRx4.js → prod/packages/shared-chunks/vm-ops-ImHv0Wtg.js} +1 -1
  279. package/docs/data.json +1435 -1617
  280. package/package.json +6 -7
  281. package/types/stable/@ember/-internals/glimmer/index.d.ts +24 -353
  282. package/types/stable/@ember/-internals/glimmer/lib/component-managers/mount.d.ts +1 -1
  283. package/types/stable/@ember/-internals/glimmer/lib/component-managers/outlet.d.ts +1 -1
  284. package/types/stable/@ember/-internals/glimmer/lib/component.d.ts +9 -3
  285. package/types/stable/@ember/-internals/glimmer/lib/glimmer-tracking-docs.d.ts +12 -12
  286. package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +18 -6
  287. package/types/stable/@ember/-internals/glimmer/lib/helpers/each-in.d.ts +183 -72
  288. package/types/stable/@ember/-internals/glimmer/lib/helpers/element.d.ts +0 -22
  289. package/types/stable/@ember/-internals/glimmer/lib/helpers/mut.d.ts +25 -55
  290. package/types/stable/@ember/-internals/glimmer/lib/helpers/readonly.d.ts +7 -9
  291. package/types/stable/@ember/-internals/glimmer/lib/helpers/unbound.d.ts +6 -2
  292. package/types/stable/@ember/-internals/glimmer/lib/helpers/unique-id.d.ts +0 -3
  293. package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +1 -2
  294. package/types/stable/@ember/-internals/glimmer/lib/syntax/mount.d.ts +18 -12
  295. package/types/stable/@ember/-internals/glimmer/lib/syntax/outlet.d.ts +23 -11
  296. package/types/stable/@ember/-internals/runtime/lib/mixins/target_action_support.d.ts +1 -1
  297. package/types/stable/@ember/array/index.d.ts +6 -29
  298. package/types/stable/@ember/array/lib/is-array.d.ts +35 -0
  299. package/types/stable/@ember/component/template-only.d.ts +1 -3
  300. package/types/stable/@ember/controller/index.d.ts +1 -1
  301. package/types/stable/@ember/helper/index.d.ts +1111 -90
  302. package/types/stable/@ember/object/compat.d.ts +0 -32
  303. package/types/stable/@ember/object/index.d.ts +4 -3
  304. package/types/stable/@ember/object/observable.d.ts +4 -0
  305. package/types/stable/@ember/reactive/collections.d.ts +0 -6
  306. package/types/stable/@ember/routing/lib/generate_controller.d.ts +1 -1
  307. package/types/stable/@ember/routing/route.d.ts +2 -2
  308. package/types/stable/@ember/routing/router-service.d.ts +20 -12
  309. package/types/stable/@glimmer/runtime/lib/component/template-only.d.ts +0 -2
  310. package/types/stable/@glimmer/runtime/lib/dom/sanitized-values.d.ts +2 -2
  311. package/types/stable/@glimmer/runtime/lib/helpers/array.d.ts +0 -33
  312. package/types/stable/@glimmer/runtime/lib/helpers/concat.d.ts +0 -20
  313. package/types/stable/@glimmer/runtime/lib/helpers/fn.d.ts +0 -64
  314. package/types/stable/@glimmer/runtime/lib/helpers/get.d.ts +0 -77
  315. package/types/stable/@glimmer/runtime/lib/helpers/hash.d.ts +0 -36
  316. package/types/stable/@glimmer/syntax/lib/get-template-locals.d.ts +1 -1
  317. package/types/stable/@glimmer/tracking/index.d.ts +12 -12
  318. package/types/stable/index.d.ts +1 -14
  319. package/dist/dev/packages/shared-chunks/get-CO3EIWsm.js +0 -138
  320. package/dist/dev/packages/shared-chunks/hash-2-93qikL.js +0 -192
  321. package/dist/prod/packages/shared-chunks/get-tlL23wmp.js +0 -138
  322. package/dist/prod/packages/shared-chunks/hash-C6IoC4eR.js +0 -192
  323. package/types/stable/@ember/-internals/glimmer/lib/helpers/array.d.ts +0 -41
  324. package/types/stable/@ember/-internals/glimmer/lib/helpers/component.d.ts +0 -149
  325. package/types/stable/@ember/-internals/glimmer/lib/helpers/concat.d.ts +0 -28
  326. package/types/stable/@ember/-internals/glimmer/lib/helpers/fn.d.ts +0 -73
  327. package/types/stable/@ember/-internals/glimmer/lib/helpers/get.d.ts +0 -100
  328. package/types/stable/@ember/-internals/glimmer/lib/helpers/hash.d.ts +0 -44
  329. package/types/stable/@ember/-internals/glimmer/lib/helpers/helper.d.ts +0 -43
  330. package/types/stable/@ember/-internals/glimmer/lib/helpers/if-unless.d.ts +0 -182
  331. package/types/stable/@ember/-internals/glimmer/lib/helpers/log.d.ts +0 -19
  332. package/types/stable/@ember/-internals/glimmer/lib/helpers/modifier.d.ts +0 -42
  333. package/types/stable/@ember/-internals/glimmer/lib/helpers/page-title.d.ts +0 -20
  334. package/types/stable/@ember/-internals/glimmer/lib/modifiers/on.d.ts +0 -95
  335. package/types/stable/@ember/-internals/glimmer/lib/syntax/in-element.d.ts +0 -47
  336. package/types/stable/@ember/-internals/glimmer/lib/syntax/let.d.ts +0 -55
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "ember-source",
3
- "version": "7.2.0-alpha.4",
3
+ "version": "7.2.0",
4
4
  "description": "A JavaScript framework for creating ambitious web applications",
5
+ "type": "module",
5
6
  "keywords": [
6
7
  "ember-addon"
7
8
  ],
@@ -51,7 +52,7 @@
51
52
  "lint:format": "prettier --check .",
52
53
  "lint:format:fix": "prettier --write .",
53
54
  "test": "testem ci -f testem.cjs --host 127.0.0.1 --port 13141",
54
- "test:blueprints": "mocha node-tests/blueprints/**/*-test.js",
55
+ "test:blueprints": "pnpm --filter ember-test-node-blueprints test:node",
55
56
  "test:node": "qunit tests/node/**/*-test.cjs",
56
57
  "test:node:vitest": "pnpm --filter ember-test-node-vitest test:node",
57
58
  "test:browserstack": "node bin/run-browserstack-tests.cjs",
@@ -210,6 +211,7 @@
210
211
  "@ember/application/namespace.js": "ember-source/@ember/application/namespace.js",
211
212
  "@ember/array/-internals.js": "ember-source/@ember/array/-internals.js",
212
213
  "@ember/array/index.js": "ember-source/@ember/array/index.js",
214
+ "@ember/array/lib/is-array.js": "ember-source/@ember/array/lib/is-array.js",
213
215
  "@ember/array/lib/make-array.js": "ember-source/@ember/array/lib/make-array.js",
214
216
  "@ember/array/make.js": "ember-source/@ember/array/make.js",
215
217
  "@ember/array/mutable.js": "ember-source/@ember/array/mutable.js",
@@ -365,9 +367,6 @@
365
367
  }
366
368
  },
367
369
  "packageManager": "pnpm@10.33.2",
368
- "_originalVersion": "7.2.0-alpha.1",
369
- "_versionPreviouslyCalculated": true,
370
- "publishConfig": {
371
- "tag": "alpha"
372
- }
370
+ "_originalVersion": "7.2.0",
371
+ "_versionPreviouslyCalculated": true
373
372
  }
@@ -2,6 +2,23 @@ declare module '@ember/-internals/glimmer' {
2
2
  /**
3
3
  [Glimmer](https://github.com/tildeio/glimmer) is a templating engine used by Ember.js that is compatible with a subset of the [Handlebars](http://handlebarsjs.com/) syntax.
4
4
 
5
+ Ember ships with two types of JavaScript classes for components:
6
+
7
+ 1. Glimmer components, imported from `@glimmer/component`, which are the
8
+ default component's for Ember Octane (3.15) and more recent editions.
9
+ 2. Classic components, imported from `@ember/component`, which were the
10
+ default for older editions of Ember (pre 3.15) but are still supported.
11
+
12
+ Below is the documentation for Classic components. If you are looking for the
13
+ API documentation for Template-only or Glimmer components, it is [available
14
+ here](/ember/release/modules/@glimmer%2Fcomponent).
15
+
16
+ Note: Prior to Ember 6.8, by default, components were authored in paired `.hbs` and `.js`
17
+ files. This is still supported, but the default authoring format is now `.gjs` or "template tag".
18
+ The documentation for `@ember/component` still refers to the older authoring format. To read about
19
+ the new authoring format, see the
20
+ [Glimmer Component API documentation](/ember/release/modules/@glimmer%2Fcomponent).
21
+
5
22
  ### Showing a property
6
23
 
7
24
  Templates manage the flow of an application's UI, and display state (through
@@ -65,8 +82,8 @@ declare module '@ember/-internals/glimmer' {
65
82
  )}}></span>
66
83
  ```
67
84
 
68
- Ember's built-in helpers are described under the [Ember.Templates.helpers](/ember/release/classes/Ember.Templates.helpers)
69
- namespace. Documentation on creating custom helpers can be found under
85
+ Ember's built-in and importable helpers are described under the [@ember/helper](../modules/@ember%2Fhelper).
86
+ module. Documentation on creating custom helpers can be found under
70
87
  [helper](/ember/release/functions/@ember%2Fcomponent%2Fhelper/helper) (or
71
88
  under [Helper](/ember/release/classes/Helper) if a helper requires access to
72
89
  dependency injection).
@@ -84,360 +101,14 @@ declare module '@ember/-internals/glimmer' {
84
101
  @module ember
85
102
  */
86
103
  /**
104
+
105
+ ## Looking for template keywords and helpers?
106
+
107
+ See [@ember/helper](../modules/@ember%2Fhelper).
108
+
87
109
  @class Ember.Templates.helpers
88
110
  @public
89
111
  */
90
- /**
91
- `{{yield}}` denotes an area of a template that will be rendered inside
92
- of another template.
93
-
94
- ### Use with `Component`
95
-
96
- When designing components `{{yield}}` is used to denote where, inside the component's
97
- template, an optional block passed to the component should render:
98
-
99
- ```app/templates/application.hbs
100
- <LabeledTextfield @value={{@model.name}}>
101
- First name:
102
- </LabeledTextfield>
103
- ```
104
-
105
- ```app/components/labeled-textfield.hbs
106
- <label>
107
- {{yield}} <Input @value={{@value}} />
108
- </label>
109
- ```
110
-
111
- Result:
112
-
113
- ```html
114
- <label>
115
- First name: <input type="text" />
116
- </label>
117
- ```
118
-
119
- Additionally you can `yield` properties into the context for use by the consumer:
120
-
121
- ```app/templates/application.hbs
122
- <LabeledTextfield @value={{@model.validation}} @validator={{this.firstNameValidator}} as |validationError|>
123
- {{#if validationError}}
124
- <p class="error">{{validationError}}</p>
125
- {{/if}}
126
- First name:
127
- </LabeledTextfield>
128
- ```
129
-
130
- ```app/components/labeled-textfield.hbs
131
- <label>
132
- {{yield this.validationError}} <Input @value={{@value}} />
133
- </label>
134
- ```
135
-
136
- Result:
137
-
138
- ```html
139
- <label>
140
- <p class="error">First Name must be at least 3 characters long.</p>
141
- First name: <input type="text" />
142
- </label>
143
- ```
144
-
145
- `yield` can also be used with the `hash` helper:
146
-
147
- ```app/templates/application.hbs
148
- <DateRanges @value={{@model.date}} as |range|>
149
- Start date: {{range.start}}
150
- End date: {{range.end}}
151
- </DateRanges>
152
- ```
153
-
154
- ```app/components/date-ranges.hbs
155
- <div>
156
- {{yield (hash start=@value.start end=@value.end)}}
157
- </div>
158
- ```
159
-
160
- Result:
161
-
162
- ```html
163
- <div>
164
- Start date: July 1st
165
- End date: July 30th
166
- </div>
167
- ```
168
-
169
- Multiple values can be yielded as block params:
170
-
171
- ```app/templates/application.hbs
172
- <Banner @value={{@model}} as |title subtitle body|>
173
- <h1>{{title}}</h1>
174
- <h2>{{subtitle}}</h2>
175
- {{body}}
176
- </Banner>
177
- ```
178
-
179
- ```app/components/banner.hbs
180
- <div>
181
- {{yield "Hello title" "hello subtitle" "body text"}}
182
- </div>
183
- ```
184
-
185
- Result:
186
-
187
- ```html
188
- <div>
189
- <h1>Hello title</h1>
190
- <h2>hello subtitle</h2>
191
- body text
192
- </div>
193
- ```
194
-
195
- However, it is preferred to use the hash helper, as this can prevent breaking changes to your component and also simplify the api for the component.
196
-
197
- Multiple components can be yielded with the `hash` and `component` helper:
198
-
199
- ```app/templates/application.hbs
200
- <Banner @value={{@model}} as |banner|>
201
- <banner.Title>Banner title</banner.Title>
202
- <banner.Subtitle>Banner subtitle</banner.Subtitle>
203
- <banner.Body>A load of body text</banner.Body>
204
- </Banner>
205
- ```
206
-
207
- ```app/components/banner.js
208
- import Title from './banner/title';
209
- import Subtitle from './banner/subtitle';
210
- import Body from './banner/body';
211
-
212
- export default class Banner extends Component {
213
- Title = Title;
214
- Subtitle = Subtitle;
215
- Body = Body;
216
- }
217
- ```
218
-
219
- ```app/components/banner.hbs
220
- <div>
221
- {{yield (hash
222
- Title=this.Title
223
- Subtitle=this.Subtitle
224
- Body=(component this.Body defaultArg="some value")
225
- )}}
226
- </div>
227
- ```
228
-
229
- Result:
230
-
231
- ```html
232
- <div>
233
- <h1>Banner title</h1>
234
- <h2>Banner subtitle</h2>
235
- A load of body text
236
- </div>
237
- ```
238
-
239
- A benefit of using this pattern is that the user of the component can change the order the components are displayed.
240
-
241
- ```app/templates/application.hbs
242
- <Banner @value={{@model}} as |banner|>
243
- <banner.Subtitle>Banner subtitle</banner.Subtitle>
244
- <banner.Title>Banner title</banner.Title>
245
- <banner.Body>A load of body text</banner.Body>
246
- </Banner>
247
- ```
248
-
249
- Result:
250
-
251
- ```html
252
- <div>
253
- <h2>Banner subtitle</h2>
254
- <h1>Banner title</h1>
255
- A load of body text
256
- </div>
257
- ```
258
-
259
- Another benefit to using `yield` with the `hash` and `component` helper
260
- is you can pass attributes and arguments to these components:
261
-
262
- ```app/templates/application.hbs
263
- <Banner @value={{@model}} as |banner|>
264
- <banner.Subtitle class="mb-1">Banner subtitle</banner.Subtitle>
265
- <banner.Title @variant="loud">Banner title</banner.Title>
266
- <banner.Body>A load of body text</banner.Body>
267
- </Banner>
268
- ```
269
-
270
- ```app/components/banner/subtitle.hbs
271
- {{!-- note the use of ..attributes --}}
272
- <h2 ...attributes>
273
- {{yield}}
274
- </h2>
275
- ```
276
-
277
- ```app/components/banner/title.hbs
278
- {{#if (eq @variant "loud")}}
279
- <h1 class="loud">{{yield}}</h1>
280
- {{else}}
281
- <h1 class="quiet">{{yield}}</h1>
282
- {{/if}}
283
- ```
284
-
285
- Result:
286
-
287
- ```html
288
- <div>
289
- <h2 class="mb-1">Banner subtitle</h2>
290
- <h1 class="loud">Banner title</h1>
291
- A load of body text
292
- </div>
293
- ```
294
-
295
- @method yield
296
- @for Ember.Templates.helpers
297
- @param {Hash} options
298
- @return {String} HTML string
299
- @public
300
- */
301
- /**
302
- `{{(has-block)}}` indicates if the component was invoked with a block.
303
-
304
- This component is invoked with a block:
305
-
306
- ```handlebars
307
- {{#my-component}}
308
- Hi Jen!
309
- {{/my-component}}
310
- ```
311
-
312
- This component is invoked without a block:
313
-
314
- ```handlebars
315
- {{my-component}}
316
- ```
317
-
318
- Using angle bracket invocation, this looks like:
319
-
320
- ```html
321
- <MyComponent>Hi Jen!</MyComponent> {{! with a block}}
322
- ```
323
-
324
- ```html
325
- <MyComponent/> {{! without a block}}
326
- ```
327
-
328
- This is useful when you want to create a component that can optionally take a block
329
- and then render a default template when it is not invoked with a block.
330
-
331
- ```app/templates/components/my-component.hbs
332
- {{#if (has-block)}}
333
- Welcome {{yield}}, we are happy you're here!
334
- {{else}}
335
- Hey you! You're great!
336
- {{/if}}
337
- ```
338
-
339
- @method has-block
340
- @for Ember.Templates.helpers
341
- @param {String} the name of the block. The name (at the moment) is either "main" or "inverse" (though only curly components support inverse)
342
- @return {Boolean} `true` if the component was invoked with a block
343
- @public
344
- */
345
- /**
346
- `{{(has-block-params)}}` indicates if the component was invoked with block params.
347
-
348
- This component is invoked with block params:
349
-
350
- ```handlebars
351
- {{#my-component as |favoriteFlavor|}}
352
- Hi Jen!
353
- {{/my-component}}
354
- ```
355
-
356
- This component is invoked without block params:
357
-
358
- ```handlebars
359
- {{#my-component}}
360
- Hi Jenn!
361
- {{/my-component}}
362
- ```
363
-
364
- With angle bracket syntax, block params look like this:
365
-
366
- ```handlebars
367
- <MyComponent as |favoriteFlavor|>
368
- Hi Jen!
369
- </MyComponent>
370
- ```
371
-
372
- And without block params:
373
-
374
- ```handlebars
375
- <MyComponent>
376
- Hi Jen!
377
- </MyComponent>
378
- ```
379
-
380
- This is useful when you want to create a component that can render itself
381
- differently when it is not invoked with block params.
382
-
383
- ```app/templates/components/my-component.hbs
384
- {{#if (has-block-params)}}
385
- Welcome {{yield this.favoriteFlavor}}, we're happy you're here and hope you
386
- enjoy your favorite ice cream flavor.
387
- {{else}}
388
- Welcome {{yield}}, we're happy you're here, but we're unsure what
389
- flavor ice cream you would enjoy.
390
- {{/if}}
391
- ```
392
-
393
- @method has-block-params
394
- @for Ember.Templates.helpers
395
- @param {String} the name of the block. The name (at the moment) is either "main" or "inverse" (though only curly components support inverse)
396
- @return {Boolean} `true` if the component was invoked with block params
397
- @public
398
- */
399
- /**
400
- Execute the `debugger` statement in the current template's context.
401
-
402
- ```handlebars
403
- {{debugger}}
404
- ```
405
-
406
- When using the debugger helper you will have access to a `get` function. This
407
- function retrieves values available in the context of the template.
408
- For example, if you're wondering why a value `{{foo}}` isn't rendering as
409
- expected within a template, you could place a `{{debugger}}` statement and,
410
- when the `debugger;` breakpoint is hit, you can attempt to retrieve this value:
411
-
412
- ```
413
- > get('foo')
414
- ```
415
-
416
- `get` is also aware of keywords. So in this situation
417
-
418
- ```handlebars
419
- {{#each this.items as |item|}}
420
- {{debugger}}
421
- {{/each}}
422
- ```
423
-
424
- You'll be able to get values from the current item:
425
-
426
- ```
427
- > get('item.name')
428
- ```
429
-
430
- You can also access the context of the view to make sure it is the object that
431
- you expect:
432
-
433
- ```
434
- > context
435
- ```
436
-
437
- @method debugger
438
- @for Ember.Templates.helpers
439
- @public
440
- */
441
112
  export { default as template, templateCacheCounters } from "@glimmer/opcode-compiler/lib/template";
442
113
  export { default as RootTemplate } from "@ember/-internals/glimmer/lib/templates/root";
443
114
  export { default as Input } from "@ember/-internals/glimmer/lib/components/input";
@@ -1,6 +1,6 @@
1
1
  declare module '@ember/-internals/glimmer/lib/component-managers/mount' {
2
2
  import type { InternalOwner } from "@ember/-internals/owner";
3
- import EngineInstance from "@ember/engine/instance";
3
+ import type EngineInstance from "@ember/engine/instance";
4
4
  import type { CapturedArguments, ComponentDefinition, CustomRenderNode, Destroyable, Environment, InternalComponentCapabilities, VMArguments, WithCreateInstance, WithCustomDebugRenderTree, WithDynamicLayout, WithSubOwner } from "@glimmer/interfaces";
5
5
  import type { Nullable } from "@ember/-internals/utility-types";
6
6
  import type { Reference } from "@glimmer/reference/lib/reference";
@@ -1,7 +1,7 @@
1
1
  declare module '@ember/-internals/glimmer/lib/component-managers/outlet' {
2
2
  import type { InternalOwner } from "@ember/-internals/owner";
3
3
  import type { Nullable } from "@ember/-internals/utility-types";
4
- import EngineInstance from "@ember/engine/instance";
4
+ import type EngineInstance from "@ember/engine/instance";
5
5
  import type { CompilableProgram, ComponentDefinition, CustomRenderNode, Destroyable, Environment, InternalComponentCapabilities, VMArguments, WithCreateInstance, WithCustomDebugRenderTree } from "@glimmer/interfaces";
6
6
  import type { Reference } from "@glimmer/reference/lib/reference";
7
7
  import type { DynamicScope } from "@ember/-internals/glimmer/lib/renderer";
@@ -168,6 +168,12 @@ declare module '@ember/-internals/glimmer/lib/component' {
168
168
  API documentation for Template-only or Glimmer components, it is [available
169
169
  here](/ember/release/modules/@glimmer%2Fcomponent).
170
170
 
171
+ Note: Prior to Ember 6.8, by default, components were authored in paired `.hbs` and `.js`
172
+ files. This is still supported, but the default authoring format is now `.gjs` or "template tag".
173
+ The documentation for `@ember/component` still refers to the older authoring format. To read about
174
+ the new authoring format, see the
175
+ [Glimmer Component API documentation](/ember/release/modules/@glimmer%2Fcomponent).
176
+
171
177
  ## Defining a Classic Component
172
178
 
173
179
  If you want to customize the component in order to handle events, transform
@@ -194,7 +200,7 @@ declare module '@ember/-internals/glimmer/lib/component' {
194
200
 
195
201
  And then use it in the component's template:
196
202
 
197
- ```app/templates/components/person-profile.hbs
203
+ ```app/components/person-profile.hbs
198
204
  <h1>{{this.displayName}}</h1>
199
205
  {{yield}}
200
206
  ```
@@ -582,7 +588,7 @@ declare module '@ember/-internals/glimmer/lib/component' {
582
588
  The `layout` property should be set to the default export of a template
583
589
  module, which is the name of a template file without the `.hbs` extension.
584
590
 
585
- ```app/templates/components/person-profile.hbs
591
+ ```app/components/person-profile.hbs
586
592
  <h1>Person's Title</h1>
587
593
  <div class='details'>{{yield}}</div>
588
594
  ```
@@ -651,7 +657,7 @@ declare module '@ember/-internals/glimmer/lib/component' {
651
657
 
652
658
  See the [Guide on Component event
653
659
  handlers](https://guides.emberjs.com/release/components/component-state-and-actions/#toc_html-modifiers-and-actions)
654
- and the [API docs for `on`](../Ember.Templates.helpers/methods/on?anchor=on)
660
+ and the [API docs for `on`](../functions/Keywords/on)
655
661
  for more details.
656
662
 
657
663
  ### Event Handler Methods
@@ -26,17 +26,7 @@ declare module '@ember/-internals/glimmer/lib/glimmer-tracking-docs' {
26
26
  property changes, any templates that used that property, directly or
27
27
  indirectly, will rerender. For instance, consider this component:
28
28
 
29
- ```handlebars
30
- <div>Count: {{this.count}}</div>
31
- <div>Times Ten: {{this.timesTen}}</div>
32
- <div>
33
- <button {{on "click" this.plusOne}}>
34
- Plus One
35
- </button>
36
- </div>
37
- ```
38
-
39
- ```javascript
29
+ ```gjs
40
30
  import Component from '@glimmer/component';
41
31
  import { tracked } from '@glimmer/tracking';
42
32
  import { action } from '@ember/object';
@@ -52,6 +42,16 @@ declare module '@ember/-internals/glimmer/lib/glimmer-tracking-docs' {
52
42
  plusOne() {
53
43
  this.count += 1;
54
44
  }
45
+
46
+ <template>
47
+ <div>Count: {{this.count}}</div>
48
+ <div>Times Ten: {{this.timesTen}}</div>
49
+ <div>
50
+ <button {{on "click" this.plusOne}}>
51
+ Plus One
52
+ </button>
53
+ </div>
54
+ </template>
55
55
  }
56
56
  ```
57
57
 
@@ -61,7 +61,7 @@ declare module '@ember/-internals/glimmer/lib/glimmer-tracking-docs' {
61
61
  will cause a rerender when updated - this includes through method calls and
62
62
  other means:
63
63
 
64
- ```javascript
64
+ ```gjs
65
65
  import Component from '@glimmer/component';
66
66
  import { tracked } from '@glimmer/tracking';
67
67
 
@@ -29,20 +29,32 @@ declare module '@ember/-internals/glimmer/lib/helper' {
29
29
  Ember Helpers are functions that can compute values, and are used in templates.
30
30
  For example, this code calls a helper named `format-currency`:
31
31
 
32
- ```app/templates/application.hbs
33
- <Cost @cents={{230}} />
32
+ ```gjs {data-filename="app/templates/application.gjs"}
33
+ import Cost from '../components/cost';
34
+
35
+ <template>
36
+ <Cost @cents={{230}} />
37
+ </template>
34
38
  ```
35
39
 
36
- ```app/components/cost.hbs
37
- <div>{{format-currency @cents currency="$"}}</div>
40
+ ```gjs {data-filename="app/components/cost.gjs"}
41
+ import formatCurrency from '../helpers/format-currency';
42
+
43
+ <template>
44
+ <div>{{formatCurrency @cents currency="$"}}</div>
45
+ </template>
38
46
  ```
39
47
 
40
48
  Additionally a helper can be called as a nested helper.
41
49
  In this example, we show the formatted currency value if the `showMoney`
42
50
  named argument is truthy.
43
51
 
44
- ```handlebars
45
- {{if @showMoney (format-currency @cents currency="$")}}
52
+ ```gjs
53
+ import formatCurrency from '../helpers/format-currency';
54
+
55
+ <template>
56
+ {{if @showMoney (formatCurrency @cents currency="$")}}
57
+ </template>
46
58
  ```
47
59
 
48
60
  Helpers defined using a class must provide a `compute` function. For example: