Fix Workbench package resolution and runtime dependencies
>>> [!note] Migrated issue
<!-- Drupal.org comment -->
<!-- Migrated from issue #3580581. -->
Reported by: [balintbrews](https://www.drupal.org/user/613760)
Related to !776
>>>
<h3>Overview</h3>
<p>Installing <code>@drupal-canvas/workbench</code> in an external project exposes several packaging and runtime issues:</p>
<ul>
<li>Workbench aliases <code>react</code>, <code>react-dom</code>, and JSX runtime imports to hardcoded package-local <code>node_modules</code> paths, which breaks when npm hoists or lays out dependencies differently.</li>
<li>The published client CSS imports <code>shadcn/tailwind.css</code>, which is not a reliable runtime dependency for consumers and fails in installed projects.</li>
<li>Base UI pulls <code>use-sync-external-store/shim</code> CommonJS subpaths from ESM files, and Workbench does not force Vite to prebundle them, which causes browser-side named export errors.</li>
<li>Workbench can end up mixing incompatible <code>react</code> and <code>react-dom</code> versions at runtime, triggering React’s exact-version check.</li>
</ul>
<h3>Proposed resolution</h3>
<ul>
<li>Resolve React package roots with package resolution logic instead of hardcoded filesystem paths.</li>
<li>Keep Workbench’s React runtime self-contained and pin <code>react</code> and <code>react-dom</code> to the same exact version.</li>
<li>Vendor the required shadcn Tailwind helper CSS into Workbench and import the local file in the published client CSS.</li>
<li>Add the required <code>optimizeDeps.include</code> entries so Vite prebundles the <code>use-sync-external-store</code> shim subpaths.</li>
<li>Bump the Workbench package version after these fixes.</li>
</ul>
<h3>User interface changes</h3>
<p>n/a</p>
issue