@botonic/react 0.36.0-alpha.1 → 0.36.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/lib/cjs/contexts.d.ts +8 -4
- package/lib/cjs/contexts.js +4 -1
- package/lib/cjs/contexts.js.map +1 -1
- package/lib/cjs/webchat/webview/index.js +4 -1
- package/lib/cjs/webchat/webview/index.js.map +1 -1
- package/lib/cjs/webview-app.js +8 -2
- package/lib/cjs/webview-app.js.map +1 -1
- package/lib/esm/contexts.d.ts +8 -4
- package/lib/esm/contexts.js +4 -1
- package/lib/esm/contexts.js.map +1 -1
- package/lib/esm/webchat/webview/index.js +5 -2
- package/lib/esm/webchat/webview/index.js.map +1 -1
- package/lib/esm/webview-app.js +9 -3
- package/lib/esm/webview-app.js.map +1 -1
- package/package.json +3 -3
- package/src/contexts.tsx +14 -6
- package/src/webchat/webview/index.tsx +12 -5
- package/src/webview-app.tsx +15 -4
package/lib/cjs/contexts.d.ts
CHANGED
|
@@ -7,8 +7,12 @@ export interface CloseWebviewOptions {
|
|
|
7
7
|
path?: string;
|
|
8
8
|
params?: Record<string, any>;
|
|
9
9
|
}
|
|
10
|
-
export
|
|
11
|
-
|
|
12
|
-
params: Record<string, any>;
|
|
10
|
+
export interface WebviewRequestContextType {
|
|
11
|
+
params: Record<string, string>;
|
|
13
12
|
session: Partial<CoreSession>;
|
|
14
|
-
|
|
13
|
+
getUserCountry: () => string;
|
|
14
|
+
getUserLocale: () => string;
|
|
15
|
+
getSystemLocale: () => string;
|
|
16
|
+
closeWebview: (options?: CloseWebviewOptions) => Promise<void>;
|
|
17
|
+
}
|
|
18
|
+
export declare const WebviewRequestContext: import("react").Context<WebviewRequestContextType>;
|
package/lib/cjs/contexts.js
CHANGED
|
@@ -19,8 +19,11 @@ exports.RequestContext = (0, react_1.createContext)({
|
|
|
19
19
|
plugins: {},
|
|
20
20
|
});
|
|
21
21
|
exports.WebviewRequestContext = (0, react_1.createContext)({
|
|
22
|
-
closeWebview: () => tslib_1.__awaiter(void 0, void 0, void 0, function* () { return undefined; }),
|
|
23
22
|
params: {},
|
|
24
23
|
session: {},
|
|
24
|
+
getUserCountry: () => '',
|
|
25
|
+
getUserLocale: () => '',
|
|
26
|
+
getSystemLocale: () => '',
|
|
27
|
+
closeWebview: () => tslib_1.__awaiter(void 0, void 0, void 0, function* () { return undefined; }),
|
|
25
28
|
});
|
|
26
29
|
//# sourceMappingURL=contexts.js.map
|
package/lib/cjs/contexts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../src/contexts.tsx"],"names":[],"mappings":";;;;AACA,iCAAqC;AAIxB,QAAA,cAAc,GAAG,IAAA,qBAAa,EAAgB;IACzD,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE;IACxB,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE;IACvB,eAAe,EAAE,GAAG,EAAE,CAAC,EAAE;IACzB,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS;IAC/B,aAAa,EAAE,GAAG,EAAE,CAAC,SAAS;IAC9B,eAAe,EAAE,GAAG,EAAE,CAAC,SAAS;IAChC,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,CAAC;IAChB,KAAK,EAAE,EAAe;IACtB,OAAO,EAAE,EAAiB;IAC1B,aAAa,EAAE,EAAE;IACjB,OAAO,EAAE,EAAE;CACZ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../src/contexts.tsx"],"names":[],"mappings":";;;;AACA,iCAAqC;AAIxB,QAAA,cAAc,GAAG,IAAA,qBAAa,EAAgB;IACzD,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE;IACxB,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE;IACvB,eAAe,EAAE,GAAG,EAAE,CAAC,EAAE;IACzB,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS;IAC/B,aAAa,EAAE,GAAG,EAAE,CAAC,SAAS;IAC9B,eAAe,EAAE,GAAG,EAAE,CAAC,SAAS;IAChC,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,CAAC;IAChB,KAAK,EAAE,EAAe;IACtB,OAAO,EAAE,EAAiB;IAC1B,aAAa,EAAE,EAAE;IACjB,OAAO,EAAE,EAAE;CACZ,CAAC,CAAA;AAiBW,QAAA,qBAAqB,GAAG,IAAA,qBAAa,EAA4B;IAC5E,MAAM,EAAE,EAA4B;IACpC,OAAO,EAAE,EAA0B;IACnC,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE;IACxB,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE;IACvB,eAAe,EAAE,GAAG,EAAE,CAAC,EAAE;IACzB,YAAY,EAAE,GAAS,EAAE,0DAAC,OAAA,SAAS,CAAA,GAAA;CACpC,CAAC,CAAA"}
|
|
@@ -12,9 +12,12 @@ const styles_1 = require("./styles");
|
|
|
12
12
|
const WebviewContainer = () => {
|
|
13
13
|
const { closeWebview, getThemeProperty, webchatState } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
14
14
|
const webviewRequestContext = {
|
|
15
|
-
closeWebview: (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { return yield closeWebview(options); }),
|
|
16
15
|
params: webchatState.webviewParams || {},
|
|
17
16
|
session: webchatState.session || {},
|
|
17
|
+
getUserCountry: () => { var _a, _b; return ((_b = (_a = webchatState.session) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.country) || ''; },
|
|
18
|
+
getUserLocale: () => { var _a, _b; return ((_b = (_a = webchatState.session) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.locale) || ''; },
|
|
19
|
+
getSystemLocale: () => { var _a, _b; return ((_b = (_a = webchatState.session) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.system_locale) || ''; },
|
|
20
|
+
closeWebview: (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { return yield closeWebview(options); }),
|
|
18
21
|
};
|
|
19
22
|
const Webview = webchatState.webview;
|
|
20
23
|
const close = (e) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/webview/index.tsx"],"names":[],"mappings":";;;;;AACA,iCAAoD;AAEpD,+CAAgD;AAChD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/webview/index.tsx"],"names":[],"mappings":";;;;;AACA,iCAAoD;AAEpD,+CAAgD;AAChD,6CAIuB;AACvB,wCAA2C;AAC3C,qCAAwC;AACxC,qCAKiB;AAEV,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,GACpD,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAE5B,MAAM,qBAAqB,GAA8B;QACvD,MAAM,EAAE,YAAY,CAAC,aAAa,IAAK,EAA6B;QACpE,OAAO,EAAE,YAAY,CAAC,OAAO,IAAK,EAA2B;QAC7D,cAAc,EAAE,GAAG,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,IAAI,0CAAE,OAAO,KAAI,EAAE,CAAA,EAAA;QAC/D,aAAa,EAAE,GAAG,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,IAAI,0CAAE,MAAM,KAAI,EAAE,CAAA,EAAA;QAC7D,eAAe,EAAE,GAAG,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,IAAI,0CAAE,aAAa,KAAI,EAAE,CAAA,EAAA;QACtE,YAAY,EAAE,CAAO,OAA6B,EAAE,EAAE,0DACpD,OAAA,MAAM,YAAY,CAAC,OAAO,CAAC,CAAA,GAAA;KAC9B,CAAA;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,OAAuC,CAAA;IAEpE,MAAM,KAAK,GAAG,CAAO,CAAM,EAAE,EAAE;QAC7B,IAAI,CAAC,CAAC,IAAI,KAAK,qBAAqB,EAAE;YACpC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;YAClD,MAAM,YAAY,EAAE,CAAA;SACrB;IACH,CAAC,CAAA,CAAA;IAED,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAEhD,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAClE,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,iGAAiG;IACjG,2FAA2F;IAC3F,MAAM,cAAc,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAA;IAElD,OAAO,CACL,uBAAC,gCAAqB,CAAC,QAAQ,kBAAC,KAAK,EAAE,qBAAqB,gBAC1D,wBAAC,sBAAa,kBACZ,IAAI,EAAE,iBAAK,CAAC,OAAO,EACnB,KAAK,oBACA,gBAAgB,CAAC,mBAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,kBAG7D,uBAAC,sBAAa,KAAG,EACjB,uBAAC,6BAAoB,cAClB,cAAc,CAAC,CAAC,CAAC,CAChB,uBAAC,oBAAW,IAAC,GAAG,EAAE,OAAO,GAAI,CAC9B,CAAC,CAAC,CAAC,CACF,uBAAC,yBAAgB,cACf,uBAAC,OAAO,KAAG,GACM,CACpB,GACoB,KACT,IACe,CAClC,CAAA;AACH,CAAC,CAAA;AAtDY,QAAA,gBAAgB,oBAsD5B"}
|
package/lib/cjs/webview-app.js
CHANGED
|
@@ -124,9 +124,15 @@ class App extends react_1.default.Component {
|
|
|
124
124
|
});
|
|
125
125
|
}
|
|
126
126
|
render() {
|
|
127
|
+
if (!this.state.session) {
|
|
128
|
+
return null;
|
|
129
|
+
}
|
|
127
130
|
const webviewRequestContext = {
|
|
128
|
-
|
|
129
|
-
|
|
131
|
+
params: this.state.params,
|
|
132
|
+
session: this.state.session,
|
|
133
|
+
getUserCountry: () => this.state.session.user.country,
|
|
134
|
+
getUserLocale: () => this.state.session.user.locale,
|
|
135
|
+
getSystemLocale: () => this.state.session.system_locale,
|
|
130
136
|
closeWebview: this.close.bind(this),
|
|
131
137
|
};
|
|
132
138
|
return ((0, jsx_runtime_1.jsx)(contexts_1.WebviewRequestContext.Provider, Object.assign({ value: webviewRequestContext }, { children: this.props.webviews.map((Webview, i) => ((0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: `/${Webview.name}`, component: Webview }, i))) })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webview-app.js","sourceRoot":"","sources":["../../src/webview-app.tsx"],"names":[],"mappings":";;;;;AAAA,cAAc;AACd,wCAAqE;AACrE,0DAAyB;AACzB,0DAAyB;AACzB,6CAA6C;AAC7C,uDAAuD;AAEvD,
|
|
1
|
+
{"version":3,"file":"webview-app.js","sourceRoot":"","sources":["../../src/webview-app.tsx"],"names":[],"mappings":"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"}
|
package/lib/esm/contexts.d.ts
CHANGED
|
@@ -7,8 +7,12 @@ export interface CloseWebviewOptions {
|
|
|
7
7
|
path?: string;
|
|
8
8
|
params?: Record<string, any>;
|
|
9
9
|
}
|
|
10
|
-
export
|
|
11
|
-
|
|
12
|
-
params: Record<string, any>;
|
|
10
|
+
export interface WebviewRequestContextType {
|
|
11
|
+
params: Record<string, string>;
|
|
13
12
|
session: Partial<CoreSession>;
|
|
14
|
-
|
|
13
|
+
getUserCountry: () => string;
|
|
14
|
+
getUserLocale: () => string;
|
|
15
|
+
getSystemLocale: () => string;
|
|
16
|
+
closeWebview: (options?: CloseWebviewOptions) => Promise<void>;
|
|
17
|
+
}
|
|
18
|
+
export declare const WebviewRequestContext: import("react").Context<WebviewRequestContextType>;
|
package/lib/esm/contexts.js
CHANGED
|
@@ -16,8 +16,11 @@ export const RequestContext = createContext({
|
|
|
16
16
|
plugins: {},
|
|
17
17
|
});
|
|
18
18
|
export const WebviewRequestContext = createContext({
|
|
19
|
-
closeWebview: () => __awaiter(void 0, void 0, void 0, function* () { return undefined; }),
|
|
20
19
|
params: {},
|
|
21
20
|
session: {},
|
|
21
|
+
getUserCountry: () => '',
|
|
22
|
+
getUserLocale: () => '',
|
|
23
|
+
getSystemLocale: () => '',
|
|
24
|
+
closeWebview: () => __awaiter(void 0, void 0, void 0, function* () { return undefined; }),
|
|
22
25
|
});
|
|
23
26
|
//# sourceMappingURL=contexts.js.map
|
package/lib/esm/contexts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../src/contexts.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAIrC,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAgB;IACzD,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE;IACxB,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE;IACvB,eAAe,EAAE,GAAG,EAAE,CAAC,EAAE;IACzB,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS;IAC/B,aAAa,EAAE,GAAG,EAAE,CAAC,SAAS;IAC9B,eAAe,EAAE,GAAG,EAAE,CAAC,SAAS;IAChC,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,CAAC;IAChB,KAAK,EAAE,EAAe;IACtB,OAAO,EAAE,EAAiB;IAC1B,aAAa,EAAE,EAAE;IACjB,OAAO,EAAE,EAAE;CACZ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../src/contexts.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAIrC,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAgB;IACzD,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE;IACxB,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE;IACvB,eAAe,EAAE,GAAG,EAAE,CAAC,EAAE;IACzB,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS;IAC/B,aAAa,EAAE,GAAG,EAAE,CAAC,SAAS;IAC9B,eAAe,EAAE,GAAG,EAAE,CAAC,SAAS;IAChC,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,CAAC;IAChB,KAAK,EAAE,EAAe;IACtB,OAAO,EAAE,EAAiB;IAC1B,aAAa,EAAE,EAAE;IACjB,OAAO,EAAE,EAAE;CACZ,CAAC,CAAA;AAiBF,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAA4B;IAC5E,MAAM,EAAE,EAA4B;IACpC,OAAO,EAAE,EAA0B;IACnC,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE;IACxB,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE;IACvB,eAAe,EAAE,GAAG,EAAE,CAAC,EAAE;IACzB,YAAY,EAAE,GAAS,EAAE,kDAAC,OAAA,SAAS,CAAA,GAAA;CACpC,CAAC,CAAA"}
|
|
@@ -2,16 +2,19 @@ import { __awaiter } from "tslib";
|
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useContext, useEffect } from 'react';
|
|
4
4
|
import { ROLES, WEBCHAT } from '../../constants';
|
|
5
|
-
import { WebviewRequestContext } from '../../contexts';
|
|
5
|
+
import { WebviewRequestContext, } from '../../contexts';
|
|
6
6
|
import { WebchatContext } from '../context';
|
|
7
7
|
import { WebviewHeader } from './header';
|
|
8
8
|
import { StyledFrame, StyledFrameAsDiv, StyledWebview, StyledWebviewContent, } from './styles';
|
|
9
9
|
export const WebviewContainer = () => {
|
|
10
10
|
const { closeWebview, getThemeProperty, webchatState } = useContext(WebchatContext);
|
|
11
11
|
const webviewRequestContext = {
|
|
12
|
-
closeWebview: (options) => __awaiter(void 0, void 0, void 0, function* () { return yield closeWebview(options); }),
|
|
13
12
|
params: webchatState.webviewParams || {},
|
|
14
13
|
session: webchatState.session || {},
|
|
14
|
+
getUserCountry: () => { var _a, _b; return ((_b = (_a = webchatState.session) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.country) || ''; },
|
|
15
|
+
getUserLocale: () => { var _a, _b; return ((_b = (_a = webchatState.session) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.locale) || ''; },
|
|
16
|
+
getSystemLocale: () => { var _a, _b; return ((_b = (_a = webchatState.session) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.system_locale) || ''; },
|
|
17
|
+
closeWebview: (options) => __awaiter(void 0, void 0, void 0, function* () { return yield closeWebview(options); }),
|
|
15
18
|
};
|
|
16
19
|
const Webview = webchatState.webview;
|
|
17
20
|
const close = (e) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/webview/index.tsx"],"names":[],"mappings":";;AACA,OAAc,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/webview/index.tsx"],"names":[],"mappings":";;AACA,OAAc,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAEL,qBAAqB,GAEtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,oBAAoB,GACrB,MAAM,UAAU,CAAA;AAEjB,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,GACpD,UAAU,CAAC,cAAc,CAAC,CAAA;IAE5B,MAAM,qBAAqB,GAA8B;QACvD,MAAM,EAAE,YAAY,CAAC,aAAa,IAAK,EAA6B;QACpE,OAAO,EAAE,YAAY,CAAC,OAAO,IAAK,EAA2B;QAC7D,cAAc,EAAE,GAAG,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,IAAI,0CAAE,OAAO,KAAI,EAAE,CAAA,EAAA;QAC/D,aAAa,EAAE,GAAG,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,IAAI,0CAAE,MAAM,KAAI,EAAE,CAAA,EAAA;QAC7D,eAAe,EAAE,GAAG,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,IAAI,0CAAE,aAAa,KAAI,EAAE,CAAA,EAAA;QACtE,YAAY,EAAE,CAAO,OAA6B,EAAE,EAAE,kDACpD,OAAA,MAAM,YAAY,CAAC,OAAO,CAAC,CAAA,GAAA;KAC9B,CAAA;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,OAAuC,CAAA;IAEpE,MAAM,KAAK,GAAG,CAAO,CAAM,EAAE,EAAE;QAC7B,IAAI,CAAC,CAAC,IAAI,KAAK,qBAAqB,EAAE;YACpC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;YAClD,MAAM,YAAY,EAAE,CAAA;SACrB;IACH,CAAC,CAAA,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAEhD,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAClE,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,iGAAiG;IACjG,2FAA2F;IAC3F,MAAM,cAAc,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAA;IAElD,OAAO,CACL,KAAC,qBAAqB,CAAC,QAAQ,kBAAC,KAAK,EAAE,qBAAqB,gBAC1D,MAAC,aAAa,kBACZ,IAAI,EAAE,KAAK,CAAC,OAAO,EACnB,KAAK,oBACA,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,kBAG7D,KAAC,aAAa,KAAG,EACjB,KAAC,oBAAoB,cAClB,cAAc,CAAC,CAAC,CAAC,CAChB,KAAC,WAAW,IAAC,GAAG,EAAE,OAAO,GAAI,CAC9B,CAAC,CAAC,CAAC,CACF,KAAC,gBAAgB,cACf,KAAC,OAAO,KAAG,GACM,CACpB,GACoB,KACT,IACe,CAClC,CAAA;AACH,CAAC,CAAA"}
|
package/lib/esm/webview-app.js
CHANGED
|
@@ -6,7 +6,7 @@ import axios from 'axios';
|
|
|
6
6
|
import React from 'react';
|
|
7
7
|
import { createRoot } from 'react-dom/client';
|
|
8
8
|
import { BrowserRouter, Route } from 'react-router-dom';
|
|
9
|
-
import { WebviewRequestContext } from './contexts';
|
|
9
|
+
import { WebviewRequestContext, } from './contexts';
|
|
10
10
|
var WebviewUrlParams;
|
|
11
11
|
(function (WebviewUrlParams) {
|
|
12
12
|
WebviewUrlParams["Context"] = "context";
|
|
@@ -121,9 +121,15 @@ class App extends React.Component {
|
|
|
121
121
|
});
|
|
122
122
|
}
|
|
123
123
|
render() {
|
|
124
|
+
if (!this.state.session) {
|
|
125
|
+
return null;
|
|
126
|
+
}
|
|
124
127
|
const webviewRequestContext = {
|
|
125
|
-
|
|
126
|
-
|
|
128
|
+
params: this.state.params,
|
|
129
|
+
session: this.state.session,
|
|
130
|
+
getUserCountry: () => this.state.session.user.country,
|
|
131
|
+
getUserLocale: () => this.state.session.user.locale,
|
|
132
|
+
getSystemLocale: () => this.state.session.system_locale,
|
|
127
133
|
closeWebview: this.close.bind(this),
|
|
128
134
|
};
|
|
129
135
|
return (_jsx(WebviewRequestContext.Provider, Object.assign({ value: webviewRequestContext }, { children: this.props.webviews.map((Webview, i) => (_jsx(Route, { path: `/${Webview.name}`, component: Webview }, i))) })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webview-app.js","sourceRoot":"","sources":["../../src/webview-app.tsx"],"names":[],"mappings":";;AAAA,cAAc;AACd,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAW,MAAM,eAAe,CAAA;AACrE,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAEvD,OAAO,
|
|
1
|
+
{"version":3,"file":"webview-app.js","sourceRoot":"","sources":["../../src/webview-app.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@botonic/react",
|
|
3
|
-
"version": "0.36.0
|
|
3
|
+
"version": "0.36.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Build Chatbots using React",
|
|
6
6
|
"main": "./lib/cjs",
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
"lint_core": "../../node_modules/.bin/eslint_d --cache --quiet '.*.js' '*.js' 'src/**/*.js*' --fix"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@botonic/core": "^0.36.0
|
|
24
|
-
"axios": "^1.
|
|
23
|
+
"@botonic/core": "^0.36.0",
|
|
24
|
+
"axios": "^1.10.0",
|
|
25
25
|
"emoji-picker-react": "^4.12.0",
|
|
26
26
|
"lodash.merge": "^4.6.2",
|
|
27
27
|
"markdown-it": "^12.3.2",
|
package/src/contexts.tsx
CHANGED
|
@@ -25,12 +25,20 @@ export interface CloseWebviewOptions {
|
|
|
25
25
|
params?: Record<string, any>
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
export
|
|
29
|
-
|
|
30
|
-
params: Record<string, any>
|
|
28
|
+
export interface WebviewRequestContextType {
|
|
29
|
+
params: Record<string, string>
|
|
31
30
|
session: Partial<CoreSession>
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
getUserCountry: () => string
|
|
32
|
+
getUserLocale: () => string
|
|
33
|
+
getSystemLocale: () => string
|
|
34
|
+
closeWebview: (options?: CloseWebviewOptions) => Promise<void>
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export const WebviewRequestContext = createContext<WebviewRequestContextType>({
|
|
38
|
+
params: {} as Record<string, string>,
|
|
35
39
|
session: {} as Partial<CoreSession>,
|
|
40
|
+
getUserCountry: () => '',
|
|
41
|
+
getUserLocale: () => '',
|
|
42
|
+
getSystemLocale: () => '',
|
|
43
|
+
closeWebview: async () => undefined,
|
|
36
44
|
})
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Session as CoreSession } from '@botonic/core'
|
|
2
2
|
import React, { useContext, useEffect } from 'react'
|
|
3
3
|
|
|
4
4
|
import { ROLES, WEBCHAT } from '../../constants'
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
CloseWebviewOptions,
|
|
7
|
+
WebviewRequestContext,
|
|
8
|
+
WebviewRequestContextType,
|
|
9
|
+
} from '../../contexts'
|
|
6
10
|
import { WebchatContext } from '../context'
|
|
7
11
|
import { WebviewHeader } from './header'
|
|
8
12
|
import {
|
|
@@ -16,11 +20,14 @@ export const WebviewContainer = () => {
|
|
|
16
20
|
const { closeWebview, getThemeProperty, webchatState } =
|
|
17
21
|
useContext(WebchatContext)
|
|
18
22
|
|
|
19
|
-
const webviewRequestContext = {
|
|
23
|
+
const webviewRequestContext: WebviewRequestContextType = {
|
|
24
|
+
params: webchatState.webviewParams || ({} as Record<string, string>),
|
|
25
|
+
session: webchatState.session || ({} as Partial<CoreSession>),
|
|
26
|
+
getUserCountry: () => webchatState.session?.user?.country || '',
|
|
27
|
+
getUserLocale: () => webchatState.session?.user?.locale || '',
|
|
28
|
+
getSystemLocale: () => webchatState.session?.user?.system_locale || '',
|
|
20
29
|
closeWebview: async (options?: CloseWebviewOptions) =>
|
|
21
30
|
await closeWebview(options),
|
|
22
|
-
params: webchatState.webviewParams || ({} as Record<string, any>),
|
|
23
|
-
session: webchatState.session || ({} as Partial<CoreSession>),
|
|
24
31
|
}
|
|
25
32
|
|
|
26
33
|
const Webview = webchatState.webview as string | React.ComponentType
|
package/src/webview-app.tsx
CHANGED
|
@@ -5,7 +5,11 @@ import React from 'react'
|
|
|
5
5
|
import { createRoot } from 'react-dom/client'
|
|
6
6
|
import { BrowserRouter, Route } from 'react-router-dom'
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
CloseWebviewOptions,
|
|
10
|
+
WebviewRequestContext,
|
|
11
|
+
WebviewRequestContextType,
|
|
12
|
+
} from './contexts'
|
|
9
13
|
|
|
10
14
|
enum WebviewUrlParams {
|
|
11
15
|
Context = 'context',
|
|
@@ -129,9 +133,16 @@ class App extends React.Component {
|
|
|
129
133
|
}
|
|
130
134
|
|
|
131
135
|
render() {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
136
|
+
if (!this.state.session) {
|
|
137
|
+
return null
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
const webviewRequestContext: WebviewRequestContextType = {
|
|
141
|
+
params: this.state.params,
|
|
142
|
+
session: this.state.session,
|
|
143
|
+
getUserCountry: () => this.state.session.user.country,
|
|
144
|
+
getUserLocale: () => this.state.session.user.locale,
|
|
145
|
+
getSystemLocale: () => this.state.session.system_locale,
|
|
135
146
|
closeWebview: this.close.bind(this),
|
|
136
147
|
}
|
|
137
148
|
|