@burdenoff/fe-libs 2026.1009.2 → 2026.1010.2
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/shared/assistant/appControls/grammar.js +48 -41
- package/dist/shared/assistant/appControls/languages.d.ts +2 -0
- package/dist/shared/assistant/appControls/languages.js +8 -5
- package/dist/shared/assistant/index.d.ts +18 -0
- package/dist/shared/assistant/localUiCommands.d.ts +33 -0
- package/dist/shared/assistant/localUiCommands.js +159 -88
- package/dist/shared/assistant/localeCommands/active.d.ts +19 -0
- package/dist/shared/assistant/localeCommands/active.js +25 -0
- package/dist/shared/assistant/localeCommands/assent.d.ts +25 -0
- package/dist/shared/assistant/localeCommands/assent.js +78 -0
- package/dist/shared/assistant/localeCommands/engine.d.ts +89 -0
- package/dist/shared/assistant/localeCommands/engine.js +351 -0
- package/dist/shared/assistant/localeCommands/evaluate.d.ts +77 -0
- package/dist/shared/assistant/localeCommands/evaluate.js +180 -0
- package/dist/shared/assistant/localeCommands/fold.d.ts +17 -0
- package/dist/shared/assistant/localeCommands/fold.js +66 -0
- package/dist/shared/assistant/localeCommands/frames.d.ts +23 -0
- package/dist/shared/assistant/localeCommands/frames.js +150 -0
- package/dist/shared/assistant/localeCommands/gate.d.ts +37 -0
- package/dist/shared/assistant/localeCommands/gate.js +137 -0
- package/dist/shared/assistant/localeCommands/languageNames.d.ts +11 -0
- package/dist/shared/assistant/localeCommands/languageNames.js +53 -0
- package/dist/shared/assistant/localeCommands/nameForms.d.ts +21 -0
- package/dist/shared/assistant/localeCommands/nameForms.js +44 -0
- package/dist/shared/assistant/localeCommands/normalise.d.ts +49 -0
- package/dist/shared/assistant/localeCommands/normalise.js +87 -0
- package/dist/shared/assistant/localeCommands/symbols.d.ts +8 -0
- package/dist/shared/assistant/localeCommands/symbols.js +6 -0
- package/dist/shared/assistant/localeCommands/tables/ar.d.ts +10 -0
- package/dist/shared/assistant/localeCommands/tables/ar.js +343 -0
- package/dist/shared/assistant/localeCommands/tables/en.d.ts +12 -0
- package/dist/shared/assistant/localeCommands/tables/en.js +28 -0
- package/dist/shared/assistant/localeCommands/tables/es.d.ts +7 -0
- package/dist/shared/assistant/localeCommands/tables/es.js +356 -0
- package/dist/shared/assistant/localeCommands/tables/hi.d.ts +9 -0
- package/dist/shared/assistant/localeCommands/tables/hi.js +495 -0
- package/dist/shared/assistant/localeCommands/tables/ta.d.ts +10 -0
- package/dist/shared/assistant/localeCommands/tables/ta.js +429 -0
- package/dist/shared/assistant/localeCommands/tables/zh.d.ts +9 -0
- package/dist/shared/assistant/localeCommands/tables/zh.js +402 -0
- package/dist/shared/assistant/localeCommands/types.d.ts +172 -0
- package/dist/shared/assistant/localeCommands/types.js +19 -0
- package/dist/shared/assistant/ui/AssistantChatArea.js +1340 -1330
- package/dist/shared/assistant/uiActions/linkContext.d.ts +20 -1
- package/dist/shared/assistant/uiActions/linkContext.js +39 -21
- package/dist/shared/assistant/uiActions/offerYesOnSurface.d.ts +6 -0
- package/dist/shared/assistant/uiActions/offerYesOnSurface.js +1 -1
- package/dist/shared/assistant/writeReplyBinder.d.ts +1 -1
- package/dist/shared/assistant/writeReplySend.d.ts +16 -0
- package/dist/shared/assistant/writeReplySend.js +23 -1
- package/dist/shared/graphql/client.d.ts +20 -0
- package/dist/shared/graphql/client.js +196 -191
- package/dist/shared/graphql/retryPolicy.d.ts +27 -0
- package/dist/shared/graphql/retryPolicy.js +10 -0
- package/dist/shared/utils/apollo.d.ts +6 -2
- package/dist/shared/utils/apollo.js +26 -25
- package/dist/shared-assistant.js +55 -37
- package/package.json +2 -2
|
@@ -16,15 +16,15 @@ function c(e, t) {
|
|
|
16
16
|
for (let e of i.matchAll(r)) a = e[0];
|
|
17
17
|
return a ?? t;
|
|
18
18
|
}
|
|
19
|
-
var l = 60, u = /^(?:log ?out|sign ?out|(?:log|sign) (?:me )?out(?: of (?:the |my |this )?(?:app|application|account|session))?)$/, d = "(?:workspace|workspaces|context|contexts|organi[sz]ation|organi[sz]ations|org|project)", f = "(?:switcher|selector|picker|menu|dropdown|list)", p = /^(?:another|other|a different|different|a new|new|a|the|another one|other one)$/, m = RegExp(`^${i} ${r}(?:notification|notifications) (?:panel|bell|centre|center|menu|tray|drawer|list)$`), h = RegExp(`^${i} ${r}(?:notification )?bell$`),
|
|
19
|
+
var l = 60, u = /^(?:log ?out|sign ?out|(?:log|sign) (?:me )?out(?: of (?:the |my |this )?(?:app|application|account|session))?)$/, d = "(?:workspace|workspaces|context|contexts|organi[sz]ation|organi[sz]ations|org|project)", f = "(?:switcher|selector|picker|menu|dropdown|list)", p = /^(?:another|other|a different|different|a new|new|a|the|another one|other one)$/, m = RegExp(`^${i} ${r}(?:notification|notifications) (?:panel|bell|centre|center|menu|tray|drawer|list)$`), h = RegExp(`^${i} ${r}(?:notification )?bell$`), ee = RegExp(`^${i} ${r}notifications?$`), g = RegExp(`^${i} ${r}(?:help (?:menu|panel|dialog|dialogue|centre|center)|keyboard shortcuts|keyboard help|shortcuts)$`), _ = RegExp(`^${i} ${r}help$`), v = RegExp(`^(?:open|show|start|use|pull up|bring up) ${r}(?:global |app )search(?: (?:bar|box|dialog|dialogue|panel))?$|^(?:open|show|start|use|pull up|bring up) ${r}search (?:bar|box|dialog|dialogue|panel)$`), y = /^(?:open|start|use|pull up|bring up) (?:(?:the|my) )?search$/, b = [
|
|
20
20
|
/^(?:open|start|use|pull up|bring up) (?:(?:the|my) )?(?:global |app )?search (?:for|with) (.+)$/,
|
|
21
21
|
/^(?:global search|search everything|search everywhere|search globally|search the app|search all|search across the app) (?:for )?(.+)$/,
|
|
22
22
|
/^search (?:the app|everything|everywhere|globally|all|across the app) for (.+)$/
|
|
23
|
-
],
|
|
23
|
+
], x = "(?:side ?bar|side menu|side navigation|side nav|navigation (?:bar|menu|panel|drawer)|nav (?:bar|menu|panel|drawer)|left (?:menu|sidebar|panel))", S = RegExp(`^(?:collapse|close|hide|minimi[sz]e|shrink|fold) ${r}${x}$`), C = RegExp(`^(?:expand|open|show|reveal|unhide|bring up|widen|unfold) ${r}${x}$`), w = "(?: (?:group|section|menu|folder|submenu|sub menu|list|dropdown))?", T = RegExp(`^(expand|unfold|open up|open|show) ${r}(.+?)${w}$`), E = RegExp(`^(collapse|fold up|close|hide) ${r}(.+?)${w}$`), D = [
|
|
24
24
|
RegExp(`^(?:change|switch|set|update|turn|put|make)(?: over)? ${r}(?:(?:app|ui|user interface|interface|screen|display|site|system|menu|application) )?language (?:to|into|as|over to) (.+)$`),
|
|
25
25
|
RegExp(`^(?:switch|change|set|put|turn) ${r}(?:app|ui|user interface|interface|screen|display|site|application|menus?) (?:language )?(?:to|into) (.+)$`),
|
|
26
26
|
RegExp(`^(?:show|display|use|run) ${r}(?:app|ui|user interface|interface|screen|display|site|application)(?: menus?)? in (.+)$`)
|
|
27
|
-
], k = RegExp(`^${i} ${r}(?:(?:assistant|ai|conversation|conversations|chat) history|history of (?:my )?(?:conversations|chats)|(?:past|previous|old|earlier) conversations)$`), A = RegExp(`^${i} ${r}history$`), j = RegExp(`^${i} ${r}(?:voice|spoken|speech) transcript$`), M = RegExp(`^${i} ${r}transcript$`),
|
|
27
|
+
], O = RegExp(`^(?:switch|change)(?: over)? to ${r}(.+)$`), k = RegExp(`^${i} ${r}(?:(?:assistant|ai|conversation|conversations|chat) history|history of (?:my )?(?:conversations|chats)|(?:past|previous|old|earlier) conversations)$`), A = RegExp(`^${i} ${r}history$`), j = RegExp(`^${i} ${r}(?:voice|spoken|speech) transcript$`), M = RegExp(`^${i} ${r}transcript$`), N = RegExp(`^${i} ${r}(?:ai|assistant) preview(?: panel| pane| surface)?$`), P = RegExp(`^${i} ${r}preview(?: panel| pane)?$`), F = RegExp(`^(?:close|hide|dismiss) ${r}(?:ai|assistant) preview(?: panel| pane| surface)?$`), te = RegExp(`^(?:close|hide) ${r}preview(?: panel| pane)?$`), I = /^(?:(?:start|begin|open) (?:a |an |another )?(?:new |fresh |blank )?conversation|new conversation|(?:start|begin) (?:a )?(?:new|fresh) conversation with you)$/, L = [RegExp(`^(?:go to|open|show|show me|switch to|select|view|change to|move to|take me to|bring up) ${r}(.+) tab$`), /^(?:switch|change|move) tabs? to (.+)$/], R = "(?:filter|narrow|limit)(?: down)?", z = [RegExp(`^${R}(?: ${r}(?:page|list|table|results|items|rows|view))? (?:by|to|for|on) ${r}(.+)$`)], B = [/^(?:show|display|list|keep) only (.+)$/, /^only (?:show|display|list|keep) (.+)$/], V = [
|
|
28
28
|
RegExp(`^(?:set|change|switch|put|make) ${r}(.+?) filter (?:to|as|on) (.+)$`),
|
|
29
29
|
RegExp(`^${R} ${r}(.+?) (?:by|to|for|on) (.+)$`),
|
|
30
30
|
RegExp(`^(?:use|apply) ${r}(.+?) filter (?:of|with|for|set to) (.+)$`)
|
|
@@ -62,60 +62,60 @@ function $(e) {
|
|
|
62
62
|
let t = e.replace(/\b(?:please|pls)$/, "").trim();
|
|
63
63
|
return !t || t.length > l ? null : t;
|
|
64
64
|
}
|
|
65
|
-
function
|
|
66
|
-
let
|
|
65
|
+
function ne(s, l, x) {
|
|
66
|
+
let w = x.registered;
|
|
67
67
|
if (X.test(s)) return null;
|
|
68
|
-
if (
|
|
69
|
-
if (
|
|
68
|
+
if (w["account.logout"] && u.test(s)) return a({ control: "account.logout" });
|
|
69
|
+
if (w["header.workspace"] || w["header.context"]) {
|
|
70
70
|
let e = RegExp(`^(?:switch|change|move|go|jump|hop)(?: over)? to ${r}(.+?) ${d}$`).exec(s) ?? RegExp(`^(?:switch|change|move) ${r}${d} (?:to|over to) ${r}(.+)$`).exec(s);
|
|
71
|
-
if (e &&
|
|
71
|
+
if (e && w["header.workspace"]) {
|
|
72
72
|
let t = (e[1] ?? "").trim();
|
|
73
73
|
if (t && !p.test(t)) return a({
|
|
74
74
|
control: "header.workspace",
|
|
75
75
|
target: t
|
|
76
76
|
});
|
|
77
|
-
if (
|
|
77
|
+
if (w["header.context"]) return a({ control: "header.context" });
|
|
78
78
|
}
|
|
79
|
-
if (
|
|
79
|
+
if (w["header.context"] && (RegExp(`^${i} ${r}${d} ${f}$`).test(s) || RegExp(`^(?:switch|change) ${r}${d}$`).test(s))) return a({ control: "header.context" });
|
|
80
80
|
}
|
|
81
|
-
if (
|
|
81
|
+
if (w["header.notifications"]) {
|
|
82
82
|
if (m.test(s) || h.test(s)) return a({ control: "header.notifications" });
|
|
83
|
-
if (
|
|
83
|
+
if (ee.test(s)) return o({ control: "header.notifications" });
|
|
84
84
|
}
|
|
85
|
-
if (
|
|
86
|
-
if (
|
|
87
|
-
if (
|
|
85
|
+
if (w["header.help"]) {
|
|
86
|
+
if (g.test(s)) return a({ control: "header.help" });
|
|
87
|
+
if (_.test(s)) return o({ control: "header.help" });
|
|
88
88
|
}
|
|
89
|
-
if (
|
|
90
|
-
for (let e of
|
|
89
|
+
if (w["header.search"]) {
|
|
90
|
+
for (let e of b) {
|
|
91
91
|
let t = e.exec(s), n = t ? $(t[1] ?? "") : null;
|
|
92
92
|
if (n) return a({
|
|
93
93
|
control: "header.search",
|
|
94
94
|
query: c(l, n)
|
|
95
95
|
});
|
|
96
96
|
}
|
|
97
|
-
if (
|
|
97
|
+
if (v.test(s)) return a({
|
|
98
98
|
control: "header.search",
|
|
99
99
|
query: null
|
|
100
100
|
});
|
|
101
|
-
if (
|
|
101
|
+
if (y.test(s)) return o({
|
|
102
102
|
control: "header.search",
|
|
103
103
|
query: null
|
|
104
104
|
});
|
|
105
105
|
}
|
|
106
|
-
if (
|
|
107
|
-
if (
|
|
106
|
+
if (w.sidebar) {
|
|
107
|
+
if (S.test(s)) return a({
|
|
108
108
|
control: "sidebar",
|
|
109
109
|
collapsed: !0
|
|
110
110
|
});
|
|
111
|
-
if (
|
|
111
|
+
if (C.test(s)) return a({
|
|
112
112
|
control: "sidebar",
|
|
113
113
|
collapsed: !1
|
|
114
114
|
});
|
|
115
|
-
let e =
|
|
116
|
-
if (r &&
|
|
115
|
+
let e = T.exec(s), t = e ? null : E.exec(s), r = e ?? t;
|
|
116
|
+
if (r && x.sidebarEntries.length > 0) {
|
|
117
117
|
let t = (r[2] ?? "").trim(), i = r[1] ?? "";
|
|
118
|
-
if (t && n(t,
|
|
118
|
+
if (t && n(t, x.sidebarEntries).kind !== "none") return {
|
|
119
119
|
request: {
|
|
120
120
|
control: "sidebar.entry",
|
|
121
121
|
name: t,
|
|
@@ -125,31 +125,38 @@ function te(s, l, S) {
|
|
|
125
125
|
};
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
|
-
if (
|
|
129
|
-
let
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
128
|
+
if (w.language) {
|
|
129
|
+
for (let e of D) {
|
|
130
|
+
let n = e.exec(s);
|
|
131
|
+
if (!n) continue;
|
|
132
|
+
let r = t(n[1] ?? "");
|
|
133
|
+
if (r) return a({
|
|
134
|
+
control: "language",
|
|
135
|
+
code: r
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
let e = O.exec(s), n = e ? t(e[1] ?? "") : null;
|
|
139
|
+
if (n) return o({
|
|
133
140
|
control: "language",
|
|
134
|
-
code:
|
|
141
|
+
code: n
|
|
135
142
|
});
|
|
136
143
|
}
|
|
137
|
-
if (
|
|
144
|
+
if (w["assistant.history"]) {
|
|
138
145
|
if (k.test(s)) return a({ control: "assistant.history" });
|
|
139
146
|
if (A.test(s)) return o({ control: "assistant.history" });
|
|
140
147
|
}
|
|
141
|
-
if (
|
|
148
|
+
if (w["assistant.transcript"]) {
|
|
142
149
|
if (j.test(s)) return a({ control: "assistant.transcript" });
|
|
143
150
|
if (M.test(s)) return o({ control: "assistant.transcript" });
|
|
144
151
|
}
|
|
145
|
-
if (
|
|
146
|
-
if (
|
|
147
|
-
if (
|
|
148
|
-
if (
|
|
149
|
-
if (
|
|
152
|
+
if (w["assistant.preview"]) {
|
|
153
|
+
if (N.test(s)) return a({ control: "assistant.preview" });
|
|
154
|
+
if (P.test(s)) return o({ control: "assistant.preview" });
|
|
155
|
+
if (F.test(s)) return a({ control: "assistant.preview.close" });
|
|
156
|
+
if (te.test(s)) return o({ control: "assistant.preview.close" });
|
|
150
157
|
}
|
|
151
|
-
if (
|
|
152
|
-
let R =
|
|
158
|
+
if (w["assistant.conversation.new"] && I.test(s)) return a({ control: "assistant.conversation.new" });
|
|
159
|
+
let R = x.page;
|
|
153
160
|
if (!R) return null;
|
|
154
161
|
if (R.tabs.length > 0) {
|
|
155
162
|
let e = Z(L, s), t = e ? (e[1] ?? "").trim() : "";
|
|
@@ -235,4 +242,4 @@ function te(s, l, S) {
|
|
|
235
242
|
return null;
|
|
236
243
|
}
|
|
237
244
|
//#endregion
|
|
238
|
-
export {
|
|
245
|
+
export { ne as matchAppControl, c as queryAsSaid };
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { UiLanguageCode } from './types';
|
|
2
|
+
/** The words the table gives for one UI language (the English name, its own name). */
|
|
3
|
+
export declare function uiLanguageWords(code: UiLanguageCode): readonly string[];
|
|
2
4
|
/** The UI language a phrase names ("Hindi", "the Tamil language"), or null. */
|
|
3
5
|
export declare function uiLanguageFromWords(said: string): UiLanguageCode | null;
|
|
4
6
|
/** The English name of a UI language, for saying that an app does not offer it. */
|
|
@@ -33,11 +33,14 @@ var t = {
|
|
|
33
33
|
]
|
|
34
34
|
}, n = /* @__PURE__ */ new Map();
|
|
35
35
|
for (let [r, i] of Object.entries(t)) for (let t of i) n.set(e(t), r);
|
|
36
|
-
function r(
|
|
36
|
+
function r(e) {
|
|
37
|
+
return t[e];
|
|
38
|
+
}
|
|
39
|
+
function i(t) {
|
|
37
40
|
let r = e(t).replace(/^(?:the|a) /, "").replace(/ language$/, "").trim();
|
|
38
41
|
return n.get(r) ?? null;
|
|
39
42
|
}
|
|
40
|
-
var
|
|
43
|
+
var a = {
|
|
41
44
|
en: "English",
|
|
42
45
|
ar: "Arabic",
|
|
43
46
|
es: "Spanish",
|
|
@@ -45,8 +48,8 @@ var i = {
|
|
|
45
48
|
ta: "Tamil",
|
|
46
49
|
zh: "Chinese"
|
|
47
50
|
};
|
|
48
|
-
function
|
|
49
|
-
return
|
|
51
|
+
function o(e) {
|
|
52
|
+
return a[e];
|
|
50
53
|
}
|
|
51
54
|
//#endregion
|
|
52
|
-
export {
|
|
55
|
+
export { o as uiLanguageEnglishName, i as uiLanguageFromWords, r as uiLanguageWords };
|
|
@@ -237,6 +237,24 @@ export * from './turnTimingReport';
|
|
|
237
237
|
export * from './turnTimingReporter';
|
|
238
238
|
export * from './prewarm';
|
|
239
239
|
export * from './localUiCommands';
|
|
240
|
+
export * from './localeCommands/types';
|
|
241
|
+
export * from './localeCommands/fold';
|
|
242
|
+
export * from './localeCommands/frames';
|
|
243
|
+
export * from './localeCommands/gate';
|
|
244
|
+
export * from './localeCommands/symbols';
|
|
245
|
+
export * from './localeCommands/nameForms';
|
|
246
|
+
export * from './localeCommands/normalise';
|
|
247
|
+
export * from './localeCommands/active';
|
|
248
|
+
export * from './localeCommands/languageNames';
|
|
249
|
+
export * from './localeCommands/assent';
|
|
250
|
+
export * from './localeCommands/engine';
|
|
251
|
+
export * from './localeCommands/evaluate';
|
|
252
|
+
export * from './localeCommands/tables/hi';
|
|
253
|
+
export * from './localeCommands/tables/ta';
|
|
254
|
+
export * from './localeCommands/tables/ar';
|
|
255
|
+
export * from './localeCommands/tables/es';
|
|
256
|
+
export * from './localeCommands/tables/zh';
|
|
257
|
+
export * from './localeCommands/tables/en';
|
|
240
258
|
export * from './localUiCommandCopy';
|
|
241
259
|
export * from './uiActions/navigationOutcome';
|
|
242
260
|
export * from './uiActions/backStack';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AppControlRequest } from './appControls/grammar';
|
|
2
|
+
import { CommandManifest } from './localeCommands/types';
|
|
2
3
|
import { ControlSnapshot } from './appControls/snapshot';
|
|
3
4
|
import { AssistantEntityRoute } from './uiActions/entityRoutes';
|
|
4
5
|
import { NavigationContext, PendingChoice } from './uiActions/linkContext';
|
|
@@ -168,6 +169,28 @@ export interface LocalUiCommandOptions {
|
|
|
168
169
|
* as the editors' adoption, with a seam test that pins both.
|
|
169
170
|
*/
|
|
170
171
|
leaveGuard?: boolean;
|
|
172
|
+
/**
|
|
173
|
+
* ★ BOFF-8867 (multilingual commands): the app's UI language, when it differs
|
|
174
|
+
* from `locale` (a spoken sentence is judged by the input language; the app
|
|
175
|
+
* and the assistant's input language are BOTH read by the per-language
|
|
176
|
+
* tables). Absent: `locale`.
|
|
177
|
+
*/
|
|
178
|
+
uiLocale?: string;
|
|
179
|
+
/** ★ BOFF-8867: the assistant's input language (what the recogniser listens for). */
|
|
180
|
+
inputLocale?: string;
|
|
181
|
+
/**
|
|
182
|
+
* ★ BOFF-8867: narrow the languages with a table to these primary subtags
|
|
183
|
+
* (`hi`, `ta`, `ar`, `es`, `zh`). Absent: every language the manifest turned on.
|
|
184
|
+
*/
|
|
185
|
+
commandLocales?: readonly string[];
|
|
186
|
+
/**
|
|
187
|
+
* ★ BOFF-8867: INTERNAL — the manifest of what is switched on. Products never
|
|
188
|
+
* set it; the evaluation harness and the tests do. Absent: the shipped
|
|
189
|
+
* manifest (`COMMAND_MANIFEST`), which turns on only what passed the blind
|
|
190
|
+
* gate. A manifest a product writes itself can only NARROW the shipped one
|
|
191
|
+
* (`effectiveManifest`): a cell the shipped manifest has off stays off.
|
|
192
|
+
*/
|
|
193
|
+
commandManifest?: CommandManifest;
|
|
171
194
|
}
|
|
172
195
|
/**
|
|
173
196
|
* What only the panel knows at the moment of sending. Optional, so every
|
|
@@ -193,8 +216,18 @@ export interface LocalUiCommandContext {
|
|
|
193
216
|
/**
|
|
194
217
|
* The command this whole utterance is, or null to send it to the model.
|
|
195
218
|
* `destinations` is what the person can see in the app's navigation.
|
|
219
|
+
*
|
|
220
|
+
* ★ BOFF-8867: the English grammar runs FIRST and byte for byte; only when it
|
|
221
|
+
* finds nothing is the per-language engine (`localeCommands`) consulted, and
|
|
222
|
+
* only for what the manifest has switched on.
|
|
196
223
|
*/
|
|
197
224
|
export declare function matchLocalUiCommand(text: string, destinations: readonly LocalDestination[], options?: LocalUiCommandOptions, context?: LocalUiCommandContext): LocalUiCommand | null;
|
|
225
|
+
/**
|
|
226
|
+
* ★ BOFF-8060 / BOFF-8867: could this sentence be "take me there" or a pick —
|
|
227
|
+
* in English or in an active language? The panel builds the offered-navigation
|
|
228
|
+
* context (a parse of the newest reply) only for such a sentence.
|
|
229
|
+
*/
|
|
230
|
+
export declare function mayBeNavigationFollowUp(text: string, options?: LocalUiCommandOptions): boolean;
|
|
198
231
|
/** The most pages one clarification offers. */
|
|
199
232
|
export declare const LINKED_CHOICE_MAX = 4;
|
|
200
233
|
/** The shape of a navigation entry this needs (`VisibleNavItem` fits it). */
|