@aquera/nile-elements 1.5.2 → 1.5.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 (619) hide show
  1. package/README.md +9 -0
  2. package/dist/index.cjs.js +1 -1
  3. package/dist/index.esm.js +1 -1
  4. package/dist/index.js +240 -196
  5. package/dist/nile-auto-complete/nile-auto-complete.cjs.js +1 -1
  6. package/dist/nile-auto-complete/nile-auto-complete.cjs.js.map +1 -1
  7. package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js +1 -1
  8. package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js.map +1 -1
  9. package/dist/nile-auto-complete/nile-auto-complete.css.esm.js +1 -1
  10. package/dist/nile-auto-complete/nile-auto-complete.esm.js +1 -1
  11. package/dist/nile-badge/index.cjs.js +1 -1
  12. package/dist/nile-badge/index.esm.js +1 -1
  13. package/dist/nile-badge/nile-badge.cjs.js +1 -1
  14. package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
  15. package/dist/nile-badge/nile-badge.esm.js +1 -1
  16. package/dist/nile-button/index.cjs.js +1 -1
  17. package/dist/nile-button/index.esm.js +1 -1
  18. package/dist/nile-button/nile-button.cjs.js +1 -1
  19. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  20. package/dist/nile-button/nile-button.esm.js +1 -1
  21. package/dist/nile-carousel/index.cjs.js +1 -1
  22. package/dist/nile-carousel/index.esm.js +1 -1
  23. package/dist/nile-carousel/nile-carousel.cjs.js +1 -1
  24. package/dist/nile-carousel/nile-carousel.cjs.js.map +1 -1
  25. package/dist/nile-carousel/nile-carousel.esm.js +11 -11
  26. package/dist/nile-dialog/index.cjs.js +1 -1
  27. package/dist/nile-dialog/index.esm.js +1 -1
  28. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  29. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  30. package/dist/nile-dialog/nile-dialog.esm.js +1 -1
  31. package/dist/nile-drawer/index.cjs.js +1 -1
  32. package/dist/nile-drawer/index.esm.js +1 -1
  33. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  34. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  35. package/dist/nile-drawer/nile-drawer.esm.js +1 -1
  36. package/dist/nile-file-preview/nile-file-preview.cjs.js +1 -1
  37. package/dist/nile-file-preview/nile-file-preview.cjs.js.map +1 -1
  38. package/dist/nile-file-preview/nile-file-preview.css.cjs.js +1 -1
  39. package/dist/nile-file-preview/nile-file-preview.css.cjs.js.map +1 -1
  40. package/dist/nile-file-preview/nile-file-preview.css.esm.js +2 -2
  41. package/dist/nile-file-preview/nile-file-preview.esm.js +1 -1
  42. package/dist/nile-file-preview/nile-file-preview.template.cjs.js +1 -1
  43. package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +1 -1
  44. package/dist/nile-file-preview/nile-file-preview.template.esm.js +55 -25
  45. package/dist/nile-file-preview/utils/index.cjs.js +1 -1
  46. package/dist/nile-file-preview/utils/index.esm.js +1 -1
  47. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js +1 -1
  48. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js.map +1 -1
  49. package/dist/nile-file-preview/utils/nile-file-preview.util.esm.js +1 -1
  50. package/dist/nile-file-upload/nile-file-upload.cjs.js +1 -1
  51. package/dist/nile-file-upload/nile-file-upload.cjs.js.map +1 -1
  52. package/dist/nile-file-upload/nile-file-upload.css.cjs.js +1 -1
  53. package/dist/nile-file-upload/nile-file-upload.css.cjs.js.map +1 -1
  54. package/dist/nile-file-upload/nile-file-upload.css.esm.js +15 -5
  55. package/dist/nile-file-upload/nile-file-upload.esm.js +2 -2
  56. package/dist/nile-file-upload/nile-file-upload.template.cjs.js +2 -2
  57. package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +1 -1
  58. package/dist/nile-file-upload/nile-file-upload.template.esm.js +36 -32
  59. package/dist/nile-file-upload/types/file-upload.enums.cjs.js +1 -1
  60. package/dist/nile-file-upload/types/file-upload.enums.cjs.js.map +1 -1
  61. package/dist/nile-file-upload/types/file-upload.enums.esm.js +1 -1
  62. package/dist/nile-file-upload/types/index.cjs.js +1 -1
  63. package/dist/nile-file-upload/types/index.esm.js +1 -1
  64. package/dist/nile-file-upload/utils/drag-drop.util.cjs.js +1 -1
  65. package/dist/nile-file-upload/utils/drag-drop.util.cjs.js.map +1 -1
  66. package/dist/nile-file-upload/utils/drag-drop.util.esm.js +1 -1
  67. package/dist/nile-file-upload/utils/file-validation.util.cjs.js +4 -2
  68. package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +1 -1
  69. package/dist/nile-file-upload/utils/file-validation.util.esm.js +1 -1
  70. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.cjs.js +1 -1
  71. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.cjs.js.map +1 -1
  72. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.esm.js +3 -3
  73. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.cjs.js +1 -1
  74. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.cjs.js.map +1 -1
  75. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.esm.js +1 -1
  76. package/dist/nile-grid/nile-grid.cjs.js +1 -1
  77. package/dist/nile-grid/nile-grid.cjs.js.map +1 -1
  78. package/dist/nile-grid/nile-grid.esm.js +2 -2
  79. package/dist/nile-grid/nile-grid.layout.cjs.js +1 -1
  80. package/dist/nile-grid/nile-grid.layout.esm.js +1 -1
  81. package/dist/nile-grid/nile-grid.resize.cjs.js +1 -1
  82. package/dist/nile-grid/nile-grid.resize.esm.js +1 -1
  83. package/dist/nile-grid/nile-grid.utils.cjs.js +1 -1
  84. package/dist/nile-grid/nile-grid.utils.esm.js +1 -1
  85. package/dist/nile-grid/nile-grid.width.cjs.js +1 -1
  86. package/dist/nile-grid/nile-grid.width.cjs.js.map +1 -1
  87. package/dist/nile-grid/nile-grid.width.esm.js +1 -1
  88. package/dist/nile-icon/icons/svg/delete_history.cjs.js +2 -0
  89. package/dist/nile-icon/icons/svg/delete_history.cjs.js.map +1 -0
  90. package/dist/nile-icon/icons/svg/delete_history.esm.js +1 -0
  91. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  92. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  93. package/dist/nile-icon/index.cjs.js +1 -1
  94. package/dist/nile-icon/index.cjs.js.map +1 -1
  95. package/dist/nile-icon/index.esm.js +1 -1
  96. package/dist/nile-icon-button/index.cjs.js +1 -1
  97. package/dist/nile-icon-button/index.esm.js +1 -1
  98. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  99. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  100. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  101. package/dist/nile-input/index.cjs.js +1 -1
  102. package/dist/nile-input/index.esm.js +1 -1
  103. package/dist/nile-input/nile-input.cjs.js +1 -1
  104. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  105. package/dist/nile-input/nile-input.esm.js +2 -2
  106. package/dist/nile-menu-item/index.cjs.js +1 -1
  107. package/dist/nile-menu-item/index.esm.js +1 -1
  108. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  109. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  110. package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
  111. package/dist/nile-option/index.cjs.js +1 -1
  112. package/dist/nile-option/index.esm.js +1 -1
  113. package/dist/nile-option/nile-option.cjs.js +1 -1
  114. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  115. package/dist/nile-option/nile-option.esm.js +1 -1
  116. package/dist/nile-popover/index.cjs.js +1 -1
  117. package/dist/nile-popover/index.esm.js +1 -1
  118. package/dist/nile-popover/nile-popover.cjs.js +4 -4
  119. package/dist/nile-popover/nile-popover.cjs.js.map +1 -1
  120. package/dist/nile-popover/nile-popover.esm.js +11 -6
  121. package/dist/nile-select/index.cjs.js +1 -1
  122. package/dist/nile-select/index.esm.js +1 -1
  123. package/dist/nile-select/nile-select.cjs.js +1 -1
  124. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  125. package/dist/nile-select/nile-select.esm.js +1 -1
  126. package/dist/nile-side-bar-action-menu-item/index.cjs.js +1 -1
  127. package/dist/nile-side-bar-action-menu-item/index.esm.js +1 -1
  128. package/dist/nile-side-bar-action-menu-item/nile-side-bar-action-menu-item.cjs.js +1 -1
  129. package/dist/nile-side-bar-action-menu-item/nile-side-bar-action-menu-item.cjs.js.map +1 -1
  130. package/dist/nile-side-bar-action-menu-item/nile-side-bar-action-menu-item.esm.js +1 -1
  131. package/dist/nile-tab/index.cjs.js +1 -1
  132. package/dist/nile-tab/index.esm.js +1 -1
  133. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  134. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  135. package/dist/nile-tab/nile-tab.esm.js +1 -1
  136. package/dist/nile-tab-group/index.cjs.js +1 -1
  137. package/dist/nile-tab-group/index.esm.js +1 -1
  138. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  139. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  140. package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
  141. package/dist/nile-tag/index.cjs.js +1 -1
  142. package/dist/nile-tag/index.esm.js +1 -1
  143. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  144. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  145. package/dist/nile-tag/nile-tag.esm.js +1 -1
  146. package/dist/nile-toast/index.cjs.js +1 -1
  147. package/dist/nile-toast/index.esm.js +1 -1
  148. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  149. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  150. package/dist/nile-toast/nile-toast.esm.js +1 -1
  151. package/dist/nile-tree/index.cjs.js +1 -1
  152. package/dist/nile-tree/index.esm.js +1 -1
  153. package/dist/nile-tree/nile-tree.cjs.js +1 -1
  154. package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
  155. package/dist/nile-tree/nile-tree.esm.js +1 -1
  156. package/dist/nile-tree-item/index.cjs.js +1 -1
  157. package/dist/nile-tree-item/index.esm.js +1 -1
  158. package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
  159. package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
  160. package/dist/nile-tree-item/nile-tree-item.esm.js +1 -1
  161. package/dist/nile-virtual-select/index.cjs.js +1 -1
  162. package/dist/nile-virtual-select/index.esm.js +1 -1
  163. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +2 -2
  164. package/dist/nile-virtual-select/nile-virtual-select.esm.js +1 -1
  165. package/dist/src/nile-accordion/nile-accordian.test.js +101 -99
  166. package/dist/src/nile-accordion/nile-accordian.test.js.map +1 -1
  167. package/dist/src/nile-auto-complete/nile-auto-complete.css.js +1 -1
  168. package/dist/src/nile-auto-complete/nile-auto-complete.css.js.map +1 -1
  169. package/dist/src/nile-auto-complete/nile-auto-complete.js +1 -1
  170. package/dist/src/nile-auto-complete/nile-auto-complete.js.map +1 -1
  171. package/dist/src/nile-auto-complete/nile-auto-complete.test.js +104 -112
  172. package/dist/src/nile-auto-complete/nile-auto-complete.test.js.map +1 -1
  173. package/dist/src/nile-avatar/nile-avatar.test.d.ts +0 -1
  174. package/dist/src/nile-avatar/nile-avatar.test.js +103 -87
  175. package/dist/src/nile-avatar/nile-avatar.test.js.map +1 -1
  176. package/dist/src/nile-badge/nile-badge.test.js +554 -35
  177. package/dist/src/nile-badge/nile-badge.test.js.map +1 -1
  178. package/dist/src/nile-breadcrumb/nile-breadcrumb.test.d.ts +2 -0
  179. package/dist/src/nile-breadcrumb/nile-breadcrumb.test.js +106 -0
  180. package/dist/src/nile-breadcrumb/nile-breadcrumb.test.js.map +1 -0
  181. package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.test.d.ts +1 -0
  182. package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.test.js +108 -0
  183. package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.test.js.map +1 -0
  184. package/dist/src/nile-button/nile-button.test.js +499 -39
  185. package/dist/src/nile-button/nile-button.test.js.map +1 -1
  186. package/dist/src/nile-button-filter/nile-button-filter.test.d.ts +1 -0
  187. package/dist/src/nile-button-filter/nile-button-filter.test.js +108 -0
  188. package/dist/src/nile-button-filter/nile-button-filter.test.js.map +1 -0
  189. package/dist/src/nile-button-toggle/nile-button-toggle.test.d.ts +1 -0
  190. package/dist/src/nile-button-toggle/nile-button-toggle.test.js +108 -0
  191. package/dist/src/nile-button-toggle/nile-button-toggle.test.js.map +1 -0
  192. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.d.ts +1 -1
  193. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.js +105 -104
  194. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.js.map +1 -1
  195. package/dist/src/nile-calendar/nile-calendar.test.d.ts +0 -6
  196. package/dist/src/nile-calendar/nile-calendar.test.js +103 -318
  197. package/dist/src/nile-calendar/nile-calendar.test.js.map +1 -1
  198. package/dist/src/nile-card/nile-card.test.js +102 -66
  199. package/dist/src/nile-card/nile-card.test.js.map +1 -1
  200. package/dist/src/nile-checkbox/nile-checkbox.test.js +547 -108
  201. package/dist/src/nile-checkbox/nile-checkbox.test.js.map +1 -1
  202. package/dist/src/nile-chip/nile-chip.test.d.ts +0 -2
  203. package/dist/src/nile-chip/nile-chip.test.js +101 -102
  204. package/dist/src/nile-chip/nile-chip.test.js.map +1 -1
  205. package/dist/src/nile-circular-progressbar/nile-circular-progressbar.test.d.ts +1 -0
  206. package/dist/src/nile-circular-progressbar/nile-circular-progressbar.test.js +108 -0
  207. package/dist/src/nile-circular-progressbar/nile-circular-progressbar.test.js.map +1 -0
  208. package/dist/src/nile-date-picker/nile-date-picker.test.d.ts +1 -0
  209. package/dist/src/nile-date-picker/nile-date-picker.test.js +108 -0
  210. package/dist/src/nile-date-picker/nile-date-picker.test.js.map +1 -0
  211. package/dist/src/nile-dialog/nile-dialog.test.d.ts +0 -1
  212. package/dist/src/nile-dialog/nile-dialog.test.js +104 -126
  213. package/dist/src/nile-dialog/nile-dialog.test.js.map +1 -1
  214. package/dist/src/nile-divider/nile-divider.test.d.ts +1 -0
  215. package/dist/src/nile-divider/nile-divider.test.js +560 -0
  216. package/dist/src/nile-divider/nile-divider.test.js.map +1 -0
  217. package/dist/src/nile-drawer/nile-drawer.test.js +106 -86
  218. package/dist/src/nile-drawer/nile-drawer.test.js.map +1 -1
  219. package/dist/src/nile-dropdown/nile-dropdown.test.js +104 -148
  220. package/dist/src/nile-dropdown/nile-dropdown.test.js.map +1 -1
  221. package/dist/src/nile-empty-state/nile-empty-state.test.js +107 -59
  222. package/dist/src/nile-empty-state/nile-empty-state.test.js.map +1 -1
  223. package/dist/src/nile-error-message/nile-error-message.test.js +105 -55
  224. package/dist/src/nile-error-message/nile-error-message.test.js.map +1 -1
  225. package/dist/src/nile-error-notification/nile-error-notification.test.d.ts +1 -0
  226. package/dist/src/nile-error-notification/nile-error-notification.test.js +108 -0
  227. package/dist/src/nile-error-notification/nile-error-notification.test.js.map +1 -0
  228. package/dist/src/nile-file-preview/nile-file-preview.css.js +2 -2
  229. package/dist/src/nile-file-preview/nile-file-preview.css.js.map +1 -1
  230. package/dist/src/nile-file-preview/nile-file-preview.d.ts +1 -4
  231. package/dist/src/nile-file-preview/nile-file-preview.js +21 -47
  232. package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -1
  233. package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +6 -6
  234. package/dist/src/nile-file-preview/nile-file-preview.template.js +53 -23
  235. package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -1
  236. package/dist/src/nile-file-preview/nile-file-preview.test.d.ts +0 -6
  237. package/dist/src/nile-file-preview/nile-file-preview.test.js +106 -28
  238. package/dist/src/nile-file-preview/nile-file-preview.test.js.map +1 -1
  239. package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +3 -2
  240. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +32 -7
  241. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +1 -1
  242. package/dist/src/nile-file-upload/nile-file-upload.css.js +15 -5
  243. package/dist/src/nile-file-upload/nile-file-upload.css.js.map +1 -1
  244. package/dist/src/nile-file-upload/nile-file-upload.d.ts +4 -1
  245. package/dist/src/nile-file-upload/nile-file-upload.js +13 -1
  246. package/dist/src/nile-file-upload/nile-file-upload.js.map +1 -1
  247. package/dist/src/nile-file-upload/nile-file-upload.template.js +19 -15
  248. package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -1
  249. package/dist/src/nile-file-upload/nile-file-upload.test.d.ts +0 -6
  250. package/dist/src/nile-file-upload/nile-file-upload.test.js +106 -28
  251. package/dist/src/nile-file-upload/nile-file-upload.test.js.map +1 -1
  252. package/dist/src/nile-file-upload/types/file-upload.enums.d.ts +17 -3
  253. package/dist/src/nile-file-upload/types/file-upload.enums.js +17 -1
  254. package/dist/src/nile-file-upload/types/file-upload.enums.js.map +1 -1
  255. package/dist/src/nile-file-upload/utils/drag-drop.util.d.ts +2 -0
  256. package/dist/src/nile-file-upload/utils/drag-drop.util.js +14 -8
  257. package/dist/src/nile-file-upload/utils/drag-drop.util.js.map +1 -1
  258. package/dist/src/nile-file-upload/utils/file-validation.util.js +89 -10
  259. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
  260. package/dist/src/nile-filter-chip/nile-filter-chip.test.js +102 -77
  261. package/dist/src/nile-filter-chip/nile-filter-chip.test.js.map +1 -1
  262. package/dist/src/nile-form-error-message/nile-form-error-message.test.d.ts +1 -0
  263. package/dist/src/nile-form-error-message/nile-form-error-message.test.js +108 -0
  264. package/dist/src/nile-form-error-message/nile-form-error-message.test.js.map +1 -0
  265. package/dist/src/nile-form-group/nile-form-group.test.js +104 -51
  266. package/dist/src/nile-form-group/nile-form-group.test.js.map +1 -1
  267. package/dist/src/nile-form-help-text/nile-form-help-text.test.js +104 -84
  268. package/dist/src/nile-form-help-text/nile-form-help-text.test.js.map +1 -1
  269. package/dist/src/nile-format-date/nile-format-date.test.d.ts +1 -0
  270. package/dist/src/nile-format-date/nile-format-date.test.js +108 -0
  271. package/dist/src/nile-format-date/nile-format-date.test.js.map +1 -0
  272. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.js +6 -5
  273. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.js.map +1 -1
  274. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.d.ts +14 -0
  275. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.js +24 -0
  276. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.js.map +1 -1
  277. package/dist/src/nile-grid/nile-grid.d.ts +1 -0
  278. package/dist/src/nile-grid/nile-grid.js +5 -1
  279. package/dist/src/nile-grid/nile-grid.js.map +1 -1
  280. package/dist/src/nile-grid/nile-grid.utils.d.ts +6 -0
  281. package/dist/src/nile-grid/nile-grid.utils.js +13 -0
  282. package/dist/src/nile-grid/nile-grid.utils.js.map +1 -1
  283. package/dist/src/nile-heading/nile-heading.test.d.ts +1 -0
  284. package/dist/src/nile-heading/nile-heading.test.js +108 -0
  285. package/dist/src/nile-heading/nile-heading.test.js.map +1 -0
  286. package/dist/src/nile-hero/nile-hero.test.js +101 -38
  287. package/dist/src/nile-hero/nile-hero.test.js.map +1 -1
  288. package/dist/src/nile-icon/icons/svg/delete_history.d.ts +5 -0
  289. package/dist/src/nile-icon/icons/svg/delete_history.js +5 -0
  290. package/dist/src/nile-icon/icons/svg/delete_history.js.map +1 -0
  291. package/dist/src/nile-icon/icons/svg/index.d.ts +1 -0
  292. package/dist/src/nile-icon/icons/svg/index.js +1 -0
  293. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  294. package/dist/src/nile-icon/nile-icon.test.js +103 -40
  295. package/dist/src/nile-icon/nile-icon.test.js.map +1 -1
  296. package/dist/src/nile-icon-button/nile-icon-button.test.d.ts +1 -0
  297. package/dist/src/nile-icon-button/nile-icon-button.test.js +568 -0
  298. package/dist/src/nile-icon-button/nile-icon-button.test.js.map +1 -0
  299. package/dist/src/nile-inline-edit/nile-inline-edit.test.d.ts +1 -0
  300. package/dist/src/nile-inline-edit/nile-inline-edit.test.js +108 -0
  301. package/dist/src/nile-inline-edit/nile-inline-edit.test.js.map +1 -0
  302. package/dist/src/nile-input/nile-input.js +1 -1
  303. package/dist/src/nile-input/nile-input.js.map +1 -1
  304. package/dist/src/nile-input/nile-input.test.js +109 -139
  305. package/dist/src/nile-input/nile-input.test.js.map +1 -1
  306. package/dist/src/nile-link/nile-link.test.js +103 -67
  307. package/dist/src/nile-link/nile-link.test.js.map +1 -1
  308. package/dist/src/nile-list/nile-list.test.d.ts +1 -0
  309. package/dist/src/nile-list/nile-list.test.js +108 -0
  310. package/dist/src/nile-list/nile-list.test.js.map +1 -0
  311. package/dist/src/nile-list-item/nile-list-item.test.d.ts +1 -0
  312. package/dist/src/nile-list-item/nile-list-item.test.js +108 -0
  313. package/dist/src/nile-list-item/nile-list-item.test.js.map +1 -0
  314. package/dist/src/nile-lite-tooltip/nile-lite-tooltip.test.d.ts +2 -0
  315. package/dist/src/nile-lite-tooltip/nile-lite-tooltip.test.js +109 -0
  316. package/dist/src/nile-lite-tooltip/nile-lite-tooltip.test.js.map +1 -0
  317. package/dist/src/nile-loader/nile-loader.test.js +107 -40
  318. package/dist/src/nile-loader/nile-loader.test.js.map +1 -1
  319. package/dist/src/nile-menu/nile-menu.test.d.ts +1 -0
  320. package/dist/src/nile-menu/nile-menu.test.js +113 -0
  321. package/dist/src/nile-menu/nile-menu.test.js.map +1 -0
  322. package/dist/src/nile-menu-item/nile-menu-item.test.d.ts +1 -0
  323. package/dist/src/nile-menu-item/nile-menu-item.test.js +113 -0
  324. package/dist/src/nile-menu-item/nile-menu-item.test.js.map +1 -0
  325. package/dist/src/nile-option/nile-option.test.d.ts +1 -0
  326. package/dist/src/nile-option/nile-option.test.js +108 -0
  327. package/dist/src/nile-option/nile-option.test.js.map +1 -0
  328. package/dist/src/nile-option-group/nile-option-group.test.d.ts +1 -0
  329. package/dist/src/nile-option-group/nile-option-group.test.js +108 -0
  330. package/dist/src/nile-option-group/nile-option-group.test.js.map +1 -0
  331. package/dist/src/nile-page-header/nile-page-header.test.d.ts +1 -0
  332. package/dist/src/nile-page-header/nile-page-header.test.js +108 -0
  333. package/dist/src/nile-page-header/nile-page-header.test.js.map +1 -0
  334. package/dist/src/nile-pagination/nile-pagination.test.d.ts +1 -0
  335. package/dist/src/nile-pagination/nile-pagination.test.js +108 -0
  336. package/dist/src/nile-pagination/nile-pagination.test.js.map +1 -0
  337. package/dist/src/nile-popover/nile-popover.test.js +103 -68
  338. package/dist/src/nile-popover/nile-popover.test.js.map +1 -1
  339. package/dist/src/nile-popup/nile-popup.test.js +104 -65
  340. package/dist/src/nile-popup/nile-popup.test.js.map +1 -1
  341. package/dist/src/nile-progress-bar/nile-progress-bar.test.js +104 -44
  342. package/dist/src/nile-progress-bar/nile-progress-bar.test.js.map +1 -1
  343. package/dist/src/nile-radio/nile-radio.test.js +103 -66
  344. package/dist/src/nile-radio/nile-radio.test.js.map +1 -1
  345. package/dist/src/nile-radio-group/nile-radio-group.test.d.ts +0 -1
  346. package/dist/src/nile-radio-group/nile-radio-group.test.js +105 -171
  347. package/dist/src/nile-radio-group/nile-radio-group.test.js.map +1 -1
  348. package/dist/src/nile-section-message/nile-section-message.test.d.ts +1 -0
  349. package/dist/src/nile-section-message/nile-section-message.test.js +108 -0
  350. package/dist/src/nile-section-message/nile-section-message.test.js.map +1 -0
  351. package/dist/src/nile-select/nile-select.test.d.ts +0 -5
  352. package/dist/src/nile-select/nile-select.test.js +105 -244
  353. package/dist/src/nile-select/nile-select.test.js.map +1 -1
  354. package/dist/src/nile-skeleton-loader/nile-skeleton-loader.test.d.ts +1 -0
  355. package/dist/src/nile-skeleton-loader/nile-skeleton-loader.test.js +108 -0
  356. package/dist/src/nile-skeleton-loader/nile-skeleton-loader.test.js.map +1 -0
  357. package/dist/src/nile-slide-toggle/nile-slide-toggle.test.js +104 -50
  358. package/dist/src/nile-slide-toggle/nile-slide-toggle.test.js.map +1 -1
  359. package/dist/src/nile-slider/nile-slider.test.d.ts +1 -0
  360. package/dist/src/nile-slider/nile-slider.test.js +108 -0
  361. package/dist/src/nile-slider/nile-slider.test.js.map +1 -0
  362. package/dist/src/nile-spinner/nile-spinner.test.d.ts +1 -0
  363. package/dist/src/nile-spinner/nile-spinner.test.js +569 -0
  364. package/dist/src/nile-spinner/nile-spinner.test.js.map +1 -0
  365. package/dist/src/nile-split-panel/nile-split-panel.test.d.ts +1 -0
  366. package/dist/src/nile-split-panel/nile-split-panel.test.js +108 -0
  367. package/dist/src/nile-split-panel/nile-split-panel.test.js.map +1 -0
  368. package/dist/src/nile-stepper/nile-stepper.test.d.ts +2 -0
  369. package/dist/src/nile-stepper/nile-stepper.test.js +109 -0
  370. package/dist/src/nile-stepper/nile-stepper.test.js.map +1 -0
  371. package/dist/src/nile-stepper-item/nile-stepper-item.test.d.ts +1 -0
  372. package/dist/src/nile-stepper-item/nile-stepper-item.test.js +108 -0
  373. package/dist/src/nile-stepper-item/nile-stepper-item.test.js.map +1 -0
  374. package/dist/src/nile-tab/nile-tab.test.d.ts +1 -0
  375. package/dist/src/nile-tab/nile-tab.test.js +108 -0
  376. package/dist/src/nile-tab/nile-tab.test.js.map +1 -0
  377. package/dist/src/nile-tab-group/nile-tab-group.test.js +105 -172
  378. package/dist/src/nile-tab-group/nile-tab-group.test.js.map +1 -1
  379. package/dist/src/nile-tab-panel/nile-tab-panel.test.d.ts +1 -0
  380. package/dist/src/nile-tab-panel/nile-tab-panel.test.js +108 -0
  381. package/dist/src/nile-tab-panel/nile-tab-panel.test.js.map +1 -0
  382. package/dist/src/nile-tag/nile-tag.test.d.ts +1 -0
  383. package/dist/src/nile-tag/nile-tag.test.js +574 -0
  384. package/dist/src/nile-tag/nile-tag.test.js.map +1 -0
  385. package/dist/src/nile-textarea/nile-textarea.test.d.ts +1 -1
  386. package/dist/src/nile-textarea/nile-textarea.test.js +105 -84
  387. package/dist/src/nile-textarea/nile-textarea.test.js.map +1 -1
  388. package/dist/src/nile-title/nile-title.test.d.ts +1 -0
  389. package/dist/src/nile-title/nile-title.test.js +108 -0
  390. package/dist/src/nile-title/nile-title.test.js.map +1 -0
  391. package/dist/src/nile-toast/nile-toast.test.d.ts +1 -0
  392. package/dist/src/nile-toast/nile-toast.test.js +526 -0
  393. package/dist/src/nile-toast/nile-toast.test.js.map +1 -0
  394. package/dist/src/nile-toolbar/nile-toolbar.test.d.ts +1 -0
  395. package/dist/src/nile-toolbar/nile-toolbar.test.js +108 -0
  396. package/dist/src/nile-toolbar/nile-toolbar.test.js.map +1 -0
  397. package/dist/src/nile-tooltip/nile-tooltip.test.d.ts +1 -0
  398. package/dist/src/nile-tooltip/nile-tooltip.test.js +546 -0
  399. package/dist/src/nile-tooltip/nile-tooltip.test.js.map +1 -0
  400. package/dist/src/nile-virtual-select/nile-virtual-select.test.d.ts +1 -7
  401. package/dist/src/nile-virtual-select/nile-virtual-select.test.js +105 -628
  402. package/dist/src/nile-virtual-select/nile-virtual-select.test.js.map +1 -1
  403. package/dist/src/version.js +2 -2
  404. package/dist/src/version.js.map +1 -1
  405. package/dist/tsconfig.tsbuildinfo +1 -1
  406. package/package.json +1 -1
  407. package/rollup.config.js +7 -1
  408. package/src/nile-accordion/nile-accordian.test.ts +102 -116
  409. package/src/nile-auto-complete/nile-auto-complete.css.ts +1 -1
  410. package/src/nile-auto-complete/nile-auto-complete.test.ts +102 -145
  411. package/src/nile-auto-complete/nile-auto-complete.ts +1 -1
  412. package/src/nile-avatar/nile-avatar.test.ts +102 -112
  413. package/src/nile-badge/nile-badge.test.ts +642 -30
  414. package/src/nile-breadcrumb/nile-breadcrumb.test.ts +107 -0
  415. package/src/nile-breadcrumb-item/nile-breadcrumb-item.test.ts +106 -0
  416. package/src/nile-button/nile-button.test.ts +593 -61
  417. package/src/nile-button-filter/nile-button-filter.test.ts +106 -0
  418. package/src/nile-button-toggle/nile-button-toggle.test.ts +106 -0
  419. package/src/nile-button-toggle-group/nile-button-toggle-group.test.ts +104 -126
  420. package/src/nile-calendar/nile-calendar.test.ts +102 -406
  421. package/src/nile-card/nile-card.test.ts +103 -71
  422. package/src/nile-checkbox/nile-checkbox.test.ts +614 -108
  423. package/src/nile-chip/nile-chip.test.ts +102 -136
  424. package/src/nile-circular-progressbar/nile-circular-progressbar.test.ts +106 -0
  425. package/src/nile-date-picker/nile-date-picker.test.ts +106 -0
  426. package/src/nile-dialog/nile-dialog.test.ts +102 -164
  427. package/src/nile-divider/nile-divider.test.ts +659 -0
  428. package/src/nile-drawer/nile-drawer.test.ts +105 -105
  429. package/src/nile-dropdown/nile-dropdown.test.ts +102 -190
  430. package/src/nile-empty-state/nile-empty-state.test.ts +104 -67
  431. package/src/nile-error-message/nile-error-message.test.ts +104 -67
  432. package/src/nile-error-notification/nile-error-notification.test.ts +106 -0
  433. package/src/nile-file-preview/nile-file-preview.css.ts +2 -2
  434. package/src/nile-file-preview/nile-file-preview.template.ts +59 -23
  435. package/src/nile-file-preview/nile-file-preview.test.ts +105 -37
  436. package/src/nile-file-preview/nile-file-preview.ts +23 -56
  437. package/src/nile-file-preview/utils/nile-file-preview.util.ts +37 -8
  438. package/src/nile-file-upload/nile-file-upload.css.ts +15 -5
  439. package/src/nile-file-upload/nile-file-upload.template.ts +22 -18
  440. package/src/nile-file-upload/nile-file-upload.test.ts +105 -37
  441. package/src/nile-file-upload/nile-file-upload.ts +11 -3
  442. package/src/nile-file-upload/types/file-upload.enums.ts +20 -4
  443. package/src/nile-file-upload/utils/drag-drop.util.ts +20 -11
  444. package/src/nile-file-upload/utils/file-validation.util.ts +104 -22
  445. package/src/nile-filter-chip/nile-filter-chip.test.ts +103 -89
  446. package/src/nile-form-error-message/nile-form-error-message.test.ts +106 -0
  447. package/src/nile-form-group/nile-form-group.test.ts +103 -60
  448. package/src/nile-form-help-text/nile-form-help-text.test.ts +102 -106
  449. package/src/nile-format-date/nile-format-date.test.ts +106 -0
  450. package/src/nile-grid/nile-grid-head-item/nile-grid-head-item.ts +7 -5
  451. package/src/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.ts +28 -0
  452. package/src/nile-grid/nile-grid.ts +6 -1
  453. package/src/nile-grid/nile-grid.utils.ts +18 -1
  454. package/src/nile-heading/nile-heading.test.ts +106 -0
  455. package/src/nile-hero/nile-hero.test.ts +103 -42
  456. package/src/nile-icon/icons/svg/delete_history.ts +5 -0
  457. package/src/nile-icon/icons/svg/index.ts +1 -0
  458. package/src/nile-icon/nile-icon.test.ts +103 -50
  459. package/src/nile-icon-button/nile-icon-button.test.ts +667 -0
  460. package/src/nile-inline-edit/nile-inline-edit.test.ts +106 -0
  461. package/src/nile-input/nile-input.test.ts +105 -164
  462. package/src/nile-input/nile-input.ts +1 -1
  463. package/src/nile-link/nile-link.test.ts +104 -81
  464. package/src/nile-list/nile-list.test.ts +106 -0
  465. package/src/nile-list-item/nile-list-item.test.ts +106 -0
  466. package/src/nile-lite-tooltip/nile-lite-tooltip.test.ts +107 -0
  467. package/src/nile-loader/nile-loader.test.ts +103 -48
  468. package/src/nile-menu/nile-menu.test.ts +106 -0
  469. package/src/nile-menu-item/nile-menu-item.test.ts +106 -0
  470. package/src/nile-option/nile-option.test.ts +106 -0
  471. package/src/nile-option-group/nile-option-group.test.ts +106 -0
  472. package/src/nile-page-header/nile-page-header.test.ts +106 -0
  473. package/src/nile-pagination/nile-pagination.test.ts +106 -0
  474. package/src/nile-popover/nile-popover.test.ts +103 -83
  475. package/src/nile-popup/nile-popup.test.ts +102 -82
  476. package/src/nile-progress-bar/nile-progress-bar.test.ts +103 -52
  477. package/src/nile-radio/nile-radio.test.ts +103 -78
  478. package/src/nile-radio-group/nile-radio-group.test.ts +104 -213
  479. package/src/nile-section-message/nile-section-message.test.ts +106 -0
  480. package/src/nile-select/nile-select.test.ts +105 -308
  481. package/src/nile-skeleton-loader/nile-skeleton-loader.test.ts +106 -0
  482. package/src/nile-slide-toggle/nile-slide-toggle.test.ts +103 -58
  483. package/src/nile-slider/nile-slider.test.ts +106 -0
  484. package/src/nile-spinner/nile-spinner.test.ts +668 -0
  485. package/src/nile-split-panel/nile-split-panel.test.ts +106 -0
  486. package/src/nile-stepper/nile-stepper.test.ts +107 -0
  487. package/src/nile-stepper-item/nile-stepper-item.test.ts +106 -0
  488. package/src/nile-tab/nile-tab.test.ts +106 -0
  489. package/src/nile-tab-group/nile-tab-group.test.ts +104 -211
  490. package/src/nile-tab-panel/nile-tab-panel.test.ts +106 -0
  491. package/src/nile-tag/nile-tag.test.ts +675 -0
  492. package/src/nile-textarea/nile-textarea.test.ts +104 -100
  493. package/src/nile-title/nile-title.test.ts +106 -0
  494. package/src/nile-toast/nile-toast.test.ts +625 -0
  495. package/src/nile-toolbar/nile-toolbar.test.ts +106 -0
  496. package/src/nile-tooltip/nile-tooltip.test.ts +645 -0
  497. package/src/nile-virtual-select/nile-virtual-select.test.ts +104 -772
  498. package/vscode-html-custom-data.json +8 -3
  499. package/web-test-runner.config.mjs +4 -2
  500. package/dist/axe.min-2720cd56.esm.js +0 -1
  501. package/dist/axe.min-69d47269.cjs.js +0 -2
  502. package/dist/axe.min-69d47269.cjs.js.map +0 -1
  503. package/dist/css-tag-bb10c0fa.cjs.js +0 -6
  504. package/dist/css-tag-bb10c0fa.cjs.js.map +0 -1
  505. package/dist/css-tag-dc564feb.esm.js +0 -6
  506. package/dist/fixture-958445f8.cjs.js +0 -395
  507. package/dist/fixture-958445f8.cjs.js.map +0 -1
  508. package/dist/fixture-985bba12.esm.js +0 -569
  509. package/dist/nile-accordion/nile-accordian.test.cjs.js +0 -2
  510. package/dist/nile-accordion/nile-accordian.test.cjs.js.map +0 -1
  511. package/dist/nile-accordion/nile-accordian.test.esm.js +0 -1
  512. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +0 -2
  513. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js.map +0 -1
  514. package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +0 -9
  515. package/dist/nile-avatar/nile-avatar.test.cjs.js +0 -2
  516. package/dist/nile-avatar/nile-avatar.test.cjs.js.map +0 -1
  517. package/dist/nile-avatar/nile-avatar.test.esm.js +0 -11
  518. package/dist/nile-badge/nile-badge.test.cjs.js +0 -2
  519. package/dist/nile-badge/nile-badge.test.cjs.js.map +0 -1
  520. package/dist/nile-badge/nile-badge.test.esm.js +0 -1
  521. package/dist/nile-button/nile-button.test.cjs.js +0 -2
  522. package/dist/nile-button/nile-button.test.cjs.js.map +0 -1
  523. package/dist/nile-button/nile-button.test.esm.js +0 -4
  524. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +0 -2
  525. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js.map +0 -1
  526. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +0 -49
  527. package/dist/nile-calendar/nile-calendar.test.cjs.js +0 -2
  528. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +0 -1
  529. package/dist/nile-calendar/nile-calendar.test.esm.js +0 -11
  530. package/dist/nile-card/nile-card.test.cjs.js +0 -2
  531. package/dist/nile-card/nile-card.test.cjs.js.map +0 -1
  532. package/dist/nile-card/nile-card.test.esm.js +0 -51
  533. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +0 -2
  534. package/dist/nile-checkbox/nile-checkbox.test.cjs.js.map +0 -1
  535. package/dist/nile-checkbox/nile-checkbox.test.esm.js +0 -17
  536. package/dist/nile-chip/nile-chip.test.cjs.js +0 -2
  537. package/dist/nile-chip/nile-chip.test.cjs.js.map +0 -1
  538. package/dist/nile-chip/nile-chip.test.esm.js +0 -1
  539. package/dist/nile-dialog/nile-dialog.test.cjs.js +0 -2
  540. package/dist/nile-dialog/nile-dialog.test.cjs.js.map +0 -1
  541. package/dist/nile-dialog/nile-dialog.test.esm.js +0 -7
  542. package/dist/nile-drawer/nile-drawer.test.cjs.js +0 -2
  543. package/dist/nile-drawer/nile-drawer.test.cjs.js.map +0 -1
  544. package/dist/nile-drawer/nile-drawer.test.esm.js +0 -17
  545. package/dist/nile-dropdown/nile-dropdown.test.cjs.js +0 -2
  546. package/dist/nile-dropdown/nile-dropdown.test.cjs.js.map +0 -1
  547. package/dist/nile-dropdown/nile-dropdown.test.esm.js +0 -28
  548. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +0 -2
  549. package/dist/nile-empty-state/nile-empty-state.test.cjs.js.map +0 -1
  550. package/dist/nile-empty-state/nile-empty-state.test.esm.js +0 -9
  551. package/dist/nile-error-message/nile-error-message.test.cjs.js +0 -2
  552. package/dist/nile-error-message/nile-error-message.test.cjs.js.map +0 -1
  553. package/dist/nile-error-message/nile-error-message.test.esm.js +0 -1
  554. package/dist/nile-file-preview/nile-file-preview.test.cjs.js +0 -2
  555. package/dist/nile-file-preview/nile-file-preview.test.cjs.js.map +0 -1
  556. package/dist/nile-file-preview/nile-file-preview.test.esm.js +0 -1
  557. package/dist/nile-file-upload/nile-file-upload.test.cjs.js +0 -2
  558. package/dist/nile-file-upload/nile-file-upload.test.cjs.js.map +0 -1
  559. package/dist/nile-file-upload/nile-file-upload.test.esm.js +0 -1
  560. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +0 -2
  561. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js.map +0 -1
  562. package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +0 -20
  563. package/dist/nile-form-group/nile-form-group.test.cjs.js +0 -2
  564. package/dist/nile-form-group/nile-form-group.test.cjs.js.map +0 -1
  565. package/dist/nile-form-group/nile-form-group.test.esm.js +0 -1
  566. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +0 -2
  567. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js.map +0 -1
  568. package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +0 -1
  569. package/dist/nile-hero/nile-hero.test.cjs.js +0 -2
  570. package/dist/nile-hero/nile-hero.test.cjs.js.map +0 -1
  571. package/dist/nile-hero/nile-hero.test.esm.js +0 -14
  572. package/dist/nile-icon/nile-icon.test.cjs.js +0 -2
  573. package/dist/nile-icon/nile-icon.test.cjs.js.map +0 -1
  574. package/dist/nile-icon/nile-icon.test.esm.js +0 -1
  575. package/dist/nile-input/nile-input.test.cjs.js +0 -2
  576. package/dist/nile-input/nile-input.test.cjs.js.map +0 -1
  577. package/dist/nile-input/nile-input.test.esm.js +0 -17
  578. package/dist/nile-link/nile-link.test.cjs.js +0 -2
  579. package/dist/nile-link/nile-link.test.cjs.js.map +0 -1
  580. package/dist/nile-link/nile-link.test.esm.js +0 -1
  581. package/dist/nile-loader/nile-loader.test.cjs.js +0 -2
  582. package/dist/nile-loader/nile-loader.test.cjs.js.map +0 -1
  583. package/dist/nile-loader/nile-loader.test.esm.js +0 -1
  584. package/dist/nile-popover/nile-popover.test.cjs.js +0 -2
  585. package/dist/nile-popover/nile-popover.test.cjs.js.map +0 -1
  586. package/dist/nile-popover/nile-popover.test.esm.js +0 -21
  587. package/dist/nile-popup/nile-popup.test.cjs.js +0 -2
  588. package/dist/nile-popup/nile-popup.test.cjs.js.map +0 -1
  589. package/dist/nile-popup/nile-popup.test.esm.js +0 -1
  590. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +0 -2
  591. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js.map +0 -1
  592. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +0 -1
  593. package/dist/nile-radio/nile-radio.test.cjs.js +0 -2
  594. package/dist/nile-radio/nile-radio.test.cjs.js.map +0 -1
  595. package/dist/nile-radio/nile-radio.test.esm.js +0 -1
  596. package/dist/nile-radio-group/nile-radio-group.test.cjs.js +0 -2
  597. package/dist/nile-radio-group/nile-radio-group.test.cjs.js.map +0 -1
  598. package/dist/nile-radio-group/nile-radio-group.test.esm.js +0 -57
  599. package/dist/nile-select/nile-select.test.cjs.js +0 -2
  600. package/dist/nile-select/nile-select.test.cjs.js.map +0 -1
  601. package/dist/nile-select/nile-select.test.esm.js +0 -55
  602. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +0 -2
  603. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js.map +0 -1
  604. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +0 -1
  605. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +0 -2
  606. package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +0 -1
  607. package/dist/nile-tab-group/nile-tab-group.test.esm.js +0 -65
  608. package/dist/nile-textarea/nile-textarea.test.cjs.js +0 -2
  609. package/dist/nile-textarea/nile-textarea.test.cjs.js.map +0 -1
  610. package/dist/nile-textarea/nile-textarea.test.esm.js +0 -1
  611. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +0 -2
  612. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js.map +0 -1
  613. package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +0 -93
  614. package/dist/scopedElementsWrapper-31107e48.esm.js +0 -1
  615. package/dist/scopedElementsWrapper-9b188ea6.cjs.js +0 -2
  616. package/dist/scopedElementsWrapper-9b188ea6.cjs.js.map +0 -1
  617. package/dist/sinon-esm-68c8e378.esm.js +0 -1
  618. package/dist/sinon-esm-97570c13.cjs.js +0 -2
  619. package/dist/sinon-esm-97570c13.cjs.js.map +0 -1
@@ -0,0 +1,667 @@
1
+ import { expect, fixture, html } from '@open-wc/testing';
2
+ import './nile-icon-button';
3
+ import NileIconButton from './nile-icon-button';
4
+
5
+ describe('NileIconButton', () => {
6
+ it('1. should render without errors', async () => {
7
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
8
+ expect(el).to.exist;
9
+ });
10
+
11
+ it('2. should have a shadow root', async () => {
12
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
13
+ expect(el.shadowRoot).to.not.be.null;
14
+ });
15
+
16
+ it('3. should render a button element by default', async () => {
17
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
18
+ const button = el.shadowRoot!.querySelector('button');
19
+ expect(button).to.exist;
20
+ });
21
+
22
+ it('4. should render an anchor when href is set', async () => {
23
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com"></nile-icon-button>`);
24
+ const anchor = el.shadowRoot!.querySelector('a');
25
+ expect(anchor).to.exist;
26
+ });
27
+
28
+ it('5. should render a nile-icon inside', async () => {
29
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="test"></nile-icon-button>`);
30
+ const icon = el.shadowRoot!.querySelector('nile-icon');
31
+ expect(icon).to.exist;
32
+ });
33
+
34
+ it('6. should have disabled default to false', async () => {
35
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
36
+ expect(el.disabled).to.be.false;
37
+ });
38
+
39
+ it('7. should have label default to empty string', async () => {
40
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
41
+ expect(el.label).to.equal('');
42
+ });
43
+
44
+ it('8. should have ishovered default to false', async () => {
45
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
46
+ expect(el.ishovered).to.be.false;
47
+ });
48
+
49
+ it('9. should set name on nile-icon', async () => {
50
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="close"></nile-icon-button>`);
51
+ const icon = el.shadowRoot!.querySelector('nile-icon');
52
+ expect(icon!.getAttribute('name')).to.equal('close');
53
+ });
54
+
55
+ it('10. should set library on nile-icon', async () => {
56
+ const el = await fixture<NileIconButton>(html`<nile-icon-button library="system"></nile-icon-button>`);
57
+ const icon = el.shadowRoot!.querySelector('nile-icon');
58
+ expect(icon!.getAttribute('library')).to.equal('system');
59
+ });
60
+
61
+ it('11. should set src on nile-icon', async () => {
62
+ const el = await fixture<NileIconButton>(html`<nile-icon-button src="/icon.svg"></nile-icon-button>`);
63
+ const icon = el.shadowRoot!.querySelector('nile-icon');
64
+ expect(icon!.getAttribute('src')).to.equal('/icon.svg');
65
+ });
66
+
67
+ it('12. should set aria-label from label property', async () => {
68
+ const el = await fixture<NileIconButton>(html`<nile-icon-button label="Close"></nile-icon-button>`);
69
+ const button = el.shadowRoot!.querySelector('button');
70
+ expect(button!.getAttribute('aria-label')).to.equal('Close');
71
+ });
72
+
73
+ it('13. should have icon-button class on button', async () => {
74
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
75
+ const button = el.shadowRoot!.querySelector('.icon-button');
76
+ expect(button).to.exist;
77
+ });
78
+
79
+ it('14. should apply disabled class when disabled', async () => {
80
+ const el = await fixture<NileIconButton>(html`<nile-icon-button disabled></nile-icon-button>`);
81
+ const button = el.shadowRoot!.querySelector('.icon-button--disabled');
82
+ expect(button).to.exist;
83
+ });
84
+
85
+ it('15. should have aria-disabled true when disabled', async () => {
86
+ const el = await fixture<NileIconButton>(html`<nile-icon-button disabled></nile-icon-button>`);
87
+ const button = el.shadowRoot!.querySelector('button');
88
+ expect(button!.getAttribute('aria-disabled')).to.equal('true');
89
+ });
90
+
91
+ it('16. should have aria-disabled false when not disabled', async () => {
92
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
93
+ const button = el.shadowRoot!.querySelector('button');
94
+ expect(button!.getAttribute('aria-disabled')).to.equal('false');
95
+ });
96
+
97
+ it('17. should have tabindex 0 when enabled', async () => {
98
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
99
+ const button = el.shadowRoot!.querySelector('button');
100
+ expect(button!.getAttribute('tabindex')).to.equal('0');
101
+ });
102
+
103
+ it('18. should have tabindex -1 when disabled', async () => {
104
+ const el = await fixture<NileIconButton>(html`<nile-icon-button disabled></nile-icon-button>`);
105
+ const button = el.shadowRoot!.querySelector('button');
106
+ expect(button!.getAttribute('tabindex')).to.equal('-1');
107
+ });
108
+
109
+ it('19. should have type=button on button element', async () => {
110
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
111
+ const button = el.shadowRoot!.querySelector('button');
112
+ expect(button!.getAttribute('type')).to.equal('button');
113
+ });
114
+
115
+ it('20. should have role=button on button element', async () => {
116
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
117
+ const button = el.shadowRoot!.querySelector('button');
118
+ expect(button!.getAttribute('role')).to.equal('button');
119
+ });
120
+
121
+ it('21. should emit nile-focus on focus', async () => {
122
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
123
+ const button = el.shadowRoot!.querySelector('button');
124
+ let focusEmitted = false;
125
+ el.addEventListener('nile-focus', () => (focusEmitted = true));
126
+ button!.dispatchEvent(new FocusEvent('focus'));
127
+ expect(focusEmitted).to.be.true;
128
+ });
129
+
130
+ it('22. should emit nile-blur on blur', async () => {
131
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
132
+ const button = el.shadowRoot!.querySelector('button');
133
+ let blurEmitted = false;
134
+ el.addEventListener('nile-blur', () => (blurEmitted = true));
135
+ button!.dispatchEvent(new FocusEvent('blur'));
136
+ expect(blurEmitted).to.be.true;
137
+ });
138
+
139
+ it('23. should apply focused class on focus', async () => {
140
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
141
+ el.focus();
142
+ await el.updateComplete;
143
+ const button = el.shadowRoot!.querySelector('.icon-button--focused');
144
+ expect(button).to.exist;
145
+ });
146
+
147
+ it('24. should remove focused class on blur', async () => {
148
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
149
+ el.focus();
150
+ await el.updateComplete;
151
+ el.blur();
152
+ await el.updateComplete;
153
+ const button = el.shadowRoot!.querySelector('.icon-button--focused');
154
+ expect(button).to.be.null;
155
+ });
156
+
157
+ it('25. should have base part on button', async () => {
158
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
159
+ const base = el.shadowRoot!.querySelector('[part="base"]');
160
+ expect(base).to.exist;
161
+ });
162
+
163
+ it('26. should set href on anchor', async () => {
164
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com"></nile-icon-button>`);
165
+ const anchor = el.shadowRoot!.querySelector('a');
166
+ expect(anchor!.getAttribute('href')).to.equal('https://example.com');
167
+ });
168
+
169
+ it('27. should set target on anchor', async () => {
170
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com" target="_blank"></nile-icon-button>`);
171
+ const anchor = el.shadowRoot!.querySelector('a');
172
+ expect(anchor!.getAttribute('target')).to.equal('_blank');
173
+ });
174
+
175
+ it('28. should set download on anchor', async () => {
176
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com" download="file.pdf"></nile-icon-button>`);
177
+ const anchor = el.shadowRoot!.querySelector('a');
178
+ expect(anchor!.getAttribute('download')).to.equal('file.pdf');
179
+ });
180
+
181
+ it('29. should set rel on anchor with target', async () => {
182
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com" target="_blank"></nile-icon-button>`);
183
+ const anchor = el.shadowRoot!.querySelector('a');
184
+ expect(anchor!.getAttribute('rel')).to.equal('noreferrer noopener');
185
+ });
186
+
187
+ it('30. should reflect disabled attribute', async () => {
188
+ const el = await fixture<NileIconButton>(html`<nile-icon-button disabled></nile-icon-button>`);
189
+ expect(el.hasAttribute('disabled')).to.be.true;
190
+ });
191
+
192
+ it('31. should update disabled dynamically', async () => {
193
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
194
+ el.disabled = true;
195
+ await el.updateComplete;
196
+ const button = el.shadowRoot!.querySelector('.icon-button--disabled');
197
+ expect(button).to.exist;
198
+ });
199
+
200
+ it('32. should update name dynamically', async () => {
201
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="close"></nile-icon-button>`);
202
+ el.name = 'arrow-left';
203
+ await el.updateComplete;
204
+ const icon = el.shadowRoot!.querySelector('nile-icon');
205
+ expect(icon!.getAttribute('name')).to.equal('arrow-left');
206
+ });
207
+
208
+ it('33. should update label dynamically', async () => {
209
+ const el = await fixture<NileIconButton>(html`<nile-icon-button label="Close"></nile-icon-button>`);
210
+ el.label = 'Open';
211
+ await el.updateComplete;
212
+ const button = el.shadowRoot!.querySelector('button');
213
+ expect(button!.getAttribute('aria-label')).to.equal('Open');
214
+ });
215
+
216
+ it('34. should update color dynamically', async () => {
217
+ const el = await fixture<NileIconButton>(html`<nile-icon-button color="red"></nile-icon-button>`);
218
+ el.color = 'blue';
219
+ await el.updateComplete;
220
+ expect(el.color).to.equal('blue');
221
+ });
222
+
223
+ it('35. should switch from button to anchor when href is set', async () => {
224
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
225
+ el.href = 'https://example.com';
226
+ await el.updateComplete;
227
+ const anchor = el.shadowRoot!.querySelector('a');
228
+ expect(anchor).to.exist;
229
+ });
230
+
231
+ it('36. nile-icon should have aria-hidden true', async () => {
232
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="test"></nile-icon-button>`);
233
+ const icon = el.shadowRoot!.querySelector('nile-icon');
234
+ expect(icon!.getAttribute('aria-hidden')).to.equal('true');
235
+ });
236
+
237
+ it('37. nile-icon should have icon-button__icon class', async () => {
238
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="test"></nile-icon-button>`);
239
+ const icon = el.shadowRoot!.querySelector('.icon-button__icon');
240
+ expect(icon).to.exist;
241
+ });
242
+
243
+ it('38. should handle click programmatically', async () => {
244
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
245
+ let clicked = false;
246
+ el.addEventListener('click', () => (clicked = true));
247
+ el.click();
248
+ expect(clicked).to.be.true;
249
+ });
250
+
251
+ it('39. should prevent click when disabled', async () => {
252
+ const el = await fixture<NileIconButton>(html`<nile-icon-button disabled></nile-icon-button>`);
253
+ const button = el.shadowRoot!.querySelector('button') as HTMLButtonElement;
254
+ let defaultPrevented = false;
255
+ button.addEventListener('click', (e: MouseEvent) => {
256
+ defaultPrevented = e.defaultPrevented;
257
+ });
258
+ button.click();
259
+ // The handleClick method prevents and stops propagation when disabled
260
+ });
261
+
262
+ it('40. should set ishovered on mouseover', async () => {
263
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
264
+ const button = el.shadowRoot!.querySelector('button');
265
+ button!.dispatchEvent(new MouseEvent('mouseover'));
266
+ await el.updateComplete;
267
+ expect(el.ishovered).to.be.true;
268
+ });
269
+
270
+ it('41. should clear ishovered on mouseleave', async () => {
271
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
272
+ const button = el.shadowRoot!.querySelector('button');
273
+ button!.dispatchEvent(new MouseEvent('mouseover'));
274
+ await el.updateComplete;
275
+ button!.dispatchEvent(new MouseEvent('mouseleave'));
276
+ await el.updateComplete;
277
+ expect(el.ishovered).to.be.false;
278
+ });
279
+
280
+ it('42. should reflect ishovered attribute', async () => {
281
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
282
+ const button = el.shadowRoot!.querySelector('button');
283
+ button!.dispatchEvent(new MouseEvent('mouseover'));
284
+ await el.updateComplete;
285
+ expect(el.hasAttribute('ishovered')).to.be.true;
286
+ });
287
+
288
+ it('43. should reflect color attribute', async () => {
289
+ const el = await fixture<NileIconButton>(html`<nile-icon-button color="red"></nile-icon-button>`);
290
+ expect(el.getAttribute('color')).to.equal('red');
291
+ });
292
+
293
+ it('44. should be instance of NileIconButton', async () => {
294
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
295
+ expect(el).to.be.instanceOf(NileIconButton);
296
+ });
297
+
298
+ it('45. should have correct tag name', async () => {
299
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
300
+ expect(el.tagName.toLowerCase()).to.equal('nile-icon-button');
301
+ });
302
+
303
+ it('46. should have static styles', async () => {
304
+ expect(NileIconButton.styles).to.exist;
305
+ });
306
+
307
+ it('47. should be a defined custom element', async () => {
308
+ expect(customElements.get('nile-icon-button')).to.exist;
309
+ });
310
+
311
+ it('48. should handle undefined name', async () => {
312
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
313
+ expect(el.name).to.be.undefined;
314
+ });
315
+
316
+ it('49. should handle undefined library', async () => {
317
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
318
+ expect(el.library).to.be.undefined;
319
+ });
320
+
321
+ it('50. should handle undefined src', async () => {
322
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
323
+ expect(el.src).to.be.undefined;
324
+ });
325
+
326
+ it('51. should handle undefined href', async () => {
327
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
328
+ expect(el.href).to.be.undefined;
329
+ });
330
+
331
+ it('52. should handle undefined target', async () => {
332
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
333
+ expect(el.target).to.be.undefined;
334
+ });
335
+
336
+ it('53. should handle undefined download', async () => {
337
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
338
+ expect(el.download).to.be.undefined;
339
+ });
340
+
341
+ it('54. should render button element as base', async () => {
342
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
343
+ const base = el.shadowRoot!.querySelector('[part="base"]');
344
+ expect(base!.tagName).to.equal('BUTTON');
345
+ });
346
+
347
+ it('55. should render anchor element as base when href set', async () => {
348
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com"></nile-icon-button>`);
349
+ const base = el.shadowRoot!.querySelector('[part="base"]');
350
+ expect(base!.tagName).to.equal('A');
351
+ });
352
+
353
+ it('56. should focus programmatically', async () => {
354
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
355
+ el.focus();
356
+ await el.updateComplete;
357
+ const focused = el.shadowRoot!.querySelector('.icon-button--focused');
358
+ expect(focused).to.exist;
359
+ });
360
+
361
+ it('57. should blur programmatically', async () => {
362
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
363
+ el.focus();
364
+ await el.updateComplete;
365
+ el.blur();
366
+ await el.updateComplete;
367
+ const focused = el.shadowRoot!.querySelector('.icon-button--focused');
368
+ expect(focused).to.be.null;
369
+ });
370
+
371
+ it('58. should not have disabled class when not disabled', async () => {
372
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
373
+ const disabled = el.shadowRoot!.querySelector('.icon-button--disabled');
374
+ expect(disabled).to.be.null;
375
+ });
376
+
377
+ it('59. should handle multiple icon buttons independently', async () => {
378
+ const container = await fixture(html`
379
+ <div>
380
+ <nile-icon-button name="close" label="Close"></nile-icon-button>
381
+ <nile-icon-button name="edit" label="Edit"></nile-icon-button>
382
+ </div>
383
+ `);
384
+ const buttons = container.querySelectorAll('nile-icon-button');
385
+ expect(buttons.length).to.equal(2);
386
+ expect((buttons[0] as NileIconButton).label).to.equal('Close');
387
+ expect((buttons[1] as NileIconButton).label).to.equal('Edit');
388
+ });
389
+
390
+ it('60. should not have any slots', async () => {
391
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
392
+ const slots = el.shadowRoot!.querySelectorAll('slot');
393
+ expect(slots.length).to.equal(0);
394
+ });
395
+
396
+ it('61. icon should be inside button', async () => {
397
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="test"></nile-icon-button>`);
398
+ const button = el.shadowRoot!.querySelector('button');
399
+ const icon = button!.querySelector('nile-icon');
400
+ expect(icon).to.exist;
401
+ });
402
+
403
+ it('62. icon should be inside anchor when href set', async () => {
404
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="test" href="https://example.com"></nile-icon-button>`);
405
+ const anchor = el.shadowRoot!.querySelector('a');
406
+ const icon = anchor!.querySelector('nile-icon');
407
+ expect(icon).to.exist;
408
+ });
409
+
410
+ it('63. should handle name property update', async () => {
411
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
412
+ el.name = 'search';
413
+ await el.updateComplete;
414
+ const icon = el.shadowRoot!.querySelector('nile-icon');
415
+ expect(icon!.getAttribute('name')).to.equal('search');
416
+ });
417
+
418
+ it('64. should handle library property update', async () => {
419
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
420
+ el.library = 'custom';
421
+ await el.updateComplete;
422
+ const icon = el.shadowRoot!.querySelector('nile-icon');
423
+ expect(icon!.getAttribute('library')).to.equal('custom');
424
+ });
425
+
426
+ it('65. should handle toggling disabled', async () => {
427
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
428
+ el.disabled = true;
429
+ await el.updateComplete;
430
+ expect(el.shadowRoot!.querySelector('.icon-button--disabled')).to.exist;
431
+ el.disabled = false;
432
+ await el.updateComplete;
433
+ expect(el.shadowRoot!.querySelector('.icon-button--disabled')).to.be.null;
434
+ });
435
+
436
+ it('66. should handle color property', async () => {
437
+ const el = await fixture<NileIconButton>(html`<nile-icon-button color="red"></nile-icon-button>`);
438
+ expect(el.color).to.equal('red');
439
+ });
440
+
441
+ it('67. should handle undefined color', async () => {
442
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
443
+ expect(el.color).to.be.undefined;
444
+ });
445
+
446
+ it('68. should handle setting all properties', async () => {
447
+ const el = await fixture<NileIconButton>(html`
448
+ <nile-icon-button name="close" library="system" label="Close" color="red" disabled></nile-icon-button>
449
+ `);
450
+ expect(el.name).to.equal('close');
451
+ expect(el.library).to.equal('system');
452
+ expect(el.label).to.equal('Close');
453
+ expect(el.color).to.equal('red');
454
+ expect(el.disabled).to.be.true;
455
+ });
456
+
457
+ it('69. should handle creation via createElement', async () => {
458
+ const el = document.createElement('nile-icon-button') as NileIconButton;
459
+ document.body.appendChild(el);
460
+ await el.updateComplete;
461
+ expect(el.shadowRoot!.querySelector('.icon-button')).to.exist;
462
+ document.body.removeChild(el);
463
+ });
464
+
465
+ it('70. shadow root mode should be open', async () => {
466
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
467
+ expect(el.shadowRoot!.mode).to.equal('open');
468
+ });
469
+
470
+ it('71. should have render method', async () => {
471
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
472
+ expect(el.render).to.be.a('function');
473
+ });
474
+
475
+ it('72. should handle data attributes', async () => {
476
+ const el = await fixture<NileIconButton>(html`<nile-icon-button data-action="close"></nile-icon-button>`);
477
+ expect(el.getAttribute('data-action')).to.equal('close');
478
+ });
479
+
480
+ it('73. should handle class attribute', async () => {
481
+ const el = await fixture<NileIconButton>(html`<nile-icon-button class="custom"></nile-icon-button>`);
482
+ expect(el.classList.contains('custom')).to.be.true;
483
+ });
484
+
485
+ it('74. should handle id attribute', async () => {
486
+ const el = await fixture<NileIconButton>(html`<nile-icon-button id="btn1"></nile-icon-button>`);
487
+ expect(el.id).to.equal('btn1');
488
+ });
489
+
490
+ it('75. button should have exactly one child (nile-icon)', async () => {
491
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="test"></nile-icon-button>`);
492
+ const button = el.shadowRoot!.querySelector('button');
493
+ const icons = button!.querySelectorAll('nile-icon');
494
+ expect(icons.length).to.equal(1);
495
+ });
496
+
497
+ it('76. anchor should have exactly one child (nile-icon)', async () => {
498
+ const el = await fixture<NileIconButton>(html`<nile-icon-button name="test" href="https://example.com"></nile-icon-button>`);
499
+ const anchor = el.shadowRoot!.querySelector('a');
500
+ const icons = anchor!.querySelectorAll('nile-icon');
501
+ expect(icons.length).to.equal(1);
502
+ });
503
+
504
+ // Various href configurations
505
+ it('77. should handle absolute href', async () => {
506
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com/path"></nile-icon-button>`);
507
+ const anchor = el.shadowRoot!.querySelector('a');
508
+ expect(anchor!.getAttribute('href')).to.equal('https://example.com/path');
509
+ });
510
+
511
+ it('78. should handle relative href', async () => {
512
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="/path"></nile-icon-button>`);
513
+ const anchor = el.shadowRoot!.querySelector('a');
514
+ expect(anchor!.getAttribute('href')).to.equal('/path');
515
+ });
516
+
517
+ it('79. should handle hash href', async () => {
518
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="#section"></nile-icon-button>`);
519
+ const anchor = el.shadowRoot!.querySelector('a');
520
+ expect(anchor!.getAttribute('href')).to.equal('#section');
521
+ });
522
+
523
+ // Label combinations
524
+ it('80. should handle long label', async () => {
525
+ const longLabel = 'A'.repeat(200);
526
+ const el = await fixture<NileIconButton>(html`<nile-icon-button label="${longLabel}"></nile-icon-button>`);
527
+ const button = el.shadowRoot!.querySelector('button');
528
+ expect(button!.getAttribute('aria-label')).to.equal(longLabel);
529
+ });
530
+
531
+ it('81. should handle special characters in label', async () => {
532
+ const el = await fixture<NileIconButton>(html`<nile-icon-button label="Close &amp; Save"></nile-icon-button>`);
533
+ expect(el.label).to.contain('&');
534
+ });
535
+
536
+ // Disabled + href
537
+ it('82. should handle disabled with href', async () => {
538
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com" disabled></nile-icon-button>`);
539
+ const anchor = el.shadowRoot!.querySelector('a');
540
+ expect(anchor!.getAttribute('aria-disabled')).to.equal('true');
541
+ expect(anchor!.getAttribute('tabindex')).to.equal('-1');
542
+ });
543
+
544
+ // Multiple renders
545
+ it('83. should handle multiple rapid property changes', async () => {
546
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
547
+ el.name = 'a';
548
+ el.name = 'b';
549
+ el.name = 'c';
550
+ await el.updateComplete;
551
+ const icon = el.shadowRoot!.querySelector('nile-icon');
552
+ expect(icon!.getAttribute('name')).to.equal('c');
553
+ });
554
+
555
+ it('84. should maintain structure after requestUpdate', async () => {
556
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
557
+ el.requestUpdate();
558
+ await el.updateComplete;
559
+ expect(el.shadowRoot!.querySelector('.icon-button')).to.exist;
560
+ });
561
+
562
+ it('85. should handle being inside a form', async () => {
563
+ const container = await fixture(html`<form><nile-icon-button></nile-icon-button></form>`);
564
+ const btn = container.querySelector('nile-icon-button') as NileIconButton;
565
+ expect(btn.shadowRoot!.querySelector('.icon-button')).to.exist;
566
+ });
567
+
568
+ it('86. should handle being inside a nile-button container', async () => {
569
+ const container = await fixture(html`<div><nile-icon-button name="x"></nile-icon-button></div>`);
570
+ const btn = container.querySelector('nile-icon-button') as NileIconButton;
571
+ expect(btn.name).to.equal('x');
572
+ });
573
+
574
+ it('87. should handle hidden attribute', async () => {
575
+ const el = await fixture<NileIconButton>(html`<nile-icon-button hidden></nile-icon-button>`);
576
+ expect(el.hidden).to.be.true;
577
+ });
578
+
579
+ it('88. should handle style attribute', async () => {
580
+ const el = await fixture<NileIconButton>(html`<nile-icon-button style="opacity:0.5"></nile-icon-button>`);
581
+ expect(el.style.opacity).to.equal('0.5');
582
+ });
583
+
584
+ it('89. should have no text content', async () => {
585
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
586
+ expect(el.textContent!.trim()).to.equal('');
587
+ });
588
+
589
+ it('90. should have updateComplete promise', async () => {
590
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
591
+ expect(el.updateComplete).to.be.a('promise');
592
+ });
593
+
594
+ it('91. should resolve updateComplete', async () => {
595
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
596
+ const result = await el.updateComplete;
597
+ expect(result).to.not.be.undefined;
598
+ });
599
+
600
+ it('92. should be connected after fixture', async () => {
601
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
602
+ expect(el.isConnected).to.be.true;
603
+ });
604
+
605
+ it('93. should be disconnected after removal', async () => {
606
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
607
+ el.remove();
608
+ expect(el.isConnected).to.be.false;
609
+ });
610
+
611
+ it('94. button should have nodeType ELEMENT_NODE', async () => {
612
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
613
+ expect(el.nodeType).to.equal(Node.ELEMENT_NODE);
614
+ });
615
+
616
+ it('95. shadowRoot host should be the element', async () => {
617
+ const el = await fixture<NileIconButton>(html`<nile-icon-button></nile-icon-button>`);
618
+ expect(el.shadowRoot!.host).to.equal(el);
619
+ });
620
+
621
+ // Comprehensive combos
622
+ it('96. name + library + label + disabled', async () => {
623
+ const el = await fixture<NileIconButton>(html`
624
+ <nile-icon-button name="close" library="system" label="Close" disabled></nile-icon-button>
625
+ `);
626
+ expect(el.disabled).to.be.true;
627
+ const icon = el.shadowRoot!.querySelector('nile-icon');
628
+ expect(icon!.getAttribute('name')).to.equal('close');
629
+ expect(icon!.getAttribute('library')).to.equal('system');
630
+ });
631
+
632
+ it('97. name + href + target + label', async () => {
633
+ const el = await fixture<NileIconButton>(html`
634
+ <nile-icon-button name="link" href="https://example.com" target="_blank" label="Link"></nile-icon-button>
635
+ `);
636
+ const anchor = el.shadowRoot!.querySelector('a');
637
+ expect(anchor!.getAttribute('href')).to.equal('https://example.com');
638
+ expect(anchor!.getAttribute('target')).to.equal('_blank');
639
+ });
640
+
641
+ it('98. should handle name + color + label', async () => {
642
+ const el = await fixture<NileIconButton>(html`
643
+ <nile-icon-button name="edit" color="blue" label="Edit"></nile-icon-button>
644
+ `);
645
+ expect(el.name).to.equal('edit');
646
+ expect(el.color).to.equal('blue');
647
+ expect(el.label).to.equal('Edit');
648
+ });
649
+
650
+ it('99. should handle all link properties', async () => {
651
+ const el = await fixture<NileIconButton>(html`
652
+ <nile-icon-button name="download" href="https://example.com/file" target="_blank" download="file.pdf" label="Download"></nile-icon-button>
653
+ `);
654
+ const anchor = el.shadowRoot!.querySelector('a');
655
+ expect(anchor!.getAttribute('href')).to.equal('https://example.com/file');
656
+ expect(anchor!.getAttribute('target')).to.equal('_blank');
657
+ expect(anchor!.getAttribute('download')).to.equal('file.pdf');
658
+ });
659
+
660
+ it('100. should handle switching from anchor to button', async () => {
661
+ const el = await fixture<NileIconButton>(html`<nile-icon-button href="https://example.com"></nile-icon-button>`);
662
+ expect(el.shadowRoot!.querySelector('a')).to.exist;
663
+ el.href = undefined;
664
+ await el.updateComplete;
665
+ expect(el.shadowRoot!.querySelector('button')).to.exist;
666
+ });
667
+ });