@aquera/nile-elements 0.0.81 → 0.0.84

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 (493) hide show
  1. package/README.md +19 -0
  2. package/demo/filenames.txt +1 -1
  3. package/demo/index.css +117 -0
  4. package/demo/index.html +34 -243
  5. package/demo/index.js +72 -0
  6. package/demo/variables.css +58 -0
  7. package/demo/variables_v2.css +51 -0
  8. package/dist/{fixture-b1476eef.cjs.js → fixture-1a9fb5f1.cjs.js} +5 -5
  9. package/dist/fixture-1a9fb5f1.cjs.js.map +1 -0
  10. package/dist/{fixture-6f853cbd.esm.js → fixture-81e5a936.esm.js} +3 -3
  11. package/dist/index.cjs.js +1 -1
  12. package/dist/index.esm.js +1 -1
  13. package/dist/index.iife.js +892 -570
  14. package/dist/internal/animate.cjs.js +1 -1
  15. package/dist/internal/animate.cjs.js.map +1 -1
  16. package/dist/internal/animate.esm.js +1 -1
  17. package/dist/nile-avatar/nile-avatar.css.cjs.js +1 -1
  18. package/dist/nile-avatar/nile-avatar.css.cjs.js.map +1 -1
  19. package/dist/nile-avatar/nile-avatar.css.esm.js +7 -8
  20. package/dist/nile-avatar/nile-avatar.test.cjs.js +2 -0
  21. package/dist/nile-avatar/nile-avatar.test.cjs.js.map +1 -0
  22. package/dist/nile-avatar/nile-avatar.test.esm.js +1 -0
  23. package/dist/nile-badge/index.cjs.js +1 -1
  24. package/dist/nile-badge/index.esm.js +1 -1
  25. package/dist/nile-badge/nile-badge.cjs.js +1 -1
  26. package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
  27. package/dist/nile-badge/nile-badge.css.cjs.js +1 -1
  28. package/dist/nile-badge/nile-badge.css.cjs.js.map +1 -1
  29. package/dist/nile-badge/nile-badge.css.esm.js +47 -47
  30. package/dist/nile-badge/nile-badge.esm.js +1 -1
  31. package/dist/nile-badge/nile-badge.test.cjs.js +2 -0
  32. package/dist/nile-badge/nile-badge.test.cjs.js.map +1 -0
  33. package/dist/nile-badge/nile-badge.test.esm.js +1 -0
  34. package/dist/nile-breadcrumb-item/nile-breadcrumb-item.css.cjs.js +1 -1
  35. package/dist/nile-breadcrumb-item/nile-breadcrumb-item.css.cjs.js.map +1 -1
  36. package/dist/nile-breadcrumb-item/nile-breadcrumb-item.css.esm.js +3 -4
  37. package/dist/nile-button/index.cjs.js +1 -1
  38. package/dist/nile-button/index.esm.js +1 -1
  39. package/dist/nile-button/nile-button.cjs.js +1 -1
  40. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  41. package/dist/nile-button/nile-button.esm.js +1 -1
  42. package/dist/nile-button/nile-button.test.cjs.js +2 -0
  43. package/dist/nile-button/nile-button.test.cjs.js.map +1 -0
  44. package/dist/nile-button/nile-button.test.esm.js +4 -0
  45. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +2 -0
  46. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js.map +1 -0
  47. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +49 -0
  48. package/dist/nile-calendar/index.cjs.js +1 -1
  49. package/dist/nile-calendar/index.esm.js +1 -1
  50. package/dist/nile-calendar/nile-calendar.cjs.js +1 -1
  51. package/dist/nile-calendar/nile-calendar.cjs.js.map +1 -1
  52. package/dist/nile-calendar/nile-calendar.css.cjs.js +1 -1
  53. package/dist/nile-calendar/nile-calendar.css.cjs.js.map +1 -1
  54. package/dist/nile-calendar/nile-calendar.css.esm.js +124 -193
  55. package/dist/nile-calendar/nile-calendar.esm.js +119 -135
  56. package/dist/nile-card/nile-card.test.cjs.js +2 -0
  57. package/dist/nile-card/nile-card.test.cjs.js.map +1 -0
  58. package/dist/nile-card/nile-card.test.esm.js +51 -0
  59. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
  60. package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
  61. package/dist/nile-date-picker/nile-date-picker.cjs.js +1 -1
  62. package/dist/nile-date-picker/nile-date-picker.cjs.js.map +1 -1
  63. package/dist/nile-date-picker/nile-date-picker.esm.js +4 -2
  64. package/dist/nile-dialog/index.cjs.js +1 -1
  65. package/dist/nile-dialog/index.esm.js +1 -1
  66. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  67. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  68. package/dist/nile-dialog/nile-dialog.css.cjs.js +1 -1
  69. package/dist/nile-dialog/nile-dialog.css.cjs.js.map +1 -1
  70. package/dist/nile-dialog/nile-dialog.css.esm.js +4 -1
  71. package/dist/nile-dialog/nile-dialog.esm.js +5 -4
  72. package/dist/nile-divider/index.cjs.js +2 -0
  73. package/dist/nile-divider/index.cjs.js.map +1 -0
  74. package/dist/nile-divider/index.esm.js +1 -0
  75. package/dist/nile-divider/nile-divider.cjs.js +2 -0
  76. package/dist/nile-divider/nile-divider.cjs.js.map +1 -0
  77. package/dist/nile-divider/nile-divider.css.cjs.js +2 -0
  78. package/dist/nile-divider/nile-divider.css.cjs.js.map +1 -0
  79. package/dist/nile-divider/nile-divider.css.esm.js +28 -0
  80. package/dist/nile-divider/nile-divider.esm.js +3 -0
  81. package/dist/nile-drawer/index.cjs.js +1 -1
  82. package/dist/nile-drawer/index.esm.js +1 -1
  83. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  84. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  85. package/dist/nile-drawer/nile-drawer.esm.js +1 -1
  86. package/dist/nile-drawer/nile-drawer.test.cjs.js +2 -0
  87. package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -0
  88. package/dist/nile-drawer/nile-drawer.test.esm.js +18 -0
  89. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
  90. package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
  91. package/dist/nile-error-message/nile-error-message.test.cjs.js +2 -0
  92. package/dist/nile-error-message/nile-error-message.test.cjs.js.map +1 -0
  93. package/dist/nile-error-message/nile-error-message.test.esm.js +1 -0
  94. package/dist/nile-form-group/nile-form-group.test.cjs.js +2 -0
  95. package/dist/nile-form-group/nile-form-group.test.cjs.js.map +1 -0
  96. package/dist/nile-form-group/nile-form-group.test.esm.js +1 -0
  97. package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
  98. package/dist/nile-hero/nile-hero.test.esm.js +1 -1
  99. package/dist/nile-icon/icons/svg/alert.cjs.js +2 -0
  100. package/dist/nile-icon/icons/svg/alert.cjs.js.map +1 -0
  101. package/dist/nile-icon/icons/svg/alert.esm.js +1 -0
  102. package/dist/nile-icon/icons/svg/file-check-02.cjs.js +2 -0
  103. package/dist/nile-icon/icons/svg/file-check-02.cjs.js.map +1 -0
  104. package/dist/nile-icon/icons/svg/file-check-02.esm.js +1 -0
  105. package/dist/nile-icon/icons/svg/headphones-01.cjs.js +2 -0
  106. package/dist/nile-icon/icons/svg/headphones-01.cjs.js.map +1 -0
  107. package/dist/nile-icon/icons/svg/headphones-01.esm.js +1 -0
  108. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  109. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  110. package/dist/nile-icon/icons/svg/keyboard-01.cjs.js +2 -0
  111. package/dist/nile-icon/icons/svg/keyboard-01.cjs.js.map +1 -0
  112. package/dist/nile-icon/icons/svg/keyboard-01.esm.js +1 -0
  113. package/dist/nile-icon/icons/svg/monitor-01.cjs.js +2 -0
  114. package/dist/nile-icon/icons/svg/monitor-01.cjs.js.map +1 -0
  115. package/dist/nile-icon/icons/svg/monitor-01.esm.js +1 -0
  116. package/dist/nile-icon/icons/svg/mouse.cjs.js +2 -0
  117. package/dist/nile-icon/icons/svg/mouse.cjs.js.map +1 -0
  118. package/dist/nile-icon/icons/svg/mouse.esm.js +1 -0
  119. package/dist/nile-icon/icons/svg/printer.cjs.js +2 -0
  120. package/dist/nile-icon/icons/svg/printer.cjs.js.map +1 -0
  121. package/dist/nile-icon/icons/svg/printer.esm.js +1 -0
  122. package/dist/nile-icon/index.cjs.js +1 -1
  123. package/dist/nile-icon/index.cjs.js.map +1 -1
  124. package/dist/nile-icon/index.esm.js +1 -1
  125. package/dist/nile-icon/nile-icon.test.cjs.js +2 -0
  126. package/dist/nile-icon/nile-icon.test.cjs.js.map +1 -0
  127. package/dist/nile-icon/nile-icon.test.esm.js +1 -0
  128. package/dist/nile-icon-button/index.cjs.js +1 -1
  129. package/dist/nile-icon-button/index.esm.js +1 -1
  130. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  131. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  132. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  133. package/dist/nile-input/index.cjs.js +1 -1
  134. package/dist/nile-input/index.esm.js +1 -1
  135. package/dist/nile-input/nile-input.cjs.js +1 -1
  136. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  137. package/dist/nile-input/nile-input.esm.js +1 -1
  138. package/dist/nile-input/nile-input.test.cjs.js +2 -0
  139. package/dist/nile-input/nile-input.test.cjs.js.map +1 -0
  140. package/dist/nile-input/nile-input.test.esm.js +17 -0
  141. package/dist/nile-link/nile-link.test.cjs.js +2 -0
  142. package/dist/nile-link/nile-link.test.cjs.js.map +1 -0
  143. package/dist/nile-link/nile-link.test.esm.js +1 -0
  144. package/dist/nile-list/index.cjs.js +2 -0
  145. package/dist/nile-list/index.cjs.js.map +1 -0
  146. package/dist/nile-list/index.esm.js +1 -0
  147. package/dist/nile-list/nile-list.cjs.js +2 -0
  148. package/dist/nile-list/nile-list.cjs.js.map +1 -0
  149. package/dist/nile-list/nile-list.css.cjs.js +2 -0
  150. package/dist/nile-list/nile-list.css.cjs.js.map +1 -0
  151. package/dist/nile-list/nile-list.css.esm.js +8 -0
  152. package/dist/nile-list/nile-list.esm.js +3 -0
  153. package/dist/nile-list-item/index.cjs.js +2 -0
  154. package/dist/nile-list-item/index.cjs.js.map +1 -0
  155. package/dist/nile-list-item/index.esm.js +1 -0
  156. package/dist/nile-list-item/nile-list-item.cjs.js +2 -0
  157. package/dist/nile-list-item/nile-list-item.cjs.js.map +1 -0
  158. package/dist/nile-list-item/nile-list-item.css.cjs.js +2 -0
  159. package/dist/nile-list-item/nile-list-item.css.cjs.js.map +1 -0
  160. package/dist/nile-list-item/nile-list-item.css.esm.js +54 -0
  161. package/dist/nile-list-item/nile-list-item.esm.js +21 -0
  162. package/dist/nile-loader/nile-loader.test.cjs.js +2 -0
  163. package/dist/nile-loader/nile-loader.test.cjs.js.map +1 -0
  164. package/dist/nile-loader/nile-loader.test.esm.js +1 -0
  165. package/dist/nile-menu/nile-menu.cjs.js +1 -1
  166. package/dist/nile-menu/nile-menu.cjs.js.map +1 -1
  167. package/dist/nile-menu/nile-menu.css.cjs.js +1 -1
  168. package/dist/nile-menu/nile-menu.css.cjs.js.map +1 -1
  169. package/dist/nile-menu/nile-menu.css.esm.js +21 -7
  170. package/dist/nile-menu/nile-menu.esm.js +18 -15
  171. package/dist/nile-menu-item/index.cjs.js +1 -1
  172. package/dist/nile-menu-item/index.esm.js +1 -1
  173. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  174. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  175. package/dist/nile-menu-item/nile-menu-item.css.cjs.js +1 -1
  176. package/dist/nile-menu-item/nile-menu-item.css.cjs.js.map +1 -1
  177. package/dist/nile-menu-item/nile-menu-item.css.esm.js +1 -1
  178. package/dist/nile-menu-item/nile-menu-item.esm.js +18 -21
  179. package/dist/nile-option/index.cjs.js +1 -1
  180. package/dist/nile-option/index.esm.js +1 -1
  181. package/dist/nile-option/nile-option.cjs.js +1 -1
  182. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  183. package/dist/nile-option/nile-option.esm.js +1 -1
  184. package/dist/nile-popover/nile-popover.cjs.js +1 -1
  185. package/dist/nile-popover/nile-popover.cjs.js.map +1 -1
  186. package/dist/nile-popover/nile-popover.css.cjs.js +1 -1
  187. package/dist/nile-popover/nile-popover.css.cjs.js.map +1 -1
  188. package/dist/nile-popover/nile-popover.css.esm.js +6 -4
  189. package/dist/nile-popover/nile-popover.esm.js +4 -7
  190. package/dist/nile-popover/nile-popover.test.cjs.js +2 -0
  191. package/dist/nile-popover/nile-popover.test.cjs.js.map +1 -0
  192. package/dist/nile-popover/nile-popover.test.esm.js +21 -0
  193. package/dist/nile-popup/nile-popup.css.cjs.js +1 -1
  194. package/dist/nile-popup/nile-popup.css.cjs.js.map +1 -1
  195. package/dist/nile-popup/nile-popup.css.esm.js +8 -4
  196. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +2 -0
  197. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js.map +1 -0
  198. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -0
  199. package/dist/nile-radio/nile-radio.test.cjs.js +2 -0
  200. package/dist/nile-radio/nile-radio.test.cjs.js.map +1 -0
  201. package/dist/nile-radio/nile-radio.test.esm.js +1 -0
  202. package/dist/nile-select/index.cjs.js +1 -1
  203. package/dist/nile-select/index.esm.js +1 -1
  204. package/dist/nile-select/nile-select.cjs.js +1 -1
  205. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  206. package/dist/nile-select/nile-select.esm.js +3 -3
  207. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +2 -0
  208. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js.map +1 -0
  209. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -0
  210. package/dist/nile-tab/index.cjs.js +1 -1
  211. package/dist/nile-tab/index.esm.js +1 -1
  212. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  213. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  214. package/dist/nile-tab/nile-tab.esm.js +1 -1
  215. package/dist/nile-tab-group/index.cjs.js +1 -1
  216. package/dist/nile-tab-group/index.esm.js +1 -1
  217. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  218. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  219. package/dist/nile-tab-group/nile-tab-group.css.cjs.js +1 -1
  220. package/dist/nile-tab-group/nile-tab-group.css.cjs.js.map +1 -1
  221. package/dist/nile-tab-group/nile-tab-group.css.esm.js +2 -2
  222. package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
  223. package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js +1 -1
  224. package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js.map +1 -1
  225. package/dist/nile-table-cell-item/nile-table-cell-item.css.esm.js +2 -1
  226. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js +1 -1
  227. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js.map +1 -1
  228. package/dist/nile-table-header-item/nile-table-header-item.css.esm.js +2 -5
  229. package/dist/nile-tag/index.cjs.js +1 -1
  230. package/dist/nile-tag/index.esm.js +1 -1
  231. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  232. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  233. package/dist/nile-tag/nile-tag.esm.js +1 -1
  234. package/dist/nile-textarea/nile-textarea.test.cjs.js +2 -0
  235. package/dist/nile-textarea/nile-textarea.test.cjs.js.map +1 -0
  236. package/dist/nile-textarea/nile-textarea.test.esm.js +1 -0
  237. package/dist/nile-toast/index.cjs.js +1 -1
  238. package/dist/nile-toast/index.esm.js +1 -1
  239. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  240. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  241. package/dist/nile-toast/nile-toast.esm.js +1 -1
  242. package/dist/nile-tree/index.cjs.js +2 -0
  243. package/dist/nile-tree/index.cjs.js.map +1 -0
  244. package/dist/nile-tree/index.esm.js +1 -0
  245. package/dist/nile-tree/nile-tree.cjs.js +2 -0
  246. package/dist/nile-tree/nile-tree.cjs.js.map +1 -0
  247. package/dist/nile-tree/nile-tree.css.cjs.js +2 -0
  248. package/dist/nile-tree/nile-tree.css.cjs.js.map +1 -0
  249. package/dist/nile-tree/nile-tree.css.esm.js +36 -0
  250. package/dist/nile-tree/nile-tree.esm.js +13 -0
  251. package/dist/nile-tree-item/index.cjs.js +2 -0
  252. package/dist/nile-tree-item/index.cjs.js.map +1 -0
  253. package/dist/nile-tree-item/index.esm.js +1 -0
  254. package/dist/nile-tree-item/nile-tree-item.cjs.js +2 -0
  255. package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -0
  256. package/dist/nile-tree-item/nile-tree-item.css.cjs.js +2 -0
  257. package/dist/nile-tree-item/nile-tree-item.css.cjs.js.map +1 -0
  258. package/dist/nile-tree-item/nile-tree-item.css.esm.js +164 -0
  259. package/dist/nile-tree-item/nile-tree-item.esm.js +63 -0
  260. package/dist/src/index.d.ts +5 -0
  261. package/dist/src/index.js +5 -0
  262. package/dist/src/index.js.map +1 -1
  263. package/dist/src/nile-avatar/nile-avatar.css.js +5 -6
  264. package/dist/src/nile-avatar/nile-avatar.css.js.map +1 -1
  265. package/dist/src/nile-avatar/nile-avatar.test.d.ts +1 -0
  266. package/dist/src/nile-avatar/nile-avatar.test.js +58 -0
  267. package/dist/src/nile-avatar/nile-avatar.test.js.map +1 -0
  268. package/dist/src/nile-badge/nile-badge.css.js +45 -45
  269. package/dist/src/nile-badge/nile-badge.css.js.map +1 -1
  270. package/dist/src/nile-badge/nile-badge.test.d.ts +1 -0
  271. package/dist/src/nile-badge/nile-badge.test.js +42 -0
  272. package/dist/src/nile-badge/nile-badge.test.js.map +1 -0
  273. package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.css.js +3 -4
  274. package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.css.js.map +1 -1
  275. package/dist/src/nile-button/nile-button.test.d.ts +1 -0
  276. package/dist/src/nile-button/nile-button.test.js +86 -0
  277. package/dist/src/nile-button/nile-button.test.js.map +1 -0
  278. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.d.ts +2 -0
  279. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.js +108 -0
  280. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.js.map +1 -0
  281. package/dist/src/nile-calendar/nile-calendar.css.js +122 -191
  282. package/dist/src/nile-calendar/nile-calendar.css.js.map +1 -1
  283. package/dist/src/nile-calendar/nile-calendar.d.ts +8 -0
  284. package/dist/src/nile-calendar/nile-calendar.js +143 -169
  285. package/dist/src/nile-calendar/nile-calendar.js.map +1 -1
  286. package/dist/src/nile-card/nile-card.test.d.ts +1 -0
  287. package/dist/src/nile-card/nile-card.test.js +69 -0
  288. package/dist/src/nile-card/nile-card.test.js.map +1 -0
  289. package/dist/src/nile-date-picker/nile-date-picker.d.ts +1 -1
  290. package/dist/src/nile-date-picker/nile-date-picker.js +4 -0
  291. package/dist/src/nile-date-picker/nile-date-picker.js.map +1 -1
  292. package/dist/src/nile-dialog/nile-dialog.css.js +4 -1
  293. package/dist/src/nile-dialog/nile-dialog.css.js.map +1 -1
  294. package/dist/src/nile-dialog/nile-dialog.js +4 -3
  295. package/dist/src/nile-dialog/nile-dialog.js.map +1 -1
  296. package/dist/src/nile-divider/index.d.ts +1 -0
  297. package/dist/src/nile-divider/index.js +2 -0
  298. package/dist/src/nile-divider/index.js.map +1 -0
  299. package/dist/src/nile-divider/nile-divider.css.d.ts +12 -0
  300. package/dist/src/nile-divider/nile-divider.css.js +40 -0
  301. package/dist/src/nile-divider/nile-divider.css.js.map +1 -0
  302. package/dist/src/nile-divider/nile-divider.d.ts +34 -0
  303. package/dist/src/nile-divider/nile-divider.js +55 -0
  304. package/dist/src/nile-divider/nile-divider.js.map +1 -0
  305. package/dist/src/nile-drawer/nile-drawer.test.d.ts +1 -0
  306. package/dist/src/nile-drawer/nile-drawer.test.js +88 -0
  307. package/dist/src/nile-drawer/nile-drawer.test.js.map +1 -0
  308. package/dist/src/nile-error-message/nile-error-message.test.d.ts +1 -0
  309. package/dist/src/nile-error-message/nile-error-message.test.js +61 -0
  310. package/dist/src/nile-error-message/nile-error-message.test.js.map +1 -0
  311. package/dist/src/nile-form-group/nile-form-group.test.d.ts +1 -0
  312. package/dist/src/nile-form-group/nile-form-group.test.js +55 -0
  313. package/dist/src/nile-form-group/nile-form-group.test.js.map +1 -0
  314. package/dist/src/nile-icon/icons/svg/alert.d.ts +5 -0
  315. package/dist/src/nile-icon/icons/svg/alert.js +5 -0
  316. package/dist/src/nile-icon/icons/svg/alert.js.map +1 -0
  317. package/dist/src/nile-icon/icons/svg/file-check-02.d.ts +5 -0
  318. package/dist/src/nile-icon/icons/svg/file-check-02.js +5 -0
  319. package/dist/src/nile-icon/icons/svg/file-check-02.js.map +1 -0
  320. package/dist/src/nile-icon/icons/svg/headphones-01.d.ts +5 -0
  321. package/dist/src/nile-icon/icons/svg/headphones-01.js +5 -0
  322. package/dist/src/nile-icon/icons/svg/headphones-01.js.map +1 -0
  323. package/dist/src/nile-icon/icons/svg/index.d.ts +7 -0
  324. package/dist/src/nile-icon/icons/svg/index.js +7 -0
  325. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  326. package/dist/src/nile-icon/icons/svg/keyboard-01.d.ts +5 -0
  327. package/dist/src/nile-icon/icons/svg/keyboard-01.js +5 -0
  328. package/dist/src/nile-icon/icons/svg/keyboard-01.js.map +1 -0
  329. package/dist/src/nile-icon/icons/svg/monitor-01.d.ts +5 -0
  330. package/dist/src/nile-icon/icons/svg/monitor-01.js +5 -0
  331. package/dist/src/nile-icon/icons/svg/monitor-01.js.map +1 -0
  332. package/dist/src/nile-icon/icons/svg/mouse.d.ts +5 -0
  333. package/dist/src/nile-icon/icons/svg/mouse.js +5 -0
  334. package/dist/src/nile-icon/icons/svg/mouse.js.map +1 -0
  335. package/dist/src/nile-icon/icons/svg/printer.d.ts +5 -0
  336. package/dist/src/nile-icon/icons/svg/printer.js +5 -0
  337. package/dist/src/nile-icon/icons/svg/printer.js.map +1 -0
  338. package/dist/src/nile-icon/nile-icon.test.d.ts +1 -0
  339. package/dist/src/nile-icon/nile-icon.test.js +45 -0
  340. package/dist/src/nile-icon/nile-icon.test.js.map +1 -0
  341. package/dist/src/nile-input/nile-input.test.d.ts +1 -0
  342. package/dist/src/nile-input/nile-input.test.js +139 -0
  343. package/dist/src/nile-input/nile-input.test.js.map +1 -0
  344. package/dist/src/nile-link/nile-link.test.d.ts +1 -0
  345. package/dist/src/nile-link/nile-link.test.js +72 -0
  346. package/dist/src/nile-link/nile-link.test.js.map +1 -0
  347. package/dist/src/nile-list/index.d.ts +1 -0
  348. package/dist/src/nile-list/index.js +2 -0
  349. package/dist/src/nile-list/index.js.map +1 -0
  350. package/dist/src/nile-list/nile-list.css.d.ts +12 -0
  351. package/dist/src/nile-list/nile-list.css.js +20 -0
  352. package/dist/src/nile-list/nile-list.css.js.map +1 -0
  353. package/dist/src/nile-list/nile-list.d.ts +33 -0
  354. package/dist/src/nile-list/nile-list.js +47 -0
  355. package/dist/src/nile-list/nile-list.js.map +1 -0
  356. package/dist/src/nile-list-item/index.d.ts +1 -0
  357. package/dist/src/nile-list-item/index.js +2 -0
  358. package/dist/src/nile-list-item/index.js.map +1 -0
  359. package/dist/src/nile-list-item/nile-list-item.css.d.ts +12 -0
  360. package/dist/src/nile-list-item/nile-list-item.css.js +66 -0
  361. package/dist/src/nile-list-item/nile-list-item.css.js.map +1 -0
  362. package/dist/src/nile-list-item/nile-list-item.d.ts +38 -0
  363. package/dist/src/nile-list-item/nile-list-item.js +96 -0
  364. package/dist/src/nile-list-item/nile-list-item.js.map +1 -0
  365. package/dist/src/nile-loader/nile-loader.test.d.ts +1 -0
  366. package/dist/src/nile-loader/nile-loader.test.js +39 -0
  367. package/dist/src/nile-loader/nile-loader.test.js.map +1 -0
  368. package/dist/src/nile-menu/nile-menu.css.js +19 -5
  369. package/dist/src/nile-menu/nile-menu.css.js.map +1 -1
  370. package/dist/src/nile-menu/nile-menu.d.ts +1 -0
  371. package/dist/src/nile-menu/nile-menu.js +25 -13
  372. package/dist/src/nile-menu/nile-menu.js.map +1 -1
  373. package/dist/src/nile-menu-item/nile-menu-item.css.js +1 -1
  374. package/dist/src/nile-menu-item/nile-menu-item.css.js.map +1 -1
  375. package/dist/src/nile-menu-item/nile-menu-item.js +21 -20
  376. package/dist/src/nile-menu-item/nile-menu-item.js.map +1 -1
  377. package/dist/src/nile-popover/nile-popover.css.js +6 -4
  378. package/dist/src/nile-popover/nile-popover.css.js.map +1 -1
  379. package/dist/src/nile-popover/nile-popover.d.ts +1 -0
  380. package/dist/src/nile-popover/nile-popover.js +7 -6
  381. package/dist/src/nile-popover/nile-popover.js.map +1 -1
  382. package/dist/src/nile-popover/nile-popover.test.d.ts +1 -0
  383. package/dist/src/nile-popover/nile-popover.test.js +73 -0
  384. package/dist/src/nile-popover/nile-popover.test.js.map +1 -0
  385. package/dist/src/nile-popup/nile-popup.css.d.ts +5 -5
  386. package/dist/src/nile-popup/nile-popup.css.js +13 -9
  387. package/dist/src/nile-popup/nile-popup.css.js.map +1 -1
  388. package/dist/src/nile-progress-bar/nile-progress-bar.test.d.ts +1 -0
  389. package/dist/src/nile-progress-bar/nile-progress-bar.test.js +48 -0
  390. package/dist/src/nile-progress-bar/nile-progress-bar.test.js.map +1 -0
  391. package/dist/src/nile-radio/nile-radio.test.d.ts +1 -0
  392. package/dist/src/nile-radio/nile-radio.test.js +71 -0
  393. package/dist/src/nile-radio/nile-radio.test.js.map +1 -0
  394. package/dist/src/nile-select/nile-select.d.ts +1 -0
  395. package/dist/src/nile-select/nile-select.js +5 -1
  396. package/dist/src/nile-select/nile-select.js.map +1 -1
  397. package/dist/src/nile-slide-toggle/nile-slide-toggle.test.d.ts +1 -0
  398. package/dist/src/nile-slide-toggle/nile-slide-toggle.test.js +54 -0
  399. package/dist/src/nile-slide-toggle/nile-slide-toggle.test.js.map +1 -0
  400. package/dist/src/nile-tab-group/nile-tab-group.css.js +2 -2
  401. package/dist/src/nile-tab-group/nile-tab-group.css.js.map +1 -1
  402. package/dist/src/nile-tab-group/nile-tab-group.js +3 -1
  403. package/dist/src/nile-tab-group/nile-tab-group.js.map +1 -1
  404. package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js +2 -1
  405. package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js.map +1 -1
  406. package/dist/src/nile-table-header-item/nile-table-header-item.css.js +2 -5
  407. package/dist/src/nile-table-header-item/nile-table-header-item.css.js.map +1 -1
  408. package/dist/src/nile-textarea/nile-textarea.test.d.ts +1 -0
  409. package/dist/src/nile-textarea/nile-textarea.test.js +87 -0
  410. package/dist/src/nile-textarea/nile-textarea.test.js.map +1 -0
  411. package/dist/src/nile-tree/index.d.ts +1 -0
  412. package/dist/src/nile-tree/index.js +2 -0
  413. package/dist/src/nile-tree/index.js.map +1 -0
  414. package/dist/src/nile-tree/nile-tree.css.d.ts +12 -0
  415. package/dist/src/nile-tree/nile-tree.css.js +48 -0
  416. package/dist/src/nile-tree/nile-tree.css.js.map +1 -0
  417. package/dist/src/nile-tree/nile-tree.d.ts +69 -0
  418. package/dist/src/nile-tree/nile-tree.js +376 -0
  419. package/dist/src/nile-tree/nile-tree.js.map +1 -0
  420. package/dist/src/nile-tree-item/index.d.ts +1 -0
  421. package/dist/src/nile-tree-item/index.js +2 -0
  422. package/dist/src/nile-tree-item/index.js.map +1 -0
  423. package/dist/src/nile-tree-item/nile-tree-item.css.d.ts +12 -0
  424. package/dist/src/nile-tree-item/nile-tree-item.css.js +176 -0
  425. package/dist/src/nile-tree-item/nile-tree-item.css.js.map +1 -0
  426. package/dist/src/nile-tree-item/nile-tree-item.d.ts +96 -0
  427. package/dist/src/nile-tree-item/nile-tree-item.js +324 -0
  428. package/dist/src/nile-tree-item/nile-tree-item.js.map +1 -0
  429. package/dist/tsconfig.tsbuildinfo +1 -1
  430. package/package.json +71 -2
  431. package/plopfile.js +11 -0
  432. package/src/index.ts +6 -1
  433. package/src/nile-avatar/nile-avatar.css.ts +5 -6
  434. package/src/nile-avatar/nile-avatar.test.ts +65 -0
  435. package/src/nile-badge/nile-badge.css.ts +45 -45
  436. package/src/nile-badge/nile-badge.test.ts +48 -0
  437. package/src/nile-breadcrumb-item/nile-breadcrumb-item.css.ts +3 -4
  438. package/src/nile-button/nile-button.test.ts +117 -0
  439. package/src/nile-button-toggle-group/nile-button-toggle-group.test.ts +130 -0
  440. package/src/nile-calendar/nile-calendar.css.ts +122 -191
  441. package/src/nile-calendar/nile-calendar.ts +148 -213
  442. package/src/nile-card/nile-card.test.ts +74 -0
  443. package/src/nile-date-picker/nile-date-picker.ts +9 -7
  444. package/src/nile-dialog/nile-dialog.css.ts +4 -1
  445. package/src/nile-dialog/nile-dialog.ts +4 -4
  446. package/src/nile-divider/index.ts +1 -0
  447. package/src/nile-divider/nile-divider.css.ts +42 -0
  448. package/src/nile-divider/nile-divider.ts +56 -0
  449. package/src/nile-drawer/nile-drawer.test.ts +106 -0
  450. package/src/nile-error-message/nile-error-message.test.ts +69 -0
  451. package/src/nile-form-group/nile-form-group.test.ts +63 -0
  452. package/src/nile-icon/icons/svg/alert.ts +5 -0
  453. package/src/nile-icon/icons/svg/file-check-02.ts +5 -0
  454. package/src/nile-icon/icons/svg/headphones-01.ts +5 -0
  455. package/src/nile-icon/icons/svg/index.ts +7 -0
  456. package/src/nile-icon/icons/svg/keyboard-01.ts +5 -0
  457. package/src/nile-icon/icons/svg/monitor-01.ts +5 -0
  458. package/src/nile-icon/icons/svg/mouse.ts +5 -0
  459. package/src/nile-icon/icons/svg/printer.ts +5 -0
  460. package/src/nile-icon/nile-icon.test.ts +53 -0
  461. package/src/nile-input/nile-input.test.ts +160 -0
  462. package/src/nile-link/nile-link.test.ts +83 -0
  463. package/src/nile-list/index.ts +1 -0
  464. package/src/nile-list/nile-list.css.ts +22 -0
  465. package/src/nile-list/nile-list.ts +64 -0
  466. package/src/nile-list-item/index.ts +1 -0
  467. package/src/nile-list-item/nile-list-item.css.ts +68 -0
  468. package/src/nile-list-item/nile-list-item.ts +104 -0
  469. package/src/nile-loader/nile-loader.test.ts +45 -0
  470. package/src/nile-menu/nile-menu.css.ts +19 -5
  471. package/src/nile-menu/nile-menu.ts +28 -17
  472. package/src/nile-menu-item/nile-menu-item.css.ts +1 -1
  473. package/src/nile-menu-item/nile-menu-item.ts +22 -21
  474. package/src/nile-popover/nile-popover.css.ts +6 -4
  475. package/src/nile-popover/nile-popover.test.ts +86 -0
  476. package/src/nile-popover/nile-popover.ts +7 -10
  477. package/src/nile-popup/nile-popup.css.ts +14 -10
  478. package/src/nile-progress-bar/nile-progress-bar.test.ts +55 -0
  479. package/src/nile-radio/nile-radio.test.ts +81 -0
  480. package/src/nile-select/nile-select.ts +3 -1
  481. package/src/nile-slide-toggle/nile-slide-toggle.test.ts +61 -0
  482. package/src/nile-tab-group/nile-tab-group.css.ts +2 -2
  483. package/src/nile-tab-group/nile-tab-group.ts +2 -1
  484. package/src/nile-table-cell-item/nile-table-cell-item.css.ts +2 -1
  485. package/src/nile-table-header-item/nile-table-header-item.css.ts +2 -5
  486. package/src/nile-textarea/nile-textarea.test.ts +102 -0
  487. package/src/nile-tree/index.ts +1 -0
  488. package/src/nile-tree/nile-tree.css.ts +50 -0
  489. package/src/nile-tree/nile-tree.ts +433 -0
  490. package/src/nile-tree-item/index.ts +1 -0
  491. package/src/nile-tree-item/nile-tree-item.css.ts +178 -0
  492. package/src/nile-tree-item/nile-tree-item.ts +330 -0
  493. package/dist/fixture-b1476eef.cjs.js.map +0 -1
@@ -0,0 +1,83 @@
1
+ import { fixture, expect, oneEvent, aTimeout } from '@open-wc/testing';
2
+ import { html } from 'lit/static-html.js';
3
+ import './nile-link';
4
+ import { NileLink } from './nile-link';
5
+ describe('NileLink', () => {
6
+ it('should render correctly', async () => {
7
+ const el: NileLink = await fixture(html`<nile-link></nile-link>`);
8
+ expect(el.shadowRoot).to.exist;
9
+ expect(el.shadowRoot!.querySelector('.link')).to.exist;
10
+ });
11
+
12
+ it('should handle the disabled attribute', async () => {
13
+ const el: NileLink = await fixture(html`<nile-link disabled></nile-link>`);
14
+ const link = el.shadowRoot!.querySelector('.link')!;
15
+ expect(el.disabled).to.be.true;
16
+ expect(link.getAttribute('aria-disabled')).to.equal('true');
17
+ expect(link.getAttribute('tabindex')).to.equal('-1');
18
+ });
19
+
20
+ it('should emit custom events on focus and blur', async () => {
21
+ const el: NileLink = await fixture(html`<nile-link></nile-link>`);
22
+ setTimeout(() => el.shadowRoot!.querySelector<HTMLElement>('.link')!.focus());
23
+ const focusEvent = await oneEvent(el, 'nile-focus');
24
+ expect(focusEvent).to.exist;
25
+
26
+ setTimeout(() => el.shadowRoot!.querySelector<HTMLElement>('.link')!.blur());
27
+ const blurEvent = await oneEvent(el, 'nile-blur');
28
+ expect(blurEvent).to.exist;
29
+ });
30
+
31
+ it('should prevent click events when disabled', async () => {
32
+ const el: NileLink = await fixture(html`<nile-link disabled></nile-link>`);
33
+ let clicked = false;
34
+ el.addEventListener('click', () => {
35
+ clicked = true;
36
+ });
37
+
38
+ el.shadowRoot!.querySelector<HTMLElement>('.link')!.click();
39
+ await aTimeout(100);
40
+ expect(clicked).to.be.false;
41
+ });
42
+
43
+ it('should handle button property correctly', async () => {
44
+ const el: NileLink = await fixture(html`<nile-link button></nile-link>`);
45
+ const link = el.shadowRoot!.querySelector('.link')!;
46
+ expect(link.classList.contains('link__button')).to.be.true;
47
+ });
48
+
49
+ it('should have all slots rendered successfully', async () => {
50
+ const el: NileLink = await fixture(html`<nile-link><span slot="prefix">Prefix</span><span>Label</span><span slot="suffix">Suffix</span></nile-link>`);
51
+ const prefixSlot = el.shadowRoot!.querySelector<HTMLSlotElement>('slot[name="prefix"]')!;
52
+ const labelSlot = el.shadowRoot!.querySelector<HTMLSlotElement>('slot:not([name])')!;
53
+ const suffixSlot = el.shadowRoot!.querySelector<HTMLSlotElement>('slot[name="suffix"]')!;
54
+ expect(prefixSlot.assignedNodes().length).to.equal(1);
55
+ expect(labelSlot.assignedNodes().length).to.equal(1);
56
+ expect(suffixSlot.assignedNodes().length).to.equal(1);
57
+ });
58
+
59
+
60
+ it('should emit nile-init and nile-destroy events on connected and disconnected', async () => {
61
+ const el: NileLink = document.createElement('nile-link');
62
+ let initEvent:any, destroyEvent:any;
63
+ el.addEventListener('nile-init',(e)=>initEvent=e)
64
+ el.addEventListener('nile-init',(e)=>destroyEvent=e)
65
+ document.body.appendChild(el);
66
+ await el.updateComplete
67
+ expect(initEvent).to.exist;
68
+ document.body.removeChild(el);
69
+ await el.updateComplete
70
+ expect(destroyEvent).to.exist;
71
+ });
72
+
73
+ it('should reflect properties correctly', async () => {
74
+ const el: NileLink = await fixture(html`<nile-link></nile-link>`);
75
+ el.disabled = true;
76
+ await el.updateComplete;
77
+ expect(el.hasAttribute('disabled')).to.be.true;
78
+
79
+ el.disabled = false;
80
+ await el.updateComplete;
81
+ expect(el.hasAttribute('disabled')).to.be.false;
82
+ });
83
+ })
@@ -0,0 +1 @@
1
+ export { NileList } from './nile-list';
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Copyright Aquera Inc 2023
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { css } from 'lit-element';
9
+
10
+ /**
11
+ * List CSS
12
+ */
13
+ export const styles = css`
14
+ :host {
15
+ display: flex;
16
+ flex-direction: column;
17
+ gap: 9px;
18
+ padding: 16px;
19
+ }
20
+ `;
21
+
22
+ export default [styles];
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Copyright Aquera Inc 2023
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import {
9
+ LitElement,
10
+ html,
11
+ property,
12
+ CSSResultArray,
13
+ TemplateResult,
14
+ } from 'lit-element';
15
+ import { customElement } from 'lit/decorators.js';
16
+ import { styles } from './nile-list.css';
17
+ import NileElement from '../internal/nile-element';
18
+
19
+ /**
20
+ * Nile list component.
21
+ *
22
+ * @tag nile-list
23
+ *
24
+ */
25
+ @customElement('nile-list')
26
+ export class NileList extends NileElement {
27
+ /**
28
+ * The styles for nile-list
29
+ * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
30
+ */
31
+ public static get styles(): CSSResultArray {
32
+ return [styles];
33
+ }
34
+
35
+ /* #endregion */
36
+
37
+ /* #region Methods */
38
+
39
+ /**
40
+ * Render method
41
+ * @slot This is a slot test
42
+ */
43
+
44
+ handleListItemClick(e: any) {
45
+ const listTextValue = e.target.innerText;
46
+ this.emit('nile-list-click', { value: listTextValue });
47
+ }
48
+
49
+ public render(): TemplateResult {
50
+ return html`
51
+ <slot @nile-list-item-click="${this.handleListItemClick}"> </slot>
52
+ `;
53
+ }
54
+
55
+ /* #endregion */
56
+ }
57
+
58
+ export default NileList;
59
+
60
+ declare global {
61
+ interface HTMLElementTagNameMap {
62
+ 'nile-list': NileList;
63
+ }
64
+ }
@@ -0,0 +1 @@
1
+ export { NileListItem } from './nile-list-item';
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Copyright Aquera Inc 2023
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { css } from 'lit-element';
9
+
10
+ /**
11
+ * ListItem CSS
12
+ */
13
+ export const styles = css`
14
+ :host {
15
+ display: flex;
16
+ padding: 12px 16px;
17
+ flex-direction: row;
18
+ align-items: flex-start;
19
+ justify-content: start;
20
+ position: relative;
21
+ height: 100%;
22
+ }
23
+
24
+ :host(:hover) {
25
+ background-color: #f0f0f0; /* Change background color on hover */
26
+ }
27
+
28
+ .preffix__icon {
29
+ display: inline-block;
30
+ margin-right: 12px;
31
+ }
32
+
33
+ .list__item {
34
+ cursor: pointer;
35
+ height: 100%;
36
+ display: block;
37
+ font-size: 16px;
38
+ }
39
+
40
+ .content__wrapper {
41
+ display: flex;
42
+ flex-direction: column;
43
+ gap: 3px;
44
+ height: 100%;
45
+ box-sizing: border-box;
46
+ }
47
+
48
+ .heading {
49
+ display: inline-block;
50
+ font-size: 18px;
51
+ font-weight: 600;
52
+ }
53
+
54
+ .subheading {
55
+ display: inline-block;
56
+ font-size: 12px;
57
+ font-weight: 300;
58
+ }
59
+
60
+ .list-item__suffix {
61
+ display: inline-block;
62
+ position: absolute;
63
+ right: 16px;
64
+ cursor: pointer;
65
+ }
66
+ `;
67
+
68
+ export default [styles];
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Copyright Aquera Inc 2023
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import {
9
+ LitElement,
10
+ html,
11
+ property,
12
+ CSSResultArray,
13
+ TemplateResult,
14
+ } from 'lit-element';
15
+ import { customElement } from 'lit/decorators.js';
16
+ import { styles } from './nile-list-item.css';
17
+ import NileElement from '../internal/nile-element';
18
+ import { HasSlotController } from '../internal/slot';
19
+
20
+ /**
21
+ * Nile list-item component.
22
+ *
23
+ * @tag nile-list-item
24
+ *
25
+ */
26
+ @customElement('nile-list-item')
27
+ export class NileListItem extends NileElement {
28
+ /**
29
+ * The styles for nile-list-item
30
+ * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
31
+ */
32
+
33
+ private readonly hasSlotController = new HasSlotController(
34
+ this,
35
+ 'preffix',
36
+ 'heading',
37
+ 'subheading'
38
+ );
39
+
40
+ public static get styles(): CSSResultArray {
41
+ return [styles];
42
+ }
43
+ @property({ type: String, attribute: 'icon-name' }) iconName = '';
44
+ @property({ type: Number, attribute: 'icon-size' }) iconSize = 14;
45
+
46
+ @property({ type: String, attribute: 'heading' }) heading = '';
47
+ @property({ type: String, attribute: 'sub-heading' }) subHeading = '';
48
+
49
+ /* #endregion */
50
+
51
+ /* #region Methods */
52
+
53
+ /**
54
+ * Render method
55
+ * @slot This is a slot test
56
+ */
57
+ handleClick(e: any) {
58
+ this.emit('nile-list-item-click', {
59
+ heading: this.heading,
60
+ subheading: this.subHeading,
61
+ });
62
+ }
63
+
64
+ public render(): TemplateResult {
65
+ return html`
66
+ ${this.iconName || this.hasSlotController.test('preffix')
67
+ ? html` <slot name="preffix" part="preffix" class="preffix__icon">
68
+ <nile-icon
69
+ name="${this.iconName}"
70
+ size="${this.iconSize}"
71
+ ></nile-icon>
72
+ </slot>`
73
+ : ``}
74
+
75
+ <div class="content__wrapper" part="content__wrapper">
76
+ ${this.heading || this.hasSlotController.test('heading')
77
+ ? html` <slot class="heading" part="heading" name="heading"
78
+ >${this.heading}</slot
79
+ >`
80
+ : ``}
81
+ ${this.subHeading || this.hasSlotController.test('subheading')
82
+ ? html` <slot class="subheading" part="subheading" name="subheading"
83
+ >${this.subHeading}</slot
84
+ >`
85
+ : `
86
+ `}
87
+ </div>
88
+
89
+ <slot @click="${this.handleClick}" class="list__item" part="base"> </slot>
90
+ <slot name="suffix" part="suffix" class="list-item__suffix">
91
+ </slot>
92
+ `;
93
+ }
94
+
95
+ /* #endregion */
96
+ }
97
+
98
+ export default NileListItem;
99
+
100
+ declare global {
101
+ interface HTMLElementTagNameMap {
102
+ 'nile-list-item': NileListItem;
103
+ }
104
+ }
@@ -0,0 +1,45 @@
1
+ import { fixture, expect } from '@open-wc/testing';
2
+ import { html } from 'lit/static-html.js';
3
+ import './nile-loader';
4
+ import { NileLoader } from './nile-loader';
5
+
6
+ describe('NileLoader', () => {
7
+ it('should default to size "lg" if no size is provided', async () => {
8
+ const el: NileLoader = await fixture(html`<nile-loader></nile-loader>`);
9
+ expect(el.size).to.equal('lg');
10
+ });
11
+
12
+ it('should apply size classes correctly', async () => {
13
+ const sizes:Array<'sm'|'md'|'lg'>=['sm','md','lg']
14
+ await sizes.forEach(async size=>{
15
+ const el: NileLoader = await fixture(html`<nile-loader size="${size}"></nile-loader>`);
16
+ const loaderContainer = el.shadowRoot!.querySelector('.loader__container')!;
17
+ expect(loaderContainer.classList.contains(`loader__container--${size}`)).to.be.true;
18
+ })
19
+ });
20
+
21
+ it('should have a default variant of "v1"', async () => {
22
+ const el: NileLoader = await fixture(html`<nile-loader></nile-loader>`);
23
+ const variantV1 = el.shadowRoot!.querySelector('.nile-loader__v1');
24
+ expect(variantV1).to.exist;
25
+ });
26
+
27
+ it('should render the correct variant', async () => {
28
+ const el: NileLoader = await fixture(html`<nile-loader variant="v2"></nile-loader>`);
29
+ const variantV2 = el.shadowRoot!.querySelector('.nile-loader__v2');
30
+ expect(variantV2).to.exist;
31
+ });
32
+
33
+ it('should display label if provided', async () => {
34
+ const el: NileLoader = await fixture(html`<nile-loader label="Loading..."></nile-loader>`);
35
+ const label = el.shadowRoot!.querySelector('.loader__label');
36
+ expect(label).to.exist;
37
+ expect(label?.textContent).to.equal('Loading...');
38
+ });
39
+
40
+ it('should handle margin property', async () => {
41
+ const el: NileLoader = await fixture(html`<nile-loader margin="10px"></nile-loader>`);
42
+ const loaderDiv = el.shadowRoot!.querySelector('.nile-loader__v1');
43
+ expect(loaderDiv?.getAttribute('style')).to.contain('margin: 10px');
44
+ });
45
+ })
@@ -17,14 +17,28 @@ export const styles = css`
17
17
  background: hsl(0, 0%, 100%);
18
18
  border: solid 1px hsl(240 5.9% 90%);
19
19
  border-radius: 6px;
20
- overflow: auto;
21
- overscroll-behavior: none;
22
- box-shadow: 0px 20px 24px -4px rgba(16, 24, 40, 0.08), 0px 8px 8px -4px rgba(16, 24, 40, 0.03);
20
+ overflow: hidden;
21
+ height: 100%;
22
+ box-shadow: 0px 20px 24px -4px rgba(16, 24, 40, 0.08),
23
+ 0px 8px 8px -4px rgba(16, 24, 40, 0.03);
24
+ /* overscroll-behavior: none; */
25
+ /* -ms-overflow-style: none; */
26
+ /* scrollbar-width: none; */
23
27
  }
24
-
28
+
25
29
  .search__wrapper {
26
- box-sizing:border-box;
30
+ box-sizing: border-box;
27
31
  padding: 12px 6px;
32
+ position: sticky;
33
+ z-index: 999;
34
+ top: 0px;
35
+ background: hsl(0, 0%, 100%);
36
+ height: 64px;
37
+ }
38
+
39
+ .menu__items-wrapper {
40
+ overflow: auto;
41
+ max-height: calc(100vh - 64px);
28
42
  }
29
43
 
30
44
  ::slotted(nile-divider) {
@@ -26,6 +26,8 @@ export class NileMenu extends NileElement {
26
26
  @state() searchWidth: number = 0;
27
27
 
28
28
  @property({ type: Boolean, reflect: true }) searchEnabled = false;
29
+ @property({ type: Boolean, reflect: true }) customSearch = false;
30
+
29
31
  @property({ type: Boolean }) showNoResults: boolean = false;
30
32
 
31
33
  @property({ type: String }) noResultsMessage: string = 'No results found';
@@ -166,6 +168,12 @@ export class NileMenu extends NileElement {
166
168
 
167
169
  private handleSearchChange(e: any) {
168
170
  let items = this.getAllItems();
171
+ let searchValue = e.target.value;
172
+ if (this.customSearch) {
173
+ this.emit('nile-search-value', { value: searchValue });
174
+ return;
175
+ }
176
+
169
177
  let counter = 0;
170
178
  items.map(curr_item => {
171
179
  this.searchWidth = Math.max(this.searchWidth, curr_item.offsetWidth);
@@ -183,34 +191,37 @@ export class NileMenu extends NileElement {
183
191
 
184
192
  render() {
185
193
  return html`
186
- <div>
187
- ${this.searchEnabled
188
- ? html`<div class="search__wrapper" part="search__wrapper">
189
- <nile-input
190
- size="medium"
191
- style=${this.searchWidth
192
- ? `width: ${this.searchWidth}px;`
193
- : 'width: 100%;'}
194
- .value=${this.searchValue}
195
- placeholder="Search..."
196
- @nile-input=${this.handleSearchChange}
197
- part="menu__input"
198
- >
199
- <nile-icon name="search" slot="suffix"> </nile-icon>
200
- </nile-input>
201
- </div>`
202
- : html``}
194
+ ${this.searchEnabled
195
+ ? html`<div class="search__wrapper" part="search__wrapper">
196
+ <nile-input
197
+ size="medium"
198
+ style=${this.searchWidth
199
+ ? `width: ${this.searchWidth}px;`
200
+ : 'width: 100%;'}
201
+ .value=${this.searchValue}
202
+ placeholder="Search..."
203
+ @nile-input=${this.handleSearchChange}
204
+ part="menu__input"
205
+ clearable
206
+ >
207
+ <nile-icon name="search" slot="suffix"> </nile-icon>
208
+ </nile-input>
209
+ </div>`
210
+ : html``}
211
+ <div part="menu__items-wrapper" class="menu__items-wrapper">
203
212
  ${this.showNoResults
204
213
  ? html` <nile-menu-item>${this.noResultsMessage}</nile-menu-item> `
205
214
  : ''}
206
215
 
207
216
  <slot
208
217
  name="menu__header"
218
+ part="menu__header"
209
219
  @click=${(e: Event) => {
210
220
  e.stopPropagation();
211
221
  }}
212
222
  ></slot>
213
223
  <slot
224
+ class="menu__item-wrapper"
214
225
  @slotchange=${this.handleSlotChange}
215
226
  @click=${this.handleClick}
216
227
  @keydown=${this.handleKeyDown}
@@ -27,7 +27,6 @@ export const styles = css`
27
27
 
28
28
  :host {
29
29
  display: block;
30
- padding:1px 6px;
31
30
  }
32
31
 
33
32
  :host([inert]) {
@@ -61,6 +60,7 @@ export const styles = css`
61
60
  flex: 1 1 auto;
62
61
  margin: auto 0;
63
62
  display: inline-flex;
63
+ padding: 0 16px;
64
64
  }
65
65
 
66
66
  .menu-item .menu-item__prefix {
@@ -160,20 +160,19 @@ export class NileMenuItem extends NileElement {
160
160
  'menu-item--has-submenu': this.hasSubMenu, // reserved for future use
161
161
  })}
162
162
  >
163
- <span part="checked-icon" class="menu-item__check">
164
- <nile-icon
165
- name="tick"
166
- library="system"
167
- aria-hidden="true"
168
- ></nile-icon>
169
- </span>
170
-
171
- <slot
172
- name="prefix"
173
- part="prefix"
174
- class="menu-item__prefix"
175
-
176
- ></slot>
163
+ ${this.checked
164
+ ? html`
165
+ <span part="checked-icon" class="menu-item__check">
166
+ <nile-icon
167
+ name="tick"
168
+ library="system"
169
+ aria-hidden="true"
170
+ ></nile-icon>
171
+ </span>
172
+ `
173
+ : ``}
174
+
175
+ <slot name="prefix" part="prefix" class="menu-item__prefix"></slot>
177
176
 
178
177
  <slot
179
178
  part="label"
@@ -183,13 +182,15 @@ export class NileMenuItem extends NileElement {
183
182
 
184
183
  <slot name="suffix" part="suffix" class="menu-item__suffix"></slot>
185
184
 
186
- <span part="submenu-icon" class="menu-item__chevron">
187
- <nile-icon
188
- name="arrowright"
189
- library="system"
190
- aria-hidden="true"
191
- ></nile-icon>
192
- </span>
185
+ ${this.hasSubMenu
186
+ ? html` <span part="submenu-icon" class="menu-item__chevron">
187
+ <nile-icon
188
+ name="arrowright"
189
+ library="system"
190
+ aria-hidden="true"
191
+ ></nile-icon>
192
+ </span>`
193
+ : ``}
193
194
  </div>
194
195
  `;
195
196
  }
@@ -17,13 +17,12 @@ export const styles = css`
17
17
 
18
18
  .popover__title {
19
19
  display: block;
20
- color: var(--Dark-Normal, var(--Color-Text-Default, #000));
21
- font-feature-settings: 'clig' off, 'liga' off;
20
+ color: #000;
22
21
  font-family: var(--nile-font-family-serif);
23
22
  font-size: var(--nile-type-scale-4);
24
23
  font-style: normal;
25
24
  font-weight: 500;
26
- line-height: var(--nile-type-scale-4); /* 100% */
25
+ line-height: var(--nile-type-scale-4);
27
26
  letter-spacing: 0.2px;
28
27
  }
29
28
 
@@ -35,7 +34,10 @@ export const styles = css`
35
34
  gap: var(--nile-type-scale-4);
36
35
  padding: var(--nile-type-scale-4);
37
36
  border-radius: var(--nile-radius-base-standard);
38
- background-color:var(--nile-colors-white-base);
37
+ background-color: var(--nile-colors-white-base);
38
+ border: solid 1px hsl(240 5.9% 90%);
39
+ box-shadow: 0px 20px 24px -4px rgba(16, 24, 40, 0.08),
40
+ 0px 8px 8px -4px rgba(16, 24, 40, 0.03);
39
41
  }
40
42
 
41
43
  .popover__action {