feat(orchestrator): reduce NFS Module Federation sync size - #4024
Conversation
Changed Packages
|
PR Summary by QodoLazy-load form widget graph and inline icon to shrink Module Federation sync bundles
AI Description
Diagram
High-Level Assessment
Files changed (5)
|
|
Preparing PR labels... |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #4024 +/- ##
=======================================
Coverage 57.87% 57.88%
=======================================
Files 2393 2394 +1
Lines 95985 95998 +13
Branches 26803 26805 +2
=======================================
+ Hits 55551 55564 +13
Misses 38940 38940
Partials 1494 1494
*This pull request uses carry forward flags. Click here to find out more. Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
|
/cc @debsmita1 |
|
Tested on
Bundle impact (orchestrator-form-widgets
|
Lazy-load heavy dependencies to reduce sync bundle size: - Replace OrchestratorIcon (MUI SvgIcon) with inline SVG in alpha.tsx - Extract widget rendering into FormDecoratorContent and dynamically import it in FormWidgetsApi, moving the ~860 KB RJSF widget graph from sync to async Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove unnecessary `import React from 'react'` in FormDecoratorContent and FormWidgetsApi, use named imports instead - Move inline SVG from alpha.tsx back to OrchestratorIcon component, replacing MUI SvgIcon with plain <svg> element - Update API reports Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
e3e5bfd to
9bf2d58
Compare
|
@debsmita1 Updated the PR based on feedback, PTAL. |
- Use nullish coalescing assignment (??=) for contentPromise init - Extract LazyDecoratorContent to reduce function nesting depth Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
…veloper#4024) * feat(orchestrator): reduce NFS Module Federation sync size Lazy-load heavy dependencies to reduce sync bundle size: - Replace OrchestratorIcon (MUI SvgIcon) with inline SVG in alpha.tsx - Extract widget rendering into FormDecoratorContent and dynamically import it in FormWidgetsApi, moving the ~860 KB RJSF widget graph from sync to async Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: update API reports Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: address PR review feedback - Remove unnecessary `import React from 'react'` in FormDecoratorContent and FormWidgetsApi, use named imports instead - Move inline SVG from alpha.tsx back to OrchestratorIcon component, replacing MUI SvgIcon with plain <svg> element - Update API reports Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: resolve SonarCloud maintainability issues - Use nullish coalescing assignment (??=) for contentPromise init - Extract LazyDecoratorContent to reduce function nesting depth Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>




Summary
OrchestratorIcon(MUISvgIcon) with inline SVG inalpha.tsxto remove MUI component infrastructure from the sync bundleFormDecoratorContent.tsxand dynamicallyimport()it inFormWidgetsApi, moving the ~860 KB RJSF widget graph from sync to async — loaded only when a workflow form is openedBundle Impact
./alpha(NFS).(OFS)./alpha(NFS)Test plan
🤖 Generated with Claude Code