@ethora/chat-component-rn 26.8.7 → 26.8.8

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.
Files changed (195) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +25 -3
  3. package/lib/commonjs/components/MainComponents/ChatWrapper.js +5 -3
  4. package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
  5. package/lib/commonjs/components/MainComponents/ReduxWrapper.js +8 -0
  6. package/lib/commonjs/components/MainComponents/ReduxWrapper.js.map +1 -1
  7. package/lib/commonjs/components/Menu/HeaderRoomListMenu.js +26 -13
  8. package/lib/commonjs/components/Menu/HeaderRoomListMenu.js.map +1 -1
  9. package/lib/commonjs/components/MenuRoom/MenuRoom.js +5 -3
  10. package/lib/commonjs/components/MenuRoom/MenuRoom.js.map +1 -1
  11. package/lib/commonjs/components/MessageBubble/Message.js +3 -3
  12. package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
  13. package/lib/commonjs/components/MessageBubble/MessageInteractions.js +5 -3
  14. package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
  15. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +1 -1
  16. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  17. package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js +2 -2
  18. package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -1
  19. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +7 -5
  20. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  21. package/lib/commonjs/components/Modals/Modal/Modal.js +33 -11
  22. package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
  23. package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js +8 -8
  24. package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
  25. package/lib/commonjs/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.js +279 -0
  26. package/lib/commonjs/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.js.map +1 -0
  27. package/lib/commonjs/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js +10 -8
  28. package/lib/commonjs/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js.map +1 -1
  29. package/lib/commonjs/components/Modals/SettingsModals/Visibility/VisibilityModal.js +13 -11
  30. package/lib/commonjs/components/Modals/SettingsModals/Visibility/VisibilityModal.js.map +1 -1
  31. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +21 -9
  32. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  33. package/lib/commonjs/components/Modals/UserSettingsModal/LanguageCard.js +121 -0
  34. package/lib/commonjs/components/Modals/UserSettingsModal/LanguageCard.js.map +1 -0
  35. package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js +11 -6
  36. package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
  37. package/lib/commonjs/components/Thread/ThreadWrapper.js +4 -2
  38. package/lib/commonjs/components/Thread/ThreadWrapper.js.map +1 -1
  39. package/lib/commonjs/e2ee/stanza.js +1 -1
  40. package/lib/commonjs/e2ee/stanza.js.map +1 -1
  41. package/lib/commonjs/helpers/constants/MODAL_COMPONENTS.js +2 -0
  42. package/lib/commonjs/helpers/constants/MODAL_COMPONENTS.js.map +1 -1
  43. package/lib/commonjs/helpers/constants/MODAL_TYPES.js +1 -0
  44. package/lib/commonjs/helpers/constants/MODAL_TYPES.js.map +1 -1
  45. package/lib/commonjs/helpers/preferencesStorage.js.map +1 -1
  46. package/lib/commonjs/hooks/useChatSettingState.js +2 -0
  47. package/lib/commonjs/hooks/useChatSettingState.js.map +1 -1
  48. package/lib/commonjs/hooks/useChatWrapperInit.js +4 -0
  49. package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
  50. package/lib/commonjs/i18n/strings.js +187 -1
  51. package/lib/commonjs/i18n/strings.js.map +1 -1
  52. package/lib/commonjs/i18n/useT.js +8 -4
  53. package/lib/commonjs/i18n/useT.js.map +1 -1
  54. package/lib/commonjs/networking/api-requests/user.api.js +13 -0
  55. package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
  56. package/lib/commonjs/networking/stanzaHandlers.js +1 -1
  57. package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
  58. package/lib/commonjs/roomStore/chatSettingsSlice.js +7 -2
  59. package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
  60. package/lib/commonjs/services/languageSettings.js +177 -0
  61. package/lib/commonjs/services/languageSettings.js.map +1 -0
  62. package/lib/commonjs/version.js +1 -1
  63. package/lib/module/components/MainComponents/ChatWrapper.js +5 -3
  64. package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
  65. package/lib/module/components/MainComponents/ReduxWrapper.js +9 -1
  66. package/lib/module/components/MainComponents/ReduxWrapper.js.map +1 -1
  67. package/lib/module/components/Menu/HeaderRoomListMenu.js +26 -13
  68. package/lib/module/components/Menu/HeaderRoomListMenu.js.map +1 -1
  69. package/lib/module/components/MenuRoom/MenuRoom.js +5 -3
  70. package/lib/module/components/MenuRoom/MenuRoom.js.map +1 -1
  71. package/lib/module/components/MessageBubble/Message.js +3 -3
  72. package/lib/module/components/MessageBubble/Message.js.map +1 -1
  73. package/lib/module/components/MessageBubble/MessageInteractions.js +5 -3
  74. package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
  75. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +1 -1
  76. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  77. package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js +2 -2
  78. package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -1
  79. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +7 -5
  80. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  81. package/lib/module/components/Modals/Modal/Modal.js +33 -11
  82. package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
  83. package/lib/module/components/Modals/NewChatModal/NewChatModal.js +8 -8
  84. package/lib/module/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
  85. package/lib/module/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.js +274 -0
  86. package/lib/module/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.js.map +1 -0
  87. package/lib/module/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js +10 -8
  88. package/lib/module/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js.map +1 -1
  89. package/lib/module/components/Modals/SettingsModals/Visibility/VisibilityModal.js +13 -11
  90. package/lib/module/components/Modals/SettingsModals/Visibility/VisibilityModal.js.map +1 -1
  91. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +22 -10
  92. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  93. package/lib/module/components/Modals/UserSettingsModal/LanguageCard.js +116 -0
  94. package/lib/module/components/Modals/UserSettingsModal/LanguageCard.js.map +1 -0
  95. package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js +10 -5
  96. package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
  97. package/lib/module/components/Thread/ThreadWrapper.js +4 -2
  98. package/lib/module/components/Thread/ThreadWrapper.js.map +1 -1
  99. package/lib/module/e2ee/stanza.js +1 -1
  100. package/lib/module/e2ee/stanza.js.map +1 -1
  101. package/lib/module/helpers/constants/MODAL_COMPONENTS.js +2 -0
  102. package/lib/module/helpers/constants/MODAL_COMPONENTS.js.map +1 -1
  103. package/lib/module/helpers/constants/MODAL_TYPES.js +1 -0
  104. package/lib/module/helpers/constants/MODAL_TYPES.js.map +1 -1
  105. package/lib/module/helpers/preferencesStorage.js.map +1 -1
  106. package/lib/module/hooks/useChatSettingState.js +2 -0
  107. package/lib/module/hooks/useChatSettingState.js.map +1 -1
  108. package/lib/module/hooks/useChatWrapperInit.js +4 -0
  109. package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
  110. package/lib/module/i18n/strings.js +187 -1
  111. package/lib/module/i18n/strings.js.map +1 -1
  112. package/lib/module/i18n/useT.js +8 -4
  113. package/lib/module/i18n/useT.js.map +1 -1
  114. package/lib/module/networking/api-requests/user.api.js +12 -0
  115. package/lib/module/networking/api-requests/user.api.js.map +1 -1
  116. package/lib/module/networking/stanzaHandlers.js +1 -1
  117. package/lib/module/networking/stanzaHandlers.js.map +1 -1
  118. package/lib/module/roomStore/chatSettingsSlice.js +5 -1
  119. package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
  120. package/lib/module/services/languageSettings.js +164 -0
  121. package/lib/module/services/languageSettings.js.map +1 -0
  122. package/lib/module/version.js +1 -1
  123. package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
  124. package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts.map +1 -1
  125. package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts +7 -1
  126. package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts.map +1 -1
  127. package/lib/typescript/components/MenuRoom/MenuRoom.d.ts.map +1 -1
  128. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
  129. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
  130. package/lib/typescript/components/Modals/Modal/Modal.d.ts.map +1 -1
  131. package/lib/typescript/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.d.ts +15 -0
  132. package/lib/typescript/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.d.ts.map +1 -0
  133. package/lib/typescript/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.d.ts.map +1 -1
  134. package/lib/typescript/components/Modals/SettingsModals/Visibility/VisibilityModal.d.ts.map +1 -1
  135. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
  136. package/lib/typescript/components/Modals/UserSettingsModal/LanguageCard.d.ts +14 -0
  137. package/lib/typescript/components/Modals/UserSettingsModal/LanguageCard.d.ts.map +1 -0
  138. package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts.map +1 -1
  139. package/lib/typescript/components/Thread/ThreadWrapper.d.ts.map +1 -1
  140. package/lib/typescript/helpers/constants/MODAL_COMPONENTS.d.ts.map +1 -1
  141. package/lib/typescript/helpers/constants/MODAL_TYPES.d.ts +1 -0
  142. package/lib/typescript/helpers/constants/MODAL_TYPES.d.ts.map +1 -1
  143. package/lib/typescript/helpers/preferencesStorage.d.ts +4 -0
  144. package/lib/typescript/helpers/preferencesStorage.d.ts.map +1 -1
  145. package/lib/typescript/hooks/useChatSettingState.d.ts +1 -0
  146. package/lib/typescript/hooks/useChatSettingState.d.ts.map +1 -1
  147. package/lib/typescript/hooks/useChatWrapperInit.d.ts.map +1 -1
  148. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  149. package/lib/typescript/i18n/useT.d.ts.map +1 -1
  150. package/lib/typescript/networking/api-requests/user.api.d.ts +6 -0
  151. package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
  152. package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
  153. package/lib/typescript/roomStore/chatSettingsSlice.d.ts +8 -1
  154. package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
  155. package/lib/typescript/services/languageSettings.d.ts +29 -0
  156. package/lib/typescript/services/languageSettings.d.ts.map +1 -0
  157. package/lib/typescript/types/models/user.model.d.ts +4 -0
  158. package/lib/typescript/types/models/user.model.d.ts.map +1 -1
  159. package/lib/typescript/types/types.d.ts +21 -0
  160. package/lib/typescript/types/types.d.ts.map +1 -1
  161. package/lib/typescript/version.d.ts +1 -1
  162. package/package.json +1 -1
  163. package/src/components/MainComponents/ChatWrapper.tsx +5 -3
  164. package/src/components/MainComponents/ReduxWrapper.tsx +6 -0
  165. package/src/components/Menu/HeaderRoomListMenu.tsx +40 -13
  166. package/src/components/MenuRoom/MenuRoom.tsx +5 -3
  167. package/src/components/MessageBubble/Message.tsx +3 -3
  168. package/src/components/MessageBubble/MessageInteractions.tsx +5 -3
  169. package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +1 -1
  170. package/src/components/Modals/ChatProfileModal/ReportChatModal.tsx +2 -2
  171. package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +7 -5
  172. package/src/components/Modals/Modal/Modal.tsx +44 -16
  173. package/src/components/Modals/NewChatModal/NewChatModal.tsx +8 -8
  174. package/src/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.tsx +316 -0
  175. package/src/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.tsx +10 -15
  176. package/src/components/Modals/SettingsModals/Visibility/VisibilityModal.tsx +13 -14
  177. package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +19 -12
  178. package/src/components/Modals/UserSettingsModal/LanguageCard.tsx +144 -0
  179. package/src/components/Modals/UserSettingsModal/UserSettingsModal.tsx +11 -4
  180. package/src/components/Thread/ThreadWrapper.tsx +4 -2
  181. package/src/e2ee/stanza.ts +1 -1
  182. package/src/helpers/constants/MODAL_COMPONENTS.tsx +2 -0
  183. package/src/helpers/constants/MODAL_TYPES.ts +1 -0
  184. package/src/helpers/preferencesStorage.ts +4 -0
  185. package/src/hooks/useChatSettingState.tsx +4 -0
  186. package/src/hooks/useChatWrapperInit.ts +4 -0
  187. package/src/i18n/strings.ts +187 -1
  188. package/src/i18n/useT.ts +6 -4
  189. package/src/networking/api-requests/user.api.ts +9 -0
  190. package/src/networking/stanzaHandlers.ts +1 -0
  191. package/src/roomStore/chatSettingsSlice.ts +13 -0
  192. package/src/services/languageSettings.ts +143 -0
  193. package/src/types/models/user.model.ts +4 -0
  194. package/src/types/types.ts +21 -0
  195. package/src/version.ts +1 -1
@@ -0,0 +1,274 @@
1
+ "use strict";
2
+
3
+ import React, { useCallback, useMemo, useState } from 'react';
4
+ import { ActivityIndicator, KeyboardAvoidingView, Platform, ScrollView, StyleSheet, Text, TextInput, TouchableOpacity, View } from 'react-native';
5
+ import ModalHeaderComponent from '../../ModalHeaderComponent';
6
+ import { ModalContainerFullScreen } from '../../styledModalComponents';
7
+ import { useTheme } from '../../../../hooks/useTheme';
8
+ import { useT } from '../../../../i18n/useT';
9
+ import { useToast } from '../../../../context/ToastContext';
10
+ import { useChatSettingState } from '../../../../hooks/useChatSettingState';
11
+ import { changePassword } from '../../../../networking/api-requests/user.api';
12
+ import { chatTextStyle } from '../../../../helpers/typography';
13
+
14
+ /** What the backend asks of a password at sign-up. */
15
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
+ export const MIN_PASSWORD_LENGTH = 8;
17
+
18
+ /** The reason a backend gave, or nothing - never an axios dump. */
19
+ const serverReason = error => {
20
+ const data = error?.response?.data;
21
+ const text = typeof data === 'string' && data || data?.message || data?.error || Array.isArray(data?.errors) && data.errors.map(e => e?.message || e).join(', ') || '';
22
+ return typeof text === 'string' ? text.trim() : '';
23
+ };
24
+ /** One labelled password field: label above, error (if any) below. */
25
+ const Field = ({
26
+ testID,
27
+ label,
28
+ value,
29
+ onChangeText,
30
+ error,
31
+ editable,
32
+ newPassword,
33
+ onSubmitEditing,
34
+ styles,
35
+ theme
36
+ }) => /*#__PURE__*/_jsxs(View, {
37
+ style: styles.field,
38
+ children: [/*#__PURE__*/_jsx(Text, {
39
+ style: styles.fieldLabel,
40
+ children: label
41
+ }), /*#__PURE__*/_jsx(TextInput, {
42
+ testID: testID,
43
+ style: [styles.input, error ? styles.inputError : null],
44
+ value: value,
45
+ onChangeText: onChangeText,
46
+ placeholder: label,
47
+ placeholderTextColor: theme.textMuted,
48
+ keyboardAppearance: theme.dark ? 'dark' : 'light',
49
+ secureTextEntry: true,
50
+ autoCapitalize: "none",
51
+ autoCorrect: false,
52
+ textContentType: newPassword ? 'newPassword' : 'password',
53
+ editable: editable,
54
+ returnKeyType: onSubmitEditing ? 'done' : 'next',
55
+ onSubmitEditing: onSubmitEditing,
56
+ blurOnSubmit: !!onSubmitEditing
57
+ }), error ? /*#__PURE__*/_jsx(Text, {
58
+ style: styles.fieldError,
59
+ children: error
60
+ }) : null]
61
+ });
62
+ /**
63
+ * Change the account password: the current one, the new one twice. Nothing
64
+ * is sent until the form is complete and the two match; what the backend
65
+ * refuses is shown as it said it. Laid out like the Settings screen it is
66
+ * reached from: one card on the list ground.
67
+ */
68
+ const ChangePasswordModal = ({
69
+ handleCloseModal
70
+ }) => {
71
+ const theme = useTheme();
72
+ const t = useT();
73
+ const {
74
+ showToast
75
+ } = useToast();
76
+ const {
77
+ config
78
+ } = useChatSettingState();
79
+ const styles = useMemo(() => createStyles(theme), [theme]);
80
+ const [current, setCurrent] = useState('');
81
+ const [next, setNext] = useState('');
82
+ const [again, setAgain] = useState('');
83
+ const [busy, setBusy] = useState(false);
84
+ const [error, setError] = useState('');
85
+ const mismatch = again.length > 0 && next !== again;
86
+ const tooShort = next.length > 0 && next.length < MIN_PASSWORD_LENGTH;
87
+ const sameAsCurrent = next.length > 0 && next === current;
88
+ const ready = current.length > 0 && next.length >= MIN_PASSWORD_LENGTH && next === again && !sameAsCurrent && !busy;
89
+ const submit = useCallback(async () => {
90
+ if (!ready) {
91
+ return;
92
+ }
93
+ setBusy(true);
94
+ setError('');
95
+ try {
96
+ await changePassword(current, next);
97
+ showToast({
98
+ id: Date.now().toString(),
99
+ title: t('settings.password.title'),
100
+ message: t('settings.password.changed'),
101
+ type: 'success'
102
+ });
103
+ handleCloseModal();
104
+ } catch (err) {
105
+ const status = err?.response?.status;
106
+ setError(serverReason(err) || (status === 400 || status === 401 || status === 403 ? t('settings.password.wrongCurrent') : t('settings.password.failed')));
107
+ setBusy(false);
108
+ }
109
+ }, [current, handleCloseModal, next, ready, showToast, t]);
110
+ const newError = tooShort ? t('settings.password.tooShort', {
111
+ min: MIN_PASSWORD_LENGTH
112
+ }) : sameAsCurrent ? t('settings.password.sameAsCurrent') : undefined;
113
+ return /*#__PURE__*/_jsxs(ModalContainerFullScreen, {
114
+ style: styles.screen,
115
+ children: [/*#__PURE__*/_jsx(ModalHeaderComponent, {
116
+ handleCloseModal: handleCloseModal,
117
+ headerTitle: t('settings.password.title'),
118
+ titleStyle: chatTextStyle(config?.typography?.profile?.screenTitle)
119
+ }), /*#__PURE__*/_jsx(KeyboardAvoidingView, {
120
+ behavior: Platform.OS === 'ios' ? 'padding' : undefined,
121
+ style: styles.fill,
122
+ children: /*#__PURE__*/_jsxs(ScrollView, {
123
+ style: styles.fill,
124
+ contentContainerStyle: styles.body,
125
+ keyboardShouldPersistTaps: "handled",
126
+ children: [/*#__PURE__*/_jsxs(View, {
127
+ style: styles.card,
128
+ testID: "settings-change-password",
129
+ children: [/*#__PURE__*/_jsx(Field, {
130
+ testID: "password-current",
131
+ label: t('settings.password.current'),
132
+ value: current,
133
+ onChangeText: setCurrent,
134
+ editable: !busy,
135
+ styles: styles,
136
+ theme: theme
137
+ }), /*#__PURE__*/_jsx(Field, {
138
+ testID: "password-new",
139
+ label: t('settings.password.new'),
140
+ value: next,
141
+ onChangeText: setNext,
142
+ error: newError,
143
+ editable: !busy,
144
+ newPassword: true,
145
+ styles: styles,
146
+ theme: theme
147
+ }), /*#__PURE__*/_jsx(Field, {
148
+ testID: "password-again",
149
+ label: t('settings.password.again'),
150
+ value: again,
151
+ onChangeText: setAgain,
152
+ error: mismatch ? t('settings.password.mismatch') : undefined,
153
+ editable: !busy,
154
+ newPassword: true,
155
+ onSubmitEditing: submit,
156
+ styles: styles,
157
+ theme: theme
158
+ }), /*#__PURE__*/_jsx(Text, {
159
+ style: styles.hint,
160
+ children: t('settings.password.hint')
161
+ })]
162
+ }), !!error && /*#__PURE__*/_jsx(Text, {
163
+ testID: "password-error",
164
+ style: styles.error,
165
+ children: error
166
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
167
+ testID: "password-submit",
168
+ accessibilityRole: "button",
169
+ accessibilityState: {
170
+ disabled: !ready
171
+ },
172
+ activeOpacity: 0.8,
173
+ disabled: !ready,
174
+ onPress: submit,
175
+ style: [styles.button, !ready ? styles.buttonDisabled : null],
176
+ children: busy ? /*#__PURE__*/_jsx(ActivityIndicator, {
177
+ color: theme.textOnPrimary
178
+ }) : /*#__PURE__*/_jsx(Text, {
179
+ style: [styles.buttonText, !ready ? styles.buttonTextDisabled : null],
180
+ children: t('settings.password.submit')
181
+ })
182
+ })]
183
+ })
184
+ })]
185
+ });
186
+ };
187
+ export default ChangePasswordModal;
188
+ const createStyles = theme => StyleSheet.create({
189
+ screen: {
190
+ backgroundColor: theme.listBackground
191
+ },
192
+ fill: {
193
+ flex: 1,
194
+ width: '100%'
195
+ },
196
+ body: {
197
+ padding: 12,
198
+ gap: 12,
199
+ paddingBottom: 32
200
+ },
201
+ // Same surface as the Settings cards this screen is reached from.
202
+ card: {
203
+ backgroundColor: theme.surface,
204
+ borderRadius: 20,
205
+ paddingHorizontal: 20,
206
+ paddingVertical: 22,
207
+ gap: 18,
208
+ shadowColor: theme.shadow,
209
+ shadowOffset: {
210
+ width: 0,
211
+ height: 4
212
+ },
213
+ shadowOpacity: 0.06,
214
+ shadowRadius: 12,
215
+ elevation: 3
216
+ },
217
+ field: {
218
+ gap: 8
219
+ },
220
+ fieldLabel: {
221
+ fontSize: 14,
222
+ fontWeight: '500',
223
+ color: theme.textSecondary
224
+ },
225
+ input: {
226
+ height: 48,
227
+ paddingHorizontal: 16,
228
+ borderRadius: 12,
229
+ borderWidth: 1,
230
+ borderColor: theme.border,
231
+ backgroundColor: theme.surfaceSecondary,
232
+ fontSize: 16,
233
+ color: theme.text
234
+ },
235
+ inputError: {
236
+ borderColor: theme.danger
237
+ },
238
+ fieldError: {
239
+ fontSize: 13,
240
+ lineHeight: 18,
241
+ color: theme.danger
242
+ },
243
+ hint: {
244
+ fontSize: 13,
245
+ lineHeight: 18,
246
+ color: theme.textSecondary
247
+ },
248
+ error: {
249
+ fontSize: 14,
250
+ lineHeight: 19,
251
+ paddingHorizontal: 8,
252
+ color: theme.danger
253
+ },
254
+ button: {
255
+ minHeight: 48,
256
+ borderRadius: 14,
257
+ alignItems: 'center',
258
+ justifyContent: 'center',
259
+ paddingHorizontal: 20,
260
+ backgroundColor: theme.primary
261
+ },
262
+ buttonDisabled: {
263
+ backgroundColor: theme.surfaceSecondary
264
+ },
265
+ buttonText: {
266
+ fontSize: 16,
267
+ fontWeight: '600',
268
+ color: theme.textOnPrimary
269
+ },
270
+ buttonTextDisabled: {
271
+ color: theme.textMuted
272
+ }
273
+ });
274
+ //# sourceMappingURL=ChangePasswordModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useCallback","useMemo","useState","ActivityIndicator","KeyboardAvoidingView","Platform","ScrollView","StyleSheet","Text","TextInput","TouchableOpacity","View","ModalHeaderComponent","ModalContainerFullScreen","useTheme","useT","useToast","useChatSettingState","changePassword","chatTextStyle","jsx","_jsx","jsxs","_jsxs","MIN_PASSWORD_LENGTH","serverReason","error","data","response","text","message","Array","isArray","errors","map","e","join","trim","Field","testID","label","value","onChangeText","editable","newPassword","onSubmitEditing","styles","theme","style","field","children","fieldLabel","input","inputError","placeholder","placeholderTextColor","textMuted","keyboardAppearance","dark","secureTextEntry","autoCapitalize","autoCorrect","textContentType","returnKeyType","blurOnSubmit","fieldError","ChangePasswordModal","handleCloseModal","t","showToast","config","createStyles","current","setCurrent","next","setNext","again","setAgain","busy","setBusy","setError","mismatch","length","tooShort","sameAsCurrent","ready","submit","id","Date","now","toString","title","type","err","status","newError","min","undefined","screen","headerTitle","titleStyle","typography","profile","screenTitle","behavior","OS","fill","contentContainerStyle","body","keyboardShouldPersistTaps","card","hint","accessibilityRole","accessibilityState","disabled","activeOpacity","onPress","button","buttonDisabled","color","textOnPrimary","buttonText","buttonTextDisabled","create","backgroundColor","listBackground","flex","width","padding","gap","paddingBottom","surface","borderRadius","paddingHorizontal","paddingVertical","shadowColor","shadow","shadowOffset","height","shadowOpacity","shadowRadius","elevation","fontSize","fontWeight","textSecondary","borderWidth","borderColor","border","surfaceSecondary","danger","lineHeight","minHeight","alignItems","justifyContent","primary"],"sourceRoot":"../../../../../../src","sources":["components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.tsx"],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,7 @@ import { InfoIcon } from '../../../../assets/icons';
9
9
  import { SharedSettingsCenterContainer, SharedSettingsColumnContainer, SharedSettingsInfoPanel, SharedSettingsInfoText, SharedSettingsLabelData, SharedSettingsSectionContainer, SharedSettingsStyledButton, SharedSettingsStyledLabel } from '../SharedStyledComponents';
10
10
  import { View } from 'react-native';
11
11
  import { useTheme } from '../../../../hooks/useTheme';
12
+ import { useT } from '../../../../i18n/useT';
12
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
14
  const InfoPanel = styled.View`
14
15
  background-color: "#F3F6FC";
@@ -24,6 +25,7 @@ const ManageDataModal = ({
24
25
  config
25
26
  } = useSelector(state => state.chatSettingStore);
26
27
  const theme = useTheme();
28
+ const t = useT();
27
29
  const handleDownloadClick = async () => {
28
30
  // const exportedData = await getExportMyData();
29
31
  // const binaryData = exportedData.data;
@@ -41,31 +43,31 @@ const ManageDataModal = ({
41
43
  return /*#__PURE__*/_jsxs(ModalContainerFullScreen, {
42
44
  children: [/*#__PURE__*/_jsx(ModalHeaderComponent, {
43
45
  handleCloseModal: handleCloseModal,
44
- headerTitle: 'Manage Data'
46
+ headerTitle: t('settings.manageData.title')
45
47
  }), /*#__PURE__*/_jsxs(SharedSettingsCenterContainer, {
46
48
  children: [/*#__PURE__*/_jsxs(SharedSettingsColumnContainer, {
47
49
  children: [/*#__PURE__*/_jsxs(SharedSettingsSectionContainer, {
48
50
  children: [/*#__PURE__*/_jsx(SharedSettingsStyledLabel, {
49
- children: "Download your data"
51
+ children: t('settings.manageData.downloadLabel')
50
52
  }), /*#__PURE__*/_jsx(LabelData, {
51
53
  style: {
52
54
  fontSize: 12,
53
55
  textAlign: 'left'
54
56
  },
55
- children: "You own your data. Tap the button below to download a copy of your data"
57
+ children: t('settings.manageData.downloadDescription')
56
58
  })]
57
59
  }), /*#__PURE__*/_jsx(SharedSettingsStyledButton, {
58
60
  borderColor: theme.primary,
59
61
  onPress: handleDownloadClick,
60
- text: "Download your data",
62
+ text: t('settings.manageData.downloadLabel'),
61
63
  color: theme.primary
62
64
  })]
63
65
  }), /*#__PURE__*/_jsxs(SharedSettingsColumnContainer, {
64
66
  children: [/*#__PURE__*/_jsxs(SharedSettingsSectionContainer, {
65
67
  children: [/*#__PURE__*/_jsx(SharedSettingsStyledLabel, {
66
- children: "Download your data"
68
+ children: t('settings.manageData.deleteLabel')
67
69
  }), /*#__PURE__*/_jsx(SharedSettingsLabelData, {
68
- children: "Use this only if you want to permanently delete your account & data from our system."
70
+ children: t('settings.manageData.deleteDescription')
69
71
  })]
70
72
  }), /*#__PURE__*/_jsxs(SharedSettingsInfoPanel, {
71
73
  bgColor: config?.colors?.secondary || theme.surfaceHighlight,
@@ -74,11 +76,11 @@ const ManageDataModal = ({
74
76
  color: theme.primary
75
77
  })
76
78
  }), /*#__PURE__*/_jsx(SharedSettingsInfoText, {
77
- children: "Due to the immutable nature of distributed ledger technology, network nodes operated by the community may still retain historical transactions generated by your account, however your personally identifiable information such as your name, e-mail, your key-value storage etc will be removed. Any of your digital assets will be lost."
79
+ children: t('settings.manageData.deleteDisclosure')
78
80
  })]
79
81
  }), /*#__PURE__*/_jsx(SharedSettingsStyledButton, {
80
82
  borderColor: theme.danger,
81
- text: "Delete My Account",
83
+ text: t('action.deleteMyAccount'),
82
84
  color: theme.danger
83
85
  })]
84
86
  })]
@@ -1 +1 @@
1
- {"version":3,"names":["React","LabelData","ModalContainerFullScreen","ModalHeaderComponent","useSelector","styled","InfoIcon","SharedSettingsCenterContainer","SharedSettingsColumnContainer","SharedSettingsInfoPanel","SharedSettingsInfoText","SharedSettingsLabelData","SharedSettingsSectionContainer","SharedSettingsStyledButton","SharedSettingsStyledLabel","View","useTheme","jsx","_jsx","jsxs","_jsxs","InfoPanel","ManageDataModal","handleCloseModal","config","state","chatSettingStore","theme","handleDownloadClick","children","headerTitle","style","fontSize","textAlign","borderColor","primary","onPress","text","color","bgColor","colors","secondary","surfaceHighlight","danger"],"sourceRoot":"../../../../../../src","sources":["components/Modals/SettingsModals/ManageDataModal/ManageDataModal.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","LabelData","ModalContainerFullScreen","ModalHeaderComponent","useSelector","styled","InfoIcon","SharedSettingsCenterContainer","SharedSettingsColumnContainer","SharedSettingsInfoPanel","SharedSettingsInfoText","SharedSettingsLabelData","SharedSettingsSectionContainer","SharedSettingsStyledButton","SharedSettingsStyledLabel","View","useTheme","useT","jsx","_jsx","jsxs","_jsxs","InfoPanel","ManageDataModal","handleCloseModal","config","state","chatSettingStore","theme","t","handleDownloadClick","children","headerTitle","style","fontSize","textAlign","borderColor","primary","onPress","text","color","bgColor","colors","secondary","surfaceHighlight","danger"],"sourceRoot":"../../../../../../src","sources":["components/Modals/SettingsModals/ManageDataModal/ManageDataModal.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,6 +11,7 @@ import { ModalContainerFullScreen } from '../../styledModalComponents';
11
11
  import { SharedSettingsCenterContainer, SharedSettingsColumnContainer, SharedSettingsLabelData, SharedSettingsStyledLabel } from '../SharedStyledComponents';
12
12
  import { RadioInput } from './RadioInput';
13
13
  import { useTheme } from '../../../../hooks/useTheme';
14
+ import { useT } from '../../../../i18n/useT';
14
15
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
16
  const VisibilityModal = ({
16
17
  handleCloseModal
@@ -20,6 +21,7 @@ const VisibilityModal = ({
20
21
  user
21
22
  } = useSelector(state => state.chatSettingStore);
22
23
  const theme = useTheme();
24
+ const t = useT();
23
25
  const doUpdateUser = user => dispatch(setUser(user));
24
26
  const [isProfileOpen, setIsProfileOpen] = useState(user?.isProfileOpen);
25
27
  const [isAssetsOpen, setIsAssetsOpen] = useState(user?.isAssetsOpen);
@@ -58,16 +60,16 @@ const VisibilityModal = ({
58
60
  return /*#__PURE__*/_jsxs(ModalContainerFullScreen, {
59
61
  children: [/*#__PURE__*/_jsx(ModalHeaderComponent, {
60
62
  handleCloseModal: handleCloseModal,
61
- headerTitle: 'Visibility'
63
+ headerTitle: t('settings.visibility.title')
62
64
  }), /*#__PURE__*/_jsxs(SharedSettingsCenterContainer, {
63
65
  children: [/*#__PURE__*/_jsxs(SharedSettingsColumnContainer, {
64
66
  children: [/*#__PURE__*/_jsx(SharedSettingsStyledLabel, {
65
- children: "Profile Visiblility"
67
+ children: t('settings.visibility.profileLabel')
66
68
  }), /*#__PURE__*/_jsxs(RadioGroup, {
67
69
  children: [/*#__PURE__*/_jsx(RadioLabel, {
68
70
  children: /*#__PURE__*/_jsx(RadioInput, {
69
71
  option: {
70
- label: 'Open (default)',
72
+ label: t('settings.visibility.open'),
71
73
  value: isProfileOpen
72
74
  },
73
75
  radioColor: theme.primary,
@@ -75,11 +77,11 @@ const VisibilityModal = ({
75
77
  onChange: () => setIsProfileOpen(true)
76
78
  })
77
79
  }), /*#__PURE__*/_jsx(SharedSettingsLabelData, {
78
- children: "Your profile can be viewed by anyone who follows your profile link or QR code."
80
+ children: t('settings.visibility.openDescription')
79
81
  }), /*#__PURE__*/_jsx(RadioLabel, {
80
82
  children: /*#__PURE__*/_jsx(RadioInput, {
81
83
  option: {
82
- label: 'Restricted',
84
+ label: t('settings.visibility.restricted'),
83
85
  value: isProfileOpen
84
86
  },
85
87
  radioColor: theme.primary,
@@ -87,17 +89,17 @@ const VisibilityModal = ({
87
89
  onChange: () => setIsProfileOpen(false)
88
90
  })
89
91
  }), /*#__PURE__*/_jsx(SharedSettingsLabelData, {
90
- children: "Only users with your permission or temporary secure link can see your profile."
92
+ children: t('settings.visibility.restrictedDescription')
91
93
  })]
92
94
  })]
93
95
  }), /*#__PURE__*/_jsxs(SharedSettingsColumnContainer, {
94
96
  children: [/*#__PURE__*/_jsx(SharedSettingsStyledLabel, {
95
- children: "Documents Visibility"
97
+ children: t('settings.visibility.documentsLabel')
96
98
  }), /*#__PURE__*/_jsxs(RadioGroup, {
97
99
  children: [/*#__PURE__*/_jsx(RadioLabel, {
98
100
  children: /*#__PURE__*/_jsx(RadioInput, {
99
101
  option: {
100
- label: 'Full (default)',
102
+ label: t('settings.visibility.full'),
101
103
  value: isAssetsOpen
102
104
  },
103
105
  radioColor: theme.primary,
@@ -105,11 +107,11 @@ const VisibilityModal = ({
105
107
  onChange: () => setIsAssetsOpen(true)
106
108
  })
107
109
  }), /*#__PURE__*/_jsx(SharedSettingsLabelData, {
108
- children: "Show all Documents to those who can see your profile."
110
+ children: t('settings.visibility.fullDescription')
109
111
  }), /*#__PURE__*/_jsx(RadioLabel, {
110
112
  children: /*#__PURE__*/_jsx(RadioInput, {
111
113
  option: {
112
- label: 'InViewidual',
114
+ label: t('settings.visibility.individual'),
113
115
  value: isAssetsOpen
114
116
  },
115
117
  radioColor: theme.primary,
@@ -117,7 +119,7 @@ const VisibilityModal = ({
117
119
  onChange: () => setIsAssetsOpen(false)
118
120
  })
119
121
  }), /*#__PURE__*/_jsx(SharedSettingsLabelData, {
120
- children: "You need to share each document inViewidually before others can see them."
122
+ children: t('settings.visibility.individualDescription')
121
123
  })]
122
124
  })]
123
125
  })]
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useState","RadioGroup","RadioLabel","ModalHeaderComponent","useDispatch","useSelector","setUser","Notification","updateMe","ModalContainerFullScreen","SharedSettingsCenterContainer","SharedSettingsColumnContainer","SharedSettingsLabelData","SharedSettingsStyledLabel","RadioInput","useTheme","jsx","_jsx","jsxs","_jsxs","VisibilityModal","handleCloseModal","dispatch","user","state","chatSettingStore","theme","doUpdateUser","isProfileOpen","setIsProfileOpen","isAssetsOpen","setIsAssetsOpen","notification","setNotification","showNotification","message","type","setTimeout","then","data","catch","children","headerTitle","option","label","value","radioColor","primary","checked","onChange"],"sourceRoot":"../../../../../../src","sources":["components/Modals/SettingsModals/Visibility/VisibilityModal.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useState","RadioGroup","RadioLabel","ModalHeaderComponent","useDispatch","useSelector","setUser","Notification","updateMe","ModalContainerFullScreen","SharedSettingsCenterContainer","SharedSettingsColumnContainer","SharedSettingsLabelData","SharedSettingsStyledLabel","RadioInput","useTheme","useT","jsx","_jsx","jsxs","_jsxs","VisibilityModal","handleCloseModal","dispatch","user","state","chatSettingStore","theme","t","doUpdateUser","isProfileOpen","setIsProfileOpen","isAssetsOpen","setIsAssetsOpen","notification","setNotification","showNotification","message","type","setTimeout","then","data","catch","children","headerTitle","option","label","value","radioColor","primary","checked","onChange"],"sourceRoot":"../../../../../../src","sources":["components/Modals/SettingsModals/Visibility/VisibilityModal.tsx"],"mappings":"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","ignoreList":[]}
@@ -19,13 +19,14 @@ import { chatTextStyle } from '../../../helpers/typography';
19
19
  import { getElementFont } from '../../../helpers/getElementFont';
20
20
  import { LANGUAGE_OPTIONS } from '../../../helpers/constants/LANGUAGE_OPTIONS';
21
21
  import { MODAL_TYPES } from '../../../helpers/constants/MODAL_TYPES';
22
- import { setActiveFile, setActiveModal, setLangSource } from '../../../roomStore/chatSettingsSlice';
22
+ import { setActiveFile, setActiveModal } from '../../../roomStore/chatSettingsSlice';
23
23
  import { addRoomViaApi, setCurrentRoom } from '../../../roomStore/roomsSlice';
24
24
  import { runLogoutFlow } from '../../Menu/HeaderRoomListMenu';
25
25
  import { useLogout } from '../../../hooks/useLogout';
26
26
  import { ownAppId, postPrivateRoom } from '../../../networking/api-requests/rooms.api';
27
27
  import EncryptionCard from '../../MainComponents/EncryptionCard';
28
28
  import { accountNameOf } from '../../../helpers/accountName';
29
+ import { setChatLanguage } from '../../../services/languageSettings';
29
30
  import { composeName } from '../../../helpers/displayName';
30
31
  import { isUnresolvedSenderId } from '../../../helpers/isUnresolvedSenderId';
31
32
 
@@ -37,6 +38,7 @@ const nameOrNothing = name => {
37
38
  import { getUserFiles, isMediaFile } from '../../../networking/api-requests/user.api';
38
39
  import { createRoomFromApi } from '../../../helpers/createRoomFromApi';
39
40
  import { walletToUsername } from '../../../helpers/walletUsername';
41
+ import '../../../types/types';
40
42
  import { ProfileHero, ProfileTopBar, useHeaderMetrics } from '../ProfileHeader/ProfileHeader';
41
43
  import ProfileMenu from '../ProfileHeader/ProfileMenu';
42
44
  import EditUserModal from './EditUserModal';
@@ -165,8 +167,12 @@ const UserProfileModal = ({
165
167
  const handleLogout = useCallback(() => {
166
168
  runLogoutFlow(config?.logout ?? {
167
169
  enabled: true
168
- }, performLogout).catch(() => {});
169
- }, [config?.logout, performLogout]);
170
+ }, performLogout, {
171
+ label: t('menu.logout'),
172
+ message: t('menu.logoutConfirm'),
173
+ cancel: t('action.cancel')
174
+ }).catch(() => {});
175
+ }, [config?.logout, performLogout, t]);
170
176
  const handleShare = useCallback(async () => {
171
177
  const name = nameOrNothing(profileUser?.name) || composeName(profileUser?.firstName, profileUser?.lastName);
172
178
  const id = profileUser?.userJID || profileUser?.defaultWallet?.walletAddress || profileUser?.id || '';
@@ -193,8 +199,8 @@ const UserProfileModal = ({
193
199
  }));
194
200
  showToast({
195
201
  id: Date.now().toString(),
196
- title: 'Success!',
197
- message: 'Room created succusfully!',
202
+ title: t('toast.success'),
203
+ message: t('toast.roomCreatedSuccess'),
198
204
  type: 'success',
199
205
  duration: 3000
200
206
  });
@@ -205,8 +211,8 @@ const UserProfileModal = ({
205
211
  const openPrivateRoom = useCallback(async e2ee => {
206
212
  showToast({
207
213
  id: Date.now().toString(),
208
- title: 'Room creation',
209
- message: 'Room is being created...',
214
+ title: t('toast.roomCreationTitle'),
215
+ message: t('toast.roomCreating'),
210
216
  type: 'info',
211
217
  duration: 3000
212
218
  });
@@ -225,7 +231,7 @@ const UserProfileModal = ({
225
231
  }
226
232
  }
227
233
  dispatch(setActiveModal(undefined));
228
- }, [selectedUser]); // eslint-disable-line react-hooks/exhaustive-deps
234
+ }, [selectedUser, t]); // eslint-disable-line react-hooks/exhaustive-deps
229
235
 
230
236
  const handlePrivateMessage = useCallback(() => openPrivateRoom(false), [openPrivateRoom]);
231
237
  const handleEncryptedPrivateMessage = useCallback(() => openPrivateRoom(true), [openPrivateRoom]);
@@ -320,8 +326,14 @@ const UserProfileModal = ({
320
326
  return /*#__PURE__*/_jsxs(TouchableOpacity, {
321
327
  testID: `${PREFIX}-language-${option.id}`,
322
328
  activeOpacity: 0.7,
323
- style: styles.languageRow,
324
- onPress: () => dispatch(setLangSource(option.id)),
329
+ style: styles.languageRow
330
+ // The same choice Settings offers as "chat language": kept
331
+ // on the device, and written to the profile when the host
332
+ // turned that on.
333
+ ,
334
+ onPress: () => {
335
+ setChatLanguage(option.id).catch(() => {});
336
+ },
325
337
  children: [/*#__PURE__*/_jsx(Text, {
326
338
  style: styles.languageLabel,
327
339
  children: option.name