@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
@@ -1 +1 @@
1
- {"version":3,"file":"nile-grid.js","sourceRoot":"","sources":["../../../src/nile-grid/nile-grid.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, CSSResultArray, TemplateResult } from 'lit';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { styles } from './nile-grid.css';\nimport NileElement from '../internal/nile-element';\nimport { syncStickyShadows, layout } from './nile-grid.layout';\nimport { listenToEventListeners, removeEventListeners, getHead, getBody } from './nile-grid.utils';\nimport { computeNewWidth, resizeWithScroll, resizeNoScroll, updateResizeGuides } from './nile-grid.resize';\nimport { PrefixColumn } from './types/nile-grid.types';\n\n/**\n * Nile grid component.\n *\n * @tag nile-grid\n *\n */\n@customElement('nile-grid')\nexport class NileGrid extends NileElement {\n /**\n * The styles for nile-grid\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 /** To store the column widths in the beginning and after resizing */\n @state() public columnWidths: number[] = [];\n\n /** To get the slot element */\n @query('slot') public slotEl!: HTMLSlotElement;\n\n /** To get the first resize line to show the resize handle */\n @query('.nile-resize-start') resizeStart: HTMLElement;\n\n /** To get the last resize line to show the resize handle */\n @query('.nile-resize-end') resizeEnd: HTMLElement;\n\n /** To get the last resize line to show the resize handle */\n @query('.shadow-left') shadowLeft: HTMLElement;\n\n /** To get the last resize line to show the resize handle */\n @query('.shadow-right') shadowRight: HTMLElement;\n\n /** To enable horizontal scrolling when user is resizing */\n @property({ type: Boolean, attribute: true, reflect: true }) enableScroll: boolean = false;\n\n /** To enable hoverable rows */\n @property({ type: Boolean, attribute: true, reflect: true }) hoverable: boolean = false;\n\n /** To store the mutation observer */\n private mo?: MutationObserver;\n\n /** To store the resize observer */\n private resizeObserver?: ResizeObserver;\n\n private resizeObserverStickyShadows?: ResizeObserver;\n\n /** To store the request animation frame */\n private raf = 0;\n\n /** Minimum column width */\n @property({ type: Number, reflect: true, attribute: true }) minColumnWidth = 40;\n\n /** To store the sticky index's */\n @state() public stickyLeftIndexes: number[] = [];\n\n /** To store the sticky index's */\n @state() public stickyRightIndexes: number[] = [];\n\n /** To calculate the rowspan height */\n @state() public cellHeight: number | null = null;\n\n @state() public headHeight: number | null = null;\n\n /** To check if the widths are initialized */\n @state() public widthsInitialized = false;\n\n /** To check if the widths are initialized */\n @state() public lockedWidthColumns: boolean[] = [];\n\n /** prefix columns width */\n @state() public prefixSumColumnsWidth: PrefixColumn[] = [];\n\n /** prefix columns width */\n @state() public stickyColumns: number[] = [];\n\n /** body rows */\n @state() public bodyRows: HTMLElement[] = [];\n\n /** head rows */\n @state() public headRows: HTMLElement[] = [];\n\n @state() public needsStructureLayout = false;\n\n @state() public needsWidthLayout = false;\n\n @state() public needsSpanLayout = false;\n\n @state() public colCount = 0;\n \n public shadowLeftVisibleSticky?: boolean;\n\n public shadowRightVisibleSticky?: boolean;\n\n public stickyLeftHeadEls: HTMLElement[] = [];\n\n public stickyRightHeadEls: HTMLElement[] = [];\n\n public stickyLeftBodyEls: HTMLElement[] = [];\n\n public stickyRightBodyEls: HTMLElement[] = [];\n\n private resizeTimer: any = 0;\n\n /** To throttle sticky shadow updates */\n private shadowRaf = 0;\n\n constructor() {\n super();\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n private syncStickyShadowsRaf = () => {\n if (this.shadowRaf) return;\n this.shadowRaf = requestAnimationFrame(() => {\n this.shadowRaf = 0;\n syncStickyShadows(this);\n });\n };\n\n\n private scheduleLayout() {\n if (this.raf) cancelAnimationFrame(this.raf);\n this.raf = requestAnimationFrame(() => {\n this.raf = 0;\n layout(\n this,\n this.slotEl,\n this.ensureWidths.bind(this),\n this.stickyLeftIndexes,\n this.stickyRightIndexes\n );\n syncStickyShadows(this);\n });\n }\n\n private ensureWidths(colCount: number) {\n if (this.columnWidths.length !== colCount) {\n this.columnWidths = Array(colCount).fill(0);\n this.lockedWidthColumns = Array(colCount).fill(false); \n }\n }\n\n private onResize = (e: Event) => {\n e.stopPropagation();\n this.emit('nile-resize', {\n columnNumber: (e as CustomEvent).detail.col,\n columnWidth: (e as CustomEvent).detail.widthPx,\n });\n const { col, widthPx } = (e as CustomEvent).detail as {\n col: number;\n widthPx: number;\n };\n const { prevW, newW, delta0 } = computeNewWidth({\n target: e.target as HTMLElement,\n col,\n widthPx,\n floor: this.minColumnWidth,\n columnWidths: this.columnWidths,\n });\n\n if (delta0 === 0) {\n updateResizeGuides(this, col);\n return;\n }\n\n if (!this.enableScroll) {\n resizeNoScroll({ grid: this, col, prevW, newW, floor: this.minColumnWidth });\n } else {\n resizeWithScroll({ grid: this, col, newW });\n }\n updateResizeGuides(this, col);\n };\n\n protected firstUpdated() {\n this.setAttribute('role', 'table');\n listenToEventListeners(\n this,\n this.onResize,\n this.slotEl,\n this._attachObserverAndLayout.bind(this)\n );\n this.addEventListener('scroll', this.syncStickyShadowsRaf);\n this.resizeObserverStickyShadows = new ResizeObserver(() => syncStickyShadows(this));\n this.resizeObserverStickyShadows.observe(this);\n this.syncStickyShadowsRaf();\n }\n\n private _attachObserverAndLayout() {\n this.mo?.disconnect();\n this.mo = new MutationObserver(() => {\n this.needsStructureLayout = true;\n this.needsWidthLayout = true;\n this.needsSpanLayout = true;\n this.scheduleLayout();\n });\n this.resizeObserver?.disconnect();\n this.resizeObserver = new ResizeObserver(() => {\n if (this.resizeTimer) clearTimeout(this.resizeTimer);\n this.resizeTimer = setTimeout(() => {\n this.resizeTimer = 0;\n this.needsWidthLayout = true;\n this.scheduleLayout();\n }, 16);\n });\n\n const head = getHead(this.slotEl);\n const body = getBody(this.slotEl);\n \n if (!head && !body) return;\n const target = head ?? this;\n this.mo.observe(target, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['colspan', 'rowspan', 'width', 'lockwidth', 'sticky']\n });\n this.resizeObserver?.observe(this);\n\n if (!this.colCount || !this.columnWidths?.length) {\n this.needsStructureLayout = true;\n this.needsSpanLayout = true;\n this.needsWidthLayout = true;\n this.scheduleLayout();\n }\n }\n\n public render(): TemplateResult {\n return html`\n <div part=\"grid-base\" class=\"nile-grid-base\">\n <div part=\"grid-slot-wrapper\">\n <slot part=\"grid-slot\"></slot>\n </div>\n <div part=\"resize-start\" class=\"nile-resize-start\"></div>\n <div part=\"resize-end\" class=\"nile-resize-end\"></div>\n </div>\n `;\n }\n\n disconnectedCallback(): void {\n this.emit('nile-destroy');\n super.disconnectedCallback?.();\n this.mo?.disconnect();\n this.resizeObserver?.disconnect();\n this.resizeObserverStickyShadows?.disconnect();\n\n if (this.raf) cancelAnimationFrame(this.raf);\n removeEventListeners(\n this,\n this.onResize,\n this.slotEl,\n this._attachObserverAndLayout.bind(this)\n );\n }\n\n /* #endregion */\n}\n\nexport default NileGrid;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-grid': NileGrid;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-grid.js","sourceRoot":"","sources":["../../../src/nile-grid/nile-grid.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, CSSResultArray, TemplateResult } from 'lit';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { styles } from './nile-grid.css';\nimport NileElement from '../internal/nile-element';\nimport { syncStickyShadows, layout } from './nile-grid.layout';\nimport { listenToEventListeners, removeEventListeners, getHead, getBody, copyArrayValuesInPlace } from './nile-grid.utils';\nimport { computeNewWidth, resizeWithScroll, resizeNoScroll, updateResizeGuides } from './nile-grid.resize';\nimport { PrefixColumn } from './types/nile-grid.types';\n\n/**\n * Nile grid component.\n *\n * @tag nile-grid\n *\n */\n@customElement('nile-grid')\nexport class NileGrid extends NileElement {\n /**\n * The styles for nile-grid\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 /** To store the column widths in the beginning and after resizing */\n @state() public columnWidths: number[] = [];\n\n /** To get the slot element */\n @query('slot') public slotEl!: HTMLSlotElement;\n\n /** To get the first resize line to show the resize handle */\n @query('.nile-resize-start') resizeStart: HTMLElement;\n\n /** To get the last resize line to show the resize handle */\n @query('.nile-resize-end') resizeEnd: HTMLElement;\n\n /** To get the last resize line to show the resize handle */\n @query('.shadow-left') shadowLeft: HTMLElement;\n\n /** To get the last resize line to show the resize handle */\n @query('.shadow-right') shadowRight: HTMLElement;\n\n /** To enable horizontal scrolling when user is resizing */\n @property({ type: Boolean, attribute: true, reflect: true }) enableScroll: boolean = false;\n\n /** To enable hoverable rows */\n @property({ type: Boolean, attribute: true, reflect: true }) hoverable: boolean = false;\n\n /** To store the mutation observer */\n private mo?: MutationObserver;\n\n /** To store the resize observer */\n private resizeObserver?: ResizeObserver;\n\n private resizeObserverStickyShadows?: ResizeObserver;\n\n /** To store the request animation frame */\n private raf = 0;\n\n /** Minimum column width */\n @property({ type: Number, reflect: true, attribute: true }) minColumnWidth = 40;\n\n /** To store the sticky index's */\n @state() public stickyLeftIndexes: number[] = [];\n\n /** To store the sticky index's */\n @state() public stickyRightIndexes: number[] = [];\n\n /** To calculate the rowspan height */\n @state() public cellHeight: number | null = null;\n\n @state() public headHeight: number | null = null;\n\n /** To check if the widths are initialized */\n @state() public widthsInitialized = false;\n\n /** To check if the widths are initialized */\n @state() public lockedWidthColumns: boolean[] = [];\n\n /** prefix columns width */\n @state() public prefixSumColumnsWidth: PrefixColumn[] = [];\n\n /** prefix columns width */\n @state() public stickyColumns: number[] = [];\n\n /** body rows */\n @state() public bodyRows: HTMLElement[] = [];\n\n /** head rows */\n @state() public headRows: HTMLElement[] = [];\n\n @state() public needsStructureLayout = false;\n\n @state() public needsWidthLayout = false;\n\n @state() public needsSpanLayout = false;\n\n @state() public colCount = 0;\n \n public shadowLeftVisibleSticky?: boolean;\n\n public shadowRightVisibleSticky?: boolean;\n\n public stickyLeftHeadEls: HTMLElement[] = [];\n\n public stickyRightHeadEls: HTMLElement[] = [];\n\n public stickyLeftBodyEls: HTMLElement[] = [];\n\n public stickyRightBodyEls: HTMLElement[] = [];\n\n private resizeTimer: any = 0;\n\n /** To throttle sticky shadow updates */\n private shadowRaf = 0;\n\n public resizeBaseColumnWidths: number[] = [];\n\n constructor() {\n super();\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n private syncStickyShadowsRaf = () => {\n if (this.shadowRaf) return;\n this.shadowRaf = requestAnimationFrame(() => {\n this.shadowRaf = 0;\n syncStickyShadows(this);\n });\n };\n\n\n private scheduleLayout() {\n if (this.raf) cancelAnimationFrame(this.raf);\n this.raf = requestAnimationFrame(() => {\n this.raf = 0;\n layout(\n this,\n this.slotEl,\n this.ensureWidths.bind(this),\n this.stickyLeftIndexes,\n this.stickyRightIndexes\n );\n syncStickyShadows(this);\n });\n }\n\n private ensureWidths(colCount: number) {\n if (this.columnWidths.length !== colCount) {\n this.columnWidths = Array(colCount).fill(0);\n this.lockedWidthColumns = Array(colCount).fill(false); \n }\n }\n\n private onResize = (e: Event) => {\n e.stopPropagation();\n this.emit('nile-resize', {\n columnNumber: (e as CustomEvent).detail.col,\n columnWidth: (e as CustomEvent).detail.widthPx,\n });\n const { col, widthPx } = (e as CustomEvent).detail as {\n col: number;\n widthPx: number;\n };\n if (!this.resizeBaseColumnWidths) return;\n \n copyArrayValuesInPlace(this.columnWidths, this.resizeBaseColumnWidths);\n const { prevW, newW, delta0 } = computeNewWidth({\n target: e.target as HTMLElement,\n col,\n widthPx,\n floor: this.minColumnWidth,\n columnWidths: this.columnWidths,\n });\n\n if (delta0 === 0) {\n updateResizeGuides(this, col);\n return;\n }\n\n if (!this.enableScroll) {\n resizeNoScroll({ grid: this, col, prevW, newW, floor: this.minColumnWidth });\n } else {\n resizeWithScroll({ grid: this, col, newW });\n }\n updateResizeGuides(this, col);\n };\n\n protected firstUpdated() {\n this.setAttribute('role', 'table');\n listenToEventListeners(\n this,\n this.onResize,\n this.slotEl,\n this._attachObserverAndLayout.bind(this)\n );\n this.addEventListener('scroll', this.syncStickyShadowsRaf);\n this.resizeObserverStickyShadows = new ResizeObserver(() => syncStickyShadows(this));\n this.resizeObserverStickyShadows.observe(this);\n this.syncStickyShadowsRaf();\n }\n\n private _attachObserverAndLayout() {\n this.mo?.disconnect();\n this.mo = new MutationObserver(() => {\n this.needsStructureLayout = true;\n this.needsWidthLayout = true;\n this.needsSpanLayout = true;\n this.scheduleLayout();\n });\n this.resizeObserver?.disconnect();\n this.resizeObserver = new ResizeObserver(() => {\n if (this.resizeTimer) clearTimeout(this.resizeTimer);\n this.resizeTimer = setTimeout(() => {\n this.resizeTimer = 0;\n this.needsWidthLayout = true;\n this.scheduleLayout();\n }, 16);\n });\n\n const head = getHead(this.slotEl);\n const body = getBody(this.slotEl);\n \n if (!head && !body) return;\n const target = head ?? this;\n this.mo.observe(target, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['colspan', 'rowspan', 'width', 'lockwidth', 'sticky']\n });\n this.resizeObserver?.observe(this);\n\n if (!this.colCount || !this.columnWidths?.length) {\n this.needsStructureLayout = true;\n this.needsSpanLayout = true;\n this.needsWidthLayout = true;\n this.scheduleLayout();\n }\n }\n\n public render(): TemplateResult {\n return html`\n <div part=\"grid-base\" class=\"nile-grid-base\">\n <div part=\"grid-slot-wrapper\">\n <slot part=\"grid-slot\"></slot>\n </div>\n <div part=\"resize-start\" class=\"nile-resize-start\"></div>\n <div part=\"resize-end\" class=\"nile-resize-end\"></div>\n </div>\n `;\n }\n\n disconnectedCallback(): void {\n this.emit('nile-destroy');\n super.disconnectedCallback?.();\n this.mo?.disconnect();\n this.resizeObserver?.disconnect();\n this.resizeObserverStickyShadows?.disconnect();\n\n if (this.raf) cancelAnimationFrame(this.raf);\n removeEventListeners(\n this,\n this.onResize,\n this.slotEl,\n this._attachObserverAndLayout.bind(this)\n );\n }\n\n /* #endregion */\n}\n\nexport default NileGrid;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-grid': NileGrid;\n }\n}\n"]}
@@ -26,3 +26,9 @@ export declare const getHead: (slotEl: any) => HTMLElement;
26
26
  */
27
27
  export declare const getBody: (slotEl: any) => HTMLElement;
28
28
  export declare const scrollEventHandler: (el: NileGrid) => void;
29
+ /** copyArrayValuesInPlace
30
+ * @param target Target array
31
+ * @param source Source array
32
+ * @returns void
33
+ */
34
+ export declare function copyArrayValuesInPlace(target: number[], source: number[]): void;
@@ -10,11 +10,13 @@ export const listenToEventListeners = (nileGrid, onResize, slotEl, _attachObserv
10
10
  nileGrid.addEventListener('nile-column-resize', onResize);
11
11
  nileGrid.addEventListener('nile-resize-start', (e) => {
12
12
  e.stopPropagation();
13
+ nileGrid.resizeBaseColumnWidths = [...nileGrid.columnWidths];
13
14
  nileGrid.resizeStart.style.display = 'block';
14
15
  });
15
16
  nileGrid.addEventListener('nile-resize-end', (e) => {
16
17
  e.stopPropagation();
17
18
  applyAfterResize(nileGrid, e.detail.col);
19
+ nileGrid.resizeBaseColumnWidths = [];
18
20
  nileGrid.resizeStart.style.display = 'none';
19
21
  nileGrid.resizeEnd.style.display = 'none';
20
22
  });
@@ -72,4 +74,15 @@ export const scrollEventHandler = (el) => {
72
74
  }
73
75
  });
74
76
  };
77
+ /** copyArrayValuesInPlace
78
+ * @param target Target array
79
+ * @param source Source array
80
+ * @returns void
81
+ */
82
+ export function copyArrayValuesInPlace(target, source) {
83
+ const count = Math.min(target.length, source.length);
84
+ for (let i = 0; i < count; i++) {
85
+ target[i] = source[i];
86
+ }
87
+ }
75
88
  //# sourceMappingURL=nile-grid.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-grid.utils.js","sourceRoot":"","sources":["../../../src/nile-grid/nile-grid.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { NileGrid } from './nile-grid';\nimport { applyAfterResize } from './nile-grid.resize'\n\n/** listenToEventListeners\n * @param nileGrid Grid element to attach listeners on\n * @param onResize Handler for 'nile-column-resize'\n * @param slotEl Slot element to watch for 'slotchange'\n * @param _attachObserverAndLayout Callback to reattach observer + layout\n * @returns void\n */\nexport const listenToEventListeners = (\n nileGrid: NileGrid,\n onResize: any,\n slotEl: any,\n _attachObserverAndLayout: any\n) => {\n nileGrid.addEventListener('nile-column-resize', onResize);\n nileGrid.addEventListener('nile-resize-start', (e) => {\n e.stopPropagation();\n nileGrid.resizeStart.style.display = 'block';\n });\n nileGrid.addEventListener('nile-resize-end', (e: CustomEvent) => {\n e.stopPropagation();\n applyAfterResize(nileGrid, (e as CustomEvent).detail!.col);\n nileGrid.resizeStart.style.display = 'none';\n nileGrid.resizeEnd.style.display = 'none';\n });\n slotEl.addEventListener('slotchange', () => _attachObserverAndLayout());\n nileGrid.addEventListener('scroll', () => scrollEventHandler(nileGrid));\n};\n\n/** removeEventListeners\n * @param nileGrid Grid element to detach listeners from\n * @param onResize Handler previously attached to 'nile-column-resize'\n * @param slotEl Slot element to remove 'slotchange' from\n * @param _attachObserverAndLayout Callback reference used during attach\n * @returns void\n */\nexport const removeEventListeners = (\n nileGrid: NileGrid,\n onResize: any,\n slotEl: any,\n _attachObserverAndLayout: any\n) => {\n nileGrid.removeEventListener('nile-column-resize', onResize);\n nileGrid.removeEventListener('nile-resize-start', () => {\n nileGrid.resizeStart.style.display = 'block';\n });\n nileGrid.removeEventListener('nile-resize-end', () => {\n nileGrid.resizeStart.style.display = 'none';\n nileGrid.resizeEnd.style.display = 'none';\n });\n slotEl.removeEventListener('slotchange', () => _attachObserverAndLayout());\n nileGrid.removeEventListener('scroll', () => scrollEventHandler(nileGrid));\n};\n\n/** getHead\n * @param slotEl Slot element containing assigned nodes\n * @returns <nile-grid-head> element or null\n */\nexport const getHead = (slotEl: any) => {\n const nodes = slotEl?.assignedElements() ?? [];\n return (\n (nodes.find(\n (n: any) => n.tagName.toLowerCase() === 'nile-grid-head'\n ) as HTMLElement) || null\n );\n};\n\n/** getBody\n * @param slotEl Slot element containing assigned nodes\n * @returns <nile-grid-body> element or null\n */\nexport const getBody = (slotEl: any) => {\n const nodes = slotEl?.assignedElements() ?? [];\n return (\n (nodes.find(\n (n: any) => n.tagName.toLowerCase() === 'nile-grid-body'\n ) as HTMLElement) || null\n );\n};\n\nexport const scrollEventHandler = (el: NileGrid) => {\n const maxY = Math.max(1, el.scrollHeight - el.clientHeight);\n const maxX = Math.max(1, el.scrollWidth - el.clientWidth);\n\n const percentageY = Math.round((el.scrollTop / maxY) * 100);\n const percentageX = Math.round((el.scrollLeft / maxX) * 100);\n\n el.emit('nile-scroll', {\n bubbles: true,\n composed: true,\n detail: {\n horizontalScroll: percentageX,\n verticalScroll: percentageY,\n left: el.scrollLeft,\n top: el.scrollTop\n }\n });\n};"]}
1
+ {"version":3,"file":"nile-grid.utils.js","sourceRoot":"","sources":["../../../src/nile-grid/nile-grid.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,QAAkB,EAClB,QAAa,EACb,MAAW,EACX,wBAA6B,EAC7B,EAAE;IACF,QAAQ,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IAC1D,QAAQ,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE;QACnD,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,QAAQ,CAAC,sBAAsB,GAAG,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC7D,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC/C,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC,CAAc,EAAE,EAAE;QAC9D,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,gBAAgB,CAAC,QAAQ,EAAG,CAAiB,CAAC,MAAO,CAAC,GAAG,CAAC,CAAC;QAC3D,QAAQ,CAAC,sBAAsB,GAAG,EAAE,CAAC;QACrC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAC5C,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACxE,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC1E,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,QAAkB,EAClB,QAAa,EACb,MAAW,EACX,wBAA6B,EAC7B,EAAE;IACF,QAAQ,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IAC7D,QAAQ,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACrD,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC/C,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,GAAG,EAAE;QACnD,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAC5C,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAC3E,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,MAAW,EAAE,EAAE;IACrC,MAAM,KAAK,GAAG,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;IAC/C,OAAO,CACJ,KAAK,CAAC,IAAI,CACT,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,gBAAgB,CACzC,IAAI,IAAI,CAC1B,CAAC;AACJ,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,MAAW,EAAE,EAAE;IACrC,MAAM,KAAK,GAAG,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;IAC/C,OAAO,CACJ,KAAK,CAAC,IAAI,CACT,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,gBAAgB,CACzC,IAAI,IAAI,CAC1B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAY,EAAE,EAAE;IACjD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC;IAE1D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;IAE7D,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE;QACrB,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE;YACN,gBAAgB,EAAE,WAAW;YAC7B,cAAc,EAAE,WAAW;YAC3B,IAAI,EAAE,EAAE,CAAC,UAAU;YACnB,GAAG,EAAE,EAAE,CAAC,SAAS;SAClB;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAgB,EAChB,MAAgB;IAEhB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;AACH,CAAC","sourcesContent":["import { NileGrid } from './nile-grid';\nimport { applyAfterResize } from './nile-grid.resize'\n\n/** listenToEventListeners\n * @param nileGrid Grid element to attach listeners on\n * @param onResize Handler for 'nile-column-resize'\n * @param slotEl Slot element to watch for 'slotchange'\n * @param _attachObserverAndLayout Callback to reattach observer + layout\n * @returns void\n */\nexport const listenToEventListeners = (\n nileGrid: NileGrid,\n onResize: any,\n slotEl: any,\n _attachObserverAndLayout: any\n) => {\n nileGrid.addEventListener('nile-column-resize', onResize);\n nileGrid.addEventListener('nile-resize-start', (e) => {\n e.stopPropagation();\n nileGrid.resizeBaseColumnWidths = [...nileGrid.columnWidths];\n nileGrid.resizeStart.style.display = 'block';\n });\n nileGrid.addEventListener('nile-resize-end', (e: CustomEvent) => {\n e.stopPropagation();\n applyAfterResize(nileGrid, (e as CustomEvent).detail!.col);\n nileGrid.resizeBaseColumnWidths = [];\n nileGrid.resizeStart.style.display = 'none';\n nileGrid.resizeEnd.style.display = 'none';\n });\n slotEl.addEventListener('slotchange', () => _attachObserverAndLayout());\n nileGrid.addEventListener('scroll', () => scrollEventHandler(nileGrid));\n};\n\n/** removeEventListeners\n * @param nileGrid Grid element to detach listeners from\n * @param onResize Handler previously attached to 'nile-column-resize'\n * @param slotEl Slot element to remove 'slotchange' from\n * @param _attachObserverAndLayout Callback reference used during attach\n * @returns void\n */\nexport const removeEventListeners = (\n nileGrid: NileGrid,\n onResize: any,\n slotEl: any,\n _attachObserverAndLayout: any\n) => {\n nileGrid.removeEventListener('nile-column-resize', onResize);\n nileGrid.removeEventListener('nile-resize-start', () => {\n nileGrid.resizeStart.style.display = 'block';\n });\n nileGrid.removeEventListener('nile-resize-end', () => {\n nileGrid.resizeStart.style.display = 'none';\n nileGrid.resizeEnd.style.display = 'none';\n });\n slotEl.removeEventListener('slotchange', () => _attachObserverAndLayout());\n nileGrid.removeEventListener('scroll', () => scrollEventHandler(nileGrid));\n};\n\n/** getHead\n * @param slotEl Slot element containing assigned nodes\n * @returns <nile-grid-head> element or null\n */\nexport const getHead = (slotEl: any) => {\n const nodes = slotEl?.assignedElements() ?? [];\n return (\n (nodes.find(\n (n: any) => n.tagName.toLowerCase() === 'nile-grid-head'\n ) as HTMLElement) || null\n );\n};\n\n/** getBody\n * @param slotEl Slot element containing assigned nodes\n * @returns <nile-grid-body> element or null\n */\nexport const getBody = (slotEl: any) => {\n const nodes = slotEl?.assignedElements() ?? [];\n return (\n (nodes.find(\n (n: any) => n.tagName.toLowerCase() === 'nile-grid-body'\n ) as HTMLElement) || null\n );\n};\n\nexport const scrollEventHandler = (el: NileGrid) => {\n const maxY = Math.max(1, el.scrollHeight - el.clientHeight);\n const maxX = Math.max(1, el.scrollWidth - el.clientWidth);\n\n const percentageY = Math.round((el.scrollTop / maxY) * 100);\n const percentageX = Math.round((el.scrollLeft / maxX) * 100);\n\n el.emit('nile-scroll', {\n bubbles: true,\n composed: true,\n detail: {\n horizontalScroll: percentageX,\n verticalScroll: percentageY,\n left: el.scrollLeft,\n top: el.scrollTop\n }\n });\n};\n\n/** copyArrayValuesInPlace\n * @param target Target array\n * @param source Source array\n * @returns void\n */\nexport function copyArrayValuesInPlace(\n target: number[],\n source: number[]\n) {\n const count = Math.min(target.length, source.length);\n for (let i = 0; i < count; i++) {\n target[i] = source[i];\n }\n}"]}
@@ -0,0 +1 @@
1
+ import './index';
@@ -0,0 +1,108 @@
1
+ import { expect, fixture, html } from '@open-wc/testing';
2
+ import './index';
3
+ describe('NileHeading', () => {
4
+ it('1. renders', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el).to.exist; });
5
+ it('2. shadow root', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot).to.not.be.null; });
6
+ it('3. tag name', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.tagName.toLowerCase()).to.equal('nile-heading'); });
7
+ it('4. name defaults empty', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.name).to.equal(''); });
8
+ it('5. size defaults header-1', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.size).to.equal('header-1'); });
9
+ it('6. slot', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('slot')).to.exist; });
10
+ it('7. slotted content', async () => { const el = await fixture(html `<nile-heading>Hello World</nile-heading>`); expect(el.textContent).to.contain('Hello World'); });
11
+ it('8. size reflected', async () => { const el = await fixture(html `<nile-heading size="header-2"></nile-heading>`); expect(el.getAttribute('size')).to.equal('header-2'); });
12
+ it('9. dynamic name', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.name = 'Test'; await el.updateComplete; expect(el.name).to.equal('Test'); });
13
+ it('10. dynamic size', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.size = 'header-2'; await el.updateComplete; expect(el.getAttribute('size')).to.equal('header-2'); });
14
+ it('11. has styles', async () => { expect((await import('./index')).NileHeading.styles).to.exist; });
15
+ it('12. is defined', async () => { expect(customElements.get('nile-heading')).to.exist; });
16
+ it('13. shadow mode', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.mode).to.equal('open'); });
17
+ it('14. isConnected', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.isConnected).to.be.true; });
18
+ it('15. removal', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.remove(); expect(el.isConnected).to.be.false; });
19
+ it('16. outerHTML', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.outerHTML).to.contain('nile-heading'); });
20
+ it('17. matches', async () => { const el = await fixture(html `<nile-heading class="x"></nile-heading>`); expect(el.matches('nile-heading.x')).to.be.true; });
21
+ it('18. closest', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.closest('nile-heading')).to.equal(el); });
22
+ it('19. cloneNode', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.cloneNode(true).tagName.toLowerCase()).to.equal('nile-heading'); });
23
+ it('20. dispatchEvent', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); let f = false; el.addEventListener('c', () => (f = true)); el.dispatchEvent(new Event('c')); expect(f).to.be.true; });
24
+ it('21. updateComplete', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); const r = await el.updateComplete; expect(r).to.not.be.undefined; });
25
+ it('22. requestUpdate', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.requestUpdate(); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; });
26
+ it('23. render method', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.render).to.be.a('function'); });
27
+ it('24. shadowRoot host', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.host).to.equal(el); });
28
+ it('25. class attr', async () => { const el = await fixture(html `<nile-heading class="h"></nile-heading>`); expect(el.classList.contains('h')).to.be.true; });
29
+ it('26. id attr', async () => { const el = await fixture(html `<nile-heading id="h1"></nile-heading>`); expect(el.id).to.equal('h1'); });
30
+ it('27. style attr', async () => { const el = await fixture(html `<nile-heading style="color:red"></nile-heading>`); expect(el.style.color).to.equal('red'); });
31
+ it('28. data attr', async () => { const el = await fixture(html `<nile-heading data-x="1"></nile-heading>`); expect(el.getAttribute('data-x')).to.equal('1'); });
32
+ it('29. hidden', async () => { const el = await fixture(html `<nile-heading hidden></nile-heading>`); expect(el.hidden).to.be.true; });
33
+ it('30. dir', async () => { const el = await fixture(html `<nile-heading dir="rtl"></nile-heading>`); expect(el.dir).to.equal('rtl'); });
34
+ it('31. nodeType', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.nodeType).to.equal(1); });
35
+ it('32. multiple instances', async () => { const c = await fixture(html `<div><nile-heading></nile-heading><nile-heading></nile-heading></div>`); expect(c.querySelectorAll('nile-heading').length).to.equal(2); });
36
+ it('33. parent-child', async () => { const c = await fixture(html `<div><nile-heading></nile-heading></div>`); expect(c.querySelector('nile-heading').parentElement).to.equal(c); });
37
+ it('34. localName', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.localName).to.equal('nile-heading'); });
38
+ it('35. namespaceURI', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.namespaceURI).to.equal('http://www.w3.org/1999/xhtml'); });
39
+ it('36. ownerDocument', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.ownerDocument).to.equal(document); });
40
+ it('37. classList add', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.classList.add('z'); expect(el.classList.contains('z')).to.be.true; });
41
+ it('38. dataset', async () => { const el = await fixture(html `<nile-heading data-idx="0"></nile-heading>`); expect(el.dataset.idx).to.equal('0'); });
42
+ it('39. getBoundingClientRect', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.getBoundingClientRect()).to.exist; });
43
+ it('40. name type', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(typeof el.name).to.equal('string'); });
44
+ it('41. size type', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(typeof el.size).to.equal('string'); });
45
+ it('42. no inputs', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelectorAll('input').length).to.equal(0); });
46
+ it('43. no buttons', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelectorAll('button').length).to.equal(0); });
47
+ it('44. slot count', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelectorAll('slot').length).to.equal(1); });
48
+ it('45. aria-label', async () => { const el = await fixture(html `<nile-heading aria-label="Title"></nile-heading>`); expect(el.getAttribute('aria-label')).to.equal('Title'); });
49
+ it('46. role', async () => { const el = await fixture(html `<nile-heading role="heading"></nile-heading>`); expect(el.getAttribute('role')).to.equal('heading'); });
50
+ it('47. createElement', async () => { const el = document.createElement('nile-heading'); document.body.appendChild(el); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; document.body.removeChild(el); });
51
+ it('48. lang attr', async () => { const el = await fixture(html `<nile-heading lang="en"></nile-heading>`); expect(el.lang).to.equal('en'); });
52
+ it('49. tabindex', async () => { const el = await fixture(html `<nile-heading tabindex="0"></nile-heading>`); expect(el.getAttribute('tabindex')).to.equal('0'); });
53
+ it('50. children survived update', async () => { const el = await fixture(html `<nile-heading><span id="s1">Title</span></nile-heading>`); el.name = 'N'; await el.updateComplete; expect(el.querySelector('#s1')).to.exist; });
54
+ it('51. nested elements', async () => { const el = await fixture(html `<nile-heading><strong>Bold</strong></nile-heading>`); expect(el.querySelector('strong')).to.exist; });
55
+ it('52. childElementCount', async () => { const el = await fixture(html `<nile-heading><span>A</span></nile-heading>`); expect(el.childElementCount).to.equal(1); });
56
+ it('53. firstElementChild', async () => { const el = await fixture(html `<nile-heading><span>A</span></nile-heading>`); expect(el.firstElementChild.tagName.toLowerCase()).to.equal('span'); });
57
+ it('54. text content', async () => { const el = await fixture(html `<nile-heading>Test</nile-heading>`); expect(el.textContent).to.contain('Test'); });
58
+ it('55. no children default', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.childElementCount).to.equal(0); });
59
+ it('56. no form', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('form')).to.be.null; });
60
+ it('57. no anchor', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('a')).to.be.null; });
61
+ it('58. no img', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('img')).to.be.null; });
62
+ it('59. no svg', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('svg')).to.be.null; });
63
+ it('60. shadow childNodes', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.childNodes.length).to.be.greaterThan(0); });
64
+ it('61. scrollIntoView', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.scrollIntoView).to.be.a('function'); });
65
+ it('62. focus method', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.focus).to.be.a('function'); });
66
+ it('63. blur method', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.blur).to.be.a('function'); });
67
+ it('64. dispatchCustomEvent', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); let d; el.addEventListener('t', ((e) => { d = e.detail; })); el.dispatchEvent(new CustomEvent('t', { detail: 'x' })); expect(d).to.equal('x'); });
68
+ it('65. class toggle', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.classList.toggle('active'); expect(el.classList.contains('active')).to.be.true; });
69
+ it('66. toggle hidden', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.hidden = true; expect(el.hidden).to.be.true; });
70
+ it('67. innerHTML', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.innerHTML = '<p>New</p>'; expect(el.querySelector('p').textContent).to.equal('New'); });
71
+ it('68. setAttribute size', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.setAttribute('size', 'header-3'); await el.updateComplete; expect(el.size).to.equal('header-3'); });
72
+ it('69. removeAttribute size', async () => { const el = await fixture(html `<nile-heading size="header-2"></nile-heading>`); el.removeAttribute('size'); await el.updateComplete; expect(el.getAttribute('size')).to.be.null; });
73
+ it('70. hasAttribute size', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.hasAttribute('size')).to.be.true; });
74
+ it('71. rapid size changes', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.size = 'header-2'; await el.updateComplete; el.size = 'header-3'; await el.updateComplete; expect(el.size).to.equal('header-3'); });
75
+ it('72. no video', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('video')).to.be.null; });
76
+ it('73. no audio', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('audio')).to.be.null; });
77
+ it('74. no canvas', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('canvas')).to.be.null; });
78
+ it('75. no table', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('table')).to.be.null; });
79
+ it('76. no ul', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('ul')).to.be.null; });
80
+ it('77. re-renders', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); el.name = 'A'; await el.updateComplete; el.name = 'B'; await el.updateComplete; expect(el.name).to.equal('B'); });
81
+ it('78. nested in div', async () => { const c = await fixture(html `<div><nile-heading>Title</nile-heading></div>`); expect(c.querySelector('nile-heading')).to.exist; });
82
+ it('79. contains check', async () => { const el = await fixture(html `<nile-heading><span id="s1">T</span></nile-heading>`); expect(el.contains(el.querySelector('#s1'))).to.be.true; });
83
+ it('80. children array', async () => { const el = await fixture(html `<nile-heading><span>A</span><span>B</span></nile-heading>`); expect(el.children.length).to.equal(2); });
84
+ it('81. lastElementChild', async () => { const el = await fixture(html `<nile-heading><span>A</span><div>B</div></nile-heading>`); expect(el.lastElementChild.tagName.toLowerCase()).to.equal('div'); });
85
+ it('82. append child', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); const s = document.createElement('span'); el.appendChild(s); expect(el.querySelector('span')).to.exist; });
86
+ it('83. remove child', async () => { const el = await fixture(html `<nile-heading><span id="s1">T</span></nile-heading>`); el.removeChild(el.querySelector('#s1')); expect(el.querySelector('#s1')).to.be.null; });
87
+ it('84. replaceChildren', async () => { const el = await fixture(html `<nile-heading><span>Old</span></nile-heading>`); const p = document.createElement('p'); el.replaceChildren(p); expect(el.querySelector('p')).to.exist; expect(el.querySelector('span')).to.be.null; });
88
+ it('85. textContent empty default', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.textContent.trim()).to.equal(''); });
89
+ it('86. no nav', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('nav')).to.be.null; });
90
+ it('87. no aside', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('aside')).to.be.null; });
91
+ it('88. no select', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('select')).to.be.null; });
92
+ it('89. no textarea', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('textarea')).to.be.null; });
93
+ it('90. aria-level', async () => { const el = await fixture(html `<nile-heading aria-level="1"></nile-heading>`); expect(el.getAttribute('aria-level')).to.equal('1'); });
94
+ it('91. aria-describedby', async () => { const el = await fixture(html `<nile-heading aria-describedby="d"></nile-heading>`); expect(el.getAttribute('aria-describedby')).to.equal('d'); });
95
+ it('92. title attr', async () => { const el = await fixture(html `<nile-heading title="T"></nile-heading>`); expect(el.title).to.equal('T'); });
96
+ it('93. insertBefore', async () => { const el = await fixture(html `<nile-heading><span id="s1">B</span></nile-heading>`); const p = document.createElement('p'); el.insertBefore(p, el.querySelector('#s1')); expect(el.firstElementChild.tagName.toLowerCase()).to.equal('p'); });
97
+ it('94. no pre', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('pre')).to.be.null; });
98
+ it('95. no code', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('code')).to.be.null; });
99
+ it('96. no h1 in shadow', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('h1')).to.be.null; });
100
+ it('97. no div in shadow', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); expect(el.shadowRoot.querySelector('div')).to.be.null; });
101
+ it('98. only slot in shadow', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); const all = el.shadowRoot.querySelectorAll('*'); const tagNames = Array.from(all).map(e => e.tagName.toLowerCase()); expect(tagNames).to.include('slot'); });
102
+ it('99. multiple re-renders', async () => { const el = await fixture(html `<nile-heading></nile-heading>`); for (let i = 0; i < 5; i++) {
103
+ el.requestUpdate();
104
+ await el.updateComplete;
105
+ } expect(el.shadowRoot).to.not.be.null; });
106
+ it('100. full integration', async () => { const el = await fixture(html `<nile-heading size="header-1" name="Title" class="h" id="h1" role="heading" aria-label="Main heading">Main Title</nile-heading>`); expect(el.name).to.equal('Title'); expect(el.size).to.equal('header-1'); expect(el.id).to.equal('h1'); expect(el.textContent).to.contain('Main Title'); expect(el.shadowRoot.querySelector('slot')).to.exist; });
107
+ });
108
+ //# sourceMappingURL=nile-heading.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-heading.test.js","sourceRoot":"","sources":["../../../src/nile-heading/nile-heading.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { expect, fixture, html } from '@open-wc/testing';\nimport './index';\nimport type { NileHeading } from './index';\n\ndescribe('NileHeading', () => {\n it('1. renders', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el).to.exist; });\n it('2. shadow root', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot).to.not.be.null; });\n it('3. tag name', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.tagName.toLowerCase()).to.equal('nile-heading'); });\n it('4. name defaults empty', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.name).to.equal(''); });\n it('5. size defaults header-1', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.size).to.equal('header-1'); });\n it('6. slot', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('slot')).to.exist; });\n it('7. slotted content', async () => { const el = await fixture<NileHeading>(html`<nile-heading>Hello World</nile-heading>`); expect(el.textContent).to.contain('Hello World'); });\n it('8. size reflected', async () => { const el = await fixture<NileHeading>(html`<nile-heading size=\"header-2\"></nile-heading>`); expect(el.getAttribute('size')).to.equal('header-2'); });\n it('9. dynamic name', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.name = 'Test'; await el.updateComplete; expect(el.name).to.equal('Test'); });\n it('10. dynamic size', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.size = 'header-2'; await el.updateComplete; expect(el.getAttribute('size')).to.equal('header-2'); });\n it('11. has styles', async () => { expect((await import('./index')).NileHeading.styles).to.exist; });\n it('12. is defined', async () => { expect(customElements.get('nile-heading')).to.exist; });\n it('13. shadow mode', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.mode).to.equal('open'); });\n it('14. isConnected', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.isConnected).to.be.true; });\n it('15. removal', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.remove(); expect(el.isConnected).to.be.false; });\n it('16. outerHTML', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.outerHTML).to.contain('nile-heading'); });\n it('17. matches', async () => { const el = await fixture<NileHeading>(html`<nile-heading class=\"x\"></nile-heading>`); expect(el.matches('nile-heading.x')).to.be.true; });\n it('18. closest', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.closest('nile-heading')).to.equal(el); });\n it('19. cloneNode', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect((el.cloneNode(true) as Element).tagName.toLowerCase()).to.equal('nile-heading'); });\n it('20. dispatchEvent', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); let f = false; el.addEventListener('c', () => (f = true)); el.dispatchEvent(new Event('c')); expect(f).to.be.true; });\n it('21. updateComplete', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); const r = await el.updateComplete; expect(r).to.not.be.undefined; });\n it('22. requestUpdate', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.requestUpdate(); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; });\n it('23. render method', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.render).to.be.a('function'); });\n it('24. shadowRoot host', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.host).to.equal(el); });\n it('25. class attr', async () => { const el = await fixture<NileHeading>(html`<nile-heading class=\"h\"></nile-heading>`); expect(el.classList.contains('h')).to.be.true; });\n it('26. id attr', async () => { const el = await fixture<NileHeading>(html`<nile-heading id=\"h1\"></nile-heading>`); expect(el.id).to.equal('h1'); });\n it('27. style attr', async () => { const el = await fixture<NileHeading>(html`<nile-heading style=\"color:red\"></nile-heading>`); expect(el.style.color).to.equal('red'); });\n it('28. data attr', async () => { const el = await fixture<NileHeading>(html`<nile-heading data-x=\"1\"></nile-heading>`); expect(el.getAttribute('data-x')).to.equal('1'); });\n it('29. hidden', async () => { const el = await fixture<NileHeading>(html`<nile-heading hidden></nile-heading>`); expect(el.hidden).to.be.true; });\n it('30. dir', async () => { const el = await fixture<NileHeading>(html`<nile-heading dir=\"rtl\"></nile-heading>`); expect(el.dir).to.equal('rtl'); });\n it('31. nodeType', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.nodeType).to.equal(1); });\n it('32. multiple instances', async () => { const c = await fixture(html`<div><nile-heading></nile-heading><nile-heading></nile-heading></div>`); expect(c.querySelectorAll('nile-heading').length).to.equal(2); });\n it('33. parent-child', async () => { const c = await fixture(html`<div><nile-heading></nile-heading></div>`); expect(c.querySelector('nile-heading')!.parentElement).to.equal(c); });\n it('34. localName', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.localName).to.equal('nile-heading'); });\n it('35. namespaceURI', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.namespaceURI).to.equal('http://www.w3.org/1999/xhtml'); });\n it('36. ownerDocument', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.ownerDocument).to.equal(document); });\n it('37. classList add', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.classList.add('z'); expect(el.classList.contains('z')).to.be.true; });\n it('38. dataset', async () => { const el = await fixture<NileHeading>(html`<nile-heading data-idx=\"0\"></nile-heading>`); expect(el.dataset.idx).to.equal('0'); });\n it('39. getBoundingClientRect', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.getBoundingClientRect()).to.exist; });\n it('40. name type', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(typeof el.name).to.equal('string'); });\n it('41. size type', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(typeof el.size).to.equal('string'); });\n it('42. no inputs', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelectorAll('input').length).to.equal(0); });\n it('43. no buttons', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelectorAll('button').length).to.equal(0); });\n it('44. slot count', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelectorAll('slot').length).to.equal(1); });\n it('45. aria-label', async () => { const el = await fixture<NileHeading>(html`<nile-heading aria-label=\"Title\"></nile-heading>`); expect(el.getAttribute('aria-label')).to.equal('Title'); });\n it('46. role', async () => { const el = await fixture<NileHeading>(html`<nile-heading role=\"heading\"></nile-heading>`); expect(el.getAttribute('role')).to.equal('heading'); });\n it('47. createElement', async () => { const el = document.createElement('nile-heading') as NileHeading; document.body.appendChild(el); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; document.body.removeChild(el); });\n it('48. lang attr', async () => { const el = await fixture<NileHeading>(html`<nile-heading lang=\"en\"></nile-heading>`); expect(el.lang).to.equal('en'); });\n it('49. tabindex', async () => { const el = await fixture<NileHeading>(html`<nile-heading tabindex=\"0\"></nile-heading>`); expect(el.getAttribute('tabindex')).to.equal('0'); });\n it('50. children survived update', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span id=\"s1\">Title</span></nile-heading>`); el.name = 'N'; await el.updateComplete; expect(el.querySelector('#s1')).to.exist; });\n it('51. nested elements', async () => { const el = await fixture<NileHeading>(html`<nile-heading><strong>Bold</strong></nile-heading>`); expect(el.querySelector('strong')).to.exist; });\n it('52. childElementCount', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span>A</span></nile-heading>`); expect(el.childElementCount).to.equal(1); });\n it('53. firstElementChild', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span>A</span></nile-heading>`); expect(el.firstElementChild!.tagName.toLowerCase()).to.equal('span'); });\n it('54. text content', async () => { const el = await fixture<NileHeading>(html`<nile-heading>Test</nile-heading>`); expect(el.textContent).to.contain('Test'); });\n it('55. no children default', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.childElementCount).to.equal(0); });\n it('56. no form', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('form')).to.be.null; });\n it('57. no anchor', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('a')).to.be.null; });\n it('58. no img', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('img')).to.be.null; });\n it('59. no svg', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('svg')).to.be.null; });\n it('60. shadow childNodes', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.childNodes.length).to.be.greaterThan(0); });\n it('61. scrollIntoView', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.scrollIntoView).to.be.a('function'); });\n it('62. focus method', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.focus).to.be.a('function'); });\n it('63. blur method', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.blur).to.be.a('function'); });\n it('64. dispatchCustomEvent', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); let d: any; el.addEventListener('t', ((e: CustomEvent) => { d = e.detail; }) as EventListener); el.dispatchEvent(new CustomEvent('t', { detail: 'x' })); expect(d).to.equal('x'); });\n it('65. class toggle', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.classList.toggle('active'); expect(el.classList.contains('active')).to.be.true; });\n it('66. toggle hidden', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.hidden = true; expect(el.hidden).to.be.true; });\n it('67. innerHTML', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.innerHTML = '<p>New</p>'; expect(el.querySelector('p')!.textContent).to.equal('New'); });\n it('68. setAttribute size', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.setAttribute('size', 'header-3'); await el.updateComplete; expect(el.size).to.equal('header-3'); });\n it('69. removeAttribute size', async () => { const el = await fixture<NileHeading>(html`<nile-heading size=\"header-2\"></nile-heading>`); el.removeAttribute('size'); await el.updateComplete; expect(el.getAttribute('size')).to.be.null; });\n it('70. hasAttribute size', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.hasAttribute('size')).to.be.true; });\n it('71. rapid size changes', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.size = 'header-2'; await el.updateComplete; el.size = 'header-3'; await el.updateComplete; expect(el.size).to.equal('header-3'); });\n it('72. no video', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('video')).to.be.null; });\n it('73. no audio', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('audio')).to.be.null; });\n it('74. no canvas', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('canvas')).to.be.null; });\n it('75. no table', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('table')).to.be.null; });\n it('76. no ul', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('ul')).to.be.null; });\n it('77. re-renders', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); el.name = 'A'; await el.updateComplete; el.name = 'B'; await el.updateComplete; expect(el.name).to.equal('B'); });\n it('78. nested in div', async () => { const c = await fixture(html`<div><nile-heading>Title</nile-heading></div>`); expect(c.querySelector('nile-heading')).to.exist; });\n it('79. contains check', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span id=\"s1\">T</span></nile-heading>`); expect(el.contains(el.querySelector('#s1'))).to.be.true; });\n it('80. children array', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span>A</span><span>B</span></nile-heading>`); expect(el.children.length).to.equal(2); });\n it('81. lastElementChild', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span>A</span><div>B</div></nile-heading>`); expect(el.lastElementChild!.tagName.toLowerCase()).to.equal('div'); });\n it('82. append child', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); const s = document.createElement('span'); el.appendChild(s); expect(el.querySelector('span')).to.exist; });\n it('83. remove child', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span id=\"s1\">T</span></nile-heading>`); el.removeChild(el.querySelector('#s1')!); expect(el.querySelector('#s1')).to.be.null; });\n it('84. replaceChildren', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span>Old</span></nile-heading>`); const p = document.createElement('p'); el.replaceChildren(p); expect(el.querySelector('p')).to.exist; expect(el.querySelector('span')).to.be.null; });\n it('85. textContent empty default', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.textContent!.trim()).to.equal(''); });\n it('86. no nav', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('nav')).to.be.null; });\n it('87. no aside', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('aside')).to.be.null; });\n it('88. no select', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('select')).to.be.null; });\n it('89. no textarea', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('textarea')).to.be.null; });\n it('90. aria-level', async () => { const el = await fixture<NileHeading>(html`<nile-heading aria-level=\"1\"></nile-heading>`); expect(el.getAttribute('aria-level')).to.equal('1'); });\n it('91. aria-describedby', async () => { const el = await fixture<NileHeading>(html`<nile-heading aria-describedby=\"d\"></nile-heading>`); expect(el.getAttribute('aria-describedby')).to.equal('d'); });\n it('92. title attr', async () => { const el = await fixture<NileHeading>(html`<nile-heading title=\"T\"></nile-heading>`); expect(el.title).to.equal('T'); });\n it('93. insertBefore', async () => { const el = await fixture<NileHeading>(html`<nile-heading><span id=\"s1\">B</span></nile-heading>`); const p = document.createElement('p'); el.insertBefore(p, el.querySelector('#s1')!); expect(el.firstElementChild!.tagName.toLowerCase()).to.equal('p'); });\n it('94. no pre', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('pre')).to.be.null; });\n it('95. no code', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('code')).to.be.null; });\n it('96. no h1 in shadow', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('h1')).to.be.null; });\n it('97. no div in shadow', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); expect(el.shadowRoot!.querySelector('div')).to.be.null; });\n it('98. only slot in shadow', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); const all = el.shadowRoot!.querySelectorAll('*'); const tagNames = Array.from(all).map(e => e.tagName.toLowerCase()); expect(tagNames).to.include('slot'); });\n it('99. multiple re-renders', async () => { const el = await fixture<NileHeading>(html`<nile-heading></nile-heading>`); for (let i = 0; i < 5; i++) { el.requestUpdate(); await el.updateComplete; } expect(el.shadowRoot).to.not.be.null; });\n it('100. full integration', async () => { const el = await fixture<NileHeading>(html`<nile-heading size=\"header-1\" name=\"Title\" class=\"h\" id=\"h1\" role=\"heading\" aria-label=\"Main heading\">Main Title</nile-heading>`); expect(el.name).to.equal('Title'); expect(el.size).to.equal('header-1'); expect(el.id).to.equal('h1'); expect(el.textContent).to.contain('Main Title'); expect(el.shadowRoot!.querySelector('slot')).to.exist; });\n});\n"]}
@@ -1,42 +1,105 @@
1
- import { fixture, html, expect } from '@open-wc/testing';
1
+ import { expect, fixture, html } from '@open-wc/testing';
2
2
  import './nile-hero';
3
3
  describe('NileHero', () => {
4
- it('renders correctly with default properties', async () => {
5
- const el = await fixture(html `
6
- <nile-hero icon="error" hero-text="Test Hero">
7
- <nile-page-header
8
- heading="I am heading"
9
- sub-heading="I am subheading"
10
- ></nile-page-header>
11
- </nile-hero>`);
12
- expect(el.getAttribute('icon')).to.equal('error');
13
- expect(el.hasAttribute('collapse')).to.be.false;
14
- expect(el.getAttribute('img-src')).to.equal('');
15
- expect(el.getAttribute('hero-text')).to.equal('Test Hero');
16
- expect(el).shadowDom.to.equalSnapshot();
17
- });
18
- it('checks for collapsed state', async () => {
19
- const el = await fixture(html `<nile-hero></nile-hero>`);
20
- el.collapse = true;
21
- await el.updateComplete;
22
- expect(el.collapse).to.be.true;
23
- el.collapse = true;
24
- await el.updateComplete;
25
- const heroContainer = el.shadowRoot?.querySelector('.hero__container');
26
- expect(heroContainer?.classList.contains('hero__container--collapsed')).to.be.true;
27
- });
28
- it('should render slot content', async () => {
29
- const el = await fixture(html `
30
- <nile-hero>
31
- <nile-page-header
32
- heading="I am heading"
33
- sub-heading="I am subheading"
34
- ></nile-page-header>
35
- </nile-hero>
36
- `);
37
- await el.updateComplete;
38
- const NilePageHeader = el.querySelector('nile-page-header');
39
- expect(NilePageHeader).to.exist;
40
- });
4
+ it('1. renders', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el).to.exist; });
5
+ it('2. shadow root', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot).to.not.be.null; });
6
+ it('3. tag name', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.tagName.toLowerCase()).to.equal('nile-hero'); });
7
+ it('4. icon default', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.icon).to.contain('nile-icon-action'); });
8
+ it('5. collapse defaults false', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.collapse).to.be.false; });
9
+ it('6. imgSrc defaults empty', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.imgSrc).to.equal(''); });
10
+ it('7. heroText defaults empty', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.heroText).to.equal(''); });
11
+ it('8. container part', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('[part="nile__hero__container"]')).to.exist; });
12
+ it('9. header part', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('[part="nile__hero__header"]')).to.exist; });
13
+ it('10. hero__container class', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('.hero__container')).to.exist; });
14
+ it('11. expanded class default', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('.hero__container--expanded')).to.exist; });
15
+ it('12. collapsed class', async () => { const el = await fixture(html `<nile-hero collapse></nile-hero>`); expect(el.shadowRoot.querySelector('.hero__container--collapsed')).to.exist; });
16
+ it('13. hero-header element', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('nile-hero-header')).to.exist; });
17
+ it('14. nile-icon', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('nile-icon')).to.exist; });
18
+ it('15. slot', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('slot')).to.exist; });
19
+ it('16. img element', async () => { const el = await fixture(html `<nile-hero img-src="test.png"></nile-hero>`); expect(el.shadowRoot.querySelector('img')).to.exist; });
20
+ it('17. hero__img class', async () => { const el = await fixture(html `<nile-hero img-src="t.png"></nile-hero>`); expect(el.shadowRoot.querySelector('.hero__img')).to.exist; });
21
+ it('18. hero__slot class', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('.hero__slot')).to.exist; });
22
+ it('19. hero__slot__container', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('.hero__slot__container')).to.exist; });
23
+ it('20. hero__img__container', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('#hero__img__container')).to.exist; });
24
+ it('21. icon__container', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('.icon__container')).to.exist; });
25
+ it('22. icon reflected', async () => { const el = await fixture(html `<nile-hero icon="star"></nile-hero>`); expect(el.getAttribute('icon')).to.equal('star'); });
26
+ it('23. collapse reflected', async () => { const el = await fixture(html `<nile-hero collapse></nile-hero>`); expect(el.hasAttribute('collapse')).to.be.true; });
27
+ it('24. img-src reflected', async () => { const el = await fixture(html `<nile-hero img-src="a.png"></nile-hero>`); expect(el.getAttribute('img-src')).to.equal('a.png'); });
28
+ it('25. hero-text reflected', async () => { const el = await fixture(html `<nile-hero hero-text="Hello"></nile-hero>`); expect(el.getAttribute('hero-text')).to.equal('Hello'); });
29
+ it('26. dynamic collapse', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.collapse = true; await el.updateComplete; expect(el.shadowRoot.querySelector('.hero__container--collapsed')).to.exist; });
30
+ it('27. dynamic icon', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.icon = 'home'; await el.updateComplete; const icon = el.shadowRoot.querySelector('nile-icon'); expect(icon.getAttribute('name')).to.equal('home'); });
31
+ it('28. dynamic imgSrc', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.imgSrc = 'new.png'; await el.updateComplete; const img = el.shadowRoot.querySelector('img'); expect(img.src).to.contain('new.png'); });
32
+ it('29. dynamic heroText', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.heroText = 'New Text'; await el.updateComplete; const h = el.shadowRoot.querySelector('nile-hero-header'); expect(h.getAttribute('hero-text')).to.equal('New Text'); });
33
+ it('30. has styles', async () => { expect((await import('./nile-hero')).NileHero.styles).to.exist; });
34
+ it('31. is defined', async () => { expect(customElements.get('nile-hero')).to.exist; });
35
+ it('32. shadow mode', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.mode).to.equal('open'); });
36
+ it('33. isConnected', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.isConnected).to.be.true; });
37
+ it('34. removal', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.remove(); expect(el.isConnected).to.be.false; });
38
+ it('35. outerHTML', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.outerHTML).to.contain('nile-hero'); });
39
+ it('36. matches', async () => { const el = await fixture(html `<nile-hero class="x"></nile-hero>`); expect(el.matches('nile-hero.x')).to.be.true; });
40
+ it('37. closest', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.closest('nile-hero')).to.equal(el); });
41
+ it('38. cloneNode', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.cloneNode(true).tagName.toLowerCase()).to.equal('nile-hero'); });
42
+ it('39. getBoundingClientRect', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.getBoundingClientRect()).to.exist; });
43
+ it('40. dispatchEvent', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); let f = false; el.addEventListener('c', () => (f = true)); el.dispatchEvent(new Event('c')); expect(f).to.be.true; });
44
+ it('41. updateComplete', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); const r = await el.updateComplete; expect(r).to.not.be.undefined; });
45
+ it('42. requestUpdate', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.requestUpdate(); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; });
46
+ it('43. render method', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.render).to.be.a('function'); });
47
+ it('44. shadowRoot host', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.host).to.equal(el); });
48
+ it('45. class attr', async () => { const el = await fixture(html `<nile-hero class="h"></nile-hero>`); expect(el.classList.contains('h')).to.be.true; });
49
+ it('46. id attr', async () => { const el = await fixture(html `<nile-hero id="h1"></nile-hero>`); expect(el.id).to.equal('h1'); });
50
+ it('47. style attr', async () => { const el = await fixture(html `<nile-hero style="color:red"></nile-hero>`); expect(el.style.color).to.equal('red'); });
51
+ it('48. data attr', async () => { const el = await fixture(html `<nile-hero data-x="1"></nile-hero>`); expect(el.getAttribute('data-x')).to.equal('1'); });
52
+ it('49. hidden', async () => { const el = await fixture(html `<nile-hero hidden></nile-hero>`); expect(el.hidden).to.be.true; });
53
+ it('50. dir', async () => { const el = await fixture(html `<nile-hero dir="rtl"></nile-hero>`); expect(el.dir).to.equal('rtl'); });
54
+ it('51. nodeType', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.nodeType).to.equal(1); });
55
+ it('52. multiple instances', async () => { const c = await fixture(html `<div><nile-hero></nile-hero><nile-hero></nile-hero></div>`); expect(c.querySelectorAll('nile-hero').length).to.equal(2); });
56
+ it('53. parent-child', async () => { const c = await fixture(html `<div><nile-hero></nile-hero></div>`); expect(c.querySelector('nile-hero').parentElement).to.equal(c); });
57
+ it('54. localName', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.localName).to.equal('nile-hero'); });
58
+ it('55. namespaceURI', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.namespaceURI).to.equal('http://www.w3.org/1999/xhtml'); });
59
+ it('56. ownerDocument', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.ownerDocument).to.equal(document); });
60
+ it('57. collapsed opacity', async () => { const el = await fixture(html `<nile-hero collapse></nile-hero>`); const slotContainer = el.shadowRoot.querySelector('.hero__slot__container'); expect(slotContainer.style.opacity).to.equal('0'); });
61
+ it('58. expanded opacity', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); const slotContainer = el.shadowRoot.querySelector('.hero__slot__container'); expect(slotContainer.style.opacity).to.equal('1'); });
62
+ it('59. header opacity collapsed', async () => { const el = await fixture(html `<nile-hero collapse></nile-hero>`); const h = el.shadowRoot.querySelector('nile-hero-header'); expect(h.style.opacity).to.equal('1'); });
63
+ it('60. header opacity expanded', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); const h = el.shadowRoot.querySelector('nile-hero-header'); expect(h.style.opacity).to.equal('0'); });
64
+ it('61. img container opacity collapsed', async () => { const el = await fixture(html `<nile-hero collapse></nile-hero>`); const c = el.shadowRoot.querySelector('#hero__img__container'); expect(c.style.opacity).to.equal('0'); });
65
+ it('62. img container opacity expanded', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); const c = el.shadowRoot.querySelector('#hero__img__container'); expect(c.style.opacity).to.equal('1'); });
66
+ it('63. hero-header gets hero-text', async () => { const el = await fixture(html `<nile-hero hero-text="Banner"></nile-hero>`); const h = el.shadowRoot.querySelector('nile-hero-header'); expect(h.getAttribute('hero-text')).to.equal('Banner'); });
67
+ it('64. hero-header gets icon', async () => { const el = await fixture(html `<nile-hero icon="star"></nile-hero>`); const h = el.shadowRoot.querySelector('nile-hero-header'); expect(h.getAttribute('icon')).to.equal('star'); });
68
+ it('65. nile-icon size', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); const icon = el.shadowRoot.querySelector('.icon__container nile-icon'); expect(icon.getAttribute('size')).to.equal('16'); });
69
+ it('66. slotted content', async () => { const el = await fixture(html `<nile-hero><p>Content</p></nile-hero>`); expect(el.querySelector('p')).to.exist; });
70
+ it('67. classList add', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.classList.add('z'); expect(el.classList.contains('z')).to.be.true; });
71
+ it('68. dataset', async () => { const el = await fixture(html `<nile-hero data-idx="0"></nile-hero>`); expect(el.dataset.idx).to.equal('0'); });
72
+ it('69. hasAttribute collapse', async () => { const el = await fixture(html `<nile-hero collapse></nile-hero>`); expect(el.hasAttribute('collapse')).to.be.true; });
73
+ it('70. removeAttribute collapse', async () => { const el = await fixture(html `<nile-hero collapse></nile-hero>`); el.removeAttribute('collapse'); await el.updateComplete; expect(el.collapse).to.be.false; });
74
+ it('71. setAttribute collapse', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.setAttribute('collapse', ''); await el.updateComplete; expect(el.collapse).to.be.true; });
75
+ it('72. icon type string', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(typeof el.icon).to.equal('string'); });
76
+ it('73. collapse type boolean', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(typeof el.collapse).to.equal('boolean'); });
77
+ it('74. imgSrc type string', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(typeof el.imgSrc).to.equal('string'); });
78
+ it('75. heroText type string', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(typeof el.heroText).to.equal('string'); });
79
+ it('76. toggle collapse', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.collapse = true; await el.updateComplete; el.collapse = false; await el.updateComplete; expect(el.shadowRoot.querySelector('.hero__container--expanded')).to.exist; });
80
+ it('77. no form', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelectorAll('form').length).to.equal(0); });
81
+ it('78. no input', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelectorAll('input').length).to.equal(0); });
82
+ it('79. no button', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelectorAll('button').length).to.equal(0); });
83
+ it('80. aria-label', async () => { const el = await fixture(html `<nile-hero aria-label="Hero Section"></nile-hero>`); expect(el.getAttribute('aria-label')).to.equal('Hero Section'); });
84
+ it('81. tabindex', async () => { const el = await fixture(html `<nile-hero tabindex="0"></nile-hero>`); expect(el.getAttribute('tabindex')).to.equal('0'); });
85
+ it('82. role', async () => { const el = await fixture(html `<nile-hero role="banner"></nile-hero>`); expect(el.getAttribute('role')).to.equal('banner'); });
86
+ it('83. createElement', async () => { const el = document.createElement('nile-hero'); document.body.appendChild(el); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; document.body.removeChild(el); });
87
+ it('84. setAttribute icon', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.setAttribute('icon', 'arrow'); await el.updateComplete; expect(el.icon).to.equal('arrow'); });
88
+ it('85. setAttribute imgSrc', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.setAttribute('img-src', 'x.png'); await el.updateComplete; expect(el.imgSrc).to.equal('x.png'); });
89
+ it('86. setAttribute heroText', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.setAttribute('hero-text', 'Title'); await el.updateComplete; expect(el.heroText).to.equal('Title'); });
90
+ it('87. img src attr', async () => { const el = await fixture(html `<nile-hero img-src="t.png"></nile-hero>`); const img = el.shadowRoot.querySelector('img'); expect(img.src).to.contain('t.png'); });
91
+ it('88. hero-header collapsed class', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.querySelector('.hero__header--collapsed')).to.exist; });
92
+ it('89. no expanded and collapsed together', async () => { const el = await fixture(html `<nile-hero collapse></nile-hero>`); expect(el.shadowRoot.querySelector('.hero__container--expanded')).to.be.null; });
93
+ it('90. text content', async () => { const el = await fixture(html `<nile-hero>Hello World</nile-hero>`); expect(el.textContent).to.contain('Hello World'); });
94
+ it('91. children', async () => { const el = await fixture(html `<nile-hero><span>A</span></nile-hero>`); expect(el.children.length).to.equal(1); });
95
+ it('92. childElementCount', async () => { const el = await fixture(html `<nile-hero><span>A</span><span>B</span></nile-hero>`); expect(el.childElementCount).to.equal(2); });
96
+ it('93. firstElementChild', async () => { const el = await fixture(html `<nile-hero><span>A</span></nile-hero>`); expect(el.firstElementChild.tagName.toLowerCase()).to.equal('span'); });
97
+ it('94. no childElements default', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.childElementCount).to.equal(0); });
98
+ it('95. shadow childNodes', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); expect(el.shadowRoot.childNodes.length).to.be.greaterThan(0); });
99
+ it('96. title attr', async () => { const el = await fixture(html `<nile-hero title="T"></nile-hero>`); expect(el.title).to.equal('T'); });
100
+ it('97. lang attr', async () => { const el = await fixture(html `<nile-hero lang="en"></nile-hero>`); expect(el.lang).to.equal('en'); });
101
+ it('98. dynamic all props', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.icon = 'star'; el.collapse = true; el.imgSrc = 'a.png'; el.heroText = 'Banner'; await el.updateComplete; expect(el.shadowRoot.querySelector('.hero__container--collapsed')).to.exist; });
102
+ it('99. re-renders', async () => { const el = await fixture(html `<nile-hero></nile-hero>`); el.collapse = true; await el.updateComplete; el.collapse = false; await el.updateComplete; el.collapse = true; await el.updateComplete; expect(el.shadowRoot.querySelector('.hero__container--collapsed')).to.exist; });
103
+ it('100. full integration', async () => { const el = await fixture(html `<nile-hero icon="star" hero-text="Banner" img-src="img.png" class="h" id="h1" collapse><p>Content</p></nile-hero>`); expect(el.icon).to.equal('star'); expect(el.heroText).to.equal('Banner'); expect(el.imgSrc).to.equal('img.png'); expect(el.collapse).to.be.true; expect(el.id).to.equal('h1'); expect(el.shadowRoot.querySelector('.hero__container--collapsed')).to.exist; expect(el.querySelector('p')).to.exist; });
41
104
  });
42
105
  //# sourceMappingURL=nile-hero.test.js.map