@elevasis/ui 2.20.0 → 2.22.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.
Files changed (100) hide show
  1. package/dist/api/index.js +2 -2
  2. package/dist/app/index.js +5 -5
  3. package/dist/charts/index.js +3 -3
  4. package/dist/{chunk-TO7QXDBX.js → chunk-3HEUGBOT.js} +3 -3
  5. package/dist/chunk-AXXTN44Z.js +26 -0
  6. package/dist/{chunk-FMFX4K6E.js → chunk-B4FHWKEF.js} +3390 -2929
  7. package/dist/{chunk-AL23U6C3.js → chunk-BIWHHWCJ.js} +1 -2
  8. package/dist/{chunk-MZFJWCPH.js → chunk-BSZRKBAW.js} +277 -92
  9. package/dist/{chunk-GP3AFJYG.js → chunk-COG4ABRI.js} +8 -13
  10. package/dist/chunk-DDZOHLHB.js +48 -0
  11. package/dist/{chunk-ZE2KQSHL.js → chunk-GJ7EIABJ.js} +4 -4
  12. package/dist/{chunk-YP6T426C.js → chunk-IBUYJXA3.js} +1326 -1110
  13. package/dist/{chunk-2CFOFSSG.js → chunk-IOTLB6ND.js} +8 -13
  14. package/dist/{chunk-GBMNCNHX.js → chunk-KVJ3LFH2.js} +3 -1
  15. package/dist/chunk-LJWV4TWV.js +335 -0
  16. package/dist/{chunk-PJVG3ISO.js → chunk-LKVBEE63.js} +7 -9
  17. package/dist/{chunk-JR5WNTLA.js → chunk-LVJGPE6H.js} +11 -24
  18. package/dist/{chunk-OUYH2SBS.js → chunk-LVUCBY7X.js} +2 -2
  19. package/dist/{chunk-TIIPYB2Z.js → chunk-QZJM3RYI.js} +1 -1
  20. package/dist/{chunk-OD7GWIZS.js → chunk-SGXXJE52.js} +1 -121
  21. package/dist/{chunk-7YQKVWSD.js → chunk-SQ5JGELM.js} +25 -5
  22. package/dist/{chunk-R7OJCNL3.js → chunk-T6INEVX6.js} +1 -1
  23. package/dist/{chunk-RX4UWZZR.js → chunk-TKAYX2SP.js} +8 -3
  24. package/dist/{chunk-CTTY6FUT.js → chunk-TSSKOQBX.js} +2 -2
  25. package/dist/{chunk-GTYUP7MB.js → chunk-WWJ6S2HQ.js} +10 -22
  26. package/dist/{chunk-Q5HC6ENG.js → chunk-XOTJNW4Q.js} +1 -1
  27. package/dist/{chunk-BHR7IV72.js → chunk-XUYBOO32.js} +1 -1
  28. package/dist/{chunk-M7W7CGPL.js → chunk-Z6FAH4XV.js} +1 -1
  29. package/dist/{chunk-Q4QJOSVS.js → chunk-ZBCTB5CA.js} +1 -1
  30. package/dist/components/index.css +85 -85
  31. package/dist/components/index.d.ts +970 -746
  32. package/dist/components/index.js +246 -39
  33. package/dist/components/navigation/index.css +589 -0
  34. package/dist/components/navigation/index.d.ts +1 -13
  35. package/dist/components/navigation/index.js +11 -1
  36. package/dist/execution/index.d.ts +27 -0
  37. package/dist/features/auth/index.css +2 -2
  38. package/dist/features/auth/index.d.ts +184 -3
  39. package/dist/features/crm/index.css +2 -2
  40. package/dist/features/crm/index.d.ts +201 -38
  41. package/dist/features/crm/index.js +15 -14
  42. package/dist/features/dashboard/index.css +2 -2
  43. package/dist/features/dashboard/index.d.ts +25 -27
  44. package/dist/features/dashboard/index.js +15 -14
  45. package/dist/features/delivery/index.css +85 -85
  46. package/dist/features/delivery/index.d.ts +201 -38
  47. package/dist/features/delivery/index.js +15 -14
  48. package/dist/features/lead-gen/index.css +2 -2
  49. package/dist/features/lead-gen/index.d.ts +19 -37
  50. package/dist/features/lead-gen/index.js +15 -14
  51. package/dist/features/monitoring/index.css +85 -85
  52. package/dist/features/monitoring/index.d.ts +18 -36
  53. package/dist/features/monitoring/index.js +17 -16
  54. package/dist/features/monitoring/requests/index.css +2 -2
  55. package/dist/features/monitoring/requests/index.d.ts +18 -36
  56. package/dist/features/monitoring/requests/index.js +15 -14
  57. package/dist/features/operations/index.css +2 -2
  58. package/dist/features/operations/index.d.ts +49 -67
  59. package/dist/features/operations/index.js +18 -17
  60. package/dist/features/seo/index.d.ts +17 -35
  61. package/dist/features/seo/index.js +1 -1
  62. package/dist/features/settings/index.css +2 -2
  63. package/dist/features/settings/index.d.ts +222 -44
  64. package/dist/features/settings/index.js +16 -15
  65. package/dist/graph/index.css +2 -2
  66. package/dist/hooks/delivery/index.css +2 -2
  67. package/dist/hooks/delivery/index.d.ts +184 -3
  68. package/dist/hooks/delivery/index.js +2 -2
  69. package/dist/hooks/index.css +85 -85
  70. package/dist/hooks/index.d.ts +1862 -1582
  71. package/dist/hooks/index.js +13 -12
  72. package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +92 -121
  73. package/dist/hooks/published.css +85 -85
  74. package/dist/hooks/published.d.ts +1862 -1582
  75. package/dist/hooks/published.js +13 -12
  76. package/dist/index.css +12 -12
  77. package/dist/index.d.ts +689 -470
  78. package/dist/index.js +14 -13
  79. package/dist/initialization/index.d.ts +184 -3
  80. package/dist/layout/index.js +2 -2
  81. package/dist/organization/index.css +589 -0
  82. package/dist/organization/index.js +1 -1
  83. package/dist/profile/index.d.ts +184 -3
  84. package/dist/provider/index.css +384 -0
  85. package/dist/provider/index.d.ts +68 -125
  86. package/dist/provider/index.js +11 -10
  87. package/dist/provider/published.css +463 -0
  88. package/dist/provider/published.d.ts +68 -125
  89. package/dist/provider/published.js +8 -7
  90. package/dist/supabase/index.d.ts +359 -6
  91. package/dist/test-utils/index.d.ts +46 -2
  92. package/dist/test-utils/index.js +104 -3
  93. package/dist/theme/index.js +2 -2
  94. package/dist/types/index.d.ts +303 -141
  95. package/dist/utils/index.d.ts +26 -59
  96. package/dist/utils/index.js +1 -1
  97. package/package.json +4 -4
  98. package/dist/chunk-LR5CRY5A.js +0 -514
  99. package/dist/chunk-MG3NF7QL.js +0 -63
  100. /package/dist/{chunk-6GUW5GGF.js → chunk-6Z3G4U2R.js} +0 -0
@@ -1,31 +1,32 @@
1
1
  import '../chunk-7M2VOCYN.js';
2
- export { ApiKeyService, CredentialService, DeploymentService, OperationsService, OrganizationMembershipService, WebhookEndpointService, acquisitionListKeys, companyKeys, contactKeys, dealKeys, dealNoteKeys, dealTaskKeys, executionsKeys, filterByDomainFilters, isSessionCapable, operationsKeys, projectActivityKeys, requestsKeys, scheduleKeys, sessionsKeys, sortData, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useArchiveSession, useArchivedLogs, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewLayout, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateSchedule, useCreateSession, useCreateWebhookEndpoint, useCredentials, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteWebhookEndpoint, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphStats, useList, useListApiKeys, useListDeployments, useListExecutions, useListProgress, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useNotificationCount as useNotificationCountSSE, useNotifications, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, useProjectActivities, useProjectRealtime, useReactivateMembership, useRecentExecutionsByResource, useRequest, useRequestsList, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useSSEConnection, useScheduledTasks, useSession, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSortedData, useStatusFilter, useSubmitAction, useSuccessNotification, useSyncDealStage, useTableSelection, useTableSort, useTestNotification, useTimeRangeDates, useTopFailingResources, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateList, useUpdateListConfig, useUpdateMemberConfig, useUpdateRequestStatus, useUpdateSchedule, useUpdateWebhookEndpoint, useUserMemberships, useVisibleResources, useWarningNotification } from '../chunk-FMFX4K6E.js';
2
+ export { ApiKeyService, CredentialService, DeploymentService, OperationsService, OrganizationMembershipService, WebhookEndpointService, acquisitionListKeys, collectResourceFilterFacets, companyKeys, contactKeys, dealKeys, dealNoteKeys, dealTaskKeys, executionsKeys, filterByDomainFilters, getResourceFilterFacetIds, isSessionCapable, labelResourceFilterFacet, operationsKeys, projectActivityKeys, requestsKeys, scheduleKeys, sessionsKeys, sortData, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useArchiveSession, useArchivedLogs, useAssignRole, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewLayout, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateOrgRole, useCreateSchedule, useCreateSession, useCreateWebhookEndpoint, useCredentials, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteOrgRole, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteWebhookEndpoint, useEffectivePermissions, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphStats, useHasPermission, useList, useListApiKeys, useListDeployments, useListExecutions, useListProgress, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useNotificationCount as useNotificationCountSSE, useNotifications, useOrgRoles, useOrganizationMembers, useOrganizationPermissions, usePaginationState, usePatchTask, usePauseSchedule, usePermissionCatalog, useProjectActivities, useProjectRealtime, useReactivateMembership, useRecentExecutionsByResource, useRequest, useRequestsList, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useRevokeRole, useSSEConnection, useScheduledTasks, useSession, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSortedData, useStatusFilter, useSubmitAction, useSuccessNotification, useSyncDealStage, useTableSelection, useTableSort, useTestNotification, useTimeRangeDates, useTopFailingResources, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateList, useUpdateListConfig, useUpdateMemberConfig, useUpdateOrgRole, useUpdateRequestStatus, useUpdateSchedule, useUpdateWebhookEndpoint, useUserMemberships, useVisibleResources, useWarningNotification } from '../chunk-B4FHWKEF.js';
3
3
  import '../chunk-BRXELOHC.js';
4
4
  export { observabilityKeys, useErrorTrends } from '../chunk-QSTH6T77.js';
5
- export { milestoneKeys, noteKeys, projectKeys, taskKeys, useCreateProject as useCreateDeliveryProject, useCreateMilestone, useCreateNote, useCreateTask, useDeleteProject as useDeleteDeliveryProject, useDeleteTask as useDeleteDeliveryTask, useDeleteMilestone, useMilestones, useProject, useProjectMilestones, useProjectNotes, useProjectTasks, useProjects, useTasks, useUpdateProject as useUpdateDeliveryProject, useUpdateMilestone, useUpdateTask } from '../chunk-M7W7CGPL.js';
5
+ export { milestoneKeys, noteKeys, projectKeys, taskKeys, useCreateProject as useCreateDeliveryProject, useCreateMilestone, useCreateNote, useCreateTask, useDeleteProject as useDeleteDeliveryProject, useDeleteTask as useDeleteDeliveryTask, useDeleteMilestone, useMilestones, useProject, useProjectMilestones, useProjectNotes, useProjectTasks, useProjects, useTasks, useUpdateProject as useUpdateDeliveryProject, useUpdateMilestone, useUpdateTask } from '../chunk-Z6FAH4XV.js';
6
6
  import '../chunk-22UVE3RA.js';
7
7
  export { useMergedExecution } from '../chunk-3ZMAGTWF.js';
8
- import '../chunk-Q4QJOSVS.js';
9
- import '../chunk-TO7QXDBX.js';
10
- import '../chunk-Q5HC6ENG.js';
8
+ import '../chunk-ZBCTB5CA.js';
9
+ import '../chunk-3HEUGBOT.js';
10
+ import '../chunk-XOTJNW4Q.js';
11
11
  import '../chunk-WLOQ4IBG.js';
12
- export { createFeatureAccessHook, createUseFeatureAccess } from '../chunk-LR5CRY5A.js';
13
- import '../chunk-OUYH2SBS.js';
14
- import '../chunk-RX4UWZZR.js';
15
- import '../chunk-BHR7IV72.js';
12
+ import '../chunk-AXXTN44Z.js';
13
+ import '../chunk-LVUCBY7X.js';
14
+ export { createFeatureAccessHook } from '../chunk-LJWV4TWV.js';
15
+ import '../chunk-TKAYX2SP.js';
16
+ import '../chunk-XUYBOO32.js';
16
17
  import '../chunk-SZHARWKU.js';
17
18
  import '../chunk-3KMDHCAR.js';
18
19
  import '../chunk-NYBEU5TE.js';
19
- import '../chunk-R7OJCNL3.js';
20
+ import '../chunk-T6INEVX6.js';
20
21
  import '../chunk-2IFYDILW.js';
21
22
  import '../chunk-Q7DJKLEN.js';
22
- import '../chunk-7YQKVWSD.js';
23
+ import '../chunk-SQ5JGELM.js';
23
24
  import '../chunk-6IA2OMAE.js';
24
25
  import '../chunk-QJ2KCHKX.js';
25
26
  import '../chunk-HQ7M6PBW.js';
26
27
  import '../chunk-DT3QYZVU.js';
27
28
  import '../chunk-RNP5R5I3.js';
28
- export { REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY } from '../chunk-OD7GWIZS.js';
29
+ export { REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY } from '../chunk-SGXXJE52.js';
29
30
  import '../chunk-KRWALB24.js';
30
31
  import '../chunk-SLH2QLKV.js';
31
32
  import '../chunk-DK2HVHCY.js';
@@ -1,70 +1,4 @@
1
- /**
2
- * Command View Types
3
- *
4
- * Unified type definitions for the Command View graph visualization.
5
- * These types are used by both backend serialization and frontend rendering.
6
- *
7
- * Command View shows the resource graph: agents, workflows, triggers, integrations,
8
- * external resources, and human checkpoints with their relationships.
9
- */
10
-
11
- /**
12
- * Extended agent metadata for Command View
13
- * Includes model and capability information for graph display
14
- */
15
- interface CommandViewAgent extends ResourceDefinition {
16
- type: 'agent';
17
- modelProvider: string;
18
- modelId: string;
19
- toolCount: number;
20
- hasKnowledgeMap: boolean;
21
- hasMemory: boolean;
22
- sessionCapable: boolean;
23
- }
24
- /**
25
- * Extended workflow metadata for Command View
26
- * Includes step information for graph display
27
- */
28
- interface CommandViewWorkflow extends ResourceDefinition {
29
- type: 'workflow';
30
- stepCount: number;
31
- entryPoint: string;
32
- }
33
- /**
34
- * Relationship types between resources
35
- *
36
- * - triggers: Resource initiates/starts another resource (orange)
37
- * - uses: Resource uses an integration (teal)
38
- * - approval: Resource requires human approval (yellow)
39
- */
40
- type RelationshipType$1 = 'triggers' | 'uses' | 'approval';
41
- /**
42
- * Command View edge (relationship between resources)
43
- */
44
- interface CommandViewEdge$1 {
45
- id: string;
46
- source: string;
47
- target: string;
48
- relationship: RelationshipType$1;
49
- label?: string;
50
- }
51
- /**
52
- * Command View data structure
53
- * Complete graph data for visualization
54
- *
55
- * Backend serializes this once at startup and serves it via /command-view endpoint.
56
- * Frontend consumes this directly for graph rendering.
57
- */
58
- interface CommandViewData {
59
- workflows: CommandViewWorkflow[];
60
- agents: CommandViewAgent[];
61
- triggers: TriggerDefinition[];
62
- integrations: IntegrationDefinition[];
63
- externalResources: ExternalResourceDefinition[];
64
- humanCheckpoints: HumanCheckpointDefinition[];
65
- edges: CommandViewEdge$1[];
66
- domainDefinitions?: DomainDefinition[];
67
- }
1
+ import { z } from 'zod';
68
2
 
69
3
  /**
70
4
  * Supported integration types
@@ -107,8 +41,10 @@ interface ResourceDefinition {
107
41
  type: ResourceType;
108
42
  /** Environment/deployment status */
109
43
  status: ResourceStatus;
110
- /** Domain tags for filtering and organization */
111
- domains?: ResourceDomain[];
44
+ /** Graph links to Organization Model nodes */
45
+ links?: ResourceLink[];
46
+ /** Infrastructure category for filtering */
47
+ category?: ResourceCategory;
112
48
  /** Whether the agent supports multi-turn sessions (agents only) */
113
49
  sessionCapable?: boolean;
114
50
  /** Whether the resource is local (monorepo) or remote (externally deployed) */
@@ -116,33 +52,6 @@ interface ResourceDefinition {
116
52
  /** Whether this resource is archived and should be excluded from registration and deployment */
117
53
  archived?: boolean;
118
54
  }
119
- /**
120
- * Domain definition for Command View filtering
121
- *
122
- * Domains are organizational metadata for UI filtering/grouping.
123
- * No execution impact - purely for visualization.
124
- *
125
- * @example
126
- * {
127
- * id: 'support',
128
- * name: 'Customer Support',
129
- * description: 'Ticket triage, knowledge base, escalations',
130
- * color: 'green',
131
- * icon: 'IconHeadset'
132
- * }
133
- */
134
- interface DomainDefinition {
135
- /** Unique identifier (e.g., 'support') */
136
- id: string;
137
- /** Display name (e.g., 'Customer Support') */
138
- name: string;
139
- /** Purpose description */
140
- description: string;
141
- /** Optional Mantine color for UI (e.g., 'blue', 'green', 'orange') */
142
- color?: string;
143
- /** Optional Tabler icon name (e.g., 'IconHeadset') */
144
- icon?: string;
145
- }
146
55
  /** Webhook provider identifiers */
147
56
  type WebhookProviderType = 'cal-com' | 'stripe' | 'signature-api' | 'instantly' | 'apify' | 'test';
148
57
  /** Webhook trigger configuration */
@@ -179,7 +88,7 @@ type TriggerConfig = WebhookTriggerConfig | ScheduleTriggerConfig | EventTrigger
179
88
  * scheduled cron jobs, platform events, or manual user actions.
180
89
  *
181
90
  * BREAKING CHANGES (2025-11-30):
182
- * - Now extends ResourceDefinition (inherits: resourceId, name, description, version, type, status, domains)
91
+ * - Now extends ResourceDefinition (inherits: resourceId, name, description, version, type, status, links, category)
183
92
  * - Field renames: `id` -> `resourceId` (inherited), `type` -> `triggerType`
184
93
  * - Relationship rename: `invokes` -> `triggers` (unified vocabulary)
185
94
  * - New required fields: `version` (inherited), `type: 'trigger'` (inherited)
@@ -224,7 +133,7 @@ interface TriggerDefinition extends ResourceDefinition {
224
133
  * stored here (queried at runtime from credentials table).
225
134
  *
226
135
  * BREAKING CHANGES (2025-11-30):
227
- * - Now extends ResourceDefinition (inherits: resourceId, name, description, version, type, status, domains)
136
+ * - Now extends ResourceDefinition (inherits: resourceId, name, description, version, type, status, links, category)
228
137
  * - Field renames: `id` -> `resourceId` (inherited)
229
138
  * - New required field: `status` (inherited) - organizations must add status to all integrations
230
139
  * - New required field: `version` (inherited) - organizations must add version to all integrations
@@ -265,7 +174,7 @@ type ExternalPlatform = 'n8n' | 'make' | 'zapier' | 'other';
265
174
  * no API integration with external platforms, no status syncing.
266
175
  *
267
176
  * BREAKING CHANGES (2025-11-30):
268
- * - Now extends ResourceDefinition (inherits: resourceId, name, description, version, type, status, domains)
177
+ * - Now extends ResourceDefinition (inherits: resourceId, name, description, version, type, status, links, category)
269
178
  * - Field renames: `id` -> `resourceId` (inherited)
270
179
  * - New required field: `version` (inherited) - organizations must add version to all external resources
271
180
  * - New required field: `type: 'external'` (inherited) - resource type discriminator
@@ -314,7 +223,7 @@ interface ExternalResourceDefinition extends ResourceDefinition {
314
223
  * Tasks with matching command_queue_group are routed to this checkpoint.
315
224
  *
316
225
  * BREAKING CHANGES (2025-11-30):
317
- * - Now extends ResourceDefinition (inherits: resourceId, name, description, version, type, status, domains)
226
+ * - Now extends ResourceDefinition (inherits: resourceId, name, description, version, type, status, links, category)
318
227
  * - Field renames: `id` -> `resourceId` (inherited)
319
228
  * - description is now REQUIRED (was optional) - organizations must add description to all human checkpoints
320
229
  * - New required field: `version` (inherited) - organizations must add version to all human checkpoints
@@ -352,31 +261,93 @@ interface HumanCheckpointDefinition extends ResourceDefinition {
352
261
  }
353
262
 
354
263
  /**
355
- * Standard Domain Definitions
356
- * Centralized domain constants and definitions for all organization resources.
264
+ * Command View Types
265
+ *
266
+ * Unified type definitions for the Command View graph visualization.
267
+ * These types are used by both backend serialization and frontend rendering.
268
+ *
269
+ * Command View shows the resource graph: agents, workflows, triggers, integrations,
270
+ * external resources, and human checkpoints with their relationships.
357
271
  */
358
272
 
359
- declare const DOMAINS: {
360
- readonly INBOUND_PIPELINE: "inbound-pipeline";
361
- readonly LEAD_GEN_PIPELINE: "lead-gen-pipeline";
362
- readonly SUPPORT: "support";
363
- readonly CLIENT_SUPPORT: "client-support";
364
- readonly DELIVERY: "delivery";
365
- readonly OPERATIONS: "operations";
366
- readonly FINANCE: "finance";
367
- readonly EXECUTIVE: "executive";
368
- readonly INSTANTLY: "instantly";
369
- readonly TESTING: "testing";
370
- readonly INTERNAL: "internal";
371
- readonly INTEGRATION: "integration";
372
- readonly UTILITY: "utility";
373
- readonly DIAGNOSTIC: "diagnostic";
374
- };
375
273
  /**
376
- * ResourceDomain - Strongly typed domain identifier
377
- * Use this type for all domain references to ensure compile-time validation.
274
+ * Extended agent metadata for Command View
275
+ * Includes model and capability information for graph display
276
+ */
277
+ interface CommandViewAgent extends ResourceDefinition {
278
+ type: 'agent';
279
+ modelProvider: string;
280
+ modelId: string;
281
+ toolCount: number;
282
+ hasKnowledgeMap: boolean;
283
+ hasMemory: boolean;
284
+ sessionCapable: boolean;
285
+ }
286
+ /**
287
+ * Extended workflow metadata for Command View
288
+ * Includes step information for graph display
289
+ */
290
+ interface CommandViewWorkflow extends ResourceDefinition {
291
+ type: 'workflow';
292
+ stepCount: number;
293
+ entryPoint: string;
294
+ }
295
+ /**
296
+ * Relationship types between resources
297
+ *
298
+ * - triggers: Resource initiates/starts another resource (orange)
299
+ * - uses: Resource uses an integration (teal)
300
+ * - approval: Resource requires human approval (yellow)
301
+ */
302
+ type RelationshipType$1 = 'triggers' | 'uses' | 'approval';
303
+ /**
304
+ * Command View edge (relationship between resources)
378
305
  */
379
- type ResourceDomain = (typeof DOMAINS)[keyof typeof DOMAINS];
306
+ interface CommandViewEdge$1 {
307
+ id: string;
308
+ source: string;
309
+ target: string;
310
+ relationship: RelationshipType$1;
311
+ label?: string;
312
+ }
313
+ /**
314
+ * Command View data structure
315
+ * Complete graph data for visualization
316
+ *
317
+ * Backend serializes this once at startup and serves it via /command-view endpoint.
318
+ * Frontend consumes this directly for graph rendering.
319
+ */
320
+ interface CommandViewData {
321
+ workflows: CommandViewWorkflow[];
322
+ agents: CommandViewAgent[];
323
+ triggers: TriggerDefinition[];
324
+ integrations: IntegrationDefinition[];
325
+ externalResources: ExternalResourceDefinition[];
326
+ humanCheckpoints: HumanCheckpointDefinition[];
327
+ edges: CommandViewEdge$1[];
328
+ }
329
+
330
+ declare const LinkSchema: z.ZodObject<{
331
+ nodeId: z.ZodString;
332
+ kind: z.ZodEnum<{
333
+ contains: "contains";
334
+ references: "references";
335
+ exposes: "exposes";
336
+ maps_to: "maps_to";
337
+ "operates-on": "operates-on";
338
+ uses: "uses";
339
+ }>;
340
+ }, z.core.$strip>;
341
+ type Link = z.infer<typeof LinkSchema>;
342
+
343
+ declare const ResourceCategorySchema: z.ZodEnum<{
344
+ production: "production";
345
+ diagnostic: "diagnostic";
346
+ internal: "internal";
347
+ testing: "testing";
348
+ }>;
349
+ type ResourceCategory = z.infer<typeof ResourceCategorySchema>;
350
+ type ResourceLink = Link;
380
351
 
381
352
  /**
382
353
  * Command View Types
@@ -125,83 +125,14 @@
125
125
  }
126
126
  }
127
127
 
128
- /* src/theme/custom.css */
129
- .mantine-Button-root[data-variant=default] {
130
- background-color: var(--color-surface);
131
- backdrop-filter: var(--glass-blur);
132
- -webkit-backdrop-filter: var(--glass-blur);
133
- border: 1px solid var(--color-border);
134
- color: var(--color-text);
135
- }
136
- .mantine-Button-root[data-variant=default]:hover {
137
- background-color: var(--color-surface-hover);
138
- }
139
- .mantine-Accordion-control:hover {
140
- background-color: var(--color-surface-hover);
141
- }
142
- .mantine-Menu-item:hover:not([data-disabled]) {
143
- background-color: var(--color-surface-hover);
144
- }
145
- .mantine-Select-option:hover {
146
- background-color: var(--color-surface-hover) !important;
147
- }
148
- [data-mantine-color-scheme=dark] .mantine-Tabs-root {
149
- --tab-border-color: var(--color-border);
150
- }
151
- .mantine-Tabs-tab:hover {
152
- background-color: var(--color-surface-hover);
153
- }
154
- .mantine-Pagination-control:not([data-active]) {
155
- background: var(--color-surface);
156
- }
157
- ::-webkit-scrollbar {
158
- width: 5px;
159
- height: 5px;
160
- }
161
- ::-webkit-scrollbar-track {
162
- background: transparent;
163
- }
164
- ::-webkit-scrollbar-thumb {
165
- background: color-mix(in srgb, var(--color-text-subtle) 50%, var(--color-border));
166
- border-radius: 4px;
167
- }
168
- ::-webkit-scrollbar-thumb:hover {
169
- background: var(--color-text-subtle);
170
- }
171
- .mantine-Checkbox-input {
172
- background-color: var(--color-surface);
173
- border-color: var(--color-border);
174
- }
175
- .mantine-Checkbox-input:checked {
176
- background-color: var(--color-primary);
177
- border-color: var(--color-primary);
178
- }
179
- .mantine-Switch-root:has(input:not(:checked)) .mantine-Switch-track {
180
- background-color: var(--color-surface-hover);
181
- border-color: var(--color-border);
182
- }
183
- .mantine-Timeline-root {
184
- --tl-color: var(--color-primary);
185
- }
186
- .mantine-Timeline-item {
187
- --item-border-color: var(--color-border);
188
- }
189
- .mantine-Timeline-itemBullet {
190
- border-color: var(--color-border);
191
- }
192
- .mantine-Timeline-itemBullet:where([data-with-child]) {
193
- background-color: var(--color-primary);
194
- border-color: var(--color-primary);
195
- }
196
- .recharts-surface:focus {
197
- outline: none;
198
- }
199
- .hide-scrollbar {
200
- scrollbar-width: none;
201
- -ms-overflow-style: none;
128
+ /* src/graph/Graph.globals.css */
129
+ .elevasis-graph-root .react-flow__node.selected,
130
+ .elevasis-graph-root .react-flow__node:focus,
131
+ .elevasis-graph-root .react-flow__node:focus-visible {
132
+ outline: none !important;
202
133
  }
203
- .hide-scrollbar::-webkit-scrollbar {
204
- display: none;
134
+ .elevasis-graph-root .react-flow__node.selected > * {
135
+ box-shadow: none;
205
136
  }
206
137
 
207
138
  /* src/graph/Graph.module.css */
@@ -309,7 +240,7 @@
309
240
  transparent 1px),
310
241
  radial-gradient(
311
242
  ellipse at 50% 50%,
312
- color-mix(in srgb, var(--color-primary) 5%, transparent) 0%,
243
+ color-mix(in srgb, var(--color-primary) 1.25%, transparent) 0%,
313
244
  transparent 70%);
314
245
  background-color: color-mix(in srgb, var(--color-background) 50%, var(--glass-background));
315
246
  backdrop-filter: var(--glass-blur);
@@ -328,7 +259,7 @@
328
259
  transparent 1px),
329
260
  radial-gradient(
330
261
  ellipse at 50% 50%,
331
- color-mix(in srgb, var(--color-primary) 9%, transparent) 0%,
262
+ color-mix(in srgb, var(--color-primary) 2.25%, transparent) 0%,
332
263
  transparent 70%);
333
264
  background-size:
334
265
  40px 40px,
@@ -578,12 +509,81 @@
578
509
  }
579
510
  }
580
511
 
581
- /* src/graph/Graph.globals.css */
582
- .elevasis-graph-root .react-flow__node.selected,
583
- .elevasis-graph-root .react-flow__node:focus,
584
- .elevasis-graph-root .react-flow__node:focus-visible {
585
- outline: none !important;
512
+ /* src/theme/custom.css */
513
+ .mantine-Button-root[data-variant=default] {
514
+ background-color: var(--color-surface);
515
+ backdrop-filter: var(--glass-blur);
516
+ -webkit-backdrop-filter: var(--glass-blur);
517
+ border: 1px solid var(--color-border);
518
+ color: var(--color-text);
586
519
  }
587
- .elevasis-graph-root .react-flow__node.selected > * {
588
- box-shadow: none;
520
+ .mantine-Button-root[data-variant=default]:hover {
521
+ background-color: var(--color-surface-hover);
522
+ }
523
+ .mantine-Accordion-control:hover {
524
+ background-color: var(--color-surface-hover);
525
+ }
526
+ .mantine-Menu-item:hover:not([data-disabled]) {
527
+ background-color: var(--color-surface-hover);
528
+ }
529
+ .mantine-Select-option:hover {
530
+ background-color: var(--color-surface-hover) !important;
531
+ }
532
+ [data-mantine-color-scheme=dark] .mantine-Tabs-root {
533
+ --tab-border-color: var(--color-border);
534
+ }
535
+ .mantine-Tabs-tab:hover {
536
+ background-color: var(--color-surface-hover);
537
+ }
538
+ .mantine-Pagination-control:not([data-active]) {
539
+ background: var(--color-surface);
540
+ }
541
+ ::-webkit-scrollbar {
542
+ width: 5px;
543
+ height: 5px;
544
+ }
545
+ ::-webkit-scrollbar-track {
546
+ background: transparent;
547
+ }
548
+ ::-webkit-scrollbar-thumb {
549
+ background: color-mix(in srgb, var(--color-text-subtle) 50%, var(--color-border));
550
+ border-radius: 4px;
551
+ }
552
+ ::-webkit-scrollbar-thumb:hover {
553
+ background: var(--color-text-subtle);
554
+ }
555
+ .mantine-Checkbox-input {
556
+ background-color: var(--color-surface);
557
+ border-color: var(--color-border);
558
+ }
559
+ .mantine-Checkbox-input:checked {
560
+ background-color: var(--color-primary);
561
+ border-color: var(--color-primary);
562
+ }
563
+ .mantine-Switch-root:has(input:not(:checked)) .mantine-Switch-track {
564
+ background-color: var(--color-surface-hover);
565
+ border-color: var(--color-border);
566
+ }
567
+ .mantine-Timeline-root {
568
+ --tl-color: var(--color-primary);
569
+ }
570
+ .mantine-Timeline-item {
571
+ --item-border-color: var(--color-border);
572
+ }
573
+ .mantine-Timeline-itemBullet {
574
+ border-color: var(--color-border);
575
+ }
576
+ .mantine-Timeline-itemBullet:where([data-with-child]) {
577
+ background-color: var(--color-primary);
578
+ border-color: var(--color-primary);
579
+ }
580
+ .recharts-surface:focus {
581
+ outline: none;
582
+ }
583
+ .hide-scrollbar {
584
+ scrollbar-width: none;
585
+ -ms-overflow-style: none;
586
+ }
587
+ .hide-scrollbar::-webkit-scrollbar {
588
+ display: none;
589
589
  }