@geajs/ui 0.2.4 → 0.2.10
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/dist/accordion.d.mts +2 -2
- package/dist/accordion.mjs +92 -122
- package/dist/accordion.mjs.map +1 -1
- package/dist/alert.d.mts +3 -3
- package/dist/alert.mjs +45 -107
- package/dist/alert.mjs.map +1 -1
- package/dist/avatar.d.mts +2 -2
- package/dist/avatar.mjs +38 -62
- package/dist/avatar.mjs.map +1 -1
- package/dist/badge.d.mts +1 -1
- package/dist/badge.mjs +18 -43
- package/dist/badge.mjs.map +1 -1
- package/dist/bind.mjs +169 -0
- package/dist/bind.mjs.map +1 -0
- package/dist/button.d.mts +3 -2
- package/dist/button.mjs +30 -85
- package/dist/button.mjs.map +1 -1
- package/dist/card.d.mts +6 -6
- package/dist/card.mjs +82 -194
- package/dist/card.mjs.map +1 -1
- package/dist/checkbox.d.mts +2 -2
- package/dist/checkbox.mjs +30 -31
- package/dist/checkbox.mjs.map +1 -1
- package/dist/clipboard.d.mts +2 -2
- package/dist/clipboard.mjs +49 -55
- package/dist/clipboard.mjs.map +1 -1
- package/dist/collapsible.d.mts +2 -2
- package/dist/collapsible.mjs +18 -45
- package/dist/collapsible.mjs.map +1 -1
- package/dist/combobox.d.mts +2 -2
- package/dist/combobox.mjs +390 -261
- package/dist/combobox.mjs.map +1 -1
- package/dist/compiled-component.mjs +121 -0
- package/dist/compiled-component.mjs.map +1 -0
- package/dist/compiled-reactive-component.mjs +435 -0
- package/dist/compiled-reactive-component.mjs.map +1 -0
- package/dist/component-id.mjs +21 -0
- package/dist/component-id.mjs.map +1 -0
- package/dist/conditional-truthy.mjs +48 -0
- package/dist/conditional-truthy.mjs.map +1 -0
- package/dist/conditional.mjs +54 -0
- package/dist/conditional.mjs.map +1 -0
- package/dist/delegate-event.mjs +53 -0
- package/dist/delegate-event.mjs.map +1 -0
- package/dist/dialog.d.mts +4 -3
- package/dist/dialog.mjs +57 -70
- package/dist/dialog.mjs.map +1 -1
- package/dist/dirty-symbols.mjs +7 -0
- package/dist/dirty-symbols.mjs.map +1 -0
- package/dist/disposer.mjs +65 -0
- package/dist/disposer.mjs.map +1 -0
- package/dist/dnd-manager.d.mts +9 -1
- package/dist/dnd-manager.mjs +67 -29
- package/dist/dnd-manager.mjs.map +1 -1
- package/dist/drag-drop-context.d.mts +1 -1
- package/dist/drag-drop-context.mjs +17 -33
- package/dist/drag-drop-context.mjs.map +1 -1
- package/dist/draggable.d.mts +1 -1
- package/dist/draggable.mjs +2 -91
- package/dist/draggable2.mjs +424 -0
- package/dist/draggable2.mjs.map +1 -0
- package/dist/droppable.d.mts +1 -1
- package/dist/droppable.mjs +20 -44
- package/dist/droppable.mjs.map +1 -1
- package/dist/file-upload.d.mts +2 -2
- package/dist/file-upload.mjs +405 -122
- package/dist/file-upload.mjs.map +1 -1
- package/dist/hover-card.d.mts +2 -2
- package/dist/hover-card.mjs +24 -59
- package/dist/hover-card.mjs.map +1 -1
- package/dist/index.mjs +3 -3
- package/dist/input.d.mts +1 -1
- package/dist/input.mjs +1 -93
- package/dist/input2.mjs +56 -0
- package/dist/input2.mjs.map +1 -0
- package/dist/internal-symbols.mjs +9 -0
- package/dist/internal-symbols.mjs.map +1 -0
- package/dist/item-obs.mjs +31 -0
- package/dist/item-obs.mjs.map +1 -0
- package/dist/keyed-list-symbols.mjs +6 -0
- package/dist/keyed-list-symbols.mjs.map +1 -0
- package/dist/keyed-list.mjs +538 -0
- package/dist/keyed-list.mjs.map +1 -0
- package/dist/label.d.mts +1 -1
- package/dist/label.mjs +20 -45
- package/dist/label.mjs.map +1 -1
- package/dist/menu.d.mts +2 -2
- package/dist/menu.mjs +87 -41
- package/dist/menu.mjs.map +1 -1
- package/dist/number-input.d.mts +2 -2
- package/dist/number-input.mjs +28 -32
- package/dist/number-input.mjs.map +1 -1
- package/dist/pagination.d.mts +2 -2
- package/dist/pagination.mjs +12 -35
- package/dist/pagination.mjs.map +1 -1
- package/dist/patch.mjs +21 -0
- package/dist/patch.mjs.map +1 -0
- package/dist/pin-input.d.mts +2 -2
- package/dist/pin-input.mjs +88 -87
- package/dist/pin-input.mjs.map +1 -1
- package/dist/popover.d.mts +2 -2
- package/dist/popover.mjs +45 -67
- package/dist/popover.mjs.map +1 -1
- package/dist/progress.d.mts +2 -2
- package/dist/progress.mjs +37 -43
- package/dist/progress.mjs.map +1 -1
- package/dist/radio-group.d.mts +2 -2
- package/dist/radio-group.mjs +99 -140
- package/dist/radio-group.mjs.map +1 -1
- package/dist/rating-group.d.mts +2 -2
- package/dist/rating-group.mjs +91 -99
- package/dist/rating-group.mjs.map +1 -1
- package/dist/reactive-attr.mjs +13 -0
- package/dist/reactive-attr.mjs.map +1 -0
- package/dist/reactive-bool.mjs +13 -0
- package/dist/reactive-bool.mjs.map +1 -0
- package/dist/reactive-class-name.mjs +15 -0
- package/dist/reactive-class-name.mjs.map +1 -0
- package/dist/reactive-class.mjs +54 -0
- package/dist/reactive-class.mjs.map +1 -0
- package/dist/reactive-style.mjs +24 -0
- package/dist/reactive-style.mjs.map +1 -0
- package/dist/reactive-text.mjs +62 -0
- package/dist/reactive-text.mjs.map +1 -0
- package/dist/select.d.mts +2 -2
- package/dist/select.mjs +106 -186
- package/dist/select.mjs.map +1 -1
- package/dist/separator.d.mts +1 -1
- package/dist/separator.mjs +19 -45
- package/dist/separator.mjs.map +1 -1
- package/dist/skeleton.d.mts +1 -1
- package/dist/skeleton.mjs +11 -35
- package/dist/skeleton.mjs.map +1 -1
- package/dist/slider.d.mts +2 -2
- package/dist/slider.mjs +31 -32
- package/dist/slider.mjs.map +1 -1
- package/dist/switch.d.mts +2 -2
- package/dist/switch.mjs +30 -31
- package/dist/switch.mjs.map +1 -1
- package/dist/tabs.d.mts +7 -2
- package/dist/tabs.mjs +180 -147
- package/dist/tabs.mjs.map +1 -1
- package/dist/tags-input.d.mts +2 -2
- package/dist/tags-input.mjs +102 -188
- package/dist/tags-input.mjs.map +1 -1
- package/dist/textarea.d.mts +1 -1
- package/dist/textarea.mjs +32 -75
- package/dist/textarea.mjs.map +1 -1
- package/dist/theme.css +4 -5
- package/dist/toast.d.mts +1 -1
- package/dist/toast.mjs +14 -34
- package/dist/toast.mjs.map +1 -1
- package/dist/toggle-group.d.mts +2 -2
- package/dist/toggle-group.mjs +78 -85
- package/dist/toggle-group.mjs.map +1 -1
- package/dist/tooltip.d.mts +2 -2
- package/dist/tooltip.mjs +23 -43
- package/dist/tooltip.mjs.map +1 -1
- package/dist/tree-view.d.mts +2 -2
- package/dist/tree-view.mjs +32 -50
- package/dist/tree-view.mjs.map +1 -1
- package/dist/types.d.mts +9 -0
- package/dist/zag-component.d.mts +26 -3
- package/dist/zag-component.mjs +73 -17
- package/dist/zag-component.mjs.map +1 -1
- package/package.json +4 -3
- package/dist/cn.mjs +0 -10
- package/dist/cn.mjs.map +0 -1
- package/dist/draggable.mjs.map +0 -1
- package/dist/input.mjs.map +0 -1
package/dist/radio-group.d.mts
CHANGED
|
@@ -7,7 +7,7 @@ declare class RadioGroup extends ZagComponent {
|
|
|
7
7
|
value: string | null;
|
|
8
8
|
createMachine(_props: any): any;
|
|
9
9
|
getMachineProps(props: any): {
|
|
10
|
-
id:
|
|
10
|
+
id: string;
|
|
11
11
|
value: any;
|
|
12
12
|
defaultValue: any;
|
|
13
13
|
name: any;
|
|
@@ -30,7 +30,7 @@ declare class RadioGroup extends ZagComponent {
|
|
|
30
30
|
'[data-part="item-hidden-input"]': (api: any, el: any) => any;
|
|
31
31
|
};
|
|
32
32
|
syncState(api: any): void;
|
|
33
|
-
template(props: any):
|
|
33
|
+
template(props: any): any;
|
|
34
34
|
}
|
|
35
35
|
//#endregion
|
|
36
36
|
export { RadioGroup as default };
|
package/dist/radio-group.mjs
CHANGED
|
@@ -1,27 +1,35 @@
|
|
|
1
1
|
import { t as ZagComponent } from "./zag-component.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { t as NOOP_DISPOSER } from "./disposer.mjs";
|
|
3
|
+
import { o as GEA_CREATE_TEMPLATE, u as GEA_PROXY_RAW } from "./bind.mjs";
|
|
4
|
+
import { n as _DIRTY_PROPS } from "./dirty-symbols.mjs";
|
|
5
|
+
import { n as reactiveTextValue } from "./reactive-text.mjs";
|
|
6
|
+
import { t as reactiveClass } from "./reactive-class.mjs";
|
|
7
|
+
import { t as conditionalTruthy } from "./conditional-truthy.mjs";
|
|
8
|
+
import { n as _rescue, t as keyedList } from "./keyed-list.mjs";
|
|
9
|
+
import { t as GEA_DOM_ITEM } from "./keyed-list-symbols.mjs";
|
|
3
10
|
import { normalizeProps } from "@zag-js/vanilla";
|
|
4
11
|
import * as radioGroup from "@zag-js/radio-group";
|
|
5
12
|
//#region src/components/radio-group.tsx
|
|
6
|
-
|
|
13
|
+
let _tpl0_root = null;
|
|
14
|
+
function _tpl0_create() {
|
|
15
|
+
const t = document.createElement("template");
|
|
16
|
+
t.innerHTML = "<div data-part=root><!--1--><div data-part=indicator class=radio-group-indicator></div><!--2-->";
|
|
17
|
+
return t.content.firstChild;
|
|
18
|
+
}
|
|
19
|
+
let _tpl1_root = null;
|
|
20
|
+
function _tpl1_create() {
|
|
21
|
+
const t = document.createElement("template");
|
|
22
|
+
t.innerHTML = "<span data-part=label class=\"radio-group-label text-sm font-medium mb-2 block\">0";
|
|
23
|
+
return t.content.firstChild;
|
|
24
|
+
}
|
|
25
|
+
let _tpl2_root = null;
|
|
26
|
+
function _tpl2_create() {
|
|
27
|
+
const t = document.createElement("template");
|
|
28
|
+
t.innerHTML = "<label data-part=item class=\"radio-group-item flex items-center gap-2 cursor-pointer py-1\"><div data-part=item-control class=\"radio-group-item-control h-4 w-4 rounded-full border border-primary flex items-center justify-center\"><span class=radio-dot></span></div><input data-part=item-hidden-input type=radio class=sr-only><span data-part=item-text class=\"radio-group-item-text text-sm\">0";
|
|
29
|
+
return t.content.firstChild;
|
|
30
|
+
}
|
|
31
|
+
const __rq_L0 = /* @__PURE__ */ new Map();
|
|
7
32
|
var RadioGroup = class extends ZagComponent {
|
|
8
|
-
static {
|
|
9
|
-
this.__geaTagName = "radio-group";
|
|
10
|
-
}
|
|
11
|
-
#__rowEls_list;
|
|
12
|
-
#__dc___unresolved_0;
|
|
13
|
-
constructor(...args) {
|
|
14
|
-
super(...args);
|
|
15
|
-
this.props;
|
|
16
|
-
this[geaCondValueSymbol(0)] = !!this.props.label;
|
|
17
|
-
this[GEA_REGISTER_COND](0, "c0", () => {
|
|
18
|
-
this.props;
|
|
19
|
-
return this.props.label;
|
|
20
|
-
}, () => {
|
|
21
|
-
this.props;
|
|
22
|
-
return `<span data-part="label" class="radio-group-label text-sm font-medium mb-2 block">${geaEscapeHtml(String(this.props.label))}</span>`;
|
|
23
|
-
}, null);
|
|
24
|
-
}
|
|
25
33
|
createMachine(_props) {
|
|
26
34
|
return radioGroup.machine;
|
|
27
35
|
}
|
|
@@ -58,128 +66,79 @@ var RadioGroup = class extends ZagComponent {
|
|
|
58
66
|
syncState(api) {
|
|
59
67
|
this.value = api.value;
|
|
60
68
|
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
if (__c.__geaTpl) var el = __c.__geaTpl.cloneNode(true);
|
|
84
|
-
else {
|
|
85
|
-
var __fw = document.createElement("template");
|
|
86
|
-
__fw.innerHTML = this.render__unresolved_0Item(item);
|
|
87
|
-
var el = __fw.content.firstElementChild;
|
|
88
|
-
}
|
|
89
|
-
el.__ref_0 = el.firstElementChild;
|
|
90
|
-
el.__ref_1 = el.firstElementChild.nextElementSibling;
|
|
91
|
-
el.__ref_2 = el.firstElementChild.nextElementSibling.nextElementSibling;
|
|
92
|
-
var __av = item.value;
|
|
93
|
-
if (__av == null || __av === false) el.removeAttribute("data-value");
|
|
94
|
-
else {
|
|
95
|
-
const __newAttr = String(__av);
|
|
96
|
-
if (el.getAttribute("data-value") !== __newAttr) el.setAttribute("data-value", __newAttr);
|
|
97
|
-
}
|
|
98
|
-
var __av = item.value;
|
|
99
|
-
if (__av == null || __av === false) el.__ref_0.removeAttribute("data-value");
|
|
100
|
-
else {
|
|
101
|
-
const __newAttr = String(__av);
|
|
102
|
-
if (el.__ref_0.getAttribute("data-value") !== __newAttr) el.__ref_0.setAttribute("data-value", __newAttr);
|
|
103
|
-
}
|
|
104
|
-
var __av = item.value;
|
|
105
|
-
if (__av == null || __av === false) el.__ref_1.removeAttribute("data-value");
|
|
106
|
-
else {
|
|
107
|
-
const __newAttr = String(__av);
|
|
108
|
-
if (el.__ref_1.getAttribute("data-value") !== __newAttr) el.__ref_1.setAttribute("data-value", __newAttr);
|
|
109
|
-
}
|
|
110
|
-
var __av = item.value;
|
|
111
|
-
if (__av == null || __av === false) el.__ref_2.removeAttribute("data-value");
|
|
112
|
-
else {
|
|
113
|
-
const __newAttr = String(__av);
|
|
114
|
-
if (el.__ref_2.getAttribute("data-value") !== __newAttr) el.__ref_2.setAttribute("data-value", __newAttr);
|
|
115
|
-
}
|
|
116
|
-
if (el.__ref_2.textContent !== `
|
|
117
|
-
${item.label}
|
|
118
|
-
`) el.__ref_2.textContent = `
|
|
119
|
-
${item.label}
|
|
120
|
-
`;
|
|
121
|
-
el[GEA_DOM_KEY] = String(item?.value ?? item);
|
|
122
|
-
el[GEA_DOM_ITEM] = item;
|
|
123
|
-
return el;
|
|
124
|
-
}
|
|
125
|
-
patch__unresolved_0Item(row, item, __prevItem) {
|
|
126
|
-
if (!row) return;
|
|
127
|
-
if (!row.__ref_0) row.__ref_0 = row.firstElementChild;
|
|
128
|
-
if (!row.__ref_1) row.__ref_1 = row.firstElementChild.nextElementSibling;
|
|
129
|
-
if (!row.__ref_2) row.__ref_2 = row.firstElementChild.nextElementSibling.nextElementSibling;
|
|
130
|
-
var __av = item.value;
|
|
131
|
-
if (__av == null || __av === false) row.removeAttribute("data-value");
|
|
132
|
-
else {
|
|
133
|
-
const __newAttr = String(__av);
|
|
134
|
-
if (row.getAttribute("data-value") !== __newAttr) row.setAttribute("data-value", __newAttr);
|
|
135
|
-
}
|
|
136
|
-
var __av = item.value;
|
|
137
|
-
if (__av == null || __av === false) row.__ref_0.removeAttribute("data-value");
|
|
138
|
-
else {
|
|
139
|
-
const __newAttr = String(__av);
|
|
140
|
-
if (row.__ref_0.getAttribute("data-value") !== __newAttr) row.__ref_0.setAttribute("data-value", __newAttr);
|
|
141
|
-
}
|
|
142
|
-
var __av = item.value;
|
|
143
|
-
if (__av == null || __av === false) row.__ref_1.removeAttribute("data-value");
|
|
144
|
-
else {
|
|
145
|
-
const __newAttr = String(__av);
|
|
146
|
-
if (row.__ref_1.getAttribute("data-value") !== __newAttr) row.__ref_1.setAttribute("data-value", __newAttr);
|
|
147
|
-
}
|
|
148
|
-
var __av = item.value;
|
|
149
|
-
if (__av == null || __av === false) row.__ref_2.removeAttribute("data-value");
|
|
150
|
-
else {
|
|
151
|
-
const __newAttr = String(__av);
|
|
152
|
-
if (row.__ref_2.getAttribute("data-value") !== __newAttr) row.__ref_2.setAttribute("data-value", __newAttr);
|
|
153
|
-
}
|
|
154
|
-
if (row.__ref_2.textContent !== `
|
|
155
|
-
${item.label}
|
|
156
|
-
`) row.__ref_2.textContent = `
|
|
157
|
-
${item.label}
|
|
158
|
-
`;
|
|
159
|
-
row[GEA_DOM_KEY] = String(item?.value ?? item);
|
|
160
|
-
(this.#__rowEls_list || (this.#__rowEls_list = {}))[String(item?.value ?? item)] = row;
|
|
161
|
-
row[GEA_DOM_ITEM] = item;
|
|
162
|
-
}
|
|
163
|
-
[GEA_ON_PROP_CHANGE](key, value) {
|
|
164
|
-
if (key === "class") {
|
|
165
|
-
const __el = this[GEA_ELEMENT];
|
|
166
|
-
this.props;
|
|
167
|
-
const __boundValue = value || "";
|
|
168
|
-
if (__el) {
|
|
169
|
-
const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
|
|
170
|
-
if (__el.className !== __newClass) __el.className = __newClass;
|
|
69
|
+
[GEA_CREATE_TEMPLATE](d) {
|
|
70
|
+
this.props.items;
|
|
71
|
+
const root = (_tpl0_root || (_tpl0_root = _tpl0_create())).cloneNode(true);
|
|
72
|
+
const el0 = root;
|
|
73
|
+
const anchor1 = root.firstChild;
|
|
74
|
+
const anchor2 = root.childNodes[2];
|
|
75
|
+
reactiveClass(el0, d, this, () => this.props.class || "");
|
|
76
|
+
conditionalTruthy(anchor1.parentNode, anchor1, d, this, () => this.props.label, (d) => {
|
|
77
|
+
const root = (_tpl1_root || (_tpl1_root = _tpl1_create())).cloneNode(true);
|
|
78
|
+
const t0 = root.firstChild;
|
|
79
|
+
reactiveTextValue(t0, d, this, () => this.props.label);
|
|
80
|
+
return root;
|
|
81
|
+
});
|
|
82
|
+
const __ki_L0 = (item, idx, d) => {
|
|
83
|
+
const root = (_tpl2_root || (_tpl2_root = _tpl2_create())).cloneNode(true);
|
|
84
|
+
root.setAttribute("data-value", String(item.value));
|
|
85
|
+
root.firstChild.setAttribute("data-value", String(item.value));
|
|
86
|
+
root.childNodes[1].setAttribute("data-value", String(item.value));
|
|
87
|
+
root.childNodes[2].setAttribute("data-value", String(item.value));
|
|
88
|
+
{
|
|
89
|
+
const __n = root.childNodes[2].firstChild;
|
|
90
|
+
__n.nodeValue = `${item.label ?? ""}`;
|
|
171
91
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
92
|
+
root[GEA_DOM_ITEM] = item;
|
|
93
|
+
return root;
|
|
94
|
+
};
|
|
95
|
+
const __kp_L0 = (el, item) => {
|
|
96
|
+
if (!item[_DIRTY_PROPS] || item[_DIRTY_PROPS].has("value")) el.setAttribute("data-value", String(item.value));
|
|
97
|
+
if (!item[_DIRTY_PROPS] || item[_DIRTY_PROPS].has("value")) (el.__r0 || (el.__r0 = el.firstChild)).setAttribute("data-value", String(item.value));
|
|
98
|
+
if (!item[_DIRTY_PROPS] || item[_DIRTY_PROPS].has("value")) (el.__r1 || (el.__r1 = el.childNodes[1])).setAttribute("data-value", String(item.value));
|
|
99
|
+
if (!item[_DIRTY_PROPS] || item[_DIRTY_PROPS].has("value")) (el.__r2 || (el.__r2 = el.childNodes[2])).setAttribute("data-value", String(item.value));
|
|
100
|
+
if (!item[_DIRTY_PROPS] || item[_DIRTY_PROPS].has("label")) {
|
|
101
|
+
const __n = el.__r3 || (el.__r3 = el.childNodes[2].firstChild);
|
|
102
|
+
__n.nodeValue = `${item.label ?? ""}`;
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
keyedList({
|
|
106
|
+
container: anchor2.parentNode,
|
|
107
|
+
anchor: anchor2,
|
|
108
|
+
disposer: d,
|
|
109
|
+
root: this,
|
|
110
|
+
pending: __rq_L0,
|
|
111
|
+
path: () => this.props.items || [],
|
|
112
|
+
key: (item, idx) => item.value,
|
|
113
|
+
createEntry: (item, idx) => {
|
|
114
|
+
const __k = item.value;
|
|
115
|
+
const __r = _rescue(__rq_L0, String(__k), item);
|
|
116
|
+
if (__r) {
|
|
117
|
+
const __raw = item && item[GEA_PROXY_RAW] || item;
|
|
118
|
+
if (__r.item !== __raw) {
|
|
119
|
+
const __prev = __r.item;
|
|
120
|
+
__r.item = __raw;
|
|
121
|
+
__kp_L0(__r.element, item, __prev, idx);
|
|
122
|
+
}
|
|
123
|
+
return __r;
|
|
124
|
+
}
|
|
125
|
+
const __rd = NOOP_DISPOSER;
|
|
126
|
+
const __obs = null;
|
|
127
|
+
const __el = __ki_L0(item, idx, __rd);
|
|
128
|
+
return {
|
|
129
|
+
key: __k,
|
|
130
|
+
item: item && item[GEA_PROXY_RAW] || item,
|
|
131
|
+
element: __el,
|
|
132
|
+
disposer: __rd,
|
|
133
|
+
obs: __obs
|
|
134
|
+
};
|
|
135
|
+
},
|
|
136
|
+
patchEntry: (e, newItem, newIdx) => {
|
|
137
|
+
e.item = newItem && newItem[GEA_PROXY_RAW] || newItem;
|
|
138
|
+
__kp_L0(e.element, newItem);
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
return root;
|
|
183
142
|
}
|
|
184
143
|
};
|
|
185
144
|
//#endregion
|
package/dist/radio-group.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio-group.mjs","names":["__v","v","valueOf","Component","geaCondValueSymbol","GEA_REGISTER_COND","geaEscapeHtml","GEA_DOM_KEY","GEA_DOM_ITEM","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_COND","GEA_SYNC_MAP","GEA_REGISTER_MAP","radioGroup","normalizeProps","ZagComponent","RadioGroup","__geaTagName","__rowEls_list","__dc___unresolved_0","constructor","args","props","label","String","value","createMachine","_props","machine","getMachineProps","id","defaultValue","name","form","disabled","readOnly","orientation","onValueChange","details","ValueChangeDetails","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","getItemProps","HTMLElement","dataset","[data-part=\"item-text\"]","getItemTextProps","[data-part=\"item-control\"]","getItemControlProps","[data-part=\"item-hidden-input\"]","getItemHiddenInputProps","syncState","template","__id","_register","items","class","trim","map","item","join","render__unresolved_0Item","create__unresolved_0Item","__c","____unresolved_0_container","__geaTpl","__tw","document","createElement","innerHTML","content","firstElementChild","removeAttribute","__err","console","error","cloneNode","__fw","__ref_0","__ref_1","nextElementSibling","__ref_2","__av","__newAttr","getAttribute","setAttribute","textContent","patch__unresolved_0Item","row","__prevItem","key","__el","__boundValue","__newClass","replace","className","__observe_local_props","createdHooks","$","__item"],"sources":["../src/components/radio-group.tsx"],"sourcesContent":["import * as radioGroup from '@zag-js/radio-group'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class RadioGroup extends ZagComponent {\n declare value: string | null\n\n createMachine(_props: any): any {\n return radioGroup.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n name: props.name,\n form: props.form,\n disabled: props.disabled,\n readOnly: props.readOnly,\n orientation: props.orientation ?? 'vertical',\n onValueChange: (details: radioGroup.ValueChangeDetails) => {\n this.value = details.value\n props.onValueChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return radioGroup.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"label\"]': 'getLabelProps',\n '[data-part=\"indicator\"]': 'getIndicatorProps',\n '[data-part=\"item\"]': (api, el) => api.getItemProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-text\"]': (api, el) => api.getItemTextProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-control\"]': (api, el) => api.getItemControlProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-hidden-input\"]': (api, el) =>\n api.getItemHiddenInputProps({ value: (el as HTMLElement).dataset.value }),\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n }\n\n template(props: any) {\n const items = props.items || []\n return (\n <div data-part=\"root\" class={props.class || ''}>\n {props.label && (\n <span data-part=\"label\" class=\"radio-group-label text-sm font-medium mb-2 block\">\n {props.label}\n </span>\n )}\n <div data-part=\"indicator\" class=\"radio-group-indicator\"></div>\n {items.map((item: any) => (\n <label\n key={item.value}\n data-part=\"item\"\n data-value={item.value}\n class=\"radio-group-item flex items-center gap-2 cursor-pointer py-1\"\n >\n <div\n data-part=\"item-control\"\n data-value={item.value}\n class=\"radio-group-item-control h-4 w-4 rounded-full border border-primary flex items-center justify-center\"\n >\n <span class=\"radio-dot\"></span>\n </div>\n <input data-part=\"item-hidden-input\" data-value={item.value} type=\"radio\" class=\"sr-only\" />\n <span data-part=\"item-text\" data-value={item.value} class=\"radio-group-item-text text-sm\">\n {item.label}\n </span>\n </label>\n ))}\n </div>\n )\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"radio-group.mjs","names":["GEA_CREATE_TEMPLATE","reactiveClass","reactiveTextValue","conditionalTruthy","reactiveAttr","GEA_DIRTY_PROPS","GEA_DOM_ITEM","GEA_PROXY_RAW","_rescue","NOOP_DISPOSER","keyedList","radioGroup","normalizeProps","ZagComponent","_tpl0_root","_tpl0_create","t","document","createElement","innerHTML","content","firstChild","_tpl1_root","_tpl1_create","_tpl2_root","_tpl2_create","__rq_L0","Map","RadioGroup","value","createMachine","_props","machine","getMachineProps","props","id","defaultValue","name","form","disabled","readOnly","orientation","onValueChange","details","ValueChangeDetails","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","getItemProps","HTMLElement","dataset","[data-part=\"item-text\"]","getItemTextProps","[data-part=\"item-control\"]","getItemControlProps","[data-part=\"item-hidden-input\"]","getItemHiddenInputProps","syncState","d","items","root","cloneNode","el0","anchor1","anchor2","childNodes","class","parentNode","label","marker0","t0","__ki_L0","item","idx","setAttribute","String","__n","nodeValue","__kp_L0","has","__r0","__r1","__r2","__r3","container","anchor","disposer","pending","path","key","createEntry","__k","__r","__raw","__prev","element","__rd","__obs","__li","__el","obs","patchEntry","e","newItem","newIdx"],"sources":["../src/components/radio-group.tsx"],"sourcesContent":["import * as radioGroup from '@zag-js/radio-group'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class RadioGroup extends ZagComponent {\n declare value: string | null\n\n createMachine(_props: any): any {\n return radioGroup.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n name: props.name,\n form: props.form,\n disabled: props.disabled,\n readOnly: props.readOnly,\n orientation: props.orientation ?? 'vertical',\n onValueChange: (details: radioGroup.ValueChangeDetails) => {\n this.value = details.value\n props.onValueChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return radioGroup.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"label\"]': 'getLabelProps',\n '[data-part=\"indicator\"]': 'getIndicatorProps',\n '[data-part=\"item\"]': (api, el) => api.getItemProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-text\"]': (api, el) => api.getItemTextProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-control\"]': (api, el) => api.getItemControlProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-hidden-input\"]': (api, el) =>\n api.getItemHiddenInputProps({ value: (el as HTMLElement).dataset.value }),\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n }\n\n template(props: any) {\n const items = props.items || []\n return (\n <div data-part=\"root\" class={props.class || ''}>\n {props.label && (\n <span data-part=\"label\" class=\"radio-group-label text-sm font-medium mb-2 block\">\n {props.label}\n </span>\n )}\n <div data-part=\"indicator\" class=\"radio-group-indicator\"></div>\n {items.map((item: any) => (\n <label\n key={item.value}\n data-part=\"item\"\n data-value={item.value}\n class=\"radio-group-item flex items-center gap-2 cursor-pointer py-1\"\n >\n <div\n data-part=\"item-control\"\n data-value={item.value}\n class=\"radio-group-item-control h-4 w-4 rounded-full border border-primary flex items-center justify-center\"\n >\n <span class=\"radio-dot\"></span>\n </div>\n <input data-part=\"item-hidden-input\" data-value={item.value} type=\"radio\" class=\"sr-only\" />\n <span data-part=\"item-text\" data-value={item.value} class=\"radio-group-item-text text-sm\">\n {item.label}\n </span>\n </label>\n ))}\n </div>\n )\n }\n}\n"],"mappings":"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"}
|
package/dist/rating-group.d.mts
CHANGED
|
@@ -8,7 +8,7 @@ declare class RatingGroup extends ZagComponent {
|
|
|
8
8
|
_allowHalf: boolean;
|
|
9
9
|
createMachine(_props: any): any;
|
|
10
10
|
getMachineProps(props: any): {
|
|
11
|
-
id:
|
|
11
|
+
id: string;
|
|
12
12
|
value: any;
|
|
13
13
|
defaultValue: any;
|
|
14
14
|
count: any;
|
|
@@ -31,7 +31,7 @@ declare class RatingGroup extends ZagComponent {
|
|
|
31
31
|
};
|
|
32
32
|
syncState(api: any): void;
|
|
33
33
|
_applyAllSpreads(): void;
|
|
34
|
-
template(props: any):
|
|
34
|
+
template(props: any): any;
|
|
35
35
|
}
|
|
36
36
|
//#endregion
|
|
37
37
|
export { RatingGroup as default };
|
package/dist/rating-group.mjs
CHANGED
|
@@ -1,27 +1,36 @@
|
|
|
1
1
|
import { t as ZagComponent } from "./zag-component.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { o as GEA_CREATE_TEMPLATE, u as GEA_PROXY_RAW } from "./bind.mjs";
|
|
3
|
+
import { n as reactiveTextValue } from "./reactive-text.mjs";
|
|
4
|
+
import { t as reactiveAttr } from "./reactive-attr.mjs";
|
|
5
|
+
import { t as reactiveClass } from "./reactive-class.mjs";
|
|
6
|
+
import { t as reactiveStyleProp } from "./reactive-style.mjs";
|
|
7
|
+
import { t as conditionalTruthy } from "./conditional-truthy.mjs";
|
|
8
|
+
import { n as _rescue, t as keyedList } from "./keyed-list.mjs";
|
|
9
|
+
import { t as GEA_DOM_ITEM } from "./keyed-list-symbols.mjs";
|
|
10
|
+
import { n as readItem, t as createItemObservable } from "./item-obs.mjs";
|
|
3
11
|
import { normalizeProps } from "@zag-js/vanilla";
|
|
4
12
|
import * as ratingGroup from "@zag-js/rating-group";
|
|
5
13
|
//#region src/components/rating-group.tsx
|
|
6
|
-
|
|
14
|
+
let _tpl0_root = null;
|
|
15
|
+
function _tpl0_create() {
|
|
16
|
+
const t = document.createElement("template");
|
|
17
|
+
t.innerHTML = "<div data-part=root><!--1--><div data-part=control class=\"rating-group-control flex gap-0.5\"><!--2--></div><input data-part=hidden-input type=hidden>";
|
|
18
|
+
return t.content.firstChild;
|
|
19
|
+
}
|
|
20
|
+
let _tpl1_root = null;
|
|
21
|
+
function _tpl1_create() {
|
|
22
|
+
const t = document.createElement("template");
|
|
23
|
+
t.innerHTML = "<label data-part=label class=\"rating-group-label text-sm font-medium mb-1 block\">0";
|
|
24
|
+
return t.content.firstChild;
|
|
25
|
+
}
|
|
26
|
+
let _tpl2_root = null;
|
|
27
|
+
function _tpl2_create() {
|
|
28
|
+
const t = document.createElement("template");
|
|
29
|
+
t.innerHTML = "<span data-part=item class=\"rating-group-item cursor-pointer text-2xl text-muted-foreground data-[highlighted]:text-yellow-400 data-[checked]:text-yellow-400\">★";
|
|
30
|
+
return t.content.firstChild;
|
|
31
|
+
}
|
|
32
|
+
const __rq_L0 = /* @__PURE__ */ new Map();
|
|
7
33
|
var RatingGroup = class extends ZagComponent {
|
|
8
|
-
static {
|
|
9
|
-
this.__geaTagName = "rating-group";
|
|
10
|
-
}
|
|
11
|
-
#__rowEls_b1;
|
|
12
|
-
#__dc_b1;
|
|
13
|
-
constructor(...args) {
|
|
14
|
-
super(...args);
|
|
15
|
-
this.props;
|
|
16
|
-
this[geaCondValueSymbol(0)] = !!this.props.label;
|
|
17
|
-
this[GEA_REGISTER_COND](0, "c0", () => {
|
|
18
|
-
this.props;
|
|
19
|
-
return this.props.label;
|
|
20
|
-
}, () => {
|
|
21
|
-
this.props;
|
|
22
|
-
return `<label data-part="label" class="rating-group-label text-sm font-medium mb-1 block">${geaEscapeHtml(String(this.props.label))}</label>`;
|
|
23
|
-
}, null);
|
|
24
|
-
}
|
|
25
34
|
createMachine(_props) {
|
|
26
35
|
return ratingGroup.machine;
|
|
27
36
|
}
|
|
@@ -88,87 +97,70 @@ var RatingGroup = class extends ZagComponent {
|
|
|
88
97
|
}
|
|
89
98
|
}
|
|
90
99
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
const
|
|
95
|
-
const
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
if (key === "class") {
|
|
153
|
-
const __el = this[GEA_ELEMENT];
|
|
154
|
-
this.props;
|
|
155
|
-
const __boundValue = value || "";
|
|
156
|
-
if (__el) {
|
|
157
|
-
const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
|
|
158
|
-
if (__el.className !== __newClass) __el.className = __newClass;
|
|
100
|
+
[GEA_CREATE_TEMPLATE](d) {
|
|
101
|
+
this.props.count;
|
|
102
|
+
Array.from({ length: this.props.count ?? 5 }, (_, i) => i + 1);
|
|
103
|
+
const root = (_tpl0_root || (_tpl0_root = _tpl0_create())).cloneNode(true);
|
|
104
|
+
const el0 = root;
|
|
105
|
+
const anchor1 = root.firstChild;
|
|
106
|
+
const anchor2 = root.childNodes[1].firstChild;
|
|
107
|
+
reactiveClass(el0, d, this, () => this.props.class || "");
|
|
108
|
+
conditionalTruthy(anchor1.parentNode, anchor1, d, this, () => this.props.label, (d) => {
|
|
109
|
+
const root = (_tpl1_root || (_tpl1_root = _tpl1_create())).cloneNode(true);
|
|
110
|
+
const t0 = root.firstChild;
|
|
111
|
+
reactiveTextValue(t0, d, this, () => this.props.label);
|
|
112
|
+
return root;
|
|
113
|
+
});
|
|
114
|
+
const __ki_L0 = (__geaItemObservable, idx, d) => {
|
|
115
|
+
const root = (_tpl2_root || (_tpl2_root = _tpl2_create())).cloneNode(true);
|
|
116
|
+
const el0 = root;
|
|
117
|
+
const el1 = el0;
|
|
118
|
+
const el2 = el0;
|
|
119
|
+
reactiveAttr(el0, d, this, "key", () => readItem(__geaItemObservable));
|
|
120
|
+
reactiveAttr(el1, d, this, "data-index", () => String(readItem(__geaItemObservable)));
|
|
121
|
+
reactiveStyleProp(el2, d, this, "line-height", () => 1);
|
|
122
|
+
root[GEA_DOM_ITEM] = readItem(__geaItemObservable);
|
|
123
|
+
return root;
|
|
124
|
+
};
|
|
125
|
+
keyedList({
|
|
126
|
+
container: anchor2.parentNode,
|
|
127
|
+
anchor: anchor2,
|
|
128
|
+
disposer: d,
|
|
129
|
+
root: this,
|
|
130
|
+
pending: __rq_L0,
|
|
131
|
+
path: () => Array.from({ length: this.props.count ?? 5 }, (_, i) => i + 1),
|
|
132
|
+
key: (i, idx) => i,
|
|
133
|
+
createEntry: (item, idx) => {
|
|
134
|
+
const __k = item;
|
|
135
|
+
const __r = _rescue(__rq_L0, String(__k), item);
|
|
136
|
+
if (__r) {
|
|
137
|
+
const __raw = item && item[GEA_PROXY_RAW] || item;
|
|
138
|
+
if (__r.item !== __raw) {
|
|
139
|
+
__r.item;
|
|
140
|
+
__r.item = __raw;
|
|
141
|
+
__r.obs.current = item;
|
|
142
|
+
__r.obs._fire();
|
|
143
|
+
}
|
|
144
|
+
return __r;
|
|
145
|
+
}
|
|
146
|
+
const __rd = d.child();
|
|
147
|
+
const __obs = createItemObservable(item);
|
|
148
|
+
const __el = __ki_L0(__obs, idx, __rd);
|
|
149
|
+
return {
|
|
150
|
+
key: __k,
|
|
151
|
+
item: item && item[GEA_PROXY_RAW] || item,
|
|
152
|
+
element: __el,
|
|
153
|
+
disposer: __rd,
|
|
154
|
+
obs: __obs
|
|
155
|
+
};
|
|
156
|
+
},
|
|
157
|
+
patchEntry: (e, newItem, newIdx) => {
|
|
158
|
+
e.item = newItem && newItem[GEA_PROXY_RAW] || newItem;
|
|
159
|
+
e.obs.current = newItem;
|
|
160
|
+
e.obs._fire();
|
|
159
161
|
}
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
if (key === "count") this[GEA_SYNC_MAP](0);
|
|
163
|
-
}
|
|
164
|
-
__observe_local_props(__v, __c) {
|
|
165
|
-
this[GEA_SYNC_MAP](0);
|
|
166
|
-
}
|
|
167
|
-
createdHooks() {
|
|
168
|
-
this[GEA_REGISTER_MAP](0, "____unresolved_0_container", () => __gid(this.id + "-b1"), () => {
|
|
169
|
-
const count = this.props.count ?? 5;
|
|
170
|
-
return Array.from({ length: count }, (_, i) => i + 1);
|
|
171
|
-
}, (__item) => this.create__unresolved_0Item(__item));
|
|
162
|
+
});
|
|
163
|
+
return root;
|
|
172
164
|
}
|
|
173
165
|
};
|
|
174
166
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rating-group.mjs","names":["__v","v","valueOf","Component","geaCondValueSymbol","GEA_REGISTER_COND","geaEscapeHtml","GEA_DOM_KEY","GEA_DOM_ITEM","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_COND","GEA_SYNC_MAP","GEA_REGISTER_MAP","ratingGroup","normalizeProps","ZagComponent","RatingGroup","__geaTagName","__rowEls_b1","__dc_b1","constructor","args","props","label","String","value","_allowHalf","createMachine","_props","machine","getMachineProps","allowHalf","id","defaultValue","count","readOnly","disabled","name","form","onValueChange","details","ValueChangeDetails","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","htmlEl","HTMLElement","index","parseInt","dataset","getItemProps","onpointerdown","e","PointerEvent","rect","getBoundingClientRect","isLeftHalf","clientX","left","width","setValue","syncState","_applyAllSpreads","_api","items","querySelectorAll","i","length","state","getItemState","half","style","background","backgroundClip","setProperty","template","__id","_register","Array","from","_","class","trim","map","join","render__unresolved_0Item","create__unresolved_0Item","item","__c","____unresolved_0_container","__geaTpl","__tw","document","createElement","innerHTML","content","firstElementChild","removeAttribute","__err","console","error","cloneNode","__fw","__av","__newAttr","getAttribute","setAttribute","lineHeight","undefined","__newCss","Object","entries","k","replace","cssText","patch__unresolved_0Item","row","__prevItem","key","__el","__boundValue","__newClass","className","__observe_local_props","createdHooks","__gid","__item"],"sources":["../src/components/rating-group.tsx"],"sourcesContent":["import * as ratingGroup from '@zag-js/rating-group'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class RatingGroup extends ZagComponent {\n declare value: number\n declare _allowHalf: boolean\n\n createMachine(_props: any): any {\n return ratingGroup.machine\n }\n\n getMachineProps(props: any) {\n this._allowHalf = !!props.allowHalf\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n count: props.count ?? 5,\n allowHalf: !!props.allowHalf,\n readOnly: props.readOnly,\n disabled: props.disabled,\n name: props.name,\n form: props.form,\n onValueChange: (details: ratingGroup.ValueChangeDetails) => {\n this.value = details.value\n props.onValueChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return ratingGroup.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"label\"]': 'getLabelProps',\n '[data-part=\"control\"]': 'getControlProps',\n '[data-part=\"hidden-input\"]': 'getHiddenInputProps',\n '[data-part=\"item\"]': (api, el) => {\n const htmlEl = el as HTMLElement\n const index = parseInt(htmlEl.dataset.index || '0', 10)\n const props = api.getItemProps({ index })\n if (this._allowHalf) {\n props.onpointerdown = (e: PointerEvent) => {\n const rect = htmlEl.getBoundingClientRect()\n const isLeftHalf = e.clientX - rect.left < rect.width / 2\n api.setValue(isLeftHalf ? index - 0.5 : index)\n }\n }\n return props\n },\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n }\n\n _applyAllSpreads() {\n super._applyAllSpreads()\n if (!this._api || !this.el) return\n const items = this.el.querySelectorAll('[data-part=\"item\"]')\n for (let i = 0; i < items.length; i++) {\n const el = items[i] as HTMLElement\n const index = parseInt(el.dataset.index || '0', 10)\n const state = this._api.getItemState({ index })\n if (state.half) {\n el.style.background = 'linear-gradient(90deg, #facc15 50%, hsl(var(--muted-foreground)) 50%)'\n el.style.backgroundClip = 'text'\n el.style.setProperty('-webkit-background-clip', 'text')\n el.style.setProperty('-webkit-text-fill-color', 'transparent')\n } else {\n el.style.background = ''\n el.style.backgroundClip = ''\n el.style.setProperty('-webkit-background-clip', '')\n el.style.setProperty('-webkit-text-fill-color', '')\n }\n }\n }\n\n template(props: any) {\n const count = props.count ?? 5\n const items = Array.from({ length: count }, (_, i) => i + 1)\n return (\n <div data-part=\"root\" class={props.class || ''}>\n {props.label && (\n <label data-part=\"label\" class=\"rating-group-label text-sm font-medium mb-1 block\">\n {props.label}\n </label>\n )}\n <div data-part=\"control\" class=\"rating-group-control flex gap-0.5\">\n {items.map((i: number) => (\n <span\n key={i}\n data-part=\"item\"\n data-index={String(i)}\n class=\"rating-group-item cursor-pointer text-2xl text-muted-foreground data-[highlighted]:text-yellow-400 data-[checked]:text-yellow-400\"\n style={{ lineHeight: 1 }}\n >\n ★\n </span>\n ))}\n </div>\n <input data-part=\"hidden-input\" type=\"hidden\" />\n </div>\n )\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rating-group.mjs","names":["GEA_CREATE_TEMPLATE","reactiveClass","reactiveTextValue","conditionalTruthy","reactiveAttr","reactiveStyleProp","GEA_DOM_ITEM","createItemObservable","readItem","GEA_PROXY_RAW","_rescue","keyedList","ratingGroup","normalizeProps","ZagComponent","_tpl0_root","_tpl0_create","t","document","createElement","innerHTML","content","firstChild","_tpl1_root","_tpl1_create","_tpl2_root","_tpl2_create","__rq_L0","Map","RatingGroup","value","_allowHalf","createMachine","_props","machine","getMachineProps","props","allowHalf","id","defaultValue","count","readOnly","disabled","name","form","onValueChange","details","ValueChangeDetails","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","htmlEl","HTMLElement","index","parseInt","dataset","getItemProps","onpointerdown","e","PointerEvent","rect","getBoundingClientRect","isLeftHalf","clientX","left","width","setValue","syncState","_applyAllSpreads","_api","items","querySelectorAll","i","length","state","getItemState","half","style","background","backgroundClip","setProperty","d","Array","from","_","root","cloneNode","el0","anchor1","anchor2","childNodes","class","parentNode","label","marker0","t0","__ki_L0","__geaItemObservable","idx","el1","el2","String","container","anchor","disposer","pending","path","key","createEntry","item","__k","__r","__raw","__prev","obs","current","_fire","__rd","child","__obs","__li","__el","element","patchEntry","newItem","newIdx"],"sources":["../src/components/rating-group.tsx"],"sourcesContent":["import * as ratingGroup from '@zag-js/rating-group'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class RatingGroup extends ZagComponent {\n declare value: number\n declare _allowHalf: boolean\n\n createMachine(_props: any): any {\n return ratingGroup.machine\n }\n\n getMachineProps(props: any) {\n this._allowHalf = !!props.allowHalf\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n count: props.count ?? 5,\n allowHalf: !!props.allowHalf,\n readOnly: props.readOnly,\n disabled: props.disabled,\n name: props.name,\n form: props.form,\n onValueChange: (details: ratingGroup.ValueChangeDetails) => {\n this.value = details.value\n props.onValueChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return ratingGroup.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"label\"]': 'getLabelProps',\n '[data-part=\"control\"]': 'getControlProps',\n '[data-part=\"hidden-input\"]': 'getHiddenInputProps',\n '[data-part=\"item\"]': (api, el) => {\n const htmlEl = el as HTMLElement\n const index = parseInt(htmlEl.dataset.index || '0', 10)\n const props = api.getItemProps({ index })\n if (this._allowHalf) {\n props.onpointerdown = (e: PointerEvent) => {\n const rect = htmlEl.getBoundingClientRect()\n const isLeftHalf = e.clientX - rect.left < rect.width / 2\n api.setValue(isLeftHalf ? index - 0.5 : index)\n }\n }\n return props\n },\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n }\n\n _applyAllSpreads() {\n super._applyAllSpreads()\n if (!this._api || !this.el) return\n const items = this.el.querySelectorAll('[data-part=\"item\"]')\n for (let i = 0; i < items.length; i++) {\n const el = items[i] as HTMLElement\n const index = parseInt(el.dataset.index || '0', 10)\n const state = this._api.getItemState({ index })\n if (state.half) {\n el.style.background = 'linear-gradient(90deg, #facc15 50%, hsl(var(--muted-foreground)) 50%)'\n el.style.backgroundClip = 'text'\n el.style.setProperty('-webkit-background-clip', 'text')\n el.style.setProperty('-webkit-text-fill-color', 'transparent')\n } else {\n el.style.background = ''\n el.style.backgroundClip = ''\n el.style.setProperty('-webkit-background-clip', '')\n el.style.setProperty('-webkit-text-fill-color', '')\n }\n }\n }\n\n template(props: any) {\n const count = props.count ?? 5\n const items = Array.from({ length: count }, (_, i) => i + 1)\n return (\n <div data-part=\"root\" class={props.class || ''}>\n {props.label && (\n <label data-part=\"label\" class=\"rating-group-label text-sm font-medium mb-1 block\">\n {props.label}\n </label>\n )}\n <div data-part=\"control\" class=\"rating-group-control flex gap-0.5\">\n {items.map((i: number) => (\n <span\n key={i}\n data-part=\"item\"\n data-index={String(i)}\n class=\"rating-group-item cursor-pointer text-2xl text-muted-foreground data-[highlighted]:text-yellow-400 data-[checked]:text-yellow-400\"\n style={{ lineHeight: 1 }}\n >\n ★\n </span>\n ))}\n </div>\n <input data-part=\"hidden-input\" type=\"hidden\" />\n </div>\n )\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { t as bind } from "./bind.mjs";
|
|
2
|
+
import { t as patch } from "./patch.mjs";
|
|
3
|
+
//#region ../gea/src/runtime/reactive-attr.ts
|
|
4
|
+
function reactiveAttr(el, d, root, attrName, pathOrGetter) {
|
|
5
|
+
let prev = void 0;
|
|
6
|
+
bind(d, root, pathOrGetter, (v) => {
|
|
7
|
+
prev = patch(el, "attr", prev, v, attrName);
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
//#endregion
|
|
11
|
+
export { reactiveAttr as t };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=reactive-attr.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reactive-attr.mjs","names":[],"sources":["../../gea/src/runtime/reactive-attr.ts"],"sourcesContent":["import type { Disposer } from './disposer'\nimport { bind } from './bind'\nimport { patch } from './patch'\n\nexport function reactiveAttr(\n el: Element,\n d: Disposer,\n root: any,\n attrName: string,\n pathOrGetter: readonly string[] | (() => unknown),\n): void {\n let prev: unknown = undefined\n bind(d, root, pathOrGetter, (v) => {\n prev = patch(el, 'attr', prev, v, attrName)\n })\n}\n"],"mappings":";;;AAIA,SAAgB,aACd,IACA,GACA,MACA,UACA,cACM;CACN,IAAI,OAAgB,KAAA;AACpB,MAAK,GAAG,MAAM,eAAe,MAAM;AACjC,SAAO,MAAM,IAAI,QAAQ,MAAM,GAAG,SAAS;GAC3C"}
|