@phillips/seldon 1.143.2 → 1.145.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/_virtual/build.js +4 -0
- package/dist/_virtual/defaults.js +4 -0
- package/dist/_virtual/encode-new-lines.js +4 -0
- package/dist/_virtual/encode-param-value.js +4 -0
- package/dist/_virtual/fold-line.js +4 -0
- package/dist/_virtual/format-date.js +4 -0
- package/dist/_virtual/format-duration.js +4 -0
- package/dist/_virtual/format-text.js +4 -0
- package/dist/_virtual/format.js +4 -0
- package/dist/_virtual/index.browser.js +6 -0
- package/dist/_virtual/index.cjs.production.min.js +4 -0
- package/dist/_virtual/index.esm.js +6 -0
- package/dist/_virtual/index10.js +4 -0
- package/dist/_virtual/index11.js +4 -0
- package/dist/_virtual/index12.js +4 -0
- package/dist/_virtual/index7.js +4 -0
- package/dist/_virtual/index8.js +4 -0
- package/dist/_virtual/index9.js +4 -0
- package/dist/_virtual/set-alarm.js +4 -0
- package/dist/_virtual/set-contact.js +4 -0
- package/dist/_virtual/set-description.js +4 -0
- package/dist/_virtual/set-geolocation.js +4 -0
- package/dist/_virtual/set-location.js +4 -0
- package/dist/_virtual/set-organizer.js +4 -0
- package/dist/_virtual/set-summary.js +4 -0
- package/dist/_virtual/validate.js +4 -0
- package/dist/components/AddToCalendar/AddToCalendar.d.ts +10 -0
- package/dist/components/AddToCalendar/AddToCalendar.js +62 -0
- package/dist/components/AddToCalendar/AddToCalendar.stories.d.ts +25 -0
- package/dist/components/AddToCalendar/AddToCalendar.test.d.ts +1 -0
- package/dist/components/AddToCalendar/calendarLinks.d.ts +6 -0
- package/dist/components/AddToCalendar/calendarLinks.js +89 -0
- package/dist/components/AddToCalendar/calendarLinks.test.d.ts +1 -0
- package/dist/components/AddToCalendar/index.d.ts +1 -0
- package/dist/components/AddToCalendar/types.d.ts +8 -0
- package/dist/components/ComboBox/ComboBox.d.ts +69 -0
- package/dist/components/ComboBox/ComboBox.js +221 -0
- package/dist/components/ComboBox/ComboBox.stories.d.ts +18 -0
- package/dist/components/ComboBox/ComboBox.test.d.ts +1 -0
- package/dist/components/ComboBox/index.d.ts +1 -0
- package/dist/components/PhoneNumberPicker/PhoneNumberPicker.d.ts +38 -0
- package/dist/components/PhoneNumberPicker/PhoneNumberPicker.stories.d.ts +14 -0
- package/dist/components/PhoneNumberPicker/PhoneNumberPicker.test.d.ts +1 -0
- package/dist/index.d.ts +10 -1
- package/dist/index.js +116 -112
- package/dist/node_modules/@radix-ui/react-dropdown-menu/dist/index.js +208 -0
- package/dist/node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-primitive/dist/index.js +32 -0
- package/dist/node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-slot/dist/index.js +49 -0
- package/dist/node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +52 -0
- package/dist/node_modules/@radix-ui/react-menu/dist/index.js +608 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-arrow/dist/index.js +24 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-collection/dist/index.js +48 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +127 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-focus-scope/dist/index.js +136 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-popper/dist/index.js +218 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-portal/dist/index.js +15 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-presence/dist/index.js +70 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-primitive/dist/index.js +36 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-roving-focus/dist/index.js +183 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-slot/dist/index.js +49 -0
- package/dist/node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +52 -0
- package/dist/node_modules/@radix-ui/react-popover/dist/index.js +18 -17
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-arrow/dist/index.js +24 -0
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +127 -0
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-focus-scope/dist/index.js +136 -0
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-popper/dist/index.js +218 -0
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-portal/dist/index.js +15 -0
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-presence/dist/index.js +70 -0
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-primitive/dist/index.js +36 -0
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-slot/dist/index.js +49 -0
- package/dist/node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +52 -0
- package/dist/node_modules/cmdk/dist/chunk-NZJY6EH4.js +17 -0
- package/dist/node_modules/cmdk/dist/index.js +312 -0
- package/dist/node_modules/date-fns/_lib/addLeadingZeros.js +7 -0
- package/dist/node_modules/date-fns/_lib/format/formatters.js +517 -0
- package/dist/node_modules/date-fns/_lib/format/lightFormatters.js +59 -0
- package/dist/node_modules/date-fns/_lib/format/longFormatters.js +52 -0
- package/dist/node_modules/date-fns/_lib/protectedTokens.js +20 -0
- package/dist/node_modules/date-fns/addHours.js +9 -0
- package/dist/node_modules/date-fns/addMilliseconds.js +9 -0
- package/dist/node_modules/date-fns/constants.js +6 -5
- package/dist/node_modules/date-fns/format.js +58 -0
- package/dist/node_modules/date-fns/getDayOfYear.js +11 -0
- package/dist/node_modules/date-fns/getISOWeek.js +12 -0
- package/dist/node_modules/date-fns/getISOWeekYear.js +15 -0
- package/dist/node_modules/date-fns/getWeek.js +12 -0
- package/dist/node_modules/date-fns/getWeekYear.js +16 -0
- package/dist/node_modules/date-fns/isDate.js +7 -0
- package/dist/node_modules/date-fns/isValid.js +9 -0
- package/dist/node_modules/date-fns/startOfISOWeek.js +8 -0
- package/dist/node_modules/date-fns/startOfISOWeekYear.js +11 -0
- package/dist/node_modules/date-fns/startOfWeekYear.js +12 -0
- package/dist/node_modules/date-fns/startOfYear.js +9 -0
- package/dist/node_modules/date-fns-tz/dist/esm/_lib/getTimezoneOffsetInMilliseconds/index.js +7 -0
- package/dist/node_modules/date-fns-tz/dist/esm/_lib/newDateUTC/index.js +7 -0
- package/dist/node_modules/date-fns-tz/dist/esm/_lib/tzParseTimezone/index.js +63 -0
- package/dist/node_modules/date-fns-tz/dist/esm/_lib/tzPattern/index.js +4 -0
- package/dist/node_modules/date-fns-tz/dist/esm/_lib/tzTokenizeDate/index.js +71 -0
- package/dist/node_modules/date-fns-tz/dist/esm/toDate/index.js +180 -0
- package/dist/node_modules/date-fns-tz/dist/esm/toZonedTime/index.js +10 -0
- package/dist/node_modules/ics/dist/defaults.js +23 -0
- package/dist/node_modules/ics/dist/index.js +115 -0
- package/dist/node_modules/ics/dist/pipeline/build.js +50 -0
- package/dist/node_modules/ics/dist/pipeline/format.js +70 -0
- package/dist/node_modules/ics/dist/pipeline/index.js +53 -0
- package/dist/node_modules/ics/dist/pipeline/validate.js +17 -0
- package/dist/node_modules/ics/dist/schema/index.js +211 -0
- package/dist/node_modules/ics/dist/utils/encode-new-lines.js +9 -0
- package/dist/node_modules/ics/dist/utils/encode-param-value.js +9 -0
- package/dist/node_modules/ics/dist/utils/fold-line.js +14 -0
- package/dist/node_modules/ics/dist/utils/format-date.js +68 -0
- package/dist/node_modules/ics/dist/utils/format-duration.js +10 -0
- package/dist/node_modules/ics/dist/utils/format-text.js +9 -0
- package/dist/node_modules/ics/dist/utils/index.js +87 -0
- package/dist/node_modules/ics/dist/utils/set-alarm.js +49 -0
- package/dist/node_modules/ics/dist/utils/set-contact.js +18 -0
- package/dist/node_modules/ics/dist/utils/set-description.js +15 -0
- package/dist/node_modules/ics/dist/utils/set-geolocation.js +10 -0
- package/dist/node_modules/ics/dist/utils/set-location.js +15 -0
- package/dist/node_modules/ics/dist/utils/set-organizer.js +16 -0
- package/dist/node_modules/ics/dist/utils/set-summary.js +15 -0
- package/dist/node_modules/nanoid/index.browser.js +19 -0
- package/dist/node_modules/nanoid/url-alphabet/index.js +4 -0
- package/dist/node_modules/property-expr/index.js +77 -0
- package/dist/node_modules/runes2/dist/index.cjs.development.js +139 -0
- package/dist/node_modules/runes2/dist/index.cjs.production.min.js +86 -0
- package/dist/node_modules/runes2/dist/index.js +8 -0
- package/dist/node_modules/tiny-case/index.js +17 -0
- package/dist/node_modules/toposort/index.js +65 -0
- package/dist/node_modules/yup/index.esm.js +1899 -0
- package/dist/scss/_vars.scss +3 -0
- package/dist/scss/_vars.scss.js +3 -0
- package/dist/scss/componentStyles.scss +2 -0
- package/dist/scss/components/AddToCalendar/_addToCalendar.scss +64 -0
- package/dist/scss/components/ComboBox/_combobox.scss +149 -0
- package/package.json +8 -2
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ComponentProps, ElementType } from 'react';
|
|
2
|
+
import { CalendarEvent } from './types';
|
|
3
|
+
import { LinkProps } from '../Link';
|
|
4
|
+
export interface AddToCalendarProps extends ComponentProps<'div'> {
|
|
5
|
+
event: CalendarEvent;
|
|
6
|
+
linkElement?: ElementType<LinkProps>;
|
|
7
|
+
label?: string;
|
|
8
|
+
}
|
|
9
|
+
declare const AddToCalendar: import('react').ForwardRefExoticComponent<Omit<AddToCalendarProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export default AddToCalendar;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { jsx as e, jsxs as C } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as h, useState as u } from "react";
|
|
3
|
+
import { getCommonProps as g, px as s } from "../../utils/index.js";
|
|
4
|
+
import N from "../../node_modules/classnames/index.js";
|
|
5
|
+
import { TextVariants as O } from "../Text/types.js";
|
|
6
|
+
import T from "../Text/Text.js";
|
|
7
|
+
import { Root as $, Trigger as x, Portal as y, Content as w, Item as A } from "../../node_modules/@radix-ui/react-dropdown-menu/dist/index.js";
|
|
8
|
+
import I from "../Icon/Icon.js";
|
|
9
|
+
import "../Link/types.js";
|
|
10
|
+
import L from "../Link/Link.js";
|
|
11
|
+
import { generateGoogleCalendarLink as P, generateOutlookOnlineLink as R, generateYahooCalendarLink as S, generateCalendarFile as j } from "./calendarLinks.js";
|
|
12
|
+
const G = h(
|
|
13
|
+
({ className: c, event: o, label: d = "Add to calendar", linkElement: m = L, ...n }, b) => {
|
|
14
|
+
const { className: l, ...f } = g(n, "AddToCalendar"), [t, i] = u(!1), k = (a, r) => {
|
|
15
|
+
a === "file" ? j(o) : a === "link" && r && window.open(r, "_blank");
|
|
16
|
+
}, p = [
|
|
17
|
+
{ label: "iCalendar", action: "file" },
|
|
18
|
+
{ label: "Google Calendar", action: "link", link: P(o) },
|
|
19
|
+
{ label: "Outlook", action: "file" },
|
|
20
|
+
{ label: "Outlook Online", action: "link", link: R(o) },
|
|
21
|
+
{ label: "Yahoo Calendar", action: "link", link: S(o) }
|
|
22
|
+
];
|
|
23
|
+
return /* @__PURE__ */ e("div", { ...f, className: N(l, c), ...n, ref: b, children: /* @__PURE__ */ C($, { open: t, onOpenChange: i, children: [
|
|
24
|
+
/* @__PURE__ */ e(x, { asChild: !0, children: /* @__PURE__ */ e(
|
|
25
|
+
"button",
|
|
26
|
+
{
|
|
27
|
+
"aria-label": d,
|
|
28
|
+
className: `${s}-icon-button ${s}-icon-button--small ${l}-icon-button`,
|
|
29
|
+
type: "button",
|
|
30
|
+
children: /* @__PURE__ */ e(I, { icon: t ? "CloseX" : "Calendar" })
|
|
31
|
+
}
|
|
32
|
+
) }),
|
|
33
|
+
/* @__PURE__ */ e(y, { children: /* @__PURE__ */ e(
|
|
34
|
+
w,
|
|
35
|
+
{
|
|
36
|
+
sideOffset: 5,
|
|
37
|
+
align: "start",
|
|
38
|
+
side: "bottom",
|
|
39
|
+
"data-side": "bottom",
|
|
40
|
+
avoidCollisions: !1,
|
|
41
|
+
className: `${l}-atcb-list`,
|
|
42
|
+
onKeyDown: (a) => {
|
|
43
|
+
a.key === "Tab" && i(!1);
|
|
44
|
+
},
|
|
45
|
+
children: p.map((a) => /* @__PURE__ */ e(
|
|
46
|
+
A,
|
|
47
|
+
{
|
|
48
|
+
className: `${l}-atcb-item`,
|
|
49
|
+
onSelect: () => k(a.action, a.link),
|
|
50
|
+
children: a.action === "link" ? /* @__PURE__ */ e(m, { className: `${l}-atcb-item-link`, href: a.link, children: a.label }) : /* @__PURE__ */ e("button", { className: `${l}-atcb-item-link`, children: /* @__PURE__ */ e(T, { variant: O.body2, children: a.label }) })
|
|
51
|
+
},
|
|
52
|
+
a.label
|
|
53
|
+
))
|
|
54
|
+
}
|
|
55
|
+
) })
|
|
56
|
+
] }) });
|
|
57
|
+
}
|
|
58
|
+
);
|
|
59
|
+
G.displayName = "AddToCalendar";
|
|
60
|
+
export {
|
|
61
|
+
G as default
|
|
62
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AddToCalendarProps } from './AddToCalendar';
|
|
2
|
+
declare const meta: {
|
|
3
|
+
title: string;
|
|
4
|
+
component: import('react').ForwardRefExoticComponent<Omit<AddToCalendarProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|
|
5
|
+
parameters: {
|
|
6
|
+
viewport: {
|
|
7
|
+
defaultViewport: string;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
export default meta;
|
|
12
|
+
export declare const Playground: {
|
|
13
|
+
(props: AddToCalendarProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
args: {
|
|
15
|
+
event: {
|
|
16
|
+
title: string;
|
|
17
|
+
description: string;
|
|
18
|
+
start: Date;
|
|
19
|
+
end: null;
|
|
20
|
+
location: string;
|
|
21
|
+
timezone: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
argTypes: {};
|
|
25
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CalendarEvent } from './types';
|
|
2
|
+
declare const generateGoogleCalendarLink: (event: CalendarEvent) => string;
|
|
3
|
+
declare const generateOutlookOnlineLink: (event: CalendarEvent) => string;
|
|
4
|
+
declare const generateYahooCalendarLink: (event: CalendarEvent) => string;
|
|
5
|
+
declare const generateCalendarFile: (event: CalendarEvent) => void;
|
|
6
|
+
export { generateGoogleCalendarLink, generateOutlookOnlineLink, generateYahooCalendarLink, generateCalendarFile };
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { createEvent as y } from "../../node_modules/ics/dist/index.js";
|
|
2
|
+
import { isValid as p } from "../../node_modules/date-fns/isValid.js";
|
|
3
|
+
import { toZonedTime as d } from "../../node_modules/date-fns-tz/dist/esm/toZonedTime/index.js";
|
|
4
|
+
import { addHours as m } from "../../node_modules/date-fns/addHours.js";
|
|
5
|
+
import { formatDate as s } from "../../node_modules/date-fns/format.js";
|
|
6
|
+
const i = {
|
|
7
|
+
google: "https://calendar.google.com/calendar/u/0/r/eventedit",
|
|
8
|
+
outlook: "https://outlook.office.com/calendar/0/deeplink/compose",
|
|
9
|
+
yahoo: "https://calendar.yahoo.com/"
|
|
10
|
+
}, h = () => {
|
|
11
|
+
try {
|
|
12
|
+
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
13
|
+
} catch {
|
|
14
|
+
return console.warn("Unable to determine user's timezone. Using UTC as a fallback."), "UTC";
|
|
15
|
+
}
|
|
16
|
+
}, g = (t) => new URLSearchParams(t), l = (t, o) => {
|
|
17
|
+
if (!o.start || !p(o.start))
|
|
18
|
+
return console.error("Invalid event start date:", o), "#";
|
|
19
|
+
const e = h(), n = d(o.start, t === "google" ? o.timezone : e), r = o.end ? d(o.end, t === "google" ? o.timezone : e) : m(n, 1);
|
|
20
|
+
switch (t) {
|
|
21
|
+
case "google":
|
|
22
|
+
return k(n, r, o);
|
|
23
|
+
case "outlook":
|
|
24
|
+
return f(n, r, o);
|
|
25
|
+
case "yahoo":
|
|
26
|
+
return L(n, r, o);
|
|
27
|
+
default:
|
|
28
|
+
return console.error("Invalid calendar type:", t), "#";
|
|
29
|
+
}
|
|
30
|
+
}, k = (t, o, e) => {
|
|
31
|
+
const n = g({
|
|
32
|
+
text: e.title,
|
|
33
|
+
dates: `${s(t, "yyyyMMdd'T'HHmmss")}/${s(o, "yyyyMMdd'T'HHmmss")}`,
|
|
34
|
+
ctz: e.timezone,
|
|
35
|
+
details: e.description,
|
|
36
|
+
location: e.location
|
|
37
|
+
}), r = new URL(i.google);
|
|
38
|
+
return r.search = n.toString(), r.toString();
|
|
39
|
+
}, f = (t, o, e) => {
|
|
40
|
+
const n = g({
|
|
41
|
+
path: "/calendar/action/compose",
|
|
42
|
+
rru: "addevent",
|
|
43
|
+
subject: e.title,
|
|
44
|
+
startdt: s(t, "yyyy-MM-dd'T'HH:mm:ssXXX"),
|
|
45
|
+
enddt: s(o, "yyyy-MM-dd'T'HH:mm:ssXXX"),
|
|
46
|
+
body: e.description,
|
|
47
|
+
location: e.location,
|
|
48
|
+
allday: "false"
|
|
49
|
+
}), r = new URL(i.outlook);
|
|
50
|
+
return r.search = n.toString(), r.toString();
|
|
51
|
+
}, L = (t, o, e) => {
|
|
52
|
+
const n = encodeURIComponent(e.title), r = encodeURIComponent(e.description), c = encodeURIComponent(e.location), a = s(t, "yyyyMMdd'T'HHmmss"), u = s(o, "yyyyMMdd'T'HHmmss");
|
|
53
|
+
return `${i.yahoo}?v=60&view=d&type=20&title=${n}&st=${a}&et=${u}&desc=${r}&in_loc=${c}`;
|
|
54
|
+
}, T = (t) => l("google", t), $ = (t) => l("outlook", t), b = (t) => l("yahoo", t), w = (t) => {
|
|
55
|
+
if (!t.start) {
|
|
56
|
+
console.error("Invalid event start date:", t);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const o = t.end ? t.end : m(t.start, 1);
|
|
60
|
+
y(
|
|
61
|
+
{
|
|
62
|
+
title: t.title,
|
|
63
|
+
description: t.description,
|
|
64
|
+
start: [
|
|
65
|
+
t.start.getFullYear(),
|
|
66
|
+
t.start.getMonth() + 1,
|
|
67
|
+
t.start.getDate(),
|
|
68
|
+
t.start.getHours(),
|
|
69
|
+
t.start.getMinutes()
|
|
70
|
+
],
|
|
71
|
+
end: [o.getFullYear(), o.getMonth() + 1, o.getDate(), o.getHours(), o.getMinutes()],
|
|
72
|
+
location: t.location
|
|
73
|
+
},
|
|
74
|
+
(e, n) => {
|
|
75
|
+
if (e)
|
|
76
|
+
console.error("Error creating iCalendar event:", e);
|
|
77
|
+
else {
|
|
78
|
+
const r = new File([n], `${t.title}.ics`, { type: "text/calendar" }), c = URL.createObjectURL(r), a = document.createElement("a");
|
|
79
|
+
a.href = c, a.download = r.name, document.body.appendChild(a), a.click(), document.body.removeChild(a), URL.revokeObjectURL(c);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
);
|
|
83
|
+
};
|
|
84
|
+
export {
|
|
85
|
+
w as generateCalendarFile,
|
|
86
|
+
T as generateGoogleCalendarLink,
|
|
87
|
+
$ as generateOutlookOnlineLink,
|
|
88
|
+
b as generateYahooCalendarLink
|
|
89
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as AddToCalendar, type AddToCalendarProps } from './AddToCalendar';
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface ComboBoxProps {
|
|
3
|
+
/**
|
|
4
|
+
* Boolean to specify whether you want the underlying label to be visually hidden
|
|
5
|
+
*/
|
|
6
|
+
hideLabel?: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* List of options to be displayed in the ComboBox.
|
|
9
|
+
*/
|
|
10
|
+
options: {
|
|
11
|
+
label?: string;
|
|
12
|
+
value: string;
|
|
13
|
+
}[];
|
|
14
|
+
/**
|
|
15
|
+
* Unique id for the ComboBox.
|
|
16
|
+
*/
|
|
17
|
+
id: string;
|
|
18
|
+
/**
|
|
19
|
+
* Optional className for custom styling.
|
|
20
|
+
*/
|
|
21
|
+
className?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Label for the ComboBox.
|
|
24
|
+
*/
|
|
25
|
+
labelText: string;
|
|
26
|
+
/**
|
|
27
|
+
* Optional placeholder text for the input.
|
|
28
|
+
*/
|
|
29
|
+
placeholder?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Input value for the ComboBox.
|
|
32
|
+
*/
|
|
33
|
+
inputValue: string;
|
|
34
|
+
/**
|
|
35
|
+
* Passed in function to handle input value changes.
|
|
36
|
+
*/
|
|
37
|
+
setInputValue: (value: string) => void;
|
|
38
|
+
/**
|
|
39
|
+
* aria-label optional input label
|
|
40
|
+
*/
|
|
41
|
+
ariaLabelInput?: string;
|
|
42
|
+
/**
|
|
43
|
+
* aria-label for the clear button
|
|
44
|
+
*/
|
|
45
|
+
ariaLabelClear?: string;
|
|
46
|
+
/**
|
|
47
|
+
* aria-label for the dropdown button
|
|
48
|
+
*/
|
|
49
|
+
ariaLabelDropdown?: string;
|
|
50
|
+
/**
|
|
51
|
+
* aria-label for content
|
|
52
|
+
*/
|
|
53
|
+
ariaLabelContent?: string;
|
|
54
|
+
/**
|
|
55
|
+
* If true, the input will be cleared when the user clicks away when the input value is not in the options list.
|
|
56
|
+
*/
|
|
57
|
+
autoClearInput?: boolean;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* ## Overview
|
|
61
|
+
*
|
|
62
|
+
* This is a ComboBox component that allows users to select from a list of options or enter a custom value.
|
|
63
|
+
*
|
|
64
|
+
* [Figma Link] https://www.figma.com/design/rIefa3bRPyZbZmtyV9PSQv/My-Account?node-id=1-3&p=f&m=dev
|
|
65
|
+
*
|
|
66
|
+
* [Storybook Link](https://phillips-seldon.netlify.app/?path=/docs/components-comboBox--overview)
|
|
67
|
+
*/
|
|
68
|
+
declare const ComboBox: React.ForwardRefExoticComponent<ComboBoxProps & React.RefAttributes<HTMLDivElement>>;
|
|
69
|
+
export default ComboBox;
|