@elevasis/ui 2.30.0 → 2.32.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 (130) hide show
  1. package/dist/api/index.js +2 -2
  2. package/dist/app/index.css +38 -0
  3. package/dist/app/index.d.ts +190 -9
  4. package/dist/app/index.js +7 -6
  5. package/dist/charts/index.js +4 -5
  6. package/dist/{chunk-HXZQWMKE.js → chunk-2RJMVWFJ.js} +1 -6
  7. package/dist/{chunk-4VQ2PXMI.js → chunk-3FV6HBXS.js} +4 -4
  8. package/dist/{chunk-CW3UNAF2.js → chunk-4DYOXEH6.js} +410 -5
  9. package/dist/{chunk-JKTPRYGV.js → chunk-4MFNGNHF.js} +123 -192
  10. package/dist/{chunk-HYLERWRO.js → chunk-4QK76KIF.js} +7 -7
  11. package/dist/chunk-5FJJ72HU.js +13 -0
  12. package/dist/chunk-5J4PDX26.js +112 -0
  13. package/dist/{chunk-4SY6BTVZ.js → chunk-6DWD423K.js} +12 -9
  14. package/dist/{chunk-3GV5NHSS.js → chunk-7KZINJLP.js} +78 -232
  15. package/dist/{chunk-6WXDE5LZ.js → chunk-EPTHX4VZ.js} +1 -1
  16. package/dist/{chunk-6EFVZV6X.js → chunk-GCOQ3TBG.js} +243 -254
  17. package/dist/{chunk-LRZFLK2F.js → chunk-IQHU7O5Y.js} +4 -4
  18. package/dist/{chunk-X2SUMO3P.js → chunk-IZWTVFJ2.js} +16 -3
  19. package/dist/{chunk-IKQ42WHU.js → chunk-JFL3GRD4.js} +1 -1
  20. package/dist/{chunk-4FZYEEPK.js → chunk-LLRXA7D7.js} +5 -6
  21. package/dist/chunk-MOY4VOHF.js +347 -0
  22. package/dist/{chunk-XQQEKWTL.js → chunk-N55DVMAG.js} +6 -2
  23. package/dist/{chunk-7E3FUTND.js → chunk-ND5TDV2J.js} +1 -1
  24. package/dist/{chunk-WF227UBV.js → chunk-QQHOKTJA.js} +4 -4
  25. package/dist/{chunk-A7B7HLDF.js → chunk-QTI3KC7D.js} +5884 -515
  26. package/dist/chunk-QXCDKE2O.js +486 -0
  27. package/dist/chunk-R2XR4FCV.js +48 -0
  28. package/dist/chunk-R66W5UDG.js +26 -0
  29. package/dist/{chunk-T5Z7G2J2.js → chunk-RQA2EVN3.js} +6 -16
  30. package/dist/{chunk-SKXXT3E2.js → chunk-RQTWIXJ5.js} +4 -4
  31. package/dist/chunk-T35FWDAB.js +4342 -0
  32. package/dist/{chunk-DWK2QIAK.js → chunk-TYRUKGGD.js} +1 -1
  33. package/dist/{chunk-CN2HC4D4.js → chunk-UFTM5SZZ.js} +2 -2
  34. package/dist/{chunk-JCGD4GM6.js → chunk-UROTM5OR.js} +14 -1
  35. package/dist/{chunk-6YT4IKJ7.js → chunk-VNAZTCHA.js} +15 -0
  36. package/dist/{chunk-KVJ3LFH2.js → chunk-VNFR57DF.js} +4 -24
  37. package/dist/{chunk-SBCIB5TZ.js → chunk-VRNMNB3O.js} +6 -7
  38. package/dist/chunk-WQPX44YM.js +1626 -0
  39. package/dist/{chunk-T2PAD63Y.js → chunk-XZGSCABI.js} +1 -1
  40. package/dist/chunk-YLQEVSOR.js +299 -0
  41. package/dist/{chunk-P5WYW2GI.js → chunk-ZQOKIGZP.js} +152 -306
  42. package/dist/components/index.css +38 -0
  43. package/dist/components/index.d.ts +334 -38
  44. package/dist/components/index.js +42 -42
  45. package/dist/components/navigation/index.css +38 -0
  46. package/dist/components/navigation/index.js +3 -2
  47. package/dist/execution/index.d.ts +9 -3
  48. package/dist/features/auth/index.css +38 -0
  49. package/dist/features/auth/index.d.ts +212 -14
  50. package/dist/features/auth/index.js +41 -9
  51. package/dist/features/clients/index.css +649 -0
  52. package/dist/features/clients/index.d.ts +86 -0
  53. package/dist/features/clients/index.js +720 -0
  54. package/dist/features/crm/index.css +38 -0
  55. package/dist/features/crm/index.d.ts +228 -20
  56. package/dist/features/crm/index.js +20 -17
  57. package/dist/features/dashboard/index.css +38 -0
  58. package/dist/features/dashboard/index.d.ts +78 -3
  59. package/dist/features/dashboard/index.js +16 -16
  60. package/dist/features/delivery/index.css +38 -0
  61. package/dist/features/delivery/index.d.ts +201 -18
  62. package/dist/features/delivery/index.js +20 -18
  63. package/dist/features/knowledge/index.css +38 -0
  64. package/dist/features/knowledge/index.d.ts +20 -18
  65. package/dist/features/knowledge/index.js +116 -578
  66. package/dist/features/lead-gen/index.css +38 -0
  67. package/dist/features/lead-gen/index.d.ts +59 -51
  68. package/dist/features/lead-gen/index.js +20 -18
  69. package/dist/features/monitoring/index.css +38 -0
  70. package/dist/features/monitoring/index.d.ts +20 -18
  71. package/dist/features/monitoring/index.js +19 -18
  72. package/dist/features/monitoring/requests/index.css +38 -0
  73. package/dist/features/monitoring/requests/index.d.ts +21 -19
  74. package/dist/features/monitoring/requests/index.js +17 -15
  75. package/dist/features/operations/index.css +38 -0
  76. package/dist/features/operations/index.d.ts +945 -45
  77. package/dist/features/operations/index.js +24 -26
  78. package/dist/features/seo/index.d.ts +20 -18
  79. package/dist/features/seo/index.js +1 -1
  80. package/dist/features/settings/index.css +38 -0
  81. package/dist/features/settings/index.d.ts +201 -18
  82. package/dist/features/settings/index.js +18 -16
  83. package/dist/hooks/delivery/index.css +38 -0
  84. package/dist/hooks/delivery/index.d.ts +200 -0
  85. package/dist/hooks/delivery/index.js +2 -2
  86. package/dist/hooks/index.css +38 -0
  87. package/dist/hooks/index.d.ts +825 -47
  88. package/dist/hooks/index.js +14 -13
  89. package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +194 -3
  90. package/dist/hooks/published.css +38 -0
  91. package/dist/hooks/published.d.ts +825 -47
  92. package/dist/hooks/published.js +14 -13
  93. package/dist/index.css +38 -0
  94. package/dist/index.d.ts +1506 -1212
  95. package/dist/index.js +15 -14
  96. package/dist/initialization/index.d.ts +181 -0
  97. package/dist/knowledge/index.d.ts +813 -1068
  98. package/dist/knowledge/index.js +7370 -2869
  99. package/dist/{chunk-CLUP5H3C.js → knowledge-search-index-5KYPO746.js} +441 -963
  100. package/dist/layout/index.d.ts +6 -0
  101. package/dist/layout/index.js +4 -5
  102. package/dist/organization/index.css +38 -0
  103. package/dist/profile/index.d.ts +181 -0
  104. package/dist/provider/index.css +38 -0
  105. package/dist/provider/index.d.ts +909 -1156
  106. package/dist/provider/index.js +11 -10
  107. package/dist/provider/published.css +38 -0
  108. package/dist/provider/published.d.ts +906 -1153
  109. package/dist/provider/published.js +7 -6
  110. package/dist/supabase/index.d.ts +349 -0
  111. package/dist/test-utils/index.d.ts +16 -9
  112. package/dist/test-utils/index.js +39 -32
  113. package/dist/test-utils/setup.js +1 -1
  114. package/dist/theme/index.js +3 -3
  115. package/dist/theme/presets/index.js +1 -1
  116. package/dist/types/index.d.ts +378 -5
  117. package/dist/utils/index.d.ts +78 -3
  118. package/dist/utils/index.js +1 -1
  119. package/dist/vite/index.js +2 -2
  120. package/dist/vite-plugin-knowledge/index.js +1 -1
  121. package/package.json +47 -37
  122. package/src/provider/README.md +5 -5
  123. package/dist/chunk-2DIYILF7.js +0 -413
  124. package/dist/chunk-3MDNBHVB.js +0 -3868
  125. package/dist/chunk-6IXOKUBC.js +0 -347
  126. package/dist/chunk-AKOD52HS.js +0 -739
  127. package/dist/chunk-ECNNI3NT.js +0 -6
  128. package/dist/chunk-JDNEWB5F.js +0 -10
  129. package/dist/chunk-NITGGYH2.js +0 -476
  130. package/dist/chunk-OAVTMITG.js +0 -13
@@ -2,6 +2,13 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { ReactNode } from 'react';
3
3
  import { z } from 'zod';
4
4
 
5
+ declare const ResourceGovernanceStatusSchema: z.ZodEnum<{
6
+ deprecated: "deprecated";
7
+ active: "active";
8
+ archived: "archived";
9
+ }>;
10
+ type ResourceGovernanceStatus = z.infer<typeof ResourceGovernanceStatusSchema>;
11
+
5
12
  /**
6
13
  * Time range selector for dashboard metrics
7
14
  */
@@ -84,6 +91,62 @@ interface ResourceExecutionSummary {
84
91
  successRate: number;
85
92
  }
86
93
 
94
+ /**
95
+ * Placeholder discriminated union for ContentNode (Wave 1A).
96
+ * Wave 2A wires concrete (kind, type) pairs via the registry.
97
+ *
98
+ * Per D2: unregistered (kind, type) pairs are allowed and pass through validation.
99
+ * Per L14: every node carries BOTH `kind` and `type`.
100
+ */
101
+ declare const ContentNodeSchema: z.ZodObject<{
102
+ label: z.ZodString;
103
+ description: z.ZodOptional<z.ZodString>;
104
+ order: z.ZodOptional<z.ZodNumber>;
105
+ parentContentId: z.ZodOptional<z.ZodString>;
106
+ kind: z.ZodString;
107
+ type: z.ZodString;
108
+ data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
109
+ }, z.core.$strip>;
110
+ type ContentNode = z.infer<typeof ContentNodeSchema>;
111
+
112
+ /** Explicit interface needed to annotate the recursive SystemEntrySchema. */
113
+ interface SystemEntry {
114
+ id: string;
115
+ label?: string;
116
+ title?: string;
117
+ description?: string;
118
+ kind?: 'product' | 'operational' | 'platform' | 'diagnostic';
119
+ parentSystemId?: string;
120
+ ui?: {
121
+ path: string;
122
+ surfaces: string[];
123
+ icon?: string;
124
+ order?: number;
125
+ };
126
+ lifecycle?: 'draft' | 'beta' | 'active' | 'deprecated' | 'archived';
127
+ responsibleRoleId?: string;
128
+ governedByKnowledge?: string[];
129
+ actions?: {
130
+ actionId: string;
131
+ intent: 'exposes' | 'consumes';
132
+ invocation?: unknown;
133
+ }[];
134
+ policies?: string[];
135
+ drivesGoals?: string[];
136
+ /** @deprecated Use lifecycle. Accepted for one publish cycle. */
137
+ status?: 'active' | 'deprecated' | 'archived';
138
+ path?: string;
139
+ icon?: string;
140
+ color?: string;
141
+ uiPosition?: 'sidebar-primary' | 'sidebar-bottom';
142
+ enabled?: boolean;
143
+ devOnly?: boolean;
144
+ requiresAdmin?: boolean;
145
+ order: number;
146
+ content?: Record<string, ContentNode>;
147
+ subsystems?: Record<string, SystemEntry>;
148
+ }
149
+
87
150
  /**
88
151
  * Resource Registry type definitions
89
152
  */
@@ -97,6 +160,7 @@ type ResourceStatus = 'dev' | 'prod';
97
160
  * Used as the discriminator field in ResourceDefinition
98
161
  */
99
162
  type ResourceType = 'agent' | 'workflow' | 'trigger' | 'integration' | 'external' | 'human';
163
+ type ResourceSystemSummary = Pick<SystemEntry, 'id' | 'title' | 'description' | 'kind' | 'lifecycle'>;
100
164
  /**
101
165
  * Base interface for ALL platform resources
102
166
  * Shared by both executable (agents, workflows) and non-executable (triggers, integrations, etc.) resources
@@ -122,6 +186,12 @@ interface ResourceDefinition {
122
186
  sessionCapable?: boolean;
123
187
  /** Whether the resource is local (monorepo) or remote (externally deployed) */
124
188
  origin?: 'local' | 'remote';
189
+ /** OM System membership — dot-separated system path (e.g. "sys.lead-gen"), when backed by a Resource descriptor */
190
+ systemPath?: string;
191
+ /** Display metadata for the owning OM System */
192
+ system?: ResourceSystemSummary;
193
+ /** Governance lifecycle status from the OM Resource descriptor */
194
+ governanceStatus?: ResourceGovernanceStatus;
125
195
  /** Whether this resource is archived and should be excluded from registration and deployment */
126
196
  archived?: boolean;
127
197
  }
@@ -129,20 +199,25 @@ interface ResourceDefinition {
129
199
  declare const LinkSchema: z.ZodObject<{
130
200
  nodeId: z.ZodString;
131
201
  kind: z.ZodEnum<{
202
+ links: "links";
203
+ affects: "affects";
204
+ emits: "emits";
132
205
  contains: "contains";
133
206
  references: "references";
134
- exposes: "exposes";
135
207
  maps_to: "maps_to";
136
- "operates-on": "operates-on";
137
208
  uses: "uses";
138
209
  governs: "governs";
210
+ originates_from: "originates_from";
211
+ triggers: "triggers";
212
+ applies_to: "applies_to";
213
+ effects: "effects";
139
214
  }>;
140
215
  }, z.core.$strip>;
141
216
  type Link = z.infer<typeof LinkSchema>;
142
217
 
143
218
  declare const ResourceCategorySchema: z.ZodEnum<{
144
- production: "production";
145
219
  diagnostic: "diagnostic";
220
+ production: "production";
146
221
  internal: "internal";
147
222
  testing: "testing";
148
223
  }>;
@@ -1,31 +1,31 @@
1
- export { Dashboard, DashboardOperationsOverview, OperationsOverview, RecentExecutionsByResource, ResourceOverview, UnresolvedErrorsTeaser } from '../../chunk-4FZYEEPK.js';
1
+ export { Dashboard, DashboardOperationsOverview, OperationsOverview, RecentExecutionsByResource, ResourceOverview, UnresolvedErrorsTeaser } from '../../chunk-LLRXA7D7.js';
2
2
  import '../../chunk-3MEXPLWT.js';
3
3
  import '../../chunk-LGKLC5MG.js';
4
- import '../../chunk-2DIYILF7.js';
5
- import '../../chunk-CW3UNAF2.js';
4
+ import '../../chunk-4DYOXEH6.js';
6
5
  import '../../chunk-RYTEQBAO.js';
7
6
  import '../../chunk-22UVE3RA.js';
8
7
  import '../../chunk-E4WQGJNS.js';
9
8
  import '../../chunk-7M2VOCYN.js';
10
- import '../../chunk-6EFVZV6X.js';
11
- import '../../chunk-6YT4IKJ7.js';
12
- import '../../chunk-T2PAD63Y.js';
9
+ import '../../chunk-GCOQ3TBG.js';
10
+ import '../../chunk-VNAZTCHA.js';
11
+ import '../../chunk-XZGSCABI.js';
13
12
  import '../../chunk-BRXELOHC.js';
14
13
  import '../../chunk-3ZMAGTWF.js';
15
- import '../../chunk-OAVTMITG.js';
16
- import '../../chunk-SKXXT3E2.js';
17
- import '../../chunk-T5Z7G2J2.js';
18
- import '../../chunk-4VQ2PXMI.js';
14
+ import '../../chunk-5FJJ72HU.js';
15
+ import '../../chunk-RQTWIXJ5.js';
16
+ import '../../chunk-RQA2EVN3.js';
17
+ import '../../chunk-3FV6HBXS.js';
19
18
  import '../../chunk-WLOQ4IBG.js';
20
- import '../../chunk-4SY6BTVZ.js';
21
- import '../../chunk-6WXDE5LZ.js';
19
+ import '../../chunk-6DWD423K.js';
20
+ import '../../chunk-EPTHX4VZ.js';
22
21
  import '../../chunk-3KMDHCAR.js';
23
- import '../../chunk-AKOD52HS.js';
22
+ import '../../chunk-YLQEVSOR.js';
24
23
  import '../../chunk-SZHARWKU.js';
25
- import '../../chunk-6IXOKUBC.js';
24
+ import '../../chunk-QXCDKE2O.js';
26
25
  import '../../chunk-TKAYX2SP.js';
27
26
  import '../../chunk-NYBEU5TE.js';
28
- import '../../chunk-7E3FUTND.js';
27
+ import '../../chunk-T35FWDAB.js';
28
+ import '../../chunk-ND5TDV2J.js';
29
29
  import '../../chunk-2IFYDILW.js';
30
30
  import '../../chunk-Q7DJKLEN.js';
31
31
  import '../../chunk-JA5ECJJB.js';
@@ -34,7 +34,7 @@ import '../../chunk-E565XMTQ.js';
34
34
  import '../../chunk-JBWJ6WHZ.js';
35
35
  import '../../chunk-DT3QYZVU.js';
36
36
  import '../../chunk-RNP5R5I3.js';
37
- import '../../chunk-HXZQWMKE.js';
37
+ import '../../chunk-2RJMVWFJ.js';
38
38
  import '../../chunk-KRWALB24.js';
39
39
  import '../../chunk-VKIZUUPM.js';
40
40
  import '../../chunk-533DUEQY.js';
@@ -534,6 +534,14 @@
534
534
  .mantine-Accordion-control:hover {
535
535
  background-color: var(--color-surface-hover);
536
536
  }
537
+ [data-mantine-color-scheme] .mantine-Accordion-root .mantine-Accordion-item {
538
+ --item-filled-color: var(--color-surface);
539
+ --item-border-color: var(--color-border);
540
+ }
541
+ [data-mantine-color-scheme] .mantine-Accordion-root[data-variant=separated] .mantine-Accordion-item[data-active] {
542
+ background-color: var(--color-surface);
543
+ border-color: var(--color-border);
544
+ }
537
545
  .mantine-Menu-item:hover:not([data-disabled]) {
538
546
  background-color: var(--color-surface-hover);
539
547
  }
@@ -599,6 +607,36 @@
599
607
  background-color: var(--color-primary);
600
608
  border-color: var(--color-primary);
601
609
  }
610
+ .mantine-Tree-node:focus-visible > [data-value] {
611
+ outline: 2px solid color-mix(in srgb, var(--color-primary) 55%, transparent);
612
+ outline-offset: 2px;
613
+ }
614
+ .mantine-Tree-label[data-hovered] {
615
+ background-color: var(--color-surface-hover);
616
+ border-color: var(--color-border);
617
+ }
618
+ .mantine-Tree-label[data-selected] {
619
+ background-color: color-mix(in srgb, var(--color-primary) 12%, transparent);
620
+ border-color: color-mix(in srgb, var(--color-primary) 38%, var(--color-border));
621
+ color: var(--color-primary);
622
+ }
623
+ [data-knowledge-article] pre {
624
+ white-space: pre-wrap;
625
+ word-break: break-word;
626
+ overflow-x: auto;
627
+ max-width: 100%;
628
+ padding: var(--mantine-spacing-sm);
629
+ background-color: var(--color-surface);
630
+ border: 1px solid var(--color-border);
631
+ border-radius: var(--mantine-radius-sm);
632
+ }
633
+ [data-knowledge-article] pre code {
634
+ background: transparent;
635
+ border: none;
636
+ padding: 0;
637
+ white-space: inherit;
638
+ word-break: inherit;
639
+ }
602
640
  .recharts-surface:focus {
603
641
  outline: none;
604
642
  }
@@ -62,6 +62,7 @@ type Database = {
62
62
  batch_id: string | null;
63
63
  category: string | null;
64
64
  category_pain: string | null;
65
+ client_id: string | null;
65
66
  created_at: string;
66
67
  domain: string | null;
67
68
  enrichment_data: Json | null;
@@ -88,6 +89,7 @@ type Database = {
88
89
  batch_id?: string | null;
89
90
  category?: string | null;
90
91
  category_pain?: string | null;
92
+ client_id?: string | null;
91
93
  created_at?: string;
92
94
  domain?: string | null;
93
95
  enrichment_data?: Json | null;
@@ -114,6 +116,7 @@ type Database = {
114
116
  batch_id?: string | null;
115
117
  category?: string | null;
116
118
  category_pain?: string | null;
119
+ client_id?: string | null;
117
120
  created_at?: string;
118
121
  domain?: string | null;
119
122
  enrichment_data?: Json | null;
@@ -137,6 +140,13 @@ type Database = {
137
140
  website?: string | null;
138
141
  };
139
142
  Relationships: [
143
+ {
144
+ foreignKeyName: "acq_companies_client_id_fkey";
145
+ columns: ["client_id"];
146
+ isOneToOne: false;
147
+ referencedRelation: "clients";
148
+ referencedColumns: ["id"];
149
+ },
140
150
  {
141
151
  foreignKeyName: "acq_companies_organization_id_fkey";
142
152
  columns: ["organization_id"];
@@ -151,6 +161,7 @@ type Database = {
151
161
  batch_id: string | null;
152
162
  brochure_first_viewed_at: string | null;
153
163
  brochure_view_count: number;
164
+ client_id: string | null;
154
165
  company_id: string | null;
155
166
  created_at: string;
156
167
  email: string;
@@ -179,6 +190,7 @@ type Database = {
179
190
  batch_id?: string | null;
180
191
  brochure_first_viewed_at?: string | null;
181
192
  brochure_view_count?: number;
193
+ client_id?: string | null;
182
194
  company_id?: string | null;
183
195
  created_at?: string;
184
196
  email: string;
@@ -207,6 +219,7 @@ type Database = {
207
219
  batch_id?: string | null;
208
220
  brochure_first_viewed_at?: string | null;
209
221
  brochure_view_count?: number;
222
+ client_id?: string | null;
210
223
  company_id?: string | null;
211
224
  created_at?: string;
212
225
  email?: string;
@@ -232,6 +245,13 @@ type Database = {
232
245
  updated_at?: string;
233
246
  };
234
247
  Relationships: [
248
+ {
249
+ foreignKeyName: "acq_contacts_client_id_fkey";
250
+ columns: ["client_id"];
251
+ isOneToOne: false;
252
+ referencedRelation: "clients";
253
+ referencedColumns: ["id"];
254
+ },
235
255
  {
236
256
  foreignKeyName: "acq_contacts_company_id_fkey";
237
257
  columns: ["company_id"];
@@ -475,8 +495,10 @@ type Database = {
475
495
  acq_deals: {
476
496
  Row: {
477
497
  activity_log: Json;
498
+ client_id: string | null;
478
499
  closed_lost_at: string | null;
479
500
  closed_lost_reason: string | null;
501
+ company_id: string | null;
480
502
  contact_email: string;
481
503
  contact_id: string | null;
482
504
  created_at: string;
@@ -512,8 +534,10 @@ type Database = {
512
534
  };
513
535
  Insert: {
514
536
  activity_log?: Json;
537
+ client_id?: string | null;
515
538
  closed_lost_at?: string | null;
516
539
  closed_lost_reason?: string | null;
540
+ company_id?: string | null;
517
541
  contact_email: string;
518
542
  contact_id?: string | null;
519
543
  created_at?: string;
@@ -549,8 +573,10 @@ type Database = {
549
573
  };
550
574
  Update: {
551
575
  activity_log?: Json;
576
+ client_id?: string | null;
552
577
  closed_lost_at?: string | null;
553
578
  closed_lost_reason?: string | null;
579
+ company_id?: string | null;
554
580
  contact_email?: string;
555
581
  contact_id?: string | null;
556
582
  created_at?: string;
@@ -585,6 +611,20 @@ type Database = {
585
611
  updated_at?: string;
586
612
  };
587
613
  Relationships: [
614
+ {
615
+ foreignKeyName: "acq_deals_client_id_fkey";
616
+ columns: ["client_id"];
617
+ isOneToOne: false;
618
+ referencedRelation: "clients";
619
+ referencedColumns: ["id"];
620
+ },
621
+ {
622
+ foreignKeyName: "acq_deals_company_id_fkey";
623
+ columns: ["company_id"];
624
+ isOneToOne: false;
625
+ referencedRelation: "acq_companies";
626
+ referencedColumns: ["id"];
627
+ },
588
628
  {
589
629
  foreignKeyName: "acq_deals_contact_id_fkey";
590
630
  columns: ["contact_id"];
@@ -1202,6 +1242,77 @@ type Database = {
1202
1242
  }
1203
1243
  ];
1204
1244
  };
1245
+ clients: {
1246
+ Row: {
1247
+ converted_at: string | null;
1248
+ created_at: string;
1249
+ id: string;
1250
+ metadata: Json;
1251
+ name: string;
1252
+ organization_id: string;
1253
+ primary_company_id: string | null;
1254
+ primary_contact_id: string | null;
1255
+ source_deal_id: string | null;
1256
+ status: string;
1257
+ updated_at: string;
1258
+ };
1259
+ Insert: {
1260
+ converted_at?: string | null;
1261
+ created_at?: string;
1262
+ id?: string;
1263
+ metadata?: Json;
1264
+ name: string;
1265
+ organization_id: string;
1266
+ primary_company_id?: string | null;
1267
+ primary_contact_id?: string | null;
1268
+ source_deal_id?: string | null;
1269
+ status?: string;
1270
+ updated_at?: string;
1271
+ };
1272
+ Update: {
1273
+ converted_at?: string | null;
1274
+ created_at?: string;
1275
+ id?: string;
1276
+ metadata?: Json;
1277
+ name?: string;
1278
+ organization_id?: string;
1279
+ primary_company_id?: string | null;
1280
+ primary_contact_id?: string | null;
1281
+ source_deal_id?: string | null;
1282
+ status?: string;
1283
+ updated_at?: string;
1284
+ };
1285
+ Relationships: [
1286
+ {
1287
+ foreignKeyName: "clients_organization_id_fkey";
1288
+ columns: ["organization_id"];
1289
+ isOneToOne: false;
1290
+ referencedRelation: "organizations";
1291
+ referencedColumns: ["id"];
1292
+ },
1293
+ {
1294
+ foreignKeyName: "clients_primary_company_id_fkey";
1295
+ columns: ["primary_company_id"];
1296
+ isOneToOne: false;
1297
+ referencedRelation: "acq_companies";
1298
+ referencedColumns: ["id"];
1299
+ },
1300
+ {
1301
+ foreignKeyName: "clients_primary_contact_id_fkey";
1302
+ columns: ["primary_contact_id"];
1303
+ isOneToOne: false;
1304
+ referencedRelation: "acq_contacts";
1305
+ referencedColumns: ["id"];
1306
+ },
1307
+ {
1308
+ foreignKeyName: "clients_source_deal_id_fkey";
1309
+ columns: ["source_deal_id"];
1310
+ isOneToOne: false;
1311
+ referencedRelation: "acq_deals";
1312
+ referencedColumns: ["id"];
1313
+ }
1314
+ ];
1315
+ };
1205
1316
  command_queue: {
1206
1317
  Row: {
1207
1318
  action_payload: Json | null;
@@ -2171,6 +2282,7 @@ type Database = {
2171
2282
  Row: {
2172
2283
  actual_end_date: string | null;
2173
2284
  client_company_id: string | null;
2285
+ client_id: string | null;
2174
2286
  contract_value: number | null;
2175
2287
  created_at: string;
2176
2288
  deal_id: string | null;
@@ -2188,6 +2300,7 @@ type Database = {
2188
2300
  Insert: {
2189
2301
  actual_end_date?: string | null;
2190
2302
  client_company_id?: string | null;
2303
+ client_id?: string | null;
2191
2304
  contract_value?: number | null;
2192
2305
  created_at?: string;
2193
2306
  deal_id?: string | null;
@@ -2205,6 +2318,7 @@ type Database = {
2205
2318
  Update: {
2206
2319
  actual_end_date?: string | null;
2207
2320
  client_company_id?: string | null;
2321
+ client_id?: string | null;
2208
2322
  contract_value?: number | null;
2209
2323
  created_at?: string;
2210
2324
  deal_id?: string | null;
@@ -2241,6 +2355,13 @@ type Database = {
2241
2355
  referencedRelation: "acq_companies";
2242
2356
  referencedColumns: ["id"];
2243
2357
  },
2358
+ {
2359
+ foreignKeyName: "prj_projects_client_id_fkey";
2360
+ columns: ["client_id"];
2361
+ isOneToOne: false;
2362
+ referencedRelation: "clients";
2363
+ referencedColumns: ["id"];
2364
+ },
2244
2365
  {
2245
2366
  foreignKeyName: "prj_projects_deal_id_fkey";
2246
2367
  columns: ["deal_id"];
@@ -2645,6 +2766,66 @@ type Database = {
2645
2766
  }
2646
2767
  ];
2647
2768
  };
2769
+ user_notes: {
2770
+ Row: {
2771
+ content: string;
2772
+ created_at: string;
2773
+ created_by: string;
2774
+ id: string;
2775
+ metadata: Json;
2776
+ organization_id: string | null;
2777
+ pinned: boolean;
2778
+ priority: string;
2779
+ source: string | null;
2780
+ title: string | null;
2781
+ updated_at: string;
2782
+ user_id: string;
2783
+ };
2784
+ Insert: {
2785
+ content: string;
2786
+ created_at?: string;
2787
+ created_by?: string;
2788
+ id?: string;
2789
+ metadata?: Json;
2790
+ organization_id?: string | null;
2791
+ pinned?: boolean;
2792
+ priority?: string;
2793
+ source?: string | null;
2794
+ title?: string | null;
2795
+ updated_at?: string;
2796
+ user_id: string;
2797
+ };
2798
+ Update: {
2799
+ content?: string;
2800
+ created_at?: string;
2801
+ created_by?: string;
2802
+ id?: string;
2803
+ metadata?: Json;
2804
+ organization_id?: string | null;
2805
+ pinned?: boolean;
2806
+ priority?: string;
2807
+ source?: string | null;
2808
+ title?: string | null;
2809
+ updated_at?: string;
2810
+ user_id?: string;
2811
+ };
2812
+ Relationships: [
2813
+ {
2814
+ foreignKeyName: "user_notes_organization_id_fkey";
2815
+ columns: ["organization_id"];
2816
+ isOneToOne: false;
2817
+ referencedRelation: "organizations";
2818
+ referencedColumns: ["id"];
2819
+ },
2820
+ {
2821
+ foreignKeyName: "user_notes_user_id_fkey";
2822
+ columns: ["user_id"];
2823
+ isOneToOne: false;
2824
+ referencedRelation: "users";
2825
+ referencedColumns: ["id"];
2826
+ }
2827
+ ];
2828
+ };
2648
2829
  users: {
2649
2830
  Row: {
2650
2831
  config: Json;
@@ -3014,35 +3195,37 @@ interface ProjectsSidebarMiddleProps {
3014
3195
  }
3015
3196
  declare const ProjectsSidebarMiddle: ({ currentPath, onNavigate, projectItems, workItems, communicationItems }?: ProjectsSidebarMiddleProps) => react_jsx_runtime.JSX.Element;
3016
3197
 
3017
- type FeatureSidebarComponent = ComponentType;
3018
- type FeatureIconComponent = ComponentType<{
3198
+ type SystemSidebarComponent = ComponentType;
3199
+ type SystemIconComponent = ComponentType<{
3019
3200
  size?: number;
3020
3201
  stroke?: number;
3021
3202
  }>;
3022
- type FeatureSidebarWidthResolver = number | ((context: {
3203
+ type SystemSidebarWidthResolver = number | ((context: {
3023
3204
  currentPath: string;
3024
3205
  }) => number);
3025
- interface FeatureModule {
3026
- /** Unique stable identifier for this feature module. */
3206
+ interface SystemModule {
3207
+ /** Unique stable identifier for this UI system module. */
3027
3208
  key: string;
3028
- /** Organization Model feature id this module presents. */
3029
- featureId: string;
3030
- /** Capability identifiers contributed by this feature module. */
3209
+ /** Organization Model system id this module presents. Omit for navigation-only app surfaces. */
3210
+ systemId?: string;
3211
+ /** Route prefixes owned by navigation-only app surfaces. */
3212
+ routePrefixes?: string[];
3213
+ /** Capability identifiers contributed by this system module. */
3031
3214
  capabilityIds?: string[];
3032
- /** Icon used when this feature node appears in shell navigation. */
3033
- icon?: FeatureIconComponent;
3034
- /** Sidebar component rendered when this feature's subtree route is active. */
3035
- sidebar?: FeatureSidebarComponent;
3215
+ /** Icon used when this system node appears in shell navigation. */
3216
+ icon?: SystemIconComponent;
3217
+ /** Sidebar component rendered when this system's subtree route is active. */
3218
+ sidebar?: SystemSidebarComponent;
3036
3219
  /** Optional shell sidebar width override. Defaults to 250px. */
3037
- sidebarWidth?: FeatureSidebarWidthResolver;
3038
- /** Operations-only bridge connecting this feature to the organization graph node. */
3039
- organizationGraph?: OrganizationGraphFeatureBridge;
3220
+ sidebarWidth?: SystemSidebarWidthResolver;
3221
+ /** Operations-only bridge connecting this system to the organization graph node. */
3222
+ organizationGraph?: OrganizationGraphSystemBridge;
3040
3223
  }
3041
- interface OrganizationGraphFeatureBridge {
3042
- featureId: string;
3224
+ interface OrganizationGraphSystemBridge {
3225
+ systemId?: string;
3043
3226
  }
3044
3227
 
3045
- declare const deliveryManifest: FeatureModule;
3228
+ declare const deliveryManifest: SystemModule;
3046
3229
 
3047
3230
  declare function AllTasksPage(): react_jsx_runtime.JSX.Element;
3048
3231
 
@@ -1,31 +1,33 @@
1
- export { AllTasksPage, Checklist, CreateDeliveryEntityModal, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, HealthStatusCard, MilestoneTimeline, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, TaskCard, UpcomingMilestonesPage, calculateProgress, deliveryManifest, formatStatusLabel, milestoneStatusColors, noteTypeColors, projectStatusColors, taskStatusColors, taskTypeColors } from '../../chunk-JKTPRYGV.js';
2
- import '../../chunk-ECNNI3NT.js';
3
- import '../../chunk-BZZCNLT6.js';
4
- import '../../chunk-TUMSNGTX.js';
1
+ export { AllTasksPage, Checklist, CreateDeliveryEntityModal, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, HealthStatusCard, MilestoneTimeline, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, TaskCard, UpcomingMilestonesPage, deliveryManifest } from '../../chunk-4MFNGNHF.js';
2
+ import '../../chunk-VNFR57DF.js';
5
3
  import '../../chunk-X4WBGKJQ.js';
6
4
  import '../../chunk-IIMU5YAJ.js';
5
+ export { calculateProgress, formatStatusLabel, milestoneStatusColors, noteTypeColors, projectStatusColors, taskStatusColors, taskTypeColors } from '../../chunk-R2XR4FCV.js';
6
+ import '../../chunk-BZZCNLT6.js';
7
+ import '../../chunk-TUMSNGTX.js';
7
8
  import '../../chunk-PDHTXPSF.js';
8
- import '../../chunk-KVJ3LFH2.js';
9
+ import '../../chunk-R66W5UDG.js';
9
10
  import '../../chunk-7M2VOCYN.js';
10
- import '../../chunk-6EFVZV6X.js';
11
- import '../../chunk-6YT4IKJ7.js';
12
- import '../../chunk-T2PAD63Y.js';
11
+ import '../../chunk-GCOQ3TBG.js';
12
+ import '../../chunk-VNAZTCHA.js';
13
+ import '../../chunk-XZGSCABI.js';
13
14
  import '../../chunk-BRXELOHC.js';
14
15
  import '../../chunk-3ZMAGTWF.js';
15
- import '../../chunk-OAVTMITG.js';
16
- import '../../chunk-SKXXT3E2.js';
17
- import '../../chunk-T5Z7G2J2.js';
18
- import '../../chunk-4VQ2PXMI.js';
16
+ import '../../chunk-5FJJ72HU.js';
17
+ import '../../chunk-RQTWIXJ5.js';
18
+ import '../../chunk-RQA2EVN3.js';
19
+ import '../../chunk-3FV6HBXS.js';
19
20
  import '../../chunk-WLOQ4IBG.js';
20
- import '../../chunk-4SY6BTVZ.js';
21
- import '../../chunk-6WXDE5LZ.js';
21
+ import '../../chunk-6DWD423K.js';
22
+ import '../../chunk-EPTHX4VZ.js';
22
23
  import '../../chunk-3KMDHCAR.js';
23
- import '../../chunk-AKOD52HS.js';
24
+ import '../../chunk-YLQEVSOR.js';
24
25
  import '../../chunk-SZHARWKU.js';
25
- import '../../chunk-6IXOKUBC.js';
26
+ import '../../chunk-QXCDKE2O.js';
26
27
  import '../../chunk-TKAYX2SP.js';
27
28
  import '../../chunk-NYBEU5TE.js';
28
- import '../../chunk-7E3FUTND.js';
29
+ import '../../chunk-T35FWDAB.js';
30
+ import '../../chunk-ND5TDV2J.js';
29
31
  import '../../chunk-2IFYDILW.js';
30
32
  import '../../chunk-Q7DJKLEN.js';
31
33
  import '../../chunk-JA5ECJJB.js';
@@ -34,7 +36,7 @@ import '../../chunk-E565XMTQ.js';
34
36
  import '../../chunk-JBWJ6WHZ.js';
35
37
  import '../../chunk-DT3QYZVU.js';
36
38
  import '../../chunk-RNP5R5I3.js';
37
- import '../../chunk-HXZQWMKE.js';
39
+ import '../../chunk-2RJMVWFJ.js';
38
40
  import '../../chunk-KRWALB24.js';
39
41
  import '../../chunk-VKIZUUPM.js';
40
42
  import '../../chunk-533DUEQY.js';