@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.
- package/README.md +14 -19
- package/dist/accordion.d.mts +34 -0
- package/dist/accordion.mjs +167 -0
- package/dist/accordion.mjs.map +1 -0
- package/dist/alert.d.mts +15 -0
- package/dist/alert.mjs +101 -0
- package/dist/alert.mjs.map +1 -0
- package/dist/avatar.d.mts +26 -0
- package/dist/avatar.mjs +97 -0
- package/dist/avatar.mjs.map +1 -0
- package/dist/badge.d.mts +9 -0
- package/dist/badge.mjs +49 -0
- package/dist/badge.mjs.map +1 -0
- package/dist/button.d.mts +21 -0
- package/dist/button.mjs +96 -0
- package/dist/button.mjs.map +1 -0
- package/dist/card.d.mts +24 -0
- package/dist/card.mjs +169 -0
- package/dist/card.mjs.map +1 -0
- package/dist/checkbox.d.mts +37 -0
- package/dist/checkbox.mjs +80 -0
- package/dist/checkbox.mjs.map +1 -0
- package/dist/clipboard.d.mts +33 -0
- package/dist/clipboard.mjs +100 -0
- package/dist/clipboard.mjs.map +1 -0
- package/dist/cn.mjs +10 -0
- package/dist/cn.mjs.map +1 -0
- package/dist/collapsible.d.mts +29 -0
- package/dist/collapsible.mjs +77 -0
- package/dist/collapsible.mjs.map +1 -0
- package/dist/combobox.d.mts +67 -0
- package/dist/combobox.mjs +375 -0
- package/dist/combobox.mjs.map +1 -0
- package/dist/dialog.d.mts +57 -0
- package/dist/dialog.mjs +139 -0
- package/dist/dialog.mjs.map +1 -0
- package/dist/dnd-manager.d.mts +67 -0
- package/dist/dnd-manager.mjs +387 -0
- package/dist/dnd-manager.mjs.map +1 -0
- package/dist/drag-drop-context.d.mts +11 -0
- package/dist/drag-drop-context.mjs +43 -0
- package/dist/drag-drop-context.mjs.map +1 -0
- package/dist/draggable.d.mts +11 -0
- package/dist/draggable.mjs +72 -0
- package/dist/draggable.mjs.map +1 -0
- package/dist/droppable.d.mts +14 -0
- package/dist/droppable.mjs +66 -0
- package/dist/droppable.mjs.map +1 -0
- package/dist/file-upload.d.mts +38 -0
- package/dist/file-upload.mjs +170 -0
- package/dist/file-upload.mjs.map +1 -0
- package/dist/hover-card.d.mts +33 -0
- package/dist/hover-card.mjs +92 -0
- package/dist/hover-card.mjs.map +1 -0
- package/dist/index.d.mts +41 -1068
- package/dist/index.mjs +41 -4332
- package/dist/input.d.mts +9 -0
- package/dist/input.mjs +82 -0
- package/dist/input.mjs.map +1 -0
- package/dist/label.d.mts +9 -0
- package/dist/label.mjs +42 -0
- package/dist/label.mjs.map +1 -0
- package/dist/menu.d.mts +36 -0
- package/dist/menu.mjs +88 -0
- package/dist/menu.mjs.map +1 -0
- package/dist/number-input.d.mts +46 -0
- package/dist/number-input.mjs +89 -0
- package/dist/number-input.mjs.map +1 -0
- package/dist/pagination.d.mts +37 -0
- package/dist/pagination.mjs +97 -0
- package/dist/pagination.mjs.map +1 -0
- package/dist/pin-input.d.mts +45 -0
- package/dist/pin-input.mjs +147 -0
- package/dist/pin-input.mjs.map +1 -0
- package/dist/popover.d.mts +39 -0
- package/dist/popover.mjs +109 -0
- package/dist/popover.mjs.map +1 -0
- package/dist/progress.d.mts +34 -0
- package/dist/progress.mjs +86 -0
- package/dist/progress.mjs.map +1 -0
- package/dist/radio-group.d.mts +37 -0
- package/dist/radio-group.mjs +184 -0
- package/dist/radio-group.mjs.map +1 -0
- package/dist/rating-group.d.mts +38 -0
- package/dist/rating-group.mjs +171 -0
- package/dist/rating-group.mjs.map +1 -0
- package/dist/select.d.mts +54 -0
- package/dist/select.mjs +277 -0
- package/dist/select.mjs.map +1 -0
- package/dist/separator.d.mts +9 -0
- package/dist/separator.mjs +49 -0
- package/dist/separator.mjs.map +1 -0
- package/dist/skeleton.d.mts +9 -0
- package/dist/skeleton.mjs +43 -0
- package/dist/skeleton.mjs.map +1 -0
- package/dist/slider.d.mts +44 -0
- package/dist/slider.mjs +117 -0
- package/dist/slider.mjs.map +1 -0
- package/dist/switch.d.mts +37 -0
- package/dist/switch.mjs +80 -0
- package/dist/switch.mjs.map +1 -0
- package/dist/tabs.d.mts +36 -0
- package/dist/tabs.mjs +197 -0
- package/dist/tabs.mjs.map +1 -0
- package/dist/tags-input.d.mts +48 -0
- package/dist/tags-input.mjs +267 -0
- package/dist/tags-input.mjs.map +1 -0
- package/dist/textarea.d.mts +9 -0
- package/dist/textarea.mjs +73 -0
- package/dist/textarea.mjs.map +1 -0
- package/dist/toast.d.mts +33 -0
- package/dist/toast.mjs +213 -0
- package/dist/toast.mjs.map +1 -0
- package/dist/toggle-group.d.mts +32 -0
- package/dist/toggle-group.mjs +124 -0
- package/dist/toggle-group.mjs.map +1 -0
- package/dist/tooltip.d.mts +39 -0
- package/dist/tooltip.mjs +85 -0
- package/dist/tooltip.mjs.map +1 -0
- package/dist/tree-view.d.mts +35 -0
- package/dist/tree-view.mjs +94 -0
- package/dist/tree-view.mjs.map +1 -0
- package/dist/zag-component.d.mts +40 -0
- package/dist/zag-component.mjs +135 -0
- package/dist/zag-component.mjs.map +1 -0
- package/package.json +8 -8
- package/dist/index.mjs.map +0 -1
package/dist/button.mjs
ADDED
|
@@ -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":";;;AAkBA,MAAMqD,WAAmC;CACvCE,SAAS;CACTC,aAAa;CACbC,SAAS;CACTC,WAAW;CACXC,OAAO;CACPC,MAAM;CACP;AAED,MAAMC,QAAgC;CACpCN,SAAS;CACTO,IAAI;CACJC,IAAI;CACJC,MAAM;CACP;AAED,IAAqBC,SAArB,cAAoCjE,UAAuB;;OAAAqC,qBAAA;;CACzD6B,SAASC,OAAoB;EAAA,MAAAC,OAAA,KAAAC;EAC3B,MAAMzB,UAAUS,SAASc,MAAMvB,WAAW,cAAcS,SAASE;EACjE,MAAMV,OAAOgB,MAAMM,MAAMtB,QAAQ,cAAcgB,MAAMN;AAGrD,SAAA,eAAAa,KAAA,GAEW5B,GACL,6OACAI,SACAC,MACAsB,MAAMnB,MACP,IAAA,QALMR,GACL,6OACAI,SACAC,MACAsB,MAAMnB,MACP,KAAA,QAAA,KAAA,YALMR,GACL,6OACAI,SACAC,MACAsB,MAAMnB,MACP,IAAA,OAAAsB,OALM9B,GACL,6OACAI,SACAC,MACAsB,MAAMnB,MACP,CAAA,GAAA,IAAAuB,MAAA,CAAA,MACKJ,MAAMrB,QAAQ,aAAQ,SAAtBqB,MAAMrB,QAAQ,cAAQ,QAAA,KAAA,UAAtBqB,MAAMrB,QAAQ,SAAQ,KAClBqB,MAAMpB,YAAQ,QAAdoB,MAAMpB,aAAQ,QAAA,KAAA,cAAdoB,MAAMpB,SAAQ,GAAA,GAGvBoB,MAAMf,SAAQ;;CAGpB,IAAAoB,SAAA;AAAA,MAAA,KAAAC,UAAA,KAAAvE,aAAA,QAAA,KAAAuE;EAAA,MAAAC,kBAAA,EAAAzB,OAAA,GAAA,IAAA,KAAAoB,QAAAM,GAAAC,oBAAA,KAAAC,gBAAAF,GAAAC,gBAAA,EAAA,EAAA;AAAA,MAAA,KAAA1E,aAAA,MAAAuE,SAAAC;AAAA,SAAAA;;CAtDHG,gBAAsBF,GAAGC,iBAAiB;AAiDfE,GAZN,KAAAX,MAASlB,SAAK,KAAAkB,MAAUhB,WAYJwB,EAAC;;CAjD1CI,eAAsBC,KAAKC,OAAK;AAAA,MAAAD,QAAA,WAAA;GAAA,MAAAE,OAAA,KAAAhF;GAAA,MAkCrBiE,QAAkB,KAAAA;GAEmC,MAAAgB,eAKjD3C,GACL,6OAPUa,SAASc,MAAMvB,WAAW,cAAcS,SAASE,SACpDM,MAAMM,MAAMtB,QAAQ,cAAcgB,MAAMN,SAQ3C,KAAAY,MACEnB,MAAK;AAAA,OAAAkC,MAAA;IAAA,MAAAE,cAAAD,gBAAA,OAAAb,OAAAa,aAAA,GAAA,IAAAZ,MAAA;AAAA,QAAAW,KAAAG,cAAAD,WAAAF,MAAAG,YAAAD;;;AAAA,MAAAJ,QAAA,QAAA;GAAA,MAAAE,OAAA,KAAAhF;GAAA,MAXViE,QAAkB,KAAAA;GAEmC,MAAAgB,eAKjD3C,GACL,6OAPUa,SAASc,MAAMvB,WAAW,cAAcS,SAASE,SACpDM,MAAMM,MAAMtB,QAAQ,cAAcgB,MAAMN,SAQ3C,KAAAY,MACEnB,MAAK;AAAA,OAAAkC,MAAA;IAAA,MAAAE,cAAAD,gBAAA,OAAAb,OAAAa,aAAA,GAAA,IAAAZ,MAAA;AAAA,QAAAW,KAAAG,cAAAD,WAAAF,MAAAG,YAAAD;;;AAAA,MAAAJ,QAAA,SAAA;GAAA,MAAAE,OAAA,KAAAhF;GAAA,MAXViE,QAAkB,KAAAA;GAEmC,MAAAgB,eAKjD3C,GACL,6OAPUa,SAASc,MAAMvB,WAAW,cAAcS,SAASE,SACpDM,MAAMM,MAAMtB,QAAQ,cAAcgB,MAAMN,SAQ3C0B,MAAA;AAAA,OAAAC,MAAA;IAAA,MAAAE,cAAAD,gBAAA,OAAAb,OAAAa,aAAA,GAAA,IAAAZ,MAAA;AAAA,QAAAW,KAAAG,cAAAD,WAAAF,MAAAG,YAAAD;;;AAAA,MAAAJ,QAAA,QAAA;GAAA,MAAAE,OAAA,KAAAhF;AAVe,QAAAiE;GAAA,MAAAgB,eAAAF,SAaD;AAAQ,OAAAC,KAAA,KAAAC,iBAAA,QAAAA,iBAAAG,KAAAA,EAAAJ,MAAAK,gBAAA,OAAA;QAAA;IAAA,MAAAC,YAAAlB,OAAAa,aAAA;AAAA,QAAAD,KAAAO,aAAA,OAAA,KAAAD,UAAAN,MAAAQ,aAAA,QAAAF,UAAA;;;AAAA,MAAAR,QAAA,YAAA;GAAA,MAAAE,OAAA,KAAAhF;AAAA,OAAAgF,KAAA,KAAA,CAAAD,MAAAC,MAAAK,gBAAA,WAAA;QAAA;IAAA,MAAAC,YAAA;AAAA,QAAAN,KAAAO,aAAA,WAAA,KAAAD,UAAAN,MAAAQ,aAAA,YAAAF,UAAA;;;AAAA,MAAAR,QAAA,YAAA;GAAA,MAAAE,OAAA,KAAAhF;AAAA,OAAAgF,QAAAA,KAAAS,cAAAV,OAAA;AAAAC,SAAAS,YAAAV;AAAA,SAAAW,6BAAA;AAAA,QAAA,KAAAC,gBAAA,MAAAA,gBAAAC,+BAAA"}
|
package/dist/card.d.mts
ADDED
|
@@ -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\">✓ Copied</span>\n ) : (\n <span data-part=\"indicator-not-copied\">Copy</span>\n )}\n </button>\n </div>\n </div>\n )\n }\n}\n"],"mappings":"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"}
|
package/dist/cn.mjs
ADDED
package/dist/cn.mjs.map
ADDED
|
@@ -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
|