@doist/reactist 29.1.0 → 29.1.2
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/CHANGELOG.md +14 -0
- package/dist/reactist.cjs.development.js +6749 -1829
- package/dist/reactist.cjs.development.js.map +1 -1
- package/dist/reactist.cjs.production.min.js +1 -1
- package/dist/reactist.cjs.production.min.js.map +1 -1
- package/es/avatar/avatar.js +106 -36
- package/es/avatar/avatar.js.map +1 -1
- package/es/avatar/utils.js +17 -19
- package/es/avatar/utils.js.map +1 -1
- package/es/badge/badge.js +50 -6
- package/es/badge/badge.js.map +1 -1
- package/es/banner/banner.js +384 -41
- package/es/banner/banner.js.map +1 -1
- package/es/base-field/base-field.js +367 -77
- package/es/base-field/base-field.js.map +1 -1
- package/es/box/box.js +139 -61
- package/es/box/box.js.map +1 -1
- package/es/button/button.js +346 -36
- package/es/button/button.js.map +1 -1
- package/es/checkbox-field/checkbox-field.js +71 -48
- package/es/checkbox-field/checkbox-field.js.map +1 -1
- package/es/checkbox-field/checkbox-icon.js +88 -28
- package/es/checkbox-field/checkbox-icon.js.map +1 -1
- package/es/checkbox-field/use-fork-ref.js +15 -20
- package/es/checkbox-field/use-fork-ref.js.map +1 -1
- package/es/columns/columns.js +46 -23
- package/es/columns/columns.js.map +1 -1
- package/es/components/color-picker/color-picker.js +190 -46
- package/es/components/color-picker/color-picker.js.map +1 -1
- package/es/components/deprecated-button/deprecated-button.js +102 -9
- package/es/components/deprecated-button/deprecated-button.js.map +1 -1
- package/es/components/deprecated-button/index.js +5 -2
- package/es/components/deprecated-button/index.js.map +1 -1
- package/es/components/deprecated-dropdown/dropdown.js +234 -134
- package/es/components/deprecated-dropdown/dropdown.js.map +1 -1
- package/es/components/deprecated-dropdown/index.js +4 -1
- package/es/components/deprecated-dropdown/index.js.map +1 -1
- package/es/components/deprecated-input/index.js +5 -2
- package/es/components/deprecated-input/index.js.map +1 -1
- package/es/components/deprecated-input/input.js +27 -4
- package/es/components/deprecated-input/input.js.map +1 -1
- package/es/components/deprecated-select/select.js +110 -7
- package/es/components/deprecated-select/select.js.map +1 -1
- package/es/components/key-capturer/key-capturer.js +190 -137
- package/es/components/key-capturer/key-capturer.js.map +1 -1
- package/es/components/keyboard-shortcut/keyboard-shortcut.js +65 -45
- package/es/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
- package/es/components/progress-bar/progress-bar.js +61 -9
- package/es/components/progress-bar/progress-bar.js.map +1 -1
- package/es/components/time/index.js +5 -2
- package/es/components/time/index.js.map +1 -1
- package/es/components/time/time-utils.js +59 -53
- package/es/components/time/time-utils.js.map +1 -1
- package/es/components/time/time.js +94 -91
- package/es/components/time/time.js.map +1 -1
- package/es/divider/divider.js +44 -5
- package/es/divider/divider.js.map +1 -1
- package/es/heading/heading.js +122 -20
- package/es/heading/heading.js.map +1 -1
- package/es/hidden/hidden.js +36 -30
- package/es/hidden/hidden.js.map +1 -1
- package/es/hidden-visually/hidden-visually.js +9 -4
- package/es/hidden-visually/hidden-visually.js.map +1 -1
- package/es/icons/alert-icon.js +145 -18
- package/es/icons/alert-icon.js.map +1 -1
- package/es/icons/banner-icon.js +213 -25
- package/es/icons/banner-icon.js.map +1 -1
- package/es/icons/close-icon.js +26 -3
- package/es/icons/close-icon.js.map +1 -1
- package/es/icons/password-hidden-icon.js +40 -6
- package/es/icons/password-hidden-icon.js.map +1 -1
- package/es/icons/password-visible-icon.js +33 -5
- package/es/icons/password-visible-icon.js.map +1 -1
- package/es/index.js +9 -9
- package/es/inline/inline.js +24 -9
- package/es/inline/inline.js.map +1 -1
- package/es/loading/loading.js +63 -17
- package/es/loading/loading.js.map +1 -1
- package/es/menu/menu.js +469 -92
- package/es/menu/menu.js.map +1 -1
- package/es/modal/modal.js +675 -112
- package/es/modal/modal.js.map +1 -1
- package/es/notice/notice.js +77 -10
- package/es/notice/notice.js.map +1 -1
- package/es/password-field/password-field.js +89 -11
- package/es/password-field/password-field.js.map +1 -1
- package/es/prose/prose.js +48 -9
- package/es/prose/prose.js.map +1 -1
- package/es/select-field/select-field.js +150 -16
- package/es/select-field/select-field.js.map +1 -1
- package/es/spinner/spinner.js +39 -6
- package/es/spinner/spinner.js.map +1 -1
- package/es/stack/stack.js +29 -17
- package/es/stack/stack.js.map +1 -1
- package/es/switch-field/switch-field.js +225 -42
- package/es/switch-field/switch-field.js.map +1 -1
- package/es/tabs/tabs.js +207 -109
- package/es/tabs/tabs.js.map +1 -1
- package/es/text/text.js +27 -17
- package/es/text/text.js.map +1 -1
- package/es/text-area/text-area.js +264 -54
- package/es/text-area/text-area.js.map +1 -1
- package/es/text-field/text-field.js +204 -31
- package/es/text-field/text-field.js.map +1 -1
- package/es/text-link/text-link.js +21 -10
- package/es/text-link/text-link.js.map +1 -1
- package/es/toast/static-toast.js +143 -25
- package/es/toast/static-toast.js.map +1 -1
- package/es/toast/toast-animation.js +159 -109
- package/es/toast/toast-animation.js.map +1 -1
- package/es/toast/use-toasts.js +309 -84
- package/es/toast/use-toasts.js.map +1 -1
- package/es/tooltip/tooltip.js +88 -32
- package/es/tooltip/tooltip.js.map +1 -1
- package/es/utils/common-helpers.js +12 -11
- package/es/utils/common-helpers.js.map +1 -1
- package/es/utils/polymorphism.js +84 -1
- package/es/utils/polymorphism.js.map +1 -1
- package/es/utils/responsive-props.js +43 -32
- package/es/utils/responsive-props.js.map +1 -1
- package/lib/avatar/avatar.js +109 -35
- package/lib/avatar/avatar.js.map +1 -1
- package/lib/avatar/utils.js +17 -19
- package/lib/avatar/utils.js.map +1 -1
- package/lib/badge/badge.js +53 -5
- package/lib/badge/badge.js.map +1 -1
- package/lib/banner/banner.js +385 -38
- package/lib/banner/banner.js.map +1 -1
- package/lib/base-field/base-field.js +366 -73
- package/lib/base-field/base-field.js.map +1 -1
- package/lib/box/box.js +141 -61
- package/lib/box/box.js.map +1 -1
- package/lib/button/button.js +347 -35
- package/lib/button/button.js.map +1 -1
- package/lib/checkbox-field/checkbox-field.js +73 -46
- package/lib/checkbox-field/checkbox-field.js.map +1 -1
- package/lib/checkbox-field/checkbox-icon.js +92 -28
- package/lib/checkbox-field/checkbox-icon.js.map +1 -1
- package/lib/checkbox-field/use-fork-ref.js +15 -20
- package/lib/checkbox-field/use-fork-ref.js.map +1 -1
- package/lib/columns/columns.js +49 -22
- package/lib/columns/columns.js.map +1 -1
- package/lib/components/color-picker/color-picker.js +189 -45
- package/lib/components/color-picker/color-picker.js.map +1 -1
- package/lib/components/deprecated-button/deprecated-button.js +104 -9
- package/lib/components/deprecated-button/deprecated-button.js.map +1 -1
- package/lib/components/deprecated-dropdown/dropdown.js +235 -133
- package/lib/components/deprecated-dropdown/dropdown.js.map +1 -1
- package/lib/components/deprecated-input/input.js +28 -4
- package/lib/components/deprecated-input/input.js.map +1 -1
- package/lib/components/deprecated-select/select.js +112 -7
- package/lib/components/deprecated-select/select.js.map +1 -1
- package/lib/components/key-capturer/key-capturer.js +188 -135
- package/lib/components/key-capturer/key-capturer.js.map +1 -1
- package/lib/components/keyboard-shortcut/keyboard-shortcut.js +67 -45
- package/lib/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
- package/lib/components/progress-bar/progress-bar.js +60 -8
- package/lib/components/progress-bar/progress-bar.js.map +1 -1
- package/lib/components/time/time-utils.js +59 -53
- package/lib/components/time/time-utils.js.map +1 -1
- package/lib/components/time/time.js +93 -90
- package/lib/components/time/time.js.map +1 -1
- package/lib/divider/divider.js +47 -4
- package/lib/divider/divider.js.map +1 -1
- package/lib/heading/heading.js +125 -19
- package/lib/heading/heading.js.map +1 -1
- package/lib/hidden/hidden.js +39 -29
- package/lib/hidden/hidden.js.map +1 -1
- package/lib/hidden-visually/hidden-visually.js +11 -3
- package/lib/hidden-visually/hidden-visually.js.map +1 -1
- package/lib/icons/alert-icon.js +149 -18
- package/lib/icons/alert-icon.js.map +1 -1
- package/lib/icons/banner-icon.js +217 -25
- package/lib/icons/banner-icon.js.map +1 -1
- package/lib/icons/close-icon.js +29 -3
- package/lib/icons/close-icon.js.map +1 -1
- package/lib/icons/password-hidden-icon.js +43 -6
- package/lib/icons/password-hidden-icon.js.map +1 -1
- package/lib/icons/password-visible-icon.js +36 -5
- package/lib/icons/password-visible-icon.js.map +1 -1
- package/lib/inline/inline.js +27 -8
- package/lib/inline/inline.js.map +1 -1
- package/lib/loading/loading.js +67 -17
- package/lib/loading/loading.js.map +1 -1
- package/lib/menu/menu.js +471 -91
- package/lib/menu/menu.js.map +1 -1
- package/lib/modal/modal.js +671 -106
- package/lib/modal/modal.js.map +1 -1
- package/lib/notice/notice.js +75 -8
- package/lib/notice/notice.js.map +1 -1
- package/lib/password-field/password-field.js +92 -10
- package/lib/password-field/password-field.js.map +1 -1
- package/lib/prose/prose.js +51 -8
- package/lib/prose/prose.js.map +1 -1
- package/lib/select-field/select-field.js +152 -14
- package/lib/select-field/select-field.js.map +1 -1
- package/lib/spinner/spinner.js +39 -6
- package/lib/spinner/spinner.js.map +1 -1
- package/lib/stack/stack.js +29 -15
- package/lib/stack/stack.js.map +1 -1
- package/lib/switch-field/switch-field.js +225 -38
- package/lib/switch-field/switch-field.js.map +1 -1
- package/lib/tabs/tabs.js +207 -107
- package/lib/tabs/tabs.js.map +1 -1
- package/lib/text/text.js +30 -16
- package/lib/text/text.js.map +1 -1
- package/lib/text-area/text-area.js +264 -52
- package/lib/text-area/text-area.js.map +1 -1
- package/lib/text-field/text-field.js +207 -30
- package/lib/text-field/text-field.js.map +1 -1
- package/lib/text-link/text-link.js +24 -9
- package/lib/text-link/text-link.js.map +1 -1
- package/lib/toast/static-toast.js +142 -22
- package/lib/toast/static-toast.js.map +1 -1
- package/lib/toast/toast-animation.js +158 -108
- package/lib/toast/toast-animation.js.map +1 -1
- package/lib/toast/use-toasts.js +310 -82
- package/lib/toast/use-toasts.js.map +1 -1
- package/lib/tooltip/tooltip.js +87 -31
- package/lib/tooltip/tooltip.js.map +1 -1
- package/lib/utils/common-helpers.js +12 -11
- package/lib/utils/common-helpers.js.map +1 -1
- package/lib/utils/polymorphism.js +84 -1
- package/lib/utils/polymorphism.js.map +1 -1
- package/lib/utils/responsive-props.js +43 -32
- package/lib/utils/responsive-props.js.map +1 -1
- package/package.json +10 -2
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var reactCompilerRuntime = require('react-compiler-runtime');
|
|
5
6
|
var React = require('react');
|
|
6
7
|
var classNames = require('classnames');
|
|
7
8
|
var hiddenVisually = require('../../hidden-visually/hidden-visually.js');
|
|
@@ -30,14 +31,65 @@ function _interopNamespace(e) {
|
|
|
30
31
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
31
32
|
var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
|
32
33
|
|
|
33
|
-
function ProgressBar(
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
function ProgressBar(t0) {
|
|
35
|
+
const $ = reactCompilerRuntime.c(11);
|
|
36
|
+
const {
|
|
37
|
+
fillPercentage: t1,
|
|
38
|
+
className,
|
|
39
|
+
"aria-valuetext": ariaValuetext
|
|
40
|
+
} = t0;
|
|
41
|
+
const fillPercentage = t1 === undefined ? 0 : t1;
|
|
42
|
+
let t2;
|
|
43
|
+
if ($[0] !== className) {
|
|
44
|
+
t2 = classNames__default["default"](progressBar_module["default"].progressBar, className);
|
|
45
|
+
$[0] = className;
|
|
46
|
+
$[1] = t2;
|
|
47
|
+
} else {
|
|
48
|
+
t2 = $[1];
|
|
49
|
+
}
|
|
50
|
+
const finalClassName = t2;
|
|
51
|
+
const width = fillPercentage < 0 ? 0 : fillPercentage > 100 ? 100 : fillPercentage;
|
|
52
|
+
const t3 = `${width}%`;
|
|
53
|
+
let t4;
|
|
54
|
+
if ($[2] !== t3) {
|
|
55
|
+
t4 = /*#__PURE__*/React__namespace.createElement("div", {
|
|
56
|
+
className: progressBar_module["default"].inner,
|
|
57
|
+
style: {
|
|
58
|
+
width: t3
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
$[2] = t3;
|
|
62
|
+
$[3] = t4;
|
|
63
|
+
} else {
|
|
64
|
+
t4 = $[3];
|
|
65
|
+
}
|
|
66
|
+
const t5 = ariaValuetext ?? undefined;
|
|
67
|
+
let t6;
|
|
68
|
+
if ($[4] !== t5 || $[5] !== width) {
|
|
69
|
+
t6 = /*#__PURE__*/React__namespace.createElement(hiddenVisually.HiddenVisually, null, /*#__PURE__*/React__namespace.createElement("progress", {
|
|
70
|
+
value: width,
|
|
71
|
+
max: 100,
|
|
72
|
+
"aria-valuetext": t5
|
|
73
|
+
}));
|
|
74
|
+
$[4] = t5;
|
|
75
|
+
$[5] = width;
|
|
76
|
+
$[6] = t6;
|
|
77
|
+
} else {
|
|
78
|
+
t6 = $[6];
|
|
79
|
+
}
|
|
80
|
+
let t7;
|
|
81
|
+
if ($[7] !== finalClassName || $[8] !== t4 || $[9] !== t6) {
|
|
82
|
+
t7 = /*#__PURE__*/React__namespace.createElement("div", {
|
|
83
|
+
className: finalClassName
|
|
84
|
+
}, t4, t6);
|
|
85
|
+
$[7] = finalClassName;
|
|
86
|
+
$[8] = t4;
|
|
87
|
+
$[9] = t6;
|
|
88
|
+
$[10] = t7;
|
|
89
|
+
} else {
|
|
90
|
+
t7 = $[10];
|
|
91
|
+
}
|
|
92
|
+
return t7;
|
|
41
93
|
}
|
|
42
94
|
ProgressBar.displayName = 'ProgressBar';
|
|
43
95
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-bar.js","sources":["../../../src/components/progress-bar/progress-bar.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"progress-bar.js","sources":["../../../src/components/progress-bar/progress-bar.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport classNames from 'classnames'\n\nimport { HiddenVisually } from '../../hidden-visually'\n\nimport styles from './progress-bar.module.css'\n\ntype Props = {\n /** Additional css class applied to the progress bar. */\n className?: string\n /** How much of the progress bar should be filled. Number between 0 and 100 inclusive. */\n fillPercentage?: number\n /** Defines the human readable text alternative for assitive technologies. */\n 'aria-valuetext'?: string\n}\nfunction ProgressBar({ fillPercentage = 0, className, 'aria-valuetext': ariaValuetext }: Props) {\n const finalClassName = classNames(styles.progressBar, className)\n const width = fillPercentage < 0 ? 0 : fillPercentage > 100 ? 100 : fillPercentage\n return (\n <div className={finalClassName}>\n <div className={styles.inner} style={{ width: `${width}%` }} />\n <HiddenVisually>\n <progress value={width} max={100} aria-valuetext={ariaValuetext ?? undefined} />\n </HiddenVisually>\n </div>\n )\n}\nProgressBar.displayName = 'ProgressBar'\n\nexport { ProgressBar }\n"],"names":["ProgressBar","t0","$","_c","fillPercentage","t1","className","ariaValuetext","undefined","t2","classNames","styles","progressBar","finalClassName","width","t3","t4","React","createElement","inner","style","t5","t6","HiddenVisually","max","t7","displayName"],"mappings":"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"}
|
|
@@ -11,59 +11,65 @@ var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs);
|
|
|
11
11
|
var LocalizedFormat__default = /*#__PURE__*/_interopDefaultLegacy(LocalizedFormat);
|
|
12
12
|
|
|
13
13
|
dayjs__default["default"].extend(LocalizedFormat__default["default"]);
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
14
|
+
const TimeUtils = {
|
|
15
|
+
SHORT_FORMAT_CURRENT_YEAR: 'L',
|
|
16
|
+
SHORT_FORMAT_PAST_YEAR: 'LL',
|
|
17
|
+
LONG_FORMAT: 'LL, LT',
|
|
18
|
+
timeAgo(timestamp, config = {}) {
|
|
19
|
+
const {
|
|
20
|
+
locale = 'en',
|
|
21
|
+
shortFormatCurrentYear = this.SHORT_FORMAT_CURRENT_YEAR,
|
|
22
|
+
shortFormatPastYear = this.SHORT_FORMAT_PAST_YEAR,
|
|
23
|
+
daysSuffix = 'd',
|
|
24
|
+
hoursSuffix = 'h',
|
|
25
|
+
minutesSuffix = 'm',
|
|
26
|
+
momentsAgo = 'moments ago'
|
|
27
|
+
} = config;
|
|
28
|
+
const now = dayjs__default["default"]();
|
|
29
|
+
const date = dayjs__default["default"](timestamp * 1000);
|
|
30
|
+
date.locale(locale);
|
|
31
|
+
const diffMinutes = now.diff(date, 'minute');
|
|
32
|
+
const diffHours = now.diff(date, 'hour');
|
|
33
|
+
const diffDays = now.diff(date, 'day');
|
|
34
|
+
if (diffDays > 1) {
|
|
35
|
+
if (date.isSame(now, 'year')) {
|
|
36
|
+
return date.format(shortFormatCurrentYear);
|
|
37
|
+
} else {
|
|
38
|
+
return date.format(shortFormatPastYear);
|
|
39
|
+
}
|
|
40
|
+
} else if (diffDays === 1) {
|
|
41
|
+
return `${diffDays}${daysSuffix}`;
|
|
42
|
+
} else if (diffHours > 0 && diffHours <= 23) {
|
|
43
|
+
return `${diffHours}${hoursSuffix}`;
|
|
44
|
+
} else if (diffMinutes > 0 && diffMinutes <= 59) {
|
|
45
|
+
return `${diffMinutes}${minutesSuffix}`;
|
|
46
|
+
} else {
|
|
47
|
+
return momentsAgo;
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
formatTime(timestamp, config = {}) {
|
|
51
|
+
const {
|
|
52
|
+
locale = 'en',
|
|
53
|
+
shortFormatCurrentYear = this.SHORT_FORMAT_CURRENT_YEAR,
|
|
54
|
+
shortFormatPastYear = this.SHORT_FORMAT_PAST_YEAR
|
|
55
|
+
} = config;
|
|
56
|
+
const date = dayjs__default["default"](timestamp * 1000);
|
|
57
|
+
date.locale(locale);
|
|
58
|
+
if (date.isSame(dayjs__default["default"](), 'year')) {
|
|
59
|
+
return date.format(shortFormatCurrentYear);
|
|
60
|
+
} else {
|
|
61
|
+
return date.format(shortFormatPastYear);
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
formatTimeLong(timestamp, config = {}) {
|
|
65
|
+
const {
|
|
66
|
+
locale = 'en',
|
|
67
|
+
longFormat = this.LONG_FORMAT
|
|
68
|
+
} = config;
|
|
69
|
+
const date = dayjs__default["default"](timestamp * 1000);
|
|
70
|
+
date.locale(locale);
|
|
71
|
+
return date.format(longFormat);
|
|
72
|
+
}
|
|
67
73
|
};
|
|
68
74
|
|
|
69
75
|
exports.TimeUtils = TimeUtils;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-utils.js","sources":["../../../src/components/time/time-utils.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"time-utils.js","sources":["../../../src/components/time/time-utils.ts"],"sourcesContent":["import dayjs from 'dayjs'\n/**\n * There's a problem with our setup where the default export from\n * localizedFormat (and likely every other dayjs plugin) isn't properly\n * recognized. The proposed workarounds (importing with `.js` ending, or adding\n * `allowSyntheticDefaultImports` to the tsconfig) either broke linting or type\n * checking. After spending some time on this it was decided that further\n * investigations are not worth it, the code works and the eslint ignore is fine.\n * ref: https://github.com/iamkun/dayjs/issues/593\n * ref: https://day.js.org/docs/en/installation/typescript\n */\n// eslint-disable-next-line import/default\nimport LocalizedFormat from 'dayjs/plugin/localizedFormat'\n\ndayjs.extend(LocalizedFormat)\n\ntype TimeConfig = {\n locale?: string\n longFormat?: string\n shortFormatCurrentYear?: string\n shortFormatPastYear?: string\n daysSuffix?: string\n hoursSuffix?: string\n minutesSuffix?: string\n momentsAgo?: string\n}\n\nconst TimeUtils = {\n SHORT_FORMAT_CURRENT_YEAR: 'L',\n SHORT_FORMAT_PAST_YEAR: 'LL',\n LONG_FORMAT: 'LL, LT',\n\n timeAgo(timestamp: number, config: TimeConfig = {}) {\n const {\n locale = 'en',\n shortFormatCurrentYear = this.SHORT_FORMAT_CURRENT_YEAR,\n shortFormatPastYear = this.SHORT_FORMAT_PAST_YEAR,\n daysSuffix = 'd',\n hoursSuffix = 'h',\n minutesSuffix = 'm',\n momentsAgo = 'moments ago',\n } = config\n const now = dayjs()\n const date = dayjs(timestamp * 1000)\n date.locale(locale)\n const diffMinutes = now.diff(date, 'minute')\n const diffHours = now.diff(date, 'hour')\n const diffDays = now.diff(date, 'day')\n\n if (diffDays > 1) {\n if (date.isSame(now, 'year')) {\n return date.format(shortFormatCurrentYear)\n } else {\n return date.format(shortFormatPastYear)\n }\n } else if (diffDays === 1) {\n return `${diffDays}${daysSuffix}`\n } else if (diffHours > 0 && diffHours <= 23) {\n return `${diffHours}${hoursSuffix}`\n } else if (diffMinutes > 0 && diffMinutes <= 59) {\n return `${diffMinutes}${minutesSuffix}`\n } else {\n return momentsAgo\n }\n },\n\n formatTime(timestamp: number, config: TimeConfig = {}) {\n const {\n locale = 'en',\n shortFormatCurrentYear = this.SHORT_FORMAT_CURRENT_YEAR,\n shortFormatPastYear = this.SHORT_FORMAT_PAST_YEAR,\n } = config\n const date = dayjs(timestamp * 1000)\n date.locale(locale)\n if (date.isSame(dayjs(), 'year')) {\n return date.format(shortFormatCurrentYear)\n } else {\n return date.format(shortFormatPastYear)\n }\n },\n\n formatTimeLong(timestamp: number, config: TimeConfig = {}) {\n const { locale = 'en', longFormat = this.LONG_FORMAT } = config\n const date = dayjs(timestamp * 1000)\n date.locale(locale)\n return date.format(longFormat)\n },\n}\n\nexport type { TimeConfig }\nexport { TimeUtils }\n"],"names":["dayjs","extend","LocalizedFormat","TimeUtils","SHORT_FORMAT_CURRENT_YEAR","SHORT_FORMAT_PAST_YEAR","LONG_FORMAT","timeAgo","timestamp","config","locale","shortFormatCurrentYear","shortFormatPastYear","daysSuffix","hoursSuffix","minutesSuffix","momentsAgo","now","date","diffMinutes","diff","diffHours","diffDays","isSame","format","formatTime","formatTimeLong","longFormat"],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var tslib = require('tslib');
|
|
6
5
|
var React = require('react');
|
|
7
6
|
var tooltip = require('../../tooltip/tooltip.js');
|
|
8
7
|
var timeUtils = require('./time-utils.js');
|
|
@@ -27,98 +26,102 @@ function _interopNamespace(e) {
|
|
|
27
26
|
|
|
28
27
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
29
28
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
mouseY: undefined,
|
|
40
|
-
};
|
|
41
|
-
return _this;
|
|
42
|
-
}
|
|
43
|
-
Time.prototype.componentDidMount = function () {
|
|
44
|
-
if (this.props.refresh) {
|
|
45
|
-
this._refresh();
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
Time.prototype.componentDidUpdate = function (prevProps) {
|
|
49
|
-
if (!prevProps.refresh && this.props.refresh) {
|
|
50
|
-
this._refresh();
|
|
51
|
-
}
|
|
52
|
-
if (prevProps.refresh && !this.props.refresh) {
|
|
53
|
-
if (this.refreshInterval) {
|
|
54
|
-
clearTimeout(this.refreshInterval);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
Time.prototype.componentWillUnmount = function () {
|
|
59
|
-
if (this.refreshInterval) {
|
|
60
|
-
clearTimeout(this.refreshInterval);
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
Time.prototype._setHovered = function (hovered, event) {
|
|
64
|
-
var _a = this.state, mouseX = _a.mouseX, mouseY = _a.mouseY;
|
|
65
|
-
var clientX = event.clientX, clientY = event.clientY;
|
|
66
|
-
if (clientX !== mouseX || clientY !== mouseY) {
|
|
67
|
-
// mouse has moved
|
|
68
|
-
this.setState(function () { return ({
|
|
69
|
-
hovered: hovered,
|
|
70
|
-
mouseX: clientX,
|
|
71
|
-
mouseY: clientY,
|
|
72
|
-
}); });
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
Time.prototype._renderTime = function (config) {
|
|
76
|
-
if (!this.props.time) {
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
if (this.state.hovered) {
|
|
80
|
-
if (this.props.expandFullyOnHover && !this.props.tooltipOnHover) {
|
|
81
|
-
return timeUtils.TimeUtils.formatTimeLong(this.props.time, config);
|
|
82
|
-
}
|
|
83
|
-
if (this.props.expandOnHover && !this.props.tooltipOnHover) {
|
|
84
|
-
return timeUtils.TimeUtils.formatTime(this.props.time, config);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return timeUtils.TimeUtils.timeAgo(this.props.time, config);
|
|
88
|
-
};
|
|
89
|
-
Time.prototype._refresh = function () {
|
|
90
|
-
var _this = this;
|
|
91
|
-
this.refreshInterval = setInterval(function () {
|
|
92
|
-
_this.forceUpdate();
|
|
93
|
-
}, DELAY);
|
|
94
|
-
};
|
|
95
|
-
Time.prototype.render = function () {
|
|
96
|
-
var _this = this;
|
|
97
|
-
var className = 'reactist_time';
|
|
98
|
-
if (this.props.className) {
|
|
99
|
-
className = this.props.className;
|
|
100
|
-
}
|
|
101
|
-
var timeComponent = this._renderTime(this.props.config);
|
|
102
|
-
return (React__namespace.createElement("time", { className: className, onMouseEnter: function (event) { return _this._setHovered(true, event); }, onMouseLeave: function (event) { return _this._setHovered(false, event); } }, this.props.tooltipOnHover ? (React__namespace.createElement(tooltip.Tooltip, { content: this.props.tooltip ||
|
|
103
|
-
(this.props.time &&
|
|
104
|
-
timeUtils.TimeUtils.formatTimeLong(this.props.time, this.props.config)) },
|
|
105
|
-
React__namespace.createElement("span", null, timeComponent))) : (timeComponent)));
|
|
29
|
+
const DELAY = 60000;
|
|
30
|
+
class Time extends React__namespace.Component {
|
|
31
|
+
constructor(props) {
|
|
32
|
+
super(props);
|
|
33
|
+
this.refreshInterval = undefined;
|
|
34
|
+
this.state = {
|
|
35
|
+
hovered: false,
|
|
36
|
+
mouseX: undefined,
|
|
37
|
+
mouseY: undefined
|
|
106
38
|
};
|
|
107
|
-
|
|
108
|
-
|
|
39
|
+
}
|
|
40
|
+
componentDidMount() {
|
|
41
|
+
if (this.props.refresh) {
|
|
42
|
+
this._refresh();
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
componentDidUpdate(prevProps) {
|
|
46
|
+
if (!prevProps.refresh && this.props.refresh) {
|
|
47
|
+
this._refresh();
|
|
48
|
+
}
|
|
49
|
+
if (prevProps.refresh && !this.props.refresh) {
|
|
50
|
+
if (this.refreshInterval) {
|
|
51
|
+
clearTimeout(this.refreshInterval);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
componentWillUnmount() {
|
|
56
|
+
if (this.refreshInterval) {
|
|
57
|
+
clearTimeout(this.refreshInterval);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
_setHovered(hovered, event) {
|
|
61
|
+
const {
|
|
62
|
+
mouseX,
|
|
63
|
+
mouseY
|
|
64
|
+
} = this.state;
|
|
65
|
+
const {
|
|
66
|
+
clientX,
|
|
67
|
+
clientY
|
|
68
|
+
} = event;
|
|
69
|
+
if (clientX !== mouseX || clientY !== mouseY) {
|
|
70
|
+
// mouse has moved
|
|
71
|
+
this.setState(() => ({
|
|
72
|
+
hovered,
|
|
73
|
+
mouseX: clientX,
|
|
74
|
+
mouseY: clientY
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
_renderTime(config) {
|
|
79
|
+
if (!this.props.time) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
if (this.state.hovered) {
|
|
83
|
+
if (this.props.expandFullyOnHover && !this.props.tooltipOnHover) {
|
|
84
|
+
return timeUtils.TimeUtils.formatTimeLong(this.props.time, config);
|
|
85
|
+
}
|
|
86
|
+
if (this.props.expandOnHover && !this.props.tooltipOnHover) {
|
|
87
|
+
return timeUtils.TimeUtils.formatTime(this.props.time, config);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return timeUtils.TimeUtils.timeAgo(this.props.time, config);
|
|
91
|
+
}
|
|
92
|
+
_refresh() {
|
|
93
|
+
this.refreshInterval = setInterval(() => {
|
|
94
|
+
this.forceUpdate();
|
|
95
|
+
}, DELAY);
|
|
96
|
+
}
|
|
97
|
+
render() {
|
|
98
|
+
let className = 'reactist_time';
|
|
99
|
+
if (this.props.className) {
|
|
100
|
+
className = this.props.className;
|
|
101
|
+
}
|
|
102
|
+
const timeComponent = this._renderTime(this.props.config);
|
|
103
|
+
return /*#__PURE__*/React__namespace.createElement("time", {
|
|
104
|
+
className: className,
|
|
105
|
+
onMouseEnter: event => this._setHovered(true, event),
|
|
106
|
+
onMouseLeave: event => this._setHovered(false, event)
|
|
107
|
+
}, this.props.tooltipOnHover ? /*#__PURE__*/React__namespace.createElement(tooltip.Tooltip, {
|
|
108
|
+
content: this.props.tooltip || this.props.time && timeUtils.TimeUtils.formatTimeLong(this.props.time, this.props.config)
|
|
109
|
+
}, /*#__PURE__*/React__namespace.createElement("span", null, timeComponent)) : timeComponent);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
109
112
|
Time.displayName = 'Time';
|
|
110
113
|
Time.defaultProps = {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
114
|
+
expandOnHover: false,
|
|
115
|
+
expandFullyOnHover: false,
|
|
116
|
+
tooltipOnHover: false,
|
|
117
|
+
refresh: true,
|
|
118
|
+
config: {
|
|
119
|
+
locale: 'en',
|
|
120
|
+
daysSuffix: 'd',
|
|
121
|
+
hoursSuffix: 'h',
|
|
122
|
+
minutesSuffix: 'm',
|
|
123
|
+
momentsAgo: 'moments ago'
|
|
124
|
+
}
|
|
122
125
|
};
|
|
123
126
|
|
|
124
127
|
exports.Time = Time;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time.js","sources":["../../../src/components/time/time.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"time.js","sources":["../../../src/components/time/time.tsx"],"sourcesContent":["import './time.less'\n\nimport * as React from 'react'\n\nimport { Tooltip } from '../../tooltip'\n\nimport { TimeUtils } from './time-utils'\n\nimport type { TimeConfig } from './time-utils'\n\nconst DELAY = 60000\n\ntype Props = {\n /** UNIX timestamp of the time to display. */\n time?: number\n /** Configuration for localization. */\n config?: TimeConfig\n /** Additional css class applied to the time element. */\n className?: string\n tooltipOnHover?: boolean\n /** Refresh the component every DELAY seconds. */\n refresh?: boolean\n /** If you don't want to use the default time format on the tooltip use this prop to supply a custom text */\n tooltip?: React.ReactNode\n /** When hovering over time it expands to short absolute version. */\n expandOnHover?: boolean\n /** When hovering over time it expands to the full absolute version. */\n expandFullyOnHover?: boolean\n}\n\ntype State = {\n hovered: boolean\n mouseX?: number\n mouseY?: number\n}\n\nclass Time extends React.Component<Props, State> {\n public static displayName: string\n public static defaultProps: Props\n\n constructor(props: Props) {\n super(props)\n this.refreshInterval = undefined\n\n this.state = {\n hovered: false,\n mouseX: undefined,\n mouseY: undefined,\n }\n }\n\n componentDidMount() {\n if (this.props.refresh) {\n this._refresh()\n }\n }\n\n componentDidUpdate(prevProps: Props) {\n if (!prevProps.refresh && this.props.refresh) {\n this._refresh()\n }\n\n if (prevProps.refresh && !this.props.refresh) {\n if (this.refreshInterval) {\n clearTimeout(this.refreshInterval)\n }\n }\n }\n\n componentWillUnmount() {\n if (this.refreshInterval) {\n clearTimeout(this.refreshInterval)\n }\n }\n\n refreshInterval?: ReturnType<typeof setTimeout>\n\n _setHovered(hovered: boolean, event: React.MouseEvent) {\n const { mouseX, mouseY } = this.state\n const { clientX, clientY } = event\n if (clientX !== mouseX || clientY !== mouseY) {\n // mouse has moved\n this.setState(() => ({\n hovered,\n mouseX: clientX,\n mouseY: clientY,\n }))\n }\n }\n\n _renderTime(config: Props['config']) {\n if (!this.props.time) {\n return\n }\n if (this.state.hovered) {\n if (this.props.expandFullyOnHover && !this.props.tooltipOnHover) {\n return TimeUtils.formatTimeLong(this.props.time, config)\n }\n if (this.props.expandOnHover && !this.props.tooltipOnHover) {\n return TimeUtils.formatTime(this.props.time, config)\n }\n }\n return TimeUtils.timeAgo(this.props.time, config)\n }\n\n _refresh() {\n this.refreshInterval = setInterval(() => {\n this.forceUpdate()\n }, DELAY)\n }\n\n render() {\n let className = 'reactist_time'\n if (this.props.className) {\n className = this.props.className\n }\n\n const timeComponent = this._renderTime(this.props.config)\n\n return (\n <time\n className={className}\n onMouseEnter={(event) => this._setHovered(true, event)}\n onMouseLeave={(event) => this._setHovered(false, event)}\n >\n {this.props.tooltipOnHover ? (\n <Tooltip\n content={\n this.props.tooltip ||\n (this.props.time &&\n TimeUtils.formatTimeLong(this.props.time, this.props.config))\n }\n >\n <span>{timeComponent}</span>\n </Tooltip>\n ) : (\n timeComponent\n )}\n </time>\n )\n }\n}\nTime.displayName = 'Time'\n\nTime.defaultProps = {\n expandOnHover: false,\n expandFullyOnHover: false,\n tooltipOnHover: false,\n refresh: true,\n config: {\n locale: 'en',\n daysSuffix: 'd',\n hoursSuffix: 'h',\n minutesSuffix: 'm',\n momentsAgo: 'moments ago',\n },\n}\n\nexport { Time }\n"],"names":["DELAY","Time","React","Component","constructor","props","refreshInterval","undefined","state","hovered","mouseX","mouseY","componentDidMount","refresh","_refresh","componentDidUpdate","prevProps","clearTimeout","componentWillUnmount","_setHovered","event","clientX","clientY","setState","_renderTime","config","time","expandFullyOnHover","tooltipOnHover","TimeUtils","formatTimeLong","expandOnHover","formatTime","timeAgo","setInterval","forceUpdate","render","className","timeComponent","createElement","onMouseEnter","onMouseLeave","Tooltip","content","tooltip","displayName","defaultProps","locale","daysSuffix","hoursSuffix","minutesSuffix","momentsAgo"],"mappings":"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"}
|
package/lib/divider/divider.js
CHANGED
|
@@ -2,12 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _extends = require('@babel/runtime/helpers/extends');
|
|
6
|
+
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
7
|
+
var reactCompilerRuntime = require('react-compiler-runtime');
|
|
6
8
|
var React = require('react');
|
|
7
9
|
var box = require('../box/box.js');
|
|
8
10
|
var responsiveProps = require('../utils/responsive-props.js');
|
|
9
11
|
var divider_module = require('./divider.module.css.js');
|
|
10
12
|
|
|
13
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
|
+
|
|
11
15
|
function _interopNamespace(e) {
|
|
12
16
|
if (e && e.__esModule) return e;
|
|
13
17
|
var n = Object.create(null);
|
|
@@ -26,11 +30,50 @@ function _interopNamespace(e) {
|
|
|
26
30
|
return Object.freeze(n);
|
|
27
31
|
}
|
|
28
32
|
|
|
33
|
+
var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
|
|
34
|
+
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
29
35
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
30
36
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
37
|
+
const _excluded = ["weight"];
|
|
38
|
+
function Divider(t0) {
|
|
39
|
+
const $ = reactCompilerRuntime.c(8);
|
|
40
|
+
let props;
|
|
41
|
+
let t1;
|
|
42
|
+
if ($[0] !== t0) {
|
|
43
|
+
var _t = t0;
|
|
44
|
+
({
|
|
45
|
+
weight: t1
|
|
46
|
+
} = _t);
|
|
47
|
+
props = _objectWithoutProperties__default["default"](_t, _excluded);
|
|
48
|
+
$[0] = t0;
|
|
49
|
+
$[1] = props;
|
|
50
|
+
$[2] = t1;
|
|
51
|
+
} else {
|
|
52
|
+
props = $[1];
|
|
53
|
+
t1 = $[2];
|
|
54
|
+
}
|
|
55
|
+
const weight = t1 === undefined ? "tertiary" : t1;
|
|
56
|
+
let t2;
|
|
57
|
+
if ($[3] !== weight) {
|
|
58
|
+
t2 = responsiveProps.getClassNames(divider_module["default"], "weight", weight);
|
|
59
|
+
$[3] = weight;
|
|
60
|
+
$[4] = t2;
|
|
61
|
+
} else {
|
|
62
|
+
t2 = $[4];
|
|
63
|
+
}
|
|
64
|
+
let t3;
|
|
65
|
+
if ($[5] !== props || $[6] !== t2) {
|
|
66
|
+
t3 = /*#__PURE__*/React__namespace.createElement(box.Box, _extends__default["default"]({
|
|
67
|
+
as: "hr",
|
|
68
|
+
className: t2
|
|
69
|
+
}, props));
|
|
70
|
+
$[5] = props;
|
|
71
|
+
$[6] = t2;
|
|
72
|
+
$[7] = t3;
|
|
73
|
+
} else {
|
|
74
|
+
t3 = $[7];
|
|
75
|
+
}
|
|
76
|
+
return t3;
|
|
34
77
|
}
|
|
35
78
|
|
|
36
79
|
exports.Divider = Divider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"divider.js","sources":["../../src/divider/divider.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"divider.js","sources":["../../src/divider/divider.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Box } from '../box'\nimport { getClassNames } from '../utils/responsive-props'\n\nimport styles from './divider.module.css'\n\nimport type { DividerWeight } from '../utils/common-types'\n\ninterface DividerProps {\n weight?: Exclude<DividerWeight, 'none'>\n}\n\nfunction Divider({ weight = 'tertiary', ...props }: DividerProps) {\n return <Box as=\"hr\" className={getClassNames(styles, 'weight', weight)} {...props} />\n}\n\nexport type { DividerProps, DividerWeight }\nexport { Divider }\n"],"names":["Divider","t0","$","_c","props","t1","_t","weight","_objectWithoutProperties","_excluded","undefined","t2","getClassNames","styles","t3","React","createElement","Box","_extends","as","className"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,SAAAA,QAAAC,EAAA,EAAA;EAAA,MAAAC,CAAA,GAAAC,sBAAA,CAAA,CAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,KAAA,CAAA;AAAA,EAAA,IAAAC,EAAA,CAAA;EAAA,IAAAH,CAAA,QAAAD,EAAA,EAAA;IAAA,IAAAK,EAAA,GAAiBL,EAA+C,CAAA;AAAA,IAAA,CAAA;AAAAM,MAAAA,MAAA,EAAAF,EAAAA;AAAA,KAAA,GAAAC,EAAA,EAAA;AAAAF,IAAAA,KAAA,GAAAI,4CAAA,CAAAF,EAAA,EAAAG,SAAA,CAAA,CAAA;AAAAP,IAAAA,CAAA,MAAAD,EAAA,CAAA;AAAAC,IAAAA,CAAA,MAAAE,KAAA,CAAA;AAAAF,IAAAA,CAAA,MAAAG,EAAA,CAAA;AAAA,GAAA,MAAA;AAAAD,IAAAA,KAAA,GAAAF,CAAA,CAAA,CAAA,CAAA,CAAA;AAAAG,IAAAA,EAAA,GAAAH,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;EAA7C,MAAAK,MAAA,GAAAF,EAAmB,KAAnBK,SAAmB,GAAnB,UAAmB,GAAnBL,EAAmB,CAAA;AAAA,EAAA,IAAAM,EAAA,CAAA;EAAA,IAAAT,CAAA,QAAAK,MAAA,EAAA;IACHI,EAAA,GAAAC,6BAAa,CAACC,yBAAM,EAAE,QAAQ,EAAEN,MAAM,CAAC,CAAA;AAAAL,IAAAA,CAAA,MAAAK,MAAA,CAAA;AAAAL,IAAAA,CAAA,MAAAS,EAAA,CAAA;AAAA,GAAA,MAAA;AAAAA,IAAAA,EAAA,GAAAT,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAAA,IAAAY,EAAA,CAAA;AAAA,EAAA,IAAAZ,CAAA,CAAAE,CAAAA,CAAAA,KAAAA,KAAA,IAAAF,CAAA,QAAAS,EAAA,EAAA;AAA/DG,IAAAA,EAAA,gBAAAC,gBAAA,CAAAC,aAAA,CAACC,OAAG,EAAAC,4BAAA,CAAA;AAAIC,MAAAA,EAAI,EAAJ,IAAI;AAAYC,MAAAA,SAAuC,EAAvCT,EAAAA;KAA6CP,EAAAA,KAAK,CAAG,CAAC,CAAA;AAAAF,IAAAA,CAAA,MAAAE,KAAA,CAAA;AAAAF,IAAAA,CAAA,MAAAS,EAAA,CAAA;AAAAT,IAAAA,CAAA,MAAAY,EAAA,CAAA;AAAA,GAAA,MAAA;AAAAA,IAAAA,EAAA,GAAAZ,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAAA,OAA9EY,EAA8E,CAAA;AAAA;;;;"}
|