@geajs/ui 0.2.2 → 0.2.4

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 (85) hide show
  1. package/dist/accordion.mjs +12 -12
  2. package/dist/accordion.mjs.map +1 -1
  3. package/dist/alert.mjs +44 -23
  4. package/dist/alert.mjs.map +1 -1
  5. package/dist/avatar.mjs +11 -11
  6. package/dist/avatar.mjs.map +1 -1
  7. package/dist/badge.mjs +19 -12
  8. package/dist/badge.mjs.map +1 -1
  9. package/dist/button.mjs +33 -23
  10. package/dist/button.mjs.map +1 -1
  11. package/dist/card.mjs +85 -43
  12. package/dist/card.mjs.map +1 -1
  13. package/dist/checkbox.mjs +5 -5
  14. package/dist/checkbox.mjs.map +1 -1
  15. package/dist/clipboard.mjs +10 -10
  16. package/dist/clipboard.mjs.map +1 -1
  17. package/dist/collapsible.mjs +18 -11
  18. package/dist/collapsible.mjs.map +1 -1
  19. package/dist/combobox.mjs +62 -48
  20. package/dist/combobox.mjs.map +1 -1
  21. package/dist/dialog.mjs +19 -12
  22. package/dist/dialog.mjs.map +1 -1
  23. package/dist/dnd-manager.mjs +18 -26
  24. package/dist/dnd-manager.mjs.map +1 -1
  25. package/dist/drag-drop-context.mjs +15 -8
  26. package/dist/drag-drop-context.mjs.map +1 -1
  27. package/dist/draggable.mjs +39 -19
  28. package/dist/draggable.mjs.map +1 -1
  29. package/dist/droppable.mjs +22 -12
  30. package/dist/droppable.mjs.map +1 -1
  31. package/dist/file-upload.mjs +24 -21
  32. package/dist/file-upload.mjs.map +1 -1
  33. package/dist/hover-card.mjs +27 -17
  34. package/dist/hover-card.mjs.map +1 -1
  35. package/dist/input.mjs +36 -24
  36. package/dist/input.mjs.map +1 -1
  37. package/dist/label.mjs +22 -12
  38. package/dist/label.mjs.map +1 -1
  39. package/dist/menu.mjs +9 -9
  40. package/dist/menu.mjs.map +1 -1
  41. package/dist/number-input.mjs +5 -5
  42. package/dist/number-input.mjs.map +1 -1
  43. package/dist/pagination.mjs +8 -9
  44. package/dist/pagination.mjs.map +1 -1
  45. package/dist/pin-input.mjs +11 -11
  46. package/dist/pin-input.mjs.map +1 -1
  47. package/dist/popover.mjs +19 -12
  48. package/dist/popover.mjs.map +1 -1
  49. package/dist/progress.mjs +8 -8
  50. package/dist/progress.mjs.map +1 -1
  51. package/dist/radio-group.mjs +16 -12
  52. package/dist/radio-group.mjs.map +1 -1
  53. package/dist/rating-group.mjs +21 -15
  54. package/dist/rating-group.mjs.map +1 -1
  55. package/dist/select.d.mts +1 -0
  56. package/dist/select.mjs +22 -17
  57. package/dist/select.mjs.map +1 -1
  58. package/dist/separator.mjs +12 -9
  59. package/dist/separator.mjs.map +1 -1
  60. package/dist/skeleton.mjs +6 -7
  61. package/dist/skeleton.mjs.map +1 -1
  62. package/dist/slider.mjs +5 -5
  63. package/dist/slider.mjs.map +1 -1
  64. package/dist/switch.mjs +5 -5
  65. package/dist/switch.mjs.map +1 -1
  66. package/dist/tabs.mjs +28 -20
  67. package/dist/tabs.mjs.map +1 -1
  68. package/dist/tags-input.mjs +18 -14
  69. package/dist/tags-input.mjs.map +1 -1
  70. package/dist/textarea.mjs +28 -19
  71. package/dist/textarea.mjs.map +1 -1
  72. package/dist/theme.css +198 -165
  73. package/dist/toast.mjs +6 -7
  74. package/dist/toast.mjs.map +1 -1
  75. package/dist/toggle-group.mjs +16 -12
  76. package/dist/toggle-group.mjs.map +1 -1
  77. package/dist/tooltip.mjs +18 -11
  78. package/dist/tooltip.mjs.map +1 -1
  79. package/dist/tree-view.mjs +17 -10
  80. package/dist/tree-view.mjs.map +1 -1
  81. package/dist/zag-component.mjs.map +1 -1
  82. package/package.json +2 -4
  83. package/dist/tailwind-preset.d.mts +0 -51
  84. package/dist/tailwind-preset.mjs +0 -50
  85. package/dist/tailwind-preset.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"number-input.mjs","names":["numberInput","normalizeProps","ZagComponent","NumberInput","GEA_CTOR_TAG_NAME","constructor","args","props","geaCondValueSymbol","label","GEA_REGISTER_COND","geaEscapeHtml","String","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","trim","__onPropChange","key","__el","GEA_ELEMENT","__boundValue","__newClass","className","GEA_PATCH_COND"],"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,IAAqBG,cAArB,cAAyCD,aAAa;;OAAAE,qBAAA;;CAHtDC,YAAsB,GAAGC,MAAI;AAAA,QAAA,GAAAA,KAAA;AA0DR,OAAAC;AAAA,OAAAC,mBAAA,EAAA,IAAA,CAAA,CAAA,KAAAD,MAGNE;AAAK,OAAAC,mBAAA,GAAA,YAAA;AAHC,QAAAH;AAAA,UAAA,KAAAA,MAGNE;WAAK;AAHC,QAAAF;AAAA,UAAA,sFAAAI,cAAAC,OAAA,KAAAL,MAKFE,MAAK,CAAA,CAAA;KAAA,KAAA;;CAxDtBM,cAAcC,QAAkB;AAC9B,SAAOhB,YAAYiB;;CAGrBC,gBAAgBX,OAAY;AAC1B,SAAO;GACLY,IAAI,KAAKA;GACTN,OAAON,MAAMM;GACbO,cAAcb,MAAMa;GACpBC,KAAKd,MAAMc;GACXC,KAAKf,MAAMe;GACXC,MAAMhB,MAAMgB,QAAQ;GACpBC,UAAUjB,MAAMiB;GAChBC,UAAUlB,MAAMkB;GAChBC,SAASnB,MAAMmB;GACfC,UAAUpB,MAAMoB;GAChBC,MAAMrB,MAAMqB;GACZC,MAAMtB,MAAMsB;GACZC,iBAAiBvB,MAAMuB;GACvBC,kBAAkBxB,MAAMwB,oBAAoB;GAC5CC,eAAezB,MAAMyB;GACrBC,QAAQ1B,MAAM0B;GACdC,gBAAgBC,YAA4C;AAC1D,SAAKtB,QAAQsB,QAAQtB;AACrB,SAAKC,gBAAgBqB,QAAQrB;AAC7BP,UAAM2B,gBAAgBC,QAAQ;;GAEjC;;CAGHE,WAAWC,SAAc;AACvB,SAAOtC,YAAYuC,QAAQD,SAASrC,eAAe;;CAGrDuC,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,SAASpC,OAAY;EAAA,MAAAqC,OAAA,KAAAzB;AAAA0B,YAAAC,UAAA5C,cAAA,gBAAA;AACnB,SAAA,YAAA0C,KAAA,qBAC+BrC,MAAMwC,SAAS,OAAE,SAAjBxC,MAAMwC,SAAS,QAAE,QAAA,KAAA,aAAjBxC,MAAMwC,SAAS,OAAE,OAAAnC,OAAjBL,MAAMwC,SAAS,GAAE,GAAA,IAAAC,MAAA,CAAA,GAAA,OAAAJ,OAAA,MAAA,KAC3CrC,MAAME,SAAK,sFAAAE,cAAAC,OAEPL,MAAME,MAAK,CAAA,CAAA,aAAA,GAAA,MAAAmC,OAAA,UAAA;;CA/DxBK,eAAsBC,KAAKrC,OAAK;AAAA,MAAAqC,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AA0DX,QAAA7C;GAAA,MAAA8C,eAAAxC,SAE6B;AAAE,OAAAsC,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAAzC,OAAAyC,aAAA,GAAA,IAAAL,MAAA;AAAA,QAAAG,KAAAI,cAAAD,WAAAH,MAAAI,YAAAD;;;AAAA,MAAAJ,QAAA,QAAA,MAAAM,gBAAA,EAAA"}
1
+ {"version":3,"file":"number-input.mjs","names":["Component","geaCondValueSymbol","GEA_REGISTER_COND","geaEscapeHtml","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_COND","numberInput","normalizeProps","ZagComponent","NumberInput","__geaTagName","constructor","args","props","label","String","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","_register","class","trim","key","__el","__boundValue","__newClass","replace","className"],"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-hidden 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,IAAqBU,cAArB,cAAyCD,aAAa;;sBAAA;;CAHtDG,YAAsB,GAAGC,MAAI;AAA7B,QAAM,GAAGA,KAAK;AA0DO,OAAAC;AAAA,OAAAb,mBAAA,EAAA,IAAA,CAAA,CA1DrB,KAAKa,MA6DUC;AA7Df,OAAIb,mBAAuB,GAAA,YAAA;AA0DN,QAAAY;AAAA,UA1DrB,KAAKA,MA6DUC;WAAK;AAHC,QAAAD;AAAA,UAAA,sFA1DrBX,cAAca,OAAd,KAAKF,MA+DcC,MA/DwB,CAAC,CAAA;KAAA,KAAA;;CAO1CI,cAAcC,QAAkB;AAC9B,SAAOb,YAAYc;;CAGrBC,gBAAgBR,OAAY;AAC1B,SAAO;GACLS,IAAI,KAAKA;GACTN,OAAOH,MAAMG;GACbO,cAAcV,MAAMU;GACpBC,KAAKX,MAAMW;GACXC,KAAKZ,MAAMY;GACXC,MAAMb,MAAMa,QAAQ;GACpBC,UAAUd,MAAMc;GAChBC,UAAUf,MAAMe;GAChBC,SAAShB,MAAMgB;GACfC,UAAUjB,MAAMiB;GAChBC,MAAMlB,MAAMkB;GACZC,MAAMnB,MAAMmB;GACZC,iBAAiBpB,MAAMoB;GACvBC,kBAAkBrB,MAAMqB,oBAAoB;GAC5CC,eAAetB,MAAMsB;GACrBC,QAAQvB,MAAMuB;GACdC,gBAAgBC,YAA4C;AAC1D,SAAKtB,QAAQsB,QAAQtB;AACrB,SAAKC,gBAAgBqB,QAAQrB;AAC7BJ,UAAMwB,gBAAgBC,QAAQ;;GAEjC;;CAGHE,WAAWC,SAAc;AACvB,SAAOnC,YAAYoC,QAAQD,SAASlC,eAAe;;CAGrDoC,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,SAASjC,OAAY;EAAA,MAAAkC,OAAA,KAAAzB;AAAAvB,YAAAiD,UAAAxC,cAAA,gBAAA;AACnB,SAAA,YAAAuC,KAAA,qBAC+BlC,MAAMoC,SAAS,OAAE,SAAjBpC,MAAMoC,SAAS,QAAE,QAAA,KAAA,aAAjBpC,MAAMoC,SAAS,OAAE,OAAAlC,OAAjBF,MAAMoC,SAAS,GAAE,GAAA,IAAAC,MAAA,CAAA,GAAA,OA5DpDH,OAAU,MAAK,KA6DNlC,MAAMC,SAAK,sFA7DpBZ,cAAca,OA+DDF,MAAMC,MA/DwB,CAAC,CAAA,aAAA,GAAA,MAA5CiC,OAAU,UAAS;;CAAnB,CAAA5C,oBAAwBgD,KAAKnC,OAAK;AAAA,MAAAmC,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAhD;AA0Db,QAAAS;GAAA,MAAAwC,eAEcrC,SAAe;AAAE,OAAAoC,MA5DpD;IACM,MAAME,aADXvC,OAAOsC,gBAAyB,GAAG,CAAEH,MAAM,CAACK,QAAQ,QAAQ,IACf;AACxC,QAAIH,KAAsBI,cAAcF,WAAYF,MAAsBI,YAAYF;;;AACvF,MAAAH,QAAA,QAHL,MAAI9C,gBAAwB,EAAE"}
@@ -1,5 +1,5 @@
1
1
  import { t as ZagComponent } from "./zag-component.mjs";
2
- import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT } from "@geajs/core";
2
+ import { Component, GEA_CLONE_TEMPLATE, GEA_ELEMENT, GEA_ON_PROP_CHANGE } from "@geajs/core";
3
3
  import { normalizeProps } from "@zag-js/vanilla";
4
4
  import * as pagination from "@zag-js/pagination";
5
5
  //#region src/components/pagination.tsx
@@ -10,7 +10,7 @@ var Pagination = class extends ZagComponent {
10
10
  this.totalPages = 1;
11
11
  }
12
12
  static {
13
- this[GEA_CTOR_TAG_NAME] = "pagination";
13
+ this.__geaTagName = "gea-pagination";
14
14
  }
15
15
  createMachine(_props) {
16
16
  return pagination.machine;
@@ -60,32 +60,31 @@ var Pagination = class extends ZagComponent {
60
60
  template(props) {
61
61
  const __id = this.id;
62
62
  Component._register(ZagComponent, "zag-component");
63
- 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>`;
63
+ 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-xs 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-xs hover:bg-accent disabled:opacity-50">Next ›</button></div></nav>`;
64
64
  }
65
65
  static {
66
66
  this.__tpl = (() => {
67
67
  if (typeof document === "undefined") return void 0;
68
68
  var t = document.createElement("template");
69
- 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>";
69
+ 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-xs 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-xs hover:bg-accent disabled:opacity-50\">Next ›</button></div></nav>";
70
70
  return t;
71
71
  })();
72
72
  }
73
- __cloneTemplate() {
74
- const __id = this.id;
73
+ [GEA_CLONE_TEMPLATE]() {
75
74
  var __tpl = this.constructor.__tpl;
76
75
  if (!__tpl) throw new Error("[gea] __tpl missing for clone template");
77
76
  var __root = __tpl.content.firstElementChild.cloneNode(true);
78
- __root.id = __id;
77
+ __root.id = this.id;
79
78
  __root.className = `pagination-root ${props.class || ""}`.trim();
80
79
  return __root;
81
80
  }
82
- __onPropChange(key, value) {
81
+ [GEA_ON_PROP_CHANGE](key, value) {
83
82
  if (key === "class") {
84
83
  const __el = this[GEA_ELEMENT];
85
84
  this.props;
86
85
  const __boundValue = `pagination-root ${value || ""}`;
87
86
  if (__el) {
88
- const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
87
+ const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
89
88
  if (__el.className !== __newClass) __el.className = __newClass;
90
89
  }
91
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.mjs","names":["pagination","normalizeProps","ZagComponent","Pagination","GEA_CTOR_TAG_NAME","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","GEA_ELEMENT","__boundValue","__newClass","String"],"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,IAAqBG,aAArB,cAAwCD,aAAa;;;cAC5C;oBACM;;;OAFsCE,qBAAA;;CAInDG,cAAcC,QAAkB;AAC9B,SAAOR,WAAWS;;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,SAAOxB,WAAWyB,QAAQD,SAASvB,eAAe;;CAGpDyB,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,UAAAxC,cAAA,gBAAA;AACnB,SAAA,YAAAsC,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"}
1
+ {"version":3,"file":"pagination.mjs","names":["Component","GEA_CLONE_TEMPLATE","GEA_ON_PROP_CHANGE","GEA_ELEMENT","pagination","normalizeProps","ZagComponent","Pagination","__geaTagName","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","_register","class","trim","__tpl","document","undefined","t","createElement","innerHTML","constructor","Error","__root","content","firstElementChild","cloneNode","className","key","__el","__boundValue","__newClass","String","replace"],"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-xs 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-xs hover:bg-accent disabled:opacity-50\"\n >\n Next &rsaquo;\n </button>\n </div>\n </nav>\n )\n }\n}\n"],"mappings":";;;;;AAIA,IAAqBO,aAArB,cAAwCD,aAAa;;;cAC5C;oBACM;;;sBAFsC;;CAInDK,cAAcC,QAAkB;AAC9B,SAAOR,WAAWS;;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,SAAOxB,WAAWyB,QAAQD,SAASvB,eAAe;;CAGpDyB,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;AAAAhB,YAAA6C,UAAAvC,cAAA,gBAAA;AACnB,SAAA,YAAAsC,KAAA,4BAC+B,mBAAmB7B,MAAM+B,SAAS,KAAIC,MAAA,CAAA;;;sBAxDnD;AAClB,OAAI,OAAOE,aAAa,YAAa,QAAOC,KAAAA;GAC5C,IAAIC,IAAIF,SAASG,cAAc,WAAW;AAC1CD,KAAEE,YAAY;AACd,UAAOF;MACL;;CALN,CAAAlD,sBAA0B;EAA1B,IAAI+C,QAAQ,KAAKM,YAAYN;AAA7B,MAAI,CAACA,MAAS,OAAM,IAAIO,MAAM,yCAAyC;EAAvE,IAAIC,SAASR,MAAMS,QAAQC,kBAAkBC,UAAU,KAAK;AAA5DH,SAAsBxC,KAAtB,KAAKA;AAALwC,SAAsBI,YAwDa,mBAAmB7C,MAAM+B,SAAS,KAAIC,MAxDlB;AAAvD,SAAAS;;CAAA,CAAAtD,oBAAwB2D,KAAK3B,OAAK;AAAA,MAAA2B,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAA3D;AAsDb,QAAAY;GAAA,MAAAgD,eAEc,mBAAmB7B,SAAe;AAAI,OAAA4B,MAxDzE;IACM,MAAME,aADXC,OAAOF,gBAAyB,GAAG,CAAEhB,MAAM,CAACmB,QAAQ,QAAQ,IACf;AACxC,QAAIJ,KAAsBF,cAAcI,WAAYF,MAAsBF,YAAYI"}
@@ -1,12 +1,12 @@
1
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_PATCH_COND, GEA_REGISTER_COND, GEA_REGISTER_MAP, GEA_SYNC_MAP, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
2
+ import { Component, GEA_DOM_ITEM, GEA_DOM_KEY, GEA_ELEMENT, GEA_ON_PROP_CHANGE, GEA_PATCH_COND, GEA_REGISTER_COND, GEA_REGISTER_MAP, GEA_SYNC_MAP, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
3
3
  import { normalizeProps } from "@zag-js/vanilla";
4
4
  import * as pinInput from "@zag-js/pin-input";
5
5
  //#region src/components/pin-input.tsx
6
6
  const __v = (v) => v != null && typeof v === "object" ? v.valueOf() : v;
7
7
  var PinInput = class extends ZagComponent {
8
8
  static {
9
- this[GEA_CTOR_TAG_NAME] = "pin-input";
9
+ this.__geaTagName = "pin-input";
10
10
  }
11
11
  #__rowEls_b1;
12
12
  #__dc_b1;
@@ -75,22 +75,22 @@ var PinInput = class extends ZagComponent {
75
75
  Component._register(ZagComponent, "zag-component");
76
76
  const count = props.count ?? 4;
77
77
  const inputs = Array.from({ length: count }, (_, i) => i);
78
- 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="pin-input-label text-sm font-medium mb-2 block">${geaEscapeHtml(String(props.label))}</label>` || ""}<!--${__id + "-c0-end"}--><div id="${__id + "-b1"}" data-part="control" class="pin-input-control flex gap-2">${inputs.map((i) => `<input data-gea-item-id="${String(i)}" data-part="input"${String(i) == null || String(i) === false ? "" : ` data-index="${String(i)}"`} class="pin-input-field h-9 w-9 rounded-md border border-input bg-transparent text-center text-sm shadow-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring" />`).join("") + "<!---->"}</div><input data-part="hidden-input" type="hidden" /></div>`;
78
+ 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="pin-input-label text-sm font-medium mb-2 block">${geaEscapeHtml(String(props.label))}</label>` || ""}<!--${__id + "-c0-end"}--><div id="${__id + "-b1"}" data-part="control" class="pin-input-control flex gap-2">${inputs.map((i) => `<input data-gid="${String(i)}" data-part="input"${String(i) == null || String(i) === false ? "" : ` data-index="${String(i)}"`} class="pin-input-field h-9 w-9 rounded-md border border-input bg-transparent text-center text-sm shadow-xs focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring" />`).join("") + "<!---->"}</div><input data-part="hidden-input" type="hidden" /></div>`;
79
79
  }
80
80
  render__unresolved_0Item(i) {
81
- return `<input data-gea-item-id="${String(i)}" data-part="input"${__v(String(i)) == null || __v(String(i)) === false ? "" : ` data-index="${String(i)}"`} class="pin-input-field h-9 w-9 rounded-md border border-input bg-transparent text-center text-sm shadow-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring" />`;
81
+ return `<input data-gid="${String(i)}" data-part="input"${__v(String(i)) == null || __v(String(i)) === false ? "" : ` data-index="${String(i)}"`} class="pin-input-field h-9 w-9 rounded-md border border-input bg-transparent text-center text-sm shadow-xs focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring" />`;
82
82
  }
83
83
  create__unresolved_0Item(item) {
84
84
  var __c = this.#__dc_b1 || (this.#__dc_b1 = this.____unresolved_0_container);
85
- if (!__c[GEA_MAP_CONFIG_TPL]) try {
85
+ if (!__c.__geaTpl) try {
86
86
  var __tw = document.createElement("template");
87
87
  __tw.innerHTML = this.render__unresolved_0Item("__dummy__");
88
- __c[GEA_MAP_CONFIG_TPL] = __tw.content.firstElementChild;
89
- __c[GEA_MAP_CONFIG_TPL]?.removeAttribute("data-gea-item-id");
88
+ __c.__geaTpl = __tw.content.firstElementChild;
89
+ __c.__geaTpl?.removeAttribute("data-gid");
90
90
  } catch (__err) {
91
91
  console.error(__err);
92
92
  }
93
- if (__c[GEA_MAP_CONFIG_TPL]) var el = __c[GEA_MAP_CONFIG_TPL].cloneNode(true);
93
+ if (__c.__geaTpl) var el = __c.__geaTpl.cloneNode(true);
94
94
  else {
95
95
  var __fw = document.createElement("template");
96
96
  __fw.innerHTML = this.render__unresolved_0Item(item);
@@ -118,13 +118,13 @@ var PinInput = class extends ZagComponent {
118
118
  (this.#__rowEls_b1 || (this.#__rowEls_b1 = {}))[String(item)] = row;
119
119
  row[GEA_DOM_ITEM] = item;
120
120
  }
121
- __onPropChange(key, value) {
121
+ [GEA_ON_PROP_CHANGE](key, value) {
122
122
  if (key === "class") {
123
123
  const __el = this[GEA_ELEMENT];
124
124
  this.props;
125
125
  const __boundValue = value || "";
126
126
  if (__el) {
127
- const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
127
+ const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
128
128
  if (__el.className !== __newClass) __el.className = __newClass;
129
129
  }
130
130
  }
@@ -135,7 +135,7 @@ var PinInput = class extends ZagComponent {
135
135
  this[GEA_SYNC_MAP](0);
136
136
  }
137
137
  createdHooks() {
138
- this[GEA_REGISTER_MAP](0, "____unresolved_0_container", () => document.getElementById(this.id + "-b1"), () => {
138
+ this[GEA_REGISTER_MAP](0, "____unresolved_0_container", () => __gid(this.id + "-b1"), () => {
139
139
  const count = this.props.count ?? 4;
140
140
  return Array.from({ length: count }, (_, i) => i);
141
141
  }, (__item) => this.create__unresolved_0Item(__item));
@@ -1 +1 @@
1
- {"version":3,"file":"pin-input.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","pinInput","normalizeProps","ZagComponent","PinInput","__rowEls_b1","__dc_b1","constructor","args","props","label","String","value","valueAsString","createMachine","_props","machine","getMachineProps","id","defaultValue","count","type","otp","mask","placeholder","disabled","readOnly","invalid","name","form","blurOnComplete","autoFocus","onValueChange","details","ValueChangeDetails","onValueComplete","onValueInvalid","connectApi","service","connect","getSpreadMap","[data-part=\"input\"]","api","el","index","parseInt","HTMLElement","dataset","getInputProps","syncState","template","__id","_register","inputs","Array","from","length","_","i","class","trim","map","join","render__unresolved_0Item","create__unresolved_0Item","item","__c","____unresolved_0_container","__tw","document","createElement","innerHTML","content","firstElementChild","removeAttribute","__err","console","error","cloneNode","__fw","__av","__newAttr","getAttribute","setAttribute","patch__unresolved_0Item","row","__prevItem","__onPropChange","key","__el","__boundValue","__newClass","className","__observe_local_props","createdHooks","getElementById","__item"],"sources":["../src/components/pin-input.tsx"],"sourcesContent":["import * as pinInput from '@zag-js/pin-input'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class PinInput extends ZagComponent {\n declare value: string[]\n declare valueAsString: string\n\n createMachine(_props: any): any {\n return pinInput.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n count: props.count ?? 4,\n type: props.type ?? 'numeric',\n otp: props.otp ?? false,\n mask: props.mask ?? false,\n placeholder: props.placeholder ?? '○',\n disabled: props.disabled,\n readOnly: props.readOnly,\n invalid: props.invalid,\n name: props.name,\n form: props.form,\n blurOnComplete: props.blurOnComplete ?? false,\n autoFocus: props.autoFocus,\n onValueChange: (details: pinInput.ValueChangeDetails) => {\n this.value = details.value\n this.valueAsString = details.valueAsString\n props.onValueChange?.(details)\n },\n onValueComplete: props.onValueComplete,\n onValueInvalid: props.onValueInvalid,\n }\n }\n\n connectApi(service: any) {\n return pinInput.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=\"hidden-input\"]': 'getHiddenInputProps',\n '[data-part=\"input\"]': (api, el) => {\n const index = parseInt((el as HTMLElement).dataset.index || '0', 10)\n return api.getInputProps({ index })\n },\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n this.valueAsString = api.valueAsString\n }\n\n template(props: any) {\n const count = props.count ?? 4\n const inputs = Array.from({ length: count }, (_, i) => i)\n return (\n <div data-part=\"root\" class={props.class || ''}>\n {props.label && (\n <label data-part=\"label\" class=\"pin-input-label text-sm font-medium mb-2 block\">\n {props.label}\n </label>\n )}\n <div data-part=\"control\" class=\"pin-input-control flex gap-2\">\n {inputs.map((i: number) => (\n <input\n key={i}\n data-part=\"input\"\n data-index={String(i)}\n class=\"pin-input-field h-9 w-9 rounded-md border border-input bg-transparent text-center text-sm shadow-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring\"\n />\n ))}\n </div>\n <input data-part=\"hidden-input\" type=\"hidden\" />\n </div>\n )\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"pin-input.mjs","names":["__v","v","valueOf","Component","geaCondValueSymbol","GEA_REGISTER_COND","geaEscapeHtml","GEA_DOM_KEY","GEA_DOM_ITEM","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_COND","GEA_SYNC_MAP","GEA_REGISTER_MAP","pinInput","normalizeProps","ZagComponent","PinInput","__geaTagName","__rowEls_b1","__dc_b1","constructor","args","props","label","String","value","valueAsString","createMachine","_props","machine","getMachineProps","id","defaultValue","count","type","otp","mask","placeholder","disabled","readOnly","invalid","name","form","blurOnComplete","autoFocus","onValueChange","details","ValueChangeDetails","onValueComplete","onValueInvalid","connectApi","service","connect","getSpreadMap","[data-part=\"input\"]","api","el","index","parseInt","HTMLElement","dataset","getInputProps","syncState","template","__id","_register","inputs","Array","from","length","_","i","class","trim","map","join","render__unresolved_0Item","create__unresolved_0Item","item","__c","____unresolved_0_container","__geaTpl","__tw","document","createElement","innerHTML","content","firstElementChild","removeAttribute","__err","console","error","cloneNode","__fw","__av","__newAttr","getAttribute","setAttribute","patch__unresolved_0Item","row","__prevItem","key","__el","__boundValue","__newClass","replace","className","__observe_local_props","createdHooks","__gid","__item"],"sources":["../src/components/pin-input.tsx"],"sourcesContent":["import * as pinInput from '@zag-js/pin-input'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class PinInput extends ZagComponent {\n declare value: string[]\n declare valueAsString: string\n\n createMachine(_props: any): any {\n return pinInput.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue,\n count: props.count ?? 4,\n type: props.type ?? 'numeric',\n otp: props.otp ?? false,\n mask: props.mask ?? false,\n placeholder: props.placeholder ?? '○',\n disabled: props.disabled,\n readOnly: props.readOnly,\n invalid: props.invalid,\n name: props.name,\n form: props.form,\n blurOnComplete: props.blurOnComplete ?? false,\n autoFocus: props.autoFocus,\n onValueChange: (details: pinInput.ValueChangeDetails) => {\n this.value = details.value\n this.valueAsString = details.valueAsString\n props.onValueChange?.(details)\n },\n onValueComplete: props.onValueComplete,\n onValueInvalid: props.onValueInvalid,\n }\n }\n\n connectApi(service: any) {\n return pinInput.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=\"hidden-input\"]': 'getHiddenInputProps',\n '[data-part=\"input\"]': (api, el) => {\n const index = parseInt((el as HTMLElement).dataset.index || '0', 10)\n return api.getInputProps({ index })\n },\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n this.valueAsString = api.valueAsString\n }\n\n template(props: any) {\n const count = props.count ?? 4\n const inputs = Array.from({ length: count }, (_, i) => i)\n return (\n <div data-part=\"root\" class={props.class || ''}>\n {props.label && (\n <label data-part=\"label\" class=\"pin-input-label text-sm font-medium mb-2 block\">\n {props.label}\n </label>\n )}\n <div data-part=\"control\" class=\"pin-input-control flex gap-2\">\n {inputs.map((i: number) => (\n <input\n key={i}\n data-part=\"input\"\n data-index={String(i)}\n class=\"pin-input-field h-9 w-9 rounded-md border border-input bg-transparent text-center text-sm shadow-xs focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring\"\n />\n ))}\n </div>\n <input data-part=\"hidden-input\" type=\"hidden\" />\n </div>\n )\n }\n}\n"],"mappings":"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"}
package/dist/popover.mjs CHANGED
@@ -1,11 +1,11 @@
1
1
  import { t as ZagComponent } from "./zag-component.mjs";
2
- import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT, GEA_PATCH_COND, GEA_REGISTER_COND, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
2
+ import { Component, GEA_ELEMENT, GEA_INSTANTIATE_CHILD_COMPONENTS, GEA_MOUNT_COMPILED_CHILD_COMPONENTS, GEA_ON_PROP_CHANGE, GEA_PATCH_COND, GEA_PATCH_NODE, GEA_REGISTER_COND, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
3
3
  import { normalizeProps } from "@zag-js/vanilla";
4
4
  import * as popover from "@zag-js/popover";
5
5
  //#region src/components/popover.tsx
6
6
  var Popover = class extends ZagComponent {
7
7
  static {
8
- this[GEA_CTOR_TAG_NAME] = "popover";
8
+ this.__geaTagName = "gea-popover";
9
9
  }
10
10
  constructor(...args) {
11
11
  super(...args);
@@ -68,37 +68,44 @@ var Popover = class extends ZagComponent {
68
68
  template(props) {
69
69
  const __id = this.id;
70
70
  Component._register(ZagComponent, "zag-component");
71
- 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="popover-trigger">${geaEscapeHtml(String(props.triggerLabel || "Open"))}</button><div data-part="positioner" class="popover-positioner"><div data-part="content" class="popover-content z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none"><!--${__id + "-c0"}-->${props.title && `<div data-part="title" class="popover-title font-medium leading-none mb-2">${geaEscapeHtml(String(props.title))}</div>` || ""}<!--${__id + "-c0-end"}--><!--${__id + "-c1"}-->${props.description && `<p data-part="description" class="popover-description text-sm text-muted-foreground mb-3">${geaEscapeHtml(String(props.description))}</p>` || ""}<!--${__id + "-c1-end"}--><div id="${__id + "-b2"}" class="popover-body">${props.children}</div><button data-part="close-trigger" class="popover-close-trigger absolute top-2 right-2 text-gray-400 hover:text-gray-600 text-sm">✕</button></div></div></div>`;
71
+ 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="popover-trigger">${geaEscapeHtml(String(props.triggerLabel || "Open"))}</button><div data-part="positioner" class="popover-positioner"><div data-part="content" class="popover-content z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-hidden"><!--${__id + "-c0"}-->${props.title && `<div data-part="title" class="popover-title font-medium leading-none mb-2">${geaEscapeHtml(String(props.title))}</div>` || ""}<!--${__id + "-c0-end"}--><!--${__id + "-c1"}-->${props.description && `<p data-part="description" class="popover-description text-sm text-muted-foreground mb-3">${geaEscapeHtml(String(props.description))}</p>` || ""}<!--${__id + "-c1-end"}--><div id="${__id + "-b2"}" class="popover-body">${props.children}</div><button data-part="close-trigger" class="popover-close-trigger absolute top-2 right-2 text-gray-400 hover:text-gray-600 text-sm">✕</button></div></div></div>`;
72
72
  }
73
- __onPropChange(key, value) {
73
+ [GEA_ON_PROP_CHANGE](key, value) {
74
74
  const __id = this.id;
75
75
  if (key === "class") {
76
76
  const __el = this[GEA_ELEMENT];
77
77
  this.props;
78
78
  const __boundValue = value || "";
79
79
  if (__el) {
80
- const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
80
+ const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
81
81
  if (__el.className !== __newClass) __el.className = __newClass;
82
82
  }
83
83
  }
84
84
  if (key === "triggerLabel") {
85
- const __el = this.__e0 || (this.__e0 = document.getElementById(__id + "-b1"));
85
+ const __el = this.__e0 || (this.__e0 = __gid(__id + "-b1"));
86
86
  this.props;
87
87
  const __boundValue = value || "Open";
88
88
  if (__el && __el.textContent !== __boundValue) __el.textContent = __boundValue;
89
89
  }
90
90
  if (key === "children") {
91
- const __el = this.__e1 || (this.__e1 = document.getElementById(__id + "-b2"));
92
- if (__el && __el.innerHTML !== value) {
93
- __el.innerHTML = value;
94
- this.instantiateChildComponents_();
95
- if (this.parentComponent) this.parentComponent.mountCompiledChildComponents_();
91
+ const __el = this.__e1 || (this.__e1 = __gid(__id + "-b2"));
92
+ if (__el) {
93
+ const __tw = document.createElement("template");
94
+ __tw.innerHTML = value;
95
+ const __newEl = __tw.content.firstElementChild;
96
+ const __existEl = __el.firstElementChild;
97
+ if (__newEl && __existEl && __tw.content.childNodes.length === 1) this.constructor[GEA_PATCH_NODE](__existEl, __newEl, true);
98
+ else if (__el.innerHTML !== value) {
99
+ __el.innerHTML = value;
100
+ this[GEA_INSTANTIATE_CHILD_COMPONENTS]();
101
+ if (this.parentComponent) this.parentComponent[GEA_MOUNT_COMPILED_CHILD_COMPONENTS]();
102
+ }
96
103
  }
97
104
  }
98
105
  if (key === "title") this[GEA_PATCH_COND](0);
99
106
  if (key === "description") this[GEA_PATCH_COND](1);
100
107
  }
101
- *GEA_RESET_ELS() {
108
+ __resetEls() {
102
109
  this.__e0 = null;
103
110
  this.__e1 = null;
104
111
  }
@@ -1 +1 @@
1
- {"version":3,"file":"popover.mjs","names":["popover","normalizeProps","ZagComponent","Popover","GEA_CTOR_TAG_NAME","constructor","args","props","geaCondValueSymbol","title","description","GEA_REGISTER_COND","geaEscapeHtml","String","open","createMachine","_props","machine","getMachineProps","id","defaultOpen","modal","portalled","autoFocus","closeOnInteractOutside","closeOnEscape","positioning","onOpenChange","details","OpenChangeDetails","connectApi","service","connect","getSpreadMap","syncState","api","template","__id","Component","_register","class","trim","triggerLabel","children","__onPropChange","key","value","__el","GEA_ELEMENT","__boundValue","__newClass","className","__e0","document","getElementById","textContent","__e1","innerHTML","instantiateChildComponents_","parentComponent","mountCompiledChildComponents_","GEA_PATCH_COND","GEA_RESET_ELS"],"sources":["../src/components/popover.tsx"],"sourcesContent":["import * as popover from '@zag-js/popover'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Popover extends ZagComponent {\n declare open: boolean\n\n createMachine(_props: any): any {\n return popover.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n open: props.open,\n defaultOpen: props.defaultOpen,\n modal: props.modal ?? false,\n portalled: props.portalled ?? true,\n autoFocus: props.autoFocus ?? true,\n closeOnInteractOutside: props.closeOnInteractOutside ?? true,\n closeOnEscape: props.closeOnEscape ?? true,\n positioning: props.positioning,\n onOpenChange: (details: popover.OpenChangeDetails) => {\n this.open = details.open\n props.onOpenChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return popover.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=\"title\"]': 'getTitleProps',\n '[data-part=\"description\"]': 'getDescriptionProps',\n '[data-part=\"close-trigger\"]': 'getCloseTriggerProps',\n '[data-part=\"arrow\"]': 'getArrowProps',\n '[data-part=\"arrow-tip\"]': 'getArrowTipProps',\n }\n }\n\n syncState(api: any) {\n this.open = api.open\n }\n\n template(props: any) {\n return (\n <div class={props.class || ''}>\n <button data-part=\"trigger\" class=\"popover-trigger\">\n {props.triggerLabel || 'Open'}\n </button>\n <div data-part=\"positioner\" class=\"popover-positioner\">\n <div\n data-part=\"content\"\n class=\"popover-content z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none\"\n >\n {props.title && (\n <div data-part=\"title\" class=\"popover-title font-medium leading-none mb-2\">\n {props.title}\n </div>\n )}\n {props.description && (\n <p data-part=\"description\" class=\"popover-description text-sm text-muted-foreground mb-3\">\n {props.description}\n </p>\n )}\n <div class=\"popover-body\">{props.children}</div>\n <button\n data-part=\"close-trigger\"\n class=\"popover-close-trigger absolute top-2 right-2 text-gray-400 hover:text-gray-600 text-sm\"\n >\n &#x2715;\n </button>\n </div>\n </div>\n </div>\n )\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"popover.mjs","names":["Component","geaCondValueSymbol","GEA_REGISTER_COND","geaEscapeHtml","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_NODE","GEA_INSTANTIATE_CHILD_COMPONENTS","GEA_MOUNT_COMPILED_CHILD_COMPONENTS","GEA_PATCH_COND","popover","normalizeProps","ZagComponent","Popover","__geaTagName","constructor","args","props","title","description","String","open","createMachine","_props","machine","getMachineProps","id","defaultOpen","modal","portalled","autoFocus","closeOnInteractOutside","closeOnEscape","positioning","onOpenChange","details","OpenChangeDetails","connectApi","service","connect","getSpreadMap","syncState","api","template","__id","_register","class","trim","triggerLabel","children","key","value","__el","__boundValue","__newClass","replace","className","__e0","__gid","textContent","__e1","__tw","document","createElement","innerHTML","__newEl","content","firstElementChild","__existEl","childNodes","length","parentComponent","__resetEls"],"sources":["../src/components/popover.tsx"],"sourcesContent":["import * as popover from '@zag-js/popover'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Popover extends ZagComponent {\n declare open: boolean\n\n createMachine(_props: any): any {\n return popover.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n open: props.open,\n defaultOpen: props.defaultOpen,\n modal: props.modal ?? false,\n portalled: props.portalled ?? true,\n autoFocus: props.autoFocus ?? true,\n closeOnInteractOutside: props.closeOnInteractOutside ?? true,\n closeOnEscape: props.closeOnEscape ?? true,\n positioning: props.positioning,\n onOpenChange: (details: popover.OpenChangeDetails) => {\n this.open = details.open\n props.onOpenChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return popover.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=\"title\"]': 'getTitleProps',\n '[data-part=\"description\"]': 'getDescriptionProps',\n '[data-part=\"close-trigger\"]': 'getCloseTriggerProps',\n '[data-part=\"arrow\"]': 'getArrowProps',\n '[data-part=\"arrow-tip\"]': 'getArrowTipProps',\n }\n }\n\n syncState(api: any) {\n this.open = api.open\n }\n\n template(props: any) {\n return (\n <div class={props.class || ''}>\n <button data-part=\"trigger\" class=\"popover-trigger\">\n {props.triggerLabel || 'Open'}\n </button>\n <div data-part=\"positioner\" class=\"popover-positioner\">\n <div\n data-part=\"content\"\n class=\"popover-content z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-hidden\"\n >\n {props.title && (\n <div data-part=\"title\" class=\"popover-title font-medium leading-none mb-2\">\n {props.title}\n </div>\n )}\n {props.description && (\n <p data-part=\"description\" class=\"popover-description text-sm text-muted-foreground mb-3\">\n {props.description}\n </p>\n )}\n <div class=\"popover-body\">{props.children}</div>\n <button\n data-part=\"close-trigger\"\n class=\"popover-close-trigger absolute top-2 right-2 text-gray-400 hover:text-gray-600 text-sm\"\n >\n &#x2715;\n </button>\n </div>\n </div>\n </div>\n )\n }\n}\n"],"mappings":"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"}
package/dist/progress.mjs CHANGED
@@ -1,11 +1,11 @@
1
1
  import { t as ZagComponent } from "./zag-component.mjs";
2
- import { Component, GEA_CTOR_TAG_NAME, GEA_ELEMENT, GEA_OBSERVE, GEA_PATCH_COND, GEA_REGISTER_COND, GEA_SETUP_LOCAL_STATE_OBSERVERS, GEA_UPDATE_TEXT, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
2
+ import { Component, GEA_ELEMENT, GEA_OBSERVE, GEA_ON_PROP_CHANGE, GEA_PATCH_COND, GEA_REGISTER_COND, GEA_SETUP_LOCAL_STATE_OBSERVERS, GEA_STORE_ROOT, GEA_UPDATE_TEXT, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
3
3
  import { normalizeProps } from "@zag-js/vanilla";
4
4
  import * as progress from "@zag-js/progress";
5
5
  //#region src/components/progress.tsx
6
6
  var Progress = class extends ZagComponent {
7
7
  static {
8
- this[GEA_CTOR_TAG_NAME] = "gea-progress";
8
+ this.__geaTagName = "gea-progress";
9
9
  }
10
10
  constructor(...args) {
11
11
  super(...args);
@@ -17,7 +17,7 @@ var Progress = class extends ZagComponent {
17
17
  return this.props.label;
18
18
  }, () => {
19
19
  this.props;
20
- return `<label data-part="label" class="progress-label text-sm font-medium">${geaEscapeHtml(String(this.props.label))}</label>`;
20
+ return `<span data-part="label" class="progress-label text-sm font-medium">${geaEscapeHtml(String(this.props.label))}</span>`;
21
21
  }, null);
22
22
  }
23
23
  createMachine(_props) {
@@ -53,30 +53,30 @@ var Progress = class extends ZagComponent {
53
53
  template(props) {
54
54
  const __id = this.id;
55
55
  Component._register(ZagComponent, "zag-component");
56
- return `<div id="${__id}" data-part="root"${(props.class || "") == null || (props.class || "") === false ? "" : ` class="${((props.class || "") != null ? String(props.class || "") : "").trim()}"`}><div class="flex justify-between mb-1"><!--${__id + "-c0"}-->${props.label && `<label data-part="label" class="progress-label text-sm font-medium">${geaEscapeHtml(String(props.label))}</label>` || ""}<!--${__id + "-c0-end"}--><span id="${__id + "-b1"}" data-part="value-text" class="progress-value-text text-sm text-muted-foreground">${geaEscapeHtml(String(this.percent))}%</span></div><div data-part="track" class="progress-track relative h-2 w-full overflow-hidden rounded-full bg-primary/20"><div id="${__id + "-b2"}" data-part="range" class="progress-range h-full w-full flex-1 bg-primary transition-all" style="${Object.entries({ width: `${this.percent}%` }).map(([__k, __v]) => `${__k.replace(/[A-Z]/g, "-$&")}: ${typeof __v === "number" && __v !== 0 ? __v + "px" : __v}`).join("; ")}"></div></div></div>`;
56
+ return `<div id="${__id}" data-part="root"${(props.class || "") == null || (props.class || "") === false ? "" : ` class="${((props.class || "") != null ? String(props.class || "") : "").trim()}"`}><div class="flex justify-between mb-1"><!--${__id + "-c0"}-->${props.label && `<span data-part="label" class="progress-label text-sm font-medium">${geaEscapeHtml(String(props.label))}</span>` || ""}<!--${__id + "-c0-end"}--><span id="${__id + "-b1"}" data-part="value-text" class="progress-value-text text-sm text-muted-foreground">${geaEscapeHtml(String(this.percent))}%</span></div><div data-part="track" class="progress-track relative h-2 w-full overflow-hidden rounded-full bg-primary/20"><div id="${__id + "-b2"}" data-part="range" class="progress-range h-full w-full flex-1 bg-primary transition-all" style="${Object.entries({ width: `${this.percent}%` }).map(([__k, __v]) => `${__k.replace(/[A-Z]/g, "-$&")}: ${typeof __v === "number" && __v !== 0 ? __v + "px" : __v}`).join("; ")}"></div></div></div>`;
57
57
  }
58
58
  __observe_local_percent(percent, change) {
59
59
  this[GEA_UPDATE_TEXT]("b1", `
60
60
  ${this.percent}%
61
61
  `);
62
62
  }
63
- __onPropChange(key, value) {
63
+ [GEA_ON_PROP_CHANGE](key, value) {
64
64
  if (key === "class") {
65
65
  const __el = this[GEA_ELEMENT];
66
66
  this.props;
67
67
  const __boundValue = value || "";
68
68
  if (__el) {
69
- const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
69
+ const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
70
70
  if (__el.className !== __newClass) __el.className = __newClass;
71
71
  }
72
72
  }
73
73
  if (key === "label") this[GEA_PATCH_COND](0);
74
74
  }
75
- *GEA_RESET_ELS() {
75
+ __resetEls() {
76
76
  this.__e0 = null;
77
77
  }
78
78
  [GEA_SETUP_LOCAL_STATE_OBSERVERS]() {
79
- if (!this.__store) return;
79
+ if (!this[GEA_STORE_ROOT]) return;
80
80
  this[GEA_OBSERVE](this, ["percent"], this.__observe_local_percent);
81
81
  }
82
82
  };
@@ -1 +1 @@
1
- {"version":3,"file":"progress.mjs","names":["progress","normalizeProps","ZagComponent","Progress","GEA_CTOR_TAG_NAME","constructor","args","props","geaCondValueSymbol","label","GEA_REGISTER_COND","geaEscapeHtml","String","value","percent","createMachine","_props","machine","getMachineProps","id","defaultValue","min","max","orientation","onValueChange","connectApi","service","connect","getSpreadMap","syncState","api","template","__id","Component","_register","class","trim","Object","entries","width","map","__k","__v","replace","join","__observe_local_percent","change","GEA_UPDATE_TEXT","__onPropChange","key","__el","GEA_ELEMENT","__boundValue","__newClass","className","GEA_PATCH_COND","GEA_RESET_ELS","__e0","GEA_SETUP_LOCAL_STATE_OBSERVERS","__store","GEA_OBSERVE"],"sources":["../src/components/progress.tsx"],"sourcesContent":["import * as progress from '@zag-js/progress'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Progress extends ZagComponent {\n declare value: number | null\n percent = 0\n\n createMachine(_props: any): any {\n return progress.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue ?? 0,\n min: props.min ?? 0,\n max: props.max ?? 100,\n orientation: props.orientation,\n onValueChange: props.onValueChange,\n }\n }\n\n connectApi(service: any) {\n return progress.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"label\"]': 'getLabelProps',\n '[data-part=\"track\"]': 'getTrackProps',\n '[data-part=\"range\"]': 'getRangeProps',\n '[data-part=\"value-text\"]': 'getValueTextProps',\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n this.percent = api.percent\n }\n\n template(props: any) {\n return (\n <div data-part=\"root\" class={props.class || ''}>\n <div class=\"flex justify-between mb-1\">\n {props.label && (\n <label data-part=\"label\" class=\"progress-label text-sm font-medium\">\n {props.label}\n </label>\n )}\n <span data-part=\"value-text\" class=\"progress-value-text text-sm text-muted-foreground\">\n {this.percent}%\n </span>\n </div>\n <div data-part=\"track\" class=\"progress-track relative h-2 w-full overflow-hidden rounded-full bg-primary/20\">\n <div\n data-part=\"range\"\n class=\"progress-range h-full w-full flex-1 bg-primary transition-all\"\n style={{ width: `${this.percent}%` }}\n ></div>\n </div>\n </div>\n )\n }\n}\n"],"mappings":";;;;;AAIA,IAAqBG,WAArB,cAAsCD,aAAa;;OAAAE,qBAAA;;CAHnDC,YAAsB,GAAGC,MAAI;AAAA,QAAA,GAAAA,KAAA;iBAKjB;AAqCS,OAAAC;AAAA,OAAAC,mBAAA,EAAA,IAAA,CAAA,CAAA,KAAAD,MAIJE;AAAK,OAAAC,mBAAA,GAAA,YAAA;AAJD,QAAAH;AAAA,UAAA,KAAAA,MAIJE;WAAK;AAJD,QAAAF;AAAA,UAAA,uEAAAI,cAAAC,OAAA,KAAAL,MAMAE,MAAK,CAAA,CAAA;KAAA,KAAA;;CAzCxBM,cAAcC,QAAkB;AAC9B,SAAOhB,SAASiB;;CAGlBC,gBAAgBX,OAAY;AAC1B,SAAO;GACLY,IAAI,KAAKA;GACTN,OAAON,MAAMM;GACbO,cAAcb,MAAMa,gBAAgB;GACpCC,KAAKd,MAAMc,OAAO;GAClBC,KAAKf,MAAMe,OAAO;GAClBC,aAAahB,MAAMgB;GACnBC,eAAejB,MAAMiB;GACtB;;CAGHC,WAAWC,SAAc;AACvB,SAAO1B,SAAS2B,QAAQD,SAASzB,eAAe;;CAGlD2B,eAAe;AACb,SAAO;GACL,wBAAsB;GACtB,yBAAuB;GACvB,yBAAuB;GACvB,yBAAuB;GACvB,8BAA4B;GAC7B;;CAGHC,UAAUC,KAAU;AAClB,OAAKjB,QAAQiB,IAAIjB;AACjB,OAAKC,UAAUgB,IAAIhB;;CAGrBiB,SAASxB,OAAY;EAAA,MAAAyB,OAAA,KAAAb;AAAAc,YAAAC,UAAAhC,cAAA,gBAAA;AACnB,SAAA,YAAA8B,KAAA,qBAC+BzB,MAAM4B,SAAS,OAAE,SAAjB5B,MAAM4B,SAAS,QAAE,QAAA,KAAA,aAAjB5B,MAAM4B,SAAS,OAAE,OAAAvB,OAAjBL,MAAM4B,SAAS,GAAE,GAAA,IAAAC,MAAA,CAAA,GAAA,8CAAAJ,OAAA,MAAA,KAEzCzB,MAAME,SAAK,uEAAAE,cAAAC,OAEPL,MAAME,MAAK,CAAA,CAAA,aAAA,GAAA,MAAAuB,OAAA,UAAA,eAAAA,OAAA,MAAA,qFAAArB,cAAAC,OAIb,KAAKE,QAAO,CAAA,CAAA,sIAAAkB,OAAA,MAAA,mGAAAK,OAAAC,QAON,EAAEC,OAAO,GAAG,KAAKzB,QAAO,IAAK,CAAA,CAAA0B,KAAA,CAAAC,KAAAC,SAAA,GAAAD,IAAAE,QAAA,UAAA,MAAA,CAAA,IAAA,OAAAD,QAAA,YAAAA,QAAA,IAAAA,MAAA,OAAAA,MAAA,CAAAE,KAAA,KAAA,CAAA;;CA3DhDC,wBAAA/B,SAAAgC,QAAoE;AAAA,OAAAC,iBAAA,MAAA;cAoDvD,KAAKjC,QAAO;YAAA;;CApDzBkC,eAAsBC,KAAKpC,OAAK;AAAA,MAAAoC,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAC;AA0CX,QAAA5C;GAAA,MAAA6C,eAAAvC,SAE6B;AAAE,OAAAqC,MAAA;IAAA,MAAAG,cAAAD,gBAAA,OAAAxC,OAAAwC,aAAA,GAAA,IAAAhB,MAAA;AAAA,QAAAc,KAAAI,cAAAD,WAAAH,MAAAI,YAAAD;;;AAAA,MAAAJ,QAAA,QAAA,MAAAM,gBAAA,EAAA;;CA5ChB,CAAAC,gBAAA;AAAA,OAAAC,OAAA;;CAAA,CAAAC,mCAAA;AAApC,MAAI,CAAA,KAAAC,QAA0B;AAAS,OAAAC,aAAA,MAAA,CAAA,UAAA,EAAA,KAAAf,wBAAA"}
1
+ {"version":3,"file":"progress.mjs","names":["Component","geaCondValueSymbol","GEA_REGISTER_COND","geaEscapeHtml","GEA_UPDATE_TEXT","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_COND","GEA_SETUP_LOCAL_STATE_OBSERVERS","GEA_STORE_ROOT","GEA_OBSERVE","progress","normalizeProps","ZagComponent","Progress","__geaTagName","constructor","args","props","label","String","value","percent","createMachine","_props","machine","getMachineProps","id","defaultValue","min","max","orientation","onValueChange","connectApi","service","connect","getSpreadMap","syncState","api","template","__id","_register","class","trim","Object","entries","width","map","__k","__v","replace","join","__observe_local_percent","change","key","__el","__boundValue","__newClass","className","__resetEls","__e0"],"sources":["../src/components/progress.tsx"],"sourcesContent":["import * as progress from '@zag-js/progress'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Progress extends ZagComponent {\n declare value: number | null\n percent = 0\n\n createMachine(_props: any): any {\n return progress.machine\n }\n\n getMachineProps(props: any) {\n return {\n id: this.id,\n value: props.value,\n defaultValue: props.defaultValue ?? 0,\n min: props.min ?? 0,\n max: props.max ?? 100,\n orientation: props.orientation,\n onValueChange: props.onValueChange,\n }\n }\n\n connectApi(service: any) {\n return progress.connect(service, normalizeProps)\n }\n\n getSpreadMap() {\n return {\n '[data-part=\"root\"]': 'getRootProps',\n '[data-part=\"label\"]': 'getLabelProps',\n '[data-part=\"track\"]': 'getTrackProps',\n '[data-part=\"range\"]': 'getRangeProps',\n '[data-part=\"value-text\"]': 'getValueTextProps',\n }\n }\n\n syncState(api: any) {\n this.value = api.value\n this.percent = api.percent\n }\n\n template(props: any) {\n return (\n <div data-part=\"root\" class={props.class || ''}>\n <div class=\"flex justify-between mb-1\">\n {props.label && (\n <span data-part=\"label\" class=\"progress-label text-sm font-medium\">\n {props.label}\n </span>\n )}\n <span data-part=\"value-text\" class=\"progress-value-text text-sm text-muted-foreground\">\n {this.percent}%\n </span>\n </div>\n <div data-part=\"track\" class=\"progress-track relative h-2 w-full overflow-hidden rounded-full bg-primary/20\">\n <div\n data-part=\"range\"\n class=\"progress-range h-full w-full flex-1 bg-primary transition-all\"\n style={{ width: `${this.percent}%` }}\n ></div>\n </div>\n </div>\n )\n }\n}\n"],"mappings":";;;;;AAIA,IAAqBc,WAArB,cAAsCD,aAAa;;sBAAA;;CAHnDG,YAAsB,GAAGC,MAAI;AAA7B,QAAM,GAAGA,KAAK;iBAKF;AAqCS,OAAAC;AAAA,OAAAjB,mBAAA,EAAA,IAAA,CAAA,CA1CrB,KAAKiB,MA8CYC;AA9CjB,OAAIjB,mBAAuB,GAAA,YAAA;AA0CN,QAAAgB;AAAA,UA1CrB,KAAKA,MA8CYC;WAAK;AAJD,QAAAD;AAAA,UAAA,sEA1CrBf,cAAciB,OAAd,KAAKF,MAgDgBC,MAhDsB,CAAC,CAAA;KAAA,KAAA;;CAO1CI,cAAcC,QAAkB;AAC9B,SAAOb,SAASc;;CAGlBC,gBAAgBR,OAAY;AAC1B,SAAO;GACLS,IAAI,KAAKA;GACTN,OAAOH,MAAMG;GACbO,cAAcV,MAAMU,gBAAgB;GACpCC,KAAKX,MAAMW,OAAO;GAClBC,KAAKZ,MAAMY,OAAO;GAClBC,aAAab,MAAMa;GACnBC,eAAed,MAAMc;GACtB;;CAGHC,WAAWC,SAAc;AACvB,SAAOvB,SAASwB,QAAQD,SAAStB,eAAe;;CAGlDwB,eAAe;AACb,SAAO;GACL,wBAAsB;GACtB,yBAAuB;GACvB,yBAAuB;GACvB,yBAAuB;GACvB,8BAA4B;GAC7B;;CAGHC,UAAUC,KAAU;AAClB,OAAKjB,QAAQiB,IAAIjB;AACjB,OAAKC,UAAUgB,IAAIhB;;CAGrBiB,SAASrB,OAAY;EAAA,MAAAsB,OAAA,KAAAb;AAAA3B,YAAAyC,UAAA5B,cAAA,gBAAA;AACnB,SAAA,YAAA2B,KAAA,qBAC+BtB,MAAMwB,SAAS,OAAE,SAAjBxB,MAAMwB,SAAS,QAAE,QAAA,KAAA,aAAjBxB,MAAMwB,SAAS,OAAE,OAAAtB,OAAjBF,MAAMwB,SAAS,GAAE,GAAA,IAAAC,MAAA,CAAA,GAAA,8CA5CpDH,OAAU,MAAK,KA8CJtB,MAAMC,SAAK,sEA9CtBhB,cAAciB,OAgDCF,MAAMC,MAhDsB,CAAC,CAAA,YAAA,GAAA,MAA5CqB,OAAU,UAAS,eAAnBA,OAAU,MAAK,qFAAfrC,cAAciB,OAoDD,KAAKE,QApDyB,CAAC,CAAA,sIAA5CkB,OAAU,MAAK,mGAAfI,OAAOC,QA2DY,EAAEC,OAAO,GAAG,KAAKxB,QAAO,IA3DP,CAAC,CAACyB,KAAK,CAACC,KAAKC,SAAI,GAArDD,IAAIE,QAAQ,UAAU,MAAM,CAAA,IAA5B,OAAOD,QAAQ,YAAYA,QAAQ,IAAIA,MAAM,OAAOA,MAA4B,CAA1DE,KAAK,KAAK,CAAA;;CAAhCC,wBAAA9B,SAAA+B,QAAoE;AAApE,OAAIjD,iBAAwB,MAAI;cAoDnB,KAAKkB,QAAO;YApD+B;;CAAxD,CAAAjB,oBAAwBiD,KAAKjC,OAAK;AAAA,MAAAiC,QAAA,SAAA;GAAA,MAAAC,OAAA,KAAAjD;AA0Cb,QAAAY;GAAA,MAAAsC,eAEcnC,SAAe;AAAE,OAAAkC,MA5CpD;IACM,MAAME,aADXrC,OAAOoC,gBAAyB,GAAG,CAAEb,MAAM,CAACO,QAAQ,QAAQ,IACf;AACxC,QAAIK,KAAsBG,cAAcD,WAAYF,MAAsBG,YAAYD;;;AACvF,MAAAH,QAAA,QAHL,MAAI/C,gBAAwB,EAAE;;CAA9BoD,aAAU;AAAV,OAAIC,OAAyB;;CAA7B,CAAApD,mCAA0B;AAA1B,MAAI,CAAC,KAAIC,gBAA2B;AAApC,OAAIC,aAAwB,MAAI,CAAA,UAAA,EAAyB,KAAI0C,wBAAuB"}
@@ -1,12 +1,12 @@
1
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_PATCH_COND, GEA_REGISTER_COND, GEA_REGISTER_MAP, GEA_SYNC_MAP, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
2
+ import { Component, GEA_DOM_ITEM, GEA_DOM_KEY, GEA_ELEMENT, GEA_ON_PROP_CHANGE, GEA_PATCH_COND, GEA_REGISTER_COND, GEA_REGISTER_MAP, GEA_SYNC_MAP, geaCondValueSymbol, geaEscapeHtml } from "@geajs/core";
3
3
  import { normalizeProps } from "@zag-js/vanilla";
4
4
  import * as radioGroup from "@zag-js/radio-group";
5
5
  //#region src/components/radio-group.tsx
6
6
  const __v = (v) => v != null && typeof v === "object" ? v.valueOf() : v;
7
7
  var RadioGroup = class extends ZagComponent {
8
8
  static {
9
- this[GEA_CTOR_TAG_NAME] = "radio-group";
9
+ this.__geaTagName = "radio-group";
10
10
  }
11
11
  #__rowEls_list;
12
12
  #__dc___unresolved_0;
@@ -62,25 +62,25 @@ var RadioGroup = class extends ZagComponent {
62
62
  const __id = this.id;
63
63
  Component._register(ZagComponent, "zag-component");
64
64
  const items = props.items || [];
65
- 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 && `<span data-part="label" class="radio-group-label text-sm font-medium mb-2 block">${geaEscapeHtml(String(props.label))}</span>` || ""}<!--${__id + "-c0-end"}--><div data-part="indicator" class="radio-group-indicator"></div>${items.map((item) => `<label data-gea-item-id="${item?.value ?? item}" data-part="item"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="radio-group-item flex items-center gap-2 cursor-pointer py-1"><div data-part="item-control"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="radio-group-item-control h-4 w-4 rounded-full border border-primary flex items-center justify-center"><span class="radio-dot"></span></div><input data-part="item-hidden-input"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} type="radio" class="sr-only" /><span data-part="item-text"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="radio-group-item-text text-sm">${item.label}</span></label>`).join("") + "<!---->"}</div>`;
65
+ 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 && `<span data-part="label" class="radio-group-label text-sm font-medium mb-2 block">${geaEscapeHtml(String(props.label))}</span>` || ""}<!--${__id + "-c0-end"}--><div data-part="indicator" class="radio-group-indicator"></div>${items.map((item) => `<label data-gid="${item?.value ?? item}" data-part="item"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="radio-group-item flex items-center gap-2 cursor-pointer py-1"><div data-part="item-control"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="radio-group-item-control h-4 w-4 rounded-full border border-primary flex items-center justify-center"><span class="radio-dot"></span></div><input data-part="item-hidden-input"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} type="radio" class="sr-only" /><span data-part="item-text"${item.value == null || item.value === false ? "" : ` data-value="${item.value}"`} class="radio-group-item-text text-sm">${item.label}</span></label>`).join("") + "<!---->"}</div>`;
66
66
  }
67
67
  render__unresolved_0Item(item) {
68
- return `<label data-gea-item-id="${item?.value ?? item}" data-part="item"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="radio-group-item flex items-center gap-2 cursor-pointer py-1"><div data-part="item-control"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="radio-group-item-control h-4 w-4 rounded-full border border-primary flex items-center justify-center"><span class="radio-dot"></span></div><input data-part="item-hidden-input"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} type="radio" class="sr-only" /><span data-part="item-text"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="radio-group-item-text text-sm">${item.label}</span></label>`;
68
+ return `<label data-gid="${item?.value ?? item}" data-part="item"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="radio-group-item flex items-center gap-2 cursor-pointer py-1"><div data-part="item-control"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="radio-group-item-control h-4 w-4 rounded-full border border-primary flex items-center justify-center"><span class="radio-dot"></span></div><input data-part="item-hidden-input"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} type="radio" class="sr-only" /><span data-part="item-text"${__v(item.value) == null || __v(item.value) === false ? "" : ` data-value="${item.value}"`} class="radio-group-item-text text-sm">${item.label}</span></label>`;
69
69
  }
70
70
  create__unresolved_0Item(item) {
71
71
  var __c = this.#__dc___unresolved_0 || (this.#__dc___unresolved_0 = this.____unresolved_0_container);
72
- if (!__c[GEA_MAP_CONFIG_TPL]) try {
72
+ if (!__c.__geaTpl) try {
73
73
  var __tw = document.createElement("template");
74
74
  __tw.innerHTML = this.render__unresolved_0Item({
75
75
  value: 0,
76
76
  label: " "
77
77
  });
78
- __c[GEA_MAP_CONFIG_TPL] = __tw.content.firstElementChild;
79
- __c[GEA_MAP_CONFIG_TPL]?.removeAttribute("data-gea-item-id");
78
+ __c.__geaTpl = __tw.content.firstElementChild;
79
+ __c.__geaTpl?.removeAttribute("data-gid");
80
80
  } catch (__err) {
81
81
  console.error(__err);
82
82
  }
83
- if (__c[GEA_MAP_CONFIG_TPL]) var el = __c[GEA_MAP_CONFIG_TPL].cloneNode(true);
83
+ if (__c.__geaTpl) var el = __c.__geaTpl.cloneNode(true);
84
84
  else {
85
85
  var __fw = document.createElement("template");
86
86
  __fw.innerHTML = this.render__unresolved_0Item(item);
@@ -113,7 +113,9 @@ var RadioGroup = class extends ZagComponent {
113
113
  const __newAttr = String(__av);
114
114
  if (el.__ref_2.getAttribute("data-value") !== __newAttr) el.__ref_2.setAttribute("data-value", __newAttr);
115
115
  }
116
- el.__ref_2.firstChild.nodeValue = `
116
+ if (el.__ref_2.textContent !== `
117
+ ${item.label}
118
+ `) el.__ref_2.textContent = `
117
119
  ${item.label}
118
120
  `;
119
121
  el[GEA_DOM_KEY] = String(item?.value ?? item);
@@ -149,20 +151,22 @@ var RadioGroup = class extends ZagComponent {
149
151
  const __newAttr = String(__av);
150
152
  if (row.__ref_2.getAttribute("data-value") !== __newAttr) row.__ref_2.setAttribute("data-value", __newAttr);
151
153
  }
152
- row.__ref_2.firstChild.nodeValue = `
154
+ if (row.__ref_2.textContent !== `
155
+ ${item.label}
156
+ `) row.__ref_2.textContent = `
153
157
  ${item.label}
154
158
  `;
155
159
  row[GEA_DOM_KEY] = String(item?.value ?? item);
156
160
  (this.#__rowEls_list || (this.#__rowEls_list = {}))[String(item?.value ?? item)] = row;
157
161
  row[GEA_DOM_ITEM] = item;
158
162
  }
159
- __onPropChange(key, value) {
163
+ [GEA_ON_PROP_CHANGE](key, value) {
160
164
  if (key === "class") {
161
165
  const __el = this[GEA_ELEMENT];
162
166
  this.props;
163
167
  const __boundValue = value || "";
164
168
  if (__el) {
165
- const __newClass = (__boundValue != null ? String(__boundValue) : "").trim();
169
+ const __newClass = String(__boundValue ?? "").trim().replace(/\s+/g, " ");
166
170
  if (__el.className !== __newClass) __el.className = __newClass;
167
171
  }
168
172
  }