@tap-payments/auth-jsconnect 2.8.59-beta → 2.8.59-sandbox
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/build/@types/app.d.ts +1 -0
- package/build/@types/form.d.ts +1 -0
- package/build/@types/redux.d.ts +1 -0
- package/build/api/entity.d.ts +2 -2
- package/build/api/entity.js +12 -4
- package/build/api/index.d.ts +2 -2
- package/build/components/Tooltip/Tooltip.js +1 -1
- package/build/constants/api.d.ts +0 -1
- package/build/constants/api.js +0 -2
- package/build/constants/app.d.ts +0 -1
- package/build/constants/app.js +0 -1
- package/build/features/app/bank/bankStore.d.ts +13 -18
- package/build/features/app/bank/bankStore.js +184 -165
- package/build/features/app/board/boardStore.js +52 -30
- package/build/features/app/brand/brandStore.d.ts +16 -33
- package/build/features/app/brand/brandStore.js +239 -242
- package/build/features/app/business/businessStore.d.ts +0 -5
- package/build/features/app/business/businessStore.js +76 -87
- package/build/features/app/connectExpress/connectExpressStore.d.ts +15 -6
- package/build/features/app/connectExpress/connectExpressStore.js +111 -52
- package/build/features/app/entity/entityStore.d.ts +20 -36
- package/build/features/app/entity/entityStore.js +196 -246
- package/build/features/app/individual/individualStore.d.ts +22 -38
- package/build/features/app/individual/individualStore.js +263 -266
- package/build/features/app/password/passwordStore.d.ts +40 -23
- package/build/features/app/password/passwordStore.js +226 -233
- package/build/features/app/tax/taxStore.d.ts +13 -7
- package/build/features/app/tax/taxStore.js +168 -147
- package/build/features/auth/screens/AuthSwitch/AuthSwitch.js +13 -1
- package/build/features/auth/screens/AuthenticationList/EntityLicenseType.d.ts +4 -26
- package/build/features/auth/screens/BusinessCountry/BusinessCountry.js +7 -1
- package/build/features/bank/Bank.d.ts +1 -0
- package/build/features/bank/Bank.js +7 -4
- package/build/features/bank/screens/BankDetails/BankDetails.js +18 -5
- package/build/features/bank/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/bank/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/bank/screens/OperatorError/index.d.ts +3 -0
- package/build/features/bank/screens/OperatorError/index.js +2 -0
- package/build/features/bank/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
- package/build/features/bank/screens/Verify/Verify.js +5 -5
- package/build/features/board/Board.js +8 -4
- package/build/features/board/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/board/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/board/screens/OperatorError/index.d.ts +3 -0
- package/build/features/board/screens/OperatorError/index.js +2 -0
- package/build/features/board/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +3 -4
- package/build/features/brand/Brand.d.ts +1 -0
- package/build/features/brand/Brand.js +7 -4
- package/build/features/brand/screens/BrandActivities/ActivitiesList.d.ts +8 -35
- package/build/features/brand/screens/BrandActivities/BrandActivities.js +49 -12
- package/build/features/brand/screens/BrandActivities/CustomerBase.d.ts +3 -3
- package/build/features/brand/screens/BrandActivities/ExpectedSalesRange.js +6 -3
- package/build/features/brand/screens/BrandActivities/RefundPolicy.d.ts +5 -18
- package/build/features/brand/screens/BrandActivities/RefundPolicy.js +1 -1
- package/build/features/brand/screens/BrandActivities/TAC.d.ts +2 -7
- package/build/features/brand/screens/BrandActivities/TAC.js +1 -1
- package/build/features/brand/screens/BrandActivities/TransactionPolicy.js +1 -1
- package/build/features/brand/screens/BrandInfo/BrandInfo.js +23 -5
- package/build/features/brand/screens/BrandSegmentInfo/BrandSegmentInfo.js +23 -7
- package/build/features/brand/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/brand/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/brand/screens/OperatorError/index.d.ts +3 -0
- package/build/features/brand/screens/OperatorError/index.js +2 -0
- package/build/features/brand/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
- package/build/features/brand/screens/Verify/Verify.js +1 -1
- package/build/features/business/Business.js +9 -4
- package/build/features/business/screens/Activities/Activities.js +12 -3
- package/build/features/business/screens/Activities/ActivitiesList.d.ts +2 -2
- package/build/features/business/screens/Activities/OperationStartDate.d.ts +1 -1
- package/build/features/business/screens/BrandDetails/SalesChannel.d.ts +1 -1
- package/build/features/business/screens/BusinessType/BusinessType.js +10 -2
- package/build/features/business/screens/BusinessType/LicenseType.d.ts +4 -26
- package/build/features/business/screens/CivilID/CivilID.js +1 -1
- package/build/features/business/screens/Customers/CustomerLocations.d.ts +9 -36
- package/build/features/business/screens/Customers/Customers.js +12 -3
- package/build/features/business/screens/Customers/ExpectedSalesRange.js +6 -3
- package/build/features/business/screens/Customers/RefundPolicy.d.ts +5 -18
- package/build/features/business/screens/IDBOD/IDBOD.js +10 -2
- package/build/features/business/screens/OTP/OTP.js +1 -1
- package/build/features/business/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/business/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/business/screens/OperatorError/index.d.ts +3 -0
- package/build/features/business/screens/OperatorError/index.js +2 -0
- package/build/features/business/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +13 -2
- package/build/features/business/screens/Verify/Verify.js +13 -3
- package/build/features/connect/Connect.js +3 -2
- package/build/features/connect/screens/BrandSegment/BrandSegment.js +1 -1
- package/build/features/connect/screens/BusinessCountry/BusinessCountry.js +9 -2
- package/build/features/connect/screens/CivilID/CivilID.js +1 -1
- package/build/features/connect/screens/Individual/Email.js +3 -1
- package/build/features/connect/screens/Individual/Individual.js +1 -1
- package/build/features/connect/screens/Merchant/BrandList.js +3 -3
- package/build/features/connect/screens/Merchant/Merchant.js +1 -1
- package/build/features/connect/screens/Merchant/SalesChannels.js +1 -1
- package/build/features/connect/screens/Mobile/Mobile.js +11 -8
- package/build/features/connect/screens/NID/NID.js +1 -1
- package/build/features/connect/screens/OperatorError/OperatorError.js +1 -1
- package/build/features/connectExpress/ConnectExpress.js +2 -1
- package/build/features/connectExpress/screens/AuthenticationList/AuthenticationList.js +5 -2
- package/build/features/connectExpress/screens/AuthenticationList/EntityLicenseType.d.ts +9 -0
- package/build/features/connectExpress/screens/AuthenticationList/EntityLicenseType.js +90 -0
- package/build/features/connectExpress/screens/AuthenticationList/EntityList.js +6 -1
- package/build/features/connectExpress/screens/AuthenticationList/validation.d.ts +3 -0
- package/build/features/connectExpress/screens/AuthenticationList/validation.js +10 -0
- package/build/features/connectExpress/screens/BusinessCountry/BusinessCountry.js +7 -1
- package/build/features/connectExpress/screens/CivilID/CivilID.js +1 -1
- package/build/features/connectExpress/screens/CivilIDMissed/CivilID.js +1 -1
- package/build/features/connectExpress/screens/CollectBusinessInfo/CollectBusinessInfo.js +1 -1
- package/build/features/connectExpress/screens/CollectBusinessInfo/LicenseType.d.ts +4 -26
- package/build/features/connectExpress/screens/CollectBusinessInfo/TAC.d.ts +2 -7
- package/build/features/connectExpress/screens/CollectIndividualInfo/CollectIndividualInfo.js +1 -1
- package/build/features/connectExpress/screens/CollectIndividualInfo/Email.js +3 -1
- package/build/features/connectExpress/screens/CreateAccountLoader/CreateAccountLoader.js +14 -24
- package/build/features/connectExpress/screens/Mobile/Mobile.js +9 -2
- package/build/features/connectExpress/screens/NID/NID.js +1 -1
- package/build/features/connectExpress/screens/NID/TAC.d.ts +2 -7
- package/build/features/connectExpress/screens/NIDMissed/NID.js +1 -1
- package/build/features/connectExpress/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/connectExpress/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/connectExpress/screens/OperatorError/index.d.ts +3 -0
- package/build/features/connectExpress/screens/OperatorError/index.js +2 -0
- package/build/features/connectExpress/screens/PrepareDataLoading/PrepareDataLoading.d.ts +5 -0
- package/build/features/connectExpress/screens/PrepareDataLoading/PrepareDataLoading.js +34 -0
- package/build/features/connectExpress/screens/PrepareDataLoading/index.d.ts +2 -0
- package/build/features/connectExpress/screens/PrepareDataLoading/index.js +2 -0
- package/build/features/connectExpress/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
- package/build/features/entity/Entity.d.ts +1 -0
- package/build/features/entity/Entity.js +7 -4
- package/build/features/entity/screens/EntityCapital/ActivityList.d.ts +2 -2
- package/build/features/entity/screens/EntityCapital/CapitalPaid.js +8 -4
- package/build/features/entity/screens/EntityCapital/CapitalShareValue.js +8 -4
- package/build/features/entity/screens/EntityCapital/EntityCapital.js +34 -10
- package/build/features/entity/screens/EntityName/EntityName.js +32 -15
- package/build/features/entity/screens/EntityName/EntityTypeList.d.ts +8 -35
- package/build/features/entity/screens/EntityName/ExpiryDate.d.ts +1 -1
- package/build/features/entity/screens/EntityName/IssuingDate.d.ts +1 -1
- package/build/features/entity/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/entity/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/entity/screens/OperatorError/index.d.ts +3 -0
- package/build/features/entity/screens/OperatorError/index.js +2 -0
- package/build/features/entity/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
- package/build/features/entity/screens/Verify/Verify.js +1 -1
- package/build/features/featuresScreens.js +67 -7
- package/build/features/individual/Individual.d.ts +1 -0
- package/build/features/individual/Individual.js +7 -4
- package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.d.ts +1 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.js +54 -14
- package/build/features/individual/screens/AdditionalIndividualInfo/IsAuthorizedSwitch.d.ts +14 -0
- package/build/features/individual/screens/AdditionalIndividualInfo/IsAuthorizedSwitch.js +76 -0
- package/build/features/individual/screens/AdditionalIndividualInfo/MonthlyIncome.js +5 -2
- package/build/features/individual/screens/AdditionalIndividualInfo/PEPSwitch.d.ts +4 -26
- package/build/features/individual/screens/AdditionalIndividualInfo/ShareValue.js +8 -3
- package/build/features/individual/screens/AdditionalIndividualInfo/validation.d.ts +4 -1
- package/build/features/individual/screens/AdditionalIndividualInfo/validation.js +3 -2
- package/build/features/individual/screens/IndividualList/Email.js +3 -2
- package/build/features/individual/screens/IndividualList/IndividualList.d.ts +2 -2
- package/build/features/individual/screens/IndividualList/IndividualList.js +18 -5
- package/build/features/individual/screens/IndividualList/UserList.js +13 -9
- package/build/features/individual/screens/IndividualPersonalInfo/Email.js +4 -2
- package/build/features/individual/screens/IndividualPersonalInfo/Gender.d.ts +4 -26
- package/build/features/individual/screens/IndividualPersonalInfo/IndividualPersonalInfo.d.ts +1 -1
- package/build/features/individual/screens/IndividualPersonalInfo/IndividualPersonalInfo.js +76 -20
- package/build/features/individual/screens/IndividualPhoneInfo/PhoneInfo.js +1 -1
- package/build/features/individual/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/individual/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/individual/screens/OperatorError/index.d.ts +3 -0
- package/build/features/individual/screens/OperatorError/index.js +2 -0
- package/build/features/individual/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
- package/build/features/individual/screens/Verify/Verify.js +1 -1
- package/build/features/password/Password.d.ts +1 -0
- package/build/features/password/Password.js +75 -28
- package/build/features/password/screens/CreatePassword/CreatePassword.js +8 -4
- package/build/features/password/screens/OTP/OTP.js +1 -1
- package/build/features/password/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/password/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/password/screens/OperatorError/index.d.ts +3 -0
- package/build/features/password/screens/OperatorError/index.js +2 -0
- package/build/features/password/screens/PrepareDataLoading/PrepareDataLoading.d.ts +4 -0
- package/build/features/password/screens/PrepareDataLoading/PrepareDataLoading.js +10 -0
- package/build/features/password/screens/PrepareDataLoading/index.d.ts +2 -0
- package/build/features/password/screens/PrepareDataLoading/index.js +2 -0
- package/build/features/password/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
- package/build/features/password/screens/Verify/Verify.js +5 -5
- package/build/features/shared/Address/CountryList.d.ts +7 -23
- package/build/features/shared/Address/InputSelect.d.ts +7 -23
- package/build/features/shared/Button/FlowsButtons.js +13 -3
- package/build/features/shared/Containers/FeatureContainer.d.ts +1 -0
- package/build/features/shared/Containers/FeatureContainer.js +3 -3
- package/build/features/shared/Input/Input.d.ts +2 -2
- package/build/features/shared/SuccessFlowButtons/SuccessFlowButtons.d.ts +5 -1
- package/build/features/shared/SuccessFlowButtons/SuccessFlowButtons.js +2 -2
- package/build/features/shared/UploadFile/FileUpload.d.ts +2 -7
- package/build/features/shared/UploadFile/UploadFile.d.ts +2 -7
- package/build/features/shared/UploadFile/UploadWrapper.d.ts +2 -7
- package/build/features/shared/UploadMultipleFile/UploadFile.d.ts +2 -7
- package/build/features/shared/UploadMultipleFile/UploadMultipleFile.d.ts +2 -7
- package/build/features/signIn/SignIn.js +12 -3
- package/build/features/signIn/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/signIn/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/signIn/screens/OperatorError/index.d.ts +3 -0
- package/build/features/signIn/screens/OperatorError/index.js +2 -0
- package/build/features/tax/Tax.d.ts +1 -0
- package/build/features/tax/Tax.js +7 -4
- package/build/features/tax/screens/OperatorError/OperatorError.d.ts +5 -0
- package/build/features/tax/screens/OperatorError/OperatorError.js +9 -0
- package/build/features/tax/screens/OperatorError/index.d.ts +3 -0
- package/build/features/tax/screens/OperatorError/index.js +2 -0
- package/build/features/tax/screens/SuccessWithFlowButtons/SuccessWithFlowButtons.js +1 -1
- package/build/features/tax/screens/TaxDetails/TaxDetails.js +7 -2
- package/build/features/tax/screens/Verify/Verify.js +5 -5
- package/build/hooks/index.d.ts +1 -0
- package/build/hooks/index.js +1 -0
- package/build/hooks/useFormDirtyCheck.d.ts +10 -0
- package/build/hooks/useFormDirtyCheck.js +66 -0
- package/build/hooks/useVerifyToken.d.ts +5 -2
- package/build/hooks/useVerifyToken.js +10 -5
- package/build/utils/common.js +3 -3
- package/build/utils/locale.js +2 -1
- package/build/utils/string.d.ts +5 -2
- package/build/utils/string.js +34 -5
- package/package.json +2 -2
|
@@ -22,11 +22,13 @@ import ConnectExpressIdentityVerifyOTPScreen from './connectExpress/screens/Iden
|
|
|
22
22
|
import ConnectExpressCollectIndividualScreen from './connectExpress/screens/CollectIndividualInfo';
|
|
23
23
|
import ConnectExpressCollectBusinessScreen from './connectExpress/screens/CollectBusinessInfo';
|
|
24
24
|
import ConnectExpressCreateAccountLoaderScreen from './connectExpress/screens/CreateAccountLoader';
|
|
25
|
+
import ConnectExpressPreparingDataLoaderScreen from './connectExpress/screens/PrepareDataLoading';
|
|
25
26
|
import ConnectExpressSuccessFlowButtonsScreen from './connectExpress/screens/SuccessWithFlowButtons';
|
|
26
27
|
import ConnectExpressAccountAlreadyCreatedScreen from './connectExpress/screens/AccountAlreadyCreated';
|
|
27
28
|
import ConnectExpressAuthenticationListScreen from './connectExpress/screens/AuthenticationList';
|
|
28
29
|
import ConnectExpressAuthMerchantScreen from './connectExpress/screens/AuthMerchant';
|
|
29
30
|
import ConnectExpressAuthAccountCreatedLoaderScreen from './connectExpress/screens/AccountCreatedLoader';
|
|
31
|
+
import ConnectExpressOperatorError from './connectExpress/screens/OperatorError';
|
|
30
32
|
import AuthBusinessCountry from './auth/screens/BusinessCountry/BusinessCountry';
|
|
31
33
|
import AuthSwitchScreen from './auth/screens/AuthSwitch';
|
|
32
34
|
import AuthMobileScreen from './auth/screens/Mobile';
|
|
@@ -57,12 +59,15 @@ import ResetPasswordSuccessPage from './business/screens/ResetPasswordSuccess';
|
|
|
57
59
|
import BusCivilIDscreen from './business/screens/CivilID';
|
|
58
60
|
import BusVerifyPACIScreen from './business/screens/VerifyPACI';
|
|
59
61
|
import BrandVerifyScreen from './business/screens/BrandDetails';
|
|
62
|
+
import BusinessOperatorError from './business/screens/OperatorError';
|
|
60
63
|
import PasswordVerifyPage from './password/screens/Verify';
|
|
61
64
|
import CreatePasswordPage from './password/screens/CreatePassword';
|
|
65
|
+
import PasswordDataLoadingPage from './password/screens/PrepareDataLoading';
|
|
62
66
|
import PasswordOTPPage from './password/screens/OTP';
|
|
63
67
|
import SuccessPasswordPage from './password/screens/Success';
|
|
64
68
|
import PasswordSuccessWithFlowPage from './password/screens/SuccessWithFlowButtons';
|
|
65
69
|
import PasswordResetPasswordSuccessPage from './password/screens/ResetPasswordSuccess';
|
|
70
|
+
import PasswordOperatorError from './password/screens/OperatorError';
|
|
66
71
|
import IndividualVerifyPage from './individual/screens/Verify';
|
|
67
72
|
import IndividualPhoneInfoPage from './individual/screens/IndividualPhoneInfo';
|
|
68
73
|
import IndividualListPage from './individual/screens/IndividualList';
|
|
@@ -72,22 +77,26 @@ import SuccessOwnerPage from './individual/screens/Success';
|
|
|
72
77
|
import IndividualSuccessWithFlowPage from './individual/screens/SuccessWithFlowButtons';
|
|
73
78
|
import IndividualResetPasswordSuccessPage from './individual/screens/ResetPasswordSuccess';
|
|
74
79
|
import IndividualDataLoadingPage from './individual/screens/PrepareDataLoading';
|
|
80
|
+
import IndividualOperatorError from './individual/screens/OperatorError';
|
|
75
81
|
import BankVerifyPage from './bank/screens/Verify';
|
|
76
82
|
import BankDetailsPage from './bank/screens/BankDetails';
|
|
77
83
|
import BankSuccessPage from './bank/screens/Success';
|
|
78
84
|
import BankSuccessWithFlowPage from './bank/screens/SuccessWithFlowButtons';
|
|
79
85
|
import BankResetPasswordSuccessPage from './bank/screens/ResetPasswordSuccess';
|
|
80
86
|
import BankDataLoadingPage from './bank/screens/PrepareDataLoading';
|
|
87
|
+
import BankOperatorError from './bank/screens/OperatorError';
|
|
81
88
|
import TaxVerifyPage from './tax/screens/Verify';
|
|
82
89
|
import TaxDetailsPage from './tax/screens/TaxDetails';
|
|
83
90
|
import TaxSuccessPage from './tax/screens/Success';
|
|
84
91
|
import TaxSuccessWithFlowPage from './tax/screens/SuccessWithFlowButtons';
|
|
85
92
|
import TaxResetPasswordSuccessPage from './tax/screens/ResetPasswordSuccess';
|
|
86
93
|
import TaxDataLoadingPage from './tax/screens/PrepareDataLoading';
|
|
94
|
+
import TaxOperatorError from './tax/screens/OperatorError';
|
|
87
95
|
import SignInMobilePage from './signIn/screens/Mobile';
|
|
88
96
|
import SignInEmailPage from './signIn/screens/Email';
|
|
89
97
|
import SignInOTPPage from './signIn/screens/OTP';
|
|
90
98
|
import SignInPasswordPage from './signIn/screens/Password';
|
|
99
|
+
import SignInOperatorError from './signIn/screens/OperatorError';
|
|
91
100
|
import EntityVerifyPage from './entity/screens/Verify';
|
|
92
101
|
import EntityNamePage from './entity/screens/EntityName';
|
|
93
102
|
import EntityCapitalPage from './entity/screens/EntityCapital';
|
|
@@ -95,6 +104,7 @@ import EntitySuccessPage from './entity/screens/Success';
|
|
|
95
104
|
import EntitySuccessWithFlowPage from './entity/screens/SuccessWithFlowButtons';
|
|
96
105
|
import EntityResetPasswordSuccessPage from './entity/screens/ResetPasswordSuccess';
|
|
97
106
|
import EntityDataLoadingPage from './entity/screens/PrepareDataLoading';
|
|
107
|
+
import EntityOperatorError from './entity/screens/OperatorError';
|
|
98
108
|
import BrandVerifyPage from './brand/screens/Verify';
|
|
99
109
|
import BrandInfoPage from './brand/screens/BrandInfo';
|
|
100
110
|
import BrandSegmentPage from './brand/screens/BrandSegmentInfo';
|
|
@@ -103,9 +113,11 @@ import BrandSuccessPage from './brand/screens/Success';
|
|
|
103
113
|
import BrandSuccessWithFlowPage from './brand/screens/SuccessWithFlowButtons';
|
|
104
114
|
import BrandResetPasswordSuccessPage from './brand/screens/ResetPasswordSuccess';
|
|
105
115
|
import BrandDataLoadingPage from './brand/screens/PrepareDataLoading';
|
|
116
|
+
import BrandOperatorError from './brand/screens/OperatorError';
|
|
106
117
|
import BoardVerifyPage from './board/screens/Verify';
|
|
107
118
|
import BoardSuccessWithFlowPage from './board/screens/SuccessWithFlowButtons';
|
|
108
119
|
import BoardResetPasswordSuccessPage from './board/screens/ResetPasswordSuccess';
|
|
120
|
+
import BoardOperatorError from './board/screens/OperatorError';
|
|
109
121
|
export var connectFeatureScreens = [
|
|
110
122
|
{
|
|
111
123
|
name: 'CONNECT_BUSINESS_COUNTRY_STEP',
|
|
@@ -197,6 +209,10 @@ export var connectExpressFeatureScreens = [
|
|
|
197
209
|
name: 'CONNECT_EXPRESS_WAITING_FOR_CREATING_ACCOUNT_STEP',
|
|
198
210
|
element: ConnectExpressCreateAccountLoaderScreen
|
|
199
211
|
},
|
|
212
|
+
{
|
|
213
|
+
name: 'CONNECT_EXPRESS_PREPARING_DATA_STEP',
|
|
214
|
+
element: ConnectExpressPreparingDataLoaderScreen
|
|
215
|
+
},
|
|
200
216
|
{
|
|
201
217
|
name: 'CONNECT_EXPRESS_COLLECT_INDIVIDUAL_INFO_STEP',
|
|
202
218
|
element: ConnectExpressCollectIndividualScreen
|
|
@@ -224,6 +240,10 @@ export var connectExpressFeatureScreens = [
|
|
|
224
240
|
{
|
|
225
241
|
name: 'CONNECT_EXPRESS_AUTH_ACCOUNT_CREATED_STEP',
|
|
226
242
|
element: ConnectExpressAuthAccountCreatedLoaderScreen
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
name: 'CONNECT_EXPRESS_OPERATOR_ERROR_STEP',
|
|
246
|
+
element: ConnectExpressOperatorError
|
|
227
247
|
}
|
|
228
248
|
];
|
|
229
249
|
export var authFeatureScreens = [
|
|
@@ -336,7 +356,11 @@ export var businessFeatureScreens = [
|
|
|
336
356
|
{ name: 'BUSINESS_SUCCESS_STEP', element: SuccessPage },
|
|
337
357
|
{ name: 'BUSINESS_SUCCESS_FOUR_FLOWS_BUTTONS_STEP', element: SuccessWithFlowButtonsPage },
|
|
338
358
|
{ name: 'BUSINESS_RESET_PASSWORD_SUCCESS', element: ResetPasswordSuccessPage },
|
|
339
|
-
{ name: 'BUSINESS_VERIFY_BRAND_INFO', element: BrandVerifyScreen }
|
|
359
|
+
{ name: 'BUSINESS_VERIFY_BRAND_INFO', element: BrandVerifyScreen },
|
|
360
|
+
{
|
|
361
|
+
name: 'BUSINESS_OPERATOR_ERROR_STEP',
|
|
362
|
+
element: BusinessOperatorError
|
|
363
|
+
}
|
|
340
364
|
];
|
|
341
365
|
export var passwordFeatureScreens = [
|
|
342
366
|
{
|
|
@@ -347,6 +371,10 @@ export var passwordFeatureScreens = [
|
|
|
347
371
|
name: 'PASSWORD_CREATE_PASSWORD_STEP',
|
|
348
372
|
element: CreatePasswordPage
|
|
349
373
|
},
|
|
374
|
+
{
|
|
375
|
+
name: 'PASSWORD_LOADING_DATA_STEP',
|
|
376
|
+
element: PasswordDataLoadingPage
|
|
377
|
+
},
|
|
350
378
|
{
|
|
351
379
|
name: 'PASSWORD_RESET_PASSWORD_OTP_STEP',
|
|
352
380
|
element: PasswordOTPPage
|
|
@@ -359,7 +387,11 @@ export var passwordFeatureScreens = [
|
|
|
359
387
|
name: 'PASSWORD_SUCCESS_FOUR_FLOWS_BUTTONS_STEP',
|
|
360
388
|
element: PasswordSuccessWithFlowPage
|
|
361
389
|
},
|
|
362
|
-
{ name: 'PASSWORD_RESET_PASSWORD_SUCCESS', element: PasswordResetPasswordSuccessPage }
|
|
390
|
+
{ name: 'PASSWORD_RESET_PASSWORD_SUCCESS', element: PasswordResetPasswordSuccessPage },
|
|
391
|
+
{
|
|
392
|
+
name: 'PASSWORD_OPERATOR_ERROR_STEP',
|
|
393
|
+
element: PasswordOperatorError
|
|
394
|
+
}
|
|
363
395
|
];
|
|
364
396
|
export var individualFeatureScreens = [
|
|
365
397
|
{
|
|
@@ -394,7 +426,11 @@ export var individualFeatureScreens = [
|
|
|
394
426
|
name: 'INDIVIDUAL_SUCCESS_FOUR_FLOWS_BUTTONS_STEP',
|
|
395
427
|
element: IndividualSuccessWithFlowPage
|
|
396
428
|
},
|
|
397
|
-
{ name: 'INDIVIDUAL_RESET_PASSWORD_SUCCESS', element: IndividualResetPasswordSuccessPage }
|
|
429
|
+
{ name: 'INDIVIDUAL_RESET_PASSWORD_SUCCESS', element: IndividualResetPasswordSuccessPage },
|
|
430
|
+
{
|
|
431
|
+
name: 'INDIVIDUAL_OPERATOR_ERROR_STEP',
|
|
432
|
+
element: IndividualOperatorError
|
|
433
|
+
}
|
|
398
434
|
];
|
|
399
435
|
export var bankFeatureScreens = [
|
|
400
436
|
{
|
|
@@ -417,7 +453,11 @@ export var bankFeatureScreens = [
|
|
|
417
453
|
name: 'BANK_SUCCESS_FOUR_FLOWS_BUTTONS_STEP',
|
|
418
454
|
element: BankSuccessWithFlowPage
|
|
419
455
|
},
|
|
420
|
-
{ name: 'BANK_RESET_PASSWORD_SUCCESS', element: BankResetPasswordSuccessPage }
|
|
456
|
+
{ name: 'BANK_RESET_PASSWORD_SUCCESS', element: BankResetPasswordSuccessPage },
|
|
457
|
+
{
|
|
458
|
+
name: 'BANK_OPERATOR_ERROR_STEP',
|
|
459
|
+
element: BankOperatorError
|
|
460
|
+
}
|
|
421
461
|
];
|
|
422
462
|
export var taxFeatureScreens = [
|
|
423
463
|
{
|
|
@@ -440,7 +480,11 @@ export var taxFeatureScreens = [
|
|
|
440
480
|
name: 'TAX_SUCCESS_FOUR_FLOWS_BUTTONS_STEP',
|
|
441
481
|
element: TaxSuccessWithFlowPage
|
|
442
482
|
},
|
|
443
|
-
{ name: 'TAX_RESET_PASSWORD_SUCCESS', element: TaxResetPasswordSuccessPage }
|
|
483
|
+
{ name: 'TAX_RESET_PASSWORD_SUCCESS', element: TaxResetPasswordSuccessPage },
|
|
484
|
+
{
|
|
485
|
+
name: 'TAX_OPERATOR_ERROR_STEP',
|
|
486
|
+
element: TaxOperatorError
|
|
487
|
+
}
|
|
444
488
|
];
|
|
445
489
|
export var signInFeatureScreens = [
|
|
446
490
|
{
|
|
@@ -458,6 +502,10 @@ export var signInFeatureScreens = [
|
|
|
458
502
|
{
|
|
459
503
|
name: 'SIGIN_PASSWORD_STEP',
|
|
460
504
|
element: SignInPasswordPage
|
|
505
|
+
},
|
|
506
|
+
{
|
|
507
|
+
name: 'SIGIN_OPERATOR_ERROR_STEP',
|
|
508
|
+
element: SignInOperatorError
|
|
461
509
|
}
|
|
462
510
|
];
|
|
463
511
|
export var entityFeatureScreens = [
|
|
@@ -485,7 +533,11 @@ export var entityFeatureScreens = [
|
|
|
485
533
|
name: 'ENTITY_SUCCESS_FOUR_FLOWS_BUTTONS_STEP',
|
|
486
534
|
element: EntitySuccessWithFlowPage
|
|
487
535
|
},
|
|
488
|
-
{ name: 'ENTITY_RESET_PASSWORD_SUCCESS', element: EntityResetPasswordSuccessPage }
|
|
536
|
+
{ name: 'ENTITY_RESET_PASSWORD_SUCCESS', element: EntityResetPasswordSuccessPage },
|
|
537
|
+
{
|
|
538
|
+
name: 'ENTITY_OPERATOR_ERROR_STEP',
|
|
539
|
+
element: EntityOperatorError
|
|
540
|
+
}
|
|
489
541
|
];
|
|
490
542
|
export var brandFeatureScreens = [
|
|
491
543
|
{
|
|
@@ -516,7 +568,11 @@ export var brandFeatureScreens = [
|
|
|
516
568
|
name: 'BRAND_SUCCESS_FOUR_FLOWS_BUTTONS_STEP',
|
|
517
569
|
element: BrandSuccessWithFlowPage
|
|
518
570
|
},
|
|
519
|
-
{ name: 'BRAND_RESET_PASSWORD_SUCCESS', element: BrandResetPasswordSuccessPage }
|
|
571
|
+
{ name: 'BRAND_RESET_PASSWORD_SUCCESS', element: BrandResetPasswordSuccessPage },
|
|
572
|
+
{
|
|
573
|
+
name: 'BRAND_OPERATOR_ERROR_STEP',
|
|
574
|
+
element: BrandOperatorError
|
|
575
|
+
}
|
|
520
576
|
];
|
|
521
577
|
export var boardFeatureScreens = [
|
|
522
578
|
{
|
|
@@ -530,5 +586,9 @@ export var boardFeatureScreens = [
|
|
|
530
586
|
{
|
|
531
587
|
name: 'BOARD_SUCCESS_FLOWS_BUTTONS_STEP',
|
|
532
588
|
element: BoardSuccessWithFlowPage
|
|
589
|
+
},
|
|
590
|
+
{
|
|
591
|
+
name: 'BOARD_OPERATOR_ERROR_STEP',
|
|
592
|
+
element: BoardOperatorError
|
|
533
593
|
}
|
|
534
594
|
];
|
|
@@ -2,6 +2,7 @@ import { LibConfig } from '../../@types';
|
|
|
2
2
|
export interface IndividualLibProps extends LibConfig {
|
|
3
3
|
verifyToken?: string;
|
|
4
4
|
configToken?: string;
|
|
5
|
+
loaderColor?: string;
|
|
5
6
|
}
|
|
6
7
|
export declare function IndividualElement(props: IndividualLibProps): import("react/jsx-runtime").JSX.Element;
|
|
7
8
|
export declare function renderIndividualLib(config: IndividualLibProps, elementId: string): {
|
|
@@ -36,7 +36,7 @@ import { individualFeatureScreens } from '../featuresScreens';
|
|
|
36
36
|
import { individualSelector, verifyLeadToken } from '../app/individual/individualStore';
|
|
37
37
|
import Background from '../shared/Background';
|
|
38
38
|
var Individual = memo(function (_a) {
|
|
39
|
-
var configToken = _a.configToken, verifyToken = _a.verifyToken, props = __rest(_a, ["configToken", "verifyToken"]);
|
|
39
|
+
var configToken = _a.configToken, verifyToken = _a.verifyToken, loaderColor = _a.loaderColor, props = __rest(_a, ["configToken", "verifyToken", "loaderColor"]);
|
|
40
40
|
var theme = useAppTheme().theme;
|
|
41
41
|
var _b = useAppSelector(settingsSelector), data = _b.data, error = _b.error, settingLoading = _b.loading;
|
|
42
42
|
var _c = useAppSelector(individualSelector), customLoading = _c.customLoading, individualError = _c.error, loading = _c.loading;
|
|
@@ -49,8 +49,11 @@ var Individual = memo(function (_a) {
|
|
|
49
49
|
loadingScreenName: 'INDIVIDUAL_LOADING_DATA_STEP',
|
|
50
50
|
navigation: featureScreensNavigation,
|
|
51
51
|
open: open,
|
|
52
|
+
mode: props.mode,
|
|
52
53
|
internalToken: verifyToken,
|
|
53
|
-
settingLoading: settingLoading
|
|
54
|
+
settingLoading: settingLoading,
|
|
55
|
+
operatorErrorScreenName: 'INDIVIDUAL_OPERATOR_ERROR_STEP',
|
|
56
|
+
isValidOperator: data.isValidOperator
|
|
54
57
|
});
|
|
55
58
|
React.useEffect(function () {
|
|
56
59
|
initializeGTM();
|
|
@@ -58,8 +61,8 @@ var Individual = memo(function (_a) {
|
|
|
58
61
|
title: 'Individual'
|
|
59
62
|
});
|
|
60
63
|
}, []);
|
|
61
|
-
var initialLoading = verifyToken ? settingLoading : settingLoading || customLoading;
|
|
62
|
-
return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Background, __assign({ open: open, isTapOrigin: isTapOrigin, loading: initialLoading }, { children: _jsx(AnimationFlow, __assign({ pointerEvents: loading ? 'none' : 'auto', isTapOrigin: isTapOrigin, loading: initialLoading, error: error, open: open, breakpoint: 'sm', screenId: activeScreen.name, merchantInfo: merchant, isMaturityExpress: isMaturityExpress, type: props.mode === 'content' ? 'CONTENT' : undefined, dialogEdgeFormat: data.appConfig.dialogEdgeFormat, features: appConfig.features }, { children: _jsx(FeatureContainer, __assign({ isMaturityExpress: isMaturityExpress }, { children: individualFeatureScreens.map(function (_a, index) {
|
|
64
|
+
var initialLoading = verifyToken && props.mode !== 'content' ? settingLoading : settingLoading || customLoading;
|
|
65
|
+
return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Background, __assign({ mode: props.mode, open: open, isTapOrigin: isTapOrigin, loading: initialLoading }, { children: _jsx(AnimationFlow, __assign({ pointerEvents: loading ? 'none' : 'auto', isTapOrigin: isTapOrigin, loading: initialLoading, loaderColor: loaderColor, error: error, open: open, breakpoint: 'sm', screenId: activeScreen.name, merchantInfo: merchant, isMaturityExpress: isMaturityExpress, type: props.mode === 'content' ? 'CONTENT' : undefined, dialogEdgeFormat: data.appConfig.dialogEdgeFormat, features: appConfig.features }, { children: _jsx(FeatureContainer, __assign({ mode: props.mode, isMaturityExpress: isMaturityExpress }, { children: individualFeatureScreens.map(function (_a, index) {
|
|
63
66
|
var Element = _a.element, name = _a.name;
|
|
64
67
|
var isActive = activeScreen.name === name;
|
|
65
68
|
return (_jsx(Collapse, __assign({ in: isActive, timeout: { enter: 1000, exit: 800 } }, { children: _jsx(Element, {}) }), index));
|
package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
export declare const RoleTextStyled: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
|
|
3
3
|
ref?: ((instance: HTMLSpanElement | null) => void) | React.RefObject<HTMLSpanElement> | null | undefined;
|
|
4
|
-
}, "className" | "style" | "classes" | "border" | "borderTop" | "borderRight" | "borderBottom" | "borderLeft" | "borderColor" | "borderRadius" | "display" | "displayPrint" | "overflow" | "textOverflow" | "visibility" | "whiteSpace" | "flexBasis" | "flexDirection" | "flexWrap" | "justifyContent" | "alignItems" | "alignContent" | "order" | "flex" | "flexGrow" | "flexShrink" | "alignSelf" | "justifyItems" | "justifySelf" | "gap" | "columnGap" | "rowGap" | "gridColumn" | "gridRow" | "gridAutoFlow" | "gridAutoColumns" | "gridAutoRows" | "gridTemplateColumns" | "gridTemplateRows" | "gridTemplateAreas" | "gridArea" | "bgcolor" | "color" | "zIndex" | "position" | "top" | "right" | "bottom" | "left" | "boxShadow" | "width" | "maxWidth" | "minWidth" | "height" | "maxHeight" | "minHeight" | "boxSizing" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "my" | "p" | "pt" | "pr" | "pb" | "pl" | "px" | "py" | "margin" | "marginTop" | "marginRight" | "marginBottom" | "marginLeft" | "marginX" | "marginY" | "padding" | "paddingTop" | "paddingRight" | "paddingBottom" | "paddingLeft" | "paddingX" | "paddingY" | "typography" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "letterSpacing" | "lineHeight" | "textAlign" | "textTransform" | "children" | "sx" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & {
|
|
4
|
+
}, "className" | "style" | "classes" | "border" | "borderTop" | "borderRight" | "borderBottom" | "borderLeft" | "borderColor" | "borderRadius" | "display" | "displayPrint" | "overflow" | "textOverflow" | "visibility" | "whiteSpace" | "flexBasis" | "flexDirection" | "flexWrap" | "justifyContent" | "alignItems" | "alignContent" | "order" | "flex" | "flexGrow" | "flexShrink" | "alignSelf" | "justifyItems" | "justifySelf" | "gap" | "columnGap" | "rowGap" | "gridColumn" | "gridRow" | "gridAutoFlow" | "gridAutoColumns" | "gridAutoRows" | "gridTemplateColumns" | "gridTemplateRows" | "gridTemplateAreas" | "gridArea" | "bgcolor" | "color" | "zIndex" | "position" | "top" | "right" | "bottom" | "left" | "boxShadow" | "width" | "maxWidth" | "minWidth" | "height" | "maxHeight" | "minHeight" | "boxSizing" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "my" | "p" | "pt" | "pr" | "pb" | "pl" | "px" | "py" | "margin" | "marginTop" | "marginRight" | "marginBottom" | "marginLeft" | "marginX" | "marginY" | "marginInline" | "marginInlineStart" | "marginInlineEnd" | "marginBlock" | "marginBlockStart" | "marginBlockEnd" | "padding" | "paddingTop" | "paddingRight" | "paddingBottom" | "paddingLeft" | "paddingX" | "paddingY" | "paddingInline" | "paddingInlineStart" | "paddingInlineEnd" | "paddingBlock" | "paddingBlockStart" | "paddingBlockEnd" | "typography" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "letterSpacing" | "lineHeight" | "textAlign" | "textTransform" | "children" | "sx" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & {
|
|
5
5
|
component?: React.ElementType<any> | undefined;
|
|
6
6
|
} & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
7
7
|
export interface AdditionalIndividualInfoProps {
|
package/build/features/individual/screens/AdditionalIndividualInfo/AdditionalIndividualInfo.js
CHANGED
|
@@ -17,9 +17,9 @@ import { useTranslation } from 'react-i18next';
|
|
|
17
17
|
import { handleCurrentActiveScreen, settingsSelector } from '../../../../app/settings';
|
|
18
18
|
import Box from '@mui/material/Box';
|
|
19
19
|
import { alpha, styled } from '@mui/material/styles';
|
|
20
|
-
import { useAppDispatch, useAppSelector, useSetFromDefaultValues, useLanguage, useFormReadOnly, useDataNoneEditable, useFormErrorAndUpdateReadOnly, useExcludeReadOnlyFelids, useDataVerified } from '../../../../hooks';
|
|
20
|
+
import { useAppDispatch, useAppSelector, useSetFromDefaultValues, useLanguage, useFormReadOnly, useDataNoneEditable, useFormErrorAndUpdateReadOnly, useExcludeReadOnlyFelids, useDataVerified, useFormDirtyCheck } from '../../../../hooks';
|
|
21
21
|
import { DocumentPurpose, IndividualType } from '../../../../@types';
|
|
22
|
-
import { deepCopy, getIndividualType, isKW } from '../../../../utils';
|
|
22
|
+
import { deepCopy, getIndividualType, isKW, isKWOrSA, sendCustomEventToGTM } from '../../../../utils';
|
|
23
23
|
import Form from '../../../../components/Form';
|
|
24
24
|
import Collapse from '../../../../components/Collapse';
|
|
25
25
|
import Text from '../../../../components/Text';
|
|
@@ -37,6 +37,7 @@ import SignatureFile from './SignatureFile';
|
|
|
37
37
|
import ShareCount from './ShareCount';
|
|
38
38
|
import ShareValue from './ShareValue';
|
|
39
39
|
import { getFileDetailsFromDocument } from '../../../../utils';
|
|
40
|
+
import IsAuthorizedSwitch from './IsAuthorizedSwitch';
|
|
40
41
|
var TextBoxStyled = styled(Box)(function (_a) {
|
|
41
42
|
var theme = _a.theme;
|
|
42
43
|
return (__assign(__assign({ display: 'flex', justifyContent: 'center', flexDirection: 'row', padding: theme.spacing(1.8, 2.5, 1.8, 2.5) }, theme.typography.body1), { lineHeight: theme.spacing(2.5), color: theme.palette.text.primary, fontWeight: theme.typography.fontWeightMedium }));
|
|
@@ -52,19 +53,21 @@ var ListType;
|
|
|
52
53
|
ListType["OccupationList"] = "OccupationList";
|
|
53
54
|
})(ListType || (ListType = {}));
|
|
54
55
|
var AdditionalIndividualInfo = function (_a) {
|
|
55
|
-
var _b;
|
|
56
|
+
var _b, _c, _d, _e;
|
|
56
57
|
var t = useTranslation().t;
|
|
57
58
|
var isAr = useLanguage().isAr;
|
|
58
59
|
var dispatch = useAppDispatch();
|
|
59
|
-
var
|
|
60
|
+
var _f = useAppSelector(individualSelector), data = _f.data, loading = _f.loading, error = _f.error;
|
|
60
61
|
var settingsData = useAppSelector(settingsSelector).data;
|
|
61
62
|
var verify = data.verify;
|
|
62
63
|
var user = (verify.responseBody || {}).user;
|
|
63
|
-
var
|
|
64
|
-
var
|
|
64
|
+
var _g = data.individualData, occupation = _g.occupation, sourceIncome = _g.sourceIncome, monthlyIncome = _g.monthlyIncome, employerName = _g.employerName, isPEP = _g.isPEP, isInfluencer = _g.isInfluencer, civilID = _g.civilID, signatureFileId = _g.signatureFileId, civilIDUploading = _g.civilIDUploading, signatureFileUploading = _g.signatureFileUploading, shareCount = _g.shareCount, shareValue = _g.shareValue, isAuthorized = _g.isAuthorized;
|
|
65
|
+
var _h = user || {}, documents = _h.documents, is_authorized = _h.is_authorized, data_status = _h.data_status, data_verification = _h.data_verification, names = _h.names, role = _h.role, occupationRes = _h.occupation, source_income = _h.source_income, monthly_income = _h.monthly_income, shares = _h.shares, is_relative_PEP = _h.is_relative_PEP, is_influencer = _h.is_influencer, objects = _h.objects;
|
|
65
66
|
var isKWCountry = React.useMemo(function () { return isKW(settingsData.businessCountry.iso2); }, [settingsData.businessCountry.iso2]);
|
|
67
|
+
var isOtherThanKWAndSa = React.useMemo(function () { return !isKWOrSA(settingsData.businessCountry.iso2); }, [settingsData.businessCountry.iso2]);
|
|
68
|
+
var showIsAuthorized = isOtherThanKWAndSa;
|
|
66
69
|
var methods = useForm({
|
|
67
|
-
resolver: yupResolver(IndividualInfoValidationSchema(objects, isKWCountry)),
|
|
70
|
+
resolver: yupResolver(IndividualInfoValidationSchema(objects, isKWCountry, showIsAuthorized)),
|
|
68
71
|
defaultValues: {
|
|
69
72
|
occupation: occupation,
|
|
70
73
|
sourceIncome: sourceIncome,
|
|
@@ -77,7 +80,8 @@ var AdditionalIndividualInfo = function (_a) {
|
|
|
77
80
|
civilIDUploading: civilIDUploading,
|
|
78
81
|
signatureFileUploading: signatureFileUploading,
|
|
79
82
|
shareCount: shareCount,
|
|
80
|
-
shareValue: shareValue
|
|
83
|
+
shareValue: shareValue,
|
|
84
|
+
isAuthorized: isAuthorized
|
|
81
85
|
},
|
|
82
86
|
mode: 'onChange'
|
|
83
87
|
});
|
|
@@ -91,22 +95,57 @@ var AdditionalIndividualInfo = function (_a) {
|
|
|
91
95
|
civilID: defaultCivilIdFiles,
|
|
92
96
|
signatureFileId: defaultSignatureFiles
|
|
93
97
|
});
|
|
98
|
+
var isDirty = useFormDirtyCheck(methods, {
|
|
99
|
+
occupation: ((_b = occupationRes === null || occupationRes === void 0 ? void 0 : occupationRes.chapter) === null || _b === void 0 ? void 0 : _b.id) && { id: occupationRes.chapter.id },
|
|
100
|
+
sourceIncome: source_income === null || source_income === void 0 ? void 0 : source_income[0],
|
|
101
|
+
monthlyIncome: monthly_income,
|
|
102
|
+
employerName: '',
|
|
103
|
+
isPEP: is_relative_PEP,
|
|
104
|
+
isInfluencer: is_influencer,
|
|
105
|
+
shareCount: (_c = shares === null || shares === void 0 ? void 0 : shares.count) === null || _c === void 0 ? void 0 : _c.toString(),
|
|
106
|
+
shareValue: (_d = shares === null || shares === void 0 ? void 0 : shares.value) === null || _d === void 0 ? void 0 : _d.toString(),
|
|
107
|
+
isAuthorized: is_authorized
|
|
108
|
+
}, [
|
|
109
|
+
{
|
|
110
|
+
name: 'occupation',
|
|
111
|
+
keys: ['id']
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
name: 'sourceIncome',
|
|
115
|
+
keys: ['id']
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
name: 'monthlyIncome',
|
|
119
|
+
keys: ['id']
|
|
120
|
+
}
|
|
121
|
+
]).isDirty;
|
|
94
122
|
var noneEditable = useDataNoneEditable(data_status, [
|
|
95
123
|
'occupation',
|
|
96
124
|
'source_of_income',
|
|
97
125
|
'monthly_income',
|
|
98
126
|
'is_relative_PEP',
|
|
99
|
-
'is_influencer'
|
|
127
|
+
'is_influencer',
|
|
128
|
+
'is_authorized'
|
|
100
129
|
]);
|
|
101
130
|
var readOnly = useFormErrorAndUpdateReadOnly(methods, originalReadOnly, noneEditable);
|
|
102
131
|
var getFelids = useExcludeReadOnlyFelids(methods, readOnly).getFelids;
|
|
103
132
|
var dataVerified = useDataVerified(data_verification, ['occupation', 'is_relative_PEP', 'is_influencer']);
|
|
104
|
-
var isOccupationVerified = dataVerified['occupation'] && (occupationRes === null || occupationRes === void 0 ? void 0 : occupationRes.id) === ((
|
|
133
|
+
var isOccupationVerified = dataVerified['occupation'] && (occupationRes === null || occupationRes === void 0 ? void 0 : occupationRes.id) === ((_e = watch('occupation')) === null || _e === void 0 ? void 0 : _e.id);
|
|
105
134
|
var isPEPSwitchVerified = dataVerified['is_relative_PEP'] && is_relative_PEP === watch('isPEP');
|
|
106
135
|
var isInfluencerSwitchVerified = dataVerified['is_influencer'] && is_influencer === watch('isInfluencer');
|
|
107
|
-
var
|
|
136
|
+
var isAuthorizedSwitchVerified = dataVerified['is_authorized'] && is_authorized === watch('isAuthorized');
|
|
137
|
+
var _j = React.useState(), listActive = _j[0], setListActive = _j[1];
|
|
138
|
+
React.useEffect(function () {
|
|
139
|
+
sendCustomEventToGTM({
|
|
140
|
+
event: 'Send Event',
|
|
141
|
+
event_category: 'Board Flows - Individual',
|
|
142
|
+
event_action: 'Income Details Page',
|
|
143
|
+
event_label: settingsData.businessCountry.iso2
|
|
144
|
+
});
|
|
145
|
+
}, []);
|
|
108
146
|
var onSubmit = function (data) {
|
|
109
|
-
|
|
147
|
+
var formData = __assign(__assign({}, deepCopy(getFelids(__assign(__assign({}, data), { signatureFileUploading: signatureFileUploading, civilIDUploading: civilIDUploading })))), { isDirty: isDirty });
|
|
148
|
+
dispatch(updateIndividualInfo(formData));
|
|
110
149
|
};
|
|
111
150
|
var onBack = function () {
|
|
112
151
|
dispatch(handleCurrentActiveScreen('INDIVIDUAL_PERSONAL_INDIVIDUAL_INFO_STEP'));
|
|
@@ -131,9 +170,10 @@ var AdditionalIndividualInfo = function (_a) {
|
|
|
131
170
|
return t('type_board_member');
|
|
132
171
|
return t('type_user');
|
|
133
172
|
};
|
|
134
|
-
var
|
|
173
|
+
var _k = React.useMemo(function () { return getIndividualType(objects); }, [objects]), isUser = _k.isUser, isShareholder = _k.isShareholder, isBoardMember = _k.isBoardMember, isBuyer = _k.isBuyer;
|
|
135
174
|
var isUserORBuyerType = isUser || isBuyer;
|
|
136
175
|
var isUserORBoardMemberType = isUser || isBoardMember;
|
|
176
|
+
var isAuthorizedValue = watch('isAuthorized');
|
|
137
177
|
var showSignatureFile = isUserORBuyerType;
|
|
138
178
|
var showOccupationFile = isUserORBuyerType;
|
|
139
179
|
var showSourceOfIncome = isUserORBuyerType;
|
|
@@ -144,7 +184,7 @@ var AdditionalIndividualInfo = function (_a) {
|
|
|
144
184
|
var isMonthlyIncomeListActive = listActive === ListType.MonthlyIncomeList;
|
|
145
185
|
var isOccupationListActive = listActive === ListType.OccupationList;
|
|
146
186
|
var disabled = !methods.formState.isValid || civilIDUploading || signatureFileUploading;
|
|
147
|
-
return (_jsxs(ScreenContainer, { children: [_jsx(Collapse, __assign({ in: !listActive && !!is_authorized, timeout: 500 }, { children:
|
|
187
|
+
return (_jsxs(ScreenContainer, { children: [_jsx(Collapse, __assign({ in: !listActive && !!is_authorized, timeout: 500 }, { children: _jsxs(TextBoxStyled, { children: [getUserName() || '', _jsx(RoleTextStyled, { children: getUserRole() || '' })] }) })), _jsx(FormProvider, __assign({}, methods, { children: _jsxs(Form, __assign({ onSubmit: methods.handleSubmit(onSubmit) }, { children: [_jsxs(Box, { children: [_jsx(Occupation, { isVerified: isOccupationVerified, readOnly: readOnly['occupation'] || noneEditable['occupation'], onListOpen: function () { return handleMenuClick(ListType.OccupationList); }, onListClose: function () { return handleMenuClick(); }, show: showOccupationFile && !isMonthlyIncomeListActive && !isSourceOfIncomeListActive }), _jsx(SourceOfIncome, { readOnly: readOnly['sourceIncome'] || noneEditable['source_of_income'], onListOpen: function () { return handleMenuClick(ListType.SourceOfIncomeList); }, onListClose: function () { return handleMenuClick(); }, show: showSourceOfIncome && !isMonthlyIncomeListActive && !isOccupationListActive }), _jsx(MonthlyIncome, { readOnly: readOnly['monthlyIncome'] || noneEditable['monthly_income'], show: showSourceOfIncome && !isSourceOfIncomeListActive && !isOccupationListActive, onListOpen: function () { return handleMenuClick(ListType.MonthlyIncomeList); }, onListClose: function () { return handleMenuClick(); } }), _jsx(ShareCount, { show: !listActive && showShares, readOnly: readOnly['shareCount'] }), _jsx(ShareValue, { show: !listActive && showShares, readOnly: readOnly['shareValue'] }), _jsx(IsAuthorizedSwitch, { show: !listActive && showIsAuthorized, readOnly: readOnly['isAuthorized'] || noneEditable['is_authorized'], isVerified: isAuthorizedSwitchVerified }), _jsxs(Collapse, __assign({ in: !listActive, timeout: 500 }, { children: [_jsx(CivilIDFile, { show: isKWCountry, readOnly: readOnly['civilID'], defaultFiles: defaultCivilIdFiles }), _jsx(SignatureFile, { show: isAuthorizedValue && showSignatureFile, readOnly: readOnly['signatureFileId'], defaultFiles: defaultSignatureFiles })] })), _jsx(PEPSwitch, { show: showIsPEP && !listActive, readOnly: readOnly['isPEP'] || noneEditable['is_relative_PEP'], isVerified: isPEPSwitchVerified }), _jsx(InfluencerSwitch, { show: showIsInfluencer && isKWCountry && !listActive, readOnly: readOnly['isInfluencer'] || noneEditable['is_influencer'], isVerified: isInfluencerSwitchVerified })] }), _jsx(Collapse, __assign({ in: !listActive, timeout: 500 }, { children: _jsx(Button, __assign({ onBackClicked: function () { return onBack(); }, isAr: isAr, disabled: disabled, loading: loading, error: t(error || '') }, { children: t('next') })) }))] })) }))] }));
|
|
148
188
|
};
|
|
149
189
|
export default React.memo(AdditionalIndividualInfo);
|
|
150
190
|
AdditionalIndividualInfo.defaultProps = {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export declare const InfoIconStyled: import("@emotion/styled").StyledComponent<import("@mui/material").SvgIconOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<React.SVGProps<SVGSVGElement>, "ref"> & {
|
|
3
|
+
ref?: ((instance: SVGSVGElement | null) => void) | React.RefObject<SVGSVGElement> | null | undefined;
|
|
4
|
+
}, "className" | "style" | "classes" | "color" | "fontSize" | "shapeRendering" | "children" | "sx" | "htmlColor" | "inheritViewBox" | "titleAccess" | "viewBox"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
5
|
+
export declare const InfoOutlinedIconStyled: import("@emotion/styled").StyledComponent<import("@mui/material").SvgIconOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<React.SVGProps<SVGSVGElement>, "ref"> & {
|
|
6
|
+
ref?: ((instance: SVGSVGElement | null) => void) | React.RefObject<SVGSVGElement> | null | undefined;
|
|
7
|
+
}, "className" | "style" | "classes" | "color" | "fontSize" | "shapeRendering" | "children" | "sx" | "htmlColor" | "inheritViewBox" | "titleAccess" | "viewBox"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
8
|
+
export interface IsAuthorizedSwitchProps {
|
|
9
|
+
show: boolean;
|
|
10
|
+
readOnly?: boolean;
|
|
11
|
+
isVerified?: boolean;
|
|
12
|
+
}
|
|
13
|
+
declare const _default: React.MemoExoticComponent<({ show, readOnly, isVerified }: IsAuthorizedSwitchProps) => import("react/jsx-runtime").JSX.Element>;
|
|
14
|
+
export default _default;
|
|
@@ -0,0 +1,76 @@
|
|
|
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
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import * as React from 'react';
|
|
14
|
+
import { useTranslation } from 'react-i18next';
|
|
15
|
+
import { useFormContext, useController } from 'react-hook-form';
|
|
16
|
+
import { styled, alpha } from '@mui/material/styles';
|
|
17
|
+
import InfoIcon from '@mui/icons-material/Info';
|
|
18
|
+
import Box from '@mui/material/Box';
|
|
19
|
+
import InfoOutlinedIcon from '@mui/icons-material/InfoOutlined';
|
|
20
|
+
import { ScreenContainer } from '../../../shared/Containers';
|
|
21
|
+
import { useAppSelector, useAppDispatch } from '../../../../hooks';
|
|
22
|
+
import Collapse from '../../../../components/Collapse';
|
|
23
|
+
import RadioGroup from '../../../../components/RadioGroup';
|
|
24
|
+
import RadioLabel from '../../../../components/RadioLabel';
|
|
25
|
+
import Text from '../../../../components/Text';
|
|
26
|
+
import Mandatory from '../../../shared/Mandatory';
|
|
27
|
+
import CheckIcon from '../../../shared/CheckIcon';
|
|
28
|
+
import { individualSelector, clearError } from '../../../app/individual/individualStore';
|
|
29
|
+
var LabelTextStyled = styled(Text)(function (_a) {
|
|
30
|
+
var theme = _a.theme;
|
|
31
|
+
return (__assign(__assign({}, theme.typography.caption), { color: alpha(theme.palette.text.primary, 0.6), marginBlockEnd: theme.spacing(0.625) }));
|
|
32
|
+
});
|
|
33
|
+
var RadioGroupStyled = styled(RadioGroup)(function (_a) {
|
|
34
|
+
var theme = _a.theme;
|
|
35
|
+
return ({
|
|
36
|
+
marginInlineStart: theme.spacing(0.25)
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
export var InfoIconStyled = styled(InfoIcon)(function (_a) {
|
|
40
|
+
var theme = _a.theme;
|
|
41
|
+
return ({
|
|
42
|
+
width: theme.spacing(2.75),
|
|
43
|
+
height: theme.spacing(2.125),
|
|
44
|
+
cursor: 'pointer',
|
|
45
|
+
color: alpha(theme.palette.text.primary, 0.4)
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
export var InfoOutlinedIconStyled = styled(InfoOutlinedIcon)(function (_a) {
|
|
49
|
+
var theme = _a.theme;
|
|
50
|
+
return ({
|
|
51
|
+
width: theme.spacing(2.75),
|
|
52
|
+
height: theme.spacing(2.125),
|
|
53
|
+
cursor: 'pointer',
|
|
54
|
+
color: alpha(theme.palette.text.primary, 0.4)
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
var RadioLabelStyled = styled('span')(function () { return ({
|
|
58
|
+
display: 'flex'
|
|
59
|
+
}); });
|
|
60
|
+
var IsAuthorizedSwitch = function (_a) {
|
|
61
|
+
var show = _a.show, readOnly = _a.readOnly, isVerified = _a.isVerified;
|
|
62
|
+
var control = useFormContext().control;
|
|
63
|
+
var t = useTranslation().t;
|
|
64
|
+
var authorizedControl = useController({ name: 'isAuthorized', control: control });
|
|
65
|
+
var error = useAppSelector(individualSelector).error;
|
|
66
|
+
var dispatch = useAppDispatch();
|
|
67
|
+
var handleOnChange = function (_a) {
|
|
68
|
+
var target = _a.target;
|
|
69
|
+
if (error)
|
|
70
|
+
dispatch(clearError());
|
|
71
|
+
authorizedControl.field.onChange(target.value === 'yes');
|
|
72
|
+
};
|
|
73
|
+
var authorizedValue = authorizedControl.field.value;
|
|
74
|
+
return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, __assign({ sx: { pt: 2.5, pl: 2.5, pr: 2.5 } }, { children: [_jsx(Box, __assign({ style: { display: 'flex', justifyContent: 'space-between' } }, { children: _jsxs(LabelTextStyled, { children: [t('is_authorized_user_label'), _jsx(Mandatory, {})] }) })), _jsxs(RadioGroupStyled, __assign({ readOnly: readOnly, value: authorizedValue ? 'yes' : 'no', onChange: readOnly ? undefined : handleOnChange }, { children: [_jsx(RadioLabel, { value: 'yes', label: _jsxs(RadioLabelStyled, { children: [t('yes'), authorizedValue && isVerified && _jsx(CheckIcon, { sx: { marginInlineStart: '5px' }, isVerified: isVerified })] }) }), _jsx(RadioLabel, { value: 'no', label: _jsxs(RadioLabelStyled, { children: [t('no'), authorizedValue === false && isVerified && _jsx(CheckIcon, { sx: { marginInlineStart: '5px' }, isVerified: isVerified })] }) })] }))] })) })));
|
|
75
|
+
};
|
|
76
|
+
export default React.memo(IsAuthorizedSwitch);
|
|
@@ -16,7 +16,7 @@ import { useController, useFormContext } from 'react-hook-form';
|
|
|
16
16
|
import Box from '@mui/material/Box';
|
|
17
17
|
import { styled } from '@mui/material/styles';
|
|
18
18
|
import { settingsSelector } from '../../../../app/settings';
|
|
19
|
-
import { hasVerifiedValue } from '../../../../utils';
|
|
19
|
+
import { getCurrencyByCountryIso2, hasVerifiedValue } from '../../../../utils';
|
|
20
20
|
import { useAppDispatch, useAppSelector, useLanguage } from '../../../../hooks';
|
|
21
21
|
import Collapse from '../../../../components/Collapse';
|
|
22
22
|
import Text from '../../../../components/Text';
|
|
@@ -52,6 +52,9 @@ var MonthlyIncome = function (props) {
|
|
|
52
52
|
return false;
|
|
53
53
|
return hasVerifiedValue(user === null || user === void 0 ? void 0 : user.data_verification, "monthly_income.".concat(item.id));
|
|
54
54
|
};
|
|
55
|
+
var getCurrency = React.useMemo(function () {
|
|
56
|
+
return t(getCurrencyByCountryIso2(countryCode.iso2));
|
|
57
|
+
}, [countryCode.iso2]);
|
|
55
58
|
React.useEffect(function () {
|
|
56
59
|
if ((monthlyIncomeList === null || monthlyIncomeList === void 0 ? void 0 : monthlyIncomeList.length) > 0) {
|
|
57
60
|
setIncomeList(monthlyIncomeList);
|
|
@@ -81,7 +84,7 @@ var MonthlyIncome = function (props) {
|
|
|
81
84
|
var income = monthlyIncomeControl.field.value;
|
|
82
85
|
var error = (_a = monthlyIncomeControl.fieldState.error) === null || _a === void 0 ? void 0 : _a.message;
|
|
83
86
|
return (_jsx(Collapse, __assign({ in: props.show }, { children: _jsxs(ScreenContainer, __assign({ sx: { pb: 0 } }, { children: [_jsx(InputSelect, { label: t('please_enter_actual_income', {
|
|
84
|
-
currency:
|
|
87
|
+
currency: getCurrency
|
|
85
88
|
}), required: true, readOnly: props.readOnly, onClick: !!anchorEl ? function () { return onCloseList(); } : onOpenList, placeholder: t('choose_any_source_of_income'), value: (isAr ? income === null || income === void 0 ? void 0 : income.range.ar : income === null || income === void 0 ? void 0 : income.range.en) || '', warningMessage: error && t(error), endAdornment: _jsx(EndAdornmentExpanded, { isVerified: isMonthlyIncomeVerified(income), anchorEl: anchorEl }) }), _jsx(Collapse, __assign({ in: !!anchorEl }, { children: _jsx(SimpleList, { searchKeyPath: 'range.en', searchValuePath: ['range.en', 'range.ar'], list: incomeList, onSelectItem: onSelectItem, renderItem: function (item) {
|
|
86
89
|
return (_jsxs(_Fragment, { children: [_jsx(Container, { children: _jsx(IncomeText, __assign({ isSelected: item.id === (income === null || income === void 0 ? void 0 : income.id) }, { children: isAr ? item.range.ar : item === null || item === void 0 ? void 0 : item.range.en })) }), item.id === (income === null || income === void 0 ? void 0 : income.id) && _jsx(CheckIcon, { isVerified: isMonthlyIncomeVerified(item) })] }));
|
|
87
90
|
} }) }))] })) })));
|
|
@@ -1,32 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
export declare const InfoIconStyled: import("@emotion/styled").StyledComponent<{
|
|
3
|
-
children?: React.ReactNode;
|
|
4
|
-
classes?: Partial<import("@mui/material").SvgIconClasses> | undefined;
|
|
5
|
-
color?: "inherit" | "disabled" | "error" | "info" | "success" | "action" | "primary" | "secondary" | "warning" | undefined;
|
|
6
|
-
fontSize?: "small" | "inherit" | "medium" | "large" | undefined;
|
|
7
|
-
htmlColor?: string | undefined;
|
|
8
|
-
inheritViewBox?: boolean | undefined;
|
|
9
|
-
shapeRendering?: string | undefined;
|
|
10
|
-
sx?: import("@mui/material/styles").SxProps<import("@mui/material/styles").Theme> | undefined;
|
|
11
|
-
titleAccess?: string | undefined;
|
|
12
|
-
viewBox?: string | undefined;
|
|
13
|
-
} & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<React.SVGProps<SVGSVGElement>, "ref"> & {
|
|
2
|
+
export declare const InfoIconStyled: import("@emotion/styled").StyledComponent<import("@mui/material").SvgIconOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<React.SVGProps<SVGSVGElement>, "ref"> & {
|
|
14
3
|
ref?: ((instance: SVGSVGElement | null) => void) | React.RefObject<SVGSVGElement> | null | undefined;
|
|
15
|
-
},
|
|
16
|
-
export declare const InfoOutlinedIconStyled: import("@emotion/styled").StyledComponent<{
|
|
17
|
-
children?: React.ReactNode;
|
|
18
|
-
classes?: Partial<import("@mui/material").SvgIconClasses> | undefined;
|
|
19
|
-
color?: "inherit" | "disabled" | "error" | "info" | "success" | "action" | "primary" | "secondary" | "warning" | undefined;
|
|
20
|
-
fontSize?: "small" | "inherit" | "medium" | "large" | undefined;
|
|
21
|
-
htmlColor?: string | undefined;
|
|
22
|
-
inheritViewBox?: boolean | undefined;
|
|
23
|
-
shapeRendering?: string | undefined;
|
|
24
|
-
sx?: import("@mui/material/styles").SxProps<import("@mui/material/styles").Theme> | undefined;
|
|
25
|
-
titleAccess?: string | undefined;
|
|
26
|
-
viewBox?: string | undefined;
|
|
27
|
-
} & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<React.SVGProps<SVGSVGElement>, "ref"> & {
|
|
4
|
+
}, "className" | "style" | "classes" | "color" | "fontSize" | "shapeRendering" | "children" | "sx" | "htmlColor" | "inheritViewBox" | "titleAccess" | "viewBox"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
5
|
+
export declare const InfoOutlinedIconStyled: import("@emotion/styled").StyledComponent<import("@mui/material").SvgIconOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<React.SVGProps<SVGSVGElement>, "ref"> & {
|
|
28
6
|
ref?: ((instance: SVGSVGElement | null) => void) | React.RefObject<SVGSVGElement> | null | undefined;
|
|
29
|
-
},
|
|
7
|
+
}, "className" | "style" | "classes" | "color" | "fontSize" | "shapeRendering" | "children" | "sx" | "htmlColor" | "inheritViewBox" | "titleAccess" | "viewBox"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
30
8
|
export interface PEPSwitchProps {
|
|
31
9
|
show: boolean;
|
|
32
10
|
readOnly?: boolean;
|