@api7/ui-components 0.7.0 → 0.8.1

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.
Files changed (74) hide show
  1. package/README.md +169 -8
  2. package/dist/components/anchor/anchor.d.ts +28 -0
  3. package/dist/components/anchor/anchor.js +249 -0
  4. package/dist/components/breadcrumb/breadcrumb.d.ts +15 -0
  5. package/dist/components/breadcrumb/breadcrumb.js +60 -0
  6. package/dist/components/button/button.d.ts +1 -1
  7. package/dist/components/button/button.js +1 -1
  8. package/dist/components/calendar/calendar.js +24 -3
  9. package/dist/components/cascader/cascader-data.d.ts +26 -0
  10. package/dist/components/cascader/cascader-data.js +110 -0
  11. package/dist/components/cascader/cascader.d.ts +41 -0
  12. package/dist/components/cascader/cascader.js +513 -0
  13. package/dist/components/code/code.d.ts +9 -0
  14. package/dist/components/code/code.js +20 -0
  15. package/dist/components/code/copy-button.js +42 -0
  16. package/dist/components/code-block/code-block.d.ts +16 -0
  17. package/dist/components/code-block/code-block.js +45 -0
  18. package/dist/components/code-block/highlight.js +67 -0
  19. package/dist/components/collapsible/collapsible.d.ts +14 -0
  20. package/dist/components/collapsible/collapsible.js +36 -0
  21. package/dist/components/combobox/combobox-loading.d.ts +18 -0
  22. package/dist/components/combobox/combobox-loading.js +148 -0
  23. package/dist/components/combobox/combobox.d.ts +13 -6
  24. package/dist/components/combobox/combobox.js +58 -10
  25. package/dist/components/data-table/data-table.d.ts +27 -3
  26. package/dist/components/data-table/data-table.js +155 -40
  27. package/dist/components/data-table/expandable-row.js +40 -0
  28. package/dist/components/data-table/filter-header.d.ts +28 -5
  29. package/dist/components/data-table/filter-header.js +103 -40
  30. package/dist/components/data-table/index.d.ts +3 -3
  31. package/dist/components/data-table/use-table-layout.js +84 -0
  32. package/dist/components/date-picker/date-picker.js +11 -2
  33. package/dist/components/description-list/description-list.d.ts +1 -1
  34. package/dist/components/dialog/dialog.js +1 -1
  35. package/dist/components/drawer/drawer.js +1 -1
  36. package/dist/components/empty/empty.d.ts +1 -1
  37. package/dist/components/field/labeled-field.js +1 -1
  38. package/dist/components/file-upload/file-upload.d.ts +44 -0
  39. package/dist/components/file-upload/file-upload.js +195 -0
  40. package/dist/components/form/choice-fields.js +2 -2
  41. package/dist/components/form/date-fields.d.ts +1 -1
  42. package/dist/components/form/date-fields.js +1 -1
  43. package/dist/components/form/form-item.js +1 -1
  44. package/dist/components/form/form.js +1 -1
  45. package/dist/components/form/index.d.ts +2 -2
  46. package/dist/components/form/index.js +4 -4
  47. package/dist/components/form/text-field.js +2 -2
  48. package/dist/components/form/toggle-fields.d.ts +1 -1
  49. package/dist/components/form/toggle-fields.js +3 -3
  50. package/dist/components/pagination/pagination.d.ts +20 -4
  51. package/dist/components/pagination/pagination.js +83 -32
  52. package/dist/components/relative-date-range-picker/relative-date-range-picker.d.ts +14 -0
  53. package/dist/components/relative-date-range-picker/relative-date-range-picker.js +245 -0
  54. package/dist/components/relative-date-range-picker/relative-date-range.d.ts +26 -0
  55. package/dist/components/relative-date-range-picker/relative-date-range.js +109 -0
  56. package/dist/components/select/select.js +1 -1
  57. package/dist/components/sidebar/sidebar.js +2 -2
  58. package/dist/components/steps/steps.d.ts +23 -0
  59. package/dist/components/steps/steps.js +86 -0
  60. package/dist/components/table/table.d.ts +2 -1
  61. package/dist/components/table/table.js +2 -1
  62. package/dist/components/toast/toast.d.ts +1 -1
  63. package/dist/components/toast/toast.js +1 -1
  64. package/dist/config/config-provider.d.ts +2 -2
  65. package/dist/config/messages.d.ts +115 -1
  66. package/dist/config/messages.js +140 -2
  67. package/dist/hooks/use-clipboard.d.ts +11 -0
  68. package/dist/hooks/use-clipboard.js +75 -0
  69. package/dist/hooks/use-field-label-with-text.js +32 -0
  70. package/dist/index.d.ts +26 -13
  71. package/dist/index.js +15 -4
  72. package/dist/tokens/index.d.ts +1 -1
  73. package/dist/tokens/index.js +1 -1
  74. package/package.json +7 -6
@@ -1,5 +1,39 @@
1
1
  export type Locale = 'en-US' | 'zh-CN';
2
2
  export interface Messages {
3
+ /** Cascader text. Omitted keys inherit the locale defaults. */
4
+ readonly cascader?: {
5
+ /** Placeholder when no path is selected. */
6
+ readonly placeholder: string;
7
+ /** Accessible name of the clear selection button. */
8
+ readonly clear: string;
9
+ /** Explains that search includes only supplied and already loaded options. */
10
+ readonly searchHint: string;
11
+ /** Accessible name of the search results listbox. */
12
+ readonly results: string;
13
+ /** Accessible description of an option that opens another level. */
14
+ readonly branch: string;
15
+ /** Empty state for a level or search with no options. */
16
+ readonly empty: string;
17
+ /** Status while root options or a branch's children are loading. */
18
+ readonly loading: string;
19
+ /** Generic status when loading a branch's children fails. */
20
+ readonly error: string;
21
+ /** Label of the button that retries a failed branch request. */
22
+ readonly retry: string;
23
+ /** Names a listbox using its one-based level and the parent label, or the root placeholder. */
24
+ readonly level: (args: {
25
+ level: number;
26
+ label: string;
27
+ }) => string;
28
+ };
29
+ readonly code: {
30
+ readonly copy: string;
31
+ readonly copied: string;
32
+ readonly copyError: string;
33
+ };
34
+ readonly breadcrumb?: {
35
+ readonly label: string;
36
+ };
3
37
  readonly button: {
4
38
  readonly loading: string;
5
39
  };
@@ -7,6 +41,13 @@ export interface Messages {
7
41
  readonly spinner: {
8
42
  readonly label: string;
9
43
  };
44
+ readonly steps: {
45
+ readonly label: string;
46
+ readonly wait: string;
47
+ readonly process: string;
48
+ readonly finish: string;
49
+ readonly error: string;
50
+ };
10
51
  readonly numberField: {
11
52
  readonly increment: string;
12
53
  readonly decrement: string;
@@ -25,15 +66,49 @@ export interface Messages {
25
66
  readonly clear: string;
26
67
  readonly toggle: string;
27
68
  readonly remove: string;
69
+ readonly loading?: string;
70
+ readonly error?: string;
71
+ readonly retry?: string;
72
+ readonly loadMore?: string;
28
73
  };
29
74
  readonly select: {
30
75
  readonly clear: string;
31
76
  };
77
+ readonly fileUpload?: {
78
+ readonly selectFile: string;
79
+ readonly selectFiles: string;
80
+ readonly selectedFiles: string;
81
+ readonly progress: string;
82
+ readonly remove: (args: {
83
+ name: string;
84
+ }) => string;
85
+ readonly invalidType: (args: {
86
+ name: string;
87
+ accept: string;
88
+ }) => string;
89
+ readonly tooLarge: (args: {
90
+ name: string;
91
+ maxSize: number;
92
+ }) => string;
93
+ readonly tooSmall: (args: {
94
+ name: string;
95
+ minSize: number;
96
+ }) => string;
97
+ readonly tooMany: (args: {
98
+ maxFiles: number;
99
+ }) => string;
100
+ };
32
101
  readonly form: {
33
102
  readonly optional: string;
34
103
  readonly moreInfo: string;
35
104
  };
36
105
  readonly dataTable: {
106
+ /** Visually hidden header for the leading expansion column. */
107
+ readonly rowDetails: string;
108
+ /** Accessible name of a collapsed row's expansion button. */
109
+ readonly expandRow: string;
110
+ /** Accessible name of an expanded row's collapse button. */
111
+ readonly collapseRow: string;
37
112
  readonly empty: string;
38
113
  /** Accessible name of the filter button in a column header, with the name of the column. */
39
114
  readonly filter: (args: {
@@ -77,5 +152,44 @@ export interface Messages {
77
152
  /** Accessible name of DateRangePicker's preset button group. */
78
153
  readonly presetsLabel: string;
79
154
  };
155
+ readonly relativeDateRangePicker: {
156
+ readonly absolute: string;
157
+ readonly from: string;
158
+ readonly to: string;
159
+ readonly apply: string;
160
+ readonly search: string;
161
+ readonly presets: string;
162
+ readonly none: string;
163
+ /** Label of the line that names the zone the fields are read and shown in. */
164
+ readonly browserTime: string;
165
+ readonly calendar: string;
166
+ readonly closeCalendar: string;
167
+ /** Accessible name of the button that opens the calendar for one end, with the label of that end. */
168
+ readonly openCalendarFor: (args: {
169
+ label: string;
170
+ }) => string;
171
+ /** The same for the button that closes it while it is open. */
172
+ readonly closeCalendarFor: (args: {
173
+ label: string;
174
+ }) => string;
175
+ /** Said under the fields for an end that cannot be read. */
176
+ readonly understood: string;
177
+ /** The reason of an end that cannot be read, with the label of the end in front. */
178
+ readonly endError: (args: {
179
+ label: string;
180
+ reason: string;
181
+ }) => string;
182
+ readonly future: string;
183
+ readonly endBeforeStart: string;
184
+ readonly tooLong: (args: {
185
+ days: string;
186
+ }) => string;
187
+ /** The words for a range that ends now, such as "Last 5 minutes". */
188
+ readonly last: (args: {
189
+ count: string;
190
+ unit: 'm' | 'h' | 'd' | 'w';
191
+ }) => string;
192
+ };
80
193
  }
81
- export type MessagesOverride = { [K in keyof Messages]?: Partial<Messages[K]>; };
194
+ export type ResolvedMessages = { [K in keyof Messages]-?: Required<NonNullable<Messages[K]>>; };
195
+ export type MessagesOverride = { [K in keyof ResolvedMessages]?: Partial<ResolvedMessages[K]>; };
@@ -4,8 +4,33 @@ function deepFreeze(value) {
4
4
  return Object.freeze(value);
5
5
  }
6
6
  const enUS = deepFreeze({
7
+ cascader: {
8
+ placeholder: "Choose an option",
9
+ clear: "Clear selection",
10
+ searchHint: "Search includes loaded options only.",
11
+ results: "Search results",
12
+ branch: "Has child options",
13
+ empty: "No options",
14
+ loading: "Loading options",
15
+ error: "Could not load options.",
16
+ retry: "Retry",
17
+ level: ({ level, label }) => `${label}, level ${level}`
18
+ },
19
+ code: {
20
+ copy: "Copy code",
21
+ copied: "Copied",
22
+ copyError: "Copy failed. Try again."
23
+ },
24
+ breadcrumb: { label: "Breadcrumb" },
7
25
  button: { loading: "Loading" },
8
26
  spinner: { label: "Loading" },
27
+ steps: {
28
+ label: "Steps",
29
+ wait: "Not started",
30
+ process: "In progress",
31
+ finish: "Completed",
32
+ error: "Error"
33
+ },
9
34
  numberField: {
10
35
  increment: "Increase",
11
36
  decrement: "Decrease"
@@ -17,14 +42,32 @@ const enUS = deepFreeze({
17
42
  empty: "No results",
18
43
  clear: "Clear",
19
44
  toggle: "Show options",
20
- remove: "Remove"
45
+ remove: "Remove",
46
+ loading: "Loading options",
47
+ error: "Could not load options.",
48
+ retry: "Retry",
49
+ loadMore: "Load more"
21
50
  },
22
51
  select: { clear: "Clear" },
52
+ fileUpload: {
53
+ selectFile: "Select file",
54
+ selectFiles: "Select files",
55
+ selectedFiles: "Selected files",
56
+ progress: "File upload progress",
57
+ remove: ({ name }) => `Remove ${name}`,
58
+ invalidType: ({ name, accept }) => `${name}: select a file matching ${accept}.`,
59
+ tooLarge: ({ name, maxSize }) => `${name}: the file must be ${maxSize} ${maxSize === 1 ? "byte" : "bytes"} or smaller.`,
60
+ tooSmall: ({ name, minSize }) => `${name}: the file must be at least ${minSize} ${minSize === 1 ? "byte" : "bytes"}.`,
61
+ tooMany: ({ maxFiles }) => `Select no more than ${maxFiles} files.`
62
+ },
23
63
  form: {
24
64
  optional: "Optional",
25
65
  moreInfo: "More information"
26
66
  },
27
67
  dataTable: {
68
+ rowDetails: "Row details",
69
+ expandRow: "Expand row",
70
+ collapseRow: "Collapse row",
28
71
  empty: "No Data",
29
72
  filter: ({ label }) => `Filter ${label}`,
30
73
  filterActive: ({ label, count }) => `Filter ${label}, ${count} selected`,
@@ -47,11 +90,63 @@ const enUS = deepFreeze({
47
90
  startTime: "Start time",
48
91
  endTime: "End time",
49
92
  presetsLabel: "Quick ranges"
93
+ },
94
+ relativeDateRangePicker: {
95
+ absolute: "Absolute time range",
96
+ from: "From",
97
+ to: "To",
98
+ apply: "Apply",
99
+ search: "Search quick ranges",
100
+ presets: "Quick ranges",
101
+ none: "No quick range matches",
102
+ browserTime: "Browser time",
103
+ calendar: "Select time range",
104
+ closeCalendar: "Close the calendar",
105
+ openCalendarFor: ({ label }) => `Open the calendar, ${label}`,
106
+ closeCalendarFor: ({ label }) => `Close the calendar, ${label}`,
107
+ understood: "Write a time as now, now-5m (the units are m, h, d and w), or as a date such as 2026-10-01 08:30.",
108
+ endError: ({ label, reason }) => `${label}: ${reason}`,
109
+ future: "The range cannot end in the future.",
110
+ endBeforeStart: "The range must end after it begins.",
111
+ tooLong: ({ days }) => `The range cannot be longer than ${days} days.`,
112
+ last: ({ count, unit }) => {
113
+ return `Last ${count} ${{
114
+ m: "minute",
115
+ h: "hour",
116
+ d: "day",
117
+ w: "week"
118
+ }[unit]}${count === "1" ? "" : "s"}`;
119
+ }
50
120
  }
51
121
  });
52
122
  const zhCN = deepFreeze({
123
+ cascader: {
124
+ placeholder: "请选择",
125
+ clear: "清除选择",
126
+ searchHint: "仅搜索已加载的选项。",
127
+ results: "搜索结果",
128
+ branch: "有子选项",
129
+ empty: "暂无选项",
130
+ loading: "正在加载选项",
131
+ error: "无法加载选项。",
132
+ retry: "重试",
133
+ level: ({ level, label }) => `${label},第 ${level} 级`
134
+ },
135
+ code: {
136
+ copy: "复制代码",
137
+ copied: "已复制",
138
+ copyError: "复制失败,请重试。"
139
+ },
140
+ breadcrumb: { label: "面包屑导航" },
53
141
  button: { loading: "加载中" },
54
142
  spinner: { label: "加载中" },
143
+ steps: {
144
+ label: "步骤",
145
+ wait: "未开始",
146
+ process: "进行中",
147
+ finish: "已完成",
148
+ error: "错误"
149
+ },
55
150
  numberField: {
56
151
  increment: "增加",
57
152
  decrement: "减少"
@@ -63,14 +158,32 @@ const zhCN = deepFreeze({
63
158
  empty: "无匹配结果",
64
159
  clear: "清除",
65
160
  toggle: "显示选项",
66
- remove: "移除"
161
+ remove: "移除",
162
+ loading: "正在加载选项",
163
+ error: "无法加载选项。",
164
+ retry: "重试",
165
+ loadMore: "加载更多"
67
166
  },
68
167
  select: { clear: "清除" },
168
+ fileUpload: {
169
+ selectFile: "选择文件",
170
+ selectFiles: "选择多个文件",
171
+ selectedFiles: "已选文件",
172
+ progress: "文件上传进度",
173
+ remove: ({ name }) => `移除 ${name}`,
174
+ invalidType: ({ name, accept }) => `${name}:请选择符合 ${accept} 的文件。`,
175
+ tooLarge: ({ name, maxSize }) => `${name}:文件不能超过 ${maxSize} 字节。`,
176
+ tooSmall: ({ name, minSize }) => `${name}:文件不能小于 ${minSize} 字节。`,
177
+ tooMany: ({ maxFiles }) => `最多选择 ${maxFiles} 个文件。`
178
+ },
69
179
  form: {
70
180
  optional: "可选",
71
181
  moreInfo: "更多信息"
72
182
  },
73
183
  dataTable: {
184
+ rowDetails: "行详情",
185
+ expandRow: "展开行",
186
+ collapseRow: "收起行",
74
187
  empty: "暂无数据",
75
188
  filter: ({ label }) => `筛选${label}`,
76
189
  filterActive: ({ label, count }) => `筛选${label},已选 ${count} 项`,
@@ -93,6 +206,31 @@ const zhCN = deepFreeze({
93
206
  startTime: "开始时间",
94
207
  endTime: "结束时间",
95
208
  presetsLabel: "快捷区间"
209
+ },
210
+ relativeDateRangePicker: {
211
+ absolute: "绝对时间范围",
212
+ from: "开始",
213
+ to: "结束",
214
+ apply: "应用",
215
+ search: "搜索快捷范围",
216
+ presets: "快捷范围",
217
+ none: "没有匹配的快捷范围",
218
+ browserTime: "浏览器时区",
219
+ calendar: "选择时间范围",
220
+ closeCalendar: "关闭日历",
221
+ openCalendarFor: ({ label }) => `打开日历,${label}`,
222
+ closeCalendarFor: ({ label }) => `关闭日历,${label}`,
223
+ understood: "时间可写作 now、now-5m(单位为 m、h、d、w),或日期,如 2026-10-01 08:30。",
224
+ endError: ({ label, reason }) => `${label}:${reason}`,
225
+ future: "时间范围不能结束于未来。",
226
+ endBeforeStart: "结束时间必须晚于开始时间。",
227
+ tooLong: ({ days }) => `时间范围不能超过 ${days} 天。`,
228
+ last: ({ count, unit }) => `最近 ${count} ${{
229
+ m: "分钟",
230
+ h: "小时",
231
+ d: "天",
232
+ w: "周"
233
+ }[unit]}`
96
234
  }
97
235
  });
98
236
  const dictionaries = {
@@ -0,0 +1,11 @@
1
+ export type ClipboardStatus = 'idle' | 'copying' | 'copied' | 'error';
2
+ export interface UseClipboardOptions {
3
+ /** How long successful copy feedback lasts, in milliseconds. */
4
+ timeout?: number;
5
+ }
6
+ export declare function useClipboard({ timeout }?: UseClipboardOptions): {
7
+ copy: (value: string) => Promise<boolean>;
8
+ reset: () => void;
9
+ status: ClipboardStatus;
10
+ error: Error | null;
11
+ };
@@ -0,0 +1,75 @@
1
+ "use client";
2
+ import { useCallback, useEffect, useRef, useState } from "react";
3
+ // src/hooks/use-clipboard.ts
4
+ function copyWithSelection(value) {
5
+ const active = document.activeElement instanceof HTMLElement ? document.activeElement : null;
6
+ const selection = document.getSelection();
7
+ const ranges = selection ? Array.from({ length: selection.rangeCount }, (_, i) => selection.getRangeAt(i)) : [];
8
+ const input = active instanceof HTMLInputElement || active instanceof HTMLTextAreaElement ? active : null;
9
+ const start = input?.selectionStart;
10
+ const end = input?.selectionEnd;
11
+ const textarea = document.createElement("textarea");
12
+ textarea.value = value;
13
+ textarea.readOnly = true;
14
+ textarea.style.cssText = "position:fixed;inset:0;opacity:0;pointer-events:none;";
15
+ (active?.closest("[role=\"dialog\"], dialog") ?? document.body).append(textarea);
16
+ try {
17
+ textarea.select();
18
+ if (!document.execCommand("copy")) throw new Error("Unable to copy to the clipboard.");
19
+ } finally {
20
+ textarea.remove();
21
+ active?.focus({ preventScroll: true });
22
+ selection?.removeAllRanges();
23
+ ranges.forEach((range) => selection?.addRange(range));
24
+ if (input && start != null && end != null) input.setSelectionRange(start, end);
25
+ }
26
+ }
27
+ async function writeText(value) {
28
+ if (navigator.clipboard?.writeText) try {
29
+ await navigator.clipboard.writeText(value);
30
+ return;
31
+ } catch {}
32
+ copyWithSelection(value);
33
+ }
34
+ function useClipboard({ timeout = 2e3 } = {}) {
35
+ const [status, setStatus] = useState("idle");
36
+ const [error, setError] = useState(null);
37
+ const operation = useRef(0);
38
+ const timer = useRef(void 0);
39
+ const reset = useCallback(() => {
40
+ operation.current += 1;
41
+ clearTimeout(timer.current);
42
+ setStatus("idle");
43
+ setError(null);
44
+ }, []);
45
+ useEffect(() => () => {
46
+ operation.current += 1;
47
+ clearTimeout(timer.current);
48
+ }, []);
49
+ return {
50
+ copy: useCallback(async (value) => {
51
+ const current = ++operation.current;
52
+ clearTimeout(timer.current);
53
+ setStatus("copying");
54
+ setError(null);
55
+ try {
56
+ await writeText(value);
57
+ } catch (cause) {
58
+ if (current !== operation.current) return false;
59
+ setError(cause instanceof Error ? cause : /* @__PURE__ */ new Error("Unable to copy to the clipboard."));
60
+ setStatus("error");
61
+ return false;
62
+ }
63
+ if (current !== operation.current) return false;
64
+ setStatus("copied");
65
+ timer.current = setTimeout(() => {
66
+ if (current === operation.current) setStatus("idle");
67
+ }, timeout);
68
+ return true;
69
+ }, [timeout]),
70
+ reset,
71
+ status,
72
+ error
73
+ };
74
+ }
75
+ export { useClipboard };
@@ -0,0 +1,32 @@
1
+ "use client";
2
+ import { useId, useLayoutEffect, useRef, useState } from "react";
3
+ // src/hooks/use-field-label-with-text.ts
4
+ /**
5
+ * Names a button that sits inside a field so that its accessible name is the field label followed by
6
+ * the button's own visible text.
7
+ *
8
+ * Base UI's Field.Control labels its control with the field label alone, which is right for an input
9
+ * but leaves the visible text of a button out of its accessible name, and WCAG 2.5.3 (Label in Name)
10
+ * and axe's label-content-name-mismatch require that text to be part of it. The id of the label is
11
+ * generated inside Base UI, so it is read back from the label element the browser associates with the
12
+ * button. The label and the button mount in the same commit and the label id lasts as long as the
13
+ * field, so one read is enough.
14
+ *
15
+ * Put `ref` on the button, `textId` on the element that wraps the visible text, and pass
16
+ * `labelledBy` as the button's `aria-labelledby`. Outside a field `labelledBy` is `undefined` and the
17
+ * button is named by its text. A `labelledBy` the caller supplies is returned untouched.
18
+ */
19
+ function useFieldLabelWithText(ariaLabelledby) {
20
+ const ref = useRef(null);
21
+ const textId = useId();
22
+ const [labelId, setLabelId] = useState();
23
+ useLayoutEffect(() => {
24
+ setLabelId(ref.current?.labels?.[0]?.id || void 0);
25
+ }, []);
26
+ return {
27
+ ref,
28
+ textId,
29
+ labelledBy: ariaLabelledby ?? (labelId ? `${labelId} ${textId}` : void 0)
30
+ };
31
+ }
32
+ export { useFieldLabelWithText };
package/dist/index.d.ts CHANGED
@@ -1,36 +1,49 @@
1
- import { LabeledField, LabeledFieldLayout, LabeledFieldProps } from "./components/field/labeled-field.js";
2
- import { NumberField, NumberFieldProps } from "./components/number-field/number-field.js";
3
- import { Select, SelectContent, SelectContentProps, SelectGroup, SelectGroupLabel, SelectGroupLabelProps, SelectGroupProps, SelectItem, SelectItemProps, SelectProps, SelectSeparator, SelectSeparatorProps, SelectTrigger, SelectTriggerProps, SelectValue, SelectValueProps } from "./components/select/select.js";
4
- import { Calendar, CalendarProps } from "./components/calendar/calendar.js";
5
- import { DatePicker, DatePickerProps, DateRange, DateRangePicker, DateRangePickerProps, DateRangePreset } from "./components/date-picker/date-picker.js";
6
- import { Button, ButtonProps, buttonVariants } from "./components/button/button.js";
7
- import { Input, InputProps } from "./components/input/input.js";
8
- import { Textarea, TextareaProps } from "./components/textarea/textarea.js";
9
- import { Checkbox, CheckboxProps } from "./components/checkbox/checkbox.js";
10
- import { Switch, SwitchProps } from "./components/switch/switch.js";
11
- import { Locale, Messages, MessagesOverride } from "./config/messages.js";
12
1
  import { ConfigProvider, ConfigProviderProps, useLocale, useMessages } from "./config/config-provider.js";
2
+ import { Locale, Messages, MessagesOverride } from "./config/messages.js";
3
+ import { Code, CodeProps } from "./components/code/code.js";
4
+ import { CodeBlock, CodeBlockProps } from "./components/code-block/code-block.js";
5
+ import { ClipboardStatus, UseClipboardOptions, useClipboard } from "./hooks/use-clipboard.js";
6
+ import { Anchor, AnchorItem, AnchorProps } from "./components/anchor/anchor.js";
13
7
  import { Alert, AlertDescription, AlertDescriptionProps, AlertProps, AlertTitle, AlertTitleProps, alertVariants } from "./components/alert/alert.js";
14
8
  import { Avatar, AvatarProps, AvatarSize } from "./components/avatar/avatar.js";
15
9
  import { Badge, BadgeColor, BadgeProps, badgeVariants } from "./components/badge/badge.js";
10
+ import { Breadcrumb, BreadcrumbItem, BreadcrumbItemProps, BreadcrumbLink, BreadcrumbLinkProps, BreadcrumbList, BreadcrumbListProps, BreadcrumbPage, BreadcrumbPageProps, BreadcrumbProps, BreadcrumbSeparator, BreadcrumbSeparatorProps } from "./components/breadcrumb/breadcrumb.js";
11
+ import { Button, ButtonProps, buttonVariants } from "./components/button/button.js";
12
+ import { Calendar, CalendarProps } from "./components/calendar/calendar.js";
13
+ import { Cascader, CascaderProps } from "./components/cascader/cascader.js";
14
+ import { Checkbox, CheckboxProps } from "./components/checkbox/checkbox.js";
15
+ import { Collapsible, CollapsibleContent, CollapsibleContentProps, CollapsibleProps, CollapsibleTrigger, CollapsibleTriggerProps } from "./components/collapsible/collapsible.js";
16
+ import { DatePicker, DatePickerProps, DateRange, DateRangePicker, DateRangePickerProps, DateRangePreset } from "./components/date-picker/date-picker.js";
16
17
  import { Combobox, ComboboxChip, ComboboxChipProps, ComboboxChips, ComboboxChipsInput, ComboboxChipsInputProps, ComboboxChipsProps, ComboboxContent, ComboboxContentProps, ComboboxEmpty, ComboboxEmptyProps, ComboboxGroup, ComboboxGroupLabel, ComboboxGroupLabelProps, ComboboxGroupProps, ComboboxInput, ComboboxInputProps, ComboboxItem, ComboboxItemProps, ComboboxProps, ComboboxValue, ComboboxValueProps } from "./components/combobox/combobox.js";
17
18
  import { DescriptionList, DescriptionListItem, DescriptionListItemProps, DescriptionListLabel, DescriptionListLabelProps, DescriptionListProps, DescriptionListValue, DescriptionListValueProps, descriptionListVariants } from "./components/description-list/description-list.js";
18
19
  import { Empty, EmptyContent, EmptyContentProps, EmptyDescription, EmptyDescriptionProps, EmptyHeader, EmptyHeaderProps, EmptyMedia, EmptyMediaProps, EmptyProps, EmptyTitle, EmptyTitleProps, emptyMediaVariants } from "./components/empty/empty.js";
19
20
  import { Field, FieldDescription, FieldDescriptionProps, FieldError, FieldErrorProps, FieldLabel, FieldLabelProps, FieldProps, Fieldset, FieldsetLegend, FieldsetLegendProps, FieldsetProps } from "./components/field/field.js";
21
+ import { CascaderLoadRequest, CascaderLoader, CascaderOption, CascaderValue } from "./components/cascader/cascader-data.js";
22
+ import { LabeledField, LabeledFieldLayout, LabeledFieldProps } from "./components/field/labeled-field.js";
23
+ import { FileUpload, FileUploadProps, FileUploadRejection, FileUploadRejectionCode } from "./components/file-upload/file-upload.js";
20
24
  import { Dialog, DialogBody, DialogBodyProps, DialogClose, DialogCloseProps, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogFooter, DialogFooterProps, DialogHeader, DialogHeaderProps, DialogProps, DialogTitle, DialogTitleProps, DialogTrigger, DialogTriggerProps } from "./components/dialog/dialog.js";
25
+ import { ComboboxLoadRequest, ComboboxPage } from "./components/combobox/combobox-loading.js";
21
26
  import { Drawer, DrawerBody, DrawerBodyProps, DrawerClose, DrawerCloseProps, DrawerContent, DrawerContentProps, DrawerDescription, DrawerDescriptionProps, DrawerFooter, DrawerFooterProps, DrawerHeader, DrawerHeaderProps, DrawerProps, DrawerTitle, DrawerTitleProps, DrawerTrigger, DrawerTriggerProps } from "./components/drawer/drawer.js";
27
+ import { Input, InputProps } from "./components/input/input.js";
22
28
  import { InputGroup, InputGroupAddon, InputGroupAddonProps, InputGroupProps } from "./components/input-group/input-group.js";
23
29
  import { Menu, MenuCheckboxItem, MenuCheckboxItemProps, MenuContent, MenuContentProps, MenuGroup, MenuGroupLabel, MenuGroupLabelProps, MenuGroupProps, MenuItem, MenuItemProps, MenuRadioGroup, MenuRadioGroupProps, MenuRadioItem, MenuRadioItemProps, MenuSeparator, MenuSeparatorProps, MenuSub, MenuSubContent, MenuSubContentProps, MenuSubTrigger, MenuSubTriggerProps, MenuTrigger, MenuTriggerProps } from "./components/menu/menu.js";
24
- import { Pagination, PaginationProps, getPageItems } from "./components/pagination/pagination.js";
30
+ import { NumberField, NumberFieldProps } from "./components/number-field/number-field.js";
31
+ import { Pagination, PaginationByPositionProps, PaginationProps, getPageItems } from "./components/pagination/pagination.js";
25
32
  import { Popover, PopoverArrow, PopoverArrowProps, PopoverClose, PopoverCloseProps, PopoverContent, PopoverContentProps, PopoverDescription, PopoverDescriptionProps, PopoverTitle, PopoverTitleProps, PopoverTrigger, PopoverTriggerProps } from "./components/popover/popover.js";
26
33
  import { RadioGroup, RadioGroupItem, RadioGroupItemProps, RadioGroupProps } from "./components/radio-group/radio-group.js";
34
+ import { ParsedRelativeTime, RelativeDateRangeMessages, RelativeDateRangeValue, describeRelativeDateRange, normalizeRelativeTime, parseRelativeTime, resolveRelativeDateRange } from "./components/relative-date-range-picker/relative-date-range.js";
35
+ import { RelativeDateRangePicker, RelativeDateRangePickerProps, RelativeDateRangePreset } from "./components/relative-date-range-picker/relative-date-range-picker.js";
36
+ import { Select, SelectContent, SelectContentProps, SelectGroup, SelectGroupLabel, SelectGroupLabelProps, SelectGroupProps, SelectItem, SelectItemProps, SelectProps, SelectSeparator, SelectSeparatorProps, SelectTrigger, SelectTriggerProps, SelectValue, SelectValueProps } from "./components/select/select.js";
27
37
  import { Progress, ProgressProps } from "./components/progress/progress.js";
28
38
  import { Separator, SeparatorProps } from "./components/separator/separator.js";
29
39
  import { Sidebar, SidebarGroup, SidebarGroupProps, SidebarItem, SidebarItemProps, SidebarProps } from "./components/sidebar/sidebar.js";
30
40
  import { Skeleton, SkeletonProps } from "./components/skeleton/skeleton.js";
31
41
  import { Spinner, SpinnerProps, spinnerVariants } from "./components/spinner/spinner.js";
42
+ import { Steps, StepsItem, StepsProps, StepsStatus } from "./components/steps/steps.js";
43
+ import { Switch, SwitchProps } from "./components/switch/switch.js";
32
44
  import { Table, TableBody, TableBodyProps, TableCaption, TableCaptionProps, TableCell, TableCellProps, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableProps, TableRow, TableRowProps } from "./components/table/table.js";
33
45
  import { Tabs, TabsContent, TabsContentProps, TabsList, TabsListProps, TabsProps, TabsTrigger, TabsTriggerProps } from "./components/tabs/tabs.js";
46
+ import { Textarea, TextareaProps } from "./components/textarea/textarea.js";
34
47
  import { ToastActionOptions, ToastOptions, ToastPromiseMessage, Toaster, ToasterProps, toast } from "./components/toast/toast.js";
35
48
  import { Tooltip, TooltipContent, TooltipContentProps, TooltipProvider, TooltipProviderProps, TooltipTrigger, TooltipTriggerProps } from "./components/tooltip/tooltip.js";
36
- export { Alert, AlertDescription, type AlertDescriptionProps, type AlertProps, AlertTitle, type AlertTitleProps, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeColor, type BadgeProps, Button, type ButtonProps, Calendar, type CalendarProps, Checkbox, type CheckboxProps, Combobox, ComboboxChip, type ComboboxChipProps, ComboboxChips, ComboboxChipsInput, type ComboboxChipsInputProps, type ComboboxChipsProps, ComboboxContent, type ComboboxContentProps, ComboboxEmpty, type ComboboxEmptyProps, ComboboxGroup, ComboboxGroupLabel, type ComboboxGroupLabelProps, type ComboboxGroupProps, ComboboxInput, type ComboboxInputProps, ComboboxItem, type ComboboxItemProps, type ComboboxProps, ComboboxValue, type ComboboxValueProps, ConfigProvider, type ConfigProviderProps, DatePicker, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, DescriptionList, DescriptionListItem, type DescriptionListItemProps, DescriptionListLabel, type DescriptionListLabelProps, type DescriptionListProps, DescriptionListValue, type DescriptionListValueProps, Dialog, DialogBody, type DialogBodyProps, DialogClose, type DialogCloseProps, DialogContent, type DialogContentProps, DialogDescription, type DialogDescriptionProps, DialogFooter, type DialogFooterProps, DialogHeader, type DialogHeaderProps, type DialogProps, DialogTitle, type DialogTitleProps, DialogTrigger, type DialogTriggerProps, Drawer, DrawerBody, type DrawerBodyProps, DrawerClose, type DrawerCloseProps, DrawerContent, type DrawerContentProps, DrawerDescription, type DrawerDescriptionProps, DrawerFooter, type DrawerFooterProps, DrawerHeader, type DrawerHeaderProps, type DrawerProps, DrawerTitle, type DrawerTitleProps, DrawerTrigger, type DrawerTriggerProps, Empty, EmptyContent, type EmptyContentProps, EmptyDescription, type EmptyDescriptionProps, EmptyHeader, type EmptyHeaderProps, EmptyMedia, type EmptyMediaProps, type EmptyProps, EmptyTitle, type EmptyTitleProps, Field, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, FieldLabel, type FieldLabelProps, type FieldProps, Fieldset, FieldsetLegend, type FieldsetLegendProps, type FieldsetProps, Input, InputGroup, InputGroupAddon, type InputGroupAddonProps, type InputGroupProps, type InputProps, LabeledField, type LabeledFieldLayout, type LabeledFieldProps, type Locale, Menu, MenuCheckboxItem, type MenuCheckboxItemProps, MenuContent, type MenuContentProps, MenuGroup, MenuGroupLabel, type MenuGroupLabelProps, type MenuGroupProps, MenuItem, type MenuItemProps, MenuRadioGroup, type MenuRadioGroupProps, MenuRadioItem, type MenuRadioItemProps, MenuSeparator, type MenuSeparatorProps, MenuSub, MenuSubContent, type MenuSubContentProps, MenuSubTrigger, type MenuSubTriggerProps, MenuTrigger, type MenuTriggerProps, type Messages, type MessagesOverride, NumberField, type NumberFieldProps, Pagination, type PaginationProps, Popover, PopoverArrow, type PopoverArrowProps, PopoverClose, type PopoverCloseProps, PopoverContent, type PopoverContentProps, PopoverDescription, type PopoverDescriptionProps, PopoverTitle, type PopoverTitleProps, PopoverTrigger, type PopoverTriggerProps, Progress, type ProgressProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, Select, SelectContent, type SelectContentProps, SelectGroup, SelectGroupLabel, type SelectGroupLabelProps, type SelectGroupProps, SelectItem, type SelectItemProps, type SelectProps, SelectSeparator, type SelectSeparatorProps, SelectTrigger, type SelectTriggerProps, SelectValue, type SelectValueProps, Separator, type SeparatorProps, Sidebar, SidebarGroup, type SidebarGroupProps, SidebarItem, type SidebarItemProps, type SidebarProps, Skeleton, type SkeletonProps, Spinner, type SpinnerProps, Switch, type SwitchProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, Textarea, type TextareaProps, type ToastActionOptions, type ToastOptions, type ToastPromiseMessage, Toaster, type ToasterProps, Tooltip, TooltipContent, type TooltipContentProps, TooltipProvider, type TooltipProviderProps, TooltipTrigger, type TooltipTriggerProps, alertVariants, badgeVariants, buttonVariants, descriptionListVariants, emptyMediaVariants, getPageItems, spinnerVariants, toast, useLocale, useMessages };
49
+ export { Alert, AlertDescription, type AlertDescriptionProps, type AlertProps, AlertTitle, type AlertTitleProps, Anchor, type AnchorItem, type AnchorProps, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeColor, type BadgeProps, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, BreadcrumbList, type BreadcrumbListProps, BreadcrumbPage, type BreadcrumbPageProps, type BreadcrumbProps, BreadcrumbSeparator, type BreadcrumbSeparatorProps, Button, type ButtonProps, Calendar, type CalendarProps, Cascader, type CascaderLoadRequest, type CascaderLoader, type CascaderOption, type CascaderProps, type CascaderValue, Checkbox, type CheckboxProps, type ClipboardStatus, Code, CodeBlock, type CodeBlockProps, type CodeProps, Collapsible, CollapsibleContent, type CollapsibleContentProps, type CollapsibleProps, CollapsibleTrigger, type CollapsibleTriggerProps, Combobox, ComboboxChip, type ComboboxChipProps, ComboboxChips, ComboboxChipsInput, type ComboboxChipsInputProps, type ComboboxChipsProps, ComboboxContent, type ComboboxContentProps, ComboboxEmpty, type ComboboxEmptyProps, ComboboxGroup, ComboboxGroupLabel, type ComboboxGroupLabelProps, type ComboboxGroupProps, ComboboxInput, type ComboboxInputProps, ComboboxItem, type ComboboxItemProps, type ComboboxLoadRequest, type ComboboxPage, type ComboboxProps, ComboboxValue, type ComboboxValueProps, ConfigProvider, type ConfigProviderProps, DatePicker, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, DescriptionList, DescriptionListItem, type DescriptionListItemProps, DescriptionListLabel, type DescriptionListLabelProps, type DescriptionListProps, DescriptionListValue, type DescriptionListValueProps, Dialog, DialogBody, type DialogBodyProps, DialogClose, type DialogCloseProps, DialogContent, type DialogContentProps, DialogDescription, type DialogDescriptionProps, DialogFooter, type DialogFooterProps, DialogHeader, type DialogHeaderProps, type DialogProps, DialogTitle, type DialogTitleProps, DialogTrigger, type DialogTriggerProps, Drawer, DrawerBody, type DrawerBodyProps, DrawerClose, type DrawerCloseProps, DrawerContent, type DrawerContentProps, DrawerDescription, type DrawerDescriptionProps, DrawerFooter, type DrawerFooterProps, DrawerHeader, type DrawerHeaderProps, type DrawerProps, DrawerTitle, type DrawerTitleProps, DrawerTrigger, type DrawerTriggerProps, Empty, EmptyContent, type EmptyContentProps, EmptyDescription, type EmptyDescriptionProps, EmptyHeader, type EmptyHeaderProps, EmptyMedia, type EmptyMediaProps, type EmptyProps, EmptyTitle, type EmptyTitleProps, Field, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, FieldLabel, type FieldLabelProps, type FieldProps, Fieldset, FieldsetLegend, type FieldsetLegendProps, type FieldsetProps, FileUpload, type FileUploadProps, type FileUploadRejection, type FileUploadRejectionCode, Input, InputGroup, InputGroupAddon, type InputGroupAddonProps, type InputGroupProps, type InputProps, LabeledField, type LabeledFieldLayout, type LabeledFieldProps, type Locale, Menu, MenuCheckboxItem, type MenuCheckboxItemProps, MenuContent, type MenuContentProps, MenuGroup, MenuGroupLabel, type MenuGroupLabelProps, type MenuGroupProps, MenuItem, type MenuItemProps, MenuRadioGroup, type MenuRadioGroupProps, MenuRadioItem, type MenuRadioItemProps, MenuSeparator, type MenuSeparatorProps, MenuSub, MenuSubContent, type MenuSubContentProps, MenuSubTrigger, type MenuSubTriggerProps, MenuTrigger, type MenuTriggerProps, type Messages, type MessagesOverride, NumberField, type NumberFieldProps, Pagination, type PaginationByPositionProps, type PaginationProps, type ParsedRelativeTime, Popover, PopoverArrow, type PopoverArrowProps, PopoverClose, type PopoverCloseProps, PopoverContent, type PopoverContentProps, PopoverDescription, type PopoverDescriptionProps, PopoverTitle, type PopoverTitleProps, PopoverTrigger, type PopoverTriggerProps, Progress, type ProgressProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, type RelativeDateRangeMessages, RelativeDateRangePicker, type RelativeDateRangePickerProps, type RelativeDateRangePreset, type RelativeDateRangeValue, Select, SelectContent, type SelectContentProps, SelectGroup, SelectGroupLabel, type SelectGroupLabelProps, type SelectGroupProps, SelectItem, type SelectItemProps, type SelectProps, SelectSeparator, type SelectSeparatorProps, SelectTrigger, type SelectTriggerProps, SelectValue, type SelectValueProps, Separator, type SeparatorProps, Sidebar, SidebarGroup, type SidebarGroupProps, SidebarItem, type SidebarItemProps, type SidebarProps, Skeleton, type SkeletonProps, Spinner, type SpinnerProps, Steps, type StepsItem, type StepsProps, type StepsStatus, Switch, type SwitchProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, Textarea, type TextareaProps, type ToastActionOptions, type ToastOptions, type ToastPromiseMessage, Toaster, type ToasterProps, Tooltip, TooltipContent, type TooltipContentProps, TooltipProvider, type TooltipProviderProps, TooltipTrigger, type TooltipTriggerProps, type UseClipboardOptions, alertVariants, badgeVariants, buttonVariants, describeRelativeDateRange, descriptionListVariants, emptyMediaVariants, getPageItems, normalizeRelativeTime, parseRelativeTime, resolveRelativeDateRange, spinnerVariants, toast, useClipboard, useLocale, useMessages };
package/dist/index.js CHANGED
@@ -1,35 +1,46 @@
1
1
  import { ConfigProvider, useLocale, useMessages } from "./config/config-provider.js";
2
+ import { Code } from "./components/code/code.js";
3
+ import { CodeBlock } from "./components/code-block/code-block.js";
4
+ import { useClipboard } from "./hooks/use-clipboard.js";
5
+ import { Anchor } from "./components/anchor/anchor.js";
2
6
  import { Alert, AlertDescription, AlertTitle, alertVariants } from "./components/alert/alert.js";
3
7
  import { Avatar } from "./components/avatar/avatar.js";
4
8
  import { Badge, badgeVariants } from "./components/badge/badge.js";
9
+ import { Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from "./components/breadcrumb/breadcrumb.js";
5
10
  import { Button, buttonVariants } from "./components/button/button.js";
6
11
  import { Calendar } from "./components/calendar/calendar.js";
12
+ import { Cascader } from "./components/cascader/cascader.js";
7
13
  import { Checkbox } from "./components/checkbox/checkbox.js";
8
- import { Popover, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger } from "./components/popover/popover.js";
14
+ import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "./components/collapsible/collapsible.js";
9
15
  import { DatePicker, DateRangePicker } from "./components/date-picker/date-picker.js";
10
16
  import { Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxValue } from "./components/combobox/combobox.js";
11
17
  import { DescriptionList, DescriptionListItem, DescriptionListLabel, DescriptionListValue, descriptionListVariants } from "./components/description-list/description-list.js";
12
18
  import { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, emptyMediaVariants } from "./components/empty/empty.js";
13
19
  import { Field, FieldDescription, FieldError, FieldLabel, Fieldset, FieldsetLegend } from "./components/field/field.js";
14
- import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "./components/tooltip/tooltip.js";
15
20
  import { LabeledField } from "./components/field/labeled-field.js";
21
+ import { FileUpload } from "./components/file-upload/file-upload.js";
16
22
  import { Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from "./components/dialog/dialog.js";
17
23
  import { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger } from "./components/drawer/drawer.js";
18
24
  import { Input } from "./components/input/input.js";
19
25
  import { InputGroup, InputGroupAddon } from "./components/input-group/input-group.js";
20
26
  import { Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger } from "./components/menu/menu.js";
21
27
  import { NumberField } from "./components/number-field/number-field.js";
22
- import { Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue } from "./components/select/select.js";
23
28
  import { Pagination, getPageItems } from "./components/pagination/pagination.js";
29
+ import { Popover, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger } from "./components/popover/popover.js";
24
30
  import { RadioGroup, RadioGroupItem } from "./components/radio-group/radio-group.js";
31
+ import { describeRelativeDateRange, normalizeRelativeTime, parseRelativeTime, resolveRelativeDateRange } from "./components/relative-date-range-picker/relative-date-range.js";
32
+ import { RelativeDateRangePicker } from "./components/relative-date-range-picker/relative-date-range-picker.js";
33
+ import { Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue } from "./components/select/select.js";
25
34
  import { Progress } from "./components/progress/progress.js";
26
35
  import { Separator } from "./components/separator/separator.js";
27
36
  import { Sidebar, SidebarGroup, SidebarItem } from "./components/sidebar/sidebar.js";
28
37
  import { Skeleton } from "./components/skeleton/skeleton.js";
29
38
  import { Spinner, spinnerVariants } from "./components/spinner/spinner.js";
39
+ import { Steps } from "./components/steps/steps.js";
30
40
  import { Switch } from "./components/switch/switch.js";
31
41
  import { Table, TableBody, TableCaption, TableCell, TableHead, TableHeader, TableRow } from "./components/table/table.js";
32
42
  import { Tabs, TabsContent, TabsList, TabsTrigger } from "./components/tabs/tabs.js";
33
43
  import { Textarea } from "./components/textarea/textarea.js";
34
44
  import { Toaster, toast } from "./components/toast/toast.js";
35
- export { Alert, AlertDescription, AlertTitle, Avatar, Badge, Button, Calendar, Checkbox, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxValue, ConfigProvider, DatePicker, DateRangePicker, DescriptionList, DescriptionListItem, DescriptionListLabel, DescriptionListValue, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, Field, FieldDescription, FieldError, FieldLabel, Fieldset, FieldsetLegend, Input, InputGroup, InputGroupAddon, LabeledField, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger, NumberField, Pagination, Popover, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger, Progress, RadioGroup, RadioGroupItem, Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sidebar, SidebarGroup, SidebarItem, Skeleton, Spinner, Switch, Table, TableBody, TableCaption, TableCell, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, alertVariants, badgeVariants, buttonVariants, descriptionListVariants, emptyMediaVariants, getPageItems, spinnerVariants, toast, useLocale, useMessages };
45
+ import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "./components/tooltip/tooltip.js";
46
+ export { Alert, AlertDescription, AlertTitle, Anchor, Avatar, Badge, Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Calendar, Cascader, Checkbox, Code, CodeBlock, Collapsible, CollapsibleContent, CollapsibleTrigger, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxValue, ConfigProvider, DatePicker, DateRangePicker, DescriptionList, DescriptionListItem, DescriptionListLabel, DescriptionListValue, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, Field, FieldDescription, FieldError, FieldLabel, Fieldset, FieldsetLegend, FileUpload, Input, InputGroup, InputGroupAddon, LabeledField, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger, NumberField, Pagination, Popover, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger, Progress, RadioGroup, RadioGroupItem, RelativeDateRangePicker, Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sidebar, SidebarGroup, SidebarItem, Skeleton, Spinner, Steps, Switch, Table, TableBody, TableCaption, TableCell, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, alertVariants, badgeVariants, buttonVariants, describeRelativeDateRange, descriptionListVariants, emptyMediaVariants, getPageItems, normalizeRelativeTime, parseRelativeTime, resolveRelativeDateRange, spinnerVariants, toast, useClipboard, useLocale, useMessages };
@@ -1,5 +1,5 @@
1
1
  import { FAMILIES, STEPS } from "./types.js";
2
+ import { AA, ContrastPair, badgePairs, semanticPairs } from "./contrast.js";
2
3
  import { palette } from "./palette.js";
3
4
  import { themes } from "./semantic.js";
4
- import { AA, ContrastPair, badgePairs, semanticPairs } from "./contrast.js";
5
5
  export { AA, type ContrastPair, FAMILIES, STEPS, badgePairs, palette, semanticPairs, themes };
@@ -1,5 +1,5 @@
1
1
  import { FAMILIES, STEPS } from "./types.js";
2
+ import { AA, badgePairs, semanticPairs } from "./contrast.js";
2
3
  import { palette } from "./palette.js";
3
4
  import { themes } from "./semantic.js";
4
- import { AA, badgePairs, semanticPairs } from "./contrast.js";
5
5
  export { AA, FAMILIES, STEPS, badgePairs, palette, semanticPairs, themes };