@jobber/components 4.75.0 → 4.76.1-job-85845.0
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/Autocomplete/index.js +2 -3
- package/dist/Card/index.js +2 -3
- package/dist/{Card-426a68a8.js → Card-84e80c94.js} +1 -1
- package/dist/Checkbox/index.js +1 -2
- package/dist/{Checkbox-1cdd5cf6.js → Checkbox-2915069b.js} +1 -2
- package/dist/Chips/index.js +3 -4
- package/dist/DataDump/index.js +2 -3
- package/dist/DataList/DataList.types.d.ts +8 -2
- package/dist/DataList/components/DataListHeaderTile/DataListHeaderTile.d.ts +2 -1
- package/dist/DataList/components/DataListHeaderTile/components/DataListSortingOptions.d.ts +12 -0
- package/dist/DataList/components/DataListHeaderTile/components/index.d.ts +1 -0
- package/dist/DataList/index.js +158 -90
- package/dist/DataTable/index.js +2 -3
- package/dist/FormField/index.js +1 -2
- package/dist/{FormField-b0e74d32.js → FormField-5d977ffd.js} +2 -3
- package/dist/InputAvatar/index.js +1 -2
- package/dist/InputDate/index.js +1 -2
- package/dist/InputEmail/index.js +1 -2
- package/dist/InputFile/InputFile.d.ts +1 -1
- package/dist/InputFile/index.js +1 -2
- package/dist/{InputFile-d080dec5.js → InputFile-b396510d.js} +1 -2
- package/dist/InputNumber/index.js +2 -3
- package/dist/{InputNumber-79da1cdc.js → InputNumber-7c6d8aa5.js} +1 -1
- package/dist/InputPassword/index.js +1 -2
- package/dist/InputPhoneNumber/index.js +1 -2
- package/dist/InputText/index.js +2 -3
- package/dist/{InputText-9e61365c.js → InputText-ed025475.js} +1 -1
- package/dist/InputTime/index.js +1 -2
- package/dist/Menu/Menu.d.ts +4 -4
- package/dist/Menu/index.js +1 -2
- package/dist/{Menu-81b12936.js → Menu-3e137b7d.js} +2 -3
- package/dist/MultiSelect/index.js +1 -2
- package/dist/{Option-b715f6b4.js → Option-2234938d.js} +1 -1
- package/dist/Page/index.js +1 -2
- package/dist/RadioGroup/index.js +1 -2
- package/dist/{RadioGroup-ca7a5978.js → RadioGroup-17b67ade.js} +2 -3
- package/dist/RecurringSelect/components/DayOfMonthSelect.d.ts +2 -2
- package/dist/RecurringSelect/components/WeeklySelect.d.ts +2 -2
- package/dist/RecurringSelect/index.js +6 -7
- package/dist/Select/index.js +2 -3
- package/package.json +3 -3
|
@@ -13,12 +13,11 @@ var useOnKeyDown = require('@jobber/hooks/useOnKeyDown');
|
|
|
13
13
|
var Text = require('../Text-259af966.js');
|
|
14
14
|
var Icon = require('../Icon-405a216c.js');
|
|
15
15
|
var Heading = require('../Heading-1e8e4bd3.js');
|
|
16
|
-
var InputText = require('../InputText-
|
|
16
|
+
var InputText = require('../InputText-ed025475.js');
|
|
17
17
|
require('../Typography-c45bf216.js');
|
|
18
18
|
require('@jobber/design');
|
|
19
19
|
require('../getAtlantisConfig-0f3e8af2.js');
|
|
20
|
-
require('../FormField-
|
|
21
|
-
require('uuid');
|
|
20
|
+
require('../FormField-5d977ffd.js');
|
|
22
21
|
require('react-hook-form');
|
|
23
22
|
require('@jobber/hooks/useShowClear');
|
|
24
23
|
require('../Button-b73a5e01.js');
|
package/dist/Card/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var Card = require('../Card-
|
|
5
|
+
var Card = require('../Card-84e80c94.js');
|
|
6
6
|
require('react');
|
|
7
7
|
require('classnames');
|
|
8
8
|
require('../style-inject.es-9d2f5f4e.js');
|
|
@@ -13,8 +13,7 @@ require('../Button-b73a5e01.js');
|
|
|
13
13
|
require('react-router-dom');
|
|
14
14
|
require('../Icon-405a216c.js');
|
|
15
15
|
require('@jobber/design');
|
|
16
|
-
require('../Menu-
|
|
17
|
-
require('uuid');
|
|
16
|
+
require('../Menu-3e137b7d.js');
|
|
18
17
|
require('framer-motion');
|
|
19
18
|
require('@jobber/hooks/useOnKeyDown');
|
|
20
19
|
require('@jobber/hooks/useRefocusOnActivator');
|
|
@@ -5,7 +5,7 @@ var classnames = require('classnames');
|
|
|
5
5
|
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
6
6
|
var Heading = require('./Heading-1e8e4bd3.js');
|
|
7
7
|
var Button = require('./Button-b73a5e01.js');
|
|
8
|
-
var Menu = require('./Menu-
|
|
8
|
+
var Menu = require('./Menu-3e137b7d.js');
|
|
9
9
|
|
|
10
10
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
11
11
|
|
package/dist/Checkbox/index.js
CHANGED
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var Checkbox = require('../Checkbox-
|
|
5
|
+
var Checkbox = require('../Checkbox-2915069b.js');
|
|
6
6
|
require('../tslib.es6-5b8768b7.js');
|
|
7
7
|
require('react');
|
|
8
|
-
require('uuid');
|
|
9
8
|
require('classnames');
|
|
10
9
|
require('react-hook-form');
|
|
11
10
|
require('../style-inject.es-9d2f5f4e.js');
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
var tslib_es6 = require('./tslib.es6-5b8768b7.js');
|
|
4
4
|
var React = require('react');
|
|
5
|
-
var uuid = require('uuid');
|
|
6
5
|
var classnames = require('classnames');
|
|
7
6
|
var reactHookForm = require('react-hook-form');
|
|
8
7
|
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
@@ -23,7 +22,7 @@ function Checkbox({ checked, defaultChecked, disabled, label, name, value, indet
|
|
|
23
22
|
? reactHookForm.useFormContext()
|
|
24
23
|
: // If there isn't a Form Context being provided, get a form for this field.
|
|
25
24
|
reactHookForm.useForm({ mode: "onTouched" });
|
|
26
|
-
const [identifier] = React.useState(
|
|
25
|
+
const [identifier] = React.useState(React.useId());
|
|
27
26
|
/**
|
|
28
27
|
* Generate a name if one is not supplied, this is the name
|
|
29
28
|
* that will be used for react-hook-form and not neccessarily
|
package/dist/Chips/index.js
CHANGED
|
@@ -10,15 +10,14 @@ var Icon = require('../Icon-405a216c.js');
|
|
|
10
10
|
var Avatar = require('../Avatar-76a799fa.js');
|
|
11
11
|
var Typography = require('../Typography-c45bf216.js');
|
|
12
12
|
var Tooltip = require('../Tooltip-27771182.js');
|
|
13
|
-
var uuid = require('uuid');
|
|
14
13
|
var sortBy = require('lodash/sortBy');
|
|
15
14
|
var useLiveAnnounce = require('@jobber/hooks/useLiveAnnounce');
|
|
16
15
|
var debounce = require('lodash/debounce');
|
|
16
|
+
require('@jobber/design');
|
|
17
17
|
var reactPopper = require('react-popper');
|
|
18
18
|
var Text = require('../Text-259af966.js');
|
|
19
19
|
var Button = require('../Button-b73a5e01.js');
|
|
20
20
|
var Spinner = require('../Spinner-9d8fc7ff.js');
|
|
21
|
-
require('@jobber/design');
|
|
22
21
|
require('color');
|
|
23
22
|
require('react-dom');
|
|
24
23
|
require('framer-motion');
|
|
@@ -129,7 +128,7 @@ function ChipDismissible({ label, disabled, invalid, prefix, onClick, onRequestR
|
|
|
129
128
|
return (React__default["default"].createElement(InternalChip, { label: label, disabled: disabled, invalid: invalid, prefix: prefix, onClick: onClick, suffix: React__default["default"].createElement(InternalChipButton, { icon: "remove", label: label, invalid: invalid, disabled: disabled, onClick: onRequestRemove }) }));
|
|
130
129
|
}
|
|
131
130
|
|
|
132
|
-
function InternalChipSingleSelect({ children, selected, name =
|
|
131
|
+
function InternalChipSingleSelect({ children, selected, name = React.useId(), onChange, onClick, }) {
|
|
133
132
|
return (React__default["default"].createElement("div", { className: styles$1.wrapper, "data-testid": "singleselect-chips" }, React__default["default"].Children.map(children, child => {
|
|
134
133
|
const isSelected = child.props.value === selected;
|
|
135
134
|
return (React__default["default"].createElement("label", null,
|
|
@@ -269,9 +268,9 @@ function useInternalChipDismissible({ children, selected, onChange, onClick, onC
|
|
|
269
268
|
availableChipOptions });
|
|
270
269
|
}
|
|
271
270
|
|
|
272
|
-
const menuId = uuid.v1();
|
|
273
271
|
// eslint-disable-next-line max-statements
|
|
274
272
|
function useInternalChipDismissibleInput({ options, isLoadingMore = false, onCustomOptionSelect, onOptionSelect, onSearch, }) {
|
|
273
|
+
const menuId = React.useId();
|
|
275
274
|
const [allOptions, setAllOptions] = React.useState([]);
|
|
276
275
|
const [searchValue, setSearchValue] = React.useState("");
|
|
277
276
|
const [menuOpen, setMenuOpen] = React.useState(false);
|
package/dist/DataDump/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
|
-
var Card = require('../Card-
|
|
6
|
+
var Card = require('../Card-84e80c94.js');
|
|
7
7
|
var Content = require('../Content-e3f7b6fc.js');
|
|
8
8
|
var Emphasis = require('../Emphasis-bda56d3b.js');
|
|
9
9
|
require('classnames');
|
|
@@ -15,8 +15,7 @@ require('../Button-b73a5e01.js');
|
|
|
15
15
|
require('react-router-dom');
|
|
16
16
|
require('../Icon-405a216c.js');
|
|
17
17
|
require('@jobber/design');
|
|
18
|
-
require('../Menu-
|
|
19
|
-
require('uuid');
|
|
18
|
+
require('../Menu-3e137b7d.js');
|
|
20
19
|
require('framer-motion');
|
|
21
20
|
require('@jobber/hooks/useOnKeyDown');
|
|
22
21
|
require('@jobber/hooks/useRefocusOnActivator');
|
|
@@ -31,8 +31,11 @@ export interface DataListObject {
|
|
|
31
31
|
export type DataListHeader<T extends DataListObject> = {
|
|
32
32
|
readonly [K in keyof T]?: string;
|
|
33
33
|
};
|
|
34
|
-
export interface DataListSorting {
|
|
34
|
+
export interface DataListSorting extends SortableOptions {
|
|
35
35
|
readonly key: string;
|
|
36
|
+
}
|
|
37
|
+
export interface SortableOptions {
|
|
38
|
+
readonly label: string;
|
|
36
39
|
readonly order: "asc" | "desc";
|
|
37
40
|
}
|
|
38
41
|
export interface DataListProps<T extends DataListObject> {
|
|
@@ -88,7 +91,10 @@ export interface DataListProps<T extends DataListObject> {
|
|
|
88
91
|
* `onSort`: The callback function when the user sorting a column.
|
|
89
92
|
*/
|
|
90
93
|
readonly sorting?: {
|
|
91
|
-
readonly sortable:
|
|
94
|
+
readonly sortable: {
|
|
95
|
+
key: string;
|
|
96
|
+
options?: SortableOptions[];
|
|
97
|
+
}[];
|
|
92
98
|
readonly state: DataListSorting | undefined;
|
|
93
99
|
readonly onSort: (sorting?: DataListSorting) => void;
|
|
94
100
|
};
|
|
@@ -3,6 +3,7 @@ import { DataListHeader, DataListObject } from "../../DataList.types";
|
|
|
3
3
|
interface DataListHeaderTileProps<T extends DataListObject> {
|
|
4
4
|
readonly headers: DataListHeader<T>;
|
|
5
5
|
readonly headerKey: string;
|
|
6
|
+
readonly visible: boolean;
|
|
6
7
|
}
|
|
7
|
-
export declare function DataListHeaderTile<T extends DataListObject>({ headers, headerKey, }: DataListHeaderTileProps<T>): JSX.Element;
|
|
8
|
+
export declare function DataListHeaderTile<T extends DataListObject>({ headers, headerKey, visible, }: DataListHeaderTileProps<T>): JSX.Element;
|
|
8
9
|
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { SortableOptions } from "../../../DataList.types";
|
|
3
|
+
interface DataListSortingOptionsProps {
|
|
4
|
+
readonly options: SortableOptions[];
|
|
5
|
+
readonly selectedOption: SortableOptions | null;
|
|
6
|
+
readonly onSelectChange: (selectedOption: SortableOptions) => void;
|
|
7
|
+
readonly onClose: () => void;
|
|
8
|
+
readonly optionsListRef: React.RefObject<HTMLUListElement>;
|
|
9
|
+
readonly dataListHeaderTileRef: React.RefObject<HTMLElement>;
|
|
10
|
+
}
|
|
11
|
+
export declare function DataListSortingOptions({ options, selectedOption, onSelectChange, onClose, optionsListRef, dataListHeaderTileRef, }: DataListSortingOptionsProps): JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./DataListSortingOptions";
|
package/dist/DataList/index.js
CHANGED
|
@@ -16,31 +16,30 @@ var Button = require('../Button-b73a5e01.js');
|
|
|
16
16
|
var useInView = require('@jobber/hooks/useInView');
|
|
17
17
|
var isEmpty = require('lodash/isEmpty');
|
|
18
18
|
var InlineLabel = require('../InlineLabel-a6557829.js');
|
|
19
|
-
var FormatDate = require('../FormatDate-70ea5b43.js');
|
|
20
|
-
var Heading = require('../Heading-1e8e4bd3.js');
|
|
21
19
|
var useFocusTrap = require('@jobber/hooks/useFocusTrap');
|
|
22
20
|
var useRefocusOnActivator = require('@jobber/hooks/useRefocusOnActivator');
|
|
23
21
|
var useOnKeyDown = require('@jobber/hooks/useOnKeyDown');
|
|
22
|
+
var Icon = require('../Icon-405a216c.js');
|
|
23
|
+
var FormatDate = require('../FormatDate-70ea5b43.js');
|
|
24
|
+
var Heading = require('../Heading-1e8e4bd3.js');
|
|
24
25
|
var ReactDOM = require('react-dom');
|
|
25
|
-
var Checkbox = require('../Checkbox-
|
|
26
|
+
var Checkbox = require('../Checkbox-2915069b.js');
|
|
26
27
|
var reactRouterDom = require('react-router-dom');
|
|
27
28
|
var AnimatedSwitcher = require('../AnimatedSwitcher-d1e1ddcf.js');
|
|
28
29
|
var Combobox = require('../Combobox-ac089920.js');
|
|
29
30
|
var Chip = require('../Chip-c91fd6c8.js');
|
|
30
|
-
var Icon = require('../Icon-405a216c.js');
|
|
31
31
|
var debounce = require('lodash/debounce');
|
|
32
|
-
var InputText = require('../InputText-
|
|
32
|
+
var InputText = require('../InputText-ed025475.js');
|
|
33
33
|
var Spinner = require('../Spinner-9d8fc7ff.js');
|
|
34
34
|
var Typography = require('../Typography-c45bf216.js');
|
|
35
35
|
require('../Content-e3f7b6fc.js');
|
|
36
36
|
require('react-popper');
|
|
37
37
|
require('../getAtlantisConfig-0f3e8af2.js');
|
|
38
|
-
require('uuid');
|
|
39
38
|
require('react-hook-form');
|
|
40
39
|
require('@jobber/hooks/useAssert');
|
|
41
40
|
require('../Avatar-76a799fa.js');
|
|
42
41
|
require('color');
|
|
43
|
-
require('../FormField-
|
|
42
|
+
require('../FormField-5d977ffd.js');
|
|
44
43
|
require('@jobber/hooks/useShowClear');
|
|
45
44
|
require('../InputValidation-a7a737f9.js');
|
|
46
45
|
|
|
@@ -52,13 +51,13 @@ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
|
52
51
|
var isEmpty__default = /*#__PURE__*/_interopDefaultLegacy(isEmpty);
|
|
53
52
|
var debounce__default = /*#__PURE__*/_interopDefaultLegacy(debounce);
|
|
54
53
|
|
|
55
|
-
var css_248z$
|
|
56
|
-
var styles$
|
|
57
|
-
styleInject_es.styleInject(css_248z$
|
|
54
|
+
var css_248z$g = ".TkdrExYnvcY-,\n.TkdrExYnvcY- * {\n box-sizing: border-box;\n}\n\n.TkdrExYnvcY- {\n --data-list--minimum-item-height: calc(var(--base-unit) * 3.5);\n\n display: -ms-flexbox;\n\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n position: relative;\n z-index: 0;\n z-index: var(--elevation-default);\n -ms-flex: 1;\n flex: 1;\n}\n\n/*\n * Header\n */\n\n.IcAlZHoB4LI- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n z-index: 1;\n z-index: var(--elevation-base);\n margin-bottom: calc(16px / 2);\n margin-bottom: var(--space-small);\n -ms-flex-align: center;\n align-items: center;\n}\n\n.TFO76ysivmg- {\n display: grid;\n padding: calc((16px / 2) + (16px / 4)) 0;\n padding: calc(calc(16px / 2) + calc(16px / 4)) 0;\n padding: calc(var(--space-small) + var(--space-smaller)) 0;\n gap: calc(16px / 2);\n grid-gap: calc(16px / 2);\n grid-gap: var(--space-small);\n gap: var(--space-small);\n grid-template-columns: auto fit-content(calc(16px * 14));\n grid-template-columns: auto fit-content(calc(var(--base-unit) * 14));\n}\n\n.jGHZZYZm1ZY- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: center;\n justify-content: center;\n min-height: calc(16px * 3);\n min-height: var(--space-largest);\n padding: calc(16px / 2);\n padding: var(--space-small);\n border-bottom: calc(16px / 8) solid rgb(217, 223, 225);\n border-bottom: var(--border-thick) solid var(--color-border);\n}\n\n.GiD7MjZJbcw- {\n --data-list--header-actions-gap: var(--space-small);\n display: -ms-flexbox;\n display: flex;\n gap: calc(16px / 2);\n gap: var(--data-list--header-actions-gap);\n}\n\n@media (max-width: 489px) {\n\n.GiD7MjZJbcw- {\n -ms-flex-pack: justify;\n justify-content: space-between;\n width: 100%;\n}\n }\n\n@media (--small-screens-and-below) {\n\n.GiD7MjZJbcw- {\n -ms-flex-pack: justify;\n justify-content: space-between;\n width: 100%;\n}\n }\n\n.jMSVGIAr5tk- > p {\n font-weight: 500;\n white-space: nowrap;\n}\n\n.jMSVGIAr5tk- {\n display: -ms-flexbox;\n display: flex;\n margin: calc((16px / 2) * -1) 0;\n margin: calc(calc(16px / 2) * -1) 0;\n margin: calc(var(--space-small) * -1) 0;\n -ms-flex-align: center;\n align-items: center;\n gap: var(--data-list--header-actions-gap);\n}\n\n/*\n * List Item\n */\n\n.ise8kHCfhCY- {\n position: relative;\n padding: calc(16px / 2);\n padding: var(--space-small);\n border-bottom: calc(16px / 16) solid rgb(217, 223, 225);\n border-bottom: var(--border-base) solid var(--color-border);\n transition: all 200ms;\n transition: all var(--timing-base);\n}\n\n.ise8kHCfhCY-,\n.Tq6e0BGwcSM- {\n display: grid;\n grid-template-columns: minmax(0px, auto);\n min-height: var(--data-list--minimum-item-height);\n -ms-flex-align: center;\n align-items: center;\n}\n\n.ise8kHCfhCY-.Pc0JGX6jCD4-,\n.ise8kHCfhCY-:hover,\n.ise8kHCfhCY-:focus-within {\n --data-list-item-active-color: var(--color-surface--hover);\n background-color: rgb(244, 246, 250);\n background-color: var(--data-list-item-active-color);\n}\n\n.Tq6e0BGwcSM- {\n margin: calc((16px / 2) * -1) 0;\n margin: calc(calc(16px / 2) * -1) 0;\n margin: calc(var(--space-small) * -1) 0;\n padding: calc(16px / 2) 0;\n padding: var(--space-small) 0;\n border: none;\n text-align: left;\n -webkit-text-decoration: none;\n text-decoration: none;\n background-color: transparent;\n cursor: pointer;\n}\n\n/**\n * Reset CSS properties on focus to ensure we only have the focus state on the\n * parent .listItem\n */\n\n.Tq6e0BGwcSM-:focus {\n outline: none;\n background-color: transparent;\n}\n\n/**\n * Enable a better hover and focus experience when :has() is supported.\n * This is a workaround for Firefox where the :has() selector is not supported.\n */\n\n@supports selector(*:has(*)) {\n .ise8kHCfhCY-:hover,\n .ise8kHCfhCY-:focus-within {\n background-color: transparent;\n }\n\n .ise8kHCfhCY-:has(.Tq6e0BGwcSM-:hover, .Tq6e0BGwcSM-:focus) {\n background-color: var(--data-list-item-active-color);\n }\n}\n\n/*\n * List Item Selection\n */\n\n.d-79rkMqufg- {\n display: grid;\n -ms-flex-align: start;\n align-items: flex-start;\n}\n\n@media (min-width: 768px) {\n\n.d-79rkMqufg- {\n -ms-flex-align: center;\n align-items: center;\n}\n }\n\n@media (--medium-screens-and-up) {\n\n.d-79rkMqufg- {\n -ms-flex-align: center;\n align-items: center;\n}\n }\n\n.d-79rkMqufg-,\n.jGHZZYZm1ZY- .d-79rkMqufg- {\n grid-template-columns: -webkit-max-content minmax(0px, auto);\n grid-template-columns: max-content minmax(0px, auto);\n -webkit-column-gap: calc(16px / 2);\n -webkit-column-gap: var(--space-small);\n -moz-column-gap: calc(16px / 2);\n -moz-column-gap: var(--space-small);\n column-gap: calc(16px / 2);\n column-gap: var(--space-small);\n}\n\n.jGHZZYZm1ZY- .d-79rkMqufg- {\n display: grid;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.qm-SSuWTXkI- {\n display: -ms-flexbox;\n display: flex;\n visibility: hidden;\n\n /* To compensate the Checkbox's label margin that we are using for screen-readers */\n margin-right: calc((16px * 1) * -1);\n margin-right: calc(calc(16px * 1) * -1);\n margin-right: calc(var(--space-base) * -1);\n}\n\n.qm-SSuWTXkI-.VA9RnQp6nbI- {\n visibility: visible;\n}\n\n.ise8kHCfhCY- .d-79rkMqufg- > :first-child {\n -ms-flex-order: 2;\n order: 2;\n}\n\n.ise8kHCfhCY- .d-79rkMqufg- > :last-child {\n -ms-flex-order: 1;\n order: 1;\n padding-top: calc(16px / 4);\n padding-top: var(--space-smaller);\n opacity: 1;\n transition: opacity 100ms ease-in-out;\n transition: opacity var(--transition-properties);\n --transition-properties: var(--timing-quick) ease-in-out;\n}\n\n@media (min-width: 768px) {\n\n.ise8kHCfhCY- .d-79rkMqufg- > :last-child {\n padding-top: 0;\n opacity: 0;\n}\n }\n\n@media (--medium-screens-and-up) {\n\n.ise8kHCfhCY- .d-79rkMqufg- > :last-child {\n padding-top: 0;\n opacity: 0;\n}\n }\n\n.ise8kHCfhCY-:hover .d-79rkMqufg- > :last-child,\n.ise8kHCfhCY-:focus-within .d-79rkMqufg- > :last-child,\n.ise8kHCfhCY- .d-79rkMqufg-._4L7iXXzLr5k- > :last-child {\n opacity: 1;\n}\n\n/*\n * Filters\n */\n\n.Kkp-IYmwq-s- {\n display: -ms-flexbox;\n display: flex;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(255, 255, 255, 0.6);\n background-color: var(--color-overlay--dimmed);\n -ms-flex-align: start;\n align-items: flex-start;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n.m-eCShL7TU4- {\n position: sticky;\n top: 50vh;\n}\n\n/* This hides the text from the UI but not from the screen readers */\n\n.esUiRgWabYw- {\n position: absolute;\n top: auto;\n left: -10000px;\n width: 1px;\n height: 1px;\n overflow: hidden;\n text-indent: -10000px;\n}\n";
|
|
55
|
+
var styles$g = {"wrapper":"TkdrExYnvcY-","titleContainer":"IcAlZHoB4LI-","headerFilters":"TFO76ysivmg-","headerTitles":"jGHZZYZm1ZY-","batchSelectContainer":"GiD7MjZJbcw-","headerBatchSelect":"jMSVGIAr5tk-","listItem":"ise8kHCfhCY-","listItemClickable":"Tq6e0BGwcSM-","active":"Pc0JGX6jCD4-","selectable":"d-79rkMqufg-","selectAllCheckbox":"qm-SSuWTXkI-","visible":"VA9RnQp6nbI-","selected":"_4L7iXXzLr5k-","filtering":"Kkp-IYmwq-s-","filteringSpinner":"m-eCShL7TU4-","srOnly":"esUiRgWabYw-"};
|
|
56
|
+
styleInject_es.styleInject(css_248z$g);
|
|
58
57
|
|
|
59
|
-
var css_248z$
|
|
60
|
-
var styles$
|
|
61
|
-
styleInject_es.styleInject(css_248z$
|
|
58
|
+
var css_248z$f = ".F56prQsXm3A- {\n min-width: 80px;\n margin-left: calc(16px / 2);\n margin-left: var(--space-small);\n}\n";
|
|
59
|
+
var styles$f = {"results":"F56prQsXm3A-"};
|
|
60
|
+
styleInject_es.styleInject(css_248z$f);
|
|
62
61
|
|
|
63
62
|
const DATALIST_TOTALCOUNT_TEST_ID = "ATL-DataList-TotalCount";
|
|
64
63
|
function DataListTotalCount({ totalCount, loading, }) {
|
|
@@ -74,7 +73,7 @@ function DataListTotalCount({ totalCount, loading, }) {
|
|
|
74
73
|
totalCount.toLocaleString(),
|
|
75
74
|
" results)"));
|
|
76
75
|
}
|
|
77
|
-
return (React__default["default"].createElement("div", { className: styles$
|
|
76
|
+
return (React__default["default"].createElement("div", { className: styles$f.results, "data-testid": DATALIST_TOTALCOUNT_TEST_ID }, output));
|
|
78
77
|
}
|
|
79
78
|
|
|
80
79
|
const defaultValues$1 = {
|
|
@@ -169,9 +168,9 @@ function useActiveLayout() {
|
|
|
169
168
|
return { layout, activeBreakpoint };
|
|
170
169
|
}
|
|
171
170
|
|
|
172
|
-
var css_248z$
|
|
173
|
-
var styles$
|
|
174
|
-
styleInject_es.styleInject(css_248z$
|
|
171
|
+
var css_248z$e = "._8cMzUF8XEwY- {\n position: relative;\n}\n\n._8cMzUF8XEwY-::after {\n content: \"\";\n display: block;\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100px;\n background-image: linear-gradient(\n to top,\n rgba(255, 255, 255, 1) 0%,\n rgba(255, 255, 255, 0) 100%\n );\n background-image: linear-gradient(\n to top,\n var(--color-surface) 0%,\n rgba(var(--color-white--rgb), 0) 100%\n );\n}\n\n.Rh--6fVpkm4- {\n padding: calc(16px * 1) calc(16px / 2);\n padding: var(--space-base) var(--space-small);\n}\n\n.NFaWWvmxtkw- {\n width: 100%;\n min-width: calc(16px * 3);\n min-width: var(--space-largest);\n}\n";
|
|
172
|
+
var styles$e = {"wrapper":"_8cMzUF8XEwY-","loadingItem":"Rh--6fVpkm4-","glimmer":"NFaWWvmxtkw-"};
|
|
173
|
+
styleInject_es.styleInject(css_248z$e);
|
|
175
174
|
|
|
176
175
|
const LOADING_STATE_LIMIT_ITEMS = 10;
|
|
177
176
|
const DATALIST_LOADINGSTATE_ROW_TEST_ID = "ATL-DataList-LoadingState-Row";
|
|
@@ -181,10 +180,10 @@ function DataListLoadingState() {
|
|
|
181
180
|
if (!layout)
|
|
182
181
|
return null;
|
|
183
182
|
const glimmerSize = activeBreakpoint === "xs" ? "small" : "large";
|
|
184
|
-
const glimmersFromHeader = Object.keys(headers).reduce((data, key) => (Object.assign(Object.assign({}, data), { [key]: (React__default["default"].createElement("div", { className: styles$
|
|
183
|
+
const glimmersFromHeader = Object.keys(headers).reduce((data, key) => (Object.assign(Object.assign({}, data), { [key]: (React__default["default"].createElement("div", { className: styles$e.glimmer },
|
|
185
184
|
React__default["default"].createElement(Glimmer.Glimmer, { size: glimmerSize }))) })), {});
|
|
186
185
|
const loadingData = new Array(LOADING_STATE_LIMIT_ITEMS).fill(glimmersFromHeader);
|
|
187
|
-
return (React__default["default"].createElement("div", { className: styles$
|
|
186
|
+
return (React__default["default"].createElement("div", { className: styles$e.wrapper }, loadingData.map((child, i) => (React__default["default"].createElement("div", { key: i, className: styles$e.loadingItem, "data-testid": DATALIST_LOADINGSTATE_ROW_TEST_ID }, layout(child))))));
|
|
188
187
|
}
|
|
189
188
|
|
|
190
189
|
const defaultValues = {
|
|
@@ -197,32 +196,32 @@ function useDataListLayoutContext() {
|
|
|
197
196
|
return React.useContext(DataListLayoutContext);
|
|
198
197
|
}
|
|
199
198
|
|
|
200
|
-
var css_248z$
|
|
201
|
-
var styles$
|
|
202
|
-
styleInject_es.styleInject(css_248z$
|
|
199
|
+
var css_248z$d = ".jHcHGQ-HDbk- {\n display: -ms-flexbox;\n display: flex;\n position: absolute;\n top: calc((16px / 2) * -1);\n top: calc(calc(16px / 2) * -1);\n top: calc(var(--space-small) * -1);\n right: 0;\n z-index: 6;\n z-index: var(--elevation-menu);\n box-shadow: 0px calc(16px / 16) calc(16px / 4) 0px\n rgba(0, 0, 0, 0.1),\n 0px calc(16px / 4) 12px 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-base);\n padding: calc(16px / 4);\n padding: var(--space-smaller);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc(16px / 2);\n border-radius: var(--radius-larger);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n gap: calc(16px / 4);\n gap: var(--space-smaller);\n}\n\n.jobber-retheme .jHcHGQ-HDbk- {\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n}\n";
|
|
200
|
+
var styles$d = {"menu":"jHcHGQ-HDbk-"};
|
|
201
|
+
styleInject_es.styleInject(css_248z$d);
|
|
203
202
|
|
|
204
203
|
const CONTAINER_TEST_ID = "ATL-DataListFilters-Container";
|
|
205
204
|
|
|
206
|
-
var css_248z$
|
|
207
|
-
var styles$
|
|
208
|
-
styleInject_es.styleInject(css_248z$
|
|
205
|
+
var css_248z$c = ".jbBRoxlZlNI- {\n --overflow-fade--offset: var(--space-smaller);\n --overflow-fade--negative-offset: calc(var(--overflow-fade--offset) * -1);\n\n -ms-flex-item-align: center;\n\n align-self: center;\n position: relative;\n min-width: 0;\n}\n\n.P6uJ-vHfKrM-,\n.MnN8qbS4hw4- {\n display: grid;\n grid-auto-flow: column;\n grid-auto-columns: -webkit-max-content;\n grid-auto-columns: max-content;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.P6uJ-vHfKrM- {\n gap: calc(16px / 2);\n gap: var(--space-small);\n}\n\n.MnN8qbS4hw4- {\n margin: var(--overflow-fade--negative-offset);\n padding: var(--overflow-fade--offset);\n overflow-x: auto;\n overflow-y: visible;\n}\n\n.b-5P7Z8eGO8- {\n visibility: hidden;\n}\n\n.xzaCS4slLpI-::before,\n.Jf227kC8Nu0-::after {\n content: \"\";\n position: absolute;\n top: 0;\n width: calc(16px * 1.5);\n width: var(--space-large);\n height: 100%;\n background-image: linear-gradient(\n to right,\n rgba(255, 255, 255, 1) 0%,\n rgba(255, 255, 255, 0) 100%\n );\n background-image: linear-gradient(\n var(--data-list-overflow-shadow-angle, to right),\n var(--color-surface) 0%,\n rgba(var(--color-white--rgb), 0) 100%\n );\n pointer-events: none;\n}\n\n.xzaCS4slLpI-::before {\n left: var(--overflow-fade--negative-offset);\n}\n\n.Jf227kC8Nu0-::after {\n --data-list-overflow-shadow-angle: to left;\n right: var(--overflow-fade--negative-offset);\n}\n";
|
|
206
|
+
var styles$c = {"fadeContainer":"jbBRoxlZlNI-","overflowItems":"P6uJ-vHfKrM-","overflowGrid":"MnN8qbS4hw4-","overflowTrigger":"b-5P7Z8eGO8-","overflowLeft":"xzaCS4slLpI-","overflowRight":"Jf227kC8Nu0-"};
|
|
207
|
+
styleInject_es.styleInject(css_248z$c);
|
|
209
208
|
|
|
210
209
|
function DataListOverflowFade({ children }) {
|
|
211
210
|
const [leftRef, isLeftVisible] = useInView.useInView();
|
|
212
211
|
const [rightRef, isRightVisible] = useInView.useInView();
|
|
213
|
-
return (React__default["default"].createElement("div", { "data-testid": CONTAINER_TEST_ID, className: classnames__default["default"](styles$
|
|
214
|
-
[styles$
|
|
215
|
-
[styles$
|
|
212
|
+
return (React__default["default"].createElement("div", { "data-testid": CONTAINER_TEST_ID, className: classnames__default["default"](styles$c.fadeContainer, {
|
|
213
|
+
[styles$c.overflowLeft]: !isLeftVisible,
|
|
214
|
+
[styles$c.overflowRight]: !isRightVisible,
|
|
216
215
|
}) },
|
|
217
|
-
React__default["default"].createElement("div", { className: styles$
|
|
218
|
-
React__default["default"].createElement("span", { ref: leftRef, className: styles$
|
|
219
|
-
React__default["default"].createElement("div", { className: styles$
|
|
220
|
-
React__default["default"].createElement("span", { ref: rightRef, className: styles$
|
|
216
|
+
React__default["default"].createElement("div", { className: styles$c.overflowGrid },
|
|
217
|
+
React__default["default"].createElement("span", { ref: leftRef, className: styles$c.overflowTrigger }),
|
|
218
|
+
React__default["default"].createElement("div", { className: styles$c.overflowItems }, children),
|
|
219
|
+
React__default["default"].createElement("span", { ref: rightRef, className: styles$c.overflowTrigger }))));
|
|
221
220
|
}
|
|
222
221
|
|
|
223
|
-
var css_248z$
|
|
224
|
-
var styles$
|
|
225
|
-
styleInject_es.styleInject(css_248z$
|
|
222
|
+
var css_248z$b = "._8MYxAQYdZzM- {\n position: relative;\n}\n\n.WRV-UmQmPzo- {\n --inline-label-height: calc(\n var(--typography--fontSize-small) * 1.5 + calc(var(--space-smaller) * 1.25) *\n 2\n );\n\n display: -ms-flexbox;\n\n display: flex;\n z-index: 0;\n z-index: var(--elevation-default);\n max-height: calc((\n ((16px * 1) * 0.75) * 1.5 + ((16px / 4) * 1.25) *\n 2\n ) * 2);\n max-height: calc(calc(\n calc(calc(16px * 1) * 0.75) * 1.5 + calc(calc(16px / 4) * 1.25) *\n 2\n ) * 2);\n max-height: calc(var(--inline-label-height) * 2);\n overflow: hidden;\n white-space: nowrap;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n gap: calc(16px / 4);\n gap: var(--space-smaller);\n}\n\n.ND-cN-mX5-c- {\n -webkit-mask-image: linear-gradient(\n to left,\n transparent,\n transparent calc(16px * 1.5),\n rgba(0, 0, 0, 1) calc(16px * 3),\n rgba(0, 0, 0, 1)\n );\n -webkit-mask-image: linear-gradient(\n to left,\n transparent,\n transparent var(--space-large),\n rgba(0, 0, 0, 1) var(--space-largest),\n rgba(0, 0, 0, 1)\n );\n mask-image: linear-gradient(\n to left,\n transparent,\n transparent calc(16px * 1.5),\n rgba(0, 0, 0, 1) calc(16px * 3),\n rgba(0, 0, 0, 1)\n );\n mask-image: linear-gradient(\n to left,\n transparent,\n transparent var(--space-large),\n rgba(0, 0, 0, 1) var(--space-largest),\n rgba(0, 0, 0, 1)\n );\n}\n\n.liQeWCMenD0- {\n display: -ms-flexbox;\n display: flex;\n position: absolute;\n top: 0;\n right: 0;\n height: 100%;\n -ms-flex-align: center;\n align-items: center;\n}\n";
|
|
223
|
+
var styles$b = {"tagWrapper":"_8MYxAQYdZzM-","tags":"WRV-UmQmPzo-","tagsMask":"ND-cN-mX5-c-","tagCount":"liQeWCMenD0-"};
|
|
224
|
+
styleInject_es.styleInject(css_248z$b);
|
|
226
225
|
|
|
227
226
|
function DataListTags({ items }) {
|
|
228
227
|
const ref = React.useRef(null);
|
|
@@ -244,12 +243,12 @@ function DataListTags({ items }) {
|
|
|
244
243
|
elements === null || elements === void 0 ? void 0 : elements.forEach(element => observer.unobserve(element));
|
|
245
244
|
};
|
|
246
245
|
}, [items]);
|
|
247
|
-
return (React__default["default"].createElement("div", { className: styles$
|
|
248
|
-
React__default["default"].createElement("div", { className: classnames__default["default"](styles$
|
|
249
|
-
[styles$
|
|
246
|
+
return (React__default["default"].createElement("div", { className: styles$b.tagWrapper, ref: ref },
|
|
247
|
+
React__default["default"].createElement("div", { className: classnames__default["default"](styles$b.tags, {
|
|
248
|
+
[styles$b.tagsMask]: shouldShowTagCount,
|
|
250
249
|
}) }, items.filter(Boolean).map((tag, index) => (React__default["default"].createElement("div", { key: tag, "data-tag-element": index },
|
|
251
250
|
React__default["default"].createElement(InlineLabel.InlineLabel, null, tag))))),
|
|
252
|
-
shouldShowTagCount && (React__default["default"].createElement("div", { className: styles$
|
|
251
|
+
shouldShowTagCount && (React__default["default"].createElement("div", { className: styles$b.tagCount },
|
|
253
252
|
React__default["default"].createElement(Text.Text, null,
|
|
254
253
|
"+",
|
|
255
254
|
visibleItems)))));
|
|
@@ -278,50 +277,109 @@ function buildIntersectionThreshold(items) {
|
|
|
278
277
|
return thresholds;
|
|
279
278
|
}
|
|
280
279
|
|
|
281
|
-
var css_248z$
|
|
282
|
-
var styles$
|
|
283
|
-
styleInject_es.styleInject(css_248z$
|
|
280
|
+
var css_248z$a = ".fLmJZJJqMcE- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n -ms-flex-align: center;\n align-items: center;\n padding: 0;\n border: none;\n background-color: transparent;\n}\n\n.fLmJZJJqMcE-:focus,\n.fLmJZJJqMcE-:focus-visible {\n outline: none;\n}\n\n.fLmJZJJqMcE-:focus-visible {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(147, 161, 169);\n box-shadow: var(--shadow-focus);\n}\n\n.UG8cHUT3Hds- {\n cursor: pointer;\n}\n";
|
|
281
|
+
var styles$a = {"headerLabel":"fLmJZJJqMcE-","sortable":"UG8cHUT3Hds-"};
|
|
282
|
+
styleInject_es.styleInject(css_248z$a);
|
|
284
283
|
|
|
285
|
-
var css_248z$
|
|
286
|
-
var styles$
|
|
287
|
-
styleInject_es.styleInject(css_248z$
|
|
284
|
+
var css_248z$9 = ".AN5egORYy-0- {\n width: calc(16px * 1.5);\n width: var(--space-large);\n height: calc(16px * 1.5);\n height: var(--space-large);\n margin-right: calc(16px / 2);\n margin-right: var(--space-small);\n}\n\n.AN5egORYy-0- path {\n fill: rgba(101, 120, 132, 1);\n fill: var(--color-interactive--subtle);\n transition: all 200ms ease;\n transition: all var(--timing-base) ease;\n}\n\n.AN5egORYy-0- path.F1uTDCK0Sb0- {\n fill: rgb(1, 41, 57);\n fill: var(--color-heading);\n}\n\n.AN5egORYy-0- path._6KYeQXWXLQ8- {\n fill: rgb(217, 223, 225);\n fill: var(--color-inactive--surface);\n}\n\n.AN5egORYy-0-:hover path {\n fill: rgba(101, 120, 132, 1);\n fill: var(--color-interactive--subtle);\n transition: all 200ms ease;\n transition: all var(--timing-base) ease;\n}\n";
|
|
285
|
+
var styles$9 = {"sortIcon":"AN5egORYy-0-","active":"F1uTDCK0Sb0-","inactive":"_6KYeQXWXLQ8-"};
|
|
286
|
+
styleInject_es.styleInject(css_248z$9);
|
|
288
287
|
|
|
289
288
|
const SORTING_ICON_TEST_ID = "ATL-DataList-Sorting-Icon";
|
|
290
289
|
function DataListSortingArrows({ order }) {
|
|
291
|
-
return (React__default["default"].createElement("div", { className: styles$
|
|
290
|
+
return (React__default["default"].createElement("div", { className: styles$9.sortIcon, "data-testid": SORTING_ICON_TEST_ID },
|
|
292
291
|
React__default["default"].createElement("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
|
|
293
292
|
React__default["default"].createElement("path", { className: getActiveClassName("asc"), d: "M16.2929 10.6661C15.9024 11.0566 15.2692 11.0566 14.8787 10.6661L12.2891 8.14263L9.70711 10.6661C9.31658 11.0566 8.68342 11.0566 8.29289 10.6661C7.90237 10.2756 7.90237 9.64239 8.29289 9.25186L11.5858 5.95897C11.9763 5.56845 12.6095 5.56845 13 5.95897L16.2929 9.25186C16.6834 9.64239 16.6834 10.2756 16.2929 10.6661Z" }),
|
|
294
293
|
React__default["default"].createElement("path", { className: getActiveClassName("desc"), d: "M8.29292 13.3339C8.68345 12.9434 9.31661 12.9434 9.70714 13.3339L12.2968 15.8573L14.8787 13.3339C15.2692 12.9434 15.9024 12.9434 16.2929 13.3339C16.6834 13.7244 16.6834 14.3576 16.2929 14.7481L13 18.041C12.6095 18.4315 11.9763 18.4315 11.5858 18.041L8.29292 14.7481C7.9024 14.3576 7.9024 13.7244 8.29292 13.3339Z" }))));
|
|
295
294
|
function getActiveClassName(targetOrder) {
|
|
296
|
-
return order === targetOrder ? styles$
|
|
295
|
+
return order === targetOrder ? styles$9.active : styles$9.inactive;
|
|
297
296
|
}
|
|
298
297
|
}
|
|
299
298
|
|
|
300
|
-
|
|
299
|
+
var css_248z$8 = ".thBUfVNaigs- {\n position: absolute;\n top: 100%;\n left: 0;\n max-width: var(--popover--width);\n box-shadow: 0px calc(16px / 16) calc(16px / 4) 0px\n rgba(0, 0, 0, 0.1),\n 0px calc(16px / 4) 12px 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-base);\n margin-top: calc(16px / 4);\n margin-top: var(--space-smaller);\n padding: calc(16px / 2);\n padding: var(--space-small);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc(16px / 2);\n border-radius: var(--radius-larger);\n background: rgba(255, 255, 255, 1);\n background: var(--color-surface);\n -ms-flex-align: start;\n align-items: flex-start;\n}\n\n.QaXuqbVjG04- {\n display: -ms-flexbox;\n display: flex;\n min-width: calc((16px * 3) * 3.5);\n min-width: calc(calc(16px * 3) * 3.5);\n min-width: calc(var(--space-largest) * 3.5);\n min-height: calc((calc(16px * 3) - calc(16px / 4)));\n min-height: calc((var(--space-largest) - var(--space-smaller)));\n box-sizing: border-box;\n padding: calc(16px / 2);\n padding: var(--space-small);\n border-radius: calc(16px / 4);\n border-radius: var(--radius-large);\n font-family: \"Inter\", Helvetica, Arial, sans-serif;\n font-family: var(--typography--fontFamily-normal);\n font-size: calc((16px * 1) * 0.875);\n font-size: calc(calc(16px * 1) * 0.875);\n font-size: var(--typography--fontSize-base);\n font-weight: 500;\n white-space: nowrap;\n list-style: none;\n cursor: pointer;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: justify;\n justify-content: space-between;\n gap: calc(16px / 4);\n gap: var(--space-smaller);\n}\n\n.jobber-retheme .QaXuqbVjG04-,\n.jobber-retheme .thBUfVNaigs- {\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n}\n\n.QaXuqbVjG04-:hover,\n.QaXuqbVjG04-:focus {\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n}\n\n.QaXuqbVjG04-:focus-visible {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(147, 161, 169);\n box-shadow: var(--shadow-focus);\n}\n";
|
|
300
|
+
var styles$8 = {"optionsList":"thBUfVNaigs-","option":"QaXuqbVjG04-"};
|
|
301
|
+
styleInject_es.styleInject(css_248z$8);
|
|
302
|
+
|
|
303
|
+
function DataListSortingOptions({ options, selectedOption, onSelectChange, onClose, optionsListRef, dataListHeaderTileRef, }) {
|
|
304
|
+
useRefocusOnActivator.useRefocusOnActivator(!optionsListRef.current);
|
|
305
|
+
useOnKeyDown.useOnKeyDown(() => onClose(), "Escape");
|
|
306
|
+
React__default["default"].useEffect(() => {
|
|
307
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
308
|
+
return () => {
|
|
309
|
+
document.removeEventListener("mousedown", handleClickOutside);
|
|
310
|
+
};
|
|
311
|
+
}, [optionsListRef, dataListHeaderTileRef, onClose]);
|
|
312
|
+
return (React__default["default"].createElement("ul", { className: styles$8.optionsList, ref: optionsListRef }, options.map((option, index) => (React__default["default"].createElement("li", { className: styles$8.option, key: index, onClick: () => onSelectChange(option), onKeyDown: event => handleKeyDown(event, option), tabIndex: 0 },
|
|
313
|
+
option.label,
|
|
314
|
+
option.label === (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) && (React__default["default"].createElement(Icon.Icon, { name: "checkmark", color: "blue" })))))));
|
|
315
|
+
function handleKeyDown(event, option) {
|
|
316
|
+
if (event.key === "Enter") {
|
|
317
|
+
onSelectChange(option);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
function handleClickOutside(event) {
|
|
321
|
+
var _a, _b;
|
|
322
|
+
const isClickInsideOptions = (_a = optionsListRef.current) === null || _a === void 0 ? void 0 : _a.contains(event.target);
|
|
323
|
+
const isClickInsideHeader = (_b = dataListHeaderTileRef.current) === null || _b === void 0 ? void 0 : _b.contains(event.target);
|
|
324
|
+
if (!isClickInsideOptions && !isClickInsideHeader) {
|
|
325
|
+
onClose();
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
/* eslint-disable max-statements */
|
|
331
|
+
function DataListHeaderTile({ headers, headerKey, visible = false, }) {
|
|
332
|
+
useRefocusOnActivator.useRefocusOnActivator(visible);
|
|
301
333
|
const { sorting } = useDataListContext();
|
|
302
|
-
const
|
|
334
|
+
const [isDropDownOpen, setIsDropDownOpen] = React__default["default"].useState(false);
|
|
335
|
+
const [selectedSortOption, setSelectedSortOption] = React__default["default"].useState(null);
|
|
336
|
+
const optionsListRef = useFocusTrap.useFocusTrap(isDropDownOpen);
|
|
337
|
+
const dataListHeaderTileRef = React__default["default"].useRef(null);
|
|
338
|
+
const sortableItem = sorting === null || sorting === void 0 ? void 0 : sorting.sortable.find(item => item.key === headerKey);
|
|
339
|
+
const isSortable = Boolean(sortableItem);
|
|
303
340
|
const sortingState = sorting === null || sorting === void 0 ? void 0 : sorting.state;
|
|
304
341
|
const Tag = isSortable ? "button" : "div";
|
|
305
|
-
return (React__default["default"].createElement(Tag, { className: classnames__default["default"](styles$
|
|
306
|
-
[styles$
|
|
307
|
-
}), onClick: handleOnClick },
|
|
342
|
+
return (React__default["default"].createElement(Tag, { className: classnames__default["default"](styles$a.headerLabel, {
|
|
343
|
+
[styles$a.sortable]: isSortable,
|
|
344
|
+
}), onClick: handleOnClick, ref: dataListHeaderTileRef },
|
|
308
345
|
React__default["default"].createElement(Text.Text, { maxLines: "single" }, headers[headerKey]),
|
|
346
|
+
isSortable && (sortableItem === null || sortableItem === void 0 ? void 0 : sortableItem.options) && isDropDownOpen && (React__default["default"].createElement(DataListSortingOptions, { options: sortableItem.options, selectedOption: selectedSortOption, onSelectChange: handleSelectChange, onClose: () => setIsDropDownOpen(false), optionsListRef: optionsListRef, dataListHeaderTileRef: dataListHeaderTileRef })),
|
|
309
347
|
(sortingState === null || sortingState === void 0 ? void 0 : sortingState.key) === headerKey ? (React__default["default"].createElement(DataListSortingArrows, { order: sortingState.order })) : (sortingState === null || sortingState === void 0 ? void 0 : sortingState.key) !== headerKey && isSortable ? (React__default["default"].createElement(DataListSortingArrows, { order: "none" })) : null));
|
|
310
|
-
function toggleSorting(sortingKey) {
|
|
311
|
-
const isSameKey = sortingKey === (sortingState === null || sortingState === void 0 ? void 0 : sortingState.key);
|
|
312
|
-
|
|
348
|
+
function toggleSorting(sortingKey, label, order) {
|
|
349
|
+
const isSameKey = (sortingState === null || sortingState === void 0 ? void 0 : sortingState.label) === label && sortingKey === (sortingState === null || sortingState === void 0 ? void 0 : sortingState.key);
|
|
350
|
+
const isDescending = (sortingState === null || sortingState === void 0 ? void 0 : sortingState.order) === "desc";
|
|
351
|
+
if (isSameKey && isDescending && order !== "asc") {
|
|
352
|
+
if (order === "desc")
|
|
353
|
+
return;
|
|
313
354
|
sorting === null || sorting === void 0 ? void 0 : sorting.onSort(undefined);
|
|
314
355
|
return;
|
|
315
356
|
}
|
|
357
|
+
const sortingOrder = order || (isSameKey && !isDescending ? "desc" : "asc");
|
|
316
358
|
sorting === null || sorting === void 0 ? void 0 : sorting.onSort({
|
|
317
|
-
order: isSameKey && (sortingState === null || sortingState === void 0 ? void 0 : sortingState.order) === "asc" ? "desc" : "asc",
|
|
318
359
|
key: sortingKey,
|
|
360
|
+
label,
|
|
361
|
+
order: sortingOrder,
|
|
319
362
|
});
|
|
320
363
|
}
|
|
321
364
|
function handleOnClick() {
|
|
322
365
|
if (!isSortable)
|
|
323
366
|
return;
|
|
324
|
-
|
|
367
|
+
if (sortableItem === null || sortableItem === void 0 ? void 0 : sortableItem.options) {
|
|
368
|
+
setIsDropDownOpen(!isDropDownOpen);
|
|
369
|
+
}
|
|
370
|
+
else {
|
|
371
|
+
const headerValue = headers[headerKey];
|
|
372
|
+
if (headerValue !== undefined) {
|
|
373
|
+
toggleSorting(headerKey, headerValue);
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
function handleSelectChange(selectedOption) {
|
|
378
|
+
if (sortableItem) {
|
|
379
|
+
toggleSorting(sortableItem.key, selectedOption.label, selectedOption.order);
|
|
380
|
+
}
|
|
381
|
+
setSelectedSortOption(selectedOption);
|
|
382
|
+
setIsDropDownOpen(true);
|
|
325
383
|
}
|
|
326
384
|
}
|
|
327
385
|
|
|
@@ -374,7 +432,7 @@ function generateListItemElement(item) {
|
|
|
374
432
|
* Generate the header elements with the default styling
|
|
375
433
|
*/
|
|
376
434
|
function generateHeaderElements(headers) {
|
|
377
|
-
const headerElements = Object.keys(headers).reduce((acc, key) => (Object.assign(Object.assign({}, acc), { [key]: React__default["default"].createElement(DataListHeaderTile, { headers: headers, headerKey: key }) })), {});
|
|
435
|
+
const headerElements = Object.keys(headers).reduce((acc, key) => (Object.assign(Object.assign({}, acc), { [key]: React__default["default"].createElement(DataListHeaderTile, { headers: headers, headerKey: key, visible: true }) })), {});
|
|
378
436
|
return isEmpty__default["default"](headerElements) ? undefined : headerElements;
|
|
379
437
|
}
|
|
380
438
|
function sortBreakpoints(sizeProp) {
|
|
@@ -517,7 +575,7 @@ function InternalDataListItemActions({ actions, }) {
|
|
|
517
575
|
return (React__default["default"].createElement(framerMotion.motion.div, { variants: variants, initial: "hidden", animate: "visible", exit: "hidden", transition: {
|
|
518
576
|
duration: TRANSITION_DURATION_IN_SECONDS,
|
|
519
577
|
delay: TRANSITION_DELAY_IN_SECONDS,
|
|
520
|
-
}, className: styles$
|
|
578
|
+
}, className: styles$d.menu, onContextMenu: handleContextMenu },
|
|
521
579
|
React__default["default"].createElement(DataListActions, null, actions)));
|
|
522
580
|
}
|
|
523
581
|
function handleContextMenu(event) {
|
|
@@ -561,8 +619,8 @@ function DataListItemInternal({ children, item, }) {
|
|
|
561
619
|
const { canSelect, hasAtLeastOneSelected, isSelectAll, selectedIDs, selected, onSelect, } = useBatchSelect();
|
|
562
620
|
if (!canSelect)
|
|
563
621
|
return children;
|
|
564
|
-
return (React__default["default"].createElement("div", { className: classnames__default["default"](styles$
|
|
565
|
-
[styles$
|
|
622
|
+
return (React__default["default"].createElement("div", { className: classnames__default["default"](styles$g.selectable, {
|
|
623
|
+
[styles$g.selected]: hasAtLeastOneSelected,
|
|
566
624
|
}) },
|
|
567
625
|
children,
|
|
568
626
|
React__default["default"].createElement(Checkbox.Checkbox, { checked: getIsChecked(), onChange: handleChange })));
|
|
@@ -607,17 +665,17 @@ function DataListItemClickableInternal({ onClick, url, to, children, }) {
|
|
|
607
665
|
return React__default["default"].createElement(React__default["default"].Fragment, null, children);
|
|
608
666
|
if (to) {
|
|
609
667
|
const computedTo = typeof to === "string" ? to : to(activeItem);
|
|
610
|
-
return (React__default["default"].createElement(reactRouterDom.Link, { className: styles$
|
|
668
|
+
return (React__default["default"].createElement(reactRouterDom.Link, { className: styles$g.listItemClickable, to: computedTo, onClick: handleClick }, children));
|
|
611
669
|
}
|
|
612
670
|
if (url) {
|
|
613
671
|
const href = typeof url === "string" ? url : url(activeItem);
|
|
614
|
-
return (React__default["default"].createElement("a", { className: styles$
|
|
672
|
+
return (React__default["default"].createElement("a", { className: styles$g.listItemClickable, href: href, onClick: handleClick }, children));
|
|
615
673
|
}
|
|
616
674
|
if (onClick) {
|
|
617
675
|
return (
|
|
618
676
|
// A button can be nested within the list item. To prevent a button inside
|
|
619
677
|
// button error, we need to manually declare a div to be a button
|
|
620
|
-
React__default["default"].createElement("div", { role: "button", tabIndex: 0, className: styles$
|
|
678
|
+
React__default["default"].createElement("div", { role: "button", tabIndex: 0, className: styles$g.listItemClickable, onClick: handleClick, onKeyDown: e => {
|
|
621
679
|
if (e.key === "Enter" || e.key === " ") {
|
|
622
680
|
e.preventDefault();
|
|
623
681
|
handleClick();
|
|
@@ -667,8 +725,8 @@ function DataListItem({ item, layout, }) {
|
|
|
667
725
|
const isContextMenuVisible = Boolean(contextPosition);
|
|
668
726
|
const shouldShowContextMenu = showMenu && isContextMenuVisible && hasActions;
|
|
669
727
|
return (React__default["default"].createElement(DataListLayoutActionsContext.Provider, { value: { activeItem: item } },
|
|
670
|
-
React__default["default"].createElement("div", { onMouseEnter: handleShowMenu, onMouseLeave: handleHideMenu, onFocus: handleShowMenu, onBlur: handleHideMenu, onContextMenu: handleContextMenu, className: classnames__default["default"](styles$
|
|
671
|
-
[styles$
|
|
728
|
+
React__default["default"].createElement("div", { onMouseEnter: handleShowMenu, onMouseLeave: handleHideMenu, onFocus: handleShowMenu, onBlur: handleHideMenu, onContextMenu: handleContextMenu, className: classnames__default["default"](styles$g.listItem, {
|
|
729
|
+
[styles$g.active]: showMenu && isContextMenuVisible,
|
|
672
730
|
}), key: item.id },
|
|
673
731
|
React__default["default"].createElement(DataListItemInternal, { item: item },
|
|
674
732
|
React__default["default"].createElement(DataListItemClickable, null, layout(generatedItem))),
|
|
@@ -754,14 +812,14 @@ function DataListHeaderCheckbox({ children }) {
|
|
|
754
812
|
return children;
|
|
755
813
|
const deselectText = sm ? "Deselect All" : "Deselect";
|
|
756
814
|
const selectedLabel = selectedCount ? `${selectedCount} selected` : "";
|
|
757
|
-
return (React__default["default"].createElement("div", { className: styles$
|
|
758
|
-
React__default["default"].createElement("div", { className: classnames__default["default"](styles$
|
|
759
|
-
[styles$
|
|
815
|
+
return (React__default["default"].createElement("div", { className: styles$g.selectable },
|
|
816
|
+
React__default["default"].createElement("div", { className: classnames__default["default"](styles$g.selectAllCheckbox, {
|
|
817
|
+
[styles$g.visible]: canSelectAll,
|
|
760
818
|
}) },
|
|
761
819
|
React__default["default"].createElement(Checkbox.Checkbox, { checked: isAllSelected(), indeterminate: isIndeterminate(), onChange: handleSelectAll },
|
|
762
|
-
React__default["default"].createElement("div", { className: styles$
|
|
763
|
-
React__default["default"].createElement(AnimatedSwitcher.AnimatedSwitcher, { switched: hasAtLeastOneSelected, initialChild: children, switchTo: React__default["default"].createElement("div", { className: styles$
|
|
764
|
-
React__default["default"].createElement("div", { className: styles$
|
|
820
|
+
React__default["default"].createElement("div", { className: styles$g.srOnly }, selectedLabel))),
|
|
821
|
+
React__default["default"].createElement(AnimatedSwitcher.AnimatedSwitcher, { switched: hasAtLeastOneSelected, initialChild: children, switchTo: React__default["default"].createElement("div", { className: styles$g.batchSelectContainer },
|
|
822
|
+
React__default["default"].createElement("div", { className: styles$g.headerBatchSelect },
|
|
765
823
|
Boolean(selectedCount) && React__default["default"].createElement(Text.Text, null,
|
|
766
824
|
selectedCount,
|
|
767
825
|
" selected"),
|
|
@@ -813,7 +871,7 @@ function DataListHeader() {
|
|
|
813
871
|
const headerData = generateHeaderElements(headers);
|
|
814
872
|
if (!headerData)
|
|
815
873
|
return null;
|
|
816
|
-
return (React__default["default"].createElement("div", { className: styles$
|
|
874
|
+
return (React__default["default"].createElement("div", { className: styles$g.headerTitles },
|
|
817
875
|
React__default["default"].createElement(DataListHeaderCheckbox, null, layout(headerData))));
|
|
818
876
|
function getVisibleSize() {
|
|
819
877
|
const visibilityKeys = Object.keys(headerVisibility);
|
|
@@ -831,7 +889,7 @@ function DataListSort() {
|
|
|
831
889
|
const sortByOptions = getSortByOptions();
|
|
832
890
|
return (React__default["default"].createElement(Combobox.Combobox, { onSelect: selection => handleKeyChange(selection[0].id.toString()), selected: [
|
|
833
891
|
{
|
|
834
|
-
id: `${state === null || state === void 0 ? void 0 : state.key},${state === null || state === void 0 ? void 0 : state.order}`,
|
|
892
|
+
id: `${state === null || state === void 0 ? void 0 : state.key},${state === null || state === void 0 ? void 0 : state.order},${state === null || state === void 0 ? void 0 : state.label}`,
|
|
835
893
|
label: (state === null || state === void 0 ? void 0 : state.order) || "",
|
|
836
894
|
},
|
|
837
895
|
] },
|
|
@@ -841,17 +899,27 @@ function DataListSort() {
|
|
|
841
899
|
sortByOptions.map(({ label, value }) => (React__default["default"].createElement(Combobox.Combobox.Option, { key: value, id: value, label: label })))));
|
|
842
900
|
function getSortByOptions() {
|
|
843
901
|
const options = sortable.reduce((acc, sort) => {
|
|
844
|
-
const label = headers[sort];
|
|
902
|
+
const label = headers[sort.key];
|
|
845
903
|
if (!label)
|
|
846
904
|
return acc;
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
905
|
+
const customOptions = sort.options;
|
|
906
|
+
if (customOptions) {
|
|
907
|
+
customOptions.forEach(option => {
|
|
908
|
+
acc.push({
|
|
909
|
+
label: option.label || "",
|
|
910
|
+
value: `${sort.key},${option.order},${option.label}`,
|
|
911
|
+
});
|
|
912
|
+
});
|
|
913
|
+
return acc;
|
|
854
914
|
}
|
|
915
|
+
acc.push({
|
|
916
|
+
label: `${label} (A-Z)`,
|
|
917
|
+
value: `${sort.key},asc,${label}`,
|
|
918
|
+
});
|
|
919
|
+
acc.push({
|
|
920
|
+
label: `${label} (Z-A)`,
|
|
921
|
+
value: `${sort.key},desc,${label}`,
|
|
922
|
+
});
|
|
855
923
|
return acc;
|
|
856
924
|
}, []);
|
|
857
925
|
// Inject a none option as the first option
|
|
@@ -859,13 +927,13 @@ function DataListSort() {
|
|
|
859
927
|
return options;
|
|
860
928
|
}
|
|
861
929
|
function getButtonLabel() {
|
|
862
|
-
const selectedOption = sortByOptions.find(option => option.value === `${state === null || state === void 0 ? void 0 : state.key},${state === null || state === void 0 ? void 0 : state.order}`);
|
|
930
|
+
const selectedOption = sortByOptions.find(option => option.value === `${state === null || state === void 0 ? void 0 : state.key},${state === null || state === void 0 ? void 0 : state.order},${state === null || state === void 0 ? void 0 : state.label}`);
|
|
863
931
|
return (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) || "";
|
|
864
932
|
}
|
|
865
933
|
function handleKeyChange(value) {
|
|
866
934
|
if (value && value !== "none") {
|
|
867
|
-
const [key, order] = value.split(",");
|
|
868
|
-
onSort({ key, order: order });
|
|
935
|
+
const [key, order, label] = value.split(",");
|
|
936
|
+
onSort({ key, order: order, label });
|
|
869
937
|
return;
|
|
870
938
|
}
|
|
871
939
|
onSort(undefined);
|
|
@@ -1164,13 +1232,13 @@ function InternalDataList() {
|
|
|
1164
1232
|
const initialLoading = loadingState === "initial";
|
|
1165
1233
|
const showEmptyState = !initialLoading && data.length === 0;
|
|
1166
1234
|
const shouldRenderLoadMoreTrigger = !initialLoading && !showEmptyState;
|
|
1167
|
-
return (React__default["default"].createElement("div", { className: styles$
|
|
1168
|
-
React__default["default"].createElement("div", { className: styles$
|
|
1235
|
+
return (React__default["default"].createElement("div", { className: styles$g.wrapper },
|
|
1236
|
+
React__default["default"].createElement("div", { className: styles$g.titleContainer },
|
|
1169
1237
|
title && React__default["default"].createElement(Heading.Heading, { level: 3 }, title),
|
|
1170
1238
|
React__default["default"].createElement(DataListTotalCount, { totalCount: totalCount, loading: initialLoading })),
|
|
1171
1239
|
React__default["default"].createElement("div", { ref: backToTopRef }),
|
|
1172
1240
|
React__default["default"].createElement(DataListStickyHeader, null,
|
|
1173
|
-
React__default["default"].createElement("div", { className: styles$
|
|
1241
|
+
React__default["default"].createElement("div", { className: styles$g.headerFilters },
|
|
1174
1242
|
React__default["default"].createElement(InternalDataListFilters, null),
|
|
1175
1243
|
React__default["default"].createElement(InternalDataListSearch, null)),
|
|
1176
1244
|
React__default["default"].createElement(InternalDataListStatusBar, null),
|
|
@@ -1178,8 +1246,8 @@ function InternalDataList() {
|
|
|
1178
1246
|
initialLoading && React__default["default"].createElement(DataListLoadingState, null),
|
|
1179
1247
|
showEmptyState && React__default["default"].createElement(InternalDataListEmptyState, null),
|
|
1180
1248
|
layoutComponents,
|
|
1181
|
-
loadingState === "filtering" && (React__default["default"].createElement("div", { "data-testid": DATA_LIST_FILTERING_SPINNER_TEST_ID, className: styles$
|
|
1182
|
-
React__default["default"].createElement("div", { className: styles$
|
|
1249
|
+
loadingState === "filtering" && (React__default["default"].createElement("div", { "data-testid": DATA_LIST_FILTERING_SPINNER_TEST_ID, className: styles$g.filtering },
|
|
1250
|
+
React__default["default"].createElement("div", { className: styles$g.filteringSpinner },
|
|
1183
1251
|
React__default["default"].createElement(Spinner.Spinner, { size: "small" })))),
|
|
1184
1252
|
shouldRenderLoadMoreTrigger && (React__default["default"].createElement(DataListLoadMore, { onBackToTop: handleBackToTop }))));
|
|
1185
1253
|
function handleBackToTop() {
|
package/dist/DataTable/index.js
CHANGED
|
@@ -9,12 +9,11 @@ var jobberHooks = require('@jobber/hooks/useResizeObserver');
|
|
|
9
9
|
var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
|
|
10
10
|
var Glimmer = require('../Glimmer-f40d5ea5.js');
|
|
11
11
|
var tslib_es6 = require('../tslib.es6-5b8768b7.js');
|
|
12
|
-
var Option = require('../Option-
|
|
12
|
+
var Option = require('../Option-2234938d.js');
|
|
13
13
|
var Button = require('../Button-b73a5e01.js');
|
|
14
14
|
var Text = require('../Text-259af966.js');
|
|
15
15
|
require('../Content-e3f7b6fc.js');
|
|
16
|
-
require('../FormField-
|
|
17
|
-
require('uuid');
|
|
16
|
+
require('../FormField-5d977ffd.js');
|
|
18
17
|
require('react-hook-form');
|
|
19
18
|
require('@jobber/hooks/useShowClear');
|
|
20
19
|
require('../Icon-405a216c.js');
|
package/dist/FormField/index.js
CHANGED
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var FormField = require('../FormField-
|
|
5
|
+
var FormField = require('../FormField-5d977ffd.js');
|
|
6
6
|
require('../tslib.es6-5b8768b7.js');
|
|
7
7
|
require('react');
|
|
8
|
-
require('uuid');
|
|
9
8
|
require('react-hook-form');
|
|
10
9
|
require('../style-inject.es-9d2f5f4e.js');
|
|
11
10
|
require('classnames');
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
var tslib_es6 = require('./tslib.es6-5b8768b7.js');
|
|
4
4
|
var React = require('react');
|
|
5
|
-
var uuid = require('uuid');
|
|
6
5
|
var reactHookForm = require('react-hook-form');
|
|
7
6
|
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
8
7
|
var classnames = require('classnames');
|
|
@@ -151,8 +150,8 @@ function FormField(props) {
|
|
|
151
150
|
? reactHookForm.useFormContext()
|
|
152
151
|
: // If there isn't a Form Context being provided, get a form for this field.
|
|
153
152
|
reactHookForm.useForm({ mode: "onTouched" });
|
|
154
|
-
const [identifier] = React.useState(
|
|
155
|
-
const [descriptionIdentifier] = React.useState(`descriptionUUID--${
|
|
153
|
+
const [identifier] = React.useState(React.useId());
|
|
154
|
+
const [descriptionIdentifier] = React.useState(`descriptionUUID--${React.useId()}`);
|
|
156
155
|
/**
|
|
157
156
|
* Generate a name if one is not supplied, this is the name
|
|
158
157
|
* that will be used for react-hook-form and not neccessarily
|
|
@@ -6,7 +6,7 @@ var tslib_es6 = require('../tslib.es6-5b8768b7.js');
|
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
|
|
8
8
|
var Avatar = require('../Avatar-76a799fa.js');
|
|
9
|
-
var InputFile = require('../InputFile-
|
|
9
|
+
var InputFile = require('../InputFile-b396510d.js');
|
|
10
10
|
var ProgressBar = require('../ProgressBar-b68edc8f.js');
|
|
11
11
|
var Button = require('../Button-b73a5e01.js');
|
|
12
12
|
require('classnames');
|
|
@@ -15,7 +15,6 @@ require('../Icon-405a216c.js');
|
|
|
15
15
|
require('@jobber/design');
|
|
16
16
|
require('react-dropzone');
|
|
17
17
|
require('axios');
|
|
18
|
-
require('uuid');
|
|
19
18
|
require('../InputValidation-a7a737f9.js');
|
|
20
19
|
require('framer-motion');
|
|
21
20
|
require('../Text-259af966.js');
|
package/dist/InputDate/index.js
CHANGED
|
@@ -4,10 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var omit = require('lodash/omit');
|
|
6
6
|
var React = require('react');
|
|
7
|
-
var FormField = require('../FormField-
|
|
7
|
+
var FormField = require('../FormField-5d977ffd.js');
|
|
8
8
|
var DatePicker = require('../DatePicker-64c5ab1a.js');
|
|
9
9
|
require('../tslib.es6-5b8768b7.js');
|
|
10
|
-
require('uuid');
|
|
11
10
|
require('react-hook-form');
|
|
12
11
|
require('../style-inject.es-9d2f5f4e.js');
|
|
13
12
|
require('classnames');
|
package/dist/InputEmail/index.js
CHANGED
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
|
-
var FormField = require('../FormField-
|
|
6
|
+
var FormField = require('../FormField-5d977ffd.js');
|
|
7
7
|
require('../tslib.es6-5b8768b7.js');
|
|
8
|
-
require('uuid');
|
|
9
8
|
require('react-hook-form');
|
|
10
9
|
require('../style-inject.es-9d2f5f4e.js');
|
|
11
10
|
require('classnames');
|
package/dist/InputFile/index.js
CHANGED
|
@@ -2,13 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var InputFile = require('../InputFile-
|
|
5
|
+
var InputFile = require('../InputFile-b396510d.js');
|
|
6
6
|
require('../tslib.es6-5b8768b7.js');
|
|
7
7
|
require('react');
|
|
8
8
|
require('classnames');
|
|
9
9
|
require('react-dropzone');
|
|
10
10
|
require('axios');
|
|
11
|
-
require('uuid');
|
|
12
11
|
require('../style-inject.es-9d2f5f4e.js');
|
|
13
12
|
require('../InputValidation-a7a737f9.js');
|
|
14
13
|
require('framer-motion');
|
|
@@ -5,7 +5,6 @@ var React = require('react');
|
|
|
5
5
|
var classnames = require('classnames');
|
|
6
6
|
var reactDropzone = require('react-dropzone');
|
|
7
7
|
var axios = require('axios');
|
|
8
|
-
var uuid = require('uuid');
|
|
9
8
|
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
10
9
|
var InputValidation = require('./InputValidation-a7a737f9.js');
|
|
11
10
|
var Button = require('./Button-b73a5e01.js');
|
|
@@ -72,7 +71,7 @@ function InputFile({ variation = "dropzone", size = "base", buttonLabel: provide
|
|
|
72
71
|
onUploadError && onUploadError(new Error("Failed to get upload params"));
|
|
73
72
|
return;
|
|
74
73
|
}
|
|
75
|
-
const { url, key =
|
|
74
|
+
const { url, key = React.useId(), fields = {}, httpMethod = "POST" } = params;
|
|
76
75
|
const fileUpload = getFileUpload(file, key, url);
|
|
77
76
|
onUploadStart && onUploadStart(Object.assign({}, fileUpload));
|
|
78
77
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var InputNumber = require('../InputNumber-
|
|
5
|
+
var InputNumber = require('../InputNumber-7c6d8aa5.js');
|
|
6
6
|
require('react');
|
|
7
|
-
require('../FormField-
|
|
7
|
+
require('../FormField-5d977ffd.js');
|
|
8
8
|
require('../tslib.es6-5b8768b7.js');
|
|
9
|
-
require('uuid');
|
|
10
9
|
require('react-hook-form');
|
|
11
10
|
require('../style-inject.es-9d2f5f4e.js');
|
|
12
11
|
require('classnames');
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var FormField = require('./FormField-
|
|
4
|
+
var FormField = require('./FormField-5d977ffd.js');
|
|
5
5
|
|
|
6
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
7
7
|
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
|
-
var FormField = require('../FormField-
|
|
6
|
+
var FormField = require('../FormField-5d977ffd.js');
|
|
7
7
|
require('../tslib.es6-5b8768b7.js');
|
|
8
|
-
require('uuid');
|
|
9
8
|
require('react-hook-form');
|
|
10
9
|
require('../style-inject.es-9d2f5f4e.js');
|
|
11
10
|
require('classnames');
|
|
@@ -6,8 +6,7 @@ var tslib_es6 = require('../tslib.es6-5b8768b7.js');
|
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var reactHookForm = require('react-hook-form');
|
|
8
8
|
var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
|
|
9
|
-
var FormField = require('../FormField-
|
|
10
|
-
require('uuid');
|
|
9
|
+
var FormField = require('../FormField-5d977ffd.js');
|
|
11
10
|
require('classnames');
|
|
12
11
|
require('@jobber/hooks/useShowClear');
|
|
13
12
|
require('../Button-b73a5e01.js');
|
package/dist/InputText/index.js
CHANGED
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var InputText = require('../InputText-
|
|
5
|
+
var InputText = require('../InputText-ed025475.js');
|
|
6
6
|
require('react');
|
|
7
|
-
require('../FormField-
|
|
7
|
+
require('../FormField-5d977ffd.js');
|
|
8
8
|
require('../tslib.es6-5b8768b7.js');
|
|
9
|
-
require('uuid');
|
|
10
9
|
require('react-hook-form');
|
|
11
10
|
require('../style-inject.es-9d2f5f4e.js');
|
|
12
11
|
require('classnames');
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var FormField = require('./FormField-
|
|
4
|
+
var FormField = require('./FormField-5d977ffd.js');
|
|
5
5
|
|
|
6
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
7
7
|
|
package/dist/InputTime/index.js
CHANGED
|
@@ -6,8 +6,7 @@ var tslib_es6 = require('../tslib.es6-5b8768b7.js');
|
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var debounce = require('lodash/debounce');
|
|
8
8
|
var temporal = require('@std-proposal/temporal');
|
|
9
|
-
var FormField = require('../FormField-
|
|
10
|
-
require('uuid');
|
|
9
|
+
var FormField = require('../FormField-5d977ffd.js');
|
|
11
10
|
require('react-hook-form');
|
|
12
11
|
require('../style-inject.es-9d2f5f4e.js');
|
|
13
12
|
require('classnames');
|
package/dist/Menu/Menu.d.ts
CHANGED
|
@@ -25,15 +25,15 @@ export interface ActionProps {
|
|
|
25
25
|
/**
|
|
26
26
|
* Action label
|
|
27
27
|
*/
|
|
28
|
-
label: string;
|
|
28
|
+
readonly label: string;
|
|
29
29
|
/**
|
|
30
30
|
* Parent Section Label
|
|
31
31
|
*/
|
|
32
|
-
sectionLabel?: string;
|
|
32
|
+
readonly sectionLabel?: string;
|
|
33
33
|
/**
|
|
34
34
|
* Visual cue for the action label
|
|
35
35
|
*/
|
|
36
|
-
icon?: IconNames;
|
|
36
|
+
readonly icon?: IconNames;
|
|
37
37
|
/**
|
|
38
38
|
* Callback when an action gets clicked
|
|
39
39
|
*/
|
|
@@ -41,5 +41,5 @@ export interface ActionProps {
|
|
|
41
41
|
/**
|
|
42
42
|
* Focus on the action when rendered
|
|
43
43
|
*/
|
|
44
|
-
shouldFocus?: boolean;
|
|
44
|
+
readonly shouldFocus?: boolean;
|
|
45
45
|
}
|
package/dist/Menu/index.js
CHANGED
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var Menu = require('../Menu-
|
|
5
|
+
var Menu = require('../Menu-3e137b7d.js');
|
|
6
6
|
require('react');
|
|
7
|
-
require('uuid');
|
|
8
7
|
require('classnames');
|
|
9
8
|
require('framer-motion');
|
|
10
9
|
require('@jobber/hooks/useOnKeyDown');
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var uuid = require('uuid');
|
|
5
4
|
var classnames = require('classnames');
|
|
6
5
|
var framerMotion = require('framer-motion');
|
|
7
6
|
var useOnKeyDown = require('@jobber/hooks/useOnKeyDown');
|
|
@@ -42,8 +41,8 @@ function Menu({ activator, items }) {
|
|
|
42
41
|
horizontal: "right",
|
|
43
42
|
});
|
|
44
43
|
const wrapperRef = React.createRef();
|
|
45
|
-
const buttonID =
|
|
46
|
-
const menuID =
|
|
44
|
+
const buttonID = React.useId();
|
|
45
|
+
const menuID = React.useId();
|
|
47
46
|
useOnKeyDown.useOnKeyDown(handleKeyboardShortcut, ["Escape"]);
|
|
48
47
|
React.useLayoutEffect(() => {
|
|
49
48
|
if (wrapperRef.current) {
|
|
@@ -5,11 +5,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var classnames = require('classnames');
|
|
7
7
|
var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
|
|
8
|
-
var Checkbox = require('../Checkbox-
|
|
8
|
+
var Checkbox = require('../Checkbox-2915069b.js');
|
|
9
9
|
var Text = require('../Text-259af966.js');
|
|
10
10
|
var Icon = require('../Icon-405a216c.js');
|
|
11
11
|
require('../tslib.es6-5b8768b7.js');
|
|
12
|
-
require('uuid');
|
|
13
12
|
require('react-hook-form');
|
|
14
13
|
require('../Typography-c45bf216.js');
|
|
15
14
|
require('@jobber/design');
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var FormField = require('./FormField-
|
|
4
|
+
var FormField = require('./FormField-5d977ffd.js');
|
|
5
5
|
|
|
6
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
7
7
|
|
package/dist/Page/index.js
CHANGED
|
@@ -11,7 +11,7 @@ var Text = require('../Text-259af966.js');
|
|
|
11
11
|
var Content = require('../Content-e3f7b6fc.js');
|
|
12
12
|
var Markdown = require('../Markdown-f7c55304.js');
|
|
13
13
|
var Button = require('../Button-b73a5e01.js');
|
|
14
|
-
var Menu = require('../Menu-
|
|
14
|
+
var Menu = require('../Menu-3e137b7d.js');
|
|
15
15
|
var Emphasis = require('../Emphasis-bda56d3b.js');
|
|
16
16
|
require('../Typography-c45bf216.js');
|
|
17
17
|
require('../getAtlantisConfig-0f3e8af2.js');
|
|
@@ -19,7 +19,6 @@ require('react-markdown');
|
|
|
19
19
|
require('react-router-dom');
|
|
20
20
|
require('../Icon-405a216c.js');
|
|
21
21
|
require('@jobber/design');
|
|
22
|
-
require('uuid');
|
|
23
22
|
require('framer-motion');
|
|
24
23
|
require('@jobber/hooks/useOnKeyDown');
|
|
25
24
|
require('@jobber/hooks/useRefocusOnActivator');
|
package/dist/RadioGroup/index.js
CHANGED
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var RadioGroup = require('../RadioGroup-
|
|
5
|
+
var RadioGroup = require('../RadioGroup-17b67ade.js');
|
|
6
6
|
require('react');
|
|
7
|
-
require('uuid');
|
|
8
7
|
require('../style-inject.es-9d2f5f4e.js');
|
|
9
8
|
require('../Text-259af966.js');
|
|
10
9
|
require('../Typography-c45bf216.js');
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var uuid = require('uuid');
|
|
5
4
|
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
6
5
|
var Text = require('./Text-259af966.js');
|
|
7
6
|
|
|
@@ -21,7 +20,7 @@ function RadioOption({ children }) {
|
|
|
21
20
|
return React__default["default"].createElement(React__default["default"].Fragment, null, children);
|
|
22
21
|
}
|
|
23
22
|
function InternalRadioOption({ value, name, label, description, disabled, checked, children, onChange, }) {
|
|
24
|
-
const inputId = `${value.toString()}_${
|
|
23
|
+
const inputId = `${value.toString()}_${React.useId()}`;
|
|
25
24
|
const shouldRenderIndependentChildren = label && children;
|
|
26
25
|
return (React__default["default"].createElement("div", null,
|
|
27
26
|
React__default["default"].createElement("input", { onChange: handleChange, type: "radio", name: name, value: value, disabled: disabled, checked: checked, id: inputId, className: styles.input, "aria-describedby": description ? `${inputId}_description` : undefined }),
|
|
@@ -34,7 +33,7 @@ function InternalRadioOption({ value, name, label, description, disabled, checke
|
|
|
34
33
|
}
|
|
35
34
|
}
|
|
36
35
|
|
|
37
|
-
function RadioGroup({ children, value, ariaLabel, onChange, name =
|
|
36
|
+
function RadioGroup({ children, value, ariaLabel, onChange, name = React.useId(), }) {
|
|
38
37
|
return (React__default["default"].createElement("div", { role: "radiogroup", "aria-label": ariaLabel, className: styles.radioGroup }, React__default["default"].Children.map(children, option => (React__default["default"].createElement(InternalRadioOption, Object.assign({ checked: value === option.props.value, name: name, onChange: handleChange }, option.props), option.props.children)))));
|
|
39
38
|
function handleChange(newValue) {
|
|
40
39
|
if (newValue !== value) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DayOfMonth } from "../types";
|
|
3
3
|
interface DayOfMonthSelectProps {
|
|
4
|
-
selectedDays: Set<DayOfMonth>;
|
|
5
|
-
disabled: boolean;
|
|
4
|
+
readonly selectedDays: Set<DayOfMonth>;
|
|
5
|
+
readonly disabled: boolean;
|
|
6
6
|
onChange(selectedDays: Set<DayOfMonth>): void;
|
|
7
7
|
}
|
|
8
8
|
export declare function DayOfMonthSelect({ selectedDays, disabled, onChange, }: DayOfMonthSelectProps): JSX.Element;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { WeekDay } from "../types";
|
|
3
3
|
interface WeeklySelectProps {
|
|
4
|
-
disabled: boolean;
|
|
5
|
-
selectedDays: Set<WeekDay>;
|
|
4
|
+
readonly disabled: boolean;
|
|
5
|
+
readonly selectedDays: Set<WeekDay>;
|
|
6
6
|
onChange(selectedDays: Set<WeekDay>): void;
|
|
7
7
|
}
|
|
8
8
|
export declare function WeeklySelect({ onChange, selectedDays, disabled, }: WeeklySelectProps): JSX.Element;
|
|
@@ -3,17 +3,16 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
|
-
var uuid = require('uuid');
|
|
7
6
|
var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
|
|
8
|
-
var RadioGroup = require('../RadioGroup-
|
|
7
|
+
var RadioGroup = require('../RadioGroup-17b67ade.js');
|
|
9
8
|
var Text = require('../Text-259af966.js');
|
|
10
9
|
require('classnames');
|
|
11
10
|
require('../Typography-c45bf216.js');
|
|
12
|
-
var Option = require('../Option-
|
|
13
|
-
var InputNumber = require('../InputNumber-
|
|
11
|
+
var Option = require('../Option-2234938d.js');
|
|
12
|
+
var InputNumber = require('../InputNumber-7c6d8aa5.js');
|
|
14
13
|
var InputGroup = require('../InputGroup-8d4fd4eb.js');
|
|
15
14
|
var Content = require('../Content-e3f7b6fc.js');
|
|
16
|
-
require('../FormField-
|
|
15
|
+
require('../FormField-5d977ffd.js');
|
|
17
16
|
require('../tslib.es6-5b8768b7.js');
|
|
18
17
|
require('react-hook-form');
|
|
19
18
|
require('@jobber/hooks/useShowClear');
|
|
@@ -99,7 +98,7 @@ function WeeklySelect({ onChange, selectedDays, disabled, }) {
|
|
|
99
98
|
};
|
|
100
99
|
return (React__default["default"].createElement("div", { className: styles$4.container }, weekDays.map(weekDay => {
|
|
101
100
|
const isSelected = selectedDays.has(weekDay);
|
|
102
|
-
const inputId =
|
|
101
|
+
const inputId = React.useId();
|
|
103
102
|
return (React__default["default"].createElement("div", { key: `${weekDay}`, className: checkboxStyles.checkboxWrapper },
|
|
104
103
|
React__default["default"].createElement("input", { className: checkboxStyles.dayCheckboxInput, disabled: disabled, type: "checkbox", onChange: onChangeWeekDays, id: `weekly-select-${weekDay}${inputId}`, "aria-checked": isSelected, checked: isSelected, value: weekDay }),
|
|
105
104
|
React__default["default"].createElement("label", { className: checkboxStyles.dayCheckbox, htmlFor: `weekly-select-${weekDay}${inputId}` }, `${exports.WeekDay[weekDay].substr(0, 1).toUpperCase()}`)));
|
|
@@ -144,7 +143,7 @@ const daysInMonth = [...Array.from({ length: 31 }, (_, i) => i + 1), "LAST"];
|
|
|
144
143
|
function DayOfMonthSelect({ selectedDays, disabled, onChange, }) {
|
|
145
144
|
return (React__default["default"].createElement("div", { className: styles$1.container }, daysInMonth.map(day => {
|
|
146
145
|
const isSelected = selectedDays.has(day);
|
|
147
|
-
const inputId =
|
|
146
|
+
const inputId = React.useId();
|
|
148
147
|
return (React__default["default"].createElement("div", { key: `${day}`, className: checkboxStyles.checkboxWrapper },
|
|
149
148
|
React__default["default"].createElement("input", { className: checkboxStyles.dayCheckboxInput, disabled: disabled, type: "checkbox", id: `${day}-${inputId}`, onChange: handleChangeDayOfMonth, "aria-checked": isSelected, checked: isSelected, value: day }),
|
|
150
149
|
React__default["default"].createElement("label", { className: checkboxStyles.dayCheckbox, htmlFor: `${day}-${inputId}` }, `${day === "LAST" ? "Last day" : day}`)));
|
package/dist/Select/index.js
CHANGED
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var Option = require('../Option-
|
|
5
|
+
var Option = require('../Option-2234938d.js');
|
|
6
6
|
require('react');
|
|
7
|
-
require('../FormField-
|
|
7
|
+
require('../FormField-5d977ffd.js');
|
|
8
8
|
require('../tslib.es6-5b8768b7.js');
|
|
9
|
-
require('uuid');
|
|
10
9
|
require('react-hook-form');
|
|
11
10
|
require('../style-inject.es-9d2f5f4e.js');
|
|
12
11
|
require('classnames');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jobber/components",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.76.1-job-85845.0+c80c7b3b",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
],
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@jobber/design": "^0.52.0",
|
|
23
|
-
"@jobber/formatters": "
|
|
23
|
+
"@jobber/formatters": "^0.2.2",
|
|
24
24
|
"@jobber/hooks": "^2.8.1",
|
|
25
25
|
"@popperjs/core": "^2.0.6",
|
|
26
26
|
"@std-proposal/temporal": "0.0.1",
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"> 1%",
|
|
85
85
|
"IE 10"
|
|
86
86
|
],
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "c80c7b3bfdd8c97776012b151664530ab59bd575"
|
|
88
88
|
}
|