ember-source 6.12.0-beta.3 → 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 +27 -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
package/dist/{packages → prod/packages}/@ember/template-compiler/lib/plugins/transform-in-element.js
RENAMED
|
@@ -1,8 +1,24 @@
|
|
|
1
|
-
import '
|
|
1
|
+
import '../../../-internals/environment/index.js';
|
|
2
2
|
import { isPath } from './utils.js';
|
|
3
|
-
import { isDevelopingApp } from '@embroider/macros';
|
|
4
|
-
import { assert } from '../../../debug/lib/assert.js';
|
|
5
3
|
|
|
4
|
+
/**
|
|
5
|
+
@module ember
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
A Glimmer2 AST transformation that handles the public `{{in-element}}` as per RFC287.
|
|
10
|
+
|
|
11
|
+
Issues a build time assertion for:
|
|
12
|
+
|
|
13
|
+
```handlebars
|
|
14
|
+
{{#in-element someElement insertBefore="some-none-null-value"}}
|
|
15
|
+
{{modal-display text=text}}
|
|
16
|
+
{{/in-element}}
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
@private
|
|
20
|
+
@class TransformInElement
|
|
21
|
+
*/
|
|
6
22
|
function transformInElement(env) {
|
|
7
23
|
let {
|
|
8
24
|
builders: b
|
|
@@ -20,9 +36,7 @@ function transformInElement(env) {
|
|
|
20
36
|
node.params.unshift(subExpr);
|
|
21
37
|
}
|
|
22
38
|
node.hash.pairs.forEach(pair => {
|
|
23
|
-
if (pair.key === 'insertBefore')
|
|
24
|
-
(isDevelopingApp() && !(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'));
|
|
25
|
-
}
|
|
39
|
+
if (pair.key === 'insertBefore') ;
|
|
26
40
|
});
|
|
27
41
|
}
|
|
28
42
|
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
function transformQuotedBindingsIntoJustBindings(/* env */
|
|
2
|
+
) {
|
|
3
|
+
return {
|
|
4
|
+
name: 'transform-quoted-bindings-into-just-bindings',
|
|
5
|
+
visitor: {
|
|
6
|
+
ElementNode(node) {
|
|
7
|
+
let styleAttr = getStyleAttr(node);
|
|
8
|
+
if (!validStyleAttr(styleAttr)) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
styleAttr.value = styleAttr.value.parts[0];
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
function validStyleAttr(attr) {
|
|
17
|
+
if (!attr) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
let value = attr.value;
|
|
21
|
+
if (!value || value.type !== 'ConcatStatement' || value.parts.length !== 1) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
let onlyPart = value.parts[0];
|
|
25
|
+
return onlyPart.type === 'MustacheStatement';
|
|
26
|
+
}
|
|
27
|
+
function getStyleAttr(node) {
|
|
28
|
+
let attributes = node.attributes;
|
|
29
|
+
for (let attribute of attributes) {
|
|
30
|
+
if (attribute.name === 'style') {
|
|
31
|
+
return attribute;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export { transformQuotedBindingsIntoJustBindings as default };
|
package/dist/prod/packages/@ember/template-compiler/lib/plugins/transform-wrap-mount-and-outlet.js
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { isPath, trackLocals } from './utils.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
@module ember
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
A Glimmer2 AST transformation that replaces all instances of
|
|
9
|
+
|
|
10
|
+
```handlebars
|
|
11
|
+
{{mount "engine" model=this.model}}
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
with
|
|
15
|
+
|
|
16
|
+
```handlebars
|
|
17
|
+
{{component (-mount "engine" model=this.model)}}
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
and
|
|
21
|
+
|
|
22
|
+
```handlebars
|
|
23
|
+
{{outlet}}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
with
|
|
27
|
+
|
|
28
|
+
```handlebars
|
|
29
|
+
{{component (-outlet)}}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
@private
|
|
33
|
+
@class TransformHasBlockSyntax
|
|
34
|
+
*/
|
|
35
|
+
function transformWrapMountAndOutlet(env) {
|
|
36
|
+
let {
|
|
37
|
+
builders: b
|
|
38
|
+
} = env.syntax;
|
|
39
|
+
let {
|
|
40
|
+
hasLocal,
|
|
41
|
+
visitor
|
|
42
|
+
} = trackLocals(env);
|
|
43
|
+
return {
|
|
44
|
+
name: 'transform-wrap-mount-and-outlet',
|
|
45
|
+
visitor: {
|
|
46
|
+
...visitor,
|
|
47
|
+
MustacheStatement(node) {
|
|
48
|
+
if (isPath(node.path) && (node.path.original === 'mount' || node.path.original === 'outlet') && !hasLocal(node.path.original)) {
|
|
49
|
+
let subexpression = b.sexpr(b.path(`-${node.path.original}`), node.params, node.hash, node.loc);
|
|
50
|
+
return b.mustache(b.path('component'), [subexpression], b.hash(), undefined, node.loc);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export { transformWrapMountAndOutlet as default };
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
function isPath(node) {
|
|
2
|
+
return node.type === 'PathExpression';
|
|
3
|
+
}
|
|
4
|
+
function isSubExpression(node) {
|
|
5
|
+
return node.type === 'SubExpression';
|
|
6
|
+
}
|
|
7
|
+
function isStringLiteral(node) {
|
|
8
|
+
return node.type === 'StringLiteral';
|
|
9
|
+
}
|
|
10
|
+
function inScope(env, name) {
|
|
11
|
+
return Boolean(env.lexicalScope?.(name));
|
|
12
|
+
}
|
|
13
|
+
function getLocalName(node) {
|
|
14
|
+
if (typeof node === 'string') {
|
|
15
|
+
return node;
|
|
16
|
+
} else {
|
|
17
|
+
return node.original;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function trackLocals(env) {
|
|
21
|
+
let locals = new Map();
|
|
22
|
+
let node = {
|
|
23
|
+
enter(node) {
|
|
24
|
+
let params = 'params' in node ? node.params : node.blockParams;
|
|
25
|
+
for (let param of params) {
|
|
26
|
+
let name = getLocalName(param);
|
|
27
|
+
let value = locals.get(param) || 0;
|
|
28
|
+
locals.set(name, value + 1);
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
exit(node) {
|
|
32
|
+
let params = 'params' in node ? node.params : node.blockParams;
|
|
33
|
+
for (let param of params) {
|
|
34
|
+
let name = getLocalName(param);
|
|
35
|
+
let value = locals.get(name) - 1;
|
|
36
|
+
if (value === 0) {
|
|
37
|
+
locals.delete(name);
|
|
38
|
+
} else {
|
|
39
|
+
locals.set(name, value);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
return {
|
|
45
|
+
hasLocal: key => locals.has(key) || inScope(env, key),
|
|
46
|
+
node,
|
|
47
|
+
visitor: {
|
|
48
|
+
Template: node,
|
|
49
|
+
ElementNode: node,
|
|
50
|
+
Block: node
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export { inScope, isPath, isStringLiteral, isSubExpression, trackLocals };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { template } from './template.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { template } from './template.js';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
function calculateLocationDisplay(moduleName, loc) {
|
|
2
|
+
let moduleInfo = '';
|
|
3
|
+
if (moduleName) {
|
|
4
|
+
moduleInfo += `'${moduleName}' `;
|
|
5
|
+
}
|
|
6
|
+
if (loc) {
|
|
7
|
+
let {
|
|
8
|
+
column,
|
|
9
|
+
line
|
|
10
|
+
} = loc.start || {
|
|
11
|
+
line: undefined,
|
|
12
|
+
column: undefined
|
|
13
|
+
};
|
|
14
|
+
if (line !== undefined && column !== undefined) {
|
|
15
|
+
if (moduleName) {
|
|
16
|
+
// only prepend @ if the moduleName was present
|
|
17
|
+
moduleInfo += '@ ';
|
|
18
|
+
}
|
|
19
|
+
moduleInfo += `L${line}:C${column}`;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
if (moduleInfo) {
|
|
23
|
+
moduleInfo = `(${moduleInfo}) `;
|
|
24
|
+
}
|
|
25
|
+
return moduleInfo;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export { calculateLocationDisplay as default };
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import './plugins/allowed-globals.js';
|
|
2
|
+
import templateOnly from '../../component/template-only.js';
|
|
3
|
+
import '../../../shared-chunks/fragment-EpVz5Xuc.js';
|
|
4
|
+
import '../../../@glimmer/wire-format/index.js';
|
|
5
|
+
import { p as precompile } from '../../../shared-chunks/compiler-Ddfo5StE.js';
|
|
6
|
+
import '../../../@glimmer/validator/index.js';
|
|
7
|
+
import '../../../shared-chunks/reference-BNqcwZWH.js';
|
|
8
|
+
import '../../../shared-chunks/capabilities-DGmQ_mz4.js';
|
|
9
|
+
import { s as setComponentTemplate } from '../../../shared-chunks/template-Dc_cBOoX.js';
|
|
10
|
+
import { t as templateFactory } from '../../../shared-chunks/index-CSVCFS_p.js';
|
|
11
|
+
import compileOptions from './compile-options.js';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* All possible options passed to `template()` may specify a `moduleName`.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* When using `template` in a class, you call it in a `static` block and pass
|
|
19
|
+
* the class as the `component` option.
|
|
20
|
+
*
|
|
21
|
+
* ```ts
|
|
22
|
+
* class MyComponent extends Component {
|
|
23
|
+
* static {
|
|
24
|
+
* template('{{this.greeting}}, {{@place}}!',
|
|
25
|
+
* { component: this },
|
|
26
|
+
* // explicit or implicit option goes here
|
|
27
|
+
* );
|
|
28
|
+
* }
|
|
29
|
+
* }
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* For the full explicit form, see {@linkcode ExplicitClassOptions}. For the
|
|
33
|
+
* full implicit form, see {@linkcode ImplicitClassOptions}.
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* When using `template` outside of a class (i.e. a "template-only component"), you can pass
|
|
38
|
+
* a `scope` option that explicitly provides the lexical scope for the template.
|
|
39
|
+
*
|
|
40
|
+
* This is called the "explicit form".
|
|
41
|
+
*
|
|
42
|
+
* ```ts
|
|
43
|
+
* const greeting = 'Hello';
|
|
44
|
+
* const HelloWorld = template('{{greeting}} World!', { scope: () => ({ greeting }) });
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* When using `template` *inside* a class (see
|
|
50
|
+
* {@linkcode BaseClassTemplateOptions}), you can pass a `scope` option that
|
|
51
|
+
* explicitly provides the lexical scope for the template, just like a template-only
|
|
52
|
+
* component (see {@linkcode ExplicitTemplateOnlyOptions}).
|
|
53
|
+
*
|
|
54
|
+
* ```ts
|
|
55
|
+
* class MyComponent extends Component {
|
|
56
|
+
* static {
|
|
57
|
+
* template('{{this.greeting}}, {{@place}}!',
|
|
58
|
+
* { component: this },
|
|
59
|
+
* // explicit or implicit option goes here
|
|
60
|
+
* );
|
|
61
|
+
* }
|
|
62
|
+
* }
|
|
63
|
+
* ```
|
|
64
|
+
*
|
|
65
|
+
* ## The Scope Function's `instance` Parameter
|
|
66
|
+
*
|
|
67
|
+
* However, the explicit `scope` function in a *class* also takes an `instance` option
|
|
68
|
+
* that provides access to the component's instance.
|
|
69
|
+
*
|
|
70
|
+
* Once it's supported in Handlebars, this will make it possible to represent private
|
|
71
|
+
* fields when using the explicit form.
|
|
72
|
+
*
|
|
73
|
+
* ```ts
|
|
74
|
+
* class MyComponent extends Component {
|
|
75
|
+
* static {
|
|
76
|
+
* template('{{this.#greeting}}, {{@place}}!',
|
|
77
|
+
* { component: this },
|
|
78
|
+
* scope: (instance) => ({ '#greeting': instance.#greeting }),
|
|
79
|
+
* );
|
|
80
|
+
* }
|
|
81
|
+
* }
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* The *implicit* form of the `template` function takes an `eval` option that
|
|
87
|
+
* allows the runtime compiler to evaluate local template variables without
|
|
88
|
+
* needing to maintain an explicit list of the local variables used in the
|
|
89
|
+
* template scope.
|
|
90
|
+
*
|
|
91
|
+
* The eval options *must* be passed in the following form:
|
|
92
|
+
*
|
|
93
|
+
* ```ts
|
|
94
|
+
* {
|
|
95
|
+
* eval() { return eval(arguments[0]) }
|
|
96
|
+
* }
|
|
97
|
+
* ```
|
|
98
|
+
*
|
|
99
|
+
* ## Requirements of the `eval` Option
|
|
100
|
+
*
|
|
101
|
+
* **The syntactic form presented above is the only form you should use when
|
|
102
|
+
* passing an `eval` option.**
|
|
103
|
+
*
|
|
104
|
+
* This is _required_ if you want your code to be compatible with the
|
|
105
|
+
* compile-time implementation of `@ember/template-compiler`. While the runtime
|
|
106
|
+
* compiler offers a tiny bit of additional wiggle room, you still need to follow
|
|
107
|
+
* very strict rules.
|
|
108
|
+
*
|
|
109
|
+
* We don't recommend trying to memorize the rules. Instead, we recommend using
|
|
110
|
+
* the snippet presented above and supported by the compile-time implementation.
|
|
111
|
+
*
|
|
112
|
+
* ### The Technical Requirements of the `eval` Option
|
|
113
|
+
*
|
|
114
|
+
* The `eval` function is passed a single parameter that is a JavaScript
|
|
115
|
+
* identifier. This will be extended in the future to support private fields.
|
|
116
|
+
*
|
|
117
|
+
* Since keywords in JavaScript are contextual (e.g. `await` and `yield`), the
|
|
118
|
+
* parameter might be a keyword. The `@ember/template-compiler/runtime` expects
|
|
119
|
+
* the function to throw a `SyntaxError` if the identifier name is not valid in
|
|
120
|
+
* the current scope. (The direct `eval` function takes care of this out of the
|
|
121
|
+
* box.)
|
|
122
|
+
*
|
|
123
|
+
* Requirements:
|
|
124
|
+
*
|
|
125
|
+
* 1. The `eval` method must receive its parameter as `arguments[0]`, which
|
|
126
|
+
* ensures that the variable name passed to `eval()` is not shadowed by the
|
|
127
|
+
* function's parameter name.
|
|
128
|
+
* 2. The `eval` option must be a function or concise method, and not an arrow.
|
|
129
|
+
* This is because arrows do not have their own `arguments`, which breaks
|
|
130
|
+
* (1).
|
|
131
|
+
* 3. The `eval` method must call "*direct* `eval`", and not an alias of `eval`.
|
|
132
|
+
* Direct `eval` evaluates the code in the scope it was called from, while
|
|
133
|
+
* aliased versions of `eval` (including `new Function`) evaluate the code in
|
|
134
|
+
* the global scope.
|
|
135
|
+
* 4. The `eval` method must return the result of calling "direct `eval`".
|
|
136
|
+
*
|
|
137
|
+
* The easiest way to achieve these requirements is to use the exact syntax
|
|
138
|
+
* presented above. This is *also* the only way to be compatible
|
|
139
|
+
*
|
|
140
|
+
* ## Rationale
|
|
141
|
+
*
|
|
142
|
+
* This is useful for two reasons:
|
|
143
|
+
*
|
|
144
|
+
* 1. This form is a useful _intermediate_ form for the compile-time toolchain.
|
|
145
|
+
* It allows the content-tag preprocessor to convert the `<template>` syntax
|
|
146
|
+
* into valid JavaScript without needing to involve full-fledged lexical
|
|
147
|
+
* analysis.
|
|
148
|
+
* 2. This form is a convenient form for manual prototyping when using the
|
|
149
|
+
* runtime compiler directly. While it requires some extra typing relative to
|
|
150
|
+
* `<template>`, it's a mechanical 1:1 transformation of the syntax.
|
|
151
|
+
*
|
|
152
|
+
* In practice, implementations that use a runtime compiler (for example, a
|
|
153
|
+
* playground running completely in the browser) should probably use the
|
|
154
|
+
* `content-tag` preprocessor to convert the template into the implicit form,
|
|
155
|
+
* and then rely on `@ember/template-compiler/runtime` to evaluate the template.
|
|
156
|
+
*/
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* When using `template` outside of a class (i.e. a "template-only component"), you can pass
|
|
160
|
+
* an `eval` option that _implicitly_ provides the lexical scope for the template.
|
|
161
|
+
*
|
|
162
|
+
* This is called the "implicit form".
|
|
163
|
+
*
|
|
164
|
+
* ```ts
|
|
165
|
+
* const greeting = 'Hello';
|
|
166
|
+
* const HelloWorld = template('{{greeting}} World!', {
|
|
167
|
+
* eval() { return arguments[0] }
|
|
168
|
+
* });
|
|
169
|
+
* ```
|
|
170
|
+
*
|
|
171
|
+
* For more details on the requirements of the `eval` option, see {@linkcode ImplicitEvalOption}.
|
|
172
|
+
*/
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* When using `template` inside of a class, you can pass an `eval` option that
|
|
176
|
+
* _implicitly_ provides the lexical scope for the template, just as you can
|
|
177
|
+
* with a {@linkcode ImplicitTemplateOnlyOptions | template-only component}.
|
|
178
|
+
*
|
|
179
|
+
* This is called the "implicit form".
|
|
180
|
+
*
|
|
181
|
+
* ```ts
|
|
182
|
+
* class MyComponent extends Component {
|
|
183
|
+
* static {
|
|
184
|
+
* template('{{this.greeting}}, {{@place}}!',
|
|
185
|
+
* { component: this },
|
|
186
|
+
* eval() { return arguments[0] }
|
|
187
|
+
* );
|
|
188
|
+
* }
|
|
189
|
+
* }
|
|
190
|
+
* ```
|
|
191
|
+
*
|
|
192
|
+
* ## Note on Private Fields
|
|
193
|
+
*
|
|
194
|
+
* The current implementation of `@ember/template-compiler` does not support
|
|
195
|
+
* private fields, but once the Handlebars parser adds support for private field
|
|
196
|
+
* syntax and it's implemented in the Glimmer compiler, the implicit form should
|
|
197
|
+
* be able to support them.
|
|
198
|
+
*/
|
|
199
|
+
|
|
200
|
+
function template(templateString, providedOptions) {
|
|
201
|
+
const options = {
|
|
202
|
+
strictMode: true,
|
|
203
|
+
...providedOptions
|
|
204
|
+
};
|
|
205
|
+
const evaluate = buildEvaluator(options);
|
|
206
|
+
const normalizedOptions = compileOptions(options);
|
|
207
|
+
const component = normalizedOptions.component ?? templateOnly();
|
|
208
|
+
const source = precompile(templateString, normalizedOptions);
|
|
209
|
+
const template = templateFactory(evaluate(`(${source})`));
|
|
210
|
+
setComponentTemplate(template, component);
|
|
211
|
+
return component;
|
|
212
|
+
}
|
|
213
|
+
const evaluator = source => {
|
|
214
|
+
return new Function(`return ${source}`)();
|
|
215
|
+
};
|
|
216
|
+
function buildEvaluator(options) {
|
|
217
|
+
if (options === undefined) {
|
|
218
|
+
return evaluator;
|
|
219
|
+
}
|
|
220
|
+
if (options.eval) {
|
|
221
|
+
return options.eval;
|
|
222
|
+
} else {
|
|
223
|
+
const scope = options.scope?.();
|
|
224
|
+
if (!scope) {
|
|
225
|
+
return evaluator;
|
|
226
|
+
}
|
|
227
|
+
return source => {
|
|
228
|
+
let hasThis = Object.prototype.hasOwnProperty.call(scope, 'this');
|
|
229
|
+
let thisValue = hasThis ? scope.this : undefined;
|
|
230
|
+
let argNames = [];
|
|
231
|
+
let argValues = [];
|
|
232
|
+
for (let [name, value] of Object.entries(scope)) {
|
|
233
|
+
if (name === 'this') {
|
|
234
|
+
continue;
|
|
235
|
+
}
|
|
236
|
+
argNames.push(name);
|
|
237
|
+
argValues.push(value);
|
|
238
|
+
}
|
|
239
|
+
let fn = new Function(...argNames, `return (${source})`);
|
|
240
|
+
return hasThis ? fn.call(thisValue, ...argValues) : fn(...argValues);
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
export { template };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import '../../shared-chunks/fragment-EpVz5Xuc.js';
|
|
2
|
+
import '../../@glimmer/validator/index.js';
|
|
3
|
+
import '../../shared-chunks/reference-BNqcwZWH.js';
|
|
4
|
+
export { t as createTemplateFactory } from '../../shared-chunks/index-CSVCFS_p.js';
|
|
5
|
+
import '../../shared-chunks/capabilities-DGmQ_mz4.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 };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { default as isNone } from './lib/is_none.js';
|
|
2
|
+
export { default as isBlank } from './lib/is_blank.js';
|
|
3
|
+
export { default as isEmpty } from './lib/is_empty.js';
|
|
4
|
+
export { default as isPresent } from './lib/is_present.js';
|
|
5
|
+
export { default as isEqual } from './lib/is-equal.js';
|
|
6
|
+
export { default as typeOf } from './lib/type-of.js';
|
|
7
|
+
export { default as compare } from './lib/compare.js';
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import typeOf from './type-of.js';
|
|
2
|
+
import '../../-internals/runtime/lib/mixins/registry_proxy.js';
|
|
3
|
+
import '../../-internals/runtime/lib/mixins/container_proxy.js';
|
|
4
|
+
import Comparable from '../../-internals/runtime/lib/mixins/comparable.js';
|
|
5
|
+
import '../../-internals/runtime/lib/mixins/action_handler.js';
|
|
6
|
+
import '../../-internals/runtime/lib/mixins/-proxy.js';
|
|
7
|
+
import '../../enumerable/mutable.js';
|
|
8
|
+
import '../../-internals/runtime/lib/mixins/target_action_support.js';
|
|
9
|
+
import '../../-internals/runtime/lib/ext/rsvp.js';
|
|
10
|
+
import '../../-internals/environment/index.js';
|
|
11
|
+
|
|
12
|
+
const TYPE_ORDER = {
|
|
13
|
+
undefined: 0,
|
|
14
|
+
null: 1,
|
|
15
|
+
boolean: 2,
|
|
16
|
+
number: 3,
|
|
17
|
+
string: 4,
|
|
18
|
+
array: 5,
|
|
19
|
+
object: 6,
|
|
20
|
+
instance: 7,
|
|
21
|
+
function: 8,
|
|
22
|
+
class: 9,
|
|
23
|
+
date: 10,
|
|
24
|
+
regexp: 11,
|
|
25
|
+
filelist: 12,
|
|
26
|
+
error: 13
|
|
27
|
+
};
|
|
28
|
+
//
|
|
29
|
+
// the spaceship operator
|
|
30
|
+
//
|
|
31
|
+
// `. ___
|
|
32
|
+
// __,' __`. _..----....____
|
|
33
|
+
// __...--.'``;. ,. ;``--..__ .' ,-._ _.-'
|
|
34
|
+
// _..-''-------' `' `' `' O ``-''._ (,;') _,'
|
|
35
|
+
// ,'________________ \`-._`-','
|
|
36
|
+
// `._ ```````````------...___ '-.._'-:
|
|
37
|
+
// ```--.._ ,. ````--...__\-.
|
|
38
|
+
// `.--. `-` "INFINITY IS LESS ____ | |`
|
|
39
|
+
// `. `. THAN BEYOND" ,'`````. ; ;`
|
|
40
|
+
// `._`. __________ `. \'__/`
|
|
41
|
+
// `-:._____/______/___/____`. \ `
|
|
42
|
+
// | `._ `. \
|
|
43
|
+
// `._________`-. `. `.___
|
|
44
|
+
// SSt `------'`
|
|
45
|
+
function spaceship(a, b) {
|
|
46
|
+
// SAFETY: `Math.sign` always returns `-1` for negative, `0` for zero, and `1`
|
|
47
|
+
// for positive numbers. (The extra precision is useful for the way we use
|
|
48
|
+
// this in the context of `compare`.)
|
|
49
|
+
return Math.sign(a - b);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
@module @ember/utils
|
|
54
|
+
*/
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
Compares two javascript values and returns:
|
|
58
|
+
|
|
59
|
+
- -1 if the first is smaller than the second,
|
|
60
|
+
- 0 if both are equal,
|
|
61
|
+
- 1 if the first is greater than the second.
|
|
62
|
+
|
|
63
|
+
```javascript
|
|
64
|
+
import { compare } from '@ember/utils';
|
|
65
|
+
|
|
66
|
+
compare('hello', 'hello'); // 0
|
|
67
|
+
compare('abc', 'dfg'); // -1
|
|
68
|
+
compare(2, 1); // 1
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
If the types of the two objects are different precedence occurs in the
|
|
72
|
+
following order, with types earlier in the list considered `<` types
|
|
73
|
+
later in the list:
|
|
74
|
+
|
|
75
|
+
- undefined
|
|
76
|
+
- null
|
|
77
|
+
- boolean
|
|
78
|
+
- number
|
|
79
|
+
- string
|
|
80
|
+
- array
|
|
81
|
+
- object
|
|
82
|
+
- instance
|
|
83
|
+
- function
|
|
84
|
+
- class
|
|
85
|
+
- date
|
|
86
|
+
|
|
87
|
+
```javascript
|
|
88
|
+
import { compare } from '@ember/utils';
|
|
89
|
+
|
|
90
|
+
compare('hello', 50); // 1
|
|
91
|
+
compare(50, 'hello'); // -1
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
@method compare
|
|
95
|
+
@for @ember/utils
|
|
96
|
+
@static
|
|
97
|
+
@param {Object} v First value to compare
|
|
98
|
+
@param {Object} w Second value to compare
|
|
99
|
+
@return {Number} -1 if v < w, 0 if v = w and 1 if v > w.
|
|
100
|
+
@public
|
|
101
|
+
*/
|
|
102
|
+
function compare(v, w) {
|
|
103
|
+
if (v === w) {
|
|
104
|
+
return 0;
|
|
105
|
+
}
|
|
106
|
+
let type1 = typeOf(v);
|
|
107
|
+
let type2 = typeOf(w);
|
|
108
|
+
if (type1 === 'instance' && isComparable(v) && v.constructor.compare) {
|
|
109
|
+
return v.constructor.compare(v, w);
|
|
110
|
+
}
|
|
111
|
+
if (type2 === 'instance' && isComparable(w) && w.constructor.compare) {
|
|
112
|
+
// SAFETY: Multiplying by a negative just changes the sign
|
|
113
|
+
return w.constructor.compare(w, v) * -1;
|
|
114
|
+
}
|
|
115
|
+
let res = spaceship(TYPE_ORDER[type1], TYPE_ORDER[type2]);
|
|
116
|
+
if (res !== 0) {
|
|
117
|
+
return res;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// types are equal - so we have to check values now
|
|
121
|
+
switch (type1) {
|
|
122
|
+
case 'boolean':
|
|
123
|
+
return spaceship(Number(v), Number(w));
|
|
124
|
+
case 'number':
|
|
125
|
+
return spaceship(v, w);
|
|
126
|
+
case 'string':
|
|
127
|
+
return spaceship(v.localeCompare(w), 0);
|
|
128
|
+
case 'array':
|
|
129
|
+
{
|
|
130
|
+
let vLen = v.length;
|
|
131
|
+
let wLen = w.length;
|
|
132
|
+
let len = Math.min(vLen, wLen);
|
|
133
|
+
for (let i = 0; i < len; i++) {
|
|
134
|
+
let r = compare(v[i], w[i]);
|
|
135
|
+
if (r !== 0) {
|
|
136
|
+
return r;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
// all elements are equal now
|
|
141
|
+
// shorter array should be ordered first
|
|
142
|
+
return spaceship(vLen, wLen);
|
|
143
|
+
}
|
|
144
|
+
case 'instance':
|
|
145
|
+
if (isComparable(v) && v.compare) {
|
|
146
|
+
return v.compare(v, w);
|
|
147
|
+
}
|
|
148
|
+
return 0;
|
|
149
|
+
case 'date':
|
|
150
|
+
return spaceship(v.getTime(), w.getTime());
|
|
151
|
+
default:
|
|
152
|
+
return 0;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
function isComparable(value) {
|
|
156
|
+
return Comparable.detect(value);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export { compare as default };
|