ember-source 7.2.0-alpha.3 → 7.2.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/blueprints/-addon-import.js +4 -6
- package/blueprints/-utils.js +6 -9
- package/build-metadata.json +3 -3
- package/dist/dev/packages/@ember/-internals/glimmer/index.js +11 -11
- package/dist/dev/packages/@ember/-internals/metal/index.js +15 -15
- package/dist/dev/packages/@ember/-internals/routing/index.js +3 -3
- package/dist/dev/packages/@ember/-internals/runtime/index.js +1 -1
- package/dist/dev/packages/@ember/-internals/runtime/lib/ext/rsvp.js +1 -1
- package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +7 -7
- package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +1 -1
- package/dist/dev/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -3
- package/dist/dev/packages/@ember/-internals/views/lib/mixins/action_support.js +1 -1
- package/dist/dev/packages/@ember/-internals/views/lib/system/event_dispatcher.js +2 -2
- package/dist/dev/packages/@ember/-internals/views/lib/views/core_view.js +1 -1
- package/dist/dev/packages/@ember/application/index.js +5 -6
- package/dist/dev/packages/@ember/application/instance.js +3 -3
- package/dist/dev/packages/@ember/application/namespace.js +1 -1
- package/dist/dev/packages/@ember/array/index.js +10 -64
- package/dist/dev/packages/@ember/array/lib/is-array.js +71 -0
- package/dist/dev/packages/@ember/array/proxy.js +8 -8
- package/dist/dev/packages/@ember/component/helper.js +1 -1
- package/dist/dev/packages/@ember/component/index.js +18 -12
- package/dist/dev/packages/@ember/component/template-only.js +1 -1
- package/dist/dev/packages/@ember/controller/index.js +3 -3
- package/dist/dev/packages/@ember/debug/data-adapter.js +3 -3
- package/dist/dev/packages/@ember/engine/index.js +5 -5
- package/dist/dev/packages/@ember/engine/instance.js +1 -1
- package/dist/dev/packages/@ember/helper/index.js +8 -27
- package/dist/dev/packages/@ember/modifier/index.js +2 -2
- package/dist/dev/packages/@ember/modifier/on.js +1 -1
- package/dist/dev/packages/@ember/object/compat.js +2 -2
- package/dist/dev/packages/@ember/object/computed.js +2 -2
- package/dist/dev/packages/@ember/object/core.js +4 -4
- package/dist/dev/packages/@ember/object/index.js +28 -23
- package/dist/dev/packages/@ember/object/lib/computed/computed_macros.js +4 -4
- package/dist/dev/packages/@ember/object/lib/computed/reduce_computed_macros.js +2 -2
- package/dist/dev/packages/@ember/object/mixin.js +2 -2
- package/dist/dev/packages/@ember/object/observable.js +6 -6
- package/dist/dev/packages/@ember/object/observers.js +1 -1
- package/dist/dev/packages/@ember/object/promise-proxy-mixin.js +3 -3
- package/dist/dev/packages/@ember/reactive/collections.js +153 -153
- package/dist/dev/packages/@ember/renderer/index.js +1 -1
- package/dist/dev/packages/@ember/routing/-internals.js +3 -3
- package/dist/dev/packages/@ember/routing/index.js +12 -8
- package/dist/dev/packages/@ember/routing/lib/generate_controller.js +2 -3
- package/dist/dev/packages/@ember/routing/lib/routing-service.js +4 -4
- package/dist/dev/packages/@ember/routing/lib/utils.js +3 -3
- package/dist/dev/packages/@ember/routing/route.js +11 -11
- package/dist/dev/packages/@ember/routing/router-service.js +24 -17
- package/dist/dev/packages/@ember/routing/router.js +5 -5
- package/dist/dev/packages/@ember/runloop/index.js +1 -1
- package/dist/dev/packages/@ember/service/index.js +1 -1
- package/dist/dev/packages/@ember/template-compiler/lib/compile-options.js +3 -3
- package/dist/dev/packages/@ember/template-compiler/lib/template.js +1 -1
- package/dist/dev/packages/@ember/template-factory/index.js +1 -1
- package/dist/dev/packages/@ember/utils/lib/is_empty.js +1 -1
- package/dist/dev/packages/@glimmer/encoder/index.js +1 -1
- package/dist/dev/packages/@glimmer/manager/index.js +4 -4
- package/dist/dev/packages/@glimmer/node/index.js +2 -2
- package/dist/dev/packages/@glimmer/opcode-compiler/index.js +2 -2
- package/dist/dev/packages/@glimmer/program/index.js +7 -7
- package/dist/dev/packages/@glimmer/reference/index.js +3 -3
- package/dist/dev/packages/@glimmer/runtime/index.js +12 -12
- package/dist/dev/packages/@glimmer/tracking/index.js +2 -2
- package/dist/dev/packages/@glimmer/tracking/primitives/cache/index.js +1 -1
- package/dist/dev/packages/@glimmer/validator/index.js +3 -3
- package/dist/dev/packages/@glimmer/vm/index.js +1 -1
- package/dist/dev/packages/ember/version.js +1 -1
- package/dist/dev/packages/router_js/index.js +2 -2
- package/dist/dev/packages/rsvp/index.js +2281 -1
- package/dist/dev/packages/shared-chunks/{alias-ZcMQckQV.js → alias-DpqL1qx6.js} +6 -6
- package/dist/dev/packages/shared-chunks/{api-BAmlf_CN.js → api-BlZDPg1n.js} +5 -5
- package/dist/dev/packages/shared-chunks/{element-builder--iTIJyCB.js → api-C0PAtEgQ.js} +137 -118
- package/dist/dev/packages/shared-chunks/{api-BawZUDYD.js → api-DuLOZMO_.js} +3 -3
- package/dist/dev/packages/shared-chunks/{args-proxy-BNLuRFlO.js → args-proxy-CS5Brs3_.js} +2 -2
- package/dist/dev/packages/shared-chunks/{untouchable-this-B3DVwpHS.js → arguments-CDkbOqTS.js} +230 -230
- package/dist/dev/packages/shared-chunks/{array-Bh_kUjzy.js → array-CVEnNWng.js} +1 -1
- package/dist/dev/packages/shared-chunks/{cache-B7dqAS38.js → cache-DGDPVCpC.js} +1 -2
- package/dist/dev/packages/shared-chunks/{capabilities-CZkuOqqC.js → capabilities-CajW4QjE.js} +1 -1
- package/dist/dev/packages/shared-chunks/{chain-tags-D6tuFUj_.js → chain-tags-uWSImHzB.js} +3 -3
- package/dist/dev/packages/shared-chunks/{computed-CJnghmXC.js → computed-BPCtuOxQ.js} +4 -4
- package/dist/dev/packages/shared-chunks/{curly-BBzF_bI8.js → curly-Ei5G8jhk.js} +4 -4
- package/dist/dev/packages/shared-chunks/{element-DQJOvSlQ.js → element-BYLB-q7a.js} +5 -3
- package/dist/dev/packages/shared-chunks/{flags-B9qxc-pB.js → flags-BZxHQ0yn.js} +1 -1
- package/dist/dev/packages/shared-chunks/{get-D5b5QlqE.js → get-6I3sjd-I.js} +32 -35
- package/dist/{prod/packages/shared-chunks/get_properties-Nn08mLAH.js → dev/packages/shared-chunks/get_properties-Cm2sWt5f.js} +1 -1
- package/dist/dev/packages/shared-chunks/{hash-BRRFQJ99.js → hash-6NDs_5_f.js} +18 -12
- package/dist/dev/packages/shared-chunks/{helper-Do7NCZHI.js → helper-DIj85_-f.js} +21 -9
- package/dist/dev/packages/shared-chunks/{index-CwnQYqK5.js → index-B3pPx1fL.js} +111 -132
- package/dist/dev/packages/shared-chunks/{index-CyZiGiEI.js → index-DaFzpTIE.js} +4 -3
- package/dist/dev/packages/shared-chunks/{injected_property-B4T-FzZZ.js → injected_property-CbBLr5jt.js} +1 -1
- package/dist/dev/packages/shared-chunks/{internal-CAL-jHZt.js → internal-DTOXyEGM.js} +3 -3
- package/dist/dev/packages/shared-chunks/{internal-helper-Ez7zbEIa.js → internal-helper-CKrni0b_.js} +1 -1
- package/dist/dev/packages/shared-chunks/{invoke-B8M5fQQS.js → invoke-d9sqa50M.js} +3 -3
- package/dist/dev/packages/shared-chunks/{libraries-CHBwbR72.js → libraries-DwffpMGE.js} +1 -1
- package/dist/dev/packages/shared-chunks/{meta-BmRXesrk.js → meta-BqC7f9Ia.js} +1 -1
- package/dist/dev/packages/shared-chunks/{or-O0eJQ4K-.js → not-DYh6AY9Z.js} +36 -36
- package/dist/dev/packages/shared-chunks/{observers-C2DurkLG.js → observers-DMlX2nCi.js} +3 -3
- package/dist/dev/packages/shared-chunks/{on-BueSMv9L.js → on-DlF0Wy7P.js} +10 -10
- package/dist/dev/packages/shared-chunks/{program-DzAfcWFj.js → program-DlgjqLa6.js} +1 -1
- package/dist/dev/packages/shared-chunks/{program-context-CadjldRr.js → program-context-Dq8xN2HI.js} +3 -2
- package/dist/dev/packages/shared-chunks/{property_get-CIBS9umw.js → property_get-CRP7MFz_.js} +2 -2
- package/dist/dev/packages/shared-chunks/{property_set-D3PKyisF.js → property_set-qCUylPEK.js} +2 -2
- package/dist/dev/packages/shared-chunks/{reference-BoPB2LfI.js → reference-BqOLhKFy.js} +3 -3
- package/dist/dev/packages/shared-chunks/{rehydrate-builder-DCyIgnCR.js → rehydrate-builder-C6k1XhET.js} +1 -1
- package/dist/dev/packages/shared-chunks/{render-CpKaO-BO.js → render-87_sKZ_k.js} +86 -86
- package/dist/dev/packages/shared-chunks/{rsvp-CnCSY930.js → rsvp.es-DR7yS7qg.js} +150 -154
- package/dist/dev/packages/shared-chunks/{serialize-builder-DxgGRvH_.js → serialize-builder-BlxBjwO-.js} +1 -1
- package/dist/dev/packages/shared-chunks/{set_properties-BghuuGJx.js → set_properties-C4TSebH6.js} +2 -2
- package/dist/dev/packages/shared-chunks/{setup-registry-BC5VMvei.js → setup-registry-9DCmHTFF.js} +18 -18
- package/dist/dev/packages/shared-chunks/{syscall-ops-BPFtDquC.js → syscall-ops-CN7STuUn.js} +1 -1
- package/dist/dev/packages/shared-chunks/{template-only-BqOt8bDl.js → template-only-Cu639ICT.js} +2 -4
- package/dist/dev/packages/shared-chunks/{textarea-WSlUEr0y.js → textarea-C4lYkaHj.js} +11 -7
- package/dist/dev/packages/shared-chunks/{tracked-CKE4wnE6.js → tracked-DEyf0T_X.js} +4 -4
- package/dist/dev/packages/shared-chunks/{tracked-data-CGnA4ytZ.js → tracked-data-DgqqRdYO.js} +2 -2
- package/dist/dev/packages/shared-chunks/{unique-id-CgmHQiwi.js → unique-id-DQOhouG1.js} +2 -2
- package/dist/dev/packages/shared-chunks/{unrecognized-url-error-B3wUTorp.js → unrecognized-url-error-BJHjL30Q.js} +1 -1
- package/dist/prod/packages/@ember/-internals/glimmer/index.js +11 -11
- package/dist/prod/packages/@ember/-internals/metal/index.js +15 -15
- package/dist/prod/packages/@ember/-internals/routing/index.js +3 -3
- package/dist/prod/packages/@ember/-internals/runtime/index.js +1 -1
- package/dist/prod/packages/@ember/-internals/runtime/lib/ext/rsvp.js +1 -1
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +7 -7
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +1 -1
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -3
- package/dist/prod/packages/@ember/-internals/views/lib/mixins/action_support.js +1 -1
- package/dist/prod/packages/@ember/-internals/views/lib/system/event_dispatcher.js +2 -2
- package/dist/prod/packages/@ember/-internals/views/lib/views/core_view.js +1 -1
- package/dist/prod/packages/@ember/application/index.js +5 -6
- package/dist/prod/packages/@ember/application/instance.js +3 -3
- package/dist/prod/packages/@ember/application/namespace.js +1 -1
- package/dist/prod/packages/@ember/array/index.js +11 -58
- package/dist/prod/packages/@ember/array/lib/is-array.js +64 -0
- package/dist/prod/packages/@ember/array/proxy.js +8 -8
- package/dist/prod/packages/@ember/component/helper.js +1 -1
- package/dist/prod/packages/@ember/component/index.js +18 -12
- package/dist/prod/packages/@ember/component/template-only.js +1 -1
- package/dist/prod/packages/@ember/controller/index.js +3 -3
- package/dist/prod/packages/@ember/debug/data-adapter.js +3 -3
- package/dist/prod/packages/@ember/engine/index.js +5 -5
- package/dist/prod/packages/@ember/engine/instance.js +1 -1
- package/dist/prod/packages/@ember/helper/index.js +8 -27
- package/dist/prod/packages/@ember/modifier/index.js +2 -2
- package/dist/prod/packages/@ember/modifier/on.js +1 -1
- package/dist/prod/packages/@ember/object/compat.js +2 -2
- package/dist/prod/packages/@ember/object/computed.js +2 -2
- package/dist/prod/packages/@ember/object/core.js +4 -4
- package/dist/prod/packages/@ember/object/index.js +28 -23
- package/dist/prod/packages/@ember/object/lib/computed/computed_macros.js +4 -4
- package/dist/prod/packages/@ember/object/lib/computed/reduce_computed_macros.js +2 -2
- package/dist/prod/packages/@ember/object/mixin.js +2 -2
- package/dist/prod/packages/@ember/object/observable.js +6 -6
- package/dist/prod/packages/@ember/object/observers.js +1 -1
- package/dist/prod/packages/@ember/object/promise-proxy-mixin.js +3 -3
- package/dist/prod/packages/@ember/reactive/collections.js +153 -153
- package/dist/prod/packages/@ember/renderer/index.js +1 -1
- package/dist/prod/packages/@ember/routing/index.js +12 -8
- package/dist/prod/packages/@ember/routing/lib/generate_controller.js +1 -2
- package/dist/prod/packages/@ember/routing/lib/routing-service.js +4 -4
- package/dist/prod/packages/@ember/routing/lib/utils.js +3 -3
- package/dist/prod/packages/@ember/routing/route.js +11 -11
- package/dist/prod/packages/@ember/routing/router-service.js +24 -17
- package/dist/prod/packages/@ember/routing/router.js +5 -5
- package/dist/prod/packages/@ember/runloop/index.js +1 -1
- package/dist/prod/packages/@ember/service/index.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/compile-options.js +3 -3
- package/dist/prod/packages/@ember/template-compiler/lib/template.js +2 -2
- package/dist/prod/packages/@ember/template-factory/index.js +1 -1
- package/dist/prod/packages/@ember/utils/lib/is_empty.js +1 -1
- package/dist/prod/packages/@glimmer/encoder/index.js +1 -1
- package/dist/prod/packages/@glimmer/manager/index.js +4 -4
- package/dist/prod/packages/@glimmer/node/index.js +3 -3
- package/dist/prod/packages/@glimmer/opcode-compiler/index.js +2 -2
- package/dist/prod/packages/@glimmer/program/index.js +8 -8
- package/dist/prod/packages/@glimmer/reference/index.js +4 -4
- package/dist/prod/packages/@glimmer/runtime/index.js +13 -13
- package/dist/prod/packages/@glimmer/tracking/index.js +2 -2
- package/dist/prod/packages/@glimmer/tracking/primitives/cache/index.js +1 -1
- package/dist/prod/packages/@glimmer/util/index.js +2 -2
- package/dist/prod/packages/@glimmer/validator/index.js +3 -3
- package/dist/prod/packages/@glimmer/vm/index.js +1 -1
- package/dist/prod/packages/ember/version.js +1 -1
- package/dist/prod/packages/ember-template-compiler/index.js +2 -2
- package/dist/prod/packages/router_js/index.js +2 -2
- package/dist/prod/packages/rsvp/index.js +2281 -1
- package/dist/prod/packages/shared-chunks/{alias-DBW_V5vD.js → alias-Bod6qdNp.js} +6 -6
- package/dist/prod/packages/shared-chunks/{api-CM1trl_4.js → api-B_poQGXS.js} +5 -5
- package/dist/prod/packages/shared-chunks/{element-builder-CnlTPNyw.js → api-CQexacBn.js} +137 -118
- package/dist/prod/packages/shared-chunks/{api-zh_k31vb.js → api-DlJKfm_f.js} +3 -3
- package/dist/prod/packages/shared-chunks/{args-proxy-BDXbXCF9.js → args-proxy-CCoFtYLS.js} +2 -2
- package/dist/prod/packages/shared-chunks/{debug-render-tree-CF5O4-WI.js → arguments-BzAkZVBa.js} +193 -193
- package/dist/prod/packages/shared-chunks/{array-D6Couewv.js → array-BzReKMeW.js} +1 -1
- package/dist/prod/packages/shared-chunks/{cache-BIlOoPA7.js → cache-CofLhaS4.js} +1 -2
- package/dist/prod/packages/shared-chunks/{capabilities-_5e35539.js → capabilities-BuVYh-vx.js} +1 -1
- package/dist/prod/packages/shared-chunks/{chain-tags-C9rFtQ_x.js → chain-tags-B2J7DsxO.js} +3 -3
- package/dist/prod/packages/shared-chunks/{compiler-c4yUVrl_.js → compiler-lBSssiWp.js} +1 -1
- package/dist/prod/packages/shared-chunks/{computed-DjCIU_ht.js → computed-DtIStxvq.js} +4 -4
- package/dist/prod/packages/shared-chunks/{curly-ZzX43b50.js → curly-IY06zACp.js} +4 -4
- package/dist/prod/packages/shared-chunks/{element-DUOVW5Ho.js → element-DgHdPZ8u.js} +5 -3
- package/dist/prod/packages/shared-chunks/{flags-B9qxc-pB.js → flags-BZxHQ0yn.js} +1 -1
- package/dist/prod/packages/shared-chunks/{get-t0-itmA-.js → get-Dago5uGl.js} +33 -36
- package/dist/{dev/packages/shared-chunks/get_properties-CIm8IAtP.js → prod/packages/shared-chunks/get_properties-Dg3xFpiS.js} +1 -1
- package/dist/prod/packages/shared-chunks/{hash-mcs3pEFO.js → hash-gEXIsSO4.js} +24 -18
- package/dist/prod/packages/shared-chunks/{helper-DLjV2ZZW.js → helper-DkXiTBjc.js} +21 -9
- package/dist/prod/packages/shared-chunks/{index-Bj71BDDA.js → index-Bf53M8eS.js} +5 -4
- package/dist/prod/packages/shared-chunks/{index-qDFz6Mfe.js → index-CslMfEpb.js} +110 -131
- package/dist/prod/packages/shared-chunks/{injected_property--eJunJph.js → injected_property-Y-FadDej.js} +1 -1
- package/dist/prod/packages/shared-chunks/{internal-DidurjJB.js → internal-BQ7zHrqS.js} +3 -3
- package/dist/prod/packages/shared-chunks/{internal-helper-DIbr1RgC.js → internal-helper-Bz1lpDXr.js} +1 -1
- package/dist/prod/packages/shared-chunks/{invoke-Cj5zMqHz.js → invoke-DhQ5QRp2.js} +3 -3
- package/dist/prod/packages/shared-chunks/{libraries-_k-4KK5_.js → libraries-DBql0hdn.js} +1 -1
- package/dist/prod/packages/shared-chunks/{meta-B9mldqPL.js → meta-BJtIZDir.js} +1 -1
- package/dist/prod/packages/shared-chunks/{normalize-D9jDJVGg.js → normalize-C_IStty9.js} +1 -1
- package/dist/prod/packages/shared-chunks/{or-3AxY5TPj.js → not-BOIVROuv.js} +28 -28
- package/dist/prod/packages/shared-chunks/{observers-CDkeR0nI.js → observers-BmobpXAF.js} +3 -3
- package/dist/prod/packages/shared-chunks/{on-B5NVufs_.js → on-BZHAxzdq.js} +10 -10
- package/dist/prod/packages/shared-chunks/{program-B7CWdS8W.js → program-BAh__OXZ.js} +2 -2
- package/dist/prod/packages/shared-chunks/{program-context-B8HKU7wu.js → program-context-COSioH46.js} +3 -2
- package/dist/prod/packages/shared-chunks/{property_get-CAFdpRyu.js → property_get-DAKgbeJX.js} +2 -2
- package/dist/prod/packages/shared-chunks/{property_set-BunbMFtp.js → property_set-BaQJdVfS.js} +2 -2
- package/dist/prod/packages/shared-chunks/{reference-BshxG6wn.js → reference-CG0yPgLy.js} +3 -3
- package/dist/prod/packages/shared-chunks/{rehydrate-builder-DJ8k-6fg.js → rehydrate-builder-Blt1x9MP.js} +3 -3
- package/dist/prod/packages/shared-chunks/{render-DkJJmoI4.js → render-Dx7lr1hR.js} +88 -88
- package/dist/prod/packages/shared-chunks/{rsvp-CnCSY930.js → rsvp.es-DR7yS7qg.js} +150 -154
- package/dist/prod/packages/shared-chunks/{serialize-builder-R3Ozg0sC.js → serialize-builder-BvAXYHTr.js} +2 -2
- package/dist/prod/packages/shared-chunks/{set_properties-LT3RzRmJ.js → set_properties-Qxhw4qzw.js} +2 -2
- package/dist/prod/packages/shared-chunks/{setup-registry-C2KfZJWI.js → setup-registry-U-6VaNQG.js} +18 -18
- package/dist/prod/packages/shared-chunks/{syscall-ops-BPFtDquC.js → syscall-ops-CN7STuUn.js} +1 -1
- package/dist/prod/packages/shared-chunks/{template-only-BtLl0uH0.js → template-only-DKNcKM5b.js} +2 -4
- package/dist/prod/packages/shared-chunks/{textarea-CHqL0Rdh.js → textarea-DOmZ1x0E.js} +11 -7
- package/dist/prod/packages/shared-chunks/{tracked-DAVrVqJl.js → tracked-B9380JtC.js} +4 -4
- package/dist/prod/packages/shared-chunks/{tracked-data-C83f5V5S.js → tracked-data-CHq42QHb.js} +2 -2
- package/dist/prod/packages/shared-chunks/{unique-id-CfHImDRV.js → unique-id-o2pS74go.js} +2 -2
- package/dist/prod/packages/shared-chunks/{unrecognized-url-error-DDBwfzdm.js → unrecognized-url-error-EgNrnFu_.js} +1 -1
- package/docs/data.json +316 -334
- package/package.json +6 -4
- package/types/stable/@ember/-internals/glimmer/index.d.ts +165 -121
- 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.d.ts +8 -2
- package/types/stable/@ember/-internals/glimmer/lib/glimmer-tracking-docs.d.ts +12 -12
- package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +18 -6
- package/types/stable/@ember/-internals/glimmer/lib/helpers/array.d.ts +3 -1
- package/types/stable/@ember/-internals/glimmer/lib/helpers/component.d.ts +65 -121
- package/types/stable/@ember/-internals/glimmer/lib/helpers/concat.d.ts +8 -4
- package/types/stable/@ember/-internals/glimmer/lib/helpers/each-in.d.ts +16 -14
- package/types/stable/@ember/-internals/glimmer/lib/helpers/element.d.ts +2 -0
- package/types/stable/@ember/-internals/glimmer/lib/helpers/fn.d.ts +11 -7
- package/types/stable/@ember/-internals/glimmer/lib/helpers/get.d.ts +23 -29
- package/types/stable/@ember/-internals/glimmer/lib/helpers/hash.d.ts +3 -1
- package/types/stable/@ember/-internals/glimmer/lib/helpers/if-unless.d.ts +95 -49
- package/types/stable/@ember/-internals/glimmer/lib/helpers/mut.d.ts +23 -54
- package/types/stable/@ember/-internals/glimmer/lib/helpers/page-title.d.ts +6 -2
- package/types/stable/@ember/-internals/glimmer/lib/helpers/readonly.d.ts +4 -8
- package/types/stable/@ember/-internals/glimmer/lib/modifiers/on.d.ts +10 -10
- package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +1 -2
- package/types/stable/@ember/-internals/glimmer/lib/syntax/in-element.d.ts +2 -0
- package/types/stable/@ember/-internals/glimmer/lib/syntax/let.d.ts +2 -14
- package/types/stable/@ember/-internals/glimmer/lib/syntax/mount.d.ts +15 -11
- package/types/stable/@ember/-internals/glimmer/lib/syntax/outlet.d.ts +17 -10
- package/types/stable/@ember/-internals/runtime/lib/mixins/target_action_support.d.ts +1 -1
- package/types/stable/@ember/array/index.d.ts +6 -29
- package/types/stable/@ember/array/lib/is-array.d.ts +35 -0
- package/types/stable/@ember/component/template-only.d.ts +1 -3
- package/types/stable/@ember/controller/index.d.ts +1 -1
- package/types/stable/@ember/helper/index.d.ts +0 -19
- package/types/stable/@ember/object/index.d.ts +4 -3
- package/types/stable/@ember/object/observable.d.ts +4 -0
- package/types/stable/@ember/reactive/collections.d.ts +0 -6
- package/types/stable/@ember/routing/lib/generate_controller.d.ts +1 -1
- package/types/stable/@ember/routing/route.d.ts +2 -2
- package/types/stable/@ember/routing/router-service.d.ts +20 -12
- package/types/stable/@glimmer/runtime/lib/component/template-only.d.ts +0 -2
- package/types/stable/@glimmer/runtime/lib/dom/sanitized-values.d.ts +2 -2
- package/types/stable/@glimmer/runtime/lib/helpers/array.d.ts +1 -1
- package/types/stable/@glimmer/runtime/lib/helpers/concat.d.ts +8 -3
- package/types/stable/@glimmer/runtime/lib/helpers/fn.d.ts +13 -7
- package/types/stable/@glimmer/runtime/lib/helpers/get.d.ts +21 -29
- package/types/stable/@glimmer/runtime/lib/helpers/hash.d.ts +1 -1
- package/types/stable/@glimmer/syntax/lib/get-template-locals.d.ts +1 -1
- package/types/stable/@glimmer/tracking/index.d.ts +12 -12
- package/types/stable/index.d.ts +1 -0
- package/dist/prod/packages/shared-chunks/{collections-C3Y8z_9v.js → collections-GpG8lT2g.js} +9 -9
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { f as reifyPositional, g as check, e as reifyNamed } from './
|
|
3
|
-
import { j as setInternalHelperManager } from './api-
|
|
1
|
+
import { c as createComputeRef, d as isInvokableRef, u as updateRef } from './reference-CG0yPgLy.js';
|
|
2
|
+
import { f as reifyPositional, g as check, e as reifyNamed } from './arguments-BzAkZVBa.js';
|
|
3
|
+
import { j as setInternalHelperManager } from './api-DlJKfm_f.js';
|
|
4
|
+
|
|
5
|
+
/* eslint-disable @typescript-eslint/no-empty-object-type */
|
|
6
|
+
function buildUntouchableThis(source) {
|
|
7
|
+
let context = null;
|
|
8
|
+
return context;
|
|
9
|
+
}
|
|
4
10
|
|
|
5
11
|
function internalHelper(helper) {
|
|
6
12
|
return setInternalHelperManager(helper, {});
|
|
@@ -19,7 +25,7 @@ function internalHelper(helper) {
|
|
|
19
25
|
```
|
|
20
26
|
or
|
|
21
27
|
```handlebars
|
|
22
|
-
{{
|
|
28
|
+
{{yield people=(array
|
|
23
29
|
'Tom Dale'
|
|
24
30
|
'Yehuda Katz'
|
|
25
31
|
this.myOtherPerson)
|
|
@@ -46,12 +52,6 @@ const array = internalHelper(({
|
|
|
46
52
|
return createComputeRef(() => reifyPositional(positional), null, 'array');
|
|
47
53
|
});
|
|
48
54
|
|
|
49
|
-
/* eslint-disable @typescript-eslint/no-empty-object-type */
|
|
50
|
-
function buildUntouchableThis(source) {
|
|
51
|
-
let context = null;
|
|
52
|
-
return context;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
55
|
const context = buildUntouchableThis();
|
|
56
56
|
|
|
57
57
|
/**
|
|
@@ -64,13 +64,17 @@ const context = buildUntouchableThis();
|
|
|
64
64
|
to a component invoked within the loop. Here's how you could use the `fn`
|
|
65
65
|
helper to pass both the function and its arguments together:
|
|
66
66
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
67
|
+
```app/components/items-listing.gjs
|
|
68
|
+
import DisplayItem from './display-item';
|
|
69
|
+
|
|
70
|
+
<template>
|
|
71
|
+
{{#each @items as |item|}}
|
|
72
|
+
<DisplayItem @item=item @select={{fn this.handleSelected item}} />
|
|
73
|
+
{{/each}}
|
|
74
|
+
</template>
|
|
71
75
|
```
|
|
72
76
|
|
|
73
|
-
```app/components/items-list.
|
|
77
|
+
```app/components/items-list.gjs
|
|
74
78
|
import Component from '@glimmer/component';
|
|
75
79
|
import { action } from '@ember/object';
|
|
76
80
|
|
|
@@ -81,7 +85,7 @@ const context = buildUntouchableThis();
|
|
|
81
85
|
}
|
|
82
86
|
```
|
|
83
87
|
|
|
84
|
-
In this case the `
|
|
88
|
+
In this case the `DisplayItem` component will receive a normal function
|
|
85
89
|
that it can invoke. When it invokes the function, the `handleSelected`
|
|
86
90
|
function will receive the `item` and any arguments passed, thanks to the
|
|
87
91
|
`fn` helper.
|
|
@@ -98,7 +102,7 @@ const context = buildUntouchableThis();
|
|
|
98
102
|
`handleSelected` is properly bound to the `items-list`, but let's explore what
|
|
99
103
|
happens if we left out the arrow function:
|
|
100
104
|
|
|
101
|
-
```app/components/items-list.
|
|
105
|
+
```app/components/items-list.gjs
|
|
102
106
|
import Component from '@glimmer/component';
|
|
103
107
|
|
|
104
108
|
export default class ItemsList extends Component {
|
|
@@ -115,6 +119,8 @@ const context = buildUntouchableThis();
|
|
|
115
119
|
|
|
116
120
|
See also [partial application](https://en.wikipedia.org/wiki/Partial_application).
|
|
117
121
|
|
|
122
|
+
`fn` is built-in and does not require any additional imports.
|
|
123
|
+
|
|
118
124
|
@method fn
|
|
119
125
|
@public
|
|
120
126
|
*/
|
|
@@ -138,7 +144,7 @@ const fn = internalHelper(({
|
|
|
138
144
|
|
|
139
145
|
/**
|
|
140
146
|
Use the `{{hash}}` helper to create a hash to pass as an option to your
|
|
141
|
-
components. This is
|
|
147
|
+
components. This is especially useful for contextual components where you can
|
|
142
148
|
just yield a hash:
|
|
143
149
|
|
|
144
150
|
```handlebars
|
|
@@ -2,9 +2,9 @@ import { setOwner } from '../@ember/-internals/owner/index.js';
|
|
|
2
2
|
import { FrameworkObject } from '../@ember/object/-internals.js';
|
|
3
3
|
import { g as getDebugName } from './get-debug-name-BDxIL2Y1.js';
|
|
4
4
|
import { join } from '../@ember/runloop/index.js';
|
|
5
|
-
import { a as getInternalHelperManager, i as helperCapabilities } from './api-
|
|
6
|
-
import { b as setHelperManager } from './api-
|
|
7
|
-
import {
|
|
5
|
+
import { a as getInternalHelperManager, i as helperCapabilities } from './api-DlJKfm_f.js';
|
|
6
|
+
import { b as setHelperManager } from './api-B_poQGXS.js';
|
|
7
|
+
import { r as createTag, D as DIRTY_TAG, c as consumeTag } from './cache-CofLhaS4.js';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
@module @ember/component
|
|
@@ -27,20 +27,32 @@ const IS_CLASSIC_HELPER = Symbol('IS_CLASSIC_HELPER');
|
|
|
27
27
|
Ember Helpers are functions that can compute values, and are used in templates.
|
|
28
28
|
For example, this code calls a helper named `format-currency`:
|
|
29
29
|
|
|
30
|
-
```app/templates/application.
|
|
31
|
-
|
|
30
|
+
```app/templates/application.gjs
|
|
31
|
+
import Cost from '../components/cost';
|
|
32
|
+
|
|
33
|
+
<template>
|
|
34
|
+
<Cost @cents={{230}} />
|
|
35
|
+
</template>
|
|
32
36
|
```
|
|
33
37
|
|
|
34
|
-
```app/components/cost.
|
|
35
|
-
|
|
38
|
+
```app/components/cost.gjs
|
|
39
|
+
import formatCurrency from '../helpers/format-currency';
|
|
40
|
+
|
|
41
|
+
<template>
|
|
42
|
+
<div>{{formatCurrency @cents currency="$"}}</div>
|
|
43
|
+
</template>
|
|
36
44
|
```
|
|
37
45
|
|
|
38
46
|
Additionally a helper can be called as a nested helper.
|
|
39
47
|
In this example, we show the formatted currency value if the `showMoney`
|
|
40
48
|
named argument is truthy.
|
|
41
49
|
|
|
42
|
-
```
|
|
43
|
-
|
|
50
|
+
```gjs
|
|
51
|
+
import formatCurrency from '../helpers/format-currency';
|
|
52
|
+
|
|
53
|
+
<template>
|
|
54
|
+
{{if @showMoney (formatCurrency @cents currency="$")}}
|
|
55
|
+
</template>
|
|
44
56
|
```
|
|
45
57
|
|
|
46
58
|
Helpers defined using a class must provide a `compute` function. For example:
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { a as assign } from './object-utils-AijlD-JH.js';
|
|
2
2
|
import { b as EMPTY_STRING_ARRAY, E as EMPTY_ARRAY, e as enumerate, r as reverse } from './array-utils-CZQxrdD3.js';
|
|
3
|
-
import { r as VM_PRIMITIVE_OP,
|
|
3
|
+
import { r as VM_PRIMITIVE_OP, aE as encodeHandle, au as VM_CONCAT_OP, al as VM_GET_VARIABLE_OP, q as VM_CONSTANT_REFERENCE_OP, ap as VM_GET_PROPERTY_OP, as as VM_HAS_BLOCK_OP, ar as VM_SPREAD_BLOCK_OP, E as VM_COMPILE_BLOCK_OP, at as VM_HAS_BLOCK_PARAMS_OP, av as VM_IF_INLINE_OP, aw as VM_NOT_OP, ax as VM_GET_DYNAMIC_VAR_OP, ay as VM_LOG_OP, y as VM_FETCH_OP, u as VM_PRIMITIVE_REFERENCE_OP, ak as VM_HELPER_OP, v as VM_DUP_OP, aj as VM_DYNAMIC_HELPER_OP, w as VM_POP_OP, $ as VM_CAPTURE_ARGS_OP, ai as VM_CURRY_OP, aF as isSmallInt, aG as encodeImmediate, m as VM_PUSH_DYNAMIC_SCOPE_OP, z as VM_BIND_DYNAMIC_SCOPE_OP, n as VM_POP_DYNAMIC_SCOPE_OP, aq as VM_GET_BLOCK_OP, F as VM_INVOKE_YIELD_OP, l as VM_POP_SCOPE_OP, k as VM_CHILD_SCOPE_OP, am as VM_SET_VARIABLE_OP, o as VM_CONSTANT_OP, D as VM_PUSH_BLOCK_SCOPE_OP, C as VM_PUSH_SYMBOL_TABLE_OP, _ as VM_PUSH_EMPTY_ARGS_OP, Z as VM_PUSH_ARGS_OP, A as VM_ENTER_OP, I as VM_JUMP_EQ_OP, B as VM_EXIT_OP, H as VM_JUMP_UNLESS_OP, X as VM_PUSH_COMPONENT_DEFINITION_OP, x as VM_LOAD_OP, a3 as VM_BEGIN_COMPONENT_TRANSACTION_OP, a1 as VM_CREATE_COMPONENT_OP, a2 as VM_REGISTER_COMPONENT_DESTRUCTOR_OP, a8 as VM_GET_COMPONENT_SELF_OP, ao as VM_ROOT_SCOPE_OP, an as VM_SET_BLOCK_OP, ag as VM_DID_RENDER_LAYOUT_OP, ah as VM_COMMIT_COMPONENT_TRANSACTION_OP, a0 as VM_PREPARE_ARGS_OP, ac as VM_VIRTUAL_ROOT_SCOPE_OP, ad as VM_SET_NAMED_VARIABLES_OP, ae as VM_SET_BLOCKS_OP, af as VM_INVOKE_COMPONENT_LAYOUT_OP, a4 as VM_PUT_COMPONENT_OPERATIONS_OP, N as VM_OPEN_DYNAMIC_ELEMENT_OP, a7 as VM_DID_CREATE_ELEMENT_OP, Q as VM_FLUSH_ELEMENT_OP, R as VM_CLOSE_ELEMENT_OP, e as VM_RESOLVE_CURRIED_COMPONENT_OP, Y as VM_RESOLVE_DYNAMIC_COMPONENT_OP, f as VM_PUSH_DYNAMIC_COMPONENT_INSTANCE_OP, aa as VM_GET_COMPONENT_LAYOUT_OP, ab as VM_POPULATE_LAYOUT_OP, a9 as VM_GET_COMPONENT_TAG_NAME_OP, L as VM_COMMENT_OP, S as VM_MODIFIER_OP, T as VM_DYNAMIC_MODIFIER_OP, U as VM_STATIC_ATTR_OP, a6 as VM_STATIC_COMPONENT_ATTR_OP, W as VM_DYNAMIC_ATTR_OP, a5 as VM_COMPONENT_ATTR_OP, M as VM_OPEN_ELEMENT_OP, aA as VM_DEBUGGER_OP, K as VM_TEXT_OP, b as VM_ASSERT_SAME_OP, az as VM_DYNAMIC_CONTENT_TYPE_OP, O as VM_PUSH_REMOTE_ELEMENT_OP, P as VM_POP_REMOTE_ELEMENT_OP, J as VM_TO_BOOLEAN_OP, aB as VM_ENTER_LIST_OP, aD as VM_ITERATE_OP, aC as VM_EXIT_LIST_OP } from './syscall-ops-CN7STuUn.js';
|
|
4
4
|
import { b as VM_RETURN_OP, i as isMachineOp, f as VM_PUSH_FRAME_OP, e as VM_POP_FRAME_OP, d as VM_INVOKE_VIRTUAL_OP, c as VM_JUMP_OP, a as VM_RETURN_TO_OP, V as VM_INVOKE_STATIC_OP } from './vm-ops-ImHv0Wtg.js';
|
|
5
|
-
import { e as expect, u as unwrap, S as StackImpl, a as isPresentArray, d as dict } from './collections-
|
|
5
|
+
import { e as expect, u as unwrap, S as StackImpl, a as isPresentArray, d as dict } from './collections-GpG8lT2g.js';
|
|
6
6
|
import { a as assert } from './assert-Zqc4wiAV.js';
|
|
7
7
|
import { InstructionEncoderImpl } from '../@glimmer/encoder/index.js';
|
|
8
|
-
import { A as ARG_SHIFT, M as MACHINE_MASK, I as InternalComponentCapabilities } from './flags-
|
|
8
|
+
import { A as ARG_SHIFT, M as MACHINE_MASK, I as InternalComponentCapabilities } from './flags-BZxHQ0yn.js';
|
|
9
9
|
import { o as opcodes } from './opcodes-CplRyHl_.js';
|
|
10
10
|
import { a as $v0, f as $fp, $ as $s0, g as $sp, h as $s1 } from './registers-C_W2qYHJ.js';
|
|
11
11
|
import { ContentType } from '../@glimmer/vm/index.js';
|
|
12
|
-
import { h as hasCapability } from './capabilities-
|
|
12
|
+
import { h as hasCapability } from './capabilities-BuVYh-vx.js';
|
|
13
13
|
|
|
14
14
|
function isGetLikeTuple(opcode) {
|
|
15
15
|
return Array.isArray(opcode) && opcode.length === 2;
|
|
@@ -1558,6 +1558,7 @@ STATEMENTS.add(opcodes.Append, (op, [, value]) => {
|
|
|
1558
1558
|
op(VM_DYNAMIC_CONTENT_TYPE_OP);
|
|
1559
1559
|
}, when => {
|
|
1560
1560
|
when(ContentType.Component, () => {
|
|
1561
|
+
op(VM_ASSERT_SAME_OP);
|
|
1561
1562
|
op(VM_RESOLVE_CURRIED_COMPONENT_OP);
|
|
1562
1563
|
op(VM_PUSH_DYNAMIC_COMPONENT_INSTANCE_OP);
|
|
1563
1564
|
InvokeNonStaticComponent(op, {
|
|
@@ -8,46 +8,41 @@ import { assert } from '../@ember/debug/lib/assert.js';
|
|
|
8
8
|
import { schedule, _backburner, _getCurrentRunLoop } from '../@ember/runloop/index.js';
|
|
9
9
|
import { associateDestroyableChild, isDestroyed, destroy, registerDestructor, isDestroying } from '../@glimmer/destroyable/index.js';
|
|
10
10
|
import { artifacts } from '../@glimmer/program/index.js';
|
|
11
|
-
import { R as RuntimeOpImpl } from './program-
|
|
12
|
-
import { v as valueForRef, U as UNDEFINED_REFERENCE,
|
|
13
|
-
import { c as clientBuilder } from './
|
|
14
|
-
import { E as EMPTY_ARGS, c as createCapturedArgs, b as EMPTY_POSITIONAL, d as curry } from './
|
|
15
|
-
import { g as runtimeOptions, i as inTransaction, r as renderComponent$1, d as renderMain } from './render-
|
|
16
|
-
import { d as dict } from './collections-
|
|
17
|
-
import { u as unwrapTemplate, a as CurlyComponentManager, i as initialRenderInstrumentDetails, b as ComponentStateBucket, D as DIRTY_TAG, c as isCurlyManager, B as BOUNDS } from './curly-
|
|
18
|
-
import { C as CONSTANT_TAG,
|
|
19
|
-
import { a as RSVP } from './rsvp-CnCSY930.js';
|
|
20
|
-
import '../@ember/engine/instance.js';
|
|
11
|
+
import { R as RuntimeOpImpl } from './program-BAh__OXZ.js';
|
|
12
|
+
import { v as valueForRef, U as UNDEFINED_REFERENCE, c as createComputeRef, a as createConstRef, h as createInvokableRef, j as createReadOnlyRef, k as createUnboundRef, g as childRefFromParts, u as updateRef } from './reference-CG0yPgLy.js';
|
|
13
|
+
import { c as clientBuilder } from './api-CQexacBn.js';
|
|
14
|
+
import { E as EMPTY_ARGS, c as createCapturedArgs, b as EMPTY_POSITIONAL, d as curry } from './arguments-BzAkZVBa.js';
|
|
15
|
+
import { g as runtimeOptions, i as inTransaction, r as renderComponent$1, d as renderMain } from './render-Dx7lr1hR.js';
|
|
16
|
+
import { d as dict } from './collections-GpG8lT2g.js';
|
|
17
|
+
import { u as unwrapTemplate, a as CurlyComponentManager, i as initialRenderInstrumentDetails, b as ComponentStateBucket, D as DIRTY_TAG, c as isCurlyManager, B as BOUNDS } from './curly-IY06zACp.js';
|
|
18
|
+
import { C as CONSTANT_TAG, c as consumeTag, f as isTracking, D as DIRTY_TAG$1, r as createTag, a as valueForTag, k as CURRENT_TAG, v as validateTag } from './cache-CofLhaS4.js';
|
|
21
19
|
import { _instrumentStart } from '../@ember/instrumentation/index.js';
|
|
22
|
-
import { c as capabilityFlagsFrom } from './capabilities-
|
|
23
|
-
import { t as templateFactory } from './index-
|
|
20
|
+
import { c as capabilityFlagsFrom } from './capabilities-BuVYh-vx.js';
|
|
21
|
+
import { t as templateFactory } from './index-Bf53M8eS.js';
|
|
24
22
|
import { g as getFactoryFor } from './container-BYOnjnwz.js';
|
|
25
|
-
import { g as get, a as _getProp } from './property_get-
|
|
26
|
-
import { _ as _setProp, s as set } from './property_set-
|
|
23
|
+
import { g as get, a as _getProp } from './property_get-DAKgbeJX.js';
|
|
24
|
+
import { _ as _setProp, s as set } from './property_set-BaQJdVfS.js';
|
|
27
25
|
import setGlobalContext from '../@glimmer/global-context/index.js';
|
|
28
|
-
import { t as tagForObject, o as objectAt, a as tagForProperty } from './chain-tags-
|
|
26
|
+
import { t as tagForObject, o as objectAt, a as tagForProperty } from './chain-tags-B2J7DsxO.js';
|
|
29
27
|
import { isEmberArray } from '../@ember/array/-internals.js';
|
|
30
28
|
import { i as isObject } from './spec-BXl1reqK.js';
|
|
31
|
-
import { t as tagFor } from './meta-
|
|
29
|
+
import { t as tagFor } from './meta-BJtIZDir.js';
|
|
32
30
|
import { contentFor } from '../@ember/-internals/runtime/lib/mixins/-proxy.js';
|
|
33
31
|
import { i as isProxy } from './is_proxy-Bzg0d4m4.js';
|
|
34
|
-
import { i as internalHelper } from './internal-helper-
|
|
32
|
+
import { i as internalHelper } from './internal-helper-Bz1lpDXr.js';
|
|
35
33
|
import { i as isHTMLSafe } from './index-D-xTBV4B.js';
|
|
36
|
-
import
|
|
34
|
+
import isArray from '../@ember/array/lib/is-array.js';
|
|
37
35
|
import { g as getComponentTemplate } from './template-Dc_cBOoX.js';
|
|
38
|
-
import { c as hasInternalComponentManager, j as setInternalHelperManager, g as getInternalComponentManager } from './api-
|
|
39
|
-
import { h as hash, f as fn, a as array } from './hash-
|
|
40
|
-
import { g as get$1, c as concat } from './get-
|
|
41
|
-
import { o as on } from './on-
|
|
42
|
-
import { T as TEMPLATE_ONLY_COMPONENT_MANAGER, t as templateOnlyComponent } from './template-only-
|
|
43
|
-
import { i as isClassicHelper, C as CLASSIC_HELPER_MANAGER } from './helper-
|
|
36
|
+
import { c as hasInternalComponentManager, j as setInternalHelperManager, g as getInternalComponentManager } from './api-DlJKfm_f.js';
|
|
37
|
+
import { h as hash, f as fn, a as array } from './hash-gEXIsSO4.js';
|
|
38
|
+
import { g as get$1, c as concat } from './get-Dago5uGl.js';
|
|
39
|
+
import { o as on } from './on-BZHAxzdq.js';
|
|
40
|
+
import { T as TEMPLATE_ONLY_COMPONENT_MANAGER, t as templateOnlyComponent } from './template-only-DKNcKM5b.js';
|
|
41
|
+
import { i as isClassicHelper, C as CLASSIC_HELPER_MANAGER } from './helper-DkXiTBjc.js';
|
|
44
42
|
import { dasherize } from '../@ember/-internals/string/index.js';
|
|
45
|
-
import { a as uniqueId } from './unique-id-
|
|
46
|
-
import '../route-recognizer/index.js';
|
|
47
|
-
import './unrecognized-url-error-DDBwfzdm.js';
|
|
48
|
-
import '../@ember/routing/lib/routing-service.js';
|
|
43
|
+
import { a as uniqueId } from './unique-id-o2pS74go.js';
|
|
49
44
|
import { generateControllerFactory } from '../@ember/routing/lib/generate_controller.js';
|
|
50
|
-
import { E as EvaluationContextImpl } from './program-context-
|
|
45
|
+
import { E as EvaluationContextImpl } from './program-context-COSioH46.js';
|
|
51
46
|
|
|
52
47
|
function instrumentationPayload$1(def) {
|
|
53
48
|
// "main" used to be the outlet name, keeping it around for compatibility
|
|
@@ -90,13 +85,14 @@ class OutletComponentManager {
|
|
|
90
85
|
let currentState = valueForRef(currentStateRef);
|
|
91
86
|
let currentOwner = currentState?.render?.owner;
|
|
92
87
|
if (parentOwner && parentOwner !== currentOwner) {
|
|
88
|
+
let engineInstance = currentOwner;
|
|
93
89
|
let {
|
|
94
90
|
mountPoint
|
|
95
|
-
} =
|
|
91
|
+
} = engineInstance;
|
|
96
92
|
if (mountPoint) {
|
|
97
93
|
state.engine = {
|
|
98
94
|
mountPoint,
|
|
99
|
-
instance:
|
|
95
|
+
instance: engineInstance
|
|
100
96
|
};
|
|
101
97
|
}
|
|
102
98
|
}
|
|
@@ -239,7 +235,7 @@ class RootComponentDefinition {
|
|
|
239
235
|
*/
|
|
240
236
|
|
|
241
237
|
/**
|
|
242
|
-
The `{{#each}}`
|
|
238
|
+
The `{{#each}}` keyword loops over elements in a collection. It is an extension
|
|
243
239
|
of the base Handlebars `{{#each}}` helper.
|
|
244
240
|
|
|
245
241
|
The default behavior of `{{#each}}` is to yield its inner block once for every
|
|
@@ -283,6 +279,8 @@ class RootComponentDefinition {
|
|
|
283
279
|
{{/each}}
|
|
284
280
|
</ul>
|
|
285
281
|
```
|
|
282
|
+
|
|
283
|
+
`#each` is a keyword and does not need to be imported.
|
|
286
284
|
|
|
287
285
|
### Specifying Keys
|
|
288
286
|
|
|
@@ -350,11 +348,11 @@ class RootComponentDefinition {
|
|
|
350
348
|
*/
|
|
351
349
|
|
|
352
350
|
/**
|
|
353
|
-
The `{{each-in}}`
|
|
351
|
+
The `{{#each-in}}` keyword loops over properties on an object.
|
|
354
352
|
|
|
355
353
|
For example, given this component definition:
|
|
356
354
|
|
|
357
|
-
```app/components/developer-details.
|
|
355
|
+
```app/components/developer-details.gjs
|
|
358
356
|
import Component from '@glimmer/component';
|
|
359
357
|
import { tracked } from '@glimmer/tracking';
|
|
360
358
|
|
|
@@ -363,21 +361,19 @@ class RootComponentDefinition {
|
|
|
363
361
|
"name": "Shelly Sails",
|
|
364
362
|
"age": 42
|
|
365
363
|
};
|
|
364
|
+
|
|
365
|
+
<template>
|
|
366
|
+
<ul>
|
|
367
|
+
{{#each-in this.developer as |key value|}}
|
|
368
|
+
<li>{{key}}: {{value}}</li>
|
|
369
|
+
{{/each-in}}
|
|
370
|
+
</ul>
|
|
371
|
+
</template>
|
|
366
372
|
}
|
|
367
373
|
```
|
|
368
374
|
|
|
369
375
|
This template would display all properties on the `developer`
|
|
370
|
-
object in a list:
|
|
371
|
-
|
|
372
|
-
```app/components/developer-details.hbs
|
|
373
|
-
<ul>
|
|
374
|
-
{{#each-in this.developer as |key value|}}
|
|
375
|
-
<li>{{key}}: {{value}}</li>
|
|
376
|
-
{{/each-in}}
|
|
377
|
-
</ul>
|
|
378
|
-
```
|
|
379
|
-
|
|
380
|
-
Outputting their name and age:
|
|
376
|
+
object in a list, outputting their name and age:
|
|
381
377
|
|
|
382
378
|
```html
|
|
383
379
|
<ul>
|
|
@@ -385,6 +381,8 @@ class RootComponentDefinition {
|
|
|
385
381
|
<li>age: 42</li>
|
|
386
382
|
</ul>
|
|
387
383
|
```
|
|
384
|
+
|
|
385
|
+
`#each-in` is a keyword and does not need to be imported.
|
|
388
386
|
|
|
389
387
|
@method each-in
|
|
390
388
|
@for Ember.Templates.helpers
|
|
@@ -776,73 +774,42 @@ const trackArray = internalHelper(({
|
|
|
776
774
|
*/
|
|
777
775
|
|
|
778
776
|
/**
|
|
779
|
-
The `mut` helper
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
777
|
+
The `mut` helper is a shortcut for updating for args.
|
|
778
|
+
|
|
779
|
+
However, defining update functions on your backing class is preferable to using `mut`.
|
|
780
|
+
|
|
781
|
+
More directly: Don't use `mut`.
|
|
783
782
|
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
or
|
|
789
|
-
|
|
790
|
-
```handlebars
|
|
791
|
-
{{my-child childClickCount=(mut totalClicks)}}
|
|
792
|
-
```
|
|
793
|
-
|
|
794
|
-
The child `Component` can then modify the parent's value just by modifying its own
|
|
795
|
-
property:
|
|
796
|
-
|
|
797
|
-
```javascript
|
|
798
|
-
// my-child.js
|
|
799
|
-
export default class MyChild extends Component {
|
|
800
|
-
click() {
|
|
801
|
-
this.incrementProperty('childClickCount');
|
|
802
|
-
}
|
|
803
|
-
}
|
|
804
|
-
```
|
|
805
|
-
|
|
806
|
-
Note that for curly components (`{{my-component}}`) the bindings are already mutable,
|
|
807
|
-
making the `mut` unnecessary.
|
|
808
|
-
|
|
809
|
-
Additionally, the `mut` helper can be combined with the `fn` helper to
|
|
810
|
-
mutate a value. For example:
|
|
811
|
-
|
|
812
|
-
```handlebars
|
|
813
|
-
<MyChild @childClickCount={{this.totalClicks}} @click-count-change={{fn (mut totalClicks))}} />
|
|
814
|
-
```
|
|
815
|
-
|
|
816
|
-
or
|
|
783
|
+
The `mut` helper, when used with `fn`, will return a function that
|
|
784
|
+
sets the value passed to `mut` to its first argument. As an example, we can create a
|
|
785
|
+
button that increments a value passing the value directly to the `fn`:
|
|
817
786
|
|
|
818
787
|
```handlebars
|
|
819
|
-
|
|
788
|
+
<MyChild @childClickCount={{this.totalClicks}} @clickCountChange={{fn (mut this.totalClicks)}} />
|
|
820
789
|
```
|
|
821
790
|
|
|
822
|
-
The child `Component` would invoke the function with the new click
|
|
791
|
+
The child `Component` would invoke the function with the new click count:
|
|
823
792
|
|
|
824
|
-
```
|
|
825
|
-
|
|
793
|
+
```app/components/my-child.gjs
|
|
794
|
+
import Component from '@glimmer/component';
|
|
795
|
+
import { action } from '@ember/object';
|
|
796
|
+
|
|
826
797
|
export default class MyChild extends Component {
|
|
827
|
-
|
|
828
|
-
|
|
798
|
+
@action
|
|
799
|
+
update() {
|
|
800
|
+
this.args.clickCountChange(this.args.childClickCount + 1);
|
|
829
801
|
}
|
|
802
|
+
|
|
803
|
+
<template>
|
|
804
|
+
<button {{on "click" this.update}}>
|
|
805
|
+
Click me!
|
|
806
|
+
</button>
|
|
807
|
+
</template>
|
|
830
808
|
}
|
|
831
809
|
```
|
|
832
810
|
|
|
833
811
|
The `mut` helper changes the `totalClicks` value to what was provided as the `fn` argument.
|
|
834
812
|
|
|
835
|
-
The `mut` helper, when used with `fn`, will return a function that
|
|
836
|
-
sets the value passed to `mut` to its first argument. As an example, we can create a
|
|
837
|
-
button that increments a value passing the value directly to the `fn`:
|
|
838
|
-
|
|
839
|
-
```handlebars
|
|
840
|
-
{{! inc helper is not provided by Ember }}
|
|
841
|
-
<button onclick={{fn (mut count) (inc count)}}>
|
|
842
|
-
Increment count
|
|
843
|
-
</button>
|
|
844
|
-
```
|
|
845
|
-
|
|
846
813
|
@method mut
|
|
847
814
|
@param {Object} [attr] the "two-way" attribute that can be modified.
|
|
848
815
|
@for Ember.Templates.helpers
|
|
@@ -864,6 +831,10 @@ const mut = internalHelper(({
|
|
|
864
831
|
/**
|
|
865
832
|
The `readonly` helper let's you specify that a binding is one-way only,
|
|
866
833
|
instead of two-way.
|
|
834
|
+
|
|
835
|
+
This is a vestigial helper from the days of `@ember/component` and does not apply to
|
|
836
|
+
components extending from `@glimmer/component`.
|
|
837
|
+
|
|
867
838
|
When you pass a `readonly` binding from an outer context (e.g. parent component),
|
|
868
839
|
to to an inner context (e.g. child component), you are saying that changing that
|
|
869
840
|
property in the inner context does not change the value in the outer context.
|
|
@@ -876,14 +847,6 @@ const mut = internalHelper(({
|
|
|
876
847
|
}
|
|
877
848
|
```
|
|
878
849
|
|
|
879
|
-
```app/templates/components/my-parent.hbs
|
|
880
|
-
{{log totalClicks}} // -> 3
|
|
881
|
-
<MyChild @childClickCount={{readonly totalClicks}} />
|
|
882
|
-
```
|
|
883
|
-
```
|
|
884
|
-
{{my-child childClickCount=(readonly totalClicks)}}
|
|
885
|
-
```
|
|
886
|
-
|
|
887
850
|
Now, when you update `childClickCount`:
|
|
888
851
|
|
|
889
852
|
```app/components/my-child.js
|
|
@@ -1160,15 +1123,14 @@ class MountDefinition {
|
|
|
1160
1123
|
|
|
1161
1124
|
For example, the following template mounts the `ember-chat` engine:
|
|
1162
1125
|
|
|
1163
|
-
```
|
|
1164
|
-
{{! application.hbs }}
|
|
1126
|
+
```app/templates/application.gjs
|
|
1165
1127
|
{{mount "ember-chat"}}
|
|
1166
1128
|
```
|
|
1167
1129
|
|
|
1168
1130
|
Additionally, you can also pass in a `model` argument that will be
|
|
1169
1131
|
set as the engines model. This can be an existing object:
|
|
1170
1132
|
|
|
1171
|
-
```
|
|
1133
|
+
```hbs
|
|
1172
1134
|
<div>
|
|
1173
1135
|
{{mount 'admin' model=userSettings}}
|
|
1174
1136
|
</div>
|
|
@@ -1176,15 +1138,20 @@ class MountDefinition {
|
|
|
1176
1138
|
|
|
1177
1139
|
Or an inline `hash`, and you can even pass components:
|
|
1178
1140
|
|
|
1141
|
+
```gjs
|
|
1142
|
+
import SignInButton from '../components/sign-in-button';
|
|
1143
|
+
<template>
|
|
1144
|
+
<div>
|
|
1145
|
+
<h1>Application template!</h1>
|
|
1146
|
+
{{mount 'admin' model=(hash
|
|
1147
|
+
title='Secret Admin'
|
|
1148
|
+
signInButton=SignInButton
|
|
1149
|
+
)}}
|
|
1150
|
+
</div>
|
|
1151
|
+
</template>
|
|
1179
1152
|
```
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
{{mount 'admin' model=(hash
|
|
1183
|
-
title='Secret Admin'
|
|
1184
|
-
signInButton=(component 'sign-in-button')
|
|
1185
|
-
)}}
|
|
1186
|
-
</div>
|
|
1187
|
-
```
|
|
1153
|
+
|
|
1154
|
+
`mount` is built-in and does not need to be imported.
|
|
1188
1155
|
|
|
1189
1156
|
@method mount
|
|
1190
1157
|
@param {String} name Name of the engine to mount.
|
|
@@ -1316,23 +1283,30 @@ function makeRouteTemplate(owner, name, template) {
|
|
|
1316
1283
|
/**
|
|
1317
1284
|
The `{{outlet}}` helper lets you specify where a child route will render in
|
|
1318
1285
|
your template. An important use of the `{{outlet}}` helper is in your
|
|
1319
|
-
application's `application.
|
|
1320
|
-
|
|
1321
|
-
```app/templates/application.
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1286
|
+
application's `application.gjs` file:
|
|
1287
|
+
|
|
1288
|
+
```app/templates/application.gjs
|
|
1289
|
+
import MyHeader from '../components/my-header';
|
|
1290
|
+
import MyFooter from '../components/my-footer';
|
|
1291
|
+
|
|
1292
|
+
<template>
|
|
1293
|
+
<MyHeader />
|
|
1294
|
+
|
|
1295
|
+
<div class="my-dynamic-content">
|
|
1296
|
+
<!-- this content will change based on the current route, which depends on the current URL -->
|
|
1297
|
+
{{outlet}}
|
|
1298
|
+
</div>
|
|
1299
|
+
|
|
1300
|
+
<MyFooter />
|
|
1301
|
+
</template>
|
|
1330
1302
|
```
|
|
1331
1303
|
|
|
1332
1304
|
See the [routing guide](https://guides.emberjs.com/release/routing/rendering-a-template/) for more
|
|
1333
1305
|
information on how your `route` interacts with the `{{outlet}}` helper.
|
|
1334
1306
|
Note: Your content __will not render__ if there isn't an `{{outlet}}` for it.
|
|
1335
1307
|
|
|
1308
|
+
`outlet` is built-in and does not need to be imported.
|
|
1309
|
+
|
|
1336
1310
|
@method outlet
|
|
1337
1311
|
@for Ember.Templates.helpers
|
|
1338
1312
|
@public
|
|
@@ -1828,7 +1802,12 @@ let renderSettledDeferred = null;
|
|
|
1828
1802
|
*/
|
|
1829
1803
|
function renderSettled() {
|
|
1830
1804
|
if (renderSettledDeferred === null) {
|
|
1831
|
-
|
|
1805
|
+
let resolve;
|
|
1806
|
+
let promise = new Promise(r => resolve = r);
|
|
1807
|
+
renderSettledDeferred = {
|
|
1808
|
+
promise,
|
|
1809
|
+
resolve
|
|
1810
|
+
};
|
|
1832
1811
|
// if there is no current runloop, the promise created above will not have
|
|
1833
1812
|
// a chance to resolve (because its resolved in backburner's "end" event)
|
|
1834
1813
|
if (!_getCurrentRunLoop()) {
|
|
@@ -2319,4 +2298,4 @@ class Renderer extends BaseRenderer {
|
|
|
2319
2298
|
}
|
|
2320
2299
|
}
|
|
2321
2300
|
|
|
2322
|
-
export { OutletView as O, Renderer as R, _resetRenderers as _,
|
|
2301
|
+
export { OutletView as O, Renderer as R, _resetRenderers as _, renderSettled as a, outletHelper as o, renderComponent as r };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getOwner } from '../@ember/-internals/owner/index.js';
|
|
2
|
-
import { c as computed, d as defineProperty } from './computed-
|
|
2
|
+
import { c as computed, d as defineProperty } from './computed-DtIStxvq.js';
|
|
3
3
|
import { i as isElementDescriptor } from './decorator-9ikVwsjY.js';
|
|
4
4
|
|
|
5
5
|
let DEBUG_INJECTION_FUNCTIONS;
|
|
@@ -3,9 +3,9 @@ import { g as guidFor } from './guid-Cbq2sNV_.js';
|
|
|
3
3
|
import './env-DXxsTFkM.js';
|
|
4
4
|
import { assert } from '../@ember/debug/lib/assert.js';
|
|
5
5
|
import { s as setComponentTemplate } from './template-Dc_cBOoX.js';
|
|
6
|
-
import { s as setInternalComponentManager } from './api-
|
|
7
|
-
import { v as valueForRef,
|
|
8
|
-
import { u as untrack } from './cache-
|
|
6
|
+
import { s as setInternalComponentManager } from './api-DlJKfm_f.js';
|
|
7
|
+
import { v as valueForRef, a as createConstRef } from './reference-CG0yPgLy.js';
|
|
8
|
+
import { u as untrack } from './cache-CofLhaS4.js';
|
|
9
9
|
|
|
10
10
|
function NOOP() {}
|
|
11
11
|
class InternalComponent {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { associateDestroyableChild } from '../@glimmer/destroyable/index.js';
|
|
2
|
-
import { a as getInternalHelperManager, f as hasValue, h as hasDestroyable } from './api-
|
|
2
|
+
import { a as getInternalHelperManager, f as hasValue, h as hasDestroyable } from './api-DlJKfm_f.js';
|
|
3
3
|
import { getOwner } from '../@glimmer/owner/index.js';
|
|
4
|
-
import {
|
|
5
|
-
import { E as EMPTY_ARGS, a as EMPTY_NAMED, b as EMPTY_POSITIONAL } from './
|
|
4
|
+
import { e as createCache, g as getValue } from './cache-CofLhaS4.js';
|
|
5
|
+
import { E as EMPTY_ARGS, a as EMPTY_NAMED, b as EMPTY_POSITIONAL } from './arguments-BzAkZVBa.js';
|
|
6
6
|
|
|
7
7
|
function getArgs(proxy) {
|
|
8
8
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- @fixme
|