@bigbinary/neeto-molecules 3.4.2 → 3.6.0-beta-1

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.
@@ -0,0 +1,376 @@
1
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
2
+ import { useState, useMemo, useEffect, memo, createElement } from 'react';
3
+ import { isPresent, noop, filterBy, removeBy } from '@bigbinary/neeto-cist';
4
+ import Down from '@bigbinary/neeto-icons/Down';
5
+ import Up from '@bigbinary/neeto-icons/Up';
6
+ import Button from '@bigbinary/neetoui/Button';
7
+ import Spinner from '@bigbinary/neetoui/Spinner';
8
+ import { isNil, pluck, not } from 'ramda';
9
+ import { useTranslation } from 'react-i18next';
10
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
11
+ import Typography from '@bigbinary/neetoui/Typography';
12
+ import HelpPopover from './HelpPopover.js';
13
+ import classnames from 'classnames';
14
+ import useHotkeys from '@bigbinary/neeto-hotkeys';
15
+ import Check from '@bigbinary/neeto-icons/Check';
16
+ import Close from '@bigbinary/neeto-icons/Close';
17
+ import Input from '@bigbinary/neetoui/Input';
18
+ import Tooltip from '@bigbinary/neetoui/Tooltip';
19
+ import CopyToClipboardButton from './CopyToClipboardButton.js';
20
+ import '@babel/runtime/helpers/objectWithoutProperties';
21
+ import 'formik';
22
+ import { P as PhoneNumberInput } from './phone-number-cf3e77d7.js';
23
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
24
+ import 'i18next';
25
+ import 'libphonenumber-js/min';
26
+ import 'yup';
27
+ import TimeFormat from './TimeFormat.js';
28
+ import Computer from '@bigbinary/neeto-icons/Computer';
29
+ import Email from '@bigbinary/neeto-icons/Email';
30
+ import Location from '@bigbinary/neeto-icons/Location';
31
+ import Mobile from '@bigbinary/neeto-icons/Mobile';
32
+ import Phone from '@bigbinary/neeto-icons/Phone';
33
+ import Subdomain from '@bigbinary/neeto-icons/Subdomain';
34
+ import User from '@bigbinary/neeto-icons/User';
35
+ import Apple from '@bigbinary/neeto-icons/misc/Apple';
36
+ import Chrome from '@bigbinary/neeto-icons/misc/Chrome';
37
+ import Edge from '@bigbinary/neeto-icons/misc/Edge';
38
+ import Firefox from '@bigbinary/neeto-icons/misc/Firefox';
39
+ import Safari from '@bigbinary/neeto-icons/misc/Safari';
40
+ import Ubuntu from '@bigbinary/neeto-icons/misc/Ubuntu';
41
+ import Windows from '@bigbinary/neeto-icons/misc/Windows';
42
+ import { n } from './inject-css-c86de496.js';
43
+ import '@bigbinary/neeto-icons/Help';
44
+ import '@bigbinary/neetoui/Popover';
45
+ import '@bigbinary/neeto-commons-frontend/utils/general';
46
+ import '@bigbinary/neeto-icons/Copy';
47
+ import 'zustand/shallow';
48
+ import '@bigbinary/neetoui/Select';
49
+ import './_commonjsHelpers-1c8beb5f.js';
50
+ import '@tanstack/react-query';
51
+ import 'axios';
52
+ import '@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions';
53
+ import 'zustand';
54
+ import 'zustand/middleware';
55
+ import './DateFormat.js';
56
+ import '@bigbinary/neeto-commons-frontend/react-utils/useTimer';
57
+ import '@bigbinary/neeto-commons-frontend/utils/datetime';
58
+
59
+ var BOOLEAN_VALUES_MAP = {
60
+ "true": "Yes",
61
+ "false": "No"
62
+ };
63
+ var ENTER = "enter";
64
+ var ESCAPE = "escape";
65
+ var PHONE_NUMBER = "phone_number";
66
+ var INTEGER = "integer";
67
+ var ICONS_MAP = {
68
+ name: User,
69
+ user: User,
70
+ email: Email,
71
+ phone_number: Phone,
72
+ location: Location,
73
+ timezone: Subdomain,
74
+ chrome: Chrome,
75
+ safari: Safari,
76
+ firefox: Firefox,
77
+ edge: Edge,
78
+ ie: Edge,
79
+ windows: Windows,
80
+ mac_os: Apple,
81
+ linux: Ubuntu,
82
+ mobile: Mobile,
83
+ desktop: Computer
84
+ };
85
+
86
+ var getInputType = function getInputType(_ref) {
87
+ var name = _ref.name,
88
+ kind = _ref.kind;
89
+ if (name === PHONE_NUMBER) return "tel";else if (kind === INTEGER) return "number";
90
+ return "text";
91
+ };
92
+ var getIcon = function getIcon(_ref2) {
93
+ var iconSize = _ref2.iconSize,
94
+ name = _ref2.name,
95
+ value = _ref2.value;
96
+ var Icon = name === "browser" || name === "os" ? ICONS_MAP[value === null || value === void 0 ? void 0 : value.toLowerCase().replace(" ", "_")] : ICONS_MAP[name];
97
+ return /*#__PURE__*/jsx(Icon, {
98
+ size: iconSize
99
+ });
100
+ };
101
+
102
+ var Item = function Item(_ref) {
103
+ var handleCancel = _ref.handleCancel,
104
+ handleSubmit = _ref.handleSubmit,
105
+ iconSize = _ref.iconSize,
106
+ item = _ref.item,
107
+ showIcons = _ref.showIcons;
108
+ var _useState = useState(item.isEditing),
109
+ _useState2 = _slicedToArray(_useState, 2),
110
+ isEditing = _useState2[0],
111
+ setIsEditing = _useState2[1];
112
+ var _useState3 = useState(item.value),
113
+ _useState4 = _slicedToArray(_useState3, 2),
114
+ value = _useState4[0],
115
+ setValue = _useState4[1];
116
+ var _useTranslation = useTranslation(),
117
+ t = _useTranslation.t;
118
+ var containerRef = useHotkeys(ESCAPE, function () {
119
+ return handleCancel(name);
120
+ }, {
121
+ mode: "scoped"
122
+ });
123
+ var icon = item.icon,
124
+ _item$isEditable = item.isEditable,
125
+ isEditable = _item$isEditable === void 0 ? false : _item$isEditable,
126
+ _item$extraClasses = item.extraClasses,
127
+ extraClasses = _item$extraClasses === void 0 ? "" : _item$extraClasses,
128
+ _item$extraWrapperCla = item.extraWrapperClasses,
129
+ extraWrapperClasses = _item$extraWrapperCla === void 0 ? "" : _item$extraWrapperCla,
130
+ id = item.id,
131
+ fieldValueId = item.fieldValueId,
132
+ _item$custom = item.custom,
133
+ custom = _item$custom === void 0 ? false : _item$custom,
134
+ name = item.name,
135
+ kind = item.kind,
136
+ error = item.error,
137
+ label = item.label,
138
+ _item$showCopyButton = item.showCopyButton,
139
+ showCopyButton = _item$showCopyButton === void 0 ? false : _item$showCopyButton;
140
+ var valueToRender = useMemo(function () {
141
+ if (isNil(value)) return "-";
142
+ if (typeof value === "boolean") return BOOLEAN_VALUES_MAP[value.toString()];
143
+ return value;
144
+ }, [value]);
145
+ var iconToRender = useMemo(function () {
146
+ return icon || getIcon({
147
+ iconSize: iconSize,
148
+ name: name,
149
+ value: value
150
+ });
151
+ }, [icon, iconSize, name, value]);
152
+ var onSuccess = function onSuccess() {
153
+ return setIsEditing(false);
154
+ };
155
+ var handleMetadataSubmit = function handleMetadataSubmit() {
156
+ return handleSubmit({
157
+ fieldId: id,
158
+ fieldValueId: fieldValueId,
159
+ name: name,
160
+ value: value,
161
+ custom: custom,
162
+ onSuccess: onSuccess
163
+ });
164
+ };
165
+ var handleMetadataCancel = function handleMetadataCancel() {
166
+ setIsEditing(false);
167
+ setValue(item.value);
168
+ handleCancel(name);
169
+ };
170
+ var inputRef = useHotkeys(ENTER, handleMetadataSubmit, {
171
+ mode: "scoped"
172
+ });
173
+ var InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;
174
+ var handleChange = function handleChange(event) {
175
+ var value = name === PHONE_NUMBER ? event : event.target.value;
176
+ setValue(value);
177
+ };
178
+ useEffect(function () {
179
+ setValue(item.value);
180
+ }, [item]);
181
+ return /*#__PURE__*/jsxs("div", {
182
+ ref: containerRef,
183
+ className: classnames("mb-2 flex place-items-center gap-2 align-middle", extraWrapperClasses, {
184
+ "flex-wrap": name !== PHONE_NUMBER
185
+ }),
186
+ children: [showIcons && isPresent(iconToRender) ? /*#__PURE__*/jsx(Tooltip, {
187
+ content: label || t("neetoMolecules.sessionEnvironment.details.keys.".concat(name)),
188
+ children: /*#__PURE__*/jsx("div", {
189
+ className: "flex-shrink-0",
190
+ children: iconToRender
191
+ })
192
+ }) : /*#__PURE__*/jsx(Typography, {
193
+ className: "neeto-molecules-session-environment-editable-field whitespace-nowrap",
194
+ style: "h5",
195
+ children: label || t("neetoMolecules.sessionEnvironment.details.keys.".concat(name))
196
+ }), !isEditing ? /*#__PURE__*/jsxs(Fragment, {
197
+ children: [kind === "datetime" ? /*#__PURE__*/jsx(TimeFormat.DateWeekTime, {
198
+ date: value,
199
+ typographyProps: {
200
+ style: "body2",
201
+ className: "overflow-hidden truncate whitespace-normal break-all ".concat(extraClasses)
202
+ }
203
+ }) : /*#__PURE__*/jsx(Typography, {
204
+ className: "overflow-hidden truncate whitespace-normal break-all ".concat(extraClasses),
205
+ "data-testid": "metadata-value-".concat(name),
206
+ style: "body2",
207
+ weight: "normal",
208
+ onClick: function onClick() {
209
+ return isEditable && setIsEditing(true);
210
+ },
211
+ children: valueToRender
212
+ }), showCopyButton && /*#__PURE__*/jsx(CopyToClipboardButton, {
213
+ className: "flex-shrink-0",
214
+ size: "small",
215
+ style: "text",
216
+ value: valueToRender
217
+ })]
218
+ }) : /*#__PURE__*/jsxs("div", {
219
+ className: "neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center",
220
+ children: [/*#__PURE__*/jsx(InputComponent, {
221
+ error: error,
222
+ autoFocus: true,
223
+ "data-testid": "metadata-input-".concat(name),
224
+ placeholder: t("neetoMolecules.common.enter", {
225
+ what: label
226
+ }),
227
+ ref: inputRef,
228
+ type: getInputType({
229
+ name: name,
230
+ kind: kind
231
+ }),
232
+ value: value || "",
233
+ onChange: handleChange
234
+ }), /*#__PURE__*/jsxs("div", {
235
+ className: "neeto-molecules-session-environment-editable-field__actions absolute right-0 top-0 flex h-8 items-center pr-1",
236
+ children: [/*#__PURE__*/jsx(Button, {
237
+ icon: Close,
238
+ size: "small",
239
+ style: "text",
240
+ tooltipProps: {
241
+ content: t("neetoMolecules.common.actions.cancel"),
242
+ position: "top"
243
+ },
244
+ onClick: handleMetadataCancel
245
+ }), /*#__PURE__*/jsx(Button, {
246
+ "data-testid": "metadata-submit-".concat(name),
247
+ icon: Check,
248
+ size: "small",
249
+ style: "text",
250
+ tooltipProps: {
251
+ content: t("neetoMolecules.common.actions.save"),
252
+ position: "top"
253
+ },
254
+ onClick: handleMetadataSubmit
255
+ })]
256
+ })]
257
+ })]
258
+ });
259
+ };
260
+
261
+ 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; }
262
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
263
+ var DetailsBlock = function DetailsBlock(_ref) {
264
+ var details = _ref.details,
265
+ _ref$handleCancel = _ref.handleCancel,
266
+ handleCancel = _ref$handleCancel === void 0 ? noop : _ref$handleCancel,
267
+ _ref$handleSubmit = _ref.handleSubmit,
268
+ handleSubmit = _ref$handleSubmit === void 0 ? noop : _ref$handleSubmit,
269
+ helpPopoverProps = _ref.helpPopoverProps,
270
+ iconSize = _ref.iconSize,
271
+ _ref$showIcons = _ref.showIcons,
272
+ showIcons = _ref$showIcons === void 0 ? false : _ref$showIcons,
273
+ _ref$title = _ref.title,
274
+ title = _ref$title === void 0 ? "" : _ref$title;
275
+ return /*#__PURE__*/jsxs("div", {
276
+ className: "mb-4",
277
+ children: [title && /*#__PURE__*/jsxs("div", {
278
+ className: "mb-2 flex",
279
+ children: [/*#__PURE__*/jsx(Typography, {
280
+ className: "mr-2",
281
+ style: "h4",
282
+ textTransform: "uppercase",
283
+ weight: "bold",
284
+ children: title
285
+ }), isPresent(helpPopoverProps) && /*#__PURE__*/jsx(HelpPopover, _objectSpread({}, helpPopoverProps))]
286
+ }), details.map(function (detail, index) {
287
+ return /*#__PURE__*/createElement(Item, {
288
+ handleCancel: handleCancel,
289
+ handleSubmit: handleSubmit,
290
+ iconSize: iconSize,
291
+ showIcons: showIcons,
292
+ item: detail,
293
+ key: index
294
+ });
295
+ })]
296
+ });
297
+ };
298
+ var DetailsBlock$1 = /*#__PURE__*/memo(DetailsBlock);
299
+
300
+ var css = ".neeto-molecules-session-environment-editable-field .neeto-ui-input__wrapper .ant-picker-suffix{display:none}.neeto-molecules-session-environment-editable-field .neeto-ui-input__wrapper .neeto-ui-input__prefix{margin:0;padding:0}.neeto-molecules-session-environment-editable-field .neeto-ui-input__wrapper .neeto-ui-date-input,.neeto-molecules-session-environment-editable-field .neeto-ui-input__wrapper .neeto-ui-input>input{padding:4px 45px 4px 4px!important}.neeto-molecules-session-environment-editable-field__actions .neeto-ui-btn{background-color:transparent!important;min-height:0!important;padding:2px!important}";
301
+ n(css,{});
302
+
303
+ var SessionEnvironment = function SessionEnvironment(_ref) {
304
+ var details = _ref.details,
305
+ _ref$handleCancel = _ref.handleCancel,
306
+ handleCancel = _ref$handleCancel === void 0 ? noop : _ref$handleCancel,
307
+ _ref$handleSubmit = _ref.handleSubmit,
308
+ handleSubmit = _ref$handleSubmit === void 0 ? noop : _ref$handleSubmit,
309
+ _ref$helpPopoverProps = _ref.helpPopoverProps,
310
+ helpPopoverProps = _ref$helpPopoverProps === void 0 ? {} : _ref$helpPopoverProps,
311
+ _ref$iconSize = _ref.iconSize,
312
+ iconSize = _ref$iconSize === void 0 ? 20 : _ref$iconSize,
313
+ _ref$isLoading = _ref.isLoading,
314
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
315
+ _ref$moreDetails = _ref.moreDetails,
316
+ moreDetails = _ref$moreDetails === void 0 ? [] : _ref$moreDetails,
317
+ _ref$title = _ref.title,
318
+ title = _ref$title === void 0 ? "" : _ref$title;
319
+ var _useState = useState(false),
320
+ _useState2 = _slicedToArray(_useState, 2),
321
+ showViewMore = _useState2[0],
322
+ setShowViewMore = _useState2[1];
323
+ var customViewMoreItems = useMemo(function () {
324
+ return filterBy({
325
+ kind: "custom"
326
+ }, moreDetails);
327
+ }, [moreDetails]);
328
+ var _useTranslation = useTranslation(),
329
+ t = _useTranslation.t;
330
+ if (isLoading) {
331
+ return /*#__PURE__*/jsx("div", {
332
+ className: "flex h-full w-full items-center justify-center",
333
+ children: /*#__PURE__*/jsx(Spinner, {})
334
+ });
335
+ }
336
+ return /*#__PURE__*/jsxs("div", {
337
+ className: "w-full",
338
+ children: [/*#__PURE__*/jsx(DetailsBlock$1, {
339
+ details: details,
340
+ handleCancel: handleCancel,
341
+ handleSubmit: handleSubmit,
342
+ helpPopoverProps: helpPopoverProps,
343
+ iconSize: iconSize,
344
+ title: title,
345
+ showIcons: true
346
+ }), showViewMore && /*#__PURE__*/jsxs(Fragment, {
347
+ children: [/*#__PURE__*/jsx("hr", {
348
+ className: "m-4"
349
+ }), /*#__PURE__*/jsx(DetailsBlock$1, {
350
+ handleCancel: handleCancel,
351
+ handleSubmit: handleSubmit,
352
+ helpPopoverProps: helpPopoverProps,
353
+ iconSize: iconSize,
354
+ details: removeBy({
355
+ kind: "custom"
356
+ }, moreDetails)
357
+ }), isPresent(customViewMoreItems) && /*#__PURE__*/jsxs(Fragment, {
358
+ children: [/*#__PURE__*/jsx("hr", {
359
+ className: "m-4"
360
+ }), pluck("value", customViewMoreItems)]
361
+ })]
362
+ }), /*#__PURE__*/jsx(Button, {
363
+ className: "mb-4",
364
+ icon: showViewMore ? Up : Down,
365
+ style: "link",
366
+ label: showViewMore ? t("neetoMolecules.sessionEnvironment.viewLess") : t("neetoMolecules.sessionEnvironment.viewMore"),
367
+ onClick: function onClick() {
368
+ return setShowViewMore(not);
369
+ }
370
+ })]
371
+ });
372
+ };
373
+ var index = /*#__PURE__*/memo(SessionEnvironment);
374
+
375
+ export { index as default };
376
+ //# sourceMappingURL=SessionEnvironment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionEnvironment.js","sources":["../src/components/SessionEnvironment/constants.js","../src/components/SessionEnvironment/utils.jsx","../src/components/SessionEnvironment/Item.jsx","../src/components/SessionEnvironment/DetailsBlock.jsx","../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\n};\n","import { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return <Icon size={iconSize} />;\n};\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input, Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getIcon, getInputType } from \"./utils\";\n\nconst Item = ({ handleCancel, handleSubmit, iconSize, item, showIcons }) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const containerRef = useHotkeys(ESCAPE, () => handleCancel(name), {\n mode: \"scoped\",\n });\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value)) return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const inputRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n return (\n <div\n ref={containerRef}\n className={classNames(\n \"mb-2 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n { \"flex-wrap\": name !== PHONE_NUMBER }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field whitespace-nowrap\"\n style=\"h5\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\n className: `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n }}\n />\n ) : (\n <Typography\n className={`overflow-hidden truncate whitespace-normal break-all ${extraClasses}`}\n data-testid={`metadata-value-${name}`}\n style=\"body2\"\n weight=\"normal\"\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\n />\n )}\n </>\n ) : (\n <div className=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n data-testid={`metadata-input-${name}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={inputRef}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"neeto-molecules-session-environment-editable-field__actions absolute right-0 top-0 flex h-8 items-center pr-1\">\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${name}`}\n icon={Check}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\n\nconst DetailsBlock = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\">\n {title && (\n <div className=\"mb-2 flex\">\n <Typography\n className=\"mr-2\"\n style=\"h4\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details.map((detail, index) => (\n <Item\n {...{ handleCancel, handleSubmit, iconSize, showIcons }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\n\nconst SessionEnvironment = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"m-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"m-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n icon={showViewMore ? Up : Down}\n style=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","_jsx","size","Item","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_useTranslation","useTranslation","t","containerRef","useHotkeys","mode","icon","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","error","label","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","handleMetadataSubmit","fieldId","handleMetadataCancel","inputRef","InputComponent","PhoneNumberInput","Input","handleChange","event","target","useEffect","_jsxs","ref","className","classNames","children","isPresent","Tooltip","content","concat","Typography","style","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","onClick","CopyToClipboardButton","autoFocus","placeholder","what","type","onChange","Button","Close","tooltipProps","position","Check","DetailsBlock","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","map","detail","index","_createElement","key","memo","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":"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"}
@@ -66,12 +66,17 @@ var CompletedScreen = withT__default["default"](function (_ref) {
66
66
  });
67
67
  });
68
68
 
69
+ var GENERAL_ONBOARDING_STEPS = {
70
+ WELCOME: "welcome",
71
+ HELP: "help",
72
+ FINISH: "finish"
73
+ };
74
+
69
75
  var css = ".neeto-molecules-onboarding__wrapper{align-items:center;display:flex;flex-direction:column;flex-grow:1;height:100vh;overflow-y:auto;padding:15vh 32px 32px;width:100%}.neeto-molecules-onboarding__container{display:flex;flex-direction:column;height:100vh;overflow-y:auto;position:relative;width:100%}.neeto-molecules-onboarding__stepper-wrapper{background-color:rgb(var(--neeto-ui-white));border-bottom:1px solid rgb(var(--neeto-ui-gray-200));display:flex;flex-shrink:0;padding:8px 16px;width:100%}@media (min-width:1024px){.neeto-molecules-onboarding__stepper-wrapper{justify-content:center}}.neeto-molecules-onboarding__content{flex-grow:1;min-height:0;overflow-y:auto;width:100%}.neeto-molecules-onboarding__content--forward{animation:slideInRight .4s ease backwards}.neeto-molecules-onboarding__content--backward{animation:slideInLeft .4s ease backwards}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}";
70
76
  injectCss.n(css,{});
71
77
 
72
78
  var HelpScreen = function HelpScreen(_ref) {
73
79
  var setCurrentStep = _ref.setCurrentStep,
74
- currentStep = _ref.currentStep,
75
80
  helpScreenClassName = _ref.helpScreenClassName;
76
81
  var _useTranslation = reactI18next.useTranslation(),
77
82
  t = _useTranslation.t;
@@ -110,7 +115,7 @@ var HelpScreen = function HelpScreen(_ref) {
110
115
  iconPosition: "right",
111
116
  label: t("neetoMolecules.onboarding.helpScreen.continueButton"),
112
117
  onClick: function onClick() {
113
- return setCurrentStep(currentStep + 1);
118
+ return setCurrentStep("finish");
114
119
  }
115
120
  })]
116
121
  });
@@ -120,6 +125,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
120
125
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
121
126
  var createSteps = function createSteps(onboardingSteps, setCurrentStep, currentStep, helpScreenClassName) {
122
127
  var helpStep = {
128
+ key: GENERAL_ONBOARDING_STEPS.HELP,
123
129
  label: i18next.t("neetoMolecules.onboarding.helpLabel"),
124
130
  element: /*#__PURE__*/jsxRuntime.jsx(HelpScreen, {
125
131
  currentStep: currentStep,
@@ -137,7 +143,7 @@ var createSteps = function createSteps(onboardingSteps, setCurrentStep, currentS
137
143
  var WelcomeScreen = withT__default["default"](function (_ref) {
138
144
  var t = _ref.t,
139
145
  setCurrentStep = _ref.setCurrentStep,
140
- currentStep = _ref.currentStep;
146
+ nextStep = _ref.nextStep;
141
147
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
142
148
  className: "neeto-molecules-onboarding__wrapper",
143
149
  "data-testid": "onboarding-welcome-wrapper",
@@ -167,7 +173,7 @@ var WelcomeScreen = withT__default["default"](function (_ref) {
167
173
  icon: RightArrow__default["default"],
168
174
  label: t("neetoMolecules.onboarding.getStarted"),
169
175
  onClick: function onClick() {
170
- return setCurrentStep(currentStep + 1);
176
+ return setCurrentStep(nextStep);
171
177
  }
172
178
  })]
173
179
  });
@@ -175,7 +181,7 @@ var WelcomeScreen = withT__default["default"](function (_ref) {
175
181
 
176
182
  var Onboarding = function Onboarding(_ref) {
177
183
  var _ref$currentStep = _ref.currentStep,
178
- currentStep = _ref$currentStep === void 0 ? 0 : _ref$currentStep,
184
+ currentStep = _ref$currentStep === void 0 ? GENERAL_ONBOARDING_STEPS.WELCOME : _ref$currentStep,
179
185
  _ref$setCurrentStep = _ref.setCurrentStep,
180
186
  setCurrentStep = _ref$setCurrentStep === void 0 ? neetoCist.noop : _ref$setCurrentStep,
181
187
  _ref$onboardingSteps = _ref.onboardingSteps,
@@ -201,19 +207,20 @@ var Onboarding = function Onboarding(_ref) {
201
207
  setDirection(currentStep > prevStep.current ? "forward" : "backward");
202
208
  prevStep.current = currentStep;
203
209
  }, [currentStep]);
204
- if (currentStep === 0) {
210
+ if (currentStep === GENERAL_ONBOARDING_STEPS.WELCOME) {
205
211
  return /*#__PURE__*/jsxRuntime.jsx(WelcomeScreen, {
206
212
  currentStep: currentStep,
207
- setCurrentStep: setCurrentStep
213
+ setCurrentStep: setCurrentStep,
214
+ nextStep: steps[0].key
208
215
  });
209
216
  }
210
- if (currentStep === steps.length + 1) {
217
+ if (currentStep === GENERAL_ONBOARDING_STEPS.FINISH) {
211
218
  return /*#__PURE__*/jsxRuntime.jsx(CompletedScreen, {
212
219
  completeButtonProps: completeButtonProps
213
220
  });
214
221
  }
215
222
  var handleStepChange = function handleStepChange(index) {
216
- return setCurrentStep(index + 1);
223
+ return setCurrentStep(steps[index].key);
217
224
  };
218
225
  var isStepperVisible = steps.length > 1;
219
226
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
@@ -224,7 +231,9 @@ var Onboarding = function Onboarding(_ref) {
224
231
  className: "neeto-molecules-onboarding__stepper-wrapper",
225
232
  children: /*#__PURE__*/jsxRuntime.jsx(Stepper__default["default"], {
226
233
  steps: steps,
227
- activeIndex: currentStep - 1,
234
+ activeIndex: neetoCist.findIndexBy({
235
+ key: currentStep
236
+ }, steps),
228
237
  setActiveIndex: disableStepClick ? neetoCist.noop : handleStepChange
229
238
  })
230
239
  }), steps.map(function (step, index) {
@@ -232,7 +241,7 @@ var Onboarding = function Onboarding(_ref) {
232
241
  className: classnames__default["default"]("neeto-molecules-onboarding__content", {
233
242
  "neeto-molecules-onboarding__content--forward overflow-x-hidden": isAnimated && direction === "forward",
234
243
  "neeto-molecules-onboarding__content--backward overflow-x-hidden": isAnimated && direction === "backward",
235
- hidden: currentStep - 1 !== index
244
+ hidden: currentStep !== step.key
236
245
  }),
237
246
  children: step === null || step === void 0 ? void 0 : step.element
238
247
  }, index);
@@ -1 +1 @@
1
- {"version":3,"file":"Onboarding.js","sources":["../../src/components/Onboarding/CompletedScreen.jsx","../../src/components/Onboarding/HelpScreen.jsx","../../src/components/Onboarding/utils.jsx","../../src/components/Onboarding/WelcomeScreen.jsx","../../src/components/Onboarding/index.jsx"],"sourcesContent":["import { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { Button, Typography } from \"neetoui\";\n\nconst CompletedScreen = withT(({ t, completeButtonProps }) => (\n <div\n className=\"neeto-molecules-onboarding__wrapper\"\n data-testid=\"onboarding-congratulations-wrapper\"\n >\n <div className=\"mx-auto mb-6 w-full max-w-2xl space-y-2\">\n <Typography\n className=\"text-center\"\n data-cy=\"onboarding-congratulations-emoji\"\n style=\"h1\"\n >\n 🎉\n </Typography>\n <Typography\n className=\"text-center\"\n data-cy=\"onboarding-congratulations-title\"\n data-testid=\"onboarding-congratulations-title\"\n style=\"h1\"\n >\n <span className=\"neeto-ui-text-success-500\">\n {t(\"neetoMolecules.onboarding.congratulations\")}\n </span>\n <br />\n {t(\"neetoMolecules.onboarding.readyToUse\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n </div>\n <Button\n data-cy=\"onboarding-congratulations-button\"\n data-testid=\"onboarding-congratulations-button\"\n label={t(\"neetoMolecules.onboarding.helpScreen.startUsingButton\", {\n appName: globalProps.appName,\n })}\n {...completeButtonProps}\n />\n </div>\n));\n\nexport default CompletedScreen;\n","import classNames from \"classnames\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { RightArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst HelpScreen = ({ setCurrentStep, currentStep, helpScreenClassName }) => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n return (\n <div\n className={classNames(\n \"mx-auto w-full max-w-2xl space-y-6 p-4\",\n helpScreenClassName\n )}\n >\n <div className=\"space-y-3\">\n <Typography\n component=\"h1\"\n data-cy=\"onboarding-help-title\"\n data-testid=\"onboarding-help-title\"\n style=\"h2\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.title\")}\n </Typography>\n <Typography\n data-cy=\"onboarding-help-description\"\n data-testid=\"onboarding-help-description\"\n lineHeight=\"normal\"\n style=\"body1\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.description\")}\n </Typography>\n <div className=\"w-full\">\n {isSize(\"mobile\") ? (\n <img\n alt=\"\"\n src=\"https://ik.imagekit.io/d9mvewbju/Commons/help-mobile_FpB8LKYj4.svg\"\n />\n ) : (\n <img\n alt=\"\"\n src=\"https://ik.imagekit.io/d9mvewbju/Commons/help-desktop_aVe6ENdX97.svg\"\n />\n )}\n </div>\n </div>\n <Button\n data-cy=\"onboarding-help-button\"\n data-testid=\"onboarding-help-button\"\n icon={RightArrow}\n iconPosition=\"right\"\n label={t(\"neetoMolecules.onboarding.helpScreen.continueButton\")}\n onClick={() => setCurrentStep(currentStep + 1)}\n />\n </div>\n );\n};\n\nexport default HelpScreen;\n","import { t } from \"i18next\";\n\nimport HelpScreen from \"./HelpScreen\";\n\nexport const createSteps = (\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName\n) => {\n const helpStep = {\n label: t(\"neetoMolecules.onboarding.helpLabel\"),\n element: (\n <HelpScreen {...{ currentStep, helpScreenClassName, setCurrentStep }} />\n ),\n };\n\n return onboardingSteps\n .concat(helpStep)\n .map((step, idx) => ({ ...step, id: idx + 1 }));\n};\n","import { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { RightArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nconst WelcomeScreen = withT(({ t, setCurrentStep, currentStep }) => (\n <div\n className=\"neeto-molecules-onboarding__wrapper\"\n data-testid=\"onboarding-welcome-wrapper\"\n >\n <div className=\"mx-auto mb-6 w-full max-w-2xl space-y-2\">\n <Typography\n className=\"text-center\"\n data-cy=\"onboarding-welcome-title\"\n data-testid=\"onboarding-welcome-title\"\n style=\"h1\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.welcomeToTitle\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n <Typography\n className=\"text-center\"\n data-cy=\"onboarding-welcome-description\"\n data-testid=\"onboarding-welcome-description\"\n lineHeight=\"normal\"\n style=\"body1\"\n >\n {t(\"neetoMolecules.onboarding.letUsCustomize\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n </div>\n <Button\n data-cy=\"onboarding-welcome-button\"\n data-testid=\"onboarding-welcome-button\"\n icon={RightArrow}\n label={t(\"neetoMolecules.onboarding.getStarted\")}\n onClick={() => setCurrentStep(currentStep + 1)}\n />\n </div>\n));\n\nexport default WelcomeScreen;\n","import { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { Stepper } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport CompletedScreen from \"./CompletedScreen\";\nimport \"./onboarding.scss\";\nimport { createSteps } from \"./utils\";\nimport WelcomeScreen from \"./WelcomeScreen\";\n\nconst Onboarding = ({\n currentStep = 0,\n setCurrentStep = noop,\n onboardingSteps = [],\n completeButtonProps = {},\n helpScreenClassName = \"\",\n isAnimated = true,\n disableStepClick = false,\n}) => {\n const steps = useMemo(\n () =>\n createSteps(\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName\n ),\n [onboardingSteps]\n );\n\n const prevStep = useRef(currentStep);\n const [direction, setDirection] = useState(\"\");\n\n useEffect(() => {\n if (currentStep === prevStep.current) return;\n\n setDirection(currentStep > prevStep.current ? \"forward\" : \"backward\");\n prevStep.current = currentStep;\n }, [currentStep]);\n\n if (currentStep === 0) {\n return <WelcomeScreen {...{ currentStep, setCurrentStep }} />;\n }\n\n if (currentStep === steps.length + 1) {\n return <CompletedScreen {...{ completeButtonProps }} />;\n }\n\n const handleStepChange = index => setCurrentStep(index + 1);\n\n const isStepperVisible = steps.length > 1;\n\n return (\n <div\n className={classNames(\"neeto-molecules-onboarding__container\", {\n \"neeto-molecules-onboarding__wrapper\": !isStepperVisible,\n })}\n >\n {isStepperVisible && (\n <div className=\"neeto-molecules-onboarding__stepper-wrapper\">\n <Stepper\n {...{ steps }}\n activeIndex={currentStep - 1}\n setActiveIndex={disableStepClick ? noop : handleStepChange}\n />\n </div>\n )}\n {steps.map((step, index) => (\n <div\n key={index}\n className={classNames(\"neeto-molecules-onboarding__content\", {\n \"neeto-molecules-onboarding__content--forward overflow-x-hidden\":\n isAnimated && direction === \"forward\",\n \"neeto-molecules-onboarding__content--backward overflow-x-hidden\":\n isAnimated && direction === \"backward\",\n hidden: currentStep - 1 !== index,\n })}\n >\n {step?.element}\n </div>\n ))}\n </div>\n );\n};\n\nOnboarding.propTypes = {\n /**\n * To specify the current step of the onboarding\n */\n currentStep: PropTypes.number,\n /**\n * List of Custom components for the onboarding\n */\n onboardingSteps: PropTypes.array,\n /**\n * Props for the complete button\n */\n completeButtonProps: PropTypes.object,\n /**\n * To set the step of the onboarding\n */\n setCurrentStep: PropTypes.func,\n /**\n * To pass additional classes to the help screen\n */\n helpScreenClassName: PropTypes.string,\n /**\n * A boolean value to enable or disable the animation for the stepper.\n */\n isAnimated: PropTypes.bool,\n};\n\nexport default Onboarding;\n"],"names":["CompletedScreen","withT","_ref","t","completeButtonProps","_jsxs","className","children","_jsx","Typography","style","appName","capitalize","globalProps","Button","_objectSpread","label","HelpScreen","setCurrentStep","currentStep","helpScreenClassName","_useTranslation","useTranslation","_useBreakpoints","useBreakpoints","isSize","classNames","component","lineHeight","alt","src","icon","RightArrow","iconPosition","onClick","createSteps","onboardingSteps","helpStep","element","concat","map","step","idx","id","WelcomeScreen","Onboarding","_ref$currentStep","_ref$setCurrentStep","noop","_ref$onboardingSteps","_ref$completeButtonPr","_ref$helpScreenClassN","_ref$isAnimated","isAnimated","_ref$disableStepClick","disableStepClick","steps","useMemo","prevStep","useRef","_useState","useState","_useState2","_slicedToArray","direction","setDirection","useEffect","current","length","handleStepChange","index","isStepperVisible","Stepper","activeIndex","setActiveIndex","hidden"],"mappings":"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"}
1
+ {"version":3,"file":"Onboarding.js","sources":["../../src/components/Onboarding/CompletedScreen.jsx","../../src/components/Onboarding/constants.js","../../src/components/Onboarding/HelpScreen.jsx","../../src/components/Onboarding/utils.jsx","../../src/components/Onboarding/WelcomeScreen.jsx","../../src/components/Onboarding/index.jsx"],"sourcesContent":["import { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { Button, Typography } from \"neetoui\";\n\nconst CompletedScreen = withT(({ t, completeButtonProps }) => (\n <div\n className=\"neeto-molecules-onboarding__wrapper\"\n data-testid=\"onboarding-congratulations-wrapper\"\n >\n <div className=\"mx-auto mb-6 w-full max-w-2xl space-y-2\">\n <Typography\n className=\"text-center\"\n data-cy=\"onboarding-congratulations-emoji\"\n style=\"h1\"\n >\n 🎉\n </Typography>\n <Typography\n className=\"text-center\"\n data-cy=\"onboarding-congratulations-title\"\n data-testid=\"onboarding-congratulations-title\"\n style=\"h1\"\n >\n <span className=\"neeto-ui-text-success-500\">\n {t(\"neetoMolecules.onboarding.congratulations\")}\n </span>\n <br />\n {t(\"neetoMolecules.onboarding.readyToUse\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n </div>\n <Button\n data-cy=\"onboarding-congratulations-button\"\n data-testid=\"onboarding-congratulations-button\"\n label={t(\"neetoMolecules.onboarding.helpScreen.startUsingButton\", {\n appName: globalProps.appName,\n })}\n {...completeButtonProps}\n />\n </div>\n));\n\nexport default CompletedScreen;\n","export const GENERAL_ONBOARDING_STEPS = {\n WELCOME: \"welcome\",\n HELP: \"help\",\n FINISH: \"finish\",\n};\n","import classNames from \"classnames\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { RightArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst HelpScreen = ({ setCurrentStep, helpScreenClassName }) => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n return (\n <div\n className={classNames(\n \"mx-auto w-full max-w-2xl space-y-6 p-4\",\n helpScreenClassName\n )}\n >\n <div className=\"space-y-3\">\n <Typography\n component=\"h1\"\n data-cy=\"onboarding-help-title\"\n data-testid=\"onboarding-help-title\"\n style=\"h2\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.title\")}\n </Typography>\n <Typography\n data-cy=\"onboarding-help-description\"\n data-testid=\"onboarding-help-description\"\n lineHeight=\"normal\"\n style=\"body1\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.description\")}\n </Typography>\n <div className=\"w-full\">\n {isSize(\"mobile\") ? (\n <img\n alt=\"\"\n src=\"https://ik.imagekit.io/d9mvewbju/Commons/help-mobile_FpB8LKYj4.svg\"\n />\n ) : (\n <img\n alt=\"\"\n src=\"https://ik.imagekit.io/d9mvewbju/Commons/help-desktop_aVe6ENdX97.svg\"\n />\n )}\n </div>\n </div>\n <Button\n data-cy=\"onboarding-help-button\"\n data-testid=\"onboarding-help-button\"\n icon={RightArrow}\n iconPosition=\"right\"\n label={t(\"neetoMolecules.onboarding.helpScreen.continueButton\")}\n onClick={() => setCurrentStep(\"finish\")}\n />\n </div>\n );\n};\n\nexport default HelpScreen;\n","import { t } from \"i18next\";\n\nimport { GENERAL_ONBOARDING_STEPS } from \"./constants\";\nimport HelpScreen from \"./HelpScreen\";\n\nexport const createSteps = (\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName\n) => {\n const helpStep = {\n key: GENERAL_ONBOARDING_STEPS.HELP,\n label: t(\"neetoMolecules.onboarding.helpLabel\"),\n element: (\n <HelpScreen {...{ currentStep, helpScreenClassName, setCurrentStep }} />\n ),\n };\n\n return onboardingSteps\n .concat(helpStep)\n .map((step, idx) => ({ ...step, id: idx + 1 }));\n};\n","import { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { RightArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nconst WelcomeScreen = withT(({ t, setCurrentStep, nextStep }) => (\n <div\n className=\"neeto-molecules-onboarding__wrapper\"\n data-testid=\"onboarding-welcome-wrapper\"\n >\n <div className=\"mx-auto mb-6 w-full max-w-2xl space-y-2\">\n <Typography\n className=\"text-center\"\n data-cy=\"onboarding-welcome-title\"\n data-testid=\"onboarding-welcome-title\"\n style=\"h1\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.welcomeToTitle\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n <Typography\n className=\"text-center\"\n data-cy=\"onboarding-welcome-description\"\n data-testid=\"onboarding-welcome-description\"\n lineHeight=\"normal\"\n style=\"body1\"\n >\n {t(\"neetoMolecules.onboarding.letUsCustomize\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n </div>\n <Button\n data-cy=\"onboarding-welcome-button\"\n data-testid=\"onboarding-welcome-button\"\n icon={RightArrow}\n label={t(\"neetoMolecules.onboarding.getStarted\")}\n onClick={() => setCurrentStep(nextStep)}\n />\n </div>\n));\n\nexport default WelcomeScreen;\n","import { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { findIndexBy, noop } from \"neetocist\";\nimport { Stepper } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport CompletedScreen from \"./CompletedScreen\";\nimport { GENERAL_ONBOARDING_STEPS } from \"./constants\";\nimport \"./onboarding.scss\";\nimport { createSteps } from \"./utils\";\nimport WelcomeScreen from \"./WelcomeScreen\";\n\nconst Onboarding = ({\n currentStep = GENERAL_ONBOARDING_STEPS.WELCOME,\n setCurrentStep = noop,\n onboardingSteps = [],\n completeButtonProps = {},\n helpScreenClassName = \"\",\n isAnimated = true,\n disableStepClick = false,\n}) => {\n const steps = useMemo(\n () =>\n createSteps(\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName\n ),\n [onboardingSteps]\n );\n\n const prevStep = useRef(currentStep);\n\n const [direction, setDirection] = useState(\"\");\n\n useEffect(() => {\n if (currentStep === prevStep.current) return;\n\n setDirection(currentStep > prevStep.current ? \"forward\" : \"backward\");\n prevStep.current = currentStep;\n }, [currentStep]);\n\n if (currentStep === GENERAL_ONBOARDING_STEPS.WELCOME) {\n return (\n <WelcomeScreen\n {...{ currentStep, setCurrentStep }}\n nextStep={steps[0].key}\n />\n );\n }\n\n if (currentStep === GENERAL_ONBOARDING_STEPS.FINISH) {\n return <CompletedScreen {...{ completeButtonProps }} />;\n }\n\n const handleStepChange = index => setCurrentStep(steps[index].key);\n\n const isStepperVisible = steps.length > 1;\n\n return (\n <div\n className={classNames(\"neeto-molecules-onboarding__container\", {\n \"neeto-molecules-onboarding__wrapper\": !isStepperVisible,\n })}\n >\n {isStepperVisible && (\n <div className=\"neeto-molecules-onboarding__stepper-wrapper\">\n <Stepper\n {...{ steps }}\n activeIndex={findIndexBy({ key: currentStep }, steps)}\n setActiveIndex={disableStepClick ? noop : handleStepChange}\n />\n </div>\n )}\n {steps.map((step, index) => (\n <div\n key={index}\n className={classNames(\"neeto-molecules-onboarding__content\", {\n \"neeto-molecules-onboarding__content--forward overflow-x-hidden\":\n isAnimated && direction === \"forward\",\n \"neeto-molecules-onboarding__content--backward overflow-x-hidden\":\n isAnimated && direction === \"backward\",\n hidden: currentStep !== step.key,\n })}\n >\n {step?.element}\n </div>\n ))}\n </div>\n );\n};\n\nOnboarding.propTypes = {\n /**\n * To specify the current step of the onboarding\n */\n currentStep: PropTypes.number,\n /**\n * List of Custom components for the onboarding\n */\n onboardingSteps: PropTypes.array,\n /**\n * Props for the complete button\n */\n completeButtonProps: PropTypes.object,\n /**\n * To set the step of the onboarding\n */\n setCurrentStep: PropTypes.func,\n /**\n * To pass additional classes to the help screen\n */\n helpScreenClassName: PropTypes.string,\n /**\n * A boolean value to enable or disable the animation for the stepper.\n */\n isAnimated: PropTypes.bool,\n};\n\nexport default Onboarding;\n"],"names":["CompletedScreen","withT","_ref","t","completeButtonProps","_jsxs","className","children","_jsx","Typography","style","appName","capitalize","globalProps","Button","_objectSpread","label","GENERAL_ONBOARDING_STEPS","WELCOME","HELP","FINISH","HelpScreen","setCurrentStep","helpScreenClassName","_useTranslation","useTranslation","_useBreakpoints","useBreakpoints","isSize","classNames","component","lineHeight","alt","src","icon","RightArrow","iconPosition","onClick","createSteps","onboardingSteps","currentStep","helpStep","key","element","concat","map","step","idx","id","WelcomeScreen","nextStep","Onboarding","_ref$currentStep","_ref$setCurrentStep","noop","_ref$onboardingSteps","_ref$completeButtonPr","_ref$helpScreenClassN","_ref$isAnimated","isAnimated","_ref$disableStepClick","disableStepClick","steps","useMemo","prevStep","useRef","_useState","useState","_useState2","_slicedToArray","direction","setDirection","useEffect","current","handleStepChange","index","isStepperVisible","length","Stepper","activeIndex","findIndexBy","setActiveIndex","hidden"],"mappings":"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"}