react-native-unit-components 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workspace
3
+ version = "1.0">
4
+ </Workspace>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>IDEDidComputeMac32BitWarning</key>
6
+ <true/>
7
+ </dict>
8
+ </plist>
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>SchemeUserState</key>
6
+ <dict>
7
+ <key>UnitReactNativeComponents.xcscheme_^#shared#^_</key>
8
+ <dict>
9
+ <key>orderHint</key>
10
+ <integer>0</integer>
11
+ </dict>
12
+ </dict>
13
+ </dict>
14
+ </plist>
@@ -91,7 +91,8 @@ const WebComponent = /*#__PURE__*/_react.default.forwardRef(function WebComponen
91
91
  injectedJavaScript: unitScript,
92
92
  style: {
93
93
  width: width,
94
- flex: 1
94
+ flex: 1,
95
+ opacity: 0.99
95
96
  },
96
97
  source: {
97
98
  html: sourceHtml
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeWebview","_EventBus","_interopRequireDefault","_html","_unitMessages","_listenerToBus","_bodyHtml","_UnitSdk","_UnitSdkManager","_sdkMessage","_WebComponent","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","WebComponentType","exports","WebComponent","React","forwardRef","props","webRef","unitScript","setUnitScript","useState","globalUnitScript","sourceHtml","setSourceHtml","componentCurrentTheme","setComponentCurrentTheme","theme","UnitSDK","getTheme","width","updateUnitScript","data","updateInitializedParams","useListenerToBus","busEventKey","SDKMessage","IS_SCRIPT_FETCHED","action","IS_SDK_INITIALIZED","useEffect","fetchUnitScript","componentParams","params","newHtml","html","replace","HTML_PLACEHOLDER","BODY","getHtmlBody","type","valueOf","presentationMode","SCRIPT_FROM_NATIVE","script","onMessage","e","message","JSON","parse","nativeEvent","UnitMessage","UNIT_REQUEST_REFRESH","details","EventBus","Instance","event","UNIT_REQUEST_DOWNLOAD","handleRequestDownload","UNIT_REQUEST_CLOSE_FLOW","_onScroll","handleScroll","createElement","WebView","ref","cacheEnabled","scrollEnabled","isScrollable","nestedScrollEnabled","onScroll","overScrollMode","injectedJavaScript","style","flex","source"],"sources":["WebComponent.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useState } from 'react';\nimport { WebView, WebViewMessageEvent } from 'react-native-webview';\nimport EventBus from '../helpers/EventBus';\nimport html, { HTML_PLACEHOLDER } from './html';\nimport { RequestRefreshEvent, UnitMessage, RequestDownloadEvent } from '../messages/webMessages/unitMessages';\nimport { useListenerToBus } from '../hooks/listenerToBus';\nimport { getHtmlBody, PresentationMode } from '../scripts/html/bodyHtml';\nimport { fetchUnitScript, globalUnitScript } from '../unitSdkManager/UnitSdk.api';\nimport { UnitSDK } from '../unitSdkManager/UnitSdkManager';\nimport type { WebViewMessage } from '../messages/webMessages';\nimport { SDKMessage, SdkScriptFetched } from '../messages/nativeMessages/sdkMessage';\nimport { handleRequestDownload } from './WebComponent.utils';\n\nexport interface WebComponentProps {\n type: WebComponentType;\n presentationMode?: PresentationMode,\n params?: string;\n theme?: string;\n onMessage?: (message: WebViewMessage) => void;\n script?: string;\n isScrollable?: boolean,\n nestedScrollEnabled?: boolean,\n handleScroll?: (event: any) => void,\n width?: number;\n}\n\nexport enum WebComponentType {\n card = 'unit-elements-card',\n bookPayment = 'unit-elements-book-payment',\n activity = 'unit-elements-activity',\n slot = 'unit-elements-sdk-slot',\n account = 'unit-elements-account',\n achDebitPayment = 'unit-elements-ach-debit-payment',\n achCreditPayment = 'unit-elements-ach-credit-payment'\n}\n\nexport const WebComponent = React.forwardRef<WebView, WebComponentProps>(function WebComponent(props, webRef) {\n const [unitScript, setUnitScript] = useState<string | undefined>(globalUnitScript);\n const [sourceHtml, setSourceHtml] = useState<string | null>(null);\n const [componentCurrentTheme, setComponentCurrentTheme] = useState<string | undefined>(props.theme ?? UnitSDK.getTheme());\n const width = props.width ?? '100%';\n\n const updateUnitScript = (data: SdkScriptFetched) => {\n setUnitScript(data.unitScript);\n };\n\n const updateInitializedParams = () => {\n setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());\n };\n\n useListenerToBus({ busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript });\n useListenerToBus({ busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams });\n\n useEffect(() => {\n if (!unitScript) {\n fetchUnitScript();\n return;\n }\n\n const componentParams = (props.params || '') + (componentCurrentTheme ? ` theme=\"${componentCurrentTheme}\"` : '');\n let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));\n newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');\n setSourceHtml(newHtml);\n }, [props.params, unitScript, props.presentationMode, componentCurrentTheme, props.script]);\n\n const onMessage = (e: WebViewMessageEvent) => {\n const message = JSON.parse(e.nativeEvent.data) as WebViewMessage;\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_REFRESH:\n message.details &&\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_REFRESH, message.details as RequestRefreshEvent);\n break;\n case UnitMessage.UNIT_REQUEST_DOWNLOAD:\n message.details &&\n handleRequestDownload(message.details as RequestDownloadEvent, () => {\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_CLOSE_FLOW);\n });\n break;\n default:\n props.onMessage && props.onMessage(message);\n }\n };\n\n if (!sourceHtml) return null;\n\n const _onScroll = (event: any) => {\n if (props.handleScroll) {\n props.handleScroll(event);\n }\n\n return null;\n };\n\n return (\n <WebView\n ref={webRef}\n cacheEnabled={false}\n scrollEnabled={props.isScrollable}\n nestedScrollEnabled={props.nestedScrollEnabled}\n onScroll={_onScroll}\n overScrollMode=\"never\"\n injectedJavaScript={unitScript}\n style={{ width: width, flex: 1 }}\n source={{ html: sourceHtml }}\n onMessage={onMessage} />\n );\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeWebview","_EventBus","_interopRequireDefault","_html","_unitMessages","_listenerToBus","_bodyHtml","_UnitSdk","_UnitSdkManager","_sdkMessage","_WebComponent","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","WebComponentType","exports","WebComponent","React","forwardRef","props","webRef","unitScript","setUnitScript","useState","globalUnitScript","sourceHtml","setSourceHtml","componentCurrentTheme","setComponentCurrentTheme","theme","UnitSDK","getTheme","width","updateUnitScript","data","updateInitializedParams","useListenerToBus","busEventKey","SDKMessage","IS_SCRIPT_FETCHED","action","IS_SDK_INITIALIZED","useEffect","fetchUnitScript","componentParams","params","newHtml","html","replace","HTML_PLACEHOLDER","BODY","getHtmlBody","type","valueOf","presentationMode","SCRIPT_FROM_NATIVE","script","onMessage","e","message","JSON","parse","nativeEvent","UnitMessage","UNIT_REQUEST_REFRESH","details","EventBus","Instance","event","UNIT_REQUEST_DOWNLOAD","handleRequestDownload","UNIT_REQUEST_CLOSE_FLOW","_onScroll","handleScroll","createElement","WebView","ref","cacheEnabled","scrollEnabled","isScrollable","nestedScrollEnabled","onScroll","overScrollMode","injectedJavaScript","style","flex","opacity","source"],"sources":["WebComponent.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useState } from 'react';\nimport { WebView, WebViewMessageEvent } from 'react-native-webview';\nimport EventBus from '../helpers/EventBus';\nimport html, { HTML_PLACEHOLDER } from './html';\nimport { RequestRefreshEvent, UnitMessage, RequestDownloadEvent } from '../messages/webMessages/unitMessages';\nimport { useListenerToBus } from '../hooks/listenerToBus';\nimport { getHtmlBody, PresentationMode } from '../scripts/html/bodyHtml';\nimport { fetchUnitScript, globalUnitScript } from '../unitSdkManager/UnitSdk.api';\nimport { UnitSDK } from '../unitSdkManager/UnitSdkManager';\nimport type { WebViewMessage } from '../messages/webMessages';\nimport { SDKMessage, SdkScriptFetched } from '../messages/nativeMessages/sdkMessage';\nimport { handleRequestDownload } from './WebComponent.utils';\n\nexport interface WebComponentProps {\n type: WebComponentType;\n presentationMode?: PresentationMode,\n params?: string;\n theme?: string;\n onMessage?: (message: WebViewMessage) => void;\n script?: string;\n isScrollable?: boolean,\n nestedScrollEnabled?: boolean,\n handleScroll?: (event: any) => void,\n width?: number;\n}\n\nexport enum WebComponentType {\n card = 'unit-elements-card',\n bookPayment = 'unit-elements-book-payment',\n activity = 'unit-elements-activity',\n slot = 'unit-elements-sdk-slot',\n account = 'unit-elements-account',\n achDebitPayment = 'unit-elements-ach-debit-payment',\n achCreditPayment = 'unit-elements-ach-credit-payment'\n}\n\nexport const WebComponent = React.forwardRef<WebView, WebComponentProps>(function WebComponent(props, webRef) {\n const [unitScript, setUnitScript] = useState<string | undefined>(globalUnitScript);\n const [sourceHtml, setSourceHtml] = useState<string | null>(null);\n const [componentCurrentTheme, setComponentCurrentTheme] = useState<string | undefined>(props.theme ?? UnitSDK.getTheme());\n const width = props.width ?? '100%';\n\n const updateUnitScript = (data: SdkScriptFetched) => {\n setUnitScript(data.unitScript);\n };\n\n const updateInitializedParams = () => {\n setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());\n };\n\n useListenerToBus({ busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript });\n useListenerToBus({ busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams });\n\n useEffect(() => {\n if (!unitScript) {\n fetchUnitScript();\n return;\n }\n\n const componentParams = (props.params || '') + (componentCurrentTheme ? ` theme=\"${componentCurrentTheme}\"` : '');\n let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));\n newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');\n setSourceHtml(newHtml);\n }, [props.params, unitScript, props.presentationMode, componentCurrentTheme, props.script]);\n\n const onMessage = (e: WebViewMessageEvent) => {\n const message = JSON.parse(e.nativeEvent.data) as WebViewMessage;\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_REFRESH:\n message.details &&\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_REFRESH, message.details as RequestRefreshEvent);\n break;\n case UnitMessage.UNIT_REQUEST_DOWNLOAD:\n message.details &&\n handleRequestDownload(message.details as RequestDownloadEvent, () => {\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_CLOSE_FLOW);\n });\n break;\n default:\n props.onMessage && props.onMessage(message);\n }\n };\n\n if (!sourceHtml) return null;\n\n const _onScroll = (event: any) => {\n if (props.handleScroll) {\n props.handleScroll(event);\n }\n\n return null;\n };\n\n return (\n <WebView\n ref={webRef}\n cacheEnabled={false}\n scrollEnabled={props.isScrollable}\n nestedScrollEnabled={props.nestedScrollEnabled}\n onScroll={_onScroll}\n overScrollMode=\"never\"\n injectedJavaScript={unitScript}\n style={{ width: width, flex: 1, opacity: 0.99}}\n source={{ html: sourceHtml }}\n onMessage={onMessage} />\n );\n});\n"],"mappings":"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"}
@@ -81,7 +81,8 @@ export const WebComponent = /*#__PURE__*/React.forwardRef(function WebComponent(
81
81
  injectedJavaScript: unitScript,
82
82
  style: {
83
83
  width: width,
84
- flex: 1
84
+ flex: 1,
85
+ opacity: 0.99
85
86
  },
86
87
  source: {
87
88
  html: sourceHtml
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useState","WebView","EventBus","html","HTML_PLACEHOLDER","UnitMessage","useListenerToBus","getHtmlBody","fetchUnitScript","globalUnitScript","UnitSDK","SDKMessage","handleRequestDownload","WebComponentType","WebComponent","forwardRef","props","webRef","unitScript","setUnitScript","sourceHtml","setSourceHtml","componentCurrentTheme","setComponentCurrentTheme","theme","getTheme","width","updateUnitScript","data","updateInitializedParams","busEventKey","IS_SCRIPT_FETCHED","action","IS_SDK_INITIALIZED","componentParams","params","newHtml","replace","BODY","type","valueOf","presentationMode","SCRIPT_FROM_NATIVE","script","onMessage","e","message","JSON","parse","nativeEvent","UNIT_REQUEST_REFRESH","details","Instance","event","UNIT_REQUEST_DOWNLOAD","UNIT_REQUEST_CLOSE_FLOW","_onScroll","handleScroll","createElement","ref","cacheEnabled","scrollEnabled","isScrollable","nestedScrollEnabled","onScroll","overScrollMode","injectedJavaScript","style","flex","source"],"sources":["WebComponent.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useState } from 'react';\nimport { WebView, WebViewMessageEvent } from 'react-native-webview';\nimport EventBus from '../helpers/EventBus';\nimport html, { HTML_PLACEHOLDER } from './html';\nimport { RequestRefreshEvent, UnitMessage, RequestDownloadEvent } from '../messages/webMessages/unitMessages';\nimport { useListenerToBus } from '../hooks/listenerToBus';\nimport { getHtmlBody, PresentationMode } from '../scripts/html/bodyHtml';\nimport { fetchUnitScript, globalUnitScript } from '../unitSdkManager/UnitSdk.api';\nimport { UnitSDK } from '../unitSdkManager/UnitSdkManager';\nimport type { WebViewMessage } from '../messages/webMessages';\nimport { SDKMessage, SdkScriptFetched } from '../messages/nativeMessages/sdkMessage';\nimport { handleRequestDownload } from './WebComponent.utils';\n\nexport interface WebComponentProps {\n type: WebComponentType;\n presentationMode?: PresentationMode,\n params?: string;\n theme?: string;\n onMessage?: (message: WebViewMessage) => void;\n script?: string;\n isScrollable?: boolean,\n nestedScrollEnabled?: boolean,\n handleScroll?: (event: any) => void,\n width?: number;\n}\n\nexport enum WebComponentType {\n card = 'unit-elements-card',\n bookPayment = 'unit-elements-book-payment',\n activity = 'unit-elements-activity',\n slot = 'unit-elements-sdk-slot',\n account = 'unit-elements-account',\n achDebitPayment = 'unit-elements-ach-debit-payment',\n achCreditPayment = 'unit-elements-ach-credit-payment'\n}\n\nexport const WebComponent = React.forwardRef<WebView, WebComponentProps>(function WebComponent(props, webRef) {\n const [unitScript, setUnitScript] = useState<string | undefined>(globalUnitScript);\n const [sourceHtml, setSourceHtml] = useState<string | null>(null);\n const [componentCurrentTheme, setComponentCurrentTheme] = useState<string | undefined>(props.theme ?? UnitSDK.getTheme());\n const width = props.width ?? '100%';\n\n const updateUnitScript = (data: SdkScriptFetched) => {\n setUnitScript(data.unitScript);\n };\n\n const updateInitializedParams = () => {\n setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());\n };\n\n useListenerToBus({ busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript });\n useListenerToBus({ busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams });\n\n useEffect(() => {\n if (!unitScript) {\n fetchUnitScript();\n return;\n }\n\n const componentParams = (props.params || '') + (componentCurrentTheme ? ` theme=\"${componentCurrentTheme}\"` : '');\n let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));\n newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');\n setSourceHtml(newHtml);\n }, [props.params, unitScript, props.presentationMode, componentCurrentTheme, props.script]);\n\n const onMessage = (e: WebViewMessageEvent) => {\n const message = JSON.parse(e.nativeEvent.data) as WebViewMessage;\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_REFRESH:\n message.details &&\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_REFRESH, message.details as RequestRefreshEvent);\n break;\n case UnitMessage.UNIT_REQUEST_DOWNLOAD:\n message.details &&\n handleRequestDownload(message.details as RequestDownloadEvent, () => {\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_CLOSE_FLOW);\n });\n break;\n default:\n props.onMessage && props.onMessage(message);\n }\n };\n\n if (!sourceHtml) return null;\n\n const _onScroll = (event: any) => {\n if (props.handleScroll) {\n props.handleScroll(event);\n }\n\n return null;\n };\n\n return (\n <WebView\n ref={webRef}\n cacheEnabled={false}\n scrollEnabled={props.isScrollable}\n nestedScrollEnabled={props.nestedScrollEnabled}\n onScroll={_onScroll}\n overScrollMode=\"never\"\n injectedJavaScript={unitScript}\n style={{ width: width, flex: 1 }}\n source={{ html: sourceHtml }}\n onMessage={onMessage} />\n );\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","useEffect","useState","WebView","EventBus","html","HTML_PLACEHOLDER","UnitMessage","useListenerToBus","getHtmlBody","fetchUnitScript","globalUnitScript","UnitSDK","SDKMessage","handleRequestDownload","WebComponentType","WebComponent","forwardRef","props","webRef","unitScript","setUnitScript","sourceHtml","setSourceHtml","componentCurrentTheme","setComponentCurrentTheme","theme","getTheme","width","updateUnitScript","data","updateInitializedParams","busEventKey","IS_SCRIPT_FETCHED","action","IS_SDK_INITIALIZED","componentParams","params","newHtml","replace","BODY","type","valueOf","presentationMode","SCRIPT_FROM_NATIVE","script","onMessage","e","message","JSON","parse","nativeEvent","UNIT_REQUEST_REFRESH","details","Instance","event","UNIT_REQUEST_DOWNLOAD","UNIT_REQUEST_CLOSE_FLOW","_onScroll","handleScroll","createElement","ref","cacheEnabled","scrollEnabled","isScrollable","nestedScrollEnabled","onScroll","overScrollMode","injectedJavaScript","style","flex","opacity","source"],"sources":["WebComponent.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useState } from 'react';\nimport { WebView, WebViewMessageEvent } from 'react-native-webview';\nimport EventBus from '../helpers/EventBus';\nimport html, { HTML_PLACEHOLDER } from './html';\nimport { RequestRefreshEvent, UnitMessage, RequestDownloadEvent } from '../messages/webMessages/unitMessages';\nimport { useListenerToBus } from '../hooks/listenerToBus';\nimport { getHtmlBody, PresentationMode } from '../scripts/html/bodyHtml';\nimport { fetchUnitScript, globalUnitScript } from '../unitSdkManager/UnitSdk.api';\nimport { UnitSDK } from '../unitSdkManager/UnitSdkManager';\nimport type { WebViewMessage } from '../messages/webMessages';\nimport { SDKMessage, SdkScriptFetched } from '../messages/nativeMessages/sdkMessage';\nimport { handleRequestDownload } from './WebComponent.utils';\n\nexport interface WebComponentProps {\n type: WebComponentType;\n presentationMode?: PresentationMode,\n params?: string;\n theme?: string;\n onMessage?: (message: WebViewMessage) => void;\n script?: string;\n isScrollable?: boolean,\n nestedScrollEnabled?: boolean,\n handleScroll?: (event: any) => void,\n width?: number;\n}\n\nexport enum WebComponentType {\n card = 'unit-elements-card',\n bookPayment = 'unit-elements-book-payment',\n activity = 'unit-elements-activity',\n slot = 'unit-elements-sdk-slot',\n account = 'unit-elements-account',\n achDebitPayment = 'unit-elements-ach-debit-payment',\n achCreditPayment = 'unit-elements-ach-credit-payment'\n}\n\nexport const WebComponent = React.forwardRef<WebView, WebComponentProps>(function WebComponent(props, webRef) {\n const [unitScript, setUnitScript] = useState<string | undefined>(globalUnitScript);\n const [sourceHtml, setSourceHtml] = useState<string | null>(null);\n const [componentCurrentTheme, setComponentCurrentTheme] = useState<string | undefined>(props.theme ?? UnitSDK.getTheme());\n const width = props.width ?? '100%';\n\n const updateUnitScript = (data: SdkScriptFetched) => {\n setUnitScript(data.unitScript);\n };\n\n const updateInitializedParams = () => {\n setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());\n };\n\n useListenerToBus({ busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript });\n useListenerToBus({ busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams });\n\n useEffect(() => {\n if (!unitScript) {\n fetchUnitScript();\n return;\n }\n\n const componentParams = (props.params || '') + (componentCurrentTheme ? ` theme=\"${componentCurrentTheme}\"` : '');\n let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));\n newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');\n setSourceHtml(newHtml);\n }, [props.params, unitScript, props.presentationMode, componentCurrentTheme, props.script]);\n\n const onMessage = (e: WebViewMessageEvent) => {\n const message = JSON.parse(e.nativeEvent.data) as WebViewMessage;\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_REFRESH:\n message.details &&\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_REFRESH, message.details as RequestRefreshEvent);\n break;\n case UnitMessage.UNIT_REQUEST_DOWNLOAD:\n message.details &&\n handleRequestDownload(message.details as RequestDownloadEvent, () => {\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_CLOSE_FLOW);\n });\n break;\n default:\n props.onMessage && props.onMessage(message);\n }\n };\n\n if (!sourceHtml) return null;\n\n const _onScroll = (event: any) => {\n if (props.handleScroll) {\n props.handleScroll(event);\n }\n\n return null;\n };\n\n return (\n <WebView\n ref={webRef}\n cacheEnabled={false}\n scrollEnabled={props.isScrollable}\n nestedScrollEnabled={props.nestedScrollEnabled}\n onScroll={_onScroll}\n overScrollMode=\"never\"\n injectedJavaScript={unitScript}\n style={{ width: width, flex: 1, opacity: 0.99}}\n source={{ html: sourceHtml }}\n onMessage={onMessage} />\n );\n});\n"],"mappings":"AAAA;AACA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAClD,SAASC,OAAO,QAA6B,sBAAsB;AACnE,OAAOC,QAAQ,MAAM,qBAAqB;AAC1C,OAAOC,IAAI,IAAIC,gBAAgB,QAAQ,QAAQ;AAC/C,SAA8BC,WAAW,QAA8B,sCAAsC;AAC7G,SAASC,gBAAgB,QAAQ,wBAAwB;AACzD,SAASC,WAAW,QAA0B,0BAA0B;AACxE,SAASC,eAAe,EAAEC,gBAAgB,QAAQ,+BAA+B;AACjF,SAASC,OAAO,QAAQ,kCAAkC;AAE1D,SAASC,UAAU,QAA0B,uCAAuC;AACpF,SAASC,qBAAqB,QAAQ,sBAAsB;AAe5D,WAAYC,gBAAgB;AAQ3B,WARWA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;AAAA,GAAhBA,gBAAgB,KAAhBA,gBAAgB;AAU5B,OAAO,MAAMC,YAAY,gBAAGhB,KAAK,CAACiB,UAAU,CAA6B,SAASD,YAAYA,CAACE,KAAK,EAAEC,MAAM,EAAE;EAC5G,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAGnB,QAAQ,CAAqBS,gBAAgB,CAAC;EAClF,MAAM,CAACW,UAAU,EAAEC,aAAa,CAAC,GAAGrB,QAAQ,CAAgB,IAAI,CAAC;EACjE,MAAM,CAACsB,qBAAqB,EAAEC,wBAAwB,CAAC,GAAGvB,QAAQ,CAAqBgB,KAAK,CAACQ,KAAK,IAAId,OAAO,CAACe,QAAQ,EAAE,CAAC;EACzH,MAAMC,KAAK,GAAGV,KAAK,CAACU,KAAK,IAAI,MAAM;EAEnC,MAAMC,gBAAgB,GAAIC,IAAsB,IAAK;IACnDT,aAAa,CAACS,IAAI,CAACV,UAAU,CAAC;EAChC,CAAC;EAED,MAAMW,uBAAuB,GAAGA,CAAA,KAAM;IACpCN,wBAAwB,CAACP,KAAK,CAACQ,KAAK,IAAId,OAAO,CAACe,QAAQ,EAAE,CAAC;EAC7D,CAAC;EAEDnB,gBAAgB,CAAC;IAAEwB,WAAW,EAAEnB,UAAU,CAACoB,iBAAiB;IAAEC,MAAM,EAAEL;EAAiB,CAAC,CAAC;EACzFrB,gBAAgB,CAAC;IAAEwB,WAAW,EAAEnB,UAAU,CAACsB,kBAAkB;IAAED,MAAM,EAAEH;EAAwB,CAAC,CAAC;EAEjG9B,SAAS,CAAC,MAAM;IACd,IAAI,CAACmB,UAAU,EAAE;MACfV,eAAe,EAAE;MACjB;IACF;IAEA,MAAM0B,eAAe,GAAG,CAAClB,KAAK,CAACmB,MAAM,IAAI,EAAE,KAAKb,qBAAqB,GAAI,WAAUA,qBAAsB,GAAE,GAAG,EAAE,CAAC;IACjH,IAAIc,OAAO,GAAGjC,IAAI,CAACkC,OAAO,CAACjC,gBAAgB,CAACkC,IAAI,EAAE/B,WAAW,CAACS,KAAK,CAACuB,IAAI,CAACC,OAAO,EAAE,EAAEN,eAAe,EAAElB,KAAK,CAACyB,gBAAgB,CAAC,CAAC;IAC7HL,OAAO,GAAGA,OAAO,CAACC,OAAO,CAACjC,gBAAgB,CAACsC,kBAAkB,EAAE1B,KAAK,CAAC2B,MAAM,IAAI,EAAE,CAAC;IAClFtB,aAAa,CAACe,OAAO,CAAC;EACxB,CAAC,EAAE,CAACpB,KAAK,CAACmB,MAAM,EAAEjB,UAAU,EAAEF,KAAK,CAACyB,gBAAgB,EAAEnB,qBAAqB,EAAEN,KAAK,CAAC2B,MAAM,CAAC,CAAC;EAE3F,MAAMC,SAAS,GAAIC,CAAsB,IAAK;IAC5C,MAAMC,OAAO,GAAGC,IAAI,CAACC,KAAK,CAACH,CAAC,CAACI,WAAW,CAACrB,IAAI,CAAmB;IAChE,QAAQkB,OAAO,CAACP,IAAI;MAClB,KAAKlC,WAAW,CAAC6C,oBAAoB;QACnCJ,OAAO,CAACK,OAAO,IACbjD,QAAQ,CAACkD,QAAQ,CAACC,KAAK,CAAChD,WAAW,CAAC6C,oBAAoB,EAAEJ,OAAO,CAACK,OAAO,CAAwB;QACnG;MACF,KAAK9C,WAAW,CAACiD,qBAAqB;QACpCR,OAAO,CAACK,OAAO,IACbvC,qBAAqB,CAACkC,OAAO,CAACK,OAAO,EAA0B,MAAM;UACnEjD,QAAQ,CAACkD,QAAQ,CAACC,KAAK,CAAChD,WAAW,CAACkD,uBAAuB,CAAC;QAC9D,CAAC,CAAC;QACJ;MACF;QACEvC,KAAK,CAAC4B,SAAS,IAAI5B,KAAK,CAAC4B,SAAS,CAACE,OAAO,CAAC;IAAC;EAElD,CAAC;EAED,IAAI,CAAC1B,UAAU,EAAE,OAAO,IAAI;EAE5B,MAAMoC,SAAS,GAAIH,KAAU,IAAK;IAChC,IAAIrC,KAAK,CAACyC,YAAY,EAAE;MACtBzC,KAAK,CAACyC,YAAY,CAACJ,KAAK,CAAC;IAC3B;IAEA,OAAO,IAAI;EACb,CAAC;EAED,oBACEvD,KAAA,CAAA4D,aAAA,CAACzD,OAAO;IACN0D,GAAG,EAAE1C,MAAO;IACZ2C,YAAY,EAAE,KAAM;IACpBC,aAAa,EAAE7C,KAAK,CAAC8C,YAAa;IAClCC,mBAAmB,EAAE/C,KAAK,CAAC+C,mBAAoB;IAC/CC,QAAQ,EAAER,SAAU;IACpBS,cAAc,EAAC,OAAO;IACtBC,kBAAkB,EAAEhD,UAAW;IAC/BiD,KAAK,EAAE;MAAEzC,KAAK,EAAEA,KAAK;MAAE0C,IAAI,EAAE,CAAC;MAAEC,OAAO,EAAE;IAAI,CAAE;IAC/CC,MAAM,EAAE;MAAEnE,IAAI,EAAEiB;IAAW,CAAE;IAC7BwB,SAAS,EAAEA;EAAU,EAAG;AAE9B,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-unit-components",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "Unit React Native components",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -101,7 +101,7 @@ export const WebComponent = React.forwardRef<WebView, WebComponentProps>(functio
101
101
  onScroll={_onScroll}
102
102
  overScrollMode="never"
103
103
  injectedJavaScript={unitScript}
104
- style={{ width: width, flex: 1 }}
104
+ style={{ width: width, flex: 1, opacity: 0.99}}
105
105
  source={{ html: sourceHtml }}
106
106
  onMessage={onMessage} />
107
107
  );