ember-source 6.12.0 → 7.0.0-alpha.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/blueprints/initializer-test/files/__root__/__testType__/__path__/__name__-test.ts +2 -2
- package/blueprints/instance-initializer-test/files/__root__/__testType__/__path__/__name__-test.ts +3 -3
- package/build-metadata.json +3 -3
- package/dist/{packages/shared-chunks/registry-XY5cfmbH.js → dev/packages/@ember/-internals/container/index.js} +28 -27
- package/dist/{packages → dev/packages}/@ember/-internals/deprecations/index.js +5 -16
- package/dist/{packages/shared-chunks/env-DEd6hPbj.js → dev/packages/@ember/-internals/environment/index.js} +31 -53
- package/dist/dev/packages/@ember/-internals/glimmer/index.js +42 -0
- package/dist/{packages → dev/packages}/@ember/-internals/meta/lib/meta.js +37 -38
- package/dist/dev/packages/@ember/-internals/metal/index.js +63 -0
- package/dist/{packages → dev/packages}/@ember/-internals/routing/index.js +7 -8
- package/dist/{packages → dev/packages}/@ember/-internals/runtime/lib/ext/rsvp.js +1 -2
- package/dist/{packages → dev/packages}/@ember/-internals/runtime/lib/mixins/-proxy.js +14 -15
- package/dist/{packages → dev/packages}/@ember/-internals/runtime/lib/mixins/action_handler.js +21 -9
- package/dist/{packages → dev/packages}/@ember/-internals/runtime/lib/mixins/registry_proxy.js +11 -2
- package/dist/{packages → dev/packages}/@ember/-internals/runtime/lib/mixins/target_action_support.js +22 -9
- package/dist/{packages → dev/packages}/@ember/-internals/string/index.js +1 -2
- package/dist/dev/packages/@ember/-internals/utils/index.js +34 -0
- package/dist/{packages → dev/packages}/@ember/-internals/views/lib/compat/fallback-view-registry.js +1 -2
- package/dist/{packages → dev/packages}/@ember/-internals/views/lib/mixins/action_support.js +16 -10
- package/dist/{packages → dev/packages}/@ember/-internals/views/lib/system/event_dispatcher.js +19 -20
- package/dist/{packages → dev/packages}/@ember/-internals/views/lib/system/utils.js +7 -23
- package/dist/{packages → dev/packages}/@ember/-internals/views/lib/views/core_view.js +6 -7
- package/dist/{packages → dev/packages}/@ember/-internals/views/lib/views/states.js +3 -4
- package/dist/{packages → dev/packages}/@ember/application/index.js +50 -121
- package/dist/{packages → dev/packages}/@ember/application/instance.js +17 -17
- package/dist/{packages → dev/packages}/@ember/application/namespace.js +27 -9
- package/dist/{packages → dev/packages}/@ember/array/index.js +34 -25
- package/dist/{packages → dev/packages}/@ember/array/proxy.js +19 -20
- package/dist/{packages → dev/packages}/@ember/canary-features/index.js +1 -1
- package/dist/dev/packages/@ember/component/helper.js +14 -0
- package/dist/{packages → dev/packages}/@ember/component/index.js +12 -12
- package/dist/{packages → dev/packages}/@ember/component/template-only.js +6 -6
- package/dist/{packages → dev/packages}/@ember/controller/index.js +7 -9
- package/dist/{packages → dev/packages}/@ember/debug/container-debug-adapter.js +6 -7
- package/dist/{packages → dev/packages}/@ember/debug/data-adapter.js +6 -7
- package/dist/{packages → dev/packages}/@ember/debug/index.js +4 -11
- package/dist/{packages → dev/packages}/@ember/debug/lib/assert.js +1 -3
- package/dist/{packages → dev/packages}/@ember/debug/lib/deprecate.js +7 -3
- package/dist/{packages → dev/packages}/@ember/debug/lib/handlers.js +1 -3
- package/dist/{packages → dev/packages}/@ember/debug/lib/warn.js +1 -2
- package/dist/{packages → dev/packages}/@ember/engine/index.js +22 -22
- package/dist/dev/packages/@ember/engine/instance.js +200 -0
- package/dist/{packages → dev/packages}/@ember/helper/index.js +12 -11
- package/dist/{packages → dev/packages}/@ember/instrumentation/index.js +3 -8
- package/dist/dev/packages/@ember/modifier/index.js +23 -0
- package/dist/{packages → dev/packages}/@ember/modifier/on.js +6 -6
- package/dist/dev/packages/@ember/object/-internals.js +49 -0
- package/dist/{packages → dev/packages}/@ember/object/compat.js +11 -12
- package/dist/{packages → dev/packages}/@ember/object/computed.js +7 -8
- package/dist/{packages → dev/packages}/@ember/object/core.js +28 -29
- package/dist/{packages → dev/packages}/@ember/object/evented.js +7 -8
- package/dist/dev/packages/@ember/object/events.js +11 -0
- package/dist/{packages → dev/packages}/@ember/object/index.js +18 -19
- package/dist/{packages → dev/packages}/@ember/object/internals.js +1 -1
- package/dist/{packages → dev/packages}/@ember/object/lib/computed/computed_macros.js +30 -27
- package/dist/{packages → dev/packages}/@ember/object/lib/computed/reduce_computed_macros.js +36 -37
- package/dist/{packages → dev/packages}/@ember/object/mixin.js +15 -23
- package/dist/dev/packages/@ember/object/observable.js +181 -0
- package/dist/dev/packages/@ember/object/observers.js +11 -0
- package/dist/{packages → dev/packages}/@ember/object/promise-proxy-mixin.js +7 -8
- package/dist/dev/packages/@ember/renderer/index.js +14 -0
- package/dist/dev/packages/@ember/routing/-internals.js +22 -0
- package/dist/{packages → dev/packages}/@ember/routing/hash-location.js +1 -1
- package/dist/{packages → dev/packages}/@ember/routing/history-location.js +9 -25
- package/dist/dev/packages/@ember/routing/index.js +14 -0
- package/dist/{packages → dev/packages}/@ember/routing/lib/dsl.js +5 -6
- package/dist/{packages → dev/packages}/@ember/routing/lib/generate_controller.js +22 -10
- package/dist/{packages → dev/packages}/@ember/routing/lib/location-utils.js +3 -16
- package/dist/{packages → dev/packages}/@ember/routing/lib/routing-service.js +19 -9
- package/dist/{packages → dev/packages}/@ember/routing/lib/utils.js +12 -13
- package/dist/{packages → dev/packages}/@ember/routing/none-location.js +2 -4
- package/dist/{packages → dev/packages}/@ember/routing/route.js +38 -39
- package/dist/{packages → dev/packages}/@ember/routing/router-service.js +13 -14
- package/dist/{packages → dev/packages}/@ember/routing/router.js +63 -71
- package/dist/{packages → dev/packages}/@ember/runloop/index.js +9 -8
- package/dist/{packages → dev/packages}/@ember/service/index.js +6 -7
- package/dist/dev/packages/@ember/template/index.js +14 -0
- package/dist/{packages → dev/packages}/@ember/template-compilation/index.js +3 -3
- package/dist/dev/packages/@ember/template-compiler/index.js +2 -0
- package/dist/{packages → dev/packages}/@ember/template-compiler/lib/compile-options.js +11 -6
- package/dist/{packages → dev/packages}/@ember/template-compiler/lib/dasherize-component-name.js +1 -2
- package/dist/dev/packages/@ember/template-compiler/lib/plugins/allowed-globals.js +56 -0
- package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/assert-against-attrs.js +19 -3
- package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/assert-against-named-outlets.js +11 -2
- package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/assert-input-helper-without-block.js +1 -2
- package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/assert-reserved-named-arguments.js +3 -4
- package/dist/dev/packages/@ember/template-compiler/lib/plugins/index.js +40 -0
- package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/transform-each-track-array.js +21 -2
- package/dist/dev/packages/@ember/template-compiler/lib/plugins/transform-in-element.js +50 -0
- package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/transform-resolutions.js +2 -3
- package/dist/dev/packages/@ember/template-compiler/lib/template.js +248 -0
- package/dist/dev/packages/@ember/template-factory/index.js +8 -0
- package/dist/dev/packages/@ember/test/index.js +18 -0
- package/dist/{packages → dev/packages}/@ember/utils/lib/compare.js +5 -6
- package/dist/{packages → dev/packages}/@ember/utils/lib/is_empty.js +6 -7
- package/dist/{packages → dev/packages}/@glimmer/destroyable/index.js +21 -16
- package/dist/{packages/shared-chunks/encoder-CT1wqYMF.js → dev/packages/@glimmer/encoder/index.js} +3 -4
- package/dist/{packages → dev/packages}/@glimmer/global-context/index.js +6 -5
- package/dist/{packages/shared-chunks/api-1B_9SjFR.js → dev/packages/@glimmer/manager/index.js} +17 -14
- package/dist/dev/packages/@glimmer/node/index.js +40 -0
- package/dist/{packages → dev/packages}/@glimmer/opcode-compiler/index.js +5 -6
- package/dist/dev/packages/@glimmer/program/index.js +12 -0
- package/dist/dev/packages/@glimmer/reference/index.js +208 -0
- package/dist/dev/packages/@glimmer/runtime/index.js +11 -0
- package/dist/dev/packages/@glimmer/tracking/index.js +137 -0
- package/dist/dev/packages/@glimmer/tracking/primitives/cache/index.js +11 -0
- package/dist/{packages → dev/packages}/@glimmer/util/index.js +2 -3
- package/dist/{packages → dev/packages}/@glimmer/validator/index.js +304 -372
- package/dist/{packages → dev/packages}/@glimmer/vm/index.js +1 -1
- package/dist/{packages → dev/packages}/ember/version.js +2 -2
- package/dist/dev/packages/ember-template-compiler/index.js +109 -0
- package/dist/{packages → dev/packages}/ember-testing/index.js +1 -3
- package/dist/dev/packages/ember-testing/lib/public-api.js +2 -0
- package/dist/dev/packages/ember-testing/lib/test/pending_requests.js +10 -0
- package/dist/dev/packages/ember-testing/lib/test.js +25 -0
- package/dist/{packages/shared-chunks/router-DSi8WnDi.js → dev/packages/router_js/index.js} +120 -58
- package/dist/{packages/shared-chunks/alias-BEMS3qgG.js → dev/packages/shared-chunks/alias-CSC0WIbj.js} +4 -5
- package/dist/{packages/shared-chunks/api-CkUl6KyJ.js → dev/packages/shared-chunks/api-BqXkkT0p.js} +14 -16
- package/dist/{packages/shared-chunks/args-proxy-B91L3LRK.js → dev/packages/shared-chunks/args-proxy-DgXMc9b5.js} +7 -8
- package/dist/{packages/shared-chunks/array-BqYCCatg.js → dev/packages/shared-chunks/array-D8PfjQHi.js} +3 -4
- package/dist/dev/packages/shared-chunks/capabilities-O_xc7Yqk.js +34 -0
- package/dist/{packages/shared-chunks/collections-B8me-ZlQ.js → dev/packages/shared-chunks/collections-D_nY_0UJ.js} +1 -2
- package/dist/{packages/@ember/template-compiler/lib/template.js → dev/packages/shared-chunks/compiler-CNj62pww.js} +22 -243
- package/dist/{packages/shared-chunks/constants-oDhF27qL.js → dev/packages/shared-chunks/constants-eoaL3OJQ.js} +9 -9
- package/dist/{packages/shared-chunks/debug-to-string-BsFOvUtQ.js → dev/packages/shared-chunks/debug-to-string-CFb7h0lY.js} +1 -3
- package/dist/{packages/shared-chunks/dynamic-CuBsUXX8.js → dev/packages/shared-chunks/dynamic-CFg3dljk.js} +108 -134
- package/dist/{packages/shared-chunks/element-builder-BuVym8EM.js → dev/packages/shared-chunks/element-builder-BOxP8emt.js} +4 -5
- package/dist/{packages/shared-chunks/flags-BsZlvEeR.js → dev/packages/shared-chunks/flags-B9qxc-pB.js} +1 -1
- package/dist/{packages/shared-chunks/capabilities-DHiXCCuB.js → dev/packages/shared-chunks/fragment-Cc5k9Oy4.js} +2 -33
- package/dist/{packages/shared-chunks/index-ByyoGpfz.js → dev/packages/shared-chunks/index-PxU6E7q8.js} +658 -214
- package/dist/{packages/shared-chunks/index-CQkjwqTv.js → dev/packages/shared-chunks/index-Q7JnrdBn.js} +20 -19
- package/dist/dev/packages/shared-chunks/invoke-DxRPE05O.js +67 -0
- package/dist/{packages/shared-chunks/is_proxy-C2q5rUMp.js → dev/packages/shared-chunks/is_proxy-B0smdQy8.js} +1 -1
- package/dist/{packages/shared-chunks/mandatory-setter-DLKyVs4Q.js → dev/packages/shared-chunks/mandatory-setter-DHZe7-kW.js} +47 -48
- package/dist/{packages/shared-chunks/name-DVtQREj6.js → dev/packages/shared-chunks/name-Z7dpqvzn.js} +1 -1
- package/dist/{packages/shared-chunks/namespace_search-ClQOZuFA.js → dev/packages/shared-chunks/namespace_search-uT8odThF.js} +3 -4
- package/dist/{packages/shared-chunks/observers-DhgQ6ba5.js → dev/packages/shared-chunks/observers-Bj9qLVau.js} +231 -87
- package/dist/{packages/shared-chunks/program-CcLlGnAU.js → dev/packages/shared-chunks/program-DfV0v8aa.js} +4 -6
- package/dist/{packages/shared-chunks/program-context-CZJnCFdo.js → dev/packages/shared-chunks/program-context-BRjCC_BA.js} +2 -2
- package/dist/{packages/shared-chunks/property_set-DrZnfGQ7.js → dev/packages/shared-chunks/property_set-DaoZXGM5.js} +11 -16
- package/dist/dev/packages/shared-chunks/public-api-C3KlJmEr.js +10 -0
- package/dist/{packages/shared-chunks/reference-B6HMX4y0.js → dev/packages/shared-chunks/reference-C3TKDRnP.js} +11 -12
- package/dist/{packages/@glimmer/runtime/index.js → dev/packages/shared-chunks/rehydrate-builder-DPImr9e9.js} +8 -16
- package/dist/{packages/shared-chunks/render-DTOhhssy.js → dev/packages/shared-chunks/render-sg8BuFaE.js} +16 -23
- package/dist/{packages/shared-chunks/serialize-builder-DEgRJgNQ.js → dev/packages/shared-chunks/serialize-builder-b_gSYCSS.js} +7 -7
- package/dist/{packages/shared-chunks/set_properties-Dag9Xz6u.js → dev/packages/shared-chunks/set_properties-kVGzZL_a.js} +2 -2
- package/dist/{packages/shared-chunks/setup-registry-Bbj8WQen.js → dev/packages/shared-chunks/setup-registry-DGdDOxrk.js} +12 -12
- package/dist/{packages/shared-chunks/simple-cast-BXTrayoV.js → dev/packages/shared-chunks/simple-cast-DCvJLSin.js} +1 -1
- package/dist/{packages/shared-chunks/template-CMHIG4cn.js → dev/packages/shared-chunks/template-kM-7TTcc.js} +3 -4
- package/dist/dev/packages/shared-chunks/to-string-C7M8LBLH.js +36 -0
- package/dist/{packages/shared-chunks/transform-resolutions-vHYYonpB.js → dev/packages/shared-chunks/transform-resolutions-fXGQKGsL.js} +331 -288
- package/dist/{packages/shared-chunks/unrecognized-url-error-BBMMZhBN.js → dev/packages/shared-chunks/unrecognized-url-error-B3wUTorp.js} +103 -39
- package/dist/prod/packages/@ember/-internals/browser-environment/index.js +2 -0
- package/dist/prod/packages/@ember/-internals/container/index.js +697 -0
- package/dist/prod/packages/@ember/-internals/deprecations/index.js +114 -0
- package/dist/prod/packages/@ember/-internals/environment/index.js +171 -0
- package/dist/prod/packages/@ember/-internals/error-handling/index.js +26 -0
- package/dist/prod/packages/@ember/-internals/glimmer/index.js +39 -0
- package/dist/prod/packages/@ember/-internals/meta/index.js +1 -0
- package/dist/prod/packages/@ember/-internals/meta/lib/meta.js +455 -0
- package/dist/prod/packages/@ember/-internals/metal/index.js +61 -0
- package/dist/prod/packages/@ember/-internals/owner/index.js +252 -0
- package/dist/prod/packages/@ember/-internals/routing/index.js +14 -0
- package/dist/prod/packages/@ember/-internals/runtime/index.js +9 -0
- package/dist/prod/packages/@ember/-internals/runtime/lib/ext/rsvp.js +51 -0
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +89 -0
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +187 -0
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/comparable.js +37 -0
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/container_proxy.js +44 -0
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/registry_proxy.js +42 -0
- package/dist/prod/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +142 -0
- package/dist/prod/packages/@ember/-internals/string/index.js +93 -0
- package/dist/prod/packages/@ember/-internals/utility-types/index.js +12 -0
- package/dist/prod/packages/@ember/-internals/utils/index.js +75 -0
- package/dist/prod/packages/@ember/-internals/views/index.js +7 -0
- package/dist/prod/packages/@ember/-internals/views/lib/compat/attrs.js +3 -0
- package/dist/prod/packages/@ember/-internals/views/lib/compat/fallback-view-registry.js +7 -0
- package/dist/prod/packages/@ember/-internals/views/lib/component_lookup.js +14 -0
- package/dist/prod/packages/@ember/-internals/views/lib/mixins/action_support.js +35 -0
- package/dist/prod/packages/@ember/-internals/views/lib/system/event_dispatcher.js +227 -0
- package/dist/prod/packages/@ember/-internals/views/lib/system/utils.js +172 -0
- package/dist/prod/packages/@ember/-internals/views/lib/views/core_view.js +87 -0
- package/dist/prod/packages/@ember/-internals/views/lib/views/states.js +83 -0
- package/dist/prod/packages/@ember/application/index.js +899 -0
- package/dist/prod/packages/@ember/application/instance.js +438 -0
- package/dist/prod/packages/@ember/application/namespace.js +68 -0
- package/dist/prod/packages/@ember/array/-internals.js +9 -0
- package/dist/prod/packages/@ember/array/index.js +591 -0
- package/dist/prod/packages/@ember/array/lib/make-array.js +42 -0
- package/dist/prod/packages/@ember/array/make.js +1 -0
- package/dist/prod/packages/@ember/array/mutable.js +1 -0
- package/dist/prod/packages/@ember/array/proxy.js +267 -0
- package/dist/prod/packages/@ember/canary-features/index.js +67 -0
- package/dist/prod/packages/@ember/component/helper.js +12 -0
- package/dist/prod/packages/@ember/component/index.js +32 -0
- package/dist/prod/packages/@ember/component/template-only.js +39 -0
- package/dist/prod/packages/@ember/controller/index.js +177 -0
- package/dist/prod/packages/@ember/debug/container-debug-adapter.js +117 -0
- package/dist/prod/packages/@ember/debug/data-adapter.js +553 -0
- package/dist/prod/packages/@ember/debug/index.js +30 -0
- package/dist/prod/packages/@ember/debug/lib/assert.js +7 -0
- package/dist/prod/packages/@ember/debug/lib/capture-render-tree.js +28 -0
- package/dist/prod/packages/@ember/debug/lib/deprecate.js +56 -0
- package/dist/prod/packages/@ember/debug/lib/handlers.js +5 -0
- package/dist/prod/packages/@ember/debug/lib/inspect.js +120 -0
- package/dist/prod/packages/@ember/debug/lib/testing.js +9 -0
- package/dist/prod/packages/@ember/debug/lib/warn.js +6 -0
- package/dist/prod/packages/@ember/deprecated-features/index.js +7 -0
- package/dist/prod/packages/@ember/destroyable/index.js +251 -0
- package/dist/prod/packages/@ember/engine/index.js +450 -0
- package/dist/{packages → prod/packages}/@ember/engine/instance.js +24 -10
- package/dist/prod/packages/@ember/engine/lib/engine-parent.js +33 -0
- package/dist/prod/packages/@ember/engine/parent.js +1 -0
- package/dist/prod/packages/@ember/enumerable/index.js +20 -0
- package/dist/prod/packages/@ember/enumerable/mutable.js +22 -0
- package/dist/prod/packages/@ember/helper/index.js +489 -0
- package/dist/prod/packages/@ember/instrumentation/index.js +242 -0
- package/dist/prod/packages/@ember/modifier/index.js +21 -0
- package/dist/prod/packages/@ember/modifier/on.js +20 -0
- package/dist/prod/packages/@ember/object/-internals.js +28 -0
- package/dist/prod/packages/@ember/object/compat.js +128 -0
- package/dist/prod/packages/@ember/object/computed.js +10 -0
- package/dist/prod/packages/@ember/object/core.js +781 -0
- package/dist/prod/packages/@ember/object/evented.js +76 -0
- package/dist/prod/packages/@ember/object/events.js +6 -0
- package/dist/prod/packages/@ember/object/index.js +205 -0
- package/dist/prod/packages/@ember/object/internals.js +8 -0
- package/dist/prod/packages/@ember/object/lib/computed/computed_macros.js +776 -0
- package/dist/prod/packages/@ember/object/lib/computed/reduce_computed_macros.js +1032 -0
- package/dist/prod/packages/@ember/object/mixin.js +560 -0
- package/dist/{packages → prod/packages}/@ember/object/observable.js +80 -15
- package/dist/prod/packages/@ember/object/observers.js +6 -0
- package/dist/prod/packages/@ember/object/promise-proxy-mixin.js +138 -0
- package/dist/prod/packages/@ember/object/proxy.js +98 -0
- package/dist/prod/packages/@ember/owner/index.js +88 -0
- package/dist/prod/packages/@ember/reactive/collections.js +1 -0
- package/dist/prod/packages/@ember/reactive/index.js +12 -0
- package/dist/prod/packages/@ember/renderer/index.js +12 -0
- package/dist/prod/packages/@ember/routing/hash-location.js +153 -0
- package/dist/prod/packages/@ember/routing/history-location.js +250 -0
- package/dist/prod/packages/@ember/routing/index.js +12 -0
- package/dist/prod/packages/@ember/routing/lib/cache.js +37 -0
- package/dist/prod/packages/@ember/routing/lib/controller_for.js +16 -0
- package/dist/prod/packages/@ember/routing/lib/dsl.js +178 -0
- package/dist/prod/packages/@ember/routing/lib/generate_controller.js +62 -0
- package/dist/prod/packages/@ember/routing/lib/location-utils.js +48 -0
- package/dist/prod/packages/@ember/routing/lib/query_params.js +9 -0
- package/dist/prod/packages/@ember/routing/lib/router_state.js +26 -0
- package/dist/prod/packages/@ember/routing/lib/routing-service.js +125 -0
- package/dist/prod/packages/@ember/routing/lib/utils.js +236 -0
- package/dist/prod/packages/@ember/routing/none-location.js +120 -0
- package/dist/prod/packages/@ember/routing/route.js +1604 -0
- package/dist/prod/packages/@ember/routing/router-service.js +640 -0
- package/dist/prod/packages/@ember/routing/router.js +1335 -0
- package/dist/prod/packages/@ember/runloop/index.js +736 -0
- package/dist/prod/packages/@ember/service/index.js +124 -0
- package/dist/prod/packages/@ember/template/index.js +12 -0
- package/dist/prod/packages/@ember/template-compilation/index.js +20 -0
- package/dist/prod/packages/@ember/template-compiler/-internal-primitives.js +1 -0
- package/dist/prod/packages/@ember/template-compiler/-internal-utils.js +1 -0
- package/dist/prod/packages/@ember/template-compiler/index.js +2 -0
- package/dist/prod/packages/@ember/template-compiler/lib/-internal/primitives.js +1 -0
- package/dist/prod/packages/@ember/template-compiler/lib/compile-options.js +103 -0
- package/dist/prod/packages/@ember/template-compiler/lib/dasherize-component-name.js +21 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/allowed-globals.js +56 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-against-attrs.js +49 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-against-named-outlets.js +34 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-input-helper-without-block.js +22 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/assert-reserved-named-arguments.js +37 -0
- package/dist/{packages → prod/packages}/@ember/template-compiler/lib/plugins/index.js +1 -1
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-action-syntax.js +65 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-each-in-into-each.js +51 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-each-track-array.js +50 -0
- package/dist/{packages → prod/packages}/@ember/template-compiler/lib/plugins/transform-in-element.js +20 -6
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings.js +37 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-resolutions.js +4 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-wrap-mount-and-outlet.js +57 -0
- package/dist/prod/packages/@ember/template-compiler/lib/plugins/utils.js +55 -0
- package/dist/prod/packages/@ember/template-compiler/lib/public-api.js +1 -0
- package/dist/prod/packages/@ember/template-compiler/lib/runtime.js +1 -0
- package/dist/prod/packages/@ember/template-compiler/lib/system/calculate-location-display.js +28 -0
- package/dist/prod/packages/@ember/template-compiler/lib/template.js +245 -0
- package/dist/prod/packages/@ember/template-factory/index.js +5 -0
- package/dist/prod/packages/@ember/test/adapter.js +2 -0
- package/dist/prod/packages/@ember/test/index.js +18 -0
- package/dist/prod/packages/@ember/utils/index.js +7 -0
- package/dist/prod/packages/@ember/utils/lib/compare.js +159 -0
- package/dist/prod/packages/@ember/utils/lib/is-equal.js +60 -0
- package/dist/prod/packages/@ember/utils/lib/is_blank.js +36 -0
- package/dist/prod/packages/@ember/utils/lib/is_empty.js +67 -0
- package/dist/prod/packages/@ember/utils/lib/is_none.js +28 -0
- package/dist/prod/packages/@ember/utils/lib/is_present.js +39 -0
- package/dist/prod/packages/@ember/utils/lib/type-of.js +110 -0
- package/dist/prod/packages/@ember/version/index.js +1 -0
- package/dist/prod/packages/@glimmer/destroyable/index.js +128 -0
- package/dist/prod/packages/@glimmer/encoder/index.js +28 -0
- package/dist/prod/packages/@glimmer/env/index.js +4 -0
- package/dist/prod/packages/@glimmer/global-context/index.js +138 -0
- package/dist/prod/packages/@glimmer/manager/index.js +293 -0
- package/dist/{packages/shared-chunks/node-dom-helper-BYL7Plyj.js → prod/packages/@glimmer/node/index.js} +10 -12
- package/dist/prod/packages/@glimmer/opcode-compiler/index.js +40 -0
- package/dist/prod/packages/@glimmer/owner/index.js +19 -0
- package/dist/prod/packages/@glimmer/program/index.js +12 -0
- package/dist/{packages/shared-chunks/iterable-BKS7az3P.js → prod/packages/@glimmer/reference/index.js} +13 -12
- package/dist/prod/packages/@glimmer/runtime/index.js +9 -0
- package/dist/prod/packages/@glimmer/tracking/index.js +115 -0
- package/dist/prod/packages/@glimmer/tracking/primitives/cache/index.js +6 -0
- package/dist/prod/packages/@glimmer/util/index.js +129 -0
- package/dist/prod/packages/@glimmer/validator/index.js +1027 -0
- package/dist/prod/packages/@glimmer/vm/index.js +15 -0
- package/dist/prod/packages/@glimmer/wire-format/index.js +102 -0
- package/dist/prod/packages/@simple-dom/document/index.js +355 -0
- package/dist/prod/packages/backburner.js/index.js +939 -0
- package/dist/prod/packages/dag-map/index.js +202 -0
- package/dist/prod/packages/ember/version.js +4 -0
- package/dist/prod/packages/ember-template-compiler/index.js +100 -0
- package/dist/prod/packages/ember-testing/index.js +6 -0
- package/dist/prod/packages/ember-testing/lib/adapters/adapter.js +49 -0
- package/dist/prod/packages/ember-testing/lib/public-api.js +2 -0
- package/dist/prod/packages/ember-testing/lib/test/adapter.js +32 -0
- package/dist/prod/packages/ember-testing/lib/test/pending_requests.js +10 -0
- package/dist/prod/packages/ember-testing/lib/test/waiters.js +128 -0
- package/dist/prod/packages/ember-testing/lib/test.js +25 -0
- package/dist/prod/packages/route-recognizer/index.js +671 -0
- package/dist/prod/packages/router_js/index.js +1527 -0
- package/dist/prod/packages/rsvp/index.js +1 -0
- package/dist/prod/packages/shared-chunks/alias-BkT-0B1G.js +81 -0
- package/dist/prod/packages/shared-chunks/api-Co-k4HVs.js +200 -0
- package/dist/prod/packages/shared-chunks/args-proxy-Dl0A0YWI.js +131 -0
- package/dist/prod/packages/shared-chunks/array-EwekEvId.js +117 -0
- package/dist/prod/packages/shared-chunks/array-utils-CZQxrdD3.js +45 -0
- package/dist/prod/packages/shared-chunks/assert-CUCJBR2C.js +19 -0
- package/dist/prod/packages/shared-chunks/cache-qDyqAcpg.js +35 -0
- package/dist/prod/packages/shared-chunks/capabilities-DGmQ_mz4.js +26 -0
- package/dist/prod/packages/shared-chunks/chunk-3SQBS3Y5-Cj4eryg1.js +121 -0
- package/dist/prod/packages/shared-chunks/collections-GpG8lT2g.js +75 -0
- package/dist/prod/packages/shared-chunks/compiler-Ddfo5StE.js +6806 -0
- package/dist/prod/packages/shared-chunks/computed_cache-DmYKevAP.js +12 -0
- package/dist/prod/packages/shared-chunks/constants-b-2IVErl.js +210 -0
- package/dist/prod/packages/shared-chunks/debug-brand-B1TWjOCH.js +12 -0
- package/dist/prod/packages/shared-chunks/decorator-BdDDBUd2.js +123 -0
- package/dist/prod/packages/shared-chunks/dictionary-gc5gpyOG.js +13 -0
- package/dist/prod/packages/shared-chunks/element-builder-CiLTrXD6.js +776 -0
- package/dist/prod/packages/shared-chunks/flags-B9qxc-pB.js +24 -0
- package/dist/prod/packages/shared-chunks/fragment-EpVz5Xuc.js +910 -0
- package/dist/prod/packages/shared-chunks/get-debug-name-BDxIL2Y1.js +3 -0
- package/dist/prod/packages/shared-chunks/has-dom-DdQORPzI.js +4 -0
- package/dist/prod/packages/shared-chunks/index-CSVCFS_p.js +1904 -0
- package/dist/prod/packages/shared-chunks/index-Cc8WmrB-.js +21 -0
- package/dist/prod/packages/shared-chunks/index-DZLHQAlb.js +5842 -0
- package/dist/prod/packages/shared-chunks/injected_property-DL3vQoFA.js +58 -0
- package/dist/prod/packages/shared-chunks/invoke-DxL00a1D.js +53 -0
- package/dist/prod/packages/shared-chunks/is_proxy-Cr1qlMv_.js +16 -0
- package/dist/prod/packages/shared-chunks/lookup-descriptor-CwcVgaLv.js +13 -0
- package/dist/prod/packages/shared-chunks/name-C68GLLO3.js +11 -0
- package/dist/prod/packages/shared-chunks/namespace_search-Aog9nySA.js +1070 -0
- package/dist/prod/packages/shared-chunks/object-utils-AijlD-JH.js +12 -0
- package/dist/prod/packages/shared-chunks/observers-R1ZklwWy.js +714 -0
- package/dist/prod/packages/shared-chunks/on-CrTl7JQU.js +3329 -0
- package/dist/prod/packages/shared-chunks/program-B7SJZ5NF.js +176 -0
- package/dist/prod/packages/shared-chunks/program-context-C-JdYXRA.js +146 -0
- package/dist/prod/packages/shared-chunks/property_set-O080KTKZ.js +99 -0
- package/dist/prod/packages/shared-chunks/public-api-C3KlJmEr.js +10 -0
- package/dist/prod/packages/shared-chunks/reference-BNqcwZWH.js +151 -0
- package/dist/prod/packages/shared-chunks/registers-ylirb0dq.js +35 -0
- package/dist/prod/packages/shared-chunks/rehydrate-builder-CSn1aIO1.js +459 -0
- package/dist/prod/packages/shared-chunks/render-C1ZnScKH.js +1464 -0
- package/dist/prod/packages/shared-chunks/rsvp-CnCSY930.js +2306 -0
- package/dist/prod/packages/shared-chunks/serialize-builder-CVQ3q8rJ.js +124 -0
- package/dist/prod/packages/shared-chunks/set_properties-CjsDTRey.js +101 -0
- package/dist/prod/packages/shared-chunks/setup-registry-CMNYh2jY.js +53 -0
- package/dist/prod/packages/shared-chunks/simple-cast-DCvJLSin.js +33 -0
- package/dist/prod/packages/shared-chunks/super-Cm_a_cLQ.js +275 -0
- package/dist/prod/packages/shared-chunks/template-Dc_cBOoX.js +19 -0
- package/dist/prod/packages/shared-chunks/tracked-ChVNBE2f.js +131 -0
- package/dist/prod/packages/shared-chunks/transform-resolutions-C7wq_Q_c.js +6939 -0
- package/dist/prod/packages/shared-chunks/unrecognized-url-error-DDBwfzdm.js +537 -0
- package/docs/data.json +3009 -2358
- package/lib/index.js +157 -279
- package/package.json +30 -58
- package/types/stable/@ember/-internals/deprecations/index.d.ts +0 -6
- package/types/stable/@ember/-internals/environment/index.d.ts +0 -1
- package/types/stable/@ember/-internals/environment/lib/env.d.ts +0 -3
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/curly.d.ts +3 -6
- package/types/stable/@ember/-internals/glimmer/lib/component-managers/root.d.ts +1 -2
- package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +22 -29
- package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +2 -2
- package/types/stable/@ember/-internals/glimmer/lib/resolver.d.ts +0 -2
- package/types/stable/@ember/-internals/glimmer/lib/utils/bindings.d.ts +0 -1
- package/types/stable/@ember/-internals/meta/lib/meta.d.ts +1 -1
- package/types/stable/@ember/-internals/metal/lib/alias.d.ts +0 -11
- package/types/stable/@ember/-internals/metal/lib/decorator.d.ts +0 -1
- package/types/stable/@ember/-internals/metal/lib/each_proxy_events.d.ts +0 -1
- package/types/stable/@ember/-internals/metal/lib/observer.d.ts +0 -2
- package/types/stable/@ember/-internals/metal/lib/property_get.d.ts +4 -10
- package/types/stable/@ember/-internals/utils/index.d.ts +0 -1
- package/types/stable/@ember/-internals/views/lib/system/utils.d.ts +3 -15
- package/types/stable/@ember/application/index.d.ts +2 -63
- package/types/stable/@ember/routing/history-location.d.ts +0 -1
- package/types/stable/@ember/routing/lib/location-utils.d.ts +1 -2
- package/types/stable/@ember/routing/none-location.d.ts +1 -2
- package/types/stable/@ember/template-compiler/index.d.ts +1 -0
- package/types/stable/@ember/template-compiler/lib/plugins/allowed-globals.d.ts +26 -0
- package/types/stable/@ember/test/index.d.ts +0 -3
- package/types/stable/@glimmer/interfaces/lib/compile/wire-format/api.d.ts +1 -1
- package/types/stable/@glimmer/interfaces/lib/template.d.ts +1 -1
- package/types/stable/@glimmer/program/lib/program.d.ts +0 -1
- package/types/stable/@glimmer/validator/lib/collections/map.d.ts +1 -1
- package/types/stable/@handlebars/parser/types/ast.d.ts +148 -0
- package/types/stable/@handlebars/parser/types/index.d.ts +13 -0
- package/types/stable/ember-template-compiler/index.d.ts +0 -2
- package/types/stable/ember-template-compiler/lib/public-api.d.ts +0 -1
- package/types/stable/ember-testing/lib/public-api.d.ts +0 -6
- package/types/stable/ember-testing/lib/test/pending_requests.d.ts +0 -3
- package/types/stable/ember-testing/lib/test.d.ts +0 -23
- package/types/stable/index.d.ts +15 -32
- package/types/stable/router_js/index.d.ts +7 -0
- package/types/stable/router_js/lib/core.d.ts +9 -0
- package/types/stable/router_js/lib/route-info.d.ts +107 -0
- package/types/stable/router_js/lib/router.d.ts +245 -0
- package/types/stable/router_js/lib/transition-aborted-error.d.ts +15 -0
- package/types/stable/router_js/lib/transition-intent/named-transition-intent.d.ts +23 -0
- package/types/stable/router_js/lib/transition-intent/url-transition-intent.d.ts +12 -0
- package/types/stable/router_js/lib/transition-intent.d.ts +13 -0
- package/types/stable/router_js/lib/transition-state.d.ts +25 -0
- package/types/stable/router_js/lib/transition.d.ts +241 -0
- package/types/stable/router_js/lib/unrecognized-url-error.d.ts +11 -0
- package/types/stable/router_js/lib/utils.d.ts +41 -0
- package/dist/ember-template-compiler.js +0 -20631
- package/dist/ember-template-compiler.js.map +0 -1
- package/dist/ember-testing.js +0 -1351
- package/dist/ember-testing.js.map +0 -1
- package/dist/ember.debug.js +0 -52306
- package/dist/ember.debug.js.map +0 -1
- package/dist/ember.prod.js +0 -49369
- package/dist/ember.prod.js.map +0 -1
- package/dist/packages/@ember/-internals/container/index.js +0 -1
- package/dist/packages/@ember/-internals/environment/index.js +0 -1
- package/dist/packages/@ember/-internals/glimmer/index.js +0 -18
- package/dist/packages/@ember/-internals/metal/index.js +0 -51
- package/dist/packages/@ember/-internals/utils/index.js +0 -7
- package/dist/packages/@ember/application/lib/lazy_load.js +0 -68
- package/dist/packages/@ember/component/helper.js +0 -14
- package/dist/packages/@ember/modifier/index.js +0 -23
- package/dist/packages/@ember/object/-internals.js +0 -35
- package/dist/packages/@ember/object/events.js +0 -12
- package/dist/packages/@ember/object/observers.js +0 -12
- package/dist/packages/@ember/renderer/index.js +0 -14
- package/dist/packages/@ember/routing/index.js +0 -14
- package/dist/packages/@ember/template/index.js +0 -14
- package/dist/packages/@ember/template-factory/index.js +0 -8
- package/dist/packages/@ember/test/index.js +0 -27
- package/dist/packages/@glimmer/encoder/index.js +0 -1
- package/dist/packages/@glimmer/manager/index.js +0 -5
- package/dist/packages/@glimmer/node/index.js +0 -2
- package/dist/packages/@glimmer/program/index.js +0 -3
- package/dist/packages/@glimmer/reference/index.js +0 -2
- package/dist/packages/@glimmer/tracking/index.js +0 -48
- package/dist/packages/@glimmer/tracking/primitives/cache/index.js +0 -12
- package/dist/packages/ember/barrel.js +0 -511
- package/dist/packages/ember/index.js +0 -20
- package/dist/packages/ember-template-compiler/index.js +0 -17135
- package/dist/packages/ember-testing/lib/adapters/qunit.js +0 -53
- package/dist/packages/ember-testing/lib/ext/application.js +0 -174
- package/dist/packages/ember-testing/lib/ext/rsvp.js +0 -17
- package/dist/packages/ember-testing/lib/helpers/and_then.js +0 -11
- package/dist/packages/ember-testing/lib/helpers/current_path.js +0 -32
- package/dist/packages/ember-testing/lib/helpers/current_route_name.js +0 -32
- package/dist/packages/ember-testing/lib/helpers/current_url.js +0 -29
- package/dist/packages/ember-testing/lib/helpers/pause_test.js +0 -76
- package/dist/packages/ember-testing/lib/helpers/visit.js +0 -51
- package/dist/packages/ember-testing/lib/helpers/wait.js +0 -55
- package/dist/packages/ember-testing/lib/helpers.js +0 -17
- package/dist/packages/ember-testing/lib/initializers.js +0 -56
- package/dist/packages/ember-testing/lib/public-api.js +0 -8
- package/dist/packages/ember-testing/lib/setup_for_testing.js +0 -31
- package/dist/packages/ember-testing/lib/test/helpers.js +0 -133
- package/dist/packages/ember-testing/lib/test/on_inject_helpers.js +0 -39
- package/dist/packages/ember-testing/lib/test/pending_requests.js +0 -22
- package/dist/packages/ember-testing/lib/test/promise.js +0 -83
- package/dist/packages/ember-testing/lib/test/run.js +0 -11
- package/dist/packages/ember-testing/lib/test.js +0 -68
- package/dist/packages/router_js/index.js +0 -2
- package/dist/packages/shared-chunks/helpers-C1rIkuSd.js +0 -11
- package/dist/packages/shared-chunks/invoke-BjRgvK2V.js +0 -27
- package/dist/packages/shared-chunks/public-api-BQsJemZG.js +0 -20
- package/dist/packages/shared-chunks/template_registry-DigcUg9m.js +0 -24
- package/dist/packages/shared-chunks/to-string-CqD7_vQ4.js +0 -60
- package/types/stable/@ember/-internals/environment/lib/global.d.ts +0 -4
- package/types/stable/@ember/-internals/glimmer/lib/modifiers/internal.d.ts +0 -34
- package/types/stable/@ember/-internals/glimmer/lib/syntax/utils.d.ts +0 -5
- package/types/stable/@ember/-internals/glimmer/lib/templates/empty.d.ts +0 -4
- package/types/stable/@ember/-internals/glimmer/lib/utils/debug-render-message.d.ts +0 -4
- package/types/stable/@ember/-internals/metal/lib/dependent_keys.d.ts +0 -3
- package/types/stable/@ember/-internals/utils/lib/symbol.d.ts +0 -5
- package/types/stable/@ember/application/lib/lazy_load.d.ts +0 -38
- package/types/stable/@ember/template-compiler/lib/public-types.d.ts +0 -3
- package/types/stable/ember/barrel.d.ts +0 -358
- package/types/stable/ember/index.d.ts +0 -358
- package/types/stable/ember-template-compiler/lib/system/bootstrap.d.ts +0 -26
- package/types/stable/ember-template-compiler/lib/system/initializer.d.ts +0 -3
- package/types/stable/ember-testing/lib/adapters/qunit.d.ts +0 -22
- package/types/stable/ember-testing/lib/ext/application.d.ts +0 -12
- package/types/stable/ember-testing/lib/ext/rsvp.d.ts +0 -4
- package/types/stable/ember-testing/lib/helpers/and_then.d.ts +0 -4
- package/types/stable/ember-testing/lib/helpers/current_path.d.ts +0 -22
- package/types/stable/ember-testing/lib/helpers/current_route_name.d.ts +0 -21
- package/types/stable/ember-testing/lib/helpers/current_url.d.ts +0 -22
- package/types/stable/ember-testing/lib/helpers/pause_test.d.ts +0 -52
- package/types/stable/ember-testing/lib/helpers/visit.d.ts +0 -22
- package/types/stable/ember-testing/lib/helpers/wait.d.ts +0 -34
- package/types/stable/ember-testing/lib/helpers.d.ts +0 -3
- package/types/stable/ember-testing/lib/initializers.d.ts +0 -3
- package/types/stable/ember-testing/lib/setup_for_testing.d.ts +0 -15
- package/types/stable/ember-testing/lib/test/helpers.d.ts +0 -116
- package/types/stable/ember-testing/lib/test/on_inject_helpers.d.ts +0 -33
- package/types/stable/ember-testing/lib/test/promise.d.ts +0 -37
- package/types/stable/ember-testing/lib/test/run.d.ts +0 -3
- package/types/stable/loader/lib/index.d.ts +0 -4
- package/types/stable/require.d.ts +0 -4
- /package/dist/{packages → dev/packages}/@ember/-internals/browser-environment/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/error-handling/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/meta/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/owner/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/runtime/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/runtime/lib/mixins/comparable.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/runtime/lib/mixins/container_proxy.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/utility-types/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/views/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/views/lib/compat/attrs.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/-internals/views/lib/component_lookup.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/array/-internals.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/array/lib/make-array.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/array/make.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/array/mutable.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/debug/lib/capture-render-tree.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/debug/lib/inspect.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/debug/lib/testing.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/deprecated-features/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/destroyable/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/engine/lib/engine-parent.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/engine/parent.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/enumerable/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/enumerable/mutable.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/object/proxy.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/owner/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/reactive/collections.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/reactive/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/routing/lib/cache.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/routing/lib/controller_for.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/routing/lib/query_params.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/routing/lib/router_state.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/-internal-primitives.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/-internal-utils.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/-internal/primitives.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/transform-action-syntax.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/transform-each-in-into-each.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/transform-wrap-mount-and-outlet.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/utils.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/public-api.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/runtime.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/lib/system/calculate-location-display.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/template-compiler/runtime.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/test/adapter.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/utils/index.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/utils/lib/is-equal.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/utils/lib/is_blank.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/utils/lib/is_none.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/utils/lib/is_present.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/utils/lib/type-of.js +0 -0
- /package/dist/{packages → dev/packages}/@ember/version/index.js +0 -0
- /package/dist/{packages → dev/packages}/@glimmer/env/index.js +0 -0
- /package/dist/{packages → dev/packages}/@glimmer/owner/index.js +0 -0
- /package/dist/{packages → dev/packages}/@glimmer/wire-format/index.js +0 -0
- /package/dist/{packages → dev/packages}/@simple-dom/document/index.js +0 -0
- /package/dist/{packages → dev/packages}/backburner.js/index.js +0 -0
- /package/dist/{packages → dev/packages}/dag-map/index.js +0 -0
- /package/dist/{packages → dev/packages}/ember-testing/lib/adapters/adapter.js +0 -0
- /package/dist/{packages → dev/packages}/ember-testing/lib/test/adapter.js +0 -0
- /package/dist/{packages → dev/packages}/ember-testing/lib/test/waiters.js +0 -0
- /package/dist/{packages → dev/packages}/route-recognizer/index.js +0 -0
- /package/dist/{packages → dev/packages}/rsvp/index.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/array-utils-CZQxrdD3.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/assert-CUCJBR2C.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/cache-qDyqAcpg.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/chunk-3SQBS3Y5-Cj4eryg1.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/computed_cache-DmYKevAP.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/debug-brand-B1TWjOCH.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/dictionary-gc5gpyOG.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/index-BGP1rw3B.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/object-utils-AijlD-JH.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/present-B1rrjAVM.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/registers-ylirb0dq.js +0 -0
- /package/dist/{packages → dev/packages}/shared-chunks/rsvp-CnCSY930.js +0 -0
- /package/dist/{packages → prod/packages}/@ember/routing/-internals.js +0 -0
- /package/dist/{packages/@ember/template-compiler/index.js → prod/packages/@ember/template-compiler/runtime.js} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import '../../debug/index.js';
|
|
2
2
|
import { STRICT_MODE_KEYWORDS, STRICT_MODE_TRANSFORMS, RESOLUTION_MODE_TRANSFORMS } from './plugins/index.js';
|
|
3
|
+
import { ALLOWED_GLOBALS } from './plugins/allowed-globals.js';
|
|
3
4
|
import COMPONENT_NAME_SIMPLE_DASHERIZE_CACHE from './dasherize-component-name.js';
|
|
4
|
-
import { isDevelopingApp } from '@embroider/macros';
|
|
5
5
|
import { assert } from '../../debug/lib/assert.js';
|
|
6
6
|
|
|
7
7
|
let USER_PLUGINS = [];
|
|
@@ -19,7 +19,7 @@ function buildCompileOptions(_options) {
|
|
|
19
19
|
..._options,
|
|
20
20
|
moduleName,
|
|
21
21
|
customizeComponentName(tagname) {
|
|
22
|
-
(
|
|
22
|
+
(!(!malformedComponentLookup(tagname)) && assert(`You tried to invoke a component named <${tagname} /> in "${moduleName ?? '[NO MODULE]'}", but that is not a valid name for a component. Did you mean to use the "::" syntax for nested components?`, !malformedComponentLookup(tagname)));
|
|
23
23
|
return COMPONENT_NAME_SIMPLE_DASHERIZE_CACHE.get(tagname);
|
|
24
24
|
}
|
|
25
25
|
};
|
|
@@ -27,6 +27,9 @@ function buildCompileOptions(_options) {
|
|
|
27
27
|
const localScopeEvaluator = options.eval;
|
|
28
28
|
const globalScopeEvaluator = value => new Function(`return ${value};`)();
|
|
29
29
|
options.lexicalScope = variable => {
|
|
30
|
+
if (ALLOWED_GLOBALS.has(variable)) {
|
|
31
|
+
return variable in globalThis;
|
|
32
|
+
}
|
|
30
33
|
if (inScope(variable, localScopeEvaluator)) {
|
|
31
34
|
return !inScope(variable, globalScopeEvaluator);
|
|
32
35
|
}
|
|
@@ -36,7 +39,9 @@ function buildCompileOptions(_options) {
|
|
|
36
39
|
}
|
|
37
40
|
if ('scope' in options) {
|
|
38
41
|
const scope = options.scope();
|
|
39
|
-
options.lexicalScope = variable =>
|
|
42
|
+
options.lexicalScope = variable => {
|
|
43
|
+
return variable in scope;
|
|
44
|
+
};
|
|
40
45
|
delete options.scope;
|
|
41
46
|
}
|
|
42
47
|
if ('locals' in options && !options.locals) {
|
|
@@ -51,7 +56,7 @@ function buildCompileOptions(_options) {
|
|
|
51
56
|
// move `moduleName` into `meta` property
|
|
52
57
|
if (options.moduleName) {
|
|
53
58
|
let meta = options.meta;
|
|
54
|
-
(
|
|
59
|
+
(!(meta) && assert('has meta', meta)); // We just set it
|
|
55
60
|
meta.moduleName = options.moduleName;
|
|
56
61
|
}
|
|
57
62
|
if (options.strictMode) {
|
|
@@ -71,9 +76,9 @@ function compileOptions(_options = {}) {
|
|
|
71
76
|
};
|
|
72
77
|
} else {
|
|
73
78
|
let potententialPugins = [...USER_PLUGINS, ...builtInPlugins];
|
|
74
|
-
(
|
|
79
|
+
(!(options.plugins) && assert('expected plugins', options.plugins));
|
|
75
80
|
let pluginsToAdd = potententialPugins.filter(plugin => {
|
|
76
|
-
(
|
|
81
|
+
(!(options.plugins) && assert('expected plugins', options.plugins));
|
|
77
82
|
return options.plugins.ast.indexOf(plugin) === -1;
|
|
78
83
|
});
|
|
79
84
|
options.plugins.ast = [...options.plugins.ast, ...pluginsToAdd];
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @private
|
|
3
|
+
*
|
|
4
|
+
* RFC: https://github.com/emberjs/rfcs/pull/1070
|
|
5
|
+
*
|
|
6
|
+
* Criteria for inclusion in this list:
|
|
7
|
+
*
|
|
8
|
+
* Any of:
|
|
9
|
+
* - begins with an uppercase letter
|
|
10
|
+
* - guaranteed to never be added to glimmer as a keyword (e.g.: globalThis)
|
|
11
|
+
*
|
|
12
|
+
* And:
|
|
13
|
+
* - must not need new to invoke
|
|
14
|
+
* - must not require lifetime management (e.g.: setTimeout)
|
|
15
|
+
* - must not be a single-word lower-case API, because of potential collision with future new HTML elements
|
|
16
|
+
* - if the API is a function, the return value should not be a promise
|
|
17
|
+
* - must be one one of these lists:
|
|
18
|
+
* - https://tc39.es/ecma262/#sec-global-object
|
|
19
|
+
* - https://tc39.es/ecma262/#sec-function-properties-of-the-global-object
|
|
20
|
+
* - https://html.spec.whatwg.org/multipage/nav-history-apis.html#window
|
|
21
|
+
* - https://html.spec.whatwg.org/multipage/indices.html#all-interfaces
|
|
22
|
+
* - https://html.spec.whatwg.org/multipage/webappapis.html
|
|
23
|
+
*/
|
|
24
|
+
const ALLOWED_GLOBALS = new Set([
|
|
25
|
+
// ////////////////
|
|
26
|
+
// namespaces
|
|
27
|
+
// ////////////////
|
|
28
|
+
// TC39
|
|
29
|
+
'globalThis', 'Atomics', 'JSON', 'Math', 'Reflect',
|
|
30
|
+
// WHATWG
|
|
31
|
+
'localStorage', 'sessionStorage', 'URL',
|
|
32
|
+
// ////////////////
|
|
33
|
+
// functions / utilities
|
|
34
|
+
// ////////////////
|
|
35
|
+
// TC39
|
|
36
|
+
'isNaN', 'isFinite', 'parseInt', 'parseFloat', 'decodeURI', 'decodeURIComponent', 'encodeURI', 'encodeURIComponent',
|
|
37
|
+
// WHATWG
|
|
38
|
+
'postMessage', 'structuredClone',
|
|
39
|
+
// ////////////////
|
|
40
|
+
// new-less Constructors (still functions)
|
|
41
|
+
// ////////////////
|
|
42
|
+
// TC39
|
|
43
|
+
'Array',
|
|
44
|
+
// different behavior from (array)
|
|
45
|
+
'BigInt', 'Boolean', 'Date', 'Number', 'Object',
|
|
46
|
+
// different behavior from (hash)
|
|
47
|
+
'String',
|
|
48
|
+
// ////////////////
|
|
49
|
+
// Values
|
|
50
|
+
// ////////////////
|
|
51
|
+
// TC39
|
|
52
|
+
'Infinity', 'NaN',
|
|
53
|
+
// WHATWG
|
|
54
|
+
'isSecureContext']);
|
|
55
|
+
|
|
56
|
+
export { ALLOWED_GLOBALS };
|
package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/assert-against-attrs.js
RENAMED
|
@@ -1,9 +1,25 @@
|
|
|
1
1
|
import { deprecate } from '../../../debug/index.js';
|
|
2
2
|
import calculateLocationDisplay from '../system/calculate-location-display.js';
|
|
3
3
|
import { trackLocals } from './utils.js';
|
|
4
|
-
import { isDevelopingApp } from '@embroider/macros';
|
|
5
4
|
import { assert } from '../../../debug/lib/assert.js';
|
|
6
5
|
|
|
6
|
+
/**
|
|
7
|
+
@module ember
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
A Glimmer2 AST transformation that asserts against
|
|
12
|
+
|
|
13
|
+
```handlebars
|
|
14
|
+
{{attrs.foo.bar}}
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
...as well as `{{#if attrs.foo}}`, `{{deeply (nested attrs.foobar.baz)}}`.
|
|
18
|
+
|
|
19
|
+
@private
|
|
20
|
+
@class AssertAgainstAttrs
|
|
21
|
+
*/
|
|
22
|
+
|
|
7
23
|
function assertAgainstAttrs(env) {
|
|
8
24
|
let {
|
|
9
25
|
builders: b
|
|
@@ -19,14 +35,14 @@ function assertAgainstAttrs(env) {
|
|
|
19
35
|
...visitor,
|
|
20
36
|
PathExpression(node) {
|
|
21
37
|
if (isAttrs(node, hasLocal)) {
|
|
22
|
-
(
|
|
38
|
+
(assert(`Using {{attrs}} to reference named arguments is not supported. {{${node.original}}} should be updated to {{@${node.original.slice(6)}}}. ${calculateLocationDisplay(moduleName, node.loc)}`));
|
|
23
39
|
} else if (isThisDotAttrs(node)) {
|
|
24
40
|
// When removing this, ensure `{{this.attrs.foo}}` is left as-is, without triggering
|
|
25
41
|
// any assertions/deprecations. It's perfectly legal to reference `{{this.attrs.foo}}`
|
|
26
42
|
// in the template since it is a real property on the backing class – it will give you
|
|
27
43
|
// a `MutableCell` wrapper object, but maybe that's what you want. And in any case,
|
|
28
44
|
// there is no compelling to special case that property access.
|
|
29
|
-
(
|
|
45
|
+
(deprecate(`Using {{this.attrs}} to reference named arguments has been deprecated. {{${node.original}}} should be updated to {{@${node.original.slice(11)}}}. ${calculateLocationDisplay(moduleName, node.loc)}`, false, {
|
|
30
46
|
id: 'attrs-arg-access',
|
|
31
47
|
url: 'https://deprecations.emberjs.com/v3.x/#toc_attrs-arg-access',
|
|
32
48
|
until: '6.0.0',
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import '../../../debug/index.js';
|
|
2
2
|
import calculateLocationDisplay from '../system/calculate-location-display.js';
|
|
3
3
|
import { trackLocals } from './utils.js';
|
|
4
|
-
import { isDevelopingApp } from '@embroider/macros';
|
|
5
4
|
import { assert } from '../../../debug/lib/assert.js';
|
|
6
5
|
|
|
6
|
+
/**
|
|
7
|
+
@module ember
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
Prevents usage of named outlets, a legacy concept in Ember removed in 4.0.
|
|
12
|
+
|
|
13
|
+
@private
|
|
14
|
+
@class AssertAgainstNamedOutlets
|
|
15
|
+
*/
|
|
7
16
|
function assertAgainstNamedOutlets(env) {
|
|
8
17
|
let moduleName = env.meta?.moduleName;
|
|
9
18
|
let {
|
|
@@ -17,7 +26,7 @@ function assertAgainstNamedOutlets(env) {
|
|
|
17
26
|
MustacheStatement(node) {
|
|
18
27
|
if (node.path.type === 'PathExpression' && node.path.original === 'outlet' && node.params[0] && !hasLocal('outlet')) {
|
|
19
28
|
let sourceInformation = calculateLocationDisplay(moduleName, node.loc);
|
|
20
|
-
(
|
|
29
|
+
(assert(`Named outlets were removed in Ember 4.0. See https://deprecations.emberjs.com/v3.x#toc_route-render-template for guidance on alternative APIs for named outlet use cases. ${sourceInformation}`));
|
|
21
30
|
}
|
|
22
31
|
}
|
|
23
32
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import '../../../debug/index.js';
|
|
2
2
|
import calculateLocationDisplay from '../system/calculate-location-display.js';
|
|
3
3
|
import { isPath, trackLocals } from './utils.js';
|
|
4
|
-
import { isDevelopingApp } from '@embroider/macros';
|
|
5
4
|
import { assert } from '../../../debug/lib/assert.js';
|
|
6
5
|
|
|
7
6
|
function errorOnInputWithContent(env) {
|
|
@@ -17,7 +16,7 @@ function errorOnInputWithContent(env) {
|
|
|
17
16
|
BlockStatement(node) {
|
|
18
17
|
if (hasLocal('input')) return;
|
|
19
18
|
if (isPath(node.path) && node.path.original === 'input') {
|
|
20
|
-
(
|
|
19
|
+
(assert(assertMessage(moduleName, node)));
|
|
21
20
|
}
|
|
22
21
|
}
|
|
23
22
|
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import '../../../debug/index.js';
|
|
2
2
|
import calculateLocationDisplay from '../system/calculate-location-display.js';
|
|
3
|
-
import { isDevelopingApp } from '@embroider/macros';
|
|
4
3
|
import { assert } from '../../../debug/lib/assert.js';
|
|
5
4
|
|
|
6
5
|
function assertReservedNamedArguments(env) {
|
|
@@ -18,7 +17,7 @@ function assertReservedNamedArguments(env) {
|
|
|
18
17
|
loc
|
|
19
18
|
}) {
|
|
20
19
|
if (name === '@__ARGS__') {
|
|
21
|
-
(
|
|
20
|
+
(assert(`${assertMessage(name)} ${calculateLocationDisplay(moduleName, loc)}`));
|
|
22
21
|
}
|
|
23
22
|
},
|
|
24
23
|
HashPair({
|
|
@@ -26,7 +25,7 @@ function assertReservedNamedArguments(env) {
|
|
|
26
25
|
loc
|
|
27
26
|
}) {
|
|
28
27
|
if (key === '__ARGS__') {
|
|
29
|
-
(
|
|
28
|
+
(assert(`${assertMessage(key)} ${calculateLocationDisplay(moduleName, loc)}`));
|
|
30
29
|
}
|
|
31
30
|
},
|
|
32
31
|
PathExpression({
|
|
@@ -34,7 +33,7 @@ function assertReservedNamedArguments(env) {
|
|
|
34
33
|
loc
|
|
35
34
|
}) {
|
|
36
35
|
if (isReserved(original)) {
|
|
37
|
-
(
|
|
36
|
+
(assert(`${assertMessage(original)} ${calculateLocationDisplay(moduleName, loc)}`));
|
|
38
37
|
}
|
|
39
38
|
}
|
|
40
39
|
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import assertAgainstAttrs from './assert-against-attrs.js';
|
|
2
|
+
import assertAgainstNamedOutlets from './assert-against-named-outlets.js';
|
|
3
|
+
import errorOnInputWithContent from './assert-input-helper-without-block.js';
|
|
4
|
+
import assertReservedNamedArguments from './assert-reserved-named-arguments.js';
|
|
5
|
+
import transformActionSyntax from './transform-action-syntax.js';
|
|
6
|
+
import transformEachInIntoEach from './transform-each-in-into-each.js';
|
|
7
|
+
import transformEachTrackArray from './transform-each-track-array.js';
|
|
8
|
+
import transformInElement from './transform-in-element.js';
|
|
9
|
+
import transformQuotedBindingsIntoJustBindings from './transform-quoted-bindings-into-just-bindings.js';
|
|
10
|
+
import { a1 as transformResolutions } from '../../../../shared-chunks/transform-resolutions-fXGQKGsL.js';
|
|
11
|
+
import transformWrapMountAndOutlet from './transform-wrap-mount-and-outlet.js';
|
|
12
|
+
|
|
13
|
+
const INTERNAL_PLUGINS = {
|
|
14
|
+
AssertAgainstAttrs: assertAgainstAttrs,
|
|
15
|
+
AssertAgainstNamedOutlets: assertAgainstNamedOutlets,
|
|
16
|
+
AssertInputHelperWithoutBlock: errorOnInputWithContent,
|
|
17
|
+
AssertReservedNamedArguments: assertReservedNamedArguments,
|
|
18
|
+
TransformActionSyntax: transformActionSyntax,
|
|
19
|
+
TransformEachInIntoEach: transformEachInIntoEach,
|
|
20
|
+
TransformEachTrackArray: transformEachTrackArray,
|
|
21
|
+
TransformInElement: transformInElement,
|
|
22
|
+
TransformQuotedBindingsIntoJustBindings: transformQuotedBindingsIntoJustBindings,
|
|
23
|
+
TransformResolutions: transformResolutions,
|
|
24
|
+
TransformWrapMountAndOutlet: transformWrapMountAndOutlet
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
// order of plugins is important
|
|
28
|
+
const RESOLUTION_MODE_TRANSFORMS = Object.freeze([transformQuotedBindingsIntoJustBindings, assertReservedNamedArguments, transformActionSyntax, assertAgainstAttrs, transformEachInIntoEach, errorOnInputWithContent, transformInElement, transformEachTrackArray, assertAgainstNamedOutlets, transformWrapMountAndOutlet, transformResolutions]);
|
|
29
|
+
const STRICT_MODE_TRANSFORMS = Object.freeze([transformQuotedBindingsIntoJustBindings, assertReservedNamedArguments, transformActionSyntax, transformEachInIntoEach, transformInElement, transformEachTrackArray, assertAgainstNamedOutlets, transformWrapMountAndOutlet]);
|
|
30
|
+
const STRICT_MODE_KEYWORDS = Object.freeze(['action', 'mut', 'readonly', 'unbound',
|
|
31
|
+
// TransformEachInIntoEach
|
|
32
|
+
'-each-in',
|
|
33
|
+
// TransformInElement
|
|
34
|
+
'-in-el-null',
|
|
35
|
+
// TransformEachTrackArray
|
|
36
|
+
'-track-array',
|
|
37
|
+
// TransformWrapMountAndOutlet
|
|
38
|
+
'-mount', '-outlet']);
|
|
39
|
+
|
|
40
|
+
export { INTERNAL_PLUGINS, RESOLUTION_MODE_TRANSFORMS, STRICT_MODE_KEYWORDS, STRICT_MODE_TRANSFORMS };
|
|
@@ -1,8 +1,27 @@
|
|
|
1
1
|
import '../../../debug/index.js';
|
|
2
2
|
import { isPath, trackLocals } from './utils.js';
|
|
3
|
-
import { isDevelopingApp } from '@embroider/macros';
|
|
4
3
|
import { assert } from '../../../debug/lib/assert.js';
|
|
5
4
|
|
|
5
|
+
/**
|
|
6
|
+
@module ember
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
A Glimmer2 AST transformation that replaces all instances of
|
|
11
|
+
|
|
12
|
+
```handlebars
|
|
13
|
+
{{#each iterableThing as |key value|}}
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
with
|
|
17
|
+
|
|
18
|
+
```handlebars
|
|
19
|
+
{{#each (-track-array iterableThing) as |key value|}}
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
@private
|
|
23
|
+
@class TransformHasBlockSyntax
|
|
24
|
+
*/
|
|
6
25
|
function transformEachTrackArray(env) {
|
|
7
26
|
let {
|
|
8
27
|
builders: b
|
|
@@ -18,7 +37,7 @@ function transformEachTrackArray(env) {
|
|
|
18
37
|
BlockStatement(node) {
|
|
19
38
|
if (isPath(node.path) && node.path.original === 'each' && !hasLocal('each')) {
|
|
20
39
|
let firstParam = node.params[0];
|
|
21
|
-
(
|
|
40
|
+
(!(firstParam) && assert('has firstParam', firstParam));
|
|
22
41
|
if (firstParam.type === 'SubExpression' && firstParam.path.type === 'PathExpression' && firstParam.path.original === '-each-in') {
|
|
23
42
|
return;
|
|
24
43
|
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import '../../../debug/index.js';
|
|
2
|
+
import { isPath } from './utils.js';
|
|
3
|
+
import { assert } from '../../../debug/lib/assert.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
@module ember
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
A Glimmer2 AST transformation that handles the public `{{in-element}}` as per RFC287.
|
|
11
|
+
|
|
12
|
+
Issues a build time assertion for:
|
|
13
|
+
|
|
14
|
+
```handlebars
|
|
15
|
+
{{#in-element someElement insertBefore="some-none-null-value"}}
|
|
16
|
+
{{modal-display text=text}}
|
|
17
|
+
{{/in-element}}
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
@private
|
|
21
|
+
@class TransformInElement
|
|
22
|
+
*/
|
|
23
|
+
function transformInElement(env) {
|
|
24
|
+
let {
|
|
25
|
+
builders: b
|
|
26
|
+
} = env.syntax;
|
|
27
|
+
return {
|
|
28
|
+
name: 'transform-in-element',
|
|
29
|
+
visitor: {
|
|
30
|
+
BlockStatement(node) {
|
|
31
|
+
if (!isPath(node.path)) return;
|
|
32
|
+
if (node.path.original === 'in-element') {
|
|
33
|
+
let originalValue = node.params[0];
|
|
34
|
+
if (originalValue && !env.isProduction) {
|
|
35
|
+
let subExpr = b.sexpr('-in-el-null', [originalValue]);
|
|
36
|
+
node.params.shift();
|
|
37
|
+
node.params.unshift(subExpr);
|
|
38
|
+
}
|
|
39
|
+
node.hash.pairs.forEach(pair => {
|
|
40
|
+
if (pair.key === 'insertBefore') {
|
|
41
|
+
(!(pair.value.type === 'NullLiteral' || pair.value.type === 'UndefinedLiteral') && assert(`Can only pass null to insertBefore in in-element, received: ${JSON.stringify(pair.value)}`, pair.value.type === 'NullLiteral' || pair.value.type === 'UndefinedLiteral'));
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export { transformInElement as default };
|
package/dist/{packages → dev/packages}/@ember/template-compiler/lib/plugins/transform-resolutions.js
RENAMED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import '../../../debug/index.js';
|
|
2
|
-
export {
|
|
3
|
-
import '../../../../shared-chunks/debug-to-string-
|
|
4
|
-
import '@embroider/macros';
|
|
2
|
+
export { a1 as default } from '../../../../shared-chunks/transform-resolutions-fXGQKGsL.js';
|
|
3
|
+
import '../../../../shared-chunks/debug-to-string-CFb7h0lY.js';
|
|
5
4
|
import '../../../../@glimmer/wire-format/index.js';
|
|
6
5
|
import '../system/calculate-location-display.js';
|
|
7
6
|
import './utils.js';
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import './plugins/allowed-globals.js';
|
|
2
|
+
import templateOnly from '../../component/template-only.js';
|
|
3
|
+
import '../../../shared-chunks/fragment-Cc5k9Oy4.js';
|
|
4
|
+
import '../../../shared-chunks/debug-to-string-CFb7h0lY.js';
|
|
5
|
+
import '../../../@glimmer/wire-format/index.js';
|
|
6
|
+
import { p as precompile } from '../../../shared-chunks/compiler-CNj62pww.js';
|
|
7
|
+
import '../../../@glimmer/global-context/index.js';
|
|
8
|
+
import '../../../@glimmer/destroyable/index.js';
|
|
9
|
+
import '../../../@glimmer/validator/index.js';
|
|
10
|
+
import '../../../shared-chunks/reference-C3TKDRnP.js';
|
|
11
|
+
import '../../../shared-chunks/capabilities-O_xc7Yqk.js';
|
|
12
|
+
import { s as setComponentTemplate } from '../../../shared-chunks/template-kM-7TTcc.js';
|
|
13
|
+
import { t as templateFactory } from '../../../shared-chunks/index-Q7JnrdBn.js';
|
|
14
|
+
import compileOptions from './compile-options.js';
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* All possible options passed to `template()` may specify a `moduleName`.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* When using `template` in a class, you call it in a `static` block and pass
|
|
22
|
+
* the class as the `component` option.
|
|
23
|
+
*
|
|
24
|
+
* ```ts
|
|
25
|
+
* class MyComponent extends Component {
|
|
26
|
+
* static {
|
|
27
|
+
* template('{{this.greeting}}, {{@place}}!',
|
|
28
|
+
* { component: this },
|
|
29
|
+
* // explicit or implicit option goes here
|
|
30
|
+
* );
|
|
31
|
+
* }
|
|
32
|
+
* }
|
|
33
|
+
* ```
|
|
34
|
+
*
|
|
35
|
+
* For the full explicit form, see {@linkcode ExplicitClassOptions}. For the
|
|
36
|
+
* full implicit form, see {@linkcode ImplicitClassOptions}.
|
|
37
|
+
*/
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* When using `template` outside of a class (i.e. a "template-only component"), you can pass
|
|
41
|
+
* a `scope` option that explicitly provides the lexical scope for the template.
|
|
42
|
+
*
|
|
43
|
+
* This is called the "explicit form".
|
|
44
|
+
*
|
|
45
|
+
* ```ts
|
|
46
|
+
* const greeting = 'Hello';
|
|
47
|
+
* const HelloWorld = template('{{greeting}} World!', { scope: () => ({ greeting }) });
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* When using `template` *inside* a class (see
|
|
53
|
+
* {@linkcode BaseClassTemplateOptions}), you can pass a `scope` option that
|
|
54
|
+
* explicitly provides the lexical scope for the template, just like a template-only
|
|
55
|
+
* component (see {@linkcode ExplicitTemplateOnlyOptions}).
|
|
56
|
+
*
|
|
57
|
+
* ```ts
|
|
58
|
+
* class MyComponent extends Component {
|
|
59
|
+
* static {
|
|
60
|
+
* template('{{this.greeting}}, {{@place}}!',
|
|
61
|
+
* { component: this },
|
|
62
|
+
* // explicit or implicit option goes here
|
|
63
|
+
* );
|
|
64
|
+
* }
|
|
65
|
+
* }
|
|
66
|
+
* ```
|
|
67
|
+
*
|
|
68
|
+
* ## The Scope Function's `instance` Parameter
|
|
69
|
+
*
|
|
70
|
+
* However, the explicit `scope` function in a *class* also takes an `instance` option
|
|
71
|
+
* that provides access to the component's instance.
|
|
72
|
+
*
|
|
73
|
+
* Once it's supported in Handlebars, this will make it possible to represent private
|
|
74
|
+
* fields when using the explicit form.
|
|
75
|
+
*
|
|
76
|
+
* ```ts
|
|
77
|
+
* class MyComponent extends Component {
|
|
78
|
+
* static {
|
|
79
|
+
* template('{{this.#greeting}}, {{@place}}!',
|
|
80
|
+
* { component: this },
|
|
81
|
+
* scope: (instance) => ({ '#greeting': instance.#greeting }),
|
|
82
|
+
* );
|
|
83
|
+
* }
|
|
84
|
+
* }
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* The *implicit* form of the `template` function takes an `eval` option that
|
|
90
|
+
* allows the runtime compiler to evaluate local template variables without
|
|
91
|
+
* needing to maintain an explicit list of the local variables used in the
|
|
92
|
+
* template scope.
|
|
93
|
+
*
|
|
94
|
+
* The eval options *must* be passed in the following form:
|
|
95
|
+
*
|
|
96
|
+
* ```ts
|
|
97
|
+
* {
|
|
98
|
+
* eval() { return eval(arguments[0]) }
|
|
99
|
+
* }
|
|
100
|
+
* ```
|
|
101
|
+
*
|
|
102
|
+
* ## Requirements of the `eval` Option
|
|
103
|
+
*
|
|
104
|
+
* **The syntactic form presented above is the only form you should use when
|
|
105
|
+
* passing an `eval` option.**
|
|
106
|
+
*
|
|
107
|
+
* This is _required_ if you want your code to be compatible with the
|
|
108
|
+
* compile-time implementation of `@ember/template-compiler`. While the runtime
|
|
109
|
+
* compiler offers a tiny bit of additional wiggle room, you still need to follow
|
|
110
|
+
* very strict rules.
|
|
111
|
+
*
|
|
112
|
+
* We don't recommend trying to memorize the rules. Instead, we recommend using
|
|
113
|
+
* the snippet presented above and supported by the compile-time implementation.
|
|
114
|
+
*
|
|
115
|
+
* ### The Technical Requirements of the `eval` Option
|
|
116
|
+
*
|
|
117
|
+
* The `eval` function is passed a single parameter that is a JavaScript
|
|
118
|
+
* identifier. This will be extended in the future to support private fields.
|
|
119
|
+
*
|
|
120
|
+
* Since keywords in JavaScript are contextual (e.g. `await` and `yield`), the
|
|
121
|
+
* parameter might be a keyword. The `@ember/template-compiler/runtime` expects
|
|
122
|
+
* the function to throw a `SyntaxError` if the identifier name is not valid in
|
|
123
|
+
* the current scope. (The direct `eval` function takes care of this out of the
|
|
124
|
+
* box.)
|
|
125
|
+
*
|
|
126
|
+
* Requirements:
|
|
127
|
+
*
|
|
128
|
+
* 1. The `eval` method must receive its parameter as `arguments[0]`, which
|
|
129
|
+
* ensures that the variable name passed to `eval()` is not shadowed by the
|
|
130
|
+
* function's parameter name.
|
|
131
|
+
* 2. The `eval` option must be a function or concise method, and not an arrow.
|
|
132
|
+
* This is because arrows do not have their own `arguments`, which breaks
|
|
133
|
+
* (1).
|
|
134
|
+
* 3. The `eval` method must call "*direct* `eval`", and not an alias of `eval`.
|
|
135
|
+
* Direct `eval` evaluates the code in the scope it was called from, while
|
|
136
|
+
* aliased versions of `eval` (including `new Function`) evaluate the code in
|
|
137
|
+
* the global scope.
|
|
138
|
+
* 4. The `eval` method must return the result of calling "direct `eval`".
|
|
139
|
+
*
|
|
140
|
+
* The easiest way to achieve these requirements is to use the exact syntax
|
|
141
|
+
* presented above. This is *also* the only way to be compatible
|
|
142
|
+
*
|
|
143
|
+
* ## Rationale
|
|
144
|
+
*
|
|
145
|
+
* This is useful for two reasons:
|
|
146
|
+
*
|
|
147
|
+
* 1. This form is a useful _intermediate_ form for the compile-time toolchain.
|
|
148
|
+
* It allows the content-tag preprocessor to convert the `<template>` syntax
|
|
149
|
+
* into valid JavaScript without needing to involve full-fledged lexical
|
|
150
|
+
* analysis.
|
|
151
|
+
* 2. This form is a convenient form for manual prototyping when using the
|
|
152
|
+
* runtime compiler directly. While it requires some extra typing relative to
|
|
153
|
+
* `<template>`, it's a mechanical 1:1 transformation of the syntax.
|
|
154
|
+
*
|
|
155
|
+
* In practice, implementations that use a runtime compiler (for example, a
|
|
156
|
+
* playground running completely in the browser) should probably use the
|
|
157
|
+
* `content-tag` preprocessor to convert the template into the implicit form,
|
|
158
|
+
* and then rely on `@ember/template-compiler/runtime` to evaluate the template.
|
|
159
|
+
*/
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* When using `template` outside of a class (i.e. a "template-only component"), you can pass
|
|
163
|
+
* an `eval` option that _implicitly_ provides the lexical scope for the template.
|
|
164
|
+
*
|
|
165
|
+
* This is called the "implicit form".
|
|
166
|
+
*
|
|
167
|
+
* ```ts
|
|
168
|
+
* const greeting = 'Hello';
|
|
169
|
+
* const HelloWorld = template('{{greeting}} World!', {
|
|
170
|
+
* eval() { return arguments[0] }
|
|
171
|
+
* });
|
|
172
|
+
* ```
|
|
173
|
+
*
|
|
174
|
+
* For more details on the requirements of the `eval` option, see {@linkcode ImplicitEvalOption}.
|
|
175
|
+
*/
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* When using `template` inside of a class, you can pass an `eval` option that
|
|
179
|
+
* _implicitly_ provides the lexical scope for the template, just as you can
|
|
180
|
+
* with a {@linkcode ImplicitTemplateOnlyOptions | template-only component}.
|
|
181
|
+
*
|
|
182
|
+
* This is called the "implicit form".
|
|
183
|
+
*
|
|
184
|
+
* ```ts
|
|
185
|
+
* class MyComponent extends Component {
|
|
186
|
+
* static {
|
|
187
|
+
* template('{{this.greeting}}, {{@place}}!',
|
|
188
|
+
* { component: this },
|
|
189
|
+
* eval() { return arguments[0] }
|
|
190
|
+
* );
|
|
191
|
+
* }
|
|
192
|
+
* }
|
|
193
|
+
* ```
|
|
194
|
+
*
|
|
195
|
+
* ## Note on Private Fields
|
|
196
|
+
*
|
|
197
|
+
* The current implementation of `@ember/template-compiler` does not support
|
|
198
|
+
* private fields, but once the Handlebars parser adds support for private field
|
|
199
|
+
* syntax and it's implemented in the Glimmer compiler, the implicit form should
|
|
200
|
+
* be able to support them.
|
|
201
|
+
*/
|
|
202
|
+
|
|
203
|
+
function template(templateString, providedOptions) {
|
|
204
|
+
const options = {
|
|
205
|
+
strictMode: true,
|
|
206
|
+
...providedOptions
|
|
207
|
+
};
|
|
208
|
+
const evaluate = buildEvaluator(options);
|
|
209
|
+
const normalizedOptions = compileOptions(options);
|
|
210
|
+
const component = normalizedOptions.component ?? templateOnly();
|
|
211
|
+
const source = precompile(templateString, normalizedOptions);
|
|
212
|
+
const template = templateFactory(evaluate(`(${source})`));
|
|
213
|
+
setComponentTemplate(template, component);
|
|
214
|
+
return component;
|
|
215
|
+
}
|
|
216
|
+
const evaluator = source => {
|
|
217
|
+
return new Function(`return ${source}`)();
|
|
218
|
+
};
|
|
219
|
+
function buildEvaluator(options) {
|
|
220
|
+
if (options === undefined) {
|
|
221
|
+
return evaluator;
|
|
222
|
+
}
|
|
223
|
+
if (options.eval) {
|
|
224
|
+
return options.eval;
|
|
225
|
+
} else {
|
|
226
|
+
const scope = options.scope?.();
|
|
227
|
+
if (!scope) {
|
|
228
|
+
return evaluator;
|
|
229
|
+
}
|
|
230
|
+
return source => {
|
|
231
|
+
let hasThis = Object.prototype.hasOwnProperty.call(scope, 'this');
|
|
232
|
+
let thisValue = hasThis ? scope.this : undefined;
|
|
233
|
+
let argNames = [];
|
|
234
|
+
let argValues = [];
|
|
235
|
+
for (let [name, value] of Object.entries(scope)) {
|
|
236
|
+
if (name === 'this') {
|
|
237
|
+
continue;
|
|
238
|
+
}
|
|
239
|
+
argNames.push(name);
|
|
240
|
+
argValues.push(value);
|
|
241
|
+
}
|
|
242
|
+
let fn = new Function(...argNames, `return (${source})`);
|
|
243
|
+
return hasThis ? fn.call(thisValue, ...argValues) : fn(...argValues);
|
|
244
|
+
};
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
export { template };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import '../../shared-chunks/fragment-Cc5k9Oy4.js';
|
|
2
|
+
import '../../shared-chunks/debug-to-string-CFb7h0lY.js';
|
|
3
|
+
import '../../@glimmer/global-context/index.js';
|
|
4
|
+
import '../../@glimmer/validator/index.js';
|
|
5
|
+
import '../../shared-chunks/reference-C3TKDRnP.js';
|
|
6
|
+
export { t as createTemplateFactory } from '../../shared-chunks/index-Q7JnrdBn.js';
|
|
7
|
+
import '../../@glimmer/destroyable/index.js';
|
|
8
|
+
import '../../shared-chunks/capabilities-O_xc7Yqk.js';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
let registerWaiter;
|
|
2
|
+
let unregisterWaiter;
|
|
3
|
+
let _impl;
|
|
4
|
+
let testingNotAvailableMessage = () => {
|
|
5
|
+
throw new Error('Attempted to use test utilities, but `ember-testing` was not included');
|
|
6
|
+
};
|
|
7
|
+
registerWaiter = testingNotAvailableMessage;
|
|
8
|
+
unregisterWaiter = testingNotAvailableMessage;
|
|
9
|
+
function registerTestImplementation(impl) {
|
|
10
|
+
let {
|
|
11
|
+
Test
|
|
12
|
+
} = impl;
|
|
13
|
+
registerWaiter = Test.registerWaiter;
|
|
14
|
+
unregisterWaiter = Test.unregisterWaiter;
|
|
15
|
+
_impl = impl;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { _impl, registerTestImplementation, registerWaiter, unregisterWaiter };
|