@abihealth/goapp-react-native 1.40.2 → 1.41.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/common/components/Button.js +1 -1
- package/dist/common/locale/translations/de.base.json +1 -1
- package/dist/common/locale/translations/en.base.json +6 -0
- package/dist/common/locale/translations/zh-HK.base.json +5 -1
- package/dist/common/screens/MatchingScreen.js +30 -2
- package/dist/common/types/components.d.ts +1 -0
- package/dist/video-consultations/components/agora/components/ui.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.41.0](https://github.com/abiglobalhealth/react-native-sdk/compare/goapp-react-native-v1.40.3...goapp-react-native-v1.41.0) (2025-08-14)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* add matching disclaimer ([#238](https://github.com/abiglobalhealth/react-native-sdk/issues/238)) ([a3c0983](https://github.com/abiglobalhealth/react-native-sdk/commit/a3c09837f54e5e88d1d2b35e498b6c8f2ca4a2de))
|
|
9
|
+
|
|
10
|
+
## [1.40.3](https://github.com/abiglobalhealth/react-native-sdk/compare/goapp-react-native-v1.40.2...goapp-react-native-v1.40.3) (2025-08-06)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Bug Fixes
|
|
14
|
+
|
|
15
|
+
* including accessibility role button ([#236](https://github.com/abiglobalhealth/react-native-sdk/issues/236)) ([992a4bc](https://github.com/abiglobalhealth/react-native-sdk/commit/992a4bc9510195cea37ead4493c2efcf93bf1fbf))
|
|
16
|
+
|
|
3
17
|
## [1.40.2](https://github.com/abiglobalhealth/react-native-sdk/compare/goapp-react-native-v1.40.1...goapp-react-native-v1.40.2) (2025-08-06)
|
|
4
18
|
|
|
5
19
|
|
|
@@ -93,7 +93,7 @@ exports.Button = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
93
93
|
shadow && theme.shadows.soft,
|
|
94
94
|
style,
|
|
95
95
|
(_a = Button === null || Button === void 0 ? void 0 : Button[variant]) === null || _a === void 0 ? void 0 : _a.containerStyle
|
|
96
|
-
]} onPress={onPress} disabled={loading || props.disabled} accessibilityLabel={children} accessibilityState={{ disabled: loading || props.disabled }}>
|
|
96
|
+
]} onPress={onPress} disabled={loading || props.disabled} accessibilityLabel={children} accessibilityState={{ disabled: loading || props.disabled }} accessibilityRole="button">
|
|
97
97
|
{loading ? (<LoadingHeart_1.LoadingHeart />) : (<>
|
|
98
98
|
{icon}
|
|
99
99
|
{children && (<Text_1.Text style={[
|
|
@@ -162,7 +162,7 @@
|
|
|
162
162
|
"link_content.skip": "Nein, danke.",
|
|
163
163
|
"loading_summary": "Zusammenfassung wird geladen",
|
|
164
164
|
"match.one_minute": "Dies dauert normalerweise weniger als eine Minute, kann aber zu bestimmten Tageszeiten länger dauern.",
|
|
165
|
-
"matching": "Wir suchen
|
|
165
|
+
"matching": "Wir suchen die passende medizinische Fachperson für Sie",
|
|
166
166
|
"matching.video.text_message": "Sie erhalten eine Textnachricht, wenn ein Arzt Sie zu einem Videotelefonat einlädt.",
|
|
167
167
|
"medical_advice.call_visana": "Aufgrund der Einschätzung des Arztes sollten Sie sich unter der folgenden Nummer an Medi24 wenden: \n \n</b> <a href=\"tel: +41 800 633 225\">+41 800 633 225</a> <b>",
|
|
168
168
|
"medical_advice.emergency": "Notfall",
|
|
@@ -65,6 +65,11 @@
|
|
|
65
65
|
"button.yes_5": "Yes, for 5 mg",
|
|
66
66
|
"button.yes_it_was_negative": "Yes, it was negative",
|
|
67
67
|
"button.yes_it_was_positive": "Yes, it was positive",
|
|
68
|
+
"case_closed.description": "Contact Abi for video consultation support.",
|
|
69
|
+
"case_closed.description.medi24": "Contact Medi24 (<a href=\"https://medi24.ch/de\" target=\"_blank\">medi24.ch</a>) for video consultation support.",
|
|
70
|
+
"case_closed.description.medi24-kpt": "Contact Medi24 (<a href=\"https://medi24.ch/de\" target=\"_blank\">medi24.ch</a>) for video consultation support.",
|
|
71
|
+
"case_closed.description.medi24-other": "Contact Medi24 (<a href=\"https://medi24.ch/de\" target=\"_blank\">medi24.ch</a>) for video consultation support.",
|
|
72
|
+
"case_closed.description.medi24-test": "Contact Medi24 (<a href=\"https://medi24.ch/de\" target=\"_blank\">medi24.ch</a>) for video consultation support.",
|
|
68
73
|
"case.attachment": "Attachment",
|
|
69
74
|
"case.back": "Back",
|
|
70
75
|
"case.back.hsbc-hk": "Stay",
|
|
@@ -968,6 +973,7 @@
|
|
|
968
973
|
"summary.prescription.error.title": "There is a problem with the delivery of your prescription.",
|
|
969
974
|
"switch.continue_text": "Continue with text consultation",
|
|
970
975
|
"switch.error": "We encountered an issue while processing your request. Please try again later or contact <a href=\"mailto:info@abi.ai\">info@abi.ai</a> for assistance.",
|
|
976
|
+
"switch.generic": "Based on your case, a video consultation is recommended to ensure you receive the right care.",
|
|
971
977
|
"switch.no_prescription": "(no prescriptions or certificates available)",
|
|
972
978
|
"switch.prescription_video": "<strong>{{conditionSymptoms}}</strong> may require a prescription, which can only be provided after a video consultation.",
|
|
973
979
|
"switch.to_video.button": "Start video consultation",
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
"button.cancel.hsbc-hk": "取消",
|
|
12
12
|
"button.close_consultation.hsbc-hk": "結束診症",
|
|
13
13
|
"button.confirm": "確認",
|
|
14
|
+
"button.confirm_close": "確認並關閉",
|
|
14
15
|
"button.confirm_close.hsbc-hk": "是,確認並結束",
|
|
15
16
|
"button.continue": "繼續",
|
|
16
17
|
"button.create_new_password": "建立新密碼",
|
|
@@ -41,6 +42,8 @@
|
|
|
41
42
|
"case.back.hsbc-hk": "留在此頁",
|
|
42
43
|
"case.cancel_question": "退出個案",
|
|
43
44
|
"case.cancel_question.hsbc-hk": "取消",
|
|
45
|
+
"close.subtitle": "在结束本次咨询之前,我们建议下载摘要 PDF 以供将来参考。",
|
|
46
|
+
"close.title": "結束視像診症?",
|
|
44
47
|
"consultation.summary_being_prepared.hsbc-hk": "正在準備診症概要",
|
|
45
48
|
"contact.enter_message_below": "請在下方輸入您的訊息。",
|
|
46
49
|
"contact.hi": "您好!",
|
|
@@ -69,12 +72,13 @@
|
|
|
69
72
|
"delivery.address.address": "地址",
|
|
70
73
|
"delivery.address.address.placeholder.1": "街名及號碼",
|
|
71
74
|
"delivery.address.address.placeholder.2": "單位、大廈或樓層",
|
|
72
|
-
"delivery.address.building_name_number": "
|
|
75
|
+
"delivery.address.building_name_number": "大廈名稱/號碼",
|
|
73
76
|
"delivery.address.building_name_number.placeholder": "幸運大廈",
|
|
74
77
|
"delivery.address.country": "國家/地區",
|
|
75
78
|
"delivery.address.country.placeholder": "請選擇…",
|
|
76
79
|
"delivery.address.description": "處方已獲批核。請提供完整地址以便寄送處方藥物。",
|
|
77
80
|
"delivery.address.description.hsbc-hk": "確認送藥地址",
|
|
81
|
+
"delivery.address.district": "地區",
|
|
78
82
|
"delivery.address.mobile": "手機號碼",
|
|
79
83
|
"delivery.address.number_and_floor": "單位號碼及樓層",
|
|
80
84
|
"delivery.address.number_and_floor.placeholder": "15 樓 46 室",
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
15
|
};
|
|
@@ -13,6 +24,7 @@ var Text_1 = require("../components/Text");
|
|
|
13
24
|
var useCustomComponents_1 = require("../hooks/useCustomComponents");
|
|
14
25
|
var useTheme_1 = require("../hooks/useTheme");
|
|
15
26
|
var useTranslation_1 = require("../hooks/useTranslation");
|
|
27
|
+
var InfoIcon_1 = require("../icons/InfoIcon");
|
|
16
28
|
var react_1 = __importDefault(require("react"));
|
|
17
29
|
var react_native_1 = require("react-native");
|
|
18
30
|
var MatchingScreen = function () {
|
|
@@ -21,6 +33,7 @@ var MatchingScreen = function () {
|
|
|
21
33
|
var styles = getStyles(theme);
|
|
22
34
|
var screens = (0, useCustomComponents_1.useCustomComponents)().screens;
|
|
23
35
|
var customComponents = screens === null || screens === void 0 ? void 0 : screens.MatchingScreen;
|
|
36
|
+
var showDisclaimer = customComponents === null || customComponents === void 0 ? void 0 : customComponents.showDisclaimer;
|
|
24
37
|
return (<ScreenWrapper_1.ScreenWrapper header={<ConsultationHeader_1.ConsultationHeader rightIcon={<CancelConsultationButton_1.CancelConsultationButton />}/>} containerStyle={[styles.container, customComponents === null || customComponents === void 0 ? void 0 : customComponents.containerStyle]}>
|
|
25
38
|
<Text_1.Text variant="h2" center>
|
|
26
39
|
{t('matching')}
|
|
@@ -29,14 +42,24 @@ var MatchingScreen = function () {
|
|
|
29
42
|
<CustomAnimation_1.CustomAnimation animation={customComponents === null || customComponents === void 0 ? void 0 : customComponents.MatchingAnimation} fallback={<animation_1.FindingAnimation />}/>
|
|
30
43
|
|
|
31
44
|
<react_native_1.View style={styles.footer}>
|
|
32
|
-
<Text_1.Text center>{t('matching.video.text_message')}</Text_1.Text>
|
|
45
|
+
{!showDisclaimer && <Text_1.Text center>{t('matching.video.text_message')}</Text_1.Text>}
|
|
46
|
+
|
|
33
47
|
<Text_1.Text center>{t('match.one_minute')}</Text_1.Text>
|
|
48
|
+
|
|
49
|
+
{showDisclaimer && (<react_native_1.View style={styles.disclaimer}>
|
|
50
|
+
<react_native_1.View style={styles.disclaimerHeader}>
|
|
51
|
+
<InfoIcon_1.InfoIcon />
|
|
52
|
+
<Text_1.Text style={styles.disclaimerText}>{t('matching.disclaimer.label')}</Text_1.Text>
|
|
53
|
+
</react_native_1.View>
|
|
54
|
+
<Text_1.Text>{t('matching.disclaimer.sentence')}</Text_1.Text>
|
|
55
|
+
<Text_1.Text>{t('matching.disclaimer.diagnosis')}</Text_1.Text>
|
|
56
|
+
</react_native_1.View>)}
|
|
34
57
|
</react_native_1.View>
|
|
35
58
|
</ScreenWrapper_1.ScreenWrapper>);
|
|
36
59
|
};
|
|
37
60
|
exports.MatchingScreen = MatchingScreen;
|
|
38
61
|
var getStyles = function (_a) {
|
|
39
|
-
var spacing = _a.spacing;
|
|
62
|
+
var spacing = _a.spacing, shadows = _a.shadows, palette = _a.palette;
|
|
40
63
|
return react_native_1.StyleSheet.create({
|
|
41
64
|
container: {
|
|
42
65
|
paddingTop: spacing.xl,
|
|
@@ -44,6 +67,11 @@ var getStyles = function (_a) {
|
|
|
44
67
|
},
|
|
45
68
|
footer: {
|
|
46
69
|
rowGap: spacing.xl
|
|
70
|
+
},
|
|
71
|
+
disclaimer: __assign({ backgroundColor: palette.white, padding: spacing.sm, borderRadius: spacing.sm, rowGap: spacing.sm }, shadows.soft),
|
|
72
|
+
disclaimerHeader: { flexDirection: 'row', alignItems: 'center', columnGap: spacing.xs },
|
|
73
|
+
disclaimerText: {
|
|
74
|
+
fontWeight: '700'
|
|
47
75
|
}
|
|
48
76
|
});
|
|
49
77
|
};
|
|
@@ -25,7 +25,7 @@ var VideoCallButton = function (props) {
|
|
|
25
25
|
var theme = (0, useTheme_1.useTheme)();
|
|
26
26
|
var styles = getStyles(theme);
|
|
27
27
|
var _a = props.disabled, disabled = _a === void 0 ? false : _a, icon = props.icon, _b = props.isMuted, isMuted = _b === void 0 ? false : _b, _c = props.customStyle, customStyle = _c === void 0 ? {} : _c, accessibilityLabel = props.accessibilityLabel;
|
|
28
|
-
return (<react_native_1.TouchableOpacity style={styles.buttonPress} disabled={disabled} onPress={props.onPress} accessibilityLabel={accessibilityLabel}>
|
|
28
|
+
return (<react_native_1.TouchableOpacity style={styles.buttonPress} disabled={disabled} onPress={props.onPress} accessibilityLabel={accessibilityLabel} accessibilityRole="button" accessibilityState={{ disabled: disabled }}>
|
|
29
29
|
<react_native_1.View style={[styles.buttonControl, customStyle, theme.shadows.soft, isMuted ? { opacity: 0.3 } : {}]}>{icon}</react_native_1.View>
|
|
30
30
|
</react_native_1.TouchableOpacity>);
|
|
31
31
|
};
|