@datatechsolutions/ui 3.7.4 → 3.7.5

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 (83) hide show
  1. package/dist/astrlabe/contracts.d.mts +517 -0
  2. package/dist/astrlabe/contracts.d.ts +517 -0
  3. package/dist/astrlabe/graph-node.d.mts +28 -0
  4. package/dist/astrlabe/graph-node.d.ts +28 -0
  5. package/dist/astrlabe/index.d.mts +743 -0
  6. package/dist/astrlabe/index.d.ts +743 -0
  7. package/dist/astrlabe/utils.d.mts +60 -0
  8. package/dist/astrlabe/utils.d.ts +60 -0
  9. package/dist/astrlabe/workflow-canvas.d.mts +6 -0
  10. package/dist/astrlabe/workflow-canvas.d.ts +6 -0
  11. package/dist/astrlabe/workflow-preview-canvas.d.mts +10 -0
  12. package/dist/astrlabe/workflow-preview-canvas.d.ts +10 -0
  13. package/dist/billing-panel-DsHhhJqG.d.mts +18 -0
  14. package/dist/billing-panel-DsHhhJqG.d.ts +18 -0
  15. package/dist/brand/index.d.mts +71 -0
  16. package/dist/brand/index.d.ts +71 -0
  17. package/dist/{chunk-ZWLMKOHZ.mjs → chunk-KZSL7AXW.mjs} +3 -3
  18. package/dist/{chunk-ZWLMKOHZ.mjs.map → chunk-KZSL7AXW.mjs.map} +1 -1
  19. package/dist/{chunk-VDO6MDQW.js → chunk-Y2FR242F.js} +3 -3
  20. package/dist/{chunk-VDO6MDQW.js.map → chunk-Y2FR242F.js.map} +1 -1
  21. package/dist/dynamic-island-confirm-BKsZkAEP.d.mts +17 -0
  22. package/dist/dynamic-island-confirm-BKsZkAEP.d.ts +17 -0
  23. package/dist/index-BNRGVAS5.d.mts +222 -0
  24. package/dist/index-BoebbJ44.d.mts +49 -0
  25. package/dist/index-BoebbJ44.d.ts +49 -0
  26. package/dist/index-CnCY-b5V.d.ts +222 -0
  27. package/dist/index.d.mts +5316 -0
  28. package/dist/index.d.ts +5316 -0
  29. package/dist/layout-engine-YZcVr20M.d.mts +19 -0
  30. package/dist/layout-engine-YZcVr20M.d.ts +19 -0
  31. package/dist/lib/i18n-context.d.mts +36 -0
  32. package/dist/lib/i18n-context.d.ts +36 -0
  33. package/dist/lib/router-context.d.mts +35 -0
  34. package/dist/lib/router-context.d.ts +35 -0
  35. package/dist/navigation-BiWVffAN.d.mts +49 -0
  36. package/dist/navigation-BiWVffAN.d.ts +49 -0
  37. package/dist/platform/admin/index.d.mts +17 -0
  38. package/dist/platform/admin/index.d.ts +17 -0
  39. package/dist/platform/agents-workspace.d.mts +19 -0
  40. package/dist/platform/agents-workspace.d.ts +19 -0
  41. package/dist/platform/app-shell.d.mts +64 -0
  42. package/dist/platform/app-shell.d.ts +64 -0
  43. package/dist/platform/auth/index.d.mts +73 -0
  44. package/dist/platform/auth/index.d.ts +73 -0
  45. package/dist/platform/billing/index.d.mts +29 -0
  46. package/dist/platform/billing/index.d.ts +29 -0
  47. package/dist/platform/impersonation/index.d.mts +19 -0
  48. package/dist/platform/impersonation/index.d.ts +19 -0
  49. package/dist/platform/index.d.mts +188 -0
  50. package/dist/platform/index.d.ts +188 -0
  51. package/dist/platform/index.js +17 -17
  52. package/dist/platform/index.mjs +4 -4
  53. package/dist/platform/pages/index.d.mts +538 -0
  54. package/dist/platform/pages/index.d.ts +538 -0
  55. package/dist/platform/pages/index.js +6 -6
  56. package/dist/platform/pages/index.js.map +1 -1
  57. package/dist/platform/pages/index.mjs +6 -6
  58. package/dist/platform/pages/index.mjs.map +1 -1
  59. package/dist/platform/rbac.d.mts +42 -0
  60. package/dist/platform/rbac.d.ts +42 -0
  61. package/dist/platform/settings/index.d.mts +31 -0
  62. package/dist/platform/settings/index.d.ts +31 -0
  63. package/dist/platform/settings/index.js +3 -3
  64. package/dist/platform/settings/index.mjs +2 -2
  65. package/dist/platform/telemetry/index.d.mts +51 -0
  66. package/dist/platform/telemetry/index.d.ts +51 -0
  67. package/dist/platform/utils/index.d.mts +32 -0
  68. package/dist/platform/utils/index.d.ts +32 -0
  69. package/dist/platform/windsock-admin-client.d.mts +57 -0
  70. package/dist/platform/windsock-admin-client.d.ts +57 -0
  71. package/dist/platform/workflow-api-client.d.mts +6 -0
  72. package/dist/platform/workflow-api-client.d.ts +6 -0
  73. package/dist/platform/workflow-canvas-shell.d.mts +18 -0
  74. package/dist/platform/workflow-canvas-shell.d.ts +18 -0
  75. package/dist/rule-form-BYJzyork.d.mts +128 -0
  76. package/dist/rule-form-BYJzyork.d.ts +128 -0
  77. package/dist/workflow-api-client-CpFl3WcG.d.mts +468 -0
  78. package/dist/workflow-api-client-uLICOanv.d.ts +468 -0
  79. package/dist/workflow-canvas--qaYKuMm.d.ts +113 -0
  80. package/dist/workflow-canvas-B80fmD_n.d.mts +113 -0
  81. package/dist/workflow-store-o17I6L6A.d.ts +79 -0
  82. package/dist/workflow-store-ppVHdMZi.d.mts +79 -0
  83. package/package.json +1 -1
@@ -0,0 +1,29 @@
1
+ export { B as BillingPanel, a as BillingPanelProps } from '../../billing-panel-DsHhhJqG.mjs';
2
+ import * as react_jsx_runtime from 'react/jsx-runtime';
3
+ import { ReactNode } from 'react';
4
+ import { SubscriptionTier } from '@datatechsolutions/shared-domain';
5
+
6
+ interface UpgradePromptProps {
7
+ /** The user's current subscription tier */
8
+ currentTier: SubscriptionTier;
9
+ /** The minimum tier required for access (shown in the prompt) */
10
+ requiredTier?: SubscriptionTier;
11
+ /** Feature name that triggered the prompt */
12
+ feature?: string;
13
+ /** Called when the user clicks "Upgrade Now" */
14
+ onUpgrade?: () => void;
15
+ /** Called when the user dismisses the prompt */
16
+ onDismiss?: () => void;
17
+ /** Optional custom content to render inside the card */
18
+ children?: ReactNode;
19
+ }
20
+ /**
21
+ * A glassmorphism-styled upgrade prompt shown when users hit subscription
22
+ * limits or try to access features above their current tier.
23
+ *
24
+ * Renders a card with the current tier, the required tier (or feature name),
25
+ * and action buttons for upgrading or dismissing.
26
+ */
27
+ declare function UpgradePrompt({ currentTier, requiredTier, feature, onUpgrade, onDismiss, children, }: UpgradePromptProps): react_jsx_runtime.JSX.Element;
28
+
29
+ export { UpgradePrompt, type UpgradePromptProps };
@@ -0,0 +1,29 @@
1
+ export { B as BillingPanel, a as BillingPanelProps } from '../../billing-panel-DsHhhJqG.js';
2
+ import * as react_jsx_runtime from 'react/jsx-runtime';
3
+ import { ReactNode } from 'react';
4
+ import { SubscriptionTier } from '@datatechsolutions/shared-domain';
5
+
6
+ interface UpgradePromptProps {
7
+ /** The user's current subscription tier */
8
+ currentTier: SubscriptionTier;
9
+ /** The minimum tier required for access (shown in the prompt) */
10
+ requiredTier?: SubscriptionTier;
11
+ /** Feature name that triggered the prompt */
12
+ feature?: string;
13
+ /** Called when the user clicks "Upgrade Now" */
14
+ onUpgrade?: () => void;
15
+ /** Called when the user dismisses the prompt */
16
+ onDismiss?: () => void;
17
+ /** Optional custom content to render inside the card */
18
+ children?: ReactNode;
19
+ }
20
+ /**
21
+ * A glassmorphism-styled upgrade prompt shown when users hit subscription
22
+ * limits or try to access features above their current tier.
23
+ *
24
+ * Renders a card with the current tier, the required tier (or feature name),
25
+ * and action buttons for upgrading or dismissing.
26
+ */
27
+ declare function UpgradePrompt({ currentTier, requiredTier, feature, onUpgrade, onDismiss, children, }: UpgradePromptProps): react_jsx_runtime.JSX.Element;
28
+
29
+ export { UpgradePrompt, type UpgradePromptProps };
@@ -0,0 +1,19 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ interface ImpersonationBannerProps {
4
+ /**
5
+ * Callback fired after the impersonation session ends (after the admin
6
+ * token is restored). Useful for refreshing the UI or navigating home.
7
+ */
8
+ onExit?: () => void;
9
+ /** Optional extra classes on the outer bar. */
10
+ className?: string;
11
+ }
12
+ /**
13
+ * Persistent banner shown while the current session is an impersonation
14
+ * session. Shows the admin's identity + target, and an Exit button that
15
+ * terminates the session. Invisible when not impersonating.
16
+ */
17
+ declare function ImpersonationBanner({ onExit, className }: ImpersonationBannerProps): react_jsx_runtime.JSX.Element | null;
18
+
19
+ export { ImpersonationBanner, type ImpersonationBannerProps };
@@ -0,0 +1,19 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ interface ImpersonationBannerProps {
4
+ /**
5
+ * Callback fired after the impersonation session ends (after the admin
6
+ * token is restored). Useful for refreshing the UI or navigating home.
7
+ */
8
+ onExit?: () => void;
9
+ /** Optional extra classes on the outer bar. */
10
+ className?: string;
11
+ }
12
+ /**
13
+ * Persistent banner shown while the current session is an impersonation
14
+ * session. Shows the admin's identity + target, and an Exit button that
15
+ * terminates the session. Invisible when not impersonating.
16
+ */
17
+ declare function ImpersonationBanner({ onExit, className }: ImpersonationBannerProps): react_jsx_runtime.JSX.Element | null;
18
+
19
+ export { ImpersonationBanner, type ImpersonationBannerProps };
@@ -0,0 +1,188 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { SessionSwitcherProps, LocaleCode, WorkflowExecutionEvent, WorkflowWorkspaceProps, ManagedUser, Organization } from '@datatechsolutions/shared-domain/common';
3
+ import { ReactNode } from 'react';
4
+ import { A as AuthUser } from '../index-BoebbJ44.mjs';
5
+ export { PlatformAppShell, PlatformAppShellProps } from './app-shell.mjs';
6
+ import { N as NavigationItem } from '../navigation-BiWVffAN.mjs';
7
+ import { VariableValue, Workflow } from '../astrlabe/contracts.mjs';
8
+ import { N as NodeRunResult } from '../workflow-store-ppVHdMZi.mjs';
9
+ import { PlatformRoleDefinition } from './rbac.mjs';
10
+ export { CreatePlatformRbacOptions, PlatformRbac, createPlatformRbac } from './rbac.mjs';
11
+ export { WorkflowCanvasShell } from './workflow-canvas-shell.mjs';
12
+ export { AgentsWorkspace, AgentsWorkspaceProps } from './agents-workspace.mjs';
13
+ export { CreateSecretInput, SecretDetail, SecretSummary, UpdateSecretInput, addOrganizationDomain, addOrganizationMember, createOrganization, createOrganizationInvitation, createPermission, createSecret, createUser, deleteOrganization, deletePermission, deleteUser, disableSecret, getSecret, getUserPermissions, listOrganizationDomains, listOrganizationInvitations, listOrganizationMembers, listOrganizations, listPermissions, listSecrets, listUsers, removeOrganizationMember, resetUserPassword, rotateSecret, setUserPermissions, setWindsockAdminClient, updateOrganization, updatePermission, updateUser, verifyOrganizationDomain } from './windsock-admin-client.mjs';
14
+ import { AdminUserSummary, AuthOrganization } from '@datatechsolutions/shared-domain';
15
+ export { AdminClient, AdminCreateInvitationInput, AdminCreateOrganizationInput, AdminCreatePermissionInput, AdminCreateUserInput, AdminListParams, AdminListResult, AdminOrganizationDetailProps, AdminOrganizationDetailTab, AdminOrganizationFormProps, AdminOrganizationListProps, AdminOrganizationMember, AdminPermissionListProps, AdminUpdateOrganizationInput, AdminUpdatePermissionInput, AdminUpdateUserInput, AdminUserFormProps, AdminUserListProps, AdminUserSummary, ConsentScreenProps, ForgotPasswordProps, MfaChallengeProps, MfaManageProps, MfaSetupProps, PasswordlessSignInProps, ResetPasswordProps, SignInProps, SignUpProps, SsoConnector, SsoConnectorListProps, SsoEmailFormProps, UserButtonProps, UserProfileProps, VerifyEmailProps } from '@datatechsolutions/shared-domain';
16
+ export { AuthLayout, AuthLayoutProps, BackupCodeGrid, BackupCodeGridProps, ConsentScreen, ForgotPassword, LinkedAccountsTabContent, MfaChallenge, MfaManage, MfaSetup, OtpInput, OtpInputProps, PasswordStrengthMeter, PasswordStrengthMeterProps, PasswordlessSignIn, ProfileTabContent, ResetPassword, SecurityTabContent, SessionsTabContent, SignIn, SignUp, SocialLoginButtons, SocialLoginButtonsProps, SocialProvider, SsoConnectorList, SsoEmailForm, UserButton, UserProfile, VerifyEmail } from './auth/index.mjs';
17
+ export { B as BillingPanel, a as BillingPanelProps } from '../billing-panel-DsHhhJqG.mjs';
18
+ export { UpgradePrompt, UpgradePromptProps } from './billing/index.mjs';
19
+ export { ImpersonationBanner, ImpersonationBannerProps } from './impersonation/index.mjs';
20
+ export { AdminOrganizationDetail, AdminOrganizationForm, AdminOrganizationList, AdminPermissionList, AdminUserForm, AdminUserList } from './admin/index.mjs';
21
+ export { PlatformSettings, PlatformSettingsProps, PlatformSettingsSection } from './settings/index.mjs';
22
+ import 'zustand';
23
+ import '@xyflow/react';
24
+ import '../layout-engine-YZcVr20M.mjs';
25
+
26
+ declare function SessionSwitcher({ organizations, users, organizationId, userEmail, onOrganizationChange, onUserChange, }: SessionSwitcherProps): react_jsx_runtime.JSX.Element;
27
+
28
+ type PlatformState = {
29
+ currentOrganizationId: string;
30
+ actor: AuthUser | null;
31
+ };
32
+ type PlatformStateProviderProps = {
33
+ children: ReactNode;
34
+ /**
35
+ * Function that converts a JWT role claim to the app's canonical role
36
+ * union (the same `normalizePlatformRole` produced by
37
+ * `createPlatformRbac()` in this app). Lifted out as a prop because
38
+ * each consuming app uses its own role enum.
39
+ */
40
+ normalizeRole: (input: unknown) => string;
41
+ };
42
+ declare function PlatformStateProvider({ children, normalizeRole }: PlatformStateProviderProps): react_jsx_runtime.JSX.Element;
43
+ declare function usePlatformState(): PlatformState;
44
+
45
+ type PlatformDockContainerProps = {
46
+ /** JWT-derived actor used for permission filtering. */
47
+ actor: AuthUser | null;
48
+ /** App-specific navigation items (already translated). */
49
+ navigationItems: NavigationItem[];
50
+ /**
51
+ * Pathname where the dock should be hidden (defaults to `/dashboard`).
52
+ * The dashboard typically owns its own navigation chrome.
53
+ */
54
+ dashboardPath?: string;
55
+ /** Path to redirect to on sign-out (defaults to `/login`). */
56
+ signOutPath?: string;
57
+ };
58
+ /**
59
+ * Floating dock + profile-modal trigger shared by every platform app.
60
+ * Reads the active route from ui's router context and uses windsock for
61
+ * preferences + sign-out, so the consumer only has to wire up navigation
62
+ * items + an optional dashboard/sign-out path.
63
+ */
64
+ declare function PlatformDockContainer({ actor, navigationItems, dashboardPath, signOutPath, }: PlatformDockContainerProps): react_jsx_runtime.JSX.Element | null;
65
+
66
+ /**
67
+ * Locale + theme controls used inside the platform preferences drawer.
68
+ * Reads the active locale from the i18n context and the theme/dock
69
+ * preferences from windsock — both shared providers consuming apps must
70
+ * mount above this component.
71
+ */
72
+ declare function PreferencesControls(): react_jsx_runtime.JSX.Element;
73
+
74
+ /**
75
+ * Locale switcher hook — reads the current locale from the i18n context and
76
+ * pushes the user's choice through windsock so the next session inherits it.
77
+ *
78
+ * Lifted from astrlabe; consumers (astrlabe, kori-erp) wrap their tree in
79
+ * `<I18nProvider>` + windsock's `<AuthProvider>` and import this directly.
80
+ */
81
+ declare function useLocaleSwitcher(): {
82
+ locale: LocaleCode;
83
+ shortCode: string;
84
+ setLocale: (newLocale: LocaleCode | string) => void;
85
+ locales: readonly LocaleCode[];
86
+ };
87
+
88
+ declare function useWorkflowExecution(workflowId: string): {
89
+ isRunning: boolean;
90
+ execute: (inputVariables?: Record<string, VariableValue>) => Promise<void>;
91
+ stop: () => void;
92
+ runId: string | null;
93
+ runStatus: "error" | "idle" | "streaming" | "completed" | "failed";
94
+ };
95
+
96
+ type RunEventStreamState = {
97
+ /** All events received so far, in order */
98
+ events: WorkflowExecutionEvent[];
99
+ /** Whether the stream is currently connected */
100
+ isStreaming: boolean;
101
+ /** Terminal status once the workflow finishes */
102
+ status: 'idle' | 'streaming' | 'completed' | 'failed' | 'error';
103
+ /** Error message if stream errored */
104
+ error: string | null;
105
+ };
106
+ /**
107
+ * React hook that subscribes to real-time workflow execution events.
108
+ *
109
+ * Automatically selects transport:
110
+ * - WebSocket when VITE_WS_ENDPOINT is set (AWS production)
111
+ * - SSE when running locally (Kafka-backed)
112
+ *
113
+ * The stream auto-closes when the workflow completes or fails.
114
+ * Reconnects automatically if the connection drops (up to 3 retries).
115
+ */
116
+ declare function useRunEvents(workflowId: string | null, runId: string | null): RunEventStreamState;
117
+
118
+ type WorkflowRunPresentationActions = {
119
+ clearNodeResults: () => void;
120
+ setIsRunning: (running: boolean) => void;
121
+ setNodeResult: (nodeId: string, result: NodeRunResult) => void;
122
+ };
123
+ declare function resetWorkflowRunPresentation(actions: WorkflowRunPresentationActions): void;
124
+ declare function applyWorkflowExecutionEventToStore(actions: WorkflowRunPresentationActions, event: WorkflowExecutionEvent): void;
125
+ declare function useWorkflowRunPresentation(events: WorkflowExecutionEvent[], status: RunEventStreamState['status']): void;
126
+
127
+ type UsersSettingsSectionProps = {
128
+ /**
129
+ * Role normalizer produced by each app's `createPlatformRbac()` call.
130
+ * Used to coerce JWT role strings into the app's canonical role enum.
131
+ */
132
+ normalizeRole: (input: unknown) => string;
133
+ };
134
+ type RolesSettingsSectionProps = UsersSettingsSectionProps & {
135
+ /** App-defined role definitions (from `createPlatformRbac`). */
136
+ roleDefinitions: Record<string, PlatformRoleDefinition<string>>;
137
+ /** Display options for the role-assignment select. */
138
+ roleOptions: Array<{
139
+ value: string;
140
+ label: string;
141
+ }>;
142
+ };
143
+ declare function UsersSettingsSection({ normalizeRole }: UsersSettingsSectionProps): react_jsx_runtime.JSX.Element;
144
+ declare function RolesSettingsSection({ roleDefinitions, roleOptions, normalizeRole }: RolesSettingsSectionProps): react_jsx_runtime.JSX.Element;
145
+
146
+ interface Props {
147
+ open: boolean;
148
+ onClose: () => void;
149
+ onGenerated: (workflow: Workflow) => void;
150
+ }
151
+ /**
152
+ * Minimal NL → graph generator surface. Lets the user pick one of the
153
+ * org's model provider connections, enter a prompt, and produces a
154
+ * Workflow row whose `graph` is the LLM's output. The caller navigates
155
+ * the editor to the new workflow once generation succeeds — validation
156
+ * issues are surfaced as notifications so the user can iterate.
157
+ */
158
+ declare function AiWorkflowGenerateModal({ open, onClose, onGenerated }: Props): react_jsx_runtime.JSX.Element;
159
+
160
+ interface WorkflowTemplateModalProps {
161
+ open: boolean;
162
+ onClose: () => void;
163
+ onCreated: (workflow: Workflow) => void;
164
+ }
165
+ declare function WorkflowTemplateModal({ open, onClose, onCreated }: WorkflowTemplateModalProps): react_jsx_runtime.JSX.Element;
166
+
167
+ /**
168
+ * Thin wrapper that forwards a workflow graph into the visual canvas while
169
+ * threading the active locale from the i18n context. The graph type from
170
+ * `shared-domain` is structurally identical to ui's contract type — the
171
+ * cast keeps callers from having to import both.
172
+ */
173
+ declare function WorkflowWorkspace({ graph }: WorkflowWorkspaceProps): react_jsx_runtime.JSX.Element;
174
+
175
+ /** Maps a windsock AuthOrganization to the app-level Organization shape used by UI pages. */
176
+ declare function mapAuthOrg(raw: AuthOrganization): Organization;
177
+ /**
178
+ * Maps a windsock AdminUserSummary to the app-level ManagedUser shape.
179
+ * Takes `normalizeRole` as a parameter so each consuming app can plug in
180
+ * the role normalizer produced by its own `createPlatformRbac()` call —
181
+ * we deliberately don't hardcode an app-specific role enum here.
182
+ */
183
+ declare function mapAdminUser(row: AdminUserSummary, normalizeRole: (input: unknown) => string): ManagedUser;
184
+ /** Maps an app-level UserRole to a windsock AuthOrganizationRole. */
185
+ declare const ORG_ROLE_MAP: Record<string, 'owner' | 'admin' | 'member' | 'viewer'>;
186
+ declare function mapRoleToOrgRole(role: string): 'owner' | 'admin' | 'member' | 'viewer';
187
+
188
+ export { AiWorkflowGenerateModal, ORG_ROLE_MAP, PlatformDockContainer, type PlatformDockContainerProps, PlatformRoleDefinition, PlatformStateProvider, type PlatformStateProviderProps, PreferencesControls, RolesSettingsSection, type RolesSettingsSectionProps, type RunEventStreamState, SessionSwitcher, UsersSettingsSection, type UsersSettingsSectionProps, WorkflowTemplateModal, type WorkflowTemplateModalProps, WorkflowWorkspace, applyWorkflowExecutionEventToStore, mapAdminUser, mapAuthOrg, mapRoleToOrgRole, resetWorkflowRunPresentation, useLocaleSwitcher, usePlatformState, useRunEvents, useWorkflowExecution, useWorkflowRunPresentation };
@@ -0,0 +1,188 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { SessionSwitcherProps, LocaleCode, WorkflowExecutionEvent, WorkflowWorkspaceProps, ManagedUser, Organization } from '@datatechsolutions/shared-domain/common';
3
+ import { ReactNode } from 'react';
4
+ import { A as AuthUser } from '../index-BoebbJ44.js';
5
+ export { PlatformAppShell, PlatformAppShellProps } from './app-shell.js';
6
+ import { N as NavigationItem } from '../navigation-BiWVffAN.js';
7
+ import { VariableValue, Workflow } from '../astrlabe/contracts.js';
8
+ import { N as NodeRunResult } from '../workflow-store-o17I6L6A.js';
9
+ import { PlatformRoleDefinition } from './rbac.js';
10
+ export { CreatePlatformRbacOptions, PlatformRbac, createPlatformRbac } from './rbac.js';
11
+ export { WorkflowCanvasShell } from './workflow-canvas-shell.js';
12
+ export { AgentsWorkspace, AgentsWorkspaceProps } from './agents-workspace.js';
13
+ export { CreateSecretInput, SecretDetail, SecretSummary, UpdateSecretInput, addOrganizationDomain, addOrganizationMember, createOrganization, createOrganizationInvitation, createPermission, createSecret, createUser, deleteOrganization, deletePermission, deleteUser, disableSecret, getSecret, getUserPermissions, listOrganizationDomains, listOrganizationInvitations, listOrganizationMembers, listOrganizations, listPermissions, listSecrets, listUsers, removeOrganizationMember, resetUserPassword, rotateSecret, setUserPermissions, setWindsockAdminClient, updateOrganization, updatePermission, updateUser, verifyOrganizationDomain } from './windsock-admin-client.js';
14
+ import { AdminUserSummary, AuthOrganization } from '@datatechsolutions/shared-domain';
15
+ export { AdminClient, AdminCreateInvitationInput, AdminCreateOrganizationInput, AdminCreatePermissionInput, AdminCreateUserInput, AdminListParams, AdminListResult, AdminOrganizationDetailProps, AdminOrganizationDetailTab, AdminOrganizationFormProps, AdminOrganizationListProps, AdminOrganizationMember, AdminPermissionListProps, AdminUpdateOrganizationInput, AdminUpdatePermissionInput, AdminUpdateUserInput, AdminUserFormProps, AdminUserListProps, AdminUserSummary, ConsentScreenProps, ForgotPasswordProps, MfaChallengeProps, MfaManageProps, MfaSetupProps, PasswordlessSignInProps, ResetPasswordProps, SignInProps, SignUpProps, SsoConnector, SsoConnectorListProps, SsoEmailFormProps, UserButtonProps, UserProfileProps, VerifyEmailProps } from '@datatechsolutions/shared-domain';
16
+ export { AuthLayout, AuthLayoutProps, BackupCodeGrid, BackupCodeGridProps, ConsentScreen, ForgotPassword, LinkedAccountsTabContent, MfaChallenge, MfaManage, MfaSetup, OtpInput, OtpInputProps, PasswordStrengthMeter, PasswordStrengthMeterProps, PasswordlessSignIn, ProfileTabContent, ResetPassword, SecurityTabContent, SessionsTabContent, SignIn, SignUp, SocialLoginButtons, SocialLoginButtonsProps, SocialProvider, SsoConnectorList, SsoEmailForm, UserButton, UserProfile, VerifyEmail } from './auth/index.js';
17
+ export { B as BillingPanel, a as BillingPanelProps } from '../billing-panel-DsHhhJqG.js';
18
+ export { UpgradePrompt, UpgradePromptProps } from './billing/index.js';
19
+ export { ImpersonationBanner, ImpersonationBannerProps } from './impersonation/index.js';
20
+ export { AdminOrganizationDetail, AdminOrganizationForm, AdminOrganizationList, AdminPermissionList, AdminUserForm, AdminUserList } from './admin/index.js';
21
+ export { PlatformSettings, PlatformSettingsProps, PlatformSettingsSection } from './settings/index.js';
22
+ import 'zustand';
23
+ import '@xyflow/react';
24
+ import '../layout-engine-YZcVr20M.js';
25
+
26
+ declare function SessionSwitcher({ organizations, users, organizationId, userEmail, onOrganizationChange, onUserChange, }: SessionSwitcherProps): react_jsx_runtime.JSX.Element;
27
+
28
+ type PlatformState = {
29
+ currentOrganizationId: string;
30
+ actor: AuthUser | null;
31
+ };
32
+ type PlatformStateProviderProps = {
33
+ children: ReactNode;
34
+ /**
35
+ * Function that converts a JWT role claim to the app's canonical role
36
+ * union (the same `normalizePlatformRole` produced by
37
+ * `createPlatformRbac()` in this app). Lifted out as a prop because
38
+ * each consuming app uses its own role enum.
39
+ */
40
+ normalizeRole: (input: unknown) => string;
41
+ };
42
+ declare function PlatformStateProvider({ children, normalizeRole }: PlatformStateProviderProps): react_jsx_runtime.JSX.Element;
43
+ declare function usePlatformState(): PlatformState;
44
+
45
+ type PlatformDockContainerProps = {
46
+ /** JWT-derived actor used for permission filtering. */
47
+ actor: AuthUser | null;
48
+ /** App-specific navigation items (already translated). */
49
+ navigationItems: NavigationItem[];
50
+ /**
51
+ * Pathname where the dock should be hidden (defaults to `/dashboard`).
52
+ * The dashboard typically owns its own navigation chrome.
53
+ */
54
+ dashboardPath?: string;
55
+ /** Path to redirect to on sign-out (defaults to `/login`). */
56
+ signOutPath?: string;
57
+ };
58
+ /**
59
+ * Floating dock + profile-modal trigger shared by every platform app.
60
+ * Reads the active route from ui's router context and uses windsock for
61
+ * preferences + sign-out, so the consumer only has to wire up navigation
62
+ * items + an optional dashboard/sign-out path.
63
+ */
64
+ declare function PlatformDockContainer({ actor, navigationItems, dashboardPath, signOutPath, }: PlatformDockContainerProps): react_jsx_runtime.JSX.Element | null;
65
+
66
+ /**
67
+ * Locale + theme controls used inside the platform preferences drawer.
68
+ * Reads the active locale from the i18n context and the theme/dock
69
+ * preferences from windsock — both shared providers consuming apps must
70
+ * mount above this component.
71
+ */
72
+ declare function PreferencesControls(): react_jsx_runtime.JSX.Element;
73
+
74
+ /**
75
+ * Locale switcher hook — reads the current locale from the i18n context and
76
+ * pushes the user's choice through windsock so the next session inherits it.
77
+ *
78
+ * Lifted from astrlabe; consumers (astrlabe, kori-erp) wrap their tree in
79
+ * `<I18nProvider>` + windsock's `<AuthProvider>` and import this directly.
80
+ */
81
+ declare function useLocaleSwitcher(): {
82
+ locale: LocaleCode;
83
+ shortCode: string;
84
+ setLocale: (newLocale: LocaleCode | string) => void;
85
+ locales: readonly LocaleCode[];
86
+ };
87
+
88
+ declare function useWorkflowExecution(workflowId: string): {
89
+ isRunning: boolean;
90
+ execute: (inputVariables?: Record<string, VariableValue>) => Promise<void>;
91
+ stop: () => void;
92
+ runId: string | null;
93
+ runStatus: "error" | "idle" | "streaming" | "completed" | "failed";
94
+ };
95
+
96
+ type RunEventStreamState = {
97
+ /** All events received so far, in order */
98
+ events: WorkflowExecutionEvent[];
99
+ /** Whether the stream is currently connected */
100
+ isStreaming: boolean;
101
+ /** Terminal status once the workflow finishes */
102
+ status: 'idle' | 'streaming' | 'completed' | 'failed' | 'error';
103
+ /** Error message if stream errored */
104
+ error: string | null;
105
+ };
106
+ /**
107
+ * React hook that subscribes to real-time workflow execution events.
108
+ *
109
+ * Automatically selects transport:
110
+ * - WebSocket when VITE_WS_ENDPOINT is set (AWS production)
111
+ * - SSE when running locally (Kafka-backed)
112
+ *
113
+ * The stream auto-closes when the workflow completes or fails.
114
+ * Reconnects automatically if the connection drops (up to 3 retries).
115
+ */
116
+ declare function useRunEvents(workflowId: string | null, runId: string | null): RunEventStreamState;
117
+
118
+ type WorkflowRunPresentationActions = {
119
+ clearNodeResults: () => void;
120
+ setIsRunning: (running: boolean) => void;
121
+ setNodeResult: (nodeId: string, result: NodeRunResult) => void;
122
+ };
123
+ declare function resetWorkflowRunPresentation(actions: WorkflowRunPresentationActions): void;
124
+ declare function applyWorkflowExecutionEventToStore(actions: WorkflowRunPresentationActions, event: WorkflowExecutionEvent): void;
125
+ declare function useWorkflowRunPresentation(events: WorkflowExecutionEvent[], status: RunEventStreamState['status']): void;
126
+
127
+ type UsersSettingsSectionProps = {
128
+ /**
129
+ * Role normalizer produced by each app's `createPlatformRbac()` call.
130
+ * Used to coerce JWT role strings into the app's canonical role enum.
131
+ */
132
+ normalizeRole: (input: unknown) => string;
133
+ };
134
+ type RolesSettingsSectionProps = UsersSettingsSectionProps & {
135
+ /** App-defined role definitions (from `createPlatformRbac`). */
136
+ roleDefinitions: Record<string, PlatformRoleDefinition<string>>;
137
+ /** Display options for the role-assignment select. */
138
+ roleOptions: Array<{
139
+ value: string;
140
+ label: string;
141
+ }>;
142
+ };
143
+ declare function UsersSettingsSection({ normalizeRole }: UsersSettingsSectionProps): react_jsx_runtime.JSX.Element;
144
+ declare function RolesSettingsSection({ roleDefinitions, roleOptions, normalizeRole }: RolesSettingsSectionProps): react_jsx_runtime.JSX.Element;
145
+
146
+ interface Props {
147
+ open: boolean;
148
+ onClose: () => void;
149
+ onGenerated: (workflow: Workflow) => void;
150
+ }
151
+ /**
152
+ * Minimal NL → graph generator surface. Lets the user pick one of the
153
+ * org's model provider connections, enter a prompt, and produces a
154
+ * Workflow row whose `graph` is the LLM's output. The caller navigates
155
+ * the editor to the new workflow once generation succeeds — validation
156
+ * issues are surfaced as notifications so the user can iterate.
157
+ */
158
+ declare function AiWorkflowGenerateModal({ open, onClose, onGenerated }: Props): react_jsx_runtime.JSX.Element;
159
+
160
+ interface WorkflowTemplateModalProps {
161
+ open: boolean;
162
+ onClose: () => void;
163
+ onCreated: (workflow: Workflow) => void;
164
+ }
165
+ declare function WorkflowTemplateModal({ open, onClose, onCreated }: WorkflowTemplateModalProps): react_jsx_runtime.JSX.Element;
166
+
167
+ /**
168
+ * Thin wrapper that forwards a workflow graph into the visual canvas while
169
+ * threading the active locale from the i18n context. The graph type from
170
+ * `shared-domain` is structurally identical to ui's contract type — the
171
+ * cast keeps callers from having to import both.
172
+ */
173
+ declare function WorkflowWorkspace({ graph }: WorkflowWorkspaceProps): react_jsx_runtime.JSX.Element;
174
+
175
+ /** Maps a windsock AuthOrganization to the app-level Organization shape used by UI pages. */
176
+ declare function mapAuthOrg(raw: AuthOrganization): Organization;
177
+ /**
178
+ * Maps a windsock AdminUserSummary to the app-level ManagedUser shape.
179
+ * Takes `normalizeRole` as a parameter so each consuming app can plug in
180
+ * the role normalizer produced by its own `createPlatformRbac()` call —
181
+ * we deliberately don't hardcode an app-specific role enum here.
182
+ */
183
+ declare function mapAdminUser(row: AdminUserSummary, normalizeRole: (input: unknown) => string): ManagedUser;
184
+ /** Maps an app-level UserRole to a windsock AuthOrganizationRole. */
185
+ declare const ORG_ROLE_MAP: Record<string, 'owner' | 'admin' | 'member' | 'viewer'>;
186
+ declare function mapRoleToOrgRole(role: string): 'owner' | 'admin' | 'member' | 'viewer';
187
+
188
+ export { AiWorkflowGenerateModal, ORG_ROLE_MAP, PlatformDockContainer, type PlatformDockContainerProps, PlatformRoleDefinition, PlatformStateProvider, type PlatformStateProviderProps, PreferencesControls, RolesSettingsSection, type RolesSettingsSectionProps, type RunEventStreamState, SessionSwitcher, UsersSettingsSection, type UsersSettingsSectionProps, WorkflowTemplateModal, type WorkflowTemplateModalProps, WorkflowWorkspace, applyWorkflowExecutionEventToStore, mapAdminUser, mapAuthOrg, mapRoleToOrgRole, resetWorkflowRunPresentation, useLocaleSwitcher, usePlatformState, useRunEvents, useWorkflowExecution, useWorkflowRunPresentation };
@@ -1,16 +1,16 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkP4RVGMZL_js = require('../chunk-P4RVGMZL.js');
5
4
  var chunkXT76DMP5_js = require('../chunk-XT76DMP5.js');
6
- var chunkRBB5YGWH_js = require('../chunk-RBB5YGWH.js');
7
5
  var chunkR2RPRRB4_js = require('../chunk-R2RPRRB4.js');
6
+ var chunkP4RVGMZL_js = require('../chunk-P4RVGMZL.js');
7
+ var chunkRBB5YGWH_js = require('../chunk-RBB5YGWH.js');
8
8
  var chunkBEUPW5WS_js = require('../chunk-BEUPW5WS.js');
9
- var chunkVDO6MDQW_js = require('../chunk-VDO6MDQW.js');
10
- var chunkMFAVWJWE_js = require('../chunk-MFAVWJWE.js');
9
+ var chunkY2FR242F_js = require('../chunk-Y2FR242F.js');
11
10
  var chunkDWIBK7GV_js = require('../chunk-DWIBK7GV.js');
12
11
  var chunkZF7RJNPD_js = require('../chunk-ZF7RJNPD.js');
13
12
  var chunkQGLGQXJE_js = require('../chunk-QGLGQXJE.js');
13
+ var chunkMFAVWJWE_js = require('../chunk-MFAVWJWE.js');
14
14
  var chunk7WIWDSF6_js = require('../chunk-7WIWDSF6.js');
15
15
  require('../chunk-SUU7XPRX.js');
16
16
  var chunkFIB2CFJK_js = require('../chunk-FIB2CFJK.js');
@@ -550,10 +550,6 @@ function WorkflowTemplateModal({ open, onClose, onCreated }) {
550
550
  );
551
551
  }
552
552
 
553
- Object.defineProperty(exports, "UpgradePrompt", {
554
- enumerable: true,
555
- get: function () { return chunkP4RVGMZL_js.UpgradePrompt; }
556
- });
557
553
  Object.defineProperty(exports, "AdminOrganizationForm", {
558
554
  enumerable: true,
559
555
  get: function () { return chunkXT76DMP5_js.AdminOrganizationForm; }
@@ -574,10 +570,6 @@ Object.defineProperty(exports, "AdminUserList", {
574
570
  enumerable: true,
575
571
  get: function () { return chunkXT76DMP5_js.AdminUserList; }
576
572
  });
577
- Object.defineProperty(exports, "ImpersonationBanner", {
578
- enumerable: true,
579
- get: function () { return chunkRBB5YGWH_js.ImpersonationBanner; }
580
- });
581
573
  Object.defineProperty(exports, "ConsentScreen", {
582
574
  enumerable: true,
583
575
  get: function () { return chunkR2RPRRB4_js.ConsentScreen; }
@@ -622,17 +614,21 @@ Object.defineProperty(exports, "VerifyEmail", {
622
614
  enumerable: true,
623
615
  get: function () { return chunkR2RPRRB4_js.VerifyEmail; }
624
616
  });
617
+ Object.defineProperty(exports, "UpgradePrompt", {
618
+ enumerable: true,
619
+ get: function () { return chunkP4RVGMZL_js.UpgradePrompt; }
620
+ });
621
+ Object.defineProperty(exports, "ImpersonationBanner", {
622
+ enumerable: true,
623
+ get: function () { return chunkRBB5YGWH_js.ImpersonationBanner; }
624
+ });
625
625
  Object.defineProperty(exports, "WorkflowWorkspace", {
626
626
  enumerable: true,
627
627
  get: function () { return chunkBEUPW5WS_js.WorkflowWorkspace; }
628
628
  });
629
629
  Object.defineProperty(exports, "PlatformSettings", {
630
630
  enumerable: true,
631
- get: function () { return chunkVDO6MDQW_js.PlatformSettings; }
632
- });
633
- Object.defineProperty(exports, "BillingPanel", {
634
- enumerable: true,
635
- get: function () { return chunkMFAVWJWE_js.BillingPanel; }
631
+ get: function () { return chunkY2FR242F_js.PlatformSettings; }
636
632
  });
637
633
  Object.defineProperty(exports, "AdminOrganizationDetail", {
638
634
  enumerable: true,
@@ -686,6 +682,10 @@ Object.defineProperty(exports, "SocialLoginButtons", {
686
682
  enumerable: true,
687
683
  get: function () { return chunkQGLGQXJE_js.SocialLoginButtons; }
688
684
  });
685
+ Object.defineProperty(exports, "BillingPanel", {
686
+ enumerable: true,
687
+ get: function () { return chunkMFAVWJWE_js.BillingPanel; }
688
+ });
689
689
  Object.defineProperty(exports, "AgentsWorkspace", {
690
690
  enumerable: true,
691
691
  get: function () { return chunk7WIWDSF6_js.AgentsWorkspace; }
@@ -1,15 +1,15 @@
1
1
  "use client";
2
- export { UpgradePrompt } from '../chunk-DJ33CSGJ.mjs';
3
2
  export { AdminOrganizationForm, AdminOrganizationList, AdminPermissionList, AdminUserForm, AdminUserList } from '../chunk-IKH5IRDK.mjs';
4
- export { ImpersonationBanner } from '../chunk-IKHWYYZC.mjs';
5
3
  export { ConsentScreen, ForgotPassword, MfaChallenge, PasswordlessSignIn, ResetPassword, SignIn, SignUp, SsoConnectorList, SsoEmailForm, UserButton, VerifyEmail } from '../chunk-P7GVXI7Y.mjs';
4
+ export { UpgradePrompt } from '../chunk-DJ33CSGJ.mjs';
5
+ export { ImpersonationBanner } from '../chunk-IKHWYYZC.mjs';
6
6
  import { UsersPageView, RolesPageView } from '../chunk-4HP7XS5I.mjs';
7
7
  export { WorkflowWorkspace } from '../chunk-4HP7XS5I.mjs';
8
- export { PlatformSettings } from '../chunk-ZWLMKOHZ.mjs';
9
- export { BillingPanel } from '../chunk-YNHQ36UU.mjs';
8
+ export { PlatformSettings } from '../chunk-KZSL7AXW.mjs';
10
9
  export { AdminOrganizationDetail } from '../chunk-MGZTZELL.mjs';
11
10
  export { LinkedAccountsTabContent, MfaManage, MfaSetup, ProfileTabContent, SecurityTabContent, SessionsTabContent, UserProfile } from '../chunk-CTCO2YI5.mjs';
12
11
  export { AuthLayout, BackupCodeGrid, OtpInput, PasswordStrengthMeter, SocialLoginButtons } from '../chunk-3VYD7QL2.mjs';
12
+ export { BillingPanel } from '../chunk-YNHQ36UU.mjs';
13
13
  export { AgentsWorkspace, applyWorkflowExecutionEventToStore, resetWorkflowRunPresentation, useRunEvents, useWorkflowExecution, useWorkflowRunPresentation } from '../chunk-MRLEINJN.mjs';
14
14
  import '../chunk-DCBRGVD3.mjs';
15
15
  import { usePlatformState } from '../chunk-JUDQX6MP.mjs';