@geajs/ui 0.2.4 → 0.2.10

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 (170) hide show
  1. package/dist/accordion.d.mts +2 -2
  2. package/dist/accordion.mjs +92 -122
  3. package/dist/accordion.mjs.map +1 -1
  4. package/dist/alert.d.mts +3 -3
  5. package/dist/alert.mjs +45 -107
  6. package/dist/alert.mjs.map +1 -1
  7. package/dist/avatar.d.mts +2 -2
  8. package/dist/avatar.mjs +38 -62
  9. package/dist/avatar.mjs.map +1 -1
  10. package/dist/badge.d.mts +1 -1
  11. package/dist/badge.mjs +18 -43
  12. package/dist/badge.mjs.map +1 -1
  13. package/dist/bind.mjs +169 -0
  14. package/dist/bind.mjs.map +1 -0
  15. package/dist/button.d.mts +3 -2
  16. package/dist/button.mjs +30 -85
  17. package/dist/button.mjs.map +1 -1
  18. package/dist/card.d.mts +6 -6
  19. package/dist/card.mjs +82 -194
  20. package/dist/card.mjs.map +1 -1
  21. package/dist/checkbox.d.mts +2 -2
  22. package/dist/checkbox.mjs +30 -31
  23. package/dist/checkbox.mjs.map +1 -1
  24. package/dist/clipboard.d.mts +2 -2
  25. package/dist/clipboard.mjs +49 -55
  26. package/dist/clipboard.mjs.map +1 -1
  27. package/dist/collapsible.d.mts +2 -2
  28. package/dist/collapsible.mjs +18 -45
  29. package/dist/collapsible.mjs.map +1 -1
  30. package/dist/combobox.d.mts +2 -2
  31. package/dist/combobox.mjs +390 -261
  32. package/dist/combobox.mjs.map +1 -1
  33. package/dist/compiled-component.mjs +121 -0
  34. package/dist/compiled-component.mjs.map +1 -0
  35. package/dist/compiled-reactive-component.mjs +435 -0
  36. package/dist/compiled-reactive-component.mjs.map +1 -0
  37. package/dist/component-id.mjs +21 -0
  38. package/dist/component-id.mjs.map +1 -0
  39. package/dist/conditional-truthy.mjs +48 -0
  40. package/dist/conditional-truthy.mjs.map +1 -0
  41. package/dist/conditional.mjs +54 -0
  42. package/dist/conditional.mjs.map +1 -0
  43. package/dist/delegate-event.mjs +53 -0
  44. package/dist/delegate-event.mjs.map +1 -0
  45. package/dist/dialog.d.mts +4 -3
  46. package/dist/dialog.mjs +57 -70
  47. package/dist/dialog.mjs.map +1 -1
  48. package/dist/dirty-symbols.mjs +7 -0
  49. package/dist/dirty-symbols.mjs.map +1 -0
  50. package/dist/disposer.mjs +65 -0
  51. package/dist/disposer.mjs.map +1 -0
  52. package/dist/dnd-manager.d.mts +9 -1
  53. package/dist/dnd-manager.mjs +67 -29
  54. package/dist/dnd-manager.mjs.map +1 -1
  55. package/dist/drag-drop-context.d.mts +1 -1
  56. package/dist/drag-drop-context.mjs +17 -33
  57. package/dist/drag-drop-context.mjs.map +1 -1
  58. package/dist/draggable.d.mts +1 -1
  59. package/dist/draggable.mjs +2 -91
  60. package/dist/draggable2.mjs +424 -0
  61. package/dist/draggable2.mjs.map +1 -0
  62. package/dist/droppable.d.mts +1 -1
  63. package/dist/droppable.mjs +20 -44
  64. package/dist/droppable.mjs.map +1 -1
  65. package/dist/file-upload.d.mts +2 -2
  66. package/dist/file-upload.mjs +405 -122
  67. package/dist/file-upload.mjs.map +1 -1
  68. package/dist/hover-card.d.mts +2 -2
  69. package/dist/hover-card.mjs +24 -59
  70. package/dist/hover-card.mjs.map +1 -1
  71. package/dist/index.mjs +3 -3
  72. package/dist/input.d.mts +1 -1
  73. package/dist/input.mjs +1 -93
  74. package/dist/input2.mjs +56 -0
  75. package/dist/input2.mjs.map +1 -0
  76. package/dist/internal-symbols.mjs +9 -0
  77. package/dist/internal-symbols.mjs.map +1 -0
  78. package/dist/item-obs.mjs +31 -0
  79. package/dist/item-obs.mjs.map +1 -0
  80. package/dist/keyed-list-symbols.mjs +6 -0
  81. package/dist/keyed-list-symbols.mjs.map +1 -0
  82. package/dist/keyed-list.mjs +538 -0
  83. package/dist/keyed-list.mjs.map +1 -0
  84. package/dist/label.d.mts +1 -1
  85. package/dist/label.mjs +20 -45
  86. package/dist/label.mjs.map +1 -1
  87. package/dist/menu.d.mts +2 -2
  88. package/dist/menu.mjs +87 -41
  89. package/dist/menu.mjs.map +1 -1
  90. package/dist/number-input.d.mts +2 -2
  91. package/dist/number-input.mjs +28 -32
  92. package/dist/number-input.mjs.map +1 -1
  93. package/dist/pagination.d.mts +2 -2
  94. package/dist/pagination.mjs +12 -35
  95. package/dist/pagination.mjs.map +1 -1
  96. package/dist/patch.mjs +21 -0
  97. package/dist/patch.mjs.map +1 -0
  98. package/dist/pin-input.d.mts +2 -2
  99. package/dist/pin-input.mjs +88 -87
  100. package/dist/pin-input.mjs.map +1 -1
  101. package/dist/popover.d.mts +2 -2
  102. package/dist/popover.mjs +45 -67
  103. package/dist/popover.mjs.map +1 -1
  104. package/dist/progress.d.mts +2 -2
  105. package/dist/progress.mjs +37 -43
  106. package/dist/progress.mjs.map +1 -1
  107. package/dist/radio-group.d.mts +2 -2
  108. package/dist/radio-group.mjs +99 -140
  109. package/dist/radio-group.mjs.map +1 -1
  110. package/dist/rating-group.d.mts +2 -2
  111. package/dist/rating-group.mjs +91 -99
  112. package/dist/rating-group.mjs.map +1 -1
  113. package/dist/reactive-attr.mjs +13 -0
  114. package/dist/reactive-attr.mjs.map +1 -0
  115. package/dist/reactive-bool.mjs +13 -0
  116. package/dist/reactive-bool.mjs.map +1 -0
  117. package/dist/reactive-class-name.mjs +15 -0
  118. package/dist/reactive-class-name.mjs.map +1 -0
  119. package/dist/reactive-class.mjs +54 -0
  120. package/dist/reactive-class.mjs.map +1 -0
  121. package/dist/reactive-style.mjs +24 -0
  122. package/dist/reactive-style.mjs.map +1 -0
  123. package/dist/reactive-text.mjs +62 -0
  124. package/dist/reactive-text.mjs.map +1 -0
  125. package/dist/select.d.mts +2 -2
  126. package/dist/select.mjs +106 -186
  127. package/dist/select.mjs.map +1 -1
  128. package/dist/separator.d.mts +1 -1
  129. package/dist/separator.mjs +19 -45
  130. package/dist/separator.mjs.map +1 -1
  131. package/dist/skeleton.d.mts +1 -1
  132. package/dist/skeleton.mjs +11 -35
  133. package/dist/skeleton.mjs.map +1 -1
  134. package/dist/slider.d.mts +2 -2
  135. package/dist/slider.mjs +31 -32
  136. package/dist/slider.mjs.map +1 -1
  137. package/dist/switch.d.mts +2 -2
  138. package/dist/switch.mjs +30 -31
  139. package/dist/switch.mjs.map +1 -1
  140. package/dist/tabs.d.mts +7 -2
  141. package/dist/tabs.mjs +180 -147
  142. package/dist/tabs.mjs.map +1 -1
  143. package/dist/tags-input.d.mts +2 -2
  144. package/dist/tags-input.mjs +102 -188
  145. package/dist/tags-input.mjs.map +1 -1
  146. package/dist/textarea.d.mts +1 -1
  147. package/dist/textarea.mjs +32 -75
  148. package/dist/textarea.mjs.map +1 -1
  149. package/dist/theme.css +4 -5
  150. package/dist/toast.d.mts +1 -1
  151. package/dist/toast.mjs +14 -34
  152. package/dist/toast.mjs.map +1 -1
  153. package/dist/toggle-group.d.mts +2 -2
  154. package/dist/toggle-group.mjs +78 -85
  155. package/dist/toggle-group.mjs.map +1 -1
  156. package/dist/tooltip.d.mts +2 -2
  157. package/dist/tooltip.mjs +23 -43
  158. package/dist/tooltip.mjs.map +1 -1
  159. package/dist/tree-view.d.mts +2 -2
  160. package/dist/tree-view.mjs +32 -50
  161. package/dist/tree-view.mjs.map +1 -1
  162. package/dist/types.d.mts +9 -0
  163. package/dist/zag-component.d.mts +26 -3
  164. package/dist/zag-component.mjs +73 -17
  165. package/dist/zag-component.mjs.map +1 -1
  166. package/package.json +4 -3
  167. package/dist/cn.mjs +0 -10
  168. package/dist/cn.mjs.map +0 -1
  169. package/dist/draggable.mjs.map +0 -1
  170. package/dist/input.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"combobox.mjs","names":["__v","v","valueOf","Component","geaCondValueSymbol","GEA_REGISTER_COND","geaEscapeHtml","GEA_ON_PROP_CHANGE","GEA_ELEMENT","GEA_PATCH_COND","GEA_DOM_KEY","GEA_DOM_ITEM","GEA_ENSURE_ARRAY_CONFIGS","GEA_APPLY_LIST_CHANGES","GEA_SETUP_LOCAL_STATE_OBSERVERS","GEA_STORE_ROOT","GEA_OBSERVE","combobox","normalizeProps","ZagComponent","Combobox","__geaTagName","__rowEls_b1","__dc_b1","constructor","args","props","label","String","open","value","inputValue","filteredItems","_allItems","created","items","createMachine","_props","machine","_buildCollection","collection","itemToValue","item","itemToString","_filterItems","query","q","toLowerCase","filtered","filter","includes","_machine","updateProps","getMachineProps","col","id","defaultValue","defaultInputValue","defaultOpen","multiple","disabled","readOnly","invalid","required","placeholder","inputBehavior","selectionBehavior","closeOnSelect","allowCustomValue","loopFocus","openOnClick","name","form","positioning","onValueChange","details","ValueChangeDetails","onInputValueChange","InputValueChangeDetails","onOpenChange","OpenChangeDetails","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","HTMLElement","dataset","getItemProps","[data-part=\"item-text\"]","getItemTextProps","[data-part=\"item-indicator\"]","getItemIndicatorProps","syncState","template","__id","_register","class","trim","map","renderFilteredItemsItem","join","key","__el","__boundValue","__newClass","replace","className","createFilteredItemsItem","__c","__filteredItems_container","__geaTpl","__tw","document","createElement","innerHTML","content","firstElementChild","removeAttribute","__err","console","error","cloneNode","__fw","__ref_0","__ref_1","nextElementSibling","__av","__newAttr","getAttribute","setAttribute","textContent","patchFilteredItemsItem","row","__prevItem","__observe_local_filteredItems","change","__gid","Array","isArray","length","__filteredItemsListConfig","arrayPathParts","render","bind","create","patchRow","getKey","propPatchers","__target","classList","toggle"],"sources":["../src/components/combobox.tsx"],"sourcesContent":["import * as combobox from '@zag-js/combobox'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Combobox extends ZagComponent {\n declare open: boolean\n declare value: string[]\n declare inputValue: string\n declare filteredItems: any[]\n declare _allItems: any[]\n\n created(props: any) {\n this._allItems = props.items || []\n this.filteredItems = [...this._allItems]\n super.created(props)\n }\n\n createMachine(_props: any): any {\n return combobox.machine\n }\n\n _buildCollection(items: any[]) {\n return combobox.collection({\n items,\n itemToValue: (item: any) => item.value,\n itemToString: (item: any) => item.label || item.value,\n })\n }\n\n _filterItems(query: string) {\n const q = query.toLowerCase()\n const filtered = q\n ? this._allItems.filter((item: any) => (item.label || item.value).toLowerCase().includes(q))\n : [...this._allItems]\n this.filteredItems = filtered\n this._machine?.updateProps({ collection: this._buildCollection(filtered) })\n }\n\n getMachineProps(props: any) {\n const col = props.collection || this._buildCollection(this._allItems)\n\n return {\n id: this.id,\n collection: col,\n value: props.value,\n defaultValue: props.defaultValue,\n inputValue: props.inputValue,\n defaultInputValue: props.defaultInputValue,\n open: props.open,\n defaultOpen: props.defaultOpen,\n multiple: props.multiple,\n disabled: props.disabled,\n readOnly: props.readOnly,\n invalid: props.invalid,\n required: props.required,\n placeholder: props.placeholder,\n inputBehavior: props.inputBehavior ?? 'none',\n selectionBehavior: props.selectionBehavior ?? 'replace',\n closeOnSelect: props.closeOnSelect ?? true,\n allowCustomValue: props.allowCustomValue,\n loopFocus: props.loopFocus ?? true,\n openOnClick: props.openOnClick ?? false,\n name: props.name,\n form: props.form,\n positioning: props.positioning,\n onValueChange: (details: combobox.ValueChangeDetails) => {\n this.value = details.value\n props.onValueChange?.(details)\n },\n onInputValueChange: (details: combobox.InputValueChangeDetails) => {\n this.inputValue = details.inputValue\n this._filterItems(details.inputValue)\n props.onInputValueChange?.(details)\n },\n onOpenChange: (details: combobox.OpenChangeDetails) => {\n this.open = details.open\n props.onOpenChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return combobox.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=\"trigger\"]': 'getTriggerProps',\n '[data-part=\"clear-trigger\"]': 'getClearTriggerProps',\n '[data-part=\"positioner\"]': 'getPositionerProps',\n '[data-part=\"content\"]': 'getContentProps',\n '[data-part=\"list\"]': 'getListProps',\n '[data-part=\"item\"]': (api, el) => {\n const value = (el as HTMLElement).dataset.value\n const label = (el as HTMLElement).dataset.label || value\n return api.getItemProps({ item: { value, label } })\n },\n '[data-part=\"item-text\"]': (api, el) => {\n const value = (el as HTMLElement).dataset.value\n const label = (el as HTMLElement).dataset.label || value\n return api.getItemTextProps({ item: { value, label } })\n },\n '[data-part=\"item-indicator\"]': (api, el) => {\n const value = (el as HTMLElement).dataset.value\n const label = (el as HTMLElement).dataset.label || value\n return api.getItemIndicatorProps({ item: { value, label } })\n },\n }\n }\n\n syncState(api: any) {\n this.open = api.open\n this.value = api.value\n this.inputValue = api.inputValue\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=\"combobox-label text-sm font-medium mb-1 block\">\n {props.label}\n </label>\n )}\n <div data-part=\"control\" class=\"combobox-control flex\">\n <input\n data-part=\"input\"\n class=\"combobox-input flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-xs focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring\"\n />\n <button\n data-part=\"trigger\"\n class=\"combobox-trigger inline-flex h-9 items-center justify-center rounded-r-md border border-l-0 border-input px-2\"\n >\n &#x25BC;\n </button>\n </div>\n <div data-part=\"positioner\" class=\"combobox-positioner\">\n <div\n data-part=\"content\"\n class=\"combobox-content z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md\"\n >\n <div data-part=\"list\">\n {this.filteredItems.map((item: any) => (\n <div\n key={item.value}\n data-part=\"item\"\n data-value={item.value}\n data-label={item.label}\n class=\"combobox-item relative flex cursor-pointer select-none items-center rounded-xs px-2 py-1.5 text-sm outline-hidden data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground\"\n >\n <span data-part=\"item-text\" data-value={item.value} data-label={item.label}>\n {item.label}\n </span>\n <span\n data-part=\"item-indicator\"\n data-value={item.value}\n data-label={item.label}\n class=\"combobox-item-indicator ml-auto\"\n >\n &#x2713;\n </span>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"combobox.mjs","names":["GEA_CREATE_TEMPLATE","reactiveClass","reactiveTextValue","conditionalTruthy","reactiveAttr","GEA_DIRTY_PROPS","GEA_DOM_ITEM","GEA_PROXY_RAW","GEA_DIRTY","combobox","normalizeProps","ZagComponent","_tpl0_root","_tpl0_create","t","document","createElement","innerHTML","content","firstChild","_tpl1_root","_tpl1_create","_tpl2_root","_tpl2_create","Combobox","open","value","inputValue","filteredItems","_allItems","created","props","items","createMachine","_props","machine","_buildCollection","collection","itemToValue","item","itemToString","label","_filterItems","query","q","toLowerCase","filtered","filter","includes","_machine","updateProps","getMachineProps","col","id","defaultValue","defaultInputValue","defaultOpen","multiple","disabled","readOnly","invalid","required","placeholder","inputBehavior","selectionBehavior","closeOnSelect","allowCustomValue","loopFocus","openOnClick","name","form","positioning","onValueChange","details","ValueChangeDetails","onInputValueChange","InputValueChangeDetails","onOpenChange","OpenChangeDetails","connectApi","service","connect","getSpreadMap","[data-part=\"item\"]","api","el","HTMLElement","dataset","getItemProps","[data-part=\"item-text\"]","getItemTextProps","[data-part=\"item-indicator\"]","getItemIndicatorProps","syncState","d","root","cloneNode","el0","anchor1","parent2","childNodes","class","parentNode","marker0","t0","__ki_L0","idx","setAttribute","String","__n","nodeValue","__kp_L0","has","__r0","__r1","__r2","__kl_container","__kl_root","__kl_key","__kl_create","__k","__el","key","element","__kl_patch","e","newItem","newIdx","__raw","__kl_unwrap","v","__kl_resolve","Array","isArray","__kl_entries","__kl_byKey","Map","__kl_remove","entry","disposer","dispose","delete","removeChild","__kl_first","length","frag","ownerDocument","createDocumentFragment","i","push","set","appendChild","clear","__kl_prev","__kl_reconcile","arr","changes","aipuPatchable","change","arix","aipu","itemDirty","newValue","superseded","j","dirtyOnly","type","raw","patched","structural","aipuOnly","a","b","entryA","entryB","newAKey","newBKey","refB","nextSibling","insertBefore","onlyAppends","appendCount","count","start","onlyRemoves","totalRemoved","splice","removed","sort","newLen","oldLen","nextEntries","newKeys","textContent","diffA","diffB","diffCount","disjoint","existing","nextNodes","replaceChildren","_i","seenOld","fill","oldIdx","nextRef","observe","off","_value","add"],"sources":["../src/components/combobox.tsx"],"sourcesContent":["import * as combobox from '@zag-js/combobox'\nimport { normalizeProps } from '@zag-js/vanilla'\nimport ZagComponent from '../primitives/zag-component'\n\nexport default class Combobox extends ZagComponent {\n declare open: boolean\n declare value: string[]\n declare inputValue: string\n declare filteredItems: any[]\n declare _allItems: any[]\n\n created(props: any) {\n this._allItems = props.items || []\n this.filteredItems = [...this._allItems]\n super.created(props)\n }\n\n createMachine(_props: any): any {\n return combobox.machine\n }\n\n _buildCollection(items: any[]) {\n return combobox.collection({\n items,\n itemToValue: (item: any) => item.value,\n itemToString: (item: any) => item.label || item.value,\n })\n }\n\n _filterItems(query: string) {\n const q = query.toLowerCase()\n const filtered = q\n ? this._allItems.filter((item: any) => (item.label || item.value).toLowerCase().includes(q))\n : [...this._allItems]\n this.filteredItems = filtered\n this._machine?.updateProps({ collection: this._buildCollection(filtered) })\n }\n\n getMachineProps(props: any) {\n const col = props.collection || this._buildCollection(this._allItems)\n\n return {\n id: this.id,\n collection: col,\n value: props.value,\n defaultValue: props.defaultValue,\n inputValue: props.inputValue,\n defaultInputValue: props.defaultInputValue,\n open: props.open,\n defaultOpen: props.defaultOpen,\n multiple: props.multiple,\n disabled: props.disabled,\n readOnly: props.readOnly,\n invalid: props.invalid,\n required: props.required,\n placeholder: props.placeholder,\n inputBehavior: props.inputBehavior ?? 'none',\n selectionBehavior: props.selectionBehavior ?? 'replace',\n closeOnSelect: props.closeOnSelect ?? true,\n allowCustomValue: props.allowCustomValue,\n loopFocus: props.loopFocus ?? true,\n openOnClick: props.openOnClick ?? false,\n name: props.name,\n form: props.form,\n positioning: props.positioning,\n onValueChange: (details: combobox.ValueChangeDetails) => {\n this.value = details.value\n props.onValueChange?.(details)\n },\n onInputValueChange: (details: combobox.InputValueChangeDetails) => {\n this.inputValue = details.inputValue\n this._filterItems(details.inputValue)\n props.onInputValueChange?.(details)\n },\n onOpenChange: (details: combobox.OpenChangeDetails) => {\n this.open = details.open\n props.onOpenChange?.(details)\n },\n }\n }\n\n connectApi(service: any) {\n return combobox.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=\"trigger\"]': 'getTriggerProps',\n '[data-part=\"clear-trigger\"]': 'getClearTriggerProps',\n '[data-part=\"positioner\"]': 'getPositionerProps',\n '[data-part=\"content\"]': 'getContentProps',\n '[data-part=\"list\"]': 'getListProps',\n '[data-part=\"item\"]': (api, el) => {\n const value = (el as HTMLElement).dataset.value\n const label = (el as HTMLElement).dataset.label || value\n return api.getItemProps({ item: { value, label } })\n },\n '[data-part=\"item-text\"]': (api, el) => {\n const value = (el as HTMLElement).dataset.value\n const label = (el as HTMLElement).dataset.label || value\n return api.getItemTextProps({ item: { value, label } })\n },\n '[data-part=\"item-indicator\"]': (api, el) => {\n const value = (el as HTMLElement).dataset.value\n const label = (el as HTMLElement).dataset.label || value\n return api.getItemIndicatorProps({ item: { value, label } })\n },\n }\n }\n\n syncState(api: any) {\n this.open = api.open\n this.value = api.value\n this.inputValue = api.inputValue\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=\"combobox-label text-sm font-medium mb-1 block\">\n {props.label}\n </label>\n )}\n <div data-part=\"control\" class=\"combobox-control flex\">\n <input\n data-part=\"input\"\n class=\"combobox-input flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-xs focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring\"\n />\n <button\n data-part=\"trigger\"\n class=\"combobox-trigger inline-flex h-9 items-center justify-center rounded-r-md border border-l-0 border-input px-2\"\n >\n &#x25BC;\n </button>\n </div>\n <div data-part=\"positioner\" class=\"combobox-positioner\">\n <div\n data-part=\"content\"\n class=\"combobox-content z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md\"\n >\n <div data-part=\"list\">\n {this.filteredItems.map((item: any) => (\n <div\n key={item.value}\n data-part=\"item\"\n data-value={item.value}\n data-label={item.label}\n class=\"combobox-item relative flex cursor-pointer select-none items-center rounded-xs px-2 py-1.5 text-sm outline-hidden data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground\"\n >\n <span data-part=\"item-text\" data-value={item.value} data-label={item.label}>\n {item.label}\n </span>\n <span\n data-part=\"item-indicator\"\n data-value={item.value}\n data-label={item.label}\n class=\"combobox-item-indicator ml-auto\"\n >\n &#x2713;\n </span>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,121 @@
1
+ import { n as createDisposer } from "./disposer.mjs";
2
+ import { c as GEA_ELEMENT, l as GEA_ON_PROP_CHANGE, o as GEA_CREATE_TEMPLATE, s as GEA_DOM_COMPONENT } from "./bind.mjs";
3
+ import { i as GEA_SET_PROPS, n as GEA_DISPOSER, t as GEA_CREATED_CALLED } from "./internal-symbols.mjs";
4
+ import { t as getComponentId } from "./component-id.mjs";
5
+ import { clsx } from "clsx";
6
+ import { twMerge } from "tailwind-merge";
7
+ //#region src/utils/cn.ts
8
+ function cn(...inputs) {
9
+ return twMerge(clsx(inputs));
10
+ }
11
+ //#endregion
12
+ //#region ../gea/src/runtime/compiled-component.ts
13
+ const GEA_COMPONENT_ID = Symbol();
14
+ const GEA_LAST_PROP_VALUES = Symbol();
15
+ var CompiledComponent = class CompiledComponent {
16
+ constructor() {
17
+ this.rendered = false;
18
+ this.props = {};
19
+ this[GEA_ELEMENT] = null;
20
+ this[GEA_DISPOSER] = createDisposer();
21
+ this[GEA_CREATED_CALLED] = false;
22
+ }
23
+ get id() {
24
+ return this[GEA_COMPONENT_ID] ??= getComponentId();
25
+ }
26
+ set id(value) {
27
+ this[GEA_COMPONENT_ID] = value;
28
+ }
29
+ get el() {
30
+ return this[GEA_ELEMENT] ?? null;
31
+ }
32
+ [GEA_SET_PROPS](thunks) {
33
+ const createdCalled = this[GEA_CREATED_CALLED];
34
+ const notifyPropChange = createdCalled ? this[GEA_ON_PROP_CHANGE] : void 0;
35
+ const prevValues = typeof notifyPropChange === "function" ? this[GEA_LAST_PROP_VALUES] : void 0;
36
+ const out = {};
37
+ for (const k in thunks) Object.defineProperty(out, k, {
38
+ enumerable: true,
39
+ configurable: true,
40
+ get: () => thunks[k]()
41
+ });
42
+ const childrenThunk = thunks.children;
43
+ if (typeof childrenThunk === "function") {
44
+ let cached = void 0;
45
+ let cacheNode = false;
46
+ Object.defineProperty(out, "children", {
47
+ enumerable: true,
48
+ configurable: true,
49
+ get: () => {
50
+ if (cacheNode) return cached;
51
+ const v = childrenThunk();
52
+ if (v !== null && typeof v === "object" && typeof v.nodeType === "number") {
53
+ cached = v;
54
+ cacheNode = true;
55
+ }
56
+ return v;
57
+ }
58
+ });
59
+ }
60
+ this.props = out;
61
+ const nextValues = {};
62
+ for (const key in thunks) nextValues[key] = this.props?.[key];
63
+ this[GEA_LAST_PROP_VALUES] = nextValues;
64
+ if (!createdCalled) {
65
+ this[GEA_CREATED_CALLED] = true;
66
+ if (this.created !== CompiledComponent.prototype.created) this.created(this.props);
67
+ } else if (typeof notifyPropChange === "function") for (const key in thunks) {
68
+ const prev = prevValues?.[key];
69
+ const next = this.props?.[key];
70
+ if (next !== prev || prev !== null && typeof prev === "object") notifyPropChange.call(this, key, next);
71
+ }
72
+ }
73
+ [GEA_CREATE_TEMPLATE](_disposer) {
74
+ return document.createDocumentFragment();
75
+ }
76
+ render(parent, _index) {
77
+ if (!this[GEA_CREATED_CALLED]) {
78
+ this[GEA_CREATED_CALLED] = true;
79
+ if (this.created !== CompiledComponent.prototype.created) this.created(this.props);
80
+ }
81
+ let node = this[GEA_CREATE_TEMPLATE](this[GEA_DISPOSER]);
82
+ if (node == null) node = document.createComment("");
83
+ if (Array.isArray(node)) {
84
+ const frag = document.createDocumentFragment();
85
+ for (const n of node) {
86
+ if (n == null) continue;
87
+ if (n !== null && typeof n === "object" && typeof n.nodeType === "number") frag.appendChild(n);
88
+ else frag.appendChild(document.createTextNode(String(n)));
89
+ }
90
+ node = frag;
91
+ } else if (!(node !== null && typeof node === "object" && typeof node.nodeType === "number")) node = document.createTextNode(String(node));
92
+ const domNode = node;
93
+ parent.appendChild(domNode);
94
+ if (domNode.nodeType === 11) this[GEA_ELEMENT] = parent.lastElementChild ?? null;
95
+ else if (domNode.nodeType === 1) this[GEA_ELEMENT] = domNode;
96
+ const el = this[GEA_ELEMENT];
97
+ if (el) el[GEA_DOM_COMPONENT] = this;
98
+ this.rendered = true;
99
+ this.onAfterRender();
100
+ }
101
+ onAfterRender() {}
102
+ created(_props) {}
103
+ dispose() {
104
+ this[GEA_DISPOSER].dispose();
105
+ const e = this[GEA_ELEMENT];
106
+ if (e && e.parentNode) e.parentNode.removeChild(e);
107
+ this[GEA_ELEMENT] = null;
108
+ }
109
+ $(sel) {
110
+ const e = this[GEA_ELEMENT];
111
+ return e ? e.querySelector(sel) : null;
112
+ }
113
+ $$(sel) {
114
+ const e = this[GEA_ELEMENT];
115
+ return e ? Array.from(e.querySelectorAll(sel)) : [];
116
+ }
117
+ };
118
+ //#endregion
119
+ export { cn as n, CompiledComponent as t };
120
+
121
+ //# sourceMappingURL=compiled-component.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiled-component.mjs","names":[],"sources":["../src/utils/cn.ts","../../gea/src/runtime/compiled-component.ts"],"sourcesContent":["import { clsx, type ClassValue } from 'clsx'\nimport { twMerge } from 'tailwind-merge'\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n","import { GEA_CREATE_TEMPLATE, GEA_DOM_COMPONENT, GEA_ELEMENT, GEA_ON_PROP_CHANGE } from './symbols'\nimport { GEA_CREATED_CALLED, GEA_DISPOSER, GEA_SET_PROPS } from './internal-symbols'\nimport { createDisposer, type Disposer } from './disposer'\nimport { getComponentId } from './component-id'\nimport type { Renderable } from './renderable'\n\n/**\n * One thunk per prop of `P`, each returning that prop's own type.\n *\n * Generic rather than a flat dictionary so a component's props keep their\n * declared types all the way through `GEA_SET_PROPS` — the compiler emits one\n * thunk per JSX attribute, so the mapping is exact at every instantiation.\n *\n * `children` is intersected in separately (not folded into the mapped part)\n * because JSX always permits a childless invocation regardless of whether\n * `P` declares a `children` field — the compiler attaches a children thunk\n * whenever the call site has JSX children, independent of `P`'s own shape.\n */\ntype PropThunks<P> = { [K in keyof P]: () => P[K] } & { children?: () => Renderable }\nconst GEA_COMPONENT_ID: unique symbol = Symbol()\nconst GEA_LAST_PROP_VALUES: unique symbol = Symbol()\n\nexport class CompiledComponent<P extends Record<string, any> = Record<string, any>> {\n rendered = false\n props: P = {} as P;\n\n [GEA_ELEMENT] = null as HTMLElement | null;\n [GEA_DISPOSER] = createDisposer() as Disposer;\n [GEA_CREATED_CALLED] = false;\n [GEA_COMPONENT_ID]?: string;\n [GEA_LAST_PROP_VALUES]?: Partial<P>;\n [GEA_ON_PROP_CHANGE]?(key: string, next: unknown): void\n\n get id(): string {\n return (this[GEA_COMPONENT_ID] ??= getComponentId())\n }\n\n set id(value: string) {\n this[GEA_COMPONENT_ID] = value\n }\n\n get el(): HTMLElement | null {\n return this[GEA_ELEMENT] ?? null\n }\n\n [GEA_SET_PROPS](thunks: PropThunks<P>): void {\n const createdCalled = this[GEA_CREATED_CALLED]\n const notifyPropChange = createdCalled ? this[GEA_ON_PROP_CHANGE] : undefined\n const prevValues: Partial<P> | undefined =\n typeof notifyPropChange === 'function' ? this[GEA_LAST_PROP_VALUES] : undefined\n // `out` is `P` under construction — every key comes from `PropThunks<P>`\n // (i.e. `keyof P`) and every getter yields `P[K]`, so `Partial<P>` is the\n // exact in-progress type; the final `as P` merely asserts completion.\n const out: Partial<P> = {}\n for (const k in thunks) {\n Object.defineProperty(out, k, {\n enumerable: true,\n configurable: true,\n get: () => thunks[k](),\n })\n }\n const childrenThunk = thunks.children\n if (typeof childrenThunk === 'function') {\n let cached: Renderable = undefined\n let cacheNode = false\n Object.defineProperty(out, 'children', {\n enumerable: true,\n configurable: true,\n get: () => {\n if (cacheNode) return cached\n const v = childrenThunk()\n if (v !== null && typeof v === 'object' && typeof (v as Node).nodeType === 'number') {\n cached = v\n cacheNode = true\n }\n return v\n },\n })\n }\n this.props = out as P\n const nextValues: Partial<P> = {}\n for (const key in thunks) nextValues[key as keyof P] = this.props?.[key as keyof P]\n this[GEA_LAST_PROP_VALUES] = nextValues\n if (!createdCalled) {\n this[GEA_CREATED_CALLED] = true\n if (this.created !== CompiledComponent.prototype.created) this.created(this.props)\n } else if (typeof notifyPropChange === 'function') {\n for (const key in thunks) {\n const prev = prevValues?.[key as keyof P]\n const next = this.props?.[key as keyof P]\n if (next !== prev || (prev !== null && typeof prev === 'object')) notifyPropChange.call(this, key, next)\n }\n }\n }\n\n [GEA_CREATE_TEMPLATE](_disposer: Disposer): Renderable {\n return document.createDocumentFragment()\n }\n\n render(parent: Node, _index?: number): void {\n if (!this[GEA_CREATED_CALLED]) {\n this[GEA_CREATED_CALLED] = true\n if (this.created !== CompiledComponent.prototype.created) this.created(this.props)\n }\n let node: Renderable = this[GEA_CREATE_TEMPLATE](this[GEA_DISPOSER])\n if (node == null) node = document.createComment('')\n if (Array.isArray(node)) {\n const frag = document.createDocumentFragment()\n for (const n of node) {\n if (n == null) continue\n if (n !== null && typeof n === 'object' && typeof (n as Node).nodeType === 'number') frag.appendChild(n as Node)\n else frag.appendChild(document.createTextNode(String(n)))\n }\n node = frag\n } else if (!(node !== null && typeof node === 'object' && typeof (node as Node).nodeType === 'number')) {\n node = document.createTextNode(String(node))\n }\n // By this point `node` is always a genuine Node: either it already was one,\n // or the branches above just replaced it with one (a fragment or a text\n // node). TS's control-flow analysis can't carry that invariant through the\n // `Array.isArray` / `typeof` chain above, so state it once here instead of\n // re-asserting `as Node` at every remaining use.\n const domNode = node as Node\n parent.appendChild(domNode)\n if (domNode.nodeType === 11) {\n this[GEA_ELEMENT] = ((parent as Element).lastElementChild as HTMLElement | null) ?? null\n } else if (domNode.nodeType === 1) {\n this[GEA_ELEMENT] = domNode as HTMLElement\n }\n const el = this[GEA_ELEMENT]\n if (el) (el as HTMLElement & { [GEA_DOM_COMPONENT]?: unknown })[GEA_DOM_COMPONENT] = this\n this.rendered = true\n this.onAfterRender()\n }\n\n onAfterRender(): void {\n /* no-op */\n }\n\n created(_props?: P): void {\n /* no-op */\n }\n\n dispose(): void {\n this[GEA_DISPOSER].dispose()\n const e = this[GEA_ELEMENT] as HTMLElement | null\n if (e && e.parentNode) e.parentNode.removeChild(e)\n this[GEA_ELEMENT] = null\n }\n\n $(sel: string): Element | null {\n const e = this[GEA_ELEMENT] as HTMLElement | null\n return e ? e.querySelector(sel) : null\n }\n\n $$(sel: string): Element[] {\n const e = this[GEA_ELEMENT] as HTMLElement | null\n return e ? Array.from(e.querySelectorAll(sel)) : []\n }\n}\n\nexport default CompiledComponent\n"],"mappings":";;;;;;;AAGA,SAAgB,GAAG,GAAG,QAAsB;AAC1C,QAAO,QAAQ,KAAK,OAAO,CAAC;;;;ACe9B,MAAM,mBAAkC,QAAQ;AAChD,MAAM,uBAAsC,QAAQ;AAEpD,IAAa,oBAAb,MAAa,kBAAuE;;kBACvE;eACA,EAAE;OAEZ,eAAe;OACf,gBAAgB,gBAAgB;OAChC,sBAAsB;;CAKvB,IAAI,KAAa;AACf,SAAQ,KAAK,sBAAsB,gBAAgB;;CAGrD,IAAI,GAAG,OAAe;AACpB,OAAK,oBAAoB;;CAG3B,IAAI,KAAyB;AAC3B,SAAO,KAAK,gBAAgB;;CAG9B,CAAC,eAAe,QAA6B;EAC3C,MAAM,gBAAgB,KAAK;EAC3B,MAAM,mBAAmB,gBAAgB,KAAK,sBAAsB,KAAA;EACpE,MAAM,aACJ,OAAO,qBAAqB,aAAa,KAAK,wBAAwB,KAAA;EAIxE,MAAM,MAAkB,EAAE;AAC1B,OAAK,MAAM,KAAK,OACd,QAAO,eAAe,KAAK,GAAG;GAC5B,YAAY;GACZ,cAAc;GACd,WAAW,OAAO,IAAI;GACvB,CAAC;EAEJ,MAAM,gBAAgB,OAAO;AAC7B,MAAI,OAAO,kBAAkB,YAAY;GACvC,IAAI,SAAqB,KAAA;GACzB,IAAI,YAAY;AAChB,UAAO,eAAe,KAAK,YAAY;IACrC,YAAY;IACZ,cAAc;IACd,WAAW;AACT,SAAI,UAAW,QAAO;KACtB,MAAM,IAAI,eAAe;AACzB,SAAI,MAAM,QAAQ,OAAO,MAAM,YAAY,OAAQ,EAAW,aAAa,UAAU;AACnF,eAAS;AACT,kBAAY;;AAEd,YAAO;;IAEV,CAAC;;AAEJ,OAAK,QAAQ;EACb,MAAM,aAAyB,EAAE;AACjC,OAAK,MAAM,OAAO,OAAQ,YAAW,OAAkB,KAAK,QAAQ;AACpE,OAAK,wBAAwB;AAC7B,MAAI,CAAC,eAAe;AAClB,QAAK,sBAAsB;AAC3B,OAAI,KAAK,YAAY,kBAAkB,UAAU,QAAS,MAAK,QAAQ,KAAK,MAAM;aACzE,OAAO,qBAAqB,WACrC,MAAK,MAAM,OAAO,QAAQ;GACxB,MAAM,OAAO,aAAa;GAC1B,MAAM,OAAO,KAAK,QAAQ;AAC1B,OAAI,SAAS,QAAS,SAAS,QAAQ,OAAO,SAAS,SAAW,kBAAiB,KAAK,MAAM,KAAK,KAAK;;;CAK9G,CAAC,qBAAqB,WAAiC;AACrD,SAAO,SAAS,wBAAwB;;CAG1C,OAAO,QAAc,QAAuB;AAC1C,MAAI,CAAC,KAAK,qBAAqB;AAC7B,QAAK,sBAAsB;AAC3B,OAAI,KAAK,YAAY,kBAAkB,UAAU,QAAS,MAAK,QAAQ,KAAK,MAAM;;EAEpF,IAAI,OAAmB,KAAK,qBAAqB,KAAK,cAAc;AACpE,MAAI,QAAQ,KAAM,QAAO,SAAS,cAAc,GAAG;AACnD,MAAI,MAAM,QAAQ,KAAK,EAAE;GACvB,MAAM,OAAO,SAAS,wBAAwB;AAC9C,QAAK,MAAM,KAAK,MAAM;AACpB,QAAI,KAAK,KAAM;AACf,QAAI,MAAM,QAAQ,OAAO,MAAM,YAAY,OAAQ,EAAW,aAAa,SAAU,MAAK,YAAY,EAAU;QAC3G,MAAK,YAAY,SAAS,eAAe,OAAO,EAAE,CAAC,CAAC;;AAE3D,UAAO;aACE,EAAE,SAAS,QAAQ,OAAO,SAAS,YAAY,OAAQ,KAAc,aAAa,UAC3F,QAAO,SAAS,eAAe,OAAO,KAAK,CAAC;EAO9C,MAAM,UAAU;AAChB,SAAO,YAAY,QAAQ;AAC3B,MAAI,QAAQ,aAAa,GACvB,MAAK,eAAiB,OAAmB,oBAA2C;WAC3E,QAAQ,aAAa,EAC9B,MAAK,eAAe;EAEtB,MAAM,KAAK,KAAK;AAChB,MAAI,GAAK,IAAuD,qBAAqB;AACrF,OAAK,WAAW;AAChB,OAAK,eAAe;;CAGtB,gBAAsB;CAItB,QAAQ,QAAkB;CAI1B,UAAgB;AACd,OAAK,cAAc,SAAS;EAC5B,MAAM,IAAI,KAAK;AACf,MAAI,KAAK,EAAE,WAAY,GAAE,WAAW,YAAY,EAAE;AAClD,OAAK,eAAe;;CAGtB,EAAE,KAA6B;EAC7B,MAAM,IAAI,KAAK;AACf,SAAO,IAAI,EAAE,cAAc,IAAI,GAAG;;CAGpC,GAAG,KAAwB;EACzB,MAAM,IAAI,KAAK;AACf,SAAO,IAAI,MAAM,KAAK,EAAE,iBAAiB,IAAI,CAAC,GAAG,EAAE"}