@optimum-intelligence/opti-ui 0.0.0-stage → 0.3.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/LICENSE +23 -0
- package/README.md +244 -2
- package/dist/components/accordion/Accordion.d.ts +17 -0
- package/dist/components/accordion/Accordion.js +204 -0
- package/dist/components/accordion/Accordion.js.map +1 -0
- package/dist/components/alert/Alert.d.ts +18 -0
- package/dist/components/alert/Alert.js +164 -0
- package/dist/components/alert/Alert.js.map +1 -0
- package/dist/components/app-shell/AppShell.d.ts +97 -0
- package/dist/components/app-shell/AppShell.js +689 -0
- package/dist/components/app-shell/AppShell.js.map +1 -0
- package/dist/components/avatar/Avatar.d.ts +21 -0
- package/dist/components/avatar/Avatar.js +190 -0
- package/dist/components/avatar/Avatar.js.map +1 -0
- package/dist/components/badge/Badge.d.ts +16 -0
- package/dist/components/badge/Badge.js +94 -0
- package/dist/components/badge/Badge.js.map +1 -0
- package/dist/components/breadcrumbs/Breadcrumbs.d.ts +18 -0
- package/dist/components/breadcrumbs/Breadcrumbs.js +154 -0
- package/dist/components/breadcrumbs/Breadcrumbs.js.map +1 -0
- package/dist/components/button/Button.d.ts +23 -0
- package/dist/components/button/Button.js +159 -0
- package/dist/components/button/Button.js.map +1 -0
- package/dist/components/calendar/Calendar.d.ts +59 -0
- package/dist/components/calendar/Calendar.js +709 -0
- package/dist/components/calendar/Calendar.js.map +1 -0
- package/dist/components/calendar/date-utils.d.ts +32 -0
- package/dist/components/calendar/date-utils.js +112 -0
- package/dist/components/calendar/date-utils.js.map +1 -0
- package/dist/components/card/Card.d.ts +42 -0
- package/dist/components/card/Card.js +82 -0
- package/dist/components/card/Card.js.map +1 -0
- package/dist/components/choice/Choice.d.ts +32 -0
- package/dist/components/choice/Choice.js +371 -0
- package/dist/components/choice/Choice.js.map +1 -0
- package/dist/components/collapsible/Collapsible.d.ts +15 -0
- package/dist/components/collapsible/Collapsible.js +155 -0
- package/dist/components/collapsible/Collapsible.js.map +1 -0
- package/dist/components/combobox/Combobox.d.ts +68 -0
- package/dist/components/combobox/Combobox.js +752 -0
- package/dist/components/combobox/Combobox.js.map +1 -0
- package/dist/components/command-palette/CommandPalette.d.ts +52 -0
- package/dist/components/command-palette/CommandPalette.js +328 -0
- package/dist/components/command-palette/CommandPalette.js.map +1 -0
- package/dist/components/data-table/DataTable.d.ts +73 -0
- package/dist/components/data-table/DataTable.js +478 -0
- package/dist/components/data-table/DataTable.js.map +1 -0
- package/dist/components/data-table/DataTableContent.d.ts +35 -0
- package/dist/components/data-table/DataTableContent.js +550 -0
- package/dist/components/data-table/DataTableContent.js.map +1 -0
- package/dist/components/data-table/DataTableFilters.d.ts +15 -0
- package/dist/components/data-table/DataTableFilters.js +284 -0
- package/dist/components/data-table/DataTableFilters.js.map +1 -0
- package/dist/components/data-table/DataTableRow.d.ts +33 -0
- package/dist/components/data-table/DataTableRow.js +552 -0
- package/dist/components/data-table/DataTableRow.js.map +1 -0
- package/dist/components/data-table/context.d.ts +5 -0
- package/dist/components/data-table/context.js +14 -0
- package/dist/components/data-table/context.js.map +1 -0
- package/dist/components/data-table/layout.d.ts +60 -0
- package/dist/components/data-table/layout.js +272 -0
- package/dist/components/data-table/layout.js.map +1 -0
- package/dist/components/data-table/types.d.ts +319 -0
- package/dist/components/data-table/useDataTable.d.ts +9 -0
- package/dist/components/data-table/useDataTable.js +666 -0
- package/dist/components/data-table/useDataTable.js.map +1 -0
- package/dist/components/date-picker/DatePicker.d.ts +50 -0
- package/dist/components/date-picker/DatePicker.js +485 -0
- package/dist/components/date-picker/DatePicker.js.map +1 -0
- package/dist/components/date-picker/DateRangePicker.d.ts +39 -0
- package/dist/components/date-picker/DateRangePicker.js +339 -0
- package/dist/components/date-picker/DateRangePicker.js.map +1 -0
- package/dist/components/date-picker/PickerField.d.ts +38 -0
- package/dist/components/date-picker/PickerField.js +238 -0
- package/dist/components/date-picker/PickerField.js.map +1 -0
- package/dist/components/dialog/Dialog.d.ts +70 -0
- package/dist/components/dialog/Dialog.js +354 -0
- package/dist/components/dialog/Dialog.js.map +1 -0
- package/dist/components/drawer/Drawer.d.ts +39 -0
- package/dist/components/drawer/Drawer.js +225 -0
- package/dist/components/drawer/Drawer.js.map +1 -0
- package/dist/components/empty-state/EmptyState.d.ts +12 -0
- package/dist/components/empty-state/EmptyState.js +116 -0
- package/dist/components/empty-state/EmptyState.js.map +1 -0
- package/dist/components/field/Field.d.ts +36 -0
- package/dist/components/field/Field.js +337 -0
- package/dist/components/field/Field.js.map +1 -0
- package/dist/components/file-upload/FileUpload.d.ts +91 -0
- package/dist/components/file-upload/FileUpload.js +714 -0
- package/dist/components/file-upload/FileUpload.js.map +1 -0
- package/dist/components/input/Input.d.ts +49 -0
- package/dist/components/input/Input.js +538 -0
- package/dist/components/input/Input.js.map +1 -0
- package/dist/components/link/Link.d.ts +17 -0
- package/dist/components/link/Link.js +91 -0
- package/dist/components/link/Link.js.map +1 -0
- package/dist/components/menu/Menu.d.ts +79 -0
- package/dist/components/menu/Menu.js +615 -0
- package/dist/components/menu/Menu.js.map +1 -0
- package/dist/components/number-field/NumberField.d.ts +16 -0
- package/dist/components/number-field/NumberField.js +188 -0
- package/dist/components/number-field/NumberField.js.map +1 -0
- package/dist/components/pagination/Pagination.d.ts +34 -0
- package/dist/components/pagination/Pagination.js +244 -0
- package/dist/components/pagination/Pagination.js.map +1 -0
- package/dist/components/popover/Popover.d.ts +22 -0
- package/dist/components/popover/Popover.js +186 -0
- package/dist/components/popover/Popover.js.map +1 -0
- package/dist/components/preview-card/PreviewCard.d.ts +20 -0
- package/dist/components/preview-card/PreviewCard.js +114 -0
- package/dist/components/preview-card/PreviewCard.js.map +1 -0
- package/dist/components/progress/Progress.d.ts +20 -0
- package/dist/components/progress/Progress.js +169 -0
- package/dist/components/progress/Progress.js.map +1 -0
- package/dist/components/scroll-area/ScrollArea.d.ts +8 -0
- package/dist/components/scroll-area/ScrollArea.js +112 -0
- package/dist/components/scroll-area/ScrollArea.js.map +1 -0
- package/dist/components/search-input/SearchInput.d.ts +14 -0
- package/dist/components/search-input/SearchInput.js +114 -0
- package/dist/components/search-input/SearchInput.js.map +1 -0
- package/dist/components/select/Select.d.ts +66 -0
- package/dist/components/select/Select.js +601 -0
- package/dist/components/select/Select.js.map +1 -0
- package/dist/components/separator/Separator.d.ts +4 -0
- package/dist/components/separator/Separator.js +46 -0
- package/dist/components/separator/Separator.js.map +1 -0
- package/dist/components/skeleton/Skeleton.d.ts +16 -0
- package/dist/components/skeleton/Skeleton.js +135 -0
- package/dist/components/skeleton/Skeleton.js.map +1 -0
- package/dist/components/slider/Slider.d.ts +11 -0
- package/dist/components/slider/Slider.js +107 -0
- package/dist/components/slider/Slider.js.map +1 -0
- package/dist/components/spinner/Spinner.d.ts +9 -0
- package/dist/components/spinner/Spinner.js +78 -0
- package/dist/components/spinner/Spinner.js.map +1 -0
- package/dist/components/stack/Stack.d.ts +23 -0
- package/dist/components/stack/Stack.js +79 -0
- package/dist/components/stack/Stack.js.map +1 -0
- package/dist/components/stat-card/StatCard.d.ts +22 -0
- package/dist/components/stat-card/StatCard.js +153 -0
- package/dist/components/stat-card/StatCard.js.map +1 -0
- package/dist/components/stepper/Stepper.d.ts +30 -0
- package/dist/components/stepper/Stepper.js +131 -0
- package/dist/components/stepper/Stepper.js.map +1 -0
- package/dist/components/table/Table.d.ts +53 -0
- package/dist/components/table/Table.js +221 -0
- package/dist/components/table/Table.js.map +1 -0
- package/dist/components/tabs/Tabs.d.ts +19 -0
- package/dist/components/tabs/Tabs.js +183 -0
- package/dist/components/tabs/Tabs.js.map +1 -0
- package/dist/components/tag/Tag.d.ts +22 -0
- package/dist/components/tag/Tag.js +121 -0
- package/dist/components/tag/Tag.js.map +1 -0
- package/dist/components/toast/Toast.d.ts +34 -0
- package/dist/components/toast/Toast.js +187 -0
- package/dist/components/toast/Toast.js.map +1 -0
- package/dist/components/toggle/Toggle.d.ts +31 -0
- package/dist/components/toggle/Toggle.js +197 -0
- package/dist/components/toggle/Toggle.js.map +1 -0
- package/dist/components/toolbar/Toolbar.d.ts +21 -0
- package/dist/components/toolbar/Toolbar.js +239 -0
- package/dist/components/toolbar/Toolbar.js.map +1 -0
- package/dist/components/tooltip/Tooltip.d.ts +33 -0
- package/dist/components/tooltip/Tooltip.js +182 -0
- package/dist/components/tooltip/Tooltip.js.map +1 -0
- package/dist/components/typography/Typography.d.ts +32 -0
- package/dist/components/typography/Typography.js +183 -0
- package/dist/components/typography/Typography.js.map +1 -0
- package/dist/fonts.css +3 -0
- package/dist/icons/index.d.ts +133 -0
- package/dist/icons/index.js +182 -0
- package/dist/icons/index.js.map +1 -0
- package/dist/index.d.ts +55 -0
- package/dist/index.js +58 -0
- package/dist/opti-ui.css +5692 -0
- package/dist/theme/ThemeProvider.d.ts +22 -0
- package/dist/theme/ThemeProvider.js +115 -0
- package/dist/theme/ThemeProvider.js.map +1 -0
- package/dist/theme/index.d.ts +2 -0
- package/dist/utils/cx.d.ts +10 -0
- package/dist/utils/cx.js +18 -0
- package/dist/utils/cx.js.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/portal.d.ts +8 -0
- package/dist/utils/portal.js +16 -0
- package/dist/utils/portal.js.map +1 -0
- package/dist/utils/primitive.d.ts +13 -0
- package/dist/utils/primitive.js +61 -0
- package/dist/utils/primitive.js.map +1 -0
- package/dist/utils/search.d.ts +4 -0
- package/dist/utils/search.js +15 -0
- package/dist/utils/search.js.map +1 -0
- package/package.json +71 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input.js","names":["React","Input","BaseInput","Field","BaseField","cx","withClass","IconButton","EyeIcon","EyeOffIcon","ControlSize","InputProps","Omit","Props","size","startAdornment","ReactNode","endAdornment","t0","$","_c","className","props","ref","t1","undefined","grouped","t2","t3","t4","input","t5","disabled","t6","t7","t8","PasswordInputProps","visible","defaultVisible","onVisibleChange","toggleLabel","PasswordInput","inner","setInner","useState","shown","TextareaProps","TextareaHTMLAttributes","HTMLTextAreaElement","Ref","autoResize","Textarea","rows","HTMLInputElement","Control","FieldShellProps","label","description","error","required","fieldProps","ComponentProps","Root","TextFieldProps","TextField","name","PasswordFieldProps","PasswordField","TextareaFieldProps","TextareaField","Input","_c","BaseInput","BaseField","Field"],"sources":["../../../src/components/input/Input.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Input as BaseInput } from '@base-ui/react/input';\nimport { Field as BaseField } from '@base-ui/react/field';\nimport { cx, withClass } from '../../utils/cx';\nimport { Field } from '../field/Field';\nimport { IconButton } from '../button/Button';\nimport { EyeIcon, EyeOffIcon } from '../../icons';\n\nexport type ControlSize = 'sm' | 'md' | 'lg';\n\nexport interface InputProps extends Omit<BaseInput.Props, 'size'> {\n size?: ControlSize;\n /** Icon or text rendered inside the box, before the value. */\n startAdornment?: React.ReactNode;\n /** Icon, text or button rendered inside the box, after the value. */\n endAdornment?: React.ReactNode;\n}\n\nexport function Input({ size = 'md', startAdornment, endAdornment, className, ref, ...props }: InputProps) {\n const grouped = startAdornment != null || endAdornment != null;\n const input = (\n <BaseInput\n ref={ref}\n className={withClass('oui-input', className)}\n data-size={size}\n data-grouped={grouped || undefined}\n {...props}\n />\n );\n if (!grouped) return input;\n return (\n <span className=\"oui-input-group\" data-size={size} data-disabled={props.disabled || undefined}>\n {startAdornment != null && <span className=\"oui-input-group__adornment\">{startAdornment}</span>}\n {input}\n {endAdornment != null && <span className=\"oui-input-group__adornment\">{endAdornment}</span>}\n </span>\n );\n}\n\nexport interface PasswordInputProps extends Omit<InputProps, 'type' | 'endAdornment'> {\n /** Whether the value is shown as plain text. */\n visible?: boolean;\n defaultVisible?: boolean;\n onVisibleChange?: (visible: boolean) => void;\n /** Accessible name of the show/hide button. */\n toggleLabel?: string;\n}\n\n/** Password input with a button that reveals the value. */\nexport function PasswordInput({\n visible,\n defaultVisible = false,\n onVisibleChange,\n toggleLabel = 'Show password',\n ...props\n}: PasswordInputProps) {\n const [inner, setInner] = React.useState(defaultVisible);\n const shown = visible ?? inner;\n return (\n <Input\n autoCapitalize=\"off\"\n spellCheck={false}\n {...props}\n type={shown ? 'text' : 'password'}\n endAdornment={\n <IconButton\n size=\"sm\"\n aria-label={toggleLabel}\n aria-pressed={shown}\n disabled={props.disabled}\n onClick={() => {\n setInner(!shown);\n onVisibleChange?.(!shown);\n }}\n >\n {shown ? <EyeOffIcon /> : <EyeIcon />}\n </IconButton>\n }\n />\n );\n}\n\nexport interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {\n ref?: React.Ref<HTMLTextAreaElement>;\n /** Grow with content up to `maxRows` (uses CSS field-sizing where supported). */\n autoResize?: boolean;\n}\n\nexport function Textarea({ autoResize, className, rows = 3, ref, ...props }: TextareaProps) {\n // Field.Control wires the textarea into Field labelling and validation.\n return (\n <BaseField.Control\n ref={ref as unknown as React.Ref<HTMLInputElement>}\n render={<textarea rows={rows} />}\n className={cx('oui-input', 'oui-textarea', className)}\n data-auto-resize={autoResize || undefined}\n {...(props as unknown as BaseField.Control.Props)}\n />\n );\n}\n\ninterface FieldShellProps {\n label?: React.ReactNode;\n description?: React.ReactNode;\n /** Error message. When set, the field is marked invalid. */\n error?: React.ReactNode;\n required?: boolean;\n /** Props for the wrapping Field.Root. */\n fieldProps?: Omit<React.ComponentProps<typeof Field.Root>, 'children'>;\n}\n\nexport interface TextFieldProps extends InputProps, FieldShellProps {}\n\n/** Labelled input with description and error message. */\nexport function TextField({\n label,\n description,\n error,\n required,\n fieldProps,\n name,\n disabled,\n ref,\n ...props\n}: TextFieldProps) {\n return (\n <Field.Root name={name} disabled={disabled} invalid={error ? true : undefined} {...fieldProps}>\n {label && <Field.Label required={required}>{label}</Field.Label>}\n <Input ref={ref} required={required} {...props} />\n {description && <Field.Description>{description}</Field.Description>}\n {error ? <Field.Error match>{error}</Field.Error> : <Field.Error />}\n </Field.Root>\n );\n}\n\nexport interface PasswordFieldProps extends PasswordInputProps, FieldShellProps {}\n\n/** Labelled password input with description and error message. */\nexport function PasswordField({\n label,\n description,\n error,\n required,\n fieldProps,\n name,\n disabled,\n ref,\n ...props\n}: PasswordFieldProps) {\n return (\n <Field.Root name={name} disabled={disabled} invalid={error ? true : undefined} {...fieldProps}>\n {label && <Field.Label required={required}>{label}</Field.Label>}\n <PasswordInput ref={ref} required={required} disabled={disabled} {...props} />\n {description && <Field.Description>{description}</Field.Description>}\n {error ? <Field.Error match>{error}</Field.Error> : <Field.Error />}\n </Field.Root>\n );\n}\n\nexport interface TextareaFieldProps extends TextareaProps, FieldShellProps {}\n\nexport function TextareaField({\n label,\n description,\n error,\n required,\n fieldProps,\n name,\n disabled,\n ref,\n ...props\n}: TextareaFieldProps) {\n return (\n <Field.Root name={name} disabled={disabled} invalid={error ? true : undefined} {...fieldProps}>\n {label && <Field.Label required={required}>{label}</Field.Label>}\n <Textarea ref={ref} required={required} {...props} />\n {description && <Field.Description>{description}</Field.Description>}\n {error ? <Field.Error match>{error}</Field.Error> : <Field.Error />}\n </Field.Root>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { useRender } from '@base-ui/react/use-render';
|
|
2
|
+
export type LinkTone = 'accent' | 'muted' | 'inherit';
|
|
3
|
+
export type LinkUnderline = 'always' | 'hover' | 'none';
|
|
4
|
+
export type LinkState = {
|
|
5
|
+
tone: LinkTone;
|
|
6
|
+
underline: LinkUnderline;
|
|
7
|
+
external: boolean;
|
|
8
|
+
};
|
|
9
|
+
export interface LinkProps extends useRender.ComponentProps<'a', LinkState> {
|
|
10
|
+
/** `inherit` takes the color of the surrounding text. */
|
|
11
|
+
tone?: LinkTone;
|
|
12
|
+
underline?: LinkUnderline;
|
|
13
|
+
/** Opens in a new tab, with a trailing icon. */
|
|
14
|
+
external?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/** Text link. Pass a router link through `render`: `<Link render={<NavLink to="/fleet" />}>`. */
|
|
17
|
+
export declare function Link({ tone, underline, external, render, children, ref, ...props }: LinkProps): import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { ExternalLinkIcon } from "../../icons/index.js";
|
|
3
|
+
import { c } from "react/compiler-runtime";
|
|
4
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { useRender } from "@base-ui/react/use-render";
|
|
6
|
+
import { mergeProps } from "@base-ui/react/merge-props";
|
|
7
|
+
//#region src/components/link/Link.tsx
|
|
8
|
+
/** Text link. Pass a router link through `render`: `<Link render={<NavLink to="/fleet" />}>`. */
|
|
9
|
+
function Link(t0) {
|
|
10
|
+
const $ = c(20);
|
|
11
|
+
let t1;
|
|
12
|
+
let t2;
|
|
13
|
+
let t3;
|
|
14
|
+
let t4;
|
|
15
|
+
let t5;
|
|
16
|
+
let t6;
|
|
17
|
+
if ($[0] !== t0) {
|
|
18
|
+
const { tone: t7, underline: t8, external: t9, render, children, ref, ...props } = t0;
|
|
19
|
+
const tone = t7 === void 0 ? "accent" : t7;
|
|
20
|
+
const underline = t8 === void 0 ? "always" : t8;
|
|
21
|
+
const external = t9 === void 0 ? false : t9;
|
|
22
|
+
let t10;
|
|
23
|
+
if ($[7] !== external || $[8] !== tone || $[9] !== underline) {
|
|
24
|
+
t10 = {
|
|
25
|
+
tone,
|
|
26
|
+
underline,
|
|
27
|
+
external
|
|
28
|
+
};
|
|
29
|
+
$[7] = external;
|
|
30
|
+
$[8] = tone;
|
|
31
|
+
$[9] = underline;
|
|
32
|
+
$[10] = t10;
|
|
33
|
+
} else t10 = $[10];
|
|
34
|
+
const state = t10;
|
|
35
|
+
t6 = useRender;
|
|
36
|
+
t1 = "a";
|
|
37
|
+
t2 = render;
|
|
38
|
+
t3 = ref;
|
|
39
|
+
t4 = state;
|
|
40
|
+
let t11;
|
|
41
|
+
if ($[11] !== children || $[12] !== external) {
|
|
42
|
+
t11 = external ? /* @__PURE__ */ jsxs(Fragment, { children: [children, /* @__PURE__ */ jsx(ExternalLinkIcon, { className: "oui-link__icon" })] }) : children;
|
|
43
|
+
$[11] = children;
|
|
44
|
+
$[12] = external;
|
|
45
|
+
$[13] = t11;
|
|
46
|
+
} else t11 = $[13];
|
|
47
|
+
t5 = mergeProps({
|
|
48
|
+
className: "oui-link",
|
|
49
|
+
...external && {
|
|
50
|
+
target: "_blank",
|
|
51
|
+
rel: "noopener noreferrer"
|
|
52
|
+
},
|
|
53
|
+
children: t11
|
|
54
|
+
}, props);
|
|
55
|
+
$[0] = t0;
|
|
56
|
+
$[1] = t1;
|
|
57
|
+
$[2] = t2;
|
|
58
|
+
$[3] = t3;
|
|
59
|
+
$[4] = t4;
|
|
60
|
+
$[5] = t5;
|
|
61
|
+
$[6] = t6;
|
|
62
|
+
} else {
|
|
63
|
+
t1 = $[1];
|
|
64
|
+
t2 = $[2];
|
|
65
|
+
t3 = $[3];
|
|
66
|
+
t4 = $[4];
|
|
67
|
+
t5 = $[5];
|
|
68
|
+
t6 = $[6];
|
|
69
|
+
}
|
|
70
|
+
let t7;
|
|
71
|
+
if ($[14] !== t1 || $[15] !== t2 || $[16] !== t3 || $[17] !== t4 || $[18] !== t5) {
|
|
72
|
+
t7 = {
|
|
73
|
+
defaultTagName: t1,
|
|
74
|
+
render: t2,
|
|
75
|
+
ref: t3,
|
|
76
|
+
state: t4,
|
|
77
|
+
props: t5
|
|
78
|
+
};
|
|
79
|
+
$[14] = t1;
|
|
80
|
+
$[15] = t2;
|
|
81
|
+
$[16] = t3;
|
|
82
|
+
$[17] = t4;
|
|
83
|
+
$[18] = t5;
|
|
84
|
+
$[19] = t7;
|
|
85
|
+
} else t7 = $[19];
|
|
86
|
+
return t6(t7);
|
|
87
|
+
}
|
|
88
|
+
//#endregion
|
|
89
|
+
export { Link };
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=Link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Link.js","names":["useRender","mergeProps","ExternalLinkIcon","LinkTone","LinkUnderline","LinkState","tone","underline","external","LinkProps","ComponentProps","Link","t0","$","_c","t1","t2","t3","t4","t5","t6","t7","t8","t9","render","children","ref","props","undefined","t10","state","t11","className","target","rel","defaultTagName","_c","_Fragment"],"sources":["../../../src/components/link/Link.tsx"],"sourcesContent":["import { useRender } from '@base-ui/react/use-render';\nimport { mergeProps } from '@base-ui/react/merge-props';\nimport { ExternalLinkIcon } from '../../icons';\n\nexport type LinkTone = 'accent' | 'muted' | 'inherit';\nexport type LinkUnderline = 'always' | 'hover' | 'none';\n\nexport type LinkState = { tone: LinkTone; underline: LinkUnderline; external: boolean };\n\nexport interface LinkProps extends useRender.ComponentProps<'a', LinkState> {\n /** `inherit` takes the color of the surrounding text. */\n tone?: LinkTone;\n underline?: LinkUnderline;\n /** Opens in a new tab, with a trailing icon. */\n external?: boolean;\n}\n\n/** Text link. Pass a router link through `render`: `<Link render={<NavLink to=\"/fleet\" />}>`. */\nexport function Link({\n tone = 'accent',\n underline = 'always',\n external = false,\n render,\n children,\n ref,\n ...props\n}: LinkProps) {\n const state: LinkState = { tone, underline, external };\n return useRender({\n defaultTagName: 'a',\n render,\n ref,\n state,\n props: mergeProps<'a'>(\n {\n className: 'oui-link',\n ...(external && { target: '_blank', rel: 'noopener noreferrer' }),\n children: external ? (\n <>\n {children}\n <ExternalLinkIcon className=\"oui-link__icon\" />\n </>\n ) : (\n children\n ),\n },\n props,\n ),\n });\n}\n"],"mappings":";;;;;;;;AAkBA,SAAOW,KAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAP,EAAA,OAAAD,IAAA;EAAc,MAAA,EAAAN,MAAAe,IAAAd,WAAAe,IAAAd,UAAAe,IAAAC,QAAAC,UAAAC,KAAA,GAAAC,UAAAf;EACnB,MAAAN,OAAAe,OAAAO,KAAAA,IAAA,WAAAP;EACA,MAAAd,YAAAe,OAAAM,KAAAA,IAAA,WAAAN;EACA,MAAAd,WAAAe,OAAAK,KAAAA,IAAA,QAAAL;EAAgB,IAAAM;EAAA,IAAAhB,EAAA,OAAAL,YAAAK,EAAA,OAAAP,QAAAO,EAAA,OAAAN,WAAA;GAMSsB,MAAA;IAAAvB;IAAAC;IAAAC;GAA4B;GAACK,EAAA,KAAAL;GAAAK,EAAA,KAAAP;GAAAO,EAAA,KAAAN;GAAAM,EAAA,MAAAgB;EAAA,OAAAA,MAAAhB,EAAA;EAAtD,MAAAiB,QAAyBD;EAClB7B,KAAAA;EACWe,KAAA;EAChBS,KAAAA;EACAE,KAAAA;EACAI,KAAAA;EAAK,IAAAC;EAAA,IAAAlB,EAAA,QAAAY,YAAAZ,EAAA,QAAAL,UAAA;GAKSuB,MAAAvB,WAAA,qBAAA6B,UAAA,EAAA,UAAA,CAELZ,UACD,oBAAC,kBAAD,EAA4B,WAAA,iBAAgB,CAAA,CAAG,EAAA,CAAA,IAHzCA;GAOTZ,EAAA,MAAAY;GAAAZ,EAAA,MAAAL;GAAAK,EAAA,MAAAkB;EAAA,OAAAA,MAAAlB,EAAA;EAXEM,KAAAlB,WACL;GAAA+B,WACa;GAAU,GACjBxB,YAAA;IAAAyB,QAAsB;IAAQC,KAAO;GAAsB;GAACT,UACtDM;EAQZ,GACAJ,KACF;EAACd,EAAA,KAAAD;EAAAC,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;EAAAN,EAAA,KAAAO;CAAA,OAAA;EAAAL,KAAAF,EAAA;EAAAG,KAAAH,EAAA;EAAAI,KAAAJ,EAAA;EAAAK,KAAAL,EAAA;EAAAM,KAAAN,EAAA;EAAAO,KAAAP,EAAA;CAAA;CAAA,IAAAQ;CAAA,IAAAR,EAAA,QAAAE,MAAAF,EAAA,QAAAG,MAAAH,EAAA,QAAAI,MAAAJ,EAAA,QAAAK,MAAAL,EAAA,QAAAM,IAAA;EAnBcE,KAAA;GAAAc,gBACCpB;GAAGS,QACnBA;GAAME,KACNA;GAAGI,OACHA;GAAKH,OACER;EAeT;EAACN,EAAA,MAAAE;EAAAF,EAAA,MAAAG;EAAAH,EAAA,MAAAI;EAAAJ,EAAA,MAAAK;EAAAL,EAAA,MAAAM;EAAAN,EAAA,MAAAQ;CAAA,OAAAA,KAAAR,EAAA;CAAA,OApBMb,GAAUqB,EAoBhB;AAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Menu as BaseMenu } from '@base-ui/react/menu';
|
|
3
|
+
import { ContextMenu as BaseContextMenu } from '@base-ui/react/context-menu';
|
|
4
|
+
export interface MenuContentProps extends BaseMenu.Popup.Props {
|
|
5
|
+
side?: BaseMenu.Positioner.Props['side'];
|
|
6
|
+
align?: BaseMenu.Positioner.Props['align'];
|
|
7
|
+
sideOffset?: BaseMenu.Positioner.Props['sideOffset'];
|
|
8
|
+
alignOffset?: BaseMenu.Positioner.Props['alignOffset'];
|
|
9
|
+
positionerProps?: BaseMenu.Positioner.Props;
|
|
10
|
+
}
|
|
11
|
+
declare function MenuContent({ side, align, sideOffset, alignOffset, positionerProps, className, ref, ...props }: MenuContentProps): React.JSX.Element;
|
|
12
|
+
export interface ContextMenuContentProps extends BaseContextMenu.Popup.Props {
|
|
13
|
+
positionerProps?: BaseContextMenu.Positioner.Props;
|
|
14
|
+
}
|
|
15
|
+
declare function ContextMenuContent({ positionerProps, className, ref, ...props }: ContextMenuContentProps): React.JSX.Element;
|
|
16
|
+
interface ItemExtras {
|
|
17
|
+
/** Leading icon. */
|
|
18
|
+
icon?: React.ReactNode;
|
|
19
|
+
/** Trailing hint, e.g. a keyboard shortcut. */
|
|
20
|
+
shortcut?: React.ReactNode;
|
|
21
|
+
/** Destructive styling. */
|
|
22
|
+
danger?: boolean;
|
|
23
|
+
}
|
|
24
|
+
export interface MenuItemProps extends BaseMenu.Item.Props, ItemExtras {
|
|
25
|
+
}
|
|
26
|
+
declare function MenuItem({ icon, shortcut, danger, className, children, ref, ...props }: MenuItemProps): React.JSX.Element;
|
|
27
|
+
export interface MenuLinkItemProps extends BaseMenu.LinkItem.Props, Omit<ItemExtras, 'danger'> {
|
|
28
|
+
}
|
|
29
|
+
declare function MenuLinkItem({ icon, shortcut, className, children, ref, ...props }: MenuLinkItemProps): React.JSX.Element;
|
|
30
|
+
export interface MenuCheckboxItemProps extends BaseMenu.CheckboxItem.Props, Omit<ItemExtras, 'icon' | 'danger'> {
|
|
31
|
+
}
|
|
32
|
+
declare function MenuCheckboxItem({ shortcut, className, children, ref, ...props }: MenuCheckboxItemProps): React.JSX.Element;
|
|
33
|
+
export interface MenuRadioItemProps extends BaseMenu.RadioItem.Props, Omit<ItemExtras, 'icon' | 'danger'> {
|
|
34
|
+
}
|
|
35
|
+
declare function MenuRadioItem({ shortcut, className, children, ref, ...props }: MenuRadioItemProps): React.JSX.Element;
|
|
36
|
+
declare function MenuSeparator({ className, ref, ...props }: BaseMenu.Separator.Props): React.JSX.Element;
|
|
37
|
+
declare function MenuGroupLabel({ className, ref, ...props }: BaseMenu.GroupLabel.Props): React.JSX.Element;
|
|
38
|
+
export interface MenuSubmenuTriggerProps extends BaseMenu.SubmenuTrigger.Props, Omit<ItemExtras, 'shortcut' | 'danger'> {
|
|
39
|
+
}
|
|
40
|
+
declare function MenuSubmenuTrigger({ icon, className, children, ref, ...props }: MenuSubmenuTriggerProps): React.JSX.Element;
|
|
41
|
+
/**
|
|
42
|
+
* Dropdown menu of actions. Compose `Menu.Root` › `Menu.Trigger` + `Menu.Content` › items.
|
|
43
|
+
* For nested menus use `Menu.SubmenuRoot` › `Menu.SubmenuTrigger` + `Menu.Content`.
|
|
44
|
+
*/
|
|
45
|
+
export declare const Menu: {
|
|
46
|
+
Root: <Payload>(props: BaseMenu.Root.Props<Payload>) => React.JSX.Element;
|
|
47
|
+
Trigger: BaseMenu.Trigger;
|
|
48
|
+
Content: typeof MenuContent;
|
|
49
|
+
Item: typeof MenuItem;
|
|
50
|
+
LinkItem: typeof MenuLinkItem;
|
|
51
|
+
CheckboxItem: typeof MenuCheckboxItem;
|
|
52
|
+
RadioGroup: React.NamedExoticComponent<Omit<import("@base-ui/react").MenuRadioGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
53
|
+
RadioItem: typeof MenuRadioItem;
|
|
54
|
+
Group: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").MenuGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
55
|
+
GroupLabel: typeof MenuGroupLabel;
|
|
56
|
+
Separator: typeof MenuSeparator;
|
|
57
|
+
SubmenuRoot: typeof BaseMenu.SubmenuRoot;
|
|
58
|
+
SubmenuTrigger: typeof MenuSubmenuTrigger;
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Menu opened by right click or long press on `ContextMenu.Trigger`, which wraps
|
|
62
|
+
* the target area. The item parts are the same as `Menu`'s.
|
|
63
|
+
*/
|
|
64
|
+
export declare const ContextMenu: {
|
|
65
|
+
Item: typeof MenuItem;
|
|
66
|
+
LinkItem: typeof MenuLinkItem;
|
|
67
|
+
CheckboxItem: typeof MenuCheckboxItem;
|
|
68
|
+
RadioGroup: React.NamedExoticComponent<Omit<import("@base-ui/react").MenuRadioGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
69
|
+
RadioItem: typeof MenuRadioItem;
|
|
70
|
+
Group: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").MenuGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
71
|
+
GroupLabel: typeof MenuGroupLabel;
|
|
72
|
+
Separator: typeof MenuSeparator;
|
|
73
|
+
SubmenuRoot: typeof BaseMenu.SubmenuRoot;
|
|
74
|
+
SubmenuTrigger: typeof MenuSubmenuTrigger;
|
|
75
|
+
Root: typeof BaseContextMenu.Root;
|
|
76
|
+
Trigger: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuTriggerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
77
|
+
Content: typeof ContextMenuContent;
|
|
78
|
+
};
|
|
79
|
+
export {};
|