react-native-unit-components 0.1.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/LICENSE +20 -0
- package/README.md +2 -0
- package/android/build.gradle +145 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +4 -0
- package/android/src/main/java/com/unitreactnativecomponents/UnitReactNativeComponentsPackage.kt +16 -0
- package/android/src/main/java/com/unitreactnativecomponents/UnitReactNativeComponentsViewManager.kt +19 -0
- package/ios/UnitReactNativeComponents-Bridging-Header.h +1 -0
- package/ios/UnitReactNativeComponents.xcodeproj/project.pbxproj +283 -0
- package/ios/UnitReactNativeComponents.xcodeproj/project.xcworkspace/contents.xcworkspacedata +4 -0
- package/ios/UnitReactNativeComponents.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/ios/UnitReactNativeComponents.xcodeproj/project.xcworkspace/xcuserdata/alonshprung.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/UnitReactNativeComponents.xcodeproj/xcuserdata/alonshprung.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
- package/ios/UnitReactNativeComponentsViewManager.m +7 -0
- package/ios/UnitReactNativeComponentsViewManager.swift +36 -0
- package/lib/commonjs/components/BottomSheet/BottomSheetComponent.js +143 -0
- package/lib/commonjs/components/BottomSheet/BottomSheetComponent.js.map +1 -0
- package/lib/commonjs/components/Card/CardComponent.js +97 -0
- package/lib/commonjs/components/Card/CardComponent.js.map +1 -0
- package/lib/commonjs/components/index.js +32 -0
- package/lib/commonjs/components/index.js.map +1 -0
- package/lib/commonjs/helpers/BottomSheet.js +274 -0
- package/lib/commonjs/helpers/BottomSheet.js.map +1 -0
- package/lib/commonjs/helpers/EventBus.js +79 -0
- package/lib/commonjs/helpers/EventBus.js.map +1 -0
- package/lib/commonjs/index.js +19 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/nativeComponenet/NativeComponentExample.js +19 -0
- package/lib/commonjs/nativeComponenet/NativeComponentExample.js.map +1 -0
- package/lib/commonjs/webComponent/WebComponent.js +75 -0
- package/lib/commonjs/webComponent/WebComponent.js.map +1 -0
- package/lib/commonjs/webComponent/html.js +79 -0
- package/lib/commonjs/webComponent/html.js.map +1 -0
- package/lib/commonjs/webComponent/webMessages/cardMessage.js +13 -0
- package/lib/commonjs/webComponent/webMessages/cardMessage.js.map +1 -0
- package/lib/commonjs/webComponent/webMessages/pageMessage.js +14 -0
- package/lib/commonjs/webComponent/webMessages/pageMessage.js.map +1 -0
- package/lib/commonjs/webComponent/webMessages/unitMessages.js +17 -0
- package/lib/commonjs/webComponent/webMessages/unitMessages.js.map +1 -0
- package/lib/module/components/BottomSheet/BottomSheetComponent.js +118 -0
- package/lib/module/components/BottomSheet/BottomSheetComponent.js.map +1 -0
- package/lib/module/components/Card/CardComponent.js +75 -0
- package/lib/module/components/Card/CardComponent.js.map +1 -0
- package/lib/module/components/index.js +3 -0
- package/lib/module/components/index.js.map +1 -0
- package/lib/module/helpers/BottomSheet.js +252 -0
- package/lib/module/helpers/BottomSheet.js.map +1 -0
- package/lib/module/helpers/EventBus.js +69 -0
- package/lib/module/helpers/EventBus.js.map +1 -0
- package/lib/module/index.js +2 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/nativeComponenet/NativeComponentExample.js +10 -0
- package/lib/module/nativeComponenet/NativeComponentExample.js.map +1 -0
- package/lib/module/webComponent/WebComponent.js +49 -0
- package/lib/module/webComponent/WebComponent.js.map +1 -0
- package/lib/module/webComponent/html.js +72 -0
- package/lib/module/webComponent/html.js.map +1 -0
- package/lib/module/webComponent/webMessages/cardMessage.js +6 -0
- package/lib/module/webComponent/webMessages/cardMessage.js.map +1 -0
- package/lib/module/webComponent/webMessages/pageMessage.js +7 -0
- package/lib/module/webComponent/webMessages/pageMessage.js.map +1 -0
- package/lib/module/webComponent/webMessages/unitMessages.js +10 -0
- package/lib/module/webComponent/webMessages/unitMessages.js.map +1 -0
- package/lib/typescript/components/BottomSheet/BottomSheetComponent.d.ts +1 -0
- package/lib/typescript/components/Card/CardComponent.d.ts +6 -0
- package/lib/typescript/components/index.d.ts +2 -0
- package/lib/typescript/helpers/BottomSheet.d.ts +34 -0
- package/lib/typescript/helpers/EventBus.d.ts +15 -0
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/nativeComponenet/NativeComponentExample.d.ts +7 -0
- package/lib/typescript/webComponent/WebComponent.d.ts +23 -0
- package/lib/typescript/webComponent/html.d.ts +2 -0
- package/lib/typescript/webComponent/webMessages/cardMessage.d.ts +7 -0
- package/lib/typescript/webComponent/webMessages/pageMessage.d.ts +8 -0
- package/lib/typescript/webComponent/webMessages/unitMessages.d.ts +24 -0
- package/package.json +152 -0
- package/src/components/BottomSheet/BottomSheetComponent.tsx +113 -0
- package/src/components/Card/CardComponent.tsx +75 -0
- package/src/components/index.ts +2 -0
- package/src/helpers/BottomSheet.tsx +277 -0
- package/src/helpers/EventBus.ts +58 -0
- package/src/index.tsx +1 -0
- package/src/nativeComponenet/NativeComponentExample.tsx +26 -0
- package/src/webComponent/WebComponent.tsx +75 -0
- package/src/webComponent/html.ts +72 -0
- package/src/webComponent/webMessages/cardMessage.ts +10 -0
- package/src/webComponent/webMessages/pageMessage.ts +11 -0
- package/src/webComponent/webMessages/unitMessages.ts +31 -0
- package/unit-react-native-components.podspec +35 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.BusEvent = void 0;
|
|
7
|
+
|
|
8
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
9
|
+
|
|
10
|
+
let BusEvent;
|
|
11
|
+
exports.BusEvent = BusEvent;
|
|
12
|
+
|
|
13
|
+
(function (BusEvent) {
|
|
14
|
+
BusEvent["REQUEST_RENDERING"] = "unitRequestRendering";
|
|
15
|
+
BusEvent["CARD_STATUS_CHANGED"] = "cardStatusChanged";
|
|
16
|
+
BusEvent["REQUEST_REFRESH"] = "requestRefresh";
|
|
17
|
+
})(BusEvent || (exports.BusEvent = BusEvent = {}));
|
|
18
|
+
|
|
19
|
+
class EventBus {
|
|
20
|
+
constructor() {
|
|
21
|
+
_defineProperty(this, "eventListeners", {});
|
|
22
|
+
|
|
23
|
+
this.eventListeners = {};
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
static get Instance() {
|
|
27
|
+
return this._instance || (this._instance = new this());
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
event(event, data) {
|
|
31
|
+
let listeners = this.eventListeners[event.valueOf()];
|
|
32
|
+
|
|
33
|
+
if (Array.isArray(listeners)) {
|
|
34
|
+
listeners.map(listener => {
|
|
35
|
+
if (typeof listener === 'function') {
|
|
36
|
+
listener(data);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
addListener(event, listener) {
|
|
43
|
+
let listeners = this.eventListeners[event.valueOf()];
|
|
44
|
+
|
|
45
|
+
if (Array.isArray(listeners)) {
|
|
46
|
+
listeners.push(listener);
|
|
47
|
+
} else {
|
|
48
|
+
this.eventListeners[event.valueOf()] = [listener];
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
removeListener(listener) {
|
|
53
|
+
Object.keys(this.eventListeners).map(eventName => {
|
|
54
|
+
let listeners = this.eventListeners[eventName];
|
|
55
|
+
|
|
56
|
+
if (listeners) {
|
|
57
|
+
this._remove(listeners, listener);
|
|
58
|
+
|
|
59
|
+
if (listeners.length === 0) {
|
|
60
|
+
delete this.eventListeners[eventName];
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
_remove(array, item) {
|
|
67
|
+
if (!array) return;
|
|
68
|
+
|
|
69
|
+
for (let i = 0, l = array.length; i < l; i++) {
|
|
70
|
+
if (item === array[i]) array.splice(i, 1);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
exports.default = EventBus;
|
|
77
|
+
|
|
78
|
+
_defineProperty(EventBus, "_instance", void 0);
|
|
79
|
+
//# sourceMappingURL=EventBus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["BusEvent","EventBus","constructor","eventListeners","Instance","_instance","event","data","listeners","valueOf","Array","isArray","map","listener","addListener","push","removeListener","Object","keys","eventName","_remove","length","array","item","i","l","splice"],"sources":["EventBus.ts"],"sourcesContent":["export enum BusEvent {\n REQUEST_RENDERING = 'unitRequestRendering',\n CARD_STATUS_CHANGED = 'cardStatusChanged',\n REQUEST_REFRESH = 'requestRefresh'\n}\n\nexport default class EventBus {\n private static _instance: EventBus;\n\n private eventListeners: { [name: string]: Array<(data: any) => void> } = {}\n\n private constructor() {\n this.eventListeners = {};\n }\n\n public static get Instance() {\n return this._instance || (this._instance = new this());\n }\n\n public event(event: BusEvent, data: any) {\n let listeners = this.eventListeners[event.valueOf()];\n if (Array.isArray(listeners)) {\n listeners.map(listener => {\n if (typeof listener === 'function') {\n listener(data);\n }\n })\n }\n }\n\n public addListener(event: BusEvent, listener: (data: any) => void) {\n let listeners = this.eventListeners[event.valueOf()];\n if (Array.isArray(listeners)) {\n listeners.push(listener);\n } else {\n this.eventListeners[event.valueOf()] = [listener];\n }\n }\n\n public removeListener(listener: (data: any) => void) {\n Object.keys(this.eventListeners).map(eventName => {\n let listeners = this.eventListeners[eventName];\n if (listeners) {\n this._remove(listeners, listener);\n if (listeners.length === 0) {\n delete this.eventListeners[eventName];\n }\n }\n })\n }\n\n private _remove(array: Array<(data: any) => void>, item: (data: string) => void) {\n if (!array) return;\n for (let i = 0, l = array.length; i < l; i++) {\n if (item === array[i]) array.splice(i, 1);\n }\n }\n}\n"],"mappings":";;;;;;;;;IAAYA,Q;;;WAAAA,Q;EAAAA,Q;EAAAA,Q;EAAAA,Q;GAAAA,Q,wBAAAA,Q;;AAMG,MAAMC,QAAN,CAAe;EAKpBC,WAAW,GAAG;IAAA,wCAFmD,EAEnD;;IACpB,KAAKC,cAAL,GAAsB,EAAtB;EACD;;EAEyB,WAARC,QAAQ,GAAG;IAC3B,OAAO,KAAKC,SAAL,KAAmB,KAAKA,SAAL,GAAiB,IAAI,IAAJ,EAApC,CAAP;EACD;;EAEMC,KAAK,CAACA,KAAD,EAAkBC,IAAlB,EAA6B;IACvC,IAAIC,SAAS,GAAG,KAAKL,cAAL,CAAoBG,KAAK,CAACG,OAAN,EAApB,CAAhB;;IACA,IAAIC,KAAK,CAACC,OAAN,CAAcH,SAAd,CAAJ,EAA8B;MAC5BA,SAAS,CAACI,GAAV,CAAcC,QAAQ,IAAI;QACxB,IAAI,OAAOA,QAAP,KAAoB,UAAxB,EAAoC;UAClCA,QAAQ,CAACN,IAAD,CAAR;QACD;MACF,CAJD;IAKD;EACF;;EAEMO,WAAW,CAACR,KAAD,EAAkBO,QAAlB,EAAiD;IACjE,IAAIL,SAAS,GAAG,KAAKL,cAAL,CAAoBG,KAAK,CAACG,OAAN,EAApB,CAAhB;;IACA,IAAIC,KAAK,CAACC,OAAN,CAAcH,SAAd,CAAJ,EAA8B;MAC5BA,SAAS,CAACO,IAAV,CAAeF,QAAf;IACD,CAFD,MAEO;MACL,KAAKV,cAAL,CAAoBG,KAAK,CAACG,OAAN,EAApB,IAAuC,CAACI,QAAD,CAAvC;IACD;EACF;;EAEMG,cAAc,CAACH,QAAD,EAAgC;IACnDI,MAAM,CAACC,IAAP,CAAY,KAAKf,cAAjB,EAAiCS,GAAjC,CAAqCO,SAAS,IAAI;MAChD,IAAIX,SAAS,GAAG,KAAKL,cAAL,CAAoBgB,SAApB,CAAhB;;MACA,IAAIX,SAAJ,EAAe;QACb,KAAKY,OAAL,CAAaZ,SAAb,EAAwBK,QAAxB;;QACA,IAAIL,SAAS,CAACa,MAAV,KAAqB,CAAzB,EAA4B;UAC1B,OAAO,KAAKlB,cAAL,CAAoBgB,SAApB,CAAP;QACD;MACF;IACF,CARD;EASD;;EAEOC,OAAO,CAACE,KAAD,EAAoCC,IAApC,EAAkE;IAC/E,IAAI,CAACD,KAAL,EAAY;;IACZ,KAAK,IAAIE,CAAC,GAAG,CAAR,EAAWC,CAAC,GAAGH,KAAK,CAACD,MAA1B,EAAkCG,CAAC,GAAGC,CAAtC,EAAyCD,CAAC,EAA1C,EAA8C;MAC5C,IAAID,IAAI,KAAKD,KAAK,CAACE,CAAD,CAAlB,EAAuBF,KAAK,CAACI,MAAN,CAAaF,CAAb,EAAgB,CAAhB;IACxB;EACF;;AAlD2B;;;;gBAATvB,Q"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _components = require("./components");
|
|
8
|
+
|
|
9
|
+
Object.keys(_components).forEach(function (key) {
|
|
10
|
+
if (key === "default" || key === "__esModule") return;
|
|
11
|
+
if (key in exports && exports[key] === _components[key]) return;
|
|
12
|
+
Object.defineProperty(exports, key, {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _components[key];
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.tsx"],"sourcesContent":["export * from './components'\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.UnitReactNativeComponentsView = void 0;
|
|
7
|
+
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
|
|
10
|
+
const LINKING_ERROR = `The package 'unit-react-native-components' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
|
|
11
|
+
ios: "- You have run 'pod install'\n",
|
|
12
|
+
default: ''
|
|
13
|
+
}) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo managed workflow\n';
|
|
14
|
+
const ComponentName = 'UnitReactNativeComponentsView';
|
|
15
|
+
const UnitReactNativeComponentsView = _reactNative.UIManager.getViewManagerConfig(ComponentName) != null ? (0, _reactNative.requireNativeComponent)(ComponentName) : () => {
|
|
16
|
+
throw new Error(LINKING_ERROR);
|
|
17
|
+
};
|
|
18
|
+
exports.UnitReactNativeComponentsView = UnitReactNativeComponentsView;
|
|
19
|
+
//# sourceMappingURL=NativeComponentExample.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["LINKING_ERROR","Platform","select","ios","default","ComponentName","UnitReactNativeComponentsView","UIManager","getViewManagerConfig","requireNativeComponent","Error"],"sources":["NativeComponentExample.tsx"],"sourcesContent":["import {\n requireNativeComponent,\n UIManager,\n Platform,\n ViewStyle,\n} from 'react-native';\n\nconst LINKING_ERROR =\n `The package 'unit-react-native-components' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\ntype UnitReactNativeComponentsProps = {\n color: string;\n style: ViewStyle;\n};\n\nconst ComponentName = 'UnitReactNativeComponentsView';\n\nexport const UnitReactNativeComponentsView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<UnitReactNativeComponentsProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n"],"mappings":";;;;;;;AAAA;;AAOA,MAAMA,aAAa,GAChB,uFAAD,GACAC,qBAAA,CAASC,MAAT,CAAgB;EAAEC,GAAG,EAAE,gCAAP;EAAyCC,OAAO,EAAE;AAAlD,CAAhB,CADA,GAEA,sDAFA,GAGA,6CAJF;AAWA,MAAMC,aAAa,GAAG,+BAAtB;AAEO,MAAMC,6BAA6B,GACxCC,sBAAA,CAAUC,oBAAV,CAA+BH,aAA/B,KAAiD,IAAjD,GACI,IAAAI,mCAAA,EAAuDJ,aAAvD,CADJ,GAEI,MAAM;EACN,MAAM,IAAIK,KAAJ,CAAUV,aAAV,CAAN;AACD,CALE"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.WebComponentType = exports.WebComponent = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
|
|
10
|
+
var _reactNative = require("react-native");
|
|
11
|
+
|
|
12
|
+
var _reactNativeWebview = require("react-native-webview");
|
|
13
|
+
|
|
14
|
+
var _EventBus = _interopRequireWildcard(require("../helpers/EventBus"));
|
|
15
|
+
|
|
16
|
+
var _html = _interopRequireDefault(require("./html"));
|
|
17
|
+
|
|
18
|
+
var _unitMessages = require("./webMessages/unitMessages");
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
|
+
|
|
24
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
25
|
+
|
|
26
|
+
let WebComponentType;
|
|
27
|
+
exports.WebComponentType = WebComponentType;
|
|
28
|
+
|
|
29
|
+
(function (WebComponentType) {
|
|
30
|
+
WebComponentType["card"] = "unit-elements-card";
|
|
31
|
+
WebComponentType["slot"] = "unit-elements-sdk-slot";
|
|
32
|
+
})(WebComponentType || (exports.WebComponentType = WebComponentType = {}));
|
|
33
|
+
|
|
34
|
+
const WebComponent = /*#__PURE__*/_react.default.forwardRef((props, webRef) => {
|
|
35
|
+
const [sourceHtml, setSourceHtml] = (0, _react.useState)(null);
|
|
36
|
+
|
|
37
|
+
const windowWidth = _reactNative.Dimensions.get('window').width;
|
|
38
|
+
|
|
39
|
+
(0, _react.useEffect)(() => {
|
|
40
|
+
const component = props.type.valueOf();
|
|
41
|
+
|
|
42
|
+
let newHtml = _html.default.replace('<COMPONENT>', `<${component} ${props.params || ''}> </${component}>`);
|
|
43
|
+
|
|
44
|
+
newHtml = newHtml.replace('<SCRIPT_FROM_NATIVE>', props.script || '');
|
|
45
|
+
setSourceHtml(newHtml);
|
|
46
|
+
}, [props.params]);
|
|
47
|
+
|
|
48
|
+
const onMessage = e => {
|
|
49
|
+
const message = JSON.parse(e.nativeEvent.data);
|
|
50
|
+
|
|
51
|
+
if (message.type == _unitMessages.UnitMessage.UNIT_REQUEST_REFRESH && message.details) {
|
|
52
|
+
_EventBus.default.Instance.event(_EventBus.BusEvent.REQUEST_REFRESH, message.details);
|
|
53
|
+
} else {
|
|
54
|
+
props.onMessage(message);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
if (!sourceHtml) return null;
|
|
59
|
+
return /*#__PURE__*/_react.default.createElement(_reactNativeWebview.WebView, {
|
|
60
|
+
ref: webRef,
|
|
61
|
+
cacheEnabled: false,
|
|
62
|
+
scrollEnabled: false,
|
|
63
|
+
overScrollMode: "never",
|
|
64
|
+
style: {
|
|
65
|
+
width: windowWidth
|
|
66
|
+
},
|
|
67
|
+
source: {
|
|
68
|
+
html: sourceHtml
|
|
69
|
+
},
|
|
70
|
+
onMessage: onMessage
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
exports.WebComponent = WebComponent;
|
|
75
|
+
//# sourceMappingURL=WebComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["WebComponentType","WebComponent","React","forwardRef","props","webRef","sourceHtml","setSourceHtml","useState","windowWidth","Dimensions","get","width","useEffect","component","type","valueOf","newHtml","html","replace","params","script","onMessage","e","message","JSON","parse","nativeEvent","data","UnitMessage","UNIT_REQUEST_REFRESH","details","EventBus","Instance","event","BusEvent","REQUEST_REFRESH"],"sources":["WebComponent.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Dimensions } from 'react-native';\nimport {\n WebView,\n WebViewMessageEvent\n} from 'react-native-webview'\nimport EventBus, { BusEvent } from '../helpers/EventBus';\n\nimport html from './html';\nimport type { CardEvent, CardMessage } from './webMessages/cardMessage';\nimport type { PageEvent, PageMessage } from './webMessages/pageMessage';\nimport { RequestRefreshEvent, UnitEvent, UnitMessage } from './webMessages/unitMessages';\n\nexport type WebViewMessageType =\n | PageMessage\n | CardMessage\n | UnitMessage\n\ntype WebViewEvent =\n | PageEvent\n | UnitEvent\n | CardEvent\n\nexport interface WebViewMessage {\n type: WebViewMessageType,\n details?: WebViewEvent\n}\n\nexport interface WebComponentProps {\n type: WebComponentType;\n params?: string;\n onMessage: (message: WebViewMessage) => void;\n script?: string;\n}\n\nexport enum WebComponentType {\n card = 'unit-elements-card',\n slot = 'unit-elements-sdk-slot'\n}\n\nexport const WebComponent = React.forwardRef<WebView, WebComponentProps>((props, webRef) => {\n const [sourceHtml, setSourceHtml] = useState<string | null>(null)\n\n const windowWidth = Dimensions.get('window').width;\n\n useEffect(() => {\n const component: string = props.type.valueOf()\n let newHtml = html.replace('<COMPONENT>', `<${component} ${props.params || ''}> </${component}>`)\n newHtml = newHtml.replace('<SCRIPT_FROM_NATIVE>', props.script || '')\n setSourceHtml(newHtml)\n }, [props.params])\n\n const onMessage = (e: WebViewMessageEvent) => {\n const message = JSON.parse(e.nativeEvent.data) as WebViewMessage\n\n if (message.type == UnitMessage.UNIT_REQUEST_REFRESH && message.details) {\n EventBus.Instance.event(BusEvent.REQUEST_REFRESH, message.details as RequestRefreshEvent)\n } else {\n props.onMessage(message)\n }\n }\n\n if (!sourceHtml) return null\n\n return (\n <WebView\n ref={webRef}\n cacheEnabled={false}\n scrollEnabled={false}\n overScrollMode=\"never\"\n style={{ width: windowWidth }}\n source={{ html: sourceHtml }}\n onMessage={onMessage} />\n )\n})\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAIA;;AAEA;;AAGA;;;;;;;;IAwBYA,gB;;;WAAAA,gB;EAAAA,gB;EAAAA,gB;GAAAA,gB,gCAAAA,gB;;AAKL,MAAMC,YAAY,gBAAGC,cAAA,CAAMC,UAAN,CAA6C,CAACC,KAAD,EAAQC,MAAR,KAAmB;EAC1F,MAAM,CAACC,UAAD,EAAaC,aAAb,IAA8B,IAAAC,eAAA,EAAwB,IAAxB,CAApC;;EAEA,MAAMC,WAAW,GAAGC,uBAAA,CAAWC,GAAX,CAAe,QAAf,EAAyBC,KAA7C;;EAEA,IAAAC,gBAAA,EAAU,MAAM;IACd,MAAMC,SAAiB,GAAGV,KAAK,CAACW,IAAN,CAAWC,OAAX,EAA1B;;IACA,IAAIC,OAAO,GAAGC,aAAA,CAAKC,OAAL,CAAa,aAAb,EAA6B,IAAGL,SAAU,IAAGV,KAAK,CAACgB,MAAN,IAAgB,EAAG,OAAMN,SAAU,GAAhF,CAAd;;IACAG,OAAO,GAAGA,OAAO,CAACE,OAAR,CAAgB,sBAAhB,EAAwCf,KAAK,CAACiB,MAAN,IAAgB,EAAxD,CAAV;IACAd,aAAa,CAACU,OAAD,CAAb;EACD,CALD,EAKG,CAACb,KAAK,CAACgB,MAAP,CALH;;EAOA,MAAME,SAAS,GAAIC,CAAD,IAA4B;IAC5C,MAAMC,OAAO,GAAGC,IAAI,CAACC,KAAL,CAAWH,CAAC,CAACI,WAAF,CAAcC,IAAzB,CAAhB;;IAEA,IAAIJ,OAAO,CAACT,IAAR,IAAgBc,yBAAA,CAAYC,oBAA5B,IAAoDN,OAAO,CAACO,OAAhE,EAAyE;MACvEC,iBAAA,CAASC,QAAT,CAAkBC,KAAlB,CAAwBC,kBAAA,CAASC,eAAjC,EAAkDZ,OAAO,CAACO,OAA1D;IACD,CAFD,MAEO;MACL3B,KAAK,CAACkB,SAAN,CAAgBE,OAAhB;IACD;EACF,CARD;;EAUA,IAAI,CAAClB,UAAL,EAAiB,OAAO,IAAP;EAEjB,oBACE,6BAAC,2BAAD;IACE,GAAG,EAAED,MADP;IAEE,YAAY,EAAE,KAFhB;IAGE,aAAa,EAAE,KAHjB;IAIE,cAAc,EAAC,OAJjB;IAKE,KAAK,EAAE;MAAEO,KAAK,EAAEH;IAAT,CALT;IAME,MAAM,EAAE;MAAES,IAAI,EAAEZ;IAAR,CANV;IAOE,SAAS,EAAEgB;EAPb,EADF;AAUD,CAlC2B,CAArB"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
const htmlText = `
|
|
8
|
+
<!DOCTYPE html>
|
|
9
|
+
<html lang="en">
|
|
10
|
+
|
|
11
|
+
<head lang="en">
|
|
12
|
+
<title>Unit Web SDK Demo</title>
|
|
13
|
+
<script>
|
|
14
|
+
window.UnitMobileSDK = true
|
|
15
|
+
</script>
|
|
16
|
+
<script src="https://unit-white-labeled-banking.netlify.app/client-events.js"></script>
|
|
17
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0">
|
|
18
|
+
</html>
|
|
19
|
+
|
|
20
|
+
<body style="margin: 0">
|
|
21
|
+
<COMPONENT>
|
|
22
|
+
|
|
23
|
+
<script>
|
|
24
|
+
const postMessageToSDK = (message) => {
|
|
25
|
+
if ('ReactNativeWebView' in window) {
|
|
26
|
+
const messageString = JSON.stringify(message)
|
|
27
|
+
window['ReactNativeWebView'].postMessage(messageString)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
const postHeight = () => {
|
|
32
|
+
setTimeout(() => {
|
|
33
|
+
const height = window.document.documentElement.getBoundingClientRect().height + 36
|
|
34
|
+
postMessageToSDK({ type: "pageHeight", details: { height } })
|
|
35
|
+
})
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
window.addEventListener('DOMContentLoaded', e => {
|
|
39
|
+
postMessageToSDK({ type: "pageLoaded" })
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
window.addEventListener("unitRequestRendering", (e) => {
|
|
43
|
+
postMessageToSDK({ type: "unitRequestRendering", details: { data: JSON.stringify(e.detail) }})
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
window.addEventListener("unitOnLoad", (e) => {
|
|
47
|
+
postHeight()
|
|
48
|
+
postMessageToSDK({ type: "unitOnLoad" })
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
window.addEventListener("unitRequestCloseFlow", (e) => {
|
|
52
|
+
postMessageToSDK({ type: "unitRequestCloseFlow" })
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
window.addEventListener("unitRequestOpenLink", (e) => {
|
|
56
|
+
postMessageToSDK({ type: "unitRequestOpenLink", details: e.detail })
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
window.addEventListener("unitCardStatusChanged", (e) => {
|
|
60
|
+
const response = e.detail
|
|
61
|
+
response.then((data) => {
|
|
62
|
+
postMessageToSDK({ type: "cardStatusChanged", details: { card: JSON.stringify(data.data) }})
|
|
63
|
+
}).catch((e) => {
|
|
64
|
+
console.log(e)
|
|
65
|
+
})
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
const dispatchRenderingEvent = (details) => {
|
|
69
|
+
const event = new CustomEvent("unitRequestRendering",{ detail: JSON.parse(details) })
|
|
70
|
+
window.dispatchEvent(event)
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
<SCRIPT_FROM_NATIVE>
|
|
74
|
+
</script>
|
|
75
|
+
</body>
|
|
76
|
+
`;
|
|
77
|
+
var _default = htmlText;
|
|
78
|
+
exports.default = _default;
|
|
79
|
+
//# sourceMappingURL=html.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["htmlText"],"sources":["html.ts"],"sourcesContent":["const htmlText = `\n <!DOCTYPE html>\n <html lang=\"en\">\n\n <head lang=\"en\">\n <title>Unit Web SDK Demo</title>\n <script>\n window.UnitMobileSDK = true\n </script>\n <script src=\"https://unit-white-labeled-banking.netlify.app/client-events.js\"></script>\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=0\">\n </html>\n\n <body style=\"margin: 0\">\n <COMPONENT>\n\n <script>\n const postMessageToSDK = (message) => {\n if ('ReactNativeWebView' in window) {\n const messageString = JSON.stringify(message)\n window['ReactNativeWebView'].postMessage(messageString)\n }\n }\n\n const postHeight = () => {\n setTimeout(() => {\n const height = window.document.documentElement.getBoundingClientRect().height + 36\n postMessageToSDK({ type: \"pageHeight\", details: { height } })\n })\n }\n\n window.addEventListener('DOMContentLoaded', e => {\n postMessageToSDK({ type: \"pageLoaded\" })\n });\n\n window.addEventListener(\"unitRequestRendering\", (e) => {\n postMessageToSDK({ type: \"unitRequestRendering\", details: { data: JSON.stringify(e.detail) }})\n });\n\n window.addEventListener(\"unitOnLoad\", (e) => {\n postHeight()\n postMessageToSDK({ type: \"unitOnLoad\" })\n });\n\n window.addEventListener(\"unitRequestCloseFlow\", (e) => {\n postMessageToSDK({ type: \"unitRequestCloseFlow\" })\n });\n\n window.addEventListener(\"unitRequestOpenLink\", (e) => {\n postMessageToSDK({ type: \"unitRequestOpenLink\", details: e.detail })\n });\n\n window.addEventListener(\"unitCardStatusChanged\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"cardStatusChanged\", details: { card: JSON.stringify(data.data) }})\n }).catch((e) => {\n console.log(e)\n })\n });\n\n const dispatchRenderingEvent = (details) => {\n const event = new CustomEvent(\"unitRequestRendering\",{ detail: JSON.parse(details) })\n window.dispatchEvent(event)\n }\n\n <SCRIPT_FROM_NATIVE>\n </script>\n </body>\n`\n\nexport default htmlText\n"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAI;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CArEA;eAuEeA,Q"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.CardMessage = void 0;
|
|
7
|
+
let CardMessage;
|
|
8
|
+
exports.CardMessage = CardMessage;
|
|
9
|
+
|
|
10
|
+
(function (CardMessage) {
|
|
11
|
+
CardMessage["CARD_STATUS_CHANGE"] = "cardStatusChanged";
|
|
12
|
+
})(CardMessage || (exports.CardMessage = CardMessage = {}));
|
|
13
|
+
//# sourceMappingURL=cardMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CardMessage"],"sources":["cardMessage.ts"],"sourcesContent":["export enum CardMessage {\n CARD_STATUS_CHANGE = 'cardStatusChanged'\n}\n\nexport interface CardStatusChangedEvent {\n card: any;\n}\n\nexport type CardEvent =\n | CardStatusChangedEvent\n"],"mappings":";;;;;;IAAYA,W;;;WAAAA,W;EAAAA,W;GAAAA,W,2BAAAA,W"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PageMessage = void 0;
|
|
7
|
+
let PageMessage;
|
|
8
|
+
exports.PageMessage = PageMessage;
|
|
9
|
+
|
|
10
|
+
(function (PageMessage) {
|
|
11
|
+
PageMessage["PAGE_LOADED"] = "pageLoaded";
|
|
12
|
+
PageMessage["PAGE_HEIGHT"] = "pageHeight";
|
|
13
|
+
})(PageMessage || (exports.PageMessage = PageMessage = {}));
|
|
14
|
+
//# sourceMappingURL=pageMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["PageMessage"],"sources":["pageMessage.ts"],"sourcesContent":["export enum PageMessage {\n PAGE_LOADED = 'pageLoaded',\n PAGE_HEIGHT = 'pageHeight'\n}\n\nexport interface HeightEvent {\n height: number;\n}\n\nexport type PageEvent =\n | HeightEvent\n"],"mappings":";;;;;;IAAYA,W;;;WAAAA,W;EAAAA,W;EAAAA,W;GAAAA,W,2BAAAA,W"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.UnitMessage = void 0;
|
|
7
|
+
let UnitMessage;
|
|
8
|
+
exports.UnitMessage = UnitMessage;
|
|
9
|
+
|
|
10
|
+
(function (UnitMessage) {
|
|
11
|
+
UnitMessage["UNIT_REQUEST_RENDERING"] = "unitRequestRendering";
|
|
12
|
+
UnitMessage["UNIT_REQUEST_REFRESH"] = "unitRequestRefresh";
|
|
13
|
+
UnitMessage["UNIT_REQUEST_CLOSE_FLOW"] = "unitRequestCloseFlow";
|
|
14
|
+
UnitMessage["UNIT_REQUEST_OPEN_LINK"] = "unitRequestOpenLink";
|
|
15
|
+
UnitMessage["UNIT_ON_LOAD"] = "unitOnLoad";
|
|
16
|
+
})(UnitMessage || (exports.UnitMessage = UnitMessage = {}));
|
|
17
|
+
//# sourceMappingURL=unitMessages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["UnitMessage"],"sources":["unitMessages.ts"],"sourcesContent":["export enum UnitMessage {\n UNIT_REQUEST_RENDERING = 'unitRequestRendering',\n UNIT_REQUEST_REFRESH = 'unitRequestRefresh',\n UNIT_REQUEST_CLOSE_FLOW = 'unitRequestCloseFlow',\n UNIT_REQUEST_OPEN_LINK = 'unitRequestOpenLink',\n UNIT_ON_LOAD = 'unitOnLoad'\n}\n\nexport interface RequestRenderingData {\n nativePlace: string;\n nativeComponent: string;\n}\nexport interface RequestRenderingEvent {\n data: string;\n}\n\nexport interface RequestRefreshEvent {\n refEvent: string;\n dependencies: string[];\n resourceId: string;\n}\n\nexport interface RequestOpenLinkEvent {\n href: string;\n target: string\n}\n\nexport type UnitEvent =\n | RequestRenderingEvent\n | RequestRefreshEvent\n | RequestOpenLinkEvent\n"],"mappings":";;;;;;IAAYA,W;;;WAAAA,W;EAAAA,W;EAAAA,W;EAAAA,W;EAAAA,W;EAAAA,W;GAAAA,W,2BAAAA,W"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import React, { useEffect, useRef, useState } from "react";
|
|
2
|
+
import { WebComponent, WebComponentType } from "../../webComponent/WebComponent";
|
|
3
|
+
import { Dimensions, Linking, View } from "react-native";
|
|
4
|
+
import BottomSheet from "../../helpers/BottomSheet";
|
|
5
|
+
import EventBus, { BusEvent } from "../../helpers/EventBus";
|
|
6
|
+
import { PageMessage } from "../../webComponent/webMessages/pageMessage";
|
|
7
|
+
import { UnitMessage } from "../../webComponent/webMessages/unitMessages";
|
|
8
|
+
import { CardMessage } from "../../webComponent/webMessages/cardMessage";
|
|
9
|
+
export const UNBottomSheetComponent = () => {
|
|
10
|
+
const [isActive, setIsActive] = useState(false);
|
|
11
|
+
const [height, setHeight] = useState(0);
|
|
12
|
+
const [renderingRequest, setRenderingRequest] = useState(null);
|
|
13
|
+
const [waitForLoadingNewComponent, setWaitForLoadingNewComponent] = useState(false);
|
|
14
|
+
const [newHeightMessage, setNewHeightMessage] = useState(null);
|
|
15
|
+
const webRef = useRef(null);
|
|
16
|
+
|
|
17
|
+
const _listener = data => {
|
|
18
|
+
setRenderingRequest(data);
|
|
19
|
+
setIsActive(true);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
useEffect(() => {
|
|
23
|
+
if (!webRef.current) return;
|
|
24
|
+
|
|
25
|
+
if (renderingRequest) {
|
|
26
|
+
var _webRef$current;
|
|
27
|
+
|
|
28
|
+
(_webRef$current = webRef.current) === null || _webRef$current === void 0 ? void 0 : _webRef$current.injectJavaScript(`dispatchRenderingEvent('${renderingRequest}')`);
|
|
29
|
+
}
|
|
30
|
+
}, [webRef.current, renderingRequest]);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
if (!isActive) {
|
|
33
|
+
setHeight(0);
|
|
34
|
+
setRenderingRequest(null);
|
|
35
|
+
}
|
|
36
|
+
}, [isActive]);
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
if (!waitForLoadingNewComponent && newHeightMessage) {
|
|
39
|
+
setWaitForLoadingNewComponent(false);
|
|
40
|
+
setNewHeight(newHeightMessage);
|
|
41
|
+
}
|
|
42
|
+
}, [waitForLoadingNewComponent, newHeightMessage]);
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
EventBus.Instance.addListener(BusEvent.REQUEST_RENDERING, _listener);
|
|
45
|
+
return () => {
|
|
46
|
+
EventBus.Instance.removeListener(_listener);
|
|
47
|
+
};
|
|
48
|
+
}, []);
|
|
49
|
+
|
|
50
|
+
const getBottomSheetScript = () => {
|
|
51
|
+
return `
|
|
52
|
+
window.addEventListener("unitRequestRefresh", (e) => {
|
|
53
|
+
postMessageToSDK({ type: "unitRequestRefresh", details: e.detail })
|
|
54
|
+
});
|
|
55
|
+
`;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const setNewHeight = message => {
|
|
59
|
+
if (renderingRequest) {
|
|
60
|
+
const nativePlace = JSON.parse(renderingRequest).nativePlace;
|
|
61
|
+
|
|
62
|
+
if (nativePlace == 'overFullScreen') {
|
|
63
|
+
const windowHeight = Dimensions.get('window').height * 0.94;
|
|
64
|
+
setHeight(windowHeight);
|
|
65
|
+
} else {
|
|
66
|
+
setHeight(message.details.height);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(View, {
|
|
72
|
+
pointerEvents: isActive ? undefined : 'none',
|
|
73
|
+
style: {
|
|
74
|
+
position: 'absolute',
|
|
75
|
+
top: 0,
|
|
76
|
+
bottom: 0,
|
|
77
|
+
left: 0,
|
|
78
|
+
right: 0
|
|
79
|
+
}
|
|
80
|
+
}, /*#__PURE__*/React.createElement(BottomSheet, {
|
|
81
|
+
isOpen: isActive,
|
|
82
|
+
onClose: () => setIsActive(false),
|
|
83
|
+
onOpen: () => setIsActive(true)
|
|
84
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
85
|
+
style: {
|
|
86
|
+
height,
|
|
87
|
+
paddingTop: height === 0 ? 0 : 10
|
|
88
|
+
}
|
|
89
|
+
}, /*#__PURE__*/React.createElement(WebComponent, {
|
|
90
|
+
ref: webRef,
|
|
91
|
+
type: WebComponentType.slot,
|
|
92
|
+
script: getBottomSheetScript(),
|
|
93
|
+
onMessage: message => {
|
|
94
|
+
if (renderingRequest && message.type == PageMessage.PAGE_HEIGHT) {
|
|
95
|
+
setNewHeightMessage(message);
|
|
96
|
+
} else if (message.type == UnitMessage.UNIT_REQUEST_RENDERING) {
|
|
97
|
+
const {
|
|
98
|
+
data
|
|
99
|
+
} = message.details;
|
|
100
|
+
|
|
101
|
+
if (data != renderingRequest) {
|
|
102
|
+
setHeight(0);
|
|
103
|
+
setRenderingRequest(data);
|
|
104
|
+
setWaitForLoadingNewComponent(true);
|
|
105
|
+
setTimeout(() => setWaitForLoadingNewComponent(false), 400);
|
|
106
|
+
}
|
|
107
|
+
} else if (message.type == CardMessage.CARD_STATUS_CHANGE) {
|
|
108
|
+
EventBus.Instance.event(BusEvent.CARD_STATUS_CHANGED, message.details.card);
|
|
109
|
+
} else if (message.type == UnitMessage.UNIT_REQUEST_CLOSE_FLOW) {
|
|
110
|
+
setIsActive(false);
|
|
111
|
+
} else if (message.type == UnitMessage.UNIT_REQUEST_OPEN_LINK) {
|
|
112
|
+
const href = message.details.href;
|
|
113
|
+
Linking.openURL(href);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
})))));
|
|
117
|
+
};
|
|
118
|
+
//# sourceMappingURL=BottomSheetComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","useState","WebComponent","WebComponentType","Dimensions","Linking","View","BottomSheet","EventBus","BusEvent","PageMessage","UnitMessage","CardMessage","UNBottomSheetComponent","isActive","setIsActive","height","setHeight","renderingRequest","setRenderingRequest","waitForLoadingNewComponent","setWaitForLoadingNewComponent","newHeightMessage","setNewHeightMessage","webRef","_listener","data","current","injectJavaScript","setNewHeight","Instance","addListener","REQUEST_RENDERING","removeListener","getBottomSheetScript","message","nativePlace","JSON","parse","windowHeight","get","details","undefined","position","top","bottom","left","right","paddingTop","slot","type","PAGE_HEIGHT","UNIT_REQUEST_RENDERING","setTimeout","CARD_STATUS_CHANGE","event","CARD_STATUS_CHANGED","card","UNIT_REQUEST_CLOSE_FLOW","UNIT_REQUEST_OPEN_LINK","href","openURL"],"sources":["BottomSheetComponent.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\"\nimport type WebView from \"react-native-webview\"\nimport { WebComponent, WebComponentType, WebViewMessage } from \"../../webComponent/WebComponent\"\nimport { Dimensions, Linking, View } from \"react-native\"\nimport BottomSheet from \"../../helpers/BottomSheet\"\nimport EventBus, { BusEvent } from \"../../helpers/EventBus\"\nimport { HeightEvent, PageMessage } from \"../../webComponent/webMessages/pageMessage\"\nimport { RequestOpenLinkEvent, RequestRenderingData, RequestRenderingEvent, UnitMessage } from \"../../webComponent/webMessages/unitMessages\"\nimport { CardMessage, CardStatusChangedEvent } from \"../../webComponent/webMessages/cardMessage\"\n\nexport const UNBottomSheetComponent = () => {\n const [isActive, setIsActive] = useState(false)\n const [height, setHeight] = useState(0)\n\n const [renderingRequest, setRenderingRequest] = useState<string | null>(null)\n\n const [waitForLoadingNewComponent, setWaitForLoadingNewComponent] = useState(false)\n const [newHeightMessage, setNewHeightMessage] = useState<WebViewMessage | null>(null)\n\n const webRef = useRef<WebView>(null)\n\n const _listener = (data: string) => {\n setRenderingRequest(data)\n setIsActive(true)\n }\n\n useEffect(() => {\n if (!webRef.current) return\n if (renderingRequest) {\n webRef.current?.injectJavaScript(`dispatchRenderingEvent('${renderingRequest}')`)\n }\n }, [webRef.current, renderingRequest])\n\n useEffect(() => {\n if (!isActive) {\n setHeight(0)\n setRenderingRequest(null)\n }\n }, [isActive])\n\n useEffect(() => {\n if (!waitForLoadingNewComponent && newHeightMessage) {\n setWaitForLoadingNewComponent(false)\n setNewHeight(newHeightMessage)\n }\n }, [waitForLoadingNewComponent, newHeightMessage])\n\n useEffect(() => {\n EventBus.Instance.addListener(BusEvent.REQUEST_RENDERING, _listener)\n\n return (() => {\n EventBus.Instance.removeListener(_listener)\n })\n }, [])\n\n const getBottomSheetScript = () => {\n return `\n window.addEventListener(\"unitRequestRefresh\", (e) => {\n postMessageToSDK({ type: \"unitRequestRefresh\", details: e.detail })\n });\n `\n }\n\n const setNewHeight = (message: WebViewMessage) => {\n if (renderingRequest) {\n const nativePlace = (JSON.parse(renderingRequest) as RequestRenderingData).nativePlace;\n if (nativePlace == 'overFullScreen') {\n const windowHeight = Dimensions.get('window').height * 0.94;\n setHeight(windowHeight)\n } else {\n setHeight((message.details as HeightEvent).height)\n }\n }\n }\n\n return (\n <>\n <View\n pointerEvents={isActive ? undefined : 'none'}\n style={{ position: 'absolute', top: 0, bottom: 0, left: 0, right: 0 }}\n >\n <BottomSheet\n isOpen={isActive}\n onClose={() => setIsActive(false)}\n onOpen={() => setIsActive(true)}\n >\n <View style={{ height, paddingTop: height === 0 ? 0 : 10 }}>\n <WebComponent ref={webRef} type={WebComponentType.slot} script={getBottomSheetScript()} onMessage={message => {\n if (renderingRequest && message.type == PageMessage.PAGE_HEIGHT) {\n setNewHeightMessage(message)\n } else if (message.type == UnitMessage.UNIT_REQUEST_RENDERING) {\n const { data } = (message.details! as RequestRenderingEvent)\n if (data != renderingRequest) {\n setHeight(0)\n setRenderingRequest(data)\n setWaitForLoadingNewComponent(true)\n setTimeout(() => setWaitForLoadingNewComponent(false), 400)\n }\n } else if (message.type == CardMessage.CARD_STATUS_CHANGE) {\n EventBus.Instance.event(BusEvent.CARD_STATUS_CHANGED, (message.details as CardStatusChangedEvent).card)\n } else if (message.type == UnitMessage.UNIT_REQUEST_CLOSE_FLOW) {\n setIsActive(false)\n } else if (message.type == UnitMessage.UNIT_REQUEST_OPEN_LINK) {\n const href = (message.details as RequestOpenLinkEvent).href\n Linking.openURL(href)\n }\n }} />\n </View>\n </BottomSheet>\n </View>\n </>\n )\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import React, { useEffect, useRef, useState } from "react";
|
|
2
|
+
import { View } from "react-native";
|
|
3
|
+
import { PageMessage } from "../../webComponent/webMessages/pageMessage";
|
|
4
|
+
import { UnitMessage } from "../../webComponent/webMessages/unitMessages";
|
|
5
|
+
import EventBus, { BusEvent } from "../../helpers/EventBus";
|
|
6
|
+
import { WebComponent, WebComponentType } from "../../webComponent/WebComponent";
|
|
7
|
+
export const UNCardComponent = props => {
|
|
8
|
+
const [height, setHeight] = useState(0);
|
|
9
|
+
const [requestRefreshEvent, setRequestRefreshEvent] = useState(null);
|
|
10
|
+
const webRef = useRef(null);
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
EventBus.Instance.addListener(BusEvent.CARD_STATUS_CHANGED, _cardStatusChanged);
|
|
13
|
+
EventBus.Instance.addListener(BusEvent.REQUEST_REFRESH, _requestRefresh);
|
|
14
|
+
return () => {
|
|
15
|
+
EventBus.Instance.removeListener(_cardStatusChanged);
|
|
16
|
+
EventBus.Instance.removeListener(_requestRefresh);
|
|
17
|
+
};
|
|
18
|
+
}, []);
|
|
19
|
+
|
|
20
|
+
const _cardStatusChanged = card => {
|
|
21
|
+
if (props.onStatusChanged) {
|
|
22
|
+
props.onStatusChanged(card);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const _requestRefresh = data => {
|
|
27
|
+
setRequestRefreshEvent(data);
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
useEffect(() => {
|
|
31
|
+
if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.card.valueOf()) && requestRefreshEvent.resourceId == props.cardId) {
|
|
32
|
+
var _webRef$current;
|
|
33
|
+
|
|
34
|
+
(_webRef$current = webRef.current) === null || _webRef$current === void 0 ? void 0 : _webRef$current.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);
|
|
35
|
+
}
|
|
36
|
+
}, [requestRefreshEvent]);
|
|
37
|
+
|
|
38
|
+
const getCardParams = () => {
|
|
39
|
+
return `
|
|
40
|
+
cardId="${props.cardId}"
|
|
41
|
+
customerToken="${props.customerToken}"
|
|
42
|
+
src="https://d1xlopvhx2cz8k.cloudfront.net/resources/outlay.json"
|
|
43
|
+
`;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
const getCardScript = () => {
|
|
47
|
+
return `
|
|
48
|
+
const dispatchRefreshEvent = (details) => {
|
|
49
|
+
const event = new CustomEvent("unitRequestRefresh",{ detail: JSON.parse(details) })
|
|
50
|
+
window.dispatchEvent(event)
|
|
51
|
+
}
|
|
52
|
+
`;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
56
|
+
style: {
|
|
57
|
+
height
|
|
58
|
+
}
|
|
59
|
+
}, /*#__PURE__*/React.createElement(WebComponent, {
|
|
60
|
+
ref: webRef,
|
|
61
|
+
type: WebComponentType.card,
|
|
62
|
+
params: getCardParams(),
|
|
63
|
+
script: getCardScript(),
|
|
64
|
+
onMessage: message => {
|
|
65
|
+
if (message.type === UnitMessage.UNIT_REQUEST_RENDERING) {
|
|
66
|
+
EventBus.Instance.event(BusEvent.REQUEST_RENDERING, message.details.data);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
if (message.type == PageMessage.PAGE_HEIGHT) {
|
|
70
|
+
setHeight(message.details.height);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}));
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=CardComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","useState","View","PageMessage","UnitMessage","EventBus","BusEvent","WebComponent","WebComponentType","UNCardComponent","props","height","setHeight","requestRefreshEvent","setRequestRefreshEvent","webRef","Instance","addListener","CARD_STATUS_CHANGED","_cardStatusChanged","REQUEST_REFRESH","_requestRefresh","removeListener","card","onStatusChanged","data","dependencies","includes","valueOf","resourceId","cardId","current","injectJavaScript","JSON","stringify","getCardParams","customerToken","getCardScript","message","type","UNIT_REQUEST_RENDERING","event","REQUEST_RENDERING","details","PAGE_HEIGHT"],"sources":["CardComponent.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\"\nimport { View } from \"react-native\";\nimport type WebView from \"react-native-webview\";\nimport { HeightEvent, PageMessage } from \"../../webComponent/webMessages/pageMessage\";\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from \"../../webComponent/webMessages/unitMessages\";\nimport EventBus, { BusEvent } from \"../../helpers/EventBus\"\nimport { WebComponent, WebComponentType } from \"../../webComponent/WebComponent\"\n\nexport interface UNCardComponentProps {\n cardId: string;\n customerToken: string;\n onStatusChanged?: (card: any) => void; // TODO - UNCard\n}\n\nexport const UNCardComponent = (props: UNCardComponentProps) => {\n const [height, setHeight] = useState(0)\n const [requestRefreshEvent, setRequestRefreshEvent] = useState<RequestRefreshEvent | null>(null)\n\n const webRef = useRef<WebView>(null)\n\n useEffect(() => {\n EventBus.Instance.addListener(BusEvent.CARD_STATUS_CHANGED, _cardStatusChanged)\n EventBus.Instance.addListener(BusEvent.REQUEST_REFRESH, _requestRefresh)\n return (() => {\n EventBus.Instance.removeListener(_cardStatusChanged)\n EventBus.Instance.removeListener(_requestRefresh)\n })\n }, [])\n\n const _cardStatusChanged = (card: any) => {\n if (props.onStatusChanged) {\n props.onStatusChanged(card)\n }\n }\n\n const _requestRefresh = (data: RequestRefreshEvent) => {\n setRequestRefreshEvent(data)\n }\n\n useEffect(() => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.card.valueOf()) && requestRefreshEvent.resourceId == props.cardId) {\n webRef.current?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`)\n }\n }, [requestRefreshEvent])\n\n const getCardParams = () => {\n return `\n cardId=\"${props.cardId}\"\n customerToken=\"${props.customerToken}\"\n src=\"https://d1xlopvhx2cz8k.cloudfront.net/resources/outlay.json\"\n `\n }\n\n const getCardScript = () => {\n return `\n const dispatchRefreshEvent = (details) => {\n const event = new CustomEvent(\"unitRequestRefresh\",{ detail: JSON.parse(details) })\n window.dispatchEvent(event)\n }\n `\n }\n\n return (\n <View style={{ height }}>\n <WebComponent ref={webRef} type={WebComponentType.card} params={getCardParams()} script={getCardScript()} onMessage={message => {\n if (message.type === UnitMessage.UNIT_REQUEST_RENDERING) {\n EventBus.Instance.event(BusEvent.REQUEST_RENDERING, (message.details as RequestRenderingEvent).data)\n }\n if (message.type == PageMessage.PAGE_HEIGHT) {\n setHeight((message.details as HeightEvent).height)\n }\n }} />\n </View>\n )\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './Card/CardComponent'\nexport * from './BottomSheet/BottomSheetComponent'\n"],"mappings":"AAAA,cAAc,sBAAd;AACA,cAAc,oCAAd"}
|