opui-css 5.1.2 → 5.2.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/CHANGELOG.md +8 -0
- package/README.md +4 -5
- package/components/AGENTS.md +12 -13
- package/components/Accordion/Accordion.astro +5 -9
- package/components/Accordion/types.astro.ts +4 -0
- package/components/Accordion/types.d.vue.ts +15 -0
- package/components/Accordion/types.solid.ts +6 -0
- package/components/Accordion/types.svelte.ts +7 -0
- package/components/Accordion/types.ts +10 -0
- package/components/Anchor/Anchor.astro +1 -7
- package/components/Anchor/types.astro.ts +4 -0
- package/components/Anchor/types.d.vue.ts +10 -0
- package/components/Anchor/types.solid.ts +6 -0
- package/components/Anchor/types.svelte.ts +7 -0
- package/components/Anchor/types.ts +9 -0
- package/components/Avatar/Avatar.astro +4 -13
- package/components/Avatar/types.astro.ts +10 -0
- package/components/Avatar/types.d.vue.ts +11 -0
- package/components/Avatar/types.solid.ts +11 -0
- package/components/Avatar/types.svelte.ts +12 -0
- package/components/Avatar/types.ts +29 -0
- package/components/Badge/Badge.astro +3 -11
- package/components/Badge/types.astro.ts +4 -0
- package/components/Badge/types.d.vue.ts +10 -0
- package/components/Badge/types.solid.ts +4 -0
- package/components/Badge/types.svelte.ts +4 -0
- package/components/Badge/types.ts +8 -0
- package/components/Button/Button.astro +18 -27
- package/components/Button/types.astro.ts +6 -0
- package/components/Button/types.d.vue.ts +10 -0
- package/components/Button/types.solid.ts +8 -0
- package/components/Button/types.svelte.ts +6 -0
- package/components/Button/types.ts +19 -0
- package/components/ButtonGroup/ButtonGroup.astro +1 -8
- package/components/ButtonGroup/types.astro.ts +4 -0
- package/components/ButtonGroup/types.d.vue.ts +10 -0
- package/components/ButtonGroup/types.solid.ts +4 -0
- package/components/ButtonGroup/types.svelte.ts +4 -0
- package/components/ButtonGroup/types.ts +7 -0
- package/components/Callout/Callout.astro +10 -9
- package/components/Callout/types.astro.ts +4 -0
- package/components/Callout/types.d.vue.ts +10 -0
- package/components/Callout/types.solid.ts +6 -0
- package/components/Callout/types.svelte.ts +7 -0
- package/components/Callout/types.ts +10 -0
- package/components/Card/Card.astro +1 -5
- package/components/Card/types.astro.ts +4 -0
- package/components/Card/types.d.vue.ts +10 -0
- package/components/Card/types.solid.ts +6 -0
- package/components/Card/types.svelte.ts +7 -0
- package/components/Card/types.ts +10 -0
- package/components/Checkbox/Checkbox.astro +6 -36
- package/components/Checkbox/CheckboxInput.astro +2 -18
- package/components/Checkbox/types.astro.ts +8 -0
- package/components/Checkbox/types.d.vue.ts +11 -0
- package/components/Checkbox/types.solid.ts +9 -0
- package/components/Checkbox/types.svelte.ts +12 -0
- package/components/Checkbox/types.ts +17 -0
- package/components/Chip/Chip.astro +6 -12
- package/components/Chip/types.astro.ts +9 -0
- package/components/Chip/types.d.vue.ts +10 -0
- package/components/Chip/types.solid.ts +10 -0
- package/components/Chip/types.svelte.ts +14 -0
- package/components/Chip/types.ts +13 -0
- package/components/ClassicSelect/ClassicSelect.astro +5 -28
- package/components/ClassicSelect/types.astro.ts +8 -0
- package/components/ClassicSelect/types.d.vue.ts +10 -0
- package/components/ClassicSelect/types.solid.ts +5 -0
- package/components/ClassicSelect/types.svelte.ts +5 -0
- package/components/ClassicSelect/types.ts +19 -0
- package/components/DescriptionList/Description.astro +1 -4
- package/components/DescriptionList/DescriptionList.astro +1 -5
- package/components/DescriptionList/Item.astro +1 -4
- package/components/DescriptionList/Term.astro +1 -4
- package/components/DescriptionList/types.astro.ts +10 -0
- package/components/DescriptionList/types.d.vue.ts +10 -0
- package/components/DescriptionList/types.solid.ts +4 -0
- package/components/DescriptionList/types.svelte.ts +4 -0
- package/components/DescriptionList/types.ts +3 -0
- package/components/Dialog/Dialog.astro +1 -6
- package/components/Dialog/types.astro.ts +4 -0
- package/components/Dialog/types.d.vue.ts +10 -0
- package/components/Dialog/types.solid.ts +8 -0
- package/components/Dialog/types.svelte.ts +7 -0
- package/components/Dialog/types.ts +9 -0
- package/components/Divider/Divider.astro +1 -6
- package/components/Divider/types.astro.ts +4 -0
- package/components/Divider/types.d.vue.ts +6 -0
- package/components/Divider/types.solid.ts +4 -0
- package/components/Divider/types.svelte.ts +4 -0
- package/components/Divider/types.ts +3 -0
- package/components/Drawer/Drawer.astro +1 -9
- package/components/Drawer/DrawerFooter.astro +1 -4
- package/components/Drawer/DrawerHeader.astro +1 -5
- package/components/Drawer/types.astro.ts +8 -0
- package/components/Drawer/types.d.vue.ts +29 -0
- package/components/Drawer/types.solid.ts +12 -0
- package/components/Drawer/types.svelte.ts +15 -0
- package/components/Drawer/types.ts +19 -0
- package/components/FieldDescription/FieldDescription.astro +1 -5
- package/components/FieldDescription/types.astro.ts +4 -0
- package/components/FieldDescription/types.d.vue.ts +10 -0
- package/components/FieldDescription/types.solid.ts +5 -0
- package/components/FieldDescription/types.svelte.ts +4 -0
- package/components/FieldDescription/types.ts +1 -0
- package/components/FieldGroup/FieldGroup.astro +1 -8
- package/components/FieldGroup/types.astro.ts +4 -0
- package/components/FieldGroup/types.d.vue.ts +12 -0
- package/components/FieldGroup/types.solid.ts +5 -0
- package/components/FieldGroup/types.svelte.ts +4 -0
- package/components/FieldGroup/types.ts +4 -0
- package/components/FieldLegend/FieldLegend.astro +4 -8
- package/components/FieldLegend/types.astro.ts +6 -0
- package/components/FieldLegend/types.d.vue.ts +11 -0
- package/components/FieldLegend/types.solid.ts +5 -0
- package/components/FieldLegend/types.svelte.ts +6 -0
- package/components/FieldLegend/types.ts +1 -0
- package/components/FieldSet/FieldSet.astro +1 -5
- package/components/FieldSet/types.astro.ts +6 -0
- package/components/FieldSet/types.d.vue.ts +11 -0
- package/components/FieldSet/types.solid.ts +5 -0
- package/components/FieldSet/types.svelte.ts +8 -0
- package/components/FieldSet/types.ts +5 -0
- package/components/Form/Form.astro +1 -6
- package/components/Form/types.astro.ts +6 -0
- package/components/Form/types.d.vue.ts +11 -0
- package/components/Form/types.solid.ts +5 -0
- package/components/Form/types.svelte.ts +7 -0
- package/components/Form/types.ts +1 -0
- package/components/IconButton/IconButton.astro +18 -20
- package/components/IconButton/types.astro.ts +6 -0
- package/components/IconButton/types.d.vue.ts +10 -0
- package/components/IconButton/types.solid.ts +8 -0
- package/components/IconButton/types.svelte.ts +6 -0
- package/components/IconButton/types.ts +16 -0
- package/components/List/List.astro +1 -8
- package/components/List/types.astro.ts +4 -0
- package/components/List/types.d.vue.ts +10 -0
- package/components/List/types.solid.ts +4 -0
- package/components/List/types.svelte.ts +4 -0
- package/components/List/types.ts +7 -0
- package/components/ListItem/ListItem.astro +3 -13
- package/components/ListItem/types.astro.ts +10 -0
- package/components/ListItem/types.d.vue.ts +10 -0
- package/components/ListItem/types.solid.ts +12 -0
- package/components/ListItem/types.svelte.ts +14 -0
- package/components/ListItem/types.ts +32 -0
- package/components/Progress/Progress.astro +1 -11
- package/components/Progress/types.astro.ts +4 -0
- package/components/Progress/types.d.vue.ts +10 -0
- package/components/Progress/types.solid.ts +4 -0
- package/components/Progress/types.svelte.ts +4 -0
- package/components/Progress/types.ts +10 -0
- package/components/Radio/Radio.astro +6 -32
- package/components/Radio/RadioInput.astro +3 -20
- package/components/Radio/types.astro.ts +6 -0
- package/components/Radio/types.d.vue.ts +11 -0
- package/components/Radio/types.solid.ts +9 -0
- package/components/Radio/types.svelte.ts +12 -0
- package/components/Radio/types.ts +13 -0
- package/components/Range/Range.astro +23 -31
- package/components/Range/types.astro.ts +6 -0
- package/components/Range/types.d.vue.ts +14 -0
- package/components/Range/types.solid.ts +6 -0
- package/components/Range/types.svelte.ts +9 -0
- package/components/Range/types.ts +30 -0
- package/components/Select/Select.astro +42 -34
- package/components/Select/types.astro.ts +4 -0
- package/components/Select/types.d.vue.ts +17 -0
- package/components/Select/types.solid.ts +6 -0
- package/components/Select/types.svelte.ts +7 -0
- package/components/Select/types.ts +27 -0
- package/components/Switch/Switch.astro +14 -39
- package/components/Switch/SwitchInput.astro +3 -21
- package/components/Switch/types.astro.ts +5 -0
- package/components/Switch/types.d.vue.ts +13 -0
- package/components/Switch/types.solid.ts +9 -0
- package/components/Switch/types.svelte.ts +9 -0
- package/components/Switch/types.ts +16 -0
- package/components/Table/Body.astro +1 -3
- package/components/Table/Cell.astro +1 -3
- package/components/Table/Column.astro +1 -4
- package/components/Table/ColumnGroup.astro +1 -3
- package/components/Table/Head.astro +1 -3
- package/components/Table/HeaderCell.astro +1 -3
- package/components/Table/Row.astro +1 -3
- package/components/Table/Table.astro +1 -5
- package/components/Table/types.astro.ts +16 -0
- package/components/Table/types.d.vue.ts +10 -0
- package/components/Table/types.solid.ts +8 -0
- package/components/Table/types.svelte.ts +11 -0
- package/components/Table/types.ts +9 -0
- package/components/Tabs/Tabs.astro +1 -5
- package/components/Tabs/TabsItem.astro +1 -8
- package/components/Tabs/TabsPanel.astro +1 -6
- package/components/Tabs/TabsTab.astro +1 -5
- package/components/Tabs/types.astro.ts +11 -0
- package/components/Tabs/types.d.vue.ts +31 -0
- package/components/Tabs/types.solid.ts +12 -0
- package/components/Tabs/types.svelte.ts +10 -0
- package/components/Tabs/types.ts +19 -0
- package/components/TextField/TextField.astro +45 -49
- package/components/TextField/types.astro.ts +17 -0
- package/components/TextField/types.d.vue.ts +18 -0
- package/components/TextField/types.solid.ts +22 -0
- package/components/TextField/types.svelte.ts +22 -0
- package/components/TextField/types.ts +35 -0
- package/components/Textarea/Textarea.astro +50 -38
- package/components/Textarea/types.astro.ts +10 -0
- package/components/Textarea/types.d.vue.ts +18 -0
- package/components/Textarea/types.solid.ts +6 -0
- package/components/Textarea/types.svelte.ts +21 -0
- package/components/Textarea/types.ts +33 -0
- package/components/ToggleButton/ToggleButton.astro +1 -11
- package/components/ToggleButton/types.astro.ts +4 -0
- package/components/ToggleButton/types.d.vue.ts +10 -0
- package/components/ToggleButton/types.solid.ts +7 -0
- package/components/ToggleButton/types.svelte.ts +7 -0
- package/components/ToggleButton/types.ts +10 -0
- package/components/ToggleGroup/ToggleGroup.astro +1 -8
- package/components/ToggleGroup/types.astro.ts +4 -0
- package/components/ToggleGroup/types.d.vue.ts +15 -0
- package/components/ToggleGroup/types.solid.ts +4 -0
- package/components/ToggleGroup/types.svelte.ts +9 -0
- package/components/ToggleGroup/types.ts +15 -0
- package/components/Tooltip/Tooltip.astro +2 -9
- package/components/Tooltip/types.astro.ts +4 -0
- package/components/Tooltip/types.d.vue.ts +10 -0
- package/components/Tooltip/types.solid.ts +6 -0
- package/components/Tooltip/types.svelte.ts +7 -0
- package/components/Tooltip/types.ts +11 -0
- package/css/theme.css +0 -1
- package/dist/opui.css +0 -1
- package/dist/opui.css.map +1 -1
- package/package.json +4 -6
|
@@ -1,37 +1,17 @@
|
|
|
1
1
|
---
|
|
2
2
|
import SwitchInput from "./SwitchInput.astro"
|
|
3
|
-
|
|
4
|
-
type Props = {
|
|
5
|
-
[key: string]: any
|
|
6
|
-
checked?: boolean
|
|
7
|
-
class?: string
|
|
8
|
-
disabled?: boolean
|
|
9
|
-
error?: boolean
|
|
10
|
-
hideLabel?: boolean
|
|
11
|
-
id?: string
|
|
12
|
-
name?: string
|
|
13
|
-
required?: boolean
|
|
14
|
-
small?: boolean
|
|
15
|
-
spread?: boolean
|
|
16
|
-
stack?: boolean
|
|
17
|
-
value?: string
|
|
18
|
-
}
|
|
3
|
+
import type { SwitchProps as Props } from "./types.astro"
|
|
19
4
|
|
|
20
5
|
export const title = "Switch"
|
|
21
6
|
|
|
22
7
|
const {
|
|
23
|
-
checked,
|
|
24
8
|
class: className,
|
|
25
|
-
disabled,
|
|
26
9
|
error,
|
|
27
10
|
hideLabel,
|
|
28
|
-
id,
|
|
29
11
|
name,
|
|
30
|
-
required,
|
|
31
12
|
small,
|
|
32
13
|
spread,
|
|
33
14
|
stack,
|
|
34
|
-
value,
|
|
35
15
|
...rest
|
|
36
16
|
} = Astro.props
|
|
37
17
|
|
|
@@ -47,7 +27,7 @@ if (
|
|
|
47
27
|
!Astro.props["aria-labelledby"]
|
|
48
28
|
) {
|
|
49
29
|
console.warn(
|
|
50
|
-
"[OPUI Switch] Missing accessible name. Provide a default slot, `aria-label`, or `aria-labelledby`."
|
|
30
|
+
"[OPUI Switch] Missing accessible name. Provide a default slot, `aria-label`, or `aria-labelledby`.",
|
|
51
31
|
)
|
|
52
32
|
}
|
|
53
33
|
---
|
|
@@ -78,24 +58,19 @@ if (
|
|
|
78
58
|
</span>
|
|
79
59
|
)
|
|
80
60
|
}
|
|
81
|
-
<SwitchInput
|
|
82
|
-
aria-describedby={endTextId}
|
|
83
|
-
{checked}
|
|
84
|
-
{disabled}
|
|
85
|
-
{id}
|
|
86
|
-
name={finalName}
|
|
87
|
-
{required}
|
|
88
|
-
{value}
|
|
89
|
-
{...rest}
|
|
90
|
-
/>
|
|
61
|
+
<SwitchInput aria-describedby={endTextId} name={finalName} {...rest} />
|
|
91
62
|
{
|
|
92
63
|
Astro.slots.has("default") && (
|
|
93
|
-
|
|
64
|
+
<span class:list={[hideLabel ? "ui-sr-only" : "ui-label"]}>
|
|
65
|
+
<slot />
|
|
66
|
+
</span>
|
|
67
|
+
)
|
|
68
|
+
}
|
|
69
|
+
{
|
|
70
|
+
Astro.slots.has("end-text") && (
|
|
71
|
+
<span id={endTextId} class="ui-end-text">
|
|
72
|
+
<slot name="end-text" />
|
|
73
|
+
</span>
|
|
74
|
+
)
|
|
94
75
|
}
|
|
95
|
-
{
|
|
96
|
-
Astro.slots.has("end-text") && (
|
|
97
|
-
<!-- prettier-ignore -->
|
|
98
|
-
<span id={endTextId} class="ui-end-text"><slot name="end-text" /></span>
|
|
99
|
-
)
|
|
100
|
-
}
|
|
101
76
|
</label>
|
|
@@ -1,25 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
type Props
|
|
3
|
-
[key: string]: any
|
|
4
|
-
checked?: boolean
|
|
5
|
-
disabled?: boolean
|
|
6
|
-
id?: string
|
|
7
|
-
name?: string
|
|
8
|
-
required?: boolean
|
|
9
|
-
value?: string
|
|
10
|
-
}
|
|
2
|
+
import type { SwitchInputProps as Props } from "./types.astro"
|
|
11
3
|
|
|
12
|
-
const {
|
|
4
|
+
const { ...rest } = Astro.props
|
|
13
5
|
---
|
|
14
6
|
|
|
15
|
-
<input
|
|
16
|
-
type="checkbox"
|
|
17
|
-
role="switch"
|
|
18
|
-
{checked}
|
|
19
|
-
{disabled}
|
|
20
|
-
{id}
|
|
21
|
-
{name}
|
|
22
|
-
{required}
|
|
23
|
-
{value}
|
|
24
|
-
{...rest}
|
|
25
|
-
/>
|
|
7
|
+
<input type="checkbox" role="switch" {...rest} />
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { HTMLAttributes, Slot } from "vue"
|
|
2
|
+
import type { SwitchProps as BaseSwitchProps } from "./types"
|
|
3
|
+
|
|
4
|
+
export type SwitchProps = BaseSwitchProps & {
|
|
5
|
+
class?: HTMLAttributes["class"]
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export type Slots = {
|
|
9
|
+
default?: Slot
|
|
10
|
+
"end-text"?: Slot
|
|
11
|
+
"icon-checked"?: Slot
|
|
12
|
+
"icon-unchecked"?: Slot
|
|
13
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { JSX } from "solid-js"
|
|
3
|
+
|
|
4
|
+
export type SwitchProps = Base.SwitchProps &
|
|
5
|
+
JSX.InputHTMLAttributes<HTMLInputElement> &
|
|
6
|
+
Base.SwitchSlots<JSX.Element>
|
|
7
|
+
|
|
8
|
+
export type SwitchInputProps = Base.SwitchInputProps &
|
|
9
|
+
JSX.InputHTMLAttributes<HTMLInputElement>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { SvelteHTMLElements } from "svelte/elements"
|
|
3
|
+
import type { Snippet } from "svelte"
|
|
4
|
+
|
|
5
|
+
export type SwitchProps = Base.SwitchProps &
|
|
6
|
+
Base.SwitchSlots<Snippet> &
|
|
7
|
+
SvelteHTMLElements["input"]
|
|
8
|
+
export type SwitchInputProps = Base.SwitchInputProps &
|
|
9
|
+
SvelteHTMLElements["input"]
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type SwitchProps = {
|
|
2
|
+
error?: boolean
|
|
3
|
+
hideLabel?: boolean
|
|
4
|
+
small?: boolean
|
|
5
|
+
spread?: boolean
|
|
6
|
+
stack?: boolean
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export type SwitchSlots<S> = {
|
|
10
|
+
children?: S
|
|
11
|
+
endText?: string | S
|
|
12
|
+
iconUnchecked?: S
|
|
13
|
+
iconChecked?: S
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export type SwitchInputProps = {}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { HTMLAttributes } from "astro/types"
|
|
3
|
+
|
|
4
|
+
export type Props = Base.Props & HTMLAttributes<"table">
|
|
5
|
+
|
|
6
|
+
export type SectionProps = Base.SectionProps &
|
|
7
|
+
(
|
|
8
|
+
| HTMLAttributes<"tr">
|
|
9
|
+
| HTMLAttributes<"tbody">
|
|
10
|
+
| HTMLAttributes<"thead">
|
|
11
|
+
| HTMLAttributes<"th">
|
|
12
|
+
| HTMLAttributes<"td">
|
|
13
|
+
| HTMLAttributes<"colgroup">
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
export type ColumnProps = Base.ColumnProps & HTMLAttributes<"col">
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { JSX } from "solid-js"
|
|
3
|
+
|
|
4
|
+
export type Props = Base.Props & JSX.HTMLAttributes<HTMLTableElement>
|
|
5
|
+
export type SectionProps = Base.SectionProps &
|
|
6
|
+
JSX.HTMLAttributes<HTMLTableSectionElement>
|
|
7
|
+
export type ColumnProps = Base.ColumnProps &
|
|
8
|
+
JSX.HTMLAttributes<HTMLTableColElement>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { SvelteHTMLElements } from "svelte/elements"
|
|
3
|
+
|
|
4
|
+
export type ColumnProps = Base.ColumnProps & SvelteHTMLElements["col"]
|
|
5
|
+
export type Props = Base.Props & SvelteHTMLElements["table"]
|
|
6
|
+
export type SectionProps = Base.SectionProps &
|
|
7
|
+
(
|
|
8
|
+
| SvelteHTMLElements["tbody"]
|
|
9
|
+
| SvelteHTMLElements["tfoot"]
|
|
10
|
+
| SvelteHTMLElements["thead"]
|
|
11
|
+
)
|
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
type Props
|
|
3
|
-
class?: string
|
|
4
|
-
panelId?: string
|
|
5
|
-
tabId?: string
|
|
6
|
-
[key: string]: any
|
|
7
|
-
}
|
|
2
|
+
import type { TabsPanelProps as Props } from "./types.astro"
|
|
8
3
|
|
|
9
4
|
const { class: className, panelId, tabId, ...rest } = Astro.props
|
|
10
5
|
const { currentPanelId, currentTabId } = Astro.locals
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { HTMLAttributes } from "astro/types"
|
|
3
|
+
|
|
4
|
+
export type Props = Base.Props & HTMLAttributes<"div">
|
|
5
|
+
|
|
6
|
+
export type TabsItemProps = Base.TabsItemProps &
|
|
7
|
+
Omit<HTMLAttributes<"input">, "type">
|
|
8
|
+
|
|
9
|
+
export type TabsTabProps = Base.TabsTabProps & HTMLAttributes<"label">
|
|
10
|
+
|
|
11
|
+
export type TabsPanelProps = Base.TabsPanelProps & HTMLAttributes<"div">
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { HTMLAttributes, InjectionKey, Slot } from "vue"
|
|
2
|
+
import type {
|
|
3
|
+
Props as BaseProps,
|
|
4
|
+
TabsItemProps as BaseTabsItemProps,
|
|
5
|
+
TabsPanelProps as BaseTabsPanelProps,
|
|
6
|
+
TabsTabProps as BaseTabsTabProps,
|
|
7
|
+
} from "./types"
|
|
8
|
+
|
|
9
|
+
export type Props = BaseProps & {
|
|
10
|
+
class?: HTMLAttributes["class"]
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export type TabsItemProps = BaseTabsItemProps & {
|
|
14
|
+
class?: HTMLAttributes["class"]
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export type TabsPanelProps = BaseTabsPanelProps & {
|
|
18
|
+
class?: HTMLAttributes["class"]
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export type TabsTabProps = BaseTabsTabProps & {
|
|
22
|
+
class?: HTMLAttributes["class"]
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export type Slots = {
|
|
26
|
+
default?: Slot
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export const TabsGroupNameKey = Symbol() as InjectionKey<string>
|
|
30
|
+
export const CurrentTabIdKey = Symbol() as InjectionKey<string>
|
|
31
|
+
export const CurrentPanelIdKey = Symbol() as InjectionKey<string>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { JSX } from "solid-js"
|
|
3
|
+
|
|
4
|
+
export type Props = Base.Props & JSX.HTMLAttributes<HTMLDivElement>
|
|
5
|
+
export type TabsItemProps = Base.TabsItemProps &
|
|
6
|
+
JSX.InputHTMLAttributes<HTMLInputElement>
|
|
7
|
+
export type TabsTabProps = Base.TabsTabProps &
|
|
8
|
+
Omit<JSX.LabelHTMLAttributes<HTMLLabelElement>, "for"> & {
|
|
9
|
+
for?: string
|
|
10
|
+
}
|
|
11
|
+
export type TabsPanelProps = Base.TabsPanelProps &
|
|
12
|
+
JSX.HTMLAttributes<HTMLDivElement>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { SvelteHTMLElements } from "svelte/elements"
|
|
3
|
+
|
|
4
|
+
export type Props = Base.Props & SvelteHTMLElements["div"]
|
|
5
|
+
export type TabsItemProps = Base.TabsItemProps & SvelteHTMLElements["input"]
|
|
6
|
+
export type TabsPanelProps = Base.TabsPanelProps & SvelteHTMLElements["div"]
|
|
7
|
+
export type TabsTabProps = Base.TabsTabProps &
|
|
8
|
+
Omit<SvelteHTMLElements["label"], "for"> & {
|
|
9
|
+
for?: string
|
|
10
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type Props = {
|
|
2
|
+
name?: string
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
export type TabsItemProps = {
|
|
6
|
+
name?: string
|
|
7
|
+
open?: boolean
|
|
8
|
+
panelId?: string
|
|
9
|
+
tabId?: string
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export type TabsTabProps = {
|
|
13
|
+
tabId?: string
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export type TabsPanelProps = {
|
|
17
|
+
panelId?: string
|
|
18
|
+
tabId?: string
|
|
19
|
+
}
|
|
@@ -1,42 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
type Props
|
|
3
|
-
[key: string]: any
|
|
4
|
-
autoFit?: boolean
|
|
5
|
-
class?: string
|
|
6
|
-
error?: boolean
|
|
7
|
-
description?: string
|
|
8
|
-
disabled?: boolean
|
|
9
|
-
endText?: string
|
|
10
|
-
filled?: boolean
|
|
11
|
-
id?: string
|
|
12
|
-
label?: string
|
|
13
|
-
list?: string
|
|
14
|
-
max?: number | string
|
|
15
|
-
min?: number | string
|
|
16
|
-
name?: string
|
|
17
|
-
placeholder?: string
|
|
18
|
-
required?: boolean
|
|
19
|
-
small?: boolean
|
|
20
|
-
spread?: boolean
|
|
21
|
-
startText?: string
|
|
22
|
-
step?: number | string
|
|
23
|
-
type?:
|
|
24
|
-
| "color"
|
|
25
|
-
| "date"
|
|
26
|
-
| "datetime-local"
|
|
27
|
-
| "email"
|
|
28
|
-
| "file"
|
|
29
|
-
| "month"
|
|
30
|
-
| "numeric"
|
|
31
|
-
| "password"
|
|
32
|
-
| "search"
|
|
33
|
-
| "tel"
|
|
34
|
-
| "text"
|
|
35
|
-
| "time"
|
|
36
|
-
| "url"
|
|
37
|
-
| "week"
|
|
38
|
-
value?: string | number
|
|
39
|
-
}
|
|
2
|
+
import type { Props } from "./types.astro"
|
|
40
3
|
|
|
41
4
|
export const title = "Text Field"
|
|
42
5
|
|
|
@@ -87,14 +50,18 @@ const fieldName = name || currentFieldName
|
|
|
87
50
|
>
|
|
88
51
|
{
|
|
89
52
|
(label || Astro.slots.has("label")) && (
|
|
90
|
-
|
|
91
|
-
|
|
53
|
+
<span class="ui-label">
|
|
54
|
+
{label}
|
|
55
|
+
<slot name="label" />
|
|
56
|
+
</span>
|
|
92
57
|
)
|
|
93
58
|
}
|
|
94
59
|
{
|
|
95
60
|
(startTextValue || Astro.slots.has("description")) && (
|
|
96
|
-
|
|
97
|
-
|
|
61
|
+
<span class="ui-start-text">
|
|
62
|
+
{startTextValue}
|
|
63
|
+
<slot name="description" />
|
|
64
|
+
</span>
|
|
98
65
|
)
|
|
99
66
|
}
|
|
100
67
|
<span class="ui-field">
|
|
@@ -113,15 +80,44 @@ const fieldName = name || currentFieldName
|
|
|
113
80
|
type={type === "numeric" ? "text" : type}
|
|
114
81
|
value={value}
|
|
115
82
|
/>
|
|
116
|
-
{
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
83
|
+
{
|
|
84
|
+
Astro.slots.has("prefix") && (
|
|
85
|
+
<span class="ui-prefix">
|
|
86
|
+
<slot name="prefix" />
|
|
87
|
+
</span>
|
|
88
|
+
)
|
|
89
|
+
}
|
|
90
|
+
{
|
|
91
|
+
Astro.slots.has("suffix") && (
|
|
92
|
+
<span class="ui-suffix">
|
|
93
|
+
<slot name="suffix" />
|
|
94
|
+
</span>
|
|
95
|
+
)
|
|
96
|
+
}
|
|
97
|
+
{
|
|
98
|
+
Astro.slots.has("header") && (
|
|
99
|
+
<span class="ui-header">
|
|
100
|
+
<slot name="header" />
|
|
101
|
+
</span>
|
|
102
|
+
)
|
|
103
|
+
}
|
|
104
|
+
{
|
|
105
|
+
Astro.slots.has("footer") && (
|
|
106
|
+
<span class="ui-footer">
|
|
107
|
+
<slot name="footer" />
|
|
108
|
+
</span>
|
|
109
|
+
)
|
|
110
|
+
}
|
|
120
111
|
</span>
|
|
121
112
|
{
|
|
122
|
-
(endText ||
|
|
123
|
-
|
|
124
|
-
|
|
113
|
+
(endText ||
|
|
114
|
+
Astro.slots.has("end-text") ||
|
|
115
|
+
Astro.slots.has("supporting-text")) && (
|
|
116
|
+
<span class="ui-end-text">
|
|
117
|
+
{endText}
|
|
118
|
+
<slot name="end-text" />
|
|
119
|
+
<slot name="supporting-text" />
|
|
120
|
+
</span>
|
|
125
121
|
)
|
|
126
122
|
}
|
|
127
123
|
<slot />
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { HTMLAttributes } from "astro/types"
|
|
3
|
+
|
|
4
|
+
type InputProps = {
|
|
5
|
+
// Add 'numeric' as valid input type
|
|
6
|
+
type?: HTMLAttributes<"input">["type"] | "numeric"
|
|
7
|
+
} &
|
|
8
|
+
// include the rest
|
|
9
|
+
Pick<HTMLAttributes<"input">, Exclude<Base.InputProps, "type">>
|
|
10
|
+
|
|
11
|
+
export type Props =
|
|
12
|
+
// Unique component props
|
|
13
|
+
Base.Props &
|
|
14
|
+
// All html label attributes
|
|
15
|
+
HTMLAttributes<"label"> &
|
|
16
|
+
// Input attributes
|
|
17
|
+
InputProps
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { HTMLAttributes, Slot } from "vue"
|
|
2
|
+
import type { Props as BaseProps } from "./types"
|
|
3
|
+
|
|
4
|
+
export type Props = BaseProps & {
|
|
5
|
+
class?: HTMLAttributes["class"]
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export type Slots = {
|
|
9
|
+
default?: Slot
|
|
10
|
+
description?: Slot
|
|
11
|
+
"end-text"?: Slot
|
|
12
|
+
footer?: Slot
|
|
13
|
+
header?: Slot
|
|
14
|
+
label?: Slot
|
|
15
|
+
prefix?: Slot
|
|
16
|
+
"supporting-text"?: Slot
|
|
17
|
+
suffix?: Slot
|
|
18
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { JSX } from "solid-js"
|
|
3
|
+
|
|
4
|
+
export type Props = Base.Props &
|
|
5
|
+
Omit<JSX.InputHTMLAttributes<HTMLInputElement>, "type"> & {
|
|
6
|
+
type?:
|
|
7
|
+
| "text"
|
|
8
|
+
| "password"
|
|
9
|
+
| "email"
|
|
10
|
+
| "number"
|
|
11
|
+
| "numeric"
|
|
12
|
+
| "search"
|
|
13
|
+
| "tel"
|
|
14
|
+
| "url"
|
|
15
|
+
| "date"
|
|
16
|
+
| "time"
|
|
17
|
+
| "datetime-local"
|
|
18
|
+
| "month"
|
|
19
|
+
| "week"
|
|
20
|
+
| "color"
|
|
21
|
+
| string
|
|
22
|
+
} & Partial<Base.Slots<JSX.Element>>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type * as Base from "./types"
|
|
2
|
+
import type { SvelteHTMLElements } from "svelte/elements"
|
|
3
|
+
import type { Snippet } from "svelte"
|
|
4
|
+
|
|
5
|
+
type InputProps = {
|
|
6
|
+
// Add 'numeric' as valid input type
|
|
7
|
+
type?: SvelteHTMLElements["input"]["type"] | "numeric"
|
|
8
|
+
} &
|
|
9
|
+
// include the rest
|
|
10
|
+
Pick<SvelteHTMLElements["input"], Exclude<Base.InputProps, "type">>
|
|
11
|
+
|
|
12
|
+
type Snippets = Base.Slots<Snippet>
|
|
13
|
+
|
|
14
|
+
export type Props =
|
|
15
|
+
// Unique component props, except snippets
|
|
16
|
+
Omit<Base.Props, keyof Snippets> &
|
|
17
|
+
// All html label attributes, (except prefix)
|
|
18
|
+
Omit<SvelteHTMLElements["label"], "prefix"> &
|
|
19
|
+
// Input attributes
|
|
20
|
+
InputProps &
|
|
21
|
+
// Snippets
|
|
22
|
+
Snippets
|