<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to Wrap a Newer Widget/Component in an Older Framework in Experience Builder Custom Widgets</title>
    <link>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1698123#M707</link>
    <description>&lt;P&gt;After beating my head against this wall for a while, I consistently get runtime import errors when I try to load something as simple as the basemap toggle widget from another version of the SDK. I'll leave this open just in case some brave soul ever figures this out, but I'll stick to making simpler widgets and maybe work myself up to a dead-simple bulk editing widget that uses the bundled SDK. Thanks again for all your help Jeff!&lt;/P&gt;</description>
    <pubDate>Thu, 23 Apr 2026 21:15:49 GMT</pubDate>
    <dc:creator>DavidSolari</dc:creator>
    <dc:date>2026-04-23T21:15:49Z</dc:date>
    <item>
      <title>How to Wrap a Newer Widget/Component in an Older Framework</title>
      <link>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1697802#M702</link>
      <description>&lt;P&gt;I need to wrap an Editor widget from a newer release of the JavaScript SDK in a widget targeting an older version of Experience Builder so my org can migrate from Web Appbuilder to Experience Builder before we upgrade to Enterprise 12.1. Unfortunately, I'm at my wit's ends here, I can't even get a simple map component working in a widget!&lt;/P&gt;&lt;P&gt;Attached is my current widget folder, run npm update to grab the dependencies and then combine it with Experience Builder Developer Edition 1.17. I've aliased the npm packages as @arcgis434/map-components,&amp;nbsp;@arcgis434/core and&amp;nbsp;@esri434/calcite-components to avoid grabbing the default packages, not sure if that works under ExB. The settings files are all copy-pasted from the built-in Editor widget just to get something working, the meat is in this minimal widget that tries to load a hardcoded map as a test:&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;export default function EditWidget(props: AllWidgetProps&amp;lt;IMConfig&amp;gt;) {
  const [jmv, setJmv] = React.useState&amp;lt;JimuMapView&amp;gt;(null);
  const mapId = props.useMapWidgetIds?.[0];

  const onActiveViewChange = (jmv: JimuMapView) =&amp;gt; {
    setJmv(jmv)
  }

  return (
    &amp;lt;div className="widget-editor-434" style={{height: "100%", width: "100%"}}&amp;gt;
      {mapId != undefined ?
        &amp;lt;JimuMapViewComponent useMapWidgetId={mapId} onActiveViewChange={onActiveViewChange} /&amp;gt;
        : &amp;lt;p&amp;gt;No map selected.&amp;lt;/p&amp;gt;}
      {jmv != null ?
        &amp;lt;arcgis-map item-id="f2e9b762544945f390ca4ac3671cfa72"&amp;gt;&amp;lt;/arcgis-map&amp;gt;
        : &amp;lt;p&amp;gt;Map not loaded.&amp;lt;/p&amp;gt;}
    &amp;lt;/div&amp;gt;
  )
}&lt;/LI-CODE&gt;&lt;P&gt;On my end this renders the placeholder elements if a map isn't selected, but renders an empty map component otherwise. Am I missing something small? Am I barking up the wrong tree? Will trying to mix JavaScript SDK components like this even work??&lt;/P&gt;</description>
      <pubDate>Wed, 22 Apr 2026 20:33:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1697802#M702</guid>
      <dc:creator>DavidSolari</dc:creator>
      <dc:date>2026-04-22T20:33:55Z</dc:date>
    </item>
    <item>
      <title>Re: How to Wrap a Newer Widget/Component in an Older Framework</title>
      <link>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1697812#M703</link>
      <description>&lt;P&gt;I feel like I need a bit more information to fully answer this question. What version of Enterprise are you on and what are you trying to get from importing an Editor that you can't get already?&lt;/P&gt;&lt;P&gt;If you need the Editor Component, then you should just import the Editor Component (or Widget), there is no need to import a Map Component. Looking at your code, I see two potential issues with the Map Component you are importing.&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;You may need to use CSS to give it a height and width.&lt;/LI&gt;&lt;LI&gt;You might need to use OAuth 2.0 so that the Portal authorizes you.&amp;nbsp;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Here's my primer on using a SDK Component in an EXB Widget.&amp;nbsp;&lt;A href="https://community.esri.com/t5/experience-builder-tips-and-tricks/making-a-basemap-toggle-widget-using-components/ba-p/1620831" target="_blank"&gt;https://community.esri.com/t5/experience-builder-tips-and-tricks/making-a-basemap-toggle-widget-using-components/ba-p/1620831&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Apr 2026 21:10:20 GMT</pubDate>
      <guid>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1697812#M703</guid>
      <dc:creator>JeffreyThompson2</dc:creator>
      <dc:date>2026-04-22T21:10:20Z</dc:date>
    </item>
    <item>
      <title>Re: How to Wrap a Newer Widget/Component in an Older Framework</title>
      <link>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1697850#M704</link>
      <description>&lt;UL&gt;&lt;LI&gt;Enterprise 11.5&lt;/LI&gt;&lt;LI&gt;The multiple feature editing workflows from the newer SDKs. We have dozens of apps with the WAB batch editing widget that we'd have to panic-port when we move to 12.1 so I want to provide a workaround.&lt;/LI&gt;&lt;LI&gt;The map component is just for testing if anything will render, the final product will wrap the editor widget/component. I figured I'd start with the component used in nearly every code sample, just to avoid editor-specific issues for the time being.&lt;/LI&gt;&lt;LI&gt;The map component I'm trying to import is the standard map component from all the SDK demos. The item id I'm providing is from a sample so it's publicly available. I've never seen a demo where the map component's CSS must be overridden to display properly, and when I check devtools the computed width and height are "auto" which means it should fill my parent div if there's anything to render.&lt;/LI&gt;&lt;LI&gt;Your linked post looks fantastic (I can't believe none of my Google searches pulled it up) and I'll try and get your example implemented on my end just to see if there's any build/env issues. I did notice it's pulling in the bundled SDK's widgets and components, have you tried anything that involves using another version of the SDK like I'll need to do?&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Wed, 22 Apr 2026 22:19:35 GMT</pubDate>
      <guid>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1697850#M704</guid>
      <dc:creator>DavidSolari</dc:creator>
      <dc:date>2026-04-22T22:19:35Z</dc:date>
    </item>
    <item>
      <title>Re: How to Wrap a Newer Widget/Component in an Older Framework</title>
      <link>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1697904#M705</link>
      <description>&lt;P&gt;I really don't know if it's possible to import a Component from a newer version of the SDK and get it to work in Experience Builder. Even if you do, the compatibility issues would be unpredictable. The Editor Component in particular probably won't work because the SDK will still need to be able to receive the edits.&lt;/P&gt;&lt;P&gt;The Map Component is actually one of the more difficult Components to work with because it needs Portal authentication and it has no inherit height. This little block of CSS or something like it is actually necessary for it to render.&amp;nbsp;&lt;A href="https://developers.arcgis.com/javascript/latest/get-started/#configure-css" target="_blank"&gt;https://developers.arcgis.com/javascript/latest/get-started/#configure-css&lt;/A&gt;&lt;/P&gt;&lt;P&gt;I am currently writing a blog post about a hack I found. Look for more details later today, but the short version is if you put an html page in &lt;A href="https://github.com/Esri/arcgis-experience-builder-sdk-resources/tree/master/widgets/use-assets" target="_self"&gt;the src/runtime/assets folder&lt;/A&gt;. You have a clean sheet of HTML you can do whatever you want with. Maybe you could build around that concept. Although at that point, you may be better just using a separate webpage outside Experience Builder entirely.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Also, consider if the Web Editor could meet your needs.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Apr 2026 12:39:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1697904#M705</guid>
      <dc:creator>JeffreyThompson2</dc:creator>
      <dc:date>2026-04-23T12:39:50Z</dc:date>
    </item>
    <item>
      <title>Re: How to Wrap a Newer Widget/Component in an Older Framework</title>
      <link>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1698123#M707</link>
      <description>&lt;P&gt;After beating my head against this wall for a while, I consistently get runtime import errors when I try to load something as simple as the basemap toggle widget from another version of the SDK. I'll leave this open just in case some brave soul ever figures this out, but I'll stick to making simpler widgets and maybe work myself up to a dead-simple bulk editing widget that uses the bundled SDK. Thanks again for all your help Jeff!&lt;/P&gt;</description>
      <pubDate>Thu, 23 Apr 2026 21:15:49 GMT</pubDate>
      <guid>https://community.esri.com/t5/experience-builder-custom-widgets/how-to-wrap-a-newer-widget-component-in-an-older/m-p/1698123#M707</guid>
      <dc:creator>DavidSolari</dc:creator>
      <dc:date>2026-04-23T21:15:49Z</dc:date>
    </item>
  </channel>
</rss>

