@stokr/components-library 2.3.65-beta.20 → 2.3.65-beta.22
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/dist/components/2FA/login-with-otp-flow.js +1 -1
- package/dist/components/2FA/main-flow.js +40 -12
- package/dist/components/Footer/FooterLayout.js +13 -4
- package/dist/components/Footer/FooterMenu.js +19 -3
- package/dist/components/Footer/FooterMenu.styles.js +14 -2
- package/dist/static/images/background3.png +0 -0
- package/package.json +1 -1
|
@@ -86,7 +86,7 @@ const LoginWithOTP = _ref => {
|
|
|
86
86
|
message: undefined
|
|
87
87
|
});
|
|
88
88
|
};
|
|
89
|
-
const backgroundProp = "url(".concat(_background.default, ") left
|
|
89
|
+
const backgroundProp = "url(".concat(_background.default, ") left top no-repeat");
|
|
90
90
|
return /*#__PURE__*/_react.default.createElement(_Layout.Layout, {
|
|
91
91
|
noHeader: true,
|
|
92
92
|
noFooter: true
|
|
@@ -17,7 +17,7 @@ var _colors = _interopRequireDefault(require("../../styles/colors"));
|
|
|
17
17
|
var _InfoIcon = _interopRequireDefault(require("../InfoIcon/InfoIcon"));
|
|
18
18
|
var _Modal = require("../Modal/Modal");
|
|
19
19
|
var _Sucess2FA = _interopRequireDefault(require("./Sucess2FA"));
|
|
20
|
-
const _excluded = ["onRequiresRecentLoginError", "open2faflow", "onLoginAgainClick", "openDisable2faflow", "title", "subtitle", "showSwitch", "customComponent"];
|
|
20
|
+
const _excluded = ["onRequiresRecentLoginError", "open2faflow", "onLoginAgainClick", "openDisable2faflow", "title", "subtitle", "showSwitch", "customComponent", "onFlowClose"];
|
|
21
21
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
22
22
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
23
23
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -36,7 +36,8 @@ const Main2FAFlow = _ref => {
|
|
|
36
36
|
title = 'SET UP YOUR LOG IN TWO FACTOR AUTHENTICATION',
|
|
37
37
|
subtitle = 'Protect your account with an additional layer of security to log in',
|
|
38
38
|
showSwitch = true,
|
|
39
|
-
customComponent
|
|
39
|
+
customComponent,
|
|
40
|
+
onFlowClose
|
|
40
41
|
} = _ref,
|
|
41
42
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
42
43
|
const {
|
|
@@ -79,6 +80,9 @@ const Main2FAFlow = _ref => {
|
|
|
79
80
|
} catch (error) {
|
|
80
81
|
if (error.code === 'auth/requires-recent-login' || error.code === 'auth/unsupported-first-factor') {
|
|
81
82
|
setisLoginRequired(true);
|
|
83
|
+
if (isFlowopen.enable2fa && !isFlowopen.requiresRecentLogin) {
|
|
84
|
+
onRequiresRecentLoginErrorHandler();
|
|
85
|
+
}
|
|
82
86
|
}
|
|
83
87
|
}
|
|
84
88
|
};
|
|
@@ -88,6 +92,14 @@ const Main2FAFlow = _ref => {
|
|
|
88
92
|
[nextFlowId]: true
|
|
89
93
|
}));
|
|
90
94
|
};
|
|
95
|
+
|
|
96
|
+
// Helper to close a flow and call the custom onFlowClose handler
|
|
97
|
+
const handleFlowClose = flowId => {
|
|
98
|
+
setIsFlowOpen(prev => _objectSpread(_objectSpread({}, prev), {}, {
|
|
99
|
+
[flowId]: false
|
|
100
|
+
}));
|
|
101
|
+
onFlowClose && onFlowClose(flowId);
|
|
102
|
+
};
|
|
91
103
|
const onEnable2FASuccess = async () => {
|
|
92
104
|
setis2FAEnabled(true);
|
|
93
105
|
checkMfaEnrollment();
|
|
@@ -112,11 +124,15 @@ const Main2FAFlow = _ref => {
|
|
|
112
124
|
openEnable2FA: () => switchOpenFlow('disable2fa', 'enable2fa'),
|
|
113
125
|
openDisable2FA: () => switchOpenFlow('enable2fa', 'disable2fa'),
|
|
114
126
|
closeFlows: () => {
|
|
127
|
+
const wasOpen = Object.keys(isFlowopen).find(key => isFlowopen[key]);
|
|
115
128
|
setIsFlowOpen({
|
|
116
129
|
enable2fa: false,
|
|
117
130
|
disable2fa: false,
|
|
118
131
|
requiresRecentLogin: false
|
|
119
132
|
});
|
|
133
|
+
if (wasOpen) {
|
|
134
|
+
onFlowClose && onFlowClose(wasOpen);
|
|
135
|
+
}
|
|
120
136
|
},
|
|
121
137
|
is2FAEnabled,
|
|
122
138
|
isFlowOpen: isFlowopen
|
|
@@ -169,24 +185,34 @@ const Main2FAFlow = _ref => {
|
|
|
169
185
|
flowActions
|
|
170
186
|
}) : customComponent), isFlowopen.enable2fa && /*#__PURE__*/_react.default.createElement(_enable2faFlow.default, {
|
|
171
187
|
showFlow: isFlowopen.enable2fa,
|
|
172
|
-
setShowFlow: value =>
|
|
173
|
-
|
|
174
|
-
|
|
188
|
+
setShowFlow: value => {
|
|
189
|
+
if (!value) {
|
|
190
|
+
handleFlowClose('enable2fa');
|
|
191
|
+
} else {
|
|
192
|
+
setIsFlowOpen(_objectSpread(_objectSpread({}, isFlowopen), {}, {
|
|
193
|
+
enable2fa: value
|
|
194
|
+
}));
|
|
195
|
+
}
|
|
196
|
+
},
|
|
175
197
|
totpData: totpData,
|
|
176
198
|
onRequiresRecentLoginError: onRequiresRecentLoginErrorHandler,
|
|
177
199
|
onSuccess: onEnable2FASuccess
|
|
178
200
|
}), isFlowopen.disable2fa && /*#__PURE__*/_react.default.createElement(_disable2faFlow.default, {
|
|
179
201
|
showFlow: isFlowopen.disable2fa,
|
|
180
|
-
setShowFlow: value =>
|
|
181
|
-
|
|
182
|
-
|
|
202
|
+
setShowFlow: value => {
|
|
203
|
+
if (!value) {
|
|
204
|
+
handleFlowClose('disable2fa');
|
|
205
|
+
} else {
|
|
206
|
+
setIsFlowOpen(_objectSpread(_objectSpread({}, isFlowopen), {}, {
|
|
207
|
+
disable2fa: value
|
|
208
|
+
}));
|
|
209
|
+
}
|
|
210
|
+
},
|
|
183
211
|
onRequiresRecentLoginError: onRequiresRecentLoginErrorHandler,
|
|
184
212
|
onSuccess: onDisable2FASuccess
|
|
185
213
|
}), isFlowopen.requiresRecentLogin && /*#__PURE__*/_react.default.createElement(_Modal.Modal, {
|
|
186
214
|
isOpen: isFlowopen.requiresRecentLogin,
|
|
187
|
-
onClose: () =>
|
|
188
|
-
requiresRecentLogin: false
|
|
189
|
-
}))
|
|
215
|
+
onClose: () => handleFlowClose('requiresRecentLogin')
|
|
190
216
|
}, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, {
|
|
191
217
|
noPadding: true
|
|
192
218
|
}, /*#__PURE__*/_react.default.createElement(_Sucess2FA.default, {
|
|
@@ -200,6 +226,8 @@ const Main2FAFlow = _ref => {
|
|
|
200
226
|
};
|
|
201
227
|
exports.Main2FAFlow = Main2FAFlow;
|
|
202
228
|
Main2FAFlow.propTypes = {
|
|
203
|
-
onRequiresRecentLoginError: _propTypes.default.func
|
|
229
|
+
onRequiresRecentLoginError: _propTypes.default.func,
|
|
230
|
+
/** Called when any flow/modal is closed. Receives the flowId: 'enable2fa' | 'disable2fa' | 'requiresRecentLogin' */
|
|
231
|
+
onFlowClose: _propTypes.default.func
|
|
204
232
|
};
|
|
205
233
|
var _default = exports.default = Main2FAFlow;
|
|
@@ -10,7 +10,7 @@ var _FooterMenu = _interopRequireDefault(require("./FooterMenu"));
|
|
|
10
10
|
var _Newsletter = _interopRequireDefault(require("../Newsletter/Newsletter"));
|
|
11
11
|
var _Footer = _interopRequireDefault(require("./Footer"));
|
|
12
12
|
var _globalVariables = require("../../constants/globalVariables");
|
|
13
|
-
const _excluded = ["withNewsLetter", "withFooterMenu", "color", "jobOpeningsNumber", "lemonWayLogo", "dropdownCollapsed"];
|
|
13
|
+
const _excluded = ["withNewsLetter", "withFooterMenu", "color", "jobOpeningsNumber", "lemonWayLogo", "dropdownCollapsed", "footnotes", "footnotesTitle"];
|
|
14
14
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
15
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
16
16
|
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
@@ -22,13 +22,17 @@ function FooterLayout(_ref) {
|
|
|
22
22
|
color = 'red',
|
|
23
23
|
jobOpeningsNumber = 0,
|
|
24
24
|
lemonWayLogo,
|
|
25
|
-
dropdownCollapsed
|
|
25
|
+
dropdownCollapsed,
|
|
26
|
+
footnotes,
|
|
27
|
+
footnotesTitle
|
|
26
28
|
} = _ref,
|
|
27
29
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
28
30
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, withFooterMenu && /*#__PURE__*/_react.default.createElement(_FooterMenu.default, {
|
|
29
31
|
groups: footerGroups,
|
|
30
32
|
jobOpeningsNumber: jobOpeningsNumber,
|
|
31
|
-
dropdownCollapsed: dropdownCollapsed
|
|
33
|
+
dropdownCollapsed: dropdownCollapsed,
|
|
34
|
+
footnotes: footnotes,
|
|
35
|
+
footnotesTitle: footnotesTitle
|
|
32
36
|
}), withNewsLetter && /*#__PURE__*/_react.default.createElement(_Newsletter.default, null), /*#__PURE__*/_react.default.createElement(_Footer.default, _extends({
|
|
33
37
|
color: color,
|
|
34
38
|
lemonwayLogo: lemonWayLogo
|
|
@@ -40,7 +44,12 @@ FooterLayout.propTypes = {
|
|
|
40
44
|
color: _propTypes.default.oneOf(['primary', 'red']),
|
|
41
45
|
jobOpeningsNumber: _propTypes.default.number,
|
|
42
46
|
lemonwayLogo: _propTypes.default.string,
|
|
43
|
-
dropdownCollapsed: _propTypes.default.bool
|
|
47
|
+
dropdownCollapsed: _propTypes.default.bool,
|
|
48
|
+
footnotesTitle: _propTypes.default.string,
|
|
49
|
+
footnotes: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
50
|
+
number: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
|
|
51
|
+
description: _propTypes.default.string
|
|
52
|
+
}))
|
|
44
53
|
};
|
|
45
54
|
var _default = exports.default = FooterLayout;
|
|
46
55
|
const footerGroups = exports.footerGroups = [{
|
|
@@ -78,9 +78,12 @@ const FooterMenu = _ref2 => {
|
|
|
78
78
|
let {
|
|
79
79
|
groups,
|
|
80
80
|
jobOpeningsNumber = 0,
|
|
81
|
-
dropdownCollapsed
|
|
81
|
+
dropdownCollapsed,
|
|
82
|
+
footnotes,
|
|
83
|
+
footnotesTitle = 'Disclosures'
|
|
82
84
|
} = _ref2;
|
|
83
85
|
const isMobile = (0, _customHooks.useMobileView)(_rwd.sizes.MLarge);
|
|
86
|
+
const hasFootnotes = Array.isArray(footnotes) && footnotes.length > 0;
|
|
84
87
|
|
|
85
88
|
// "New to STOKR" needs to be open by default
|
|
86
89
|
const [activeGroups, setactiveGroups] = _react.default.useState(() => {
|
|
@@ -137,10 +140,23 @@ const FooterMenu = _ref2 => {
|
|
|
137
140
|
style: {
|
|
138
141
|
marginLeft: '4px'
|
|
139
142
|
}
|
|
140
|
-
}, jobOpeningsNumber))))))))))
|
|
143
|
+
}, jobOpeningsNumber))))))))), hasFootnotes && /*#__PURE__*/_react.default.createElement(_FooterMenu.Footnotes, null, /*#__PURE__*/_react.default.createElement(_FooterMenu.FootnotesText, null, footnotesTitle), footnotes.map((note, index) => {
|
|
144
|
+
var _note$number;
|
|
145
|
+
return /*#__PURE__*/_react.default.createElement(_FooterMenu.FootnotesItem, {
|
|
146
|
+
key: "".concat(note.number || index, "-").concat(note.description || 'note')
|
|
147
|
+
}, /*#__PURE__*/_react.default.createElement(_FooterMenu.FootnotesText, {
|
|
148
|
+
isNumber: true
|
|
149
|
+
}, (_note$number = note.number) !== null && _note$number !== void 0 ? _note$number : index + 1), /*#__PURE__*/_react.default.createElement(_FooterMenu.FootnotesText, null, note.description));
|
|
150
|
+
})));
|
|
141
151
|
};
|
|
142
152
|
FooterMenu.propTypes = {
|
|
143
153
|
groups: _propTypes.default.arrayOf(Object).isRequired,
|
|
144
|
-
jobOpeningsNumber: _propTypes.default.number
|
|
154
|
+
jobOpeningsNumber: _propTypes.default.number,
|
|
155
|
+
dropdownCollapsed: _propTypes.default.bool,
|
|
156
|
+
footnotesTitle: _propTypes.default.string,
|
|
157
|
+
footnotes: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
158
|
+
number: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
|
|
159
|
+
description: _propTypes.default.string
|
|
160
|
+
}))
|
|
145
161
|
};
|
|
146
162
|
var _default = exports.default = FooterMenu;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.TitleContainer = exports.Title = exports.SocialLink = exports.Link = exports.Items = exports.Item = exports.HiringTotalNumber = exports.Groups = exports.Group = exports.Container = exports.ArrowDown = void 0;
|
|
6
|
+
exports.TitleContainer = exports.Title = exports.SocialLink = exports.Link = exports.Items = exports.Item = exports.HiringTotalNumber = exports.Groups = exports.Group = exports.FootnotesText = exports.FootnotesItem = exports.Footnotes = exports.Container = exports.ArrowDown = void 0;
|
|
7
7
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
8
8
|
var _colors = _interopRequireDefault(require("../../styles/colors"));
|
|
9
9
|
var _rwd = _interopRequireDefault(require("../../styles/rwd"));
|
|
@@ -54,4 +54,16 @@ const ArrowDown = exports.ArrowDown = _styledComponents.default.i.attrs({
|
|
|
54
54
|
}).withConfig({
|
|
55
55
|
displayName: "FooterMenustyles__ArrowDown",
|
|
56
56
|
componentId: "sc-40ddqf-10"
|
|
57
|
-
})(["&&&{top:50%;right:0;transition:0.3s transform;transform:rotate(0);text-align:center;font-size:16px;line-height:16px;height:16px;margin-top:-8px;", "}", ""], props => props.isOpened && "\n transform: rotate(180deg);\n ", props => !props.displayAlways && "\n @media screen and (min-width: 992px) {\n display: none;\n }\n ");
|
|
57
|
+
})(["&&&{top:50%;right:0;transition:0.3s transform;transform:rotate(0);text-align:center;font-size:16px;line-height:16px;height:16px;margin-top:-8px;", "}", ""], props => props.isOpened && "\n transform: rotate(180deg);\n ", props => !props.displayAlways && "\n @media screen and (min-width: 992px) {\n display: none;\n }\n ");
|
|
58
|
+
const Footnotes = exports.Footnotes = _styledComponents.default.div.withConfig({
|
|
59
|
+
displayName: "FooterMenustyles__Footnotes",
|
|
60
|
+
componentId: "sc-40ddqf-11"
|
|
61
|
+
})(["padding:0px 48px 40px;display:flex;flex-direction:column;gap:6px;@media screen and (min-width:992px){padding:0px 65px 48px;}"]);
|
|
62
|
+
const FootnotesText = exports.FootnotesText = _styledComponents.default.div.withConfig({
|
|
63
|
+
displayName: "FooterMenustyles__FootnotesText",
|
|
64
|
+
componentId: "sc-40ddqf-12"
|
|
65
|
+
})(["font-family:'Open Sans';font-weight:300;font-size:11px;line-height:16px;letter-spacing:0.4px;color:", ";", ""], _theme.default.cBlack, props => props.isNumber && "\n font-size: 9px;\n\n ");
|
|
66
|
+
const FootnotesItem = exports.FootnotesItem = _styledComponents.default.div.withConfig({
|
|
67
|
+
displayName: "FooterMenustyles__FootnotesItem",
|
|
68
|
+
componentId: "sc-40ddqf-13"
|
|
69
|
+
})(["display:flex;gap:6px;"]);
|
|
Binary file
|