tg-core-components 5.5.0-bethard → 5.5.0-master

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 (107) hide show
  1. package/es/components/AcceptUpdatedTaC/index.js +8 -3
  2. package/es/components/Checkbox/index.js +93 -0
  3. package/es/components/Deposit/CardInput/index.js +1 -3
  4. package/es/components/Input/index.js +222 -22
  5. package/es/components/InputWrapper/index.js +69 -0
  6. package/es/components/List/ListItem.js +1 -7
  7. package/es/components/Notification.js +4 -4
  8. package/es/components/Select/index.js +202 -64
  9. package/es/components/Select/test.js +111 -0
  10. package/es/index.js +2 -2
  11. package/es/lib/utils/translate.js +1 -8
  12. package/es/misc/countryEmojiFlags.js +0 -1
  13. package/es/widgets/AccountDetail/index.js +53 -77
  14. package/es/widgets/ActivateWidget/index.js +59 -293
  15. package/es/widgets/BonusWidget/BonusCode.js +24 -17
  16. package/es/widgets/BonusWidget/index.js +83 -45
  17. package/es/widgets/Cashier/Payment/index.js +2 -0
  18. package/es/widgets/CashierAccordion/Deposit/BonusCodeInput/index.js +9 -6
  19. package/es/widgets/CashierAccordion/Deposit/DepositWidget/index.js +47 -85
  20. package/es/widgets/CashierAccordion/Deposit/PaymentForm/index.js +2 -6
  21. package/es/widgets/CashierAccordion/Payment/PaymentAccountForms/astroPayBankTransaltions.js +12 -0
  22. package/es/widgets/CashierAccordion/Payment/PaymentAccountForms/index.js +163 -347
  23. package/es/widgets/CashierAccordion/Payment/PaymentAccountParser.js +0 -6
  24. package/es/widgets/CashierAccordion/Payment/PaymentMethodSelector/index.js +2 -2
  25. package/es/widgets/CashierAccordion/Payment/index.js +2 -0
  26. package/es/widgets/CashierAccordion/Withdraw/WithdrawWidget/index.js +8 -22
  27. package/es/widgets/ChangePassword/index.js +53 -40
  28. package/es/widgets/HistoryWidget/index.js +69 -51
  29. package/es/widgets/HistoryWidget/message.js +17 -20
  30. package/es/widgets/RequestResetPassword/index.js +15 -14
  31. package/es/widgets/ResetPassword/index.js +22 -18
  32. package/es/widgets/ResponsibleGamingAccordion/LimitStatus/index.js +5 -2
  33. package/es/widgets/ResponsibleGamingAccordion/PeriodItemContent/index.js +1 -2
  34. package/es/widgets/ResponsibleGamingSingleSignUp/AmountItem/index.js +1 -2
  35. package/es/widgets/ResponsibleGamingWidget/Timespan.js +14 -24
  36. package/es/widgets/ResponsibleGamingWidget/helpers.js +2 -2
  37. package/es/widgets/ResponsibleGamingWidget/validate.js +2 -6
  38. package/es/widgets/Settings/index.js +2 -2
  39. package/es/widgets/SignIn/SignInForm.js +4 -6
  40. package/es/widgets/SignIn/index.js +21 -21
  41. package/es/widgets/SignUp/ContactInfoStep.js +5 -6
  42. package/es/widgets/SportsbookSettings/index.js +10 -24
  43. package/es/widgets/Subscriptions/index.js +3 -5
  44. package/lib/components/AcceptUpdatedTaC/index.js +11 -3
  45. package/lib/components/Checkbox/index.js +106 -0
  46. package/lib/components/Deposit/CardInput/index.js +1 -3
  47. package/lib/components/Input/index.js +223 -26
  48. package/lib/components/InputWrapper/index.js +85 -0
  49. package/lib/components/List/ListItem.js +1 -10
  50. package/lib/components/Notification.js +3 -3
  51. package/lib/components/Select/index.js +209 -63
  52. package/lib/components/Select/test.js +121 -0
  53. package/lib/index.js +7 -7
  54. package/lib/lib/utils/translate.js +1 -8
  55. package/lib/misc/countryEmojiFlags.js +0 -1
  56. package/lib/widgets/AccountDetail/index.js +53 -86
  57. package/lib/widgets/ActivateWidget/index.js +58 -305
  58. package/lib/widgets/BonusWidget/BonusCode.js +24 -20
  59. package/lib/widgets/BonusWidget/index.js +85 -44
  60. package/lib/widgets/Cashier/Payment/index.js +2 -0
  61. package/lib/widgets/CashierAccordion/Deposit/BonusCodeInput/index.js +13 -7
  62. package/lib/widgets/CashierAccordion/Deposit/DepositWidget/index.js +50 -88
  63. package/lib/widgets/CashierAccordion/Deposit/PaymentForm/index.js +2 -9
  64. package/lib/widgets/CashierAccordion/Payment/PaymentAccountForms/astroPayBankTransaltions.js +12 -0
  65. package/lib/widgets/CashierAccordion/Payment/PaymentAccountForms/index.js +195 -378
  66. package/lib/widgets/CashierAccordion/Payment/PaymentAccountParser.js +0 -6
  67. package/lib/widgets/CashierAccordion/Payment/PaymentMethodSelector/index.js +2 -2
  68. package/lib/widgets/CashierAccordion/Payment/index.js +2 -0
  69. package/lib/widgets/CashierAccordion/Withdraw/WithdrawWidget/index.js +10 -24
  70. package/lib/widgets/ChangePassword/index.js +53 -43
  71. package/lib/widgets/HistoryWidget/index.js +69 -51
  72. package/lib/widgets/HistoryWidget/message.js +17 -20
  73. package/lib/widgets/RequestResetPassword/index.js +15 -17
  74. package/lib/widgets/ResetPassword/index.js +25 -21
  75. package/lib/widgets/ResponsibleGamingAccordion/LimitStatus/index.js +5 -2
  76. package/lib/widgets/ResponsibleGamingAccordion/PeriodItemContent/index.js +1 -2
  77. package/lib/widgets/ResponsibleGamingSingleSignUp/AmountItem/index.js +1 -2
  78. package/lib/widgets/ResponsibleGamingWidget/Timespan.js +14 -24
  79. package/lib/widgets/ResponsibleGamingWidget/helpers.js +2 -2
  80. package/lib/widgets/ResponsibleGamingWidget/validate.js +2 -6
  81. package/lib/widgets/Settings/index.js +6 -6
  82. package/lib/widgets/SignIn/SignInForm.js +7 -6
  83. package/lib/widgets/SignIn/index.js +25 -25
  84. package/lib/widgets/SignUp/ContactInfoStep.js +8 -6
  85. package/lib/widgets/SportsbookSettings/index.js +10 -24
  86. package/lib/widgets/Subscriptions/index.js +3 -11
  87. package/package.json +8 -3
  88. package/es/components/AutocompleteInput/index.js +0 -104
  89. package/es/components/Input/BirthdateInput.js +0 -174
  90. package/es/components/Input/Checkbox.js +0 -51
  91. package/es/components/Input/Input.js +0 -73
  92. package/es/components/Input/PasswordInput.js +0 -84
  93. package/es/components/Input/PhoneNumberInput.js +0 -113
  94. package/es/components/Input/input.test.js +0 -80
  95. package/es/components/Input/old-input.test.js +0 -100
  96. package/es/components/common.js +0 -339
  97. package/es/widgets/CashierAccordion/Deposit/PaymentForm/NewTab.js +0 -28
  98. package/lib/components/AutocompleteInput/index.js +0 -118
  99. package/lib/components/Input/BirthdateInput.js +0 -195
  100. package/lib/components/Input/Checkbox.js +0 -65
  101. package/lib/components/Input/Input.js +0 -87
  102. package/lib/components/Input/PasswordInput.js +0 -101
  103. package/lib/components/Input/PhoneNumberInput.js +0 -130
  104. package/lib/components/Input/input.test.js +0 -89
  105. package/lib/components/Input/old-input.test.js +0 -107
  106. package/lib/components/common.js +0 -359
  107. package/lib/widgets/CashierAccordion/Deposit/PaymentForm/NewTab.js +0 -44
@@ -30,10 +30,6 @@ var _Input = require('../../components/Input');
30
30
 
31
31
  var _Input2 = _interopRequireDefault(_Input);
32
32
 
33
- var _Select = require('../../components/Select');
34
-
35
- var _Select2 = _interopRequireDefault(_Select);
36
-
37
33
  var _translate = require('../../lib/utils/translate');
38
34
 
39
35
  var _translate2 = _interopRequireDefault(_translate);
@@ -42,14 +38,6 @@ var _Button = require('../../components/Button');
42
38
 
43
39
  var _Button2 = _interopRequireDefault(_Button);
44
40
 
45
- var _countryEmojiFlags = require('../../misc/countryEmojiFlags');
46
-
47
- var _countryEmojiFlags2 = _interopRequireDefault(_countryEmojiFlags);
48
-
49
- var _Icon = require('../../components/Icon');
50
-
51
- var _Icon2 = _interopRequireDefault(_Icon);
52
-
53
41
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
54
42
 
55
43
  var AccountDetail = function AccountDetail(_ref) {
@@ -58,7 +46,6 @@ var AccountDetail = function AccountDetail(_ref) {
58
46
  errors = _ref.errors,
59
47
  onSubmit = _ref.onSubmit,
60
48
  jurisdiction = _ref.jurisdiction,
61
- countries = _ref.countries,
62
49
  isLoading = _ref.isLoading;
63
50
 
64
51
  return _react2.default.createElement(
@@ -71,136 +58,113 @@ var AccountDetail = function AccountDetail(_ref) {
71
58
  disabled: true,
72
59
  className: 'layout-item-6',
73
60
  value: data.FirstName,
74
- label: (0, _translate2.default)({
61
+ title: (0, _translate2.default)({
75
62
  id: 'title.first_name',
76
63
  defaultMessage: 'First name'
77
64
  }, intl),
65
+ placeholder: (0, _translate2.default)({ id: 'label.first_name' }, intl),
78
66
  name: 'FirstName',
79
- status: errors.FirstName && 'failure' || 'idle',
80
- statusText: errors.FirstName && (0, _translate2.default)({ id: errors.FirstName }, intl)
67
+ error: errors.FirstName && (0, _translate2.default)({ id: errors.FirstName }, intl)
81
68
  }),
82
69
  _react2.default.createElement(_Input2.default, {
83
70
  disabled: true,
84
71
  className: 'layout-item-6',
85
72
  value: data.LastName,
86
- label: (0, _translate2.default)({
73
+ title: (0, _translate2.default)({
87
74
  id: 'title.last_name',
88
75
  defaultMessage: 'Last name'
89
76
  }, intl),
77
+ placeholder: (0, _translate2.default)({ id: 'label.last_name' }, intl),
90
78
  name: 'LastName',
91
- status: errors.LastName && 'failure' || 'idle',
92
- statusText: errors.LastName && (0, _translate2.default)({ id: errors.LastName }, intl)
79
+ error: errors.LastName && (0, _translate2.default)({ id: errors.LastName }, intl)
80
+ })
81
+ ),
82
+ _react2.default.createElement(
83
+ 'div',
84
+ { className: 'layout-item' },
85
+ _react2.default.createElement(_Input2.default, {
86
+ title: (0, _translate2.default)({
87
+ id: 'title.address',
88
+ defaultMessage: 'Address'
89
+ }, intl),
90
+ placeholder: (0, _translate2.default)({ id: 'label.address' }, intl),
91
+ name: 'Address1',
92
+ value: data.Address1,
93
+ error: errors.Address1 && (0, _translate2.default)({ id: errors.Address1 }, intl),
94
+ autoComplete: 'off'
93
95
  })
94
96
  ),
95
- _react2.default.createElement(_Input2.default, {
96
- label: (0, _translate2.default)({
97
- id: 'title.address',
98
- defaultMessage: 'Address'
99
- }, intl),
100
- name: 'Address1',
101
- value: data.Address1,
102
- status: errors.Address1 && 'failure' || 'idle',
103
- statusText: errors.Address1 && (0, _translate2.default)({ id: 'errors.Address1' }, intl),
104
- autoComplete: 'off'
105
- }),
106
97
  _react2.default.createElement(
107
98
  'div',
108
99
  { className: 'layout-item' },
109
100
  _react2.default.createElement(_Input2.default, {
110
101
  className: 'layout-item-6',
111
102
  value: data.Zip,
112
- label: (0, _translate2.default)({ id: 'title.zip', defaultMessage: 'Zip' }, intl),
103
+ title: (0, _translate2.default)({ id: 'title.zip', defaultMessage: 'Zip' }, intl),
104
+ placeholder: (0, _translate2.default)({ id: 'label.zip_code' }, intl),
113
105
  name: 'Zip',
114
- status: errors.Zip && 'failure' || 'idle',
115
- statusText: errors.Zip && (0, _translate2.default)({ id: errors.Zip }, intl),
106
+ error: errors.Zip && (0, _translate2.default)({ id: errors.Zip }, intl),
116
107
  autoComplete: 'off'
117
108
  }),
118
109
  _react2.default.createElement(_Input2.default, {
119
110
  className: 'layout-item-6',
120
111
  value: data.City,
121
- label: (0, _translate2.default)({
112
+ title: (0, _translate2.default)({
122
113
  id: 'title.city',
123
114
  defaultMessage: 'City'
124
115
  }, intl),
116
+ placeholder: (0, _translate2.default)({ id: 'label.city' }, intl),
125
117
  name: 'City',
126
- status: errors.City && 'failure' || 'idle',
127
- statusText: errors.City && (0, _translate2.default)({ id: errors.City }, intl),
118
+ error: errors.City && (0, _translate2.default)({ id: errors.City }, intl),
128
119
  autoComplete: 'off'
129
120
  })
130
121
  ),
131
122
  _react2.default.createElement(
132
123
  'div',
133
124
  { className: 'layout-item' },
134
- _react2.default.createElement(
135
- _Select2.default,
136
- {
137
- disabled: true,
138
- className: 'layout-item-6',
139
- value: countries && countries.value.find(function (c) {
140
- return c.value === data.Country;
141
- }) && countries.value.find(function (c) {
142
- return c.value === data.Country;
143
- }).value,
144
- label: (0, _translate2.default)({
145
- id: 'title.country',
146
- defaultMessage: 'Country'
147
- }, intl),
148
- name: 'Country',
149
- icon: _react2.default.createElement(_Icon2.default, { icon: 'flag' }) },
150
- _react2.default.createElement(
151
- _Select2.default.Option,
152
- {
153
- value: countries && countries.value.find(function (c) {
154
- return c.value === data.Country;
155
- }) && countries.value.find(function (c) {
156
- return c.value === data.Country;
157
- }).value },
158
- countries && countries.value.find(function (c) {
159
- return c.value === data.Country;
160
- }) && countries.value.find(function (c) {
161
- return c.value === data.Country;
162
- }).label
163
- )
164
- ),
125
+ _react2.default.createElement(_Input2.default, {
126
+ disabled: true,
127
+ className: 'layout-item-6',
128
+ value: data.Country,
129
+ title: (0, _translate2.default)({
130
+ id: 'title.country',
131
+ defaultMessage: 'Country'
132
+ }, intl),
133
+ placeholder: (0, _translate2.default)({ id: 'label.country' }, intl),
134
+ name: 'Country'
135
+ }),
165
136
  _react2.default.createElement(_Input2.default, {
166
137
  disabled: true,
167
138
  className: 'layout-item-6',
168
139
  value: intl.formatDate(new Date(data.BirthDate)),
169
- label: (0, _translate2.default)({
140
+ title: (0, _translate2.default)({
170
141
  id: 'title.user_birthday',
171
142
  defaultMessage: 'Birthday'
172
143
  }, intl),
144
+ placeholder: (0, _translate2.default)({ id: 'label.user_birthday' }, intl),
173
145
  name: 'BirthDate'
174
146
  })
175
147
  ),
176
148
  _react2.default.createElement(_Input2.default, {
177
149
  disabled: true,
178
150
  value: data.Email,
179
- label: (0, _translate2.default)({
151
+ title: (0, _translate2.default)({
180
152
  id: 'title.email',
181
153
  defaultMessage: 'Email'
182
154
  }, intl),
155
+ placeholder: (0, _translate2.default)({ id: 'label.email' }, intl),
183
156
  name: 'Email'
184
157
  }),
185
158
  _react2.default.createElement(_Input2.default, {
186
159
  value: data.MobilePhoneNumber,
187
- type: 'tel',
188
- label: (0, _translate2.default)({
160
+ title: (0, _translate2.default)({
189
161
  id: 'title.mobile_number',
190
162
  defaultMessage: 'Mobile number'
191
163
  }, intl),
192
- callingCodes: countries ? countries.value.sort(function (a, b) {
193
- return Number(a.callingCode) - Number(b.callingCode);
194
- }).map(function (i) {
195
- return {
196
- value: '00' + i.callingCode,
197
- label: '+' + i.callingCode + ' ' + (_countryEmojiFlags2.default[i.value] || '')
198
- };
199
- }) : [],
164
+ placeholder: (0, _translate2.default)({ id: 'label.mobile_number' }, intl),
200
165
  name: 'MobilePhoneNumber',
201
166
  autoComplete: 'off',
202
- status: errors.MobilePhoneNumber && 'failure' || 'idle',
203
- statusText: errors.MobilePhoneNumber && (0, _translate2.default)({ id: errors.MobilePhoneNumber }, intl)
167
+ error: errors.MobilePhoneNumber && (0, _translate2.default)({ id: errors.MobilePhoneNumber }, intl)
204
168
  }),
205
169
  !['sga', 'dga'].includes(jurisdiction) && _react2.default.createElement(
206
170
  _react.Fragment,
@@ -209,13 +173,16 @@ var AccountDetail = function AccountDetail(_ref) {
209
173
  _react2.default.createElement(_Input2.default, {
210
174
  value: '',
211
175
  type: 'password',
212
- label: (0, _translate2.default)({
176
+ title: (0, _translate2.default)({
213
177
  id: 'title.password',
214
178
  defaultMessage: 'Password'
215
179
  }, intl),
180
+ placeholder: (0, _translate2.default)({
181
+ id: 'label.old_password',
182
+ defaultMessage: 'Password'
183
+ }, intl),
216
184
  name: 'Password',
217
- status: errors.Password && 'failure' || 'idle',
218
- statusText: errors.Password && (0, _translate2.default)({ id: errors.Password }, intl),
185
+ error: errors.Password && (0, _translate2.default)({ id: errors.Password }, intl),
219
186
  autoComplete: 'off'
220
187
  })
221
188
  ),
@@ -239,7 +206,7 @@ AccountDetail.propTypes = {
239
206
  /** The form input fields and content */
240
207
  children: _propTypes2.default.any,
241
208
  /** The above title for each field */
242
- label: _propTypes2.default.string,
209
+ title: _propTypes2.default.string,
243
210
  /** The value inside each field */
244
211
  value: _propTypes2.default.any,
245
212
  /** The name of each field */
@@ -253,7 +220,7 @@ AccountDetail.propTypes = {
253
220
  AccountDetail.defaultProps = {
254
221
  disabled: Function,
255
222
  children: '',
256
- label: '',
223
+ title: '',
257
224
  value: '',
258
225
  name: '',
259
226
  error: [],
@@ -10,10 +10,6 @@ var _react = require('react');
10
10
 
11
11
  var _react2 = _interopRequireDefault(_react);
12
12
 
13
- var _compose = require('recompose/compose');
14
-
15
- var _compose2 = _interopRequireDefault(_compose);
16
-
17
13
  var _reactIntl = require('react-intl');
18
14
 
19
15
  var _Input = require('../../components/Input');
@@ -36,331 +32,93 @@ var _translate = require('../../lib/utils/translate');
36
32
 
37
33
  var _translate2 = _interopRequireDefault(_translate);
38
34
 
39
- var _classnames = require('classnames');
40
-
41
- var _classnames2 = _interopRequireDefault(_classnames);
42
-
43
- var _WithValidation = require('../../lib/WithValidation');
44
-
45
- var _WithValidation2 = _interopRequireDefault(_WithValidation);
46
-
47
- var _email = require('../../lib/WithValidation/rules/email');
48
-
49
- var _email2 = _interopRequireDefault(_email);
50
-
51
- var _required = require('../../lib/WithValidation/rules/required');
52
-
53
- var _required2 = _interopRequireDefault(_required);
54
-
55
35
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
56
36
 
57
- function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }
58
-
59
- var KEY_CODE = {
60
- BACKSPACE: 'Backspace',
61
- DELETE: 'Delete',
62
- ARROW_LEFT: 'ArrowLeft',
63
- ARROW_RIGHT: 'ArrowRight'
64
- };
65
-
66
- var ActivationCode = function ActivationCode(_ref) {
67
- var _ref$length = _ref.length,
68
- length = _ref$length === undefined ? 4 : _ref$length,
69
- _ref$code = _ref.code,
70
- code = _ref$code === undefined ? '' : _ref$code,
71
- _ref$autoFocus = _ref.autoFocus,
72
- autoFocus = _ref$autoFocus === undefined ? true : _ref$autoFocus,
73
- onChange = _ref.onChange,
74
- isLoading = _ref.isLoading,
75
- name = _ref.name,
76
- status = _ref.status,
77
- statusText = _ref.statusText;
37
+ var ActivateWidget = function ActivateWidget(_ref) {
38
+ var intl = _ref.intl,
39
+ defaultEmail = _ref.email,
40
+ defaultCode = _ref.code,
41
+ onSubmit = _ref.onSubmit,
42
+ onResend = _ref.onResend;
78
43
 
79
- var boxes = new Array(length).fill('');
80
-
81
- var _useState = (0, _react.useState)(-1),
44
+ var _useState = (0, _react.useState)(defaultCode),
82
45
  _useState2 = _slicedToArray(_useState, 2),
83
- activeIndex = _useState2[0],
84
- setActiveIndex = _useState2[1];
85
-
86
- var inputRef = (0, _react.useRef)();
87
-
88
- (0, _react.useEffect)(function () {
89
- if (autoFocus && !code.length) {
90
- inputRef.current.focus();
91
- setActiveIndex(0);
92
- }
93
- }, [autoFocus, code]);
94
-
95
- (0, _react.useEffect)(function () {
96
- return inputRef.current.value = code;
97
- }, [code]);
46
+ code = _useState2[0],
47
+ onCodeChange = _useState2[1];
98
48
 
99
- var setCaretPosition = function setCaretPosition(from, to) {
100
- inputRef.current.focus();
101
- inputRef.current.setSelectionRange(from, to);
102
- };
103
-
104
- var handleKeyPress = function handleKeyPress(key, v) {
105
- switch (key) {
106
- case KEY_CODE.BACKSPACE || KEY_CODE.DELETE:
107
- {
108
- setActiveIndex(v.length);
109
- setCaretPosition(v.length, v.length);
110
- onChange(v);
111
- break;
112
- }
113
-
114
- case KEY_CODE.ARROW_LEFT:
115
- {
116
- if (activeIndex === 0) return;
117
- setActiveIndex(activeIndex - 1);
118
- setCaretPosition(activeIndex - 1, activeIndex);
119
- break;
120
- }
121
- case KEY_CODE.ARROW_RIGHT:
122
- {
123
- if (activeIndex === 3) return;
124
- setActiveIndex(activeIndex + 1);
125
- setCaretPosition(activeIndex + 1, activeIndex + 2);
126
- break;
127
- }
128
-
129
- default:
130
- {
131
- setActiveIndex(v.length);
132
- setCaretPosition(v.length, v.length + 1);
133
- onChange(v);
134
- }
135
- }
136
- };
137
-
138
- var handleFocus = function handleFocus(i) {
139
- setCaretPosition(i, i + 1);
140
- setActiveIndex(i);
141
- };
142
-
143
- var handleBlur = function handleBlur() {
144
- setActiveIndex(-1);
145
- };
146
-
147
- return _react2.default.createElement(
148
- 'div',
149
- {
150
- className: (0, _classnames2.default)('ActivationCode', {
151
- 'tg-input__status-failure': status === 'failure'
152
- }) },
153
- _react2.default.createElement(
154
- 'div',
155
- { className: 'ActivationCode__wrapper' },
156
- _react2.default.createElement(
157
- 'div',
158
- { className: 'ActivationCode__label' },
159
- _react2.default.createElement(_Translate2.default, {
160
- id: 'label.activation_code',
161
- defaultMessage: 'Activation code'
162
- })
163
- ),
164
- _react2.default.createElement(
165
- 'div',
166
- { className: 'ActivationCode__boxes' },
167
- _react2.default.createElement('input', {
168
- className: 'ActivationCode__input',
169
- type: 'text',
170
- autoComplete: 'one-time-code',
171
- inputMode: 'decimal',
172
- name: name,
173
- ref: inputRef,
174
- maxLength: length,
175
- onKeyUp: function onKeyUp(_ref2) {
176
- var key = _ref2.key,
177
- target = _ref2.target;
178
- return handleKeyPress(key, target.value);
179
- },
180
- onBlur: handleBlur
181
- }),
182
- boxes.map(function (_, i) {
183
- return _react2.default.createElement(
184
- 'div',
185
- {
186
- className: (0, _classnames2.default)('ActivationCode__box', {
187
- 'ActivationCode__box--focused': !isLoading && i === activeIndex,
188
- 'ActivationCode__box--error': status === 'failure',
189
- 'ActivationCode__box--empty': i === activeIndex && !code[i]
190
- }),
191
- key: i,
192
- onClick: function onClick() {
193
- return handleFocus(i);
194
- } },
195
- code[i]
196
- );
197
- })
198
- )
199
- ),
200
- _react2.default.createElement(
201
- 'div',
202
- { className: 'tg-input__status-text' },
203
- statusText
204
- )
205
- );
206
- };
207
-
208
- var ActivateWidget = function ActivateWidget(_ref3) {
209
- var intl = _ref3.intl,
210
- _ref3$email = _ref3.email,
211
- pEmail = _ref3$email === undefined ? '' : _ref3$email,
212
- _ref3$code = _ref3.code,
213
- pCode = _ref3$code === undefined ? '' : _ref3$code,
214
- onSubmit = _ref3.onSubmit,
215
- onResend = _ref3.onResend,
216
- errors = _ref3.errors;
217
-
218
- var _useState3 = (0, _react.useState)(pCode),
49
+ var _useState3 = (0, _react.useState)(defaultEmail),
219
50
  _useState4 = _slicedToArray(_useState3, 2),
220
- code = _useState4[0],
221
- setCode = _useState4[1];
51
+ email = _useState4[0],
52
+ onEmailChange = _useState4[1];
222
53
 
223
- var _useState5 = (0, _react.useState)(pEmail),
54
+ var _useState5 = (0, _react.useState)(false),
224
55
  _useState6 = _slicedToArray(_useState5, 2),
225
- email = _useState6[0],
226
- setEmail = _useState6[1];
56
+ isLoading = _useState6[0],
57
+ setIsLoading = _useState6[1];
227
58
 
228
59
  var _useState7 = (0, _react.useState)(false),
229
60
  _useState8 = _slicedToArray(_useState7, 2),
230
- isLoading = _useState8[0],
231
- setIsLoading = _useState8[1];
232
-
233
- var pattern = new RegExp('^[0-9]{4}$');
234
-
235
- (0, _react.useEffect)(function () {
236
- if (email && pattern.test(code)) handleSubmit();
237
- }, [code, email]);
238
-
239
- var handleResend = function () {
240
- var _ref4 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
241
- return regeneratorRuntime.wrap(function _callee$(_context) {
242
- while (1) {
243
- switch (_context.prev = _context.next) {
244
- case 0:
245
- setIsLoading(true);
246
- _context.prev = 1;
247
- _context.next = 4;
248
- return onResend(email);
249
-
250
- case 4:
251
- setIsLoading(false);
252
- _context.next = 9;
253
- break;
254
-
255
- case 7:
256
- _context.prev = 7;
257
- _context.t0 = _context['catch'](1);
258
-
259
- case 9:
260
- case 'end':
261
- return _context.stop();
262
- }
263
- }
264
- }, _callee, undefined, [[1, 7]]);
265
- }));
266
-
267
- return function handleResend() {
268
- return _ref4.apply(this, arguments);
269
- };
270
- }();
271
-
272
- var handleSubmit = function () {
273
- var _ref5 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
274
- return regeneratorRuntime.wrap(function _callee2$(_context2) {
275
- while (1) {
276
- switch (_context2.prev = _context2.next) {
277
- case 0:
278
- setIsLoading(true);
279
- _context2.prev = 1;
280
- _context2.next = 4;
281
- return onSubmit(email, code);
282
-
283
- case 4:
284
- setCode('');
285
- setIsLoading(false);
286
- _context2.next = 10;
287
- break;
288
-
289
- case 8:
290
- _context2.prev = 8;
291
- _context2.t0 = _context2['catch'](1);
292
-
293
- case 10:
294
- case 'end':
295
- return _context2.stop();
296
- }
297
- }
298
- }, _callee2, undefined, [[1, 8]]);
299
- }));
61
+ isResetLoading = _useState8[0],
62
+ setIsResetLoading = _useState8[1];
63
+
64
+ var _onResend = function _onResend(e) {
65
+ e.preventDefault();
66
+ setIsResetLoading(true);
67
+ onResend({
68
+ Email: email,
69
+ callback: function callback() {
70
+ return setIsResetLoading(false);
71
+ }
72
+ });
73
+ };
300
74
 
301
- return function handleSubmit() {
302
- return _ref5.apply(this, arguments);
303
- };
304
- }();
75
+ var _onSubmit = function _onSubmit(e) {
76
+ e.preventDefault();
77
+ setIsLoading(true);
78
+ onSubmit({
79
+ Email: email,
80
+ Code: code,
81
+ callback: function callback() {
82
+ return setIsLoading(false);
83
+ }
84
+ });
85
+ };
305
86
 
306
87
  return _react2.default.createElement(
307
88
  'div',
308
89
  { className: 'ActivateWidget' },
309
90
  _react2.default.createElement(
310
- 'div',
311
- { className: 'ActivateWidget__message' },
312
- _react2.default.createElement(_Translate2.default, {
313
- id: 'label.activation_code_received',
314
- defaultMessage: 'An activation code has been sent to your email address and your phone number'
315
- })
316
- ),
317
- _react2.default.createElement(
318
- 'div',
319
- { className: 'form' },
320
- !pEmail && _react2.default.createElement(_Input2.default, {
321
- autoFocus: true,
322
- label: (0, _translate2.default)({ id: 'label.email', defaultMessage: 'Email' }, intl),
323
- value: email || '',
91
+ 'form',
92
+ { onSubmit: _onSubmit },
93
+ _react2.default.createElement(_Input2.default, {
94
+ title: (0, _translate2.default)({ id: 'label.email' }, intl),
95
+ value: email,
324
96
  onChange: function onChange(e) {
325
- return setEmail(e.target.value);
97
+ return onEmailChange(e.target.value);
326
98
  },
327
- name: 'Email',
328
- status: errors.Email ? 'failure' : 'idle',
329
- statusText: errors.Email && (0, _translate2.default)({ id: errors.Email }, intl)
99
+ name: 'Email'
330
100
  }),
331
- _react2.default.createElement(ActivationCode, {
332
- onChange: setCode,
333
- code: code,
334
- autoFocus: Boolean(pEmail),
335
- isLoading: isLoading,
336
- name: 'ActivationCode',
337
- status: errors.ActivationCode ? 'failure' : 'idle',
338
- statusText: errors.ActivationCode && (0, _translate2.default)({ id: errors.ActivationCode }, intl)
101
+ _react2.default.createElement(_Input2.default, {
102
+ title: (0, _translate2.default)({ id: 'label.activation_code' }, intl),
103
+ value: code,
104
+ onChange: function onChange(e) {
105
+ return onCodeChange(e.target.value);
106
+ },
107
+ name: 'Code',
108
+ autoComplete: 'one-time-code'
339
109
  }),
340
110
  _react2.default.createElement(
341
111
  _Button2.default,
342
- {
343
- isLoading: isLoading,
344
- className: 'button primary wide',
345
- onClick: handleSubmit },
112
+ { isLoading: isLoading, className: 'button primary wide' },
346
113
  _react2.default.createElement(_Translate2.default, { id: 'action.activate', defaultMessage: 'Activate' })
347
114
  )
348
115
  ),
349
- _react2.default.createElement('hr', { className: 'hr--1' }),
350
- _react2.default.createElement(
351
- 'div',
352
- { className: 'ActivateWidget__resend' },
353
- _react2.default.createElement(_Translate2.default, {
354
- id: 'action.send_new_code',
355
- defaultMessage: 'Didn\'t get code?'
356
- })
357
- ),
358
116
  _react2.default.createElement(
359
117
  _Button2.default,
360
118
  {
361
- isLoading: isLoading,
119
+ isLoading: isResetLoading,
362
120
  className: 'button tertiary wide',
363
- onClick: handleResend },
121
+ onClick: _onResend },
364
122
  _react2.default.createElement(_Translate2.default, {
365
123
  id: 'action.resend_activation_code',
366
124
  defaultMessage: 'Resend activation code'
@@ -385,9 +143,4 @@ ActivateWidget.defaultProps = {
385
143
  onResend: Function
386
144
  };
387
145
 
388
- var rules = {
389
- Email: [[_required2.default, 'error.empty.email'], [_email2.default, 'error.condition.email']],
390
- ActivationCode: [[_required2.default, 'error.empty.activation_code']]
391
- };
392
-
393
- exports.default = (0, _compose2.default)((0, _WithValidation2.default)(rules), _reactIntl.injectIntl)(ActivateWidget);
146
+ exports.default = (0, _reactIntl.injectIntl)(ActivateWidget);