@gravionlabs/helix-core 22.1.1 → 22.1.3

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 (820) hide show
  1. package/fesm2022/gravionlabs-helix-core-accordion.mjs +994 -541
  2. package/fesm2022/gravionlabs-helix-core-accordion.mjs.map +1 -1
  3. package/fesm2022/gravionlabs-helix-core-animateonscroll.mjs +265 -166
  4. package/fesm2022/gravionlabs-helix-core-animateonscroll.mjs.map +1 -1
  5. package/fesm2022/gravionlabs-helix-core-api.mjs +926 -836
  6. package/fesm2022/gravionlabs-helix-core-api.mjs.map +1 -1
  7. package/fesm2022/gravionlabs-helix-core-autocomplete.mjs +2603 -1611
  8. package/fesm2022/gravionlabs-helix-core-autocomplete.mjs.map +1 -1
  9. package/fesm2022/gravionlabs-helix-core-autofocus.mjs +115 -79
  10. package/fesm2022/gravionlabs-helix-core-autofocus.mjs.map +1 -1
  11. package/fesm2022/gravionlabs-helix-core-avatar.mjs +356 -180
  12. package/fesm2022/gravionlabs-helix-core-avatar.mjs.map +1 -1
  13. package/fesm2022/gravionlabs-helix-core-avatargroup.mjs +200 -84
  14. package/fesm2022/gravionlabs-helix-core-avatargroup.mjs.map +1 -1
  15. package/fesm2022/gravionlabs-helix-core-badge.mjs +671 -390
  16. package/fesm2022/gravionlabs-helix-core-badge.mjs.map +1 -1
  17. package/fesm2022/gravionlabs-helix-core-base.mjs +113 -103
  18. package/fesm2022/gravionlabs-helix-core-base.mjs.map +1 -1
  19. package/fesm2022/gravionlabs-helix-core-basecomponent.mjs +498 -444
  20. package/fesm2022/gravionlabs-helix-core-basecomponent.mjs.map +1 -1
  21. package/fesm2022/gravionlabs-helix-core-baseeditableholder.mjs +131 -69
  22. package/fesm2022/gravionlabs-helix-core-baseeditableholder.mjs.map +1 -1
  23. package/fesm2022/gravionlabs-helix-core-baseinput.mjs +210 -94
  24. package/fesm2022/gravionlabs-helix-core-baseinput.mjs.map +1 -1
  25. package/fesm2022/gravionlabs-helix-core-basemodelholder.mjs +39 -26
  26. package/fesm2022/gravionlabs-helix-core-basemodelholder.mjs.map +1 -1
  27. package/fesm2022/gravionlabs-helix-core-bind.mjs +136 -98
  28. package/fesm2022/gravionlabs-helix-core-bind.mjs.map +1 -1
  29. package/fesm2022/gravionlabs-helix-core-blockui.mjs +390 -224
  30. package/fesm2022/gravionlabs-helix-core-blockui.mjs.map +1 -1
  31. package/fesm2022/gravionlabs-helix-core-breadcrumb.mjs +473 -212
  32. package/fesm2022/gravionlabs-helix-core-breadcrumb.mjs.map +1 -1
  33. package/fesm2022/gravionlabs-helix-core-button.mjs +1739 -825
  34. package/fesm2022/gravionlabs-helix-core-button.mjs.map +1 -1
  35. package/fesm2022/gravionlabs-helix-core-buttongroup.mjs +116 -64
  36. package/fesm2022/gravionlabs-helix-core-buttongroup.mjs.map +1 -1
  37. package/fesm2022/gravionlabs-helix-core-card.mjs +454 -205
  38. package/fesm2022/gravionlabs-helix-core-card.mjs.map +1 -1
  39. package/fesm2022/gravionlabs-helix-core-carousel.mjs +1238 -898
  40. package/fesm2022/gravionlabs-helix-core-carousel.mjs.map +1 -1
  41. package/fesm2022/gravionlabs-helix-core-cascadeselect.mjs +2373 -1337
  42. package/fesm2022/gravionlabs-helix-core-cascadeselect.mjs.map +1 -1
  43. package/fesm2022/gravionlabs-helix-core-chart.mjs +407 -214
  44. package/fesm2022/gravionlabs-helix-core-chart.mjs.map +1 -1
  45. package/fesm2022/gravionlabs-helix-core-checkbox.mjs +704 -346
  46. package/fesm2022/gravionlabs-helix-core-checkbox.mjs.map +1 -1
  47. package/fesm2022/gravionlabs-helix-core-chip.mjs +489 -251
  48. package/fesm2022/gravionlabs-helix-core-chip.mjs.map +1 -1
  49. package/fesm2022/gravionlabs-helix-core-classnames.mjs +95 -48
  50. package/fesm2022/gravionlabs-helix-core-classnames.mjs.map +1 -1
  51. package/fesm2022/gravionlabs-helix-core-colorpicker.mjs +975 -667
  52. package/fesm2022/gravionlabs-helix-core-colorpicker.mjs.map +1 -1
  53. package/fesm2022/gravionlabs-helix-core-config.mjs +395 -306
  54. package/fesm2022/gravionlabs-helix-core-config.mjs.map +1 -1
  55. package/fesm2022/gravionlabs-helix-core-confirmdialog.mjs +1222 -546
  56. package/fesm2022/gravionlabs-helix-core-confirmdialog.mjs.map +1 -1
  57. package/fesm2022/gravionlabs-helix-core-confirmpopup.mjs +878 -524
  58. package/fesm2022/gravionlabs-helix-core-confirmpopup.mjs.map +1 -1
  59. package/fesm2022/gravionlabs-helix-core-contextmenu.mjs +1917 -1031
  60. package/fesm2022/gravionlabs-helix-core-contextmenu.mjs.map +1 -1
  61. package/fesm2022/gravionlabs-helix-core-dataview.mjs +1075 -522
  62. package/fesm2022/gravionlabs-helix-core-dataview.mjs.map +1 -1
  63. package/fesm2022/gravionlabs-helix-core-datepicker.mjs +3797 -3313
  64. package/fesm2022/gravionlabs-helix-core-datepicker.mjs.map +1 -1
  65. package/fesm2022/gravionlabs-helix-core-dialog.mjs +1852 -1047
  66. package/fesm2022/gravionlabs-helix-core-dialog.mjs.map +1 -1
  67. package/fesm2022/gravionlabs-helix-core-divider.mjs +288 -136
  68. package/fesm2022/gravionlabs-helix-core-divider.mjs.map +1 -1
  69. package/fesm2022/gravionlabs-helix-core-dock.mjs +655 -387
  70. package/fesm2022/gravionlabs-helix-core-dock.mjs.map +1 -1
  71. package/fesm2022/gravionlabs-helix-core-dom.mjs +589 -760
  72. package/fesm2022/gravionlabs-helix-core-dom.mjs.map +1 -1
  73. package/fesm2022/gravionlabs-helix-core-dragdrop.mjs +457 -302
  74. package/fesm2022/gravionlabs-helix-core-dragdrop.mjs.map +1 -1
  75. package/fesm2022/gravionlabs-helix-core-drawer.mjs +986 -507
  76. package/fesm2022/gravionlabs-helix-core-drawer.mjs.map +1 -1
  77. package/fesm2022/gravionlabs-helix-core-dynamicdialog.mjs +849 -923
  78. package/fesm2022/gravionlabs-helix-core-dynamicdialog.mjs.map +1 -1
  79. package/fesm2022/gravionlabs-helix-core-editor.mjs +578 -383
  80. package/fesm2022/gravionlabs-helix-core-editor.mjs.map +1 -1
  81. package/fesm2022/gravionlabs-helix-core-fieldset.mjs +593 -280
  82. package/fesm2022/gravionlabs-helix-core-fieldset.mjs.map +1 -1
  83. package/fesm2022/gravionlabs-helix-core-fileupload.mjs +1882 -994
  84. package/fesm2022/gravionlabs-helix-core-fileupload.mjs.map +1 -1
  85. package/fesm2022/gravionlabs-helix-core-firsterror.mjs +41 -23
  86. package/fesm2022/gravionlabs-helix-core-firsterror.mjs.map +1 -1
  87. package/fesm2022/gravionlabs-helix-core-floatlabel.mjs +197 -94
  88. package/fesm2022/gravionlabs-helix-core-floatlabel.mjs.map +1 -1
  89. package/fesm2022/gravionlabs-helix-core-fluid.mjs +149 -74
  90. package/fesm2022/gravionlabs-helix-core-fluid.mjs.map +1 -1
  91. package/fesm2022/gravionlabs-helix-core-focustrap.mjs +141 -104
  92. package/fesm2022/gravionlabs-helix-core-focustrap.mjs.map +1 -1
  93. package/fesm2022/gravionlabs-helix-core-galleria.mjs +2800 -1449
  94. package/fesm2022/gravionlabs-helix-core-galleria.mjs.map +1 -1
  95. package/fesm2022/gravionlabs-helix-core-iconfield.mjs +214 -98
  96. package/fesm2022/gravionlabs-helix-core-iconfield.mjs.map +1 -1
  97. package/fesm2022/gravionlabs-helix-core-icons-angledoubledown.mjs +43 -24
  98. package/fesm2022/gravionlabs-helix-core-icons-angledoubledown.mjs.map +1 -1
  99. package/fesm2022/gravionlabs-helix-core-icons-angledoubleleft.mjs +43 -24
  100. package/fesm2022/gravionlabs-helix-core-icons-angledoubleleft.mjs.map +1 -1
  101. package/fesm2022/gravionlabs-helix-core-icons-angledoubleright.mjs +43 -24
  102. package/fesm2022/gravionlabs-helix-core-icons-angledoubleright.mjs.map +1 -1
  103. package/fesm2022/gravionlabs-helix-core-icons-angledoubleup.mjs +43 -24
  104. package/fesm2022/gravionlabs-helix-core-icons-angledoubleup.mjs.map +1 -1
  105. package/fesm2022/gravionlabs-helix-core-icons-angledown.mjs +43 -24
  106. package/fesm2022/gravionlabs-helix-core-icons-angledown.mjs.map +1 -1
  107. package/fesm2022/gravionlabs-helix-core-icons-angleleft.mjs +43 -24
  108. package/fesm2022/gravionlabs-helix-core-icons-angleleft.mjs.map +1 -1
  109. package/fesm2022/gravionlabs-helix-core-icons-angleright.mjs +43 -24
  110. package/fesm2022/gravionlabs-helix-core-icons-angleright.mjs.map +1 -1
  111. package/fesm2022/gravionlabs-helix-core-icons-angleup.mjs +43 -24
  112. package/fesm2022/gravionlabs-helix-core-icons-angleup.mjs.map +1 -1
  113. package/fesm2022/gravionlabs-helix-core-icons-arrowdown.mjs +48 -29
  114. package/fesm2022/gravionlabs-helix-core-icons-arrowdown.mjs.map +1 -1
  115. package/fesm2022/gravionlabs-helix-core-icons-arrowdownleft.mjs +43 -24
  116. package/fesm2022/gravionlabs-helix-core-icons-arrowdownleft.mjs.map +1 -1
  117. package/fesm2022/gravionlabs-helix-core-icons-arrowdownright.mjs +43 -24
  118. package/fesm2022/gravionlabs-helix-core-icons-arrowdownright.mjs.map +1 -1
  119. package/fesm2022/gravionlabs-helix-core-icons-arrowleft.mjs +48 -29
  120. package/fesm2022/gravionlabs-helix-core-icons-arrowleft.mjs.map +1 -1
  121. package/fesm2022/gravionlabs-helix-core-icons-arrowright.mjs +43 -24
  122. package/fesm2022/gravionlabs-helix-core-icons-arrowright.mjs.map +1 -1
  123. package/fesm2022/gravionlabs-helix-core-icons-arrowup.mjs +48 -29
  124. package/fesm2022/gravionlabs-helix-core-icons-arrowup.mjs.map +1 -1
  125. package/fesm2022/gravionlabs-helix-core-icons-ban.mjs +48 -29
  126. package/fesm2022/gravionlabs-helix-core-icons-ban.mjs.map +1 -1
  127. package/fesm2022/gravionlabs-helix-core-icons-bars.mjs +43 -24
  128. package/fesm2022/gravionlabs-helix-core-icons-bars.mjs.map +1 -1
  129. package/fesm2022/gravionlabs-helix-core-icons-baseicon.mjs +120 -64
  130. package/fesm2022/gravionlabs-helix-core-icons-baseicon.mjs.map +1 -1
  131. package/fesm2022/gravionlabs-helix-core-icons-blank.mjs +42 -23
  132. package/fesm2022/gravionlabs-helix-core-icons-blank.mjs.map +1 -1
  133. package/fesm2022/gravionlabs-helix-core-icons-calendar.mjs +43 -24
  134. package/fesm2022/gravionlabs-helix-core-icons-calendar.mjs.map +1 -1
  135. package/fesm2022/gravionlabs-helix-core-icons-caretleft.mjs +43 -24
  136. package/fesm2022/gravionlabs-helix-core-icons-caretleft.mjs.map +1 -1
  137. package/fesm2022/gravionlabs-helix-core-icons-caretright.mjs +43 -24
  138. package/fesm2022/gravionlabs-helix-core-icons-caretright.mjs.map +1 -1
  139. package/fesm2022/gravionlabs-helix-core-icons-check.mjs +43 -24
  140. package/fesm2022/gravionlabs-helix-core-icons-check.mjs.map +1 -1
  141. package/fesm2022/gravionlabs-helix-core-icons-chevrondown.mjs +43 -24
  142. package/fesm2022/gravionlabs-helix-core-icons-chevrondown.mjs.map +1 -1
  143. package/fesm2022/gravionlabs-helix-core-icons-chevronleft.mjs +43 -24
  144. package/fesm2022/gravionlabs-helix-core-icons-chevronleft.mjs.map +1 -1
  145. package/fesm2022/gravionlabs-helix-core-icons-chevronright.mjs +43 -24
  146. package/fesm2022/gravionlabs-helix-core-icons-chevronright.mjs.map +1 -1
  147. package/fesm2022/gravionlabs-helix-core-icons-chevronup.mjs +43 -24
  148. package/fesm2022/gravionlabs-helix-core-icons-chevronup.mjs.map +1 -1
  149. package/fesm2022/gravionlabs-helix-core-icons-exclamationtriangle.mjs +48 -29
  150. package/fesm2022/gravionlabs-helix-core-icons-exclamationtriangle.mjs.map +1 -1
  151. package/fesm2022/gravionlabs-helix-core-icons-eye.mjs +43 -24
  152. package/fesm2022/gravionlabs-helix-core-icons-eye.mjs.map +1 -1
  153. package/fesm2022/gravionlabs-helix-core-icons-eyeslash.mjs +48 -29
  154. package/fesm2022/gravionlabs-helix-core-icons-eyeslash.mjs.map +1 -1
  155. package/fesm2022/gravionlabs-helix-core-icons-filter.mjs +48 -29
  156. package/fesm2022/gravionlabs-helix-core-icons-filter.mjs.map +1 -1
  157. package/fesm2022/gravionlabs-helix-core-icons-filterfill.mjs +43 -24
  158. package/fesm2022/gravionlabs-helix-core-icons-filterfill.mjs.map +1 -1
  159. package/fesm2022/gravionlabs-helix-core-icons-filterslash.mjs +48 -29
  160. package/fesm2022/gravionlabs-helix-core-icons-filterslash.mjs.map +1 -1
  161. package/fesm2022/gravionlabs-helix-core-icons-home.mjs +48 -29
  162. package/fesm2022/gravionlabs-helix-core-icons-home.mjs.map +1 -1
  163. package/fesm2022/gravionlabs-helix-core-icons-infocircle.mjs +48 -29
  164. package/fesm2022/gravionlabs-helix-core-icons-infocircle.mjs.map +1 -1
  165. package/fesm2022/gravionlabs-helix-core-icons-minus.mjs +43 -24
  166. package/fesm2022/gravionlabs-helix-core-icons-minus.mjs.map +1 -1
  167. package/fesm2022/gravionlabs-helix-core-icons-pencil.mjs +48 -29
  168. package/fesm2022/gravionlabs-helix-core-icons-pencil.mjs.map +1 -1
  169. package/fesm2022/gravionlabs-helix-core-icons-plus.mjs +48 -29
  170. package/fesm2022/gravionlabs-helix-core-icons-plus.mjs.map +1 -1
  171. package/fesm2022/gravionlabs-helix-core-icons-refresh.mjs +48 -29
  172. package/fesm2022/gravionlabs-helix-core-icons-refresh.mjs.map +1 -1
  173. package/fesm2022/gravionlabs-helix-core-icons-search.mjs +48 -29
  174. package/fesm2022/gravionlabs-helix-core-icons-search.mjs.map +1 -1
  175. package/fesm2022/gravionlabs-helix-core-icons-searchminus.mjs +48 -29
  176. package/fesm2022/gravionlabs-helix-core-icons-searchminus.mjs.map +1 -1
  177. package/fesm2022/gravionlabs-helix-core-icons-searchplus.mjs +48 -29
  178. package/fesm2022/gravionlabs-helix-core-icons-searchplus.mjs.map +1 -1
  179. package/fesm2022/gravionlabs-helix-core-icons-sortalt.mjs +48 -29
  180. package/fesm2022/gravionlabs-helix-core-icons-sortalt.mjs.map +1 -1
  181. package/fesm2022/gravionlabs-helix-core-icons-sortamountdown.mjs +48 -29
  182. package/fesm2022/gravionlabs-helix-core-icons-sortamountdown.mjs.map +1 -1
  183. package/fesm2022/gravionlabs-helix-core-icons-sortamountupalt.mjs +48 -29
  184. package/fesm2022/gravionlabs-helix-core-icons-sortamountupalt.mjs.map +1 -1
  185. package/fesm2022/gravionlabs-helix-core-icons-spinner.mjs +48 -29
  186. package/fesm2022/gravionlabs-helix-core-icons-spinner.mjs.map +1 -1
  187. package/fesm2022/gravionlabs-helix-core-icons-star.mjs +48 -29
  188. package/fesm2022/gravionlabs-helix-core-icons-star.mjs.map +1 -1
  189. package/fesm2022/gravionlabs-helix-core-icons-starfill.mjs +48 -29
  190. package/fesm2022/gravionlabs-helix-core-icons-starfill.mjs.map +1 -1
  191. package/fesm2022/gravionlabs-helix-core-icons-thlarge.mjs +48 -29
  192. package/fesm2022/gravionlabs-helix-core-icons-thlarge.mjs.map +1 -1
  193. package/fesm2022/gravionlabs-helix-core-icons-times.mjs +43 -24
  194. package/fesm2022/gravionlabs-helix-core-icons-times.mjs.map +1 -1
  195. package/fesm2022/gravionlabs-helix-core-icons-timescircle.mjs +48 -29
  196. package/fesm2022/gravionlabs-helix-core-icons-timescircle.mjs.map +1 -1
  197. package/fesm2022/gravionlabs-helix-core-icons-trash.mjs +48 -29
  198. package/fesm2022/gravionlabs-helix-core-icons-trash.mjs.map +1 -1
  199. package/fesm2022/gravionlabs-helix-core-icons-undo.mjs +48 -29
  200. package/fesm2022/gravionlabs-helix-core-icons-undo.mjs.map +1 -1
  201. package/fesm2022/gravionlabs-helix-core-icons-upload.mjs +48 -29
  202. package/fesm2022/gravionlabs-helix-core-icons-upload.mjs.map +1 -1
  203. package/fesm2022/gravionlabs-helix-core-icons-windowmaximize.mjs +48 -29
  204. package/fesm2022/gravionlabs-helix-core-icons-windowmaximize.mjs.map +1 -1
  205. package/fesm2022/gravionlabs-helix-core-icons-windowminimize.mjs +48 -29
  206. package/fesm2022/gravionlabs-helix-core-icons-windowminimize.mjs.map +1 -1
  207. package/fesm2022/gravionlabs-helix-core-icons.mjs +53 -63
  208. package/fesm2022/gravionlabs-helix-core-iftalabel.mjs +175 -81
  209. package/fesm2022/gravionlabs-helix-core-iftalabel.mjs.map +1 -1
  210. package/fesm2022/gravionlabs-helix-core-image.mjs +1089 -552
  211. package/fesm2022/gravionlabs-helix-core-image.mjs.map +1 -1
  212. package/fesm2022/gravionlabs-helix-core-imagecompare.mjs +348 -165
  213. package/fesm2022/gravionlabs-helix-core-imagecompare.mjs.map +1 -1
  214. package/fesm2022/gravionlabs-helix-core-inplace.mjs +591 -249
  215. package/fesm2022/gravionlabs-helix-core-inplace.mjs.map +1 -1
  216. package/fesm2022/gravionlabs-helix-core-inputgroup.mjs +175 -91
  217. package/fesm2022/gravionlabs-helix-core-inputgroup.mjs.map +1 -1
  218. package/fesm2022/gravionlabs-helix-core-inputgroupaddon.mjs +196 -73
  219. package/fesm2022/gravionlabs-helix-core-inputgroupaddon.mjs.map +1 -1
  220. package/fesm2022/gravionlabs-helix-core-inputicon.mjs +207 -70
  221. package/fesm2022/gravionlabs-helix-core-inputicon.mjs.map +1 -1
  222. package/fesm2022/gravionlabs-helix-core-inputmask.mjs +1581 -1330
  223. package/fesm2022/gravionlabs-helix-core-inputmask.mjs.map +1 -1
  224. package/fesm2022/gravionlabs-helix-core-inputnumber.mjs +1696 -1294
  225. package/fesm2022/gravionlabs-helix-core-inputnumber.mjs.map +1 -1
  226. package/fesm2022/gravionlabs-helix-core-inputotp.mjs +576 -363
  227. package/fesm2022/gravionlabs-helix-core-inputotp.mjs.map +1 -1
  228. package/fesm2022/gravionlabs-helix-core-inputtext.mjs +344 -183
  229. package/fesm2022/gravionlabs-helix-core-inputtext.mjs.map +1 -1
  230. package/fesm2022/gravionlabs-helix-core-keyfilter.mjs +291 -252
  231. package/fesm2022/gravionlabs-helix-core-keyfilter.mjs.map +1 -1
  232. package/fesm2022/gravionlabs-helix-core-knob.mjs +642 -396
  233. package/fesm2022/gravionlabs-helix-core-knob.mjs.map +1 -1
  234. package/fesm2022/gravionlabs-helix-core-listbox.mjs +2354 -1401
  235. package/fesm2022/gravionlabs-helix-core-listbox.mjs.map +1 -1
  236. package/fesm2022/gravionlabs-helix-core-megamenu.mjs +1913 -1052
  237. package/fesm2022/gravionlabs-helix-core-megamenu.mjs.map +1 -1
  238. package/fesm2022/gravionlabs-helix-core-menu.mjs +1392 -767
  239. package/fesm2022/gravionlabs-helix-core-menu.mjs.map +1 -1
  240. package/fesm2022/gravionlabs-helix-core-menubar.mjs +1857 -984
  241. package/fesm2022/gravionlabs-helix-core-menubar.mjs.map +1 -1
  242. package/fesm2022/gravionlabs-helix-core-message.mjs +605 -288
  243. package/fesm2022/gravionlabs-helix-core-message.mjs.map +1 -1
  244. package/fesm2022/gravionlabs-helix-core-metergroup.mjs +719 -323
  245. package/fesm2022/gravionlabs-helix-core-metergroup.mjs.map +1 -1
  246. package/fesm2022/gravionlabs-helix-core-motion.mjs +1178 -694
  247. package/fesm2022/gravionlabs-helix-core-motion.mjs.map +1 -1
  248. package/fesm2022/gravionlabs-helix-core-multiselect.mjs +3437 -1839
  249. package/fesm2022/gravionlabs-helix-core-multiselect.mjs.map +1 -1
  250. package/fesm2022/gravionlabs-helix-core-orderlist.mjs +1426 -753
  251. package/fesm2022/gravionlabs-helix-core-orderlist.mjs.map +1 -1
  252. package/fesm2022/gravionlabs-helix-core-organizationchart.mjs +755 -371
  253. package/fesm2022/gravionlabs-helix-core-organizationchart.mjs.map +1 -1
  254. package/fesm2022/gravionlabs-helix-core-overlay.mjs +984 -600
  255. package/fesm2022/gravionlabs-helix-core-overlay.mjs.map +1 -1
  256. package/fesm2022/gravionlabs-helix-core-overlaybadge.mjs +310 -107
  257. package/fesm2022/gravionlabs-helix-core-overlaybadge.mjs.map +1 -1
  258. package/fesm2022/gravionlabs-helix-core-paginator.mjs +1076 -564
  259. package/fesm2022/gravionlabs-helix-core-paginator.mjs.map +1 -1
  260. package/fesm2022/gravionlabs-helix-core-panel.mjs +759 -364
  261. package/fesm2022/gravionlabs-helix-core-panel.mjs.map +1 -1
  262. package/fesm2022/gravionlabs-helix-core-panelmenu.mjs +1909 -888
  263. package/fesm2022/gravionlabs-helix-core-panelmenu.mjs.map +1 -1
  264. package/fesm2022/gravionlabs-helix-core-passthrough.mjs +10 -18
  265. package/fesm2022/gravionlabs-helix-core-passthrough.mjs.map +1 -1
  266. package/fesm2022/gravionlabs-helix-core-password.mjs +1624 -894
  267. package/fesm2022/gravionlabs-helix-core-password.mjs.map +1 -1
  268. package/fesm2022/gravionlabs-helix-core-picklist.mjs +2415 -1359
  269. package/fesm2022/gravionlabs-helix-core-picklist.mjs.map +1 -1
  270. package/fesm2022/gravionlabs-helix-core-popover.mjs +708 -442
  271. package/fesm2022/gravionlabs-helix-core-popover.mjs.map +1 -1
  272. package/fesm2022/gravionlabs-helix-core-progressbar.mjs +380 -170
  273. package/fesm2022/gravionlabs-helix-core-progressbar.mjs.map +1 -1
  274. package/fesm2022/gravionlabs-helix-core-progressspinner.mjs +276 -121
  275. package/fesm2022/gravionlabs-helix-core-progressspinner.mjs.map +1 -1
  276. package/fesm2022/gravionlabs-helix-core-radiobutton.mjs +525 -291
  277. package/fesm2022/gravionlabs-helix-core-radiobutton.mjs.map +1 -1
  278. package/fesm2022/gravionlabs-helix-core-rating.mjs +529 -286
  279. package/fesm2022/gravionlabs-helix-core-rating.mjs.map +1 -1
  280. package/fesm2022/gravionlabs-helix-core-ripple.mjs +194 -175
  281. package/fesm2022/gravionlabs-helix-core-ripple.mjs.map +1 -1
  282. package/fesm2022/gravionlabs-helix-core-scroller.mjs +1384 -977
  283. package/fesm2022/gravionlabs-helix-core-scroller.mjs.map +1 -1
  284. package/fesm2022/gravionlabs-helix-core-scrollpanel.mjs +605 -458
  285. package/fesm2022/gravionlabs-helix-core-scrollpanel.mjs.map +1 -1
  286. package/fesm2022/gravionlabs-helix-core-scrolltop.mjs +565 -261
  287. package/fesm2022/gravionlabs-helix-core-scrolltop.mjs.map +1 -1
  288. package/fesm2022/gravionlabs-helix-core-select.mjs +2959 -1644
  289. package/fesm2022/gravionlabs-helix-core-select.mjs.map +1 -1
  290. package/fesm2022/gravionlabs-helix-core-selectbutton.mjs +644 -335
  291. package/fesm2022/gravionlabs-helix-core-selectbutton.mjs.map +1 -1
  292. package/fesm2022/gravionlabs-helix-core-skeleton.mjs +315 -160
  293. package/fesm2022/gravionlabs-helix-core-skeleton.mjs.map +1 -1
  294. package/fesm2022/gravionlabs-helix-core-slider.mjs +839 -630
  295. package/fesm2022/gravionlabs-helix-core-slider.mjs.map +1 -1
  296. package/fesm2022/gravionlabs-helix-core-speeddial.mjs +1183 -700
  297. package/fesm2022/gravionlabs-helix-core-speeddial.mjs.map +1 -1
  298. package/fesm2022/gravionlabs-helix-core-splitbutton.mjs +977 -375
  299. package/fesm2022/gravionlabs-helix-core-splitbutton.mjs.map +1 -1
  300. package/fesm2022/gravionlabs-helix-core-splitter.mjs +737 -509
  301. package/fesm2022/gravionlabs-helix-core-splitter.mjs.map +1 -1
  302. package/fesm2022/gravionlabs-helix-core-stepper.mjs +1397 -628
  303. package/fesm2022/gravionlabs-helix-core-stepper.mjs.map +1 -1
  304. package/fesm2022/gravionlabs-helix-core-steps.mjs +457 -272
  305. package/fesm2022/gravionlabs-helix-core-steps.mjs.map +1 -1
  306. package/fesm2022/gravionlabs-helix-core-styleclass.mjs +466 -344
  307. package/fesm2022/gravionlabs-helix-core-styleclass.mjs.map +1 -1
  308. package/fesm2022/gravionlabs-helix-core-table.mjs +9728 -5590
  309. package/fesm2022/gravionlabs-helix-core-table.mjs.map +1 -1
  310. package/fesm2022/gravionlabs-helix-core-tabs.mjs +1350 -735
  311. package/fesm2022/gravionlabs-helix-core-tabs.mjs.map +1 -1
  312. package/fesm2022/gravionlabs-helix-core-tag.mjs +343 -154
  313. package/fesm2022/gravionlabs-helix-core-tag.mjs.map +1 -1
  314. package/fesm2022/gravionlabs-helix-core-terminal.mjs +384 -214
  315. package/fesm2022/gravionlabs-helix-core-terminal.mjs.map +1 -1
  316. package/fesm2022/gravionlabs-helix-core-textarea.mjs +347 -209
  317. package/fesm2022/gravionlabs-helix-core-textarea.mjs.map +1 -1
  318. package/fesm2022/gravionlabs-helix-core-themes-aura.mjs +4846 -5618
  319. package/fesm2022/gravionlabs-helix-core-themes-aura.mjs.map +1 -1
  320. package/fesm2022/gravionlabs-helix-core-themes-lara.mjs +4961 -5809
  321. package/fesm2022/gravionlabs-helix-core-themes-lara.mjs.map +1 -1
  322. package/fesm2022/gravionlabs-helix-core-themes-nora.mjs +4780 -5567
  323. package/fesm2022/gravionlabs-helix-core-themes-nora.mjs.map +1 -1
  324. package/fesm2022/gravionlabs-helix-core-themes-types.mjs +0 -700
  325. package/fesm2022/gravionlabs-helix-core-themes.mjs +4 -9
  326. package/fesm2022/gravionlabs-helix-core-themes.mjs.map +1 -1
  327. package/fesm2022/gravionlabs-helix-core-tieredmenu.mjs +1967 -1048
  328. package/fesm2022/gravionlabs-helix-core-tieredmenu.mjs.map +1 -1
  329. package/fesm2022/gravionlabs-helix-core-timeline.mjs +370 -185
  330. package/fesm2022/gravionlabs-helix-core-timeline.mjs.map +1 -1
  331. package/fesm2022/gravionlabs-helix-core-toast.mjs +1083 -526
  332. package/fesm2022/gravionlabs-helix-core-toast.mjs.map +1 -1
  333. package/fesm2022/gravionlabs-helix-core-togglebutton.mjs +609 -315
  334. package/fesm2022/gravionlabs-helix-core-togglebutton.mjs.map +1 -1
  335. package/fesm2022/gravionlabs-helix-core-toggleswitch.mjs +504 -246
  336. package/fesm2022/gravionlabs-helix-core-toggleswitch.mjs.map +1 -1
  337. package/fesm2022/gravionlabs-helix-core-toolbar.mjs +350 -149
  338. package/fesm2022/gravionlabs-helix-core-toolbar.mjs.map +1 -1
  339. package/fesm2022/gravionlabs-helix-core-tooltip.mjs +1035 -795
  340. package/fesm2022/gravionlabs-helix-core-tooltip.mjs.map +1 -1
  341. package/fesm2022/gravionlabs-helix-core-tree.mjs +2673 -1668
  342. package/fesm2022/gravionlabs-helix-core-tree.mjs.map +1 -1
  343. package/fesm2022/gravionlabs-helix-core-treeselect.mjs +1773 -976
  344. package/fesm2022/gravionlabs-helix-core-treeselect.mjs.map +1 -1
  345. package/fesm2022/gravionlabs-helix-core-treetable.mjs +5963 -3647
  346. package/fesm2022/gravionlabs-helix-core-treetable.mjs.map +1 -1
  347. package/fesm2022/gravionlabs-helix-core-ts-helpers.mjs +0 -4
  348. package/fesm2022/gravionlabs-helix-core-types-accordion.mjs +0 -4
  349. package/fesm2022/gravionlabs-helix-core-types-autocomplete.mjs +0 -4
  350. package/fesm2022/gravionlabs-helix-core-types-avatar.mjs +0 -4
  351. package/fesm2022/gravionlabs-helix-core-types-avatargroup.mjs +0 -4
  352. package/fesm2022/gravionlabs-helix-core-types-badge.mjs +0 -4
  353. package/fesm2022/gravionlabs-helix-core-types-blockui.mjs +0 -4
  354. package/fesm2022/gravionlabs-helix-core-types-breadcrumb.mjs +0 -4
  355. package/fesm2022/gravionlabs-helix-core-types-button.mjs +0 -4
  356. package/fesm2022/gravionlabs-helix-core-types-card.mjs +0 -4
  357. package/fesm2022/gravionlabs-helix-core-types-carousel.mjs +0 -4
  358. package/fesm2022/gravionlabs-helix-core-types-cascadeselect.mjs +0 -4
  359. package/fesm2022/gravionlabs-helix-core-types-chart.mjs +0 -4
  360. package/fesm2022/gravionlabs-helix-core-types-checkbox.mjs +0 -4
  361. package/fesm2022/gravionlabs-helix-core-types-chip.mjs +0 -4
  362. package/fesm2022/gravionlabs-helix-core-types-colorpicker.mjs +0 -4
  363. package/fesm2022/gravionlabs-helix-core-types-confirmdialog.mjs +0 -4
  364. package/fesm2022/gravionlabs-helix-core-types-confirmpopup.mjs +0 -4
  365. package/fesm2022/gravionlabs-helix-core-types-contextmenu.mjs +0 -4
  366. package/fesm2022/gravionlabs-helix-core-types-dataview.mjs +0 -4
  367. package/fesm2022/gravionlabs-helix-core-types-datepicker.mjs +0 -4
  368. package/fesm2022/gravionlabs-helix-core-types-dialog.mjs +0 -4
  369. package/fesm2022/gravionlabs-helix-core-types-divider.mjs +0 -4
  370. package/fesm2022/gravionlabs-helix-core-types-dock.mjs +0 -4
  371. package/fesm2022/gravionlabs-helix-core-types-drawer.mjs +0 -4
  372. package/fesm2022/gravionlabs-helix-core-types-editor.mjs +0 -4
  373. package/fesm2022/gravionlabs-helix-core-types-fieldset.mjs +0 -4
  374. package/fesm2022/gravionlabs-helix-core-types-fileupload.mjs +0 -4
  375. package/fesm2022/gravionlabs-helix-core-types-floatlabel.mjs +0 -4
  376. package/fesm2022/gravionlabs-helix-core-types-fluid.mjs +0 -4
  377. package/fesm2022/gravionlabs-helix-core-types-galleria.mjs +0 -4
  378. package/fesm2022/gravionlabs-helix-core-types-iconfield.mjs +0 -4
  379. package/fesm2022/gravionlabs-helix-core-types-iftalabel.mjs +0 -4
  380. package/fesm2022/gravionlabs-helix-core-types-image.mjs +0 -4
  381. package/fesm2022/gravionlabs-helix-core-types-imagecompare.mjs +0 -4
  382. package/fesm2022/gravionlabs-helix-core-types-inplace.mjs +0 -4
  383. package/fesm2022/gravionlabs-helix-core-types-inputgroup.mjs +0 -4
  384. package/fesm2022/gravionlabs-helix-core-types-inputgroupaddon.mjs +0 -4
  385. package/fesm2022/gravionlabs-helix-core-types-inputicon.mjs +0 -4
  386. package/fesm2022/gravionlabs-helix-core-types-inputmask.mjs +0 -4
  387. package/fesm2022/gravionlabs-helix-core-types-inputnumber.mjs +0 -4
  388. package/fesm2022/gravionlabs-helix-core-types-inputotp.mjs +0 -4
  389. package/fesm2022/gravionlabs-helix-core-types-inputtext.mjs +0 -4
  390. package/fesm2022/gravionlabs-helix-core-types-knob.mjs +0 -4
  391. package/fesm2022/gravionlabs-helix-core-types-listbox.mjs +0 -4
  392. package/fesm2022/gravionlabs-helix-core-types-megamenu.mjs +0 -4
  393. package/fesm2022/gravionlabs-helix-core-types-menu.mjs +0 -4
  394. package/fesm2022/gravionlabs-helix-core-types-menubar.mjs +0 -4
  395. package/fesm2022/gravionlabs-helix-core-types-message.mjs +0 -4
  396. package/fesm2022/gravionlabs-helix-core-types-metergroup.mjs +0 -4
  397. package/fesm2022/gravionlabs-helix-core-types-motion.mjs +0 -4
  398. package/fesm2022/gravionlabs-helix-core-types-multiselect.mjs +0 -4
  399. package/fesm2022/gravionlabs-helix-core-types-orderlist.mjs +0 -4
  400. package/fesm2022/gravionlabs-helix-core-types-organizationchart.mjs +0 -4
  401. package/fesm2022/gravionlabs-helix-core-types-overlay.mjs +0 -4
  402. package/fesm2022/gravionlabs-helix-core-types-overlaybadge.mjs +0 -4
  403. package/fesm2022/gravionlabs-helix-core-types-paginator.mjs +0 -4
  404. package/fesm2022/gravionlabs-helix-core-types-panel.mjs +0 -4
  405. package/fesm2022/gravionlabs-helix-core-types-panelmenu.mjs +0 -4
  406. package/fesm2022/gravionlabs-helix-core-types-password.mjs +0 -4
  407. package/fesm2022/gravionlabs-helix-core-types-picklist.mjs +0 -4
  408. package/fesm2022/gravionlabs-helix-core-types-popover.mjs +0 -4
  409. package/fesm2022/gravionlabs-helix-core-types-progressbar.mjs +0 -4
  410. package/fesm2022/gravionlabs-helix-core-types-progressspinner.mjs +0 -4
  411. package/fesm2022/gravionlabs-helix-core-types-radiobutton.mjs +0 -4
  412. package/fesm2022/gravionlabs-helix-core-types-rating.mjs +0 -4
  413. package/fesm2022/gravionlabs-helix-core-types-scroller.mjs +0 -4
  414. package/fesm2022/gravionlabs-helix-core-types-scrollpanel.mjs +0 -4
  415. package/fesm2022/gravionlabs-helix-core-types-scrolltop.mjs +0 -4
  416. package/fesm2022/gravionlabs-helix-core-types-select.mjs +0 -4
  417. package/fesm2022/gravionlabs-helix-core-types-selectbutton.mjs +0 -4
  418. package/fesm2022/gravionlabs-helix-core-types-skeleton.mjs +0 -4
  419. package/fesm2022/gravionlabs-helix-core-types-slider.mjs +0 -4
  420. package/fesm2022/gravionlabs-helix-core-types-speeddial.mjs +0 -4
  421. package/fesm2022/gravionlabs-helix-core-types-splitbutton.mjs +0 -4
  422. package/fesm2022/gravionlabs-helix-core-types-splitter.mjs +0 -4
  423. package/fesm2022/gravionlabs-helix-core-types-stepper.mjs +0 -4
  424. package/fesm2022/gravionlabs-helix-core-types-table.mjs +0 -4
  425. package/fesm2022/gravionlabs-helix-core-types-tabs.mjs +0 -4
  426. package/fesm2022/gravionlabs-helix-core-types-tag.mjs +0 -4
  427. package/fesm2022/gravionlabs-helix-core-types-terminal.mjs +0 -4
  428. package/fesm2022/gravionlabs-helix-core-types-textarea.mjs +0 -4
  429. package/fesm2022/gravionlabs-helix-core-types-tieredmenu.mjs +0 -4
  430. package/fesm2022/gravionlabs-helix-core-types-timeline.mjs +0 -4
  431. package/fesm2022/gravionlabs-helix-core-types-toast.mjs +0 -4
  432. package/fesm2022/gravionlabs-helix-core-types-togglebutton.mjs +0 -4
  433. package/fesm2022/gravionlabs-helix-core-types-toggleswitch.mjs +0 -4
  434. package/fesm2022/gravionlabs-helix-core-types-toolbar.mjs +0 -4
  435. package/fesm2022/gravionlabs-helix-core-types-tooltip.mjs +0 -4
  436. package/fesm2022/gravionlabs-helix-core-types-tree.mjs +0 -4
  437. package/fesm2022/gravionlabs-helix-core-types-treeselect.mjs +0 -4
  438. package/fesm2022/gravionlabs-helix-core-types-treetable.mjs +0 -4
  439. package/fesm2022/gravionlabs-helix-core-uix-motion.mjs +192 -282
  440. package/fesm2022/gravionlabs-helix-core-uix-motion.mjs.map +1 -1
  441. package/fesm2022/gravionlabs-helix-core-uix-styled.mjs +827 -813
  442. package/fesm2022/gravionlabs-helix-core-uix-styled.mjs.map +1 -1
  443. package/fesm2022/gravionlabs-helix-core-uix-utils.mjs +967 -1558
  444. package/fesm2022/gravionlabs-helix-core-uix-utils.mjs.map +1 -1
  445. package/fesm2022/gravionlabs-helix-core-usestyle.mjs +62 -52
  446. package/fesm2022/gravionlabs-helix-core-usestyle.mjs.map +1 -1
  447. package/fesm2022/gravionlabs-helix-core-utils.mjs +272 -366
  448. package/fesm2022/gravionlabs-helix-core-utils.mjs.map +1 -1
  449. package/fesm2022/gravionlabs-helix-core-validators.mjs +86 -93
  450. package/fesm2022/gravionlabs-helix-core-validators.mjs.map +1 -1
  451. package/fesm2022/gravionlabs-helix-core.mjs +1 -5
  452. package/fesm2022/gravionlabs-helix-core.mjs.map +1 -1
  453. package/package.json +1 -1
  454. package/types/gravionlabs-helix-core-accordion.d.ts +317 -246
  455. package/types/gravionlabs-helix-core-animateonscroll.d.ts +89 -61
  456. package/types/gravionlabs-helix-core-api.d.ts +1743 -1777
  457. package/types/gravionlabs-helix-core-autocomplete.d.ts +1070 -750
  458. package/types/gravionlabs-helix-core-autofocus.d.ts +29 -26
  459. package/types/gravionlabs-helix-core-avatar.d.ts +165 -123
  460. package/types/gravionlabs-helix-core-avatargroup.d.ts +58 -48
  461. package/types/gravionlabs-helix-core-badge.d.ts +243 -162
  462. package/types/gravionlabs-helix-core-base.d.ts +46 -49
  463. package/types/gravionlabs-helix-core-basecomponent.d.ts +187 -170
  464. package/types/gravionlabs-helix-core-baseeditableholder.d.ts +63 -45
  465. package/types/gravionlabs-helix-core-baseinput.d.ts +121 -73
  466. package/types/gravionlabs-helix-core-basemodelholder.d.ts +9 -12
  467. package/types/gravionlabs-helix-core-bind.d.ts +36 -33
  468. package/types/gravionlabs-helix-core-blockui.d.ts +114 -90
  469. package/types/gravionlabs-helix-core-breadcrumb.d.ts +158 -132
  470. package/types/gravionlabs-helix-core-button.d.ts +716 -443
  471. package/types/gravionlabs-helix-core-buttongroup.d.ts +28 -33
  472. package/types/gravionlabs-helix-core-card.d.ts +156 -136
  473. package/types/gravionlabs-helix-core-carousel.d.ts +461 -361
  474. package/types/gravionlabs-helix-core-cascadeselect.d.ts +880 -604
  475. package/types/gravionlabs-helix-core-chart.d.ts +162 -115
  476. package/types/gravionlabs-helix-core-checkbox.d.ts +310 -211
  477. package/types/gravionlabs-helix-core-chip.d.ts +202 -147
  478. package/types/gravionlabs-helix-core-classnames.d.ts +23 -21
  479. package/types/gravionlabs-helix-core-colorpicker.d.ts +359 -290
  480. package/types/gravionlabs-helix-core-config.d.ts +249 -259
  481. package/types/gravionlabs-helix-core-confirmdialog.d.ts +498 -325
  482. package/types/gravionlabs-helix-core-confirmpopup.d.ts +273 -218
  483. package/types/gravionlabs-helix-core-contextmenu.d.ts +509 -351
  484. package/types/gravionlabs-helix-core-dataview.d.ts +507 -349
  485. package/types/gravionlabs-helix-core-datepicker.d.ts +1267 -954
  486. package/types/gravionlabs-helix-core-dialog.d.ts +758 -515
  487. package/types/gravionlabs-helix-core-divider.d.ts +126 -106
  488. package/types/gravionlabs-helix-core-dock.d.ts +219 -181
  489. package/types/gravionlabs-helix-core-dom.d.ts +97 -100
  490. package/types/gravionlabs-helix-core-dragdrop.d.ts +149 -107
  491. package/types/gravionlabs-helix-core-drawer.d.ts +382 -278
  492. package/types/gravionlabs-helix-core-dynamicdialog.d.ts +512 -519
  493. package/types/gravionlabs-helix-core-editor.d.ts +225 -173
  494. package/types/gravionlabs-helix-core-fieldset.d.ts +209 -170
  495. package/types/gravionlabs-helix-core-fileupload.d.ts +764 -533
  496. package/types/gravionlabs-helix-core-firsterror.d.ts +8 -11
  497. package/types/gravionlabs-helix-core-floatlabel.d.ts +57 -52
  498. package/types/gravionlabs-helix-core-fluid.d.ts +38 -39
  499. package/types/gravionlabs-helix-core-focustrap.d.ts +33 -30
  500. package/types/gravionlabs-helix-core-galleria.d.ts +957 -628
  501. package/types/gravionlabs-helix-core-iconfield.d.ts +72 -57
  502. package/types/gravionlabs-helix-core-icons-angledoubledown.d.ts +6 -9
  503. package/types/gravionlabs-helix-core-icons-angledoubleleft.d.ts +6 -9
  504. package/types/gravionlabs-helix-core-icons-angledoubleright.d.ts +6 -9
  505. package/types/gravionlabs-helix-core-icons-angledoubleup.d.ts +6 -9
  506. package/types/gravionlabs-helix-core-icons-angledown.d.ts +6 -9
  507. package/types/gravionlabs-helix-core-icons-angleleft.d.ts +6 -9
  508. package/types/gravionlabs-helix-core-icons-angleright.d.ts +6 -9
  509. package/types/gravionlabs-helix-core-icons-angleup.d.ts +6 -9
  510. package/types/gravionlabs-helix-core-icons-arrowdown.d.ts +8 -11
  511. package/types/gravionlabs-helix-core-icons-arrowdownleft.d.ts +6 -9
  512. package/types/gravionlabs-helix-core-icons-arrowdownright.d.ts +6 -9
  513. package/types/gravionlabs-helix-core-icons-arrowleft.d.ts +8 -11
  514. package/types/gravionlabs-helix-core-icons-arrowright.d.ts +6 -9
  515. package/types/gravionlabs-helix-core-icons-arrowup.d.ts +8 -11
  516. package/types/gravionlabs-helix-core-icons-ban.d.ts +8 -11
  517. package/types/gravionlabs-helix-core-icons-bars.d.ts +6 -9
  518. package/types/gravionlabs-helix-core-icons-baseicon.d.ts +25 -24
  519. package/types/gravionlabs-helix-core-icons-blank.d.ts +6 -9
  520. package/types/gravionlabs-helix-core-icons-calendar.d.ts +6 -9
  521. package/types/gravionlabs-helix-core-icons-caretleft.d.ts +6 -9
  522. package/types/gravionlabs-helix-core-icons-caretright.d.ts +6 -9
  523. package/types/gravionlabs-helix-core-icons-check.d.ts +6 -9
  524. package/types/gravionlabs-helix-core-icons-chevrondown.d.ts +6 -9
  525. package/types/gravionlabs-helix-core-icons-chevronleft.d.ts +6 -9
  526. package/types/gravionlabs-helix-core-icons-chevronright.d.ts +6 -9
  527. package/types/gravionlabs-helix-core-icons-chevronup.d.ts +6 -9
  528. package/types/gravionlabs-helix-core-icons-exclamationtriangle.d.ts +8 -11
  529. package/types/gravionlabs-helix-core-icons-eye.d.ts +6 -9
  530. package/types/gravionlabs-helix-core-icons-eyeslash.d.ts +8 -11
  531. package/types/gravionlabs-helix-core-icons-filter.d.ts +8 -11
  532. package/types/gravionlabs-helix-core-icons-filterfill.d.ts +6 -9
  533. package/types/gravionlabs-helix-core-icons-filterslash.d.ts +8 -11
  534. package/types/gravionlabs-helix-core-icons-home.d.ts +8 -11
  535. package/types/gravionlabs-helix-core-icons-infocircle.d.ts +8 -11
  536. package/types/gravionlabs-helix-core-icons-minus.d.ts +6 -9
  537. package/types/gravionlabs-helix-core-icons-pencil.d.ts +8 -11
  538. package/types/gravionlabs-helix-core-icons-plus.d.ts +8 -11
  539. package/types/gravionlabs-helix-core-icons-refresh.d.ts +8 -11
  540. package/types/gravionlabs-helix-core-icons-search.d.ts +8 -11
  541. package/types/gravionlabs-helix-core-icons-searchminus.d.ts +8 -11
  542. package/types/gravionlabs-helix-core-icons-searchplus.d.ts +8 -11
  543. package/types/gravionlabs-helix-core-icons-sortalt.d.ts +8 -11
  544. package/types/gravionlabs-helix-core-icons-sortamountdown.d.ts +8 -11
  545. package/types/gravionlabs-helix-core-icons-sortamountupalt.d.ts +8 -11
  546. package/types/gravionlabs-helix-core-icons-spinner.d.ts +8 -11
  547. package/types/gravionlabs-helix-core-icons-star.d.ts +8 -11
  548. package/types/gravionlabs-helix-core-icons-starfill.d.ts +8 -11
  549. package/types/gravionlabs-helix-core-icons-thlarge.d.ts +8 -11
  550. package/types/gravionlabs-helix-core-icons-times.d.ts +6 -9
  551. package/types/gravionlabs-helix-core-icons-timescircle.d.ts +8 -11
  552. package/types/gravionlabs-helix-core-icons-trash.d.ts +8 -11
  553. package/types/gravionlabs-helix-core-icons-undo.d.ts +8 -11
  554. package/types/gravionlabs-helix-core-icons-upload.d.ts +8 -11
  555. package/types/gravionlabs-helix-core-icons-windowmaximize.d.ts +8 -11
  556. package/types/gravionlabs-helix-core-icons-windowminimize.d.ts +8 -11
  557. package/types/gravionlabs-helix-core-icons.d.ts +53 -53
  558. package/types/gravionlabs-helix-core-iftalabel.d.ts +42 -43
  559. package/types/gravionlabs-helix-core-image.d.ts +440 -331
  560. package/types/gravionlabs-helix-core-imagecompare.d.ts +99 -84
  561. package/types/gravionlabs-helix-core-inplace.d.ts +188 -149
  562. package/types/gravionlabs-helix-core-inputgroup.d.ts +55 -50
  563. package/types/gravionlabs-helix-core-inputgroupaddon.d.ts +54 -43
  564. package/types/gravionlabs-helix-core-inputicon.d.ts +49 -38
  565. package/types/gravionlabs-helix-core-inputmask.d.ts +499 -353
  566. package/types/gravionlabs-helix-core-inputnumber.d.ts +581 -410
  567. package/types/gravionlabs-helix-core-inputotp.d.ts +206 -158
  568. package/types/gravionlabs-helix-core-inputtext.d.ts +142 -102
  569. package/types/gravionlabs-helix-core-keyfilter.d.ts +62 -53
  570. package/types/gravionlabs-helix-core-knob.d.ts +265 -188
  571. package/types/gravionlabs-helix-core-listbox.d.ts +897 -638
  572. package/types/gravionlabs-helix-core-megamenu.d.ts +512 -365
  573. package/types/gravionlabs-helix-core-menu.d.ts +441 -343
  574. package/types/gravionlabs-helix-core-menubar.d.ts +499 -361
  575. package/types/gravionlabs-helix-core-message.d.ts +267 -195
  576. package/types/gravionlabs-helix-core-metergroup.d.ts +256 -190
  577. package/types/gravionlabs-helix-core-motion.d.ts +602 -385
  578. package/types/gravionlabs-helix-core-multiselect.d.ts +1256 -855
  579. package/types/gravionlabs-helix-core-orderlist.d.ts +504 -351
  580. package/types/gravionlabs-helix-core-organizationchart.d.ts +264 -203
  581. package/types/gravionlabs-helix-core-overlay.d.ts +417 -307
  582. package/types/gravionlabs-helix-core-overlaybadge.d.ts +107 -71
  583. package/types/gravionlabs-helix-core-paginator.d.ts +445 -336
  584. package/types/gravionlabs-helix-core-panel.d.ts +285 -225
  585. package/types/gravionlabs-helix-core-panelmenu.d.ts +499 -340
  586. package/types/gravionlabs-helix-core-passthrough.d.ts +5 -7
  587. package/types/gravionlabs-helix-core-password.d.ts +657 -463
  588. package/types/gravionlabs-helix-core-picklist.d.ts +938 -647
  589. package/types/gravionlabs-helix-core-popover.d.ts +259 -190
  590. package/types/gravionlabs-helix-core-progressbar.d.ts +141 -106
  591. package/types/gravionlabs-helix-core-progressspinner.d.ts +101 -76
  592. package/types/gravionlabs-helix-core-radiobutton.d.ts +228 -174
  593. package/types/gravionlabs-helix-core-rating.d.ts +217 -178
  594. package/types/gravionlabs-helix-core-ripple.d.ts +43 -48
  595. package/types/gravionlabs-helix-core-scroller.d.ts +505 -371
  596. package/types/gravionlabs-helix-core-scrollpanel.d.ts +151 -141
  597. package/types/gravionlabs-helix-core-scrolltop.d.ts +195 -140
  598. package/types/gravionlabs-helix-core-select.d.ts +1095 -749
  599. package/types/gravionlabs-helix-core-selectbutton.d.ts +238 -165
  600. package/types/gravionlabs-helix-core-skeleton.d.ts +123 -88
  601. package/types/gravionlabs-helix-core-slider.d.ts +259 -201
  602. package/types/gravionlabs-helix-core-speeddial.d.ts +511 -390
  603. package/types/gravionlabs-helix-core-splitbutton.d.ts +422 -267
  604. package/types/gravionlabs-helix-core-splitter.d.ts +246 -192
  605. package/types/gravionlabs-helix-core-stepper.d.ts +428 -269
  606. package/types/gravionlabs-helix-core-steps.d.ts +162 -134
  607. package/types/gravionlabs-helix-core-styleclass.d.ts +165 -107
  608. package/types/gravionlabs-helix-core-table.d.ts +2908 -1935
  609. package/types/gravionlabs-helix-core-tabs.d.ts +471 -311
  610. package/types/gravionlabs-helix-core-tag.d.ts +123 -98
  611. package/types/gravionlabs-helix-core-terminal.d.ts +142 -124
  612. package/types/gravionlabs-helix-core-textarea.d.ts +147 -110
  613. package/types/gravionlabs-helix-core-themes-aura.d.ts +957 -942
  614. package/types/gravionlabs-helix-core-themes-lara.d.ts +968 -953
  615. package/types/gravionlabs-helix-core-themes-nora.d.ts +954 -939
  616. package/types/gravionlabs-helix-core-themes-types.d.ts +17940 -18746
  617. package/types/gravionlabs-helix-core-themes.d.ts +8 -11
  618. package/types/gravionlabs-helix-core-tieredmenu.d.ts +583 -398
  619. package/types/gravionlabs-helix-core-timeline.d.ts +145 -125
  620. package/types/gravionlabs-helix-core-toast.d.ts +408 -275
  621. package/types/gravionlabs-helix-core-togglebutton.d.ts +264 -188
  622. package/types/gravionlabs-helix-core-toggleswitch.d.ts +202 -150
  623. package/types/gravionlabs-helix-core-toolbar.d.ts +100 -90
  624. package/types/gravionlabs-helix-core-tooltip.d.ts +362 -256
  625. package/types/gravionlabs-helix-core-tree.d.ts +902 -630
  626. package/types/gravionlabs-helix-core-treeselect.d.ts +770 -559
  627. package/types/gravionlabs-helix-core-treetable.d.ts +1715 -1205
  628. package/types/gravionlabs-helix-core-ts-helpers.d.ts +4 -6
  629. package/types/gravionlabs-helix-core-types-accordion.d.ts +42 -45
  630. package/types/gravionlabs-helix-core-types-autocomplete.d.ts +230 -233
  631. package/types/gravionlabs-helix-core-types-avatar.d.ts +23 -26
  632. package/types/gravionlabs-helix-core-types-avatargroup.d.ts +11 -14
  633. package/types/gravionlabs-helix-core-types-badge.d.ts +11 -14
  634. package/types/gravionlabs-helix-core-types-blockui.d.ts +18 -21
  635. package/types/gravionlabs-helix-core-types-breadcrumb.d.ts +65 -68
  636. package/types/gravionlabs-helix-core-types-button.d.ts +90 -93
  637. package/types/gravionlabs-helix-core-types-card.d.ts +54 -57
  638. package/types/gravionlabs-helix-core-types-carousel.d.ts +107 -110
  639. package/types/gravionlabs-helix-core-types-cascadeselect.d.ts +151 -157
  640. package/types/gravionlabs-helix-core-types-chart.d.ts +15 -18
  641. package/types/gravionlabs-helix-core-types-checkbox.d.ts +48 -51
  642. package/types/gravionlabs-helix-core-types-chip.d.ts +49 -52
  643. package/types/gravionlabs-helix-core-types-colorpicker.d.ts +58 -61
  644. package/types/gravionlabs-helix-core-types-confirmdialog.d.ts +116 -119
  645. package/types/gravionlabs-helix-core-types-confirmpopup.d.ts +74 -77
  646. package/types/gravionlabs-helix-core-types-contextmenu.d.ts +71 -74
  647. package/types/gravionlabs-helix-core-types-dataview.d.ts +178 -181
  648. package/types/gravionlabs-helix-core-types-datepicker.d.ts +436 -439
  649. package/types/gravionlabs-helix-core-types-dialog.d.ts +86 -89
  650. package/types/gravionlabs-helix-core-types-divider.d.ts +11 -14
  651. package/types/gravionlabs-helix-core-types-dock.d.ts +44 -47
  652. package/types/gravionlabs-helix-core-types-drawer.d.ts +61 -64
  653. package/types/gravionlabs-helix-core-types-editor.d.ts +143 -146
  654. package/types/gravionlabs-helix-core-types-fieldset.d.ts +69 -73
  655. package/types/gravionlabs-helix-core-types-fileupload.d.ts +260 -265
  656. package/types/gravionlabs-helix-core-types-floatlabel.d.ts +11 -14
  657. package/types/gravionlabs-helix-core-types-fluid.d.ts +11 -14
  658. package/types/gravionlabs-helix-core-types-galleria.d.ts +204 -207
  659. package/types/gravionlabs-helix-core-types-iconfield.d.ts +11 -14
  660. package/types/gravionlabs-helix-core-types-iftalabel.d.ts +11 -14
  661. package/types/gravionlabs-helix-core-types-image.d.ts +113 -116
  662. package/types/gravionlabs-helix-core-types-imagecompare.d.ts +22 -25
  663. package/types/gravionlabs-helix-core-types-inplace.d.ts +46 -49
  664. package/types/gravionlabs-helix-core-types-inputgroup.d.ts +11 -14
  665. package/types/gravionlabs-helix-core-types-inputgroupaddon.d.ts +11 -14
  666. package/types/gravionlabs-helix-core-types-inputicon.d.ts +11 -14
  667. package/types/gravionlabs-helix-core-types-inputmask.d.ts +30 -33
  668. package/types/gravionlabs-helix-core-types-inputnumber.d.ts +68 -71
  669. package/types/gravionlabs-helix-core-types-inputotp.d.ts +67 -70
  670. package/types/gravionlabs-helix-core-types-inputtext.d.ts +7 -10
  671. package/types/gravionlabs-helix-core-types-knob.d.ts +23 -26
  672. package/types/gravionlabs-helix-core-types-listbox.d.ts +262 -266
  673. package/types/gravionlabs-helix-core-types-megamenu.d.ts +112 -115
  674. package/types/gravionlabs-helix-core-types-menu.d.ts +83 -86
  675. package/types/gravionlabs-helix-core-types-menubar.d.ts +98 -101
  676. package/types/gravionlabs-helix-core-types-message.d.ts +61 -64
  677. package/types/gravionlabs-helix-core-types-metergroup.d.ts +135 -138
  678. package/types/gravionlabs-helix-core-types-motion.d.ts +11 -14
  679. package/types/gravionlabs-helix-core-types-multiselect.d.ts +302 -306
  680. package/types/gravionlabs-helix-core-types-orderlist.d.ts +125 -128
  681. package/types/gravionlabs-helix-core-types-organizationchart.d.ts +90 -96
  682. package/types/gravionlabs-helix-core-types-overlay.d.ts +31 -34
  683. package/types/gravionlabs-helix-core-types-overlaybadge.d.ts +17 -20
  684. package/types/gravionlabs-helix-core-types-paginator.d.ts +131 -134
  685. package/types/gravionlabs-helix-core-types-panel.d.ts +89 -93
  686. package/types/gravionlabs-helix-core-types-panelmenu.d.ts +105 -108
  687. package/types/gravionlabs-helix-core-types-password.d.ts +94 -97
  688. package/types/gravionlabs-helix-core-types-picklist.d.ts +240 -250
  689. package/types/gravionlabs-helix-core-types-popover.d.ts +33 -36
  690. package/types/gravionlabs-helix-core-types-progressbar.d.ts +32 -35
  691. package/types/gravionlabs-helix-core-types-progressspinner.d.ts +19 -22
  692. package/types/gravionlabs-helix-core-types-radiobutton.d.ts +29 -32
  693. package/types/gravionlabs-helix-core-types-rating.d.ts +62 -65
  694. package/types/gravionlabs-helix-core-types-scroller.d.ts +142 -146
  695. package/types/gravionlabs-helix-core-types-scrollpanel.d.ts +30 -33
  696. package/types/gravionlabs-helix-core-types-scrolltop.d.ts +35 -38
  697. package/types/gravionlabs-helix-core-types-select.d.ts +245 -248
  698. package/types/gravionlabs-helix-core-types-selectbutton.d.ts +56 -59
  699. package/types/gravionlabs-helix-core-types-skeleton.d.ts +11 -14
  700. package/types/gravionlabs-helix-core-types-slider.d.ts +50 -53
  701. package/types/gravionlabs-helix-core-types-speeddial.d.ts +69 -72
  702. package/types/gravionlabs-helix-core-types-splitbutton.d.ts +41 -44
  703. package/types/gravionlabs-helix-core-types-splitter.d.ts +36 -40
  704. package/types/gravionlabs-helix-core-types-stepper.d.ts +68 -71
  705. package/types/gravionlabs-helix-core-types-table.d.ts +721 -727
  706. package/types/gravionlabs-helix-core-types-tabs.d.ts +51 -54
  707. package/types/gravionlabs-helix-core-types-tag.d.ts +26 -29
  708. package/types/gravionlabs-helix-core-types-terminal.d.ts +43 -46
  709. package/types/gravionlabs-helix-core-types-textarea.d.ts +11 -14
  710. package/types/gravionlabs-helix-core-types-tieredmenu.d.ts +69 -72
  711. package/types/gravionlabs-helix-core-types-timeline.d.ts +58 -61
  712. package/types/gravionlabs-helix-core-types-toast.d.ts +86 -89
  713. package/types/gravionlabs-helix-core-types-togglebutton.d.ts +51 -54
  714. package/types/gravionlabs-helix-core-types-toggleswitch.d.ts +41 -44
  715. package/types/gravionlabs-helix-core-types-toolbar.d.ts +34 -37
  716. package/types/gravionlabs-helix-core-types-tooltip.d.ts +15 -18
  717. package/types/gravionlabs-helix-core-types-tree.d.ts +230 -239
  718. package/types/gravionlabs-helix-core-types-treeselect.d.ts +195 -199
  719. package/types/gravionlabs-helix-core-types-treetable.d.ts +486 -491
  720. package/types/gravionlabs-helix-core-uix-motion.d.ts +177 -190
  721. package/types/gravionlabs-helix-core-uix-styled.d.ts +254 -277
  722. package/types/gravionlabs-helix-core-uix-utils.d.ts +39 -176
  723. package/types/gravionlabs-helix-core-usestyle.d.ts +12 -15
  724. package/types/gravionlabs-helix-core-utils.d.ts +45 -50
  725. package/types/gravionlabs-helix-core-validators.d.ts +29 -34
  726. package/types/gravionlabs-helix-core.d.ts +2 -2
  727. package/fesm2022/gravionlabs-helix-core-icons.mjs.map +0 -1
  728. package/fesm2022/gravionlabs-helix-core-themes-types.mjs.map +0 -1
  729. package/fesm2022/gravionlabs-helix-core-ts-helpers.mjs.map +0 -1
  730. package/fesm2022/gravionlabs-helix-core-types-accordion.mjs.map +0 -1
  731. package/fesm2022/gravionlabs-helix-core-types-autocomplete.mjs.map +0 -1
  732. package/fesm2022/gravionlabs-helix-core-types-avatar.mjs.map +0 -1
  733. package/fesm2022/gravionlabs-helix-core-types-avatargroup.mjs.map +0 -1
  734. package/fesm2022/gravionlabs-helix-core-types-badge.mjs.map +0 -1
  735. package/fesm2022/gravionlabs-helix-core-types-blockui.mjs.map +0 -1
  736. package/fesm2022/gravionlabs-helix-core-types-breadcrumb.mjs.map +0 -1
  737. package/fesm2022/gravionlabs-helix-core-types-button.mjs.map +0 -1
  738. package/fesm2022/gravionlabs-helix-core-types-card.mjs.map +0 -1
  739. package/fesm2022/gravionlabs-helix-core-types-carousel.mjs.map +0 -1
  740. package/fesm2022/gravionlabs-helix-core-types-cascadeselect.mjs.map +0 -1
  741. package/fesm2022/gravionlabs-helix-core-types-chart.mjs.map +0 -1
  742. package/fesm2022/gravionlabs-helix-core-types-checkbox.mjs.map +0 -1
  743. package/fesm2022/gravionlabs-helix-core-types-chip.mjs.map +0 -1
  744. package/fesm2022/gravionlabs-helix-core-types-colorpicker.mjs.map +0 -1
  745. package/fesm2022/gravionlabs-helix-core-types-confirmdialog.mjs.map +0 -1
  746. package/fesm2022/gravionlabs-helix-core-types-confirmpopup.mjs.map +0 -1
  747. package/fesm2022/gravionlabs-helix-core-types-contextmenu.mjs.map +0 -1
  748. package/fesm2022/gravionlabs-helix-core-types-dataview.mjs.map +0 -1
  749. package/fesm2022/gravionlabs-helix-core-types-datepicker.mjs.map +0 -1
  750. package/fesm2022/gravionlabs-helix-core-types-dialog.mjs.map +0 -1
  751. package/fesm2022/gravionlabs-helix-core-types-divider.mjs.map +0 -1
  752. package/fesm2022/gravionlabs-helix-core-types-dock.mjs.map +0 -1
  753. package/fesm2022/gravionlabs-helix-core-types-drawer.mjs.map +0 -1
  754. package/fesm2022/gravionlabs-helix-core-types-editor.mjs.map +0 -1
  755. package/fesm2022/gravionlabs-helix-core-types-fieldset.mjs.map +0 -1
  756. package/fesm2022/gravionlabs-helix-core-types-fileupload.mjs.map +0 -1
  757. package/fesm2022/gravionlabs-helix-core-types-floatlabel.mjs.map +0 -1
  758. package/fesm2022/gravionlabs-helix-core-types-fluid.mjs.map +0 -1
  759. package/fesm2022/gravionlabs-helix-core-types-galleria.mjs.map +0 -1
  760. package/fesm2022/gravionlabs-helix-core-types-iconfield.mjs.map +0 -1
  761. package/fesm2022/gravionlabs-helix-core-types-iftalabel.mjs.map +0 -1
  762. package/fesm2022/gravionlabs-helix-core-types-image.mjs.map +0 -1
  763. package/fesm2022/gravionlabs-helix-core-types-imagecompare.mjs.map +0 -1
  764. package/fesm2022/gravionlabs-helix-core-types-inplace.mjs.map +0 -1
  765. package/fesm2022/gravionlabs-helix-core-types-inputgroup.mjs.map +0 -1
  766. package/fesm2022/gravionlabs-helix-core-types-inputgroupaddon.mjs.map +0 -1
  767. package/fesm2022/gravionlabs-helix-core-types-inputicon.mjs.map +0 -1
  768. package/fesm2022/gravionlabs-helix-core-types-inputmask.mjs.map +0 -1
  769. package/fesm2022/gravionlabs-helix-core-types-inputnumber.mjs.map +0 -1
  770. package/fesm2022/gravionlabs-helix-core-types-inputotp.mjs.map +0 -1
  771. package/fesm2022/gravionlabs-helix-core-types-inputtext.mjs.map +0 -1
  772. package/fesm2022/gravionlabs-helix-core-types-knob.mjs.map +0 -1
  773. package/fesm2022/gravionlabs-helix-core-types-listbox.mjs.map +0 -1
  774. package/fesm2022/gravionlabs-helix-core-types-megamenu.mjs.map +0 -1
  775. package/fesm2022/gravionlabs-helix-core-types-menu.mjs.map +0 -1
  776. package/fesm2022/gravionlabs-helix-core-types-menubar.mjs.map +0 -1
  777. package/fesm2022/gravionlabs-helix-core-types-message.mjs.map +0 -1
  778. package/fesm2022/gravionlabs-helix-core-types-metergroup.mjs.map +0 -1
  779. package/fesm2022/gravionlabs-helix-core-types-motion.mjs.map +0 -1
  780. package/fesm2022/gravionlabs-helix-core-types-multiselect.mjs.map +0 -1
  781. package/fesm2022/gravionlabs-helix-core-types-orderlist.mjs.map +0 -1
  782. package/fesm2022/gravionlabs-helix-core-types-organizationchart.mjs.map +0 -1
  783. package/fesm2022/gravionlabs-helix-core-types-overlay.mjs.map +0 -1
  784. package/fesm2022/gravionlabs-helix-core-types-overlaybadge.mjs.map +0 -1
  785. package/fesm2022/gravionlabs-helix-core-types-paginator.mjs.map +0 -1
  786. package/fesm2022/gravionlabs-helix-core-types-panel.mjs.map +0 -1
  787. package/fesm2022/gravionlabs-helix-core-types-panelmenu.mjs.map +0 -1
  788. package/fesm2022/gravionlabs-helix-core-types-password.mjs.map +0 -1
  789. package/fesm2022/gravionlabs-helix-core-types-picklist.mjs.map +0 -1
  790. package/fesm2022/gravionlabs-helix-core-types-popover.mjs.map +0 -1
  791. package/fesm2022/gravionlabs-helix-core-types-progressbar.mjs.map +0 -1
  792. package/fesm2022/gravionlabs-helix-core-types-progressspinner.mjs.map +0 -1
  793. package/fesm2022/gravionlabs-helix-core-types-radiobutton.mjs.map +0 -1
  794. package/fesm2022/gravionlabs-helix-core-types-rating.mjs.map +0 -1
  795. package/fesm2022/gravionlabs-helix-core-types-scroller.mjs.map +0 -1
  796. package/fesm2022/gravionlabs-helix-core-types-scrollpanel.mjs.map +0 -1
  797. package/fesm2022/gravionlabs-helix-core-types-scrolltop.mjs.map +0 -1
  798. package/fesm2022/gravionlabs-helix-core-types-select.mjs.map +0 -1
  799. package/fesm2022/gravionlabs-helix-core-types-selectbutton.mjs.map +0 -1
  800. package/fesm2022/gravionlabs-helix-core-types-skeleton.mjs.map +0 -1
  801. package/fesm2022/gravionlabs-helix-core-types-slider.mjs.map +0 -1
  802. package/fesm2022/gravionlabs-helix-core-types-speeddial.mjs.map +0 -1
  803. package/fesm2022/gravionlabs-helix-core-types-splitbutton.mjs.map +0 -1
  804. package/fesm2022/gravionlabs-helix-core-types-splitter.mjs.map +0 -1
  805. package/fesm2022/gravionlabs-helix-core-types-stepper.mjs.map +0 -1
  806. package/fesm2022/gravionlabs-helix-core-types-table.mjs.map +0 -1
  807. package/fesm2022/gravionlabs-helix-core-types-tabs.mjs.map +0 -1
  808. package/fesm2022/gravionlabs-helix-core-types-tag.mjs.map +0 -1
  809. package/fesm2022/gravionlabs-helix-core-types-terminal.mjs.map +0 -1
  810. package/fesm2022/gravionlabs-helix-core-types-textarea.mjs.map +0 -1
  811. package/fesm2022/gravionlabs-helix-core-types-tieredmenu.mjs.map +0 -1
  812. package/fesm2022/gravionlabs-helix-core-types-timeline.mjs.map +0 -1
  813. package/fesm2022/gravionlabs-helix-core-types-toast.mjs.map +0 -1
  814. package/fesm2022/gravionlabs-helix-core-types-togglebutton.mjs.map +0 -1
  815. package/fesm2022/gravionlabs-helix-core-types-toggleswitch.mjs.map +0 -1
  816. package/fesm2022/gravionlabs-helix-core-types-toolbar.mjs.map +0 -1
  817. package/fesm2022/gravionlabs-helix-core-types-tooltip.mjs.map +0 -1
  818. package/fesm2022/gravionlabs-helix-core-types-tree.mjs.map +0 -1
  819. package/fesm2022/gravionlabs-helix-core-types-treeselect.mjs.map +0 -1
  820. package/fesm2022/gravionlabs-helix-core-types-treetable.mjs.map +0 -1
@@ -1,26 +1,26 @@
1
- export * from '@gravionlabs/helix-core/types/autocomplete';
2
- import * as i3 from '@angular/common';
3
- import { CommonModule } from '@angular/common';
4
- import * as i0 from '@angular/core';
5
- import { Injectable, InjectionToken, forwardRef, inject, input, numberAttribute, booleanAttribute, model, output, viewChild, contentChild, signal, computed, effect, contentChildren, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
6
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
7
- import { equals, isNotEmpty, uuid, findLastIndex, resolveFieldData, focus, isEmpty, findSingle } from '@gravionlabs/helix-core/uix/utils';
8
- import * as i1 from '@gravionlabs/helix-core/api';
9
- import { TranslationKeys, HelixTemplate, SharedModule } from '@gravionlabs/helix-core/api';
10
- import { AutoFocus } from '@gravionlabs/helix-core/autofocus';
11
- import { PARENT_INSTANCE } from '@gravionlabs/helix-core/basecomponent';
12
- import { BaseInput } from '@gravionlabs/helix-core/baseinput';
13
- import * as i2 from '@gravionlabs/helix-core/bind';
14
- import { Bind, BindModule } from '@gravionlabs/helix-core/bind';
15
- import { Chip } from '@gravionlabs/helix-core/chip';
16
- import { TimesCircleIcon, SpinnerIcon, ChevronDownIcon, TimesIcon } from '@gravionlabs/helix-core/icons';
17
- import { InputText } from '@gravionlabs/helix-core/inputtext';
18
- import { Overlay } from '@gravionlabs/helix-core/overlay';
19
- import { Ripple } from '@gravionlabs/helix-core/ripple';
20
- import { Scroller } from '@gravionlabs/helix-core/scroller';
21
- import { BaseStyle } from '@gravionlabs/helix-core/base';
1
+ import * as i3 from "@angular/common";
2
+ import { CommonModule } from "@angular/common";
3
+ import * as i0 from "@angular/core";
4
+ import { ChangeDetectionStrategy, Component, Injectable, InjectionToken, NgModule, ViewEncapsulation, booleanAttribute, computed, contentChild, contentChildren, effect, forwardRef, inject, input, model, numberAttribute, output, signal, viewChild } from "@angular/core";
5
+ import { NG_VALUE_ACCESSOR } from "@angular/forms";
6
+ import { equals, findLastIndex, findSingle, focus, isEmpty, isNotEmpty, resolveFieldData, uuid } from "@gravionlabs/helix-core/uix/utils";
7
+ import * as i1 from "@gravionlabs/helix-core/api";
8
+ import { HelixTemplate, SharedModule, TranslationKeys } from "@gravionlabs/helix-core/api";
9
+ import { AutoFocus } from "@gravionlabs/helix-core/autofocus";
10
+ import { PARENT_INSTANCE } from "@gravionlabs/helix-core/basecomponent";
11
+ import { BaseInput } from "@gravionlabs/helix-core/baseinput";
12
+ import * as i2 from "@gravionlabs/helix-core/bind";
13
+ import { Bind, BindModule } from "@gravionlabs/helix-core/bind";
14
+ import { Chip } from "@gravionlabs/helix-core/chip";
15
+ import { ChevronDownIcon, SpinnerIcon, TimesCircleIcon, TimesIcon } from "@gravionlabs/helix-core/icons";
16
+ import { InputText } from "@gravionlabs/helix-core/inputtext";
17
+ import { Overlay } from "@gravionlabs/helix-core/overlay";
18
+ import { Ripple } from "@gravionlabs/helix-core/ripple";
19
+ import { Scroller } from "@gravionlabs/helix-core/scroller";
20
+ import { BaseStyle } from "@gravionlabs/helix-core/base";
21
+ export * from "@gravionlabs/helix-core/types/autocomplete";
22
+ const style = `
22
23
 
23
- const style$1 = /*css*/ `
24
24
  .h-autocomplete {
25
25
  display: inline-flex;
26
26
  }
@@ -326,10 +326,7 @@ const style$1 = /*css*/ `
326
326
  border-start-end-radius: dt('autocomplete.dropdown.border.radius');
327
327
  border-end-end-radius: dt('autocomplete.dropdown.border.radius');
328
328
  }
329
- `;
330
329
 
331
- const style = /*css*/ `
332
- ${style$1}
333
330
 
334
331
  /* For Helix */
335
332
  h-autoComplete.ng-invalid.ng-dirty .h-autocomplete-input,
@@ -361,1596 +358,2591 @@ h-autocomplete.ng-invalid.ng-dirty .h-autocomplete-input::placeholder {
361
358
  color: dt('autocomplete.invalid.placeholder.color');
362
359
  }
363
360
  `;
364
- const inlineStyles = {
365
- root: { position: 'relative' }
366
- };
361
+ const inlineStyles = { root: { position: "relative" } };
367
362
  const classes = {
368
- root: ({ instance }) => [
369
- 'h-autocomplete h-component h-inputwrapper',
370
- {
371
- 'h-invalid': instance.invalid(),
372
- 'h-focus': instance.focused,
373
- 'h-inputwrapper-filled': instance.$filled(),
374
- 'h-inputwrapper-focus': (instance.focused && !instance.$disabled()) || instance.autofocus || instance.overlayVisible,
375
- 'h-autocomplete-open': instance.overlayVisible,
376
- 'h-autocomplete-clearable': instance.showClear && !instance.$disabled(),
377
- 'h-autocomplete-fluid': instance.hasFluid
378
- }
379
- ],
380
- pcInputText: 'h-autocomplete-input',
381
- inputMultiple: ({ instance }) => [
382
- 'h-autocomplete-input-multiple',
383
- {
384
- 'h-disabled': instance.$disabled(),
385
- 'h-variant-filled': instance.$variant() === 'filled'
386
- }
387
- ],
388
- chipItem: ({ instance, i }) => [
389
- 'h-autocomplete-chip-item',
390
- {
391
- 'h-focus': instance.focusedMultipleOptionIndex() === i
392
- }
393
- ],
394
- pcChip: 'h-autocomplete-chip',
395
- chipIcon: 'h-autocomplete-chip-icon',
396
- inputChip: 'h-autocomplete-input-chip',
397
- loader: 'h-autocomplete-loader',
398
- dropdown: 'h-autocomplete-dropdown',
399
- overlay: ({ instance }) => ['h-autocomplete-overlay h-component-overlay h-component', { 'h-input-filled': instance.$variant() === 'filled', 'h-ripple-disabled': instance.config.ripple() === false }],
400
- listContainer: 'h-autocomplete-list-container',
401
- list: 'h-autocomplete-list',
402
- optionGroup: 'h-autocomplete-option-group',
403
- option: ({ instance, option, i, scrollerOptions }) => ({
404
- 'h-autocomplete-option': true,
405
- 'h-autocomplete-option-selected': instance.isSelected(option),
406
- 'h-focus': instance.focusedOptionIndex() === instance.getOptionIndex(i, scrollerOptions),
407
- 'h-disabled': instance.isOptionDisabled(option)
408
- }),
409
- emptyMessage: 'h-autocomplete-empty-message',
410
- clearIcon: 'h-autocomplete-clear-icon'
363
+ root: ({ instance }) => ["h-autocomplete h-component h-inputwrapper", {
364
+ "h-invalid": instance.invalid(),
365
+ "h-focus": instance.focused,
366
+ "h-inputwrapper-filled": instance.$filled(),
367
+ "h-inputwrapper-focus": instance.focused && !instance.$disabled() || instance.autofocus || instance.overlayVisible,
368
+ "h-autocomplete-open": instance.overlayVisible,
369
+ "h-autocomplete-clearable": instance.showClear && !instance.$disabled(),
370
+ "h-autocomplete-fluid": instance.hasFluid
371
+ }],
372
+ pcInputText: "h-autocomplete-input",
373
+ inputMultiple: ({ instance }) => ["h-autocomplete-input-multiple", {
374
+ "h-disabled": instance.$disabled(),
375
+ "h-variant-filled": instance.$variant() === "filled"
376
+ }],
377
+ chipItem: ({ instance, i }) => ["h-autocomplete-chip-item", { "h-focus": instance.focusedMultipleOptionIndex() === i }],
378
+ pcChip: "h-autocomplete-chip",
379
+ chipIcon: "h-autocomplete-chip-icon",
380
+ inputChip: "h-autocomplete-input-chip",
381
+ loader: "h-autocomplete-loader",
382
+ dropdown: "h-autocomplete-dropdown",
383
+ overlay: ({ instance }) => ["h-autocomplete-overlay h-component-overlay h-component", {
384
+ "h-input-filled": instance.$variant() === "filled",
385
+ "h-ripple-disabled": instance.config.ripple() === false
386
+ }],
387
+ listContainer: "h-autocomplete-list-container",
388
+ list: "h-autocomplete-list",
389
+ optionGroup: "h-autocomplete-option-group",
390
+ option: ({ instance, option, i, scrollerOptions }) => ({
391
+ "h-autocomplete-option": true,
392
+ "h-autocomplete-option-selected": instance.isSelected(option),
393
+ "h-focus": instance.focusedOptionIndex() === instance.getOptionIndex(i, scrollerOptions),
394
+ "h-disabled": instance.isOptionDisabled(option)
395
+ }),
396
+ emptyMessage: "h-autocomplete-empty-message",
397
+ clearIcon: "h-autocomplete-clear-icon"
411
398
  };
412
- class AutoCompleteStyle extends BaseStyle {
413
- name = 'autocomplete';
414
- style = style;
415
- classes = classes;
416
- inlineStyles = inlineStyles;
417
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AutoCompleteStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
418
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AutoCompleteStyle });
419
- }
420
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AutoCompleteStyle, decorators: [{
421
- type: Injectable
422
- }] });
423
- /**
424
- *
425
- * AutoComplete is an input component that provides real-time suggestions while being typed.
426
- *
427
- * [Live Demo](https://www.primeng.org/autocomplete/)
428
- *
429
- * @module autocompletestyle
430
- *
431
- */
399
+ var AutoCompleteStyle = class AutoCompleteStyle extends BaseStyle {
400
+ name = "autocomplete";
401
+ style = style;
402
+ classes = classes;
403
+ inlineStyles = inlineStyles;
404
+ static ɵfac = i0.ɵɵngDeclareFactory({
405
+ minVersion: "12.0.0",
406
+ version: "22.2.1",
407
+ ngImport: i0,
408
+ type: AutoCompleteStyle,
409
+ deps: null,
410
+ target: i0.ɵɵFactoryTarget.Injectable
411
+ });
412
+ static ɵprov = i0.ɵɵngDeclareInjectable({
413
+ minVersion: "12.0.0",
414
+ version: "22.2.1",
415
+ ngImport: i0,
416
+ type: AutoCompleteStyle
417
+ });
418
+ };
419
+ i0.ɵɵngDeclareClassMetadata({
420
+ minVersion: "12.0.0",
421
+ version: "22.2.1",
422
+ ngImport: i0,
423
+ type: AutoCompleteStyle,
424
+ decorators: [{ type: Injectable }]
425
+ });
432
426
  var AutoCompleteClasses;
433
- (function (AutoCompleteClasses) {
434
- /**
435
- * Class name of the root element
436
- */
437
- AutoCompleteClasses["root"] = "h-autocomplete";
438
- /**
439
- * Class name of the input element
440
- */
441
- AutoCompleteClasses["pcInputText"] = "h-autocomplete-input";
442
- /**
443
- * Class name of the input multiple element
444
- */
445
- AutoCompleteClasses["inputMultiple"] = "h-autocomplete-input-multiple";
446
- /**
447
- * Class name of the chip item element
448
- */
449
- AutoCompleteClasses["chipItem"] = "h-autocomplete-chip-item";
450
- /**
451
- * Class name of the chip element
452
- */
453
- AutoCompleteClasses["pcChip"] = "h-autocomplete-chip";
454
- /**
455
- * Class name of the chip icon element
456
- */
457
- AutoCompleteClasses["chipIcon"] = "h-autocomplete-chip-icon";
458
- /**
459
- * Class name of the input chip element
460
- */
461
- AutoCompleteClasses["inputChip"] = "h-autocomplete-input-chip";
462
- /**
463
- * Class name of the loader element
464
- */
465
- AutoCompleteClasses["loader"] = "h-autocomplete-loader";
466
- /**
467
- * Class name of the dropdown element
468
- */
469
- AutoCompleteClasses["dropdown"] = "h-autocomplete-dropdown";
470
- /**
471
- * Class name of the panel element
472
- */
473
- AutoCompleteClasses["panel"] = "h-autocomplete-overlay";
474
- /**
475
- * Class name of the list element
476
- */
477
- AutoCompleteClasses["list"] = "h-autocomplete-list";
478
- /**
479
- * Class name of the option group element
480
- */
481
- AutoCompleteClasses["optionGroup"] = "h-autocomplete-option-group";
482
- /**
483
- * Class name of the option element
484
- */
485
- AutoCompleteClasses["option"] = "h-autocomplete-option";
486
- /**
487
- * Class name of the empty message element
488
- */
489
- AutoCompleteClasses["emptyMessage"] = "h-autocomplete-empty-message";
490
- /**
491
- * Class name of the clear icon
492
- */
493
- AutoCompleteClasses["clearIcon"] = "h-autocomplete-clear-icon";
427
+ (function(AutoCompleteClasses) {
428
+ AutoCompleteClasses["root"] = "h-autocomplete";
429
+ AutoCompleteClasses["pcInputText"] = "h-autocomplete-input";
430
+ AutoCompleteClasses["inputMultiple"] = "h-autocomplete-input-multiple";
431
+ AutoCompleteClasses["chipItem"] = "h-autocomplete-chip-item";
432
+ AutoCompleteClasses["pcChip"] = "h-autocomplete-chip";
433
+ AutoCompleteClasses["chipIcon"] = "h-autocomplete-chip-icon";
434
+ AutoCompleteClasses["inputChip"] = "h-autocomplete-input-chip";
435
+ AutoCompleteClasses["loader"] = "h-autocomplete-loader";
436
+ AutoCompleteClasses["dropdown"] = "h-autocomplete-dropdown";
437
+ AutoCompleteClasses["panel"] = "h-autocomplete-overlay";
438
+ AutoCompleteClasses["list"] = "h-autocomplete-list";
439
+ AutoCompleteClasses["optionGroup"] = "h-autocomplete-option-group";
440
+ AutoCompleteClasses["option"] = "h-autocomplete-option";
441
+ AutoCompleteClasses["emptyMessage"] = "h-autocomplete-empty-message";
442
+ AutoCompleteClasses["clearIcon"] = "h-autocomplete-clear-icon";
494
443
  })(AutoCompleteClasses || (AutoCompleteClasses = {}));
495
-
496
- const AUTOCOMPLETE_INSTANCE = new InjectionToken('AUTOCOMPLETE_INSTANCE');
444
+ const AUTOCOMPLETE_INSTANCE = new InjectionToken("AUTOCOMPLETE_INSTANCE");
497
445
  const AUTOCOMPLETE_VALUE_ACCESSOR = {
498
- provide: NG_VALUE_ACCESSOR,
499
- useExisting: forwardRef(() => AutoComplete),
500
- multi: true
446
+ provide: NG_VALUE_ACCESSOR,
447
+ useExisting: forwardRef(() => AutoComplete),
448
+ multi: true
501
449
  };
502
- /**
503
- * AutoComplete is an input component that provides real-time suggestions when being typed.
504
- * @group Components
505
- */
506
- class AutoComplete extends BaseInput {
507
- overlayService;
508
- zone;
509
- componentName = 'AutoComplete';
510
- $pcAutoComplete = inject(AUTOCOMPLETE_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
511
- bindDirectiveInstance = inject(Bind, { self: true });
512
- /**
513
- * Minimum number of characters to initiate a search.
514
- * @deprecated since v20.0.0, use `minQueryLength` instead.
515
- * @group Props
516
- */
517
- minLength = input(1, { ...(ngDevMode ? { debugName: "minLength" } : /* istanbul ignore next */ {}), transform: numberAttribute });
518
- /**
519
- * Minimum number of characters to initiate a search.
520
- * @group Props
521
- */
522
- minQueryLength = input(undefined, { ...(ngDevMode ? { debugName: "minQueryLength" } : /* istanbul ignore next */ {}), transform: numberAttribute });
523
- /**
524
- * Delay between keystrokes to wait before sending a query.
525
- * @group Props
526
- */
527
- delay = input(300, { ...(ngDevMode ? { debugName: "delay" } : /* istanbul ignore next */ {}), transform: numberAttribute });
528
- /**
529
- * Inline style of the overlay panel element.
530
- * @group Props
531
- */
532
- panelStyle = input(/* @ts-ignore */
533
- ...(ngDevMode ? [undefined, { debugName: "panelStyle" }] : /* istanbul ignore next */ []));
534
- /**
535
- * Style class of the component.
536
- * @deprecated since v20.0.0, use `class` instead.
537
- * @group Props
538
- */
539
- styleClass = input(/* @ts-ignore */
540
- ...(ngDevMode ? [undefined, { debugName: "styleClass" }] : /* istanbul ignore next */ []));
541
- /**
542
- * Style class of the overlay panel element.
543
- * @group Props
544
- */
545
- panelStyleClass = input(/* @ts-ignore */
546
- ...(ngDevMode ? [undefined, { debugName: "panelStyleClass" }] : /* istanbul ignore next */ []));
547
- /**
548
- * Inline style of the input field.
549
- * @group Props
550
- */
551
- inputStyle = input(/* @ts-ignore */
552
- ...(ngDevMode ? [undefined, { debugName: "inputStyle" }] : /* istanbul ignore next */ []));
553
- /**
554
- * Identifier of the focus input to match a label defined for the component.
555
- * @group Props
556
- */
557
- inputId = input(/* @ts-ignore */
558
- ...(ngDevMode ? [undefined, { debugName: "inputId" }] : /* istanbul ignore next */ []));
559
- /**
560
- * Inline style of the input field.
561
- * @group Props
562
- */
563
- inputStyleClass = input(/* @ts-ignore */
564
- ...(ngDevMode ? [undefined, { debugName: "inputStyleClass" }] : /* istanbul ignore next */ []));
565
- /**
566
- * Hint text for the input field.
567
- * @group Props
568
- */
569
- placeholder = input(/* @ts-ignore */
570
- ...(ngDevMode ? [undefined, { debugName: "placeholder" }] : /* istanbul ignore next */ []));
571
- /**
572
- * When present, it specifies that the input cannot be typed.
573
- * @group Props
574
- */
575
- readonly = input(undefined, { ...(ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
576
- /**
577
- * Maximum height of the suggestions panel.
578
- * @group Props
579
- */
580
- scrollHeight = input('200px', /* @ts-ignore */
581
- ...(ngDevMode ? [{ debugName: "scrollHeight" }] : /* istanbul ignore next */ []));
582
- /**
583
- * Defines if data is loaded and interacted with in lazy manner.
584
- * @group Props
585
- */
586
- lazy = input(false, { ...(ngDevMode ? { debugName: "lazy" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
587
- /**
588
- * Whether the data should be loaded on demand during scroll.
589
- * @group Props
590
- */
591
- virtualScroll = input(undefined, { ...(ngDevMode ? { debugName: "virtualScroll" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
592
- /**
593
- * Height of an item in the list for VirtualScrolling.
594
- * @group Props
595
- */
596
- virtualScrollItemSize = input(undefined, { ...(ngDevMode ? { debugName: "virtualScrollItemSize" } : /* istanbul ignore next */ {}), transform: numberAttribute });
597
- /**
598
- * Whether to use the scroller feature. The properties of scroller component can be used like an object in it.
599
- * @group Props
600
- */
601
- virtualScrollOptions = input(/* @ts-ignore */
602
- ...(ngDevMode ? [undefined, { debugName: "virtualScrollOptions" }] : /* istanbul ignore next */ []));
603
- /**
604
- * When enabled, highlights the first item in the list by default.
605
- * @group Props
606
- */
607
- autoHighlight = input(undefined, { ...(ngDevMode ? { debugName: "autoHighlight" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
608
- /**
609
- * When present, autocomplete clears the manual input if it does not match of the suggestions to force only accepting values from the suggestions.
610
- * @group Props
611
- */
612
- forceSelection = input(undefined, { ...(ngDevMode ? { debugName: "forceSelection" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
613
- /**
614
- * Type of the input, defaults to "text".
615
- * @group Props
616
- */
617
- type = input('text', /* @ts-ignore */
618
- ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
619
- /**
620
- * Whether to automatically manage layering.
621
- * @group Props
622
- */
623
- autoZIndex = input(true, { ...(ngDevMode ? { debugName: "autoZIndex" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
624
- /**
625
- * Base zIndex value to use in layering.
626
- * @group Props
627
- */
628
- baseZIndex = input(0, { ...(ngDevMode ? { debugName: "baseZIndex" } : /* istanbul ignore next */ {}), transform: numberAttribute });
629
- /**
630
- * Defines a string that labels the input for accessibility.
631
- * @group Props
632
- */
633
- ariaLabel = input(/* @ts-ignore */
634
- ...(ngDevMode ? [undefined, { debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
635
- /**
636
- * Defines a string that labels the dropdown button for accessibility.
637
- * @group Props
638
- */
639
- dropdownAriaLabel = input(/* @ts-ignore */
640
- ...(ngDevMode ? [undefined, { debugName: "dropdownAriaLabel" }] : /* istanbul ignore next */ []));
641
- /**
642
- * Specifies one or more IDs in the DOM that labels the input field.
643
- * @group Props
644
- */
645
- ariaLabelledBy = input(/* @ts-ignore */
646
- ...(ngDevMode ? [undefined, { debugName: "ariaLabelledBy" }] : /* istanbul ignore next */ []));
647
- /**
648
- * Icon class of the dropdown icon.
649
- * @group Props
650
- */
651
- dropdownIcon = input(undefined, /* @ts-ignore */
652
- ...(ngDevMode ? [{ debugName: "dropdownIcon" }] : /* istanbul ignore next */ []));
653
- /**
654
- * Ensures uniqueness of selected items on multiple mode.
655
- * @group Props
656
- */
657
- unique = input(true, { ...(ngDevMode ? { debugName: "unique" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
658
- /**
659
- * Whether to display options as grouped when nested options are provided.
660
- * @group Props
661
- */
662
- group = input(undefined, { ...(ngDevMode ? { debugName: "group" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
663
- /**
664
- * Whether to run a query when input receives focus.
665
- * @group Props
666
- */
667
- completeOnFocus = input(false, { ...(ngDevMode ? { debugName: "completeOnFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
668
- /**
669
- * When enabled, a clear icon is displayed to clear the value.
670
- * @group Props
671
- */
672
- showClear = input(false, { ...(ngDevMode ? { debugName: "showClear" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
673
- /**
674
- * Displays a button next to the input field when enabled.
675
- * @group Props
676
- */
677
- dropdown = input(undefined, { ...(ngDevMode ? { debugName: "dropdown" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
678
- /**
679
- * Whether to show the empty message or not.
680
- * @group Props
681
- */
682
- showEmptyMessage = input(true, { ...(ngDevMode ? { debugName: "showEmptyMessage" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
683
- /**
684
- * Specifies the behavior dropdown button. Default "blank" mode sends an empty string and "current" mode sends the input value.
685
- * @group Props
686
- */
687
- dropdownMode = input('blank', /* @ts-ignore */
688
- ...(ngDevMode ? [{ debugName: "dropdownMode" }] : /* istanbul ignore next */ []));
689
- /**
690
- * Specifies if multiple values can be selected.
691
- * @group Props
692
- */
693
- multiple = input(undefined, { ...(ngDevMode ? { debugName: "multiple" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
694
- /**
695
- * When enabled, the input value is added to the selected items on tab key press when multiple is true and typeahead is false.
696
- * @group Props
697
- */
698
- addOnTab = input(false, { ...(ngDevMode ? { debugName: "addOnTab" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
699
- /**
700
- * Index of the element in tabbing order.
701
- * @group Props
702
- */
703
- tabindex = input(undefined, { ...(ngDevMode ? { debugName: "tabindex" } : /* istanbul ignore next */ {}), transform: numberAttribute });
704
- /**
705
- * A property to uniquely identify a value in options.
706
- * @group Props
707
- */
708
- dataKey = input(/* @ts-ignore */
709
- ...(ngDevMode ? [undefined, { debugName: "dataKey" }] : /* istanbul ignore next */ []));
710
- /**
711
- * Text to display when there is no data. Defaults to global value in i18n translation configuration.
712
- * @group Props
713
- */
714
- emptyMessage = input(/* @ts-ignore */
715
- ...(ngDevMode ? [undefined, { debugName: "emptyMessage" }] : /* istanbul ignore next */ []));
716
- /**
717
- * Transition options of the show animation.
718
- * @group Props
719
- * @deprecated since v21.0.0, use `motionOptions` instead.
720
- */
721
- showTransitionOptions = input('.12s cubic-bezier(0, 0, 0.2, 1)', /* @ts-ignore */
722
- ...(ngDevMode ? [{ debugName: "showTransitionOptions" }] : /* istanbul ignore next */ []));
723
- /**
724
- * Transition options of the hide animation.
725
- * @group Props
726
- * @deprecated since v21.0.0, use `motionOptions` instead.
727
- */
728
- hideTransitionOptions = input('.1s linear', /* @ts-ignore */
729
- ...(ngDevMode ? [{ debugName: "hideTransitionOptions" }] : /* istanbul ignore next */ []));
730
- /**
731
- * When present, it specifies that the component should automatically get focus on load.
732
- * @group Props
733
- */
734
- autofocus = input(undefined, { ...(ngDevMode ? { debugName: "autofocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
735
- /**
736
- * Used to define a string that autocomplete attribute the current element.
737
- * @group Props
738
- */
739
- autocomplete = input('off', /* @ts-ignore */
740
- ...(ngDevMode ? [{ debugName: "autocomplete" }] : /* istanbul ignore next */ []));
741
- /**
742
- * Name of the options field of an option group.
743
- * @group Props
744
- */
745
- optionGroupChildren = input('items', /* @ts-ignore */
746
- ...(ngDevMode ? [{ debugName: "optionGroupChildren" }] : /* istanbul ignore next */ []));
747
- /**
748
- * Name of the label field of an option group.
749
- * @group Props
750
- */
751
- optionGroupLabel = input('label', /* @ts-ignore */
752
- ...(ngDevMode ? [{ debugName: "optionGroupLabel" }] : /* istanbul ignore next */ []));
753
- /**
754
- * Options for the overlay element.
755
- * @group Props
756
- */
757
- overlayOptions = input(/* @ts-ignore */
758
- ...(ngDevMode ? [undefined, { debugName: "overlayOptions" }] : /* istanbul ignore next */ []));
759
- /**
760
- * An array of suggestions to display.
761
- * @group Props
762
- */
763
- suggestions = input(null, /* @ts-ignore */
764
- ...(ngDevMode ? [{ debugName: "suggestions" }] : /* istanbul ignore next */ []));
765
- /**
766
- * Property name or getter function to use as the label of an option.
767
- * @group Props
768
- */
769
- optionLabel = input(/* @ts-ignore */
770
- ...(ngDevMode ? [undefined, { debugName: "optionLabel" }] : /* istanbul ignore next */ []));
771
- /**
772
- * Property name or getter function to use as the value of an option.
773
- * @group Props
774
- */
775
- optionValue = input(/* @ts-ignore */
776
- ...(ngDevMode ? [undefined, { debugName: "optionValue" }] : /* istanbul ignore next */ []));
777
- /**
778
- * Unique identifier of the component.
779
- * @group Props
780
- */
781
- id = model(undefined, /* @ts-ignore */
782
- ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
783
- /**
784
- * Text to display when the search is active. Defaults to global value in i18n translation configuration.
785
- * @group Props
786
- * @defaultValue '{0} results are available'
787
- */
788
- searchMessage = input(/* @ts-ignore */
789
- ...(ngDevMode ? [undefined, { debugName: "searchMessage" }] : /* istanbul ignore next */ []));
790
- /**
791
- * Text to display when filtering does not return any results. Defaults to global value in i18n translation configuration.
792
- * @group Props
793
- * @defaultValue 'No selected item'
794
- */
795
- emptySelectionMessage = input(/* @ts-ignore */
796
- ...(ngDevMode ? [undefined, { debugName: "emptySelectionMessage" }] : /* istanbul ignore next */ []));
797
- /**
798
- * Text to be displayed in hidden accessible field when options are selected. Defaults to global value in i18n translation configuration.
799
- * @group Props
800
- * @defaultValue '{0} items selected'
801
- */
802
- selectionMessage = input(/* @ts-ignore */
803
- ...(ngDevMode ? [undefined, { debugName: "selectionMessage" }] : /* istanbul ignore next */ []));
804
- /**
805
- * Whether to focus on the first visible or selected element when the overlay panel is shown.
806
- * @group Props
807
- */
808
- autoOptionFocus = input(false, { ...(ngDevMode ? { debugName: "autoOptionFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
809
- /**
810
- * When enabled, the focused option is selected.
811
- * @group Props
812
- */
813
- selectOnFocus = input(undefined, { ...(ngDevMode ? { debugName: "selectOnFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
814
- /**
815
- * Locale to use in searching. The default locale is the host environment's current locale.
816
- * @group Props
817
- */
818
- searchLocale = input(undefined, { ...(ngDevMode ? { debugName: "searchLocale" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
819
- /**
820
- * Property name or getter function to use as the disabled flag of an option, defaults to false when not defined.
821
- * @group Props
822
- */
823
- optionDisabled = input(/* @ts-ignore */
824
- ...(ngDevMode ? [undefined, { debugName: "optionDisabled" }] : /* istanbul ignore next */ []));
825
- /**
826
- * When enabled, the hovered option will be focused.
827
- * @group Props
828
- */
829
- focusOnHover = input(true, { ...(ngDevMode ? { debugName: "focusOnHover" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
830
- /**
831
- * Whether typeahead is active or not.
832
- * @defaultValue true
833
- * @group Props
834
- */
835
- typeahead = input(true, { ...(ngDevMode ? { debugName: "typeahead" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
836
- /**
837
- * Whether to add an item on blur event if the input has value and typeahead is false with multiple mode.
838
- * @defaultValue false
839
- * @group Props
840
- */
841
- addOnBlur = input(false, { ...(ngDevMode ? { debugName: "addOnBlur" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
842
- /**
843
- * Separator char to add item when typeahead is false and multiple mode is enabled.
844
- * @group Props
845
- */
846
- separator = input(/* @ts-ignore */
847
- ...(ngDevMode ? [undefined, { debugName: "separator" }] : /* istanbul ignore next */ []));
848
- /**
849
- * Target element to attach the overlay, valid values are "body" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]="mydiv" for a div element having #mydiv as variable name).
850
- * @defaultValue 'self'
851
- * @group Props
852
- */
853
- appendTo = input(undefined, /* @ts-ignore */
854
- ...(ngDevMode ? [{ debugName: "appendTo" }] : /* istanbul ignore next */ []));
855
- /**
856
- * The motion options.
857
- * @group Props
858
- */
859
- motionOptions = input(undefined, /* @ts-ignore */
860
- ...(ngDevMode ? [{ debugName: "motionOptions" }] : /* istanbul ignore next */ []));
861
- /**
862
- * Callback to invoke to search for suggestions.
863
- * @param {AutoCompleteCompleteEvent} event - Custom complete event.
864
- * @group Emits
865
- */
866
- completeMethod = output();
867
- /**
868
- * Callback to invoke when a suggestion is selected.
869
- * @param {AutoCompleteSelectEvent} event - custom select event.
870
- * @group Emits
871
- */
872
- onSelect = output();
873
- /**
874
- * Callback to invoke when a selected value is removed.
875
- * @param {AutoCompleteUnselectEvent} event - custom unselect event.
876
- * @group Emits
877
- */
878
- onUnselect = output();
879
- /**
880
- * Callback to invoke when an item is added via addOnBlur or separator features.
881
- * @param {AutoCompleteAddEvent} event - Custom add event.
882
- * @group Emits
883
- */
884
- onAdd = output();
885
- /**
886
- * Callback to invoke when the component receives focus.
887
- * @param {Event} event - Browser event.
888
- * @group Emits
889
- */
890
- onFocus = output();
891
- /**
892
- * Callback to invoke when the component loses focus.
893
- * @param {Event} event - Browser event.
894
- * @group Emits
895
- */
896
- onBlur = output();
897
- /**
898
- * Callback to invoke to when dropdown button is clicked.
899
- * @param {AutoCompleteDropdownClickEvent} event - custom dropdown click event.
900
- * @group Emits
901
- */
902
- onDropdownClick = output();
903
- /**
904
- * Callback to invoke when clear button is clicked.
905
- * @param {Event} event - Browser event.
906
- * @group Emits
907
- */
908
- onClear = output();
909
- /**
910
- * Callback to invoke on input key down.
911
- * @param {KeyboardEvent} event - Keyboard event.
912
- * @group Emits
913
- */
914
- onInputKeydown = output();
915
- /**
916
- * Callback to invoke on input key up.
917
- * @param {KeyboardEvent} event - Keyboard event.
918
- * @group Emits
919
- */
920
- onKeyUp = output();
921
- /**
922
- * Callback to invoke on overlay is shown.
923
- * @param {Event} event - Browser event.
924
- * @group Emits
925
- */
926
- onShow = output();
927
- /**
928
- * Callback to invoke on overlay is hidden.
929
- * @param {Event} event - Browser event.
930
- * @group Emits
931
- */
932
- onHide = output();
933
- /**
934
- * Callback to invoke on lazy load data.
935
- * @param {AutoCompleteLazyLoadEvent} event - Lazy load event.
936
- * @group Emits
937
- */
938
- onLazyLoad = output();
939
- inputEL = viewChild('focusInput', /* @ts-ignore */
940
- ...(ngDevMode ? [{ debugName: "inputEL" }] : /* istanbul ignore next */ []));
941
- multiInputEl = viewChild('multiIn', /* @ts-ignore */
942
- ...(ngDevMode ? [{ debugName: "multiInputEl" }] : /* istanbul ignore next */ []));
943
- multiContainerEL = viewChild('multiContainer', /* @ts-ignore */
944
- ...(ngDevMode ? [{ debugName: "multiContainerEL" }] : /* istanbul ignore next */ []));
945
- dropdownButton = viewChild('ddBtn', /* @ts-ignore */
946
- ...(ngDevMode ? [{ debugName: "dropdownButton" }] : /* istanbul ignore next */ []));
947
- itemsViewChild = viewChild('items', /* @ts-ignore */
948
- ...(ngDevMode ? [{ debugName: "itemsViewChild" }] : /* istanbul ignore next */ []));
949
- scroller = viewChild('scroller', /* @ts-ignore */
950
- ...(ngDevMode ? [{ debugName: "scroller" }] : /* istanbul ignore next */ []));
951
- overlayViewChild = viewChild('overlay', /* @ts-ignore */
952
- ...(ngDevMode ? [{ debugName: "overlayViewChild" }] : /* istanbul ignore next */ []));
953
- itemsWrapper;
954
- /**
955
- * Custom item template.
956
- * @group Templates
957
- */
958
- itemTemplate = contentChild('item', /* @ts-ignore */
959
- ...(ngDevMode ? [{ debugName: "itemTemplate" }] : /* istanbul ignore next */ []));
960
- /**
961
- * Custom empty message template.
962
- * @group Templates
963
- */
964
- emptyTemplate = contentChild('empty', /* @ts-ignore */
965
- ...(ngDevMode ? [{ debugName: "emptyTemplate" }] : /* istanbul ignore next */ []));
966
- /**
967
- * Custom header template.
968
- * @group Templates
969
- */
970
- headerTemplate = contentChild('header', /* @ts-ignore */
971
- ...(ngDevMode ? [{ debugName: "headerTemplate" }] : /* istanbul ignore next */ []));
972
- /**
973
- * Custom footer template.
974
- * @group Templates
975
- */
976
- footerTemplate = contentChild('footer', /* @ts-ignore */
977
- ...(ngDevMode ? [{ debugName: "footerTemplate" }] : /* istanbul ignore next */ []));
978
- /**
979
- * Custom selected item template.
980
- * @group Templates
981
- */
982
- selectedItemTemplate = contentChild('selecteditem', /* @ts-ignore */
983
- ...(ngDevMode ? [{ debugName: "selectedItemTemplate" }] : /* istanbul ignore next */ []));
984
- /**
985
- * Custom group template.
986
- * @group Templates
987
- */
988
- groupTemplate = contentChild('group', /* @ts-ignore */
989
- ...(ngDevMode ? [{ debugName: "groupTemplate" }] : /* istanbul ignore next */ []));
990
- /**
991
- * Custom loader template.
992
- * @group Templates
993
- */
994
- loaderTemplate = contentChild('loader', /* @ts-ignore */
995
- ...(ngDevMode ? [{ debugName: "loaderTemplate" }] : /* istanbul ignore next */ []));
996
- /**
997
- * Custom remove icon template.
998
- * @group Templates
999
- */
1000
- removeIconTemplate = contentChild('removeicon', /* @ts-ignore */
1001
- ...(ngDevMode ? [{ debugName: "removeIconTemplate" }] : /* istanbul ignore next */ []));
1002
- /**
1003
- * Custom loading icon template.
1004
- * @group Templates
1005
- */
1006
- loadingIconTemplate = contentChild('loadingicon', /* @ts-ignore */
1007
- ...(ngDevMode ? [{ debugName: "loadingIconTemplate" }] : /* istanbul ignore next */ []));
1008
- /**
1009
- * Custom clear icon template.
1010
- * @group Templates
1011
- */
1012
- clearIconTemplate = contentChild('clearicon', /* @ts-ignore */
1013
- ...(ngDevMode ? [{ debugName: "clearIconTemplate" }] : /* istanbul ignore next */ []));
1014
- /**
1015
- * Custom dropdown icon template.
1016
- * @group Templates
1017
- */
1018
- dropdownIconTemplate = contentChild('dropdownicon', /* @ts-ignore */
1019
- ...(ngDevMode ? [{ debugName: "dropdownIconTemplate" }] : /* istanbul ignore next */ []));
1020
- onHostClick(event) {
1021
- this.onContainerClick(event);
1022
- }
1023
- value;
1024
- _suggestions = signal(null, /* @ts-ignore */
1025
- ...(ngDevMode ? [{ debugName: "_suggestions" }] : /* istanbul ignore next */ []));
1026
- timeout;
1027
- overlayVisible;
1028
- suggestionsUpdated;
1029
- highlightOption;
1030
- highlightOptionChanged;
1031
- focused = false;
1032
- loading;
1033
- scrollHandler;
1034
- listId;
1035
- searchTimeout;
1036
- dirty = false;
1037
- _itemTemplate;
1038
- _groupTemplate;
1039
- _selectedItemTemplate;
1040
- _headerTemplate;
1041
- _emptyTemplate;
1042
- _footerTemplate;
1043
- _loaderTemplate;
1044
- _removeIconTemplate;
1045
- _loadingIconTemplate;
1046
- _clearIconTemplate;
1047
- _dropdownIconTemplate;
1048
- focusedMultipleOptionIndex = signal(-1, /* @ts-ignore */
1049
- ...(ngDevMode ? [{ debugName: "focusedMultipleOptionIndex" }] : /* istanbul ignore next */ []));
1050
- focusedOptionIndex = signal(-1, /* @ts-ignore */
1051
- ...(ngDevMode ? [{ debugName: "focusedOptionIndex" }] : /* istanbul ignore next */ []));
1052
- _componentStyle = inject(AutoCompleteStyle);
1053
- $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), /* @ts-ignore */
1054
- ...(ngDevMode ? [{ debugName: "$appendTo" }] : /* istanbul ignore next */ []));
1055
- visibleOptions = computed(() => {
1056
- return this.group() ? this.flatOptions(this._suggestions()) : this._suggestions() || [];
1057
- }, /* @ts-ignore */
1058
- ...(ngDevMode ? [{ debugName: "visibleOptions" }] : /* istanbul ignore next */ []));
1059
- inputValue = computed(() => {
1060
- const modelValue = this.modelValue();
1061
- const selectedOption = this.optionValueSelected ? (this.suggestions() || []).find((option) => equals(option, modelValue, this.equalityKey())) : modelValue;
1062
- if (isNotEmpty(modelValue)) {
1063
- if (typeof modelValue === 'object' || this.optionValueSelected) {
1064
- const label = this.getOptionLabel(selectedOption);
1065
- return label != null ? label : modelValue;
1066
- }
1067
- else {
1068
- return modelValue;
1069
- }
1070
- }
1071
- else {
1072
- return '';
1073
- }
1074
- }, /* @ts-ignore */
1075
- ...(ngDevMode ? [{ debugName: "inputValue" }] : /* istanbul ignore next */ []));
1076
- get focusedMultipleOptionId() {
1077
- return this.focusedMultipleOptionIndex() !== -1 ? `${this.id()}_multiple_option_${this.focusedMultipleOptionIndex()}` : null;
1078
- }
1079
- get focusedOptionId() {
1080
- return this.focusedOptionIndex() !== -1 ? `${this.id()}_${this.focusedOptionIndex()}` : null;
1081
- }
1082
- get searchResultMessageText() {
1083
- return isNotEmpty(this.visibleOptions()) && this.overlayVisible ? this.searchMessageText.replaceAll('{0}', this.visibleOptions().length) : this.emptySearchMessageText;
1084
- }
1085
- get searchMessageText() {
1086
- return this.searchMessage() || this.config.translation.searchMessage || '';
1087
- }
1088
- get emptySearchMessageText() {
1089
- return this.emptyMessage() || this.config.translation.emptySearchMessage || '';
1090
- }
1091
- get selectionMessageText() {
1092
- return this.selectionMessage() || this.config.translation.selectionMessage || '';
1093
- }
1094
- get emptySelectionMessageText() {
1095
- return this.emptySelectionMessage() || this.config.translation.emptySelectionMessage || '';
1096
- }
1097
- get selectedMessageText() {
1098
- return this.hasSelectedOption() ? this.selectionMessageText.replaceAll('{0}', this.multiple() ? this.modelValue()?.length : '1') : this.emptySelectionMessageText;
1099
- }
1100
- get ariaSetSize() {
1101
- return this.visibleOptions().filter((option) => !this.isOptionGroup(option)).length;
1102
- }
1103
- get listLabel() {
1104
- return this.config.getTranslation(TranslationKeys.ARIA)['listLabel'];
1105
- }
1106
- get virtualScrollerDisabled() {
1107
- return !this.virtualScroll();
1108
- }
1109
- get optionValueSelected() {
1110
- return typeof this.modelValue() === 'string' && this.optionValue();
1111
- }
1112
- chipItemClass(index) {
1113
- return this._componentStyle.classes.chipItem({ instance: this, i: index });
1114
- }
1115
- constructor(overlayService, zone) {
1116
- super();
1117
- this.overlayService = overlayService;
1118
- this.zone = zone;
1119
- effect(() => {
1120
- const value = this.suggestions();
1121
- this._suggestions.set(value);
1122
- this.handleSuggestionsChange();
1123
- });
1124
- }
1125
- onInit() {
1126
- if (!this.id())
1127
- this.id.set(uuid('pn_id_'));
1128
- this.cd.detectChanges();
1129
- }
1130
- templates = contentChildren(HelixTemplate, /* @ts-ignore */
1131
- ...(ngDevMode ? [{ debugName: "templates" }] : /* istanbul ignore next */ []));
1132
- onAfterContentInit() {
1133
- this.templates().forEach((item) => {
1134
- switch (item.getType()) {
1135
- case 'item':
1136
- this._itemTemplate = item.template;
1137
- break;
1138
- case 'group':
1139
- this._groupTemplate = item.template;
1140
- break;
1141
- case 'selecteditem':
1142
- this._selectedItemTemplate = item.template;
1143
- break;
1144
- case 'selectedItem':
1145
- this._selectedItemTemplate = item.template;
1146
- break;
1147
- case 'header':
1148
- this._headerTemplate = item.template;
1149
- break;
1150
- case 'empty':
1151
- this._emptyTemplate = item.template;
1152
- break;
1153
- case 'footer':
1154
- this._footerTemplate = item.template;
1155
- break;
1156
- case 'loader':
1157
- this._loaderTemplate = item.template;
1158
- break;
1159
- case 'removetokenicon':
1160
- this._removeIconTemplate = item.template;
1161
- break;
1162
- case 'loadingicon':
1163
- this._loadingIconTemplate = item.template;
1164
- break;
1165
- case 'clearicon':
1166
- this._clearIconTemplate = item.template;
1167
- break;
1168
- case 'dropdownicon':
1169
- this._dropdownIconTemplate = item.template;
1170
- break;
1171
- default:
1172
- this._itemTemplate = item.template;
1173
- break;
1174
- }
1175
- });
1176
- }
1177
- onAfterViewChecked() {
1178
- this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
1179
- //Use timeouts as since Angular 4.2, AfterViewChecked is broken and not called after panel is updated
1180
- if (this.suggestionsUpdated && this.overlayViewChild()) {
1181
- this.zone.runOutsideAngular(() => {
1182
- setTimeout(() => {
1183
- if (this.overlayViewChild()) {
1184
- this.overlayViewChild().alignOverlay();
1185
- }
1186
- }, 1);
1187
- this.suggestionsUpdated = false;
1188
- });
1189
- }
1190
- }
1191
- handleSuggestionsChange() {
1192
- if (this.loading) {
1193
- this._suggestions()?.length > 0 || this.showEmptyMessage() || !!this.emptyTemplate() ? this.show() : this.hide();
1194
- const focusedOptionIndex = this.overlayVisible && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
1195
- this.focusedOptionIndex.set(focusedOptionIndex);
1196
- this.suggestionsUpdated = true;
1197
- this.loading = false;
1198
- this.cd.markForCheck();
1199
- }
1200
- }
1201
- flatOptions(options) {
1202
- return (options || []).reduce((result, option, index) => {
1203
- result.push({ optionGroup: option, group: true, index });
1204
- const optionGroupChildren = this.getOptionGroupChildren(option);
1205
- optionGroupChildren && optionGroupChildren.forEach((o) => result.push(o));
1206
- return result;
1207
- }, []);
1208
- }
1209
- isOptionGroup(option) {
1210
- return this.optionGroupLabel() && option.optionGroup && option.group;
1211
- }
1212
- findFirstOptionIndex() {
1213
- return this.visibleOptions().findIndex((option) => this.isValidOption(option));
1214
- }
1215
- findLastOptionIndex() {
1216
- return findLastIndex(this.visibleOptions(), (option) => this.isValidOption(option));
1217
- }
1218
- findFirstFocusedOptionIndex() {
1219
- const selectedIndex = this.findSelectedOptionIndex();
1220
- return selectedIndex < 0 ? this.findFirstOptionIndex() : selectedIndex;
1221
- }
1222
- findLastFocusedOptionIndex() {
1223
- const selectedIndex = this.findSelectedOptionIndex();
1224
- return selectedIndex < 0 ? this.findLastOptionIndex() : selectedIndex;
1225
- }
1226
- findSelectedOptionIndex() {
1227
- return this.hasSelectedOption() ? this.visibleOptions().findIndex((option) => this.isValidSelectedOption(option)) : -1;
1228
- }
1229
- findNextOptionIndex(index) {
1230
- const matchedOptionIndex = index < this.visibleOptions().length - 1
1231
- ? this.visibleOptions()
1232
- .slice(index + 1)
1233
- .findIndex((option) => this.isValidOption(option))
1234
- : -1;
1235
- return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : index;
1236
- }
1237
- findPrevOptionIndex(index) {
1238
- const matchedOptionIndex = index > 0 ? findLastIndex(this.visibleOptions().slice(0, index), (option) => this.isValidOption(option)) : -1;
1239
- return matchedOptionIndex > -1 ? matchedOptionIndex : index;
1240
- }
1241
- isValidSelectedOption(option) {
1242
- return this.isValidOption(option) && this.isSelected(option);
1243
- }
1244
- isValidOption(option) {
1245
- return option && !(this.isOptionDisabled(option) || this.isOptionGroup(option));
1246
- }
1247
- isOptionDisabled(option) {
1248
- const optionDisabled = this.optionDisabled();
1249
- return optionDisabled ? resolveFieldData(option, optionDisabled) : false;
1250
- }
1251
- isSelected(option) {
1252
- if (this.multiple()) {
1253
- return this.unique() ? this.modelValue()?.some((model) => equals(model, option, this.equalityKey())) : false;
1254
- }
1255
- return equals(this.modelValue(), option, this.equalityKey());
1256
- }
1257
- isOptionMatched(option, value) {
1258
- return this.isValidOption(option) && this.getOptionLabel(option).toLocaleLowerCase(this.searchLocale()) === value.toLocaleLowerCase(this.searchLocale());
1259
- }
1260
- isInputClicked(event) {
1261
- return event.target === this.inputEL()?.nativeElement;
1262
- }
1263
- isDropdownClicked(event) {
1264
- const ddBtn = this.dropdownButton();
1265
- return ddBtn?.nativeElement ? event.target === ddBtn.nativeElement || ddBtn.nativeElement.contains(event.target) : false;
1266
- }
1267
- equalityKey() {
1268
- return this.optionValue() ? undefined : this.dataKey();
1269
- }
1270
- onContainerClick(event) {
1271
- if (this.$disabled() || this.loading || this.isInputClicked(event) || this.isDropdownClicked(event)) {
1272
- return;
1273
- }
1274
- const ovc = this.overlayViewChild();
1275
- if (!ovc || !ovc.overlayViewChild()?.nativeElement.contains(event.target)) {
1276
- focus(this.inputEL()?.nativeElement);
1277
- }
1278
- }
1279
- handleDropdownClick(event) {
1280
- let query = undefined;
1281
- const inputEl = this.inputEL();
1282
- if (this.overlayVisible) {
1283
- this.hide(true);
1284
- }
1285
- else {
1286
- focus(inputEl?.nativeElement);
1287
- query = inputEl?.nativeElement?.value;
1288
- const dropdownMode = this.dropdownMode();
1289
- if (dropdownMode === 'blank')
1290
- this.search(event, '', 'dropdown');
1291
- else if (dropdownMode === 'current')
1292
- this.search(event, query, 'dropdown');
1293
- }
1294
- this.onDropdownClick.emit({ originalEvent: event, query });
1295
- }
1296
- onInput(event) {
1297
- if (this.typeahead()) {
1298
- const _minLength = this.minQueryLength() || this.minLength();
1299
- if (this.searchTimeout) {
1300
- clearTimeout(this.searchTimeout);
1301
- }
1302
- let query = event.target.value;
1303
- if (this.maxlength() !== null) {
1304
- query = query.split('').slice(0, this.maxlength()).join('');
1305
- }
1306
- const multiple = this.multiple();
1307
- if (!multiple && !this.forceSelection()) {
1308
- this.updateModel(query);
1309
- }
1310
- if (query.length === 0 && !multiple) {
1311
- this.onClear.emit(undefined);
1312
- setTimeout(() => {
1313
- this.hide();
1314
- }, this.delay() / 2);
1315
- }
1316
- else {
1317
- if (query.length >= _minLength) {
1318
- this.focusedOptionIndex.set(-1);
1319
- this.searchTimeout = setTimeout(() => {
1320
- this.search(event, query, 'input');
1321
- }, this.delay());
1322
- }
1323
- else {
1324
- this.hide();
1325
- }
1326
- }
1327
- }
1328
- }
1329
- onInputChange(event) {
1330
- this.updateInputWithForceSelection(event);
1331
- }
1332
- onInputFocus(event) {
1333
- if (this.$disabled()) {
1334
- // For ScreenReaders
1335
- return;
1336
- }
1337
- if (!this.dirty && this.completeOnFocus()) {
1338
- this.search(event, event.target.value, 'focus');
1339
- }
1340
- this.dirty = true;
1341
- this.focused = true;
1342
- const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.overlayVisible && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
1343
- this.focusedOptionIndex.set(focusedOptionIndex);
1344
- this.overlayVisible && this.scrollInView(this.focusedOptionIndex());
1345
- this.onFocus.emit(event);
1346
- }
1347
- onMultipleContainerFocus(event) {
1348
- if (this.$disabled()) {
1349
- // For ScreenReaders
1350
- return;
1351
- }
1352
- this.focused = true;
1353
- }
1354
- onMultipleContainerBlur(event) {
1355
- this.focusedMultipleOptionIndex.set(-1);
1356
- this.focused = false;
1357
- }
1358
- onMultipleContainerKeyDown(event) {
1359
- if (this.$disabled()) {
1360
- event.preventDefault();
1361
- return;
1362
- }
1363
- switch (event.code) {
1364
- case 'ArrowLeft':
1365
- this.onArrowLeftKeyOnMultiple(event);
1366
- break;
1367
- case 'ArrowRight':
1368
- this.onArrowRightKeyOnMultiple(event);
1369
- break;
1370
- case 'Backspace':
1371
- this.onBackspaceKeyOnMultiple(event);
1372
- break;
1373
- default:
1374
- break;
1375
- }
1376
- }
1377
- onInputBlur(event) {
1378
- this.dirty = false;
1379
- this.focused = false;
1380
- this.focusedOptionIndex.set(-1);
1381
- if (this.addOnBlur() && this.multiple() && !this.typeahead()) {
1382
- const multiInput = this.multiInputEl();
1383
- const inputValue = (multiInput?.nativeElement?.value || event.target.value || '').trim();
1384
- if (inputValue && !this.isSelected(inputValue)) {
1385
- this.updateModel([...(this.modelValue() || []), inputValue]);
1386
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1387
- if (multiInput?.nativeElement) {
1388
- multiInput.nativeElement.value = '';
1389
- }
1390
- else {
1391
- event.target.value = '';
1392
- }
1393
- }
1394
- }
1395
- this.onModelTouched();
1396
- this.onBlur.emit(event);
1397
- }
1398
- onInputPaste(event) {
1399
- const separator = this.separator();
1400
- if (separator && this.multiple() && !this.typeahead()) {
1401
- const pastedData = (event.clipboardData || window['clipboardData'])?.getData('Text');
1402
- if (pastedData) {
1403
- const values = pastedData.split(separator);
1404
- const newValues = [...(this.modelValue() || [])];
1405
- values.forEach((value) => {
1406
- const trimmedValue = value.trim();
1407
- if (trimmedValue && !this.isSelected(trimmedValue)) {
1408
- newValues.push(trimmedValue);
1409
- }
1410
- });
1411
- if (newValues.length > (this.modelValue() || []).length) {
1412
- const addedValues = newValues.slice((this.modelValue() || []).length);
1413
- this.updateModel(newValues);
1414
- addedValues.forEach((addedValue) => {
1415
- this.onAdd.emit({ originalEvent: event, value: addedValue });
1416
- });
1417
- const multiInput = this.multiInputEl();
1418
- if (multiInput?.nativeElement) {
1419
- multiInput.nativeElement.value = '';
1420
- }
1421
- else {
1422
- event.target.value = '';
1423
- }
1424
- event.preventDefault();
1425
- }
1426
- }
1427
- }
1428
- else {
1429
- this.onKeyDown(event);
1430
- }
1431
- }
1432
- onInputKeyUp(event) {
1433
- this.onKeyUp.emit(event);
1434
- }
1435
- onKeyDown(event) {
1436
- if (this.$disabled()) {
1437
- event.preventDefault();
1438
- return;
1439
- }
1440
- // Emit keydown event for external handling
1441
- this.onInputKeydown.emit(event);
1442
- switch (event.code) {
1443
- case 'ArrowDown':
1444
- this.onArrowDownKey(event);
1445
- break;
1446
- case 'ArrowUp':
1447
- this.onArrowUpKey(event);
1448
- break;
1449
- case 'ArrowLeft':
1450
- this.onArrowLeftKey(event);
1451
- break;
1452
- case 'ArrowRight':
1453
- this.onArrowRightKey(event);
1454
- break;
1455
- case 'Home':
1456
- this.onHomeKey(event);
1457
- break;
1458
- case 'End':
1459
- this.onEndKey(event);
1460
- break;
1461
- case 'PageDown':
1462
- this.onPageDownKey(event);
1463
- break;
1464
- case 'PageUp':
1465
- this.onPageUpKey(event);
1466
- break;
1467
- case 'Enter':
1468
- case 'NumpadEnter':
1469
- this.onEnterKey(event);
1470
- break;
1471
- case 'Escape':
1472
- this.onEscapeKey(event);
1473
- break;
1474
- case 'Tab':
1475
- this.onTabKey(event);
1476
- break;
1477
- case 'Backspace':
1478
- this.onBackspaceKey(event);
1479
- break;
1480
- case 'ShiftLeft':
1481
- case 'ShiftRight':
1482
- //NOOP
1483
- break;
1484
- default:
1485
- this.handleSeparatorKey(event);
1486
- break;
1487
- }
1488
- }
1489
- handleSeparatorKey(event) {
1490
- const separator = this.separator();
1491
- if (separator && this.multiple() && !this.typeahead()) {
1492
- if (separator === event.key || (typeof separator === 'string' && event.key === separator) || (separator instanceof RegExp && event.key.match(separator))) {
1493
- const multiInput = this.multiInputEl();
1494
- const inputValue = (multiInput?.nativeElement?.value || event.target.value || '').trim();
1495
- if (inputValue && !this.isSelected(inputValue)) {
1496
- this.updateModel([...(this.modelValue() || []), inputValue]);
1497
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1498
- if (multiInput?.nativeElement) {
1499
- multiInput.nativeElement.value = '';
1500
- }
1501
- else {
1502
- event.target.value = '';
1503
- }
1504
- event.preventDefault();
1505
- }
1506
- }
1507
- }
1508
- }
1509
- onArrowDownKey(event) {
1510
- if (!this.overlayVisible) {
1511
- return;
1512
- }
1513
- const optionIndex = this.focusedOptionIndex() !== -1 ? this.findNextOptionIndex(this.focusedOptionIndex()) : this.findFirstFocusedOptionIndex();
1514
- this.changeFocusedOptionIndex(event, optionIndex);
1515
- event.preventDefault();
1516
- event.stopPropagation();
1517
- }
1518
- onArrowUpKey(event) {
1519
- if (!this.overlayVisible) {
1520
- return;
1521
- }
1522
- if (event.altKey) {
1523
- if (this.focusedOptionIndex() !== -1) {
1524
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1525
- }
1526
- this.overlayVisible && this.hide();
1527
- event.preventDefault();
1528
- }
1529
- else {
1530
- const optionIndex = this.focusedOptionIndex() !== -1 ? this.findPrevOptionIndex(this.focusedOptionIndex()) : this.findLastFocusedOptionIndex();
1531
- this.changeFocusedOptionIndex(event, optionIndex);
1532
- event.preventDefault();
1533
- event.stopPropagation();
1534
- }
1535
- }
1536
- onArrowLeftKey(event) {
1537
- const target = event.currentTarget;
1538
- this.focusedOptionIndex.set(-1);
1539
- if (this.multiple()) {
1540
- if (isEmpty(target.value) && this.hasSelectedOption()) {
1541
- focus(this.multiContainerEL()?.nativeElement);
1542
- this.focusedMultipleOptionIndex.set(this.modelValue().length);
1543
- }
1544
- else {
1545
- event.stopPropagation(); // To prevent onArrowLeftKeyOnMultiple method
1546
- }
1547
- }
1548
- }
1549
- onArrowRightKey(event) {
1550
- this.focusedOptionIndex.set(-1);
1551
- this.multiple() && event.stopPropagation(); // To prevent onArrowRightKeyOnMultiple method
1552
- }
1553
- onHomeKey(event) {
1554
- const { currentTarget } = event;
1555
- const len = currentTarget.value.length;
1556
- currentTarget.setSelectionRange(0, event.shiftKey ? len : 0);
1557
- this.focusedOptionIndex.set(-1);
1558
- event.preventDefault();
1559
- }
1560
- onEndKey(event) {
1561
- const { currentTarget } = event;
1562
- const len = currentTarget.value.length;
1563
- currentTarget.setSelectionRange(event.shiftKey ? 0 : len, len);
1564
- this.focusedOptionIndex.set(-1);
1565
- event.preventDefault();
1566
- }
1567
- onPageDownKey(event) {
1568
- this.scrollInView(this.visibleOptions().length - 1);
1569
- event.preventDefault();
1570
- }
1571
- onPageUpKey(event) {
1572
- this.scrollInView(0);
1573
- event.preventDefault();
1574
- }
1575
- onEnterKey(event) {
1576
- if (!this.typeahead() && !this.forceSelection()) {
1577
- if (this.multiple()) {
1578
- const inputValue = event.target.value?.trim();
1579
- if (inputValue && !this.isSelected(inputValue)) {
1580
- this.updateModel([...(this.modelValue() || []), inputValue]);
1581
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1582
- const inputEl2 = this.inputEL();
1583
- inputEl2?.nativeElement && (inputEl2.nativeElement.value = '');
1584
- }
1585
- }
1586
- }
1587
- if (!this.overlayVisible) {
1588
- return;
1589
- }
1590
- else {
1591
- if (this.focusedOptionIndex() !== -1) {
1592
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1593
- }
1594
- this.hide();
1595
- }
1596
- event.preventDefault();
1597
- }
1598
- onEscapeKey(event) {
1599
- this.overlayVisible && this.hide(true);
1600
- event.preventDefault();
1601
- }
1602
- onTabKey(event) {
1603
- // If there's a focused option in the dropdown, select it
1604
- if (this.focusedOptionIndex() !== -1) {
1605
- this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1606
- return;
1607
- }
1608
- // Handle tab key behavior for multiple mode without typeahead
1609
- if (this.multiple() && !this.typeahead()) {
1610
- const multiInput = this.multiInputEl();
1611
- const inputEl = this.inputEL();
1612
- const inputValue = (multiInput?.nativeElement?.value || inputEl?.nativeElement?.value || '').trim();
1613
- if (this.addOnTab()) {
1614
- if (inputValue && !this.isSelected(inputValue)) {
1615
- // Add the value and keep focus
1616
- this.updateModel([...(this.modelValue() || []), inputValue]);
1617
- this.onAdd.emit({ originalEvent: event, value: inputValue });
1618
- if (multiInput?.nativeElement) {
1619
- multiInput.nativeElement.value = '';
1620
- }
1621
- else if (inputEl?.nativeElement) {
1622
- inputEl.nativeElement.value = '';
1623
- }
1624
- this.updateInputValue();
1625
- event.preventDefault(); // Keep focus on the component
1626
- this.overlayVisible && this.hide();
1627
- return;
1628
- }
1629
- // If no value or already selected, allow normal tab behavior (blur)
1630
- }
1631
- // If addOnTab is false or no value to add, allow normal tab behavior
1632
- // which will trigger blur and potentially addOnBlur
1633
- }
1634
- this.overlayVisible && this.hide();
1635
- }
1636
- onBackspaceKey(event) {
1637
- if (this.multiple()) {
1638
- if (isNotEmpty(this.modelValue()) && !this.inputEL()?.nativeElement?.value) {
1639
- const removedValue = this.modelValue()[this.modelValue().length - 1];
1640
- const newValue = this.modelValue().slice(0, -1);
1641
- this.updateModel(newValue);
1642
- this.onUnselect.emit({ originalEvent: event, value: removedValue });
1643
- }
1644
- event.stopPropagation(); // To prevent onBackspaceKeyOnMultiple method
1645
- }
1646
- }
1647
- onArrowLeftKeyOnMultiple(event) {
1648
- const optionIndex = this.focusedMultipleOptionIndex() < 1 ? 0 : this.focusedMultipleOptionIndex() - 1;
1649
- this.focusedMultipleOptionIndex.set(optionIndex);
1650
- }
1651
- onArrowRightKeyOnMultiple(event) {
1652
- let optionIndex = this.focusedMultipleOptionIndex();
1653
- optionIndex++;
1654
- this.focusedMultipleOptionIndex.set(optionIndex);
1655
- if (optionIndex > this.modelValue().length - 1) {
1656
- this.focusedMultipleOptionIndex.set(-1);
1657
- focus(this.inputEL()?.nativeElement);
1658
- }
1659
- }
1660
- onBackspaceKeyOnMultiple(event) {
1661
- if (this.focusedMultipleOptionIndex() !== -1) {
1662
- this.removeOption(event, this.focusedMultipleOptionIndex());
1663
- }
1664
- }
1665
- onOptionSelect(event, option, isHide = true) {
1666
- if (this.multiple()) {
1667
- const inputEl = this.inputEL();
1668
- inputEl && (inputEl.nativeElement.value = '');
1669
- if (!this.isSelected(option)) {
1670
- this.updateModel([...(this.modelValue() || []), option]);
1671
- }
1672
- }
1673
- else {
1674
- this.updateModel(option);
1675
- }
1676
- this.onSelect.emit({ originalEvent: event, value: option });
1677
- isHide && this.hide(true);
1678
- }
1679
- onOptionMouseEnter(event, index) {
1680
- if (this.focusOnHover()) {
1681
- this.changeFocusedOptionIndex(event, index);
1682
- }
1683
- }
1684
- search(event, query, source) {
1685
- //allow empty string but not undefined or null
1686
- if (query === undefined || query === null) {
1687
- return;
1688
- }
1689
- //do not search blank values on input change
1690
- if (source === 'input' && query.trim().length === 0) {
1691
- return;
1692
- }
1693
- this.loading = true;
1694
- this.completeMethod.emit({ originalEvent: event, query });
1695
- }
1696
- removeOption(event, index) {
1697
- event.stopPropagation();
1698
- const removedOption = this.modelValue()[index];
1699
- const value = this.modelValue().filter((_, i) => i !== index);
1700
- this.updateModel(value);
1701
- this.onUnselect.emit({ originalEvent: event, value: removedOption });
1702
- focus(this.inputEL()?.nativeElement);
1703
- }
1704
- updateModel(options) {
1705
- let value = null;
1706
- if (options) {
1707
- value = this.multiple() ? options.map((option) => this.getOptionValue(option)) : this.getOptionValue(options);
1708
- }
1709
- this.value = value;
1710
- this.writeModelValue(options);
1711
- this.onModelChange(value);
1712
- this.updateInputValue();
1713
- this.cd.markForCheck();
1714
- }
1715
- updateInputValue() {
1716
- const inputEl = this.inputEL();
1717
- if (inputEl?.nativeElement) {
1718
- if (!this.multiple()) {
1719
- inputEl.nativeElement.value = this.inputValue();
1720
- }
1721
- else {
1722
- inputEl.nativeElement.value = '';
1723
- }
1724
- }
1725
- }
1726
- updateInputWithForceSelection(event) {
1727
- const input = this.inputEL()?.nativeElement;
1728
- const inputCleared = !input?.value && isNotEmpty(this.modelValue());
1729
- if (!this.forceSelection() || this.overlayVisible || (!input?.value && !inputCleared)) {
1730
- return;
1731
- }
1732
- const _minLength = this.minQueryLength() ?? this.minLength();
1733
- if (!inputCleared && input.value.length < _minLength) {
1734
- return;
1735
- }
1736
- const matchedOption = this.visibleOptions()?.find((option) => this.isOptionMatched(option, input.value));
1737
- if (!matchedOption) {
1738
- input.value = '';
1739
- if (!this.multiple()) {
1740
- this.clear();
1741
- }
1742
- return;
1743
- }
1744
- if (matchedOption && !this.isSelected(matchedOption)) {
1745
- this.onOptionSelect(event, matchedOption);
1746
- }
1747
- }
1748
- autoUpdateModel() {
1749
- if ((this.selectOnFocus() || this.autoHighlight()) && this.autoOptionFocus() && !this.hasSelectedOption()) {
1750
- const focusedOptionIndex = this.findFirstFocusedOptionIndex();
1751
- this.focusedOptionIndex.set(focusedOptionIndex);
1752
- this.onOptionSelect(null, this.visibleOptions()[this.focusedOptionIndex()], false);
1753
- }
1754
- }
1755
- scrollInView(index = -1) {
1756
- const id = index !== -1 ? `${this.id()}_${index}` : this.focusedOptionId;
1757
- const itemsChild = this.itemsViewChild();
1758
- if (itemsChild?.nativeElement) {
1759
- const element = findSingle(itemsChild.nativeElement, `li[id="${id}"]`);
1760
- if (element) {
1761
- element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'nearest' });
1762
- }
1763
- else if (!this.virtualScrollerDisabled) {
1764
- setTimeout(() => {
1765
- this.virtualScroll() && this.scroller()?.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex());
1766
- }, 0);
1767
- }
1768
- }
1769
- }
1770
- changeFocusedOptionIndex(event, index) {
1771
- if (this.focusedOptionIndex() !== index) {
1772
- this.focusedOptionIndex.set(index);
1773
- this.scrollInView();
1774
- if (this.selectOnFocus()) {
1775
- this.onOptionSelect(event, this.visibleOptions()[index], false);
1776
- }
1777
- }
1778
- }
1779
- show(isFocus = false) {
1780
- this.dirty = true;
1781
- this.overlayVisible = true;
1782
- const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
1783
- this.focusedOptionIndex.set(focusedOptionIndex);
1784
- isFocus && focus(this.inputEL()?.nativeElement);
1785
- if (isFocus) {
1786
- focus(this.inputEL()?.nativeElement);
1787
- }
1788
- this.onShow.emit(undefined);
1789
- this.cd.markForCheck();
1790
- }
1791
- hide(isFocus = false) {
1792
- const _hide = () => {
1793
- this.dirty = isFocus;
1794
- this.overlayVisible = false;
1795
- this.focusedOptionIndex.set(-1);
1796
- isFocus && focus(this.inputEL()?.nativeElement);
1797
- this.onHide.emit(undefined);
1798
- this.updateInputWithForceSelection(null);
1799
- this.cd.markForCheck();
1800
- };
1801
- setTimeout(() => {
1802
- _hide();
1803
- }, 0); // For ScreenReaders
1804
- }
1805
- clear() {
1806
- this.updateModel(null);
1807
- const inputEl = this.inputEL();
1808
- inputEl?.nativeElement && (inputEl.nativeElement.value = '');
1809
- this.onClear.emit(undefined);
1810
- }
1811
- hasSelectedOption() {
1812
- return isNotEmpty(this.modelValue());
1813
- }
1814
- getAriaPosInset(index) {
1815
- return ((this.optionGroupLabel()
1816
- ? index -
1817
- this.visibleOptions()
1818
- .slice(0, index)
1819
- .filter((option) => this.isOptionGroup(option)).length
1820
- : index) + 1);
1821
- }
1822
- getOptionLabel(option) {
1823
- const optionLabel = this.optionLabel();
1824
- return optionLabel ? resolveFieldData(option, optionLabel) : option && option.label != undefined ? option.label : option;
1825
- }
1826
- getOptionValue(option) {
1827
- const optionValue = this.optionValue();
1828
- return optionValue ? resolveFieldData(option, optionValue) : option && option.value != undefined ? option.value : option;
1829
- }
1830
- getOptionIndex(index, scrollerOptions) {
1831
- return this.virtualScrollerDisabled ? index : scrollerOptions && scrollerOptions.getItemOptions(index)['index'];
1832
- }
1833
- getOptionGroupLabel(optionGroup) {
1834
- const optionGroupLabel = this.optionGroupLabel();
1835
- return optionGroupLabel ? resolveFieldData(optionGroup, optionGroupLabel) : optionGroup && optionGroup.label != undefined ? optionGroup.label : optionGroup;
1836
- }
1837
- getOptionGroupChildren(optionGroup) {
1838
- const optionGroupChildren = this.optionGroupChildren();
1839
- return optionGroupChildren ? resolveFieldData(optionGroup, optionGroupChildren) : optionGroup.items;
1840
- }
1841
- getPTOptions(option, scrollerOptions, index, key) {
1842
- return this.ptm(key, {
1843
- context: {
1844
- option,
1845
- index: this.getOptionIndex(index, scrollerOptions),
1846
- selected: this.isSelected(option),
1847
- focused: this.focusedOptionIndex() === this.getOptionIndex(index, scrollerOptions),
1848
- disabled: this.isOptionDisabled(option)
1849
- }
1850
- });
1851
- }
1852
- onOverlayBeforeEnter() {
1853
- const ovc = this.overlayViewChild();
1854
- const scrl = this.scroller();
1855
- const itemsChild = this.itemsViewChild();
1856
- this.itemsWrapper = findSingle(ovc?.overlayViewChild()?.nativeElement, this.virtualScroll() ? '[data-pc-name="virtualscroller"]' : '[data-pc-name="pcoverlay"]');
1857
- const virtualScroll = this.virtualScroll();
1858
- if (virtualScroll) {
1859
- scrl?.setContentEl(itemsChild?.nativeElement);
1860
- scrl?.viewInit();
1861
- }
1862
- if (this.visibleOptions() && this.visibleOptions().length) {
1863
- if (virtualScroll) {
1864
- const selectedIndex = this.modelValue() ? this.focusedOptionIndex() : -1;
1865
- if (selectedIndex !== -1) {
1866
- scrl?.scrollToIndex(selectedIndex);
1867
- }
1868
- }
1869
- else {
1870
- let selectedListItem = findSingle(this.itemsWrapper, '[data-pc-section="option"][data-h-selected="true"]');
1871
- if (selectedListItem) {
1872
- selectedListItem.scrollIntoView({ block: 'nearest', inline: 'center' });
1873
- }
1874
- }
1875
- }
1876
- }
1877
- get containerDataP() {
1878
- return this.cn({
1879
- fluid: this.hasFluid
1880
- });
1881
- }
1882
- get overlayDataP() {
1883
- return this.cn({
1884
- [`overlay-${this.$appendTo()}`]: true
1885
- });
1886
- }
1887
- get inputMultipleDataP() {
1888
- return this.cn({
1889
- invalid: this.invalid(),
1890
- disabled: this.$disabled(),
1891
- focus: this.focused,
1892
- fluid: this.hasFluid,
1893
- filled: this.$variant() === 'filled',
1894
- empty: !this.$filled(),
1895
- [this.size()]: this.size()
1896
- });
1897
- }
1898
- /**
1899
- * @override
1900
- *
1901
- * @see {@link BaseEditableHolder.writeControlValue}
1902
- * Writes the value to the control.
1903
- */
1904
- writeControlValue(value, setModelValue) {
1905
- if (this.multiple()) {
1906
- const resolved = (value || []).map((val) => {
1907
- const match = this.visibleOptions().find((option) => equals(val, option, this.equalityKey()));
1908
- return match ?? val;
1909
- });
1910
- setModelValue(isEmpty(value) ? value : resolved);
1911
- }
1912
- else {
1913
- const option = this.visibleOptions().find((option) => equals(value, option, this.equalityKey()));
1914
- setModelValue(isEmpty(option) ? value : option);
1915
- }
1916
- this.value = value;
1917
- this.updateInputValue();
1918
- this.cd.markForCheck();
1919
- }
1920
- onDestroy() {
1921
- if (this.scrollHandler) {
1922
- this.scrollHandler.destroy();
1923
- this.scrollHandler = null;
1924
- }
1925
- }
1926
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AutoComplete, deps: [{ token: i1.OverlayService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1927
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: AutoComplete, isStandalone: true, selector: "h-autoComplete, h-autocomplete, h-auto-complete", inputs: { minLength: { classPropertyName: "minLength", publicName: "minLength", isSignal: true, isRequired: false, transformFunction: null }, minQueryLength: { classPropertyName: "minQueryLength", publicName: "minQueryLength", isSignal: true, isRequired: false, transformFunction: null }, delay: { classPropertyName: "delay", publicName: "delay", isSignal: true, isRequired: false, transformFunction: null }, panelStyle: { classPropertyName: "panelStyle", publicName: "panelStyle", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, panelStyleClass: { classPropertyName: "panelStyleClass", publicName: "panelStyleClass", isSignal: true, isRequired: false, transformFunction: null }, inputStyle: { classPropertyName: "inputStyle", publicName: "inputStyle", isSignal: true, isRequired: false, transformFunction: null }, inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, inputStyleClass: { classPropertyName: "inputStyleClass", publicName: "inputStyleClass", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: true, isRequired: false, transformFunction: null }, lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: true, isRequired: false, transformFunction: null }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: true, isRequired: false, transformFunction: null }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: true, isRequired: false, transformFunction: null }, virtualScrollOptions: { classPropertyName: "virtualScrollOptions", publicName: "virtualScrollOptions", isSignal: true, isRequired: false, transformFunction: null }, autoHighlight: { classPropertyName: "autoHighlight", publicName: "autoHighlight", isSignal: true, isRequired: false, transformFunction: null }, forceSelection: { classPropertyName: "forceSelection", publicName: "forceSelection", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, autoZIndex: { classPropertyName: "autoZIndex", publicName: "autoZIndex", isSignal: true, isRequired: false, transformFunction: null }, baseZIndex: { classPropertyName: "baseZIndex", publicName: "baseZIndex", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, dropdownAriaLabel: { classPropertyName: "dropdownAriaLabel", publicName: "dropdownAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, dropdownIcon: { classPropertyName: "dropdownIcon", publicName: "dropdownIcon", isSignal: true, isRequired: false, transformFunction: null }, unique: { classPropertyName: "unique", publicName: "unique", isSignal: true, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, completeOnFocus: { classPropertyName: "completeOnFocus", publicName: "completeOnFocus", isSignal: true, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", isSignal: true, isRequired: false, transformFunction: null }, dropdown: { classPropertyName: "dropdown", publicName: "dropdown", isSignal: true, isRequired: false, transformFunction: null }, showEmptyMessage: { classPropertyName: "showEmptyMessage", publicName: "showEmptyMessage", isSignal: true, isRequired: false, transformFunction: null }, dropdownMode: { classPropertyName: "dropdownMode", publicName: "dropdownMode", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, addOnTab: { classPropertyName: "addOnTab", publicName: "addOnTab", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, dataKey: { classPropertyName: "dataKey", publicName: "dataKey", isSignal: true, isRequired: false, transformFunction: null }, emptyMessage: { classPropertyName: "emptyMessage", publicName: "emptyMessage", isSignal: true, isRequired: false, transformFunction: null }, showTransitionOptions: { classPropertyName: "showTransitionOptions", publicName: "showTransitionOptions", isSignal: true, isRequired: false, transformFunction: null }, hideTransitionOptions: { classPropertyName: "hideTransitionOptions", publicName: "hideTransitionOptions", isSignal: true, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, optionGroupChildren: { classPropertyName: "optionGroupChildren", publicName: "optionGroupChildren", isSignal: true, isRequired: false, transformFunction: null }, optionGroupLabel: { classPropertyName: "optionGroupLabel", publicName: "optionGroupLabel", isSignal: true, isRequired: false, transformFunction: null }, overlayOptions: { classPropertyName: "overlayOptions", publicName: "overlayOptions", isSignal: true, isRequired: false, transformFunction: null }, suggestions: { classPropertyName: "suggestions", publicName: "suggestions", isSignal: true, isRequired: false, transformFunction: null }, optionLabel: { classPropertyName: "optionLabel", publicName: "optionLabel", isSignal: true, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, searchMessage: { classPropertyName: "searchMessage", publicName: "searchMessage", isSignal: true, isRequired: false, transformFunction: null }, emptySelectionMessage: { classPropertyName: "emptySelectionMessage", publicName: "emptySelectionMessage", isSignal: true, isRequired: false, transformFunction: null }, selectionMessage: { classPropertyName: "selectionMessage", publicName: "selectionMessage", isSignal: true, isRequired: false, transformFunction: null }, autoOptionFocus: { classPropertyName: "autoOptionFocus", publicName: "autoOptionFocus", isSignal: true, isRequired: false, transformFunction: null }, selectOnFocus: { classPropertyName: "selectOnFocus", publicName: "selectOnFocus", isSignal: true, isRequired: false, transformFunction: null }, searchLocale: { classPropertyName: "searchLocale", publicName: "searchLocale", isSignal: true, isRequired: false, transformFunction: null }, optionDisabled: { classPropertyName: "optionDisabled", publicName: "optionDisabled", isSignal: true, isRequired: false, transformFunction: null }, focusOnHover: { classPropertyName: "focusOnHover", publicName: "focusOnHover", isSignal: true, isRequired: false, transformFunction: null }, typeahead: { classPropertyName: "typeahead", publicName: "typeahead", isSignal: true, isRequired: false, transformFunction: null }, addOnBlur: { classPropertyName: "addOnBlur", publicName: "addOnBlur", isSignal: true, isRequired: false, transformFunction: null }, separator: { classPropertyName: "separator", publicName: "separator", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { id: "idChange", completeMethod: "completeMethod", onSelect: "onSelect", onUnselect: "onUnselect", onAdd: "onAdd", onFocus: "onFocus", onBlur: "onBlur", onDropdownClick: "onDropdownClick", onClear: "onClear", onInputKeydown: "onInputKeydown", onKeyUp: "onKeyUp", onShow: "onShow", onHide: "onHide", onLazyLoad: "onLazyLoad" }, host: { listeners: { "click": "onHostClick($event)" }, properties: { "class": "cn(cx('root'), styleClass())", "style": "sx('root')", "attr.data-h": "containerDataP" } }, providers: [AUTOCOMPLETE_VALUE_ACCESSOR, AutoCompleteStyle, { provide: AUTOCOMPLETE_INSTANCE, useExisting: AutoComplete }, { provide: PARENT_INSTANCE, useExisting: AutoComplete }], queries: [{ propertyName: "itemTemplate", first: true, predicate: ["item"], descendants: true, isSignal: true }, { propertyName: "emptyTemplate", first: true, predicate: ["empty"], descendants: true, isSignal: true }, { propertyName: "headerTemplate", first: true, predicate: ["header"], descendants: true, isSignal: true }, { propertyName: "footerTemplate", first: true, predicate: ["footer"], descendants: true, isSignal: true }, { propertyName: "selectedItemTemplate", first: true, predicate: ["selecteditem"], descendants: true, isSignal: true }, { propertyName: "groupTemplate", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "loaderTemplate", first: true, predicate: ["loader"], descendants: true, isSignal: true }, { propertyName: "removeIconTemplate", first: true, predicate: ["removeicon"], descendants: true, isSignal: true }, { propertyName: "loadingIconTemplate", first: true, predicate: ["loadingicon"], descendants: true, isSignal: true }, { propertyName: "clearIconTemplate", first: true, predicate: ["clearicon"], descendants: true, isSignal: true }, { propertyName: "dropdownIconTemplate", first: true, predicate: ["dropdownicon"], descendants: true, isSignal: true }, { propertyName: "templates", predicate: HelixTemplate, isSignal: true }], viewQueries: [{ propertyName: "inputEL", first: true, predicate: ["focusInput"], descendants: true, isSignal: true }, { propertyName: "multiInputEl", first: true, predicate: ["multiIn"], descendants: true, isSignal: true }, { propertyName: "multiContainerEL", first: true, predicate: ["multiContainer"], descendants: true, isSignal: true }, { propertyName: "dropdownButton", first: true, predicate: ["ddBtn"], descendants: true, isSignal: true }, { propertyName: "itemsViewChild", first: true, predicate: ["items"], descendants: true, isSignal: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true, isSignal: true }, { propertyName: "overlayViewChild", first: true, predicate: ["overlay"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i2.Bind }], ngImport: i0, template: "@if (!multiple()) {\n <input\n #focusInput\n [hAutoFocus]=\"autofocus()\"\n hInputText\n [pt]=\"ptm('pcInputText')\"\n [class]=\"cn(cx('pcInputText'), inputStyleClass())\"\n [ngStyle]=\"inputStyle()\"\n [attr.type]=\"type()\"\n [attr.value]=\"inputValue()\"\n [variant]=\"$variant()\"\n [invalid]=\"invalid()\"\n [attr.id]=\"inputId()\"\n [attr.autocomplete]=\"autocomplete()\"\n aria-autocomplete=\"list\"\n role=\"combobox\"\n [attr.placeholder]=\"placeholder()\"\n [attr.name]=\"name()\"\n [attr.minlength]=\"minlength()\"\n [pSize]=\"size()\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [attr.pattern]=\"pattern()\"\n [attr.size]=\"inputSize()\"\n [attr.maxlength]=\"maxlength()\"\n [attr.tabindex]=\"!$disabled() ? tabindex() : -1\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly() ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.aria-required]=\"required()\"\n [attr.aria-expanded]=\"overlayVisible ?? false\"\n [attr.aria-controls]=\"overlayVisible ? id() + '_list' : null\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onInputPaste($event)\"\n (keyup)=\"onInputKeyUp($event)\"\n [fluid]=\"hasFluid\"\n [pInputTextUnstyled]=\"unstyled()\"\n />\n}\n@if ($filled() && !$disabled() && showClear() && !loading) {\n @if (!clearIconTemplate() && !_clearIconTemplate) {\n <svg data-h-icon=\"times\" [hBind]=\"ptm('clearIcon')\" [class]=\"cx('clearIcon')\" (click)=\"clear()\" [attr.aria-hidden]=\"true\" />\n }\n @if (clearIconTemplate() || _clearIconTemplate) {\n <span [hBind]=\"ptm('clearIcon')\" [class]=\"cx('clearIcon')\" (click)=\"clear()\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"clearIconTemplate() || _clearIconTemplate\"></ng-template>\n </span>\n }\n}\n\n@if (multiple()) {\n <ul\n #multiContainer\n [hBind]=\"ptm('inputMultiple')\"\n [class]=\"cx('inputMultiple')\"\n [attr.data-h]=\"inputMultipleDataP\"\n [tabindex]=\"-1\"\n role=\"listbox\"\n [attr.aria-orientation]=\"'horizontal'\"\n [attr.aria-activedescendant]=\"focused ? focusedMultipleOptionId : undefined\"\n (focus)=\"onMultipleContainerFocus($event)\"\n (blur)=\"onMultipleContainerBlur($event)\"\n (keydown)=\"onMultipleContainerKeyDown($event)\"\n >\n @for (option of modelValue(); track option; let i = $index) {\n <li\n #token\n [hBind]=\"ptm('chipItem')\"\n [class]=\"cx('chipItem', { i })\"\n [attr.id]=\"id() + '_multiple_option_' + i\"\n role=\"option\"\n [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-setsize]=\"modelValue().length\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-selected]=\"true\"\n >\n <h-chip\n [pt]=\"ptm('pcChip')\"\n [class]=\"cx('pcChip')\"\n [label]=\"!selectedItemTemplate() && !_selectedItemTemplate && getOptionLabel(option)\"\n [disabled]=\"$disabled()\"\n [removable]=\"true\"\n (onRemove)=\"!readonly() ? removeOption($event, i) : ''\"\n [unstyled]=\"unstyled()\"\n >\n <ng-container *ngTemplateOutlet=\"selectedItemTemplate() || _selectedItemTemplate; context: { $implicit: option }\"></ng-container>\n <ng-template #removeicon>\n @if (!removeIconTemplate() && !_removeIconTemplate) {\n <span [hBind]=\"ptm('chipIcon')\" [class]=\"cx('chipIcon')\" (click)=\"!readonly() && !$disabled() ? removeOption($event, i) : ''\">\n <svg data-h-icon=\"times-circle\" [class]=\"cx('chipIcon')\" [attr.aria-hidden]=\"true\" />\n </span>\n }\n @if (removeIconTemplate() || _removeIconTemplate) {\n <span [hBind]=\"ptm('chipIcon')\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"removeIconTemplate() || _removeIconTemplate; context: { removeCallback: removeOption.bind(this), index: i, class: cx('chipIcon') }\"></ng-template>\n </span>\n }\n </ng-template>\n </h-chip>\n </li>\n }\n <li [hBind]=\"ptm('inputChip')\" [class]=\"cx('inputChip')\" role=\"option\">\n <input\n #focusInput\n #multiIn\n [hAutoFocus]=\"autofocus()\"\n [hBind]=\"ptm('input')\"\n [class]=\"cx('pcInputText')\"\n [ngStyle]=\"inputStyle()\"\n [attr.type]=\"type()\"\n [attr.id]=\"inputId()\"\n [attr.autocomplete]=\"autocomplete()\"\n [attr.name]=\"name()\"\n [attr.minlength]=\"minlength()\"\n [attr.maxlength]=\"maxlength()\"\n [attr.size]=\"size()\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [attr.pattern]=\"pattern()\"\n role=\"combobox\"\n [attr.placeholder]=\"!$filled() ? placeholder() : null\"\n aria-autocomplete=\"list\"\n [attr.tabindex]=\"!$disabled() ? tabindex() : -1\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly() ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.aria-required]=\"required()\"\n [attr.aria-expanded]=\"overlayVisible ?? false\"\n [attr.aria-controls]=\"overlayVisible ? id() + '_list' : null\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onInputPaste($event)\"\n (keyup)=\"onInputKeyUp($event)\"\n />\n </li>\n </ul>\n}\n@if (loading) {\n @if (!loadingIconTemplate() && !_loadingIconTemplate) {\n <svg data-h-icon=\"spinner\" [hBind]=\"ptm('loader')\" [class]=\"cx('loader')\" [spin]=\"true\" [attr.aria-hidden]=\"true\" />\n }\n @if (loadingIconTemplate() || _loadingIconTemplate) {\n <span [hBind]=\"ptm('loader')\" [class]=\"cx('loader')\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"loadingIconTemplate() || _loadingIconTemplate\"></ng-template>\n </span>\n }\n}\n@if (dropdown()) {\n <button #ddBtn type=\"button\" [hBind]=\"ptm('dropdown')\" [attr.aria-label]=\"dropdownAriaLabel()\" [class]=\"cx('dropdown')\" [disabled]=\"$disabled()\" hRipple (click)=\"handleDropdownClick($event)\" [attr.tabindex]=\"tabindex()\">\n @if (dropdownIcon()) {\n <span [ngClass]=\"dropdownIcon\" [attr.aria-hidden]=\"true\"></span>\n }\n @if (!dropdownIcon()) {\n @if (!dropdownIconTemplate() && !_dropdownIconTemplate) {\n <svg data-h-icon=\"chevron-down\" [hBind]=\"ptm('dropdown')\" />\n }\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate() || _dropdownIconTemplate\"></ng-template>\n }\n </button>\n}\n<h-overlay\n #overlay\n [hostAttrSelector]=\"$attrSelector\"\n [(visible)]=\"overlayVisible\"\n [options]=\"overlayOptions()\"\n [target]=\"'@parent'\"\n [appendTo]=\"$appendTo()\"\n [unstyled]=\"unstyled()\"\n [pt]=\"ptm('pcOverlay')\"\n [motionOptions]=\"motionOptions()\"\n (onBeforeEnter)=\"onOverlayBeforeEnter()\"\n (onHide)=\"hide()\"\n [attr.data-h]=\"overlayDataP\"\n >\n <ng-template #content>\n <div [hBind]=\"ptm('overlay')\" [class]=\"cn(cx('overlay'), panelStyleClass())\" [ngStyle]=\"panelStyle()\">\n <ng-container *ngTemplateOutlet=\"headerTemplate() || _headerTemplate\"></ng-container>\n <div [hBind]=\"ptm('listContainer')\" [class]=\"cx('listContainer')\" [style.max-height]=\"virtualScroll() ? 'auto' : scrollHeight()\" [tabindex]=\"-1\">\n @if (virtualScroll()) {\n <h-scroller\n #scroller\n [tabindex]=\"-1\"\n [pt]=\"ptm('virtualScroller')\"\n [items]=\"visibleOptions()\"\n [style]=\"{ height: scrollHeight() }\"\n [itemSize]=\"virtualScrollItemSize()\"\n [autoSize]=\"true\"\n [lazy]=\"lazy()\"\n (onLazyLoad)=\"onLazyLoad.emit($event)\"\n [options]=\"virtualScrollOptions()\"\n >\n <ng-template #content let-items let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: items, options: scrollerOptions }\"></ng-container>\n </ng-template>\n @if (loaderTemplate() || _loaderTemplate) {\n <ng-template #loader let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"loaderTemplate() || _loaderTemplate; context: { options: scrollerOptions }\"></ng-container>\n </ng-template>\n }\n </h-scroller>\n }\n @if (!virtualScroll()) {\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: visibleOptions(), options: {} }\"></ng-container>\n }\n </div>\n\n <ng-template #buildInItems let-items let-scrollerOptions=\"options\">\n <ul #items [hBind]=\"ptm('list')\" [class]=\"cn(cx('list'), scrollerOptions.contentStyleClass)\" [style]=\"scrollerOptions.contentStyle\" role=\"listbox\" [attr.id]=\"id() + '_list'\" [attr.aria-label]=\"listLabel\">\n @for (option of items; track option; let i = $index) {\n @if (isOptionGroup(option)) {\n <li [hBind]=\"ptm('optionGroup')\" [attr.id]=\"id() + '_' + getOptionIndex(i, scrollerOptions)\" [class]=\"cx('optionGroup')\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\" role=\"option\">\n @if (!groupTemplate()) {\n <span>{{ getOptionGroupLabel(option.optionGroup) }}</span>\n }\n <ng-container *ngTemplateOutlet=\"groupTemplate(); context: { $implicit: option.optionGroup }\"></ng-container>\n </li>\n }\n @if (!isOptionGroup(option)) {\n <li\n hRipple\n [hBind]=\"getPTOptions(option, scrollerOptions, i, 'option')\"\n [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\"\n [class]=\"cx('option', { option, i, scrollerOptions })\"\n [attr.id]=\"id() + '_' + getOptionIndex(i, scrollerOptions)\"\n role=\"option\"\n [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-selected]=\"isSelected(option)\"\n [attr.data-h-selected]=\"isSelected(option)\"\n [attr.aria-disabled]=\"isOptionDisabled(option)\"\n [attr.data-h-focused]=\"focusedOptionIndex() === getOptionIndex(i, scrollerOptions)\"\n [attr.aria-setsize]=\"ariaSetSize\"\n [attr.aria-posinset]=\"getAriaPosInset(getOptionIndex(i, scrollerOptions))\"\n (click)=\"onOptionSelect($event, option)\"\n (mouseenter)=\"onOptionMouseEnter($event, getOptionIndex(i, scrollerOptions))\"\n >\n @if (!itemTemplate() && !_itemTemplate) {\n <span>{{ getOptionLabel(option) }}</span>\n }\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate() || _itemTemplate;\n context: {\n $implicit: option,\n index: scrollerOptions.getOptions ? scrollerOptions.getOptions(i) : i\n }\n \"\n ></ng-container>\n </li>\n }\n }\n @if (!items || (items && items.length === 0 && showEmptyMessage())) {\n <li [hBind]=\"ptm('emptyMessage')\" [class]=\"cx('emptyMessage')\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\" role=\"option\">\n @if (!emptyTemplate() && !_emptyTemplate) {\n {{ searchResultMessageText }}\n } @else {\n <ng-template [ngTemplateOutlet]=\"empty\"></ng-template>\n }\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate() || _emptyTemplate\"></ng-container>\n </li>\n }\n </ul>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"footerTemplate() || _footerTemplate\"></ng-container>\n </div>\n <span role=\"status\" aria-live=\"polite\" class=\"h-hidden-accessible\">\n {{ selectedMessageText }}\n </span>\n</ng-template>\n</h-overlay>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: Overlay, selector: "h-overlay", inputs: ["hostName", "visible", "mode", "style", "styleClass", "contentStyle", "contentStyleClass", "target", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "listener", "responsive", "options", "appendTo", "inline", "motionOptions", "hostAttrSelector"], outputs: ["visibleChange", "onBeforeShow", "onShow", "onBeforeHide", "onHide", "onAnimationStart", "onAnimationDone", "onBeforeEnter", "onEnter", "onAfterEnter", "onBeforeLeave", "onLeave", "onAfterLeave"] }, { kind: "directive", type: InputText, selector: "[hInputText]", inputs: ["hostName", "ptInputText", "pInputTextPT", "pInputTextUnstyled", "pSize", "variant", "fluid", "invalid"] }, { kind: "directive", type: Ripple, selector: "[hRipple]" }, { kind: "component", type: Scroller, selector: "h-scroller, h-virtualscroller, h-virtual-scroller, h-virtualScroller", inputs: ["hostName", "id", "style", "styleClass", "tabindex", "items", "itemSize", "scrollHeight", "scrollWidth", "orientation", "step", "delay", "resizeDelay", "appendOnly", "inline", "lazy", "disabled", "loaderDisabled", "columns", "showSpacer", "showLoader", "numToleratedItems", "loading", "autoSize", "trackBy", "options"], outputs: ["onLazyLoad", "onScroll", "onScrollIndexChange"] }, { kind: "directive", type: AutoFocus, selector: "[hAutoFocus]", inputs: ["hAutoFocus"] }, { kind: "component", type: TimesCircleIcon, selector: "[data-h-icon=\"times-circle\"]" }, { kind: "component", type: SpinnerIcon, selector: "[data-h-icon=\"spinner\"]" }, { kind: "component", type: ChevronDownIcon, selector: "[data-h-icon=\"chevron-down\"]" }, { kind: "component", type: Chip, selector: "h-chip", inputs: ["label", "icon", "image", "alt", "styleClass", "disabled", "removable", "removeIcon", "chipProps"], outputs: ["labelChange", "iconChange", "imageChange", "altChange", "styleClassChange", "removableChange", "removeIconChange", "onRemove", "onImageError"] }, { kind: "ngmodule", type: SharedModule }, { kind: "component", type: TimesIcon, selector: "[data-h-icon=\"times\"]" }, { kind: "ngmodule", type: BindModule }, { kind: "directive", type: i2.Bind, selector: "[hBind]", inputs: ["hBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1928
- }
1929
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AutoComplete, decorators: [{
1930
- type: Component,
1931
- args: [{ selector: 'h-autoComplete, h-autocomplete, h-auto-complete', standalone: true, imports: [CommonModule, Overlay, InputText, Ripple, Scroller, AutoFocus, TimesCircleIcon, SpinnerIcon, ChevronDownIcon, Chip, SharedModule, TimesIcon, BindModule], providers: [AUTOCOMPLETE_VALUE_ACCESSOR, AutoCompleteStyle, { provide: AUTOCOMPLETE_INSTANCE, useExisting: AutoComplete }, { provide: PARENT_INSTANCE, useExisting: AutoComplete }], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
1932
- '[class]': "cn(cx('root'), styleClass())",
1933
- '[style]': "sx('root')",
1934
- '[attr.data-h]': 'containerDataP',
1935
- '(click)': 'onHostClick($event)'
1936
- }, hostDirectives: [Bind], template: "@if (!multiple()) {\n <input\n #focusInput\n [hAutoFocus]=\"autofocus()\"\n hInputText\n [pt]=\"ptm('pcInputText')\"\n [class]=\"cn(cx('pcInputText'), inputStyleClass())\"\n [ngStyle]=\"inputStyle()\"\n [attr.type]=\"type()\"\n [attr.value]=\"inputValue()\"\n [variant]=\"$variant()\"\n [invalid]=\"invalid()\"\n [attr.id]=\"inputId()\"\n [attr.autocomplete]=\"autocomplete()\"\n aria-autocomplete=\"list\"\n role=\"combobox\"\n [attr.placeholder]=\"placeholder()\"\n [attr.name]=\"name()\"\n [attr.minlength]=\"minlength()\"\n [pSize]=\"size()\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [attr.pattern]=\"pattern()\"\n [attr.size]=\"inputSize()\"\n [attr.maxlength]=\"maxlength()\"\n [attr.tabindex]=\"!$disabled() ? tabindex() : -1\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly() ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.aria-required]=\"required()\"\n [attr.aria-expanded]=\"overlayVisible ?? false\"\n [attr.aria-controls]=\"overlayVisible ? id() + '_list' : null\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onInputPaste($event)\"\n (keyup)=\"onInputKeyUp($event)\"\n [fluid]=\"hasFluid\"\n [pInputTextUnstyled]=\"unstyled()\"\n />\n}\n@if ($filled() && !$disabled() && showClear() && !loading) {\n @if (!clearIconTemplate() && !_clearIconTemplate) {\n <svg data-h-icon=\"times\" [hBind]=\"ptm('clearIcon')\" [class]=\"cx('clearIcon')\" (click)=\"clear()\" [attr.aria-hidden]=\"true\" />\n }\n @if (clearIconTemplate() || _clearIconTemplate) {\n <span [hBind]=\"ptm('clearIcon')\" [class]=\"cx('clearIcon')\" (click)=\"clear()\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"clearIconTemplate() || _clearIconTemplate\"></ng-template>\n </span>\n }\n}\n\n@if (multiple()) {\n <ul\n #multiContainer\n [hBind]=\"ptm('inputMultiple')\"\n [class]=\"cx('inputMultiple')\"\n [attr.data-h]=\"inputMultipleDataP\"\n [tabindex]=\"-1\"\n role=\"listbox\"\n [attr.aria-orientation]=\"'horizontal'\"\n [attr.aria-activedescendant]=\"focused ? focusedMultipleOptionId : undefined\"\n (focus)=\"onMultipleContainerFocus($event)\"\n (blur)=\"onMultipleContainerBlur($event)\"\n (keydown)=\"onMultipleContainerKeyDown($event)\"\n >\n @for (option of modelValue(); track option; let i = $index) {\n <li\n #token\n [hBind]=\"ptm('chipItem')\"\n [class]=\"cx('chipItem', { i })\"\n [attr.id]=\"id() + '_multiple_option_' + i\"\n role=\"option\"\n [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-setsize]=\"modelValue().length\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-selected]=\"true\"\n >\n <h-chip\n [pt]=\"ptm('pcChip')\"\n [class]=\"cx('pcChip')\"\n [label]=\"!selectedItemTemplate() && !_selectedItemTemplate && getOptionLabel(option)\"\n [disabled]=\"$disabled()\"\n [removable]=\"true\"\n (onRemove)=\"!readonly() ? removeOption($event, i) : ''\"\n [unstyled]=\"unstyled()\"\n >\n <ng-container *ngTemplateOutlet=\"selectedItemTemplate() || _selectedItemTemplate; context: { $implicit: option }\"></ng-container>\n <ng-template #removeicon>\n @if (!removeIconTemplate() && !_removeIconTemplate) {\n <span [hBind]=\"ptm('chipIcon')\" [class]=\"cx('chipIcon')\" (click)=\"!readonly() && !$disabled() ? removeOption($event, i) : ''\">\n <svg data-h-icon=\"times-circle\" [class]=\"cx('chipIcon')\" [attr.aria-hidden]=\"true\" />\n </span>\n }\n @if (removeIconTemplate() || _removeIconTemplate) {\n <span [hBind]=\"ptm('chipIcon')\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"removeIconTemplate() || _removeIconTemplate; context: { removeCallback: removeOption.bind(this), index: i, class: cx('chipIcon') }\"></ng-template>\n </span>\n }\n </ng-template>\n </h-chip>\n </li>\n }\n <li [hBind]=\"ptm('inputChip')\" [class]=\"cx('inputChip')\" role=\"option\">\n <input\n #focusInput\n #multiIn\n [hAutoFocus]=\"autofocus()\"\n [hBind]=\"ptm('input')\"\n [class]=\"cx('pcInputText')\"\n [ngStyle]=\"inputStyle()\"\n [attr.type]=\"type()\"\n [attr.id]=\"inputId()\"\n [attr.autocomplete]=\"autocomplete()\"\n [attr.name]=\"name()\"\n [attr.minlength]=\"minlength()\"\n [attr.maxlength]=\"maxlength()\"\n [attr.size]=\"size()\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [attr.pattern]=\"pattern()\"\n role=\"combobox\"\n [attr.placeholder]=\"!$filled() ? placeholder() : null\"\n aria-autocomplete=\"list\"\n [attr.tabindex]=\"!$disabled() ? tabindex() : -1\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly() ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.aria-required]=\"required()\"\n [attr.aria-expanded]=\"overlayVisible ?? false\"\n [attr.aria-controls]=\"overlayVisible ? id() + '_list' : null\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onInputPaste($event)\"\n (keyup)=\"onInputKeyUp($event)\"\n />\n </li>\n </ul>\n}\n@if (loading) {\n @if (!loadingIconTemplate() && !_loadingIconTemplate) {\n <svg data-h-icon=\"spinner\" [hBind]=\"ptm('loader')\" [class]=\"cx('loader')\" [spin]=\"true\" [attr.aria-hidden]=\"true\" />\n }\n @if (loadingIconTemplate() || _loadingIconTemplate) {\n <span [hBind]=\"ptm('loader')\" [class]=\"cx('loader')\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"loadingIconTemplate() || _loadingIconTemplate\"></ng-template>\n </span>\n }\n}\n@if (dropdown()) {\n <button #ddBtn type=\"button\" [hBind]=\"ptm('dropdown')\" [attr.aria-label]=\"dropdownAriaLabel()\" [class]=\"cx('dropdown')\" [disabled]=\"$disabled()\" hRipple (click)=\"handleDropdownClick($event)\" [attr.tabindex]=\"tabindex()\">\n @if (dropdownIcon()) {\n <span [ngClass]=\"dropdownIcon\" [attr.aria-hidden]=\"true\"></span>\n }\n @if (!dropdownIcon()) {\n @if (!dropdownIconTemplate() && !_dropdownIconTemplate) {\n <svg data-h-icon=\"chevron-down\" [hBind]=\"ptm('dropdown')\" />\n }\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate() || _dropdownIconTemplate\"></ng-template>\n }\n </button>\n}\n<h-overlay\n #overlay\n [hostAttrSelector]=\"$attrSelector\"\n [(visible)]=\"overlayVisible\"\n [options]=\"overlayOptions()\"\n [target]=\"'@parent'\"\n [appendTo]=\"$appendTo()\"\n [unstyled]=\"unstyled()\"\n [pt]=\"ptm('pcOverlay')\"\n [motionOptions]=\"motionOptions()\"\n (onBeforeEnter)=\"onOverlayBeforeEnter()\"\n (onHide)=\"hide()\"\n [attr.data-h]=\"overlayDataP\"\n >\n <ng-template #content>\n <div [hBind]=\"ptm('overlay')\" [class]=\"cn(cx('overlay'), panelStyleClass())\" [ngStyle]=\"panelStyle()\">\n <ng-container *ngTemplateOutlet=\"headerTemplate() || _headerTemplate\"></ng-container>\n <div [hBind]=\"ptm('listContainer')\" [class]=\"cx('listContainer')\" [style.max-height]=\"virtualScroll() ? 'auto' : scrollHeight()\" [tabindex]=\"-1\">\n @if (virtualScroll()) {\n <h-scroller\n #scroller\n [tabindex]=\"-1\"\n [pt]=\"ptm('virtualScroller')\"\n [items]=\"visibleOptions()\"\n [style]=\"{ height: scrollHeight() }\"\n [itemSize]=\"virtualScrollItemSize()\"\n [autoSize]=\"true\"\n [lazy]=\"lazy()\"\n (onLazyLoad)=\"onLazyLoad.emit($event)\"\n [options]=\"virtualScrollOptions()\"\n >\n <ng-template #content let-items let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: items, options: scrollerOptions }\"></ng-container>\n </ng-template>\n @if (loaderTemplate() || _loaderTemplate) {\n <ng-template #loader let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"loaderTemplate() || _loaderTemplate; context: { options: scrollerOptions }\"></ng-container>\n </ng-template>\n }\n </h-scroller>\n }\n @if (!virtualScroll()) {\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: visibleOptions(), options: {} }\"></ng-container>\n }\n </div>\n\n <ng-template #buildInItems let-items let-scrollerOptions=\"options\">\n <ul #items [hBind]=\"ptm('list')\" [class]=\"cn(cx('list'), scrollerOptions.contentStyleClass)\" [style]=\"scrollerOptions.contentStyle\" role=\"listbox\" [attr.id]=\"id() + '_list'\" [attr.aria-label]=\"listLabel\">\n @for (option of items; track option; let i = $index) {\n @if (isOptionGroup(option)) {\n <li [hBind]=\"ptm('optionGroup')\" [attr.id]=\"id() + '_' + getOptionIndex(i, scrollerOptions)\" [class]=\"cx('optionGroup')\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\" role=\"option\">\n @if (!groupTemplate()) {\n <span>{{ getOptionGroupLabel(option.optionGroup) }}</span>\n }\n <ng-container *ngTemplateOutlet=\"groupTemplate(); context: { $implicit: option.optionGroup }\"></ng-container>\n </li>\n }\n @if (!isOptionGroup(option)) {\n <li\n hRipple\n [hBind]=\"getPTOptions(option, scrollerOptions, i, 'option')\"\n [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\"\n [class]=\"cx('option', { option, i, scrollerOptions })\"\n [attr.id]=\"id() + '_' + getOptionIndex(i, scrollerOptions)\"\n role=\"option\"\n [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-selected]=\"isSelected(option)\"\n [attr.data-h-selected]=\"isSelected(option)\"\n [attr.aria-disabled]=\"isOptionDisabled(option)\"\n [attr.data-h-focused]=\"focusedOptionIndex() === getOptionIndex(i, scrollerOptions)\"\n [attr.aria-setsize]=\"ariaSetSize\"\n [attr.aria-posinset]=\"getAriaPosInset(getOptionIndex(i, scrollerOptions))\"\n (click)=\"onOptionSelect($event, option)\"\n (mouseenter)=\"onOptionMouseEnter($event, getOptionIndex(i, scrollerOptions))\"\n >\n @if (!itemTemplate() && !_itemTemplate) {\n <span>{{ getOptionLabel(option) }}</span>\n }\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate() || _itemTemplate;\n context: {\n $implicit: option,\n index: scrollerOptions.getOptions ? scrollerOptions.getOptions(i) : i\n }\n \"\n ></ng-container>\n </li>\n }\n }\n @if (!items || (items && items.length === 0 && showEmptyMessage())) {\n <li [hBind]=\"ptm('emptyMessage')\" [class]=\"cx('emptyMessage')\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\" role=\"option\">\n @if (!emptyTemplate() && !_emptyTemplate) {\n {{ searchResultMessageText }}\n } @else {\n <ng-template [ngTemplateOutlet]=\"empty\"></ng-template>\n }\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate() || _emptyTemplate\"></ng-container>\n </li>\n }\n </ul>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"footerTemplate() || _footerTemplate\"></ng-container>\n </div>\n <span role=\"status\" aria-live=\"polite\" class=\"h-hidden-accessible\">\n {{ selectedMessageText }}\n </span>\n</ng-template>\n</h-overlay>\n" }]
1937
- }], ctorParameters: () => [{ type: i1.OverlayService }, { type: i0.NgZone }], propDecorators: { minLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "minLength", required: false }] }], minQueryLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "minQueryLength", required: false }] }], delay: [{ type: i0.Input, args: [{ isSignal: true, alias: "delay", required: false }] }], panelStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "panelStyle", required: false }] }], styleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "styleClass", required: false }] }], panelStyleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "panelStyleClass", required: false }] }], inputStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputStyle", required: false }] }], inputId: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputId", required: false }] }], inputStyleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputStyleClass", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], scrollHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollHeight", required: false }] }], lazy: [{ type: i0.Input, args: [{ isSignal: true, alias: "lazy", required: false }] }], virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], virtualScrollItemSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScrollItemSize", required: false }] }], virtualScrollOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScrollOptions", required: false }] }], autoHighlight: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoHighlight", required: false }] }], forceSelection: [{ type: i0.Input, args: [{ isSignal: true, alias: "forceSelection", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], autoZIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoZIndex", required: false }] }], baseZIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "baseZIndex", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], dropdownAriaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownAriaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], dropdownIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownIcon", required: false }] }], unique: [{ type: i0.Input, args: [{ isSignal: true, alias: "unique", required: false }] }], group: [{ type: i0.Input, args: [{ isSignal: true, alias: "group", required: false }] }], completeOnFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "completeOnFocus", required: false }] }], showClear: [{ type: i0.Input, args: [{ isSignal: true, alias: "showClear", required: false }] }], dropdown: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdown", required: false }] }], showEmptyMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "showEmptyMessage", required: false }] }], dropdownMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownMode", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], addOnTab: [{ type: i0.Input, args: [{ isSignal: true, alias: "addOnTab", required: false }] }], tabindex: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabindex", required: false }] }], dataKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "dataKey", required: false }] }], emptyMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "emptyMessage", required: false }] }], showTransitionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "showTransitionOptions", required: false }] }], hideTransitionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideTransitionOptions", required: false }] }], autofocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "autofocus", required: false }] }], autocomplete: [{ type: i0.Input, args: [{ isSignal: true, alias: "autocomplete", required: false }] }], optionGroupChildren: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionGroupChildren", required: false }] }], optionGroupLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionGroupLabel", required: false }] }], overlayOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "overlayOptions", required: false }] }], suggestions: [{ type: i0.Input, args: [{ isSignal: true, alias: "suggestions", required: false }] }], optionLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionLabel", required: false }] }], optionValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionValue", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }, { type: i0.Output, args: ["idChange"] }], searchMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchMessage", required: false }] }], emptySelectionMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "emptySelectionMessage", required: false }] }], selectionMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectionMessage", required: false }] }], autoOptionFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoOptionFocus", required: false }] }], selectOnFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectOnFocus", required: false }] }], searchLocale: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchLocale", required: false }] }], optionDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionDisabled", required: false }] }], focusOnHover: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusOnHover", required: false }] }], typeahead: [{ type: i0.Input, args: [{ isSignal: true, alias: "typeahead", required: false }] }], addOnBlur: [{ type: i0.Input, args: [{ isSignal: true, alias: "addOnBlur", required: false }] }], separator: [{ type: i0.Input, args: [{ isSignal: true, alias: "separator", required: false }] }], appendTo: [{ type: i0.Input, args: [{ isSignal: true, alias: "appendTo", required: false }] }], motionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "motionOptions", required: false }] }], completeMethod: [{ type: i0.Output, args: ["completeMethod"] }], onSelect: [{ type: i0.Output, args: ["onSelect"] }], onUnselect: [{ type: i0.Output, args: ["onUnselect"] }], onAdd: [{ type: i0.Output, args: ["onAdd"] }], onFocus: [{ type: i0.Output, args: ["onFocus"] }], onBlur: [{ type: i0.Output, args: ["onBlur"] }], onDropdownClick: [{ type: i0.Output, args: ["onDropdownClick"] }], onClear: [{ type: i0.Output, args: ["onClear"] }], onInputKeydown: [{ type: i0.Output, args: ["onInputKeydown"] }], onKeyUp: [{ type: i0.Output, args: ["onKeyUp"] }], onShow: [{ type: i0.Output, args: ["onShow"] }], onHide: [{ type: i0.Output, args: ["onHide"] }], onLazyLoad: [{ type: i0.Output, args: ["onLazyLoad"] }], inputEL: [{ type: i0.ViewChild, args: ['focusInput', { isSignal: true }] }], multiInputEl: [{ type: i0.ViewChild, args: ['multiIn', { isSignal: true }] }], multiContainerEL: [{ type: i0.ViewChild, args: ['multiContainer', { isSignal: true }] }], dropdownButton: [{ type: i0.ViewChild, args: ['ddBtn', { isSignal: true }] }], itemsViewChild: [{ type: i0.ViewChild, args: ['items', { isSignal: true }] }], scroller: [{ type: i0.ViewChild, args: ['scroller', { isSignal: true }] }], overlayViewChild: [{ type: i0.ViewChild, args: ['overlay', { isSignal: true }] }], itemTemplate: [{ type: i0.ContentChild, args: ['item', { isSignal: true }] }], emptyTemplate: [{ type: i0.ContentChild, args: ['empty', { isSignal: true }] }], headerTemplate: [{ type: i0.ContentChild, args: ['header', { isSignal: true }] }], footerTemplate: [{ type: i0.ContentChild, args: ['footer', { isSignal: true }] }], selectedItemTemplate: [{ type: i0.ContentChild, args: ['selecteditem', { isSignal: true }] }], groupTemplate: [{ type: i0.ContentChild, args: ['group', { isSignal: true }] }], loaderTemplate: [{ type: i0.ContentChild, args: ['loader', { isSignal: true }] }], removeIconTemplate: [{ type: i0.ContentChild, args: ['removeicon', { isSignal: true }] }], loadingIconTemplate: [{ type: i0.ContentChild, args: ['loadingicon', { isSignal: true }] }], clearIconTemplate: [{ type: i0.ContentChild, args: ['clearicon', { isSignal: true }] }], dropdownIconTemplate: [{ type: i0.ContentChild, args: ['dropdownicon', { isSignal: true }] }], templates: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => HelixTemplate), { isSignal: true }] }] } });
1938
- class AutoCompleteModule {
1939
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AutoCompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1940
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.6", ngImport: i0, type: AutoCompleteModule, imports: [AutoComplete, SharedModule], exports: [AutoComplete, SharedModule] });
1941
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AutoCompleteModule, imports: [AutoComplete, SharedModule, SharedModule] });
1942
- }
1943
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AutoCompleteModule, decorators: [{
1944
- type: NgModule,
1945
- args: [{
1946
- imports: [AutoComplete, SharedModule],
1947
- exports: [AutoComplete, SharedModule]
1948
- }]
1949
- }] });
1950
-
1951
- /**
1952
- * Generated bundle index. Do not edit.
1953
- */
1954
-
450
+ var AutoComplete = class AutoComplete extends BaseInput {
451
+ overlayService;
452
+ zone;
453
+ componentName = "AutoComplete";
454
+ $pcAutoComplete = inject(AUTOCOMPLETE_INSTANCE, {
455
+ optional: true,
456
+ skipSelf: true
457
+ }) ?? void 0;
458
+ bindDirectiveInstance = inject(Bind, { self: true });
459
+ minLength = input(1, {
460
+ ...ngDevMode ? { debugName: "minLength" } : /* istanbul ignore next */ {},
461
+ transform: numberAttribute
462
+ });
463
+ minQueryLength = input(void 0, {
464
+ ...ngDevMode ? { debugName: "minQueryLength" } : /* istanbul ignore next */ {},
465
+ transform: numberAttribute
466
+ });
467
+ delay = input(300, {
468
+ ...ngDevMode ? { debugName: "delay" } : /* istanbul ignore next */ {},
469
+ transform: numberAttribute
470
+ });
471
+ panelStyle = input(...ngDevMode ? [void 0, { debugName: "panelStyle" }] : /* istanbul ignore next */ []);
472
+ styleClass = input(...ngDevMode ? [void 0, { debugName: "styleClass" }] : /* istanbul ignore next */ []);
473
+ panelStyleClass = input(...ngDevMode ? [void 0, { debugName: "panelStyleClass" }] : /* istanbul ignore next */ []);
474
+ inputStyle = input(...ngDevMode ? [void 0, { debugName: "inputStyle" }] : /* istanbul ignore next */ []);
475
+ inputId = input(...ngDevMode ? [void 0, { debugName: "inputId" }] : /* istanbul ignore next */ []);
476
+ inputStyleClass = input(...ngDevMode ? [void 0, { debugName: "inputStyleClass" }] : /* istanbul ignore next */ []);
477
+ placeholder = input(...ngDevMode ? [void 0, { debugName: "placeholder" }] : /* istanbul ignore next */ []);
478
+ readonly = input(void 0, {
479
+ ...ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {},
480
+ transform: booleanAttribute
481
+ });
482
+ scrollHeight = input("200px", ...ngDevMode ? [{ debugName: "scrollHeight" }] : /* istanbul ignore next */ []);
483
+ lazy = input(false, {
484
+ ...ngDevMode ? { debugName: "lazy" } : /* istanbul ignore next */ {},
485
+ transform: booleanAttribute
486
+ });
487
+ virtualScroll = input(void 0, {
488
+ ...ngDevMode ? { debugName: "virtualScroll" } : /* istanbul ignore next */ {},
489
+ transform: booleanAttribute
490
+ });
491
+ virtualScrollItemSize = input(void 0, {
492
+ ...ngDevMode ? { debugName: "virtualScrollItemSize" } : /* istanbul ignore next */ {},
493
+ transform: numberAttribute
494
+ });
495
+ virtualScrollOptions = input(...ngDevMode ? [void 0, { debugName: "virtualScrollOptions" }] : /* istanbul ignore next */ []);
496
+ autoHighlight = input(void 0, {
497
+ ...ngDevMode ? { debugName: "autoHighlight" } : /* istanbul ignore next */ {},
498
+ transform: booleanAttribute
499
+ });
500
+ forceSelection = input(void 0, {
501
+ ...ngDevMode ? { debugName: "forceSelection" } : /* istanbul ignore next */ {},
502
+ transform: booleanAttribute
503
+ });
504
+ type = input("text", ...ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []);
505
+ autoZIndex = input(true, {
506
+ ...ngDevMode ? { debugName: "autoZIndex" } : /* istanbul ignore next */ {},
507
+ transform: booleanAttribute
508
+ });
509
+ baseZIndex = input(0, {
510
+ ...ngDevMode ? { debugName: "baseZIndex" } : /* istanbul ignore next */ {},
511
+ transform: numberAttribute
512
+ });
513
+ ariaLabel = input(...ngDevMode ? [void 0, { debugName: "ariaLabel" }] : /* istanbul ignore next */ []);
514
+ dropdownAriaLabel = input(...ngDevMode ? [void 0, { debugName: "dropdownAriaLabel" }] : /* istanbul ignore next */ []);
515
+ ariaLabelledBy = input(...ngDevMode ? [void 0, { debugName: "ariaLabelledBy" }] : /* istanbul ignore next */ []);
516
+ dropdownIcon = input(void 0, ...ngDevMode ? [{ debugName: "dropdownIcon" }] : /* istanbul ignore next */ []);
517
+ unique = input(true, {
518
+ ...ngDevMode ? { debugName: "unique" } : /* istanbul ignore next */ {},
519
+ transform: booleanAttribute
520
+ });
521
+ group = input(void 0, {
522
+ ...ngDevMode ? { debugName: "group" } : /* istanbul ignore next */ {},
523
+ transform: booleanAttribute
524
+ });
525
+ completeOnFocus = input(false, {
526
+ ...ngDevMode ? { debugName: "completeOnFocus" } : /* istanbul ignore next */ {},
527
+ transform: booleanAttribute
528
+ });
529
+ showClear = input(false, {
530
+ ...ngDevMode ? { debugName: "showClear" } : /* istanbul ignore next */ {},
531
+ transform: booleanAttribute
532
+ });
533
+ dropdown = input(void 0, {
534
+ ...ngDevMode ? { debugName: "dropdown" } : /* istanbul ignore next */ {},
535
+ transform: booleanAttribute
536
+ });
537
+ showEmptyMessage = input(true, {
538
+ ...ngDevMode ? { debugName: "showEmptyMessage" } : /* istanbul ignore next */ {},
539
+ transform: booleanAttribute
540
+ });
541
+ dropdownMode = input("blank", ...ngDevMode ? [{ debugName: "dropdownMode" }] : /* istanbul ignore next */ []);
542
+ multiple = input(void 0, {
543
+ ...ngDevMode ? { debugName: "multiple" } : /* istanbul ignore next */ {},
544
+ transform: booleanAttribute
545
+ });
546
+ addOnTab = input(false, {
547
+ ...ngDevMode ? { debugName: "addOnTab" } : /* istanbul ignore next */ {},
548
+ transform: booleanAttribute
549
+ });
550
+ tabindex = input(void 0, {
551
+ ...ngDevMode ? { debugName: "tabindex" } : /* istanbul ignore next */ {},
552
+ transform: numberAttribute
553
+ });
554
+ dataKey = input(...ngDevMode ? [void 0, { debugName: "dataKey" }] : /* istanbul ignore next */ []);
555
+ emptyMessage = input(...ngDevMode ? [void 0, { debugName: "emptyMessage" }] : /* istanbul ignore next */ []);
556
+ showTransitionOptions = input(".12s cubic-bezier(0, 0, 0.2, 1)", ...ngDevMode ? [{ debugName: "showTransitionOptions" }] : /* istanbul ignore next */ []);
557
+ hideTransitionOptions = input(".1s linear", ...ngDevMode ? [{ debugName: "hideTransitionOptions" }] : /* istanbul ignore next */ []);
558
+ autofocus = input(void 0, {
559
+ ...ngDevMode ? { debugName: "autofocus" } : /* istanbul ignore next */ {},
560
+ transform: booleanAttribute
561
+ });
562
+ autocomplete = input("off", ...ngDevMode ? [{ debugName: "autocomplete" }] : /* istanbul ignore next */ []);
563
+ optionGroupChildren = input("items", ...ngDevMode ? [{ debugName: "optionGroupChildren" }] : /* istanbul ignore next */ []);
564
+ optionGroupLabel = input("label", ...ngDevMode ? [{ debugName: "optionGroupLabel" }] : /* istanbul ignore next */ []);
565
+ overlayOptions = input(...ngDevMode ? [void 0, { debugName: "overlayOptions" }] : /* istanbul ignore next */ []);
566
+ suggestions = input(null, ...ngDevMode ? [{ debugName: "suggestions" }] : /* istanbul ignore next */ []);
567
+ optionLabel = input(...ngDevMode ? [void 0, { debugName: "optionLabel" }] : /* istanbul ignore next */ []);
568
+ optionValue = input(...ngDevMode ? [void 0, { debugName: "optionValue" }] : /* istanbul ignore next */ []);
569
+ id = model(void 0, ...ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []);
570
+ searchMessage = input(...ngDevMode ? [void 0, { debugName: "searchMessage" }] : /* istanbul ignore next */ []);
571
+ emptySelectionMessage = input(...ngDevMode ? [void 0, { debugName: "emptySelectionMessage" }] : /* istanbul ignore next */ []);
572
+ selectionMessage = input(...ngDevMode ? [void 0, { debugName: "selectionMessage" }] : /* istanbul ignore next */ []);
573
+ autoOptionFocus = input(false, {
574
+ ...ngDevMode ? { debugName: "autoOptionFocus" } : /* istanbul ignore next */ {},
575
+ transform: booleanAttribute
576
+ });
577
+ selectOnFocus = input(void 0, {
578
+ ...ngDevMode ? { debugName: "selectOnFocus" } : /* istanbul ignore next */ {},
579
+ transform: booleanAttribute
580
+ });
581
+ searchLocale = input(void 0, {
582
+ ...ngDevMode ? { debugName: "searchLocale" } : /* istanbul ignore next */ {},
583
+ transform: booleanAttribute
584
+ });
585
+ optionDisabled = input(...ngDevMode ? [void 0, { debugName: "optionDisabled" }] : /* istanbul ignore next */ []);
586
+ focusOnHover = input(true, {
587
+ ...ngDevMode ? { debugName: "focusOnHover" } : /* istanbul ignore next */ {},
588
+ transform: booleanAttribute
589
+ });
590
+ typeahead = input(true, {
591
+ ...ngDevMode ? { debugName: "typeahead" } : /* istanbul ignore next */ {},
592
+ transform: booleanAttribute
593
+ });
594
+ addOnBlur = input(false, {
595
+ ...ngDevMode ? { debugName: "addOnBlur" } : /* istanbul ignore next */ {},
596
+ transform: booleanAttribute
597
+ });
598
+ separator = input(...ngDevMode ? [void 0, { debugName: "separator" }] : /* istanbul ignore next */ []);
599
+ appendTo = input(void 0, ...ngDevMode ? [{ debugName: "appendTo" }] : /* istanbul ignore next */ []);
600
+ motionOptions = input(void 0, ...ngDevMode ? [{ debugName: "motionOptions" }] : /* istanbul ignore next */ []);
601
+ completeMethod = output();
602
+ onSelect = output();
603
+ onUnselect = output();
604
+ onAdd = output();
605
+ onFocus = output();
606
+ onBlur = output();
607
+ onDropdownClick = output();
608
+ onClear = output();
609
+ onInputKeydown = output();
610
+ onKeyUp = output();
611
+ onShow = output();
612
+ onHide = output();
613
+ onLazyLoad = output();
614
+ inputEL = viewChild("focusInput", ...ngDevMode ? [{ debugName: "inputEL" }] : /* istanbul ignore next */ []);
615
+ multiInputEl = viewChild("multiIn", ...ngDevMode ? [{ debugName: "multiInputEl" }] : /* istanbul ignore next */ []);
616
+ multiContainerEL = viewChild("multiContainer", ...ngDevMode ? [{ debugName: "multiContainerEL" }] : /* istanbul ignore next */ []);
617
+ dropdownButton = viewChild("ddBtn", ...ngDevMode ? [{ debugName: "dropdownButton" }] : /* istanbul ignore next */ []);
618
+ itemsViewChild = viewChild("items", ...ngDevMode ? [{ debugName: "itemsViewChild" }] : /* istanbul ignore next */ []);
619
+ scroller = viewChild("scroller", ...ngDevMode ? [{ debugName: "scroller" }] : /* istanbul ignore next */ []);
620
+ overlayViewChild = viewChild("overlay", ...ngDevMode ? [{ debugName: "overlayViewChild" }] : /* istanbul ignore next */ []);
621
+ itemsWrapper;
622
+ itemTemplate = contentChild("item", ...ngDevMode ? [{ debugName: "itemTemplate" }] : /* istanbul ignore next */ []);
623
+ emptyTemplate = contentChild("empty", ...ngDevMode ? [{ debugName: "emptyTemplate" }] : /* istanbul ignore next */ []);
624
+ headerTemplate = contentChild("header", ...ngDevMode ? [{ debugName: "headerTemplate" }] : /* istanbul ignore next */ []);
625
+ footerTemplate = contentChild("footer", ...ngDevMode ? [{ debugName: "footerTemplate" }] : /* istanbul ignore next */ []);
626
+ selectedItemTemplate = contentChild("selecteditem", ...ngDevMode ? [{ debugName: "selectedItemTemplate" }] : /* istanbul ignore next */ []);
627
+ groupTemplate = contentChild("group", ...ngDevMode ? [{ debugName: "groupTemplate" }] : /* istanbul ignore next */ []);
628
+ loaderTemplate = contentChild("loader", ...ngDevMode ? [{ debugName: "loaderTemplate" }] : /* istanbul ignore next */ []);
629
+ removeIconTemplate = contentChild("removeicon", ...ngDevMode ? [{ debugName: "removeIconTemplate" }] : /* istanbul ignore next */ []);
630
+ loadingIconTemplate = contentChild("loadingicon", ...ngDevMode ? [{ debugName: "loadingIconTemplate" }] : /* istanbul ignore next */ []);
631
+ clearIconTemplate = contentChild("clearicon", ...ngDevMode ? [{ debugName: "clearIconTemplate" }] : /* istanbul ignore next */ []);
632
+ dropdownIconTemplate = contentChild("dropdownicon", ...ngDevMode ? [{ debugName: "dropdownIconTemplate" }] : /* istanbul ignore next */ []);
633
+ onHostClick(event) {
634
+ this.onContainerClick(event);
635
+ }
636
+ value;
637
+ _suggestions = signal(null, ...ngDevMode ? [{ debugName: "_suggestions" }] : /* istanbul ignore next */ []);
638
+ timeout;
639
+ overlayVisible;
640
+ suggestionsUpdated;
641
+ highlightOption;
642
+ highlightOptionChanged;
643
+ focused = false;
644
+ loading;
645
+ scrollHandler;
646
+ listId;
647
+ searchTimeout;
648
+ dirty = false;
649
+ _itemTemplate;
650
+ _groupTemplate;
651
+ _selectedItemTemplate;
652
+ _headerTemplate;
653
+ _emptyTemplate;
654
+ _footerTemplate;
655
+ _loaderTemplate;
656
+ _removeIconTemplate;
657
+ _loadingIconTemplate;
658
+ _clearIconTemplate;
659
+ _dropdownIconTemplate;
660
+ focusedMultipleOptionIndex = signal(-1, ...ngDevMode ? [{ debugName: "focusedMultipleOptionIndex" }] : /* istanbul ignore next */ []);
661
+ focusedOptionIndex = signal(-1, ...ngDevMode ? [{ debugName: "focusedOptionIndex" }] : /* istanbul ignore next */ []);
662
+ _componentStyle = inject(AutoCompleteStyle);
663
+ $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), ...ngDevMode ? [{ debugName: "$appendTo" }] : /* istanbul ignore next */ []);
664
+ visibleOptions = computed(() => {
665
+ return this.group() ? this.flatOptions(this._suggestions()) : this._suggestions() || [];
666
+ }, ...ngDevMode ? [{ debugName: "visibleOptions" }] : /* istanbul ignore next */ []);
667
+ inputValue = computed(() => {
668
+ const modelValue = this.modelValue();
669
+ const selectedOption = this.optionValueSelected ? (this.suggestions() || []).find((option) => equals(option, modelValue, this.equalityKey())) : modelValue;
670
+ if (isNotEmpty(modelValue)) if (typeof modelValue === "object" || this.optionValueSelected) {
671
+ const label = this.getOptionLabel(selectedOption);
672
+ return label != null ? label : modelValue;
673
+ } else return modelValue;
674
+ else return "";
675
+ }, ...ngDevMode ? [{ debugName: "inputValue" }] : /* istanbul ignore next */ []);
676
+ get focusedMultipleOptionId() {
677
+ return this.focusedMultipleOptionIndex() !== -1 ? `${this.id()}_multiple_option_${this.focusedMultipleOptionIndex()}` : null;
678
+ }
679
+ get focusedOptionId() {
680
+ return this.focusedOptionIndex() !== -1 ? `${this.id()}_${this.focusedOptionIndex()}` : null;
681
+ }
682
+ get searchResultMessageText() {
683
+ return isNotEmpty(this.visibleOptions()) && this.overlayVisible ? this.searchMessageText.replaceAll("{0}", this.visibleOptions().length) : this.emptySearchMessageText;
684
+ }
685
+ get searchMessageText() {
686
+ return this.searchMessage() || this.config.translation.searchMessage || "";
687
+ }
688
+ get emptySearchMessageText() {
689
+ return this.emptyMessage() || this.config.translation.emptySearchMessage || "";
690
+ }
691
+ get selectionMessageText() {
692
+ return this.selectionMessage() || this.config.translation.selectionMessage || "";
693
+ }
694
+ get emptySelectionMessageText() {
695
+ return this.emptySelectionMessage() || this.config.translation.emptySelectionMessage || "";
696
+ }
697
+ get selectedMessageText() {
698
+ return this.hasSelectedOption() ? this.selectionMessageText.replaceAll("{0}", this.multiple() ? this.modelValue()?.length : "1") : this.emptySelectionMessageText;
699
+ }
700
+ get ariaSetSize() {
701
+ return this.visibleOptions().filter((option) => !this.isOptionGroup(option)).length;
702
+ }
703
+ get listLabel() {
704
+ return this.config.getTranslation(TranslationKeys.ARIA)["listLabel"];
705
+ }
706
+ get virtualScrollerDisabled() {
707
+ return !this.virtualScroll();
708
+ }
709
+ get optionValueSelected() {
710
+ return typeof this.modelValue() === "string" && this.optionValue();
711
+ }
712
+ chipItemClass(index) {
713
+ return this._componentStyle.classes.chipItem({
714
+ instance: this,
715
+ i: index
716
+ });
717
+ }
718
+ constructor(overlayService, zone) {
719
+ super();
720
+ this.overlayService = overlayService;
721
+ this.zone = zone;
722
+ effect(() => {
723
+ const value = this.suggestions();
724
+ this._suggestions.set(value);
725
+ this.handleSuggestionsChange();
726
+ });
727
+ }
728
+ onInit() {
729
+ if (!this.id()) this.id.set(uuid("pn_id_"));
730
+ this.cd.detectChanges();
731
+ }
732
+ templates = contentChildren(HelixTemplate, ...ngDevMode ? [{ debugName: "templates" }] : /* istanbul ignore next */ []);
733
+ onAfterContentInit() {
734
+ this.templates().forEach((item) => {
735
+ switch (item.getType()) {
736
+ case "item":
737
+ this._itemTemplate = item.template;
738
+ break;
739
+ case "group":
740
+ this._groupTemplate = item.template;
741
+ break;
742
+ case "selecteditem":
743
+ this._selectedItemTemplate = item.template;
744
+ break;
745
+ case "selectedItem":
746
+ this._selectedItemTemplate = item.template;
747
+ break;
748
+ case "header":
749
+ this._headerTemplate = item.template;
750
+ break;
751
+ case "empty":
752
+ this._emptyTemplate = item.template;
753
+ break;
754
+ case "footer":
755
+ this._footerTemplate = item.template;
756
+ break;
757
+ case "loader":
758
+ this._loaderTemplate = item.template;
759
+ break;
760
+ case "removetokenicon":
761
+ this._removeIconTemplate = item.template;
762
+ break;
763
+ case "loadingicon":
764
+ this._loadingIconTemplate = item.template;
765
+ break;
766
+ case "clearicon":
767
+ this._clearIconTemplate = item.template;
768
+ break;
769
+ case "dropdownicon":
770
+ this._dropdownIconTemplate = item.template;
771
+ break;
772
+ default:
773
+ this._itemTemplate = item.template;
774
+ break;
775
+ }
776
+ });
777
+ }
778
+ onAfterViewChecked() {
779
+ this.bindDirectiveInstance.setAttrs(this.ptms(["host", "root"]));
780
+ if (this.suggestionsUpdated && this.overlayViewChild()) this.zone.runOutsideAngular(() => {
781
+ setTimeout(() => {
782
+ if (this.overlayViewChild()) this.overlayViewChild().alignOverlay();
783
+ }, 1);
784
+ this.suggestionsUpdated = false;
785
+ });
786
+ }
787
+ handleSuggestionsChange() {
788
+ if (this.loading) {
789
+ this._suggestions()?.length > 0 || this.showEmptyMessage() || !!this.emptyTemplate() ? this.show() : this.hide();
790
+ const focusedOptionIndex = this.overlayVisible && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
791
+ this.focusedOptionIndex.set(focusedOptionIndex);
792
+ this.suggestionsUpdated = true;
793
+ this.loading = false;
794
+ this.cd.markForCheck();
795
+ }
796
+ }
797
+ flatOptions(options) {
798
+ return (options || []).reduce((result, option, index) => {
799
+ result.push({
800
+ optionGroup: option,
801
+ group: true,
802
+ index
803
+ });
804
+ const optionGroupChildren = this.getOptionGroupChildren(option);
805
+ optionGroupChildren && optionGroupChildren.forEach((o) => result.push(o));
806
+ return result;
807
+ }, []);
808
+ }
809
+ isOptionGroup(option) {
810
+ return this.optionGroupLabel() && option.optionGroup && option.group;
811
+ }
812
+ findFirstOptionIndex() {
813
+ return this.visibleOptions().findIndex((option) => this.isValidOption(option));
814
+ }
815
+ findLastOptionIndex() {
816
+ return findLastIndex(this.visibleOptions(), (option) => this.isValidOption(option));
817
+ }
818
+ findFirstFocusedOptionIndex() {
819
+ const selectedIndex = this.findSelectedOptionIndex();
820
+ return selectedIndex < 0 ? this.findFirstOptionIndex() : selectedIndex;
821
+ }
822
+ findLastFocusedOptionIndex() {
823
+ const selectedIndex = this.findSelectedOptionIndex();
824
+ return selectedIndex < 0 ? this.findLastOptionIndex() : selectedIndex;
825
+ }
826
+ findSelectedOptionIndex() {
827
+ return this.hasSelectedOption() ? this.visibleOptions().findIndex((option) => this.isValidSelectedOption(option)) : -1;
828
+ }
829
+ findNextOptionIndex(index) {
830
+ const matchedOptionIndex = index < this.visibleOptions().length - 1 ? this.visibleOptions().slice(index + 1).findIndex((option) => this.isValidOption(option)) : -1;
831
+ return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : index;
832
+ }
833
+ findPrevOptionIndex(index) {
834
+ const matchedOptionIndex = index > 0 ? findLastIndex(this.visibleOptions().slice(0, index), (option) => this.isValidOption(option)) : -1;
835
+ return matchedOptionIndex > -1 ? matchedOptionIndex : index;
836
+ }
837
+ isValidSelectedOption(option) {
838
+ return this.isValidOption(option) && this.isSelected(option);
839
+ }
840
+ isValidOption(option) {
841
+ return option && !(this.isOptionDisabled(option) || this.isOptionGroup(option));
842
+ }
843
+ isOptionDisabled(option) {
844
+ const optionDisabled = this.optionDisabled();
845
+ return optionDisabled ? resolveFieldData(option, optionDisabled) : false;
846
+ }
847
+ isSelected(option) {
848
+ if (this.multiple()) return this.unique() ? this.modelValue()?.some((model) => equals(model, option, this.equalityKey())) : false;
849
+ return equals(this.modelValue(), option, this.equalityKey());
850
+ }
851
+ isOptionMatched(option, value) {
852
+ return this.isValidOption(option) && this.getOptionLabel(option).toLocaleLowerCase(this.searchLocale()) === value.toLocaleLowerCase(this.searchLocale());
853
+ }
854
+ isInputClicked(event) {
855
+ return event.target === this.inputEL()?.nativeElement;
856
+ }
857
+ isDropdownClicked(event) {
858
+ const ddBtn = this.dropdownButton();
859
+ return ddBtn?.nativeElement ? event.target === ddBtn.nativeElement || ddBtn.nativeElement.contains(event.target) : false;
860
+ }
861
+ equalityKey() {
862
+ return this.optionValue() ? void 0 : this.dataKey();
863
+ }
864
+ onContainerClick(event) {
865
+ if (this.$disabled() || this.loading || this.isInputClicked(event) || this.isDropdownClicked(event)) return;
866
+ const ovc = this.overlayViewChild();
867
+ if (!ovc || !ovc.overlayViewChild()?.nativeElement.contains(event.target)) focus(this.inputEL()?.nativeElement);
868
+ }
869
+ handleDropdownClick(event) {
870
+ let query = void 0;
871
+ const inputEl = this.inputEL();
872
+ if (this.overlayVisible) this.hide(true);
873
+ else {
874
+ focus(inputEl?.nativeElement);
875
+ query = inputEl?.nativeElement?.value;
876
+ const dropdownMode = this.dropdownMode();
877
+ if (dropdownMode === "blank") this.search(event, "", "dropdown");
878
+ else if (dropdownMode === "current") this.search(event, query, "dropdown");
879
+ }
880
+ this.onDropdownClick.emit({
881
+ originalEvent: event,
882
+ query
883
+ });
884
+ }
885
+ onInput(event) {
886
+ if (this.typeahead()) {
887
+ const _minLength = this.minQueryLength() || this.minLength();
888
+ if (this.searchTimeout) clearTimeout(this.searchTimeout);
889
+ let query = event.target.value;
890
+ if (this.maxlength() !== null) query = query.split("").slice(0, this.maxlength()).join("");
891
+ const multiple = this.multiple();
892
+ if (!multiple && !this.forceSelection()) this.updateModel(query);
893
+ if (query.length === 0 && !multiple) {
894
+ this.onClear.emit(void 0);
895
+ setTimeout(() => {
896
+ this.hide();
897
+ }, this.delay() / 2);
898
+ } else if (query.length >= _minLength) {
899
+ this.focusedOptionIndex.set(-1);
900
+ this.searchTimeout = setTimeout(() => {
901
+ this.search(event, query, "input");
902
+ }, this.delay());
903
+ } else this.hide();
904
+ }
905
+ }
906
+ onInputChange(event) {
907
+ this.updateInputWithForceSelection(event);
908
+ }
909
+ onInputFocus(event) {
910
+ if (this.$disabled()) return;
911
+ if (!this.dirty && this.completeOnFocus()) this.search(event, event.target.value, "focus");
912
+ this.dirty = true;
913
+ this.focused = true;
914
+ const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.overlayVisible && this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
915
+ this.focusedOptionIndex.set(focusedOptionIndex);
916
+ this.overlayVisible && this.scrollInView(this.focusedOptionIndex());
917
+ this.onFocus.emit(event);
918
+ }
919
+ onMultipleContainerFocus(event) {
920
+ if (this.$disabled()) return;
921
+ this.focused = true;
922
+ }
923
+ onMultipleContainerBlur(event) {
924
+ this.focusedMultipleOptionIndex.set(-1);
925
+ this.focused = false;
926
+ }
927
+ onMultipleContainerKeyDown(event) {
928
+ if (this.$disabled()) {
929
+ event.preventDefault();
930
+ return;
931
+ }
932
+ switch (event.code) {
933
+ case "ArrowLeft":
934
+ this.onArrowLeftKeyOnMultiple(event);
935
+ break;
936
+ case "ArrowRight":
937
+ this.onArrowRightKeyOnMultiple(event);
938
+ break;
939
+ case "Backspace":
940
+ this.onBackspaceKeyOnMultiple(event);
941
+ break;
942
+ default: break;
943
+ }
944
+ }
945
+ onInputBlur(event) {
946
+ this.dirty = false;
947
+ this.focused = false;
948
+ this.focusedOptionIndex.set(-1);
949
+ if (this.addOnBlur() && this.multiple() && !this.typeahead()) {
950
+ const multiInput = this.multiInputEl();
951
+ const inputValue = (multiInput?.nativeElement?.value || event.target.value || "").trim();
952
+ if (inputValue && !this.isSelected(inputValue)) {
953
+ this.updateModel([...this.modelValue() || [], inputValue]);
954
+ this.onAdd.emit({
955
+ originalEvent: event,
956
+ value: inputValue
957
+ });
958
+ if (multiInput?.nativeElement) multiInput.nativeElement.value = "";
959
+ else event.target.value = "";
960
+ }
961
+ }
962
+ this.onModelTouched();
963
+ this.onBlur.emit(event);
964
+ }
965
+ onInputPaste(event) {
966
+ const separator = this.separator();
967
+ if (separator && this.multiple() && !this.typeahead()) {
968
+ const pastedData = (event.clipboardData || window["clipboardData"])?.getData("Text");
969
+ if (pastedData) {
970
+ const values = pastedData.split(separator);
971
+ const newValues = [...this.modelValue() || []];
972
+ values.forEach((value) => {
973
+ const trimmedValue = value.trim();
974
+ if (trimmedValue && !this.isSelected(trimmedValue)) newValues.push(trimmedValue);
975
+ });
976
+ if (newValues.length > (this.modelValue() || []).length) {
977
+ const addedValues = newValues.slice((this.modelValue() || []).length);
978
+ this.updateModel(newValues);
979
+ addedValues.forEach((addedValue) => {
980
+ this.onAdd.emit({
981
+ originalEvent: event,
982
+ value: addedValue
983
+ });
984
+ });
985
+ const multiInput = this.multiInputEl();
986
+ if (multiInput?.nativeElement) multiInput.nativeElement.value = "";
987
+ else event.target.value = "";
988
+ event.preventDefault();
989
+ }
990
+ }
991
+ } else this.onKeyDown(event);
992
+ }
993
+ onInputKeyUp(event) {
994
+ this.onKeyUp.emit(event);
995
+ }
996
+ onKeyDown(event) {
997
+ if (this.$disabled()) {
998
+ event.preventDefault();
999
+ return;
1000
+ }
1001
+ this.onInputKeydown.emit(event);
1002
+ switch (event.code) {
1003
+ case "ArrowDown":
1004
+ this.onArrowDownKey(event);
1005
+ break;
1006
+ case "ArrowUp":
1007
+ this.onArrowUpKey(event);
1008
+ break;
1009
+ case "ArrowLeft":
1010
+ this.onArrowLeftKey(event);
1011
+ break;
1012
+ case "ArrowRight":
1013
+ this.onArrowRightKey(event);
1014
+ break;
1015
+ case "Home":
1016
+ this.onHomeKey(event);
1017
+ break;
1018
+ case "End":
1019
+ this.onEndKey(event);
1020
+ break;
1021
+ case "PageDown":
1022
+ this.onPageDownKey(event);
1023
+ break;
1024
+ case "PageUp":
1025
+ this.onPageUpKey(event);
1026
+ break;
1027
+ case "Enter":
1028
+ case "NumpadEnter":
1029
+ this.onEnterKey(event);
1030
+ break;
1031
+ case "Escape":
1032
+ this.onEscapeKey(event);
1033
+ break;
1034
+ case "Tab":
1035
+ this.onTabKey(event);
1036
+ break;
1037
+ case "Backspace":
1038
+ this.onBackspaceKey(event);
1039
+ break;
1040
+ case "ShiftLeft":
1041
+ case "ShiftRight": break;
1042
+ default:
1043
+ this.handleSeparatorKey(event);
1044
+ break;
1045
+ }
1046
+ }
1047
+ handleSeparatorKey(event) {
1048
+ const separator = this.separator();
1049
+ if (separator && this.multiple() && !this.typeahead()) {
1050
+ if (separator === event.key || typeof separator === "string" && event.key === separator || separator instanceof RegExp && event.key.match(separator)) {
1051
+ const multiInput = this.multiInputEl();
1052
+ const inputValue = (multiInput?.nativeElement?.value || event.target.value || "").trim();
1053
+ if (inputValue && !this.isSelected(inputValue)) {
1054
+ this.updateModel([...this.modelValue() || [], inputValue]);
1055
+ this.onAdd.emit({
1056
+ originalEvent: event,
1057
+ value: inputValue
1058
+ });
1059
+ if (multiInput?.nativeElement) multiInput.nativeElement.value = "";
1060
+ else event.target.value = "";
1061
+ event.preventDefault();
1062
+ }
1063
+ }
1064
+ }
1065
+ }
1066
+ onArrowDownKey(event) {
1067
+ if (!this.overlayVisible) return;
1068
+ const optionIndex = this.focusedOptionIndex() !== -1 ? this.findNextOptionIndex(this.focusedOptionIndex()) : this.findFirstFocusedOptionIndex();
1069
+ this.changeFocusedOptionIndex(event, optionIndex);
1070
+ event.preventDefault();
1071
+ event.stopPropagation();
1072
+ }
1073
+ onArrowUpKey(event) {
1074
+ if (!this.overlayVisible) return;
1075
+ if (event.altKey) {
1076
+ if (this.focusedOptionIndex() !== -1) this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1077
+ this.overlayVisible && this.hide();
1078
+ event.preventDefault();
1079
+ } else {
1080
+ const optionIndex = this.focusedOptionIndex() !== -1 ? this.findPrevOptionIndex(this.focusedOptionIndex()) : this.findLastFocusedOptionIndex();
1081
+ this.changeFocusedOptionIndex(event, optionIndex);
1082
+ event.preventDefault();
1083
+ event.stopPropagation();
1084
+ }
1085
+ }
1086
+ onArrowLeftKey(event) {
1087
+ const target = event.currentTarget;
1088
+ this.focusedOptionIndex.set(-1);
1089
+ if (this.multiple()) if (isEmpty(target.value) && this.hasSelectedOption()) {
1090
+ focus(this.multiContainerEL()?.nativeElement);
1091
+ this.focusedMultipleOptionIndex.set(this.modelValue().length);
1092
+ } else event.stopPropagation();
1093
+ }
1094
+ onArrowRightKey(event) {
1095
+ this.focusedOptionIndex.set(-1);
1096
+ this.multiple() && event.stopPropagation();
1097
+ }
1098
+ onHomeKey(event) {
1099
+ const { currentTarget } = event;
1100
+ const len = currentTarget.value.length;
1101
+ currentTarget.setSelectionRange(0, event.shiftKey ? len : 0);
1102
+ this.focusedOptionIndex.set(-1);
1103
+ event.preventDefault();
1104
+ }
1105
+ onEndKey(event) {
1106
+ const { currentTarget } = event;
1107
+ const len = currentTarget.value.length;
1108
+ currentTarget.setSelectionRange(event.shiftKey ? 0 : len, len);
1109
+ this.focusedOptionIndex.set(-1);
1110
+ event.preventDefault();
1111
+ }
1112
+ onPageDownKey(event) {
1113
+ this.scrollInView(this.visibleOptions().length - 1);
1114
+ event.preventDefault();
1115
+ }
1116
+ onPageUpKey(event) {
1117
+ this.scrollInView(0);
1118
+ event.preventDefault();
1119
+ }
1120
+ onEnterKey(event) {
1121
+ if (!this.typeahead() && !this.forceSelection()) {
1122
+ if (this.multiple()) {
1123
+ const inputValue = event.target.value?.trim();
1124
+ if (inputValue && !this.isSelected(inputValue)) {
1125
+ this.updateModel([...this.modelValue() || [], inputValue]);
1126
+ this.onAdd.emit({
1127
+ originalEvent: event,
1128
+ value: inputValue
1129
+ });
1130
+ const inputEl2 = this.inputEL();
1131
+ inputEl2?.nativeElement && (inputEl2.nativeElement.value = "");
1132
+ }
1133
+ }
1134
+ }
1135
+ if (!this.overlayVisible) return;
1136
+ else {
1137
+ if (this.focusedOptionIndex() !== -1) this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1138
+ this.hide();
1139
+ }
1140
+ event.preventDefault();
1141
+ }
1142
+ onEscapeKey(event) {
1143
+ this.overlayVisible && this.hide(true);
1144
+ event.preventDefault();
1145
+ }
1146
+ onTabKey(event) {
1147
+ if (this.focusedOptionIndex() !== -1) {
1148
+ this.onOptionSelect(event, this.visibleOptions()[this.focusedOptionIndex()]);
1149
+ return;
1150
+ }
1151
+ if (this.multiple() && !this.typeahead()) {
1152
+ const multiInput = this.multiInputEl();
1153
+ const inputEl = this.inputEL();
1154
+ const inputValue = (multiInput?.nativeElement?.value || inputEl?.nativeElement?.value || "").trim();
1155
+ if (this.addOnTab()) {
1156
+ if (inputValue && !this.isSelected(inputValue)) {
1157
+ this.updateModel([...this.modelValue() || [], inputValue]);
1158
+ this.onAdd.emit({
1159
+ originalEvent: event,
1160
+ value: inputValue
1161
+ });
1162
+ if (multiInput?.nativeElement) multiInput.nativeElement.value = "";
1163
+ else if (inputEl?.nativeElement) inputEl.nativeElement.value = "";
1164
+ this.updateInputValue();
1165
+ event.preventDefault();
1166
+ this.overlayVisible && this.hide();
1167
+ return;
1168
+ }
1169
+ }
1170
+ }
1171
+ this.overlayVisible && this.hide();
1172
+ }
1173
+ onBackspaceKey(event) {
1174
+ if (this.multiple()) {
1175
+ if (isNotEmpty(this.modelValue()) && !this.inputEL()?.nativeElement?.value) {
1176
+ const removedValue = this.modelValue()[this.modelValue().length - 1];
1177
+ const newValue = this.modelValue().slice(0, -1);
1178
+ this.updateModel(newValue);
1179
+ this.onUnselect.emit({
1180
+ originalEvent: event,
1181
+ value: removedValue
1182
+ });
1183
+ }
1184
+ event.stopPropagation();
1185
+ }
1186
+ }
1187
+ onArrowLeftKeyOnMultiple(event) {
1188
+ const optionIndex = this.focusedMultipleOptionIndex() < 1 ? 0 : this.focusedMultipleOptionIndex() - 1;
1189
+ this.focusedMultipleOptionIndex.set(optionIndex);
1190
+ }
1191
+ onArrowRightKeyOnMultiple(event) {
1192
+ let optionIndex = this.focusedMultipleOptionIndex();
1193
+ optionIndex++;
1194
+ this.focusedMultipleOptionIndex.set(optionIndex);
1195
+ if (optionIndex > this.modelValue().length - 1) {
1196
+ this.focusedMultipleOptionIndex.set(-1);
1197
+ focus(this.inputEL()?.nativeElement);
1198
+ }
1199
+ }
1200
+ onBackspaceKeyOnMultiple(event) {
1201
+ if (this.focusedMultipleOptionIndex() !== -1) this.removeOption(event, this.focusedMultipleOptionIndex());
1202
+ }
1203
+ onOptionSelect(event, option, isHide = true) {
1204
+ if (this.multiple()) {
1205
+ const inputEl = this.inputEL();
1206
+ inputEl && (inputEl.nativeElement.value = "");
1207
+ if (!this.isSelected(option)) this.updateModel([...this.modelValue() || [], option]);
1208
+ } else this.updateModel(option);
1209
+ this.onSelect.emit({
1210
+ originalEvent: event,
1211
+ value: option
1212
+ });
1213
+ isHide && this.hide(true);
1214
+ }
1215
+ onOptionMouseEnter(event, index) {
1216
+ if (this.focusOnHover()) this.changeFocusedOptionIndex(event, index);
1217
+ }
1218
+ search(event, query, source) {
1219
+ if (query === void 0 || query === null) return;
1220
+ if (source === "input" && query.trim().length === 0) return;
1221
+ this.loading = true;
1222
+ this.completeMethod.emit({
1223
+ originalEvent: event,
1224
+ query
1225
+ });
1226
+ }
1227
+ removeOption(event, index) {
1228
+ event.stopPropagation();
1229
+ const removedOption = this.modelValue()[index];
1230
+ const value = this.modelValue().filter((_, i) => i !== index);
1231
+ this.updateModel(value);
1232
+ this.onUnselect.emit({
1233
+ originalEvent: event,
1234
+ value: removedOption
1235
+ });
1236
+ focus(this.inputEL()?.nativeElement);
1237
+ }
1238
+ updateModel(options) {
1239
+ let value = null;
1240
+ if (options) value = this.multiple() ? options.map((option) => this.getOptionValue(option)) : this.getOptionValue(options);
1241
+ this.value = value;
1242
+ this.writeModelValue(options);
1243
+ this.onModelChange(value);
1244
+ this.updateInputValue();
1245
+ this.cd.markForCheck();
1246
+ }
1247
+ updateInputValue() {
1248
+ const inputEl = this.inputEL();
1249
+ if (inputEl?.nativeElement) if (!this.multiple()) inputEl.nativeElement.value = this.inputValue();
1250
+ else inputEl.nativeElement.value = "";
1251
+ }
1252
+ updateInputWithForceSelection(event) {
1253
+ const input = this.inputEL()?.nativeElement;
1254
+ const inputCleared = !input?.value && isNotEmpty(this.modelValue());
1255
+ if (!this.forceSelection() || this.overlayVisible || !input?.value && !inputCleared) return;
1256
+ const _minLength = this.minQueryLength() ?? this.minLength();
1257
+ if (!inputCleared && input.value.length < _minLength) return;
1258
+ const matchedOption = this.visibleOptions()?.find((option) => this.isOptionMatched(option, input.value));
1259
+ if (!matchedOption) {
1260
+ input.value = "";
1261
+ if (!this.multiple()) this.clear();
1262
+ return;
1263
+ }
1264
+ if (matchedOption && !this.isSelected(matchedOption)) this.onOptionSelect(event, matchedOption);
1265
+ }
1266
+ autoUpdateModel() {
1267
+ if ((this.selectOnFocus() || this.autoHighlight()) && this.autoOptionFocus() && !this.hasSelectedOption()) {
1268
+ const focusedOptionIndex = this.findFirstFocusedOptionIndex();
1269
+ this.focusedOptionIndex.set(focusedOptionIndex);
1270
+ this.onOptionSelect(null, this.visibleOptions()[this.focusedOptionIndex()], false);
1271
+ }
1272
+ }
1273
+ scrollInView(index = -1) {
1274
+ const id = index !== -1 ? `${this.id()}_${index}` : this.focusedOptionId;
1275
+ const itemsChild = this.itemsViewChild();
1276
+ if (itemsChild?.nativeElement) {
1277
+ const element = findSingle(itemsChild.nativeElement, `li[id="${id}"]`);
1278
+ if (element) element.scrollIntoView && element.scrollIntoView({
1279
+ block: "nearest",
1280
+ inline: "nearest"
1281
+ });
1282
+ else if (!this.virtualScrollerDisabled) setTimeout(() => {
1283
+ this.virtualScroll() && this.scroller()?.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex());
1284
+ }, 0);
1285
+ }
1286
+ }
1287
+ changeFocusedOptionIndex(event, index) {
1288
+ if (this.focusedOptionIndex() !== index) {
1289
+ this.focusedOptionIndex.set(index);
1290
+ this.scrollInView();
1291
+ if (this.selectOnFocus()) this.onOptionSelect(event, this.visibleOptions()[index], false);
1292
+ }
1293
+ }
1294
+ show(isFocus = false) {
1295
+ this.dirty = true;
1296
+ this.overlayVisible = true;
1297
+ const focusedOptionIndex = this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : -1;
1298
+ this.focusedOptionIndex.set(focusedOptionIndex);
1299
+ isFocus && focus(this.inputEL()?.nativeElement);
1300
+ if (isFocus) focus(this.inputEL()?.nativeElement);
1301
+ this.onShow.emit(void 0);
1302
+ this.cd.markForCheck();
1303
+ }
1304
+ hide(isFocus = false) {
1305
+ const _hide = () => {
1306
+ this.dirty = isFocus;
1307
+ this.overlayVisible = false;
1308
+ this.focusedOptionIndex.set(-1);
1309
+ isFocus && focus(this.inputEL()?.nativeElement);
1310
+ this.onHide.emit(void 0);
1311
+ this.updateInputWithForceSelection(null);
1312
+ this.cd.markForCheck();
1313
+ };
1314
+ setTimeout(() => {
1315
+ _hide();
1316
+ }, 0);
1317
+ }
1318
+ clear() {
1319
+ this.updateModel(null);
1320
+ const inputEl = this.inputEL();
1321
+ inputEl?.nativeElement && (inputEl.nativeElement.value = "");
1322
+ this.onClear.emit(void 0);
1323
+ }
1324
+ hasSelectedOption() {
1325
+ return isNotEmpty(this.modelValue());
1326
+ }
1327
+ getAriaPosInset(index) {
1328
+ return (this.optionGroupLabel() ? index - this.visibleOptions().slice(0, index).filter((option) => this.isOptionGroup(option)).length : index) + 1;
1329
+ }
1330
+ getOptionLabel(option) {
1331
+ const optionLabel = this.optionLabel();
1332
+ return optionLabel ? resolveFieldData(option, optionLabel) : option && option.label != void 0 ? option.label : option;
1333
+ }
1334
+ getOptionValue(option) {
1335
+ const optionValue = this.optionValue();
1336
+ return optionValue ? resolveFieldData(option, optionValue) : option && option.value != void 0 ? option.value : option;
1337
+ }
1338
+ getOptionIndex(index, scrollerOptions) {
1339
+ return this.virtualScrollerDisabled ? index : scrollerOptions && scrollerOptions.getItemOptions(index)["index"];
1340
+ }
1341
+ getOptionGroupLabel(optionGroup) {
1342
+ const optionGroupLabel = this.optionGroupLabel();
1343
+ return optionGroupLabel ? resolveFieldData(optionGroup, optionGroupLabel) : optionGroup && optionGroup.label != void 0 ? optionGroup.label : optionGroup;
1344
+ }
1345
+ getOptionGroupChildren(optionGroup) {
1346
+ const optionGroupChildren = this.optionGroupChildren();
1347
+ return optionGroupChildren ? resolveFieldData(optionGroup, optionGroupChildren) : optionGroup.items;
1348
+ }
1349
+ getPTOptions(option, scrollerOptions, index, key) {
1350
+ return this.ptm(key, { context: {
1351
+ option,
1352
+ index: this.getOptionIndex(index, scrollerOptions),
1353
+ selected: this.isSelected(option),
1354
+ focused: this.focusedOptionIndex() === this.getOptionIndex(index, scrollerOptions),
1355
+ disabled: this.isOptionDisabled(option)
1356
+ } });
1357
+ }
1358
+ onOverlayBeforeEnter() {
1359
+ const ovc = this.overlayViewChild();
1360
+ const scrl = this.scroller();
1361
+ const itemsChild = this.itemsViewChild();
1362
+ this.itemsWrapper = findSingle(ovc?.overlayViewChild()?.nativeElement, this.virtualScroll() ? "[data-pc-name=\"virtualscroller\"]" : "[data-pc-name=\"pcoverlay\"]");
1363
+ const virtualScroll = this.virtualScroll();
1364
+ if (virtualScroll) {
1365
+ scrl?.setContentEl(itemsChild?.nativeElement);
1366
+ scrl?.viewInit();
1367
+ }
1368
+ if (this.visibleOptions() && this.visibleOptions().length) if (virtualScroll) {
1369
+ const selectedIndex = this.modelValue() ? this.focusedOptionIndex() : -1;
1370
+ if (selectedIndex !== -1) scrl?.scrollToIndex(selectedIndex);
1371
+ } else {
1372
+ let selectedListItem = findSingle(this.itemsWrapper, "[data-pc-section=\"option\"][data-h-selected=\"true\"]");
1373
+ if (selectedListItem) selectedListItem.scrollIntoView({
1374
+ block: "nearest",
1375
+ inline: "center"
1376
+ });
1377
+ }
1378
+ }
1379
+ get containerDataP() {
1380
+ return this.cn({ fluid: this.hasFluid });
1381
+ }
1382
+ get overlayDataP() {
1383
+ return this.cn({ [`overlay-${this.$appendTo()}`]: true });
1384
+ }
1385
+ get inputMultipleDataP() {
1386
+ return this.cn({
1387
+ invalid: this.invalid(),
1388
+ disabled: this.$disabled(),
1389
+ focus: this.focused,
1390
+ fluid: this.hasFluid,
1391
+ filled: this.$variant() === "filled",
1392
+ empty: !this.$filled(),
1393
+ [this.size()]: this.size()
1394
+ });
1395
+ }
1396
+ writeControlValue(value, setModelValue) {
1397
+ if (this.multiple()) {
1398
+ const resolved = (value || []).map((val) => {
1399
+ return this.visibleOptions().find((option) => equals(val, option, this.equalityKey())) ?? val;
1400
+ });
1401
+ setModelValue(isEmpty(value) ? value : resolved);
1402
+ } else {
1403
+ const option = this.visibleOptions().find((option) => equals(value, option, this.equalityKey()));
1404
+ setModelValue(isEmpty(option) ? value : option);
1405
+ }
1406
+ this.value = value;
1407
+ this.updateInputValue();
1408
+ this.cd.markForCheck();
1409
+ }
1410
+ onDestroy() {
1411
+ if (this.scrollHandler) {
1412
+ this.scrollHandler.destroy();
1413
+ this.scrollHandler = null;
1414
+ }
1415
+ }
1416
+ static ɵfac = i0.ɵɵngDeclareFactory({
1417
+ minVersion: "12.0.0",
1418
+ version: "22.2.1",
1419
+ ngImport: i0,
1420
+ type: AutoComplete,
1421
+ deps: [{ token: i1.OverlayService }, { token: i0.NgZone }],
1422
+ target: i0.ɵɵFactoryTarget.Component
1423
+ });
1424
+ static ɵcmp = i0.ɵɵngDeclareComponent({
1425
+ minVersion: "17.0.0",
1426
+ version: "22.2.1",
1427
+ type: AutoComplete,
1428
+ isStandalone: true,
1429
+ selector: "h-autoComplete, h-autocomplete, h-auto-complete",
1430
+ inputs: {
1431
+ minLength: {
1432
+ classPropertyName: "minLength",
1433
+ publicName: "minLength",
1434
+ isSignal: true,
1435
+ isRequired: false,
1436
+ transformFunction: null
1437
+ },
1438
+ minQueryLength: {
1439
+ classPropertyName: "minQueryLength",
1440
+ publicName: "minQueryLength",
1441
+ isSignal: true,
1442
+ isRequired: false,
1443
+ transformFunction: null
1444
+ },
1445
+ delay: {
1446
+ classPropertyName: "delay",
1447
+ publicName: "delay",
1448
+ isSignal: true,
1449
+ isRequired: false,
1450
+ transformFunction: null
1451
+ },
1452
+ panelStyle: {
1453
+ classPropertyName: "panelStyle",
1454
+ publicName: "panelStyle",
1455
+ isSignal: true,
1456
+ isRequired: false,
1457
+ transformFunction: null
1458
+ },
1459
+ styleClass: {
1460
+ classPropertyName: "styleClass",
1461
+ publicName: "styleClass",
1462
+ isSignal: true,
1463
+ isRequired: false,
1464
+ transformFunction: null
1465
+ },
1466
+ panelStyleClass: {
1467
+ classPropertyName: "panelStyleClass",
1468
+ publicName: "panelStyleClass",
1469
+ isSignal: true,
1470
+ isRequired: false,
1471
+ transformFunction: null
1472
+ },
1473
+ inputStyle: {
1474
+ classPropertyName: "inputStyle",
1475
+ publicName: "inputStyle",
1476
+ isSignal: true,
1477
+ isRequired: false,
1478
+ transformFunction: null
1479
+ },
1480
+ inputId: {
1481
+ classPropertyName: "inputId",
1482
+ publicName: "inputId",
1483
+ isSignal: true,
1484
+ isRequired: false,
1485
+ transformFunction: null
1486
+ },
1487
+ inputStyleClass: {
1488
+ classPropertyName: "inputStyleClass",
1489
+ publicName: "inputStyleClass",
1490
+ isSignal: true,
1491
+ isRequired: false,
1492
+ transformFunction: null
1493
+ },
1494
+ placeholder: {
1495
+ classPropertyName: "placeholder",
1496
+ publicName: "placeholder",
1497
+ isSignal: true,
1498
+ isRequired: false,
1499
+ transformFunction: null
1500
+ },
1501
+ readonly: {
1502
+ classPropertyName: "readonly",
1503
+ publicName: "readonly",
1504
+ isSignal: true,
1505
+ isRequired: false,
1506
+ transformFunction: null
1507
+ },
1508
+ scrollHeight: {
1509
+ classPropertyName: "scrollHeight",
1510
+ publicName: "scrollHeight",
1511
+ isSignal: true,
1512
+ isRequired: false,
1513
+ transformFunction: null
1514
+ },
1515
+ lazy: {
1516
+ classPropertyName: "lazy",
1517
+ publicName: "lazy",
1518
+ isSignal: true,
1519
+ isRequired: false,
1520
+ transformFunction: null
1521
+ },
1522
+ virtualScroll: {
1523
+ classPropertyName: "virtualScroll",
1524
+ publicName: "virtualScroll",
1525
+ isSignal: true,
1526
+ isRequired: false,
1527
+ transformFunction: null
1528
+ },
1529
+ virtualScrollItemSize: {
1530
+ classPropertyName: "virtualScrollItemSize",
1531
+ publicName: "virtualScrollItemSize",
1532
+ isSignal: true,
1533
+ isRequired: false,
1534
+ transformFunction: null
1535
+ },
1536
+ virtualScrollOptions: {
1537
+ classPropertyName: "virtualScrollOptions",
1538
+ publicName: "virtualScrollOptions",
1539
+ isSignal: true,
1540
+ isRequired: false,
1541
+ transformFunction: null
1542
+ },
1543
+ autoHighlight: {
1544
+ classPropertyName: "autoHighlight",
1545
+ publicName: "autoHighlight",
1546
+ isSignal: true,
1547
+ isRequired: false,
1548
+ transformFunction: null
1549
+ },
1550
+ forceSelection: {
1551
+ classPropertyName: "forceSelection",
1552
+ publicName: "forceSelection",
1553
+ isSignal: true,
1554
+ isRequired: false,
1555
+ transformFunction: null
1556
+ },
1557
+ type: {
1558
+ classPropertyName: "type",
1559
+ publicName: "type",
1560
+ isSignal: true,
1561
+ isRequired: false,
1562
+ transformFunction: null
1563
+ },
1564
+ autoZIndex: {
1565
+ classPropertyName: "autoZIndex",
1566
+ publicName: "autoZIndex",
1567
+ isSignal: true,
1568
+ isRequired: false,
1569
+ transformFunction: null
1570
+ },
1571
+ baseZIndex: {
1572
+ classPropertyName: "baseZIndex",
1573
+ publicName: "baseZIndex",
1574
+ isSignal: true,
1575
+ isRequired: false,
1576
+ transformFunction: null
1577
+ },
1578
+ ariaLabel: {
1579
+ classPropertyName: "ariaLabel",
1580
+ publicName: "ariaLabel",
1581
+ isSignal: true,
1582
+ isRequired: false,
1583
+ transformFunction: null
1584
+ },
1585
+ dropdownAriaLabel: {
1586
+ classPropertyName: "dropdownAriaLabel",
1587
+ publicName: "dropdownAriaLabel",
1588
+ isSignal: true,
1589
+ isRequired: false,
1590
+ transformFunction: null
1591
+ },
1592
+ ariaLabelledBy: {
1593
+ classPropertyName: "ariaLabelledBy",
1594
+ publicName: "ariaLabelledBy",
1595
+ isSignal: true,
1596
+ isRequired: false,
1597
+ transformFunction: null
1598
+ },
1599
+ dropdownIcon: {
1600
+ classPropertyName: "dropdownIcon",
1601
+ publicName: "dropdownIcon",
1602
+ isSignal: true,
1603
+ isRequired: false,
1604
+ transformFunction: null
1605
+ },
1606
+ unique: {
1607
+ classPropertyName: "unique",
1608
+ publicName: "unique",
1609
+ isSignal: true,
1610
+ isRequired: false,
1611
+ transformFunction: null
1612
+ },
1613
+ group: {
1614
+ classPropertyName: "group",
1615
+ publicName: "group",
1616
+ isSignal: true,
1617
+ isRequired: false,
1618
+ transformFunction: null
1619
+ },
1620
+ completeOnFocus: {
1621
+ classPropertyName: "completeOnFocus",
1622
+ publicName: "completeOnFocus",
1623
+ isSignal: true,
1624
+ isRequired: false,
1625
+ transformFunction: null
1626
+ },
1627
+ showClear: {
1628
+ classPropertyName: "showClear",
1629
+ publicName: "showClear",
1630
+ isSignal: true,
1631
+ isRequired: false,
1632
+ transformFunction: null
1633
+ },
1634
+ dropdown: {
1635
+ classPropertyName: "dropdown",
1636
+ publicName: "dropdown",
1637
+ isSignal: true,
1638
+ isRequired: false,
1639
+ transformFunction: null
1640
+ },
1641
+ showEmptyMessage: {
1642
+ classPropertyName: "showEmptyMessage",
1643
+ publicName: "showEmptyMessage",
1644
+ isSignal: true,
1645
+ isRequired: false,
1646
+ transformFunction: null
1647
+ },
1648
+ dropdownMode: {
1649
+ classPropertyName: "dropdownMode",
1650
+ publicName: "dropdownMode",
1651
+ isSignal: true,
1652
+ isRequired: false,
1653
+ transformFunction: null
1654
+ },
1655
+ multiple: {
1656
+ classPropertyName: "multiple",
1657
+ publicName: "multiple",
1658
+ isSignal: true,
1659
+ isRequired: false,
1660
+ transformFunction: null
1661
+ },
1662
+ addOnTab: {
1663
+ classPropertyName: "addOnTab",
1664
+ publicName: "addOnTab",
1665
+ isSignal: true,
1666
+ isRequired: false,
1667
+ transformFunction: null
1668
+ },
1669
+ tabindex: {
1670
+ classPropertyName: "tabindex",
1671
+ publicName: "tabindex",
1672
+ isSignal: true,
1673
+ isRequired: false,
1674
+ transformFunction: null
1675
+ },
1676
+ dataKey: {
1677
+ classPropertyName: "dataKey",
1678
+ publicName: "dataKey",
1679
+ isSignal: true,
1680
+ isRequired: false,
1681
+ transformFunction: null
1682
+ },
1683
+ emptyMessage: {
1684
+ classPropertyName: "emptyMessage",
1685
+ publicName: "emptyMessage",
1686
+ isSignal: true,
1687
+ isRequired: false,
1688
+ transformFunction: null
1689
+ },
1690
+ showTransitionOptions: {
1691
+ classPropertyName: "showTransitionOptions",
1692
+ publicName: "showTransitionOptions",
1693
+ isSignal: true,
1694
+ isRequired: false,
1695
+ transformFunction: null
1696
+ },
1697
+ hideTransitionOptions: {
1698
+ classPropertyName: "hideTransitionOptions",
1699
+ publicName: "hideTransitionOptions",
1700
+ isSignal: true,
1701
+ isRequired: false,
1702
+ transformFunction: null
1703
+ },
1704
+ autofocus: {
1705
+ classPropertyName: "autofocus",
1706
+ publicName: "autofocus",
1707
+ isSignal: true,
1708
+ isRequired: false,
1709
+ transformFunction: null
1710
+ },
1711
+ autocomplete: {
1712
+ classPropertyName: "autocomplete",
1713
+ publicName: "autocomplete",
1714
+ isSignal: true,
1715
+ isRequired: false,
1716
+ transformFunction: null
1717
+ },
1718
+ optionGroupChildren: {
1719
+ classPropertyName: "optionGroupChildren",
1720
+ publicName: "optionGroupChildren",
1721
+ isSignal: true,
1722
+ isRequired: false,
1723
+ transformFunction: null
1724
+ },
1725
+ optionGroupLabel: {
1726
+ classPropertyName: "optionGroupLabel",
1727
+ publicName: "optionGroupLabel",
1728
+ isSignal: true,
1729
+ isRequired: false,
1730
+ transformFunction: null
1731
+ },
1732
+ overlayOptions: {
1733
+ classPropertyName: "overlayOptions",
1734
+ publicName: "overlayOptions",
1735
+ isSignal: true,
1736
+ isRequired: false,
1737
+ transformFunction: null
1738
+ },
1739
+ suggestions: {
1740
+ classPropertyName: "suggestions",
1741
+ publicName: "suggestions",
1742
+ isSignal: true,
1743
+ isRequired: false,
1744
+ transformFunction: null
1745
+ },
1746
+ optionLabel: {
1747
+ classPropertyName: "optionLabel",
1748
+ publicName: "optionLabel",
1749
+ isSignal: true,
1750
+ isRequired: false,
1751
+ transformFunction: null
1752
+ },
1753
+ optionValue: {
1754
+ classPropertyName: "optionValue",
1755
+ publicName: "optionValue",
1756
+ isSignal: true,
1757
+ isRequired: false,
1758
+ transformFunction: null
1759
+ },
1760
+ id: {
1761
+ classPropertyName: "id",
1762
+ publicName: "id",
1763
+ isSignal: true,
1764
+ isRequired: false,
1765
+ transformFunction: null
1766
+ },
1767
+ searchMessage: {
1768
+ classPropertyName: "searchMessage",
1769
+ publicName: "searchMessage",
1770
+ isSignal: true,
1771
+ isRequired: false,
1772
+ transformFunction: null
1773
+ },
1774
+ emptySelectionMessage: {
1775
+ classPropertyName: "emptySelectionMessage",
1776
+ publicName: "emptySelectionMessage",
1777
+ isSignal: true,
1778
+ isRequired: false,
1779
+ transformFunction: null
1780
+ },
1781
+ selectionMessage: {
1782
+ classPropertyName: "selectionMessage",
1783
+ publicName: "selectionMessage",
1784
+ isSignal: true,
1785
+ isRequired: false,
1786
+ transformFunction: null
1787
+ },
1788
+ autoOptionFocus: {
1789
+ classPropertyName: "autoOptionFocus",
1790
+ publicName: "autoOptionFocus",
1791
+ isSignal: true,
1792
+ isRequired: false,
1793
+ transformFunction: null
1794
+ },
1795
+ selectOnFocus: {
1796
+ classPropertyName: "selectOnFocus",
1797
+ publicName: "selectOnFocus",
1798
+ isSignal: true,
1799
+ isRequired: false,
1800
+ transformFunction: null
1801
+ },
1802
+ searchLocale: {
1803
+ classPropertyName: "searchLocale",
1804
+ publicName: "searchLocale",
1805
+ isSignal: true,
1806
+ isRequired: false,
1807
+ transformFunction: null
1808
+ },
1809
+ optionDisabled: {
1810
+ classPropertyName: "optionDisabled",
1811
+ publicName: "optionDisabled",
1812
+ isSignal: true,
1813
+ isRequired: false,
1814
+ transformFunction: null
1815
+ },
1816
+ focusOnHover: {
1817
+ classPropertyName: "focusOnHover",
1818
+ publicName: "focusOnHover",
1819
+ isSignal: true,
1820
+ isRequired: false,
1821
+ transformFunction: null
1822
+ },
1823
+ typeahead: {
1824
+ classPropertyName: "typeahead",
1825
+ publicName: "typeahead",
1826
+ isSignal: true,
1827
+ isRequired: false,
1828
+ transformFunction: null
1829
+ },
1830
+ addOnBlur: {
1831
+ classPropertyName: "addOnBlur",
1832
+ publicName: "addOnBlur",
1833
+ isSignal: true,
1834
+ isRequired: false,
1835
+ transformFunction: null
1836
+ },
1837
+ separator: {
1838
+ classPropertyName: "separator",
1839
+ publicName: "separator",
1840
+ isSignal: true,
1841
+ isRequired: false,
1842
+ transformFunction: null
1843
+ },
1844
+ appendTo: {
1845
+ classPropertyName: "appendTo",
1846
+ publicName: "appendTo",
1847
+ isSignal: true,
1848
+ isRequired: false,
1849
+ transformFunction: null
1850
+ },
1851
+ motionOptions: {
1852
+ classPropertyName: "motionOptions",
1853
+ publicName: "motionOptions",
1854
+ isSignal: true,
1855
+ isRequired: false,
1856
+ transformFunction: null
1857
+ }
1858
+ },
1859
+ outputs: {
1860
+ id: "idChange",
1861
+ completeMethod: "completeMethod",
1862
+ onSelect: "onSelect",
1863
+ onUnselect: "onUnselect",
1864
+ onAdd: "onAdd",
1865
+ onFocus: "onFocus",
1866
+ onBlur: "onBlur",
1867
+ onDropdownClick: "onDropdownClick",
1868
+ onClear: "onClear",
1869
+ onInputKeydown: "onInputKeydown",
1870
+ onKeyUp: "onKeyUp",
1871
+ onShow: "onShow",
1872
+ onHide: "onHide",
1873
+ onLazyLoad: "onLazyLoad"
1874
+ },
1875
+ host: {
1876
+ listeners: { "click": "onHostClick($event)" },
1877
+ properties: {
1878
+ "class": "cn(cx('root'), styleClass())",
1879
+ "style": "sx('root')",
1880
+ "attr.data-h": "containerDataP"
1881
+ }
1882
+ },
1883
+ providers: [
1884
+ AUTOCOMPLETE_VALUE_ACCESSOR,
1885
+ AutoCompleteStyle,
1886
+ {
1887
+ provide: AUTOCOMPLETE_INSTANCE,
1888
+ useExisting: AutoComplete
1889
+ },
1890
+ {
1891
+ provide: PARENT_INSTANCE,
1892
+ useExisting: AutoComplete
1893
+ }
1894
+ ],
1895
+ queries: [
1896
+ {
1897
+ propertyName: "itemTemplate",
1898
+ first: true,
1899
+ predicate: ["item"],
1900
+ descendants: true,
1901
+ isSignal: true
1902
+ },
1903
+ {
1904
+ propertyName: "emptyTemplate",
1905
+ first: true,
1906
+ predicate: ["empty"],
1907
+ descendants: true,
1908
+ isSignal: true
1909
+ },
1910
+ {
1911
+ propertyName: "headerTemplate",
1912
+ first: true,
1913
+ predicate: ["header"],
1914
+ descendants: true,
1915
+ isSignal: true
1916
+ },
1917
+ {
1918
+ propertyName: "footerTemplate",
1919
+ first: true,
1920
+ predicate: ["footer"],
1921
+ descendants: true,
1922
+ isSignal: true
1923
+ },
1924
+ {
1925
+ propertyName: "selectedItemTemplate",
1926
+ first: true,
1927
+ predicate: ["selecteditem"],
1928
+ descendants: true,
1929
+ isSignal: true
1930
+ },
1931
+ {
1932
+ propertyName: "groupTemplate",
1933
+ first: true,
1934
+ predicate: ["group"],
1935
+ descendants: true,
1936
+ isSignal: true
1937
+ },
1938
+ {
1939
+ propertyName: "loaderTemplate",
1940
+ first: true,
1941
+ predicate: ["loader"],
1942
+ descendants: true,
1943
+ isSignal: true
1944
+ },
1945
+ {
1946
+ propertyName: "removeIconTemplate",
1947
+ first: true,
1948
+ predicate: ["removeicon"],
1949
+ descendants: true,
1950
+ isSignal: true
1951
+ },
1952
+ {
1953
+ propertyName: "loadingIconTemplate",
1954
+ first: true,
1955
+ predicate: ["loadingicon"],
1956
+ descendants: true,
1957
+ isSignal: true
1958
+ },
1959
+ {
1960
+ propertyName: "clearIconTemplate",
1961
+ first: true,
1962
+ predicate: ["clearicon"],
1963
+ descendants: true,
1964
+ isSignal: true
1965
+ },
1966
+ {
1967
+ propertyName: "dropdownIconTemplate",
1968
+ first: true,
1969
+ predicate: ["dropdownicon"],
1970
+ descendants: true,
1971
+ isSignal: true
1972
+ },
1973
+ {
1974
+ propertyName: "templates",
1975
+ predicate: HelixTemplate,
1976
+ isSignal: true
1977
+ }
1978
+ ],
1979
+ viewQueries: [
1980
+ {
1981
+ propertyName: "inputEL",
1982
+ first: true,
1983
+ predicate: ["focusInput"],
1984
+ descendants: true,
1985
+ isSignal: true
1986
+ },
1987
+ {
1988
+ propertyName: "multiInputEl",
1989
+ first: true,
1990
+ predicate: ["multiIn"],
1991
+ descendants: true,
1992
+ isSignal: true
1993
+ },
1994
+ {
1995
+ propertyName: "multiContainerEL",
1996
+ first: true,
1997
+ predicate: ["multiContainer"],
1998
+ descendants: true,
1999
+ isSignal: true
2000
+ },
2001
+ {
2002
+ propertyName: "dropdownButton",
2003
+ first: true,
2004
+ predicate: ["ddBtn"],
2005
+ descendants: true,
2006
+ isSignal: true
2007
+ },
2008
+ {
2009
+ propertyName: "itemsViewChild",
2010
+ first: true,
2011
+ predicate: ["items"],
2012
+ descendants: true,
2013
+ isSignal: true
2014
+ },
2015
+ {
2016
+ propertyName: "scroller",
2017
+ first: true,
2018
+ predicate: ["scroller"],
2019
+ descendants: true,
2020
+ isSignal: true
2021
+ },
2022
+ {
2023
+ propertyName: "overlayViewChild",
2024
+ first: true,
2025
+ predicate: ["overlay"],
2026
+ descendants: true,
2027
+ isSignal: true
2028
+ }
2029
+ ],
2030
+ usesInheritance: true,
2031
+ hostDirectives: [{ directive: i2.Bind }],
2032
+ ngImport: i0,
2033
+ template: "@if (!multiple()) {\n <input\n #focusInput\n [hAutoFocus]=\"autofocus()\"\n hInputText\n [pt]=\"ptm('pcInputText')\"\n [class]=\"cn(cx('pcInputText'), inputStyleClass())\"\n [ngStyle]=\"inputStyle()\"\n [attr.type]=\"type()\"\n [attr.value]=\"inputValue()\"\n [variant]=\"$variant()\"\n [invalid]=\"invalid()\"\n [attr.id]=\"inputId()\"\n [attr.autocomplete]=\"autocomplete()\"\n aria-autocomplete=\"list\"\n role=\"combobox\"\n [attr.placeholder]=\"placeholder()\"\n [attr.name]=\"name()\"\n [attr.minlength]=\"minlength()\"\n [pSize]=\"size()\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [attr.pattern]=\"pattern()\"\n [attr.size]=\"inputSize()\"\n [attr.maxlength]=\"maxlength()\"\n [attr.tabindex]=\"!$disabled() ? tabindex() : -1\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly() ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.aria-required]=\"required()\"\n [attr.aria-expanded]=\"overlayVisible ?? false\"\n [attr.aria-controls]=\"overlayVisible ? id() + '_list' : null\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onInputPaste($event)\"\n (keyup)=\"onInputKeyUp($event)\"\n [fluid]=\"hasFluid\"\n [pInputTextUnstyled]=\"unstyled()\"\n />\n}\n@if ($filled() && !$disabled() && showClear() && !loading) {\n @if (!clearIconTemplate() && !_clearIconTemplate) {\n <svg data-h-icon=\"times\" [hBind]=\"ptm('clearIcon')\" [class]=\"cx('clearIcon')\" (click)=\"clear()\" [attr.aria-hidden]=\"true\" />\n }\n @if (clearIconTemplate() || _clearIconTemplate) {\n <span [hBind]=\"ptm('clearIcon')\" [class]=\"cx('clearIcon')\" (click)=\"clear()\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"clearIconTemplate() || _clearIconTemplate\"></ng-template>\n </span>\n }\n}\n\n@if (multiple()) {\n <ul\n #multiContainer\n [hBind]=\"ptm('inputMultiple')\"\n [class]=\"cx('inputMultiple')\"\n [attr.data-h]=\"inputMultipleDataP\"\n [tabindex]=\"-1\"\n role=\"listbox\"\n [attr.aria-orientation]=\"'horizontal'\"\n [attr.aria-activedescendant]=\"focused ? focusedMultipleOptionId : undefined\"\n (focus)=\"onMultipleContainerFocus($event)\"\n (blur)=\"onMultipleContainerBlur($event)\"\n (keydown)=\"onMultipleContainerKeyDown($event)\"\n >\n @for (option of modelValue(); track option; let i = $index) {\n <li\n #token\n [hBind]=\"ptm('chipItem')\"\n [class]=\"cx('chipItem', { i })\"\n [attr.id]=\"id() + '_multiple_option_' + i\"\n role=\"option\"\n [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-setsize]=\"modelValue().length\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-selected]=\"true\"\n >\n <h-chip\n [pt]=\"ptm('pcChip')\"\n [class]=\"cx('pcChip')\"\n [label]=\"!selectedItemTemplate() && !_selectedItemTemplate && getOptionLabel(option)\"\n [disabled]=\"$disabled()\"\n [removable]=\"true\"\n (onRemove)=\"!readonly() ? removeOption($event, i) : ''\"\n [unstyled]=\"unstyled()\"\n >\n <ng-container *ngTemplateOutlet=\"selectedItemTemplate() || _selectedItemTemplate; context: { $implicit: option }\"></ng-container>\n <ng-template #removeicon>\n @if (!removeIconTemplate() && !_removeIconTemplate) {\n <span [hBind]=\"ptm('chipIcon')\" [class]=\"cx('chipIcon')\" (click)=\"!readonly() && !$disabled() ? removeOption($event, i) : ''\">\n <svg data-h-icon=\"times-circle\" [class]=\"cx('chipIcon')\" [attr.aria-hidden]=\"true\" />\n </span>\n }\n @if (removeIconTemplate() || _removeIconTemplate) {\n <span [hBind]=\"ptm('chipIcon')\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"removeIconTemplate() || _removeIconTemplate; context: { removeCallback: removeOption.bind(this), index: i, class: cx('chipIcon') }\"></ng-template>\n </span>\n }\n </ng-template>\n </h-chip>\n </li>\n }\n <li [hBind]=\"ptm('inputChip')\" [class]=\"cx('inputChip')\" role=\"option\">\n <input\n #focusInput\n #multiIn\n [hAutoFocus]=\"autofocus()\"\n [hBind]=\"ptm('input')\"\n [class]=\"cx('pcInputText')\"\n [ngStyle]=\"inputStyle()\"\n [attr.type]=\"type()\"\n [attr.id]=\"inputId()\"\n [attr.autocomplete]=\"autocomplete()\"\n [attr.name]=\"name()\"\n [attr.minlength]=\"minlength()\"\n [attr.maxlength]=\"maxlength()\"\n [attr.size]=\"size()\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [attr.pattern]=\"pattern()\"\n role=\"combobox\"\n [attr.placeholder]=\"!$filled() ? placeholder() : null\"\n aria-autocomplete=\"list\"\n [attr.tabindex]=\"!$disabled() ? tabindex() : -1\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly() ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.aria-required]=\"required()\"\n [attr.aria-expanded]=\"overlayVisible ?? false\"\n [attr.aria-controls]=\"overlayVisible ? id() + '_list' : null\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onInputPaste($event)\"\n (keyup)=\"onInputKeyUp($event)\"\n />\n </li>\n </ul>\n}\n@if (loading) {\n @if (!loadingIconTemplate() && !_loadingIconTemplate) {\n <svg data-h-icon=\"spinner\" [hBind]=\"ptm('loader')\" [class]=\"cx('loader')\" [spin]=\"true\" [attr.aria-hidden]=\"true\" />\n }\n @if (loadingIconTemplate() || _loadingIconTemplate) {\n <span [hBind]=\"ptm('loader')\" [class]=\"cx('loader')\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"loadingIconTemplate() || _loadingIconTemplate\"></ng-template>\n </span>\n }\n}\n@if (dropdown()) {\n <button #ddBtn type=\"button\" [hBind]=\"ptm('dropdown')\" [attr.aria-label]=\"dropdownAriaLabel()\" [class]=\"cx('dropdown')\" [disabled]=\"$disabled()\" hRipple (click)=\"handleDropdownClick($event)\" [attr.tabindex]=\"tabindex()\">\n @if (dropdownIcon()) {\n <span [ngClass]=\"dropdownIcon\" [attr.aria-hidden]=\"true\"></span>\n }\n @if (!dropdownIcon()) {\n @if (!dropdownIconTemplate() && !_dropdownIconTemplate) {\n <svg data-h-icon=\"chevron-down\" [hBind]=\"ptm('dropdown')\" />\n }\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate() || _dropdownIconTemplate\"></ng-template>\n }\n </button>\n}\n<h-overlay\n #overlay\n [hostAttrSelector]=\"$attrSelector\"\n [(visible)]=\"overlayVisible\"\n [options]=\"overlayOptions()\"\n [target]=\"'@parent'\"\n [appendTo]=\"$appendTo()\"\n [unstyled]=\"unstyled()\"\n [pt]=\"ptm('pcOverlay')\"\n [motionOptions]=\"motionOptions()\"\n (onBeforeEnter)=\"onOverlayBeforeEnter()\"\n (onHide)=\"hide()\"\n [attr.data-h]=\"overlayDataP\"\n >\n <ng-template #content>\n <div [hBind]=\"ptm('overlay')\" [class]=\"cn(cx('overlay'), panelStyleClass())\" [ngStyle]=\"panelStyle()\">\n <ng-container *ngTemplateOutlet=\"headerTemplate() || _headerTemplate\"></ng-container>\n <div [hBind]=\"ptm('listContainer')\" [class]=\"cx('listContainer')\" [style.max-height]=\"virtualScroll() ? 'auto' : scrollHeight()\" [tabindex]=\"-1\">\n @if (virtualScroll()) {\n <h-scroller\n #scroller\n [tabindex]=\"-1\"\n [pt]=\"ptm('virtualScroller')\"\n [items]=\"visibleOptions()\"\n [style]=\"{ height: scrollHeight() }\"\n [itemSize]=\"virtualScrollItemSize()\"\n [autoSize]=\"true\"\n [lazy]=\"lazy()\"\n (onLazyLoad)=\"onLazyLoad.emit($event)\"\n [options]=\"virtualScrollOptions()\"\n >\n <ng-template #content let-items let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: items, options: scrollerOptions }\"></ng-container>\n </ng-template>\n @if (loaderTemplate() || _loaderTemplate) {\n <ng-template #loader let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"loaderTemplate() || _loaderTemplate; context: { options: scrollerOptions }\"></ng-container>\n </ng-template>\n }\n </h-scroller>\n }\n @if (!virtualScroll()) {\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: visibleOptions(), options: {} }\"></ng-container>\n }\n </div>\n\n <ng-template #buildInItems let-items let-scrollerOptions=\"options\">\n <ul #items [hBind]=\"ptm('list')\" [class]=\"cn(cx('list'), scrollerOptions.contentStyleClass)\" [style]=\"scrollerOptions.contentStyle\" role=\"listbox\" [attr.id]=\"id() + '_list'\" [attr.aria-label]=\"listLabel\">\n @for (option of items; track option; let i = $index) {\n @if (isOptionGroup(option)) {\n <li [hBind]=\"ptm('optionGroup')\" [attr.id]=\"id() + '_' + getOptionIndex(i, scrollerOptions)\" [class]=\"cx('optionGroup')\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\" role=\"option\">\n @if (!groupTemplate()) {\n <span>{{ getOptionGroupLabel(option.optionGroup) }}</span>\n }\n <ng-container *ngTemplateOutlet=\"groupTemplate(); context: { $implicit: option.optionGroup }\"></ng-container>\n </li>\n }\n @if (!isOptionGroup(option)) {\n <li\n hRipple\n [hBind]=\"getPTOptions(option, scrollerOptions, i, 'option')\"\n [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\"\n [class]=\"cx('option', { option, i, scrollerOptions })\"\n [attr.id]=\"id() + '_' + getOptionIndex(i, scrollerOptions)\"\n role=\"option\"\n [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-selected]=\"isSelected(option)\"\n [attr.data-h-selected]=\"isSelected(option)\"\n [attr.aria-disabled]=\"isOptionDisabled(option)\"\n [attr.data-h-focused]=\"focusedOptionIndex() === getOptionIndex(i, scrollerOptions)\"\n [attr.aria-setsize]=\"ariaSetSize\"\n [attr.aria-posinset]=\"getAriaPosInset(getOptionIndex(i, scrollerOptions))\"\n (click)=\"onOptionSelect($event, option)\"\n (mouseenter)=\"onOptionMouseEnter($event, getOptionIndex(i, scrollerOptions))\"\n >\n @if (!itemTemplate() && !_itemTemplate) {\n <span>{{ getOptionLabel(option) }}</span>\n }\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate() || _itemTemplate;\n context: {\n $implicit: option,\n index: scrollerOptions.getOptions ? scrollerOptions.getOptions(i) : i\n }\n \"\n ></ng-container>\n </li>\n }\n }\n @if (!items || (items && items.length === 0 && showEmptyMessage())) {\n <li [hBind]=\"ptm('emptyMessage')\" [class]=\"cx('emptyMessage')\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\" role=\"option\">\n @if (!emptyTemplate() && !_emptyTemplate) {\n {{ searchResultMessageText }}\n } @else {\n <ng-template [ngTemplateOutlet]=\"empty\"></ng-template>\n }\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate() || _emptyTemplate\"></ng-container>\n </li>\n }\n </ul>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"footerTemplate() || _footerTemplate\"></ng-container>\n </div>\n <span role=\"status\" aria-live=\"polite\" class=\"h-hidden-accessible\">\n {{ selectedMessageText }}\n </span>\n</ng-template>\n</h-overlay>\n",
2034
+ dependencies: [
2035
+ {
2036
+ kind: "ngmodule",
2037
+ type: CommonModule
2038
+ },
2039
+ {
2040
+ kind: "directive",
2041
+ type: i3.NgClass,
2042
+ selector: "[ngClass]",
2043
+ inputs: ["class", "ngClass"]
2044
+ },
2045
+ {
2046
+ kind: "directive",
2047
+ type: i3.NgTemplateOutlet,
2048
+ selector: "[ngTemplateOutlet]",
2049
+ inputs: [
2050
+ "ngTemplateOutletContext",
2051
+ "ngTemplateOutlet",
2052
+ "ngTemplateOutletInjector"
2053
+ ]
2054
+ },
2055
+ {
2056
+ kind: "directive",
2057
+ type: i3.NgStyle,
2058
+ selector: "[ngStyle]",
2059
+ inputs: ["ngStyle"]
2060
+ },
2061
+ {
2062
+ kind: "component",
2063
+ type: Overlay,
2064
+ selector: "h-overlay",
2065
+ inputs: [
2066
+ "hostName",
2067
+ "visible",
2068
+ "mode",
2069
+ "style",
2070
+ "styleClass",
2071
+ "contentStyle",
2072
+ "contentStyleClass",
2073
+ "target",
2074
+ "autoZIndex",
2075
+ "baseZIndex",
2076
+ "showTransitionOptions",
2077
+ "hideTransitionOptions",
2078
+ "listener",
2079
+ "responsive",
2080
+ "options",
2081
+ "appendTo",
2082
+ "inline",
2083
+ "motionOptions",
2084
+ "hostAttrSelector"
2085
+ ],
2086
+ outputs: [
2087
+ "visibleChange",
2088
+ "onBeforeShow",
2089
+ "onShow",
2090
+ "onBeforeHide",
2091
+ "onHide",
2092
+ "onAnimationStart",
2093
+ "onAnimationDone",
2094
+ "onBeforeEnter",
2095
+ "onEnter",
2096
+ "onAfterEnter",
2097
+ "onBeforeLeave",
2098
+ "onLeave",
2099
+ "onAfterLeave"
2100
+ ]
2101
+ },
2102
+ {
2103
+ kind: "directive",
2104
+ type: InputText,
2105
+ selector: "[hInputText]",
2106
+ inputs: [
2107
+ "hostName",
2108
+ "ptInputText",
2109
+ "pInputTextPT",
2110
+ "pInputTextUnstyled",
2111
+ "pSize",
2112
+ "variant",
2113
+ "fluid",
2114
+ "invalid"
2115
+ ]
2116
+ },
2117
+ {
2118
+ kind: "directive",
2119
+ type: Ripple,
2120
+ selector: "[hRipple]"
2121
+ },
2122
+ {
2123
+ kind: "component",
2124
+ type: Scroller,
2125
+ selector: "h-scroller, h-virtualscroller, h-virtual-scroller, h-virtualScroller",
2126
+ inputs: [
2127
+ "hostName",
2128
+ "id",
2129
+ "style",
2130
+ "styleClass",
2131
+ "tabindex",
2132
+ "items",
2133
+ "itemSize",
2134
+ "scrollHeight",
2135
+ "scrollWidth",
2136
+ "orientation",
2137
+ "step",
2138
+ "delay",
2139
+ "resizeDelay",
2140
+ "appendOnly",
2141
+ "inline",
2142
+ "lazy",
2143
+ "disabled",
2144
+ "loaderDisabled",
2145
+ "columns",
2146
+ "showSpacer",
2147
+ "showLoader",
2148
+ "numToleratedItems",
2149
+ "loading",
2150
+ "autoSize",
2151
+ "trackBy",
2152
+ "options"
2153
+ ],
2154
+ outputs: [
2155
+ "onLazyLoad",
2156
+ "onScroll",
2157
+ "onScrollIndexChange"
2158
+ ]
2159
+ },
2160
+ {
2161
+ kind: "directive",
2162
+ type: AutoFocus,
2163
+ selector: "[hAutoFocus]",
2164
+ inputs: ["hAutoFocus"]
2165
+ },
2166
+ {
2167
+ kind: "component",
2168
+ type: TimesCircleIcon,
2169
+ selector: "[data-h-icon=\"times-circle\"]"
2170
+ },
2171
+ {
2172
+ kind: "component",
2173
+ type: SpinnerIcon,
2174
+ selector: "[data-h-icon=\"spinner\"]"
2175
+ },
2176
+ {
2177
+ kind: "component",
2178
+ type: ChevronDownIcon,
2179
+ selector: "[data-h-icon=\"chevron-down\"]"
2180
+ },
2181
+ {
2182
+ kind: "component",
2183
+ type: Chip,
2184
+ selector: "h-chip",
2185
+ inputs: [
2186
+ "label",
2187
+ "icon",
2188
+ "image",
2189
+ "alt",
2190
+ "styleClass",
2191
+ "disabled",
2192
+ "removable",
2193
+ "removeIcon",
2194
+ "chipProps"
2195
+ ],
2196
+ outputs: [
2197
+ "labelChange",
2198
+ "iconChange",
2199
+ "imageChange",
2200
+ "altChange",
2201
+ "styleClassChange",
2202
+ "removableChange",
2203
+ "removeIconChange",
2204
+ "onRemove",
2205
+ "onImageError"
2206
+ ]
2207
+ },
2208
+ {
2209
+ kind: "ngmodule",
2210
+ type: SharedModule
2211
+ },
2212
+ {
2213
+ kind: "component",
2214
+ type: TimesIcon,
2215
+ selector: "[data-h-icon=\"times\"]"
2216
+ },
2217
+ {
2218
+ kind: "ngmodule",
2219
+ type: BindModule
2220
+ },
2221
+ {
2222
+ kind: "directive",
2223
+ type: i2.Bind,
2224
+ selector: "[hBind]",
2225
+ inputs: ["hBind"]
2226
+ }
2227
+ ],
2228
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
2229
+ encapsulation: i0.ViewEncapsulation.None
2230
+ });
2231
+ };
2232
+ i0.ɵɵngDeclareClassMetadata({
2233
+ minVersion: "12.0.0",
2234
+ version: "22.2.1",
2235
+ ngImport: i0,
2236
+ type: AutoComplete,
2237
+ decorators: [{
2238
+ type: Component,
2239
+ args: [{
2240
+ selector: "h-autoComplete, h-autocomplete, h-auto-complete",
2241
+ standalone: true,
2242
+ imports: [
2243
+ CommonModule,
2244
+ Overlay,
2245
+ InputText,
2246
+ Ripple,
2247
+ Scroller,
2248
+ AutoFocus,
2249
+ TimesCircleIcon,
2250
+ SpinnerIcon,
2251
+ ChevronDownIcon,
2252
+ Chip,
2253
+ SharedModule,
2254
+ TimesIcon,
2255
+ BindModule
2256
+ ],
2257
+ providers: [
2258
+ AUTOCOMPLETE_VALUE_ACCESSOR,
2259
+ AutoCompleteStyle,
2260
+ {
2261
+ provide: AUTOCOMPLETE_INSTANCE,
2262
+ useExisting: AutoComplete
2263
+ },
2264
+ {
2265
+ provide: PARENT_INSTANCE,
2266
+ useExisting: AutoComplete
2267
+ }
2268
+ ],
2269
+ changeDetection: ChangeDetectionStrategy.OnPush,
2270
+ encapsulation: ViewEncapsulation.None,
2271
+ host: {
2272
+ "[class]": "cn(cx('root'), styleClass())",
2273
+ "[style]": "sx('root')",
2274
+ "[attr.data-h]": "containerDataP",
2275
+ "(click)": "onHostClick($event)"
2276
+ },
2277
+ hostDirectives: [Bind],
2278
+ template: "@if (!multiple()) {\n <input\n #focusInput\n [hAutoFocus]=\"autofocus()\"\n hInputText\n [pt]=\"ptm('pcInputText')\"\n [class]=\"cn(cx('pcInputText'), inputStyleClass())\"\n [ngStyle]=\"inputStyle()\"\n [attr.type]=\"type()\"\n [attr.value]=\"inputValue()\"\n [variant]=\"$variant()\"\n [invalid]=\"invalid()\"\n [attr.id]=\"inputId()\"\n [attr.autocomplete]=\"autocomplete()\"\n aria-autocomplete=\"list\"\n role=\"combobox\"\n [attr.placeholder]=\"placeholder()\"\n [attr.name]=\"name()\"\n [attr.minlength]=\"minlength()\"\n [pSize]=\"size()\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [attr.pattern]=\"pattern()\"\n [attr.size]=\"inputSize()\"\n [attr.maxlength]=\"maxlength()\"\n [attr.tabindex]=\"!$disabled() ? tabindex() : -1\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly() ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.aria-required]=\"required()\"\n [attr.aria-expanded]=\"overlayVisible ?? false\"\n [attr.aria-controls]=\"overlayVisible ? id() + '_list' : null\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onInputPaste($event)\"\n (keyup)=\"onInputKeyUp($event)\"\n [fluid]=\"hasFluid\"\n [pInputTextUnstyled]=\"unstyled()\"\n />\n}\n@if ($filled() && !$disabled() && showClear() && !loading) {\n @if (!clearIconTemplate() && !_clearIconTemplate) {\n <svg data-h-icon=\"times\" [hBind]=\"ptm('clearIcon')\" [class]=\"cx('clearIcon')\" (click)=\"clear()\" [attr.aria-hidden]=\"true\" />\n }\n @if (clearIconTemplate() || _clearIconTemplate) {\n <span [hBind]=\"ptm('clearIcon')\" [class]=\"cx('clearIcon')\" (click)=\"clear()\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"clearIconTemplate() || _clearIconTemplate\"></ng-template>\n </span>\n }\n}\n\n@if (multiple()) {\n <ul\n #multiContainer\n [hBind]=\"ptm('inputMultiple')\"\n [class]=\"cx('inputMultiple')\"\n [attr.data-h]=\"inputMultipleDataP\"\n [tabindex]=\"-1\"\n role=\"listbox\"\n [attr.aria-orientation]=\"'horizontal'\"\n [attr.aria-activedescendant]=\"focused ? focusedMultipleOptionId : undefined\"\n (focus)=\"onMultipleContainerFocus($event)\"\n (blur)=\"onMultipleContainerBlur($event)\"\n (keydown)=\"onMultipleContainerKeyDown($event)\"\n >\n @for (option of modelValue(); track option; let i = $index) {\n <li\n #token\n [hBind]=\"ptm('chipItem')\"\n [class]=\"cx('chipItem', { i })\"\n [attr.id]=\"id() + '_multiple_option_' + i\"\n role=\"option\"\n [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-setsize]=\"modelValue().length\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-selected]=\"true\"\n >\n <h-chip\n [pt]=\"ptm('pcChip')\"\n [class]=\"cx('pcChip')\"\n [label]=\"!selectedItemTemplate() && !_selectedItemTemplate && getOptionLabel(option)\"\n [disabled]=\"$disabled()\"\n [removable]=\"true\"\n (onRemove)=\"!readonly() ? removeOption($event, i) : ''\"\n [unstyled]=\"unstyled()\"\n >\n <ng-container *ngTemplateOutlet=\"selectedItemTemplate() || _selectedItemTemplate; context: { $implicit: option }\"></ng-container>\n <ng-template #removeicon>\n @if (!removeIconTemplate() && !_removeIconTemplate) {\n <span [hBind]=\"ptm('chipIcon')\" [class]=\"cx('chipIcon')\" (click)=\"!readonly() && !$disabled() ? removeOption($event, i) : ''\">\n <svg data-h-icon=\"times-circle\" [class]=\"cx('chipIcon')\" [attr.aria-hidden]=\"true\" />\n </span>\n }\n @if (removeIconTemplate() || _removeIconTemplate) {\n <span [hBind]=\"ptm('chipIcon')\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"removeIconTemplate() || _removeIconTemplate; context: { removeCallback: removeOption.bind(this), index: i, class: cx('chipIcon') }\"></ng-template>\n </span>\n }\n </ng-template>\n </h-chip>\n </li>\n }\n <li [hBind]=\"ptm('inputChip')\" [class]=\"cx('inputChip')\" role=\"option\">\n <input\n #focusInput\n #multiIn\n [hAutoFocus]=\"autofocus()\"\n [hBind]=\"ptm('input')\"\n [class]=\"cx('pcInputText')\"\n [ngStyle]=\"inputStyle()\"\n [attr.type]=\"type()\"\n [attr.id]=\"inputId()\"\n [attr.autocomplete]=\"autocomplete()\"\n [attr.name]=\"name()\"\n [attr.minlength]=\"minlength()\"\n [attr.maxlength]=\"maxlength()\"\n [attr.size]=\"size()\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [attr.pattern]=\"pattern()\"\n role=\"combobox\"\n [attr.placeholder]=\"!$filled() ? placeholder() : null\"\n aria-autocomplete=\"list\"\n [attr.tabindex]=\"!$disabled() ? tabindex() : -1\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly() ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.aria-required]=\"required()\"\n [attr.aria-expanded]=\"overlayVisible ?? false\"\n [attr.aria-controls]=\"overlayVisible ? id() + '_list' : null\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (change)=\"onInputChange($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onInputPaste($event)\"\n (keyup)=\"onInputKeyUp($event)\"\n />\n </li>\n </ul>\n}\n@if (loading) {\n @if (!loadingIconTemplate() && !_loadingIconTemplate) {\n <svg data-h-icon=\"spinner\" [hBind]=\"ptm('loader')\" [class]=\"cx('loader')\" [spin]=\"true\" [attr.aria-hidden]=\"true\" />\n }\n @if (loadingIconTemplate() || _loadingIconTemplate) {\n <span [hBind]=\"ptm('loader')\" [class]=\"cx('loader')\" [attr.aria-hidden]=\"true\">\n <ng-template *ngTemplateOutlet=\"loadingIconTemplate() || _loadingIconTemplate\"></ng-template>\n </span>\n }\n}\n@if (dropdown()) {\n <button #ddBtn type=\"button\" [hBind]=\"ptm('dropdown')\" [attr.aria-label]=\"dropdownAriaLabel()\" [class]=\"cx('dropdown')\" [disabled]=\"$disabled()\" hRipple (click)=\"handleDropdownClick($event)\" [attr.tabindex]=\"tabindex()\">\n @if (dropdownIcon()) {\n <span [ngClass]=\"dropdownIcon\" [attr.aria-hidden]=\"true\"></span>\n }\n @if (!dropdownIcon()) {\n @if (!dropdownIconTemplate() && !_dropdownIconTemplate) {\n <svg data-h-icon=\"chevron-down\" [hBind]=\"ptm('dropdown')\" />\n }\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate() || _dropdownIconTemplate\"></ng-template>\n }\n </button>\n}\n<h-overlay\n #overlay\n [hostAttrSelector]=\"$attrSelector\"\n [(visible)]=\"overlayVisible\"\n [options]=\"overlayOptions()\"\n [target]=\"'@parent'\"\n [appendTo]=\"$appendTo()\"\n [unstyled]=\"unstyled()\"\n [pt]=\"ptm('pcOverlay')\"\n [motionOptions]=\"motionOptions()\"\n (onBeforeEnter)=\"onOverlayBeforeEnter()\"\n (onHide)=\"hide()\"\n [attr.data-h]=\"overlayDataP\"\n >\n <ng-template #content>\n <div [hBind]=\"ptm('overlay')\" [class]=\"cn(cx('overlay'), panelStyleClass())\" [ngStyle]=\"panelStyle()\">\n <ng-container *ngTemplateOutlet=\"headerTemplate() || _headerTemplate\"></ng-container>\n <div [hBind]=\"ptm('listContainer')\" [class]=\"cx('listContainer')\" [style.max-height]=\"virtualScroll() ? 'auto' : scrollHeight()\" [tabindex]=\"-1\">\n @if (virtualScroll()) {\n <h-scroller\n #scroller\n [tabindex]=\"-1\"\n [pt]=\"ptm('virtualScroller')\"\n [items]=\"visibleOptions()\"\n [style]=\"{ height: scrollHeight() }\"\n [itemSize]=\"virtualScrollItemSize()\"\n [autoSize]=\"true\"\n [lazy]=\"lazy()\"\n (onLazyLoad)=\"onLazyLoad.emit($event)\"\n [options]=\"virtualScrollOptions()\"\n >\n <ng-template #content let-items let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: items, options: scrollerOptions }\"></ng-container>\n </ng-template>\n @if (loaderTemplate() || _loaderTemplate) {\n <ng-template #loader let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"loaderTemplate() || _loaderTemplate; context: { options: scrollerOptions }\"></ng-container>\n </ng-template>\n }\n </h-scroller>\n }\n @if (!virtualScroll()) {\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: visibleOptions(), options: {} }\"></ng-container>\n }\n </div>\n\n <ng-template #buildInItems let-items let-scrollerOptions=\"options\">\n <ul #items [hBind]=\"ptm('list')\" [class]=\"cn(cx('list'), scrollerOptions.contentStyleClass)\" [style]=\"scrollerOptions.contentStyle\" role=\"listbox\" [attr.id]=\"id() + '_list'\" [attr.aria-label]=\"listLabel\">\n @for (option of items; track option; let i = $index) {\n @if (isOptionGroup(option)) {\n <li [hBind]=\"ptm('optionGroup')\" [attr.id]=\"id() + '_' + getOptionIndex(i, scrollerOptions)\" [class]=\"cx('optionGroup')\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\" role=\"option\">\n @if (!groupTemplate()) {\n <span>{{ getOptionGroupLabel(option.optionGroup) }}</span>\n }\n <ng-container *ngTemplateOutlet=\"groupTemplate(); context: { $implicit: option.optionGroup }\"></ng-container>\n </li>\n }\n @if (!isOptionGroup(option)) {\n <li\n hRipple\n [hBind]=\"getPTOptions(option, scrollerOptions, i, 'option')\"\n [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\"\n [class]=\"cx('option', { option, i, scrollerOptions })\"\n [attr.id]=\"id() + '_' + getOptionIndex(i, scrollerOptions)\"\n role=\"option\"\n [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-selected]=\"isSelected(option)\"\n [attr.data-h-selected]=\"isSelected(option)\"\n [attr.aria-disabled]=\"isOptionDisabled(option)\"\n [attr.data-h-focused]=\"focusedOptionIndex() === getOptionIndex(i, scrollerOptions)\"\n [attr.aria-setsize]=\"ariaSetSize\"\n [attr.aria-posinset]=\"getAriaPosInset(getOptionIndex(i, scrollerOptions))\"\n (click)=\"onOptionSelect($event, option)\"\n (mouseenter)=\"onOptionMouseEnter($event, getOptionIndex(i, scrollerOptions))\"\n >\n @if (!itemTemplate() && !_itemTemplate) {\n <span>{{ getOptionLabel(option) }}</span>\n }\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate() || _itemTemplate;\n context: {\n $implicit: option,\n index: scrollerOptions.getOptions ? scrollerOptions.getOptions(i) : i\n }\n \"\n ></ng-container>\n </li>\n }\n }\n @if (!items || (items && items.length === 0 && showEmptyMessage())) {\n <li [hBind]=\"ptm('emptyMessage')\" [class]=\"cx('emptyMessage')\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\" role=\"option\">\n @if (!emptyTemplate() && !_emptyTemplate) {\n {{ searchResultMessageText }}\n } @else {\n <ng-template [ngTemplateOutlet]=\"empty\"></ng-template>\n }\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate() || _emptyTemplate\"></ng-container>\n </li>\n }\n </ul>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"footerTemplate() || _footerTemplate\"></ng-container>\n </div>\n <span role=\"status\" aria-live=\"polite\" class=\"h-hidden-accessible\">\n {{ selectedMessageText }}\n </span>\n</ng-template>\n</h-overlay>\n"
2279
+ }]
2280
+ }],
2281
+ ctorParameters: () => [{ type: i1.OverlayService }, { type: i0.NgZone }],
2282
+ propDecorators: {
2283
+ minLength: [{
2284
+ type: i0.Input,
2285
+ args: [{
2286
+ isSignal: true,
2287
+ alias: "minLength",
2288
+ required: false
2289
+ }]
2290
+ }],
2291
+ minQueryLength: [{
2292
+ type: i0.Input,
2293
+ args: [{
2294
+ isSignal: true,
2295
+ alias: "minQueryLength",
2296
+ required: false
2297
+ }]
2298
+ }],
2299
+ delay: [{
2300
+ type: i0.Input,
2301
+ args: [{
2302
+ isSignal: true,
2303
+ alias: "delay",
2304
+ required: false
2305
+ }]
2306
+ }],
2307
+ panelStyle: [{
2308
+ type: i0.Input,
2309
+ args: [{
2310
+ isSignal: true,
2311
+ alias: "panelStyle",
2312
+ required: false
2313
+ }]
2314
+ }],
2315
+ styleClass: [{
2316
+ type: i0.Input,
2317
+ args: [{
2318
+ isSignal: true,
2319
+ alias: "styleClass",
2320
+ required: false
2321
+ }]
2322
+ }],
2323
+ panelStyleClass: [{
2324
+ type: i0.Input,
2325
+ args: [{
2326
+ isSignal: true,
2327
+ alias: "panelStyleClass",
2328
+ required: false
2329
+ }]
2330
+ }],
2331
+ inputStyle: [{
2332
+ type: i0.Input,
2333
+ args: [{
2334
+ isSignal: true,
2335
+ alias: "inputStyle",
2336
+ required: false
2337
+ }]
2338
+ }],
2339
+ inputId: [{
2340
+ type: i0.Input,
2341
+ args: [{
2342
+ isSignal: true,
2343
+ alias: "inputId",
2344
+ required: false
2345
+ }]
2346
+ }],
2347
+ inputStyleClass: [{
2348
+ type: i0.Input,
2349
+ args: [{
2350
+ isSignal: true,
2351
+ alias: "inputStyleClass",
2352
+ required: false
2353
+ }]
2354
+ }],
2355
+ placeholder: [{
2356
+ type: i0.Input,
2357
+ args: [{
2358
+ isSignal: true,
2359
+ alias: "placeholder",
2360
+ required: false
2361
+ }]
2362
+ }],
2363
+ readonly: [{
2364
+ type: i0.Input,
2365
+ args: [{
2366
+ isSignal: true,
2367
+ alias: "readonly",
2368
+ required: false
2369
+ }]
2370
+ }],
2371
+ scrollHeight: [{
2372
+ type: i0.Input,
2373
+ args: [{
2374
+ isSignal: true,
2375
+ alias: "scrollHeight",
2376
+ required: false
2377
+ }]
2378
+ }],
2379
+ lazy: [{
2380
+ type: i0.Input,
2381
+ args: [{
2382
+ isSignal: true,
2383
+ alias: "lazy",
2384
+ required: false
2385
+ }]
2386
+ }],
2387
+ virtualScroll: [{
2388
+ type: i0.Input,
2389
+ args: [{
2390
+ isSignal: true,
2391
+ alias: "virtualScroll",
2392
+ required: false
2393
+ }]
2394
+ }],
2395
+ virtualScrollItemSize: [{
2396
+ type: i0.Input,
2397
+ args: [{
2398
+ isSignal: true,
2399
+ alias: "virtualScrollItemSize",
2400
+ required: false
2401
+ }]
2402
+ }],
2403
+ virtualScrollOptions: [{
2404
+ type: i0.Input,
2405
+ args: [{
2406
+ isSignal: true,
2407
+ alias: "virtualScrollOptions",
2408
+ required: false
2409
+ }]
2410
+ }],
2411
+ autoHighlight: [{
2412
+ type: i0.Input,
2413
+ args: [{
2414
+ isSignal: true,
2415
+ alias: "autoHighlight",
2416
+ required: false
2417
+ }]
2418
+ }],
2419
+ forceSelection: [{
2420
+ type: i0.Input,
2421
+ args: [{
2422
+ isSignal: true,
2423
+ alias: "forceSelection",
2424
+ required: false
2425
+ }]
2426
+ }],
2427
+ type: [{
2428
+ type: i0.Input,
2429
+ args: [{
2430
+ isSignal: true,
2431
+ alias: "type",
2432
+ required: false
2433
+ }]
2434
+ }],
2435
+ autoZIndex: [{
2436
+ type: i0.Input,
2437
+ args: [{
2438
+ isSignal: true,
2439
+ alias: "autoZIndex",
2440
+ required: false
2441
+ }]
2442
+ }],
2443
+ baseZIndex: [{
2444
+ type: i0.Input,
2445
+ args: [{
2446
+ isSignal: true,
2447
+ alias: "baseZIndex",
2448
+ required: false
2449
+ }]
2450
+ }],
2451
+ ariaLabel: [{
2452
+ type: i0.Input,
2453
+ args: [{
2454
+ isSignal: true,
2455
+ alias: "ariaLabel",
2456
+ required: false
2457
+ }]
2458
+ }],
2459
+ dropdownAriaLabel: [{
2460
+ type: i0.Input,
2461
+ args: [{
2462
+ isSignal: true,
2463
+ alias: "dropdownAriaLabel",
2464
+ required: false
2465
+ }]
2466
+ }],
2467
+ ariaLabelledBy: [{
2468
+ type: i0.Input,
2469
+ args: [{
2470
+ isSignal: true,
2471
+ alias: "ariaLabelledBy",
2472
+ required: false
2473
+ }]
2474
+ }],
2475
+ dropdownIcon: [{
2476
+ type: i0.Input,
2477
+ args: [{
2478
+ isSignal: true,
2479
+ alias: "dropdownIcon",
2480
+ required: false
2481
+ }]
2482
+ }],
2483
+ unique: [{
2484
+ type: i0.Input,
2485
+ args: [{
2486
+ isSignal: true,
2487
+ alias: "unique",
2488
+ required: false
2489
+ }]
2490
+ }],
2491
+ group: [{
2492
+ type: i0.Input,
2493
+ args: [{
2494
+ isSignal: true,
2495
+ alias: "group",
2496
+ required: false
2497
+ }]
2498
+ }],
2499
+ completeOnFocus: [{
2500
+ type: i0.Input,
2501
+ args: [{
2502
+ isSignal: true,
2503
+ alias: "completeOnFocus",
2504
+ required: false
2505
+ }]
2506
+ }],
2507
+ showClear: [{
2508
+ type: i0.Input,
2509
+ args: [{
2510
+ isSignal: true,
2511
+ alias: "showClear",
2512
+ required: false
2513
+ }]
2514
+ }],
2515
+ dropdown: [{
2516
+ type: i0.Input,
2517
+ args: [{
2518
+ isSignal: true,
2519
+ alias: "dropdown",
2520
+ required: false
2521
+ }]
2522
+ }],
2523
+ showEmptyMessage: [{
2524
+ type: i0.Input,
2525
+ args: [{
2526
+ isSignal: true,
2527
+ alias: "showEmptyMessage",
2528
+ required: false
2529
+ }]
2530
+ }],
2531
+ dropdownMode: [{
2532
+ type: i0.Input,
2533
+ args: [{
2534
+ isSignal: true,
2535
+ alias: "dropdownMode",
2536
+ required: false
2537
+ }]
2538
+ }],
2539
+ multiple: [{
2540
+ type: i0.Input,
2541
+ args: [{
2542
+ isSignal: true,
2543
+ alias: "multiple",
2544
+ required: false
2545
+ }]
2546
+ }],
2547
+ addOnTab: [{
2548
+ type: i0.Input,
2549
+ args: [{
2550
+ isSignal: true,
2551
+ alias: "addOnTab",
2552
+ required: false
2553
+ }]
2554
+ }],
2555
+ tabindex: [{
2556
+ type: i0.Input,
2557
+ args: [{
2558
+ isSignal: true,
2559
+ alias: "tabindex",
2560
+ required: false
2561
+ }]
2562
+ }],
2563
+ dataKey: [{
2564
+ type: i0.Input,
2565
+ args: [{
2566
+ isSignal: true,
2567
+ alias: "dataKey",
2568
+ required: false
2569
+ }]
2570
+ }],
2571
+ emptyMessage: [{
2572
+ type: i0.Input,
2573
+ args: [{
2574
+ isSignal: true,
2575
+ alias: "emptyMessage",
2576
+ required: false
2577
+ }]
2578
+ }],
2579
+ showTransitionOptions: [{
2580
+ type: i0.Input,
2581
+ args: [{
2582
+ isSignal: true,
2583
+ alias: "showTransitionOptions",
2584
+ required: false
2585
+ }]
2586
+ }],
2587
+ hideTransitionOptions: [{
2588
+ type: i0.Input,
2589
+ args: [{
2590
+ isSignal: true,
2591
+ alias: "hideTransitionOptions",
2592
+ required: false
2593
+ }]
2594
+ }],
2595
+ autofocus: [{
2596
+ type: i0.Input,
2597
+ args: [{
2598
+ isSignal: true,
2599
+ alias: "autofocus",
2600
+ required: false
2601
+ }]
2602
+ }],
2603
+ autocomplete: [{
2604
+ type: i0.Input,
2605
+ args: [{
2606
+ isSignal: true,
2607
+ alias: "autocomplete",
2608
+ required: false
2609
+ }]
2610
+ }],
2611
+ optionGroupChildren: [{
2612
+ type: i0.Input,
2613
+ args: [{
2614
+ isSignal: true,
2615
+ alias: "optionGroupChildren",
2616
+ required: false
2617
+ }]
2618
+ }],
2619
+ optionGroupLabel: [{
2620
+ type: i0.Input,
2621
+ args: [{
2622
+ isSignal: true,
2623
+ alias: "optionGroupLabel",
2624
+ required: false
2625
+ }]
2626
+ }],
2627
+ overlayOptions: [{
2628
+ type: i0.Input,
2629
+ args: [{
2630
+ isSignal: true,
2631
+ alias: "overlayOptions",
2632
+ required: false
2633
+ }]
2634
+ }],
2635
+ suggestions: [{
2636
+ type: i0.Input,
2637
+ args: [{
2638
+ isSignal: true,
2639
+ alias: "suggestions",
2640
+ required: false
2641
+ }]
2642
+ }],
2643
+ optionLabel: [{
2644
+ type: i0.Input,
2645
+ args: [{
2646
+ isSignal: true,
2647
+ alias: "optionLabel",
2648
+ required: false
2649
+ }]
2650
+ }],
2651
+ optionValue: [{
2652
+ type: i0.Input,
2653
+ args: [{
2654
+ isSignal: true,
2655
+ alias: "optionValue",
2656
+ required: false
2657
+ }]
2658
+ }],
2659
+ id: [{
2660
+ type: i0.Input,
2661
+ args: [{
2662
+ isSignal: true,
2663
+ alias: "id",
2664
+ required: false
2665
+ }]
2666
+ }, {
2667
+ type: i0.Output,
2668
+ args: ["idChange"]
2669
+ }],
2670
+ searchMessage: [{
2671
+ type: i0.Input,
2672
+ args: [{
2673
+ isSignal: true,
2674
+ alias: "searchMessage",
2675
+ required: false
2676
+ }]
2677
+ }],
2678
+ emptySelectionMessage: [{
2679
+ type: i0.Input,
2680
+ args: [{
2681
+ isSignal: true,
2682
+ alias: "emptySelectionMessage",
2683
+ required: false
2684
+ }]
2685
+ }],
2686
+ selectionMessage: [{
2687
+ type: i0.Input,
2688
+ args: [{
2689
+ isSignal: true,
2690
+ alias: "selectionMessage",
2691
+ required: false
2692
+ }]
2693
+ }],
2694
+ autoOptionFocus: [{
2695
+ type: i0.Input,
2696
+ args: [{
2697
+ isSignal: true,
2698
+ alias: "autoOptionFocus",
2699
+ required: false
2700
+ }]
2701
+ }],
2702
+ selectOnFocus: [{
2703
+ type: i0.Input,
2704
+ args: [{
2705
+ isSignal: true,
2706
+ alias: "selectOnFocus",
2707
+ required: false
2708
+ }]
2709
+ }],
2710
+ searchLocale: [{
2711
+ type: i0.Input,
2712
+ args: [{
2713
+ isSignal: true,
2714
+ alias: "searchLocale",
2715
+ required: false
2716
+ }]
2717
+ }],
2718
+ optionDisabled: [{
2719
+ type: i0.Input,
2720
+ args: [{
2721
+ isSignal: true,
2722
+ alias: "optionDisabled",
2723
+ required: false
2724
+ }]
2725
+ }],
2726
+ focusOnHover: [{
2727
+ type: i0.Input,
2728
+ args: [{
2729
+ isSignal: true,
2730
+ alias: "focusOnHover",
2731
+ required: false
2732
+ }]
2733
+ }],
2734
+ typeahead: [{
2735
+ type: i0.Input,
2736
+ args: [{
2737
+ isSignal: true,
2738
+ alias: "typeahead",
2739
+ required: false
2740
+ }]
2741
+ }],
2742
+ addOnBlur: [{
2743
+ type: i0.Input,
2744
+ args: [{
2745
+ isSignal: true,
2746
+ alias: "addOnBlur",
2747
+ required: false
2748
+ }]
2749
+ }],
2750
+ separator: [{
2751
+ type: i0.Input,
2752
+ args: [{
2753
+ isSignal: true,
2754
+ alias: "separator",
2755
+ required: false
2756
+ }]
2757
+ }],
2758
+ appendTo: [{
2759
+ type: i0.Input,
2760
+ args: [{
2761
+ isSignal: true,
2762
+ alias: "appendTo",
2763
+ required: false
2764
+ }]
2765
+ }],
2766
+ motionOptions: [{
2767
+ type: i0.Input,
2768
+ args: [{
2769
+ isSignal: true,
2770
+ alias: "motionOptions",
2771
+ required: false
2772
+ }]
2773
+ }],
2774
+ completeMethod: [{
2775
+ type: i0.Output,
2776
+ args: ["completeMethod"]
2777
+ }],
2778
+ onSelect: [{
2779
+ type: i0.Output,
2780
+ args: ["onSelect"]
2781
+ }],
2782
+ onUnselect: [{
2783
+ type: i0.Output,
2784
+ args: ["onUnselect"]
2785
+ }],
2786
+ onAdd: [{
2787
+ type: i0.Output,
2788
+ args: ["onAdd"]
2789
+ }],
2790
+ onFocus: [{
2791
+ type: i0.Output,
2792
+ args: ["onFocus"]
2793
+ }],
2794
+ onBlur: [{
2795
+ type: i0.Output,
2796
+ args: ["onBlur"]
2797
+ }],
2798
+ onDropdownClick: [{
2799
+ type: i0.Output,
2800
+ args: ["onDropdownClick"]
2801
+ }],
2802
+ onClear: [{
2803
+ type: i0.Output,
2804
+ args: ["onClear"]
2805
+ }],
2806
+ onInputKeydown: [{
2807
+ type: i0.Output,
2808
+ args: ["onInputKeydown"]
2809
+ }],
2810
+ onKeyUp: [{
2811
+ type: i0.Output,
2812
+ args: ["onKeyUp"]
2813
+ }],
2814
+ onShow: [{
2815
+ type: i0.Output,
2816
+ args: ["onShow"]
2817
+ }],
2818
+ onHide: [{
2819
+ type: i0.Output,
2820
+ args: ["onHide"]
2821
+ }],
2822
+ onLazyLoad: [{
2823
+ type: i0.Output,
2824
+ args: ["onLazyLoad"]
2825
+ }],
2826
+ inputEL: [{
2827
+ type: i0.ViewChild,
2828
+ args: ["focusInput", { isSignal: true }]
2829
+ }],
2830
+ multiInputEl: [{
2831
+ type: i0.ViewChild,
2832
+ args: ["multiIn", { isSignal: true }]
2833
+ }],
2834
+ multiContainerEL: [{
2835
+ type: i0.ViewChild,
2836
+ args: ["multiContainer", { isSignal: true }]
2837
+ }],
2838
+ dropdownButton: [{
2839
+ type: i0.ViewChild,
2840
+ args: ["ddBtn", { isSignal: true }]
2841
+ }],
2842
+ itemsViewChild: [{
2843
+ type: i0.ViewChild,
2844
+ args: ["items", { isSignal: true }]
2845
+ }],
2846
+ scroller: [{
2847
+ type: i0.ViewChild,
2848
+ args: ["scroller", { isSignal: true }]
2849
+ }],
2850
+ overlayViewChild: [{
2851
+ type: i0.ViewChild,
2852
+ args: ["overlay", { isSignal: true }]
2853
+ }],
2854
+ itemTemplate: [{
2855
+ type: i0.ContentChild,
2856
+ args: ["item", { isSignal: true }]
2857
+ }],
2858
+ emptyTemplate: [{
2859
+ type: i0.ContentChild,
2860
+ args: ["empty", { isSignal: true }]
2861
+ }],
2862
+ headerTemplate: [{
2863
+ type: i0.ContentChild,
2864
+ args: ["header", { isSignal: true }]
2865
+ }],
2866
+ footerTemplate: [{
2867
+ type: i0.ContentChild,
2868
+ args: ["footer", { isSignal: true }]
2869
+ }],
2870
+ selectedItemTemplate: [{
2871
+ type: i0.ContentChild,
2872
+ args: ["selecteditem", { isSignal: true }]
2873
+ }],
2874
+ groupTemplate: [{
2875
+ type: i0.ContentChild,
2876
+ args: ["group", { isSignal: true }]
2877
+ }],
2878
+ loaderTemplate: [{
2879
+ type: i0.ContentChild,
2880
+ args: ["loader", { isSignal: true }]
2881
+ }],
2882
+ removeIconTemplate: [{
2883
+ type: i0.ContentChild,
2884
+ args: ["removeicon", { isSignal: true }]
2885
+ }],
2886
+ loadingIconTemplate: [{
2887
+ type: i0.ContentChild,
2888
+ args: ["loadingicon", { isSignal: true }]
2889
+ }],
2890
+ clearIconTemplate: [{
2891
+ type: i0.ContentChild,
2892
+ args: ["clearicon", { isSignal: true }]
2893
+ }],
2894
+ dropdownIconTemplate: [{
2895
+ type: i0.ContentChild,
2896
+ args: ["dropdownicon", { isSignal: true }]
2897
+ }],
2898
+ templates: [{
2899
+ type: i0.ContentChildren,
2900
+ args: [i0.forwardRef(() => HelixTemplate), { isSignal: true }]
2901
+ }]
2902
+ }
2903
+ });
2904
+ var AutoCompleteModule = class AutoCompleteModule {
2905
+ static ɵfac = i0.ɵɵngDeclareFactory({
2906
+ minVersion: "12.0.0",
2907
+ version: "22.2.1",
2908
+ ngImport: i0,
2909
+ type: AutoCompleteModule,
2910
+ deps: [],
2911
+ target: i0.ɵɵFactoryTarget.NgModule
2912
+ });
2913
+ static ɵmod = i0.ɵɵngDeclareNgModule({
2914
+ minVersion: "14.0.0",
2915
+ version: "22.2.1",
2916
+ ngImport: i0,
2917
+ type: AutoCompleteModule,
2918
+ imports: [AutoComplete, SharedModule],
2919
+ exports: [AutoComplete, SharedModule]
2920
+ });
2921
+ static ɵinj = i0.ɵɵngDeclareInjector({
2922
+ minVersion: "12.0.0",
2923
+ version: "22.2.1",
2924
+ ngImport: i0,
2925
+ type: AutoCompleteModule,
2926
+ imports: [
2927
+ AutoComplete,
2928
+ SharedModule,
2929
+ SharedModule
2930
+ ]
2931
+ });
2932
+ };
2933
+ i0.ɵɵngDeclareClassMetadata({
2934
+ minVersion: "12.0.0",
2935
+ version: "22.2.1",
2936
+ ngImport: i0,
2937
+ type: AutoCompleteModule,
2938
+ decorators: [{
2939
+ type: NgModule,
2940
+ args: [{
2941
+ imports: [AutoComplete, SharedModule],
2942
+ exports: [AutoComplete, SharedModule]
2943
+ }]
2944
+ }]
2945
+ });
1955
2946
  export { AUTOCOMPLETE_VALUE_ACCESSOR, AutoComplete, AutoCompleteClasses, AutoCompleteModule, AutoCompleteStyle };
1956
- //# sourceMappingURL=gravionlabs-helix-core-autocomplete.mjs.map
2947
+
2948
+ //# sourceMappingURL=gravionlabs-helix-core-autocomplete.mjs.map