@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,86 @@
1
+ import { fixture, html, expect, oneEvent } from '@open-wc/testing';
2
+ import './nile-popover';
3
+ import { NilePopover } from './nile-popover';
4
+ describe('NilePopover', () => {
5
+ it('renders correctly', async () => {
6
+ const el = await fixture(html`
7
+ <nile-popover title="Test Popover">
8
+ <button slot="anchor">Click me</button>
9
+ <div>Popover Content</div>
10
+ </nile-popover>
11
+ `);
12
+ expect(el).shadowDom.to.equalSnapshot();
13
+ });
14
+
15
+ it('has default properties', async () => {
16
+ const el = await fixture<NilePopover>(html`<nile-popover></nile-popover>`);
17
+ expect(el.placement).to.equal('top');
18
+ expect(el.distance).to.equal(18);
19
+ expect(el.title).to.equal('');
20
+ expect(el.arrowPlacement).to.equal('anchor');
21
+ expect(el.hoist).to.be.false;
22
+ expect(el.flip).to.be.false;
23
+ });
24
+
25
+ it('displays title when popover is shown', async () => {
26
+ const el = await fixture<NilePopover>(html`
27
+ <nile-popover title="Test Popover">
28
+ <button slot="anchor">Click me</button>
29
+ <div>Popover Content</div>
30
+ </nile-popover>
31
+ `);
32
+
33
+ const button = el.querySelector('button');
34
+ button!.click();
35
+ await el.updateComplete;
36
+ const popoverBox = el.shadowRoot!.querySelector('.popover__box');
37
+ expect(popoverBox).to.exist;
38
+
39
+ const titleSlot = el.shadowRoot!.querySelector('slot[name="title"]');
40
+ expect(titleSlot).to.exist;
41
+ expect(titleSlot!.textContent).to.equal('Test Popover');
42
+ });
43
+
44
+ it('toggles isShow state on anchor click', async () => {
45
+ const el = await fixture<NilePopover>(html`
46
+ <nile-popover title="Test Popover">
47
+ <button slot="anchor">Click me</button>
48
+ <div>Popover Content</div>
49
+ </nile-popover>
50
+ `);
51
+
52
+ const button = el.querySelector('button');
53
+ button!.click();
54
+ await el.updateComplete;
55
+ const popOverBox = el.shadowRoot!.querySelector('div[part="popover"]');
56
+ expect(popOverBox).to.exist;
57
+
58
+ button!.click();
59
+ await el.updateComplete;
60
+
61
+ const afterPopOverBox = el.shadowRoot!.querySelector('div[part="popover"]');
62
+ expect(afterPopOverBox).to.null;
63
+ });
64
+
65
+ it('hides popover on document click', async () => {
66
+ const el = await fixture<NilePopover>(html`
67
+ <nile-popover title="Test Popover">
68
+ <button slot="anchor">Click me</button>
69
+ <div>Popover Content</div>
70
+ </nile-popover>
71
+ `);
72
+
73
+ const button = el.querySelector('button');
74
+ button!.click();
75
+ await el.updateComplete;
76
+
77
+ let popoverBox = el.shadowRoot!.querySelector('.popover__box');
78
+ expect(popoverBox).to.exist;
79
+
80
+ document.body.click();
81
+ await el.updateComplete;
82
+
83
+ popoverBox = el.shadowRoot!.querySelector('.popover__box');
84
+ expect(popoverBox).to.not.exist;
85
+ });
86
+ });
@@ -54,6 +54,8 @@ export class NilePopover extends LitElement {
54
54
  /** The distance in pixels from which to offset the popover away from its target. */
55
55
  @property({ type: Number }) distance = 18;
56
56
 
57
+ @property({ type: Boolean, attribute: 'arrow' }) arrow = true;
58
+
57
59
  /** Gives the title to the popover */
58
60
  @property({ type: String }) title = '';
59
61
 
@@ -65,7 +67,6 @@ export class NilePopover extends LitElement {
65
67
  | 'center'
66
68
  | 'anchor' = 'anchor';
67
69
 
68
-
69
70
  /**
70
71
  * Enable this option to prevent the panel from being clipped when the component is placed inside a container with
71
72
  * `overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.
@@ -74,7 +75,6 @@ export class NilePopover extends LitElement {
74
75
 
75
76
  @property({ type: Boolean }) flip = false;
76
77
 
77
-
78
78
  /* #endregion */
79
79
 
80
80
  /* #region Methods */
@@ -97,10 +97,10 @@ export class NilePopover extends LitElement {
97
97
  private handleClick = () => {
98
98
  this.isShow = !this.isShow;
99
99
  const allPopovers = document.querySelectorAll('nile-popover');
100
-
100
+
101
101
  allPopovers.forEach(popover => {
102
102
  if (popover !== this) {
103
- popover.isShow=false;
103
+ popover.isShow = false;
104
104
  }
105
105
  });
106
106
  };
@@ -115,7 +115,7 @@ export class NilePopover extends LitElement {
115
115
  return html`
116
116
  <nile-popup
117
117
  active
118
- ?arrow="${this.title ? this.isShow : false}"
118
+ .arrow="${this.arrow && this.isShow}"
119
119
  distance="${this.distance}"
120
120
  placement="${this.placement}"
121
121
  @click=${(e: Event) => e.stopPropagation()}
@@ -130,11 +130,8 @@ export class NilePopover extends LitElement {
130
130
  aria-describedby="tooltip"
131
131
  @click=${this.handleClick}
132
132
  ></slot>
133
- ${this.title && this.isShow
134
- ? html` <div
135
- part="popover"
136
- class="popover__box"
137
- >
133
+ ${this.isShow
134
+ ? html` <div part="popover" class="popover__box">
138
135
  <slot name="title" class="popover__title">${this.title}</slot>
139
136
  <slot part="base"></slot>
140
137
  <slot name="action" class="popover__action"> </slot>
@@ -1,19 +1,17 @@
1
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
- */
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
7
 
8
- import {css} from 'lit-element';
8
+ import { css } from 'lit-element';
9
9
 
10
10
  /**
11
11
  * Popup CSS
12
12
  */
13
13
  export const styles = css`
14
-
15
-
16
- :host {
14
+ :host {
17
15
  --arrow-color: hsl(240 4.8% 95.9%);
18
16
  --arrow-size: 6px;
19
17
 
@@ -22,7 +20,9 @@ export const styles = css`
22
20
  * 0.7071 is derived from sin(45), which is the diagonal size of the arrow's container after rotating.
23
21
  */
24
22
  --arrow-size-diagonal: calc(var(--arrow-size) * 0.7071);
25
- --arrow-padding-offset: calc(var(--arrow-size-diagonal) - var(--arrow-size));
23
+ --arrow-padding-offset: calc(
24
+ var(--arrow-size-diagonal) - var(--arrow-size)
25
+ );
26
26
 
27
27
  display: contents;
28
28
  }
@@ -50,6 +50,10 @@ export const styles = css`
50
50
  rotate: 45deg;
51
51
  background: var(--arrow-color);
52
52
  z-index: -1;
53
+ /* Added border and box-shadow to arrow */
54
+ border: solid 1px hsl(240 5.9% 90%);
55
+ box-shadow: 0px 20px 24px -4px rgba(16, 24, 40, 0.08),
56
+ 0px 8px 8px -4px rgba(16, 24, 40, 0.03);
53
57
  }
54
58
  `;
55
59
 
@@ -0,0 +1,55 @@
1
+ import { fixture, html, expect } from '@open-wc/testing';
2
+ import './nile-progress-bar'; // Make sure to import the component to be tested
3
+ import { NileProgressBar } from './nile-progress-bar';
4
+
5
+ describe('NileProgressBar', () => {
6
+ it('should have a default value of 0', async () => {
7
+ const el = await fixture<NileProgressBar>(html`<nile-progress-bar></nile-progress-bar>`);
8
+ expect(el.value).to.equal(0);
9
+ const span = el.shadowRoot!.querySelector('span') ?? {} as HTMLSpanElement;
10
+ expect(span.style.width).to.equal('0%');
11
+ });
12
+
13
+ it('should set and display the provided value', async () => {
14
+ const el = await fixture<NileProgressBar>(html`<nile-progress-bar value="50"></nile-progress-bar>`);
15
+ expect(el.value).to.equal(50);
16
+ const span = el.shadowRoot!.querySelector('span') ?? {} as HTMLSpanElement;
17
+ expect(span.style.width).to.equal('50%');
18
+ });
19
+
20
+ it('should handle boundary value 0%', async () => {
21
+ const el = await fixture<NileProgressBar>(html`<nile-progress-bar value="0"></nile-progress-bar>`);
22
+ expect(el.value).to.equal(0);
23
+ const span = el.shadowRoot!.querySelector('span') ?? {} as HTMLSpanElement;
24
+ expect(span.style.width).to.equal('0%');
25
+ });
26
+
27
+ it('should handle boundary value 100%', async () => {
28
+ const el = await fixture<NileProgressBar>(html`<nile-progress-bar value="100"></nile-progress-bar>`);
29
+ expect(el.value).to.equal(100);
30
+ const span = el.shadowRoot!.querySelector('span') ?? {} as HTMLSpanElement;
31
+ expect(span.style.width).to.equal('100%');
32
+ });
33
+
34
+ it('should handle values greater than 100', async () => {
35
+ const el = await fixture<NileProgressBar>(html`<nile-progress-bar value="150"></nile-progress-bar>`);
36
+ expect(el.value).to.equal(150);
37
+ const span = el.shadowRoot!.querySelector('span') ?? {} as HTMLSpanElement;
38
+ expect(span.style.width).to.equal('150%');
39
+ });
40
+
41
+ it('should handle negative values', async () => {
42
+ const el = await fixture<NileProgressBar>(html`<nile-progress-bar value="-50"></nile-progress-bar>`);
43
+ expect(el.value).to.equal(-50);
44
+ const span = el.shadowRoot!.querySelector('span') ?? {} as HTMLSpanElement;
45
+ expect(span.style.width).to.equal('');
46
+ });
47
+
48
+ it('should update the value dynamically', async () => {
49
+ const el = await fixture<NileProgressBar>(html`<nile-progress-bar value="20"></nile-progress-bar>`);
50
+ el.value = 80;
51
+ await el.updateComplete;
52
+ const span = el.shadowRoot!.querySelector('span') ?? {} as HTMLSpanElement;
53
+ expect(span.style.width).to.equal('80%');
54
+ });
55
+ });
@@ -0,0 +1,81 @@
1
+ import { html, fixture, expect, elementUpdated } from '@open-wc/testing';
2
+ import './nile-radio';
3
+ import { NileRadio } from './nile-radio';
4
+
5
+ describe('NileRadio', () => {
6
+ it('should have the correct default properties', async () => {
7
+ const el = await fixture<NileRadio>(html`<nile-radio></nile-radio>`);
8
+ expect(el.checked).to.be.false;
9
+ expect(el.disabled).to.be.false;
10
+ expect(el.size).to.equal('medium');
11
+ });
12
+
13
+ it('should reflect the disabled attribute', async () => {
14
+ const el = await fixture<NileRadio>(html`<nile-radio disabled></nile-radio>`);
15
+ expect(el.disabled).to.be.true;
16
+ expect(el.hasAttribute('aria-disabled')).to.be.true;
17
+ });
18
+
19
+ it('should update aria-checked when checked changes', async () => {
20
+ const el = await fixture<NileRadio>(html`<nile-radio></nile-radio>`);
21
+ el.checked = true;
22
+ await el.updateComplete;
23
+ expect(el.getAttribute('aria-checked')).to.equal('true');
24
+ });
25
+
26
+ it('should toggle checked state on click when not disabled', async () => {
27
+ const el = await fixture<NileRadio>(html`<nile-radio></nile-radio>`);
28
+ el.click();
29
+ await elementUpdated(el);
30
+ expect(el.checked).to.be.true;
31
+ });
32
+
33
+ it('should not toggle checked state on click when disabled', async () => {
34
+ const el = await fixture<NileRadio>(html`<nile-radio disabled></nile-radio>`);
35
+ el.click();
36
+ await elementUpdated(el);
37
+ expect(el.checked).to.be.false;
38
+ });
39
+
40
+ it('should emit nile-blur event on blur', async () => {
41
+ const el = await fixture<NileRadio>(html`<nile-radio></nile-radio>`);
42
+ const blurEvent = new Promise(resolve => el.addEventListener('nile-blur', resolve));
43
+ el.dispatchEvent(new Event('blur'));
44
+ const event = await blurEvent;
45
+ expect(event).to.exist;
46
+ });
47
+
48
+ it('should emit nile-focus event on focus', async () => {
49
+ const el = await fixture<NileRadio>(html`<nile-radio></nile-radio>`);
50
+ const focusEvent = new Promise(resolve => el.addEventListener('nile-focus', resolve));
51
+ el.dispatchEvent(new Event('focus'));
52
+ const event = await focusEvent;
53
+ expect(event).to.exist;
54
+ });
55
+
56
+ it('should apply the correct classes based on state', async () => {
57
+ const el = await fixture<NileRadio>(html`<nile-radio></nile-radio>`);
58
+ el.checked = true;
59
+ el.disabled = true;
60
+ el.size = 'medium';
61
+ await el.updateComplete;
62
+ const base = el.shadowRoot!.querySelector('[part="base"]');
63
+ expect(base!.classList.contains('radio--checked')).to.be.true;
64
+ expect(base!.classList.contains('radio--disabled')).to.be.true;
65
+ expect(base!.classList.contains('radio--medium')).to.be.true;
66
+ });
67
+
68
+ it('should update aria-disabled when disabled changes', async () => {
69
+ const el = await fixture<NileRadio>(html`<nile-radio></nile-radio>`);
70
+ el.disabled = true;
71
+ await elementUpdated(el);
72
+ expect(el.getAttribute('aria-disabled')).to.equal('true');
73
+ });
74
+
75
+ it('should set initial attributes correctly', async () => {
76
+ const el = await fixture<NileRadio>(html`<nile-radio></nile-radio>`);
77
+ expect(el.getAttribute('role')).to.equal('radio');
78
+ expect(el.getAttribute('tabindex')).to.equal('-1');
79
+ expect(el.getAttribute('aria-disabled')).to.equal('false');
80
+ });
81
+ });
@@ -149,6 +149,8 @@ export class NileSelect extends NileElement implements NileFormControl {
149
149
 
150
150
  @property({ type: Boolean, reflect: true }) searchEnabled = false;
151
151
 
152
+ @property({attribute:'internal-search-placeholder'}) internalSearchPlaceHolder = 'Search...';
153
+
152
154
  @property({ type: Boolean, reflect: true }) blockValueChange = false;
153
155
 
154
156
  @property({ type: Boolean, reflect: true }) disableLocalSearch = false;
@@ -1248,7 +1250,7 @@ export class NileSelect extends NileElement implements NileFormControl {
1248
1250
  size="small"
1249
1251
  clearable
1250
1252
  .value=${this.searchValue}
1251
- placeholder="Search..."
1253
+ placeholder="${this.internalSearchPlaceHolder}"
1252
1254
  @nile-input=${this.handleSearchChange}
1253
1255
  @nile-focus=${this.handleSearchFocus}
1254
1256
  @nile-change="${this.onInputChange}"
@@ -0,0 +1,61 @@
1
+ import { fixture, expect } from '@open-wc/testing';
2
+ import { html } from 'lit/static-html.js';
3
+ import './nile-slide-toggle';
4
+ import { NileSlideToggle } from './nile-slide-toggle';
5
+
6
+ describe('NileSlideToggle', () => {
7
+ it('should default to unchecked', async () => {
8
+ const el: NileSlideToggle = await fixture(html`<nile-slide-toggle></nile-slide-toggle>`);
9
+ expect(el.isChecked).to.be.false;
10
+ });
11
+
12
+ it('should toggle isChecked property when clicked', async () => {
13
+ const el: NileSlideToggle = await fixture(html`<nile-slide-toggle></nile-slide-toggle>`);
14
+ const input = el.shadowRoot!.querySelector('input')!;
15
+ input.click();
16
+ expect(el.isChecked).to.be.true;
17
+ input.click();
18
+ expect(el.isChecked).to.be.false;
19
+ });
20
+
21
+ it('should display the label and sublabel', async () => {
22
+ const el: NileSlideToggle = await fixture(html`<nile-slide-toggle label="Test Label" sublabel="Test Sublabel"></nile-slide-toggle>`);
23
+ const label = el.shadowRoot!.querySelector('.nile-slide-toggle__label span')!;
24
+ const sublabel = el.shadowRoot!.querySelector('.nile-slide-toggle__sublabel')!;
25
+ expect(label.textContent).to.equal('Test Label');
26
+ expect(sublabel.textContent).to.equal('Test Sublabel');
27
+ });
28
+
29
+ it('should apply disabled class when disabled', async () => {
30
+ const el: NileSlideToggle = await fixture(html`<nile-slide-toggle disabled></nile-slide-toggle>`);
31
+ const toggleContainer = el.shadowRoot!.querySelector('.nile-slide-toggle')!;
32
+ expect(toggleContainer.classList.contains('nile-slide--disabled')).to.be.true;
33
+ });
34
+
35
+ it('should emit a change event with correct detail when toggled', async () => {
36
+ const el: NileSlideToggle = await fixture(html`<nile-slide-toggle></nile-slide-toggle>`);
37
+ let changeDetail = null;
38
+ el.addEventListener('change', (e: Event) => {
39
+ changeDetail = (e as CustomEvent).detail;
40
+ });
41
+ const input = el.shadowRoot!.querySelector('input')!;
42
+ input.click();
43
+ expect(changeDetail).to.deep.equal({ checked: true });
44
+ input.click();
45
+ expect(changeDetail).to.deep.equal({ checked: false });
46
+ });
47
+
48
+ it('should show help text when provided', async () => {
49
+ const el: NileSlideToggle = await fixture(html`<nile-slide-toggle help-text="Help text here"></nile-slide-toggle>`);
50
+ const helpText = el.shadowRoot!.querySelector('nile-form-help-text');
51
+ expect(helpText).to.exist;
52
+ expect(helpText?.textContent).to.equal('Help text here');
53
+ });
54
+
55
+ it('should show error message when provided', async () => {
56
+ const el: NileSlideToggle = await fixture(html`<nile-slide-toggle error-message="Error message here"></nile-slide-toggle>`);
57
+ const errorMessage = el.shadowRoot!.querySelector('nile-form-error-message');
58
+ expect(errorMessage).to.exist;
59
+ expect(errorMessage?.textContent).to.equal('Error message here');
60
+ });
61
+ })
@@ -114,11 +114,11 @@ export const styles = css`
114
114
  position: relative;
115
115
  flex-direction: row;
116
116
  border-bottom: solid var(--track-width)
117
- var(--nile-colors-gray-light-mode-200);
117
+ var(--nile-colors-gray-light-mode-200,#eaecf0);
118
118
  }
119
119
 
120
120
  .tab-group--top .tab-group__indicator {
121
- bottom: 2px;
121
+ bottom: -2px;
122
122
  border-bottom: 2px solid var(--nile-colors-primary-600);
123
123
  }
124
124
 
@@ -299,7 +299,7 @@ export class NileTabGroup extends NileElement {
299
299
  private repositionIndicator() {
300
300
  const currentTab = this.getActiveTab();
301
301
 
302
- if (!currentTab) {
302
+ if (!currentTab || !this.indicator) {
303
303
  return;
304
304
  }
305
305
 
@@ -363,6 +363,7 @@ export class NileTabGroup extends NileElement {
363
363
 
364
364
  @watch('placement', { waitUntilFirstUpdate: true })
365
365
  syncIndicator() {
366
+ if(!this.indicator) return;
366
367
  const tab = this.getActiveTab();
367
368
 
368
369
  if (tab) {
@@ -29,7 +29,8 @@ export const styles = css`
29
29
  font-size: var(--nile-type-scale-3);
30
30
  font-style: normal;
31
31
  font-weight: var(--nile-font-weight-regular);
32
- line-height: var(--nile-type-scale-6);
32
+ /* line-height: var(--nile-type-scale-6); */
33
+ line-height: normal;
33
34
  letter-spacing: 0.2px;
34
35
  }
35
36
  `;
@@ -31,11 +31,8 @@ export const styles = css`
31
31
  font-size: var(--nile-type-scale-2);
32
32
  font-weight: 500;
33
33
  font-style: normal;
34
- line-height: var(--nile-type-scale-5);
35
- }
36
-
37
- slot {
38
- cursor: pointer;
34
+ /* line-height: var(--nile-type-scale-5); */
35
+ line-height: normal;
39
36
  }
40
37
 
41
38
  nile-icon {
@@ -0,0 +1,102 @@
1
+ import { expect, fixture, html, oneEvent } from '@open-wc/testing';
2
+ import './nile-textarea.js';
3
+ import { NileTextarea } from './nile-textarea.js';
4
+
5
+ describe('<nile-textarea>', () => {
6
+ it('should render the default properties correctly', async () => {
7
+ const el = await fixture<NileTextarea>(html`<nile-textarea></nile-textarea>`);
8
+ expect(el.value).to.equal('');
9
+ expect(el.size).to.equal('medium');
10
+ expect(el.filled).to.be.false;
11
+ expect(el.disabled).to.be.false;
12
+ expect(el.readonly).to.be.false;
13
+ expect(el.required).to.be.false;
14
+ });
15
+
16
+ it('should reflect properties to attributes', async () => {
17
+ const el = await fixture<NileTextarea>(html`<nile-textarea disabled readonly required></nile-textarea>`);
18
+ expect(el.getAttribute('disabled')).to.equal('');
19
+ expect(el.getAttribute('readonly')).to.equal('');
20
+ expect(el.getAttribute('required')).to.equal('');
21
+ });
22
+
23
+ it('should emit events correctly', async () => {
24
+ const el = await fixture<NileTextarea>(html`<nile-textarea></nile-textarea>`);
25
+ const input = el.shadowRoot?.querySelector('textarea') ?? {} as HTMLTextAreaElement;
26
+
27
+ // Focus event
28
+ setTimeout(() => input.dispatchEvent(new Event('focus')));
29
+ const { detail: focusDetail } = await oneEvent(el, 'nile-focus');
30
+ expect(focusDetail.value).to.equal('');
31
+
32
+ // Input event
33
+ input.value = 'test';
34
+ setTimeout(() => input.dispatchEvent(new Event('input')));
35
+ const { detail: inputDetail } = await oneEvent(el, 'nile-input');
36
+ expect(inputDetail.value).to.equal('test');
37
+
38
+ // Change event
39
+ setTimeout(() => input.dispatchEvent(new Event('change')));
40
+ const { detail: changeDetail } = await oneEvent(el, 'nile-change');
41
+ expect(changeDetail.value).to.equal('test');
42
+
43
+ // Blur event
44
+ setTimeout(() => input.dispatchEvent(new Event('blur')));
45
+ const { detail: blurDetail } = await oneEvent(el, 'nile-blur');
46
+ expect(blurDetail.value).to.equal('test');
47
+ });
48
+
49
+ it('should update value property on input event', async () => {
50
+ const el = await fixture<NileTextarea>(html`<nile-textarea></nile-textarea>`);
51
+ const input = el.shadowRoot?.querySelector('textarea') ?? {} as HTMLTextAreaElement;
52
+
53
+ input.value = 'new value';
54
+ input.dispatchEvent(new Event('input'));
55
+ expect(el.value).to.equal('new value');
56
+ });
57
+
58
+ it('should handle the "rows" property correctly', async () => {
59
+ const el = await fixture<NileTextarea>(html`<nile-textarea rows="10"></nile-textarea>`);
60
+ const input = el.shadowRoot?.querySelector('textarea') ?? {} as HTMLTextAreaElement;
61
+ expect(input.rows).to.equal(10);
62
+ });
63
+
64
+ it('should handle the "resize" property correctly', async () => {
65
+ const el = await fixture<NileTextarea>(html`<nile-textarea resize="none"></nile-textarea>`);
66
+ const textarea = el.shadowRoot?.querySelector('.textarea') ?? {} as HTMLTextAreaElement;
67
+ expect(textarea.classList.contains('textarea--resize-none')).to.be.true;
68
+ });
69
+
70
+ it('should select all text when select() is called', async () => {
71
+ const el = await fixture<NileTextarea>(html`<nile-textarea value="test value"></nile-textarea>`);
72
+ el.select();
73
+ const input = el.shadowRoot?.querySelector('textarea') ?? {} as HTMLTextAreaElement;
74
+ expect(input.selectionStart).to.equal(0);
75
+ expect(input.selectionEnd).to.equal(el.value.length);
76
+ });
77
+
78
+ it('should set selection range correctly', async () => {
79
+ const el = await fixture<NileTextarea>(html`<nile-textarea value="test value"></nile-textarea>`);
80
+ el.setSelectionRange(0, 4);
81
+ const input = el.shadowRoot?.querySelector('textarea') ?? {} as HTMLTextAreaElement;
82
+ expect(input.selectionStart).to.equal(0);
83
+ expect(input.selectionEnd).to.equal(4);
84
+ });
85
+
86
+ it('should handle non-printable characters', async () => {
87
+ const el = await fixture<NileTextarea>(html`<nile-textarea checkNonPrintableChar></nile-textarea>`);
88
+ el.value = 'test乇乂丅尺卂'; // 乇乂丅尺卂 is a non-printable character
89
+ el.handleValueChange();
90
+ await el.updateComplete;
91
+ expect(el.hasPrintableCharacters).to.be.true;
92
+ const hasInvalidStr=String('乇乂丅尺卂').split('').some(ch=>el.markedValue.indexOf(ch)!=-1)
93
+ expect(hasInvalidStr).to.be.true
94
+ });
95
+
96
+ it('should remove non-printable characters correctly', async () => {
97
+ const el = await fixture<NileTextarea>(html`<nile-textarea></nile-textarea>`);
98
+ el.value = 'test乇乂丅尺卂'; // 乇乂丅尺卂 is a non-printable character
99
+ el.removeAllNonPrintableCharacters();
100
+ expect(el.value).to.equal('test');
101
+ });
102
+ });
@@ -0,0 +1 @@
1
+ export { NileTree } from './nile-tree';
@@ -0,0 +1,50 @@
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
+ * Tree CSS
12
+ */
13
+ export const styles = css`
14
+ :host {
15
+ box-sizing: border-box;
16
+ }
17
+
18
+ :host *,
19
+ :host *::before,
20
+ :host *::after {
21
+ box-sizing: inherit;
22
+ }
23
+
24
+ [hidden] {
25
+ display: none !important;
26
+ }
27
+
28
+ :host {
29
+ /*
30
+ * These are actually used by tree item, but we define them here so they can more easily be set and all tree items
31
+ * stay consistent.
32
+ */
33
+ --indent-guide-color: #F5F7F7;
34
+ --indent-guide-offset: 0;
35
+ --indent-guide-style: solid;
36
+ --indent-guide-width: 0;
37
+ --indent-size: 1.25rem;
38
+
39
+ display: block;
40
+ isolation: isolate;
41
+
42
+ /*
43
+ * Tree item indentation uses the "em" unit to increment its width on each level, so setting the font size to zero
44
+ * here removes the indentation for all the nodes on the first level.
45
+ */
46
+ font-size: 0;
47
+ }
48
+ `;
49
+
50
+ export default [styles];