@geajs/ui 0.2.3 → 0.2.9

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.
Files changed (170) hide show
  1. package/dist/accordion.d.mts +2 -2
  2. package/dist/accordion.mjs +92 -122
  3. package/dist/accordion.mjs.map +1 -1
  4. package/dist/alert.d.mts +3 -3
  5. package/dist/alert.mjs +45 -107
  6. package/dist/alert.mjs.map +1 -1
  7. package/dist/avatar.d.mts +2 -2
  8. package/dist/avatar.mjs +38 -62
  9. package/dist/avatar.mjs.map +1 -1
  10. package/dist/badge.d.mts +1 -1
  11. package/dist/badge.mjs +18 -43
  12. package/dist/badge.mjs.map +1 -1
  13. package/dist/bind.mjs +130 -0
  14. package/dist/bind.mjs.map +1 -0
  15. package/dist/button.d.mts +3 -2
  16. package/dist/button.mjs +30 -85
  17. package/dist/button.mjs.map +1 -1
  18. package/dist/card.d.mts +6 -6
  19. package/dist/card.mjs +82 -194
  20. package/dist/card.mjs.map +1 -1
  21. package/dist/checkbox.d.mts +2 -2
  22. package/dist/checkbox.mjs +30 -31
  23. package/dist/checkbox.mjs.map +1 -1
  24. package/dist/clipboard.d.mts +2 -2
  25. package/dist/clipboard.mjs +49 -55
  26. package/dist/clipboard.mjs.map +1 -1
  27. package/dist/collapsible.d.mts +2 -2
  28. package/dist/collapsible.mjs +18 -45
  29. package/dist/collapsible.mjs.map +1 -1
  30. package/dist/combobox.d.mts +2 -2
  31. package/dist/combobox.mjs +322 -261
  32. package/dist/combobox.mjs.map +1 -1
  33. package/dist/compiled-component.mjs +119 -0
  34. package/dist/compiled-component.mjs.map +1 -0
  35. package/dist/compiled-reactive-component.mjs +337 -0
  36. package/dist/compiled-reactive-component.mjs.map +1 -0
  37. package/dist/component-id.mjs +10 -0
  38. package/dist/component-id.mjs.map +1 -0
  39. package/dist/conditional-truthy.mjs +48 -0
  40. package/dist/conditional-truthy.mjs.map +1 -0
  41. package/dist/conditional.mjs +54 -0
  42. package/dist/conditional.mjs.map +1 -0
  43. package/dist/delegate-event.mjs +53 -0
  44. package/dist/delegate-event.mjs.map +1 -0
  45. package/dist/dialog.d.mts +4 -3
  46. package/dist/dialog.mjs +57 -70
  47. package/dist/dialog.mjs.map +1 -1
  48. package/dist/dirty-symbols.mjs +7 -0
  49. package/dist/dirty-symbols.mjs.map +1 -0
  50. package/dist/disposer.mjs +46 -0
  51. package/dist/disposer.mjs.map +1 -0
  52. package/dist/dnd-manager.d.mts +9 -1
  53. package/dist/dnd-manager.mjs +67 -29
  54. package/dist/dnd-manager.mjs.map +1 -1
  55. package/dist/drag-drop-context.d.mts +1 -1
  56. package/dist/drag-drop-context.mjs +17 -33
  57. package/dist/drag-drop-context.mjs.map +1 -1
  58. package/dist/draggable.d.mts +1 -1
  59. package/dist/draggable.mjs +2 -91
  60. package/dist/draggable2.mjs +321 -0
  61. package/dist/draggable2.mjs.map +1 -0
  62. package/dist/droppable.d.mts +1 -1
  63. package/dist/droppable.mjs +20 -44
  64. package/dist/droppable.mjs.map +1 -1
  65. package/dist/file-upload.d.mts +2 -2
  66. package/dist/file-upload.mjs +337 -122
  67. package/dist/file-upload.mjs.map +1 -1
  68. package/dist/hover-card.d.mts +2 -2
  69. package/dist/hover-card.mjs +24 -59
  70. package/dist/hover-card.mjs.map +1 -1
  71. package/dist/index.mjs +3 -3
  72. package/dist/input.d.mts +1 -1
  73. package/dist/input.mjs +1 -93
  74. package/dist/input2.mjs +56 -0
  75. package/dist/input2.mjs.map +1 -0
  76. package/dist/internal-symbols.mjs +9 -0
  77. package/dist/internal-symbols.mjs.map +1 -0
  78. package/dist/item-obs.mjs +68 -0
  79. package/dist/item-obs.mjs.map +1 -0
  80. package/dist/keyed-list-symbols.mjs +6 -0
  81. package/dist/keyed-list-symbols.mjs.map +1 -0
  82. package/dist/keyed-list.mjs +487 -0
  83. package/dist/keyed-list.mjs.map +1 -0
  84. package/dist/label.d.mts +1 -1
  85. package/dist/label.mjs +20 -45
  86. package/dist/label.mjs.map +1 -1
  87. package/dist/menu.d.mts +2 -2
  88. package/dist/menu.mjs +87 -41
  89. package/dist/menu.mjs.map +1 -1
  90. package/dist/number-input.d.mts +2 -2
  91. package/dist/number-input.mjs +28 -32
  92. package/dist/number-input.mjs.map +1 -1
  93. package/dist/pagination.d.mts +2 -2
  94. package/dist/pagination.mjs +12 -35
  95. package/dist/pagination.mjs.map +1 -1
  96. package/dist/patch.mjs +21 -0
  97. package/dist/patch.mjs.map +1 -0
  98. package/dist/pin-input.d.mts +2 -2
  99. package/dist/pin-input.mjs +88 -87
  100. package/dist/pin-input.mjs.map +1 -1
  101. package/dist/popover.d.mts +2 -2
  102. package/dist/popover.mjs +45 -67
  103. package/dist/popover.mjs.map +1 -1
  104. package/dist/progress.d.mts +2 -2
  105. package/dist/progress.mjs +37 -43
  106. package/dist/progress.mjs.map +1 -1
  107. package/dist/radio-group.d.mts +2 -2
  108. package/dist/radio-group.mjs +99 -140
  109. package/dist/radio-group.mjs.map +1 -1
  110. package/dist/rating-group.d.mts +2 -2
  111. package/dist/rating-group.mjs +91 -99
  112. package/dist/rating-group.mjs.map +1 -1
  113. package/dist/reactive-attr.mjs +13 -0
  114. package/dist/reactive-attr.mjs.map +1 -0
  115. package/dist/reactive-bool.mjs +13 -0
  116. package/dist/reactive-bool.mjs.map +1 -0
  117. package/dist/reactive-class-name.mjs +15 -0
  118. package/dist/reactive-class-name.mjs.map +1 -0
  119. package/dist/reactive-class.mjs +53 -0
  120. package/dist/reactive-class.mjs.map +1 -0
  121. package/dist/reactive-style.mjs +21 -0
  122. package/dist/reactive-style.mjs.map +1 -0
  123. package/dist/reactive-text.mjs +62 -0
  124. package/dist/reactive-text.mjs.map +1 -0
  125. package/dist/select.d.mts +2 -2
  126. package/dist/select.mjs +106 -186
  127. package/dist/select.mjs.map +1 -1
  128. package/dist/separator.d.mts +1 -1
  129. package/dist/separator.mjs +19 -45
  130. package/dist/separator.mjs.map +1 -1
  131. package/dist/skeleton.d.mts +1 -1
  132. package/dist/skeleton.mjs +11 -35
  133. package/dist/skeleton.mjs.map +1 -1
  134. package/dist/slider.d.mts +2 -2
  135. package/dist/slider.mjs +31 -32
  136. package/dist/slider.mjs.map +1 -1
  137. package/dist/switch.d.mts +2 -2
  138. package/dist/switch.mjs +30 -31
  139. package/dist/switch.mjs.map +1 -1
  140. package/dist/tabs.d.mts +7 -2
  141. package/dist/tabs.mjs +180 -147
  142. package/dist/tabs.mjs.map +1 -1
  143. package/dist/tags-input.d.mts +2 -2
  144. package/dist/tags-input.mjs +102 -188
  145. package/dist/tags-input.mjs.map +1 -1
  146. package/dist/textarea.d.mts +1 -1
  147. package/dist/textarea.mjs +32 -75
  148. package/dist/textarea.mjs.map +1 -1
  149. package/dist/theme.css +4 -5
  150. package/dist/toast.d.mts +1 -1
  151. package/dist/toast.mjs +14 -34
  152. package/dist/toast.mjs.map +1 -1
  153. package/dist/toggle-group.d.mts +2 -2
  154. package/dist/toggle-group.mjs +78 -85
  155. package/dist/toggle-group.mjs.map +1 -1
  156. package/dist/tooltip.d.mts +2 -2
  157. package/dist/tooltip.mjs +23 -43
  158. package/dist/tooltip.mjs.map +1 -1
  159. package/dist/tree-view.d.mts +2 -2
  160. package/dist/tree-view.mjs +32 -50
  161. package/dist/tree-view.mjs.map +1 -1
  162. package/dist/types.d.mts +9 -0
  163. package/dist/zag-component.d.mts +25 -3
  164. package/dist/zag-component.mjs +63 -16
  165. package/dist/zag-component.mjs.map +1 -1
  166. package/package.json +5 -5
  167. package/dist/cn.mjs +0 -10
  168. package/dist/cn.mjs.map +0 -1
  169. package/dist/draggable.mjs.map +0 -1
  170. package/dist/input.mjs.map +0 -1
package/dist/card.mjs CHANGED
@@ -1,208 +1,96 @@
1
- import { t as cn } from "./cn.mjs";
2
- import { Component, GEA_ELEMENT, GEA_INSTANTIATE_CHILD_COMPONENTS, GEA_MOUNT_COMPILED_CHILD_COMPONENTS, GEA_ON_PROP_CHANGE, GEA_PATCH_NODE } from "@geajs/core";
1
+ import { n as cn, t as CompiledComponent } from "./compiled-component.mjs";
2
+ import { o as GEA_CREATE_TEMPLATE } from "./bind.mjs";
3
+ import { t as reactiveText } from "./reactive-text.mjs";
4
+ import { t as reactiveClass } from "./reactive-class.mjs";
3
5
  //#region src/components/card.tsx
4
- var Card = class extends Component {
5
- static {
6
- this.__geaTagName = "gea-card";
7
- }
8
- template(props) {
9
- return `<div id="${this.id}"${cn("rounded-xl border bg-card text-card-foreground shadow", props.class) == null || cn("rounded-xl border bg-card text-card-foreground shadow", props.class) === false ? "" : ` class="${(cn("rounded-xl border bg-card text-card-foreground shadow", props.class) != null ? String(cn("rounded-xl border bg-card text-card-foreground shadow", props.class)) : "").trim()}"`}>${props.children}</div>`;
10
- }
11
- [GEA_ON_PROP_CHANGE](key, value) {
12
- if (key === "class") {
13
- const __el = this[GEA_ELEMENT];
14
- this.props;
15
- const __boundValue = cn("rounded-xl border bg-card text-card-foreground shadow", value);
16
- if (__el) {
17
- const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
18
- if (__el.className !== __newClass) __el.className = __newClass;
19
- }
20
- }
21
- if (key === "children") {
22
- const __el = this[GEA_ELEMENT];
23
- if (__el) {
24
- const __tw = document.createElement("template");
25
- __tw.innerHTML = value;
26
- const __newEl = __tw.content.firstElementChild;
27
- const __existEl = __el.firstElementChild;
28
- if (__newEl && __existEl && __tw.content.childNodes.length === 1) this.constructor[GEA_PATCH_NODE](__existEl, __newEl, true);
29
- else if (__el.innerHTML !== value) {
30
- __el.innerHTML = value;
31
- this[GEA_INSTANTIATE_CHILD_COMPONENTS]();
32
- if (this.parentComponent) this.parentComponent[GEA_MOUNT_COMPILED_CHILD_COMPONENTS]();
33
- }
34
- }
35
- }
6
+ function _tpl0_create() {
7
+ const e = document.createElement("div");
8
+ e.textContent = "0";
9
+ return e;
10
+ }
11
+ function _tpl1_create() {
12
+ const e = document.createElement("div");
13
+ e.textContent = "0";
14
+ return e;
15
+ }
16
+ function _tpl2_create() {
17
+ const e = document.createElement("h3");
18
+ e.textContent = "0";
19
+ return e;
20
+ }
21
+ function _tpl3_create() {
22
+ const e = document.createElement("p");
23
+ e.textContent = "0";
24
+ return e;
25
+ }
26
+ function _tpl4_create() {
27
+ const e = document.createElement("div");
28
+ e.textContent = "0";
29
+ return e;
30
+ }
31
+ function _tpl5_create() {
32
+ const e = document.createElement("div");
33
+ e.textContent = "0";
34
+ return e;
35
+ }
36
+ var Card = class extends CompiledComponent {
37
+ [GEA_CREATE_TEMPLATE](d) {
38
+ const root = _tpl0_create();
39
+ const el0 = root;
40
+ const marker1 = root.firstChild;
41
+ reactiveClass(el0, d, this, () => cn("rounded-xl border bg-card text-card-foreground shadow", this.props.class));
42
+ reactiveText(marker1, d, this, () => this.props.children);
43
+ return root;
36
44
  }
37
45
  };
38
- var CardHeader = class extends Component {
39
- static {
40
- this.__geaTagName = "card-header";
41
- }
42
- template(props) {
43
- return `<div id="${this.id}"${cn("flex flex-col space-y-1.5 p-6", props.class) == null || cn("flex flex-col space-y-1.5 p-6", props.class) === false ? "" : ` class="${(cn("flex flex-col space-y-1.5 p-6", props.class) != null ? String(cn("flex flex-col space-y-1.5 p-6", props.class)) : "").trim()}"`}>${props.children}</div>`;
44
- }
45
- [GEA_ON_PROP_CHANGE](key, value) {
46
- if (key === "class") {
47
- const __el = this[GEA_ELEMENT];
48
- this.props;
49
- const __boundValue = cn("flex flex-col space-y-1.5 p-6", value);
50
- if (__el) {
51
- const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
52
- if (__el.className !== __newClass) __el.className = __newClass;
53
- }
54
- }
55
- if (key === "children") {
56
- const __el = this[GEA_ELEMENT];
57
- if (__el) {
58
- const __tw = document.createElement("template");
59
- __tw.innerHTML = value;
60
- const __newEl = __tw.content.firstElementChild;
61
- const __existEl = __el.firstElementChild;
62
- if (__newEl && __existEl && __tw.content.childNodes.length === 1) this.constructor[GEA_PATCH_NODE](__existEl, __newEl, true);
63
- else if (__el.innerHTML !== value) {
64
- __el.innerHTML = value;
65
- this[GEA_INSTANTIATE_CHILD_COMPONENTS]();
66
- if (this.parentComponent) this.parentComponent[GEA_MOUNT_COMPILED_CHILD_COMPONENTS]();
67
- }
68
- }
69
- }
46
+ var CardHeader = class extends CompiledComponent {
47
+ [GEA_CREATE_TEMPLATE](d) {
48
+ const root = _tpl1_create();
49
+ const el0 = root;
50
+ const marker1 = root.firstChild;
51
+ reactiveClass(el0, d, this, () => cn("flex flex-col space-y-1.5 p-6", this.props.class));
52
+ reactiveText(marker1, d, this, () => this.props.children);
53
+ return root;
70
54
  }
71
55
  };
72
- var CardTitle = class extends Component {
73
- static {
74
- this.__geaTagName = "card-title";
75
- }
76
- template(props) {
77
- return `<h3 id="${this.id}"${cn("font-semibold leading-none tracking-tight", props.class) == null || cn("font-semibold leading-none tracking-tight", props.class) === false ? "" : ` class="${(cn("font-semibold leading-none tracking-tight", props.class) != null ? String(cn("font-semibold leading-none tracking-tight", props.class)) : "").trim()}"`}>${props.children}</h3>`;
78
- }
79
- [GEA_ON_PROP_CHANGE](key, value) {
80
- if (key === "class") {
81
- const __el = this[GEA_ELEMENT];
82
- this.props;
83
- const __boundValue = cn("font-semibold leading-none tracking-tight", value);
84
- if (__el) {
85
- const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
86
- if (__el.className !== __newClass) __el.className = __newClass;
87
- }
88
- }
89
- if (key === "children") {
90
- const __el = this[GEA_ELEMENT];
91
- if (__el) {
92
- const __tw = document.createElement("template");
93
- __tw.innerHTML = value;
94
- const __newEl = __tw.content.firstElementChild;
95
- const __existEl = __el.firstElementChild;
96
- if (__newEl && __existEl && __tw.content.childNodes.length === 1) this.constructor[GEA_PATCH_NODE](__existEl, __newEl, true);
97
- else if (__el.innerHTML !== value) {
98
- __el.innerHTML = value;
99
- this[GEA_INSTANTIATE_CHILD_COMPONENTS]();
100
- if (this.parentComponent) this.parentComponent[GEA_MOUNT_COMPILED_CHILD_COMPONENTS]();
101
- }
102
- }
103
- }
56
+ var CardTitle = class extends CompiledComponent {
57
+ [GEA_CREATE_TEMPLATE](d) {
58
+ const root = _tpl2_create();
59
+ const el0 = root;
60
+ const marker1 = root.firstChild;
61
+ reactiveClass(el0, d, this, () => cn("font-semibold leading-none tracking-tight", this.props.class));
62
+ reactiveText(marker1, d, this, () => this.props.children);
63
+ return root;
104
64
  }
105
65
  };
106
- var CardDescription = class extends Component {
107
- static {
108
- this.__geaTagName = "card-description";
109
- }
110
- template(props) {
111
- return `<p id="${this.id}"${cn("text-sm text-muted-foreground", props.class) == null || cn("text-sm text-muted-foreground", props.class) === false ? "" : ` class="${(cn("text-sm text-muted-foreground", props.class) != null ? String(cn("text-sm text-muted-foreground", props.class)) : "").trim()}"`}>${props.children}</p>`;
112
- }
113
- [GEA_ON_PROP_CHANGE](key, value) {
114
- if (key === "class") {
115
- const __el = this[GEA_ELEMENT];
116
- this.props;
117
- const __boundValue = cn("text-sm text-muted-foreground", value);
118
- if (__el) {
119
- const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
120
- if (__el.className !== __newClass) __el.className = __newClass;
121
- }
122
- }
123
- if (key === "children") {
124
- const __el = this[GEA_ELEMENT];
125
- if (__el) {
126
- const __tw = document.createElement("template");
127
- __tw.innerHTML = value;
128
- const __newEl = __tw.content.firstElementChild;
129
- const __existEl = __el.firstElementChild;
130
- if (__newEl && __existEl && __tw.content.childNodes.length === 1) this.constructor[GEA_PATCH_NODE](__existEl, __newEl, true);
131
- else if (__el.innerHTML !== value) {
132
- __el.innerHTML = value;
133
- this[GEA_INSTANTIATE_CHILD_COMPONENTS]();
134
- if (this.parentComponent) this.parentComponent[GEA_MOUNT_COMPILED_CHILD_COMPONENTS]();
135
- }
136
- }
137
- }
66
+ var CardDescription = class extends CompiledComponent {
67
+ [GEA_CREATE_TEMPLATE](d) {
68
+ const root = _tpl3_create();
69
+ const el0 = root;
70
+ const marker1 = root.firstChild;
71
+ reactiveClass(el0, d, this, () => cn("text-sm text-muted-foreground", this.props.class));
72
+ reactiveText(marker1, d, this, () => this.props.children);
73
+ return root;
138
74
  }
139
75
  };
140
- var CardContent = class extends Component {
141
- static {
142
- this.__geaTagName = "card-content";
143
- }
144
- template(props) {
145
- return `<div id="${this.id}"${cn("p-6 pt-0", props.class) == null || cn("p-6 pt-0", props.class) === false ? "" : ` class="${(cn("p-6 pt-0", props.class) != null ? String(cn("p-6 pt-0", props.class)) : "").trim()}"`}>${props.children}</div>`;
146
- }
147
- [GEA_ON_PROP_CHANGE](key, value) {
148
- if (key === "class") {
149
- const __el = this[GEA_ELEMENT];
150
- this.props;
151
- const __boundValue = cn("p-6 pt-0", value);
152
- if (__el) {
153
- const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
154
- if (__el.className !== __newClass) __el.className = __newClass;
155
- }
156
- }
157
- if (key === "children") {
158
- const __el = this[GEA_ELEMENT];
159
- if (__el) {
160
- const __tw = document.createElement("template");
161
- __tw.innerHTML = value;
162
- const __newEl = __tw.content.firstElementChild;
163
- const __existEl = __el.firstElementChild;
164
- if (__newEl && __existEl && __tw.content.childNodes.length === 1) this.constructor[GEA_PATCH_NODE](__existEl, __newEl, true);
165
- else if (__el.innerHTML !== value) {
166
- __el.innerHTML = value;
167
- this[GEA_INSTANTIATE_CHILD_COMPONENTS]();
168
- if (this.parentComponent) this.parentComponent[GEA_MOUNT_COMPILED_CHILD_COMPONENTS]();
169
- }
170
- }
171
- }
76
+ var CardContent = class extends CompiledComponent {
77
+ [GEA_CREATE_TEMPLATE](d) {
78
+ const root = _tpl4_create();
79
+ const el0 = root;
80
+ const marker1 = root.firstChild;
81
+ reactiveClass(el0, d, this, () => cn("p-6 pt-0", this.props.class));
82
+ reactiveText(marker1, d, this, () => this.props.children);
83
+ return root;
172
84
  }
173
85
  };
174
- var CardFooter = class extends Component {
175
- static {
176
- this.__geaTagName = "card-footer";
177
- }
178
- template(props) {
179
- return `<div id="${this.id}"${cn("flex items-center p-6 pt-0", props.class) == null || cn("flex items-center p-6 pt-0", props.class) === false ? "" : ` class="${(cn("flex items-center p-6 pt-0", props.class) != null ? String(cn("flex items-center p-6 pt-0", props.class)) : "").trim()}"`}>${props.children}</div>`;
180
- }
181
- [GEA_ON_PROP_CHANGE](key, value) {
182
- if (key === "class") {
183
- const __el = this[GEA_ELEMENT];
184
- this.props;
185
- const __boundValue = cn("flex items-center p-6 pt-0", value);
186
- if (__el) {
187
- const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
188
- if (__el.className !== __newClass) __el.className = __newClass;
189
- }
190
- }
191
- if (key === "children") {
192
- const __el = this[GEA_ELEMENT];
193
- if (__el) {
194
- const __tw = document.createElement("template");
195
- __tw.innerHTML = value;
196
- const __newEl = __tw.content.firstElementChild;
197
- const __existEl = __el.firstElementChild;
198
- if (__newEl && __existEl && __tw.content.childNodes.length === 1) this.constructor[GEA_PATCH_NODE](__existEl, __newEl, true);
199
- else if (__el.innerHTML !== value) {
200
- __el.innerHTML = value;
201
- this[GEA_INSTANTIATE_CHILD_COMPONENTS]();
202
- if (this.parentComponent) this.parentComponent[GEA_MOUNT_COMPILED_CHILD_COMPONENTS]();
203
- }
204
- }
205
- }
86
+ var CardFooter = class extends CompiledComponent {
87
+ [GEA_CREATE_TEMPLATE](d) {
88
+ const root = _tpl5_create();
89
+ const el0 = root;
90
+ const marker1 = root.firstChild;
91
+ reactiveClass(el0, d, this, () => cn("flex items-center p-6 pt-0", this.props.class));
92
+ reactiveText(marker1, d, this, () => this.props.children);
93
+ return root;
206
94
  }
207
95
  };
208
96
  //#endregion
package/dist/card.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"card.mjs","names":["Component","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_NODE","GEA_INSTANTIATE_CHILD_COMPONENTS","GEA_MOUNT_COMPILED_CHILD_COMPONENTS","cn","Card","__geaTagName","template","props","__id","id","class","String","trim","children","key","value","__el","__boundValue","__newClass","replace","className","__tw","document","createElement","innerHTML","__newEl","content","firstElementChild","__existEl","childNodes","length","constructor","parentComponent","CardHeader","CardTitle","CardDescription","CardContent","CardFooter"],"sources":["../src/components/card.tsx"],"sourcesContent":["import { Component } from '@geajs/core'\nimport { cn } from '../utils/cn'\n\nexport class Card extends Component {\n template(props: any) {\n return <div class={cn('rounded-xl border bg-card text-card-foreground shadow', props.class)}>{props.children}</div>\n }\n}\n\nexport class CardHeader extends Component {\n template(props: any) {\n return <div class={cn('flex flex-col space-y-1.5 p-6', props.class)}>{props.children}</div>\n }\n}\n\nexport class CardTitle extends Component {\n template(props: any) {\n return <h3 class={cn('font-semibold leading-none tracking-tight', props.class)}>{props.children}</h3>\n }\n}\n\nexport class CardDescription extends Component {\n template(props: any) {\n return <p class={cn('text-sm text-muted-foreground', props.class)}>{props.children}</p>\n }\n}\n\nexport class CardContent extends Component {\n template(props: any) {\n return <div class={cn('p-6 pt-0', props.class)}>{props.children}</div>\n }\n}\n\nexport class CardFooter extends Component {\n template(props: any) {\n return <div class={cn('flex items-center p-6 pt-0', props.class)}>{props.children}</div>\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"card.mjs","names":["GEA_CREATE_TEMPLATE","reactiveClass","reactiveText","CompiledComponent","Component","cn","_tpl0_create","e","document","createElement","textContent","_tpl1_create","_tpl2_create","_tpl3_create","_tpl4_create","_tpl5_create","Card","d","root","el0","marker1","firstChild","props","class","t1","children","CardHeader","CardTitle","CardDescription","CardContent","CardFooter"],"sources":["../src/components/card.tsx"],"sourcesContent":["import { Component } from '@geajs/core'\nimport { cn } from '../utils/cn'\n\nexport class Card extends Component {\n template(props: any) {\n return <div class={cn('rounded-xl border bg-card text-card-foreground shadow', props.class)}>{props.children}</div>\n }\n}\n\nexport class CardHeader extends Component {\n template(props: any) {\n return <div class={cn('flex flex-col space-y-1.5 p-6', props.class)}>{props.children}</div>\n }\n}\n\nexport class CardTitle extends Component {\n template(props: any) {\n return <h3 class={cn('font-semibold leading-none tracking-tight', props.class)}>{props.children}</h3>\n }\n}\n\nexport class CardDescription extends Component {\n template(props: any) {\n return <p class={cn('text-sm text-muted-foreground', props.class)}>{props.children}</p>\n }\n}\n\nexport class CardContent extends Component {\n template(props: any) {\n return <div class={cn('p-6 pt-0', props.class)}>{props.children}</div>\n }\n}\n\nexport class CardFooter extends Component {\n template(props: any) {\n return <div class={cn('flex items-center p-6 pt-0', props.class)}>{props.children}</div>\n }\n}\n"],"mappings":";;;;;AAGA,SAASM,eAAe;CACtB,MAAMC,IAAIC,SAASC,cAAc,MAAM;AACvCF,GAAEG,cAAc;AAChB,QAAOH;;AAET,SAASI,eAAe;CACtB,MAAMJ,IAAIC,SAASC,cAAc,MAAM;AACvCF,GAAEG,cAAc;AAChB,QAAOH;;AAET,SAASK,eAAe;CACtB,MAAML,IAAIC,SAASC,cAAc,KAAK;AACtCF,GAAEG,cAAc;AAChB,QAAOH;;AAET,SAASM,eAAe;CACtB,MAAMN,IAAIC,SAASC,cAAc,IAAI;AACrCF,GAAEG,cAAc;AAChB,QAAOH;;AAET,SAASO,eAAe;CACtB,MAAMP,IAAIC,SAASC,cAAc,MAAM;AACvCF,GAAEG,cAAc;AAChB,QAAOH;;AAET,SAASQ,eAAe;CACtB,MAAMR,IAAIC,SAASC,cAAc,MAAM;AACvCF,GAAEG,cAAc;AAChB,QAAOH;;AAET,IAAaS,OAAb,cAA0Bb,kBAAkB;CAC1C,CAACH,qBAAqBiB,GAAG;EACvB,MAAMC,OAAOZ,cAAc;EAC3B,MAAMa,MAAMD;EACZ,MAAME,UAAUF,KAAKG;AACrBpB,gBAAckB,KAAKF,GAAG,YAAYZ,GAAG,yDAAyD,KAAKiB,MAAMC,MAAM,CAAC;AAEhHrB,eAAasB,SAAIP,GAAG,YAAY,KAAKK,MAAMG,SAAS;AACpD,SAAOP;;;AAGX,IAAaQ,aAAb,cAAgCvB,kBAAkB;CAChD,CAACH,qBAAqBiB,GAAG;EACvB,MAAMC,OAAOP,cAAc;EAC3B,MAAMQ,MAAMD;EACZ,MAAME,UAAUF,KAAKG;AACrBpB,gBAAckB,KAAKF,GAAG,YAAYZ,GAAG,iCAAiC,KAAKiB,MAAMC,MAAM,CAAC;AAExFrB,eAAasB,SAAIP,GAAG,YAAY,KAAKK,MAAMG,SAAS;AACpD,SAAOP;;;AAGX,IAAaS,YAAb,cAA+BxB,kBAAkB;CAC/C,CAACH,qBAAqBiB,GAAG;EACvB,MAAMC,OAAON,cAAc;EAC3B,MAAMO,MAAMD;EACZ,MAAME,UAAUF,KAAKG;AACrBpB,gBAAckB,KAAKF,GAAG,YAAYZ,GAAG,6CAA6C,KAAKiB,MAAMC,MAAM,CAAC;AAEpGrB,eAAasB,SAAIP,GAAG,YAAY,KAAKK,MAAMG,SAAS;AACpD,SAAOP;;;AAGX,IAAaU,kBAAb,cAAqCzB,kBAAkB;CACrD,CAACH,qBAAqBiB,GAAG;EACvB,MAAMC,OAAOL,cAAc;EAC3B,MAAMM,MAAMD;EACZ,MAAME,UAAUF,KAAKG;AACrBpB,gBAAckB,KAAKF,GAAG,YAAYZ,GAAG,iCAAiC,KAAKiB,MAAMC,MAAM,CAAC;AAExFrB,eAAasB,SAAIP,GAAG,YAAY,KAAKK,MAAMG,SAAS;AACpD,SAAOP;;;AAGX,IAAaW,cAAb,cAAiC1B,kBAAkB;CACjD,CAACH,qBAAqBiB,GAAG;EACvB,MAAMC,OAAOJ,cAAc;EAC3B,MAAMK,MAAMD;EACZ,MAAME,UAAUF,KAAKG;AACrBpB,gBAAckB,KAAKF,GAAG,YAAYZ,GAAG,YAAY,KAAKiB,MAAMC,MAAM,CAAC;AAEnErB,eAAasB,SAAIP,GAAG,YAAY,KAAKK,MAAMG,SAAS;AACpD,SAAOP;;;AAGX,IAAaY,aAAb,cAAgC3B,kBAAkB;CAChD,CAACH,qBAAqBiB,GAAG;EACvB,MAAMC,OAAOH,cAAc;EAC3B,MAAMI,MAAMD;EACZ,MAAME,UAAUF,KAAKG;AACrBpB,gBAAckB,KAAKF,GAAG,YAAYZ,GAAG,8BAA8B,KAAKiB,MAAMC,MAAM,CAAC;AAErFrB,eAAasB,SAAIP,GAAG,YAAY,KAAKK,MAAMG,SAAS;AACpD,SAAOP"}
@@ -7,7 +7,7 @@ declare class Checkbox extends ZagComponent {
7
7
  checked: boolean | 'indeterminate';
8
8
  createMachine(_props: any): any;
9
9
  getMachineProps(props: any): {
10
- id: any;
10
+ id: string;
11
11
  checked: any;
12
12
  defaultChecked: any;
13
13
  disabled: any;
@@ -30,7 +30,7 @@ declare class Checkbox extends ZagComponent {
30
30
  '[data-part="hidden-input"]': string;
31
31
  };
32
32
  syncState(api: any): void;
33
- template(props: any): string;
33
+ template(props: any): any;
34
34
  }
35
35
  //#endregion
36
36
  export { Checkbox as default };
package/dist/checkbox.mjs CHANGED
@@ -1,24 +1,27 @@
1
1
  import { t as ZagComponent } from "./zag-component.mjs";
2
- import { Component, GEA_ELEMENT, GEA_ON_PROP_CHANGE, GEA_PATCH_COND, GEA_REGISTER_COND, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
2
+ import { o as GEA_CREATE_TEMPLATE } from "./bind.mjs";
3
+ import { n as reactiveTextValue } from "./reactive-text.mjs";
4
+ import { t as reactiveClassName } from "./reactive-class-name.mjs";
5
+ import { t as conditionalTruthy } from "./conditional-truthy.mjs";
3
6
  import { normalizeProps } from "@zag-js/vanilla";
4
7
  import * as checkbox from "@zag-js/checkbox";
5
8
  //#region src/components/checkbox.tsx
9
+ let _tpl0_root = null;
10
+ function _tpl0_create() {
11
+ const t = document.createElement("template");
12
+ t.innerHTML = "<label data-part=root><input data-part=hidden-input type=checkbox class=sr-only><div data-part=control class=\"checkbox-control h-4 w-4 shrink-0 rounded-xs border border-primary shadow transition-colors data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground\"><span data-part=indicator class=\"checkbox-indicator flex items-center justify-center text-current h-full w-full\"><svg xmlns=http://www.w3.org/2000/svg viewBox=\"0 0 24 24\" fill=none stroke=currentColor stroke-width=3 stroke-linecap=round stroke-linejoin=round class=\"h-3 w-3\"><polyline points=\"20 6 9 17 4 12\"></polyline></svg></span></div><!--1-->";
13
+ return t.content.firstChild;
14
+ }
15
+ let _tpl1_root = null;
16
+ function _tpl1_create() {
17
+ const t = document.createElement("template");
18
+ t.innerHTML = "<span data-part=label class=\"checkbox-label text-sm font-medium leading-none\">0";
19
+ return t.content.firstChild;
20
+ }
6
21
  var Checkbox = class extends ZagComponent {
7
- static {
8
- this.__geaTagName = "gea-checkbox";
9
- }
10
- constructor(...args) {
11
- super(...args);
22
+ constructor(..._args) {
23
+ super(..._args);
12
24
  this.checked = false;
13
- this.props;
14
- this[geaCondValueSymbol(0)] = !!this.props.label;
15
- this[GEA_REGISTER_COND](0, "c0", () => {
16
- this.props;
17
- return this.props.label;
18
- }, () => {
19
- this.props;
20
- return `<span data-part="label" class="checkbox-label text-sm font-medium leading-none">${geaEscapeHtml(String(this.props.label))}</span>`;
21
- }, null);
22
25
  }
23
26
  createMachine(_props) {
24
27
  return checkbox.machine;
@@ -56,22 +59,18 @@ var Checkbox = class extends ZagComponent {
56
59
  syncState(api) {
57
60
  this.checked = api.checkedState;
58
61
  }
59
- template(props) {
60
- const __id = this.id;
61
- Component._register(ZagComponent, "zag-component");
62
- return `<label id="${__id}" data-part="root" class="${`checkbox-root inline-flex items-center gap-2 cursor-pointer ${props.class || ""}`.trim()}"><input data-part="hidden-input" type="checkbox" class="sr-only" /><div data-part="control" class="checkbox-control h-4 w-4 shrink-0 rounded-xs border border-primary shadow transition-colors data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground"><span data-part="indicator" class="checkbox-indicator flex items-center justify-center text-current h-full w-full"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="h-3 w-3"><polyline points="20 6 9 17 4 12"></polyline></svg></span></div><!--${__id + "-c0"}-->${props.label && `<span data-part="label" class="checkbox-label text-sm font-medium leading-none">${geaEscapeHtml(String(props.label))}</span>` || ""}<!--${__id + "-c0-end"}--></label>`;
63
- }
64
- [GEA_ON_PROP_CHANGE](key, value) {
65
- if (key === "class") {
66
- const __el = this[GEA_ELEMENT];
67
- this.props;
68
- const __boundValue = `checkbox-root inline-flex items-center gap-2 cursor-pointer ${value || ""}`;
69
- if (__el) {
70
- const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
71
- if (__el.className !== __newClass) __el.className = __newClass;
72
- }
73
- }
74
- if (key === "label") this[GEA_PATCH_COND](0);
62
+ [GEA_CREATE_TEMPLATE](d) {
63
+ const root = (_tpl0_root || (_tpl0_root = _tpl0_create())).cloneNode(true);
64
+ const el0 = root;
65
+ const anchor1 = root.childNodes[2];
66
+ reactiveClassName(el0, d, this, () => `checkbox-root inline-flex items-center gap-2 cursor-pointer ${this.props.class || ""}`);
67
+ conditionalTruthy(anchor1.parentNode, anchor1, d, this, () => this.props.label, (d) => {
68
+ const root = (_tpl1_root || (_tpl1_root = _tpl1_create())).cloneNode(true);
69
+ const t0 = root.firstChild;
70
+ reactiveTextValue(t0, d, this, () => this.props.label);
71
+ return root;
72
+ });
73
+ return root;
75
74
  }
76
75
  };
77
76
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.mjs","names":["Component","geaCondValueSymbol","GEA_REGISTER_COND","geaEscapeHtml","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_COND","checkbox","normalizeProps","ZagComponent","Checkbox","__geaTagName","constructor","args","props","label","String","checked","createMachine","_props","machine","getMachineProps","id","defaultChecked","disabled","invalid","required","readOnly","name","form","value","onCheckedChange","details","CheckedChangeDetails","connectApi","service","connect","getSpreadMap","syncState","api","checkedState","template","__id","_register","class","trim","key","__el","__boundValue","__newClass","replace","className"],"sources":["../src/components/checkbox.tsx"],"sourcesContent":["import * as checkbox from '@zag-js/checkbox'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Checkbox extends ZagComponent {\n checked: boolean | 'indeterminate' = false\n\n createMachine(_props: any): any {\n return checkbox.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n checked: props.checked,\n defaultChecked: props.defaultChecked,\n disabled: props.disabled,\n invalid: props.invalid,\n required: props.required,\n readOnly: props.readOnly,\n name: props.name,\n form: props.form,\n value: props.value ?? 'on',\n onCheckedChange: (details: checkbox.CheckedChangeDetails) => {\n this.checked = details.checked\n props.onCheckedChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return checkbox.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=\"indicator\"]': 'getIndicatorProps',\n '[data-part=\"hidden-input\"]': 'getHiddenInputProps',\n }\n }\n\n syncState(api: any) {\n this.checked = api.checkedState\n }\n\n template(props: any) {\n return (\n <label\n data-part=\"root\"\n class={`checkbox-root inline-flex items-center gap-2 cursor-pointer ${props.class || ''}`}\n >\n <input data-part=\"hidden-input\" type=\"checkbox\" class=\"sr-only\" />\n <div\n data-part=\"control\"\n class=\"checkbox-control h-4 w-4 shrink-0 rounded-xs border border-primary shadow transition-colors data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground\"\n >\n <span\n data-part=\"indicator\"\n class=\"checkbox-indicator flex items-center justify-center text-current h-full w-full\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"h-3 w-3\"\n >\n <polyline points=\"20 6 9 17 4 12\"></polyline>\n </svg>\n </span>\n </div>\n {props.label && (\n <span data-part=\"label\" class=\"checkbox-label text-sm font-medium leading-none\">\n {props.label}\n </span>\n )}\n </label>\n )\n }\n}\n"],"mappings":";;;;;AAIA,IAAqBU,WAArB,cAAsCD,aAAa;;sBAAA;;CAHnDG,YAAsB,GAAGC,MAAI;AAA7B,QAAM,GAAGA,KAAK;iBAIyB;AA2ClB,OAAAC;AAAA,OAAAb,mBAAA,EAAA,IAAA,CAAA,CA/CrB,KAAKa,MA4EUC;AA5Ef,OAAIb,mBAAuB,GAAA,YAAA;AA+CN,QAAAY;AAAA,UA/CrB,KAAKA,MA4EUC;WAAK;AA7BC,QAAAD;AAAA,UAAA,mFA/CrBX,cAAca,OAAd,KAAKF,MA8EcC,MA9EwB,CAAC,CAAA;KAAA,KAAA;;CAM1CG,cAAcC,QAAkB;AAC9B,SAAOZ,SAASa;;CAGlBC,gBAAgBP,OAAY;AAC1B,SAAO;GACLQ,IAAI,KAAKA;GACTL,SAASH,MAAMG;GACfM,gBAAgBT,MAAMS;GACtBC,UAAUV,MAAMU;GAChBC,SAASX,MAAMW;GACfC,UAAUZ,MAAMY;GAChBC,UAAUb,MAAMa;GAChBC,MAAMd,MAAMc;GACZC,MAAMf,MAAMe;GACZC,OAAOhB,MAAMgB,SAAS;GACtBC,kBAAkBC,YAA2C;AAC3D,SAAKf,UAAUe,QAAQf;AACvBH,UAAMiB,kBAAkBC,QAAQ;;GAEnC;;CAGHE,WAAWC,SAAc;AACvB,SAAO5B,SAAS6B,QAAQD,SAAS3B,eAAe;;CAGlD6B,eAAe;AACb,SAAO;GACL,wBAAsB;GACtB,yBAAuB;GACvB,2BAAyB;GACzB,6BAA2B;GAC3B,gCAA8B;GAC/B;;CAGHC,UAAUC,KAAU;AAClB,OAAKtB,UAAUsB,IAAIC;;CAGrBC,SAAS3B,OAAY;EAAA,MAAA4B,OAAA,KAAApB;AAAAtB,YAAA2C,UAAAlC,cAAA,gBAAA;AACnB,SAAA,cAAAiC,KAAA,4BAGW,+DAA+D5B,MAAM8B,SAAS,KAAIC,MAAA,CAAA,qnBAnDjGH,OAAU,MAAK,KA4EN5B,MAAMC,SAAK,mFA5EpBZ,cAAca,OA8EDF,MAAMC,MA9EwB,CAAC,CAAA,YAAA,GAAA,MAA5C2B,OAAU,UAAS;;CAAnB,CAAAtC,oBAAwB0C,KAAKhB,OAAK;AAAA,MAAAgB,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAA1C;AA+Cb,QAAAS;GAAA,MAAAkC,eAIN,+DAA+DlB,SAAe;AAAI,OAAAiB,MAnDjG;IACM,MAAME,aADXjC,OAAOgC,gBAAyB,GAAG,CAAEH,MAAM,CAACK,QAAQ,QAAQ,IACf;AACxC,QAAIH,KAAsBI,cAAcF,WAAYF,MAAsBI,YAAYF;;;AACvF,MAAAH,QAAA,QAHL,MAAIxC,gBAAwB,EAAE"}
1
+ {"version":3,"file":"checkbox.mjs","names":["GEA_CREATE_TEMPLATE","reactiveClassName","reactiveTextValue","conditionalTruthy","checkbox","normalizeProps","ZagComponent","_tpl0_root","_tpl0_create","t","document","createElement","innerHTML","content","firstChild","_tpl1_root","_tpl1_create","Checkbox","checked","createMachine","_props","machine","getMachineProps","props","id","defaultChecked","disabled","invalid","required","readOnly","name","form","value","onCheckedChange","details","CheckedChangeDetails","connectApi","service","connect","getSpreadMap","syncState","api","checkedState","d","root","cloneNode","el0","anchor1","childNodes","class","parentNode","label","marker0","t0"],"sources":["../src/components/checkbox.tsx"],"sourcesContent":["import * as checkbox from '@zag-js/checkbox'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Checkbox extends ZagComponent {\n checked: boolean | 'indeterminate' = false\n\n createMachine(_props: any): any {\n return checkbox.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n checked: props.checked,\n defaultChecked: props.defaultChecked,\n disabled: props.disabled,\n invalid: props.invalid,\n required: props.required,\n readOnly: props.readOnly,\n name: props.name,\n form: props.form,\n value: props.value ?? 'on',\n onCheckedChange: (details: checkbox.CheckedChangeDetails) => {\n this.checked = details.checked\n props.onCheckedChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return checkbox.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=\"indicator\"]': 'getIndicatorProps',\n '[data-part=\"hidden-input\"]': 'getHiddenInputProps',\n }\n }\n\n syncState(api: any) {\n this.checked = api.checkedState\n }\n\n template(props: any) {\n return (\n <label\n data-part=\"root\"\n class={`checkbox-root inline-flex items-center gap-2 cursor-pointer ${props.class || ''}`}\n >\n <input data-part=\"hidden-input\" type=\"checkbox\" class=\"sr-only\" />\n <div\n data-part=\"control\"\n class=\"checkbox-control h-4 w-4 shrink-0 rounded-xs border border-primary shadow transition-colors data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground\"\n >\n <span\n data-part=\"indicator\"\n class=\"checkbox-indicator flex items-center justify-center text-current h-full w-full\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"h-3 w-3\"\n >\n <polyline points=\"20 6 9 17 4 12\"></polyline>\n </svg>\n </span>\n </div>\n {props.label && (\n <span data-part=\"label\" class=\"checkbox-label text-sm font-medium leading-none\">\n {props.label}\n </span>\n )}\n </label>\n )\n }\n}\n"],"mappings":";;;;;;;;AAIA,IAAIO,aAAa;AACjB,SAASC,eAAe;CACtB,MAAMC,IAAIC,SAASC,cAAc,WAAW;AAC5CF,GAAEG,YAAY;AACd,QAAOH,EAAEI,QAAQC;;AAEnB,IAAIC,aAAa;AACjB,SAASC,eAAe;CACtB,MAAMP,IAAIC,SAASC,cAAc,WAAW;AAC5CF,GAAEG,YAAY;AACd,QAAOH,EAAEI,QAAQC;;AAEnB,IAAqBG,WAArB,cAAsCX,aAAa;;;iBACZ;;CACrCa,cAAcC,QAAkB;AAC9B,SAAOhB,SAASiB;;CAElBC,gBAAgBC,OAAY;AAC1B,SAAO;GACLC,IAAI,KAAKA;GACTN,SAASK,MAAML;GACfO,gBAAgBF,MAAME;GACtBC,UAAUH,MAAMG;GAChBC,SAASJ,MAAMI;GACfC,UAAUL,MAAMK;GAChBC,UAAUN,MAAMM;GAChBC,MAAMP,MAAMO;GACZC,MAAMR,MAAMQ;GACZC,OAAOT,MAAMS,SAAS;GACtBC,kBAAkBC,YAA2C;AAC3D,SAAKhB,UAAUgB,QAAQhB;AACvBK,UAAMU,kBAAkBC,QAAQ;;GAEnC;;CAEHE,WAAWC,SAAc;AACvB,SAAOjC,SAASkC,QAAQD,SAAShC,eAAe;;CAElDkC,eAAe;AACb,SAAO;GACL,wBAAsB;GACtB,yBAAuB;GACvB,2BAAyB;GACzB,6BAA2B;GAC3B,gCAA8B;GAC/B;;CAEHC,UAAUC,KAAU;AAClB,OAAKvB,UAAUuB,IAAIC;;CAErB,CAAC1C,qBAAqB2C,GAAG;EACvB,MAAMC,QAAQrC,eAAeA,aAAaC,cAAc,GAAGqC,UAAU,KAAK;EAC1E,MAAMC,MAAMF;EACZ,MAAMG,UAAUH,KAAKI,WAAW;AAChC/C,oBAAkB6C,KAAKH,GAAG,YAAY,+DAA+D,KAAKpB,MAAM0B,SAAS,KAAK;AAC9H9C,oBAAkB4C,QAAQG,YAAYH,SAASJ,GAAG,YAAY,KAAKpB,MAAM4B,QAAOR,MAAK;GACnF,MAAMC,QAAQ7B,eAAeA,aAAaC,cAAc,GAAG6B,UAAU,KAAK;GAE1E,MAAMQ,KADUT,KAAK9B;AAErBZ,qBAAkBmD,IAAIV,GAAG,YAAY,KAAKpB,MAAM4B,MAAM;AACtD,UAAOP;IACP;AACF,SAAOA"}
@@ -7,7 +7,7 @@ declare class Clipboard extends ZagComponent {
7
7
  copied: boolean;
8
8
  createMachine(_props: any): any;
9
9
  getMachineProps(props: any): {
10
- id: any;
10
+ id: string;
11
11
  value: any;
12
12
  defaultValue: any;
13
13
  timeout: any;
@@ -26,7 +26,7 @@ declare class Clipboard extends ZagComponent {
26
26
  '[data-part="indicator-not-copied"]': (api: any) => any;
27
27
  };
28
28
  syncState(api: any): void;
29
- template(props: any): string;
29
+ template(props: any): any;
30
30
  }
31
31
  //#endregion
32
32
  export { Clipboard as default };
@@ -1,35 +1,40 @@
1
1
  import { t as ZagComponent } from "./zag-component.mjs";
2
- import { Component, GEA_ELEMENT, GEA_OBSERVE, GEA_ON_PROP_CHANGE, GEA_PATCH_COND, GEA_REGISTER_COND, GEA_RENDERED, GEA_SETUP_LOCAL_STATE_OBSERVERS, GEA_STORE_ROOT, geaCondPatchedSymbol, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
2
+ import { o as GEA_CREATE_TEMPLATE } from "./bind.mjs";
3
+ import { n as reactiveTextValue } from "./reactive-text.mjs";
4
+ import { t as reactiveClass } from "./reactive-class.mjs";
5
+ import { t as conditional } from "./conditional.mjs";
6
+ import { t as conditionalTruthy } from "./conditional-truthy.mjs";
3
7
  import { normalizeProps } from "@zag-js/vanilla";
4
8
  import * as clipboard from "@zag-js/clipboard";
5
9
  //#region src/components/clipboard.tsx
10
+ let _tpl0_root = null;
11
+ function _tpl0_create() {
12
+ const t = document.createElement("template");
13
+ t.innerHTML = "<div data-part=root><!--1--><div data-part=control class=\"clipboard-control flex gap-2\"><input data-part=input class=\"clipboard-input flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-xs\"><button data-part=trigger class=\"clipboard-trigger inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-xs hover:bg-accent\"><!--2-->";
14
+ return t.content.firstChild;
15
+ }
16
+ let _tpl1_root = null;
17
+ function _tpl1_create() {
18
+ const t = document.createElement("template");
19
+ t.innerHTML = "<label data-part=label class=\"clipboard-label text-sm font-medium mb-1 block\">0";
20
+ return t.content.firstChild;
21
+ }
22
+ let _tpl2_root = null;
23
+ function _tpl2_create() {
24
+ const t = document.createElement("template");
25
+ t.innerHTML = "<span data-part=indicator-copied>✓ Copied";
26
+ return t.content.firstChild;
27
+ }
28
+ let _tpl3_root = null;
29
+ function _tpl3_create() {
30
+ const t = document.createElement("template");
31
+ t.innerHTML = "<span data-part=indicator-not-copied>Copy";
32
+ return t.content.firstChild;
33
+ }
6
34
  var Clipboard = class extends ZagComponent {
7
- static {
8
- this.__geaTagName = "gea-clipboard";
9
- }
10
- constructor(...args) {
11
- super(...args);
35
+ constructor(..._args) {
36
+ super(..._args);
12
37
  this.copied = false;
13
- this.props;
14
- this[geaCondValueSymbol(0)] = !!this.copied;
15
- this[geaCondValueSymbol(1)] = !!this.props.label;
16
- this[GEA_REGISTER_COND](0, "c0", () => {
17
- this.props;
18
- return this.copied;
19
- }, () => {
20
- this.props;
21
- return `<span data-part="indicator-copied">✓ Copied</span>`;
22
- }, () => {
23
- this.props;
24
- return `<span data-part="indicator-not-copied">Copy</span>`;
25
- });
26
- this[GEA_REGISTER_COND](1, "c1", () => {
27
- this.props;
28
- return this.props.label;
29
- }, () => {
30
- this.props;
31
- return `<label data-part="label" class="clipboard-label text-sm font-medium mb-1 block">${geaEscapeHtml(String(this.props.label))}</label>`;
32
- }, null);
33
38
  }
34
39
  createMachine(_props) {
35
40
  return clipboard.machine;
@@ -63,35 +68,24 @@ var Clipboard = class extends ZagComponent {
63
68
  syncState(api) {
64
69
  this.copied = api.copied;
65
70
  }
66
- template(props) {
67
- const __id = this.id;
68
- Component._register(ZagComponent, "zag-component");
69
- return `<div id="${__id}" data-part="root"${(props.class || "") == null || (props.class || "") === false ? "" : ` class="${((props.class || "") != null ? String(props.class || "") : "").trim()}"`}><!--${__id + "-c1"}-->${props.label && `<label data-part="label" class="clipboard-label text-sm font-medium mb-1 block">${geaEscapeHtml(String(props.label))}</label>` || ""}<!--${__id + "-c1-end"}--><div data-part="control" class="clipboard-control flex gap-2"><input data-part="input" class="clipboard-input flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-xs" /><button data-part="trigger" class="clipboard-trigger inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-xs hover:bg-accent"><!--${__id + "-c0"}-->${(this.copied ? `<span data-part="indicator-copied">✓ Copied</span>` : `<span data-part="indicator-not-copied">Copy</span>`) || ""}<!--${__id + "-c0-end"}--></button></div></div>`;
70
- }
71
- [GEA_ON_PROP_CHANGE](key, value) {
72
- if (key === "class") {
73
- const __el = this[GEA_ELEMENT];
74
- this.props;
75
- const __boundValue = value || "";
76
- if (__el) {
77
- const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
78
- if (__el.className !== __newClass) __el.className = __newClass;
79
- }
80
- }
81
- this[GEA_PATCH_COND](0);
82
- if (key === "label") this[GEA_PATCH_COND](1);
83
- }
84
- __observe_local_copied(value, change) {
85
- if (this[GEA_RENDERED]) {
86
- if (!this[geaCondPatchedSymbol(0)]) {
87
- this[geaCondPatchedSymbol(0)] = this[GEA_PATCH_COND](0);
88
- if (this[geaCondPatchedSymbol(0)]) queueMicrotask(() => this[geaCondPatchedSymbol(0)] = false);
89
- }
90
- }
91
- }
92
- [GEA_SETUP_LOCAL_STATE_OBSERVERS]() {
93
- if (!this[GEA_STORE_ROOT]) return;
94
- this[GEA_OBSERVE](this, ["copied"], this.__observe_local_copied);
71
+ [GEA_CREATE_TEMPLATE](d) {
72
+ const root = (_tpl0_root || (_tpl0_root = _tpl0_create())).cloneNode(true);
73
+ const el0 = root;
74
+ const anchor1 = root.firstChild;
75
+ const anchor2 = root.childNodes[1].childNodes[1].firstChild;
76
+ reactiveClass(el0, d, this, () => this.props.class || "");
77
+ conditionalTruthy(anchor1.parentNode, anchor1, d, this, () => this.props.label, (d) => {
78
+ const root = (_tpl1_root || (_tpl1_root = _tpl1_create())).cloneNode(true);
79
+ const t0 = root.firstChild;
80
+ reactiveTextValue(t0, d, this, () => this.props.label);
81
+ return root;
82
+ });
83
+ conditional(anchor2.parentNode, anchor2, d, this, () => this.copied, (d) => {
84
+ return (_tpl2_root || (_tpl2_root = _tpl2_create())).cloneNode(true);
85
+ }, (d) => {
86
+ return (_tpl3_root || (_tpl3_root = _tpl3_create())).cloneNode(true);
87
+ });
88
+ return root;
95
89
  }
96
90
  };
97
91
  //#endregion