@aquera/nile-elements 1.0.4-beta-1.2 → 1.0.4-beta-1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (595) hide show
  1. package/README.md +6 -0
  2. package/demo/variables.css +1 -0
  3. package/dist/css-tag-bb10c0fa.cjs.js +6 -0
  4. package/dist/css-tag-bb10c0fa.cjs.js.map +1 -0
  5. package/dist/css-tag-dc564feb.esm.js +6 -0
  6. package/dist/{fixture-8edec91c.esm.js → fixture-985bba12.esm.js} +1 -1
  7. package/dist/{fixture-3bfb4490.cjs.js → fixture-d1470b58.cjs.js} +2 -2
  8. package/dist/{fixture-3bfb4490.cjs.js.map → fixture-d1470b58.cjs.js.map} +1 -1
  9. package/dist/index.cjs.js +1 -1
  10. package/dist/index.esm.js +1 -1
  11. package/dist/index.js +797 -316
  12. package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
  13. package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
  14. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
  15. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js.map +1 -1
  16. package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
  17. package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
  18. package/dist/nile-avatar/nile-avatar.test.cjs.js.map +1 -1
  19. package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
  20. package/dist/nile-badge/index.cjs.js +1 -1
  21. package/dist/nile-badge/index.esm.js +1 -1
  22. package/dist/nile-badge/nile-badge.cjs.js +1 -1
  23. package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
  24. package/dist/nile-badge/nile-badge.esm.js +1 -1
  25. package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
  26. package/dist/nile-badge/nile-badge.test.cjs.js.map +1 -1
  27. package/dist/nile-badge/nile-badge.test.esm.js +1 -1
  28. package/dist/nile-button/index.cjs.js +1 -1
  29. package/dist/nile-button/index.esm.js +1 -1
  30. package/dist/nile-button/nile-button.cjs.js +1 -1
  31. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  32. package/dist/nile-button/nile-button.esm.js +2 -2
  33. package/dist/nile-button/nile-button.test.cjs.js +1 -1
  34. package/dist/nile-button/nile-button.test.cjs.js.map +1 -1
  35. package/dist/nile-button/nile-button.test.esm.js +1 -1
  36. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
  37. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
  38. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  39. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
  40. package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
  41. package/dist/nile-card/nile-card.test.cjs.js +1 -1
  42. package/dist/nile-card/nile-card.test.esm.js +1 -1
  43. package/dist/nile-checkbox/nile-checkbox.css.cjs.js +1 -1
  44. package/dist/nile-checkbox/nile-checkbox.css.cjs.js.map +1 -1
  45. package/dist/nile-checkbox/nile-checkbox.css.esm.js +1 -1
  46. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
  47. package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
  48. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  49. package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
  50. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  51. package/dist/nile-dialog/index.cjs.js +1 -1
  52. package/dist/nile-dialog/index.esm.js +1 -1
  53. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  54. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  55. package/dist/nile-dialog/nile-dialog.esm.js +6 -6
  56. package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
  57. package/dist/nile-dialog/nile-dialog.test.cjs.js.map +1 -1
  58. package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
  59. package/dist/nile-drawer/index.cjs.js +1 -1
  60. package/dist/nile-drawer/index.esm.js +1 -1
  61. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  62. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  63. package/dist/nile-drawer/nile-drawer.esm.js +1 -1
  64. package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
  65. package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -1
  66. package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
  67. package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
  68. package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
  69. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
  70. package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
  71. package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
  72. package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
  73. package/dist/nile-file-preview/nile-file-preview.test.cjs.js +1 -1
  74. package/dist/nile-file-preview/nile-file-preview.test.esm.js +1 -1
  75. package/dist/nile-file-upload/index.cjs.js +1 -1
  76. package/dist/nile-file-upload/nile-file-upload.cjs.js +1 -1
  77. package/dist/nile-file-upload/nile-file-upload.template.cjs.js +1 -1
  78. package/dist/nile-file-upload/nile-file-upload.test.cjs.js +1 -1
  79. package/dist/nile-file-upload/nile-file-upload.test.esm.js +1 -1
  80. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +1 -1
  81. package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +1 -1
  82. package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
  83. package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
  84. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
  85. package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
  86. package/dist/nile-grid/index.cjs.js +2 -0
  87. package/dist/nile-grid/index.cjs.js.map +1 -0
  88. package/dist/nile-grid/index.esm.js +1 -0
  89. package/dist/nile-grid/nile-grid.cjs.js +2 -0
  90. package/dist/nile-grid/nile-grid.cjs.js.map +1 -0
  91. package/dist/nile-grid/nile-grid.css.cjs.js +2 -0
  92. package/dist/nile-grid/nile-grid.css.cjs.js.map +1 -0
  93. package/dist/nile-grid/nile-grid.css.esm.js +32 -0
  94. package/dist/nile-grid/nile-grid.esm.js +7 -0
  95. package/dist/nile-grid/nile-grid.utils.cjs.js +2 -0
  96. package/dist/nile-grid/nile-grid.utils.cjs.js.map +1 -0
  97. package/dist/nile-grid/nile-grid.utils.esm.js +1 -0
  98. package/dist/nile-grid-body/index.cjs.js +2 -0
  99. package/dist/nile-grid-body/index.cjs.js.map +1 -0
  100. package/dist/nile-grid-body/index.esm.js +1 -0
  101. package/dist/nile-grid-body/nile-grid-body.cjs.js +2 -0
  102. package/dist/nile-grid-body/nile-grid-body.cjs.js.map +1 -0
  103. package/dist/nile-grid-body/nile-grid-body.css.cjs.js +2 -0
  104. package/dist/nile-grid-body/nile-grid-body.css.cjs.js.map +1 -0
  105. package/dist/nile-grid-body/nile-grid-body.css.esm.js +10 -0
  106. package/dist/nile-grid-body/nile-grid-body.esm.js +5 -0
  107. package/dist/nile-grid-cell-item/index.cjs.js +2 -0
  108. package/dist/nile-grid-cell-item/index.cjs.js.map +1 -0
  109. package/dist/nile-grid-cell-item/index.esm.js +1 -0
  110. package/dist/nile-grid-cell-item/nile-grid-cell-item.cjs.js +2 -0
  111. package/dist/nile-grid-cell-item/nile-grid-cell-item.cjs.js.map +1 -0
  112. package/dist/nile-grid-cell-item/nile-grid-cell-item.css.cjs.js +2 -0
  113. package/dist/nile-grid-cell-item/nile-grid-cell-item.css.cjs.js.map +1 -0
  114. package/dist/nile-grid-cell-item/nile-grid-cell-item.css.esm.js +35 -0
  115. package/dist/nile-grid-cell-item/nile-grid-cell-item.esm.js +12 -0
  116. package/dist/nile-grid-cell-item/nile-grid-cell-item.utils.cjs.js +2 -0
  117. package/dist/nile-grid-cell-item/nile-grid-cell-item.utils.cjs.js.map +1 -0
  118. package/dist/nile-grid-cell-item/nile-grid-cell-item.utils.esm.js +1 -0
  119. package/dist/nile-grid-head/index.cjs.js +2 -0
  120. package/dist/nile-grid-head/index.cjs.js.map +1 -0
  121. package/dist/nile-grid-head/index.esm.js +1 -0
  122. package/dist/nile-grid-head/nile-grid-head.cjs.js +2 -0
  123. package/dist/nile-grid-head/nile-grid-head.cjs.js.map +1 -0
  124. package/dist/nile-grid-head/nile-grid-head.css.cjs.js +2 -0
  125. package/dist/nile-grid-head/nile-grid-head.css.cjs.js.map +1 -0
  126. package/dist/nile-grid-head/nile-grid-head.css.esm.js +7 -0
  127. package/dist/nile-grid-head/nile-grid-head.esm.js +5 -0
  128. package/dist/nile-grid-head-item/index.cjs.js +2 -0
  129. package/dist/nile-grid-head-item/index.cjs.js.map +1 -0
  130. package/dist/nile-grid-head-item/index.esm.js +1 -0
  131. package/dist/nile-grid-head-item/nile-grid-head-item.cjs.js +2 -0
  132. package/dist/nile-grid-head-item/nile-grid-head-item.cjs.js.map +1 -0
  133. package/dist/nile-grid-head-item/nile-grid-head-item.css.cjs.js +2 -0
  134. package/dist/nile-grid-head-item/nile-grid-head-item.css.cjs.js.map +1 -0
  135. package/dist/nile-grid-head-item/nile-grid-head-item.css.esm.js +34 -0
  136. package/dist/nile-grid-head-item/nile-grid-head-item.esm.js +12 -0
  137. package/dist/nile-grid-head-item/nile-grid-head-item.utils.cjs.js +2 -0
  138. package/dist/nile-grid-head-item/nile-grid-head-item.utils.cjs.js.map +1 -0
  139. package/dist/nile-grid-head-item/nile-grid-head-item.utils.esm.js +1 -0
  140. package/dist/nile-grid-row/index.cjs.js +2 -0
  141. package/dist/nile-grid-row/index.cjs.js.map +1 -0
  142. package/dist/nile-grid-row/index.esm.js +1 -0
  143. package/dist/nile-grid-row/nile-grid-row.cjs.js +2 -0
  144. package/dist/nile-grid-row/nile-grid-row.cjs.js.map +1 -0
  145. package/dist/nile-grid-row/nile-grid-row.css.cjs.js +2 -0
  146. package/dist/nile-grid-row/nile-grid-row.css.cjs.js.map +1 -0
  147. package/dist/nile-grid-row/nile-grid-row.css.esm.js +15 -0
  148. package/dist/nile-grid-row/nile-grid-row.esm.js +7 -0
  149. package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
  150. package/dist/nile-hero/nile-hero.test.esm.js +1 -1
  151. package/dist/nile-icon/icons/svg/format_align_justify.cjs.js +2 -0
  152. package/dist/nile-icon/icons/svg/format_align_justify.cjs.js.map +1 -0
  153. package/dist/nile-icon/icons/svg/format_align_justify.esm.js +1 -0
  154. package/dist/nile-icon/icons/svg/format_align_left.cjs.js +2 -0
  155. package/dist/nile-icon/icons/svg/format_align_left.cjs.js.map +1 -0
  156. package/dist/nile-icon/icons/svg/format_align_left.esm.js +1 -0
  157. package/dist/nile-icon/icons/svg/format_align_middle.cjs.js +2 -0
  158. package/dist/nile-icon/icons/svg/format_align_middle.cjs.js.map +1 -0
  159. package/dist/nile-icon/icons/svg/format_align_middle.esm.js +1 -0
  160. package/dist/nile-icon/icons/svg/format_align_right.cjs.js +2 -0
  161. package/dist/nile-icon/icons/svg/format_align_right.cjs.js.map +1 -0
  162. package/dist/nile-icon/icons/svg/format_align_right.esm.js +1 -0
  163. package/dist/nile-icon/icons/svg/format_bold.cjs.js +2 -0
  164. package/dist/nile-icon/icons/svg/format_bold.cjs.js.map +1 -0
  165. package/dist/nile-icon/icons/svg/format_bold.esm.js +1 -0
  166. package/dist/nile-icon/icons/svg/format_clear.cjs.js +2 -0
  167. package/dist/nile-icon/icons/svg/format_clear.cjs.js.map +1 -0
  168. package/dist/nile-icon/icons/svg/format_clear.esm.js +1 -0
  169. package/dist/nile-icon/icons/svg/format_italic.cjs.js +2 -0
  170. package/dist/nile-icon/icons/svg/format_italic.cjs.js.map +1 -0
  171. package/dist/nile-icon/icons/svg/format_italic.esm.js +1 -0
  172. package/dist/nile-icon/icons/svg/format_list_bulleted.cjs.js +2 -0
  173. package/dist/nile-icon/icons/svg/format_list_bulleted.cjs.js.map +1 -0
  174. package/dist/nile-icon/icons/svg/format_list_bulleted.esm.js +1 -0
  175. package/dist/nile-icon/icons/svg/format_list_numbered.cjs.js +2 -0
  176. package/dist/nile-icon/icons/svg/format_list_numbered.cjs.js.map +1 -0
  177. package/dist/nile-icon/icons/svg/format_list_numbered.esm.js +1 -0
  178. package/dist/nile-icon/icons/svg/format_underline.cjs.js +2 -0
  179. package/dist/nile-icon/icons/svg/format_underline.cjs.js.map +1 -0
  180. package/dist/nile-icon/icons/svg/format_underline.esm.js +1 -0
  181. package/dist/nile-icon/icons/svg/image_2.cjs.js +2 -0
  182. package/dist/nile-icon/icons/svg/image_2.cjs.js.map +1 -0
  183. package/dist/nile-icon/icons/svg/image_2.esm.js +1 -0
  184. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  185. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  186. package/dist/nile-icon/icons/svg/link_2.cjs.js +2 -0
  187. package/dist/nile-icon/icons/svg/link_2.cjs.js.map +1 -0
  188. package/dist/nile-icon/icons/svg/link_2.esm.js +1 -0
  189. package/dist/nile-icon/index.cjs.js +1 -1
  190. package/dist/nile-icon/index.cjs.js.map +1 -1
  191. package/dist/nile-icon/index.esm.js +1 -1
  192. package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
  193. package/dist/nile-icon/nile-icon.test.cjs.js.map +1 -1
  194. package/dist/nile-icon/nile-icon.test.esm.js +1 -1
  195. package/dist/nile-icon-button/index.cjs.js +1 -1
  196. package/dist/nile-icon-button/index.esm.js +1 -1
  197. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  198. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  199. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  200. package/dist/nile-input/index.cjs.js +1 -1
  201. package/dist/nile-input/index.esm.js +1 -1
  202. package/dist/nile-input/nile-input.cjs.js +1 -1
  203. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  204. package/dist/nile-input/nile-input.esm.js +5 -5
  205. package/dist/nile-input/nile-input.test.cjs.js +1 -1
  206. package/dist/nile-input/nile-input.test.cjs.js.map +1 -1
  207. package/dist/nile-input/nile-input.test.esm.js +1 -1
  208. package/dist/nile-link/nile-link.css.cjs.js +1 -1
  209. package/dist/nile-link/nile-link.css.cjs.js.map +1 -1
  210. package/dist/nile-link/nile-link.css.esm.js +3 -2
  211. package/dist/nile-link/nile-link.test.cjs.js +1 -1
  212. package/dist/nile-link/nile-link.test.esm.js +1 -1
  213. package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
  214. package/dist/nile-loader/nile-loader.test.esm.js +1 -1
  215. package/dist/nile-menu-item/index.cjs.js +1 -1
  216. package/dist/nile-menu-item/index.esm.js +1 -1
  217. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  218. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  219. package/dist/nile-menu-item/nile-menu-item.esm.js +2 -2
  220. package/dist/nile-option/index.cjs.js +1 -1
  221. package/dist/nile-option/index.esm.js +1 -1
  222. package/dist/nile-option/nile-option.cjs.js +1 -1
  223. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  224. package/dist/nile-option/nile-option.esm.js +1 -1
  225. package/dist/nile-popover/index.cjs.js +1 -1
  226. package/dist/nile-popover/index.esm.js +1 -1
  227. package/dist/nile-popover/nile-popover.cjs.js +4 -4
  228. package/dist/nile-popover/nile-popover.cjs.js.map +1 -1
  229. package/dist/nile-popover/nile-popover.esm.js +6 -11
  230. package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
  231. package/dist/nile-popover/nile-popover.test.cjs.js.map +1 -1
  232. package/dist/nile-popover/nile-popover.test.esm.js +5 -5
  233. package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
  234. package/dist/nile-popup/nile-popup.test.esm.js +1 -1
  235. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
  236. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
  237. package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
  238. package/dist/nile-radio/nile-radio.test.esm.js +1 -1
  239. package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
  240. package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
  241. package/dist/nile-rich-text-editor/index.cjs.js +2 -0
  242. package/dist/nile-rich-text-editor/index.cjs.js.map +1 -0
  243. package/dist/nile-rich-text-editor/index.esm.js +1 -0
  244. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js +2 -0
  245. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js.map +1 -0
  246. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js +2 -0
  247. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js.map +1 -0
  248. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.esm.js +149 -0
  249. package/dist/nile-rich-text-editor/nile-rich-text-editor.esm.js +1 -0
  250. package/dist/nile-rich-text-editor/nile-rte-color.cjs.js +2 -0
  251. package/dist/nile-rich-text-editor/nile-rte-color.cjs.js.map +1 -0
  252. package/dist/nile-rich-text-editor/nile-rte-color.esm.js +53 -0
  253. package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js +2 -0
  254. package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js.map +1 -0
  255. package/dist/nile-rich-text-editor/nile-rte-divider.esm.js +1 -0
  256. package/dist/nile-rich-text-editor/nile-rte-link.cjs.js +2 -0
  257. package/dist/nile-rich-text-editor/nile-rte-link.cjs.js.map +1 -0
  258. package/dist/nile-rich-text-editor/nile-rte-link.esm.js +19 -0
  259. package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js +2 -0
  260. package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js.map +1 -0
  261. package/dist/nile-rich-text-editor/nile-rte-mentions-item.esm.js +1 -0
  262. package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js +3 -0
  263. package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js.map +1 -0
  264. package/dist/nile-rich-text-editor/nile-rte-mentions.esm.js +1 -0
  265. package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js +2 -0
  266. package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js.map +1 -0
  267. package/dist/nile-rich-text-editor/nile-rte-preview.esm.js +1 -0
  268. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js +2 -0
  269. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js.map +1 -0
  270. package/dist/nile-rich-text-editor/nile-rte-select.esm.js +66 -0
  271. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js +2 -0
  272. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js.map +1 -0
  273. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.esm.js +1 -0
  274. package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js +2 -0
  275. package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js.map +1 -0
  276. package/dist/nile-rich-text-editor/nile-rte-toolbar.esm.js +1 -0
  277. package/dist/nile-rich-text-editor/utils.cjs.js +2 -0
  278. package/dist/nile-rich-text-editor/utils.cjs.js.map +1 -0
  279. package/dist/nile-rich-text-editor/utils.esm.js +1 -0
  280. package/dist/nile-select/index.cjs.js +1 -1
  281. package/dist/nile-select/index.esm.js +1 -1
  282. package/dist/nile-select/nile-select.cjs.js +1 -1
  283. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  284. package/dist/nile-select/nile-select.css.cjs.js +1 -1
  285. package/dist/nile-select/nile-select.css.cjs.js.map +1 -1
  286. package/dist/nile-select/nile-select.css.esm.js +1 -1
  287. package/dist/nile-select/nile-select.esm.js +2 -2
  288. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  289. package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
  290. package/dist/nile-select/nile-select.test.esm.js +12 -12
  291. package/dist/nile-select/virtual-scroll-helper.cjs.js +1 -1
  292. package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -1
  293. package/dist/nile-select/virtual-scroll-helper.esm.js +2 -0
  294. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
  295. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
  296. package/dist/nile-stepper-item/nile-stepper-item.cjs.js +1 -1
  297. package/dist/nile-stepper-item/nile-stepper-item.cjs.js.map +1 -1
  298. package/dist/nile-stepper-item/nile-stepper-item.esm.js +6 -6
  299. package/dist/nile-tab/index.cjs.js +1 -1
  300. package/dist/nile-tab/index.esm.js +1 -1
  301. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  302. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  303. package/dist/nile-tab/nile-tab.esm.js +2 -2
  304. package/dist/nile-tab-group/index.cjs.js +1 -1
  305. package/dist/nile-tab-group/index.esm.js +1 -1
  306. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  307. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  308. package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
  309. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
  310. package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +1 -1
  311. package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
  312. package/dist/nile-tag/index.cjs.js +1 -1
  313. package/dist/nile-tag/index.esm.js +1 -1
  314. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  315. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  316. package/dist/nile-tag/nile-tag.esm.js +1 -1
  317. package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
  318. package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
  319. package/dist/nile-toast/index.cjs.js +1 -1
  320. package/dist/nile-toast/index.esm.js +1 -1
  321. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  322. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  323. package/dist/nile-toast/nile-toast.esm.js +2 -2
  324. package/dist/nile-tree/index.cjs.js +1 -1
  325. package/dist/nile-tree/index.esm.js +1 -1
  326. package/dist/nile-tree/nile-tree.cjs.js +1 -1
  327. package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
  328. package/dist/nile-tree/nile-tree.esm.js +1 -1
  329. package/dist/nile-tree-item/index.cjs.js +1 -1
  330. package/dist/nile-tree-item/index.esm.js +1 -1
  331. package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
  332. package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
  333. package/dist/nile-tree-item/nile-tree-item.esm.js +3 -3
  334. package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.cjs.js +1 -1
  335. package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.cjs.js.map +1 -1
  336. package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.esm.js +8 -8
  337. package/dist/nile-virtual-select/index.cjs.js +1 -1
  338. package/dist/nile-virtual-select/index.esm.js +1 -1
  339. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +5 -1
  340. package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -1
  341. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +1 -1
  342. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -1
  343. package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +29 -1
  344. package/dist/nile-virtual-select/nile-virtual-select.esm.js +21 -13
  345. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +1 -1
  346. package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +1 -1
  347. package/dist/nile-virtual-select/renderer.cjs.js +1 -1
  348. package/dist/nile-virtual-select/renderer.cjs.js.map +1 -1
  349. package/dist/nile-virtual-select/renderer.esm.js +11 -10
  350. package/dist/nile-virtual-select/selection-manager.cjs.js +1 -1
  351. package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -1
  352. package/dist/nile-virtual-select/selection-manager.esm.js +1 -1
  353. package/dist/scopedElementsWrapper-31107e48.esm.js +1 -0
  354. package/dist/scopedElementsWrapper-c815042c.cjs.js +2 -0
  355. package/dist/scopedElementsWrapper-c815042c.cjs.js.map +1 -0
  356. package/dist/src/index.d.ts +7 -0
  357. package/dist/src/index.js +7 -0
  358. package/dist/src/index.js.map +1 -1
  359. package/dist/src/nile-button/nile-button.d.ts +1 -1
  360. package/dist/src/nile-button/nile-button.js +1 -1
  361. package/dist/src/nile-button/nile-button.js.map +1 -1
  362. package/dist/src/nile-checkbox/nile-checkbox.css.js +1 -1
  363. package/dist/src/nile-checkbox/nile-checkbox.css.js.map +1 -1
  364. package/dist/src/nile-grid/index.d.ts +1 -0
  365. package/dist/src/nile-grid/index.js +2 -0
  366. package/dist/src/nile-grid/index.js.map +1 -0
  367. package/dist/src/nile-grid/nile-grid.css.d.ts +9 -0
  368. package/dist/src/nile-grid/nile-grid.css.js +41 -0
  369. package/dist/src/nile-grid/nile-grid.css.js.map +1 -0
  370. package/dist/src/nile-grid/nile-grid.d.ts +50 -0
  371. package/dist/src/nile-grid/nile-grid.js +130 -0
  372. package/dist/src/nile-grid/nile-grid.js.map +1 -0
  373. package/dist/src/nile-grid/nile-grid.utils.d.ts +9 -0
  374. package/dist/src/nile-grid/nile-grid.utils.js +170 -0
  375. package/dist/src/nile-grid/nile-grid.utils.js.map +1 -0
  376. package/dist/src/nile-grid-body/index.d.ts +1 -0
  377. package/dist/src/nile-grid-body/index.js +2 -0
  378. package/dist/src/nile-grid-body/index.js.map +1 -0
  379. package/dist/src/nile-grid-body/nile-grid-body.css.d.ts +12 -0
  380. package/dist/src/nile-grid-body/nile-grid-body.css.js +22 -0
  381. package/dist/src/nile-grid-body/nile-grid-body.css.js.map +1 -0
  382. package/dist/src/nile-grid-body/nile-grid-body.d.ts +29 -0
  383. package/dist/src/nile-grid-body/nile-grid-body.js +43 -0
  384. package/dist/src/nile-grid-body/nile-grid-body.js.map +1 -0
  385. package/dist/src/nile-grid-cell-item/index.d.ts +1 -0
  386. package/dist/src/nile-grid-cell-item/index.js +2 -0
  387. package/dist/src/nile-grid-cell-item/index.js.map +1 -0
  388. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.css.d.ts +12 -0
  389. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.css.js +47 -0
  390. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.css.js.map +1 -0
  391. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.d.ts +36 -0
  392. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.js +93 -0
  393. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.js.map +1 -0
  394. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.utils.d.ts +10 -0
  395. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.utils.js +34 -0
  396. package/dist/src/nile-grid-cell-item/nile-grid-cell-item.utils.js.map +1 -0
  397. package/dist/src/nile-grid-head/index.d.ts +1 -0
  398. package/dist/src/nile-grid-head/index.js +2 -0
  399. package/dist/src/nile-grid-head/index.js.map +1 -0
  400. package/dist/src/nile-grid-head/nile-grid-head.css.d.ts +12 -0
  401. package/dist/src/nile-grid-head/nile-grid-head.css.js +19 -0
  402. package/dist/src/nile-grid-head/nile-grid-head.css.js.map +1 -0
  403. package/dist/src/nile-grid-head/nile-grid-head.d.ts +28 -0
  404. package/dist/src/nile-grid-head/nile-grid-head.js +41 -0
  405. package/dist/src/nile-grid-head/nile-grid-head.js.map +1 -0
  406. package/dist/src/nile-grid-head-item/index.d.ts +1 -0
  407. package/dist/src/nile-grid-head-item/index.js +2 -0
  408. package/dist/src/nile-grid-head-item/index.js.map +1 -0
  409. package/dist/src/nile-grid-head-item/nile-grid-head-item.css.d.ts +12 -0
  410. package/dist/src/nile-grid-head-item/nile-grid-head-item.css.js +46 -0
  411. package/dist/src/nile-grid-head-item/nile-grid-head-item.css.js.map +1 -0
  412. package/dist/src/nile-grid-head-item/nile-grid-head-item.d.ts +37 -0
  413. package/dist/src/nile-grid-head-item/nile-grid-head-item.js +100 -0
  414. package/dist/src/nile-grid-head-item/nile-grid-head-item.js.map +1 -0
  415. package/dist/src/nile-grid-head-item/nile-grid-head-item.utils.d.ts +10 -0
  416. package/dist/src/nile-grid-head-item/nile-grid-head-item.utils.js +34 -0
  417. package/dist/src/nile-grid-head-item/nile-grid-head-item.utils.js.map +1 -0
  418. package/dist/src/nile-grid-row/index.d.ts +1 -0
  419. package/dist/src/nile-grid-row/index.js +2 -0
  420. package/dist/src/nile-grid-row/index.js.map +1 -0
  421. package/dist/src/nile-grid-row/nile-grid-row.css.d.ts +12 -0
  422. package/dist/src/nile-grid-row/nile-grid-row.css.js +27 -0
  423. package/dist/src/nile-grid-row/nile-grid-row.css.js.map +1 -0
  424. package/dist/src/nile-grid-row/nile-grid-row.d.ts +29 -0
  425. package/dist/src/nile-grid-row/nile-grid-row.js +45 -0
  426. package/dist/src/nile-grid-row/nile-grid-row.js.map +1 -0
  427. package/dist/src/nile-icon/icons/svg/format_align_justify.d.ts +5 -0
  428. package/dist/src/nile-icon/icons/svg/format_align_justify.js +5 -0
  429. package/dist/src/nile-icon/icons/svg/format_align_justify.js.map +1 -0
  430. package/dist/src/nile-icon/icons/svg/format_align_left.d.ts +5 -0
  431. package/dist/src/nile-icon/icons/svg/format_align_left.js +5 -0
  432. package/dist/src/nile-icon/icons/svg/format_align_left.js.map +1 -0
  433. package/dist/src/nile-icon/icons/svg/format_align_middle.d.ts +5 -0
  434. package/dist/src/nile-icon/icons/svg/format_align_middle.js +5 -0
  435. package/dist/src/nile-icon/icons/svg/format_align_middle.js.map +1 -0
  436. package/dist/src/nile-icon/icons/svg/format_align_right.d.ts +5 -0
  437. package/dist/src/nile-icon/icons/svg/format_align_right.js +5 -0
  438. package/dist/src/nile-icon/icons/svg/format_align_right.js.map +1 -0
  439. package/dist/src/nile-icon/icons/svg/format_bold.d.ts +5 -0
  440. package/dist/src/nile-icon/icons/svg/format_bold.js +5 -0
  441. package/dist/src/nile-icon/icons/svg/format_bold.js.map +1 -0
  442. package/dist/src/nile-icon/icons/svg/format_clear.d.ts +5 -0
  443. package/dist/src/nile-icon/icons/svg/format_clear.js +5 -0
  444. package/dist/src/nile-icon/icons/svg/format_clear.js.map +1 -0
  445. package/dist/src/nile-icon/icons/svg/format_italic.d.ts +5 -0
  446. package/dist/src/nile-icon/icons/svg/format_italic.js +5 -0
  447. package/dist/src/nile-icon/icons/svg/format_italic.js.map +1 -0
  448. package/dist/src/nile-icon/icons/svg/format_list_bulleted.d.ts +5 -0
  449. package/dist/src/nile-icon/icons/svg/format_list_bulleted.js +5 -0
  450. package/dist/src/nile-icon/icons/svg/format_list_bulleted.js.map +1 -0
  451. package/dist/src/nile-icon/icons/svg/format_list_numbered.d.ts +5 -0
  452. package/dist/src/nile-icon/icons/svg/format_list_numbered.js +5 -0
  453. package/dist/src/nile-icon/icons/svg/format_list_numbered.js.map +1 -0
  454. package/dist/src/nile-icon/icons/svg/format_underline.d.ts +5 -0
  455. package/dist/src/nile-icon/icons/svg/format_underline.js +5 -0
  456. package/dist/src/nile-icon/icons/svg/format_underline.js.map +1 -0
  457. package/dist/src/nile-icon/icons/svg/image_2.d.ts +5 -0
  458. package/dist/src/nile-icon/icons/svg/image_2.js +5 -0
  459. package/dist/src/nile-icon/icons/svg/image_2.js.map +1 -0
  460. package/dist/src/nile-icon/icons/svg/index.d.ts +12 -0
  461. package/dist/src/nile-icon/icons/svg/index.js +12 -0
  462. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  463. package/dist/src/nile-icon/icons/svg/link_2.d.ts +5 -0
  464. package/dist/src/nile-icon/icons/svg/link_2.js +5 -0
  465. package/dist/src/nile-icon/icons/svg/link_2.js.map +1 -0
  466. package/dist/src/nile-link/nile-link.css.js +1 -0
  467. package/dist/src/nile-link/nile-link.css.js.map +1 -1
  468. package/dist/src/nile-popover/nile-popover.js.map +1 -1
  469. package/dist/src/nile-rich-text-editor/index.d.ts +1 -0
  470. package/dist/src/nile-rich-text-editor/index.js +2 -0
  471. package/dist/src/nile-rich-text-editor/index.js.map +1 -0
  472. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.d.ts +3 -0
  473. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js +152 -0
  474. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js.map +1 -0
  475. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.d.ts +63 -0
  476. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js +734 -0
  477. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js.map +1 -0
  478. package/dist/src/nile-rich-text-editor/nile-rte-color.d.ts +20 -0
  479. package/dist/src/nile-rich-text-editor/nile-rte-color.js +188 -0
  480. package/dist/src/nile-rich-text-editor/nile-rte-color.js.map +1 -0
  481. package/dist/src/nile-rich-text-editor/nile-rte-divider.d.ts +10 -0
  482. package/dist/src/nile-rich-text-editor/nile-rte-divider.js +12 -0
  483. package/dist/src/nile-rich-text-editor/nile-rte-divider.js.map +1 -0
  484. package/dist/src/nile-rich-text-editor/nile-rte-link.d.ts +19 -0
  485. package/dist/src/nile-rich-text-editor/nile-rte-link.js +169 -0
  486. package/dist/src/nile-rich-text-editor/nile-rte-link.js.map +1 -0
  487. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.d.ts +18 -0
  488. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js +52 -0
  489. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js.map +1 -0
  490. package/dist/src/nile-rich-text-editor/nile-rte-mentions.d.ts +64 -0
  491. package/dist/src/nile-rich-text-editor/nile-rte-mentions.js +544 -0
  492. package/dist/src/nile-rich-text-editor/nile-rte-mentions.js.map +1 -0
  493. package/dist/src/nile-rich-text-editor/nile-rte-preview.d.ts +10 -0
  494. package/dist/src/nile-rich-text-editor/nile-rte-preview.js +12 -0
  495. package/dist/src/nile-rich-text-editor/nile-rte-preview.js.map +1 -0
  496. package/dist/src/nile-rich-text-editor/nile-rte-select.d.ts +33 -0
  497. package/dist/src/nile-rich-text-editor/nile-rte-select.js +228 -0
  498. package/dist/src/nile-rich-text-editor/nile-rte-select.js.map +1 -0
  499. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.d.ts +12 -0
  500. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js +23 -0
  501. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js.map +1 -0
  502. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.d.ts +10 -0
  503. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js +12 -0
  504. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js.map +1 -0
  505. package/dist/src/nile-rich-text-editor/utils.d.ts +13 -0
  506. package/dist/src/nile-rich-text-editor/utils.js +538 -0
  507. package/dist/src/nile-rich-text-editor/utils.js.map +1 -0
  508. package/dist/src/nile-select/nile-select.css.js +1 -1
  509. package/dist/src/nile-select/nile-select.css.js.map +1 -1
  510. package/dist/src/nile-select/nile-select.d.ts +5 -0
  511. package/dist/src/nile-select/nile-select.js +32 -2
  512. package/dist/src/nile-select/nile-select.js.map +1 -1
  513. package/dist/src/nile-select/virtual-scroll-helper.js +2 -0
  514. package/dist/src/nile-select/virtual-scroll-helper.js.map +1 -1
  515. package/dist/src/nile-stepper-item/nile-stepper-item.js +5 -5
  516. package/dist/src/nile-stepper-item/nile-stepper-item.js.map +1 -1
  517. package/dist/src/nile-vertical-stepper-item/nile-vertical-stepper-item.js +4 -4
  518. package/dist/src/nile-vertical-stepper-item/nile-vertical-stepper-item.js.map +1 -1
  519. package/dist/src/nile-virtual-select/nile-virtual-select.css.js +29 -1
  520. package/dist/src/nile-virtual-select/nile-virtual-select.css.js.map +1 -1
  521. package/dist/src/nile-virtual-select/nile-virtual-select.d.ts +22 -1
  522. package/dist/src/nile-virtual-select/nile-virtual-select.js +148 -23
  523. package/dist/src/nile-virtual-select/nile-virtual-select.js.map +1 -1
  524. package/dist/src/nile-virtual-select/renderer.d.ts +2 -2
  525. package/dist/src/nile-virtual-select/renderer.js +9 -8
  526. package/dist/src/nile-virtual-select/renderer.js.map +1 -1
  527. package/dist/src/nile-virtual-select/selection-manager.js +1 -1
  528. package/dist/src/nile-virtual-select/selection-manager.js.map +1 -1
  529. package/dist/tsconfig.tsbuildinfo +1 -1
  530. package/package.json +11 -4
  531. package/src/index.ts +8 -1
  532. package/src/nile-button/nile-button.ts +1 -1
  533. package/src/nile-checkbox/nile-checkbox.css.ts +1 -1
  534. package/src/nile-grid/index.ts +1 -0
  535. package/src/nile-grid/nile-grid.css.ts +43 -0
  536. package/src/nile-grid/nile-grid.ts +185 -0
  537. package/src/nile-grid/nile-grid.utils.ts +252 -0
  538. package/src/nile-grid-body/index.ts +1 -0
  539. package/src/nile-grid-body/nile-grid-body.css.ts +24 -0
  540. package/src/nile-grid-body/nile-grid-body.ts +51 -0
  541. package/src/nile-grid-cell-item/index.ts +1 -0
  542. package/src/nile-grid-cell-item/nile-grid-cell-item.css.ts +49 -0
  543. package/src/nile-grid-cell-item/nile-grid-cell-item.ts +98 -0
  544. package/src/nile-grid-cell-item/nile-grid-cell-item.utils.ts +65 -0
  545. package/src/nile-grid-head/index.ts +1 -0
  546. package/src/nile-grid-head/nile-grid-head.css.ts +21 -0
  547. package/src/nile-grid-head/nile-grid-head.ts +50 -0
  548. package/src/nile-grid-head-item/index.ts +1 -0
  549. package/src/nile-grid-head-item/nile-grid-head-item.css.ts +48 -0
  550. package/src/nile-grid-head-item/nile-grid-head-item.ts +111 -0
  551. package/src/nile-grid-head-item/nile-grid-head-item.utils.ts +66 -0
  552. package/src/nile-grid-row/index.ts +1 -0
  553. package/src/nile-grid-row/nile-grid-row.css.ts +29 -0
  554. package/src/nile-grid-row/nile-grid-row.ts +53 -0
  555. package/src/nile-icon/icons/svg/format_align_justify.ts +5 -0
  556. package/src/nile-icon/icons/svg/format_align_left.ts +5 -0
  557. package/src/nile-icon/icons/svg/format_align_middle.ts +5 -0
  558. package/src/nile-icon/icons/svg/format_align_right.ts +5 -0
  559. package/src/nile-icon/icons/svg/format_bold.ts +5 -0
  560. package/src/nile-icon/icons/svg/format_clear.ts +5 -0
  561. package/src/nile-icon/icons/svg/format_italic.ts +5 -0
  562. package/src/nile-icon/icons/svg/format_list_bulleted.ts +5 -0
  563. package/src/nile-icon/icons/svg/format_list_numbered.ts +5 -0
  564. package/src/nile-icon/icons/svg/format_underline.ts +5 -0
  565. package/src/nile-icon/icons/svg/image_2.ts +5 -0
  566. package/src/nile-icon/icons/svg/index.ts +12 -0
  567. package/src/nile-icon/icons/svg/link_2.ts +5 -0
  568. package/src/nile-link/nile-link.css.ts +1 -0
  569. package/src/nile-popover/nile-popover.ts +0 -1
  570. package/src/nile-rich-text-editor/index.ts +1 -0
  571. package/src/nile-rich-text-editor/nile-rich-text-editor.css.ts +154 -0
  572. package/src/nile-rich-text-editor/nile-rich-text-editor.ts +835 -0
  573. package/src/nile-rich-text-editor/nile-rte-color.ts +189 -0
  574. package/src/nile-rich-text-editor/nile-rte-divider.ts +9 -0
  575. package/src/nile-rich-text-editor/nile-rte-link.ts +161 -0
  576. package/src/nile-rich-text-editor/nile-rte-mentions-item.ts +45 -0
  577. package/src/nile-rich-text-editor/nile-rte-mentions.ts +618 -0
  578. package/src/nile-rich-text-editor/nile-rte-preview.ts +9 -0
  579. package/src/nile-rich-text-editor/nile-rte-select.ts +249 -0
  580. package/src/nile-rich-text-editor/nile-rte-toolbar-item.ts +13 -0
  581. package/src/nile-rich-text-editor/nile-rte-toolbar.ts +9 -0
  582. package/src/nile-rich-text-editor/utils.ts +643 -0
  583. package/src/nile-select/nile-select.css.ts +1 -1
  584. package/src/nile-select/nile-select.ts +30 -2
  585. package/src/nile-select/virtual-scroll-helper.ts +2 -0
  586. package/src/nile-stepper-item/nile-stepper-item.ts +5 -5
  587. package/src/nile-vertical-stepper-item/nile-vertical-stepper-item.ts +4 -4
  588. package/src/nile-virtual-select/nile-virtual-select.css.ts +29 -1
  589. package/src/nile-virtual-select/nile-virtual-select.ts +158 -27
  590. package/src/nile-virtual-select/renderer.ts +10 -8
  591. package/src/nile-virtual-select/selection-manager.ts +1 -1
  592. package/vscode-html-custom-data.json +363 -34
  593. package/dist/scopedElementsWrapper-4c29be11.esm.js +0 -7
  594. package/dist/scopedElementsWrapper-a112fc73.cjs.js +0 -6
  595. package/dist/scopedElementsWrapper-a112fc73.cjs.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"nile-vertical-stepper-item.js","sourceRoot":"","sources":["../../../src/nile-vertical-stepper-item/nile-vertical-stepper-item.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAAa,OAAO,EAAE,IAAI,EAAiC,MAAM,KAAK,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAC,MAAM,EAAC,MAAM,kCAAkC,CAAC;AACxD,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAGvD;;;;;GAKG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,WAAW;IAAjD;;QACN,gCAAgC;QACY,UAAK,GAAW,EAAE,CAAC;QACnB,aAAQ,GAAW,EAAE,CAAC;QAGlE,wDAAwD;QACvC,iBAAY,GAAG,KAAK,CAAC;QACrB,SAAI,GAAiB,IAAI,CAAC;QAC1B,SAAI,GAAG,MAAM,CAAC;QAG/B,+DAA+D;QAC9C,YAAO,GAAG,KAAK,CAAC;QAChB,WAAM,GAAG,KAAK,CAAC;QAEf,eAAU,GAAG,KAAK,CAAC;QACnB,cAAS,GAAG,KAAK,CAAC;QAMlB,aAAQ,GAAU,IAAI,CAAC;QAwExC,gBAAgB;IACjB,CAAC;IAvEA;;;OAGG;IACI,MAAM,KAAK,MAAM;QACvB,OAAO,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC;IAED,gBAAgB;IAEhB,qBAAqB;IAErB;;;OAGG;IACI,MAAM;QACZ,IAAI,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,IAAI,iBAAiB,GAAC,KAAK,CAAC;QAC5B,IAAG,UAAU,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,kBAAkB,IAAE,IAAI,CAAC,KAAK;YAAE,iBAAiB,GAAC,IAAI,CAAC;QAE3F,IAAI,uBAAuB,GAAG,KAAK,CAAC;QACpC,IAAI,UAAU,EAAE,CAAC;YAChB,uBAAuB,GAAG,IAAI,CAAC;YAC/B,IAAI,IAAI,CAAC,4BAA4B,IAAI,IAAI,CAAC,KAAK;gBAAE,uBAAuB,GAAG,KAAK,CAAC;QACtF,CAAC;QAED,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAA,CAAC,CAAA,EAAE,CAAA,CAAC,CAAA,IAAI,CAAC,IAAI,IAAI,IAAI,CAAA,CAAC,CAAA,EAAE,CAAA,CAAC,CAAA,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAA;;;YAGD,QAAQ,CAAC;YACjB,eAAe,EAAC,IAAI;YACpB,yBAAyB,EAAC,SAAS;YACnC,wBAAwB,EAAC,CAAC,SAAS;YACnC,mBAAmB,EAAC,IAAI,CAAC,IAAI,IAAE,IAAI;YACnC,mBAAmB,EAAC,IAAI,CAAC,IAAI,IAAE,IAAI;SACnC,CAAC;;;QAGG,iBAAiB,CAAC,CAAC;YACpB,IAAI,CAAA,eAAe,QAAQ,CAAC,EAAE,yBAAyB,EAAC,IAAI,EAAE,iCAAiC,EAAC,SAAS,EAAE,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,QAAQ;YACtI,CAAC,CAAC,IAAI,CAAA,eAAe,QAAQ,CAAC,EAAE,wBAAwB,EAAC,IAAI,EAAE,gCAAgC,EAAC,SAAS,EAAE,CAAC,UAC7G;;;QAGE,IAAI,CAAC,MAAM,CAAA,CAAC,CAAA,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA,eAAe,QAAQ,CAAC,EAAE,qBAAqB,EAAC,IAAI,EAAE,6BAA6B,EAAC,uBAAuB,EAAE,CAAC,UAAU;;;;gCAI1H,QAAQ,CAAC,EAAE,yBAAyB,EAAC,IAAI,EAAE,gCAAgC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,iCAAiC,EAAC,SAAS,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK;mCACvJ,QAAQ,CAAC,EAAE,4BAA4B,EAAC,IAAI,EAAE,mCAAmC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,oCAAoC,EAAC,SAAS,EAAE,CAAC,KAAK,IAAI,CAAC,QAAQ;;;IAGlM,CAAC;IACJ,CAAC;IAED,MAAM;QACL,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,OAAO,IAAI,CAAA;gBACG,QAAQ,aAAa,QAAQ;;;GAG1C,CAAA;IACF,CAAC;CAID,CAAA;AA9F4C;IAA3C,QAAQ,CAAC,EAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;sDAAoB;AACnB;IAA3C,QAAQ,CAAC,EAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;yDAAuB;AAIjD;IAAhB,KAAK,EAAE;6DAA8B;AACrB;IAAhB,KAAK,EAAE;qDAAmC;AAC1B;IAAhB,KAAK,EAAE;qDAAuB;AAId;IAAhB,KAAK,EAAE;wDAAyB;AAChB;IAAhB,KAAK,EAAE;uDAAwB;AAEf;IAAhB,KAAK,EAAE;2DAA4B;AACnB;IAAhB,KAAK,EAAE;0DAA2B;AAClB;IAAhB,KAAK,EAAE;iEAAkC;AACzB;IAAhB,KAAK,EAAE;mEAAoC;AAC3B;IAAhB,KAAK,EAAE;6EAA8C;AAErC;IAAhB,KAAK,EAAE;sDAAuB;AACd;IAAhB,KAAK,EAAE;yDAAgC;AAvB5B,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CAgGnC;;AAED,eAAe,uBAAuB,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {LitElement, nothing, html, CSSResultArray, TemplateResult} from 'lit';\nimport { customElement, state, property } from 'lit/decorators.js';\nimport {styles} from './nile-vertical-stepper-item.css';\nimport NileElement from '../internal/nile-element';\nimport { classMap } from 'lit/directives/class-map.js';\n\n\n/**\n * Nile vertical-stepper-item component.\n *\n * @tag nile-vertical-stepper-item\n *\n */\n@customElement('nile-vertical-stepper-item')\nexport class NileVerticalStepperItem extends NileElement {\n\t/* Properties passed directly */\n\t@property({attribute: true, reflect: true}) title: string = '';\n\t@property({attribute: true, reflect: true}) subtitle: string = '';\n\n\n\t/* Properties passed to parent component: NileStepper */\n\t@state() private contentBelow = false;\n\t@state() private size : 'sm' | 'lg' = 'lg';\n\t@state() private icon = 'tick';\n\n\n\t/* Properties Computed at parent level component NileStepper */\n\t@state() private isFirst = false;\n\t@state() private isLast = false;\n\n\t@state() private isComplete = false;\n\t@state() private isCurrent = false;\n\t@state() private currentStepValue :Number;\n\t@state() private completedStepValue :Number;\n\t@state() private calculatedCompletedStepValue :Number;\n\n\t@state() private value :Number;\n\t@state() private haveFlex :Boolean=true;\n\n\t/**\n\t * The styles for nile-vertical-stepper-item\n\t * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n\t */\n\tpublic static get styles(): CSSResultArray {\n\t\treturn [styles];\n\t}\n\n\t/* #endregion */\n\n\t/* #region Methods */\n\n\t/**\n\t * Render method\n\t * @slot This is a slot test\n\t */\n\tpublic render(): TemplateResult {\n\t\tif (this.isLast) this.style.setProperty('--vertical-stepper-flex-val', `0`);\n\t\tconst isCurrent = this.isCurrent;\n\t\tconst isComplete = this.isComplete;\n\n\t\tlet showCompletedIcon=false;\n\t\tif(isComplete && !isCurrent || this.completedStepValue==this.value) showCompletedIcon=true;\n\n\t\tlet suffixStepperLineActive = false;\n\t\tif (isComplete) {\n\t\t\tsuffixStepperLineActive = true;\n\t\t\tif (this.calculatedCompletedStepValue == this.value) suffixStepperLineActive = false;\n\t\t}\n\n\t\tlet iconSize = this.size == 'sm'?14:this.size == 'lg'?16:20;\n\t\treturn html`\n\t\t\t<div \n\t\t\tpart=\"item\"\n\t\t\tclass=\"${classMap({\n\t\t\t\t'stepper__item':true,\n\t\t\t\t'stepper__item--selected':isCurrent,\n\t\t\t\t'stepper__item--default':!isCurrent,\n\t\t\t\t'stepper__item--sm':this.size=='sm',\n\t\t\t\t'stepper__item--lg':this.size=='lg',\n\t\t\t})}\">\n\t\t\t\t<div part=\"connector\" class=\"stepper-item__connector-content\">\n\t\t\t\t\t<div part=\"bulletin\" class=\"stepper__item__bulletin\">\n\t\t\t\t\t\t${showCompletedIcon ? \n\t\t\t\t\t\t\thtml`<div class=\"${classMap({ 'stepper__bulletin--icon':true, 'stepper__bulletin__icon--active':isCurrent })}\">${this.getSvg()}</div>`\n\t\t\t\t\t\t\t: html`<div class=\"${classMap({ 'stepper__bulletin--dot':true, 'stepper__bulletin__dot--active':isCurrent })}\"></div>`\n\t\t\t\t\t\t}\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"stepper__item__line__container\">\n\t\t\t\t\t\t${this.isLast?nothing : html`<div class=\"${classMap({ 'stepper__item__line':true, 'stepper__item__line--active':suffixStepperLineActive })}\"></div>`}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div part=\"content\" class=\"stepper__item__content\">\n\t\t\t\t\t<div part=\"title\" class=\"${classMap({ 'stepper__content__title':true, \"stepper__content__title--alone\": !this.subtitle, 'stepper__content__title--active':isCurrent })}\">${this.title}</div>\n\t\t\t\t\t<div part=\"subtitle\" class=\"${classMap({ 'stepper__content__subtitle':true, \"stepper__content__subtitle--alone\": !this.title, 'stepper__content__subtitle--active':isCurrent })}\">${this.subtitle}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t`;\n\t}\n\n\tgetSvg():TemplateResult{\n\t\tlet iconSize = this.size == 'sm' ? 20 : this.size == 'lg' ? 24 : 28;\n\t\treturn html`\n\t\t<svg width=\"${iconSize}\" height=\"${iconSize}\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M22.7953 9.85334L13.2487 19.0667L10.7153 16.36C10.2487 15.92 9.51534 15.8933 8.982 16.2667C8.462 16.6533 8.31534 17.3333 8.63534 17.88L11.6353 22.76C11.9287 23.2133 12.4353 23.4933 13.0087 23.4933C13.5553 23.4933 14.0753 23.2133 14.3687 22.76C14.8487 22.1333 24.0087 11.2133 24.0087 11.2133C25.2087 9.98668 23.7553 8.90668 22.7953 9.84001V9.85334Z\" fill=\"white\"/>\n\t\t</svg>\n\t\t`\n\t}\n\n\n\t/* #endregion */\n}\n\nexport default NileVerticalStepperItem;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-vertical-stepper-item': NileVerticalStepperItem;\n }\n}"]}
1
+ {"version":3,"file":"nile-vertical-stepper-item.js","sourceRoot":"","sources":["../../../src/nile-vertical-stepper-item/nile-vertical-stepper-item.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAAa,OAAO,EAAE,IAAI,EAAiC,MAAM,KAAK,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAC,MAAM,EAAC,MAAM,kCAAkC,CAAC;AACxD,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAGvD;;;;;GAKG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,WAAW;IAAjD;;QACN,gCAAgC;QACY,UAAK,GAAW,EAAE,CAAC;QACnB,aAAQ,GAAW,EAAE,CAAC;QAGlE,wDAAwD;QACvC,iBAAY,GAAG,KAAK,CAAC;QACrB,SAAI,GAAiB,IAAI,CAAC;QAC1B,SAAI,GAAG,MAAM,CAAC;QAG/B,+DAA+D;QAC9C,YAAO,GAAG,KAAK,CAAC;QAChB,WAAM,GAAG,KAAK,CAAC;QAEf,eAAU,GAAG,KAAK,CAAC;QACnB,cAAS,GAAG,KAAK,CAAC;QAMlB,aAAQ,GAAU,IAAI,CAAC;QAwExC,gBAAgB;IACjB,CAAC;IAvEA;;;OAGG;IACI,MAAM,KAAK,MAAM;QACvB,OAAO,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC;IAED,gBAAgB;IAEhB,qBAAqB;IAErB;;;OAGG;IACI,MAAM;QACZ,IAAI,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,IAAI,iBAAiB,GAAC,KAAK,CAAC;QAC5B,IAAG,UAAU,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,kBAAkB,IAAE,IAAI,CAAC,KAAK;YAAE,iBAAiB,GAAC,IAAI,CAAC;QAE3F,IAAI,uBAAuB,GAAG,KAAK,CAAC;QACpC,IAAI,UAAU,EAAE,CAAC;YAChB,uBAAuB,GAAG,IAAI,CAAC;YAC/B,IAAI,IAAI,CAAC,4BAA4B,IAAI,IAAI,CAAC,KAAK;gBAAE,uBAAuB,GAAG,KAAK,CAAC;QACtF,CAAC;QAED,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAA,CAAC,CAAA,EAAE,CAAA,CAAC,CAAA,IAAI,CAAC,IAAI,IAAI,IAAI,CAAA,CAAC,CAAA,EAAE,CAAA,CAAC,CAAA,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAA;;;YAGD,QAAQ,CAAC;YACjB,eAAe,EAAC,IAAI;YACpB,yBAAyB,EAAC,SAAS;YACnC,wBAAwB,EAAC,CAAC,SAAS;YACnC,mBAAmB,EAAC,IAAI,CAAC,IAAI,IAAE,IAAI;YACnC,mBAAmB,EAAC,IAAI,CAAC,IAAI,IAAE,IAAI;SACnC,CAAC;;;QAGG,iBAAiB,CAAC,CAAC;YACpB,IAAI,CAAA,oCAAoC,QAAQ,CAAC,EAAE,yBAAyB,EAAC,IAAI,EAAE,iCAAiC,EAAC,SAAS,EAAE,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,QAAQ;YAC3J,CAAC,CAAC,IAAI,CAAA,mCAAmC,QAAQ,CAAC,EAAE,wBAAwB,EAAC,IAAI,EAAE,gCAAgC,EAAC,SAAS,EAAE,CAAC,UACjI;;;QAGE,IAAI,CAAC,MAAM,CAAA,CAAC,CAAA,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA,2BAA2B,QAAQ,CAAC,EAAE,qBAAqB,EAAC,IAAI,EAAE,6BAA6B,EAAC,uBAAuB,EAAE,CAAC,UAAU;;;;gCAItI,QAAQ,CAAC,EAAE,yBAAyB,EAAC,IAAI,EAAE,gCAAgC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,iCAAiC,EAAC,SAAS,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK;mCACvJ,QAAQ,CAAC,EAAE,4BAA4B,EAAC,IAAI,EAAE,mCAAmC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,oCAAoC,EAAC,SAAS,EAAE,CAAC,KAAK,IAAI,CAAC,QAAQ;;;IAGlM,CAAC;IACJ,CAAC;IAED,MAAM;QACL,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,OAAO,IAAI,CAAA;gBACG,QAAQ,aAAa,QAAQ;;;GAG1C,CAAA;IACF,CAAC;CAID,CAAA;AA9F4C;IAA3C,QAAQ,CAAC,EAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;sDAAoB;AACnB;IAA3C,QAAQ,CAAC,EAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;yDAAuB;AAIjD;IAAhB,KAAK,EAAE;6DAA8B;AACrB;IAAhB,KAAK,EAAE;qDAAmC;AAC1B;IAAhB,KAAK,EAAE;qDAAuB;AAId;IAAhB,KAAK,EAAE;wDAAyB;AAChB;IAAhB,KAAK,EAAE;uDAAwB;AAEf;IAAhB,KAAK,EAAE;2DAA4B;AACnB;IAAhB,KAAK,EAAE;0DAA2B;AAClB;IAAhB,KAAK,EAAE;iEAAkC;AACzB;IAAhB,KAAK,EAAE;mEAAoC;AAC3B;IAAhB,KAAK,EAAE;6EAA8C;AAErC;IAAhB,KAAK,EAAE;sDAAuB;AACd;IAAhB,KAAK,EAAE;yDAAgC;AAvB5B,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CAgGnC;;AAED,eAAe,uBAAuB,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {LitElement, nothing, html, CSSResultArray, TemplateResult} from 'lit';\nimport { customElement, state, property } from 'lit/decorators.js';\nimport {styles} from './nile-vertical-stepper-item.css';\nimport NileElement from '../internal/nile-element';\nimport { classMap } from 'lit/directives/class-map.js';\n\n\n/**\n * Nile vertical-stepper-item component.\n *\n * @tag nile-vertical-stepper-item\n *\n */\n@customElement('nile-vertical-stepper-item')\nexport class NileVerticalStepperItem extends NileElement {\n\t/* Properties passed directly */\n\t@property({attribute: true, reflect: true}) title: string = '';\n\t@property({attribute: true, reflect: true}) subtitle: string = '';\n\n\n\t/* Properties passed to parent component: NileStepper */\n\t@state() private contentBelow = false;\n\t@state() private size : 'sm' | 'lg' = 'lg';\n\t@state() private icon = 'tick';\n\n\n\t/* Properties Computed at parent level component NileStepper */\n\t@state() private isFirst = false;\n\t@state() private isLast = false;\n\n\t@state() private isComplete = false;\n\t@state() private isCurrent = false;\n\t@state() private currentStepValue :Number;\n\t@state() private completedStepValue :Number;\n\t@state() private calculatedCompletedStepValue :Number;\n\n\t@state() private value :Number;\n\t@state() private haveFlex :Boolean=true;\n\n\t/**\n\t * The styles for nile-vertical-stepper-item\n\t * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n\t */\n\tpublic static get styles(): CSSResultArray {\n\t\treturn [styles];\n\t}\n\n\t/* #endregion */\n\n\t/* #region Methods */\n\n\t/**\n\t * Render method\n\t * @slot This is a slot test\n\t */\n\tpublic render(): TemplateResult {\n\t\tif (this.isLast) this.style.setProperty('--vertical-stepper-flex-val', `0`);\n\t\tconst isCurrent = this.isCurrent;\n\t\tconst isComplete = this.isComplete;\n\n\t\tlet showCompletedIcon=false;\n\t\tif(isComplete && !isCurrent || this.completedStepValue==this.value) showCompletedIcon=true;\n\n\t\tlet suffixStepperLineActive = false;\n\t\tif (isComplete) {\n\t\t\tsuffixStepperLineActive = true;\n\t\t\tif (this.calculatedCompletedStepValue == this.value) suffixStepperLineActive = false;\n\t\t}\n\n\t\tlet iconSize = this.size == 'sm'?14:this.size == 'lg'?16:20;\n\t\treturn html`\n\t\t\t<div \n\t\t\tpart=\"item\"\n\t\t\tclass=\"${classMap({\n\t\t\t\t'stepper__item':true,\n\t\t\t\t'stepper__item--selected':isCurrent,\n\t\t\t\t'stepper__item--default':!isCurrent,\n\t\t\t\t'stepper__item--sm':this.size=='sm',\n\t\t\t\t'stepper__item--lg':this.size=='lg',\n\t\t\t})}\">\n\t\t\t\t<div part=\"connector\" class=\"stepper-item__connector-content\">\n\t\t\t\t\t<div part=\"bulletin\" class=\"stepper__item__bulletin\">\n\t\t\t\t\t\t${showCompletedIcon ? \n\t\t\t\t\t\t\thtml`<div part=\"bulletin-icon\" class=\"${classMap({ 'stepper__bulletin--icon':true, 'stepper__bulletin__icon--active':isCurrent })}\">${this.getSvg()}</div>`\n\t\t\t\t\t\t\t: html`<div part=\"bulletin-dot\" class=\"${classMap({ 'stepper__bulletin--dot':true, 'stepper__bulletin__dot--active':isCurrent })}\"></div>`\n\t\t\t\t\t\t}\n\t\t\t\t\t</div>\n\t\t\t\t\t<div part=\"line-container\" class=\"stepper__item__line__container\">\n\t\t\t\t\t\t${this.isLast?nothing : html`<div part=\"line\" class=\"${classMap({ 'stepper__item__line':true, 'stepper__item__line--active':suffixStepperLineActive })}\"></div>`}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div part=\"content\" class=\"stepper__item__content\">\n\t\t\t\t\t<div part=\"title\" class=\"${classMap({ 'stepper__content__title':true, \"stepper__content__title--alone\": !this.subtitle, 'stepper__content__title--active':isCurrent })}\">${this.title}</div>\n\t\t\t\t\t<div part=\"subtitle\" class=\"${classMap({ 'stepper__content__subtitle':true, \"stepper__content__subtitle--alone\": !this.title, 'stepper__content__subtitle--active':isCurrent })}\">${this.subtitle}</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t`;\n\t}\n\n\tgetSvg():TemplateResult{\n\t\tlet iconSize = this.size == 'sm' ? 20 : this.size == 'lg' ? 24 : 28;\n\t\treturn html`\n\t\t<svg width=\"${iconSize}\" height=\"${iconSize}\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M22.7953 9.85334L13.2487 19.0667L10.7153 16.36C10.2487 15.92 9.51534 15.8933 8.982 16.2667C8.462 16.6533 8.31534 17.3333 8.63534 17.88L11.6353 22.76C11.9287 23.2133 12.4353 23.4933 13.0087 23.4933C13.5553 23.4933 14.0753 23.2133 14.3687 22.76C14.8487 22.1333 24.0087 11.2133 24.0087 11.2133C25.2087 9.98668 23.7553 8.90668 22.7953 9.84001V9.85334Z\" fill=\"white\"/>\n\t\t</svg>\n\t\t`\n\t}\n\n\n\t/* #endregion */\n}\n\nexport default NileVerticalStepperItem;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-vertical-stepper-item': NileVerticalStepperItem;\n }\n}"]}
@@ -436,7 +436,7 @@ export const styles = css `
436
436
  position: sticky;
437
437
  bottom: 0px;
438
438
  background: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));
439
- border: 1px solid var(--nile-colors-neutral-400, var(--ng-colors-border-secondary));
439
+ border-top: 1px solid var(--nile-colors-neutral-400, var(--ng-colors-border-secondary));
440
440
  display: flex;
441
441
  height: 15px;
442
442
  /* Auto layout */
@@ -501,6 +501,34 @@ export const styles = css `
501
501
  .virtualized nile-option[selected]::part(base) {
502
502
  color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));
503
503
  }
504
+
505
+ .virtual-select-loader {
506
+ position: absolute;
507
+ display: flex;
508
+ justify-content: center;
509
+ align-items: center;
510
+ width: 100%;
511
+ height: 75%;
512
+ }
513
+
514
+ .select__footer.loading, .select__options.loading {
515
+ opacity: 0.5;
516
+ pointer-events: none;
517
+ }
518
+
519
+ .virtual-select-loader {
520
+ position: absolute;
521
+ display: flex;
522
+ justify-content: center;
523
+ align-items: center;
524
+ width: 100%;
525
+ height: 75%;
526
+ }
527
+
528
+ .select__footer.loading, .select__options.loading {
529
+ opacity: 0.5;
530
+ pointer-events: none;
531
+ }
504
532
  `;
505
533
  export default [styles];
506
534
  //# sourceMappingURL=nile-virtual-select.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-virtual-select.css.js","sourceRoot":"","sources":["../../../src/nile-virtual-select/nile-virtual-select.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6exB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {css} from 'lit';\n\n/**\n * Select_2 CSS\n */\nexport const styles = css`\n :host {\n box-sizing: border-box;\n --ng-nxt-gen-outline: var(--ng-border-width-1) solid var(--ng-colors-border-brand);\n --ng-nxt-gen-outline-error: var(--ng-border-width-1) solid var(--ng-colors-border-error);\n --ng-private-outline-transparent: var(--ng-border-width-1) solid transparent;\n --ng-box-shadow: 0px 12px 16px -4px var(--ng-colors-effects-shadow-lg-01, rgba(10, 13, 18, 0.08)), 0px 4px 6px -2px var(--ng-colors-effects-shadow-lg-02, rgba(10, 13, 18, 0.03)), 0px 2px 2px -1px var(--ng-colors-effects-shadow-lg-03, rgba(10, 13, 18, 0.04));\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n }\n\n .virtualized{\n min-width: 110px;\n width: 100%;\n }\n\n .virtualized ::slotted(nile-option),\n .virtualized nile-option {\n width: 100%;\n display: block;\n }\n\n /* Ensure proper sizing for non-virtualized options (small datasets) */\n .virtualized:not(:has(lit-virtualizer)) {\n display: flex;\n flex-direction: column;\n }\n\n .virtualized:not(:has(lit-virtualizer)) nile-option {\n flex-shrink: 0;\n }\n\n :host *,\n :host *::before,\n :host *::after {\n box-sizing: inherit;\n }\n\n [hidden] {\n display: none !important;\n }\n\n .form-control .form-control__label {\n display: none;\n }\n\n .form-control .form-control__help-text {\n display: none;\n }\n\n /* Label */\n .form-control--has-label .form-control__label {\n display: block;\n margin-bottom: var(--nile-spacing-sm, var(--ng-spacing-sm));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-style: normal;\n font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-medium));\n line-height: var(--nile-spacing-2xl, var(--ng-line-height-text-sm));\n letter-spacing: 0.2px;\n }\n\n .form-control--has-label.form-control--medium .form-control__label {\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n }\n\n :host([required]) .form-control--has-label .form-control__label::after {\n content: '*';\n margin-inline-start: -2px;\n color: var(--nile-colors-red-700, var(--ng-colors-text-brand-tertiary-600));\n }\n\n /* Help text */\n .form-control--has-help-text .form-control__help-text {\n display: block;\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n margin-top: var(--nile-spacing-lg, var(--ng-spacing-lg));\n }\n\n .form-control--has-help-text.form-control--medium .form-control__help-text {\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n }\n\n .form-control--has-help-text.form-control--radio-group\n .form-control__help-text {\n margin-top: var(--nile-spacing-xs, var(--ng-spacing-sm));\n }\n\n :host {\n display: block;\n }\n\n /** The popup */\n .select {\n flex: 1 1 auto;\n display: inline-flex;\n width: 100%;\n position: relative;\n vertical-align: middle;\n }\n\n .select::part(popup) {\n z-index: 9999;\n }\n\n .select[data-current-placement^='top']::part(popup) {\n transform-origin: bottom;\n }\n\n .select[data-current-placement^='bottom']::part(popup) {\n transform-origin: top;\n }\n\n /* Combobox */\n .select__combobox {\n flex: 1;\n display: flex;\n width: 100%;\n min-width: 0;\n position: relative;\n align-items: center;\n justify-content: start;\n font-family: var(--nile-font-family-sans-serif, var(--ng-font-family-body));\n font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-medium));\n letter-spacing: normal;\n vertical-align: middle;\n overflow: hidden;\n cursor: pointer;\n transition: 150ms color, 150ms border, 150ms box-shadow,\n 150ms background-color;\n }\n\n .select__display-input {\n position: relative;\n width: 100%;\n font: inherit;\n border: none;\n background: none;\n color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));\n cursor: inherit;\n overflow: hidden;\n padding: var(--nile-spacing-none, var(--ng-spacing-none));\n margin: var(--nile-spacing-none, var(--ng-spacing-none));\n -webkit-appearance: none;\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n }\n\n .select__display-input::placeholder {\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n color: var(--nile-colors-text-placeholder, var(--ng-colors-text-placeholder));\n }\n\n .select:not(.select--disabled):hover .select__display-input {\n color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));\n }\n\n .select__display-input:focus {\n outline: none;\n }\n\n /* Visually hide the display input when multiple is enabled */\n .select--multiple:not(.select--placeholder-visible) .select__display-input {\n position: absolute;\n z-index: -1;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n }\n\n .select__value-input {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n padding: var(--nile-spacing-none, var(--ng-spacing-none));\n margin: var(--nile-spacing-none, var(--ng-spacing-none));\n opacity: 0;\n z-index: -1;\n }\n\n .select__tags {\n display: flex;\n flex: 1;\n align-items: center;\n flex-wrap: no-wrap;\n margin-inline-start: var(--nile-spacing-7px, var(--ng-spacing-md));\n width: 100%;\n overflow: hidden;\n }\n\n .select__tags-count {\n color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-style: normal;\n font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-medium));\n line-height: var(--nile-line-height-xsmall, var(--ng-line-height-text-sm));\n letter-spacing: 0.2px;\n margin: var(--nile-spacing-sm, var(--ng-spacing-sm));\n }\n\n .select__tags-count-clearable {\n margin-right: var(--nile-spacing-5xl, var(--ng-spacing-5xl));\n }\n\n .select__tags::slotted(nile-tag) {\n cursor: pointer !important;\n }\n\n .select--disabled .select__tags,\n .select--disabled .select__tags::slotted(nile-tag) {\n cursor: not-allowed !important;\n }\n\n /* Standard selects */\n .select--standard .select__combobox {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border: solid 1px var(--nile-colors-neutral-500, var(--ng-colors-border-primary));\n outline: var(--nile-outline-none, var(--ng-private-outline-transparent));\n }\n\n .select--standard .select__combobox:hover {\n border: 1px solid var(--nile-colors-dark-900, var(--ng-colors-border-brand));\n background: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n outline: var(--nile-outline-none, var(--ng-nxt-gen-outline));\n }\n\n .select--error:hover:not(.select--disabled) .select__combobox {\n border-color: var(--nile-colors-red-500, var(--ng-colors-border-error));\n outline: var(--nile-outline-none, var(--ng-colors-border-error));\n }\n\n .select--standard.select--disabled .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled-subtle));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-border-primary));\n color: var(--nile-colors-dark-500, var(--ng-colors-text-disabled));\n opacity: var(--nile-opacity-50, var(--ng-opacity-100));\n cursor: not-allowed;\n outline: none;\n }\n\n .select--standard:not(.select--disabled).select--open .select__combobox,\n .select--standard:not(.select--disabled).select--focused .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n }\n\n .select--warning .select__combobox {\n border-color: var(--nile-colors-yellow-500, var(--ng-colors-border-warning));\n }\n\n .select--error .select__combobox {\n border-color: var(--nile-colors-red-500, var(--ng-colors-border-error));\n outline: var(--nile-outline-none, var(--ng-private-outline-transparent));\n }\n\n .select--success {\n border-color: var(--nile-colors-green-500, var(--ng-componentcolors-utility-success-500));\n }\n\n /* Filled selects */\n .select--filled .select__combobox {\n border: none;\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));\n }\n\n .select--filled:hover:not(.select--disabled) .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n }\n\n .select--filled.select--disabled .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled-subtle));\n opacity: var(--nile-opacity-50, var(--ng-opacity-100));\n cursor: not-allowed;\n }\n\n .select--filled:not(.select--disabled).select--open .select__combobox,\n .select--filled:not(.select--disabled).select--focused .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n outline: 3px solid rgba(0, 89, 255, 0.4);\n }\n\n .select--medium .select__combobox {\n border-radius: var(--nile-radius-sm, var(--ng-radius-md));\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n padding: var(--nile-spacing-lg, var(--ng-spacing-md)) var(--nile-spacing-lg, var(--ng-spacing-lg));\n height: var(--nile-height-40px, var(--ng-height-40px));\n box-sizing: border-box;\n }\n\n .select--medium .select__clear {\n margin-inline-start: var(--nile-spacing-lg, var(--ng-spacing-lg));\n }\n\n .select--medium .select__prefix::slotted(*) {\n margin-inline-end: var(--nile-spacing-lg, var(--ng-spacing-md));\n }\n\n .select--medium .select__prefix.multiple::slotted(*) {\n margin-inline-start: var(--nile-spacing-lg, var(--ng-spacing-md));\n }\n\n .select--medium.select--multiple:not(.select--placeholder-visible)\n .select__combobox {\n padding-inline-start: var(--nile-spacing-none, var(--ng-spacing-none));\n }\n\n .select--medium .select__tags {\n gap: var(--nile-spacing-3px, var(--ng-spacing-sm));\n }\n\n /* Pills */\n .select--pill.select--medium .select__combobox {\n border-radius: var(--nile-radius-3xl, var(--ng-radius-3xl));\n }\n\n /* Prefix */\n .select__prefix {\n flex: 0;\n display: inline-flex;\n align-items: center;\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n }\n\n .select__suffix {\n flex: 0;\n display: inline-flex;\n align-items: center;\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n }\n\n /* Clear button */\n .select__clear {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-size: inherit;\n color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));\n border: none;\n background: none;\n padding: var(--nile-spacing-none, var(--ng-spacing-none));\n transition: 150ms color;\n cursor: pointer;\n }\n\n .select__clear:hover {\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n }\n\n .select__clear:focus {\n outline: none;\n }\n\n /* Expand icon */\n .select__expand-icon {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n transition: 250ms rotate ease;\n rotate: 0;\n margin-inline-start: var(--nile-spacing-xxxsmall, var(--ng-spacing-md));\n }\n\n .select--open .select__expand-icon {\n rotate: -180deg;\n }\n\n /* Listbox */\n .select__listbox {\n display: block;\n position: relative;\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-md));\n font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-regular));\n background: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border: solid 1px var(--nile-colors-neutral-500, var(--ng-colors-border-secondary-alt));\n border-radius: var(--nile-radius-sm, var(--ng-radius-md));\n padding-block: var(--nile-spacing-none, var(--ng-spacing-xs));\n padding-inline: var(--nile-spacing-none, var(--ng-spacing-xs));\n overflow: auto;\n overscroll-behavior: none;\n /* Make sure it adheres to the popup's auto size */\n max-width: var(--auto-size-available-width);\n max-height: var(--auto-size-available-height);\n box-shadow: var(--nile-box-shadow-none, var(--ng-shadow-xs));\n }\n\n .select__options {\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n color: rgb(133, 129, 129);\n width: 100%;\n }\n\n .select__options__search-enabled {\n padding-top: var(--nile-spacing-10px, var(--ng-spacing-lg));\n width: 100%;\n }\n\n .select__listbox::slotted(nile-divider) {\n --spacing: var(--nile-spacing-xs, var(--ng-spacing-sm));\n }\n\n .select__listbox::slotted(small) {\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-weight: var(--nile-font-weight-semi-bold, var(--ng-font-weight-semibold));\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n padding-block: var(--nile-spacing-xs, var(--ng-spacing-sm));\n padding-inline: var(--nile-spacing-xl, var(--ng-spacing-xl));\n }\n\n .select__search {\n position: sticky;\n top: 0px;\n z-index: 1;\n width: calc(100% - 16px);\n padding: var(--nile-spacing-md, var(--ng-spacing-md));\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n margin-bottom: -8px;\n }\n\n .select__footer {\n position: sticky;\n bottom: 0px;\n background: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n border: 1px solid var(--nile-colors-neutral-400, var(--ng-colors-border-secondary));\n display: flex;\n height: 15px;\n /* Auto layout */\n display: var(--nile-display-flex, var(--ng-display-flex));\n flex-direction: row;\n align-items: flex-start;\n padding: var(--nile-spacing-md, var(--ng-spacing-md)) var(--nile-spacing-lg, var(--ng-spacing-lg)) var(--nile-spacing-xl, var(--ng-spacing-xl));\n gap: var(--nile-spacing-lg, var(--ng-spacing-lg));\n justify-content: space-between;\n }\n\n .tag__prefix[slot='prefix'] {\n height: 14px;\n display: inline-block;\n overflow: hidden;\n }\n\n .tag__prefix[slot='prefix'] img {\n max-height: 100%;\n }\n\n .select__loader {\n width: 100%;\n text-align: center;\n display: block;\n }\n\n .select__loader--icon {\n margin-top: var(--nile-spacing-xl, var(--ng-spacing-xl));\n animation: spin 0.6s linear infinite;\n }\n\n .select__no-results {\n padding: var(--nile-spacing-lg, var(--ng-spacing-lg));\n }\n\n @keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n\n .select__invisible{\n opacity: 0;\n }\n\n .select__prefix--from-options {\n margin-inline-end: var(--nile-spacing-lg, var(--ng-spacing-md));\n }\n \n .select__hide-default{\n display: none;\n }\n\n .virtualized nile-option[selected] {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n }\n\n .virtualized nile-option[selected]::part(base) {\n color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));\n }\n`;\n\nexport default [styles];\n"]}
1
+ {"version":3,"file":"nile-virtual-select.css.js","sourceRoot":"","sources":["../../../src/nile-virtual-select/nile-virtual-select.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAygBxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {css} from 'lit';\n\n/**\n * Select_2 CSS\n */\nexport const styles = css`\n :host {\n box-sizing: border-box;\n --ng-nxt-gen-outline: var(--ng-border-width-1) solid var(--ng-colors-border-brand);\n --ng-nxt-gen-outline-error: var(--ng-border-width-1) solid var(--ng-colors-border-error);\n --ng-private-outline-transparent: var(--ng-border-width-1) solid transparent;\n --ng-box-shadow: 0px 12px 16px -4px var(--ng-colors-effects-shadow-lg-01, rgba(10, 13, 18, 0.08)), 0px 4px 6px -2px var(--ng-colors-effects-shadow-lg-02, rgba(10, 13, 18, 0.03)), 0px 2px 2px -1px var(--ng-colors-effects-shadow-lg-03, rgba(10, 13, 18, 0.04));\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n }\n\n .virtualized{\n min-width: 110px;\n width: 100%;\n }\n\n .virtualized ::slotted(nile-option),\n .virtualized nile-option {\n width: 100%;\n display: block;\n }\n\n /* Ensure proper sizing for non-virtualized options (small datasets) */\n .virtualized:not(:has(lit-virtualizer)) {\n display: flex;\n flex-direction: column;\n }\n\n .virtualized:not(:has(lit-virtualizer)) nile-option {\n flex-shrink: 0;\n }\n\n :host *,\n :host *::before,\n :host *::after {\n box-sizing: inherit;\n }\n\n [hidden] {\n display: none !important;\n }\n\n .form-control .form-control__label {\n display: none;\n }\n\n .form-control .form-control__help-text {\n display: none;\n }\n\n /* Label */\n .form-control--has-label .form-control__label {\n display: block;\n margin-bottom: var(--nile-spacing-sm, var(--ng-spacing-sm));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-style: normal;\n font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-medium));\n line-height: var(--nile-spacing-2xl, var(--ng-line-height-text-sm));\n letter-spacing: 0.2px;\n }\n\n .form-control--has-label.form-control--medium .form-control__label {\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n }\n\n :host([required]) .form-control--has-label .form-control__label::after {\n content: '*';\n margin-inline-start: -2px;\n color: var(--nile-colors-red-700, var(--ng-colors-text-brand-tertiary-600));\n }\n\n /* Help text */\n .form-control--has-help-text .form-control__help-text {\n display: block;\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n margin-top: var(--nile-spacing-lg, var(--ng-spacing-lg));\n }\n\n .form-control--has-help-text.form-control--medium .form-control__help-text {\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n }\n\n .form-control--has-help-text.form-control--radio-group\n .form-control__help-text {\n margin-top: var(--nile-spacing-xs, var(--ng-spacing-sm));\n }\n\n :host {\n display: block;\n }\n\n /** The popup */\n .select {\n flex: 1 1 auto;\n display: inline-flex;\n width: 100%;\n position: relative;\n vertical-align: middle;\n }\n\n .select::part(popup) {\n z-index: 9999;\n }\n\n .select[data-current-placement^='top']::part(popup) {\n transform-origin: bottom;\n }\n\n .select[data-current-placement^='bottom']::part(popup) {\n transform-origin: top;\n }\n\n /* Combobox */\n .select__combobox {\n flex: 1;\n display: flex;\n width: 100%;\n min-width: 0;\n position: relative;\n align-items: center;\n justify-content: start;\n font-family: var(--nile-font-family-sans-serif, var(--ng-font-family-body));\n font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-medium));\n letter-spacing: normal;\n vertical-align: middle;\n overflow: hidden;\n cursor: pointer;\n transition: 150ms color, 150ms border, 150ms box-shadow,\n 150ms background-color;\n }\n\n .select__display-input {\n position: relative;\n width: 100%;\n font: inherit;\n border: none;\n background: none;\n color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));\n cursor: inherit;\n overflow: hidden;\n padding: var(--nile-spacing-none, var(--ng-spacing-none));\n margin: var(--nile-spacing-none, var(--ng-spacing-none));\n -webkit-appearance: none;\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n }\n\n .select__display-input::placeholder {\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n color: var(--nile-colors-text-placeholder, var(--ng-colors-text-placeholder));\n }\n\n .select:not(.select--disabled):hover .select__display-input {\n color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));\n }\n\n .select__display-input:focus {\n outline: none;\n }\n\n /* Visually hide the display input when multiple is enabled */\n .select--multiple:not(.select--placeholder-visible) .select__display-input {\n position: absolute;\n z-index: -1;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n }\n\n .select__value-input {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n padding: var(--nile-spacing-none, var(--ng-spacing-none));\n margin: var(--nile-spacing-none, var(--ng-spacing-none));\n opacity: 0;\n z-index: -1;\n }\n\n .select__tags {\n display: flex;\n flex: 1;\n align-items: center;\n flex-wrap: no-wrap;\n margin-inline-start: var(--nile-spacing-7px, var(--ng-spacing-md));\n width: 100%;\n overflow: hidden;\n }\n\n .select__tags-count {\n color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-style: normal;\n font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-medium));\n line-height: var(--nile-line-height-xsmall, var(--ng-line-height-text-sm));\n letter-spacing: 0.2px;\n margin: var(--nile-spacing-sm, var(--ng-spacing-sm));\n }\n\n .select__tags-count-clearable {\n margin-right: var(--nile-spacing-5xl, var(--ng-spacing-5xl));\n }\n\n .select__tags::slotted(nile-tag) {\n cursor: pointer !important;\n }\n\n .select--disabled .select__tags,\n .select--disabled .select__tags::slotted(nile-tag) {\n cursor: not-allowed !important;\n }\n\n /* Standard selects */\n .select--standard .select__combobox {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border: solid 1px var(--nile-colors-neutral-500, var(--ng-colors-border-primary));\n outline: var(--nile-outline-none, var(--ng-private-outline-transparent));\n }\n\n .select--standard .select__combobox:hover {\n border: 1px solid var(--nile-colors-dark-900, var(--ng-colors-border-brand));\n background: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n outline: var(--nile-outline-none, var(--ng-nxt-gen-outline));\n }\n\n .select--error:hover:not(.select--disabled) .select__combobox {\n border-color: var(--nile-colors-red-500, var(--ng-colors-border-error));\n outline: var(--nile-outline-none, var(--ng-colors-border-error));\n }\n\n .select--standard.select--disabled .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled-subtle));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-border-primary));\n color: var(--nile-colors-dark-500, var(--ng-colors-text-disabled));\n opacity: var(--nile-opacity-50, var(--ng-opacity-100));\n cursor: not-allowed;\n outline: none;\n }\n\n .select--standard:not(.select--disabled).select--open .select__combobox,\n .select--standard:not(.select--disabled).select--focused .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n }\n\n .select--warning .select__combobox {\n border-color: var(--nile-colors-yellow-500, var(--ng-colors-border-warning));\n }\n\n .select--error .select__combobox {\n border-color: var(--nile-colors-red-500, var(--ng-colors-border-error));\n outline: var(--nile-outline-none, var(--ng-private-outline-transparent));\n }\n\n .select--success {\n border-color: var(--nile-colors-green-500, var(--ng-componentcolors-utility-success-500));\n }\n\n /* Filled selects */\n .select--filled .select__combobox {\n border: none;\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));\n }\n\n .select--filled:hover:not(.select--disabled) .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n }\n\n .select--filled.select--disabled .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled-subtle));\n opacity: var(--nile-opacity-50, var(--ng-opacity-100));\n cursor: not-allowed;\n }\n\n .select--filled:not(.select--disabled).select--open .select__combobox,\n .select--filled:not(.select--disabled).select--focused .select__combobox {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n outline: 3px solid rgba(0, 89, 255, 0.4);\n }\n\n .select--medium .select__combobox {\n border-radius: var(--nile-radius-sm, var(--ng-radius-md));\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n padding: var(--nile-spacing-lg, var(--ng-spacing-md)) var(--nile-spacing-lg, var(--ng-spacing-lg));\n height: var(--nile-height-40px, var(--ng-height-40px));\n box-sizing: border-box;\n }\n\n .select--medium .select__clear {\n margin-inline-start: var(--nile-spacing-lg, var(--ng-spacing-lg));\n }\n\n .select--medium .select__prefix::slotted(*) {\n margin-inline-end: var(--nile-spacing-lg, var(--ng-spacing-md));\n }\n\n .select--medium .select__prefix.multiple::slotted(*) {\n margin-inline-start: var(--nile-spacing-lg, var(--ng-spacing-md));\n }\n\n .select--medium.select--multiple:not(.select--placeholder-visible)\n .select__combobox {\n padding-inline-start: var(--nile-spacing-none, var(--ng-spacing-none));\n }\n\n .select--medium .select__tags {\n gap: var(--nile-spacing-3px, var(--ng-spacing-sm));\n }\n\n /* Pills */\n .select--pill.select--medium .select__combobox {\n border-radius: var(--nile-radius-3xl, var(--ng-radius-3xl));\n }\n\n /* Prefix */\n .select__prefix {\n flex: 0;\n display: inline-flex;\n align-items: center;\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n }\n\n .select__suffix {\n flex: 0;\n display: inline-flex;\n align-items: center;\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n }\n\n /* Clear button */\n .select__clear {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-size: inherit;\n color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));\n border: none;\n background: none;\n padding: var(--nile-spacing-none, var(--ng-spacing-none));\n transition: 150ms color;\n cursor: pointer;\n }\n\n .select__clear:hover {\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n }\n\n .select__clear:focus {\n outline: none;\n }\n\n /* Expand icon */\n .select__expand-icon {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n transition: 250ms rotate ease;\n rotate: 0;\n margin-inline-start: var(--nile-spacing-xxxsmall, var(--ng-spacing-md));\n }\n\n .select--open .select__expand-icon {\n rotate: -180deg;\n }\n\n /* Listbox */\n .select__listbox {\n display: block;\n position: relative;\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-md));\n font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-regular));\n background: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border: solid 1px var(--nile-colors-neutral-500, var(--ng-colors-border-secondary-alt));\n border-radius: var(--nile-radius-sm, var(--ng-radius-md));\n padding-block: var(--nile-spacing-none, var(--ng-spacing-xs));\n padding-inline: var(--nile-spacing-none, var(--ng-spacing-xs));\n overflow: auto;\n overscroll-behavior: none;\n /* Make sure it adheres to the popup's auto size */\n max-width: var(--auto-size-available-width);\n max-height: var(--auto-size-available-height);\n box-shadow: var(--nile-box-shadow-none, var(--ng-shadow-xs));\n }\n\n .select__options {\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n color: rgb(133, 129, 129);\n width: 100%;\n }\n\n .select__options__search-enabled {\n padding-top: var(--nile-spacing-10px, var(--ng-spacing-lg));\n width: 100%;\n }\n\n .select__listbox::slotted(nile-divider) {\n --spacing: var(--nile-spacing-xs, var(--ng-spacing-sm));\n }\n\n .select__listbox::slotted(small) {\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-weight: var(--nile-font-weight-semi-bold, var(--ng-font-weight-semibold));\n color: var(--nile-colors-dark-500, var(--ng-colors-text-tertiary-600));\n padding-block: var(--nile-spacing-xs, var(--ng-spacing-sm));\n padding-inline: var(--nile-spacing-xl, var(--ng-spacing-xl));\n }\n\n .select__search {\n position: sticky;\n top: 0px;\n z-index: 1;\n width: calc(100% - 16px);\n padding: var(--nile-spacing-md, var(--ng-spacing-md));\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n margin-bottom: -8px;\n }\n\n .select__footer {\n position: sticky;\n bottom: 0px;\n background: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n border-top: 1px solid var(--nile-colors-neutral-400, var(--ng-colors-border-secondary));\n display: flex;\n height: 15px;\n /* Auto layout */\n display: var(--nile-display-flex, var(--ng-display-flex));\n flex-direction: row;\n align-items: flex-start;\n padding: var(--nile-spacing-md, var(--ng-spacing-md)) var(--nile-spacing-lg, var(--ng-spacing-lg)) var(--nile-spacing-xl, var(--ng-spacing-xl));\n gap: var(--nile-spacing-lg, var(--ng-spacing-lg));\n justify-content: space-between;\n }\n\n .tag__prefix[slot='prefix'] {\n height: 14px;\n display: inline-block;\n overflow: hidden;\n }\n\n .tag__prefix[slot='prefix'] img {\n max-height: 100%;\n }\n\n .select__loader {\n width: 100%;\n text-align: center;\n display: block;\n }\n\n .select__loader--icon {\n margin-top: var(--nile-spacing-xl, var(--ng-spacing-xl));\n animation: spin 0.6s linear infinite;\n }\n\n .select__no-results {\n padding: var(--nile-spacing-lg, var(--ng-spacing-lg));\n }\n\n @keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n\n .select__invisible{\n opacity: 0;\n }\n\n .select__prefix--from-options {\n margin-inline-end: var(--nile-spacing-lg, var(--ng-spacing-md));\n }\n \n .select__hide-default{\n display: none;\n }\n\n .virtualized nile-option[selected] {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-secondary));\n }\n\n .virtualized nile-option[selected]::part(base) {\n color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));\n }\n\n .virtual-select-loader {\n position: absolute;\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 75%;\n }\n\n .select__footer.loading, .select__options.loading {\n opacity: 0.5;\n pointer-events: none;\n }\n\n .virtual-select-loader {\n position: absolute;\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 75%;\n }\n\n .select__footer.loading, .select__options.loading {\n opacity: 0.5;\n pointer-events: none;\n }\n`;\n\nexport default [styles];\n"]}
@@ -8,8 +8,9 @@ import '../nile-icon';
8
8
  import '../nile-popup/nile-popup';
9
9
  import '../nile-tag/nile-tag';
10
10
  import '../nile-checkbox/nile-checkbox';
11
+ import '../nile-loader/nile-loader';
11
12
  import NileElement from '../internal/nile-element';
12
- import type { CSSResultGroup, TemplateResult } from 'lit';
13
+ import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
13
14
  import type { NileFormControl } from '../internal/nile-element';
14
15
  import type NilePopup from '../nile-popup/nile-popup';
15
16
  import type { VirtualOption, RenderItemConfig } from './types.js';
@@ -45,6 +46,10 @@ import type { VirtualOption, RenderItemConfig } from './types.js';
45
46
  * @event nile-hide - Emitted when the select's menu closes.
46
47
  * @event nile-after-hide - Emitted after the select's menu closes and all animations are complete.
47
48
  * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
49
+ * @event nile-search - Emitted when the user types in the search input. The event payload includes the search query for backend search functionality.
50
+ * @event nile-scroll - Emitted when the user scrolls within the virtualized container. The event payload includes scroll position information.
51
+ * @event nile-scroll-start - Emitted when the user starts scrolling within the virtualized container.
52
+ * @event nile-scroll-end - Emitted when the user stops scrolling and reaches the bottom of the virtualized container (debounced).
48
53
  *
49
54
  * @csspart form-control - The form control that wraps the label, input, and help text.
50
55
  * @csspart form-control-label - The label's wrapper.
@@ -72,6 +77,8 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
72
77
  displayLabel: string;
73
78
  selectedOptions: VirtualOption[];
74
79
  oldValue: string | string[];
80
+ private scrollTimeout;
81
+ private scrolling;
75
82
  /** The name of the select, submitted as a name/value pair with form data. */
76
83
  name: string;
77
84
  /** Array of all option items for virtual scrolling */
@@ -88,6 +95,8 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
88
95
  size: 'small' | 'medium' | 'large';
89
96
  /** Placeholder text to show as a hint when the select is empty. */
90
97
  placeholder: string;
98
+ /** Enable automatic resizing of tags area */
99
+ autoResize: boolean;
91
100
  /** Current search value */
92
101
  searchValue: string;
93
102
  /** Enable search functionality */
@@ -98,6 +107,8 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
98
107
  disableLocalSearch: boolean;
99
108
  /** Show loading state */
100
109
  optionsLoading: boolean;
110
+ /** Show loading state using nile-loader */
111
+ loading: boolean;
101
112
  /** Allows more than one option to be selected. */
102
113
  multiple: boolean;
103
114
  /** Help text */
@@ -158,12 +169,14 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
158
169
  */
159
170
  maxOptionsVisible: number;
160
171
  oldMaxOptionsVisible: number;
172
+ showListbox: boolean;
161
173
  /** Gets the validity state object */
162
174
  get validity(): ValidityState;
163
175
  /** Gets the validation message */
164
176
  get validationMessage(): string;
165
177
  connectedCallback(): void;
166
178
  disconnectedCallback(): void;
179
+ protected updated(changedProperties: PropertyValues): void;
167
180
  private initializeComponent;
168
181
  /**
169
182
  * Get display text for an item using renderItemConfig
@@ -190,11 +203,18 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
190
203
  private isEnterOrSpaceKey;
191
204
  private handleEnterOrSpaceKey;
192
205
  private handleDocumentMouseDown;
206
+ /**
207
+ * This is a workaround for an error in the Lit Labs virtualizer.
208
+ * Since there are no specific guidelines available to fix the issue,
209
+ * we are catching only the error message related to the virtualizer.
210
+ */
211
+ private handleWindowError;
193
212
  private handleFooterClick;
194
213
  private toggleShowSelected;
195
214
  private unSelectAll;
196
215
  private handleLabelClick;
197
216
  private handleComboboxMouseDown;
217
+ private resizeController;
198
218
  private shouldIgnoreComboboxClick;
199
219
  private handleComboboxKeyDown;
200
220
  private handleClearClick;
@@ -212,6 +232,7 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
212
232
  handleSearchFocus(): void;
213
233
  handleSearchBlur(): void;
214
234
  handleSearchChange(e: any): void;
235
+ handleScroll(e: Event): void;
215
236
  filterVirtualOptions(searchValue: string): void;
216
237
  private handleInvalid;
217
238
  handleDisabledChange(): void;
@@ -12,6 +12,7 @@ import '../nile-icon';
12
12
  import '../nile-popup/nile-popup';
13
13
  import '../nile-tag/nile-tag';
14
14
  import '../nile-checkbox/nile-checkbox';
15
+ import '../nile-loader/nile-loader';
15
16
  import { animateTo, stopAnimations } from '../internal/animate';
16
17
  import { classMap } from 'lit/directives/class-map.js';
17
18
  import { query, state } from 'lit/decorators.js';
@@ -26,6 +27,7 @@ import { ifDefined } from 'lit/directives/if-defined.js';
26
27
  import { VirtualSelectSelectionManager } from './selection-manager.js';
27
28
  import { VirtualSelectSearchManager } from './search-manager.js';
28
29
  import { VirtualSelectRenderer } from './renderer.js';
30
+ import { ResizeController } from '@lit-labs/observers/resize-controller.js';
29
31
  /**
30
32
  * Nile Virtual Select component.
31
33
  *
@@ -58,6 +60,10 @@ import { VirtualSelectRenderer } from './renderer.js';
58
60
  * @event nile-hide - Emitted when the select's menu closes.
59
61
  * @event nile-after-hide - Emitted after the select's menu closes and all animations are complete.
60
62
  * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
63
+ * @event nile-search - Emitted when the user types in the search input. The event payload includes the search query for backend search functionality.
64
+ * @event nile-scroll - Emitted when the user scrolls within the virtualized container. The event payload includes scroll position information.
65
+ * @event nile-scroll-start - Emitted when the user starts scrolling within the virtualized container.
66
+ * @event nile-scroll-end - Emitted when the user stops scrolling and reaches the bottom of the virtualized container (debounced).
61
67
  *
62
68
  * @csspart form-control - The form control that wraps the label, input, and help text.
63
69
  * @csspart form-control-label - The label's wrapper.
@@ -84,6 +90,7 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
84
90
  this.displayLabel = '';
85
91
  this.selectedOptions = [];
86
92
  this.oldValue = '';
93
+ this.scrolling = false;
87
94
  /** The name of the select, submitted as a name/value pair with form data. */
88
95
  this.name = '';
89
96
  /** Array of all option items for virtual scrolling */
@@ -100,6 +107,8 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
100
107
  this.size = 'medium';
101
108
  /** Placeholder text to show as a hint when the select is empty. */
102
109
  this.placeholder = 'Select...';
110
+ /** Enable automatic resizing of tags area */
111
+ this.autoResize = false;
103
112
  /** Current search value */
104
113
  this.searchValue = '';
105
114
  /** Enable search functionality */
@@ -110,6 +119,8 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
110
119
  this.disableLocalSearch = false;
111
120
  /** Show loading state */
112
121
  this.optionsLoading = false;
122
+ /** Show loading state using nile-loader */
123
+ this.loading = false;
113
124
  /** Allows more than one option to be selected. */
114
125
  this.multiple = false;
115
126
  /** Help text */
@@ -168,6 +179,7 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
168
179
  */
169
180
  this.maxOptionsVisible = 3;
170
181
  this.oldMaxOptionsVisible = 1;
182
+ this.showListbox = false;
171
183
  this.handleDocumentMouseDown = (event) => {
172
184
  if (!this.open)
173
185
  return;
@@ -178,6 +190,27 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
178
190
  this.hide();
179
191
  }
180
192
  };
193
+ /**
194
+ * This is a workaround for an error in the Lit Labs virtualizer.
195
+ * Since there are no specific guidelines available to fix the issue,
196
+ * we are catching only the error message related to the virtualizer.
197
+ */
198
+ this.handleWindowError = (event) => {
199
+ const errorMessage = event.error?.message || event.message || '';
200
+ if (errorMessage.includes('Cannot read properties of null (reading \'insertBefore\')')) {
201
+ event.preventDefault();
202
+ return;
203
+ }
204
+ };
205
+ this.resizeController = new ResizeController(this, {
206
+ callback: (entries) => {
207
+ for (const entry of entries) {
208
+ if (entry.target.classList.contains('select__tags')) {
209
+ this.calculateTotalWidthOfTags();
210
+ }
211
+ }
212
+ }
213
+ });
181
214
  }
182
215
  /** Gets the validity state object */
183
216
  get validity() {
@@ -199,6 +232,25 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
199
232
  }
200
233
  disconnectedCallback() {
201
234
  this.removeOpenListeners();
235
+ // Clear any pending scroll timeout to prevent memory leaks
236
+ if (this.scrollTimeout) {
237
+ clearTimeout(this.scrollTimeout);
238
+ this.scrollTimeout = undefined;
239
+ }
240
+ }
241
+ updated(changedProperties) {
242
+ if (changedProperties.has('value')) {
243
+ this.selectionChanged();
244
+ }
245
+ if (changedProperties.has('autoResize')) {
246
+ const tagsDiv = this.shadowRoot?.querySelector('.select__tags');
247
+ if (this.autoResize && tagsDiv) {
248
+ this.resizeController.observe(tagsDiv);
249
+ }
250
+ else if (tagsDiv) {
251
+ this.resizeController.unobserve(tagsDiv);
252
+ }
253
+ }
202
254
  }
203
255
  initializeComponent() {
204
256
  this.open = false;
@@ -236,16 +288,19 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
236
288
  this.handleDocumentFocusIn = this.handleDocumentFocusIn.bind(this);
237
289
  this.handleDocumentKeyDown = this.handleDocumentKeyDown.bind(this);
238
290
  this.handleDocumentMouseDown = this.handleDocumentMouseDown.bind(this);
291
+ this.handleWindowError = this.handleWindowError.bind(this);
239
292
  }
240
293
  addOpenListeners() {
241
294
  document.addEventListener('focusin', this.handleDocumentFocusIn);
242
295
  document.addEventListener('keydown', this.handleDocumentKeyDown);
243
296
  document.addEventListener('mousedown', this.handleDocumentMouseDown);
297
+ window.addEventListener('error', this.handleWindowError);
244
298
  }
245
299
  removeOpenListeners() {
246
300
  document.removeEventListener('focusin', this.handleDocumentFocusIn);
247
301
  document.removeEventListener('keydown', this.handleDocumentKeyDown);
248
302
  document.removeEventListener('mousedown', this.handleDocumentMouseDown);
303
+ window.removeEventListener('error', this.handleWindowError);
249
304
  }
250
305
  handleFocus() {
251
306
  this.hasFocus = true;
@@ -319,7 +374,10 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
319
374
  this.showSelected = !this.showSelected;
320
375
  if (this.showSelected) {
321
376
  const selectedValues = Array.isArray(this.value) ? this.value : [this.value];
322
- this.data = this.originalOptionItems.filter((item) => selectedValues.includes(item.value));
377
+ this.data = this.originalOptionItems.filter((item) => {
378
+ const itemValue = this.getItemValue(item);
379
+ return selectedValues.some(val => String(val) === String(itemValue));
380
+ });
323
381
  }
324
382
  else {
325
383
  this.data = [...this.originalOptionItems];
@@ -483,9 +541,58 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
483
541
  }
484
542
  handleSearchChange(e) {
485
543
  this.searchValue = e.detail.value;
544
+ this.emit('nile-search', {
545
+ query: this.searchValue,
546
+ name: this.name
547
+ });
486
548
  if (!this.disableLocalSearch) {
487
549
  this.filterVirtualOptions(this.searchValue);
488
550
  this.resetScrollPosition();
551
+ this.updateComplete.then(() => {
552
+ const virtualized = this.shadowRoot?.querySelector('.virtualized');
553
+ if (virtualized) {
554
+ if (this.data.length <= 5) {
555
+ virtualized.classList.add('no-scroll');
556
+ }
557
+ else {
558
+ virtualized.classList.remove('no-scroll');
559
+ }
560
+ }
561
+ });
562
+ }
563
+ }
564
+ handleScroll(e) {
565
+ if (this.showSelected) {
566
+ return;
567
+ }
568
+ const target = e.target;
569
+ this.emit('nile-scroll', {
570
+ scrollTop: target.scrollTop,
571
+ scrollLeft: target.scrollLeft,
572
+ name: this.name
573
+ });
574
+ if (!this.scrolling) {
575
+ this.scrolling = true;
576
+ this.emit('nile-scroll-start', {
577
+ scrollTop: target.scrollTop,
578
+ scrollLeft: target.scrollLeft,
579
+ name: this.name
580
+ });
581
+ }
582
+ clearTimeout(this.scrollTimeout);
583
+ this.scrollTimeout = window.setTimeout(() => {
584
+ if (this.scrolling) {
585
+ this.scrolling = false;
586
+ }
587
+ }, 300);
588
+ const isAtBottom = Math.ceil(target.scrollTop) >= Math.floor(target.scrollHeight - target.offsetHeight);
589
+ if (isAtBottom && !this.searchValue) {
590
+ this.emit('nile-scroll-end', {
591
+ scrollTop: target.scrollTop,
592
+ scrollLeft: target.scrollLeft,
593
+ name: this.name,
594
+ isAtBottom: true
595
+ });
489
596
  }
490
597
  }
491
598
  filterVirtualOptions(searchValue) {
@@ -510,18 +617,18 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
510
617
  this.requestUpdate();
511
618
  }
512
619
  handleDataChange() {
620
+ if (this.data.length > 0 && this.open && !this.showSelected && !this.searchValue) {
621
+ this.originalOptionItems = [...this.data];
622
+ }
513
623
  this.selectionChanged();
514
624
  // Show no results message when data is empty and not loading
515
- if (!this.optionsLoading && this.data.length === 0) {
625
+ if (!this.optionsLoading && !this.loading && this.data.length === 0) {
516
626
  this.showNoResults = true;
517
627
  }
518
628
  else if (this.data.length > 0) {
519
629
  this.showNoResults = false;
520
630
  }
521
631
  this.requestUpdate();
522
- if (this.open) {
523
- this.resetScrollPosition();
524
- }
525
632
  }
526
633
  handleRenderItemConfigChange() {
527
634
  if (this.value && this.data.length > 0) {
@@ -539,9 +646,11 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
539
646
  async handleOpenChange() {
540
647
  if (this.open && !this.disabled) {
541
648
  await this.handleOpen();
649
+ this.showListbox = true;
542
650
  }
543
651
  else {
544
652
  await this.handleClose();
653
+ this.showListbox = false;
545
654
  }
546
655
  }
547
656
  async handleOpen() {
@@ -572,7 +681,7 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
572
681
  this.emit('nile-after-hide', { value: this.value, name: this.name });
573
682
  }
574
683
  initializeOriginalItems() {
575
- if (this.originalOptionItems.length === 0 && this.data.length > 0) {
684
+ if (this.data.length > 0) {
576
685
  this.originalOptionItems = [...this.data];
577
686
  }
578
687
  }
@@ -697,7 +806,7 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
697
806
  >
698
807
  ${this.renderCustomSelect(hasCustomSelect)}
699
808
  ${this.renderCombobox(hasCustomSelect, hasClearIcon)}
700
- ${this.renderListbox()}
809
+ ${this.showListbox ? this.renderListbox() : html ``}
701
810
  </nile-popup>
702
811
  `;
703
812
  }
@@ -915,24 +1024,31 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
915
1024
  : html ``;
916
1025
  }
917
1026
  renderLoader() {
918
- return this.optionsLoading
919
- ? html `
920
- <span part="loader" class="select__loader">
921
- <nile-icon
922
- class="select__loader--icon"
923
- name="var(--nile-icon-button-loading-blue, var(--ng-icon-button-loading-blue))"
924
- method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))"
925
- ></nile-icon>
926
- </span>
927
- `
928
- : html ``;
1027
+ if (this.loading) {
1028
+ return html `
1029
+ <span part="loader" class="virtual-select-loader">
1030
+ <nile-loader size="sm"></nile-loader>
1031
+ </span>
1032
+ `;
1033
+ }
1034
+ if (this.optionsLoading) {
1035
+ return html `
1036
+ <span part="loader" class="select__loader">
1037
+ <nile-icon
1038
+ class="select__loader--icon"
1039
+ name="button-loading-blue"
1040
+ ></nile-icon>
1041
+ </span>
1042
+ `;
1043
+ }
1044
+ return html ``;
929
1045
  }
930
1046
  renderFooter() {
931
1047
  return this.multiple
932
1048
  ? html `
933
1049
  <div
934
1050
  part="footer"
935
- class="select__footer"
1051
+ class="select__footer ${this.loading ? 'loading' : ''}"
936
1052
  @click="${this.handleFooterClick}"
937
1053
  >
938
1054
  <span
@@ -975,7 +1091,7 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
975
1091
  `;
976
1092
  }
977
1093
  getVirtualizedContent() {
978
- return VirtualSelectRenderer.getVirtualizedContent(this.data, this.searchEnabled, this.getDisplayText.bind(this), this.value, this.multiple, this.renderItemConfig?.getDisplayText, this.renderItemConfig?.getValue, this.showNoResults, this.noResultsMessage, this.optionsLoading);
1094
+ return VirtualSelectRenderer.getVirtualizedContent(this.data, this.searchEnabled, this.getDisplayText.bind(this), this.value, this.multiple, this.renderItemConfig?.getDisplayText, this.renderItemConfig?.getValue, this.showNoResults, this.noResultsMessage, this.optionsLoading || this.loading, this.handleScroll.bind(this));
979
1095
  }
980
1096
  nileInput(value) {
981
1097
  this.emit('nile-input', value);
@@ -1035,14 +1151,14 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
1035
1151
  }
1036
1152
  resetScrollPosition() {
1037
1153
  this.updateComplete.then(() => {
1038
- if (this.virtualizedContainer) {
1154
+ if (this.virtualizedContainer && this.virtualizedContainer.isConnected) {
1039
1155
  this.virtualizedContainer.scrollTop = 0;
1040
1156
  const listbox = this.shadowRoot?.querySelector('.select__listbox');
1041
- if (listbox) {
1157
+ if (listbox && listbox.isConnected) {
1042
1158
  listbox.scrollTop = 0;
1043
1159
  }
1044
1160
  const virtualizer = this.virtualizedContainer.querySelector('lit-virtualizer');
1045
- if (virtualizer) {
1161
+ if (virtualizer && virtualizer.isConnected) {
1046
1162
  virtualizer.scrollTop = 0;
1047
1163
  }
1048
1164
  }
@@ -1100,6 +1216,9 @@ __decorate([
1100
1216
  __decorate([
1101
1217
  property()
1102
1218
  ], NileVirtualSelect.prototype, "placeholder", void 0);
1219
+ __decorate([
1220
+ property({ type: Boolean })
1221
+ ], NileVirtualSelect.prototype, "autoResize", void 0);
1103
1222
  __decorate([
1104
1223
  state()
1105
1224
  ], NileVirtualSelect.prototype, "searchValue", void 0);
@@ -1115,6 +1234,9 @@ __decorate([
1115
1234
  __decorate([
1116
1235
  property({ type: Boolean, reflect: true })
1117
1236
  ], NileVirtualSelect.prototype, "optionsLoading", void 0);
1237
+ __decorate([
1238
+ property({ type: Boolean, reflect: true, attribute: true })
1239
+ ], NileVirtualSelect.prototype, "loading", void 0);
1118
1240
  __decorate([
1119
1241
  property({ type: Boolean, reflect: true })
1120
1242
  ], NileVirtualSelect.prototype, "multiple", void 0);
@@ -1187,6 +1309,9 @@ __decorate([
1187
1309
  __decorate([
1188
1310
  state()
1189
1311
  ], NileVirtualSelect.prototype, "oldMaxOptionsVisible", void 0);
1312
+ __decorate([
1313
+ state()
1314
+ ], NileVirtualSelect.prototype, "showListbox", void 0);
1190
1315
  __decorate([
1191
1316
  watch('disabled', { waitUntilFirstUpdate: true })
1192
1317
  ], NileVirtualSelect.prototype, "handleDisabledChange", null);