iryx-ui 0.17.1 → 0.18.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/README.md +18 -0
- package/dist/class-value.d.ts +8 -0
- package/dist/component-names.d.ts +1 -1
- package/dist/component-names.js +1 -1
- package/dist/components/Accordion.vue.d.ts +2 -1
- package/dist/components/Accordion.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Alert.vue.d.ts +2 -1
- package/dist/components/Alert.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/App.vue.d.ts +2 -1
- package/dist/components/App.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/AppShell.vue.d.ts +5 -2
- package/dist/components/AppShell.vue_vue_type_script_setup_true_lang.js +7 -2
- package/dist/components/AspectRatio.vue.d.ts +2 -1
- package/dist/components/AspectRatio.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/AuthProviders.js +5 -0
- package/dist/components/AuthProviders.vue.d.ts +67 -0
- package/dist/components/AuthProviders.vue_vue_type_script_setup_true_lang.js +83 -0
- package/dist/components/Avatar.vue.d.ts +2 -1
- package/dist/components/Avatar.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/AvatarGroup.vue.d.ts +2 -1
- package/dist/components/AvatarGroup.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Badge.vue.d.ts +2 -1
- package/dist/components/Badge.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Banner.vue.d.ts +2 -1
- package/dist/components/Banner.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/BarChart.vue.d.ts +2 -1
- package/dist/components/BarChart.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Breadcrumb.vue.d.ts +2 -1
- package/dist/components/Breadcrumb.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Button.vue.d.ts +2 -1
- package/dist/components/Button.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/ButtonGroup.vue.d.ts +2 -1
- package/dist/components/ButtonGroup.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Calendar.vue.d.ts +2 -1
- package/dist/components/Calendar.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Card.vue.d.ts +2 -1
- package/dist/components/Card.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/ChartLegend.vue.d.ts +2 -1
- package/dist/components/ChartLegend.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Checkbox.vue.d.ts +2 -1
- package/dist/components/Checkbox.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Collapsible.vue.d.ts +5 -4
- package/dist/components/Collapsible.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/ColorPicker.vue.d.ts +2 -1
- package/dist/components/ColorPicker.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Combobox.vue.d.ts +2 -1
- package/dist/components/Combobox.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/CommandPalette.vue.d.ts +2 -1
- package/dist/components/CommandPalette.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/ConfirmDialog.vue.d.ts +2 -1
- package/dist/components/ConfirmDialog.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Container.vue.d.ts +2 -1
- package/dist/components/Container.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/ContextMenu.vue.d.ts +2 -1
- package/dist/components/ContextMenu.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/DateField.vue.d.ts +2 -1
- package/dist/components/DateField.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/DatePicker.vue.d.ts +2 -1
- package/dist/components/DatePicker.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/DateRangePicker.vue.d.ts +2 -1
- package/dist/components/DateRangePicker.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Dialog.vue.d.ts +2 -1
- package/dist/components/Dialog.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/DonutChart.vue.d.ts +2 -1
- package/dist/components/DonutChart.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Drawer.vue.d.ts +2 -1
- package/dist/components/Drawer.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/DropdownMenu.vue.d.ts +2 -1
- package/dist/components/DropdownMenu.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Editable.vue.d.ts +2 -1
- package/dist/components/Editable.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/EmptyState.vue.d.ts +2 -1
- package/dist/components/EmptyState.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/FileUpload.vue.d.ts +2 -1
- package/dist/components/FileUpload.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Form.vue.d.ts +2 -1
- package/dist/components/Form.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/FormField.vue.d.ts +2 -1
- package/dist/components/FormField.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/HoverCard.vue.d.ts +5 -4
- package/dist/components/HoverCard.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Icon.vue.d.ts +2 -1
- package/dist/components/Icon.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Input.vue.d.ts +2 -1
- package/dist/components/Input.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Kbd.vue.d.ts +2 -1
- package/dist/components/Kbd.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Label.vue.d.ts +2 -1
- package/dist/components/Label.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/LineChart.vue.d.ts +2 -1
- package/dist/components/LineChart.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Menubar.vue.d.ts +5 -4
- package/dist/components/Menubar.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/NavigationMenu.vue.d.ts +5 -4
- package/dist/components/NavigationMenu.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/NumberInput.vue.d.ts +2 -1
- package/dist/components/NumberInput.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/PageHeader.vue.d.ts +2 -1
- package/dist/components/PageHeader.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Pagination.vue.d.ts +2 -1
- package/dist/components/Pagination.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/PasswordInput.vue.d.ts +2 -1
- package/dist/components/PasswordInput.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/PinInput.vue.d.ts +2 -1
- package/dist/components/PinInput.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Popover.vue.d.ts +5 -4
- package/dist/components/Popover.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Progress.vue.d.ts +2 -1
- package/dist/components/Progress.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/RadioGroup.vue.d.ts +2 -1
- package/dist/components/RadioGroup.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/ScrollArea.vue.d.ts +2 -1
- package/dist/components/ScrollArea.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/ScrollFade.vue.d.ts +2 -1
- package/dist/components/ScrollFade.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Select.vue.d.ts +2 -1
- package/dist/components/Select.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Separator.vue.d.ts +2 -1
- package/dist/components/Separator.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Sidebar.vue.d.ts +2 -1
- package/dist/components/Sidebar.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/SignaturePad.vue.d.ts +2 -1
- package/dist/components/SignaturePad.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Skeleton.vue.d.ts +2 -1
- package/dist/components/Skeleton.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Slider.vue.d.ts +2 -1
- package/dist/components/Slider.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Sparkline.vue.d.ts +2 -1
- package/dist/components/Sparkline.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Splitter.vue.d.ts +2 -1
- package/dist/components/Splitter.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Stat.vue.d.ts +2 -1
- package/dist/components/Stat.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Stepper.vue.d.ts +2 -1
- package/dist/components/Stepper.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Switch.vue.d.ts +2 -1
- package/dist/components/Switch.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Table.vue.d.ts +2 -1
- package/dist/components/Table.vue_vue_type_script_setup_true_lang.js +7 -3
- package/dist/components/Tabs.vue.d.ts +5 -4
- package/dist/components/Tabs.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/TagsInput.vue.d.ts +2 -1
- package/dist/components/TagsInput.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Textarea.vue.d.ts +2 -1
- package/dist/components/Textarea.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/TimeField.vue.d.ts +2 -1
- package/dist/components/TimeField.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Timeline.vue.d.ts +2 -1
- package/dist/components/Timeline.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Toaster.vue.d.ts +2 -1
- package/dist/components/Toaster.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Toggle.vue.d.ts +2 -1
- package/dist/components/Toggle.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/ToggleGroup.vue.d.ts +2 -1
- package/dist/components/ToggleGroup.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Toolbar.vue.d.ts +2 -1
- package/dist/components/Toolbar.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Tooltip.vue.d.ts +5 -4
- package/dist/components/Tooltip.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/Tree.vue.d.ts +2 -1
- package/dist/components/Tree.vue_vue_type_script_setup_true_lang.js +6 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +144 -142
- package/dist/global-components.d.ts +14 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +153 -151
- package/dist/theme/app-shell.js +1 -1
- package/dist/theme/auth-providers.d.ts +137 -0
- package/dist/theme/auth-providers.js +57 -0
- package/dist/theme/index.d.ts +1 -0
- package/dist/theme/toast.js +1 -1
- package/package.json +2 -2
- package/theme.css +24 -0
package/README.md
CHANGED
|
@@ -84,6 +84,24 @@ Components are auto-imported with the `I` prefix.
|
|
|
84
84
|
<IDialog unstyled />
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
+
## TypeScript
|
|
88
|
+
|
|
89
|
+
The plugin registers every component under the `I` prefix, and the package declares
|
|
90
|
+
them on Vue's `GlobalComponents`, so their props are checked in templates without an
|
|
91
|
+
import. A project that passes a different `prefix` declares its own augmentation:
|
|
92
|
+
|
|
93
|
+
```ts
|
|
94
|
+
import type { IryxUiGlobalComponents } from 'iryx-ui'
|
|
95
|
+
|
|
96
|
+
declare module 'vue' {
|
|
97
|
+
interface GlobalComponents extends IryxUiGlobalComponents {}
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Every `class` prop takes the exported `ClassValue` — a string, or an array of strings
|
|
102
|
+
and falsy values. Object syntax is not accepted: `tailwind-merge` cannot merge it, so
|
|
103
|
+
it would lose to a built-in class rather than replace it.
|
|
104
|
+
|
|
87
105
|
## Requirements
|
|
88
106
|
|
|
89
107
|
- Vue 3.5 or newer
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What every component's `class` prop accepts: the subset of Vue's class
|
|
3
|
+
* binding that `tailwind-merge` can also merge. Object syntax
|
|
4
|
+
* (`:class="{ active: on }"`) is excluded on purpose — tailwind-merge does not
|
|
5
|
+
* understand it, so it would pass through unmerged and silently lose to a
|
|
6
|
+
* built-in class.
|
|
7
|
+
*/
|
|
8
|
+
export type ClassValue = string | false | null | undefined | ClassValue[];
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Consumed by the Vue plugin (global registration) and the Nuxt module
|
|
4
4
|
* (auto-imports). Keep in sync with `src/components/index.ts`.
|
|
5
5
|
*/
|
|
6
|
-
export declare const componentNames: readonly ["Accordion", "Alert", "App", "AppShell", "AspectRatio", "Avatar", "AvatarGroup", "Badge", "BarChart", "Banner", "Breadcrumb", "Button", "ButtonGroup", "Calendar", "Card", "ChartLegend", "Checkbox", "ColorPicker", "Combobox", "Collapsible", "CommandPalette", "Container", "ConfirmDialog", "ContextMenu", "DateField", "DatePicker", "DateRangePicker", "Dialog", "DonutChart", "Drawer", "DropdownMenu", "Editable", "EmptyState", "FileUpload", "Form", "FormField", "HoverCard", "Icon", "Input", "Kbd", "Label", "LineChart", "NavigationMenu", "NumberInput", "Menubar", "PageHeader", "Pagination", "PasswordInput", "PinInput", "Popover", "Progress", "RadioGroup", "ScrollArea", "ScrollFade", "Select", "Separator", "Sidebar", "SignaturePad", "Skeleton", "Slider", "Sparkline", "Splitter", "Stat", "Stepper", "Switch", "Table", "Tabs", "TagsInput", "Textarea", "Toaster", "Toggle", "ToggleGroup", "TimeField", "Timeline", "Toolbar", "Tooltip", "Tree"];
|
|
6
|
+
export declare const componentNames: readonly ["Accordion", "Alert", "App", "AppShell", "AspectRatio", "AuthProviders", "Avatar", "AvatarGroup", "Badge", "BarChart", "Banner", "Breadcrumb", "Button", "ButtonGroup", "Calendar", "Card", "ChartLegend", "Checkbox", "ColorPicker", "Combobox", "Collapsible", "CommandPalette", "Container", "ConfirmDialog", "ContextMenu", "DateField", "DatePicker", "DateRangePicker", "Dialog", "DonutChart", "Drawer", "DropdownMenu", "Editable", "EmptyState", "FileUpload", "Form", "FormField", "HoverCard", "Icon", "Input", "Kbd", "Label", "LineChart", "NavigationMenu", "NumberInput", "Menubar", "PageHeader", "Pagination", "PasswordInput", "PinInput", "Popover", "Progress", "RadioGroup", "ScrollArea", "ScrollFade", "Select", "Separator", "Sidebar", "SignaturePad", "Skeleton", "Slider", "Sparkline", "Splitter", "Stat", "Stepper", "Switch", "Table", "Tabs", "TagsInput", "Textarea", "Toaster", "Toggle", "ToggleGroup", "TimeField", "Timeline", "Toolbar", "Tooltip", "Tree"];
|
|
7
7
|
export type ComponentName = (typeof componentNames)[number];
|
package/dist/component-names.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
//#region src/component-names.ts
|
|
2
|
-
var e = /* @__PURE__ */ "Accordion.Alert.App.AppShell.AspectRatio.Avatar.AvatarGroup.Badge.BarChart.Banner.Breadcrumb.Button.ButtonGroup.Calendar.Card.ChartLegend.Checkbox.ColorPicker.Combobox.Collapsible.CommandPalette.Container.ConfirmDialog.ContextMenu.DateField.DatePicker.DateRangePicker.Dialog.DonutChart.Drawer.DropdownMenu.Editable.EmptyState.FileUpload.Form.FormField.HoverCard.Icon.Input.Kbd.Label.LineChart.NavigationMenu.NumberInput.Menubar.PageHeader.Pagination.PasswordInput.PinInput.Popover.Progress.RadioGroup.ScrollArea.ScrollFade.Select.Separator.Sidebar.SignaturePad.Skeleton.Slider.Sparkline.Splitter.Stat.Stepper.Switch.Table.Tabs.TagsInput.Textarea.Toaster.Toggle.ToggleGroup.TimeField.Timeline.Toolbar.Tooltip.Tree".split(".");
|
|
2
|
+
var e = /* @__PURE__ */ "Accordion.Alert.App.AppShell.AspectRatio.AuthProviders.Avatar.AvatarGroup.Badge.BarChart.Banner.Breadcrumb.Button.ButtonGroup.Calendar.Card.ChartLegend.Checkbox.ColorPicker.Combobox.Collapsible.CommandPalette.Container.ConfirmDialog.ContextMenu.DateField.DatePicker.DateRangePicker.Dialog.DonutChart.Drawer.DropdownMenu.Editable.EmptyState.FileUpload.Form.FormField.HoverCard.Icon.Input.Kbd.Label.LineChart.NavigationMenu.NumberInput.Menubar.PageHeader.Pagination.PasswordInput.PinInput.Popover.Progress.RadioGroup.ScrollArea.ScrollFade.Select.Separator.Sidebar.SignaturePad.Skeleton.Slider.Sparkline.Splitter.Stat.Stepper.Switch.Table.Tabs.TagsInput.Textarea.Toaster.Toggle.ToggleGroup.TimeField.Timeline.Toolbar.Tooltip.Tree".split(".");
|
|
3
3
|
//#endregion
|
|
4
4
|
export { e as componentNames };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
import type { IconLike } from '../composables/icon';
|
|
2
3
|
export interface AccordionItemData {
|
|
3
4
|
/** Row heading, and the fallback value when none is given. */
|
|
@@ -22,7 +23,7 @@ export interface AccordionProps {
|
|
|
22
23
|
disabled?: boolean;
|
|
23
24
|
/** Skip built-in classes; you take over styling entirely. */
|
|
24
25
|
unstyled?: boolean;
|
|
25
|
-
class?:
|
|
26
|
+
class?: ClassValue;
|
|
26
27
|
ui?: Partial<Record<'root' | 'item' | 'header' | 'trigger' | 'icon' | 'content' | 'contentInner', string>>;
|
|
27
28
|
}
|
|
28
29
|
type __VLS_Props = AccordionProps;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
import type { IconLike } from '../composables/icon';
|
|
2
3
|
export interface AlertProps {
|
|
3
4
|
/** Render as a different element or component. */
|
|
@@ -18,7 +19,7 @@ export interface AlertProps {
|
|
|
18
19
|
closeLabel?: string;
|
|
19
20
|
/** Skip built-in classes; you take over styling entirely. */
|
|
20
21
|
unstyled?: boolean;
|
|
21
|
-
class?:
|
|
22
|
+
class?: ClassValue;
|
|
22
23
|
/** Override classes per slot, e.g. `{ title: 'text-base' }`. */
|
|
23
24
|
ui?: {
|
|
24
25
|
root?: string;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ConfigProviderProps } from 'reka-ui';
|
|
2
|
+
import type { ClassValue } from '../class-value';
|
|
2
3
|
import type { Appearance } from '../composables/appearance';
|
|
3
4
|
import type { Theme, ThemePresetName } from '../theme/presets';
|
|
4
5
|
export interface AppProps extends /* @vue-ignore */ ConfigProviderProps {
|
|
@@ -16,7 +17,7 @@ export interface AppProps extends /* @vue-ignore */ ConfigProviderProps {
|
|
|
16
17
|
* pass `div` (with `class`) if you want App to own your page shell.
|
|
17
18
|
*/
|
|
18
19
|
as?: string;
|
|
19
|
-
class?:
|
|
20
|
+
class?: ClassValue;
|
|
20
21
|
}
|
|
21
22
|
declare var __VLS_14: {};
|
|
22
23
|
type __VLS_Slots = {} & {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
export interface AppShellProps {
|
|
2
3
|
/** Render as a different element or component. */
|
|
3
4
|
as?: string;
|
|
@@ -17,7 +18,7 @@ export interface AppShellProps {
|
|
|
17
18
|
navLabel?: string;
|
|
18
19
|
/** Skip built-in classes; you take over styling entirely. */
|
|
19
20
|
unstyled?: boolean;
|
|
20
|
-
class?:
|
|
21
|
+
class?: ClassValue;
|
|
21
22
|
/** Override classes per slot, e.g. `{ main: 'p-8' }`. */
|
|
22
23
|
ui?: {
|
|
23
24
|
root?: string;
|
|
@@ -38,7 +39,9 @@ declare var __VLS_13: {
|
|
|
38
39
|
toggleNav: () => boolean;
|
|
39
40
|
}, __VLS_21: {
|
|
40
41
|
inDrawer: boolean;
|
|
41
|
-
}, __VLS_23: {
|
|
42
|
+
}, __VLS_23: {
|
|
43
|
+
inDrawer: boolean;
|
|
44
|
+
}, __VLS_25: {}, __VLS_27: {};
|
|
42
45
|
type __VLS_Slots = {} & {
|
|
43
46
|
header?: (props: typeof __VLS_13) => any;
|
|
44
47
|
} & {
|
|
@@ -22,7 +22,12 @@ var S = ["aria-label", "aria-expanded"], C = /*@__PURE__*/ d({
|
|
|
22
22
|
type: Boolean,
|
|
23
23
|
default: void 0
|
|
24
24
|
},
|
|
25
|
-
class: {
|
|
25
|
+
class: { type: [
|
|
26
|
+
String,
|
|
27
|
+
Boolean,
|
|
28
|
+
null,
|
|
29
|
+
Array
|
|
30
|
+
] },
|
|
26
31
|
ui: {}
|
|
27
32
|
},
|
|
28
33
|
setup(d, { expose: C }) {
|
|
@@ -81,7 +86,7 @@ var S = ["aria-label", "aria-expanded"], C = /*@__PURE__*/ d({
|
|
|
81
86
|
l("div", { class: f(P("body")) }, [e.$slots.sidebar ? (m(), c("div", {
|
|
82
87
|
key: 0,
|
|
83
88
|
class: f(P("sidebar"))
|
|
84
|
-
}, [g(e.$slots, "sidebar")], 2)) : s("", !0), l("main", { class: f(P("main")) }, [g(e.$slots, "default")], 2)], 2),
|
|
89
|
+
}, [g(e.$slots, "sidebar", { inDrawer: !1 })], 2)) : s("", !0), l("main", { class: f(P("main")) }, [g(e.$slots, "default")], 2)], 2),
|
|
85
90
|
e.$slots.footer ? (m(), c("div", {
|
|
86
91
|
key: 2,
|
|
87
92
|
class: f(P("footer"))
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
export interface AspectRatioProps {
|
|
2
3
|
/**
|
|
3
4
|
* Width divided by height — `16 / 9`, `1`, `4 / 3`. Given as a number so
|
|
@@ -6,7 +7,7 @@ export interface AspectRatioProps {
|
|
|
6
7
|
ratio?: number;
|
|
7
8
|
/** Skip built-in classes; you take over styling entirely. */
|
|
8
9
|
unstyled?: boolean;
|
|
9
|
-
class?:
|
|
10
|
+
class?: ClassValue;
|
|
10
11
|
}
|
|
11
12
|
declare var __VLS_8: {};
|
|
12
13
|
type __VLS_Slots = {} & {
|
|
@@ -10,7 +10,12 @@ var u = /*@__PURE__*/ r({
|
|
|
10
10
|
type: Boolean,
|
|
11
11
|
default: void 0
|
|
12
12
|
},
|
|
13
|
-
class: {
|
|
13
|
+
class: { type: [
|
|
14
|
+
String,
|
|
15
|
+
Boolean,
|
|
16
|
+
null,
|
|
17
|
+
Array
|
|
18
|
+
] }
|
|
14
19
|
},
|
|
15
20
|
setup(r) {
|
|
16
21
|
let u = r, d = e(), f = t(() => u.unstyled ?? d.unstyled), p = t(() => f.value ? u.class : ["overflow-hidden rounded-xl", u.class]);
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
2
|
+
import type { IconLike } from '../composables/icon';
|
|
3
|
+
export interface AuthProvider {
|
|
4
|
+
/** Identifies the provider in the `select` event. */
|
|
5
|
+
id: string;
|
|
6
|
+
/** Button text, e.g. `'Continue with Google'`. Hidden when `compact`. */
|
|
7
|
+
label: string;
|
|
8
|
+
/**
|
|
9
|
+
* The provider's mark. Deliberately yours to supply: the sign-in branding
|
|
10
|
+
* of Google, Apple and the rest comes with rules about the mark, the
|
|
11
|
+
* wording and the colours, and those are the caller's to meet.
|
|
12
|
+
*/
|
|
13
|
+
icon?: IconLike;
|
|
14
|
+
/** Render as a link instead of a button. */
|
|
15
|
+
href?: string;
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
/** Swap the mark for a spinner while the redirect is in flight. */
|
|
18
|
+
loading?: boolean;
|
|
19
|
+
}
|
|
20
|
+
export interface AuthProvidersProps {
|
|
21
|
+
providers?: AuthProvider[];
|
|
22
|
+
/** Full-width rows, or one equal-width column each. */
|
|
23
|
+
layout?: 'stack' | 'inline';
|
|
24
|
+
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
25
|
+
variant?: 'outline' | 'ghost' | 'solid';
|
|
26
|
+
/** Drop the labels and show the marks alone. `label` becomes the a11y name. */
|
|
27
|
+
compact?: boolean;
|
|
28
|
+
/** Disable every provider, e.g. while the form it sits beside is submitting. */
|
|
29
|
+
disabled?: boolean;
|
|
30
|
+
/** Skip built-in classes; you take over styling entirely. */
|
|
31
|
+
unstyled?: boolean;
|
|
32
|
+
class?: ClassValue;
|
|
33
|
+
/** Override classes per slot, e.g. `{ provider: 'rounded-full' }`. */
|
|
34
|
+
ui?: {
|
|
35
|
+
root?: string;
|
|
36
|
+
provider?: string;
|
|
37
|
+
icon?: string;
|
|
38
|
+
label?: string;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
declare var __VLS_14: {
|
|
42
|
+
provider: AuthProvider;
|
|
43
|
+
}, __VLS_21: {
|
|
44
|
+
provider: AuthProvider;
|
|
45
|
+
};
|
|
46
|
+
type __VLS_Slots = {} & {
|
|
47
|
+
icon?: (props: typeof __VLS_14) => any;
|
|
48
|
+
} & {
|
|
49
|
+
default?: (props: typeof __VLS_21) => any;
|
|
50
|
+
};
|
|
51
|
+
declare const __VLS_base: import("vue").DefineComponent<AuthProvidersProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
52
|
+
select: (provider: AuthProvider) => any;
|
|
53
|
+
}, string, import("vue").PublicProps, Readonly<AuthProvidersProps> & Readonly<{
|
|
54
|
+
onSelect?: ((provider: AuthProvider) => any) | undefined;
|
|
55
|
+
}>, {
|
|
56
|
+
variant: "outline" | "ghost" | "solid";
|
|
57
|
+
unstyled: boolean;
|
|
58
|
+
providers: AuthProvider[];
|
|
59
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
60
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
61
|
+
declare const _default: typeof __VLS_export;
|
|
62
|
+
export default _default;
|
|
63
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
64
|
+
new (): {
|
|
65
|
+
$slots: S;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { useIryxUiConfig as e } from "../config.js";
|
|
2
|
+
import t from "./Icon.js";
|
|
3
|
+
import { authProvidersTheme as n } from "../theme/auth-providers.js";
|
|
4
|
+
import r from "./Button.js";
|
|
5
|
+
import { Fragment as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createTextVNode as l, defineComponent as u, normalizeClass as d, openBlock as f, renderList as p, renderSlot as m, toDisplayString as h, unref as g, withCtx as _ } from "vue";
|
|
6
|
+
import { Loading03Icon as v } from "@hugeicons/core-free-icons";
|
|
7
|
+
//#region src/components/AuthProviders.vue?vue&type=script&setup=true&lang.ts
|
|
8
|
+
var y = /*@__PURE__*/ u({
|
|
9
|
+
__name: "AuthProviders",
|
|
10
|
+
props: {
|
|
11
|
+
providers: { default: () => [] },
|
|
12
|
+
layout: {},
|
|
13
|
+
size: {},
|
|
14
|
+
variant: { default: "outline" },
|
|
15
|
+
compact: { type: Boolean },
|
|
16
|
+
disabled: { type: Boolean },
|
|
17
|
+
unstyled: {
|
|
18
|
+
type: Boolean,
|
|
19
|
+
default: void 0
|
|
20
|
+
},
|
|
21
|
+
class: { type: [
|
|
22
|
+
String,
|
|
23
|
+
Boolean,
|
|
24
|
+
null,
|
|
25
|
+
Array
|
|
26
|
+
] },
|
|
27
|
+
ui: {}
|
|
28
|
+
},
|
|
29
|
+
emits: ["select"],
|
|
30
|
+
setup(u, { emit: y }) {
|
|
31
|
+
let b = u, x = y, S = e(), C = a(() => b.unstyled ?? S.unstyled), w = a(() => n({
|
|
32
|
+
layout: b.layout,
|
|
33
|
+
size: b.size,
|
|
34
|
+
compact: b.compact
|
|
35
|
+
}));
|
|
36
|
+
function T(e, t) {
|
|
37
|
+
let n = [b.ui?.[e], t].filter(Boolean).join(" ");
|
|
38
|
+
return C.value ? n : w.value[e]({ class: n });
|
|
39
|
+
}
|
|
40
|
+
return (e, n) => (f(), c("div", { class: d(T("root", b.class)) }, [(f(!0), c(i, null, p(b.providers, (n) => (f(), o(r, {
|
|
41
|
+
key: n.id,
|
|
42
|
+
as: n.href ? "a" : "button",
|
|
43
|
+
href: n.href,
|
|
44
|
+
variant: b.variant,
|
|
45
|
+
size: b.size,
|
|
46
|
+
square: b.compact,
|
|
47
|
+
disabled: n.disabled || n.loading || b.disabled,
|
|
48
|
+
"aria-label": b.compact ? n.label : void 0,
|
|
49
|
+
class: d(T("provider")),
|
|
50
|
+
onClick: (e) => x("select", n)
|
|
51
|
+
}, {
|
|
52
|
+
default: _(() => [n.loading || n.icon || e.$slots.icon ? (f(), c("span", {
|
|
53
|
+
key: 0,
|
|
54
|
+
class: d(T("icon"))
|
|
55
|
+
}, [n.loading ? (f(), o(t, {
|
|
56
|
+
key: 0,
|
|
57
|
+
icon: g(v),
|
|
58
|
+
class: "animate-spin",
|
|
59
|
+
"data-icon": ""
|
|
60
|
+
}, null, 8, ["icon"])) : m(e.$slots, "icon", { provider: n }, () => [n.icon ? (f(), o(t, {
|
|
61
|
+
key: 0,
|
|
62
|
+
icon: n.icon,
|
|
63
|
+
"data-icon": ""
|
|
64
|
+
}, null, 8, ["icon"])) : s("", !0)], void 0, 1)], 2)) : s("", !0), b.compact ? s("", !0) : (f(), c("span", {
|
|
65
|
+
key: 1,
|
|
66
|
+
class: d(T("label"))
|
|
67
|
+
}, [m(e.$slots, "default", { provider: n }, () => [l(h(n.label), 1)])], 2))]),
|
|
68
|
+
_: 2
|
|
69
|
+
}, 1032, [
|
|
70
|
+
"as",
|
|
71
|
+
"href",
|
|
72
|
+
"variant",
|
|
73
|
+
"size",
|
|
74
|
+
"square",
|
|
75
|
+
"disabled",
|
|
76
|
+
"aria-label",
|
|
77
|
+
"class",
|
|
78
|
+
"onClick"
|
|
79
|
+
]))), 128))], 2));
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
//#endregion
|
|
83
|
+
export { y as default };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
export interface AvatarProps {
|
|
2
3
|
src?: string;
|
|
3
4
|
/**
|
|
@@ -26,7 +27,7 @@ export interface AvatarProps {
|
|
|
26
27
|
delayMs?: number;
|
|
27
28
|
/** Skip built-in classes; you take over styling entirely. */
|
|
28
29
|
unstyled?: boolean;
|
|
29
|
-
class?:
|
|
30
|
+
class?: ClassValue;
|
|
30
31
|
/** Override classes per slot, e.g. `{ fallback: 'bg-primary' }`. */
|
|
31
32
|
ui?: {
|
|
32
33
|
root?: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
import type { AvatarProps } from './Avatar.vue';
|
|
2
3
|
/** One member of the stack — an `IAvatar`'s own props, minus the shared ones. */
|
|
3
4
|
export type AvatarGroupItem = Omit<AvatarProps, 'size' | 'shape' | 'unstyled' | 'class' | 'ui'>;
|
|
@@ -12,7 +13,7 @@ export interface AvatarGroupProps {
|
|
|
12
13
|
shape?: 'circle' | 'square';
|
|
13
14
|
/** Skip built-in classes; you take over styling entirely. */
|
|
14
15
|
unstyled?: boolean;
|
|
15
|
-
class?:
|
|
16
|
+
class?: ClassValue;
|
|
16
17
|
/** Override classes per slot, e.g. `{ overflow: 'bg-primary' }`. */
|
|
17
18
|
ui?: {
|
|
18
19
|
root?: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
export interface BadgeProps {
|
|
2
3
|
/** Render as a different element or component. */
|
|
3
4
|
as?: string;
|
|
@@ -14,7 +15,7 @@ export interface BadgeProps {
|
|
|
14
15
|
label?: string;
|
|
15
16
|
/** Skip built-in classes; you take over styling entirely. */
|
|
16
17
|
unstyled?: boolean;
|
|
17
|
-
class?:
|
|
18
|
+
class?: ClassValue;
|
|
18
19
|
/** Override classes per slot, e.g. `{ dot: 'size-3' }`. */
|
|
19
20
|
ui?: {
|
|
20
21
|
root?: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
import type { IconLike } from '../composables/icon';
|
|
2
3
|
export interface BannerProps {
|
|
3
4
|
/** Render as a different element or component. */
|
|
@@ -28,7 +29,7 @@ export interface BannerProps {
|
|
|
28
29
|
label?: string;
|
|
29
30
|
/** Skip built-in classes; you take over styling entirely. */
|
|
30
31
|
unstyled?: boolean;
|
|
31
|
-
class?:
|
|
32
|
+
class?: ClassValue;
|
|
32
33
|
/** Override classes per slot, e.g. `{ container: 'max-w-3xl' }`. */
|
|
33
34
|
ui?: {
|
|
34
35
|
root?: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
import type { ChartSeries } from '../composables/cartesian';
|
|
2
3
|
import type { ChartAnimate } from '../composables/chart-reveal';
|
|
3
4
|
import type { SparseValue } from '../composables/scale';
|
|
@@ -58,7 +59,7 @@ export interface BarChartProps {
|
|
|
58
59
|
label?: string;
|
|
59
60
|
/** Skip built-in classes; you take over styling entirely. */
|
|
60
61
|
unstyled?: boolean;
|
|
61
|
-
class?:
|
|
62
|
+
class?: ClassValue;
|
|
62
63
|
ui?: Partial<Record<'root' | 'svg' | 'grid' | 'tick' | 'category' | 'bar' | 'tooltip' | 'tooltipLabel' | 'tooltipValue' | 'table', string>>;
|
|
63
64
|
}
|
|
64
65
|
declare var __VLS_6: {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
import type { IconLike } from '../composables/icon';
|
|
2
3
|
export interface BreadcrumbItem {
|
|
3
4
|
label: string;
|
|
@@ -16,7 +17,7 @@ export interface BreadcrumbProps {
|
|
|
16
17
|
label?: string;
|
|
17
18
|
/** Skip built-in classes; you take over styling entirely. */
|
|
18
19
|
unstyled?: boolean;
|
|
19
|
-
class?:
|
|
20
|
+
class?: ClassValue;
|
|
20
21
|
/** Override classes per slot, e.g. `{ current: 'text-primary' }`. */
|
|
21
22
|
ui?: {
|
|
22
23
|
root?: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
export interface ButtonProps {
|
|
2
3
|
/** Render as a different element or component. */
|
|
3
4
|
as?: string;
|
|
@@ -21,7 +22,7 @@ export interface ButtonProps {
|
|
|
21
22
|
/** Skip built-in classes; you take over styling entirely. */
|
|
22
23
|
unstyled?: boolean;
|
|
23
24
|
type?: 'button' | 'submit' | 'reset';
|
|
24
|
-
class?:
|
|
25
|
+
class?: ClassValue;
|
|
25
26
|
}
|
|
26
27
|
declare var __VLS_13: {};
|
|
27
28
|
type __VLS_Slots = {} & {
|
|
@@ -22,7 +22,12 @@ var h = /*@__PURE__*/ s({
|
|
|
22
22
|
default: void 0
|
|
23
23
|
},
|
|
24
24
|
type: { default: "button" },
|
|
25
|
-
class: {
|
|
25
|
+
class: { type: [
|
|
26
|
+
String,
|
|
27
|
+
Boolean,
|
|
28
|
+
null,
|
|
29
|
+
Array
|
|
30
|
+
] }
|
|
26
31
|
},
|
|
27
32
|
setup(s) {
|
|
28
33
|
let h = s, g = e(), _ = i(() => h.unstyled ?? g.unstyled), v = n(), y = i(() => h.size ?? v?.size.value), b = i(() => _.value ? h.class : r({
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
import type { ButtonSize } from '../composables/button-group';
|
|
2
3
|
export interface ButtonGroupProps {
|
|
3
4
|
/** Render as a different element or component. */
|
|
@@ -12,7 +13,7 @@ export interface ButtonGroupProps {
|
|
|
12
13
|
block?: boolean;
|
|
13
14
|
/** Skip built-in classes; you take over styling entirely. */
|
|
14
15
|
unstyled?: boolean;
|
|
15
|
-
class?:
|
|
16
|
+
class?: ClassValue;
|
|
16
17
|
}
|
|
17
18
|
declare var __VLS_8: {};
|
|
18
19
|
type __VLS_Slots = {} & {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClassValue } from '../class-value';
|
|
1
2
|
export interface CalendarProps {
|
|
2
3
|
/** Earliest selectable date, as an ISO `YYYY-MM-DD` string. */
|
|
3
4
|
min?: string;
|
|
@@ -40,7 +41,7 @@ export interface CalendarProps {
|
|
|
40
41
|
nextLabel?: string;
|
|
41
42
|
/** Skip built-in classes; you take over styling entirely. */
|
|
42
43
|
unstyled?: boolean;
|
|
43
|
-
class?:
|
|
44
|
+
class?: ClassValue;
|
|
44
45
|
/** Override classes per slot, e.g. `{ cellTrigger: 'rounded-full' }`. */
|
|
45
46
|
ui?: Partial<Record<'root' | 'header' | 'heading' | 'nav' | 'months' | 'grid' | 'headCell' | 'cell' | 'cellTrigger', string>>;
|
|
46
47
|
}
|