@repzo/widget-react-native 1.0.9 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +400 -0
- package/README.md +104 -5
- package/lib/commonjs/agent-ui-blocks.js +2 -1
- package/lib/commonjs/agent-ui-blocks.js.map +1 -1
- package/lib/commonjs/api/client.js +25 -0
- package/lib/commonjs/api/client.js.map +1 -1
- package/lib/commonjs/attachments/pickers.js +3 -6
- package/lib/commonjs/attachments/pickers.js.map +1 -1
- package/lib/commonjs/device-id.js +31 -3
- package/lib/commonjs/device-id.js.map +1 -1
- package/lib/commonjs/i18n.js +40 -4
- package/lib/commonjs/i18n.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/locales.js +34 -1
- package/lib/commonjs/locales.js.map +1 -1
- package/lib/commonjs/push/push-notifications.js +9 -8
- package/lib/commonjs/push/push-notifications.js.map +1 -1
- package/lib/commonjs/state/widget-store.js +507 -26
- package/lib/commonjs/state/widget-store.js.map +1 -1
- package/lib/commonjs/storage.js +13 -1
- package/lib/commonjs/storage.js.map +1 -1
- package/lib/commonjs/types.js +20 -2
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/ui/WidgetProvider.js +138 -49
- package/lib/commonjs/ui/WidgetProvider.js.map +1 -1
- package/lib/commonjs/ui/components/AgentUiBlocks.js +35 -15
- package/lib/commonjs/ui/components/AgentUiBlocks.js.map +1 -1
- package/lib/commonjs/ui/components/Launcher.js +4 -1
- package/lib/commonjs/ui/components/Launcher.js.map +1 -1
- package/lib/commonjs/ui/components/Markdown.js +32 -2
- package/lib/commonjs/ui/components/Markdown.js.map +1 -1
- package/lib/commonjs/ui/components/Post.js +1241 -0
- package/lib/commonjs/ui/components/Post.js.map +1 -0
- package/lib/commonjs/ui/components/RatingCard.js +6 -3
- package/lib/commonjs/ui/components/RatingCard.js.map +1 -1
- package/lib/commonjs/ui/hooks/use-widget-insets.js +0 -1
- package/lib/commonjs/ui/hooks/use-widget-insets.js.map +1 -1
- package/lib/commonjs/ui/screens/chat/ChatView.js +67 -29
- package/lib/commonjs/ui/screens/chat/ChatView.js.map +1 -1
- package/lib/commonjs/ui/utils/html.js +9 -1
- package/lib/commonjs/ui/utils/html.js.map +1 -1
- package/lib/commonjs/ui/utils/native-gradient.js +0 -1
- package/lib/commonjs/ui/utils/native-gradient.js.map +1 -1
- package/lib/commonjs/ui/utils/post-html.js +276 -0
- package/lib/commonjs/ui/utils/post-html.js.map +1 -0
- package/lib/commonjs/ui/utils/safe-url.js +16 -0
- package/lib/commonjs/ui/utils/safe-url.js.map +1 -1
- package/lib/module/agent-ui-blocks.js +2 -1
- package/lib/module/agent-ui-blocks.js.map +1 -1
- package/lib/module/api/client.js +25 -0
- package/lib/module/api/client.js.map +1 -1
- package/lib/module/attachments/pickers.js +3 -6
- package/lib/module/attachments/pickers.js.map +1 -1
- package/lib/module/device-id.js +31 -3
- package/lib/module/device-id.js.map +1 -1
- package/lib/module/i18n.js +40 -4
- package/lib/module/i18n.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/locales.js +34 -1
- package/lib/module/locales.js.map +1 -1
- package/lib/module/push/push-notifications.js +9 -8
- package/lib/module/push/push-notifications.js.map +1 -1
- package/lib/module/state/widget-store.js +507 -25
- package/lib/module/state/widget-store.js.map +1 -1
- package/lib/module/storage.js +13 -1
- package/lib/module/storage.js.map +1 -1
- package/lib/module/types.js +20 -2
- package/lib/module/types.js.map +1 -1
- package/lib/module/ui/WidgetProvider.js +139 -50
- package/lib/module/ui/WidgetProvider.js.map +1 -1
- package/lib/module/ui/components/AgentUiBlocks.js +35 -15
- package/lib/module/ui/components/AgentUiBlocks.js.map +1 -1
- package/lib/module/ui/components/Launcher.js +4 -1
- package/lib/module/ui/components/Launcher.js.map +1 -1
- package/lib/module/ui/components/Markdown.js +32 -3
- package/lib/module/ui/components/Markdown.js.map +1 -1
- package/lib/module/ui/components/Post.js +1236 -0
- package/lib/module/ui/components/Post.js.map +1 -0
- package/lib/module/ui/components/RatingCard.js +6 -3
- package/lib/module/ui/components/RatingCard.js.map +1 -1
- package/lib/module/ui/hooks/use-widget-insets.js +0 -1
- package/lib/module/ui/hooks/use-widget-insets.js.map +1 -1
- package/lib/module/ui/screens/chat/ChatView.js +68 -30
- package/lib/module/ui/screens/chat/ChatView.js.map +1 -1
- package/lib/module/ui/utils/html.js +9 -2
- package/lib/module/ui/utils/html.js.map +1 -1
- package/lib/module/ui/utils/native-gradient.js +0 -1
- package/lib/module/ui/utils/native-gradient.js.map +1 -1
- package/lib/module/ui/utils/post-html.js +271 -0
- package/lib/module/ui/utils/post-html.js.map +1 -0
- package/lib/module/ui/utils/safe-url.js +15 -0
- package/lib/module/ui/utils/safe-url.js.map +1 -1
- package/lib/typescript/commonjs/agent-ui-blocks.d.ts.map +1 -1
- package/lib/typescript/commonjs/api/client.d.ts +19 -1
- package/lib/typescript/commonjs/api/client.d.ts.map +1 -1
- package/lib/typescript/commonjs/attachments/pickers.d.ts.map +1 -1
- package/lib/typescript/commonjs/device-id.d.ts.map +1 -1
- package/lib/typescript/commonjs/i18n.d.ts +35 -1
- package/lib/typescript/commonjs/i18n.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +1 -1
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/locales.d.ts.map +1 -1
- package/lib/typescript/commonjs/push/push-notifications.d.ts +6 -2
- package/lib/typescript/commonjs/push/push-notifications.d.ts.map +1 -1
- package/lib/typescript/commonjs/state/widget-store.d.ts +97 -8
- package/lib/typescript/commonjs/state/widget-store.d.ts.map +1 -1
- package/lib/typescript/commonjs/storage.d.ts.map +1 -1
- package/lib/typescript/commonjs/types.d.ts +91 -8
- package/lib/typescript/commonjs/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/WidgetProvider.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/AgentUiBlocks.d.ts +14 -0
- package/lib/typescript/commonjs/ui/components/AgentUiBlocks.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/Launcher.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/Markdown.d.ts +8 -0
- package/lib/typescript/commonjs/ui/components/Markdown.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/Post.d.ts +69 -0
- package/lib/typescript/commonjs/ui/components/Post.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/RatingCard.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/use-widget-insets.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.types.d.ts +10 -0
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.types.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/html.d.ts +1 -0
- package/lib/typescript/commonjs/ui/utils/html.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/native-gradient.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/post-html.d.ts +54 -0
- package/lib/typescript/commonjs/ui/utils/post-html.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/safe-url.d.ts +6 -0
- package/lib/typescript/commonjs/ui/utils/safe-url.d.ts.map +1 -1
- package/lib/typescript/module/agent-ui-blocks.d.ts.map +1 -1
- package/lib/typescript/module/api/client.d.ts +19 -1
- package/lib/typescript/module/api/client.d.ts.map +1 -1
- package/lib/typescript/module/attachments/pickers.d.ts.map +1 -1
- package/lib/typescript/module/device-id.d.ts.map +1 -1
- package/lib/typescript/module/i18n.d.ts +35 -1
- package/lib/typescript/module/i18n.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +1 -1
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/locales.d.ts.map +1 -1
- package/lib/typescript/module/push/push-notifications.d.ts +6 -2
- package/lib/typescript/module/push/push-notifications.d.ts.map +1 -1
- package/lib/typescript/module/state/widget-store.d.ts +97 -8
- package/lib/typescript/module/state/widget-store.d.ts.map +1 -1
- package/lib/typescript/module/storage.d.ts.map +1 -1
- package/lib/typescript/module/types.d.ts +91 -8
- package/lib/typescript/module/types.d.ts.map +1 -1
- package/lib/typescript/module/ui/WidgetProvider.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/AgentUiBlocks.d.ts +14 -0
- package/lib/typescript/module/ui/components/AgentUiBlocks.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/Launcher.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/Markdown.d.ts +8 -0
- package/lib/typescript/module/ui/components/Markdown.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/Post.d.ts +69 -0
- package/lib/typescript/module/ui/components/Post.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/RatingCard.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/use-widget-insets.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/chat/ChatView.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/chat/ChatView.types.d.ts +10 -0
- package/lib/typescript/module/ui/screens/chat/ChatView.types.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/html.d.ts +1 -0
- package/lib/typescript/module/ui/utils/html.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/native-gradient.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/post-html.d.ts +54 -0
- package/lib/typescript/module/ui/utils/post-html.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/safe-url.d.ts +6 -0
- package/lib/typescript/module/ui/utils/safe-url.d.ts.map +1 -1
- package/package.json +14 -4
- package/src/agent-ui-blocks.ts +2 -1
- package/src/api/client.ts +27 -0
- package/src/attachments/pickers.ts +3 -6
- package/src/device-id.ts +34 -3
- package/src/i18n.ts +39 -2
- package/src/index.tsx +4 -0
- package/src/locales.ts +33 -0
- package/src/push/push-notifications.ts +10 -8
- package/src/state/widget-store.ts +480 -24
- package/src/storage.ts +18 -1
- package/src/types.ts +91 -8
- package/src/ui/WidgetProvider.tsx +166 -48
- package/src/ui/components/AgentUiBlocks.tsx +40 -12
- package/src/ui/components/Launcher.tsx +6 -1
- package/src/ui/components/Markdown.tsx +34 -3
- package/src/ui/components/Post.tsx +943 -0
- package/src/ui/components/RatingCard.tsx +6 -2
- package/src/ui/hooks/use-widget-insets.ts +0 -1
- package/src/ui/screens/chat/ChatView.tsx +77 -42
- package/src/ui/screens/chat/ChatView.types.ts +10 -0
- package/src/ui/utils/html.ts +10 -2
- package/src/ui/utils/native-gradient.ts +0 -1
- package/src/ui/utils/post-html.ts +256 -0
- package/src/ui/utils/safe-url.ts +15 -0
|
@@ -15,8 +15,15 @@ const ENTITIES = {
|
|
|
15
15
|
''': "'",
|
|
16
16
|
' ': ' '
|
|
17
17
|
};
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
|
|
19
|
+
/** `😀` / `😀` → 😀. Out-of-range or surrogate code points stay as written. */
|
|
20
|
+
function decodeNumericEntity(match, decimal, hex) {
|
|
21
|
+
const code = decimal !== undefined ? Number(decimal) : parseInt(hex ?? '', 16);
|
|
22
|
+
const valid = Number.isInteger(code) && code > 0 && code <= 0x10ffff && (code < 0xd800 || code > 0xdfff);
|
|
23
|
+
return valid ? String.fromCodePoint(code) : match;
|
|
24
|
+
}
|
|
25
|
+
export function decodeEntities(text) {
|
|
26
|
+
return text.replace(/&(amp|lt|gt|quot|#39|apos|nbsp);/g, match => ENTITIES[match] ?? match).replace(/&#(?:(\d{1,7})|[xX]([0-9a-fA-F]{1,6}));/g, decodeNumericEntity);
|
|
20
27
|
}
|
|
21
28
|
|
|
22
29
|
/** Block-level tags become newlines so paragraphs survive the strip. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ENTITIES","
|
|
1
|
+
{"version":3,"names":["ENTITIES","decodeNumericEntity","match","decimal","hex","code","undefined","Number","parseInt","valid","isInteger","String","fromCodePoint","decodeEntities","text","replace","stripHtml","html","trim","htmlToText","spaced","renderFallbackTokens"],"sourceRoot":"../../../../src","sources":["ui/utils/html.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAEA,MAAMA,QAAgC,GAAG;EACvC,OAAO,EAAE,GAAG;EACZ,MAAM,EAAE,GAAG;EACX,MAAM,EAAE,GAAG;EACX,QAAQ,EAAE,GAAG;EACb,OAAO,EAAE,GAAG;EACZ,QAAQ,EAAE,GAAG;EACb,QAAQ,EAAE;AACZ,CAAC;;AAED;AACA,SAASC,mBAAmBA,CAACC,KAAa,EAAEC,OAAgB,EAAEC,GAAY,EAAU;EAClF,MAAMC,IAAI,GAAGF,OAAO,KAAKG,SAAS,GAAGC,MAAM,CAACJ,OAAO,CAAC,GAAGK,QAAQ,CAACJ,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC;EAC9E,MAAMK,KAAK,GACTF,MAAM,CAACG,SAAS,CAACL,IAAI,CAAC,IAAIA,IAAI,GAAG,CAAC,IAAIA,IAAI,IAAI,QAAQ,KAAKA,IAAI,GAAG,MAAM,IAAIA,IAAI,GAAG,MAAM,CAAC;EAC5F,OAAOI,KAAK,GAAGE,MAAM,CAACC,aAAa,CAACP,IAAI,CAAC,GAAGH,KAAK;AACnD;AAEA,OAAO,SAASW,cAAcA,CAACC,IAAY,EAAU;EACnD,OAAOA,IAAI,CACRC,OAAO,CAAC,mCAAmC,EAAGb,KAAK,IAAKF,QAAQ,CAACE,KAAK,CAAC,IAAIA,KAAK,CAAC,CACjFa,OAAO,CAAC,0CAA0C,EAAEd,mBAAmB,CAAC;AAC7E;;AAEA;AACA,OAAO,SAASe,SAASA,CAACC,IAAY,EAAU;EAC9C,IAAI,CAACA,IAAI,EAAE,OAAO,EAAE;EACpB,OAAOJ,cAAc,CACnBI,IAAI,CACDF,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAC7BA,OAAO,CAAC,uCAAuC,EAAE,IAAI,CAAC,CACtDA,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAC5BA,OAAO,CAAC,UAAU,EAAE,EAAE,CAC3B,CAAC,CACEA,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAC1BG,IAAI,CAAC,CAAC;AACX;;AAEA;AACA,OAAO,SAASC,UAAUA,CAACF,IAAY,EAAU;EAC/C,IAAI,CAACA,IAAI,EAAE,OAAO,EAAE;EACpB,MAAMG,MAAM,GAAGH,IAAI,CAChBF,OAAO,CAAC,oCAAoC,EAAE,KAAK,CAAC,CACpDA,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC;EAC/B,OAAOM,oBAAoB,CACzBR,cAAc,CAACO,MAAM,CAACL,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAC5CA,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CACpBG,IAAI,CAAC,CACV,CAAC;AACH;;AAEA;AACA,SAASG,oBAAoBA,CAACP,IAAY,EAAU;EAClD,OAAOA,IAAI,CACRC,OAAO,CAAC,mCAAmC,EAAE,OAAO,CAAC,CACrDA,OAAO,CAAC,kCAAkC,EAAE,OAAO,CAAC,CACpDA,OAAO,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAC5CA,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CACpBG,IAAI,CAAC,CAAC;AACX","ignoreList":[]}
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
|
|
17
17
|
let nativeGradient = null;
|
|
18
18
|
try {
|
|
19
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
20
19
|
const mod = require('react-native-linear-gradient');
|
|
21
20
|
const component = mod?.default ?? mod?.LinearGradient;
|
|
22
21
|
if (component) nativeGradient = component;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["nativeGradient","mod","require","component","default","LinearGradient","getNativeGradient","VERTICAL","start","x","y","end","DIAGONAL"],"sourceRoot":"../../../../src","sources":["ui/utils/native-gradient.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAgBA,IAAIA,cAAyD,GAAG,IAAI;AAEpE,IAAI;EACF
|
|
1
|
+
{"version":3,"names":["nativeGradient","mod","require","component","default","LinearGradient","getNativeGradient","VERTICAL","start","x","y","end","DIAGONAL"],"sourceRoot":"../../../../src","sources":["ui/utils/native-gradient.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAgBA,IAAIA,cAAyD,GAAG,IAAI;AAEpE,IAAI;EACF,MAAMC,GAAG,GAAGC,OAAO,CAAC,8BAA8B,CAAC;EACnD,MAAMC,SAAS,GAAGF,GAAG,EAAEG,OAAO,IAAIH,GAAG,EAAEI,cAAc;EACrD,IAAIF,SAAS,EAAEH,cAAc,GAAGG,SAA+C;AACjF,CAAC,CAAC,MAAM;EACNH,cAAc,GAAG,IAAI;AACvB;;AAEA;AACA,OAAO,SAASM,iBAAiBA,CAAA,EAA8C;EAC7E,OAAON,cAAc;AACvB;;AAEA;AACA,OAAO,MAAMO,QAAQ,GAAG;EACtBC,KAAK,EAAE;IAAEC,CAAC,EAAE,GAAG;IAAEC,CAAC,EAAE;EAAE,CAAC;EACvBC,GAAG,EAAE;IAAEF,CAAC,EAAE,GAAG;IAAEC,CAAC,EAAE;EAAE;AACtB,CAAU;;AAEV;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAME,QAAQ,GAAG;EACtBJ,KAAK,EAAE;IAAEC,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE;EAAE,CAAC;EACrBC,GAAG,EAAE;IAAEF,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE;EAAE;AACpB,CAAU","ignoreList":[]}
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Send post HTML → blocks a React Native view can draw.
|
|
5
|
+
*
|
|
6
|
+
* The CRM renders and sanitizes the post before sending it, down to a flat
|
|
7
|
+
* set: `<p>` with `<strong>` / `<em>` / `<code>` / `<a href>` / `<br>`,
|
|
8
|
+
* `<ul>` / `<ol>` of `<li>`, `<pre><code>`, a button
|
|
9
|
+
* (`<div data-post-button data-align>` around one link) and social links
|
|
10
|
+
* (`<div data-post-social data-align>` of `<a data-network>`). React Native
|
|
11
|
+
* has no HTML renderer, so this turns that subset into blocks. Unknown tags
|
|
12
|
+
* keep their text. A link survives when it's one the host could route
|
|
13
|
+
* (`myapp://…` through `onOpenUrl`) or the allow-list would open; tapping it
|
|
14
|
+
* goes through `openExternalUrl` like every other widget link.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { decodeEntities } from "./html.js";
|
|
18
|
+
import { isRoutableUrl } from "./safe-url.js";
|
|
19
|
+
export const POST_SOCIAL_NETWORKS = ['facebook', 'x', 'linkedin', 'instagram', 'youtube'];
|
|
20
|
+
const TOKEN = /<(\/?)([a-z][a-z0-9]*)([^>]*)>|([^<]+)/gi;
|
|
21
|
+
function attr(attrs, name) {
|
|
22
|
+
// Whole names only: `href` must not match inside `data-href`.
|
|
23
|
+
const found = new RegExp(`(?:^|\\s)${name}\\s*=\\s*(?:"([^"]*)"|'([^']*)')`, 'i').exec(attrs);
|
|
24
|
+
return found ? decodeEntities(found[1] ?? found[2] ?? '').trim() : null;
|
|
25
|
+
}
|
|
26
|
+
const hasAttr = (attrs, name) => new RegExp(`(^|\\s)${name}(\\s|=|$)`, 'i').test(attrs);
|
|
27
|
+
function alignOf(attrs) {
|
|
28
|
+
const value = attr(attrs, 'data-align');
|
|
29
|
+
return value === 'center' || value === 'right' ? value : 'left';
|
|
30
|
+
}
|
|
31
|
+
function safeHref(attrs) {
|
|
32
|
+
const href = attr(attrs, 'href') ?? '';
|
|
33
|
+
return isRoutableUrl(href) ? href : null;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/** Merges neighbouring runs that look the same and trims the outer whitespace. */
|
|
37
|
+
function tidy(runs) {
|
|
38
|
+
const out = [];
|
|
39
|
+
for (const run of runs) {
|
|
40
|
+
const last = out[out.length - 1];
|
|
41
|
+
if (last && last.bold === run.bold && last.italic === run.italic && last.code === run.code && last.href === run.href) {
|
|
42
|
+
last.text += run.text;
|
|
43
|
+
} else {
|
|
44
|
+
out.push({
|
|
45
|
+
...run
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
if (out.length) {
|
|
50
|
+
out[0].text = out[0].text.replace(/^[ \t]+/, '');
|
|
51
|
+
out[out.length - 1].text = out[out.length - 1].text.replace(/[ \t]+$/, '');
|
|
52
|
+
}
|
|
53
|
+
return out.filter(run => run.text.length > 0);
|
|
54
|
+
}
|
|
55
|
+
export function parsePostHtml(html) {
|
|
56
|
+
const blocks = [];
|
|
57
|
+
let bold = 0;
|
|
58
|
+
let italic = 0;
|
|
59
|
+
let code = 0;
|
|
60
|
+
const links = [];
|
|
61
|
+
|
|
62
|
+
// What's being built right now.
|
|
63
|
+
let runs = [];
|
|
64
|
+
// The top-level list being built, and the lists open inside it (nested lists stay in it, indented).
|
|
65
|
+
let list = null;
|
|
66
|
+
const openLists = [];
|
|
67
|
+
let itemDepth = 0;
|
|
68
|
+
let pre = null;
|
|
69
|
+
let button = null;
|
|
70
|
+
let social = null;
|
|
71
|
+
const flushParagraph = () => {
|
|
72
|
+
const tidied = tidy(runs);
|
|
73
|
+
runs = [];
|
|
74
|
+
if (tidied.length) blocks.push({
|
|
75
|
+
type: 'paragraph',
|
|
76
|
+
runs: tidied
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
const flushItem = () => {
|
|
80
|
+
if (!list) return;
|
|
81
|
+
const tidied = tidy(runs);
|
|
82
|
+
runs = [];
|
|
83
|
+
if (tidied.length) {
|
|
84
|
+
list.items.push(tidied);
|
|
85
|
+
list.levels.push({
|
|
86
|
+
depth: openLists.length - 1,
|
|
87
|
+
ordered: openLists[openLists.length - 1] ?? list.ordered
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
const endList = () => {
|
|
92
|
+
if (list && list.items.length) blocks.push({
|
|
93
|
+
type: 'list',
|
|
94
|
+
...list
|
|
95
|
+
});
|
|
96
|
+
list = null;
|
|
97
|
+
openLists.length = 0;
|
|
98
|
+
itemDepth = 0;
|
|
99
|
+
};
|
|
100
|
+
const pushText = text => {
|
|
101
|
+
if (!text) return;
|
|
102
|
+
if (pre !== null) {
|
|
103
|
+
pre += text;
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
if (button) {
|
|
107
|
+
button.label += text;
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
if (social) return;
|
|
111
|
+
// Text between list items is only formatting whitespace.
|
|
112
|
+
if (list && itemDepth === 0) return;
|
|
113
|
+
runs.push({
|
|
114
|
+
text: text.replace(/\s+/g, ' '),
|
|
115
|
+
bold: bold > 0,
|
|
116
|
+
italic: italic > 0,
|
|
117
|
+
code: code > 0,
|
|
118
|
+
href: links.length ? links[links.length - 1] : null
|
|
119
|
+
});
|
|
120
|
+
};
|
|
121
|
+
for (const match of (html || '').matchAll(TOKEN)) {
|
|
122
|
+
const [, closing, rawTag, attrs = '', text] = match;
|
|
123
|
+
if (text !== undefined) {
|
|
124
|
+
pushText(decodeEntities(text));
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
127
|
+
const tag = rawTag.toLowerCase();
|
|
128
|
+
const open = !closing;
|
|
129
|
+
if (pre !== null && tag !== 'pre') continue; // Only text inside a code block.
|
|
130
|
+
|
|
131
|
+
switch (tag) {
|
|
132
|
+
case 'p':
|
|
133
|
+
if (list) {
|
|
134
|
+
// Lists from the editor wrap items in <p>: keep it one line per item.
|
|
135
|
+
if (!open) runs.push({
|
|
136
|
+
text: ' ',
|
|
137
|
+
bold: false,
|
|
138
|
+
italic: false,
|
|
139
|
+
code: false,
|
|
140
|
+
href: null
|
|
141
|
+
});
|
|
142
|
+
} else {
|
|
143
|
+
flushParagraph();
|
|
144
|
+
}
|
|
145
|
+
break;
|
|
146
|
+
case 'br':
|
|
147
|
+
if (!social && !button) runs.push({
|
|
148
|
+
text: '\n',
|
|
149
|
+
bold: bold > 0,
|
|
150
|
+
italic: italic > 0,
|
|
151
|
+
code: code > 0,
|
|
152
|
+
href: null
|
|
153
|
+
});
|
|
154
|
+
break;
|
|
155
|
+
case 'strong':
|
|
156
|
+
case 'b':
|
|
157
|
+
bold = Math.max(0, bold + (open ? 1 : -1));
|
|
158
|
+
break;
|
|
159
|
+
case 'em':
|
|
160
|
+
case 'i':
|
|
161
|
+
italic = Math.max(0, italic + (open ? 1 : -1));
|
|
162
|
+
break;
|
|
163
|
+
case 'code':
|
|
164
|
+
code = Math.max(0, code + (open ? 1 : -1));
|
|
165
|
+
break;
|
|
166
|
+
case 'ul':
|
|
167
|
+
case 'ol':
|
|
168
|
+
if (open) {
|
|
169
|
+
if (list) {
|
|
170
|
+
// A list inside an item: what the item said so far is its line.
|
|
171
|
+
flushItem();
|
|
172
|
+
} else {
|
|
173
|
+
flushParagraph();
|
|
174
|
+
list = {
|
|
175
|
+
ordered: tag === 'ol',
|
|
176
|
+
items: [],
|
|
177
|
+
levels: []
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
openLists.push(tag === 'ol');
|
|
181
|
+
} else if (list) {
|
|
182
|
+
flushItem();
|
|
183
|
+
openLists.pop();
|
|
184
|
+
if (openLists.length === 0) endList();
|
|
185
|
+
}
|
|
186
|
+
break;
|
|
187
|
+
case 'li':
|
|
188
|
+
flushItem();
|
|
189
|
+
if (list) itemDepth = Math.max(0, itemDepth + (open ? 1 : -1));
|
|
190
|
+
break;
|
|
191
|
+
case 'pre':
|
|
192
|
+
if (open) {
|
|
193
|
+
flushParagraph();
|
|
194
|
+
pre = '';
|
|
195
|
+
} else if (pre !== null) {
|
|
196
|
+
const textBlock = pre.replace(/^\n+|\n+$/g, '');
|
|
197
|
+
if (textBlock) blocks.push({
|
|
198
|
+
type: 'code',
|
|
199
|
+
text: textBlock
|
|
200
|
+
});
|
|
201
|
+
pre = null;
|
|
202
|
+
}
|
|
203
|
+
break;
|
|
204
|
+
case 'div':
|
|
205
|
+
if (open && hasAttr(attrs, 'data-post-button')) {
|
|
206
|
+
flushParagraph();
|
|
207
|
+
button = {
|
|
208
|
+
href: null,
|
|
209
|
+
align: alignOf(attrs),
|
|
210
|
+
label: ''
|
|
211
|
+
};
|
|
212
|
+
} else if (open && hasAttr(attrs, 'data-post-social')) {
|
|
213
|
+
flushParagraph();
|
|
214
|
+
social = {
|
|
215
|
+
align: alignOf(attrs),
|
|
216
|
+
links: []
|
|
217
|
+
};
|
|
218
|
+
} else if (!open) {
|
|
219
|
+
if (button) {
|
|
220
|
+
const label = button.label.replace(/\s+/g, ' ').trim();
|
|
221
|
+
if (label && button.href) blocks.push({
|
|
222
|
+
type: 'button',
|
|
223
|
+
label,
|
|
224
|
+
href: button.href,
|
|
225
|
+
align: button.align
|
|
226
|
+
});
|
|
227
|
+
button = null;
|
|
228
|
+
} else if (social) {
|
|
229
|
+
if (social.links.length) blocks.push({
|
|
230
|
+
type: 'social',
|
|
231
|
+
align: social.align,
|
|
232
|
+
links: social.links
|
|
233
|
+
});
|
|
234
|
+
social = null;
|
|
235
|
+
} else {
|
|
236
|
+
flushParagraph();
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
break;
|
|
240
|
+
case 'a':
|
|
241
|
+
if (button) {
|
|
242
|
+
if (open) button.href = safeHref(attrs);
|
|
243
|
+
} else if (social) {
|
|
244
|
+
if (open) {
|
|
245
|
+
const network = attr(attrs, 'data-network');
|
|
246
|
+
const href = safeHref(attrs);
|
|
247
|
+
if (network && POST_SOCIAL_NETWORKS.includes(network) && href) {
|
|
248
|
+
social.links.push({
|
|
249
|
+
network,
|
|
250
|
+
href
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
} else if (open) {
|
|
255
|
+
links.push(safeHref(attrs));
|
|
256
|
+
} else {
|
|
257
|
+
links.pop();
|
|
258
|
+
}
|
|
259
|
+
break;
|
|
260
|
+
default:
|
|
261
|
+
break;
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
if (list) {
|
|
265
|
+
flushItem();
|
|
266
|
+
endList();
|
|
267
|
+
}
|
|
268
|
+
flushParagraph();
|
|
269
|
+
return blocks;
|
|
270
|
+
}
|
|
271
|
+
//# sourceMappingURL=post-html.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["decodeEntities","isRoutableUrl","POST_SOCIAL_NETWORKS","TOKEN","attr","attrs","name","found","RegExp","exec","trim","hasAttr","test","alignOf","value","safeHref","href","tidy","runs","out","run","last","length","bold","italic","code","text","push","replace","filter","parsePostHtml","html","blocks","links","list","openLists","itemDepth","pre","button","social","flushParagraph","tidied","type","flushItem","items","levels","depth","ordered","endList","pushText","label","match","matchAll","closing","rawTag","undefined","tag","toLowerCase","open","Math","max","pop","textBlock","align","network","includes"],"sourceRoot":"../../../../src","sources":["ui/utils/post-html.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -39,6 +39,21 @@ export function isSafeExternalUrl(url) {
|
|
|
39
39
|
return scheme === 'http:' || scheme === 'https:' ? isHttpUrl(url) : true;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
+
/** Schemes no host would route — content carrying them never shows as a link. */
|
|
43
|
+
const NEVER_ROUTED_SCHEMES = new Set(['javascript:', 'vbscript:', 'data:', 'file:', 'blob:']);
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Worth drawing as a link: absolute, with a scheme the host could route
|
|
47
|
+
* through `onOpenUrl` (`myapp://…`) or the allow-list would open. Tapping it
|
|
48
|
+
* still goes through `openExternalUrl`, which makes the actual call.
|
|
49
|
+
*/
|
|
50
|
+
export function isRoutableUrl(url) {
|
|
51
|
+
if (!url || CONTROL_CHARS.test(url)) return false;
|
|
52
|
+
const scheme = urlScheme(url);
|
|
53
|
+
if (!scheme || NEVER_ROUTED_SCHEMES.has(scheme)) return false;
|
|
54
|
+
return scheme === 'http:' || scheme === 'https:' ? isHttpUrl(url) : true;
|
|
55
|
+
}
|
|
56
|
+
|
|
42
57
|
/** Host handler first, then the allow-list. Never throws. */
|
|
43
58
|
export async function openExternalUrl(url) {
|
|
44
59
|
const target = (url ?? '').trim();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Linking","ALLOWED_SCHEMES","Set","CONTROL_CHARS","hostHandler","setOpenUrlHandler","handler","urlScheme","url","match","exec","toLowerCase","isHttpUrl","test","isSafeExternalUrl","scheme","has","openExternalUrl","target","trim","error","console","warn","openURL","catch"],"sourceRoot":"../../../../src","sources":["ui/utils/safe-url.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,OAAO,QAAQ,cAAc;AAItC,MAAMC,eAAe,GAAG,IAAIC,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;;AAEvE;AACA,MAAMC,aAAa,GAAG,uBAAuB;AAE7C,IAAIC,WAAkC,GAAG,IAAI;;AAE7C;AACA,OAAO,SAASC,iBAAiBA,CAACC,OAA8B,EAAQ;EACtEF,WAAW,GAAGE,OAAO;AACvB;;AAEA;AACA,OAAO,SAASC,SAASA,CAACC,GAAW,EAAiB;EACpD,MAAMC,KAAK,GAAG,wBAAwB,CAACC,IAAI,CAACF,GAAG,CAAC;EAChD,OAAOC,KAAK,GAAG,GAAGA,KAAK,CAAC,CAAC,CAAC,CAACE,WAAW,CAAC,CAAC,GAAG,GAAG,IAAI;AACpD;;AAEA;AACA,OAAO,SAASC,SAASA,CAACJ,GAAW,EAAW;EAC9C,OAAO,CAACL,aAAa,CAACU,IAAI,CAACL,GAAG,CAAC,IAAI,qBAAqB,CAACK,IAAI,CAACL,GAAG,CAAC;AACpE;AAEA,OAAO,SAASM,iBAAiBA,CAACN,GAAW,EAAW;EACtD,IAAI,CAACA,GAAG,IAAIL,aAAa,CAACU,IAAI,CAACL,GAAG,CAAC,EAAE,OAAO,KAAK;EACjD,MAAMO,MAAM,GAAGR,SAAS,CAACC,GAAG,CAAC;EAC7B,IAAI,CAACO,MAAM,IAAI,CAACd,eAAe,CAACe,GAAG,CAACD,MAAM,CAAC,EAAE,OAAO,KAAK;EACzD,OAAOA,MAAM,KAAK,OAAO,IAAIA,MAAM,KAAK,QAAQ,GAAGH,SAAS,CAACJ,GAAG,CAAC,GAAG,IAAI;AAC1E;;AAEA;AACA,OAAO,
|
|
1
|
+
{"version":3,"names":["Linking","ALLOWED_SCHEMES","Set","CONTROL_CHARS","hostHandler","setOpenUrlHandler","handler","urlScheme","url","match","exec","toLowerCase","isHttpUrl","test","isSafeExternalUrl","scheme","has","NEVER_ROUTED_SCHEMES","isRoutableUrl","openExternalUrl","target","trim","error","console","warn","openURL","catch"],"sourceRoot":"../../../../src","sources":["ui/utils/safe-url.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,OAAO,QAAQ,cAAc;AAItC,MAAMC,eAAe,GAAG,IAAIC,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;;AAEvE;AACA,MAAMC,aAAa,GAAG,uBAAuB;AAE7C,IAAIC,WAAkC,GAAG,IAAI;;AAE7C;AACA,OAAO,SAASC,iBAAiBA,CAACC,OAA8B,EAAQ;EACtEF,WAAW,GAAGE,OAAO;AACvB;;AAEA;AACA,OAAO,SAASC,SAASA,CAACC,GAAW,EAAiB;EACpD,MAAMC,KAAK,GAAG,wBAAwB,CAACC,IAAI,CAACF,GAAG,CAAC;EAChD,OAAOC,KAAK,GAAG,GAAGA,KAAK,CAAC,CAAC,CAAC,CAACE,WAAW,CAAC,CAAC,GAAG,GAAG,IAAI;AACpD;;AAEA;AACA,OAAO,SAASC,SAASA,CAACJ,GAAW,EAAW;EAC9C,OAAO,CAACL,aAAa,CAACU,IAAI,CAACL,GAAG,CAAC,IAAI,qBAAqB,CAACK,IAAI,CAACL,GAAG,CAAC;AACpE;AAEA,OAAO,SAASM,iBAAiBA,CAACN,GAAW,EAAW;EACtD,IAAI,CAACA,GAAG,IAAIL,aAAa,CAACU,IAAI,CAACL,GAAG,CAAC,EAAE,OAAO,KAAK;EACjD,MAAMO,MAAM,GAAGR,SAAS,CAACC,GAAG,CAAC;EAC7B,IAAI,CAACO,MAAM,IAAI,CAACd,eAAe,CAACe,GAAG,CAACD,MAAM,CAAC,EAAE,OAAO,KAAK;EACzD,OAAOA,MAAM,KAAK,OAAO,IAAIA,MAAM,KAAK,QAAQ,GAAGH,SAAS,CAACJ,GAAG,CAAC,GAAG,IAAI;AAC1E;;AAEA;AACA,MAAMS,oBAAoB,GAAG,IAAIf,GAAG,CAAC,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;;AAE7F;AACA;AACA;AACA;AACA;AACA,OAAO,SAASgB,aAAaA,CAACV,GAAW,EAAW;EAClD,IAAI,CAACA,GAAG,IAAIL,aAAa,CAACU,IAAI,CAACL,GAAG,CAAC,EAAE,OAAO,KAAK;EACjD,MAAMO,MAAM,GAAGR,SAAS,CAACC,GAAG,CAAC;EAC7B,IAAI,CAACO,MAAM,IAAIE,oBAAoB,CAACD,GAAG,CAACD,MAAM,CAAC,EAAE,OAAO,KAAK;EAC7D,OAAOA,MAAM,KAAK,OAAO,IAAIA,MAAM,KAAK,QAAQ,GAAGH,SAAS,CAACJ,GAAG,CAAC,GAAG,IAAI;AAC1E;;AAEA;AACA,OAAO,eAAeW,eAAeA,CAACX,GAA8B,EAAiB;EACnF,MAAMY,MAAM,GAAG,CAACZ,GAAG,IAAI,EAAE,EAAEa,IAAI,CAAC,CAAC;EACjC,IAAI,CAACD,MAAM,EAAE;EAEb,IAAIhB,WAAW,EAAE;IACf,IAAI;MACF,IAAI,MAAMA,WAAW,CAACgB,MAAM,CAAC,EAAE;IACjC,CAAC,CAAC,OAAOE,KAAK,EAAE;MACdC,OAAO,CAACC,IAAI,CAAC,qEAAqE,EAAEF,KAAK,CAAC;IAC5F;EACF;EAEA,IAAI,CAACR,iBAAiB,CAACM,MAAM,CAAC,EAAE;IAC9BG,OAAO,CAACC,IAAI,CAAC,2DAA2DjB,SAAS,CAACa,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC;IACvG;EACF;EACApB,OAAO,CAACyB,OAAO,CAACL,MAAM,CAAC,CAACM,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AACzC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-ui-blocks.d.ts","sourceRoot":"","sources":["../../../src/agent-ui-blocks.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAgM/E;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,EAAE,CAmBjE;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,kBAGpF;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GACnD,kBAAkB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"agent-ui-blocks.d.ts","sourceRoot":"","sources":["../../../src/agent-ui-blocks.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAgM/E;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,EAAE,CAmBjE;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,kBAGpF;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GACnD,kBAAkB,GAAG,IAAI,CAkB3B;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CA+CxE"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* 401 triggers one silent re-init + retry (single-flight, owned by the store).
|
|
8
8
|
* The token itself lives in `SecureStorage`.
|
|
9
9
|
*/
|
|
10
|
-
import type { AgentUiAction, Conversation, ConversationRatingResult, InitResponse, Message, OutboundMessage, RepzoWidgetErrorCode, WidgetConfig, WidgetUser } from '../types';
|
|
10
|
+
import type { AgentUiAction, Conversation, ConversationRatingResult, InitResponse, Message, OutboundMessage, PostInteractionKind, PostReply, RepzoWidgetErrorCode, WidgetConfig, WidgetPost, WidgetUser } from '../types';
|
|
11
11
|
export declare function isTerminalErrorCode(code: string | null | undefined): boolean;
|
|
12
12
|
export declare class RepzoWidgetError extends Error {
|
|
13
13
|
readonly status: number;
|
|
@@ -46,6 +46,24 @@ export declare class WidgetApiClient {
|
|
|
46
46
|
getOutboundMessage(): Promise<{
|
|
47
47
|
message: OutboundMessage | null;
|
|
48
48
|
}>;
|
|
49
|
+
/**
|
|
50
|
+
* The Send post this visitor should see now, if any.
|
|
51
|
+
* `recheckInMs`: ask again after this long — the shown one stops then.
|
|
52
|
+
*/
|
|
53
|
+
getPost(): Promise<{
|
|
54
|
+
post: WidgetPost | null;
|
|
55
|
+
recheckInMs?: number | null;
|
|
56
|
+
}>;
|
|
57
|
+
/**
|
|
58
|
+
* Reports what the visitor did with a post; `hidden` means load the next
|
|
59
|
+
* one. A reply comes back as saved (`reply`) — it's also delivered to the
|
|
60
|
+
* post's conversation in the inbox, where the team answers.
|
|
61
|
+
*/
|
|
62
|
+
sendPostInteraction(campaignId: string, kind: PostInteractionKind, value?: string): Promise<{
|
|
63
|
+
hidden: boolean;
|
|
64
|
+
reply?: PostReply;
|
|
65
|
+
conversationId?: string | null;
|
|
66
|
+
}>;
|
|
49
67
|
/**
|
|
50
68
|
* Does NOT store the returned token — the store persists it only once it
|
|
51
69
|
* knows the identity op that asked for it is still current.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/api/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/api/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pickers.d.ts","sourceRoot":"","sources":["../../../../src/attachments/pickers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAmB,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAEhG,mEAAmE;AACnE,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,oEAAoE;AACpE,eAAO,MAAM,oBAAoB,UAAY,CAAC;AAC9C;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,UAAY,CAAC;AAKpD,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,oEAAoE;AACpE,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,UAAU,GACV,kBAAkB,GAClB,cAAc,GACd,QAAQ,CAAC;AAEb,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,uEAAuE;IACvE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACnC;
|
|
1
|
+
{"version":3,"file":"pickers.d.ts","sourceRoot":"","sources":["../../../../src/attachments/pickers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAmB,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAEhG,mEAAmE;AACnE,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,oEAAoE;AACpE,eAAO,MAAM,oBAAoB,UAAY,CAAC;AAC9C;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,UAAY,CAAC;AAKpD,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,oEAAoE;AACpE,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,UAAU,GACV,kBAAkB,GAClB,cAAc,GACd,QAAQ,CAAC;AAEb,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,uEAAuE;IACvE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACnC;AAgDD,wEAAwE;AACxE,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI,GAAG,IAAI,CAEvF;AAID;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,EAAE,CAWzD;AAOD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,eAAe,EAAE,GACzB,OAAO,CAAC,UAAU,CAAC,CAqDrB;AAkND,mGAAmG;AACnG,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,aAAa,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,IAAI,EAAE,MAAM,GACX,iBAAiB,GAAG,IAAI,CAM1B;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAExE;AAKD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAIpF;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED,8DAA8D;AAC9D,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED,mFAAmF;AACnF,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIjD;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAEjF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-id.d.ts","sourceRoot":"","sources":["../../../src/device-id.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"device-id.d.ts","sourceRoot":"","sources":["../../../src/device-id.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqEH,wBAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAanD;AAED,iDAAiD;AACjD,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;;GAGG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAGpD"}
|
|
@@ -12,7 +12,7 @@ export type Translator = (key: string, fallback: string) => string;
|
|
|
12
12
|
* copy always outranks a bundled translation.
|
|
13
13
|
*/
|
|
14
14
|
export declare function createTranslator(config: WidgetConfig | null, locale: string): Translator;
|
|
15
|
-
/** The config with its welcome text in the active locale. */
|
|
15
|
+
/** The config with its welcome text and offline message in the active locale. */
|
|
16
16
|
export declare function localizeWelcomeText(config: WidgetConfig | null, locale: string): WidgetConfig | null;
|
|
17
17
|
export declare const DEFAULT_LABELS: {
|
|
18
18
|
readonly back: "Back";
|
|
@@ -89,6 +89,14 @@ export declare const DEFAULT_LABELS: {
|
|
|
89
89
|
readonly rating5: "Amazing";
|
|
90
90
|
readonly procedureSend: "Send details";
|
|
91
91
|
readonly procedureSent: "Sent";
|
|
92
|
+
readonly procedureShareDetails: "Share details";
|
|
93
|
+
readonly procedureDetailsSent: "Details sent";
|
|
94
|
+
readonly procedureHide: "Hide";
|
|
95
|
+
readonly procedureFieldCount: "{count} fields";
|
|
96
|
+
readonly procedureFieldCountOne: "1 field";
|
|
97
|
+
readonly procedureTitle: "Details";
|
|
98
|
+
readonly procedureEmailPlaceholder: "name@example.com";
|
|
99
|
+
readonly procedurePhonePlaceholder: "+962 7...";
|
|
92
100
|
readonly fieldRequired: "{field} is required";
|
|
93
101
|
readonly invalidEmail: "Enter a valid email address";
|
|
94
102
|
readonly working: "Working...";
|
|
@@ -99,11 +107,37 @@ export declare const DEFAULT_LABELS: {
|
|
|
99
107
|
readonly notificationNewReply: "New reply";
|
|
100
108
|
readonly notificationAttachment: "Sent an attachment";
|
|
101
109
|
readonly notificationOpenHint: "Opens the conversation";
|
|
110
|
+
readonly postFrom: "{name} from {workspace}";
|
|
111
|
+
readonly postNewMessage: "New message";
|
|
112
|
+
readonly postOpenHint: "Opens the message";
|
|
113
|
+
readonly postClose: "Close";
|
|
114
|
+
readonly postMinimize: "Minimize";
|
|
115
|
+
readonly postReplyPlaceholder: "Write a reply…";
|
|
116
|
+
readonly postSend: "Send";
|
|
117
|
+
readonly postSent: "Sent";
|
|
118
|
+
readonly postReplyFailed: "Couldn't send your reply. Try again.";
|
|
119
|
+
readonly postReactions: "Reactions";
|
|
120
|
+
readonly postThanks: "Thanks for your feedback!";
|
|
121
|
+
readonly postConversation: "Your conversation";
|
|
122
|
+
readonly postContinueChat: "Continue in Messenger";
|
|
102
123
|
readonly blockService: "Service";
|
|
103
124
|
readonly blockProduct: "Product";
|
|
104
125
|
readonly blockChooseTime: "Choose a time";
|
|
105
126
|
readonly blockProfessional: "Professional";
|
|
106
127
|
readonly blockPriceOffer: "Price offer";
|
|
128
|
+
readonly blockSubtotal: "Subtotal";
|
|
129
|
+
readonly blockDiscount: "Discount";
|
|
130
|
+
readonly blockTax: "Tax";
|
|
131
|
+
readonly blockShipping: "Shipping";
|
|
132
|
+
readonly blockTotal: "Total";
|
|
133
|
+
readonly blockMinutes: "{count} min";
|
|
134
|
+
readonly blockSave: "Save";
|
|
135
|
+
readonly blockAnyAvailable: "Any available";
|
|
136
|
+
readonly blockWithProvider: "With {name}";
|
|
137
|
+
readonly blockBookTime: "Book this time";
|
|
138
|
+
readonly blockValidUntil: "Valid until {date}";
|
|
139
|
+
readonly launcherOpen: "Open chat";
|
|
140
|
+
readonly launcherClose: "Close chat";
|
|
107
141
|
};
|
|
108
142
|
export type LabelKey = keyof typeof DEFAULT_LABELS;
|
|
109
143
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/i18n.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;AAEnE;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAYxF;
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/i18n.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;AAEnE;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAYxF;AAeD,iFAAiF;AACjF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAQpG;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0IjB,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,cAAc,CAAC;AAEnD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAI7F;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAM3E"}
|
|
@@ -13,7 +13,7 @@ export { RepzoWidgetEvents } from './events';
|
|
|
13
13
|
export { RepzoWidgetError } from './api/client';
|
|
14
14
|
export { DEFAULT_BASE_URL } from './types';
|
|
15
15
|
export { useWidgetState } from './state/use-widget-state';
|
|
16
|
-
export type { AgentUiAction, AgentUiBlock, AttachmentSource, BootOptions, Conversation, InAppNotification, Message, OutboundMessage, PreChatField, RepzoPickedFile, RepzoWidgetAttachmentOptions, RepzoWidgetErrorCode, RepzoWidgetStorageAdapter, WidgetAttachment, WidgetConfig, WidgetCustomAttributes, WidgetSpace, WidgetSpaceType, WidgetState, WidgetUser, WidgetUserAccount, WidgetView, } from './types';
|
|
16
|
+
export type { AgentUiAction, AgentUiBlock, AttachmentSource, BootOptions, Conversation, InAppNotification, Message, OutboundMessage, PostInteractionKind, PostReply, PostThreadMessage, PreChatField, RepzoPickedFile, RepzoWidgetAttachmentOptions, RepzoWidgetErrorCode, RepzoWidgetStorageAdapter, WidgetAttachment, WidgetConfig, WidgetCustomAttributes, WidgetPost, WidgetSpace, WidgetSpaceType, WidgetState, WidgetUser, WidgetUserAccount, WidgetView, } from './types';
|
|
17
17
|
export type { EventSubscription, MessageDidArrivePayload, RepzoWidgetEvent, RepzoWidgetEventPayloads, } from './events';
|
|
18
18
|
export type { WidgetTheme } from './ui/styles/theme';
|
|
19
19
|
/** Spaces the widget can open into — the analogue of Intercom's `Space`. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../src/locales.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAE7C,KAAK,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../src/locales.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAE7C,KAAK,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;AAgIrE,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAU,CAAC;AAErE,gEAAgE;AAChE,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE3D"}
|
|
@@ -36,6 +36,7 @@ interface ManualToken {
|
|
|
36
36
|
export declare class PushManager {
|
|
37
37
|
private client;
|
|
38
38
|
private openConversation;
|
|
39
|
+
private openPost;
|
|
39
40
|
private options;
|
|
40
41
|
private listenersWired;
|
|
41
42
|
private lastToken;
|
|
@@ -45,7 +46,7 @@ export declare class PushManager {
|
|
|
45
46
|
private active;
|
|
46
47
|
/** Registrations still on the wire; unregister() waits for them. */
|
|
47
48
|
private inflight;
|
|
48
|
-
constructor(client: WidgetApiClient, openConversation: (conversationId: string) => void);
|
|
49
|
+
constructor(client: WidgetApiClient, openConversation: (conversationId: string) => void, openPost?: (campaignId: string) => void);
|
|
49
50
|
/** Remember the boot options; actual work happens in start() post-init. */
|
|
50
51
|
configure(options?: WidgetPushOptions): void;
|
|
51
52
|
/**
|
|
@@ -64,7 +65,10 @@ export declare class PushManager {
|
|
|
64
65
|
unregister(authToken: string | null): Promise<void>;
|
|
65
66
|
private register;
|
|
66
67
|
private wireTapHandlers;
|
|
67
|
-
/**
|
|
68
|
+
/**
|
|
69
|
+
* Only widget pushes are ours — host app notifications pass through. A team
|
|
70
|
+
* reply opens its conversation; a Send post opens the post.
|
|
71
|
+
*/
|
|
68
72
|
private handleTap;
|
|
69
73
|
}
|
|
70
74
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push-notifications.d.ts","sourceRoot":"","sources":["../../../../src/push/push-notifications.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,WAAW;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;
|
|
1
|
+
{"version":3,"file":"push-notifications.d.ts","sourceRoot":"","sources":["../../../../src/push/push-notifications.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,WAAW;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAsDD,qBAAa,WAAW;IAkBpB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,QAAQ;IAnBlB,OAAO,CAAC,OAAO,CAAyB;IAExC,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,SAAS,CAAuB;IAExC,OAAO,CAAC,WAAW,CAA4B;IAE/C,OAAO,CAAC,mBAAmB,CAAS;IAEpC,2EAA2E;IAC3E,OAAO,CAAC,MAAM,CAAS;IAEvB,oEAAoE;IACpE,OAAO,CAAC,QAAQ,CAA4B;gBAGlC,MAAM,EAAE,eAAe,EACvB,gBAAgB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,EAClD,QAAQ,GAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAe;IAG3D,2EAA2E;IAC3E,SAAS,CAAC,OAAO,CAAC,EAAE,iBAAiB;IAIrC;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwD5B,gEAAgE;IAC1D,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxD;;;;OAIG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAazD,OAAO,CAAC,QAAQ;IAuBhB,OAAO,CAAC,eAAe;IAevB;;;OAGG;IACH,OAAO,CAAC,SAAS;CAOlB"}
|