@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/README.md
CHANGED
|
@@ -15,30 +15,25 @@ npm install @geajs/core
|
|
|
15
15
|
|
|
16
16
|
## Tailwind CSS Setup
|
|
17
17
|
|
|
18
|
-
### 1.
|
|
19
|
-
|
|
20
|
-
```js
|
|
21
|
-
// tailwind.config.js
|
|
22
|
-
import geaPreset from '@geajs/ui/tailwind-preset'
|
|
23
|
-
|
|
24
|
-
export default {
|
|
25
|
-
presets: [geaPreset],
|
|
26
|
-
content: [
|
|
27
|
-
'./src/**/*.{tsx,ts,jsx,js}',
|
|
28
|
-
'./node_modules/@geajs/ui/dist/**/*.js',
|
|
29
|
-
],
|
|
30
|
-
}
|
|
31
|
-
```
|
|
18
|
+
### 1. Install Tailwind and its Vite plugin
|
|
32
19
|
|
|
33
|
-
|
|
20
|
+
```bash
|
|
21
|
+
npm install -D tailwindcss @tailwindcss/vite
|
|
22
|
+
```
|
|
34
23
|
|
|
35
|
-
|
|
24
|
+
```ts
|
|
25
|
+
// vite.config.ts
|
|
26
|
+
import tailwindcss from '@tailwindcss/vite'
|
|
27
|
+
import { defineConfig } from 'vite'
|
|
36
28
|
|
|
37
|
-
|
|
38
|
-
|
|
29
|
+
export default defineConfig({
|
|
30
|
+
plugins: [tailwindcss()],
|
|
31
|
+
})
|
|
39
32
|
```
|
|
40
33
|
|
|
41
|
-
|
|
34
|
+
### 2. Import the theme CSS
|
|
35
|
+
|
|
36
|
+
Import once in your entry point. This sets up Tailwind, all semantic color tokens, and dark mode support — no `tailwind.config.js` needed.
|
|
42
37
|
|
|
43
38
|
```ts
|
|
44
39
|
import '@geajs/ui/style.css'
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { n as ZagComponent } from "./zag-component.mjs";
|
|
2
|
+
import * as accordion from "@zag-js/accordion";
|
|
3
|
+
import * as _$_zag_js_types0 from "@zag-js/types";
|
|
4
|
+
|
|
5
|
+
//#region src/components/accordion.d.ts
|
|
6
|
+
declare class Accordion extends ZagComponent {
|
|
7
|
+
value: string[];
|
|
8
|
+
createMachine(_props: any): any;
|
|
9
|
+
getMachineProps(props: any): {
|
|
10
|
+
id: any;
|
|
11
|
+
value: any;
|
|
12
|
+
defaultValue: any;
|
|
13
|
+
multiple: any;
|
|
14
|
+
collapsible: any;
|
|
15
|
+
disabled: any;
|
|
16
|
+
orientation: any;
|
|
17
|
+
onValueChange: (details: accordion.ValueChangeDetails) => void;
|
|
18
|
+
};
|
|
19
|
+
connectApi(service: any): accordion.Api<_$_zag_js_types0.PropTypes<{
|
|
20
|
+
[x: string]: any;
|
|
21
|
+
}>>;
|
|
22
|
+
getSpreadMap(): {
|
|
23
|
+
'[data-part="root"]': string;
|
|
24
|
+
'[data-part="item"]': (api: any, el: any) => any;
|
|
25
|
+
'[data-part="item-trigger"]': (api: any, el: any) => any;
|
|
26
|
+
'[data-part="item-content"]': (api: any, el: any) => any;
|
|
27
|
+
'[data-part="item-indicator"]': (api: any, el: any) => any;
|
|
28
|
+
};
|
|
29
|
+
syncState(api: any): void;
|
|
30
|
+
template(props: any): string;
|
|
31
|
+
}
|
|
32
|
+
//#endregion
|
|
33
|
+
export { Accordion as default };
|
|
34
|
+
//# sourceMappingURL=accordion.d.mts.map
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import { t as ZagComponent } from "./zag-component.mjs";
|
|
2
|
+
import { Component, GEA_CTOR_TAG_NAME, GEA_DOM_ITEM, GEA_DOM_KEY, GEA_ELEMENT, GEA_MAP_CONFIG_TPL, GEA_REGISTER_MAP, GEA_SYNC_MAP } from "@geajs/core";
|
|
3
|
+
import { normalizeProps } from "@zag-js/vanilla";
|
|
4
|
+
import * as accordion from "@zag-js/accordion";
|
|
5
|
+
//#region src/components/accordion.tsx
|
|
6
|
+
const __v = (v) => v != null && typeof v === "object" ? v.valueOf() : v;
|
|
7
|
+
var Accordion = class extends ZagComponent {
|
|
8
|
+
static {
|
|
9
|
+
this[GEA_CTOR_TAG_NAME] = "accordion";
|
|
10
|
+
}
|
|
11
|
+
#__rowEls_list;
|
|
12
|
+
#__dc___unresolved_0;
|
|
13
|
+
createMachine(_props) {
|
|
14
|
+
return accordion.machine;
|
|
15
|
+
}
|
|
16
|
+
getMachineProps(props) {
|
|
17
|
+
return {
|
|
18
|
+
id: this.id,
|
|
19
|
+
value: props.value,
|
|
20
|
+
defaultValue: props.defaultValue,
|
|
21
|
+
multiple: props.multiple ?? false,
|
|
22
|
+
collapsible: props.collapsible ?? false,
|
|
23
|
+
disabled: props.disabled,
|
|
24
|
+
orientation: props.orientation ?? "vertical",
|
|
25
|
+
onValueChange: (details) => {
|
|
26
|
+
this.value = details.value;
|
|
27
|
+
props.onValueChange?.(details);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
connectApi(service) {
|
|
32
|
+
return accordion.connect(service, normalizeProps);
|
|
33
|
+
}
|
|
34
|
+
getSpreadMap() {
|
|
35
|
+
return {
|
|
36
|
+
"[data-part=\"root\"]": "getRootProps",
|
|
37
|
+
"[data-part=\"item\"]": (api, el) => api.getItemProps({ value: el.dataset.value }),
|
|
38
|
+
"[data-part=\"item-trigger\"]": (api, el) => api.getItemTriggerProps({ value: el.dataset.value }),
|
|
39
|
+
"[data-part=\"item-content\"]": (api, el) => api.getItemContentProps({ value: el.dataset.value }),
|
|
40
|
+
"[data-part=\"item-indicator\"]": (api, el) => api.getItemIndicatorProps({ value: el.dataset.value })
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
syncState(api) {
|
|
44
|
+
this.value = api.value;
|
|
45
|
+
}
|
|
46
|
+
template(props) {
|
|
47
|
+
const __id = this.id;
|
|
48
|
+
Component._register(ZagComponent, "zag-component");
|
|
49
|
+
const items = props.items || [];
|
|
50
|
+
return `<div id="${__id}" data-part="root"${(props.class || "") == null || (props.class || "") === false ? "" : ` class="${((props.class || "") != null ? String(props.class || "") : "").trim()}"`}>${items.map((item) => `<div data-gea-item-id="${item?.value ?? item}" data-part="item"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="accordion-item border-b"><h3><button data-part="item-trigger"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="accordion-trigger flex w-full items-center justify-between py-4 text-sm font-medium transition-all">${item.label}<span data-part="item-indicator"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="accordion-indicator h-4 w-4 shrink-0 transition-transform duration-200">▶</span></button></h3><div data-part="item-content"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="accordion-content overflow-hidden text-sm"><div class="pb-4 pt-0">${item.content}</div></div></div>`).join("") + "<!---->"}</div>`;
|
|
51
|
+
}
|
|
52
|
+
render__unresolved_0Item(item) {
|
|
53
|
+
return `<div data-gea-item-id="${item?.value ?? item}" data-part="item"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="accordion-item border-b"><h3><button data-part="item-trigger"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="accordion-trigger flex w-full items-center justify-between py-4 text-sm font-medium transition-all">${item.label}<span data-part="item-indicator"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="accordion-indicator h-4 w-4 shrink-0 transition-transform duration-200">▶</span></button></h3><div data-part="item-content"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="accordion-content overflow-hidden text-sm"><div class="pb-4 pt-0">${item.content}</div></div></div>`;
|
|
54
|
+
}
|
|
55
|
+
create__unresolved_0Item(item) {
|
|
56
|
+
var __c = this.#__dc___unresolved_0 || (this.#__dc___unresolved_0 = this.____unresolved_0_container);
|
|
57
|
+
if (!__c[GEA_MAP_CONFIG_TPL]) try {
|
|
58
|
+
var __tw = document.createElement("template");
|
|
59
|
+
__tw.innerHTML = this.render__unresolved_0Item({
|
|
60
|
+
value: 0,
|
|
61
|
+
label: " ",
|
|
62
|
+
content: " "
|
|
63
|
+
});
|
|
64
|
+
__c[GEA_MAP_CONFIG_TPL] = __tw.content.firstElementChild;
|
|
65
|
+
__c[GEA_MAP_CONFIG_TPL]?.removeAttribute("data-gea-item-id");
|
|
66
|
+
} catch (__err) {
|
|
67
|
+
console.error(__err);
|
|
68
|
+
}
|
|
69
|
+
if (__c[GEA_MAP_CONFIG_TPL]) var el = __c[GEA_MAP_CONFIG_TPL].cloneNode(true);
|
|
70
|
+
else {
|
|
71
|
+
var __fw = document.createElement("template");
|
|
72
|
+
__fw.innerHTML = this.render__unresolved_0Item(item);
|
|
73
|
+
var el = __fw.content.firstElementChild;
|
|
74
|
+
}
|
|
75
|
+
el.__ref_0_0 = el.firstElementChild.firstElementChild;
|
|
76
|
+
el.__ref_0_0_0 = el.firstElementChild.firstElementChild.firstElementChild;
|
|
77
|
+
el.__ref_1 = el.firstElementChild.nextElementSibling;
|
|
78
|
+
el.__ref_1_0 = el.firstElementChild.nextElementSibling.firstElementChild;
|
|
79
|
+
var __av = item.value;
|
|
80
|
+
if (__av == null || __av === false) el.removeAttribute("data-value");
|
|
81
|
+
else {
|
|
82
|
+
const __newAttr = String(__av);
|
|
83
|
+
if (el.getAttribute("data-value") !== __newAttr) el.setAttribute("data-value", __newAttr);
|
|
84
|
+
}
|
|
85
|
+
var __av = item.value;
|
|
86
|
+
if (__av == null || __av === false) el.__ref_0_0.removeAttribute("data-value");
|
|
87
|
+
else {
|
|
88
|
+
const __newAttr = String(__av);
|
|
89
|
+
if (el.__ref_0_0.getAttribute("data-value") !== __newAttr) el.__ref_0_0.setAttribute("data-value", __newAttr);
|
|
90
|
+
}
|
|
91
|
+
var __av = item.value;
|
|
92
|
+
if (__av == null || __av === false) el.__ref_0_0_0.removeAttribute("data-value");
|
|
93
|
+
else {
|
|
94
|
+
const __newAttr = String(__av);
|
|
95
|
+
if (el.__ref_0_0_0.getAttribute("data-value") !== __newAttr) el.__ref_0_0_0.setAttribute("data-value", __newAttr);
|
|
96
|
+
}
|
|
97
|
+
var __av = item.value;
|
|
98
|
+
if (__av == null || __av === false) el.__ref_1.removeAttribute("data-value");
|
|
99
|
+
else {
|
|
100
|
+
const __newAttr = String(__av);
|
|
101
|
+
if (el.__ref_1.getAttribute("data-value") !== __newAttr) el.__ref_1.setAttribute("data-value", __newAttr);
|
|
102
|
+
}
|
|
103
|
+
el.__ref_1_0.firstChild.nodeValue = `${item.content}`;
|
|
104
|
+
el[GEA_DOM_KEY] = String(item?.value ?? item);
|
|
105
|
+
el[GEA_DOM_ITEM] = item;
|
|
106
|
+
return el;
|
|
107
|
+
}
|
|
108
|
+
patch__unresolved_0Item(row, item, __prevItem) {
|
|
109
|
+
if (!row) return;
|
|
110
|
+
if (!row.__ref_0_0) row.__ref_0_0 = row.firstElementChild.firstElementChild;
|
|
111
|
+
if (!row.__ref_0_0_0) row.__ref_0_0_0 = row.firstElementChild.firstElementChild.firstElementChild;
|
|
112
|
+
if (!row.__ref_1) row.__ref_1 = row.firstElementChild.nextElementSibling;
|
|
113
|
+
if (!row.__ref_1_0) row.__ref_1_0 = row.firstElementChild.nextElementSibling.firstElementChild;
|
|
114
|
+
var __av = item.value;
|
|
115
|
+
if (__av == null || __av === false) row.removeAttribute("data-value");
|
|
116
|
+
else {
|
|
117
|
+
const __newAttr = String(__av);
|
|
118
|
+
if (row.getAttribute("data-value") !== __newAttr) row.setAttribute("data-value", __newAttr);
|
|
119
|
+
}
|
|
120
|
+
var __av = item.value;
|
|
121
|
+
if (__av == null || __av === false) row.__ref_0_0.removeAttribute("data-value");
|
|
122
|
+
else {
|
|
123
|
+
const __newAttr = String(__av);
|
|
124
|
+
if (row.__ref_0_0.getAttribute("data-value") !== __newAttr) row.__ref_0_0.setAttribute("data-value", __newAttr);
|
|
125
|
+
}
|
|
126
|
+
var __av = item.value;
|
|
127
|
+
if (__av == null || __av === false) row.__ref_0_0_0.removeAttribute("data-value");
|
|
128
|
+
else {
|
|
129
|
+
const __newAttr = String(__av);
|
|
130
|
+
if (row.__ref_0_0_0.getAttribute("data-value") !== __newAttr) row.__ref_0_0_0.setAttribute("data-value", __newAttr);
|
|
131
|
+
}
|
|
132
|
+
var __av = item.value;
|
|
133
|
+
if (__av == null || __av === false) row.__ref_1.removeAttribute("data-value");
|
|
134
|
+
else {
|
|
135
|
+
const __newAttr = String(__av);
|
|
136
|
+
if (row.__ref_1.getAttribute("data-value") !== __newAttr) row.__ref_1.setAttribute("data-value", __newAttr);
|
|
137
|
+
}
|
|
138
|
+
row.__ref_1_0.firstChild.nodeValue = `${item.content}`;
|
|
139
|
+
row[GEA_DOM_KEY] = String(item?.value ?? item);
|
|
140
|
+
(this.#__rowEls_list || (this.#__rowEls_list = {}))[String(item?.value ?? item)] = row;
|
|
141
|
+
row[GEA_DOM_ITEM] = item;
|
|
142
|
+
}
|
|
143
|
+
__onPropChange(key, value) {
|
|
144
|
+
if (key === "class") {
|
|
145
|
+
const __el = this[GEA_ELEMENT];
|
|
146
|
+
this.props;
|
|
147
|
+
const __boundValue = value || "";
|
|
148
|
+
if (__el) {
|
|
149
|
+
const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
|
|
150
|
+
if (__el.className !== __newClass) __el.className = __newClass;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
if (key === "items") this[GEA_SYNC_MAP](0);
|
|
154
|
+
}
|
|
155
|
+
__observe_local_props(__v, __c) {
|
|
156
|
+
this[GEA_SYNC_MAP](0);
|
|
157
|
+
}
|
|
158
|
+
createdHooks() {
|
|
159
|
+
this[GEA_REGISTER_MAP](0, "____unresolved_0_container", () => this.$(":scope"), () => {
|
|
160
|
+
return this.props.items || [];
|
|
161
|
+
}, (__item) => this.create__unresolved_0Item(__item), "value");
|
|
162
|
+
}
|
|
163
|
+
};
|
|
164
|
+
//#endregion
|
|
165
|
+
export { Accordion as default };
|
|
166
|
+
|
|
167
|
+
//# sourceMappingURL=accordion.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accordion.mjs","names":["__v","v","valueOf","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","accordion","normalizeProps","ZagComponent","Accordion","__rowEls_list","__dc___unresolved_0","value","createMachine","_props","machine","getMachineProps","props","id","defaultValue","multiple","collapsible","disabled","orientation","onValueChange","details","ValueChangeDetails","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","getItemProps","HTMLElement","dataset","[data-part=\"item-trigger\"]","getItemTriggerProps","[data-part=\"item-content\"]","getItemContentProps","[data-part=\"item-indicator\"]","getItemIndicatorProps","syncState","template","__id","_register","items","class","String","trim","map","item","label","content","join","render__unresolved_0Item","create__unresolved_0Item","__c","____unresolved_0_container","__tw","document","createElement","innerHTML","firstElementChild","removeAttribute","__err","console","error","cloneNode","__fw","__ref_0_0","__ref_0_0_0","__ref_1","nextElementSibling","__ref_1_0","__av","__newAttr","getAttribute","setAttribute","firstChild","nodeValue","patch__unresolved_0Item","row","__prevItem","__onPropChange","key","__el","__boundValue","__newClass","className","__observe_local_props","createdHooks","$","__item"],"sources":["../src/components/accordion.tsx"],"sourcesContent":["import * as accordion from '@zag-js/accordion'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Accordion extends ZagComponent {\n declare value: string[]\n\n createMachine(_props: any): any {\n return accordion.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n multiple: props.multiple ?? false,\n collapsible: props.collapsible ?? false,\n disabled: props.disabled,\n orientation: props.orientation ?? 'vertical',\n onValueChange: (details: accordion.ValueChangeDetails) => {\n this.value = details.value\n props.onValueChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return accordion.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"item\"]': (api, el) => api.getItemProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-trigger\"]': (api, el) => api.getItemTriggerProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-content\"]': (api, el) => api.getItemContentProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-indicator\"]': (api, el) =>\n api.getItemIndicatorProps({ value: (el as HTMLElement).dataset.value }),\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n }\n\n template(props: any) {\n const items = props.items || []\n return (\n <div data-part=\"root\" class={props.class || ''}>\n {items.map((item: any) => (\n <div key={item.value} data-part=\"item\" data-value={item.value} class=\"accordion-item border-b\">\n <h3>\n <button\n data-part=\"item-trigger\"\n data-value={item.value}\n class=\"accordion-trigger flex w-full items-center justify-between py-4 text-sm font-medium transition-all\"\n >\n {item.label}\n <span\n data-part=\"item-indicator\"\n data-value={item.value}\n class=\"accordion-indicator h-4 w-4 shrink-0 transition-transform duration-200\"\n >\n ▶\n </span>\n </button>\n </h3>\n <div data-part=\"item-content\" data-value={item.value} class=\"accordion-content overflow-hidden text-sm\">\n <div class=\"pb-4 pt-0\">{item.content}</div>\n </div>\n </div>\n ))}\n </div>\n )\n }\n}\n"],"mappings":"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"}
|
package/dist/alert.d.mts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Component } from "@geajs/core";
|
|
2
|
+
|
|
3
|
+
//#region src/components/alert.d.ts
|
|
4
|
+
declare class Alert extends Component {
|
|
5
|
+
template(props: any): string;
|
|
6
|
+
}
|
|
7
|
+
declare class AlertTitle extends Component {
|
|
8
|
+
template(props: any): string;
|
|
9
|
+
}
|
|
10
|
+
declare class AlertDescription extends Component {
|
|
11
|
+
template(props: any): string;
|
|
12
|
+
}
|
|
13
|
+
//#endregion
|
|
14
|
+
export { Alert, AlertDescription, AlertTitle };
|
|
15
|
+
//# sourceMappingURL=alert.d.mts.map
|
package/dist/alert.mjs
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { t as cn } from "./cn.mjs";
|
|
2
|
+
import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT } from "@geajs/core";
|
|
3
|
+
//#region src/components/alert.tsx
|
|
4
|
+
const variants = {
|
|
5
|
+
default: "bg-background text-foreground",
|
|
6
|
+
destructive: "border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"
|
|
7
|
+
};
|
|
8
|
+
var Alert = class extends Component {
|
|
9
|
+
static {
|
|
10
|
+
this[GEA_CTOR_TAG_NAME] = "alert";
|
|
11
|
+
}
|
|
12
|
+
template(props) {
|
|
13
|
+
const __id = this.id;
|
|
14
|
+
const variant = variants[props.variant || "default"] || variants.default;
|
|
15
|
+
return `<div id="${__id}"${cn("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7", variant, props.class) == null || cn("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7", variant, props.class) === false ? "" : ` class="${(cn("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7", variant, props.class) != null ? String(cn("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7", variant, props.class)) : "").trim()}"`} role="alert">${props.children}</div>`;
|
|
16
|
+
}
|
|
17
|
+
__onPropChange(key, value) {
|
|
18
|
+
if (key === "variant") {
|
|
19
|
+
const __el = this[GEA_ELEMENT];
|
|
20
|
+
const __boundValue = cn("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7", variants[this.props.variant || "default"] || variants.default, this.props.class);
|
|
21
|
+
if (__el) {
|
|
22
|
+
const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
|
|
23
|
+
if (__el.className !== __newClass) __el.className = __newClass;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (key === "class") {
|
|
27
|
+
const __el = this[GEA_ELEMENT];
|
|
28
|
+
const __boundValue = cn("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7", variants[this.props.variant || "default"] || variants.default, value);
|
|
29
|
+
if (__el) {
|
|
30
|
+
const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
|
|
31
|
+
if (__el.className !== __newClass) __el.className = __newClass;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
if (key === "children") {
|
|
35
|
+
const __el = this[GEA_ELEMENT];
|
|
36
|
+
if (__el && __el.innerHTML !== value) {
|
|
37
|
+
__el.innerHTML = value;
|
|
38
|
+
this.instantiateChildComponents_();
|
|
39
|
+
if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
var AlertTitle = class extends Component {
|
|
45
|
+
static {
|
|
46
|
+
this[GEA_CTOR_TAG_NAME] = "alert-title";
|
|
47
|
+
}
|
|
48
|
+
template(props) {
|
|
49
|
+
return `<h5 id="${this.id}"${cn("mb-1 font-medium leading-none tracking-tight", props.class) == null || cn("mb-1 font-medium leading-none tracking-tight", props.class) === false ? "" : ` class="${(cn("mb-1 font-medium leading-none tracking-tight", props.class) != null ? String(cn("mb-1 font-medium leading-none tracking-tight", props.class)) : "").trim()}"`}>${props.children}</h5>`;
|
|
50
|
+
}
|
|
51
|
+
__onPropChange(key, value) {
|
|
52
|
+
if (key === "class") {
|
|
53
|
+
const __el = this[GEA_ELEMENT];
|
|
54
|
+
this.props;
|
|
55
|
+
const __boundValue = cn("mb-1 font-medium leading-none tracking-tight", value);
|
|
56
|
+
if (__el) {
|
|
57
|
+
const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
|
|
58
|
+
if (__el.className !== __newClass) __el.className = __newClass;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
if (key === "children") {
|
|
62
|
+
const __el = this[GEA_ELEMENT];
|
|
63
|
+
if (__el && __el.innerHTML !== value) {
|
|
64
|
+
__el.innerHTML = value;
|
|
65
|
+
this.instantiateChildComponents_();
|
|
66
|
+
if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
var AlertDescription = class extends Component {
|
|
72
|
+
static {
|
|
73
|
+
this[GEA_CTOR_TAG_NAME] = "alert-description";
|
|
74
|
+
}
|
|
75
|
+
template(props) {
|
|
76
|
+
return `<div id="${this.id}"${cn("text-sm [&_p]:leading-relaxed", props.class) == null || cn("text-sm [&_p]:leading-relaxed", props.class) === false ? "" : ` class="${(cn("text-sm [&_p]:leading-relaxed", props.class) != null ? String(cn("text-sm [&_p]:leading-relaxed", props.class)) : "").trim()}"`}>${props.children}</div>`;
|
|
77
|
+
}
|
|
78
|
+
__onPropChange(key, value) {
|
|
79
|
+
if (key === "class") {
|
|
80
|
+
const __el = this[GEA_ELEMENT];
|
|
81
|
+
this.props;
|
|
82
|
+
const __boundValue = cn("text-sm [&_p]:leading-relaxed", value);
|
|
83
|
+
if (__el) {
|
|
84
|
+
const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
|
|
85
|
+
if (__el.className !== __newClass) __el.className = __newClass;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
if (key === "children") {
|
|
89
|
+
const __el = this[GEA_ELEMENT];
|
|
90
|
+
if (__el && __el.innerHTML !== value) {
|
|
91
|
+
__el.innerHTML = value;
|
|
92
|
+
this.instantiateChildComponents_();
|
|
93
|
+
if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
//#endregion
|
|
99
|
+
export { Alert, AlertDescription, AlertTitle };
|
|
100
|
+
|
|
101
|
+
//# sourceMappingURL=alert.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert.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","variants","Record","default","destructive","Alert","template","props","__id","id","variant","class","String","trim","children","__onPropChange","key","value","__el","__boundValue","__newClass","className","innerHTML","instantiateChildComponents_","parentComponent","mountCompiledChildComponents_","AlertTitle","AlertDescription"],"sources":["../src/components/alert.tsx"],"sourcesContent":["import { Component } from '@geajs/core'\nimport { cn } from '../utils/cn'\n\nconst variants: Record<string, string> = {\n default: 'bg-background text-foreground',\n destructive: 'border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive',\n}\n\nexport class Alert extends Component {\n template(props: any) {\n const variant = variants[props.variant || 'default'] || variants.default\n\n return (\n <div\n class={cn(\n 'relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7',\n variant,\n props.class,\n )}\n role=\"alert\"\n >\n {props.children}\n </div>\n )\n }\n}\n\nexport class AlertTitle extends Component {\n template(props: any) {\n return <h5 class={cn('mb-1 font-medium leading-none tracking-tight', props.class)}>{props.children}</h5>\n }\n}\n\nexport class AlertDescription extends Component {\n template(props: any) {\n return <div class={cn('text-sm [&_p]:leading-relaxed', props.class)}>{props.children}</div>\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { n as ZagComponent } from "./zag-component.mjs";
|
|
2
|
+
import * as avatar from "@zag-js/avatar";
|
|
3
|
+
import * as _$_zag_js_types0 from "@zag-js/types";
|
|
4
|
+
|
|
5
|
+
//#region src/components/avatar.d.ts
|
|
6
|
+
declare class Avatar extends ZagComponent {
|
|
7
|
+
loaded: boolean;
|
|
8
|
+
createMachine(_props: any): any;
|
|
9
|
+
getMachineProps(props: any): {
|
|
10
|
+
id: any;
|
|
11
|
+
onStatusChange: any;
|
|
12
|
+
};
|
|
13
|
+
connectApi(service: any): avatar.Api<_$_zag_js_types0.PropTypes<{
|
|
14
|
+
[x: string]: any;
|
|
15
|
+
}>>;
|
|
16
|
+
getSpreadMap(): {
|
|
17
|
+
'[data-part="root"]': string;
|
|
18
|
+
'[data-part="image"]': string;
|
|
19
|
+
'[data-part="fallback"]': string;
|
|
20
|
+
};
|
|
21
|
+
syncState(api: any): void;
|
|
22
|
+
template(props: any): string;
|
|
23
|
+
}
|
|
24
|
+
//#endregion
|
|
25
|
+
export { Avatar as default };
|
|
26
|
+
//# sourceMappingURL=avatar.d.mts.map
|
package/dist/avatar.mjs
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
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, geaSanitizeAttr } from "@geajs/core";
|
|
3
|
+
import { normalizeProps } from "@zag-js/vanilla";
|
|
4
|
+
import * as avatar from "@zag-js/avatar";
|
|
5
|
+
//#region src/components/avatar.tsx
|
|
6
|
+
var Avatar = class extends ZagComponent {
|
|
7
|
+
static {
|
|
8
|
+
this[GEA_CTOR_TAG_NAME] = "avatar";
|
|
9
|
+
}
|
|
10
|
+
constructor(...args) {
|
|
11
|
+
super(...args);
|
|
12
|
+
this.loaded = false;
|
|
13
|
+
this.props;
|
|
14
|
+
this[geaCondValueSymbol(0)] = !!this.props.src;
|
|
15
|
+
this[GEA_REGISTER_COND](0, "c0", () => {
|
|
16
|
+
this.props;
|
|
17
|
+
return this.props.src;
|
|
18
|
+
}, () => {
|
|
19
|
+
const props = this.props;
|
|
20
|
+
return `<img data-part="image"${this.props.src == null || props.src === false ? "" : ` src="${geaSanitizeAttr("src", String(this.props.src))}"`}${(this.props.name || "") == null || (props.name || "") === false ? "" : ` alt="${this.props.name || ""}"`} class="avatar-image absolute inset-0 h-full w-full object-cover" />`;
|
|
21
|
+
}, () => {
|
|
22
|
+
this.props;
|
|
23
|
+
return "";
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
createMachine(_props) {
|
|
27
|
+
return avatar.machine;
|
|
28
|
+
}
|
|
29
|
+
getMachineProps(props) {
|
|
30
|
+
return {
|
|
31
|
+
id: this.id,
|
|
32
|
+
onStatusChange: props.onStatusChange
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
connectApi(service) {
|
|
36
|
+
return avatar.connect(service, normalizeProps);
|
|
37
|
+
}
|
|
38
|
+
getSpreadMap() {
|
|
39
|
+
return {
|
|
40
|
+
"[data-part=\"root\"]": "getRootProps",
|
|
41
|
+
"[data-part=\"image\"]": "getImageProps",
|
|
42
|
+
"[data-part=\"fallback\"]": "getFallbackProps"
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
syncState(api) {
|
|
46
|
+
this.loaded = api.loaded;
|
|
47
|
+
}
|
|
48
|
+
template(props) {
|
|
49
|
+
const __id = this.id;
|
|
50
|
+
Component._register(ZagComponent, "zag-component");
|
|
51
|
+
const initials = props.fallback || (props.name ? props.name.split(" ").map((n) => n[0]).join("").toUpperCase() : "?");
|
|
52
|
+
return `<div id="${__id}" data-part="root" class="${`avatar-root relative inline-flex h-10 w-10 shrink-0 overflow-hidden rounded-full ${props.class || ""}`.trim()}"><!--${__id + "-c0"}-->${(props.src ? `<img data-part="image"${props.src == null || props.src === false ? "" : ` src="${geaSanitizeAttr("src", String(props.src))}"`}${(props.name || "") == null || (props.name || "") === false ? "" : ` alt="${props.name || ""}"`} class="avatar-image absolute inset-0 h-full w-full object-cover" />` : "") || ""}<!--${__id + "-c0-end"}--><div id="${__id + "-b1"}" data-part="fallback" class="${`avatar-fallback flex h-full w-full items-center justify-center rounded-full bg-muted text-muted-foreground text-sm font-medium ${props.src ? "absolute inset-0" : ""}`.trim()}">${geaEscapeHtml(String(initials))}</div></div>`;
|
|
53
|
+
}
|
|
54
|
+
__onPropChange(key, value) {
|
|
55
|
+
const __id = this.id;
|
|
56
|
+
if (key === "class") {
|
|
57
|
+
const __el = this[GEA_ELEMENT];
|
|
58
|
+
this.props;
|
|
59
|
+
const __boundValue = `avatar-root relative inline-flex h-10 w-10 shrink-0 overflow-hidden rounded-full ${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 === "src") {
|
|
66
|
+
const __el = this.__e0 || (this.__e0 = document.getElementById(__id + "-b1"));
|
|
67
|
+
this.props;
|
|
68
|
+
const __boundValue = `avatar-fallback flex h-full w-full items-center justify-center rounded-full bg-muted text-muted-foreground text-sm font-medium ${value ? "absolute inset-0" : ""}`;
|
|
69
|
+
if (__el) {
|
|
70
|
+
const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
|
|
71
|
+
if (__el.className !== __newClass) __el.className = __newClass;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
if (key === "fallback") {
|
|
75
|
+
const __el = this.__e1 || (this.__e1 = document.getElementById(__id + "-b1"));
|
|
76
|
+
this.props;
|
|
77
|
+
const __boundValue = this.props.fallback || (this.props.name ? this.props.name.split(" ").map((n) => n[0]).join("").toUpperCase() : "?");
|
|
78
|
+
if (__el && __el.textContent !== __boundValue) __el.textContent = __boundValue;
|
|
79
|
+
}
|
|
80
|
+
if (key === "name") {
|
|
81
|
+
const __el = this.__e2 || (this.__e2 = document.getElementById(__id + "-b1"));
|
|
82
|
+
this.props;
|
|
83
|
+
const __boundValue = this.props.fallback || (this.props.name ? this.props.name.split(" ").map((n) => n[0]).join("").toUpperCase() : "?");
|
|
84
|
+
if (__el && __el.textContent !== __boundValue) __el.textContent = __boundValue;
|
|
85
|
+
}
|
|
86
|
+
if (key === "src" || key === "name") this[GEA_PATCH_COND](0);
|
|
87
|
+
}
|
|
88
|
+
*GEA_RESET_ELS() {
|
|
89
|
+
this.__e0 = null;
|
|
90
|
+
this.__e1 = null;
|
|
91
|
+
this.__e2 = null;
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
//#endregion
|
|
95
|
+
export { Avatar as default };
|
|
96
|
+
|
|
97
|
+
//# sourceMappingURL=avatar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatar.mjs","names":["avatar","normalizeProps","ZagComponent","Avatar","GEA_CTOR_TAG_NAME","constructor","args","props","geaCondValueSymbol","src","GEA_REGISTER_COND","geaSanitizeAttr","String","name","loaded","createMachine","_props","machine","getMachineProps","id","onStatusChange","connectApi","service","connect","getSpreadMap","syncState","api","template","__id","Component","_register","initials","fallback","split","map","n","join","toUpperCase","class","trim","geaEscapeHtml","__onPropChange","key","value","__el","GEA_ELEMENT","__boundValue","__newClass","className","__e0","document","getElementById","__e1","textContent","__e2","GEA_PATCH_COND","GEA_RESET_ELS"],"sources":["../src/components/avatar.tsx"],"sourcesContent":["import * as avatar from '@zag-js/avatar'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Avatar extends ZagComponent {\n loaded = false\n\n createMachine(_props: any): any {\n return avatar.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n onStatusChange: props.onStatusChange,\n }\n }\n\n connectApi(service: any) {\n return avatar.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"image\"]': 'getImageProps',\n '[data-part=\"fallback\"]': 'getFallbackProps',\n }\n }\n\n syncState(api: any) {\n this.loaded = api.loaded\n }\n\n template(props: any) {\n const initials =\n props.fallback ||\n (props.name\n ? props.name\n .split(' ')\n .map((n: string) => n[0])\n .join('')\n .toUpperCase()\n : '?')\n return (\n <div\n data-part=\"root\"\n class={`avatar-root relative inline-flex h-10 w-10 shrink-0 overflow-hidden rounded-full ${props.class || ''}`}\n >\n {props.src ? (\n <img\n data-part=\"image\"\n src={props.src}\n alt={props.name || ''}\n class=\"avatar-image absolute inset-0 h-full w-full object-cover\"\n />\n ) : (\n ''\n )}\n <div\n data-part=\"fallback\"\n class={`avatar-fallback flex h-full w-full items-center justify-center rounded-full bg-muted text-muted-foreground text-sm font-medium ${props.src ? 'absolute inset-0' : ''}`}\n >\n {initials}\n </div>\n </div>\n )\n }\n}\n"],"mappings":"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"}
|
package/dist/badge.d.mts
ADDED
package/dist/badge.mjs
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { t as cn } from "./cn.mjs";
|
|
2
|
+
import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT } from "@geajs/core";
|
|
3
|
+
//#region src/components/badge.tsx
|
|
4
|
+
const variants = {
|
|
5
|
+
default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",
|
|
6
|
+
secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
7
|
+
destructive: "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",
|
|
8
|
+
outline: "text-foreground"
|
|
9
|
+
};
|
|
10
|
+
var Badge = class extends Component {
|
|
11
|
+
static {
|
|
12
|
+
this[GEA_CTOR_TAG_NAME] = "badge";
|
|
13
|
+
}
|
|
14
|
+
template(props) {
|
|
15
|
+
const __id = this.id;
|
|
16
|
+
const variant = variants[props.variant || "default"] || variants.default;
|
|
17
|
+
return `<span id="${__id}"${cn("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", variant, props.class) == null || cn("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", variant, props.class) === false ? "" : ` class="${(cn("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", variant, props.class) != null ? String(cn("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", variant, props.class)) : "").trim()}"`}>${props.children}</span>`;
|
|
18
|
+
}
|
|
19
|
+
__onPropChange(key, value) {
|
|
20
|
+
if (key === "variant") {
|
|
21
|
+
const __el = this[GEA_ELEMENT];
|
|
22
|
+
const __boundValue = cn("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", variants[this.props.variant || "default"] || variants.default, this.props.class);
|
|
23
|
+
if (__el) {
|
|
24
|
+
const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
|
|
25
|
+
if (__el.className !== __newClass) __el.className = __newClass;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
if (key === "class") {
|
|
29
|
+
const __el = this[GEA_ELEMENT];
|
|
30
|
+
const __boundValue = cn("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", variants[this.props.variant || "default"] || variants.default, value);
|
|
31
|
+
if (__el) {
|
|
32
|
+
const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
|
|
33
|
+
if (__el.className !== __newClass) __el.className = __newClass;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (key === "children") {
|
|
37
|
+
const __el = this[GEA_ELEMENT];
|
|
38
|
+
if (__el && __el.innerHTML !== value) {
|
|
39
|
+
__el.innerHTML = value;
|
|
40
|
+
this.instantiateChildComponents_();
|
|
41
|
+
if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
//#endregion
|
|
47
|
+
export { Badge as default };
|
|
48
|
+
|
|
49
|
+
//# sourceMappingURL=badge.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge.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","variants","Record","default","secondary","destructive","outline","Badge","template","props","__id","id","variant","class","String","trim","children","__onPropChange","key","value","__el","__boundValue","__newClass","className","innerHTML","instantiateChildComponents_","parentComponent","mountCompiledChildComponents_"],"sources":["../src/components/badge.tsx"],"sourcesContent":["import { Component } from '@geajs/core'\nimport { cn } from '../utils/cn'\n\nconst variants: Record<string, string> = {\n default: 'border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80',\n secondary: 'border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80',\n destructive: 'border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80',\n outline: 'text-foreground',\n}\n\nexport default class Badge extends Component {\n template(props: any) {\n const variant = variants[props.variant || 'default'] || variants.default\n\n return (\n <span\n class={cn(\n 'inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2',\n variant,\n props.class,\n )}\n >\n {props.children}\n </span>\n )\n }\n}\n"],"mappings":";;;AAGA,MAAMuC,WAAmC;CACvCE,SAAS;CACTC,WAAW;CACXC,aAAa;CACbC,SAAS;CACV;AAED,IAAqBC,QAArB,cAAmC7C,UAAU;;OAAAqC,qBAAA;;CAC3CS,SAASC,OAAY;EAAA,MAAAC,OAAA,KAAAC;EACnB,MAAMC,UAAUX,SAASQ,MAAMG,WAAW,cAAcX,SAASE;AAEjE,SAAA,aAAAO,KAAA,GAEWV,GACL,wKACAY,SACAH,MAAMI,MACP,IAAA,QAJMb,GACL,wKACAY,SACAH,MAAMI,MACP,KAAA,QAAA,KAAA,YAJMb,GACL,wKACAY,SACAH,MAAMI,MACP,IAAA,OAAAC,OAJMd,GACL,wKACAY,SACAH,MAAMI,MACP,CAAA,GAAA,IAAAE,MAAA,CAAA,GAAA,GAEAN,MAAMO,SAAQ;;CArBvBC,eAAsBC,KAAKC,OAAK;AAAA,MAAAD,QAAA,WAAA;GAAA,MAAAE,OAAA,KAAAxD;GAW4C,MAAAyD,eAI7DrB,GACL,wKALUC,SADC,KAAAQ,MACcG,WAAW,cAAcX,SAASE,SAMpD,KAAAM,MACDI,MAAK;AAAA,OAAAO,MAAA;IAAA,MAAAE,cAAAD,gBAAA,OAAAP,OAAAO,aAAA,GAAA,IAAAN,MAAA;AAAA,QAAAK,KAAAG,cAAAD,WAAAF,MAAAG,YAAAD;;;AAAA,MAAAJ,QAAA,SAAA;GAAA,MAAAE,OAAA,KAAAxD;GAPuD,MAAAyD,eAI7DrB,GACL,wKALUC,SADC,KAAAQ,MACcG,WAAW,cAAcX,SAASE,SAMpDgB,MAAA;AAAA,OAAAC,MAAA;IAAA,MAAAE,cAAAD,gBAAA,OAAAP,OAAAO,aAAA,GAAA,IAAAN,MAAA;AAAA,QAAAK,KAAAG,cAAAD,WAAAF,MAAAG,YAAAD;;;AAAA,MAAAJ,QAAA,YAAA;GAAA,MAAAE,OAAA,KAAAxD;AAAA,OAAAwD,QAAAA,KAAAI,cAAAL,OAAA;AAAAC,SAAAI,YAAAL;AAAA,SAAAM,6BAAA;AAAA,QAAA,KAAAC,gBAAA,MAAAA,gBAAAC,+BAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component } from "@geajs/core";
|
|
2
|
+
|
|
3
|
+
//#region src/components/button.d.ts
|
|
4
|
+
type ButtonVariant = 'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link';
|
|
5
|
+
type ButtonSize = 'default' | 'sm' | 'lg' | 'icon';
|
|
6
|
+
interface ButtonProps {
|
|
7
|
+
variant?: ButtonVariant | (string & {});
|
|
8
|
+
size?: ButtonSize | (string & {});
|
|
9
|
+
type?: 'button' | 'submit' | 'reset';
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
class?: string;
|
|
12
|
+
click?: MouseEventHandler<HTMLButtonElement>;
|
|
13
|
+
onClick?: MouseEventHandler<HTMLButtonElement>;
|
|
14
|
+
children?: ReactNode;
|
|
15
|
+
}
|
|
16
|
+
declare class Button extends Component<ButtonProps> {
|
|
17
|
+
template(props: ButtonProps): string;
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { ButtonProps, ButtonSize, ButtonVariant, Button as default };
|
|
21
|
+
//# sourceMappingURL=button.d.mts.map
|