@elevasis/ui 2.65.0 → 2.66.0
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/app/index.d.ts +6 -0
- package/dist/app/index.js +5 -5
- package/dist/auth/index.d.ts +12 -5
- package/dist/auth/index.js +5 -5
- package/dist/charts/index.js +5 -5
- package/dist/{chunk-ZTWA5H77.js → chunk-6ZAP3FOA.js} +0 -1
- package/dist/{chunk-3WVZRN37.js → chunk-ANNM5R7S.js} +235 -365
- package/dist/chunk-L7BZZ4SI.js +56 -0
- package/dist/chunk-P45GQ3ZW.js +104 -0
- package/dist/{chunk-EIXSQONC.js → chunk-RT4KRGZT.js} +37 -59
- package/dist/components/index.d.ts +240 -209
- package/dist/components/index.js +5 -5
- package/dist/components/navigation/index.js +5 -5
- package/dist/execution/index.d.ts +115 -104
- package/dist/features/auth/index.d.ts +39 -8
- package/dist/features/auth/index.js +14 -9
- package/dist/features/clients/index.js +5 -5
- package/dist/features/crm/index.js +5 -5
- package/dist/features/dashboard/index.js +5 -5
- package/dist/features/delivery/index.js +5 -5
- package/dist/features/knowledge/index.js +5 -5
- package/dist/features/lead-gen/index.js +5 -5
- package/dist/features/monitoring/index.js +5 -5
- package/dist/features/monitoring/requests/index.js +6 -6
- package/dist/features/notes/index.js +2 -2
- package/dist/features/operations/index.d.ts +141 -105
- package/dist/features/operations/index.js +5 -5
- package/dist/features/settings/index.d.ts +1 -0
- package/dist/features/settings/index.js +5 -5
- package/dist/hooks/access/index.js +5 -5
- package/dist/hooks/delivery/index.js +5 -5
- package/dist/hooks/index.d.ts +284 -162
- package/dist/hooks/index.js +5 -5
- package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +0 -2
- package/dist/hooks/operations/command-view/utils/transformCommandViewData.js +1 -1
- package/dist/hooks/published.d.ts +284 -162
- package/dist/hooks/published.js +5 -5
- package/dist/index.d.ts +374 -236
- package/dist/index.js +5 -5
- package/dist/initialization/index.d.ts +61 -28
- package/dist/initialization/index.js +3 -3
- package/dist/knowledge/index.js +9 -9
- package/dist/{knowledge-search-index-JOPRYZN6.js → knowledge-search-index-6EZNBNSR.js} +4 -4
- package/dist/layout/index.js +5 -5
- package/dist/organization/index.d.ts +49 -4
- package/dist/organization/index.js +5 -5
- package/dist/profile/index.d.ts +23 -2
- package/dist/profile/index.js +1 -1
- package/dist/provider/index.js +5 -5
- package/dist/provider/published.js +5 -5
- package/dist/types/index.d.ts +330 -271
- package/package.json +3 -3
- package/dist/chunk-LO7GWG24.js +0 -75
- package/dist/chunk-T4LA4RY2.js +0 -56
|
@@ -4,14 +4,14 @@ import { useSupabase } from './chunk-MKH2KOAO.js';
|
|
|
4
4
|
import { HTTP_HEADERS, ApiClientProvider, useApiClient } from './chunk-XNW3O6QW.js';
|
|
5
5
|
import { sidebarItemGap, sidebarSubLinkPaddingY, sidebarSubLinkPaddingX, sidebarSubLinkIndent, sidebarHoverDelay, sidebarTransitionDuration, sidebarCollapsedWidth, sidebarWidth, topbarHeight, sidebarToggleIconSize, sidebarSectionPadding, sidebarItemPadding, sidebarItemHeight, sidebarIconSize, sidebarIconStroke, sidebarIconInnerSize, sidebarBottomSectionHeight, SubshellNavItem, sidebarGroupChevronSize, SubshellSidebarSection } from './chunk-GMXGDO3I.js';
|
|
6
6
|
import { CardHeader } from './chunk-62GVNH5U.js';
|
|
7
|
-
import { useInitialization, InitializationContext, InitializationProvider } from './chunk-
|
|
7
|
+
import { useInitialization, InitializationContext, InitializationProvider } from './chunk-P45GQ3ZW.js';
|
|
8
8
|
import { OrganizationContext, useOrganization } from './chunk-DD3CCMCZ.js';
|
|
9
9
|
import { SessionIdParamSchema, CreateSessionSchema, GetNotificationsQuerySchema, MarkAsReadParamsSchema, ExecutionIdParamsSchema, createLiveTempMessageIdentity, WebSocketSessionTurnSchema, mergeSessionMessages } from './chunk-M7WWRZ5Z.js';
|
|
10
10
|
import { StyledMarkdown, ChatInterface, ChatHeader } from './chunk-JFBZ6XDW.js';
|
|
11
11
|
import { useRouterContext } from './chunk-Q7DJKLEN.js';
|
|
12
|
-
import { Graph_module_css_default, useDirectedChainHighlighting, useNodeSelection, useFitViewTrigger
|
|
12
|
+
import { Graph_module_css_default, useDirectedChainHighlighting, useNodeSelection, useFitViewTrigger } from './chunk-HENXLGVD.js';
|
|
13
13
|
import { STATUS_COLORS, getStatusIcon, formatDuration, getStatusColors, AGENT_CONSTANTS, shouldAnimateEdge, TIMELINE_CONSTANTS, calculateBarPosition, CONTAINER_CONSTANTS, useExecutionPath, useUnifiedWorkflowLayout, WORKFLOW_CONSTANTS, useReactFlowAgent, getResourceStatusColor, useMergedExecution, useTimelineData, useAgentIterationData } from './chunk-BLXJEIQS.js';
|
|
14
|
-
import { useProfile, useUserProfile, ProfileProvider } from './chunk-
|
|
14
|
+
import { useProfile, useUserProfile, ProfileProvider } from './chunk-RT4KRGZT.js';
|
|
15
15
|
import { LabelSchema, DescriptionSchema, PathSchema, ModelIdSchema, IconNameSchema, SystemLifecycleSchema, OntologyIdSchema, SystemPathSchema, ActionInvocationSchema, SystemIdSchema, NodeIdStringSchema, JsonValueSchema, SystemInterfaceRefSchema, EntitiesDomainSchema, ActionsDomainSchema, DEFAULT_ORGANIZATION_MODEL_ACTIONS, OntologyScopeSchema, DEFAULT_ONTOLOGY_SCOPE, SystemsDomainSchema, DEFAULT_ORGANIZATION_MODEL_SYSTEMS, defineEntities, defineActions, listAllSystems, listResolvedOntologyRecords, getErrorInfo, getErrorTitle, formatErrorMessage, getSystem, compileOrganizationOntology, isAPIClientError, getResourceIcon, formatTimeAgo, PAGE_SIZE_DEFAULT, STALE_TIME_MONITORING, STALE_TIME_DEFAULT, STALE_TIME_ADMIN, APIClientError, GC_TIME_MEDIUM, GC_TIME_SHORT, formatDateTime, LEAD_GEN_API_INTERFACE, computeInterfaceReadiness, getAllBuildTemplates, getLeadGenStageCatalog, formatDate, formatRelativeTime, getResourcesForSystem, ontologyGraphNodeId, parseOntologyId, getAllProspectingStages, getAllPipelines, getAllProjectStatuses, OAUTH_FLOW_TIMEOUT, devOnlyFor, requiresAdminFor, topLevel, parentOf, ancestorsOf, childrenOf, findById, findByPath, getSystemAncestors, resolveSystemConfig, defaultPathFor } from './chunk-I7BZVVVU.js';
|
|
16
16
|
import { getTimeRangeLabel, getTimeRangeDates, formatBucketTime, REFETCH_INTERVAL_DASHBOARD, REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, debounce } from './chunk-Y6I3IC45.js';
|
|
17
17
|
import { ResourceStatusColors, toWorkflowLogMessages } from './chunk-6SSQGWK7.js';
|
|
@@ -22,7 +22,7 @@ import { useAuthContext } from './chunk-BRJ3QZ4E.js';
|
|
|
22
22
|
import { createContext, forwardRef, lazy, memo, useEffect, useRef, createElement, useContext, useLayoutEffect, useMemo, useState, cloneElement, useCallback, useId, Fragment as Fragment$1, Component, useDeferredValue, useEffectEvent, Suspense } from 'react';
|
|
23
23
|
import { useQueryClient, useMutation, useQuery, QueryClientProvider, useQueries, QueryClient } from '@tanstack/react-query';
|
|
24
24
|
import { z } from 'zod';
|
|
25
|
-
import { IconPlayerPlay, IconPlayerStop, IconArrowsSplit, IconSquare,
|
|
25
|
+
import { IconPlayerPlay, IconPlayerStop, IconArrowsSplit, IconSquare, IconLayoutSidebarLeftExpand, IconLayoutSidebarLeftCollapse, IconUser, IconLogout, IconChevronRight, IconLayoutGrid, IconColumns, IconFileInvoice, IconMail, IconSend, IconFileText, IconClock, IconArrowUp, IconMessageCircle, IconRocket, IconEye, IconEdit, IconAlertTriangle, IconRefresh, IconX, IconCheck, IconShieldLock, IconActivity, IconTopologyStar3, IconApps, IconBriefcase, IconBuilding, IconBolt, IconSearch, IconChartBar, IconUsers, IconInfoCircle, IconMessagePlus, IconDatabase, IconGitBranch, IconDashboard, IconBuildingStore, IconPlug, IconBrain, IconTargetArrow, IconBook, IconArchive, IconSettings, IconTool, IconCalendar, IconNotes, IconChecklist, IconFlag, IconList, IconAddressBook, IconTarget, IconCode, IconLock, IconShieldOff, IconChevronUp, IconChevronDown, IconSelector, IconTrash, IconMinus, IconTrendingUp, IconTrendingDown, IconAlertCircle, IconBan, IconInbox, IconHeartHandshake, IconUserOff, IconMailForward, IconBell, IconCalendarEvent, IconCalendarCancel, IconMessageReply, IconCircleCheck, IconCreditCard, IconArrowRight, IconPlus, IconDownload, IconChartLine, IconThumbDown, IconThumbUp, IconCircleX, IconFilterOff, IconArrowUpRight, IconExternalLink, IconChartPie, IconHeartbeat, IconCpu, IconCash, IconExclamationCircle, IconBug, IconChecks, IconCircle, IconCircleFilled, IconMoonStars, IconSun, IconFocus2, IconClockHour4, IconVersions, IconSitemap, IconPencil, IconKey, IconExclamationMark, IconCopy, IconPower, IconTag, IconWebhook, IconReload, IconTerminal2, IconMessage, IconArrowLeft, IconCalendarRepeat, IconCalendarTime, IconRobot, IconDotsVertical, IconPlayerPause, IconCalendarDue, IconCalendarStats, IconCalendarOff, IconListCheck, IconFilter, IconCategory, IconHistory, IconCurrencyDollar, IconTrophy, IconMessages, IconRestore, IconListDetails, IconLayoutDashboard, IconBuildingFactory2, IconFileDescription, IconRoute, IconHandStop, IconAdjustmentsHorizontal, IconCircleDashed, IconFolders, IconBraces, IconTimeline, IconNote, IconPalette, IconSparkles, IconStar, IconUserCog, IconUsersGroup, IconBrandDropbox, IconBrandGoogleDrive, IconClockExclamation, IconArrowDown, IconUserX, IconUserCheck, IconFileOff, IconActivityHeartbeat, IconClockPause, IconArrowsMaximize, IconShare2, IconFolder, IconCheckbox, IconPhone, IconStarFilled, IconWand, IconScript, IconPlugConnected, IconCircleCheckFilled } from '@tabler/icons-react';
|
|
26
26
|
import * as runtime from 'react/jsx-runtime';
|
|
27
27
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
28
28
|
import { createUseExternalEvents, Collapse, Paper, Stack, Text, Group, Badge, Box, HoverCard, UnstyledButton, Tooltip, ScrollArea, Menu, Avatar, useComputedColorScheme, ThemeIcon, Center, Card, Title, Checkbox, Modal, TextInput, Textarea, Loader, Alert, Button, Space, Table, Select, Code, Grid, Timeline, NumberFormatter, SimpleGrid, SegmentedControl, ActionIcon, Switch, Pagination, mergeThemeOverrides, MantineProvider, Divider, Popover, Indicator, Container, useMantineColorScheme, CopyButton, PasswordInput, Anchor, useMantineTheme, RangeSlider, Progress, Tabs, Breadcrumbs as Breadcrumbs$1, NumberInput, ColorSwatch, RingProgress, LoadingOverlay, Accordion, MultiSelect, useTree, Tree, Radio, Pill, Drawer, Chip, JsonInput, TagsInput, List } from '@mantine/core';
|
|
@@ -42,7 +42,6 @@ import { create } from 'zustand';
|
|
|
42
42
|
import { persist, createJSONStorage } from 'zustand/middleware';
|
|
43
43
|
import { Position, Handle, getSmoothStepPath, BaseEdge as BaseEdge$1, EdgeLabelRenderer, Panel, useReactFlow, Controls, ReactFlowProvider, ReactFlow } from '@xyflow/react';
|
|
44
44
|
import '@xyflow/react/dist/style.css';
|
|
45
|
-
import dagre from '@dagrejs/dagre';
|
|
46
45
|
import { zod4Resolver } from 'mantine-form-zod-resolver';
|
|
47
46
|
import { Link, RichTextEditor as RichTextEditor$1 } from '@mantine/tiptap';
|
|
48
47
|
import { useEditor } from '@tiptap/react';
|
|
@@ -152,6 +151,18 @@ var MEMBERSHIP_STATUS_COLORS = {
|
|
|
152
151
|
active: "green",
|
|
153
152
|
inactive: "gray"
|
|
154
153
|
};
|
|
154
|
+
var PROVISIONING_STATE_DISPLAY = {
|
|
155
|
+
pre_provisioned: {
|
|
156
|
+
label: "Invited",
|
|
157
|
+
color: "orange",
|
|
158
|
+
description: "Invited but signup is not complete. The membership exists here; no WorkOS account is linked to it yet."
|
|
159
|
+
},
|
|
160
|
+
workos_only: {
|
|
161
|
+
label: "Sync gap",
|
|
162
|
+
color: "red",
|
|
163
|
+
description: "WorkOS has this membership but our database has no row for it, so it is not included in the member count. Remove and re-add the member to restore the record."
|
|
164
|
+
}
|
|
165
|
+
};
|
|
155
166
|
var MembershipRoleSchema = z.string().min(1).max(64);
|
|
156
167
|
var MembershipStatusSchema = z.enum(["active", "inactive"]);
|
|
157
168
|
var MembershipIdParamSchema = z.object({
|
|
@@ -4556,15 +4567,17 @@ var CustomModal = ({ children, opened, onClose, loading, style, size }) => {
|
|
|
4556
4567
|
);
|
|
4557
4568
|
};
|
|
4558
4569
|
function useCreateOrgRole() {
|
|
4559
|
-
const { apiRequest
|
|
4570
|
+
const { apiRequest } = useElevasisServices();
|
|
4571
|
+
const organization = useContext(OrganizationContext);
|
|
4572
|
+
const orgId = organization?.currentSupabaseOrganizationId ?? null;
|
|
4560
4573
|
const queryClient = useQueryClient();
|
|
4561
4574
|
return useMutation({
|
|
4562
|
-
mutationFn: (input) => apiRequest(`/organizations/${
|
|
4575
|
+
mutationFn: (input) => apiRequest(`/organizations/${orgId}/roles`, {
|
|
4563
4576
|
method: "POST",
|
|
4564
4577
|
body: JSON.stringify(input)
|
|
4565
4578
|
}),
|
|
4566
4579
|
onSettled: () => {
|
|
4567
|
-
queryClient.invalidateQueries({ queryKey: ["org-roles",
|
|
4580
|
+
queryClient.invalidateQueries({ queryKey: ["org-roles", orgId] });
|
|
4568
4581
|
}
|
|
4569
4582
|
});
|
|
4570
4583
|
}
|
|
@@ -5998,9 +6011,34 @@ function useStableAccessToken() {
|
|
|
5998
6011
|
return getAccessTokenRef.current();
|
|
5999
6012
|
}, []);
|
|
6000
6013
|
}
|
|
6014
|
+
|
|
6015
|
+
// src/organization/context/invalidate-org-scoped.ts
|
|
6016
|
+
function invalidateOrgScopedQueries(queryClient, orgIds) {
|
|
6017
|
+
const ids = new Set(orgIds.filter((id) => !!id));
|
|
6018
|
+
if (ids.size === 0) return;
|
|
6019
|
+
void queryClient.invalidateQueries({
|
|
6020
|
+
predicate: (query) => queryKeyReferencesOrg(query.queryKey, ids)
|
|
6021
|
+
});
|
|
6022
|
+
}
|
|
6023
|
+
function queryKeyReferencesOrg(queryKey, orgIds) {
|
|
6024
|
+
return queryKey.some((segment) => segmentReferencesOrg(segment, orgIds));
|
|
6025
|
+
}
|
|
6026
|
+
function segmentReferencesOrg(segment, orgIds) {
|
|
6027
|
+
if (typeof segment === "string") return orgIds.has(segment);
|
|
6028
|
+
if (Array.isArray(segment)) return segment.some((value) => typeof value === "string" && orgIds.has(value));
|
|
6029
|
+
if (segment && typeof segment === "object") {
|
|
6030
|
+
return Object.values(segment).some((value) => typeof value === "string" && orgIds.has(value));
|
|
6031
|
+
}
|
|
6032
|
+
return false;
|
|
6033
|
+
}
|
|
6034
|
+
|
|
6035
|
+
// src/auth/hooks/useSessionCheck.ts
|
|
6001
6036
|
function useSessionCheck() {
|
|
6002
6037
|
const { user } = useAuthContext();
|
|
6003
6038
|
const queryClient = useQueryClient();
|
|
6039
|
+
const organization = useContext(OrganizationContext);
|
|
6040
|
+
const currentWorkOSOrganizationId = organization?.currentWorkOSOrganizationId ?? null;
|
|
6041
|
+
const currentSupabaseOrganizationId = organization?.currentSupabaseOrganizationId ?? null;
|
|
6004
6042
|
const isCheckingRef = useRef(false);
|
|
6005
6043
|
const hadUserRef = useRef(false);
|
|
6006
6044
|
if (user) {
|
|
@@ -6019,7 +6057,7 @@ function useSessionCheck() {
|
|
|
6019
6057
|
}
|
|
6020
6058
|
if (user) {
|
|
6021
6059
|
await queryClient.cancelQueries();
|
|
6022
|
-
queryClient
|
|
6060
|
+
invalidateOrgScopedQueries(queryClient, [currentWorkOSOrganizationId, currentSupabaseOrganizationId]);
|
|
6023
6061
|
}
|
|
6024
6062
|
} finally {
|
|
6025
6063
|
isCheckingRef.current = false;
|
|
@@ -6031,21 +6069,43 @@ function useSessionCheck() {
|
|
|
6031
6069
|
document.removeEventListener("visibilitychange", handleVisibilityChange);
|
|
6032
6070
|
window.removeEventListener("focus", handleVisibilityChange);
|
|
6033
6071
|
};
|
|
6034
|
-
}, [user, queryClient]);
|
|
6072
|
+
}, [user, queryClient, currentWorkOSOrganizationId, currentSupabaseOrganizationId]);
|
|
6073
|
+
}
|
|
6074
|
+
|
|
6075
|
+
// src/auth/guards/computeProtectedRouteGate.ts
|
|
6076
|
+
var DEFAULT_WAIT_FOR_ORGANIZATION = true;
|
|
6077
|
+
function computeProtectedRouteGate({
|
|
6078
|
+
isInitializing,
|
|
6079
|
+
userReady,
|
|
6080
|
+
allReady,
|
|
6081
|
+
error,
|
|
6082
|
+
waitForOrganization
|
|
6083
|
+
}) {
|
|
6084
|
+
const unauthenticated = !isInitializing && !userReady && error?.layer !== "profile";
|
|
6085
|
+
const blockingError = !isInitializing && !!error && error.layer !== "organization";
|
|
6086
|
+
const waitingForOrg = !isInitializing && waitForOrganization && !allReady && error?.layer !== "organization";
|
|
6087
|
+
const showFallback = isInitializing || !blockingError && (unauthenticated || waitingForOrg);
|
|
6088
|
+
return { unauthenticated, blockingError, showFallback };
|
|
6035
6089
|
}
|
|
6036
6090
|
function ProtectedRoute({
|
|
6037
6091
|
children,
|
|
6038
6092
|
redirectTo = "/login",
|
|
6039
6093
|
fallback = null,
|
|
6040
6094
|
errorFallback,
|
|
6041
|
-
waitForOrganization =
|
|
6095
|
+
waitForOrganization = DEFAULT_WAIT_FOR_ORGANIZATION
|
|
6042
6096
|
}) {
|
|
6043
6097
|
const { userReady, allReady, isInitializing, error, retry } = useInitialization();
|
|
6044
6098
|
const { signIn, canRecover } = useAuthContext();
|
|
6045
6099
|
const navigate = useNavigate();
|
|
6046
6100
|
const location = useLocation();
|
|
6047
6101
|
const hasRedirected = useRef(false);
|
|
6048
|
-
const unauthenticated
|
|
6102
|
+
const { unauthenticated, blockingError, showFallback } = computeProtectedRouteGate({
|
|
6103
|
+
isInitializing,
|
|
6104
|
+
userReady,
|
|
6105
|
+
allReady,
|
|
6106
|
+
error,
|
|
6107
|
+
waitForOrganization
|
|
6108
|
+
});
|
|
6049
6109
|
useEffect(() => {
|
|
6050
6110
|
if (unauthenticated && !hasRedirected.current) {
|
|
6051
6111
|
hasRedirected.current = true;
|
|
@@ -6061,19 +6121,10 @@ function ProtectedRoute({
|
|
|
6061
6121
|
}
|
|
6062
6122
|
}
|
|
6063
6123
|
}, [unauthenticated, signIn, canRecover, navigate, redirectTo, location]);
|
|
6064
|
-
if (
|
|
6065
|
-
return /* @__PURE__ */ jsx(Fragment, { children:
|
|
6124
|
+
if (blockingError) {
|
|
6125
|
+
return errorFallback ? /* @__PURE__ */ jsx(Fragment, { children: errorFallback(error, retry) }) : null;
|
|
6066
6126
|
}
|
|
6067
|
-
if (
|
|
6068
|
-
if (errorFallback) {
|
|
6069
|
-
return /* @__PURE__ */ jsx(Fragment, { children: errorFallback(error, retry) });
|
|
6070
|
-
}
|
|
6071
|
-
return null;
|
|
6072
|
-
}
|
|
6073
|
-
if (unauthenticated) {
|
|
6074
|
-
return /* @__PURE__ */ jsx(Fragment, { children: fallback });
|
|
6075
|
-
}
|
|
6076
|
-
if (waitForOrganization && !allReady && error?.layer !== "organization") {
|
|
6127
|
+
if (showFallback) {
|
|
6077
6128
|
return /* @__PURE__ */ jsx(Fragment, { children: fallback });
|
|
6078
6129
|
}
|
|
6079
6130
|
return /* @__PURE__ */ jsx(Fragment, { children });
|
|
@@ -8741,15 +8792,36 @@ function OrganizationProvider({ apiRequest, children }) {
|
|
|
8741
8792
|
if (workosOrgId === currentWorkOSOrganizationId) return;
|
|
8742
8793
|
const target = memberships.find((m) => m.organization?.workos_org_id === workosOrgId);
|
|
8743
8794
|
if (!target) return;
|
|
8795
|
+
const previousWorkOSOrgId = currentWorkOSOrganizationId;
|
|
8796
|
+
const previousSupabaseOrgId = currentSupabaseOrganizationId;
|
|
8744
8797
|
applyMembership(target);
|
|
8745
|
-
|
|
8746
|
-
|
|
8798
|
+
invalidateOrgScopedQueries(queryClient, [
|
|
8799
|
+
previousWorkOSOrgId,
|
|
8800
|
+
previousSupabaseOrgId,
|
|
8801
|
+
target.organization?.workos_org_id,
|
|
8802
|
+
target.organizationId
|
|
8803
|
+
]);
|
|
8804
|
+
}, [
|
|
8805
|
+
workosOrgId,
|
|
8806
|
+
currentWorkOSOrganizationId,
|
|
8807
|
+
currentSupabaseOrganizationId,
|
|
8808
|
+
memberships,
|
|
8809
|
+
applyMembership,
|
|
8810
|
+
queryClient
|
|
8811
|
+
]);
|
|
8747
8812
|
const switchOrganization = useCallback(
|
|
8748
8813
|
(workosOrgId2, options) => {
|
|
8749
8814
|
const target = memberships.find((m) => m.organization?.workos_org_id === workosOrgId2);
|
|
8750
8815
|
if (!target) return;
|
|
8816
|
+
const previousWorkOSOrgId = currentWorkOSOrganizationId;
|
|
8817
|
+
const previousSupabaseOrgId = currentSupabaseOrganizationId;
|
|
8751
8818
|
applyMembership(target);
|
|
8752
|
-
|
|
8819
|
+
invalidateOrgScopedQueries(queryClient, [
|
|
8820
|
+
previousWorkOSOrgId,
|
|
8821
|
+
previousSupabaseOrgId,
|
|
8822
|
+
target.organization?.workos_org_id,
|
|
8823
|
+
target.organizationId
|
|
8824
|
+
]);
|
|
8753
8825
|
if (options?.persist !== false) {
|
|
8754
8826
|
void apiRequest("/users/me", {
|
|
8755
8827
|
method: "PATCH",
|
|
@@ -8760,7 +8832,7 @@ function OrganizationProvider({ apiRequest, children }) {
|
|
|
8760
8832
|
});
|
|
8761
8833
|
}
|
|
8762
8834
|
},
|
|
8763
|
-
[memberships, applyMembership, queryClient, apiRequest]
|
|
8835
|
+
[memberships, applyMembership, queryClient, apiRequest, currentWorkOSOrganizationId, currentSupabaseOrganizationId]
|
|
8764
8836
|
);
|
|
8765
8837
|
const retry = useCallback(async () => {
|
|
8766
8838
|
hasInitializedRef.current = false;
|
|
@@ -8893,7 +8965,10 @@ function OrganizationSwitcher({
|
|
|
8893
8965
|
)
|
|
8894
8966
|
] });
|
|
8895
8967
|
}
|
|
8896
|
-
function OrganizationSwitcherConnected(
|
|
8968
|
+
function OrganizationSwitcherConnected({
|
|
8969
|
+
isLoading: extraLoading = false,
|
|
8970
|
+
onSwitched
|
|
8971
|
+
} = {}) {
|
|
8897
8972
|
const { switchToOrganization } = useAuth();
|
|
8898
8973
|
const { currentMembership, memberships, isInitializing, isOrgRefreshing, switchOrganization } = useOrganization();
|
|
8899
8974
|
return /* @__PURE__ */ jsx(
|
|
@@ -8901,10 +8976,11 @@ function OrganizationSwitcherConnected() {
|
|
|
8901
8976
|
{
|
|
8902
8977
|
currentOrganization: currentMembership?.organization,
|
|
8903
8978
|
memberships,
|
|
8904
|
-
isLoading: isInitializing || isOrgRefreshing,
|
|
8979
|
+
isLoading: extraLoading || isInitializing || isOrgRefreshing,
|
|
8905
8980
|
onSwitch: async (workosOrgId) => {
|
|
8906
8981
|
await switchToOrganization({ organizationId: workosOrgId });
|
|
8907
8982
|
switchOrganization(workosOrgId);
|
|
8983
|
+
onSwitched?.(workosOrgId);
|
|
8908
8984
|
}
|
|
8909
8985
|
}
|
|
8910
8986
|
);
|
|
@@ -13138,42 +13214,11 @@ function useDeactivateMembership() {
|
|
|
13138
13214
|
const membershipService = new OrganizationMembershipService(apiRequest);
|
|
13139
13215
|
return await membershipService.deactivateMembership(membershipId);
|
|
13140
13216
|
},
|
|
13141
|
-
|
|
13142
|
-
await queryClient.cancelQueries({ queryKey: ["memberships"] });
|
|
13143
|
-
const previousData = queryClient.getQueryData(["memberships"]);
|
|
13144
|
-
if (variables.userId) {
|
|
13145
|
-
queryClient.setQueryData(
|
|
13146
|
-
["memberships", "user", variables.userId],
|
|
13147
|
-
(old) => {
|
|
13148
|
-
if (!old) return old;
|
|
13149
|
-
return old.map(
|
|
13150
|
-
(membership) => membership.id === variables.membershipId ? { ...membership, status: "inactive", updatedAt: (/* @__PURE__ */ new Date()).toISOString() } : membership
|
|
13151
|
-
);
|
|
13152
|
-
}
|
|
13153
|
-
);
|
|
13154
|
-
}
|
|
13155
|
-
if (variables.organizationId) {
|
|
13156
|
-
queryClient.setQueryData(
|
|
13157
|
-
["memberships", "organization", variables.organizationId],
|
|
13158
|
-
(old) => {
|
|
13159
|
-
if (!old) return old;
|
|
13160
|
-
return old.map(
|
|
13161
|
-
(membership) => membership.id === variables.membershipId ? { ...membership, status: "inactive", updatedAt: (/* @__PURE__ */ new Date()).toISOString() } : membership
|
|
13162
|
-
);
|
|
13163
|
-
}
|
|
13164
|
-
);
|
|
13165
|
-
}
|
|
13166
|
-
return { previousData };
|
|
13167
|
-
},
|
|
13168
|
-
onError: (error, _variables, context) => {
|
|
13169
|
-
if (context?.previousData) {
|
|
13170
|
-
queryClient.setQueryData(["memberships"], context.previousData);
|
|
13171
|
-
}
|
|
13217
|
+
onError: (error) => {
|
|
13172
13218
|
adapter.apiError(error);
|
|
13173
13219
|
},
|
|
13174
|
-
onSuccess
|
|
13175
|
-
|
|
13176
|
-
},
|
|
13220
|
+
// Fires on both success and failure. A prior `onSuccess` invalidated the
|
|
13221
|
+
// same key redundantly.
|
|
13177
13222
|
onSettled: () => {
|
|
13178
13223
|
queryClient.invalidateQueries({ queryKey: ["memberships"] });
|
|
13179
13224
|
}
|
|
@@ -13188,50 +13233,18 @@ function useReactivateMembership() {
|
|
|
13188
13233
|
const membershipService = new OrganizationMembershipService(apiRequest);
|
|
13189
13234
|
return await membershipService.reactivateMembership(membershipId);
|
|
13190
13235
|
},
|
|
13191
|
-
|
|
13192
|
-
await queryClient.cancelQueries({ queryKey: ["memberships"] });
|
|
13193
|
-
const previousData = queryClient.getQueryData(["memberships"]);
|
|
13194
|
-
if (variables.userId) {
|
|
13195
|
-
queryClient.setQueryData(
|
|
13196
|
-
["memberships", "user", variables.userId],
|
|
13197
|
-
(old) => {
|
|
13198
|
-
if (!old) return old;
|
|
13199
|
-
return old.map(
|
|
13200
|
-
(membership) => membership.id === variables.membershipId ? { ...membership, status: "active", updatedAt: (/* @__PURE__ */ new Date()).toISOString() } : membership
|
|
13201
|
-
);
|
|
13202
|
-
}
|
|
13203
|
-
);
|
|
13204
|
-
}
|
|
13205
|
-
if (variables.organizationId) {
|
|
13206
|
-
queryClient.setQueryData(
|
|
13207
|
-
["memberships", "organization", variables.organizationId],
|
|
13208
|
-
(old) => {
|
|
13209
|
-
if (!old) return old;
|
|
13210
|
-
return old.map(
|
|
13211
|
-
(membership) => membership.id === variables.membershipId ? { ...membership, status: "active", updatedAt: (/* @__PURE__ */ new Date()).toISOString() } : membership
|
|
13212
|
-
);
|
|
13213
|
-
}
|
|
13214
|
-
);
|
|
13215
|
-
}
|
|
13216
|
-
return { previousData };
|
|
13217
|
-
},
|
|
13218
|
-
onError: (error, _variables, context) => {
|
|
13219
|
-
if (context?.previousData) {
|
|
13220
|
-
queryClient.setQueryData(["memberships"], context.previousData);
|
|
13221
|
-
}
|
|
13236
|
+
onError: (error) => {
|
|
13222
13237
|
adapter.apiError(error);
|
|
13223
13238
|
},
|
|
13224
|
-
onSuccess: () => {
|
|
13225
|
-
queryClient.invalidateQueries({ queryKey: ["memberships"] });
|
|
13226
|
-
},
|
|
13227
13239
|
onSettled: () => {
|
|
13228
13240
|
queryClient.invalidateQueries({ queryKey: ["memberships"] });
|
|
13229
13241
|
}
|
|
13230
13242
|
});
|
|
13231
13243
|
}
|
|
13232
13244
|
function useOrgRoles(orgId) {
|
|
13233
|
-
const { apiRequest,
|
|
13234
|
-
const
|
|
13245
|
+
const { apiRequest, isReady } = useElevasisServices();
|
|
13246
|
+
const organization = useContext(OrganizationContext);
|
|
13247
|
+
const targetOrgId = orgId ?? organization?.currentSupabaseOrganizationId ?? void 0;
|
|
13235
13248
|
return useQuery({
|
|
13236
13249
|
queryKey: ["org-roles", targetOrgId],
|
|
13237
13250
|
queryFn: () => apiRequest(`/organizations/${targetOrgId}/roles`),
|
|
@@ -13240,33 +13253,39 @@ function useOrgRoles(orgId) {
|
|
|
13240
13253
|
});
|
|
13241
13254
|
}
|
|
13242
13255
|
function useUpdateOrgRole() {
|
|
13243
|
-
const { apiRequest
|
|
13256
|
+
const { apiRequest } = useElevasisServices();
|
|
13257
|
+
const organization = useContext(OrganizationContext);
|
|
13258
|
+
const orgId = organization?.currentSupabaseOrganizationId ?? null;
|
|
13244
13259
|
const queryClient = useQueryClient();
|
|
13245
13260
|
return useMutation({
|
|
13246
|
-
mutationFn: ({ roleId, input }) => apiRequest(`/organizations/${
|
|
13261
|
+
mutationFn: ({ roleId, input }) => apiRequest(`/organizations/${orgId}/roles/${roleId}`, {
|
|
13247
13262
|
method: "PATCH",
|
|
13248
13263
|
body: JSON.stringify(input)
|
|
13249
13264
|
}),
|
|
13250
13265
|
onSettled: (_data, _error, { roleId }) => {
|
|
13251
|
-
queryClient.invalidateQueries({ queryKey: ["org-roles",
|
|
13252
|
-
queryClient.invalidateQueries({ queryKey: ["org-role",
|
|
13266
|
+
queryClient.invalidateQueries({ queryKey: ["org-roles", orgId] });
|
|
13267
|
+
queryClient.invalidateQueries({ queryKey: ["org-role", orgId, roleId] });
|
|
13253
13268
|
}
|
|
13254
13269
|
});
|
|
13255
13270
|
}
|
|
13256
13271
|
function useDeleteOrgRole() {
|
|
13257
|
-
const { apiRequest
|
|
13272
|
+
const { apiRequest } = useElevasisServices();
|
|
13273
|
+
const organization = useContext(OrganizationContext);
|
|
13274
|
+
const orgId = organization?.currentSupabaseOrganizationId ?? null;
|
|
13258
13275
|
const queryClient = useQueryClient();
|
|
13259
13276
|
return useMutation({
|
|
13260
|
-
mutationFn: (roleId) => apiRequest(`/organizations/${
|
|
13277
|
+
mutationFn: (roleId) => apiRequest(`/organizations/${orgId}/roles/${roleId}`, {
|
|
13261
13278
|
method: "DELETE"
|
|
13262
13279
|
}),
|
|
13263
13280
|
onSettled: () => {
|
|
13264
|
-
queryClient.invalidateQueries({ queryKey: ["org-roles",
|
|
13281
|
+
queryClient.invalidateQueries({ queryKey: ["org-roles", orgId] });
|
|
13265
13282
|
}
|
|
13266
13283
|
});
|
|
13267
13284
|
}
|
|
13268
13285
|
function useAssignRole() {
|
|
13269
|
-
const { apiRequest
|
|
13286
|
+
const { apiRequest } = useElevasisServices();
|
|
13287
|
+
const organization = useContext(OrganizationContext);
|
|
13288
|
+
const orgId = organization?.currentSupabaseOrganizationId ?? null;
|
|
13270
13289
|
const queryClient = useQueryClient();
|
|
13271
13290
|
return useMutation({
|
|
13272
13291
|
mutationFn: ({ membershipId, roleId }) => apiRequest(`/memberships/${membershipId}/roles`, {
|
|
@@ -13274,30 +13293,34 @@ function useAssignRole() {
|
|
|
13274
13293
|
body: JSON.stringify({ roleId })
|
|
13275
13294
|
}),
|
|
13276
13295
|
onSettled: (_data, _error, { membershipId }) => {
|
|
13277
|
-
queryClient.invalidateQueries({ queryKey: ["member-roles",
|
|
13278
|
-
queryClient.invalidateQueries({ queryKey: ["organization-permissions",
|
|
13279
|
-
queryClient.invalidateQueries({ queryKey: ["org-roles",
|
|
13296
|
+
queryClient.invalidateQueries({ queryKey: ["member-roles", orgId, membershipId] });
|
|
13297
|
+
queryClient.invalidateQueries({ queryKey: ["organization-permissions", orgId] });
|
|
13298
|
+
queryClient.invalidateQueries({ queryKey: ["org-roles", orgId] });
|
|
13280
13299
|
}
|
|
13281
13300
|
});
|
|
13282
13301
|
}
|
|
13283
13302
|
function useRevokeRole() {
|
|
13284
|
-
const { apiRequest
|
|
13303
|
+
const { apiRequest } = useElevasisServices();
|
|
13304
|
+
const organization = useContext(OrganizationContext);
|
|
13305
|
+
const orgId = organization?.currentSupabaseOrganizationId ?? null;
|
|
13285
13306
|
const queryClient = useQueryClient();
|
|
13286
13307
|
return useMutation({
|
|
13287
13308
|
mutationFn: ({ membershipId, roleId }) => apiRequest(`/memberships/${membershipId}/roles/${roleId}`, {
|
|
13288
13309
|
method: "DELETE"
|
|
13289
13310
|
}),
|
|
13290
13311
|
onSettled: (_data, _error, { membershipId }) => {
|
|
13291
|
-
queryClient.invalidateQueries({ queryKey: ["member-roles",
|
|
13292
|
-
queryClient.invalidateQueries({ queryKey: ["organization-permissions",
|
|
13293
|
-
queryClient.invalidateQueries({ queryKey: ["org-roles",
|
|
13312
|
+
queryClient.invalidateQueries({ queryKey: ["member-roles", orgId, membershipId] });
|
|
13313
|
+
queryClient.invalidateQueries({ queryKey: ["organization-permissions", orgId] });
|
|
13314
|
+
queryClient.invalidateQueries({ queryKey: ["org-roles", orgId] });
|
|
13294
13315
|
}
|
|
13295
13316
|
});
|
|
13296
13317
|
}
|
|
13297
13318
|
function useEffectivePermissions(membershipId) {
|
|
13298
|
-
const { apiRequest,
|
|
13319
|
+
const { apiRequest, isReady } = useElevasisServices();
|
|
13320
|
+
const organization = useContext(OrganizationContext);
|
|
13321
|
+
const orgId = organization?.currentSupabaseOrganizationId ?? null;
|
|
13299
13322
|
return useQuery({
|
|
13300
|
-
queryKey: ["member-roles",
|
|
13323
|
+
queryKey: ["member-roles", orgId, membershipId],
|
|
13301
13324
|
queryFn: () => apiRequest(`/memberships/${membershipId}/effective-permissions`),
|
|
13302
13325
|
enabled: isReady && !!membershipId,
|
|
13303
13326
|
staleTime: STALE_TIME_DEFAULT
|
|
@@ -13590,7 +13613,7 @@ function useExecutionLogsFilters(_timeRange) {
|
|
|
13590
13613
|
return { filters, updateFilter, resetFilters };
|
|
13591
13614
|
}
|
|
13592
13615
|
function useOrganizationMembers(organizationId, params) {
|
|
13593
|
-
const { apiRequest } = useElevasisServices();
|
|
13616
|
+
const { apiRequest, isReady } = useElevasisServices();
|
|
13594
13617
|
return useQuery({
|
|
13595
13618
|
queryKey: ["organization-members", organizationId, params],
|
|
13596
13619
|
queryFn: async () => {
|
|
@@ -13621,7 +13644,7 @@ function useOrganizationMembers(organizationId, params) {
|
|
|
13621
13644
|
updatedAt: membership.updatedAt
|
|
13622
13645
|
}));
|
|
13623
13646
|
},
|
|
13624
|
-
enabled: !!organizationId,
|
|
13647
|
+
enabled: isReady && !!organizationId,
|
|
13625
13648
|
staleTime: STALE_TIME_MONITORING,
|
|
13626
13649
|
gcTime: GC_TIME_SHORT,
|
|
13627
13650
|
refetchOnWindowFocus: false
|
|
@@ -17259,209 +17282,6 @@ function ToolsListDisplay({ tools, compact = false, maxVisible = 0 }) {
|
|
|
17259
17282
|
] })
|
|
17260
17283
|
] });
|
|
17261
17284
|
}
|
|
17262
|
-
var NODE_WIDTH = 200;
|
|
17263
|
-
var NODE_HEIGHT = 100;
|
|
17264
|
-
var RANK_SEP = 80;
|
|
17265
|
-
var NODE_SEP = 30;
|
|
17266
|
-
function useNewKnowledgeMapLayout(knowledgeMap, agentName) {
|
|
17267
|
-
return useMemo(() => {
|
|
17268
|
-
if (!knowledgeMap || knowledgeMap.nodes.length === 0) {
|
|
17269
|
-
return { nodes: [], edges: [] };
|
|
17270
|
-
}
|
|
17271
|
-
const agentNodeId = "__agent__";
|
|
17272
|
-
const edges = knowledgeMap.nodes.map((node) => ({
|
|
17273
|
-
id: `edge-${agentNodeId}-${node.id}`,
|
|
17274
|
-
source: agentNodeId,
|
|
17275
|
-
target: node.id,
|
|
17276
|
-
type: "knowledgeMap",
|
|
17277
|
-
data: {}
|
|
17278
|
-
}));
|
|
17279
|
-
const dagreGraph = new dagre.graphlib.Graph();
|
|
17280
|
-
dagreGraph.setDefaultEdgeLabel(() => ({}));
|
|
17281
|
-
dagreGraph.setGraph({
|
|
17282
|
-
rankdir: "TB",
|
|
17283
|
-
ranksep: RANK_SEP,
|
|
17284
|
-
nodesep: NODE_SEP,
|
|
17285
|
-
marginx: 40,
|
|
17286
|
-
marginy: 40
|
|
17287
|
-
});
|
|
17288
|
-
dagreGraph.setNode(agentNodeId, { width: NODE_WIDTH, height: NODE_HEIGHT });
|
|
17289
|
-
knowledgeMap.nodes.forEach((node) => {
|
|
17290
|
-
dagreGraph.setNode(node.id, { width: NODE_WIDTH, height: NODE_HEIGHT });
|
|
17291
|
-
});
|
|
17292
|
-
edges.forEach((edge) => {
|
|
17293
|
-
dagreGraph.setEdge(edge.source, edge.target);
|
|
17294
|
-
});
|
|
17295
|
-
dagre.layout(dagreGraph);
|
|
17296
|
-
const agentDagreNode = dagreGraph.node(agentNodeId);
|
|
17297
|
-
const agentNode = {
|
|
17298
|
-
id: agentNodeId,
|
|
17299
|
-
type: "knowledgeMap",
|
|
17300
|
-
position: {
|
|
17301
|
-
x: agentDagreNode.x - NODE_WIDTH / 2,
|
|
17302
|
-
y: agentDagreNode.y - NODE_HEIGHT / 2
|
|
17303
|
-
},
|
|
17304
|
-
data: {
|
|
17305
|
-
id: agentNodeId,
|
|
17306
|
-
name: agentName,
|
|
17307
|
-
description: "Agent with lazy-loading knowledge",
|
|
17308
|
-
loaded: true,
|
|
17309
|
-
hasPrompt: false,
|
|
17310
|
-
isAgentNode: true
|
|
17311
|
-
}
|
|
17312
|
-
};
|
|
17313
|
-
const knowledgeNodes = knowledgeMap.nodes.map((node) => {
|
|
17314
|
-
const dagreNode = dagreGraph.node(node.id);
|
|
17315
|
-
return {
|
|
17316
|
-
id: node.id,
|
|
17317
|
-
type: "knowledgeMap",
|
|
17318
|
-
position: {
|
|
17319
|
-
x: dagreNode.x - NODE_WIDTH / 2,
|
|
17320
|
-
y: dagreNode.y - NODE_HEIGHT / 2
|
|
17321
|
-
},
|
|
17322
|
-
data: {
|
|
17323
|
-
id: node.id,
|
|
17324
|
-
name: node.id,
|
|
17325
|
-
description: node.description,
|
|
17326
|
-
loaded: node.loaded,
|
|
17327
|
-
hasPrompt: node.hasPrompt,
|
|
17328
|
-
isAgentNode: false
|
|
17329
|
-
}
|
|
17330
|
-
};
|
|
17331
|
-
});
|
|
17332
|
-
return { nodes: [agentNode, ...knowledgeNodes], edges };
|
|
17333
|
-
}, [knowledgeMap, agentName]);
|
|
17334
|
-
}
|
|
17335
|
-
var NewKnowledgeMapNode = memo(function NewKnowledgeMapNode2({ data, selected }) {
|
|
17336
|
-
const nodeColor = data.isAgentNode ? "violet" : data.loaded ? "teal" : "blue";
|
|
17337
|
-
return /* @__PURE__ */ jsx(BaseNode, { color: nodeColor, selected, width: 200, handleDirection: "vertical", children: /* @__PURE__ */ jsxs(Stack, { gap: 6, children: [
|
|
17338
|
-
/* @__PURE__ */ jsxs(Group, { gap: "xs", wrap: "nowrap", children: [
|
|
17339
|
-
data.isAgentNode ? /* @__PURE__ */ jsx(IconBrain, { size: 16, style: { flexShrink: 0 } }) : data.loaded ? /* @__PURE__ */ jsx(IconBrain, { size: 16, style: { flexShrink: 0 } }) : /* @__PURE__ */ jsx(IconBrain, { size: 16, style: { flexShrink: 0, opacity: 0.4 } }),
|
|
17340
|
-
/* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, truncate: true, style: { flex: 1, fontFamily: "var(--mantine-font-family-headings)" }, children: data.name })
|
|
17341
|
-
] }),
|
|
17342
|
-
data.description && /* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", lineClamp: 2, children: data.description }),
|
|
17343
|
-
/* @__PURE__ */ jsx(Group, { gap: 4, children: data.isAgentNode ? /* @__PURE__ */ jsx(Badge, { size: "xs", variant: "light", children: "Root" }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
17344
|
-
/* @__PURE__ */ jsx(
|
|
17345
|
-
Badge,
|
|
17346
|
-
{
|
|
17347
|
-
size: "xs",
|
|
17348
|
-
variant: "light",
|
|
17349
|
-
color: data.loaded ? "teal" : "gray",
|
|
17350
|
-
leftSection: /* @__PURE__ */ jsx(IconBrain, { size: 10 }),
|
|
17351
|
-
children: data.loaded ? "Loaded" : "Available"
|
|
17352
|
-
}
|
|
17353
|
-
),
|
|
17354
|
-
data.hasPrompt && /* @__PURE__ */ jsx(Badge, { size: "xs", variant: "light", color: "orange", leftSection: /* @__PURE__ */ jsx(IconFileText, { size: 10 }), children: "Prompt" })
|
|
17355
|
-
] }) })
|
|
17356
|
-
] }) });
|
|
17357
|
-
});
|
|
17358
|
-
var NewKnowledgeMapEdge = memo(function NewKnowledgeMapEdge2({
|
|
17359
|
-
id,
|
|
17360
|
-
sourceX,
|
|
17361
|
-
sourceY,
|
|
17362
|
-
targetX,
|
|
17363
|
-
targetY,
|
|
17364
|
-
sourcePosition,
|
|
17365
|
-
targetPosition,
|
|
17366
|
-
selected,
|
|
17367
|
-
data
|
|
17368
|
-
}) {
|
|
17369
|
-
const colors = useGraphTheme();
|
|
17370
|
-
return /* @__PURE__ */ jsx(
|
|
17371
|
-
BaseEdge,
|
|
17372
|
-
{
|
|
17373
|
-
id,
|
|
17374
|
-
sourceX,
|
|
17375
|
-
sourceY,
|
|
17376
|
-
targetX,
|
|
17377
|
-
targetY,
|
|
17378
|
-
sourcePosition,
|
|
17379
|
-
targetPosition,
|
|
17380
|
-
color: colors.primary,
|
|
17381
|
-
glowColor: colors.primaryGlow,
|
|
17382
|
-
animated: false,
|
|
17383
|
-
selected,
|
|
17384
|
-
dimmed: data?.dimmed
|
|
17385
|
-
}
|
|
17386
|
-
);
|
|
17387
|
-
});
|
|
17388
|
-
var nodeTypes3 = {
|
|
17389
|
-
knowledgeMap: NewKnowledgeMapNode
|
|
17390
|
-
};
|
|
17391
|
-
var edgeTypes3 = {
|
|
17392
|
-
knowledgeMap: NewKnowledgeMapEdge
|
|
17393
|
-
};
|
|
17394
|
-
function NewKnowledgeMapGraphInner({ knowledgeMap, agentName, compact, fitViewTrigger }) {
|
|
17395
|
-
const { nodes: layoutNodes, edges: layoutEdges } = useNewKnowledgeMapLayout(knowledgeMap, agentName);
|
|
17396
|
-
const { nodes, edges, handleNodeMouseEnter, handleNodeMouseLeave } = useGraphHighlighting(layoutNodes, layoutEdges);
|
|
17397
|
-
if (!knowledgeMap || knowledgeMap.nodes.length === 0) {
|
|
17398
|
-
return /* @__PURE__ */ jsxs("div", { children: [
|
|
17399
|
-
!compact && /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, mb: "xs", style: { fontFamily: "var(--mantine-font-family-headings)" }, children: "Knowledge Map" }),
|
|
17400
|
-
/* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", fs: "italic", children: "No knowledge nodes configured" })
|
|
17401
|
-
] });
|
|
17402
|
-
}
|
|
17403
|
-
const containerHeight = calculateGraphHeight({
|
|
17404
|
-
itemCount: knowledgeMap.nodeCount,
|
|
17405
|
-
minHeight: 250,
|
|
17406
|
-
maxHeight: 450,
|
|
17407
|
-
heightPerItem: 60
|
|
17408
|
-
});
|
|
17409
|
-
return /* @__PURE__ */ jsxs("div", { children: [
|
|
17410
|
-
!compact && /* @__PURE__ */ jsxs(Group, { gap: "xs", mb: "xs", children: [
|
|
17411
|
-
/* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, style: { fontFamily: "var(--mantine-font-family-headings)" }, children: "Knowledge Map" }),
|
|
17412
|
-
/* @__PURE__ */ jsxs(Badge, { variant: "light", size: "xs", children: [
|
|
17413
|
-
knowledgeMap.nodeCount,
|
|
17414
|
-
" ",
|
|
17415
|
-
knowledgeMap.nodeCount === 1 ? "node" : "nodes"
|
|
17416
|
-
] })
|
|
17417
|
-
] }),
|
|
17418
|
-
/* @__PURE__ */ jsx(
|
|
17419
|
-
Box,
|
|
17420
|
-
{
|
|
17421
|
-
className: `elevasis-graph-root ${Graph_module_css_default.graphContainer}`,
|
|
17422
|
-
style: {
|
|
17423
|
-
width: "100%",
|
|
17424
|
-
height: containerHeight,
|
|
17425
|
-
border: "1px solid var(--color-border)",
|
|
17426
|
-
borderRadius: "var(--mantine-radius-md)",
|
|
17427
|
-
overflow: "hidden"
|
|
17428
|
-
},
|
|
17429
|
-
children: /* @__PURE__ */ jsxs(
|
|
17430
|
-
ReactFlow,
|
|
17431
|
-
{
|
|
17432
|
-
nodes,
|
|
17433
|
-
edges,
|
|
17434
|
-
nodeTypes: nodeTypes3,
|
|
17435
|
-
edgeTypes: edgeTypes3,
|
|
17436
|
-
onNodeMouseEnter: handleNodeMouseEnter,
|
|
17437
|
-
onNodeMouseLeave: handleNodeMouseLeave,
|
|
17438
|
-
fitView: true,
|
|
17439
|
-
fitViewOptions: { padding: 0.15 },
|
|
17440
|
-
proOptions: { hideAttribution: true },
|
|
17441
|
-
minZoom: GRAPH_CONSTANTS.MIN_ZOOM,
|
|
17442
|
-
maxZoom: GRAPH_CONSTANTS.MAX_ZOOM,
|
|
17443
|
-
nodesDraggable: false,
|
|
17444
|
-
nodesConnectable: false,
|
|
17445
|
-
elementsSelectable: true,
|
|
17446
|
-
selectNodesOnDrag: false,
|
|
17447
|
-
panOnDrag: true,
|
|
17448
|
-
zoomOnScroll: true,
|
|
17449
|
-
zoomOnPinch: true,
|
|
17450
|
-
panOnScroll: false,
|
|
17451
|
-
children: [
|
|
17452
|
-
/* @__PURE__ */ jsx(GraphBackground, {}),
|
|
17453
|
-
/* @__PURE__ */ jsx(GraphFitViewButton, { padding: 0.15, variant: "mantine", duration: 300 }),
|
|
17454
|
-
/* @__PURE__ */ jsx(GraphFitViewHandler, { trigger: fitViewTrigger })
|
|
17455
|
-
]
|
|
17456
|
-
}
|
|
17457
|
-
)
|
|
17458
|
-
}
|
|
17459
|
-
)
|
|
17460
|
-
] });
|
|
17461
|
-
}
|
|
17462
|
-
function NewKnowledgeMapGraph(props) {
|
|
17463
|
-
return /* @__PURE__ */ jsx(ReactFlowProvider, { children: /* @__PURE__ */ jsx(NewKnowledgeMapGraphInner, { ...props }) });
|
|
17464
|
-
}
|
|
17465
17285
|
function DefinitionSectionHeader({ expanded, onToggle, icon, title, count }) {
|
|
17466
17286
|
return /* @__PURE__ */ jsxs(Group, { gap: 4, onClick: onToggle, style: { cursor: "pointer", userSelect: "none" }, wrap: "nowrap", children: [
|
|
17467
17287
|
/* @__PURE__ */ jsx(
|
|
@@ -17488,8 +17308,6 @@ function DefinitionSectionHeader({ expanded, onToggle, icon, title, count }) {
|
|
|
17488
17308
|
function AgentDefinitionDisplay({ agent, defaultExpanded = false }) {
|
|
17489
17309
|
const [systemPromptExpanded, setSystemPromptExpanded] = useState(defaultExpanded);
|
|
17490
17310
|
const [configExpanded, setConfigExpanded] = useState(defaultExpanded);
|
|
17491
|
-
const [knowledgeMapExpanded, setKnowledgeMapExpanded] = useState(defaultExpanded);
|
|
17492
|
-
const [knowledgeMapFitTrigger, setKnowledgeMapFitTrigger] = useState(0);
|
|
17493
17311
|
const [toolsExpanded, setToolsExpanded] = useState(defaultExpanded);
|
|
17494
17312
|
const [memoryPrefsExpanded, setMemoryPrefsExpanded] = useState(defaultExpanded);
|
|
17495
17313
|
const hasConstraints = agent.config.constraints && Object.keys(agent.config.constraints).length > 0;
|
|
@@ -17587,36 +17405,6 @@ function AgentDefinitionDisplay({ agent, defaultExpanded = false }) {
|
|
|
17587
17405
|
),
|
|
17588
17406
|
/* @__PURE__ */ jsx(Collapse, { in: systemPromptExpanded, children: /* @__PURE__ */ jsx(Paper, { p: "sm", mt: "xs", children: /* @__PURE__ */ jsx(StyledMarkdown, { children: agent.config.systemPrompt }) }) })
|
|
17589
17407
|
] }),
|
|
17590
|
-
agent.knowledgeMap && agent.knowledgeMap.nodeCount > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
17591
|
-
/* @__PURE__ */ jsx(Divider, {}),
|
|
17592
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
|
17593
|
-
/* @__PURE__ */ jsx(
|
|
17594
|
-
DefinitionSectionHeader,
|
|
17595
|
-
{
|
|
17596
|
-
expanded: knowledgeMapExpanded,
|
|
17597
|
-
onToggle: () => {
|
|
17598
|
-
const willExpand = !knowledgeMapExpanded;
|
|
17599
|
-
setKnowledgeMapExpanded(willExpand);
|
|
17600
|
-
if (willExpand) {
|
|
17601
|
-
setKnowledgeMapFitTrigger((prev) => prev + 1);
|
|
17602
|
-
}
|
|
17603
|
-
},
|
|
17604
|
-
icon: /* @__PURE__ */ jsx(IconNetwork, { size: 16, color: "var(--color-text-subtle)" }),
|
|
17605
|
-
title: "Knowledge Map",
|
|
17606
|
-
count: `${agent.knowledgeMap.nodeCount} ${agent.knowledgeMap.nodeCount === 1 ? "node" : "nodes"}`
|
|
17607
|
-
}
|
|
17608
|
-
),
|
|
17609
|
-
/* @__PURE__ */ jsx(Collapse, { in: knowledgeMapExpanded, children: /* @__PURE__ */ jsx("div", { style: { marginTop: "var(--mantine-spacing-xs)" }, children: /* @__PURE__ */ jsx(
|
|
17610
|
-
NewKnowledgeMapGraph,
|
|
17611
|
-
{
|
|
17612
|
-
knowledgeMap: agent.knowledgeMap,
|
|
17613
|
-
agentName: agent.config.name,
|
|
17614
|
-
compact: true,
|
|
17615
|
-
fitViewTrigger: knowledgeMapFitTrigger
|
|
17616
|
-
}
|
|
17617
|
-
) }) })
|
|
17618
|
-
] })
|
|
17619
|
-
] }),
|
|
17620
17408
|
/* @__PURE__ */ jsx(Divider, {}),
|
|
17621
17409
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
17622
17410
|
/* @__PURE__ */ jsx(
|
|
@@ -19020,6 +18808,13 @@ function MembershipStatusBadge({ status, size = "sm", variant = "light" }) {
|
|
|
19020
18808
|
};
|
|
19021
18809
|
return /* @__PURE__ */ jsx(Badge, { color: MEMBERSHIP_STATUS_COLORS[status], size, variant, children: getStatusLabel(status) });
|
|
19022
18810
|
}
|
|
18811
|
+
function ProvisioningStateBadge({ state, size = "sm", variant = "light" }) {
|
|
18812
|
+
if (!state || state === "linked") {
|
|
18813
|
+
return null;
|
|
18814
|
+
}
|
|
18815
|
+
const display = PROVISIONING_STATE_DISPLAY[state];
|
|
18816
|
+
return /* @__PURE__ */ jsx(Tooltip, { label: display.description, multiline: true, w: 280, children: /* @__PURE__ */ jsx(Badge, { color: display.color, size, variant, children: display.label }) });
|
|
18817
|
+
}
|
|
19023
18818
|
function OrganizationMembershipsList({
|
|
19024
18819
|
memberships,
|
|
19025
18820
|
loading,
|
|
@@ -23378,7 +23173,7 @@ Advanced personalization doubles reply rates: ~18% vs ~9% for generic.
|
|
|
23378
23173
|
icon: "playbook",
|
|
23379
23174
|
title: "Lead-Gen Playbook",
|
|
23380
23175
|
summary: "Empirical benchmarks, threshold guidance, provider economics, and codified learnings from 3 completed batches of the lead-gen pipeline.",
|
|
23381
|
-
body: "## Performance Benchmarks\n\nPer-stage success rates across the 3 completed Orange County batches (vet-1, auto-1, home-1).\n\n### Stage 1: Scrape (Raw to Filtered)\n\n| Metric | vet-1 | auto-1 | home-1 | Benchmark |\n| --- | --- | --- | --- | --- |\n| Raw results | 480 | 800 | 1000 | -- |\n| Companies created | 393 | 566 | 701 | -- |\n| Active in DB | 322 | 428 | 640 | -- |\n\n### Stage 3: Company Qualification Rate\n\n| Metric | vet-1 | auto-1 | home-1 | Benchmark |\n| --- | --- | --- | --- | --- |\n| Qualified | 213 (76%) | 284 (79%) | 326 (60%) | 60-80% |\n| Disqualified | 66 (24%) | 74 (21%) | 222 (40%) | 20-40% |\n\n### Stage 5: Email Verification\n\nVALID rate: ~33-41% of discovered emails across batches. Target bounce rate \\<2%.\n\n## Model Selection\n\
|
|
23176
|
+
body: "## Performance Benchmarks\n\nPer-stage success rates across the 3 completed Orange County batches (vet-1, auto-1, home-1).\n\n### Stage 1: Scrape (Raw to Filtered)\n\n| Metric | vet-1 | auto-1 | home-1 | Benchmark |\n| --- | --- | --- | --- | --- |\n| Raw results | 480 | 800 | 1000 | -- |\n| Companies created | 393 | 566 | 701 | -- |\n| Active in DB | 322 | 428 | 640 | -- |\n\n### Stage 3: Company Qualification Rate\n\n| Metric | vet-1 | auto-1 | home-1 | Benchmark |\n| --- | --- | --- | --- | --- |\n| Qualified | 213 (76%) | 284 (79%) | 326 (60%) | 60-80% |\n| Disqualified | 66 (24%) | 74 (21%) | 222 (40%) | 20-40% |\n\n### Stage 5: Email Verification\n\nVALID rate: ~33-41% of discovered emails across batches. Target bounce rate \\<2%.\n\n## Model Selection\n\nAll lead-gen LLM steps run on claude-sonnet-5 (Anthropic) \u2014 qualification, extraction, and personalization alike. There is no separate cheap tier for high-volume steps.\n\n## Provider Economics\n\nTomba domain search provides the best cost-per-verified-contact for local SMBs. Dual-verify (Tomba + Mails.so) catches most false positives.\n\n## Pipeline Stages\n\n1. Scrape (Google Maps via Apify)\n2. LLM Extract (website crawl \xE2\u2020\u2019 structured data)\n3. Company Qualification (LLM ICP scoring)\n4. Email Discovery (Tomba domain search)\n5. Email Verification (Mails.so)\n6. Opening Line Generation (ist-personalization-workflow)\n7. Campaign Upload (ist-upload-contacts-workflow)",
|
|
23382
23177
|
links: [{ nodeId: "system:sales.lead-gen" }],
|
|
23383
23178
|
ownerIds: [],
|
|
23384
23179
|
updatedAt: "2026-05-02"
|
|
@@ -23531,8 +23326,8 @@ Advanced personalization doubles reply rates: ~18% vs ~9% for generic.
|
|
|
23531
23326
|
kind: "playbook",
|
|
23532
23327
|
icon: "playbook",
|
|
23533
23328
|
title: "Social Monitoring",
|
|
23534
|
-
summary: "Automated Reddit monitoring pipeline \xE2\u20AC\u201D 4-step workflow (search, LLM score, LLM draft, store) with tiered subreddit scraping via Apify,
|
|
23535
|
-
body: "## Overview\n\nSocial monitoring surfaces Reddit posts where business owners discuss operational challenges, manual processes, and automation needs.\n\n```\nCron Trigger (3x/day: 16:00, 22:00, 04:00 UTC)\n \xE2\u2020\u2019 mnt-reddit-monitor-workflow (4-step pipeline)\n \xE2\u2020\u2019 Step 1: Search \xE2\u20AC\u201D 4 sequential Apify actors (one per tier)\n \xE2\u2020\u2019 Step 2: Score \xE2\u20AC\u201D
|
|
23329
|
+
summary: "Automated Reddit monitoring pipeline \xE2\u20AC\u201D 4-step workflow (search, LLM score, LLM draft, store) with tiered subreddit scraping via Apify, claude-sonnet-5 scoring and response drafting, and lead-gen optimized responses via the AlexElevasis account.",
|
|
23330
|
+
body: "## Overview\n\nSocial monitoring surfaces Reddit posts where business owners discuss operational challenges, manual processes, and automation needs.\n\n```\nCron Trigger (3x/day: 16:00, 22:00, 04:00 UTC)\n \xE2\u2020\u2019 mnt-reddit-monitor-workflow (4-step pipeline)\n \xE2\u2020\u2019 Step 1: Search \xE2\u20AC\u201D 4 sequential Apify actors (one per tier)\n \xE2\u2020\u2019 Step 2: Score \xE2\u20AC\u201D claude-sonnet-5 (concurrency 5)\n \xE2\u2020\u2019 Step 3: Draft \xE2\u20AC\u201D claude-sonnet-5 (high-score only)\n \xE2\u2020\u2019 Step 4: Report \xE2\u20AC\u201D Store to acq_social_posts, log breakdown\n \xE2\u2020\u2019 Command Center: /acquisition/monitoring\n```\n\n**Status:** Paused until further notice (2026-03-31). Pipeline technically validated but ROI is low without deep vertical expertise.\n\n## Velocity Batches\n\nSubreddits grouped by posting velocity, each with its own `maxPostsPerSource`.\n\n| Batch | Subs | Posts/Source | Example Subreddits |\n| --- | --- | --- | --- |\n| Medium Velocity | 2 | 5 | Accounting, Plumbing |\n| Buyer Low-Volume | 10 | 3 | CRM, EntrepreneurRideAlong, sweatystartup |\n| Trade Niche | 10 | 2 | electricians, Dentists, InsuranceAgent |\n| Decision Niche | 3 | 2 | logistics, FreightBrokers, healthIT |\n\n## Scoring\n\nPosts scored 0-100 by claude-sonnet-5 for business automation opportunity relevance. Posts scoring \\>= 60 get response drafts via claude-sonnet-5.\n\n## AlexElevasis Account\n\nAll responses posted via the AlexElevasis Reddit account. See Reddit Account strategy doc for warmup playbook and karma thresholds.",
|
|
23536
23331
|
ownerIds: [],
|
|
23537
23332
|
updatedAt: "2026-05-02"
|
|
23538
23333
|
},
|
|
@@ -23666,7 +23461,7 @@ Each stage desensitizes one fear at a time. Never skip ahead. The goal is consis
|
|
|
23666
23461
|
icon: "reference",
|
|
23667
23462
|
title: "Platform Systems Overview",
|
|
23668
23463
|
summary: "Authoritative overview of the Elevasis AI Orchestration Platform systems -- what's built, what each system does, and how the pieces fit together",
|
|
23669
|
-
body: "## Overview\n\nElevasis is a production AI orchestration platform that coordinates workflows, autonomous agents, and human approvals into a unified operating layer for SMBs. Everything described below is implemented and running in production.\n\n**Core Architecture:**\n\n| Layer | What It Does | Key Components |\n| --- | --- | --- |\n| **Execution** | Runs workflows and agents with schema validation | Workflow Engine, Agent Framework, Execution Runner |\n| **Control** | Human oversight, approvals, and decision capture | Command Queue (HITL), Dynamic Forms, Action System |\n| **Intelligence** | Autonomous reasoning, tool use, and memory management | ReAct Agents, Knowledge Map, Session Memory |\n| **Observability** | Real-time visibility into cost, performance, and health | Cost Tracking, Metrics, Activity Log, SSE Streaming |\n| **Platform** | Multi-tenancy, security, scheduling, integrations | Registry, RLS, Scheduler, Credential Vault, SDK |\n\n## Execution Engine\n\n### AI Workflows\n\nGraph-based workflow execution with schema-validated steps and conditional routing. Steps define explicit routing: linear, conditional (rule-based branching), or terminal. Context flows through the entire workflow.\n\n### Autonomous Agents\n\nProduction-grade ReAct-style agents with tool use, memory management, and security hardening.\n\n**LLM Provider Support:**
|
|
23464
|
+
body: "## Overview\n\nElevasis is a production AI orchestration platform that coordinates workflows, autonomous agents, and human approvals into a unified operating layer for SMBs. Everything described below is implemented and running in production.\n\n**Core Architecture:**\n\n| Layer | What It Does | Key Components |\n| --- | --- | --- |\n| **Execution** | Runs workflows and agents with schema validation | Workflow Engine, Agent Framework, Execution Runner |\n| **Control** | Human oversight, approvals, and decision capture | Command Queue (HITL), Dynamic Forms, Action System |\n| **Intelligence** | Autonomous reasoning, tool use, and memory management | ReAct Agents, Knowledge Map, Session Memory |\n| **Observability** | Real-time visibility into cost, performance, and health | Cost Tracking, Metrics, Activity Log, SSE Streaming |\n| **Platform** | Multi-tenancy, security, scheduling, integrations | Registry, RLS, Scheduler, Credential Vault, SDK |\n\n## Execution Engine\n\n### AI Workflows\n\nGraph-based workflow execution with schema-validated steps and conditional routing. Steps define explicit routing: linear, conditional (rule-based branching), or terminal. Context flows through the entire workflow.\n\n### Autonomous Agents\n\nProduction-grade ReAct-style agents with tool use, memory management, and security hardening.\n\n**LLM Provider Support:** Anthropic (claude-sonnet-5), OpenAI (GPT-5), OpenRouter (GLM-5)\n\n## Human-in-the-Loop (HITL)\n\nThe Command Queue surfaces pending approvals as structured tasks. Admin reviews, approves or edits, and the workflow continues. Every critical decision \xE2\u20AC\u201D sending emails to prospects, updating customer records, publishing content \xE2\u20AC\u201D requires human approval.\n\n## Integrations (12 active)\n\nAttio CRM, Cal.com, Instantly (cold email), Resend, Apify, Google Maps, Tomba, Mails.so, Supabase, Stripe, OpenAI, Anthropic Claude.\n\n## SDK\n\nTypeScript-based resource development with local testing, validation, and deployment pipeline. External consumers define workflows and agents in their own repos and deploy via `elevasis-sdk deploy`.",
|
|
23670
23465
|
links: [{ nodeId: "system:platform.projects" }],
|
|
23671
23466
|
ownerIds: [],
|
|
23672
23467
|
updatedAt: "2026-05-02"
|
|
@@ -27090,6 +26885,79 @@ var platformResourceDescriptors = defineResources(
|
|
|
27090
26885
|
{ kind: "api-endpoint", method: "POST", path: "/api/external/sessions" },
|
|
27091
26886
|
{ kind: "api-endpoint", method: "POST", path: "/api/external/sessions/:sessionId/turns" }
|
|
27092
26887
|
]
|
|
26888
|
+
},
|
|
26889
|
+
{
|
|
26890
|
+
id: "framework-probe-agent",
|
|
26891
|
+
order: 10020,
|
|
26892
|
+
kind: "agent",
|
|
26893
|
+
systemPath: "platform",
|
|
26894
|
+
title: "Framework Probe Agent",
|
|
26895
|
+
description: "Tool-bearing session agent used to measure agent-loop behavior \u2014 context carry across iterations, tool result handling, and schema compilation. Strict-clean control for the framework-probe-loose comparison.",
|
|
26896
|
+
ownerRoleId: getPlatformOwnerRoleId("platform"),
|
|
26897
|
+
actsAsRoleId: getPlatformOwnerRoleId("platform"),
|
|
26898
|
+
status: "active",
|
|
26899
|
+
codeRefs: [
|
|
26900
|
+
{
|
|
26901
|
+
path: "packages/elevasis-operations/src/diagnostics/framework-probe-agent.ts",
|
|
26902
|
+
role: "entrypoint",
|
|
26903
|
+
symbol: "frameworkProbeAgent"
|
|
26904
|
+
},
|
|
26905
|
+
{
|
|
26906
|
+
path: "packages/elevasis-operations/src/diagnostics/index.ts",
|
|
26907
|
+
role: "config",
|
|
26908
|
+
symbol: "agents"
|
|
26909
|
+
},
|
|
26910
|
+
{
|
|
26911
|
+
path: "packages/elevasis-operations/src/index.ts",
|
|
26912
|
+
role: "config",
|
|
26913
|
+
symbol: "deploymentSpec"
|
|
26914
|
+
}
|
|
26915
|
+
],
|
|
26916
|
+
agentKind: "utility",
|
|
26917
|
+
sessionCapable: true,
|
|
26918
|
+
invocations: [
|
|
26919
|
+
{ kind: "api-endpoint", method: "POST", path: "/api/external/sessions" },
|
|
26920
|
+
{ kind: "api-endpoint", method: "POST", path: "/api/external/sessions/:sessionId/turns" }
|
|
26921
|
+
]
|
|
26922
|
+
},
|
|
26923
|
+
// `framework-probe-loose-agent` (order 10021) was retired here. It carried one tool with a
|
|
26924
|
+
// `z.record(...)` field so the cost of a single un-compilable field could be measured rather
|
|
26925
|
+
// than argued. Wave O's `validateAgentGrammar` now rejects exactly that shape at deploy, by
|
|
26926
|
+
// tool and field name, so the agent cannot deploy -- which is the gate working, not a
|
|
26927
|
+
// regression. Order 10021 is left unused so the surrounding probe agents keep their numbers.
|
|
26928
|
+
{
|
|
26929
|
+
id: "framework-probe-truncate-agent",
|
|
26930
|
+
order: 10022,
|
|
26931
|
+
kind: "agent",
|
|
26932
|
+
systemPath: "platform",
|
|
26933
|
+
title: "Framework Probe Agent (truncation)",
|
|
26934
|
+
description: "Copy of framework-probe-agent on Haiku 4.5 with a deliberately small output cap, so the truncated-response path can be exercised. Also the only probe whose request carries an explicit temperature.",
|
|
26935
|
+
ownerRoleId: getPlatformOwnerRoleId("platform"),
|
|
26936
|
+
actsAsRoleId: getPlatformOwnerRoleId("platform"),
|
|
26937
|
+
status: "active",
|
|
26938
|
+
codeRefs: [
|
|
26939
|
+
{
|
|
26940
|
+
path: "packages/elevasis-operations/src/diagnostics/framework-probe-agent.ts",
|
|
26941
|
+
role: "entrypoint",
|
|
26942
|
+
symbol: "frameworkProbeTruncateAgent"
|
|
26943
|
+
},
|
|
26944
|
+
{
|
|
26945
|
+
path: "packages/elevasis-operations/src/diagnostics/index.ts",
|
|
26946
|
+
role: "config",
|
|
26947
|
+
symbol: "agents"
|
|
26948
|
+
},
|
|
26949
|
+
{
|
|
26950
|
+
path: "packages/elevasis-operations/src/index.ts",
|
|
26951
|
+
role: "config",
|
|
26952
|
+
symbol: "deploymentSpec"
|
|
26953
|
+
}
|
|
26954
|
+
],
|
|
26955
|
+
agentKind: "utility",
|
|
26956
|
+
sessionCapable: true,
|
|
26957
|
+
invocations: [
|
|
26958
|
+
{ kind: "api-endpoint", method: "POST", path: "/api/external/sessions" },
|
|
26959
|
+
{ kind: "api-endpoint", method: "POST", path: "/api/external/sessions/:sessionId/turns" }
|
|
26960
|
+
]
|
|
27093
26961
|
}
|
|
27094
26962
|
].map((resource2) => [resource2.id, resource2])
|
|
27095
26963
|
)
|
|
@@ -37568,7 +37436,6 @@ function AgentObjectView({ node, linkedNodes, registry, onSelectNode }) {
|
|
|
37568
37436
|
{ label: "Model Provider", value: extras.modelProvider },
|
|
37569
37437
|
{ label: "Model ID", value: extras.modelId },
|
|
37570
37438
|
{ label: "Tool Count", value: String(extras.toolCount) },
|
|
37571
|
-
{ label: "Knowledge Map", value: extras.hasKnowledgeMap ? "Yes" : "No" },
|
|
37572
37439
|
{ label: "Memory", value: extras.hasMemory ? "Yes" : "No" },
|
|
37573
37440
|
{ label: "Session Capable", value: extras.sessionCapable ? "Yes" : "No" }
|
|
37574
37441
|
] : [
|
|
@@ -47261,7 +47128,7 @@ function MemberAccessModal({ opened, onClose, orgId, member, defaultTab = "roles
|
|
|
47261
47128
|
] }) });
|
|
47262
47129
|
}
|
|
47263
47130
|
function RolesTabPanel({ orgId, member, onSaved }) {
|
|
47264
|
-
const { data: rolesData, isLoading: rolesLoading } = useOrgRoles(orgId
|
|
47131
|
+
const { data: rolesData, isLoading: rolesLoading } = useOrgRoles(orgId ? brandSupabaseOrgId(orgId) : void 0);
|
|
47265
47132
|
const assignMutation = useAssignRole();
|
|
47266
47133
|
const revokeMutation = useRevokeRole();
|
|
47267
47134
|
const canManagePrivileged = useAccess(AccessKeys.rolesManage).allowed;
|
|
@@ -47346,7 +47213,7 @@ function transformMemberForModal(member) {
|
|
|
47346
47213
|
};
|
|
47347
47214
|
}
|
|
47348
47215
|
function OrgMembersList({ orgId }) {
|
|
47349
|
-
const { data: members, isLoading, error } = useOrganizationMembers(orgId);
|
|
47216
|
+
const { data: members, isLoading, error } = useOrganizationMembers(brandSupabaseOrgId(orgId));
|
|
47350
47217
|
const [selectedMember, setSelectedMember] = useState(null);
|
|
47351
47218
|
const [modalOpened, setModalOpened] = useState(false);
|
|
47352
47219
|
const [defaultTab, setDefaultTab] = useState("roles");
|
|
@@ -47366,7 +47233,7 @@ function OrgMembersList({ orgId }) {
|
|
|
47366
47233
|
] }) });
|
|
47367
47234
|
}
|
|
47368
47235
|
if (error) {
|
|
47369
|
-
return /* @__PURE__ */ jsx(
|
|
47236
|
+
return /* @__PURE__ */ jsx(APIErrorAlert, { error, title: "Error loading members" });
|
|
47370
47237
|
}
|
|
47371
47238
|
if (!members || members.length === 0) {
|
|
47372
47239
|
return /* @__PURE__ */ jsx(EmptyState, { icon: IconUsers, title: "No members found" });
|
|
@@ -47395,7 +47262,10 @@ function OrgMembersList({ orgId }) {
|
|
|
47395
47262
|
isSystem: true
|
|
47396
47263
|
}
|
|
47397
47264
|
) }),
|
|
47398
|
-
/* @__PURE__ */ jsx(Table.Td, { children: /* @__PURE__ */
|
|
47265
|
+
/* @__PURE__ */ jsx(Table.Td, { children: /* @__PURE__ */ jsxs(Group, { gap: "xs", children: [
|
|
47266
|
+
/* @__PURE__ */ jsx(MembershipStatusBadge, { status: member.status }),
|
|
47267
|
+
/* @__PURE__ */ jsx(ProvisioningStateBadge, { state: member.provisioningState })
|
|
47268
|
+
] }) }),
|
|
47399
47269
|
/* @__PURE__ */ jsx(Table.Td, { children: /* @__PURE__ */ jsx(Tooltip, { label: "Edit member access", withArrow: true, children: /* @__PURE__ */ jsx(ActionIcon, { variant: "light", size: "sm", color: "gray", onClick: () => openModal2(member, "roles"), children: /* @__PURE__ */ jsx(IconPencil, { size: 14 }) }) }) })
|
|
47400
47270
|
] }, member.id);
|
|
47401
47271
|
}) })
|
|
@@ -50765,7 +50635,7 @@ function ConceptInfoControl({ description }) {
|
|
|
50765
50635
|
var indexPromise = null;
|
|
50766
50636
|
function loadSearchIndex() {
|
|
50767
50637
|
if (!indexPromise) {
|
|
50768
|
-
indexPromise = import('./knowledge-search-index-
|
|
50638
|
+
indexPromise = import('./knowledge-search-index-6EZNBNSR.js').then(
|
|
50769
50639
|
(mod) => buildSearchIndex(mod.default ?? mod)
|
|
50770
50640
|
);
|
|
50771
50641
|
}
|
|
@@ -51531,4 +51401,4 @@ function useAccess(key) {
|
|
|
51531
51401
|
};
|
|
51532
51402
|
}
|
|
51533
51403
|
|
|
51534
|
-
export { APIErrorAlert, AbsoluteScheduleForm, AccessGuard, AccessKeys, AccountSettings, ActionModal, ActivityCard, ActivityFeed, ActivityFeedWidget, ActivityFilters, ActivityLog, ActivityTable, ActivityTimeline, ActivityTrendChart, AgentDefinitionDisplay, AgentExecutionLogs, AgentExecutionPanel, AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationDetailPanel, AgentIterationEdge, AgentIterationNode, AgentResourceEntrySchema, AgentSessionGroup, AllTasksPage, ApiKeyDisplayModal, ApiKeyList, ApiKeyService, ApiKeySettings, AppErrorBoundary, AppShellCenteredContainer, AppShellContainer, AppShellContentContainer, AppShellError, AppShellLoader, AppShellRightSideContainer, AppShellRightSideOuterContainer, AppTopbarAdjusterWrapper, AppearanceContext, AppearanceProvider, AppearanceSettings, BaseEdge, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, BaseNode, Breadcrumbs, BusinessImpactCard, CRM_ITEMS, CenteredErrorState, ChartFrame, Checklist, CheckpointGroup, CollapsibleJsonSection, CollapsibleSection, CollapsibleSidebarGroup, CombinedTrendChart, CommandQueueDetailPage, CommandQueuePage, CommandQueueShell, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, CommandViewPage, CompanyDetailPage, ConfigCard, ConfirmationInputModal, ConfirmationModal, ContactDetailPage, ContentSections, ContextUsageBadge, ContextViewer, ContractDisplay, ConversationThread, CostAnalytics, CostBreakdownCard, CostByModelTable, CostMetricsCard, CostTrendChart, CrashErrorFallback, CreateApiKeyModal, CreateCredentialModal, CreateDeliveryEntityModal, CreateRoleModal, CreateScheduleModal, CreateWebhookEndpointModal, CredentialList, CredentialService, CredentialSettings, CrmActionsProvider, CrmOverview, CrmSettingsPage, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, CustomModal, CustomSelector, CyberAreaChart, CyberDonut, CyberDonutTooltip, CyberLegendItem, CyberParticles, DEAL_STAGES, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DEFAULT_KANBAN_CONFIG, DEFAULT_SEMANTIC_ICON_REGISTRY, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, Dashboard, DashboardOperationsOverview, DealDetailPage, DealKanbanCard, DealsListPage, DeleteScheduleModal, DeploymentDetailModal, DeploymentList, DeploymentService, DeploymentSettings, DeploymentStatusBadge, DetailCardSkeleton, EMPTY_LIST_ACTIONS, EditApiKeyModal, EditCredentialModal, EditWebhookEndpointModal, ElevasisCoreProvider, ElevasisLoader, ElevasisSystemsProvider, ElevasisUIProvider, EmptyState, EmptyVisualizer, ErrorAnalysisCard, ErrorBreakdownTable, ErrorDetailsModal, ErrorReportCard, ExecuteWorkflowModal, ExecutionBreakdownTable, ExecutionErrorSection, ExecutionHealth, ExecutionHealthCard, ExecutionLogsFilters, ExecutionLogsPage, ExecutionLogsTable, ExecutionPanel, ExecutionStats, ExecutionStatusBadge, FILTERABLE_DOMAIN_KEYS, FeatureUnavailableState, FilterBar, GlowDot, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, HealthStatusCard, HeroStatsRow, IdentityDomainSchema, IntegrationResourceEntrySchema, JsonViewer, KNOWLEDGE_DOMAINS_WITH_PANELS, KNOWLEDGE_ICON_TOKEN_BY_KIND, KanbanBoard, KnowledgeSearchBar, KnowledgeTree, LEAD_GEN_ITEMS, LEAD_GEN_ROUTE_LINKS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenReadinessAlert, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, LinksGroup, ListActionsProvider, ListBuilderIndexPage, ListBuilderPage, ListSkeleton, LogEntry, LogGroup, MdxRenderer, MemberAccessModal, MembershipStatusBadge, MetricsStrip, MilestoneTimeline, MyRolesPage, MyTasksPanel, NavigationButton, NewKnowledgeMapEdge, NewKnowledgeMapGraph, NewKnowledgeMapNode, NoAccessState, NotificationBell, NotificationCenter, NotificationItem, NotificationList, NotificationPanel, NotificationProvider, OAuthConnectModal, OAuthIntegrationsCard, OM_NESTED_TREE_GROUPS, OM_TREE_GROUPS, ORPHAN_STAGE_ORDER, OperationsOverview, OperationsService, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, OrgMembersList, OrganizationGraphPage, OrganizationMembershipService, OrganizationMembershipsList, OrganizationProvider, OrganizationSettings, OrganizationSwitcher, OrganizationSwitcherConnected, PIPELINE_FUNNEL_ORDER, PageContainer, PageNotFound, PageTitleCaption, PermissionMatrix, PipelineFunnelWidget, PolicySchema, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, ProtectedRoute, QuickCreateActions, RecentExecutionsByResource, RecurringScheduleForm, RelativeScheduleForm, RequestActionIcon, RequestModal, ResourceCard, ResourceDefinitionSection, ResourceDetailPage, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceHealthChart, ResourceHealthPanel, ResourceNotFoundState, ResourceOverview, ResourcesPage, ResourcesSidebar, RichTextEditor, RoleBadge, RoleSchema, RunResourceButton, SAVED_VIEW_PRESETS, SavedViewsPanel, ScheduleCard, ScheduleDetailModal, ScheduleTypeSelector, ScriptResourceEntrySchema, SemanticIcon, SessionChatArea, SessionChatInterface, SessionChatPage, SessionConversationView, SessionDetailsPanel, SessionExecutionLogs, SessionHeader, SessionListItem, SessionMemory, SessionsPage, SessionsSidebar, Sidebar, SidebarContext, SidebarProvider, SortableHeader, StatCard, StatCardSkeleton, StatsCardSkeleton, StatusBadge, StepConfigForm, SubshellContainer, SubshellContentContainer, SubshellLoader, SubshellNavList, SubshellRightSideContainer, SubshellSidebar, SubshellSidebarLoader, SurfaceDefinitionSchema, SystemOpsView, SystemShell, TabCountBadge, TabSection, TableSelectionToolbar, TaskCard, TaskScheduler, TimeRangeSelector, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, ToolsListDisplay, Topbar, TopbarActions, TopbarContainer, TrendIndicator, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, UnresolvedErrorsTeaser, UpcomingMilestonesPage, Vignette, VisualizerContainer, WebhookEndpointList, WebhookEndpointService, WebhookEndpointSettings, WebhookUrlDisplayModal, WorkflowDefinitionDisplay, WorkflowExecutionLogs, WorkflowExecutionPanel, WorkflowExecutionTimeline, WorkflowResourceEntrySchema, ZodFormRenderer, acquisitionListKeys, aggregateSystemMetrics, buildErrorReport, buildKnowledgeOmTreeData, calculateProgress, clientsKeys, collectResourceFilterFacets, companyKeys, contactKeys, createOrganizationsSlice, createTestSystemsProvider, createUseOrgInitialization, createUseOrganizations, crmManifest, crmPrioritySettingsKeys, dealKeys, dealNoteKeys, dealTaskKeys, deliveryManifest, deriveBusinessProgress, executionsKeys, extendSemanticIconRegistry, filterByDomainFilters, findKnowledgeTreeNodeByValue, findListActionByAction, findOmTreeGroup, formatDate3 as formatDate, formatDealStageLabel, formatResourceAttribution, formatStatusLabel, getConceptDefinition, getEnrichmentColor, getEnrichmentStatus, getExecutionStatusConfig, getGraphBackgroundStyles, getHealthColor, getIcon, getKnowledgeDomainFolderCommand, getKnowledgeGraphNodeCommand, getKnowledgeIconToken, getKnowledgeNodeReadCommand, getKnowledgeOntologyProjection, getKnowledgeTreeFolderCommand, getLeadGenApiInterfaceReadiness, getLeadGenExportWorkflowId, getListActionWorkflowId, getLogLevelConfig, getOntologyDomainLabel, getPrimaryOntologyItemsForDomain, getResourceFilterFacetIds, getSemanticIconComponent, getSeriesColor, getSharedOrganizationGraph, getStateKeyColor, getStatusColor4 as getStatusColor, getStepActionLabel, iconMap, isLeadGenExportAction, isSessionCapable, knowledgeManifest, labelResourceFilterFacet, leadGenArtifactKeys, leadGenListCompanyKeys, leadGenListMemberKeys, leadGenManifest, mdxComponents, milestoneKeys, milestoneStatusColors, monitoringManifest, normaliseConceptKey, noteKeys, noteTypeColors, observabilityKeys, operationsKeys, operationsManifest, projectActivityKeys, projectKeys, projectNavigationGroups, projectNavigationSurfaces, projectStatusColors, requestTopbarActionManifest, requestsKeys, resolveBuildPlanSteps, resolveBuildState, resolveSemanticIconComponent, scheduleKeys, sessionsKeys, settingsManifest, showApiErrorNotification, showAuthError, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, sortData, sortStageKeys, subsidebarWidth, taskKeys, taskStatusColors, taskTypeColors, useAccess, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useAddCompaniesToList, useAddContactsToList, useAppearance, useArchiveSession, useArchivedLogs, useArtifacts, useAssignRole, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBreadcrumbs, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useClient, useClientStatus, useClients, useCommandQueue, useCommandQueueTask, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateArtifact, useCreateClient, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateMilestone, useCreateNote, useCreateOrgRole, useCreateProject, useCreateSchedule, useCreateSession, useCreateTask, useCreateWebhookEndpoint, useCredentials, useCrmActions, useCrmPipelineSummary, useCrmPrioritySettings, useCrmQuickMetrics, useCyberColors, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteClient, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteLists, useDeleteMilestone, useDeleteOrgRole, useDeleteProject, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteTask2, useDeleteWebhookEndpoint, useDeriveActions, useEffectivePermissions, useElevasisSystems, useEndSession, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useErrorTrends, useExecuteAction, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutionSSE, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphBackgroundStyles, useGraphTheme, useInFlightExecutions, useLeadGenActionRegistry, useLeadGenBulkActions, useLeadGenConfig, useLeadGenHeaderActions, useLeadGenRowActions, useList, useListActions, useListApiKeys, useListDeployments, useListExecutions, useListMember, useListMembers, useListProgress, useListRecords, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useMilestones, useNewKnowledgeMapLayout, useNotificationAdapter, useNotificationCount, useNotifications, useOptionalElevasisSystems, useOrgRoles, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, usePermissionCatalog, useProject, useProjectActivities, useProjectMilestones, useProjectNotes, useProjectRealtime, useProjectTasks, useProjects, useReactivateMembership, useRecentCrmActivity, useRecentExecutionsByResource, useRemoveCompaniesFromList, useRequest, useRequestsList, useResetCrmPrioritySettings, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResolvedOrganizationModel, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useRevokeRole, useSSEConnection, useScheduledTasks, useSession, useSessionCheck, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSidebar, useSidebarCollapse, useSortedData, useStableAccessToken, useStatusFilter, useSubmitAction, useSubmitRequest, useSuccessNotification, useSystemHealth, useTableSelection, useTableSort, useTasks, useTestNotification, useTimeRangeDates, useTopFailingResources, useTransitionItem, useTransitionListCompany, useTransitionListMember, useTransitionState, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateClient, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateCrmPrioritySettings, useUpdateList, useUpdateListConfig, useUpdateListStatus, useUpdateMilestone, useUpdateOrgRole, useUpdateProject, useUpdateRequestStatus, useUpdateSchedule, useUpdateTask, useUpdateWebhookEndpoint, useUserMemberships, useVerifyCredential, useVisibleResources, useWarningNotification, useWorkflowExecution };
|
|
51404
|
+
export { APIErrorAlert, AbsoluteScheduleForm, AccessGuard, AccessKeys, AccountSettings, ActionModal, ActivityCard, ActivityFeed, ActivityFeedWidget, ActivityFilters, ActivityLog, ActivityTable, ActivityTimeline, ActivityTrendChart, AgentDefinitionDisplay, AgentExecutionLogs, AgentExecutionPanel, AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationDetailPanel, AgentIterationEdge, AgentIterationNode, AgentResourceEntrySchema, AgentSessionGroup, AllTasksPage, ApiKeyDisplayModal, ApiKeyList, ApiKeyService, ApiKeySettings, AppErrorBoundary, AppShellCenteredContainer, AppShellContainer, AppShellContentContainer, AppShellError, AppShellLoader, AppShellRightSideContainer, AppShellRightSideOuterContainer, AppTopbarAdjusterWrapper, AppearanceContext, AppearanceProvider, AppearanceSettings, BaseEdge, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, BaseNode, Breadcrumbs, BusinessImpactCard, CRM_ITEMS, CenteredErrorState, ChartFrame, Checklist, CheckpointGroup, CollapsibleJsonSection, CollapsibleSection, CollapsibleSidebarGroup, CombinedTrendChart, CommandQueueDetailPage, CommandQueuePage, CommandQueueShell, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, CommandViewPage, CompanyDetailPage, ConfigCard, ConfirmationInputModal, ConfirmationModal, ContactDetailPage, ContentSections, ContextUsageBadge, ContextViewer, ContractDisplay, ConversationThread, CostAnalytics, CostBreakdownCard, CostByModelTable, CostMetricsCard, CostTrendChart, CrashErrorFallback, CreateApiKeyModal, CreateCredentialModal, CreateDeliveryEntityModal, CreateRoleModal, CreateScheduleModal, CreateWebhookEndpointModal, CredentialList, CredentialService, CredentialSettings, CrmActionsProvider, CrmOverview, CrmSettingsPage, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, CustomModal, CustomSelector, CyberAreaChart, CyberDonut, CyberDonutTooltip, CyberLegendItem, CyberParticles, DEAL_STAGES, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DEFAULT_KANBAN_CONFIG, DEFAULT_SEMANTIC_ICON_REGISTRY, DEFAULT_WAIT_FOR_ORGANIZATION, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, Dashboard, DashboardOperationsOverview, DealDetailPage, DealKanbanCard, DealsListPage, DeleteScheduleModal, DeploymentDetailModal, DeploymentList, DeploymentService, DeploymentSettings, DeploymentStatusBadge, DetailCardSkeleton, EMPTY_LIST_ACTIONS, EditApiKeyModal, EditCredentialModal, EditWebhookEndpointModal, ElevasisCoreProvider, ElevasisLoader, ElevasisSystemsProvider, ElevasisUIProvider, EmptyState, EmptyVisualizer, ErrorAnalysisCard, ErrorBreakdownTable, ErrorDetailsModal, ErrorReportCard, ExecuteWorkflowModal, ExecutionBreakdownTable, ExecutionErrorSection, ExecutionHealth, ExecutionHealthCard, ExecutionLogsFilters, ExecutionLogsPage, ExecutionLogsTable, ExecutionPanel, ExecutionStats, ExecutionStatusBadge, FILTERABLE_DOMAIN_KEYS, FeatureUnavailableState, FilterBar, GlowDot, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, HealthStatusCard, HeroStatsRow, IdentityDomainSchema, IntegrationResourceEntrySchema, JsonViewer, KNOWLEDGE_DOMAINS_WITH_PANELS, KNOWLEDGE_ICON_TOKEN_BY_KIND, KanbanBoard, KnowledgeSearchBar, KnowledgeTree, LEAD_GEN_ITEMS, LEAD_GEN_ROUTE_LINKS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenReadinessAlert, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, LinksGroup, ListActionsProvider, ListBuilderIndexPage, ListBuilderPage, ListSkeleton, LogEntry, LogGroup, MdxRenderer, MemberAccessModal, MembershipStatusBadge, MetricsStrip, MilestoneTimeline, MyRolesPage, MyTasksPanel, NavigationButton, NoAccessState, NotificationBell, NotificationCenter, NotificationItem, NotificationList, NotificationPanel, NotificationProvider, OAuthConnectModal, OAuthIntegrationsCard, OM_NESTED_TREE_GROUPS, OM_TREE_GROUPS, ORPHAN_STAGE_ORDER, OperationsOverview, OperationsService, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, OrgMembersList, OrganizationGraphPage, OrganizationMembershipService, OrganizationMembershipsList, OrganizationProvider, OrganizationSettings, OrganizationSwitcher, OrganizationSwitcherConnected, PIPELINE_FUNNEL_ORDER, PageContainer, PageNotFound, PageTitleCaption, PermissionMatrix, PipelineFunnelWidget, PolicySchema, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, ProtectedRoute, ProvisioningStateBadge, QuickCreateActions, RecentExecutionsByResource, RecurringScheduleForm, RelativeScheduleForm, RequestActionIcon, RequestModal, ResourceCard, ResourceDefinitionSection, ResourceDetailPage, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceHealthChart, ResourceHealthPanel, ResourceNotFoundState, ResourceOverview, ResourcesPage, ResourcesSidebar, RichTextEditor, RoleBadge, RoleSchema, RunResourceButton, SAVED_VIEW_PRESETS, SavedViewsPanel, ScheduleCard, ScheduleDetailModal, ScheduleTypeSelector, ScriptResourceEntrySchema, SemanticIcon, SessionChatArea, SessionChatInterface, SessionChatPage, SessionConversationView, SessionDetailsPanel, SessionExecutionLogs, SessionHeader, SessionListItem, SessionMemory, SessionsPage, SessionsSidebar, Sidebar, SidebarContext, SidebarProvider, SortableHeader, StatCard, StatCardSkeleton, StatsCardSkeleton, StatusBadge, StepConfigForm, SubshellContainer, SubshellContentContainer, SubshellLoader, SubshellNavList, SubshellRightSideContainer, SubshellSidebar, SubshellSidebarLoader, SurfaceDefinitionSchema, SystemOpsView, SystemShell, TabCountBadge, TabSection, TableSelectionToolbar, TaskCard, TaskScheduler, TimeRangeSelector, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, ToolsListDisplay, Topbar, TopbarActions, TopbarContainer, TrendIndicator, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, UnresolvedErrorsTeaser, UpcomingMilestonesPage, Vignette, VisualizerContainer, WebhookEndpointList, WebhookEndpointService, WebhookEndpointSettings, WebhookUrlDisplayModal, WorkflowDefinitionDisplay, WorkflowExecutionLogs, WorkflowExecutionPanel, WorkflowExecutionTimeline, WorkflowResourceEntrySchema, ZodFormRenderer, acquisitionListKeys, aggregateSystemMetrics, buildErrorReport, buildKnowledgeOmTreeData, calculateProgress, clientsKeys, collectResourceFilterFacets, companyKeys, computeProtectedRouteGate, contactKeys, createOrganizationsSlice, createTestSystemsProvider, createUseOrgInitialization, createUseOrganizations, crmManifest, crmPrioritySettingsKeys, dealKeys, dealNoteKeys, dealTaskKeys, deliveryManifest, deriveBusinessProgress, executionsKeys, extendSemanticIconRegistry, filterByDomainFilters, findKnowledgeTreeNodeByValue, findListActionByAction, findOmTreeGroup, formatDate3 as formatDate, formatDealStageLabel, formatResourceAttribution, formatStatusLabel, getConceptDefinition, getEnrichmentColor, getEnrichmentStatus, getExecutionStatusConfig, getGraphBackgroundStyles, getHealthColor, getIcon, getKnowledgeDomainFolderCommand, getKnowledgeGraphNodeCommand, getKnowledgeIconToken, getKnowledgeNodeReadCommand, getKnowledgeOntologyProjection, getKnowledgeTreeFolderCommand, getLeadGenApiInterfaceReadiness, getLeadGenExportWorkflowId, getListActionWorkflowId, getLogLevelConfig, getOntologyDomainLabel, getPrimaryOntologyItemsForDomain, getResourceFilterFacetIds, getSemanticIconComponent, getSeriesColor, getSharedOrganizationGraph, getStateKeyColor, getStatusColor4 as getStatusColor, getStepActionLabel, iconMap, isLeadGenExportAction, isSessionCapable, knowledgeManifest, labelResourceFilterFacet, leadGenArtifactKeys, leadGenListCompanyKeys, leadGenListMemberKeys, leadGenManifest, mdxComponents, milestoneKeys, milestoneStatusColors, monitoringManifest, normaliseConceptKey, noteKeys, noteTypeColors, observabilityKeys, operationsKeys, operationsManifest, projectActivityKeys, projectKeys, projectNavigationGroups, projectNavigationSurfaces, projectStatusColors, requestTopbarActionManifest, requestsKeys, resolveBuildPlanSteps, resolveBuildState, resolveSemanticIconComponent, scheduleKeys, sessionsKeys, settingsManifest, showApiErrorNotification, showAuthError, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, sortData, sortStageKeys, subsidebarWidth, taskKeys, taskStatusColors, taskTypeColors, useAccess, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useAddCompaniesToList, useAddContactsToList, useAppearance, useArchiveSession, useArchivedLogs, useArtifacts, useAssignRole, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBreadcrumbs, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useClient, useClientStatus, useClients, useCommandQueue, useCommandQueueTask, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateArtifact, useCreateClient, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateMilestone, useCreateNote, useCreateOrgRole, useCreateProject, useCreateSchedule, useCreateSession, useCreateTask, useCreateWebhookEndpoint, useCredentials, useCrmActions, useCrmPipelineSummary, useCrmPrioritySettings, useCrmQuickMetrics, useCyberColors, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteClient, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteLists, useDeleteMilestone, useDeleteOrgRole, useDeleteProject, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteTask2, useDeleteWebhookEndpoint, useDeriveActions, useEffectivePermissions, useElevasisSystems, useEndSession, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useErrorTrends, useExecuteAction, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutionSSE, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphBackgroundStyles, useGraphTheme, useInFlightExecutions, useLeadGenActionRegistry, useLeadGenBulkActions, useLeadGenConfig, useLeadGenHeaderActions, useLeadGenRowActions, useList, useListActions, useListApiKeys, useListDeployments, useListExecutions, useListMember, useListMembers, useListProgress, useListRecords, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useMilestones, useNotificationAdapter, useNotificationCount, useNotifications, useOptionalElevasisSystems, useOrgRoles, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, usePermissionCatalog, useProject, useProjectActivities, useProjectMilestones, useProjectNotes, useProjectRealtime, useProjectTasks, useProjects, useReactivateMembership, useRecentCrmActivity, useRecentExecutionsByResource, useRemoveCompaniesFromList, useRequest, useRequestsList, useResetCrmPrioritySettings, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResolvedOrganizationModel, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useRevokeRole, useSSEConnection, useScheduledTasks, useSession, useSessionCheck, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSidebar, useSidebarCollapse, useSortedData, useStableAccessToken, useStatusFilter, useSubmitAction, useSubmitRequest, useSuccessNotification, useSystemHealth, useTableSelection, useTableSort, useTasks, useTestNotification, useTimeRangeDates, useTopFailingResources, useTransitionItem, useTransitionListCompany, useTransitionListMember, useTransitionState, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateClient, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateCrmPrioritySettings, useUpdateList, useUpdateListConfig, useUpdateListStatus, useUpdateMilestone, useUpdateOrgRole, useUpdateProject, useUpdateRequestStatus, useUpdateSchedule, useUpdateTask, useUpdateWebhookEndpoint, useUserMemberships, useVerifyCredential, useVisibleResources, useWarningNotification, useWorkflowExecution };
|