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.
- package/CHANGELOG.md +5 -1
- package/build-metadata.json +3 -3
- package/dist/ember-template-compiler.js +147 -172
- package/dist/ember-template-compiler.map +1 -1
- package/dist/ember-testing.js +129 -6
- package/dist/ember-testing.map +1 -1
- package/dist/ember.debug.js +334 -314
- package/dist/ember.debug.map +1 -1
- package/dist/header/license.js +1 -1
- package/dist/packages/@ember/-internals/glimmer/index.js +60 -59
- package/dist/packages/@ember/-internals/metal/index.js +6 -6
- package/dist/packages/@ember/-internals/{utils/types.js → utility-types/index.js} +0 -0
- package/dist/packages/@ember/-internals/utils/index.js +3 -137
- package/dist/packages/@ember/-internals/views/lib/mixins/action_support.js +1 -2
- package/dist/packages/@ember/-internals/views/lib/views/states/default.js +1 -2
- package/dist/packages/@ember/-internals/views/lib/views/states/destroying.js +2 -3
- package/dist/packages/@ember/-internals/views/lib/views/states/in_dom.js +1 -2
- package/dist/packages/@ember/array/-internals.js +8 -0
- package/dist/packages/@ember/array/index.js +2 -2
- package/dist/packages/@ember/array/lib/make-array.js +10 -0
- package/dist/packages/@ember/canary-features/index.js +0 -4
- package/dist/packages/@ember/debug/data-adapter.js +16 -16
- package/dist/packages/@ember/debug/index.js +2 -3
- package/dist/packages/@ember/debug/lib/inspect.js +117 -0
- package/dist/packages/@ember/engine/instance.js +1 -2
- package/dist/packages/@ember/instrumentation/index.js +2 -8
- package/dist/packages/@ember/object/core.js +2 -1
- package/dist/packages/@ember/object/mixin.js +11 -2
- package/dist/packages/@ember/object/promise-proxy-mixin.js +1 -2
- package/dist/packages/@ember/owner/index.js +2 -2
- package/dist/packages/@ember/routing/lib/utils.js +1 -2
- package/dist/packages/@ember/routing/router.js +36 -37
- package/dist/packages/ember/index.js +3 -3
- package/dist/packages/ember/version.js +1 -1
- package/dist/packages/ember-testing/lib/adapters/qunit.js +1 -1
- package/docs/data.json +252 -253
- package/package.json +19 -19
- package/types/preview/@ember/controller/index.d.ts +1 -1
- package/types/preview/@ember/engine/-private/container-proxy-mixin.d.ts +1 -1
- package/types/preview/@ember/engine/-private/registry-proxy-mixin.d.ts +1 -1
- package/types/preview/@ember/error/index.d.ts +2 -2
- package/types/preview/ember/index.d.ts +1 -1
- package/types/preview/index.d.ts +0 -2
- package/types/publish.mjs +314 -294
- package/types/stable/@ember/-internals/bootstrap/index.d.ts +3 -0
- package/types/stable/@ember/-internals/browser-environment/index.d.ts +9 -0
- package/types/stable/@ember/-internals/browser-environment/lib/has-dom.d.ts +4 -0
- package/types/stable/@ember/-internals/container/index.d.ts +4 -0
- package/types/stable/@ember/-internals/container/lib/container.d.ts +164 -0
- package/types/stable/@ember/-internals/container/lib/registry.d.ts +292 -0
- package/types/stable/@ember/-internals/environment/index.d.ts +5 -0
- package/types/stable/@ember/-internals/environment/lib/context.d.ts +10 -0
- package/types/stable/@ember/-internals/environment/lib/env.d.ts +153 -0
- package/types/stable/@ember/-internals/environment/lib/global.d.ts +4 -0
- package/types/stable/@ember/-internals/error-handling/index.d.ts +9 -0
- package/types/stable/@ember/-internals/glimmer/index.d.ts +456 -0
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/curly.d.ts +47 -0
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/mount.d.ts +41 -0
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/outlet.d.ts +51 -0
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/root.d.ts +23 -0
- package/types/stable/@ember/-internals/glimmer/lib/component.d.ts +840 -0
- package/types/stable/@ember/-internals/glimmer/lib/components/abstract-input.d.ts +37 -0
- package/types/stable/@ember/-internals/glimmer/lib/components/input.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/components/internal.d.ts +48 -0
- package/types/stable/@ember/-internals/glimmer/lib/components/link-to.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/components/textarea.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/dom.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/environment.d.ts +11 -0
- package/types/stable/@ember/-internals/glimmer/lib/glimmer-component-docs.d.ts +387 -0
- package/types/stable/@ember/-internals/glimmer/lib/glimmer-tracking-docs.d.ts +249 -0
- package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +160 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/-disallow-dynamic-resolution.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/-in-element-null-check.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/-normalize-class.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/-resolve.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/-track-array.d.ts +9 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/action.d.ts +268 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/array.d.ts +40 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/component.d.ts +148 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/concat.d.ts +27 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/each-in.d.ts +160 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/fn.d.ts +72 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/get.d.ts +99 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/hash.d.ts +43 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/helper.d.ts +42 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/if-unless.d.ts +181 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/internal-helper.d.ts +5 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/log.d.ts +18 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/modifier.d.ts +41 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/mut.d.ts +77 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/page-title.d.ts +19 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/readonly.d.ts +119 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/unbound.d.ts +34 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/unique-id.d.ts +7 -0
- package/types/stable/@ember/-internals/glimmer/lib/modifiers/action.d.ts +30 -0
- package/types/stable/@ember/-internals/glimmer/lib/modifiers/internal.d.ts +33 -0
- package/types/stable/@ember/-internals/glimmer/lib/modifiers/on.d.ts +94 -0
- package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +96 -0
- package/types/stable/@ember/-internals/glimmer/lib/resolver.d.ts +16 -0
- package/types/stable/@ember/-internals/glimmer/lib/setup-registry.d.ts +5 -0
- package/types/stable/@ember/-internals/glimmer/lib/syntax/in-element.d.ts +46 -0
- package/types/stable/@ember/-internals/glimmer/lib/syntax/let.d.ts +54 -0
- package/types/stable/@ember/-internals/glimmer/lib/syntax/mount.d.ts +43 -0
- package/types/stable/@ember/-internals/glimmer/lib/syntax/outlet.d.ts +27 -0
- package/types/stable/@ember/-internals/glimmer/lib/syntax/utils.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/template.d.ts +6 -0
- package/types/stable/@ember/-internals/glimmer/lib/template_registry.d.ts +11 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/bindings.d.ts +10 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/curly-component-state-bucket.d.ts +31 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/debug-render-message.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/iterator.d.ts +5 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/managers.d.ts +19 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/outlet.d.ts +51 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/process-args.d.ts +4 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/serialization-first-node-helpers.d.ts +3 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/string.d.ts +61 -0
- package/types/stable/@ember/-internals/glimmer/lib/utils/to-bool.d.ts +3 -0
- package/types/stable/@ember/-internals/glimmer/lib/views/outlet.d.ts +34 -0
- package/types/stable/@ember/-internals/meta/index.d.ts +3 -0
- package/types/stable/@ember/-internals/meta/lib/meta.d.ts +174 -0
- package/types/stable/@ember/-internals/metal/index.d.ts +26 -0
- package/types/stable/@ember/-internals/metal/lib/alias.d.ts +22 -0
- package/types/stable/@ember/-internals/metal/lib/array.d.ts +18 -0
- package/types/stable/@ember/-internals/metal/lib/array_events.d.ts +6 -0
- package/types/stable/@ember/-internals/metal/lib/cache.d.ts +121 -0
- package/types/stable/@ember/-internals/metal/lib/cached.d.ts +3 -0
- package/types/stable/@ember/-internals/metal/lib/chain-tags.d.ts +8 -0
- package/types/stable/@ember/-internals/metal/lib/change_event.d.ts +3 -0
- package/types/stable/@ember/-internals/metal/lib/computed.d.ts +484 -0
- package/types/stable/@ember/-internals/metal/lib/computed_cache.d.ts +3 -0
- package/types/stable/@ember/-internals/metal/lib/decorator.d.ts +64 -0
- package/types/stable/@ember/-internals/metal/lib/dependent_keys.d.ts +2 -0
- package/types/stable/@ember/-internals/metal/lib/deprecate_property.d.ts +18 -0
- package/types/stable/@ember/-internals/metal/lib/each_proxy_events.d.ts +5 -0
- package/types/stable/@ember/-internals/metal/lib/events.d.ts +91 -0
- package/types/stable/@ember/-internals/metal/lib/expand_properties.d.ts +33 -0
- package/types/stable/@ember/-internals/metal/lib/get_properties.d.ts +36 -0
- package/types/stable/@ember/-internals/metal/lib/injected_property.d.ts +25 -0
- package/types/stable/@ember/-internals/metal/lib/libraries.d.ts +31 -0
- package/types/stable/@ember/-internals/metal/lib/namespace_search.d.ts +19 -0
- package/types/stable/@ember/-internals/metal/lib/observer.d.ts +54 -0
- package/types/stable/@ember/-internals/metal/lib/path_cache.d.ts +3 -0
- package/types/stable/@ember/-internals/metal/lib/properties.d.ts +58 -0
- package/types/stable/@ember/-internals/metal/lib/property_events.d.ts +59 -0
- package/types/stable/@ember/-internals/metal/lib/property_get.d.ts +44 -0
- package/types/stable/@ember/-internals/metal/lib/property_set.d.ts +52 -0
- package/types/stable/@ember/-internals/metal/lib/set_properties.d.ts +32 -0
- package/types/stable/@ember/-internals/metal/lib/tags.d.ts +7 -0
- package/types/stable/@ember/-internals/metal/lib/tracked.d.ts +78 -0
- package/types/stable/@ember/-internals/overrides/index.d.ts +3 -0
- package/types/stable/@ember/-internals/owner/index.d.ts +646 -0
- package/types/stable/@ember/-internals/routing/index.d.ts +3 -0
- package/types/stable/@ember/-internals/runtime/index.d.ts +11 -0
- package/types/stable/@ember/-internals/runtime/lib/ext/rsvp.d.ts +5 -0
- package/types/stable/@ember/-internals/runtime/lib/mixins/-proxy.d.ts +34 -0
- package/types/stable/@ember/-internals/runtime/lib/mixins/action_handler.d.ts +23 -0
- package/types/stable/@ember/-internals/runtime/lib/mixins/comparable.d.ts +22 -0
- package/types/stable/@ember/-internals/runtime/lib/mixins/container_proxy.d.ts +22 -0
- package/types/stable/@ember/-internals/runtime/lib/mixins/registry_proxy.d.ts +22 -0
- package/types/stable/@ember/-internals/runtime/lib/mixins/target_action_support.d.ts +29 -0
- package/types/stable/@ember/-internals/utility-types/index.d.ts +10 -0
- package/types/stable/@ember/-internals/utils/index.d.ts +16 -0
- package/types/stable/@ember/-internals/utils/lib/cache.d.ts +14 -0
- package/types/stable/@ember/-internals/utils/lib/dictionary.d.ts +7 -0
- package/types/stable/@ember/-internals/utils/lib/get-debug-name.d.ts +4 -0
- package/types/stable/@ember/-internals/utils/lib/guid.d.ts +60 -0
- package/types/stable/@ember/-internals/utils/lib/intern.d.ts +42 -0
- package/types/stable/@ember/-internals/utils/lib/invoke.d.ts +24 -0
- package/types/stable/@ember/-internals/utils/lib/is_proxy.d.ts +5 -0
- package/types/stable/@ember/-internals/utils/lib/lookup-descriptor.d.ts +3 -0
- package/types/stable/@ember/-internals/utils/lib/mandatory-setter.d.ts +6 -0
- package/types/stable/@ember/-internals/utils/lib/name.d.ts +4 -0
- package/types/stable/@ember/-internals/utils/lib/spec.d.ts +14 -0
- package/types/stable/@ember/-internals/utils/lib/super.d.ts +31 -0
- package/types/stable/@ember/-internals/utils/lib/symbol.d.ts +5 -0
- package/types/stable/@ember/-internals/utils/lib/to-string.d.ts +3 -0
- package/types/stable/@ember/-internals/views/index.d.ts +13 -0
- package/types/stable/@ember/-internals/views/lib/compat/attrs.d.ts +3 -0
- package/types/stable/@ember/-internals/views/lib/compat/fallback-view-registry.d.ts +6 -0
- package/types/stable/@ember/-internals/views/lib/component_lookup.d.ts +5 -0
- package/types/stable/@ember/-internals/views/lib/mixins/action_support.d.ts +13 -0
- package/types/stable/@ember/-internals/views/lib/mixins/child_views_support.d.ts +13 -0
- package/types/stable/@ember/-internals/views/lib/mixins/class_names_support.d.ts +14 -0
- package/types/stable/@ember/-internals/views/lib/mixins/view_state_support.d.ts +13 -0
- package/types/stable/@ember/-internals/views/lib/mixins/view_support.d.ts +25 -0
- package/types/stable/@ember/-internals/views/lib/system/action_manager.d.ts +11 -0
- package/types/stable/@ember/-internals/views/lib/system/event_dispatcher.d.ts +117 -0
- package/types/stable/@ember/-internals/views/lib/system/utils.d.ts +94 -0
- package/types/stable/@ember/-internals/views/lib/views/core_view.d.ts +60 -0
- package/types/stable/@ember/-internals/views/lib/views/states/default.d.ts +5 -0
- package/types/stable/@ember/-internals/views/lib/views/states/destroying.d.ts +5 -0
- package/types/stable/@ember/-internals/views/lib/views/states/has_element.d.ts +5 -0
- package/types/stable/@ember/-internals/views/lib/views/states/in_dom.d.ts +5 -0
- package/types/stable/@ember/-internals/views/lib/views/states/pre_render.d.ts +11 -0
- package/types/stable/@ember/-internals/views/lib/views/states.d.ts +25 -0
- package/types/stable/@ember/application/index.d.ts +814 -0
- package/types/stable/@ember/application/instance.d.ts +288 -0
- package/types/stable/@ember/application/lib/lazy_load.d.ts +38 -0
- package/types/stable/@ember/application/namespace.d.ts +38 -0
- package/types/stable/@ember/array/-internals.d.ts +5 -0
- package/types/stable/@ember/array/index.d.ts +1457 -0
- package/types/stable/@ember/array/lib/make-array.d.ts +34 -0
- package/types/stable/@ember/array/mutable.d.ts +3 -0
- package/types/stable/@ember/array/proxy.d.ts +158 -0
- package/types/stable/@ember/canary-features/index.d.ts +49 -0
- package/types/stable/@ember/component/helper.d.ts +3 -0
- package/types/stable/@ember/component/index.d.ts +5 -0
- package/types/stable/@ember/component/template-only.d.ts +33 -0
- package/types/stable/@ember/controller/index.d.ts +277 -0
- package/types/stable/@ember/debug/container-debug-adapter.d.ts +73 -0
- package/types/stable/@ember/debug/data-adapter.d.ts +325 -0
- package/types/stable/@ember/debug/index.d.ts +52 -0
- package/types/stable/@ember/debug/lib/capture-render-tree.d.ts +21 -0
- package/types/stable/@ember/debug/lib/deprecate.d.ts +72 -0
- package/types/stable/@ember/debug/lib/handlers.d.ts +14 -0
- package/types/stable/@ember/debug/lib/inspect.d.ts +20 -0
- package/types/stable/@ember/debug/lib/testing.d.ts +4 -0
- package/types/stable/@ember/debug/lib/warn.d.ts +14 -0
- package/types/stable/@ember/deprecated-features/index.d.ts +3 -0
- package/types/stable/@ember/destroyable/index.d.ts +237 -0
- package/types/stable/@ember/engine/index.d.ts +347 -0
- package/types/stable/@ember/engine/instance.d.ts +127 -0
- package/types/stable/@ember/engine/lib/engine-parent.d.ts +27 -0
- package/types/stable/@ember/enumerable/index.d.ts +19 -0
- package/types/stable/@ember/enumerable/mutable.d.ts +21 -0
- package/types/stable/@ember/error/index.d.ts +15 -0
- package/types/stable/@ember/helper/index.d.ts +314 -0
- package/types/stable/@ember/instrumentation/index.d.ts +127 -0
- package/types/stable/@ember/modifier/index.d.ts +5 -0
- package/types/stable/@ember/object/-internals.d.ts +9 -0
- package/types/stable/@ember/object/compat.d.ts +90 -0
- package/types/stable/@ember/object/computed.d.ts +5 -0
- package/types/stable/@ember/object/core.d.ts +638 -0
- package/types/stable/@ember/object/evented.d.ts +134 -0
- package/types/stable/@ember/object/events.d.ts +3 -0
- package/types/stable/@ember/object/index.d.ts +60 -0
- package/types/stable/@ember/object/internals.d.ts +3 -0
- package/types/stable/@ember/object/lib/computed/computed_macros.d.ts +644 -0
- package/types/stable/@ember/object/lib/computed/reduce_computed_macros.d.ts +791 -0
- package/types/stable/@ember/object/mixin.d.ts +157 -0
- package/types/stable/@ember/object/observable.d.ts +383 -0
- package/types/stable/@ember/object/observers.d.ts +3 -0
- package/types/stable/@ember/object/promise-proxy-mixin.d.ts +167 -0
- package/types/stable/@ember/object/proxy.d.ts +88 -0
- package/types/stable/@ember/owner/index.d.ts +80 -0
- package/types/stable/@ember/polyfills/index.d.ts +4 -0
- package/types/stable/@ember/polyfills/lib/assign.d.ts +9 -0
- package/types/stable/@ember/renderer/index.d.ts +28 -0
- package/types/stable/@ember/routing/-internals.d.ts +11 -0
- package/types/stable/@ember/routing/auto-location.d.ts +149 -0
- package/types/stable/@ember/routing/hash-location.d.ts +113 -0
- package/types/stable/@ember/routing/history-location.d.ts +143 -0
- package/types/stable/@ember/routing/index.d.ts +3 -0
- package/types/stable/@ember/routing/lib/cache.d.ts +16 -0
- package/types/stable/@ember/routing/lib/controller_for.d.ts +15 -0
- package/types/stable/@ember/routing/lib/dsl.d.ts +52 -0
- package/types/stable/@ember/routing/lib/engines.d.ts +14 -0
- package/types/stable/@ember/routing/lib/generate_controller.d.ts +25 -0
- package/types/stable/@ember/routing/lib/location-utils.d.ts +31 -0
- package/types/stable/@ember/routing/lib/query_params.d.ts +7 -0
- package/types/stable/@ember/routing/lib/route-info.d.ts +3 -0
- package/types/stable/@ember/routing/lib/router_state.d.ts +13 -0
- package/types/stable/@ember/routing/lib/routing-service.d.ts +35 -0
- package/types/stable/@ember/routing/lib/utils.d.ts +36 -0
- package/types/stable/@ember/routing/location.d.ts +108 -0
- package/types/stable/@ember/routing/none-location.d.ts +83 -0
- package/types/stable/@ember/routing/route-info.d.ts +125 -0
- package/types/stable/@ember/routing/route.d.ts +1456 -0
- package/types/stable/@ember/routing/router-service.d.ts +588 -0
- package/types/stable/@ember/routing/router.d.ts +431 -0
- package/types/stable/@ember/routing/transition.d.ts +180 -0
- package/types/stable/@ember/runloop/index.d.ts +657 -0
- package/types/stable/@ember/service/index.d.ts +82 -0
- package/types/stable/@ember/string/index.d.ts +152 -0
- package/types/stable/@ember/string/lib/string_registry.d.ts +9 -0
- package/types/stable/@ember/template/index.d.ts +3 -0
- package/types/stable/@ember/template-compilation/index.d.ts +4 -0
- package/types/stable/@ember/template-factory/index.d.ts +3 -0
- package/types/stable/@ember/test/adapter.d.ts +4 -0
- package/types/stable/@ember/test/index.d.ts +8 -0
- package/types/stable/@ember/utils/index.d.ts +9 -0
- package/types/stable/@ember/utils/lib/compare.d.ts +54 -0
- package/types/stable/@ember/utils/lib/is-equal.d.ts +52 -0
- package/types/stable/@ember/utils/lib/is_blank.d.ts +32 -0
- package/types/stable/@ember/utils/lib/is_empty.d.ts +38 -0
- package/types/stable/@ember/utils/lib/is_none.d.ts +26 -0
- package/types/stable/@ember/utils/lib/is_present.d.ts +35 -0
- package/types/stable/@ember/utils/lib/type-of.d.ts +68 -0
- package/types/stable/@ember/version/index.d.ts +3 -0
- package/types/stable/@glimmer/tracking/index.d.ts +203 -0
- package/types/stable/@glimmer/tracking/primitives/cache.d.ts +3 -0
- package/types/stable/ember/index.d.ts +376 -0
- package/types/stable/ember-template-compiler/index.d.ts +21 -0
- package/types/stable/ember-template-compiler/lib/plugins/assert-against-attrs.d.ts +20 -0
- package/types/stable/ember-template-compiler/lib/plugins/assert-against-named-outlets.d.ts +14 -0
- package/types/stable/ember-template-compiler/lib/plugins/assert-input-helper-without-block.d.ts +5 -0
- package/types/stable/ember-template-compiler/lib/plugins/assert-reserved-named-arguments.d.ts +5 -0
- package/types/stable/ember-template-compiler/lib/plugins/assert-splattribute-expression.d.ts +5 -0
- package/types/stable/ember-template-compiler/lib/plugins/index.d.ts +5 -0
- package/types/stable/ember-template-compiler/lib/plugins/transform-action-syntax.d.ts +28 -0
- package/types/stable/ember-template-compiler/lib/plugins/transform-each-in-into-each.d.ts +24 -0
- package/types/stable/ember-template-compiler/lib/plugins/transform-each-track-array.d.ts +24 -0
- package/types/stable/ember-template-compiler/lib/plugins/transform-in-element.d.ts +22 -0
- package/types/stable/ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings.d.ts +4 -0
- package/types/stable/ember-template-compiler/lib/plugins/transform-resolutions.d.ts +5 -0
- package/types/stable/ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet.d.ts +36 -0
- package/types/stable/ember-template-compiler/lib/plugins/utils.d.ts +13 -0
- package/types/stable/ember-template-compiler/lib/system/bootstrap.d.ts +26 -0
- package/types/stable/ember-template-compiler/lib/system/calculate-location-display.d.ts +4 -0
- package/types/stable/ember-template-compiler/lib/system/compile-options.d.ts +6 -0
- package/types/stable/ember-template-compiler/lib/system/compile.d.ts +13 -0
- package/types/stable/ember-template-compiler/lib/system/dasherize-component-name.d.ts +5 -0
- package/types/stable/ember-template-compiler/lib/system/initializer.d.ts +3 -0
- package/types/stable/ember-template-compiler/lib/system/precompile.d.ts +17 -0
- package/types/stable/ember-testing/index.d.ts +10 -0
- package/types/stable/ember-testing/lib/adapters/adapter.d.ts +20 -0
- package/types/stable/ember-testing/lib/adapters/qunit.d.ts +19 -0
- package/types/stable/ember-testing/lib/ext/application.d.ts +12 -0
- package/types/stable/ember-testing/lib/ext/rsvp.d.ts +4 -0
- package/types/stable/ember-testing/lib/helpers/and_then.d.ts +4 -0
- package/types/stable/ember-testing/lib/helpers/current_path.d.ts +22 -0
- package/types/stable/ember-testing/lib/helpers/current_route_name.d.ts +21 -0
- package/types/stable/ember-testing/lib/helpers/current_url.d.ts +22 -0
- package/types/stable/ember-testing/lib/helpers/pause_test.d.ts +53 -0
- package/types/stable/ember-testing/lib/helpers/visit.d.ts +22 -0
- package/types/stable/ember-testing/lib/helpers/wait.d.ts +34 -0
- package/types/stable/ember-testing/lib/helpers.d.ts +3 -0
- package/types/stable/ember-testing/lib/initializers.d.ts +3 -0
- package/types/stable/ember-testing/lib/setup_for_testing.d.ts +15 -0
- package/types/stable/ember-testing/lib/test/adapter.d.ts +7 -0
- package/types/stable/ember-testing/lib/test/helpers.d.ts +115 -0
- package/types/stable/ember-testing/lib/test/on_inject_helpers.d.ts +33 -0
- package/types/stable/ember-testing/lib/test/pending_requests.d.ts +6 -0
- package/types/stable/ember-testing/lib/test/promise.d.ts +38 -0
- package/types/stable/ember-testing/lib/test/run.d.ts +3 -0
- package/types/stable/ember-testing/lib/test/waiters.d.ts +67 -0
- package/types/stable/ember-testing/lib/test.d.ts +47 -0
- package/types/stable/index.d.ts +47 -0
- package/types/preview/@ember/application/tsconfig.json +0 -3
- package/types/preview/@ember/array/tsconfig.json +0 -3
- package/types/preview/@ember/component/tsconfig.json +0 -3
- package/types/preview/@ember/controller/tsconfig.json +0 -3
- package/types/preview/@ember/debug/tsconfig.json +0 -3
- package/types/preview/@ember/destroyable/tsconfig.json +0 -3
- package/types/preview/@ember/engine/tsconfig.json +0 -3
- package/types/preview/@ember/error/tsconfig.json +0 -3
- package/types/preview/@ember/helper/tsconfig.json +0 -3
- package/types/preview/@ember/modifier/tsconfig.json +0 -3
- package/types/preview/@ember/object/tsconfig.json +0 -3
- package/types/preview/@ember/owner/index.d.ts +0 -423
- package/types/preview/@ember/owner/tsconfig.json +0 -3
- package/types/preview/@ember/polyfills/tsconfig.json +0 -3
- package/types/preview/@ember/routing/tsconfig.json +0 -3
- package/types/preview/@ember/runloop/tsconfig.json +0 -3
- package/types/preview/@ember/service/tsconfig.json +0 -3
- package/types/preview/@ember/string/tsconfig.json +0 -3
- package/types/preview/@ember/template/tsconfig.json +0 -3
- package/types/preview/@ember/test/tsconfig.json +0 -3
- package/types/preview/@ember/utils/tsconfig.json +0 -3
- package/types/preview/ember/tsconfig.json +0 -3
- package/types/preview/tsconfig.json +0 -6
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/fn.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
@module ember
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
The `fn` helper allows you to ensure a function that you are passing off
|
|
7
|
+
to another component, helper, or modifier has access to arguments that are
|
|
8
|
+
available in the template.
|
|
9
|
+
|
|
10
|
+
For example, if you have an `each` helper looping over a number of items, you
|
|
11
|
+
may need to pass a function that expects to receive the item as an argument
|
|
12
|
+
to a component invoked within the loop. Here's how you could use the `fn`
|
|
13
|
+
helper to pass both the function and its arguments together:
|
|
14
|
+
|
|
15
|
+
```app/templates/components/items-listing.hbs
|
|
16
|
+
{{#each @items as |item|}}
|
|
17
|
+
<DisplayItem @item=item @select={{fn this.handleSelected item}} />
|
|
18
|
+
{{/each}}
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
```app/components/items-list.js
|
|
22
|
+
import Component from '@glimmer/component';
|
|
23
|
+
import { action } from '@ember/object';
|
|
24
|
+
|
|
25
|
+
export default class ItemsList extends Component {
|
|
26
|
+
@action
|
|
27
|
+
handleSelected(item) {
|
|
28
|
+
// ...snip...
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
In this case the `display-item` component will receive a normal function
|
|
34
|
+
that it can invoke. When it invokes the function, the `handleSelected`
|
|
35
|
+
function will receive the `item` and any arguments passed, thanks to the
|
|
36
|
+
`fn` helper.
|
|
37
|
+
|
|
38
|
+
Let's take look at what that means in a couple circumstances:
|
|
39
|
+
|
|
40
|
+
- When invoked as `this.args.select()` the `handleSelected` function will
|
|
41
|
+
receive the `item` from the loop as its first and only argument.
|
|
42
|
+
- When invoked as `this.args.select('foo')` the `handleSelected` function
|
|
43
|
+
will receive the `item` from the loop as its first argument and the
|
|
44
|
+
string `'foo'` as its second argument.
|
|
45
|
+
|
|
46
|
+
In the example above, we used `@action` to ensure that `handleSelected` is
|
|
47
|
+
properly bound to the `items-list`, but let's explore what happens if we
|
|
48
|
+
left out `@action`:
|
|
49
|
+
|
|
50
|
+
```app/components/items-list.js
|
|
51
|
+
import Component from '@glimmer/component';
|
|
52
|
+
|
|
53
|
+
export default class ItemsList extends Component {
|
|
54
|
+
handleSelected(item) {
|
|
55
|
+
// ...snip...
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
In this example, when `handleSelected` is invoked inside the `display-item`
|
|
61
|
+
component, it will **not** have access to the component instance. In other
|
|
62
|
+
words, it will have no `this` context, so please make sure your functions
|
|
63
|
+
are bound (via `@action` or other means) before passing into `fn`!
|
|
64
|
+
|
|
65
|
+
See also [partial application](https://en.wikipedia.org/wiki/Partial_application).
|
|
66
|
+
|
|
67
|
+
@method fn
|
|
68
|
+
@for Ember.Templates.helpers
|
|
69
|
+
@public
|
|
70
|
+
@since 3.11.0
|
|
71
|
+
*/
|
|
72
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/get.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
@module ember
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
Dynamically look up a property on an object or an element in an array.
|
|
7
|
+
The second argument to `{{get}}` should have a string or number value,
|
|
8
|
+
although it can be bound.
|
|
9
|
+
|
|
10
|
+
For example, these two usages are equivalent:
|
|
11
|
+
|
|
12
|
+
```app/components/developer-detail.js
|
|
13
|
+
import Component from '@glimmer/component';
|
|
14
|
+
import { tracked } from '@glimmer/tracking';
|
|
15
|
+
|
|
16
|
+
export default class extends Component {
|
|
17
|
+
@tracked developer = {
|
|
18
|
+
name: "Sandi Metz",
|
|
19
|
+
language: "Ruby"
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
```handlebars
|
|
25
|
+
{{this.developer.name}}
|
|
26
|
+
{{get this.developer "name"}}
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
If there were several facts about a person, the `{{get}}` helper can dynamically
|
|
30
|
+
pick one:
|
|
31
|
+
|
|
32
|
+
```app/templates/application.hbs
|
|
33
|
+
<DeveloperDetail @factName="language" />
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
```handlebars
|
|
37
|
+
{{get this.developer @factName}}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
For a more complex example, this template would allow the user to switch
|
|
41
|
+
between showing the user's name and preferred coding language with a click:
|
|
42
|
+
|
|
43
|
+
```app/components/developer-detail.js
|
|
44
|
+
import Component from '@glimmer/component';
|
|
45
|
+
import { tracked } from '@glimmer/tracking';
|
|
46
|
+
|
|
47
|
+
export default class extends Component {
|
|
48
|
+
@tracked developer = {
|
|
49
|
+
name: "Sandi Metz",
|
|
50
|
+
language: "Ruby"
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
@tracked currentFact = 'name'
|
|
54
|
+
|
|
55
|
+
@action
|
|
56
|
+
showFact(fact) {
|
|
57
|
+
this.currentFact = fact;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
```app/components/developer-detail.js
|
|
63
|
+
{{get this.developer this.currentFact}}
|
|
64
|
+
|
|
65
|
+
<button {{on 'click' (fn this.showFact "name")}}>Show name</button>
|
|
66
|
+
<button {{on 'click' (fn this.showFact "language")}}>Show language</button>
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
The `{{get}}` helper can also respect mutable values itself. For example:
|
|
70
|
+
|
|
71
|
+
```app/components/developer-detail.js
|
|
72
|
+
<Input @value={{mut (get this.person this.currentFact)}} />
|
|
73
|
+
|
|
74
|
+
<button {{on 'click' (fn this.showFact "name")}}>Show name</button>
|
|
75
|
+
<button {{on 'click' (fn this.showFact "language")}}>Show language</button>
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Would allow the user to swap what fact is being displayed, and also edit
|
|
79
|
+
that fact via a two-way mutable binding.
|
|
80
|
+
|
|
81
|
+
The `{{get}}` helper can also be used for array element access via index.
|
|
82
|
+
This would display the value of the first element in the array `this.names`:
|
|
83
|
+
|
|
84
|
+
```handlebars
|
|
85
|
+
{{get this.names 0}}
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Array element access also works with a dynamic second argument:
|
|
89
|
+
|
|
90
|
+
```handlebars
|
|
91
|
+
{{get this.names @index}}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
@public
|
|
95
|
+
@method get
|
|
96
|
+
@for Ember.Templates.helpers
|
|
97
|
+
@since 2.1.0
|
|
98
|
+
*/
|
|
99
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/hash.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
@module ember
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
Use the `{{hash}}` helper to create a hash to pass as an option to your
|
|
7
|
+
components. This is specially useful for contextual components where you can
|
|
8
|
+
just yield a hash:
|
|
9
|
+
|
|
10
|
+
```handlebars
|
|
11
|
+
{{yield (hash
|
|
12
|
+
name='Sarah'
|
|
13
|
+
title=office
|
|
14
|
+
)}}
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Would result in an object such as:
|
|
18
|
+
|
|
19
|
+
```js
|
|
20
|
+
{ name: 'Sarah', title: this.get('office') }
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Where the `title` is bound to updates of the `office` property.
|
|
24
|
+
|
|
25
|
+
Note that the hash is an empty object with no prototype chain, therefore
|
|
26
|
+
common methods like `toString` are not available in the resulting hash.
|
|
27
|
+
If you need to use such a method, you can use the `call` or `apply`
|
|
28
|
+
approach:
|
|
29
|
+
|
|
30
|
+
```js
|
|
31
|
+
function toString(obj) {
|
|
32
|
+
return Object.prototype.toString.apply(obj);
|
|
33
|
+
}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
@method hash
|
|
37
|
+
@for Ember.Templates.helpers
|
|
38
|
+
@param {Object} options
|
|
39
|
+
@return {Object} Hash
|
|
40
|
+
@since 2.3.0
|
|
41
|
+
@public
|
|
42
|
+
*/
|
|
43
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/helper.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
@module ember
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
Use the `{{helper}}` helper to create contextual helper so
|
|
7
|
+
that it can be passed around as first-class values in templates.
|
|
8
|
+
|
|
9
|
+
```handlebars
|
|
10
|
+
{{#let (helper "join-words" "foo" "bar" separator=" ") as |foo-bar|}}
|
|
11
|
+
|
|
12
|
+
{{!-- this is equivalent to invoking `{{join-words "foo" "bar" separator=" "}}` --}}
|
|
13
|
+
{{foo-bar}}
|
|
14
|
+
|
|
15
|
+
{{!-- this will pass the helper itself into the component, instead of invoking it now --}}
|
|
16
|
+
<MyComponent @helper={{helper foo-bar "baz"}} />
|
|
17
|
+
|
|
18
|
+
{{!-- this will yield the helper itself ("contextual helper"), instead of invoking it now --}}
|
|
19
|
+
{{yield foo-bar}}
|
|
20
|
+
{{/let}}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Arguments
|
|
24
|
+
|
|
25
|
+
The `{{helper}}` helper works similarly to the [`{{component}}`](./component?anchor=component) and
|
|
26
|
+
[`{{modifier}}`](./modifier?anchor=modifier) helper:
|
|
27
|
+
|
|
28
|
+
* When passed a string (e.g. `(helper "foo")`) as the first argument,
|
|
29
|
+
it will produce an opaque, internal "helper definition" object
|
|
30
|
+
that can be passed around and invoked elsewhere.
|
|
31
|
+
|
|
32
|
+
* Any additional positional and/or named arguments (a.k.a. params and hash)
|
|
33
|
+
will be stored ("curried") inside the definition object, such that, when invoked,
|
|
34
|
+
these arguments will be passed along to the referenced helper.
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
@method helper
|
|
38
|
+
@for Ember.Templates.helpers
|
|
39
|
+
@public
|
|
40
|
+
@since 3.27.0
|
|
41
|
+
*/
|
|
42
|
+
}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/if-unless.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
@module ember
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
The `if` helper allows you to conditionally render one of two branches,
|
|
7
|
+
depending on the "truthiness" of a property.
|
|
8
|
+
For example the following values are all falsey: `false`, `undefined`, `null`, `""`, `0`, `NaN` or an empty array.
|
|
9
|
+
|
|
10
|
+
This helper has two forms, block and inline.
|
|
11
|
+
|
|
12
|
+
## Block form
|
|
13
|
+
|
|
14
|
+
You can use the block form of `if` to conditionally render a section of the template.
|
|
15
|
+
|
|
16
|
+
To use it, pass the conditional value to the `if` helper,
|
|
17
|
+
using the block form to wrap the section of template you want to conditionally render.
|
|
18
|
+
Like so:
|
|
19
|
+
|
|
20
|
+
```app/templates/application.hbs
|
|
21
|
+
<Weather />
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
```app/components/weather.hbs
|
|
25
|
+
{{! will not render because greeting is undefined}}
|
|
26
|
+
{{#if @isRaining}}
|
|
27
|
+
Yes, grab an umbrella!
|
|
28
|
+
{{/if}}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
You can also define what to show if the property is falsey by using
|
|
32
|
+
the `else` helper.
|
|
33
|
+
|
|
34
|
+
```app/components/weather.hbs
|
|
35
|
+
{{#if @isRaining}}
|
|
36
|
+
Yes, grab an umbrella!
|
|
37
|
+
{{else}}
|
|
38
|
+
No, it's lovely outside!
|
|
39
|
+
{{/if}}
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
You are also able to combine `else` and `if` helpers to create more complex
|
|
43
|
+
conditional logic.
|
|
44
|
+
|
|
45
|
+
For the following template:
|
|
46
|
+
|
|
47
|
+
```app/components/weather.hbs
|
|
48
|
+
{{#if @isRaining}}
|
|
49
|
+
Yes, grab an umbrella!
|
|
50
|
+
{{else if @isCold}}
|
|
51
|
+
Grab a coat, it's chilly!
|
|
52
|
+
{{else}}
|
|
53
|
+
No, it's lovely outside!
|
|
54
|
+
{{/if}}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
If you call it by saying `isCold` is true:
|
|
58
|
+
|
|
59
|
+
```app/templates/application.hbs
|
|
60
|
+
<Weather @isCold={{true}} />
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Then `Grab a coat, it's chilly!` will be rendered.
|
|
64
|
+
|
|
65
|
+
## Inline form
|
|
66
|
+
|
|
67
|
+
The inline `if` helper conditionally renders a single property or string.
|
|
68
|
+
|
|
69
|
+
In this form, the `if` helper receives three arguments, the conditional value,
|
|
70
|
+
the value to render when truthy, and the value to render when falsey.
|
|
71
|
+
|
|
72
|
+
For example, if `useLongGreeting` is truthy, the following:
|
|
73
|
+
|
|
74
|
+
```app/templates/application.hbs
|
|
75
|
+
<Greeting @useLongGreeting={{true}} />
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
```app/components/greeting.hbs
|
|
79
|
+
{{if @useLongGreeting "Hello" "Hi"}} Alex
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Will render:
|
|
83
|
+
|
|
84
|
+
```html
|
|
85
|
+
Hello Alex
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
One detail to keep in mind is that both branches of the `if` helper will be evaluated,
|
|
89
|
+
so if you have `{{if condition "foo" (expensive-operation "bar")`,
|
|
90
|
+
`expensive-operation` will always calculate.
|
|
91
|
+
|
|
92
|
+
@method if
|
|
93
|
+
@for Ember.Templates.helpers
|
|
94
|
+
@public
|
|
95
|
+
*/
|
|
96
|
+
/**
|
|
97
|
+
The `unless` helper is the inverse of the `if` helper. It displays if a value
|
|
98
|
+
is falsey ("not true" or "is false"). Example values that will display with
|
|
99
|
+
`unless`: `false`, `undefined`, `null`, `""`, `0`, `NaN` or an empty array.
|
|
100
|
+
|
|
101
|
+
## Inline form
|
|
102
|
+
|
|
103
|
+
The inline `unless` helper conditionally renders a single property or string.
|
|
104
|
+
This helper acts like a ternary operator. If the first property is falsy,
|
|
105
|
+
the second argument will be displayed, otherwise, the third argument will be
|
|
106
|
+
displayed
|
|
107
|
+
|
|
108
|
+
For example, if you pass a falsey `useLongGreeting` to the `Greeting` component:
|
|
109
|
+
|
|
110
|
+
```app/templates/application.hbs
|
|
111
|
+
<Greeting @useLongGreeting={{false}} />
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
```app/components/greeting.hbs
|
|
115
|
+
{{unless @useLongGreeting "Hi" "Hello"}} Ben
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Then it will display:
|
|
119
|
+
|
|
120
|
+
```html
|
|
121
|
+
Hi Ben
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Block form
|
|
125
|
+
|
|
126
|
+
Like the `if` helper, the `unless` helper also has a block form.
|
|
127
|
+
|
|
128
|
+
The following will not render anything:
|
|
129
|
+
|
|
130
|
+
```app/templates/application.hbs
|
|
131
|
+
<Greeting />
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
```app/components/greeting.hbs
|
|
135
|
+
{{#unless @greeting}}
|
|
136
|
+
No greeting was found. Why not set one?
|
|
137
|
+
{{/unless}}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
You can also use an `else` helper with the `unless` block. The
|
|
141
|
+
`else` will display if the value is truthy.
|
|
142
|
+
|
|
143
|
+
If you have the following component:
|
|
144
|
+
|
|
145
|
+
```app/components/logged-in.hbs
|
|
146
|
+
{{#unless @userData}}
|
|
147
|
+
Please login.
|
|
148
|
+
{{else}}
|
|
149
|
+
Welcome back!
|
|
150
|
+
{{/unless}}
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
Calling it with a truthy `userData`:
|
|
154
|
+
|
|
155
|
+
```app/templates/application.hbs
|
|
156
|
+
<LoggedIn @userData={{hash username="Zoey"}} />
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Will render:
|
|
160
|
+
|
|
161
|
+
```html
|
|
162
|
+
Welcome back!
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
and calling it with a falsey `userData`:
|
|
166
|
+
|
|
167
|
+
```app/templates/application.hbs
|
|
168
|
+
<LoggedIn @userData={{false}} />
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
Will render:
|
|
172
|
+
|
|
173
|
+
```html
|
|
174
|
+
Please login.
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
@method unless
|
|
178
|
+
@for Ember.Templates.helpers
|
|
179
|
+
@public
|
|
180
|
+
*/
|
|
181
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/internal-helper.d.ts' {
|
|
2
|
+
import type { InternalOwner } from '@ember/-internals/owner';
|
|
3
|
+
import type { Helper, HelperDefinitionState } from '@glimmer/interfaces';
|
|
4
|
+
export function internalHelper(helper: Helper<InternalOwner>): HelperDefinitionState;
|
|
5
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/log.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
@module ember
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
`log` allows you to output the value of variables in the current rendering
|
|
7
|
+
context. `log` also accepts primitive types such as strings or numbers.
|
|
8
|
+
|
|
9
|
+
```handlebars
|
|
10
|
+
{{log "myVariable:" myVariable }}
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
@method log
|
|
14
|
+
@for Ember.Templates.helpers
|
|
15
|
+
@param {Array} params
|
|
16
|
+
@public
|
|
17
|
+
*/
|
|
18
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/modifier.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
@module ember
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
Use the `{{modifier}}` helper to create contextual modifier so
|
|
7
|
+
that it can be passed around as first-class values in templates.
|
|
8
|
+
|
|
9
|
+
```handlebars
|
|
10
|
+
{{#let (modifier "click-outside" click=this.submit) as |on-click-outside|}}
|
|
11
|
+
|
|
12
|
+
{{!-- this is equivalent to `<MyComponent {{click-outside click=this.submit}} />` --}}
|
|
13
|
+
<MyComponent {{on-click-outside}} />
|
|
14
|
+
|
|
15
|
+
{{!-- this will pass the modifier itself into the component, instead of invoking it now --}}
|
|
16
|
+
<MyComponent @modifier={{modifier on-click-outside "extra" "args"}} />
|
|
17
|
+
|
|
18
|
+
{{!-- this will yield the modifier itself ("contextual modifier"), instead of invoking it now --}}
|
|
19
|
+
{{yield on-click-outside}}
|
|
20
|
+
{{/let}}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Arguments
|
|
24
|
+
|
|
25
|
+
The `{{modifier}}` helper works similarly to the [`{{component}}`](./component?anchor=component) and
|
|
26
|
+
[`{{helper}}`](./helper?anchor=helper) helper:
|
|
27
|
+
|
|
28
|
+
* When passed a string (e.g. `(modifier "foo")`) as the first argument,
|
|
29
|
+
it will produce an opaque, internal "modifier definition" object
|
|
30
|
+
that can be passed around and invoked elsewhere.
|
|
31
|
+
|
|
32
|
+
* Any additional positional and/or named arguments (a.k.a. params and hash)
|
|
33
|
+
will be stored ("curried") inside the definition object, such that, when invoked,
|
|
34
|
+
these arguments will be passed along to the referenced modifier.
|
|
35
|
+
|
|
36
|
+
@method modifier
|
|
37
|
+
@for Ember.Templates.helpers
|
|
38
|
+
@public
|
|
39
|
+
@since 3.27.0
|
|
40
|
+
*/
|
|
41
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/mut.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
The `mut` helper lets you __clearly specify__ that a child `Component` can update the
|
|
4
|
+
(mutable) value passed to it, which will __change the value of the parent component__.
|
|
5
|
+
|
|
6
|
+
To specify that a parameter is mutable, when invoking the child `Component`:
|
|
7
|
+
|
|
8
|
+
```handlebars
|
|
9
|
+
<MyChild @childClickCount={{fn (mut totalClicks)}} />
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
or
|
|
13
|
+
|
|
14
|
+
```handlebars
|
|
15
|
+
{{my-child childClickCount=(mut totalClicks)}}
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
The child `Component` can then modify the parent's value just by modifying its own
|
|
19
|
+
property:
|
|
20
|
+
|
|
21
|
+
```javascript
|
|
22
|
+
// my-child.js
|
|
23
|
+
export default Component.extend({
|
|
24
|
+
click() {
|
|
25
|
+
this.incrementProperty('childClickCount');
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Note that for curly components (`{{my-component}}`) the bindings are already mutable,
|
|
31
|
+
making the `mut` unnecessary.
|
|
32
|
+
|
|
33
|
+
Additionally, the `mut` helper can be combined with the `fn` helper to
|
|
34
|
+
mutate a value. For example:
|
|
35
|
+
|
|
36
|
+
```handlebars
|
|
37
|
+
<MyChild @childClickCount={{this.totalClicks}} @click-count-change={{fn (mut totalClicks))}} />
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
or
|
|
41
|
+
|
|
42
|
+
```handlebars
|
|
43
|
+
{{my-child childClickCount=totalClicks click-count-change=(fn (mut totalClicks))}}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
The child `Component` would invoke the function with the new click value:
|
|
47
|
+
|
|
48
|
+
```javascript
|
|
49
|
+
// my-child.js
|
|
50
|
+
export default Component.extend({
|
|
51
|
+
click() {
|
|
52
|
+
this.get('click-count-change')(this.get('childClickCount') + 1);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
The `mut` helper changes the `totalClicks` value to what was provided as the `fn` argument.
|
|
58
|
+
|
|
59
|
+
The `mut` helper, when used with `fn`, will return a function that
|
|
60
|
+
sets the value passed to `mut` to its first argument. As an example, we can create a
|
|
61
|
+
button that increments a value passing the value directly to the `fn`:
|
|
62
|
+
|
|
63
|
+
```handlebars
|
|
64
|
+
{{! inc helper is not provided by Ember }}
|
|
65
|
+
<button onclick={{fn (mut count) (inc count)}}>
|
|
66
|
+
Increment count
|
|
67
|
+
</button>
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
@method mut
|
|
71
|
+
@param {Object} [attr] the "two-way" attribute that can be modified.
|
|
72
|
+
@for Ember.Templates.helpers
|
|
73
|
+
@public
|
|
74
|
+
*/
|
|
75
|
+
const _default: object;
|
|
76
|
+
export default _default;
|
|
77
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
declare module '@ember/-internals/glimmer/lib/helpers/page-title.d.ts' {
|
|
2
|
+
/**
|
|
3
|
+
@module ember
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
`page-title` allows you to set the title of any page in your application and
|
|
7
|
+
append additional titles for each route. For complete documentation, see
|
|
8
|
+
https://github.com/ember-cli/ember-page-title.
|
|
9
|
+
|
|
10
|
+
```handlebars
|
|
11
|
+
{{page-title "My Page Title" }}
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
@method page-title
|
|
15
|
+
@for Ember.Templates.helpers
|
|
16
|
+
@param {String} param
|
|
17
|
+
@public
|
|
18
|
+
*/
|
|
19
|
+
}
|