@selectwin/kit 0.1.197 → 0.1.198
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 +1 -1
- package/dist/SelectAccordion.js +54 -0
- package/dist/SelectActionCard.js +45 -0
- package/dist/SelectActionList.js +55 -0
- package/dist/SelectActionMenu.js +33 -0
- package/dist/SelectAddButton.js +22 -0
- package/dist/SelectAddCard.js +32 -0
- package/dist/SelectAlert.js +36 -0
- package/dist/SelectAssistant.js +184 -0
- package/dist/SelectAuthFx.js +626 -0
- package/dist/SelectAvatar.js +34 -0
- package/dist/SelectBackLink.js +22 -0
- package/dist/SelectBadge.js +18 -0
- package/dist/SelectBalanceCard.js +167 -0
- package/dist/SelectBankAccountField.js +71 -0
- package/dist/SelectBankIcon.js +162 -0
- package/dist/SelectBarChart.js +88 -0
- package/dist/SelectBoxPlot.js +127 -0
- package/dist/SelectBrandIcon.js +206 -0
- package/dist/SelectBreadcrumb.js +45 -0
- package/dist/SelectBuilderLayout.js +49 -0
- package/dist/SelectBuilderWorkspace.js +273 -0
- package/dist/SelectBullet.js +59 -0
- package/dist/SelectBump.js +93 -0
- package/dist/SelectButton.js +51 -0
- package/dist/SelectCalendar.js +450 -0
- package/dist/SelectCalendarHeatmap.js +84 -0
- package/dist/SelectCandlestick.js +97 -0
- package/dist/SelectCard.js +52 -0
- package/dist/SelectCardGrid.js +76 -0
- package/dist/SelectCertificatePreview.js +108 -0
- package/dist/SelectChannelPreview.js +124 -0
- package/dist/SelectChartCard.js +50 -0
- package/dist/SelectChartLegend.js +34 -0
- package/dist/SelectChipInput.js +110 -0
- package/dist/SelectChoiceCard.js +113 -0
- package/dist/SelectChord.js +93 -0
- package/dist/SelectCirclePack.js +111 -0
- package/dist/SelectCodeBlock.js +51 -0
- package/dist/SelectCollapsible.js +40 -0
- package/dist/SelectColorField.js +283 -0
- package/dist/SelectColumnChart.js +222 -0
- package/dist/SelectComboChart.js +139 -0
- package/dist/SelectCombobox.js +158 -0
- package/dist/SelectConfirmModal.js +42 -0
- package/dist/SelectConversation.js +97 -0
- package/dist/SelectCopyRow.js +61 -0
- package/dist/SelectCopyableId.js +45 -0
- package/dist/SelectDataTable.js +247 -0
- package/dist/SelectDateField.js +255 -0
- package/dist/SelectDatePicker.js +311 -0
- package/dist/SelectDateRangeField.js +57 -0
- package/dist/SelectDetail.js +49 -0
- package/dist/SelectDisclosureButton.js +23 -0
- package/dist/SelectDivider.js +20 -0
- package/dist/SelectDnsRecords.js +74 -0
- package/dist/SelectDocumentField.js +24 -0
- package/dist/SelectDonut.js +103 -0
- package/dist/SelectDotField.js +134 -0
- package/dist/SelectDumbbell.js +100 -0
- package/dist/SelectFactStrip.js +42 -0
- package/dist/SelectFeeBreakdown.js +88 -0
- package/dist/SelectField.d.ts +24 -6
- package/dist/SelectField.js +196 -0
- package/dist/SelectFieldGrid.js +15 -0
- package/dist/SelectFileDropzone.js +160 -0
- package/dist/SelectFileTile.js +53 -0
- package/dist/SelectFilterBar.js +292 -0
- package/dist/SelectFilterChip.js +32 -0
- package/dist/SelectFlowCanvas.js +282 -0
- package/dist/SelectFormLayout.js +21 -0
- package/dist/SelectFormModal.js +53 -0
- package/dist/SelectFunnel.js +49 -0
- package/dist/SelectGauge.js +74 -0
- package/dist/SelectGaugeBands.js +78 -0
- package/dist/SelectGlobe.js +472 -0
- package/dist/SelectHeatmap.js +76 -0
- package/dist/SelectHexbin.js +59 -0
- package/dist/SelectHorizontalBar.js +100 -0
- package/dist/SelectHtmlFrame.js +30 -0
- package/dist/SelectIcicle.js +87 -0
- package/dist/SelectIcon.js +21 -0
- package/dist/SelectIconButton.js +24 -0
- package/dist/SelectIconPicker.js +79 -0
- package/dist/SelectIconTile.js +17 -0
- package/dist/SelectIdentityFooter.js +30 -0
- package/dist/SelectImageField.js +56 -0
- package/dist/SelectImageGalleryField.js +243 -0
- package/dist/SelectImageUploadField.js +155 -0
- package/dist/SelectImageUrlsField.js +68 -0
- package/dist/SelectImageZoomModal.js +26 -0
- package/dist/SelectInfoTip.js +31 -0
- package/dist/SelectInsight.js +777 -0
- package/dist/SelectJourney.js +68 -0
- package/dist/SelectJsonViewer.js +294 -0
- package/dist/SelectKanban.js +124 -0
- package/dist/SelectKbd.js +15 -0
- package/dist/SelectKeyValueEditor.js +88 -0
- package/dist/SelectKpiBand.js +17 -0
- package/dist/SelectKpiCard.js +54 -0
- package/dist/SelectLauncher.js +58 -0
- package/dist/SelectLayout.js +100 -0
- package/dist/SelectLineChart.js +161 -0
- package/dist/SelectLinkButton.js +18 -0
- package/dist/SelectListCard.js +89 -0
- package/dist/SelectLoader.js +27 -0
- package/dist/SelectLocale.d.ts +2 -0
- package/dist/SelectLocale.js +191 -0
- package/dist/SelectMail.js +811 -0
- package/dist/SelectMailEditor.js +224 -0
- package/dist/SelectMarimekko.js +87 -0
- package/dist/SelectMarkStack.js +30 -0
- package/dist/SelectMediaCell.js +28 -0
- package/dist/SelectMenu.js +110 -0
- package/dist/SelectMiniStats.js +37 -0
- package/dist/SelectModal.js +177 -0
- package/dist/SelectMoney.js +136 -0
- package/dist/SelectMoneyField.js +82 -0
- package/dist/SelectNetwork.js +122 -0
- package/dist/SelectNote.js +26 -0
- package/dist/SelectNumberField.js +87 -0
- package/dist/SelectNumberedList.js +30 -0
- package/dist/SelectOfferPrice.js +48 -0
- package/dist/SelectOfflineModal.js +31 -0
- package/dist/SelectOptionList.js +54 -0
- package/dist/SelectOtpInput.js +64 -0
- package/dist/SelectPage.js +85 -0
- package/dist/SelectPagination.js +82 -0
- package/dist/SelectPanel.js +41 -0
- package/dist/SelectParallel.js +100 -0
- package/dist/SelectPareto.js +134 -0
- package/dist/SelectPasswordStrength.js +82 -0
- package/dist/SelectPaymentBrand.js +213 -0
- package/dist/SelectPaymentCard.js +53 -0
- package/dist/SelectPhoneField.js +139 -0
- package/dist/SelectPips.js +25 -0
- package/dist/SelectPlanCard.js +64 -0
- package/dist/SelectPolarArea.js +82 -0
- package/dist/SelectPopover.js +101 -0
- package/dist/SelectPreviewFrame.js +119 -0
- package/dist/SelectProgressBar.js +54 -0
- package/dist/SelectProgressList.js +58 -0
- package/dist/SelectPyramid.js +116 -0
- package/dist/SelectQrCode.d.ts +12 -0
- package/dist/SelectQrCode.js +51 -0
- package/dist/SelectQuestionStage.js +183 -0
- package/dist/SelectRadar.js +118 -0
- package/dist/SelectRadialBar.js +103 -0
- package/dist/SelectRadioGroup.js +54 -0
- package/dist/SelectRangeBar.js +89 -0
- package/dist/SelectRating.js +58 -0
- package/dist/SelectRatingQuote.js +31 -0
- package/dist/SelectRecordCard.js +144 -0
- package/dist/SelectRegions.js +23 -0
- package/dist/SelectRepeatingFieldArray.js +104 -0
- package/dist/SelectResendButton.js +44 -0
- package/dist/SelectRetryStatus.js +79 -0
- package/dist/SelectRing.js +53 -0
- package/dist/SelectRowActions.js +32 -0
- package/dist/SelectSankey.js +92 -0
- package/dist/SelectScatter.js +79 -0
- package/dist/SelectSearchInput.d.ts +8 -2
- package/dist/SelectSearchInput.js +38 -0
- package/dist/SelectSearchMenu.js +128 -0
- package/dist/SelectSection.js +83 -0
- package/dist/SelectSegmented.js +95 -0
- package/dist/SelectSelect.d.ts +19 -5
- package/dist/SelectSelect.js +84 -0
- package/dist/SelectSetting.js +54 -0
- package/dist/SelectSetupGuide.js +187 -0
- package/dist/SelectShareBar.js +139 -0
- package/dist/SelectSideNav.js +263 -0
- package/dist/SelectSkeleton.js +56 -0
- package/dist/SelectSlope.js +129 -0
- package/dist/SelectSortable.js +31 -0
- package/dist/SelectSparkline.js +66 -0
- package/dist/SelectSplitChain.js +52 -0
- package/dist/SelectSpotlight.js +81 -0
- package/dist/SelectStackedArea.js +117 -0
- package/dist/SelectStatusBadge.js +81 -0
- package/dist/SelectStatusPage.js +62 -0
- package/dist/SelectSteps.js +54 -0
- package/dist/SelectStreamGraph.js +99 -0
- package/dist/SelectSunburst.js +101 -0
- package/dist/SelectSurface.js +41 -0
- package/dist/SelectSwitch.js +24 -0
- package/dist/SelectSwitchField.d.ts +5 -1
- package/dist/SelectSwitchField.js +45 -0
- package/dist/SelectTable.js +243 -0
- package/dist/SelectTabs.js +63 -0
- package/dist/SelectTagSelect.js +144 -0
- package/dist/SelectTaskCard.js +44 -0
- package/dist/SelectText.js +25 -0
- package/dist/SelectTextarea.d.ts +15 -4
- package/dist/SelectTextarea.js +58 -0
- package/dist/SelectThemeSwitcher.js +66 -0
- package/dist/SelectThumbnail.js +41 -0
- package/dist/SelectTicker.js +69 -0
- package/dist/SelectTile.js +62 -0
- package/dist/SelectTileMap.js +268 -0
- package/dist/SelectTimeline.js +76 -0
- package/dist/SelectToast.js +159 -0
- package/dist/SelectToggle.js +80 -0
- package/dist/SelectTogglePanel.js +44 -0
- package/dist/SelectTokenTextarea.js +173 -0
- package/dist/SelectTooltip.js +100 -0
- package/dist/SelectTour.js +210 -0
- package/dist/SelectTree.js +86 -0
- package/dist/SelectTreemap.js +130 -0
- package/dist/SelectUnitInput.js +53 -0
- package/dist/SelectVenn.js +75 -0
- package/dist/SelectViolin.js +95 -0
- package/dist/SelectWaffle.js +56 -0
- package/dist/SelectWaterfall.js +123 -0
- package/dist/SelectWordCloud.js +27 -0
- package/dist/SelectWorkspaceSwitcher.js +40 -0
- package/dist/SelectZoomThumbnail.js +40 -0
- package/dist/chartTip.js +70 -0
- package/dist/chartUtils.js +146 -0
- package/dist/detectSelectTheme.js +8 -0
- package/dist/icons.js +1696 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +213 -32711
- package/dist/internal/dateValue.js +12 -0
- package/dist/internal/document.js +16 -0
- package/dist/internal/flags.js +187 -0
- package/dist/internal/frame.js +17 -0
- package/dist/internal/inert.js +13 -0
- package/dist/internal/layers.d.ts +8 -0
- package/dist/internal/layers.js +35 -0
- package/dist/internal/listChrome.js +150 -0
- package/dist/internal/money.js +16 -0
- package/dist/internal/nativeProps.d.ts +11 -0
- package/dist/internal/nativeProps.js +14 -0
- package/dist/internal/phone.js +52 -0
- package/dist/internal/safeHref.js +17 -0
- package/dist/internal/useFocusTrap.d.ts +7 -1
- package/dist/internal/useFocusTrap.js +40 -0
- package/dist/internal/useMatchMedia.js +18 -0
- package/dist/internal/useSelectReveal.js +76 -0
- package/dist/jsonTree.js +183 -0
- package/dist/positioning.js +22 -0
- package/dist/spacing.js +22 -0
- package/dist/style.css +1 -1
- package/dist/uploadUtils.js +29 -0
- package/dist/worldLand.js +10401 -0
- package/package.json +4 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { SearchIcon as e } from "./icons.js";
|
|
2
|
+
import { mergeNative as t } from "./internal/nativeProps.js";
|
|
3
|
+
import { useSelectMessages as n } from "./SelectLocale.js";
|
|
4
|
+
import { forwardRef as r } from "react";
|
|
5
|
+
import { jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
6
|
+
//#region src/SelectSearchInput.tsx
|
|
7
|
+
var o = r(function({ value: r, onChange: o, placeholder: s, shortcut: c, inputLabel: l, inputProps: u, inputRef: d, className: f, ...p }, m) {
|
|
8
|
+
let h = n().common.searchPlaceholder, g = s ?? h, _ = t(u, { placeholder: g });
|
|
9
|
+
return /* @__PURE__ */ a("div", {
|
|
10
|
+
ref: m,
|
|
11
|
+
...p,
|
|
12
|
+
className: `select-search${f ? " " + f : ""}`,
|
|
13
|
+
children: [
|
|
14
|
+
/* @__PURE__ */ i("span", {
|
|
15
|
+
className: "select-search__icon",
|
|
16
|
+
"aria-hidden": "true",
|
|
17
|
+
children: /* @__PURE__ */ i(e, {})
|
|
18
|
+
}),
|
|
19
|
+
/* @__PURE__ */ i("input", {
|
|
20
|
+
..._,
|
|
21
|
+
ref: d,
|
|
22
|
+
className: "select-search__input",
|
|
23
|
+
type: "search",
|
|
24
|
+
value: r,
|
|
25
|
+
onChange: (e) => o(e.target.value, e),
|
|
26
|
+
"aria-label": l ?? _["aria-label"] ?? g
|
|
27
|
+
}),
|
|
28
|
+
c && /* @__PURE__ */ i("kbd", {
|
|
29
|
+
className: "select-search__kbd",
|
|
30
|
+
children: c
|
|
31
|
+
})
|
|
32
|
+
]
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
//#endregion
|
|
36
|
+
export { o as SelectSearchInput };
|
|
37
|
+
|
|
38
|
+
//# sourceMappingURL=SelectSearchInput.js.map
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { CheckIcon as e } from "./icons.js";
|
|
2
|
+
import { useSelectMessages as t } from "./SelectLocale.js";
|
|
3
|
+
import { useSelectReveal as n } from "./internal/useSelectReveal.js";
|
|
4
|
+
import { SelectSearchInput as r } from "./SelectSearchInput.js";
|
|
5
|
+
import { useEffect as i, useRef as a } from "react";
|
|
6
|
+
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
7
|
+
//#region src/SelectSearchMenu.tsx
|
|
8
|
+
var c = "[role=\"option\"]:not([disabled])";
|
|
9
|
+
function l({ search: e, onSearchChange: n, searchPlaceholder: l, status: d, footer: f, width: p = "min(22rem, 86vw)", autoFocus: m = !1, selectFirstOnEnter: h = !1, listMaxHeight: g, children: _ }) {
|
|
10
|
+
let v = t().common.searchPlaceholder, y = l ?? v, b = a(null);
|
|
11
|
+
return i(() => {
|
|
12
|
+
if (!m) return;
|
|
13
|
+
let e = window.setTimeout(() => {
|
|
14
|
+
var e;
|
|
15
|
+
return (e = b.current) == null || (e = e.querySelector("input")) == null ? void 0 : e.focus({ preventScroll: !0 });
|
|
16
|
+
}, 0);
|
|
17
|
+
return () => window.clearTimeout(e);
|
|
18
|
+
}, [m]), /* @__PURE__ */ s("div", {
|
|
19
|
+
ref: b,
|
|
20
|
+
className: "select-combobox__panel select-searchmenu",
|
|
21
|
+
style: { width: p },
|
|
22
|
+
onKeyDown: (e) => {
|
|
23
|
+
let t = b.current;
|
|
24
|
+
if (!t) return;
|
|
25
|
+
let n = t.querySelector("input"), r = Array.from(t.querySelectorAll(c)), i = r.indexOf(document.activeElement);
|
|
26
|
+
if (e.key === "ArrowDown") {
|
|
27
|
+
var a;
|
|
28
|
+
if (r.length === 0) return;
|
|
29
|
+
e.preventDefault(), (a = r[i === -1 ? 0 : Math.min(i + 1, r.length - 1)]) == null || a.focus();
|
|
30
|
+
} else if (e.key === "ArrowUp") {
|
|
31
|
+
var o;
|
|
32
|
+
if (i === -1) return;
|
|
33
|
+
e.preventDefault(), i === 0 ? n == null || n.focus() : (o = r[i - 1]) == null || o.focus();
|
|
34
|
+
} else if ((e.key === "Home" || e.key === "End") && i !== -1) {
|
|
35
|
+
var s;
|
|
36
|
+
e.preventDefault(), (s = r[e.key === "Home" ? 0 : r.length - 1]) == null || s.focus();
|
|
37
|
+
} else if (e.key === "Enter" && h && document.activeElement === n) {
|
|
38
|
+
let t = r[0];
|
|
39
|
+
if (!t) return;
|
|
40
|
+
e.preventDefault(), t.click();
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
children: [
|
|
44
|
+
/* @__PURE__ */ o("div", {
|
|
45
|
+
className: "select-combobox__search",
|
|
46
|
+
children: /* @__PURE__ */ o(r, {
|
|
47
|
+
value: e,
|
|
48
|
+
onChange: n,
|
|
49
|
+
placeholder: y
|
|
50
|
+
})
|
|
51
|
+
}),
|
|
52
|
+
d != null && d !== !1 ? /* @__PURE__ */ o("div", {
|
|
53
|
+
className: "select-combobox__empty",
|
|
54
|
+
role: "status",
|
|
55
|
+
children: d
|
|
56
|
+
}) : /* @__PURE__ */ o(u, {
|
|
57
|
+
maxHeight: g,
|
|
58
|
+
children: _
|
|
59
|
+
}),
|
|
60
|
+
f != null && f !== !1 ? /* @__PURE__ */ o("div", {
|
|
61
|
+
className: "select-searchmenu__footer",
|
|
62
|
+
children: f
|
|
63
|
+
}) : null
|
|
64
|
+
]
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
function u({ children: e, maxHeight: t }) {
|
|
68
|
+
let r = n({
|
|
69
|
+
selector: ".select-combobox__option",
|
|
70
|
+
y: 6,
|
|
71
|
+
duration: .3,
|
|
72
|
+
stagger: .02
|
|
73
|
+
});
|
|
74
|
+
return /* @__PURE__ */ o("div", {
|
|
75
|
+
className: "select-combobox__list",
|
|
76
|
+
role: "listbox",
|
|
77
|
+
ref: r,
|
|
78
|
+
style: t ? { maxHeight: t } : void 0,
|
|
79
|
+
children: e
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
function d({ label: e, children: t }) {
|
|
83
|
+
return (Array.isArray(t) ? t.some((e) => e != null && e !== !1) : t != null && t !== !1) ? /* @__PURE__ */ s("div", {
|
|
84
|
+
role: "group",
|
|
85
|
+
className: "select-searchmenu__group",
|
|
86
|
+
"aria-label": typeof e == "string" ? e : void 0,
|
|
87
|
+
children: [/* @__PURE__ */ o("div", {
|
|
88
|
+
className: "select-searchmenu__grouplabel",
|
|
89
|
+
"aria-hidden": typeof e == "string" || void 0,
|
|
90
|
+
children: e
|
|
91
|
+
}), t]
|
|
92
|
+
}) : null;
|
|
93
|
+
}
|
|
94
|
+
function f({ label: t, secondary: n, trailing: r, selected: i = !1, disabled: a = !1, onSelect: c }) {
|
|
95
|
+
return /* @__PURE__ */ s("button", {
|
|
96
|
+
type: "button",
|
|
97
|
+
role: "option",
|
|
98
|
+
"aria-selected": i,
|
|
99
|
+
disabled: a,
|
|
100
|
+
className: `select-combobox__option${i ? " is-selected" : ""}`,
|
|
101
|
+
onClick: c,
|
|
102
|
+
children: [
|
|
103
|
+
/* @__PURE__ */ s("span", {
|
|
104
|
+
className: "select-combobox__optiontext",
|
|
105
|
+
children: [/* @__PURE__ */ o("span", {
|
|
106
|
+
className: "select-combobox__optionlabel",
|
|
107
|
+
children: t
|
|
108
|
+
}), n != null && n !== "" ? /* @__PURE__ */ o("span", {
|
|
109
|
+
className: "select-combobox__optionsecondary",
|
|
110
|
+
children: n
|
|
111
|
+
}) : null]
|
|
112
|
+
}),
|
|
113
|
+
r != null && r !== "" ? /* @__PURE__ */ o("span", {
|
|
114
|
+
className: "select-searchmenu__trailing",
|
|
115
|
+
children: r
|
|
116
|
+
}) : null,
|
|
117
|
+
i ? /* @__PURE__ */ o("span", {
|
|
118
|
+
className: "select-combobox__check",
|
|
119
|
+
"aria-hidden": "true",
|
|
120
|
+
children: /* @__PURE__ */ o(e, {})
|
|
121
|
+
}) : null
|
|
122
|
+
]
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
//#endregion
|
|
126
|
+
export { l as SelectSearchMenu, d as SelectSearchMenuGroup, f as SelectSearchMenuOption };
|
|
127
|
+
|
|
128
|
+
//# sourceMappingURL=SelectSearchMenu.js.map
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/* empty css */
|
|
2
|
+
import { ChevronDownIcon as e } from "./icons.js";
|
|
3
|
+
import { SelectInfoTip as t } from "./SelectInfoTip.js";
|
|
4
|
+
import { FrameBody as n, useInsideFrame as r } from "./internal/frame.js";
|
|
5
|
+
import { forwardRef as i, useState as a } from "react";
|
|
6
|
+
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
7
|
+
//#region src/SelectSection.tsx
|
|
8
|
+
var c = i(function({ title: i, help: c, description: l, action: u, collapsible: d = !1, defaultOpen: f = !0, footer: p, flush: m = !1, children: h, className: g, ..._ }, v) {
|
|
9
|
+
let [y, b] = a(f), x = (r() ? " select-section--nested" : "") + (m ? " select-section--flush" : "");
|
|
10
|
+
return d ? /* @__PURE__ */ s("div", {
|
|
11
|
+
ref: v,
|
|
12
|
+
..._,
|
|
13
|
+
className: `select-section select-section--collapsible${x}${y ? " is-open" : ""}${g ? " " + g : ""}`,
|
|
14
|
+
children: [/* @__PURE__ */ s("button", {
|
|
15
|
+
type: "button",
|
|
16
|
+
className: "select-section__head select-section__head--toggle",
|
|
17
|
+
"aria-expanded": y,
|
|
18
|
+
onClick: () => b((e) => !e),
|
|
19
|
+
children: [/* @__PURE__ */ s("span", {
|
|
20
|
+
className: "select-section__heading",
|
|
21
|
+
children: [i && /* @__PURE__ */ o("span", {
|
|
22
|
+
className: "select-section__title",
|
|
23
|
+
children: i
|
|
24
|
+
}), l && /* @__PURE__ */ o("span", {
|
|
25
|
+
className: "select-section__desc",
|
|
26
|
+
children: l
|
|
27
|
+
})]
|
|
28
|
+
}), /* @__PURE__ */ o("span", {
|
|
29
|
+
className: "select-section__chevron",
|
|
30
|
+
"aria-hidden": "true",
|
|
31
|
+
children: /* @__PURE__ */ o(e, {})
|
|
32
|
+
})]
|
|
33
|
+
}), /* @__PURE__ */ o("div", {
|
|
34
|
+
className: "select-section__collapse",
|
|
35
|
+
"data-open": y,
|
|
36
|
+
"aria-hidden": !y,
|
|
37
|
+
children: /* @__PURE__ */ s("div", {
|
|
38
|
+
className: "select-section__collapsewrap",
|
|
39
|
+
children: [/* @__PURE__ */ o("div", {
|
|
40
|
+
className: "select-section__body",
|
|
41
|
+
children: /* @__PURE__ */ o(n, { children: h })
|
|
42
|
+
}), p != null && p !== "" && /* @__PURE__ */ o("div", {
|
|
43
|
+
className: "select-section__foot",
|
|
44
|
+
children: p
|
|
45
|
+
})]
|
|
46
|
+
})
|
|
47
|
+
})]
|
|
48
|
+
}) : /* @__PURE__ */ s("div", {
|
|
49
|
+
ref: v,
|
|
50
|
+
..._,
|
|
51
|
+
className: `select-section${x}${g ? " " + g : ""}`,
|
|
52
|
+
children: [
|
|
53
|
+
(i || l || u) && /* @__PURE__ */ s("div", {
|
|
54
|
+
className: "select-section__head",
|
|
55
|
+
children: [/* @__PURE__ */ s("div", {
|
|
56
|
+
className: "select-section__heading",
|
|
57
|
+
children: [i && /* @__PURE__ */ s("h2", {
|
|
58
|
+
className: `select-section__title${c == null ? "" : " select-section__title--help"}`,
|
|
59
|
+
children: [i, c != null && /* @__PURE__ */ o(t, { content: c })]
|
|
60
|
+
}), l && /* @__PURE__ */ o("p", {
|
|
61
|
+
className: "select-section__desc",
|
|
62
|
+
children: l
|
|
63
|
+
})]
|
|
64
|
+
}), u ? /* @__PURE__ */ o("div", {
|
|
65
|
+
className: "select-section__action",
|
|
66
|
+
children: u
|
|
67
|
+
}) : null]
|
|
68
|
+
}),
|
|
69
|
+
/* @__PURE__ */ o("div", {
|
|
70
|
+
className: "select-section__body",
|
|
71
|
+
children: /* @__PURE__ */ o(n, { children: h })
|
|
72
|
+
}),
|
|
73
|
+
p != null && p !== "" && /* @__PURE__ */ o("div", {
|
|
74
|
+
className: "select-section__foot",
|
|
75
|
+
children: p
|
|
76
|
+
})
|
|
77
|
+
]
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
//#endregion
|
|
81
|
+
export { c as SelectSection };
|
|
82
|
+
|
|
83
|
+
//# sourceMappingURL=SelectSection.js.map
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { forwardRef as e, useId as t, useLayoutEffect as n, useRef as r, useState as i } from "react";
|
|
2
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
3
|
+
//#region src/SelectSegmented.tsx
|
|
4
|
+
var s = e(function({ value: e, onChange: s, options: c, ariaLabel: l, fullWidth: u = !1, label: d, hint: f, disabled: p = !1, error: m, className: h, ...g }, _) {
|
|
5
|
+
let v = t(), y = Math.max(0, c.findIndex((t) => t.value === e)), b = r([]), [x, S] = i(null), C = c.map((e) => e.count ?? "").join(",");
|
|
6
|
+
n(() => {
|
|
7
|
+
let e = () => {
|
|
8
|
+
let e = b.current[y];
|
|
9
|
+
if (!e) return;
|
|
10
|
+
let t = {
|
|
11
|
+
left: e.offsetLeft,
|
|
12
|
+
width: e.offsetWidth
|
|
13
|
+
};
|
|
14
|
+
S((e) => e && e.left === t.left && e.width === t.width ? e : t);
|
|
15
|
+
};
|
|
16
|
+
e();
|
|
17
|
+
let t = typeof ResizeObserver < "u" ? new ResizeObserver(e) : null;
|
|
18
|
+
return b.current.forEach((e) => e && (t == null ? void 0 : t.observe(e))), () => t == null ? void 0 : t.disconnect();
|
|
19
|
+
}, [
|
|
20
|
+
y,
|
|
21
|
+
c.length,
|
|
22
|
+
C
|
|
23
|
+
]);
|
|
24
|
+
let w = x ? {
|
|
25
|
+
left: x.left,
|
|
26
|
+
width: x.width,
|
|
27
|
+
opacity: 1
|
|
28
|
+
} : { opacity: 0 }, T = /* @__PURE__ */ o("div", {
|
|
29
|
+
ref: d == null ? _ : void 0,
|
|
30
|
+
...d == null ? g : {},
|
|
31
|
+
className: `select-segmented${u ? " select-segmented--full" : ""}${p ? " select-segmented--disabled" : ""}${m != null && m !== !1 ? " select-segmented--error" : ""}${d == null && h ? " " + h : ""}`,
|
|
32
|
+
role: "tablist",
|
|
33
|
+
"aria-label": l,
|
|
34
|
+
"aria-labelledby": d != null && !l ? v : void 0,
|
|
35
|
+
"aria-disabled": p || void 0,
|
|
36
|
+
children: [/* @__PURE__ */ a("span", {
|
|
37
|
+
className: "select-segmented__pill",
|
|
38
|
+
"aria-hidden": "true",
|
|
39
|
+
style: w
|
|
40
|
+
}), c.map((t, n) => {
|
|
41
|
+
let r = t.value === e, i = !!t.count && t.count > 0, c = t.title && i ? `${t.title}, ${t.countLabel ?? t.count}` : t.title;
|
|
42
|
+
return /* @__PURE__ */ o("button", {
|
|
43
|
+
ref: (e) => {
|
|
44
|
+
b.current[n] = e;
|
|
45
|
+
},
|
|
46
|
+
type: "button",
|
|
47
|
+
role: "tab",
|
|
48
|
+
"aria-selected": r,
|
|
49
|
+
className: `select-segmented__item${r ? " select-segmented__item--active" : ""}`,
|
|
50
|
+
title: t.title,
|
|
51
|
+
"aria-label": c,
|
|
52
|
+
disabled: p,
|
|
53
|
+
onClick: () => s(t.value),
|
|
54
|
+
children: [t.label, i ? /* @__PURE__ */ a("span", {
|
|
55
|
+
className: "select-segmented__count",
|
|
56
|
+
"aria-hidden": t.title ? !0 : void 0,
|
|
57
|
+
children: t.count
|
|
58
|
+
}) : null]
|
|
59
|
+
}, t.value);
|
|
60
|
+
})]
|
|
61
|
+
}), E = m != null && m !== !1 && m !== "";
|
|
62
|
+
return d == null && !E ? T : d == null ? /* @__PURE__ */ o("div", {
|
|
63
|
+
className: "select-field",
|
|
64
|
+
children: [T, /* @__PURE__ */ a("p", {
|
|
65
|
+
className: "select-field__error",
|
|
66
|
+
children: m
|
|
67
|
+
})]
|
|
68
|
+
}) : /* @__PURE__ */ o("div", {
|
|
69
|
+
ref: _,
|
|
70
|
+
...g,
|
|
71
|
+
className: `select-field${h ? " " + h : ""}`,
|
|
72
|
+
children: [
|
|
73
|
+
/* @__PURE__ */ a("div", {
|
|
74
|
+
className: "select-field__labelrow",
|
|
75
|
+
children: /* @__PURE__ */ a("span", {
|
|
76
|
+
className: "select-field__label",
|
|
77
|
+
id: v,
|
|
78
|
+
children: d
|
|
79
|
+
})
|
|
80
|
+
}),
|
|
81
|
+
T,
|
|
82
|
+
E ? /* @__PURE__ */ a("p", {
|
|
83
|
+
className: "select-field__error",
|
|
84
|
+
children: m
|
|
85
|
+
}) : f != null && /* @__PURE__ */ a("p", {
|
|
86
|
+
className: "select-field__hint",
|
|
87
|
+
children: f
|
|
88
|
+
})
|
|
89
|
+
]
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
//#endregion
|
|
93
|
+
export { s as SelectSegmented };
|
|
94
|
+
|
|
95
|
+
//# sourceMappingURL=SelectSegmented.js.map
|
package/dist/SelectSelect.d.ts
CHANGED
|
@@ -1,21 +1,35 @@
|
|
|
1
|
-
import { ReactNode, ComponentPropsWithoutRef } from 'react';
|
|
1
|
+
import { ChangeEvent, ReactNode, Ref, SelectHTMLAttributes, ComponentPropsWithoutRef } from 'react';
|
|
2
2
|
export interface SelectSelectOption {
|
|
3
3
|
label: string;
|
|
4
4
|
value: string;
|
|
5
5
|
disabled?: boolean;
|
|
6
6
|
}
|
|
7
7
|
type SelectSelectOwnProps = {
|
|
8
|
-
|
|
8
|
+
/** 0.1.198: aceita um nó. */
|
|
9
|
+
label?: ReactNode;
|
|
9
10
|
value: string;
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
/** O valor novo e, desde a 0.1.198, o evento nativo. */
|
|
12
|
+
onChange: (value: string, event: ChangeEvent<HTMLSelectElement>) => void;
|
|
13
|
+
/** As opções. Desde a 0.1.198, ou elas ou os `<option>`/`<optgroup>` em `children` (os grupos de um seletor longo). */
|
|
14
|
+
options?: SelectSelectOption[];
|
|
15
|
+
/** 0.1.198: os `<option>` e `<optgroup>` nativos, no lugar de `options`. */
|
|
16
|
+
children?: ReactNode;
|
|
17
|
+
/** 0.1.198: o "(opcional)" depois do rótulo. */
|
|
18
|
+
optional?: boolean;
|
|
19
|
+
/** 0.1.198: os atributos nativos do `<select>` (o `form`, o `autoFocus`, o `aria-*`…). */
|
|
20
|
+
selectProps?: Omit<SelectHTMLAttributes<HTMLSelectElement>, 'value' | 'defaultValue' | 'onChange' | 'id' | 'className' | 'children'>;
|
|
21
|
+
/** 0.1.198: a referência do `<select>`. */
|
|
22
|
+
selectRef?: Ref<HTMLSelectElement>;
|
|
23
|
+
/** 0.1.198: o id do `<select>` (um rótulo de fora aponta para ele). */
|
|
24
|
+
id?: string;
|
|
12
25
|
labelAction?: ReactNode;
|
|
13
26
|
/** Ajuda contextual: vira o "!" (SelectInfoTip) ao lado do rotulo. Use para o que
|
|
14
27
|
* explica a plataforma; `hint` e so restricao/estado do proprio campo. */
|
|
15
28
|
help?: ReactNode;
|
|
16
29
|
info?: string;
|
|
17
30
|
description?: ReactNode;
|
|
18
|
-
|
|
31
|
+
/** 0.1.198: aceita um nó (um link). */
|
|
32
|
+
hint?: ReactNode;
|
|
19
33
|
error?: string;
|
|
20
34
|
placeholder?: string;
|
|
21
35
|
name?: string;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { ChevronDownIcon as e, InfoIcon as t } from "./icons.js";
|
|
2
|
+
import { joinIds as n, mergeNative as r } from "./internal/nativeProps.js";
|
|
3
|
+
import { useSelectMessages as i } from "./SelectLocale.js";
|
|
4
|
+
import { SelectInfoTip as a } from "./SelectInfoTip.js";
|
|
5
|
+
import { forwardRef as o, useId as s } from "react";
|
|
6
|
+
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
7
|
+
//#region src/SelectSelect.tsx
|
|
8
|
+
var u = o(function({ label: o, value: u, onChange: d, options: f = [], children: p, labelAction: m, help: h, info: g, description: _, hint: v, error: y, placeholder: b, name: x, required: S, disabled: C, size: w = "md", ariaLabel: T, optional: E = !1, selectProps: D, selectRef: O, id: k, className: A, ...j }, M) {
|
|
9
|
+
let N = i(), P = s(), F = k ?? P, I = y ? `${F}-err` : v ? `${F}-hint` : void 0, L = r(D, {
|
|
10
|
+
name: x,
|
|
11
|
+
required: S,
|
|
12
|
+
disabled: C
|
|
13
|
+
});
|
|
14
|
+
return /* @__PURE__ */ l("div", {
|
|
15
|
+
ref: M,
|
|
16
|
+
...j,
|
|
17
|
+
className: `select-field${w === "sm" ? " select-field--sm" : ""}${A ? " " + A : ""}`,
|
|
18
|
+
children: [
|
|
19
|
+
(o || h || g || m) && /* @__PURE__ */ l("div", {
|
|
20
|
+
className: "select-field__labelrow",
|
|
21
|
+
children: [/* @__PURE__ */ l("span", {
|
|
22
|
+
className: "select-field__labelwrap",
|
|
23
|
+
children: [o && /* @__PURE__ */ l("label", {
|
|
24
|
+
className: "select-field__label",
|
|
25
|
+
htmlFor: F,
|
|
26
|
+
children: [o, E && /* @__PURE__ */ l("span", {
|
|
27
|
+
className: "select-field__optional",
|
|
28
|
+
children: [" ", N.common.optional]
|
|
29
|
+
})]
|
|
30
|
+
}), h != null && h !== "" ? /* @__PURE__ */ c(a, { content: h }) : g && /* @__PURE__ */ c("span", {
|
|
31
|
+
className: "select-field__info",
|
|
32
|
+
title: g,
|
|
33
|
+
"aria-label": g,
|
|
34
|
+
children: /* @__PURE__ */ c(t, {})
|
|
35
|
+
})]
|
|
36
|
+
}), m]
|
|
37
|
+
}),
|
|
38
|
+
_ && /* @__PURE__ */ c("p", {
|
|
39
|
+
className: "select-field__desc",
|
|
40
|
+
children: _
|
|
41
|
+
}),
|
|
42
|
+
/* @__PURE__ */ l("div", {
|
|
43
|
+
className: "select-select-wrap",
|
|
44
|
+
children: [/* @__PURE__ */ l("select", {
|
|
45
|
+
...L,
|
|
46
|
+
ref: O,
|
|
47
|
+
id: F,
|
|
48
|
+
className: `select-input select-select${y ? " select-input--error" : ""}`,
|
|
49
|
+
value: u,
|
|
50
|
+
onChange: (e) => d(e.target.value, e),
|
|
51
|
+
"aria-invalid": y ? !0 : L["aria-invalid"],
|
|
52
|
+
"aria-describedby": n(I, D == null ? void 0 : D["aria-describedby"]),
|
|
53
|
+
"aria-label": o ? void 0 : T ?? L["aria-label"],
|
|
54
|
+
children: [b && /* @__PURE__ */ c("option", {
|
|
55
|
+
value: "",
|
|
56
|
+
disabled: !0,
|
|
57
|
+
children: b
|
|
58
|
+
}), p ?? f.map((e) => /* @__PURE__ */ c("option", {
|
|
59
|
+
value: e.value,
|
|
60
|
+
disabled: e.disabled,
|
|
61
|
+
children: e.label
|
|
62
|
+
}, e.value))]
|
|
63
|
+
}), /* @__PURE__ */ c("span", {
|
|
64
|
+
className: "select-select-caret",
|
|
65
|
+
"aria-hidden": "true",
|
|
66
|
+
children: /* @__PURE__ */ c(e, {})
|
|
67
|
+
})]
|
|
68
|
+
}),
|
|
69
|
+
y ? /* @__PURE__ */ c("p", {
|
|
70
|
+
id: `${F}-err`,
|
|
71
|
+
className: "select-field__error",
|
|
72
|
+
children: y
|
|
73
|
+
}) : v ? /* @__PURE__ */ c("p", {
|
|
74
|
+
id: `${F}-hint`,
|
|
75
|
+
className: "select-field__hint",
|
|
76
|
+
children: v
|
|
77
|
+
}) : null
|
|
78
|
+
]
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
//#endregion
|
|
82
|
+
export { u as SelectSelect };
|
|
83
|
+
|
|
84
|
+
//# sourceMappingURL=SelectSelect.js.map
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { forwardRef as e } from "react";
|
|
2
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
3
|
+
//#region src/SelectSetting.tsx
|
|
4
|
+
var r = e(function({ children: e, className: n, ...r }, i) {
|
|
5
|
+
return /* @__PURE__ */ t("div", {
|
|
6
|
+
ref: i,
|
|
7
|
+
...r,
|
|
8
|
+
className: `select-settinglist${n ? " " + n : ""}`,
|
|
9
|
+
children: e
|
|
10
|
+
});
|
|
11
|
+
}), i = e(function({ control: e, title: r, badge: i, description: a, children: o, bodyOpen: s, className: c, ...l }, u) {
|
|
12
|
+
return /* @__PURE__ */ n("div", {
|
|
13
|
+
ref: u,
|
|
14
|
+
...l,
|
|
15
|
+
className: `select-setting${c ? " " + c : ""}`,
|
|
16
|
+
children: [e && /* @__PURE__ */ t("div", {
|
|
17
|
+
className: "select-setting__control",
|
|
18
|
+
children: e
|
|
19
|
+
}), /* @__PURE__ */ n("div", {
|
|
20
|
+
className: "select-setting__main",
|
|
21
|
+
children: [
|
|
22
|
+
/* @__PURE__ */ n("div", {
|
|
23
|
+
className: "select-setting__head",
|
|
24
|
+
children: [/* @__PURE__ */ t("span", {
|
|
25
|
+
className: "select-setting__title",
|
|
26
|
+
children: r
|
|
27
|
+
}), i]
|
|
28
|
+
}),
|
|
29
|
+
a && /* @__PURE__ */ t("p", {
|
|
30
|
+
className: "select-setting__desc",
|
|
31
|
+
children: a
|
|
32
|
+
}),
|
|
33
|
+
o && (s === void 0 ? /* @__PURE__ */ t("div", {
|
|
34
|
+
className: "select-setting__body",
|
|
35
|
+
children: o
|
|
36
|
+
}) : /* @__PURE__ */ t("div", {
|
|
37
|
+
className: `select-setting__bodywrap${s ? " is-open" : ""}`,
|
|
38
|
+
children: /* @__PURE__ */ t("div", {
|
|
39
|
+
className: "select-setting__bodyclip",
|
|
40
|
+
"aria-hidden": !s,
|
|
41
|
+
children: /* @__PURE__ */ t("div", {
|
|
42
|
+
className: "select-setting__body",
|
|
43
|
+
children: o
|
|
44
|
+
})
|
|
45
|
+
})
|
|
46
|
+
}))
|
|
47
|
+
]
|
|
48
|
+
})]
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
//#endregion
|
|
52
|
+
export { r as SelectSettingList, i as SelectSettingRow };
|
|
53
|
+
|
|
54
|
+
//# sourceMappingURL=SelectSetting.js.map
|