@geajs/ui 0.1.4 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/README.md +14 -19
  2. package/dist/accordion.d.mts +34 -0
  3. package/dist/accordion.mjs +167 -0
  4. package/dist/accordion.mjs.map +1 -0
  5. package/dist/alert.d.mts +15 -0
  6. package/dist/alert.mjs +101 -0
  7. package/dist/alert.mjs.map +1 -0
  8. package/dist/avatar.d.mts +26 -0
  9. package/dist/avatar.mjs +97 -0
  10. package/dist/avatar.mjs.map +1 -0
  11. package/dist/badge.d.mts +9 -0
  12. package/dist/badge.mjs +49 -0
  13. package/dist/badge.mjs.map +1 -0
  14. package/dist/button.d.mts +21 -0
  15. package/dist/button.mjs +96 -0
  16. package/dist/button.mjs.map +1 -0
  17. package/dist/card.d.mts +24 -0
  18. package/dist/card.mjs +169 -0
  19. package/dist/card.mjs.map +1 -0
  20. package/dist/checkbox.d.mts +37 -0
  21. package/dist/checkbox.mjs +80 -0
  22. package/dist/checkbox.mjs.map +1 -0
  23. package/dist/clipboard.d.mts +33 -0
  24. package/dist/clipboard.mjs +100 -0
  25. package/dist/clipboard.mjs.map +1 -0
  26. package/dist/cn.mjs +10 -0
  27. package/dist/cn.mjs.map +1 -0
  28. package/dist/collapsible.d.mts +29 -0
  29. package/dist/collapsible.mjs +77 -0
  30. package/dist/collapsible.mjs.map +1 -0
  31. package/dist/combobox.d.mts +67 -0
  32. package/dist/combobox.mjs +375 -0
  33. package/dist/combobox.mjs.map +1 -0
  34. package/dist/dialog.d.mts +57 -0
  35. package/dist/dialog.mjs +139 -0
  36. package/dist/dialog.mjs.map +1 -0
  37. package/dist/dnd-manager.d.mts +67 -0
  38. package/dist/dnd-manager.mjs +387 -0
  39. package/dist/dnd-manager.mjs.map +1 -0
  40. package/dist/drag-drop-context.d.mts +11 -0
  41. package/dist/drag-drop-context.mjs +43 -0
  42. package/dist/drag-drop-context.mjs.map +1 -0
  43. package/dist/draggable.d.mts +11 -0
  44. package/dist/draggable.mjs +72 -0
  45. package/dist/draggable.mjs.map +1 -0
  46. package/dist/droppable.d.mts +14 -0
  47. package/dist/droppable.mjs +66 -0
  48. package/dist/droppable.mjs.map +1 -0
  49. package/dist/file-upload.d.mts +38 -0
  50. package/dist/file-upload.mjs +170 -0
  51. package/dist/file-upload.mjs.map +1 -0
  52. package/dist/hover-card.d.mts +33 -0
  53. package/dist/hover-card.mjs +92 -0
  54. package/dist/hover-card.mjs.map +1 -0
  55. package/dist/index.d.mts +41 -1068
  56. package/dist/index.mjs +41 -4332
  57. package/dist/input.d.mts +9 -0
  58. package/dist/input.mjs +82 -0
  59. package/dist/input.mjs.map +1 -0
  60. package/dist/label.d.mts +9 -0
  61. package/dist/label.mjs +42 -0
  62. package/dist/label.mjs.map +1 -0
  63. package/dist/menu.d.mts +36 -0
  64. package/dist/menu.mjs +88 -0
  65. package/dist/menu.mjs.map +1 -0
  66. package/dist/number-input.d.mts +46 -0
  67. package/dist/number-input.mjs +89 -0
  68. package/dist/number-input.mjs.map +1 -0
  69. package/dist/pagination.d.mts +37 -0
  70. package/dist/pagination.mjs +97 -0
  71. package/dist/pagination.mjs.map +1 -0
  72. package/dist/pin-input.d.mts +45 -0
  73. package/dist/pin-input.mjs +147 -0
  74. package/dist/pin-input.mjs.map +1 -0
  75. package/dist/popover.d.mts +39 -0
  76. package/dist/popover.mjs +109 -0
  77. package/dist/popover.mjs.map +1 -0
  78. package/dist/progress.d.mts +34 -0
  79. package/dist/progress.mjs +86 -0
  80. package/dist/progress.mjs.map +1 -0
  81. package/dist/radio-group.d.mts +37 -0
  82. package/dist/radio-group.mjs +184 -0
  83. package/dist/radio-group.mjs.map +1 -0
  84. package/dist/rating-group.d.mts +38 -0
  85. package/dist/rating-group.mjs +171 -0
  86. package/dist/rating-group.mjs.map +1 -0
  87. package/dist/select.d.mts +54 -0
  88. package/dist/select.mjs +277 -0
  89. package/dist/select.mjs.map +1 -0
  90. package/dist/separator.d.mts +9 -0
  91. package/dist/separator.mjs +49 -0
  92. package/dist/separator.mjs.map +1 -0
  93. package/dist/skeleton.d.mts +9 -0
  94. package/dist/skeleton.mjs +43 -0
  95. package/dist/skeleton.mjs.map +1 -0
  96. package/dist/slider.d.mts +44 -0
  97. package/dist/slider.mjs +117 -0
  98. package/dist/slider.mjs.map +1 -0
  99. package/dist/switch.d.mts +37 -0
  100. package/dist/switch.mjs +80 -0
  101. package/dist/switch.mjs.map +1 -0
  102. package/dist/tabs.d.mts +36 -0
  103. package/dist/tabs.mjs +197 -0
  104. package/dist/tabs.mjs.map +1 -0
  105. package/dist/tags-input.d.mts +48 -0
  106. package/dist/tags-input.mjs +267 -0
  107. package/dist/tags-input.mjs.map +1 -0
  108. package/dist/textarea.d.mts +9 -0
  109. package/dist/textarea.mjs +73 -0
  110. package/dist/textarea.mjs.map +1 -0
  111. package/dist/toast.d.mts +33 -0
  112. package/dist/toast.mjs +213 -0
  113. package/dist/toast.mjs.map +1 -0
  114. package/dist/toggle-group.d.mts +32 -0
  115. package/dist/toggle-group.mjs +124 -0
  116. package/dist/toggle-group.mjs.map +1 -0
  117. package/dist/tooltip.d.mts +39 -0
  118. package/dist/tooltip.mjs +85 -0
  119. package/dist/tooltip.mjs.map +1 -0
  120. package/dist/tree-view.d.mts +35 -0
  121. package/dist/tree-view.mjs +94 -0
  122. package/dist/tree-view.mjs.map +1 -0
  123. package/dist/zag-component.d.mts +40 -0
  124. package/dist/zag-component.mjs +135 -0
  125. package/dist/zag-component.mjs.map +1 -0
  126. package/package.json +8 -8
  127. package/dist/index.mjs.map +0 -1
@@ -0,0 +1,96 @@
1
+ import { t as cn } from "./cn.mjs";
2
+ import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT } from "@geajs/core";
3
+ //#region src/components/button.tsx
4
+ const variants = {
5
+ default: "bg-primary text-primary-foreground shadow-sm hover:bg-primary/90",
6
+ destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
7
+ outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
8
+ secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
9
+ ghost: "hover:bg-accent hover:text-accent-foreground",
10
+ link: "text-primary underline-offset-4 hover:underline"
11
+ };
12
+ const sizes = {
13
+ default: "h-9 px-4 py-2",
14
+ sm: "h-8 rounded-md px-3 text-xs",
15
+ lg: "h-10 rounded-md px-8",
16
+ icon: "h-9 w-9"
17
+ };
18
+ var Button = class extends Component {
19
+ static {
20
+ this[GEA_CTOR_TAG_NAME] = "gea-button";
21
+ }
22
+ template(props) {
23
+ const __id = this.id;
24
+ const variant = variants[props.variant || "default"] || variants.default;
25
+ const size = sizes[props.size || "default"] || sizes.default;
26
+ return `<button id="${__id}"${cn("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50", variant, size, props.class) == null || cn("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50", variant, size, props.class) === false ? "" : ` class="${(cn("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50", variant, size, props.class) != null ? String(cn("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50", variant, size, props.class)) : "").trim()}"`}${(props.type || "button") == null || (props.type || "button") === false ? "" : ` type="${props.type || "button"}"`}${props.disabled == null || props.disabled === false ? "" : ` disabled="${props.disabled}"`}>${props.children}</button>`;
27
+ }
28
+ get events() {
29
+ if (this.__evts && this[GEA_ELEMENT]) return this.__evts;
30
+ const __geaEvtsResult = { click: { [`#${this.id}`]: (e, targetComponent) => this.__event_click_0(e, targetComponent) } };
31
+ if (this[GEA_ELEMENT]) this.__evts = __geaEvtsResult;
32
+ return __geaEvtsResult;
33
+ }
34
+ __event_click_0(e, targetComponent) {
35
+ (this.props.click || this.props.onClick)?.(e);
36
+ }
37
+ __onPropChange(key, value) {
38
+ if (key === "variant") {
39
+ const __el = this[GEA_ELEMENT];
40
+ const props = this.props;
41
+ const __boundValue = cn("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50", variants[props.variant || "default"] || variants.default, sizes[props.size || "default"] || sizes.default, this.props.class);
42
+ if (__el) {
43
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
44
+ if (__el.className !== __newClass) __el.className = __newClass;
45
+ }
46
+ }
47
+ if (key === "size") {
48
+ const __el = this[GEA_ELEMENT];
49
+ const props = this.props;
50
+ const __boundValue = cn("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50", variants[props.variant || "default"] || variants.default, sizes[props.size || "default"] || sizes.default, this.props.class);
51
+ if (__el) {
52
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
53
+ if (__el.className !== __newClass) __el.className = __newClass;
54
+ }
55
+ }
56
+ if (key === "class") {
57
+ const __el = this[GEA_ELEMENT];
58
+ const props = this.props;
59
+ const __boundValue = cn("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50", variants[props.variant || "default"] || variants.default, sizes[props.size || "default"] || sizes.default, value);
60
+ if (__el) {
61
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
62
+ if (__el.className !== __newClass) __el.className = __newClass;
63
+ }
64
+ }
65
+ if (key === "type") {
66
+ const __el = this[GEA_ELEMENT];
67
+ this.props;
68
+ const __boundValue = value || "button";
69
+ if (__el) if (__boundValue === null || __boundValue === void 0) __el.removeAttribute("type");
70
+ else {
71
+ const __newAttr = String(__boundValue);
72
+ if (__el.getAttribute("type") !== __newAttr) __el.setAttribute("type", __newAttr);
73
+ }
74
+ }
75
+ if (key === "disabled") {
76
+ const __el = this[GEA_ELEMENT];
77
+ if (__el) if (!value) __el.removeAttribute("disabled");
78
+ else {
79
+ const __newAttr = "";
80
+ if (__el.getAttribute("disabled") !== __newAttr) __el.setAttribute("disabled", __newAttr);
81
+ }
82
+ }
83
+ if (key === "children") {
84
+ const __el = this[GEA_ELEMENT];
85
+ if (__el && __el.innerHTML !== value) {
86
+ __el.innerHTML = value;
87
+ this.instantiateChildComponents_();
88
+ if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
89
+ }
90
+ }
91
+ }
92
+ };
93
+ //#endregion
94
+ export { Button as default };
95
+
96
+ //# sourceMappingURL=button.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.mjs","names":["Component","GEA_RENDERED","GEA_ELEMENT","GEA_MAPS","GEA_CONDS","GEA_RESET_ELS","GEA_OBSERVE","GEA_OBSERVE_LIST","GEA_EL","GEA_UPDATE_TEXT","GEA_REQUEST_RENDER","GEA_UPDATE_PROPS","GEA_SYNC_MAP","GEA_REGISTER_MAP","GEA_PATCH_COND","GEA_REGISTER_COND","GEA_REFRESH_LIST","GEA_RECONCILE_LIST","GEA_ENSURE_ARRAY_CONFIGS","GEA_APPLY_LIST_CHANGES","GEA_SWAP_CHILD","GEA_SWAP_STATE_CHILDREN","GEA_CHILD","GEA_LIST_CONFIG_REFRESHING","GEA_DOM_KEY","GEA_DOM_ITEM","GEA_DOM_PROPS","GEA_MAP_CONFIG_TPL","GEA_MAP_CONFIG_PREV","GEA_MAP_CONFIG_COUNT","geaCondPatchedSymbol","geaCondValueSymbol","geaObservePrevSymbol","geaPrevGuardSymbol","GEA_SETUP_LOCAL_STATE_OBSERVERS","geaSanitizeAttr","geaEscapeHtml","GEA_CTOR_TAG_NAME","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","template","props","__id","id","String","trim","events","__evts","__geaEvtsResult","e","targetComponent","__event_click_0","handleClick","__onPropChange","key","value","__el","__boundValue","__newClass","className","undefined","removeAttribute","__newAttr","getAttribute","setAttribute","innerHTML","instantiateChildComponents_","parentComponent","mountCompiledChildComponents_"],"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-sm hover:bg-primary/90',\n destructive: 'bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90',\n outline: 'border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground',\n secondary: 'bg-secondary text-secondary-foreground shadow-sm 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-none 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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"}
@@ -0,0 +1,24 @@
1
+ import { Component } from "@geajs/core";
2
+
3
+ //#region src/components/card.d.ts
4
+ declare class Card extends Component {
5
+ template(props: any): string;
6
+ }
7
+ declare class CardHeader extends Component {
8
+ template(props: any): string;
9
+ }
10
+ declare class CardTitle extends Component {
11
+ template(props: any): string;
12
+ }
13
+ declare class CardDescription extends Component {
14
+ template(props: any): string;
15
+ }
16
+ declare class CardContent extends Component {
17
+ template(props: any): string;
18
+ }
19
+ declare class CardFooter extends Component {
20
+ template(props: any): string;
21
+ }
22
+ //#endregion
23
+ export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
24
+ //# sourceMappingURL=card.d.mts.map
package/dist/card.mjs ADDED
@@ -0,0 +1,169 @@
1
+ import { t as cn } from "./cn.mjs";
2
+ import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT } from "@geajs/core";
3
+ //#region src/components/card.tsx
4
+ var Card = class extends Component {
5
+ static {
6
+ this[GEA_CTOR_TAG_NAME] = "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
+ __onPropChange(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 = (__boundValue != null ? String(__boundValue) : "").trim();
18
+ if (__el.className !== __newClass) __el.className = __newClass;
19
+ }
20
+ }
21
+ if (key === "children") {
22
+ const __el = this[GEA_ELEMENT];
23
+ if (__el && __el.innerHTML !== value) {
24
+ __el.innerHTML = value;
25
+ this.instantiateChildComponents_();
26
+ if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
27
+ }
28
+ }
29
+ }
30
+ };
31
+ var CardHeader = class extends Component {
32
+ static {
33
+ this[GEA_CTOR_TAG_NAME] = "card-header";
34
+ }
35
+ template(props) {
36
+ 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>`;
37
+ }
38
+ __onPropChange(key, value) {
39
+ if (key === "class") {
40
+ const __el = this[GEA_ELEMENT];
41
+ this.props;
42
+ const __boundValue = cn("flex flex-col space-y-1.5 p-6", value);
43
+ if (__el) {
44
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
45
+ if (__el.className !== __newClass) __el.className = __newClass;
46
+ }
47
+ }
48
+ if (key === "children") {
49
+ const __el = this[GEA_ELEMENT];
50
+ if (__el && __el.innerHTML !== value) {
51
+ __el.innerHTML = value;
52
+ this.instantiateChildComponents_();
53
+ if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
54
+ }
55
+ }
56
+ }
57
+ };
58
+ var CardTitle = class extends Component {
59
+ static {
60
+ this[GEA_CTOR_TAG_NAME] = "card-title";
61
+ }
62
+ template(props) {
63
+ 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>`;
64
+ }
65
+ __onPropChange(key, value) {
66
+ if (key === "class") {
67
+ const __el = this[GEA_ELEMENT];
68
+ this.props;
69
+ const __boundValue = cn("font-semibold leading-none tracking-tight", value);
70
+ if (__el) {
71
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
72
+ if (__el.className !== __newClass) __el.className = __newClass;
73
+ }
74
+ }
75
+ if (key === "children") {
76
+ const __el = this[GEA_ELEMENT];
77
+ if (__el && __el.innerHTML !== value) {
78
+ __el.innerHTML = value;
79
+ this.instantiateChildComponents_();
80
+ if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
81
+ }
82
+ }
83
+ }
84
+ };
85
+ var CardDescription = class extends Component {
86
+ static {
87
+ this[GEA_CTOR_TAG_NAME] = "card-description";
88
+ }
89
+ template(props) {
90
+ 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>`;
91
+ }
92
+ __onPropChange(key, value) {
93
+ if (key === "class") {
94
+ const __el = this[GEA_ELEMENT];
95
+ this.props;
96
+ const __boundValue = cn("text-sm text-muted-foreground", value);
97
+ if (__el) {
98
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
99
+ if (__el.className !== __newClass) __el.className = __newClass;
100
+ }
101
+ }
102
+ if (key === "children") {
103
+ const __el = this[GEA_ELEMENT];
104
+ if (__el && __el.innerHTML !== value) {
105
+ __el.innerHTML = value;
106
+ this.instantiateChildComponents_();
107
+ if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
108
+ }
109
+ }
110
+ }
111
+ };
112
+ var CardContent = class extends Component {
113
+ static {
114
+ this[GEA_CTOR_TAG_NAME] = "card-content";
115
+ }
116
+ template(props) {
117
+ 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>`;
118
+ }
119
+ __onPropChange(key, value) {
120
+ if (key === "class") {
121
+ const __el = this[GEA_ELEMENT];
122
+ this.props;
123
+ const __boundValue = cn("p-6 pt-0", value);
124
+ if (__el) {
125
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
126
+ if (__el.className !== __newClass) __el.className = __newClass;
127
+ }
128
+ }
129
+ if (key === "children") {
130
+ const __el = this[GEA_ELEMENT];
131
+ if (__el && __el.innerHTML !== value) {
132
+ __el.innerHTML = value;
133
+ this.instantiateChildComponents_();
134
+ if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
135
+ }
136
+ }
137
+ }
138
+ };
139
+ var CardFooter = class extends Component {
140
+ static {
141
+ this[GEA_CTOR_TAG_NAME] = "card-footer";
142
+ }
143
+ template(props) {
144
+ 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>`;
145
+ }
146
+ __onPropChange(key, value) {
147
+ if (key === "class") {
148
+ const __el = this[GEA_ELEMENT];
149
+ this.props;
150
+ const __boundValue = cn("flex items-center p-6 pt-0", value);
151
+ if (__el) {
152
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
153
+ if (__el.className !== __newClass) __el.className = __newClass;
154
+ }
155
+ }
156
+ if (key === "children") {
157
+ const __el = this[GEA_ELEMENT];
158
+ if (__el && __el.innerHTML !== value) {
159
+ __el.innerHTML = value;
160
+ this.instantiateChildComponents_();
161
+ if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
162
+ }
163
+ }
164
+ }
165
+ };
166
+ //#endregion
167
+ export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
168
+
169
+ //# sourceMappingURL=card.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.mjs","names":["Component","GEA_RENDERED","GEA_ELEMENT","GEA_MAPS","GEA_CONDS","GEA_RESET_ELS","GEA_OBSERVE","GEA_OBSERVE_LIST","GEA_EL","GEA_UPDATE_TEXT","GEA_REQUEST_RENDER","GEA_UPDATE_PROPS","GEA_SYNC_MAP","GEA_REGISTER_MAP","GEA_PATCH_COND","GEA_REGISTER_COND","GEA_REFRESH_LIST","GEA_RECONCILE_LIST","GEA_ENSURE_ARRAY_CONFIGS","GEA_APPLY_LIST_CHANGES","GEA_SWAP_CHILD","GEA_SWAP_STATE_CHILDREN","GEA_CHILD","GEA_LIST_CONFIG_REFRESHING","GEA_DOM_KEY","GEA_DOM_ITEM","GEA_DOM_PROPS","GEA_MAP_CONFIG_TPL","GEA_MAP_CONFIG_PREV","GEA_MAP_CONFIG_COUNT","geaCondPatchedSymbol","geaCondValueSymbol","geaObservePrevSymbol","geaPrevGuardSymbol","GEA_SETUP_LOCAL_STATE_OBSERVERS","geaSanitizeAttr","geaEscapeHtml","GEA_CTOR_TAG_NAME","cn","Card","template","props","__id","id","class","String","trim","children","__onPropChange","key","value","__el","__boundValue","__newClass","className","innerHTML","instantiateChildComponents_","parentComponent","mountCompiledChildComponents_","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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"}
@@ -0,0 +1,37 @@
1
+ import { n as ZagComponent } from "./zag-component.mjs";
2
+ import * as checkbox from "@zag-js/checkbox";
3
+ import * as _$_zag_js_types0 from "@zag-js/types";
4
+
5
+ //#region src/components/checkbox.d.ts
6
+ declare class Checkbox extends ZagComponent {
7
+ checked: boolean | 'indeterminate';
8
+ createMachine(_props: any): any;
9
+ getMachineProps(props: any): {
10
+ id: any;
11
+ checked: any;
12
+ defaultChecked: any;
13
+ disabled: any;
14
+ invalid: any;
15
+ required: any;
16
+ readOnly: any;
17
+ name: any;
18
+ form: any;
19
+ value: any;
20
+ onCheckedChange: (details: checkbox.CheckedChangeDetails) => void;
21
+ };
22
+ connectApi(service: any): checkbox.Api<_$_zag_js_types0.PropTypes<{
23
+ [x: string]: any;
24
+ }>>;
25
+ getSpreadMap(): {
26
+ '[data-part="root"]': string;
27
+ '[data-part="label"]': string;
28
+ '[data-part="control"]': string;
29
+ '[data-part="indicator"]': string;
30
+ '[data-part="hidden-input"]': string;
31
+ };
32
+ syncState(api: any): void;
33
+ template(props: any): string;
34
+ }
35
+ //#endregion
36
+ export { Checkbox as default };
37
+ //# sourceMappingURL=checkbox.d.mts.map
@@ -0,0 +1,80 @@
1
+ import { t as ZagComponent } from "./zag-component.mjs";
2
+ import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT, GEA_PATCH_COND, GEA_REGISTER_COND, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
3
+ import { normalizeProps } from "@zag-js/vanilla";
4
+ import * as checkbox from "@zag-js/checkbox";
5
+ //#region src/components/checkbox.tsx
6
+ var Checkbox = class extends ZagComponent {
7
+ static {
8
+ this[GEA_CTOR_TAG_NAME] = "checkbox";
9
+ }
10
+ constructor(...args) {
11
+ super(...args);
12
+ 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
+ }
23
+ createMachine(_props) {
24
+ return checkbox.machine;
25
+ }
26
+ getMachineProps(props) {
27
+ return {
28
+ id: this.id,
29
+ checked: props.checked,
30
+ defaultChecked: props.defaultChecked,
31
+ disabled: props.disabled,
32
+ invalid: props.invalid,
33
+ required: props.required,
34
+ readOnly: props.readOnly,
35
+ name: props.name,
36
+ form: props.form,
37
+ value: props.value ?? "on",
38
+ onCheckedChange: (details) => {
39
+ this.checked = details.checked;
40
+ props.onCheckedChange?.(details);
41
+ }
42
+ };
43
+ }
44
+ connectApi(service) {
45
+ return checkbox.connect(service, normalizeProps);
46
+ }
47
+ getSpreadMap() {
48
+ return {
49
+ "[data-part=\"root\"]": "getRootProps",
50
+ "[data-part=\"label\"]": "getLabelProps",
51
+ "[data-part=\"control\"]": "getControlProps",
52
+ "[data-part=\"indicator\"]": "getIndicatorProps",
53
+ "[data-part=\"hidden-input\"]": "getHiddenInputProps"
54
+ };
55
+ }
56
+ syncState(api) {
57
+ this.checked = api.checkedState;
58
+ }
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-sm 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
+ __onPropChange(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 = (__boundValue != null ? String(__boundValue) : "").trim();
71
+ if (__el.className !== __newClass) __el.className = __newClass;
72
+ }
73
+ }
74
+ if (key === "label") this[GEA_PATCH_COND](0);
75
+ }
76
+ };
77
+ //#endregion
78
+ export { Checkbox as default };
79
+
80
+ //# sourceMappingURL=checkbox.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox.mjs","names":["checkbox","normalizeProps","ZagComponent","Checkbox","GEA_CTOR_TAG_NAME","constructor","args","props","geaCondValueSymbol","label","GEA_REGISTER_COND","geaEscapeHtml","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","Component","_register","class","trim","__onPropChange","key","__el","GEA_ELEMENT","__boundValue","__newClass","className","GEA_PATCH_COND"],"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-sm 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,IAAqBG,WAArB,cAAsCD,aAAa;;OAAAE,qBAAA;;CAHnDC,YAAsB,GAAGC,MAAI;AAAA,QAAA,GAAAA,KAAA;iBAIU;AA2ClB,OAAAC;AAAA,OAAAC,mBAAA,EAAA,IAAA,CAAA,CAAA,KAAAD,MA6BNE;AAAK,OAAAC,mBAAA,GAAA,YAAA;AA7BC,QAAAH;AAAA,UAAA,KAAAA,MA6BNE;WAAK;AA7BC,QAAAF;AAAA,UAAA,mFAAAI,cAAAC,OAAA,KAAAL,MA+BFE,MAAK,CAAA,CAAA;KAAA,KAAA;;CAxEtBK,cAAcC,QAAkB;AAC9B,SAAOf,SAASgB;;CAGlBC,gBAAgBV,OAAY;AAC1B,SAAO;GACLW,IAAI,KAAKA;GACTL,SAASN,MAAMM;GACfM,gBAAgBZ,MAAMY;GACtBC,UAAUb,MAAMa;GAChBC,SAASd,MAAMc;GACfC,UAAUf,MAAMe;GAChBC,UAAUhB,MAAMgB;GAChBC,MAAMjB,MAAMiB;GACZC,MAAMlB,MAAMkB;GACZC,OAAOnB,MAAMmB,SAAS;GACtBC,kBAAkBC,YAA2C;AAC3D,SAAKf,UAAUe,QAAQf;AACvBN,UAAMoB,kBAAkBC,QAAQ;;GAEnC;;CAGHE,WAAWC,SAAc;AACvB,SAAO/B,SAASgC,QAAQD,SAAS9B,eAAe;;CAGlDgC,eAAe;AACb,SAAO;GACL,wBAAsB;GACtB,yBAAuB;GACvB,2BAAyB;GACzB,6BAA2B;GAC3B,gCAA8B;GAC/B;;CAGHC,UAAUC,KAAU;AAClB,OAAKtB,UAAUsB,IAAIC;;CAGrBC,SAAS9B,OAAY;EAAA,MAAA+B,OAAA,KAAApB;AAAAqB,YAAAC,UAAAtC,cAAA,gBAAA;AACnB,SAAA,cAAAoC,KAAA,4BAGW,+DAA+D/B,MAAMkC,SAAS,KAAIC,MAAA,CAAA,qnBAAAJ,OAAA,MAAA,KAyBxF/B,MAAME,SAAK,mFAAAE,cAAAC,OAEPL,MAAME,MAAK,CAAA,CAAA,YAAA,GAAA,MAAA6B,OAAA,UAAA;;CA9ExBK,eAAsBC,KAAKlB,OAAK;AAAA,MAAAkB,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AA+CX,QAAAvC;GAAA,MAAAwC,eAAA,+DAAArB,SAIwE;AAAE,OAAAmB,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAAnC,OAAAmC,aAAA,GAAA,IAAAL,MAAA;AAAA,QAAAG,KAAAI,cAAAD,WAAAH,MAAAI,YAAAD;;;AAAA,MAAAJ,QAAA,QAAA,MAAAM,gBAAA,EAAA"}
@@ -0,0 +1,33 @@
1
+ import { n as ZagComponent } from "./zag-component.mjs";
2
+ import * as clipboard from "@zag-js/clipboard";
3
+ import * as _$_zag_js_types0 from "@zag-js/types";
4
+
5
+ //#region src/components/clipboard.d.ts
6
+ declare class Clipboard extends ZagComponent {
7
+ copied: boolean;
8
+ createMachine(_props: any): any;
9
+ getMachineProps(props: any): {
10
+ id: any;
11
+ value: any;
12
+ defaultValue: any;
13
+ timeout: any;
14
+ onStatusChange: (details: clipboard.CopyStatusDetails) => void;
15
+ };
16
+ connectApi(service: any): clipboard.Api<_$_zag_js_types0.PropTypes<{
17
+ [x: string]: any;
18
+ }>>;
19
+ getSpreadMap(): {
20
+ '[data-part="root"]': string;
21
+ '[data-part="label"]': string;
22
+ '[data-part="control"]': string;
23
+ '[data-part="trigger"]': string;
24
+ '[data-part="input"]': string;
25
+ '[data-part="indicator-copied"]': (api: any) => any;
26
+ '[data-part="indicator-not-copied"]': (api: any) => any;
27
+ };
28
+ syncState(api: any): void;
29
+ template(props: any): string;
30
+ }
31
+ //#endregion
32
+ export { Clipboard as default };
33
+ //# sourceMappingURL=clipboard.d.mts.map
@@ -0,0 +1,100 @@
1
+ import { t as ZagComponent } from "./zag-component.mjs";
2
+ import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT, GEA_OBSERVE, GEA_PATCH_COND, GEA_REGISTER_COND, GEA_RENDERED, GEA_SETUP_LOCAL_STATE_OBSERVERS, geaCondPatchedSymbol, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
3
+ import { normalizeProps } from "@zag-js/vanilla";
4
+ import * as clipboard from "@zag-js/clipboard";
5
+ //#region src/components/clipboard.tsx
6
+ var Clipboard = class extends ZagComponent {
7
+ static {
8
+ this[GEA_CTOR_TAG_NAME] = "clipboard";
9
+ }
10
+ constructor(...args) {
11
+ super(...args);
12
+ 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
+ }
34
+ createMachine(_props) {
35
+ return clipboard.machine;
36
+ }
37
+ getMachineProps(props) {
38
+ return {
39
+ id: this.id,
40
+ value: props.value,
41
+ defaultValue: props.defaultValue,
42
+ timeout: props.timeout ?? 2e3,
43
+ onStatusChange: (details) => {
44
+ this.copied = details.copied;
45
+ props.onStatusChange?.(details);
46
+ }
47
+ };
48
+ }
49
+ connectApi(service) {
50
+ return clipboard.connect(service, normalizeProps);
51
+ }
52
+ getSpreadMap() {
53
+ return {
54
+ "[data-part=\"root\"]": "getRootProps",
55
+ "[data-part=\"label\"]": "getLabelProps",
56
+ "[data-part=\"control\"]": "getControlProps",
57
+ "[data-part=\"trigger\"]": "getTriggerProps",
58
+ "[data-part=\"input\"]": "getInputProps",
59
+ "[data-part=\"indicator-copied\"]": (api) => api.getIndicatorProps({ copied: true }),
60
+ "[data-part=\"indicator-not-copied\"]": (api) => api.getIndicatorProps({ copied: false })
61
+ };
62
+ }
63
+ syncState(api) {
64
+ this.copied = api.copied;
65
+ }
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-sm" /><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-sm 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
+ __onPropChange(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 = (__boundValue != null ? String(__boundValue) : "").trim();
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)]) return;
87
+ this[geaCondPatchedSymbol(0)] = this[GEA_PATCH_COND](0);
88
+ if (this[geaCondPatchedSymbol(0)]) queueMicrotask(() => this[geaCondPatchedSymbol(0)] = false);
89
+ if (this[geaCondPatchedSymbol(0)]) return;
90
+ }
91
+ }
92
+ [GEA_SETUP_LOCAL_STATE_OBSERVERS]() {
93
+ if (!this.__store) return;
94
+ this[GEA_OBSERVE](this, ["copied"], this.__observe_local_copied);
95
+ }
96
+ };
97
+ //#endregion
98
+ export { Clipboard as default };
99
+
100
+ //# sourceMappingURL=clipboard.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clipboard.mjs","names":["clipboard","normalizeProps","ZagComponent","Clipboard","GEA_CTOR_TAG_NAME","constructor","args","props","geaCondValueSymbol","copied","label","GEA_REGISTER_COND","geaEscapeHtml","String","createMachine","_props","machine","getMachineProps","id","value","defaultValue","timeout","onStatusChange","details","CopyStatusDetails","connectApi","service","connect","getSpreadMap","api","getIndicatorProps","syncState","template","__id","Component","_register","class","trim","__onPropChange","key","__el","GEA_ELEMENT","__boundValue","__newClass","className","GEA_PATCH_COND","__observe_local_copied","change","GEA_RENDERED","geaCondPatchedSymbol","queueMicrotask","GEA_SETUP_LOCAL_STATE_OBSERVERS","__store","GEA_OBSERVE"],"sources":["../src/components/clipboard.tsx"],"sourcesContent":["import * as clipboard from '@zag-js/clipboard'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Clipboard extends ZagComponent {\n copied = false\n\n createMachine(_props: any): any {\n return clipboard.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n timeout: props.timeout ?? 2000,\n onStatusChange: (details: clipboard.CopyStatusDetails) => {\n this.copied = details.copied\n props.onStatusChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return clipboard.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=\"trigger\"]': 'getTriggerProps',\n '[data-part=\"input\"]': 'getInputProps',\n '[data-part=\"indicator-copied\"]': (api) => api.getIndicatorProps({ copied: true }),\n '[data-part=\"indicator-not-copied\"]': (api) => api.getIndicatorProps({ copied: false }),\n }\n }\n\n syncState(api: any) {\n this.copied = api.copied\n }\n\n template(props: any) {\n return (\n <div data-part=\"root\" class={props.class || ''}>\n {props.label && (\n <label data-part=\"label\" class=\"clipboard-label text-sm font-medium mb-1 block\">\n {props.label}\n </label>\n )}\n <div data-part=\"control\" class=\"clipboard-control flex gap-2\">\n <input\n data-part=\"input\"\n class=\"clipboard-input flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm\"\n />\n <button\n data-part=\"trigger\"\n class=\"clipboard-trigger inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-sm hover:bg-accent\"\n >\n {this.copied ? (\n <span data-part=\"indicator-copied\">&#x2713; Copied</span>\n ) : (\n <span data-part=\"indicator-not-copied\">Copy</span>\n )}\n </button>\n </div>\n </div>\n )\n }\n}\n"],"mappings":";;;;;AAIA,IAAqBG,YAArB,cAAuCD,aAAa;;OAAAE,qBAAA;;CAHpDC,YAAsB,GAAGC,MAAI;AAAA,QAAA,GAAAA,KAAA;gBAIlB;AAuCU,OAAAC;AAAA,OAAAC,mBAAA,EAAA,IAAA,CAAA,CAiBR,KAAKC;AAAM,OAAAD,mBAAA,EAAA,IAAA,CAAA,CAAA,KAAAD,MAdTG;AAAK,OAAAC,mBAAA,GAAA,YAAA;AAHC,QAAAJ;AAAA,UAiBR,KAAKE;WAAM;AAjBH,QAAAF;AAAA,UAAA;WAAA;AAAA,QAAAA;AAAA,UAAA;IAAA;AAAA,OAAAI,mBAAA,GAAA,YAAA;AAAA,QAAAJ;AAAA,UAAA,KAAAA,MAGNG;WAAK;AAHC,QAAAH;AAAA,UAAA,mFAAAK,cAAAC,OAAA,KAAAN,MAKFG,MAAK,CAAA,CAAA;KAAA,KAAA;;CA1CtBI,cAAcC,QAAkB;AAC9B,SAAOf,UAAUgB;;CAGnBC,gBAAgBV,OAAY;AAC1B,SAAO;GACLW,IAAI,KAAKA;GACTC,OAAOZ,MAAMY;GACbC,cAAcb,MAAMa;GACpBC,SAASd,MAAMc,WAAW;GAC1BC,iBAAiBC,YAAyC;AACxD,SAAKd,SAASc,QAAQd;AACtBF,UAAMe,iBAAiBC,QAAQ;;GAElC;;CAGHE,WAAWC,SAAc;AACvB,SAAO1B,UAAU2B,QAAQD,SAASzB,eAAe;;CAGnD2B,eAAe;AACb,SAAO;GACL,wBAAsB;GACtB,yBAAuB;GACvB,2BAAyB;GACzB,2BAAyB;GACzB,yBAAuB;GACvB,qCAAmCC,QAAQA,IAAIC,kBAAkB,EAAErB,QAAQ,MAAM,CAAC;GAClF,yCAAuCoB,QAAQA,IAAIC,kBAAkB,EAAErB,QAAQ,OAAO,CAAA;GACvF;;CAGHsB,UAAUF,KAAU;AAClB,OAAKpB,SAASoB,IAAIpB;;CAGpBuB,SAASzB,OAAY;EAAA,MAAA0B,OAAA,KAAAf;AAAAgB,YAAAC,UAAAjC,cAAA,gBAAA;AACnB,SAAA,YAAA+B,KAAA,qBAC+B1B,MAAM6B,SAAS,OAAE,SAAjB7B,MAAM6B,SAAS,QAAE,QAAA,KAAA,aAAjB7B,MAAM6B,SAAS,OAAE,OAAAvB,OAAjBN,MAAM6B,SAAS,GAAE,GAAA,IAAAC,MAAA,CAAA,GAAA,OAAAJ,OAAA,MAAA,KAC3C1B,MAAMG,SAAK,mFAAAE,cAAAC,OAEPN,MAAMG,MAAK,CAAA,CAAA,aAAA,GAAA,MAAAuB,OAAA,UAAA,0YAAAA,OAAA,MAAA,MAYX,KAAKxB,SAAM,uDAAA,yDAAA,GAAA,MAAAwB,OAAA,UAAA;;CA5DxBK,eAAsBC,KAAKpB,OAAK;AAAA,MAAAoB,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AA2CX,QAAAlC;GAAA,MAAAmC,eAAAvB,SAE6B;AAAE,OAAAqB,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAA7B,OAAA6B,aAAA,GAAA,IAAAL,MAAA;AAAA,QAAAG,KAAAI,cAAAD,WAAAH,MAAAI,YAAAD;;;AAAA,OAAAE,gBAAA,EAAA;AAAA,MAAAN,QAAA,QAAA,MAAAM,gBAAA,EAAA;;CA7CpDC,uBAAsB3B,OAAO4B,QAAQ;AAAA,MAAA,KAAAC,eAAA;AAAA,OAAA,KAAAC,qBAAA,EAAA,EAAA;AAAA,QAAAA,qBAAA,EAAA,IAAA,KAAAJ,gBAAA,EAAA;AAAA,OAAA,KAAAI,qBAAA,EAAA,EAAAC,sBAAA,KAAAD,qBAAA,EAAA,IAAA,MAAA;AAAA,OAAA,KAAAA,qBAAA,EAAA,EAAA;;;CAAE,CAAAE,mCAAA;AAAvC,MAAI,CAAA,KAAAC,QAA0B;AAAS,OAAAC,aAAA,MAAA,CAAA,SAAA,EAAA,KAAAP,uBAAA"}
package/dist/cn.mjs ADDED
@@ -0,0 +1,10 @@
1
+ import { clsx } from "clsx";
2
+ import { twMerge } from "tailwind-merge";
3
+ //#region src/utils/cn.ts
4
+ function cn(...inputs) {
5
+ return twMerge(clsx(inputs));
6
+ }
7
+ //#endregion
8
+ export { cn as t };
9
+
10
+ //# sourceMappingURL=cn.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cn.mjs","names":[],"sources":["../src/utils/cn.ts"],"sourcesContent":["import { clsx, type ClassValue } from 'clsx'\nimport { twMerge } from 'tailwind-merge'\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n"],"mappings":";;;AAGA,SAAgB,GAAG,GAAG,QAAsB;AAC1C,QAAO,QAAQ,KAAK,OAAO,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { n as ZagComponent } from "./zag-component.mjs";
2
+ import * as collapsible from "@zag-js/collapsible";
3
+ import * as _$_zag_js_types0 from "@zag-js/types";
4
+
5
+ //#region src/components/collapsible.d.ts
6
+ declare class Collapsible extends ZagComponent {
7
+ open: boolean;
8
+ createMachine(_props: any): any;
9
+ getMachineProps(props: any): {
10
+ id: any;
11
+ open: any;
12
+ defaultOpen: any;
13
+ disabled: any;
14
+ onOpenChange: (details: collapsible.OpenChangeDetails) => void;
15
+ };
16
+ connectApi(service: any): collapsible.Api<_$_zag_js_types0.PropTypes<{
17
+ [x: string]: any;
18
+ }>>;
19
+ getSpreadMap(): {
20
+ '[data-part="root"]': string;
21
+ '[data-part="trigger"]': string;
22
+ '[data-part="content"]': string;
23
+ };
24
+ syncState(api: any): void;
25
+ template(props: any): string;
26
+ }
27
+ //#endregion
28
+ export { Collapsible as default };
29
+ //# sourceMappingURL=collapsible.d.mts.map