@tai42/api-client 19.2.1 → 19.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/index.d.ts +9 -0
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/interactions-client.d.ts +10 -0
- package/dist/client/interactions-client.d.ts.map +1 -1
- package/dist/client/interactions-client.js +11 -0
- package/dist/client/interactions-client.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/schemas/interactions.d.ts +133 -0
- package/dist/schemas/interactions.d.ts.map +1 -1
- package/dist/schemas/interactions.js +76 -0
- package/dist/schemas/interactions.js.map +1 -1
- package/package.json +1 -1
- package/src/client/interactions-client.ts +12 -0
- package/src/index.ts +7 -0
- package/src/schemas/interactions.ts +90 -0
package/dist/client/index.d.ts
CHANGED
|
@@ -1323,6 +1323,15 @@ export declare function createApiClient(config: ApiConfig): {
|
|
|
1323
1323
|
interaction_id: string;
|
|
1324
1324
|
status: string;
|
|
1325
1325
|
}>;
|
|
1326
|
+
readonly reactInteraction: (interactionId: string, event: import("..").ReactionEvent, values: unknown) => Promise<{
|
|
1327
|
+
values: Record<string, unknown>;
|
|
1328
|
+
options: Record<string, {
|
|
1329
|
+
value: string;
|
|
1330
|
+
label?: string | null | undefined;
|
|
1331
|
+
}[]>;
|
|
1332
|
+
errors: Record<string, string>;
|
|
1333
|
+
display: Record<string, unknown>;
|
|
1334
|
+
}>;
|
|
1326
1335
|
readonly cancelInteraction: (interactionId: string) => Promise<{
|
|
1327
1336
|
interaction_id: string;
|
|
1328
1337
|
status: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAoCzC,YAAY,EACV,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,YAAY,EACV,8BAA8B,EAC9B,yBAAyB,EACzB,6BAA6B,EAC7B,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,YAAY,EACV,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACtE,YAAY,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpG,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACjE,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,YAAY,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAjEyB,CAAC;qBAEnB,CAAC;kBAIJ,CAAC;mBACnB,CAAC;mBACP,CAAC;mBACL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6CxB,CAAF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAwD2uF,CAAC;;;;;;;;;;;;;oBAA+Z,CAAC;gBAAkB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAA1vC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAAsyF,CAAC;aAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAH7tJ;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as s from '../schemas';
|
|
1
2
|
import type { Transport } from './transport';
|
|
2
3
|
export declare function interactionsClient(t: Transport): {
|
|
3
4
|
listInteractions: (page: number, pageSize: number, signal?: AbortSignal) => Promise<{
|
|
@@ -27,6 +28,15 @@ export declare function interactionsClient(t: Transport): {
|
|
|
27
28
|
interaction_id: string;
|
|
28
29
|
status: string;
|
|
29
30
|
}>;
|
|
31
|
+
reactInteraction: (interactionId: string, event: s.ReactionEvent, values: unknown) => Promise<{
|
|
32
|
+
values: Record<string, unknown>;
|
|
33
|
+
options: Record<string, {
|
|
34
|
+
value: string;
|
|
35
|
+
label?: string | null | undefined;
|
|
36
|
+
}[]>;
|
|
37
|
+
errors: Record<string, string>;
|
|
38
|
+
display: Record<string, unknown>;
|
|
39
|
+
}>;
|
|
30
40
|
cancelInteraction: (interactionId: string) => Promise<{
|
|
31
41
|
interaction_id: string;
|
|
32
42
|
status: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactions-client.d.ts","sourceRoot":"","sources":["../../src/client/interactions-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interactions-client.d.ts","sourceRoot":"","sources":["../../src/client/interactions-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,CAAC,MAAM,YAAY,CAAC;AAEhC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,SAAS;6BAOlB,MAAM,YAAY,MAAM,WAAW,WAAW;;;;;;;;;;;;;;;;;;;;;;;uCAEpC,MAAM,UAAU,OAAO;;;;sCAYxB,MAAM,SAAS,CAAC,CAAC,aAAa,UAAU,OAAO;;;;;;;;;uCAW9C,MAAM;;;;EAK5C;AAED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,SAAS;IAGjD;;;;;;;;;;;;;OAaG;kCACiC,WAAW,gBAAgB,MAAM;EAqCxE"}
|
|
@@ -15,6 +15,17 @@ export function interactionsClient(t) {
|
|
|
15
15
|
method: 'POST',
|
|
16
16
|
body: { answer },
|
|
17
17
|
}),
|
|
18
|
+
// React to a still-open form while it is being filled: the in-app, authenticated
|
|
19
|
+
// sibling of the answer door (`POST /api/interactions/{id}/react`). It carries the
|
|
20
|
+
// event that fired (a field changed / a page advanced / the form submitted) and the
|
|
21
|
+
// partial `values` filled so far, and returns a form update to apply. It is STATELESS
|
|
22
|
+
// on the server — it records no answer and resolves no interaction — so it never
|
|
23
|
+
// substitutes for the answer door. A handler error/timeout surfaces as the shared
|
|
24
|
+
// `apiRequest` status handling (loud), never a stale value.
|
|
25
|
+
reactInteraction: (interactionId, event, values) => req(`/api/interactions/${encodeSegment(interactionId)}/react`, s.formUpdate, {
|
|
26
|
+
method: 'POST',
|
|
27
|
+
body: { event, values },
|
|
28
|
+
}),
|
|
18
29
|
// Withdraw a pending ask WITHOUT answering it (a bodyless POST): the question is
|
|
19
30
|
// resolved as cancelled and the flow that asked never resumes. Terminal like an
|
|
20
31
|
// answer, so the loud failure mappings mirror it — a 409 (already answered, so no
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactions-client.js","sourceRoot":"","sources":["../../src/client/interactions-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interactions-client.js","sourceRoot":"","sources":["../../src/client/interactions-client.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,KAAK,CAAC,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGrD,MAAM,UAAU,kBAAkB,CAAC,CAAY;IAC7C,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClB,OAAO;QACL,gFAAgF;QAChF,gFAAgF;QAChF,mFAAmF;QACnF,4CAA4C;QAC5C,gBAAgB,EAAE,CAAC,IAAY,EAAE,QAAgB,EAAE,MAAoB,EAAE,EAAE,CACzE,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;QACrF,iBAAiB,EAAE,CAAC,aAAqB,EAAE,MAAe,EAAE,EAAE,CAC5D,GAAG,CAAC,qBAAqB,aAAa,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,mBAAmB,EAAE;YACrF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,EAAE,MAAM,EAAE;SACjB,CAAC;QACJ,iFAAiF;QACjF,mFAAmF;QACnF,oFAAoF;QACpF,sFAAsF;QACtF,iFAAiF;QACjF,kFAAkF;QAClF,4DAA4D;QAC5D,gBAAgB,EAAE,CAAC,aAAqB,EAAE,KAAsB,EAAE,MAAe,EAAE,EAAE,CACnF,GAAG,CAAC,qBAAqB,aAAa,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,EAAE;YAC3E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;SACxB,CAAC;QACJ,iFAAiF;QACjF,gFAAgF;QAChF,kFAAkF;QAClF,mFAAmF;QACnF,4EAA4E;QAC5E,gCAAgC;QAChC,iBAAiB,EAAE,CAAC,aAAqB,EAAE,EAAE,CAC3C,GAAG,CAAC,qBAAqB,aAAa,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,oBAAoB,EAAE;YACtF,MAAM,EAAE,MAAM;SACf,CAAC;KACL,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,CAAY;IACnD,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACrB,OAAO;QACL;;;;;;;;;;;;;WAaG;QACH,kBAAkB,EAAE,KAAK,EAAE,MAAoB,EAAE,WAAoB,EAAE,EAAE;YACvE,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;YACjD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,OAAO,GAA2B,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;YACxE,IAAI,KAAK;gBAAE,OAAO,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;YACxC,IAAI,WAAW;gBAAE,OAAO,CAAC,eAAe,CAAC,GAAG,WAAW,CAAC;YACxD,0EAA0E;YAC1E,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,kBAAkB,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,8BAA8B,YAAY,EAAE,GAAG,MAAM,EAAE,CAAC;YAC3F,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;gBAClC,OAAO;gBACP,MAAM;aACP,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;gBAAE,MAAM,IAAI,oBAAoB,EAAE,CAAC;YAC9D,4EAA4E;YAC5E,2EAA2E;YAC3E,6EAA6E;YAC7E,wEAAwE;YACxE,2EAA2E;YAC3E,wBAAwB;YACxB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,IAAI,OAAgB,CAAC;gBACrB,IAAI,CAAC;oBACH,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAClC,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,IAAI,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC9E,CAAC;gBACD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;gBAChD,MAAM,IAAI,QAAQ,CAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,eAAe,CAAC,EACnD,QAAQ,CAAC,MAAM,EACf,IAAI,CACL,CAAC;YACJ,CAAC;YACD,OAAO,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ export type { FailedMcpEntry, FleetFailureOutcome, FleetReportStatus, FleetRepor
|
|
|
14
14
|
export { failedMcpsFromReport, isFleetReportFailure, summarizeFleetFanout, summarizeFleetResult, } from './fleet-report';
|
|
15
15
|
export type { ApiConfig, RequestOptions } from './http';
|
|
16
16
|
export { apiDownload, apiRequest, apiText } from './http';
|
|
17
|
-
export type { AnswerFormat, ApplyResult, AttachmentMediaItem, AttachmentMediaKind, AuthCapabilities, AuthRoute, BackendInfo, BackupDocument, BackupImportReport, CallerAsksEnvelope, Channels, ChannelTemplate, ClaimLinkCreated, CompletedOrigin, ConnectionView, ConnectorCategoryView, ConnectorRef, ConsumerLink, ConsumerRow, ConversationAnswerStatus, ConversationConfigDeleted, ConversationConfigs, ConversationConfigWritten, ConversationDeliveryStatus, ConversationDoor, ConversationFailedMessages, ConversationMessage, ConversationMessageSearchPage, ConversationMode, ConversationPersonDeleted, ConversationRecordOrigin, ConversationRoute, ConversationRouteCreate, ConversationRouteDeleted, ConversationRoutes, ConversationRouteWritten, ConversationTargetKind, ConversationThread, ConversationThreadDeleted, ConversationThreadMessageSent, ConversationThreadMode, ConversationThreadModeState, ConversationThreadsPage, ConversationTranscriptPage, DashboardMetrics, Extension, FleetOutcome, FleetReloadResult, FleetReportFanout, FleetResult, FleetWorker, FleetWorkerResult, FleetWorkers, FolderRecord, FormData, FormOption, FormPage, FormPages, GrantLevel, HookList, HookParams, HookRegister, HookSubject, Interaction, InteractionAnswered, InteractionCancelled, InteractionMediaItem, InteractionsPage, KindStatus, LoginFormField, LoginMethod, LoginMethods, LoginResult, LogoutResult, ManifestMcpEntry, MarketplaceAdvisory, MarketplaceDelivery, MarketplaceInstalled, MarketplaceInstalledCompat, MarketplaceInstalledPlugin, MarketplaceInstallPreview, MarketplaceInstallResult, MarketplaceItem, MarketplaceLatestVersion, MarketplaceMountedRoute, MarketplacePluginDetail, MarketplacePreviewCollision, MarketplacePreviewItem, MarketplacePreviewPublicRoute, MarketplacePreviewRoute, MarketplaceRequiredEnvVar, MarketplaceRouteDecl, MarketplaceRoutesDecl, MarketplaceSearchGroup, MarketplaceSearchKind, MarketplaceSearchPage, MarketplaceSearchRow, MarketplaceSource, MarketplaceUninstallResult, MarketplaceUpgradeAllResult, MarketplaceUpgradeAllRow, MarketplaceVersion, McpEnvRef, McpEnvRefs, McpReloadResult, MediaKind, MeProjection, Notification, Notifications, OAuthCompleteResult, ParkedCallerAsk, ParkedStatus, PatternEntry, PolicyBody, PolicyVersion, PresetBody, PresetDetail, PresetExtensionElement, PresetRecord, PresetReferees, PresetRenamed, PresetValidation, PresetVersion, PresetVersionTags, Principal, PrincipalRef, ProviderCatalogResponse, ProviderView, RecordSearchPage, ReloadConfigResult, RoleAuditEvent, RoleBody, RoleGrants, RoleVersion, RoleVersions, RouteAction, RouteEntry, Run, RunSpan, RunTrace, ScheduleItem, SettingsSchema, SetupBody, SetupResult, StateAttach, StateAttached, StateAttachment, StateAttachmentUpdated, StateBinding, StateConsumers, StateDeclaration, StateDetached, StateDetail, StateFoldReport, StateInjection, StateListItem, StateRecord, StateRetentionPruned, StateStats, StateSubject, StateTemplateDocument, StateTemplateListItem, StateUpdate, StorageInfo, StorageResourceStat, StudioPluginManifest, SubjectPage, SubjectRow, SubMcpEntry, SubMcpMount, SuspendedRunReceipt, TargetConversationConfig, TemplateDeclarations, TemplatedText, TemplateJq, TemplateJqApplyResult, TemplateJqResult, TemplateReconcile, TokensPayload, ToolExtensions, ToolExtensionsApplyResult, ToolMediaResult, ToolMetaOverlay, ToolMetaRecord, ToolSchema, ToolTagEntry, TranscriptOrder, TriggerAuth, TriggerLinkCreated, TriggerLinkDeleted, TriggerLinkList, TriggerLinkRecord, ValidateConditionResult, VisitOutcome, WebEntryCode, WebEntryCodeMinted, WebEntryCodeRevoked, WebEntryGate, WebEntryGateState, WorkerKind, WorkerLastOp, WorkerState, WriteEntry, WritesPage, } from './schemas';
|
|
17
|
+
export type { AnswerFormat, ApplyResult, AttachmentMediaItem, AttachmentMediaKind, AuthCapabilities, AuthRoute, BackendInfo, BackupDocument, BackupImportReport, CallerAsksEnvelope, Channels, ChannelTemplate, ClaimLinkCreated, CompletedOrigin, ConnectionView, ConnectorCategoryView, ConnectorRef, ConsumerLink, ConsumerRow, ConversationAnswerStatus, ConversationConfigDeleted, ConversationConfigs, ConversationConfigWritten, ConversationDeliveryStatus, ConversationDoor, ConversationFailedMessages, ConversationMessage, ConversationMessageSearchPage, ConversationMode, ConversationPersonDeleted, ConversationRecordOrigin, ConversationRoute, ConversationRouteCreate, ConversationRouteDeleted, ConversationRoutes, ConversationRouteWritten, ConversationTargetKind, ConversationThread, ConversationThreadDeleted, ConversationThreadMessageSent, ConversationThreadMode, ConversationThreadModeState, ConversationThreadsPage, ConversationTranscriptPage, DashboardMetrics, DisplayBlock, DisplayBlockKind, Extension, FleetOutcome, FleetReloadResult, FleetReportFanout, FleetResult, FleetWorker, FleetWorkerResult, FleetWorkers, FolderRecord, FormData, FormOption, FormPage, FormPageKind, FormPages, FormReactions, FormUpdate, GrantLevel, HookList, HookParams, HookRegister, HookSubject, Interaction, InteractionAnswered, InteractionCancelled, InteractionMediaItem, InteractionsPage, KindStatus, LoginFormField, LoginMethod, LoginMethods, LoginResult, LogoutResult, ManifestMcpEntry, MarketplaceAdvisory, MarketplaceDelivery, MarketplaceInstalled, MarketplaceInstalledCompat, MarketplaceInstalledPlugin, MarketplaceInstallPreview, MarketplaceInstallResult, MarketplaceItem, MarketplaceLatestVersion, MarketplaceMountedRoute, MarketplacePluginDetail, MarketplacePreviewCollision, MarketplacePreviewItem, MarketplacePreviewPublicRoute, MarketplacePreviewRoute, MarketplaceRequiredEnvVar, MarketplaceRouteDecl, MarketplaceRoutesDecl, MarketplaceSearchGroup, MarketplaceSearchKind, MarketplaceSearchPage, MarketplaceSearchRow, MarketplaceSource, MarketplaceUninstallResult, MarketplaceUpgradeAllResult, MarketplaceUpgradeAllRow, MarketplaceVersion, McpEnvRef, McpEnvRefs, McpReloadResult, MediaKind, MeProjection, Notification, Notifications, OAuthCompleteResult, ParkedCallerAsk, ParkedStatus, PatternEntry, PolicyBody, PolicyVersion, PresetBody, PresetDetail, PresetExtensionElement, PresetRecord, PresetReferees, PresetRenamed, PresetValidation, PresetVersion, PresetVersionTags, Principal, PrincipalRef, ProviderCatalogResponse, ProviderView, ReactionEvent, ReactionEventKind, RecordSearchPage, ReloadConfigResult, RoleAuditEvent, RoleBody, RoleGrants, RoleVersion, RoleVersions, RouteAction, RouteEntry, Run, RunSpan, RunTrace, ScheduleItem, SettingsSchema, SetupBody, SetupResult, StateAttach, StateAttached, StateAttachment, StateAttachmentUpdated, StateBinding, StateConsumers, StateDeclaration, StateDetached, StateDetail, StateFoldReport, StateInjection, StateListItem, StateRecord, StateRetentionPruned, StateStats, StateSubject, StateTemplateDocument, StateTemplateListItem, StateUpdate, StorageInfo, StorageResourceStat, StudioPluginManifest, SubjectPage, SubjectRow, SubMcpEntry, SubMcpMount, SuspendedRunReceipt, TargetConversationConfig, TemplateDeclarations, TemplatedText, TemplateJq, TemplateJqApplyResult, TemplateJqResult, TemplateReconcile, TokensPayload, ToolExtensions, ToolExtensionsApplyResult, ToolMediaResult, ToolMetaOverlay, ToolMetaRecord, ToolSchema, ToolTagEntry, TranscriptOrder, TriggerAuth, TriggerLinkCreated, TriggerLinkDeleted, TriggerLinkList, TriggerLinkRecord, ValidateConditionResult, VisitOutcome, WebEntryCode, WebEntryCodeMinted, WebEntryCodeRevoked, WebEntryGate, WebEntryGateState, WorkerKind, WorkerLastOp, WorkerState, WriteEntry, WritesPage, } from './schemas';
|
|
18
18
|
export * as schemas from './schemas';
|
|
19
19
|
export type { SseFrame } from './sse';
|
|
20
20
|
export { readSseFrames, SseFrameParser } from './sse';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAsCnF,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAQlB,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAsCnF,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAQlB,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAsN1D,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAStD,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,mBAAmB,GACpB,MAAM,aAAa,CAAC"}
|
|
@@ -101,22 +101,155 @@ export declare const formData: z.ZodObject<{
|
|
|
101
101
|
}, z.core.$strip>>>>;
|
|
102
102
|
}, z.core.$strip>;
|
|
103
103
|
export type FormData = z.infer<typeof formData>;
|
|
104
|
+
/** The kind of an ordered display block a page may carry alongside its input fields. */
|
|
105
|
+
export declare const displayBlockKind: z.ZodEnum<{
|
|
106
|
+
image: "image";
|
|
107
|
+
heading: "heading";
|
|
108
|
+
body: "body";
|
|
109
|
+
}>;
|
|
110
|
+
export type DisplayBlockKind = z.infer<typeof displayBlockKind>;
|
|
111
|
+
/**
|
|
112
|
+
* One ordered, display-only block on a form page (never an input): a `heading` or
|
|
113
|
+
* `body` text block, or an `image`. `text` carries a heading/body's words; `src`/`alt`
|
|
114
|
+
* carry an image's source and alt text. An optional `slot` names a data key whose value
|
|
115
|
+
* the block shows in place of static `text` — filled from `format_payload.data` at send
|
|
116
|
+
* and/or by a reaction's `display` update (so a computed total is a display slot, not a
|
|
117
|
+
* special case). Every text field is `.nullish()` (absent OR explicit `null` both parse
|
|
118
|
+
* to absent) so a block that omits a key — or sends an explicit `null` — is not a
|
|
119
|
+
* whole-page parse failure. Applied per block by the preview (safeParsed via its page),
|
|
120
|
+
* so a malformed block is a loud notice, never silent.
|
|
121
|
+
*/
|
|
122
|
+
export declare const displayBlock: z.ZodObject<{
|
|
123
|
+
kind: z.ZodEnum<{
|
|
124
|
+
image: "image";
|
|
125
|
+
heading: "heading";
|
|
126
|
+
body: "body";
|
|
127
|
+
}>;
|
|
128
|
+
text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
129
|
+
src: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
130
|
+
alt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
131
|
+
slot: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
132
|
+
}, z.core.$strip>;
|
|
133
|
+
export type DisplayBlock = z.infer<typeof displayBlock>;
|
|
134
|
+
/** A page's role: an ordinary `input` page (default) or a terminal `review` summary. */
|
|
135
|
+
export declare const formPageKind: z.ZodEnum<{
|
|
136
|
+
input: "input";
|
|
137
|
+
review: "review";
|
|
138
|
+
}>;
|
|
139
|
+
export type FormPageKind = z.infer<typeof formPageKind>;
|
|
104
140
|
/**
|
|
105
141
|
* One page of a stepped `form`: a `title` and the ordered top-level property names it
|
|
106
142
|
* groups. `format_payload.pages` is the ordered list of these; absent = one page. The
|
|
107
143
|
* form preview safeParses the list, so a malformed page is a loud notice, never silent.
|
|
144
|
+
*
|
|
145
|
+
* `display` is the ordered list of display-only blocks the page shows alongside (or
|
|
146
|
+
* instead of, for a review page) its input fields; it defaults to empty, so a page that
|
|
147
|
+
* carries none renders exactly as before. `kind` marks a `review` page — a terminal
|
|
148
|
+
* summary step that shows the readback of entered values and the confirm/submit footer
|
|
149
|
+
* and carries no new input fields; it defaults to `input`. Both are additive: an older
|
|
150
|
+
* payload ({title, fields}) parses unchanged.
|
|
108
151
|
*/
|
|
109
152
|
export declare const formPage: z.ZodObject<{
|
|
110
153
|
title: z.ZodString;
|
|
111
154
|
fields: z.ZodArray<z.ZodString>;
|
|
155
|
+
display: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
156
|
+
kind: z.ZodEnum<{
|
|
157
|
+
image: "image";
|
|
158
|
+
heading: "heading";
|
|
159
|
+
body: "body";
|
|
160
|
+
}>;
|
|
161
|
+
text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
162
|
+
src: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
163
|
+
alt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
164
|
+
slot: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
165
|
+
}, z.core.$strip>>>;
|
|
166
|
+
kind: z.ZodDefault<z.ZodEnum<{
|
|
167
|
+
input: "input";
|
|
168
|
+
review: "review";
|
|
169
|
+
}>>;
|
|
112
170
|
}, z.core.$strip>;
|
|
113
171
|
export type FormPage = z.infer<typeof formPage>;
|
|
114
172
|
/** The `form` pages list (`format_payload.pages`), safeParsed as a whole by the preview. */
|
|
115
173
|
export declare const formPages: z.ZodArray<z.ZodObject<{
|
|
116
174
|
title: z.ZodString;
|
|
117
175
|
fields: z.ZodArray<z.ZodString>;
|
|
176
|
+
display: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
177
|
+
kind: z.ZodEnum<{
|
|
178
|
+
image: "image";
|
|
179
|
+
heading: "heading";
|
|
180
|
+
body: "body";
|
|
181
|
+
}>;
|
|
182
|
+
text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
183
|
+
src: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
184
|
+
alt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
185
|
+
slot: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
186
|
+
}, z.core.$strip>>>;
|
|
187
|
+
kind: z.ZodDefault<z.ZodEnum<{
|
|
188
|
+
input: "input";
|
|
189
|
+
review: "review";
|
|
190
|
+
}>>;
|
|
118
191
|
}, z.core.$strip>>;
|
|
119
192
|
export type FormPages = z.infer<typeof formPages>;
|
|
193
|
+
/**
|
|
194
|
+
* When a `form` reacts while it is open (`format_payload.reactions`): the plain,
|
|
195
|
+
* renderer-readable description of WHEN the form calls its reaction handler. Absent ⇒ a
|
|
196
|
+
* static (non-reacting) form, exactly as before. `field_changed` names the fields whose
|
|
197
|
+
* change triggers a reaction; `page_advanced` names the pages (by title) whose advance
|
|
198
|
+
* triggers one; `submitted` is true when the submission is checked by a reaction before
|
|
199
|
+
* acceptance; `choices` names the fields whose CHOICE LISTS a reaction may replace while
|
|
200
|
+
* the form is open (for such a field the send-time option list is advisory — the consumer
|
|
201
|
+
* owns membership at the `submitted` event). Every member defaults to empty/false so a
|
|
202
|
+
* partial declaration parses; a malformed block is a loud notice via the preview.
|
|
203
|
+
*/
|
|
204
|
+
export declare const formReactions: z.ZodObject<{
|
|
205
|
+
field_changed: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
206
|
+
page_advanced: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
207
|
+
submitted: z.ZodDefault<z.ZodBoolean>;
|
|
208
|
+
choices: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
209
|
+
}, z.core.$strip>;
|
|
210
|
+
export type FormReactions = z.infer<typeof formReactions>;
|
|
211
|
+
/**
|
|
212
|
+
* The form update a reaction door returns (`POST /api/interactions/{id}/react`): the
|
|
213
|
+
* same kind of data a form is sent with, applied to the open form. `values` sets field
|
|
214
|
+
* values; `options` replaces the per-send choice list of option-bearing fields; `errors`
|
|
215
|
+
* shows per-field messages (keyed by field name); `display` fills display slots (keyed by
|
|
216
|
+
* slot name) — a computed total among them. Every member defaults to empty, so a reaction
|
|
217
|
+
* that touches only one of them returns only that one. The door response is safeParsed, so
|
|
218
|
+
* a malformed update surfaces loudly rather than applying a half-understood change.
|
|
219
|
+
*/
|
|
220
|
+
export declare const formUpdate: z.ZodObject<{
|
|
221
|
+
values: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
222
|
+
options: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
|
|
223
|
+
value: z.ZodString;
|
|
224
|
+
label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
225
|
+
}, z.core.$strip>>>>;
|
|
226
|
+
errors: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
227
|
+
display: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
228
|
+
}, z.core.$strip>;
|
|
229
|
+
export type FormUpdate = z.infer<typeof formUpdate>;
|
|
230
|
+
/**
|
|
231
|
+
* The event a reaction round-trip reports to the door: `kind` is which of the three
|
|
232
|
+
* declared events fired, `field` names the changed field for a `field_changed` event, and
|
|
233
|
+
* `page` names the advanced-from page (by title) for a `page_advanced` event. A
|
|
234
|
+
* `submitted` event carries neither. The body also carries the partial `values` filled so
|
|
235
|
+
* far (see {@link interactionsClient}'s `reactInteraction`).
|
|
236
|
+
*/
|
|
237
|
+
export declare const reactionEventKind: z.ZodEnum<{
|
|
238
|
+
field_changed: "field_changed";
|
|
239
|
+
page_advanced: "page_advanced";
|
|
240
|
+
submitted: "submitted";
|
|
241
|
+
}>;
|
|
242
|
+
export type ReactionEventKind = z.infer<typeof reactionEventKind>;
|
|
243
|
+
export declare const reactionEvent: z.ZodObject<{
|
|
244
|
+
kind: z.ZodEnum<{
|
|
245
|
+
field_changed: "field_changed";
|
|
246
|
+
page_advanced: "page_advanced";
|
|
247
|
+
submitted: "submitted";
|
|
248
|
+
}>;
|
|
249
|
+
field: z.ZodOptional<z.ZodString>;
|
|
250
|
+
page: z.ZodOptional<z.ZodString>;
|
|
251
|
+
}, z.core.$strip>;
|
|
252
|
+
export type ReactionEvent = z.infer<typeof reactionEvent>;
|
|
120
253
|
export declare const interaction: z.ZodObject<{
|
|
121
254
|
interaction_id: z.ZodString;
|
|
122
255
|
group_id: z.ZodString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactions.d.ts","sourceRoot":"","sources":["../../src/schemas/interactions.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,YAAY;;;;;;EAA4D,CAAC;AACtF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD,0FAA0F;AAC1F,eAAO,MAAM,SAAS;;;EAA4B,CAAC;AACnD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAElD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,oBAAoB;;;;;;;iBAI/B,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAExE;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;;EAAkD,CAAC;AACnF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEtE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;iBAK9B,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEtE;;;;;;GAMG;AACH,eAAO,MAAM,UAAU;;;iBAGrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;;;;;;iBAGnB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD;;;;
|
|
1
|
+
{"version":3,"file":"interactions.d.ts","sourceRoot":"","sources":["../../src/schemas/interactions.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,17 +74,93 @@ export const formData = z.object({
|
|
|
74
74
|
values: z.record(z.string(), z.unknown()).default({}),
|
|
75
75
|
options: z.record(z.string(), z.array(formOption)).default({}),
|
|
76
76
|
});
|
|
77
|
+
/** The kind of an ordered display block a page may carry alongside its input fields. */
|
|
78
|
+
export const displayBlockKind = z.enum(['heading', 'body', 'image']);
|
|
79
|
+
/**
|
|
80
|
+
* One ordered, display-only block on a form page (never an input): a `heading` or
|
|
81
|
+
* `body` text block, or an `image`. `text` carries a heading/body's words; `src`/`alt`
|
|
82
|
+
* carry an image's source and alt text. An optional `slot` names a data key whose value
|
|
83
|
+
* the block shows in place of static `text` — filled from `format_payload.data` at send
|
|
84
|
+
* and/or by a reaction's `display` update (so a computed total is a display slot, not a
|
|
85
|
+
* special case). Every text field is `.nullish()` (absent OR explicit `null` both parse
|
|
86
|
+
* to absent) so a block that omits a key — or sends an explicit `null` — is not a
|
|
87
|
+
* whole-page parse failure. Applied per block by the preview (safeParsed via its page),
|
|
88
|
+
* so a malformed block is a loud notice, never silent.
|
|
89
|
+
*/
|
|
90
|
+
export const displayBlock = z.object({
|
|
91
|
+
kind: displayBlockKind,
|
|
92
|
+
text: z.string().nullish(),
|
|
93
|
+
src: z.string().nullish(),
|
|
94
|
+
alt: z.string().nullish(),
|
|
95
|
+
slot: z.string().nullish(),
|
|
96
|
+
});
|
|
97
|
+
/** A page's role: an ordinary `input` page (default) or a terminal `review` summary. */
|
|
98
|
+
export const formPageKind = z.enum(['input', 'review']);
|
|
77
99
|
/**
|
|
78
100
|
* One page of a stepped `form`: a `title` and the ordered top-level property names it
|
|
79
101
|
* groups. `format_payload.pages` is the ordered list of these; absent = one page. The
|
|
80
102
|
* form preview safeParses the list, so a malformed page is a loud notice, never silent.
|
|
103
|
+
*
|
|
104
|
+
* `display` is the ordered list of display-only blocks the page shows alongside (or
|
|
105
|
+
* instead of, for a review page) its input fields; it defaults to empty, so a page that
|
|
106
|
+
* carries none renders exactly as before. `kind` marks a `review` page — a terminal
|
|
107
|
+
* summary step that shows the readback of entered values and the confirm/submit footer
|
|
108
|
+
* and carries no new input fields; it defaults to `input`. Both are additive: an older
|
|
109
|
+
* payload ({title, fields}) parses unchanged.
|
|
81
110
|
*/
|
|
82
111
|
export const formPage = z.object({
|
|
83
112
|
title: z.string(),
|
|
84
113
|
fields: z.array(z.string()),
|
|
114
|
+
display: z.array(displayBlock).default([]),
|
|
115
|
+
kind: formPageKind.default('input'),
|
|
85
116
|
});
|
|
86
117
|
/** The `form` pages list (`format_payload.pages`), safeParsed as a whole by the preview. */
|
|
87
118
|
export const formPages = z.array(formPage);
|
|
119
|
+
/**
|
|
120
|
+
* When a `form` reacts while it is open (`format_payload.reactions`): the plain,
|
|
121
|
+
* renderer-readable description of WHEN the form calls its reaction handler. Absent ⇒ a
|
|
122
|
+
* static (non-reacting) form, exactly as before. `field_changed` names the fields whose
|
|
123
|
+
* change triggers a reaction; `page_advanced` names the pages (by title) whose advance
|
|
124
|
+
* triggers one; `submitted` is true when the submission is checked by a reaction before
|
|
125
|
+
* acceptance; `choices` names the fields whose CHOICE LISTS a reaction may replace while
|
|
126
|
+
* the form is open (for such a field the send-time option list is advisory — the consumer
|
|
127
|
+
* owns membership at the `submitted` event). Every member defaults to empty/false so a
|
|
128
|
+
* partial declaration parses; a malformed block is a loud notice via the preview.
|
|
129
|
+
*/
|
|
130
|
+
export const formReactions = z.object({
|
|
131
|
+
field_changed: z.array(z.string()).default([]),
|
|
132
|
+
page_advanced: z.array(z.string()).default([]),
|
|
133
|
+
submitted: z.boolean().default(false),
|
|
134
|
+
choices: z.array(z.string()).default([]),
|
|
135
|
+
});
|
|
136
|
+
/**
|
|
137
|
+
* The form update a reaction door returns (`POST /api/interactions/{id}/react`): the
|
|
138
|
+
* same kind of data a form is sent with, applied to the open form. `values` sets field
|
|
139
|
+
* values; `options` replaces the per-send choice list of option-bearing fields; `errors`
|
|
140
|
+
* shows per-field messages (keyed by field name); `display` fills display slots (keyed by
|
|
141
|
+
* slot name) — a computed total among them. Every member defaults to empty, so a reaction
|
|
142
|
+
* that touches only one of them returns only that one. The door response is safeParsed, so
|
|
143
|
+
* a malformed update surfaces loudly rather than applying a half-understood change.
|
|
144
|
+
*/
|
|
145
|
+
export const formUpdate = z.object({
|
|
146
|
+
values: z.record(z.string(), z.unknown()).default({}),
|
|
147
|
+
options: z.record(z.string(), z.array(formOption)).default({}),
|
|
148
|
+
errors: z.record(z.string(), z.string()).default({}),
|
|
149
|
+
display: z.record(z.string(), z.unknown()).default({}),
|
|
150
|
+
});
|
|
151
|
+
/**
|
|
152
|
+
* The event a reaction round-trip reports to the door: `kind` is which of the three
|
|
153
|
+
* declared events fired, `field` names the changed field for a `field_changed` event, and
|
|
154
|
+
* `page` names the advanced-from page (by title) for a `page_advanced` event. A
|
|
155
|
+
* `submitted` event carries neither. The body also carries the partial `values` filled so
|
|
156
|
+
* far (see {@link interactionsClient}'s `reactInteraction`).
|
|
157
|
+
*/
|
|
158
|
+
export const reactionEventKind = z.enum(['field_changed', 'page_advanced', 'submitted']);
|
|
159
|
+
export const reactionEvent = z.object({
|
|
160
|
+
kind: reactionEventKind,
|
|
161
|
+
field: z.string().optional(),
|
|
162
|
+
page: z.string().optional(),
|
|
163
|
+
});
|
|
88
164
|
export const interaction = z.object({
|
|
89
165
|
interaction_id: z.string(),
|
|
90
166
|
group_id: z.string(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../src/schemas/interactions.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,iEAAiE;AACjE,iFAAiF;AACjF,+EAA+E;AAC/E,kFAAkF;AAElF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;AAGtF,0FAA0F;AAC1F,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAGnD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,SAAS;IACf,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;CAC9B,CAAC,CAAC;AAGH;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAGnF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,mBAAmB;IACzB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;IAC7B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;CAC/B,CAAC,CAAC;AAGH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;CAC5B,CAAC,CAAC;AAGH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACrD,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAC/D,CAAC,CAAC;AAGH
|
|
1
|
+
{"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../src/schemas/interactions.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -19,6 +19,18 @@ export function interactionsClient(t: Transport) {
|
|
|
19
19
|
method: 'POST',
|
|
20
20
|
body: { answer },
|
|
21
21
|
}),
|
|
22
|
+
// React to a still-open form while it is being filled: the in-app, authenticated
|
|
23
|
+
// sibling of the answer door (`POST /api/interactions/{id}/react`). It carries the
|
|
24
|
+
// event that fired (a field changed / a page advanced / the form submitted) and the
|
|
25
|
+
// partial `values` filled so far, and returns a form update to apply. It is STATELESS
|
|
26
|
+
// on the server — it records no answer and resolves no interaction — so it never
|
|
27
|
+
// substitutes for the answer door. A handler error/timeout surfaces as the shared
|
|
28
|
+
// `apiRequest` status handling (loud), never a stale value.
|
|
29
|
+
reactInteraction: (interactionId: string, event: s.ReactionEvent, values: unknown) =>
|
|
30
|
+
req(`/api/interactions/${encodeSegment(interactionId)}/react`, s.formUpdate, {
|
|
31
|
+
method: 'POST',
|
|
32
|
+
body: { event, values },
|
|
33
|
+
}),
|
|
22
34
|
// Withdraw a pending ask WITHOUT answering it (a bodyless POST): the question is
|
|
23
35
|
// resolved as cancelled and the flow that asked never resumes. Terminal like an
|
|
24
36
|
// answer, so the loud failure mappings mirror it — a 409 (already answered, so no
|
package/src/index.ts
CHANGED
|
@@ -114,6 +114,8 @@ export type {
|
|
|
114
114
|
ConversationThreadsPage,
|
|
115
115
|
ConversationTranscriptPage,
|
|
116
116
|
DashboardMetrics,
|
|
117
|
+
DisplayBlock,
|
|
118
|
+
DisplayBlockKind,
|
|
117
119
|
Extension,
|
|
118
120
|
FleetOutcome,
|
|
119
121
|
FleetReloadResult,
|
|
@@ -126,7 +128,10 @@ export type {
|
|
|
126
128
|
FormData,
|
|
127
129
|
FormOption,
|
|
128
130
|
FormPage,
|
|
131
|
+
FormPageKind,
|
|
129
132
|
FormPages,
|
|
133
|
+
FormReactions,
|
|
134
|
+
FormUpdate,
|
|
130
135
|
GrantLevel,
|
|
131
136
|
HookList,
|
|
132
137
|
HookParams,
|
|
@@ -197,6 +202,8 @@ export type {
|
|
|
197
202
|
PrincipalRef,
|
|
198
203
|
ProviderCatalogResponse,
|
|
199
204
|
ProviderView,
|
|
205
|
+
ReactionEvent,
|
|
206
|
+
ReactionEventKind,
|
|
200
207
|
RecordSearchPage,
|
|
201
208
|
ReloadConfigResult,
|
|
202
209
|
RoleAuditEvent,
|
|
@@ -91,14 +91,51 @@ export const formData = z.object({
|
|
|
91
91
|
});
|
|
92
92
|
export type FormData = z.infer<typeof formData>;
|
|
93
93
|
|
|
94
|
+
/** The kind of an ordered display block a page may carry alongside its input fields. */
|
|
95
|
+
export const displayBlockKind = z.enum(['heading', 'body', 'image']);
|
|
96
|
+
export type DisplayBlockKind = z.infer<typeof displayBlockKind>;
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* One ordered, display-only block on a form page (never an input): a `heading` or
|
|
100
|
+
* `body` text block, or an `image`. `text` carries a heading/body's words; `src`/`alt`
|
|
101
|
+
* carry an image's source and alt text. An optional `slot` names a data key whose value
|
|
102
|
+
* the block shows in place of static `text` — filled from `format_payload.data` at send
|
|
103
|
+
* and/or by a reaction's `display` update (so a computed total is a display slot, not a
|
|
104
|
+
* special case). Every text field is `.nullish()` (absent OR explicit `null` both parse
|
|
105
|
+
* to absent) so a block that omits a key — or sends an explicit `null` — is not a
|
|
106
|
+
* whole-page parse failure. Applied per block by the preview (safeParsed via its page),
|
|
107
|
+
* so a malformed block is a loud notice, never silent.
|
|
108
|
+
*/
|
|
109
|
+
export const displayBlock = z.object({
|
|
110
|
+
kind: displayBlockKind,
|
|
111
|
+
text: z.string().nullish(),
|
|
112
|
+
src: z.string().nullish(),
|
|
113
|
+
alt: z.string().nullish(),
|
|
114
|
+
slot: z.string().nullish(),
|
|
115
|
+
});
|
|
116
|
+
export type DisplayBlock = z.infer<typeof displayBlock>;
|
|
117
|
+
|
|
118
|
+
/** A page's role: an ordinary `input` page (default) or a terminal `review` summary. */
|
|
119
|
+
export const formPageKind = z.enum(['input', 'review']);
|
|
120
|
+
export type FormPageKind = z.infer<typeof formPageKind>;
|
|
121
|
+
|
|
94
122
|
/**
|
|
95
123
|
* One page of a stepped `form`: a `title` and the ordered top-level property names it
|
|
96
124
|
* groups. `format_payload.pages` is the ordered list of these; absent = one page. The
|
|
97
125
|
* form preview safeParses the list, so a malformed page is a loud notice, never silent.
|
|
126
|
+
*
|
|
127
|
+
* `display` is the ordered list of display-only blocks the page shows alongside (or
|
|
128
|
+
* instead of, for a review page) its input fields; it defaults to empty, so a page that
|
|
129
|
+
* carries none renders exactly as before. `kind` marks a `review` page — a terminal
|
|
130
|
+
* summary step that shows the readback of entered values and the confirm/submit footer
|
|
131
|
+
* and carries no new input fields; it defaults to `input`. Both are additive: an older
|
|
132
|
+
* payload ({title, fields}) parses unchanged.
|
|
98
133
|
*/
|
|
99
134
|
export const formPage = z.object({
|
|
100
135
|
title: z.string(),
|
|
101
136
|
fields: z.array(z.string()),
|
|
137
|
+
display: z.array(displayBlock).default([]),
|
|
138
|
+
kind: formPageKind.default('input'),
|
|
102
139
|
});
|
|
103
140
|
export type FormPage = z.infer<typeof formPage>;
|
|
104
141
|
|
|
@@ -106,6 +143,59 @@ export type FormPage = z.infer<typeof formPage>;
|
|
|
106
143
|
export const formPages = z.array(formPage);
|
|
107
144
|
export type FormPages = z.infer<typeof formPages>;
|
|
108
145
|
|
|
146
|
+
/**
|
|
147
|
+
* When a `form` reacts while it is open (`format_payload.reactions`): the plain,
|
|
148
|
+
* renderer-readable description of WHEN the form calls its reaction handler. Absent ⇒ a
|
|
149
|
+
* static (non-reacting) form, exactly as before. `field_changed` names the fields whose
|
|
150
|
+
* change triggers a reaction; `page_advanced` names the pages (by title) whose advance
|
|
151
|
+
* triggers one; `submitted` is true when the submission is checked by a reaction before
|
|
152
|
+
* acceptance; `choices` names the fields whose CHOICE LISTS a reaction may replace while
|
|
153
|
+
* the form is open (for such a field the send-time option list is advisory — the consumer
|
|
154
|
+
* owns membership at the `submitted` event). Every member defaults to empty/false so a
|
|
155
|
+
* partial declaration parses; a malformed block is a loud notice via the preview.
|
|
156
|
+
*/
|
|
157
|
+
export const formReactions = z.object({
|
|
158
|
+
field_changed: z.array(z.string()).default([]),
|
|
159
|
+
page_advanced: z.array(z.string()).default([]),
|
|
160
|
+
submitted: z.boolean().default(false),
|
|
161
|
+
choices: z.array(z.string()).default([]),
|
|
162
|
+
});
|
|
163
|
+
export type FormReactions = z.infer<typeof formReactions>;
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* The form update a reaction door returns (`POST /api/interactions/{id}/react`): the
|
|
167
|
+
* same kind of data a form is sent with, applied to the open form. `values` sets field
|
|
168
|
+
* values; `options` replaces the per-send choice list of option-bearing fields; `errors`
|
|
169
|
+
* shows per-field messages (keyed by field name); `display` fills display slots (keyed by
|
|
170
|
+
* slot name) — a computed total among them. Every member defaults to empty, so a reaction
|
|
171
|
+
* that touches only one of them returns only that one. The door response is safeParsed, so
|
|
172
|
+
* a malformed update surfaces loudly rather than applying a half-understood change.
|
|
173
|
+
*/
|
|
174
|
+
export const formUpdate = z.object({
|
|
175
|
+
values: z.record(z.string(), z.unknown()).default({}),
|
|
176
|
+
options: z.record(z.string(), z.array(formOption)).default({}),
|
|
177
|
+
errors: z.record(z.string(), z.string()).default({}),
|
|
178
|
+
display: z.record(z.string(), z.unknown()).default({}),
|
|
179
|
+
});
|
|
180
|
+
export type FormUpdate = z.infer<typeof formUpdate>;
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* The event a reaction round-trip reports to the door: `kind` is which of the three
|
|
184
|
+
* declared events fired, `field` names the changed field for a `field_changed` event, and
|
|
185
|
+
* `page` names the advanced-from page (by title) for a `page_advanced` event. A
|
|
186
|
+
* `submitted` event carries neither. The body also carries the partial `values` filled so
|
|
187
|
+
* far (see {@link interactionsClient}'s `reactInteraction`).
|
|
188
|
+
*/
|
|
189
|
+
export const reactionEventKind = z.enum(['field_changed', 'page_advanced', 'submitted']);
|
|
190
|
+
export type ReactionEventKind = z.infer<typeof reactionEventKind>;
|
|
191
|
+
|
|
192
|
+
export const reactionEvent = z.object({
|
|
193
|
+
kind: reactionEventKind,
|
|
194
|
+
field: z.string().optional(),
|
|
195
|
+
page: z.string().optional(),
|
|
196
|
+
});
|
|
197
|
+
export type ReactionEvent = z.infer<typeof reactionEvent>;
|
|
198
|
+
|
|
109
199
|
export const interaction = z.object({
|
|
110
200
|
interaction_id: z.string(),
|
|
111
201
|
group_id: z.string(),
|