@tap-payments/auth-jsconnect 2.10.7-beta → 2.10.7-development

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 (186) hide show
  1. package/build/@types/app.d.ts +9 -2
  2. package/build/@types/app.js +8 -0
  3. package/build/@types/form.d.ts +3 -0
  4. package/build/@types/index.d.ts +1 -0
  5. package/build/@types/index.js +1 -0
  6. package/build/@types/terminal.d.ts +116 -0
  7. package/build/@types/terminal.js +1 -0
  8. package/build/api/auth.d.ts +10 -1
  9. package/build/api/index.d.ts +7 -1
  10. package/build/api/index.js +3 -1
  11. package/build/api/terminal.d.ts +28 -0
  12. package/build/api/terminal.js +45 -0
  13. package/build/app/rootReducer.d.ts +1 -0
  14. package/build/app/rootReducer.js +3 -1
  15. package/build/app/settings.d.ts +1 -0
  16. package/build/app/settings.js +7 -3
  17. package/build/app/store.d.ts +2 -0
  18. package/build/assets/currencies/SARSymbol.d.ts +7 -0
  19. package/build/assets/currencies/SARSymbol.js +28 -0
  20. package/build/assets/currencies/index.d.ts +2 -0
  21. package/build/assets/currencies/index.js +2 -0
  22. package/build/assets/currencies/utils.d.ts +4 -0
  23. package/build/assets/currencies/utils.js +4 -0
  24. package/build/assets/locales/ar.json +43 -6
  25. package/build/assets/locales/en.json +46 -9
  26. package/build/components/DeviceCard/DeviceCard.d.ts +18 -0
  27. package/build/components/DeviceCard/DeviceCard.js +103 -0
  28. package/build/components/DeviceCard/index.d.ts +3 -0
  29. package/build/components/DeviceCard/index.js +2 -0
  30. package/build/components/OTPTimer/OTPTimer.d.ts +2 -1
  31. package/build/components/OTPTimer/OTPTimer.js +4 -4
  32. package/build/components/TextWithCurrency/TextWithCurrency.d.ts +7 -0
  33. package/build/components/TextWithCurrency/TextWithCurrency.js +14 -0
  34. package/build/components/TextWithCurrency/index.d.ts +2 -0
  35. package/build/components/TextWithCurrency/index.js +2 -0
  36. package/build/components/Tooltip/Tooltip.js +1 -1
  37. package/build/constants/api.d.ts +0 -1
  38. package/build/constants/api.js +0 -2
  39. package/build/constants/app.d.ts +15 -3
  40. package/build/constants/app.js +158 -14
  41. package/build/constants/assets.d.ts +11 -0
  42. package/build/constants/assets.js +17 -3
  43. package/build/constants/flows.d.ts +15 -0
  44. package/build/constants/flows.js +15 -0
  45. package/build/constants/validation.d.ts +1 -0
  46. package/build/constants/validation.js +1 -0
  47. package/build/features/app/auth/authStore.d.ts +24 -5
  48. package/build/features/app/auth/authStore.js +136 -71
  49. package/build/features/app/connectExpress/connectExpressStore.d.ts +14 -3
  50. package/build/features/app/connectExpress/connectExpressStore.js +193 -49
  51. package/build/features/app/individual/individualStore.js +0 -1
  52. package/build/features/app/tax/taxStore.js +1 -1
  53. package/build/features/app/terminal/terminalStore.d.ts +109 -0
  54. package/build/features/app/terminal/terminalStore.js +676 -0
  55. package/build/features/auth/screens/OTP/OTP.d.ts +13 -2
  56. package/build/features/auth/screens/OTP/OTP.js +15 -3
  57. package/build/features/auth/screens/OTP/index.d.ts +1 -2
  58. package/build/features/auth/screens/Passcode/Passcode.d.ts +16 -0
  59. package/build/features/auth/screens/Passcode/Passcode.js +82 -0
  60. package/build/features/auth/screens/Passcode/PasscodeInput.d.ts +6 -0
  61. package/build/features/auth/screens/Passcode/PasscodeInput.js +42 -0
  62. package/build/features/auth/screens/Passcode/index.d.ts +2 -0
  63. package/build/features/auth/screens/Passcode/index.js +2 -0
  64. package/build/features/auth/screens/Passcode/validation.d.ts +8 -0
  65. package/build/features/auth/screens/Passcode/validation.js +4 -0
  66. package/build/features/brand/screens/BrandActivities/ExpectedSalesRange.js +3 -8
  67. package/build/features/business/screens/Customers/ExpectedSalesRange.js +3 -8
  68. package/build/features/connectExpress/screens/GenericPrepareDataLoading/GenericPrepareDataLoading.d.ts +3 -0
  69. package/build/features/connectExpress/screens/GenericPrepareDataLoading/GenericPrepareDataLoading.js +9 -0
  70. package/build/features/connectExpress/screens/GenericPrepareDataLoading/index.d.ts +2 -0
  71. package/build/features/connectExpress/screens/GenericPrepareDataLoading/index.js +2 -0
  72. package/build/features/connectExpress/screens/VerifyMobileAuthOTP/OTPInput.d.ts +5 -0
  73. package/build/features/connectExpress/screens/VerifyMobileAuthOTP/OTPInput.js +49 -0
  74. package/build/features/connectExpress/screens/VerifyMobileAuthOTP/VerifyMobileAuthOTP.d.ts +5 -0
  75. package/build/features/connectExpress/screens/VerifyMobileAuthOTP/VerifyMobileAuthOTP.js +88 -0
  76. package/build/features/connectExpress/screens/VerifyMobileAuthOTP/index.d.ts +3 -0
  77. package/build/features/connectExpress/screens/VerifyMobileAuthOTP/index.js +2 -0
  78. package/build/features/connectExpress/screens/VerifyMobileAuthOTP/validation.d.ts +8 -0
  79. package/build/features/connectExpress/screens/VerifyMobileAuthOTP/validation.js +4 -0
  80. package/build/features/connectExpress/screens/VerifyNafath/VerifyNafath.js +9 -3
  81. package/build/features/entity/screens/EntityCapital/CapitalPaid.js +3 -7
  82. package/build/features/entity/screens/EntityCapital/CapitalShareValue.js +3 -7
  83. package/build/features/featuresScreens.d.ts +1 -0
  84. package/build/features/featuresScreens.js +77 -0
  85. package/build/features/individual/screens/AdditionalIndividualInfo/MonthlyIncome.js +3 -8
  86. package/build/features/individual/screens/AdditionalIndividualInfo/ShareValue.js +3 -8
  87. package/build/features/shared/Background/LogoBackground.js +5 -17
  88. package/build/features/shared/Button/Button.js +2 -3
  89. package/build/features/shared/Button/FlowsButtons.js +3 -2
  90. package/build/features/shared/Input/Input.d.ts +1 -1
  91. package/build/features/shared/PushNotification/PushNotification.d.ts +11 -0
  92. package/build/features/shared/PushNotification/PushNotification.js +34 -0
  93. package/build/features/shared/PushNotification/index.d.ts +2 -0
  94. package/build/features/shared/PushNotification/index.js +2 -0
  95. package/build/features/shared/SuccessFlowButtons/SuccessFlowButtons.js +2 -2
  96. package/build/features/shared/SuccessScreen/SuccessScreen.d.ts +3 -1
  97. package/build/features/shared/SuccessScreen/SuccessScreen.js +2 -2
  98. package/build/features/terminal/Terminal.d.ts +14 -0
  99. package/build/features/terminal/Terminal.js +95 -0
  100. package/build/features/terminal/index.d.ts +1 -0
  101. package/build/features/terminal/index.js +1 -0
  102. package/build/features/terminal/screens/LinkNewTerminal/LinkNewTerminal.d.ts +3 -0
  103. package/build/features/terminal/screens/LinkNewTerminal/LinkNewTerminal.js +68 -0
  104. package/build/features/terminal/screens/LinkNewTerminal/index.d.ts +2 -0
  105. package/build/features/terminal/screens/LinkNewTerminal/index.js +2 -0
  106. package/build/features/terminal/screens/LinkNewTerminal/styles.d.ts +10 -0
  107. package/build/features/terminal/screens/LinkNewTerminal/styles.js +28 -0
  108. package/build/features/terminal/screens/LinkedSuccess/LinkedSuccess.d.ts +3 -0
  109. package/build/features/terminal/screens/LinkedSuccess/LinkedSuccess.js +51 -0
  110. package/build/features/terminal/screens/LinkedSuccess/index.d.ts +2 -0
  111. package/build/features/terminal/screens/LinkedSuccess/index.js +2 -0
  112. package/build/features/terminal/screens/LinkedTerminalInfo/LinkedTerminalInfo.d.ts +3 -0
  113. package/build/features/terminal/screens/LinkedTerminalInfo/LinkedTerminalInfo.js +50 -0
  114. package/build/features/terminal/screens/LinkedTerminalInfo/index.d.ts +2 -0
  115. package/build/features/terminal/screens/LinkedTerminalInfo/index.js +2 -0
  116. package/build/features/terminal/screens/Loading/Loading.d.ts +4 -0
  117. package/build/features/terminal/screens/Loading/Loading.js +10 -0
  118. package/build/features/terminal/screens/Loading/index.d.ts +2 -0
  119. package/build/features/terminal/screens/Loading/index.js +2 -0
  120. package/build/features/terminal/screens/NoTerminalDeviceLinked/NoTerminalDeviceLinked.d.ts +3 -0
  121. package/build/features/terminal/screens/NoTerminalDeviceLinked/NoTerminalDeviceLinked.js +56 -0
  122. package/build/features/terminal/screens/NoTerminalDeviceLinked/index.d.ts +2 -0
  123. package/build/features/terminal/screens/NoTerminalDeviceLinked/index.js +2 -0
  124. package/build/features/terminal/screens/NoTerminalDeviceLinked/styles.d.ts +36 -0
  125. package/build/features/terminal/screens/NoTerminalDeviceLinked/styles.js +34 -0
  126. package/build/features/terminal/screens/OperatorError/OperatorError.d.ts +5 -0
  127. package/build/features/terminal/screens/OperatorError/OperatorError.js +9 -0
  128. package/build/features/terminal/screens/OperatorError/index.d.ts +2 -0
  129. package/build/features/terminal/screens/OperatorError/index.js +2 -0
  130. package/build/features/terminal/screens/ResetPasswordSuccess/ResetPasswordSuccess.d.ts +3 -0
  131. package/build/features/terminal/screens/ResetPasswordSuccess/ResetPasswordSuccess.js +21 -0
  132. package/build/features/terminal/screens/ResetPasswordSuccess/index.d.ts +2 -0
  133. package/build/features/terminal/screens/ResetPasswordSuccess/index.js +2 -0
  134. package/build/features/terminal/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.d.ts +3 -0
  135. package/build/features/terminal/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +31 -0
  136. package/build/features/terminal/screens/SuccessWithFlowButtons/index.d.ts +2 -0
  137. package/build/features/terminal/screens/SuccessWithFlowButtons/index.js +2 -0
  138. package/build/features/terminal/screens/TerminalDeviceList/DeviceList.d.ts +9 -0
  139. package/build/features/terminal/screens/TerminalDeviceList/DeviceList.js +20 -0
  140. package/build/features/terminal/screens/TerminalDeviceList/TerminalDeviceList.d.ts +3 -0
  141. package/build/features/terminal/screens/TerminalDeviceList/TerminalDeviceList.js +144 -0
  142. package/build/features/terminal/screens/TerminalDeviceList/index.d.ts +2 -0
  143. package/build/features/terminal/screens/TerminalDeviceList/index.js +2 -0
  144. package/build/features/terminal/screens/TerminalDeviceList/styles.d.ts +9 -0
  145. package/build/features/terminal/screens/TerminalDeviceList/styles.js +13 -0
  146. package/build/features/terminal/screens/TerminalListPage/TerminalListPage.d.ts +3 -0
  147. package/build/features/terminal/screens/TerminalListPage/TerminalListPage.js +42 -0
  148. package/build/features/terminal/screens/TerminalListPage/index.d.ts +2 -0
  149. package/build/features/terminal/screens/TerminalListPage/index.js +2 -0
  150. package/build/features/terminal/screens/UnlinkedSuccess/UnlinkedSuccess.d.ts +3 -0
  151. package/build/features/terminal/screens/UnlinkedSuccess/UnlinkedSuccess.js +53 -0
  152. package/build/features/terminal/screens/UnlinkedSuccess/index.d.ts +2 -0
  153. package/build/features/terminal/screens/UnlinkedSuccess/index.js +2 -0
  154. package/build/features/terminal/screens/UnlinkedTerminalInfo/UnlinkedTerminalInfo.d.ts +3 -0
  155. package/build/features/terminal/screens/UnlinkedTerminalInfo/UnlinkedTerminalInfo.js +98 -0
  156. package/build/features/terminal/screens/UnlinkedTerminalInfo/index.d.ts +2 -0
  157. package/build/features/terminal/screens/UnlinkedTerminalInfo/index.js +2 -0
  158. package/build/features/terminal/screens/UnlinkedTerminalInfo/styles.d.ts +26 -0
  159. package/build/features/terminal/screens/UnlinkedTerminalInfo/styles.js +30 -0
  160. package/build/features/terminal/screens/Verify/OTPInput.d.ts +7 -0
  161. package/build/features/terminal/screens/Verify/OTPInput.js +51 -0
  162. package/build/features/terminal/screens/Verify/Verify.d.ts +5 -0
  163. package/build/features/terminal/screens/Verify/Verify.js +85 -0
  164. package/build/features/terminal/screens/Verify/index.d.ts +2 -0
  165. package/build/features/terminal/screens/Verify/index.js +2 -0
  166. package/build/features/terminal/screens/Verify/validation.d.ts +8 -0
  167. package/build/features/terminal/screens/Verify/validation.js +4 -0
  168. package/build/features/terminal/screens/shared/Header.d.ts +10 -0
  169. package/build/features/terminal/screens/shared/Header.js +30 -0
  170. package/build/features/terminal/screens/shared/TerminalList.d.ts +11 -0
  171. package/build/features/terminal/screens/shared/TerminalList.js +25 -0
  172. package/build/features/terminal/screens/shared/index.d.ts +5 -0
  173. package/build/features/terminal/screens/shared/index.js +5 -0
  174. package/build/features/terminal/screens/shared/styles.d.ts +196 -0
  175. package/build/features/terminal/screens/shared/styles.js +155 -0
  176. package/build/features/terminal/screens/shared/utils.d.ts +7 -0
  177. package/build/features/terminal/screens/shared/utils.js +24 -0
  178. package/build/hooks/useAppDispatch.d.ts +1 -0
  179. package/build/index.d.ts +3 -2
  180. package/build/index.js +4 -2
  181. package/build/theme/palette.js +12 -0
  182. package/build/theme/typography.js +4 -0
  183. package/build/utils/common.js +4 -4
  184. package/build/utils/string.d.ts +2 -2
  185. package/build/utils/string.js +4 -1
  186. package/package.json +3 -4
@@ -338,7 +338,8 @@ export declare enum FlowsTypes {
338
338
  OTP = "otp",
339
339
  BRAND = "brand",
340
340
  BOARD = "board",
341
- kyc = "kyc"
341
+ kyc = "kyc",
342
+ TERMINAL = "terminal"
342
343
  }
343
344
  export declare type FlowInfo = {
344
345
  name: string;
@@ -351,12 +352,18 @@ export declare enum AuthForType {
351
352
  NATIONAL_ID = "national_id",
352
353
  NATIONAL_ID_MISSED = "national_id_missed"
353
354
  }
355
+ export declare enum AuthForScreen {
356
+ INDIVIDUAL = "individual",
357
+ DOB = "dob",
358
+ MOBILE_OWNERSHIP = "mobile_ownership"
359
+ }
354
360
  export declare enum AuthTypeNumber {
355
361
  EMAIL_OTP = 5,
356
362
  MOBILE_OTP = 2,
357
363
  PASSWORD = 1,
358
364
  MIGRATION = 10,
359
- RESET_PASSWORD = 7
365
+ RESET_PASSWORD = 7,
366
+ PASSCODE = 11
360
367
  }
361
368
  export declare enum MigrationStatus {
362
369
  IN_PROGRESS = "IN_PROGRESS",
@@ -35,6 +35,7 @@ export var FlowsTypes;
35
35
  FlowsTypes["BRAND"] = "brand";
36
36
  FlowsTypes["BOARD"] = "board";
37
37
  FlowsTypes["kyc"] = "kyc";
38
+ FlowsTypes["TERMINAL"] = "terminal";
38
39
  })(FlowsTypes || (FlowsTypes = {}));
39
40
  export var AuthForType;
40
41
  (function (AuthForType) {
@@ -43,6 +44,12 @@ export var AuthForType;
43
44
  AuthForType["NATIONAL_ID"] = "national_id";
44
45
  AuthForType["NATIONAL_ID_MISSED"] = "national_id_missed";
45
46
  })(AuthForType || (AuthForType = {}));
47
+ export var AuthForScreen;
48
+ (function (AuthForScreen) {
49
+ AuthForScreen["INDIVIDUAL"] = "individual";
50
+ AuthForScreen["DOB"] = "dob";
51
+ AuthForScreen["MOBILE_OWNERSHIP"] = "mobile_ownership";
52
+ })(AuthForScreen || (AuthForScreen = {}));
46
53
  export var AuthTypeNumber;
47
54
  (function (AuthTypeNumber) {
48
55
  AuthTypeNumber[AuthTypeNumber["EMAIL_OTP"] = 5] = "EMAIL_OTP";
@@ -50,6 +57,7 @@ export var AuthTypeNumber;
50
57
  AuthTypeNumber[AuthTypeNumber["PASSWORD"] = 1] = "PASSWORD";
51
58
  AuthTypeNumber[AuthTypeNumber["MIGRATION"] = 10] = "MIGRATION";
52
59
  AuthTypeNumber[AuthTypeNumber["RESET_PASSWORD"] = 7] = "RESET_PASSWORD";
60
+ AuthTypeNumber[AuthTypeNumber["PASSCODE"] = 11] = "PASSCODE";
53
61
  })(AuthTypeNumber || (AuthTypeNumber = {}));
54
62
  export var MigrationStatus;
55
63
  (function (MigrationStatus) {
@@ -10,6 +10,9 @@ export declare type EmailFormValues = {
10
10
  export declare type OTPFormValues = {
11
11
  otp: string;
12
12
  };
13
+ export declare type PasscodeFormValues = {
14
+ passcode: string;
15
+ };
13
16
  export declare type PasswordFormValues = {
14
17
  password: string;
15
18
  };
@@ -4,3 +4,4 @@ export * from './app';
4
4
  export * from './form';
5
5
  export * from './user';
6
6
  export * from './config';
7
+ export * from './terminal';
@@ -4,3 +4,4 @@ export * from './app';
4
4
  export * from './form';
5
5
  export * from './user';
6
6
  export * from './config';
7
+ export * from './terminal';
@@ -0,0 +1,116 @@
1
+ declare type Name = {
2
+ en: string;
3
+ };
4
+ export interface TerminalDeviceInfo {
5
+ id: string;
6
+ status: string;
7
+ object?: string;
8
+ live_mode: boolean;
9
+ api_version?: string;
10
+ feature_version?: string;
11
+ serial_number: string;
12
+ linked: boolean;
13
+ display_name: string;
14
+ model: {
15
+ id: string;
16
+ status: string;
17
+ object?: string;
18
+ live_mode: boolean;
19
+ api_version?: string;
20
+ feature_version?: string;
21
+ model: string;
22
+ type: string;
23
+ name: {
24
+ text: string;
25
+ lang: string;
26
+ }[];
27
+ image: string;
28
+ image_url: string;
29
+ };
30
+ merchant?: {
31
+ id: string;
32
+ brand: {
33
+ id: string;
34
+ name: {
35
+ text: string;
36
+ lang: string;
37
+ }[];
38
+ logo: string;
39
+ };
40
+ };
41
+ terminal?: {
42
+ id: string;
43
+ legacy_id: string;
44
+ name: Name;
45
+ device: {
46
+ id: string;
47
+ created: string;
48
+ display_name: string;
49
+ };
50
+ };
51
+ platform?: {
52
+ id: string;
53
+ segment: string;
54
+ brand?: {
55
+ id: string;
56
+ name: {
57
+ text: string;
58
+ lang: string;
59
+ }[];
60
+ logo: string;
61
+ };
62
+ };
63
+ }
64
+ export interface TerminalInfo {
65
+ acceptance_status?: string;
66
+ acceptance_status_control?: string;
67
+ api_version?: string;
68
+ authorizes?: {
69
+ status: string;
70
+ status_message: string;
71
+ };
72
+ brand?: {
73
+ id: string;
74
+ };
75
+ charges?: {
76
+ status: string;
77
+ status_message: string;
78
+ };
79
+ feature_version?: string;
80
+ id: string;
81
+ legacy_id: string;
82
+ live_mode?: boolean;
83
+ merchant: {
84
+ base_currency?: string;
85
+ country?: string;
86
+ id: string;
87
+ };
88
+ name: Name;
89
+ platform?: {
90
+ brand: {
91
+ id: string;
92
+ logo: string;
93
+ name: {
94
+ text: string;
95
+ lang: string;
96
+ }[];
97
+ };
98
+ id: string;
99
+ segment: string;
100
+ };
101
+ object?: string;
102
+ refunds?: {
103
+ status: string;
104
+ status_message: string;
105
+ };
106
+ virtual?: boolean;
107
+ wallet?: {
108
+ id: string;
109
+ };
110
+ device?: {
111
+ id: string;
112
+ created: string;
113
+ display_name: string;
114
+ };
115
+ }
116
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -17,10 +17,18 @@ export declare type CivilID = {
17
17
  identification_id: string;
18
18
  country_code: string;
19
19
  };
20
+ export declare type TerminalCredential = {
21
+ terminal: {
22
+ id: string;
23
+ terminal_device?: {
24
+ id: string;
25
+ };
26
+ };
27
+ };
20
28
  export declare type CreateAuthBody = {
21
29
  country: string;
22
30
  scope: string;
23
- user_credentail: MobileCredential | EmailCredential | IDCredential | CivilID;
31
+ user_credentail: MobileCredential | EmailCredential | IDCredential | CivilID | TerminalCredential;
24
32
  auth_type?: number;
25
33
  email_url?: string;
26
34
  sign_in?: boolean;
@@ -31,6 +39,7 @@ export declare type CreateAuthBody = {
31
39
  lead_id?: string;
32
40
  board_id?: string;
33
41
  user_id?: string;
42
+ login?: boolean;
34
43
  };
35
44
  export declare type CreateNafathAuthBody = {
36
45
  country: string;
@@ -13,6 +13,7 @@ import { RemoveBrandActivity } from './brand';
13
13
  import { UploadFileBody } from './file';
14
14
  import { DocumentUpdateBody, DocumentInfo, DocumentBody } from './document';
15
15
  import { InitBody } from './init';
16
+ import { GenerateAuthLinkNewTerminalProps, UnlinkTerminalDeviceProps, LinkTerminalDeviceProps } from './terminal';
16
17
  declare const API: {
17
18
  locationService: {
18
19
  getIP: () => Promise<any>;
@@ -164,7 +165,12 @@ declare const API: {
164
165
  initService: {
165
166
  getInitialData: (body: InitBody) => Promise<any>;
166
167
  };
168
+ terminalService: {
169
+ retrieveTerminalDeviceList: (merchants: string[]) => Promise<any>;
170
+ unlinkTerminalDevice: ({ deviceId, ...payload }: UnlinkTerminalDeviceProps) => Promise<any>;
171
+ retrieveTerminalList: (merchantIds: string[]) => Promise<any>;
172
+ };
167
173
  };
168
- export type { ValidateOperatorBody, CreateAuthBody, ExpressCreateAccountBody, VerifyAuthBody, CreateLeadBody, UpdateLeadBody, LeadVerifyBody, LeadOTPVerifyBody, CheckEmailBody, CheckBrandBody, LeadIdentityUpdateBody, EntityInfoBody, CreateAccountBody, EntityBankUpdateBody, CreatePasswordBody, BrandListBody, VerifyOperationAuthBody, ResetPasswordVerifyAuthBody, UpdateBoardBody, UpdateBrandBody, DataElementBody, UploadFileBody, UpdateEntityBody, DocumentUpdateBody, DocumentInfo, VerifyAuthExpressOTPBody, UpdateIndividualBody, UpdateEntityActivityBody, UpdateEntityCapitalBody, BankDocumentInfo, GetUserListBody, GetIndividualListBody, RequestEmailBody, DocumentBody, UpdateEntityAOAFileBody, InitBody, RemoveBrandActivity, RemoveEntityActivity, UpdateIndividualWithTypeBody, UpdateMultipleIndividualBody, ExpressLeadVerifyBody, ConfirmBody, ConfigBody, MerchantListBody, CreateEntityBody, CreateNafathAuthBody, GetUserListSegmentBody, CreateKYCAuthBody };
174
+ export type { ValidateOperatorBody, CreateAuthBody, ExpressCreateAccountBody, VerifyAuthBody, CreateLeadBody, UpdateLeadBody, LeadVerifyBody, LeadOTPVerifyBody, CheckEmailBody, CheckBrandBody, LeadIdentityUpdateBody, EntityInfoBody, CreateAccountBody, EntityBankUpdateBody, CreatePasswordBody, BrandListBody, VerifyOperationAuthBody, ResetPasswordVerifyAuthBody, UpdateBoardBody, UpdateBrandBody, DataElementBody, UploadFileBody, UpdateEntityBody, DocumentUpdateBody, DocumentInfo, VerifyAuthExpressOTPBody, UpdateIndividualBody, UpdateEntityActivityBody, UpdateEntityCapitalBody, BankDocumentInfo, GetUserListBody, GetIndividualListBody, RequestEmailBody, DocumentBody, UpdateEntityAOAFileBody, InitBody, RemoveBrandActivity, RemoveEntityActivity, UpdateIndividualWithTypeBody, UpdateMultipleIndividualBody, ExpressLeadVerifyBody, ConfirmBody, ConfigBody, MerchantListBody, CreateEntityBody, CreateNafathAuthBody, GetUserListSegmentBody, CreateKYCAuthBody, GenerateAuthLinkNewTerminalProps, UnlinkTerminalDeviceProps, LinkTerminalDeviceProps };
169
175
  export { setAxiosGlobalHeaders, removeAxiosGlobalHeaders, axiosInstance, getAxiosHeaders };
170
176
  export default API;
@@ -16,6 +16,7 @@ import { brandService } from './brand';
16
16
  import { fileService } from './file';
17
17
  import { documentService } from './document';
18
18
  import { initService } from './init';
19
+ import { terminalService } from './terminal';
19
20
  var API = {
20
21
  locationService: locationService,
21
22
  operatorService: operatorService,
@@ -33,7 +34,8 @@ var API = {
33
34
  brandService: brandService,
34
35
  fileService: fileService,
35
36
  documentService: documentService,
36
- initService: initService
37
+ initService: initService,
38
+ terminalService: terminalService
37
39
  };
38
40
  export { setAxiosGlobalHeaders, removeAxiosGlobalHeaders, axiosInstance, getAxiosHeaders };
39
41
  export default API;
@@ -0,0 +1,28 @@
1
+ export interface GenerateAuthLinkNewTerminalProps {
2
+ merchant: {
3
+ id: string;
4
+ terminal: {
5
+ id: string;
6
+ };
7
+ };
8
+ }
9
+ export interface UnlinkTerminalDeviceProps {
10
+ deviceId: string;
11
+ initiator: string;
12
+ terminal: {
13
+ id: string;
14
+ };
15
+ merchant: {
16
+ id: string;
17
+ };
18
+ }
19
+ export interface LinkTerminalDeviceProps {
20
+ id: string;
21
+ action: string;
22
+ }
23
+ declare const terminalService: {
24
+ retrieveTerminalDeviceList: (merchants: string[]) => Promise<any>;
25
+ unlinkTerminalDevice: ({ deviceId, ...payload }: UnlinkTerminalDeviceProps) => Promise<any>;
26
+ retrieveTerminalList: (merchantIds: string[]) => Promise<any>;
27
+ };
28
+ export { terminalService };
@@ -0,0 +1,45 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { ENDPOINT_PATHS } from '../constants';
13
+ import { httpClient } from './axios';
14
+ var retrieveTerminalDeviceList = function (merchants) {
15
+ return httpClient({
16
+ method: 'post',
17
+ url: "".concat(ENDPOINT_PATHS.TERMINAL, "/device/list"),
18
+ data: {
19
+ merchants: merchants
20
+ }
21
+ }).catch(function () { });
22
+ };
23
+ var retrieveTerminalList = function (merchantIds) {
24
+ return httpClient({
25
+ method: 'post',
26
+ url: "".concat(ENDPOINT_PATHS.TERMINAL, "/list"),
27
+ data: {
28
+ merchant_id: merchantIds
29
+ }
30
+ });
31
+ };
32
+ var unlinkTerminalDevice = function (_a) {
33
+ var deviceId = _a.deviceId, payload = __rest(_a, ["deviceId"]);
34
+ return httpClient({
35
+ method: 'put',
36
+ url: "".concat(ENDPOINT_PATHS.TERMINAL, "/device/").concat(deviceId, "/unlink"),
37
+ data: payload
38
+ });
39
+ };
40
+ var terminalService = {
41
+ retrieveTerminalDeviceList: retrieveTerminalDeviceList,
42
+ unlinkTerminalDevice: unlinkTerminalDevice,
43
+ retrieveTerminalList: retrieveTerminalList
44
+ };
45
+ export { terminalService };
@@ -13,5 +13,6 @@ declare const rootReducer: {
13
13
  auth: import("redux").Reducer<import("../features/app/auth/authStore").AuthState, import("redux").AnyAction>;
14
14
  board: import("redux").Reducer<import("../features/app/board/boardStore").BoardState, import("redux").AnyAction>;
15
15
  kyc: import("redux").Reducer<import("../features/app/kyc/kycStore").KYCDataState, import("redux").AnyAction>;
16
+ terminal: import("redux").Reducer<import("../features/app/terminal/terminalStore").TerminalDataState, import("redux").AnyAction>;
16
17
  };
17
18
  export default rootReducer;
@@ -12,6 +12,7 @@ import connectExpress from '../features/app/connectExpress/connectExpressStore';
12
12
  import board from '../features/app/board/boardStore';
13
13
  import auth from '../features/app/auth/authStore';
14
14
  import kyc from '../features/app/kyc/kycStore';
15
+ import terminal from '../features/app/terminal/terminalStore';
15
16
  var rootReducer = {
16
17
  settings: settings,
17
18
  connect: connect,
@@ -26,6 +27,7 @@ var rootReducer = {
26
27
  connectExpress: connectExpress,
27
28
  auth: auth,
28
29
  board: board,
29
- kyc: kyc
30
+ kyc: kyc,
31
+ terminal: terminal
30
32
  };
31
33
  export default rootReducer;
@@ -14,6 +14,7 @@ export declare const onCloseComplete: import("@reduxjs/toolkit").AsyncThunk<void
14
14
  merchantId: string;
15
15
  brandId: string;
16
16
  entityId: string;
17
+ nextScreen?: string | undefined;
17
18
  }, {}>;
18
19
  export interface SettingsData {
19
20
  skin: ThemeMode;
@@ -56,7 +56,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
56
56
  };
57
57
  var _a;
58
58
  import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
59
- import { getStoredData, storeData, isArray, findItem, getBrowserInfo, getFingerPrint, sortCountries, findCountryByIso2, getRequestHeaders, encryptString, dangerousMessage, getParameterByName, setBaseUrl, getUserLanguage } from '../utils';
59
+ import { getStoredData, storeData, isArray, findItem, getBrowserInfo, getFingerPrint, sortCountries, findCountryByIso2, getRequestHeaders, encryptString, dangerousMessage, getParameterByName, setBaseUrl, getUserLanguage, sleep } from '../utils';
60
60
  import { BUSINESS_COUNTRIES, DEFAULT_COUNTRY_ISO2, DefaultDeviceInfo, LOCAL_STORAGE_KEYS } from '../constants';
61
61
  import i18n from '../i18n';
62
62
  import { updateLocale } from '../utils/locale';
@@ -179,7 +179,7 @@ export var fetchAppSettingsSync = createAsyncThunk('fetchAppSettingsSync', funct
179
179
  });
180
180
  }); });
181
181
  export var onCloseComplete = createAsyncThunk('settings/onCloseComplete', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
182
- var settings, _a, appConfig, authId, postURL, redirectUrl, bi, merchantId, brandId, entityId, body, data, urlQueryStart, newUrl;
182
+ var settings, _a, appConfig, authId, postURL, redirectUrl, bi, merchantId, brandId, entityId, nextScreen, body, data, urlQueryStart, newUrl;
183
183
  var _b, _c;
184
184
  return __generator(this, function (_d) {
185
185
  switch (_d.label) {
@@ -188,7 +188,7 @@ export var onCloseComplete = createAsyncThunk('settings/onCloseComplete', functi
188
188
  _a = settings.data, appConfig = _a.appConfig, authId = _a.authId;
189
189
  postURL = appConfig.postURL, redirectUrl = appConfig.redirectUrl;
190
190
  bi = settings.data.deviceInfo.browser.browser_id;
191
- merchantId = params.merchantId, brandId = params.brandId, entityId = params.entityId;
191
+ merchantId = params.merchantId, brandId = params.brandId, entityId = params.entityId, nextScreen = params.nextScreen;
192
192
  if (!authId) return [3, 2];
193
193
  body = {
194
194
  post_url: postURL || '',
@@ -203,6 +203,10 @@ export var onCloseComplete = createAsyncThunk('settings/onCloseComplete', functi
203
203
  case 1:
204
204
  data = _d.sent();
205
205
  (_c = (_b = settings.data.appConfig).onStepCompleted) === null || _c === void 0 ? void 0 : _c.call(_b, settings.data.activeScreen.name, data);
206
+ if (nextScreen) {
207
+ sleep(100).then(function () { return thunkApi.dispatch(handleCurrentActiveScreen(nextScreen)); });
208
+ return [2];
209
+ }
206
210
  if (settings.data.appConfig.mode === 'popup') {
207
211
  settings.data.appConfig.onFlowCompleted({ auth_id: authId, bi: bi });
208
212
  thunkApi.dispatch(handleOpen(false));
@@ -14,6 +14,7 @@ export declare const store: import("@reduxjs/toolkit").EnhancedStore<{
14
14
  auth: import("../features/app/auth/authStore").AuthState;
15
15
  board: import("../features/app/board/boardStore").BoardState;
16
16
  kyc: import("../features/app/kyc/kycStore").KYCDataState;
17
+ terminal: import("../features/app/terminal/terminalStore").TerminalDataState;
17
18
  }, import("redux").AnyAction, import("@reduxjs/toolkit").MiddlewareArray<[import("@reduxjs/toolkit").ThunkMiddleware<{
18
19
  settings: import("./settings").SettingsState;
19
20
  connect: import("../features/app/connect/connectStore").ConnectState;
@@ -29,6 +30,7 @@ export declare const store: import("@reduxjs/toolkit").EnhancedStore<{
29
30
  auth: import("../features/app/auth/authStore").AuthState;
30
31
  board: import("../features/app/board/boardStore").BoardState;
31
32
  kyc: import("../features/app/kyc/kycStore").KYCDataState;
33
+ terminal: import("../features/app/terminal/terminalStore").TerminalDataState;
32
34
  }, import("redux").AnyAction, undefined>]>>;
33
35
  export declare type AppDispatch = typeof store.dispatch;
34
36
  export declare type RootState = ReturnType<typeof store.getState>;
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ declare type SARSymbolProps = React.SVGProps<SVGSVGElement> & {
3
+ width?: number;
4
+ height?: number;
5
+ };
6
+ declare const SARSymbol: ({ height, ...svgProps }: SARSymbolProps) => JSX.Element;
7
+ export default SARSymbol;
@@ -0,0 +1,28 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
23
+ import { jsx as _jsx } from "react/jsx-runtime";
24
+ var SARSymbol = function (_a) {
25
+ var _b = _a.height, height = _b === void 0 ? 10 : _b, svgProps = __rest(_a, ["height"]);
26
+ return (_jsx("span", __assign({ style: { padding: '0 2px' } }, { children: _jsx("svg", __assign({ xmlns: 'http://www.w3.org/2000/svg', height: height, fill: 'currentColor', viewBox: '0 0 1124.14 1256.39' }, svgProps, { children: _jsx("path", { d: 'M699.62 1113.02a460.24 460.24 0 0 0-38.4 143.37l424.51-90.24a460.44 460.44 0 0 0 38.4-143.37l-424.51 90.24zM1085.73 895.8a460.16 460.16 0 0 0 38.4-143.37l-330.68 70.33v-135.2l292.27-62.11a460.16 460.16 0 0 0 38.4-143.37l-330.68 70.27V66.13a466.56 466.56 0 0 0-132.25 110.99v403.35l-132.25 28.11V0A466.4 466.4 0 0 0 396.7 110.99v525.69l-295.92 62.88a460.46 460.46 0 0 0-38.42 143.37l334.33-71.05v170.26l-358.3 76.14a460.16 460.16 0 0 0-38.4 143.37l375.03-79.7a119.13 119.13 0 0 0 73.83-49.24l68.78-101.97v-.02a65.72 65.72 0 0 0 11.3-36.97V743.77l132.25-28.11v270.4l424.53-90.28z' }) })) })));
27
+ };
28
+ export default SARSymbol;
@@ -0,0 +1,2 @@
1
+ import SARSymbol from './SARSymbol';
2
+ export { SARSymbol };
@@ -0,0 +1,2 @@
1
+ import SARSymbol from './SARSymbol';
2
+ export { SARSymbol };
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ declare type CurrencyIconMap = Record<string, React.FC>;
3
+ export declare const CURRENCY_ICON: CurrencyIconMap;
4
+ export {};
@@ -0,0 +1,4 @@
1
+ import SARSymbol from './SARSymbol';
2
+ export var CURRENCY_ICON = {
3
+ SA: SARSymbol
4
+ };
@@ -135,12 +135,14 @@
135
135
  "call_center_placeholder": "رقم هاتف خدمة الإتصال",
136
136
  "cancel": "إلغاء",
137
137
  "capital_paid_hint": "00000",
138
+ "capital_paid_input_label": "رأس المال المدفوع",
138
139
  "capital_paid_label": "رأس المال المدفوع ({{currency}})",
139
140
  "capital_paid_required": "Please Enter paid amount",
140
141
  "capital_share_count_hint": "00000",
141
142
  "capital_share_count_label": "عدد اسهم رأس المال",
142
143
  "capital_share_count_required": "Please Enter share count",
143
144
  "capital_share_value_hint": "00000",
145
+ "capital_share_value_input_label": "قيمة السهم",
144
146
  "capital_share_value_label": "قيمة السهم ({{currency}})",
145
147
  "capital_share_value_required": "Please Enter share value",
146
148
  "category": "الفئة",
@@ -207,6 +209,7 @@
207
209
  "create_new_entity": "Create Entity",
208
210
  "creating_account_description": "هذه العملية تحتاج وقت...",
209
211
  "creating_account_title": "جارى انشاء الحساب",
212
+ "current_mobile_number": "رقم الجوال الحالي",
210
213
  "customer_base_name_hint": "اختر محليًا إذا كنت تبيع فقط في البلد الذي تقيم فيه. اختر إقليميًا إذا كنت تبيع أيضًا لدول مجلس التعاون الخليجي الأخرى. اختر عالمياً إذا كنت تبيع إلى أي دولة خارج دول مجلس التعاون الخليجي.",
211
214
  "data_loading_desc": "الرجاء الانتظار أثناء تحضير البيانات",
212
215
  "data_loading_title": "تحضير البيانات",
@@ -279,6 +282,7 @@
279
282
  "entity_type": "نوع الكيان",
280
283
  "entity_type_required": "Please select at least one entity type",
281
284
  "expected_customers_to_serve": "عدد العملاء شهريا",
285
+ "expected_sale_per_month": "البيع المتوقع في الشهر؟",
282
286
  "expected_sales_monthly": "البيع المتوقع في الشهر؟ ({{currency}})",
283
287
  "expected_sales_yearly": "ما هي المبيعات المتوقعة لعملك شهريًا؟",
284
288
  "expected_served_monthly": "عدد العملاء شهريا",
@@ -375,7 +379,6 @@
375
379
  "kyc_terms_title": "وثائق قانونية",
376
380
  "kyc_token_invalid": "الرجاء مراجعة رابط المرسل اليك",
377
381
  "kyc_users_description": "يرجى اختيار رقم هوية الممثل المعتمد للموافقة عليه مع {{provider}}",
378
- "kyc_privacy_policy": "سياسة الخصوصية",
379
382
  "language": "English",
380
383
  "license_info": "معلومات الترخيص",
381
384
  "license_name_hint": "Enter legal name",
@@ -400,11 +403,14 @@
400
403
  "mobile_app_label": "تطبيقات هاتف",
401
404
  "mobile_button_label": "المتابعة عن طريق رقم الجوال",
402
405
  "mobile_number_description": "ابدأ فورًا باستخدام رقم هاتفك المحمول",
406
+ "mobile_ownership_title": "يرجى تحديث رقم هاتفك المحمول المسجل ليتوافق مع هويتك.",
403
407
  "month": "الشهر",
408
+ "monthly_income": "ما هو دخلك الشهري؟ ",
404
409
  "nafath_button_label": "المتابعة عن طريق نفاذ",
405
410
  "nafath_verification_description_check": "يرجى الدخول إلى تطبيق نفاذ الخاص بك وإدخال رقم الطلب أعلاه للمصادقة.",
406
411
  "nafath_verification_description_error": "حاول مرة اخرى",
407
412
  "nafath_verification_description_wait": "يرجى الدخول إلى تطبيق نفاذ الخاص بك وإدخال رقم الطلب أعلاه للمصادقة.",
413
+ "nafath_verification_failed": "تأكد من الموافقة على الطلب المرسل عبر تطبيق نفاذ، يرجى محاولة إرسال طلب جديد.",
408
414
  "nafath_verification_redirection_message": "سيتم إعادة توجيهك الآن",
409
415
  "nafath_verification_title_check": "المصادقة مع تطبيق نفاذ",
410
416
  "nafath_verification_title_error": "لا يمكننا تأكيد المصادقة الخاصة بك",
@@ -414,6 +420,7 @@
414
420
  "national_id_placeholder": "0000000000",
415
421
  "national_id_title": "الهوية الوطنية",
416
422
  "nationality_label": "الجنسية",
423
+ "new_mobile_number": "رقم الجوال الجديد",
417
424
  "next": "التالي",
418
425
  "no": "لا",
419
426
  "no_results": "لا نتائج",
@@ -522,6 +529,7 @@
522
529
  "share_count_hint": "0",
523
530
  "share_count_label": "عدد الأسهم",
524
531
  "share_value_hint": "0000",
532
+ "share_value_input_label": "قيمة السهم",
525
533
  "share_value_label": "قيمة السهم ({{currency}})",
526
534
  "sign_up": "Sign up",
527
535
  "signed_up": "تسجيل الدخول",
@@ -595,6 +603,34 @@
595
603
  "tax_success_header_title": "اكتملت الضريبة",
596
604
  "tax_success_title": "تم تحديث المعلومات الضريبية الخاصة بعملك التجاري.",
597
605
  "team_size_title": "حجم الفريق",
606
+ "terminal_device_id": "رقم تعريف جهاز الكاشير",
607
+ "terminal_devices": "{{name}} أجهزة",
608
+ "terminal_flow_pending": "أجهزة نقاط الدفع",
609
+ "terminal_go_to_board": "الانتقال إلى اللوحة",
610
+ "terminal_id": "رقم تعريف جهاز نقطة الدفع",
611
+ "terminal_link": "ربط",
612
+ "terminal_link_terminal": "ربط جهاز نقطة الدفع",
613
+ "terminal_linked": "تمَّ الربط",
614
+ "terminal_linked_success": "تم ربط جهاز نقطة الدفع {{device}} الخاص بك بنجاح!",
615
+ "terminal_linked_with": "مرتبط مع",
616
+ "terminal_manage_terminals": "إدارة أجهزة نقاط الدفع",
617
+ "terminal_new_request_will_send": "لتأكيد الربط تمَّ إرسال طلب ربط جديد إلى تطبيق الـ Terminal من تاب.",
618
+ "terminal_no_terminal_linked": "لا يوجد أجهزة نقاط دفع مرتبطة",
619
+ "terminal_no_terminal_linked_description": "سيتم عرض أجهزة نقاط الدفع المرتبطة هنا عند توفّرها",
620
+ "terminal_or_use_code": "أو استخدم الرمز",
621
+ "terminal_paired_with": "مقترن بـ",
622
+ "terminal_push_notification_link_new_terminal_failed": "حدث خطأ. يرجى المحاولة لاحقاً",
623
+ "terminal_qr_code_description": "افتح تطبيق تاب على جهاز نقطة الدفع، ثم اختر جهاز نقطة الدفع المرتبط من قائمة المزيد.",
624
+ "terminal_request_denied": "تمَّ رفض طلب ربط جهاز نقطة الدفع {{device }}",
625
+ "terminal_request_will_send": "لتأكيد الربط سيتم إرسال طلب إلى تطبيق الـ Terminal من تاب.",
626
+ "terminal_resend_request": "إعادة إرسال الطلب",
627
+ "terminal_select_device": "اختر جهاز نقطة الدفع",
628
+ "terminal_send_link_request": "إرسال طلب الربط",
629
+ "terminal_serial_number": "الرقم التسلسلي",
630
+ "terminal_unlink": "إلغاء الربط",
631
+ "terminal_unlinked": "غير مرتبط",
632
+ "terminal_unlinked_success": "تم إلغاء ربط جهاز نقطة الدفع {{device}} الخاص بك بنجاح!",
633
+ "terminal_with": "مع",
598
634
  "terms_and_conditions_link_title": "الشروط والاحكام",
599
635
  "the nin format is not valid": "هل يمكنك التحقق من رقم الهوية الذي تم إدخاله.",
600
636
  "title_article": "مذكرة التأسيس",
@@ -615,6 +651,8 @@
615
651
  "unified_number_hint": "000000",
616
652
  "unified_number_label": "الرقم الموحد",
617
653
  "unified_number_required": "Unified Number Required",
654
+ "update_later": "سأقوم بالتحديث لاحقاً",
655
+ "update_mobile_number": "تحديث رقم الجوال",
618
656
  "uploaded_file": "file",
619
657
  "vat_id": "رقم الضريبي المميز",
620
658
  "vat_id_placeholder": "00000000",
@@ -634,9 +672,8 @@
634
672
  "yes": "نعم",
635
673
  "your_brand_details": "تفاصيل علامتك التجارية",
636
674
  "يرجى التحقق من اسم تطبيق ابل": "",
637
- "mobile_ownership_title": "لتفعيل استلام الايداعات، يرجى تحديث رقم هاتفك المحمول المسجل ليتوافق مع هويتك.",
638
- "current_mobile_number": "رقم الجوال الحالي",
639
- "new_mobile_number": "رقم الجوال الجديد",
640
- "update_mobile_number": "تحديث رقم الجوال",
641
- "update_later": "سأقوم بالتحديث لاحقاً"
675
+ "passcode_title": "الرجاء إدخال رمز المرور الخاص بك",
676
+ "sign_in_with_otp": "تسجيل الدخول باستخدام رمز التحقق (OTP)",
677
+ "passcode_required": "الرجاء إدخال رمز المرور المطلوب",
678
+ "login_with_passcode": "تسجيل الدخول باستخدام رمز المرور"
642
679
  }