@geajs/ui 0.1.3 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/dist/_virtual_gea-hmr.mjs +11 -0
  2. package/dist/accordion.d.mts +34 -0
  3. package/dist/accordion.mjs +137 -0
  4. package/dist/accordion.mjs.map +1 -0
  5. package/dist/alert.d.mts +15 -0
  6. package/dist/alert.mjs +93 -0
  7. package/dist/alert.mjs.map +1 -0
  8. package/dist/avatar.d.mts +26 -0
  9. package/dist/avatar.mjs +95 -0
  10. package/dist/avatar.mjs.map +1 -0
  11. package/dist/badge.d.mts +9 -0
  12. package/dist/badge.mjs +47 -0
  13. package/dist/badge.mjs.map +1 -0
  14. package/dist/button.d.mts +21 -0
  15. package/dist/button.mjs +86 -0
  16. package/dist/button.mjs.map +1 -0
  17. package/dist/card.d.mts +24 -0
  18. package/dist/card.mjs +152 -0
  19. package/dist/card.mjs.map +1 -0
  20. package/dist/checkbox.d.mts +37 -0
  21. package/dist/checkbox.mjs +78 -0
  22. package/dist/checkbox.mjs.map +1 -0
  23. package/dist/clipboard.d.mts +33 -0
  24. package/dist/clipboard.mjs +96 -0
  25. package/dist/clipboard.mjs.map +1 -0
  26. package/dist/cn.mjs +10 -0
  27. package/dist/cn.mjs.map +1 -0
  28. package/dist/collapsible.d.mts +29 -0
  29. package/dist/collapsible.mjs +75 -0
  30. package/dist/collapsible.mjs.map +1 -0
  31. package/dist/combobox.d.mts +67 -0
  32. package/dist/combobox.mjs +314 -0
  33. package/dist/combobox.mjs.map +1 -0
  34. package/dist/dialog.d.mts +57 -0
  35. package/dist/dialog.mjs +137 -0
  36. package/dist/dialog.mjs.map +1 -0
  37. package/dist/dnd-manager.d.mts +67 -0
  38. package/dist/dnd-manager.mjs +373 -0
  39. package/dist/dnd-manager.mjs.map +1 -0
  40. package/dist/drag-drop-context.d.mts +11 -0
  41. package/dist/drag-drop-context.mjs +41 -0
  42. package/dist/drag-drop-context.mjs.map +1 -0
  43. package/dist/draggable.d.mts +11 -0
  44. package/dist/draggable.mjs +62 -0
  45. package/dist/draggable.mjs.map +1 -0
  46. package/dist/droppable.d.mts +14 -0
  47. package/dist/droppable.mjs +61 -0
  48. package/dist/droppable.mjs.map +1 -0
  49. package/dist/file-upload.d.mts +38 -0
  50. package/dist/file-upload.mjs +157 -0
  51. package/dist/file-upload.mjs.map +1 -0
  52. package/dist/hover-card.d.mts +33 -0
  53. package/dist/hover-card.mjs +87 -0
  54. package/dist/hover-card.mjs.map +1 -0
  55. package/dist/index.d.mts +41 -1068
  56. package/dist/index.mjs +41 -4332
  57. package/dist/input.d.mts +9 -0
  58. package/dist/input.mjs +62 -0
  59. package/dist/input.mjs.map +1 -0
  60. package/dist/label.d.mts +9 -0
  61. package/dist/label.mjs +37 -0
  62. package/dist/label.mjs.map +1 -0
  63. package/dist/menu.d.mts +36 -0
  64. package/dist/menu.mjs +86 -0
  65. package/dist/menu.mjs.map +1 -0
  66. package/dist/number-input.d.mts +46 -0
  67. package/dist/number-input.mjs +87 -0
  68. package/dist/number-input.mjs.map +1 -0
  69. package/dist/pagination.d.mts +37 -0
  70. package/dist/pagination.mjs +95 -0
  71. package/dist/pagination.mjs.map +1 -0
  72. package/dist/pin-input.d.mts +45 -0
  73. package/dist/pin-input.mjs +135 -0
  74. package/dist/pin-input.mjs.map +1 -0
  75. package/dist/popover.d.mts +39 -0
  76. package/dist/popover.mjs +107 -0
  77. package/dist/popover.mjs.map +1 -0
  78. package/dist/progress.d.mts +34 -0
  79. package/dist/progress.mjs +84 -0
  80. package/dist/progress.mjs.map +1 -0
  81. package/dist/radio-group.d.mts +37 -0
  82. package/dist/radio-group.mjs +154 -0
  83. package/dist/radio-group.mjs.map +1 -0
  84. package/dist/rating-group.d.mts +38 -0
  85. package/dist/rating-group.mjs +159 -0
  86. package/dist/rating-group.mjs.map +1 -0
  87. package/dist/select.d.mts +54 -0
  88. package/dist/select.mjs +235 -0
  89. package/dist/select.mjs.map +1 -0
  90. package/dist/separator.d.mts +9 -0
  91. package/dist/separator.mjs +44 -0
  92. package/dist/separator.mjs.map +1 -0
  93. package/dist/skeleton.d.mts +9 -0
  94. package/dist/skeleton.mjs +41 -0
  95. package/dist/skeleton.mjs.map +1 -0
  96. package/dist/slider.d.mts +44 -0
  97. package/dist/slider.mjs +114 -0
  98. package/dist/slider.mjs.map +1 -0
  99. package/dist/switch.d.mts +37 -0
  100. package/dist/switch.mjs +78 -0
  101. package/dist/switch.mjs.map +1 -0
  102. package/dist/tabs.d.mts +36 -0
  103. package/dist/tabs.mjs +175 -0
  104. package/dist/tabs.mjs.map +1 -0
  105. package/dist/tags-input.d.mts +48 -0
  106. package/dist/tags-input.mjs +213 -0
  107. package/dist/tags-input.mjs.map +1 -0
  108. package/dist/textarea.d.mts +9 -0
  109. package/dist/textarea.mjs +62 -0
  110. package/dist/textarea.mjs.map +1 -0
  111. package/dist/toast.d.mts +33 -0
  112. package/dist/toast.mjs +211 -0
  113. package/dist/toast.mjs.map +1 -0
  114. package/dist/toggle-group.d.mts +32 -0
  115. package/dist/toggle-group.mjs +112 -0
  116. package/dist/toggle-group.mjs.map +1 -0
  117. package/dist/tooltip.d.mts +39 -0
  118. package/dist/tooltip.mjs +83 -0
  119. package/dist/tooltip.mjs.map +1 -0
  120. package/dist/tree-view.d.mts +35 -0
  121. package/dist/tree-view.mjs +92 -0
  122. package/dist/tree-view.mjs.map +1 -0
  123. package/dist/zag-component.d.mts +39 -0
  124. package/dist/zag-component.mjs +127 -0
  125. package/dist/zag-component.mjs.map +1 -0
  126. package/package.json +8 -2
  127. package/dist/index.mjs.map +0 -1
@@ -0,0 +1,9 @@
1
+ import { Component } from "@geajs/core";
2
+
3
+ //#region src/components/input.d.ts
4
+ declare class Input extends Component {
5
+ template(props: any): string;
6
+ }
7
+ //#endregion
8
+ export { Input as default };
9
+ //# sourceMappingURL=input.d.mts.map
package/dist/input.mjs ADDED
@@ -0,0 +1,62 @@
1
+ import { t as cn } from "./cn.mjs";
2
+ import "./_virtual_gea-hmr.mjs";
3
+ import { Component } from "@geajs/core";
4
+ //#region src/components/input.tsx
5
+ var Input = class extends Component {
6
+ template(props) {
7
+ return `<input id="${props.inputId}"${cn("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", props.class) == null || cn("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", props.class) === false ? "" : ` class="${(cn("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", props.class) != null ? String(cn("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", props.class)) : "").trim()}"`}${(props.type || "text") == null || (props.type || "text") === false ? "" : ` type="${props.type || "text"}"`}${props.placeholder == null || props.placeholder === false ? "" : ` placeholder="${props.placeholder}"`}${props.value == null || props.value === false ? "" : ` value="${props.value}"`}${props.disabled == null || props.disabled === false ? "" : ` disabled="${props.disabled}"`}${props.name == null || props.name === false ? "" : ` name="${props.name}"`} data-gea-event="ev0" />`;
8
+ }
9
+ get events() {
10
+ if (this.__evts) return this.__evts;
11
+ return this.__evts = { input: { "[data-gea-event=\"ev0\"]": this.__event_input_0 } };
12
+ }
13
+ __event_input_0(e, targetComponent) {
14
+ this.props.onInput?.(e);
15
+ }
16
+ __onPropChange(key, value) {
17
+ if (key === "class") {
18
+ const __el = this.element_;
19
+ this.props;
20
+ const __boundValue = cn("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", value);
21
+ if (__el) {
22
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
23
+ if (__el.className !== __newClass) __el.className = __newClass;
24
+ }
25
+ }
26
+ if (key === "type") {
27
+ const __el = this.element_;
28
+ this.props;
29
+ const __boundValue = value || "text";
30
+ if (__el) if (__boundValue === null || __boundValue === void 0) __el.removeAttribute("type");
31
+ else __el.setAttribute("type", String(__boundValue));
32
+ }
33
+ if (key === "placeholder") {
34
+ const __el = this.element_;
35
+ if (__el) if (value === null || value === void 0) __el.removeAttribute("placeholder");
36
+ else __el.setAttribute("placeholder", String(value));
37
+ }
38
+ if (key === "value") {
39
+ const __el = this.element_;
40
+ if (__el) __el.value = value === null || value === void 0 ? "" : String(value);
41
+ }
42
+ if (key === "disabled") {
43
+ const __el = this.element_;
44
+ if (__el) if (!value) __el.removeAttribute("disabled");
45
+ else __el.setAttribute("disabled", "");
46
+ }
47
+ if (key === "name") {
48
+ const __el = this.element_;
49
+ if (__el) if (value === null || value === void 0) __el.removeAttribute("name");
50
+ else __el.setAttribute("name", String(value));
51
+ }
52
+ if (key === "inputId") {
53
+ const __el = this.element_;
54
+ if (__el) if (value === null || value === void 0) __el.removeAttribute("id");
55
+ else __el.setAttribute("id", String(value));
56
+ }
57
+ }
58
+ };
59
+ //#endregion
60
+ export { Input as default };
61
+
62
+ //# sourceMappingURL=input.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.mjs","names":["Component","cn","handleComponentUpdate","registerHotModule","registerComponentInstance","unregisterComponentInstance","Input","template","props","inputId","class","String","trim","type","placeholder","value","disabled","name","events","__evts","input","__event_input_0","e","targetComponent","onInput","__onPropChange","key","__el","element_","__boundValue","__newClass","className","undefined","removeAttribute","setAttribute","import","meta","hot","__moduleExports","default","url","accept","newModule","__updatedModule","invalidate","__origCreated","prototype","created","__geaProps","constructor","call","__origDispose","dispose"],"sources":["../src/components/input.tsx"],"sourcesContent":["import { Component } from '@geajs/core'\nimport { cn } from '../utils/cn'\n\nexport default class Input extends Component {\n template(props: any) {\n return (\n <input\n class={cn(\n 'flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',\n props.class,\n )}\n type={props.type || 'text'}\n placeholder={props.placeholder}\n value={props.value}\n disabled={props.disabled}\n name={props.name}\n id={props.inputId}\n input={(e: Event) => props.onInput?.(e)}\n />\n )\n }\n}\n"],"mappings":";;;;AAGA,IAAqBM,QAArB,cAAmCN,UAAU;CAC3CO,SAASC,OAAY;AACnB,SAAA,cAWQA,MAAMC,QAAO,GATVR,GACL,2WACAO,MAAME,MACP,IAAA,QAHMT,GACL,2WACAO,MAAME,MACP,KAAA,QAAA,KAAA,YAHMT,GACL,2WACAO,MAAME,MACP,IAAA,OAAAC,OAHMV,GACL,2WACAO,MAAME,MACP,CAAA,GAAA,IAAAE,MAAA,CAAA,MACKJ,MAAMK,QAAQ,WAAM,SAApBL,MAAMK,QAAQ,YAAM,QAAA,KAAA,UAApBL,MAAMK,QAAQ,OAAM,KACbL,MAAMM,eAAW,QAAjBN,MAAMM,gBAAW,QAAA,KAAA,iBAAjBN,MAAMM,YAAW,KACvBN,MAAMO,SAAK,QAAXP,MAAMO,UAAK,QAAA,KAAA,WAAXP,MAAMO,MAAK,KACRP,MAAMQ,YAAQ,QAAdR,MAAMQ,aAAQ,QAAA,KAAA,cAAdR,MAAMQ,SAAQ,KAClBR,MAAMS,QAAI,QAAVT,MAAMS,SAAI,QAAA,KAAA,UAAVT,MAAMS,KAAI,GAAA;;CAKrB,IAAAC,SAAA;AAAA,MAAA,KAAAC,OAAA,QAAA,KAAAA;AAAA,SAAA,KAAAA,SAAA,EAAAC,OAAA,EAAA,4BAAA,KAAAC,iBAAA,EAAA;;CAnBHA,gBAAsBC,GAAGC,iBAAiB;AAAA,OAAAf,MAgBPgB,UAAUF,EAAC;;CAhB9CG,eAAsBC,KAAKX,OAAK;AAAA,MAAAW,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AAGX,QAAApB;GAAA,MAAAqB,eAGN5B,GACL,2WAAyWc,MAAA;AAAA,OAAAY,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAAlB,OAAAkB,aAAA,GAAA,IAAAjB,MAAA;AAAA,QAAAe,KAAAI,cAAAD,WAAAH,MAAAI,YAAAD;;;AAAA,MAAAJ,QAAA,QAAA;GAAA,MAAAC,OAAA,KAAAC;AAJ9V,QAAApB;GAAA,MAAAqB,eAAAd,SAOO;AAAM,OAAAY,KAAA,KAAAE,iBAAA,QAAAA,iBAAAG,KAAAA,EAAAL,MAAAM,gBAAA,OAAA;OAAAN,MAAAO,aAAA,QAAAvB,OAAAkB,aAAA,CAAA;;AAAA,MAAAH,QAAA,eAAA;GAAA,MAAAC,OAAA,KAAAC;AAAA,OAAAD,KAAA,KAAAZ,UAAA,QAAAA,UAAAiB,KAAAA,EAAAL,MAAAM,gBAAA,cAAA;OAAAN,MAAAO,aAAA,eAAAvB,OAAAI,MAAA,CAAA;;AAAA,MAAAW,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AAAA,OAAAD,KAAAA,MAAAZ,QAAAA,UAAA,QAAAA,UAAAiB,KAAAA,IAAA,KAAArB,OAAAI,MAAA;;AAAA,MAAAW,QAAA,YAAA;GAAA,MAAAC,OAAA,KAAAC;AAAA,OAAAD,KAAA,KAAA,CAAAZ,MAAAY,MAAAM,gBAAA,WAAA;OAAAN,MAAAO,aAAA,YAAA,GAAA;;AAAA,MAAAR,QAAA,QAAA;GAAA,MAAAC,OAAA,KAAAC;AAAA,OAAAD,KAAA,KAAAZ,UAAA,QAAAA,UAAAiB,KAAAA,EAAAL,MAAAM,gBAAA,OAAA;OAAAN,MAAAO,aAAA,QAAAvB,OAAAI,MAAA,CAAA;;AAAA,MAAAW,QAAA,WAAA;GAAA,MAAAC,OAAA,KAAAC;AAAA,OAAAD,KAAA,KAAAZ,UAAA,QAAAA,UAAAiB,KAAAA,EAAAL,MAAAM,gBAAA,KAAA;OAAAN,MAAAO,aAAA,MAAAvB,OAAAI,MAAA,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { Component } from "@geajs/core";
2
+
3
+ //#region src/components/label.d.ts
4
+ declare class Label extends Component {
5
+ template(props: any): string;
6
+ }
7
+ //#endregion
8
+ export { Label as default };
9
+ //# sourceMappingURL=label.d.mts.map
package/dist/label.mjs ADDED
@@ -0,0 +1,37 @@
1
+ import { t as cn } from "./cn.mjs";
2
+ import "./_virtual_gea-hmr.mjs";
3
+ import { Component } from "@geajs/core";
4
+ //#region src/components/label.tsx
5
+ var Label = class extends Component {
6
+ template(props) {
7
+ return `<label id="${this.id}"${cn("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70", props.class) == null || cn("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70", props.class) === false ? "" : ` class="${(cn("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70", props.class) != null ? String(cn("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70", props.class)) : "").trim()}"`}${props.htmlFor == null || props.htmlFor === false ? "" : ` for="${props.htmlFor}"`}>${props.children}</label>`;
8
+ }
9
+ __onPropChange(key, value) {
10
+ if (key === "class") {
11
+ const __el = this.element_;
12
+ this.props;
13
+ const __boundValue = cn("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70", value);
14
+ if (__el) {
15
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
16
+ if (__el.className !== __newClass) __el.className = __newClass;
17
+ }
18
+ }
19
+ if (key === "htmlFor") {
20
+ const __el = this.element_;
21
+ if (__el) if (value === null || value === void 0) __el.removeAttribute("for");
22
+ else __el.setAttribute("for", String(value));
23
+ }
24
+ if (key === "children") {
25
+ const __el = this.element_;
26
+ if (__el && __el.innerHTML !== value) {
27
+ __el.innerHTML = value;
28
+ this.instantiateChildComponents_();
29
+ if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
30
+ }
31
+ }
32
+ }
33
+ };
34
+ //#endregion
35
+ export { Label as default };
36
+
37
+ //# sourceMappingURL=label.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label.mjs","names":["Component","cn","handleComponentUpdate","registerHotModule","registerComponentInstance","unregisterComponentInstance","Label","template","props","__id","id","class","String","trim","htmlFor","children","__onPropChange","key","value","__el","element_","__boundValue","__newClass","className","undefined","removeAttribute","setAttribute","innerHTML","instantiateChildComponents_","parentComponent","mountCompiledChildComponents_","import","meta","hot","__moduleExports","default","url","accept","newModule","__updatedModule","invalidate","__origCreated","prototype","created","__geaProps","constructor","name","call","__origDispose","dispose"],"sources":["../src/components/label.tsx"],"sourcesContent":["import { Component } from '@geajs/core'\nimport { cn } from '../utils/cn'\n\nexport default class Label extends Component {\n template(props: any) {\n return (\n <label\n class={cn(\n 'text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70',\n props.class,\n )}\n for={props.htmlFor}\n >\n {props.children}\n </label>\n )\n }\n}\n"],"mappings":";;;;AAGA,IAAqBM,QAArB,cAAmCN,UAAU;CAC3CO,SAASC,OAAY;AACnB,SAAA,cADmB,KAAAE,GACnB,GAEWT,GACL,8FACAO,MAAMG,MACP,IAAA,QAHMV,GACL,8FACAO,MAAMG,MACP,KAAA,QAAA,KAAA,YAHMV,GACL,8FACAO,MAAMG,MACP,IAAA,OAAAC,OAHMX,GACL,8FACAO,MAAMG,MACP,CAAA,GAAA,IAAAE,MAAA,CAAA,KACIL,MAAMM,WAAO,QAAbN,MAAMM,YAAO,QAAA,KAAA,SAAbN,MAAMM,QAAO,GAAA,GAEjBN,MAAMO,SAAQ;;CAZvBC,eAAsBC,KAAKC,OAAK;AAAA,MAAAD,QAAA,SAAA;GAAA,MAAAE,OAAA,KAAAC;AAGX,QAAAZ;GAAA,MAAAa,eAGNpB,GACL,8FAA4FiB,MAAA;AAAA,OAAAC,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAAT,OAAAS,aAAA,GAAA,IAAAR,MAAA;AAAA,QAAAM,KAAAI,cAAAD,WAAAH,MAAAI,YAAAD;;;AAAA,MAAAL,QAAA,WAAA;GAAA,MAAAE,OAAA,KAAAC;AAAA,OAAAD,KAAA,KAAAD,UAAA,QAAAA,UAAAM,KAAAA,EAAAL,MAAAM,gBAAA,MAAA;OAAAN,MAAAO,aAAA,OAAAd,OAAAM,MAAA,CAAA;;AAAA,MAAAD,QAAA,YAAA;GAAA,MAAAE,OAAA,KAAAC;AAAA,OAAAD,QAAAA,KAAAQ,cAAAT,OAAA;AAAAC,SAAAQ,YAAAT;AAAA,SAAAU,6BAAA;AAAA,QAAA,KAAAC,gBAAA,MAAAA,gBAAAC,+BAAA"}
@@ -0,0 +1,36 @@
1
+ import { n as ZagComponent } from "./zag-component.mjs";
2
+ import * as menu from "@zag-js/menu";
3
+ import * as _zag_js_types0 from "@zag-js/types";
4
+
5
+ //#region src/components/menu.d.ts
6
+ declare class Menu extends ZagComponent {
7
+ open: boolean;
8
+ createMachine(_props: any): any;
9
+ getMachineProps(props: any): {
10
+ id: string;
11
+ open: any;
12
+ defaultOpen: any;
13
+ closeOnSelect: any;
14
+ loopFocus: any;
15
+ positioning: any;
16
+ onOpenChange: (details: menu.OpenChangeDetails) => void;
17
+ onSelect: any;
18
+ };
19
+ connectApi(service: any): menu.Api<_zag_js_types0.PropTypes<{
20
+ [x: string]: any;
21
+ }>>;
22
+ getSpreadMap(): {
23
+ '[data-part="trigger"]': string;
24
+ '[data-part="positioner"]': string;
25
+ '[data-part="content"]': string;
26
+ '[data-part="separator"]': string;
27
+ '[data-part="item"]': (api: any, el: any) => any;
28
+ '[data-part="item-group"]': (api: any, el: any) => any;
29
+ '[data-part="item-group-label"]': (api: any, el: any) => any;
30
+ };
31
+ syncState(api: any): void;
32
+ template(props: any): string;
33
+ }
34
+ //#endregion
35
+ export { Menu as default };
36
+ //# sourceMappingURL=menu.d.mts.map
package/dist/menu.mjs ADDED
@@ -0,0 +1,86 @@
1
+ import { t as ZagComponent } from "./zag-component.mjs";
2
+ import "./_virtual_gea-hmr.mjs";
3
+ import { Component } from "@geajs/core";
4
+ import { normalizeProps } from "@zag-js/vanilla";
5
+ import * as menu from "@zag-js/menu";
6
+ //#region src/components/menu.tsx
7
+ var Menu = class extends ZagComponent {
8
+ createMachine(_props) {
9
+ return menu.machine;
10
+ }
11
+ getMachineProps(props) {
12
+ return {
13
+ id: this.id,
14
+ open: props.open,
15
+ defaultOpen: props.defaultOpen,
16
+ closeOnSelect: props.closeOnSelect ?? true,
17
+ loopFocus: props.loopFocus ?? false,
18
+ positioning: props.positioning,
19
+ onOpenChange: (details) => {
20
+ this.open = details.open;
21
+ props.onOpenChange?.(details);
22
+ },
23
+ onSelect: props.onSelect
24
+ };
25
+ }
26
+ connectApi(service) {
27
+ return menu.connect(service, normalizeProps);
28
+ }
29
+ getSpreadMap() {
30
+ return {
31
+ "[data-part=\"trigger\"]": "getTriggerProps",
32
+ "[data-part=\"positioner\"]": "getPositionerProps",
33
+ "[data-part=\"content\"]": "getContentProps",
34
+ "[data-part=\"separator\"]": "getSeparatorProps",
35
+ "[data-part=\"item\"]": (api, el) => api.getItemProps({ value: el.dataset.value }),
36
+ "[data-part=\"item-group\"]": (api, el) => api.getItemGroupProps({ id: el.dataset.groupId }),
37
+ "[data-part=\"item-group-label\"]": (api, el) => api.getItemGroupLabelProps({ htmlFor: el.dataset.htmlFor })
38
+ };
39
+ }
40
+ syncState(api) {
41
+ this.open = api.open;
42
+ }
43
+ template(props) {
44
+ const __id = this.id;
45
+ Component._register(ZagComponent);
46
+ const items = props.items || [];
47
+ return `<div id="${__id}"${(props.class || "") == null || (props.class || "") === false ? "" : ` class="${((props.class || "") != null ? String(props.class || "") : "").trim()}"`}><button id="${__id + "-b1"}" data-part="trigger" class="menu-trigger inline-flex items-center justify-center gap-1 rounded-md border border-input bg-background px-4 py-2 text-sm font-medium shadow-sm hover:bg-accent hover:text-accent-foreground">${props.triggerLabel || "Menu"}</button><div data-part="positioner" class="menu-positioner"><div id="${__id + "-b2"}" data-part="content" class="menu-content z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md">${items.map((item, i) => item.type === "separator" ? `<div data-gea-item-id="${String(item)}" data-part="separator" class="menu-separator -mx-1 my-1 h-px bg-muted"></div>` : `<div data-gea-item-id="${item?.id ?? item}" data-part="item"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="menu-item relative flex cursor-pointer select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50">${item.label}</div>`).join("") + "<!---->"}</div></div></div>`;
48
+ }
49
+ render__unresolved_0Item(item, i) {
50
+ return `<div data-gea-item-id="${item?.id ?? item}" data-part="separator" class="menu-separator -mx-1 my-1 h-px bg-muted"></div>`;
51
+ }
52
+ __onPropChange(key, value) {
53
+ const __id = this.id;
54
+ if (key === "class") {
55
+ const __el = this.element_;
56
+ this.props;
57
+ const __boundValue = value || "";
58
+ if (__el) {
59
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
60
+ if (__el.className !== __newClass) __el.className = __newClass;
61
+ }
62
+ }
63
+ if (key === "triggerLabel") {
64
+ const __el = this.__e0 || (this.__e0 = document.getElementById(__id + "-b1"));
65
+ this.props;
66
+ const __boundValue = value || "Menu";
67
+ if (__el && __el.textContent !== __boundValue) __el.textContent = __boundValue;
68
+ }
69
+ if (key === "items") this.__geaSyncMap(0);
70
+ }
71
+ __resetEls() {
72
+ this.__e0 = null;
73
+ }
74
+ __observe_local_props(__v, __c) {
75
+ this.__geaSyncMap(0);
76
+ }
77
+ createdHooks() {
78
+ this.__geaRegisterMap(0, "____unresolved_0_container", () => document.getElementById(this.id + "-b2"), () => {
79
+ return this.props.items || [];
80
+ }, (__item, __idx) => this.create__unresolved_0Item(__item, __idx));
81
+ }
82
+ };
83
+ //#endregion
84
+ export { Menu as default };
85
+
86
+ //# sourceMappingURL=menu.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.mjs","names":["menu","normalizeProps","ZagComponent","handleComponentUpdate","registerHotModule","registerComponentInstance","unregisterComponentInstance","Menu","open","createMachine","_props","machine","getMachineProps","props","id","defaultOpen","closeOnSelect","loopFocus","positioning","onOpenChange","details","OpenChangeDetails","onSelect","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","getItemProps","value","HTMLElement","dataset","[data-part=\"item-group\"]","getItemGroupProps","groupId","[data-part=\"item-group-label\"]","getItemGroupLabelProps","htmlFor","syncState","template","__id","Component","_register","items","class","String","trim","triggerLabel","map","item","i","type","label","join","render__unresolved_0Item","__onPropChange","key","__el","element_","__boundValue","__newClass","className","__e0","document","getElementById","textContent","__geaSyncMap","__resetEls","__observe_local_props","__v","__c","createdHooks","__geaRegisterMap","__item","__idx","create__unresolved_0Item","import","meta","hot","__moduleExports","default","url","accept","newModule","__updatedModule","invalidate","__origCreated","prototype","created","__geaProps","constructor","name","call","__origDispose","dispose"],"sources":["../src/components/menu.tsx"],"sourcesContent":["import * as menu from '@zag-js/menu'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Menu extends ZagComponent {\n declare open: boolean\n\n createMachine(_props: any): any {\n return menu.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n open: props.open,\n defaultOpen: props.defaultOpen,\n closeOnSelect: props.closeOnSelect ?? true,\n loopFocus: props.loopFocus ?? false,\n positioning: props.positioning,\n onOpenChange: (details: menu.OpenChangeDetails) => {\n this.open = details.open\n props.onOpenChange?.(details)\n },\n onSelect: props.onSelect,\n }\n }\n\n connectApi(service: any) {\n return menu.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"trigger\"]': 'getTriggerProps',\n '[data-part=\"positioner\"]': 'getPositionerProps',\n '[data-part=\"content\"]': 'getContentProps',\n '[data-part=\"separator\"]': 'getSeparatorProps',\n '[data-part=\"item\"]': (api, el) => api.getItemProps({ value: (el as HTMLElement).dataset.value }),\n '[data-part=\"item-group\"]': (api, el) => api.getItemGroupProps({ id: (el as HTMLElement).dataset.groupId }),\n '[data-part=\"item-group-label\"]': (api, el) =>\n api.getItemGroupLabelProps({ htmlFor: (el as HTMLElement).dataset.htmlFor }),\n }\n }\n\n syncState(api: any) {\n this.open = api.open\n }\n\n template(props: any) {\n const items = props.items || []\n return (\n <div class={props.class || ''}>\n <button\n data-part=\"trigger\"\n class=\"menu-trigger inline-flex items-center justify-center gap-1 rounded-md border border-input bg-background px-4 py-2 text-sm font-medium shadow-sm hover:bg-accent hover:text-accent-foreground\"\n >\n {props.triggerLabel || 'Menu'}\n </button>\n <div data-part=\"positioner\" class=\"menu-positioner\">\n <div\n data-part=\"content\"\n class=\"menu-content z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md\"\n >\n {items.map((item: any, i: number) =>\n item.type === 'separator' ? (\n <div key={`sep-${i}`} data-part=\"separator\" class=\"menu-separator -mx-1 my-1 h-px bg-muted\"></div>\n ) : (\n <div\n key={item.value}\n data-part=\"item\"\n data-value={item.value}\n class=\"menu-item relative flex cursor-pointer select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\"\n >\n {item.label}\n </div>\n ),\n )}\n </div>\n </div>\n </div>\n )\n }\n}\n"],"mappings":";;;;;;AAIA,IAAqBO,OAArB,cAAkCL,aAAa;CAG7CO,cAAcC,QAAkB;AAC9B,SAAOV,KAAKW;;CAGdC,gBAAgBC,OAAY;AAC1B,SAAO;GACLC,IAAI,KAAKA;GACTN,MAAMK,MAAML;GACZO,aAAaF,MAAME;GACnBC,eAAeH,MAAMG,iBAAiB;GACtCC,WAAWJ,MAAMI,aAAa;GAC9BC,aAAaL,MAAMK;GACnBC,eAAeC,YAAoC;AACjD,SAAKZ,OAAOY,QAAQZ;AACpBK,UAAMM,eAAeC,QAAQ;;GAE/BE,UAAUT,MAAMS;GACjB;;CAGHC,WAAWC,SAAc;AACvB,SAAOxB,KAAKyB,QAAQD,SAASvB,eAAe;;CAG9CyB,eAAe;AACb,SAAO;GACL,2BAAyB;GACzB,8BAA4B;GAC5B,2BAAyB;GACzB,6BAA2B;GAC3B,yBAAuBE,KAAKC,OAAOD,IAAIE,aAAa,EAAEC,OAAQF,GAAmBI,QAAQF,OAAO,CAAC;GACjG,+BAA6BH,KAAKC,OAAOD,IAAIO,kBAAkB,EAAErB,IAAKe,GAAmBI,QAAQG,SAAS,CAAC;GAC3G,qCAAmCR,KAAKC,OACtCD,IAAIU,uBAAuB,EAAEC,SAAUV,GAAmBI,QAAQM,SAAS,CAAA;GAC9E;;CAGHC,UAAUZ,KAAU;AAClB,OAAKpB,OAAOoB,IAAIpB;;CAGlBiC,SAAS5B,OAAY;EAAA,MAAA6B,OAAA,KAAA5B;AAAA6B,YAAAC,UAAA1C,aAAA;EACnB,MAAM2C,QAAQhC,MAAMgC,SAAS,EAAE;AAC/B,SAAA,YAAAH,KAAA,IACc7B,MAAMiC,SAAS,OAAE,SAAjBjC,MAAMiC,SAAS,QAAE,QAAA,KAAA,aAAjBjC,MAAMiC,SAAS,OAAE,OAAAC,OAAjBlC,MAAMiC,SAAS,GAAE,GAAA,IAAAE,MAAA,CAAA,GAAA,eAAAN,OAAA,MAAA,6NAKxB7B,MAAMoC,gBAAgB,OAAM,wEAAAP,OAAA,MAAA,kJAO1BG,MAAMK,KAAKC,MAAWC,MACrBD,KAAKE,SAAS,cAAW,0BAAAN,OAAAI,KAAA,CAAA,kFAAA,0BAAAA,MAAArC,MAAAqC,KAAA,oBAMTA,KAAKpB,SAAK,QAAVoB,KAAKpB,UAAK,QAAA,KAAA,gBAAVoB,KAAKpB,MAAK,GAAA,6PAGrBoB,KAAKG,MAAK,QAAA,CAAAC,KAAA,GAAA,GAAA,UAAA;;CAxE7BC,yBAAAL,MAAAC,GAAA;AAAA,SAAA,0BAAAD,MAAArC,MAAAqC,KAAA;;CAAAM,eAAsBC,KAAK3B,OAAK;EAAA,MAAAW,OAAA,KAAA5B;AAAA,MAAA4C,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AA+CX,QAAA/C;GAAA,MAAAgD,eAAA9B,SAGY;AAAE,OAAA4B,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAAd,OAAAc,aAAA,GAAA,IAAAb,MAAA;AAAA,QAAAW,KAAAI,cAAAD,WAAAH,MAAAI,YAAAD;;;AAAA,MAAAJ,QAAA,gBAAA;GAAA,MAAAC,OAAA,KAAAK,SAAA,KAAAA,OAAAC,SAAAC,eAAAxB,OAAA,MAAA;AAHd,QAAA7B;GAAA,MAAAgD,eAAA9B,SAQY;AAAM,OAAA4B,QAAAA,KAAAQ,gBAAAN,aAAAF,MAAAQ,cAAAN;;AAAA,MAAAH,QAAA,QAAA,MAAAU,aAAA,EAAA;;CAvDHC,aAAA;AAAA,OAAAL,OAAA;;CAAAM,sBAAAC,KAAAC,KAAA;AAAA,OAAAJ,aAAA,EAAA;;CAApCK,eAAwB;AAAA,OAAAC,iBAAA,GAAA,oCAAAT,SAAAC,eAAA,KAAApD,KAAA,MAAA,QAAA;AAAA,UAAA,KAAAD,MAgDAgC,SAAK,EAAA;MAAA8B,QAAAC,UAAA,KAAAC,yBAAAF,QAAAC,MAAA,CAAA"}
@@ -0,0 +1,46 @@
1
+ import { n as ZagComponent } from "./zag-component.mjs";
2
+ import * as numberInput from "@zag-js/number-input";
3
+ import * as _zag_js_types0 from "@zag-js/types";
4
+
5
+ //#region src/components/number-input.d.ts
6
+ declare class NumberInput extends ZagComponent {
7
+ value: string;
8
+ valueAsNumber: number;
9
+ createMachine(_props: any): any;
10
+ getMachineProps(props: any): {
11
+ id: string;
12
+ value: any;
13
+ defaultValue: any;
14
+ min: any;
15
+ max: any;
16
+ step: any;
17
+ disabled: any;
18
+ readOnly: any;
19
+ invalid: any;
20
+ required: any;
21
+ name: any;
22
+ form: any;
23
+ allowMouseWheel: any;
24
+ clampValueOnBlur: any;
25
+ formatOptions: any;
26
+ locale: any;
27
+ onValueChange: (details: numberInput.ValueChangeDetails) => void;
28
+ };
29
+ connectApi(service: any): numberInput.Api<_zag_js_types0.PropTypes<{
30
+ [x: string]: any;
31
+ }>>;
32
+ getSpreadMap(): {
33
+ '[data-part="root"]': string;
34
+ '[data-part="label"]': string;
35
+ '[data-part="control"]': string;
36
+ '[data-part="input"]': string;
37
+ '[data-part="increment-trigger"]': string;
38
+ '[data-part="decrement-trigger"]': string;
39
+ '[data-part="scrubber"]': string;
40
+ };
41
+ syncState(api: any): void;
42
+ template(props: any): string;
43
+ }
44
+ //#endregion
45
+ export { NumberInput as default };
46
+ //# sourceMappingURL=number-input.d.mts.map
@@ -0,0 +1,87 @@
1
+ import { t as ZagComponent } from "./zag-component.mjs";
2
+ import "./_virtual_gea-hmr.mjs";
3
+ import { Component } from "@geajs/core";
4
+ import { normalizeProps } from "@zag-js/vanilla";
5
+ import * as numberInput from "@zag-js/number-input";
6
+ //#region src/components/number-input.tsx
7
+ var NumberInput = class extends ZagComponent {
8
+ constructor(...args) {
9
+ super(...args);
10
+ this.props;
11
+ this.__geaCond_0 = !!this.props.label;
12
+ this.__geaRegisterCond(0, "c0", () => {
13
+ this.props;
14
+ return this.props.label;
15
+ }, () => {
16
+ this.props;
17
+ return `<label data-part="label" class="number-input-label text-sm font-medium mb-1 block">${this.props.label}</label>`;
18
+ }, null);
19
+ }
20
+ createMachine(_props) {
21
+ return numberInput.machine;
22
+ }
23
+ getMachineProps(props) {
24
+ return {
25
+ id: this.id,
26
+ value: props.value,
27
+ defaultValue: props.defaultValue,
28
+ min: props.min,
29
+ max: props.max,
30
+ step: props.step ?? 1,
31
+ disabled: props.disabled,
32
+ readOnly: props.readOnly,
33
+ invalid: props.invalid,
34
+ required: props.required,
35
+ name: props.name,
36
+ form: props.form,
37
+ allowMouseWheel: props.allowMouseWheel,
38
+ clampValueOnBlur: props.clampValueOnBlur ?? true,
39
+ formatOptions: props.formatOptions,
40
+ locale: props.locale,
41
+ onValueChange: (details) => {
42
+ this.value = details.value;
43
+ this.valueAsNumber = details.valueAsNumber;
44
+ props.onValueChange?.(details);
45
+ }
46
+ };
47
+ }
48
+ connectApi(service) {
49
+ return numberInput.connect(service, normalizeProps);
50
+ }
51
+ getSpreadMap() {
52
+ return {
53
+ "[data-part=\"root\"]": "getRootProps",
54
+ "[data-part=\"label\"]": "getLabelProps",
55
+ "[data-part=\"control\"]": "getControlProps",
56
+ "[data-part=\"input\"]": "getInputProps",
57
+ "[data-part=\"increment-trigger\"]": "getIncrementTriggerProps",
58
+ "[data-part=\"decrement-trigger\"]": "getDecrementTriggerProps",
59
+ "[data-part=\"scrubber\"]": "getScrubberProps"
60
+ };
61
+ }
62
+ syncState(api) {
63
+ this.value = api.value;
64
+ this.valueAsNumber = api.valueAsNumber;
65
+ }
66
+ template(props) {
67
+ const __id = this.id;
68
+ Component._register(ZagComponent);
69
+ return `<div id="${__id}" data-part="root"${(props.class || "") == null || (props.class || "") === false ? "" : ` class="${((props.class || "") != null ? String(props.class || "") : "").trim()}"`}><!--${__id + "-c0"}-->${props.label && `<label data-part="label" class="number-input-label text-sm font-medium mb-1 block">${props.label}</label>` || ""}<!--${__id + "-c0-end"}--><div data-part="control" class="number-input-control flex"><button data-part="decrement-trigger" class="number-input-decrement inline-flex h-9 items-center justify-center rounded-l-md border border-r-0 border-input px-2 hover:bg-accent">−</button><input data-part="input" class="number-input-input h-9 w-full border border-input bg-transparent px-3 text-center text-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring" /><button data-part="increment-trigger" class="number-input-increment inline-flex h-9 items-center justify-center rounded-r-md border border-l-0 border-input px-2 hover:bg-accent">+</button></div></div>`;
70
+ }
71
+ __onPropChange(key, value) {
72
+ if (key === "class") {
73
+ const __el = this.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
+ if (key === "label") this.__geaPatchCond(0);
82
+ }
83
+ };
84
+ //#endregion
85
+ export { NumberInput as default };
86
+
87
+ //# sourceMappingURL=number-input.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number-input.mjs","names":["numberInput","normalizeProps","ZagComponent","handleComponentUpdate","registerHotModule","registerComponentInstance","unregisterComponentInstance","NumberInput","constructor","args","props","__geaCond_0","label","__geaRegisterCond","value","valueAsNumber","createMachine","_props","machine","getMachineProps","id","defaultValue","min","max","step","disabled","readOnly","invalid","required","name","form","allowMouseWheel","clampValueOnBlur","formatOptions","locale","onValueChange","details","ValueChangeDetails","connectApi","service","connect","getSpreadMap","syncState","api","template","__id","Component","_register","class","String","trim","__onPropChange","key","__el","element_","__boundValue","__newClass","className","__geaPatchCond","import","meta","hot","__moduleExports","default","url","accept","newModule","__updatedModule","invalidate","__origCreated","prototype","created","__geaProps","call","__origDispose","dispose"],"sources":["../src/components/number-input.tsx"],"sourcesContent":["import * as numberInput from '@zag-js/number-input'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class NumberInput extends ZagComponent {\n declare value: string\n declare valueAsNumber: number\n\n createMachine(_props: any): any {\n return numberInput.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n min: props.min,\n max: props.max,\n step: props.step ?? 1,\n disabled: props.disabled,\n readOnly: props.readOnly,\n invalid: props.invalid,\n required: props.required,\n name: props.name,\n form: props.form,\n allowMouseWheel: props.allowMouseWheel,\n clampValueOnBlur: props.clampValueOnBlur ?? true,\n formatOptions: props.formatOptions,\n locale: props.locale,\n onValueChange: (details: numberInput.ValueChangeDetails) => {\n this.value = details.value\n this.valueAsNumber = details.valueAsNumber\n props.onValueChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return numberInput.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=\"input\"]': 'getInputProps',\n '[data-part=\"increment-trigger\"]': 'getIncrementTriggerProps',\n '[data-part=\"decrement-trigger\"]': 'getDecrementTriggerProps',\n '[data-part=\"scrubber\"]': 'getScrubberProps',\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n this.valueAsNumber = api.valueAsNumber\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=\"number-input-label text-sm font-medium mb-1 block\">\n {props.label}\n </label>\n )}\n <div data-part=\"control\" class=\"number-input-control flex\">\n <button\n data-part=\"decrement-trigger\"\n class=\"number-input-decrement inline-flex h-9 items-center justify-center rounded-l-md border border-r-0 border-input px-2 hover:bg-accent\"\n >\n &#x2212;\n </button>\n <input\n data-part=\"input\"\n class=\"number-input-input h-9 w-full border border-input bg-transparent px-3 text-center text-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring\"\n />\n <button\n data-part=\"increment-trigger\"\n class=\"number-input-increment inline-flex h-9 items-center justify-center rounded-r-md border border-l-0 border-input px-2 hover:bg-accent\"\n >\n &#x2B;\n </button>\n </div>\n </div>\n )\n }\n}\n"],"mappings":";;;;;;AAIA,IAAqBO,cAArB,cAAyCL,aAAa;CAHtDM,YAAsB,GAAGC,MAAI;AAAA,QAAA,GAAAA,KAAA;AA0DR,OAAAC;AAAA,OAAAC,cAAA,CAAA,CAAA,KAAAD,MAGNE;AAAK,OAAAC,kBAAA,GAAA,YAAA;AAHC,QAAAH;AAAA,UAAA,KAAAA,MAGNE;WAAK;AAHC,QAAAF;AAAA,UAAA,sFAAA,KAAAA,MAKFE,MAAK;KAAA,KAAA;;CAxDtBI,cAAcC,QAAkB;AAC9B,SAAOjB,YAAYkB;;CAGrBC,gBAAgBT,OAAY;AAC1B,SAAO;GACLU,IAAI,KAAKA;GACTN,OAAOJ,MAAMI;GACbO,cAAcX,MAAMW;GACpBC,KAAKZ,MAAMY;GACXC,KAAKb,MAAMa;GACXC,MAAMd,MAAMc,QAAQ;GACpBC,UAAUf,MAAMe;GAChBC,UAAUhB,MAAMgB;GAChBC,SAASjB,MAAMiB;GACfC,UAAUlB,MAAMkB;GAChBC,MAAMnB,MAAMmB;GACZC,MAAMpB,MAAMoB;GACZC,iBAAiBrB,MAAMqB;GACvBC,kBAAkBtB,MAAMsB,oBAAoB;GAC5CC,eAAevB,MAAMuB;GACrBC,QAAQxB,MAAMwB;GACdC,gBAAgBC,YAA4C;AAC1D,SAAKtB,QAAQsB,QAAQtB;AACrB,SAAKC,gBAAgBqB,QAAQrB;AAC7BL,UAAMyB,gBAAgBC,QAAQ;;GAEjC;;CAGHE,WAAWC,SAAc;AACvB,SAAOvC,YAAYwC,QAAQD,SAAStC,eAAe;;CAGrDwC,eAAe;AACb,SAAO;GACL,wBAAsB;GACtB,yBAAuB;GACvB,2BAAyB;GACzB,yBAAuB;GACvB,qCAAmC;GACnC,qCAAmC;GACnC,4BAA0B;GAC3B;;CAGHC,UAAUC,KAAU;AAClB,OAAK7B,QAAQ6B,IAAI7B;AACjB,OAAKC,gBAAgB4B,IAAI5B;;CAG3B6B,SAASlC,OAAY;EAAA,MAAAmC,OAAA,KAAAzB;AAAA0B,YAAAC,UAAA7C,aAAA;AACnB,SAAA,YAAA2C,KAAA,qBAC+BnC,MAAMsC,SAAS,OAAE,SAAjBtC,MAAMsC,SAAS,QAAE,QAAA,KAAA,aAAjBtC,MAAMsC,SAAS,OAAE,OAAAC,OAAjBvC,MAAMsC,SAAS,GAAE,GAAA,IAAAE,MAAA,CAAA,GAAA,OAAAL,OAAA,MAAA,KAC3CnC,MAAME,SAAK,sFAEPF,MAAME,MAAK,aAAA,GAAA,MAAAiC,OAAA,UAAA;;CA/DxBM,eAAsBC,KAAKtC,OAAK;AAAA,MAAAsC,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AA0DX,QAAA5C;GAAA,MAAA6C,eAAAzC,SAE6B;AAAE,OAAAuC,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAAN,OAAAM,aAAA,GAAA,IAAAL,MAAA;AAAA,QAAAG,KAAAI,cAAAD,WAAAH,MAAAI,YAAAD;;;AAAA,MAAAJ,QAAA,QAAA,MAAAM,eAAA,EAAA"}
@@ -0,0 +1,37 @@
1
+ import { n as ZagComponent } from "./zag-component.mjs";
2
+ import * as pagination from "@zag-js/pagination";
3
+ import * as _zag_js_types0 from "@zag-js/types";
4
+
5
+ //#region src/components/pagination.d.ts
6
+ declare class Pagination extends ZagComponent {
7
+ page: number;
8
+ totalPages: number;
9
+ createMachine(_props: any): any;
10
+ getMachineProps(props: any): {
11
+ id: string;
12
+ count: any;
13
+ page: any;
14
+ defaultPage: any;
15
+ pageSize: any;
16
+ defaultPageSize: any;
17
+ siblingCount: any;
18
+ type: any;
19
+ onPageChange: (details: pagination.PageChangeDetails) => void;
20
+ onPageSizeChange: any;
21
+ };
22
+ connectApi(service: any): pagination.Api<_zag_js_types0.PropTypes<{
23
+ [x: string]: any;
24
+ }>>;
25
+ getSpreadMap(): {
26
+ '[data-part="root"]': string;
27
+ '[data-part="prev-trigger"]': string;
28
+ '[data-part="next-trigger"]': string;
29
+ '[data-part="item"]': (api: any, el: any) => any;
30
+ '[data-part="ellipsis"]': (api: any, el: any) => any;
31
+ };
32
+ syncState(api: any): void;
33
+ template(props: any): string;
34
+ }
35
+ //#endregion
36
+ export { Pagination as default };
37
+ //# sourceMappingURL=pagination.d.mts.map
@@ -0,0 +1,95 @@
1
+ import { t as ZagComponent } from "./zag-component.mjs";
2
+ import "./_virtual_gea-hmr.mjs";
3
+ import { Component } from "@geajs/core";
4
+ import { normalizeProps } from "@zag-js/vanilla";
5
+ import * as pagination from "@zag-js/pagination";
6
+ //#region src/components/pagination.tsx
7
+ var Pagination = class extends ZagComponent {
8
+ constructor(..._args) {
9
+ super(..._args);
10
+ this.page = 1;
11
+ this.totalPages = 1;
12
+ }
13
+ createMachine(_props) {
14
+ return pagination.machine;
15
+ }
16
+ getMachineProps(props) {
17
+ return {
18
+ id: this.id,
19
+ count: props.count ?? 0,
20
+ page: props.page,
21
+ defaultPage: props.defaultPage ?? 1,
22
+ pageSize: props.pageSize,
23
+ defaultPageSize: props.defaultPageSize ?? 10,
24
+ siblingCount: props.siblingCount ?? 1,
25
+ type: props.type ?? "button",
26
+ onPageChange: (details) => {
27
+ this.page = details.page;
28
+ props.onPageChange?.(details);
29
+ },
30
+ onPageSizeChange: props.onPageSizeChange
31
+ };
32
+ }
33
+ connectApi(service) {
34
+ return pagination.connect(service, normalizeProps);
35
+ }
36
+ getSpreadMap() {
37
+ return {
38
+ "[data-part=\"root\"]": "getRootProps",
39
+ "[data-part=\"prev-trigger\"]": "getPrevTriggerProps",
40
+ "[data-part=\"next-trigger\"]": "getNextTriggerProps",
41
+ "[data-part=\"item\"]": (api, el) => {
42
+ const value = parseInt(el.dataset.value || "1", 10);
43
+ return api.getItemProps({
44
+ type: "page",
45
+ value
46
+ });
47
+ },
48
+ "[data-part=\"ellipsis\"]": (api, el) => {
49
+ const index = parseInt(el.dataset.index || "0", 10);
50
+ return api.getEllipsisProps({ index });
51
+ }
52
+ };
53
+ }
54
+ syncState(api) {
55
+ this.page = api.page;
56
+ this.totalPages = api.totalPages;
57
+ }
58
+ template(props) {
59
+ const __id = this.id;
60
+ Component._register(ZagComponent);
61
+ return `<nav id="${__id}" data-part="root" class="${`pagination-root ${props.class || ""}`.trim()}"><div class="flex items-center gap-1"><button data-part="prev-trigger" class="pagination-prev inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-sm hover:bg-accent disabled:opacity-50">‹ Prev</button><button data-part="next-trigger" class="pagination-next inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-sm hover:bg-accent disabled:opacity-50">Next ›</button></div></nav>`;
62
+ }
63
+ static {
64
+ this.__tpl = (() => {
65
+ if (typeof document === "undefined") return void 0;
66
+ var t = document.createElement("template");
67
+ t.innerHTML = "<nav data-part=\"root\"><div class=\"flex items-center gap-1\"><button data-part=\"prev-trigger\" class=\"pagination-prev inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-sm hover:bg-accent disabled:opacity-50\">‹ Prev</button><button data-part=\"next-trigger\" class=\"pagination-next inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-sm hover:bg-accent disabled:opacity-50\">Next ›</button></div></nav>";
68
+ return t;
69
+ })();
70
+ }
71
+ __cloneTemplate() {
72
+ const __id = this.id;
73
+ var __tpl = this.constructor.__tpl;
74
+ if (!__tpl) throw new Error("[gea] __tpl missing for clone template");
75
+ var __root = __tpl.content.firstElementChild.cloneNode(true);
76
+ __root.id = __id;
77
+ __root.className = `pagination-root ${props.class || ""}`.trim();
78
+ return __root;
79
+ }
80
+ __onPropChange(key, value) {
81
+ if (key === "class") {
82
+ const __el = this.element_;
83
+ this.props;
84
+ const __boundValue = `pagination-root ${value || ""}`;
85
+ if (__el) {
86
+ const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
87
+ if (__el.className !== __newClass) __el.className = __newClass;
88
+ }
89
+ }
90
+ }
91
+ };
92
+ //#endregion
93
+ export { Pagination as default };
94
+
95
+ //# sourceMappingURL=pagination.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.mjs","names":["pagination","normalizeProps","ZagComponent","handleComponentUpdate","registerHotModule","registerComponentInstance","unregisterComponentInstance","Pagination","page","totalPages","createMachine","_props","machine","getMachineProps","props","id","count","defaultPage","pageSize","defaultPageSize","siblingCount","type","onPageChange","details","PageChangeDetails","onPageSizeChange","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","value","parseInt","HTMLElement","dataset","getItemProps","[data-part=\"ellipsis\"]","index","getEllipsisProps","syncState","template","__id","Component","_register","class","trim","__tpl","document","undefined","t","createElement","innerHTML","__cloneTemplate","constructor","Error","__root","content","firstElementChild","cloneNode","className","__onPropChange","key","__el","element_","__boundValue","__newClass","String","import","meta","hot","__moduleExports","default","url","accept","newModule","__updatedModule","invalidate","__origCreated","prototype","created","__geaProps","name","call","__origDispose","dispose"],"sources":["../src/components/pagination.tsx"],"sourcesContent":["import * as pagination from '@zag-js/pagination'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Pagination extends ZagComponent {\n page = 1\n totalPages = 1\n\n createMachine(_props: any): any {\n return pagination.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n count: props.count ?? 0,\n page: props.page,\n defaultPage: props.defaultPage ?? 1,\n pageSize: props.pageSize,\n defaultPageSize: props.defaultPageSize ?? 10,\n siblingCount: props.siblingCount ?? 1,\n type: props.type ?? 'button',\n onPageChange: (details: pagination.PageChangeDetails) => {\n this.page = details.page\n props.onPageChange?.(details)\n },\n onPageSizeChange: props.onPageSizeChange,\n }\n }\n\n connectApi(service: any) {\n return pagination.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"prev-trigger\"]': 'getPrevTriggerProps',\n '[data-part=\"next-trigger\"]': 'getNextTriggerProps',\n '[data-part=\"item\"]': (api, el) => {\n const value = parseInt((el as HTMLElement).dataset.value || '1', 10)\n return api.getItemProps({ type: 'page', value })\n },\n '[data-part=\"ellipsis\"]': (api, el) => {\n const index = parseInt((el as HTMLElement).dataset.index || '0', 10)\n return api.getEllipsisProps({ index })\n },\n }\n }\n\n syncState(api: any) {\n this.page = api.page\n this.totalPages = api.totalPages\n }\n\n template(props: any) {\n return (\n <nav data-part=\"root\" class={`pagination-root ${props.class || ''}`}>\n <div class=\"flex items-center gap-1\">\n <button\n data-part=\"prev-trigger\"\n class=\"pagination-prev inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-sm hover:bg-accent disabled:opacity-50\"\n >\n &lsaquo; Prev\n </button>\n <button\n data-part=\"next-trigger\"\n class=\"pagination-next inline-flex h-9 items-center justify-center rounded-md border border-input bg-background px-3 text-sm shadow-sm hover:bg-accent disabled:opacity-50\"\n >\n Next &rsaquo;\n </button>\n </div>\n </nav>\n )\n }\n}\n"],"mappings":";;;;;;AAIA,IAAqBO,aAArB,cAAwCL,aAAa;;;cAC5C;oBACM;;CAEbQ,cAAcC,QAAkB;AAC9B,SAAOX,WAAWY;;CAGpBC,gBAAgBC,OAAY;AAC1B,SAAO;GACLC,IAAI,KAAKA;GACTC,OAAOF,MAAME,SAAS;GACtBR,MAAMM,MAAMN;GACZS,aAAaH,MAAMG,eAAe;GAClCC,UAAUJ,MAAMI;GAChBC,iBAAiBL,MAAMK,mBAAmB;GAC1CC,cAAcN,MAAMM,gBAAgB;GACpCC,MAAMP,MAAMO,QAAQ;GACpBC,eAAeC,YAA0C;AACvD,SAAKf,OAAOe,QAAQf;AACpBM,UAAMQ,eAAeC,QAAQ;;GAE/BE,kBAAkBX,MAAMW;GACzB;;CAGHC,WAAWC,SAAc;AACvB,SAAO3B,WAAW4B,QAAQD,SAAS1B,eAAe;;CAGpD4B,eAAe;AACb,SAAO;GACL,wBAAsB;GACtB,gCAA8B;GAC9B,gCAA8B;GAC9B,yBAAuBE,KAAKC,OAAO;IACjC,MAAMC,QAAQC,SAAUF,GAAmBI,QAAQH,SAAS,KAAK,GAAG;AACpE,WAAOF,IAAIM,aAAa;KAAEhB,MAAM;KAAQY;KAAO,CAAC;;GAElD,6BAA2BF,KAAKC,OAAO;IACrC,MAAMO,QAAQL,SAAUF,GAAmBI,QAAQG,SAAS,KAAK,GAAG;AACpE,WAAOR,IAAIS,iBAAiB,EAAED,OAAO,CAAC;;GAEzC;;CAGHE,UAAUV,KAAU;AAClB,OAAKvB,OAAOuB,IAAIvB;AAChB,OAAKC,aAAasB,IAAItB;;CAGxBiC,SAAS5B,OAAY;EAAA,MAAA6B,OAAA,KAAA5B;AAAA6B,YAAAC,UAAA3C,aAAA;AACnB,SAAA,YAAAyC,KAAA,4BAC+B,mBAAmB7B,MAAMgC,SAAS,KAAIC,MAAA,CAAA;;;sBAiBtE;AAAA,OAAA,OAAAE,aAAA,YAAA,QAAAC,KAAAA;GAAA,IAAAC,IAAAF,SAAAG,cAAA,WAAA;AAAAD,KAAAE,YAAA;AAAA,UAAAF;MAAA;;CAAAG,kBAAA;EAAA,MAAAX,OAAA,KAAA5B;EAAA,IAAAiC,QAAA,KAAAO,YAAAP;AAAA,MAAA,CAAAA,MAAA,OAAA,IAAAQ,MAAA,yCAAA;EAAA,IAAAC,SAAAT,MAAAU,QAAAC,kBAAAC,UAAA,KAAA;AAAAH,SAAA1C,KAAA4B;AAAAc,SAAAI,YAjBgC,mBAAmB/C,MAAMgC,SAAS,KAAIC,MAAA;AAAA,SAAAU;;CAxDzEK,eAAsBC,KAAK9B,OAAK;AAAA,MAAA8B,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AAsDX,QAAAnD;GAAA,MAAAoD,eAAA,mBAAAjC,SAEgD;AAAE,OAAA+B,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAAE,OAAAF,aAAA,GAAA,IAAAnB,MAAA;AAAA,QAAAiB,KAAAH,cAAAM,WAAAH,MAAAH,YAAAM"}
@@ -0,0 +1,45 @@
1
+ import { n as ZagComponent } from "./zag-component.mjs";
2
+ import * as pinInput from "@zag-js/pin-input";
3
+ import * as _zag_js_types0 from "@zag-js/types";
4
+
5
+ //#region src/components/pin-input.d.ts
6
+ declare class PinInput extends ZagComponent {
7
+ value: string[];
8
+ valueAsString: string;
9
+ createMachine(_props: any): any;
10
+ getMachineProps(props: any): {
11
+ id: string;
12
+ value: any;
13
+ defaultValue: any;
14
+ count: any;
15
+ type: any;
16
+ otp: any;
17
+ mask: any;
18
+ placeholder: any;
19
+ disabled: any;
20
+ readOnly: any;
21
+ invalid: any;
22
+ name: any;
23
+ form: any;
24
+ blurOnComplete: any;
25
+ autoFocus: any;
26
+ onValueChange: (details: pinInput.ValueChangeDetails) => void;
27
+ onValueComplete: any;
28
+ onValueInvalid: any;
29
+ };
30
+ connectApi(service: any): pinInput.Api<_zag_js_types0.PropTypes<{
31
+ [x: string]: any;
32
+ }>>;
33
+ getSpreadMap(): {
34
+ '[data-part="root"]': string;
35
+ '[data-part="label"]': string;
36
+ '[data-part="control"]': string;
37
+ '[data-part="hidden-input"]': string;
38
+ '[data-part="input"]': (api: any, el: any) => any;
39
+ };
40
+ syncState(api: any): void;
41
+ template(props: any): string;
42
+ }
43
+ //#endregion
44
+ export { PinInput as default };
45
+ //# sourceMappingURL=pin-input.d.mts.map