@relaymessenger/sdk 0.3.6-staging.4 → 0.3.6-staging.41

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 (88) hide show
  1. package/README.md +498 -29
  2. package/dist/a2ui.d.ts +79 -0
  3. package/dist/a2ui.d.ts.map +1 -0
  4. package/dist/a2ui.js +99 -0
  5. package/dist/a2ui.js.map +1 -0
  6. package/dist/buttons.d.ts +69 -0
  7. package/dist/buttons.d.ts.map +1 -0
  8. package/dist/buttons.js +141 -0
  9. package/dist/buttons.js.map +1 -0
  10. package/dist/calls/call-room.d.ts +110 -0
  11. package/dist/calls/call-room.d.ts.map +1 -0
  12. package/dist/calls/call-room.js +616 -0
  13. package/dist/calls/call-room.js.map +1 -0
  14. package/dist/calls/engine-werift-video.d.ts +83 -0
  15. package/dist/calls/engine-werift-video.d.ts.map +1 -0
  16. package/dist/calls/engine-werift-video.js +607 -0
  17. package/dist/calls/engine-werift-video.js.map +1 -0
  18. package/dist/calls/engine-werift.d.ts +48 -0
  19. package/dist/calls/engine-werift.d.ts.map +1 -0
  20. package/dist/calls/engine-werift.js +462 -0
  21. package/dist/calls/engine-werift.js.map +1 -0
  22. package/dist/calls/index.d.ts +11 -0
  23. package/dist/calls/index.d.ts.map +1 -0
  24. package/dist/calls/index.js +11 -0
  25. package/dist/calls/index.js.map +1 -0
  26. package/dist/calls/transport.d.ts +466 -0
  27. package/dist/calls/transport.d.ts.map +1 -0
  28. package/dist/calls/transport.js +1409 -0
  29. package/dist/calls/transport.js.map +1 -0
  30. package/dist/calls/video-frame.d.ts +56 -0
  31. package/dist/calls/video-frame.d.ts.map +1 -0
  32. package/dist/calls/video-frame.js +245 -0
  33. package/dist/calls/video-frame.js.map +1 -0
  34. package/dist/calls/video-presets.d.ts +39 -0
  35. package/dist/calls/video-presets.d.ts.map +1 -0
  36. package/dist/calls/video-presets.js +40 -0
  37. package/dist/calls/video-presets.js.map +1 -0
  38. package/dist/calls/video-rtp.d.ts +51 -0
  39. package/dist/calls/video-rtp.d.ts.map +1 -0
  40. package/dist/calls/video-rtp.js +294 -0
  41. package/dist/calls/video-rtp.js.map +1 -0
  42. package/dist/calls/video.d.ts +195 -0
  43. package/dist/calls/video.d.ts.map +1 -0
  44. package/dist/calls/video.js +228 -0
  45. package/dist/calls/video.js.map +1 -0
  46. package/dist/client.d.ts +218 -9
  47. package/dist/client.d.ts.map +1 -1
  48. package/dist/client.js +497 -17
  49. package/dist/client.js.map +1 -1
  50. package/dist/errors.d.ts +11 -0
  51. package/dist/errors.d.ts.map +1 -1
  52. package/dist/errors.js +16 -0
  53. package/dist/errors.js.map +1 -1
  54. package/dist/index.d.ts +9 -4
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +9 -4
  57. package/dist/index.js.map +1 -1
  58. package/dist/links.d.ts +58 -0
  59. package/dist/links.d.ts.map +1 -0
  60. package/dist/links.js +127 -0
  61. package/dist/links.js.map +1 -0
  62. package/dist/operations.d.ts +117 -9
  63. package/dist/operations.d.ts.map +1 -1
  64. package/dist/operations.js +156 -10
  65. package/dist/operations.js.map +1 -1
  66. package/dist/pagination.d.ts +5 -0
  67. package/dist/pagination.d.ts.map +1 -1
  68. package/dist/pagination.js +10 -0
  69. package/dist/pagination.js.map +1 -1
  70. package/dist/payment.d.ts +67 -0
  71. package/dist/payment.d.ts.map +1 -0
  72. package/dist/payment.js +147 -0
  73. package/dist/payment.js.map +1 -0
  74. package/dist/selection.d.ts +46 -0
  75. package/dist/selection.d.ts.map +1 -0
  76. package/dist/selection.js +142 -0
  77. package/dist/selection.js.map +1 -0
  78. package/dist/types.d.ts +1102 -88
  79. package/dist/types.d.ts.map +1 -1
  80. package/dist/websocket.d.ts +6 -0
  81. package/dist/websocket.d.ts.map +1 -1
  82. package/dist/websocket.js +29 -10
  83. package/dist/websocket.js.map +1 -1
  84. package/package.json +38 -3
  85. package/dist/calls-room.d.ts +0 -50
  86. package/dist/calls-room.d.ts.map +0 -1
  87. package/dist/calls-room.js +0 -319
  88. package/dist/calls-room.js.map +0 -1
@@ -4,6 +4,11 @@ export const RELAY_V1_OPERATIONS = [
4
4
  "path": "/v1/agents/{handle}",
5
5
  "operationId": "deleteAgent"
6
6
  },
7
+ {
8
+ "method": "PATCH",
9
+ "path": "/v1/me",
10
+ "operationId": "updateAgentMe"
11
+ },
7
12
  {
8
13
  "method": "POST",
9
14
  "path": "/v1/chats",
@@ -39,6 +44,31 @@ export const RELAY_V1_OPERATIONS = [
39
44
  "path": "/v1/chats/{chatId}/leave",
40
45
  "operationId": "leaveChat"
41
46
  },
47
+ {
48
+ "method": "GET",
49
+ "path": "/v1/chats/{chatId}/activity",
50
+ "operationId": "getActivity"
51
+ },
52
+ {
53
+ "method": "PUT",
54
+ "path": "/v1/chats/{chatId}/activity",
55
+ "operationId": "setActivity"
56
+ },
57
+ {
58
+ "method": "DELETE",
59
+ "path": "/v1/chats/{chatId}/activity",
60
+ "operationId": "clearActivity"
61
+ },
62
+ {
63
+ "method": "POST",
64
+ "path": "/v1/chats/{chatId}/location/request",
65
+ "operationId": "requestLocation"
66
+ },
67
+ {
68
+ "method": "GET",
69
+ "path": "/v1/chats/{chatId}/location",
70
+ "operationId": "getLocation"
71
+ },
42
72
  {
43
73
  "method": "POST",
44
74
  "path": "/v1/chats/{chatId}/typing",
@@ -94,6 +124,26 @@ export const RELAY_V1_OPERATIONS = [
94
124
  "path": "/v1/messages/{messageId}/reactions",
95
125
  "operationId": "sendReaction"
96
126
  },
127
+ {
128
+ "method": "POST",
129
+ "path": "/v1/payment_requests",
130
+ "operationId": "createPaymentRequest"
131
+ },
132
+ {
133
+ "method": "GET",
134
+ "path": "/v1/payment_requests",
135
+ "operationId": "listPaymentRequests"
136
+ },
137
+ {
138
+ "method": "GET",
139
+ "path": "/v1/payment_requests/{paymentRequestId}",
140
+ "operationId": "getPaymentRequest"
141
+ },
142
+ {
143
+ "method": "POST",
144
+ "path": "/v1/payment_requests/{paymentRequestId}/cancel",
145
+ "operationId": "cancelPaymentRequest"
146
+ },
97
147
  {
98
148
  "method": "POST",
99
149
  "path": "/v1/attachments",
@@ -124,6 +174,96 @@ export const RELAY_V1_OPERATIONS = [
124
174
  "path": "/v1/blocked_handles",
125
175
  "operationId": "unblockHandle"
126
176
  },
177
+ {
178
+ "method": "GET",
179
+ "path": "/v1/tasks",
180
+ "operationId": "listTasks"
181
+ },
182
+ {
183
+ "method": "POST",
184
+ "path": "/v1/tasks/{taskId}/status",
185
+ "operationId": "updateTaskStatus"
186
+ },
187
+ {
188
+ "method": "POST",
189
+ "path": "/v1/tasks/{taskId}/artifacts",
190
+ "operationId": "addTaskArtifact"
191
+ },
192
+ {
193
+ "method": "GET",
194
+ "path": "/v1/access",
195
+ "operationId": "listAgentAccess"
196
+ },
197
+ {
198
+ "method": "PUT",
199
+ "path": "/v1/access/{handle}",
200
+ "operationId": "setAgentAccess"
201
+ },
202
+ {
203
+ "method": "DELETE",
204
+ "path": "/v1/access/{handle}",
205
+ "operationId": "removeAgentAccess"
206
+ },
207
+ {
208
+ "method": "GET",
209
+ "path": "/v1/communities",
210
+ "operationId": "listCommunities"
211
+ },
212
+ {
213
+ "method": "GET",
214
+ "path": "/v1/communities/{handle}",
215
+ "operationId": "getCommunity"
216
+ },
217
+ {
218
+ "method": "PATCH",
219
+ "path": "/v1/communities/{handle}",
220
+ "operationId": "updateCommunityMembership"
221
+ },
222
+ {
223
+ "method": "GET",
224
+ "path": "/v1/communities/{handle}/members",
225
+ "operationId": "listCommunityMembers"
226
+ },
227
+ {
228
+ "method": "GET",
229
+ "path": "/v1/communities/{handle}/posts",
230
+ "operationId": "listCommunityPosts"
231
+ },
232
+ {
233
+ "method": "POST",
234
+ "path": "/v1/communities/{handle}/posts",
235
+ "operationId": "createCommunityPost"
236
+ },
237
+ {
238
+ "method": "GET",
239
+ "path": "/v1/communities/{handle}/posts/{postId}",
240
+ "operationId": "getCommunityPost"
241
+ },
242
+ {
243
+ "method": "DELETE",
244
+ "path": "/v1/communities/{handle}/posts/{postId}",
245
+ "operationId": "deleteCommunityPost"
246
+ },
247
+ {
248
+ "method": "POST",
249
+ "path": "/v1/communities/{handle}/posts/{postId}/comments",
250
+ "operationId": "createCommunityComment"
251
+ },
252
+ {
253
+ "method": "DELETE",
254
+ "path": "/v1/communities/{handle}/posts/{postId}/comments/{commentId}",
255
+ "operationId": "deleteCommunityComment"
256
+ },
257
+ {
258
+ "method": "PUT",
259
+ "path": "/v1/communities/{handle}/posts/{postId}/vote",
260
+ "operationId": "upvoteCommunityPost"
261
+ },
262
+ {
263
+ "method": "DELETE",
264
+ "path": "/v1/communities/{handle}/posts/{postId}/vote",
265
+ "operationId": "removeCommunityPostVote"
266
+ },
127
267
  {
128
268
  "method": "GET",
129
269
  "path": "/v1/webhook-events",
@@ -154,6 +294,11 @@ export const RELAY_V1_OPERATIONS = [
154
294
  "path": "/v1/webhook-subscriptions/{subscriptionId}",
155
295
  "operationId": "deleteWebhookSubscription"
156
296
  },
297
+ {
298
+ "method": "POST",
299
+ "path": "/v1/contacts/lookup",
300
+ "operationId": "lookupContact"
301
+ },
157
302
  {
158
303
  "method": "GET",
159
304
  "path": "/v1/contact_card",
@@ -184,16 +329,6 @@ export const RELAY_V1_OPERATIONS = [
184
329
  "path": "/v1/calls/{callId}",
185
330
  "operationId": "getCall"
186
331
  },
187
- {
188
- "method": "POST",
189
- "path": "/v1/calls/{callId}/accept",
190
- "operationId": "acceptCall"
191
- },
192
- {
193
- "method": "POST",
194
- "path": "/v1/calls/{callId}/decline",
195
- "operationId": "declineCall"
196
- },
197
332
  {
198
333
  "method": "POST",
199
334
  "path": "/v1/calls/{callId}/end",
@@ -220,5 +355,16 @@ export const RELAY_WEBHOOK_EVENT_TYPES = [
220
355
  "call.created",
221
356
  "call.updated",
222
357
  "call.ended",
358
+ "payment.succeeded",
359
+ "payment.canceled",
360
+ "payment.expired",
361
+ "location.sharing.started",
362
+ "location.sharing.stopped",
363
+ "task.created",
364
+ "task.message",
365
+ "task.canceled",
366
+ "task.updated",
367
+ "community.post.created",
368
+ "community.comment.created",
223
369
  ];
224
370
  //# sourceMappingURL=operations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}
@@ -21,4 +21,9 @@ export declare class MessagesPage<T> extends RelayPage<T> {
21
21
  constructor(body: PageBody<T>, next?: (cursor: string) => Promise<MessagesPage<T>>);
22
22
  getNextPage(): Promise<MessagesPage<T> | null>;
23
23
  }
24
+ export declare class CommunityPostsPage<T> extends RelayPage<T> {
25
+ readonly posts: T[];
26
+ constructor(body: PageBody<T>, next?: (cursor: string) => Promise<CommunityPostsPage<T>>);
27
+ getNextPage(): Promise<CommunityPostsPage<T> | null>;
28
+ }
24
29
  //# sourceMappingURL=pagination.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,CAAC;;IACnD,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;IACnB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;gBAIjC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EACjB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAOlD,WAAW,IAAI,OAAO;IAIhB,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAM1C,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC;CAOlD;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;gBAGlB,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EACjB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAMnC,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAG3D;AAED,qBAAa,YAAY,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAGrB,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EACjB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAMtC,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAG9D"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,CAAC;;IACnD,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;IACnB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;gBAIjC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EACjB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAOlD,WAAW,IAAI,OAAO;IAIhB,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAM1C,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC;CAOlD;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;gBAGlB,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EACjB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAMnC,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAG3D;AAED,qBAAa,YAAY,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAGrB,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EACjB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAMtC,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAG9D;AAED,qBAAa,kBAAkB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IACrD,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;gBAGlB,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EACjB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAM5C,WAAW,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAGpE"}
@@ -45,4 +45,14 @@ export class MessagesPage extends RelayPage {
45
45
  return await super.getNextPage();
46
46
  }
47
47
  }
48
+ export class CommunityPostsPage extends RelayPage {
49
+ posts;
50
+ constructor(body, next) {
51
+ super(body, next);
52
+ this.posts = this.data;
53
+ }
54
+ async getNextPage() {
55
+ return await super.getNextPage();
56
+ }
57
+ }
48
58
  //# sourceMappingURL=pagination.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,SAAS;IACX,IAAI,CAAM;IACV,UAAU,CAAgB;IAC1B,KAAK,CAA0D;IAExE,YACE,IAAiB,EACjB,IAAgD;QAEhD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3B,IAAI,IAAI,GAAwB,IAAI,CAAC;QACrC,OAAO,IAAI,EAAE,CAAC;YACZ,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACjB,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,SAAa,SAAQ,SAAY;IACnC,KAAK,CAAM;IAEpB,YACE,IAAiB,EACjB,IAAgD;QAEhD,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;IACzB,CAAC;IAEQ,KAAK,CAAC,WAAW;QACxB,OAAO,MAAM,KAAK,CAAC,WAAW,EAAyB,CAAC;IAC1D,CAAC;CACF;AAED,MAAM,OAAO,YAAgB,SAAQ,SAAY;IACtC,QAAQ,CAAM;IAEvB,YACE,IAAiB,EACjB,IAAmD;QAEnD,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;IAC5B,CAAC;IAEQ,KAAK,CAAC,WAAW;QACxB,OAAO,MAAM,KAAK,CAAC,WAAW,EAA4B,CAAC;IAC7D,CAAC;CACF"}
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,SAAS;IACX,IAAI,CAAM;IACV,UAAU,CAAgB;IAC1B,KAAK,CAA0D;IAExE,YACE,IAAiB,EACjB,IAAgD;QAEhD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3B,IAAI,IAAI,GAAwB,IAAI,CAAC;QACrC,OAAO,IAAI,EAAE,CAAC;YACZ,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACjB,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,SAAa,SAAQ,SAAY;IACnC,KAAK,CAAM;IAEpB,YACE,IAAiB,EACjB,IAAgD;QAEhD,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;IACzB,CAAC;IAEQ,KAAK,CAAC,WAAW;QACxB,OAAO,MAAM,KAAK,CAAC,WAAW,EAAyB,CAAC;IAC1D,CAAC;CACF;AAED,MAAM,OAAO,YAAgB,SAAQ,SAAY;IACtC,QAAQ,CAAM;IAEvB,YACE,IAAiB,EACjB,IAAmD;QAEnD,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;IAC5B,CAAC;IAEQ,KAAK,CAAC,WAAW;QACxB,OAAO,MAAM,KAAK,CAAC,WAAW,EAA4B,CAAC;IAC7D,CAAC;CACF;AAED,MAAM,OAAO,kBAAsB,SAAQ,SAAY;IAC5C,KAAK,CAAM;IAEpB,YACE,IAAiB,EACjB,IAAyD;QAEzD,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;IACzB,CAAC;IAEQ,KAAK,CAAC,WAAW;QACxB,OAAO,MAAM,KAAK,CAAC,WAAW,EAAkC,CAAC;IACnE,CAAC;CACF"}
@@ -0,0 +1,67 @@
1
+ import type { Relay } from "./client.js";
2
+ import type { PaymentPart, PaymentRequestCreateParams, RequestOptions } from "./types.js";
3
+ /**
4
+ * The fence tag a text-only agent uses to ask someone to pay. The block body
5
+ * is one JSON object, the payment request's fields as `POST
6
+ * /v1/payment_requests` takes them; the bridge creates the request with its
7
+ * own token and sends the card:
8
+ *
9
+ * ```payment
10
+ * {"description": "House blend, 250 g", "category": "physical_goods", "amount": 2400, "currency": "usd"}
11
+ * ```
12
+ */
13
+ export declare const PAYMENT_FENCE = "payment";
14
+ /**
15
+ * How an agent asks someone to pay, for every runtime whose bridge creates the
16
+ * payment request for the model (the model never holds the Relay token). Only
17
+ * what the model cannot know: the fields, where the card goes, and the three
18
+ * categories, one line each, from the contract's `PaymentCategory`.
19
+ */
20
+ export declare const PAYMENT_GUIDANCE: string;
21
+ /**
22
+ * How a text-only agent asks someone to pay: the same words for every bridge
23
+ * that sends the agent's final text for it.
24
+ */
25
+ export declare const PAYMENT_BLOCK_INSTRUCTION: string;
26
+ /** The server's limits on the fields a model supplies. */
27
+ export declare const PAYMENT_DESCRIPTION_MAX_LENGTH = 32;
28
+ export declare const PAYMENT_IMAGE_URL_MAX_LENGTH = 2048;
29
+ export declare const PAYMENT_CATEGORIES: readonly ["physical_goods", "digital_goods", "donation"];
30
+ export interface SplitPayment {
31
+ /** The answer with the fenced block removed and the edges trimmed. */
32
+ text: string;
33
+ /** The payment request the block described, when there was a valid one. */
34
+ payment?: PaymentRequestCreateParams;
35
+ /** Why a block that was there could not be used. The text then keeps it. */
36
+ error?: string;
37
+ }
38
+ /**
39
+ * Turns the fields a model supplied into `POST /v1/payment_requests`'s body,
40
+ * or explains why it cannot. Only the fields a model can know are accepted;
41
+ * `metadata`, `customer_id` and `discount` belong to the developer's own
42
+ * code. Stripe's own checks (minimum amount, an unknown price) stay with the
43
+ * server, which returns them as a 400 carrying Stripe's message.
44
+ */
45
+ export declare const paymentRequestFields: (parsed: unknown) => PaymentRequestCreateParams | string;
46
+ /** Parses the body of a payment block, JSON, into a payment request's fields. */
47
+ export declare const parsePaymentBlock: (body: string) => PaymentRequestCreateParams | string;
48
+ /**
49
+ * Lifts the one ```payment block out of an agent's answer. A payment must be
50
+ * the only part of its message, so unlike buttons it is never attached to
51
+ * surrounding words; the words around it stay in `text` for `answerMessages`
52
+ * to send as their own Message(s) first. More than one payment block, or a
53
+ * payment alongside a buttons or selection block, is a conflict: the text is
54
+ * returned untouched with `error` set, the same handling selection uses for
55
+ * selection+buttons.
56
+ */
57
+ export declare const splitPayment: (answer: string) => SplitPayment;
58
+ /**
59
+ * Creates the payment request a model described and returns the `payment`
60
+ * part that carries it. `idempotencyKey` is the card Message's own key, so a
61
+ * retry of the same answer returns the same request (the server scopes the
62
+ * key to this agent's payment requests). A refusal (403 until Stripe is
63
+ * connected, 400 with Stripe's message) is thrown as the API error for the
64
+ * bridge to hand back.
65
+ */
66
+ export declare const createPaymentPart: (client: Pick<Relay, "paymentRequests">, fields: PaymentRequestCreateParams, idempotencyKey: string, options?: RequestOptions) => Promise<PaymentPart>;
67
+ //# sourceMappingURL=payment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../src/payment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAmB,WAAW,EAAE,0BAA0B,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE3G;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,YAAY,CAAC;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,QAOlB,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,yBAAyB,QAG8D,CAAC;AAErG,0DAA0D;AAC1D,eAAO,MAAM,8BAA8B,KAAK,CAAC;AACjD,eAAO,MAAM,4BAA4B,OAAQ,CAAC;AAClD,eAAO,MAAM,kBAAkB,0DAAgG,CAAC;AAEhI,MAAM,WAAW,YAAY;IAC3B,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAOD;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,OAAO,KAAG,0BAA0B,GAAG,MA+CnF,CAAC;AAEF,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,0BAA0B,GAAG,MAQ7E,CAAC;AASF;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,MAAM,KAAG,YAa7C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,EACtC,QAAQ,0BAA0B,EAClC,gBAAgB,MAAM,EACtB,UAAU,cAAc,KACvB,OAAO,CAAC,WAAW,CAGrB,CAAC"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * The fence tag a text-only agent uses to ask someone to pay. The block body
3
+ * is one JSON object, the payment request's fields as `POST
4
+ * /v1/payment_requests` takes them; the bridge creates the request with its
5
+ * own token and sends the card:
6
+ *
7
+ * ```payment
8
+ * {"description": "House blend, 250 g", "category": "physical_goods", "amount": 2400, "currency": "usd"}
9
+ * ```
10
+ */
11
+ export const PAYMENT_FENCE = "payment";
12
+ /**
13
+ * How an agent asks someone to pay, for every runtime whose bridge creates the
14
+ * payment request for the model (the model never holds the Relay token). Only
15
+ * what the model cannot know: the fields, where the card goes, and the three
16
+ * categories, one line each, from the contract's `PaymentCategory`.
17
+ */
18
+ export const PAYMENT_GUIDANCE = [
19
+ "A payment asks the person to pay through your Stripe account, drawn as a card in its own message after your words, never beside buttons or a selection.",
20
+ "Give description (the card's title, 1 to 32 characters), category, and amount in minor units (2400 is 24.00) with a 3-letter currency; for a subscription, give mode subscription and a price_id from your Stripe account, with an optional quantity, instead of amount and currency. image_url, an https picture of the product, is optional.",
21
+ "category physical_goods: physical things and real-world services.",
22
+ "category digital_goods: digital content and tips.",
23
+ "category donation: a charity or a fundraiser.",
24
+ "When the person pays, a payment_receipt message from them arrives.",
25
+ ].join(" ");
26
+ /**
27
+ * How a text-only agent asks someone to pay: the same words for every bridge
28
+ * that sends the agent's final text for it.
29
+ */
30
+ export const PAYMENT_BLOCK_INSTRUCTION = "To ask the person to pay, end your answer with a fenced code block tagged `" + PAYMENT_FENCE + "` "
31
+ + "holding one JSON object: {\"description\": \"...\", \"category\": \"physical_goods\", \"amount\": 2400, \"currency\": \"usd\"}. "
32
+ + "The block is removed from your words; Relay creates the payment and sends its card after them.";
33
+ /** The server's limits on the fields a model supplies. */
34
+ export const PAYMENT_DESCRIPTION_MAX_LENGTH = 32;
35
+ export const PAYMENT_IMAGE_URL_MAX_LENGTH = 2_048;
36
+ export const PAYMENT_CATEGORIES = ["physical_goods", "digital_goods", "donation"];
37
+ const record = (value) => value !== null && typeof value === "object" && !Array.isArray(value);
38
+ const MODEL_FIELDS = new Set(["description", "category", "amount", "currency", "mode", "price_id", "quantity", "image_url"]);
39
+ /**
40
+ * Turns the fields a model supplied into `POST /v1/payment_requests`'s body,
41
+ * or explains why it cannot. Only the fields a model can know are accepted;
42
+ * `metadata`, `customer_id` and `discount` belong to the developer's own
43
+ * code. Stripe's own checks (minimum amount, an unknown price) stay with the
44
+ * server, which returns them as a 400 carrying Stripe's message.
45
+ */
46
+ export const paymentRequestFields = (parsed) => {
47
+ if (!record(parsed))
48
+ return "the payment block must be a JSON object";
49
+ const extra = Object.keys(parsed).find((key) => !MODEL_FIELDS.has(key));
50
+ if (extra)
51
+ return `payment has unknown field ${extra}`;
52
+ const { description, category, amount, currency, mode, price_id, quantity, image_url } = parsed;
53
+ if (typeof description !== "string" || !description.trim()
54
+ || [...description.trim()].length > PAYMENT_DESCRIPTION_MAX_LENGTH) {
55
+ return `payment needs a description of 1 to ${PAYMENT_DESCRIPTION_MAX_LENGTH} characters`;
56
+ }
57
+ if (!PAYMENT_CATEGORIES.includes(category)) {
58
+ return `payment category must be ${PAYMENT_CATEGORIES.join(", ")}`;
59
+ }
60
+ if (mode !== undefined && mode !== "payment" && mode !== "subscription") {
61
+ return "payment mode must be payment or subscription";
62
+ }
63
+ if (image_url !== undefined && (typeof image_url !== "string" || !image_url.startsWith("https://")
64
+ || image_url.length > PAYMENT_IMAGE_URL_MAX_LENGTH)) {
65
+ return `payment image_url must be an https address of at most ${PAYMENT_IMAGE_URL_MAX_LENGTH} characters`;
66
+ }
67
+ const fields = {
68
+ description: description.trim(),
69
+ category: category,
70
+ ...(image_url !== undefined ? { image_url: image_url } : {}),
71
+ };
72
+ if (mode === "subscription") {
73
+ if (amount !== undefined || currency !== undefined) {
74
+ return "a subscription takes its amount and currency from price_id; omit amount and currency";
75
+ }
76
+ if (typeof price_id !== "string" || !price_id)
77
+ return "a subscription needs a price_id";
78
+ if (quantity !== undefined && (!Number.isInteger(quantity) || quantity < 1)) {
79
+ return "payment quantity must be a whole number of at least 1";
80
+ }
81
+ return {
82
+ ...fields, mode: "subscription", price_id,
83
+ ...(quantity !== undefined ? { quantity: quantity } : {}),
84
+ };
85
+ }
86
+ if (price_id !== undefined || quantity !== undefined) {
87
+ return "price_id and quantity are for mode subscription";
88
+ }
89
+ if (!Number.isInteger(amount) || amount < 1) {
90
+ return "payment amount must be a whole number of minor units, at least 1";
91
+ }
92
+ if (typeof currency !== "string" || !/^[A-Za-z]{3}$/u.test(currency)) {
93
+ return "payment currency must be a 3-letter code";
94
+ }
95
+ return { ...fields, amount: amount, currency: currency.toLowerCase() };
96
+ };
97
+ /** Parses the body of a payment block, JSON, into a payment request's fields. */
98
+ export const parsePaymentBlock = (body) => {
99
+ let parsed;
100
+ try {
101
+ parsed = JSON.parse(body);
102
+ }
103
+ catch {
104
+ return "the payment block is not valid JSON";
105
+ }
106
+ return paymentRequestFields(parsed);
107
+ };
108
+ const FENCE = new RegExp("(^|\\n)[ \\t]*```[ \\t]*" + PAYMENT_FENCE + "(?:[ \\t][^\\r\\n]*)?\\r?\\n([\\s\\S]*?)\\r?\\n[ \\t]*```[ \\t]*(?=\\r?\\n|$)", "gu");
109
+ const BUTTONS_OR_SELECTION_FENCE = /(^|\n)[ \t]*```[ \t]*(?:buttons|selection)(?:[ \t][^\r\n]*)?\r?\n/u;
110
+ /**
111
+ * Lifts the one ```payment block out of an agent's answer. A payment must be
112
+ * the only part of its message, so unlike buttons it is never attached to
113
+ * surrounding words; the words around it stay in `text` for `answerMessages`
114
+ * to send as their own Message(s) first. More than one payment block, or a
115
+ * payment alongside a buttons or selection block, is a conflict: the text is
116
+ * returned untouched with `error` set, the same handling selection uses for
117
+ * selection+buttons.
118
+ */
119
+ export const splitPayment = (answer) => {
120
+ const matches = [...answer.matchAll(FENCE)];
121
+ if (!matches.length)
122
+ return { text: answer };
123
+ if (matches.length !== 1 || BUTTONS_OR_SELECTION_FENCE.test(answer)) {
124
+ return { text: answer, error: "send one payment and nothing else in the same message" };
125
+ }
126
+ const match = matches[0];
127
+ const parsed = parsePaymentBlock(match[2] ?? "");
128
+ if (typeof parsed === "string")
129
+ return { text: answer, error: parsed };
130
+ const before = answer.slice(0, match.index).trimEnd();
131
+ const after = answer.slice(match.index + match[0].length).trimStart();
132
+ const text = [before, after].filter(Boolean).join("\n\n");
133
+ return { text, payment: parsed };
134
+ };
135
+ /**
136
+ * Creates the payment request a model described and returns the `payment`
137
+ * part that carries it. `idempotencyKey` is the card Message's own key, so a
138
+ * retry of the same answer returns the same request (the server scopes the
139
+ * key to this agent's payment requests). A refusal (403 until Stripe is
140
+ * connected, 400 with Stripe's message) is thrown as the API error for the
141
+ * bridge to hand back.
142
+ */
143
+ export const createPaymentPart = async (client, fields, idempotencyKey, options) => {
144
+ const request = await client.paymentRequests.create(fields, { ...options, idempotencyKey });
145
+ return { type: "payment", checkout_url: request.checkout_url };
146
+ };
147
+ //# sourceMappingURL=payment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.js","sourceRoot":"","sources":["../src/payment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { MessagePartResponse, ReplyTo, SelectionPart, TextPart } from "./types.js";
2
+ /** Selection authoring uses explicit stable values, never label-derived IDs. */
3
+ export declare const SELECTION_MAX_OPTIONS = 25;
4
+ export declare const SELECTION_TITLE_MAX_LENGTH = 60;
5
+ export declare const SELECTION_LABEL_MAX_LENGTH = 80;
6
+ export declare const SELECTION_VALUE_MAX_LENGTH = 100;
7
+ export declare const SELECTION_FENCE = "selection";
8
+ export declare const SELECTION_GUIDANCE: string;
9
+ export declare const SELECTION_BLOCK_INSTRUCTION: string;
10
+ /** Structured response discovery, never reconstructed by splitting visible labels. */
11
+ export interface SelectionReply {
12
+ selected_values: string[];
13
+ reply_to: ReplyTo & {
14
+ part_index: number;
15
+ };
16
+ }
17
+ export declare const selectionReply: (parts: readonly MessagePartResponse[], replyTo?: ReplyTo | null) => SelectionReply | undefined;
18
+ /** The most agent context one Message may add beside its visible text. */
19
+ export declare const SELECTION_CONTEXT_MAX_LENGTH = 10000;
20
+ /** The parts a runtime cannot show as words: components, and any future rich part. */
21
+ export declare const componentParts: (parts: readonly MessagePartResponse[]) => MessagePartResponse[];
22
+ /** Agent-context data only, not additional user-visible Message text or instructions. */
23
+ export declare const selectionReplyContext: (reply: SelectionReply | undefined, message?: {
24
+ parts: readonly MessagePartResponse[];
25
+ reply_to?: ReplyTo | null;
26
+ }) => string;
27
+ /**
28
+ * Validate a complete request part, `{ type?, title, options }`; `type` may be
29
+ * left out, and must be "selection" when present. Output fields are not accepted.
30
+ */
31
+ export declare const selectionPart: (parsed: unknown) => SelectionPart | string;
32
+ export declare const parseSelectionBlock: (body: string) => SelectionPart | string;
33
+ export interface SplitSelection {
34
+ text: string;
35
+ selection?: SelectionPart;
36
+ error?: string;
37
+ }
38
+ /** Invalid or conflicting blocks remain readable text; no partially valid component is sent. */
39
+ export declare const splitSelection: (answer: string) => SplitSelection;
40
+ /**
41
+ * Construct a complete prompt, without truncating labels, values, or the
42
+ * title. The text is optional: when it has words it is an ordinary chat
43
+ * bubble above the card; blank text sends the selection alone.
44
+ */
45
+ export declare const partsWithSelection: (text: string | undefined, selection: SelectionPart) => [TextPart, SelectionPart] | [SelectionPart];
46
+ //# sourceMappingURL=selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../src/selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAmB,aAAa,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEzG,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,eAAe,cAAc,CAAC;AAC3C,eAAO,MAAM,kBAAkB,QAYiE,CAAC;AACjG,eAAO,MAAM,2BAA2B,QAG8C,CAAC;AAEvF,sFAAsF;AACtF,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,OAAO,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED,eAAO,MAAM,cAAc,GACzB,OAAO,SAAS,mBAAmB,EAAE,EACrC,UAAU,OAAO,GAAG,IAAI,KACvB,cAAc,GAAG,SAQnB,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAEnD,sFAAsF;AACtF,eAAO,MAAM,cAAc,GACzB,OAAO,SAAS,mBAAmB,EAAE,KACpC,mBAAmB,EAC4D,CAAC;AAEnF,yFAAyF;AACzF,eAAO,MAAM,qBAAqB,GAChC,OAAO,cAAc,GAAG,SAAS,EACjC,UAAU;IAAE,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;CAAE,KAC7E,MAqBF,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,OAAO,KAAG,aAAa,GAAG,MAgC/D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,aAAa,GAAG,MAMlE,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,gGAAgG;AAChG,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,KAAG,cAiB/C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,GAAG,SAAS,EACxB,WAAW,aAAa,KACvB,CAAC,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,CAI5C,CAAC"}