@adia-ai/web-components 0.0.1 → 0.0.2
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/components/agent-reasoning/agent-reasoning.a2ui.json +14 -8
- package/components/agent-reasoning/agent-reasoning.css +1 -1
- package/components/agent-reasoning/agent-reasoning.js +8 -8
- package/components/agent-reasoning/agent-reasoning.yaml +9 -6
- package/components/avatar/avatar.a2ui.json +0 -10
- package/components/avatar/avatar.css +1 -1
- package/components/avatar/avatar.yaml +0 -8
- package/components/badge/badge.a2ui.json +6 -6
- package/components/badge/badge.js +21 -0
- package/components/badge/badge.yaml +8 -5
- package/components/button/button.a2ui.json +0 -11
- package/components/button/button.css +1 -1
- package/components/button/button.js +1 -1
- package/components/button/button.yaml +0 -11
- package/components/calendar-picker/calendar-picker.js +23 -17
- package/components/canvas/canvas.js +1 -1
- package/components/card/card.a2ui.json +0 -21
- package/components/card/card.yaml +0 -14
- package/components/chart/chart.a2ui.json +9 -8
- package/components/chart/chart.yaml +7 -5
- package/components/check/check.css +1 -1
- package/components/code/code.a2ui.json +0 -5
- package/components/code/code.yaml +0 -4
- package/components/col/col.a2ui.json +0 -20
- package/components/col/col.yaml +0 -20
- package/components/color-picker/color-picker.a2ui.json +1 -1
- package/components/color-picker/color-picker.js +4 -1
- package/components/color-picker/color-picker.yaml +1 -1
- package/components/command/command.js +21 -10
- package/components/divider/divider.a2ui.json +0 -19
- package/components/divider/divider.yaml +0 -12
- package/components/drawer/drawer.a2ui.json +2 -2
- package/components/drawer/drawer.css +1 -1
- package/components/drawer/drawer.js +1 -1
- package/components/drawer/drawer.yaml +3 -3
- package/components/empty-state/empty-state.a2ui.json +0 -13
- package/components/empty-state/empty-state.yaml +0 -5
- package/components/footer/footer.a2ui.json +1 -1
- package/components/footer/footer.yaml +1 -1
- package/components/grid/grid.a2ui.json +0 -5
- package/components/grid/grid.yaml +0 -4
- package/components/header/header.a2ui.json +1 -1
- package/components/header/header.yaml +1 -1
- package/components/heatmap/heatmap.a2ui.json +4 -4
- package/components/heatmap/heatmap.js +3 -3
- package/components/heatmap/heatmap.yaml +4 -4
- package/components/icon/icon.a2ui.json +13 -0
- package/components/icon/icon.yaml +6 -0
- package/components/image/image.a2ui.json +10 -21
- package/components/image/image.yaml +8 -16
- package/components/input/input.a2ui.json +0 -15
- package/components/input/input.yaml +0 -12
- package/components/inspector/inspector.a2ui.json +0 -5
- package/components/inspector/inspector.yaml +0 -4
- package/components/list/list.a2ui.json +0 -33
- package/components/list/list.yaml +0 -27
- package/components/menu/menu.a2ui.json +0 -10
- package/components/menu/menu.js +7 -1
- package/components/menu/menu.yaml +0 -8
- package/components/modal/modal.a2ui.json +1 -25
- package/components/modal/modal.yaml +1 -22
- package/components/noodles/noodles.a2ui.json +0 -5
- package/components/noodles/noodles.yaml +0 -5
- package/components/otp-input/otp-input.a2ui.json +0 -5
- package/components/otp-input/otp-input.yaml +0 -4
- package/components/pagination/pagination.a2ui.json +3 -13
- package/components/pagination/pagination.css +1 -1
- package/components/pagination/pagination.yaml +5 -14
- package/components/pane/pane.a2ui.json +0 -10
- package/components/pane/pane.yaml +0 -9
- package/components/popover/popover.a2ui.json +0 -14
- package/components/popover/popover.js +7 -1
- package/components/popover/popover.yaml +0 -11
- package/components/progress/progress.a2ui.json +2 -12
- package/components/progress/progress.yaml +2 -11
- package/components/progress-row/progress-row.a2ui.json +3 -13
- package/components/progress-row/progress-row.yaml +3 -11
- package/components/radio/radio.css +1 -1
- package/components/row/row.a2ui.json +0 -5
- package/components/row/row.yaml +0 -4
- package/components/search/search.a2ui.json +0 -5
- package/components/search/search.yaml +0 -4
- package/components/section/section.a2ui.json +1 -1
- package/components/section/section.yaml +1 -1
- package/components/segmented/segmented.css +1 -1
- package/components/select/select.a2ui.json +5 -0
- package/components/select/select.js +11 -1
- package/components/select/select.yaml +5 -0
- package/components/skeleton/skeleton.a2ui.json +0 -11
- package/components/skeleton/skeleton.yaml +0 -5
- package/components/slider/slider.a2ui.json +0 -5
- package/components/slider/slider.yaml +0 -5
- package/components/swiper/swiper.a2ui.json +7 -7
- package/components/swiper/swiper.js +1 -1
- package/components/swiper/swiper.yaml +8 -6
- package/components/switch/switch.css +1 -1
- package/components/tag/tag.a2ui.json +0 -5
- package/components/tag/tag.yaml +0 -4
- package/components/text/text.a2ui.json +5 -0
- package/components/text/text.css +2 -2
- package/components/text/text.yaml +5 -0
- package/components/timeline/timeline.a2ui.json +8 -13
- package/components/timeline/timeline.yaml +6 -11
- package/components/toast/toast.a2ui.json +0 -15
- package/components/toast/toast.yaml +0 -13
- package/components/toolbar/toolbar.a2ui.json +0 -23
- package/components/toolbar/toolbar.js +11 -1
- package/components/toolbar/toolbar.yaml +0 -19
- package/components/tooltip/tooltip.a2ui.json +0 -10
- package/components/tooltip/tooltip.yaml +0 -8
- package/package.json +1 -1
- package/patterns/adia-chat/css/adia-chat.streaming.css +2 -2
- package/patterns/gen-ui/gen-ui.css +3 -3
|
@@ -13,47 +13,14 @@
|
|
|
13
13
|
}
|
|
14
14
|
],
|
|
15
15
|
"properties": {
|
|
16
|
-
"align": {
|
|
17
|
-
"description": "Alignment — values depend on container semantics.",
|
|
18
|
-
"type": "string",
|
|
19
|
-
"enum": [
|
|
20
|
-
"start",
|
|
21
|
-
"center",
|
|
22
|
-
"end",
|
|
23
|
-
"stretch"
|
|
24
|
-
],
|
|
25
|
-
"default": "stretch"
|
|
26
|
-
},
|
|
27
16
|
"component": {
|
|
28
17
|
"const": "List"
|
|
29
18
|
},
|
|
30
|
-
"direction": {
|
|
31
|
-
"description": "Component property: direction.",
|
|
32
|
-
"type": "string",
|
|
33
|
-
"enum": [
|
|
34
|
-
"vertical",
|
|
35
|
-
"horizontal"
|
|
36
|
-
],
|
|
37
|
-
"default": "vertical"
|
|
38
|
-
},
|
|
39
19
|
"divider": {
|
|
40
20
|
"description": "Show dividers between items",
|
|
41
21
|
"type": "boolean",
|
|
42
22
|
"default": false
|
|
43
23
|
},
|
|
44
|
-
"gap": {
|
|
45
|
-
"description": "Gap between children.",
|
|
46
|
-
"type": "string",
|
|
47
|
-
"enum": [
|
|
48
|
-
"none",
|
|
49
|
-
"xs",
|
|
50
|
-
"sm",
|
|
51
|
-
"md",
|
|
52
|
-
"lg",
|
|
53
|
-
"xl"
|
|
54
|
-
],
|
|
55
|
-
"default": "sm"
|
|
56
|
-
},
|
|
57
24
|
"selectable": {
|
|
58
25
|
"description": "Enable selection on child listitems (roving tabindex + aria-selected).",
|
|
59
26
|
"type": "boolean",
|
|
@@ -8,37 +8,10 @@ category: layout
|
|
|
8
8
|
version: 1
|
|
9
9
|
description: Styled list with optional icons and dividers.
|
|
10
10
|
props:
|
|
11
|
-
align:
|
|
12
|
-
description: "Alignment — values depend on container semantics."
|
|
13
|
-
type: string
|
|
14
|
-
default: stretch
|
|
15
|
-
enum:
|
|
16
|
-
- start
|
|
17
|
-
- center
|
|
18
|
-
- end
|
|
19
|
-
- stretch
|
|
20
|
-
direction:
|
|
21
|
-
description: "Component property: direction."
|
|
22
|
-
type: string
|
|
23
|
-
default: vertical
|
|
24
|
-
enum:
|
|
25
|
-
- vertical
|
|
26
|
-
- horizontal
|
|
27
11
|
divider:
|
|
28
12
|
description: Show dividers between items
|
|
29
13
|
type: boolean
|
|
30
14
|
default: false
|
|
31
|
-
gap:
|
|
32
|
-
description: "Gap between children."
|
|
33
|
-
type: string
|
|
34
|
-
default: sm
|
|
35
|
-
enum:
|
|
36
|
-
- none
|
|
37
|
-
- xs
|
|
38
|
-
- sm
|
|
39
|
-
- md
|
|
40
|
-
- lg
|
|
41
|
-
- xl
|
|
42
15
|
selectable:
|
|
43
16
|
description: Enable selection on child listitems (roving tabindex + aria-selected).
|
|
44
17
|
type: boolean
|
|
@@ -13,11 +13,6 @@
|
|
|
13
13
|
}
|
|
14
14
|
],
|
|
15
15
|
"properties": {
|
|
16
|
-
"anchor": {
|
|
17
|
-
"description": "ID of the anchor element the menu positions relative to",
|
|
18
|
-
"type": "string",
|
|
19
|
-
"default": ""
|
|
20
|
-
},
|
|
21
16
|
"component": {
|
|
22
17
|
"const": "Menu"
|
|
23
18
|
},
|
|
@@ -41,11 +36,6 @@
|
|
|
41
36
|
"top-end"
|
|
42
37
|
],
|
|
43
38
|
"default": "bottom-start"
|
|
44
|
-
},
|
|
45
|
-
"trigger": {
|
|
46
|
-
"description": "ID of the element that opens this menu (click handler + aria-controls).",
|
|
47
|
-
"type": "string",
|
|
48
|
-
"default": ""
|
|
49
39
|
}
|
|
50
40
|
},
|
|
51
41
|
"required": [
|
package/components/menu/menu.js
CHANGED
|
@@ -30,6 +30,7 @@ class AdiaMenu extends AdiaElement {
|
|
|
30
30
|
#anchorCleanup = null;
|
|
31
31
|
#popover = null;
|
|
32
32
|
#bound = false;
|
|
33
|
+
#rafId = null;
|
|
33
34
|
|
|
34
35
|
connected() {
|
|
35
36
|
if (!this.#bound) {
|
|
@@ -88,7 +89,8 @@ class AdiaMenu extends AdiaElement {
|
|
|
88
89
|
requestAnimationFrame(() => this.#focusItem(0));
|
|
89
90
|
}
|
|
90
91
|
|
|
91
|
-
requestAnimationFrame(() => {
|
|
92
|
+
this.#rafId = requestAnimationFrame(() => {
|
|
93
|
+
this.#rafId = null;
|
|
92
94
|
document.addEventListener('pointerdown', this.#onOutside);
|
|
93
95
|
document.addEventListener('keydown', this.#onDocKey, true);
|
|
94
96
|
});
|
|
@@ -106,6 +108,10 @@ class AdiaMenu extends AdiaElement {
|
|
|
106
108
|
for (const item of items) this.insertBefore(item, pop);
|
|
107
109
|
}
|
|
108
110
|
|
|
111
|
+
if (this.#rafId != null) {
|
|
112
|
+
cancelAnimationFrame(this.#rafId);
|
|
113
|
+
this.#rafId = null;
|
|
114
|
+
}
|
|
109
115
|
document.removeEventListener('pointerdown', this.#onOutside);
|
|
110
116
|
document.removeEventListener('keydown', this.#onDocKey, true);
|
|
111
117
|
}
|
|
@@ -8,14 +8,6 @@ category: container
|
|
|
8
8
|
version: 1
|
|
9
9
|
description: Dropdown action menu with roving focus and keyboard navigation. Uses Popover API.
|
|
10
10
|
props:
|
|
11
|
-
anchor:
|
|
12
|
-
description: ID of the anchor element the menu positions relative to
|
|
13
|
-
type: string
|
|
14
|
-
default: ""
|
|
15
|
-
trigger:
|
|
16
|
-
description: ID of the element that opens this menu (click handler + aria-controls).
|
|
17
|
-
type: string
|
|
18
|
-
default: ""
|
|
19
11
|
gap:
|
|
20
12
|
description: Gap in px
|
|
21
13
|
type: number
|
|
@@ -13,25 +13,11 @@
|
|
|
13
13
|
}
|
|
14
14
|
],
|
|
15
15
|
"properties": {
|
|
16
|
-
"anchor": {
|
|
17
|
-
"description": "ID of the element to anchor to (popover mode only). Positions the surface below the anchor element.",
|
|
18
|
-
"type": "string",
|
|
19
|
-
"default": ""
|
|
20
|
-
},
|
|
21
16
|
"component": {
|
|
22
17
|
"const": "Modal"
|
|
23
18
|
},
|
|
24
|
-
"mode": {
|
|
25
|
-
"description": "Surface type. Dialog uses showModal() with backdrop and focus trap. Popover uses the Popover API with light dismiss and optional anchor positioning.",
|
|
26
|
-
"type": "string",
|
|
27
|
-
"enum": [
|
|
28
|
-
"dialog",
|
|
29
|
-
"popover"
|
|
30
|
-
],
|
|
31
|
-
"default": "dialog"
|
|
32
|
-
},
|
|
33
19
|
"open": {
|
|
34
|
-
"description": "
|
|
20
|
+
"description": "Controls overlay visibility. Setting to true opens the surface with entry animation.",
|
|
35
21
|
"type": "boolean",
|
|
36
22
|
"default": false
|
|
37
23
|
},
|
|
@@ -40,11 +26,6 @@
|
|
|
40
26
|
"type": "boolean",
|
|
41
27
|
"default": false
|
|
42
28
|
},
|
|
43
|
-
"show": {
|
|
44
|
-
"description": "Controls overlay visibility. Setting to true opens the surface with entry animation.",
|
|
45
|
-
"type": "boolean",
|
|
46
|
-
"default": false
|
|
47
|
-
},
|
|
48
29
|
"size": {
|
|
49
30
|
"description": "Width preset. sm=24rem, md=32rem, lg=48rem, full=95vw.",
|
|
50
31
|
"type": "string",
|
|
@@ -60,11 +41,6 @@
|
|
|
60
41
|
"description": "Aria label applied to the surface element for accessibility",
|
|
61
42
|
"type": "string",
|
|
62
43
|
"default": ""
|
|
63
|
-
},
|
|
64
|
-
"trigger": {
|
|
65
|
-
"description": "ID of the element that opens this modal (sets aria-controls + click handler).",
|
|
66
|
-
"type": "string",
|
|
67
|
-
"default": ""
|
|
68
44
|
}
|
|
69
45
|
},
|
|
70
46
|
"required": [
|
|
@@ -8,25 +8,8 @@ category: container
|
|
|
8
8
|
version: 1
|
|
9
9
|
description: Centered dialog overlay using native <dialog>. Focus trapping, Escape key, backdrop.
|
|
10
10
|
props:
|
|
11
|
-
anchor:
|
|
12
|
-
description: ID of the element to anchor to (popover mode only). Positions the surface below the
|
|
13
|
-
anchor element.
|
|
14
|
-
type: string
|
|
15
|
-
default: ""
|
|
16
|
-
trigger:
|
|
17
|
-
description: ID of the element that opens this modal (sets aria-controls + click handler).
|
|
18
|
-
type: string
|
|
19
|
-
default: ""
|
|
20
|
-
mode:
|
|
21
|
-
description: Surface type. Dialog uses showModal() with backdrop and focus trap. Popover uses the
|
|
22
|
-
Popover API with light dismiss and optional anchor positioning.
|
|
23
|
-
type: string
|
|
24
|
-
default: dialog
|
|
25
|
-
enum:
|
|
26
|
-
- dialog
|
|
27
|
-
- popover
|
|
28
11
|
open:
|
|
29
|
-
description:
|
|
12
|
+
description: Controls overlay visibility. Setting to true opens the surface with entry animation.
|
|
30
13
|
type: boolean
|
|
31
14
|
default: false
|
|
32
15
|
reflect: true
|
|
@@ -34,10 +17,6 @@ props:
|
|
|
34
17
|
description: When true, suppress backdrop click and Escape key dismissal of the overlay
|
|
35
18
|
type: boolean
|
|
36
19
|
default: false
|
|
37
|
-
show:
|
|
38
|
-
description: Controls overlay visibility. Setting to true opens the surface with entry animation.
|
|
39
|
-
type: boolean
|
|
40
|
-
default: false
|
|
41
20
|
size:
|
|
42
21
|
description: Width preset. sm=24rem, md=32rem, lg=48rem, full=95vw.
|
|
43
22
|
type: string
|
|
@@ -36,11 +36,6 @@
|
|
|
36
36
|
],
|
|
37
37
|
"default": "bezier"
|
|
38
38
|
},
|
|
39
|
-
"disabled": {
|
|
40
|
-
"description": "Disable the controller. Noodles render as dashed muted lines",
|
|
41
|
-
"type": "boolean",
|
|
42
|
-
"default": false
|
|
43
|
-
},
|
|
44
39
|
"editable": {
|
|
45
40
|
"description": "Allow interactive creation/deletion of connections via drag",
|
|
46
41
|
"type": "boolean",
|
|
@@ -25,11 +25,6 @@ props:
|
|
|
25
25
|
- bezier
|
|
26
26
|
- step
|
|
27
27
|
- straight
|
|
28
|
-
disabled:
|
|
29
|
-
description: Disable the controller. Noodles render as dashed muted lines
|
|
30
|
-
type: boolean
|
|
31
|
-
default: false
|
|
32
|
-
reflect: true
|
|
33
28
|
editable:
|
|
34
29
|
description: Allow interactive creation/deletion of connections via drag
|
|
35
30
|
type: boolean
|
|
@@ -31,11 +31,6 @@
|
|
|
31
31
|
"type": "string",
|
|
32
32
|
"default": ""
|
|
33
33
|
},
|
|
34
|
-
"separator": {
|
|
35
|
-
"description": "Position to insert a dash separator (0 = no separator)",
|
|
36
|
-
"type": "number",
|
|
37
|
-
"default": 0
|
|
38
|
-
},
|
|
39
34
|
"value": {
|
|
40
35
|
"description": "Current OTP value",
|
|
41
36
|
"type": "string",
|
|
@@ -16,21 +16,11 @@
|
|
|
16
16
|
"component": {
|
|
17
17
|
"const": "Pagination"
|
|
18
18
|
},
|
|
19
|
-
"current": {
|
|
20
|
-
"description": "Alias for `page` — accepted for back-compat.",
|
|
21
|
-
"type": "number",
|
|
22
|
-
"default": 1
|
|
23
|
-
},
|
|
24
19
|
"page": {
|
|
25
20
|
"description": "Current active page number.",
|
|
26
21
|
"type": "number",
|
|
27
22
|
"default": 1
|
|
28
23
|
},
|
|
29
|
-
"pageSize": {
|
|
30
|
-
"description": "Items per page — drives the visible window and total-page math when combined with a total item count.",
|
|
31
|
-
"type": "number",
|
|
32
|
-
"default": 10
|
|
33
|
-
},
|
|
34
24
|
"siblings": {
|
|
35
25
|
"description": "Number of page buttons to show on each side of the current page.",
|
|
36
26
|
"type": "number",
|
|
@@ -44,7 +34,7 @@
|
|
|
44
34
|
"variant": {
|
|
45
35
|
"description": "Visual variant",
|
|
46
36
|
"type": "string",
|
|
47
|
-
"default": ""
|
|
37
|
+
"default": "default"
|
|
48
38
|
}
|
|
49
39
|
},
|
|
50
40
|
"required": [
|
|
@@ -62,12 +52,12 @@
|
|
|
62
52
|
"examples": [
|
|
63
53
|
{
|
|
64
54
|
"description": "Card with header containing title and search input, table component, and pagination footer.",
|
|
65
|
-
"a2ui": "[\n {\n \"id\": \"root\",\n \"component\": \"Card\",\n \"size\": \"lg\",\n \"children\": [\n \"hdr\",\n \"sec\",\n \"ftr\"\n ]\n },\n {\n \"id\": \"hdr\",\n \"component\": \"Header\",\n \"children\": [\n \"title-row\"\n ]\n },\n {\n \"id\": \"title-row\",\n \"component\": \"Row\",\n \"children\": [\n \"title\",\n \"search\"\n ],\n \"gap\": \"4\"\n },\n {\n \"id\": \"title\",\n \"component\": \"Text\",\n \"slot\": \"heading\",\n \"textContent\": \"Data Table\",\n \"variant\": \"section\"\n },\n {\n \"id\": \"search\",\n \"component\": \"Input\",\n \"placeholder\": \"Search...\",\n \"type\": \"search\",\n \"name\": \"search\"\n },\n {\n \"id\": \"sec\",\n \"component\": \"Section\",\n \"children\": [\n \"tbl\"\n ]\n },\n {\n \"id\": \"tbl\",\n \"component\": \"Table\",\n \"sortable\": true\n },\n {\n \"id\": \"ftr\",\n \"component\": \"Footer\",\n \"children\": [\n \"pager\"\n ]\n },\n {\n \"id\": \"pager\",\n \"component\": \"Pagination\",\n \"
|
|
55
|
+
"a2ui": "[\n {\n \"id\": \"root\",\n \"component\": \"Card\",\n \"size\": \"lg\",\n \"children\": [\n \"hdr\",\n \"sec\",\n \"ftr\"\n ]\n },\n {\n \"id\": \"hdr\",\n \"component\": \"Header\",\n \"children\": [\n \"title-row\"\n ]\n },\n {\n \"id\": \"title-row\",\n \"component\": \"Row\",\n \"children\": [\n \"title\",\n \"search\"\n ],\n \"gap\": \"4\"\n },\n {\n \"id\": \"title\",\n \"component\": \"Text\",\n \"slot\": \"heading\",\n \"textContent\": \"Data Table\",\n \"variant\": \"section\"\n },\n {\n \"id\": \"search\",\n \"component\": \"Input\",\n \"placeholder\": \"Search...\",\n \"type\": \"search\",\n \"name\": \"search\"\n },\n {\n \"id\": \"sec\",\n \"component\": \"Section\",\n \"children\": [\n \"tbl\"\n ]\n },\n {\n \"id\": \"tbl\",\n \"component\": \"Table\",\n \"sortable\": true\n },\n {\n \"id\": \"ftr\",\n \"component\": \"Footer\",\n \"children\": [\n \"pager\"\n ]\n },\n {\n \"id\": \"pager\",\n \"component\": \"Pagination\",\n \"total\": 10,\n \"page\": 1\n }\n]",
|
|
66
56
|
"name": "data-table-view"
|
|
67
57
|
},
|
|
68
58
|
{
|
|
69
59
|
"description": "Row with centered pagination component for navigating paged content.",
|
|
70
|
-
"a2ui": "[\n {\n \"id\": \"root\",\n \"component\": \"Row\",\n \"justify\": \"center\",\n \"children\": [\n \"pager\"\n ]\n },\n {\n \"id\": \"pager\",\n \"component\": \"Pagination\",\n \"
|
|
60
|
+
"a2ui": "[\n {\n \"id\": \"root\",\n \"component\": \"Row\",\n \"justify\": \"center\",\n \"children\": [\n \"pager\"\n ]\n },\n {\n \"id\": \"pager\",\n \"component\": \"Pagination\",\n \"total\": 10,\n \"page\": 1\n }\n]",
|
|
71
61
|
"name": "pagination-nav"
|
|
72
62
|
}
|
|
73
63
|
],
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
/* ── Colors ── */
|
|
17
17
|
--pagination-fg: var(--a-fg-subtle);
|
|
18
18
|
--pagination-fg-hover: var(--a-fg);
|
|
19
|
-
--pagination-fg-active:
|
|
19
|
+
--pagination-fg-active: var(--a-chrome-light);
|
|
20
20
|
--pagination-fg-muted: var(--a-fg-muted);
|
|
21
21
|
--pagination-bg-hover: var(--a-bg-muted);
|
|
22
22
|
--pagination-bg-active: var(--a-accent);
|
|
@@ -12,19 +12,10 @@ props:
|
|
|
12
12
|
description: Current active page number.
|
|
13
13
|
type: number
|
|
14
14
|
default: 1
|
|
15
|
-
current:
|
|
16
|
-
description: Alias for `page` — accepted for back-compat.
|
|
17
|
-
type: number
|
|
18
|
-
default: 1
|
|
19
15
|
siblings:
|
|
20
16
|
description: Number of page buttons to show on each side of the current page.
|
|
21
17
|
type: number
|
|
22
18
|
default: 1
|
|
23
|
-
pageSize:
|
|
24
|
-
description: Items per page — drives the visible window and total-page math when combined with a total item count.
|
|
25
|
-
type: number
|
|
26
|
-
default: 10
|
|
27
|
-
attribute: page-size
|
|
28
19
|
total:
|
|
29
20
|
description: Total number of pages.
|
|
30
21
|
type: number
|
|
@@ -32,7 +23,7 @@ props:
|
|
|
32
23
|
variant:
|
|
33
24
|
description: Visual variant
|
|
34
25
|
type: string
|
|
35
|
-
default:
|
|
26
|
+
default: default
|
|
36
27
|
events:
|
|
37
28
|
page-change:
|
|
38
29
|
description: Fired when a page button is clicked. detail contains { page }.
|
|
@@ -112,8 +103,8 @@ examples:
|
|
|
112
103
|
{
|
|
113
104
|
"id": "pager",
|
|
114
105
|
"component": "Pagination",
|
|
115
|
-
"
|
|
116
|
-
"
|
|
106
|
+
"total": 10,
|
|
107
|
+
"page": 1
|
|
117
108
|
}
|
|
118
109
|
]
|
|
119
110
|
- name: pagination-nav
|
|
@@ -131,8 +122,8 @@ examples:
|
|
|
131
122
|
{
|
|
132
123
|
"id": "pager",
|
|
133
124
|
"component": "Pagination",
|
|
134
|
-
"
|
|
135
|
-
"
|
|
125
|
+
"total": 10,
|
|
126
|
+
"page": 1
|
|
136
127
|
}
|
|
137
128
|
]
|
|
138
129
|
keywords:
|
|
@@ -31,20 +31,10 @@
|
|
|
31
31
|
"type": "number",
|
|
32
32
|
"default": 200
|
|
33
33
|
},
|
|
34
|
-
"open": {
|
|
35
|
-
"description": "Controls whether the panel content is visible",
|
|
36
|
-
"type": "boolean",
|
|
37
|
-
"default": false
|
|
38
|
-
},
|
|
39
34
|
"resizable": {
|
|
40
35
|
"description": "Component property: resizable.",
|
|
41
36
|
"type": "boolean",
|
|
42
37
|
"default": false
|
|
43
|
-
},
|
|
44
|
-
"text": {
|
|
45
|
-
"description": "Text displayed in the header",
|
|
46
|
-
"type": "string",
|
|
47
|
-
"default": ""
|
|
48
38
|
}
|
|
49
39
|
},
|
|
50
40
|
"required": [
|
|
@@ -22,19 +22,10 @@ props:
|
|
|
22
22
|
type: number
|
|
23
23
|
default: 200
|
|
24
24
|
attribute: min-width
|
|
25
|
-
open:
|
|
26
|
-
description: Controls whether the panel content is visible
|
|
27
|
-
type: boolean
|
|
28
|
-
default: false
|
|
29
|
-
reflect: true
|
|
30
25
|
resizable:
|
|
31
26
|
description: "Component property: resizable."
|
|
32
27
|
type: boolean
|
|
33
28
|
default: false
|
|
34
|
-
text:
|
|
35
|
-
description: Text displayed in the header
|
|
36
|
-
type: string
|
|
37
|
-
default: ""
|
|
38
29
|
events: {}
|
|
39
30
|
slots:
|
|
40
31
|
header:
|
|
@@ -13,20 +13,6 @@
|
|
|
13
13
|
}
|
|
14
14
|
],
|
|
15
15
|
"properties": {
|
|
16
|
-
"type": {
|
|
17
|
-
"description": "'auto' dismisses on outside click, 'manual' requires explicit close",
|
|
18
|
-
"type": "string",
|
|
19
|
-
"enum": [
|
|
20
|
-
"auto",
|
|
21
|
-
"manual"
|
|
22
|
-
],
|
|
23
|
-
"default": "auto"
|
|
24
|
-
},
|
|
25
|
-
"anchor": {
|
|
26
|
-
"description": "ID of the anchor element to position relative to",
|
|
27
|
-
"type": "string",
|
|
28
|
-
"default": ""
|
|
29
|
-
},
|
|
30
16
|
"component": {
|
|
31
17
|
"const": "Popover"
|
|
32
18
|
},
|
|
@@ -32,6 +32,7 @@ class AdiaPopover extends AdiaElement {
|
|
|
32
32
|
#bound = false;
|
|
33
33
|
#hoverTimer = null;
|
|
34
34
|
#content = null;
|
|
35
|
+
#rafId = null;
|
|
35
36
|
|
|
36
37
|
connected() {
|
|
37
38
|
const content = this.querySelector('[slot="content"]');
|
|
@@ -88,7 +89,8 @@ class AdiaPopover extends AdiaElement {
|
|
|
88
89
|
|
|
89
90
|
if (this.trigger === 'click' || this.trigger === 'manual') {
|
|
90
91
|
// Defer to next frame so the opening click doesn't trigger outside-dismiss.
|
|
91
|
-
requestAnimationFrame(() => {
|
|
92
|
+
this.#rafId = requestAnimationFrame(() => {
|
|
93
|
+
this.#rafId = null;
|
|
92
94
|
document.addEventListener('pointerdown', this.#onOutside);
|
|
93
95
|
document.addEventListener('keydown', this.#onKey);
|
|
94
96
|
});
|
|
@@ -102,6 +104,10 @@ class AdiaPopover extends AdiaElement {
|
|
|
102
104
|
const content = this.#content ?? this.querySelector('[slot="content"]');
|
|
103
105
|
if (content?.matches(':popover-open')) content.hidePopover?.();
|
|
104
106
|
|
|
107
|
+
if (this.#rafId != null) {
|
|
108
|
+
cancelAnimationFrame(this.#rafId);
|
|
109
|
+
this.#rafId = null;
|
|
110
|
+
}
|
|
105
111
|
document.removeEventListener('pointerdown', this.#onOutside);
|
|
106
112
|
document.removeEventListener('keydown', this.#onKey);
|
|
107
113
|
}
|
|
@@ -8,17 +8,6 @@ category: container
|
|
|
8
8
|
version: 1
|
|
9
9
|
description: "Popover using Popover API + CSS Anchor Positioning. Triggers: click, hover, manual."
|
|
10
10
|
props:
|
|
11
|
-
type:
|
|
12
|
-
description: "'auto' dismisses on outside click, 'manual' requires explicit close"
|
|
13
|
-
type: string
|
|
14
|
-
default: auto
|
|
15
|
-
enum:
|
|
16
|
-
- auto
|
|
17
|
-
- manual
|
|
18
|
-
anchor:
|
|
19
|
-
description: ID of the anchor element to position relative to
|
|
20
|
-
type: string
|
|
21
|
-
default: ""
|
|
22
11
|
gap:
|
|
23
12
|
description: Pixel offset between the anchor and the popover
|
|
24
13
|
type: number
|
|
@@ -16,20 +16,10 @@
|
|
|
16
16
|
"component": {
|
|
17
17
|
"const": "Progress"
|
|
18
18
|
},
|
|
19
|
-
"indeterminate": {
|
|
20
|
-
"description": "Force indeterminate mode (animated loop) regardless of value.",
|
|
21
|
-
"type": "boolean",
|
|
22
|
-
"default": false
|
|
23
|
-
},
|
|
24
|
-
"max": {
|
|
25
|
-
"description": "Upper bound for value. When omitted, value is treated as a 0..1 fraction.",
|
|
26
|
-
"type": "number",
|
|
27
|
-
"default": 100
|
|
28
|
-
},
|
|
29
19
|
"value": {
|
|
30
|
-
"description": "Current progress. 0..max (or 0..1 when max omitted).
|
|
20
|
+
"description": "Current progress. 0..max (or 0..1 when max omitted). null = indeterminate (legacy -1 accepted for back-compat).",
|
|
31
21
|
"type": "number",
|
|
32
|
-
"default":
|
|
22
|
+
"default": null
|
|
33
23
|
},
|
|
34
24
|
"variant": {
|
|
35
25
|
"description": "Display variant. Structural values (bar, spinner) set the render mode; semantic values (primary/success/warning/danger/info) set the fill color. Prefer the `color` global attribute for color; variant-as-color accepted for back-compat with older exemplars.",
|
|
@@ -9,18 +9,9 @@ version: 1
|
|
|
9
9
|
description: Progress indicator. Bar (default) or spinner. Value < 0 = indeterminate.
|
|
10
10
|
props:
|
|
11
11
|
value:
|
|
12
|
-
description: Current progress. 0..max (or 0..1 when max omitted).
|
|
12
|
+
description: Current progress. 0..max (or 0..1 when max omitted). null = indeterminate (legacy -1 accepted for back-compat).
|
|
13
13
|
type: number
|
|
14
|
-
default:
|
|
15
|
-
max:
|
|
16
|
-
description: Upper bound for value. When omitted, value is treated as a 0..1 fraction.
|
|
17
|
-
type: number
|
|
18
|
-
default: 100
|
|
19
|
-
indeterminate:
|
|
20
|
-
description: Force indeterminate mode (animated loop) regardless of value.
|
|
21
|
-
type: boolean
|
|
22
|
-
default: false
|
|
23
|
-
reflect: true
|
|
14
|
+
default: null
|
|
24
15
|
variant:
|
|
25
16
|
description: >-
|
|
26
17
|
Display variant. Structural values (bar, spinner) set the render mode;
|
|
@@ -16,30 +16,20 @@
|
|
|
16
16
|
"component": {
|
|
17
17
|
"const": "ProgressRow"
|
|
18
18
|
},
|
|
19
|
-
"icon": {
|
|
20
|
-
"description": "Optional Phosphor icon name rendered leading the label.",
|
|
21
|
-
"type": "string",
|
|
22
|
-
"default": ""
|
|
23
|
-
},
|
|
24
19
|
"label": {
|
|
25
20
|
"description": "Left-hand label text",
|
|
26
21
|
"type": "string",
|
|
27
22
|
"default": ""
|
|
28
23
|
},
|
|
29
|
-
"max": {
|
|
30
|
-
"description": "Upper bound for value. Defaults to 100.",
|
|
31
|
-
"type": "number",
|
|
32
|
-
"default": 100
|
|
33
|
-
},
|
|
34
24
|
"meta": {
|
|
35
25
|
"description": "Right-hand meta text (e.g. '32 GB', '4.2k / 10k')",
|
|
36
26
|
"type": "string",
|
|
37
27
|
"default": ""
|
|
38
28
|
},
|
|
39
29
|
"value": {
|
|
40
|
-
"description": "Progress value 0-100 (-1
|
|
30
|
+
"description": "Progress value 0-100 (null = indeterminate; legacy -1 accepted for back-compat)",
|
|
41
31
|
"type": "number",
|
|
42
|
-
"default":
|
|
32
|
+
"default": null
|
|
43
33
|
},
|
|
44
34
|
"variant": {
|
|
45
35
|
"description": "Color variant for the progress fill",
|
|
@@ -51,7 +41,7 @@
|
|
|
51
41
|
"info",
|
|
52
42
|
"primary"
|
|
53
43
|
],
|
|
54
|
-
"default": ""
|
|
44
|
+
"default": "default"
|
|
55
45
|
}
|
|
56
46
|
},
|
|
57
47
|
"required": [
|
|
@@ -18,21 +18,13 @@ props:
|
|
|
18
18
|
type: string
|
|
19
19
|
default: ""
|
|
20
20
|
value:
|
|
21
|
-
description: Progress value 0-100 (-1
|
|
21
|
+
description: Progress value 0-100 (null = indeterminate; legacy -1 accepted for back-compat)
|
|
22
22
|
type: number
|
|
23
|
-
default:
|
|
24
|
-
max:
|
|
25
|
-
description: Upper bound for value. Defaults to 100.
|
|
26
|
-
type: number
|
|
27
|
-
default: 100
|
|
28
|
-
icon:
|
|
29
|
-
description: Optional Phosphor icon name rendered leading the label.
|
|
30
|
-
type: string
|
|
31
|
-
default: ""
|
|
23
|
+
default: null
|
|
32
24
|
variant:
|
|
33
25
|
description: Color variant for the progress fill
|
|
34
26
|
type: string
|
|
35
|
-
default:
|
|
27
|
+
default: default
|
|
36
28
|
enum:
|
|
37
29
|
- success
|
|
38
30
|
- warning
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
/* ── State: checked ── */
|
|
15
15
|
--radio-bg-checked: var(--a-primary);
|
|
16
16
|
--radio-border-checked: var(--a-primary);
|
|
17
|
-
--radio-fg-checked:
|
|
17
|
+
--radio-fg-checked: var(--a-chrome-light);
|
|
18
18
|
--radio-bg-checked-hover: var(--a-primary-hover);
|
|
19
19
|
|
|
20
20
|
/* ── State: disabled ── */
|
|
@@ -36,11 +36,6 @@
|
|
|
36
36
|
"type": "string",
|
|
37
37
|
"default": "start"
|
|
38
38
|
},
|
|
39
|
-
"variant": {
|
|
40
|
-
"description": "Visual variant — default, bordered, muted, separator.",
|
|
41
|
-
"type": "string",
|
|
42
|
-
"default": "default"
|
|
43
|
-
},
|
|
44
39
|
"wrap": {
|
|
45
40
|
"description": "Enable flex wrap",
|
|
46
41
|
"type": "boolean",
|
package/components/row/row.yaml
CHANGED
|
@@ -12,10 +12,6 @@ props:
|
|
|
12
12
|
description: Align items
|
|
13
13
|
type: string
|
|
14
14
|
default: center
|
|
15
|
-
variant:
|
|
16
|
-
description: Visual variant — default, bordered, muted, separator.
|
|
17
|
-
type: string
|
|
18
|
-
default: default
|
|
19
15
|
draggable:
|
|
20
16
|
description: Enables drag handle + cursor:grab. Wires the draggable trait; dispatches drag-end.
|
|
21
17
|
type: boolean
|