@bitbitpress/client 1.1.0-alpha.1 → 1.1.1

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 (107) hide show
  1. package/README.md +82 -10
  2. package/dist/generated/openapi.d.ts +493 -18
  3. package/dist/index.d.ts +1 -1
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/react/index.d.ts +29 -54
  6. package/dist/react/index.d.ts.map +1 -1
  7. package/dist/react/index.js +69 -81
  8. package/dist/react/index.js.map +1 -1
  9. package/dist/react-native-expo/index.d.ts +1 -52
  10. package/dist/react-native-expo/index.d.ts.map +1 -1
  11. package/dist/react-native-expo/index.js +1 -91
  12. package/dist/react-native-expo/index.js.map +1 -1
  13. package/dist/runtime/index.d.ts +60 -0
  14. package/dist/runtime/index.d.ts.map +1 -0
  15. package/dist/runtime/index.js +84 -0
  16. package/dist/runtime/index.js.map +1 -0
  17. package/dist/synthesisUi/context.d.ts +18 -0
  18. package/dist/synthesisUi/context.d.ts.map +1 -0
  19. package/dist/synthesisUi/context.js +15 -0
  20. package/dist/synthesisUi/context.js.map +1 -0
  21. package/dist/synthesisUi/types.d.ts +30 -0
  22. package/dist/synthesisUi/types.d.ts.map +1 -0
  23. package/dist/{synthesisView → synthesisUi}/types.js.map +1 -1
  24. package/dist/user/index.d.ts +59 -11
  25. package/dist/user/index.d.ts.map +1 -1
  26. package/dist/user/index.js +12 -6
  27. package/dist/user/index.js.map +1 -1
  28. package/dist/user/interaction.d.ts +7 -0
  29. package/dist/user/interaction.d.ts.map +1 -1
  30. package/dist/user/interaction.js +7 -0
  31. package/dist/user/interaction.js.map +1 -1
  32. package/dist/user/submissions.d.ts +65 -0
  33. package/dist/user/submissions.d.ts.map +1 -1
  34. package/dist/user/submissions.js +57 -0
  35. package/dist/user/submissions.js.map +1 -1
  36. package/dist/user/synthesize-batch-manager.js +3 -0
  37. package/dist/user/synthesize-batch-manager.js.map +1 -1
  38. package/dist/user/synthesize.d.ts +40 -3
  39. package/dist/user/synthesize.d.ts.map +1 -1
  40. package/dist/user/synthesize.js +12 -3
  41. package/dist/user/synthesize.js.map +1 -1
  42. package/dist/user/synthesizeUi.d.ts +67 -0
  43. package/dist/user/synthesizeUi.d.ts.map +1 -0
  44. package/dist/user/synthesizeUi.js +51 -0
  45. package/dist/user/synthesizeUi.js.map +1 -0
  46. package/dist/user/track-batch-manager.d.ts +17 -0
  47. package/dist/user/track-batch-manager.d.ts.map +1 -0
  48. package/dist/user/track-batch-manager.js +52 -0
  49. package/dist/user/track-batch-manager.js.map +1 -0
  50. package/dist/user/track.d.ts +17 -0
  51. package/dist/user/track.d.ts.map +1 -0
  52. package/dist/user/track.js +24 -0
  53. package/dist/user/track.js.map +1 -0
  54. package/dist/user/typeDefs.d.ts +9 -3
  55. package/dist/user/typeDefs.d.ts.map +1 -1
  56. package/package.json +1 -1
  57. package/dist/react/primitives.d.ts +0 -54
  58. package/dist/react/primitives.d.ts.map +0 -1
  59. package/dist/react/primitives.js +0 -223
  60. package/dist/react/primitives.js.map +0 -1
  61. package/dist/react-native-expo/primitives.d.ts +0 -58
  62. package/dist/react-native-expo/primitives.d.ts.map +0 -1
  63. package/dist/react-native-expo/primitives.js +0 -218
  64. package/dist/react-native-expo/primitives.js.map +0 -1
  65. package/dist/synthesisView/context.d.ts +0 -18
  66. package/dist/synthesisView/context.d.ts.map +0 -1
  67. package/dist/synthesisView/context.js +0 -15
  68. package/dist/synthesisView/context.js.map +0 -1
  69. package/dist/synthesisView/createComponentMap.d.ts +0 -18
  70. package/dist/synthesisView/createComponentMap.d.ts.map +0 -1
  71. package/dist/synthesisView/createComponentMap.js +0 -40
  72. package/dist/synthesisView/createComponentMap.js.map +0 -1
  73. package/dist/synthesisView/devLog.d.ts +0 -10
  74. package/dist/synthesisView/devLog.d.ts.map +0 -1
  75. package/dist/synthesisView/devLog.js +0 -23
  76. package/dist/synthesisView/devLog.js.map +0 -1
  77. package/dist/synthesisView/engine.d.ts +0 -35
  78. package/dist/synthesisView/engine.d.ts.map +0 -1
  79. package/dist/synthesisView/engine.js +0 -139
  80. package/dist/synthesisView/engine.js.map +0 -1
  81. package/dist/synthesisView/primitives.d.ts +0 -180
  82. package/dist/synthesisView/primitives.d.ts.map +0 -1
  83. package/dist/synthesisView/primitives.js +0 -29
  84. package/dist/synthesisView/primitives.js.map +0 -1
  85. package/dist/synthesisView/resolve.d.ts +0 -17
  86. package/dist/synthesisView/resolve.d.ts.map +0 -1
  87. package/dist/synthesisView/resolve.js +0 -42
  88. package/dist/synthesisView/resolve.js.map +0 -1
  89. package/dist/synthesisView/types.d.ts +0 -121
  90. package/dist/synthesisView/types.d.ts.map +0 -1
  91. package/dist/synthesisView/useEventDrivenView.d.ts +0 -32
  92. package/dist/synthesisView/useEventDrivenView.d.ts.map +0 -1
  93. package/dist/synthesisView/useEventDrivenView.js +0 -157
  94. package/dist/synthesisView/useEventDrivenView.js.map +0 -1
  95. package/dist/synthesisView/useSynthesisView.d.ts +0 -13
  96. package/dist/synthesisView/useSynthesisView.d.ts.map +0 -1
  97. package/dist/synthesisView/useSynthesisView.js +0 -49
  98. package/dist/synthesisView/useSynthesisView.js.map +0 -1
  99. package/dist/user/synthesize-view-batch-manager.d.ts +0 -17
  100. package/dist/user/synthesize-view-batch-manager.d.ts.map +0 -1
  101. package/dist/user/synthesize-view-batch-manager.js +0 -52
  102. package/dist/user/synthesize-view-batch-manager.js.map +0 -1
  103. package/dist/user/synthesizeView.d.ts +0 -41
  104. package/dist/user/synthesizeView.d.ts.map +0 -1
  105. package/dist/user/synthesizeView.js +0 -26
  106. package/dist/user/synthesizeView.js.map +0 -1
  107. /package/dist/{synthesisView → synthesisUi}/types.js +0 -0
@@ -0,0 +1,18 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { SynthesizeUiFetcher } from './types.js';
3
+ export type BitBitContextValue = {
4
+ /** Client `<BitBitSynthesis>` fetches generated UIs through, so it can be
5
+ * set once here instead of passed to every instance. */
6
+ client?: SynthesizeUiFetcher;
7
+ };
8
+ /**
9
+ * Registers shared SDK config: the `client` `<BitBitSynthesis>` fetches
10
+ * generated UIs through. Platform-agnostic, so this provider is shared by the
11
+ * web and native entries.
12
+ */
13
+ export declare function BitBitProvider({ client, children, }: {
14
+ client?: SynthesizeUiFetcher;
15
+ children: ReactNode;
16
+ }): import("react/jsx-runtime").JSX.Element;
17
+ export declare function useBitBitContext(): BitBitContextValue | null;
18
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/synthesisUi/context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAc,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,MAAM,kBAAkB,GAAG;IAC/B;6DACyD;IACzD,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAIF;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,QAAQ,EAAE,SAAS,CAAC;CACrB,2CAEA;AAED,wBAAgB,gBAAgB,IAAI,kBAAkB,GAAG,IAAI,CAE5D"}
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createContext, useContext } from 'react';
3
+ const BitBitContext = createContext(null);
4
+ /**
5
+ * Registers shared SDK config: the `client` `<BitBitSynthesis>` fetches
6
+ * generated UIs through. Platform-agnostic, so this provider is shared by the
7
+ * web and native entries.
8
+ */
9
+ export function BitBitProvider({ client, children, }) {
10
+ return _jsx(BitBitContext.Provider, { value: { client }, children: children });
11
+ }
12
+ export function useBitBitContext() {
13
+ return useContext(BitBitContext);
14
+ }
15
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/synthesisUi/context.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAkB,UAAU,EAAE,MAAM,OAAO,CAAC;AASlE,MAAM,aAAa,GAAG,aAAa,CAA4B,IAAI,CAAC,CAAC;AAErE;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,EAC7B,MAAM,EACN,QAAQ,GAIT;IACC,OAAO,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,MAAM,EAAE,YAAG,QAAQ,GAA0B,CAAC;AACxF,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,UAAU,CAAC,aAAa,CAAC,CAAC;AACnC,CAAC"}
@@ -0,0 +1,30 @@
1
+ export type SynthesisUiPlatform = 'web' | 'mobile';
2
+ /** Per-UI stream event the fetcher yields: a `manifest` (bundle ref + theme),
3
+ * then `data` events as the synthesis output streams in. */
4
+ export type SynthesisUiStreamEvent = {
5
+ type: 'manifest';
6
+ bundleUrl?: string | null;
7
+ bundleSource?: string | null;
8
+ theme: Record<string, string>;
9
+ } | {
10
+ type: 'data';
11
+ data: unknown;
12
+ complete: boolean;
13
+ } | {
14
+ type: 'error';
15
+ error: string;
16
+ };
17
+ /**
18
+ * Minimal structural shape `<BitBitSynthesis>` needs to fetch a UI. A
19
+ * `BitBitPressClient` satisfies it via `client.user.synthesizeUi(...)`; the
20
+ * CMS studio passes a preview fetcher that resolves the draft instead.
21
+ */
22
+ export interface SynthesizeUiFetcher {
23
+ user: {
24
+ synthesizeUi(request: {
25
+ keyName: string;
26
+ platform?: SynthesisUiPlatform;
27
+ }): AsyncIterable<SynthesisUiStreamEvent> | Promise<AsyncIterable<SynthesisUiStreamEvent>>;
28
+ };
29
+ }
30
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/synthesisUi/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEnD;6DAC6D;AAC7D,MAAM,MAAM,sBAAsB,GAC9B;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B,GACD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAErC;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE;QACJ,YAAY,CAAC,OAAO,EAAE;YACpB,OAAO,EAAE,MAAM,CAAC;YAChB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;SAChC,GAAG,aAAa,CAAC,sBAAsB,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,CAAC;KAC5F,CAAC;CACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/synthesisView/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/synthesisUi/types.ts"],"names":[],"mappings":""}
@@ -5,11 +5,12 @@ import { type ProfileResponse, type ProfileUpdateRequest } from './profile.js';
5
5
  import { type RecommendationsRequest, type RecommendationsResponse } from './recommendations.js';
6
6
  import { type ReportRequest, type ReportResponse } from './report.js';
7
7
  import { type Signal, type SignalRequest, type SignalResponse } from './signal.js';
8
- import { type CreateUserSubmissionRequest, type CreateUserSubmissionResponse, type ListUserSubmissionsRequest, type ListUserSubmissionsResponse } from './submissions.js';
8
+ import { type CreateUserSubmissionRequest, type CreateUserSubmissionResponse, type ListUserSubmissionsRequest, type ListUserSubmissionsResponse, type SubmissionFeed, type SubmissionState, type SubmitRequest, type SubmitResponse } from './submissions.js';
9
9
  import { type SynthesizeEvent, type SynthesizeItemResponse } from './synthesize.js';
10
10
  import { type SynthesizeOnStreamingData } from './synthesize-batch-manager.js';
11
- import { type SynthesizeViewRequestItem, type SynthesizeViewResponse } from './synthesizeView.js';
11
+ import { type SynthesisUiStreamEvent, type SynthesizeUiEvent, type SynthesizeUiRequest, type SynthesizeUiRequestItem } from './synthesizeUi.js';
12
12
  import { type TokenRequest, type TokenResponse } from './token.js';
13
+ import { type TrackEvent, type TrackRequest, type TrackResponse } from './track.js';
13
14
  import type { SynthesizeItem, SynthesizeItems } from './typeDefs.js';
14
15
  /**
15
16
  * User-related API methods interface (aligned with OpenAPI spec paths).
@@ -72,6 +73,35 @@ export interface UserMethods {
72
73
  * @returns Live submissions and pagination cursor
73
74
  */
74
75
  submissions(keyName: string, options?: ListUserSubmissionsRequest): Promise<NonNullable<ListUserSubmissionsResponse>>;
76
+ /**
77
+ * Submit content (a poll vote or a contest entry) tied to a synthesis output.
78
+ * One submission per user per piece — re-submitting overwrites the prior one.
79
+ *
80
+ * @param options - synthesisOutputId, structured data, optional files
81
+ * @returns Created/updated submission and any presigned file upload URLs
82
+ */
83
+ submit(options: SubmitRequest): Promise<NonNullable<SubmitResponse>>;
84
+ /**
85
+ * Read one submittable piece: the public aggregate (total + per-value counts)
86
+ * and this user's own submission (null if none). For a poll: results + whether
87
+ * the user has voted.
88
+ *
89
+ * @param options - synthesisOutputId (and optional synthesisOutputContentKey)
90
+ */
91
+ submissionState(options: {
92
+ synthesisOutputId: string;
93
+ synthesisOutputContentKey?: string;
94
+ }): Promise<SubmissionState>;
95
+ /**
96
+ * List the public feed of LIVE submissions for a synthesis output (paginated).
97
+ *
98
+ * @param options - synthesisOutputId and optional pagination (first, after)
99
+ */
100
+ submissionFeed(options: {
101
+ synthesisOutputId: string;
102
+ first?: number;
103
+ after?: string;
104
+ }): Promise<SubmissionFeed>;
75
105
  /**
76
106
  * Record user signals (e.g. clicked topic, read article) to inform profile and recommendations.
77
107
  *
@@ -86,6 +116,19 @@ export interface UserMethods {
86
116
  * @returns Promise that resolves with response data (recorded: boolean)
87
117
  */
88
118
  signalItem(signal: Signal): Promise<NonNullable<SignalResponse>>;
119
+ /**
120
+ * Record behavioral events (views, clicks) for synthesis UIs, addressed by `keyName`.
121
+ *
122
+ * @param options - events array
123
+ * @returns Promise that resolves with response data (recorded: boolean)
124
+ */
125
+ track(options: TrackRequest): Promise<NonNullable<TrackResponse>>;
126
+ /**
127
+ * Record a single event (batched). Events are sent together after the configured timeout.
128
+ *
129
+ * @param event - Single event to record
130
+ */
131
+ trackItem(event: TrackEvent): Promise<NonNullable<TrackResponse>>;
89
132
  /**
90
133
  * Synthesize content items personalized to the user (streaming SSE).
91
134
  *
@@ -105,6 +148,9 @@ export interface UserMethods {
105
148
  */
106
149
  synthesizeItem(item: SynthesizeItem, onStreamingData?: SynthesizeOnStreamingData): Promise<SynthesizeItemResponse>;
107
150
  /**
151
+ * @deprecated Use `submissionState` keyed by the poll's `synthesisOutputId`.
152
+ * Kept for older app builds; removed once `/v1/user/interactions` is.
153
+ *
108
154
  * Batch-resolve interaction state for items from a synthesis output.
109
155
  * Returns aggregates and whether the current user has already responded to each.
110
156
  *
@@ -113,6 +159,9 @@ export interface UserMethods {
113
159
  */
114
160
  interactions(options: InteractionsRequest): Promise<NonNullable<InteractionsResponse>>;
115
161
  /**
162
+ * @deprecated Use `submit` keyed by the poll's `synthesisOutputId`. Kept for
163
+ * older app builds; removed once `/v1/user/interactions` is.
164
+ *
116
165
  * Submit or update a response to an interaction (e.g. a poll answer). Returns updated aggregates.
117
166
  *
118
167
  * @param interactionId - ID of the interaction to respond to
@@ -121,20 +170,19 @@ export interface UserMethods {
121
170
  */
122
171
  respondToInteraction(interactionId: string, options: InteractionResponseRequest): Promise<NonNullable<InteractionResponseResponse>>;
123
172
  /**
124
- * Resolve one or more synthesis views in a single request. Responses are
125
- * returned in the same order as `items`; an item that matches no view
126
- * resolves to `{ uiData: [] }`.
173
+ * Resolve a generated SynthesisUI by `keyName` for a platform, as a per-UI
174
+ * stream (manifest, then data). This is the path `<BitBitSynthesis>` uses
175
+ * under the hood.
127
176
  */
128
- synthesizeViews(items: SynthesizeViewRequestItem[]): Promise<SynthesizeViewResponse[]>;
177
+ synthesizeUi(request: SynthesizeUiRequest): Promise<AsyncIterable<SynthesisUiStreamEvent>>;
129
178
  /**
130
- * Resolve a single view by `keyName`. Calls within a short window are
131
- * coalesced into one batched request. This is the path `<BitBitView>` uses
132
- * under the hood.
179
+ * Resolve multiple generated SynthesisUIs in one request. Streams a manifest
180
+ * (bundles + theme) then per-item data events, index-matched to `items`.
133
181
  */
134
- synthesizeViewItem(item: SynthesizeViewRequestItem): Promise<SynthesizeViewResponse>;
182
+ synthesizeUis(items: SynthesizeUiRequestItem[], platform?: SynthesizeUiRequest['platform']): Promise<AsyncIterable<SynthesizeUiEvent>>;
135
183
  }
136
184
  /**
137
185
  * User-related API methods (uses shared auth store).
138
186
  */
139
- export declare function createUserMethods(authStore: AuthStore, config: RequestConfig, synthesizeBatchTimeout?: number, signalBatchTimeout?: number, synthesizeViewBatchTimeout?: number): UserMethods;
187
+ export declare function createUserMethods(authStore: AuthStore, config: RequestConfig, synthesizeBatchTimeout?: number, signalBatchTimeout?: number): UserMethods;
140
188
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/user/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/user/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAE1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAE1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAa,MAAM,aAAa,CAAC;AACjF,OAAO,EAAgB,KAAK,MAAM,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAEjG,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EAGjC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAGhC,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,cAAc,EAEpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,sBAAsB,EAAc,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAG7B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAiB,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAClF,OAAO,EAAgB,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAElG,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAElE;;;;OAIG;IACH,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC;IAEjD;;;;;;OAMG;IACH,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC;IAEpF;;;;;OAKG;IACH,eAAe,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAEjG;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAErE;;;;;OAKG;IACH,gBAAgB,CACd,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC,CAAC;IAEtD;;;;;;OAMG;IACH,WAAW,CACT,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAErD;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAErE;;;;;;OAMG;IACH,eAAe,CAAC,OAAO,EAAE;QACvB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,yBAAyB,CAAC,EAAE,MAAM,CAAC;KACpC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE7B;;;;OAIG;IACH,cAAc,CAAC,OAAO,EAAE;QACtB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAE5B;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAErE;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAEjE;;;;;OAKG;IACH,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;IAElE;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;IAElE;;;;;;OAMG;IACH,UAAU,CACR,KAAK,EAAE,eAAe,EACtB,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,GACrE,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC;IAE3C;;;;;;OAMG;IACH,cAAc,CACZ,IAAI,EAAE,cAAc,EACpB,eAAe,CAAC,EAAE,yBAAyB,GAC1C,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEnC;;;;;;;;;OASG;IACH,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAEvF;;;;;;;;;OASG;IACH,oBAAoB,CAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAErD;;;;OAIG;IACH,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAE3F;;;OAGG;IACH,aAAa,CACX,KAAK,EAAE,uBAAuB,EAAE,EAChC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,UAAU,CAAC,GACzC,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;CAC9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,aAAa,EACrB,sBAAsB,GAAE,MAAY,EACpC,kBAAkB,GAAE,MAAY,GAC/B,WAAW,CAyEb"}
@@ -10,17 +10,18 @@ const signal_batch_manager_js_1 = require("./signal-batch-manager.js");
10
10
  const submissions_js_1 = require("./submissions.js");
11
11
  const synthesize_js_1 = require("./synthesize.js");
12
12
  const synthesize_batch_manager_js_1 = require("./synthesize-batch-manager.js");
13
- const synthesize_view_batch_manager_js_1 = require("./synthesize-view-batch-manager.js");
14
- const synthesizeView_js_1 = require("./synthesizeView.js");
13
+ const synthesizeUi_js_1 = require("./synthesizeUi.js");
15
14
  const token_js_1 = require("./token.js");
15
+ const track_js_1 = require("./track.js");
16
+ const track_batch_manager_js_1 = require("./track-batch-manager.js");
16
17
  /**
17
18
  * User-related API methods (uses shared auth store).
18
19
  */
19
- function createUserMethods(authStore, config, synthesizeBatchTimeout = 250, signalBatchTimeout = 250, synthesizeViewBatchTimeout = 50) {
20
+ function createUserMethods(authStore, config, synthesizeBatchTimeout = 250, signalBatchTimeout = 250) {
20
21
  const getConfigWithToken = authStore.getConfigWithToken.bind(authStore);
21
22
  const synthesizeBatchManager = new synthesize_batch_manager_js_1.SynthesizeBatchManager(getConfigWithToken, synthesizeBatchTimeout);
22
23
  const signalBatchManager = new signal_batch_manager_js_1.SignalBatchManager(getConfigWithToken, signalBatchTimeout);
23
- const synthesizeViewBatchManager = new synthesize_view_batch_manager_js_1.SynthesizeViewBatchManager(getConfigWithToken, synthesizeViewBatchTimeout);
24
+ const trackBatchManager = new track_batch_manager_js_1.TrackBatchManager(getConfigWithToken, signalBatchTimeout);
24
25
  return {
25
26
  authenticate: authStore.authenticate.bind(authStore),
26
27
  token: (ssoToken) => (0, token_js_1.exchangeToken)(config, ssoToken),
@@ -30,14 +31,19 @@ function createUserMethods(authStore, config, synthesizeBatchTimeout = 250, sign
30
31
  report: (options) => getConfigWithToken().then((cfg) => (0, report_js_1.reportBit)(cfg, options)),
31
32
  createSubmission: (options) => getConfigWithToken().then((cfg) => (0, submissions_js_1.createUserSubmission)(cfg, options)),
32
33
  submissions: (keyName, options) => getConfigWithToken().then((cfg) => (0, submissions_js_1.listUserSubmissions)(cfg, keyName, options)),
34
+ submit: (options) => getConfigWithToken().then((cfg) => (0, submissions_js_1.submit)(cfg, options)),
35
+ submissionState: (options) => getConfigWithToken().then((cfg) => (0, submissions_js_1.getSubmissionState)(cfg, options)),
36
+ submissionFeed: (options) => getConfigWithToken().then((cfg) => (0, submissions_js_1.listSubmissionFeed)(cfg, options)),
33
37
  signal: (options) => getConfigWithToken().then((cfg) => (0, signal_js_1.recordSignal)(cfg, options)),
34
38
  signalItem: (signal) => signalBatchManager.addSignal(signal),
39
+ track: (options) => getConfigWithToken().then((cfg) => (0, track_js_1.recordEvents)(cfg, options)),
40
+ trackItem: (event) => trackBatchManager.addEvent(event),
35
41
  synthesize: (items, options) => getConfigWithToken().then((cfg) => (0, synthesize_js_1.synthesize)(cfg, items, options)),
36
42
  synthesizeItem: (item, onStreamingData) => synthesizeBatchManager.addItem(item, onStreamingData),
37
43
  interactions: (options) => getConfigWithToken().then((cfg) => (0, interaction_js_1.getInteractions)(cfg, options)),
38
44
  respondToInteraction: (interactionId, options) => getConfigWithToken().then((cfg) => (0, interaction_js_1.respondToInteraction)(cfg, interactionId, options)),
39
- synthesizeViews: (items) => getConfigWithToken().then((cfg) => (0, synthesizeView_js_1.synthesizeViews)(cfg, items)),
40
- synthesizeViewItem: (item) => synthesizeViewBatchManager.addItem(item),
45
+ synthesizeUi: (request) => getConfigWithToken().then((cfg) => (0, synthesizeUi_js_1.synthesizeUi)(cfg, request)),
46
+ synthesizeUis: (items, platform) => getConfigWithToken().then((cfg) => (0, synthesizeUi_js_1.synthesizeUis)(cfg, items, platform)),
41
47
  };
42
48
  }
43
49
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/user/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/user/index.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ export type InteractionResponseResponse = paths['/v1/user/interactions/{interact
7
7
  /** Single resolved interaction item (id, type, content, hasResponded, aggregates). */
8
8
  export type InteractionItem = InteractionsResponse[number];
9
9
  /**
10
+ * @deprecated Use the submission methods (`submissionState`) keyed by the
11
+ * poll's `synthesisOutputId`. Kept for older app builds; removed once the
12
+ * `/v1/user/interactions` endpoint is.
13
+ *
10
14
  * Batch-resolve interaction state for items from a synthesis output.
11
15
  * Returns aggregates and whether the current user has already responded to each.
12
16
  *
@@ -16,6 +20,9 @@ export type InteractionItem = InteractionsResponse[number];
16
20
  */
17
21
  export declare function getInteractions(config: RequestConfig, options: InteractionsRequest): Promise<NonNullable<InteractionsResponse>>;
18
22
  /**
23
+ * @deprecated Use `submit` keyed by the poll's `synthesisOutputId`. Kept for
24
+ * older app builds; removed once the `/v1/user/interactions` endpoint is.
25
+ *
19
26
  * Submit or update a response to an interaction (e.g. a poll answer). Returns updated aggregates.
20
27
  *
21
28
  * @param config - Request configuration with base URL, timeout, fetch, and optional token
@@ -1 +1 @@
1
- {"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/user/interaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,MAAM,MAAM,mBAAmB,GAC7B,KAAK,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACvF,MAAM,MAAM,oBAAoB,GAC9B,KAAK,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElG,MAAM,MAAM,0BAA0B,GACpC,KAAK,CAAC,iDAAiD,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACjH,MAAM,MAAM,2BAA2B,GACrC,KAAK,CAAC,iDAAiD,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5H,sFAAsF;AACtF,MAAM,MAAM,eAAe,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAE3D;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAY5C;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,aAAa,EACrB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC,CAYnD"}
1
+ {"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/user/interaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,MAAM,MAAM,mBAAmB,GAC7B,KAAK,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACvF,MAAM,MAAM,oBAAoB,GAC9B,KAAK,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElG,MAAM,MAAM,0BAA0B,GACpC,KAAK,CAAC,iDAAiD,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACjH,MAAM,MAAM,2BAA2B,GACrC,KAAK,CAAC,iDAAiD,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5H,sFAAsF;AACtF,MAAM,MAAM,eAAe,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAE3D;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAY5C;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,aAAa,EACrB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC,CAYnD"}
@@ -4,6 +4,10 @@ exports.getInteractions = getInteractions;
4
4
  exports.respondToInteraction = respondToInteraction;
5
5
  const request_js_1 = require("../request.js");
6
6
  /**
7
+ * @deprecated Use the submission methods (`submissionState`) keyed by the
8
+ * poll's `synthesisOutputId`. Kept for older app builds; removed once the
9
+ * `/v1/user/interactions` endpoint is.
10
+ *
7
11
  * Batch-resolve interaction state for items from a synthesis output.
8
12
  * Returns aggregates and whether the current user has already responded to each.
9
13
  *
@@ -23,6 +27,9 @@ async function getInteractions(config, options) {
23
27
  return response;
24
28
  }
25
29
  /**
30
+ * @deprecated Use `submit` keyed by the poll's `synthesisOutputId`. Kept for
31
+ * older app builds; removed once the `/v1/user/interactions` endpoint is.
32
+ *
26
33
  * Submit or update a response to an interaction (e.g. a poll answer). Returns updated aggregates.
27
34
  *
28
35
  * @param config - Request configuration with base URL, timeout, fetch, and optional token
@@ -1 +1 @@
1
- {"version":3,"file":"interaction.js","sourceRoot":"","sources":["../../src/user/interaction.ts"],"names":[],"mappings":";;AAyBA,0CAeC;AAUD,oDAgBC;AAhED,8CAA4C;AAe5C;;;;;;;GAOG;AACI,KAAK,UAAU,eAAe,CACnC,MAAqB,EACrB,OAA4B;IAE5B,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAAuB,MAAM,EAAE;QAC/D,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,uBAAuB;QAC7B,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAqB,EACrB,aAAqB,EACrB,OAAmC;IAEnC,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAA8B,MAAM,EAAE;QACtE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,yBAAyB,aAAa,YAAY;QACxD,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"interaction.js","sourceRoot":"","sources":["../../src/user/interaction.ts"],"names":[],"mappings":";;AA6BA,0CAeC;AAaD,oDAgBC;AAvED,8CAA4C;AAe5C;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,eAAe,CACnC,MAAqB,EACrB,OAA4B;IAE5B,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAAuB,MAAM,EAAE;QAC/D,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,uBAAuB;QAC7B,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAqB,EACrB,aAAqB,EACrB,OAAmC;IAEnC,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAA8B,MAAM,EAAE;QACtE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,yBAAyB,aAAa,YAAY;QACxD,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -21,4 +21,69 @@ export declare function createUserSubmission(config: RequestConfig, options: Cre
21
21
  * @returns Live submissions and pagination cursor
22
22
  */
23
23
  export declare function listUserSubmissions(config: RequestConfig, keyName: string, options?: ListUserSubmissionsRequest): Promise<NonNullable<ListUserSubmissionsResponse>>;
24
+ export type SubmitRequest = paths['/v1/user/submissions']['post']['requestBody']['content']['application/json'];
25
+ export type SubmitResponse = paths['/v1/user/submissions']['post']['responses'][200]['content']['application/json']['data'];
26
+ /** Tallies for one submittable piece. `submissionCounts` is keyed by the
27
+ * config's `aggregateField` value (e.g. a poll's selected option). */
28
+ export interface SubmissionAggregate {
29
+ total: number;
30
+ submissionCounts?: Record<string, number>;
31
+ byState?: Record<string, number>;
32
+ }
33
+ /** An uploaded file with a presigned download URL (only confirmed uploads
34
+ * appear). Use it to show a submission's images/files. */
35
+ export interface SubmissionFile {
36
+ field: string;
37
+ contentType: string;
38
+ fileName?: string;
39
+ downloadUrl: string;
40
+ }
41
+ /** A submission as exposed to app users. Used both for the public feed and for
42
+ * the caller's own submission (which `submissionState` returns regardless of
43
+ * whether it's live yet). */
44
+ export interface PublicSubmission {
45
+ id: string;
46
+ data: Record<string, unknown>;
47
+ files: SubmissionFile[];
48
+ createdAt: string;
49
+ }
50
+ export interface SubmissionState {
51
+ aggregate: SubmissionAggregate;
52
+ ownSubmission: PublicSubmission | null;
53
+ }
54
+ export interface SubmissionFeed {
55
+ cursor: string | null;
56
+ items: PublicSubmission[];
57
+ }
58
+ /**
59
+ * Submit content (a poll vote or a contest entry) tied to a synthesis output.
60
+ * One submission per user per piece — re-submitting overwrites the prior one.
61
+ *
62
+ * @param options - synthesisOutputId, structured data, optional files (and
63
+ * optional synthesisOutputContentKey; omit for one-piece-per-output)
64
+ * @returns Created/updated submission and any presigned file upload URLs
65
+ */
66
+ export declare function submit(config: RequestConfig, options: SubmitRequest): Promise<NonNullable<SubmitResponse>>;
67
+ /**
68
+ * Read one submittable piece: the public aggregate (total + per-value counts +
69
+ * counts by state) and this user's own submission (null if they haven't
70
+ * submitted). For a poll: results + whether the user has voted.
71
+ *
72
+ * @param options - synthesisOutputId (and optional synthesisOutputContentKey)
73
+ */
74
+ export declare function getSubmissionState(config: RequestConfig, options: {
75
+ synthesisOutputId: string;
76
+ synthesisOutputContentKey?: string;
77
+ }): Promise<SubmissionState>;
78
+ /**
79
+ * List the public feed of LIVE submissions for a synthesis output (e.g. all
80
+ * contest entries), paginated.
81
+ *
82
+ * @param options - synthesisOutputId and optional pagination (first, after)
83
+ */
84
+ export declare function listSubmissionFeed(config: RequestConfig, options: {
85
+ synthesisOutputId: string;
86
+ first?: number;
87
+ after?: string;
88
+ }): Promise<SubmissionFeed>;
24
89
  //# sourceMappingURL=submissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"submissions.d.ts","sourceRoot":"","sources":["../../src/user/submissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,MAAM,MAAM,2BAA2B,GACrC,KAAK,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACtF,MAAM,MAAM,4BAA4B,GACtC,KAAK,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjG,MAAM,MAAM,0BAA0B,GAAG,WAAW,CAClD,KAAK,CAAC,mDAAmD,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CACzF,CAAC;AACF,MAAM,MAAM,2BAA2B,GACrC,KAAK,CAAC,mDAAmD,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7H;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC,CAYpD;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC,CAYnD"}
1
+ {"version":3,"file":"submissions.d.ts","sourceRoot":"","sources":["../../src/user/submissions.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createUserSubmission = createUserSubmission;
4
4
  exports.listUserSubmissions = listUserSubmissions;
5
+ exports.submit = submit;
6
+ exports.getSubmissionState = getSubmissionState;
7
+ exports.listSubmissionFeed = listSubmissionFeed;
5
8
  const request_js_1 = require("../request.js");
6
9
  /**
7
10
  * Create a structured user submission and optional presigned file upload URLs.
@@ -40,4 +43,58 @@ async function listUserSubmissions(config, keyName, options) {
40
43
  }
41
44
  return response;
42
45
  }
46
+ /**
47
+ * Submit content (a poll vote or a contest entry) tied to a synthesis output.
48
+ * One submission per user per piece — re-submitting overwrites the prior one.
49
+ *
50
+ * @param options - synthesisOutputId, structured data, optional files (and
51
+ * optional synthesisOutputContentKey; omit for one-piece-per-output)
52
+ * @returns Created/updated submission and any presigned file upload URLs
53
+ */
54
+ async function submit(config, options) {
55
+ const response = await (0, request_js_1.makeRequest)(config, {
56
+ method: 'POST',
57
+ path: '/v1/user/submissions',
58
+ body: options,
59
+ });
60
+ if (!response) {
61
+ throw new Error('Failed to submit: no data in response');
62
+ }
63
+ return response;
64
+ }
65
+ /**
66
+ * Read one submittable piece: the public aggregate (total + per-value counts +
67
+ * counts by state) and this user's own submission (null if they haven't
68
+ * submitted). For a poll: results + whether the user has voted.
69
+ *
70
+ * @param options - synthesisOutputId (and optional synthesisOutputContentKey)
71
+ */
72
+ async function getSubmissionState(config, options) {
73
+ const response = await (0, request_js_1.makeRequest)(config, {
74
+ method: 'GET',
75
+ path: '/v1/user/submissions',
76
+ params: options,
77
+ });
78
+ if (!response) {
79
+ throw new Error('Failed to get submission state: no data in response');
80
+ }
81
+ return response;
82
+ }
83
+ /**
84
+ * List the public feed of LIVE submissions for a synthesis output (e.g. all
85
+ * contest entries), paginated.
86
+ *
87
+ * @param options - synthesisOutputId and optional pagination (first, after)
88
+ */
89
+ async function listSubmissionFeed(config, options) {
90
+ const response = await (0, request_js_1.makeRequest)(config, {
91
+ method: 'GET',
92
+ path: '/v1/user/submissions',
93
+ params: { ...options, list: true },
94
+ });
95
+ if (!response) {
96
+ throw new Error('Failed to list submission feed: no data in response');
97
+ }
98
+ return response;
99
+ }
43
100
  //# sourceMappingURL=submissions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"submissions.js","sourceRoot":"","sources":["../../src/user/submissions.ts"],"names":[],"mappings":";;AAsBA,oDAeC;AAUD,kDAgBC;AA7DD,8CAA4C;AAa5C;;;;;;GAMG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAqB,EACrB,OAAoC;IAEpC,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAA+B,MAAM,EAAE;QACvE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,sBAAsB;QAC5B,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAAqB,EACrB,OAAe,EACf,OAAoC;IAEpC,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAA8B,MAAM,EAAE;QACtE,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,+BAA+B,kBAAkB,CAAC,OAAO,CAAC,cAAc;QAC9E,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"submissions.js","sourceRoot":"","sources":["../../src/user/submissions.ts"],"names":[],"mappings":";;AAsBA,oDAeC;AAUD,kDAgBC;AA0DD,wBAeC;AASD,gDAeC;AAQD,gDAeC;AArLD,8CAA4C;AAa5C;;;;;;GAMG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAqB,EACrB,OAAoC;IAEpC,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAA+B,MAAM,EAAE;QACvE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,sBAAsB;QAC5B,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAAqB,EACrB,OAAe,EACf,OAAoC;IAEpC,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAA8B,MAAM,EAAE;QACtE,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,+BAA+B,kBAAkB,CAAC,OAAO,CAAC,cAAc;QAC9E,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAkDD;;;;;;;GAOG;AACI,KAAK,UAAU,MAAM,CAC1B,MAAqB,EACrB,OAAsB;IAEtB,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAAiB,MAAM,EAAE;QACzD,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,sBAAsB;QAC5B,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,kBAAkB,CACtC,MAAqB,EACrB,OAA0E;IAE1E,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAAkB,MAAM,EAAE;QAC1D,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,kBAAkB,CACtC,MAAqB,EACrB,OAAsE;IAEtE,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAW,EAAiB,MAAM,EAAE;QACzD,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE;KACnC,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -122,6 +122,9 @@ class StreamRouter {
122
122
  else {
123
123
  entry.resolve({
124
124
  data: event.data,
125
+ synthesisOutputId: event.synthesisOutputId,
126
+ synthesisHistory: event.synthesisHistory,
127
+ synthesisHistoryEntries: event.synthesisHistoryEntries,
125
128
  error: event.error,
126
129
  });
127
130
  this.resolvers.delete(event.index);
@@ -1 +1 @@
1
- {"version":3,"file":"synthesize-batch-manager.js","sourceRoot":"","sources":["../../src/user/synthesize-batch-manager.ts"],"names":[],"mappings":";;;AACA,mDAAgG;AAGhG,mDAAmD;AACnD,SAAS,aAAa;IACpB,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,eAAe;IACtB,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;AACjC,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;AASrC;;;GAGG;AACH,MAAa,sBAAsB;IACzB,KAAK,GAKR,EAAE,CAAC;IACA,KAAK,GAAiB,IAAI,CAAC;IAC3B,SAAS,CAA+B;IACxC,YAAY,CAAS;IAE7B,YAAY,SAAuC,EAAE,YAAoB;QACvE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,MAAqB;QAChC,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,OAAO,CACL,IAAoB,EACpB,eAA2C;QAE3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YAE5D,cAAc;YACd,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YAED,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE;gBACzB,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,KAAK;QACjB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAE9B,8BAA8B;QAC9B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvC,IAAA,0BAAU,EAAC,MAAM,EAAE,KAAK,CAAC;aACtB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACf,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACzB,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,8BAA8B;YAC9B,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;CACF;AAlED,wDAkEC;AAED;;;GAGG;AACH,MAAM,YAAY;IACR,SAAS,CAOf;IACM,KAAK,GAAiB,IAAI,CAAC;IAC3B,MAAM,GAA0C,IAAI,CAAC;IAE7D,YACE,KAKE;QAEF,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAOrB,CAAC;QACJ,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAsC;QAC9C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAY;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,+BAA+B;QAC/B,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACtC,IAAI,MAAM,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;oBACjF,SAAS;gBACX,CAAC;gBACD,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACxD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC9C,IAAI,CAAC,KAAK;wBAAE,SAAS;oBACrB,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;wBACpD,KAAK,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACtC,CAAC;yBAAM,CAAC;wBACN,KAAK,CAAC,OAAO,CAAC;4BACZ,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,KAAK,EAAE,KAAK,CAAC,KAAK;yBACnB,CAAC,CAAC;wBACH,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,sEAAsE;YACtE,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjD,MAAM,CAAC,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,+BAA+B;YAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"synthesize-batch-manager.js","sourceRoot":"","sources":["../../src/user/synthesize-batch-manager.ts"],"names":[],"mappings":";;;AACA,mDAAgG;AAGhG,mDAAmD;AACnD,SAAS,aAAa;IACpB,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,eAAe;IACtB,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;AACjC,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;AASrC;;;GAGG;AACH,MAAa,sBAAsB;IACzB,KAAK,GAKR,EAAE,CAAC;IACA,KAAK,GAAiB,IAAI,CAAC;IAC3B,SAAS,CAA+B;IACxC,YAAY,CAAS;IAE7B,YAAY,SAAuC,EAAE,YAAoB;QACvE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,MAAqB;QAChC,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,OAAO,CACL,IAAoB,EACpB,eAA2C;QAE3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YAE5D,cAAc;YACd,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YAED,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE;gBACzB,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,KAAK;QACjB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAE9B,8BAA8B;QAC9B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvC,IAAA,0BAAU,EAAC,MAAM,EAAE,KAAK,CAAC;aACtB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACf,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACzB,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,8BAA8B;YAC9B,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;CACF;AAlED,wDAkEC;AAED;;;GAGG;AACH,MAAM,YAAY;IACR,SAAS,CAOf;IACM,KAAK,GAAiB,IAAI,CAAC;IAC3B,MAAM,GAA0C,IAAI,CAAC;IAE7D,YACE,KAKE;QAEF,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAOrB,CAAC;QACJ,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAsC;QAC9C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAY;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,+BAA+B;QAC/B,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACtC,IAAI,MAAM,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;oBACjF,SAAS;gBACX,CAAC;gBACD,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACxD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC9C,IAAI,CAAC,KAAK;wBAAE,SAAS;oBACrB,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;wBACpD,KAAK,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACtC,CAAC;yBAAM,CAAC;wBACN,KAAK,CAAC,OAAO,CAAC;4BACZ,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;4BAC1C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;4BACxC,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;4BACtD,KAAK,EAAE,KAAK,CAAC,KAAK;yBACnB,CAAC,CAAC;wBACH,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,sEAAsE;YACtE,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjD,MAAM,CAAC,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,+BAA+B;YAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;CACF"}
@@ -2,14 +2,44 @@ import type { RequestConfig } from '../request.js';
2
2
  import type { SynthesizeItems } from './typeDefs.js';
3
3
  export type SynthesizeItemResponse = {
4
4
  data?: unknown;
5
+ /**
6
+ * Id of the `SynthesisOutput` this result corresponds to. Pass it to the
7
+ * submission methods (`submit`, `submissionState`, `submissionFeed`) to
8
+ * attach/read app-user submissions (poll votes, contest entries).
9
+ */
10
+ synthesisOutputId?: string;
11
+ /**
12
+ * Recent stored synthesis outputs when the request set `synthesisHistoryLimit > 0`,
13
+ * ordered most-recent first. The first entry is the current synthesis itself
14
+ * (identical to `data` unless user reranking is configured server-side).
15
+ *
16
+ * @deprecated Legacy bare-payload form, kept for older app builds. Prefer
17
+ * `synthesisHistoryEntries`, which also carries each entry's
18
+ * `synthesisOutputId`.
19
+ */
20
+ synthesisHistory?: unknown[];
21
+ /**
22
+ * The same recent stored outputs as `synthesisHistory`, index-aligned, but
23
+ * each entry pairs the `data` payload with its own `synthesisOutputId` (pass
24
+ * it to the submission methods to attach a vote/entry to that specific
25
+ * historical output).
26
+ */
27
+ synthesisHistoryEntries?: {
28
+ synthesisOutputId?: string;
29
+ data: unknown;
30
+ }[];
5
31
  error?: string;
6
32
  };
7
33
  /**
8
34
  * Synthesize stream event types (SSE). Per OpenAPI spec:
9
35
  * - Connection: `{ type: 'connected' | 'complete' }`
10
- * - Data: `{ index, data?, complete, error? }`.
36
+ * - Data: `{ index, data?, synthesisHistory?, complete, error? }`.
11
37
  * Multiple events may be sent for the same index as partial object updates; the final event
12
- * for that index has `complete: true` and contains the validated object.
38
+ * for that index has `complete: true` and contains the validated object. When the request
39
+ * set `synthesisHistoryLimit > 0`, the final event also includes `synthesisHistory`: an
40
+ * array of recent stored `data` payloads (most-recent first; the first entry is the current
41
+ * synthesis itself — identical to `data` unless user reranking is configured, in which case
42
+ * it is the unreranked source).
13
43
  */
14
44
  export type SynthesizeEvent = {
15
45
  type: 'connected';
@@ -18,6 +48,13 @@ export type SynthesizeEvent = {
18
48
  } | {
19
49
  index: number;
20
50
  data?: unknown;
51
+ synthesisOutputId?: string;
52
+ /** @deprecated Legacy bare-payload form; prefer `synthesisHistoryEntries`. */
53
+ synthesisHistory?: unknown[];
54
+ synthesisHistoryEntries?: {
55
+ synthesisOutputId?: string;
56
+ data: unknown;
57
+ }[];
21
58
  complete: boolean;
22
59
  error?: string;
23
60
  };
@@ -30,7 +67,7 @@ export interface SynthesizeOptions {
30
67
  * Synthesize content items personalized to the user (streaming SSE).
31
68
  *
32
69
  * @param config - Request configuration with base URL, timeout, fetch, and optional token
33
- * @param items - Array of items: each has optional inputs (`type`: externalId | text | excludeExternalIds, `value`), output (schema as JSON string or Zod 4 schema), optional configurationKeyName, optional limit (number of results to return; defaults to 1), optional searchOptionsOverrides (e.g. lookbackMinutes)
70
+ * @param items - Array of items: each has optional inputs (`type`: externalId | text | excludeExternalIds, `value`), output (schema as JSON string or Zod 4 schema), optional configurationKeyName, optional synthesisHistoryLimit (how many recent stored outputs to expose in the final event's `synthesisHistory` array; defaults to 0 — no history emitted), optional searchOptionsOverrides (e.g. lookbackMinutes)
34
71
  * @param options - Optional: onStreamingData(index, data) called for each streaming data update per item index
35
72
  * @returns AsyncIterable yielding connection events (connected, complete) and data events (index, data?, complete, error?). Data may be partial until an event with complete: true for that index.
36
73
  */
@@ -1 +1 @@
1
- {"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../src/user/synthesize.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,eAAe,CAAC;AAExE,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IACE,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAsBN,kGAAkG;AAClG,MAAM,WAAW,iBAAiB;IAChC,qFAAqF;IACrF,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC1D;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,eAAe,EACtB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAsBzC;AAED,wEAAwE;AACxE,MAAM,MAAM,yBAAyB,GACnC,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../src/user/synthesize.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,eAAe,CAAC;AAExE,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7B;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IACE,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7B,uBAAuB,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;IAC1E,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AA+BN,kGAAkG;AAClG,MAAM,WAAW,iBAAiB;IAChC,qFAAqF;IACrF,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC1D;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,eAAe,EACtB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAsBzC;AAED,wEAAwE;AACxE,MAAM,MAAM,yBAAyB,GACnC,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC"}