@shuffleio/shuffle-mcps 0.0.45 → 0.0.47
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/{appsCache-EFH5WV4I.mjs → appsCache-ITT5ZZQS.mjs} +1 -1
- package/dist/{chunk-5LZ5IZ2O.mjs → chunk-45B7UK6Q.mjs} +431 -37
- package/dist/index.d.mts +335 -155
- package/dist/index.d.ts +335 -155
- package/dist/index.js +8530 -4231
- package/dist/index.mjs +7785 -3877
- package/dist/{shuffle-mcp-S6QOJJG4.css → shuffle-mcp-SHQXQS3F.css} +2 -2
- package/package.json +6 -3
package/dist/index.d.ts
CHANGED
|
@@ -256,6 +256,177 @@ interface ShuffleMCPHandle {
|
|
|
256
256
|
focus: (selectAll?: boolean) => void;
|
|
257
257
|
}
|
|
258
258
|
|
|
259
|
+
type AuthStatus = 'pending' | 'testing' | 'connected' | 'error';
|
|
260
|
+
interface AppAuthState {
|
|
261
|
+
systemId: string;
|
|
262
|
+
status: AuthStatus;
|
|
263
|
+
credentials: Record<string, string>;
|
|
264
|
+
errorMessage?: string;
|
|
265
|
+
successMessage?: string;
|
|
266
|
+
warningMessage?: string;
|
|
267
|
+
workflowId?: string;
|
|
268
|
+
executionId?: string;
|
|
269
|
+
errorCode?: number;
|
|
270
|
+
}
|
|
271
|
+
interface AuthParameter {
|
|
272
|
+
description: string;
|
|
273
|
+
example: string;
|
|
274
|
+
id: string;
|
|
275
|
+
name: string;
|
|
276
|
+
required: boolean;
|
|
277
|
+
schema: {
|
|
278
|
+
type: string;
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
interface AppAuthentication {
|
|
282
|
+
type: string;
|
|
283
|
+
description?: string;
|
|
284
|
+
redirect_uri?: string;
|
|
285
|
+
token_uri?: string;
|
|
286
|
+
refresh_uri?: string;
|
|
287
|
+
authorization_url?: string;
|
|
288
|
+
auth_uri?: string;
|
|
289
|
+
authorize_url?: string;
|
|
290
|
+
scope?: string[];
|
|
291
|
+
client_id?: string;
|
|
292
|
+
client_secret?: string;
|
|
293
|
+
parameters?: AuthParameter[];
|
|
294
|
+
}
|
|
295
|
+
interface ApiAuthEntry {
|
|
296
|
+
id?: string;
|
|
297
|
+
label?: string;
|
|
298
|
+
app: {
|
|
299
|
+
id: string;
|
|
300
|
+
name: string;
|
|
301
|
+
large_image?: string;
|
|
302
|
+
};
|
|
303
|
+
active?: boolean;
|
|
304
|
+
created?: number;
|
|
305
|
+
edited?: number;
|
|
306
|
+
validation?: {
|
|
307
|
+
valid: boolean;
|
|
308
|
+
error?: string;
|
|
309
|
+
last_valid?: number;
|
|
310
|
+
};
|
|
311
|
+
}
|
|
312
|
+
interface AppAuthConfigProps extends ShuffleHostProps {
|
|
313
|
+
apps: AlgoliaSearchApp[];
|
|
314
|
+
authStates: Record<string, AppAuthState>;
|
|
315
|
+
authenticatedApps?: ApiAuthEntry[];
|
|
316
|
+
onAuthChange: (appId: string, credentials: Record<string, string>) => void;
|
|
317
|
+
onTestConnection: (appId: string, authenticationId?: string) => void;
|
|
318
|
+
onSaveAuth: (appId: string, credentials: Record<string, string>) => Promise<boolean>;
|
|
319
|
+
onSelectAuth?: (appId: string, authId: string) => void;
|
|
320
|
+
onRefreshAuth?: () => Promise<void> | void;
|
|
321
|
+
}
|
|
322
|
+
interface AppAuthCardProps extends ShuffleHostProps {
|
|
323
|
+
app: AlgoliaSearchApp;
|
|
324
|
+
authState: AppAuthState;
|
|
325
|
+
isExpanded: boolean;
|
|
326
|
+
onToggle: () => void;
|
|
327
|
+
onAuthChange: (appId: string, credentials: Record<string, string>) => void;
|
|
328
|
+
onTestConnection: (appId: string, authenticationId?: string) => void;
|
|
329
|
+
onSaveAuth: (appId: string, credentials: Record<string, string>) => Promise<boolean>;
|
|
330
|
+
apiAuthEntries: ApiAuthEntry[];
|
|
331
|
+
onSelectAuth?: (appId: string, authId: string) => void;
|
|
332
|
+
/** Called to refresh auth entries (e.g. after OAuth popup closes) */
|
|
333
|
+
onRefreshAuth?: () => Promise<void> | void;
|
|
334
|
+
/** When true, do NOT auto-fill URL fields with the param.example value. */
|
|
335
|
+
disableUrlPrefill?: boolean;
|
|
336
|
+
/** Hide the entire card header row (app icon, name, description, chips, docs, expand). Body stays expanded. */
|
|
337
|
+
hideHeader?: boolean;
|
|
338
|
+
/** Hide the "Configured / Not configured" and "Tested / Not tested" chips. */
|
|
339
|
+
hideStatusChips?: boolean;
|
|
340
|
+
/** Hide the documentation (book icon) link. */
|
|
341
|
+
hideDocsLink?: boolean;
|
|
342
|
+
/** Hide URL-like fields (name/id containing "url", "endpoint", or "host").
|
|
343
|
+
* Use when the URL is supplied externally (e.g. via a provider preset). */
|
|
344
|
+
hideUrlFields?: boolean;
|
|
345
|
+
/** Render without the outer Card border so the component can be embedded
|
|
346
|
+
* inside another bordered container without the nested "double border" look. */
|
|
347
|
+
borderless?: boolean;
|
|
348
|
+
/** Compact mode for embedded auth setup (e.g. Local LLM). Hides the
|
|
349
|
+
* "Select authentication" dropdown and the large "Pending Verification"
|
|
350
|
+
* detail panel with its standalone Test Connection button. The inline
|
|
351
|
+
* credentials form (with the small "Test Authentication" CTA) is always
|
|
352
|
+
* visible so users can edit & retest in one place. */
|
|
353
|
+
compactAuthForm?: boolean;
|
|
354
|
+
/** Always render the "Select authentication" dropdown, even when there are no
|
|
355
|
+
* saved entries yet, so the UI does not switch between two different shapes. */
|
|
356
|
+
alwaysShowAuthSelector?: boolean;
|
|
357
|
+
/** Suppress the "Authentication saved" success toast (embedded flows that
|
|
358
|
+
* already give their own feedback, e.g. the LLM provider config). */
|
|
359
|
+
suppressSaveToast?: boolean;
|
|
360
|
+
/** Render additional fields inside the expanded body, above the credential
|
|
361
|
+
* inputs. The slot receives the live `localCredentials` and a `setField`
|
|
362
|
+
* helper so its values are persisted as part of the auth on Save. */
|
|
363
|
+
extraFieldsSlot?: (api: {
|
|
364
|
+
credentials: Record<string, string>;
|
|
365
|
+
setField: (key: string, value: string) => void;
|
|
366
|
+
}) => React.ReactNode;
|
|
367
|
+
/** Known-ahead-of-time auth schema. When provided the fields render
|
|
368
|
+
* instantly and no app-config request is made (no "Loading configuration"). */
|
|
369
|
+
initialAuthConfig?: AppAuthentication;
|
|
370
|
+
}
|
|
371
|
+
declare const AppAuthCard: ({ app, authState, isExpanded, onToggle, onAuthChange, onTestConnection, onSaveAuth, apiAuthEntries, onSelectAuth, onRefreshAuth, disableUrlPrefill, hideHeader, hideStatusChips, hideDocsLink, hideUrlFields, borderless, compactAuthForm, alwaysShowAuthSelector, suppressSaveToast, extraFieldsSlot, initialAuthConfig, globalUrl, userdata, isLoaded, isLoggedIn, serverside, }: AppAuthCardProps) => React$1.JSX.Element;
|
|
372
|
+
declare const AppAuthConfig: ({ apps, authStates, authenticatedApps, onAuthChange, onTestConnection, onSaveAuth, onSelectAuth, onRefreshAuth, globalUrl, userdata, isLoaded, isLoggedIn, serverside, }: AppAuthConfigProps) => React$1.JSX.Element;
|
|
373
|
+
|
|
374
|
+
interface AppInfo {
|
|
375
|
+
name: string;
|
|
376
|
+
description: string;
|
|
377
|
+
large_image?: string;
|
|
378
|
+
categories?: string[];
|
|
379
|
+
actions?: unknown[];
|
|
380
|
+
authentication?: AppAuthentication;
|
|
381
|
+
algoliaId?: string;
|
|
382
|
+
[key: string]: unknown;
|
|
383
|
+
}
|
|
384
|
+
interface AppDetailContentProps extends ShuffleHostProps {
|
|
385
|
+
/** Display mode */
|
|
386
|
+
mode?: 'drawer' | 'page';
|
|
387
|
+
/** Whether the parent container is open/mounted (used in drawer mode to defer network requests) */
|
|
388
|
+
open?: boolean;
|
|
389
|
+
/** App name to load */
|
|
390
|
+
appName: string | null;
|
|
391
|
+
/** Pre-resolved Algolia objectID (optional fast path) */
|
|
392
|
+
appId?: string | null;
|
|
393
|
+
/** Callback to close the view (drawer mode) */
|
|
394
|
+
onClose?: () => void;
|
|
395
|
+
/** Callback when data is refreshed */
|
|
396
|
+
onRefresh?: () => void;
|
|
397
|
+
/** Action when adding to canvas (builder mode) */
|
|
398
|
+
onAddToCanvas?: (app: {
|
|
399
|
+
name: string;
|
|
400
|
+
icon: string;
|
|
401
|
+
algoliaId?: string | null;
|
|
402
|
+
}) => void;
|
|
403
|
+
/** Whether the user is authenticated. In page mode, false enables guest locked sections */
|
|
404
|
+
isAuthenticated?: boolean;
|
|
405
|
+
/** Active organization ID for multi-tenant scoping */
|
|
406
|
+
activeOrgId?: string | null;
|
|
407
|
+
/** Automatically fire Activate action once app is loaded */
|
|
408
|
+
autoActivate?: boolean;
|
|
409
|
+
/** Show incident ingestion/forwarding stats */
|
|
410
|
+
showIncidentStats?: boolean;
|
|
411
|
+
/** Show quick info summary cards (Auth Type, Configurations, Status) */
|
|
412
|
+
showQuickInfo?: boolean;
|
|
413
|
+
/** Show the live MCP ApiCallViewer */
|
|
414
|
+
showApiCallViewer?: boolean;
|
|
415
|
+
/** When true and isAuthenticated is false, renders GuestLockedSection */
|
|
416
|
+
allowGuestLocked?: boolean;
|
|
417
|
+
/** Notifies parent when app info is resolved (useful for page SEO / usePageMeta) */
|
|
418
|
+
onAppInfoLoaded?: (info: AppInfo | null) => void;
|
|
419
|
+
}
|
|
420
|
+
/**
|
|
421
|
+
* Compares a requested app name against a resolved app name to determine if they match,
|
|
422
|
+
* close-match, or mismatch.
|
|
423
|
+
*/
|
|
424
|
+
declare function checkAppNameMatch(requested?: string | null, resolved?: string | null): {
|
|
425
|
+
isMatch: boolean;
|
|
426
|
+
isCloseMatch: boolean;
|
|
427
|
+
mismatch: boolean;
|
|
428
|
+
};
|
|
429
|
+
|
|
259
430
|
interface AiAgentPromptsEditorProps {
|
|
260
431
|
/** Ordered list of prompts. */
|
|
261
432
|
prompts: string[];
|
|
@@ -308,6 +479,8 @@ interface AppTitleHeaderProps extends ShuffleHostProps {
|
|
|
308
479
|
highlightActivate?: boolean;
|
|
309
480
|
/** When provided, replaces the Activate button with "+ Add". */
|
|
310
481
|
onAdd?: () => void;
|
|
482
|
+
/** Called when the auth status chip is clicked (host may expand its auth section). */
|
|
483
|
+
onAuthClick?: () => void;
|
|
311
484
|
}
|
|
312
485
|
|
|
313
486
|
interface AppAuthSectionProps extends ShuffleHostProps {
|
|
@@ -353,6 +526,8 @@ interface AgentPreset {
|
|
|
353
526
|
icon: React.ReactNode;
|
|
354
527
|
/** When true, the preset is clickable and pre-fills the prompt. Others are placeholders. */
|
|
355
528
|
enabled?: boolean;
|
|
529
|
+
/** Optional badge/tag label to display next to the preset name, e.g. "Beta", "Coming soon" */
|
|
530
|
+
tag?: string;
|
|
356
531
|
/** Optional tools/apps to pre-select when this preset is clicked. */
|
|
357
532
|
defaultApps?: Array<{
|
|
358
533
|
name: string;
|
|
@@ -488,6 +663,8 @@ interface AgentUIProps {
|
|
|
488
663
|
onChooseLLM?: () => void;
|
|
489
664
|
/** Hide the "Choose LLM" chip entirely. */
|
|
490
665
|
hideChooseLLM?: boolean;
|
|
666
|
+
/** Whether the user is currently authenticated */
|
|
667
|
+
isLoggedIn?: boolean;
|
|
491
668
|
/** Tooltip on the submit button. Default: "⌘+Enter to send". */
|
|
492
669
|
submitTooltip?: string;
|
|
493
670
|
/** Custom icon for the submit button. */
|
|
@@ -616,7 +793,29 @@ interface AgentUIProps {
|
|
|
616
793
|
contextCategory?: 'incidents' | 'vulnerabilities' | string;
|
|
617
794
|
/** Storage key of the active page context to detect user overrides */
|
|
618
795
|
contextStorageKey?: string;
|
|
796
|
+
/**
|
|
797
|
+
* When true, applies the dedicated Ask AI sidebar layout:
|
|
798
|
+
* - Pins run switcher directly beneath the panel header
|
|
799
|
+
* - Locks continuation form to the bottom of the sidebar
|
|
800
|
+
* - Provides independent scroll container for middle content without top clipping
|
|
801
|
+
*/
|
|
802
|
+
sidebarLayout?: boolean;
|
|
803
|
+
/**
|
|
804
|
+
* Optional callback to transform/compose raw prompt input before submitting to the backend
|
|
805
|
+
* (e.g. pre-injecting dynamic documentation markdown).
|
|
806
|
+
*/
|
|
807
|
+
composeSubmitInput?: (raw: string) => string;
|
|
808
|
+
/** Context parameters (e.g. { id: 'hello' } when on /incidents/:id) */
|
|
809
|
+
contextParams?: Record<string, string>;
|
|
810
|
+
/** Optional target incident ID for incident-handler skill */
|
|
811
|
+
incidentId?: string;
|
|
812
|
+
/** Optional target vulnerability ID for vulnerability skill */
|
|
813
|
+
vulnerabilityId?: string;
|
|
814
|
+
/** Optional target workflow ID for edit-workflow skill */
|
|
815
|
+
workflowId?: string;
|
|
619
816
|
}
|
|
817
|
+
/** Set of confirmed live built-in Shuffle services that are always available in the platform */
|
|
818
|
+
declare const VERIFIED_BUILTIN_APPS: Set<string>;
|
|
620
819
|
|
|
621
820
|
interface AgentPromptPrefixChipProps {
|
|
622
821
|
/** Optional label override. Defaults to "Shuffle Tools MCP". */
|
|
@@ -716,11 +915,13 @@ interface AskAiButtonProps {
|
|
|
716
915
|
* Default: true ("This is for now just for support users").
|
|
717
916
|
*/
|
|
718
917
|
requireSupport?: boolean;
|
|
918
|
+
/** Whether Ask AI is in Beta on this page, enabling it for normal users */
|
|
919
|
+
isBeta?: boolean;
|
|
719
920
|
/** Current URL pathname. Automatically disables button on /agents and /agent */
|
|
720
921
|
pathname?: string;
|
|
721
922
|
/** Custom button label. Default: "Ask AI". */
|
|
722
923
|
label?: string;
|
|
723
|
-
/** Tag label in the button.
|
|
924
|
+
/** Tag label in the button. When undefined, defaults to "Beta" if isBeta is true, else "Support". Set to null to hide tag. */
|
|
724
925
|
tagLabel?: string | null;
|
|
725
926
|
/** Optional context name or subtitle shown in tooltip (e.g. "Shuffle Incidents MCP") */
|
|
726
927
|
contextHint?: string;
|
|
@@ -757,15 +958,19 @@ interface AgentContextRule {
|
|
|
757
958
|
/** Default MCP apps to pre-select for this context */
|
|
758
959
|
defaultApps: AgentContextApp[];
|
|
759
960
|
/** Default skill/preset id (e.g. 'incident-response', 'vulnerability', 'build-workflows') */
|
|
760
|
-
defaultPresetId?: string;
|
|
961
|
+
defaultPresetId?: string | null;
|
|
761
962
|
/** Title shown on drawer header */
|
|
762
|
-
title?: string | ((params: Record<string, string>, pathname: string) => string);
|
|
963
|
+
title?: string | ((params: Record<string, string>, pathname: string, entityOverride?: string) => string);
|
|
763
964
|
/** Subtitle or context description shown under the drawer header */
|
|
764
|
-
subtitle?: string | ((params: Record<string, string>, pathname: string) => string);
|
|
965
|
+
subtitle?: string | ((params: Record<string, string>, pathname: string, entityOverride?: string) => string);
|
|
765
966
|
/** Contextual prompt seed */
|
|
766
|
-
defaultPrompt?: string | ((params: Record<string, string>, pathname: string) => string);
|
|
967
|
+
defaultPrompt?: string | ((params: Record<string, string>, pathname: string, entityOverride?: string) => string);
|
|
767
968
|
/** Custom placeholder for the prompt input */
|
|
768
969
|
placeholder?: string;
|
|
970
|
+
/** Custom label for the trigger button (e.g. 'Ask about Workflows') */
|
|
971
|
+
buttonLabel?: string | ((params: Record<string, string>, pathname: string, entityOverride?: string) => string);
|
|
972
|
+
/** Custom title for the panel/drawer header bar */
|
|
973
|
+
headerTitle?: string | ((params: Record<string, string>, pathname: string, entityOverride?: string) => string);
|
|
769
974
|
/** Key used for localStorage persistence. Defaults to the rule id or parameterized key */
|
|
770
975
|
getStorageKey?: (params: Record<string, string>, pathname: string) => string;
|
|
771
976
|
/** Human-readable description of what this context provides */
|
|
@@ -774,14 +979,26 @@ interface AgentContextRule {
|
|
|
774
979
|
sourceCategory?: 'incidents' | 'vulnerabilities' | string;
|
|
775
980
|
/** Explicit flag indicating this route lacks a dedicated MCP mapping */
|
|
776
981
|
missingConfig?: boolean;
|
|
982
|
+
/** Whether Ask AI is in Beta and enabled for normal users on this page */
|
|
983
|
+
isBeta?: boolean | ((params: Record<string, string>, pathname: string) => boolean);
|
|
777
984
|
/** Whether opening the panel should sideshift the page layout. Default: true */
|
|
778
985
|
sideshift?: boolean;
|
|
986
|
+
/** Optional function to transform/compose user prompt input before submission (e.g. injecting markdown context for doc pages) */
|
|
987
|
+
composeInput?: (rawInput: string, params: Record<string, string>, pathname: string) => string;
|
|
779
988
|
}
|
|
780
989
|
interface AgentResolvedContext {
|
|
781
990
|
ruleId: string;
|
|
782
991
|
apps: AgentContextApp[];
|
|
783
|
-
presetId?: string;
|
|
992
|
+
presetId?: string | null;
|
|
784
993
|
title: string;
|
|
994
|
+
/** Function to dynamically re-evaluate the title with an active entity name override */
|
|
995
|
+
titleFn?: (entityOverride?: string) => string;
|
|
996
|
+
/** Custom label for trigger button */
|
|
997
|
+
buttonLabel?: string;
|
|
998
|
+
buttonLabelFn?: (entityOverride?: string) => string;
|
|
999
|
+
/** Custom title for panel header */
|
|
1000
|
+
headerTitle?: string;
|
|
1001
|
+
headerTitleFn?: (entityOverride?: string) => string;
|
|
785
1002
|
subtitle: string;
|
|
786
1003
|
defaultPrompt: string;
|
|
787
1004
|
placeholder?: string;
|
|
@@ -795,15 +1012,24 @@ interface AgentResolvedContext {
|
|
|
795
1012
|
/** The default apps before any user customization */
|
|
796
1013
|
originalDefaultApps: AgentContextApp[];
|
|
797
1014
|
/** The default preset before any user customization */
|
|
798
|
-
originalDefaultPresetId?: string;
|
|
1015
|
+
originalDefaultPresetId?: string | null;
|
|
799
1016
|
/** True when no specific rule was configured for this route (fallback rule used) */
|
|
800
1017
|
missingConfig: boolean;
|
|
1018
|
+
/** Whether Ask AI is in Beta and enabled for normal users on this page */
|
|
1019
|
+
isBeta?: boolean;
|
|
801
1020
|
/** Whether opening the panel should sideshift the page layout */
|
|
802
1021
|
sideshift?: boolean;
|
|
1022
|
+
/** Optional function to transform/compose user prompt input before submission */
|
|
1023
|
+
composeInput?: (rawInput: string) => string;
|
|
803
1024
|
}
|
|
804
1025
|
interface PageContextChoice {
|
|
805
1026
|
apps?: AgentContextApp[];
|
|
806
1027
|
presetId?: string | null;
|
|
1028
|
+
draftPrompt?: string;
|
|
1029
|
+
executionId?: string | null;
|
|
1030
|
+
authorization?: string | null;
|
|
1031
|
+
executionStatus?: string | null;
|
|
1032
|
+
viewMode?: 'start' | 'simple' | 'detailed' | null;
|
|
807
1033
|
updatedAt: number;
|
|
808
1034
|
}
|
|
809
1035
|
/** Match a URL pathname against a route pattern with `:param` segments */
|
|
@@ -823,11 +1049,8 @@ declare const registerAgentContextRule: (rule: AgentContextRule, prepend?: boole
|
|
|
823
1049
|
declare const getAgentContextRules: (customRules?: AgentContextRule[]) => AgentContextRule[];
|
|
824
1050
|
/** Read saved user choice for a specific page storage key */
|
|
825
1051
|
declare const getPageContextChoice: (storageKey: string) => PageContextChoice | null;
|
|
826
|
-
/** Save user's customized apps and
|
|
827
|
-
declare const setPageContextChoice: (storageKey: string, choice:
|
|
828
|
-
apps?: AgentContextApp[];
|
|
829
|
-
presetId?: string | null;
|
|
830
|
-
}) => void;
|
|
1052
|
+
/** Save user's customized apps, preset, draft prompt, and execution for a specific page storage key */
|
|
1053
|
+
declare const setPageContextChoice: (storageKey: string, choice: Partial<Omit<PageContextChoice, "updatedAt">>) => void;
|
|
831
1054
|
/** Clear saved user choice for a specific page, reverting it to defaults */
|
|
832
1055
|
declare const clearPageContextChoice: (storageKey: string) => void;
|
|
833
1056
|
/**
|
|
@@ -883,6 +1106,9 @@ interface AskAiDrawerProps extends Omit<AgentRunDrawerProps, 'title' | 'subtitle
|
|
|
883
1106
|
* - Choice persistence: remembers tool and skill modifications per page.
|
|
884
1107
|
*/
|
|
885
1108
|
|
|
1109
|
+
declare const ASK_AI_PANEL_WIDTH_STORAGE_KEY = "shuffle:ask_ai_panel_width";
|
|
1110
|
+
declare const MIN_ASK_AI_PANEL_WIDTH = 340;
|
|
1111
|
+
declare const MAX_ASK_AI_PANEL_WIDTH = 960;
|
|
886
1112
|
interface AskAiSidePanelProps extends ShuffleHostProps {
|
|
887
1113
|
/** Whether the side panel is open */
|
|
888
1114
|
open: boolean;
|
|
@@ -894,6 +1120,8 @@ interface AskAiSidePanelProps extends ShuffleHostProps {
|
|
|
894
1120
|
activeTab?: AgentRunDrawerTab;
|
|
895
1121
|
/** Tab change callback */
|
|
896
1122
|
onTabChange?: (tab: AgentRunDrawerTab) => void;
|
|
1123
|
+
/** Optional pre-filled default input prompt */
|
|
1124
|
+
defaultInput?: string;
|
|
897
1125
|
/** Render content for the Permissions tab. Tab is hidden when omitted. */
|
|
898
1126
|
permissionsSlot?: React__default.ReactNode;
|
|
899
1127
|
/** Render content for the Local LLM tab. Defaults to bundled Local LLM configuration UI. */
|
|
@@ -995,6 +1223,18 @@ declare const useContextAwareAgent: (pathname?: string, search?: string) => Agen
|
|
|
995
1223
|
* If the user switches orgs, it resets to the default until getinfo is called again.
|
|
996
1224
|
*/
|
|
997
1225
|
|
|
1226
|
+
/** Check if a URL belongs to a Shuffle Cloud domain (*.shuffler.io or *.shuffle.security) */
|
|
1227
|
+
declare const isShuffleCloudDomain: (url?: string | null) => boolean;
|
|
1228
|
+
/**
|
|
1229
|
+
* Maps legacy shuffler.io cloud URLs to shuffle.security redirect routes.
|
|
1230
|
+
*
|
|
1231
|
+
* Mapping rules:
|
|
1232
|
+
* - shuffler.io / shuffle.security -> https://uk.shuffle.security (default cloud backend)
|
|
1233
|
+
* - <subdomain>.shuffler.io -> https://<subdomain>.shuffle.security (e.g. ca, us, eu, au, uk, frankfurt)
|
|
1234
|
+
* - <subdomain>.shuffle.security -> preserved as https://<subdomain>.shuffle.security
|
|
1235
|
+
* - Self-hosted / on-prem / dev URLs -> preserved as-is
|
|
1236
|
+
*/
|
|
1237
|
+
declare const mapCloudRegionUrl: (url?: string | null) => string;
|
|
998
1238
|
/** Check if running on a known Shuffle Cloud domain */
|
|
999
1239
|
declare const isCloudDomain: () => boolean;
|
|
1000
1240
|
/**
|
|
@@ -1011,8 +1251,8 @@ declare const isCloud: () => boolean;
|
|
|
1011
1251
|
declare const isOnprem: () => boolean;
|
|
1012
1252
|
/**
|
|
1013
1253
|
* Set the dynamic region URL from getinfo response.
|
|
1014
|
-
*
|
|
1015
|
-
*
|
|
1254
|
+
* Honored for the current org/tenant when different from the default backend.
|
|
1255
|
+
* Automatically maps cloud subdomains to .shuffle.security while preserving self-hosted hosts.
|
|
1016
1256
|
* Persisted in localStorage so later page loads do not have to wait on getinfo.
|
|
1017
1257
|
*/
|
|
1018
1258
|
declare const setRegionUrl: (regionUrl: string | undefined | null, orgId: string | undefined | null) => void;
|
|
@@ -1030,6 +1270,11 @@ declare const resetRegionUrl: () => void;
|
|
|
1030
1270
|
declare const setHostBaseUrl: (url: string | undefined | null) => void;
|
|
1031
1271
|
/** Get the currently active host override, if any. */
|
|
1032
1272
|
declare const getHostBaseUrl: () => string | null;
|
|
1273
|
+
/**
|
|
1274
|
+
* Checks whether the active backend is on *.shuffle.security (or shuffle.security),
|
|
1275
|
+
* or if the frontend is hosted on *.shuffle.security.
|
|
1276
|
+
*/
|
|
1277
|
+
declare const isShuffleSecurityBackend: (backendUrl?: string) => boolean;
|
|
1033
1278
|
declare const API_CONFIG: {
|
|
1034
1279
|
readonly baseUrl: string;
|
|
1035
1280
|
version: string;
|
|
@@ -1212,6 +1457,10 @@ interface AgentActivityListProps extends ShuffleHostProps {
|
|
|
1212
1457
|
rowSx?: SxProps<Theme>;
|
|
1213
1458
|
/** Usecase-backed agent types shown in the run filter dropdown. */
|
|
1214
1459
|
usecaseFilters?: AgentUsecaseFilter[];
|
|
1460
|
+
/** Pre-loaded initial/fallback runs, e.g. for demo mode or offline preview. */
|
|
1461
|
+
initialRuns?: AgentRun[];
|
|
1462
|
+
/** When true, skips remote activity fetching entirely (e.g. for demo runs). */
|
|
1463
|
+
disableFetch?: boolean;
|
|
1215
1464
|
}
|
|
1216
1465
|
|
|
1217
1466
|
interface AgentExecutionDrawerProps extends ShuffleHostProps {
|
|
@@ -1330,121 +1579,6 @@ interface AddAppModalProps {
|
|
|
1330
1579
|
categoryLabel: string;
|
|
1331
1580
|
}
|
|
1332
1581
|
|
|
1333
|
-
type AuthStatus = 'pending' | 'testing' | 'connected' | 'error';
|
|
1334
|
-
interface AppAuthState {
|
|
1335
|
-
systemId: string;
|
|
1336
|
-
status: AuthStatus;
|
|
1337
|
-
credentials: Record<string, string>;
|
|
1338
|
-
errorMessage?: string;
|
|
1339
|
-
successMessage?: string;
|
|
1340
|
-
warningMessage?: string;
|
|
1341
|
-
workflowId?: string;
|
|
1342
|
-
executionId?: string;
|
|
1343
|
-
errorCode?: number;
|
|
1344
|
-
}
|
|
1345
|
-
interface AuthParameter {
|
|
1346
|
-
description: string;
|
|
1347
|
-
example: string;
|
|
1348
|
-
id: string;
|
|
1349
|
-
name: string;
|
|
1350
|
-
required: boolean;
|
|
1351
|
-
schema: {
|
|
1352
|
-
type: string;
|
|
1353
|
-
};
|
|
1354
|
-
}
|
|
1355
|
-
interface AppAuthentication {
|
|
1356
|
-
type: string;
|
|
1357
|
-
description?: string;
|
|
1358
|
-
redirect_uri?: string;
|
|
1359
|
-
token_uri?: string;
|
|
1360
|
-
refresh_uri?: string;
|
|
1361
|
-
authorization_url?: string;
|
|
1362
|
-
auth_uri?: string;
|
|
1363
|
-
authorize_url?: string;
|
|
1364
|
-
scope?: string[];
|
|
1365
|
-
client_id?: string;
|
|
1366
|
-
client_secret?: string;
|
|
1367
|
-
parameters?: AuthParameter[];
|
|
1368
|
-
}
|
|
1369
|
-
interface ApiAuthEntry {
|
|
1370
|
-
id?: string;
|
|
1371
|
-
label?: string;
|
|
1372
|
-
app: {
|
|
1373
|
-
id: string;
|
|
1374
|
-
name: string;
|
|
1375
|
-
large_image?: string;
|
|
1376
|
-
};
|
|
1377
|
-
active?: boolean;
|
|
1378
|
-
created?: number;
|
|
1379
|
-
edited?: number;
|
|
1380
|
-
validation?: {
|
|
1381
|
-
valid: boolean;
|
|
1382
|
-
error?: string;
|
|
1383
|
-
last_valid?: number;
|
|
1384
|
-
};
|
|
1385
|
-
}
|
|
1386
|
-
interface AppAuthConfigProps extends ShuffleHostProps {
|
|
1387
|
-
apps: AlgoliaSearchApp[];
|
|
1388
|
-
authStates: Record<string, AppAuthState>;
|
|
1389
|
-
authenticatedApps?: ApiAuthEntry[];
|
|
1390
|
-
onAuthChange: (appId: string, credentials: Record<string, string>) => void;
|
|
1391
|
-
onTestConnection: (appId: string, authenticationId?: string) => void;
|
|
1392
|
-
onSaveAuth: (appId: string, credentials: Record<string, string>) => Promise<boolean>;
|
|
1393
|
-
onSelectAuth?: (appId: string, authId: string) => void;
|
|
1394
|
-
onRefreshAuth?: () => Promise<void> | void;
|
|
1395
|
-
}
|
|
1396
|
-
interface AppAuthCardProps extends ShuffleHostProps {
|
|
1397
|
-
app: AlgoliaSearchApp;
|
|
1398
|
-
authState: AppAuthState;
|
|
1399
|
-
isExpanded: boolean;
|
|
1400
|
-
onToggle: () => void;
|
|
1401
|
-
onAuthChange: (appId: string, credentials: Record<string, string>) => void;
|
|
1402
|
-
onTestConnection: (appId: string, authenticationId?: string) => void;
|
|
1403
|
-
onSaveAuth: (appId: string, credentials: Record<string, string>) => Promise<boolean>;
|
|
1404
|
-
apiAuthEntries: ApiAuthEntry[];
|
|
1405
|
-
onSelectAuth?: (appId: string, authId: string) => void;
|
|
1406
|
-
/** Called to refresh auth entries (e.g. after OAuth popup closes) */
|
|
1407
|
-
onRefreshAuth?: () => Promise<void> | void;
|
|
1408
|
-
/** When true, do NOT auto-fill URL fields with the param.example value. */
|
|
1409
|
-
disableUrlPrefill?: boolean;
|
|
1410
|
-
/** Hide the entire card header row (app icon, name, description, chips, docs, expand). Body stays expanded. */
|
|
1411
|
-
hideHeader?: boolean;
|
|
1412
|
-
/** Hide the "Configured / Not configured" and "Tested / Not tested" chips. */
|
|
1413
|
-
hideStatusChips?: boolean;
|
|
1414
|
-
/** Hide the documentation (book icon) link. */
|
|
1415
|
-
hideDocsLink?: boolean;
|
|
1416
|
-
/** Hide URL-like fields (name/id containing "url", "endpoint", or "host").
|
|
1417
|
-
* Use when the URL is supplied externally (e.g. via a provider preset). */
|
|
1418
|
-
hideUrlFields?: boolean;
|
|
1419
|
-
/** Render without the outer Card border so the component can be embedded
|
|
1420
|
-
* inside another bordered container without the nested "double border" look. */
|
|
1421
|
-
borderless?: boolean;
|
|
1422
|
-
/** Compact mode for embedded auth setup (e.g. Local LLM). Hides the
|
|
1423
|
-
* "Select authentication" dropdown and the large "Pending Verification"
|
|
1424
|
-
* detail panel with its standalone Test Connection button. The inline
|
|
1425
|
-
* credentials form (with the small "Test Authentication" CTA) is always
|
|
1426
|
-
* visible so users can edit & retest in one place. */
|
|
1427
|
-
compactAuthForm?: boolean;
|
|
1428
|
-
/** Always render the "Select authentication" dropdown, even when there are no
|
|
1429
|
-
* saved entries yet, so the UI does not switch between two different shapes. */
|
|
1430
|
-
alwaysShowAuthSelector?: boolean;
|
|
1431
|
-
/** Suppress the "Authentication saved" success toast (embedded flows that
|
|
1432
|
-
* already give their own feedback, e.g. the LLM provider config). */
|
|
1433
|
-
suppressSaveToast?: boolean;
|
|
1434
|
-
/** Render additional fields inside the expanded body, above the credential
|
|
1435
|
-
* inputs. The slot receives the live `localCredentials` and a `setField`
|
|
1436
|
-
* helper so its values are persisted as part of the auth on Save. */
|
|
1437
|
-
extraFieldsSlot?: (api: {
|
|
1438
|
-
credentials: Record<string, string>;
|
|
1439
|
-
setField: (key: string, value: string) => void;
|
|
1440
|
-
}) => React.ReactNode;
|
|
1441
|
-
/** Known-ahead-of-time auth schema. When provided the fields render
|
|
1442
|
-
* instantly and no app-config request is made (no "Loading configuration"). */
|
|
1443
|
-
initialAuthConfig?: AppAuthentication;
|
|
1444
|
-
}
|
|
1445
|
-
declare const AppAuthCard: ({ app, authState, isExpanded, onToggle, onAuthChange, onTestConnection, onSaveAuth, apiAuthEntries, onSelectAuth, onRefreshAuth, disableUrlPrefill, hideHeader, hideStatusChips, hideDocsLink, hideUrlFields, borderless, compactAuthForm, alwaysShowAuthSelector, suppressSaveToast, extraFieldsSlot, initialAuthConfig, globalUrl, userdata, isLoaded, isLoggedIn, serverside, }: AppAuthCardProps) => React$1.JSX.Element;
|
|
1446
|
-
declare const AppAuthConfig: ({ apps, authStates, authenticatedApps, onAuthChange, onTestConnection, onSaveAuth, onSelectAuth, onRefreshAuth, globalUrl, userdata, isLoaded, isLoggedIn, serverside, }: AppAuthConfigProps) => React$1.JSX.Element;
|
|
1447
|
-
|
|
1448
1582
|
/**
|
|
1449
1583
|
* useAppAuthFlow — Shared hook for the search→authenticate flow.
|
|
1450
1584
|
* Encapsulates fetching auth entries, saving credentials, and testing connections.
|
|
@@ -1508,7 +1642,8 @@ type DiagnosisEvidence = {
|
|
|
1508
1642
|
value: string;
|
|
1509
1643
|
};
|
|
1510
1644
|
type OutputDiagnosis = {
|
|
1511
|
-
kind: 'auth' | 'permission' | 'not_found' | 'rate_limit' | 'token_limit' | 'network' | 'validation' | 'generic';
|
|
1645
|
+
kind: 'auth' | 'ai_auth' | 'permission' | 'not_found' | 'rate_limit' | 'token_limit' | 'network' | 'validation' | 'generic';
|
|
1646
|
+
isAiAuth?: boolean;
|
|
1512
1647
|
status?: number;
|
|
1513
1648
|
title: string;
|
|
1514
1649
|
explanation: string;
|
|
@@ -1518,6 +1653,8 @@ type OutputDiagnosis = {
|
|
|
1518
1653
|
};
|
|
1519
1654
|
declare const diagnoseOutputWarning: (run: DiagnosableRun) => OutputDiagnosis | null;
|
|
1520
1655
|
|
|
1656
|
+
declare const DEMO_AGENT_RUNS: AgentRun[];
|
|
1657
|
+
|
|
1521
1658
|
/**
|
|
1522
1659
|
* useAppLookup — Resolve an app's display name, image, categories,
|
|
1523
1660
|
* canonical Algolia objectID and matching auth entries from just
|
|
@@ -1645,31 +1782,13 @@ interface AppDetailContextType {
|
|
|
1645
1782
|
declare const AppDetailProvider: ({ children }: {
|
|
1646
1783
|
children: ReactNode;
|
|
1647
1784
|
}) => React$1.JSX.Element;
|
|
1785
|
+
/** Safe hook: returns context if inside AppDetailProvider, or a graceful fallback (navigating to /apps/:name on openApp) if outside. Never throws. */
|
|
1648
1786
|
declare const useAppDetail: () => AppDetailContextType;
|
|
1649
1787
|
/** Safe variant: returns null if no provider is mounted. Useful for components used both inside and outside the dashboard. */
|
|
1650
|
-
declare const useAppDetailOptional: () => AppDetailContextType;
|
|
1788
|
+
declare const useAppDetailOptional: () => AppDetailContextType | null;
|
|
1651
1789
|
|
|
1652
1790
|
declare const useSyncHostBaseUrl: (globalUrl: string | undefined | null) => void;
|
|
1653
1791
|
|
|
1654
|
-
/**
|
|
1655
|
-
* Global fetch circuit breaker.
|
|
1656
|
-
*
|
|
1657
|
-
* Installs a one-time wrapper around `window.fetch` that protects the Shuffle
|
|
1658
|
-
* backend from infinite-loop spam. If the same endpoint (method + URL pathname,
|
|
1659
|
-
* scoped to a Shuffle backend origin) fails repeatedly inside a short window,
|
|
1660
|
-
* subsequent calls fail-fast with a synthetic 503 for a cooldown period.
|
|
1661
|
-
*
|
|
1662
|
-
* The breaker is "half-open": shortly after tripping it lets a single probe
|
|
1663
|
-
* request through. If that probe succeeds the endpoint is restored immediately
|
|
1664
|
-
* instead of staying blocked for the full cooldown.
|
|
1665
|
-
*
|
|
1666
|
-
* This is a safety net — components and hooks should still throttle / cache
|
|
1667
|
-
* their own requests. The breaker only kicks in when something has gone wrong
|
|
1668
|
-
* (a useEffect missing deps, a render loop, an unreachable backend).
|
|
1669
|
-
*
|
|
1670
|
-
* Both Shuffle-Core and Shuffle-MCPs install this — it is idempotent so the
|
|
1671
|
-
* first call wins and the second is a no-op.
|
|
1672
|
-
*/
|
|
1673
1792
|
/** Register a backend origin as one we should guard. Idempotent. */
|
|
1674
1793
|
declare const registerProtectedOrigin: (url: string | undefined | null) => void;
|
|
1675
1794
|
declare const installFetchBreaker: () => void;
|
|
@@ -1730,6 +1849,21 @@ interface DatastoreItem {
|
|
|
1730
1849
|
value?: string;
|
|
1731
1850
|
data?: string;
|
|
1732
1851
|
}>;
|
|
1852
|
+
rbac?: RBACConfig;
|
|
1853
|
+
}
|
|
1854
|
+
interface PermissionRule {
|
|
1855
|
+
roles?: string[];
|
|
1856
|
+
users?: string[];
|
|
1857
|
+
groups?: string[];
|
|
1858
|
+
scopes?: string[];
|
|
1859
|
+
}
|
|
1860
|
+
interface RBACConfig {
|
|
1861
|
+
inherit?: boolean;
|
|
1862
|
+
public?: boolean;
|
|
1863
|
+
read?: PermissionRule;
|
|
1864
|
+
write?: PermissionRule;
|
|
1865
|
+
execute?: PermissionRule;
|
|
1866
|
+
admin?: PermissionRule;
|
|
1733
1867
|
}
|
|
1734
1868
|
interface CategoryAutomation {
|
|
1735
1869
|
id?: string;
|
|
@@ -1753,6 +1887,7 @@ interface CategoryConfig {
|
|
|
1753
1887
|
settings: {
|
|
1754
1888
|
timeout: number;
|
|
1755
1889
|
public: boolean;
|
|
1890
|
+
rbac?: RBACConfig;
|
|
1756
1891
|
};
|
|
1757
1892
|
}
|
|
1758
1893
|
interface DatastoreKeyExisted {
|
|
@@ -1782,7 +1917,7 @@ interface DatastoreDiagnostics {
|
|
|
1782
1917
|
status?: number;
|
|
1783
1918
|
statusText?: string;
|
|
1784
1919
|
contentType?: string | null;
|
|
1785
|
-
responseShape?: 'array' | 'keys' | 'data' | 'unknown';
|
|
1920
|
+
responseShape?: 'array' | 'keys' | 'data' | 'object' | 'unknown';
|
|
1786
1921
|
itemCount?: number;
|
|
1787
1922
|
totalAmount?: number | null;
|
|
1788
1923
|
bodyPreview?: string;
|
|
@@ -1793,7 +1928,9 @@ declare const setRuntimeOrgId: (orgId: string | null) => void;
|
|
|
1793
1928
|
/**
|
|
1794
1929
|
* Set a single item in the datastore
|
|
1795
1930
|
*/
|
|
1796
|
-
declare const setDatastoreItem: (key: string, value: string | object, category: string, overrideOrgId?: string
|
|
1931
|
+
declare const setDatastoreItem: (key: string, value: string | object, category: string, overrideOrgId?: string, options?: {
|
|
1932
|
+
regionUrl?: string;
|
|
1933
|
+
}) => Promise<DatastoreResponse>;
|
|
1797
1934
|
/**
|
|
1798
1935
|
* Set multiple items in the datastore (bulk create) using v2 API
|
|
1799
1936
|
*/
|
|
@@ -1806,6 +1943,7 @@ declare const setDatastoreItems: (items: {
|
|
|
1806
1943
|
*/
|
|
1807
1944
|
declare const getDatastoreItem: (key: string, category: string, overrideOrgId?: string, options?: {
|
|
1808
1945
|
priority?: boolean;
|
|
1946
|
+
regionUrl?: string;
|
|
1809
1947
|
}) => Promise<DatastoreResponse & {
|
|
1810
1948
|
item?: DatastoreItem;
|
|
1811
1949
|
}>;
|
|
@@ -1829,7 +1967,9 @@ declare const getDatastoreByCategory: (category: string, cursor?: string, limit?
|
|
|
1829
1967
|
/**
|
|
1830
1968
|
* Delete a single item from the datastore
|
|
1831
1969
|
*/
|
|
1832
|
-
declare const deleteDatastoreItem: (key: string, category: string, overrideOrgId?: string
|
|
1970
|
+
declare const deleteDatastoreItem: (key: string, category: string, overrideOrgId?: string, options?: {
|
|
1971
|
+
regionUrl?: string;
|
|
1972
|
+
}) => Promise<DatastoreResponse>;
|
|
1833
1973
|
/**
|
|
1834
1974
|
* Delete multiple items from the datastore (bulk delete)
|
|
1835
1975
|
*/
|
|
@@ -1841,7 +1981,8 @@ declare const deleteDatastoreItems: (keys: string[], category: string) => Promis
|
|
|
1841
1981
|
}>;
|
|
1842
1982
|
declare const DATASTORE_CATEGORIES: {
|
|
1843
1983
|
readonly INCIDENTS: "shuffle-security_incidents";
|
|
1844
|
-
readonly VULNERABILITIES: "shuffle-
|
|
1984
|
+
readonly VULNERABILITIES: "shuffle-security_vulns";
|
|
1985
|
+
readonly VULNS: "shuffle-security_vulns";
|
|
1845
1986
|
readonly ASSETS: "shuffle-security_assets";
|
|
1846
1987
|
readonly PACKAGES: "shuffle-security_packages";
|
|
1847
1988
|
readonly SOFTWARE: "shuffle-security_software";
|
|
@@ -2037,6 +2178,43 @@ declare const VideoEmbed: React__default.FC<{
|
|
|
2037
2178
|
title?: string;
|
|
2038
2179
|
}>;
|
|
2039
2180
|
|
|
2181
|
+
/**
|
|
2182
|
+
* connectedSourcesService — Discovers and connects tenant ingestion sources and forward destinations
|
|
2183
|
+
* as active AI tools in contextual Ask AI panels.
|
|
2184
|
+
*
|
|
2185
|
+
* Self-contained: relative imports only within Shuffle-MCPs.
|
|
2186
|
+
*/
|
|
2187
|
+
interface ConnectedToolApp {
|
|
2188
|
+
name: string;
|
|
2189
|
+
id?: string;
|
|
2190
|
+
icon?: string;
|
|
2191
|
+
}
|
|
2192
|
+
/**
|
|
2193
|
+
* Retrieve cached connected tools from localStorage for immediate synchronous render.
|
|
2194
|
+
*/
|
|
2195
|
+
declare function getCachedConnectedTools(category?: string): ConnectedToolApp[];
|
|
2196
|
+
/**
|
|
2197
|
+
* Save discovered connected tools to localStorage cache.
|
|
2198
|
+
*/
|
|
2199
|
+
declare function setCachedConnectedTools(category: string, tools: ConnectedToolApp[]): void;
|
|
2200
|
+
/** Maximum number of automatically assigned tools. */
|
|
2201
|
+
declare const MAX_AUTO_ASSIGNED_TOOLS = 6;
|
|
2202
|
+
/**
|
|
2203
|
+
* Merge connected tools into a base app list without duplicating entries,
|
|
2204
|
+
* preserving base apps first and appending tools enabled for ingestion.
|
|
2205
|
+
*/
|
|
2206
|
+
declare function mergeConnectedTools(baseApps?: ConnectedToolApp[], connectedTools?: ConnectedToolApp[], maxTools?: number): ConnectedToolApp[];
|
|
2207
|
+
/**
|
|
2208
|
+
* Derives connected tools from raw API responses.
|
|
2209
|
+
* Strictly includes only available tools that are BOTH authenticated AND configured for ingestion,
|
|
2210
|
+
* capped to a maximum number of tools (default 4).
|
|
2211
|
+
*/
|
|
2212
|
+
declare function resolveConnectedTools(category: 'incidents' | 'vulnerabilities' | string, authApiResponse?: any[], workflowsResponse?: any[], maxTools?: number): ConnectedToolApp[];
|
|
2213
|
+
/**
|
|
2214
|
+
* Fetch live connected tools from tenant workflows and authenticated apps.
|
|
2215
|
+
*/
|
|
2216
|
+
declare function fetchConnectedTools(category: string, resolveUrl?: (path: string) => string, resolveHeaders?: () => Record<string, string>): Promise<ConnectedToolApp[]>;
|
|
2217
|
+
|
|
2040
2218
|
/**
|
|
2041
2219
|
* Local Singul Library — fully self-contained.
|
|
2042
2220
|
* No host-app `@/` imports remain inside this folder (assets aside).
|
|
@@ -2057,6 +2235,8 @@ type ShuffleTheme = 'light' | 'dark' | 'system';
|
|
|
2057
2235
|
declare const ShuffleMCP: React__default.ForwardRefExoticComponent<any>;
|
|
2058
2236
|
|
|
2059
2237
|
declare const AppDetailDrawer: React__default.ComponentType<any>;
|
|
2238
|
+
declare const AppDetailContent: React__default.ComponentType<any>;
|
|
2239
|
+
|
|
2060
2240
|
declare const AppSearchDrawer: React__default.ComponentType<any>;
|
|
2061
2241
|
declare const AiAgentPromptsEditor: React__default.ComponentType<any>;
|
|
2062
2242
|
|
|
@@ -2091,4 +2271,4 @@ declare const LocalLLMConfig: React__default.ComponentType<any>;
|
|
|
2091
2271
|
|
|
2092
2272
|
declare const AddAppModal: React__default.ComponentType<any>;
|
|
2093
2273
|
|
|
2094
|
-
export { AGENT_PRESETS, AGENT_PROMPT_PREFIX_CATEGORY, API_CONFIG, AddAppModal, type AddAppModalProps, AgentActivityList, type AgentActivityListProps, type AgentActivityParams, type AgentActivityResponse, type AgentContextApp, type AgentContextRule, type AgentDecision, AgentExecutionDrawer, type AgentExecutionDrawerProps, AgentIcon, type AgentLocalModel, type AgentPreset, AgentPresets, type AgentPresetsProps, AgentPromptPrefixChip, type AgentPromptPrefixChipProps, type AgentResolvedContext, type AgentRun, AgentRunDiagnosisBanner, AgentRunDrawer, type AgentRunDrawerProps, type AgentRunDrawerTab, type AgentRunResult, AgentUI, type AgentUIApp, type AgentUIProps, AgentsView, type AgentsViewProps, AiAgentPromptsEditor, type AiAgentPromptsEditorProps, type AlgoliaSearchApp, type ApiAuthEntry, AppAuthCard, type AppAuthCardProps, AppAuthConfig, AppAuthSection, type AppAuthSectionProps, type AppAuthState, type AppAuthentication$1 as AppAuthentication, AppDetailDrawer, AppDetailProvider, type AppLookupResult, AppSearchDrawer, type AppSelectedEvent, AppTitleHeader, type AppTitleHeaderProps, AskAiButton, type AskAiButtonProps, AskAiDrawer, type AskAiDrawerProps, AskAiSidePanel, type AskAiSidePanelProps, AskAiWidget, type AskAiWidgetProps, type AuthStatus, CASES_PATTERNS, COMMUNICATION_PATTERNS_NAMES, type CategoryAutomation, type CategoryConfig, type CustomStyles, DATASTORE_CATEGORIES, DEFAULT_AGENT_CONTEXT_RULES, DEFAULT_AGENT_PROMPT_PREFIX, type DatastoreDiagnostics, type DatastoreItem, type DatastoreResponse, type DiagnosableRun, type DiagnosisEvidence, EDR_PATTERNS, EMAIL_APP_PATTERNS, FORWARD_TICKETS_WORKFLOW_NAME, type FetchAppsOptions, INGEST_TICKETS_WORKFLOW_NAME, type IngestionCategory, IntegrationStatus, LocalLLMConfig, type LocalLLMConfigProps, type LocalLLMTestResult, ShuffleMarkdown as Markdown, MarkdownJsonBlock, type OutputDiagnosis, type PageContextChoice, type ResolvedApp, SIEM_PATTERNS, type ShuffleHostProps, ShuffleMCP, type ShuffleMCPHandle, type ShuffleMCPProps, ShuffleMarkdown, type ShuffleMcpColorMode, ShuffleMcpThemeProvider, type ShuffleMcpThemeProviderProps, ShufflePipelinesBanner, type ShuffleTheme, SingulActionsPreview, THREAT_INTEL_PATTERNS, TryMcpSection, type TryMcpSectionProps, UsageBar, type UsageBarProps, type UseAgentPromptPrefixOptions, VULN_SCANNER_PATTERNS, type ValidatedIngestionApp, VideoEmbed, applyRegionFromPayload, clearPageContextChoice, ShuffleMCP as default, deleteDatastoreItem, deleteDatastoreItems, diagnoseOutputWarning, extractActionAppNames, extractValidatedIngestionApps, extractWorkflowActionAppNames, extractWorkflowAppNames, fetchApps, fetchAppsViaApiConfig, findForwardTicketsWorkflow, findIngestTicketsWorkflow, getActivePageEntityName, getAgentContextRules, getApiUrl, getAuthHeader, getDatastoreByCategory, getDatastoreItem, getDatastoreItemPublic, getDatastorePageSize, getFailureInfo, getHostBaseUrl, getIngestionCategory, getPageContextChoice, hasOutputWarning, installFetchBreaker, invalidateAppsCache, invalidateResolvedApps, isAgentRoute, isCloud, isCloudDomain, isEmailApp, isIngestionApp, isOnprem, isThreatIntelApp, isVulnScannerApp, isWorkflowScheduleStopped, matchRoutePattern, normalizeAppName, parseRunResult, refreshAllIntegrationStatus, registerAgentContextRule, registerProtectedOrigin, resetRegionUrl, resolveAgentContext, resolveApp, resolveApps, resolveVideoUrl, scheduleAgentRun, searchAgentActivity, seedResolvedApp, setDatastoreItem, setDatastoreItems, setHostBaseUrl, setPageContextChoice, setRegionUrl, setRuntimeOrgId, setToastImpl, shuffleFetch, toast, useAgentPromptPrefix, useAppAuth, useAppAuthFlow, useAppDetail, useAppDetailOptional, useAppLookup, useContextAwareAgent, useSyncHostBaseUrl };
|
|
2274
|
+
export { AGENT_PRESETS, AGENT_PROMPT_PREFIX_CATEGORY, API_CONFIG, ASK_AI_PANEL_WIDTH_STORAGE_KEY, AddAppModal, type AddAppModalProps, AgentActivityList, type AgentActivityListProps, type AgentActivityParams, type AgentActivityResponse, type AgentContextApp, type AgentContextRule, type AgentDecision, AgentExecutionDrawer, type AgentExecutionDrawerProps, AgentIcon, type AgentLocalModel, type AgentPreset, AgentPresets, type AgentPresetsProps, AgentPromptPrefixChip, type AgentPromptPrefixChipProps, type AgentResolvedContext, type AgentRun, AgentRunDiagnosisBanner, AgentRunDrawer, type AgentRunDrawerProps, type AgentRunDrawerTab, type AgentRunResult, AgentUI, type AgentUIApp, type AgentUIProps, AgentsView, type AgentsViewProps, AiAgentPromptsEditor, type AiAgentPromptsEditorProps, type AlgoliaSearchApp, type ApiAuthEntry, AppAuthCard, type AppAuthCardProps, AppAuthConfig, AppAuthSection, type AppAuthSectionProps, type AppAuthState, type AppAuthentication$1 as AppAuthentication, AppDetailContent, type AppDetailContentProps, AppDetailDrawer, AppDetailProvider, type AppInfo, type AppLookupResult, AppSearchDrawer, type AppSelectedEvent, AppTitleHeader, type AppTitleHeaderProps, AskAiButton, type AskAiButtonProps, AskAiDrawer, type AskAiDrawerProps, AskAiSidePanel, type AskAiSidePanelProps, AskAiWidget, type AskAiWidgetProps, type AuthStatus, CASES_PATTERNS, COMMUNICATION_PATTERNS_NAMES, type CategoryAutomation, type CategoryConfig, type ConnectedToolApp, type CustomStyles, DATASTORE_CATEGORIES, DEFAULT_AGENT_CONTEXT_RULES, DEFAULT_AGENT_PROMPT_PREFIX, DEMO_AGENT_RUNS, type DatastoreDiagnostics, type DatastoreItem, type DatastoreResponse, type DiagnosableRun, type DiagnosisEvidence, EDR_PATTERNS, EMAIL_APP_PATTERNS, FORWARD_TICKETS_WORKFLOW_NAME, type FetchAppsOptions, INGEST_TICKETS_WORKFLOW_NAME, type IngestionCategory, IntegrationStatus, LocalLLMConfig, type LocalLLMConfigProps, type LocalLLMTestResult, MAX_ASK_AI_PANEL_WIDTH, MAX_AUTO_ASSIGNED_TOOLS, MIN_ASK_AI_PANEL_WIDTH, ShuffleMarkdown as Markdown, MarkdownJsonBlock, type OutputDiagnosis, type PageContextChoice, type ResolvedApp, SIEM_PATTERNS, type ShuffleHostProps, ShuffleMCP, type ShuffleMCPHandle, type ShuffleMCPProps, ShuffleMarkdown, type ShuffleMcpColorMode, ShuffleMcpThemeProvider, type ShuffleMcpThemeProviderProps, ShufflePipelinesBanner, type ShuffleTheme, SingulActionsPreview, THREAT_INTEL_PATTERNS, TryMcpSection, type TryMcpSectionProps, UsageBar, type UsageBarProps, type UseAgentPromptPrefixOptions, VERIFIED_BUILTIN_APPS, VULN_SCANNER_PATTERNS, type ValidatedIngestionApp, VideoEmbed, applyRegionFromPayload, checkAppNameMatch, clearPageContextChoice, ShuffleMCP as default, deleteDatastoreItem, deleteDatastoreItems, diagnoseOutputWarning, extractActionAppNames, extractValidatedIngestionApps, extractWorkflowActionAppNames, extractWorkflowAppNames, fetchApps, fetchAppsViaApiConfig, fetchConnectedTools, findForwardTicketsWorkflow, findIngestTicketsWorkflow, getActivePageEntityName, getAgentContextRules, getApiUrl, getAuthHeader, getCachedConnectedTools, getDatastoreByCategory, getDatastoreItem, getDatastoreItemPublic, getDatastorePageSize, getFailureInfo, getHostBaseUrl, getIngestionCategory, getPageContextChoice, hasOutputWarning, installFetchBreaker, invalidateAppsCache, invalidateResolvedApps, isAgentRoute, isCloud, isCloudDomain, isEmailApp, isIngestionApp, isOnprem, isShuffleCloudDomain, isShuffleSecurityBackend, isThreatIntelApp, isVulnScannerApp, isWorkflowScheduleStopped, mapCloudRegionUrl, matchRoutePattern, mergeConnectedTools, normalizeAppName, parseRunResult, refreshAllIntegrationStatus, registerAgentContextRule, registerProtectedOrigin, resetRegionUrl, resolveAgentContext, resolveApp, resolveApps, resolveConnectedTools, resolveVideoUrl, scheduleAgentRun, searchAgentActivity, seedResolvedApp, setCachedConnectedTools, setDatastoreItem, setDatastoreItems, setHostBaseUrl, setPageContextChoice, setRegionUrl, setRuntimeOrgId, setToastImpl, shuffleFetch, toast, useAgentPromptPrefix, useAppAuth, useAppAuthFlow, useAppDetail, useAppDetailOptional, useAppLookup, useContextAwareAgent, useSyncHostBaseUrl };
|