@aquera/nile-elements 0.0.68 → 0.0.70

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 (341) hide show
  1. package/.nycrc +17 -0
  2. package/README.md +24 -0
  3. package/demo/filenames.txt +1 -1
  4. package/demo/variables.css +12 -6
  5. package/demo/variables_v2.css +9 -6
  6. package/dist/axe.min-1a358f34.cjs.js +12 -0
  7. package/dist/axe.min-1a358f34.cjs.js.map +1 -0
  8. package/dist/axe.min-c4141dd6.esm.js +12 -0
  9. package/dist/index.cjs.js +1 -1
  10. package/dist/index.esm.js +1 -1
  11. package/dist/index.iife.js +372 -206
  12. package/dist/nile-avatar/nile-avatar.cjs.js +1 -1
  13. package/dist/nile-avatar/nile-avatar.cjs.js.map +1 -1
  14. package/dist/nile-avatar/nile-avatar.css.cjs.js +1 -1
  15. package/dist/nile-avatar/nile-avatar.css.cjs.js.map +1 -1
  16. package/dist/nile-avatar/nile-avatar.css.esm.js +15 -7
  17. package/dist/nile-avatar/nile-avatar.esm.js +1 -1
  18. package/dist/nile-badge/index.cjs.js +1 -1
  19. package/dist/nile-badge/index.esm.js +1 -1
  20. package/dist/nile-badge/nile-badge.cjs.js +1 -1
  21. package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
  22. package/dist/nile-badge/nile-badge.css.cjs.js +1 -1
  23. package/dist/nile-badge/nile-badge.css.cjs.js.map +1 -1
  24. package/dist/nile-badge/nile-badge.css.esm.js +7 -5
  25. package/dist/nile-badge/nile-badge.esm.js +1 -1
  26. package/dist/nile-button/index.cjs.js +1 -1
  27. package/dist/nile-button/index.esm.js +1 -1
  28. package/dist/nile-button/nile-button.cjs.js +1 -1
  29. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  30. package/dist/nile-button/nile-button.css.cjs.js +1 -1
  31. package/dist/nile-button/nile-button.css.cjs.js.map +1 -1
  32. package/dist/nile-button/nile-button.css.esm.js +13 -23
  33. package/dist/nile-button/nile-button.esm.js +1 -1
  34. package/dist/nile-button-toggle/nile-button-toggle.css.cjs.js +1 -1
  35. package/dist/nile-button-toggle/nile-button-toggle.css.cjs.js.map +1 -1
  36. package/dist/nile-button-toggle/nile-button-toggle.css.esm.js +11 -6
  37. package/dist/nile-button-toggle-group/nile-button-toggle-group.css.cjs.js +1 -1
  38. package/dist/nile-button-toggle-group/nile-button-toggle-group.css.cjs.js.map +1 -1
  39. package/dist/nile-button-toggle-group/nile-button-toggle-group.css.esm.js +5 -4
  40. package/dist/nile-card/nile-card.cjs.js +1 -1
  41. package/dist/nile-card/nile-card.cjs.js.map +1 -1
  42. package/dist/nile-card/nile-card.css.cjs.js +1 -1
  43. package/dist/nile-card/nile-card.css.cjs.js.map +1 -1
  44. package/dist/nile-card/nile-card.css.esm.js +23 -4
  45. package/dist/nile-card/nile-card.esm.js +13 -5
  46. package/dist/nile-checkbox/nile-checkbox.cjs.js +1 -1
  47. package/dist/nile-checkbox/nile-checkbox.cjs.js.map +1 -1
  48. package/dist/nile-checkbox/nile-checkbox.css.cjs.js +1 -1
  49. package/dist/nile-checkbox/nile-checkbox.css.cjs.js.map +1 -1
  50. package/dist/nile-checkbox/nile-checkbox.css.esm.js +24 -10
  51. package/dist/nile-checkbox/nile-checkbox.esm.js +4 -4
  52. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +395 -0
  53. package/dist/nile-checkbox/nile-checkbox.test.cjs.js.map +1 -0
  54. package/dist/nile-checkbox/nile-checkbox.test.esm.js +585 -0
  55. package/dist/nile-dialog/index.cjs.js +1 -1
  56. package/dist/nile-dialog/index.esm.js +1 -1
  57. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  58. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  59. package/dist/nile-dialog/nile-dialog.esm.js +1 -1
  60. package/dist/nile-drawer/index.cjs.js +1 -1
  61. package/dist/nile-drawer/index.esm.js +1 -1
  62. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  63. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  64. package/dist/nile-drawer/nile-drawer.esm.js +1 -1
  65. package/dist/nile-empty-state/index.cjs.js +1 -1
  66. package/dist/nile-empty-state/index.esm.js +1 -1
  67. package/dist/nile-empty-state/nile-empty-state.cjs.js +1 -1
  68. package/dist/nile-empty-state/nile-empty-state.cjs.js.map +1 -1
  69. package/dist/nile-empty-state/nile-empty-state.css.cjs.js +1 -1
  70. package/dist/nile-empty-state/nile-empty-state.css.cjs.js.map +1 -1
  71. package/dist/nile-empty-state/nile-empty-state.css.esm.js +63 -22
  72. package/dist/nile-empty-state/nile-empty-state.esm.js +21 -16
  73. package/dist/nile-format-date/index.cjs.js +2 -0
  74. package/dist/nile-format-date/index.cjs.js.map +1 -0
  75. package/dist/nile-format-date/index.esm.js +1 -0
  76. package/dist/nile-format-date/nile-format-date.cjs.js +2 -0
  77. package/dist/nile-format-date/nile-format-date.cjs.js.map +1 -0
  78. package/dist/nile-format-date/nile-format-date.css.cjs.js +2 -0
  79. package/dist/nile-format-date/nile-format-date.css.cjs.js.map +1 -0
  80. package/dist/nile-format-date/nile-format-date.css.esm.js +5 -0
  81. package/dist/nile-format-date/nile-format-date.esm.js +5 -0
  82. package/dist/nile-hero/index.cjs.js +1 -1
  83. package/dist/nile-hero/index.esm.js +1 -1
  84. package/dist/nile-hero/nile-hero.cjs.js +1 -1
  85. package/dist/nile-hero/nile-hero.cjs.js.map +1 -1
  86. package/dist/nile-hero/nile-hero.css.cjs.js +1 -1
  87. package/dist/nile-hero/nile-hero.css.cjs.js.map +1 -1
  88. package/dist/nile-hero/nile-hero.css.esm.js +14 -33
  89. package/dist/nile-hero/nile-hero.esm.js +6 -9
  90. package/dist/nile-hero-header/index.cjs.js +2 -0
  91. package/dist/nile-hero-header/index.cjs.js.map +1 -0
  92. package/dist/nile-hero-header/index.esm.js +1 -0
  93. package/dist/nile-hero-header/nile-hero-header.cjs.js +2 -0
  94. package/dist/nile-hero-header/nile-hero-header.cjs.js.map +1 -0
  95. package/dist/nile-hero-header/nile-hero-header.css.cjs.js +2 -0
  96. package/dist/nile-hero-header/nile-hero-header.css.cjs.js.map +1 -0
  97. package/dist/nile-hero-header/nile-hero-header.css.esm.js +28 -0
  98. package/dist/nile-hero-header/nile-hero-header.esm.js +6 -0
  99. package/dist/nile-icon/icons/svg/data-insight.cjs.js +2 -0
  100. package/dist/nile-icon/icons/svg/data-insight.cjs.js.map +1 -0
  101. package/dist/nile-icon/icons/svg/data-insight.esm.js +1 -0
  102. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  103. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  104. package/dist/nile-icon/icons/svg/info-circle.cjs.js +2 -0
  105. package/dist/nile-icon/icons/svg/info-circle.cjs.js.map +1 -0
  106. package/dist/nile-icon/icons/svg/info-circle.esm.js +1 -0
  107. package/dist/nile-icon/icons/svg/user-01.cjs.js +2 -0
  108. package/dist/nile-icon/icons/svg/user-01.cjs.js.map +1 -0
  109. package/dist/nile-icon/icons/svg/user-01.esm.js +1 -0
  110. package/dist/nile-icon/index.cjs.js +1 -1
  111. package/dist/nile-icon/index.cjs.js.map +1 -1
  112. package/dist/nile-icon/index.esm.js +3 -2
  113. package/dist/nile-icon-button/index.cjs.js +1 -1
  114. package/dist/nile-icon-button/index.esm.js +1 -1
  115. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  116. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  117. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  118. package/dist/nile-input/index.cjs.js +1 -1
  119. package/dist/nile-input/index.esm.js +1 -1
  120. package/dist/nile-input/nile-input.cjs.js +1 -1
  121. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  122. package/dist/nile-input/nile-input.css.cjs.js +1 -1
  123. package/dist/nile-input/nile-input.css.cjs.js.map +1 -1
  124. package/dist/nile-input/nile-input.css.esm.js +7 -13
  125. package/dist/nile-input/nile-input.esm.js +1 -1
  126. package/dist/nile-menu/nile-menu.css.cjs.js +1 -1
  127. package/dist/nile-menu/nile-menu.css.cjs.js.map +1 -1
  128. package/dist/nile-menu/nile-menu.css.esm.js +2 -1
  129. package/dist/nile-menu-item/index.cjs.js +1 -1
  130. package/dist/nile-menu-item/index.esm.js +1 -1
  131. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  132. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  133. package/dist/nile-menu-item/nile-menu-item.css.cjs.js +1 -1
  134. package/dist/nile-menu-item/nile-menu-item.css.cjs.js.map +1 -1
  135. package/dist/nile-menu-item/nile-menu-item.css.esm.js +7 -4
  136. package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
  137. package/dist/nile-option/index.cjs.js +1 -1
  138. package/dist/nile-option/index.esm.js +1 -1
  139. package/dist/nile-option/nile-option.cjs.js +1 -1
  140. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  141. package/dist/nile-option/nile-option.esm.js +1 -1
  142. package/dist/nile-select/index.cjs.js +1 -1
  143. package/dist/nile-select/index.esm.js +1 -1
  144. package/dist/nile-select/nile-select.cjs.js +1 -1
  145. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  146. package/dist/nile-select/nile-select.esm.js +1 -1
  147. package/dist/nile-slide-toggle/index.cjs.js +1 -1
  148. package/dist/nile-slide-toggle/index.esm.js +1 -1
  149. package/dist/nile-slide-toggle/nile-slide-toggle.cjs.js +1 -1
  150. package/dist/nile-slide-toggle/nile-slide-toggle.cjs.js.map +1 -1
  151. package/dist/nile-slide-toggle/nile-slide-toggle.css.cjs.js +1 -1
  152. package/dist/nile-slide-toggle/nile-slide-toggle.css.cjs.js.map +1 -1
  153. package/dist/nile-slide-toggle/nile-slide-toggle.css.esm.js +26 -2
  154. package/dist/nile-slide-toggle/nile-slide-toggle.esm.js +5 -3
  155. package/dist/nile-tab/index.cjs.js +1 -1
  156. package/dist/nile-tab/index.esm.js +1 -1
  157. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  158. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  159. package/dist/nile-tab/nile-tab.css.cjs.js +1 -1
  160. package/dist/nile-tab/nile-tab.css.cjs.js.map +1 -1
  161. package/dist/nile-tab/nile-tab.css.esm.js +17 -7
  162. package/dist/nile-tab/nile-tab.esm.js +1 -1
  163. package/dist/nile-tab-group/index.cjs.js +1 -1
  164. package/dist/nile-tab-group/index.esm.js +1 -1
  165. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  166. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  167. package/dist/nile-tab-group/nile-tab-group.css.cjs.js +1 -1
  168. package/dist/nile-tab-group/nile-tab-group.css.cjs.js.map +1 -1
  169. package/dist/nile-tab-group/nile-tab-group.css.esm.js +16 -2
  170. package/dist/nile-tab-group/nile-tab-group.esm.js +8 -5
  171. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js +1 -1
  172. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js.map +1 -1
  173. package/dist/nile-table-header-item/nile-table-header-item.css.esm.js +4 -4
  174. package/dist/nile-tag/index.cjs.js +1 -1
  175. package/dist/nile-tag/index.esm.js +1 -1
  176. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  177. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  178. package/dist/nile-tag/nile-tag.esm.js +1 -1
  179. package/dist/nile-toast/index.cjs.js +1 -1
  180. package/dist/nile-toast/index.esm.js +1 -1
  181. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  182. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  183. package/dist/nile-toast/nile-toast.css.cjs.js +1 -1
  184. package/dist/nile-toast/nile-toast.css.cjs.js.map +1 -1
  185. package/dist/nile-toast/nile-toast.css.esm.js +17 -16
  186. package/dist/nile-toast/nile-toast.esm.js +5 -3
  187. package/dist/nile-tooltip/nile-tooltip.css.cjs.js +1 -1
  188. package/dist/nile-tooltip/nile-tooltip.css.cjs.js.map +1 -1
  189. package/dist/nile-tooltip/nile-tooltip.css.esm.js +6 -6
  190. package/dist/scopedElementsWrapper-2fa3aa8b.cjs.js +6 -0
  191. package/dist/scopedElementsWrapper-2fa3aa8b.cjs.js.map +1 -0
  192. package/dist/scopedElementsWrapper-4c29be11.esm.js +7 -0
  193. package/dist/src/index.d.ts +2 -0
  194. package/dist/src/index.js +2 -0
  195. package/dist/src/index.js.map +1 -1
  196. package/dist/src/nile-avatar/nile-avatar.css.js +15 -7
  197. package/dist/src/nile-avatar/nile-avatar.css.js.map +1 -1
  198. package/dist/src/nile-avatar/nile-avatar.d.ts +1 -1
  199. package/dist/src/nile-avatar/nile-avatar.js +1 -0
  200. package/dist/src/nile-avatar/nile-avatar.js.map +1 -1
  201. package/dist/src/nile-badge/nile-badge.css.js +7 -5
  202. package/dist/src/nile-badge/nile-badge.css.js.map +1 -1
  203. package/dist/src/nile-button/nile-button.css.js +13 -23
  204. package/dist/src/nile-button/nile-button.css.js.map +1 -1
  205. package/dist/src/nile-button-toggle/nile-button-toggle.css.js +11 -6
  206. package/dist/src/nile-button-toggle/nile-button-toggle.css.js.map +1 -1
  207. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.css.d.ts +5 -5
  208. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.css.js +8 -7
  209. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.css.js.map +1 -1
  210. package/dist/src/nile-card/nile-card.css.js +23 -4
  211. package/dist/src/nile-card/nile-card.css.js.map +1 -1
  212. package/dist/src/nile-card/nile-card.js +12 -4
  213. package/dist/src/nile-card/nile-card.js.map +1 -1
  214. package/dist/src/nile-checkbox/nile-checkbox.css.js +24 -10
  215. package/dist/src/nile-checkbox/nile-checkbox.css.js.map +1 -1
  216. package/dist/src/nile-checkbox/nile-checkbox.d.ts +2 -2
  217. package/dist/src/nile-checkbox/nile-checkbox.js +7 -6
  218. package/dist/src/nile-checkbox/nile-checkbox.js.map +1 -1
  219. package/dist/src/nile-checkbox/nile-checkbox.test.d.ts +1 -0
  220. package/dist/src/nile-checkbox/nile-checkbox.test.js +152 -0
  221. package/dist/src/nile-checkbox/nile-checkbox.test.js.map +1 -0
  222. package/dist/src/nile-empty-state/nile-empty-state.css.js +61 -20
  223. package/dist/src/nile-empty-state/nile-empty-state.css.js.map +1 -1
  224. package/dist/src/nile-empty-state/nile-empty-state.d.ts +1 -1
  225. package/dist/src/nile-empty-state/nile-empty-state.js +22 -22
  226. package/dist/src/nile-empty-state/nile-empty-state.js.map +1 -1
  227. package/dist/src/nile-format-date/index.d.ts +1 -0
  228. package/dist/src/nile-format-date/index.js +2 -0
  229. package/dist/src/nile-format-date/index.js.map +1 -0
  230. package/dist/src/nile-format-date/nile-format-date.css.d.ts +12 -0
  231. package/dist/src/nile-format-date/nile-format-date.css.js +17 -0
  232. package/dist/src/nile-format-date/nile-format-date.css.js.map +1 -0
  233. package/dist/src/nile-format-date/nile-format-date.d.ts +59 -0
  234. package/dist/src/nile-format-date/nile-format-date.js +129 -0
  235. package/dist/src/nile-format-date/nile-format-date.js.map +1 -0
  236. package/dist/src/nile-hero/nile-hero.css.js +13 -32
  237. package/dist/src/nile-hero/nile-hero.css.js.map +1 -1
  238. package/dist/src/nile-hero/nile-hero.d.ts +6 -0
  239. package/dist/src/nile-hero/nile-hero.js +45 -8
  240. package/dist/src/nile-hero/nile-hero.js.map +1 -1
  241. package/dist/src/nile-hero-header/index.d.ts +1 -0
  242. package/dist/src/nile-hero-header/index.js +2 -0
  243. package/dist/src/nile-hero-header/index.js.map +1 -0
  244. package/dist/src/nile-hero-header/nile-hero-header.css.d.ts +12 -0
  245. package/dist/src/nile-hero-header/nile-hero-header.css.js +40 -0
  246. package/dist/src/nile-hero-header/nile-hero-header.css.js.map +1 -0
  247. package/dist/src/nile-hero-header/nile-hero-header.d.ts +34 -0
  248. package/dist/src/nile-hero-header/nile-hero-header.js +58 -0
  249. package/dist/src/nile-hero-header/nile-hero-header.js.map +1 -0
  250. package/dist/src/nile-icon/icons/svg/data-insight.d.ts +5 -0
  251. package/dist/src/nile-icon/icons/svg/data-insight.js +5 -0
  252. package/dist/src/nile-icon/icons/svg/data-insight.js.map +1 -0
  253. package/dist/src/nile-icon/icons/svg/index.d.ts +3 -0
  254. package/dist/src/nile-icon/icons/svg/index.js +3 -0
  255. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  256. package/dist/src/nile-icon/icons/svg/info-circle.d.ts +5 -0
  257. package/dist/src/nile-icon/icons/svg/info-circle.js +5 -0
  258. package/dist/src/nile-icon/icons/svg/info-circle.js.map +1 -0
  259. package/dist/src/nile-icon/icons/svg/user-01.d.ts +5 -0
  260. package/dist/src/nile-icon/icons/svg/user-01.js +5 -0
  261. package/dist/src/nile-icon/icons/svg/user-01.js.map +1 -0
  262. package/dist/src/nile-icon/index.js +2 -1
  263. package/dist/src/nile-icon/index.js.map +1 -1
  264. package/dist/src/nile-input/nile-input.css.js +7 -13
  265. package/dist/src/nile-input/nile-input.css.js.map +1 -1
  266. package/dist/src/nile-menu/nile-menu.css.js +2 -1
  267. package/dist/src/nile-menu/nile-menu.css.js.map +1 -1
  268. package/dist/src/nile-menu-item/nile-menu-item.css.js +7 -4
  269. package/dist/src/nile-menu-item/nile-menu-item.css.js.map +1 -1
  270. package/dist/src/nile-slide-toggle/nile-slide-toggle.css.js +26 -2
  271. package/dist/src/nile-slide-toggle/nile-slide-toggle.css.js.map +1 -1
  272. package/dist/src/nile-slide-toggle/nile-slide-toggle.d.ts +1 -0
  273. package/dist/src/nile-slide-toggle/nile-slide-toggle.js +11 -1
  274. package/dist/src/nile-slide-toggle/nile-slide-toggle.js.map +1 -1
  275. package/dist/src/nile-tab/nile-tab.css.js +15 -5
  276. package/dist/src/nile-tab/nile-tab.css.js.map +1 -1
  277. package/dist/src/nile-tab-group/nile-tab-group.css.js +16 -2
  278. package/dist/src/nile-tab-group/nile-tab-group.css.js.map +1 -1
  279. package/dist/src/nile-tab-group/nile-tab-group.d.ts +2 -0
  280. package/dist/src/nile-tab-group/nile-tab-group.js +16 -5
  281. package/dist/src/nile-tab-group/nile-tab-group.js.map +1 -1
  282. package/dist/src/nile-table-header-item/nile-table-header-item.css.js +2 -2
  283. package/dist/src/nile-table-header-item/nile-table-header-item.css.js.map +1 -1
  284. package/dist/src/nile-toast/nile-toast.css.js +17 -16
  285. package/dist/src/nile-toast/nile-toast.css.js.map +1 -1
  286. package/dist/src/nile-toast/nile-toast.d.ts +1 -1
  287. package/dist/src/nile-toast/nile-toast.js +9 -7
  288. package/dist/src/nile-toast/nile-toast.js.map +1 -1
  289. package/dist/src/nile-tooltip/nile-tooltip.css.js +6 -6
  290. package/dist/src/nile-tooltip/nile-tooltip.css.js.map +1 -1
  291. package/dist/tsconfig.tsbuildinfo +1 -1
  292. package/package.json +3 -2
  293. package/plopfile.js +5 -0
  294. package/rollup.config.js +11 -6
  295. package/src/index.ts +3 -1
  296. package/src/nile-avatar/nile-avatar.css.ts +15 -7
  297. package/src/nile-avatar/nile-avatar.ts +2 -1
  298. package/src/nile-badge/nile-badge.css.ts +7 -5
  299. package/src/nile-button/nile-button.css.ts +13 -23
  300. package/src/nile-button-toggle/nile-button-toggle.css.ts +11 -6
  301. package/src/nile-button-toggle-group/nile-button-toggle-group.css.ts +9 -8
  302. package/src/nile-card/nile-card.css.ts +23 -4
  303. package/src/nile-card/nile-card.ts +19 -8
  304. package/src/nile-checkbox/nile-checkbox.css.ts +24 -10
  305. package/src/nile-checkbox/nile-checkbox.test.ts +188 -0
  306. package/src/nile-checkbox/nile-checkbox.ts +6 -8
  307. package/src/nile-empty-state/nile-empty-state.css.ts +61 -20
  308. package/src/nile-empty-state/nile-empty-state.ts +22 -28
  309. package/src/nile-format-date/index.ts +1 -0
  310. package/src/nile-format-date/nile-format-date.css.ts +19 -0
  311. package/src/nile-format-date/nile-format-date.ts +133 -0
  312. package/src/nile-hero/nile-hero.css.ts +13 -32
  313. package/src/nile-hero/nile-hero.ts +39 -13
  314. package/src/nile-hero-header/index.ts +1 -0
  315. package/src/nile-hero-header/nile-hero-header.css.ts +42 -0
  316. package/src/nile-hero-header/nile-hero-header.ts +59 -0
  317. package/src/nile-icon/icons/svg/data-insight.ts +5 -0
  318. package/src/nile-icon/icons/svg/index.ts +3 -0
  319. package/src/nile-icon/icons/svg/info-circle.ts +5 -0
  320. package/src/nile-icon/icons/svg/user-01.ts +5 -0
  321. package/src/nile-icon/index.ts +2 -1
  322. package/src/nile-input/nile-input.css.ts +7 -13
  323. package/src/nile-menu/nile-menu.css.ts +2 -1
  324. package/src/nile-menu-item/nile-menu-item.css.ts +7 -4
  325. package/src/nile-slide-toggle/nile-slide-toggle.css.ts +26 -2
  326. package/src/nile-slide-toggle/nile-slide-toggle.ts +9 -1
  327. package/src/nile-tab/nile-tab.css.ts +16 -6
  328. package/src/nile-tab-group/nile-tab-group.css.ts +16 -2
  329. package/src/nile-tab-group/nile-tab-group.ts +25 -15
  330. package/src/nile-table-header-item/nile-table-header-item.css.ts +2 -2
  331. package/src/nile-toast/nile-toast.css.ts +17 -16
  332. package/src/nile-toast/nile-toast.ts +9 -7
  333. package/src/nile-tooltip/nile-tooltip.css.ts +6 -6
  334. package/tsconfig.json +3 -1
  335. package/web-test-runner.config.mjs +27 -14
  336. package/dist/stories/icons.stories.d.ts +0 -29
  337. package/dist/stories/icons.stories.js +0 -27
  338. package/dist/stories/icons.stories.js.map +0 -1
  339. package/dist/stories/index.stories.d.ts +0 -33
  340. package/dist/stories/index.stories.js +0 -37
  341. package/dist/stories/index.stories.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"nile-checkbox.css.js","sourceRoot":"","sources":["../../../src/nile-checkbox/nile-checkbox.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsIxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit-element';\n\n/**\n * Checkbox CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n }\n\n :host(.full-width) {\n width: 100%;\n }\n\n .checkbox {\n position: relative;\n display: inline-flex;\n align-items: top;\n font-weight: 400;\n color: var(--nile-colors-dark-900);\n vertical-align: middle;\n cursor: pointer;\n }\n\n .checkbox--medium {\n --toggle-size: var(--nile-type-scale-3);\n font-size: var(--nile-type-scale-3);\n }\n\n .checkbox__control {\n flex: 0 0 auto;\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--nile-type-scale-3);\n height: var(--nile-type-scale-3);\n border: solid 1px var(--nile-checkbox-color-border-standard);\n background-color: var(--nile-checkbox-color-background-standard);\n border-radius: 4px;\n transition: var(--nile-transition-duration-default border-color),\n var(--nile-transition-duration-default) background-color,\n var(--nile-transition-duration-default) color,\n var(--nile-transition-duration-default box-shadow);\n }\n\n .checkbox__input {\n position: absolute;\n opacity: 0;\n padding: 0;\n margin: 0;\n pointer-events: none;\n }\n\n /* svg {\n display:none !important;\n } */\n\n /* Hover */\n .checkbox:not(.checkbox--checked):not(.checkbox--disabled)\n .checkbox__control:hover {\n background: var(--nile-checkbox-color-background-hover);\n border: 1px solid var(--nile-checkbox-color-border-hover);\n border-radius: 4px;\n }\n\n /* Focus */\n .checkbox:not(.checkbox--checked):not(.checkbox--disabled)\n .checkbox__input:focus-visible\n ~ .checkbox__control {\n outline: solid 3px hsl(198.6 88.7% 48.4% / 40%);\n outline-offset: 1px;\n }\n\n /* Checked/indeterminate */\n .checkbox--checked .checkbox__control,\n .checkbox--indeterminate .checkbox__control {\n border-color: var(--nile-checkbox-color-border-checked-standard);\n background-color: var(--nile-checkbox-color-background-checked-standard);\n }\n\n /* Checked/indeterminate + hover */\n .checkbox.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover,\n .checkbox.checkbox--indeterminate:not(.checkbox--disabled)\n .checkbox__control:hover {\n background: var(--nile-checkbox-color-background-checked-hover);\n border: 1px solid var(--nile-checkbox-color-border-checked-hover);\n }\n\n /* Checked/indeterminate + focus */\n .checkbox.checkbox--checked:not(.checkbox--disabled)\n .checkbox__input:focus-visible\n ~ .checkbox__control,\n .checkbox.checkbox--indeterminate:not(.checkbox--disabled)\n .checkbox__input:focus-visible\n ~ .checkbox__control {\n outline: solid 3px var(--nile-checkbox-color-outline-standard);\n outline-offset: 1px;\n }\n\n /* Disabled */\n .checkbox--disabled {\n opacity: 0.3;\n cursor: not-allowed;\n }\n \n\n .checkbox__label {\n display: inline-block;\n line-height: 14px;\n font-size: 14px;\n margin-inline-start: 0.5em;\n user-select: none;\n margin-top: 2px;\n color: var(--nile-colors-dark-900);\n font-family: Colfax-regular;\n font-style: normal;\n font-weight: 400;\n letter-spacing: 0.2px;\n }\n\n :host([required]) .checkbox__label::after {\n content: '*';\n margin-inline-start: -2px;\n }\n\n .checkbox__checked-icon {\n --nile-svg-stroke: white;\n }\n\n .checkbox__indeterminate-icon {\n --nile-svg-stroke: white;\n }\n\n .checkbox__helptext-icon {\n float: right;\n cursor: pointer;\n margin-right: 12px;\n }\n`;\n\nexport default [styles];\n"]}
1
+ {"version":3,"file":"nile-checkbox.css.js","sourceRoot":"","sources":["../../../src/nile-checkbox/nile-checkbox.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoJxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit-element';\n\n/**\n * Checkbox CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n }\n\n :host(.full-width) {\n width: 100%;\n }\n\n .checkbox {\n position: relative;\n display: inline-flex;\n align-items: stretch;\n font-weight: 400;\n color: var(--nile-colors-dark-900);\n vertical-align: middle;\n cursor: pointer;\n }\n\n .checkbox--medium {\n padding-top: 2px;\n --toggle-size: var(--nile-type-scale-3);\n font-size: var(--nile-type-scale-3);\n }\n\n .checkbox__control {\n flex: 0 0 auto;\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--nile-type-scale-3);\n height: var(--nile-type-scale-3);\n border: solid 1px var(--nile-checkbox-color-border-standard);\n background-color: var(--nile-checkbox-color-background-standard);\n border-radius: 3px;\n transition: var(--nile-transition-duration-default border-color),\n var(--nile-transition-duration-default) background-color,\n var(--nile-transition-duration-default) color,\n var(--nile-transition-duration-default box-shadow);\n }\n\n .checkbox__input {\n position: absolute;\n opacity: 0;\n padding: 0;\n margin: 0;\n pointer-events: none;\n }\n\n /* svg {\n display:none !important;\n } */\n\n /* Hover */\n .checkbox:not(.checkbox--checked):not(.checkbox--disabled)\n .checkbox__control:hover {\n background: var(--nile-checkbox-color-background-hover);\n border: 1px solid var(--nile-checkbox-color-border-hover);\n border-radius: 4px;\n }\n\n /* Focus */\n .checkbox:not(.checkbox--checked):not(.checkbox--disabled)\n .checkbox__input:focus-visible\n ~ .checkbox__control {\n outline: solid 3px hsl(198.6 88.7% 48.4% / 40%);\n outline-offset: 1px;\n }\n\n /* Checked/indeterminate */\n .checkbox--checked .checkbox__control,\n .checkbox--indeterminate .checkbox__control {\n border-color: var(--nile-checkbox-color-border-checked-standard);\n background-color: var(--nile-checkbox-color-background-checked-standard);\n }\n\n /* Checked/indeterminate + hover */\n .checkbox.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover,\n .checkbox.checkbox--indeterminate:not(.checkbox--disabled)\n .checkbox__control:hover {\n background: var(--nile-checkbox-color-background-checked-hover);\n border: 1px solid var(--nile-checkbox-color-border-checked-hover);\n }\n\n /* Checked/indeterminate + focus */\n .checkbox.checkbox--checked:not(.checkbox--disabled)\n .checkbox__input:focus-visible\n ~ .checkbox__control,\n .checkbox.checkbox--indeterminate:not(.checkbox--disabled)\n .checkbox__input:focus-visible\n ~ .checkbox__control {\n outline: solid 3px var(--nile-checkbox-color-outline-standard);\n outline-offset: 1px;\n }\n\n /* Disabled */\n .checkbox--disabled {\n opacity: 0.3;\n cursor: not-allowed;\n }\n\n .checkbox__label {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n font-family: var(--nile-font-family-serif);\n margin-left: 8px;\n user-select: none;\n color: var(--nile-colors-dark-900);\n font-style: normal;\n letter-spacing: 0.2px;\n box-sizing: border-box;\n }\n\n .checkbox__label__text {\n display: block;\n font-size: 14px;\n font-weight: 500;\n color: #344054;\n }\n\n .checkbox__sublabel__text {\n display: block;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n color: #475467;\n }\n\n :host([required]) .checkbox__label::after {\n content: '*';\n margin-inline-start: -2px;\n }\n\n .checkbox__checked-icon {\n --nile-svg-stroke: white;\n }\n\n .checkbox__indeterminate-icon {\n --nile-svg-stroke: white;\n }\n\n .checkbox__helptext-icon {\n float: right;\n cursor: pointer;\n margin-right: 12px;\n }\n`;\n\nexport default [styles];\n"]}
@@ -18,7 +18,6 @@ import type { CSSResultGroup } from 'lit';
18
18
  * @event nile-change - Emitted when the checked state changes.
19
19
  * @event nile-focus - Emitted when the checkbox gains focus.
20
20
  * @event nile-input - Emitted when the checkbox receives input.
21
- * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
22
21
  *
23
22
  * @csspart base - The component's base wrapper.
24
23
  * @csspart control - The square container that wraps the checkbox's checked state.
@@ -52,6 +51,8 @@ export declare class NileCheckbox extends NileElement {
52
51
  checked: boolean;
53
52
  /** Label, declared this property for backward compatibility of old component */
54
53
  label: string;
54
+ /** Sublabel, declared this property for backward compatibility of old component */
55
+ subLabel: string;
55
56
  /**
56
57
  * Draws the checkbox in an indeterminate state. This is usually applied to checkboxes that represents a "select
57
58
  * all/none" behavior when associated checkboxes have a mix of checked and unchecked states.
@@ -70,7 +71,6 @@ export declare class NileCheckbox extends NileElement {
70
71
  form: string;
71
72
  /** Makes the checkbox a required field. */
72
73
  required: boolean;
73
- private toggleHelpText;
74
74
  private handleClick;
75
75
  private handleBlur;
76
76
  private handleInput;
@@ -26,7 +26,6 @@ import NileElement from '../internal/nile-element';
26
26
  * @event nile-change - Emitted when the checked state changes.
27
27
  * @event nile-focus - Emitted when the checkbox gains focus.
28
28
  * @event nile-input - Emitted when the checkbox receives input.
29
- * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
30
29
  *
31
30
  * @csspart base - The component's base wrapper.
32
31
  * @csspart control - The square container that wraps the checkbox's checked state.
@@ -57,6 +56,8 @@ let NileCheckbox = class NileCheckbox extends NileElement {
57
56
  this.checked = false;
58
57
  /** Label, declared this property for backward compatibility of old component */
59
58
  this.label = '';
59
+ /** Sublabel, declared this property for backward compatibility of old component */
60
+ this.subLabel = '';
60
61
  /**
61
62
  * Draws the checkbox in an indeterminate state. This is usually applied to checkboxes that represents a "select
62
63
  * all/none" behavior when associated checkboxes have a mix of checked and unchecked states.
@@ -76,9 +77,6 @@ let NileCheckbox = class NileCheckbox extends NileElement {
76
77
  /** Makes the checkbox a required field. */
77
78
  this.required = false;
78
79
  }
79
- toggleHelpText() {
80
- this.showHelpText = !this.showHelpText;
81
- }
82
80
  handleClick() {
83
81
  this.checked = !this.checked;
84
82
  this.indeterminate = false;
@@ -207,7 +205,8 @@ let NileCheckbox = class NileCheckbox extends NileElement {
207
205
  </span>
208
206
 
209
207
  <div part="label" class="checkbox__label">
210
- ${typeof this.label === 'boolean' ? '' : this.label}
208
+ ${this.label ? html `<span class="checkbox__label__text">${this.label}</span>` : ``}
209
+ ${this.label && this.subLabel ? html `<span class="checkbox__sublabel__text">${this.subLabel}</span>` : ``}
211
210
  <slot></slot>
212
211
  </div>
213
212
  </label>
@@ -222,7 +221,6 @@ let NileCheckbox = class NileCheckbox extends NileElement {
222
221
  </nile-tooltip>
223
222
  `
224
223
  : ``}
225
-
226
224
  ${hasErrorMessage
227
225
  ? html `
228
226
  <nile-form-error-message
@@ -261,6 +259,9 @@ __decorate([
261
259
  __decorate([
262
260
  property({ type: String, reflect: true })
263
261
  ], NileCheckbox.prototype, "label", void 0);
262
+ __decorate([
263
+ property({ type: String, reflect: true, attribute: 'sub-label' })
264
+ ], NileCheckbox.prototype, "subLabel", void 0);
264
265
  __decorate([
265
266
  property({ type: Boolean, reflect: true })
266
267
  ], NileCheckbox.prototype, "indeterminate", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-checkbox.js","sourceRoot":"","sources":["../../../src/nile-checkbox/nile-checkbox.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n LitElement,\n html,\n property,\n CSSResultArray,\n TemplateResult,\n} from 'lit-element';\nimport { customElement } from 'lit/decorators.js';\nimport { styles } from './nile-checkbox.css';\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { query, state } from 'lit/decorators.js';\nimport { defaultValue } from '../internal/default-value';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { watch } from '../internal/watch';\nimport NileElement from '../internal/nile-element';\nimport type { CSSResultGroup } from 'lit';\n\n/**\n * @summary Checkboxes allow the user to toggle an option on or off.\n *\n * @dependency nile-icon\n *\n * @slot - The checkbox's label.\n *\n * @event nile-blur - Emitted when the checkbox loses focus.\n * @event nile-change - Emitted when the checked state changes.\n * @event nile-focus - Emitted when the checkbox gains focus.\n * @event nile-input - Emitted when the checkbox receives input.\n * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n *\n * @csspart base - The component's base wrapper.\n * @csspart control - The square container that wraps the checkbox's checked state.\n * @csspart control--checked - Matches the control part when the checkbox is checked.\n * @csspart control--indeterminate - Matches the control part when the checkbox is indeterminate.\n * @csspart checked-icon - The checked icon, an `<nile-icon>` element.\n * @csspart indeterminate-icon - The indeterminate icon, an `<nile-icon>` element.\n * @csspart label - The container that wraps the checkbox's label.\n */\n\n/**\n * Nile icon component.\n *\n * @tag nile-checkbox\n *\n */\n@customElement('nile-checkbox')\nexport class NileCheckbox extends NileElement {\n constructor() {\n super();\n }\n\n static styles: CSSResultGroup = styles;\n\n @query('input[type=\"checkbox\"]') input: HTMLInputElement;\n\n @state() private hasFocus = false;\n\n @property() title = ''; // make reactive to pass through\n\n /** The name of the checkbox, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /** The current value of the checkbox, submitted as a name/value pair with form data. */\n @property() value: boolean;\n\n /** The checkbox's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Disables the checkbox. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Draws the checkbox in a checked state. */\n @property({ type: Boolean, reflect: true }) checked = false;\n\n /** Label, declared this property for backward compatibility of old component */\n @property({ type: String, reflect: true }) label = '';\n\n /**\n * Draws the checkbox in an indeterminate state. This is usually applied to checkboxes that represents a \"select\n * all/none\" behavior when associated checkboxes have a mix of checked and unchecked states.\n */\n @property({ type: Boolean, reflect: true }) indeterminate = false;\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue('checked') defaultChecked = false;\n\n @property({ attribute: 'help-text', reflect: true }) helpText = '';\n\n @property({ attribute: 'error-message', reflect: true }) errorMessage = '';\n\n @property({ type: Boolean }) showHelpText = false;\n\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Makes the checkbox a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n private toggleHelpText() {\n this.showHelpText = !this.showHelpText;\n }\n\n private handleClick() {\n this.checked = !this.checked;\n this.indeterminate = false;\n this.dispatchEvent(\n new CustomEvent('valueChange', {\n composed: true,\n bubbles: true,\n detail: {\n checked: this.checked,\n },\n })\n );\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('blur');\n }\n\n private handleInput() {\n this.emit('input');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('focus');\n }\n\n @watch(['checked', 'indeterminate'], { waitUntilFirstUpdate: true })\n handleStateChange() {\n this.input.checked = this.checked; // force a sync update\n this.input.indeterminate = this.indeterminate; // force a sync update\n }\n\n /** Simulates a click on the checkbox. */\n click() {\n this.input.click();\n }\n\n /** Sets focus on the checkbox. */\n focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the checkbox. */\n blur() {\n this.input.blur();\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.updateHostClass();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n updated(changedProperties: Map<string | number | symbol, unknown>) {\n super.updated(changedProperties);\n if (changedProperties.has('helpText')) {\n this.updateHostClass();\n }\n }\n\n private updateHostClass() {\n if (this.helpText) {\n this.classList.add('full-width');\n } else {\n this.classList.remove('full-width');\n }\n }\n\n render() {\n const hasHelpText = this.helpText ? true : false;\n const hasErrorMessage = this.errorMessage ? true : false;\n\n return html`\n <label\n part=\"base\"\n class=${classMap({\n checkbox: true,\n 'checkbox--checked': this.checked,\n 'checkbox--disabled': this.disabled,\n 'checkbox--focused': this.hasFocus,\n 'checkbox--indeterminate': this.indeterminate,\n 'checkbox--medium': this.size === 'medium',\n })}\n >\n <input\n class=\"checkbox__input\"\n type=\"checkbox\"\n title=${\n this\n .title /* An empty title prevents browser validation tooltips from appearing on hover */\n }\n name=${this.name}\n value=${ifDefined(this.value)}\n .indeterminate=${live(this.indeterminate)}\n .checked=${live(this.checked)}\n .disabled=${this.disabled}\n .required=${this.required}\n aria-checked=${this.checked ? 'true' : 'false'}\n @click=${this.handleClick}\n @input=${this.handleInput}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n />\n\n <span\n part=\"control${this.checked ? ' control--checked' : ''}${this\n .indeterminate\n ? ' control--indeterminate'\n : ''}\"\n class=\"checkbox__control\"\n >\n ${this.checked\n ? html`\n <nile-icon\n part=\"checked-icon\"\n class=\"checkbox__checked-icon\"\n color=\"white\"\n library=\"system\"\n name=\"tick\"\n size=\"12\"\n ></nile-icon>\n `\n : ''}\n ${!this.checked && this.indeterminate\n ? html`\n <nile-icon\n part=\"indeterminate-icon\"\n class=\"checkbox__indeterminate-icon\"\n library=\"system\"\n color=\"white\"\n name=\"minus\"\n size=\"12\"\n ></nile-icon>\n `\n : ''}\n </span>\n\n <div part=\"label\" class=\"checkbox__label\">\n ${typeof this.label === 'boolean' ? '' : this.label}\n <slot></slot>\n </div>\n </label>\n\n ${hasHelpText\n ? html`\n <nile-tooltip content=\"${this.helpText}\" placement=\"bottom\">\n <nile-icon\n name=\"question\"\n class=\"checkbox__helptext-icon\"\n ></nile-icon>\n </nile-tooltip>\n `\n : ``}\n\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}\n `;\n }\n}\n\nexport default NileCheckbox;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-checkbox': NileCheckbox;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-checkbox.js","sourceRoot":"","sources":["../../../src/nile-checkbox/nile-checkbox.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n LitElement,\n html,\n property,\n CSSResultArray,\n TemplateResult,\n} from 'lit-element';\nimport { customElement } from 'lit/decorators.js';\nimport { styles } from './nile-checkbox.css';\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { query, state } from 'lit/decorators.js';\nimport { defaultValue } from '../internal/default-value';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { watch } from '../internal/watch';\nimport NileElement from '../internal/nile-element';\nimport type { CSSResultGroup } from 'lit';\n\n/**\n * @summary Checkboxes allow the user to toggle an option on or off.\n *\n * @dependency nile-icon\n *\n * @slot - The checkbox's label.\n *\n * @event nile-blur - Emitted when the checkbox loses focus.\n * @event nile-change - Emitted when the checked state changes.\n * @event nile-focus - Emitted when the checkbox gains focus.\n * @event nile-input - Emitted when the checkbox receives input.\n *\n * @csspart base - The component's base wrapper.\n * @csspart control - The square container that wraps the checkbox's checked state.\n * @csspart control--checked - Matches the control part when the checkbox is checked.\n * @csspart control--indeterminate - Matches the control part when the checkbox is indeterminate.\n * @csspart checked-icon - The checked icon, an `<nile-icon>` element.\n * @csspart indeterminate-icon - The indeterminate icon, an `<nile-icon>` element.\n * @csspart label - The container that wraps the checkbox's label.\n */\n\n/**\n * Nile icon component.\n *\n * @tag nile-checkbox\n *\n */\n@customElement('nile-checkbox')\nexport class NileCheckbox extends NileElement {\n constructor() {\n super();\n }\n\n static styles: CSSResultGroup = styles;\n\n @query('input[type=\"checkbox\"]') input: HTMLInputElement;\n\n @state() private hasFocus = false;\n\n @property() title = ''; // make reactive to pass through\n\n /** The name of the checkbox, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /** The current value of the checkbox, submitted as a name/value pair with form data. */\n @property() value: boolean;\n\n /** The checkbox's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Disables the checkbox. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Draws the checkbox in a checked state. */\n @property({ type: Boolean, reflect: true }) checked = false;\n\n /** Label, declared this property for backward compatibility of old component */\n @property({ type: String, reflect: true }) label = '';\n\n /** Sublabel, declared this property for backward compatibility of old component */\n @property({ type: String, reflect: true, attribute: 'sub-label' }) subLabel =\n '';\n\n /**\n * Draws the checkbox in an indeterminate state. This is usually applied to checkboxes that represents a \"select\n * all/none\" behavior when associated checkboxes have a mix of checked and unchecked states.\n */\n @property({ type: Boolean, reflect: true }) indeterminate = false;\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue('checked') defaultChecked = false;\n\n @property({ attribute: 'help-text', reflect: true }) helpText = '';\n\n @property({ attribute: 'error-message', reflect: true }) errorMessage = '';\n\n @property({ type: Boolean }) showHelpText = false;\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Makes the checkbox a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n private handleClick() {\n this.checked = !this.checked;\n this.indeterminate = false;\n this.dispatchEvent(\n new CustomEvent('valueChange', {\n composed: true,\n bubbles: true,\n detail: {\n checked: this.checked,\n },\n })\n );\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('blur');\n }\n\n private handleInput() {\n this.emit('input');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('focus');\n }\n\n @watch(['checked', 'indeterminate'], { waitUntilFirstUpdate: true })\n handleStateChange() {\n this.input.checked = this.checked; // force a sync update\n this.input.indeterminate = this.indeterminate; // force a sync update\n }\n\n /** Simulates a click on the checkbox. */\n click() {\n this.input.click();\n }\n\n /** Sets focus on the checkbox. */\n focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the checkbox. */\n blur() {\n this.input.blur();\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.updateHostClass();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n updated(changedProperties: Map<string | number | symbol, unknown>) {\n super.updated(changedProperties);\n if (changedProperties.has('helpText')) {\n this.updateHostClass();\n }\n }\n\n private updateHostClass() {\n if (this.helpText) {\n this.classList.add('full-width');\n } else {\n this.classList.remove('full-width');\n }\n }\n\n render() {\n const hasHelpText = this.helpText ? true : false;\n const hasErrorMessage = this.errorMessage ? true : false;\n\n return html`\n <label\n part=\"base\"\n class=${classMap({\n checkbox: true,\n 'checkbox--checked': this.checked,\n 'checkbox--disabled': this.disabled,\n 'checkbox--focused': this.hasFocus,\n 'checkbox--indeterminate': this.indeterminate,\n 'checkbox--medium': this.size === 'medium',\n })}\n >\n <input\n class=\"checkbox__input\"\n type=\"checkbox\"\n title=${\n this\n .title /* An empty title prevents browser validation tooltips from appearing on hover */\n }\n name=${this.name}\n value=${ifDefined(this.value)}\n .indeterminate=${live(this.indeterminate)}\n .checked=${live(this.checked)}\n .disabled=${this.disabled}\n .required=${this.required}\n aria-checked=${this.checked ? 'true' : 'false'}\n @click=${this.handleClick}\n @input=${this.handleInput}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n />\n\n <span\n part=\"control${this.checked ? ' control--checked' : ''}${this\n .indeterminate\n ? ' control--indeterminate'\n : ''}\"\n class=\"checkbox__control\"\n >\n ${this.checked\n ? html`\n <nile-icon\n part=\"checked-icon\"\n class=\"checkbox__checked-icon\"\n color=\"white\"\n library=\"system\"\n name=\"tick\"\n size=\"12\"\n ></nile-icon>\n `\n : ''}\n ${!this.checked && this.indeterminate\n ? html`\n <nile-icon\n part=\"indeterminate-icon\"\n class=\"checkbox__indeterminate-icon\"\n library=\"system\"\n color=\"white\"\n name=\"minus\"\n size=\"12\"\n ></nile-icon>\n `\n : ''}\n </span>\n\n <div part=\"label\" class=\"checkbox__label\">\n ${this.label ? html`<span class=\"checkbox__label__text\">${this.label}</span>` : ``}\n ${this.label && this.subLabel ? html`<span class=\"checkbox__sublabel__text\">${this.subLabel}</span>` : ``}\n <slot></slot>\n </div>\n </label>\n\n ${hasHelpText\n ? html`\n <nile-tooltip content=\"${this.helpText}\" placement=\"bottom\">\n <nile-icon\n name=\"question\"\n class=\"checkbox__helptext-icon\"\n ></nile-icon>\n </nile-tooltip>\n `\n : ``}\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}\n `;\n }\n}\n\nexport default NileCheckbox;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-checkbox': NileCheckbox;\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ import './nile-checkbox';
@@ -0,0 +1,152 @@
1
+ import { fixture, html, expect, oneEvent } from '@open-wc/testing';
2
+ import './nile-checkbox';
3
+ describe('NileCheckbox', () => {
4
+ it('renders correctly with default properties', async () => {
5
+ const el = await fixture(html `<nile-checkbox></nile-checkbox>`);
6
+ expect(el).shadowDom.to.equalSnapshot();
7
+ });
8
+ it('toggles checked state on click', async () => {
9
+ const el = await fixture(html `<nile-checkbox></nile-checkbox>`);
10
+ const input = el.shadowRoot.querySelector('input[type="checkbox"]');
11
+ input.click();
12
+ expect(el.checked).to.be.true;
13
+ input.click();
14
+ expect(el.checked).to.be.false;
15
+ });
16
+ it('emits nile-change event on click', async () => {
17
+ const el = await fixture(html `<nile-checkbox></nile-checkbox>`);
18
+ const input = el.shadowRoot.querySelector('input[type="checkbox"]');
19
+ setTimeout(() => input.click());
20
+ const event = await oneEvent(el, 'valueChange');
21
+ expect(event.detail.checked).to.be.true;
22
+ });
23
+ it('handles focus and blur events', async () => {
24
+ const el = await fixture(html `<nile-checkbox></nile-checkbox>`);
25
+ const input = el.shadowRoot.querySelector('input[type="checkbox"]');
26
+ // Focus the input and wait for the focus event
27
+ setTimeout(() => input.focus());
28
+ const focusEvent = await oneEvent(el, 'focus');
29
+ expect(focusEvent).to.exist;
30
+ // Blur the input and wait for the blur event
31
+ setTimeout(() => input.blur());
32
+ const blurEvent = await oneEvent(el, 'blur');
33
+ expect(blurEvent).to.exist;
34
+ });
35
+ it('handles indeterminate state', async () => {
36
+ const el = await fixture(html `<nile-checkbox indeterminate></nile-checkbox>`);
37
+ const input = el.shadowRoot.querySelector('input[type="checkbox"]');
38
+ expect(input.indeterminate).to.be.true;
39
+ el.checked = true;
40
+ el.indeterminate = false;
41
+ await el.updateComplete;
42
+ expect(input.indeterminate).to.be.false;
43
+ expect(input.checked).to.be.true;
44
+ });
45
+ it('reflects properties to attributes', async () => {
46
+ const el = await fixture(html `
47
+ <nile-checkbox
48
+ name="test-name"
49
+ title="test-title"
50
+ disabled
51
+ required
52
+ label="test-label"
53
+ sub-label="test-sublabel"
54
+ help-text="test-help"
55
+ error-message="test-error"
56
+ ></nile-checkbox>
57
+ `);
58
+ expect(el.getAttribute('name')).to.equal('test-name');
59
+ expect(el.getAttribute('title')).to.equal('test-title');
60
+ expect(el.getAttribute('disabled')).to.equal('');
61
+ expect(el.getAttribute('required')).to.equal('');
62
+ expect(el.getAttribute('label')).to.equal('test-label');
63
+ expect(el.getAttribute('sub-label')).to.equal('test-sublabel');
64
+ expect(el.getAttribute('help-text')).to.equal('test-help');
65
+ expect(el.getAttribute('error-message')).to.equal('test-error');
66
+ });
67
+ it('displays help text when showHelpText is true', async () => {
68
+ const el = await fixture(html `<nile-checkbox help-text="test-help"></nile-checkbox>`);
69
+ el.showHelpText = true;
70
+ await el.updateComplete;
71
+ const helpTextIcon = el.shadowRoot.querySelector('.checkbox__helptext-icon');
72
+ expect(helpTextIcon).to.exist;
73
+ });
74
+ it('updates host class based on helpText', async () => {
75
+ const el = await fixture(html `<nile-checkbox></nile-checkbox>`);
76
+ el.helpText = 'test-help';
77
+ await el.updateComplete;
78
+ expect(el.classList.contains('full-width')).to.be.true;
79
+ el.helpText = '';
80
+ await el.updateComplete;
81
+ expect(el.classList.contains('full-width')).to.be.false;
82
+ });
83
+ it('emits custom events on connected and disconnected', async () => {
84
+ const el = document.createElement('nile-checkbox');
85
+ // Wait for the connected event
86
+ const initEventPromise = oneEvent(el, 'nile-init');
87
+ document.body.appendChild(el);
88
+ const initEvent = await initEventPromise;
89
+ expect(initEvent).to.exist;
90
+ // Wait for the disconnected event
91
+ const destroyEventPromise = oneEvent(el, 'nile-destroy');
92
+ document.body.removeChild(el);
93
+ const destroyEvent = await destroyEventPromise;
94
+ expect(destroyEvent).to.exist;
95
+ });
96
+ it('handles required attribute', async () => {
97
+ const el = await fixture(html `<nile-checkbox required></nile-checkbox>`);
98
+ const input = el.shadowRoot.querySelector('input[type="checkbox"]');
99
+ expect(input.required).to.be.true;
100
+ });
101
+ it('simulates click using click method', async () => {
102
+ const el = await fixture(html `<nile-checkbox></nile-checkbox>`);
103
+ el.click();
104
+ expect(el.checked).to.be.true;
105
+ });
106
+ it('sets and removes focus using focus and blur methods', async () => {
107
+ const el = await fixture(html `<nile-checkbox></nile-checkbox>`);
108
+ // Call the focus method and wait for the focus event
109
+ setTimeout(() => el.focus());
110
+ const focusEvent = await oneEvent(el, 'focus');
111
+ expect(focusEvent).to.exist;
112
+ // Call the blur method and wait for the blur event
113
+ setTimeout(() => el.blur());
114
+ const blurEvent = await oneEvent(el, 'blur');
115
+ expect(blurEvent).to.exist;
116
+ });
117
+ it('reflects checked attribute to property', async () => {
118
+ const el = await fixture(html `<nile-checkbox checked></nile-checkbox>`);
119
+ expect(el.checked).to.be.true;
120
+ });
121
+ it('reflects indeterminate attribute to property', async () => {
122
+ const el = await fixture(html `<nile-checkbox indeterminate></nile-checkbox>`);
123
+ expect(el.indeterminate).to.be.true;
124
+ });
125
+ it('associates form using form attribute', async () => {
126
+ const el = await fixture(html `
127
+ <div>
128
+ <form id="test-form"></form>
129
+ <nile-checkbox form="test-form"></nile-checkbox>
130
+ </div>
131
+ `);
132
+ const checkbox = el.querySelector('nile-checkbox');
133
+ expect(checkbox).to.not.be.null;
134
+ expect(checkbox.getAttribute('form')).to.equal('test-form');
135
+ });
136
+ it('displays and hides help text correctly', async () => {
137
+ const el = await fixture(html `<nile-checkbox help-text="test-help"></nile-checkbox>`);
138
+ // Initially, help text should not be shown
139
+ expect(el.showHelpText).to.be.false;
140
+ // Show the help text
141
+ el.showHelpText = true;
142
+ await el.updateComplete;
143
+ let helpTextIcon = el.shadowRoot.querySelector('.checkbox__helptext-icon');
144
+ expect(helpTextIcon).to.exist;
145
+ // Hide the help text
146
+ el.showHelpText = false;
147
+ await el.updateComplete;
148
+ helpTextIcon = el.shadowRoot.querySelector('.checkbox__helptext-icon');
149
+ expect(helpTextIcon).to.be.exist;
150
+ });
151
+ });
152
+ //# sourceMappingURL=nile-checkbox.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-checkbox.test.js","sourceRoot":"","sources":["../../../src/nile-checkbox/nile-checkbox.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { fixture, html, expect, oneEvent } from '@open-wc/testing';\nimport './nile-checkbox';\nimport { NileCheckbox } from './nile-checkbox';\n\ndescribe('NileCheckbox', () => {\n it('renders correctly with default properties', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox></nile-checkbox>`);\n expect(el).shadowDom.to.equalSnapshot();\n });\n\n it('toggles checked state on click', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox></nile-checkbox>`);\n const input = el.shadowRoot!.querySelector('input[type=\"checkbox\"]')! as HTMLInputElement;\n\n input.click();\n expect(el.checked).to.be.true;\n input.click();\n expect(el.checked).to.be.false;\n });\n\n it('emits nile-change event on click', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox></nile-checkbox>`);\n const input = el.shadowRoot!.querySelector('input[type=\"checkbox\"]')! as HTMLInputElement;\n\n setTimeout(() => input.click());\n const event = await oneEvent(el, 'valueChange');\n expect(event.detail.checked).to.be.true;\n });\n\n it('handles focus and blur events', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox></nile-checkbox>`);\n const input = el.shadowRoot!.querySelector('input[type=\"checkbox\"]')! as HTMLInputElement;\n\n // Focus the input and wait for the focus event\n setTimeout(() => input.focus());\n const focusEvent = await oneEvent(el, 'focus');\n expect(focusEvent).to.exist;\n\n // Blur the input and wait for the blur event\n setTimeout(() => input.blur());\n const blurEvent = await oneEvent(el, 'blur');\n expect(blurEvent).to.exist;\n });\n\n it('handles indeterminate state', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox indeterminate></nile-checkbox>`);\n const input = el.shadowRoot!.querySelector('input[type=\"checkbox\"]')! as HTMLInputElement;\n\n expect(input.indeterminate).to.be.true;\n\n el.checked = true;\n el.indeterminate = false;\n await el.updateComplete;\n expect(input.indeterminate).to.be.false;\n expect(input.checked).to.be.true;\n });\n\n it('reflects properties to attributes', async () => {\n const el = await fixture<NileCheckbox>(html`\n <nile-checkbox\n name=\"test-name\"\n title=\"test-title\"\n disabled\n required\n label=\"test-label\"\n sub-label=\"test-sublabel\"\n help-text=\"test-help\"\n error-message=\"test-error\"\n ></nile-checkbox>\n `);\n\n expect(el.getAttribute('name')).to.equal('test-name');\n expect(el.getAttribute('title')).to.equal('test-title');\n expect(el.getAttribute('disabled')).to.equal('');\n expect(el.getAttribute('required')).to.equal('');\n expect(el.getAttribute('label')).to.equal('test-label');\n expect(el.getAttribute('sub-label')).to.equal('test-sublabel');\n expect(el.getAttribute('help-text')).to.equal('test-help');\n expect(el.getAttribute('error-message')).to.equal('test-error');\n });\n\n it('displays help text when showHelpText is true', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox help-text=\"test-help\"></nile-checkbox>`);\n el.showHelpText = true;\n await el.updateComplete;\n\n const helpTextIcon = el.shadowRoot!.querySelector('.checkbox__helptext-icon');\n expect(helpTextIcon).to.exist;\n });\n\n it('updates host class based on helpText', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox></nile-checkbox>`);\n el.helpText = 'test-help';\n await el.updateComplete;\n\n expect(el.classList.contains('full-width')).to.be.true;\n\n el.helpText = '';\n await el.updateComplete;\n\n expect(el.classList.contains('full-width')).to.be.false;\n });\n\n it('emits custom events on connected and disconnected', async () => {\n const el = document.createElement('nile-checkbox');\n\n // Wait for the connected event\n const initEventPromise = oneEvent(el, 'nile-init');\n document.body.appendChild(el);\n const initEvent = await initEventPromise;\n expect(initEvent).to.exist;\n\n // Wait for the disconnected event\n const destroyEventPromise = oneEvent(el, 'nile-destroy');\n document.body.removeChild(el);\n const destroyEvent = await destroyEventPromise;\n expect(destroyEvent).to.exist;\n });\n\n it('handles required attribute', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox required></nile-checkbox>`);\n const input = el.shadowRoot!.querySelector('input[type=\"checkbox\"]')! as HTMLInputElement;\n\n expect(input.required).to.be.true;\n });\n\n it('simulates click using click method', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox></nile-checkbox>`);\n el.click();\n expect(el.checked).to.be.true;\n });\n\n it('sets and removes focus using focus and blur methods', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox></nile-checkbox>`);\n\n // Call the focus method and wait for the focus event\n setTimeout(() => el.focus());\n const focusEvent = await oneEvent(el, 'focus');\n expect(focusEvent).to.exist;\n\n // Call the blur method and wait for the blur event\n setTimeout(() => el.blur());\n const blurEvent = await oneEvent(el, 'blur');\n expect(blurEvent).to.exist;\n });\n\n it('reflects checked attribute to property', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox checked></nile-checkbox>`);\n expect(el.checked).to.be.true;\n });\n\n it('reflects indeterminate attribute to property', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox indeterminate></nile-checkbox>`);\n expect(el.indeterminate).to.be.true;\n });\n\n it('associates form using form attribute', async () => {\n const el = await fixture(html`\n <div>\n <form id=\"test-form\"></form>\n <nile-checkbox form=\"test-form\"></nile-checkbox>\n </div>\n `);\n const checkbox = el.querySelector('nile-checkbox') as NileCheckbox;\n expect(checkbox).to.not.be.null;\n expect(checkbox.getAttribute('form')).to.equal('test-form');\n });\n\n it('displays and hides help text correctly', async () => {\n const el = await fixture<NileCheckbox>(html`<nile-checkbox help-text=\"test-help\"></nile-checkbox>`);\n\n // Initially, help text should not be shown\n expect(el.showHelpText).to.be.false;\n\n // Show the help text\n el.showHelpText = true;\n await el.updateComplete;\n let helpTextIcon = el.shadowRoot!.querySelector('.checkbox__helptext-icon');\n expect(helpTextIcon).to.exist;\n\n // Hide the help text\n el.showHelpText = false;\n await el.updateComplete;\n helpTextIcon = el.shadowRoot!.querySelector('.checkbox__helptext-icon');\n expect(helpTextIcon).to.be.exist;\n });\n});\n\n"]}
@@ -11,57 +11,95 @@ import { css } from 'lit-element';
11
11
  export const styles = css `
12
12
  :host {
13
13
  display:inline-flex;
14
- min-width:300px;
15
- max-width:512px;
14
+ min-width:var(--nile-empty-state-max-width);
15
+ max-width:var(--nile-empty-state-min-width);
16
16
  width:100%;
17
17
  }
18
18
 
19
19
  .empty-state--sm {
20
20
  --nile-es-text-size:16px;
21
+ --nile-es-text-line-height:24px;
21
22
  --nile-es-subtext-size:14px;
23
+ --nile-es-subtext-line-height:20px;
24
+
22
25
  --nile-es-icon-size:48px;
23
- --es-flat-option-border-radius:5px;
26
+ --nile-es-flat-option-border-radius:5px;
24
27
  --nile-es-img-height:118px;
28
+ --nile-es-img-width:152px;
29
+
30
+ --nile-es-gap:var(--nile-spacing-spacing-3xl);
31
+ --nile-es-body-gap:var(--nile-spacing-spacing-xl);
32
+ --nile-es-text-gap:0px;
25
33
  }
26
34
 
27
35
  .empty-state--md {
28
36
  --nile-es-text-size:18px;
37
+ --nile-es-text-line-height:28px;
29
38
  --nile-es-subtext-size:14px;
39
+ --nile-es-subtext-line-height:20px;
40
+
30
41
  --nile-es-icon-size:48px;
31
- --es-flat-option-border-radius:5px;
42
+ --nile-es-flat-option-border-radius:5px;
32
43
  --nile-es-img-height:128px;
44
+ --nile-es-img-width:172px;
45
+
46
+ --nile-es-gap:var(--nile-spacing-spacing-4xl);
47
+ --nile-es-body-gap:var(--nile-spacing-spacing-2xl);
48
+ --nile-es-text-gap:var(--nile-spacing-spacing-md);
33
49
  }
34
50
 
35
51
  .empty-state--lg {
36
52
  --nile-es-text-size:20px;
53
+ --nile-es-text-line-height:30px;
37
54
  --nile-es-subtext-size:16px;
55
+ --nile-es-subtext-line-height:24px;
56
+
38
57
  --nile-es-icon-size:56px;
39
- --es-flat-option-border-radius:10px;
58
+ --nile-es-flat-option-border-radius:10px;
40
59
  --nile-es-img-height:160px;
60
+ --nile-es-img-width:220px;
61
+
62
+ --nile-es-gap:var(--nile-spacing-spacing-4xl);
63
+ --nile-es-body-gap:var(--nile-spacing-spacing-3xl);
64
+ --nile-es-text-gap:var(--nile-spacing-spacing-md)
41
65
  }
42
66
 
43
67
  .empty-state {
44
- padding:1rem;
45
68
  min-width:300px;
46
69
  max-width:512px;
47
70
  width:100%;
48
71
  height:max-content;
49
72
  display:flex;
50
73
  flex-direction:column;
51
- row-gap:2rem;
74
+ row-gap:var(--nile-es-gap);
52
75
  }
53
76
 
54
77
  .empty-state__body {
55
- row-gap:5px;
56
78
  display:flex;
57
79
  flex-direction:column;
58
80
  justify-content:space-between;
59
81
  align-items:center;
82
+ row-gap:var(--nile-es-body-gap)
60
83
  }
61
84
 
62
85
  .empty-state__body--content {
63
86
  position:relative;
64
87
  }
88
+ .empty-state__image {
89
+ background:var(--nile-empty-state-image);
90
+ background-size: var(--nile-es-img-width) var(--nile-es-img-height);
91
+ height: var(--nile-es-img-height);
92
+ width: var(--nile-es-img-width);
93
+ max-width: 100%;
94
+ }
95
+
96
+ .empty-state__image--grayscale {
97
+ -webkit-filter: grayscale(100%);
98
+ -moz-filter: grayscale(100%);
99
+ -o-filter: grayscale(100%);
100
+ -ms-filter: grayscale(100%);
101
+ filter: grayscale(100%);
102
+ }
65
103
 
66
104
  .empty-state__img__icon {
67
105
  height: var(--nile-es-icon-size);
@@ -70,19 +108,15 @@ export const styles = css `
70
108
  display: grid;
71
109
  place-items: center;
72
110
  background: #34405466;
73
- }
74
-
75
- .empty-state__img__icon--abs {
76
111
  position:absolute;
77
112
  left: calc(50% - calc(var(--nile-es-icon-size) / 2));
78
- top:calc(50% - calc(var(--nile-es-icon-size) / 2));
113
+ top:calc(62.5% - calc(var(--nile-es-icon-size) / 2));
79
114
  }
80
115
 
81
116
  .empty-state__body--tonal {
82
117
  background: linear-gradient(180deg, #F9FAFB 0%, #EDF0F3 100%);
83
- width: 100px;
84
- height: 100px;
85
- padding: 1rem;
118
+ width: 104px;
119
+ height: 104px;
86
120
  border-radius: 50%;
87
121
  display:flex;
88
122
  justify-content:center;
@@ -90,13 +124,12 @@ export const styles = css `
90
124
  }
91
125
 
92
126
  .empty-state__body--flat {
93
- margin:2rem;
94
127
  }
95
128
 
96
129
  .nile-flat-type-icon {
97
130
  height:var(--nile-es-icon-size);
98
131
  aspect-ratio:1 / 1;
99
- border-radius: var(--es-flat-option-border-radius);
132
+ border-radius: var(--nile-es-flat-option-border-radius);
100
133
 
101
134
  background-color: white;
102
135
  display: grid;
@@ -104,25 +137,33 @@ export const styles = css `
104
137
  border: 1px solid #EAECF0;
105
138
  }
106
139
 
140
+ .empty__state__text-section {
141
+ display:flex;
142
+ flex-direction:column;
143
+ gap:var(--nile-es-text-gap);
144
+ max-width:80%;
145
+ }
146
+
107
147
  .empty-state__text {
108
148
  font-size: var(--nile-es-text-size);
109
149
  font-weight: 600;
110
- line-height: 28px;
150
+ line-height: var(--nile-es-text-line-height);
111
151
  text-align: center;
152
+ font-style: normal;
112
153
  }
113
154
 
114
155
  .empty-state__subtext {
115
156
  font-size: var(--nile-es-subtext-size);
116
157
  font-weight: 400;
117
- line-height: 20px;
158
+ line-height: var(--nile-es-subtext-line-height);
118
159
  text-align: center;
119
160
  color:#475467;
161
+ font-style: normal;
120
162
  }
121
163
 
122
164
  .empty-state-actions {
123
165
  display:flex;
124
166
  justify-content:center;
125
- gap:1rem;
126
167
  }
127
168
  `;
128
169
  export default [styles];
@@ -1 +1 @@
1
- {"version":3,"file":"nile-empty-state.css.js","sourceRoot":"","sources":["../../../src/nile-empty-state/nile-empty-state.css.ts"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoHxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport { css } from 'lit-element';\n\n/**\n * EmptyState CSS\n */\nexport const styles = css`\n :host {\n display:inline-flex;\n min-width:300px;\n max-width:512px;\n width:100%;\n }\n\n .empty-state--sm {\n --nile-es-text-size:16px;\n --nile-es-subtext-size:14px;\n --nile-es-icon-size:48px;\n --es-flat-option-border-radius:5px;\n --nile-es-img-height:118px;\n }\n\n .empty-state--md {\n --nile-es-text-size:18px;\n --nile-es-subtext-size:14px;\n --nile-es-icon-size:48px;\n --es-flat-option-border-radius:5px;\n --nile-es-img-height:128px;\n }\n\n .empty-state--lg {\n --nile-es-text-size:20px;\n --nile-es-subtext-size:16px;\n --nile-es-icon-size:56px;\n --es-flat-option-border-radius:10px;\n --nile-es-img-height:160px;\n }\n\n .empty-state {\n padding:1rem;\n min-width:300px;\n max-width:512px;\n width:100%;\n height:max-content;\n display:flex;\n flex-direction:column;\n row-gap:2rem;\n }\n\n .empty-state__body {\n row-gap:5px;\n display:flex;\n flex-direction:column;\n justify-content:space-between;\n align-items:center;\n }\n\n .empty-state__body--content {\n position:relative;\n }\n\n .empty-state__img__icon {\n height: var(--nile-es-icon-size);\n aspect-ratio:1 / 1;\n border-radius: 50%;\n display: grid;\n place-items: center;\n background: #34405466;\n }\n\n .empty-state__img__icon--abs {\n position:absolute;\n left: calc(50% - calc(var(--nile-es-icon-size) / 2));\n top:calc(50% - calc(var(--nile-es-icon-size) / 2));\n }\n\n .empty-state__body--tonal {\n background: linear-gradient(180deg, #F9FAFB 0%, #EDF0F3 100%);\n width: 100px;\n height: 100px;\n padding: 1rem;\n border-radius: 50%;\n display:flex;\n justify-content:center;\n align-items:center;\n }\n\n .empty-state__body--flat {\n margin:2rem;\n }\n\n .nile-flat-type-icon {\n height:var(--nile-es-icon-size);\n aspect-ratio:1 / 1;\n border-radius: var(--es-flat-option-border-radius);\n\n background-color: white;\n display: grid;\n place-items: center;\n border: 1px solid #EAECF0;\n }\n\n .empty-state__text {\n font-size: var(--nile-es-text-size);\n font-weight: 600;\n line-height: 28px;\n text-align: center;\n }\n\n .empty-state__subtext {\n font-size: var(--nile-es-subtext-size);\n font-weight: 400;\n line-height: 20px;\n text-align: center;\n color:#475467;\n }\n\n .empty-state-actions {\n display:flex;\n justify-content:center;\n gap:1rem;\n }\n`;\n\nexport default [styles];"]}
1
+ {"version":3,"file":"nile-empty-state.css.js","sourceRoot":"","sources":["../../../src/nile-empty-state/nile-empty-state.css.ts"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6JxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport { css } from 'lit-element';\n\n/**\n * EmptyState CSS\n */\nexport const styles = css`\n :host {\n display:inline-flex;\n min-width:var(--nile-empty-state-max-width);\n max-width:var(--nile-empty-state-min-width);\n width:100%;\n }\n\n .empty-state--sm {\n --nile-es-text-size:16px;\n --nile-es-text-line-height:24px;\n --nile-es-subtext-size:14px;\n --nile-es-subtext-line-height:20px;\n \n --nile-es-icon-size:48px;\n --nile-es-flat-option-border-radius:5px;\n --nile-es-img-height:118px;\n --nile-es-img-width:152px;\n\n --nile-es-gap:var(--nile-spacing-spacing-3xl);\n --nile-es-body-gap:var(--nile-spacing-spacing-xl);\n --nile-es-text-gap:0px;\n }\n\n .empty-state--md {\n --nile-es-text-size:18px;\n --nile-es-text-line-height:28px;\n --nile-es-subtext-size:14px;\n --nile-es-subtext-line-height:20px;\n\n --nile-es-icon-size:48px;\n --nile-es-flat-option-border-radius:5px;\n --nile-es-img-height:128px;\n --nile-es-img-width:172px;\n\n --nile-es-gap:var(--nile-spacing-spacing-4xl);\n --nile-es-body-gap:var(--nile-spacing-spacing-2xl);\n --nile-es-text-gap:var(--nile-spacing-spacing-md);\n }\n\n .empty-state--lg {\n --nile-es-text-size:20px;\n --nile-es-text-line-height:30px;\n --nile-es-subtext-size:16px;\n --nile-es-subtext-line-height:24px;\n\n --nile-es-icon-size:56px;\n --nile-es-flat-option-border-radius:10px;\n --nile-es-img-height:160px;\n --nile-es-img-width:220px;\n\n --nile-es-gap:var(--nile-spacing-spacing-4xl);\n --nile-es-body-gap:var(--nile-spacing-spacing-3xl);\n --nile-es-text-gap:var(--nile-spacing-spacing-md)\n }\n\n .empty-state {\n min-width:300px;\n max-width:512px;\n width:100%;\n height:max-content;\n display:flex;\n flex-direction:column;\n row-gap:var(--nile-es-gap);\n }\n\n .empty-state__body {\n display:flex;\n flex-direction:column;\n justify-content:space-between;\n align-items:center;\n row-gap:var(--nile-es-body-gap)\n }\n\n .empty-state__body--content {\n position:relative;\n }\n .empty-state__image { \n background:var(--nile-empty-state-image);\n background-size: var(--nile-es-img-width) var(--nile-es-img-height);\n height: var(--nile-es-img-height);\n width: var(--nile-es-img-width);\n max-width: 100%;\n }\n\n .empty-state__image--grayscale {\n -webkit-filter: grayscale(100%);\n -moz-filter: grayscale(100%);\n -o-filter: grayscale(100%);\n -ms-filter: grayscale(100%);\n filter: grayscale(100%);\n }\n\n .empty-state__img__icon {\n height: var(--nile-es-icon-size);\n aspect-ratio:1 / 1;\n border-radius: 50%;\n display: grid;\n place-items: center;\n background: #34405466;\n position:absolute;\n left: calc(50% - calc(var(--nile-es-icon-size) / 2));\n top:calc(62.5% - calc(var(--nile-es-icon-size) / 2));\n }\n\n .empty-state__body--tonal {\n background: linear-gradient(180deg, #F9FAFB 0%, #EDF0F3 100%);\n width: 104px;\n height: 104px;\n border-radius: 50%;\n display:flex;\n justify-content:center;\n align-items:center;\n }\n\n .empty-state__body--flat {\n }\n\n .nile-flat-type-icon {\n height:var(--nile-es-icon-size);\n aspect-ratio:1 / 1;\n border-radius: var(--nile-es-flat-option-border-radius);\n\n background-color: white;\n display: grid;\n place-items: center;\n border: 1px solid #EAECF0;\n }\n\n .empty__state__text-section {\n display:flex;\n flex-direction:column;\n gap:var(--nile-es-text-gap);\n max-width:80%;\n }\n\n .empty-state__text {\n font-size: var(--nile-es-text-size);\n font-weight: 600;\n line-height: var(--nile-es-text-line-height);\n text-align: center;\n font-style: normal;\n }\n\n .empty-state__subtext {\n font-size: var(--nile-es-subtext-size);\n font-weight: 400;\n line-height: var(--nile-es-subtext-line-height);\n text-align: center;\n color:#475467;\n font-style: normal;\n }\n\n .empty-state-actions {\n display:flex;\n justify-content:center;\n }\n`;\n\nexport default [styles];"]}
@@ -18,10 +18,10 @@ export declare class NileEmptyState extends NileElement {
18
18
  * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
19
19
  */
20
20
  static get styles(): CSSResultArray;
21
- private readonly hasSlotController;
22
21
  size: 'sm' | 'md' | 'lg';
23
22
  variant: 'flat' | 'content' | 'tonal';
24
23
  icon: string;
24
+ grayscale: boolean;
25
25
  text: String;
26
26
  subText: String;
27
27
  /**