@jobber/components 6.26.0 → 6.26.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AnimatedPresence-es.js +4 -4
- package/dist/AnimatedSwitcher-es.js +4 -4
- package/dist/AtlantisThemeContext-es.js +6 -6
- package/dist/Autocomplete-es.js +27 -27
- package/dist/Avatar-es.js +4 -4
- package/dist/Banner-es.js +13 -13
- package/dist/BannerIcon-es.js +3 -3
- package/dist/Body-es.js +12 -12
- package/dist/Box-es.js +2 -2
- package/dist/Button-es.js +13 -13
- package/dist/ButtonDismiss-es.js +2 -2
- package/dist/Card-es.js +15 -15
- package/dist/Checkbox/index.mjs +24 -24
- package/dist/Chip-es.js +17 -17
- package/dist/ChipDismissible-es.js +7 -7
- package/dist/Chips/index.mjs +3 -3
- package/dist/Chips-es.js +13 -13
- package/dist/Combobox/components/ComboboxContent/index.cjs +0 -2
- package/dist/Combobox/components/ComboboxContent/index.mjs +0 -2
- package/dist/Combobox/hooks/useComboboxAccessibility.d.ts +3 -8
- package/dist/Combobox/index.cjs +1 -2
- package/dist/Combobox/index.mjs +1 -2
- package/dist/Combobox-es.js +6 -6
- package/dist/ComboboxAction-es.js +4 -4
- package/dist/ComboboxActivator-es.js +3 -3
- package/dist/ComboboxContent-cjs.js +3745 -39
- package/dist/ComboboxContent-es.js +3715 -27
- package/dist/ComboboxContentHeader-es.js +4 -4
- package/dist/ComboboxContentList-es.js +13 -13
- package/dist/ComboboxContentSearch-es.js +5 -5
- package/dist/ComboboxLoadMore-es.js +2 -2
- package/dist/ComboboxOption-es.js +6 -6
- package/dist/ComboboxProvider-es.js +3 -3
- package/dist/ComboboxTrigger-es.js +4 -4
- package/dist/ConfirmationModal-es.js +4 -4
- package/dist/Countdown-es.js +3 -3
- package/dist/DataDump-es.js +7 -7
- package/dist/DataList/components/DataListFilters/components/DataListSort/index.cjs +1 -2
- package/dist/DataList/components/DataListFilters/components/DataListSort/index.mjs +1 -2
- package/dist/DataList/components/DataListFilters/index.cjs +2 -2
- package/dist/DataList/components/DataListFilters/index.mjs +2 -2
- package/dist/DataList-es.js +21 -21
- package/dist/DataList.utils-es.js +7 -7
- package/dist/DataListAction-es.js +9 -9
- package/dist/DataListActions-es.js +6 -6
- package/dist/DataListActionsMenu-es.js +4 -4
- package/dist/DataListBulkActions-es.js +3 -3
- package/dist/DataListContext-es.js +6 -6
- package/dist/DataListEmptyState-es.js +3 -3
- package/dist/DataListFilters-es.js +3 -3
- package/dist/DataListHeader-es.js +12 -12
- package/dist/DataListHeaderTile-es.js +9 -9
- package/dist/DataListItem-es.js +10 -10
- package/dist/DataListItemActions-es.js +3 -3
- package/dist/DataListItemActionsOverflow-es.js +5 -5
- package/dist/DataListItemClickable-es.js +8 -8
- package/dist/DataListItems-es.js +3 -3
- package/dist/DataListLayout-es.js +2 -2
- package/dist/DataListLayoutActions-es.js +6 -6
- package/dist/DataListLoadMore-es.js +8 -8
- package/dist/DataListLoadingState-es.js +4 -4
- package/dist/DataListOverflowFade-es.js +6 -6
- package/dist/DataListSearch-es.js +6 -6
- package/dist/DataListSort-es.js +6 -6
- package/dist/DataListSortingOptions-es.js +3 -3
- package/dist/DataListStatusBar-es.js +2 -2
- package/dist/DataListStickyHeader-es.js +2 -2
- package/dist/DataListTags-es.js +7 -7
- package/dist/DataListTotalCount-es.js +6 -6
- package/dist/DataTable-es.js +45 -45
- package/dist/DatePicker-es.js +12 -12
- package/dist/DayOfMonthSelect-es.js +18 -18
- package/dist/DescriptionList-es.js +4 -4
- package/dist/Disclosure-es.js +10 -10
- package/dist/Divider-es.js +2 -2
- package/dist/DrawerGrid-es.js +11 -11
- package/dist/Emphasis-es.js +2 -2
- package/dist/FeatureSwitch-es.js +17 -17
- package/dist/Flex-es.js +2 -2
- package/dist/Form-es.js +3 -3
- package/dist/FormField-es.js +38 -38
- package/dist/FormatDate-es.js +2 -2
- package/dist/FormatEmail-es.js +2 -2
- package/dist/FormatFile-es.js +23 -23
- package/dist/FormatRelativeDateTime-es.js +6 -6
- package/dist/FormatTime-es.js +2 -2
- package/dist/Gallery-es.js +8 -8
- package/dist/Glimmer-es.js +11 -11
- package/dist/Grid-es.js +2 -2
- package/dist/GridCell-es.js +2 -2
- package/dist/Heading-es.js +2 -2
- package/dist/Icon-es.js +9 -9
- package/dist/InlineLabel-es.js +3 -3
- package/dist/InputAvatar-es.js +11 -11
- package/dist/InputDate/index.mjs +9 -9
- package/dist/InputEmail-es.js +2 -2
- package/dist/InputFile-es.js +20 -20
- package/dist/InputGroup-es.js +4 -4
- package/dist/InputNumber-es.js +2 -2
- package/dist/InputPassword-es.js +2 -2
- package/dist/InputPhoneNumber-es.js +6 -6
- package/dist/InputText/index.mjs +12 -12
- package/dist/InputTime-es.js +2 -2
- package/dist/InputValidation-es.js +5 -5
- package/dist/InternalChipDismissible-es.js +19 -19
- package/dist/LightBox-es.js +31 -31
- package/dist/Link-es.js +2 -2
- package/dist/List-es.js +29 -29
- package/dist/Markdown-es.js +15 -15
- package/dist/Menu-es.js +21 -21
- package/dist/Modal-es.js +18 -18
- package/dist/MultiSelect-es.js +9 -9
- package/dist/Option-es.js +3 -3
- package/dist/Page-es.js +23 -23
- package/dist/Popover-es.js +7 -7
- package/dist/ProgressBar-es.js +5 -5
- package/dist/RadioGroup-es.js +9 -9
- package/dist/RecurringSelect-es.js +19 -19
- package/dist/SegmentedControl-es.js +9 -9
- package/dist/SideDrawer-es.js +22 -22
- package/dist/Spinner-es.js +2 -2
- package/dist/StatusIndicator-es.js +2 -2
- package/dist/StatusLabel-es.js +5 -5
- package/dist/Switch-es.js +10 -10
- package/dist/Tabs-es.js +14 -14
- package/dist/Text-es.js +2 -2
- package/dist/Tooltip-es.js +9 -9
- package/dist/Typography-es.js +2 -2
- package/dist/showToast-es.js +11 -11
- package/dist/styles.css +0 -2
- package/dist/useChildComponent-es.js +2 -2
- package/dist/useFocusTrap-es.js +2 -2
- package/dist/useInView-es.js +2 -2
- package/dist/useIsMounted-es.js +2 -2
- package/dist/useOnKeyDown-es.js +2 -2
- package/dist/useRefocusOnActivator-es.js +2 -2
- package/dist/useResizeObserver-es.js +3 -3
- package/dist/useSafeLayoutEffect-es.js +2 -2
- package/dist/useScrollToActive-es.js +3 -3
- package/package.json +3 -2
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import { T as Typography } from './Typography-es.js';
|
|
3
3
|
|
|
4
4
|
var styles = {"descriptionList":"BkruJ2-bRWg-","termGroup":"tpCvfS7kyDQ-","spinning":"pkFPHChT5OI-"};
|
|
5
5
|
|
|
6
6
|
function DescriptionList({ data }) {
|
|
7
|
-
return (
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
return (React__default.createElement("dl", { className: styles.descriptionList }, data.map(([term, description], i) => (React__default.createElement("div", { key: `${term}-${i}`, className: styles.termGroup },
|
|
8
|
+
React__default.createElement(Typography, { element: "dt", textColor: "heading", size: "base" }, term),
|
|
9
|
+
React__default.createElement(Typography, { element: "dd", textColor: "text", size: "base" }, description))))));
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
export { DescriptionList as D };
|
package/dist/Disclosure-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default, { useState } from 'react';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
import { u as useResizeObserver } from './useResizeObserver-es.js';
|
|
4
4
|
import { I as Icon } from './Icon-es.js';
|
|
@@ -18,19 +18,19 @@ function Disclosure({ children, title, defaultOpen = false, onToggle, open, UNSA
|
|
|
18
18
|
const summaryWrapClassNames = classnames(styles.summaryWrap, { [styles.customSummaryWrap]: !isTitleString }, UNSAFE_className.summaryWrap);
|
|
19
19
|
const arrowIconWrapperClassNames = classnames(styles.arrowIconWrapper, UNSAFE_className.arrowIconWrapper);
|
|
20
20
|
const contentClassNames = classnames(styles.content, UNSAFE_className.content);
|
|
21
|
-
return (
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
21
|
+
return (React__default.createElement("details", { open: isOpen, className: containerClassNames, style: UNSAFE_style.container },
|
|
22
|
+
React__default.createElement("summary", { className: summaryClassNames, style: UNSAFE_style.summary, onClick: handleToggle },
|
|
23
|
+
React__default.createElement("div", { className: summaryWrapClassNames, style: UNSAFE_style.summaryWrap, ref: titleRef },
|
|
24
|
+
React__default.createElement(DisclosureTitle, { title: title, size: isBelowBreakpoint ? "base" : "large", isTitleString: isTitleString, UNSAFE_className: UNSAFE_className.title, UNSAFE_style: UNSAFE_style.title }),
|
|
25
|
+
React__default.createElement("span", { className: arrowIconWrapperClassNames, style: UNSAFE_style.arrowIconWrapper },
|
|
26
|
+
React__default.createElement(Icon, { name: "arrowDown", color: "interactive", UNSAFE_className: {
|
|
27
27
|
svg: (_a = UNSAFE_className.icon) === null || _a === void 0 ? void 0 : _a.svg,
|
|
28
28
|
path: (_b = UNSAFE_className.icon) === null || _b === void 0 ? void 0 : _b.path,
|
|
29
29
|
}, UNSAFE_style: {
|
|
30
30
|
svg: (_c = UNSAFE_style.icon) === null || _c === void 0 ? void 0 : _c.svg,
|
|
31
31
|
path: (_d = UNSAFE_style.icon) === null || _d === void 0 ? void 0 : _d.path,
|
|
32
32
|
} })))),
|
|
33
|
-
|
|
33
|
+
React__default.createElement("span", { className: contentClassNames, style: UNSAFE_style.content }, children)));
|
|
34
34
|
function handleToggle(event) {
|
|
35
35
|
event.preventDefault();
|
|
36
36
|
setInternalOpen(!isOpen);
|
|
@@ -39,8 +39,8 @@ function Disclosure({ children, title, defaultOpen = false, onToggle, open, UNSA
|
|
|
39
39
|
}
|
|
40
40
|
function DisclosureTitle({ title, size, isTitleString, UNSAFE_className, UNSAFE_style, }) {
|
|
41
41
|
if (!isTitleString)
|
|
42
|
-
return
|
|
43
|
-
return (
|
|
42
|
+
return React__default.createElement(React__default.Fragment, null, title);
|
|
43
|
+
return (React__default.createElement(Typography, { element: "h4", size: size, fontWeight: "bold", textColor: "heading", UNSAFE_className: UNSAFE_className, UNSAFE_style: UNSAFE_style }, title));
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
export { Disclosure as D };
|
package/dist/Divider-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
|
|
4
4
|
var styles = {"divider":"XLgPB38fKeE-","spinning":"JenuDN3dhh4-"};
|
|
@@ -9,7 +9,7 @@ var directions = {"horizontal":"evwHY54TitY-","vertical":"qT-G2Sn0Wm8-","spinnin
|
|
|
9
9
|
|
|
10
10
|
function Divider({ size = "base", direction = "horizontal", testID, }) {
|
|
11
11
|
const className = classnames(styles.divider, sizes[size], directions[direction]);
|
|
12
|
-
return (
|
|
12
|
+
return (React__default.createElement("div", { className: className, "data-testid": testID, role: "none presentation" }));
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
export { Divider as D };
|
package/dist/DrawerGrid-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
import { H as Heading } from './Heading-es.js';
|
|
4
4
|
import { B as ButtonDismiss } from './ButtonDismiss-es.js';
|
|
@@ -7,23 +7,23 @@ var styles$1 = {"container":"LNIwHwCs8gQ-","drawer":"iDSQR4mxUvM-","open":"y9lAh
|
|
|
7
7
|
|
|
8
8
|
function Drawer({ title, children, open = true, onRequestClose, id, }) {
|
|
9
9
|
const drawerClassNames = classnames(styles$1.container, open && styles$1.open);
|
|
10
|
-
return (
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
return (React__default.createElement("aside", { className: drawerClassNames, "data-testid": "drawer-container", "aria-label": title, "aria-hidden": !open, id: id },
|
|
11
|
+
React__default.createElement("div", { className: styles$1.drawer },
|
|
12
|
+
React__default.createElement(Header, { title: title, onRequestClose: onRequestClose }),
|
|
13
|
+
React__default.createElement("div", { className: styles$1.contentScroll },
|
|
14
|
+
React__default.createElement("div", { className: styles$1.content }, children)))));
|
|
15
15
|
}
|
|
16
16
|
function Header({ title, onRequestClose }) {
|
|
17
|
-
return (
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
return (React__default.createElement("div", { className: styles$1.header, "data-testid": "drawer-header" },
|
|
18
|
+
React__default.createElement("div", { className: styles$1.heading },
|
|
19
|
+
React__default.createElement(Heading, { level: 2 }, title)),
|
|
20
|
+
React__default.createElement(ButtonDismiss, { onClick: onRequestClose, ariaLabel: `Close ${title || "drawer"}` })));
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
var styles = {"drawerGrid":"_50Jq09W07gg-","spinning":"GqOdr2k9PX8-"};
|
|
24
24
|
|
|
25
25
|
function DrawerGrid({ children }) {
|
|
26
|
-
return
|
|
26
|
+
return React__default.createElement("div", { className: styles.drawerGrid }, children);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
export { Drawer as D, DrawerGrid as a };
|
package/dist/Emphasis-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import { T as Typography } from './Typography-es.js';
|
|
3
3
|
|
|
4
4
|
function Emphasis({ variation, children }) {
|
|
@@ -7,7 +7,7 @@ function Emphasis({ variation, children }) {
|
|
|
7
7
|
italic: { element: "em", emphasisType: "italic" },
|
|
8
8
|
highlight: { element: "strong", emphasisType: "highlight" },
|
|
9
9
|
};
|
|
10
|
-
return
|
|
10
|
+
return React__default.createElement(Typography, Object.assign({}, variationMap[variation]), children);
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
export { Emphasis as E };
|
package/dist/FeatureSwitch-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default, { useState, useEffect } from 'react';
|
|
2
2
|
import { AnimatePresence, motion } from 'framer-motion';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { H as Heading } from './Heading-es.js';
|
|
@@ -15,27 +15,27 @@ function FeatureSwitch({ children, description, disabled = false, enabled, exter
|
|
|
15
15
|
const [savedIndicator, setSavedIndicator] = useState(false);
|
|
16
16
|
const featureContentClassnames = classnames(styles.featureContent, styles.content, enabled && styles.enabled);
|
|
17
17
|
shouldShowSavedIndicator();
|
|
18
|
-
return (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
title &&
|
|
23
|
-
description && (
|
|
24
|
-
|
|
25
|
-
onSwitch && (
|
|
26
|
-
|
|
27
|
-
|
|
18
|
+
return (React__default.createElement(Content, null,
|
|
19
|
+
React__default.createElement("div", { className: styles.container },
|
|
20
|
+
React__default.createElement("div", { className: styles.content },
|
|
21
|
+
React__default.createElement(Content, null,
|
|
22
|
+
title && React__default.createElement(Heading, { level: 4 }, title),
|
|
23
|
+
description && (React__default.createElement(Text, null,
|
|
24
|
+
React__default.createElement(Markdown, { content: description, basicUsage: true, externalLink: externalLink }))))),
|
|
25
|
+
onSwitch && (React__default.createElement("div", { className: styles.action },
|
|
26
|
+
React__default.createElement(Switch, { value: enabled, onChange: onSwitch, ariaLabel: description, disabled: disabled }),
|
|
27
|
+
React__default.createElement(AnimatePresence, null, hasSaveIndicator && savedIndicator && (React__default.createElement(motion.div, { className: styles.savedIndicator, initial: { y: -4, opacity: 0 }, animate: { y: 0, opacity: 1 }, exit: { y: -4, opacity: 0 }, transition: {
|
|
28
28
|
delay: 0.2,
|
|
29
29
|
type: "spring",
|
|
30
30
|
damping: 20,
|
|
31
31
|
stiffness: 300,
|
|
32
32
|
}, onAnimationComplete: handleAnimationComplete },
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
(children || onEdit) && (
|
|
36
|
-
children && (
|
|
37
|
-
onEdit && (
|
|
38
|
-
|
|
33
|
+
React__default.createElement(Text, { variation: "success" },
|
|
34
|
+
React__default.createElement(Emphasis, { variation: "italic" }, "Saved")))))))),
|
|
35
|
+
(children || onEdit) && (React__default.createElement("div", { className: styles.container },
|
|
36
|
+
children && (React__default.createElement("div", { className: featureContentClassnames }, children)),
|
|
37
|
+
onEdit && (React__default.createElement("div", { className: styles.action },
|
|
38
|
+
React__default.createElement(Button, { label: "Edit", type: "tertiary", onClick: onEdit })))))));
|
|
39
39
|
function shouldShowSavedIndicator() {
|
|
40
40
|
// Check if the component is mounted
|
|
41
41
|
const [didMount, setDidMount] = useState(false);
|
package/dist/Flex-es.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
|
|
4
4
|
var styles = {"flexible":"pEdV7Oo29SE-","smallestGap":"ftl4BEGpmyA-","smallerGap":"ikaEWOhu3ZI-","smallGap":"V9xi4msiJlM-","baseGap":"Jzbdj1Ja38E-","largeGap":"cLrQOLCo-z8-","noneGap":"VZokN5bjMl0-","startAlign":"_9CW5WRJdMFo-","centerAlign":"zVzX2gVWEGw-","endAlign":"cnhrFSJxBCo-","spinning":"WKqP-JY0YEw-"};
|
|
5
5
|
|
|
6
6
|
function Flex({ align = "center", children, direction = "row", gap = "base", template, }) {
|
|
7
|
-
return (
|
|
7
|
+
return (React__default.createElement("div", { className: classnames(styles.flexible, {
|
|
8
8
|
[styles[`${gap}Gap`]]: Boolean(gap),
|
|
9
9
|
[styles[`${align}Align`]]: Boolean(align),
|
|
10
10
|
}), style: generateGridStylesFromTemplate(direction, template) }, children));
|
package/dist/Form-es.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as __awaiter } from './tslib.es6-es.js';
|
|
2
|
-
import
|
|
2
|
+
import React__default, { forwardRef, useEffect, useImperativeHandle } from 'react';
|
|
3
3
|
import { useForm, FormProvider } from 'react-hook-form';
|
|
4
4
|
|
|
5
5
|
const Form = forwardRef(function InternalForm({ onSubmit, children, onStateChange }, ref) {
|
|
@@ -31,8 +31,8 @@ const Form = forwardRef(function InternalForm({ onSubmit, children, onStateChang
|
|
|
31
31
|
const formProps = {
|
|
32
32
|
onSubmit: onSubmit && handleSubmit(submitHandler),
|
|
33
33
|
};
|
|
34
|
-
return (
|
|
35
|
-
|
|
34
|
+
return (React__default.createElement(FormProvider, Object.assign({}, methods),
|
|
35
|
+
React__default.createElement(Wrapper, Object.assign({}, formProps, { "data-testid": "atlantis-form" }), children)));
|
|
36
36
|
function submitHandler() {
|
|
37
37
|
onSubmit && onSubmit();
|
|
38
38
|
}
|
package/dist/FormField-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default, { useState, useEffect, useRef, useImperativeHandle, useId } from 'react';
|
|
2
2
|
import { AnimatePresence, motion } from 'framer-motion';
|
|
3
3
|
import { tokens } from '@jobber/design';
|
|
4
4
|
import classnames from 'classnames';
|
|
@@ -42,7 +42,7 @@ function AffixLabel({ label, variation = "prefix", labelRef, }) {
|
|
|
42
42
|
});
|
|
43
43
|
if (!label)
|
|
44
44
|
return null;
|
|
45
|
-
return (
|
|
45
|
+
return (React__default.createElement("div", { ref: labelRef, className: affixLabelClass }, label));
|
|
46
46
|
}
|
|
47
47
|
function AffixIcon({ icon, onClick, ariaLabel, variation = "prefix", size, }) {
|
|
48
48
|
const affixIconClass = classnames(styles$1.affixIcon, {
|
|
@@ -52,7 +52,7 @@ function AffixIcon({ icon, onClick, ariaLabel, variation = "prefix", size, }) {
|
|
|
52
52
|
const iconSize = size === "small" ? "small" : "base";
|
|
53
53
|
if (!icon)
|
|
54
54
|
return null;
|
|
55
|
-
return (
|
|
55
|
+
return (React__default.createElement("div", { className: affixIconClass }, onClick ? (React__default.createElement(Button
|
|
56
56
|
/**
|
|
57
57
|
* We can cast the ariaLabel here as a `Suffix`
|
|
58
58
|
* requires an ariaLabel if there is an action
|
|
@@ -62,14 +62,14 @@ function AffixIcon({ icon, onClick, ariaLabel, variation = "prefix", size, }) {
|
|
|
62
62
|
* We can cast the ariaLabel here as a `Suffix`
|
|
63
63
|
* requires an ariaLabel if there is an action
|
|
64
64
|
*/
|
|
65
|
-
ariaLabel: ariaLabel, icon: icon, onClick: onClick, variation: "subtle", type: "tertiary", size: iconSize })) : (
|
|
65
|
+
ariaLabel: ariaLabel, icon: icon, onClick: onClick, variation: "subtle", type: "tertiary", size: iconSize })) : (React__default.createElement(Icon, { name: icon, size: iconSize, color: "greyBlue" }))));
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
function FormFieldDescription({ id, description, visible = true, }) {
|
|
69
69
|
if (!visible)
|
|
70
70
|
return null;
|
|
71
|
-
return (
|
|
72
|
-
|
|
71
|
+
return (React__default.createElement("div", { id: id, className: styles$1.description },
|
|
72
|
+
React__default.createElement(Text, { size: "small", variation: "subdued" }, description)));
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
var styles = {"clearInput":"YmRTd-KeXv4-","spinning":"B25z9B8I3gs-"};
|
|
@@ -77,8 +77,8 @@ var styles = {"clearInput":"YmRTd-KeXv4-","spinning":"B25z9B8I3gs-"};
|
|
|
77
77
|
function ClearAction({ onClick, visible, }) {
|
|
78
78
|
if (!visible)
|
|
79
79
|
return null;
|
|
80
|
-
return (
|
|
81
|
-
|
|
80
|
+
return (React__default.createElement("button", { className: styles.clearInput, onClick: onClick, type: "button", "aria-label": "Clear input" },
|
|
81
|
+
React__default.createElement(Icon, { name: "remove", size: "small" })));
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
function useToolbar(props) {
|
|
@@ -199,61 +199,61 @@ function FormFieldWrapper({ align, description, descriptionIdentifier, placehold
|
|
|
199
199
|
toolbar,
|
|
200
200
|
toolbarVisibility,
|
|
201
201
|
});
|
|
202
|
-
return (
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
(showMiniLabel || !value) && (
|
|
202
|
+
return (React__default.createElement("div", { className: containerClasses },
|
|
203
|
+
React__default.createElement("div", { className: wrapperClasses, style: wrapperInlineStyle, "data-testid": "Form-Field-Wrapper", ref: wrapperRef },
|
|
204
|
+
React__default.createElement(FormFieldInputHorizontalWrapper, null,
|
|
205
|
+
React__default.createElement(AffixIcon, Object.assign({}, prefix, { size: size })),
|
|
206
|
+
React__default.createElement(FormFieldInputWrapperStyles, null,
|
|
207
|
+
(showMiniLabel || !value) && (React__default.createElement(FormFieldLabel, { htmlFor: identifier, style: (prefixRef === null || prefixRef === void 0 ? void 0 : prefixRef.current) || (suffixRef === null || suffixRef === void 0 ? void 0 : suffixRef.current)
|
|
208
208
|
? labelStyle
|
|
209
209
|
: undefined }, placeholder)),
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
210
|
+
React__default.createElement(AffixLabel, Object.assign({}, prefix, { labelRef: prefixRef })),
|
|
211
|
+
React__default.createElement(FormFieldWrapperMain, null, children),
|
|
212
|
+
React__default.createElement(AffixLabel, Object.assign({}, suffix, { labelRef: suffixRef, variation: "suffix" }))),
|
|
213
|
+
React__default.createElement(ClearAction, { onClick: onClear, visible: showClear }),
|
|
214
|
+
React__default.createElement(AffixIcon, Object.assign({}, suffix, { variation: "suffix", size: size }))),
|
|
215
|
+
React__default.createElement(FormFieldWrapperToolbar, { toolbarVisibility: toolbarVisibility, isToolbarVisible: isToolbarVisible, toolbarAnimationEnd: toolbarAnimationEnd, toolbarAnimationStart: toolbarAnimationStart, toolbar: toolbar })),
|
|
216
|
+
React__default.createElement(FormFieldDescription, { visible: !!description && !inline, id: descriptionIdentifier, description: description }),
|
|
217
|
+
React__default.createElement(InputValidation, { message: error, visible: !!error && !inline })));
|
|
218
218
|
}
|
|
219
219
|
/**
|
|
220
220
|
* @internal Reach out to UX Foundations if using this component since it is possible it might change
|
|
221
221
|
*/
|
|
222
222
|
function FormFieldInputHorizontalWrapper({ children, }) {
|
|
223
|
-
return
|
|
223
|
+
return React__default.createElement("div", { className: styles$1.horizontalWrapper }, children);
|
|
224
224
|
}
|
|
225
225
|
/**
|
|
226
226
|
* @internal Reach out to UX Foundations if using this component since it is possible it might change
|
|
227
227
|
*/
|
|
228
228
|
function FormFieldInputWrapperStyles({ children, }) {
|
|
229
|
-
return
|
|
229
|
+
return React__default.createElement("div", { className: styles$1.inputWrapper }, children);
|
|
230
230
|
}
|
|
231
231
|
/**
|
|
232
232
|
* @internal Reach out to UX Foundations if using this component since it is possible it might change
|
|
233
233
|
*/
|
|
234
234
|
function FormFieldWrapperMain({ children, tabIndex = -1, }) {
|
|
235
|
-
return (
|
|
235
|
+
return (React__default.createElement("div", { className: styles$1.childrenWrapper, tabIndex: tabIndex }, children));
|
|
236
236
|
}
|
|
237
237
|
function FormFieldLabel({ children, htmlFor, style, external = false, }) {
|
|
238
238
|
if (!children)
|
|
239
239
|
return null;
|
|
240
|
-
return (
|
|
240
|
+
return (React__default.createElement("label", { className: external ? styles$1.externalLabel : styles$1.label, htmlFor: htmlFor, style: style }, children));
|
|
241
241
|
}
|
|
242
242
|
/**
|
|
243
243
|
* @internal Reach out to UX Foundations if using this component since it is possible it might change
|
|
244
244
|
*/
|
|
245
245
|
function FormFieldWrapperToolbar({ toolbar, isToolbarVisible, toolbarAnimationEnd, toolbarAnimationStart, toolbarVisibility, }) {
|
|
246
|
-
return (
|
|
246
|
+
return (React__default.createElement(AnimatePresence, { initial: toolbarVisibility === "always" ? false : true }, isToolbarVisible && (React__default.createElement(motion.div, { key: "toolbar", initial: toolbarAnimationEnd, animate: toolbarAnimationStart, exit: toolbarAnimationEnd, transition: {
|
|
247
247
|
duration: tokens["timing-base"] / 1000,
|
|
248
248
|
ease: "easeInOut",
|
|
249
249
|
}, tabIndex: -1 },
|
|
250
|
-
|
|
250
|
+
React__default.createElement("div", { className: styles$1.toolbar, "data-testid": "ATL-InputText-Toolbar" }, toolbar)))));
|
|
251
251
|
}
|
|
252
252
|
|
|
253
253
|
function FormFieldPostFix({ variation, visible = true, }) {
|
|
254
254
|
if (!visible)
|
|
255
255
|
return null;
|
|
256
|
-
return (
|
|
256
|
+
return (React__default.createElement("span", { className: styles$1.postfix }, variation === "select" ? (React__default.createElement(Icon, { name: "arrowDown" })) : (React__default.createElement(Spinner, { size: "small" }))));
|
|
257
257
|
}
|
|
258
258
|
|
|
259
259
|
/**
|
|
@@ -392,7 +392,7 @@ function FormField(props) {
|
|
|
392
392
|
// https://github.com/facebook/react/issues/27103
|
|
393
393
|
const generatedId = useId();
|
|
394
394
|
const id = props.id || generatedId;
|
|
395
|
-
return
|
|
395
|
+
return React__default.createElement(FormFieldInternal, Object.assign({}, props, { id: id }));
|
|
396
396
|
}
|
|
397
397
|
function FormFieldInternal(props) {
|
|
398
398
|
const { actionsRef, autocomplete = true, children, defaultValue, description, disabled, id, inputRef, inline, keyboard, max, maxLength, min, name: nameProp, readonly, rows, loading, type = "text", validations, value, onChange, onEnter, onFocus, onBlur, onValidation, onKeyUp, clearable = "never", autofocus, } = props;
|
|
@@ -438,19 +438,19 @@ function FormFieldInternal(props) {
|
|
|
438
438
|
handleValidation,
|
|
439
439
|
handleKeyDown,
|
|
440
440
|
});
|
|
441
|
-
return (
|
|
441
|
+
return (React__default.createElement(FormFieldWrapper, Object.assign({}, props, { value: useControllerField.value, error: errorMessage, identifier: id, descriptionIdentifier: descriptionIdentifier, clearable: clearable, onClear: handleClear }), renderField()));
|
|
442
442
|
function renderField() {
|
|
443
443
|
switch (type) {
|
|
444
444
|
case "select":
|
|
445
|
-
return (
|
|
446
|
-
|
|
447
|
-
|
|
445
|
+
return (React__default.createElement(React__default.Fragment, null,
|
|
446
|
+
React__default.createElement("select", Object.assign({}, fieldProps), children),
|
|
447
|
+
React__default.createElement(FormFieldPostFix, { variation: "select" })));
|
|
448
448
|
case "textarea":
|
|
449
|
-
return
|
|
449
|
+
return React__default.createElement("textarea", Object.assign({}, textFieldProps, { rows: rows, ref: inputRefs }));
|
|
450
450
|
default:
|
|
451
|
-
return (
|
|
452
|
-
|
|
453
|
-
loading &&
|
|
451
|
+
return (React__default.createElement(React__default.Fragment, null,
|
|
452
|
+
React__default.createElement("input", Object.assign({}, textFieldProps, { autoComplete: setAutocomplete(autocomplete), type: type, maxLength: maxLength, max: max, min: min, ref: inputRefs, onKeyUp: onKeyUp })),
|
|
453
|
+
loading && React__default.createElement(FormFieldPostFix, { variation: "spinner" }),
|
|
454
454
|
children));
|
|
455
455
|
}
|
|
456
456
|
}
|
package/dist/FormatDate-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
|
|
3
3
|
function FormatDate({ date: inputDate, showYear = true, }) {
|
|
4
4
|
let dateObject;
|
|
@@ -8,7 +8,7 @@ function FormatDate({ date: inputDate, showYear = true, }) {
|
|
|
8
8
|
else {
|
|
9
9
|
dateObject = new Date(inputDate);
|
|
10
10
|
}
|
|
11
|
-
return
|
|
11
|
+
return React__default.createElement(React__default.Fragment, null, strFormatDate(dateObject, showYear));
|
|
12
12
|
}
|
|
13
13
|
function strFormatDate(date, showYear = true) {
|
|
14
14
|
let formatOptions = {
|
package/dist/FormatEmail-es.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
|
|
4
4
|
var styles = {"email":"ViFkIUcS6PM-","spinning":"nCTmCxv5074-"};
|
|
5
5
|
|
|
6
6
|
function FormatEmail({ email }) {
|
|
7
7
|
const className = classnames(styles.email);
|
|
8
|
-
return
|
|
8
|
+
return React__default.createElement("address", { className: className }, email);
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export { FormatEmail as F };
|
package/dist/FormatFile-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default, { useState, useEffect } from 'react';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
import getHumanReadableFileSize from 'filesize';
|
|
4
4
|
import { B as Button } from './Button-es.js';
|
|
@@ -14,9 +14,9 @@ var styles$2 = {"formatFile":"y9T1gWK9SHY-","expanded":"_6qcLC0nLki0-","compact"
|
|
|
14
14
|
function FormatFileDeleteButton({ size, onDelete }) {
|
|
15
15
|
const buttonSize = size === "base" ? "small" : "base";
|
|
16
16
|
const [deleteConfirmationOpen, setDeleteConfirmationOpen] = useState(false);
|
|
17
|
-
return (
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
return (React__default.createElement("div", { className: styles$2.deleteButton },
|
|
18
|
+
React__default.createElement(Button, { onClick: () => setDeleteConfirmationOpen(true), variation: "destructive", type: "tertiary", icon: "trash", ariaLabel: "Delete File", size: buttonSize }),
|
|
19
|
+
React__default.createElement(ConfirmationModal, { title: "Confirm Deletion", message: `Are you sure you want to delete this file?`, confirmLabel: "Delete", variation: "destructive", open: deleteConfirmationOpen, onConfirm: () => onDelete === null || onDelete === void 0 ? void 0 : onDelete(), onRequestClose: () => setDeleteConfirmationOpen(false) })));
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
var styles$1 = {"content":"GlvUe-y47J8-","hasName":"zxlhNVPlPfU-","large":"PLxm6a4dUeE-","fileName":"-HUnao9DHy4-","base":"HJGVBmS64DY-","spinning":"Svf9Lca4cus-"};
|
|
@@ -30,9 +30,9 @@ function InternalThumbnailImage({ file }) {
|
|
|
30
30
|
useEffect(() => {
|
|
31
31
|
src().then(url => setImageSource(url));
|
|
32
32
|
}, []);
|
|
33
|
-
return (
|
|
34
|
-
!imageLoaded &&
|
|
35
|
-
|
|
33
|
+
return (React__default.createElement(React__default.Fragment, null,
|
|
34
|
+
!imageLoaded && React__default.createElement(Glimmer, { size: "auto" }),
|
|
35
|
+
React__default.createElement("img", { src: imageSource, onError: file.onImageLoadError, onLoad: handleImageLoad, alt: name, "data-testid": "internalThumbnailImage", className: classnames(styles.image, { [styles.hidden]: !imageLoaded }) })));
|
|
36
36
|
function handleImageLoad() {
|
|
37
37
|
setImageLoaded(true);
|
|
38
38
|
}
|
|
@@ -82,14 +82,14 @@ function InternalThumbnail({ compact = false, size, file, }) {
|
|
|
82
82
|
const iconName = getIconNameFromType(type);
|
|
83
83
|
const hasName = Boolean(name) && compact;
|
|
84
84
|
if (type.startsWith("image/") && isSupportedImageType(file)) {
|
|
85
|
-
return
|
|
85
|
+
return React__default.createElement(InternalThumbnailImage, { file: file });
|
|
86
86
|
}
|
|
87
|
-
return (
|
|
87
|
+
return (React__default.createElement("div", { className: classnames(styles$1.content, styles$1[size], {
|
|
88
88
|
[styles$1.hasName]: hasName,
|
|
89
89
|
}) },
|
|
90
|
-
|
|
91
|
-
hasName && (
|
|
92
|
-
|
|
90
|
+
React__default.createElement(Icon, { name: iconName, color: "greyBlue", size: size }),
|
|
91
|
+
hasName && (React__default.createElement("div", { className: styles$1.fileName },
|
|
92
|
+
React__default.createElement(Typography, { element: "span", textColor: "text", numberOfLines: 1 }, name)))));
|
|
93
93
|
}
|
|
94
94
|
function getIconNameFromType(mimeType) {
|
|
95
95
|
if (mimeType.startsWith("image/"))
|
|
@@ -126,17 +126,17 @@ function FormatFile({ file, display = "expanded", displaySize = "base", onDelete
|
|
|
126
126
|
[styles$2.deleteable]: display === "compact",
|
|
127
127
|
});
|
|
128
128
|
const thumbnailContainerClassNames = classnames(styles$2.thumbnail, styles$2[displaySize]);
|
|
129
|
-
return (
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
!isComplete && (
|
|
134
|
-
|
|
135
|
-
display === "expanded" && (
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
isComplete && onDelete && (
|
|
139
|
-
|
|
129
|
+
return (React__default.createElement("div", { className: wrapperClassNames },
|
|
130
|
+
React__default.createElement(DetailsContainer, { type: "button", className: detailsClassNames, onClick: isComplete ? onClick : undefined, tabIndex: 0, "aria-busy": !isComplete },
|
|
131
|
+
React__default.createElement("div", { className: thumbnailContainerClassNames },
|
|
132
|
+
React__default.createElement(InternalThumbnail, { key: file.key, compact: display === "compact", file: file, size: displaySize }),
|
|
133
|
+
!isComplete && (React__default.createElement("div", { className: styles$2.progress },
|
|
134
|
+
React__default.createElement(ProgressBar, { size: "small", currentStep: file.progress * 100, totalSteps: 100 })))),
|
|
135
|
+
display === "expanded" && (React__default.createElement("div", { className: styles$2.contentBlock },
|
|
136
|
+
React__default.createElement(Text, { size: "base" }, file.name),
|
|
137
|
+
React__default.createElement(Text, { size: "small" }, fileSize)))),
|
|
138
|
+
isComplete && onDelete && (React__default.createElement("div", { className: styles$2.deleteButton },
|
|
139
|
+
React__default.createElement(FormatFileDeleteButton, { size: display === "expanded" ? "large" : displaySize, onDelete: onDelete })))));
|
|
140
140
|
}
|
|
141
141
|
function isHoverable({ display, isComplete, onClick, onDelete, }) {
|
|
142
142
|
if (display === "compact") {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
|
|
3
3
|
function FormatRelativeDateTime({ date: inputDate, }) {
|
|
4
4
|
let dateObject;
|
|
@@ -13,18 +13,18 @@ function FormatRelativeDateTime({ date: inputDate, }) {
|
|
|
13
13
|
const delta = now - date.getTime() / 1000; //seconds;
|
|
14
14
|
switch (relativeTimeRange(delta)) {
|
|
15
15
|
case "less than an hour":
|
|
16
|
-
return
|
|
16
|
+
return React__default.createElement(React__default.Fragment, null, showMinutes(Math.round(delta / 60)));
|
|
17
17
|
case "less then a day":
|
|
18
|
-
return (
|
|
18
|
+
return (React__default.createElement(React__default.Fragment, null, date.toLocaleTimeString(undefined, {
|
|
19
19
|
hour: "numeric",
|
|
20
20
|
minute: "numeric",
|
|
21
21
|
})));
|
|
22
22
|
case "less than a week":
|
|
23
|
-
return
|
|
23
|
+
return React__default.createElement(React__default.Fragment, null, strFormatDate(date, { weekday: "short" }));
|
|
24
24
|
case "less than a year":
|
|
25
|
-
return
|
|
25
|
+
return React__default.createElement(React__default.Fragment, null, strFormatDate(date, { month: "short", day: "numeric" }));
|
|
26
26
|
default:
|
|
27
|
-
return (
|
|
27
|
+
return (React__default.createElement(React__default.Fragment, null, strFormatDate(date, {
|
|
28
28
|
month: "short",
|
|
29
29
|
day: "numeric",
|
|
30
30
|
year: "numeric",
|
package/dist/FormatTime-es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
|
|
3
3
|
function FormatTime({ time: inputTime, use24HourClock, }) {
|
|
4
4
|
let dateObject;
|
|
@@ -8,7 +8,7 @@ function FormatTime({ time: inputTime, use24HourClock, }) {
|
|
|
8
8
|
else {
|
|
9
9
|
dateObject = new Date(inputTime);
|
|
10
10
|
}
|
|
11
|
-
return
|
|
11
|
+
return React__default.createElement(React__default.Fragment, null, dateToLocaleTimeString(dateObject, use24HourClock));
|
|
12
12
|
}
|
|
13
13
|
function dateToLocaleTimeString(date, use24HourClock) {
|
|
14
14
|
const language = (globalThis === null || globalThis === void 0 ? void 0 : globalThis.navigator) ? navigator.language : "en";
|
package/dist/Gallery-es.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as __awaiter } from './tslib.es6-es.js';
|
|
2
|
-
import
|
|
2
|
+
import React__default, { useState } from 'react';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { L as LightBox } from './LightBox-es.js';
|
|
5
5
|
import { F as FormatFile, i as isSafari } from './FormatFile-es.js';
|
|
@@ -10,7 +10,7 @@ var styles = {"gallery":"_6UhvrmKZdns-","galleryLarge":"f0hnJ8v-iHE-","showMoreB
|
|
|
10
10
|
function Gallery({ files, size = "base", max, onDelete }) {
|
|
11
11
|
const [images, setImages] = useState([]);
|
|
12
12
|
const [filesToImageIndex, setFilesToImageIndex] = useState([]);
|
|
13
|
-
|
|
13
|
+
React__default.useEffect(() => {
|
|
14
14
|
generateImagesArray(files).then(result => {
|
|
15
15
|
setImages(result.images);
|
|
16
16
|
setFilesToImageIndex(result.filesToImageIndex);
|
|
@@ -20,18 +20,18 @@ function Gallery({ files, size = "base", max, onDelete }) {
|
|
|
20
20
|
const [lightboxIndex, setLightboxIndex] = useState(0);
|
|
21
21
|
const [displayPastMax, setDisplayPastMax] = useState(max ? false : true);
|
|
22
22
|
const visibleFiles = displayPastMax ? files : files.slice(0, max);
|
|
23
|
-
return (
|
|
24
|
-
|
|
23
|
+
return (React__default.createElement(React__default.Fragment, null,
|
|
24
|
+
React__default.createElement("div", { className: size === "large" ? styles.galleryLarge : styles.gallery },
|
|
25
25
|
visibleFiles.map((file, index) => {
|
|
26
|
-
return (
|
|
26
|
+
return (React__default.createElement(FormatFile, { key: file.key, file: Object.assign(Object.assign({}, file), { src: () => Promise.resolve(file.thumbnailSrc || getFileSrc(file)) }), display: "compact", displaySize: size, onClick: () => {
|
|
27
27
|
handleThumbnailClicked(index);
|
|
28
28
|
}, onDelete: onDelete ? () => onDelete === null || onDelete === void 0 ? void 0 : onDelete(file) : undefined }));
|
|
29
29
|
}),
|
|
30
|
-
max && files.length > max && !displayPastMax && (
|
|
31
|
-
|
|
30
|
+
max && files.length > max && !displayPastMax && (React__default.createElement("div", { className: classnames(styles.showMoreButton, styles[`${size}ShowMoreButton`]) },
|
|
31
|
+
React__default.createElement(Button, { type: "tertiary", size: size, label: `+ ${files.length - max}`, fullWidth: true, onClick: () => {
|
|
32
32
|
setDisplayPastMax(true);
|
|
33
33
|
} })))),
|
|
34
|
-
|
|
34
|
+
React__default.createElement(LightBox, { open: lightboxOpen, images: images, imageIndex: lightboxIndex, onRequestClose: handleLightboxClose })));
|
|
35
35
|
function handleThumbnailClicked(index) {
|
|
36
36
|
return __awaiter(this, void 0, void 0, function* () {
|
|
37
37
|
if (files[index].type.startsWith("image/") &&
|