ember-source 7.1.0-alpha.4 → 7.1.0-alpha.5
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/build-metadata.json +3 -3
- package/dist/dev/packages/@ember/-internals/container/index.js +4 -401
- package/dist/dev/packages/@ember/-internals/deprecations/index.js +1 -1
- package/dist/dev/packages/@ember/-internals/environment/index.js +3 -161
- package/dist/dev/packages/@ember/-internals/glimmer/index.js +14 -15
- package/dist/dev/packages/@ember/-internals/meta/lib/meta.js +0 -1
- package/dist/dev/packages/@ember/-internals/metal/index.js +18 -9
- package/dist/dev/packages/@ember/-internals/routing/index.js +1 -10
- package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +10 -12
- package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +1 -10
- package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -10
- package/dist/dev/packages/@ember/-internals/string/index.js +0 -1
- package/dist/dev/packages/@ember/-internals/utils/index.js +8 -3
- package/dist/dev/packages/@ember/-internals/views/lib/compat/fallback-view-registry.js +0 -1
- package/dist/dev/packages/@ember/-internals/views/lib/mixins/action_support.js +3 -12
- package/dist/dev/packages/@ember/-internals/views/lib/system/event_dispatcher.js +2 -11
- package/dist/dev/packages/@ember/-internals/views/lib/system/utils.js +1 -1
- package/dist/dev/packages/@ember/-internals/views/lib/views/core_view.js +1 -18
- package/dist/dev/packages/@ember/-internals/views/lib/views/states.js +1 -1
- package/dist/dev/packages/@ember/application/index.js +5 -28
- package/dist/dev/packages/@ember/application/instance.js +3 -22
- package/dist/dev/packages/@ember/application/namespace.js +4 -11
- package/dist/dev/packages/@ember/array/index.js +7 -15
- package/dist/dev/packages/@ember/array/proxy.js +10 -14
- package/dist/dev/packages/@ember/canary-features/index.js +1 -1
- package/dist/dev/packages/@ember/component/helper.js +1 -14
- package/dist/dev/packages/@ember/component/index.js +1355 -16
- package/dist/dev/packages/@ember/component/template-only.js +1 -9
- package/dist/dev/packages/@ember/controller/index.js +3 -19
- package/dist/dev/packages/@ember/debug/container-debug-adapter.js +0 -19
- package/dist/dev/packages/@ember/debug/data-adapter.js +4 -11
- package/dist/dev/packages/@ember/debug/index.js +1 -1
- package/dist/dev/packages/@ember/debug/lib/deprecate.js +1 -1
- package/dist/dev/packages/@ember/engine/index.js +3 -29
- package/dist/dev/packages/@ember/engine/instance.js +3 -8
- package/dist/dev/packages/@ember/helper/index.js +169 -21
- package/dist/dev/packages/@ember/instrumentation/index.js +1 -1
- package/dist/dev/packages/@ember/modifier/index.js +2 -16
- package/dist/dev/packages/@ember/modifier/on.js +1 -9
- package/dist/dev/packages/@ember/object/-internals.js +3 -11
- package/dist/dev/packages/@ember/object/compat.js +3 -10
- package/dist/dev/packages/@ember/object/computed.js +2 -12
- package/dist/dev/packages/@ember/object/core.js +10 -18
- package/dist/dev/packages/@ember/object/evented.js +2 -12
- package/dist/dev/packages/@ember/object/events.js +1 -11
- package/dist/dev/packages/@ember/object/index.js +10 -14
- package/dist/dev/packages/@ember/object/internals.js +1 -1
- package/dist/dev/packages/@ember/object/lib/computed/computed_macros.js +6 -23
- package/dist/dev/packages/@ember/object/lib/computed/reduce_computed_macros.js +3 -12
- package/dist/dev/packages/@ember/object/mixin.js +7 -10
- package/dist/dev/packages/@ember/object/observable.js +8 -12
- package/dist/dev/packages/@ember/object/observers.js +1 -11
- package/dist/dev/packages/@ember/object/promise-proxy-mixin.js +3 -13
- package/dist/dev/packages/@ember/object/proxy.js +0 -7
- package/dist/dev/packages/@ember/reactive/collections.js +589 -1
- package/dist/dev/packages/@ember/renderer/index.js +1 -14
- package/dist/dev/packages/@ember/routing/-internals.js +1 -10
- package/dist/dev/packages/@ember/routing/index.js +614 -14
- package/dist/dev/packages/@ember/routing/lib/generate_controller.js +2 -11
- package/dist/dev/packages/@ember/routing/lib/routing-service.js +7 -17
- package/dist/dev/packages/@ember/routing/lib/utils.js +2 -11
- package/dist/dev/packages/@ember/routing/route.js +12 -23
- package/dist/dev/packages/@ember/routing/router-service.js +8 -17
- package/dist/dev/packages/@ember/routing/router.js +5 -21
- package/dist/dev/packages/@ember/runloop/index.js +1 -10
- package/dist/dev/packages/@ember/service/index.js +1 -11
- package/dist/dev/packages/@ember/template/index.js +1 -14
- package/dist/dev/packages/@ember/template-compiler/lib/compile-options.js +12 -15
- package/dist/dev/packages/@ember/template-compiler/lib/dasherize-component-name.js +0 -1
- package/dist/dev/packages/@ember/template-compiler/lib/plugins/auto-import-builtins.js +13 -60
- package/dist/dev/packages/@ember/template-compiler/lib/plugins/index.js +1 -1
- package/dist/dev/packages/@ember/template-compiler/lib/plugins/transform-resolutions.js +1 -3
- package/dist/dev/packages/@ember/template-compiler/lib/template.js +2 -10
- package/dist/dev/packages/@ember/template-factory/index.js +1 -8
- package/dist/dev/packages/@ember/utils/lib/compare.js +0 -7
- package/dist/dev/packages/@ember/utils/lib/is_empty.js +1 -12
- package/dist/dev/packages/@glimmer/manager/index.js +4 -314
- package/dist/dev/packages/@glimmer/node/index.js +3 -11
- package/dist/dev/packages/@glimmer/opcode-compiler/index.js +5 -7
- package/dist/dev/packages/@glimmer/program/index.js +194 -3
- package/dist/dev/packages/@glimmer/reference/index.js +4 -5
- package/dist/dev/packages/@glimmer/runtime/index.js +17 -10
- package/dist/dev/packages/@glimmer/tracking/index.js +2 -11
- package/dist/dev/packages/@glimmer/tracking/primitives/cache/index.js +1 -11
- package/dist/dev/packages/@glimmer/util/index.js +1 -2
- package/dist/dev/packages/@glimmer/validator/index.js +4 -1253
- package/dist/dev/packages/@glimmer/vm/index.js +1 -1
- package/dist/dev/packages/@glimmer/wire-format/index.js +3 -65
- package/dist/dev/packages/ember/version.js +1 -1
- package/dist/dev/packages/ember-template-compiler/index.js +7 -7
- package/dist/dev/packages/shared-chunks/{alias-CSC0WIbj.js → alias-ZcMQckQV.js} +8 -4
- package/dist/dev/packages/shared-chunks/api-AYt3zE12.js +310 -0
- package/dist/dev/packages/shared-chunks/{api-BQMslHhq.js → api-WvJPuo9z.js} +4 -5
- package/dist/dev/packages/shared-chunks/{args-proxy-DgXMc9b5.js → args-proxy-BNLuRFlO.js} +2 -4
- package/dist/dev/packages/shared-chunks/{array-D8PfjQHi.js → array-Bh_kUjzy.js} +2 -1
- package/dist/dev/packages/shared-chunks/cache-B7dqAS38.js +596 -0
- package/dist/dev/packages/shared-chunks/{capabilities-O_xc7Yqk.js → capabilities-CZkuOqqC.js} +0 -5
- package/dist/dev/packages/shared-chunks/chain-tags-D6tuFUj_.js +190 -0
- package/dist/dev/packages/shared-chunks/{collections-D_nY_0UJ.js → collections-DPkjqeA3.js} +0 -1
- package/dist/dev/packages/shared-chunks/{compiler-D1leQ3Gl.js → compiler-CXB_8GdR.js} +7043 -234
- package/dist/dev/packages/shared-chunks/computed-CJnghmXC.js +980 -0
- package/dist/dev/packages/shared-chunks/container-BzzHmCNj.js +404 -0
- package/dist/dev/packages/shared-chunks/curly-CvC8E_4-.js +617 -0
- package/dist/dev/packages/shared-chunks/{fragment-Cc5k9Oy4.js → curried-BVwSNqpf.js} +5 -288
- package/dist/dev/packages/shared-chunks/decorator-B5Uh5NFI.js +135 -0
- package/dist/dev/packages/shared-chunks/element-C-QcIABg.js +109 -0
- package/dist/dev/packages/shared-chunks/element-builder-kHVx0F__.js +812 -0
- package/dist/dev/packages/shared-chunks/env-g-kaAFLN.js +161 -0
- package/dist/dev/packages/shared-chunks/events-6aFVjD4k.js +180 -0
- package/dist/dev/packages/shared-chunks/get-CpJjYeJO.js +138 -0
- package/dist/dev/packages/shared-chunks/get-debug-name-CSniHBsn.js +45 -0
- package/dist/dev/packages/shared-chunks/get_properties-CIm8IAtP.js +55 -0
- package/dist/dev/packages/shared-chunks/guid-Cbq2sNV_.js +123 -0
- package/dist/dev/packages/shared-chunks/hash-D3BENmhU.js +192 -0
- package/dist/dev/packages/shared-chunks/helper-DlC4YesW.js +314 -0
- package/dist/dev/packages/shared-chunks/index-CTxkmV78.js +2500 -0
- package/dist/dev/packages/shared-chunks/index-D-xTBV4B.js +220 -0
- package/dist/dev/packages/shared-chunks/{index-BUPd6pkm.js → index-DmGmwWPJ.js} +29 -29
- package/dist/dev/packages/shared-chunks/injected_property-B4T-FzZZ.js +70 -0
- package/dist/dev/packages/shared-chunks/intern-zquhAEIg.js +51 -0
- package/dist/dev/packages/shared-chunks/internal-CbQSKXEm.js +140 -0
- package/dist/dev/packages/shared-chunks/internal-helper-Dsl9_7H_.js +7 -0
- package/dist/dev/packages/shared-chunks/{neq-DujMPv1k.js → invoke-B6j6DdDz.js} +4 -32
- package/dist/{prod/packages/shared-chunks/is_proxy-Cr1qlMv_.js → dev/packages/shared-chunks/is_proxy-Bzg0d4m4.js} +1 -1
- package/dist/dev/packages/shared-chunks/libraries-CHBwbR72.js +79 -0
- package/dist/dev/packages/shared-chunks/mandatory-setter-BpbAMTzV.js +107 -0
- package/dist/dev/packages/shared-chunks/meta-BmRXesrk.js +46 -0
- package/dist/{prod/packages/shared-chunks/name-C68GLLO3.js → dev/packages/shared-chunks/name-Clp4Vsod.js} +1 -1
- package/dist/dev/packages/shared-chunks/{namespace_search-uT8odThF.js → namespace_search-BfvzEQzN.js} +1 -2
- package/dist/dev/packages/shared-chunks/normalize-CKySQVU7.js +84 -0
- package/dist/dev/packages/shared-chunks/observers-C2DurkLG.js +199 -0
- package/dist/dev/packages/shared-chunks/on-D8QwT-eN.js +253 -0
- package/dist/dev/packages/shared-chunks/opcode-metadata-9iSW5JGP.js +285 -0
- package/dist/dev/packages/shared-chunks/opcodes-CplRyHl_.js +50 -0
- package/dist/dev/packages/shared-chunks/or-DBU9Ge4r.js +118 -0
- package/dist/{prod/packages/shared-chunks/program-B7SJZ5NF.js → dev/packages/shared-chunks/program-DzAfcWFj.js} +1 -1
- package/dist/{prod/packages/shared-chunks/program-context-DFiwaPMR.js → dev/packages/shared-chunks/program-context-CqcQMsfa.js} +3 -3
- package/dist/dev/packages/shared-chunks/property_get-CIBS9umw.js +139 -0
- package/dist/dev/packages/shared-chunks/{property_set-DaoZXGM5.js → property_set-D3PKyisF.js} +4 -2
- package/dist/dev/packages/shared-chunks/props-fiqxqhAH.js +85 -0
- package/dist/dev/packages/shared-chunks/{reference-C3TKDRnP.js → reference-BoPB2LfI.js} +3 -4
- package/dist/dev/packages/shared-chunks/{registers-ylirb0dq.js → registers-DoamZwaG.js} +1 -1
- package/dist/{prod/packages/shared-chunks/rehydrate-builder-D3t52iGR.js → dev/packages/shared-chunks/rehydrate-builder-DdzXTaJk.js} +7 -4
- package/dist/dev/packages/shared-chunks/{render-DCchifOK.js → render-DDdabL30.js} +510 -15
- package/dist/{prod/packages/shared-chunks/serialize-builder-iXiRs1Pg.js → dev/packages/shared-chunks/serialize-builder-B3u9Wr3n.js} +2 -7
- package/dist/dev/packages/shared-chunks/set_properties-BghuuGJx.js +48 -0
- package/dist/dev/packages/shared-chunks/{setup-registry-DxchCIL2.js → setup-registry-XxD0xvgf.js} +34 -14
- package/dist/dev/packages/shared-chunks/spec-BXl1reqK.js +16 -0
- package/dist/dev/packages/shared-chunks/super-BBBjgF69.js +91 -0
- package/dist/dev/packages/shared-chunks/template-BRrQR6KS.js +16 -0
- package/dist/dev/packages/shared-chunks/template-only-Yluyu0DY.js +78 -0
- package/dist/dev/packages/shared-chunks/textarea-C0Us0PNJ.js +468 -0
- package/dist/dev/packages/shared-chunks/tracked-CKE4wnE6.js +148 -0
- package/dist/dev/packages/shared-chunks/tracked-data-CGnA4ytZ.js +31 -0
- package/dist/dev/packages/shared-chunks/transform-resolutions-h1ik8gqW.js +645 -0
- package/dist/dev/packages/shared-chunks/unique-id-A83bjEE-.js +32 -0
- package/dist/{prod/packages/shared-chunks/on-CersD7PL.js → dev/packages/shared-chunks/untouchable-this-cH6_N2LJ.js} +215 -1397
- package/dist/dev/packages/shared-chunks/well-known-_EVO9RaV.js +17 -0
- package/dist/prod/packages/@ember/-internals/container/index.js +5 -315
- package/dist/prod/packages/@ember/-internals/deprecations/index.js +1 -1
- package/dist/prod/packages/@ember/-internals/environment/index.js +3 -158
- package/dist/prod/packages/@ember/-internals/glimmer/index.js +14 -13
- package/dist/prod/packages/@ember/-internals/meta/lib/meta.js +1 -2
- package/dist/prod/packages/@ember/-internals/metal/index.js +19 -13
- package/dist/prod/packages/@ember/-internals/routing/index.js +2 -6
- package/dist/prod/packages/@ember/-internals/runtime/lib/ext/rsvp.js +1 -1
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +10 -10
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +2 -6
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/registry_proxy.js +1 -1
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -6
- package/dist/prod/packages/@ember/-internals/string/index.js +0 -2
- package/dist/prod/packages/@ember/-internals/utils/index.js +33 -30
- package/dist/prod/packages/@ember/-internals/views/lib/compat/fallback-view-registry.js +0 -2
- package/dist/prod/packages/@ember/-internals/views/lib/mixins/action_support.js +2 -6
- package/dist/prod/packages/@ember/-internals/views/lib/system/event_dispatcher.js +3 -7
- package/dist/prod/packages/@ember/-internals/views/lib/system/utils.js +2 -2
- package/dist/prod/packages/@ember/-internals/views/lib/views/core_view.js +1 -14
- package/dist/prod/packages/@ember/-internals/views/lib/views/states.js +1 -2
- package/dist/prod/packages/@ember/application/index.js +5 -24
- package/dist/prod/packages/@ember/application/instance.js +6 -18
- package/dist/prod/packages/@ember/application/namespace.js +5 -8
- package/dist/prod/packages/@ember/array/index.js +8 -12
- package/dist/prod/packages/@ember/array/proxy.js +10 -10
- package/dist/prod/packages/@ember/canary-features/index.js +1 -1
- package/dist/prod/packages/@ember/component/helper.js +1 -12
- package/dist/prod/packages/@ember/component/index.js +1292 -15
- package/dist/prod/packages/@ember/component/template-only.js +1 -6
- package/dist/prod/packages/@ember/controller/index.js +3 -16
- package/dist/prod/packages/@ember/debug/container-debug-adapter.js +1 -15
- package/dist/prod/packages/@ember/debug/data-adapter.js +5 -7
- package/dist/prod/packages/@ember/debug/index.js +1 -1
- package/dist/prod/packages/@ember/debug/lib/deprecate.js +1 -1
- package/dist/prod/packages/@ember/engine/index.js +4 -25
- package/dist/prod/packages/@ember/engine/instance.js +4 -9
- package/dist/prod/packages/@ember/helper/index.js +169 -19
- package/dist/prod/packages/@ember/instrumentation/index.js +1 -1
- package/dist/prod/packages/@ember/modifier/index.js +2 -14
- package/dist/prod/packages/@ember/modifier/on.js +1 -6
- package/dist/prod/packages/@ember/object/-internals.js +3 -6
- package/dist/prod/packages/@ember/object/compat.js +4 -7
- package/dist/prod/packages/@ember/object/computed.js +2 -8
- package/dist/prod/packages/@ember/object/core.js +9 -15
- package/dist/prod/packages/@ember/object/evented.js +2 -7
- package/dist/prod/packages/@ember/object/events.js +1 -6
- package/dist/prod/packages/@ember/object/index.js +10 -12
- package/dist/prod/packages/@ember/object/internals.js +3 -6
- package/dist/prod/packages/@ember/object/lib/computed/computed_macros.js +6 -20
- package/dist/prod/packages/@ember/object/lib/computed/reduce_computed_macros.js +3 -9
- package/dist/prod/packages/@ember/object/mixin.js +7 -9
- package/dist/prod/packages/@ember/object/observable.js +8 -9
- package/dist/prod/packages/@ember/object/observers.js +1 -6
- package/dist/prod/packages/@ember/object/promise-proxy-mixin.js +3 -9
- package/dist/prod/packages/@ember/object/proxy.js +0 -7
- package/dist/prod/packages/@ember/reactive/collections.js +589 -1
- package/dist/prod/packages/@ember/renderer/index.js +1 -12
- package/dist/prod/packages/@ember/routing/history-location.js +1 -1
- package/dist/prod/packages/@ember/routing/index.js +581 -12
- package/dist/prod/packages/@ember/routing/lib/dsl.js +1 -1
- package/dist/prod/packages/@ember/routing/lib/generate_controller.js +2 -6
- package/dist/prod/packages/@ember/routing/lib/routing-service.js +5 -14
- package/dist/prod/packages/@ember/routing/lib/utils.js +2 -6
- package/dist/prod/packages/@ember/routing/none-location.js +1 -1
- package/dist/prod/packages/@ember/routing/route.js +12 -21
- package/dist/prod/packages/@ember/routing/router-service.js +6 -14
- package/dist/prod/packages/@ember/routing/router.js +5 -17
- package/dist/prod/packages/@ember/runloop/index.js +2 -6
- package/dist/prod/packages/@ember/service/index.js +1 -7
- package/dist/prod/packages/@ember/template/index.js +1 -12
- package/dist/prod/packages/@ember/template-compiler/lib/compile-options.js +13 -14
- package/dist/prod/packages/@ember/template-compiler/lib/dasherize-component-name.js +0 -2
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-against-attrs.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-against-named-outlets.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-input-helper-without-block.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-reserved-named-arguments.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/auto-import-builtins.js +13 -60
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/index.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-each-track-array.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-in-element.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-resolutions.js +127 -4
- package/dist/prod/packages/@ember/template-compiler/lib/template.js +2 -7
- package/dist/prod/packages/@ember/template-factory/index.js +1 -5
- package/dist/prod/packages/@ember/utils/lib/compare.js +1 -8
- package/dist/prod/packages/@ember/utils/lib/is_empty.js +1 -7
- package/dist/prod/packages/@glimmer/manager/index.js +4 -292
- package/dist/prod/packages/@glimmer/node/index.js +3 -8
- package/dist/prod/packages/@glimmer/opcode-compiler/index.js +5 -5
- package/dist/prod/packages/@glimmer/program/index.js +194 -3
- package/dist/prod/packages/@glimmer/reference/index.js +4 -4
- package/dist/prod/packages/@glimmer/runtime/index.js +16 -8
- package/dist/prod/packages/@glimmer/tracking/index.js +2 -7
- package/dist/prod/packages/@glimmer/tracking/primitives/cache/index.js +1 -6
- package/dist/prod/packages/@glimmer/util/index.js +2 -2
- package/dist/prod/packages/@glimmer/validator/index.js +5 -1016
- package/dist/prod/packages/@glimmer/vm/index.js +1 -1
- package/dist/prod/packages/@glimmer/wire-format/index.js +3 -65
- package/dist/prod/packages/ember/version.js +1 -1
- package/dist/prod/packages/ember-template-compiler/index.js +5 -7
- package/dist/prod/packages/shared-chunks/{alias-BLBQkche.js → alias-CLuFeKoV.js} +8 -6
- package/dist/prod/packages/shared-chunks/api-CM1trl_4.js +289 -0
- package/dist/prod/packages/shared-chunks/{api-B5UrgITK.js → api-zh_k31vb.js} +4 -5
- package/dist/prod/packages/shared-chunks/{args-proxy-Dl0A0YWI.js → args-proxy-BDXbXCF9.js} +2 -2
- package/dist/prod/packages/shared-chunks/{array-kVQfzrQn.js → array-DHdr4__s.js} +3 -3
- package/dist/prod/packages/shared-chunks/assert-CUCJBR2C.js +19 -0
- package/dist/prod/packages/shared-chunks/cache-BIlOoPA7.js +371 -0
- package/dist/prod/packages/shared-chunks/{capabilities-DXA-L0iT.js → capabilities-_5e35539.js} +0 -3
- package/dist/prod/packages/shared-chunks/chain-tags-BJqcuCM1.js +179 -0
- package/dist/prod/packages/shared-chunks/{compiler-Bbki2GT_.js → compiler-DjQtTQGk.js} +7045 -193
- package/dist/prod/packages/shared-chunks/{namespace_search-Dcdalhj6.js → computed-2Udcmflw.js} +109 -239
- package/dist/prod/packages/shared-chunks/container-D5NwW5Fd.js +316 -0
- package/dist/prod/packages/shared-chunks/curly-BsqvV8G0.js +546 -0
- package/dist/prod/packages/shared-chunks/{fragment-D7nBU9ae.js → curried-BVwSNqpf.js} +6 -303
- package/dist/prod/packages/shared-chunks/debug-render-tree-BLtnOSbb.js +2049 -0
- package/dist/prod/packages/shared-chunks/{decorator-BdDDBUd2.js → decorator-DBCISop4.js} +1 -1
- package/dist/prod/packages/shared-chunks/element-BjFr0tO0.js +101 -0
- package/dist/prod/packages/shared-chunks/{element-builder-CzXb9l1W.js → element-builder-BPjq0rxK.js} +109 -88
- package/dist/prod/packages/shared-chunks/env-DXxsTFkM.js +158 -0
- package/dist/prod/packages/shared-chunks/events-970OxD6Q.js +175 -0
- package/dist/prod/packages/shared-chunks/get-D5wxdTkY.js +138 -0
- package/dist/prod/packages/shared-chunks/get_properties-BcAC5sGx.js +55 -0
- package/dist/prod/packages/shared-chunks/guid-Cbq2sNV_.js +123 -0
- package/dist/prod/packages/shared-chunks/hash-DcUe-meU.js +192 -0
- package/dist/prod/packages/shared-chunks/helper-Da672z4a.js +299 -0
- package/dist/prod/packages/shared-chunks/{index-CjaDF9kC.js → index--2U-v2nf.js} +18 -10
- package/dist/prod/packages/shared-chunks/index-D-xTBV4B.js +220 -0
- package/dist/prod/packages/shared-chunks/index-D87qoERP.js +2322 -0
- package/dist/prod/packages/shared-chunks/{injected_property-CTVs5FPh.js → injected_property-D9B-fPiH.js} +3 -3
- package/dist/prod/packages/shared-chunks/intern-zquhAEIg.js +51 -0
- package/dist/prod/packages/shared-chunks/internal-DidurjJB.js +137 -0
- package/dist/prod/packages/shared-chunks/internal-helper-DIbr1RgC.js +7 -0
- package/dist/prod/packages/shared-chunks/{neq-BqdovTuC.js → invoke-Dr_CRwA_.js} +4 -24
- package/dist/{dev/packages/shared-chunks/is_proxy-B0smdQy8.js → prod/packages/shared-chunks/is_proxy-Bzg0d4m4.js} +1 -1
- package/dist/prod/packages/shared-chunks/libraries-DaXpIDYN.js +60 -0
- package/dist/prod/packages/shared-chunks/meta-B9mldqPL.js +36 -0
- package/dist/{dev/packages/shared-chunks/name-Z7dpqvzn.js → prod/packages/shared-chunks/name-Clp4Vsod.js} +1 -1
- package/dist/prod/packages/shared-chunks/namespace_search-BfvzEQzN.js +134 -0
- package/dist/prod/packages/shared-chunks/normalize-D9jDJVGg.js +84 -0
- package/dist/prod/packages/shared-chunks/observers-Co4JALkS.js +199 -0
- package/dist/prod/packages/shared-chunks/on-C3ZQiUUD.js +228 -0
- package/dist/prod/packages/shared-chunks/opcode-metadata-9iSW5JGP.js +285 -0
- package/dist/prod/packages/shared-chunks/opcodes-CplRyHl_.js +50 -0
- package/dist/prod/packages/shared-chunks/or-oTVMuHc8.js +91 -0
- package/dist/{dev/packages/shared-chunks/program-DfV0v8aa.js → prod/packages/shared-chunks/program-B7CWdS8W.js} +1 -2
- package/dist/{dev/packages/shared-chunks/program-context-sJz0oHOA.js → prod/packages/shared-chunks/program-context-CGMN-aQM.js} +3 -3
- package/dist/prod/packages/shared-chunks/property_get-hWJ0nGhW.js +122 -0
- package/dist/prod/packages/shared-chunks/{property_set-B2sZxeCw.js → property_set-Dj5-ScWk.js} +4 -5
- package/dist/prod/packages/shared-chunks/props-fiqxqhAH.js +85 -0
- package/dist/prod/packages/shared-chunks/{reference-BNqcwZWH.js → reference-BshxG6wn.js} +3 -3
- package/dist/prod/packages/shared-chunks/{registers-ylirb0dq.js → registers-DoamZwaG.js} +1 -1
- package/dist/{dev/packages/shared-chunks/rehydrate-builder-BRH0p0wA.js → prod/packages/shared-chunks/rehydrate-builder-BKg2X6Lo.js} +7 -7
- package/dist/prod/packages/shared-chunks/{render-D78XHdek.js → render-nx5-PsDW.js} +487 -12
- package/dist/{dev/packages/shared-chunks/serialize-builder-DiO7Ak9_.js → prod/packages/shared-chunks/serialize-builder-BGbC30SN.js} +2 -10
- package/dist/prod/packages/shared-chunks/set_properties-oPyURk67.js +48 -0
- package/dist/prod/packages/shared-chunks/{setup-registry-Cs-7NIJU.js → setup-registry-TiaKLj5k.js} +35 -13
- package/dist/prod/packages/shared-chunks/spec-BXl1reqK.js +16 -0
- package/dist/prod/packages/shared-chunks/super-BBBjgF69.js +91 -0
- package/dist/prod/packages/shared-chunks/template-BRrQR6KS.js +16 -0
- package/dist/prod/packages/shared-chunks/template-only-BtLl0uH0.js +78 -0
- package/dist/prod/packages/shared-chunks/textarea-CPKZ1c_O.js +455 -0
- package/dist/prod/packages/shared-chunks/{tracked-Cl5l4v8b.js → tracked-CffAABMz.js} +6 -4
- package/dist/prod/packages/shared-chunks/tracked-data-C83f5V5S.js +31 -0
- package/dist/prod/packages/shared-chunks/unique-id-CfHImDRV.js +32 -0
- package/dist/prod/packages/shared-chunks/well-known-_EVO9RaV.js +17 -0
- package/docs/data.json +1263 -1029
- package/package.json +1 -1
- package/types/stable/@ember/-internals/container/lib/registry.d.ts +1 -1
- package/types/stable/@ember/-internals/deprecations/index.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/index.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/curly.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/mount.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/outlet.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/route-template.d.ts +2 -2
- package/types/stable/@ember/-internals/glimmer/lib/component.d.ts +9 -7
- package/types/stable/@ember/-internals/glimmer/lib/components/abstract-input.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/dom.d.ts +6 -2
- package/types/stable/@ember/-internals/glimmer/lib/environment.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +3 -3
- package/types/stable/@ember/-internals/glimmer/lib/setup-registry.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/utils/bindings.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/utils/curly-component-state-bucket.d.ts +3 -2
- package/types/stable/@ember/-internals/glimmer/lib/utils/iterator.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/utils/managers.d.ts +2 -1
- package/types/stable/@ember/-internals/glimmer/lib/utils/serialization-first-node-helpers.d.ts +1 -1
- package/types/stable/@ember/-internals/glimmer/lib/utils/string.d.ts +1 -1
- package/types/stable/@ember/-internals/meta/lib/meta.d.ts +3 -2
- package/types/stable/@ember/-internals/metal/lib/cache.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/chain-tags.d.ts +3 -2
- package/types/stable/@ember/-internals/metal/lib/computed.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/decorator.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/deprecate_property.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/events.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/observer.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/properties.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/property_events.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/tags.d.ts +2 -1
- package/types/stable/@ember/-internals/runtime/lib/mixins/container_proxy.d.ts +1 -1
- package/types/stable/@ember/-internals/runtime/lib/mixins/registry_proxy.d.ts +1 -1
- package/types/stable/@ember/-internals/utils/lib/is_proxy.d.ts +1 -1
- package/types/stable/@ember/-internals/utils/lib/mandatory-setter.d.ts +1 -1
- package/types/stable/@ember/-internals/views/lib/system/utils.d.ts +1 -1
- package/types/stable/@ember/-internals/views/lib/views/core_view.d.ts +2 -2
- package/types/stable/@ember/-internals/views/lib/views/states.d.ts +1 -1
- package/types/stable/@ember/application/index.d.ts +5 -4
- package/types/stable/@ember/application/instance.d.ts +4 -3
- package/types/stable/@ember/application/namespace.d.ts +1 -1
- package/types/stable/@ember/array/proxy.d.ts +4 -3
- package/types/stable/@ember/component/helper.d.ts +1 -1
- package/types/stable/@ember/component/index.d.ts +6 -3
- package/types/stable/@ember/controller/index.d.ts +2 -2
- package/types/stable/@ember/debug/container-debug-adapter.d.ts +1 -1
- package/types/stable/@ember/engine/index.d.ts +3 -3
- package/types/stable/@ember/engine/instance.d.ts +4 -3
- package/types/stable/@ember/helper/index.d.ts +177 -5
- package/types/stable/@ember/modifier/index.d.ts +1 -1
- package/types/stable/@ember/object/-internals.d.ts +2 -2
- package/types/stable/@ember/object/compat.d.ts +2 -2
- package/types/stable/@ember/object/computed.d.ts +3 -1
- package/types/stable/@ember/object/evented.d.ts +1 -1
- package/types/stable/@ember/object/events.d.ts +1 -1
- package/types/stable/@ember/object/index.d.ts +8 -2
- package/types/stable/@ember/object/lib/computed/computed_macros.d.ts +1 -1
- package/types/stable/@ember/object/mixin.d.ts +1 -1
- package/types/stable/@ember/object/observers.d.ts +1 -1
- package/types/stable/@ember/object/proxy.d.ts +1 -1
- package/types/stable/@ember/reactive/collections.d.ts +6 -6
- package/types/stable/@ember/renderer/index.d.ts +2 -2
- package/types/stable/@ember/routing/index.d.ts +1 -1
- package/types/stable/@ember/routing/lib/controller_for.d.ts +2 -2
- package/types/stable/@ember/routing/route.d.ts +2 -2
- package/types/stable/@ember/routing/router.d.ts +2 -2
- package/types/stable/@ember/service/index.d.ts +1 -1
- package/types/stable/@ember/template/index.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/dasherize-component-name.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/assert-against-attrs.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/assert-against-named-outlets.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/assert-input-helper-without-block.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/assert-reserved-named-arguments.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/auto-import-builtins.d.ts +1 -4
- package/types/stable/@ember/template-compiler/lib/plugins/transform-action-syntax.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/transform-each-in-into-each.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/transform-each-track-array.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/transform-in-element.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/transform-resolutions.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/transform-wrap-mount-and-outlet.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/plugins/utils.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/system/calculate-location-display.d.ts +1 -1
- package/types/stable/@ember/template-compiler/lib/types.d.ts +2 -1
- package/types/stable/@ember/template-factory/index.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/builder/builder-interface.d.ts +2 -2
- package/types/stable/@glimmer/compiler/lib/builder/builder.d.ts +2 -2
- package/types/stable/@glimmer/compiler/lib/compiler.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/context.d.ts +2 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/index.d.ts +2 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/impl.d.ts +2 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/curry.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/dynamic-vars.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/has-block.d.ts +2 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/if-unless.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/keywords/utils/log.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/element/classified.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/element/component.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/element/simple-element.d.ts +2 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/expressions.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/statements.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/1-normalization/visitors/strict-mode.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/2-encoding/expressions.d.ts +1 -1
- package/types/stable/@glimmer/compiler/lib/passes/2-encoding/mir.d.ts +3 -1
- package/types/stable/@glimmer/compiler/lib/shared/result.d.ts +1 -1
- package/types/stable/@glimmer/manager/lib/public/component.d.ts +1 -1
- package/types/stable/@glimmer/manager/lib/util/args-proxy.d.ts +1 -1
- package/types/stable/@glimmer/manager/lib/util/capabilities.d.ts +1 -1
- package/types/stable/@glimmer/node/lib/node-dom-helper.d.ts +1 -1
- package/types/stable/@glimmer/opcode-compiler/lib/opcode-builder/helpers/components.d.ts +1 -1
- package/types/stable/@glimmer/runtime/index.d.ts +7 -4
- package/types/stable/@glimmer/runtime/lib/compiled/expressions/concat.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/compiled/opcodes/-debug-strip.d.ts +4 -3
- package/types/stable/@glimmer/runtime/lib/compiled/opcodes/component.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/compiled/opcodes/dom.d.ts +2 -2
- package/types/stable/@glimmer/runtime/lib/compiled/opcodes/vm.d.ts +2 -2
- package/types/stable/@glimmer/runtime/lib/component/template-only.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/curried-value.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/helpers/and.d.ts +3 -0
- package/types/stable/@glimmer/runtime/lib/helpers/gt.d.ts +8 -0
- package/types/stable/@glimmer/runtime/lib/helpers/gte.d.ts +8 -0
- package/types/stable/@glimmer/runtime/lib/helpers/invoke.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/helpers/lt.d.ts +8 -0
- package/types/stable/@glimmer/runtime/lib/helpers/lte.d.ts +8 -0
- package/types/stable/@glimmer/runtime/lib/helpers/not.d.ts +3 -0
- package/types/stable/@glimmer/runtime/lib/helpers/or.d.ts +3 -0
- package/types/stable/@glimmer/runtime/lib/opcodes.d.ts +2 -2
- package/types/stable/@glimmer/runtime/lib/references/class-list.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/references/curry-value.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/render.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/scope.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/vm/append.d.ts +3 -2
- package/types/stable/@glimmer/runtime/lib/vm/arguments.d.ts +2 -2
- package/types/stable/@glimmer/runtime/lib/vm/content/text.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/vm/element-builder.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/vm/low-level.d.ts +2 -1
- package/types/stable/@glimmer/runtime/lib/vm/rehydrate-builder.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/vm/update.d.ts +2 -1
- package/types/stable/@glimmer/syntax/lib/keywords.d.ts +2 -2
- package/types/stable/@glimmer/tracking/index.d.ts +2 -1
- package/types/stable/@glimmer/tracking/primitives/cache.d.ts +1 -1
- package/types/stable/index.d.ts +7 -0
- package/dist/dev/packages/shared-chunks/constants-BbdWMvgs.js +0 -213
- package/dist/dev/packages/shared-chunks/dynamic-CgX8M02_.js +0 -3823
- package/dist/dev/packages/shared-chunks/element-builder-BpJIoi99.js +0 -404
- package/dist/dev/packages/shared-chunks/index-RzG0Jvjx.js +0 -6306
- package/dist/dev/packages/shared-chunks/mandatory-setter-DHZe7-kW.js +0 -425
- package/dist/dev/packages/shared-chunks/observers-Bj9qLVau.js +0 -2062
- package/dist/dev/packages/shared-chunks/set_properties-kVGzZL_a.js +0 -100
- package/dist/dev/packages/shared-chunks/transform-resolutions-D-YtZ0_g.js +0 -7458
- package/dist/prod/packages/shared-chunks/constants-DThhT5fu.js +0 -210
- package/dist/prod/packages/shared-chunks/index-r-Dz_hzt.js +0 -5931
- package/dist/prod/packages/shared-chunks/observers-tZ2aOzr4.js +0 -714
- package/dist/prod/packages/shared-chunks/set_properties-C1T46IiN.js +0 -101
- package/dist/prod/packages/shared-chunks/super-Cm_a_cLQ.js +0 -275
- package/dist/prod/packages/shared-chunks/transform-resolutions-DR4GLmR2.js +0 -6936
- package/dist/prod/packages/shared-chunks/{collections-GpG8lT2g.js → collections-C3Y8z_9v.js} +9 -9
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { a as createComputeRef, v as valueForRef, N as NULL_REFERENCE } from './reference-BshxG6wn.js';
|
|
2
|
+
import { s as setInternalComponentManager } from './api-zh_k31vb.js';
|
|
3
|
+
import './env-DXxsTFkM.js';
|
|
4
|
+
import { i as internalHelper } from './internal-helper-DIbr1RgC.js';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
@module @ember/helper
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
// ============ Element Component (for string tag names) ============
|
|
12
|
+
// Renders content wrapped in the specified HTML element, or just renders
|
|
13
|
+
// content without a wrapper for empty string.
|
|
14
|
+
|
|
15
|
+
const ELEMENT_CAPABILITIES = {
|
|
16
|
+
createInstance: true,
|
|
17
|
+
wrapped: true
|
|
18
|
+
};
|
|
19
|
+
class ElementComponentManager {
|
|
20
|
+
getCapabilities() {
|
|
21
|
+
return ELEMENT_CAPABILITIES;
|
|
22
|
+
}
|
|
23
|
+
getDebugName(state) {
|
|
24
|
+
return `(element "${state.tagName}")`;
|
|
25
|
+
}
|
|
26
|
+
getSelf() {
|
|
27
|
+
return NULL_REFERENCE;
|
|
28
|
+
}
|
|
29
|
+
getDestroyable() {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
didCreateElement() {}
|
|
33
|
+
create(_owner, state) {
|
|
34
|
+
// For empty string, return null so getTagName returns null (no wrapper element)
|
|
35
|
+
return state.tagName || null;
|
|
36
|
+
}
|
|
37
|
+
getTagName(state) {
|
|
38
|
+
return state;
|
|
39
|
+
}
|
|
40
|
+
didRenderLayout() {}
|
|
41
|
+
didUpdateLayout() {}
|
|
42
|
+
didCreate() {}
|
|
43
|
+
didUpdate() {}
|
|
44
|
+
}
|
|
45
|
+
const ELEMENT_COMPONENT_MANAGER = new ElementComponentManager();
|
|
46
|
+
class ElementComponentDefinition {
|
|
47
|
+
constructor(tagName) {
|
|
48
|
+
this.tagName = tagName;
|
|
49
|
+
}
|
|
50
|
+
toString() {
|
|
51
|
+
return `(element "${this.tagName}")`;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
setInternalComponentManager(ELEMENT_COMPONENT_MANAGER, ElementComponentDefinition.prototype);
|
|
55
|
+
|
|
56
|
+
// Cache component definitions per tag name to avoid creating duplicate definitions
|
|
57
|
+
const ELEMENT_DEFINITIONS = new Map();
|
|
58
|
+
function getElementDefinition(tagName) {
|
|
59
|
+
let definition = ELEMENT_DEFINITIONS.get(tagName);
|
|
60
|
+
if (definition === undefined) {
|
|
61
|
+
definition = new ElementComponentDefinition(tagName);
|
|
62
|
+
ELEMENT_DEFINITIONS.set(tagName, definition);
|
|
63
|
+
}
|
|
64
|
+
return definition;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// ============ Element Helper ============
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
The `element` helper lets you dynamically set the tag name of an element.
|
|
71
|
+
|
|
72
|
+
```handlebars
|
|
73
|
+
{{#let (element @tagName) as |Tag|}}
|
|
74
|
+
<Tag class="my-element">Hello</Tag>
|
|
75
|
+
{{/let}}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
When `@tagName` is `"h1"`, this renders `<h1 class="my-element">Hello</h1>`.
|
|
79
|
+
|
|
80
|
+
When `@tagName` is an empty string `""`, the block content is rendered without
|
|
81
|
+
a wrapping element.
|
|
82
|
+
|
|
83
|
+
Passing `null`, `undefined`, or non-string values will throw an assertion error.
|
|
84
|
+
|
|
85
|
+
Changing the tag name will tear down and recreate the element and its contents.
|
|
86
|
+
|
|
87
|
+
@method element
|
|
88
|
+
@for Ember.Templates.helpers
|
|
89
|
+
@public
|
|
90
|
+
*/
|
|
91
|
+
const element = internalHelper(({
|
|
92
|
+
positional,
|
|
93
|
+
named
|
|
94
|
+
}) => {
|
|
95
|
+
return createComputeRef(() => {
|
|
96
|
+
let tagName = valueForRef(positional[0]);
|
|
97
|
+
return getElementDefinition(tagName);
|
|
98
|
+
}, null, 'element');
|
|
99
|
+
});
|
|
100
|
+
|
|
101
|
+
export { element as e };
|
package/dist/prod/packages/shared-chunks/{element-builder-CzXb9l1W.js → element-builder-BPjq0rxK.js}
RENAMED
|
@@ -1,9 +1,113 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { e as expect, S as StackImpl } from './collections-C3Y8z_9v.js';
|
|
2
|
+
import { C as ConcreteBounds, i as isSafeString, n as normalizeStringValue, a as CursorImpl, c as clear } from './normalize-D9jDJVGg.js';
|
|
3
|
+
import { a as assert } from './assert-CUCJBR2C.js';
|
|
2
4
|
import { s as setLocalDebugType } from './debug-brand-B1TWjOCH.js';
|
|
3
|
-
import { S as StackImpl, e as expect } from './collections-GpG8lT2g.js';
|
|
4
5
|
import { registerDestructor, destroy } from '../@glimmer/destroyable/index.js';
|
|
5
|
-
import './fragment-D7nBU9ae.js';
|
|
6
6
|
import { a as castToBrowser } from './simple-cast-DCvJLSin.js';
|
|
7
|
+
import { n as normalizeProperty } from './props-fiqxqhAH.js';
|
|
8
|
+
|
|
9
|
+
const ELEMENT_NODE = 1;
|
|
10
|
+
const TEXT_NODE = 3;
|
|
11
|
+
const COMMENT_NODE = 8;
|
|
12
|
+
const NS_MATHML = 'http://www.w3.org/1998/Math/MathML';
|
|
13
|
+
const NS_SVG = 'http://www.w3.org/2000/svg';
|
|
14
|
+
const INSERT_BEFORE_BEGIN = 'beforebegin';
|
|
15
|
+
const INSERT_BEFORE_END = 'beforeend';
|
|
16
|
+
|
|
17
|
+
// http://www.w3.org/TR/html/syntax.html#html-integration-point
|
|
18
|
+
const SVG_INTEGRATION_POINTS = {
|
|
19
|
+
foreignObject: 1,
|
|
20
|
+
desc: 1,
|
|
21
|
+
title: 1
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
// http://www.w3.org/TR/html/syntax.html#adjust-svg-attributes
|
|
25
|
+
// TODO: Adjust SVG attributes
|
|
26
|
+
|
|
27
|
+
// http://www.w3.org/TR/html/syntax.html#parsing-main-inforeign
|
|
28
|
+
// TODO: Adjust SVG elements
|
|
29
|
+
|
|
30
|
+
// http://www.w3.org/TR/html/syntax.html#parsing-main-inforeign
|
|
31
|
+
const BLACKLIST_TABLE = Object.create(null);
|
|
32
|
+
class DOMOperations {
|
|
33
|
+
// Set by this.setupUselessElement() in constructor
|
|
34
|
+
|
|
35
|
+
constructor(document) {
|
|
36
|
+
this.document = document;
|
|
37
|
+
this.setupUselessElement();
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// split into separate method so that NodeDOMTreeConstruction
|
|
41
|
+
// can override it.
|
|
42
|
+
setupUselessElement() {
|
|
43
|
+
this.uselessElement = this.document.createElement('div');
|
|
44
|
+
}
|
|
45
|
+
createElement(tag, context) {
|
|
46
|
+
let isElementInSVGNamespace, isHTMLIntegrationPoint, isElementInMathMlNamespace, ns;
|
|
47
|
+
if (context) {
|
|
48
|
+
isElementInSVGNamespace = context.namespaceURI === NS_SVG || tag === 'svg';
|
|
49
|
+
isElementInMathMlNamespace = context.namespaceURI === NS_MATHML || tag === 'math';
|
|
50
|
+
isHTMLIntegrationPoint = !!SVG_INTEGRATION_POINTS[context.tagName];
|
|
51
|
+
} else {
|
|
52
|
+
isElementInSVGNamespace = tag === 'svg';
|
|
53
|
+
isElementInMathMlNamespace = tag === 'math';
|
|
54
|
+
isHTMLIntegrationPoint = false;
|
|
55
|
+
}
|
|
56
|
+
if ((isElementInMathMlNamespace || isElementInSVGNamespace) && !isHTMLIntegrationPoint) {
|
|
57
|
+
// FIXME: This does not properly handle <font> with color, face, or
|
|
58
|
+
// size attributes, which is also disallowed by the spec. We should fix
|
|
59
|
+
// this.
|
|
60
|
+
if (BLACKLIST_TABLE[tag]) {
|
|
61
|
+
throw new Error(`Cannot create a ${tag} inside an SVG context`);
|
|
62
|
+
}
|
|
63
|
+
if (isElementInMathMlNamespace) {
|
|
64
|
+
ns = NS_MATHML;
|
|
65
|
+
} else {
|
|
66
|
+
ns = NS_SVG;
|
|
67
|
+
}
|
|
68
|
+
return this.document.createElementNS(ns, tag);
|
|
69
|
+
} else {
|
|
70
|
+
return this.document.createElement(tag);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
insertBefore(parent, node, reference) {
|
|
74
|
+
parent.insertBefore(node, reference);
|
|
75
|
+
}
|
|
76
|
+
insertHTMLBefore(parent, nextSibling, html) {
|
|
77
|
+
if (html === '') {
|
|
78
|
+
const comment = this.createComment('');
|
|
79
|
+
parent.insertBefore(comment, nextSibling);
|
|
80
|
+
return new ConcreteBounds(parent, comment, comment);
|
|
81
|
+
}
|
|
82
|
+
const prev = nextSibling ? nextSibling.previousSibling : parent.lastChild;
|
|
83
|
+
let last;
|
|
84
|
+
if (nextSibling === null) {
|
|
85
|
+
parent.insertAdjacentHTML(INSERT_BEFORE_END, html);
|
|
86
|
+
last = expect(parent.lastChild);
|
|
87
|
+
} else if (nextSibling instanceof HTMLElement) {
|
|
88
|
+
nextSibling.insertAdjacentHTML('beforebegin', html);
|
|
89
|
+
last = expect(nextSibling.previousSibling);
|
|
90
|
+
} else {
|
|
91
|
+
// Non-element nodes do not support insertAdjacentHTML, so add an
|
|
92
|
+
// element and call it on that element. Then remove the element.
|
|
93
|
+
const {
|
|
94
|
+
uselessElement
|
|
95
|
+
} = this;
|
|
96
|
+
parent.insertBefore(uselessElement, nextSibling);
|
|
97
|
+
uselessElement.insertAdjacentHTML(INSERT_BEFORE_BEGIN, html);
|
|
98
|
+
last = expect(uselessElement.previousSibling);
|
|
99
|
+
parent.removeChild(uselessElement);
|
|
100
|
+
}
|
|
101
|
+
const first = expect(prev ? prev.nextSibling : parent.firstChild);
|
|
102
|
+
return new ConcreteBounds(parent, first, last);
|
|
103
|
+
}
|
|
104
|
+
createTextNode(text) {
|
|
105
|
+
return this.document.createTextNode(text);
|
|
106
|
+
}
|
|
107
|
+
createComment(data) {
|
|
108
|
+
return this.document.createComment(data);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
7
111
|
|
|
8
112
|
class TreeConstruction extends DOMOperations {
|
|
9
113
|
createElementNS(namespace, tag) {
|
|
@@ -19,90 +123,6 @@ class TreeConstruction extends DOMOperations {
|
|
|
19
123
|
}
|
|
20
124
|
const DOMTreeConstruction = TreeConstruction;
|
|
21
125
|
|
|
22
|
-
/*
|
|
23
|
-
* @method normalizeProperty
|
|
24
|
-
* @param element {HTMLElement}
|
|
25
|
-
* @param slotName {String}
|
|
26
|
-
* @returns {Object} { name, type }
|
|
27
|
-
*/
|
|
28
|
-
function normalizeProperty(element, slotName) {
|
|
29
|
-
let type, normalized;
|
|
30
|
-
if (slotName in element) {
|
|
31
|
-
normalized = slotName;
|
|
32
|
-
type = 'prop';
|
|
33
|
-
} else {
|
|
34
|
-
let lower = slotName.toLowerCase();
|
|
35
|
-
if (lower in element) {
|
|
36
|
-
type = 'prop';
|
|
37
|
-
normalized = lower;
|
|
38
|
-
} else {
|
|
39
|
-
type = 'attr';
|
|
40
|
-
normalized = slotName;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
if (type === 'prop' && (normalized.toLowerCase() === 'style' || preferAttr(element.tagName, normalized))) {
|
|
44
|
-
type = 'attr';
|
|
45
|
-
}
|
|
46
|
-
return {
|
|
47
|
-
normalized,
|
|
48
|
-
type
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// Properties that MUST be set as attributes because the DOM properties
|
|
53
|
-
// are read-only or have type mismatches with the HTML attributes.
|
|
54
|
-
//
|
|
55
|
-
// element.form is a read-only DOM property on all form-associated elements
|
|
56
|
-
// that returns the owning HTMLFormElement (or null). The HTML `form` attribute
|
|
57
|
-
// (set via setAttribute) associates the element with a form by ID.
|
|
58
|
-
// See: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/form
|
|
59
|
-
// https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement/form
|
|
60
|
-
const ATTR_OVERRIDES = {
|
|
61
|
-
INPUT: {
|
|
62
|
-
form: true,
|
|
63
|
-
// HTMLElement.autocorrect is a boolean DOM property, but the HTML attribute
|
|
64
|
-
// uses "on"/"off" strings. Setting `element.autocorrect = "off"` coerces to
|
|
65
|
-
// `true` (truthy string). Must use setAttribute for correct "on"/"off" behavior.
|
|
66
|
-
// See: https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/autocorrect
|
|
67
|
-
autocorrect: true,
|
|
68
|
-
// HTMLInputElement.list is a read-only DOM property that returns the associated
|
|
69
|
-
// HTMLDataListElement (or null). Must use setAttribute to set the datalist ID.
|
|
70
|
-
// See: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/list
|
|
71
|
-
list: true
|
|
72
|
-
},
|
|
73
|
-
SELECT: {
|
|
74
|
-
form: true
|
|
75
|
-
},
|
|
76
|
-
OPTION: {
|
|
77
|
-
form: true
|
|
78
|
-
},
|
|
79
|
-
TEXTAREA: {
|
|
80
|
-
form: true
|
|
81
|
-
},
|
|
82
|
-
LABEL: {
|
|
83
|
-
form: true
|
|
84
|
-
},
|
|
85
|
-
FIELDSET: {
|
|
86
|
-
form: true
|
|
87
|
-
},
|
|
88
|
-
LEGEND: {
|
|
89
|
-
form: true
|
|
90
|
-
},
|
|
91
|
-
OBJECT: {
|
|
92
|
-
form: true
|
|
93
|
-
},
|
|
94
|
-
OUTPUT: {
|
|
95
|
-
form: true
|
|
96
|
-
},
|
|
97
|
-
BUTTON: {
|
|
98
|
-
form: true
|
|
99
|
-
}
|
|
100
|
-
};
|
|
101
|
-
function preferAttr(tagName, propName) {
|
|
102
|
-
let tag = ATTR_OVERRIDES[tagName.toUpperCase()];
|
|
103
|
-
return !!(tag && tag[propName.toLowerCase()]);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
126
|
const badProtocols = ['javascript:', 'vbscript:'];
|
|
107
127
|
const badTags = ['A', 'BODY', 'LINK', 'IMG', 'IFRAME', 'BASE', 'FORM'];
|
|
108
128
|
const badTagsForDataURI = ['EMBED'];
|
|
@@ -765,10 +785,11 @@ class AppendingBlockList {
|
|
|
765
785
|
}
|
|
766
786
|
didAppendBounds(_bounds) {}
|
|
767
787
|
finalize(_stack) {
|
|
788
|
+
assert(this.boundList.length > 0);
|
|
768
789
|
}
|
|
769
790
|
}
|
|
770
791
|
function clientBuilder(env, cursor) {
|
|
771
792
|
return NewTreeBuilder.forInitialRender(env, cursor);
|
|
772
793
|
}
|
|
773
794
|
|
|
774
|
-
export { DOMTreeConstruction as D, NewTreeBuilder as N, RemoteBlock as R, SimpleDynamicAttribute as S, DynamicAttribute as a, ResettableBlockImpl as b, clientBuilder as c, dynamicAttribute as d,
|
|
795
|
+
export { BLACKLIST_TABLE as B, COMMENT_NODE as C, DOMTreeConstruction as D, ELEMENT_NODE as E, NewTreeBuilder as N, RemoteBlock as R, SimpleDynamicAttribute as S, TEXT_NODE as T, DynamicAttribute as a, ResettableBlockImpl as b, clientBuilder as c, dynamicAttribute as d, NS_SVG as e, DOMOperations as f };
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
The hash of environment variables used to control various configuration
|
|
3
|
+
settings. To specify your own or override default settings, add the
|
|
4
|
+
desired properties to a global hash named `EmberENV` (or `ENV` for
|
|
5
|
+
backwards compatibility with earlier versions of Ember). The `EmberENV`
|
|
6
|
+
hash must be created before loading Ember.
|
|
7
|
+
|
|
8
|
+
@class EmberENV
|
|
9
|
+
@type Object
|
|
10
|
+
@public
|
|
11
|
+
*/
|
|
12
|
+
const ENV = {
|
|
13
|
+
ENABLE_OPTIONAL_FEATURES: false,
|
|
14
|
+
/**
|
|
15
|
+
Determines whether Ember should add to `Array`
|
|
16
|
+
native object prototypes, a few extra methods in order to provide a more
|
|
17
|
+
friendly API.
|
|
18
|
+
The behavior from setting this option to `true` was deprecated in Ember 5.10.
|
|
19
|
+
@property EXTEND_PROTOTYPES
|
|
20
|
+
@type Boolean
|
|
21
|
+
@default true
|
|
22
|
+
@for EmberENV
|
|
23
|
+
@private
|
|
24
|
+
@deprecated in v5.10
|
|
25
|
+
*/
|
|
26
|
+
EXTEND_PROTOTYPES: {
|
|
27
|
+
Array: false
|
|
28
|
+
},
|
|
29
|
+
/**
|
|
30
|
+
The `LOG_STACKTRACE_ON_DEPRECATION` property, when true, tells Ember to log
|
|
31
|
+
a full stack trace during deprecation warnings.
|
|
32
|
+
@property LOG_STACKTRACE_ON_DEPRECATION
|
|
33
|
+
@type Boolean
|
|
34
|
+
@default true
|
|
35
|
+
@for EmberENV
|
|
36
|
+
@public
|
|
37
|
+
*/
|
|
38
|
+
LOG_STACKTRACE_ON_DEPRECATION: true,
|
|
39
|
+
/**
|
|
40
|
+
The `LOG_VERSION` property, when true, tells Ember to log versions of all
|
|
41
|
+
dependent libraries in use.
|
|
42
|
+
@property LOG_VERSION
|
|
43
|
+
@type Boolean
|
|
44
|
+
@default true
|
|
45
|
+
@for EmberENV
|
|
46
|
+
@public
|
|
47
|
+
*/
|
|
48
|
+
LOG_VERSION: true,
|
|
49
|
+
/**
|
|
50
|
+
The `LOG_INSPECTOR_HINT` property, when true, tells Ember to log a hint
|
|
51
|
+
suggesting the Ember Inspector browser extension when it is not detected.
|
|
52
|
+
@property LOG_INSPECTOR_HINT
|
|
53
|
+
@type Boolean
|
|
54
|
+
@default true
|
|
55
|
+
@for EmberENV
|
|
56
|
+
@public
|
|
57
|
+
*/
|
|
58
|
+
LOG_INSPECTOR_HINT: true,
|
|
59
|
+
RAISE_ON_DEPRECATION: false,
|
|
60
|
+
STRUCTURED_PROFILE: false,
|
|
61
|
+
/**
|
|
62
|
+
Whether to perform extra bookkeeping needed to make the `captureRenderTree`
|
|
63
|
+
API work.
|
|
64
|
+
This has to be set before the ember JavaScript code is evaluated. This is
|
|
65
|
+
usually done by setting `window.EmberENV = { _DEBUG_RENDER_TREE: true };`
|
|
66
|
+
before the "vendor" `<script>` tag in `index.html`.
|
|
67
|
+
Setting the flag after Ember is already loaded will not work correctly. It
|
|
68
|
+
may appear to work somewhat, but fundamentally broken.
|
|
69
|
+
This is not intended to be set directly. Ember Inspector will enable the
|
|
70
|
+
flag on behalf of the user as needed.
|
|
71
|
+
This flag is always on in development mode.
|
|
72
|
+
The flag is off by default in production mode, due to the cost associated
|
|
73
|
+
with the the bookkeeping work.
|
|
74
|
+
The expected flow is that Ember Inspector will ask the user to refresh the
|
|
75
|
+
page after enabling the feature. It could also offer a feature where the
|
|
76
|
+
user add some domains to the "always on" list. In either case, Ember
|
|
77
|
+
Inspector will inject the code on the page to set the flag if needed.
|
|
78
|
+
@property _DEBUG_RENDER_TREE
|
|
79
|
+
@for EmberENV
|
|
80
|
+
@type Boolean
|
|
81
|
+
@default false
|
|
82
|
+
@private
|
|
83
|
+
*/
|
|
84
|
+
_DEBUG_RENDER_TREE: false /* DEBUG */,
|
|
85
|
+
/**
|
|
86
|
+
Whether to force all deprecations to be enabled. This is used internally by
|
|
87
|
+
Ember to enable deprecations in tests. It is not intended to be set in
|
|
88
|
+
projects.
|
|
89
|
+
@property _ALL_DEPRECATIONS_ENABLED
|
|
90
|
+
@for EmberENV
|
|
91
|
+
@type Boolean
|
|
92
|
+
@default false
|
|
93
|
+
@private
|
|
94
|
+
*/
|
|
95
|
+
_ALL_DEPRECATIONS_ENABLED: false,
|
|
96
|
+
/**
|
|
97
|
+
Override the version of ember-source used to determine when deprecations "break".
|
|
98
|
+
This is used internally by Ember to test with deprecated features "removed".
|
|
99
|
+
This is never intended to be set by projects.
|
|
100
|
+
@property _OVERRIDE_DEPRECATION_VERSION
|
|
101
|
+
@for EmberENV
|
|
102
|
+
@type string | null
|
|
103
|
+
@default null
|
|
104
|
+
@private
|
|
105
|
+
*/
|
|
106
|
+
_OVERRIDE_DEPRECATION_VERSION: null,
|
|
107
|
+
/**
|
|
108
|
+
Whether the app defaults to using async observers.
|
|
109
|
+
This is not intended to be set directly, as the implementation may change in
|
|
110
|
+
the future. Use `@ember/optional-features` instead.
|
|
111
|
+
@property _DEFAULT_ASYNC_OBSERVERS
|
|
112
|
+
@for EmberENV
|
|
113
|
+
@type Boolean
|
|
114
|
+
@default false
|
|
115
|
+
@private
|
|
116
|
+
*/
|
|
117
|
+
_DEFAULT_ASYNC_OBSERVERS: false,
|
|
118
|
+
/**
|
|
119
|
+
Controls the maximum number of scheduled rerenders without "settling". In general,
|
|
120
|
+
applications should not need to modify this environment variable, but please
|
|
121
|
+
open an issue so that we can determine if a better default value is needed.
|
|
122
|
+
@property _RERENDER_LOOP_LIMIT
|
|
123
|
+
@for EmberENV
|
|
124
|
+
@type number
|
|
125
|
+
@default 1000
|
|
126
|
+
@private
|
|
127
|
+
*/
|
|
128
|
+
_RERENDER_LOOP_LIMIT: 1000,
|
|
129
|
+
FEATURES: {}
|
|
130
|
+
};
|
|
131
|
+
const EmberENV = globalThis.EmberENV;
|
|
132
|
+
if (typeof EmberENV === 'object' && EmberENV !== null) {
|
|
133
|
+
for (let flag in EmberENV) {
|
|
134
|
+
if (!Object.prototype.hasOwnProperty.call(EmberENV, flag) || flag === 'EXTEND_PROTOTYPES' || flag === 'EMBER_LOAD_HOOKS') continue;
|
|
135
|
+
let defaultValue = ENV[flag];
|
|
136
|
+
if (defaultValue === true) {
|
|
137
|
+
ENV[flag] = EmberENV[flag] !== false;
|
|
138
|
+
} else if (defaultValue === false) {
|
|
139
|
+
ENV[flag] = EmberENV[flag] === true;
|
|
140
|
+
} else {
|
|
141
|
+
ENV[flag] = EmberENV[flag];
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
let {
|
|
145
|
+
FEATURES
|
|
146
|
+
} = EmberENV;
|
|
147
|
+
if (typeof FEATURES === 'object' && FEATURES !== null) {
|
|
148
|
+
for (let feature in FEATURES) {
|
|
149
|
+
if (!Object.prototype.hasOwnProperty.call(FEATURES, feature)) continue;
|
|
150
|
+
ENV.FEATURES[feature] = FEATURES[feature] === true;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
function getENV() {
|
|
155
|
+
return ENV;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
export { ENV as E, getENV as g };
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { meta, peekMeta } from '../@ember/-internals/meta/lib/meta.js';
|
|
2
|
+
import { a as setListeners } from './super-BBBjgF69.js';
|
|
3
|
+
import './env-DXxsTFkM.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
@module @ember/object
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
/*
|
|
11
|
+
The event system uses a series of nested hashes to store listeners on an
|
|
12
|
+
object. When a listener is registered, or when an event arrives, these
|
|
13
|
+
hashes are consulted to determine which target and action pair to invoke.
|
|
14
|
+
|
|
15
|
+
The hashes are stored in the object's meta hash, and look like this:
|
|
16
|
+
|
|
17
|
+
// Object's meta hash
|
|
18
|
+
{
|
|
19
|
+
listeners: { // variable name: `listenerSet`
|
|
20
|
+
"foo:change": [ // variable name: `actions`
|
|
21
|
+
target, method, once
|
|
22
|
+
]
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
Add an event listener
|
|
30
|
+
|
|
31
|
+
@method addListener
|
|
32
|
+
@static
|
|
33
|
+
@for @ember/object/events
|
|
34
|
+
@param obj
|
|
35
|
+
@param {String} eventName
|
|
36
|
+
@param {Object|Function} target A target object or a function
|
|
37
|
+
@param {Function|String} method A function or the name of a function to be called on `target`
|
|
38
|
+
@param {Boolean} once A flag whether a function should only be called once
|
|
39
|
+
@public
|
|
40
|
+
*/
|
|
41
|
+
function addListener(obj, eventName, target, method, once, sync = true) {
|
|
42
|
+
if (!method && 'function' === typeof target) {
|
|
43
|
+
method = target;
|
|
44
|
+
target = null;
|
|
45
|
+
}
|
|
46
|
+
meta(obj).addToListeners(eventName, target, method, once === true, sync);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
Remove an event listener
|
|
51
|
+
|
|
52
|
+
Arguments should match those passed to `addListener`.
|
|
53
|
+
|
|
54
|
+
@method removeListener
|
|
55
|
+
@static
|
|
56
|
+
@for @ember/object/events
|
|
57
|
+
@param obj
|
|
58
|
+
@param {String} eventName
|
|
59
|
+
@param {Object|Function} target A target object or a function
|
|
60
|
+
@param {Function|String} method A function or the name of a function to be called on `target`
|
|
61
|
+
@public
|
|
62
|
+
*/
|
|
63
|
+
function removeListener(obj, eventName, targetOrFunction, functionOrName) {
|
|
64
|
+
let target, method;
|
|
65
|
+
if (typeof targetOrFunction === 'object') {
|
|
66
|
+
target = targetOrFunction;
|
|
67
|
+
method = functionOrName;
|
|
68
|
+
} else {
|
|
69
|
+
target = null;
|
|
70
|
+
method = targetOrFunction;
|
|
71
|
+
}
|
|
72
|
+
let m = meta(obj);
|
|
73
|
+
m.removeFromListeners(eventName, target, method);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
Send an event. The execution of suspended listeners
|
|
78
|
+
is skipped, and once listeners are removed. A listener without
|
|
79
|
+
a target is executed on the passed object. If an array of actions
|
|
80
|
+
is not passed, the actions stored on the passed object are invoked.
|
|
81
|
+
|
|
82
|
+
@method sendEvent
|
|
83
|
+
@static
|
|
84
|
+
@for @ember/object/events
|
|
85
|
+
@param obj
|
|
86
|
+
@param {String} eventName
|
|
87
|
+
@param {Array} params Optional parameters for each listener.
|
|
88
|
+
@return {Boolean} if the event was delivered to one or more actions
|
|
89
|
+
@public
|
|
90
|
+
*/
|
|
91
|
+
function sendEvent(obj, eventName, params, actions, _meta) {
|
|
92
|
+
if (actions === undefined) {
|
|
93
|
+
let meta = _meta === undefined ? peekMeta(obj) : _meta;
|
|
94
|
+
actions = meta !== null ? meta.matchingListeners(eventName) : undefined;
|
|
95
|
+
}
|
|
96
|
+
if (actions === undefined || actions.length === 0) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
for (let i = actions.length - 3; i >= 0; i -= 3) {
|
|
100
|
+
// looping in reverse for once listeners
|
|
101
|
+
let target = actions[i];
|
|
102
|
+
let method = actions[i + 1];
|
|
103
|
+
let once = actions[i + 2];
|
|
104
|
+
if (!method) {
|
|
105
|
+
continue;
|
|
106
|
+
}
|
|
107
|
+
if (once) {
|
|
108
|
+
removeListener(obj, eventName, target, method);
|
|
109
|
+
}
|
|
110
|
+
if (!target) {
|
|
111
|
+
target = obj;
|
|
112
|
+
}
|
|
113
|
+
let type = typeof method;
|
|
114
|
+
if (type === 'string' || type === 'symbol') {
|
|
115
|
+
method = target[method];
|
|
116
|
+
}
|
|
117
|
+
method.apply(target, params);
|
|
118
|
+
}
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
@public
|
|
124
|
+
@method hasListeners
|
|
125
|
+
@static
|
|
126
|
+
@for @ember/object/events
|
|
127
|
+
@param obj
|
|
128
|
+
@param {String} eventName
|
|
129
|
+
@return {Boolean} if `obj` has listeners for event `eventName`
|
|
130
|
+
*/
|
|
131
|
+
function hasListeners(obj, eventName) {
|
|
132
|
+
let meta = peekMeta(obj);
|
|
133
|
+
if (meta === null) {
|
|
134
|
+
return false;
|
|
135
|
+
}
|
|
136
|
+
let matched = meta.matchingListeners(eventName);
|
|
137
|
+
return matched !== undefined && matched.length > 0;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
Define a property as a function that should be executed when
|
|
142
|
+
a specified event or events are triggered.
|
|
143
|
+
|
|
144
|
+
``` javascript
|
|
145
|
+
import EmberObject from '@ember/object';
|
|
146
|
+
import { on } from '@ember/object/evented';
|
|
147
|
+
import { sendEvent } from '@ember/object/events';
|
|
148
|
+
|
|
149
|
+
let Job = EmberObject.extend({
|
|
150
|
+
logCompleted: on('completed', function() {
|
|
151
|
+
console.log('Job completed!');
|
|
152
|
+
})
|
|
153
|
+
});
|
|
154
|
+
|
|
155
|
+
let job = Job.create();
|
|
156
|
+
|
|
157
|
+
sendEvent(job, 'completed'); // Logs 'Job completed!'
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
@method on
|
|
161
|
+
@static
|
|
162
|
+
@for @ember/object/evented
|
|
163
|
+
@param {String} eventNames*
|
|
164
|
+
@param {Function} func
|
|
165
|
+
@return {Function} the listener function, passed as last argument to on(...)
|
|
166
|
+
@public
|
|
167
|
+
*/
|
|
168
|
+
function on(...args) {
|
|
169
|
+
let func = args.pop();
|
|
170
|
+
let events = args;
|
|
171
|
+
setListeners(func, events);
|
|
172
|
+
return func;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
export { addListener as a, hasListeners as h, on as o, removeListener as r, sendEvent as s };
|