@trops/dash-core 0.1.617 → 0.1.618

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -24671,6 +24671,102 @@ var WidgetNotFound = function WidgetNotFound(_ref) {
24671
24671
  });
24672
24672
  };
24673
24673
 
24674
+ /**
24675
+ * scopedComponentId.js
24676
+ *
24677
+ * Single source of truth for the canonical scoped component id used by
24678
+ * ComponentManager registration, layout items, and publish-time scope
24679
+ * remap. Format: `scope.packageName.ComponentName`.
24680
+ *
24681
+ * Why a 3-part dotted form (and not `@scope/pkg.Component`)?
24682
+ * - Matches existing `config.id` shape that `.dash.js` files already
24683
+ * set when authored explicitly (see ComponentManager.registerWidget:
24684
+ * `const registrationKey = config.id || widgetKey;`).
24685
+ * - Trivial to parse (`split(".")` — three parts, ordered).
24686
+ * - Avoids slashes inside object keys, which some downstream serializers
24687
+ * (older dash-registry indexers) historically choked on.
24688
+ *
24689
+ * The upstream package id may arrive in either of two shapes:
24690
+ * - "@scope/pkg" (npm-style)
24691
+ * - "scope/pkg" (bare scope)
24692
+ * Both produce the same scoped id.
24693
+ */
24694
+
24695
+ /**
24696
+ * Build the canonical scoped component id from a package name and a
24697
+ * bare component name.
24698
+ *
24699
+ * @param {string} packageName e.g. "@ai-built/pipeline" or "ai-built/pipeline"
24700
+ * @param {string} componentName e.g. "ProspectListColumn"
24701
+ * @returns {string} e.g. "ai-built.pipeline.ProspectListColumn"
24702
+ */
24703
+ function makeScopedComponentId(packageName, componentName) {
24704
+ if (!componentName) return "";
24705
+ if (!packageName) return componentName;
24706
+ var cleaned = String(packageName).replace(/^@/, "").replace(/\//g, ".");
24707
+ return "".concat(cleaned, ".").concat(componentName);
24708
+ }
24709
+
24710
+ /**
24711
+ * Parse a scoped component id into its three parts. Returns null when
24712
+ * the input isn't a 3-part dotted id (e.g. legacy bare names).
24713
+ *
24714
+ * @param {string} scopedId
24715
+ * @returns {{scope: string, packageName: string, componentName: string} | null}
24716
+ */
24717
+ function parseScopedComponentId(scopedId) {
24718
+ if (typeof scopedId !== "string") return null;
24719
+ var parts = scopedId.split(".");
24720
+ if (parts.length !== 3) return null;
24721
+ return {
24722
+ scope: parts[0],
24723
+ packageName: parts[1],
24724
+ componentName: parts[2]
24725
+ };
24726
+ }
24727
+
24728
+ /**
24729
+ * True when `s` is a canonical 3-part scoped id (`scope.package.Component`)
24730
+ * rather than a bare component name or an `@scope/pkg` form.
24731
+ */
24732
+ function isScopedComponentId(s) {
24733
+ return typeof s === "string" && s.split(".").length === 3 && !s.includes("/");
24734
+ }
24735
+
24736
+ /**
24737
+ * Resolve the widgetId the permission gate should key grants by.
24738
+ *
24739
+ * Grants are written (preflight consent, Settings → grants,
24740
+ * `expandToComponentRows`) under the canonical SCOPED id
24741
+ * (`scope.package.Component`). At render time the layout item passes that
24742
+ * scoped id as the component, but a bare `params.name` (the component's
24743
+ * short name) used to shadow it — so the gate looked up a bare key, missed
24744
+ * the grant, and re-prompted per call. Prefer a scoped id among the
24745
+ * candidates so the gate's lookup hits the grant the user already approved;
24746
+ * fall back to the legacy behavior for built-in/bare widgets.
24747
+ *
24748
+ * @param {string} component the component id from the layout item
24749
+ * @param {string} [paramsName] params.name on the layout item
24750
+ * @returns {string}
24751
+ */
24752
+ function resolveGateWidgetId(component, paramsName) {
24753
+ if (isScopedComponentId(component)) return component;
24754
+ if (isScopedComponentId(paramsName)) return paramsName;
24755
+ return paramsName || component;
24756
+ }
24757
+
24758
+ /**
24759
+ * Pull the bare component name from a scoped or unscoped id.
24760
+ *
24761
+ * @param {string} idOrName
24762
+ * @returns {string}
24763
+ */
24764
+ function bareComponentName(idOrName) {
24765
+ if (typeof idOrName !== "string") return "";
24766
+ var parts = idOrName.split(".");
24767
+ return parts[parts.length - 1] || "";
24768
+ }
24769
+
24674
24770
  function ownKeys$O(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24675
24771
  function _objectSpread$O(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$O(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$O(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24676
24772
  /**
@@ -25136,10 +25232,13 @@ var WidgetRenderer = function WidgetRenderer(_ref) {
25136
25232
  // MountTokenWrapper owns the per-widget mount-token IPC
25137
25233
  // (register at mount, unregister at unmount) and provides the
25138
25234
  // WidgetContext value (widgetData + bound api) to descendants.
25139
- // The widgetId used for registration is the package name —
25140
- // that's what grants are keyed by, so the gate's
25141
- // token → widgetId resolution finds the right grant.
25142
- var widgetIdForGate = (params === null || params === void 0 ? void 0 : params.name) || component;
25235
+ // The widgetId must match the canonical SCOPED id grants are keyed
25236
+ // by (scope.package.Component) — the same id the preflight consent,
25237
+ // Settings → grants, and expandToComponentRows write under. A bare
25238
+ // `params.name` used to shadow the scoped `component` here, so the
25239
+ // gate looked up a bare key, missed the approved grant, and
25240
+ // re-prompted per call (the ~20 popups after a package update).
25241
+ var widgetIdForGate = resolveGateWidgetId(component, params === null || params === void 0 ? void 0 : params.name);
25143
25242
  return /*#__PURE__*/jsx(MountTokenWrapper, {
25144
25243
  widgetId: widgetIdForGate,
25145
25244
  widgetData: widgetData,
@@ -32265,72 +32364,6 @@ function resolveComponentKey(componentMap, component) {
32265
32364
  return component in componentMap ? component : null;
32266
32365
  }
32267
32366
 
32268
- /**
32269
- * scopedComponentId.js
32270
- *
32271
- * Single source of truth for the canonical scoped component id used by
32272
- * ComponentManager registration, layout items, and publish-time scope
32273
- * remap. Format: `scope.packageName.ComponentName`.
32274
- *
32275
- * Why a 3-part dotted form (and not `@scope/pkg.Component`)?
32276
- * - Matches existing `config.id` shape that `.dash.js` files already
32277
- * set when authored explicitly (see ComponentManager.registerWidget:
32278
- * `const registrationKey = config.id || widgetKey;`).
32279
- * - Trivial to parse (`split(".")` — three parts, ordered).
32280
- * - Avoids slashes inside object keys, which some downstream serializers
32281
- * (older dash-registry indexers) historically choked on.
32282
- *
32283
- * The upstream package id may arrive in either of two shapes:
32284
- * - "@scope/pkg" (npm-style)
32285
- * - "scope/pkg" (bare scope)
32286
- * Both produce the same scoped id.
32287
- */
32288
-
32289
- /**
32290
- * Build the canonical scoped component id from a package name and a
32291
- * bare component name.
32292
- *
32293
- * @param {string} packageName e.g. "@ai-built/pipeline" or "ai-built/pipeline"
32294
- * @param {string} componentName e.g. "ProspectListColumn"
32295
- * @returns {string} e.g. "ai-built.pipeline.ProspectListColumn"
32296
- */
32297
- function makeScopedComponentId(packageName, componentName) {
32298
- if (!componentName) return "";
32299
- if (!packageName) return componentName;
32300
- var cleaned = String(packageName).replace(/^@/, "").replace(/\//g, ".");
32301
- return "".concat(cleaned, ".").concat(componentName);
32302
- }
32303
-
32304
- /**
32305
- * Parse a scoped component id into its three parts. Returns null when
32306
- * the input isn't a 3-part dotted id (e.g. legacy bare names).
32307
- *
32308
- * @param {string} scopedId
32309
- * @returns {{scope: string, packageName: string, componentName: string} | null}
32310
- */
32311
- function parseScopedComponentId(scopedId) {
32312
- if (typeof scopedId !== "string") return null;
32313
- var parts = scopedId.split(".");
32314
- if (parts.length !== 3) return null;
32315
- return {
32316
- scope: parts[0],
32317
- packageName: parts[1],
32318
- componentName: parts[2]
32319
- };
32320
- }
32321
-
32322
- /**
32323
- * Pull the bare component name from a scoped or unscoped id.
32324
- *
32325
- * @param {string} idOrName
32326
- * @returns {string}
32327
- */
32328
- function bareComponentName(idOrName) {
32329
- if (typeof idOrName !== "string") return "";
32330
- var parts = idOrName.split(".");
32331
- return parts[parts.length - 1] || "";
32332
- }
32333
-
32334
32367
  var _componentMap = {};
32335
32368
  var _containerComponent = null;
32336
32369
  var _gridContainerComponent = null;
@@ -69097,5 +69130,5 @@ function computeDashboardPreflight(_ref) {
69097
69130
 
69098
69131
  ComponentManager.registerContainerTypes(LayoutContainer, LayoutGridContainer);
69099
69132
 
69100
- export { ALGOLIA_ANALYTICS_FOR_QUERY, ALGOLIA_ANALYTICS_FOR_QUERY_COMPLETE, ALGOLIA_ANALYTICS_FOR_QUERY_ERROR, ALGOLIA_LIST_INDICES, ALGOLIA_LIST_INDICES_COMPLETE, ALGOLIA_LIST_INDICES_ERROR, AVAILABLE_COLORS, AddMenuItemModal, AdvancedMcpConfig, AppContext, AppSettingsModal, AppThemeScope, AppWrapper, CHOOSE_FILE, CHOOSE_FILE_COMPLETE, CHOOSE_FILE_ERROR, ChatCore, ChatInput, ChatMessages, ColorModel, ComponentConfigModel, ComponentManager, ContextModel, DATA_JSON_TO_CSV_FILE, DATA_JSON_TO_CSV_FILE_COMPLETE, DATA_JSON_TO_CSV_FILE_ERROR, DATA_JSON_TO_CSV_STRING, DATA_JSON_TO_CSV_STRING_COMPLETE, DATA_JSON_TO_CSV_STRING_ERROR, DATA_READ_FROM_FILE, DATA_READ_FROM_FILE_COMPLETE, DATA_READ_FROM_FILE_ERROR, DATA_SAVE_TO_FILE, DATA_SAVE_TO_FILE_COMPLETE, DATA_SAVE_TO_FILE_ERROR, DashCommandPalette, DashNavbar, DashSidebar, DashTabBar, DashboardStage as Dashboard, DashboardActionsApi, DashboardApi, DashboardContext, DashboardFooter, DashboardHeader, DashboardMenuItem, DashboardModel, DashboardMonitor, DashboardPublisher, DashboardStage, DashboardThemeProvider, DashboardWizardModal, DashboardWrapper, ElectronDashboardApi, ErrorBoundary, ExternalWidget, GRID_CELL_WIDGET_TYPE, HARMONY_STRATEGIES, LAYOUT_LIST, LAYOUT_LIST_COMPLETE, LAYOUT_LIST_ERROR, Layout, LayoutBuilder, LayoutBuilderAddItemModal, LayoutBuilderConfigContainerMenuItem, LayoutBuilderConfigMenuItem, LayoutBuilderConfigModal, LayoutBuilderEditItemModal, LayoutBuilderEventModal, LayoutBuilderGridItem, LayoutContainer, LayoutDragBuilder, LayoutDragBuilderEdit, LayoutGridContainer, LayoutManagerModal, LayoutModel, LayoutQuickAddMenu, MCP_AUTHORIZE_COMPLETE, MCP_AUTHORIZE_ERROR, MCP_CALL_TOOL_COMPLETE, MCP_CALL_TOOL_ERROR, MCP_GET_CATALOG_COMPLETE, MCP_GET_CATALOG_ERROR, MCP_LIST_RESOURCES_COMPLETE, MCP_LIST_RESOURCES_ERROR, MCP_LIST_TOOLS_COMPLETE, MCP_LIST_TOOLS_ERROR, MCP_READ_RESOURCE_COMPLETE, MCP_READ_RESOURCE_ERROR, MCP_RUN_AUTH_COMPLETE, MCP_RUN_AUTH_ERROR, MCP_SERVER_STATUS_COMPLETE, MCP_SERVER_STATUS_ERROR, MCP_START_SERVER_COMPLETE, MCP_START_SERVER_ERROR, MCP_STOP_SERVER_COMPLETE, MCP_STOP_SERVER_ERROR, MENU_ITEMS_DELETE, MENU_ITEMS_DELETE_COMPLETE, MENU_ITEMS_DELETE_ERROR, MENU_ITEMS_LIST, MENU_ITEMS_LIST_COMPLETE, MENU_ITEMS_LIST_ERROR, MENU_ITEMS_SAVE, MENU_ITEMS_SAVE_COMPLETE, MENU_ITEMS_SAVE_ERROR, MainMenu, MainMenuItem, MainMenuSection, MarkdownFormEditor, McpServerPicker, MenuItemModel, MenuSlideOverlay, MergeCellsModal, MessageBubble, MissingProviderPrompt, MockDashboardApi, PROVIDER_DELETE_COMPLETE, PROVIDER_DELETE_ERROR, PROVIDER_GET_COMPLETE, PROVIDER_GET_ERROR, PROVIDER_LIST_COMPLETE, PROVIDER_LIST_ERROR, PROVIDER_SAVE_COMPLETE, PROVIDER_SAVE_ERROR, PageTabBar, PanelCode, PanelEditItem, PanelEditItemHandlers, PanelEditItemNotifications, PanelEditItemProviders, PinnedSidebar, ProviderContext, ProviderErrorBoundary, ProviderForm, ProviderSelector, SECURE_STORAGE_ENCRYPT_STRING, SECURE_STORAGE_ENCRYPT_STRING_COMPLETE, SECURE_STORAGE_ENCRYPT_STRING_ERROR, SECURE_STORE_ENCRYPTION_CHECK, SECURE_STORE_ENCRYPTION_CHECK_COMPLETE, SECURE_STORE_ENCRYPTION_CHECK_ERROR, SECURE_STORE_GET_DATA, SECURE_STORE_GET_DATA_COMPLETE, SECURE_STORE_GET_DATA_ERROR, SECURE_STORE_SET_DATA, SECURE_STORE_SET_DATA_COMPLETE, SECURE_STORE_SET_DATA_ERROR, SETTINGS_GET, SETTINGS_GET_COMPLETE, SETTINGS_GET_ERROR, SETTINGS_SAVE, SETTINGS_SAVE_COMPLETE, SETTINGS_SAVE_ERROR, SIDEBAR_WIDGET_TYPE, SettingsModel, SideMenu, SplitCellModal, StreamingText, THEME_DELETE, THEME_DELETE_COMPLETE, THEME_DELETE_ERROR, THEME_EXTRACT_FROM_URL, THEME_EXTRACT_FROM_URL_COMPLETE, THEME_EXTRACT_FROM_URL_ERROR, THEME_LIST, THEME_LIST_COMPLETE, THEME_LIST_ERROR, THEME_MAP_PALETTE, THEME_MAP_PALETTE_COMPLETE, THEME_MAP_PALETTE_ERROR, THEME_SAVE, THEME_SAVE_COMPLETE, THEME_SAVE_ERROR, ThemeApi, ThemeColorDots, ThemeManagerModal, ThemeModel, ThemeWrapper, ToolCallBlock, ToolSelector, WELCOME_STORAGE_KEY, WORKSPACE_DELETE, WORKSPACE_DELETE_COMPLETE, WORKSPACE_DELETE_ERROR, WORKSPACE_LIST, WORKSPACE_LIST_COMPLETE, WORKSPACE_LIST_ERROR, WORKSPACE_SAVE, WORKSPACE_SAVE_COMPLETE, WORKSPACE_SAVE_ERROR, WebDashboardApi, WelcomePrompt, Widget, WidgetApi, WidgetConfigPanel, WidgetContext, WidgetFactory, WidgetNotFound, WidgetPopoutStage, WidgetProviderWrapper, WidgetSidebar, WizardCustomizeStep, WizardDiscoverStep, Workspace, WorkspaceContext, WorkspaceFooter, WorkspaceMenu, WorkspaceModel, WorkspaceScopeContext, addChildToLayoutItem, addItemToItemLayout, bareComponentName, buildMcpConfigFromOverrides, canHaveChildren, changeDirectionForLayoutItem, computeDashboardPreflight, createProviderRegistry, deriveFormFields, envMappingToRows, evaluateBundle, extractWidgetConfigs, formStateToMcpJson, formatFieldName, generateCustomTheme, generateHarmonyTheme, generateRandomHexTheme, generateRandomTheme, generateThemeName, getBorderStyle, getBrandPresets, getChildrenForLayoutItem, getComponentInLayout, getContainerBorderColor, getContainerColor, getIndexOfLayoutChildrenForItem, getIndexOfLayoutItem, getLayoutItemById, getLayoutItemForWorkspace, getNearestParentWorkspace, getNextHighestId, getNextHighestItemInLayout, getNextHighestOrder, getNextHighestParentId, getNextLowestItemInLayout, getParentForLayoutItem, getParentWorkspaceForItem, getThemePresets, getUserConfigurableProviders, getWidgetsForWorkspace, getWorkspacesForWorkspace, headerTemplateToRows, humanizeAction, isContainer, isLikelySecret, isMaxOrderForItem, isMinOrderForItem, isWidget, isWidgetResolvable, isWorkspace, layoutItemHasWorkspaceAsChild, loadWidgetBundle, makeScopedComponentId, mcpJsonToFormState, moveWidgetAcrossContainers, numChildrenForLayout, parse, parseScopedComponentId, removeItemFromLayout, renderComponent, renderGridLayout, renderGridLayoutFlow, _renderLayout as renderLayout, renderLayoutMenu, replaceItemInLayout, resolveIcon, serialize, setHostModules, traverseParentTree, updateLayoutItem, updateParentForItem, useDashboard, useMcpDashServer, useMcpProvider, useNotifications, useProvider, useProviderClient, useScheduler, useWebSocketProvider, useWidgetEvents, useWidgetProviders, useWidgetRegistryVersion, useWidgetSchedulerStatus, useWizardState, validateCellMerge, validateGridCell, validateGridPlacement, validateWidgetPlacement, widgetCountToTemplate, withProviderDetection };
69133
+ export { ALGOLIA_ANALYTICS_FOR_QUERY, ALGOLIA_ANALYTICS_FOR_QUERY_COMPLETE, ALGOLIA_ANALYTICS_FOR_QUERY_ERROR, ALGOLIA_LIST_INDICES, ALGOLIA_LIST_INDICES_COMPLETE, ALGOLIA_LIST_INDICES_ERROR, AVAILABLE_COLORS, AddMenuItemModal, AdvancedMcpConfig, AppContext, AppSettingsModal, AppThemeScope, AppWrapper, CHOOSE_FILE, CHOOSE_FILE_COMPLETE, CHOOSE_FILE_ERROR, ChatCore, ChatInput, ChatMessages, ColorModel, ComponentConfigModel, ComponentManager, ContextModel, DATA_JSON_TO_CSV_FILE, DATA_JSON_TO_CSV_FILE_COMPLETE, DATA_JSON_TO_CSV_FILE_ERROR, DATA_JSON_TO_CSV_STRING, DATA_JSON_TO_CSV_STRING_COMPLETE, DATA_JSON_TO_CSV_STRING_ERROR, DATA_READ_FROM_FILE, DATA_READ_FROM_FILE_COMPLETE, DATA_READ_FROM_FILE_ERROR, DATA_SAVE_TO_FILE, DATA_SAVE_TO_FILE_COMPLETE, DATA_SAVE_TO_FILE_ERROR, DashCommandPalette, DashNavbar, DashSidebar, DashTabBar, DashboardStage as Dashboard, DashboardActionsApi, DashboardApi, DashboardContext, DashboardFooter, DashboardHeader, DashboardMenuItem, DashboardModel, DashboardMonitor, DashboardPublisher, DashboardStage, DashboardThemeProvider, DashboardWizardModal, DashboardWrapper, ElectronDashboardApi, ErrorBoundary, ExternalWidget, GRID_CELL_WIDGET_TYPE, HARMONY_STRATEGIES, LAYOUT_LIST, LAYOUT_LIST_COMPLETE, LAYOUT_LIST_ERROR, Layout, LayoutBuilder, LayoutBuilderAddItemModal, LayoutBuilderConfigContainerMenuItem, LayoutBuilderConfigMenuItem, LayoutBuilderConfigModal, LayoutBuilderEditItemModal, LayoutBuilderEventModal, LayoutBuilderGridItem, LayoutContainer, LayoutDragBuilder, LayoutDragBuilderEdit, LayoutGridContainer, LayoutManagerModal, LayoutModel, LayoutQuickAddMenu, MCP_AUTHORIZE_COMPLETE, MCP_AUTHORIZE_ERROR, MCP_CALL_TOOL_COMPLETE, MCP_CALL_TOOL_ERROR, MCP_GET_CATALOG_COMPLETE, MCP_GET_CATALOG_ERROR, MCP_LIST_RESOURCES_COMPLETE, MCP_LIST_RESOURCES_ERROR, MCP_LIST_TOOLS_COMPLETE, MCP_LIST_TOOLS_ERROR, MCP_READ_RESOURCE_COMPLETE, MCP_READ_RESOURCE_ERROR, MCP_RUN_AUTH_COMPLETE, MCP_RUN_AUTH_ERROR, MCP_SERVER_STATUS_COMPLETE, MCP_SERVER_STATUS_ERROR, MCP_START_SERVER_COMPLETE, MCP_START_SERVER_ERROR, MCP_STOP_SERVER_COMPLETE, MCP_STOP_SERVER_ERROR, MENU_ITEMS_DELETE, MENU_ITEMS_DELETE_COMPLETE, MENU_ITEMS_DELETE_ERROR, MENU_ITEMS_LIST, MENU_ITEMS_LIST_COMPLETE, MENU_ITEMS_LIST_ERROR, MENU_ITEMS_SAVE, MENU_ITEMS_SAVE_COMPLETE, MENU_ITEMS_SAVE_ERROR, MainMenu, MainMenuItem, MainMenuSection, MarkdownFormEditor, McpServerPicker, MenuItemModel, MenuSlideOverlay, MergeCellsModal, MessageBubble, MissingProviderPrompt, MockDashboardApi, PROVIDER_DELETE_COMPLETE, PROVIDER_DELETE_ERROR, PROVIDER_GET_COMPLETE, PROVIDER_GET_ERROR, PROVIDER_LIST_COMPLETE, PROVIDER_LIST_ERROR, PROVIDER_SAVE_COMPLETE, PROVIDER_SAVE_ERROR, PageTabBar, PanelCode, PanelEditItem, PanelEditItemHandlers, PanelEditItemNotifications, PanelEditItemProviders, PinnedSidebar, ProviderContext, ProviderErrorBoundary, ProviderForm, ProviderSelector, SECURE_STORAGE_ENCRYPT_STRING, SECURE_STORAGE_ENCRYPT_STRING_COMPLETE, SECURE_STORAGE_ENCRYPT_STRING_ERROR, SECURE_STORE_ENCRYPTION_CHECK, SECURE_STORE_ENCRYPTION_CHECK_COMPLETE, SECURE_STORE_ENCRYPTION_CHECK_ERROR, SECURE_STORE_GET_DATA, SECURE_STORE_GET_DATA_COMPLETE, SECURE_STORE_GET_DATA_ERROR, SECURE_STORE_SET_DATA, SECURE_STORE_SET_DATA_COMPLETE, SECURE_STORE_SET_DATA_ERROR, SETTINGS_GET, SETTINGS_GET_COMPLETE, SETTINGS_GET_ERROR, SETTINGS_SAVE, SETTINGS_SAVE_COMPLETE, SETTINGS_SAVE_ERROR, SIDEBAR_WIDGET_TYPE, SettingsModel, SideMenu, SplitCellModal, StreamingText, THEME_DELETE, THEME_DELETE_COMPLETE, THEME_DELETE_ERROR, THEME_EXTRACT_FROM_URL, THEME_EXTRACT_FROM_URL_COMPLETE, THEME_EXTRACT_FROM_URL_ERROR, THEME_LIST, THEME_LIST_COMPLETE, THEME_LIST_ERROR, THEME_MAP_PALETTE, THEME_MAP_PALETTE_COMPLETE, THEME_MAP_PALETTE_ERROR, THEME_SAVE, THEME_SAVE_COMPLETE, THEME_SAVE_ERROR, ThemeApi, ThemeColorDots, ThemeManagerModal, ThemeModel, ThemeWrapper, ToolCallBlock, ToolSelector, WELCOME_STORAGE_KEY, WORKSPACE_DELETE, WORKSPACE_DELETE_COMPLETE, WORKSPACE_DELETE_ERROR, WORKSPACE_LIST, WORKSPACE_LIST_COMPLETE, WORKSPACE_LIST_ERROR, WORKSPACE_SAVE, WORKSPACE_SAVE_COMPLETE, WORKSPACE_SAVE_ERROR, WebDashboardApi, WelcomePrompt, Widget, WidgetApi, WidgetConfigPanel, WidgetContext, WidgetFactory, WidgetNotFound, WidgetPopoutStage, WidgetProviderWrapper, WidgetSidebar, WizardCustomizeStep, WizardDiscoverStep, Workspace, WorkspaceContext, WorkspaceFooter, WorkspaceMenu, WorkspaceModel, WorkspaceScopeContext, addChildToLayoutItem, addItemToItemLayout, bareComponentName, buildMcpConfigFromOverrides, canHaveChildren, changeDirectionForLayoutItem, computeDashboardPreflight, createProviderRegistry, deriveFormFields, envMappingToRows, evaluateBundle, extractWidgetConfigs, formStateToMcpJson, formatFieldName, generateCustomTheme, generateHarmonyTheme, generateRandomHexTheme, generateRandomTheme, generateThemeName, getBorderStyle, getBrandPresets, getChildrenForLayoutItem, getComponentInLayout, getContainerBorderColor, getContainerColor, getIndexOfLayoutChildrenForItem, getIndexOfLayoutItem, getLayoutItemById, getLayoutItemForWorkspace, getNearestParentWorkspace, getNextHighestId, getNextHighestItemInLayout, getNextHighestOrder, getNextHighestParentId, getNextLowestItemInLayout, getParentForLayoutItem, getParentWorkspaceForItem, getThemePresets, getUserConfigurableProviders, getWidgetsForWorkspace, getWorkspacesForWorkspace, headerTemplateToRows, humanizeAction, isContainer, isLikelySecret, isMaxOrderForItem, isMinOrderForItem, isScopedComponentId, isWidget, isWidgetResolvable, isWorkspace, layoutItemHasWorkspaceAsChild, loadWidgetBundle, makeScopedComponentId, mcpJsonToFormState, moveWidgetAcrossContainers, numChildrenForLayout, parse, parseScopedComponentId, removeItemFromLayout, renderComponent, renderGridLayout, renderGridLayoutFlow, _renderLayout as renderLayout, renderLayoutMenu, replaceItemInLayout, resolveGateWidgetId, resolveIcon, serialize, setHostModules, traverseParentTree, updateLayoutItem, updateParentForItem, useDashboard, useMcpDashServer, useMcpProvider, useNotifications, useProvider, useProviderClient, useScheduler, useWebSocketProvider, useWidgetEvents, useWidgetProviders, useWidgetRegistryVersion, useWidgetSchedulerStatus, useWizardState, validateCellMerge, validateGridCell, validateGridPlacement, validateWidgetPlacement, widgetCountToTemplate, withProviderDetection };
69101
69134
  //# sourceMappingURL=index.esm.js.map