@aquera/nile-elements 0.1.47-beta-1.6 → 0.1.47-beta-2.1

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 (336) hide show
  1. package/README.md +9 -3
  2. package/demo/index.html +72 -32
  3. package/dist/{fixture-7bfb866e.cjs.js → fixture-161dee0b.cjs.js} +2 -2
  4. package/dist/{fixture-7bfb866e.cjs.js.map → fixture-161dee0b.cjs.js.map} +1 -1
  5. package/dist/{fixture-2b5b3aba.esm.js → fixture-372df3b0.esm.js} +1 -1
  6. package/dist/index.cjs.js +1 -1
  7. package/dist/index.esm.js +1 -1
  8. package/dist/internal/form.cjs.js +1 -1
  9. package/dist/internal/form.cjs.js.map +1 -1
  10. package/dist/internal/form.esm.js +1 -1
  11. package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
  12. package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
  13. package/dist/nile-auto-complete/index.cjs.js +1 -1
  14. package/dist/nile-auto-complete/index.esm.js +1 -1
  15. package/dist/nile-auto-complete/nile-auto-complete.cjs.js +1 -17
  16. package/dist/nile-auto-complete/nile-auto-complete.cjs.js.map +1 -1
  17. package/dist/nile-auto-complete/nile-auto-complete.esm.js +8 -29
  18. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
  19. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js.map +1 -1
  20. package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
  21. package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
  22. package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
  23. package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
  24. package/dist/nile-badge/nile-badge.test.esm.js +1 -1
  25. package/dist/nile-button/nile-button.test.cjs.js +1 -1
  26. package/dist/nile-button/nile-button.test.esm.js +1 -1
  27. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
  28. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
  29. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  30. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
  31. package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
  32. package/dist/nile-card/nile-card.test.cjs.js +1 -1
  33. package/dist/nile-card/nile-card.test.esm.js +1 -1
  34. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
  35. package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
  36. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  37. package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
  38. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  39. package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
  40. package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
  41. package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
  42. package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
  43. package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
  44. package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
  45. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
  46. package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
  47. package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
  48. package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
  49. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +1 -1
  50. package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +1 -1
  51. package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
  52. package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
  53. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
  54. package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
  55. package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
  56. package/dist/nile-hero/nile-hero.test.esm.js +1 -1
  57. package/dist/nile-icon/icons/svg/agent.cjs.js +1 -1
  58. package/dist/nile-icon/icons/svg/agent.cjs.js.map +1 -1
  59. package/dist/nile-icon/icons/svg/agent.esm.js +1 -1
  60. package/dist/nile-icon/icons/svg/api.cjs.js +1 -1
  61. package/dist/nile-icon/icons/svg/api.cjs.js.map +1 -1
  62. package/dist/nile-icon/icons/svg/api.esm.js +1 -1
  63. package/dist/nile-icon/icons/svg/apply-filter.cjs.js +1 -1
  64. package/dist/nile-icon/icons/svg/apply-filter.cjs.js.map +1 -1
  65. package/dist/nile-icon/icons/svg/apply-filter.esm.js +1 -1
  66. package/dist/nile-icon/icons/svg/arrowdropdown.cjs.js +1 -1
  67. package/dist/nile-icon/icons/svg/arrowdropdown.cjs.js.map +1 -1
  68. package/dist/nile-icon/icons/svg/arrowdropdown.esm.js +1 -1
  69. package/dist/nile-icon/icons/svg/arrowdropup.cjs.js +1 -1
  70. package/dist/nile-icon/icons/svg/arrowdropup.cjs.js.map +1 -1
  71. package/dist/nile-icon/icons/svg/arrowdropup.esm.js +1 -1
  72. package/dist/nile-icon/icons/svg/database.cjs.js +1 -1
  73. package/dist/nile-icon/icons/svg/database.cjs.js.map +1 -1
  74. package/dist/nile-icon/icons/svg/database.esm.js +1 -1
  75. package/dist/nile-icon/icons/svg/done.cjs.js +1 -1
  76. package/dist/nile-icon/icons/svg/done.cjs.js.map +1 -1
  77. package/dist/nile-icon/icons/svg/done.esm.js +1 -1
  78. package/dist/nile-icon/icons/svg/dontmap.cjs.js +1 -1
  79. package/dist/nile-icon/icons/svg/dontmap.cjs.js.map +1 -1
  80. package/dist/nile-icon/icons/svg/dontmap.esm.js +1 -1
  81. package/dist/nile-icon/icons/svg/doublearrowleft.cjs.js +1 -1
  82. package/dist/nile-icon/icons/svg/doublearrowleft.cjs.js.map +1 -1
  83. package/dist/nile-icon/icons/svg/doublearrowleft.esm.js +1 -1
  84. package/dist/nile-icon/icons/svg/doublearrowright.cjs.js +1 -1
  85. package/dist/nile-icon/icons/svg/doublearrowright.cjs.js.map +1 -1
  86. package/dist/nile-icon/icons/svg/doublearrowright.esm.js +1 -1
  87. package/dist/nile-icon/icons/svg/drag.cjs.js +1 -1
  88. package/dist/nile-icon/icons/svg/drag.cjs.js.map +1 -1
  89. package/dist/nile-icon/icons/svg/drag.esm.js +1 -1
  90. package/dist/nile-icon/icons/svg/expand-06.cjs.js +1 -1
  91. package/dist/nile-icon/icons/svg/expand-06.cjs.js.map +1 -1
  92. package/dist/nile-icon/icons/svg/expand-06.esm.js +1 -1
  93. package/dist/nile-icon/icons/svg/expand.cjs.js +1 -1
  94. package/dist/nile-icon/icons/svg/expand.cjs.js.map +1 -1
  95. package/dist/nile-icon/icons/svg/expand.esm.js +1 -1
  96. package/dist/nile-icon/icons/svg/integer.cjs.js +1 -1
  97. package/dist/nile-icon/icons/svg/integer.cjs.js.map +1 -1
  98. package/dist/nile-icon/icons/svg/integer.esm.js +1 -1
  99. package/dist/nile-icon/icons/svg/pluscircle.cjs.js +1 -1
  100. package/dist/nile-icon/icons/svg/pluscircle.cjs.js.map +1 -1
  101. package/dist/nile-icon/icons/svg/pluscircle.esm.js +1 -1
  102. package/dist/nile-icon/icons/svg/question.cjs.js +1 -1
  103. package/dist/nile-icon/icons/svg/question.cjs.js.map +1 -1
  104. package/dist/nile-icon/icons/svg/question.esm.js +1 -1
  105. package/dist/nile-icon/icons/svg/resource.cjs.js +1 -1
  106. package/dist/nile-icon/icons/svg/resource.cjs.js.map +1 -1
  107. package/dist/nile-icon/icons/svg/resource.esm.js +1 -1
  108. package/dist/nile-icon/icons/svg/sendescalation.cjs.js +1 -1
  109. package/dist/nile-icon/icons/svg/sendescalation.cjs.js.map +1 -1
  110. package/dist/nile-icon/icons/svg/sendescalation.esm.js +1 -1
  111. package/dist/nile-icon/icons/svg/sendreminder.cjs.js +1 -1
  112. package/dist/nile-icon/icons/svg/sendreminder.cjs.js.map +1 -1
  113. package/dist/nile-icon/icons/svg/sendreminder.esm.js +1 -1
  114. package/dist/nile-icon/icons/svg/timezone.cjs.js +1 -1
  115. package/dist/nile-icon/icons/svg/timezone.cjs.js.map +1 -1
  116. package/dist/nile-icon/icons/svg/timezone.esm.js +1 -1
  117. package/dist/nile-icon/icons/svg/unmute.cjs.js +1 -1
  118. package/dist/nile-icon/icons/svg/unmute.cjs.js.map +1 -1
  119. package/dist/nile-icon/icons/svg/unmute.esm.js +1 -1
  120. package/dist/nile-icon/icons/svg/upgrade.cjs.js +1 -1
  121. package/dist/nile-icon/icons/svg/upgrade.cjs.js.map +1 -1
  122. package/dist/nile-icon/icons/svg/upgrade.esm.js +1 -1
  123. package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
  124. package/dist/nile-icon/nile-icon.test.esm.js +1 -1
  125. package/dist/nile-input/nile-input.test.cjs.js +1 -1
  126. package/dist/nile-input/nile-input.test.esm.js +1 -1
  127. package/dist/nile-link/nile-link.test.cjs.js +1 -1
  128. package/dist/nile-link/nile-link.test.esm.js +1 -1
  129. package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
  130. package/dist/nile-loader/nile-loader.test.esm.js +1 -1
  131. package/dist/nile-option/nile-option.cjs.js +1 -1
  132. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  133. package/dist/nile-option/nile-option.css.cjs.js +1 -1
  134. package/dist/nile-option/nile-option.css.cjs.js.map +1 -1
  135. package/dist/nile-option/nile-option.css.esm.js +1 -1
  136. package/dist/nile-option/nile-option.esm.js +2 -2
  137. package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
  138. package/dist/nile-popover/nile-popover.test.esm.js +1 -1
  139. package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
  140. package/dist/nile-popup/nile-popup.test.esm.js +1 -1
  141. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
  142. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
  143. package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
  144. package/dist/nile-radio/nile-radio.test.esm.js +1 -1
  145. package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
  146. package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
  147. package/dist/nile-select/index.cjs.js +1 -1
  148. package/dist/nile-select/index.esm.js +1 -1
  149. package/dist/nile-select/nile-select.cjs.js +1 -1
  150. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  151. package/dist/nile-select/nile-select.esm.js +2 -2
  152. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  153. package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
  154. package/dist/nile-select/nile-select.test.esm.js +2 -2
  155. package/dist/nile-select/virtual-scroll-helper.cjs.js +2 -0
  156. package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -0
  157. package/dist/nile-select/virtual-scroll-helper.esm.js +38 -0
  158. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
  159. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
  160. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
  161. package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
  162. package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
  163. package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
  164. package/dist/nile-virtual-select/index.cjs.js +2 -0
  165. package/dist/nile-virtual-select/index.cjs.js.map +1 -0
  166. package/dist/nile-virtual-select/index.esm.js +1 -0
  167. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +2 -0
  168. package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -0
  169. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +2 -0
  170. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -0
  171. package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +468 -0
  172. package/dist/nile-virtual-select/nile-virtual-select.esm.js +227 -0
  173. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +2 -0
  174. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js.map +1 -0
  175. package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +49 -0
  176. package/dist/nile-virtual-select/renderer.cjs.js +2 -0
  177. package/dist/nile-virtual-select/renderer.cjs.js.map +1 -0
  178. package/dist/nile-virtual-select/renderer.esm.js +17 -0
  179. package/dist/nile-virtual-select/search-manager.cjs.js +2 -0
  180. package/dist/nile-virtual-select/search-manager.cjs.js.map +1 -0
  181. package/dist/nile-virtual-select/search-manager.esm.js +1 -0
  182. package/dist/nile-virtual-select/selection-manager.cjs.js +2 -0
  183. package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -0
  184. package/dist/nile-virtual-select/selection-manager.esm.js +1 -0
  185. package/dist/nile-virtual-select/types.cjs.js +2 -0
  186. package/dist/nile-virtual-select/types.cjs.js.map +1 -0
  187. package/dist/nile-virtual-select/types.esm.js +1 -0
  188. package/dist/src/index.d.ts +1 -0
  189. package/dist/src/index.js +1 -0
  190. package/dist/src/index.js.map +1 -1
  191. package/dist/src/internal/form.js +2 -2
  192. package/dist/src/internal/form.js.map +1 -1
  193. package/dist/src/nile-icon/icons/svg/agent.d.ts +1 -1
  194. package/dist/src/nile-icon/icons/svg/agent.js +1 -1
  195. package/dist/src/nile-icon/icons/svg/agent.js.map +1 -1
  196. package/dist/src/nile-icon/icons/svg/api.d.ts +1 -1
  197. package/dist/src/nile-icon/icons/svg/api.js +1 -1
  198. package/dist/src/nile-icon/icons/svg/api.js.map +1 -1
  199. package/dist/src/nile-icon/icons/svg/apply-filter.d.ts +1 -1
  200. package/dist/src/nile-icon/icons/svg/apply-filter.js +1 -1
  201. package/dist/src/nile-icon/icons/svg/apply-filter.js.map +1 -1
  202. package/dist/src/nile-icon/icons/svg/arrowdropdown.d.ts +1 -1
  203. package/dist/src/nile-icon/icons/svg/arrowdropdown.js +1 -1
  204. package/dist/src/nile-icon/icons/svg/arrowdropdown.js.map +1 -1
  205. package/dist/src/nile-icon/icons/svg/arrowdropup.d.ts +1 -1
  206. package/dist/src/nile-icon/icons/svg/arrowdropup.js +1 -1
  207. package/dist/src/nile-icon/icons/svg/arrowdropup.js.map +1 -1
  208. package/dist/src/nile-icon/icons/svg/database.d.ts +1 -1
  209. package/dist/src/nile-icon/icons/svg/database.js +1 -1
  210. package/dist/src/nile-icon/icons/svg/database.js.map +1 -1
  211. package/dist/src/nile-icon/icons/svg/done.d.ts +1 -1
  212. package/dist/src/nile-icon/icons/svg/done.js +1 -1
  213. package/dist/src/nile-icon/icons/svg/done.js.map +1 -1
  214. package/dist/src/nile-icon/icons/svg/dontmap.d.ts +1 -1
  215. package/dist/src/nile-icon/icons/svg/dontmap.js +1 -1
  216. package/dist/src/nile-icon/icons/svg/dontmap.js.map +1 -1
  217. package/dist/src/nile-icon/icons/svg/doublearrowleft.d.ts +1 -1
  218. package/dist/src/nile-icon/icons/svg/doublearrowleft.js +1 -1
  219. package/dist/src/nile-icon/icons/svg/doublearrowleft.js.map +1 -1
  220. package/dist/src/nile-icon/icons/svg/doublearrowright.d.ts +1 -1
  221. package/dist/src/nile-icon/icons/svg/doublearrowright.js +1 -1
  222. package/dist/src/nile-icon/icons/svg/doublearrowright.js.map +1 -1
  223. package/dist/src/nile-icon/icons/svg/drag.d.ts +1 -1
  224. package/dist/src/nile-icon/icons/svg/drag.js +1 -1
  225. package/dist/src/nile-icon/icons/svg/drag.js.map +1 -1
  226. package/dist/src/nile-icon/icons/svg/expand-06.d.ts +1 -1
  227. package/dist/src/nile-icon/icons/svg/expand-06.js +1 -1
  228. package/dist/src/nile-icon/icons/svg/expand-06.js.map +1 -1
  229. package/dist/src/nile-icon/icons/svg/expand.d.ts +1 -1
  230. package/dist/src/nile-icon/icons/svg/expand.js +1 -1
  231. package/dist/src/nile-icon/icons/svg/expand.js.map +1 -1
  232. package/dist/src/nile-icon/icons/svg/integer.d.ts +1 -1
  233. package/dist/src/nile-icon/icons/svg/integer.js +1 -1
  234. package/dist/src/nile-icon/icons/svg/integer.js.map +1 -1
  235. package/dist/src/nile-icon/icons/svg/pluscircle.d.ts +1 -1
  236. package/dist/src/nile-icon/icons/svg/pluscircle.js +1 -1
  237. package/dist/src/nile-icon/icons/svg/pluscircle.js.map +1 -1
  238. package/dist/src/nile-icon/icons/svg/question.d.ts +1 -1
  239. package/dist/src/nile-icon/icons/svg/question.js +1 -1
  240. package/dist/src/nile-icon/icons/svg/question.js.map +1 -1
  241. package/dist/src/nile-icon/icons/svg/resource.d.ts +1 -1
  242. package/dist/src/nile-icon/icons/svg/resource.js +1 -1
  243. package/dist/src/nile-icon/icons/svg/resource.js.map +1 -1
  244. package/dist/src/nile-icon/icons/svg/sendescalation.d.ts +1 -1
  245. package/dist/src/nile-icon/icons/svg/sendescalation.js +1 -1
  246. package/dist/src/nile-icon/icons/svg/sendescalation.js.map +1 -1
  247. package/dist/src/nile-icon/icons/svg/sendreminder.d.ts +1 -1
  248. package/dist/src/nile-icon/icons/svg/sendreminder.js +1 -1
  249. package/dist/src/nile-icon/icons/svg/sendreminder.js.map +1 -1
  250. package/dist/src/nile-icon/icons/svg/timezone.d.ts +1 -1
  251. package/dist/src/nile-icon/icons/svg/timezone.js +1 -1
  252. package/dist/src/nile-icon/icons/svg/timezone.js.map +1 -1
  253. package/dist/src/nile-icon/icons/svg/unmute.d.ts +1 -1
  254. package/dist/src/nile-icon/icons/svg/unmute.js +1 -1
  255. package/dist/src/nile-icon/icons/svg/unmute.js.map +1 -1
  256. package/dist/src/nile-icon/icons/svg/upgrade.d.ts +1 -1
  257. package/dist/src/nile-icon/icons/svg/upgrade.js +1 -1
  258. package/dist/src/nile-icon/icons/svg/upgrade.js.map +1 -1
  259. package/dist/src/nile-option/nile-option.css.js +1 -1
  260. package/dist/src/nile-option/nile-option.css.js.map +1 -1
  261. package/dist/src/nile-option/nile-option.d.ts +6 -4
  262. package/dist/src/nile-option/nile-option.js +20 -14
  263. package/dist/src/nile-option/nile-option.js.map +1 -1
  264. package/dist/src/nile-select/nile-select.d.ts +10 -5
  265. package/dist/src/nile-select/nile-select.js +38 -29
  266. package/dist/src/nile-select/nile-select.js.map +1 -1
  267. package/dist/src/nile-select/virtual-scroll-helper.d.ts +9 -0
  268. package/dist/src/nile-select/virtual-scroll-helper.js +51 -0
  269. package/dist/src/nile-select/virtual-scroll-helper.js.map +1 -0
  270. package/dist/src/nile-virtual-select/index.d.ts +1 -0
  271. package/dist/src/nile-virtual-select/index.js +2 -0
  272. package/dist/src/nile-virtual-select/index.js.map +1 -0
  273. package/dist/src/nile-virtual-select/nile-virtual-select.css.d.ts +12 -0
  274. package/dist/src/nile-virtual-select/nile-virtual-select.css.js +480 -0
  275. package/dist/src/nile-virtual-select/nile-virtual-select.css.js.map +1 -0
  276. package/dist/src/nile-virtual-select/nile-virtual-select.d.ts +251 -0
  277. package/dist/src/nile-virtual-select/nile-virtual-select.js +1158 -0
  278. package/dist/src/nile-virtual-select/nile-virtual-select.js.map +1 -0
  279. package/dist/src/nile-virtual-select/nile-virtual-select.test.d.ts +7 -0
  280. package/dist/src/nile-virtual-select/nile-virtual-select.test.js +317 -0
  281. package/dist/src/nile-virtual-select/nile-virtual-select.test.js.map +1 -0
  282. package/dist/src/nile-virtual-select/renderer.d.ts +11 -0
  283. package/dist/src/nile-virtual-select/renderer.js +48 -0
  284. package/dist/src/nile-virtual-select/renderer.js.map +1 -0
  285. package/dist/src/nile-virtual-select/search-manager.d.ts +12 -0
  286. package/dist/src/nile-virtual-select/search-manager.js +39 -0
  287. package/dist/src/nile-virtual-select/search-manager.js.map +1 -0
  288. package/dist/src/nile-virtual-select/selection-manager.d.ts +12 -0
  289. package/dist/src/nile-virtual-select/selection-manager.js +57 -0
  290. package/dist/src/nile-virtual-select/selection-manager.js.map +1 -0
  291. package/dist/src/nile-virtual-select/types.d.ts +45 -0
  292. package/dist/src/nile-virtual-select/types.js +8 -0
  293. package/dist/src/nile-virtual-select/types.js.map +1 -0
  294. package/dist/tsconfig.tsbuildinfo +1 -1
  295. package/dist/virtualize-a4a40d96.esm.js +22 -0
  296. package/dist/virtualize-b6a2fbe0.cjs.js +18 -0
  297. package/dist/virtualize-b6a2fbe0.cjs.js.map +1 -0
  298. package/package.json +1 -2
  299. package/src/index.ts +3 -1
  300. package/src/internal/form.ts +2 -2
  301. package/src/nile-icon/icons/svg/agent.ts +1 -1
  302. package/src/nile-icon/icons/svg/api.ts +1 -1
  303. package/src/nile-icon/icons/svg/apply-filter.ts +1 -1
  304. package/src/nile-icon/icons/svg/arrowdropdown.ts +1 -1
  305. package/src/nile-icon/icons/svg/arrowdropup.ts +1 -1
  306. package/src/nile-icon/icons/svg/database.ts +1 -1
  307. package/src/nile-icon/icons/svg/done.ts +1 -1
  308. package/src/nile-icon/icons/svg/dontmap.ts +1 -1
  309. package/src/nile-icon/icons/svg/doublearrowleft.ts +1 -1
  310. package/src/nile-icon/icons/svg/doublearrowright.ts +1 -1
  311. package/src/nile-icon/icons/svg/drag.ts +1 -1
  312. package/src/nile-icon/icons/svg/expand-06.ts +1 -1
  313. package/src/nile-icon/icons/svg/expand.ts +1 -1
  314. package/src/nile-icon/icons/svg/integer.ts +1 -1
  315. package/src/nile-icon/icons/svg/pluscircle.ts +1 -1
  316. package/src/nile-icon/icons/svg/question.ts +1 -1
  317. package/src/nile-icon/icons/svg/resource.ts +1 -1
  318. package/src/nile-icon/icons/svg/sendescalation.ts +1 -1
  319. package/src/nile-icon/icons/svg/sendreminder.ts +1 -1
  320. package/src/nile-icon/icons/svg/timezone.ts +1 -1
  321. package/src/nile-icon/icons/svg/unmute.ts +1 -1
  322. package/src/nile-icon/icons/svg/upgrade.ts +1 -1
  323. package/src/nile-option/nile-option.css.ts +1 -1
  324. package/src/nile-option/nile-option.ts +16 -10
  325. package/src/nile-select/nile-select.ts +34 -23
  326. package/src/nile-select/virtual-scroll-helper.ts +56 -0
  327. package/src/nile-virtual-select/index.ts +1 -0
  328. package/src/nile-virtual-select/nile-virtual-select.css.ts +482 -0
  329. package/src/nile-virtual-select/nile-virtual-select.test.ts +390 -0
  330. package/src/nile-virtual-select/nile-virtual-select.ts +1234 -0
  331. package/src/nile-virtual-select/renderer.ts +65 -0
  332. package/src/nile-virtual-select/search-manager.ts +48 -0
  333. package/src/nile-virtual-select/selection-manager.ts +64 -0
  334. package/src/nile-virtual-select/types.ts +48 -0
  335. package/vscode-html-custom-data.json +228 -6
  336. package/publish.sh +0 -62
@@ -2,4 +2,4 @@
2
2
  * Do not edit directly
3
3
  */
4
4
 
5
- export default "PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyLDAuMkM1LjUsMC4yLDAuMiw1LjUsMC4yLDEyYzAsNi41LDUuMywxMS44LDExLjgsMTEuOGM2LjUsMCwxMS44LTUuMywxMS44LTExLjhDMjMuOCw1LjUsMTguNSwwLjIsMTIsMC4yeiBNMTIsMjIuMkM2LjMsMjIuMiwxLjgsMTcuNywxLjgsMTJDMS44LDYuMyw2LjMsMS44LDEyLDEuOGM1LjcsMCwxMC4yLDQuNiwxMC4yLDEwLjJDMjIuMiwxNy43LDE3LjcsMjIuMiwxMiwyMi4yeiBNMTIsNS4zYy0yLjIsMC00LDEuOC00LDRoMS41YzAtMS40LDEuMS0yLjUsMi41LTIuNWMxLjQsMCwyLjUsMS4xLDIuNSwyLjVjMCwxLjQtMC43LDItMS41LDIuOGMtMC44LDAuNy0xLjgsMS42LTEuOCwzLjJoMS41YzAtMC45LDAuNS0xLjMsMS4zLTIuMWMwLjktMC44LDItMS44LDItMy45QzE2LDcuMiwxNC4yLDUuMywxMiw1LjN6IE0xMS4zLDE2LjRoMS40djEuNGgtMS40VjE2LjR6Ii8+PC9zdmc+";
5
+ export default "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMjEuMS4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48Zz48cGF0aCBkPSJNMTIsMC4yQzUuNSwwLjIsMC4yLDUuNSwwLjIsMTJjMCw2LjUsNS4zLDExLjgsMTEuOCwxMS44YzYuNSwwLDExLjgtNS4zLDExLjgtMTEuOEMyMy44LDUuNSwxOC41LDAuMiwxMiwwLjJ6IE0xMiwyMi4yCQlDNi4zLDIyLjIsMS44LDE3LjcsMS44LDEyQzEuOCw2LjMsNi4zLDEuOCwxMiwxLjhjNS43LDAsMTAuMiw0LjYsMTAuMiwxMC4yQzIyLjIsMTcuNywxNy43LDIyLjIsMTIsMjIuMnoiLz48cGF0aCBkPSJNMTIsNS4zYy0yLjIsMC00LDEuOC00LDRoMS41YzAtMS40LDEuMS0yLjUsMi41LTIuNWMxLjQsMCwyLjUsMS4xLDIuNSwyLjVjMCwxLjQtMC43LDItMS41LDIuOGMtMC44LDAuNy0xLjgsMS42LTEuOCwzLjIJCWgxLjVjMC0wLjksMC41LTEuMywxLjMtMi4xYzAuOS0wLjgsMi0xLjgsMi0zLjlDMTYsNy4yLDE0LjIsNS4zLDEyLDUuM3oiLz48cmVjdCB4PSIxMS4zIiB5PSIxNi40IiB3aWR0aD0iMS40IiBoZWlnaHQ9IjEuNCIvPjwvZz48L3N2Zz4=";
@@ -2,4 +2,4 @@
2
2
  * Do not edit directly
3
3
  */
4
4
 
5
- export default "PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE1LDE1SDFWNS43NGg0LjZMNy42Nyw3LjYySDE1Wk0yLDE0SDE0VjguNjJINy4yOEw1LjIsNi43NEgyWiBNMTMuOTksNy44NkgxMi45OVYySDRWNS45OUgzVjFIMTMuOTlWNy44NlogTTUuOTksMy41NUgxMS4wMlY0LjU1SDUuOTlWMy41NVoiLz48L3N2Zz4=";
5
+ export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PGcgaWQ9IkxheWVyXzIiIGRhdGEtbmFtZT0iTGF5ZXIgMiI+PHBhdGggZD0iTTE1LDE1SDFWNS43NGg0LjZMNy42Nyw3LjYySDE1Wk0yLDE0SDE0VjguNjJINy4yOEw1LjIsNi43NEgyWiIgc3R5bGU9ImZpbGw6IzAyMDIwMiIvPjxwb2x5Z29uIHBvaW50cz0iMTMuOTkgNy44NiAxMi45OSA3Ljg2IDEyLjk5IDIgNCAyIDQgNS45OSAzIDUuOTkgMyAxIDEzLjk5IDEgMTMuOTkgNy44NiIvPjxyZWN0IHg9IjUuOTkiIHk9IjMuNTUiIHdpZHRoPSI1LjAzIiBoZWlnaHQ9IjEiLz48L2c+PC9zdmc+";
@@ -2,4 +2,4 @@
2
2
  * Do not edit directly
3
3
  */
4
4
 
5
- export default "PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTgsNi41NUEyLjc5LDIuNzksMCwxLDAsNS4yNiwzLjc3LDIuNzgsMi43OCwwLDAsMCw4LDYuNTVaTTgsMS45MUExLjg2LDEuODYsMCwxLDEsNi4xOCwzLjc3LDEuODUsMS44NSwwLDAsMSw4LDEuOTFaIE0yLjk0LDExLjc0YTIuNzQsMi43NCwwLDAsMSwzLTIuNDFIOFY4LjRINS45MUEzLjY2LDMuNjYsMCwwLDAsMiwxMS43NFYxNC45SDhWMTRIMi45NFogTTguMDQsMTAuODNMMTQuNDUsOC40OUwxMi4wOSwxNC45TDEwLjgsMTIuMTNMOC4wNCwxMC44M1oiLz48L3N2Zz4=";
5
+ export default "PHN2ZyBpZD0iZXNjYWxhdGlvbiIgZGF0YS1uYW1lPSJlc2NhbGF0aW9uMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTYgMTYiPjxkZWZzPjwvZGVmcz48cGF0aCBkPSJNOCw2LjU1QTIuNzksMi43OSwwLDEsMCw1LjI2LDMuNzcsMi43OCwyLjc4LDAsMCwwLDgsNi41NVpNOCwxLjkxQTEuODYsMS44NiwwLDEsMSw2LjE4LDMuNzcsMS44NSwxLjg1LDAsMCwxLDgsMS45MVoiLz48cGF0aCBkPSJNMi45NCwxMS43NGEyLjc0LDIuNzQsMCwwLDEsMy0yLjQxSDhWOC40SDUuOTFBMy42NiwzLjY2LDAsMCwwLDIsMTEuNzRWMTQuOUg4VjE0SDIuOTRaIi8+PHBvbHlnb24gcG9pbnRzPSI4LjA0IDEwLjgzIDE0LjQ1IDguNDkgMTIuMDkgMTQuOSAxMC44IDEyLjEzIDguMDQgMTAuODMiLz48L3N2Zz4=";
@@ -2,4 +2,4 @@
2
2
  * Do not edit directly
3
3
  */
4
4
 
5
- export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSI+PCEtLSBNYWluIG91dGxpbmUgKGNvbnZlcnRlZCBmcm9tIHBvbHlnb24pIC0tPjxwYXRoICAgIGQ9Ik03LjAzIDEyLjY1ICAgICAgIEwxLjA5IDEyLjY1ICAgICAgIEwxLjA5IDEuNzMgICAgICAgTDE0LjY5IDEuNzMgICAgICAgTDE0LjY5IDcuMDkgICAgICAgTDEzLjY5IDcuMDkgICAgICAgTDEzLjY5IDIuNzMgICAgICAgTDIuMDkgMi43MyAgICAgICBMMi4wOSAxMS42NSAgICAgICBMNy4wMyAxMS42NSAgICAgICBaIiAgICBmaWxsPSJpbmhlcml0IiAgLz48IS0tIENsb2NrIGNpcmNsZSBhbmQgaGFuZCAtLT48cGF0aCAgICBkPSJNMTEuNjMgOC4wNSAgICAgICBBMy4zMyAzLjMzIDAgMSAwIDE1IDExLjM4ICAgICAgIEEzLjMzIDMuMzMgMCAwIDAgMTEuNjMgOC4wNSAgICAgICBaICAgICAgIE0xMy4xOSAxMyAgICAgICBsLTIuMDYgLTEuMTQgICAgICAgVjkuNjEgICAgICAgaDEgICAgICAgdjEuNjQgICAgICAgbDEuNTQgLjg1ICAgICAgIFoiICAgIGZpbGw9ImluaGVyaXQiICAvPjwhLS0gUmliYm9uIGRldGFpbCAtLT48cGF0aCAgICBkPSJNOCA3LjY1ICAgICAgIGEyLjU0IDIuNTQgMCAwIDEgLTEuMSAtMC4yNiAgICAgICBMMS4zNyA0LjY4ICAgICAgIGwuNDQgLTAuOSAgICAgICBMNy4zMiA2LjUgICAgICAgYTEuNTYgMS41NiAwIDAgMCAxLjM1IDAgICAgICAgTDE0IDMuNzkgICAgICAgbC40NSAuODkgICAgICAgbC01LjMgMi43ICAgICAgIEEyLjU1IDIuNTUgMCAwIDEgOCA3LjY1ICAgICAgIFoiICAgIGZpbGw9ImluaGVyaXQiICAvPjwhLS0gRm9sZGVkIGNvcm5lciAoY29udmVydGVkIGZyb20gcmVjdCkgLS0+PHBhdGggICAgZD0iTTAuNzcgOS42OCAgICAgICBoNS41NyAgICAgICB2MSAgICAgICBoLTUuNTcgICAgICAgWiIgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTYuMTYgNS41KSByb3RhdGUoLTQ1KSIgICAgZmlsbD0iaW5oZXJpdCIgIC8+PC9zdmc+";
5
+ export default "PHN2ZyBpZD0icmVtaW5kZXIiIGRhdGEtbmFtZT0icmVtaW5kZXIgMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTYgMTYiPjxwb2x5Z29uIHBvaW50cz0iNy4wMyAxMi42NSAxLjA5IDEyLjY1IDEuMDkgMS43MyAxNC42OSAxLjczIDE0LjY5IDcuMDkgMTMuNjkgNy4wOSAxMy42OSAyLjczIDIuMDkgMi43MyAyLjA5IDExLjY1IDcuMDMgMTEuNjUgNy4wMyAxMi42NSIvPjxwYXRoIGQ9Ik0xMS42Myw4LjA1QTMuMzMsMy4zMywwLDEsMCwxNSwxMS4zOCwzLjMzLDMuMzMsMCwwLDAsMTEuNjMsOC4wNVpNMTMuMTksMTNsLTIuMDYtMS4xNFY5LjYxaDF2MS42NGwxLjU0Ljg1WiIvPjxwYXRoIGQ9Ik04LDcuNjVhMi41NCwyLjU0LDAsMCwxLTEuMS0uMjZMMS4zNyw0LjY4bC40NC0uOUw3LjMyLDYuNWExLjU2LDEuNTYsMCwwLDAsMS4zNSwwTDE0LDMuNzlsLjQ1Ljg5LTUuMywyLjdBMi41NSwyLjU1LDAsMCwxLDgsNy42NVoiLz48cmVjdCB4PSIwLjc3IiB5PSI5LjY4IiB3aWR0aD0iNS41NyIgaGVpZ2h0PSIxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNi4xNiA1LjUpIHJvdGF0ZSgtNDUpIi8+PC9zdmc+";
@@ -2,4 +2,4 @@
2
2
  * Do not edit directly
3
3
  */
4
4
 
5
- export default "PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE0LjQsOC43YzAuMS0wLjQsMC4xLTAuOCwwLjEtMS4yYzAtMy45LTMuMS03LTctN2MtMy45LDAtNywzLjEtNyw3YzAsMy45LDMuMSw3LDcsN2MwLjQsMCwwLjgtMC4xLDEuMi0wLjFjMC43LDAuNywxLjcsMS4xLDIuOCwxLjFjMi4yLDAsNC0xLjgsNC00QzE1LjUsMTAuNCwxNS4xLDkuNCwxNC40LDguN3ogTTEzLjUsNy41YzAsMC4yLDAsMC40LTAuMSwwLjVjLTAuNi0wLjMtMS4yLTAuNS0xLjktMC41Yy0wLjEsMC0wLjIsMC0wLjMsMGMwLDAsMCwwLDAsMGMwLTAuNy0wLjEtMS40LTAuMi0yaDIuMUMxMy40LDYuMSwxMy41LDYuOCwxMy41LDcuNXogTTguMSw5LjVINC45Yy0wLjEtMC42LTAuMi0xLjMtMC4yLTJzMC4xLTEuNCwwLjItMmg1LjJjMC4xLDAuNiwwLjIsMS4zLDAuMiwyYzAsMC4xLDAsMC4xLDAsMC4yQzkuMyw4LDguNSw4LjcsOC4xLDkuNXogTTEyLjcsNC41aC0xLjhjLTAuMi0xLTAuNi0xLjktMS4xLTIuNUMxMSwyLjUsMTIsMy40LDEyLjcsNC41eiBNNy41LDEuNWMwLjksMCwxLjgsMS4xLDIuNCwzSDUuMUM1LjcsMi42LDYuNiwxLjUsNy41LDEuNXogTTUuMiwyQzQuNywyLjYsNC40LDMuNSw0LjEsNC41SDIuM0MzLDMuNCw0LDIuNSw1LjIsMnogTTEuNSw3LjVjMC0wLjcsMC4xLTEuNCwwLjQtMmgyLjFjLTAuMSwwLjYtMC4yLDEuMy0wLjIsMnMwLjEsMS40LDAuMiwySDEuOUMxLjYsOC45LDEuNSw4LjIsMS41LDcuNXogTTIuMywxMC41aDEuOGMwLjIsMSwwLjYsMS45LDEuMSwyLjVDNCwxMi41LDMsMTEuNiwyLjMsMTAuNXogTTUuMSwxMC41aDIuNWMtMC4xLDAuMy0wLjEsMC43LTAuMSwxYzAsMC43LDAuMiwxLjMsMC41LDEuOWMtMC4yLDAuMS0wLjMsMC4xLTAuNSwwLjFDNi42LDEzLjUsNS43LDEyLjQsNS4xLDEwLjV6IE0xMS41LDE0LjVjLTEuNywwLTMtMS4zLTMtM3MxLjMtMywzLTNzMywxLjMsMywzUzEzLjIsMTQuNSwxMS41LDE0LjV6IE0xMS40LDEyLjRMMTMsMTBMMTAuNiwxMS42TDExLjQsMTIuNHoiLz48L3N2Zz4=";
5
+ export default "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMjYuNC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIJIHZpZXdCb3g9IjAgMCAxNiAxNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTYgMTY7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48Zz48cGF0aCBkPSJNMTQuNCw4LjdjMC4xLTAuNCwwLjEtMC44LDAuMS0xLjJjMC0zLjktMy4xLTctNy03Yy0zLjksMC03LDMuMS03LDdjMCwzLjksMy4xLDcsNyw3YzAuNCwwLDAuOC0wLjEsMS4yLTAuMQkJYzAuNywwLjcsMS43LDEuMSwyLjgsMS4xYzIuMiwwLDQtMS44LDQtNEMxNS41LDEwLjQsMTUuMSw5LjQsMTQuNCw4Ljd6IE0xMy41LDcuNWMwLDAuMiwwLDAuNC0wLjEsMC41Yy0wLjYtMC4zLTEuMi0wLjUtMS45LTAuNQkJYy0wLjEsMC0wLjIsMC0wLjMsMGMwLDAsMCwwLDAsMGMwLTAuNy0wLjEtMS40LTAuMi0yaDIuMUMxMy40LDYuMSwxMy41LDYuOCwxMy41LDcuNXogTTguMSw5LjVINC45Yy0wLjEtMC42LTAuMi0xLjMtMC4yLTIJCXMwLjEtMS40LDAuMi0yaDUuMmMwLjEsMC42LDAuMiwxLjMsMC4yLDJjMCwwLjEsMCwwLjEsMCwwLjJDOS4zLDgsOC41LDguNyw4LjEsOS41eiBNMTIuNyw0LjVoLTEuOGMtMC4yLTEtMC42LTEuOS0xLjEtMi41CQlDMTEsMi41LDEyLDMuNCwxMi43LDQuNXogTTcuNSwxLjVjMC45LDAsMS44LDEuMSwyLjQsM0g1LjFDNS43LDIuNiw2LjYsMS41LDcuNSwxLjV6IE01LjIsMkM0LjcsMi42LDQuNCwzLjUsNC4xLDQuNUgyLjMJCUMzLDMuNCw0LDIuNSw1LjIsMnogTTEuNSw3LjVjMC0wLjcsMC4xLTEuNCwwLjQtMmgyLjFjLTAuMSwwLjYtMC4yLDEuMy0wLjIsMnMwLjEsMS40LDAuMiwySDEuOUMxLjYsOC45LDEuNSw4LjIsMS41LDcuNXoJCSBNMi4zLDEwLjVoMS44YzAuMiwxLDAuNiwxLjksMS4xLDIuNUM0LDEyLjUsMywxMS42LDIuMywxMC41eiBNNS4xLDEwLjVoMi41Yy0wLjEsMC4zLTAuMSwwLjctMC4xLDFjMCwwLjcsMC4yLDEuMywwLjUsMS45CQljLTAuMiwwLjEtMC4zLDAuMS0wLjUsMC4xQzYuNiwxMy41LDUuNywxMi40LDUuMSwxMC41eiBNMTEuNSwxNC41Yy0xLjcsMC0zLTEuMy0zLTNzMS4zLTMsMy0zczMsMS4zLDMsM1MxMy4yLDE0LjUsMTEuNSwxNC41eiIvPjxwb2x5Z29uIHBvaW50cz0iMTEuNCwxMi40IDEzLDEwIDEwLjYsMTEuNiAJIi8+PC9nPjwvc3ZnPg==";
@@ -2,4 +2,4 @@
2
2
  * Do not edit directly
3
3
  */
4
4
 
5
- export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTE0LjQ3LDEzLjEyaC05di0xaDcuMzFhOC40OSw4LjQ5LDAsMCwxLS44NC0zLjYxVjUuNjVoMVY4LjUxQTcuNiw3LjYsMCwwLDAsMTQsMTIuMzZaIi8+PHBhdGggZD0iTTMuNDMsMTIuODhsLS44NS0uNTJBNy43MSw3LjcxLDAsMCwwLDMuNjgsOC41VjUuNTdhNC42MSw0LjYxLDAsMCwxLDguNzEtMi4xMmwtLjg5LjQ1QTMuNjEsMy42MSwwLDAsMCw0LjY4LDUuNTdWOC41MUE4LjY1LDguNjUsMCwwLDEsMy40MywxMi44OFoiLz48cGF0aCBkPSJNNi42MywxMy44YTEuNzYsMS43NiwwLDAsMCwzLjMyLDBaIi8+PHBhdGggICAgZD0iTS0wLjQgNy4xMmgxNi43OXYxaC0xNi43OVoiICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0zLjA1IDcuODkpIHJvdGF0ZSgtNDUpIiAgLz48L3N2Zz4=";
5
+ export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PGRlZnM+PC9kZWZzPjxwYXRoIGQ9Ik0xNC40NywxMy4xMmgtOXYtMWg3LjMxYTguNDksOC40OSwwLDAsMS0uODQtMy42MVY1LjY1aDFWOC41MUE3LjYsNy42LDAsMCwwLDE0LDEyLjM2WiIvPjxwYXRoIGQ9Ik0zLjQzLDEyLjg4bC0uODUtLjUyQTcuNzEsNy43MSwwLDAsMCwzLjY4LDguNVY1LjU3YTQuNjEsNC42MSwwLDAsMSw4LjcxLTIuMTJsLS44OS40NUEzLjYxLDMuNjEsMCwwLDAsNC42OCw1LjU3VjguNTFBOC42NSw4LjY1LDAsMCwxLDMuNDMsMTIuODhaIi8+PHBhdGggZD0iTTYuNjMsMTMuOGExLjc2LDEuNzYsMCwwLDAsMy4zMiwwWiIvPjxyZWN0IHg9Ii0wLjQiIHk9IjcuMTIiIHdpZHRoPSIxNi43OSIgaGVpZ2h0PSIxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy4wNSA3Ljg5KSByb3RhdGUoLTQ1KSIvPjwvc3ZnPg==";
@@ -2,4 +2,4 @@
2
2
  * Do not edit directly
3
3
  */
4
4
 
5
- export default "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PCEtLSBPcmlnaW5hbCBvdXRlciBzaGFwZSAtLT48cGF0aCBkPSJNMTYsOS40MnYtMi44NGwtMi4yOC0uMzhjLS4xLS4zNC0uMjQtLjY4LS40LTFsMS4zNC0xLjg4LTItMi0xLjg5LDEuMzZjLS4zMi0uMTYtLjY2LS4zLTEtLjRsLS4zNS0yLjI4aC0yLjg0bC0uMzgsMi4yOGMtLjM0LC4xLS42OCwuMjQtMSwuNGwtMS44NS0xLjM0TDEuMzUsMy4zNGwxLjMzLDEuODljLS4xNiwuMzItLjMsLjY2LS40LDFsLTIuMjgsLjM1djIuODRsMi4yOCwuMzhjLjEsLjM0LC4yNCwuNjgsLjQsMWwtMS4zNCwxLjg1LDIsMiwxLjg4LTEuMzRjLjMyLC4xNiwuNjYsLjMsMSwuNGwuMzYsMi4yOWgyLjg0bC4zOC0yLjI4Yy4zNC0uMSwuNjgtLjI0LDEtLjRsMS44OCwxLjM1LDItMi0xLjM0LTEuODhjLjE2LS4zMiwuMy0uNjYsLjQtMWwyLjI2LS4zN1ptLTIuNjQsMy4xMmwtLjgyLC44MS0xLjcyLTEuMjMtLjI4LC4xN2MtLjQxLC4yNC0uODQsLjQyLTEuMywuNTRsLS4zMiwuMDgtLjM0LDIuMDloLTEuMTZsLS4zNS0yLjA4LS4zMi0uMDhjLS40Ni0uMTItLjktLjMtMS4zMS0uNTRsLS4yOC0uMTctMS43LDEuMjMtLjgxLS44MSwxLjIzLTEuNzItLjE3LS4yOGMtLjI0LS40MS0uNDItLjg1LS41NC0xLjMxbC0uMDgtLjMxLTIuMDktLjM1di0xLjE2bDIuMDgtLjM1LC4wOC0uMzJjLjEyLS40NSwuMy0uODksLjU0LTEuMjlsLjE3LS4yOC0xLjIzLTEuNzIsLjgxLS44MSwxLjcyLDEuMjIsLjI4LS4xN2MuNDEtLjI0LC44NC0uNDIsMS4zLS41NGwuMzItLjA4LC4zNS0yLjA4aDEuMTZsLjM1LDIuMDgsLjMyLC4wOGMuNDYsLjEyLC44OSwuMywxLjMsLjU0bC4yOCwuMTcsMS43Mi0xLjIzLC44MSwuODEtMS4yMywxLjcyLC4xNywuMjhjLjI0LC40MSwuNDIsLjg1LC41NCwxLjMxbC4wOCwuMzIsMi4wOCwuMzR2MS4xNmwtMi4wOCwuMzUtLjA4LC4zMmMtLjEyLC40Ni0uMywuOS0uNTQsMS4zMWwtLjE3LC4yOCwxLjIzLDEuN1oiLz48IS0tIENvbnZlcnRlZCBmcm9tIHBvbHlnb24gdG8gcGF0aCAtLT48cGF0aCBkPSIgICAgTTQuNjUsOC4zNiAgICBMNS4zNSw5LjA2ICAgIEw3LjUsNi45MiAgICBMNy41LDExLjIxICAgIEw4LDExLjIxICAgIEw4LjUsMTEuMjEgICAgTDguNSw2LjkyICAgIEwxMC42NSw5LjA2ICAgIEwxMS4zNSw4LjM2ICAgIEw4LDUgICAgTDQuNjUsOC4zNiAgICBaICAiLz48L3N2Zz4=";
5
+ export default "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTE2LDkuNDJ2LTIuODRsLTIuMjgtLjM4Yy0uMS0uMzQtLjI0LS42OC0uNC0xbDEuMzQtMS44OC0yLTItMS44OSwxLjM2Yy0uMzItLjE2LS42Ni0uMy0xLS40bC0uMzUtMi4yOGgtMi44NGwtLjM4LDIuMjhjLS4zNCwuMS0uNjgsLjI0LTEsLjRsLTEuODUtMS4zNEwxLjM1LDMuMzRsMS4zMywxLjg5Yy0uMTYsLjMyLS4zLC42Ni0uNCwxbC0yLjI4LC4zNXYyLjg0bDIuMjgsLjM4Yy4xLC4zNCwuMjQsLjY4LC40LDFsLTEuMzQsMS44NSwyLDIsMS44OC0xLjM0Yy4zMiwuMTYsLjY2LC4zLDEsLjRsLjM2LDIuMjloMi44NGwuMzgtMi4yOGMuMzQtLjEsLjY4LS4yNCwxLS40bDEuODgsMS4zNSwyLTItMS4zNC0xLjg4Yy4xNi0uMzIsLjMtLjY2LC40LTFsMi4yNi0uMzdabS0yLjY0LDMuMTJsLS44MiwuODEtMS43Mi0xLjIzLS4yOCwuMTdjLS40MSwuMjQtLjg0LC40Mi0xLjMsLjU0bC0uMzIsLjA4LS4zNCwyLjA5aC0xLjE2bC0uMzUtMi4wOC0uMzItLjA4Yy0uNDYtLjEyLS45LS4zLTEuMzEtLjU0bC0uMjgtLjE3LTEuNywxLjIzLS44MS0uODEsMS4yMy0xLjcyLS4xNy0uMjhjLS4yNC0uNDEtLjQyLS44NS0uNTQtMS4zMWwtLjA4LS4zMS0yLjA5LS4zNXYtMS4xNmwyLjA4LS4zNSwuMDgtLjMyYy4xMi0uNDUsLjMtLjg5LC41NC0xLjI5bC4xNy0uMjgtMS4yMy0xLjcyLC44MS0uODEsMS43MiwxLjIyLC4yOC0uMTdjLjQxLS4yNCwuODQtLjQyLDEuMy0uNTRsLjMyLS4wOCwuMzUtMi4wOGgxLjE2bC4zNSwyLjA4LC4zMiwuMDhjLjQ2LC4xMiwuODksLjMsMS4zLC41NGwuMjgsLjE3LDEuNzItMS4yMywuODEsLjgxLTEuMjMsMS43MiwuMTcsLjI4Yy4yNCwuNDEsLjQyLC44NSwuNTQsMS4zMWwuMDgsLjMyLDIuMDgsLjM0djEuMTZsLTIuMDgsLjM1LS4wOCwuMzJjLS4xMiwuNDYtLjMsLjktLjU0LDEuMzFsLS4xNywuMjgsMS4yMywxLjdaIi8+PHBvbHlnb24gcG9pbnRzPSI0LjY1IDguMzYgNS4zNSA5LjA2IDcuNSA2LjkyIDcuNSAxMS4yMSA4IDExLjIxIDguNSAxMS4yMSA4LjUgNi45MiAxMC42NSA5LjA2IDExLjM1IDguMzYgOCA1IDQuNjUgOC4zNiIvPjwvc3ZnPg==";
@@ -35,7 +35,7 @@ export const styles = css`
35
35
  }
36
36
 
37
37
  .option--single-select {
38
- padding: 9px 12px;
38
+ padding: 8px 12px;
39
39
  }
40
40
 
41
41
  .option--hover:not(.option--current):not(.option--disabled) {
@@ -12,7 +12,7 @@ import { classMap } from 'lit/directives/class-map.js';
12
12
  import { customElement, property, query, state } from 'lit/decorators.js';
13
13
  import { html } from 'lit';
14
14
  import { watch } from '../internal/watch';
15
- import type { CSSResultGroup, PropertyValues } from 'lit';
15
+ import type { CSSResultGroup } from 'lit';
16
16
  import NileElement from '../internal/nile-element';
17
17
  import '../nile-checkbox';
18
18
 
@@ -49,7 +49,6 @@ export class NileOption extends NileElement {
49
49
  @query('.option__label') defaultSlot: HTMLSlotElement;
50
50
 
51
51
  @state() current = false; // the user has keyed into the option, but hasn't selected it yet (shows a highlight)
52
- @state() selected = false; // the option is selected and has aria-selected="true"
53
52
  @state() hasHover = false; // we need this because Safari doesn't honor :hover styles while dragging
54
53
  @state() hidden = false; // the option is hidden
55
54
  @state() isMultipleSelect = false;
@@ -61,18 +60,22 @@ export class NileOption extends NileElement {
61
60
  */
62
61
  @property({ reflect: true }) value = '';
63
62
 
64
- @property({ type: Boolean }) showCheckbox: boolean = false;
65
-
66
63
  /** Draws the option in a disabled state, preventing selection. */
67
64
  @property({ type: Boolean, reflect: true }) disabled = false;
68
65
 
66
+ /** Forces the option to display in multiple select mode with checkboxes. */
67
+ @property({ type: Boolean, reflect: true }) multiple = false;
68
+
69
+ /** Indicates whether the option is selected. */
70
+ @property({ type: Boolean, reflect: true }) selected = false;
71
+
69
72
  connectedCallback() {
70
73
  super.connectedCallback();
71
74
  this.setAttribute('role', 'option');
72
75
  this.setAttribute('aria-selected', 'false');
73
76
 
74
- // Find the closest parent 'nile-select' element
75
- const parentSelect = this.closest('nile-select');
77
+ // Find the closest parent 'nile-select' or 'nile-virtual-select' element
78
+ const parentSelect = this.closest('nile-select') || this.closest('nile-virtual-select');
76
79
 
77
80
  // Check if the parent has the 'multiple' attribute
78
81
  if (parentSelect && parentSelect.hasAttribute('multiple')) {
@@ -84,11 +87,9 @@ export class NileOption extends NileElement {
84
87
  this.isMultipleSelect = Boolean(multipleValue);
85
88
  }
86
89
  }
87
- }
88
90
 
89
- protected updated(_changedProperties: PropertyValues): void {
90
- if(_changedProperties.has('showCheckbox')) {
91
- this.isMultipleSelect = this.showCheckbox;
91
+ if (this.multiple) {
92
+ this.isMultipleSelect = true;
92
93
  }
93
94
  }
94
95
 
@@ -126,6 +127,11 @@ export class NileOption extends NileElement {
126
127
  this.setAttribute('aria-selected', this.selected ? 'true' : 'false');
127
128
  }
128
129
 
130
+ @watch('multiple')
131
+ handleMultipleChange() {
132
+ this.isMultipleSelect = this.multiple;
133
+ }
134
+
129
135
  @watch('value')
130
136
  handleValueChange() {
131
137
  // Ensure the value is a string. This ensures the next line doesn't error and allows framework users to pass numbers
@@ -29,12 +29,14 @@ import { scrollIntoView } from '../internal/scroll';
29
29
  import { waitForEvent } from '../internal/event';
30
30
  import { watch } from '../internal/watch';
31
31
  import NileElement from '../internal/nile-element';
32
- import type { CSSResultGroup, PropertyValues } from 'lit';
32
+ import type { CSSResultGroup } from 'lit';
33
33
  import type { NileFormControl } from '../internal/nile-element';
34
34
  import type NileOption from '../nile-option/nile-option';
35
35
  import type NilePopup from '../nile-popup/nile-popup';
36
36
  import { unsafeHTML } from 'lit/directives/unsafe-html.js';
37
37
  import { ifDefined } from 'lit/directives/if-defined.js';
38
+ import '../nile-virtual-select/nile-virtual-select';
39
+ import { VirtualScrollHelper } from './virtual-scroll-helper';
38
40
 
39
41
  type NileRemoveEvent = CustomEvent<Record<PropertyKey, never>>;
40
42
 
@@ -53,6 +55,7 @@ type NileRemoveEvent = CustomEvent<Record<PropertyKey, never>>;
53
55
  * @dependency nile-icon
54
56
  * @dependency nile-popup
55
57
  * @dependency nile-tag
58
+ * @dependency nile-virtual-select
56
59
  *
57
60
  * @slot - The listbox options. Must be `<nile-option>` elements. You can use `<nile-divider>` to group items visually.
58
61
  * @slot label - The input's label. Alternatively, you can use the `label` attribute.
@@ -91,14 +94,15 @@ type NileRemoveEvent = CustomEvent<Record<PropertyKey, never>>;
91
94
  */
92
95
 
93
96
  @customElement('nile-select')
94
- export class NileSelect extends NileElement implements NileFormControl {
97
+ export class NileSelect extends NileElement implements NileFormControl{
95
98
  static styles: CSSResultGroup = styles;
96
99
 
97
100
  // protected override BUBBLES=false;
98
101
 
99
- private readonly formControlController = new FormControlController(this, {
100
- assumeInteractionOn: ['nile-blur', 'nile-input'],
101
- });
102
+ private formControlController: FormControlController | null;
103
+ private virtualScrollHelper!: VirtualScrollHelper;
104
+
105
+
102
106
  private readonly hasSlotController = new HasSlotController(
103
107
  this,
104
108
  'help-text',
@@ -232,6 +236,12 @@ export class NileSelect extends NileElement implements NileFormControl {
232
236
 
233
237
  @property({ type: String }) noResultsMessage: string = 'No results found';
234
238
 
239
+ @property({ attribute: false }) renderItemFunction: (item: any) => string = (item: any) => item?.label || item?.name || item;
240
+
241
+ @property({ type: Array }) data: any = [];
242
+
243
+ @property({ type: Boolean }) enableVirtualScroll = false;
244
+
235
245
  /** Gets the validity state object */
236
246
  get validity() {
237
247
  return this.valueInput?.validity;
@@ -242,8 +252,18 @@ export class NileSelect extends NileElement implements NileFormControl {
242
252
  return this.valueInput?.validationMessage;
243
253
  }
244
254
 
255
+ constructor() {
256
+ super();
257
+ }
258
+
245
259
  connectedCallback() {
246
260
  super.connectedCallback();
261
+ if(!this.enableVirtualScroll) {
262
+ this.formControlController = new FormControlController(this, {
263
+ assumeInteractionOn: ['nile-blur', 'nile-input'],
264
+ });
265
+ }
266
+ this.virtualScrollHelper = new VirtualScrollHelper(this);
247
267
  this.handleDocumentFocusIn = this.handleDocumentFocusIn.bind(this);
248
268
  this.handleDocumentKeyDown = this.handleDocumentKeyDown.bind(this);
249
269
  this.handleDocumentMouseDown = this.handleDocumentMouseDown.bind(this);
@@ -258,19 +278,6 @@ export class NileSelect extends NileElement implements NileFormControl {
258
278
  this.emit('nile-destroy');
259
279
  }
260
280
 
261
- protected updated(_changedProperties: PropertyValues): void {
262
- if(_changedProperties.has('multiple')) {
263
- this.setCheckBoxInOption(this.multiple);
264
- }
265
- }
266
-
267
- setCheckBoxInOption(checked: boolean): void {
268
- const options = this.getAllOptions();
269
- options.forEach((option: NileOption) => {
270
- option.showCheckbox = checked;
271
- })
272
- }
273
-
274
281
  private addOpenListeners() {
275
282
  document.addEventListener('focusin', this.handleDocumentFocusIn);
276
283
  document.addEventListener('keydown', this.handleDocumentKeyDown);
@@ -747,7 +754,7 @@ export class NileSelect extends NileElement implements NileFormControl {
747
754
 
748
755
  // Update validity
749
756
  this.updateComplete.then(() => {
750
- this.formControlController.updateValidity();
757
+ this.formControlController?.updateValidity();
751
758
  });
752
759
 
753
760
  this.calculateTotalWidthOfTags();
@@ -798,8 +805,8 @@ export class NileSelect extends NileElement implements NileFormControl {
798
805
  }
799
806
 
800
807
  private handleInvalid(event: Event) {
801
- this.formControlController.setValidity(false);
802
- this.formControlController.emitInvalidEvent(event);
808
+ this.formControlController?.setValidity(false);
809
+ this.formControlController?.emitInvalidEvent(event);
803
810
  }
804
811
 
805
812
  @watch('disabled', { waitUntilFirstUpdate: true })
@@ -902,7 +909,7 @@ export class NileSelect extends NileElement implements NileFormControl {
902
909
 
903
910
  /** Gets the associated form, if one exists. */
904
911
  getForm(): HTMLFormElement | null {
905
- return this.formControlController.getForm();
912
+ return this.formControlController?.getForm() || null;
906
913
  }
907
914
 
908
915
  /** Checks for validity and shows the browser's validation message if the control is invalid. */
@@ -913,7 +920,7 @@ export class NileSelect extends NileElement implements NileFormControl {
913
920
  /** Sets a custom validation message. Pass an empty string to restore validity. */
914
921
  setCustomValidity(message: string) {
915
922
  this.valueInput.setCustomValidity(message);
916
- this.formControlController.updateValidity();
923
+ this.formControlController?.updateValidity();
917
924
  }
918
925
 
919
926
  /** Sets focus on the control. */
@@ -986,6 +993,10 @@ export class NileSelect extends NileElement implements NileFormControl {
986
993
  }
987
994
 
988
995
  render() {
996
+ if(this.enableVirtualScroll) {
997
+ return this.virtualScrollHelper.renderVirtualizedContent();
998
+ }
999
+
989
1000
  const hasLabelSlot = this.hasSlotController.test('label');
990
1001
  const hasHelpTextSlot = this.hasSlotController.test('help-text');
991
1002
  const hasLabelSuffixSlot = this.hasSlotController.test('label-suffix');
@@ -0,0 +1,56 @@
1
+ import { html } from 'lit';
2
+ import type NileElement from '../internal/nile-element';
3
+
4
+ /**
5
+ * Helper class to manage virtual scroll functionality for nile-select component
6
+ */
7
+ export class VirtualScrollHelper {
8
+ private component: NileElement;
9
+
10
+ constructor(component: NileElement) {
11
+ this.component = component;
12
+ }
13
+
14
+ renderVirtualizedContent(): any {
15
+ const component = this.component as any;
16
+
17
+ return html`
18
+ <div class="virtual-select">
19
+ <nile-virtual-select
20
+ .name=${component.name}
21
+ .value=${component.value}
22
+ .placeholder=${component.placeholder}
23
+ .size=${component.size}
24
+ .searchEnabled=${component.searchEnabled}
25
+ .internalSearchPlaceHolder=${component.internalSearchPlaceHolder}
26
+ .disableLocalSearch=${component.disableLocalSearch}
27
+ .optionsLoading=${component.optionsLoading}
28
+ .multiple=${component.multiple}
29
+ .helpText=${component.helpText}
30
+ .errorMessage=${component.errorMessage}
31
+ .warning=${component.warning}
32
+ .error=${component.error}
33
+ .success=${component.success}
34
+ .disabled=${component.disabled}
35
+ .clearable=${component.clearable}
36
+ .hoist=${component.hoist}
37
+ .filled=${component.filled}
38
+ .pill=${component.pill}
39
+ .label=${component.label}
40
+ .placement=${component.placement}
41
+ .form=${component.form}
42
+ .required=${component.required}
43
+ .showNoResults=${component.showNoResults}
44
+ .noResultsMessage=${component.noResultsMessage}
45
+ .renderItemFunction=${component.renderItemFunction}
46
+ .blockValueChange=${component.blockValueChange}
47
+ .noWidthSync=${component.noWidthSync}
48
+ .maxOptionsVisible=${component.maxOptionsVisible}
49
+ .data=${component.data}
50
+ >
51
+ <slot name="prefix" slot="prefix"></slot>
52
+ </nile-virtual-select>
53
+ </div>
54
+ `;
55
+ }
56
+ }
@@ -0,0 +1 @@
1
+ export { NileVirtualSelect } from './nile-virtual-select';