ember-source 4.10.0-beta.2 → 4.11.0-alpha.2

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 (361) hide show
  1. package/CHANGELOG.md +5 -1
  2. package/build-metadata.json +3 -3
  3. package/dist/ember-template-compiler.js +147 -172
  4. package/dist/ember-template-compiler.map +1 -1
  5. package/dist/ember-testing.js +129 -6
  6. package/dist/ember-testing.map +1 -1
  7. package/dist/ember.debug.js +334 -314
  8. package/dist/ember.debug.map +1 -1
  9. package/dist/header/license.js +1 -1
  10. package/dist/packages/@ember/-internals/glimmer/index.js +60 -59
  11. package/dist/packages/@ember/-internals/metal/index.js +6 -6
  12. package/dist/packages/@ember/-internals/{utils/types.js → utility-types/index.js} +0 -0
  13. package/dist/packages/@ember/-internals/utils/index.js +3 -137
  14. package/dist/packages/@ember/-internals/views/lib/mixins/action_support.js +1 -2
  15. package/dist/packages/@ember/-internals/views/lib/views/states/default.js +1 -2
  16. package/dist/packages/@ember/-internals/views/lib/views/states/destroying.js +2 -3
  17. package/dist/packages/@ember/-internals/views/lib/views/states/in_dom.js +1 -2
  18. package/dist/packages/@ember/array/-internals.js +8 -0
  19. package/dist/packages/@ember/array/index.js +2 -2
  20. package/dist/packages/@ember/array/lib/make-array.js +10 -0
  21. package/dist/packages/@ember/canary-features/index.js +0 -4
  22. package/dist/packages/@ember/debug/data-adapter.js +16 -16
  23. package/dist/packages/@ember/debug/index.js +2 -3
  24. package/dist/packages/@ember/debug/lib/inspect.js +117 -0
  25. package/dist/packages/@ember/engine/instance.js +1 -2
  26. package/dist/packages/@ember/instrumentation/index.js +2 -8
  27. package/dist/packages/@ember/object/core.js +2 -1
  28. package/dist/packages/@ember/object/mixin.js +11 -2
  29. package/dist/packages/@ember/object/promise-proxy-mixin.js +1 -2
  30. package/dist/packages/@ember/owner/index.js +2 -2
  31. package/dist/packages/@ember/routing/lib/utils.js +1 -2
  32. package/dist/packages/@ember/routing/router.js +36 -37
  33. package/dist/packages/ember/index.js +3 -3
  34. package/dist/packages/ember/version.js +1 -1
  35. package/dist/packages/ember-testing/lib/adapters/qunit.js +1 -1
  36. package/docs/data.json +252 -253
  37. package/package.json +19 -19
  38. package/types/preview/@ember/controller/index.d.ts +1 -1
  39. package/types/preview/@ember/engine/-private/container-proxy-mixin.d.ts +1 -1
  40. package/types/preview/@ember/engine/-private/registry-proxy-mixin.d.ts +1 -1
  41. package/types/preview/@ember/error/index.d.ts +2 -2
  42. package/types/preview/ember/index.d.ts +1 -1
  43. package/types/preview/index.d.ts +0 -2
  44. package/types/publish.mjs +314 -294
  45. package/types/stable/@ember/-internals/bootstrap/index.d.ts +3 -0
  46. package/types/stable/@ember/-internals/browser-environment/index.d.ts +9 -0
  47. package/types/stable/@ember/-internals/browser-environment/lib/has-dom.d.ts +4 -0
  48. package/types/stable/@ember/-internals/container/index.d.ts +4 -0
  49. package/types/stable/@ember/-internals/container/lib/container.d.ts +164 -0
  50. package/types/stable/@ember/-internals/container/lib/registry.d.ts +292 -0
  51. package/types/stable/@ember/-internals/environment/index.d.ts +5 -0
  52. package/types/stable/@ember/-internals/environment/lib/context.d.ts +10 -0
  53. package/types/stable/@ember/-internals/environment/lib/env.d.ts +153 -0
  54. package/types/stable/@ember/-internals/environment/lib/global.d.ts +4 -0
  55. package/types/stable/@ember/-internals/error-handling/index.d.ts +9 -0
  56. package/types/stable/@ember/-internals/glimmer/index.d.ts +456 -0
  57. package/types/stable/@ember/-internals/glimmer/lib/component-managers/curly.d.ts +47 -0
  58. package/types/stable/@ember/-internals/glimmer/lib/component-managers/mount.d.ts +41 -0
  59. package/types/stable/@ember/-internals/glimmer/lib/component-managers/outlet.d.ts +51 -0
  60. package/types/stable/@ember/-internals/glimmer/lib/component-managers/root.d.ts +23 -0
  61. package/types/stable/@ember/-internals/glimmer/lib/component.d.ts +840 -0
  62. package/types/stable/@ember/-internals/glimmer/lib/components/abstract-input.d.ts +37 -0
  63. package/types/stable/@ember/-internals/glimmer/lib/components/input.d.ts +4 -0
  64. package/types/stable/@ember/-internals/glimmer/lib/components/internal.d.ts +48 -0
  65. package/types/stable/@ember/-internals/glimmer/lib/components/link-to.d.ts +4 -0
  66. package/types/stable/@ember/-internals/glimmer/lib/components/textarea.d.ts +4 -0
  67. package/types/stable/@ember/-internals/glimmer/lib/dom.d.ts +4 -0
  68. package/types/stable/@ember/-internals/glimmer/lib/environment.d.ts +11 -0
  69. package/types/stable/@ember/-internals/glimmer/lib/glimmer-component-docs.d.ts +387 -0
  70. package/types/stable/@ember/-internals/glimmer/lib/glimmer-tracking-docs.d.ts +249 -0
  71. package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +160 -0
  72. package/types/stable/@ember/-internals/glimmer/lib/helpers/-disallow-dynamic-resolution.d.ts +4 -0
  73. package/types/stable/@ember/-internals/glimmer/lib/helpers/-in-element-null-check.d.ts +4 -0
  74. package/types/stable/@ember/-internals/glimmer/lib/helpers/-normalize-class.d.ts +4 -0
  75. package/types/stable/@ember/-internals/glimmer/lib/helpers/-resolve.d.ts +4 -0
  76. package/types/stable/@ember/-internals/glimmer/lib/helpers/-track-array.d.ts +9 -0
  77. package/types/stable/@ember/-internals/glimmer/lib/helpers/action.d.ts +268 -0
  78. package/types/stable/@ember/-internals/glimmer/lib/helpers/array.d.ts +40 -0
  79. package/types/stable/@ember/-internals/glimmer/lib/helpers/component.d.ts +148 -0
  80. package/types/stable/@ember/-internals/glimmer/lib/helpers/concat.d.ts +27 -0
  81. package/types/stable/@ember/-internals/glimmer/lib/helpers/each-in.d.ts +160 -0
  82. package/types/stable/@ember/-internals/glimmer/lib/helpers/fn.d.ts +72 -0
  83. package/types/stable/@ember/-internals/glimmer/lib/helpers/get.d.ts +99 -0
  84. package/types/stable/@ember/-internals/glimmer/lib/helpers/hash.d.ts +43 -0
  85. package/types/stable/@ember/-internals/glimmer/lib/helpers/helper.d.ts +42 -0
  86. package/types/stable/@ember/-internals/glimmer/lib/helpers/if-unless.d.ts +181 -0
  87. package/types/stable/@ember/-internals/glimmer/lib/helpers/internal-helper.d.ts +5 -0
  88. package/types/stable/@ember/-internals/glimmer/lib/helpers/log.d.ts +18 -0
  89. package/types/stable/@ember/-internals/glimmer/lib/helpers/modifier.d.ts +41 -0
  90. package/types/stable/@ember/-internals/glimmer/lib/helpers/mut.d.ts +77 -0
  91. package/types/stable/@ember/-internals/glimmer/lib/helpers/page-title.d.ts +19 -0
  92. package/types/stable/@ember/-internals/glimmer/lib/helpers/readonly.d.ts +119 -0
  93. package/types/stable/@ember/-internals/glimmer/lib/helpers/unbound.d.ts +34 -0
  94. package/types/stable/@ember/-internals/glimmer/lib/helpers/unique-id.d.ts +7 -0
  95. package/types/stable/@ember/-internals/glimmer/lib/modifiers/action.d.ts +30 -0
  96. package/types/stable/@ember/-internals/glimmer/lib/modifiers/internal.d.ts +33 -0
  97. package/types/stable/@ember/-internals/glimmer/lib/modifiers/on.d.ts +94 -0
  98. package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +96 -0
  99. package/types/stable/@ember/-internals/glimmer/lib/resolver.d.ts +16 -0
  100. package/types/stable/@ember/-internals/glimmer/lib/setup-registry.d.ts +5 -0
  101. package/types/stable/@ember/-internals/glimmer/lib/syntax/in-element.d.ts +46 -0
  102. package/types/stable/@ember/-internals/glimmer/lib/syntax/let.d.ts +54 -0
  103. package/types/stable/@ember/-internals/glimmer/lib/syntax/mount.d.ts +43 -0
  104. package/types/stable/@ember/-internals/glimmer/lib/syntax/outlet.d.ts +27 -0
  105. package/types/stable/@ember/-internals/glimmer/lib/syntax/utils.d.ts +4 -0
  106. package/types/stable/@ember/-internals/glimmer/lib/template.d.ts +6 -0
  107. package/types/stable/@ember/-internals/glimmer/lib/template_registry.d.ts +11 -0
  108. package/types/stable/@ember/-internals/glimmer/lib/utils/bindings.d.ts +10 -0
  109. package/types/stable/@ember/-internals/glimmer/lib/utils/curly-component-state-bucket.d.ts +31 -0
  110. package/types/stable/@ember/-internals/glimmer/lib/utils/debug-render-message.d.ts +4 -0
  111. package/types/stable/@ember/-internals/glimmer/lib/utils/iterator.d.ts +5 -0
  112. package/types/stable/@ember/-internals/glimmer/lib/utils/managers.d.ts +19 -0
  113. package/types/stable/@ember/-internals/glimmer/lib/utils/outlet.d.ts +51 -0
  114. package/types/stable/@ember/-internals/glimmer/lib/utils/process-args.d.ts +4 -0
  115. package/types/stable/@ember/-internals/glimmer/lib/utils/serialization-first-node-helpers.d.ts +3 -0
  116. package/types/stable/@ember/-internals/glimmer/lib/utils/string.d.ts +61 -0
  117. package/types/stable/@ember/-internals/glimmer/lib/utils/to-bool.d.ts +3 -0
  118. package/types/stable/@ember/-internals/glimmer/lib/views/outlet.d.ts +34 -0
  119. package/types/stable/@ember/-internals/meta/index.d.ts +3 -0
  120. package/types/stable/@ember/-internals/meta/lib/meta.d.ts +174 -0
  121. package/types/stable/@ember/-internals/metal/index.d.ts +26 -0
  122. package/types/stable/@ember/-internals/metal/lib/alias.d.ts +22 -0
  123. package/types/stable/@ember/-internals/metal/lib/array.d.ts +18 -0
  124. package/types/stable/@ember/-internals/metal/lib/array_events.d.ts +6 -0
  125. package/types/stable/@ember/-internals/metal/lib/cache.d.ts +121 -0
  126. package/types/stable/@ember/-internals/metal/lib/cached.d.ts +3 -0
  127. package/types/stable/@ember/-internals/metal/lib/chain-tags.d.ts +8 -0
  128. package/types/stable/@ember/-internals/metal/lib/change_event.d.ts +3 -0
  129. package/types/stable/@ember/-internals/metal/lib/computed.d.ts +484 -0
  130. package/types/stable/@ember/-internals/metal/lib/computed_cache.d.ts +3 -0
  131. package/types/stable/@ember/-internals/metal/lib/decorator.d.ts +64 -0
  132. package/types/stable/@ember/-internals/metal/lib/dependent_keys.d.ts +2 -0
  133. package/types/stable/@ember/-internals/metal/lib/deprecate_property.d.ts +18 -0
  134. package/types/stable/@ember/-internals/metal/lib/each_proxy_events.d.ts +5 -0
  135. package/types/stable/@ember/-internals/metal/lib/events.d.ts +91 -0
  136. package/types/stable/@ember/-internals/metal/lib/expand_properties.d.ts +33 -0
  137. package/types/stable/@ember/-internals/metal/lib/get_properties.d.ts +36 -0
  138. package/types/stable/@ember/-internals/metal/lib/injected_property.d.ts +25 -0
  139. package/types/stable/@ember/-internals/metal/lib/libraries.d.ts +31 -0
  140. package/types/stable/@ember/-internals/metal/lib/namespace_search.d.ts +19 -0
  141. package/types/stable/@ember/-internals/metal/lib/observer.d.ts +54 -0
  142. package/types/stable/@ember/-internals/metal/lib/path_cache.d.ts +3 -0
  143. package/types/stable/@ember/-internals/metal/lib/properties.d.ts +58 -0
  144. package/types/stable/@ember/-internals/metal/lib/property_events.d.ts +59 -0
  145. package/types/stable/@ember/-internals/metal/lib/property_get.d.ts +44 -0
  146. package/types/stable/@ember/-internals/metal/lib/property_set.d.ts +52 -0
  147. package/types/stable/@ember/-internals/metal/lib/set_properties.d.ts +32 -0
  148. package/types/stable/@ember/-internals/metal/lib/tags.d.ts +7 -0
  149. package/types/stable/@ember/-internals/metal/lib/tracked.d.ts +78 -0
  150. package/types/stable/@ember/-internals/overrides/index.d.ts +3 -0
  151. package/types/stable/@ember/-internals/owner/index.d.ts +646 -0
  152. package/types/stable/@ember/-internals/routing/index.d.ts +3 -0
  153. package/types/stable/@ember/-internals/runtime/index.d.ts +11 -0
  154. package/types/stable/@ember/-internals/runtime/lib/ext/rsvp.d.ts +5 -0
  155. package/types/stable/@ember/-internals/runtime/lib/mixins/-proxy.d.ts +34 -0
  156. package/types/stable/@ember/-internals/runtime/lib/mixins/action_handler.d.ts +23 -0
  157. package/types/stable/@ember/-internals/runtime/lib/mixins/comparable.d.ts +22 -0
  158. package/types/stable/@ember/-internals/runtime/lib/mixins/container_proxy.d.ts +22 -0
  159. package/types/stable/@ember/-internals/runtime/lib/mixins/registry_proxy.d.ts +22 -0
  160. package/types/stable/@ember/-internals/runtime/lib/mixins/target_action_support.d.ts +29 -0
  161. package/types/stable/@ember/-internals/utility-types/index.d.ts +10 -0
  162. package/types/stable/@ember/-internals/utils/index.d.ts +16 -0
  163. package/types/stable/@ember/-internals/utils/lib/cache.d.ts +14 -0
  164. package/types/stable/@ember/-internals/utils/lib/dictionary.d.ts +7 -0
  165. package/types/stable/@ember/-internals/utils/lib/get-debug-name.d.ts +4 -0
  166. package/types/stable/@ember/-internals/utils/lib/guid.d.ts +60 -0
  167. package/types/stable/@ember/-internals/utils/lib/intern.d.ts +42 -0
  168. package/types/stable/@ember/-internals/utils/lib/invoke.d.ts +24 -0
  169. package/types/stable/@ember/-internals/utils/lib/is_proxy.d.ts +5 -0
  170. package/types/stable/@ember/-internals/utils/lib/lookup-descriptor.d.ts +3 -0
  171. package/types/stable/@ember/-internals/utils/lib/mandatory-setter.d.ts +6 -0
  172. package/types/stable/@ember/-internals/utils/lib/name.d.ts +4 -0
  173. package/types/stable/@ember/-internals/utils/lib/spec.d.ts +14 -0
  174. package/types/stable/@ember/-internals/utils/lib/super.d.ts +31 -0
  175. package/types/stable/@ember/-internals/utils/lib/symbol.d.ts +5 -0
  176. package/types/stable/@ember/-internals/utils/lib/to-string.d.ts +3 -0
  177. package/types/stable/@ember/-internals/views/index.d.ts +13 -0
  178. package/types/stable/@ember/-internals/views/lib/compat/attrs.d.ts +3 -0
  179. package/types/stable/@ember/-internals/views/lib/compat/fallback-view-registry.d.ts +6 -0
  180. package/types/stable/@ember/-internals/views/lib/component_lookup.d.ts +5 -0
  181. package/types/stable/@ember/-internals/views/lib/mixins/action_support.d.ts +13 -0
  182. package/types/stable/@ember/-internals/views/lib/mixins/child_views_support.d.ts +13 -0
  183. package/types/stable/@ember/-internals/views/lib/mixins/class_names_support.d.ts +14 -0
  184. package/types/stable/@ember/-internals/views/lib/mixins/view_state_support.d.ts +13 -0
  185. package/types/stable/@ember/-internals/views/lib/mixins/view_support.d.ts +25 -0
  186. package/types/stable/@ember/-internals/views/lib/system/action_manager.d.ts +11 -0
  187. package/types/stable/@ember/-internals/views/lib/system/event_dispatcher.d.ts +117 -0
  188. package/types/stable/@ember/-internals/views/lib/system/utils.d.ts +94 -0
  189. package/types/stable/@ember/-internals/views/lib/views/core_view.d.ts +60 -0
  190. package/types/stable/@ember/-internals/views/lib/views/states/default.d.ts +5 -0
  191. package/types/stable/@ember/-internals/views/lib/views/states/destroying.d.ts +5 -0
  192. package/types/stable/@ember/-internals/views/lib/views/states/has_element.d.ts +5 -0
  193. package/types/stable/@ember/-internals/views/lib/views/states/in_dom.d.ts +5 -0
  194. package/types/stable/@ember/-internals/views/lib/views/states/pre_render.d.ts +11 -0
  195. package/types/stable/@ember/-internals/views/lib/views/states.d.ts +25 -0
  196. package/types/stable/@ember/application/index.d.ts +814 -0
  197. package/types/stable/@ember/application/instance.d.ts +288 -0
  198. package/types/stable/@ember/application/lib/lazy_load.d.ts +38 -0
  199. package/types/stable/@ember/application/namespace.d.ts +38 -0
  200. package/types/stable/@ember/array/-internals.d.ts +5 -0
  201. package/types/stable/@ember/array/index.d.ts +1457 -0
  202. package/types/stable/@ember/array/lib/make-array.d.ts +34 -0
  203. package/types/stable/@ember/array/mutable.d.ts +3 -0
  204. package/types/stable/@ember/array/proxy.d.ts +158 -0
  205. package/types/stable/@ember/canary-features/index.d.ts +49 -0
  206. package/types/stable/@ember/component/helper.d.ts +3 -0
  207. package/types/stable/@ember/component/index.d.ts +5 -0
  208. package/types/stable/@ember/component/template-only.d.ts +33 -0
  209. package/types/stable/@ember/controller/index.d.ts +277 -0
  210. package/types/stable/@ember/debug/container-debug-adapter.d.ts +73 -0
  211. package/types/stable/@ember/debug/data-adapter.d.ts +325 -0
  212. package/types/stable/@ember/debug/index.d.ts +52 -0
  213. package/types/stable/@ember/debug/lib/capture-render-tree.d.ts +21 -0
  214. package/types/stable/@ember/debug/lib/deprecate.d.ts +72 -0
  215. package/types/stable/@ember/debug/lib/handlers.d.ts +14 -0
  216. package/types/stable/@ember/debug/lib/inspect.d.ts +20 -0
  217. package/types/stable/@ember/debug/lib/testing.d.ts +4 -0
  218. package/types/stable/@ember/debug/lib/warn.d.ts +14 -0
  219. package/types/stable/@ember/deprecated-features/index.d.ts +3 -0
  220. package/types/stable/@ember/destroyable/index.d.ts +237 -0
  221. package/types/stable/@ember/engine/index.d.ts +347 -0
  222. package/types/stable/@ember/engine/instance.d.ts +127 -0
  223. package/types/stable/@ember/engine/lib/engine-parent.d.ts +27 -0
  224. package/types/stable/@ember/enumerable/index.d.ts +19 -0
  225. package/types/stable/@ember/enumerable/mutable.d.ts +21 -0
  226. package/types/stable/@ember/error/index.d.ts +15 -0
  227. package/types/stable/@ember/helper/index.d.ts +314 -0
  228. package/types/stable/@ember/instrumentation/index.d.ts +127 -0
  229. package/types/stable/@ember/modifier/index.d.ts +5 -0
  230. package/types/stable/@ember/object/-internals.d.ts +9 -0
  231. package/types/stable/@ember/object/compat.d.ts +90 -0
  232. package/types/stable/@ember/object/computed.d.ts +5 -0
  233. package/types/stable/@ember/object/core.d.ts +638 -0
  234. package/types/stable/@ember/object/evented.d.ts +134 -0
  235. package/types/stable/@ember/object/events.d.ts +3 -0
  236. package/types/stable/@ember/object/index.d.ts +60 -0
  237. package/types/stable/@ember/object/internals.d.ts +3 -0
  238. package/types/stable/@ember/object/lib/computed/computed_macros.d.ts +644 -0
  239. package/types/stable/@ember/object/lib/computed/reduce_computed_macros.d.ts +791 -0
  240. package/types/stable/@ember/object/mixin.d.ts +157 -0
  241. package/types/stable/@ember/object/observable.d.ts +383 -0
  242. package/types/stable/@ember/object/observers.d.ts +3 -0
  243. package/types/stable/@ember/object/promise-proxy-mixin.d.ts +167 -0
  244. package/types/stable/@ember/object/proxy.d.ts +88 -0
  245. package/types/stable/@ember/owner/index.d.ts +80 -0
  246. package/types/stable/@ember/polyfills/index.d.ts +4 -0
  247. package/types/stable/@ember/polyfills/lib/assign.d.ts +9 -0
  248. package/types/stable/@ember/renderer/index.d.ts +28 -0
  249. package/types/stable/@ember/routing/-internals.d.ts +11 -0
  250. package/types/stable/@ember/routing/auto-location.d.ts +149 -0
  251. package/types/stable/@ember/routing/hash-location.d.ts +113 -0
  252. package/types/stable/@ember/routing/history-location.d.ts +143 -0
  253. package/types/stable/@ember/routing/index.d.ts +3 -0
  254. package/types/stable/@ember/routing/lib/cache.d.ts +16 -0
  255. package/types/stable/@ember/routing/lib/controller_for.d.ts +15 -0
  256. package/types/stable/@ember/routing/lib/dsl.d.ts +52 -0
  257. package/types/stable/@ember/routing/lib/engines.d.ts +14 -0
  258. package/types/stable/@ember/routing/lib/generate_controller.d.ts +25 -0
  259. package/types/stable/@ember/routing/lib/location-utils.d.ts +31 -0
  260. package/types/stable/@ember/routing/lib/query_params.d.ts +7 -0
  261. package/types/stable/@ember/routing/lib/route-info.d.ts +3 -0
  262. package/types/stable/@ember/routing/lib/router_state.d.ts +13 -0
  263. package/types/stable/@ember/routing/lib/routing-service.d.ts +35 -0
  264. package/types/stable/@ember/routing/lib/utils.d.ts +36 -0
  265. package/types/stable/@ember/routing/location.d.ts +108 -0
  266. package/types/stable/@ember/routing/none-location.d.ts +83 -0
  267. package/types/stable/@ember/routing/route-info.d.ts +125 -0
  268. package/types/stable/@ember/routing/route.d.ts +1456 -0
  269. package/types/stable/@ember/routing/router-service.d.ts +588 -0
  270. package/types/stable/@ember/routing/router.d.ts +431 -0
  271. package/types/stable/@ember/routing/transition.d.ts +180 -0
  272. package/types/stable/@ember/runloop/index.d.ts +657 -0
  273. package/types/stable/@ember/service/index.d.ts +82 -0
  274. package/types/stable/@ember/string/index.d.ts +152 -0
  275. package/types/stable/@ember/string/lib/string_registry.d.ts +9 -0
  276. package/types/stable/@ember/template/index.d.ts +3 -0
  277. package/types/stable/@ember/template-compilation/index.d.ts +4 -0
  278. package/types/stable/@ember/template-factory/index.d.ts +3 -0
  279. package/types/stable/@ember/test/adapter.d.ts +4 -0
  280. package/types/stable/@ember/test/index.d.ts +8 -0
  281. package/types/stable/@ember/utils/index.d.ts +9 -0
  282. package/types/stable/@ember/utils/lib/compare.d.ts +54 -0
  283. package/types/stable/@ember/utils/lib/is-equal.d.ts +52 -0
  284. package/types/stable/@ember/utils/lib/is_blank.d.ts +32 -0
  285. package/types/stable/@ember/utils/lib/is_empty.d.ts +38 -0
  286. package/types/stable/@ember/utils/lib/is_none.d.ts +26 -0
  287. package/types/stable/@ember/utils/lib/is_present.d.ts +35 -0
  288. package/types/stable/@ember/utils/lib/type-of.d.ts +68 -0
  289. package/types/stable/@ember/version/index.d.ts +3 -0
  290. package/types/stable/@glimmer/tracking/index.d.ts +203 -0
  291. package/types/stable/@glimmer/tracking/primitives/cache.d.ts +3 -0
  292. package/types/stable/ember/index.d.ts +376 -0
  293. package/types/stable/ember-template-compiler/index.d.ts +21 -0
  294. package/types/stable/ember-template-compiler/lib/plugins/assert-against-attrs.d.ts +20 -0
  295. package/types/stable/ember-template-compiler/lib/plugins/assert-against-named-outlets.d.ts +14 -0
  296. package/types/stable/ember-template-compiler/lib/plugins/assert-input-helper-without-block.d.ts +5 -0
  297. package/types/stable/ember-template-compiler/lib/plugins/assert-reserved-named-arguments.d.ts +5 -0
  298. package/types/stable/ember-template-compiler/lib/plugins/assert-splattribute-expression.d.ts +5 -0
  299. package/types/stable/ember-template-compiler/lib/plugins/index.d.ts +5 -0
  300. package/types/stable/ember-template-compiler/lib/plugins/transform-action-syntax.d.ts +28 -0
  301. package/types/stable/ember-template-compiler/lib/plugins/transform-each-in-into-each.d.ts +24 -0
  302. package/types/stable/ember-template-compiler/lib/plugins/transform-each-track-array.d.ts +24 -0
  303. package/types/stable/ember-template-compiler/lib/plugins/transform-in-element.d.ts +22 -0
  304. package/types/stable/ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings.d.ts +4 -0
  305. package/types/stable/ember-template-compiler/lib/plugins/transform-resolutions.d.ts +5 -0
  306. package/types/stable/ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet.d.ts +36 -0
  307. package/types/stable/ember-template-compiler/lib/plugins/utils.d.ts +13 -0
  308. package/types/stable/ember-template-compiler/lib/system/bootstrap.d.ts +26 -0
  309. package/types/stable/ember-template-compiler/lib/system/calculate-location-display.d.ts +4 -0
  310. package/types/stable/ember-template-compiler/lib/system/compile-options.d.ts +6 -0
  311. package/types/stable/ember-template-compiler/lib/system/compile.d.ts +13 -0
  312. package/types/stable/ember-template-compiler/lib/system/dasherize-component-name.d.ts +5 -0
  313. package/types/stable/ember-template-compiler/lib/system/initializer.d.ts +3 -0
  314. package/types/stable/ember-template-compiler/lib/system/precompile.d.ts +17 -0
  315. package/types/stable/ember-testing/index.d.ts +10 -0
  316. package/types/stable/ember-testing/lib/adapters/adapter.d.ts +20 -0
  317. package/types/stable/ember-testing/lib/adapters/qunit.d.ts +19 -0
  318. package/types/stable/ember-testing/lib/ext/application.d.ts +12 -0
  319. package/types/stable/ember-testing/lib/ext/rsvp.d.ts +4 -0
  320. package/types/stable/ember-testing/lib/helpers/and_then.d.ts +4 -0
  321. package/types/stable/ember-testing/lib/helpers/current_path.d.ts +22 -0
  322. package/types/stable/ember-testing/lib/helpers/current_route_name.d.ts +21 -0
  323. package/types/stable/ember-testing/lib/helpers/current_url.d.ts +22 -0
  324. package/types/stable/ember-testing/lib/helpers/pause_test.d.ts +53 -0
  325. package/types/stable/ember-testing/lib/helpers/visit.d.ts +22 -0
  326. package/types/stable/ember-testing/lib/helpers/wait.d.ts +34 -0
  327. package/types/stable/ember-testing/lib/helpers.d.ts +3 -0
  328. package/types/stable/ember-testing/lib/initializers.d.ts +3 -0
  329. package/types/stable/ember-testing/lib/setup_for_testing.d.ts +15 -0
  330. package/types/stable/ember-testing/lib/test/adapter.d.ts +7 -0
  331. package/types/stable/ember-testing/lib/test/helpers.d.ts +115 -0
  332. package/types/stable/ember-testing/lib/test/on_inject_helpers.d.ts +33 -0
  333. package/types/stable/ember-testing/lib/test/pending_requests.d.ts +6 -0
  334. package/types/stable/ember-testing/lib/test/promise.d.ts +38 -0
  335. package/types/stable/ember-testing/lib/test/run.d.ts +3 -0
  336. package/types/stable/ember-testing/lib/test/waiters.d.ts +67 -0
  337. package/types/stable/ember-testing/lib/test.d.ts +47 -0
  338. package/types/stable/index.d.ts +47 -0
  339. package/types/preview/@ember/application/tsconfig.json +0 -3
  340. package/types/preview/@ember/array/tsconfig.json +0 -3
  341. package/types/preview/@ember/component/tsconfig.json +0 -3
  342. package/types/preview/@ember/controller/tsconfig.json +0 -3
  343. package/types/preview/@ember/debug/tsconfig.json +0 -3
  344. package/types/preview/@ember/destroyable/tsconfig.json +0 -3
  345. package/types/preview/@ember/engine/tsconfig.json +0 -3
  346. package/types/preview/@ember/error/tsconfig.json +0 -3
  347. package/types/preview/@ember/helper/tsconfig.json +0 -3
  348. package/types/preview/@ember/modifier/tsconfig.json +0 -3
  349. package/types/preview/@ember/object/tsconfig.json +0 -3
  350. package/types/preview/@ember/owner/index.d.ts +0 -423
  351. package/types/preview/@ember/owner/tsconfig.json +0 -3
  352. package/types/preview/@ember/polyfills/tsconfig.json +0 -3
  353. package/types/preview/@ember/routing/tsconfig.json +0 -3
  354. package/types/preview/@ember/runloop/tsconfig.json +0 -3
  355. package/types/preview/@ember/service/tsconfig.json +0 -3
  356. package/types/preview/@ember/string/tsconfig.json +0 -3
  357. package/types/preview/@ember/template/tsconfig.json +0 -3
  358. package/types/preview/@ember/test/tsconfig.json +0 -3
  359. package/types/preview/@ember/utils/tsconfig.json +0 -3
  360. package/types/preview/ember/tsconfig.json +0 -3
  361. package/types/preview/tsconfig.json +0 -6
@@ -0,0 +1,249 @@
1
+ declare module '@ember/-internals/glimmer/lib/glimmer-tracking-docs.d.ts' {
2
+ /**
3
+ In order to tell Ember a value might change, we need to mark it as trackable.
4
+ Trackable values are values that:
5
+
6
+ - Can change over their component’s lifetime and
7
+ - Should cause Ember to rerender if and when they change
8
+
9
+ We can do this by marking the field with the `@tracked` decorator.
10
+
11
+ ### Caching a getter value
12
+
13
+ The `@cached` decorator can be used on getters in order to cache the
14
+ return value of the getter.
15
+
16
+ This method adds an extra overhead to each memoized getter, therefore caching
17
+ the values should not be the default strategy, but used in last resort.
18
+
19
+ @module @glimmer/tracking
20
+ @public
21
+ */
22
+ /**
23
+ Marks a property as tracked. By default, values that are rendered in Ember app
24
+ templates are _static_, meaning that updates to them won't cause the
25
+ application to rerender. Marking a property as tracked means that when that
26
+ property changes, any templates that used that property, directly or
27
+ indirectly, will rerender. For instance, consider this component:
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
40
+ import Component from '@glimmer/component';
41
+ import { tracked } from '@glimmer/tracking';
42
+ import { action } from '@ember/object';
43
+
44
+ export default class CounterComponent extends Component {
45
+ @tracked count = 0;
46
+
47
+ get timesTen() {
48
+ return this.count * 10;
49
+ }
50
+
51
+ @action
52
+ plusOne() {
53
+ this.count += 1;
54
+ }
55
+ }
56
+ ```
57
+
58
+ Both the `{{this.count}}` and the `{{this.timesTen}}` properties in the
59
+ template will update whenever the button is clicked. Any tracked properties
60
+ that are used in any way to calculate a value that is used in the template
61
+ will cause a rerender when updated - this includes through method calls and
62
+ other means:
63
+
64
+ ```javascript
65
+ import Component from '@glimmer/component';
66
+ import { tracked } from '@glimmer/tracking';
67
+
68
+ class Entry {
69
+ @tracked name;
70
+ @tracked phoneNumber;
71
+
72
+ constructor(name, phoneNumber) {
73
+ this.name = name;
74
+ this.phoneNumber = phoneNumber;
75
+ }
76
+ }
77
+
78
+ export default class PhoneBookComponent extends Component {
79
+ entries = [
80
+ new Entry('Pizza Palace', 5551234),
81
+ new Entry('1st Street Cleaners', 5554321),
82
+ new Entry('Plants R Us', 5552468),
83
+ ];
84
+
85
+ // Any usage of this property will update whenever any of the names in the
86
+ // entries arrays are updated
87
+ get names() {
88
+ return this.entries.map(e => e.name);
89
+ }
90
+
91
+ // Any usage of this property will update whenever any of the numbers in the
92
+ // entries arrays are updated
93
+ get numbers() {
94
+ return this.getFormattedNumbers();
95
+ }
96
+
97
+ getFormattedNumbers() {
98
+ return this.entries
99
+ .map(e => e.phoneNumber)
100
+ .map(number => {
101
+ let numberString = '' + number;
102
+
103
+ return numberString.slice(0, 3) + '-' + numberString.slice(3);
104
+ });
105
+ }
106
+ }
107
+ ```
108
+
109
+ It's important to note that setting tracked properties will always trigger an
110
+ update, even if the property is set to the same value as it was before.
111
+
112
+ ```js
113
+ let entry = new Entry('Pizza Palace', 5551234);
114
+
115
+ // if entry was used when rendering, this would cause a rerender, even though
116
+ // the name is being set to the same value as it was before
117
+ entry.name = entry.name;
118
+ ```
119
+
120
+ `tracked` can also be used with the classic Ember object model in a similar
121
+ manner to classic computed properties:
122
+
123
+ ```javascript
124
+ import EmberObject from '@ember/object';
125
+ import { tracked } from '@glimmer/tracking';
126
+
127
+ const Entry = EmberObject.extend({
128
+ name: tracked(),
129
+ phoneNumber: tracked()
130
+ });
131
+ ```
132
+
133
+ Often this is unnecessary, but to ensure robust auto-tracking behavior it is
134
+ advisable to mark tracked state appropriately wherever possible.
135
+
136
+ This form of `tracked` also accepts an optional configuration object
137
+ containing either an initial `value` or an `initializer` function (but not
138
+ both).
139
+
140
+ ```javascript
141
+ import EmberObject from '@ember/object';
142
+ import { tracked } from '@glimmer/tracking';
143
+
144
+ const Entry = EmberObject.extend({
145
+ name: tracked({ value: 'Zoey' }),
146
+ favoriteSongs: tracked({
147
+ initializer: () => ['Raspberry Beret', 'Time After Time']
148
+ })
149
+ });
150
+ ```
151
+
152
+ @method tracked
153
+ @static
154
+ @for @glimmer/tracking
155
+ @public
156
+ */
157
+ /**
158
+ Gives the getter a caching behavior. The return value of the getter
159
+ will be cached until any of the properties it is entangled with
160
+ are invalidated. This is useful when a getter is expensive and
161
+ used very often.
162
+
163
+ For instance, in this `GuestList` class, we have the `sortedGuests`
164
+ getter that sorts the guests alphabetically:
165
+
166
+ ```javascript
167
+ import { tracked } from '@glimmer/tracking';
168
+
169
+ class GuestList {
170
+ @tracked guests = ['Zoey', 'Tomster'];
171
+
172
+ get sortedGuests() {
173
+ return this.guests.slice().sort()
174
+ }
175
+ }
176
+ ```
177
+
178
+ Every time `sortedGuests` is accessed, a new array will be created and sorted,
179
+ because JavaScript getters do not cache by default. When the guest list
180
+ is small, like the one in the example, this is not a problem. However, if
181
+ the guest list were to grow very large, it would mean that we would be doing
182
+ a large amount of work each time we accessed `sortedGuests`. With `@cached`,
183
+ we can cache the value instead:
184
+
185
+ ```javascript
186
+ import { tracked, cached } from '@glimmer/tracking';
187
+
188
+ class GuestList {
189
+ @tracked guests = ['Zoey', 'Tomster'];
190
+
191
+ @cached
192
+ get sortedGuests() {
193
+ return this.guests.slice().sort()
194
+ }
195
+ }
196
+ ```
197
+
198
+ Now the `sortedGuests` getter will be cached based on autotracking.
199
+ It will only rerun and create a new sorted array when the guests tracked
200
+ property is updated.
201
+
202
+
203
+ ### Tradeoffs
204
+
205
+ Overuse is discouraged.
206
+
207
+ In general, you should avoid using `@cached` unless you have confirmed that
208
+ the getter you are decorating is computationally expensive, since `@cached`
209
+ adds a small amount of overhead to the getter.
210
+ While the individual costs are small, a systematic use of the `@cached`
211
+ decorator can add up to a large impact overall in your app.
212
+ Many getters and tracked properties are only accessed once during rendering,
213
+ and then never rerendered, so adding `@cached` when unnecessary can
214
+ negatively impact performance.
215
+
216
+ Also, `@cached` may rerun even if the values themselves have not changed,
217
+ since tracked properties will always invalidate.
218
+ For example updating an integer value from `5` to an other `5` will trigger
219
+ a rerun of the cached properties building from this integer.
220
+
221
+ Avoiding a cache invalidation in this case is not something that can
222
+ be achieved on the `@cached` decorator itself, but rather when updating
223
+ the underlying tracked values, by applying some diff checking mechanisms:
224
+
225
+ ```javascript
226
+ if (nextValue !== this.trackedProp) {
227
+ this.trackedProp = nextValue;
228
+ }
229
+ ```
230
+
231
+ Here equal values won't update the property, therefore not triggering
232
+ the subsequent cache invalidations of the `@cached` properties who were
233
+ using this `trackedProp`.
234
+
235
+ As a reminder, do not use this piece of code inside a tracked getter,
236
+ as the dependency chain could lead to an infinite loop. Mutating an adjacent
237
+ property from a getter is not a good practice anyway, even with a caching
238
+ mechanism reducing reruns.
239
+
240
+ The cost of these edge-guards adds up to the trade-off calculation of using
241
+ a caching strategy, hence requiring a very sensitive and moderate approach
242
+ regarding performance.
243
+
244
+ @method cached
245
+ @static
246
+ @for @glimmer/tracking
247
+ @public
248
+ */
249
+ }
@@ -0,0 +1,160 @@
1
+ declare module '@ember/-internals/glimmer/lib/helper.d.ts' {
2
+ /**
3
+ @module @ember/component
4
+ */
5
+ import type { InternalFactory } from '@ember/-internals/owner';
6
+ import { FrameworkObject } from '@ember/object/-internals';
7
+ import type { Arguments, Dict, HelperManager } from '@glimmer/interfaces';
8
+ import type { DirtyableTag } from '@glimmer/validator';
9
+ export const RECOMPUTE_TAG: unique symbol;
10
+ export type HelperFunction<T, P extends unknown[], N extends Dict<unknown>> = (positional: P, named: N) => T;
11
+ export type SimpleHelperFactory<T, P extends unknown[], N extends Dict<unknown>> = InternalFactory<SimpleHelper<T, P, N>, HelperFactory<SimpleHelper<T, P, N>>>;
12
+ export type ClassHelperFactory = InternalFactory<HelperInstance, HelperFactory<HelperInstance>>;
13
+ export interface HelperFactory<T> {
14
+ isHelperFactory: true;
15
+ create(): T;
16
+ }
17
+ export interface HelperInstance<T = unknown> {
18
+ compute(positional: unknown[], named: Dict<unknown>): T;
19
+ destroy(): void;
20
+ [RECOMPUTE_TAG]: DirtyableTag;
21
+ }
22
+ const IS_CLASSIC_HELPER: unique symbol;
23
+ export interface SimpleHelper<T, P extends unknown[], N extends Dict<unknown>> {
24
+ compute: HelperFunction<T, P, N>;
25
+ }
26
+ /**
27
+ In many cases it is not necessary to use the full `Helper` class.
28
+ The `helper` method create pure-function helpers without instances.
29
+ For example:
30
+
31
+ ```app/helpers/format-currency.js
32
+ import { helper } from '@ember/component/helper';
33
+
34
+ export default helper(function([cents], {currency}) {
35
+ return `${currency}${cents * 0.01}`;
36
+ });
37
+ ```
38
+
39
+ @static
40
+ @param {Function} helper The helper function
41
+ @method helper
42
+ @for @ember/component/helper
43
+ @public
44
+ @since 1.13.0
45
+ */
46
+ export function helper<T, P extends unknown[], N extends Dict<unknown>>(helperFn: HelperFunction<T, P, N>): HelperFactory<SimpleHelper<T, P, N>>;
47
+ /**
48
+ Ember Helpers are functions that can compute values, and are used in templates.
49
+ For example, this code calls a helper named `format-currency`:
50
+
51
+ ```app/templates/application.hbs
52
+ <Cost @cents={{230}} />
53
+ ```
54
+
55
+ ```app/components/cost.hbs
56
+ <div>{{format-currency @cents currency="$"}}</div>
57
+ ```
58
+
59
+ Additionally a helper can be called as a nested helper.
60
+ In this example, we show the formatted currency value if the `showMoney`
61
+ named argument is truthy.
62
+
63
+ ```handlebars
64
+ {{if @showMoney (format-currency @cents currency="$")}}
65
+ ```
66
+
67
+ Helpers defined using a class must provide a `compute` function. For example:
68
+
69
+ ```app/helpers/format-currency.js
70
+ import Helper from '@ember/component/helper';
71
+
72
+ export default class extends Helper {
73
+ compute([cents], { currency }) {
74
+ return `${currency}${cents * 0.01}`;
75
+ }
76
+ }
77
+ ```
78
+
79
+ Each time the input to a helper changes, the `compute` function will be
80
+ called again.
81
+
82
+ As instances, these helpers also have access to the container and will accept
83
+ injected dependencies.
84
+
85
+ Additionally, class helpers can call `recompute` to force a new computation.
86
+
87
+ @class Helper
88
+ @extends CoreObject
89
+ @public
90
+ @since 1.13.0
91
+ */
92
+ interface Helper {
93
+ /**
94
+ Override this function when writing a class-based helper.
95
+
96
+ @method compute
97
+ @param {Array} params The positional arguments to the helper
98
+ @param {Object} hash The named arguments to the helper
99
+ @public
100
+ @since 1.13.0
101
+ */
102
+ compute(params: unknown[], hash: Dict<unknown>): unknown;
103
+ }
104
+ class Helper extends FrameworkObject {
105
+ static isHelperFactory: boolean;
106
+ static [IS_CLASSIC_HELPER]: boolean;
107
+ /** @deprecated */
108
+ static helper: typeof helper;
109
+ [RECOMPUTE_TAG]: DirtyableTag;
110
+ init(properties: object | undefined): void;
111
+ /**
112
+ On a class-based helper, it may be useful to force a recomputation of that
113
+ helpers value. This is akin to `rerender` on a component.
114
+
115
+ For example, this component will rerender when the `currentUser` on a
116
+ session service changes:
117
+
118
+ ```app/helpers/current-user-email.js
119
+ import Helper from '@ember/component/helper'
120
+ import { service } from '@ember/service'
121
+ import { observer } from '@ember/object'
122
+
123
+ export default Helper.extend({
124
+ session: service(),
125
+
126
+ onNewUser: observer('session.currentUser', function() {
127
+ this.recompute();
128
+ }),
129
+
130
+ compute() {
131
+ return this.get('session.currentUser.email');
132
+ }
133
+ });
134
+ ```
135
+
136
+ @method recompute
137
+ @public
138
+ @since 1.13.0
139
+ */
140
+ recompute(): void;
141
+ }
142
+ export function isClassicHelper(obj: object): boolean;
143
+ export const CLASSIC_HELPER_MANAGER: import("@glimmer/interfaces").Helper<object> | import("@glimmer/manager").CustomHelperManager<object>;
144
+ class Wrapper<T = unknown, P extends unknown[] = unknown[], N extends Dict<unknown> = Dict<unknown>> implements HelperFactory<SimpleHelper<T, P, N>> {
145
+ compute: HelperFunction<T, P, N>;
146
+ readonly isHelperFactory = true;
147
+ constructor(compute: HelperFunction<T, P, N>);
148
+ create(): {
149
+ compute: HelperFunction<T, P, N>;
150
+ };
151
+ }
152
+ class SimpleClassicHelperManager implements HelperManager<() => unknown> {
153
+ capabilities: import("@glimmer/interfaces").HelperCapabilities;
154
+ createHelper(definition: Wrapper, args: Arguments): () => unknown;
155
+ getValue(fn: () => unknown): unknown;
156
+ getDebugName(definition: Wrapper): string;
157
+ }
158
+ export const SIMPLE_CLASSIC_HELPER_MANAGER: SimpleClassicHelperManager;
159
+ export default Helper;
160
+ }
@@ -0,0 +1,4 @@
1
+ declare module '@ember/-internals/glimmer/lib/helpers/-disallow-dynamic-resolution.d.ts' {
2
+ const _default: object;
3
+ export default _default;
4
+ }
@@ -0,0 +1,4 @@
1
+ declare module '@ember/-internals/glimmer/lib/helpers/-in-element-null-check.d.ts' {
2
+ const _default: object;
3
+ export default _default;
4
+ }
@@ -0,0 +1,4 @@
1
+ declare module '@ember/-internals/glimmer/lib/helpers/-normalize-class.d.ts' {
2
+ const _default: object;
3
+ export default _default;
4
+ }
@@ -0,0 +1,4 @@
1
+ declare module '@ember/-internals/glimmer/lib/helpers/-resolve.d.ts' {
2
+ const _default: object;
3
+ export default _default;
4
+ }
@@ -0,0 +1,9 @@
1
+ declare module '@ember/-internals/glimmer/lib/helpers/-track-array.d.ts' {
2
+ /**
3
+ This reference is used to get the `[]` tag of iterables, so we can trigger
4
+ updates to `{{each}}` when it changes. It is put into place by a template
5
+ transform at build time, similar to the (-each-in) helper
6
+ */
7
+ const _default: object;
8
+ export default _default;
9
+ }