@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.
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 +169 -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 +390 -261
  32. package/dist/combobox.mjs.map +1 -1
  33. package/dist/compiled-component.mjs +121 -0
  34. package/dist/compiled-component.mjs.map +1 -0
  35. package/dist/compiled-reactive-component.mjs +435 -0
  36. package/dist/compiled-reactive-component.mjs.map +1 -0
  37. package/dist/component-id.mjs +21 -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 +65 -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 +424 -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 +405 -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 +31 -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 +538 -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 +54 -0
  120. package/dist/reactive-class.mjs.map +1 -0
  121. package/dist/reactive-style.mjs +24 -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 +26 -3
  164. package/dist/zag-component.mjs +73 -17
  165. package/dist/zag-component.mjs.map +1 -1
  166. package/package.json +4 -3
  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
@@ -1 +1 @@
1
- {"version":3,"file":"button.mjs","names":["Component","GEA_ELEMENT","GEA_ON_PROP_CHANGE","GEA_PATCH_NODE","GEA_INSTANTIATE_CHILD_COMPONENTS","GEA_MOUNT_COMPILED_CHILD_COMPONENTS","MouseEventHandler","ReactNode","cn","ButtonVariant","ButtonSize","ButtonProps","variant","size","type","disabled","class","click","HTMLButtonElement","onClick","children","variants","Record","default","destructive","outline","secondary","ghost","link","sizes","sm","lg","icon","Button","__geaTagName","template","props","__id","id","String","trim","events","__evts","__geaEvtsResult","__event_click_0","e","targetComponent","handleClick","key","value","__el","__boundValue","__newClass","replace","className","__av","removeAttribute","__newAttr","getAttribute","setAttribute","__tw","document","createElement","innerHTML","__newEl","content","firstElementChild","__existEl","childNodes","length","constructor","parentComponent"],"sources":["../src/components/button.tsx"],"sourcesContent":["import { Component } from '@geajs/core'\nimport type { MouseEventHandler, ReactNode } from 'react'\nimport { cn } from '../utils/cn'\n\nexport type ButtonVariant = 'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link'\nexport type ButtonSize = 'default' | 'sm' | 'lg' | 'icon'\n\nexport interface ButtonProps {\n variant?: ButtonVariant | (string & {})\n size?: ButtonSize | (string & {})\n type?: 'button' | 'submit' | 'reset'\n disabled?: boolean\n class?: string\n click?: MouseEventHandler<HTMLButtonElement>\n onClick?: MouseEventHandler<HTMLButtonElement>\n children?: ReactNode\n}\n\nconst variants: Record<string, string> = {\n default: 'bg-primary text-primary-foreground shadow-xs hover:bg-primary/90',\n destructive: 'bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90',\n outline: 'border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground',\n secondary: 'bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80',\n ghost: 'hover:bg-accent hover:text-accent-foreground',\n link: 'text-primary underline-offset-4 hover:underline',\n}\n\nconst sizes: Record<string, string> = {\n default: 'h-9 px-4 py-2',\n sm: 'h-8 rounded-md px-3 text-xs',\n lg: 'h-10 rounded-md px-8',\n icon: 'h-9 w-9',\n}\n\nexport default class Button extends Component<ButtonProps> {\n template(props: ButtonProps) {\n const variant = variants[props.variant || 'default'] || variants.default\n const size = sizes[props.size || 'default'] || sizes.default\n const handleClick = props.click || props.onClick\n\n return (\n <button\n class={cn(\n 'inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50',\n variant,\n size,\n props.class,\n )}\n type={props.type || 'button'}\n disabled={props.disabled}\n click={(e: any) => handleClick?.(e)}\n >\n {props.children}\n </button>\n )\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"button.mjs","names":["GEA_CREATE_TEMPLATE","reactiveClass","reactiveAttr","reactiveBoolAttr","reactiveText","delegateEvent","CompiledComponent","Component","JSXNode","MouseEventHandler","cn","ButtonVariant","ButtonSize","ButtonProps","variant","size","type","disabled","class","click","HTMLButtonElement","onClick","children","variants","Record","default","destructive","outline","secondary","ghost","link","sizes","sm","lg","icon","_tpl0_create","e","document","createElement","textContent","Button","d","props","handleClick","root","el0","el1","el2","evt3","marker4","firstChild","h3","t4"],"sources":["../src/components/button.tsx"],"sourcesContent":["import { Component } from '@geajs/core'\nimport type { JSXNode, MouseEventHandler } from '../types'\nimport { cn } from '../utils/cn'\n\nexport type ButtonVariant = 'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link'\nexport type ButtonSize = 'default' | 'sm' | 'lg' | 'icon'\n\nexport interface ButtonProps {\n variant?: ButtonVariant | (string & {})\n size?: ButtonSize | (string & {})\n type?: 'button' | 'submit' | 'reset'\n disabled?: boolean\n class?: string\n click?: MouseEventHandler<HTMLButtonElement>\n onClick?: MouseEventHandler<HTMLButtonElement>\n children?: JSXNode\n}\n\nconst variants: Record<string, string> = {\n default: 'bg-primary text-primary-foreground shadow-xs hover:bg-primary/90',\n destructive: 'bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90',\n outline: 'border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground',\n secondary: 'bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80',\n ghost: 'hover:bg-accent hover:text-accent-foreground',\n link: 'text-primary underline-offset-4 hover:underline',\n}\n\nconst sizes: Record<string, string> = {\n default: 'h-9 px-4 py-2',\n sm: 'h-8 rounded-md px-3 text-xs',\n lg: 'h-10 rounded-md px-8',\n icon: 'h-9 w-9',\n}\n\nexport default class Button extends Component<ButtonProps> {\n template(props: ButtonProps) {\n const variant = variants[props.variant || 'default'] || variants.default\n const size = sizes[props.size || 'default'] || sizes.default\n const handleClick = props.click || props.onClick\n\n return (\n <button\n class={cn(\n 'inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50',\n variant,\n size,\n props.class,\n )}\n type={props.type || 'button'}\n disabled={props.disabled}\n click={(e: any) => handleClick?.(e)}\n >\n {props.children}\n </button>\n )\n }\n}\n"],"mappings":";;;;;;;;AAgBA,MAAMuB,WAAmC;CACvCE,SAAS;CACTC,aAAa;CACbC,SAAS;CACTC,WAAW;CACXC,OAAO;CACPC,MAAM;CACP;AACD,MAAMC,QAAgC;CACpCN,SAAS;CACTO,IAAI;CACJC,IAAI;CACJC,MAAM;CACP;AACD,SAASC,eAAe;CACtB,MAAMC,IAAIC,SAASC,cAAc,SAAS;AAC1CF,GAAEG,cAAc;AAChB,QAAOH;;AAET,IAAqBI,SAArB,cAAoClC,kBAA+B;CACjE,CAACN,qBAAqByC,GAAG;AACPlB,WAAS,KAAKmB,MAAM5B,WAAW,cAAcS,SAASE;AACzDM,QAAM,KAAKW,MAAM3B,QAAQ,cAAcgB,MAAMN;AACtC,OAAKiB,MAAMvB,SAAS,KAAKuB,MAAMrB;EACnD,MAAMuB,OAAOT,cAAc;EAC3B,MAAMU,MAAMD;EACZ,MAAME,MAAMD;EACZ,MAAME,MAAMF;EACZ,MAAMG,OAAOH;EACb,MAAMI,UAAUL,KAAKM;AACrBjD,gBAAc4C,KAAKJ,GAAG,aAAkBlB,SAASE,SAAcM,MAAMN,SAASf,GAAG,+OAA+Oa,SAAS,KAAKmB,MAAM5B,WAAW,cAAcS,SAASE,SAASM,MAAM,KAAKW,MAAM3B,QAAQ,cAAcgB,MAAMN,SAAS,KAAKiB,MAAMxB,MAAM,EAAE;AACxchB,eAAa4C,KAAKL,GAAG,MAAM,cAAc,KAAKC,MAAM1B,QAAQ,SAAS;AACrEb,mBAAiB4C,KAAKN,GAAG,MAAM,kBAAkB,KAAKC,MAAMzB,SAAS;EACrE,MAAMkC,MAAMf,OAAY,KAAKM,MAAMvB,SAAS,KAAKuB,MAAMrB,WAAWe,EAAE;AAEpEhC,eAAagD,SAAIX,GAAG,YAAY,KAAKC,MAAMpB,SAAS;AACpDjB,gBAAcuC,MAAM,SAAS,CAAC,CAACI,MAAMG,GAAG,CAAC,EAAEV,EAAE;AAC7C,SAAOG"}
package/dist/card.d.mts CHANGED
@@ -2,22 +2,22 @@ import { Component } from "@geajs/core";
2
2
 
3
3
  //#region src/components/card.d.ts
4
4
  declare class Card extends Component {
5
- template(props: any): string;
5
+ template(props: any): any;
6
6
  }
7
7
  declare class CardHeader extends Component {
8
- template(props: any): string;
8
+ template(props: any): any;
9
9
  }
10
10
  declare class CardTitle extends Component {
11
- template(props: any): string;
11
+ template(props: any): any;
12
12
  }
13
13
  declare class CardDescription extends Component {
14
- template(props: any): string;
14
+ template(props: any): any;
15
15
  }
16
16
  declare class CardContent extends Component {
17
- template(props: any): string;
17
+ template(props: any): any;
18
18
  }
19
19
  declare class CardFooter extends Component {
20
- template(props: any): string;
20
+ template(props: any): any;
21
21
  }
22
22
  //#endregion
23
23
  export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
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 };