ember-source 7.1.0-alpha.5 → 7.1.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 (234) hide show
  1. package/build-metadata.json +3 -3
  2. package/dist/dev/packages/@ember/-internals/glimmer/index.js +11 -11
  3. package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +1 -1
  4. package/dist/dev/packages/@ember/-internals/views/index.js +0 -1
  5. package/dist/dev/packages/@ember/-internals/views/lib/views/core_view.js +1 -1
  6. package/dist/dev/packages/@ember/application/index.js +1 -1
  7. package/dist/dev/packages/@ember/application/instance.js +1 -1
  8. package/dist/dev/packages/@ember/array/index.js +4 -0
  9. package/dist/dev/packages/@ember/component/helper.js +1 -1
  10. package/dist/dev/packages/@ember/component/index.js +15 -9
  11. package/dist/dev/packages/@ember/component/template-only.js +1 -1
  12. package/dist/dev/packages/@ember/engine/index.js +1 -3
  13. package/dist/dev/packages/@ember/helper/index.js +8 -37
  14. package/dist/dev/packages/@ember/modifier/index.js +2 -2
  15. package/dist/dev/packages/@ember/modifier/on.js +1 -1
  16. package/dist/dev/packages/@ember/object/index.js +22 -17
  17. package/dist/dev/packages/@ember/reactive/collections.js +2 -0
  18. package/dist/dev/packages/@ember/renderer/index.js +1 -1
  19. package/dist/dev/packages/@ember/routing/index.js +11 -7
  20. package/dist/dev/packages/@ember/routing/route.js +3 -3
  21. package/dist/dev/packages/@ember/routing/router-service.js +20 -13
  22. package/dist/dev/packages/@ember/template-compiler/lib/compile-options.js +3 -3
  23. package/dist/dev/packages/@ember/template-compiler/lib/template.js +3 -3
  24. package/dist/dev/packages/@ember/template-factory/index.js +1 -1
  25. package/dist/dev/packages/@glimmer/destroyable/index.js +1 -1
  26. package/dist/dev/packages/@glimmer/manager/index.js +3 -3
  27. package/dist/dev/packages/@glimmer/node/index.js +2 -2
  28. package/dist/dev/packages/@glimmer/opcode-compiler/index.js +2 -5
  29. package/dist/dev/packages/@glimmer/program/index.js +4 -4
  30. package/dist/dev/packages/@glimmer/runtime/index.js +10 -12
  31. package/dist/dev/packages/@glimmer/vm/index.js +1 -1
  32. package/dist/dev/packages/ember/version.js +1 -1
  33. package/dist/dev/packages/ember-template-compiler/index.js +2 -2
  34. package/dist/dev/packages/shared-chunks/{api-AYt3zE12.js → api-BAmlf_CN.js} +1 -1
  35. package/dist/dev/packages/shared-chunks/{api-WvJPuo9z.js → api-BawZUDYD.js} +1 -1
  36. package/dist/dev/packages/shared-chunks/assert-Zqc4wiAV.js +6 -0
  37. package/dist/dev/packages/shared-chunks/{compiler-CXB_8GdR.js → compiler-QUSl_urU.js} +2 -3
  38. package/dist/dev/packages/shared-chunks/{curly-CvC8E_4-.js → curly-BBzF_bI8.js} +1 -1
  39. package/dist/dev/packages/shared-chunks/curried-BZnYakIg.js +5 -0
  40. package/dist/dev/packages/shared-chunks/{debug-to-string-CFb7h0lY.js → debug-to-string-C6LsA_qz.js} +1 -2
  41. package/dist/dev/packages/shared-chunks/{element-C-QcIABg.js → element-Cf3hqNOD.js} +4 -2
  42. package/dist/dev/packages/shared-chunks/{element-builder-kHVx0F__.js → element-builder--iTIJyCB.js} +1 -1
  43. package/dist/dev/packages/shared-chunks/{get-CpJjYeJO.js → get-BehtPmsu.js} +31 -34
  44. package/dist/dev/packages/shared-chunks/{hash-D3BENmhU.js → hash-BTwOuDGQ.js} +17 -11
  45. package/dist/dev/packages/shared-chunks/{helper-DlC4YesW.js → helper-BubrhyuN.js} +20 -8
  46. package/dist/dev/packages/shared-chunks/{index-CTxkmV78.js → index-CL1zjHwo.js} +91 -113
  47. package/dist/dev/packages/shared-chunks/{index-DmGmwWPJ.js → index-CyZiGiEI.js} +5 -6
  48. package/dist/dev/packages/shared-chunks/{internal-CbQSKXEm.js → internal-CAL-jHZt.js} +2 -2
  49. package/dist/dev/packages/shared-chunks/{internal-helper-Dsl9_7H_.js → internal-helper-Ez7zbEIa.js} +1 -1
  50. package/dist/dev/packages/shared-chunks/{invoke-B6j6DdDz.js → invoke-B8M5fQQS.js} +2 -2
  51. package/dist/dev/packages/shared-chunks/{on-D8QwT-eN.js → on-BQii6ILK.js} +8 -8
  52. package/dist/dev/packages/shared-chunks/{or-DBU9Ge4r.js → or-BTH3yuFG.js} +1 -1
  53. package/dist/dev/packages/shared-chunks/{program-context-CqcQMsfa.js → program-context-CadjldRr.js} +4 -3
  54. package/dist/{prod/packages/shared-chunks/registers-DoamZwaG.js → dev/packages/shared-chunks/registers-C_W2qYHJ.js} +1 -1
  55. package/dist/dev/packages/shared-chunks/{rehydrate-builder-DdzXTaJk.js → rehydrate-builder-DCyIgnCR.js} +2 -2
  56. package/dist/dev/packages/shared-chunks/{render-DDdabL30.js → render-CpKaO-BO.js} +9 -8
  57. package/dist/dev/packages/shared-chunks/{chunk-3SQBS3Y5-Cj4eryg1.js → runtime-CYyqkz5q-BOdRhmsS.js} +4 -59
  58. package/dist/dev/packages/shared-chunks/{serialize-builder-B3u9Wr3n.js → serialize-builder-DxgGRvH_.js} +1 -1
  59. package/dist/dev/packages/shared-chunks/{setup-registry-XxD0xvgf.js → setup-registry-BQZJfq-Y.js} +7 -7
  60. package/dist/dev/packages/shared-chunks/syscall-ops-BPFtDquC.js +133 -0
  61. package/dist/dev/packages/shared-chunks/{template-kM-7TTcc.js → template-R_5UMHhb.js} +1 -1
  62. package/dist/dev/packages/shared-chunks/{template-only-Yluyu0DY.js → template-only-BqOt8bDl.js} +1 -1
  63. package/dist/dev/packages/shared-chunks/{textarea-C0Us0PNJ.js → textarea-lD4apgrP.js} +9 -5
  64. package/dist/dev/packages/shared-chunks/{unique-id-A83bjEE-.js → unique-id-CgmHQiwi.js} +1 -1
  65. package/dist/dev/packages/shared-chunks/{untouchable-this-cH6_N2LJ.js → untouchable-this-B3DVwpHS.js} +6 -6
  66. package/dist/dev/packages/shared-chunks/vm-ops-ImHv0Wtg.js +12 -0
  67. package/dist/prod/packages/@ember/-internals/container/index.js +2 -3
  68. package/dist/prod/packages/@ember/-internals/glimmer/index.js +9 -9
  69. package/dist/prod/packages/@ember/-internals/meta/lib/meta.js +0 -2
  70. package/dist/prod/packages/@ember/-internals/metal/index.js +16 -17
  71. package/dist/prod/packages/@ember/-internals/routing/index.js +1 -2
  72. package/dist/prod/packages/@ember/-internals/runtime/lib/ext/rsvp.js +0 -1
  73. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +4 -5
  74. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +1 -2
  75. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/registry_proxy.js +0 -1
  76. package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -4
  77. package/dist/prod/packages/@ember/-internals/utils/index.js +0 -1
  78. package/dist/prod/packages/@ember/-internals/views/index.js +0 -1
  79. package/dist/prod/packages/@ember/-internals/views/lib/mixins/action_support.js +1 -2
  80. package/dist/prod/packages/@ember/-internals/views/lib/system/event_dispatcher.js +2 -3
  81. package/dist/prod/packages/@ember/-internals/views/lib/system/utils.js +0 -1
  82. package/dist/prod/packages/@ember/-internals/views/lib/views/core_view.js +2 -2
  83. package/dist/prod/packages/@ember/-internals/views/lib/views/states.js +0 -1
  84. package/dist/prod/packages/@ember/application/index.js +3 -3
  85. package/dist/prod/packages/@ember/application/instance.js +3 -4
  86. package/dist/prod/packages/@ember/application/namespace.js +1 -2
  87. package/dist/prod/packages/@ember/array/index.js +9 -6
  88. package/dist/prod/packages/@ember/array/proxy.js +5 -6
  89. package/dist/prod/packages/@ember/component/helper.js +1 -1
  90. package/dist/prod/packages/@ember/component/index.js +15 -10
  91. package/dist/prod/packages/@ember/controller/index.js +3 -3
  92. package/dist/prod/packages/@ember/debug/data-adapter.js +1 -1
  93. package/dist/prod/packages/@ember/engine/index.js +3 -6
  94. package/dist/prod/packages/@ember/engine/instance.js +0 -1
  95. package/dist/prod/packages/@ember/helper/index.js +5 -34
  96. package/dist/prod/packages/@ember/modifier/on.js +1 -1
  97. package/dist/prod/packages/@ember/object/-internals.js +0 -1
  98. package/dist/prod/packages/@ember/object/compat.js +1 -2
  99. package/dist/prod/packages/@ember/object/computed.js +2 -2
  100. package/dist/prod/packages/@ember/object/core.js +5 -6
  101. package/dist/prod/packages/@ember/object/evented.js +2 -2
  102. package/dist/prod/packages/@ember/object/events.js +1 -1
  103. package/dist/prod/packages/@ember/object/index.js +30 -25
  104. package/dist/prod/packages/@ember/object/internals.js +0 -1
  105. package/dist/prod/packages/@ember/object/lib/computed/computed_macros.js +4 -5
  106. package/dist/prod/packages/@ember/object/lib/computed/reduce_computed_macros.js +2 -3
  107. package/dist/prod/packages/@ember/object/mixin.js +4 -5
  108. package/dist/prod/packages/@ember/object/observable.js +7 -8
  109. package/dist/prod/packages/@ember/object/observers.js +1 -1
  110. package/dist/prod/packages/@ember/object/promise-proxy-mixin.js +3 -3
  111. package/dist/prod/packages/@ember/reactive/collections.js +2 -0
  112. package/dist/prod/packages/@ember/renderer/index.js +1 -1
  113. package/dist/prod/packages/@ember/routing/history-location.js +0 -1
  114. package/dist/prod/packages/@ember/routing/index.js +10 -7
  115. package/dist/prod/packages/@ember/routing/lib/dsl.js +0 -2
  116. package/dist/prod/packages/@ember/routing/lib/generate_controller.js +1 -2
  117. package/dist/prod/packages/@ember/routing/lib/routing-service.js +2 -3
  118. package/dist/prod/packages/@ember/routing/lib/utils.js +1 -2
  119. package/dist/prod/packages/@ember/routing/none-location.js +0 -1
  120. package/dist/prod/packages/@ember/routing/route.js +9 -10
  121. package/dist/prod/packages/@ember/routing/router-service.js +22 -16
  122. package/dist/prod/packages/@ember/routing/router.js +3 -4
  123. package/dist/prod/packages/@ember/runloop/index.js +1 -2
  124. package/dist/prod/packages/@ember/service/index.js +1 -1
  125. package/dist/prod/packages/@ember/template-compiler/lib/compile-options.js +3 -4
  126. package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-against-attrs.js +0 -1
  127. package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-against-named-outlets.js +0 -1
  128. package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-input-helper-without-block.js +0 -1
  129. package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-reserved-named-arguments.js +0 -2
  130. package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-each-track-array.js +0 -1
  131. package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-in-element.js +0 -1
  132. package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-resolutions.js +0 -1
  133. package/dist/prod/packages/@ember/template-compiler/lib/template.js +2 -2
  134. package/dist/prod/packages/@ember/template-factory/index.js +1 -1
  135. package/dist/prod/packages/@ember/utils/lib/compare.js +0 -1
  136. package/dist/prod/packages/@ember/utils/lib/is_empty.js +1 -1
  137. package/dist/prod/packages/@glimmer/node/index.js +2 -2
  138. package/dist/prod/packages/@glimmer/opcode-compiler/index.js +2 -5
  139. package/dist/prod/packages/@glimmer/program/index.js +2 -2
  140. package/dist/prod/packages/@glimmer/runtime/index.js +9 -11
  141. package/dist/prod/packages/@glimmer/tracking/index.js +1 -1
  142. package/dist/prod/packages/@glimmer/vm/index.js +1 -1
  143. package/dist/prod/packages/ember/version.js +1 -1
  144. package/dist/prod/packages/ember-template-compiler/index.js +2 -3
  145. package/dist/prod/packages/shared-chunks/{alias-CLuFeKoV.js → alias-DBW_V5vD.js} +5 -6
  146. package/dist/prod/packages/shared-chunks/{array-DHdr4__s.js → array-D6Couewv.js} +2 -3
  147. package/dist/prod/packages/shared-chunks/assert-Zqc4wiAV.js +6 -0
  148. package/dist/prod/packages/shared-chunks/{chain-tags-BJqcuCM1.js → chain-tags-C9rFtQ_x.js} +0 -1
  149. package/dist/prod/packages/shared-chunks/{compiler-DjQtTQGk.js → compiler-c4yUVrl_.js} +2 -3
  150. package/dist/prod/packages/shared-chunks/{computed-2Udcmflw.js → computed-DjCIU_ht.js} +3 -4
  151. package/dist/prod/packages/shared-chunks/{container-D5NwW5Fd.js → container-BYOnjnwz.js} +0 -1
  152. package/dist/prod/packages/shared-chunks/{curly-BsqvV8G0.js → curly-ZzX43b50.js} +2 -3
  153. package/dist/prod/packages/shared-chunks/curried-BZnYakIg.js +5 -0
  154. package/dist/prod/packages/shared-chunks/{debug-render-tree-BLtnOSbb.js → debug-render-tree-CF5O4-WI.js} +4 -4
  155. package/dist/prod/packages/shared-chunks/{decorator-DBCISop4.js → decorator-9ikVwsjY.js} +0 -1
  156. package/dist/prod/packages/shared-chunks/{element-BjFr0tO0.js → element-9DRa_9dO.js} +2 -1
  157. package/dist/prod/packages/shared-chunks/{element-builder-BPjq0rxK.js → element-builder-CnlTPNyw.js} +1 -1
  158. package/dist/prod/packages/shared-chunks/{events-970OxD6Q.js → events-DYrYz3V8.js} +0 -1
  159. package/dist/prod/packages/shared-chunks/{get-D5wxdTkY.js → get-Dt5L0TcU.js} +31 -34
  160. package/dist/prod/packages/shared-chunks/{get_properties-BcAC5sGx.js → get_properties-Nn08mLAH.js} +1 -1
  161. package/dist/prod/packages/shared-chunks/{hash-DcUe-meU.js → hash-Dkj3I4L4.js} +16 -10
  162. package/dist/prod/packages/shared-chunks/{helper-Da672z4a.js → helper-CN6UzshW.js} +18 -7
  163. package/dist/prod/packages/shared-chunks/{index--2U-v2nf.js → index-Bj71BDDA.js} +4 -5
  164. package/dist/prod/packages/shared-chunks/{index-D87qoERP.js → index-ClxHbCe9.js} +90 -112
  165. package/dist/prod/packages/shared-chunks/{injected_property-D9B-fPiH.js → injected_property--eJunJph.js} +2 -3
  166. package/dist/prod/packages/shared-chunks/{invoke-Dr_CRwA_.js → invoke-Cj5zMqHz.js} +1 -1
  167. package/dist/prod/packages/shared-chunks/{libraries-DaXpIDYN.js → libraries-_k-4KK5_.js} +1 -2
  168. package/dist/prod/packages/shared-chunks/{observers-Co4JALkS.js → observers-CDkeR0nI.js} +2 -2
  169. package/dist/prod/packages/shared-chunks/{on-C3ZQiUUD.js → on-CWgOWNSL.js} +7 -7
  170. package/dist/prod/packages/shared-chunks/{or-oTVMuHc8.js → or-Crsa2wci.js} +1 -1
  171. package/dist/prod/packages/shared-chunks/{program-context-CGMN-aQM.js → program-context-B8HKU7wu.js} +4 -3
  172. package/dist/prod/packages/shared-chunks/{property_get-hWJ0nGhW.js → property_get-CAFdpRyu.js} +0 -1
  173. package/dist/prod/packages/shared-chunks/{property_set-Dj5-ScWk.js → property_set-BunbMFtp.js} +3 -4
  174. package/dist/{dev/packages/shared-chunks/registers-DoamZwaG.js → prod/packages/shared-chunks/registers-C_W2qYHJ.js} +1 -1
  175. package/dist/prod/packages/shared-chunks/{rehydrate-builder-BKg2X6Lo.js → rehydrate-builder-DJ8k-6fg.js} +2 -2
  176. package/dist/prod/packages/shared-chunks/{render-nx5-PsDW.js → render-DkJJmoI4.js} +7 -6
  177. package/dist/prod/packages/shared-chunks/{chunk-3SQBS3Y5-Cj4eryg1.js → runtime-CYyqkz5q-BOdRhmsS.js} +4 -59
  178. package/dist/prod/packages/shared-chunks/{serialize-builder-BGbC30SN.js → serialize-builder-R3Ozg0sC.js} +1 -1
  179. package/dist/prod/packages/shared-chunks/{set_properties-oPyURk67.js → set_properties-LT3RzRmJ.js} +2 -2
  180. package/dist/prod/packages/shared-chunks/{setup-registry-TiaKLj5k.js → setup-registry-B3DhqtxX.js} +7 -8
  181. package/dist/prod/packages/shared-chunks/syscall-ops-BPFtDquC.js +133 -0
  182. package/dist/prod/packages/shared-chunks/{textarea-CPKZ1c_O.js → textarea-Byj32raR.js} +9 -6
  183. package/dist/prod/packages/shared-chunks/{tracked-CffAABMz.js → tracked-DAVrVqJl.js} +2 -3
  184. package/dist/prod/packages/shared-chunks/vm-ops-ImHv0Wtg.js +12 -0
  185. package/docs/data.json +196 -216
  186. package/lib/index.js +0 -1
  187. package/package.json +14 -15
  188. package/types/stable/@ember/-internals/glimmer/index.d.ts +165 -121
  189. package/types/stable/@ember/-internals/glimmer/lib/component.d.ts +8 -2
  190. package/types/stable/@ember/-internals/glimmer/lib/glimmer-tracking-docs.d.ts +12 -12
  191. package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +18 -6
  192. package/types/stable/@ember/-internals/glimmer/lib/helpers/array.d.ts +3 -1
  193. package/types/stable/@ember/-internals/glimmer/lib/helpers/component.d.ts +65 -121
  194. package/types/stable/@ember/-internals/glimmer/lib/helpers/concat.d.ts +8 -4
  195. package/types/stable/@ember/-internals/glimmer/lib/helpers/each-in.d.ts +16 -14
  196. package/types/stable/@ember/-internals/glimmer/lib/helpers/element.d.ts +2 -0
  197. package/types/stable/@ember/-internals/glimmer/lib/helpers/fn.d.ts +11 -7
  198. package/types/stable/@ember/-internals/glimmer/lib/helpers/get.d.ts +23 -29
  199. package/types/stable/@ember/-internals/glimmer/lib/helpers/hash.d.ts +3 -1
  200. package/types/stable/@ember/-internals/glimmer/lib/helpers/if-unless.d.ts +95 -49
  201. package/types/stable/@ember/-internals/glimmer/lib/helpers/mut.d.ts +23 -54
  202. package/types/stable/@ember/-internals/glimmer/lib/helpers/page-title.d.ts +6 -2
  203. package/types/stable/@ember/-internals/glimmer/lib/helpers/readonly.d.ts +4 -8
  204. package/types/stable/@ember/-internals/glimmer/lib/modifiers/on.d.ts +10 -10
  205. package/types/stable/@ember/-internals/glimmer/lib/syntax/in-element.d.ts +2 -0
  206. package/types/stable/@ember/-internals/glimmer/lib/syntax/let.d.ts +2 -14
  207. package/types/stable/@ember/-internals/glimmer/lib/syntax/mount.d.ts +15 -11
  208. package/types/stable/@ember/-internals/glimmer/lib/syntax/outlet.d.ts +17 -10
  209. package/types/stable/@ember/-internals/runtime/lib/mixins/target_action_support.d.ts +1 -1
  210. package/types/stable/@ember/-internals/views/index.d.ts +0 -1
  211. package/types/stable/@ember/array/index.d.ts +4 -0
  212. package/types/stable/@ember/controller/index.d.ts +1 -1
  213. package/types/stable/@ember/helper/index.d.ts +0 -29
  214. package/types/stable/@ember/object/index.d.ts +4 -3
  215. package/types/stable/@ember/object/observable.d.ts +4 -0
  216. package/types/stable/@ember/routing/route.d.ts +1 -1
  217. package/types/stable/@ember/routing/router-service.d.ts +20 -12
  218. package/types/stable/@glimmer/runtime/lib/helpers/array.d.ts +1 -1
  219. package/types/stable/@glimmer/runtime/lib/helpers/concat.d.ts +8 -3
  220. package/types/stable/@glimmer/runtime/lib/helpers/fn.d.ts +13 -7
  221. package/types/stable/@glimmer/runtime/lib/helpers/get.d.ts +21 -29
  222. package/types/stable/@glimmer/runtime/lib/helpers/hash.d.ts +1 -1
  223. package/types/stable/@glimmer/syntax/lib/get-template-locals.d.ts +1 -1
  224. package/types/stable/@glimmer/tracking/index.d.ts +12 -12
  225. package/types/stable/index.d.ts +0 -1
  226. package/dist/dev/packages/@ember/-internals/views/lib/component_lookup.js +0 -14
  227. package/dist/dev/packages/shared-chunks/assert-CUCJBR2C.js +0 -19
  228. package/dist/dev/packages/shared-chunks/curried-BVwSNqpf.js +0 -628
  229. package/dist/dev/packages/shared-chunks/opcode-metadata-9iSW5JGP.js +0 -285
  230. package/dist/prod/packages/@ember/-internals/views/lib/component_lookup.js +0 -14
  231. package/dist/prod/packages/shared-chunks/assert-CUCJBR2C.js +0 -19
  232. package/dist/prod/packages/shared-chunks/curried-BVwSNqpf.js +0 -628
  233. package/dist/prod/packages/shared-chunks/opcode-metadata-9iSW5JGP.js +0 -285
  234. package/types/stable/@ember/-internals/views/lib/component_lookup.d.ts +0 -8
@@ -322,18 +322,12 @@ declare module '@ember/helper' {
322
322
  * as an argument to your components.
323
323
  *
324
324
  * ```
325
- * import { hash } from '@ember/helper';
326
- *
327
325
  * <template>
328
326
  * {{#each-in (hash givenName='Jen' familyName='Weber') as |key value|}}
329
327
  * <p>{{key}}: {{value}}</p>
330
328
  * {{/each-in}}
331
329
  * </template>
332
330
  * ```
333
- *
334
- * **NOTE:** this example uses the experimental `<template>` feature, which is
335
- * the only place you need to import `hash` to use it (it is a built-in when
336
- * writing standalone `.hbs` files).
337
331
  */
338
332
  export const hash: HashHelper;
339
333
  export interface HashHelper extends Opaque<"helper:hash"> {
@@ -343,7 +337,6 @@ declare module '@ember/helper' {
343
337
  * as an argument to your components.
344
338
  *
345
339
  * ```js
346
- * import { array } from '@ember/helper';
347
340
  *
348
341
  * <template>
349
342
  * <ul>
@@ -352,10 +345,6 @@ declare module '@ember/helper' {
352
345
  * {{/each}}
353
346
  * </ul>
354
347
  * </template>
355
- *
356
- * **NOTE:** this example uses the experimental `<template>` feature, which is
357
- * the only place you need to import `array` to use it (it is a built-in when
358
- * writing standalone `.hbs` files).
359
348
  * ```
360
349
  */
361
350
  export const array: ArrayHelper;
@@ -378,10 +367,6 @@ declare module '@ember/helper' {
378
367
  *
379
368
  * This will display the result of `@foo.item1` when `index` is `1`, and
380
369
  * `this.foo.item2` when `index` is `2`, etc.
381
- *
382
- * **NOTE:** this example uses the experimental `<template>` feature, which is
383
- * the only place you need to import `concat` to use it (it is a built-in when
384
- * writing standalone `.hbs` files).
385
370
  */
386
371
  export const concat: ConcatHelper;
387
372
  export interface ConcatHelper extends Opaque<"helper:concat"> {
@@ -423,10 +408,6 @@ declare module '@ember/helper' {
423
408
  *
424
409
  * This will display the result of `@foo.item1` when `index` is `1`, and
425
410
  * `this.foo.item2` when `index` is `2`, etc.
426
- *
427
- * **NOTE:** this example uses the experimental `<template>` feature, which is
428
- * the only place you need to import `concat` to use it (it is a built-in when
429
- * writing standalone `.hbs` files).
430
411
  */
431
412
  export const get: GetHelper;
432
413
  export interface GetHelper extends Opaque<"helper:get"> {
@@ -472,7 +453,6 @@ declare module '@ember/helper' {
472
453
  * @param {number} left
473
454
  * @param {number} right
474
455
  * @return {boolean}
475
- * @private
476
456
  */
477
457
  export const gt: GtHelper;
478
458
  export interface GtHelper extends Opaque<"helper:gt"> {
@@ -496,7 +476,6 @@ declare module '@ember/helper' {
496
476
  * @param {number} left
497
477
  * @param {number} right
498
478
  * @return {boolean}
499
- * @private
500
479
  */
501
480
  export const gte: GteHelper;
502
481
  export interface GteHelper extends Opaque<"helper:gte"> {
@@ -520,7 +499,6 @@ declare module '@ember/helper' {
520
499
  * @param {number} left
521
500
  * @param {number} right
522
501
  * @return {boolean}
523
- * @private
524
502
  */
525
503
  export const lt: LtHelper;
526
504
  export interface LtHelper extends Opaque<"helper:lt"> {
@@ -544,7 +522,6 @@ declare module '@ember/helper' {
544
522
  * @param {number} left
545
523
  * @param {number} right
546
524
  * @return {boolean}
547
- * @private
548
525
  */
549
526
  export const lte: LteHelper;
550
527
  export interface LteHelper extends Opaque<"helper:lte"> {
@@ -568,7 +545,6 @@ declare module '@ember/helper' {
568
545
  *
569
546
  * @method element
570
547
  * @param {string} tagName
571
- * @private
572
548
  */
573
549
  export const element: ElementHelper;
574
550
  export interface ElementHelper extends Opaque<"helper:element"> {
@@ -612,7 +588,6 @@ declare module '@ember/helper' {
612
588
  * @param {unknown} left
613
589
  * @param {unknown} right
614
590
  * @return {boolean}
615
- * @private
616
591
  */
617
592
  export const eq: EqHelper;
618
593
  export interface EqHelper extends Opaque<"helper:eq"> {
@@ -636,7 +611,6 @@ declare module '@ember/helper' {
636
611
  * @param {unknown} left
637
612
  * @param {unknown} right
638
613
  * @return {boolean}
639
- * @private
640
614
  */
641
615
  export const neq: NeqHelper;
642
616
  export interface NeqHelper extends Opaque<"helper:neq"> {
@@ -660,7 +634,6 @@ declare module '@ember/helper' {
660
634
  * @method and
661
635
  * @param {unknown} args Two or more values to evaluate
662
636
  * @return {unknown} The first falsy value or the last value
663
- * @private
664
637
  */
665
638
  export const and: AndHelper;
666
639
  export interface AndHelper extends Opaque<"helper:and"> {
@@ -684,7 +657,6 @@ declare module '@ember/helper' {
684
657
  * @method or
685
658
  * @param {unknown} args Two or more values to evaluate
686
659
  * @return {unknown} The first truthy value or the last value
687
- * @private
688
660
  */
689
661
  export const or: OrHelper;
690
662
  export interface OrHelper extends Opaque<"helper:or"> {
@@ -707,7 +679,6 @@ declare module '@ember/helper' {
707
679
  * @method not
708
680
  * @param {unknown} value The value to negate
709
681
  * @return {boolean}
710
- * @private
711
682
  */
712
683
  export const not: NotHelper;
713
684
  export interface NotHelper extends Opaque<"helper:not"> {
@@ -55,9 +55,10 @@ declare module '@ember/object' {
55
55
  });
56
56
  ```
57
57
 
58
- Also available as `Function.prototype.observes` if prototype extensions are
59
- enabled.
60
-
58
+ While observers are still supported, there are [plans to deprecate them](https://github.com/emberjs/rfcs/pull/1115)
59
+ See the [in-progress deprecation guide](https://github.com/ember-learn/deprecation-app/pull/1407)
60
+ for guidance on how to avoid using observers.
61
+
61
62
  @method observer
62
63
  @for @ember/object
63
64
  @param {String} propertyNames*
@@ -307,6 +307,10 @@ declare module '@ember/object/observable' {
307
307
  only a sender and key value as parameters or, if you aren't interested in
308
308
  any of these values, to write an observer that has no parameters at all.
309
309
 
310
+ While observers are still supported, there are [plans to deprecate them](https://github.com/emberjs/rfcs/pull/1115)
311
+ See the [in-progress deprecation guide](https://github.com/ember-learn/deprecation-app/pull/1407)
312
+ for guidance on how to avoid using observers.
313
+
310
314
  @method addObserver
311
315
  @param {String} key The key to observe
312
316
  @param {Object} target The target object to invoke
@@ -821,7 +821,7 @@ declare module '@ember/routing/route' {
821
821
 
822
822
  Note that for routes with dynamic segments, this hook is not always
823
823
  executed. If the route is entered through a transition (e.g. when
824
- using the `link-to` Handlebars helper or the `transitionTo` method
824
+ using the `link-to` helper or the `transitionTo` method
825
825
  of routes), and a model context is already provided this hook
826
826
  is not called.
827
827
 
@@ -17,7 +17,7 @@ declare module '@ember/routing/router-service' {
17
17
  In this example, the Router service is injected into a component to initiate a transition
18
18
  to a dedicated route:
19
19
 
20
- ```app/components/example.js
20
+ ```app/components/example.gjs
21
21
  import Component from '@glimmer/component';
22
22
  import { action } from '@ember/object';
23
23
  import { service } from '@ember/service';
@@ -58,7 +58,7 @@ declare module '@ember/routing/router-service' {
58
58
  specific model from a Component in the first action, and in the second we trigger
59
59
  a query-params only transition.
60
60
 
61
- ```app/components/example.js
61
+ ```app/components/example.gjs
62
62
  import Component from '@glimmer/component';
63
63
  import { action } from '@ember/object';
64
64
  import { service } from '@ember/service';
@@ -137,11 +137,15 @@ declare module '@ember/routing/router-service' {
137
137
  In this example, the URL for the `author.books` route for a given author
138
138
  is copied to the clipboard.
139
139
 
140
- ```app/templates/application.hbs
141
- <CopyLink @author={{hash id="tomster" name="Tomster"}} />
140
+ ```app/templates/application.gjs
141
+ import CopyLink from '../components/copy-link';
142
+
143
+ <template>
144
+ <CopyLink @author={{hash id="tomster" name="Tomster"}} />
145
+ </template>
142
146
  ```
143
147
 
144
- ```app/components/copy-link.js
148
+ ```app/components/copy-link.gjs
145
149
  import Component from '@glimmer/component';
146
150
  import { service } from '@ember/service';
147
151
  import { action } from '@ember/object';
@@ -164,11 +168,15 @@ declare module '@ember/routing/router-service' {
164
168
  Just like with `transitionTo` and `replaceWith`, `urlFor` can also handle
165
169
  query parameters.
166
170
 
167
- ```app/templates/application.hbs
168
- <CopyLink @author={{hash id="tomster" name="Tomster"}} />
171
+ ```app/templates/application.gjs
172
+ import CopyLink from '../components/copy-link';
173
+
174
+ <template>
175
+ <CopyLink @author={{hash id="tomster" name="Tomster"}} />
176
+ </template>
169
177
  ```
170
178
 
171
- ```app/components/copy-link.js
179
+ ```app/components/copy-link.gjs
172
180
  import Component from '@glimmer/component';
173
181
  import { service } from '@ember/service';
174
182
  import { action } from '@ember/object';
@@ -206,7 +214,7 @@ declare module '@ember/routing/router-service' {
206
214
 
207
215
  In the following example, `isActive` will return `true` if the current route is `/posts`.
208
216
 
209
- ```app/components/posts.js
217
+ ```app/components/posts.gjs
210
218
  import Component from '@glimmer/component';
211
219
  import { service } from '@ember/service';
212
220
 
@@ -222,7 +230,7 @@ declare module '@ember/routing/router-service' {
222
230
  The next example includes a dynamic segment, and will return `true` if the current route is `/posts/1`,
223
231
  assuming the post has an id of 1:
224
232
 
225
- ```app/components/posts.js
233
+ ```app/components/posts.gjs
226
234
  import Component from '@glimmer/component';
227
235
  import { service } from '@ember/service';
228
236
 
@@ -257,7 +265,7 @@ declare module '@ember/routing/router-service' {
257
265
  In the following example `recognize` is used to verify if a path belongs to our
258
266
  application before transitioning to it.
259
267
 
260
- ```
268
+ ```js
261
269
  import Component from '@ember/component';
262
270
  import { service } from '@ember/service';
263
271
 
@@ -568,7 +576,7 @@ declare module '@ember/routing/router-service' {
568
576
  and doesn't change the active route).
569
577
 
570
578
  Usage example:
571
- ```app/components/header.js
579
+ ```app/components/header.gjs
572
580
  import Component from '@glimmer/component';
573
581
  import { service } from '@ember/service';
574
582
  import { notEmpty } from '@ember/object/computed';
@@ -12,7 +12,7 @@ declare module '@glimmer/runtime/lib/helpers/array' {
12
12
  ```
13
13
  or
14
14
  ```handlebars
15
- {{my-component people=(array
15
+ {{yield people=(array
16
16
  'Tom Dale'
17
17
  'Yehuda Katz'
18
18
  this.myOtherPerson)
@@ -4,10 +4,15 @@ declare module '@glimmer/runtime/lib/helpers/concat' {
4
4
 
5
5
  Example:
6
6
 
7
- ```handlebars
8
- {{some-component name=(concat firstName " " lastName)}}
9
7
 
10
- {{! would pass name="<first name value> <last name value>" to the component}}
8
+ ```gjs
9
+ import { concat } from '@ember/helper';
10
+
11
+ <template>
12
+ {{yield (concat firstName " " lastName)}}
13
+
14
+ {{! would yield name="<first name value> <last name value>" to the component}}
15
+ </template>
11
16
  ```
12
17
 
13
18
  or for angle bracket invocation, you actually don't need concat at all.
@@ -9,13 +9,17 @@ declare module '@glimmer/runtime/lib/helpers/fn' {
9
9
  to a component invoked within the loop. Here's how you could use the `fn`
10
10
  helper to pass both the function and its arguments together:
11
11
 
12
- ```app/templates/components/items-listing.hbs
13
- {{#each @items as |item|}}
14
- <DisplayItem @item=item @select={{fn this.handleSelected item}} />
15
- {{/each}}
12
+ ```app/components/items-listing.gjs
13
+ import DisplayItem from './display-item';
14
+
15
+ <template>
16
+ {{#each @items as |item|}}
17
+ <DisplayItem @item=item @select={{fn this.handleSelected item}} />
18
+ {{/each}}
19
+ </template>
16
20
  ```
17
21
 
18
- ```app/components/items-list.js
22
+ ```app/components/items-list.gjs
19
23
  import Component from '@glimmer/component';
20
24
  import { action } from '@ember/object';
21
25
 
@@ -26,7 +30,7 @@ declare module '@glimmer/runtime/lib/helpers/fn' {
26
30
  }
27
31
  ```
28
32
 
29
- In this case the `display-item` component will receive a normal function
33
+ In this case the `DisplayItem` component will receive a normal function
30
34
  that it can invoke. When it invokes the function, the `handleSelected`
31
35
  function will receive the `item` and any arguments passed, thanks to the
32
36
  `fn` helper.
@@ -43,7 +47,7 @@ declare module '@glimmer/runtime/lib/helpers/fn' {
43
47
  `handleSelected` is properly bound to the `items-list`, but let's explore what
44
48
  happens if we left out the arrow function:
45
49
 
46
- ```app/components/items-list.js
50
+ ```app/components/items-list.gjs
47
51
  import Component from '@glimmer/component';
48
52
 
49
53
  export default class ItemsList extends Component {
@@ -60,6 +64,8 @@ declare module '@glimmer/runtime/lib/helpers/fn' {
60
64
 
61
65
  See also [partial application](https://en.wikipedia.org/wiki/Partial_application).
62
66
 
67
+ `fn` is built-in and does not require any additional imports.
68
+
63
69
  @method fn
64
70
  @public
65
71
  */
@@ -5,28 +5,31 @@ declare module '@glimmer/runtime/lib/helpers/get' {
5
5
 
6
6
  For example, these two usages are equivalent:
7
7
 
8
- ```app/components/developer-detail.js
8
+ ```app/components/developer-detail.gjs
9
9
  import Component from '@glimmer/component';
10
10
  import { tracked } from '@glimmer/tracking';
11
+ import { get } from '@ember/object';
11
12
 
12
13
  export default class extends Component {
13
14
  @tracked developer = {
14
15
  name: "Sandi Metz",
15
16
  language: "Ruby"
16
17
  }
18
+
19
+ <template>
20
+ {{this.developer.name}}
21
+ {{get this.developer "name"}}
22
+ </template>
17
23
  }
18
24
  ```
19
25
 
20
- ```handlebars
21
- {{this.developer.name}}
22
- {{get this.developer "name"}}
23
- ```
24
-
25
26
  If there were several facts about a person, the `{{get}}` helper can dynamically
26
27
  pick one:
27
28
 
28
- ```app/templates/application.hbs
29
- <DeveloperDetail @factName="language" />
29
+ ```app/templates/application.gjs
30
+ <template>
31
+ <DeveloperDetail @factName="language" />
32
+ </template>
30
33
  ```
31
34
 
32
35
  ```handlebars
@@ -36,10 +39,11 @@ declare module '@glimmer/runtime/lib/helpers/get' {
36
39
  For a more complex example, this template would allow the user to switch
37
40
  between showing the user's height and weight with a click:
38
41
 
39
- ```app/components/developer-detail.js
42
+ ```app/components/developer-detail.gjs
40
43
  import Component from '@glimmer/component';
41
44
  import { tracked } from '@glimmer/tracking';
42
-
45
+ import { get } from '@ember/object';
46
+
43
47
  export default class extends Component {
44
48
  @tracked developer = {
45
49
  name: "Sandi Metz",
@@ -51,28 +55,16 @@ declare module '@glimmer/runtime/lib/helpers/get' {
51
55
  showFact = (fact) => {
52
56
  this.currentFact = fact;
53
57
  }
54
- }
55
- ```
56
-
57
- ```app/components/developer-detail.js
58
- {{get this.developer this.currentFact}}
58
+
59
+ <template>
60
+ {{get this.developer this.currentFact}}
59
61
 
60
- <button {{on 'click' (fn this.showFact "name")}}>Show name</button>
61
- <button {{on 'click' (fn this.showFact "language")}}>Show language</button>
62
- ```
63
-
64
- The `{{get}}` helper can also respect mutable values itself. For example:
65
-
66
- ```app/components/developer-detail.js
67
- <Input @value={{mut (get this.person this.currentFact)}} />
68
-
69
- <button {{on 'click' (fn this.showFact "name")}}>Show name</button>
70
- <button {{on 'click' (fn this.showFact "language")}}>Show language</button>
62
+ <button {{on 'click' (fn this.showFact "name")}}>Show name</button>
63
+ <button {{on 'click' (fn this.showFact "language")}}>Show language</button>
64
+ </template>
65
+ }
71
66
  ```
72
67
 
73
- Would allow the user to swap what fact is being displayed, and also edit
74
- that fact via a two-way mutable binding.
75
-
76
68
  @public
77
69
  @method get
78
70
  */
@@ -1,7 +1,7 @@
1
1
  declare module '@glimmer/runtime/lib/helpers/hash' {
2
2
  /**
3
3
  Use the `{{hash}}` helper to create a hash to pass as an option to your
4
- components. This is specially useful for contextual components where you can
4
+ components. This is especially useful for contextual components where you can
5
5
  just yield a hash:
6
6
 
7
7
  ```handlebars
@@ -4,7 +4,7 @@ declare module '@glimmer/syntax/lib/get-template-locals' {
4
4
  includeHtmlElements?: boolean;
5
5
  }
6
6
  /**
7
- * Parses and traverses a given handlebars html template to extract all template locals
7
+ * Parses and traverses a given template to extract all template locals
8
8
  * referenced that could possible come from the parent scope. Can exclude known keywords
9
9
  * optionally.
10
10
  */
@@ -20,17 +20,7 @@ declare module '@glimmer/tracking' {
20
20
  property changes, any templates that used that property, directly or
21
21
  indirectly, will rerender. For instance, consider this component:
22
22
 
23
- ```handlebars
24
- <div>Count: {{this.count}}</div>
25
- <div>Times Ten: {{this.timesTen}}</div>
26
- <div>
27
- <button {{on "click" this.plusOne}}>
28
- Plus One
29
- </button>
30
- </div>
31
- ```
32
-
33
- ```javascript
23
+ ```gjs
34
24
  import Component from '@glimmer/component';
35
25
  import { tracked } from '@glimmer/tracking';
36
26
  import { action } from '@ember/object';
@@ -46,6 +36,16 @@ declare module '@glimmer/tracking' {
46
36
  plusOne() {
47
37
  this.count += 1;
48
38
  }
39
+
40
+ <template>
41
+ <div>Count: {{this.count}}</div>
42
+ <div>Times Ten: {{this.timesTen}}</div>
43
+ <div>
44
+ <button {{on "click" this.plusOne}}>
45
+ Plus One
46
+ </button>
47
+ </div>
48
+ </template>
49
49
  }
50
50
  ```
51
51
 
@@ -55,7 +55,7 @@ declare module '@glimmer/tracking' {
55
55
  will cause a rerender when updated - this includes through method calls and
56
56
  other means:
57
57
 
58
- ```javascript
58
+ ```gjs
59
59
  import Component from '@glimmer/component';
60
60
  import { tracked } from '@glimmer/tracking';
61
61
 
@@ -177,7 +177,6 @@
177
177
  /// <reference path="./@ember/-internals/views/index.d.ts" />
178
178
  /// <reference path="./@ember/-internals/views/lib/compat/attrs.d.ts" />
179
179
  /// <reference path="./@ember/-internals/views/lib/compat/fallback-view-registry.d.ts" />
180
- /// <reference path="./@ember/-internals/views/lib/component_lookup.d.ts" />
181
180
  /// <reference path="./@ember/-internals/views/lib/mixins/action_support.d.ts" />
182
181
  /// <reference path="./@ember/-internals/views/lib/system/event_dispatcher.d.ts" />
183
182
  /// <reference path="./@ember/-internals/views/lib/system/utils.d.ts" />
@@ -1,14 +0,0 @@
1
- import EmberObject from '../../../object/index.js';
2
-
3
- class ComponentLookup extends EmberObject {
4
- componentFor(name, owner) {
5
- let fullName = `component:${name}`;
6
- return owner.factoryFor(fullName);
7
- }
8
- layoutFor(name, owner, options) {
9
- let templateFullName = `template:components/${name}`;
10
- return owner.lookup(templateFullName, options);
11
- }
12
- }
13
-
14
- export { ComponentLookup as default };
@@ -1,19 +0,0 @@
1
- // import Logger from './logger';
2
-
3
- function assert(test, msg) {
4
- }
5
-
6
- /**
7
- * This constant exists to make it easier to differentiate normal logs from
8
- * errant console.logs. LOGGER can be used outside of LOCAL_TRACE_LOGGING checks,
9
- * and is meant to be used in the rare situation where a console.* call is
10
- * actually appropriate.
11
- */
12
- const LOGGER = console;
13
- function assertNever(value, desc = 'unexpected unreachable branch') {
14
- LOGGER.log('unreachable', value);
15
- LOGGER.log(`${desc} :: ${JSON.stringify(value)} (${value})`);
16
- throw new Error(`code reached unreachable`);
17
- }
18
-
19
- export { assert as a, assertNever as b };