@arc-ui/components 11.1.0 → 11.2.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/Select/Select.cjs.js +207 -606
- package/dist/Select/Select.esm.js +43 -442
- package/dist/Switch/Switch.cjs.d.ts +40 -0
- package/dist/Switch/Switch.cjs.js +210 -0
- package/dist/Switch/Switch.esm.d.ts +40 -0
- package/dist/Switch/Switch.esm.js +202 -0
- package/dist/Switch/package.json +7 -0
- package/dist/VerticalSpace/VerticalSpace.cjs.d.ts +1 -18
- package/dist/VerticalSpace/VerticalSpace.cjs.js +5 -20
- package/dist/VerticalSpace/VerticalSpace.esm.d.ts +1 -18
- package/dist/VerticalSpace/VerticalSpace.esm.js +4 -19
- package/dist/_shared/cjs/BtIconTickAlt2Px-b12ecc78.js +425 -0
- package/dist/_shared/cjs/VerticalSpace-65ad083c.d.ts +18 -0
- package/dist/_shared/cjs/VerticalSpace-65ad083c.js +25 -0
- package/dist/_shared/esm/BtIconTickAlt2Px-2c4ec3be.js +408 -0
- package/dist/_shared/esm/VerticalSpace-6b4f5e50.d.ts +18 -0
- package/dist/_shared/esm/VerticalSpace-6b4f5e50.js +19 -0
- package/dist/index.es.js +208 -16
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +208 -15
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/components/Switch/Switch.d.ts +13 -8
- package/dist/types/components/index.d.ts +1 -0
- package/package.json +4 -4
package/dist/index.es.js
CHANGED
|
@@ -35759,6 +35759,10 @@ var Select = function (_a) {
|
|
|
35759
35759
|
onChange && onChange(value);
|
|
35760
35760
|
setSelectedValue(value);
|
|
35761
35761
|
};
|
|
35762
|
+
var getSelectedValueName = function (value) {
|
|
35763
|
+
var _a;
|
|
35764
|
+
return (_a = options.find(function (option) { return option.value === value; })) === null || _a === void 0 ? void 0 : _a.name;
|
|
35765
|
+
};
|
|
35762
35766
|
return (React__default.createElement(FormControl, { errorMessage: errorMessage, helper: helper, htmlFor: id, label: label, labelSize: labelSize, requirementStatus: isRequired ? "required" : "optional", isDisabled: isDisabled, disclosureText: disclosureText, disclosureTitle: disclosureTitle, onClickDisclosure: onClickDisclosure },
|
|
35763
35767
|
React__default.createElement($cc7e05a45900e73f$export$be92b6f5f03c0fe9, { name: name, required: isRequired, disabled: isDisabled, defaultOpen: isDefaultOpen, value: selectedValue, onOpenChange: onOpenChange, onValueChange: function (value) { return onValueChange(value); } },
|
|
35764
35768
|
React__default.createElement($cc7e05a45900e73f$export$41fb9f06171c75f4, { id: id, name: name, onBlur: onBlur, className: classNames("arc-Select-trigger", {
|
|
@@ -35766,7 +35770,7 @@ var Select = function (_a) {
|
|
|
35766
35770
|
"arc-Select-trigger--onDarkSurface": surface === "dark",
|
|
35767
35771
|
"arc-Select-trigger--invalid": errorMessage
|
|
35768
35772
|
}) },
|
|
35769
|
-
React__default.createElement($cc7e05a45900e73f$export$4c8d1a57a761ef94, { asChild: true, "aria-label": selectedValue }, !selectedValue ? (React__default.createElement("span", { "aria-hidden": true, className: "arc-Select-placeHolder" }, placeholder)) : (React__default.createElement("span", { className: "arc-Select-valueItem" }, selectedValue))),
|
|
35773
|
+
React__default.createElement($cc7e05a45900e73f$export$4c8d1a57a761ef94, { asChild: true, "aria-label": getSelectedValueName(selectedValue) }, !selectedValue ? (React__default.createElement("span", { "aria-hidden": true, className: "arc-Select-placeHolder" }, placeholder)) : (React__default.createElement("span", { className: "arc-Select-valueItem" }, getSelectedValueName(selectedValue)))),
|
|
35770
35774
|
React__default.createElement($cc7e05a45900e73f$export$f04a61298a47a40f, { className: "arc-Select-triggerIcon" },
|
|
35771
35775
|
React__default.createElement(Icon, { icon: BtIconChevronDown2Px_2, size: 20 }))),
|
|
35772
35776
|
React__default.createElement($cc7e05a45900e73f$export$602eac185826482c, { container: arcRootElement },
|
|
@@ -36516,6 +36520,208 @@ SiteHeaderRehydrator.NavItemRehydrator = NavItemRehydrator;
|
|
|
36516
36520
|
SiteHeaderRehydrator.NavItemWithSubNavRehydrator = NavItemWithSubNavRehydrator;
|
|
36517
36521
|
SiteHeaderRehydrator.SubNavItemRehydrator = SubNavItemRehydrator;
|
|
36518
36522
|
|
|
36523
|
+
function $db6c3485150b8e66$export$1ab7ae714698c4b8(element) {
|
|
36524
|
+
const [size, setSize] = useState(undefined);
|
|
36525
|
+
$9f79659886946c16$export$e5c5a5f917a5871c(()=>{
|
|
36526
|
+
if (element) {
|
|
36527
|
+
// provide size as early as possible
|
|
36528
|
+
setSize({
|
|
36529
|
+
width: element.offsetWidth,
|
|
36530
|
+
height: element.offsetHeight
|
|
36531
|
+
});
|
|
36532
|
+
const resizeObserver = new ResizeObserver((entries)=>{
|
|
36533
|
+
if (!Array.isArray(entries)) return;
|
|
36534
|
+
// Since we only observe the one element, we don't need to loop over the
|
|
36535
|
+
// array
|
|
36536
|
+
if (!entries.length) return;
|
|
36537
|
+
const entry = entries[0];
|
|
36538
|
+
let width;
|
|
36539
|
+
let height;
|
|
36540
|
+
if ('borderBoxSize' in entry) {
|
|
36541
|
+
const borderSizeEntry = entry['borderBoxSize']; // iron out differences between browsers
|
|
36542
|
+
const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;
|
|
36543
|
+
width = borderSize['inlineSize'];
|
|
36544
|
+
height = borderSize['blockSize'];
|
|
36545
|
+
} else {
|
|
36546
|
+
// for browsers that don't support `borderBoxSize`
|
|
36547
|
+
// we calculate it ourselves to get the correct border box.
|
|
36548
|
+
width = element.offsetWidth;
|
|
36549
|
+
height = element.offsetHeight;
|
|
36550
|
+
}
|
|
36551
|
+
setSize({
|
|
36552
|
+
width: width,
|
|
36553
|
+
height: height
|
|
36554
|
+
});
|
|
36555
|
+
});
|
|
36556
|
+
resizeObserver.observe(element, {
|
|
36557
|
+
box: 'border-box'
|
|
36558
|
+
});
|
|
36559
|
+
return ()=>resizeObserver.unobserve(element)
|
|
36560
|
+
;
|
|
36561
|
+
} else // We only want to reset to `undefined` when the element becomes `null`,
|
|
36562
|
+
// not if it changes to another element.
|
|
36563
|
+
setSize(undefined);
|
|
36564
|
+
}, [
|
|
36565
|
+
element
|
|
36566
|
+
]);
|
|
36567
|
+
return size;
|
|
36568
|
+
}
|
|
36569
|
+
|
|
36570
|
+
/* -------------------------------------------------------------------------------------------------
|
|
36571
|
+
* Switch
|
|
36572
|
+
* -----------------------------------------------------------------------------------------------*/ const $6be4966fd9bbc698$var$SWITCH_NAME = 'Switch';
|
|
36573
|
+
const [$6be4966fd9bbc698$var$createSwitchContext, $6be4966fd9bbc698$export$cf7f5f17f69cbd43] = $c512c27ab02ef895$export$50c7b4e9d9f19c1($6be4966fd9bbc698$var$SWITCH_NAME);
|
|
36574
|
+
const [$6be4966fd9bbc698$var$SwitchProvider, $6be4966fd9bbc698$var$useSwitchContext] = $6be4966fd9bbc698$var$createSwitchContext($6be4966fd9bbc698$var$SWITCH_NAME);
|
|
36575
|
+
const $6be4966fd9bbc698$export$b5d5cf8927ab7262 = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
|
|
36576
|
+
const { __scopeSwitch: __scopeSwitch , name: name , checked: checkedProp , defaultChecked: defaultChecked , required: required , disabled: disabled , value: value = 'on' , onCheckedChange: onCheckedChange , ...switchProps } = props;
|
|
36577
|
+
const [button, setButton] = useState(null);
|
|
36578
|
+
const composedRefs = $6ed0406888f73fc4$export$c7b2cbe3552a0d05(forwardedRef, (node)=>setButton(node)
|
|
36579
|
+
);
|
|
36580
|
+
const hasConsumerStoppedPropagationRef = useRef(false); // We set this to true by default so that events bubble to forms without JS (SSR)
|
|
36581
|
+
const isFormControl = button ? Boolean(button.closest('form')) : true;
|
|
36582
|
+
const [checked = false, setChecked] = $71cd76cc60e0454e$export$6f32135080cb4c3({
|
|
36583
|
+
prop: checkedProp,
|
|
36584
|
+
defaultProp: defaultChecked,
|
|
36585
|
+
onChange: onCheckedChange
|
|
36586
|
+
});
|
|
36587
|
+
return /*#__PURE__*/ createElement($6be4966fd9bbc698$var$SwitchProvider, {
|
|
36588
|
+
scope: __scopeSwitch,
|
|
36589
|
+
checked: checked,
|
|
36590
|
+
disabled: disabled
|
|
36591
|
+
}, /*#__PURE__*/ createElement($8927f6f2acc4f386$export$250ffa63cdc0d034.button, _extends({
|
|
36592
|
+
type: "button",
|
|
36593
|
+
role: "switch",
|
|
36594
|
+
"aria-checked": checked,
|
|
36595
|
+
"aria-required": required,
|
|
36596
|
+
"data-state": $6be4966fd9bbc698$var$getState(checked),
|
|
36597
|
+
"data-disabled": disabled ? '' : undefined,
|
|
36598
|
+
disabled: disabled,
|
|
36599
|
+
value: value
|
|
36600
|
+
}, switchProps, {
|
|
36601
|
+
ref: composedRefs,
|
|
36602
|
+
onClick: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onClick, (event)=>{
|
|
36603
|
+
setChecked((prevChecked)=>!prevChecked
|
|
36604
|
+
);
|
|
36605
|
+
if (isFormControl) {
|
|
36606
|
+
hasConsumerStoppedPropagationRef.current = event.isPropagationStopped(); // if switch is in a form, stop propagation from the button so that we only propagate
|
|
36607
|
+
// one click event (from the input). We propagate changes from an input so that native
|
|
36608
|
+
// form validation works and form events reflect switch updates.
|
|
36609
|
+
if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();
|
|
36610
|
+
}
|
|
36611
|
+
})
|
|
36612
|
+
})), isFormControl && /*#__PURE__*/ createElement($6be4966fd9bbc698$var$BubbleInput, {
|
|
36613
|
+
control: button,
|
|
36614
|
+
bubbles: !hasConsumerStoppedPropagationRef.current,
|
|
36615
|
+
name: name,
|
|
36616
|
+
value: value,
|
|
36617
|
+
checked: checked,
|
|
36618
|
+
required: required,
|
|
36619
|
+
disabled: disabled // We transform because the input is absolutely positioned but we have
|
|
36620
|
+
,
|
|
36621
|
+
style: {
|
|
36622
|
+
transform: 'translateX(-100%)'
|
|
36623
|
+
}
|
|
36624
|
+
}));
|
|
36625
|
+
});
|
|
36626
|
+
/* -------------------------------------------------------------------------------------------------
|
|
36627
|
+
* SwitchThumb
|
|
36628
|
+
* -----------------------------------------------------------------------------------------------*/ const $6be4966fd9bbc698$var$THUMB_NAME = 'SwitchThumb';
|
|
36629
|
+
const $6be4966fd9bbc698$export$4d07bf653ea69106 = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
|
|
36630
|
+
const { __scopeSwitch: __scopeSwitch , ...thumbProps } = props;
|
|
36631
|
+
const context = $6be4966fd9bbc698$var$useSwitchContext($6be4966fd9bbc698$var$THUMB_NAME, __scopeSwitch);
|
|
36632
|
+
return /*#__PURE__*/ createElement($8927f6f2acc4f386$export$250ffa63cdc0d034.span, _extends({
|
|
36633
|
+
"data-state": $6be4966fd9bbc698$var$getState(context.checked),
|
|
36634
|
+
"data-disabled": context.disabled ? '' : undefined
|
|
36635
|
+
}, thumbProps, {
|
|
36636
|
+
ref: forwardedRef
|
|
36637
|
+
}));
|
|
36638
|
+
});
|
|
36639
|
+
/* ---------------------------------------------------------------------------------------------- */ const $6be4966fd9bbc698$var$BubbleInput = (props)=>{
|
|
36640
|
+
const { control: control , checked: checked , bubbles: bubbles = true , ...inputProps } = props;
|
|
36641
|
+
const ref = useRef(null);
|
|
36642
|
+
const prevChecked = $010c2913dbd2fe3d$export$5cae361ad82dce8b(checked);
|
|
36643
|
+
const controlSize = $db6c3485150b8e66$export$1ab7ae714698c4b8(control); // Bubble checked change to parents (e.g form change event)
|
|
36644
|
+
useEffect(()=>{
|
|
36645
|
+
const input = ref.current;
|
|
36646
|
+
const inputProto = window.HTMLInputElement.prototype;
|
|
36647
|
+
const descriptor = Object.getOwnPropertyDescriptor(inputProto, 'checked');
|
|
36648
|
+
const setChecked = descriptor.set;
|
|
36649
|
+
if (prevChecked !== checked && setChecked) {
|
|
36650
|
+
const event = new Event('click', {
|
|
36651
|
+
bubbles: bubbles
|
|
36652
|
+
});
|
|
36653
|
+
setChecked.call(input, checked);
|
|
36654
|
+
input.dispatchEvent(event);
|
|
36655
|
+
}
|
|
36656
|
+
}, [
|
|
36657
|
+
prevChecked,
|
|
36658
|
+
checked,
|
|
36659
|
+
bubbles
|
|
36660
|
+
]);
|
|
36661
|
+
return /*#__PURE__*/ createElement("input", _extends({
|
|
36662
|
+
type: "checkbox",
|
|
36663
|
+
"aria-hidden": true,
|
|
36664
|
+
defaultChecked: checked
|
|
36665
|
+
}, inputProps, {
|
|
36666
|
+
tabIndex: -1,
|
|
36667
|
+
ref: ref,
|
|
36668
|
+
style: {
|
|
36669
|
+
...props.style,
|
|
36670
|
+
...controlSize,
|
|
36671
|
+
position: 'absolute',
|
|
36672
|
+
pointerEvents: 'none',
|
|
36673
|
+
opacity: 0,
|
|
36674
|
+
margin: 0
|
|
36675
|
+
}
|
|
36676
|
+
}));
|
|
36677
|
+
};
|
|
36678
|
+
function $6be4966fd9bbc698$var$getState(checked) {
|
|
36679
|
+
return checked ? 'checked' : 'unchecked';
|
|
36680
|
+
}
|
|
36681
|
+
const $6be4966fd9bbc698$export$be92b6f5f03c0fe9 = $6be4966fd9bbc698$export$b5d5cf8927ab7262;
|
|
36682
|
+
const $6be4966fd9bbc698$export$6521433ed15a34db = $6be4966fd9bbc698$export$4d07bf653ea69106;
|
|
36683
|
+
|
|
36684
|
+
/**
|
|
36685
|
+
* Use `VerticalSpace` to create vertical space between components.
|
|
36686
|
+
*/
|
|
36687
|
+
var VerticalSpace = function (_a) {
|
|
36688
|
+
var _b;
|
|
36689
|
+
var _c = _a.isDebugVisible, isDebugVisible = _c === void 0 ? false : _c, _d = _a.size, size = _d === void 0 ? "24" : _d, props = __rest$2(_a, ["isDebugVisible", "size"]);
|
|
36690
|
+
return (React__default.createElement("div", __assign$2({ className: classNames((_b = {
|
|
36691
|
+
"arc-VerticalSpace": true
|
|
36692
|
+
},
|
|
36693
|
+
_b["arc-VerticalSpace--size".concat(size)] = size && size !== "24",
|
|
36694
|
+
_b["arc-VerticalSpace--debugVisible"] = isDebugVisible,
|
|
36695
|
+
_b)) }, filterDataAttrs(props))));
|
|
36696
|
+
};
|
|
36697
|
+
|
|
36698
|
+
/** Use `Switch` to toggle between checked and not checked. */
|
|
36699
|
+
var Switch = function (_a) {
|
|
36700
|
+
var defaultChecked = _a.defaultChecked, onCheckedChange = _a.onCheckedChange, label = _a.label, name = _a.name, onBlur = _a.onBlur, value = _a.value, _b = _a.isDisabled, isDisabled = _b === void 0 ? false : _b, errorMessage = _a.errorMessage, id = _a.id, _c = _a.labelSize, labelSize = _c === void 0 ? "s" : _c, statusText = _a.statusText, _d = _a.hideLabel, hideLabel = _d === void 0 ? false : _d;
|
|
36701
|
+
var surface = useContext(Context$3).surface;
|
|
36702
|
+
return (React__default.createElement(FormControl, { errorMessage: errorMessage, htmlFor: id, isDisabled: isDisabled, label: hideLabel ? "" : label, labelSize: labelSize, requirementStatus: "not-applicable" },
|
|
36703
|
+
!hideLabel && React__default.createElement(VerticalSpace, { size: "8" }),
|
|
36704
|
+
React__default.createElement("div", { className: "arc-Switch-container" },
|
|
36705
|
+
React__default.createElement($6be4966fd9bbc698$export$be92b6f5f03c0fe9, { id: id, "aria-label": label, defaultChecked: defaultChecked, name: name, value: value, onBlur: onBlur, onCheckedChange: onCheckedChange, disabled: isDisabled, className: classNames("arc-Switch", {
|
|
36706
|
+
"arc-Switch--large": labelSize === "l",
|
|
36707
|
+
"arc-Switch--isDisabled": isDisabled,
|
|
36708
|
+
"arc-Switch--onDarkSurface": surface === "dark"
|
|
36709
|
+
}) },
|
|
36710
|
+
React__default.createElement("div", { className: "arc-Switch-wrapper" },
|
|
36711
|
+
React__default.createElement($6be4966fd9bbc698$export$6521433ed15a34db, { className: "arc-Switch-thumb" },
|
|
36712
|
+
React__default.createElement("div", { className: "arc-Switch-thumbIcon" },
|
|
36713
|
+
React__default.createElement("div", { className: "arc-Switch-icon", "data-testid": "arc-switch-thumb-icon" },
|
|
36714
|
+
React__default.createElement(Icon, { icon: BtIconTickAlt2Px_2, color: surface === "dark" ? "brand" : "brand", size: labelSize === "l" ? 24 : 16 })))))),
|
|
36715
|
+
React__default.createElement("div", { className: classNames("arc-Switch-statusText", {
|
|
36716
|
+
"arc-Switch-statusText--isDisabled": isDisabled,
|
|
36717
|
+
"arc-Switch-statusText--onDarkSurface": surface === "dark"
|
|
36718
|
+
}) },
|
|
36719
|
+
React__default.createElement(Text, { size: labelSize },
|
|
36720
|
+
" ",
|
|
36721
|
+
statusText,
|
|
36722
|
+
" ")))));
|
|
36723
|
+
};
|
|
36724
|
+
|
|
36519
36725
|
/** Use `Badge` component to visually display a small amount of information, such as notification counts or status indicators. */
|
|
36520
36726
|
var Badge = function (_a) {
|
|
36521
36727
|
var _b, _c;
|
|
@@ -36588,19 +36794,5 @@ var Truncate = function (_a) {
|
|
|
36588
36794
|
return (React__default.createElement("div", { className: "arc-Truncate", style: { maxWidth: "".concat(maxWidth, "%") }, title: title }, children));
|
|
36589
36795
|
};
|
|
36590
36796
|
|
|
36591
|
-
|
|
36592
|
-
* Use `VerticalSpace` to create vertical space between components.
|
|
36593
|
-
*/
|
|
36594
|
-
var VerticalSpace = function (_a) {
|
|
36595
|
-
var _b;
|
|
36596
|
-
var _c = _a.isDebugVisible, isDebugVisible = _c === void 0 ? false : _c, _d = _a.size, size = _d === void 0 ? "24" : _d, props = __rest$2(_a, ["isDebugVisible", "size"]);
|
|
36597
|
-
return (React__default.createElement("div", __assign$2({ className: classNames((_b = {
|
|
36598
|
-
"arc-VerticalSpace": true
|
|
36599
|
-
},
|
|
36600
|
-
_b["arc-VerticalSpace--size".concat(size)] = size && size !== "24",
|
|
36601
|
-
_b["arc-VerticalSpace--debugVisible"] = isDebugVisible,
|
|
36602
|
-
_b)) }, filterDataAttrs(props))));
|
|
36603
|
-
};
|
|
36604
|
-
|
|
36605
|
-
export { Align, Badge, Base, BrandLogo, Breadcrumbs, Button, Card, Checkbox, Clock, Clock_rehydrator as ClockRehydrator, Columns, Curve, Disclosure, Elevation, FormControl, Group, Heading, Icon, Image, Markup, Poster, RadioGroup, Rule, Section, Select, SiteFooter, SiteFooter_rehydrator as SiteFooterRehydrator, SiteHeader, SiteHeaderRehydrator, Surface, Context$3 as SurfaceContext, Text, TextInput, Truncate, UniversalHeader, VerticalSpace, VisuallyHidden };
|
|
36797
|
+
export { Align, Badge, Base, BrandLogo, Breadcrumbs, Button, Card, Checkbox, Clock, Clock_rehydrator as ClockRehydrator, Columns, Curve, Disclosure, Elevation, FormControl, Group, Heading, Icon, Image, Markup, Poster, RadioGroup, Rule, Section, Select, SiteFooter, SiteFooter_rehydrator as SiteFooterRehydrator, SiteHeader, SiteHeaderRehydrator, Surface, Context$3 as SurfaceContext, Switch, Text, TextInput, Truncate, UniversalHeader, VerticalSpace, VisuallyHidden };
|
|
36606
36798
|
//# sourceMappingURL=index.es.js.map
|