@relaymessenger/sdk 0.4.0 → 0.5.0-staging.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.
package/dist/form.js ADDED
@@ -0,0 +1,206 @@
1
+ export const FORM_FENCE = "form";
2
+ export const FORM_GUIDANCE = "Use form for several fields across ordered pages. Give each page and field an explicit stable id. "
3
+ + "Fields are text (single-line or multiline), select (single or multiple), picker, or date (YYYY-MM-DD). "
4
+ + "Text max_length defaults to 30 single-line or 300 multiline; a positive explicit value overrides it. "
5
+ + "A text field's keyboard is default, email, phone (E.164 answers such as +13135550123), number or url. "
6
+ + "A date field may set min_date and max_date (YYYY-MM-DD; 1900-01-01 through 2100-12-31 by default). "
7
+ + "Use show_summary for an optional review page. Put any extra words in an optional text part above the card. "
8
+ + "Send one form; only text may sit beside it. Only the user answers, once. "
9
+ + "The reply contains plain text 'Form sent' and form_response.answers keyed by field id, "
10
+ + "with reply_to naming the source part. Dispatch on those ids, never on labels or visible text.";
11
+ export const FORM_BLOCK_INSTRUCTION = "To collect several answers, end your answer with a fenced code block tagged `form` "
12
+ + 'containing {"title":"Details","pages":[{"id":"details","title":"Details","fields":'
13
+ + '[{"id":"name","type":"text","label":"Name","required":true}]}]}. '
14
+ + "Words outside the block are sent as a normal message above the card.";
15
+ const object = (value, allowed, name) => {
16
+ if (!value || typeof value !== "object" || Array.isArray(value))
17
+ throw new Error(`${name} needs an object`);
18
+ const extra = Object.keys(value).find((key) => !allowed.includes(key));
19
+ if (extra !== undefined)
20
+ throw new Error(`${name} has unknown field ${extra}`);
21
+ return value;
22
+ };
23
+ const text = (value, max, name, trim = true) => {
24
+ if (typeof value !== "string")
25
+ throw new Error(`${name} needs a string`);
26
+ const result = trim ? value.trim() : value;
27
+ if ((trim && !/[^\s\p{Cf}]/u.test(result)) || [...result].length > max)
28
+ throw new Error(`${name} exceeds its character limit or is blank`);
29
+ return result;
30
+ };
31
+ const token = (value, max, name) => {
32
+ if (typeof value !== "string" || value.length > max || !/^[A-Za-z0-9][A-Za-z0-9._:-]*$/u.test(value)) {
33
+ throw new Error(`${name} needs an ASCII token of 1 to ${max} characters`);
34
+ }
35
+ return value;
36
+ };
37
+ const list = (value, max, name) => {
38
+ if (!Array.isArray(value) || !value.length || value.length > max)
39
+ throw new Error(`${name} has an invalid item count`);
40
+ return value;
41
+ };
42
+ const unique = (seen, id, name) => {
43
+ if (seen.has(id))
44
+ throw new Error(`duplicate ${name} ${id}`);
45
+ seen.add(id);
46
+ };
47
+ const boolean = (value, name) => {
48
+ if (typeof value !== "boolean")
49
+ throw new Error(`${name} needs a boolean`);
50
+ return value;
51
+ };
52
+ const MIN_DATE = "1900-01-01";
53
+ const MAX_DATE = "2100-12-31";
54
+ const calendarDate = (value, name) => {
55
+ const parsed = typeof value === "string" && /^[0-9]{4}-[0-9]{2}-[0-9]{2}$/u.test(value) && !value.startsWith("0000")
56
+ ? new Date(`${value}T00:00:00Z`) : undefined;
57
+ if (!parsed || !Number.isFinite(parsed.getTime()) || parsed.toISOString().slice(0, 10) !== value) {
58
+ throw new Error(`${name} needs a YYYY-MM-DD calendar date`);
59
+ }
60
+ return value;
61
+ };
62
+ const KEYBOARDS = ["default", "email", "phone", "number", "url"];
63
+ const fieldPart = (value, ids) => {
64
+ const common = ["id", "type", "label", "placeholder", "required"];
65
+ const raw = object(value, [...common, "multiline", "max_length", "keyboard", "multiple", "options", "min_date", "max_date"], "field");
66
+ const kind = raw.type;
67
+ if (kind !== "text" && kind !== "select" && kind !== "picker" && kind !== "date")
68
+ throw new Error("unknown form field type");
69
+ object(raw, [...common, ...(kind === "text" ? ["multiline", "max_length", "keyboard"] : kind === "select" ? ["multiple", "options"]
70
+ : kind === "picker" ? ["options"] : ["min_date", "max_date"])], "field");
71
+ const id = token(raw.id, 100, "field id");
72
+ unique(ids, id, "field id");
73
+ const field = {
74
+ id, type: kind, label: text(raw.label, kind === "date" ? 40 : kind === "select" ? 30 : 20, "field label"),
75
+ };
76
+ if (raw.placeholder !== undefined)
77
+ field.placeholder = text(raw.placeholder, Infinity, "placeholder", false);
78
+ if (raw.required !== undefined)
79
+ field.required = boolean(raw.required, "required");
80
+ if (kind === "text") {
81
+ if (raw.max_length !== undefined) {
82
+ if (!Number.isSafeInteger(raw.max_length) || raw.max_length < 1)
83
+ throw new Error("max_length needs a positive integer");
84
+ field.max_length = raw.max_length;
85
+ }
86
+ if (raw.multiline !== undefined)
87
+ field.multiline = boolean(raw.multiline, "multiline");
88
+ if (raw.keyboard !== undefined) {
89
+ if (!KEYBOARDS.includes(raw.keyboard))
90
+ throw new Error(`keyboard is one of ${KEYBOARDS.join(", ")}`);
91
+ field.keyboard = raw.keyboard;
92
+ }
93
+ }
94
+ if (kind === "date") {
95
+ if (raw.min_date !== undefined)
96
+ field.min_date = calendarDate(raw.min_date, "min_date");
97
+ if (raw.max_date !== undefined)
98
+ field.max_date = calendarDate(raw.max_date, "max_date");
99
+ if ((field.min_date ?? MIN_DATE) > (field.max_date ?? MAX_DATE)) {
100
+ throw new Error("min_date must not be after max_date");
101
+ }
102
+ }
103
+ if (kind === "select" && raw.multiple !== undefined)
104
+ field.multiple = boolean(raw.multiple, "multiple");
105
+ if (kind === "select" || kind === "picker") {
106
+ const seen = new Set();
107
+ field.options = list(raw.options, kind === "select" ? 20 : 200, "options").map((entry) => {
108
+ const option = object(entry, ["value", "label"], "option");
109
+ const optionValue = token(option.value, 100, "option value");
110
+ unique(seen, optionValue, "option value");
111
+ return { value: optionValue, label: text(option.label, 30, "option label") };
112
+ });
113
+ }
114
+ return field;
115
+ };
116
+ /** Validate and copy a request definition; never accept viewer-only state. */
117
+ export const formPart = (value) => {
118
+ try {
119
+ const raw = object(value, ["type", "title", "pages", "show_summary", "splash", "received_message", "reply_message"], "form");
120
+ if (raw.type !== undefined && raw.type !== "form")
121
+ throw new Error("form part needs type form");
122
+ const pageIds = new Set();
123
+ const fieldIds = new Set();
124
+ const result = {
125
+ type: "form", title: text(raw.title, 80, "form title"),
126
+ pages: list(raw.pages, Infinity, "pages").map((entry) => {
127
+ const page = object(entry, ["id", "title", "fields"], "page");
128
+ const id = token(page.id, 19, "page id");
129
+ unique(pageIds, id, "page id");
130
+ return { id, title: text(page.title, 80, "page title"), fields: list(page.fields, 50, "fields").map((field) => fieldPart(field, fieldIds)) };
131
+ }),
132
+ };
133
+ if (raw.show_summary !== undefined)
134
+ result.show_summary = boolean(raw.show_summary, "show_summary");
135
+ if (raw.splash !== undefined) {
136
+ const splash = object(raw.splash, ["title", "text", "button_title"], "splash");
137
+ result.splash = {
138
+ button_title: text(splash.button_title, 35, "splash button title"),
139
+ ...(splash.title === undefined ? {} : { title: text(splash.title, 80, "splash title") }),
140
+ ...(splash.text === undefined ? {} : { text: text(splash.text, 4096, "splash text", false) }),
141
+ };
142
+ }
143
+ if (raw.received_message !== undefined) {
144
+ const message = object(raw.received_message, ["title", "subtitle"], "received_message");
145
+ result.received_message = {
146
+ title: text(message.title, 512, "received title"),
147
+ ...(message.subtitle === undefined ? {} : { subtitle: text(message.subtitle, 512, "received subtitle", false) }),
148
+ };
149
+ }
150
+ if (raw.reply_message !== undefined) {
151
+ const message = object(raw.reply_message, ["title", "subtitle"], "reply_message");
152
+ if (message.title !== "Form sent")
153
+ throw new Error("reply_message title must be Form sent");
154
+ result.reply_message = {
155
+ title: "Form sent",
156
+ ...(message.subtitle === undefined ? {} : { subtitle: text(message.subtitle, 512, "reply subtitle", false) }),
157
+ };
158
+ }
159
+ return result;
160
+ }
161
+ catch (error) {
162
+ if (error instanceof Error)
163
+ return error.message;
164
+ throw error;
165
+ }
166
+ };
167
+ export const partsWithForm = (text, form) => {
168
+ const validated = formPart(form);
169
+ if (typeof validated === "string")
170
+ throw new Error(validated);
171
+ return text?.trim() ? [{ type: "text", value: text }, validated] : [validated];
172
+ };
173
+ export const parseFormBlock = (body) => {
174
+ try {
175
+ return formPart(JSON.parse(body));
176
+ }
177
+ catch {
178
+ return "the form block is not valid JSON";
179
+ }
180
+ };
181
+ export const splitForm = (answer) => {
182
+ const fence = /(^|\n)[ \t]*```[ \t]*form(?:[ \t][^\r\n]*)?\r?\n([\s\S]*?)\r?\n[ \t]*```[ \t]*(?=\r?\n|$)/gu;
183
+ const matches = [...answer.matchAll(fence)];
184
+ if (!matches.length)
185
+ return { text: answer };
186
+ if (matches.length !== 1 || /(^|\n)[ \t]*```[ \t]*(?:buttons|selection|payment)(?:[ \t][^\r\n]*)?\r?\n/u.test(answer)) {
187
+ return { text: answer, error: "send one form and no other interactive blocks in the same message" };
188
+ }
189
+ const match = matches[0];
190
+ const form = parseFormBlock(match[2] ?? "");
191
+ if (typeof form === "string")
192
+ return { text: answer, error: form };
193
+ const text = [answer.slice(0, match.index).trimEnd(), answer.slice(match.index + match[0].length).trimStart()].filter(Boolean).join("\n\n");
194
+ return { text, form };
195
+ };
196
+ /** Discover server-validated response data, without parsing visible text. */
197
+ export const formReply = (parts, replyTo) => {
198
+ const response = parts.find((part) => part.type === "form_response");
199
+ if (!response || !replyTo?.message_id || !Number.isInteger(replyTo.part_index) || replyTo.part_index < 0)
200
+ return undefined;
201
+ return {
202
+ answers: Object.fromEntries(Object.entries(response.answers).map(([id, value]) => [id, Array.isArray(value) ? [...value] : value])),
203
+ reply_to: { message_id: replyTo.message_id, part_index: replyTo.part_index },
204
+ };
205
+ };
206
+ //# sourceMappingURL=form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -11,8 +11,8 @@ export { IDEMPOTENCY_KEY_MAX_LENGTH, LINK_LINE_INSTRUCTION, LINK_URL_MAX_LENGTH,
11
11
  export { PAYMENT_BLOCK_INSTRUCTION, PAYMENT_CATEGORIES, PAYMENT_DESCRIPTION_MAX_LENGTH, PAYMENT_FENCE, PAYMENT_GUIDANCE, PAYMENT_IMAGE_URL_MAX_LENGTH, createPaymentPart, parsePaymentBlock, paymentRequestFields, splitPayment, type SplitPayment, } from "./payment.js";
12
12
  export { Relay as default } from "./client.js";
13
13
  export { RELAY_ISSUER, verifyRelayIdToken, type RelayIdTokenClaims, type VerifyRelayIdTokenOptions, } from "./login.js";
14
+ export { FORM_FENCE, FORM_GUIDANCE, FORM_BLOCK_INSTRUCTION, formPart, partsWithForm, parseFormBlock, splitForm, formReply, type SplitForm, type FormReply, } from "./form.js";
14
15
  export { SELECTION_BLOCK_INSTRUCTION, SELECTION_FENCE, SELECTION_GUIDANCE, SELECTION_MAX_OPTIONS, SELECTION_TITLE_MAX_LENGTH, SELECTION_LABEL_MAX_LENGTH, SELECTION_VALUE_MAX_LENGTH, SELECTION_CONTEXT_MAX_LENGTH, componentParts, selectionPart, parseSelectionBlock, partsWithSelection, splitSelection, selectionReply, selectionReplyContext, type SelectionReply, type SplitSelection, } from "./selection.js";
15
16
  export { CAROUSEL_MAX_CARDS, CAROUSEL_MIN_CARDS, RICH_CARD_DESCRIPTION_MAX_LENGTH, RICH_CARD_MAX_SUGGESTIONS, RICH_CARD_TITLE_MAX_LENGTH, SUGGESTION_ID_MAX_LENGTH, SUGGESTION_LABEL_MAX_LENGTH, suggestionReply, type SuggestionReply, } from "./rich-cards.js";
16
17
  export { REPLY_TARGET_TEXT_MAX_LENGTH, replyTargetContext, replyTargetParts, } from "./reply-target.js";
17
- export { A2UI_BASIC_CATALOG_ID, A2UI_BROWSER_ACTIONS, A2UI_MEDIA_TYPE, A2UI_VERSION, RELAY_A2UI_CATALOG_ID, a2uiBrowserCardMessages, a2uiBrowserCardUpdate, a2uiBrowserComponent, a2uiPart, isA2uiBrowserAction, deleteA2uiSurface, readA2uiAction, sendA2uiSurface, updateA2uiSurface, type A2uiBrowserCard, type A2uiSendOptions, type A2uiSurface, type A2uiSurfaceUpdate, type A2uiTap, } from "./a2ui.js";
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -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 CHANGED
@@ -10,8 +10,8 @@ export { IDEMPOTENCY_KEY_MAX_LENGTH, LINK_LINE_INSTRUCTION, LINK_URL_MAX_LENGTH,
10
10
  export { PAYMENT_BLOCK_INSTRUCTION, PAYMENT_CATEGORIES, PAYMENT_DESCRIPTION_MAX_LENGTH, PAYMENT_FENCE, PAYMENT_GUIDANCE, PAYMENT_IMAGE_URL_MAX_LENGTH, createPaymentPart, parsePaymentBlock, paymentRequestFields, splitPayment, } from "./payment.js";
11
11
  export { Relay as default } from "./client.js";
12
12
  export { RELAY_ISSUER, verifyRelayIdToken, } from "./login.js";
13
+ export { FORM_FENCE, FORM_GUIDANCE, FORM_BLOCK_INSTRUCTION, formPart, partsWithForm, parseFormBlock, splitForm, formReply, } from "./form.js";
13
14
  export { SELECTION_BLOCK_INSTRUCTION, SELECTION_FENCE, SELECTION_GUIDANCE, SELECTION_MAX_OPTIONS, SELECTION_TITLE_MAX_LENGTH, SELECTION_LABEL_MAX_LENGTH, SELECTION_VALUE_MAX_LENGTH, SELECTION_CONTEXT_MAX_LENGTH, componentParts, selectionPart, parseSelectionBlock, partsWithSelection, splitSelection, selectionReply, selectionReplyContext, } from "./selection.js";
14
15
  export { CAROUSEL_MAX_CARDS, CAROUSEL_MIN_CARDS, RICH_CARD_DESCRIPTION_MAX_LENGTH, RICH_CARD_MAX_SUGGESTIONS, RICH_CARD_TITLE_MAX_LENGTH, SUGGESTION_ID_MAX_LENGTH, SUGGESTION_LABEL_MAX_LENGTH, suggestionReply, } from "./rich-cards.js";
15
16
  export { REPLY_TARGET_TEXT_MAX_LENGTH, replyTargetContext, replyTargetParts, } from "./reply-target.js";
16
- export { A2UI_BASIC_CATALOG_ID, A2UI_BROWSER_ACTIONS, A2UI_MEDIA_TYPE, A2UI_VERSION, RELAY_A2UI_CATALOG_ID, a2uiBrowserCardMessages, a2uiBrowserCardUpdate, a2uiBrowserComponent, a2uiPart, isA2uiBrowserAction, deleteA2uiSurface, readA2uiAction, sendA2uiSurface, updateA2uiSurface, } from "./a2ui.js";
17
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,WAAW,EACX,cAAc,EACd,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,EACR,SAAS,EACT,EAAE,EACF,QAAQ,EACR,eAAe,EACf,KAAK,EACL,SAAS,EACT,aAAa,EACb,oBAAoB,GAErB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,QAAQ,EACR,wBAAwB,GAMzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,aAAa,EACb,0BAA0B,EAC1B,2BAA2B,GAG5B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,SAAS,GAEV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,QAAQ,EACR,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,GAEvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,GAMb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GAEb,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,cAAc,GAGf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,8BAA8B,EAC9B,aAAa,EACb,gBAAgB,EAChB,4BAA4B,EAC5B,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,GAEb,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,YAAY,EACZ,kBAAkB,GAGnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,2BAA2B,EAC3B,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,qBAAqB,GAGtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,gCAAgC,EAChC,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,2BAA2B,EAC3B,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,QAAQ,EACR,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,iBAAiB,GAMlB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,WAAW,EACX,cAAc,EACd,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,EACR,SAAS,EACT,EAAE,EACF,QAAQ,EACR,eAAe,EACf,KAAK,EACL,SAAS,EACT,aAAa,EACb,oBAAoB,GAErB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,QAAQ,EACR,wBAAwB,GAMzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,aAAa,EACb,0BAA0B,EAC1B,2BAA2B,GAG5B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,SAAS,GAEV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,QAAQ,EACR,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,GAEvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,GAMb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GAEb,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,cAAc,GAGf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,8BAA8B,EAC9B,aAAa,EACb,gBAAgB,EAChB,4BAA4B,EAC5B,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,GAEb,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,YAAY,EACZ,kBAAkB,GAGnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,UAAU,EAAE,aAAa,EAAE,sBAAsB,EACjD,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,GAE9D,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,2BAA2B,EAC3B,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,qBAAqB,GAGtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,gCAAgC,EAChC,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,2BAA2B,EAC3B,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../src/links.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAe,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3G;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,iMAC8J,CAAC;AAEjM,kFAAkF;AAClF,eAAO,MAAM,mBAAmB,OAAQ,CAAC;AAEzC,8DAA8D;AAC9D,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SAUtD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,aAAa,EAsBtD,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC;IAC1B;;;;OAIG;IACH,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,KAAG,cA2B/C,CAAC;AAYF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,KAAK,MAAM,EAAE,OAAO,MAAM,KAAG,MAIlE,CAAC"}
1
+ {"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../src/links.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAe,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3G;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,iMAC8J,CAAC;AAEjM,kFAAkF;AAClF,eAAO,MAAM,mBAAmB,OAAQ,CAAC;AAEzC,8DAA8D;AAC9D,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SAUtD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,aAAa,EAsBtD,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC;IAC1B;;;;OAIG;IACH,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,KAAG,cAoC/C,CAAC;AAYF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,KAAK,MAAM,EAAE,OAAO,MAAM,KAAG,MAIlE,CAAC"}
package/dist/links.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { splitButtons } from "./buttons.js";
2
2
  import { splitPayment } from "./payment.js";
3
3
  import { splitSelection } from "./selection.js";
4
+ import { splitForm } from "./form.js";
4
5
  /**
5
6
  * How a text-only agent sends a link: the URL alone on its own line, the way
6
7
  * a person pastes one into Messages and the way Linq's iMessage guide asks for
@@ -74,6 +75,18 @@ export const splitLinks = (text) => {
74
75
  * components remain text with an error.
75
76
  */
76
77
  export const answerMessages = (answer) => {
78
+ const formed = splitForm(answer);
79
+ if (formed.error)
80
+ return { messages: splitLinks(answer).map((segment) => [segment]), error: formed.error };
81
+ if (formed.form) {
82
+ const messages = splitLinks(formed.text).map((segment) => [segment]);
83
+ const prompt = messages.findLast((parts) => parts[0]?.type === "text" && parts[0].value.trim());
84
+ if (prompt)
85
+ prompt.push(formed.form);
86
+ else
87
+ messages.push([formed.form]);
88
+ return { messages };
89
+ }
77
90
  const paid = splitPayment(answer);
78
91
  if (paid.error) {
79
92
  // The block stays in the words, but a link still travels alone; a bad
package/dist/links.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"links.js","sourceRoot":"","sources":["../src/links.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"links.js","sourceRoot":"","sources":["../src/links.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ export interface RelayLoginOptions {
16
16
  clientId: string;
17
17
  /** One of the redirects in your agent's OAuth2 settings. */
18
18
  redirectUri: string;
19
- /** Defaults to "openid profile". Add "email" or "phone" when your agent's scopes allow them. */
19
+ /** Defaults to "openid profile". Add "email", "phone" or "birthdate" when your agent's scopes allow them. */
20
20
  scope?: string;
21
21
  /** Defaults to {@link RELAY_AUTH_ORIGIN}. */
22
22
  authOrigin?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/login-button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAEpF;;;;;;;;;GASG;AAEH,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,6BAA6B,CAAC;AAE5D,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AASD,0DAA0D;AAC1D,wBAAsB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB/E;AAeD,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,CAAC;AAEjH,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,qBAAqB,GAAG,YAAY,CAiB5I"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/login-button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAEpF;;;;;;;;;GASG;AAEH,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,6BAA6B,CAAC;AAE5D,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAC;IACpB,6GAA6G;IAC7G,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AASD,0DAA0D;AAC1D,wBAAsB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB/E;AAeD,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,CAAC;AAEjH,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,qBAAqB,GAAG,YAAY,CAiB5I"}