@eightshift/ui-components 0.0.1 → 0.0.3
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/README.md +0 -1
- package/dist/Button-eebLs4cp.js +54 -0
- package/dist/{Checkbox-BLcVbhiO.js → Checkbox-BN0TEda-.js} +7 -7
- package/dist/{ColorSwatch-Cmlex_kT.js → ColorSwatch-BrowHhTG.js} +4 -4
- package/dist/{FieldError-wtMA4667.js → FieldError-ILxgMZy5.js} +2 -2
- package/dist/{FocusScope-1u9yyfIN.js → FocusScope-B9b0VMib.js} +2 -2
- package/dist/GeistMonoVF.woff2 +0 -0
- package/dist/GeistVF.woff2 +0 -0
- package/dist/{GridList-BZPXp3_O.js → GridList-CzpWxJsS.js} +18 -18
- package/dist/{Group-DyqpTRPe.js → Group-Dkdm2-E7.js} +3 -3
- package/dist/{Input-jsbb4ugq.js → Input-BJA4rmIo.js} +7 -7
- package/dist/{Label-BPzS-sR7.js → Label-9x5iLJ-Y.js} +1 -1
- package/dist/{ListBox-w9gDaJkV.js → ListBox-D3Vr4vvC.js} +18 -18
- package/dist/{Select-49a62830.esm-C-RFtLiD.js → Select-49a62830.esm-CKPmlkza.js} +1 -1
- package/dist/{SelectionManager-mefd0ThJ.js → SelectionManager-sedvcM-1.js} +8 -8
- package/dist/{Separator-DHn0CwdK.js → Separator-B6rnDabE.js} +3 -3
- package/dist/{Slider-Pyh2V4bY.js → Slider-C5U5N7uM.js} +11 -11
- package/dist/{Text-BM136LvS.js → Text-Cyxp9ewv.js} +1 -1
- package/dist/{VisuallyHidden-BYRI1Lfo.js → VisuallyHidden-BPJVSUyp.js} +2 -2
- package/dist/_commonjsHelpers-DWwsNxpa.js +8 -0
- package/dist/assets/fonts.css +1 -0
- package/dist/assets/style.css +1 -1
- package/dist/assets/wp.css +1 -0
- package/dist/{button-BkkdyHfJ.js → button-idVI4jmd.js} +45 -64
- package/dist/components/base-control/base-control.js +29 -39
- package/dist/components/breakpoint-preview/breakpoint-preview.js +7 -7
- package/dist/components/button/button.js +6 -5
- package/dist/components/checkbox/checkbox.js +9 -7
- package/dist/components/color-pickers/color-picker.js +27 -36
- package/dist/components/color-pickers/color-swatch.js +6 -6
- package/dist/components/color-pickers/gradient-editor.js +10 -6
- package/dist/components/color-pickers/solid-color-picker.js +35 -38
- package/dist/components/component-toggle/component-toggle.js +52 -6
- package/dist/components/container-panel/container-panel.js +55 -6
- package/dist/components/draggable-list/draggable-list-item.js +74 -0
- package/dist/components/draggable-list/draggable-list.js +157 -0
- package/dist/components/expandable/expandable.js +19 -12
- package/dist/components/input-field/input-field.js +15 -10
- package/dist/components/layout/hstack.js +40 -0
- package/dist/components/layout/vstack.js +40 -0
- package/dist/components/link-input/link-input.js +35 -31
- package/dist/components/list-box/list-box.js +11 -6
- package/dist/components/matrix-align/matrix-align.js +12 -7
- package/dist/components/menu/menu.js +26 -21
- package/dist/components/notice/notice.js +11 -7
- package/dist/components/number-picker/number-picker.js +19 -13
- package/dist/components/option-select/option-select.js +231 -0
- package/dist/components/placeholders/file-placeholder.js +53 -0
- package/dist/components/placeholders/image-placeholder.js +88 -0
- package/dist/components/placeholders/media-placeholder.js +62 -0
- package/dist/components/popover/popover.js +4 -4
- package/dist/components/radio/radio.js +56 -38
- package/dist/components/repeater/repeater-item.js +46 -39
- package/dist/components/repeater/repeater.js +82 -56
- package/dist/components/responsive/responsive-legacy.js +17 -12
- package/dist/components/responsive/responsive.js +227 -160
- package/dist/components/responsive-preview/responsive-preview.js +5 -3
- package/dist/components/rich-label/rich-label.js +12 -8
- package/dist/components/select/async-multi-select.js +9 -6
- package/dist/components/select/async-single-select.js +7 -2
- package/dist/components/select/custom-select-default-components.js +3 -3
- package/dist/components/select/multi-select-components.js +2 -2
- package/dist/components/select/multi-select.js +9 -6
- package/dist/components/select/react-select-component-wrappers.js +1 -1
- package/dist/components/select/single-select.js +7 -2
- package/dist/components/select/styles.js +4 -4
- package/dist/components/slider/column-config-slider.js +18 -34
- package/dist/components/slider/slider.js +19 -26
- package/dist/components/slider/utils.js +44 -1
- package/dist/components/spacer/spacer.js +21 -11
- package/dist/components/tabs/tabs.js +21 -20
- package/dist/components/toggle/switch.js +18 -12
- package/dist/components/toggle/toggle.js +8 -2
- package/dist/components/toggle-button/toggle-button.js +25 -13
- package/dist/components/tooltip/tooltip.js +4 -4
- package/dist/{context-jMy6xdVq.js → context-BAcFg5GO.js} +1 -1
- package/dist/{default-i18n-BhE-OUmt.js → default-i18n-Bk1GxDHz.js} +1 -1
- package/dist/{focusSafely-C3K8zAKj.js → focusSafely-B0hyd-S4.js} +1 -1
- package/dist/fonts.js +1 -0
- package/dist/icons/icons.js +184 -164
- package/dist/icons/jsx-svg.js +4957 -0
- package/dist/{index-Bfb9bWcb.js → index-BDk0TPWz.js} +1 -1
- package/dist/{index-a301f526.esm-Bioi4cGX.js → index-a301f526.esm-BzTuHLdr.js} +1 -1
- package/dist/index.js +30 -4
- package/dist/{intlStrings-CUhoK9EN.js → intlStrings-Ctkp0HDc.js} +1 -1
- package/dist/lite-pbIeT7tm.js +8 -0
- package/dist/{multi-select-components-CjVpCNko.js → multi-select-components-nORKdJ-2.js} +3 -3
- package/dist/{popover-Dx3vKXUX.js → popover-o2Q28Ljn.js} +19 -14
- package/dist/{react-select-async.esm-TFb_ZX6C.js → react-select-async.esm-CLj9uZTq.js} +3 -3
- package/dist/{react-select.esm-BjRWqf0E.js → react-select.esm-3tyTZmrx.js} +3 -3
- package/dist/{textSelection-BosCCRVE.js → textSelection-BRZdHY-4.js} +1 -1
- package/dist/{tooltip-CkCndvTI.js → tooltip-T6H9uF-Z.js} +10 -10
- package/dist/{useButton-CuG5UzUw.js → useButton-D-xACzEY.js} +3 -3
- package/dist/{useEvent-DHv-yhOH.js → useEvent-XlYPKgwX.js} +1 -1
- package/dist/{useFocusRing-Cc-4eouh.js → useFocusRing-CRx_hYC4.js} +1 -1
- package/dist/{useFocusable-5q1Gek1J.js → useFocusable-CHfpEdlE.js} +2 -2
- package/dist/{useFormReset-Buc9YJcv.js → useFormReset-aHn6-wRk.js} +1 -1
- package/dist/{useFormValidationState-BAPPNXic.js → useFormValidationState-CdYmOaXI.js} +2 -2
- package/dist/{useHasTabbableChild-D3uUNhJ0.js → useHasTabbableChild-domoFB7A.js} +2 -2
- package/dist/{useLabel-CGlkoFG0.js → useLabel-DVhXVhtH.js} +2 -2
- package/dist/{useLabels-Dg62M_3P.js → useLabels-C7E5SkOi.js} +1 -1
- package/dist/{useListState-Domq0blV.js → useListState-BRsq7O1C.js} +1 -1
- package/dist/{useLocalizedStringFormatter-Prmz0h0A.js → useLocalizedStringFormatter-WsEL47qR.js} +1 -1
- package/dist/{useNumberFieldState-BLU3uhSR.js → useNumberFieldState-ZH2Qyyxh.js} +9 -9
- package/dist/{useNumberFormatter-BLc2xjZn.js → useNumberFormatter-mhdYLxWQ.js} +1 -1
- package/dist/{usePress-BQgVor4T.js → usePress-B42RawCH.js} +3 -3
- package/dist/{useToggle-C9ETOBaZ.js → useToggle-CExfZM8x.js} +4 -4
- package/dist/{useToggleState-DJ_z5E2S.js → useToggleState-DghG5ImG.js} +1 -1
- package/dist/utilities/array-helpers.js +30 -0
- package/dist/utilities/index.js +8 -0
- package/dist/utilities/text-helpers.js +30 -4
- package/dist/{utils-BsiH7-5Y.js → utils-DIBzm1e4.js} +1 -1
- package/dist/wp.js +1 -0
- package/package.json +11 -4
- package/dist/_commonjsHelpers-CUmg6egw.js +0 -6
- package/dist/utilities/classnames.js +0 -16
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { c as clsx } from "../../lite-pbIeT7tm.js";
|
|
3
3
|
/**
|
|
4
4
|
* Component that displays a label, with an optional icon and subtitle.
|
|
5
5
|
*
|
|
@@ -12,6 +12,7 @@ import { classnames } from "../../utilities/classnames.js";
|
|
|
12
12
|
* @param {string} [props.className] - Classes to pass to the label.
|
|
13
13
|
* @param {boolean} [props.fullWidth=false] - If `true`, the component will take up as much space as it can.
|
|
14
14
|
* @param {boolean} [props.contentsOnly] - If `true`, only the label (/icon/subtitle) will be rendered, without any wrapping elements. Useful if you want to provide your own layout.
|
|
15
|
+
* @param {boolean} [props.hidden] - If `true`, the component is not rendered.
|
|
15
16
|
*
|
|
16
17
|
* @returns {JSX.Element} The RichLabel component.
|
|
17
18
|
*
|
|
@@ -24,28 +25,31 @@ import { classnames } from "../../utilities/classnames.js";
|
|
|
24
25
|
* @preserve
|
|
25
26
|
*/
|
|
26
27
|
const RichLabel = (props) => {
|
|
27
|
-
const { icon, label, subtitle, as, className, fullWidth = false, contentsOnly } = props;
|
|
28
|
+
const { icon, label, subtitle, as, className, fullWidth = false, contentsOnly, hidden } = props;
|
|
29
|
+
if (hidden) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
28
32
|
const ComponentToRender = as ?? "div";
|
|
29
33
|
if (contentsOnly) {
|
|
30
34
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
31
35
|
icon && /* @__PURE__ */ jsx("span", { className: "es-uic-text-slate-500 [&>svg]:es-uic-size-5.5", children: icon }),
|
|
32
36
|
label && /* @__PURE__ */ jsx("span", { className: "es-uic-text-balance", children: label }),
|
|
33
|
-
subtitle && /* @__PURE__ */ jsx("span", { className: "es-uic-text-xs es-uic-text-gray-500 es-uic-
|
|
37
|
+
subtitle && /* @__PURE__ */ jsx("span", { className: "es-uic-text-balance es-uic-text-xs es-uic-text-gray-500 es-uic-opacity-60", children: subtitle })
|
|
34
38
|
] });
|
|
35
39
|
}
|
|
36
40
|
return /* @__PURE__ */ jsxs(
|
|
37
41
|
ComponentToRender,
|
|
38
42
|
{
|
|
39
|
-
className:
|
|
40
|
-
"es-uic-flex es-uic-items-center es-uic-gap-1.5 es-uic-text-sm es-uic-
|
|
43
|
+
className: clsx(
|
|
44
|
+
"es-uic-flex es-uic-items-center es-uic-gap-1.5 es-uic-text-sm es-uic-text-gray-800 [&>span>svg]:es-uic-text-slate-500",
|
|
41
45
|
fullWidth && "es-uic-grow",
|
|
42
46
|
className
|
|
43
47
|
),
|
|
44
48
|
children: [
|
|
45
|
-
icon && /* @__PURE__ */ jsx("span", { className: "
|
|
46
|
-
(label || subtitle) && /* @__PURE__ */ jsxs("div", { className: "es-uic-flex es-uic-flex-col es-uic-items-start es-uic-text-
|
|
49
|
+
icon && /* @__PURE__ */ jsx("span", { className: "[&>svg]:es-uic-size-5.5", children: icon }),
|
|
50
|
+
(label || subtitle) && /* @__PURE__ */ jsxs("div", { className: "es-uic-flex es-uic-flex-col es-uic-items-start es-uic-text-balance es-uic-text-start", children: [
|
|
47
51
|
label && /* @__PURE__ */ jsx("span", { children: label }),
|
|
48
|
-
subtitle && /* @__PURE__ */ jsx("span", { className: "es-uic-text-xs es-uic-
|
|
52
|
+
subtitle && /* @__PURE__ */ jsx("span", { className: "es-uic-text-xs es-uic-opacity-60", children: subtitle })
|
|
49
53
|
] })
|
|
50
54
|
]
|
|
51
55
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { A as AsyncSelect$1 } from "../../react-select-async.esm-
|
|
3
|
-
import { D as DndContext, g as getDragEndHandler, S as SortableContext, a as getMultiValue, b as getMultiValueRemove } from "../../multi-select-components-
|
|
2
|
+
import { A as AsyncSelect$1 } from "../../react-select-async.esm-CLj9uZTq.js";
|
|
3
|
+
import { D as DndContext, g as getDragEndHandler, S as SortableContext, a as getMultiValue, b as getMultiValueRemove } from "../../multi-select-components-nORKdJ-2.js";
|
|
4
4
|
import { r as restrictToParentElement } from "../../modifiers.esm-BuJQPI1X.js";
|
|
5
5
|
import { CustomSelectDefaultMultiValueRemove, CustomSelectDefaultDropdownIndicator, CustomSelectDefaultClearIndicator } from "./custom-select-default-components.js";
|
|
6
6
|
import { BaseControl } from "../base-control/base-control.js";
|
|
7
7
|
import { eightshiftSelectClasses } from "./styles.js";
|
|
8
|
-
import { c as components } from "../../index-a301f526.esm-
|
|
8
|
+
import { c as components } from "../../index-a301f526.esm-BzTuHLdr.js";
|
|
9
9
|
/**
|
|
10
10
|
* Multi-select menu with async loading and re-ordering.
|
|
11
11
|
*
|
|
@@ -34,6 +34,7 @@ import { c as components } from "../../index-a301f526.esm-Bioi4cGX.js";
|
|
|
34
34
|
* @param {JSX.Element} [props.customValueContainer] - If provided, replaces the default items container component (react-select's `components.MultiValueContainer`).
|
|
35
35
|
* @param {Function} [props.processLoadedOptions] - Allows modifying (filtering, grouping, ...) options output after the items have been dynamically fetched. Must include `label`, `value`, and `id` keys in the output, additional fields can be added as required.
|
|
36
36
|
* @param {string} [props.className] - Classes to pass to the select menu.
|
|
37
|
+
* @param {boolean} [props.hidden] - If `true`, the component is not rendered.
|
|
37
38
|
*
|
|
38
39
|
* @returns {JSX.Element} The AsyncMultiSelect component.
|
|
39
40
|
*
|
|
@@ -84,8 +85,12 @@ const AsyncMultiSelect = (props) => {
|
|
|
84
85
|
customValueContainer,
|
|
85
86
|
customClearIndicator,
|
|
86
87
|
processLoadedOptions = (options) => options,
|
|
88
|
+
hidden,
|
|
87
89
|
...additionalProps
|
|
88
90
|
} = props;
|
|
91
|
+
if (hidden) {
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
89
94
|
const customLoadOptions = async (searchText) => {
|
|
90
95
|
const results = await loadOptions(searchText);
|
|
91
96
|
return processLoadedOptions((results == null ? void 0 : results.map((item) => ({ id: item.value, ...item }))) ?? []);
|
|
@@ -123,9 +128,7 @@ const AsyncMultiSelect = (props) => {
|
|
|
123
128
|
components: {
|
|
124
129
|
MultiValue: getMultiValue(customValueDisplay ?? components.MultiValue),
|
|
125
130
|
MultiValueContainer: customValueContainer ?? components.MultiValueContainer,
|
|
126
|
-
MultiValueRemove: getMultiValueRemove(
|
|
127
|
-
customValueRemove ?? CustomSelectDefaultMultiValueRemove
|
|
128
|
-
),
|
|
131
|
+
MultiValueRemove: getMultiValueRemove(customValueRemove ?? CustomSelectDefaultMultiValueRemove),
|
|
129
132
|
Option: customMenuOption ?? components.Option,
|
|
130
133
|
IndicatorSeparator: null,
|
|
131
134
|
DropdownIndicator: customDropdownArrow ?? CustomSelectDefaultDropdownIndicator,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { A as AsyncSelect$1 } from "../../react-select-async.esm-
|
|
2
|
+
import { A as AsyncSelect$1 } from "../../react-select-async.esm-CLj9uZTq.js";
|
|
3
3
|
import { CustomSelectDefaultDropdownIndicator, CustomSelectDefaultClearIndicator } from "./custom-select-default-components.js";
|
|
4
4
|
import { BaseControl } from "../base-control/base-control.js";
|
|
5
5
|
import { eightshiftSelectClasses } from "./styles.js";
|
|
6
|
-
import { c as components } from "../../index-a301f526.esm-
|
|
6
|
+
import { c as components } from "../../index-a301f526.esm-BzTuHLdr.js";
|
|
7
7
|
/**
|
|
8
8
|
* Select menu with async loading.
|
|
9
9
|
*
|
|
@@ -30,6 +30,7 @@ import { c as components } from "../../index-a301f526.esm-Bioi4cGX.js";
|
|
|
30
30
|
* @param {JSX.Element} [props.customValueDisplay] - If provided, replaces the default current value display of each selected item (react-select's `components.SingleValue`).
|
|
31
31
|
* @param {Function} [props.processLoadedOptions] - Allows modifying (filtering, grouping, ...) options output after the items have been dynamically fetched. Must include `label`, `value`, and `id` keys in the output, additional fields can be added as required.
|
|
32
32
|
* @param {string} props.className - Classes to pass to the select menu.
|
|
33
|
+
* @param {boolean} [props.hidden] - If `true`, the component is not rendered.
|
|
33
34
|
*
|
|
34
35
|
* @returns {JSX.Element} The AsyncSelect component.
|
|
35
36
|
*
|
|
@@ -78,8 +79,12 @@ const AsyncSelect = (props) => {
|
|
|
78
79
|
customDropdownArrow,
|
|
79
80
|
customClearIndicator,
|
|
80
81
|
processLoadedOptions = (options) => options,
|
|
82
|
+
hidden,
|
|
81
83
|
...additionalProps
|
|
82
84
|
} = props;
|
|
85
|
+
if (hidden) {
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
83
88
|
const customLoadOptions = async (searchText) => {
|
|
84
89
|
const results = await loadOptions(searchText);
|
|
85
90
|
return processLoadedOptions((results == null ? void 0 : results.map((item) => ({ id: item.value, ...item }))) ?? []);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default from "react";
|
|
3
3
|
import { icons } from "../../icons/icons.js";
|
|
4
|
-
import {
|
|
5
|
-
import { c as components } from "../../index-a301f526.esm-
|
|
4
|
+
import { c as clsx } from "../../lite-pbIeT7tm.js";
|
|
5
|
+
import { c as components } from "../../index-a301f526.esm-BzTuHLdr.js";
|
|
6
6
|
/**
|
|
7
7
|
* Default dropdown indicator for CustomSelect.
|
|
8
8
|
*
|
|
@@ -12,7 +12,7 @@ import { c as components } from "../../index-a301f526.esm-Bioi4cGX.js";
|
|
|
12
12
|
*/
|
|
13
13
|
const CustomSelectDefaultDropdownIndicator = (props) => {
|
|
14
14
|
return /* @__PURE__ */ jsx(components.DropdownIndicator, { ...props, children: React__default.cloneElement(icons.dropdownCaretAlt, {
|
|
15
|
-
className:
|
|
15
|
+
className: clsx(props.selectProps.menuIsOpen && "-es-uic-scale-y-100 ")
|
|
16
16
|
}) });
|
|
17
17
|
};
|
|
18
18
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "react/jsx-runtime";
|
|
2
|
-
import { g, a, b } from "../../multi-select-components-
|
|
3
|
-
import "../../
|
|
2
|
+
import { g, a, b } from "../../multi-select-components-nORKdJ-2.js";
|
|
3
|
+
import "../../lite-pbIeT7tm.js";
|
|
4
4
|
export {
|
|
5
5
|
g as getDragEndHandler,
|
|
6
6
|
a as getMultiValue,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { S as StateManagedSelect$1 } from "../../react-select.esm-
|
|
3
|
-
import { D as DndContext, g as getDragEndHandler, S as SortableContext, a as getMultiValue, b as getMultiValueRemove } from "../../multi-select-components-
|
|
2
|
+
import { S as StateManagedSelect$1 } from "../../react-select.esm-3tyTZmrx.js";
|
|
3
|
+
import { D as DndContext, g as getDragEndHandler, S as SortableContext, a as getMultiValue, b as getMultiValueRemove } from "../../multi-select-components-nORKdJ-2.js";
|
|
4
4
|
import { r as restrictToParentElement } from "../../modifiers.esm-BuJQPI1X.js";
|
|
5
5
|
import { CustomSelectDefaultMultiValueRemove, CustomSelectDefaultDropdownIndicator, CustomSelectDefaultClearIndicator } from "./custom-select-default-components.js";
|
|
6
6
|
import { getValue, customOnChange } from "./shared.js";
|
|
7
7
|
import { BaseControl } from "../base-control/base-control.js";
|
|
8
8
|
import { eightshiftSelectClasses } from "./styles.js";
|
|
9
|
-
import { c as components } from "../../index-a301f526.esm-
|
|
9
|
+
import { c as components } from "../../index-a301f526.esm-BzTuHLdr.js";
|
|
10
10
|
/**
|
|
11
11
|
* Multi-select menu with re-orderable items.
|
|
12
12
|
*
|
|
@@ -34,6 +34,7 @@ import { c as components } from "../../index-a301f526.esm-Bioi4cGX.js";
|
|
|
34
34
|
* @param {JSX.Element} [props.customValueRemove] - If provided, replaces the default item remove button (react-select's `components.MultiValueRemove`.
|
|
35
35
|
* @param {JSX.Element} [props.customValueContainer] - If provided, replaces the default items container component (react-select's `components.MultiValueContainer`).
|
|
36
36
|
* @param {string} [props.className] - Classes to pass to the select menu.
|
|
37
|
+
* @param {boolean} [props.hidden] - If `true`, the component is not rendered.
|
|
37
38
|
*
|
|
38
39
|
* @returns {JSX.Element} The MultiSelect component.
|
|
39
40
|
*
|
|
@@ -79,8 +80,12 @@ const MultiSelect = (props) => {
|
|
|
79
80
|
customValueRemove,
|
|
80
81
|
customValueContainer,
|
|
81
82
|
className,
|
|
83
|
+
hidden,
|
|
82
84
|
...additionalProps
|
|
83
85
|
} = props;
|
|
86
|
+
if (hidden) {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
84
89
|
return /* @__PURE__ */ jsx(
|
|
85
90
|
BaseControl,
|
|
86
91
|
{
|
|
@@ -113,9 +118,7 @@ const MultiSelect = (props) => {
|
|
|
113
118
|
components: {
|
|
114
119
|
MultiValue: getMultiValue(customValueDisplay ?? components.MultiValue),
|
|
115
120
|
MultiValueContainer: customValueContainer ?? components.MultiValueContainer,
|
|
116
|
-
MultiValueRemove: getMultiValueRemove(
|
|
117
|
-
customValueRemove ?? CustomSelectDefaultMultiValueRemove
|
|
118
|
-
),
|
|
121
|
+
MultiValueRemove: getMultiValueRemove(customValueRemove ?? CustomSelectDefaultMultiValueRemove),
|
|
119
122
|
Option: customMenuOption ?? components.Option,
|
|
120
123
|
IndicatorSeparator: null,
|
|
121
124
|
DropdownIndicator: customDropdownArrow ?? CustomSelectDefaultDropdownIndicator,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { S as StateManagedSelect$1 } from "../../react-select.esm-
|
|
2
|
+
import { S as StateManagedSelect$1 } from "../../react-select.esm-3tyTZmrx.js";
|
|
3
3
|
import { CustomSelectDefaultDropdownIndicator, CustomSelectDefaultClearIndicator } from "./custom-select-default-components.js";
|
|
4
4
|
import { getValue, customOnChange } from "./shared.js";
|
|
5
5
|
import { BaseControl } from "../base-control/base-control.js";
|
|
6
6
|
import { eightshiftSelectClasses } from "./styles.js";
|
|
7
|
-
import { c as components } from "../../index-a301f526.esm-
|
|
7
|
+
import { c as components } from "../../index-a301f526.esm-BzTuHLdr.js";
|
|
8
8
|
/**
|
|
9
9
|
* Select menu.
|
|
10
10
|
*
|
|
@@ -30,6 +30,7 @@ import { c as components } from "../../index-a301f526.esm-Bioi4cGX.js";
|
|
|
30
30
|
* @param {JSX.Element} [props.customDropdownArrow] - If provided, replaces the default dropdown arrow indicator.
|
|
31
31
|
* @param {JSX.Element} [props.customClearIndicator] - If provided, replaces the default 'Clear all' button.
|
|
32
32
|
* @param {string} [props.className] - Classes to pass to the select menu.
|
|
33
|
+
* @param {boolean} [props.hidden] - If `true`, the component is not rendered.
|
|
33
34
|
*
|
|
34
35
|
* @returns {JSX.Element} The Select component.
|
|
35
36
|
*
|
|
@@ -73,8 +74,12 @@ const Select = (props) => {
|
|
|
73
74
|
customDropdownArrow,
|
|
74
75
|
customClearIndicator,
|
|
75
76
|
className,
|
|
77
|
+
hidden,
|
|
76
78
|
...additionalProps
|
|
77
79
|
} = props;
|
|
80
|
+
if (hidden) {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
78
83
|
return /* @__PURE__ */ jsx(
|
|
79
84
|
BaseControl,
|
|
80
85
|
{
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { c as clsx } from "../../lite-pbIeT7tm.js";
|
|
2
2
|
const controlStyles = {
|
|
3
3
|
base: "es-uic-border es-uic-rounded-md es-uic-bg-white es-uic-text-sm es-uic-transition es-uic-group es-uic-shadow-sm !es-uic-min-h-10",
|
|
4
4
|
focus: "es-uic-ring es-uic-ring-teal-500 es-uic-ring-opacity-50",
|
|
@@ -8,7 +8,7 @@ const placeholderStyles = "es-uic-text-gray-400 es-uic-ml-0.5";
|
|
|
8
8
|
const selectInputStyles = "focus:es-uic-outline-none [&_input]:!es-uic-shadow-none [&_input:focus]:!es-uic-shadow-none";
|
|
9
9
|
const valueContainerStyles = "es-uic-gap-1 es-uic-ml-1 !es-uic-overflow-visible";
|
|
10
10
|
const singleValueStyles = "es-uic-ml-0.5";
|
|
11
|
-
const multiValueStyles =
|
|
11
|
+
const multiValueStyles = clsx(
|
|
12
12
|
"es-uic-bg-gray-100 es-uic-rounded es-uic-p-1 es-uic-border es-uic-border-gray-100 es-uic-hover:border-gray-300 es-uic-items-center es-uic-gap-1.5 es-uic-transition es-uic-overflow-visible",
|
|
13
13
|
"[:focus-visible_&]:es-uic-outline-none [:focus-visible_&]:es-uic-ring",
|
|
14
14
|
"[:focus-visible_&]:es-uic-ring-teal-500 [:focus-visible_&]:es-uic-ring-opacity-50"
|
|
@@ -28,7 +28,7 @@ const groupHeadingStyles = "es-uic-ml-3 es-uic-mt-2 es-uic-text-gray-500 es-uic-
|
|
|
28
28
|
const groupStyles = "es-uic-border-b last:es-uic-border-b-0";
|
|
29
29
|
const eightshiftSelectClasses = {
|
|
30
30
|
clearIndicator: () => clearIndicatorStyles,
|
|
31
|
-
control: ({ isFocused }) =>
|
|
31
|
+
control: ({ isFocused }) => clsx(
|
|
32
32
|
isFocused ? controlStyles.focus : controlStyles.nonFocus,
|
|
33
33
|
controlStyles.base
|
|
34
34
|
),
|
|
@@ -41,7 +41,7 @@ const eightshiftSelectClasses = {
|
|
|
41
41
|
multiValueLabel: () => multiValueLabelStyles,
|
|
42
42
|
multiValueRemove: () => multiValueRemoveStyles,
|
|
43
43
|
noOptionsMessage: () => noOptionsMessageStyles,
|
|
44
|
-
option: ({ isFocused, isSelected }) =>
|
|
44
|
+
option: ({ isFocused, isSelected }) => clsx(
|
|
45
45
|
isFocused && optionStyles.focus,
|
|
46
46
|
isSelected && optionStyles.selected,
|
|
47
47
|
optionStyles.base
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import { $ as $
|
|
2
|
+
import { _ as __ } from "../../default-i18n-Bk1GxDHz.js";
|
|
3
|
+
import { $ as $01b77f81d0f07f68$export$b04be29aa201d4f5 } from "../../Label-9x5iLJ-Y.js";
|
|
4
|
+
import { $ as $6f909507e6374d18$export$472062a354075cee, a as $6f909507e6374d18$export$105594979f116971, b as $6f909507e6374d18$export$2c1b491743890dec, c as $6f909507e6374d18$export$a590f758a961cb5b } from "../../Slider-C5U5N7uM.js";
|
|
4
5
|
import { BaseControl } from "../base-control/base-control.js";
|
|
5
|
-
import { classnames } from "../../utilities/classnames.js";
|
|
6
|
-
import { _ as __, s as sprintf, a as _n } from "../../default-i18n-BhE-OUmt.js";
|
|
7
6
|
import { icons } from "../../icons/icons.js";
|
|
7
|
+
import { getColumnConfigOutputText } from "./utils.js";
|
|
8
|
+
import { c as clsx } from "../../lite-pbIeT7tm.js";
|
|
8
9
|
/**
|
|
9
10
|
* A two-thumb slider for selecting a range of columns.
|
|
10
11
|
*
|
|
@@ -24,6 +25,7 @@ import { icons } from "../../icons/icons.js";
|
|
|
24
25
|
* @param {Function} props.onChangeEnd - Function to run when the value change ends.
|
|
25
26
|
* @param {boolean} [props.disabled] - If `true`, the slider is disabled.
|
|
26
27
|
* @param {string} [props.labelClassName] - Additional classes to pass to the label.
|
|
28
|
+
* @param {boolean} [props.hidden] - If `true`, the component is not rendered.
|
|
27
29
|
*
|
|
28
30
|
* @returns {JSX.Element} The ColumnConfigSlider component.
|
|
29
31
|
*
|
|
@@ -52,8 +54,12 @@ const ColumnConfigSlider = (props) => {
|
|
|
52
54
|
onChangeEnd,
|
|
53
55
|
disabled,
|
|
54
56
|
labelClassName,
|
|
57
|
+
hidden,
|
|
55
58
|
...other
|
|
56
59
|
} = props;
|
|
60
|
+
if (hidden) {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
57
63
|
const markerData = [...Array(columns).keys()];
|
|
58
64
|
const thumbLabels = [__("Offset", "eightshift-ui-components"), __("Width", "eightshift-ui-components")];
|
|
59
65
|
return /* @__PURE__ */ jsx(
|
|
@@ -66,7 +72,7 @@ const ColumnConfigSlider = (props) => {
|
|
|
66
72
|
step: 1,
|
|
67
73
|
isDisabled: disabled,
|
|
68
74
|
orientation: "horizontal",
|
|
69
|
-
className: "es-uic-w-full
|
|
75
|
+
className: "es-uic-w-full",
|
|
70
76
|
onChangeEnd,
|
|
71
77
|
...other,
|
|
72
78
|
children: /* @__PURE__ */ jsx(
|
|
@@ -93,7 +99,7 @@ const ColumnConfigSlider = (props) => {
|
|
|
93
99
|
/* @__PURE__ */ jsx(
|
|
94
100
|
"div",
|
|
95
101
|
{
|
|
96
|
-
className:
|
|
102
|
+
className: clsx(
|
|
97
103
|
"es-uic-col-span-full es-uic-row-span-1 es-uic-row-start-1 es-uic-h-full es-uic-w-full es-uic-grow es-uic-rounded-md es-uic-border",
|
|
98
104
|
disabled ? "es-uic-border-gray-200 es-uic-bg-white" : "es-uic-border-gray-300 es-uic-bg-gray-50 es-uic-shadow-sm"
|
|
99
105
|
)
|
|
@@ -102,7 +108,7 @@ const ColumnConfigSlider = (props) => {
|
|
|
102
108
|
markerData.slice(0, -1).map((marker) => /* @__PURE__ */ jsx(
|
|
103
109
|
"div",
|
|
104
110
|
{
|
|
105
|
-
className:
|
|
111
|
+
className: clsx(
|
|
106
112
|
"es-uic-row-span-1 es-uic-row-start-1 es-uic-h-full es-uic-w-px es-uic-justify-self-center",
|
|
107
113
|
marker >= value[0] - 1 && marker < value[1] ? "es-uic-bg-teal-700/25" : "es-uic-bg-gray-300",
|
|
108
114
|
(marker === value[0] - 2 || marker === value[1] - 1) && "es-uic-hidden"
|
|
@@ -114,7 +120,7 @@ const ColumnConfigSlider = (props) => {
|
|
|
114
120
|
/* @__PURE__ */ jsx(
|
|
115
121
|
"div",
|
|
116
122
|
{
|
|
117
|
-
className:
|
|
123
|
+
className: clsx(
|
|
118
124
|
"es-uic-pointer-events-none es-uic-col-start-1 es-uic-row-start-1 es-uic-border",
|
|
119
125
|
"es-uic-h-full es-uic-w-full es-uic-self-center es-uic-rounded-md",
|
|
120
126
|
disabled ? "es-uic-border-gray-200 es-uic-bg-gray-50" : "es-uic-border-teal-500 es-uic-bg-teal-500/30"
|
|
@@ -128,7 +134,7 @@ const ColumnConfigSlider = (props) => {
|
|
|
128
134
|
return /* @__PURE__ */ jsxs(
|
|
129
135
|
"span",
|
|
130
136
|
{
|
|
131
|
-
className:
|
|
137
|
+
className: clsx(
|
|
132
138
|
"es-uic-row-span-1 es-uic-row-start-1 es-uic-select-none es-uic-place-self-center es-uic-text-xs es-uic-transition-colors",
|
|
133
139
|
"es-uic-inset-y-0 es-uic-my-auto es-uic-h-fit es-uic-pl-px es-uic-text-center",
|
|
134
140
|
"[&>svg]:es-uic-size-3 [&>svg]:es-uic-stroke-[1.5]",
|
|
@@ -151,7 +157,7 @@ const ColumnConfigSlider = (props) => {
|
|
|
151
157
|
index: i,
|
|
152
158
|
"aria-label": thumbLabels == null ? void 0 : thumbLabels[i],
|
|
153
159
|
isDisabled: i === 0 && disableOffset || i === 1 && disableWidth,
|
|
154
|
-
className:
|
|
160
|
+
className: clsx(
|
|
155
161
|
"!es-uic-static es-uic-row-span-1 es-uic-row-start-1 es-uic-h-6 es-uic-w-1.5 es-uic-rounded-full es-uic-border es-uic-transition es-uic-duration-300",
|
|
156
162
|
i === 0 && "!-es-uic-translate-x-1/2 !es-uic-translate-y-0 es-uic-self-center es-uic-justify-self-start",
|
|
157
163
|
i === 1 && "!es-uic-translate-x-1/2 !es-uic-translate-y-0 es-uic-self-center es-uic-justify-self-end",
|
|
@@ -190,34 +196,12 @@ const ColumnConfigSlider = (props) => {
|
|
|
190
196
|
*
|
|
191
197
|
* @preserve
|
|
192
198
|
*/
|
|
193
|
-
const ColumnConfigSliderOutput = ({ showOuterAsGutter }) => /* @__PURE__ */ jsx($6f909507e6374d18$export$a590f758a961cb5b, { className:
|
|
199
|
+
const ColumnConfigSliderOutput = ({ showOuterAsGutter }) => /* @__PURE__ */ jsx($6f909507e6374d18$export$a590f758a961cb5b, { className: clsx("es-uic-text-xs es-uic-tabular-nums es-uic-text-gray-600"), children: ({ state }) => {
|
|
194
200
|
const columns = state.getThumbMaxValue(1);
|
|
195
201
|
const offset = parseInt(state.getThumbValueLabel(0));
|
|
196
202
|
const endOffset = parseInt(state.getThumbValueLabel(1));
|
|
197
203
|
const width = endOffset - offset + 1;
|
|
198
|
-
|
|
199
|
-
return __("Full-width", "eightshift-ui-components");
|
|
200
|
-
}
|
|
201
|
-
if (offset === 1 && endOffset < columns) {
|
|
202
|
-
return sprintf(__("To col %d", "eightshift-ui-components"), showOuterAsGutter ? endOffset - 1 : endOffset);
|
|
203
|
-
}
|
|
204
|
-
if (offset > 1 && endOffset === columns) {
|
|
205
|
-
return sprintf(__("From col %d", "eightshift-ui-components"), showOuterAsGutter ? offset - 1 : offset);
|
|
206
|
-
}
|
|
207
|
-
if (showOuterAsGutter && width === 1 && offset === 1) {
|
|
208
|
-
return __("Start gutter", "eightshift-ui-components");
|
|
209
|
-
}
|
|
210
|
-
if (showOuterAsGutter && endOffset === columns) {
|
|
211
|
-
return __("Start gutter", "eightshift-ui-components");
|
|
212
|
-
}
|
|
213
|
-
if (width === 1) {
|
|
214
|
-
return sprintf(__("Col %d", "eightshift-ui-components"), offset);
|
|
215
|
-
}
|
|
216
|
-
return sprintf(
|
|
217
|
-
_n("%s col from %s", "%s cols from %s", width, "eightshift-ui-components"),
|
|
218
|
-
width,
|
|
219
|
-
showOuterAsGutter ? offset - 1 : offset
|
|
220
|
-
);
|
|
204
|
+
return getColumnConfigOutputText(columns, offset, width, showOuterAsGutter);
|
|
221
205
|
} });
|
|
222
206
|
export {
|
|
223
207
|
ColumnConfigSlider,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { $ as $64fa3d84918910a7$export$fabf2dc03a41866e } from "../../utils-
|
|
3
|
-
import { $ as $01b77f81d0f07f68$export$b04be29aa201d4f5, a as $01b77f81d0f07f68$export$75b6ee27786ba447 } from "../../Label-
|
|
4
|
-
import { $ as $6f909507e6374d18$export$472062a354075cee, c as $6f909507e6374d18$export$a590f758a961cb5b, a as $6f909507e6374d18$export$105594979f116971, b as $6f909507e6374d18$export$2c1b491743890dec, d as $6f909507e6374d18$export$1e7083018727fa60 } from "../../Slider-
|
|
2
|
+
import { $ as $64fa3d84918910a7$export$fabf2dc03a41866e } from "../../utils-DIBzm1e4.js";
|
|
3
|
+
import { $ as $01b77f81d0f07f68$export$b04be29aa201d4f5, a as $01b77f81d0f07f68$export$75b6ee27786ba447 } from "../../Label-9x5iLJ-Y.js";
|
|
4
|
+
import { $ as $6f909507e6374d18$export$472062a354075cee, c as $6f909507e6374d18$export$a590f758a961cb5b, a as $6f909507e6374d18$export$105594979f116971, b as $6f909507e6374d18$export$2c1b491743890dec, d as $6f909507e6374d18$export$1e7083018727fa60 } from "../../Slider-C5U5N7uM.js";
|
|
5
5
|
import { BaseControl } from "../base-control/base-control.js";
|
|
6
|
-
import {
|
|
6
|
+
import { c as clsx } from "../../lite-pbIeT7tm.js";
|
|
7
7
|
import { NumberPicker } from "../number-picker/number-picker.js";
|
|
8
8
|
import { useState, useContext } from "react";
|
|
9
9
|
import { generateMarkers } from "./utils.js";
|
|
@@ -35,6 +35,7 @@ import { generateMarkers } from "./utils.js";
|
|
|
35
35
|
* @param {Function} [props.thumbContent] - If provided, the function will be called with the current value of the thumb, and the return value will be displayed within the thumb. `(currentIndex: number) => JSX.Element`.
|
|
36
36
|
* @param {string} [props.labelClassName] - Additional classes to pass to the label.
|
|
37
37
|
* @param {Object<string, any>} [props.trackStyle] - Additional style for the track.
|
|
38
|
+
* @param {boolean} [props.hidden] - If `true`, the component is not rendered.
|
|
38
39
|
*
|
|
39
40
|
* @returns {JSX.Element} The Slider component.
|
|
40
41
|
*
|
|
@@ -74,9 +75,13 @@ const Slider = (props) => {
|
|
|
74
75
|
thumbContent,
|
|
75
76
|
labelClassName,
|
|
76
77
|
trackStyle,
|
|
78
|
+
hidden,
|
|
77
79
|
...other
|
|
78
80
|
} = props;
|
|
79
81
|
const [currentThumbIndex, setCurrentThumbIndex] = useState(-1);
|
|
82
|
+
if (hidden) {
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
80
85
|
let generatedMarkers = {};
|
|
81
86
|
if (typeof markers === "object" && Object.keys(markers).length > 0) {
|
|
82
87
|
generatedMarkers = markers;
|
|
@@ -108,13 +113,7 @@ const Slider = (props) => {
|
|
|
108
113
|
help,
|
|
109
114
|
actions: /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
110
115
|
actions,
|
|
111
|
-
!inputField && /* @__PURE__ */ jsx(
|
|
112
|
-
$6f909507e6374d18$export$a590f758a961cb5b,
|
|
113
|
-
{
|
|
114
|
-
className: classnames("es-uic-text-xs es-uic-tabular-nums es-uic-text-gray-600"),
|
|
115
|
-
children: ({ state }) => state.values.map((_, i) => state.getThumbValueLabel(i)).join(" – ")
|
|
116
|
-
}
|
|
117
|
-
),
|
|
116
|
+
!inputField && /* @__PURE__ */ jsx($6f909507e6374d18$export$a590f758a961cb5b, { className: clsx("es-uic-text-xs es-uic-tabular-nums es-uic-text-gray-600"), children: ({ state }) => state.values.map((_, i) => state.getThumbValueLabel(i)).join(" – ") }),
|
|
118
117
|
inputField && /* @__PURE__ */ jsx(
|
|
119
118
|
NumberInputField,
|
|
120
119
|
{
|
|
@@ -129,7 +128,7 @@ const Slider = (props) => {
|
|
|
129
128
|
] }),
|
|
130
129
|
labelAs: $01b77f81d0f07f68$export$b04be29aa201d4f5,
|
|
131
130
|
className: labelClassName,
|
|
132
|
-
controlContainerClassName:
|
|
131
|
+
controlContainerClassName: clsx(
|
|
133
132
|
"es-uic-flex es-uic-items-center es-uic-gap-2.5 !es-uic-space-y-0",
|
|
134
133
|
vertical && "es-uic-flex-col"
|
|
135
134
|
),
|
|
@@ -138,7 +137,7 @@ const Slider = (props) => {
|
|
|
138
137
|
/* @__PURE__ */ jsx(
|
|
139
138
|
$6f909507e6374d18$export$105594979f116971,
|
|
140
139
|
{
|
|
141
|
-
className:
|
|
140
|
+
className: clsx(
|
|
142
141
|
"es-uic-isolate es-uic-grid es-uic-grid-cols-1 es-uic-grid-rows-1",
|
|
143
142
|
vertical ? "es-uic-mx-auto es-uic-h-40 es-uic-w-4" : "es-uic-h-4 es-uic-w-full es-uic-grow"
|
|
144
143
|
),
|
|
@@ -200,7 +199,7 @@ const Slider = (props) => {
|
|
|
200
199
|
/* @__PURE__ */ jsx(
|
|
201
200
|
"div",
|
|
202
201
|
{
|
|
203
|
-
className:
|
|
202
|
+
className: clsx(
|
|
204
203
|
"es-uic-relative es-uic-col-start-1 es-uic-row-start-1 es-uic-rounded-full es-uic-border",
|
|
205
204
|
!vertical && "es-uic-h-1.5 es-uic-w-full es-uic-self-center",
|
|
206
205
|
vertical && "es-uic-h-full es-uic-w-1.5 es-uic-flex-col es-uic-justify-self-center",
|
|
@@ -212,7 +211,7 @@ const Slider = (props) => {
|
|
|
212
211
|
!noActiveHighlight && /* @__PURE__ */ jsx(
|
|
213
212
|
"div",
|
|
214
213
|
{
|
|
215
|
-
className:
|
|
214
|
+
className: clsx(
|
|
216
215
|
"es-uic-absolute es-uic-col-start-1 es-uic-row-start-1 es-uic-border",
|
|
217
216
|
!vertical && "es-uic-h-1.5 es-uic-w-full es-uic-self-center",
|
|
218
217
|
vertical && "es-uic-h-full es-uic-w-1.5 es-uic-flex-col es-uic-justify-self-center",
|
|
@@ -235,7 +234,7 @@ const Slider = (props) => {
|
|
|
235
234
|
markers && /* @__PURE__ */ jsx(
|
|
236
235
|
"div",
|
|
237
236
|
{
|
|
238
|
-
className:
|
|
237
|
+
className: clsx(
|
|
239
238
|
"es-uic-relative es-uic-col-start-1 es-uic-row-start-1",
|
|
240
239
|
!vertical && "es-uic-h-1 es-uic-w-full es-uic-self-center",
|
|
241
240
|
vertical && "es-uic-h-full es-uic-w-1 es-uic-flex-col es-uic-justify-self-center"
|
|
@@ -259,7 +258,7 @@ const Slider = (props) => {
|
|
|
259
258
|
return /* @__PURE__ */ jsx(
|
|
260
259
|
"div",
|
|
261
260
|
{
|
|
262
|
-
className:
|
|
261
|
+
className: clsx(
|
|
263
262
|
"es-uic-absolute",
|
|
264
263
|
vertical ? "es-uic-h-px es-uic-w-1" : "es-uic-h-1 es-uic-w-px es-uic-translate-x-1/2",
|
|
265
264
|
!(dotValue === min || dotValue === max || dotValue === startPoint && !noActiveHighlight || min < 0 && dotValue === 0 && !noActiveHighlight || isWithinActiveBar) && "es-uic-bg-gray-300",
|
|
@@ -272,7 +271,7 @@ const Slider = (props) => {
|
|
|
272
271
|
children: /* @__PURE__ */ jsx(
|
|
273
272
|
"span",
|
|
274
273
|
{
|
|
275
|
-
className:
|
|
274
|
+
className: clsx(
|
|
276
275
|
"es-uic-absolute es-uic-select-none es-uic-text-xs es-uic-transition-colors",
|
|
277
276
|
vertical ? "es-uic-left-3.5 es-uic-top-0 -es-uic-translate-y-1/2" : "es-uic-left-0 es-uic-top-2.5 -es-uic-translate-x-1/2",
|
|
278
277
|
(Array.isArray(value) ? value.includes(Number(dotValue)) : value === Number(dotValue) && !disabled) ? "es-uic-text-teal-700" : "es-uic-text-gray-300"
|
|
@@ -291,7 +290,7 @@ const Slider = (props) => {
|
|
|
291
290
|
{
|
|
292
291
|
index: i,
|
|
293
292
|
"aria-label": thumbLabels == null ? void 0 : thumbLabels[i],
|
|
294
|
-
className:
|
|
293
|
+
className: clsx(
|
|
295
294
|
"es-uic-absolute es-uic-size-3.5 es-uic-rounded-full es-uic-border es-uic-transition es-uic-duration-300",
|
|
296
295
|
vertical ? "!-es-uic-translate-y-1/2 !es-uic-translate-x-0" : "!-es-uic-translate-x-1/2 !es-uic-translate-y-0",
|
|
297
296
|
"es-uic-shadow dragging:es-uic-bg-teal-600 disabled:es-uic-border-gray-200 disabled:es-uic-bg-gray-100 disabled:es-uic-shadow-none",
|
|
@@ -348,13 +347,7 @@ const NumberInputField = (props) => {
|
|
|
348
347
|
...other
|
|
349
348
|
}
|
|
350
349
|
),
|
|
351
|
-
fieldIndex === -1 && !isSingleValue && /* @__PURE__ */ jsx(
|
|
352
|
-
$6f909507e6374d18$export$a590f758a961cb5b,
|
|
353
|
-
{
|
|
354
|
-
className: classnames("es-uic-text-xs es-uic-tabular-nums es-uic-text-gray-600"),
|
|
355
|
-
children: ({ state: state2 }) => state2.values.map((_, i) => state2.getThumbValueLabel(i)).join(" – ")
|
|
356
|
-
}
|
|
357
|
-
)
|
|
350
|
+
fieldIndex === -1 && !isSingleValue && /* @__PURE__ */ jsx($6f909507e6374d18$export$a590f758a961cb5b, { className: clsx("es-uic-text-xs es-uic-tabular-nums es-uic-text-gray-600"), children: ({ state: state2 }) => state2.values.map((_, i) => state2.getThumbValueLabel(i)).join(" – ") })
|
|
358
351
|
] });
|
|
359
352
|
};
|
|
360
353
|
export {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { _ as __, s as sprintf, a as _n } from "../../default-i18n-Bk1GxDHz.js";
|
|
1
2
|
/**
|
|
2
3
|
* Generates an array of markers based on the provided minimum and maximum values and step.
|
|
3
4
|
* If the step is less than 10, only markers divisible by 5 and 10 are included.
|
|
@@ -40,6 +41,48 @@ const generateMarkers = (min, max, step = 10) => {
|
|
|
40
41
|
return acc;
|
|
41
42
|
}, {});
|
|
42
43
|
};
|
|
44
|
+
/**
|
|
45
|
+
* Returns a human-readable string representing the column configuration.
|
|
46
|
+
*
|
|
47
|
+
* @param {Number} columns - Number of columns.
|
|
48
|
+
* @param {Number} offset - Offset of the column.
|
|
49
|
+
* @param {Number} width - Width of the column.
|
|
50
|
+
* @param {boolean} [showOuterAsGutter=false] - If `true`, the outer columns are skipped when counting.
|
|
51
|
+
*
|
|
52
|
+
* @returns {string} Configuration info in a human-readable format.
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* const output = getColumnConfigOutputText(12, 1, 6); // => '6 cols from 1'
|
|
56
|
+
*
|
|
57
|
+
* @preserve
|
|
58
|
+
*/
|
|
59
|
+
const getColumnConfigOutputText = (columns, offset, width, showOuterAsGutter = false) => {
|
|
60
|
+
const endOffset = offset + width - 1;
|
|
61
|
+
if (offset === 1 && endOffset === columns) {
|
|
62
|
+
return __("Full-width", "eightshift-ui-components");
|
|
63
|
+
}
|
|
64
|
+
if (offset === 1 && endOffset < columns) {
|
|
65
|
+
return sprintf(__("To col %d", "eightshift-ui-components"), showOuterAsGutter ? endOffset - 1 : endOffset);
|
|
66
|
+
}
|
|
67
|
+
if (offset > 1 && endOffset === columns) {
|
|
68
|
+
return sprintf(__("From col %d", "eightshift-ui-components"), showOuterAsGutter ? offset - 1 : offset);
|
|
69
|
+
}
|
|
70
|
+
if (showOuterAsGutter && width === 1 && offset === 1) {
|
|
71
|
+
return __("Start gutter", "eightshift-ui-components");
|
|
72
|
+
}
|
|
73
|
+
if (showOuterAsGutter && endOffset === columns) {
|
|
74
|
+
return __("End gutter", "eightshift-ui-components");
|
|
75
|
+
}
|
|
76
|
+
if (width === 1) {
|
|
77
|
+
return sprintf(__("Col %d", "eightshift-ui-components"), offset);
|
|
78
|
+
}
|
|
79
|
+
return sprintf(
|
|
80
|
+
_n("%s col from %s", "%s cols from %s", width, "eightshift-ui-components"),
|
|
81
|
+
width,
|
|
82
|
+
showOuterAsGutter ? offset - 1 : offset
|
|
83
|
+
);
|
|
84
|
+
};
|
|
43
85
|
export {
|
|
44
|
-
generateMarkers
|
|
86
|
+
generateMarkers,
|
|
87
|
+
getColumnConfigOutputText
|
|
45
88
|
};
|