Skip to content

[Tree-widget]: move to MUI - #1748

Draft
MartynasStrazdas wants to merge 13 commits into
tree-widget/nextfrom
mast/move-to-mui
Draft

[Tree-widget]: move to MUI#1748
MartynasStrazdas wants to merge 13 commits into
tree-widget/nextfrom
mast/move-to-mui

Conversation

@MartynasStrazdas

@MartynasStrazdas MartynasStrazdas commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

No description provided.

// are not listed in tree-widget's peerDependencies and thus not covered by `collectDepsFromPackage`.
// Without deduping them, the build resolves them from both this app's and tree-widget's node_modules,
// producing distinct `RootContext` objects and a "RootContext is undefined" crash at runtime.
"@stratakit/foundations",

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@saskliutas not sure how we wanna handle this.

@saskliutas saskliutas Jul 28, 2026

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.

Why do we need to dedupe @stratakit/foundations? It should not be referenced directly by any of the packages (tree-widget, test-viewer, etc). Only stratakit/mui should be used. Isn't it enough to dedupe that?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

from what i gathered because we use sharedWorkspaceLockfile: false, we get one copy of foundations from tree-widget and one from test-viewer, both coming from their own stratakit/mui, when we dedupe as i understand we get one stratakit/mui with 2 foundations which both create a context. (to be able to dedupe it i need to keep foundations as a dep in test-viewer),

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.

I guess it's ok to add foundations as dep in test-viewer if that helps.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Tree-Widget Next benchmark

Benchmark suite Current: e1679d6 Previous: d60f4fd Deviation Status
models tree 50k 3D elements search > get search paths 846 ms 1094 ms -22.67%
models tree 50k 3D elements search > get search paths (P95 of main thread blocks) 55 ms 54 ms 1.85% 〰️
models tree 50k 3D elements search > load hierarchy from search paths 113507 ms 111828 ms 1.50% 〰️
models tree 50k 3D elements search > load hierarchy from search paths (P95 of main thread blocks) 35 ms 34 ms 2.94% 〰️
models tree 50k categories > collect nodes 3024 ms 3024 ms 0% 🟰
models tree 50k categories > collect nodes (P95 of main thread blocks) 99 ms 97 ms 2.06% 〰️
models tree 50k categories > validate initial visibility 1812 ms 1796 ms 0.89% 〰️
models tree 50k categories > validate initial visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k categories > change visibility 214 ms 217 ms -1.38% 〰️
models tree 50k categories > change visibility (P95 of main thread blocks) 66 ms 56 ms 17.86% 〰️
models tree 50k categories > validate changed visibility 2340 ms 2309 ms 1.34% 〰️
models tree 50k categories > validate changed visibility (P95 of main thread blocks) 22 ms 23 ms -4.35% 〰️
models tree 50k 3D elements > collect nodes 45047 ms 45440 ms -0.86% 〰️
models tree 50k 3D elements > collect nodes (P95 of main thread blocks) 52 ms 54 ms -3.70% 〰️
models tree 50k 3D elements > validate initial visibility 1512 ms 1451 ms 4.20% 〰️
models tree 50k 3D elements > validate initial visibility (P95 of main thread blocks) 71 ms 28 ms 153.57% 〰️
models tree 50k 3D elements > change model visibility 110 ms 108 ms 1.85% 〰️
models tree 50k 3D elements > change model visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k 3D elements > validate changed model visibility 2018 ms 2144 ms -5.88% 〰️
models tree 50k 3D elements > validate changed model visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k 3D elements > change category node visibility 439 ms 483 ms -9.11% 〰️
models tree 50k 3D elements > change category node visibility (P95 of main thread blocks) 27 ms 46 ms -41.30% 〰️
models tree 50k 3D elements > validate changed category visibility 1451 ms 1411 ms 2.83% 〰️
models tree 50k 3D elements > validate changed category visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k 3D elements > validate per-model category override 1434 ms 1390 ms 3.17% 〰️
models tree 50k 3D elements > validate per-model category override (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k 3D elements > change element visibility 38 ms 38 ms 0% 🟰
models tree 50k 3D elements > change element visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k 3D elements > validate changed element visibility 2230 ms 2118 ms 5.29% 〰️
models tree 50k 3D elements > validate changed element visibility (P95 of main thread blocks) 79 ms 39 ms 102.56% 〰️
models tree 50k 3D child elements with different categories and excluded classes > collect nodes 63069 ms 64280 ms -1.88% 〰️
models tree 50k 3D child elements with different categories and excluded classes > collect nodes (P95 of main thread blocks) 58 ms 57 ms 1.75% 〰️
models tree 50k 3D child elements with different categories and excluded classes > validate initial visibility 2000 ms 1979 ms 1.06% 〰️
models tree 50k 3D child elements with different categories and excluded classes > validate initial visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k 3D child elements with different categories and excluded classes > change visibility 52 ms 51 ms 1.96% 〰️
models tree 50k 3D child elements with different categories and excluded classes > change visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k 3D child elements with different categories and excluded classes > validate changed visibility 5237 ms 5603 ms -6.53% 〰️
models tree 50k 3D child elements with different categories and excluded classes > validate changed visibility (P95 of main thread blocks) 77 ms 62 ms 24.19% 〰️
models tree 50k 3D child elements with different categories and excluded classes > collect nodes 64327 ms 64280 ms 0.07% 〰️
models tree 50k 3D child elements with different categories and excluded classes > collect nodes (P95 of main thread blocks) 70 ms 57 ms 22.81% 〰️
models tree 50k 3D child elements with different categories and excluded classes > validate initial visibility 2250 ms 1979 ms 13.69% 🚨
models tree 50k 3D child elements with different categories and excluded classes > validate initial visibility (P95 of main thread blocks) 32 ms 0 ms 3200% 〰️
models tree 50k 3D child elements with different categories and excluded classes > change visibility 49 ms 51 ms -3.92% 〰️
models tree 50k 3D child elements with different categories and excluded classes > change visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree 50k 3D child elements with different categories and excluded classes > validate changed visibility 6895 ms 5603 ms 23.06% 🚨
models tree 50k 3D child elements with different categories and excluded classes > validate changed visibility (P95 of main thread blocks) 103 ms 62 ms 66.13% 〰️
categories tree 50k subCategories search > get search paths 1042 ms 1462 ms -28.73%
categories tree 50k subCategories search > get search paths (P95 of main thread blocks) 87 ms 84 ms 3.57% 〰️
categories tree 50k subCategories search > load hierarchy from search paths 5790 ms 5425 ms 6.73% 〰️
categories tree 50k subCategories search > load hierarchy from search paths (P95 of main thread blocks) 61 ms 51 ms 19.61% 〰️
categories tree 50k subCategories > collect nodes 5686 ms 5885 ms -3.38% 〰️
categories tree 50k subCategories > collect nodes (P95 of main thread blocks) 35 ms 35 ms 0% 🟰
categories tree 50k subCategories > validate initial visibility 999 ms 1038 ms -3.76% 〰️
categories tree 50k subCategories > validate initial visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
categories tree 50k subCategories > change visibility 345 ms 348 ms -0.86% 〰️
categories tree 50k subCategories > change visibility (P95 of main thread blocks) 0 ms 33 ms -100% 〰️
categories tree 50k subCategories > validate changed visibility 1043 ms 1105 ms -5.61% 〰️
categories tree 50k subCategories > validate changed visibility (P95 of main thread blocks) 25 ms 28 ms -10.71% 〰️
categories tree 50k categories and excluded classes > collect nodes 111379 ms 113304 ms -1.70% 〰️
categories tree 50k categories and excluded classes > collect nodes (P95 of main thread blocks) 129 ms 128 ms 0.78% 〰️
categories tree 50k categories and excluded classes > validate initial visibility 5703 ms 5481 ms 4.05% 〰️
categories tree 50k categories and excluded classes > validate initial visibility (P95 of main thread blocks) 85 ms 48 ms 77.08% 〰️
categories tree 50k categories and excluded classes > change visibility 778 ms 837 ms -7.05% 〰️
categories tree 50k categories and excluded classes > change visibility (P95 of main thread blocks) 52 ms 58 ms -10.34% 〰️
categories tree 50k categories and excluded classes > validate changed visibility 5494 ms 5525 ms -0.56% 〰️
categories tree 50k categories and excluded classes > validate changed visibility (P95 of main thread blocks) 34 ms 41 ms -17.07% 〰️
categories tree 50k categories and excluded classes > collect nodes 114001 ms 113304 ms 0.62% 〰️
categories tree 50k categories and excluded classes > collect nodes (P95 of main thread blocks) 169 ms 128 ms 32.03% 〰️
categories tree 50k categories and excluded classes > validate initial visibility 5622 ms 5481 ms 2.57% 〰️
categories tree 50k categories and excluded classes > validate initial visibility (P95 of main thread blocks) 51 ms 48 ms 6.25% 〰️
categories tree 50k categories and excluded classes > change visibility 1075 ms 837 ms 28.43% 🚨
categories tree 50k categories and excluded classes > change visibility (P95 of main thread blocks) 124 ms 58 ms 113.79% 🚨
categories tree 50k categories and excluded classes > validate changed visibility 8120 ms 5525 ms 46.97% 🚨
categories tree 50k categories and excluded classes > validate changed visibility (P95 of main thread blocks) 51 ms 41 ms 24.39% 〰️
classifications tree 50k classifications search > get search paths 2287 ms 2371 ms -3.54% 〰️
classifications tree 50k classifications search > get search paths (P95 of main thread blocks) 192 ms 193 ms -0.52% 〰️
classifications tree 50k classifications search > load hierarchy from search paths 63215 ms 62875 ms 0.54% 〰️
classifications tree 50k classifications search > load hierarchy from search paths (P95 of main thread blocks) 25 ms 23 ms 8.70% 〰️
classifications tree 50k classifications and excluded classes > collect nodes 31934 ms 33276 ms -4.03% 〰️
classifications tree 50k classifications and excluded classes > collect nodes (P95 of main thread blocks) 45 ms 71 ms -36.62% 〰️
classifications tree 50k classifications and excluded classes > validate initial visibility 2815 ms 2774 ms 1.48% 〰️
classifications tree 50k classifications and excluded classes > validate initial visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
classifications tree 50k classifications and excluded classes > change visibility 152 ms 169 ms -10.06% 〰️
classifications tree 50k classifications and excluded classes > change visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
classifications tree 50k classifications and excluded classes > validate changed visibility 3399 ms 3364 ms 1.04% 〰️
classifications tree 50k classifications and excluded classes > validate changed visibility (P95 of main thread blocks) 79 ms 85 ms -7.06% 〰️
classifications tree 50k classifications and excluded classes > collect nodes 32642 ms 33276 ms -1.91% 〰️
classifications tree 50k classifications and excluded classes > collect nodes (P95 of main thread blocks) 44 ms 71 ms -38.03% 〰️
classifications tree 50k classifications and excluded classes > validate initial visibility 2724 ms 2774 ms -1.80% 〰️
classifications tree 50k classifications and excluded classes > validate initial visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
classifications tree 50k classifications and excluded classes > change visibility 148 ms 169 ms -12.43% 〰️
classifications tree 50k classifications and excluded classes > change visibility (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
classifications tree 50k classifications and excluded classes > validate changed visibility 3241 ms 3364 ms -3.66% 〰️
classifications tree 50k classifications and excluded classes > validate changed visibility (P95 of main thread blocks) 46 ms 85 ms -45.88% 〰️

This comment was automatically generated by workflow using github-action-benchmark.

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.

2 participants