@livechat/design-system-react-components 1.0.0-alpha.11 → 1.0.0-alpha.14
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/dsrc.cjs.js +15 -1
- package/dist/dsrc.es.js +958 -422
- package/dist/dsrc.umd.js +15 -1
- package/dist/src/components/Alert/Alert.d.ts +3 -7
- package/dist/src/components/Icon/Icon.d.ts +6 -62
- package/dist/src/components/Icon/index.d.ts +1 -1
- package/dist/src/components/Modal/ModalPortal.d.ts +1 -1
- package/dist/src/components/Popover/Popover.d.ts +2 -7
- package/dist/src/components/Progress/ProgressBar.d.ts +9 -0
- package/dist/src/components/Progress/ProgressCircle.d.ts +1 -1
- package/dist/src/components/Progress/constants.d.ts +2 -10
- package/dist/src/components/Progress/index.d.ts +1 -0
- package/dist/src/components/PromoBanner/PromoBanner.d.ts +0 -6
- package/dist/src/components/Search/Search.d.ts +16 -0
- package/dist/src/components/Search/index.d.ts +1 -0
- package/dist/src/components/Switch/Switch.d.ts +1 -8
- package/dist/src/components/Toast/Toast.d.ts +2 -8
- package/dist/src/components/Toast/ToastWrapper.d.ts +2 -9
- package/dist/src/components/Tooltip/Info.d.ts +8 -0
- package/dist/src/components/Tooltip/Interactive.d.ts +14 -0
- package/dist/src/components/Tooltip/Simple.d.ts +4 -0
- package/dist/src/components/Tooltip/SpotlightOverlay.d.ts +7 -0
- package/dist/src/components/Tooltip/Tooltip.d.ts +22 -0
- package/dist/src/components/Tooltip/UserGuide.d.ts +12 -0
- package/dist/src/components/Tooltip/helpers.d.ts +2 -0
- package/dist/src/components/Tooltip/index.d.ts +5 -0
- package/dist/src/components/Tooltip/virtualElementReference.d.ts +9 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/style.css +1 -1
- package/dist/themes/dark.css +129 -0
- package/dist/themes/dark.css.map +1 -0
- package/dist/themes/legacy.css +130 -0
- package/dist/themes/legacy.css.map +1 -0
- package/dist/themes/light.css +129 -0
- package/dist/themes/light.css.map +1 -0
- package/package.json +14 -8
package/dist/dsrc.es.js
CHANGED
|
@@ -29,15 +29,20 @@ var __objRest = (source, exclude) => {
|
|
|
29
29
|
}
|
|
30
30
|
return target;
|
|
31
31
|
};
|
|
32
|
+
var __publicField = (obj, key, value) => {
|
|
33
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
34
|
+
return value;
|
|
35
|
+
};
|
|
32
36
|
import * as React from "react";
|
|
33
37
|
import cx from "clsx";
|
|
34
|
-
import { Info, Warning, CheckCircleSolid, Block,
|
|
38
|
+
import { Close, Info as Info$1, Warning, CheckCircleSolid, Block, Check, ChevronUp, ChevronDown, Search, Error as Error2 } from "@livechat/design-system-icons/react/material";
|
|
35
39
|
import debounce from "lodash.debounce";
|
|
36
40
|
import * as ReactDOM from "react-dom";
|
|
37
|
-
import {
|
|
41
|
+
import { useFloating, offset, flip, autoUpdate, arrow } from "@floating-ui/react-dom";
|
|
38
42
|
import { getContrast } from "polished";
|
|
39
43
|
import escape from "lodash.escape";
|
|
40
44
|
import { TransitionGroup, CSSTransition } from "react-transition-group";
|
|
45
|
+
import { css } from "@emotion/css";
|
|
41
46
|
var index = "";
|
|
42
47
|
const DesignTokens = {
|
|
43
48
|
Background: "--background",
|
|
@@ -166,7 +171,7 @@ const DesignTokens = {
|
|
|
166
171
|
DecorPurple50: "--decor-purple50"
|
|
167
172
|
};
|
|
168
173
|
const caps = "lc-Typography-module__caps___c3eNJ";
|
|
169
|
-
var styles$
|
|
174
|
+
var styles$u = {
|
|
170
175
|
"heading-xl": "lc-Typography-module__heading-xl___nhr-6",
|
|
171
176
|
"heading-lg": "lc-Typography-module__heading-lg___XYF7l",
|
|
172
177
|
"heading-md": "lc-Typography-module__heading-md___wHOIs",
|
|
@@ -183,14 +188,13 @@ var styles$r = {
|
|
|
183
188
|
"paragraph-xs": "lc-Typography-module__paragraph-xs___OUooD",
|
|
184
189
|
"paragraph-xs--bold": "lc-Typography-module__paragraph-xs--bold___z7om7"
|
|
185
190
|
};
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
})(sizeToElement || {});
|
|
191
|
+
const SIZE_TO_ELEMENT_MAP = {
|
|
192
|
+
xl: "h1",
|
|
193
|
+
lg: "h2",
|
|
194
|
+
md: "h3",
|
|
195
|
+
sm: "h4",
|
|
196
|
+
xs: "h5"
|
|
197
|
+
};
|
|
194
198
|
const Heading = (_a) => {
|
|
195
199
|
var _b = _a, {
|
|
196
200
|
as,
|
|
@@ -203,7 +207,7 @@ const Heading = (_a) => {
|
|
|
203
207
|
"children",
|
|
204
208
|
"className"
|
|
205
209
|
]);
|
|
206
|
-
return React.createElement(as ||
|
|
210
|
+
return React.createElement(as || SIZE_TO_ELEMENT_MAP[size], __spreadValues({ className: cx(styles$u[`heading-${size}`], className) }, props), children);
|
|
207
211
|
};
|
|
208
212
|
const Text = (_c) => {
|
|
209
213
|
var _d = _c, {
|
|
@@ -228,15 +232,15 @@ const Text = (_c) => {
|
|
|
228
232
|
const baseClassPrefix = caps2 ? "caps" : `paragraph-${size}`;
|
|
229
233
|
return React.createElement(as, __spreadValues({
|
|
230
234
|
className: cx({
|
|
231
|
-
[styles$
|
|
232
|
-
[styles$
|
|
233
|
-
[styles$
|
|
234
|
-
[styles$
|
|
235
|
+
[styles$u[`${baseClassPrefix}`]]: true,
|
|
236
|
+
[styles$u[`${baseClassPrefix}--bold`]]: bold,
|
|
237
|
+
[styles$u[`${baseClassPrefix}--strike`]]: strike,
|
|
238
|
+
[styles$u[`${baseClassPrefix}--underline`]]: underline
|
|
235
239
|
}, className)
|
|
236
240
|
}, props), children);
|
|
237
241
|
};
|
|
238
242
|
const icon$1 = "lc-Icon-module__icon___tw31R";
|
|
239
|
-
var styles$
|
|
243
|
+
var styles$t = {
|
|
240
244
|
icon: icon$1,
|
|
241
245
|
"icon--primary": "lc-Icon-module__icon--primary___JJnBV",
|
|
242
246
|
"icon--subtle": "lc-Icon-module__icon--subtle___sZIzL",
|
|
@@ -255,95 +259,49 @@ var styles$q = {
|
|
|
255
259
|
"icon--disabled--warning": "lc-Icon-module__icon--disabled--warning___8ko1e",
|
|
256
260
|
"icon--disabled--error": "lc-Icon-module__icon--disabled--error___9KbVo"
|
|
257
261
|
};
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
IconSizeName2["Small"] = "small";
|
|
261
|
-
IconSizeName2["Medium"] = "medium";
|
|
262
|
-
IconSizeName2["Large"] = "large";
|
|
263
|
-
IconSizeName2["XLarge"] = "xlarge";
|
|
264
|
-
return IconSizeName2;
|
|
265
|
-
})(IconSizeName || {});
|
|
266
|
-
const IconSize = {
|
|
267
|
-
["xsmall"]: {
|
|
262
|
+
const IconSizeMap = {
|
|
263
|
+
xsmall: {
|
|
268
264
|
width: 12,
|
|
269
265
|
height: 12
|
|
270
266
|
},
|
|
271
|
-
|
|
267
|
+
small: {
|
|
272
268
|
width: 16,
|
|
273
269
|
height: 16
|
|
274
270
|
},
|
|
275
|
-
|
|
271
|
+
medium: {
|
|
276
272
|
width: 20,
|
|
277
273
|
height: 20
|
|
278
274
|
},
|
|
279
|
-
|
|
275
|
+
large: {
|
|
280
276
|
width: 24,
|
|
281
277
|
height: 24
|
|
282
278
|
},
|
|
283
|
-
|
|
279
|
+
xlarge: {
|
|
284
280
|
width: 32,
|
|
285
281
|
height: 32
|
|
286
282
|
}
|
|
287
283
|
};
|
|
288
|
-
|
|
289
|
-
IconTypeName2["Primary"] = "primary";
|
|
290
|
-
IconTypeName2["Subtle"] = "subtle";
|
|
291
|
-
IconTypeName2["Inverted"] = "inverted";
|
|
292
|
-
IconTypeName2["InvertedSubtle"] = "inverted_subtle";
|
|
293
|
-
IconTypeName2["Link"] = "link";
|
|
294
|
-
IconTypeName2["Success"] = "success";
|
|
295
|
-
IconTypeName2["Warning"] = "warning";
|
|
296
|
-
IconTypeName2["Error"] = "error";
|
|
297
|
-
return IconTypeName2;
|
|
298
|
-
})(IconTypeName || {});
|
|
299
|
-
const IconColorMapper = {
|
|
300
|
-
["primary"]: "primary",
|
|
301
|
-
["subtle"]: "subtle",
|
|
302
|
-
["inverted"]: "inverted",
|
|
303
|
-
["inverted_subtle"]: "inverted-subtle",
|
|
304
|
-
["link"]: "link",
|
|
305
|
-
["success"]: "success",
|
|
306
|
-
["warning"]: "warning",
|
|
307
|
-
["error"]: "error"
|
|
308
|
-
};
|
|
309
|
-
const IconColorDisabledMapper = {
|
|
310
|
-
["primary"]: "disabled--primary",
|
|
311
|
-
["subtle"]: "disabled--subtle",
|
|
312
|
-
["inverted"]: "disabled--inverted",
|
|
313
|
-
["inverted_subtle"]: "disabled--inverted-subtle",
|
|
314
|
-
["link"]: "disabled--link",
|
|
315
|
-
["success"]: "disabled--success",
|
|
316
|
-
["warning"]: "disabled--warning",
|
|
317
|
-
["error"]: "disabled--error"
|
|
318
|
-
};
|
|
319
|
-
const baseClass$t = "icon";
|
|
284
|
+
const baseClass$A = "icon";
|
|
320
285
|
const Icon = (props) => {
|
|
321
286
|
const _a = props, {
|
|
322
287
|
source,
|
|
323
288
|
size = "medium",
|
|
324
|
-
|
|
289
|
+
kind,
|
|
325
290
|
disabled,
|
|
326
291
|
className,
|
|
327
292
|
customColor
|
|
328
293
|
} = _a, restProps = __objRest(_a, [
|
|
329
294
|
"source",
|
|
330
295
|
"size",
|
|
331
|
-
"
|
|
296
|
+
"kind",
|
|
332
297
|
"disabled",
|
|
333
298
|
"className",
|
|
334
299
|
"customColor"
|
|
335
300
|
]);
|
|
336
|
-
|
|
337
|
-
if (iconType) {
|
|
338
|
-
filledColor = IconColorMapper[iconType];
|
|
339
|
-
if (disabled) {
|
|
340
|
-
filledColor = IconColorDisabledMapper[iconType];
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
const GeneratedIcon = React.createElement(source, __spreadProps(__spreadValues({}, IconSize[size]), {
|
|
301
|
+
const GeneratedIcon = React.createElement(source, __spreadProps(__spreadValues({}, IconSizeMap[size]), {
|
|
344
302
|
color: customColor
|
|
345
303
|
}));
|
|
346
|
-
const mergedClassNames = cx(className, styles$
|
|
304
|
+
const mergedClassNames = cx(className, styles$t[baseClass$A], kind && styles$t[`${baseClass$A}--${disabled ? "disabled--" : ""}${kind}`]);
|
|
347
305
|
return /* @__PURE__ */ React.createElement("span", __spreadProps(__spreadValues({}, restProps), {
|
|
348
306
|
className: mergedClassNames
|
|
349
307
|
}), GeneratedIcon);
|
|
@@ -351,7 +309,7 @@ const Icon = (props) => {
|
|
|
351
309
|
const alert = "lc-Alert-module__alert___HBTns";
|
|
352
310
|
const alert__content = "lc-Alert-module__alert__content___9nZdf";
|
|
353
311
|
const alert__icon = "lc-Alert-module__alert__icon___8TaAH";
|
|
354
|
-
var styles$
|
|
312
|
+
var styles$s = {
|
|
355
313
|
alert,
|
|
356
314
|
alert__content,
|
|
357
315
|
"alert__content-text": "lc-Alert-module__alert__content-text___x2Un5",
|
|
@@ -366,33 +324,33 @@ var styles$p = {
|
|
|
366
324
|
alert__icon
|
|
367
325
|
};
|
|
368
326
|
const IconConfig$1 = {
|
|
369
|
-
|
|
370
|
-
source: Info,
|
|
371
|
-
|
|
327
|
+
info: {
|
|
328
|
+
source: Info$1,
|
|
329
|
+
kind: "link"
|
|
372
330
|
},
|
|
373
|
-
|
|
331
|
+
warning: {
|
|
374
332
|
source: Warning,
|
|
375
|
-
|
|
333
|
+
kind: "warning"
|
|
376
334
|
},
|
|
377
|
-
|
|
335
|
+
success: {
|
|
378
336
|
source: CheckCircleSolid,
|
|
379
|
-
|
|
337
|
+
kind: "success"
|
|
380
338
|
},
|
|
381
|
-
|
|
339
|
+
error: {
|
|
382
340
|
source: Block,
|
|
383
|
-
|
|
341
|
+
kind: "error"
|
|
384
342
|
}
|
|
385
343
|
};
|
|
386
|
-
const baseClass$
|
|
344
|
+
const baseClass$z = "alert";
|
|
387
345
|
const Alert = ({
|
|
388
346
|
children,
|
|
389
347
|
className,
|
|
390
|
-
|
|
348
|
+
kind = "info",
|
|
391
349
|
onClose
|
|
392
350
|
}) => {
|
|
393
351
|
const containerRef = React.useRef(null);
|
|
394
352
|
const [isSmallContainer, setIsSmallContainer] = React.useState(false);
|
|
395
|
-
const mergedClassNames = cx(styles$
|
|
353
|
+
const mergedClassNames = cx(styles$s[baseClass$z], styles$s[`${baseClass$z}--${kind}`], isSmallContainer && styles$s[`${baseClass$z}--small`], className);
|
|
396
354
|
React.useEffect(() => {
|
|
397
355
|
const handleResize = debounce(() => {
|
|
398
356
|
if (containerRef.current && containerRef.current.offsetWidth <= 400) {
|
|
@@ -407,24 +365,24 @@ const Alert = ({
|
|
|
407
365
|
ref: containerRef,
|
|
408
366
|
className: mergedClassNames
|
|
409
367
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
410
|
-
className: styles$
|
|
411
|
-
}, /* @__PURE__ */ React.createElement(Icon, __spreadProps(__spreadValues({}, IconConfig$1[
|
|
412
|
-
className: styles$
|
|
368
|
+
className: styles$s[`${baseClass$z}__content`]
|
|
369
|
+
}, /* @__PURE__ */ React.createElement(Icon, __spreadProps(__spreadValues({}, IconConfig$1[kind]), {
|
|
370
|
+
className: styles$s[`${baseClass$z}__content-icon`]
|
|
413
371
|
})), /* @__PURE__ */ React.createElement(Text, {
|
|
414
372
|
as: "div",
|
|
415
|
-
className: cx(styles$
|
|
373
|
+
className: cx(styles$s[`${baseClass$z}__content-text`], onClose && styles$s[`${baseClass$z}__content-text--margin`])
|
|
416
374
|
}, children)), onClose && /* @__PURE__ */ React.createElement("button", {
|
|
417
375
|
type: "button",
|
|
418
|
-
className: styles$
|
|
376
|
+
className: styles$s[`${baseClass$z}__close-icon`],
|
|
419
377
|
onClick: onClose
|
|
420
378
|
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
421
379
|
source: Close,
|
|
422
|
-
size:
|
|
423
|
-
|
|
380
|
+
size: "large",
|
|
381
|
+
kind: "primary"
|
|
424
382
|
})));
|
|
425
383
|
};
|
|
426
384
|
const badge = "lc-Badge-module__badge___GhLnu";
|
|
427
|
-
var styles$
|
|
385
|
+
var styles$r = {
|
|
428
386
|
badge,
|
|
429
387
|
"badge--secondary": "lc-Badge-module__badge--secondary___JjNIJ"
|
|
430
388
|
};
|
|
@@ -434,8 +392,8 @@ const Badge = ({
|
|
|
434
392
|
secondary = false
|
|
435
393
|
}) => {
|
|
436
394
|
return /* @__PURE__ */ React.createElement("span", {
|
|
437
|
-
className: cx(styles$
|
|
438
|
-
[styles$
|
|
395
|
+
className: cx(styles$r.badge, className, {
|
|
396
|
+
[styles$r["badge--secondary"]]: secondary
|
|
439
397
|
})
|
|
440
398
|
}, children);
|
|
441
399
|
};
|
|
@@ -443,7 +401,7 @@ const loader = "lc-Loader-module__loader___LRflD";
|
|
|
443
401
|
const loader__spinner = "lc-Loader-module__loader__spinner___l3C1g";
|
|
444
402
|
const rotate = "lc-Loader-module__rotate___Tlni-";
|
|
445
403
|
const loader__label = "lc-Loader-module__loader__label___R74f6";
|
|
446
|
-
var styles$
|
|
404
|
+
var styles$q = {
|
|
447
405
|
loader,
|
|
448
406
|
loader__spinner,
|
|
449
407
|
"loader__spinner--small": "lc-Loader-module__loader__spinner--small___dGFFt",
|
|
@@ -453,8 +411,8 @@ var styles$n = {
|
|
|
453
411
|
rotate,
|
|
454
412
|
loader__label
|
|
455
413
|
};
|
|
456
|
-
const baseClass$
|
|
457
|
-
const spinnerClass = `${baseClass$
|
|
414
|
+
const baseClass$y = "loader";
|
|
415
|
+
const spinnerClass = `${baseClass$y}__spinner`;
|
|
458
416
|
const Loader = ({
|
|
459
417
|
primaryColor,
|
|
460
418
|
secondaryColor,
|
|
@@ -463,11 +421,11 @@ const Loader = ({
|
|
|
463
421
|
size = "medium"
|
|
464
422
|
}) => {
|
|
465
423
|
return /* @__PURE__ */ React.createElement("div", {
|
|
466
|
-
className: cx(styles$
|
|
424
|
+
className: cx(styles$q[baseClass$y], className)
|
|
467
425
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
468
|
-
className: cx(styles$
|
|
426
|
+
className: cx(styles$q[spinnerClass], styles$q[`${spinnerClass}--${size}`])
|
|
469
427
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
470
|
-
className: styles$
|
|
428
|
+
className: styles$q["loader__spinner-circle"],
|
|
471
429
|
style: {
|
|
472
430
|
borderColor: secondaryColor,
|
|
473
431
|
borderTopColor: primaryColor
|
|
@@ -475,14 +433,14 @@ const Loader = ({
|
|
|
475
433
|
})), label && /* @__PURE__ */ React.createElement(Text, {
|
|
476
434
|
as: "div",
|
|
477
435
|
size: "md",
|
|
478
|
-
className: styles$
|
|
436
|
+
className: styles$q["loader__label"]
|
|
479
437
|
}, label));
|
|
480
438
|
};
|
|
481
439
|
const btn$1 = "lc-Button-module__btn___aijZJ";
|
|
482
440
|
const btn__loader = "lc-Button-module__btn__loader___c8zZz";
|
|
483
441
|
const btn__content = "lc-Button-module__btn__content___wefl2";
|
|
484
442
|
const btn__icon = "lc-Button-module__btn__icon___GVExB";
|
|
485
|
-
var styles$
|
|
443
|
+
var styles$p = {
|
|
486
444
|
btn: btn$1,
|
|
487
445
|
"btn--disabled": "lc-Button-module__btn--disabled___lXBav",
|
|
488
446
|
"btn--icon-only": "lc-Button-module__btn--icon-only___bF5pW",
|
|
@@ -503,7 +461,7 @@ var styles$m = {
|
|
|
503
461
|
btn__content,
|
|
504
462
|
btn__icon
|
|
505
463
|
};
|
|
506
|
-
const baseClass$
|
|
464
|
+
const baseClass$x = "btn";
|
|
507
465
|
const Button = (_e) => {
|
|
508
466
|
var _f = _e, {
|
|
509
467
|
loading = false,
|
|
@@ -534,11 +492,11 @@ const Button = (_e) => {
|
|
|
534
492
|
]);
|
|
535
493
|
const isDisabled = loading || disabled;
|
|
536
494
|
const Component = href ? "a" : "button";
|
|
537
|
-
const mergedClassNames = cx(className, styles$
|
|
538
|
-
[styles$
|
|
539
|
-
[styles$
|
|
540
|
-
[styles$
|
|
541
|
-
[styles$
|
|
495
|
+
const mergedClassNames = cx(className, styles$p[baseClass$x], styles$p[`${baseClass$x}--${kind}`], styles$p[`${baseClass$x}--${size}`], {
|
|
496
|
+
[styles$p[`${baseClass$x}--loading`]]: loading,
|
|
497
|
+
[styles$p[`${baseClass$x}--full-width`]]: fullWidth,
|
|
498
|
+
[styles$p[`${baseClass$x}--icon-only`]]: !children && icon2,
|
|
499
|
+
[styles$p[`${baseClass$x}--disabled`]]: isDisabled
|
|
542
500
|
});
|
|
543
501
|
return /* @__PURE__ */ React.createElement(Component, __spreadValues({
|
|
544
502
|
className: mergedClassNames,
|
|
@@ -548,16 +506,16 @@ const Button = (_e) => {
|
|
|
548
506
|
}, props), loading && /* @__PURE__ */ React.createElement(Loader, {
|
|
549
507
|
size: "small",
|
|
550
508
|
label: loaderLabel,
|
|
551
|
-
className: styles$
|
|
509
|
+
className: styles$p[`${baseClass$x}__loader`]
|
|
552
510
|
}), icon2 && React.cloneElement(icon2, {
|
|
553
|
-
className: cx(styles$
|
|
511
|
+
className: cx(styles$p[`${baseClass$x}__icon`], styles$p[`${baseClass$x}__icon--${iconPosition}`]),
|
|
554
512
|
disabled
|
|
555
513
|
}), /* @__PURE__ */ React.createElement("div", {
|
|
556
|
-
className: styles$
|
|
514
|
+
className: styles$p[`${baseClass$x}__content`]
|
|
557
515
|
}, children));
|
|
558
516
|
};
|
|
559
517
|
const btn = "lc-ButtonGroup-module__btn___bXPrU";
|
|
560
|
-
var styles$
|
|
518
|
+
var styles$o = {
|
|
561
519
|
"btn-group": "lc-ButtonGroup-module__btn-group___R-lZQ",
|
|
562
520
|
btn,
|
|
563
521
|
"btn--active": "lc-ButtonGroup-module__btn--active___VAc37",
|
|
@@ -567,7 +525,7 @@ var styles$l = {
|
|
|
567
525
|
};
|
|
568
526
|
function noop() {
|
|
569
527
|
}
|
|
570
|
-
const baseClass$
|
|
528
|
+
const baseClass$w = "btn-group";
|
|
571
529
|
const ButtonGroup = (_g) => {
|
|
572
530
|
var _h = _g, {
|
|
573
531
|
size = "medium",
|
|
@@ -586,7 +544,7 @@ const ButtonGroup = (_g) => {
|
|
|
586
544
|
"currentIndex",
|
|
587
545
|
"initialIndex"
|
|
588
546
|
]);
|
|
589
|
-
const mergedClassName = cx(styles$
|
|
547
|
+
const mergedClassName = cx(styles$o[baseClass$w], className);
|
|
590
548
|
const [currentStateIndex, setCurrentStateIndex] = React.useState(initialIndex);
|
|
591
549
|
const isControlled = typeof currentIndex === "number";
|
|
592
550
|
const _currentIndex = isControlled ? currentIndex : currentStateIndex;
|
|
@@ -610,14 +568,14 @@ const ButtonGroup = (_g) => {
|
|
|
610
568
|
child.props.onClick(event);
|
|
611
569
|
}
|
|
612
570
|
},
|
|
613
|
-
className: cx(styles$
|
|
571
|
+
className: cx(styles$o["btn"], styles$o[`btn--${size}`], i === _currentIndex && styles$o["btn--active"])
|
|
614
572
|
})));
|
|
615
573
|
};
|
|
616
574
|
const card = "lc-Card-module__card___GqMm2";
|
|
617
575
|
const card__title = "lc-Card-module__card__title___1YjAR";
|
|
618
576
|
const card__text = "lc-Card-module__card__text___-jYlF";
|
|
619
577
|
const card__img = "lc-Card-module__card__img___teLC8";
|
|
620
|
-
var styles$
|
|
578
|
+
var styles$n = {
|
|
621
579
|
card,
|
|
622
580
|
card__title,
|
|
623
581
|
card__text,
|
|
@@ -638,16 +596,16 @@ const Card = (_i) => {
|
|
|
638
596
|
return /* @__PURE__ */ React.createElement(Text, __spreadValues({
|
|
639
597
|
as: "div",
|
|
640
598
|
size: "md",
|
|
641
|
-
className: cx(styles$
|
|
599
|
+
className: cx(styles$n["card"], className)
|
|
642
600
|
}, restProps), (img || title) && /* @__PURE__ */ React.createElement(Heading, {
|
|
643
601
|
as: "div",
|
|
644
602
|
size: "sm",
|
|
645
|
-
className: styles$
|
|
603
|
+
className: styles$n["card__title"]
|
|
646
604
|
}, img && /* @__PURE__ */ React.createElement("img", {
|
|
647
605
|
src: img,
|
|
648
|
-
className: styles$
|
|
606
|
+
className: styles$n["card__img"]
|
|
649
607
|
}), title && /* @__PURE__ */ React.createElement("div", {
|
|
650
|
-
className: styles$
|
|
608
|
+
className: styles$n["card__text"]
|
|
651
609
|
}, title)), children);
|
|
652
610
|
};
|
|
653
611
|
const checkbox = "lc-Checkbox-module__checkbox___G7nTf";
|
|
@@ -657,7 +615,7 @@ const checkbox__checkmark = "lc-Checkbox-module__checkbox__checkmark___16pfY";
|
|
|
657
615
|
const checkbox__input = "lc-Checkbox-module__checkbox__input___YLbVF";
|
|
658
616
|
const checkbox__text = "lc-Checkbox-module__checkbox__text___P2SIq";
|
|
659
617
|
const checkbox__helper = "lc-Checkbox-module__checkbox__helper___YSJ-n";
|
|
660
|
-
var styles$
|
|
618
|
+
var styles$m = {
|
|
661
619
|
checkbox,
|
|
662
620
|
checkbox__label,
|
|
663
621
|
checkbox__square,
|
|
@@ -668,30 +626,30 @@ var styles$j = {
|
|
|
668
626
|
"checkbox--disabled": "lc-Checkbox-module__checkbox--disabled___-lAqW",
|
|
669
627
|
checkbox__helper
|
|
670
628
|
};
|
|
671
|
-
const baseClass$
|
|
629
|
+
const baseClass$v = "checkbox";
|
|
672
630
|
const Checkbox = (_k) => {
|
|
673
631
|
var _l = _k, {
|
|
674
632
|
className = ""
|
|
675
633
|
} = _l, props = __objRest(_l, [
|
|
676
634
|
"className"
|
|
677
635
|
]);
|
|
678
|
-
const mergedClassNames = cx(styles$
|
|
636
|
+
const mergedClassNames = cx(styles$m[`${baseClass$v}__square`], className);
|
|
679
637
|
return /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("input", __spreadProps(__spreadValues({}, props), {
|
|
680
|
-
className: styles$
|
|
638
|
+
className: styles$m[`${baseClass$v}__input`],
|
|
681
639
|
type: "checkbox"
|
|
682
640
|
})), /* @__PURE__ */ React.createElement("div", {
|
|
683
641
|
className: mergedClassNames
|
|
684
642
|
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
685
643
|
source: Check,
|
|
686
|
-
|
|
687
|
-
size:
|
|
688
|
-
className: styles$
|
|
644
|
+
kind: "inverted",
|
|
645
|
+
size: "xsmall",
|
|
646
|
+
className: styles$m[`${baseClass$v}__checkmark`]
|
|
689
647
|
})));
|
|
690
648
|
};
|
|
691
|
-
var styles$
|
|
649
|
+
var styles$l = {
|
|
692
650
|
"field-description": "lc-FieldDescription-module__field-description___IcRDH"
|
|
693
651
|
};
|
|
694
|
-
const baseClass$
|
|
652
|
+
const baseClass$u = "field-description";
|
|
695
653
|
const FieldDescription = (_m) => {
|
|
696
654
|
var _n = _m, {
|
|
697
655
|
children,
|
|
@@ -700,7 +658,7 @@ const FieldDescription = (_m) => {
|
|
|
700
658
|
"children",
|
|
701
659
|
"className"
|
|
702
660
|
]);
|
|
703
|
-
const mergedClassNames = cx(styles$
|
|
661
|
+
const mergedClassNames = cx(styles$l[baseClass$u], className);
|
|
704
662
|
return /* @__PURE__ */ React.createElement(Text, __spreadProps(__spreadValues({
|
|
705
663
|
as: "span",
|
|
706
664
|
size: "sm"
|
|
@@ -708,7 +666,7 @@ const FieldDescription = (_m) => {
|
|
|
708
666
|
className: mergedClassNames
|
|
709
667
|
}), children);
|
|
710
668
|
};
|
|
711
|
-
const baseClass$
|
|
669
|
+
const baseClass$t = "checkbox";
|
|
712
670
|
const CheckboxField = (_o) => {
|
|
713
671
|
var _p = _o, {
|
|
714
672
|
children,
|
|
@@ -723,29 +681,29 @@ const CheckboxField = (_o) => {
|
|
|
723
681
|
"checked",
|
|
724
682
|
"disabled"
|
|
725
683
|
]);
|
|
726
|
-
const mergedClassNames = cx(styles$
|
|
727
|
-
[styles$
|
|
728
|
-
[styles$
|
|
684
|
+
const mergedClassNames = cx(styles$m[baseClass$t], className, {
|
|
685
|
+
[styles$m[`${baseClass$t}--selected`]]: checked,
|
|
686
|
+
[styles$m[`${baseClass$t}--disabled`]]: disabled
|
|
729
687
|
});
|
|
730
688
|
return /* @__PURE__ */ React.createElement("div", {
|
|
731
689
|
className: mergedClassNames
|
|
732
690
|
}, /* @__PURE__ */ React.createElement("label", {
|
|
733
|
-
className: styles$
|
|
691
|
+
className: styles$m[`${baseClass$t}__label`]
|
|
734
692
|
}, /* @__PURE__ */ React.createElement(Checkbox, __spreadProps(__spreadValues({}, props), {
|
|
735
693
|
checked,
|
|
736
694
|
disabled
|
|
737
695
|
})), /* @__PURE__ */ React.createElement(Text, {
|
|
738
696
|
as: "div",
|
|
739
697
|
size: "md",
|
|
740
|
-
className: styles$
|
|
698
|
+
className: styles$m[`${baseClass$t}__text`]
|
|
741
699
|
}, children)), description && /* @__PURE__ */ React.createElement(FieldDescription, {
|
|
742
|
-
className: styles$
|
|
700
|
+
className: styles$m[`${baseClass$t}__helper`]
|
|
743
701
|
}, description));
|
|
744
702
|
};
|
|
745
|
-
var styles$
|
|
703
|
+
var styles$k = {
|
|
746
704
|
"field-error": "lc-FieldError-module__field-error___IDkPT"
|
|
747
705
|
};
|
|
748
|
-
const baseClass$
|
|
706
|
+
const baseClass$s = "field-error";
|
|
749
707
|
const FieldError = (_q) => {
|
|
750
708
|
var _r = _q, {
|
|
751
709
|
children,
|
|
@@ -754,7 +712,7 @@ const FieldError = (_q) => {
|
|
|
754
712
|
"children",
|
|
755
713
|
"className"
|
|
756
714
|
]);
|
|
757
|
-
const mergedClassNames = cx(styles$
|
|
715
|
+
const mergedClassNames = cx(styles$k[baseClass$s], className);
|
|
758
716
|
return /* @__PURE__ */ React.createElement(Text, __spreadProps(__spreadValues({
|
|
759
717
|
as: "span",
|
|
760
718
|
size: "sm"
|
|
@@ -762,12 +720,12 @@ const FieldError = (_q) => {
|
|
|
762
720
|
className: mergedClassNames
|
|
763
721
|
}), children);
|
|
764
722
|
};
|
|
765
|
-
var styles$
|
|
723
|
+
var styles$j = {
|
|
766
724
|
"field-group": "lc-FieldGroup-module__field-group___gy8lp",
|
|
767
725
|
"field-group--inline": "lc-FieldGroup-module__field-group--inline___or4qf",
|
|
768
726
|
"field-group--stretched": "lc-FieldGroup-module__field-group--stretched___6rkuO"
|
|
769
727
|
};
|
|
770
|
-
const baseClass$
|
|
728
|
+
const baseClass$r = "field-group";
|
|
771
729
|
const FieldGroup = (_s) => {
|
|
772
730
|
var _t = _s, {
|
|
773
731
|
className = "",
|
|
@@ -784,9 +742,9 @@ const FieldGroup = (_s) => {
|
|
|
784
742
|
"inline",
|
|
785
743
|
"stretch"
|
|
786
744
|
]);
|
|
787
|
-
const mergedClassNames = cx(styles$
|
|
788
|
-
[styles$
|
|
789
|
-
[styles$
|
|
745
|
+
const mergedClassNames = cx(styles$j[baseClass$r], className, {
|
|
746
|
+
[styles$j[`${baseClass$r}--inline`]]: inline,
|
|
747
|
+
[styles$j[`${baseClass$r}--stretched`]]: stretch
|
|
790
748
|
});
|
|
791
749
|
return /* @__PURE__ */ React.createElement("div", __spreadProps(__spreadValues({}, props), {
|
|
792
750
|
className: mergedClassNames
|
|
@@ -797,14 +755,14 @@ const form__header = "lc-Form-module__form__header___U4B7t";
|
|
|
797
755
|
const form__footer = "lc-Form-module__form__footer___1-sUX";
|
|
798
756
|
const form__label = "lc-Form-module__form__label___spg-J";
|
|
799
757
|
const form__helper = "lc-Form-module__form__helper___bhfwS";
|
|
800
|
-
var styles$
|
|
758
|
+
var styles$i = {
|
|
801
759
|
form,
|
|
802
760
|
form__header,
|
|
803
761
|
form__footer,
|
|
804
762
|
form__label,
|
|
805
763
|
form__helper
|
|
806
764
|
};
|
|
807
|
-
const baseClass$
|
|
765
|
+
const baseClass$q = "form";
|
|
808
766
|
const Form = (_u) => {
|
|
809
767
|
var _v = _u, {
|
|
810
768
|
className,
|
|
@@ -820,27 +778,27 @@ const Form = (_u) => {
|
|
|
820
778
|
"formFooter"
|
|
821
779
|
]);
|
|
822
780
|
return /* @__PURE__ */ React.createElement("form", __spreadValues({
|
|
823
|
-
className: cx(styles$
|
|
781
|
+
className: cx(styles$i[baseClass$q], className)
|
|
824
782
|
}, restProps), (labelText || helperText) && /* @__PURE__ */ React.createElement("div", {
|
|
825
|
-
className: styles$
|
|
783
|
+
className: styles$i[`${baseClass$q}__header`]
|
|
826
784
|
}, labelText && /* @__PURE__ */ React.createElement(Heading, {
|
|
827
785
|
size: "sm",
|
|
828
|
-
className: styles$
|
|
786
|
+
className: styles$i[`${baseClass$q}__label`]
|
|
829
787
|
}, labelText), helperText && /* @__PURE__ */ React.createElement(Text, {
|
|
830
788
|
as: "p",
|
|
831
789
|
size: "sm",
|
|
832
|
-
className: styles$
|
|
790
|
+
className: styles$i[`${baseClass$q}__helper`]
|
|
833
791
|
}, helperText)), children, formFooter && /* @__PURE__ */ React.createElement("div", {
|
|
834
|
-
className: styles$
|
|
792
|
+
className: styles$i[`${baseClass$q}__footer`]
|
|
835
793
|
}, formFooter));
|
|
836
794
|
};
|
|
837
|
-
var styles$
|
|
795
|
+
var styles$h = {
|
|
838
796
|
"form-group": "lc-FormGroup-module__form-group___e2JHa",
|
|
839
797
|
"form-group__header": "lc-FormGroup-module__form-group__header___DgGmR",
|
|
840
798
|
"form-group__label": "lc-FormGroup-module__form-group__label___NC-JW",
|
|
841
799
|
"form-group__helper": "lc-FormGroup-module__form-group__helper___SRuxe"
|
|
842
800
|
};
|
|
843
|
-
const baseClass$
|
|
801
|
+
const baseClass$p = "form-group";
|
|
844
802
|
const FormGroup = (_w) => {
|
|
845
803
|
var _x = _w, {
|
|
846
804
|
className = "",
|
|
@@ -853,24 +811,24 @@ const FormGroup = (_w) => {
|
|
|
853
811
|
"labelText",
|
|
854
812
|
"helperText"
|
|
855
813
|
]);
|
|
856
|
-
const mergedClassNames = cx(styles$
|
|
814
|
+
const mergedClassNames = cx(styles$h[baseClass$p], className);
|
|
857
815
|
return /* @__PURE__ */ React.createElement("div", __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, props), {
|
|
858
816
|
role: "group"
|
|
859
817
|
}), labelText && { "aria-label": labelText }), {
|
|
860
818
|
className: mergedClassNames
|
|
861
819
|
}), /* @__PURE__ */ React.createElement("div", {
|
|
862
|
-
className: styles$
|
|
820
|
+
className: styles$h[`${baseClass$p}__header`]
|
|
863
821
|
}, /* @__PURE__ */ React.createElement(Heading, {
|
|
864
822
|
as: "div",
|
|
865
823
|
size: "sm",
|
|
866
|
-
className: styles$
|
|
824
|
+
className: styles$h[`${baseClass$p}__label`]
|
|
867
825
|
}, labelText), helperText && /* @__PURE__ */ React.createElement(Text, {
|
|
868
826
|
as: "div",
|
|
869
827
|
size: "sm",
|
|
870
|
-
className: styles$
|
|
828
|
+
className: styles$h[`${baseClass$p}__helper`]
|
|
871
829
|
}, helperText)), children);
|
|
872
830
|
};
|
|
873
|
-
var styles$
|
|
831
|
+
var styles$g = {
|
|
874
832
|
"text-field": "lc-TextField-module__text-field___bis8c",
|
|
875
833
|
"text-field--inline": "lc-TextField-module__text-field--inline___MPHqg",
|
|
876
834
|
"text-field__wrapper--inline": "lc-TextField-module__text-field__wrapper--inline___-gOob",
|
|
@@ -885,7 +843,7 @@ var styles$d = {
|
|
|
885
843
|
"text-field__content": "lc-TextField-module__text-field__content___dCkUW",
|
|
886
844
|
"field-label": "lc-TextField-module__field-label___q8Y-p"
|
|
887
845
|
};
|
|
888
|
-
const baseClass$
|
|
846
|
+
const baseClass$o = "text-field";
|
|
889
847
|
const TextField = ({
|
|
890
848
|
inline,
|
|
891
849
|
error,
|
|
@@ -897,21 +855,21 @@ const TextField = ({
|
|
|
897
855
|
children,
|
|
898
856
|
labelRightNode
|
|
899
857
|
}) => {
|
|
900
|
-
const mergedClassNames = cx(styles$
|
|
901
|
-
[styles$
|
|
858
|
+
const mergedClassNames = cx(styles$g[baseClass$o], {
|
|
859
|
+
[styles$g[`${baseClass$o}--inline`]]: inline
|
|
902
860
|
}, className);
|
|
903
861
|
return /* @__PURE__ */ React.createElement("div", {
|
|
904
862
|
className: mergedClassNames
|
|
905
863
|
}, labelRightNode && inline && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", {
|
|
906
|
-
className: cx(styles$
|
|
864
|
+
className: cx(styles$g[`${baseClass$o}__label-right-node`], styles$g[`${baseClass$o}__label-right-node--inline`])
|
|
907
865
|
}, labelRightNode), /* @__PURE__ */ React.createElement("div", {
|
|
908
|
-
className: styles$
|
|
866
|
+
className: styles$g[`${baseClass$o}__row-break`]
|
|
909
867
|
})), /* @__PURE__ */ React.createElement("div", {
|
|
910
|
-
className: cx(styles$
|
|
868
|
+
className: cx(styles$g[`${baseClass$o}__wrapper`], inline && styles$g[`${baseClass$o}__wrapper--inline`])
|
|
911
869
|
}, (labelText || labelRightNode) && /* @__PURE__ */ React.createElement("div", {
|
|
912
|
-
className: cx(styles$
|
|
870
|
+
className: cx(styles$g[`${baseClass$o}__label`], inline && styles$g[`${baseClass$o}__label--inline`], !labelText && styles$g[`${baseClass$o}__label--no-text`])
|
|
913
871
|
}, labelText && /* @__PURE__ */ React.createElement("div", {
|
|
914
|
-
className: cx(styles$
|
|
872
|
+
className: cx(styles$g[`${baseClass$o}__label-wrapper`])
|
|
915
873
|
}, /* @__PURE__ */ React.createElement("label", {
|
|
916
874
|
className: "lc-field-label",
|
|
917
875
|
htmlFor: labelFor
|
|
@@ -919,18 +877,18 @@ const TextField = ({
|
|
|
919
877
|
as: "span",
|
|
920
878
|
size: "sm"
|
|
921
879
|
}, labelText)), labelAdornment && /* @__PURE__ */ React.createElement("div", {
|
|
922
|
-
className: cx(styles$
|
|
880
|
+
className: cx(styles$g[`${baseClass$o}__label-adornment`])
|
|
923
881
|
}, labelAdornment)), labelRightNode && !inline && /* @__PURE__ */ React.createElement("div", {
|
|
924
|
-
className: cx(styles$
|
|
882
|
+
className: cx(styles$g[`${baseClass$o}__label-right-node`])
|
|
925
883
|
}, labelRightNode)), /* @__PURE__ */ React.createElement("div", {
|
|
926
|
-
className: cx(styles$
|
|
884
|
+
className: cx(styles$g[`${baseClass$o}__content`])
|
|
927
885
|
}, children, error && /* @__PURE__ */ React.createElement(FieldError, null, error), description && /* @__PURE__ */ React.createElement(FieldDescription, null, description))));
|
|
928
886
|
};
|
|
929
|
-
var styles$
|
|
887
|
+
var styles$f = {
|
|
930
888
|
"input-field": "lc-InputField-module__input-field___A-GHj",
|
|
931
889
|
"input-field--error": "lc-InputField-module__input-field--error___MMchC"
|
|
932
890
|
};
|
|
933
|
-
const baseClass$
|
|
891
|
+
const baseClass$n = "input-field";
|
|
934
892
|
const InputField = React.forwardRef((_y, ref) => {
|
|
935
893
|
var _z = _y, {
|
|
936
894
|
id,
|
|
@@ -957,8 +915,8 @@ const InputField = React.forwardRef((_y, ref) => {
|
|
|
957
915
|
"style",
|
|
958
916
|
"type"
|
|
959
917
|
]);
|
|
960
|
-
const mergedClassNames = cx(styles$
|
|
961
|
-
[styles$
|
|
918
|
+
const mergedClassNames = cx(styles$f[baseClass$n], {
|
|
919
|
+
[styles$f[`${baseClass$n}--error`]]: error
|
|
962
920
|
}, fieldClassName);
|
|
963
921
|
return /* @__PURE__ */ React.createElement(TextField, {
|
|
964
922
|
inline,
|
|
@@ -978,11 +936,11 @@ const InputField = React.forwardRef((_y, ref) => {
|
|
|
978
936
|
})));
|
|
979
937
|
});
|
|
980
938
|
const link = "lc-Link-module__link___kqx52";
|
|
981
|
-
var styles$
|
|
939
|
+
var styles$e = {
|
|
982
940
|
link,
|
|
983
941
|
"link--bold": "lc-Link-module__link--bold___1rGdO"
|
|
984
942
|
};
|
|
985
|
-
const baseClass$
|
|
943
|
+
const baseClass$m = "link";
|
|
986
944
|
const Link = (_A) => {
|
|
987
945
|
var _B = _A, {
|
|
988
946
|
bold = false,
|
|
@@ -992,14 +950,14 @@ const Link = (_A) => {
|
|
|
992
950
|
"className"
|
|
993
951
|
]);
|
|
994
952
|
return /* @__PURE__ */ React.createElement("a", __spreadValues({
|
|
995
|
-
className: cx(styles$
|
|
953
|
+
className: cx(styles$e[baseClass$m], bold && styles$e[`${baseClass$m}--bold`], className)
|
|
996
954
|
}, rest));
|
|
997
955
|
};
|
|
998
956
|
const modal__header = "lc-Modal-module__modal__header___Fp5VE";
|
|
999
957
|
const modal__heading = "lc-Modal-module__modal__heading___G9KVK";
|
|
1000
958
|
const modal__body = "lc-Modal-module__modal__body___M-jmN";
|
|
1001
959
|
const modal__footer = "lc-Modal-module__modal__footer___2LYdc";
|
|
1002
|
-
var styles$
|
|
960
|
+
var styles$d = {
|
|
1003
961
|
"modal-base": "lc-Modal-module__modal-base___hbL1U",
|
|
1004
962
|
"modal-base__overlay": "lc-Modal-module__modal-base__overlay___kCQ8t",
|
|
1005
963
|
"modal-base__overlay--visible": "lc-Modal-module__modal-base__overlay--visible___zUNJL",
|
|
@@ -1018,12 +976,12 @@ const ModalCloseButton = ({
|
|
|
1018
976
|
onClick
|
|
1019
977
|
}) => /* @__PURE__ */ React.createElement("button", {
|
|
1020
978
|
title: "Close modal",
|
|
1021
|
-
className: styles$
|
|
979
|
+
className: styles$d["modal-base__close"],
|
|
1022
980
|
onClick,
|
|
1023
981
|
type: "button"
|
|
1024
982
|
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
1025
983
|
source: Close,
|
|
1026
|
-
size:
|
|
984
|
+
size: "large"
|
|
1027
985
|
}));
|
|
1028
986
|
const KeyCodes = {
|
|
1029
987
|
esc: "Escape",
|
|
@@ -1037,7 +995,7 @@ const KeyCodes = {
|
|
|
1037
995
|
arrowUp: "ArrowUp",
|
|
1038
996
|
arrowDown: "ArrowDown"
|
|
1039
997
|
};
|
|
1040
|
-
const baseClass$
|
|
998
|
+
const baseClass$l = "modal-base";
|
|
1041
999
|
const ModalBase = (_C) => {
|
|
1042
1000
|
var _D = _C, {
|
|
1043
1001
|
children,
|
|
@@ -1050,7 +1008,7 @@ const ModalBase = (_C) => {
|
|
|
1050
1008
|
"onClose",
|
|
1051
1009
|
"closeOnEscPress"
|
|
1052
1010
|
]);
|
|
1053
|
-
const mergedClassNames = cx(styles$
|
|
1011
|
+
const mergedClassNames = cx(styles$d[baseClass$l], className);
|
|
1054
1012
|
React.useEffect(() => {
|
|
1055
1013
|
if (!closeOnEscPress) {
|
|
1056
1014
|
return;
|
|
@@ -1076,14 +1034,14 @@ const ModalBase = (_C) => {
|
|
|
1076
1034
|
return /* @__PURE__ */ React.createElement("div", {
|
|
1077
1035
|
"data-testid": "lc-modal-overlay",
|
|
1078
1036
|
onMouseDown: onOverlayClick,
|
|
1079
|
-
className: cx(styles$
|
|
1037
|
+
className: cx(styles$d[`${baseClass$l}__overlay`], styles$d[`${baseClass$l}__overlay--visible`])
|
|
1080
1038
|
}, /* @__PURE__ */ React.createElement("div", __spreadValues({
|
|
1081
1039
|
className: mergedClassNames
|
|
1082
1040
|
}, props), /* @__PURE__ */ React.createElement(ModalCloseButton, {
|
|
1083
1041
|
onClick: onCloseButtonClick
|
|
1084
1042
|
}), children));
|
|
1085
1043
|
};
|
|
1086
|
-
const baseClass$
|
|
1044
|
+
const baseClass$k = "action-modal";
|
|
1087
1045
|
const ActionModal = (_E) => {
|
|
1088
1046
|
var _F = _E, {
|
|
1089
1047
|
children,
|
|
@@ -1098,20 +1056,20 @@ const ActionModal = (_E) => {
|
|
|
1098
1056
|
"heading",
|
|
1099
1057
|
"actions"
|
|
1100
1058
|
]);
|
|
1101
|
-
const mergedClassNames = cx(styles$
|
|
1059
|
+
const mergedClassNames = cx(styles$d[baseClass$k], className);
|
|
1102
1060
|
return /* @__PURE__ */ React.createElement(ModalBase, __spreadValues({
|
|
1103
1061
|
className: mergedClassNames
|
|
1104
1062
|
}, props), icon2 && /* @__PURE__ */ React.createElement("div", {
|
|
1105
|
-
className: styles$
|
|
1063
|
+
className: styles$d[`${baseClass$k}__icon`]
|
|
1106
1064
|
}, icon2), heading && /* @__PURE__ */ React.createElement("div", {
|
|
1107
|
-
className: styles$
|
|
1065
|
+
className: styles$d[`${baseClass$k}__heading`]
|
|
1108
1066
|
}, heading), /* @__PURE__ */ React.createElement("div", {
|
|
1109
|
-
className: styles$
|
|
1067
|
+
className: styles$d[`${baseClass$k}__content`]
|
|
1110
1068
|
}, children), actions && /* @__PURE__ */ React.createElement("div", {
|
|
1111
|
-
className: styles$
|
|
1069
|
+
className: styles$d[`${baseClass$k}__actions`]
|
|
1112
1070
|
}, actions));
|
|
1113
1071
|
};
|
|
1114
|
-
const baseClass$
|
|
1072
|
+
const baseClass$j = "modal";
|
|
1115
1073
|
const Modal = (_G) => {
|
|
1116
1074
|
var _H = _G, {
|
|
1117
1075
|
children,
|
|
@@ -1124,19 +1082,19 @@ const Modal = (_G) => {
|
|
|
1124
1082
|
"heading",
|
|
1125
1083
|
"footer"
|
|
1126
1084
|
]);
|
|
1127
|
-
const mergedClassNames = cx(styles$
|
|
1085
|
+
const mergedClassNames = cx(styles$d[baseClass$j], className);
|
|
1128
1086
|
return /* @__PURE__ */ React.createElement(ModalBase, __spreadValues({
|
|
1129
1087
|
className: mergedClassNames
|
|
1130
1088
|
}, props), heading && /* @__PURE__ */ React.createElement("div", {
|
|
1131
|
-
className: styles$
|
|
1089
|
+
className: styles$d[`${baseClass$j}__header`]
|
|
1132
1090
|
}, /* @__PURE__ */ React.createElement(Heading, {
|
|
1133
1091
|
size: "sm",
|
|
1134
1092
|
as: "div",
|
|
1135
|
-
className: styles$
|
|
1093
|
+
className: styles$d[`${baseClass$j}__heading`]
|
|
1136
1094
|
}, heading)), /* @__PURE__ */ React.createElement("div", {
|
|
1137
|
-
className: styles$
|
|
1095
|
+
className: styles$d[`${baseClass$j}__body`]
|
|
1138
1096
|
}, children), footer && /* @__PURE__ */ React.createElement("div", {
|
|
1139
|
-
className: styles$
|
|
1097
|
+
className: styles$d[`${baseClass$j}__footer`]
|
|
1140
1098
|
}, footer));
|
|
1141
1099
|
};
|
|
1142
1100
|
const ModalPortal = ({
|
|
@@ -1159,10 +1117,10 @@ const ModalPortal = ({
|
|
|
1159
1117
|
var _a2;
|
|
1160
1118
|
(_a2 = document.querySelector(parentElementName)) == null ? void 0 : _a2.removeChild(container);
|
|
1161
1119
|
};
|
|
1162
|
-
}, []);
|
|
1120
|
+
}, [parentElementName]);
|
|
1163
1121
|
return /* @__PURE__ */ React.createElement(React.Fragment, null, ReactDOM.createPortal(children, container));
|
|
1164
1122
|
};
|
|
1165
|
-
var styles$
|
|
1123
|
+
var styles$c = {
|
|
1166
1124
|
"numeric-input": "lc-NumericInput-module__numeric-input___j1esc",
|
|
1167
1125
|
"numeric-input__increment": "lc-NumericInput-module__numeric-input__increment___i3Tys",
|
|
1168
1126
|
"numeric-input__decrement": "lc-NumericInput-module__numeric-input__decrement___3qgn0",
|
|
@@ -1170,7 +1128,7 @@ var styles$9 = {
|
|
|
1170
1128
|
"numeric-input--no-controls": "lc-NumericInput-module__numeric-input--no-controls___D90rG",
|
|
1171
1129
|
"numeric-input--error": "lc-NumericInput-module__numeric-input--error___TMxRx"
|
|
1172
1130
|
};
|
|
1173
|
-
const baseClass$
|
|
1131
|
+
const baseClass$i = "numeric-input";
|
|
1174
1132
|
const NumericInput = (_I) => {
|
|
1175
1133
|
var _J = _I, {
|
|
1176
1134
|
className,
|
|
@@ -1194,10 +1152,10 @@ const NumericInput = (_I) => {
|
|
|
1194
1152
|
"onChange"
|
|
1195
1153
|
]);
|
|
1196
1154
|
const inputRef = React.useRef(null);
|
|
1197
|
-
const mergedClassNames = cx(styles$
|
|
1198
|
-
[styles$
|
|
1199
|
-
[styles$
|
|
1200
|
-
[styles$
|
|
1155
|
+
const mergedClassNames = cx(styles$c[baseClass$i], {
|
|
1156
|
+
[styles$c[`${baseClass$i}--error`]]: error,
|
|
1157
|
+
[styles$c[`${baseClass$i}--no-controls`]]: noControls,
|
|
1158
|
+
[styles$c[`${baseClass$i}--disabled`]]: disabled
|
|
1201
1159
|
}, className);
|
|
1202
1160
|
const callOnChange = (val) => onChange(String(val));
|
|
1203
1161
|
const calcValue = (val) => {
|
|
@@ -1262,22 +1220,22 @@ const NumericInput = (_I) => {
|
|
|
1262
1220
|
disabled: disabled || hasReachedTheLimit(value, max),
|
|
1263
1221
|
onClick: handleIncrementClick,
|
|
1264
1222
|
"aria-label": "Increment value",
|
|
1265
|
-
className: styles$
|
|
1223
|
+
className: styles$c[`${baseClass$i}__increment`],
|
|
1266
1224
|
type: "button"
|
|
1267
1225
|
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
1268
1226
|
source: ChevronUp,
|
|
1269
1227
|
disabled: disabled || hasReachedTheLimit(value, max),
|
|
1270
|
-
|
|
1228
|
+
kind: "primary"
|
|
1271
1229
|
})), /* @__PURE__ */ React.createElement("button", {
|
|
1272
1230
|
tabIndex: -1,
|
|
1273
1231
|
disabled: disabled || hasReachedTheLimit(value, min),
|
|
1274
1232
|
"aria-label": "Decrement value",
|
|
1275
|
-
className: styles$
|
|
1233
|
+
className: styles$c[`${baseClass$i}__decrement`],
|
|
1276
1234
|
onClick: handleDecrementClick,
|
|
1277
1235
|
type: "button"
|
|
1278
1236
|
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
1279
1237
|
source: ChevronDown,
|
|
1280
|
-
|
|
1238
|
+
kind: "primary",
|
|
1281
1239
|
disabled: disabled || hasReachedTheLimit(value, min)
|
|
1282
1240
|
}))));
|
|
1283
1241
|
};
|
|
@@ -1326,32 +1284,6 @@ var cssStyles = {
|
|
|
1326
1284
|
popover,
|
|
1327
1285
|
"popover--visible": "lc-Popover-module__popover--visible___u5NXB"
|
|
1328
1286
|
};
|
|
1329
|
-
const buildPopperModifiers = (modifiers) => {
|
|
1330
|
-
const { offset, flip, preventOverflow } = modifiers;
|
|
1331
|
-
const calculatedOffset = [
|
|
1332
|
-
{
|
|
1333
|
-
name: "offset",
|
|
1334
|
-
options: __spreadValues({
|
|
1335
|
-
offset: [0, 4]
|
|
1336
|
-
}, (offset == null ? void 0 : offset.options) || {})
|
|
1337
|
-
}
|
|
1338
|
-
];
|
|
1339
|
-
const calculateFlip = [
|
|
1340
|
-
{
|
|
1341
|
-
name: "flip",
|
|
1342
|
-
options: __spreadValues({}, (flip == null ? void 0 : flip.options) || {})
|
|
1343
|
-
}
|
|
1344
|
-
];
|
|
1345
|
-
const calculatePreventOverflow = [
|
|
1346
|
-
{
|
|
1347
|
-
name: "preventOverlow",
|
|
1348
|
-
options: __spreadValues({
|
|
1349
|
-
rootBoundary: "viewport"
|
|
1350
|
-
}, preventOverflow || {})
|
|
1351
|
-
}
|
|
1352
|
-
];
|
|
1353
|
-
return [...calculatedOffset, ...calculateFlip, ...calculatePreventOverflow];
|
|
1354
|
-
};
|
|
1355
1287
|
const Popover = (props) => {
|
|
1356
1288
|
const {
|
|
1357
1289
|
triggerRenderer,
|
|
@@ -1360,17 +1292,33 @@ const Popover = (props) => {
|
|
|
1360
1292
|
placement,
|
|
1361
1293
|
isVisible = false
|
|
1362
1294
|
} = props;
|
|
1363
|
-
const rendererRef = React.useRef(null);
|
|
1364
|
-
const popperRef = React.useRef(null);
|
|
1365
1295
|
const [visible, setVisibility] = React.useState(false);
|
|
1296
|
+
const {
|
|
1297
|
+
x,
|
|
1298
|
+
y,
|
|
1299
|
+
reference,
|
|
1300
|
+
floating,
|
|
1301
|
+
strategy,
|
|
1302
|
+
refs,
|
|
1303
|
+
update,
|
|
1304
|
+
placement: updatedPlacement
|
|
1305
|
+
} = useFloating({
|
|
1306
|
+
middleware: [offset(4), flip()],
|
|
1307
|
+
placement
|
|
1308
|
+
});
|
|
1366
1309
|
React.useEffect(() => {
|
|
1367
1310
|
setVisibility(isVisible);
|
|
1368
1311
|
}, [isVisible]);
|
|
1312
|
+
React.useEffect(() => {
|
|
1313
|
+
if (!refs.reference.current || !refs.floating.current) {
|
|
1314
|
+
return;
|
|
1315
|
+
}
|
|
1316
|
+
return autoUpdate(refs.reference.current, refs.floating.current, update);
|
|
1317
|
+
}, [refs.reference, refs.floating, update, updatedPlacement, visible]);
|
|
1369
1318
|
function handleDocumentClick(event) {
|
|
1370
|
-
|
|
1371
|
-
if ((_a = popperRef.current) == null ? void 0 : _a.contains(event.target)) {
|
|
1319
|
+
if (refs.floating.current && refs.floating.current.contains(event.target)) {
|
|
1372
1320
|
return;
|
|
1373
|
-
} else if (
|
|
1321
|
+
} else if (refs.reference.current && refs.reference.current.contains(event.target)) {
|
|
1374
1322
|
setVisibility((prevVisible) => !prevVisible);
|
|
1375
1323
|
} else {
|
|
1376
1324
|
setVisibility(false);
|
|
@@ -1389,33 +1337,22 @@ const Popover = (props) => {
|
|
|
1389
1337
|
document.removeEventListener("mousedown", handleDocumentClick);
|
|
1390
1338
|
};
|
|
1391
1339
|
}, []);
|
|
1392
|
-
const { styles: styles2, attributes } = usePopper(rendererRef.current, popperRef.current, {
|
|
1393
|
-
modifiers: props.modifiers ? buildPopperModifiers(props.modifiers) : [],
|
|
1394
|
-
placement
|
|
1395
|
-
});
|
|
1396
1340
|
const mergedClassNames = cx(cssStyles["popover"], className, {
|
|
1397
1341
|
[cssStyles["popover--visible"]]: visible
|
|
1398
1342
|
});
|
|
1399
1343
|
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", {
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1344
|
+
style: { width: "fit-content" },
|
|
1345
|
+
ref: reference
|
|
1346
|
+
}, triggerRenderer()), /* @__PURE__ */ React.createElement("div", {
|
|
1347
|
+
ref: floating,
|
|
1403
1348
|
className: mergedClassNames,
|
|
1404
|
-
style:
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
return ProgressStatus2;
|
|
1412
|
-
})(ProgressStatus || {});
|
|
1413
|
-
var ProgressSize = /* @__PURE__ */ ((ProgressSize2) => {
|
|
1414
|
-
ProgressSize2["Small"] = "small";
|
|
1415
|
-
ProgressSize2["Medium"] = "medium";
|
|
1416
|
-
ProgressSize2["Large"] = "large";
|
|
1417
|
-
return ProgressSize2;
|
|
1418
|
-
})(ProgressSize || {});
|
|
1349
|
+
style: {
|
|
1350
|
+
position: strategy,
|
|
1351
|
+
top: y != null ? y : "",
|
|
1352
|
+
left: x != null ? x : ""
|
|
1353
|
+
}
|
|
1354
|
+
}, children));
|
|
1355
|
+
};
|
|
1419
1356
|
const PROGRESS_STATUSES = [
|
|
1420
1357
|
"normal",
|
|
1421
1358
|
"error",
|
|
@@ -1423,18 +1360,18 @@ const PROGRESS_STATUSES = [
|
|
|
1423
1360
|
];
|
|
1424
1361
|
const clampPercentage = (percent) => Math.min(Math.max(percent, 0), 100);
|
|
1425
1362
|
function getPercentNumber(status, percent = 0) {
|
|
1426
|
-
if (status ===
|
|
1363
|
+
if (status === "error") {
|
|
1427
1364
|
return 0;
|
|
1428
1365
|
}
|
|
1429
1366
|
return clampPercentage(parseInt(percent.toString(), 10));
|
|
1430
1367
|
}
|
|
1431
1368
|
function getProgressStatus(status, percent) {
|
|
1432
1369
|
if (!PROGRESS_STATUSES.includes(status) && percent >= 100) {
|
|
1433
|
-
return
|
|
1370
|
+
return "normal";
|
|
1434
1371
|
}
|
|
1435
|
-
return status ||
|
|
1372
|
+
return status || "normal";
|
|
1436
1373
|
}
|
|
1437
|
-
var styles$
|
|
1374
|
+
var styles$b = {
|
|
1438
1375
|
"progress-circle": "lc-ProgressCircle-module__progress-circle___NRHCi",
|
|
1439
1376
|
"progress-circle--small": "lc-ProgressCircle-module__progress-circle--small___8FVwG",
|
|
1440
1377
|
"progress-circle--medium": "lc-ProgressCircle-module__progress-circle--medium___XlzEX",
|
|
@@ -1451,37 +1388,35 @@ var styles$8 = {
|
|
|
1451
1388
|
"progress-circle--normal": "lc-ProgressCircle-module__progress-circle--normal___dFneQ"
|
|
1452
1389
|
};
|
|
1453
1390
|
const THICKNESS_FROM_SIZE = {
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1391
|
+
small: 2,
|
|
1392
|
+
medium: 3,
|
|
1393
|
+
large: 4
|
|
1457
1394
|
};
|
|
1458
1395
|
const SIZE_VALUE_FROM_SIZE = {
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1396
|
+
small: 15,
|
|
1397
|
+
medium: 36,
|
|
1398
|
+
large: 56
|
|
1462
1399
|
};
|
|
1463
|
-
const baseClass$
|
|
1400
|
+
const baseClass$h = "progress-circle";
|
|
1464
1401
|
const ProgressCircle = React.forwardRef((_M, ref) => {
|
|
1465
1402
|
var _N = _M, {
|
|
1466
|
-
status =
|
|
1467
|
-
|
|
1403
|
+
status = "normal",
|
|
1404
|
+
progressValue,
|
|
1468
1405
|
className,
|
|
1469
|
-
size =
|
|
1406
|
+
size = "medium"
|
|
1470
1407
|
} = _N, restProps = __objRest(_N, [
|
|
1471
1408
|
"status",
|
|
1472
|
-
"
|
|
1409
|
+
"progressValue",
|
|
1473
1410
|
"className",
|
|
1474
1411
|
"size"
|
|
1475
1412
|
]);
|
|
1476
|
-
const progressStatus = getProgressStatus(status,
|
|
1477
|
-
const percentNumber = getPercentNumber(progressStatus,
|
|
1413
|
+
const progressStatus = getProgressStatus(status, progressValue);
|
|
1414
|
+
const percentNumber = getPercentNumber(progressStatus, progressValue);
|
|
1478
1415
|
const thickness = THICKNESS_FROM_SIZE[size];
|
|
1479
1416
|
const sizeValue = SIZE_VALUE_FROM_SIZE[size];
|
|
1480
|
-
const mergedClassNames = cx(styles$
|
|
1481
|
-
[styles$
|
|
1482
|
-
[styles$
|
|
1483
|
-
[styles$8[`${baseClass$a}--success`]]: progressStatus === ProgressStatus.Success,
|
|
1484
|
-
[styles$8[`${baseClass$a}--normal`]]: progressStatus === ProgressStatus.Normal
|
|
1417
|
+
const mergedClassNames = cx(styles$b[baseClass$h], {
|
|
1418
|
+
[styles$b[`${baseClass$h}--${size}`]]: size,
|
|
1419
|
+
[styles$b[`${baseClass$h}--${status}`]]: status
|
|
1485
1420
|
}, className);
|
|
1486
1421
|
const circumference = 2 * Math.PI * ((sizeValue - thickness) / 2);
|
|
1487
1422
|
const indicatorStyle = {
|
|
@@ -1496,14 +1431,14 @@ const ProgressCircle = React.forwardRef((_M, ref) => {
|
|
|
1496
1431
|
}, restProps), /* @__PURE__ */ React.createElement("svg", {
|
|
1497
1432
|
viewBox: svgViewBox
|
|
1498
1433
|
}, /* @__PURE__ */ React.createElement("circle", {
|
|
1499
|
-
className: styles$
|
|
1434
|
+
className: styles$b[`${baseClass$h}__bg-line--${status}`],
|
|
1500
1435
|
cx: sizeValue,
|
|
1501
1436
|
cy: sizeValue,
|
|
1502
1437
|
r: (sizeValue - thickness) / 2,
|
|
1503
1438
|
fill: "none",
|
|
1504
1439
|
strokeWidth: thickness
|
|
1505
1440
|
}), /* @__PURE__ */ React.createElement("circle", {
|
|
1506
|
-
className: styles$
|
|
1441
|
+
className: styles$b[`${baseClass$h}__indicator--${status}`],
|
|
1507
1442
|
style: indicatorStyle,
|
|
1508
1443
|
cx: sizeValue,
|
|
1509
1444
|
cy: sizeValue,
|
|
@@ -1512,7 +1447,46 @@ const ProgressCircle = React.forwardRef((_M, ref) => {
|
|
|
1512
1447
|
strokeWidth: thickness
|
|
1513
1448
|
})));
|
|
1514
1449
|
});
|
|
1515
|
-
var styles$
|
|
1450
|
+
var styles$a = {
|
|
1451
|
+
"progress-bar": "lc-ProgressBar-module__progress-bar___3pa3d",
|
|
1452
|
+
"progress-bar--small": "lc-ProgressBar-module__progress-bar--small___7nQKx",
|
|
1453
|
+
"progress-bar--medium": "lc-ProgressBar-module__progress-bar--medium___cM44p",
|
|
1454
|
+
"progress-bar--large": "lc-ProgressBar-module__progress-bar--large___UlzNR",
|
|
1455
|
+
"progress-bar--error": "lc-ProgressBar-module__progress-bar--error___MulqI",
|
|
1456
|
+
"progress-bar--success": "lc-ProgressBar-module__progress-bar--success___p7nB-",
|
|
1457
|
+
"progress-bar--normal": "lc-ProgressBar-module__progress-bar--normal___ZwCb-",
|
|
1458
|
+
"progress-bar__indicator--success": "lc-ProgressBar-module__progress-bar__indicator--success___wRjR3",
|
|
1459
|
+
"progress-bar__indicator--normal": "lc-ProgressBar-module__progress-bar__indicator--normal___0Uhle"
|
|
1460
|
+
};
|
|
1461
|
+
const baseClass$g = "progress-bar";
|
|
1462
|
+
const ProgressBar = React.forwardRef((_O, ref) => {
|
|
1463
|
+
var _P = _O, {
|
|
1464
|
+
status = "normal",
|
|
1465
|
+
percent,
|
|
1466
|
+
size = "medium",
|
|
1467
|
+
className = ""
|
|
1468
|
+
} = _P, restProps = __objRest(_P, [
|
|
1469
|
+
"status",
|
|
1470
|
+
"percent",
|
|
1471
|
+
"size",
|
|
1472
|
+
"className"
|
|
1473
|
+
]);
|
|
1474
|
+
const progressStatus = getProgressStatus(status, percent);
|
|
1475
|
+
const percentNumber = getPercentNumber(progressStatus, percent);
|
|
1476
|
+
const mergedClassNames = cx(styles$a[baseClass$g], {
|
|
1477
|
+
[styles$a[`${baseClass$g}--${size}`]]: size,
|
|
1478
|
+
[styles$a[`${baseClass$g}--${status}`]]: status
|
|
1479
|
+
}, className);
|
|
1480
|
+
return /* @__PURE__ */ React.createElement("div", __spreadProps(__spreadValues({}, restProps), {
|
|
1481
|
+
className: mergedClassNames,
|
|
1482
|
+
ref,
|
|
1483
|
+
role: "progressbar"
|
|
1484
|
+
}), /* @__PURE__ */ React.createElement("div", {
|
|
1485
|
+
className: styles$a[`${baseClass$g}__indicator--${status}`],
|
|
1486
|
+
style: { width: `${percentNumber}%` }
|
|
1487
|
+
}));
|
|
1488
|
+
});
|
|
1489
|
+
var styles$9 = {
|
|
1516
1490
|
"promo-banner": "lc-PromoBanner-module__promo-banner___-mGpq",
|
|
1517
1491
|
"promo-banner__content": "lc-PromoBanner-module__promo-banner__content___kRWar",
|
|
1518
1492
|
"promo-banner__wrapper": "lc-PromoBanner-module__promo-banner__wrapper___I-8cl",
|
|
@@ -1520,13 +1494,15 @@ var styles$7 = {
|
|
|
1520
1494
|
"promo-banner__img": "lc-PromoBanner-module__promo-banner__img___eaShb",
|
|
1521
1495
|
"promo-banner__button-text": "lc-PromoBanner-module__promo-banner__button-text___taYKa",
|
|
1522
1496
|
"promo-banner--light": "lc-PromoBanner-module__promo-banner--light___eJxOR",
|
|
1523
|
-
"promo-banner--small": "lc-PromoBanner-module__promo-banner--small___7sWLV",
|
|
1524
1497
|
"promo-banner__footer": "lc-PromoBanner-module__promo-banner__footer___8OjvH",
|
|
1525
|
-
"promo-banner--
|
|
1498
|
+
"promo-banner--small": "lc-PromoBanner-module__promo-banner--small___7sWLV",
|
|
1526
1499
|
"promo-banner--large": "lc-PromoBanner-module__promo-banner--large___pMiCU",
|
|
1527
1500
|
"promo-banner__close-icon": "lc-PromoBanner-module__promo-banner__close-icon___GowBL"
|
|
1528
1501
|
};
|
|
1529
|
-
const
|
|
1502
|
+
const SMALL_CONTAINER_WIDTH_TRESHOLD = 400;
|
|
1503
|
+
const LARGE_CONTAINER_WIDTH_TRESHOLD = 800;
|
|
1504
|
+
const RESIZE_DEBOUNCE_TRESHOLD = 500;
|
|
1505
|
+
const baseClass$f = "promo-banner";
|
|
1530
1506
|
const PromoBanner = ({
|
|
1531
1507
|
className,
|
|
1532
1508
|
buttonText,
|
|
@@ -1535,50 +1511,69 @@ const PromoBanner = ({
|
|
|
1535
1511
|
img,
|
|
1536
1512
|
light = false,
|
|
1537
1513
|
linkText,
|
|
1538
|
-
size = "small",
|
|
1539
1514
|
onButtonClick,
|
|
1540
1515
|
onClose,
|
|
1541
1516
|
onLinkClick
|
|
1542
1517
|
}) => {
|
|
1543
|
-
const
|
|
1544
|
-
|
|
1545
|
-
|
|
1518
|
+
const containerRef = React.useRef(null);
|
|
1519
|
+
const [containerSize, setContainerSize] = React.useState("medium");
|
|
1520
|
+
const mergedClassNames = cx(styles$9[baseClass$f], {
|
|
1521
|
+
[styles$9[`${baseClass$f}--light`]]: light,
|
|
1522
|
+
[styles$9[`${baseClass$f}--small`]]: containerSize === "small",
|
|
1523
|
+
[styles$9[`${baseClass$f}--large`]]: containerSize === "large"
|
|
1546
1524
|
}, className);
|
|
1547
|
-
|
|
1548
|
-
|
|
1525
|
+
React.useEffect(() => {
|
|
1526
|
+
const handleResize = () => {
|
|
1527
|
+
if (containerRef.current && containerRef.current.offsetWidth <= SMALL_CONTAINER_WIDTH_TRESHOLD) {
|
|
1528
|
+
return setContainerSize("small");
|
|
1529
|
+
}
|
|
1530
|
+
if (containerRef.current && containerRef.current.offsetWidth >= LARGE_CONTAINER_WIDTH_TRESHOLD) {
|
|
1531
|
+
return setContainerSize("large");
|
|
1532
|
+
}
|
|
1533
|
+
return setContainerSize("medium");
|
|
1534
|
+
};
|
|
1535
|
+
const debouncedHandleResize = debounce(handleResize, RESIZE_DEBOUNCE_TRESHOLD);
|
|
1536
|
+
window.addEventListener("resize", debouncedHandleResize);
|
|
1537
|
+
handleResize();
|
|
1538
|
+
return () => {
|
|
1539
|
+
debouncedHandleResize.cancel();
|
|
1540
|
+
window.removeEventListener("resize", handleResize);
|
|
1541
|
+
};
|
|
1542
|
+
}, []);
|
|
1549
1543
|
const footer = /* @__PURE__ */ React.createElement("div", {
|
|
1550
|
-
className: styles$
|
|
1544
|
+
className: styles$9[`${baseClass$f}__footer`]
|
|
1551
1545
|
}, buttonText && /* @__PURE__ */ React.createElement(Button, {
|
|
1552
1546
|
kind: "primary",
|
|
1553
1547
|
size: "compact",
|
|
1554
1548
|
onClick: onButtonClick,
|
|
1555
|
-
className: styles$
|
|
1549
|
+
className: styles$9[`${baseClass$f}__button-text`]
|
|
1556
1550
|
}, buttonText), linkText && /* @__PURE__ */ React.createElement(Button, {
|
|
1557
1551
|
size: "compact",
|
|
1558
1552
|
kind: "text",
|
|
1559
1553
|
onClick: onLinkClick
|
|
1560
1554
|
}, linkText));
|
|
1561
1555
|
return /* @__PURE__ */ React.createElement("div", {
|
|
1556
|
+
ref: containerRef,
|
|
1562
1557
|
className: mergedClassNames
|
|
1563
1558
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
1564
|
-
className: styles$
|
|
1559
|
+
className: styles$9[`${baseClass$f}__content`]
|
|
1565
1560
|
}, img && /* @__PURE__ */ React.createElement("img", {
|
|
1566
1561
|
src: img,
|
|
1567
|
-
className: styles$
|
|
1562
|
+
className: styles$9[`${baseClass$f}__img`]
|
|
1568
1563
|
}), /* @__PURE__ */ React.createElement("div", {
|
|
1569
|
-
className: styles$
|
|
1564
|
+
className: styles$9[`${baseClass$f}__wrapper`]
|
|
1570
1565
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
1571
|
-
className: styles$
|
|
1572
|
-
}, header), /* @__PURE__ */ React.createElement("div", null, children),
|
|
1566
|
+
className: styles$9[`${baseClass$f}__header`]
|
|
1567
|
+
}, header), /* @__PURE__ */ React.createElement("div", null, children), containerSize !== "large" && footer), containerSize === "large" && footer), onClose && /* @__PURE__ */ React.createElement("button", {
|
|
1573
1568
|
type: "button",
|
|
1574
|
-
className: styles$
|
|
1569
|
+
className: styles$9[`${baseClass$f}__close-icon`],
|
|
1575
1570
|
onClick: onClose
|
|
1576
1571
|
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
1577
1572
|
source: Close,
|
|
1578
|
-
size:
|
|
1573
|
+
size: "large"
|
|
1579
1574
|
})));
|
|
1580
1575
|
};
|
|
1581
|
-
var styles$
|
|
1576
|
+
var styles$8 = {
|
|
1582
1577
|
"radio-button": "lc-RadioButton-module__radio-button___WaToM",
|
|
1583
1578
|
"radio-button__label": "lc-RadioButton-module__radio-button__label___i7ygg",
|
|
1584
1579
|
"radio-button__circle": "lc-RadioButton-module__radio-button__circle___wimWA",
|
|
@@ -1589,35 +1584,35 @@ var styles$6 = {
|
|
|
1589
1584
|
"radio-button--selected": "lc-RadioButton-module__radio-button--selected___s9lqj",
|
|
1590
1585
|
"radio-button--disabled": "lc-RadioButton-module__radio-button--disabled___wHSA7"
|
|
1591
1586
|
};
|
|
1592
|
-
const baseClass$
|
|
1593
|
-
const RadioButton = (
|
|
1594
|
-
var
|
|
1587
|
+
const baseClass$e = "radio-button";
|
|
1588
|
+
const RadioButton = (_Q) => {
|
|
1589
|
+
var _R = _Q, {
|
|
1595
1590
|
children,
|
|
1596
1591
|
className = "",
|
|
1597
1592
|
description,
|
|
1598
1593
|
checked,
|
|
1599
1594
|
disabled
|
|
1600
|
-
} =
|
|
1595
|
+
} = _R, props = __objRest(_R, [
|
|
1601
1596
|
"children",
|
|
1602
1597
|
"className",
|
|
1603
1598
|
"description",
|
|
1604
1599
|
"checked",
|
|
1605
1600
|
"disabled"
|
|
1606
1601
|
]);
|
|
1607
|
-
const mergedClassNames = cx(styles$
|
|
1608
|
-
[styles$
|
|
1609
|
-
[styles$
|
|
1602
|
+
const mergedClassNames = cx(styles$8[baseClass$e], className, {
|
|
1603
|
+
[styles$8[`${baseClass$e}--selected`]]: checked,
|
|
1604
|
+
[styles$8[`${baseClass$e}--disabled`]]: disabled
|
|
1610
1605
|
});
|
|
1611
1606
|
return /* @__PURE__ */ React.createElement("div", {
|
|
1612
1607
|
className: mergedClassNames
|
|
1613
1608
|
}, /* @__PURE__ */ React.createElement("label", {
|
|
1614
|
-
className: styles$
|
|
1609
|
+
className: styles$8[`${baseClass$e}__label`]
|
|
1615
1610
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
1616
|
-
className: styles$
|
|
1611
|
+
className: styles$8[`${baseClass$e}__circle`]
|
|
1617
1612
|
}, /* @__PURE__ */ React.createElement("span", {
|
|
1618
|
-
className: styles$
|
|
1613
|
+
className: styles$8[`${baseClass$e}__inner-circle`]
|
|
1619
1614
|
}), /* @__PURE__ */ React.createElement("input", __spreadProps(__spreadValues({
|
|
1620
|
-
className: styles$
|
|
1615
|
+
className: styles$8[`${baseClass$e}__input`]
|
|
1621
1616
|
}, props), {
|
|
1622
1617
|
type: "radio",
|
|
1623
1618
|
checked,
|
|
@@ -1625,16 +1620,112 @@ const RadioButton = (_O) => {
|
|
|
1625
1620
|
}))), /* @__PURE__ */ React.createElement(Text, {
|
|
1626
1621
|
as: "div",
|
|
1627
1622
|
size: "md",
|
|
1628
|
-
className: styles$
|
|
1623
|
+
className: styles$8[`${baseClass$e}__text`]
|
|
1629
1624
|
}, children)), description && /* @__PURE__ */ React.createElement(FieldDescription, {
|
|
1630
|
-
className: styles$
|
|
1625
|
+
className: styles$8[`${baseClass$e}__helper`]
|
|
1631
1626
|
}, description));
|
|
1632
1627
|
};
|
|
1628
|
+
var styles$7 = {
|
|
1629
|
+
"search-input": "lc-Search-module__search-input___FsbCk",
|
|
1630
|
+
"search-input__search-icon": "lc-Search-module__search-input__search-icon___BBQoD",
|
|
1631
|
+
"search-input__clear-icon": "lc-Search-module__search-input__clear-icon___LoNkc",
|
|
1632
|
+
"search-input__loader": "lc-Search-module__search-input__loader___pkpIG",
|
|
1633
|
+
"search-input__input": "lc-Search-module__search-input__input___OhyTr",
|
|
1634
|
+
"search-input__input--compact": "lc-Search-module__search-input__input--compact___yikdR",
|
|
1635
|
+
"search-input__input--medium": "lc-Search-module__search-input__input--medium___u6tRA",
|
|
1636
|
+
"search-input__input--large": "lc-Search-module__search-input__input--large___9jQ-s",
|
|
1637
|
+
"search-input__input--collapsable": "lc-Search-module__search-input__input--collapsable___4VjS8",
|
|
1638
|
+
"search-input__input--collapsable--open": "lc-Search-module__search-input__input--collapsable--open___a2rX2",
|
|
1639
|
+
"search-input__input--disabled": "lc-Search-module__search-input__input--disabled___nfZau"
|
|
1640
|
+
};
|
|
1641
|
+
const baseClass$d = "search-input";
|
|
1642
|
+
const inputBaseClass = `${baseClass$d}__input`;
|
|
1643
|
+
const SearchInput = ({
|
|
1644
|
+
isCollapsable,
|
|
1645
|
+
isDisabled,
|
|
1646
|
+
isLoading,
|
|
1647
|
+
placeholder = "Search ...",
|
|
1648
|
+
size = "medium",
|
|
1649
|
+
value,
|
|
1650
|
+
onChange
|
|
1651
|
+
}) => {
|
|
1652
|
+
const [searchValue, setSearchValue] = React.useState(value || "");
|
|
1653
|
+
const [isCollapsed, setIsCollapsed] = React.useState(true);
|
|
1654
|
+
const inputRef = React.useRef(null);
|
|
1655
|
+
const isCloseIconVisible = !!searchValue && !isDisabled && !isLoading;
|
|
1656
|
+
const mergedClassNames = cx(styles$7[`${inputBaseClass}`], styles$7[`${inputBaseClass}--${size}`], (isDisabled || isLoading) && styles$7[`${inputBaseClass}--disabled`], isCollapsable && styles$7[`${inputBaseClass}--collapsable`], !isCollapsed && styles$7[`${inputBaseClass}--collapsable--open`]);
|
|
1657
|
+
React.useEffect(() => {
|
|
1658
|
+
if (typeof value === "string") {
|
|
1659
|
+
setSearchValue(value);
|
|
1660
|
+
}
|
|
1661
|
+
}, [value]);
|
|
1662
|
+
const handleOnChange = (e) => {
|
|
1663
|
+
const value2 = e.currentTarget.value;
|
|
1664
|
+
setSearchValue(value2);
|
|
1665
|
+
onChange(value2);
|
|
1666
|
+
};
|
|
1667
|
+
const handleClear = () => {
|
|
1668
|
+
setSearchValue("");
|
|
1669
|
+
onChange("");
|
|
1670
|
+
};
|
|
1671
|
+
const handleClick = () => {
|
|
1672
|
+
var _a;
|
|
1673
|
+
(_a = inputRef.current) == null ? void 0 : _a.focus();
|
|
1674
|
+
};
|
|
1675
|
+
const handleFocus = () => {
|
|
1676
|
+
if (isCollapsable) {
|
|
1677
|
+
setIsCollapsed(false);
|
|
1678
|
+
}
|
|
1679
|
+
};
|
|
1680
|
+
const handleBlur = () => {
|
|
1681
|
+
if (isCollapsable && !searchValue) {
|
|
1682
|
+
setIsCollapsed(true);
|
|
1683
|
+
}
|
|
1684
|
+
};
|
|
1685
|
+
const handleKeyDown = (e) => {
|
|
1686
|
+
if (e.key === KeyCodes.enter) {
|
|
1687
|
+
e.preventDefault();
|
|
1688
|
+
onChange(searchValue);
|
|
1689
|
+
}
|
|
1690
|
+
};
|
|
1691
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
1692
|
+
"data-testid": `${baseClass$d}-container`,
|
|
1693
|
+
className: styles$7[baseClass$d],
|
|
1694
|
+
onClick: handleClick
|
|
1695
|
+
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
1696
|
+
className: styles$7[`${baseClass$d}__search-icon`],
|
|
1697
|
+
source: Search,
|
|
1698
|
+
disabled: isDisabled || isLoading,
|
|
1699
|
+
kind: "primary"
|
|
1700
|
+
}), /* @__PURE__ */ React.createElement("input", {
|
|
1701
|
+
ref: inputRef,
|
|
1702
|
+
className: mergedClassNames,
|
|
1703
|
+
type: "text",
|
|
1704
|
+
value: searchValue,
|
|
1705
|
+
placeholder,
|
|
1706
|
+
onChange: handleOnChange,
|
|
1707
|
+
onBlur: handleBlur,
|
|
1708
|
+
onFocus: handleFocus,
|
|
1709
|
+
onKeyDown: handleKeyDown,
|
|
1710
|
+
disabled: isDisabled || isLoading
|
|
1711
|
+
}), isCloseIconVisible && /* @__PURE__ */ React.createElement("div", {
|
|
1712
|
+
className: styles$7[`${baseClass$d}__clear-icon`],
|
|
1713
|
+
"data-testid": `${baseClass$d}-clear-icon`,
|
|
1714
|
+
onClick: handleClear
|
|
1715
|
+
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
1716
|
+
source: Close
|
|
1717
|
+
})), isLoading && /* @__PURE__ */ React.createElement("div", {
|
|
1718
|
+
"data-testid": `${baseClass$d}-loader`,
|
|
1719
|
+
className: styles$7[`${baseClass$d}__loader`]
|
|
1720
|
+
}, /* @__PURE__ */ React.createElement(Loader, {
|
|
1721
|
+
size: "small"
|
|
1722
|
+
})));
|
|
1723
|
+
};
|
|
1633
1724
|
const switch__input = "lc-Switch-module__switch__input___NiiOR";
|
|
1634
1725
|
const switch__container = "lc-Switch-module__switch__container___79F7W";
|
|
1635
1726
|
const switch__track = "lc-Switch-module__switch__track___2wr2M";
|
|
1636
1727
|
const switch__slider = "lc-Switch-module__switch__slider___WHd--";
|
|
1637
|
-
var styles$
|
|
1728
|
+
var styles$6 = {
|
|
1638
1729
|
"switch": "lc-Switch-module__switch___AaA2k",
|
|
1639
1730
|
"switch__track--enabled": "lc-Switch-module__switch__track--enabled___sy4Xl",
|
|
1640
1731
|
"switch__track--disabled": "lc-Switch-module__switch__track--disabled___HkDhl",
|
|
@@ -1651,18 +1742,18 @@ var styles$5 = {
|
|
|
1651
1742
|
"switch__slider--compact--enabled": "lc-Switch-module__switch__slider--compact--enabled___04TFA",
|
|
1652
1743
|
"switch__slider--compact--disabled": "lc-Switch-module__switch__slider--compact--disabled___Vqznr"
|
|
1653
1744
|
};
|
|
1654
|
-
const baseClass$
|
|
1655
|
-
const Switch = (
|
|
1656
|
-
var
|
|
1745
|
+
const baseClass$c = "switch";
|
|
1746
|
+
const Switch = (_S) => {
|
|
1747
|
+
var _T = _S, {
|
|
1657
1748
|
className = "",
|
|
1658
1749
|
defaultOn = false,
|
|
1659
1750
|
disabled = false,
|
|
1660
|
-
name = baseClass$
|
|
1751
|
+
name = baseClass$c,
|
|
1661
1752
|
on,
|
|
1662
1753
|
onChange = noop,
|
|
1663
1754
|
size = "basic",
|
|
1664
1755
|
innerRef
|
|
1665
|
-
} =
|
|
1756
|
+
} = _T, props = __objRest(_T, [
|
|
1666
1757
|
"className",
|
|
1667
1758
|
"defaultOn",
|
|
1668
1759
|
"disabled",
|
|
@@ -1672,17 +1763,14 @@ const Switch = (_Q) => {
|
|
|
1672
1763
|
"size",
|
|
1673
1764
|
"innerRef"
|
|
1674
1765
|
]);
|
|
1675
|
-
const
|
|
1676
|
-
return on !== void 0 ? on : defaultOn;
|
|
1677
|
-
};
|
|
1678
|
-
const [enabled, setEnabled] = React.useState(getEnabledValue());
|
|
1766
|
+
const [enabled, setEnabled] = React.useState(() => on !== void 0 ? on : defaultOn);
|
|
1679
1767
|
React.useEffect(() => {
|
|
1680
1768
|
if (on !== void 0) {
|
|
1681
1769
|
setEnabled(on);
|
|
1682
1770
|
}
|
|
1683
1771
|
}, [on]);
|
|
1684
1772
|
const valueStyles = enabled ? "enabled" : "disabled";
|
|
1685
|
-
const mergedClassNames = cx(styles$
|
|
1773
|
+
const mergedClassNames = cx(styles$6[baseClass$c], styles$6[`${baseClass$c}--${size}`], className);
|
|
1686
1774
|
const handleChange = (e) => {
|
|
1687
1775
|
const hasOnChangePassed = onChange !== noop;
|
|
1688
1776
|
if (hasOnChangePassed) {
|
|
@@ -1696,7 +1784,7 @@ const Switch = (_Q) => {
|
|
|
1696
1784
|
className: mergedClassNames
|
|
1697
1785
|
}, /* @__PURE__ */ React.createElement("input", __spreadValues({
|
|
1698
1786
|
type: "checkbox",
|
|
1699
|
-
className: styles$
|
|
1787
|
+
className: styles$6[`${baseClass$c}__input`],
|
|
1700
1788
|
onChange: handleChange,
|
|
1701
1789
|
checked: enabled,
|
|
1702
1790
|
name,
|
|
@@ -1704,28 +1792,28 @@ const Switch = (_Q) => {
|
|
|
1704
1792
|
disabled,
|
|
1705
1793
|
"test-id": "foo"
|
|
1706
1794
|
}, props)), /* @__PURE__ */ React.createElement("span", {
|
|
1707
|
-
className: styles$
|
|
1795
|
+
className: styles$6[`${baseClass$c}__container`]
|
|
1708
1796
|
}, /* @__PURE__ */ React.createElement("span", {
|
|
1709
|
-
className: cx(styles$
|
|
1797
|
+
className: cx(styles$6[`${baseClass$c}__track`], styles$6[`${baseClass$c}__track--${valueStyles}`])
|
|
1710
1798
|
}), /* @__PURE__ */ React.createElement("span", {
|
|
1711
|
-
className: cx(styles$
|
|
1799
|
+
className: cx(styles$6[`${baseClass$c}__slider`], styles$6[`${baseClass$c}__slider--${size}`], styles$6[`${baseClass$c}__slider--${size}--${valueStyles}`])
|
|
1712
1800
|
})));
|
|
1713
1801
|
};
|
|
1714
1802
|
const tab = "lc-Tab-module__tab___fME7u";
|
|
1715
1803
|
const tab__description = "lc-Tab-module__tab__description___JGXU6";
|
|
1716
|
-
var styles$
|
|
1804
|
+
var styles$5 = {
|
|
1717
1805
|
tab,
|
|
1718
1806
|
tab__description,
|
|
1719
1807
|
"tab--selected": "lc-Tab-module__tab--selected___c0EkL"
|
|
1720
1808
|
};
|
|
1721
|
-
const baseClass$
|
|
1722
|
-
const Tab = (
|
|
1723
|
-
var
|
|
1809
|
+
const baseClass$b = "tab";
|
|
1810
|
+
const Tab = (_U) => {
|
|
1811
|
+
var _V = _U, {
|
|
1724
1812
|
children,
|
|
1725
1813
|
className,
|
|
1726
1814
|
description,
|
|
1727
1815
|
isSelected
|
|
1728
|
-
} =
|
|
1816
|
+
} = _V, restProps = __objRest(_V, [
|
|
1729
1817
|
"children",
|
|
1730
1818
|
"className",
|
|
1731
1819
|
"description",
|
|
@@ -1735,26 +1823,26 @@ const Tab = (_S) => {
|
|
|
1735
1823
|
as: restProps.href ? "a" : "button",
|
|
1736
1824
|
size: "md",
|
|
1737
1825
|
bold: isSelected,
|
|
1738
|
-
className: cx(styles$
|
|
1826
|
+
className: cx(styles$5[baseClass$b], className, isSelected && styles$5[`${baseClass$b}--selected`])
|
|
1739
1827
|
}), children, description && /* @__PURE__ */ React.createElement(Text, {
|
|
1740
1828
|
as: "span",
|
|
1741
1829
|
size: "md",
|
|
1742
|
-
className: styles$
|
|
1830
|
+
className: styles$5[`${baseClass$b}__description`]
|
|
1743
1831
|
}, "(", description, ")"));
|
|
1744
1832
|
};
|
|
1745
1833
|
const tabs = "lc-TabsWrapper-module__tabs___Y2xyD";
|
|
1746
1834
|
const tabs__list = "lc-TabsWrapper-module__tabs__list___i6tVO";
|
|
1747
|
-
var styles$
|
|
1835
|
+
var styles$4 = {
|
|
1748
1836
|
tabs,
|
|
1749
1837
|
tabs__list
|
|
1750
1838
|
};
|
|
1751
|
-
const baseClass$
|
|
1839
|
+
const baseClass$a = "tabs";
|
|
1752
1840
|
const TabsWrapper = ({
|
|
1753
1841
|
className,
|
|
1754
1842
|
children
|
|
1755
1843
|
}) => {
|
|
1756
1844
|
return /* @__PURE__ */ React.createElement("div", {
|
|
1757
|
-
className: cx(styles$
|
|
1845
|
+
className: cx(styles$4[baseClass$a], className)
|
|
1758
1846
|
}, children);
|
|
1759
1847
|
};
|
|
1760
1848
|
const TabsList = ({
|
|
@@ -1762,7 +1850,7 @@ const TabsList = ({
|
|
|
1762
1850
|
children
|
|
1763
1851
|
}) => {
|
|
1764
1852
|
return /* @__PURE__ */ React.createElement("div", {
|
|
1765
|
-
className: cx(styles$
|
|
1853
|
+
className: cx(styles$4[`${baseClass$a}__list`], className)
|
|
1766
1854
|
}, children);
|
|
1767
1855
|
};
|
|
1768
1856
|
const tag = "lc-Tag-module__tag___1QRVY";
|
|
@@ -1770,7 +1858,7 @@ const tag__remove = "lc-Tag-module__tag__remove___UmtrW";
|
|
|
1770
1858
|
const icon = "lc-Tag-module__icon___2Z-35";
|
|
1771
1859
|
const tag__icon = "lc-Tag-module__tag__icon___tZoQ9";
|
|
1772
1860
|
const tag__avatar = "lc-Tag-module__tag__avatar___U4c-P";
|
|
1773
|
-
var styles$
|
|
1861
|
+
var styles$3 = {
|
|
1774
1862
|
tag,
|
|
1775
1863
|
"tag--success": "lc-Tag-module__tag--success___P2hXQ",
|
|
1776
1864
|
tag__remove,
|
|
@@ -1788,15 +1876,15 @@ var styles$2 = {
|
|
|
1788
1876
|
tag__icon,
|
|
1789
1877
|
tag__avatar
|
|
1790
1878
|
};
|
|
1791
|
-
const baseClass$
|
|
1879
|
+
const baseClass$9 = "tag";
|
|
1792
1880
|
const getCustomTextClass = (customColor) => {
|
|
1793
1881
|
if (!customColor) {
|
|
1794
1882
|
return "";
|
|
1795
1883
|
}
|
|
1796
1884
|
return getContrast(customColor, "#FFFFFF") > 4.5 ? "text-white" : "text-black";
|
|
1797
1885
|
};
|
|
1798
|
-
const Tag = (
|
|
1799
|
-
var
|
|
1886
|
+
const Tag = (_W) => {
|
|
1887
|
+
var _X = _W, {
|
|
1800
1888
|
className = "",
|
|
1801
1889
|
children,
|
|
1802
1890
|
dismissible = false,
|
|
@@ -1807,7 +1895,7 @@ const Tag = (_U) => {
|
|
|
1807
1895
|
icon: icon2,
|
|
1808
1896
|
avatar,
|
|
1809
1897
|
customColor
|
|
1810
|
-
} =
|
|
1898
|
+
} = _X, restProps = __objRest(_X, [
|
|
1811
1899
|
"className",
|
|
1812
1900
|
"children",
|
|
1813
1901
|
"dismissible",
|
|
@@ -1819,11 +1907,11 @@ const Tag = (_U) => {
|
|
|
1819
1907
|
"avatar",
|
|
1820
1908
|
"customColor"
|
|
1821
1909
|
]);
|
|
1822
|
-
const mergedClassNames = cx(styles$
|
|
1823
|
-
[styles$
|
|
1824
|
-
[styles$
|
|
1825
|
-
[styles$
|
|
1826
|
-
[styles$
|
|
1910
|
+
const mergedClassNames = cx(styles$3[baseClass$9], className, styles$3[`${baseClass$9}--${size}`], styles$3[`${baseClass$9}--${kind}`], {
|
|
1911
|
+
[styles$3[`${baseClass$9}--dismissible`]]: dismissible,
|
|
1912
|
+
[styles$3[`${baseClass$9}--outline`]]: outline,
|
|
1913
|
+
[styles$3[`${baseClass$9}--with-icon`]]: !!icon2 || !!avatar,
|
|
1914
|
+
[styles$3[`${baseClass$9}--${getCustomTextClass(customColor)}`]]: !!customColor
|
|
1827
1915
|
});
|
|
1828
1916
|
const getCustomColorStyles = () => {
|
|
1829
1917
|
if (!customColor) {
|
|
@@ -1855,24 +1943,24 @@ const Tag = (_U) => {
|
|
|
1855
1943
|
as: "div",
|
|
1856
1944
|
size: "md"
|
|
1857
1945
|
}), avatar && /* @__PURE__ */ React.createElement("img", {
|
|
1858
|
-
className: styles$
|
|
1946
|
+
className: styles$3[`${baseClass$9}__avatar`],
|
|
1859
1947
|
src: avatar,
|
|
1860
1948
|
alt: "tag-avatar",
|
|
1861
1949
|
"data-testid": "lc-tag-avatar"
|
|
1862
1950
|
}), " ", icon2 && !avatar && /* @__PURE__ */ React.createElement(Icon, {
|
|
1863
1951
|
"data-testid": "lc-tag-icon",
|
|
1864
|
-
className: styles$
|
|
1952
|
+
className: styles$3[`${baseClass$9}__icon`],
|
|
1865
1953
|
source: icon2,
|
|
1866
|
-
size:
|
|
1954
|
+
size: "small",
|
|
1867
1955
|
customColor: getIconCustomColor()
|
|
1868
1956
|
}), children, dismissible && /* @__PURE__ */ React.createElement("button", {
|
|
1869
1957
|
title: "Remove",
|
|
1870
1958
|
onClick: onRemove,
|
|
1871
1959
|
type: "button",
|
|
1872
|
-
className: styles$
|
|
1960
|
+
className: styles$3[`${baseClass$9}__remove`]
|
|
1873
1961
|
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
1874
1962
|
source: Close,
|
|
1875
|
-
size:
|
|
1963
|
+
size: "medium",
|
|
1876
1964
|
customColor: getIconCustomColor()
|
|
1877
1965
|
})));
|
|
1878
1966
|
};
|
|
@@ -1933,7 +2021,7 @@ const EditableTagContent = ({
|
|
|
1933
2021
|
dangerouslySetInnerHTML: { __html: escape(value) }
|
|
1934
2022
|
});
|
|
1935
2023
|
};
|
|
1936
|
-
var styles$
|
|
2024
|
+
var styles$2 = {
|
|
1937
2025
|
"tag-input": "lc-TagInput-module__tag-input___CLVY-",
|
|
1938
2026
|
"tag-input--error": "lc-TagInput-module__tag-input--error___RP0SB",
|
|
1939
2027
|
"tag-input__input": "lc-TagInput-module__tag-input__input___dgEYB",
|
|
@@ -1941,7 +2029,7 @@ var styles$1 = {
|
|
|
1941
2029
|
"tag-input__input--large": "lc-TagInput-module__tag-input__input--large___G6iEO",
|
|
1942
2030
|
"tag-input__tag__content": "lc-TagInput-module__tag-input__tag__content___x95-M"
|
|
1943
2031
|
};
|
|
1944
|
-
const baseClass$
|
|
2032
|
+
const baseClass$8 = "tag-input__tag";
|
|
1945
2033
|
const EditableTag = ({
|
|
1946
2034
|
children,
|
|
1947
2035
|
index: index2,
|
|
@@ -1965,13 +2053,13 @@ const EditableTag = ({
|
|
|
1965
2053
|
value: children,
|
|
1966
2054
|
inputRef,
|
|
1967
2055
|
innerEditableRef,
|
|
1968
|
-
className: styles$
|
|
2056
|
+
className: styles$2[`${baseClass$8}__content`],
|
|
1969
2057
|
change: (newValue) => update(index2, newValue),
|
|
1970
2058
|
remove: removeTag,
|
|
1971
2059
|
validator
|
|
1972
2060
|
}));
|
|
1973
2061
|
};
|
|
1974
|
-
const baseClass$
|
|
2062
|
+
const baseClass$7 = "tag-input";
|
|
1975
2063
|
const tagSeparatorKeys = [
|
|
1976
2064
|
KeyCodes.enter,
|
|
1977
2065
|
KeyCodes.spacebar,
|
|
@@ -1988,10 +2076,10 @@ const TagInput = ({
|
|
|
1988
2076
|
placeholder,
|
|
1989
2077
|
size = "medium"
|
|
1990
2078
|
}) => {
|
|
1991
|
-
const mergedClassNames = cx(styles$
|
|
1992
|
-
[styles$
|
|
2079
|
+
const mergedClassNames = cx(styles$2[baseClass$7], {
|
|
2080
|
+
[styles$2[`${baseClass$7}--error`]]: error
|
|
1993
2081
|
});
|
|
1994
|
-
const inputClassNames = cx(styles$
|
|
2082
|
+
const inputClassNames = cx(styles$2[`${baseClass$7}__input`], styles$2[`${baseClass$7}__input--${size}`]);
|
|
1995
2083
|
const [inputValue, setInputValue] = React.useState("");
|
|
1996
2084
|
const inputRef = React.useRef(null);
|
|
1997
2085
|
const addTag = (value) => {
|
|
@@ -2080,7 +2168,7 @@ const toast__content = "lc-Toast-module__toast__content___HjaNw";
|
|
|
2080
2168
|
const toast__icon = "lc-Toast-module__toast__icon___wLbLu";
|
|
2081
2169
|
const toast__close = "lc-Toast-module__toast__close___O18Lh";
|
|
2082
2170
|
const toast__actions = "lc-Toast-module__toast__actions___JWu-1";
|
|
2083
|
-
var styles = {
|
|
2171
|
+
var styles$1 = {
|
|
2084
2172
|
toast,
|
|
2085
2173
|
toast__content,
|
|
2086
2174
|
toast__icon,
|
|
@@ -2110,34 +2198,26 @@ var styles = {
|
|
|
2110
2198
|
"toast-exit--fade": "lc-Toast-module__toast-exit--fade___iDA1p",
|
|
2111
2199
|
"toast-exit-active--fade": "lc-Toast-module__toast-exit-active--fade___tL7sb"
|
|
2112
2200
|
};
|
|
2113
|
-
const baseClass$
|
|
2114
|
-
var Variants = /* @__PURE__ */ ((Variants2) => {
|
|
2115
|
-
Variants2["Success"] = "success";
|
|
2116
|
-
Variants2["Warning"] = "warning";
|
|
2117
|
-
Variants2["Error"] = "error";
|
|
2118
|
-
Variants2["Info"] = "info";
|
|
2119
|
-
Variants2["Notification"] = "notification";
|
|
2120
|
-
return Variants2;
|
|
2121
|
-
})(Variants || {});
|
|
2201
|
+
const baseClass$6 = "toast";
|
|
2122
2202
|
const IconConfig = {
|
|
2123
|
-
|
|
2203
|
+
success: {
|
|
2124
2204
|
source: CheckCircleSolid,
|
|
2125
|
-
|
|
2205
|
+
kind: "inverted"
|
|
2126
2206
|
},
|
|
2127
|
-
|
|
2207
|
+
warning: {
|
|
2128
2208
|
source: Warning
|
|
2129
2209
|
},
|
|
2130
|
-
|
|
2210
|
+
error: {
|
|
2131
2211
|
source: Error2,
|
|
2132
|
-
|
|
2212
|
+
kind: "inverted"
|
|
2133
2213
|
},
|
|
2134
|
-
|
|
2135
|
-
source: Info,
|
|
2136
|
-
|
|
2214
|
+
info: {
|
|
2215
|
+
source: Info$1,
|
|
2216
|
+
kind: "inverted"
|
|
2137
2217
|
},
|
|
2138
|
-
|
|
2139
|
-
source: Info,
|
|
2140
|
-
|
|
2218
|
+
notification: {
|
|
2219
|
+
source: Info$1,
|
|
2220
|
+
kind: "link"
|
|
2141
2221
|
}
|
|
2142
2222
|
};
|
|
2143
2223
|
const Toast = ({
|
|
@@ -2145,10 +2225,10 @@ const Toast = ({
|
|
|
2145
2225
|
className,
|
|
2146
2226
|
children,
|
|
2147
2227
|
removable,
|
|
2148
|
-
|
|
2228
|
+
kind = "info",
|
|
2149
2229
|
onClose
|
|
2150
2230
|
}) => {
|
|
2151
|
-
const mergedClassNames = cx(styles[baseClass$
|
|
2231
|
+
const mergedClassNames = cx(styles$1[baseClass$6], styles$1[`${baseClass$6}--${kind}`], className);
|
|
2152
2232
|
const onActionClick = (action2) => {
|
|
2153
2233
|
if (action2 && action2.closeOnClick && onClose) {
|
|
2154
2234
|
action2.handler();
|
|
@@ -2159,37 +2239,26 @@ const Toast = ({
|
|
|
2159
2239
|
return /* @__PURE__ */ React.createElement("div", {
|
|
2160
2240
|
className: mergedClassNames
|
|
2161
2241
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
2162
|
-
className: styles[`${baseClass$
|
|
2163
|
-
}, /* @__PURE__ */ React.createElement(Icon, __spreadValues({}, IconConfig[
|
|
2164
|
-
className: styles[`${baseClass$
|
|
2242
|
+
className: styles$1[`${baseClass$6}__icon`]
|
|
2243
|
+
}, /* @__PURE__ */ React.createElement(Icon, __spreadValues({}, IconConfig[kind]))), /* @__PURE__ */ React.createElement("div", {
|
|
2244
|
+
className: styles$1[`${baseClass$6}__content`]
|
|
2165
2245
|
}, children), (action || removable) && /* @__PURE__ */ React.createElement("div", {
|
|
2166
|
-
className: styles[`${baseClass$
|
|
2246
|
+
className: styles$1[`${baseClass$6}__actions`]
|
|
2167
2247
|
}, action && /* @__PURE__ */ React.createElement("button", {
|
|
2168
|
-
className: styles[`${baseClass$
|
|
2248
|
+
className: styles$1[`${baseClass$6}__actions-custom`],
|
|
2169
2249
|
onClick: () => onActionClick(action)
|
|
2170
2250
|
}, action.label), removable && /* @__PURE__ */ React.createElement("div", {
|
|
2171
|
-
className: styles[`${baseClass$
|
|
2251
|
+
className: styles$1[`${baseClass$6}__actions-close`],
|
|
2172
2252
|
"aria-label": "Close toast",
|
|
2173
2253
|
onClick: onClose
|
|
2174
2254
|
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
2175
2255
|
source: Close,
|
|
2176
|
-
size:
|
|
2177
|
-
|
|
2256
|
+
size: "small",
|
|
2257
|
+
kind: ["warning", "notification"].includes(kind) ? "primary" : "inverted"
|
|
2178
2258
|
}))));
|
|
2179
2259
|
};
|
|
2180
|
-
var HorizontalPosition = /* @__PURE__ */ ((HorizontalPosition2) => {
|
|
2181
|
-
HorizontalPosition2["Left"] = "left";
|
|
2182
|
-
HorizontalPosition2["Center"] = "center";
|
|
2183
|
-
HorizontalPosition2["Right"] = "right";
|
|
2184
|
-
return HorizontalPosition2;
|
|
2185
|
-
})(HorizontalPosition || {});
|
|
2186
|
-
var VerticalPosition = /* @__PURE__ */ ((VerticalPosition2) => {
|
|
2187
|
-
VerticalPosition2["Top"] = "top";
|
|
2188
|
-
VerticalPosition2["Bottom"] = "bottom";
|
|
2189
|
-
return VerticalPosition2;
|
|
2190
|
-
})(VerticalPosition || {});
|
|
2191
2260
|
const ANIMATION_TIME = 200;
|
|
2192
|
-
const baseClass = "toast-wrapper";
|
|
2261
|
+
const baseClass$5 = "toast-wrapper";
|
|
2193
2262
|
const ToastWrapper = ({
|
|
2194
2263
|
className,
|
|
2195
2264
|
toasts = [],
|
|
@@ -2199,30 +2268,497 @@ const ToastWrapper = ({
|
|
|
2199
2268
|
verticalPosition = "top",
|
|
2200
2269
|
horizontalPosition = "center"
|
|
2201
2270
|
}) => {
|
|
2202
|
-
const mergedClassNames = cx(styles[baseClass], {
|
|
2203
|
-
[styles[`${baseClass}--fixed`]]: fixed,
|
|
2204
|
-
[styles[`${baseClass}--block`]]: !fixed && block,
|
|
2205
|
-
[styles[`${baseClass}--horizontal-${horizontalPosition}`]]: horizontalPosition,
|
|
2206
|
-
[styles[`${baseClass}--vertical-${verticalPosition}`]]: verticalPosition
|
|
2271
|
+
const mergedClassNames = cx(styles$1[baseClass$5], {
|
|
2272
|
+
[styles$1[`${baseClass$5}--fixed`]]: fixed,
|
|
2273
|
+
[styles$1[`${baseClass$5}--block`]]: !fixed && block,
|
|
2274
|
+
[styles$1[`${baseClass$5}--horizontal-${horizontalPosition}`]]: horizontalPosition,
|
|
2275
|
+
[styles$1[`${baseClass$5}--vertical-${verticalPosition}`]]: verticalPosition
|
|
2207
2276
|
}, className);
|
|
2208
2277
|
return /* @__PURE__ */ React.createElement("div", {
|
|
2209
2278
|
className: mergedClassNames
|
|
2210
2279
|
}, /* @__PURE__ */ React.createElement(TransitionGroup, {
|
|
2211
2280
|
component: null
|
|
2212
|
-
}, toasts.map(({ id,
|
|
2281
|
+
}, toasts.map(({ id, kind, content, removable, action, onClose }) => /* @__PURE__ */ React.createElement(CSSTransition, {
|
|
2213
2282
|
key: id,
|
|
2214
2283
|
classNames: {
|
|
2215
|
-
enter: styles[`toast-appear--${animationType}`],
|
|
2216
|
-
enterActive: styles[`toast-appear-active--${animationType}`],
|
|
2217
|
-
exit: styles[`toast-exit--${animationType}`],
|
|
2218
|
-
exitActive: styles[`toast-exit-active--${animationType}`]
|
|
2284
|
+
enter: styles$1[`toast-appear--${animationType}`],
|
|
2285
|
+
enterActive: styles$1[`toast-appear-active--${animationType}`],
|
|
2286
|
+
exit: styles$1[`toast-exit--${animationType}`],
|
|
2287
|
+
exitActive: styles$1[`toast-exit-active--${animationType}`]
|
|
2219
2288
|
},
|
|
2220
2289
|
timeout: ANIMATION_TIME
|
|
2221
2290
|
}, /* @__PURE__ */ React.createElement(Toast, {
|
|
2222
|
-
|
|
2291
|
+
kind,
|
|
2223
2292
|
onClose,
|
|
2224
2293
|
removable,
|
|
2225
2294
|
action
|
|
2226
2295
|
}, content)))));
|
|
2227
2296
|
};
|
|
2228
|
-
|
|
2297
|
+
const tooltip = "lc-Tooltip-module__tooltip___QOOAr";
|
|
2298
|
+
const tooltip__arrow = "lc-Tooltip-module__tooltip__arrow___Ov1YW";
|
|
2299
|
+
var styles = {
|
|
2300
|
+
tooltip,
|
|
2301
|
+
"tooltip--invert": "lc-Tooltip-module__tooltip--invert___PVjhE",
|
|
2302
|
+
"tooltip--important": "lc-Tooltip-module__tooltip--important___X-IMK",
|
|
2303
|
+
tooltip__arrow,
|
|
2304
|
+
"tooltip-header": "lc-Tooltip-module__tooltip-header___QV0Vd",
|
|
2305
|
+
"tooltip-image": "lc-Tooltip-module__tooltip-image___Aorwg",
|
|
2306
|
+
"tooltip-text": "lc-Tooltip-module__tooltip-text___FB8OV",
|
|
2307
|
+
"tooltip-close": "lc-Tooltip-module__tooltip-close___3r3h9",
|
|
2308
|
+
"tooltip-step": "lc-Tooltip-module__tooltip-step___-j0n8",
|
|
2309
|
+
"guide-tooltip--slide": "lc-Tooltip-module__guide-tooltip--slide___Uawm2",
|
|
2310
|
+
"guide-tooltip__overlay": "lc-Tooltip-module__guide-tooltip__overlay___IyrKK",
|
|
2311
|
+
"guide-tooltip__overlay--slide": "lc-Tooltip-module__guide-tooltip__overlay--slide___VW8oq",
|
|
2312
|
+
"guide-tooltip__overlay--visible": "lc-Tooltip-module__guide-tooltip__overlay--visible___dbdsZ"
|
|
2313
|
+
};
|
|
2314
|
+
const sleep = (milliseconds) => {
|
|
2315
|
+
return new Promise((resolve) => setTimeout(resolve, milliseconds));
|
|
2316
|
+
};
|
|
2317
|
+
const baseClass$4 = "tooltip";
|
|
2318
|
+
const Tooltip = (props) => {
|
|
2319
|
+
const {
|
|
2320
|
+
triggerRenderer,
|
|
2321
|
+
referenceElement,
|
|
2322
|
+
children,
|
|
2323
|
+
className,
|
|
2324
|
+
theme,
|
|
2325
|
+
placement,
|
|
2326
|
+
isVisible,
|
|
2327
|
+
withFadeAnimation = true,
|
|
2328
|
+
transitionDuration = 200,
|
|
2329
|
+
transitionDelay = 0,
|
|
2330
|
+
hoverOutDelayTimeout = 100,
|
|
2331
|
+
offsetMainAxis = 8,
|
|
2332
|
+
triggerOnClick = false,
|
|
2333
|
+
arrowOffsetY,
|
|
2334
|
+
arrowOffsetX,
|
|
2335
|
+
onOpen,
|
|
2336
|
+
onClose
|
|
2337
|
+
} = props;
|
|
2338
|
+
const isManaged = isVisible !== void 0;
|
|
2339
|
+
const arrowRef = React.useRef(null);
|
|
2340
|
+
const [visible, setVisibility] = React.useState(isVisible);
|
|
2341
|
+
const isHovered = React.useRef(false);
|
|
2342
|
+
const {
|
|
2343
|
+
x,
|
|
2344
|
+
y,
|
|
2345
|
+
reference,
|
|
2346
|
+
floating,
|
|
2347
|
+
strategy,
|
|
2348
|
+
update,
|
|
2349
|
+
refs,
|
|
2350
|
+
placement: updatedPlacement,
|
|
2351
|
+
middlewareData: { arrow: { x: arrowX, y: arrowY } = {} }
|
|
2352
|
+
} = useFloating({
|
|
2353
|
+
middleware: [
|
|
2354
|
+
offset({ mainAxis: offsetMainAxis }),
|
|
2355
|
+
arrow({ element: arrowRef }),
|
|
2356
|
+
flip()
|
|
2357
|
+
],
|
|
2358
|
+
placement
|
|
2359
|
+
});
|
|
2360
|
+
React.useEffect(() => {
|
|
2361
|
+
referenceElement && reference(referenceElement);
|
|
2362
|
+
}, [reference, referenceElement]);
|
|
2363
|
+
React.useEffect(() => {
|
|
2364
|
+
setVisibility(isVisible);
|
|
2365
|
+
}, [isVisible]);
|
|
2366
|
+
React.useEffect(() => {
|
|
2367
|
+
document.addEventListener("keydown", handleCloseAction);
|
|
2368
|
+
return () => {
|
|
2369
|
+
document.removeEventListener("keydown", handleCloseAction);
|
|
2370
|
+
};
|
|
2371
|
+
}, []);
|
|
2372
|
+
React.useEffect(() => {
|
|
2373
|
+
if (!refs.reference.current || !refs.floating.current) {
|
|
2374
|
+
return;
|
|
2375
|
+
}
|
|
2376
|
+
return autoUpdate(refs.reference.current, refs.floating.current, update);
|
|
2377
|
+
}, [refs.reference, refs.floating, update, updatedPlacement, visible]);
|
|
2378
|
+
const handleMouseLeave = () => {
|
|
2379
|
+
if (triggerOnClick || isManaged)
|
|
2380
|
+
return;
|
|
2381
|
+
isHovered.current = false;
|
|
2382
|
+
void sleep(hoverOutDelayTimeout).then(() => {
|
|
2383
|
+
if (!isHovered.current) {
|
|
2384
|
+
setVisibility(false);
|
|
2385
|
+
}
|
|
2386
|
+
});
|
|
2387
|
+
};
|
|
2388
|
+
const handleOpen = () => {
|
|
2389
|
+
if (onOpen)
|
|
2390
|
+
onOpen();
|
|
2391
|
+
if (!isManaged) {
|
|
2392
|
+
setVisibility(true);
|
|
2393
|
+
}
|
|
2394
|
+
};
|
|
2395
|
+
const handleClose = () => {
|
|
2396
|
+
if (onClose)
|
|
2397
|
+
onClose();
|
|
2398
|
+
if (!isManaged) {
|
|
2399
|
+
setVisibility(false);
|
|
2400
|
+
}
|
|
2401
|
+
};
|
|
2402
|
+
const handleMouseEnter = () => {
|
|
2403
|
+
if (triggerOnClick || isManaged)
|
|
2404
|
+
return;
|
|
2405
|
+
isHovered.current = true;
|
|
2406
|
+
setVisibility(true);
|
|
2407
|
+
};
|
|
2408
|
+
const handleCloseAction = (event) => {
|
|
2409
|
+
if (event instanceof KeyboardEvent && event.key === "Escape") {
|
|
2410
|
+
handleClose();
|
|
2411
|
+
}
|
|
2412
|
+
if (event.type === "click") {
|
|
2413
|
+
handleClose();
|
|
2414
|
+
}
|
|
2415
|
+
};
|
|
2416
|
+
const handleClick = () => {
|
|
2417
|
+
if (isManaged)
|
|
2418
|
+
return;
|
|
2419
|
+
if (visible) {
|
|
2420
|
+
handleClose();
|
|
2421
|
+
} else {
|
|
2422
|
+
handleOpen();
|
|
2423
|
+
}
|
|
2424
|
+
};
|
|
2425
|
+
const top = arrowOffsetY && arrowY ? arrowY + arrowOffsetY : arrowY;
|
|
2426
|
+
const left = arrowOffsetX && arrowX ? arrowX + arrowOffsetX : arrowX;
|
|
2427
|
+
const mergedClassNames = cx(styles[baseClass$4], className, {
|
|
2428
|
+
[styles[`${baseClass$4}--invert`]]: theme === "invert",
|
|
2429
|
+
[styles[`${baseClass$4}--important`]]: theme === "important"
|
|
2430
|
+
});
|
|
2431
|
+
const floatingComponent = /* @__PURE__ */ React.createElement("div", {
|
|
2432
|
+
ref: floating,
|
|
2433
|
+
style: {
|
|
2434
|
+
position: strategy,
|
|
2435
|
+
top: y != null ? y : "",
|
|
2436
|
+
left: x != null ? x : ""
|
|
2437
|
+
},
|
|
2438
|
+
className: mergedClassNames,
|
|
2439
|
+
onMouseEnter: handleMouseEnter,
|
|
2440
|
+
onMouseLeave: handleMouseLeave
|
|
2441
|
+
}, React.Children.map(children, (child) => {
|
|
2442
|
+
if (React.isValidElement(child)) {
|
|
2443
|
+
return React.cloneElement(child, __spreadValues({
|
|
2444
|
+
handleCloseAction,
|
|
2445
|
+
theme
|
|
2446
|
+
}, child.props));
|
|
2447
|
+
}
|
|
2448
|
+
return null;
|
|
2449
|
+
}), /* @__PURE__ */ React.createElement("div", {
|
|
2450
|
+
ref: arrowRef,
|
|
2451
|
+
className: cx([styles[`${baseClass$4}__arrow`]]),
|
|
2452
|
+
"data-arrow-placement": updatedPlacement,
|
|
2453
|
+
style: { top, left }
|
|
2454
|
+
}));
|
|
2455
|
+
function renderFloatingComponent() {
|
|
2456
|
+
if (withFadeAnimation) {
|
|
2457
|
+
const enter = css`
|
|
2458
|
+
opacity: 0;
|
|
2459
|
+
`;
|
|
2460
|
+
const enterActive = css`
|
|
2461
|
+
opacity: 1;
|
|
2462
|
+
transition-property: opacity;
|
|
2463
|
+
transition-duration: ${transitionDuration}ms;
|
|
2464
|
+
transition-delay: ${transitionDelay}ms;
|
|
2465
|
+
`;
|
|
2466
|
+
const exit = css`
|
|
2467
|
+
opacity: 1;
|
|
2468
|
+
`;
|
|
2469
|
+
const exitActive = css`
|
|
2470
|
+
opacity: 0;
|
|
2471
|
+
transition-property: opacity;
|
|
2472
|
+
transition-duration: ${transitionDuration}ms;
|
|
2473
|
+
transition-delay: ${transitionDelay}ms;
|
|
2474
|
+
`;
|
|
2475
|
+
const timeout = transitionDuration + transitionDelay;
|
|
2476
|
+
return /* @__PURE__ */ React.createElement(CSSTransition, {
|
|
2477
|
+
in: visible,
|
|
2478
|
+
mountOnEnter: true,
|
|
2479
|
+
unmountOnExit: true,
|
|
2480
|
+
timeout,
|
|
2481
|
+
classNames: {
|
|
2482
|
+
enter,
|
|
2483
|
+
enterActive,
|
|
2484
|
+
exit,
|
|
2485
|
+
exitActive
|
|
2486
|
+
}
|
|
2487
|
+
}, floatingComponent);
|
|
2488
|
+
} else {
|
|
2489
|
+
return visible && floatingComponent;
|
|
2490
|
+
}
|
|
2491
|
+
}
|
|
2492
|
+
if (referenceElement) {
|
|
2493
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, renderFloatingComponent());
|
|
2494
|
+
}
|
|
2495
|
+
const referenceOptions = () => {
|
|
2496
|
+
if (!isManaged) {
|
|
2497
|
+
if (triggerOnClick) {
|
|
2498
|
+
return {
|
|
2499
|
+
onClick: handleClick
|
|
2500
|
+
};
|
|
2501
|
+
} else {
|
|
2502
|
+
return {
|
|
2503
|
+
onMouseEnter: handleMouseEnter,
|
|
2504
|
+
onMouseLeave: handleMouseLeave
|
|
2505
|
+
};
|
|
2506
|
+
}
|
|
2507
|
+
}
|
|
2508
|
+
};
|
|
2509
|
+
const triggerElement = /* @__PURE__ */ React.createElement("div", __spreadValues({
|
|
2510
|
+
ref: reference
|
|
2511
|
+
}, referenceOptions()), triggerRenderer());
|
|
2512
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, triggerElement, renderFloatingComponent());
|
|
2513
|
+
};
|
|
2514
|
+
const Simple = ({ text }) => {
|
|
2515
|
+
return /* @__PURE__ */ React.createElement("div", null, text);
|
|
2516
|
+
};
|
|
2517
|
+
function getIconType(theme) {
|
|
2518
|
+
switch (theme) {
|
|
2519
|
+
case "invert":
|
|
2520
|
+
return "inverted";
|
|
2521
|
+
case "important":
|
|
2522
|
+
return "subtle";
|
|
2523
|
+
default:
|
|
2524
|
+
return "primary";
|
|
2525
|
+
}
|
|
2526
|
+
}
|
|
2527
|
+
const baseClass$3 = "tooltip";
|
|
2528
|
+
const Info = ({ header, text, closeWithX, theme, handleCloseAction }) => {
|
|
2529
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
2530
|
+
style: { position: "relative" }
|
|
2531
|
+
}, closeWithX && /* @__PURE__ */ React.createElement("div", {
|
|
2532
|
+
className: styles[`${baseClass$3}-close`],
|
|
2533
|
+
onClick: handleCloseAction
|
|
2534
|
+
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
2535
|
+
source: Close,
|
|
2536
|
+
kind: theme ? getIconType(theme) : "primary"
|
|
2537
|
+
})), header && /* @__PURE__ */ React.createElement("div", {
|
|
2538
|
+
className: styles[`${baseClass$3}-header`]
|
|
2539
|
+
}, header), /* @__PURE__ */ React.createElement("div", {
|
|
2540
|
+
className: styles[`${baseClass$3}-text`]
|
|
2541
|
+
}, text));
|
|
2542
|
+
};
|
|
2543
|
+
const baseClass$2 = "tooltip";
|
|
2544
|
+
const Interactive = ({
|
|
2545
|
+
header,
|
|
2546
|
+
text,
|
|
2547
|
+
image,
|
|
2548
|
+
closeWithX,
|
|
2549
|
+
theme,
|
|
2550
|
+
handleCloseAction,
|
|
2551
|
+
handleClickPrimary,
|
|
2552
|
+
handleClickSecondary
|
|
2553
|
+
}) => {
|
|
2554
|
+
const decoration = theme === "invert" ? "underline" : "none";
|
|
2555
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
2556
|
+
style: { width: "270px" }
|
|
2557
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
2558
|
+
style: { position: "relative", height: "25px", marginBottom: "10px" }
|
|
2559
|
+
}, closeWithX && /* @__PURE__ */ React.createElement("div", {
|
|
2560
|
+
className: styles[`${baseClass$2}-close`]
|
|
2561
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
2562
|
+
onClick: handleCloseAction
|
|
2563
|
+
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
2564
|
+
source: Close,
|
|
2565
|
+
kind: theme ? getIconType(theme) : "primary"
|
|
2566
|
+
})))), image && /* @__PURE__ */ React.createElement("div", {
|
|
2567
|
+
style: { margin: "0 4px" }
|
|
2568
|
+
}, /* @__PURE__ */ React.createElement("img", {
|
|
2569
|
+
className: styles[`${baseClass$2}-image`],
|
|
2570
|
+
src: image.src,
|
|
2571
|
+
alt: image.alt
|
|
2572
|
+
})), header && /* @__PURE__ */ React.createElement("div", {
|
|
2573
|
+
className: styles[`${baseClass$2}-header`]
|
|
2574
|
+
}, header), /* @__PURE__ */ React.createElement("div", {
|
|
2575
|
+
className: styles[`${baseClass$2}-text`]
|
|
2576
|
+
}, text), /* @__PURE__ */ React.createElement("div", {
|
|
2577
|
+
style: { margin: "4px" }
|
|
2578
|
+
}, /* @__PURE__ */ React.createElement(Button, {
|
|
2579
|
+
kind: "primary",
|
|
2580
|
+
onClick: handleClickPrimary
|
|
2581
|
+
}, "Primary button"), /* @__PURE__ */ React.createElement("div", {
|
|
2582
|
+
onClick: handleClickSecondary,
|
|
2583
|
+
style: {
|
|
2584
|
+
cursor: "pointer",
|
|
2585
|
+
display: "inline-block",
|
|
2586
|
+
marginLeft: "16px",
|
|
2587
|
+
textDecoration: decoration
|
|
2588
|
+
}
|
|
2589
|
+
}, "Link")));
|
|
2590
|
+
};
|
|
2591
|
+
const baseClass$1 = "guide-tooltip";
|
|
2592
|
+
const SpotlightOverlay = ({
|
|
2593
|
+
gap,
|
|
2594
|
+
isVisible,
|
|
2595
|
+
slide,
|
|
2596
|
+
disablePointerEvents
|
|
2597
|
+
}) => {
|
|
2598
|
+
if (!gap)
|
|
2599
|
+
return null;
|
|
2600
|
+
const overlayLeft = {
|
|
2601
|
+
top: `${gap.top}px`,
|
|
2602
|
+
left: "0",
|
|
2603
|
+
width: `${gap.left}px`,
|
|
2604
|
+
height: `${gap.height}px`
|
|
2605
|
+
};
|
|
2606
|
+
const overlayRight = {
|
|
2607
|
+
top: `${gap.top}px`,
|
|
2608
|
+
left: `${gap.right}px`,
|
|
2609
|
+
width: `calc(100% - ${gap.right}px)`,
|
|
2610
|
+
height: `${gap.height}px`
|
|
2611
|
+
};
|
|
2612
|
+
const overlayTop = {
|
|
2613
|
+
top: "0",
|
|
2614
|
+
left: "0",
|
|
2615
|
+
width: "100%",
|
|
2616
|
+
height: `${gap.top}px`
|
|
2617
|
+
};
|
|
2618
|
+
const overlayBottom = {
|
|
2619
|
+
top: `${gap.bottom}px`,
|
|
2620
|
+
left: "0",
|
|
2621
|
+
width: "100%",
|
|
2622
|
+
height: `calc(100% - ${gap.bottom}px)`
|
|
2623
|
+
};
|
|
2624
|
+
const spotlight = {
|
|
2625
|
+
top: `${gap.top}px`,
|
|
2626
|
+
left: `${gap.left}px`,
|
|
2627
|
+
width: `${gap.width}px`,
|
|
2628
|
+
height: `${gap.height}px`,
|
|
2629
|
+
backgroundColor: "transparent"
|
|
2630
|
+
};
|
|
2631
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", {
|
|
2632
|
+
className: cx({
|
|
2633
|
+
[styles[`${baseClass$1}__overlay`]]: true,
|
|
2634
|
+
[styles[`${baseClass$1}__overlay--visible`]]: isVisible,
|
|
2635
|
+
[styles[`${baseClass$1}__overlay--slide`]]: slide
|
|
2636
|
+
}),
|
|
2637
|
+
style: overlayLeft
|
|
2638
|
+
}), /* @__PURE__ */ React.createElement("div", {
|
|
2639
|
+
className: cx({
|
|
2640
|
+
[styles[`${baseClass$1}__overlay`]]: true,
|
|
2641
|
+
[styles[`${baseClass$1}__overlay--visible`]]: isVisible,
|
|
2642
|
+
[styles[`${baseClass$1}__overlay--slide`]]: slide
|
|
2643
|
+
}),
|
|
2644
|
+
style: overlayTop
|
|
2645
|
+
}), /* @__PURE__ */ React.createElement("div", {
|
|
2646
|
+
className: cx({
|
|
2647
|
+
[styles[`${baseClass$1}__overlay`]]: true,
|
|
2648
|
+
[styles[`${baseClass$1}__overlay--visible`]]: isVisible,
|
|
2649
|
+
[styles[`${baseClass$1}__overlay--slide`]]: slide
|
|
2650
|
+
}),
|
|
2651
|
+
style: overlayRight
|
|
2652
|
+
}), /* @__PURE__ */ React.createElement("div", {
|
|
2653
|
+
className: cx({
|
|
2654
|
+
[styles[`${baseClass$1}__overlay`]]: true,
|
|
2655
|
+
[styles[`${baseClass$1}__overlay--visible`]]: isVisible,
|
|
2656
|
+
[styles[`${baseClass$1}__overlay--slide`]]: slide
|
|
2657
|
+
}),
|
|
2658
|
+
style: overlayBottom
|
|
2659
|
+
}), disablePointerEvents && /* @__PURE__ */ React.createElement("div", {
|
|
2660
|
+
className: cx({
|
|
2661
|
+
[styles[`${baseClass$1}__overlay`]]: true,
|
|
2662
|
+
[styles[`${baseClass$1}__overlay--visible`]]: isVisible,
|
|
2663
|
+
[styles[`${baseClass$1}__overlay--slide`]]: slide
|
|
2664
|
+
}),
|
|
2665
|
+
style: spotlight
|
|
2666
|
+
}));
|
|
2667
|
+
};
|
|
2668
|
+
class VirtualReference {
|
|
2669
|
+
constructor(element, padding) {
|
|
2670
|
+
__publicField(this, "element");
|
|
2671
|
+
__publicField(this, "padding");
|
|
2672
|
+
this.element = element;
|
|
2673
|
+
this.padding = padding;
|
|
2674
|
+
}
|
|
2675
|
+
addPadding(rect) {
|
|
2676
|
+
const x = Math.round(rect.left) - this.padding;
|
|
2677
|
+
const y = Math.round(rect.top) - this.padding;
|
|
2678
|
+
const width = Math.round(rect.width) + 2 * this.padding;
|
|
2679
|
+
const height = Math.round(rect.height) + 2 * this.padding;
|
|
2680
|
+
const top = y;
|
|
2681
|
+
const left = x;
|
|
2682
|
+
const bottom = top + height;
|
|
2683
|
+
const right = left + width;
|
|
2684
|
+
return {
|
|
2685
|
+
x,
|
|
2686
|
+
y,
|
|
2687
|
+
width,
|
|
2688
|
+
height,
|
|
2689
|
+
top,
|
|
2690
|
+
left,
|
|
2691
|
+
bottom,
|
|
2692
|
+
right
|
|
2693
|
+
};
|
|
2694
|
+
}
|
|
2695
|
+
getBoundingClientRect() {
|
|
2696
|
+
return this.addPadding(this.element.getBoundingClientRect());
|
|
2697
|
+
}
|
|
2698
|
+
get clientWidth() {
|
|
2699
|
+
return this.getBoundingClientRect().width;
|
|
2700
|
+
}
|
|
2701
|
+
get clientHeight() {
|
|
2702
|
+
return this.getBoundingClientRect().height;
|
|
2703
|
+
}
|
|
2704
|
+
}
|
|
2705
|
+
const spotlightPadding = 8;
|
|
2706
|
+
const baseClass = "guide-tooltip";
|
|
2707
|
+
const virtualReference = (element, padding) => new VirtualReference(element, padding);
|
|
2708
|
+
const UserGuide = (props) => {
|
|
2709
|
+
const {
|
|
2710
|
+
className,
|
|
2711
|
+
parentElementName,
|
|
2712
|
+
isVisible = false,
|
|
2713
|
+
shouldSlide = true
|
|
2714
|
+
} = props;
|
|
2715
|
+
const [parentElement, setParentElement] = React.useState(null);
|
|
2716
|
+
const [rect, setRect] = React.useState(null);
|
|
2717
|
+
const [isSliding, setIsSliding] = React.useState(shouldSlide);
|
|
2718
|
+
const handleViewportChange = () => {
|
|
2719
|
+
if (parentElement) {
|
|
2720
|
+
setRect(virtualReference(parentElement, spotlightPadding).getBoundingClientRect());
|
|
2721
|
+
setIsSliding(false);
|
|
2722
|
+
}
|
|
2723
|
+
};
|
|
2724
|
+
React.useEffect(() => {
|
|
2725
|
+
if (parentElement !== null) {
|
|
2726
|
+
window.addEventListener("resize", handleViewportChange);
|
|
2727
|
+
window.addEventListener("scroll", handleViewportChange);
|
|
2728
|
+
return () => {
|
|
2729
|
+
window.addEventListener("resize", handleViewportChange);
|
|
2730
|
+
window.addEventListener("resize", handleViewportChange);
|
|
2731
|
+
};
|
|
2732
|
+
}
|
|
2733
|
+
}, [parentElement, parentElementName]);
|
|
2734
|
+
React.useEffect(() => {
|
|
2735
|
+
if (parentElementName) {
|
|
2736
|
+
const element = document.querySelector(parentElementName);
|
|
2737
|
+
setParentElement(element);
|
|
2738
|
+
}
|
|
2739
|
+
}, [parentElementName]);
|
|
2740
|
+
React.useEffect(() => {
|
|
2741
|
+
parentElement && setRect(virtualReference(parentElement, spotlightPadding).getBoundingClientRect());
|
|
2742
|
+
setIsSliding(true);
|
|
2743
|
+
}, [parentElement]);
|
|
2744
|
+
return parentElement && isVisible ? /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(SpotlightOverlay, {
|
|
2745
|
+
gap: rect,
|
|
2746
|
+
isVisible,
|
|
2747
|
+
slide: isSliding,
|
|
2748
|
+
disablePointerEvents: true
|
|
2749
|
+
}), /* @__PURE__ */ React.createElement(Tooltip, __spreadProps(__spreadValues({}, props), {
|
|
2750
|
+
referenceElement: {
|
|
2751
|
+
getBoundingClientRect: () => {
|
|
2752
|
+
return rect;
|
|
2753
|
+
},
|
|
2754
|
+
contextElement: parentElement
|
|
2755
|
+
},
|
|
2756
|
+
arrowOffsetY: 25,
|
|
2757
|
+
className: cx({
|
|
2758
|
+
[styles[baseClass]]: true,
|
|
2759
|
+
[styles[`${baseClass}--slide`]]: isSliding,
|
|
2760
|
+
className
|
|
2761
|
+
})
|
|
2762
|
+
}), props.children)) : null;
|
|
2763
|
+
};
|
|
2764
|
+
export { ANIMATION_TIME, ActionModal, Alert, Badge, Button, ButtonGroup, Card, Checkbox, CheckboxField, DesignTokens, EmailTagInput, FieldDescription, FieldError, FieldGroup, Form, FormGroup, Heading, Icon, Info, InputField, Interactive, Link, Loader, Modal, ModalBase, ModalCloseButton, ModalPortal, NumericInput, NumericInputField, Popover, ProgressBar, ProgressCircle, PromoBanner, RadioButton, SearchInput, Simple, Switch, Tab, TabsList, TabsWrapper, Tag, TagInput, Text, TextField, Toast, ToastWrapper, Tooltip, UserGuide };
|