Skip to content

Test new outlet#4

Open
BobrImperator wants to merge 13 commits into
rfc-1169-route-managerfrom
test-new-outlet
Open

Test new outlet#4
BobrImperator wants to merge 13 commits into
rfc-1169-route-managerfrom
test-new-outlet

Conversation

@BobrImperator

Copy link
Copy Markdown

No description provided.

/**
* Appends `into` without clearing the target first. Mimics the `appendTo` behavior for classic components.
*/
appendIntoTarget?: boolean;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this will need a bunch more tests <3

in particular:

renderCompnoent(A, { appendTo: IntoTarget })
renderComponent(B, { appendTo: IntoTarget })

and do the reactivity of A and B stay in the same location and not re-order themselves?
(This was the issue I ran in to during implementation, in that whatever was updated last would become last in DOM-order)

(also, I think this behavior will need its own RFC, describing the stability of render-order (and update-order), and probably appendTo rather than a booling, imo -- boolean configurable options are a bit of an ick for me)

@github-actions

github-actions Bot commented Jul 16, 2026

Copy link
Copy Markdown

📊 Size report

Tarball size1.2 MB1.2 MB

dist/dev   -0.17%↓

File Before (Size / Brotli) After (Size / Brotli)
./packages/@ember/-internals/routing/route-managers/classic/manager.js 12.3 kB / 3.4 kB 27%↑15.6 kB / 31%↑4.4 kB
./packages/@ember/-internals/routing/route-managers/classic/outlet.js 10.5 kB / 3.1 kB
./packages/@ember/-internals/routing/route-managers/root-outlet.js 4.3 kB / 1.5 kB
./packages/@ember/application/instance.js 15.9 kB / 4.4 kB -2.09%↓15.6 kB / -2.46%↓4.3 kB
./packages/@ember/routing/router.js 55.5 kB / 12.9 kB -1.59%↓54.6 kB / -1.86%↓12.7 kB
./packages/@ember/template-compiler/lib/plugins/transform-wrap-mount-and-outlet.js 1.1 kB / 470 B 18%↑1.3 kB / 3%↑484 B
./packages/shared-chunks/arguments-{hash}.js 60.7 kB / 11.8 kB 2%↑61.7 kB / 1%↑12 kB
./packages/shared-chunks/curried-value-Cby2_e8z.js 2 kB / 644 B
./packages/shared-chunks/index-{hash}.js 62.6 kB / 12.5 kB -22.8%↓48.3 kB / -1.13%↓12.4 kB
./packages/shared-chunks/outlet-C0pW5fhs.js 4.6 kB / 1.5 kB
./packages/shared-chunks/route-template-BS3VHfuK.js 3 kB / 1.1 kB
./packages/shared-chunks/setup-{hash}.js 31.6 kB / 8.6 kB -42.9%↓18 kB / -41.2%↓5 kB
./packages/shared-chunks/untouchable-this-C3bPgjyD.js 931 B / 349 B
Total (Includes all files) 2.1 MB / 513.5 kB -0.17%↓2.1 MB / -0.13%↓512.8 kB

dist/prod   -0.15%↓

File Before (Size / Brotli) After (Size / Brotli)
./packages/@ember/-internals/routing/route-managers/classic/manager.js 11.2 kB / 3 kB 29%↑14.5 kB / 34%↑4.1 kB
./packages/@ember/-internals/routing/route-managers/classic/outlet.js 9.5 kB / 2.9 kB
./packages/@ember/-internals/routing/route-managers/root-outlet.js 4.1 kB / 1.4 kB
./packages/@ember/application/instance.js 14.9 kB / 4.2 kB -2.22%↓14.6 kB / -2.24%↓4.1 kB
./packages/@ember/routing/router.js 46.7 kB / 11.3 kB -1.12%↓46.2 kB / -1.63%↓11.1 kB
./packages/@ember/template-compiler/lib/plugins/transform-wrap-mount-and-outlet.js 1.1 kB / 470 B 18%↑1.3 kB / 3%↑484 B
./packages/shared-chunks/arguments-{hash}.js 56.5 kB / 10.9 kB 3%↑58.4 kB / 4%↑11.3 kB
./packages/shared-chunks/cache-{hash}.js 697 B / 258 B 1,310%↑9.9 kB / 972%↑2.8 kB
./packages/shared-chunks/curried-value-Cby2_e8z.js 2 kB / 644 B
./packages/shared-chunks/outlet-KJduXafH.js 4.3 kB / 1.4 kB
./packages/shared-chunks/route-template-IXvqX0z1.js 3 kB / 1.1 kB
./packages/shared-chunks/setup-{hash}.js 27.6 kB / 7.6 kB -44%↓15.5 kB / -42.6%↓4.4 kB
Total (Includes all files) 1.9 MB / 470.6 kB -0.15%↓1.9 MB / -0.16%↓469.8 kB

smoke-tests/v2-app-template/dist   0.2%↑

File Before (Size / Brotli) After (Size / Brotli)
./assets/main-{hash}.js 315.2 kB / 84.6 kB 0.2%↑315.7 kB / -0.01%↓84.6 kB
Total (Includes all files) 357.1 kB / 97.4 kB 0.2%↑357.6 kB / 0.03%↑97.4 kB

smoke-tests/v2-app-hello-world-template/dist   0.06%↑

File Before (Size / Brotli) After (Size / Brotli)
Total (Includes all files) 132.6 kB / 37.1 kB 0.06%↑132.6 kB / -0.03%↓37.1 kB

🤖 This report was automatically generated by wyvox/pkg-size

@@ -3,14 +3,14 @@ import type { Nullable } from '@ember/-internals/utility-types';
import { assert } from '@ember/debug';
import type EngineInstance from '@ember/engine/instance';

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

move to the route-managers/classic/ directory - this is where its only consumers are

@@ -1,5 +1,5 @@
import { precompileTemplate } from '@ember/template-compilation';
import { outletHelper } from '../syntax/outlet';

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

as above

let inExpected = key in (expected as object);
let inActual = key in (actual as object);

if (key !== 'outlet') {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should probably remove this "ignore" of the outlet key 🤔 i don't know how we're going to be able to test it properly but at least it won't crash the browser while you're working on this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants