ember-source 7.2.0-alpha.4 → 7.2.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (326) 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 +21 -15
  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 +8 -27
  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 -3
  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 +12 -8
  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 +2281 -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-BYLB-q7a.js} +5 -3
  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-CO3EIWsm.js → get-6I3sjd-I.js} +33 -36
  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-2-93qikL.js → hash-6NDs_5_f.js} +18 -12
  105. package/dist/dev/packages/shared-chunks/{helper-Bm6EhgSW.js → helper-DIj85_-f.js} +21 -9
  106. package/dist/dev/packages/shared-chunks/{index-dyv6rcBf.js → index-B3pPx1fL.js} +113 -134
  107. package/dist/dev/packages/shared-chunks/{index-DX90CU4L.js → index-BGP1rw3B.js} +1 -1
  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-DYh6AY9Z.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-DlF0Wy7P.js} +10 -10
  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.es-DR7yS7qg.js} +150 -154
  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-9DCmHTFF.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-C4lYkaHj.js} +12 -8
  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-DQOhouG1.js} +2 -2
  142. package/dist/dev/packages/shared-chunks/{unrecognized-url-error-BQdkjTtZ.js → unrecognized-url-error-BJHjL30Q.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 +20 -14
  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 +8 -27
  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 -3
  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 +12 -8
  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 +2281 -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-DgHdPZ8u.js} +5 -3
  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-tlL23wmp.js → get-Dago5uGl.js} +33 -36
  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-C6IoC4eR.js → hash-gEXIsSO4.js} +24 -18
  242. package/dist/prod/packages/shared-chunks/{helper-CCK8Ef0x.js → helper-DkXiTBjc.js} +21 -9
  243. package/dist/prod/packages/shared-chunks/{index-D-rcNBLp.js → index-Bf53M8eS.js} +9 -8
  244. package/dist/prod/packages/shared-chunks/{index-DabsnYit.js → index-CslMfEpb.js} +110 -131
  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-BOIVROuv.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-BZHAxzdq.js} +10 -10
  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.es-DR7yS7qg.js} +150 -154
  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-U-6VaNQG.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-DOmZ1x0E.js} +11 -7
  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-o2pS74go.js} +2 -2
  277. package/dist/prod/packages/shared-chunks/{unrecognized-url-error-ClNyMFJt.js → unrecognized-url-error-EgNrnFu_.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 +316 -334
  280. package/package.json +6 -4
  281. package/types/stable/@ember/-internals/glimmer/index.d.ts +165 -121
  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 +8 -2
  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/array.d.ts +3 -1
  288. package/types/stable/@ember/-internals/glimmer/lib/helpers/component.d.ts +65 -121
  289. package/types/stable/@ember/-internals/glimmer/lib/helpers/concat.d.ts +8 -4
  290. package/types/stable/@ember/-internals/glimmer/lib/helpers/each-in.d.ts +16 -14
  291. package/types/stable/@ember/-internals/glimmer/lib/helpers/element.d.ts +2 -0
  292. package/types/stable/@ember/-internals/glimmer/lib/helpers/fn.d.ts +11 -7
  293. package/types/stable/@ember/-internals/glimmer/lib/helpers/get.d.ts +23 -29
  294. package/types/stable/@ember/-internals/glimmer/lib/helpers/hash.d.ts +3 -1
  295. package/types/stable/@ember/-internals/glimmer/lib/helpers/if-unless.d.ts +95 -49
  296. package/types/stable/@ember/-internals/glimmer/lib/helpers/mut.d.ts +23 -54
  297. package/types/stable/@ember/-internals/glimmer/lib/helpers/page-title.d.ts +6 -2
  298. package/types/stable/@ember/-internals/glimmer/lib/helpers/readonly.d.ts +4 -8
  299. package/types/stable/@ember/-internals/glimmer/lib/modifiers/on.d.ts +10 -10
  300. package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +1 -2
  301. package/types/stable/@ember/-internals/glimmer/lib/syntax/in-element.d.ts +2 -0
  302. package/types/stable/@ember/-internals/glimmer/lib/syntax/let.d.ts +2 -14
  303. package/types/stable/@ember/-internals/glimmer/lib/syntax/mount.d.ts +15 -11
  304. package/types/stable/@ember/-internals/glimmer/lib/syntax/outlet.d.ts +17 -10
  305. package/types/stable/@ember/-internals/runtime/lib/mixins/target_action_support.d.ts +1 -1
  306. package/types/stable/@ember/array/index.d.ts +6 -29
  307. package/types/stable/@ember/array/lib/is-array.d.ts +35 -0
  308. package/types/stable/@ember/component/template-only.d.ts +1 -3
  309. package/types/stable/@ember/controller/index.d.ts +1 -1
  310. package/types/stable/@ember/helper/index.d.ts +0 -19
  311. package/types/stable/@ember/object/index.d.ts +4 -3
  312. package/types/stable/@ember/object/observable.d.ts +4 -0
  313. package/types/stable/@ember/reactive/collections.d.ts +0 -6
  314. package/types/stable/@ember/routing/lib/generate_controller.d.ts +1 -1
  315. package/types/stable/@ember/routing/route.d.ts +2 -2
  316. package/types/stable/@ember/routing/router-service.d.ts +20 -12
  317. package/types/stable/@glimmer/runtime/lib/component/template-only.d.ts +0 -2
  318. package/types/stable/@glimmer/runtime/lib/dom/sanitized-values.d.ts +2 -2
  319. package/types/stable/@glimmer/runtime/lib/helpers/array.d.ts +1 -1
  320. package/types/stable/@glimmer/runtime/lib/helpers/concat.d.ts +8 -3
  321. package/types/stable/@glimmer/runtime/lib/helpers/fn.d.ts +13 -7
  322. package/types/stable/@glimmer/runtime/lib/helpers/get.d.ts +21 -29
  323. package/types/stable/@glimmer/runtime/lib/helpers/hash.d.ts +1 -1
  324. package/types/stable/@glimmer/syntax/lib/get-template-locals.d.ts +1 -1
  325. package/types/stable/@glimmer/tracking/index.d.ts +12 -12
  326. package/types/stable/index.d.ts +1 -0
@@ -1,13 +1,13 @@
1
1
  import { getOwner, setOwner } from '../@ember/-internals/owner/index.js';
2
- import { a as guidFor } from './guid-PO2v9BaN.js';
2
+ import { g as guidFor } from './guid-Cbq2sNV_.js';
3
3
  import { getViewElement, clearElementView, clearViewElement, addChildView, setViewElement, setElementView } from '../@ember/-internals/views/lib/system/utils.js';
4
4
  import { debugFreeze } from '../@ember/debug/index.js';
5
5
  import { _instrumentStart } from '../@ember/instrumentation/index.js';
6
- import { b as createComputeRef, v as valueForRef, g as createPrimitiveRef, c as childRefFor, a as childRefFromParts, d as createConstRef, l as isUpdatableRef, u as updateRef } from './reference-C-OXd_kp.js';
7
- import { m as reifyPositional } from './untouchable-this-BHdAERUu.js';
8
- import { E as EMPTY_ARRAY } from './array-utils-BEaSKdEb.js';
9
- import { B as valueForTag, h as beginUntrackFrame, q as endUntrackFrame, g as beginTrackFrame, p as endTrackFrame, k as consumeTag, z as validateTag } from './cache-CeWOBNQg.js';
10
- import { g as get } from './property_get-BjbsrgpU.js';
6
+ import { c as createComputeRef, v as valueForRef, e as createPrimitiveRef, f as childRefFor, g as childRefFromParts, a as createConstRef, d as isUpdatableRef, u as updateRef } from './reference-BqOLhKFy.js';
7
+ import { f as reifyPositional } from './arguments-CDkbOqTS.js';
8
+ import { E as EMPTY_ARRAY } from './array-utils-CZQxrdD3.js';
9
+ import { a as valueForTag, p as beginUntrackFrame, w as endUntrackFrame, o as beginTrackFrame, s as endTrackFrame, c as consumeTag, v as validateTag } from './cache-DGDPVCpC.js';
10
+ import { g as get } from './property_get-CRP7MFz_.js';
11
11
  import { dasherize } from '../@ember/-internals/string/index.js';
12
12
  import { assert } from '../@ember/debug/lib/assert.js';
13
13
  import { registerDestructor } from '../@glimmer/destroyable/index.js';
@@ -614,4 +614,4 @@ function isCurlyManager(manager) {
614
614
  return manager === CURLY_COMPONENT_MANAGER;
615
615
  }
616
616
 
617
- export { BOUNDS as B, CURLY_COMPONENT_MANAGER as C, DIRTY_TAG as D, IS_DISPATCHING_ATTRS as I, ComponentStateBucket as a, CurlyComponentManager as b, isCurlyManager as c, getComponentCapturedArgs as g, initialRenderInstrumentDetails as i, processComponentInitializationAssertions as p, unwrapTemplate as u };
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 };
@@ -2,4 +2,4 @@ const CURRIED_COMPONENT = 0;
2
2
  const CURRIED_HELPER = 1;
3
3
  const CURRIED_MODIFIER = 2;
4
4
 
5
- export { CURRIED_COMPONENT as C, CURRIED_HELPER as a, CURRIED_MODIFIER as b };
5
+ export { CURRIED_MODIFIER as C, CURRIED_COMPONENT as a, CURRIED_HELPER as b };
@@ -132,4 +132,4 @@ function setClassicDecorator(dec, value = true) {
132
132
  DECORATOR_DESCRIPTOR_MAP.set(dec, value);
133
133
  }
134
134
 
135
- export { COMPUTED_SETTERS as C, ComputedDescriptor as a, descriptorForProperty as b, isElementDescriptor as c, descriptorForDecorator as d, isClassicDecorator as i, makeComputedDecorator as m, nativeDescDecorator as n, setClassicDecorator as s };
135
+ export { COMPUTED_SETTERS as C, isClassicDecorator as a, descriptorForDecorator as b, ComputedDescriptor as c, descriptorForProperty as d, isElementDescriptor as i, makeComputedDecorator as m, nativeDescDecorator as n, setClassicDecorator as s };
@@ -1,7 +1,7 @@
1
- import { b as createComputeRef, v as valueForRef, N as NULL_REFERENCE } from './reference-C-OXd_kp.js';
2
- import { s as setInternalComponentManager } from './api-DG5kRT-o.js';
1
+ import { c as createComputeRef, v as valueForRef, N as NULL_REFERENCE } from './reference-BqOLhKFy.js';
2
+ import { s as setInternalComponentManager } from './api-DuLOZMO_.js';
3
3
  import '../@ember/debug/index.js';
4
- import { i as internalHelper } from './internal-helper-IC87S6iZ.js';
4
+ import { i as internalHelper } from './internal-helper-CKrni0b_.js';
5
5
  import { assert } from '../@ember/debug/lib/assert.js';
6
6
 
7
7
  /**
@@ -84,6 +84,8 @@ function getElementDefinition(tagName) {
84
84
  Passing `null`, `undefined`, or non-string values will throw an assertion error.
85
85
 
86
86
  Changing the tag name will tear down and recreate the element and its contents.
87
+
88
+ The `element` helper is built-in and does not need to be imported.
87
89
 
88
90
  @method element
89
91
  @for Ember.Templates.helpers
@@ -1,5 +1,5 @@
1
1
  import { meta, peekMeta } from '../@ember/-internals/meta/lib/meta.js';
2
- import { s as setListeners } from './super-D4qkU4uq.js';
2
+ import { a as setListeners } from './super-BBBjgF69.js';
3
3
  import '../@ember/debug/index.js';
4
4
  import { assert } from '../@ember/debug/lib/assert.js';
5
5
 
@@ -21,4 +21,4 @@ const TYPE_MASK = 0b00000000000000000000000011111111;
21
21
  const OPERAND_LEN_MASK = 0b00000000000000000000001100000000;
22
22
  const MACHINE_MASK = 0b00000000000000000000010000000000;
23
23
 
24
- export { ARG_SHIFT as A, InternalComponentCapabilities as I, MACHINE_MASK as M, OPERAND_LEN_MASK as O, TYPE_MASK as T, MAX_SIZE as a, TYPE_SIZE as b };
24
+ export { ARG_SHIFT as A, InternalComponentCapabilities as I, MACHINE_MASK as M, OPERAND_LEN_MASK as O, TYPE_MASK as T, TYPE_SIZE as a, MAX_SIZE as b };
@@ -1,8 +1,8 @@
1
- import { b as createComputeRef, U as UNDEFINED_REFERENCE, v as valueForRef } from './reference-C-OXd_kp.js';
2
- import { m as reifyPositional } from './untouchable-this-BHdAERUu.js';
3
- import { i as internalHelper } from './hash-2-93qikL.js';
1
+ import { c as createComputeRef, U as UNDEFINED_REFERENCE, v as valueForRef } from './reference-BqOLhKFy.js';
2
+ import { f as reifyPositional } from './arguments-CDkbOqTS.js';
3
+ import { i as internalHelper } from './hash-6NDs_5_f.js';
4
4
  import { setPath, getPath } from '../@glimmer/global-context/index.js';
5
- import { i as isDict } from './collections-DEt-i-8B.js';
5
+ import { i as isDict } from './collections-DPkjqeA3.js';
6
6
 
7
7
  const isEmpty = value => {
8
8
  return value === null || value === undefined || typeof value.toString !== 'function';
@@ -19,10 +19,15 @@ const normalizeTextValue = value => {
19
19
 
20
20
  Example:
21
21
 
22
- ```handlebars
23
- {{some-component name=(concat firstName " " lastName)}}
24
22
 
25
- {{! would pass name="<first name value> <last name value>" to the component}}
23
+ ```gjs
24
+ import { concat } from '@ember/helper';
25
+
26
+ <template>
27
+ {{yield (concat firstName " " lastName)}}
28
+
29
+ {{! would yield name="<first name value> <last name value>" to the component}}
30
+ </template>
26
31
  ```
27
32
 
28
33
  or for angle bracket invocation, you actually don't need concat at all.
@@ -46,28 +51,31 @@ const concat = internalHelper(({
46
51
 
47
52
  For example, these two usages are equivalent:
48
53
 
49
- ```app/components/developer-detail.js
54
+ ```app/components/developer-detail.gjs
50
55
  import Component from '@glimmer/component';
51
56
  import { tracked } from '@glimmer/tracking';
57
+ import { get } from '@ember/object';
52
58
 
53
59
  export default class extends Component {
54
60
  @tracked developer = {
55
61
  name: "Sandi Metz",
56
62
  language: "Ruby"
57
63
  }
64
+
65
+ <template>
66
+ {{this.developer.name}}
67
+ {{get this.developer "name"}}
68
+ </template>
58
69
  }
59
70
  ```
60
71
 
61
- ```handlebars
62
- {{this.developer.name}}
63
- {{get this.developer "name"}}
64
- ```
65
-
66
72
  If there were several facts about a person, the `{{get}}` helper can dynamically
67
73
  pick one:
68
74
 
69
- ```app/templates/application.hbs
70
- <DeveloperDetail @factName="language" />
75
+ ```app/templates/application.gjs
76
+ <template>
77
+ <DeveloperDetail @factName="language" />
78
+ </template>
71
79
  ```
72
80
 
73
81
  ```handlebars
@@ -77,10 +85,11 @@ const concat = internalHelper(({
77
85
  For a more complex example, this template would allow the user to switch
78
86
  between showing the user's height and weight with a click:
79
87
 
80
- ```app/components/developer-detail.js
88
+ ```app/components/developer-detail.gjs
81
89
  import Component from '@glimmer/component';
82
90
  import { tracked } from '@glimmer/tracking';
83
-
91
+ import { get } from '@ember/object';
92
+
84
93
  export default class extends Component {
85
94
  @tracked developer = {
86
95
  name: "Sandi Metz",
@@ -92,28 +101,16 @@ const concat = internalHelper(({
92
101
  showFact = (fact) => {
93
102
  this.currentFact = fact;
94
103
  }
95
- }
96
- ```
97
-
98
- ```app/components/developer-detail.js
99
- {{get this.developer this.currentFact}}
100
-
101
- <button {{on 'click' (fn this.showFact "name")}}>Show name</button>
102
- <button {{on 'click' (fn this.showFact "language")}}>Show language</button>
103
- ```
104
+
105
+ <template>
106
+ {{get this.developer this.currentFact}}
104
107
 
105
- The `{{get}}` helper can also respect mutable values itself. For example:
106
-
107
- ```app/components/developer-detail.js
108
- <Input @value={{mut (get this.person this.currentFact)}} />
109
-
110
- <button {{on 'click' (fn this.showFact "name")}}>Show name</button>
111
- <button {{on 'click' (fn this.showFact "language")}}>Show language</button>
108
+ <button {{on 'click' (fn this.showFact "name")}}>Show name</button>
109
+ <button {{on 'click' (fn this.showFact "language")}}>Show language</button>
110
+ </template>
111
+ }
112
112
  ```
113
113
 
114
- Would allow the user to swap what fact is being displayed, and also edit
115
- that fact via a two-way mutable binding.
116
-
117
114
  @public
118
115
  @method get
119
116
  */
@@ -1,4 +1,4 @@
1
- import { g as get } from './property_get-Sw0SicEZ.js';
1
+ import { g as get } from './property_get-CRP7MFz_.js';
2
2
 
3
3
  /**
4
4
  @module @ember/object
@@ -120,4 +120,4 @@ function guidFor(value) {
120
120
  return guid;
121
121
  }
122
122
 
123
- export { GUID_KEY as G, guidFor as a, generateGuid as g, uuid as u };
123
+ export { GUID_KEY as G, generateGuid as a, guidFor as g, uuid as u };
@@ -1,6 +1,6 @@
1
- import { b as createComputeRef, k as isInvokableRef, u as updateRef, v as valueForRef } from './reference-C-OXd_kp.js';
2
- import { m as reifyPositional, e as buildUntouchableThis, f as check, l as reifyNamed } from './untouchable-this-BHdAERUu.js';
3
- import { j as setInternalHelperManager } from './api-DG5kRT-o.js';
1
+ import { c as createComputeRef, b as isInvokableRef, u as updateRef, v as valueForRef } from './reference-BqOLhKFy.js';
2
+ import { f as reifyPositional, g as buildUntouchableThis, h as check, e as reifyNamed } from './arguments-CDkbOqTS.js';
3
+ import { j as setInternalHelperManager } from './api-DuLOZMO_.js';
4
4
 
5
5
  function internalHelper(helper) {
6
6
  return setInternalHelperManager(helper, {});
@@ -19,7 +19,7 @@ function internalHelper(helper) {
19
19
  ```
20
20
  or
21
21
  ```handlebars
22
- {{my-component people=(array
22
+ {{yield people=(array
23
23
  'Tom Dale'
24
24
  'Yehuda Katz'
25
25
  this.myOtherPerson)
@@ -58,13 +58,17 @@ const context = buildUntouchableThis('`fn` helper');
58
58
  to a component invoked within the loop. Here's how you could use the `fn`
59
59
  helper to pass both the function and its arguments together:
60
60
 
61
- ```app/templates/components/items-listing.hbs
62
- {{#each @items as |item|}}
63
- <DisplayItem @item=item @select={{fn this.handleSelected item}} />
64
- {{/each}}
61
+ ```app/components/items-listing.gjs
62
+ import DisplayItem from './display-item';
63
+
64
+ <template>
65
+ {{#each @items as |item|}}
66
+ <DisplayItem @item=item @select={{fn this.handleSelected item}} />
67
+ {{/each}}
68
+ </template>
65
69
  ```
66
70
 
67
- ```app/components/items-list.js
71
+ ```app/components/items-list.gjs
68
72
  import Component from '@glimmer/component';
69
73
  import { action } from '@ember/object';
70
74
 
@@ -75,7 +79,7 @@ const context = buildUntouchableThis('`fn` helper');
75
79
  }
76
80
  ```
77
81
 
78
- In this case the `display-item` component will receive a normal function
82
+ In this case the `DisplayItem` component will receive a normal function
79
83
  that it can invoke. When it invokes the function, the `handleSelected`
80
84
  function will receive the `item` and any arguments passed, thanks to the
81
85
  `fn` helper.
@@ -92,7 +96,7 @@ const context = buildUntouchableThis('`fn` helper');
92
96
  `handleSelected` is properly bound to the `items-list`, but let's explore what
93
97
  happens if we left out the arrow function:
94
98
 
95
- ```app/components/items-list.js
99
+ ```app/components/items-list.gjs
96
100
  import Component from '@glimmer/component';
97
101
 
98
102
  export default class ItemsList extends Component {
@@ -109,6 +113,8 @@ const context = buildUntouchableThis('`fn` helper');
109
113
 
110
114
  See also [partial application](https://en.wikipedia.org/wiki/Partial_application).
111
115
 
116
+ `fn` is built-in and does not require any additional imports.
117
+
112
118
  @method fn
113
119
  @public
114
120
  */
@@ -138,7 +144,7 @@ function assertCallbackIsFn(callbackRef) {
138
144
 
139
145
  /**
140
146
  Use the `{{hash}}` helper to create a hash to pass as an option to your
141
- components. This is specially useful for contextual components where you can
147
+ components. This is especially useful for contextual components where you can
142
148
  just yield a hash:
143
149
 
144
150
  ```handlebars
@@ -3,9 +3,9 @@ import { FrameworkObject } from '../@ember/object/-internals.js';
3
3
  import { g as getDebugName } from './get-debug-name-CSniHBsn.js';
4
4
  import '../@ember/debug/index.js';
5
5
  import { join } from '../@ember/runloop/index.js';
6
- import { a as getInternalHelperManager, i as helperCapabilities } from './api-DG5kRT-o.js';
7
- import { b as setHelperManager } from './api-BT9M3UaD.js';
8
- import { m as createTag, D as DIRTY_TAG, k as consumeTag } from './cache-CeWOBNQg.js';
6
+ import { a as getInternalHelperManager, i as helperCapabilities } from './api-DuLOZMO_.js';
7
+ import { b as setHelperManager } from './api-BlZDPg1n.js';
8
+ import { r as createTag, D as DIRTY_TAG, c as consumeTag } from './cache-DGDPVCpC.js';
9
9
  import { assert } from '../@ember/debug/lib/assert.js';
10
10
 
11
11
  /**
@@ -29,20 +29,32 @@ const IS_CLASSIC_HELPER = Symbol('IS_CLASSIC_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
+ ```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
+ ```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: