@aquera/nile-elements 0.1.61-beta-1.0 → 0.1.61

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 (567) hide show
  1. package/README.md +19 -0
  2. package/demo/index.html +10 -45
  3. package/dist/{fixture-f2693d97.esm.js → fixture-e7023246.esm.js} +1 -1
  4. package/dist/{fixture-324a7ef9.cjs.js → fixture-fe6c932e.cjs.js} +2 -2
  5. package/dist/{fixture-324a7ef9.cjs.js.map → fixture-fe6c932e.cjs.js.map} +1 -1
  6. package/dist/index.cjs.js +1 -1
  7. package/dist/index.esm.js +1 -1
  8. package/dist/index.js +1677 -573
  9. package/dist/internal/form.cjs.js +1 -1
  10. package/dist/internal/form.cjs.js.map +1 -1
  11. package/dist/internal/form.esm.js +1 -1
  12. package/dist/internal/resizable-table-helper.cjs.js +2 -0
  13. package/dist/internal/resizable-table-helper.cjs.js.map +1 -0
  14. package/dist/internal/resizable-table-helper.esm.js +1 -0
  15. package/dist/internal/resizable-table-styles.cjs.js +2 -0
  16. package/dist/internal/resizable-table-styles.cjs.js.map +1 -0
  17. package/dist/internal/resizable-table-styles.esm.js +120 -0
  18. package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
  19. package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
  20. package/dist/nile-auto-complete/index.cjs.js +1 -1
  21. package/dist/nile-auto-complete/index.esm.js +1 -1
  22. package/dist/nile-auto-complete/nile-auto-complete.cjs.js +1 -17
  23. package/dist/nile-auto-complete/nile-auto-complete.cjs.js.map +1 -1
  24. package/dist/nile-auto-complete/nile-auto-complete.esm.js +8 -29
  25. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
  26. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js.map +1 -1
  27. package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
  28. package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
  29. package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
  30. package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
  31. package/dist/nile-badge/nile-badge.test.esm.js +1 -1
  32. package/dist/nile-button/nile-button.test.cjs.js +1 -1
  33. package/dist/nile-button/nile-button.test.esm.js +1 -1
  34. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
  35. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
  36. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  37. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
  38. package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
  39. package/dist/nile-card/nile-card.test.cjs.js +1 -1
  40. package/dist/nile-card/nile-card.test.esm.js +1 -1
  41. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
  42. package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
  43. package/dist/nile-chip/nile-chip.cjs.js +1 -1
  44. package/dist/nile-chip/nile-chip.cjs.js.map +1 -1
  45. package/dist/nile-chip/nile-chip.esm.js +1 -1
  46. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  47. package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
  48. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  49. package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
  50. package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
  51. package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
  52. package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
  53. package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
  54. package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
  55. package/dist/nile-empty-state/nile-empty-state.cjs.js +1 -1
  56. package/dist/nile-empty-state/nile-empty-state.cjs.js.map +1 -1
  57. package/dist/nile-empty-state/nile-empty-state.esm.js +13 -13
  58. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
  59. package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
  60. package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
  61. package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
  62. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +1 -1
  63. package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +1 -1
  64. package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
  65. package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
  66. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
  67. package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
  68. package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
  69. package/dist/nile-hero/nile-hero.test.esm.js +1 -1
  70. package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
  71. package/dist/nile-icon/nile-icon.test.esm.js +1 -1
  72. package/dist/nile-input/nile-input.test.cjs.js +1 -1
  73. package/dist/nile-input/nile-input.test.esm.js +1 -1
  74. package/dist/nile-link/nile-link.test.cjs.js +1 -1
  75. package/dist/nile-link/nile-link.test.esm.js +1 -1
  76. package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
  77. package/dist/nile-loader/nile-loader.test.esm.js +1 -1
  78. package/dist/nile-option/nile-option.cjs.js +1 -1
  79. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  80. package/dist/nile-option/nile-option.esm.js +2 -2
  81. package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
  82. package/dist/nile-popover/nile-popover.test.esm.js +1 -1
  83. package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
  84. package/dist/nile-popup/nile-popup.test.esm.js +1 -1
  85. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
  86. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
  87. package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
  88. package/dist/nile-radio/nile-radio.test.esm.js +1 -1
  89. package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
  90. package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
  91. package/dist/nile-select/index.cjs.js +1 -1
  92. package/dist/nile-select/index.esm.js +1 -1
  93. package/dist/nile-select/nile-select.cjs.js +1 -1
  94. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  95. package/dist/nile-select/nile-select.esm.js +2 -2
  96. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  97. package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
  98. package/dist/nile-select/nile-select.test.esm.js +2 -2
  99. package/dist/nile-select/virtual-scroll-helper.cjs.js +2 -0
  100. package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -0
  101. package/dist/nile-select/virtual-scroll-helper.esm.js +38 -0
  102. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
  103. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
  104. package/dist/nile-slider/nile-slider.css.cjs.js +1 -1
  105. package/dist/nile-slider/nile-slider.css.cjs.js.map +1 -1
  106. package/dist/nile-slider/nile-slider.css.esm.js +1 -1
  107. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
  108. package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
  109. package/dist/nile-table-body/index.cjs.js +1 -1
  110. package/dist/nile-table-body/index.esm.js +1 -1
  111. package/dist/nile-table-body/nile-table-body.cjs.js +1 -1
  112. package/dist/nile-table-body/nile-table-body.cjs.js.map +1 -1
  113. package/dist/nile-table-body/nile-table-body.css.cjs.js +1 -1
  114. package/dist/nile-table-body/nile-table-body.css.cjs.js.map +1 -1
  115. package/dist/nile-table-body/nile-table-body.css.esm.js +4 -2
  116. package/dist/nile-table-body/nile-table-body.esm.js +3 -2
  117. package/dist/nile-table-cell-item/index.cjs.js +1 -1
  118. package/dist/nile-table-cell-item/index.esm.js +1 -1
  119. package/dist/nile-table-cell-item/nile-table-cell-item.cjs.js +1 -1
  120. package/dist/nile-table-cell-item/nile-table-cell-item.cjs.js.map +1 -1
  121. package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js +1 -1
  122. package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js.map +1 -1
  123. package/dist/nile-table-cell-item/nile-table-cell-item.css.esm.js +20 -3
  124. package/dist/nile-table-cell-item/nile-table-cell-item.esm.js +8 -3
  125. package/dist/nile-table-header-item/index.cjs.js +1 -1
  126. package/dist/nile-table-header-item/index.esm.js +1 -1
  127. package/dist/nile-table-header-item/nile-table-header-item.cjs.js +1 -1
  128. package/dist/nile-table-header-item/nile-table-header-item.cjs.js.map +1 -1
  129. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js +1 -1
  130. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js.map +1 -1
  131. package/dist/nile-table-header-item/nile-table-header-item.css.esm.js +7 -2
  132. package/dist/nile-table-header-item/nile-table-header-item.esm.js +9 -8
  133. package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
  134. package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
  135. package/dist/nile-virtual-select/index.cjs.js +2 -0
  136. package/dist/nile-virtual-select/index.esm.js +1 -0
  137. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +2 -0
  138. package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -0
  139. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +2 -0
  140. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -0
  141. package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +477 -0
  142. package/dist/nile-virtual-select/nile-virtual-select.esm.js +227 -0
  143. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +2 -0
  144. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js.map +1 -0
  145. package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +93 -0
  146. package/dist/nile-virtual-select/renderer.cjs.js +2 -0
  147. package/dist/nile-virtual-select/renderer.cjs.js.map +1 -0
  148. package/dist/nile-virtual-select/renderer.esm.js +27 -0
  149. package/dist/nile-virtual-select/search-manager.cjs.js +2 -0
  150. package/dist/nile-virtual-select/search-manager.cjs.js.map +1 -0
  151. package/dist/nile-virtual-select/search-manager.esm.js +1 -0
  152. package/dist/nile-virtual-select/selection-manager.cjs.js +2 -0
  153. package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -0
  154. package/dist/nile-virtual-select/selection-manager.esm.js +1 -0
  155. package/dist/{nile-file-upload/types/file-upload.type.cjs.js → nile-virtual-select/types.cjs.js} +1 -1
  156. package/dist/nile-virtual-select/types.cjs.js.map +1 -0
  157. package/dist/src/index.d.ts +2 -0
  158. package/dist/src/index.js +2 -0
  159. package/dist/src/index.js.map +1 -1
  160. package/dist/src/internal/form.js +3 -3
  161. package/dist/src/internal/form.js.map +1 -1
  162. package/dist/src/nile-chip/nile-chip.js +10 -1
  163. package/dist/src/nile-chip/nile-chip.js.map +1 -1
  164. package/dist/src/nile-empty-state/nile-empty-state.js +11 -11
  165. package/dist/src/nile-empty-state/nile-empty-state.js.map +1 -1
  166. package/dist/src/nile-option/nile-option.d.ts +2 -1
  167. package/dist/src/nile-option/nile-option.js +8 -5
  168. package/dist/src/nile-option/nile-option.js.map +1 -1
  169. package/dist/src/nile-select/nile-select.d.ts +11 -2
  170. package/dist/src/nile-select/nile-select.js +37 -18
  171. package/dist/src/nile-select/nile-select.js.map +1 -1
  172. package/dist/src/nile-table-body/nile-table-body.css.js +3 -0
  173. package/dist/src/nile-table-body/nile-table-body.css.js.map +1 -1
  174. package/dist/src/nile-table-body/nile-table-body.d.ts +2 -0
  175. package/dist/src/nile-table-body/nile-table-body.js +10 -0
  176. package/dist/src/nile-table-body/nile-table-body.js.map +1 -1
  177. package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js +19 -1
  178. package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js.map +1 -1
  179. package/dist/src/nile-table-cell-item/nile-table-cell-item.d.ts +3 -0
  180. package/dist/src/nile-table-cell-item/nile-table-cell-item.js +27 -8
  181. package/dist/src/nile-table-cell-item/nile-table-cell-item.js.map +1 -1
  182. package/dist/src/nile-table-header-item/nile-table-header-item.css.js +6 -0
  183. package/dist/src/nile-table-header-item/nile-table-header-item.css.js.map +1 -1
  184. package/dist/src/nile-table-header-item/nile-table-header-item.d.ts +3 -0
  185. package/dist/src/nile-table-header-item/nile-table-header-item.js +22 -15
  186. package/dist/src/nile-table-header-item/nile-table-header-item.js.map +1 -1
  187. package/dist/tsconfig.tsbuildinfo +1 -1
  188. package/dist/virtualize-a4a40d96.esm.js +22 -0
  189. package/dist/virtualize-b6a2fbe0.cjs.js +18 -0
  190. package/dist/virtualize-b6a2fbe0.cjs.js.map +1 -0
  191. package/package.json +3 -3
  192. package/src/index.ts +4 -1
  193. package/src/internal/form.ts +3 -3
  194. package/src/internal/resizable-table-helper.ts +151 -0
  195. package/src/internal/resizable-table-styles.ts +144 -0
  196. package/src/nile-chip/nile-chip.ts +9 -1
  197. package/src/nile-empty-state/nile-empty-state.ts +11 -11
  198. package/src/nile-option/nile-option.ts +6 -2
  199. package/src/nile-select/nile-select.ts +35 -9
  200. package/src/nile-select/virtual-scroll-helper.ts +56 -0
  201. package/src/nile-slider/index.ts +1 -0
  202. package/src/nile-slider/nile-slider.css.ts +119 -0
  203. package/src/nile-slider/nile-slider.template.ts +77 -0
  204. package/src/nile-slider/nile-slider.ts +215 -0
  205. package/src/nile-slider/types/nile-slider.enums.ts +10 -0
  206. package/src/nile-slider/types/nile-slider.types.ts +13 -0
  207. package/src/nile-slider/utils/nile-slider.utils.ts +136 -0
  208. package/src/nile-table-body/nile-table-body.css.ts +3 -0
  209. package/src/nile-table-body/nile-table-body.ts +9 -0
  210. package/src/nile-table-cell-item/nile-table-cell-item.css.ts +19 -1
  211. package/src/nile-table-cell-item/nile-table-cell-item.ts +22 -5
  212. package/src/nile-table-header-item/nile-table-header-item.css.ts +6 -0
  213. package/src/nile-table-header-item/nile-table-header-item.ts +11 -5
  214. package/src/nile-virtual-select/index.ts +1 -0
  215. package/src/nile-virtual-select/nile-virtual-select.css.ts +491 -0
  216. package/src/nile-virtual-select/nile-virtual-select.test.ts +774 -0
  217. package/src/nile-virtual-select/nile-virtual-select.ts +1314 -0
  218. package/src/nile-virtual-select/renderer.ts +99 -0
  219. package/src/nile-virtual-select/search-manager.ts +50 -0
  220. package/src/nile-virtual-select/selection-manager.ts +75 -0
  221. package/src/nile-virtual-select/types.ts +54 -0
  222. package/vscode-html-custom-data.json +373 -50
  223. package/dist/aquera-nile-elements-0.1.57-beta-2.0.tgz +0 -0
  224. package/dist/axe.min-2b379f29.cjs.js +0 -12
  225. package/dist/axe.min-2b379f29.cjs.js.map +0 -1
  226. package/dist/axe.min-c2cd8733.esm.js +0 -12
  227. package/dist/fixture-add72f26.esm.js +0 -569
  228. package/dist/fixture-ba65eb22.esm.js +0 -569
  229. package/dist/fixture-c1bd203f.cjs.js +0 -395
  230. package/dist/fixture-c1bd203f.cjs.js.map +0 -1
  231. package/dist/fixture-cb376a7f.cjs.js +0 -395
  232. package/dist/fixture-cb376a7f.cjs.js.map +0 -1
  233. package/dist/lit-html-39a6718c.esm.js +0 -6
  234. package/dist/lit-html-9b3af046.cjs.js +0 -6
  235. package/dist/lit-html-9b3af046.cjs.js.map +0 -1
  236. package/dist/nile-file-preview/index.cjs.js +0 -2
  237. package/dist/nile-file-preview/index.esm.js +0 -1
  238. package/dist/nile-file-preview/nile-file-preview.cjs.js +0 -2
  239. package/dist/nile-file-preview/nile-file-preview.cjs.js.map +0 -1
  240. package/dist/nile-file-preview/nile-file-preview.css.cjs.js +0 -2
  241. package/dist/nile-file-preview/nile-file-preview.css.cjs.js.map +0 -1
  242. package/dist/nile-file-preview/nile-file-preview.css.esm.js +0 -594
  243. package/dist/nile-file-preview/nile-file-preview.esm.js +0 -3
  244. package/dist/nile-file-preview/nile-file-preview.template.cjs.js +0 -2
  245. package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +0 -1
  246. package/dist/nile-file-preview/nile-file-preview.template.esm.js +0 -176
  247. package/dist/nile-file-preview/nile-file-preview.test.cjs.js +0 -2
  248. package/dist/nile-file-preview/nile-file-preview.test.cjs.js.map +0 -1
  249. package/dist/nile-file-preview/nile-file-preview.test.esm.js +0 -1
  250. package/dist/nile-file-preview/types/index.cjs.js +0 -2
  251. package/dist/nile-file-preview/types/index.cjs.js.map +0 -1
  252. package/dist/nile-file-preview/types/index.esm.js +0 -1
  253. package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js +0 -2
  254. package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js.map +0 -1
  255. package/dist/nile-file-preview/types/nile-file-preview.enums.esm.js +0 -1
  256. package/dist/nile-file-preview/types/nile-file-preview.interface.cjs.js +0 -2
  257. package/dist/nile-file-preview/types/nile-file-preview.interface.cjs.js.map +0 -1
  258. package/dist/nile-file-preview/utils/index.cjs.js +0 -2
  259. package/dist/nile-file-preview/utils/index.cjs.js.map +0 -1
  260. package/dist/nile-file-preview/utils/index.esm.js +0 -1
  261. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js +0 -2
  262. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js.map +0 -1
  263. package/dist/nile-file-preview/utils/nile-file-preview.util.esm.js +0 -1
  264. package/dist/nile-file-upload/index.cjs.js +0 -2
  265. package/dist/nile-file-upload/index.cjs.js.map +0 -1
  266. package/dist/nile-file-upload/index.esm.js +0 -1
  267. package/dist/nile-file-upload/nile-file-upload.cjs.js +0 -2
  268. package/dist/nile-file-upload/nile-file-upload.cjs.js.map +0 -1
  269. package/dist/nile-file-upload/nile-file-upload.css.cjs.js +0 -2
  270. package/dist/nile-file-upload/nile-file-upload.css.cjs.js.map +0 -1
  271. package/dist/nile-file-upload/nile-file-upload.css.esm.js +0 -585
  272. package/dist/nile-file-upload/nile-file-upload.esm.js +0 -3
  273. package/dist/nile-file-upload/nile-file-upload.template.cjs.js +0 -10
  274. package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +0 -1
  275. package/dist/nile-file-upload/nile-file-upload.template.esm.js +0 -109
  276. package/dist/nile-file-upload/nile-file-upload.test.cjs.js +0 -2
  277. package/dist/nile-file-upload/nile-file-upload.test.cjs.js.map +0 -1
  278. package/dist/nile-file-upload/nile-file-upload.test.esm.js +0 -1
  279. package/dist/nile-file-upload/types/file-upload.enums.cjs.js +0 -2
  280. package/dist/nile-file-upload/types/file-upload.enums.cjs.js.map +0 -1
  281. package/dist/nile-file-upload/types/file-upload.enums.esm.js +0 -1
  282. package/dist/nile-file-upload/types/file-upload.type.cjs.js.map +0 -1
  283. package/dist/nile-file-upload/types/file-upload.type.esm.js +0 -1
  284. package/dist/nile-file-upload/types/index.cjs.js +0 -2
  285. package/dist/nile-file-upload/types/index.cjs.js.map +0 -1
  286. package/dist/nile-file-upload/types/index.esm.js +0 -1
  287. package/dist/nile-file-upload/utils/drag-drop.util.cjs.js +0 -2
  288. package/dist/nile-file-upload/utils/drag-drop.util.cjs.js.map +0 -1
  289. package/dist/nile-file-upload/utils/drag-drop.util.esm.js +0 -1
  290. package/dist/nile-file-upload/utils/file-validation.util.cjs.js +0 -3
  291. package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +0 -1
  292. package/dist/nile-file-upload/utils/file-validation.util.esm.js +0 -1
  293. package/dist/src/nile-file-preview/index.d.ts +0 -1
  294. package/dist/src/nile-file-preview/index.js +0 -2
  295. package/dist/src/nile-file-preview/index.js.map +0 -1
  296. package/dist/src/nile-file-preview/nile-file-preview.css.d.ts +0 -12
  297. package/dist/src/nile-file-preview/nile-file-preview.css.js +0 -606
  298. package/dist/src/nile-file-preview/nile-file-preview.css.js.map +0 -1
  299. package/dist/src/nile-file-preview/nile-file-preview.d.ts +0 -50
  300. package/dist/src/nile-file-preview/nile-file-preview.js +0 -171
  301. package/dist/src/nile-file-preview/nile-file-preview.js.map +0 -1
  302. package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +0 -13
  303. package/dist/src/nile-file-preview/nile-file-preview.template.js +0 -208
  304. package/dist/src/nile-file-preview/nile-file-preview.template.js.map +0 -1
  305. package/dist/src/nile-file-preview/nile-file-preview.test.d.ts +0 -7
  306. package/dist/src/nile-file-preview/nile-file-preview.test.js +0 -30
  307. package/dist/src/nile-file-preview/nile-file-preview.test.js.map +0 -1
  308. package/dist/src/nile-file-preview/types/index.d.ts +0 -2
  309. package/dist/src/nile-file-preview/types/index.js +0 -3
  310. package/dist/src/nile-file-preview/types/index.js.map +0 -1
  311. package/dist/src/nile-file-preview/types/nile-file-preview.enums.d.ts +0 -28
  312. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js +0 -33
  313. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js.map +0 -1
  314. package/dist/src/nile-file-preview/types/nile-file-preview.interface.d.ts +0 -4
  315. package/dist/src/nile-file-preview/types/nile-file-preview.interface.js +0 -2
  316. package/dist/src/nile-file-preview/types/nile-file-preview.interface.js.map +0 -1
  317. package/dist/src/nile-file-preview/utils/index.d.ts +0 -1
  318. package/dist/src/nile-file-preview/utils/index.js +0 -2
  319. package/dist/src/nile-file-preview/utils/index.js.map +0 -1
  320. package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +0 -9
  321. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +0 -63
  322. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +0 -1
  323. package/dist/src/nile-file-upload/index.d.ts +0 -1
  324. package/dist/src/nile-file-upload/index.js +0 -2
  325. package/dist/src/nile-file-upload/index.js.map +0 -1
  326. package/dist/src/nile-file-upload/nile-file-upload.css.d.ts +0 -12
  327. package/dist/src/nile-file-upload/nile-file-upload.css.js +0 -597
  328. package/dist/src/nile-file-upload/nile-file-upload.css.js.map +0 -1
  329. package/dist/src/nile-file-upload/nile-file-upload.d.ts +0 -50
  330. package/dist/src/nile-file-upload/nile-file-upload.js +0 -182
  331. package/dist/src/nile-file-upload/nile-file-upload.js.map +0 -1
  332. package/dist/src/nile-file-upload/nile-file-upload.template.d.ts +0 -10
  333. package/dist/src/nile-file-upload/nile-file-upload.template.js +0 -116
  334. package/dist/src/nile-file-upload/nile-file-upload.template.js.map +0 -1
  335. package/dist/src/nile-file-upload/nile-file-upload.test.d.ts +0 -7
  336. package/dist/src/nile-file-upload/nile-file-upload.test.js +0 -30
  337. package/dist/src/nile-file-upload/nile-file-upload.test.js.map +0 -1
  338. package/dist/src/nile-file-upload/types/file-upload.enums.d.ts +0 -39
  339. package/dist/src/nile-file-upload/types/file-upload.enums.js +0 -46
  340. package/dist/src/nile-file-upload/types/file-upload.enums.js.map +0 -1
  341. package/dist/src/nile-file-upload/types/file-upload.type.d.ts +0 -4
  342. package/dist/src/nile-file-upload/types/file-upload.type.js +0 -2
  343. package/dist/src/nile-file-upload/types/file-upload.type.js.map +0 -1
  344. package/dist/src/nile-file-upload/types/index.d.ts +0 -2
  345. package/dist/src/nile-file-upload/types/index.js +0 -3
  346. package/dist/src/nile-file-upload/types/index.js.map +0 -1
  347. package/dist/src/nile-file-upload/utils/drag-drop.util.d.ts +0 -21
  348. package/dist/src/nile-file-upload/utils/drag-drop.util.js +0 -82
  349. package/dist/src/nile-file-upload/utils/drag-drop.util.js.map +0 -1
  350. package/dist/src/nile-file-upload/utils/file-validation.util.d.ts +0 -12
  351. package/dist/src/nile-file-upload/utils/file-validation.util.js +0 -154
  352. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +0 -1
  353. package/dist/src/nile-icon/icons/svg/ng-activity.d.ts +0 -5
  354. package/dist/src/nile-icon/icons/svg/ng-activity.js +0 -5
  355. package/dist/src/nile-icon/icons/svg/ng-activity.js.map +0 -1
  356. package/dist/src/nile-icon/icons/svg/ng-align-center.d.ts +0 -5
  357. package/dist/src/nile-icon/icons/svg/ng-align-center.js +0 -5
  358. package/dist/src/nile-icon/icons/svg/ng-align-center.js.map +0 -1
  359. package/dist/src/nile-icon/icons/svg/ng-annotation-x.d.ts +0 -5
  360. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js +0 -5
  361. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js.map +0 -1
  362. package/dist/src/nile-icon/icons/svg/ng-arrow-down.d.ts +0 -5
  363. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js +0 -5
  364. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js.map +0 -1
  365. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.d.ts +0 -5
  366. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js +0 -5
  367. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js.map +0 -1
  368. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.d.ts +0 -5
  369. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js +0 -5
  370. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js.map +0 -1
  371. package/dist/src/nile-icon/icons/svg/ng-arrow-up.d.ts +0 -5
  372. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js +0 -5
  373. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js.map +0 -1
  374. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.d.ts +0 -5
  375. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js +0 -5
  376. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js.map +0 -1
  377. package/dist/src/nile-icon/icons/svg/ng-bell-01.d.ts +0 -5
  378. package/dist/src/nile-icon/icons/svg/ng-bell-01.js +0 -5
  379. package/dist/src/nile-icon/icons/svg/ng-bell-01.js.map +0 -1
  380. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.d.ts +0 -5
  381. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js +0 -5
  382. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js.map +0 -1
  383. package/dist/src/nile-icon/icons/svg/ng-bold-01.d.ts +0 -5
  384. package/dist/src/nile-icon/icons/svg/ng-bold-01.js +0 -5
  385. package/dist/src/nile-icon/icons/svg/ng-bold-01.js.map +0 -1
  386. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.d.ts +0 -5
  387. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js +0 -5
  388. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js.map +0 -1
  389. package/dist/src/nile-icon/icons/svg/ng-calendar.d.ts +0 -5
  390. package/dist/src/nile-icon/icons/svg/ng-calendar.js +0 -5
  391. package/dist/src/nile-icon/icons/svg/ng-calendar.js.map +0 -1
  392. package/dist/src/nile-icon/icons/svg/ng-check-circle.d.ts +0 -5
  393. package/dist/src/nile-icon/icons/svg/ng-check-circle.js +0 -5
  394. package/dist/src/nile-icon/icons/svg/ng-check-circle.js.map +0 -1
  395. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.d.ts +0 -5
  396. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js +0 -5
  397. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js.map +0 -1
  398. package/dist/src/nile-icon/icons/svg/ng-chevron-down.d.ts +0 -5
  399. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js +0 -5
  400. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js.map +0 -1
  401. package/dist/src/nile-icon/icons/svg/ng-chevron-left.d.ts +0 -5
  402. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js +0 -5
  403. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js.map +0 -1
  404. package/dist/src/nile-icon/icons/svg/ng-chevron-right.d.ts +0 -5
  405. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js +0 -5
  406. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js.map +0 -1
  407. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.d.ts +0 -5
  408. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js +0 -5
  409. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js.map +0 -1
  410. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.d.ts +0 -5
  411. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js +0 -5
  412. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js.map +0 -1
  413. package/dist/src/nile-icon/icons/svg/ng-chevron-up.d.ts +0 -5
  414. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js +0 -5
  415. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js.map +0 -1
  416. package/dist/src/nile-icon/icons/svg/ng-copy-03.d.ts +0 -5
  417. package/dist/src/nile-icon/icons/svg/ng-copy-03.js +0 -5
  418. package/dist/src/nile-icon/icons/svg/ng-copy-03.js.map +0 -1
  419. package/dist/src/nile-icon/icons/svg/ng-dots-grid.d.ts +0 -5
  420. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js +0 -5
  421. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js.map +0 -1
  422. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.d.ts +0 -5
  423. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js +0 -5
  424. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js.map +0 -1
  425. package/dist/src/nile-icon/icons/svg/ng-download-01.d.ts +0 -5
  426. package/dist/src/nile-icon/icons/svg/ng-download-01.js +0 -5
  427. package/dist/src/nile-icon/icons/svg/ng-download-01.js.map +0 -1
  428. package/dist/src/nile-icon/icons/svg/ng-dropdown.d.ts +0 -5
  429. package/dist/src/nile-icon/icons/svg/ng-dropdown.js +0 -5
  430. package/dist/src/nile-icon/icons/svg/ng-dropdown.js.map +0 -1
  431. package/dist/src/nile-icon/icons/svg/ng-edit-02.d.ts +0 -5
  432. package/dist/src/nile-icon/icons/svg/ng-edit-02.js +0 -5
  433. package/dist/src/nile-icon/icons/svg/ng-edit-02.js.map +0 -1
  434. package/dist/src/nile-icon/icons/svg/ng-edit-05.d.ts +0 -5
  435. package/dist/src/nile-icon/icons/svg/ng-edit-05.js +0 -5
  436. package/dist/src/nile-icon/icons/svg/ng-edit-05.js.map +0 -1
  437. package/dist/src/nile-icon/icons/svg/ng-expand-06.d.ts +0 -5
  438. package/dist/src/nile-icon/icons/svg/ng-expand-06.js +0 -5
  439. package/dist/src/nile-icon/icons/svg/ng-expand-06.js.map +0 -1
  440. package/dist/src/nile-icon/icons/svg/ng-eye-off.d.ts +0 -5
  441. package/dist/src/nile-icon/icons/svg/ng-eye-off.js +0 -5
  442. package/dist/src/nile-icon/icons/svg/ng-eye-off.js.map +0 -1
  443. package/dist/src/nile-icon/icons/svg/ng-eye.d.ts +0 -5
  444. package/dist/src/nile-icon/icons/svg/ng-eye.js +0 -5
  445. package/dist/src/nile-icon/icons/svg/ng-eye.js.map +0 -1
  446. package/dist/src/nile-icon/icons/svg/ng-file-02.d.ts +0 -5
  447. package/dist/src/nile-icon/icons/svg/ng-file-02.js +0 -5
  448. package/dist/src/nile-icon/icons/svg/ng-file-02.js.map +0 -1
  449. package/dist/src/nile-icon/icons/svg/ng-file-check-02.d.ts +0 -5
  450. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js +0 -5
  451. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js.map +0 -1
  452. package/dist/src/nile-icon/icons/svg/ng-file-question-03.d.ts +0 -5
  453. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js +0 -5
  454. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js.map +0 -1
  455. package/dist/src/nile-icon/icons/svg/ng-filter-lines.d.ts +0 -5
  456. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js +0 -5
  457. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js.map +0 -1
  458. package/dist/src/nile-icon/icons/svg/ng-grid-01.d.ts +0 -5
  459. package/dist/src/nile-icon/icons/svg/ng-grid-01.js +0 -5
  460. package/dist/src/nile-icon/icons/svg/ng-grid-01.js.map +0 -1
  461. package/dist/src/nile-icon/icons/svg/ng-help-circle.d.ts +0 -5
  462. package/dist/src/nile-icon/icons/svg/ng-help-circle.js +0 -5
  463. package/dist/src/nile-icon/icons/svg/ng-help-circle.js.map +0 -1
  464. package/dist/src/nile-icon/icons/svg/ng-image-user-left.d.ts +0 -5
  465. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js +0 -5
  466. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js.map +0 -1
  467. package/dist/src/nile-icon/icons/svg/ng-info-circle.d.ts +0 -5
  468. package/dist/src/nile-icon/icons/svg/ng-info-circle.js +0 -5
  469. package/dist/src/nile-icon/icons/svg/ng-info-circle.js.map +0 -1
  470. package/dist/src/nile-icon/icons/svg/ng-italic-01.d.ts +0 -5
  471. package/dist/src/nile-icon/icons/svg/ng-italic-01.js +0 -5
  472. package/dist/src/nile-icon/icons/svg/ng-italic-01.js.map +0 -1
  473. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.d.ts +0 -5
  474. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js +0 -5
  475. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js.map +0 -1
  476. package/dist/src/nile-icon/icons/svg/ng-list.d.ts +0 -5
  477. package/dist/src/nile-icon/icons/svg/ng-list.js +0 -5
  478. package/dist/src/nile-icon/icons/svg/ng-list.js.map +0 -1
  479. package/dist/src/nile-icon/icons/svg/ng-log-out-01.d.ts +0 -5
  480. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js +0 -5
  481. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js.map +0 -1
  482. package/dist/src/nile-icon/icons/svg/ng-mail-01.d.ts +0 -5
  483. package/dist/src/nile-icon/icons/svg/ng-mail-01.js +0 -5
  484. package/dist/src/nile-icon/icons/svg/ng-mail-01.js.map +0 -1
  485. package/dist/src/nile-icon/icons/svg/ng-mail-04.d.ts +0 -5
  486. package/dist/src/nile-icon/icons/svg/ng-mail-04.js +0 -5
  487. package/dist/src/nile-icon/icons/svg/ng-mail-04.js.map +0 -1
  488. package/dist/src/nile-icon/icons/svg/ng-menu-05.d.ts +0 -5
  489. package/dist/src/nile-icon/icons/svg/ng-menu-05.js +0 -5
  490. package/dist/src/nile-icon/icons/svg/ng-menu-05.js.map +0 -1
  491. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.d.ts +0 -5
  492. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js +0 -5
  493. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js.map +0 -1
  494. package/dist/src/nile-icon/icons/svg/ng-minimize-02.d.ts +0 -5
  495. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js +0 -5
  496. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js.map +0 -1
  497. package/dist/src/nile-icon/icons/svg/ng-plus.d.ts +0 -5
  498. package/dist/src/nile-icon/icons/svg/ng-plus.js +0 -5
  499. package/dist/src/nile-icon/icons/svg/ng-plus.js.map +0 -1
  500. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.d.ts +0 -5
  501. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js +0 -5
  502. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js.map +0 -1
  503. package/dist/src/nile-icon/icons/svg/ng-rocket-02.d.ts +0 -5
  504. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js +0 -5
  505. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js.map +0 -1
  506. package/dist/src/nile-icon/icons/svg/ng-search-lg.d.ts +0 -5
  507. package/dist/src/nile-icon/icons/svg/ng-search-lg.js +0 -5
  508. package/dist/src/nile-icon/icons/svg/ng-search-lg.js.map +0 -1
  509. package/dist/src/nile-icon/icons/svg/ng-send-01.d.ts +0 -5
  510. package/dist/src/nile-icon/icons/svg/ng-send-01.js +0 -5
  511. package/dist/src/nile-icon/icons/svg/ng-send-01.js.map +0 -1
  512. package/dist/src/nile-icon/icons/svg/ng-settings-01.d.ts +0 -5
  513. package/dist/src/nile-icon/icons/svg/ng-settings-01.js +0 -5
  514. package/dist/src/nile-icon/icons/svg/ng-settings-01.js.map +0 -1
  515. package/dist/src/nile-icon/icons/svg/ng-share-04.d.ts +0 -5
  516. package/dist/src/nile-icon/icons/svg/ng-share-04.js +0 -5
  517. package/dist/src/nile-icon/icons/svg/ng-share-04.js.map +0 -1
  518. package/dist/src/nile-icon/icons/svg/ng-share-06.d.ts +0 -5
  519. package/dist/src/nile-icon/icons/svg/ng-share-06.js +0 -5
  520. package/dist/src/nile-icon/icons/svg/ng-share-06.js.map +0 -1
  521. package/dist/src/nile-icon/icons/svg/ng-stars-02.d.ts +0 -5
  522. package/dist/src/nile-icon/icons/svg/ng-stars-02.js +0 -5
  523. package/dist/src/nile-icon/icons/svg/ng-stars-02.js.map +0 -1
  524. package/dist/src/nile-icon/icons/svg/ng-trash-01.d.ts +0 -5
  525. package/dist/src/nile-icon/icons/svg/ng-trash-01.js +0 -5
  526. package/dist/src/nile-icon/icons/svg/ng-trash-01.js.map +0 -1
  527. package/dist/src/nile-icon/icons/svg/ng-trash-03.d.ts +0 -5
  528. package/dist/src/nile-icon/icons/svg/ng-trash-03.js +0 -5
  529. package/dist/src/nile-icon/icons/svg/ng-trash-03.js.map +0 -1
  530. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.d.ts +0 -5
  531. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js +0 -5
  532. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js.map +0 -1
  533. package/dist/src/nile-icon/icons/svg/ng-underline-01.d.ts +0 -5
  534. package/dist/src/nile-icon/icons/svg/ng-underline-01.js +0 -5
  535. package/dist/src/nile-icon/icons/svg/ng-underline-01.js.map +0 -1
  536. package/dist/src/nile-icon/icons/svg/ng-upload-01.d.ts +0 -5
  537. package/dist/src/nile-icon/icons/svg/ng-upload-01.js +0 -5
  538. package/dist/src/nile-icon/icons/svg/ng-upload-01.js.map +0 -1
  539. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.d.ts +0 -5
  540. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js +0 -5
  541. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js.map +0 -1
  542. package/dist/src/nile-icon/icons/svg/ng-user-01.d.ts +0 -5
  543. package/dist/src/nile-icon/icons/svg/ng-user-01.js +0 -5
  544. package/dist/src/nile-icon/icons/svg/ng-user-01.js.map +0 -1
  545. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.d.ts +0 -5
  546. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js +0 -5
  547. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js.map +0 -1
  548. package/dist/src/nile-icon/icons/svg/ng-user-check-02.d.ts +0 -5
  549. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js +0 -5
  550. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js.map +0 -1
  551. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.d.ts +0 -5
  552. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js +0 -5
  553. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js.map +0 -1
  554. package/dist/src/nile-icon/icons/svg/ng-user-right-01.d.ts +0 -5
  555. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js +0 -5
  556. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js.map +0 -1
  557. package/dist/src/nile-icon/icons/svg/ng-users-01.d.ts +0 -5
  558. package/dist/src/nile-icon/icons/svg/ng-users-01.js +0 -5
  559. package/dist/src/nile-icon/icons/svg/ng-users-01.js.map +0 -1
  560. package/dist/src/nile-icon/icons/svg/ng-x-close.d.ts +0 -5
  561. package/dist/src/nile-icon/icons/svg/ng-x-close.js +0 -5
  562. package/dist/src/nile-icon/icons/svg/ng-x-close.js.map +0 -1
  563. package/dist/src/nile-icon/icons/svg/ng-x-square.d.ts +0 -5
  564. package/dist/src/nile-icon/icons/svg/ng-x-square.js +0 -5
  565. package/dist/src/nile-icon/icons/svg/ng-x-square.js.map +0 -1
  566. /package/dist/{nile-file-preview → nile-virtual-select}/index.cjs.js.map +0 -0
  567. /package/dist/{nile-file-preview/types/nile-file-preview.interface.esm.js → nile-virtual-select/types.esm.js} +0 -0
@@ -42,43 +42,43 @@ let NileEmptyState = class NileEmptyState extends NileElement {
42
42
  */
43
43
  render() {
44
44
  return html `
45
- <div class="${classMap({
45
+ <div part="container" class="${classMap({
46
46
  'empty-state': true,
47
47
  'empty-state--sm': this.size == 'sm',
48
48
  'empty-state--md': this.size == 'md',
49
49
  'empty-state--lg': this.size == 'lg'
50
50
  })}">
51
- <div class="${classMap({ 'empty-state__body': true })}">
51
+ <div part="body" class="${classMap({ 'empty-state__body': true })}">
52
52
 
53
53
  ${this.variant == 'content' ? html `
54
- <div class="empty-state__body--content">
54
+ <div part="content-image" class="empty-state__body--content">
55
55
 
56
- <div src="" class="${classMap({ 'empty-state__image': true, 'empty-state__image--grayscale': this.grayscale })}"></div>
56
+ <div part="image" src="" class="${classMap({ 'empty-state__image': true, 'empty-state__image--grayscale': this.grayscale })}"></div>
57
57
  ${!this.icon ? nothing : html `
58
- <div class="empty-state__img__icon">
58
+ <div part="icon-wrapper" class="empty-state__img__icon">
59
59
  <nile-icon name="${this.icon}" color="white" size="${this.size == 'sm' ? 24 : this.size == 'md' ? 24 : 28}"></nile-icon>
60
60
  </div>`}
61
61
  </div>` : nothing}
62
62
 
63
63
  ${this.variant == 'tonal' ? html `
64
- <div class="empty-state__body--tonal">
64
+ <div part="tonal-body" class="empty-state__body--tonal">
65
65
  <nile-icon name="${this.icon}" size="40"></nile-icon>
66
66
  </div>` : nothing}
67
67
 
68
68
  ${this.variant == 'flat' ? html `
69
- <div class="empty-state__body--flat">
69
+ <div part="flat-body" class="empty-state__body--flat">
70
70
  <span class="nile-flat-type-icon">
71
71
  <nile-icon name="${this.icon}" size="${this.size == 'sm' ? 24 : this.size == 'md' ? 24 : 28}" variant="secondary"></nile-icon>
72
72
  </span>
73
73
  </div>` : nothing}
74
74
 
75
- <div class="empty__state__text-section">
76
- <div class="empty-state__text">${this.text}</div>
77
- <div class="empty-state__subtext">${this.subText}</div>
75
+ <div part="text-section" class="empty__state__text-section">
76
+ <div part="text" class="empty-state__text">${this.text}</div>
77
+ <div part="subtitle" class="empty-state__subtext">${this.subText}</div>
78
78
  </div>
79
79
  </div>
80
80
 
81
- <div class="empty-state-actions">
81
+ <div part="actions" class="empty-state-actions">
82
82
  <slot></slot>
83
83
  </div>
84
84
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"nile-empty-state.js","sourceRoot":"","sources":["../../../src/nile-empty-state/nile-empty-state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAkC,MAAM,KAAK,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAS,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD;;;;;GAKG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,WAAW;IAAxC;;QAUO,SAAI,GAAuB,IAAI,CAAC;QAEhC,YAAO,GAGL,OAAO,CAAC;QAEV,SAAI,GAAW,OAAO,CAAC;QACT,cAAS,GAAY,KAAK,CAAC;QAEzC,SAAI,GAAW,aAAa,CAAC;QACP,YAAO,GAAW,SAAS,CAAC;QA4D9D,gBAAgB;IAClB,CAAC;IAhFC;;;OAGG;IACI,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAgBD,gBAAgB;IAEhB,qBAAqB;IAErB;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAA;gBACC,QAAQ,CAAC;YACnB,aAAa,EAAE,IAAI;YACnB,iBAAiB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACpC,iBAAiB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACpC,iBAAiB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;SACrC,CAAC;oBACc,QAAQ,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC;;UAEjD,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA;;;+BAGX,QAAQ,CAAC,EAAE,oBAAoB,EAAE,IAAI,EAAE,+BAA+B,EAAC,IAAI,CAAC,SAAS,EAAG,CAAC;YAC5G,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;;+BAER,IAAI,CAAC,IAAI,yBAAyB,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;iBAE3G;eACK,CAAA,CAAC,CAAC,OACT;;OAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;;wBAEb,IAAI,CAAC,IAAI;WACtB,CAAA,CAAC,CAAC,OACL;;OAED,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;;;yBAGX,IAAI,CAAC,IAAI,WAAW,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;;WAEtF,CAAA,CAAC,CAAC,OACL;;;2CAGmC,IAAI,CAAC,IAAI;8CACN,IAAI,CAAC,OAAO;;;;;;;;GAQvD,CAAC;IACF,CAAC;CAGF,CAAA;AAxEa;IAAX,QAAQ,EAAE;4CAAiC;AAEhC;IAAX,QAAQ,EAAE;+CAGW;AAEV;IAAX,QAAQ,EAAE;4CAAwB;AACT;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,CAAC;iDAA4B;AAEzC;IAAX,QAAQ,EAAE;4CAA8B;AACP;IAAjC,QAAQ,CAAC,EAAC,SAAS,EAAC,UAAU,EAAC,CAAC;+CAA6B;AArBnD,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAkF1B;;AAED,eAAe,cAAc,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 { html, nothing, CSSResultArray, TemplateResult } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { styles } from './nile-empty-state.css';\nimport NileElement from '../internal/nile-element';\n\n/**\n * Nile empty-state component.\n *\n * @tag nile-empty-state\n *\n */\n@customElement('nile-empty-state')\nexport class NileEmptyState extends NileElement {\n\n /**\n * The styles for nile-empty-state\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property() size: 'sm' | 'md' | 'lg' = 'md';\n\n @property() variant:\n | 'flat'\n | 'content'\n | 'tonal' = 'tonal';\n\n @property() icon: string = 'error';\n @property({type:Boolean}) grayscale: boolean = false;\n\n @property() text: String = 'Empty State';\n @property({attribute:'sub-text'}) subText: String = 'No Data';\n\n\n /* #endregion */\n\n /* #region Methods */\n\n /**\n * Render method\n * @slot This is a slot test\n */\n public render(): TemplateResult {\n return html`\n\t\t<div class=\"${classMap({\n 'empty-state': true,\n 'empty-state--sm': this.size == 'sm',\n 'empty-state--md': this.size == 'md',\n 'empty-state--lg': this.size == 'lg'\n })}\">\n <div class=\"${classMap({ 'empty-state__body': true })}\">\n\n ${this.variant == 'content' ? html`\n <div class=\"empty-state__body--content\">\n \n <div src=\"\" class=\"${classMap({ 'empty-state__image': true, 'empty-state__image--grayscale':this.grayscale })}\"></div>\n ${!this.icon ? nothing : html`\n <div class=\"empty-state__img__icon\">\n <nile-icon name=\"${this.icon}\" color=\"white\" size=\"${this.size == 'sm' ? 24 : this.size == 'md' ? 24 : 28}\"></nile-icon>\n </div>`\n }\n </div>`: nothing\n }\n\t\t\t\t\n\t\t\t ${this.variant == 'tonal' ? html`\n\t\t\t\t<div class=\"empty-state__body--tonal\">\n\t\t\t\t\t<nile-icon name=\"${this.icon}\" size=\"40\"></nile-icon>\n\t\t\t\t</div>`: nothing\n }\n\n\t\t\t ${this.variant == 'flat' ? html`\n\t\t\t\t<div class=\"empty-state__body--flat\">\n\t\t\t\t\t<span class=\"nile-flat-type-icon\">\n\t\t\t\t\t\t<nile-icon name=\"${this.icon}\" size=\"${this.size == 'sm' ? 24 : this.size == 'md' ? 24 : 28}\" variant=\"secondary\"></nile-icon>\n\t\t\t\t\t</span>\n\t\t\t\t</div>`: nothing\n }\n \n <div class=\"empty__state__text-section\">\n <div class=\"empty-state__text\">${this.text}</div>\n <div class=\"empty-state__subtext\">${this.subText}</div>\n </div>\n\t\t\t</div>\n\n\t\t\t<div class=\"empty-state-actions\">\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t</div>\n\t\t`;\n }\n\n /* #endregion */\n}\n\nexport default NileEmptyState;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-empty-state': NileEmptyState;\n }\n}"]}
1
+ {"version":3,"file":"nile-empty-state.js","sourceRoot":"","sources":["../../../src/nile-empty-state/nile-empty-state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAkC,MAAM,KAAK,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAS,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD;;;;;GAKG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,WAAW;IAAxC;;QAUO,SAAI,GAAuB,IAAI,CAAC;QAEhC,YAAO,GAGL,OAAO,CAAC;QAEV,SAAI,GAAW,OAAO,CAAC;QACT,cAAS,GAAY,KAAK,CAAC;QAEzC,SAAI,GAAW,aAAa,CAAC;QACP,YAAO,GAAW,SAAS,CAAC;QA4D9D,gBAAgB;IAClB,CAAC;IAhFC;;;OAGG;IACI,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAgBD,gBAAgB;IAEhB,qBAAqB;IAErB;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAA;iCACkB,QAAQ,CAAC;YACpC,aAAa,EAAE,IAAI;YACnB,iBAAiB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACpC,iBAAiB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACpC,iBAAiB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;SACrC,CAAC;iCAC2B,QAAQ,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC;;UAE9D,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA;;;4CAGE,QAAQ,CAAC,EAAE,oBAAoB,EAAE,IAAI,EAAE,+BAA+B,EAAC,IAAI,CAAC,SAAS,EAAG,CAAC;YACzH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;;+BAER,IAAI,CAAC,IAAI,yBAAyB,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;iBAE3G;eACK,CAAA,CAAC,CAAC,OACT;;OAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;;wBAEb,IAAI,CAAC,IAAI;WACtB,CAAA,CAAC,CAAC,OACL;;OAED,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;;;yBAGX,IAAI,CAAC,IAAI,WAAW,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;;WAEtF,CAAA,CAAC,CAAC,OACL;;;uDAG+C,IAAI,CAAC,IAAI;8DACF,IAAI,CAAC,OAAO;;;;;;;;GAQvE,CAAC;IACF,CAAC;CAGF,CAAA;AAxEa;IAAX,QAAQ,EAAE;4CAAiC;AAEhC;IAAX,QAAQ,EAAE;+CAGW;AAEV;IAAX,QAAQ,EAAE;4CAAwB;AACT;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,CAAC;iDAA4B;AAEzC;IAAX,QAAQ,EAAE;4CAA8B;AACP;IAAjC,QAAQ,CAAC,EAAC,SAAS,EAAC,UAAU,EAAC,CAAC;+CAA6B;AArBnD,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAkF1B;;AAED,eAAe,cAAc,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 { html, nothing, CSSResultArray, TemplateResult } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { styles } from './nile-empty-state.css';\nimport NileElement from '../internal/nile-element';\n\n/**\n * Nile empty-state component.\n *\n * @tag nile-empty-state\n *\n */\n@customElement('nile-empty-state')\nexport class NileEmptyState extends NileElement {\n\n /**\n * The styles for nile-empty-state\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property() size: 'sm' | 'md' | 'lg' = 'md';\n\n @property() variant:\n | 'flat'\n | 'content'\n | 'tonal' = 'tonal';\n\n @property() icon: string = 'error';\n @property({type:Boolean}) grayscale: boolean = false;\n\n @property() text: String = 'Empty State';\n @property({attribute:'sub-text'}) subText: String = 'No Data';\n\n\n /* #endregion */\n\n /* #region Methods */\n\n /**\n * Render method\n * @slot This is a slot test\n */\n public render(): TemplateResult {\n return html`\n\t\t<div part=\"container\" class=\"${classMap({\n 'empty-state': true,\n 'empty-state--sm': this.size == 'sm',\n 'empty-state--md': this.size == 'md',\n 'empty-state--lg': this.size == 'lg'\n })}\">\n <div part=\"body\" class=\"${classMap({ 'empty-state__body': true })}\">\n\n ${this.variant == 'content' ? html`\n <div part=\"content-image\" class=\"empty-state__body--content\">\n \n <div part=\"image\" src=\"\" class=\"${classMap({ 'empty-state__image': true, 'empty-state__image--grayscale':this.grayscale })}\"></div>\n ${!this.icon ? nothing : html`\n <div part=\"icon-wrapper\" class=\"empty-state__img__icon\">\n <nile-icon name=\"${this.icon}\" color=\"white\" size=\"${this.size == 'sm' ? 24 : this.size == 'md' ? 24 : 28}\"></nile-icon>\n </div>`\n }\n </div>`: nothing\n }\n\t\t\t\t\n\t\t\t ${this.variant == 'tonal' ? html`\n\t\t\t\t<div part=\"tonal-body\" class=\"empty-state__body--tonal\">\n\t\t\t\t\t<nile-icon name=\"${this.icon}\" size=\"40\"></nile-icon>\n\t\t\t\t</div>`: nothing\n }\n\n\t\t\t ${this.variant == 'flat' ? html`\n\t\t\t\t<div part=\"flat-body\" class=\"empty-state__body--flat\">\n\t\t\t\t\t<span class=\"nile-flat-type-icon\">\n\t\t\t\t\t\t<nile-icon name=\"${this.icon}\" size=\"${this.size == 'sm' ? 24 : this.size == 'md' ? 24 : 28}\" variant=\"secondary\"></nile-icon>\n\t\t\t\t\t</span>\n\t\t\t\t</div>`: nothing\n }\n \n <div part=\"text-section\" class=\"empty__state__text-section\">\n <div part=\"text\" class=\"empty-state__text\">${this.text}</div>\n <div part=\"subtitle\" class=\"empty-state__subtext\">${this.subText}</div>\n </div>\n\t\t\t</div>\n\n\t\t\t<div part=\"actions\" class=\"empty-state-actions\">\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t</div>\n\t\t`;\n }\n\n /* #endregion */\n}\n\nexport default NileEmptyState;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-empty-state': NileEmptyState;\n }\n}"]}
@@ -36,7 +36,6 @@ export declare class NileOption extends NileElement {
36
36
  private cachedTextLabel;
37
37
  defaultSlot: HTMLSlotElement;
38
38
  current: boolean;
39
- selected: boolean;
40
39
  hasHover: boolean;
41
40
  hidden: boolean;
42
41
  isMultipleSelect: boolean;
@@ -49,6 +48,8 @@ export declare class NileOption extends NileElement {
49
48
  showCheckbox: boolean;
50
49
  /** Draws the option in a disabled state, preventing selection. */
51
50
  disabled: boolean;
51
+ /** Indicates whether the option is selected. */
52
+ selected: boolean;
52
53
  connectedCallback(): void;
53
54
  checkIfMultipleSelect(): void;
54
55
  protected updated(_changedProperties: PropertyValues): void;
@@ -39,7 +39,6 @@ let NileOption = class NileOption extends NileElement {
39
39
  constructor() {
40
40
  super(...arguments);
41
41
  this.current = false; // the user has keyed into the option, but hasn't selected it yet (shows a highlight)
42
- this.selected = false; // the option is selected and has aria-selected="true"
43
42
  this.hasHover = false; // we need this because Safari doesn't honor :hover styles while dragging
44
43
  this.hidden = false; // the option is hidden
45
44
  this.isMultipleSelect = false;
@@ -52,16 +51,20 @@ let NileOption = class NileOption extends NileElement {
52
51
  this.showCheckbox = false;
53
52
  /** Draws the option in a disabled state, preventing selection. */
54
53
  this.disabled = false;
54
+ /** Indicates whether the option is selected. */
55
+ this.selected = false;
55
56
  }
56
57
  connectedCallback() {
57
58
  super.connectedCallback();
58
59
  this.setAttribute('role', 'option');
59
60
  this.setAttribute('aria-selected', 'false');
61
+ // Find the closest parent 'nile-select' or 'nile-virtual-select' element
62
+ const parentSelect = this.closest('nile-select') || this.closest('nile-virtual-select');
60
63
  this.checkIfMultipleSelect();
61
64
  }
62
65
  checkIfMultipleSelect() {
63
66
  // Find the closest parent 'nile-select' element
64
- const parentSelect = this.closest('nile-select');
67
+ const parentSelect = this.closest('nile-select') || this.closest('nile-virtual-select');
65
68
  // Check if the parent has the 'multiple' attribute
66
69
  if (parentSelect && parentSelect.hasAttribute('multiple')) {
67
70
  // let multipleValue = parentSelect.getAttribute('multiple');
@@ -167,9 +170,6 @@ __decorate([
167
170
  __decorate([
168
171
  state()
169
172
  ], NileOption.prototype, "current", void 0);
170
- __decorate([
171
- state()
172
- ], NileOption.prototype, "selected", void 0);
173
173
  __decorate([
174
174
  state()
175
175
  ], NileOption.prototype, "hasHover", void 0);
@@ -188,6 +188,9 @@ __decorate([
188
188
  __decorate([
189
189
  property({ type: Boolean, reflect: true })
190
190
  ], NileOption.prototype, "disabled", void 0);
191
+ __decorate([
192
+ property({ type: Boolean, reflect: true })
193
+ ], NileOption.prototype, "selected", void 0);
191
194
  __decorate([
192
195
  watch('disabled')
193
196
  ], NileOption.prototype, "handleDisabledChange", null);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-option.js","sourceRoot":"","sources":["../../../src/nile-option/nile-option.ts"],"names":[],"mappings":"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","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, CSSResultArray, TemplateResult } from 'lit';\nimport { styles } from './nile-option.css';\nimport '../nile-icon';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { html } from 'lit';\nimport { watch } from '../internal/watch';\nimport type { CSSResultGroup, PropertyValues } from 'lit';\nimport NileElement from '../internal/nile-element';\nimport '../nile-checkbox';\n\n/**\n * Nile icon component.\n *\n * @tag nile-option\n *\n */\n\n/**\n * @summary Options define the selectable items within various form controls such as [select](/components/select).\n * @status stable\n *\n * @dependency nile-icon\n *\n * @slot - The option's label.\n * @slot prefix - Used to prepend an icon or similar element to the menu item.\n * @slot suffix - Used to append an icon or similar element to the menu item.\n *\n * @csspart checked-icon - The checked icon, an `<nile-icon>` element.\n * @csspart base - The component's base wrapper.\n * @csspart label - The option's label.\n * @csspart prefix - The container that wraps the prefix.\n * @csspart suffix - The container that wraps the suffix.\n */\n\n@customElement('nile-option')\nexport class NileOption extends NileElement {\n static styles: CSSResultGroup = styles;\n\n private cachedTextLabel: string;\n\n @query('.option__label') defaultSlot: HTMLSlotElement;\n\n @state() current = false; // the user has keyed into the option, but hasn't selected it yet (shows a highlight)\n @state() selected = false; // the option is selected and has aria-selected=\"true\"\n @state() hasHover = false; // we need this because Safari doesn't honor :hover styles while dragging\n @state() hidden = false; // the option is hidden\n @state() isMultipleSelect = false;\n\n /**\n * The option's value. When selected, the containing form control will receive this value. The value must be unique\n * from other options in the same group. Values may not contain spaces, as spaces are used as delimiters when listing\n * multiple values.\n */\n @property({ reflect: true }) value = '';\n\n @property({ type: Boolean }) showCheckbox: boolean = false;\n\n /** Draws the option in a disabled state, preventing selection. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'option');\n this.setAttribute('aria-selected', 'false');\n\n this.checkIfMultipleSelect();\n }\n\n checkIfMultipleSelect() {\n // Find the closest parent 'nile-select' element\n const parentSelect = this.closest('nile-select');\n\n // Check if the parent has the 'multiple' attribute\n if (parentSelect && parentSelect.hasAttribute('multiple')) {\n // let multipleValue = parentSelect.getAttribute('multiple');\n if(parentSelect.hasAttribute('multiple') && parentSelect.getAttribute('multiple') === '') {\n this.isMultipleSelect = true;\n } else if (parentSelect.getAttribute('multiple') === 'true') {\n this.isMultipleSelect = true;\n } else {\n this.isMultipleSelect = false;\n }\n }\n }\n\n protected updated(_changedProperties: PropertyValues): void {\n this.checkIfMultipleSelect();\n }\n\n private handleDefaultSlotChange() {\n const textLabel = this.getTextLabel();\n\n // Ignore the first time the label is set\n if (typeof this.cachedTextLabel === 'undefined') {\n this.cachedTextLabel = textLabel;\n return;\n }\n\n // When the label changes, emit a slotchange event so parent controls see it\n if (textLabel !== this.cachedTextLabel) {\n this.cachedTextLabel = textLabel;\n this.emit('slotchange');\n }\n }\n\n private handleMouseEnter() {\n this.hasHover = true;\n }\n\n private handleMouseLeave() {\n this.hasHover = false;\n }\n\n @watch('disabled')\n handleDisabledChange() {\n this.setAttribute('aria-disabled', this.disabled ? 'true' : 'false');\n }\n\n @watch('selected')\n handleSelectedChange() {\n this.setAttribute('aria-selected', this.selected ? 'true' : 'false');\n }\n\n @watch('value')\n handleValueChange() {\n // Ensure the value is a string. This ensures the next line doesn't error and allows framework users to pass numbers\n // instead of requiring them to cast the value to a string.\n if (typeof this.value !== 'string') {\n this.value = String(this.value);\n }\n\n // if (this.value.includes(' ')) {\n // console.error(\n // `Option values cannot include a space. All spaces have been replaced with underscores.`,\n // this\n // );\n // this.value = this.value.replace(/ /g, '_');\n // }\n }\n\n /** Returns a plain text label based on the option's content. */\n getTextLabel() {\n // Search for a label element inside the component\n const labelElement = this.querySelector('label');\n\n // If a label element is found, return its text content\n if (labelElement) {\n return labelElement.textContent?.trim() ?? '';\n }\n\n // If no label element is found, return the existing behavior\n return (this.textContent ?? '').trim();\n }\n\n render() {\n return html`\n ${!this.hidden\n ? html` <div\n part=\"base\"\n class=${classMap({\n option: true,\n 'option--single-select': !this.isMultipleSelect,\n 'option--current': this.selected && !this.isMultipleSelect,\n 'option--disabled': this.disabled,\n 'option--selected': this.selected && !this.isMultipleSelect,\n 'option--hover': this.hasHover,\n })}\n @mouseenter=${this.handleMouseEnter}\n @mouseleave=${this.handleMouseLeave}\n >\n\n ${this.isMultipleSelect ? html`<nile-checkbox class=\"option--checkbox\" .checked=${this.selected}></nile-checkbox>` : ''}\n\n <slot part=\"prefix\" name=\"prefix\" class=\"option__prefix\"></slot>\n <slot\n part=\"label\"\n class=\"option__label\"\n @slotchange=${this.handleDefaultSlotChange}\n ></slot>\n <slot part=\"suffix\" name=\"suffix\" class=\"option__suffix\"></slot>\n </div>`\n : ''}\n `;\n }\n}\n\nexport default NileOption;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-option': NileOption;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-option.js","sourceRoot":"","sources":["../../../src/nile-option/nile-option.ts"],"names":[],"mappings":"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","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, CSSResultArray, TemplateResult } from 'lit';\nimport { styles } from './nile-option.css';\nimport '../nile-icon';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { html } from 'lit';\nimport { watch } from '../internal/watch';\nimport type { CSSResultGroup, PropertyValues } from 'lit';\nimport NileElement from '../internal/nile-element';\nimport '../nile-checkbox';\n\n/**\n * Nile icon component.\n *\n * @tag nile-option\n *\n */\n\n/**\n * @summary Options define the selectable items within various form controls such as [select](/components/select).\n * @status stable\n *\n * @dependency nile-icon\n *\n * @slot - The option's label.\n * @slot prefix - Used to prepend an icon or similar element to the menu item.\n * @slot suffix - Used to append an icon or similar element to the menu item.\n *\n * @csspart checked-icon - The checked icon, an `<nile-icon>` element.\n * @csspart base - The component's base wrapper.\n * @csspart label - The option's label.\n * @csspart prefix - The container that wraps the prefix.\n * @csspart suffix - The container that wraps the suffix.\n */\n\n@customElement('nile-option')\nexport class NileOption extends NileElement {\n static styles: CSSResultGroup = styles;\n\n private cachedTextLabel: string;\n\n @query('.option__label') defaultSlot: HTMLSlotElement;\n\n @state() current = false; // the user has keyed into the option, but hasn't selected it yet (shows a highlight)\n @state() hasHover = false; // we need this because Safari doesn't honor :hover styles while dragging\n @state() hidden = false; // the option is hidden\n @state() isMultipleSelect = false;\n\n /**\n * The option's value. When selected, the containing form control will receive this value. The value must be unique\n * from other options in the same group. Values may not contain spaces, as spaces are used as delimiters when listing\n * multiple values.\n */\n @property({ reflect: true }) value = '';\n\n @property({ type: Boolean }) showCheckbox: boolean = false;\n\n /** Draws the option in a disabled state, preventing selection. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Indicates whether the option is selected. */\n @property({ type: Boolean, reflect: true }) selected = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'option');\n this.setAttribute('aria-selected', 'false');\n\n // Find the closest parent 'nile-select' or 'nile-virtual-select' element\n const parentSelect = this.closest('nile-select') || this.closest('nile-virtual-select');\n this.checkIfMultipleSelect();\n }\n\n checkIfMultipleSelect() {\n // Find the closest parent 'nile-select' element\n const parentSelect = this.closest('nile-select') || this.closest('nile-virtual-select');\n\n // Check if the parent has the 'multiple' attribute\n if (parentSelect && parentSelect.hasAttribute('multiple')) {\n // let multipleValue = parentSelect.getAttribute('multiple');\n if(parentSelect.hasAttribute('multiple') && parentSelect.getAttribute('multiple') === '') {\n this.isMultipleSelect = true;\n } else if (parentSelect.getAttribute('multiple') === 'true') {\n this.isMultipleSelect = true;\n } else {\n this.isMultipleSelect = false;\n }\n }\n }\n\n protected updated(_changedProperties: PropertyValues): void {\n this.checkIfMultipleSelect();\n }\n\n private handleDefaultSlotChange() {\n const textLabel = this.getTextLabel();\n\n // Ignore the first time the label is set\n if (typeof this.cachedTextLabel === 'undefined') {\n this.cachedTextLabel = textLabel;\n return;\n }\n\n // When the label changes, emit a slotchange event so parent controls see it\n if (textLabel !== this.cachedTextLabel) {\n this.cachedTextLabel = textLabel;\n this.emit('slotchange');\n }\n }\n\n private handleMouseEnter() {\n this.hasHover = true;\n }\n\n private handleMouseLeave() {\n this.hasHover = false;\n }\n\n @watch('disabled')\n handleDisabledChange() {\n this.setAttribute('aria-disabled', this.disabled ? 'true' : 'false');\n }\n\n @watch('selected')\n handleSelectedChange() {\n this.setAttribute('aria-selected', this.selected ? 'true' : 'false');\n }\n\n @watch('value')\n handleValueChange() {\n // Ensure the value is a string. This ensures the next line doesn't error and allows framework users to pass numbers\n // instead of requiring them to cast the value to a string.\n if (typeof this.value !== 'string') {\n this.value = String(this.value);\n }\n\n // if (this.value.includes(' ')) {\n // console.error(\n // `Option values cannot include a space. All spaces have been replaced with underscores.`,\n // this\n // );\n // this.value = this.value.replace(/ /g, '_');\n // }\n }\n\n /** Returns a plain text label based on the option's content. */\n getTextLabel() {\n // Search for a label element inside the component\n const labelElement = this.querySelector('label');\n\n // If a label element is found, return its text content\n if (labelElement) {\n return labelElement.textContent?.trim() ?? '';\n }\n\n // If no label element is found, return the existing behavior\n return (this.textContent ?? '').trim();\n }\n\n render() {\n return html`\n ${!this.hidden\n ? html` <div\n part=\"base\"\n class=${classMap({\n option: true,\n 'option--single-select': !this.isMultipleSelect,\n 'option--current': this.selected && !this.isMultipleSelect,\n 'option--disabled': this.disabled,\n 'option--selected': this.selected && !this.isMultipleSelect,\n 'option--hover': this.hasHover,\n })}\n @mouseenter=${this.handleMouseEnter}\n @mouseleave=${this.handleMouseLeave}\n >\n\n ${this.isMultipleSelect ? html`<nile-checkbox class=\"option--checkbox\" .checked=${this.selected}></nile-checkbox>` : ''}\n\n <slot part=\"prefix\" name=\"prefix\" class=\"option__prefix\"></slot>\n <slot\n part=\"label\"\n class=\"option__label\"\n @slotchange=${this.handleDefaultSlotChange}\n ></slot>\n <slot part=\"suffix\" name=\"suffix\" class=\"option__suffix\"></slot>\n </div>`\n : ''}\n `;\n }\n}\n\nexport default NileOption;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-option': NileOption;\n }\n}\n"]}
@@ -12,6 +12,8 @@ import type { CSSResultGroup, PropertyValues } from 'lit';
12
12
  import type { NileFormControl } from '../internal/nile-element';
13
13
  import type NileOption from '../nile-option/nile-option';
14
14
  import type NilePopup from '../nile-popup/nile-popup';
15
+ import type { RenderItemConfig } from '../nile-virtual-select/types.js';
16
+ import '../nile-virtual-select/nile-virtual-select';
15
17
  /**
16
18
  * Nile icon component.
17
19
  *
@@ -26,6 +28,7 @@ import type NilePopup from '../nile-popup/nile-popup';
26
28
  * @dependency nile-icon
27
29
  * @dependency nile-popup
28
30
  * @dependency nile-tag
31
+ * @dependency nile-virtual-select
29
32
  *
30
33
  * @slot - The listbox options. Must be `<nile-option>` elements. You can use `<nile-divider>` to group items visually.
31
34
  * @slot label - The input's label. Alternatively, you can use the `label` attribute.
@@ -64,7 +67,8 @@ import type NilePopup from '../nile-popup/nile-popup';
64
67
  */
65
68
  export declare class NileSelect extends NileElement implements NileFormControl {
66
69
  static styles: CSSResultGroup;
67
- private readonly formControlController;
70
+ private formControlController;
71
+ private virtualScrollHelper;
68
72
  private readonly hasSlotController;
69
73
  private typeToSelectString;
70
74
  private typeToSelectTimeout;
@@ -151,10 +155,15 @@ export declare class NileSelect extends NileElement implements NileFormControl {
151
155
  oldMaxOptionsVisible: number;
152
156
  showNoResults: boolean;
153
157
  noResultsMessage: string;
158
+ /** Enhanced configuration for rendering items with support for display text, value, and search text */
159
+ renderItemConfig?: RenderItemConfig;
160
+ data: any;
161
+ enableVirtualScroll: boolean;
154
162
  /** Gets the validity state object */
155
163
  get validity(): ValidityState;
156
164
  /** Gets the validation message */
157
165
  get validationMessage(): string;
166
+ constructor();
158
167
  connectedCallback(): void;
159
168
  disconnectedCallback(): void;
160
169
  private options;
@@ -224,7 +233,7 @@ export declare class NileSelect extends NileElement implements NileFormControl {
224
233
  onInputChange(event: Event): void;
225
234
  calculateWidthOfSelectTagsDiv(): number | undefined;
226
235
  calculateTotalWidthOfTags(): void;
227
- render(): import("lit-html").TemplateResult<1>;
236
+ render(): any;
228
237
  nileInput(value: any): void;
229
238
  nileChange(value: any): void;
230
239
  }
@@ -24,6 +24,8 @@ import { watch } from '../internal/watch';
24
24
  import NileElement from '../internal/nile-element';
25
25
  import { unsafeHTML } from 'lit/directives/unsafe-html.js';
26
26
  import { ifDefined } from 'lit/directives/if-defined.js';
27
+ import '../nile-virtual-select/nile-virtual-select';
28
+ import { VirtualScrollHelper } from './virtual-scroll-helper';
27
29
  /**
28
30
  * Nile icon component.
29
31
  *
@@ -38,6 +40,7 @@ import { ifDefined } from 'lit/directives/if-defined.js';
38
40
  * @dependency nile-icon
39
41
  * @dependency nile-popup
40
42
  * @dependency nile-tag
43
+ * @dependency nile-virtual-select
41
44
  *
42
45
  * @slot - The listbox options. Must be `<nile-option>` elements. You can use `<nile-divider>` to group items visually.
43
46
  * @slot label - The input's label. Alternatively, you can use the `label` attribute.
@@ -75,12 +78,16 @@ import { ifDefined } from 'lit/directives/if-defined.js';
75
78
  * @csspart expand-icon - The container that wraps the expand icon.
76
79
  */
77
80
  let NileSelect = class NileSelect extends NileElement {
81
+ /** Gets the validity state object */
82
+ get validity() {
83
+ return this.valueInput?.validity;
84
+ }
85
+ /** Gets the validation message */
86
+ get validationMessage() {
87
+ return this.valueInput?.validationMessage;
88
+ }
78
89
  constructor() {
79
- super(...arguments);
80
- // protected override BUBBLES=false;
81
- this.formControlController = new FormControlController(this, {
82
- assumeInteractionOn: ['nile-blur', 'nile-input'],
83
- });
90
+ super();
84
91
  this.hasSlotController = new HasSlotController(this, 'help-text', 'label');
85
92
  this.typeToSelectString = '';
86
93
  this.hasFocus = false;
@@ -160,18 +167,18 @@ let NileSelect = class NileSelect extends NileElement {
160
167
  this.oldMaxOptionsVisible = 1;
161
168
  this.showNoResults = false;
162
169
  this.noResultsMessage = 'No results found';
170
+ this.data = [];
171
+ this.enableVirtualScroll = false;
163
172
  this.options = [];
164
173
  }
165
- /** Gets the validity state object */
166
- get validity() {
167
- return this.valueInput?.validity;
168
- }
169
- /** Gets the validation message */
170
- get validationMessage() {
171
- return this.valueInput?.validationMessage;
172
- }
173
174
  connectedCallback() {
174
175
  super.connectedCallback();
176
+ if (!this.enableVirtualScroll) {
177
+ this.formControlController = new FormControlController(this, {
178
+ assumeInteractionOn: ['nile-blur', 'nile-input'],
179
+ });
180
+ }
181
+ this.virtualScrollHelper = new VirtualScrollHelper(this);
175
182
  this.handleDocumentFocusIn = this.handleDocumentFocusIn.bind(this);
176
183
  this.handleDocumentKeyDown = this.handleDocumentKeyDown.bind(this);
177
184
  this.handleDocumentMouseDown = this.handleDocumentMouseDown.bind(this);
@@ -595,7 +602,7 @@ let NileSelect = class NileSelect extends NileElement {
595
602
  }
596
603
  // Update validity
597
604
  this.updateComplete.then(() => {
598
- this.formControlController.updateValidity();
605
+ this.formControlController?.updateValidity();
599
606
  });
600
607
  this.calculateTotalWidthOfTags();
601
608
  }
@@ -637,8 +644,8 @@ let NileSelect = class NileSelect extends NileElement {
637
644
  return filteredOptions;
638
645
  }
639
646
  handleInvalid(event) {
640
- this.formControlController.setValidity(false);
641
- this.formControlController.emitInvalidEvent(event);
647
+ this.formControlController?.setValidity(false);
648
+ this.formControlController?.emitInvalidEvent(event);
642
649
  }
643
650
  handleDisabledChange() {
644
651
  // Close the listbox when the control is disabled
@@ -720,7 +727,7 @@ let NileSelect = class NileSelect extends NileElement {
720
727
  }
721
728
  /** Gets the associated form, if one exists. */
722
729
  getForm() {
723
- return this.formControlController.getForm();
730
+ return this.formControlController?.getForm() || null;
724
731
  }
725
732
  /** Checks for validity and shows the browser's validation message if the control is invalid. */
726
733
  reportValidity() {
@@ -729,7 +736,7 @@ let NileSelect = class NileSelect extends NileElement {
729
736
  /** Sets a custom validation message. Pass an empty string to restore validity. */
730
737
  setCustomValidity(message) {
731
738
  this.valueInput.setCustomValidity(message);
732
- this.formControlController.updateValidity();
739
+ this.formControlController?.updateValidity();
733
740
  }
734
741
  /** Sets focus on the control. */
735
742
  focus(options) {
@@ -788,6 +795,9 @@ let NileSelect = class NileSelect extends NileElement {
788
795
  }, 1);
789
796
  }
790
797
  render() {
798
+ if (this.enableVirtualScroll) {
799
+ return this.virtualScrollHelper.renderVirtualizedContent();
800
+ }
791
801
  const hasLabelSlot = this.hasSlotController.test('label');
792
802
  const hasHelpTextSlot = this.hasSlotController.test('help-text');
793
803
  const hasLabelSuffixSlot = this.hasSlotController.test('label-suffix');
@@ -1261,6 +1271,15 @@ __decorate([
1261
1271
  __decorate([
1262
1272
  property({ type: String })
1263
1273
  ], NileSelect.prototype, "noResultsMessage", void 0);
1274
+ __decorate([
1275
+ property({ attribute: false })
1276
+ ], NileSelect.prototype, "renderItemConfig", void 0);
1277
+ __decorate([
1278
+ property({ type: Array })
1279
+ ], NileSelect.prototype, "data", void 0);
1280
+ __decorate([
1281
+ property({ type: Boolean })
1282
+ ], NileSelect.prototype, "enableVirtualScroll", void 0);
1264
1283
  __decorate([
1265
1284
  watch('disabled', { waitUntilFirstUpdate: true })
1266
1285
  ], NileSelect.prototype, "handleDisabledChange", null);